@funcho/ui 1.1.8 → 1.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/dist/cjs/business/ProForm/ProForm.vue.js +12 -2
  2. package/dist/cjs/business/TreeCheckFilter/TreeCheckFilter.vue.js +212 -0
  3. package/dist/cjs/business/TreeCheckFilter/TreeCheckFilter.vue3.js +10 -0
  4. package/dist/cjs/business/TreeCheckFilter/index.js +12 -0
  5. package/dist/cjs/business/TreeTransfer/TreeTransfer.vue.js +194 -0
  6. package/dist/cjs/business/TreeTransfer/TreeTransfer.vue3.js +10 -0
  7. package/dist/cjs/business/TreeTransfer/index.js +12 -0
  8. package/dist/cjs/business/index.js +4 -0
  9. package/dist/cjs/index.js +10 -6
  10. package/dist/cjs/packages/ui/package.json.js +1 -1
  11. package/dist/esm/business/ProForm/ProForm.vue.mjs +12 -2
  12. package/dist/esm/business/TreeCheckFilter/TreeCheckFilter.vue.mjs +208 -0
  13. package/dist/esm/business/TreeCheckFilter/TreeCheckFilter.vue3.mjs +6 -0
  14. package/dist/esm/business/TreeCheckFilter/index.mjs +7 -0
  15. package/dist/esm/business/TreeTransfer/TreeTransfer.vue.mjs +190 -0
  16. package/dist/esm/business/TreeTransfer/TreeTransfer.vue3.mjs +6 -0
  17. package/dist/esm/business/TreeTransfer/index.mjs +7 -0
  18. package/dist/esm/business/index.mjs +2 -0
  19. package/dist/esm/index.mjs +2 -0
  20. package/dist/esm/packages/ui/package.json.mjs +1 -1
  21. package/dist/style.css +62 -1
  22. package/dist/types/business/TreeCheckFilter/TreeCheckFilter.types.d.ts +1 -0
  23. package/dist/types/business/TreeCheckFilter/TreeCheckFilter.vue.d.ts +6160 -0
  24. package/dist/types/business/TreeCheckFilter/index.d.ts +12298 -0
  25. package/dist/types/business/TreeTransfer/TreeTransfer.types.d.ts +1 -0
  26. package/dist/types/business/index.d.ts +2 -0
  27. package/package.json +4 -4
@@ -116,6 +116,11 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
116
116
  return `请输入${item.label}`;
117
117
  };
118
118
  const formRef = vue.ref();
119
+ const handleRef = (el, item) => {
120
+ if (item.attrs?.onRef && el) {
121
+ item.attrs.onRef(el, item);
122
+ }
123
+ };
119
124
  __expose(
120
125
  new Proxy(
121
126
  {},
@@ -161,13 +166,18 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
161
166
  key: 0,
162
167
  ref_for: true
163
168
  }, item.attrs, {
169
+ ref_for: true,
170
+ ref: (el) => handleRef(el, item),
164
171
  placeholder: getPlaceholder(item, item.type),
165
172
  style: { "width": "100%" }
166
173
  }), null, 16, ["placeholder"])) : (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(vue.unref(componentsMap.ComponentsMap)[item.type || "FcInput"]), vue.mergeProps({
167
174
  key: 1,
175
+ ref_for: true
176
+ }, item.attrs, {
177
+ ref_for: true,
178
+ ref: (el) => handleRef(el, item),
168
179
  modelValue: formModel.value[item.prop],
169
- "onUpdate:modelValue": ($event) => formModel.value[item.prop] = $event
170
- }, { ref_for: true }, item.attrs, {
180
+ "onUpdate:modelValue": ($event) => formModel.value[item.prop] = $event,
171
181
  placeholder: getPlaceholder(item, item.type),
172
182
  style: { "width": "100%" }
173
183
  }), null, 16, ["modelValue", "onUpdate:modelValue", "placeholder"]))
