UNPKG

tdesign-vue-next

Version:
148 lines (144 loc) 5.5 kB
/** * tdesign v1.19.2 * (c) 2026 tdesign * @license MIT */ import { computed, createVNode, mergeProps, isVNode } from 'vue'; import _defineProperty from '@babel/runtime/helpers/defineProperty'; import { isBoolean } from 'lodash-es'; import '@babel/runtime/helpers/toConsumableArray'; import '@babel/runtime/helpers/typeof'; import '../../_chunks/dep-c68ea098.js'; import { u as usePrefixClass } from '../../_chunks/dep-e8dd47a9.js'; import '@babel/runtime/helpers/slicedToArray'; import '../../_chunks/dep-91fc762d.js'; import 'tdesign-icons-vue-next'; import { Checkbox } from '../../checkbox/index.js'; import '../../loading/index.js'; import '@babel/runtime/helpers/asyncToGenerator'; import '@babel/runtime/helpers/classCallCheck'; import '@babel/runtime/helpers/createClass'; import '@babel/runtime/regenerator'; import { getTNode } from '../utils/index.js'; import useItemEvents from './useItemEvents.js'; import '../../_chunks/dep-f0f392fb.js'; import '../../config-provider/hooks/useConfig.js'; import '../../config-provider/utils/context.js'; import '../../_chunks/dep-509ddbe3.js'; import 'dayjs'; import '../../checkbox/checkbox.js'; import '../../checkbox/props.js'; import '../../_chunks/dep-7bdccf65.js'; import '../../_chunks/dep-d518fdfb.js'; import '../../_chunks/dep-8d4d971b.js'; import '../../_chunks/dep-98d89c71.js'; import '../../_chunks/dep-2ba9b7d0.js'; import '../../_chunks/dep-8be9c790.js'; import '../../_chunks/dep-d67d6f8a.js'; import '../../_chunks/dep-ef7a41ce.js'; import '../../_chunks/dep-e332908e.js'; import '../../checkbox/constants/index.js'; import '../../checkbox/hooks/useCheckboxLazyLoad.js'; import '../../_chunks/dep-6f148007.js'; import '../../checkbox/hooks/useKeyboardEvent.js'; import '../../_chunks/dep-e9e05226.js'; import '../../checkbox/group.js'; import '../../checkbox/checkbox-group-props.js'; import '../../_chunks/dep-b36a4e94.js'; import '../../_chunks/dep-ae3e94b6.js'; import '../../loading/directive.js'; import '../../loading/plugin.js'; import '../../_chunks/dep-2a7145b5.js'; import '../../loading/icon/gradient.js'; import '../../_chunks/dep-fbf70ecb.js'; import '@babel/runtime/helpers/objectWithoutProperties'; import '../../loading/props.js'; function _isSlot(s) { return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !isVNode(s); } function useRenderLabel(state) { var classPrefix = usePrefixClass().value; var componentName = usePrefixClass("tree").value; var _useItemEvents = useItemEvents(state), handleChange = _useItemEvents.handleChange; var renderLabel = function renderLabel(h) { var node = state.node, treeScope = state.treeScope; var scopedSlots = treeScope.scopedSlots, _treeScope$treeProps = treeScope.treeProps, treeProps = _treeScope$treeProps === void 0 ? {} : _treeScope$treeProps; var label = treeProps.label, expandOnClickNode = treeProps.expandOnClickNode; var checkProps = (treeProps === null || treeProps === void 0 ? void 0 : treeProps.checkProps) || {}; var labelNode = null; if (label === true) { if (scopedSlots !== null && scopedSlots !== void 0 && scopedSlots.label) { labelNode = scopedSlots.label({ node: node === null || node === void 0 ? void 0 : node.getModel() }); } else { labelNode = node.label || ""; } } else { labelNode = getTNode(label, { createElement: h, node: node }); } var labelClasses = ["".concat(componentName, "__label"), _defineProperty({}, "".concat(classPrefix, "-is-active"), node.isActivable() ? node.actived : false)]; var shouldStopLabelTrigger = computed(function () { var _node$children; var isNormalBranchNode = Array.isArray(node.children) && ((_node$children = node.children) === null || _node$children === void 0 ? void 0 : _node$children.length) > 0; var isLazyLoadChildBranchNode = isBoolean(node.children) && node.children; var isBranchNode = isNormalBranchNode || isLazyLoadChildBranchNode; return expandOnClickNode && isBranchNode; }); if (node.vmCheckable) { var checkboxDisabled = false; if (node.vmIsLocked && !node.vmIsRest) { checkboxDisabled = true; } if (node.isDisabled()) { checkboxDisabled = true; } var _labelNode = function () { return labelNode; }(); labelNode = createVNode(Checkbox, mergeProps({ "class": labelClasses, "checked": node.checked, "indeterminate": node.indeterminate, "name": String(node.value), "onChange": handleChange, "stopLabelTrigger": shouldStopLabelTrigger.value }, checkProps, { "disabled": checkboxDisabled, "title": node.label }), _isSlot(labelNode) ? labelNode : { "default": function _default() { return [_labelNode]; } }); } else { var inner = createVNode("span", { "style": "position: relative" }, [labelNode]); labelNode = node.isActivable() ? createVNode("span", { "key": "1", "ref": "label", "class": labelClasses, "title": node.label }, [inner]) : createVNode("span", { "key": "2", "class": labelClasses, "title": node.label }, [inner]); } return labelNode; }; return { renderLabel: renderLabel }; } export { useRenderLabel as default }; //# sourceMappingURL=useRenderLabel.js.map