vue-devui 1.0.0-rc.8 → 1.0.0-rc.9
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/alert/index.es.js +2 -2
- package/alert/index.umd.js +1 -1
- package/auto-complete/index.es.js +282 -84
- package/auto-complete/index.umd.js +3 -5
- package/auto-complete/style.css +1 -1
- package/avatar/index.es.js +59 -74
- package/avatar/index.umd.js +1 -1
- package/badge/index.es.js +2 -2
- package/badge/index.umd.js +1 -1
- package/button/index.es.js +111 -38
- package/button/index.umd.js +15 -15
- package/button/style.css +1 -1
- package/card/index.es.js +2 -2
- package/card/index.umd.js +1 -1
- package/checkbox/index.es.js +340 -228
- package/checkbox/index.umd.js +1 -1
- package/checkbox/style.css +1 -1
- package/date-picker/index.es.js +264 -63
- package/date-picker/index.umd.js +1 -1
- package/date-picker/style.css +1 -1
- package/drawer/index.es.js +2 -2
- package/drawer/index.umd.js +1 -1
- package/dropdown/index.es.js +104 -48
- package/dropdown/index.umd.js +1 -1
- package/dropdown/style.css +1 -1
- package/editable-select/index.es.js +423 -8
- package/editable-select/index.umd.js +1 -1
- package/editable-select/style.css +1 -1
- package/form/index.es.js +304 -184
- package/form/index.umd.js +15 -15
- package/form/style.css +1 -1
- package/fullscreen/index.es.js +2 -2
- package/fullscreen/index.umd.js +1 -1
- package/grid/index.es.js +8 -6
- package/grid/index.umd.js +1 -1
- package/icon/index.es.js +109 -13
- package/icon/index.umd.js +1 -1
- package/icon/style.css +1 -0
- package/image-preview/index.es.js +2 -2
- package/image-preview/index.umd.js +1 -1
- package/input/index.es.js +278 -30
- package/input/index.umd.js +1 -1
- package/input/style.css +1 -1
- package/input-number/index.es.js +272 -199
- package/input-number/index.umd.js +1 -1
- package/input-number/style.css +1 -1
- package/layout/index.es.js +2 -2
- package/layout/index.umd.js +1 -1
- package/loading/index.es.js +2 -2
- package/loading/index.umd.js +1 -1
- package/modal/index.es.js +105 -32
- package/modal/index.umd.js +1 -1
- package/modal/style.css +1 -1
- package/notification/index.es.js +105 -32
- package/notification/index.umd.js +1 -1
- package/notification/style.css +1 -1
- package/nuxt/components/CheckboxButton.js +3 -0
- package/nuxt/components/Icon.js +1 -0
- package/nuxt/components/LABEL_DATA.js +3 -0
- package/nuxt/components/Option.js +3 -0
- package/nuxt/components/iconProps.js +1 -0
- package/nuxt/components/svgIconProps.js +3 -0
- package/overlay/index.es.js +2 -2
- package/overlay/index.umd.js +1 -1
- package/package.json +2 -1
- package/pagination/index.es.js +2 -2
- package/pagination/index.umd.js +1 -1
- package/popover/index.es.js +153 -67
- package/popover/index.umd.js +15 -15
- package/popover/style.css +1 -1
- package/progress/index.es.js +2 -2
- package/progress/index.umd.js +2 -2
- package/radio/index.es.js +139 -143
- package/radio/index.umd.js +1 -1
- package/rate/index.es.js +16 -8
- package/rate/index.umd.js +1 -1
- package/result/index.es.js +108 -12
- package/result/index.umd.js +1 -1
- package/result/style.css +1 -1
- package/search/index.es.js +316 -60
- package/search/index.umd.js +16 -16
- package/search/style.css +1 -1
- package/select/index.es.js +7334 -574
- package/select/index.umd.js +27 -1
- package/select/style.css +1 -1
- package/skeleton/index.es.js +2 -2
- package/skeleton/index.umd.js +1 -1
- package/slider/index.es.js +2 -2
- package/slider/index.umd.js +1 -1
- package/splitter/index.es.js +178 -89
- package/splitter/index.umd.js +17 -17
- package/splitter/style.css +1 -1
- package/status/index.es.js +2 -2
- package/status/index.umd.js +1 -1
- package/style.css +1 -1
- package/switch/index.es.js +2 -2
- package/switch/index.umd.js +1 -1
- package/table/index.es.js +1301 -524
- package/table/index.umd.js +18 -18
- package/table/style.css +1 -1
- package/tabs/index.es.js +114 -72
- package/tabs/index.umd.js +1 -1
- package/tabs/style.css +1 -1
- package/tag/index.es.js +6 -7
- package/tag/index.umd.js +1 -1
- package/textarea/index.es.js +5545 -11
- package/textarea/index.umd.js +35 -1
- package/timeline/index.es.js +108 -12
- package/timeline/index.umd.js +1 -1
- package/timeline/style.css +1 -1
- package/tooltip/index.es.js +168 -79
- package/tooltip/index.umd.js +15 -15
- package/tooltip/style.css +1 -1
- package/tree/index.es.js +338 -227
- package/tree/index.umd.js +1 -1
- package/tree/style.css +1 -1
- package/upload/index.es.js +105 -32
- package/upload/index.umd.js +1 -1
- package/upload/style.css +1 -1
- package/vue-devui.es.js +3269 -1742
- package/vue-devui.umd.js +29 -23
- package/nuxt/components/FormControl.js +0 -3
- package/nuxt/components/FormLabel.js +0 -3
package/alert/index.es.js
CHANGED
|
@@ -26,8 +26,8 @@ function createBem(namespace, element, modifier) {
|
|
|
26
26
|
}
|
|
27
27
|
return cls;
|
|
28
28
|
}
|
|
29
|
-
function useNamespace(block) {
|
|
30
|
-
const namespace = `devui-${block}`;
|
|
29
|
+
function useNamespace(block, needDot = false) {
|
|
30
|
+
const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
|
|
31
31
|
const b = () => createBem(namespace);
|
|
32
32
|
const e = (element) => element ? createBem(namespace, element) : "";
|
|
33
33
|
const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
|
package/alert/index.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(o,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(o=typeof globalThis!="undefined"?globalThis:o||self,e(o.index={},o.Vue))})(this,function(o,e){"use strict";const p=()=>e.createVNode("svg",{width:"10px",height:"10px",viewBox:"0 0 10 10",version:"1.1",xmlns:"http://www.w3.org/2000/svg"},[e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("g",{transform:"translate(-3.000000, -3.000000)","fill-rule":"nonzero"},[e.createVNode("path",{d:"M11.6426,3.19816936 C11.9239974,2.91574512 12.4131626,2.93784891 12.7352108,3.24751057 C13.0571998,3.5572302 13.0901298,4.03723416 12.8087324,4.31965839 L9.14064666,7.99900183 L12.8087324,11.6803416 C13.0645482,11.9370909 13.0605893,12.3571292 12.8158402,12.6640749 L12.7352108,12.7524894 C12.4131626,13.0621511 11.9239974,13.0842548 11.6426,12.8018306 L8,9.14489021 L4.35740003,12.8018306 C4.10158422,13.05858 3.6740594,13.0636532 3.35648225,12.8298003 L3.26478919,12.7524894 C2.94280021,12.4427698 2.90987023,11.9627658 3.19126762,11.6803416 L6.8583349,7.99900183 L3.19126762,4.31965839 C2.93545181,4.06290908 2.93941068,3.64287076 3.18415975,3.3359251 L3.26478919,3.24751057 C3.58683735,2.93784891 4.07600264,2.91574512 4.35740003,3.19816936 L8,6.85411161 L11.6426,3.19816936 Z"},null)])])]);function d(t,r,n){let s=t;return r&&(s+=`__${r}`),n&&(s+=`--${n}`),s}function u(t,r=!1){const n=r?`.devui-${t}`:`devui-${t}`;return{b:()=>d(n),e:l=>l?d(n,l):"",m:l=>l?d(n,"",l):"",em:(l,i)=>l&&i?d(n,l,i):""}}const f=u("alert"),N=t=>e.createVNode("svg",{width:"16px",height:"16px",viewBox:"0 0 16 16",version:"1.1",xmlns:"http://www.w3.org/2000/svg",class:[f.e("icon"),t.type==="danger"?f.em("icon","error"):f.em("icon",t.type)]},[(()=>{switch(t.type){case"success":return e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("path",{"fill-rule":"nonzero",d:"M8,0 C3.6,0 0,3.6 0,8 C0,12.4 3.6,16 8,16 C12.4,16 16,12.4 16,8 C16,3.6 12.4,0 8,0 Z"},null),e.createVNode("polygon",{"stroke-width":"0.3","fill-rule":"nonzero",points:"6.82767602 11.5282799 3 7.24668779 3.89864233 6.37912367 6.82767602 9.04910002 12.2964408 4 13 4.64144383"},null)]);case"warning":return e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("path",{class:"warning-outer",d:"M8.96244623,0.57254229 L15.8714442,13.4101975 C16.1549662,13.9370117 15.9538562,14.5918482 15.4222523,14.8728158 C15.2642579,14.9563203 15.0879506,15 14.9088903,15 L1.09089441,15 C0.488410063,15 0,14.5159904 0,13.9189343 C0,13.7414873 0.0440768395,13.5667684 0.128340519,13.4101975 L7.03733844,0.57254229 C7.32086049,0.0457280838 7.98165058,-0.153569987 8.51325441,0.127397589 C8.70423071,0.228333932 8.8605922,0.383286648 8.96244623,0.57254229 Z"},null),e.createVNode("path",{class:"warning-inner","stroke-width":"0.3","fill-rule":"nonzero",d:"M8.87894737,13 L7.08947368,13 L7.08947368,11.2105263 L8.87894737,11.2105263 L8.87894737,13 Z M8.62102372,9.86842105 L7.32800539,9.86842105 L7,4.5 L8.96842105,4.5 L8.62102372,9.86842105 Z"},null)]);case"info":return e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("g",{"fill-rule":"nonzero"},[e.createVNode("path",{class:"info-outer",d:"M8,0 C3.6,0 0,3.6 0,8 C0,12.4 3.6,16 8,16 C12.4,16 16,12.4 16,8 C16,3.6 12.4,0 8,0 Z"},null),e.createVNode("path",{class:"info-inner",d:"M9.19008504,7 L8.79402696,13 L7.15622605,13 L6.73158434,7 L9.19008504,7 Z M9,3 L9,5 L7,5 L7,3 L9,3 Z","stroke-width":"0.2"},null)])]);case"danger":return e.createVNode("g",{stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"},[e.createVNode("g",{"fill-rule":"nonzero"},[e.createVNode("path",{class:"error-outer",d:"M8,0 C3.6,0 0,3.6 0,8 C0,12.4 3.6,16 8,16 C12.4,16 16,12.4 16,8 C16,3.6 12.4,0 8,0 Z"},null),e.createVNode("path",{class:"error-inner",d:"M9,10.6 L9,12.6 L7,12.6 L7,10.6 L9,10.6 Z M9.1,3.1 L8.65924344,9.1 L7.28422786,9.1 L6.9,3.1 L9.1,3.1 Z","stroke-width":"0.2"},null)])]);default:return null}})()]),w={type:{type:String,default:"info"},cssClass:{type:String,default:""},closeable:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},dismissTime:{type:Number,default:0}};var y="",L=e.defineComponent({name:"DAlert",props:w,emits:["close"],setup(t,r){const n=u("alert"),s=u("close"),h=e.ref(!1),a=e.ref(!1),C=e.ref();let l;const i=c=>{l&&clearTimeout(l),a.value=!0,r.emit("close",c)},V=()=>{l=void 0,h.value=!0,a.value=!1};return e.onMounted(()=>{t.dismissTime&&(l=window.setTimeout(()=>{i()},t.dismissTime))}),()=>h.value?null:e.createVNode(e.Transition,{name:n.b(),onAfterLeave:V},{default:()=>{var c,m;return[e.withDirectives(e.createVNode("div",{ref:C,class:[n.b(),n.m(t.type),t.cssClass,a.value&&n.m("close")]},[t.closeable?e.createVNode("div",{class:s.b(),onClick:i},[e.createVNode(p,null,null)]):null,t.showIcon!==!1&&t.type!=="simple"?e.createVNode("span",{class:n.e("icon-wrap")},[e.createVNode(N,{type:t.type},null)]):null,(m=(c=r.slots).default)==null?void 0:m.call(c)]),[[e.vShow,!a.value]])]}})}}),g={title:"Alert \u8B66\u544A",category:"\u53CD\u9988",status:"100%",install(t){t.component(L.name,L)}};o.Alert=L,o.alertProps=w,o.default=g,Object.defineProperty(o,"__esModule",{value:!0}),o[Symbol.toStringTag]="Module"});
|
|
@@ -18,7 +18,7 @@ var __publicField = (obj, key, value) => {
|
|
|
18
18
|
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
19
19
|
return value;
|
|
20
20
|
};
|
|
21
|
-
import { ref, nextTick, defineComponent, createVNode, h, render, inject, withDirectives, createTextVNode, resolveDirective, vShow, unref, watch, onUnmounted, mergeProps,
|
|
21
|
+
import { ref, nextTick, toRefs, computed, defineComponent, createVNode, h, render, inject, withDirectives, createTextVNode, resolveDirective, vShow, unref, watch, onUnmounted, mergeProps, resolveDynamicComponent, provide, Teleport, Transition, isVNode } from "vue";
|
|
22
22
|
import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
|
|
23
23
|
const defaultFormatter = (item) => {
|
|
24
24
|
if (typeof item === "string") {
|
|
@@ -115,6 +115,26 @@ const autoCompleteProps = {
|
|
|
115
115
|
loadMore: {
|
|
116
116
|
type: Function,
|
|
117
117
|
default: null
|
|
118
|
+
},
|
|
119
|
+
placeholder: {
|
|
120
|
+
type: String,
|
|
121
|
+
default: "Search"
|
|
122
|
+
},
|
|
123
|
+
prefix: {
|
|
124
|
+
type: String,
|
|
125
|
+
default: ""
|
|
126
|
+
},
|
|
127
|
+
suffix: {
|
|
128
|
+
type: String,
|
|
129
|
+
default: ""
|
|
130
|
+
},
|
|
131
|
+
size: {
|
|
132
|
+
type: String,
|
|
133
|
+
default: "md"
|
|
134
|
+
},
|
|
135
|
+
clearable: {
|
|
136
|
+
type: Boolean,
|
|
137
|
+
default: false
|
|
118
138
|
}
|
|
119
139
|
};
|
|
120
140
|
const DropdownPropsKey = Symbol("DropdownPropsKey");
|
|
@@ -239,6 +259,11 @@ function useInputHandle(ctx2, searchList, showNoResultItemTemplate, modelValue,
|
|
|
239
259
|
};
|
|
240
260
|
const onBlur = () => {
|
|
241
261
|
isFocus.value = false;
|
|
262
|
+
ctx2.emit("blur");
|
|
263
|
+
};
|
|
264
|
+
const onClear = () => {
|
|
265
|
+
ctx2.emit("update:modelValue", "");
|
|
266
|
+
ctx2.emit("clear");
|
|
242
267
|
};
|
|
243
268
|
const handleClose = () => {
|
|
244
269
|
visible.value = false;
|
|
@@ -263,6 +288,7 @@ function useInputHandle(ctx2, searchList, showNoResultItemTemplate, modelValue,
|
|
|
263
288
|
onInput,
|
|
264
289
|
onFocus,
|
|
265
290
|
onBlur,
|
|
291
|
+
onClear,
|
|
266
292
|
isFocus,
|
|
267
293
|
inputRef,
|
|
268
294
|
visible,
|
|
@@ -382,6 +408,69 @@ function useKeyBoardHandle(dropDownRef, visible, searchList, selectedIndex, sear
|
|
|
382
408
|
handlekeyDown
|
|
383
409
|
};
|
|
384
410
|
}
|
|
411
|
+
function createBem(namespace, element, modifier) {
|
|
412
|
+
let cls = namespace;
|
|
413
|
+
if (element) {
|
|
414
|
+
cls += `__${element}`;
|
|
415
|
+
}
|
|
416
|
+
if (modifier) {
|
|
417
|
+
cls += `--${modifier}`;
|
|
418
|
+
}
|
|
419
|
+
return cls;
|
|
420
|
+
}
|
|
421
|
+
function useNamespace(block, needDot = false) {
|
|
422
|
+
const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
|
|
423
|
+
const b = () => createBem(namespace);
|
|
424
|
+
const e = (element) => element ? createBem(namespace, element) : "";
|
|
425
|
+
const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
|
|
426
|
+
const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
|
|
427
|
+
return {
|
|
428
|
+
b,
|
|
429
|
+
e,
|
|
430
|
+
m,
|
|
431
|
+
em
|
|
432
|
+
};
|
|
433
|
+
}
|
|
434
|
+
function useAutoCompleteRender(props, ctx2, visible, isFocus) {
|
|
435
|
+
const ns = useNamespace("auto-complete");
|
|
436
|
+
const inputNs = useNamespace("auto-complete-input");
|
|
437
|
+
const slotNs = useNamespace("auto-complete-slot");
|
|
438
|
+
const formNs = useNamespace("form-group");
|
|
439
|
+
const feedbackNs = useNamespace("has-feedback");
|
|
440
|
+
const selectNs = useNamespace("select-open");
|
|
441
|
+
const formControlNs = useNamespace("form-control");
|
|
442
|
+
const dropdownNs = useNamespace("dropdown-origin");
|
|
443
|
+
const dropdownOpenNs = useNamespace("dropdown-origin-open");
|
|
444
|
+
const { disabled } = toRefs(props);
|
|
445
|
+
const slots = ctx2.slots;
|
|
446
|
+
const autoCompleteTopClasses = computed(() => ({
|
|
447
|
+
[ns.b()]: true,
|
|
448
|
+
[ns.m(props.size)]: true,
|
|
449
|
+
[formNs.b()]: true,
|
|
450
|
+
[feedbackNs.b()]: true,
|
|
451
|
+
[selectNs.b()]: visible.value
|
|
452
|
+
}));
|
|
453
|
+
const inputClasses = computed(() => ({
|
|
454
|
+
[inputNs.b()]: true,
|
|
455
|
+
[ns.m("focus")]: isFocus.value,
|
|
456
|
+
[slotNs.b()]: slots.prepend || slots.append || props.prefix || props.suffix,
|
|
457
|
+
[ns.m("append")]: slots.append,
|
|
458
|
+
[ns.m("prepend")]: slots.prepend
|
|
459
|
+
}));
|
|
460
|
+
const inputWrapperClasses = computed(() => ({
|
|
461
|
+
[inputNs.e("wrapper")]: true,
|
|
462
|
+
[ns.m("disabled")]: disabled.value
|
|
463
|
+
}));
|
|
464
|
+
const inputInnerClasses = computed(() => [
|
|
465
|
+
{
|
|
466
|
+
[formControlNs.b()]: true,
|
|
467
|
+
[dropdownNs.b()]: true,
|
|
468
|
+
[dropdownOpenNs.b()]: isFocus.value,
|
|
469
|
+
["disabled"]: disabled.value
|
|
470
|
+
}
|
|
471
|
+
]);
|
|
472
|
+
return { autoCompleteTopClasses, inputClasses, inputWrapperClasses, inputInnerClasses };
|
|
473
|
+
}
|
|
385
474
|
class View {
|
|
386
475
|
constructor() {
|
|
387
476
|
__publicField(this, "top", "50%");
|
|
@@ -412,29 +501,6 @@ class LoadingOptions {
|
|
|
412
501
|
__publicField(this, "zIndex");
|
|
413
502
|
}
|
|
414
503
|
}
|
|
415
|
-
function createBem(namespace, element, modifier) {
|
|
416
|
-
let cls = namespace;
|
|
417
|
-
if (element) {
|
|
418
|
-
cls += `__${element}`;
|
|
419
|
-
}
|
|
420
|
-
if (modifier) {
|
|
421
|
-
cls += `--${modifier}`;
|
|
422
|
-
}
|
|
423
|
-
return cls;
|
|
424
|
-
}
|
|
425
|
-
function useNamespace(block) {
|
|
426
|
-
const namespace = `devui-${block}`;
|
|
427
|
-
const b = () => createBem(namespace);
|
|
428
|
-
const e = (element) => element ? createBem(namespace, element) : "";
|
|
429
|
-
const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
|
|
430
|
-
const em = (element, modifier) => element && modifier ? createBem(namespace, element, modifier) : "";
|
|
431
|
-
return {
|
|
432
|
-
b,
|
|
433
|
-
e,
|
|
434
|
-
m,
|
|
435
|
-
em
|
|
436
|
-
};
|
|
437
|
-
}
|
|
438
504
|
var loading = "";
|
|
439
505
|
var Loading = defineComponent({
|
|
440
506
|
name: "DLoading",
|
|
@@ -906,6 +972,126 @@ const FlexibleOverlay = defineComponent({
|
|
|
906
972
|
}
|
|
907
973
|
});
|
|
908
974
|
var autoComplete = "";
|
|
975
|
+
function isUrl(value) {
|
|
976
|
+
return /^((http|https):)?\/\//.test(value);
|
|
977
|
+
}
|
|
978
|
+
const DEFAULT_PREFIX = "icon";
|
|
979
|
+
const iconProps = {
|
|
980
|
+
name: {
|
|
981
|
+
type: String,
|
|
982
|
+
default: "",
|
|
983
|
+
required: true
|
|
984
|
+
},
|
|
985
|
+
size: {
|
|
986
|
+
type: [Number, String],
|
|
987
|
+
default: "inherit"
|
|
988
|
+
},
|
|
989
|
+
color: {
|
|
990
|
+
type: String,
|
|
991
|
+
default: "inherit"
|
|
992
|
+
},
|
|
993
|
+
component: {
|
|
994
|
+
type: Object,
|
|
995
|
+
default: null
|
|
996
|
+
},
|
|
997
|
+
classPrefix: {
|
|
998
|
+
type: String,
|
|
999
|
+
default: DEFAULT_PREFIX
|
|
1000
|
+
}
|
|
1001
|
+
};
|
|
1002
|
+
const svgIconProps = {
|
|
1003
|
+
name: {
|
|
1004
|
+
type: String,
|
|
1005
|
+
default: "",
|
|
1006
|
+
required: true
|
|
1007
|
+
},
|
|
1008
|
+
color: {
|
|
1009
|
+
type: String,
|
|
1010
|
+
default: "inherit"
|
|
1011
|
+
},
|
|
1012
|
+
size: {
|
|
1013
|
+
type: [Number, String],
|
|
1014
|
+
default: "inherit"
|
|
1015
|
+
}
|
|
1016
|
+
};
|
|
1017
|
+
var icon = "";
|
|
1018
|
+
var svgIcon = defineComponent({
|
|
1019
|
+
name: "DSvgIcon",
|
|
1020
|
+
props: svgIconProps,
|
|
1021
|
+
setup(props) {
|
|
1022
|
+
const {
|
|
1023
|
+
name,
|
|
1024
|
+
color,
|
|
1025
|
+
size
|
|
1026
|
+
} = toRefs(props);
|
|
1027
|
+
const ns = useNamespace("svg-icon");
|
|
1028
|
+
const iconName = computed(() => `#icon-${name.value}`);
|
|
1029
|
+
const iconSize = computed(() => {
|
|
1030
|
+
return typeof size.value === "number" ? `${size.value}px` : size.value;
|
|
1031
|
+
});
|
|
1032
|
+
const styles = {
|
|
1033
|
+
width: iconSize.value,
|
|
1034
|
+
height: iconSize.value
|
|
1035
|
+
};
|
|
1036
|
+
return () => {
|
|
1037
|
+
return createVNode("svg", {
|
|
1038
|
+
"class": ns.b(),
|
|
1039
|
+
"style": styles
|
|
1040
|
+
}, [createVNode("use", {
|
|
1041
|
+
"xlink:href": iconName.value,
|
|
1042
|
+
"fill": color.value
|
|
1043
|
+
}, null)]);
|
|
1044
|
+
};
|
|
1045
|
+
}
|
|
1046
|
+
});
|
|
1047
|
+
var Icon = defineComponent({
|
|
1048
|
+
name: "DIcon",
|
|
1049
|
+
props: iconProps,
|
|
1050
|
+
setup(props, {
|
|
1051
|
+
attrs
|
|
1052
|
+
}) {
|
|
1053
|
+
const {
|
|
1054
|
+
component,
|
|
1055
|
+
name,
|
|
1056
|
+
size,
|
|
1057
|
+
color,
|
|
1058
|
+
classPrefix
|
|
1059
|
+
} = toRefs(props);
|
|
1060
|
+
const IconComponent = component.value ? resolveDynamicComponent(component.value) : resolveDynamicComponent(svgIcon);
|
|
1061
|
+
const iconSize = computed(() => {
|
|
1062
|
+
return typeof size.value === "number" ? `${size.value}px` : size.value;
|
|
1063
|
+
});
|
|
1064
|
+
const svgIconDom = () => {
|
|
1065
|
+
return createVNode(IconComponent, mergeProps({
|
|
1066
|
+
"name": name.value,
|
|
1067
|
+
"color": color.value,
|
|
1068
|
+
"size": iconSize.value
|
|
1069
|
+
}, attrs), null);
|
|
1070
|
+
};
|
|
1071
|
+
const imgIconDom = () => {
|
|
1072
|
+
return createVNode("img", mergeProps({
|
|
1073
|
+
"src": name.value,
|
|
1074
|
+
"alt": name.value.split("/")[name.value.split("/").length - 1],
|
|
1075
|
+
"style": {
|
|
1076
|
+
width: iconSize.value || ""
|
|
1077
|
+
}
|
|
1078
|
+
}, attrs), null);
|
|
1079
|
+
};
|
|
1080
|
+
const fontIconDom = () => {
|
|
1081
|
+
const fontIconClass = /^icon-/.test(name.value) ? name.value : `${classPrefix.value}-${name.value}`;
|
|
1082
|
+
return createVNode("i", mergeProps({
|
|
1083
|
+
"class": [classPrefix.value, fontIconClass],
|
|
1084
|
+
"style": {
|
|
1085
|
+
fontSize: iconSize.value,
|
|
1086
|
+
color: color.value
|
|
1087
|
+
}
|
|
1088
|
+
}, attrs), null);
|
|
1089
|
+
};
|
|
1090
|
+
return () => {
|
|
1091
|
+
return component.value ? svgIconDom() : isUrl(name.value) ? imgIconDom() : fontIconDom();
|
|
1092
|
+
};
|
|
1093
|
+
}
|
|
1094
|
+
});
|
|
909
1095
|
function _isSlot(s) {
|
|
910
1096
|
return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
|
|
911
1097
|
}
|
|
@@ -915,7 +1101,7 @@ var AutoComplete = defineComponent({
|
|
|
915
1101
|
ClickOutside: clickoutsideDirective
|
|
916
1102
|
},
|
|
917
1103
|
props: autoCompleteProps,
|
|
918
|
-
emits: ["update:modelValue"],
|
|
1104
|
+
emits: ["update:modelValue", "clear", "blur"],
|
|
919
1105
|
setup(props, ctx2) {
|
|
920
1106
|
const {
|
|
921
1107
|
disabled,
|
|
@@ -932,15 +1118,11 @@ var AutoComplete = defineComponent({
|
|
|
932
1118
|
position,
|
|
933
1119
|
latestSource,
|
|
934
1120
|
showAnimation,
|
|
935
|
-
valueParser
|
|
1121
|
+
valueParser,
|
|
1122
|
+
placeholder
|
|
936
1123
|
} = toRefs(props);
|
|
937
1124
|
const ns = useNamespace("auto-complete");
|
|
938
|
-
const
|
|
939
|
-
const feedbackNs = useNamespace("has-feedback");
|
|
940
|
-
const selectNs = useNamespace("select-open");
|
|
941
|
-
const formControlNs = useNamespace("form-control");
|
|
942
|
-
const dropdownNs = useNamespace("dropdown-origin");
|
|
943
|
-
const dropdownOpenNs = useNamespace("dropdown-origin-open");
|
|
1125
|
+
const inputNs = useNamespace("auto-complete-input");
|
|
944
1126
|
const {
|
|
945
1127
|
handleSearch,
|
|
946
1128
|
searchList,
|
|
@@ -951,6 +1133,7 @@ var AutoComplete = defineComponent({
|
|
|
951
1133
|
onInput,
|
|
952
1134
|
onFocus,
|
|
953
1135
|
onBlur,
|
|
1136
|
+
onClear,
|
|
954
1137
|
inputRef,
|
|
955
1138
|
isFocus,
|
|
956
1139
|
visible,
|
|
@@ -974,6 +1157,12 @@ var AutoComplete = defineComponent({
|
|
|
974
1157
|
hoverIndex,
|
|
975
1158
|
handlekeyDown
|
|
976
1159
|
} = useKeyBoardHandle(dropDownRef, visible, searchList, selectedIndex, searchStatus, showNoResultItemTemplate, selectOptionClick, handleClose);
|
|
1160
|
+
const {
|
|
1161
|
+
autoCompleteTopClasses,
|
|
1162
|
+
inputClasses,
|
|
1163
|
+
inputWrapperClasses,
|
|
1164
|
+
inputInnerClasses
|
|
1165
|
+
} = useAutoCompleteRender(props, ctx2, visible, isFocus);
|
|
977
1166
|
provide(DropdownPropsKey, {
|
|
978
1167
|
props,
|
|
979
1168
|
visible,
|
|
@@ -992,81 +1181,90 @@ var AutoComplete = defineComponent({
|
|
|
992
1181
|
valueParser
|
|
993
1182
|
});
|
|
994
1183
|
const origin = ref();
|
|
1184
|
+
const prefixVisible = ctx2.slots.prefix || props.prefix;
|
|
1185
|
+
const suffixVisible = ctx2.slots.suffix || props.suffix || props.clearable;
|
|
1186
|
+
const showClearable = computed(() => props.clearable && !props.disabled);
|
|
1187
|
+
const renderBasicDropdown = () => {
|
|
1188
|
+
let _slot;
|
|
1189
|
+
return createVNode(Transition, {
|
|
1190
|
+
"name": showAnimation ? "fade" : ""
|
|
1191
|
+
}, {
|
|
1192
|
+
default: () => [createVNode(FlexibleOverlay, {
|
|
1193
|
+
"show-arrow": true,
|
|
1194
|
+
"origin": origin.value,
|
|
1195
|
+
"position": position.value,
|
|
1196
|
+
"modelValue": visible.value,
|
|
1197
|
+
"onUpdate:modelValue": ($event) => visible.value = $event
|
|
1198
|
+
}, {
|
|
1199
|
+
default: () => [createVNode("div", {
|
|
1200
|
+
"class": ns.e("menu"),
|
|
1201
|
+
"style": {
|
|
1202
|
+
width: `
|
|
1203
|
+
${width.value + "px"}
|
|
1204
|
+
`
|
|
1205
|
+
}
|
|
1206
|
+
}, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot = customRenderSolts()) ? _slot : {
|
|
1207
|
+
default: () => [_slot]
|
|
1208
|
+
})])]
|
|
1209
|
+
})]
|
|
1210
|
+
});
|
|
1211
|
+
};
|
|
995
1212
|
const renderDropdown = () => {
|
|
996
1213
|
if (appendToBody.value) {
|
|
997
|
-
let
|
|
1214
|
+
let _slot2;
|
|
998
1215
|
return createVNode(Teleport, {
|
|
999
1216
|
"to": "body"
|
|
1000
|
-
}, {
|
|
1001
|
-
default: () => [
|
|
1002
|
-
"name": showAnimation ? "fade" : ""
|
|
1003
|
-
}, {
|
|
1004
|
-
default: () => [createVNode(FlexibleOverlay, {
|
|
1005
|
-
"show-arrow": true,
|
|
1006
|
-
"origin": origin.value,
|
|
1007
|
-
"position": position.value,
|
|
1008
|
-
"modelValue": visible.value,
|
|
1009
|
-
"onUpdate:modelValue": ($event) => visible.value = $event
|
|
1010
|
-
}, {
|
|
1011
|
-
default: () => [createVNode("div", {
|
|
1012
|
-
"class": ns.e("menu"),
|
|
1013
|
-
"style": {
|
|
1014
|
-
width: `
|
|
1015
|
-
${width.value + "px"}
|
|
1016
|
-
`
|
|
1017
|
-
}
|
|
1018
|
-
}, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot = customRenderSolts()) ? _slot : {
|
|
1019
|
-
default: () => [_slot]
|
|
1020
|
-
})])]
|
|
1021
|
-
})]
|
|
1022
|
-
})]
|
|
1217
|
+
}, _isSlot(_slot2 = renderBasicDropdown()) ? _slot2 : {
|
|
1218
|
+
default: () => [_slot2]
|
|
1023
1219
|
});
|
|
1024
1220
|
} else {
|
|
1025
|
-
|
|
1026
|
-
return createVNode(Transition, {
|
|
1027
|
-
"name": showAnimation ? "fade" : ""
|
|
1028
|
-
}, {
|
|
1029
|
-
default: () => [createVNode(FlexibleOverlay, {
|
|
1030
|
-
"show-arrow": true,
|
|
1031
|
-
"origin": origin.value,
|
|
1032
|
-
"position": position.value,
|
|
1033
|
-
"modelValue": visible.value,
|
|
1034
|
-
"onUpdate:modelValue": ($event) => visible.value = $event
|
|
1035
|
-
}, {
|
|
1036
|
-
default: () => [createVNode("div", {
|
|
1037
|
-
"class": ns.e("menu"),
|
|
1038
|
-
"style": {
|
|
1039
|
-
width: `
|
|
1040
|
-
${width.value + "px"}
|
|
1041
|
-
`
|
|
1042
|
-
}
|
|
1043
|
-
}, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot2 = customRenderSolts()) ? _slot2 : {
|
|
1044
|
-
default: () => [_slot2]
|
|
1045
|
-
})])]
|
|
1046
|
-
})]
|
|
1047
|
-
});
|
|
1221
|
+
return renderBasicDropdown();
|
|
1048
1222
|
}
|
|
1049
1223
|
};
|
|
1050
1224
|
return () => {
|
|
1225
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
1051
1226
|
return withDirectives(createVNode("div", {
|
|
1052
|
-
"class":
|
|
1227
|
+
"class": autoCompleteTopClasses.value,
|
|
1053
1228
|
"ref": origin,
|
|
1054
1229
|
"style": {
|
|
1055
1230
|
width: `${width.value + "px"}`
|
|
1056
1231
|
}
|
|
1057
|
-
}, [createVNode("
|
|
1232
|
+
}, [createVNode("div", {
|
|
1233
|
+
"class": inputClasses.value
|
|
1234
|
+
}, [ctx2.slots.prepend && createVNode("div", {
|
|
1235
|
+
"class": inputNs.e("prepend")
|
|
1236
|
+
}, [(_b = (_a = ctx2.slots).prepend) == null ? void 0 : _b.call(_a)]), createVNode("div", {
|
|
1237
|
+
"class": inputWrapperClasses.value
|
|
1238
|
+
}, [prefixVisible && createVNode("span", {
|
|
1239
|
+
"class": inputNs.e("prefix")
|
|
1240
|
+
}, [ctx2.slots.prefix && createVNode("div", null, [(_d = (_c = ctx2.slots).prefix) == null ? void 0 : _d.call(_c)]), props.prefix && createVNode(Icon, {
|
|
1241
|
+
"size": "inherit",
|
|
1242
|
+
"name": props.prefix
|
|
1243
|
+
}, null)]), createVNode("input", {
|
|
1058
1244
|
"disabled": disabled.value,
|
|
1059
1245
|
"type": "text",
|
|
1060
1246
|
"onClick": toggleMenu,
|
|
1061
|
-
"class":
|
|
1062
|
-
"placeholder":
|
|
1247
|
+
"class": inputInnerClasses.value,
|
|
1248
|
+
"placeholder": placeholder.value,
|
|
1063
1249
|
"onInput": onInput,
|
|
1064
1250
|
"onFocus": onFocus,
|
|
1065
1251
|
"onBlur": onBlur,
|
|
1066
1252
|
"value": modelValue.value,
|
|
1067
1253
|
"ref": inputRef,
|
|
1068
1254
|
"onKeydown": handlekeyDown
|
|
1069
|
-
}, null),
|
|
1255
|
+
}, null), suffixVisible && createVNode("span", {
|
|
1256
|
+
"class": inputNs.e("suffix")
|
|
1257
|
+
}, [props.suffix && createVNode(Icon, {
|
|
1258
|
+
"size": "inherit",
|
|
1259
|
+
"name": props.suffix
|
|
1260
|
+
}, null), ctx2.slots.suffix && createVNode("div", null, [(_f = (_e = ctx2.slots).suffix) == null ? void 0 : _f.call(_e)]), showClearable.value && createVNode(Icon, {
|
|
1261
|
+
"size": props.size,
|
|
1262
|
+
"class": ns.em("clear", "icon"),
|
|
1263
|
+
"name": "close",
|
|
1264
|
+
"onClick": onClear
|
|
1265
|
+
}, null)])]), ctx2.slots.append && createVNode("div", {
|
|
1266
|
+
"class": inputNs.e("append")
|
|
1267
|
+
}, [(_h = (_g = ctx2.slots).append) == null ? void 0 : _h.call(_g)])]), renderDropdown()]), [[resolveDirective("click-outside"), handleClose]]);
|
|
1070
1268
|
};
|
|
1071
1269
|
}
|
|
1072
1270
|
});
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
var qe=Object.defineProperty;var me=Object.getOwnPropertySymbols;var Xe=Object.prototype.hasOwnProperty,We=Object.prototype.propertyIsEnumerable;var q=(v,t,y)=>t in v?qe(v,t,{enumerable:!0,configurable:!0,writable:!0,value:y}):v[t]=y,P=(v,t)=>{for(var y in t||(t={}))Xe.call(t,y)&&q(v,y,t[y]);if(me)for(var y of me(t))We.call(t,y)&&q(v,y,t[y]);return v};var F=(v,t,y)=>(q(v,typeof t!="symbol"?t+"":t,y),y);(function(v,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue"),require("@floating-ui/dom")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom"],t):(v=typeof globalThis!="undefined"?globalThis:v||self,t(v.index={},v.Vue,v.dom))})(this,function(v,t,y){"use strict";const X={modelValue:{type:String,default:""},source:{type:Array,default:null},allowEmptyValueSearch:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!1},position:{type:Array,default:["bottom-end"]},disabled:{type:Boolean,default:!1},delay:{type:Number,default:300},disabledKey:{type:String,default:null},formatter:{type:Function,default:e=>typeof e=="string"?e:e!==null?e.label||e.toString():""},isSearching:{type:Boolean,default:!1},sceneType:{type:String,default:null},searchFn:{type:Function,default:null},tipsText:{type:String,default:"\u6700\u8FD1\u8F93\u5165"},latestSource:{type:Array,default:null},valueParser:{type:Function,default:e=>e},enableLazyLoad:{type:Boolean,default:!1},width:{type:Number,default:400},showAnimation:{type:Boolean,default:!0},maxHeight:{type:Number,default:300},transInputFocusEmit:{type:Function,default:null},selectValue:{type:Function,default:null},loadMore:{type:Function,default:null}},M=Symbol("DropdownPropsKey");function ve(e,o){const n=(l,i)=>{const u={item:l,index:i};return e.slots.item?e.slots.item(u):null},a=()=>e.slots.nothing?e.slots.nothing(o.value):null,s=()=>e.slots.searching?e.slots.searching(o.value):null;return{customRenderSolts:()=>{const l={};return e.slots.item&&(l.itemTemplate=n),e.slots.nothing&&(l.noResultItemTemplate=a),e.slots.searching&&(l.searchingTemplate=s),l}}}function ye(e,o,n,a,s){const r=t.ref([]),l=t.ref(!1),i=c=>{const m=[];return n.value.forEach(d=>{let p=s.value(d);p=p.toLowerCase(),p.startsWith(c)&&m.push(d)}),m};return{handleSearch:async(c,m=!1)=>{if(c===""&&!o.value){r.value=[],l.value=!1;return}let d=[];c=c.toLowerCase(),m?d=n.value:a.value?d=await a.value(c):d=i(c),r.value=d,r.value.length===0?l.value=!0:l.value=!1},recentlyFocus:c=>{c&&(r.value=c)},searchList:r,showNoResultItemTemplate:l}}function we(e,o,n,a,s,r,l,i,u,f){const c=t.ref(!1),m=t.ref(),d=t.ref(!1),p=t.ref(!1),V=((A,k)=>{let O;return D=>{O&&clearTimeout(O),O=setTimeout(async()=>{d.value=!0,await A(D),d.value=!1},k)}})(async A=>{await l(A),c.value=!0},r.value),N=A=>{const k=A.target;d.value=!1,n.value=!1,e.emit("update:modelValue",k.value),V(k.value)},T=()=>{p.value=!0,l(a.value),u(f==null?void 0:f.value),i.value&&i.value()},E=()=>{p.value=!1},L=()=>{c.value=!1,d.value=!1,n.value=!1};return{handleClose:L,toggleMenu:()=>{s.value||(c.value?L():(c.value=!0,e.slots.noResultItemTemplate&&o.value.length===0&&a.value.trim()!==""&&(n.value=!0)))},onInput:N,onFocus:T,onBlur:E,isFocus:p,inputRef:m,visible:c,searchStatus:d}}function he(e,o,n,a,s,r){const l=t.ref(0),i=f=>{if(o.value.length===0)return 0;let c=0;return o.value.forEach((m,d)=>{typeof m=="string"?m===f&&(c=d):String(m.label)===f&&(c=d)}),c===-1?0:c};return{selectedIndex:l,selectOptionClick:async f=>{const c=s.value(f);e.emit("update:modelValue",c),r(),await a(c),l.value=i(c),n.value&&n.value(c)}}}function ge(e,o,n){const a=t.ref(!1),s=t.ref(),r=()=>{if(!e.enableLazyLoad&&a)return;const i=s.value,u=i.scrollHeight,f=i.clientHeight+i.scrollTop;f>=u&&f>=e.maxHeight&&(e.loadMore(),a.value=!0)};async function l(){await n(e.modelValue,e.enableLazyLoad),a.value=!1}return o.expose({loadFinish:l}),{showLoading:a,dropDownRef:s,loadMore:r}}function be(e,o,n,a,s,r,l,i){var m;const u=t.ref((m=a.value)!=null?m:0),f=d=>{const p=e.value,w=p.children[d];t.nextTick(()=>{if(w.scrollIntoViewIfNeeded)w.scrollIntoViewIfNeeded(!1);else{const g=p.getBoundingClientRect(),V=w.getBoundingClientRect();(V.bottom>g.bottom||V.top<g.top)&&w.scrollIntoView(!1)}})};return{hoverIndex:u,handlekeyDown:d=>{var g;const p=d.key||d.code;if(p==="Escape"&&(o.value&&n.value.length||s.value||r.value)){i();return}const w=o.value&&n.value.length&&!s.value&&!r.value;if(p==="ArrowDown"&&w){if(u.value===n.value.length-1){u.value=0,f(u.value);return}u.value=u.value+1,f(u.value)}else if(p==="ArrowUp"&&w){if(u.value===0){u.value=n.value.length-1,f(u.value);return}u.value=u.value-1,f(u.value)}if(p==="Enter"&&w){l(n.value[u.value]),u.value=(g=a.value)!=null?g:0;return}}}}class W{constructor(){F(this,"top","50%");F(this,"left","50%")}}const Ve={message:String,backdrop:Boolean,view:{type:Object,default:()=>new W},zIndex:Number,isFull:{type:Boolean,default:!1}};class Ne{constructor(){F(this,"target");F(this,"message");F(this,"loadingTemplateRef");F(this,"backdrop",!0);F(this,"positionType","relative");F(this,"view",new W);F(this,"zIndex")}}function j(e,o,n){let a=e;return o&&(a+=`__${o}`),n&&(a+=`--${n}`),a}function b(e){const o=`devui-${e}`;return{b:()=>j(o),e:l=>l?j(o,l):"",m:l=>l?j(o,"",l):"",em:(l,i)=>l&&i?j(o,l,i):""}}var Qe="",Te=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:Ve,setup(e){const o={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(o.background="none");const n=t.ref(!1);return{style:o,isShow:n,open:()=>{n.value=!0},close:()=>{n.value=!1}}},render(){var i;const{isShow:e,isFull:o,backdrop:n,style:a,message:s,$slots:r}=this,l=b("loading");return e&&t.createVNode("div",{class:[l.b(),o?l.m("full"):""]},[((i=r.default)==null?void 0:i.call(r))||t.createVNode("div",{class:l.e("wrapper")},[n?t.createVNode("div",{class:l.e("mask")},null):null,t.createVNode("div",{style:a,class:l.e("area")},[t.createVNode("div",{class:l.e("busy-default-spinner")},[t.createVNode("div",{class:l.e("bar1")},null),t.createVNode("div",{class:l.e("bar2")},null),t.createVNode("div",{class:l.e("bar3")},null),t.createVNode("div",{class:l.e("bar4")},null)]),s?t.createVNode("span",{class:l.e("text")},[s]):null])])])}});const G=Symbol("dev_component_container");function Ce(e,o,n=null){const a=t.h(e,P({},o),n),s=document.createElement("div");return a[G]=s,t.render(a,s),a.component}function Ae(e){t.render(null,e==null?void 0:e.vnode[G])}const Fe=t.defineComponent(Te),x=new WeakSet,H=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},J=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),Oe=e=>{switch(J(e)){case"promise":return[e];case"array":return e.some(n=>J(n)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},Q=e=>{x.delete(e),e.instance.proxy.close(),Ae(e.instance)},Z=(e,o)=>{var n,a,s;if(o.value){const r=Oe(o.value);if(r==="error")return;(s=(a=(n=e==null?void 0:e.instance)==null?void 0:n.proxy)==null?void 0:a.open)==null||s.call(a),e.appendChild(e.mask),x.add(e),r&&Promise.all(r).catch(l=>{console.error(new Error("Promise handling errors"),l)}).finally(()=>{Q(e)})}else Q(e)},ee=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},te=(e,o)=>{var r;const n=P(P({},new Ne),o),a=n.loadingTemplateRef,s=Ce(Fe,P({},n),a?()=>a:null);e.style.position=n.positionType,e.options=n,e.instance=s,e.mask=(r=s==null?void 0:s.proxy)==null?void 0:r.$el},Se={mounted:function(e,o,n){te(e,n.props),ee(e),!H(o.value)&&Z(e,o)},updated:function(e,o,n){!H(o.value)&&x.has(e)||H(o.value)&&!x.has(e)||(!x.has(e)&&te(e,n.props),ee(e),Z(e,o))}};var oe=t.defineComponent({name:"DAutoCompleteDropdown",directives:{dLoading:Se},setup(e,o){const n=t.inject(M),{visible:a,selectedIndex:s,selectOptionClick:r,searchList:l,searchStatus:i,dropDownRef:u,loadMore:f,showLoading:c,showNoResultItemTemplate:m,latestSource:d,modelValue:p,hoverIndex:w,valueParser:g}=n,{disabled:V,maxHeight:N,formatter:T,disabledKey:E,isSearching:L}=n.props,C=b("auto-complete"),A=b("no-data-tip"),k=b("dropdown-menu"),O=b("dropdown-item"),D=h=>{h=g.value(h),!(typeof h=="object"&&h[E])&&r(h)};return()=>t.withDirectives(t.createVNode("div",{class:[k.b(),C.e("dropdown-menu-cdk"),V&&"disabled",d.value&&C.e("dropdown-latestSource")]},[t.createVNode("ul",{ref:u,class:[C.e("list-unstyled"),"scroll-height"],style:{maxHeight:`${N}px`},onScroll:f},[L&&o.slots.searchingTemplate&&(i==null?void 0:i.value)&&t.createVNode("li",{class:C.e("searching-template")},[t.createVNode("div",{class:A.b()},[o.slots.searchingTemplate()])]),d.value&&!p.value&&t.createVNode("li",{class:C.e("popup-tips")},[t.createTextVNode("\u6700\u8FD1\u8F93\u5165")]),!m.value&&!(i==null?void 0:i.value)&&l!=null&&l.value.length>0&&l.value.map((h,B)=>t.createVNode("li",{onClick:()=>D(h),class:[O.b(),s.value===B&&"selected",{disabled:E&&typeof h=="object"&&h[E]},{[C.e("dropdown-bg")]:w.value===B}],title:T(h),key:T(h)},[o.slots.itemTemplate?o.slots.itemTemplate(h,B):T(h)])),!(i==null?void 0:i.value)&&l.value.length===0&&o.slots.noResultItemTemplate&&m.value&&t.createVNode("li",{class:C.e("no-result-template")},[t.createVNode("div",{class:A.b()},[o.slots.noResultItemTemplate()])])])]),[[t.resolveDirective("dLoading"),c.value],[t.vShow,a.value&&l.value.length>0||o.slots.noResultItemTemplate&&m.value||L&&o.slots.searchingTemplate&&(i==null?void 0:i.value)]])}});const ke=typeof window!="undefined";function ne(e,o,n){document.addEventListener?e&&o&&n&&e.addEventListener(o,n,!1):e&&o&&n&&e.attachEvent("on"+o,n)}const S=Symbol("@@clickoutside"),z=new Map;let le,_=0,ae=!0;function se(e,o,n){return ke&&ae&&(ae=!1,ne(document,"mousedown",a=>{le=a}),ne(document,"mouseup",a=>{for(const[s,r]of z)r[S].documentHandler(a,le)})),function(a,s){!n||!o.instance||!a.target||!s.target||e.contains(a.target)||e.contains(s.target)||e===a.target||e[S].bindingFn&&e[S].bindingFn()}}const De={beforeMount:function(e,o,n){_++,z.set(_,e),e[S]={nid:_,documentHandler:se(e,o,n),bindingFn:o.value}},updated:function(e,o,n){e[S].documentHandler=se(e,o,n),e[S].bindingFn=o.value},unmounted:function(e){z.delete(e[S].nid),delete e[S]}},Ee={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},offset:{type:[Number,Object],default:8},shiftOffset:{type:Number},align:{type:String,default:null},showArrow:{type:Boolean,default:!1},isArrowCenter:{type:Boolean,default:!0}};function Le(e){const o=/(auto|scroll|hidden)/;for(let n=e;n=n.parentElement;n.parentElement!==document.body){const a=window.getComputedStyle(n);if(o.test(a.overflow+a.overflowX+a.overflowY))return n}return window}function Ie(e,o,n,a){let{x:s,y:r}=o;if(!e){const{width:l,height:i}=a;s&&n.includes("start")&&(s=12),s&&n.includes("end")&&(s=Math.round(l-24)),r&&n.includes("start")&&(r=10),r&&n.includes("end")&&(r=i-14)}return{x:s,y:r}}function Re(e,o){const n=t.ref(),a=t.ref();let s=null;const r=(i,u,f,c)=>{const{x:m,y:d}=Ie(e.isArrowCenter,f,u,c.getBoundingClientRect()),p={top:"bottom",right:"left",bottom:"top",left:"right"}[u.split("-")[0]];Object.assign(i.style,{left:m?`${m}px`:"",top:d?`${d}px`:"",right:"",bottom:"",[p]:"-4px"})},l=async()=>{const i=e.origin,u=t.unref(n.value),f=t.unref(a.value),c=[y.offset(e.offset),y.autoPlacement({alignment:e.align,allowedPlacements:e.position})];e.showArrow&&c.push(y.arrow({element:f})),e.shiftOffset!==void 0&&c.push(y.shift());const{x:m,y:d,placement:p,middlewareData:w}=await y.computePosition(i,u,{strategy:"fixed",middleware:c});let g=m,V=d;if(e.shiftOffset!==void 0){const{x:N,y:T}=w.shift;N<0&&(g-=e.shiftOffset),N>0&&(g+=e.shiftOffset),T<0&&(V-=e.shiftOffset),T>0&&(V+=e.shiftOffset)}o("positionChange",p),Object.assign(u.style,{top:`${V}px`,left:`${g}px`}),e.showArrow&&r(f,p,w.arrow,u)};return t.watch(()=>e.modelValue,()=>{e.modelValue&&e.origin?(s=Le(e.origin),t.nextTick(l),s==null||s.addEventListener("scroll",l),s!==window&&window.addEventListener("scroll",l),window.addEventListener("resize",l)):(s==null||s.removeEventListener("scroll",l),s!==window&&window.removeEventListener("scroll",l),window.removeEventListener("resize",l))}),t.onUnmounted(()=>{s==null||s.removeEventListener("scroll",l),s!==window&&window.removeEventListener("scroll",l),window.removeEventListener("resize",l)}),{arrowRef:a,overlayRef:n,updatePosition:l}}var Ze="";const re=t.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:Ee,emits:["update:modelValue","positionChange"],setup(e,{slots:o,attrs:n,emit:a,expose:s}){const r=b("flexible-overlay"),{arrowRef:l,overlayRef:i,updatePosition:u}=Re(e,a);return s({updatePosition:u}),()=>{var f;return e.modelValue&&t.createVNode("div",t.mergeProps({ref:i,class:r.b()},n),[(f=o.default)==null?void 0:f.call(o),e.showArrow&&t.createVNode("div",{ref:l,class:r.e("arrow")},null)])}}});var et="";function ie(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}var $=t.defineComponent({name:"DAutoComplete",directives:{ClickOutside:De},props:X,emits:["update:modelValue"],setup(e,o){const{disabled:n,modelValue:a,width:s,delay:r,allowEmptyValueSearch:l,appendToBody:i,formatter:u,transInputFocusEmit:f,selectValue:c,source:m,searchFn:d,position:p,latestSource:w,showAnimation:g,valueParser:V}=t.toRefs(e),N=b("auto-complete"),T=b("form-group"),E=b("has-feedback"),L=b("select-open"),C=b("form-control"),A=b("dropdown-origin"),k=b("dropdown-origin-open"),{handleSearch:O,searchList:D,showNoResultItemTemplate:h,recentlyFocus:B}=ye(o,l,m,d,u),{onInput:Be,onFocus:Pe,onBlur:je,inputRef:Me,isFocus:He,visible:I,searchStatus:ue,handleClose:K,toggleMenu:ze}=we(o,D,h,a,n,r,O,f,B,w),{selectedIndex:ce,selectOptionClick:de}=he(o,D,c,O,u,K),{showLoading:_e,dropDownRef:fe,loadMore:$e}=ge(e,o,O),{customRenderSolts:pe}=ve(o,a),{hoverIndex:Ke,handlekeyDown:Ue}=be(fe,I,D,ce,ue,h,de,K);t.provide(M,{props:e,visible:I,term:"",searchList:D,selectedIndex:ce,searchStatus:ue,selectOptionClick:de,dropDownRef:fe,showLoading:_e,loadMore:$e,latestSource:w,modelValue:a,showNoResultItemTemplate:h,hoverIndex:Ke,valueParser:V});const U=t.ref(),Ye=()=>{if(i.value){let R;return t.createVNode(t.Teleport,{to:"body"},{default:()=>[t.createVNode(t.Transition,{name:g?"fade":""},{default:()=>[t.createVNode(re,{"show-arrow":!0,origin:U.value,position:p.value,modelValue:I.value,"onUpdate:modelValue":Y=>I.value=Y},{default:()=>[t.createVNode("div",{class:N.e("menu"),style:{width:`
|
|
2
|
-
${
|
|
3
|
-
`}},[t.createVNode(
|
|
4
|
-
${s.value+"px"}
|
|
5
|
-
`}},[t.createVNode(oe,null,ie(R=pe())?R:{default:()=>[R]})])]})]})}};return()=>t.withDirectives(t.createVNode("div",{class:[N.b(),T.b(),E.b(),I.value&&L.b()],ref:U,style:{width:`${s.value+"px"}`}},[t.createVNode("input",{disabled:n.value,type:"text",onClick:ze,class:[C.b(),A.b(),He.value&&k.b(),n.value&&"disabled"],placeholder:"Search",onInput:Be,onFocus:Pe,onBlur:je,value:a.value,ref:Me,onKeydown:Ue},null),Ye()]),[[t.resolveDirective("click-outside"),K]])}}),xe={title:"AutoComplete \u81EA\u52A8\u8865\u5168",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.component($.name,$)}};v.AutoComplete=$,v.DropdownPropsKey=M,v.autoCompleteProps=X,v.default=xe,Object.defineProperty(v,"__esModule",{value:!0}),v[Symbol.toStringTag]="Module"});
|
|
1
|
+
var ct=Object.defineProperty;var we=Object.getOwnPropertySymbols;var dt=Object.prototype.hasOwnProperty,ft=Object.prototype.propertyIsEnumerable;var X=(v,t,g)=>t in v?ct(v,t,{enumerable:!0,configurable:!0,writable:!0,value:g}):v[t]=g,z=(v,t)=>{for(var g in t||(t={}))dt.call(t,g)&&X(v,g,t[g]);if(we)for(var g of we(t))ft.call(t,g)&&X(v,g,t[g]);return v};var D=(v,t,g)=>(X(v,typeof t!="symbol"?t+"":t,g),g);(function(v,t){typeof exports=="object"&&typeof module!="undefined"?t(exports,require("vue"),require("@floating-ui/dom")):typeof define=="function"&&define.amd?define(["exports","vue","@floating-ui/dom"],t):(v=typeof globalThis!="undefined"?globalThis:v||self,t(v.index={},v.Vue,v.dom))})(this,function(v,t,g){"use strict";const W={modelValue:{type:String,default:""},source:{type:Array,default:null},allowEmptyValueSearch:{type:Boolean,default:!1},appendToBody:{type:Boolean,default:!1},position:{type:Array,default:["bottom-end"]},disabled:{type:Boolean,default:!1},delay:{type:Number,default:300},disabledKey:{type:String,default:null},formatter:{type:Function,default:e=>typeof e=="string"?e:e!==null?e.label||e.toString():""},isSearching:{type:Boolean,default:!1},sceneType:{type:String,default:null},searchFn:{type:Function,default:null},tipsText:{type:String,default:"\u6700\u8FD1\u8F93\u5165"},latestSource:{type:Array,default:null},valueParser:{type:Function,default:e=>e},enableLazyLoad:{type:Boolean,default:!1},width:{type:Number,default:400},showAnimation:{type:Boolean,default:!0},maxHeight:{type:Number,default:300},transInputFocusEmit:{type:Function,default:null},selectValue:{type:Function,default:null},loadMore:{type:Function,default:null},placeholder:{type:String,default:"Search"},prefix:{type:String,default:""},suffix:{type:String,default:""},size:{type:String,default:"md"},clearable:{type:Boolean,default:!1}},M=Symbol("DropdownPropsKey");function be(e,o){const n=(s,r)=>{const u={item:s,index:r};return e.slots.item?e.slots.item(u):null},l=()=>e.slots.nothing?e.slots.nothing(o.value):null,a=()=>e.slots.searching?e.slots.searching(o.value):null;return{customRenderSolts:()=>{const s={};return e.slots.item&&(s.itemTemplate=n),e.slots.nothing&&(s.noResultItemTemplate=l),e.slots.searching&&(s.searchingTemplate=a),s}}}function Ne(e,o,n,l,a){const i=t.ref([]),s=t.ref(!1),r=c=>{const p=[];return n.value.forEach(d=>{let m=a.value(d);m=m.toLowerCase(),m.startsWith(c)&&p.push(d)}),p};return{handleSearch:async(c,p=!1)=>{if(c===""&&!o.value){i.value=[],s.value=!1;return}let d=[];c=c.toLowerCase(),p?d=n.value:l.value?d=await l.value(c):d=r(c),i.value=d,i.value.length===0?s.value=!0:s.value=!1},recentlyFocus:c=>{c&&(i.value=c)},searchList:i,showNoResultItemTemplate:s}}function Ve(e,o,n,l,a,i,s,r,u,f){const c=t.ref(!1),p=t.ref(),d=t.ref(!1),m=t.ref(!1),V=((A,x)=>{let O;return w=>{O&&clearTimeout(O),O=setTimeout(async()=>{d.value=!0,await A(w),d.value=!1},x)}})(async A=>{await s(A),c.value=!0},i.value),S=A=>{const x=A.target;d.value=!1,n.value=!1,e.emit("update:modelValue",x.value),V(x.value)},C=()=>{m.value=!0,s(l.value),u(f==null?void 0:f.value),r.value&&r.value()},T=()=>{m.value=!1,e.emit("blur")},E=()=>{e.emit("update:modelValue",""),e.emit("clear")},N=()=>{c.value=!1,d.value=!1,n.value=!1};return{handleClose:N,toggleMenu:()=>{a.value||(c.value?N():(c.value=!0,e.slots.noResultItemTemplate&&o.value.length===0&&l.value.trim()!==""&&(n.value=!0)))},onInput:S,onFocus:C,onBlur:T,onClear:E,isFocus:m,inputRef:p,visible:c,searchStatus:d}}function Ce(e,o,n,l,a,i){const s=t.ref(0),r=f=>{if(o.value.length===0)return 0;let c=0;return o.value.forEach((p,d)=>{typeof p=="string"?p===f&&(c=d):String(p.label)===f&&(c=d)}),c===-1?0:c};return{selectedIndex:s,selectOptionClick:async f=>{const c=a.value(f);e.emit("update:modelValue",c),i(),await l(c),s.value=r(c),n.value&&n.value(c)}}}function Se(e,o,n){const l=t.ref(!1),a=t.ref(),i=()=>{if(!e.enableLazyLoad&&l)return;const r=a.value,u=r.scrollHeight,f=r.clientHeight+r.scrollTop;f>=u&&f>=e.maxHeight&&(e.loadMore(),l.value=!0)};async function s(){await n(e.modelValue,e.enableLazyLoad),l.value=!1}return o.expose({loadFinish:s}),{showLoading:l,dropDownRef:a,loadMore:i}}function Te(e,o,n,l,a,i,s,r){var p;const u=t.ref((p=l.value)!=null?p:0),f=d=>{const m=e.value,y=m.children[d];t.nextTick(()=>{if(y.scrollIntoViewIfNeeded)y.scrollIntoViewIfNeeded(!1);else{const b=m.getBoundingClientRect(),V=y.getBoundingClientRect();(V.bottom>b.bottom||V.top<b.top)&&y.scrollIntoView(!1)}})};return{hoverIndex:u,handlekeyDown:d=>{var b;const m=d.key||d.code;if(m==="Escape"&&(o.value&&n.value.length||a.value||i.value)){r();return}const y=o.value&&n.value.length&&!a.value&&!i.value;if(m==="ArrowDown"&&y){if(u.value===n.value.length-1){u.value=0,f(u.value);return}u.value=u.value+1,f(u.value)}else if(m==="ArrowUp"&&y){if(u.value===0){u.value=n.value.length-1,f(u.value);return}u.value=u.value-1,f(u.value)}if(m==="Enter"&&y){s(n.value[u.value]),u.value=(b=l.value)!=null?b:0;return}}}}function B(e,o,n){let l=e;return o&&(l+=`__${o}`),n&&(l+=`--${n}`),l}function h(e,o=!1){const n=o?`.devui-${e}`:`devui-${e}`;return{b:()=>B(n),e:r=>r?B(n,r):"",m:r=>r?B(n,"",r):"",em:(r,u)=>r&&u?B(n,r,u):""}}function Ie(e,o,n,l){const a=h("auto-complete"),i=h("auto-complete-input"),s=h("auto-complete-slot"),r=h("form-group"),u=h("has-feedback"),f=h("select-open"),c=h("form-control"),p=h("dropdown-origin"),d=h("dropdown-origin-open"),{disabled:m}=t.toRefs(e),y=o.slots,b=t.computed(()=>({[a.b()]:!0,[a.m(e.size)]:!0,[r.b()]:!0,[u.b()]:!0,[f.b()]:n.value})),V=t.computed(()=>({[i.b()]:!0,[a.m("focus")]:l.value,[s.b()]:y.prepend||y.append||e.prefix||e.suffix,[a.m("append")]:y.append,[a.m("prepend")]:y.prepend})),S=t.computed(()=>({[i.e("wrapper")]:!0,[a.m("disabled")]:m.value})),C=t.computed(()=>[{[c.b()]:!0,[p.b()]:!0,[d.b()]:l.value,disabled:m.value}]);return{autoCompleteTopClasses:b,inputClasses:V,inputWrapperClasses:S,inputInnerClasses:C}}class Y{constructor(){D(this,"top","50%");D(this,"left","50%")}}const De={message:String,backdrop:Boolean,view:{type:Object,default:()=>new Y},zIndex:Number,isFull:{type:Boolean,default:!1}};class Ae{constructor(){D(this,"target");D(this,"message");D(this,"loadingTemplateRef");D(this,"backdrop",!0);D(this,"positionType","relative");D(this,"view",new Y);D(this,"zIndex")}}var vt="",Fe=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:De,setup(e){const o={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(o.background="none");const n=t.ref(!1);return{style:o,isShow:n,open:()=>{n.value=!0},close:()=>{n.value=!1}}},render(){var r;const{isShow:e,isFull:o,backdrop:n,style:l,message:a,$slots:i}=this,s=h("loading");return e&&t.createVNode("div",{class:[s.b(),o?s.m("full"):""]},[((r=i.default)==null?void 0:r.call(i))||t.createVNode("div",{class:s.e("wrapper")},[n?t.createVNode("div",{class:s.e("mask")},null):null,t.createVNode("div",{style:l,class:s.e("area")},[t.createVNode("div",{class:s.e("busy-default-spinner")},[t.createVNode("div",{class:s.e("bar1")},null),t.createVNode("div",{class:s.e("bar2")},null),t.createVNode("div",{class:s.e("bar3")},null),t.createVNode("div",{class:s.e("bar4")},null)]),a?t.createVNode("span",{class:s.e("text")},[a]):null])])])}});const G=Symbol("dev_component_container");function Ee(e,o,n=null){const l=t.h(e,z({},o),n),a=document.createElement("div");return l[G]=a,t.render(l,a),l.component}function xe(e){t.render(null,e==null?void 0:e.vnode[G])}const Le=t.defineComponent(Fe),R=new WeakSet,$=e=>{if(!e)return!0;if(Array.isArray(e))return e.length===0;if(e instanceof Set||e instanceof Map)return e.size===0;if(e instanceof Promise)return!1;if(typeof e=="object")try{return Object.keys(e).length===0}catch{return!1}return!1},J=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),Oe=e=>{switch(J(e)){case"promise":return[e];case"array":return e.some(n=>J(n)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},Q=e=>{R.delete(e),e.instance.proxy.close(),xe(e.instance)},Z=(e,o)=>{var n,l,a;if(o.value){const i=Oe(o.value);if(i==="error")return;(a=(l=(n=e==null?void 0:e.instance)==null?void 0:n.proxy)==null?void 0:l.open)==null||a.call(l),e.appendChild(e.mask),R.add(e),i&&Promise.all(i).catch(s=>{console.error(new Error("Promise handling errors"),s)}).finally(()=>{Q(e)})}else Q(e)},ee=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},te=(e,o)=>{var i;const n=z(z({},new Ae),o),l=n.loadingTemplateRef,a=Ee(Le,z({},n),l?()=>l:null);e.style.position=n.positionType,e.options=n,e.instance=a,e.mask=(i=a==null?void 0:a.proxy)==null?void 0:i.$el},Re={mounted:function(e,o,n){te(e,n.props),ee(e),!$(o.value)&&Z(e,o)},updated:function(e,o,n){!$(o.value)&&R.has(e)||$(o.value)&&!R.has(e)||(!R.has(e)&&te(e,n.props),ee(e),Z(e,o))}};var ke=t.defineComponent({name:"DAutoCompleteDropdown",directives:{dLoading:Re},setup(e,o){const n=t.inject(M),{visible:l,selectedIndex:a,selectOptionClick:i,searchList:s,searchStatus:r,dropDownRef:u,loadMore:f,showLoading:c,showNoResultItemTemplate:p,latestSource:d,modelValue:m,hoverIndex:y,valueParser:b}=n,{disabled:V,maxHeight:S,formatter:C,disabledKey:T,isSearching:E}=n.props,N=h("auto-complete"),L=h("no-data-tip"),A=h("dropdown-menu"),x=h("dropdown-item"),O=w=>{w=b.value(w),!(typeof w=="object"&&w[T])&&i(w)};return()=>t.withDirectives(t.createVNode("div",{class:[A.b(),N.e("dropdown-menu-cdk"),V&&"disabled",d.value&&N.e("dropdown-latestSource")]},[t.createVNode("ul",{ref:u,class:[N.e("list-unstyled"),"scroll-height"],style:{maxHeight:`${S}px`},onScroll:f},[E&&o.slots.searchingTemplate&&(r==null?void 0:r.value)&&t.createVNode("li",{class:N.e("searching-template")},[t.createVNode("div",{class:L.b()},[o.slots.searchingTemplate()])]),d.value&&!m.value&&t.createVNode("li",{class:N.e("popup-tips")},[t.createTextVNode("\u6700\u8FD1\u8F93\u5165")]),!p.value&&!(r==null?void 0:r.value)&&s!=null&&s.value.length>0&&s.value.map((w,k)=>t.createVNode("li",{onClick:()=>O(w),class:[x.b(),a.value===k&&"selected",{disabled:T&&typeof w=="object"&&w[T]},{[N.e("dropdown-bg")]:y.value===k}],title:C(w),key:C(w)},[o.slots.itemTemplate?o.slots.itemTemplate(w,k):C(w)])),!(r==null?void 0:r.value)&&s.value.length===0&&o.slots.noResultItemTemplate&&p.value&&t.createVNode("li",{class:N.e("no-result-template")},[t.createVNode("div",{class:L.b()},[o.slots.noResultItemTemplate()])])])]),[[t.resolveDirective("dLoading"),c.value],[t.vShow,l.value&&s.value.length>0||o.slots.noResultItemTemplate&&p.value||E&&o.slots.searchingTemplate&&(r==null?void 0:r.value)]])}});const Pe=typeof window!="undefined";function oe(e,o,n){document.addEventListener?e&&o&&n&&e.addEventListener(o,n,!1):e&&o&&n&&e.attachEvent("on"+o,n)}const F=Symbol("@@clickoutside"),H=new Map;let ne,_=0,le=!0;function ae(e,o,n){return Pe&&le&&(le=!1,oe(document,"mousedown",l=>{ne=l}),oe(document,"mouseup",l=>{for(const[a,i]of H)i[F].documentHandler(l,ne)})),function(l,a){!n||!o.instance||!l.target||!a.target||e.contains(l.target)||e.contains(a.target)||e===l.target||e[F].bindingFn&&e[F].bindingFn()}}const ze={beforeMount:function(e,o,n){_++,H.set(_,e),e[F]={nid:_,documentHandler:ae(e,o,n),bindingFn:o.value}},updated:function(e,o,n){e[F].documentHandler=ae(e,o,n),e[F].bindingFn=o.value},unmounted:function(e){H.delete(e[F].nid),delete e[F]}},Be={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},offset:{type:[Number,Object],default:8},shiftOffset:{type:Number},align:{type:String,default:null},showArrow:{type:Boolean,default:!1},isArrowCenter:{type:Boolean,default:!0}};function je(e){const o=/(auto|scroll|hidden)/;for(let n=e;n=n.parentElement;n.parentElement!==document.body){const l=window.getComputedStyle(n);if(o.test(l.overflow+l.overflowX+l.overflowY))return n}return window}function Me(e,o,n,l){let{x:a,y:i}=o;if(!e){const{width:s,height:r}=l;a&&n.includes("start")&&(a=12),a&&n.includes("end")&&(a=Math.round(s-24)),i&&n.includes("start")&&(i=10),i&&n.includes("end")&&(i=r-14)}return{x:a,y:i}}function $e(e,o){const n=t.ref(),l=t.ref();let a=null;const i=(r,u,f,c)=>{const{x:p,y:d}=Me(e.isArrowCenter,f,u,c.getBoundingClientRect()),m={top:"bottom",right:"left",bottom:"top",left:"right"}[u.split("-")[0]];Object.assign(r.style,{left:p?`${p}px`:"",top:d?`${d}px`:"",right:"",bottom:"",[m]:"-4px"})},s=async()=>{const r=e.origin,u=t.unref(n.value),f=t.unref(l.value),c=[g.offset(e.offset),g.autoPlacement({alignment:e.align,allowedPlacements:e.position})];e.showArrow&&c.push(g.arrow({element:f})),e.shiftOffset!==void 0&&c.push(g.shift());const{x:p,y:d,placement:m,middlewareData:y}=await g.computePosition(r,u,{strategy:"fixed",middleware:c});let b=p,V=d;if(e.shiftOffset!==void 0){const{x:S,y:C}=y.shift;S<0&&(b-=e.shiftOffset),S>0&&(b+=e.shiftOffset),C<0&&(V-=e.shiftOffset),C>0&&(V+=e.shiftOffset)}o("positionChange",m),Object.assign(u.style,{top:`${V}px`,left:`${b}px`}),e.showArrow&&i(f,m,y.arrow,u)};return t.watch(()=>e.modelValue,()=>{e.modelValue&&e.origin?(a=je(e.origin),t.nextTick(s),a==null||a.addEventListener("scroll",s),a!==window&&window.addEventListener("scroll",s),window.addEventListener("resize",s)):(a==null||a.removeEventListener("scroll",s),a!==window&&window.removeEventListener("scroll",s),window.removeEventListener("resize",s))}),t.onUnmounted(()=>{a==null||a.removeEventListener("scroll",s),a!==window&&window.removeEventListener("scroll",s),window.removeEventListener("resize",s)}),{arrowRef:l,overlayRef:n,updatePosition:s}}var yt="";const He=t.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:Be,emits:["update:modelValue","positionChange"],setup(e,{slots:o,attrs:n,emit:l,expose:a}){const i=h("flexible-overlay"),{arrowRef:s,overlayRef:r,updatePosition:u}=$e(e,l);return a({updatePosition:u}),()=>{var f;return e.modelValue&&t.createVNode("div",t.mergeProps({ref:r,class:i.b()},n),[(f=o.default)==null?void 0:f.call(o),e.showArrow&&t.createVNode("div",{ref:s,class:i.e("arrow")},null)])}}});var gt="";function _e(e){return/^((http|https):)?\/\//.test(e)}const Ke={name:{type:String,default:"",required:!0},size:{type:[Number,String],default:"inherit"},color:{type:String,default:"inherit"},component:{type:Object,default:null},classPrefix:{type:String,default:"icon"}},Ue={name:{type:String,default:"",required:!0},color:{type:String,default:"inherit"},size:{type:[Number,String],default:"inherit"}};var wt="",qe=t.defineComponent({name:"DSvgIcon",props:Ue,setup(e){const{name:o,color:n,size:l}=t.toRefs(e),a=h("svg-icon"),i=t.computed(()=>`#icon-${o.value}`),s=t.computed(()=>typeof l.value=="number"?`${l.value}px`:l.value),r={width:s.value,height:s.value};return()=>t.createVNode("svg",{class:a.b(),style:r},[t.createVNode("use",{"xlink:href":i.value,fill:n.value},null)])}}),K=t.defineComponent({name:"DIcon",props:Ke,setup(e,{attrs:o}){const{component:n,name:l,size:a,color:i,classPrefix:s}=t.toRefs(e),r=n.value?t.resolveDynamicComponent(n.value):t.resolveDynamicComponent(qe),u=t.computed(()=>typeof a.value=="number"?`${a.value}px`:a.value),f=()=>t.createVNode(r,t.mergeProps({name:l.value,color:i.value,size:u.value},o),null),c=()=>t.createVNode("img",t.mergeProps({src:l.value,alt:l.value.split("/")[l.value.split("/").length-1],style:{width:u.value||""}},o),null),p=()=>{const d=/^icon-/.test(l.value)?l.value:`${s.value}-${l.value}`;return t.createVNode("i",t.mergeProps({class:[s.value,d],style:{fontSize:u.value,color:i.value}},o),null)};return()=>n.value?f():_e(l.value)?c():p()}});function se(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}var U=t.defineComponent({name:"DAutoComplete",directives:{ClickOutside:ze},props:W,emits:["update:modelValue","clear","blur"],setup(e,o){const{disabled:n,modelValue:l,width:a,delay:i,allowEmptyValueSearch:s,appendToBody:r,formatter:u,transInputFocusEmit:f,selectValue:c,source:p,searchFn:d,position:m,latestSource:y,showAnimation:b,valueParser:V,placeholder:S}=t.toRefs(e),C=h("auto-complete"),T=h("auto-complete-input"),{handleSearch:E,searchList:N,showNoResultItemTemplate:L,recentlyFocus:A}=Ne(o,s,p,d,u),{onInput:x,onFocus:O,onBlur:w,onClear:k,inputRef:We,isFocus:Ye,visible:P,searchStatus:re,handleClose:q,toggleMenu:Ge}=Ve(o,N,L,l,n,i,E,f,A,y),{selectedIndex:ie,selectOptionClick:ue}=Ce(o,N,c,E,u,q),{showLoading:Je,dropDownRef:ce,loadMore:Qe}=Se(e,o,E),{customRenderSolts:Ze}=be(o,l),{hoverIndex:et,handlekeyDown:tt}=Te(ce,P,N,ie,re,L,ue,q),{autoCompleteTopClasses:ot,inputClasses:nt,inputWrapperClasses:lt,inputInnerClasses:at}=Ie(e,o,P,Ye);t.provide(M,{props:e,visible:P,term:"",searchList:N,selectedIndex:ie,searchStatus:re,selectOptionClick:ue,dropDownRef:ce,showLoading:Je,loadMore:Qe,latestSource:y,modelValue:l,showNoResultItemTemplate:L,hoverIndex:et,valueParser:V});const de=t.ref(),st=o.slots.prefix||e.prefix,rt=o.slots.suffix||e.suffix||e.clearable,it=t.computed(()=>e.clearable&&!e.disabled),fe=()=>{let I;return t.createVNode(t.Transition,{name:b?"fade":""},{default:()=>[t.createVNode(He,{"show-arrow":!0,origin:de.value,position:m.value,modelValue:P.value,"onUpdate:modelValue":j=>P.value=j},{default:()=>[t.createVNode("div",{class:C.e("menu"),style:{width:`
|
|
2
|
+
${a.value+"px"}
|
|
3
|
+
`}},[t.createVNode(ke,null,se(I=Ze())?I:{default:()=>[I]})])]})]})},ut=()=>{if(r.value){let I;return t.createVNode(t.Teleport,{to:"body"},se(I=fe())?I:{default:()=>[I]})}else return fe()};return()=>{var I,j,pe,me,ve,ye,ge,he;return t.withDirectives(t.createVNode("div",{class:ot.value,ref:de,style:{width:`${a.value+"px"}`}},[t.createVNode("div",{class:nt.value},[o.slots.prepend&&t.createVNode("div",{class:T.e("prepend")},[(j=(I=o.slots).prepend)==null?void 0:j.call(I)]),t.createVNode("div",{class:lt.value},[st&&t.createVNode("span",{class:T.e("prefix")},[o.slots.prefix&&t.createVNode("div",null,[(me=(pe=o.slots).prefix)==null?void 0:me.call(pe)]),e.prefix&&t.createVNode(K,{size:"inherit",name:e.prefix},null)]),t.createVNode("input",{disabled:n.value,type:"text",onClick:Ge,class:at.value,placeholder:S.value,onInput:x,onFocus:O,onBlur:w,value:l.value,ref:We,onKeydown:tt},null),rt&&t.createVNode("span",{class:T.e("suffix")},[e.suffix&&t.createVNode(K,{size:"inherit",name:e.suffix},null),o.slots.suffix&&t.createVNode("div",null,[(ye=(ve=o.slots).suffix)==null?void 0:ye.call(ve)]),it.value&&t.createVNode(K,{size:e.size,class:C.em("clear","icon"),name:"close",onClick:k},null)])]),o.slots.append&&t.createVNode("div",{class:T.e("append")},[(he=(ge=o.slots).append)==null?void 0:he.call(ge)])]),ut()]),[[t.resolveDirective("click-outside"),q]])}}}),Xe={title:"AutoComplete \u81EA\u52A8\u8865\u5168",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.component(U.name,U)}};v.AutoComplete=U,v.DropdownPropsKey=M,v.autoCompleteProps=W,v.default=Xe,Object.defineProperty(v,"__esModule",{value:!0}),v[Symbol.toStringTag]="Module"});
|
package/auto-complete/style.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.5)}to{transform:rotate(360deg) scale(1)}}.devui-loading__mask{position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #adb0b8);opacity:.3}.devui-loading__wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:9999}.devui-loading--hidden{overflow:hidden}.devui-loading__text{margin-left:10px}.devui-loading__area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-loading__busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-loading__busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-loading__busy-default-spinner .devui-loading__bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-loading__busy-default-spinner .devui-loading__bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay__arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}@charset "UTF-8";.devui-auto-complete .devui-dropdown-menu,.devui-auto-complete__menu .devui-dropdown-menu{width:100%;left:0!important;top:0!important;margin:0!important}.devui-auto-complete .devui-dropdown-menu ul,.devui-auto-complete__menu .devui-dropdown-menu ul{width:100%;padding:0}.devui-auto-complete .devui-form-control{padding:4px
|
|
1
|
+
@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.5)}to{transform:rotate(360deg) scale(1)}}.devui-loading__mask{position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #adb0b8);opacity:.3}.devui-loading__wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:9999}.devui-loading--hidden{overflow:hidden}.devui-loading__text{margin-left:10px}.devui-loading__area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-loading__busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-loading__busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-loading__busy-default-spinner .devui-loading__bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-loading__busy-default-spinner .devui-loading__bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay__arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}@charset "UTF-8";.devui-auto-complete .devui-dropdown-menu,.devui-auto-complete__menu .devui-dropdown-menu{width:100%;left:0!important;top:0!important;margin:0!important;box-shadow:none}.devui-auto-complete .devui-dropdown-menu ul,.devui-auto-complete__menu .devui-dropdown-menu ul{width:100%;padding:0}.devui-auto-complete .devui-form-control{padding:4px 0;width:100%;background-color:transparent}.devui-auto-complete .active,.devui-auto-complete__menu .active{background:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-auto-complete .devui-dropdown-menu,.devui-auto-complete__menu .devui-dropdown-menu{width:100%;display:block}.devui-auto-complete .devui-auto-complete__dropdown-menu-cdk,.devui-auto-complete__menu .devui-auto-complete__dropdown-menu-cdk{position:static}.devui-auto-complete .devui-dropdown-item,.devui-auto-complete__menu .devui-dropdown-item{cursor:pointer;display:block;width:100%;padding:8px 12px;clear:both;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:14px}.devui-auto-complete .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected,.devui-auto-complete .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected .devui-auto-complete .devui-dropdown-menu .devui-dropdown-item:not(.disabled):hover,.devui-auto-complete__menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected,.devui-auto-complete .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected .devui-auto-complete__menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled):hover,.devui-auto-complete__menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected .devui-auto-complete .devui-dropdown-menu .devui-dropdown-item:not(.disabled):hover,.devui-auto-complete__menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected .devui-auto-complete__menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled):hover{color:var(--devui-list-item-active-text, #ffffff)!important;background-color:var(--devui-list-item-active-bg, #5e7ce0)!important}.devui-auto-complete .devui-auto-complete__no-result-template,.devui-auto-complete .devui-auto-complete__searching-template,.devui-auto-complete__menu .devui-auto-complete__no-result-template,.devui-auto-complete__menu .devui-auto-complete__searching-template{display:block;width:100%;padding:8px 12px;clear:both;border:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:not-allowed;background-color:var(--devui-disabled-bg, #f5f5f6);color:var(--devui-disabled-text, #adb0b8);line-height:14px}.devui-auto-complete .devui-auto-complete__no-result-template:hover,.devui-auto-complete .devui-auto-complete__no-result-template:active,.devui-auto-complete .devui-auto-complete__no-result-template:hover:active,.devui-auto-complete .devui-auto-complete__searching-template:hover,.devui-auto-complete .devui-auto-complete__searching-template:active,.devui-auto-complete .devui-auto-complete__searching-template:hover:active,.devui-auto-complete__menu .devui-auto-complete__no-result-template:hover,.devui-auto-complete__menu .devui-auto-complete__no-result-template:active,.devui-auto-complete__menu .devui-auto-complete__no-result-template:hover:active,.devui-auto-complete__menu .devui-auto-complete__searching-template:hover,.devui-auto-complete__menu .devui-auto-complete__searching-template:active,.devui-auto-complete__menu .devui-auto-complete__searching-template:hover:active{background-color:var(--devui-unavailable, #f5f5f6)}.devui-auto-complete .devui-dropdown-item.disabled,.devui-auto-complete .devui-dropdown-item.disabled:hover,.devui-auto-complete__menu .devui-dropdown-item.disabled,.devui-auto-complete__menu .devui-dropdown-item.disabled:hover{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-auto-complete ul.devui-auto-complete__list-unstyled,.devui-auto-complete__menu ul.devui-auto-complete__list-unstyled{margin:0;overflow-y:auto}.devui-auto-complete .devui-auto-complete__dropdown-bg,.devui-auto-complete__menu .devui-auto-complete__dropdown-bg{background:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-auto-complete .devui-auto-complete__popup-tips,.devui-auto-complete__menu .devui-auto-complete__popup-tips{color:var(--devui-text-weak, #575d6c);padding:4px 12px}.devui-auto-complete .devui-auto-complete__dropdown-latestSource ul,.devui-auto-complete__menu .devui-auto-complete__dropdown-latestSource ul{line-height:initial!important}.devui-auto-complete--sm{height:26px;font-size:var(--devui-font-size-sm, 12px)}.devui-auto-complete--md{height:28px;font-size:var(--devui-font-size, 12px)}.devui-auto-complete--lg{height:46px;font-size:var(--devui-font-size-lg, 14px)}.devui-auto-complete__clear--icon{cursor:pointer}.devui-auto-complete-input{display:inline-flex;align-items:center;justify-content:center;width:100%;box-sizing:border-box;height:100%}.devui-auto-complete-input__wrapper{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;padding:0 8px;border:1px solid var(--devui-form-control-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-form-control-bg, #ffffff);transition:border-color .3s var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-auto-complete-input__wrapper:not(.devui-auto-complete--disabled):hover{border-color:var(--devui-form-control-line-hover, #575d6c)}.devui-auto-complete-input__wrapper>input{border:none!important}.devui-auto-complete-input__prepend,.devui-auto-complete-input__append{color:var(--devui-text);position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:100%;padding:0 20px;white-space:nowrap;border:1px solid var(--devui-form-control-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-form-control-bg, #ffffff)}.devui-auto-complete-input__prepend .devui-button,.devui-auto-complete-input__prepend .devui-select .devui-select__input,.devui-auto-complete-input__append .devui-button,.devui-auto-complete-input__append .devui-select .devui-select__input{border:none;background-color:transparent;color:inherit}.devui-auto-complete-input__prepend .devui-button,.devui-auto-complete-input__prepend .devui-select__selection,.devui-auto-complete-input__append .devui-button,.devui-auto-complete-input__append .devui-select__selection{display:inline-block;margin:0 -20px}.devui-auto-complete--focus .devui-auto-complete-input__wrapper{border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-auto-complete--disabled{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0);cursor:not-allowed}.devui-auto-complete--disabled .devui-dropdown-origin{background-color:transparent!important}.devui-auto-complete--prepend .devui-auto-complete-input__wrapper{border-top-left-radius:0;border-bottom-left-radius:0}.devui-auto-complete--append .devui-auto-complete-input__wrapper{border-top-right-radius:0;border-bottom-right-radius:0}.devui-auto-complete-slot{display:inline-flex;width:100%;align-items:stretch}.devui-auto-complete-slot .devui-auto-complete-input__prepend{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.devui-auto-complete-slot .devui-auto-complete-input__append{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.devui-auto-complete-slot .devui-auto-complete-input__prefix,.devui-auto-complete-slot .devui-auto-complete-input__suffix{display:inline-flex;white-space:nowrap;flex-shrink:0;flex-wrap:nowrap;align-items:center}.devui-auto-complete-slot .devui-auto-complete-input__prefix>*{margin-right:8px}.devui-auto-complete-slot .devui-auto-complete-input__suffix>*{margin-left:8px}.devui-svg-icon{vertical-align:middle}
|