![]() 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 : |
/*** module: node_modules/absol-form/js/components/ComboBox.js ***/ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _FCore = _interopRequireDefault(require("../core/FCore")); var _ScalableComponent = _interopRequireDefault(require("../core/ScalableComponent")); var _inheritComponentClass = _interopRequireDefault(require("../core/inheritComponentClass")); var _InputAttributeHandlers = _interopRequireWildcard(require("./handlers/InputAttributeHandlers")); var _Assembler = require("../core/Assembler"); var _DomSignal = _interopRequireDefault(require("absol/src/HTML5/DomSignal")); var _BrowserDetector = _interopRequireDefault(require("absol/src/Detector/BrowserDetector")); var _MSelectMenu = _interopRequireDefault(require("absol-mobile/js/dom/MSelectMenu")); var _InputStyleHandlers = _interopRequireDefault(require("./handlers/InputStyleHandlers")); var _ComboBoxHandlers = require("./handlers/ComboBoxHandlers"); var _FNode = require("../core/FNode"); var _ = _FCore.default._; /*** * @extends ScalableComponent * @constructor */ function ComboBox() { _ScalableComponent.default.call(this); } (0, _inheritComponentClass.default)(ComboBox, _ScalableComponent.default); ComboBox.prototype.tag = "ComboBox"; ComboBox.prototype.menuIcon = 'span.mdi.mdi-arrow-down-drop-circle-outline'; Object.assign(ComboBox.prototype.attributeHandlers, _InputAttributeHandlers.default, _ComboBoxHandlers.ComboBoxAttributeHandlers); Object.assign(ComboBox.prototype.styleHandlers, _InputStyleHandlers.default); ComboBox.prototype.style.vAlign = 'center'; ComboBox.prototype.style.display = 'inline-block'; ComboBox.prototype.styleHandlers.dropdownIcon = { set: function (value) { if (value) { this.domElt.addClass('as-keep-dropdown-icon'); } else { this.domElt.removeClass('as-keep-dropdown-icon'); } }, get: function () { return this.domElt.hasClass('as-keep-dropdown-icon'); }, export: function () { return this.style.dropdownIcon || undefined; }, descriptor: { type: 'bool' } }; Object.assign(ComboBox.prototype.pinHandlers, _ComboBoxHandlers.ComboBoxPinHandlers); // // ComboBox.prototype.pinHandlers.value = { // receives: function (value) { // this.attributes.value = value; // }, // get: function () { // return this.domElt.value; // }, // descriptor: { // type: 'text|number' // } // }; ComboBox.prototype.pinHandlers.onClick = { get: function () { return { sender: this }; } }; ComboBox.prototype.onCreate = function () { _ScalableComponent.default.prototype.onCreate.call(this); }; ComboBox.prototype.onCreated = function () { _ScalableComponent.default.prototype.onCreated.call(this); var self = this; this.domElt.on('minwidthchange', function (event) { if (!(self.style.width > event.value)) { self.setStyle('width', event.value); } }).on('change', function () { // self.attributes.value = this.value; self.notifyUnion(); self.pinFire('value'); self.pinFire('text'); self.notifyChange(); }).on('click', function (event) { if (this.readOnly) self.pinFire('onClick'); }); }; ComboBox.prototype.onResume = function () { _ScalableComponent.default.prototype.onResume.apply(this, arguments); this.notifyUnion(); }; ComboBox.prototype.render = function () { return _(_BrowserDetector.default.isMobile ? _MSelectMenu.default.tag : 'selectmenu'); }; ComboBox.prototype.measureMinSize = function () { var minWidthStyle = this.domElt ? parseFloat(this.domElt.getComputedStyleValue('min-width').replace('px')) : 24; return { width: Math.max(minWidthStyle, 24), height: 25 }; }; ComboBox.prototype.createDataBindingDescriptor = function () { var thisC = this; var subObj = {}; Object.defineProperties(subObj, { value: { configurable: true, enumerable: true, set: function (value) { thisC.setAttribute('value', value); }, get: function () { return thisC.getAttribute('value'); } }, list: { enumerable: false, configurable: true, get: function () { return thisC.getAttribute('list'); }, set: function (value) { thisC.setAttribute('list', value); } } }); return { set: function (value) { Object.assign(subObj, value); }, get: function () { return subObj; } }; }; ComboBox.prototype.verify = function () { if (!this.attributes.required) return { completed: true }; var value = this.attributes.value; if (value === null) { return { completed: false, comp: this }; } }; ComboBox.prototype.notifyUnion = function () { var fragment = this.fragment; var name = this.attributes.name; var value = this.attributes.value + ''; if (!fragment || !fragment.view) return; (0, _FNode.traversal)(fragment.view, path => { var node = path.node; var unionValues; if (node.attributes.union === name) { unionValues = node.attributes.unionValues; if (unionValues && unionValues.length > 0) { node.attributes.disembark = !unionValues.some(val => val + '' === value); } else { node.attributes.disembark = true; } } if (node.fragment !== fragment) path.skipChildren(); }); }; _Assembler.AssemblerInstance.addClass(ComboBox); var _default = ComboBox; exports.default = _default;