tdesign-vue
Version:
230 lines (222 loc) • 8.11 kB
JavaScript
/**
* tdesign v1.15.0
* (c) 2026 tdesign
* @license MIT
*/
;
Object.defineProperty(exports, '__esModule', { value: true });
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
var cascader_core_helper = require('./helper.js');
var isNumber = require('../../_chunks/dep-268c68b1.js');
var cloneDeep = require('../../_chunks/dep-25a90d6f.js');
var isFunction = require('../../_chunks/dep-8d206316.js');
require('@babel/runtime/helpers/typeof');
require('../../_chunks/dep-812bd25d.js');
require('../../_chunks/dep-82ce56ef.js');
require('../../_chunks/dep-6eba4d23.js');
require('../../_chunks/dep-3b2292ce.js');
require('../../_chunks/dep-010db548.js');
require('../../_chunks/dep-ba7f5924.js');
require('../../_chunks/dep-f77d6ad5.js');
require('../../_chunks/dep-733a2279.js');
require('../../_chunks/dep-2bc87cc8.js');
require('../../_chunks/dep-4e96e31a.js');
require('../../_chunks/dep-bb0ececf.js');
require('../../_chunks/dep-10fcb46d.js');
require('../../_chunks/dep-594e0165.js');
require('../../_chunks/dep-6f4e680e.js');
require('../../_chunks/dep-9dae8101.js');
require('../../_chunks/dep-7c84d9a0.js');
require('../../_chunks/dep-d844c9ed.js');
require('../../_chunks/dep-c05a9033.js');
require('../../_chunks/dep-efe55b82.js');
require('../../_chunks/dep-124386d4.js');
require('../../_chunks/dep-7fbd94e9.js');
require('../../_chunks/dep-56f568d3.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
function expendClickEffect(propsTrigger, trigger, node, cascaderContext) {
var checkStrictly = cascaderContext.checkStrictly,
multiple = cascaderContext.multiple,
treeStore = cascaderContext.treeStore,
setVisible = cascaderContext.setVisible,
setValue = cascaderContext.setValue,
setTreeNodes = cascaderContext.setTreeNodes,
setExpend = cascaderContext.setExpend,
value = cascaderContext.value,
max = cascaderContext.max,
valueType = cascaderContext.valueType,
filterable = cascaderContext.filterable,
inputVal = cascaderContext.inputVal,
isParentFilterable = cascaderContext.isParentFilterable;
var isDisabled = node.disabled || multiple && value.length >= max && max !== 0;
var isFiltering = filterable && inputVal && multiple;
if (isDisabled || isFiltering) return;
if (propsTrigger === trigger) {
var expanded = node.setExpanded(true);
treeStore.refreshNodes();
treeStore.replaceExpanded(expanded);
var nodes = treeStore.getNodes().filter(function (node2) {
return node2.visible;
});
setTreeNodes(nodes);
if (multiple && !isParentFilterable) {
setExpend(expanded);
}
}
if (!multiple && (node.isLeaf() || checkStrictly) && trigger === "click") {
treeStore.resetChecked();
var checked = node.setChecked(!node.checked);
var _checked = _slicedToArray__default["default"](checked, 1),
value2 = _checked[0];
setValue(valueType === "single" ? value2 : node.getPath().map(function (item) {
return item.value;
}), "check", node.getModel());
if (!checkStrictly || propsTrigger === "hover") {
setVisible(false, {});
}
}
}
function valueChangeEffect(node, cascaderContext) {
var disabled = cascaderContext.disabled,
max = cascaderContext.max,
inputVal = cascaderContext.inputVal,
multiple = cascaderContext.multiple,
setVisible = cascaderContext.setVisible,
setValue = cascaderContext.setValue,
treeNodes = cascaderContext.treeNodes,
treeStore = cascaderContext.treeStore,
valueType = cascaderContext.valueType,
setInputVal = cascaderContext.setInputVal,
reserveKeyword = cascaderContext.reserveKeyword;
if (!node || disabled || node.disabled) {
return;
}
var checked = node.setChecked(!node.isChecked());
if (isNumber.isNumber(max) && max < 0) {
console.warn("TDesign Warn:", "max should > 0");
}
if (checked.length > max && isNumber.isNumber(max) && max > 0) {
return;
}
if (checked.length === 0) {
var expanded = treeStore.getExpanded();
setTimeout(function () {
treeStore.replaceExpanded(expanded);
treeStore.refreshNodes();
}, 0);
}
if (!multiple) {
setVisible(false, {});
}
var isSelectAll = treeNodes.every(function (item) {
return checked.indexOf(item.value) > -1;
});
if (inputVal && isSelectAll) {
setVisible(false, {});
}
var resValue = valueType === "single" ? checked : checked.map(function (val) {
return treeStore.getNode(val).getPath().map(function (item) {
return item.value;
});
});
setValue(resValue, node.checked ? "uncheck" : "check", node.getModel());
if (!reserveKeyword) setInputVal("");
}
function closeIconClickEffect(cascaderContext) {
var setVisible = cascaderContext.setVisible,
multiple = cascaderContext.multiple,
setExpend = cascaderContext.setExpend,
setValue = cascaderContext.setValue;
setVisible(false, {});
if (multiple) {
setExpend([]);
}
setValue(multiple ? [] : "", "clear");
}
function handleRemoveTagEffect(cascaderContext, index, onRemove) {
var disabled = cascaderContext.disabled,
setValue = cascaderContext.setValue,
value = cascaderContext.value,
valueType = cascaderContext.valueType,
treeStore = cascaderContext.treeStore;
if (disabled) return;
if (index !== void 0) {
var newValue = cloneDeep.cloneDeep(value);
var res = newValue.splice(index, 1);
var node = treeStore.getNodes(res[0])[0];
var checked = node.setChecked(!node.isChecked());
var resValue = valueType === "single" ? checked : checked.map(function (val) {
return treeStore.getNode(val).getPath().map(function (item) {
return item.value;
});
});
setValue(resValue, "uncheck", node.getModel());
if (isFunction.isFunction(onRemove)) {
onRemove({
value: checked,
node: node
});
}
} else if (isFunction.isFunction(onRemove)) {
onRemove({
value: value,
node: void 0
});
}
}
var treeNodesEffect = function treeNodesEffect(inputVal, treeStore, setTreeNodes, filter, isParentFilterable) {
if (!treeStore) return;
var nodes = [];
if (inputVal) {
var filterMethods = function filterMethods(node) {
if (!node.isLeaf() && !isParentFilterable) return;
if (isFunction.isFunction(filter)) {
return filter("".concat(inputVal), node);
}
var fullPathLabel = cascader_core_helper.getFullPathLabel(node, "");
return fullPathLabel.indexOf("".concat(inputVal)) > -1;
};
nodes = treeStore.nodes.filter(filterMethods);
} else {
nodes = treeStore.getNodes().filter(function (node) {
return node.visible;
});
}
setTreeNodes(nodes);
};
var treeStoreExpendEffect = function treeStoreExpendEffect(treeStore, value, expend) {
var treeValue = cascader_core_helper.getTreeValue(value);
if (!treeStore) return;
if (Array.isArray(treeValue) && expend.length === 0) {
var expandedMap = /* @__PURE__ */new Map();
var _treeValue = _slicedToArray__default["default"](treeValue, 1),
val = _treeValue[0];
if (val) {
expandedMap.set(val, true);
var node = treeStore.getNode(val);
if (!node) {
treeStore.refreshNodes();
return;
}
node.getParents().forEach(function (tn) {
expandedMap.set(tn.value, true);
});
var expandedArr = Array.from(expandedMap.keys());
treeStore.replaceExpanded(expandedArr);
} else {
treeStore.resetExpanded();
}
}
if (treeStore.getExpanded() && expend.length) {
treeStore.replaceExpanded(expend);
}
treeStore.refreshNodes();
};
exports.closeIconClickEffect = closeIconClickEffect;
exports.expendClickEffect = expendClickEffect;
exports.handleRemoveTagEffect = handleRemoveTagEffect;
exports.treeNodesEffect = treeNodesEffect;
exports.treeStoreExpendEffect = treeStoreExpendEffect;
exports.valueChangeEffect = valueChangeEffect;
//# sourceMappingURL=effect.js.map