vue-devui 1.0.0-beta.9 → 1.0.0-pre.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.
- package/README.md +81 -66
- package/accordion/index.es.js +522 -39
- package/accordion/index.umd.js +1 -1
- package/accordion/style.css +1 -1
- package/alert/index.es.js +6 -7
- package/alert/index.umd.js +1 -1
- package/alert/style.css +1 -1
- package/{toast → auto-complete}/index.d.ts +0 -0
- package/auto-complete/index.es.js +976 -0
- package/auto-complete/index.umd.js +1 -0
- package/auto-complete/package.json +7 -0
- package/auto-complete/style.css +1 -0
- package/back-top/index.es.js +1 -1
- package/back-top/index.umd.js +1 -1
- package/badge/index.es.js +12 -18
- package/badge/index.umd.js +1 -1
- package/button/index.es.js +262 -82
- package/button/index.umd.js +1 -1
- package/button/style.css +1 -1
- package/carousel/index.es.js +7 -6
- package/carousel/index.umd.js +1 -1
- package/cascader/index.es.js +5392 -772
- package/cascader/index.umd.js +27 -1
- package/checkbox/style.css +1 -1
- package/color-picker/index.d.ts +7 -0
- package/color-picker/index.es.js +8187 -0
- package/color-picker/index.umd.js +27 -0
- package/color-picker/package.json +7 -0
- package/color-picker/style.css +1 -0
- package/comment/index.es.js +42 -13
- package/comment/index.umd.js +1 -1
- package/comment/style.css +1 -1
- package/countdown/index.es.js +27 -18
- package/countdown/index.umd.js +1 -1
- package/countdown/style.css +1 -1
- package/date-picker/index.es.js +10 -11
- package/date-picker/index.umd.js +1 -1
- package/date-picker/style.css +1 -1
- package/dragdrop/index.es.js +135 -10
- package/dragdrop/index.umd.js +1 -1
- package/drawer/index.es.js +169 -223
- package/drawer/index.umd.js +1 -1
- package/drawer/style.css +1 -1
- package/dropdown/index.es.js +408 -300
- package/dropdown/index.umd.js +1 -1
- package/dropdown/style.css +1 -1
- package/editable-select/index.es.js +293 -5663
- package/editable-select/index.umd.js +1 -27
- package/editable-select/style.css +1 -1
- package/form/index.es.js +6129 -461
- package/form/index.umd.js +27 -1
- package/form/style.css +1 -1
- package/fullscreen/index.es.js +110 -128
- package/fullscreen/index.umd.js +1 -1
- package/fullscreen/style.css +1 -1
- package/gantt/index.es.js +6 -18
- package/gantt/index.umd.js +1 -1
- package/gantt/style.css +1 -1
- package/grid/index.es.js +1 -1
- package/grid/style.css +1 -1
- package/icon/index.es.js +2 -1
- package/icon/index.umd.js +1 -1
- package/image-preview/index.es.js +33 -15
- package/image-preview/index.umd.js +1 -1
- package/input/index.es.js +4 -5
- package/input/index.umd.js +1 -1
- package/input/style.css +1 -1
- package/input-icon/index.es.js +6 -6
- package/input-icon/index.umd.js +1 -1
- package/input-icon/style.css +1 -1
- package/input-number/index.es.js +2 -1
- package/input-number/index.umd.js +1 -1
- package/list/index.d.ts +7 -0
- package/list/index.es.js +39 -0
- package/list/index.umd.js +1 -0
- package/{toast → list}/package.json +1 -1
- package/list/style.css +1 -0
- package/loading/index.es.js +2 -2
- package/modal/index.es.js +293 -759
- package/modal/index.umd.js +1 -1
- package/modal/style.css +1 -1
- package/nav-sprite/index.es.js +1 -675
- package/nav-sprite/index.umd.js +1 -1
- package/notification/index.d.ts +7 -0
- package/notification/index.es.js +286 -0
- package/notification/index.umd.js +1 -0
- package/notification/package.json +7 -0
- package/notification/style.css +1 -0
- package/nuxt/components/Accordion.js +3 -0
- package/nuxt/components/Alert.js +3 -0
- package/nuxt/components/Anchor.js +3 -0
- package/nuxt/components/Aside.js +3 -0
- package/nuxt/components/AutoComplete.js +3 -0
- package/nuxt/components/Avatar.js +3 -0
- package/nuxt/components/BackTop.js +3 -0
- package/nuxt/components/Badge.js +3 -0
- package/nuxt/components/Breadcrumb.js +3 -0
- package/nuxt/components/Button.js +3 -0
- package/nuxt/components/Card.js +3 -0
- package/nuxt/components/Carousel.js +3 -0
- package/nuxt/components/CarouselItem.js +3 -0
- package/nuxt/components/Cascader.js +3 -0
- package/nuxt/components/Checkbox.js +3 -0
- package/nuxt/components/Col.js +3 -0
- package/nuxt/components/ColorPicker.js +3 -0
- package/nuxt/components/Column.js +3 -0
- package/nuxt/components/Comment.js +3 -0
- package/nuxt/components/Content.js +3 -0
- package/nuxt/components/Countdown.js +3 -0
- package/nuxt/components/DatePicker.js +3 -0
- package/nuxt/components/Drawer.js +3 -0
- package/nuxt/components/DrawerService.js +3 -0
- package/nuxt/components/Dropdown.js +3 -0
- package/nuxt/components/DropdownMenu.js +3 -0
- package/nuxt/components/EditableSelect.js +3 -0
- package/nuxt/components/FixedOverlay.js +3 -0
- package/nuxt/components/FlexibleOverlay.js +3 -0
- package/nuxt/components/Footer.js +3 -0
- package/nuxt/components/Form.js +3 -0
- package/nuxt/components/FormControl.js +3 -0
- package/nuxt/components/FormItem.js +3 -0
- package/nuxt/components/FormLabel.js +3 -0
- package/nuxt/components/FormOperation.js +3 -0
- package/nuxt/components/Fullscreen.js +3 -0
- package/nuxt/components/Gantt.js +3 -0
- package/nuxt/components/Header.js +3 -0
- package/nuxt/components/IFileOptions.js +3 -0
- package/nuxt/components/IUploadOptions.js +3 -0
- package/nuxt/components/Icon.js +2 -0
- package/nuxt/components/ImagePreviewService.js +3 -0
- package/nuxt/components/Input.js +3 -0
- package/nuxt/components/InputIcon.js +3 -0
- package/nuxt/components/InputNumber.js +3 -0
- package/nuxt/components/Layout.js +3 -0
- package/nuxt/components/List.js +3 -0
- package/nuxt/components/ListItem.js +3 -0
- package/nuxt/components/Loading.js +3 -0
- package/nuxt/components/LoadingService.js +3 -0
- package/nuxt/components/Modal.js +3 -0
- package/nuxt/components/NavSprite.js +2 -0
- package/nuxt/components/Notification.js +3 -0
- package/nuxt/components/NotificationService.js +3 -0
- package/nuxt/components/Pagination.js +3 -0
- package/nuxt/components/Panel.js +3 -0
- package/nuxt/components/Popover.js +3 -0
- package/nuxt/components/Progress.js +3 -0
- package/nuxt/components/QuadrantDiagram.js +3 -0
- package/nuxt/components/Radio.js +3 -0
- package/nuxt/components/RadioGroup.js +3 -0
- package/nuxt/components/Rate.js +3 -0
- package/nuxt/components/ReadTip.js +3 -0
- package/nuxt/components/Result.js +3 -0
- package/nuxt/components/Row.js +3 -0
- package/nuxt/components/Search.js +3 -0
- package/nuxt/components/Select.js +3 -0
- package/nuxt/components/Skeleton.js +3 -0
- package/nuxt/components/SkeletonItem.js +3 -0
- package/nuxt/components/Slider.js +3 -0
- package/nuxt/components/Splitter.js +3 -0
- package/nuxt/components/Statistic.js +3 -0
- package/nuxt/components/Status.js +3 -0
- package/nuxt/components/StepsGuide.js +3 -0
- package/nuxt/components/StickSlider.js +3 -0
- package/nuxt/components/Sticky.js +2 -0
- package/nuxt/components/Switch.js +3 -0
- package/nuxt/components/Table.js +3 -0
- package/nuxt/components/Tabs.js +3 -0
- package/nuxt/components/Tag.js +3 -0
- package/nuxt/components/TagInput.js +3 -0
- package/nuxt/components/Textarea.js +3 -0
- package/nuxt/components/TimeAxis.js +3 -0
- package/nuxt/components/TimeAxisItem.js +3 -0
- package/nuxt/components/TimePicker.js +3 -0
- package/nuxt/components/Tooltip.js +3 -0
- package/nuxt/components/Transfer.js +3 -0
- package/nuxt/components/Tree.js +3 -0
- package/nuxt/components/TreeSelect.js +3 -0
- package/nuxt/components/Upload.js +3 -0
- package/nuxt/components/UploadStatus.js +3 -0
- package/nuxt/components/badgeProps.js +3 -0
- package/nuxt/components/buttonProps.js +3 -0
- package/nuxt/components/dropdownMenuProps.js +3 -0
- package/nuxt/components/fixedOverlayProps.js +3 -0
- package/nuxt/components/flexibleOverlayProps.js +3 -0
- package/nuxt/components/notificationProps.js +3 -0
- package/nuxt/components/overlayEmits.js +3 -0
- package/nuxt/components/overlayProps.js +3 -0
- package/nuxt/components/popoverProps.js +3 -0
- package/nuxt/components/tooltipProps.js +3 -0
- package/nuxt/components/uploadProps.js +3 -0
- package/nuxt/index.js +13 -0
- package/overlay/index.es.js +142 -198
- package/overlay/index.umd.js +1 -1
- package/overlay/style.css +1 -1
- package/package.json +10 -18
- package/pagination/index.es.js +1 -1
- package/pagination/style.css +1 -1
- package/panel/index.es.js +3 -3
- package/panel/index.umd.js +1 -1
- package/popover/index.es.js +5947 -189
- package/popover/index.umd.js +27 -1
- package/popover/style.css +1 -1
- package/progress/index.es.js +8 -8
- package/progress/index.umd.js +3 -3
- package/quadrant-diagram/index.es.js +5405 -166
- package/quadrant-diagram/index.umd.js +27 -1
- package/radio/index.es.js +5 -5
- package/radio/index.umd.js +1 -1
- package/radio/style.css +1 -1
- package/read-tip/style.css +1 -1
- package/result/index.es.js +2 -1
- package/result/index.umd.js +1 -1
- package/ripple/index.es.js +1 -1
- package/search/index.es.js +5426 -195
- package/search/index.umd.js +27 -1
- package/search/style.css +1 -1
- package/select/index.es.js +3 -2
- package/select/index.umd.js +1 -1
- package/select/style.css +1 -1
- package/slider/index.es.js +2 -5
- package/slider/index.umd.js +1 -1
- package/slider/style.css +1 -1
- package/splitter/index.es.js +5881 -36
- package/splitter/index.umd.js +27 -1
- package/splitter/style.css +1 -1
- package/statistic/index.es.js +19 -32
- package/statistic/index.umd.js +1 -1
- package/statistic/style.css +1 -1
- package/status/style.css +1 -1
- package/sticky/index.umd.js +1 -1
- package/style.css +1 -1
- package/table/index.es.js +698 -358
- package/table/index.umd.js +1 -1
- package/table/style.css +1 -1
- package/tabs/index.es.js +3 -4
- package/tabs/index.umd.js +1 -1
- package/tabs/style.css +1 -1
- package/tag/index.es.js +2 -2
- package/tag/index.umd.js +1 -1
- package/tag/style.css +1 -1
- package/tag-input/index.es.js +0 -12
- package/tag-input/index.umd.js +1 -1
- package/textarea/style.css +1 -1
- package/{theme → theme/theme.scss} +0 -0
- package/time-axis/index.es.js +2 -1
- package/time-axis/index.umd.js +1 -1
- package/time-picker/index.es.js +269 -84
- package/time-picker/index.umd.js +1 -1
- package/time-picker/style.css +1 -1
- package/tooltip/index.es.js +5798 -141
- package/tooltip/index.umd.js +27 -1
- package/tooltip/style.css +1 -1
- package/transfer/index.es.js +6522 -638
- package/transfer/index.umd.js +27 -1
- package/transfer/style.css +1 -1
- package/tree/index.es.js +5775 -192
- package/tree/index.umd.js +27 -1
- package/tree/style.css +1 -1
- package/tree-select/index.es.js +130 -35
- package/tree-select/index.umd.js +1 -1
- package/tree-select/style.css +1 -1
- package/upload/index.es.js +463 -2680
- package/upload/index.umd.js +1 -1
- package/upload/style.css +1 -1
- package/vue-devui.es.js +14261 -14065
- package/vue-devui.umd.js +19 -19
- package/toast/index.es.js +0 -2059
- package/toast/index.umd.js +0 -1
- package/toast/style.css +0 -1
package/tree-select/index.es.js
CHANGED
|
@@ -17,7 +17,7 @@ var __spreadValues = (a, b) => {
|
|
|
17
17
|
return a;
|
|
18
18
|
};
|
|
19
19
|
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
-
import { ref, computed, defineComponent, inject, createVNode, mergeProps, resolveComponent,
|
|
20
|
+
import { ref, computed, defineComponent, inject, createVNode, mergeProps, toRefs, withDirectives, resolveComponent, createTextVNode, Transition, Fragment, vShow, resolveDirective } from "vue";
|
|
21
21
|
var treeSelect = "";
|
|
22
22
|
const treeSelectProps = {
|
|
23
23
|
modelValue: {
|
|
@@ -52,6 +52,10 @@ const treeSelectProps = {
|
|
|
52
52
|
type: Boolean,
|
|
53
53
|
default: false
|
|
54
54
|
},
|
|
55
|
+
enableLabelization: {
|
|
56
|
+
type: Boolean,
|
|
57
|
+
default: false
|
|
58
|
+
},
|
|
55
59
|
onToggleChange: {
|
|
56
60
|
type: Function,
|
|
57
61
|
default: void 0
|
|
@@ -61,10 +65,12 @@ const treeSelectProps = {
|
|
|
61
65
|
default: void 0
|
|
62
66
|
}
|
|
63
67
|
};
|
|
68
|
+
const nodeMap = /* @__PURE__ */ new Map();
|
|
64
69
|
function attributeExtension(data) {
|
|
65
70
|
data.forEach((el) => {
|
|
66
71
|
let level = 1;
|
|
67
72
|
el.level = level;
|
|
73
|
+
nodeMap.set(el.label, el);
|
|
68
74
|
const nodeQueue = [];
|
|
69
75
|
nodeQueue.push(el);
|
|
70
76
|
while (nodeQueue.length !== 0) {
|
|
@@ -73,6 +79,7 @@ function attributeExtension(data) {
|
|
|
73
79
|
node.children.forEach((el2) => {
|
|
74
80
|
el2.level = level + 1;
|
|
75
81
|
el2.parent = node;
|
|
82
|
+
nodeMap.set(el2.label, el2);
|
|
76
83
|
nodeQueue.push(el2);
|
|
77
84
|
});
|
|
78
85
|
}
|
|
@@ -109,8 +116,8 @@ function useToggle(props) {
|
|
|
109
116
|
};
|
|
110
117
|
}
|
|
111
118
|
function useSelect(props) {
|
|
112
|
-
const inputValue = ref(
|
|
113
|
-
const selectedCache = new Set();
|
|
119
|
+
const inputValue = ref([]);
|
|
120
|
+
const selectedCache = /* @__PURE__ */ new Set();
|
|
114
121
|
const selectValue = (item) => {
|
|
115
122
|
if (!props.multiple) {
|
|
116
123
|
inputValue.value = item.label;
|
|
@@ -121,7 +128,7 @@ function useSelect(props) {
|
|
|
121
128
|
useCache(item);
|
|
122
129
|
searchUp(item);
|
|
123
130
|
searchDown(item);
|
|
124
|
-
inputValue.value = [...selectedCache]
|
|
131
|
+
inputValue.value = [...selectedCache];
|
|
125
132
|
}
|
|
126
133
|
};
|
|
127
134
|
const useCache = (item) => {
|
|
@@ -170,23 +177,36 @@ function useSelect(props) {
|
|
|
170
177
|
selectValue
|
|
171
178
|
};
|
|
172
179
|
}
|
|
173
|
-
function useClear(props,
|
|
180
|
+
function useClear(props, ctx2, data) {
|
|
174
181
|
const isClearable = computed(() => {
|
|
175
|
-
return !props.disabled && props.allowClear
|
|
182
|
+
return !props.disabled && props.allowClear;
|
|
176
183
|
});
|
|
177
|
-
const
|
|
184
|
+
const handleClearAll = (e) => {
|
|
178
185
|
e.preventDefault();
|
|
179
186
|
e.stopPropagation();
|
|
180
187
|
if (props.multiple) {
|
|
181
|
-
|
|
188
|
+
ctx2.emit("update:modelValue", []);
|
|
189
|
+
data.value = [];
|
|
182
190
|
} else {
|
|
183
|
-
|
|
191
|
+
ctx2.emit("update:modelValue", "");
|
|
184
192
|
data.value = "";
|
|
185
193
|
}
|
|
186
194
|
};
|
|
195
|
+
const handleClearItem = (e, item) => {
|
|
196
|
+
e.preventDefault();
|
|
197
|
+
e.stopPropagation();
|
|
198
|
+
if (props.multiple) {
|
|
199
|
+
data.value.splice(data.value.indexOf(item), 1);
|
|
200
|
+
ctx2.emit("update:modelValue", data.value);
|
|
201
|
+
} else {
|
|
202
|
+
ctx2.emit("update:modelValue", []);
|
|
203
|
+
data.value = [];
|
|
204
|
+
}
|
|
205
|
+
};
|
|
187
206
|
return {
|
|
188
207
|
isClearable,
|
|
189
|
-
|
|
208
|
+
handleClearAll,
|
|
209
|
+
handleClearItem
|
|
190
210
|
};
|
|
191
211
|
}
|
|
192
212
|
var IconOpen = "data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNnB4IgogIGhlaWdodD0iMTZweCIKICB2aWV3Qm94PSIwIDAgMTYgMTYiCiAgdmVyc2lvbj0iMS4xIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICBjbGFzcz0ic3ZnLWljb24gc3ZnLWljb24tY2xvc2UiCj4KICA8ZyBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICA8cmVjdCB4PSIwLjUiIHk9IjAuNSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiByeD0iMiIgc3Ryb2tlPSIjNWU3Y2UwIj48L3JlY3Q+CiAgICA8cmVjdCB4PSI0IiB5PSI3IiB3aWR0aD0iOCIgaGVpZ2h0PSIyIiBmaWxsPSIjNWU3Y2UwIj48L3JlY3Q+CiAgPC9nPgo8L3N2Zz4=";
|
|
@@ -265,7 +285,7 @@ var Checkbox = defineComponent({
|
|
|
265
285
|
name: "DCheckbox",
|
|
266
286
|
props: checkboxProps,
|
|
267
287
|
emits: ["change", "update:checked", "update:modelValue"],
|
|
268
|
-
setup(props,
|
|
288
|
+
setup(props, ctx2) {
|
|
269
289
|
const checkboxGroupConf = inject(checkboxGroupInjectionKey, null);
|
|
270
290
|
const isChecked = computed(() => props.checked || props.modelValue);
|
|
271
291
|
const mergedDisabled = computed(() => {
|
|
@@ -307,9 +327,9 @@ var Checkbox = defineComponent({
|
|
|
307
327
|
const toggle = () => {
|
|
308
328
|
const current = !isChecked.value;
|
|
309
329
|
checkboxGroupConf == null ? void 0 : checkboxGroupConf.toggleGroupVal(props.value);
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
330
|
+
ctx2.emit("update:checked", current);
|
|
331
|
+
ctx2.emit("update:modelValue", current);
|
|
332
|
+
ctx2.emit("change", current);
|
|
313
333
|
};
|
|
314
334
|
const handleClick = () => {
|
|
315
335
|
canChange(!isChecked.value, props.label).then((res) => res && toggle());
|
|
@@ -412,18 +432,77 @@ var Checkbox = defineComponent({
|
|
|
412
432
|
}, null)])])]), label || ((_a = $slots.default) == null ? void 0 : _a.call($slots))])])]);
|
|
413
433
|
}
|
|
414
434
|
});
|
|
435
|
+
const inBrowser = typeof window !== "undefined";
|
|
436
|
+
function on(element, eventName, handler) {
|
|
437
|
+
if (document.addEventListener) {
|
|
438
|
+
if (element && eventName && handler) {
|
|
439
|
+
element.addEventListener(eventName, handler, false);
|
|
440
|
+
}
|
|
441
|
+
} else {
|
|
442
|
+
if (element && eventName && handler) {
|
|
443
|
+
element.attachEvent("on" + eventName, handler);
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
const ctx = Symbol("@@clickoutside");
|
|
448
|
+
const nodeList = /* @__PURE__ */ new Map();
|
|
449
|
+
let startClick;
|
|
450
|
+
let nid = 0;
|
|
451
|
+
let isFirst = true;
|
|
452
|
+
function createDocumentHandler(el, binding, vnode) {
|
|
453
|
+
if (inBrowser && isFirst) {
|
|
454
|
+
isFirst = false;
|
|
455
|
+
on(document, "mousedown", (e) => {
|
|
456
|
+
startClick = e;
|
|
457
|
+
});
|
|
458
|
+
on(document, "mouseup", (e) => {
|
|
459
|
+
for (const [id, node] of nodeList) {
|
|
460
|
+
node[ctx].documentHandler(e, startClick);
|
|
461
|
+
}
|
|
462
|
+
});
|
|
463
|
+
}
|
|
464
|
+
return function(mouseup, mousedown) {
|
|
465
|
+
if (!vnode || !binding.instance || !mouseup.target || !mousedown.target || el.contains(mouseup.target) || el.contains(mousedown.target) || el === mouseup.target) {
|
|
466
|
+
return;
|
|
467
|
+
}
|
|
468
|
+
el[ctx].bindingFn && el[ctx].bindingFn();
|
|
469
|
+
};
|
|
470
|
+
}
|
|
471
|
+
const clickoutsideDirective = {
|
|
472
|
+
beforeMount: function(el, binding, vnode) {
|
|
473
|
+
nid++;
|
|
474
|
+
nodeList.set(nid, el);
|
|
475
|
+
el[ctx] = {
|
|
476
|
+
nid,
|
|
477
|
+
documentHandler: createDocumentHandler(el, binding, vnode),
|
|
478
|
+
bindingFn: binding.value
|
|
479
|
+
};
|
|
480
|
+
},
|
|
481
|
+
updated: function(el, binding, vnode) {
|
|
482
|
+
el[ctx].documentHandler = createDocumentHandler(el, binding, vnode);
|
|
483
|
+
el[ctx].bindingFn = binding.value;
|
|
484
|
+
},
|
|
485
|
+
unmounted: function(el) {
|
|
486
|
+
nodeList.delete(el[ctx].nid);
|
|
487
|
+
delete el[ctx];
|
|
488
|
+
}
|
|
489
|
+
};
|
|
415
490
|
var TreeSelect = defineComponent({
|
|
416
491
|
name: "DTreeSelect",
|
|
492
|
+
directives: {
|
|
493
|
+
ClickOutside: clickoutsideDirective
|
|
494
|
+
},
|
|
417
495
|
props: treeSelectProps,
|
|
418
496
|
emits: ["toggleChange", "valueChange", "update:modelValue"],
|
|
419
|
-
setup(props,
|
|
497
|
+
setup(props, ctx2) {
|
|
420
498
|
const {
|
|
421
499
|
treeData,
|
|
422
500
|
placeholder,
|
|
423
501
|
disabled,
|
|
424
502
|
multiple,
|
|
425
|
-
leafOnly
|
|
426
|
-
|
|
503
|
+
leafOnly,
|
|
504
|
+
enableLabelization
|
|
505
|
+
} = toRefs(props);
|
|
427
506
|
const {
|
|
428
507
|
visible,
|
|
429
508
|
selectToggle,
|
|
@@ -435,22 +514,30 @@ var TreeSelect = defineComponent({
|
|
|
435
514
|
} = useSelect(props);
|
|
436
515
|
const {
|
|
437
516
|
isClearable,
|
|
438
|
-
|
|
439
|
-
|
|
517
|
+
handleClearAll,
|
|
518
|
+
handleClearItem
|
|
519
|
+
} = useClear(props, ctx2, inputValue);
|
|
440
520
|
const clickNode = (item) => {
|
|
441
|
-
if (!leafOnly) {
|
|
521
|
+
if (!leafOnly.value) {
|
|
442
522
|
selectValue(item);
|
|
443
|
-
!multiple && selectToggle(item);
|
|
523
|
+
!multiple.value && selectToggle(item);
|
|
444
524
|
} else {
|
|
445
525
|
if (!item.children) {
|
|
446
526
|
selectValue(item);
|
|
447
|
-
!multiple && selectToggle(item);
|
|
527
|
+
!multiple.value && selectToggle(item);
|
|
448
528
|
}
|
|
449
529
|
}
|
|
450
530
|
};
|
|
531
|
+
const deleteNode = (e, item) => {
|
|
532
|
+
handleClearItem(e, item);
|
|
533
|
+
selectValue(nodeMap.get(item));
|
|
534
|
+
};
|
|
451
535
|
const treeSelectCls = className("devui-tree-select", {
|
|
452
536
|
"devui-tree-select-open": visible.value,
|
|
453
|
-
"devui-tree-select-disabled": disabled
|
|
537
|
+
"devui-tree-select-disabled": disabled.value
|
|
538
|
+
});
|
|
539
|
+
const treeSelectInputItem = className("devui-tree-select-value", {
|
|
540
|
+
"devui-tree-select-value-enableLabelization": enableLabelization.value
|
|
454
541
|
});
|
|
455
542
|
const renderNode = (item) => createVNode("div", {
|
|
456
543
|
"class": "devui-tree-select-item",
|
|
@@ -464,7 +551,9 @@ var TreeSelect = defineComponent({
|
|
|
464
551
|
}, null) : createVNode(IconClose, {
|
|
465
552
|
"class": "mr-xs",
|
|
466
553
|
"onClick": (e) => treeToggle(e, item)
|
|
467
|
-
}, null) : createVNode("span", null, ["\xA0\xA0\xA0"]),
|
|
554
|
+
}, null) : createVNode("span", null, ["\xA0\xA0\xA0"]), ctx2.slots.default ? ctx2.slots.default({
|
|
555
|
+
item
|
|
556
|
+
}) : multiple.value ? item.halfchecked ? createVNode(Checkbox, {
|
|
468
557
|
"label": item.label,
|
|
469
558
|
"halfchecked": item.halfchecked
|
|
470
559
|
}, null) : createVNode(Checkbox, {
|
|
@@ -480,20 +569,26 @@ var TreeSelect = defineComponent({
|
|
|
480
569
|
});
|
|
481
570
|
};
|
|
482
571
|
return () => {
|
|
483
|
-
return createVNode("div", {
|
|
572
|
+
return withDirectives(createVNode("div", {
|
|
484
573
|
"class": treeSelectCls
|
|
485
574
|
}, [createVNode("div", {
|
|
486
575
|
"class": isClearable.value ? "devui-tree-select-clearable" : "devui-tree-select-notclearable",
|
|
487
576
|
"onClick": () => selectToggle()
|
|
488
|
-
}, [createVNode("
|
|
489
|
-
"value": inputValue.value,
|
|
490
|
-
"type": "text",
|
|
577
|
+
}, [createVNode("div", {
|
|
491
578
|
"class": "devui-tree-select-input",
|
|
492
|
-
"placeholder": placeholder
|
|
493
|
-
|
|
494
|
-
"
|
|
495
|
-
},
|
|
496
|
-
"
|
|
579
|
+
"placeholder": placeholder.value
|
|
580
|
+
}, [multiple.value ? inputValue.value.map((item) => createVNode("div", {
|
|
581
|
+
"class": treeSelectInputItem
|
|
582
|
+
}, [item, enableLabelization.value ? createVNode(resolveComponent("d-icon"), {
|
|
583
|
+
"name": "close",
|
|
584
|
+
"onClick": (e) => deleteNode(e, item)
|
|
585
|
+
}, null) : createVNode("span", null, [createTextVNode(",")])])) : !Array.isArray(inputValue.value) && createVNode("div", {
|
|
586
|
+
"class": treeSelectInputItem
|
|
587
|
+
}, [inputValue.value, enableLabelization.value && createVNode(resolveComponent("d-icon"), {
|
|
588
|
+
"name": "close",
|
|
589
|
+
"onClick": (e) => handleClearItem(e)
|
|
590
|
+
}, null)])]), createVNode("span", {
|
|
591
|
+
"onClick": (e) => handleClearAll(e),
|
|
497
592
|
"class": "devui-tree-select-clear"
|
|
498
593
|
}, [createVNode(resolveComponent("d-icon"), {
|
|
499
594
|
"name": "close"
|
|
@@ -509,8 +604,8 @@ var TreeSelect = defineComponent({
|
|
|
509
604
|
"class": "devui-tree-select-dropdown"
|
|
510
605
|
}, [createVNode("ul", {
|
|
511
606
|
"class": "devui-tree-select-dropdown-list"
|
|
512
|
-
}, [renderTree(attributeExtension(treeData))])]), [[vShow, visible.value]])]
|
|
513
|
-
})]);
|
|
607
|
+
}, [renderTree(attributeExtension(treeData.value))])]), [[vShow, visible.value]])]
|
|
608
|
+
})]), [[resolveDirective("click-outside"), () => visible.value = false]]);
|
|
514
609
|
};
|
|
515
610
|
}
|
|
516
611
|
});
|
package/tree-select/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var J=Object.defineProperty,Y=Object.defineProperties;var Q=Object.getOwnPropertyDescriptors;var B=Object.getOwnPropertySymbols;var $=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var T=(i,e,f)=>e in i?J(i,e,{enumerable:!0,configurable:!0,writable:!0,value:f}):i[e]=f,M=(i,e)=>{for(var f in e||(e={}))$.call(e,f)&&T(i,f,e[f]);if(B)for(var f of B(e))G.call(e,f)&&T(i,f,e[f]);return i},j=(i,e)=>Y(i,Q(e));(function(i,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(i=typeof globalThis!="undefined"?globalThis:i||self,e(i.index={},i.Vue))})(this,function(i,e){"use strict";var f="";const A={modelValue:{type:[String,Number,Array],default:""},treeData:{type:Array,default:()=>[]},placeholder:{type:String,default:"\u8BF7\u9009\u62E9"},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},leafOnly:{type:Boolean,default:!1},searchable:{type:Boolean,default:!1},allowClear:{type:Boolean,default:!1},onToggleChange:{type:Function,default:void 0},onValueChange:{type:Function,default:void 0}};function D(t){return t.forEach(c=>{let l=1;c.level=l;const r=[];for(r.push(c);r.length!==0;){const s=r.shift();s.children&&s.children.forEach(o=>{o.level=l+1,o.parent=s,r.push(o)}),l+=1}}),t}function P(t,c){let l=t;return typeof c=="object"&&Object.keys(c).forEach(r=>{c[r]&&(l+=` ${r}`)}),l}function Z(t){const c=e.ref(!1);return{visible:c,selectToggle:()=>{t.disabled||(c.value=!c.value)},treeToggle:(s,o)=>{s.preventDefault(),s.stopPropagation(),o.opened=!o.opened}}}function L(t){const c=e.ref(""),l=new Set,r=a=>{t.multiple?(a.checked=!a.checked,a.halfchecked&&(a.halfchecked=!1),s(a),o(a),h(a),c.value=[...l].toString()):c.value=a.label},s=a=>{a.checked===!0?l.add(a.label):l.has(a.label)&&l.delete(a.label)},o=a=>{if(!a.parent)return;let u="";switch(a.parent.children.filter(I=>I.checked===!0).length){case 0:u="none";break;case a.parent.children.length:u="checked";break;default:u="halfchecked";break}u==="checked"?(a.parent.checked=!0,a.parent.halfchecked=!1):u==="halfchecked"?(a.parent.halfchecked=!0,a.parent.checked=!1):(a.parent.checked=!1,a.parent.halfchecked=!1),s(a.parent),o(a.parent)},h=a=>{!a.children||a.children.forEach(u=>{u.checked=a.checked,s(u),h(u)})};return{inputValue:c,selectValue:r}}function W(t,c,l){return{isClearable:e.computed(()=>!t.disabled&&t.allowClear&&l.value.length>0),handleClear:o=>{o.preventDefault(),o.stopPropagation(),t.multiple?c.emit("update:modelValue",[]):(c.emit("update:modelValue",""),l.value="")}}}var x="data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNnB4IgogIGhlaWdodD0iMTZweCIKICB2aWV3Qm94PSIwIDAgMTYgMTYiCiAgdmVyc2lvbj0iMS4xIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICBjbGFzcz0ic3ZnLWljb24gc3ZnLWljb24tY2xvc2UiCj4KICA8ZyBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICA8cmVjdCB4PSIwLjUiIHk9IjAuNSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiByeD0iMiIgc3Ryb2tlPSIjNWU3Y2UwIj48L3JlY3Q+CiAgICA8cmVjdCB4PSI0IiB5PSI3IiB3aWR0aD0iOCIgaGVpZ2h0PSIyIiBmaWxsPSIjNWU3Y2UwIj48L3JlY3Q+CiAgPC9nPgo8L3N2Zz4=",H="data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNnB4IgogIGhlaWdodD0iMTZweCIKICB2aWV3Qm94PSIwIDAgMTYgMTYiCiAgdmVyc2lvbj0iMS4xIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICBjbGFzcz0ic3ZnLWljb24iCj4KICA8ZyBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgIDxyZWN0IHg9IjAuNSIgeT0iMC41IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHJ4PSIyIiBzdHJva2U9IiMyNTJiM2EiPjwvcmVjdD4KICAgIDxwYXRoCiAgICAgIGZpbGw9IiMyNTJiM2EiCiAgICAgIGQ9Ik04Ljc1LDQgTDguNzUsNy4yNSBMMTIsNy4yNSBMMTIsOC43NSBMOC43NDksOC43NSBMOC43NSwxMiBMNy4yNSwxMiBMNy4yNDksOC43NSBMNCw4Ljc1IEw0LDcuMjUgTDcuMjUsNy4yNSBMNy4yNSw0IEw4Ljc1LDQgWiIKICAgID48L3BhdGg+CiAgPC9nPgo8L3N2Zz4K",X="";const z=j(M({},{name:{type:String,default:void 0},halfchecked:{type:Boolean,default:!1},isShowTitle:{type:Boolean,default:!0},title:{type:String},color:{type:String,default:void 0},showAnimation:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0}}),{halfchecked:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},value:{type:String},label:{type:String,default:void 0},title:{type:String,default:void 0},"onUpdate:checked":{type:Function,default:void 0},onChange:{type:Function,default:void 0},modelValue:{type:Boolean},"onUpdate:modelValue":{type:Function}}),U=Symbol("d-checkbox-group");var S=e.defineComponent({name:"DCheckbox",props:z,emits:["change","update:checked","update:modelValue"],setup(t,c){const l=e.inject(U,null),r=e.computed(()=>t.checked||t.modelValue),s=e.computed(()=>(l==null?void 0:l.disabled.value)||t.disabled),o=e.computed(()=>{var d,y;return(y=(d=l==null?void 0:l.isItemChecked)==null?void 0:d.call(l,t.value))!=null?y:r.value}),h=e.computed(()=>{var d;return(d=l==null?void 0:l.isShowTitle.value)!=null?d:t.isShowTitle}),a=e.computed(()=>{var d;return(d=l==null?void 0:l.showAnimation.value)!=null?d:t.showAnimation}),u=e.computed(()=>{var d;return(d=l==null?void 0:l.color.value)!=null?d:t.color}),b=l==null?void 0:l.itemWidth.value,I=l==null?void 0:l.direction.value,k=(d,y)=>{var v;if(s.value)return Promise.resolve(!1);const C=(v=t.beforeChange)!=null?v:l==null?void 0:l.beforeChange;if(C){const n=C(d,y);return typeof n=="boolean"?Promise.resolve(n):n}return Promise.resolve(!0)},g=()=>{const d=!r.value;l==null||l.toggleGroupVal(t.value),c.emit("update:checked",d),c.emit("update:modelValue",d),c.emit("change",d)};return{itemWidth:b,direction:I,mergedColor:u,mergedDisabled:s,mergedIsShowTitle:h,mergedChecked:o,mergedShowAnimation:a,handleClick:()=>{k(!r.value,t.label).then(d=>d&&g())}}},render(){var V;const{itemWidth:t,direction:c,mergedChecked:l,mergedDisabled:r,mergedIsShowTitle:s,mergedShowAnimation:o,halfchecked:h,title:a,label:u,handleClick:b,name:I,value:k,mergedColor:g,$slots:m}=this,d={"devui-checkbox-column-margin":c==="column","devui-checkbox-wrap":typeof t!="undefined"},y=t?[`width: ${t}px`]:[],C={"devui-checkbox":!0,active:l,halfchecked:h,disabled:r,unchecked:!l},v=s?a||u:"",n=g&&h||g?`linear-gradient(${g}, ${g})`:"",p=[`border-color:${(l||h)&&g?g:""}`,`background-image:${n}`,`background-color:${g&&h?g:""}`],K={"devui-checkbox-material":!0,"custom-color":g,"devui-checkbox-no-label":!u&&!m.default,"devui-no-animation":!o,"devui-checkbox-default-background":!h},O={"devui-tick":!0,"devui-no-animation":!o},w=F=>F.stopPropagation(),R={indeterminate:h};return e.createVNode("div",{class:d,style:y},[e.createVNode("div",{class:C},[e.createVNode("label",{title:v,onClick:b},[e.createVNode("input",e.mergeProps({name:I||k,class:"devui-checkbox-input",type:"checkbox"},R,{checked:l,disabled:r,onClick:w,onChange:w}),null),e.createVNode("span",{style:p,class:K},[e.createVNode("span",{class:"devui-checkbox-halfchecked-bg"},null),e.createVNode("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:"devui-checkbox-tick"},[e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("polygon",{"fill-rule":"nonzero",points:"5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",class:O},null)])])]),u||((V=m.default)==null?void 0:V.call(m))])])])}}),N=e.defineComponent({name:"DTreeSelect",props:A,emits:["toggleChange","valueChange","update:modelValue"],setup(t,c){const{treeData:l,placeholder:r,disabled:s,multiple:o,leafOnly:h}=t,{visible:a,selectToggle:u,treeToggle:b}=Z(t),{inputValue:I,selectValue:k}=L(t),{isClearable:g,handleClear:m}=W(t,c,I),d=n=>{h&&n.children||(k(n),!o&&u(n))},y=P("devui-tree-select",{"devui-tree-select-open":a.value,"devui-tree-select-disabled":s}),C=n=>e.createVNode("div",{class:"devui-tree-select-item",style:{paddingLeft:`${20*(n.level-1)}px`},onClick:()=>d(n)},[n.children?n.opened?e.createVNode(x,{class:"mr-xs",onClick:p=>b(p,n)},null):e.createVNode(H,{class:"mr-xs",onClick:p=>b(p,n)},null):e.createVNode("span",null,["\xA0\xA0\xA0"]),o?n.halfchecked?e.createVNode(S,{label:n.label,halfchecked:n.halfchecked},null):e.createVNode(S,{label:n.label,checked:n.checked},null):n.label]),v=n=>n.map(p=>p.children?e.createVNode(e.Fragment,null,[C(p),p.opened&&v(p.children)]):C(p));return()=>e.createVNode("div",{class:y},[e.createVNode("div",{class:g.value?"devui-tree-select-clearable":"devui-tree-select-notclearable",onClick:()=>u()},[e.createVNode("input",{value:I.value,type:"text",class:"devui-tree-select-input",placeholder:r,readonly:!0,disabled:s},null),e.createVNode("span",{onClick:n=>m(n),class:"devui-tree-select-clear"},[e.createVNode(e.resolveComponent("d-icon"),{name:"close"},null)]),e.createVNode("span",{class:"devui-tree-select-arrow"},[e.createVNode(e.resolveComponent("d-icon"),{name:"select-arrow"},null)])]),e.createVNode(e.Transition,{name:"fade",ref:"dropdownRef"},{default:()=>[e.withDirectives(e.createVNode("div",{class:"devui-tree-select-dropdown"},[e.createVNode("ul",{class:"devui-tree-select-dropdown-list"},[v(D(l))])]),[[e.vShow,a.value]])]})])}});N.install=function(t){t.component(N.name,N)};var E={title:"TreeSelect \u6811\u5F62\u9009\u62E9\u6846",category:"\u6570\u636E\u5F55\u5165",status:"20%",install(t){t.use(N)}};i.TreeSelect=N,i.default=E,Object.defineProperty(i,"__esModule",{value:!0}),i[Symbol.toStringTag]="Module"});
|
|
1
|
+
var te=Object.defineProperty,ae=Object.defineProperties;var ne=Object.getOwnPropertyDescriptors;var U=Object.getOwnPropertySymbols;var ce=Object.prototype.hasOwnProperty,oe=Object.prototype.propertyIsEnumerable;var x=(s,e,p)=>e in s?te(s,e,{enumerable:!0,configurable:!0,writable:!0,value:p}):s[e]=p,E=(s,e)=>{for(var p in e||(e={}))ce.call(e,p)&&x(s,p,e[p]);if(U)for(var p of U(e))oe.call(e,p)&&x(s,p,e[p]);return s},F=(s,e)=>ae(s,ne(e));(function(s,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(s=typeof globalThis!="undefined"?globalThis:s||self,e(s.index={},s.Vue))})(this,function(s,e){"use strict";var p="";const O={modelValue:{type:[String,Number,Array],default:""},treeData:{type:Array,default:()=>[]},placeholder:{type:String,default:"\u8BF7\u9009\u62E9"},disabled:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},leafOnly:{type:Boolean,default:!1},searchable:{type:Boolean,default:!1},allowClear:{type:Boolean,default:!1},enableLabelization:{type:Boolean,default:!1},onToggleChange:{type:Function,default:void 0},onValueChange:{type:Function,default:void 0}},T=new Map;function R(t){return t.forEach(a=>{let l=1;a.level=l,T.set(a.label,a);const o=[];for(o.push(a);o.length!==0;){const r=o.shift();r.children&&r.children.forEach(d=>{d.level=l+1,d.parent=r,T.set(d.label,d),o.push(d)}),l+=1}}),t}function P(t,a){let l=t;return typeof a=="object"&&Object.keys(a).forEach(o=>{a[o]&&(l+=` ${o}`)}),l}function K(t){const a=e.ref(!1);return{visible:a,selectToggle:()=>{t.disabled||(a.value=!a.value)},treeToggle:(r,d)=>{r.preventDefault(),r.stopPropagation(),d.opened=!d.opened}}}function J(t){const a=e.ref([]),l=new Set,o=n=>{t.multiple?(n.checked=!n.checked,n.halfchecked&&(n.halfchecked=!1),r(n),d(n),u(n),a.value=[...l]):a.value=n.label},r=n=>{n.checked===!0?l.add(n.label):l.has(n.label)&&l.delete(n.label)},d=n=>{if(!n.parent)return;let g="";switch(n.parent.children.filter(y=>y.checked===!0).length){case 0:g="none";break;case n.parent.children.length:g="checked";break;default:g="halfchecked";break}g==="checked"?(n.parent.checked=!0,n.parent.halfchecked=!1):g==="halfchecked"?(n.parent.halfchecked=!0,n.parent.checked=!1):(n.parent.checked=!1,n.parent.halfchecked=!1),r(n.parent),d(n.parent)},u=n=>{!n.children||n.children.forEach(g=>{g.checked=n.checked,r(g),u(g)})};return{inputValue:a,selectValue:o}}function Y(t,a,l){return{isClearable:e.computed(()=>!t.disabled&&t.allowClear),handleClearAll:u=>{u.preventDefault(),u.stopPropagation(),t.multiple?(a.emit("update:modelValue",[]),l.value=[]):(a.emit("update:modelValue",""),l.value="")},handleClearItem:(u,n)=>{u.preventDefault(),u.stopPropagation(),t.multiple?(l.value.splice(l.value.indexOf(n),1),a.emit("update:modelValue",l.value)):(a.emit("update:modelValue",[]),l.value=[])}}}var Q="data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNnB4IgogIGhlaWdodD0iMTZweCIKICB2aWV3Qm94PSIwIDAgMTYgMTYiCiAgdmVyc2lvbj0iMS4xIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICBjbGFzcz0ic3ZnLWljb24gc3ZnLWljb24tY2xvc2UiCj4KICA8ZyBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICA8cmVjdCB4PSIwLjUiIHk9IjAuNSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiByeD0iMiIgc3Ryb2tlPSIjNWU3Y2UwIj48L3JlY3Q+CiAgICA8cmVjdCB4PSI0IiB5PSI3IiB3aWR0aD0iOCIgaGVpZ2h0PSIyIiBmaWxsPSIjNWU3Y2UwIj48L3JlY3Q+CiAgPC9nPgo8L3N2Zz4=",$="data:image/svg+xml;base64,PHN2ZwogIHdpZHRoPSIxNnB4IgogIGhlaWdodD0iMTZweCIKICB2aWV3Qm94PSIwIDAgMTYgMTYiCiAgdmVyc2lvbj0iMS4xIgogIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICBjbGFzcz0ic3ZnLWljb24iCj4KICA8ZyBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgIDxyZWN0IHg9IjAuNSIgeT0iMC41IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHJ4PSIyIiBzdHJva2U9IiMyNTJiM2EiPjwvcmVjdD4KICAgIDxwYXRoCiAgICAgIGZpbGw9IiMyNTJiM2EiCiAgICAgIGQ9Ik04Ljc1LDQgTDguNzUsNy4yNSBMMTIsNy4yNSBMMTIsOC43NSBMOC43NDksOC43NSBMOC43NSwxMiBMNy4yNSwxMiBMNy4yNDksOC43NSBMNCw4Ljc1IEw0LDcuMjUgTDcuMjUsNy4yNSBMNy4yNSw0IEw4Ljc1LDQgWiIKICAgID48L3BhdGg+CiAgPC9nPgo8L3N2Zz4K",de="";const G=F(E({},{name:{type:String,default:void 0},halfchecked:{type:Boolean,default:!1},isShowTitle:{type:Boolean,default:!0},title:{type:String},color:{type:String,default:void 0},showAnimation:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},beforeChange:{type:Function,default:void 0}}),{halfchecked:{type:Boolean,default:!1},checked:{type:Boolean,default:!1},value:{type:String},label:{type:String,default:void 0},title:{type:String,default:void 0},"onUpdate:checked":{type:Function,default:void 0},onChange:{type:Function,default:void 0},modelValue:{type:Boolean},"onUpdate:modelValue":{type:Function}}),X=Symbol("d-checkbox-group");var j=e.defineComponent({name:"DCheckbox",props:G,emits:["change","update:checked","update:modelValue"],setup(t,a){const l=e.inject(X,null),o=e.computed(()=>t.checked||t.modelValue),r=e.computed(()=>(l==null?void 0:l.disabled.value)||t.disabled),d=e.computed(()=>{var i,I;return(I=(i=l==null?void 0:l.isItemChecked)==null?void 0:i.call(l,t.value))!=null?I:o.value}),u=e.computed(()=>{var i;return(i=l==null?void 0:l.isShowTitle.value)!=null?i:t.isShowTitle}),n=e.computed(()=>{var i;return(i=l==null?void 0:l.showAnimation.value)!=null?i:t.showAnimation}),g=e.computed(()=>{var i;return(i=l==null?void 0:l.color.value)!=null?i:t.color}),v=l==null?void 0:l.itemWidth.value,y=l==null?void 0:l.direction.value,m=(i,I)=>{var S;if(r.value)return Promise.resolve(!1);const N=(S=t.beforeChange)!=null?S:l==null?void 0:l.beforeChange;if(N){const k=N(i,I);return typeof k=="boolean"?Promise.resolve(k):k}return Promise.resolve(!0)},f=()=>{const i=!o.value;l==null||l.toggleGroupVal(t.value),a.emit("update:checked",i),a.emit("update:modelValue",i),a.emit("change",i)};return{itemWidth:v,direction:y,mergedColor:g,mergedDisabled:r,mergedIsShowTitle:u,mergedChecked:d,mergedShowAnimation:n,handleClick:()=>{m(!o.value,t.label).then(i=>i&&f())}}},render(){var z;const{itemWidth:t,direction:a,mergedChecked:l,mergedDisabled:o,mergedIsShowTitle:r,mergedShowAnimation:d,halfchecked:u,title:n,label:g,handleClick:v,name:y,value:m,mergedColor:f,$slots:C}=this,i={"devui-checkbox-column-margin":a==="column","devui-checkbox-wrap":typeof t!="undefined"},I=t?[`width: ${t}px`]:[],N={"devui-checkbox":!0,active:l,halfchecked:u,disabled:o,unchecked:!l},S=r?n||g:"",k=f&&u||f?`linear-gradient(${f}, ${f})`:"",V=[`border-color:${(l||u)&&f?f:""}`,`background-image:${k}`,`background-color:${f&&u?f:""}`],B={"devui-checkbox-material":!0,"custom-color":f,"devui-checkbox-no-label":!g&&!C.default,"devui-no-animation":!d,"devui-checkbox-default-background":!u},M={"devui-tick":!0,"devui-no-animation":!d},c=le=>le.stopPropagation(),h={indeterminate:u};return e.createVNode("div",{class:i,style:I},[e.createVNode("div",{class:N},[e.createVNode("label",{title:S,onClick:v},[e.createVNode("input",e.mergeProps({name:y||m,class:"devui-checkbox-input",type:"checkbox"},h,{checked:l,disabled:o,onClick:c,onChange:c}),null),e.createVNode("span",{style:V,class:B},[e.createVNode("span",{class:"devui-checkbox-halfchecked-bg"},null),e.createVNode("svg",{viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:"devui-checkbox-tick"},[e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("polygon",{"fill-rule":"nonzero",points:"5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",class:M},null)])])]),g||((z=C.default)==null?void 0:z.call(C))])])])}});const _=typeof window!="undefined";function Z(t,a,l){document.addEventListener?t&&a&&l&&t.addEventListener(a,l,!1):t&&a&&l&&t.attachEvent("on"+a,l)}const b=Symbol("@@clickoutside"),A=new Map;let L,D=0,H=!0;function W(t,a,l){return _&&H&&(H=!1,Z(document,"mousedown",o=>{L=o}),Z(document,"mouseup",o=>{for(const[r,d]of A)d[b].documentHandler(o,L)})),function(o,r){!l||!a.instance||!o.target||!r.target||t.contains(o.target)||t.contains(r.target)||t===o.target||t[b].bindingFn&&t[b].bindingFn()}}const q={beforeMount:function(t,a,l){D++,A.set(D,t),t[b]={nid:D,documentHandler:W(t,a,l),bindingFn:a.value}},updated:function(t,a,l){t[b].documentHandler=W(t,a,l),t[b].bindingFn=a.value},unmounted:function(t){A.delete(t[b].nid),delete t[b]}};var w=e.defineComponent({name:"DTreeSelect",directives:{ClickOutside:q},props:O,emits:["toggleChange","valueChange","update:modelValue"],setup(t,a){const{treeData:l,placeholder:o,disabled:r,multiple:d,leafOnly:u,enableLabelization:n}=e.toRefs(t),{visible:g,selectToggle:v,treeToggle:y}=K(t),{inputValue:m,selectValue:f}=J(t),{isClearable:C,handleClearAll:i,handleClearItem:I}=Y(t,a,m),N=c=>{u.value&&c.children||(f(c),!d.value&&v(c))},S=(c,h)=>{I(c,h),f(T.get(h))},k=P("devui-tree-select",{"devui-tree-select-open":g.value,"devui-tree-select-disabled":r.value}),V=P("devui-tree-select-value",{"devui-tree-select-value-enableLabelization":n.value}),B=c=>e.createVNode("div",{class:"devui-tree-select-item",style:{paddingLeft:`${20*(c.level-1)}px`},onClick:()=>N(c)},[c.children?c.opened?e.createVNode(Q,{class:"mr-xs",onClick:h=>y(h,c)},null):e.createVNode($,{class:"mr-xs",onClick:h=>y(h,c)},null):e.createVNode("span",null,["\xA0\xA0\xA0"]),a.slots.default?a.slots.default({item:c}):d.value?c.halfchecked?e.createVNode(j,{label:c.label,halfchecked:c.halfchecked},null):e.createVNode(j,{label:c.label,checked:c.checked},null):c.label]),M=c=>c.map(h=>h.children?e.createVNode(e.Fragment,null,[B(h),h.opened&&M(h.children)]):B(h));return()=>e.withDirectives(e.createVNode("div",{class:k},[e.createVNode("div",{class:C.value?"devui-tree-select-clearable":"devui-tree-select-notclearable",onClick:()=>v()},[e.createVNode("div",{class:"devui-tree-select-input",placeholder:o.value},[d.value?m.value.map(c=>e.createVNode("div",{class:V},[c,n.value?e.createVNode(e.resolveComponent("d-icon"),{name:"close",onClick:h=>S(h,c)},null):e.createVNode("span",null,[e.createTextVNode(",")])])):!Array.isArray(m.value)&&e.createVNode("div",{class:V},[m.value,n.value&&e.createVNode(e.resolveComponent("d-icon"),{name:"close",onClick:c=>I(c)},null)])]),e.createVNode("span",{onClick:c=>i(c),class:"devui-tree-select-clear"},[e.createVNode(e.resolveComponent("d-icon"),{name:"close"},null)]),e.createVNode("span",{class:"devui-tree-select-arrow"},[e.createVNode(e.resolveComponent("d-icon"),{name:"select-arrow"},null)])]),e.createVNode(e.Transition,{name:"fade",ref:"dropdownRef"},{default:()=>[e.withDirectives(e.createVNode("div",{class:"devui-tree-select-dropdown"},[e.createVNode("ul",{class:"devui-tree-select-dropdown-list"},[M(R(l.value))])]),[[e.vShow,g.value]])]})]),[[e.resolveDirective("click-outside"),()=>g.value=!1]])}});w.install=function(t){t.component(w.name,w)};var ee={title:"TreeSelect \u6811\u5F62\u9009\u62E9\u6846",category:"\u6570\u636E\u5F55\u5165",status:"20%",install(t){t.use(w)}};s.TreeSelect=w,s.default=ee,Object.defineProperty(s,"__esModule",{value:!0}),s[Symbol.toStringTag]="Module"});
|
package/tree-select/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.devui-tree-select{position:relative;width:100%}.devui-tree-select-disabled
|
|
1
|
+
.devui-tree-select{position:relative;width:100%}.devui-tree-select-disabled,.devui-tree-select-disabled .devui-tree-select-input{cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);border-color:var(--devui-disabled-line, #dfe1e6);color:var(--devui-disabled-text, #adb0b8)}.devui-tree-select-disabled .devui-tree-select-arrow{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-tree-select-open .devui-tree-select-arrow{transform:rotate(180deg)}.devui-tree-select-input{cursor:pointer;width:100%;height:28px;padding:0 10px;color:var(--devui-text, #252b3a);border:1px solid var(--devui-form-control-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);outline:none;background-color:var(--devui-base-bg, #ffffff);overflow:auto}.devui-tree-select-input:empty:before{color:#d3d3d3;content:attr(placeholder);vertical-align:middle}.devui-tree-select-value{display:inline-block;height:80%;vertical-align:middle}.devui-tree-select-value-enableLabelization{padding:0 10px;margin:2px 10px 2px 0;background-color:var(--devui-icon-fill, #d3d5d9)}.devui-tree-select-dropdown{border-radius:var(--devui-border-radius, 2px);background:var(--devui-base-bg, #ffffff);box-shadow:0 2px 5px 0 var(--devui-shadow, rgba(0, 0, 0, .2))}.devui-tree-select-dropdown-list{max-height:300px;overflow-y:auto;padding:0;margin:0}.devui-tree-select-item{font-size:16px;display:inline-flex;min-height:36px;line-height:1.5;width:100%;padding:10px;clear:both;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:0;color:var(--devui-text, #252b3a);cursor:pointer;align-items:center}.devui-tree-select-item:hover:not(.active):not(.disabled){color:var(--devui-list-item-hover-text, #526ecc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-tree-select-clearable{position:relative}.devui-tree-select-clearable:hover .devui-tree-select-clear{display:inline-flex}.devui-tree-select-clearable:hover .devui-tree-select-arrow{display:none}.devui-tree-select-notclearable{position:relative}.devui-tree-select-clear,.devui-tree-select-arrow{position:absolute;top:0;right:0;height:100%;width:28px;display:inline-flex;justify-content:center;align-items:center}.devui-tree-select-clear{display:none}.devui-tree-select-clear:hover{cursor:pointer;color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox{position:relative;display:flex;display:-ms-flexbox;align-items:center;-ms-flex-align:center;height:100%;margin:0}.devui-checkbox .devui-checkbox-tick{position:absolute}.devui-checkbox .devui-checkbox-tick .devui-tick{fill:var(--devui-light-text, #ffffff);stroke-dashoffset:50;opacity:0;transform:scale(0);transform-origin:50% 50%;transition:stroke-dashoffset .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out}.devui-checkbox.active:not(.halfchecked) .devui-tick{opacity:1;stroke-dashoffset:0;transform:scale(1);transition:stroke-dashoffset .3s cubic-bezier(.755,.05,.855,.06),opacity .2s cubic-bezier(.755,.05,.855,.06)}.devui-checkbox.active:not(.disabled) .devui-checkbox-material:not(.custom-color),.devui-checkbox.halfchecked:not(.disabled) .devui-checkbox-material:not(.custom-color){border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.active:not(.disabled) .devui-checkbox-material{background-size:100% 100%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material:not(.custom-color){background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material:not(.custom-color):hover{border-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox-material.custom-color{background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.halfchecked .devui-checkbox-material:not(.custom-color){background-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.halfchecked .devui-checkbox-material:not(.custom-color)>.devui-checkbox-halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox.halfchecked .devui-checkbox-material.custom-color>.devui-checkbox-halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox .devui-checkbox-material{text-align:initial;height:14px;width:14px;position:relative;user-select:none;border:1px solid var(--devui-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);background:linear-gradient(var(--devui-brand, #5e7ce0),var(--devui-brand, #5e7ce0)) no-repeat center/0%;margin-right:8px;vertical-align:text-bottom}.devui-checkbox .devui-checkbox-material.devui-checkbox-default-background{background-color:var(--devui-base-bg, #ffffff)}.devui-checkbox .devui-checkbox-material.devui-checkbox-no-label{margin-right:0}.devui-checkbox .devui-checkbox-material>.devui-checkbox-halfchecked-bg{display:inline-block;position:absolute;content:"";background-color:var(--devui-light-text, #ffffff);top:0;left:0;height:100%;width:100%;transform:scale(1);opacity:0}.devui-checkbox .devui-checkbox-material>svg{width:14px;height:14px}.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):focus,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover{background-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):focus,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover:active,.devui-checkbox:not(.disabled).halfchecked .devui-checkbox-material:not(.custom-color):hover:focus{background-color:var(--devui-brand-active-focus, #344899)}.devui-checkbox-input{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.devui-checkbox label{position:relative;font-weight:400;height:16px;line-height:16px;cursor:pointer;color:var(--devui-text, #252b3a);margin:0;display:block}.devui-checkbox label>span{display:inline-block;box-sizing:content-box;vertical-align:top}.devui-checkbox.disabled label{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-checkbox.disabled .devui-checkbox-material{border-color:var(--devui-icon-fill-active-disabled, #beccfa);background-color:var(--devui-icon-fill-active-disabled, #beccfa)}.devui-checkbox.disabled.unchecked .devui-checkbox-material{border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.halfchecked .devui-checkbox-material{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.halfchecked .devui-checkbox-material .devui-checkbox-halfchecked-bg{transform:scale(.4288);background-color:var(--devui-disabled-text, #adb0b8);opacity:1}.devui-checkbox.disabled.active svg polygon{fill:var(--devui-light-text, #ffffff)}.devui-no-animation{transition:none!important}.devui-checkbox-column-margin{height:28px;line-height:28px}.devui-checkbox-wrap .devui-checkbox label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|