VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/www/html/libs/absol-full/dist/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/libs/absol-full/dist/js/mdls__absol-form__js__blocks__CBCmpSwitch.js
/*** module: node_modules/absol-form/js/blocks/CBCmpSwitch.js ***/
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _Assembler = require("../core/Assembler");

var _BaseBlock = _interopRequireDefault(require("../core/BaseBlock"));

var _inheritComponentClass = _interopRequireDefault(require("../core/inheritComponentClass"));


function CBCmpSwitch() {
  _BaseBlock.default.call(this);

  this.value = null;
  this.result = {};
  this.patternByRet = {};
  /***
   *
   * @type {{pattern: string|number|boolean|null|undefined, ret: string}[]}
   */

  this.attributes.cases = [];
  this.pinHandlers = Object.assign({}, CBCmpSwitch.prototype.pinHandlers);
}

(0, _inheritComponentClass.default)(CBCmpSwitch, _BaseBlock.default);
CBCmpSwitch.prototype.menuIcon = 'span.mdi.mdi-set-split';
CBCmpSwitch.prototype.tag = 'CBCmpSwitch';
CBCmpSwitch.prototype.attributeHandlers.cases = {
  set: function (value, ref) {
    ref.set(value);
    this.rebuildSwitch();
    return value;
  }
};
CBCmpSwitch.prototype.pinHandlers.value = {
  receives: function (value) {
    this.value = value;
    var cases = this.attributes.cases || [];

    for (var i = 0; i < cases.length; ++i) {
      this.pinFire(cases[i].ret);
    }
  }
};

CBCmpSwitch.prototype.rebuildSwitch = function () {
  var self = this;
  var cases = this.attributes.cases || [];
  this.pinHandlers = CBCmpSwitch.prototype.pinHandlers;
  var patternByRet = cases.reduce(function (ac, cr) {
    ac[cr.ret] = ac[cr.ret] || [];
    ac[cr.ret].push(cr.pattern);
    return ac;
  }, {});
  this.patternByRet = patternByRet;
  Object.keys(patternByRet).reduce(function (ac, pin) {
    var patterns = patternByRet[pin];
    ac[pin] = {
      get: function () {
        var value = self.value;
        return patterns.reduce(function (res, pattern) {
          res = res || value === pattern;
          res = res || value + '' === pattern;
          res = res || JSON.stringify(value) === pattern;
          return res;
        }, false);
      }
    };
    return ac;
  }, this.pinHandlers);
};

_Assembler.AssemblerInstance.addClass(CBCmpSwitch);

var _default = CBCmpSwitch;
exports.default = _default;

VaKeR 2022