![]() 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-acomp/js/CheckBox.js ***/ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("../css/checkbox.css"); var _ACore = _interopRequireDefault(require("../ACore")); var _AElement = _interopRequireDefault(require("absol/src/HTML5/AElement")); var _CheckBoxInput = _interopRequireDefault(require("./CheckBoxInput")); var _OOP = _interopRequireDefault(require("absol/src/HTML5/OOP")); var _EventEmitter = _interopRequireDefault(require("absol/src/HTML5/EventEmitter")); var _ = _ACore.default._; var $ = _ACore.default.$; var $$ = _ACore.default.$$; /*** * @extends AElement * @constructor */ function CheckBox() { this.defineEvent('change'); /*** * * @type {CheckboxInput} */ this.$input = $('checkboxinput', this).on('change', this.notifyChange.bind(this)); this.$labels = $$('span', this); this.on('click', this.eventHandler.click); _OOP.default.drillProperty(this, this.$input, ['checked']); _OOP.default.drillProperty(this, this.$input, ['minus']); /*** * @type {boolean} * @name checked * @memberOf CheckBox# */ /*** * @type {boolean} * @name minus * @memberOf CheckBox# */ } CheckBox.tag = 'checkbox'; CheckBox.render = function () { return _({ class: ['absol-checkbox', 'as-no-label'], child: [{ tag: 'span', class: ['absol-checkbox-label', 'as-left'], child: { text: '' } }, 'checkboxinput', { tag: 'span', class: ['absol-checkbox-label', 'as-right'], child: { text: '' } }] }); }; CheckBox.prototype.notifyChange = function () { this.emit('change', { type: 'change', checked: this.checked, target: this }, this); }; //v, labelText, checked CheckBox.attribute = { checked: { set: function (value) { if (value === 'false' || value == null) { this.checked = false; } else { this.checked = true; } }, get: function () { return this.checked ? 'true' : 'false'; }, remove: function () { this.checked = false; } }, disabled: { set: function (value) { this.disabled = !(value === 'false' || value === null); }, get: function () { return this.disabled ? 'true' : 'false'; }, remove: function () { this.disabled = false; } }, readonly: { set: function (value) { this.readOnly = !(value === 'false' || value === null); }, get: function () { return this.readOnly ? 'true' : 'false'; } } }; CheckBox.property = {}; CheckBox.property.text = { get: function () { return this._text; }, set: function (value) { value = value || ''; if (value.length === 0) { this.addClass('as-no-label'); } else { this.removeClass('as-no-label'); } this._text = value; this.$labels[0].firstChild.data = value; this.$labels[1].firstChild.data = value; } }; CheckBox.property.disabled = { get: function () { return this.$input.disabled; }, set: function (value) { value = !!value; this.$input.disabled = value; if (value) { this.addClass('as-disabled'); } else { this.removeClass('as-disabled'); } } }; CheckBox.property.readOnly = { set: function (value) { if (value) { this.addClass('as-read-only'); this.$input.readOnly = true; } else { this.addClass('as-read-only'); this.$input.readOnly = false; } }, get: function () { return this.$input.readOnly; } }; /*** * * @type {{}|CheckBox} */ CheckBox.eventHandler = {}; CheckBox.eventHandler.click = function (event) { if (!_EventEmitter.default.hitElement(this.$input, event) && !this.readOnly) { this.$input.click(); } }; _ACore.default.install(CheckBox); var _default = CheckBox; exports.default = _default;