UNPKG

tdesign-vue

Version:
119 lines (115 loc) 4.4 kB
/** * tdesign v1.12.1 * (c) 2025 tdesign * @license MIT */ import _classCallCheck from '@babel/runtime/helpers/classCallCheck'; import _createClass from '@babel/runtime/helpers/createClass'; import _defineProperty from '@babel/runtime/helpers/defineProperty'; var CheckboxStore = /*#__PURE__*/function () { function CheckboxStore() { _classCallCheck(this, CheckboxStore); _defineProperty(this, "observerMap", {}); _defineProperty(this, "parentChecked", void 0); _defineProperty(this, "parentExist", void 0); } return _createClass(CheckboxStore, [{ key: "init", value: function init() { this.parentExist = true; } }, { key: "updateChecked", value: function updateChecked(_ref) { var _this$observerMap$CHE, _this$observerMap2; var checked = _ref.checked, isCheckAll = _ref.isCheckAll, oldChecked = _ref.oldChecked, indeterminate = _ref.indeterminate; this.parentChecked = checked; var changedChecked = oldChecked ? getChangedChecked(checked, oldChecked) : checked; var checkedParams = { parentChecked: checked, parentIsCheckAll: isCheckAll, parentIsIndeterminate: indeterminate, type: "checked" }; for (var i = 0, len = changedChecked.length; i < len; i++) { var _this$observerMap$val, _this$observerMap; var value = String(changedChecked[i]); (_this$observerMap$val = (_this$observerMap = this.observerMap)[value]) === null || _this$observerMap$val === void 0 || _this$observerMap$val.call(_this$observerMap, checkedParams); } (_this$observerMap$CHE = (_this$observerMap2 = this.observerMap).CHECK_ALL) === null || _this$observerMap$CHE === void 0 || _this$observerMap$CHE.call(_this$observerMap2, checkedParams); } }, { key: "updateCheckbox", value: function updateCheckbox(_ref2) { var _this = this; var disabled = _ref2.disabled, maxExceeded = _ref2.maxExceeded, checkboxName = _ref2.checkboxName; var checkboxList = Object.keys(this.observerMap); checkboxList.forEach(function (checkbox) { var _this$observerMap$che, _this$observerMap3; (_this$observerMap$che = (_this$observerMap3 = _this.observerMap)[checkbox]) === null || _this$observerMap$che === void 0 || _this$observerMap$che.call(_this$observerMap3, { type: "checkbox", parentDisabled: disabled, parentMaxExceeded: maxExceeded, checkboxName: checkboxName }); }); } }, { key: "subscribe", value: function subscribe(value, listener) { this.observerMap[String(value)] = listener; } }, { key: "unSubscribe", value: function unSubscribe(value) { delete this.observerMap[String(value)]; } }]); }(); function getChangedChecked() { var checked = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; var oldChecked = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; var checkedMap = /* @__PURE__ */new Map(); var oldCheckedMap = /* @__PURE__ */new Map(); var changedValues = []; for (var i = 0, len = checked.length; i < len; i++) { checkedMap.set(checked[i], true); } for (var _i = 0, _len = oldChecked.length; _i < _len; _i++) { oldCheckedMap.set(oldChecked[_i], true); } for (var _i2 = 0, _len2 = checked.length; _i2 < _len2; _i2++) { if (!oldCheckedMap.get(checked[_i2])) { changedValues.push(checked[_i2]); } } for (var _i3 = 0, _len3 = oldChecked.length; _i3 < _len3; _i3++) { if (!checkedMap.get(oldChecked[_i3])) { changedValues.push(oldChecked[_i3]); } } return changedValues; } var checkboxStoreInstanceMap = {}; function createCheckboxStore(key) { var date = new Date(); var storeKey = key || [date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getUTCMilliseconds(), Number((Math.random() * 1e4).toFixed(2))].join("_"); if (checkboxStoreInstanceMap[storeKey]) { return createCheckboxStore(); } checkboxStoreInstanceMap[storeKey] = new CheckboxStore(); return { storeKey: storeKey, checkboxStore: checkboxStoreInstanceMap[storeKey] }; } function getCheckboxStore(key) { return checkboxStoreInstanceMap[key]; } export { createCheckboxStore, getChangedChecked, getCheckboxStore }; //# sourceMappingURL=store.js.map