UNPKG

tdesign-vue-next

Version:
115 lines (111 loc) 3.94 kB
/** * tdesign v1.11.5 * (c) 2025 tdesign * @license MIT */ import { createVNode } from 'vue'; import 'lodash-es'; import 'tdesign-icons-vue-next'; import '../../checkbox/index.js'; import '../../loading/index.js'; import { usePrefixClass } from '../../hooks/useConfig.js'; import '../../utils/dom.js'; import '@babel/runtime/helpers/toConsumableArray'; import '@babel/runtime/helpers/slicedToArray'; import '@babel/runtime/helpers/asyncToGenerator'; import '@babel/runtime/helpers/classCallCheck'; import '@babel/runtime/helpers/createClass'; import '@babel/runtime/helpers/defineProperty'; import '@babel/runtime/regenerator'; import { getTNode } from '../util.js'; import '../../checkbox/checkbox.js'; import '../../checkbox/props.js'; import '../../hooks/useVModel.js'; import '../../hooks/useRipple.js'; import '../../hooks/useKeepAnimation.js'; import '../../config-provider/hooks/useConfig.js'; import '../../config-provider/utils/context.js'; import '../../_chunks/dep-c75b9b8e.js'; import '@babel/runtime/helpers/typeof'; import '../../_chunks/dep-caecb55d.js'; import 'dayjs'; import '../../_chunks/dep-d60f6309.js'; import '../../_chunks/dep-7c56a7f5.js'; import '../../utils/render-tnode.js'; import '../../checkbox/consts/index.js'; import '../../checkbox/hooks/useCheckboxLazyLoad.js'; import '../../_chunks/dep-8c2d2d85.js'; import '../../checkbox/hooks/useKeyboardEvent.js'; import '../../_chunks/dep-d2f3d117.js'; import '../../hooks/useDisabled.js'; import '../../hooks/useReadonly.js'; import '../../checkbox/group.js'; import '../../checkbox/checkbox-group-props.js'; import '../../hooks/slot.js'; import '../../utils/withInstall.js'; import '../../loading/directive.js'; import '../../loading/plugin.js'; import '../../loading/loading.js'; import '../../loading/icon/gradient.js'; import '../../_chunks/dep-56c3d46e.js'; import '@babel/runtime/helpers/objectWithoutProperties'; import '../../hooks/useTeleport.js'; import '../../loading/props.js'; function useRenderLine(state) { var componentName = usePrefixClass("tree").value; var renderLine = function renderLine(h) { var node = state.node, treeScope = state.treeScope; var scopedSlots = treeScope.scopedSlots; var treeProps = (treeScope === null || treeScope === void 0 ? void 0 : treeScope.treeProps) || {}; var line = treeProps.line; var iconVisible = !!treeProps.icon; var lineNode = null; if (line === true) { if (scopedSlots !== null && scopedSlots !== void 0 && scopedSlots.line) { lineNode = scopedSlots.line({ node: node === null || node === void 0 ? void 0 : node.getModel() }); } else if (node.parent && node.tree) { var vmIsLeaf = node.vmIsLeaf, vmIsFirst = node.vmIsFirst, level = node.level; var lineClasses = []; lineClasses.push("".concat(componentName, "__line")); if (vmIsLeaf || !iconVisible) { lineClasses.push("".concat(componentName, "__line--leaf")); } if (vmIsFirst && iconVisible) { lineClasses.push("".concat(componentName, "__line--first")); } var shadowStyles = []; var parents = node.getParents(); parents.pop(); parents.forEach(function (pnode, index) { if (!pnode.vmIsLast) { shadowStyles.push("calc(-".concat(index + 1, " * var(--space)) 0 var(--color)")); } }); var styles = { "--level": level ? String(level) : void 0, "box-shadow": shadowStyles.join(",") }; lineNode = createVNode("span", { "class": lineClasses, "style": styles }, null); } } else { lineNode = getTNode(line, { createElement: h, node: node }); } return lineNode; }; return { renderLine: renderLine }; } export { useRenderLine as default }; //# sourceMappingURL=useRenderLine.js.map