UNPKG

vue-admin-core

Version:
64 lines (61 loc) 1.98 kB
import { defineComponent, ref, reactive, h, toRefs } from 'vue'; import { connect, mapProps, mapReadPretty } from '@formily/vue'; import { ElTreeSelect, UPDATE_MODEL_EVENT, CHANGE_EVENT } from 'element-plus'; import '../../preview-text/index.mjs'; import { useArrToStr } from '../../__builtins__/hooks/useArrToStr.mjs'; import { PreviewText } from '../../preview-text/src/index.mjs'; const InnerTreeSelect = defineComponent({ name: "FTreeSelect", props: { ...ElTreeSelect.props, props: { type: Object, default: () => ({ children: "children", label: "label", value: "value", disabled: "disabled" }) } }, emits: [UPDATE_MODEL_EVENT, CHANGE_EVENT], setup(props, ctx) { var _a; const { slots } = ctx; const treeselect = ref(); const nodeKey = ((_a = props == null ? void 0 : props.props) == null ? void 0 : _a.value) || props.nodeKey || "value"; const _props = useArrToStr(props, ctx, { vm: treeselect }); const state = reactive({ defaultExpandedKeys: props.defaultExpandedKeys || [], defaultCheckedKeys: props.defaultCheckedKeys || [] }); return () => { return h( ElTreeSelect, reactive({ ...toRefs(props), ..._props, nodeKey, defaultExpandedKeys: state.defaultExpandedKeys, onNodeExpand: (data) => { state.defaultExpandedKeys.push(data[nodeKey]); }, onNodeCollapse: (data) => { state.defaultExpandedKeys.splice(state.defaultExpandedKeys.indexOf(data[nodeKey]), 1); }, ref: (ref2) => treeselect.value = ref2 }), slots ); }; } }); const TreeSelect = connect( InnerTreeSelect, mapProps({ dataSource: "data", loading: true, value: "modelValue", readOnly: "readonly" }), mapReadPretty(PreviewText.TreeSelect) ); export { TreeSelect, TreeSelect as default }; //# sourceMappingURL=index.mjs.map