@wfrog/vc-ui 1.12.4 → 1.13.0

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 (40) hide show
  1. package/dist/es/chunk/{Bw0Rhd-r.mjs → oAsZydDS.mjs} +6 -3
  2. package/dist/es/components/backbottom/backbottom.mjs +6 -6
  3. package/dist/es/components/explorer-column-table/explorer-column-table.mjs +5 -5
  4. package/dist/es/components/explorer-column-table/index.css +12 -12
  5. package/dist/es/components/explorer-list/explorer-list.d.ts +2 -1
  6. package/dist/es/components/explorer-list/explorer-list.mjs +18 -12
  7. package/dist/es/components/explorer-list/explorer-list.vue.d.ts +3 -2
  8. package/dist/es/components/explorer-list/index.css +18 -18
  9. package/dist/es/components/explorer-table/explorer-table.mjs +7 -7
  10. package/dist/es/components/explorer-table/index.css +14 -14
  11. package/dist/es/components/explorer-tree/explorer-tree.d.ts +2 -1
  12. package/dist/es/components/explorer-tree/explorer-tree.mjs +27 -7
  13. package/dist/es/components/explorer-tree/explorer-tree.vue.d.ts +2 -2
  14. package/dist/es/components/explorer-tree/index.css +19 -19
  15. package/dist/es/components/icon-picker/icon-picker.mjs +17 -17
  16. package/dist/es/components/icon-picker/index.css +27 -27
  17. package/dist/es/components/pca-picker/index.css +2 -2
  18. package/dist/es/components/pca-picker/pca-picker.mjs +1 -1
  19. package/dist/es/components/select/index.css +5 -2
  20. package/dist/es/components/select/select.mjs +9 -5
  21. package/dist/es/components/transfer-panel/index.css +22 -22
  22. package/dist/es/components/transfer-panel/transfer-panel.mjs +10 -10
  23. package/dist/es/components/tree-picker/index.css +2 -2
  24. package/dist/es/components/tree-picker/popover-cascader.css +9 -6
  25. package/dist/es/components/tree-picker/tree-picker.d.ts +2 -0
  26. package/dist/es/components/tree-picker/tree-picker.mjs +10 -9
  27. package/dist/es/components/tree-picker/tree-picker.vue.d.ts +1 -0
  28. package/dist/es/components/tree-select/docs/data.d.ts +2 -0
  29. package/dist/es/components/tree-select/index.css +48 -0
  30. package/dist/es/components/tree-select/index.d.ts +4 -0
  31. package/dist/es/components/tree-select/index.mjs +6 -0
  32. package/dist/es/components/tree-select/tree-select.d.ts +21 -0
  33. package/dist/es/components/tree-select/tree-select.mjs +222 -0
  34. package/dist/es/components/tree-select/tree-select.vue.d.ts +1029 -0
  35. package/dist/es/components/upload-file/upload-file.mjs +2 -2
  36. package/dist/es/index.d.ts +1 -0
  37. package/dist/es/index.mjs +5 -3
  38. package/dist/global.d.ts +1 -0
  39. package/dist/index.css +187 -133
  40. package/package.json +1 -1