@@ -0,0 +1,212 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const vue = require('vue');
6
+ const useNamespace = require('../../hooks/use-namespace.js');
7
+ require('../../components/Button/index.js');
8
+ require('../../components/Dialog/index.js');
9
+ require('../../components/ConfigProvider/index.js');
10
+ const index$1 = require('../../components/Input/index.js');
11
+ const index$3 = require('../../components/Tree/index.js');
12
+ require('../../components/Tabs/index.js');
13
+ require('../../components/TabPane/index.js');
14
+ require('../../components/Steps/index.js');
15
+ require('../../components/Step/index.js');
16
+ require('../../components/InputNumber/index.js');
17
+ require('../../components/Select/index.js');
18
+ require('../../components/Option/index.js');
19
+ require('../../components/DatePicker/index.js');
20
+ require('../../components/DatePickerPanel/index.js');
21
+ require('../../components/Tooltip/index.js');
22
+ require('../../components/Icon/index.js');
23
+ require('../../components/Notification/index.js');
24
+ require('../../components/Link/index.js');
25
+ require('../../components/Text/index.js');
26
+ const index$2 = require('../../components/Scrollbar/index.js');
27
+ require('../../components/Splitter/index.js');
28
+ require('../../components/SplitterPanel/index.js');
29
+ require('../../components/Autocomplete/index.js');
30
+ require('../../components/Cascader/index.js');
31
+ require('../../components/CascaderPanel/index.js');
32
+ const index = require('../../components/Checkbox/index.js');
33
+ require('../../components/CheckboxGroup/index.js');
34
+ require('../../components/CheckboxButton/index.js');
35
+ require('../../components/Form/index.js');
36
+ require('../../components/FormItem/index.js');
37
+ require('../../components/InputTag/index.js');
38
+ require('../../components/Radio/index.js');
39
+ require('../../components/RadioGroup/index.js');
40
+ require('../../components/SelectV2/index.js');
41
+ require('../../components/Switch/index.js');
42
+ require('../../components/TimePicker/index.js');
43
+ require('../../components/TimeSelect/index.js');
44
+ require('../../components/TreeSelect/index.js');
45
+ require('../../components/Upload/index.js');
46
+ require('../../components/Avatar/index.js');
47
+ require('../../components/AvatarGroup/index.js');
48
+ require('../../components/Badge/index.js');
49
+ require('../../components/Card/index.js');
50
+ require('../../components/Descriptions/index.js');
51
+ require('../../components/DescriptionsItem/index.js');
52
+ require('../../components/Empty/index.js');
53
+ require('../../components/Image/index.js');
54
+ require('../../components/ImageViewer/index.js');
55
+ require('../../components/Pagination/index.js');
56
+ require('../../components/Table/index.js');
57
+ require('../../components/TableColumn/index.js');
58
+ require('../../components/TableV2/index.js');
59
+ require('../../components/Tag/index.js');
60
+ require('../../components/Breadcrumb/index.js');
61
+ require('../../components/BreadcrumbItem/index.js');
62
+ require('../../components/Drawer/index.js');
63
+ require('../../components/Popconfirm/index.js');
64
+ require('../../components/IconComponent/index.js');
65
+ require('../../components/Popover/index.js');
66
+ require('../../components/Result/index.js');
67
+ require('../../components/Progress/index.js');
68
+ require('../../components/Divider/index.js');
69
+ require('../../components/Dropdown/index.js');
70
+ require('../../components/DropdownMenu/index.js');
71
+ require('../../components/DropdownItem/index.js');
72
+ require('../../components/Menu/index.js');
73
+ require('../../components/SubMenu/index.js');
74
+ require('../../components/MenuItem/index.js');
75
+ require('../../components/RadioButton/index.js');
76
+ require('../../components/MenuItemGroup/index.js');
77
+ require('../../components/Collapse/index.js');
78
+ require('../../components/CollapseItem/index.js');
79
+ require('../../components/ContextMenu/index.js');
80
+ require('../../components/CodeEditor/index.js');
81
+ require('../../components/RichEditor/index.js');
82
+ const Icons = require('@funcho/icons-vue');
83
+ const core = require('@vueuse/core');
84
+
85
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
86
+ ...{
87
+ name: "FcProTreeCheckFilter",
88
+ inheritAttrs: false
89
+ },
90
+ __name: "TreeCheckFilter",
91
+ props: {
92
+ border: { type: Boolean, default: true },
93
+ label: { default: "全选" },
94
+ data: { default: () => [] },
95
+ nodeKey: { default: "value" },
96
+ showCheckbox: { type: Boolean, default: true },
97
+ showSearch: { type: Boolean, default: true }
98
+ },
99
+ setup(__props, { expose: __expose }) {
100
+ const ns = useNamespace.useNamespace("pro-tree-check-filter");
101
+ const treeCheckFilterHeader = vue.ref(null);
102
+ const { height: treeCheckFilterHeaderHeight } = core.useElementSize(treeCheckFilterHeader, void 0, {
103
+ box: "border-box"
104
+ });
105
+ const props = __props;
106
+ const checkAll = vue.ref(false);
107
+ const indeterminate = vue.ref(false);
108
+ const queryValue = vue.ref("");
109
+ const treeRef = vue.ref();
110
+ const handelSearch = () => {
111
+ treeRef.value?.filter(queryValue.value);
112
+ };
113
+ const filterNode = (value, data) => {
114
+ if (!value) return true;
115
+ return data.label.includes(value);
116
+ };
117
+ const handleCheckAllChange = () => {
118
+ if (checkAll.value) {
119
+ treeRef.value?.setCheckedNodes([]);
120
+ checkAll.value = false;
121
+ indeterminate.value = false;
122
+ } else {
123
+ const currentCheckedKeys = treeRef.value?.getCheckedKeys();
124
+ const nodesMap = treeRef.value?.store.nodesMap || {};
125
+ const visibleKeys = [];
126
+ Object.values(nodesMap).forEach((node) => {
127
+ if (node.level > 0 && node.visible && node.isLeaf && !node.disabled) {
128
+ visibleKeys.push(node.data[props.nodeKey]);
129
+ }
130
+ });
131
+ const finalKeys = Array.from(/* @__PURE__ */ new Set([...currentCheckedKeys, ...visibleKeys]));
132
+ treeRef.value?.setCheckedKeys(finalKeys);
133
+ checkAll.value = isAllAvailableChecked();
134
+ indeterminate.value = !checkAll.value && finalKeys.length > 0;
135
+ }
136
+ };
137
+ const handleTreeCheckChange = () => {
138
+ const currentCheckedKeys = treeRef.value?.getCheckedKeys();
139
+ checkAll.value = isAllAvailableChecked();
140
+ indeterminate.value = !checkAll.value && currentCheckedKeys.length > 0;
141
+ };
142
+ const isAllAvailableChecked = () => {
143
+ const nodesMap = treeRef.value?.store.nodesMap || {};
144
+ const availableNodes = Object.values(nodesMap).filter((node) => node.level > 0 && !node.disabled);
145
+ if (availableNodes.length === 0) return false;
146
+ return availableNodes.every((node) => node.checked);
147
+ };
148
+ __expose(
149
+ new Proxy(
150
+ {},
151
+ {
152
+ get(_, key) {
153
+ return treeRef.value?.[key];
154
+ },
155
+ has(_, key) {
156
+ return key in treeRef.value;
157
+ }
158
+ }
159
+ )
160
+ );
161
+ return (_ctx, _cache) => {
162
+ return vue.openBlock(), vue.createElementBlock("div", {
163
+ class: vue.normalizeClass({ [vue.unref(ns).b()]: true, [vue.unref(ns).is("border")]: __props.border })
164
+ }, [
165
+ __props.showCheckbox || __props.showSearch ? (vue.openBlock(), vue.createElementBlock("div", {
166
+ key: 0,
167
+ ref_key: "treeCheckFilterHeader",
168
+ ref: treeCheckFilterHeader,
169
+ class: vue.normalizeClass(vue.unref(ns).e("header"))
170
+ }, [
171
+ __props.showCheckbox ? (vue.openBlock(), vue.createBlock(vue.unref(index.FcCheckbox), {
172
+ key: 0,
173
+ "model-value": checkAll.value,
174
+ label: __props.label,
175
+ indeterminate: indeterminate.value,
176
+ onClick: handleCheckAllChange
177
+ }, null, 8, ["model-value", "label", "indeterminate"])) : vue.createCommentVNode("", true),
178
+ __props.showSearch ? (vue.openBlock(), vue.createBlock(vue.unref(index$1.FcInput), {
179
+ key: 1,
180
+ modelValue: queryValue.value,
181
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => queryValue.value = $event),
182
+ placeholder: "请输入关键词",
183
+ "prefix-icon": vue.unref(Icons.Search),
184
+ onClear: handelSearch,
185
+ onKeyup: vue.withKeys(handelSearch, ["enter"])
186
+ }, null, 8, ["modelValue", "prefix-icon"])) : vue.createCommentVNode("", true)
187
+ ], 2)) : vue.createCommentVNode("", true),
188
+ vue.createElementVNode("div", {
189
+ class: vue.normalizeClass(vue.unref(ns).e("body")),
190
+ style: vue.normalizeStyle({ height: `calc(100% - ${vue.unref(treeCheckFilterHeaderHeight)}px)` })
191
+ }, [
192
+ vue.createVNode(vue.unref(index$2.FcScrollbar), { height: "100%" }, {
193
+ default: vue.withCtx(() => [
194
+ vue.createVNode(vue.unref(index$3.FcTree), vue.mergeProps(_ctx.$attrs, {
195
+ ref_key: "treeRef",
196
+ ref: treeRef,
197
+ "show-checkbox": "",
198
+ data: __props.data,
199
+ "filter-node-method": filterNode,
200
+ "node-key": __props.nodeKey,
201
+ onCheck: handleTreeCheckChange
202
+ }), null, 16, ["data", "node-key"])
203
+ ]),
204
+ _: 1
205
+ })
206
+ ], 6)
207
+ ], 2);
208
+ };
209
+ }
210
+ });
211
+
212
+ exports.default = _sfc_main;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const TreeCheckFilter_vue_vue_type_script_setup_true_lang = require('./TreeCheckFilter.vue.js');
6
+ ;/* empty css */
7
+
8
+
9
+
10
+ exports.default = TreeCheckFilter_vue_vue_type_script_setup_true_lang.default;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const TreeCheckFilter_vue_vue_type_script_setup_true_lang = require('./TreeCheckFilter.vue.js');
6
+ ;/* empty css */
7
+ const withInstall = require('../../_utils/with-install.js');
8
+
9
+ const FcProTreeCheckFilter = withInstall.withInstall(TreeCheckFilter_vue_vue_type_script_setup_true_lang.default);
10
+
11
+ exports.FcProTreeCheckFilter = FcProTreeCheckFilter;
12
+ exports.default = FcProTreeCheckFilter;
@@ -0,0 +1,194 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const vue = require('vue');
6
+ const useNamespace = require('../../hooks/use-namespace.js');
7
+ const TreeCheckFilter_vue_vue_type_script_setup_true_lang = require('../TreeCheckFilter/TreeCheckFilter.vue.js');
8
+ ;/* empty css */
9
+ require('../../components/Button/index.js');
10
+ require('../../components/Dialog/index.js');
11
+ require('../../components/ConfigProvider/index.js');
12
+ require('../../components/Input/index.js');
13
+ require('../../components/Tree/index.js');
14
+ require('../../components/Tabs/index.js');
15
+ require('../../components/TabPane/index.js');
16
+ require('../../components/Steps/index.js');
17
+ require('../../components/Step/index.js');
18
+ require('../../components/InputNumber/index.js');
19
+ require('../../components/Select/index.js');
20
+ require('../../components/Option/index.js');
21
+ require('../../components/DatePicker/index.js');
22
+ require('../../components/DatePickerPanel/index.js');
23
+ const index = require('../../components/Tooltip/index.js');
24
+ require('../../components/Icon/index.js');
25
+ const index$2 = require('../../components/Notification/index.js');
26
+ require('../../components/Link/index.js');
27
+ require('../../components/Text/index.js');
28
+ require('../../components/Scrollbar/index.js');
29
+ require('../../components/Splitter/index.js');
30
+ require('../../components/SplitterPanel/index.js');
31
+ require('../../components/Autocomplete/index.js');
32
+ require('../../components/Cascader/index.js');
33
+ require('../../components/CascaderPanel/index.js');
34
+ require('../../components/Checkbox/index.js');
35
+ require('../../components/CheckboxGroup/index.js');
36
+ require('../../components/CheckboxButton/index.js');
37
+ require('../../components/Form/index.js');
38
+ require('../../components/FormItem/index.js');
39
+ require('../../components/InputTag/index.js');
40
+ require('../../components/Radio/index.js');
41
+ require('../../components/RadioGroup/index.js');
42
+ require('../../components/SelectV2/index.js');
43
+ require('../../components/Switch/index.js');
44
+ require('../../components/TimePicker/index.js');
45
+ require('../../components/TimeSelect/index.js');
46
+ require('../../components/TreeSelect/index.js');
47
+ require('../../components/Upload/index.js');
48
+ require('../../components/Avatar/index.js');
49
+ require('../../components/AvatarGroup/index.js');
50
+ require('../../components/Badge/index.js');
51
+ require('../../components/Card/index.js');
52
+ require('../../components/Descriptions/index.js');
53
+ require('../../components/DescriptionsItem/index.js');
54
+ require('../../components/Empty/index.js');
55
+ require('../../components/Image/index.js');
56
+ require('../../components/ImageViewer/index.js');
57
+ require('../../components/Pagination/index.js');
58
+ require('../../components/Table/index.js');
59
+ require('../../components/TableColumn/index.js');
60
+ require('../../components/TableV2/index.js');
61
+ require('../../components/Tag/index.js');
62
+ require('../../components/Breadcrumb/index.js');
63
+ require('../../components/BreadcrumbItem/index.js');
64
+ require('../../components/Drawer/index.js');
65
+ require('../../components/Popconfirm/index.js');
66
+ const index$1 = require('../../components/IconComponent/index.js');
67
+ require('../../components/Popover/index.js');
68
+ require('../../components/Result/index.js');
69
+ require('../../components/Progress/index.js');
70
+ require('../../components/Divider/index.js');
71
+ require('../../components/Dropdown/index.js');
72
+ require('../../components/DropdownMenu/index.js');
73
+ require('../../components/DropdownItem/index.js');
74
+ require('../../components/Menu/index.js');
75
+ require('../../components/SubMenu/index.js');
76
+ require('../../components/MenuItem/index.js');
77
+ require('../../components/RadioButton/index.js');
78
+ require('../../components/MenuItemGroup/index.js');
79
+ require('../../components/Collapse/index.js');
80
+ require('../../components/CollapseItem/index.js');
81
+ require('../../components/ContextMenu/index.js');
82
+ require('../../components/CodeEditor/index.js');
83
+ require('../../components/RichEditor/index.js');
84
+
85
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
86
+ ...{
87
+ name: "FcProTreeTransfer",
88
+ inheritAttrs: false
89
+ },
90
+ __name: "TreeTransfer",
91
+ props: {
92
+ leftProps: { default: () => ({}) },
93
+ rightProps: { default: () => ({}) }
94
+ },
95
+ emits: ["add", "remove"],
96
+ setup(__props, { emit: __emit }) {
97
+ const ns = useNamespace.useNamespace("pro-tree-transfer");
98
+ const leftTreeRef = vue.ref();
99
+ const rightTreeRef = vue.ref();
100
+ const emits = __emit;
101
+ const handleAddClick = () => {
102
+ const keys = leftTreeRef.value?.getCheckedKeys(false) || [];
103
+ if (keys.length === 0) {
104
+ index$2.FcNotification({
105
+ type: "warning",
106
+ message: "请选择左侧内容"
107
+ });
108
+ return;
109
+ }
110
+ const nodes = leftTreeRef.value?.getCheckedNodes(false, false) || [];
111
+ emits("add", leftTreeRef.value, nodes, keys);
112
+ };
113
+ const handleRemoveClick = () => {
114
+ const keys = rightTreeRef.value?.getCheckedKeys(false) || [];
115
+ if (keys.length === 0) {
116
+ index$2.FcNotification({
117
+ type: "warning",
118
+ message: "请选择右侧内容"
119
+ });
120
+ return;
121
+ }
122
+ const nodes = rightTreeRef.value?.getCheckedNodes(false, false) || [];
123
+ emits("remove", rightTreeRef.value, nodes, keys);
124
+ };
125
+ return (_ctx, _cache) => {
126
+ return vue.openBlock(), vue.createElementBlock("div", {
127
+ class: vue.normalizeClass(vue.unref(ns).b())
128
+ }, [
129
+ vue.createElementVNode("div", {
130
+ class: vue.normalizeClass(vue.unref(ns).e("left"))
131
+ }, [
132
+ vue.createVNode(TreeCheckFilter_vue_vue_type_script_setup_true_lang.default, vue.mergeProps({
133
+ ref_key: "leftTreeRef",
134
+ ref: leftTreeRef
135
+ }, __props.leftProps), null, 16)
136
+ ], 2),
137
+ vue.createElementVNode("div", {
138
+ class: vue.normalizeClass(vue.unref(ns).e("center"))
139
+ }, [
140
+ !__props.leftProps.hiddenBtn ? (vue.openBlock(), vue.createBlock(vue.unref(index.FcTooltip), {
141
+ key: 0,
142
+ content: __props.leftProps.tooltip || "新增",
143
+ placement: "top",
144
+ "fallback-placements": ["top", "bottom", "left", "right"]
145
+ }, {
146
+ default: vue.withCtx(() => [
147
+ vue.createElementVNode("div", {
148
+ class: vue.normalizeClass(vue.unref(ns).e("right")),
149
+ onClick: handleAddClick
150
+ }, [
151
+ vue.createVNode(vue.unref(index$1.FcIconComponent), {
152
+ name: "FcRightArrow",
153
+ size: "32",
154
+ color: "#165dff"
155
+ })
156
+ ], 2)
157
+ ]),
158
+ _: 1
159
+ }, 8, ["content"])) : vue.createCommentVNode("", true),
160
+ !__props.rightProps.hiddenBtn ? (vue.openBlock(), vue.createBlock(vue.unref(index.FcTooltip), {
161
+ key: 1,
162
+ content: __props.rightProps.tooltip || "删除",
163
+ placement: "top",
164
+ "fallback-placements": ["top", "bottom", "left", "right"]
165
+ }, {
166
+ default: vue.withCtx(() => [
167
+ vue.createElementVNode("div", {
168
+ class: vue.normalizeClass(vue.unref(ns).e("left")),
169
+ onClick: handleRemoveClick
170
+ }, [
171
+ vue.createVNode(vue.unref(index$1.FcIconComponent), {
172
+ name: "FcLeftArrow",
173
+ size: "32",
174
+ color: "#ff3232"
175
+ })
176
+ ], 2)
177
+ ]),
178
+ _: 1
179
+ }, 8, ["content"])) : vue.createCommentVNode("", true)
180
+ ], 2),
181
+ vue.createElementVNode("div", {
182
+ class: vue.normalizeClass(vue.unref(ns).e("right"))
183
+ }, [
184
+ vue.createVNode(TreeCheckFilter_vue_vue_type_script_setup_true_lang.default, vue.mergeProps({
185
+ ref_key: "rightTreeRef",
186
+ ref: rightTreeRef
187
+ }, __props.rightProps), null, 16)
188
+ ], 2)
189
+ ], 2);
190
+ };
191
+ }
192
+ });
193
+
194
+ exports.default = _sfc_main;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const TreeTransfer_vue_vue_type_script_setup_true_lang = require('./TreeTransfer.vue.js');
6
+ ;/* empty css */
7
+
8
+
9
+
10
+ exports.default = TreeTransfer_vue_vue_type_script_setup_true_lang.default;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const TreeTransfer_vue_vue_type_script_setup_true_lang = require('./TreeTransfer.vue.js');
6
+ ;/* empty css */
7
+ const withInstall = require('../../_utils/with-install.js');
8
+
9
+ const FcProTreeTransfer = withInstall.withInstall(TreeTransfer_vue_vue_type_script_setup_true_lang.default);
10
+
11
+ exports.FcProTreeTransfer = FcProTreeTransfer;
12
+ exports.default = FcProTreeTransfer;
@@ -5,9 +5,13 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const index = require('./SidebarMainLayout/index.js');
6
6
  const index$1 = require('./DataTable/index.js');
