UNPKG

ivue-material-plus

Version:

A high quality UI components Library with Vue.js

36 lines (31 loc) 913 B
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var vue = require('vue'); const TreeNodeMapContextKey = Symbol("ivue-tree-node-map"); function useNodeExpandEventBroadcast(props) { const parentNodeMap = vue.inject(TreeNodeMapContextKey, null); const currentNodeMap = { treeNodeCollapse: (node) => { if (props.node !== node) { props.node.collapse(); } }, children: [] }; if (parentNodeMap) { parentNodeMap.children.push(currentNodeMap); } vue.provide(TreeNodeMapContextKey, currentNodeMap); return { broadcastExpanded: (node) => { if (!props.accordion) { return; } for (const childNode of currentNodeMap.children) { childNode.treeNodeCollapse(node); } } }; } exports.useNodeExpandEventBroadcast = useNodeExpandEventBroadcast; //# sourceMappingURL=useNodeExpandEventBroadcast.js.map