@@ -0,0 +1,222 @@
1
+ import './index.css'
2
+ import { ElPopover, ElScrollbar, ElTree, ElCascader } from 'element-plus/es';
3
+ import 'element-plus/es/components/base/style/css';
4
+ import 'element-plus/es/components/popover/style/css';
5
+ import 'element-plus/es/components/cascader/style/css';
6
+ import 'element-plus/es/components/scrollbar/style/css';
7
+ import 'element-plus/es/components/tree/style/css';
8
+ import { defineComponent, useCssVars, unref, computed, useCssModule, ref, useTemplateRef, watch, onMounted, createBlock, openBlock, withCtx, createElementVNode, normalizeClass, createVNode, mergeProps, isRef, createTextVNode, toDisplayString, nextTick } from 'vue';
9
+ import { useFormDisabled, useFormItem } from 'element-plus';
10
+ import { f as formatToPx } from '../../chunk/DZ5W9TaA.mjs';
11
+ import { useVModel, useToggle, onClickOutside, useThrottleFn } from '@vueuse/core';
12
+ import { _ as _export_sfc } from '../../chunk/pcqpp-6-.mjs';
13
+
14
+ const _sfc_main = /* @__PURE__ */ defineComponent({
15
+ __name: "tree-select",
16
+ props: {
17
+ emptyText: { default: "暂无数据" },
18
+ placeholder: { default: "请选择" },
19
+ disabled: { type: Boolean, default: void 0 },
20
+ multiple: { type: Boolean, default: false },
21
+ checkStrictly: { type: Boolean },
22
+ modelValue: {},
23
+ options: { default: () => [] },
24
+ props: { default: () => ({}) },
25
+ width: {},
26
+ filterable: { type: Boolean },
27
+ filterEmptyText: { default: "没有匹配到数据" },
28
+ clearable: { type: Boolean, default: true }
29
+ },
30
+ emits: ["update:modelValue", "change", "blur"],
31
+ setup(__props, { emit: __emit }) {
32
+ useCssVars((_ctx) => ({
33
+ "v53d289be": unref(myWidth)
34
+ }));
35
+ const props = __props;
36
+ const emits = __emit;
37
+ const myValue = useVModel(props, "modelValue", emits);
38
+ const [popoverVisible, togglePopoverVisible] = useToggle();
39
+ const formDisabled = useFormDisabled();
40
+ const { formItem } = useFormItem();
41
+ const valueKey = computed(() => props.props.value || "value");
42
+ const cascaderProps = computed(() => ({
43
+ value: valueKey.value,
44
+ multiple: props.multiple,
45
+ emitPath: false,
46
+ checkStrictly: props.checkStrictly,
47
+ ...props.props
48
+ }));
49
+ const $style = useCssModule();
50
+ const selectClassName = computed(() => ({ [$style["is-active"]]: popoverVisible.value }));
51
+ const wrapperClassName = computed(() => ({ [$style["cascader-width"]]: !!props.width }));
52
+ const myWidth = computed(() => props.width ? formatToPx(props.width) : "auto");
53
+ const keyword = ref("");
54
+ function handleChange(node) {
55
+ formItem?.validate?.("change").catch(() => {
56
+ });
57
+ emits("change", myValue.value, node);
58
+ }
59
+ const treeRef = useTemplateRef("treeRef");
60
+ function syncTreeState(val) {
61
+ nextTick(() => {
62
+ if (props.multiple) {
63
+ treeRef.value?.setCheckedKeys(Array.isArray(val) ? val : [], false);
64
+ } else {
65
+ treeRef.value?.setCurrentKey(val, true);
66
+ }
67
+ });
68
+ }
69
+ watch(() => myValue.value, syncTreeState);
70
+ onMounted(() => syncTreeState(myValue.value));
71
+ function handleCheck() {
72
+ if (!props.multiple) {
73
+ return;
74
+ }
75
+ const checkedKeys = treeRef.value?.getCheckedKeys(!props.checkStrictly) || [];
76
+ myValue.value = checkedKeys;
77
+ const checkedNodes = treeRef.value?.getCheckedNodes(!props.checkStrictly) || [];
78
+ handleChange(checkedNodes);
79
+ }
80
+ function handleNodeClick(data, node) {
81
+ if (props.multiple) {
82
+ return;
83
+ }
84
+ if (props.checkStrictly || node.isLeaf) {
85
+ myValue.value = data[valueKey.value];
86
+ handleChange(node);
87
+ togglePopoverVisible(false);
88
+ }
89
+ }
90
+ const containerRef = useTemplateRef("containerRef");
91
+ onClickOutside(containerRef, (event) => {
92
+ let target = event.target;
93
+ let result = false;
94
+ do {
95
+ result = target.classList ? target.classList.contains($style.cascader) : false;
96
+ target = target.parentNode;
97
+ } while (result === false && target !== null && target.nodeName !== "BODY");
98
+ !result && togglePopoverVisible(false);
99
+ });
100
+ function clear() {
101
+ myValue.value = props.multiple ? [] : void 0;
102
+ treeRef.value?.setCheckedKeys([], false);
103
+ togglePopoverVisible(false);
104
+ }
105
+ function handleKeyup(event) {
106
+ keyword.value = event.target.value;
107
+ }
108
+ const handleSelectClick = useThrottleFn(() => !formDisabled.value && togglePopoverVisible(), 300);
109
+ function handleBlur(event) {
110
+ formItem?.validate?.("blur").catch(() => {
111
+ });
112
+ setTimeout(() => {
113
+ keyword.value = "";
114
+ }, 300);
115
+ emits("blur", event);
116
+ }
117
+ return (_ctx, _cache) => {
118
+ const _component_ElTree = ElTree;
119
+ const _component_ElScrollbar = ElScrollbar;
120
+ const _component_ElCascader = ElCascader;
121
+ const _component_ElPopover = ElPopover;
122
+ return openBlock(), createBlock(_component_ElPopover, {
123
+ visible: unref(popoverVisible) && !unref(keyword),
124
+ placement: "bottom",
125
+ "popper-class": unref($style).popover,
126
+ disabled: __props.filterable && !!unref(keyword)
127
+ }, {
128
+ reference: withCtx(() => [
129
+ createElementVNode("div", {
130
+ class: normalizeClass(unref(wrapperClassName)),
131
+ onClickCapture: _cache[1] || (_cache[1] = //@ts-ignore
132
+ (...args) => unref(handleSelectClick) && unref(handleSelectClick)(...args)),
133
+ onKeyup: handleKeyup
134
+ }, [
135
+ createVNode(_component_ElCascader, mergeProps({
136
+ modelValue: unref(myValue),
137
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(myValue) ? myValue.value = $event : null),
138
+ "collapse-tags": "",
139
+ "collapse-tags-tooltip": "",
140
+ clearable: __props.clearable,
141
+ options: __props.options,
142
+ placeholder: __props.placeholder,
143
+ filterable: __props.filterable,
144
+ props: unref(cascaderProps),
145
+ class: [unref(selectClassName), unref($style).cascader],
146
+ "popper-class": { [unref($style)["cascader-popover"]]: !__props.filterable || !unref(keyword), [unref($style)["cascader-panel"]]: !!unref(keyword) },
147
+ disabled: unref(formDisabled)
148
+ }, _ctx.$attrs, {
149
+ onClear: clear,
150
+ onBlur: handleBlur
151
+ }), {
152
+ empty: withCtx(() => [
153
+ createTextVNode(toDisplayString(__props.filterEmptyText), 1)
154
+ ]),
155
+ _: 1
156
+ }, 16, ["modelValue", "clearable", "options", "placeholder", "filterable", "props", "class", "popper-class", "disabled"])
157
+ ], 34)
158
+ ]),
159
+ default: withCtx(() => [
160
+ createElementVNode("div", {
161
+ ref_key: "containerRef",
162
+ ref: containerRef,
163
+ class: normalizeClass(unref($style).container)
164
+ }, [
165
+ createVNode(_component_ElScrollbar, {
166
+ "view-class": unref($style)["scrollbar-view"]
167
+ }, {
168
+ default: withCtx(() => [
169
+ createVNode(_component_ElTree, {
170
+ ref_key: "treeRef",
171
+ ref: treeRef,
172
+ data: __props.options,
173
+ "node-key": unref(valueKey),
174
+ props: props.props,
175
+ "empty-text": __props.emptyText,
176
+ "show-checkbox": __props.multiple,
177
+ "check-on-click-node": __props.multiple,
178
+ "expand-on-click-node": !__props.multiple && !__props.checkStrictly,
179
+ "default-expand-all": true,
180
+ "highlight-current": !__props.multiple,
181
+ "check-strictly": __props.checkStrictly,
182
+ onCheck: handleCheck,
183
+ onNodeClick: handleNodeClick
184
+ }, null, 8, ["data", "node-key", "props", "empty-text", "show-checkbox", "check-on-click-node", "expand-on-click-node", "highlight-current", "check-strictly"])
185
+ ]),
186
+ _: 1
187
+ }, 8, ["view-class"])
188
+ ], 2)
189
+ ]),
190
+ _: 1
191
+ }, 8, ["visible", "popper-class", "disabled"]);
192
+ };
193
+ }
194
+ });
195
+
196
+ /* unplugin-vue-components disabled */const popover = "_popover_miab9_1";
197
+ const container = "_container_miab9_7";
198
+ const wrapper = "_wrapper_miab9_24";
199
+ const cascader = "_cascader_miab9_31";
200
+ const style0 = {
201
+ popover: popover,
202
+ container: container,
203
+ "scrollbar-view": "_scrollbar-view_miab9_20",
204
+ wrapper: wrapper,
205
+ cascader: cascader,
206
+ "cascader-width": "_cascader-width_miab9_38",
207
+ "is-active": "_is-active_miab9_42",
208
+ "cascader-popover": "_cascader-popover_miab9_49",
209
+ "cascader-panel": "_cascader-panel_miab9_53"
210
+ };
211
+
212
+ const cssModules = {
213
+ "$style": style0
214
+ };
215
+ const Component = /* @__PURE__ */ _export_sfc(_sfc_main, [["__cssModules", cssModules]]);
216
+
217
+ const __vite_glob_0_61 = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
218
+ __proto__: null,
219
+ default: Component
220
+ }, Symbol.toStringTag, { value: 'Module' }));
221
+
222
+ export { Component as C, __vite_glob_0_61 as _ };