7
7
  const index$2 = require('./ProForm/index.js');
8
+ const index$3 = require('./TreeCheckFilter/index.js');
9
+ const index$4 = require('./TreeTransfer/index.js');
8
10
 
9
11
 
10
12
 
11
13
  exports.FcProSidebarMainLayout = index.FcProSidebarMainLayout;
12
14
  exports.FcProDataTable = index$1.FcProDataTable;
13
15
  exports.FcProForm = index$2.FcProForm;
16
+ exports.FcProTreeCheckFilter = index$3.FcProTreeCheckFilter;
17
+ exports.FcProTreeTransfer = index$4.FcProTreeTransfer;
package/dist/cjs/index.js CHANGED
@@ -7,8 +7,8 @@ const directive = require('./node_modules/.pnpm/element-plus@2.13.5_patch_hash_4
7
7
  const dayjs_min = require('./_virtual/dayjs.min.js');
8
8
  ;/* empty css */
9
9
  const lovIdRequestProvide = require('./config/lovId-request-provide.js');
10
- const index$1i = require('./components/index.js');
11
- const index$1j = require('./business/index.js');
10
+ const index$1k = require('./components/index.js');
11
+ const index$1l = require('./business/index.js');
12
12
  const version = require('./version.js');
13
13
  const index$1 = require('./components/Button/index.js');
14
14
  const index$2 = require('./components/Dialog/index.js');
@@ -91,12 +91,14 @@ const index$1e = require('./components/RichEditor/index.js');
91
91
  const index$1f = require('./business/SidebarMainLayout/index.js');
92
92
  const index$1g = require('./business/DataTable/index.js');
93
93
  const index$1h = require('./business/ProForm/index.js');
94
+ const index$1i = require('./business/TreeCheckFilter/index.js');
95
+ const index$1j = require('./business/TreeTransfer/index.js');
94
96
 
95
- const components = Object.keys(index$1i).map((key) => {
96
- return index$1i[key];
97
+ const components = Object.keys(index$1k).map((key) => {
98
+ return index$1k[key];
97
99
  });
98
- const proComponents = Object.keys(index$1j).map((key) => {
99
- return index$1j[key];
100
+ const proComponents = Object.keys(index$1l).map((key) => {
101
+ return index$1l[key];
100
102
  });
101
103
  const installComponents = [...components, ...proComponents].filter((comp) => {
102
104
  return typeof comp === "object" && comp.name && typeof comp.install === "function";
@@ -224,5 +226,7 @@ exports.FcRichEditorInput = index$1e.FcRichEditorInput;
224
226
  exports.FcProSidebarMainLayout = index$1f.FcProSidebarMainLayout;
225
227
  exports.FcProDataTable = index$1g.FcProDataTable;
226
228
  exports.FcProForm = index$1h.FcProForm;
229
+ exports.FcProTreeCheckFilter = index$1i.FcProTreeCheckFilter;
230
+ exports.FcProTreeTransfer = index$1j.FcProTreeTransfer;
227
231
  exports.default = index;
228
232
  exports.install = install;
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const version = "1.1.8";
5
+ const version = "1.1.10";
6
6
 
7
7
  exports.version = version;
@@ -112,6 +112,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
112
112
  return `请输入${item.label}`;
113
113
  };
114
114
  const formRef = ref();
115
+ const handleRef = (el, item) => {
116
+ if (item.attrs?.onRef && el) {
117
+ item.attrs.onRef(el, item);
118
+ }
119
+ };
115
120
  __expose(
116
121
  new Proxy(
117
122
  {},
@@ -157,13 +162,18 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
157
162
  key: 0,
158
163
  ref_for: true
159
164
  }, item.attrs, {
165
+ ref_for: true,
166
+ ref: (el) => handleRef(el, item),
160
167
  placeholder: getPlaceholder(item, item.type),
161
168
  style: { "width": "100%" }
162
169
  }), null, 16, ["placeholder"])) : (openBlock(), createBlock(resolveDynamicComponent(unref(ComponentsMap)[item.type || "FcInput"]), mergeProps({
163
170
  key: 1,
171
+ ref_for: true
172
+ }, item.attrs, {
173
+ ref_for: true,
174
+ ref: (el) => handleRef(el, item),
164
175
  modelValue: formModel.value[item.prop],
165
- "onUpdate:modelValue": ($event) => formModel.value[item.prop] = $event
166
- }, { ref_for: true }, item.attrs, {
176
+ "onUpdate:modelValue": ($event) => formModel.value[item.prop] = $event,
167
177
  placeholder: getPlaceholder(item, item.type),
168
178
  style: { "width": "100%" }
169
179
  }), null, 16, ["modelValue", "onUpdate:modelValue", "placeholder"]))