vue-devui 1.0.0-rc.2 → 1.0.0-rc.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/README.md +9 -0
  2. package/auto-complete/index.es.js +132 -58
  3. package/auto-complete/index.umd.js +5 -3
  4. package/auto-complete/style.css +1 -1
  5. package/avatar/index.es.js +77 -81
  6. package/avatar/index.umd.js +1 -1
  7. package/button/index.es.js +23 -15
  8. package/button/index.umd.js +1 -1
  9. package/button/style.css +1 -1
  10. package/card/index.es.js +3 -6
  11. package/card/index.umd.js +1 -1
  12. package/checkbox/index.es.js +5 -11
  13. package/checkbox/index.umd.js +1 -1
  14. package/comment/index.es.js +4 -6
  15. package/comment/index.umd.js +1 -1
  16. package/countdown/index.es.js +3 -6
  17. package/countdown/index.umd.js +1 -1
  18. package/{tag-input → date-picker}/index.d.ts +0 -0
  19. package/date-picker/index.es.js +1151 -0
  20. package/date-picker/index.umd.js +1 -0
  21. package/date-picker/package.json +7 -0
  22. package/date-picker/style.css +1 -0
  23. package/drawer/index.d.ts +7 -0
  24. package/drawer/index.es.js +236 -0
  25. package/drawer/index.umd.js +1 -0
  26. package/{tag-input → drawer}/package.json +1 -1
  27. package/drawer/style.css +1 -0
  28. package/dropdown/index.d.ts +7 -0
  29. package/dropdown/index.es.js +716 -0
  30. package/dropdown/index.umd.js +1 -0
  31. package/dropdown/package.json +7 -0
  32. package/dropdown/style.css +1 -0
  33. package/editable-select/index.es.js +2 -5
  34. package/editable-select/index.umd.js +1 -1
  35. package/form/index.d.ts +7 -0
  36. package/form/index.es.js +7888 -0
  37. package/form/index.umd.js +27 -0
  38. package/form/package.json +7 -0
  39. package/form/style.css +1 -0
  40. package/grid/index.es.js +30 -36
  41. package/grid/index.umd.js +1 -1
  42. package/image-preview/index.es.js +19 -19
  43. package/image-preview/index.umd.js +1 -1
  44. package/input/index.es.js +2 -5
  45. package/input/index.umd.js +1 -1
  46. package/input-number/index.d.ts +7 -0
  47. package/input-number/index.es.js +229 -0
  48. package/input-number/index.umd.js +1 -0
  49. package/input-number/package.json +7 -0
  50. package/input-number/style.css +1 -0
  51. package/layout/index.es.js +9 -22
  52. package/layout/index.umd.js +1 -1
  53. package/loading/index.es.js +40 -25
  54. package/loading/index.umd.js +1 -1
  55. package/modal/index.es.js +70 -50
  56. package/modal/index.umd.js +1 -1
  57. package/notification/index.es.js +100 -10
  58. package/notification/index.umd.js +1 -1
  59. package/notification/style.css +1 -1
  60. package/nuxt/components/Column.js +3 -0
  61. package/nuxt/components/DatePicker.js +3 -0
  62. package/nuxt/components/Drawer.js +3 -0
  63. package/nuxt/components/DrawerService.js +3 -0
  64. package/nuxt/components/Dropdown.js +3 -0
  65. package/nuxt/components/DropdownMenu.js +3 -0
  66. package/nuxt/components/DropdownPropsKey.js +3 -0
  67. package/nuxt/components/Form.js +3 -0
  68. package/nuxt/components/FormControl.js +3 -0
  69. package/nuxt/components/FormItem.js +3 -0
  70. package/nuxt/components/FormLabel.js +3 -0
  71. package/nuxt/components/FormOperation.js +3 -0
  72. package/nuxt/components/InputNumber.js +3 -0
  73. package/nuxt/components/LoadingOptions.js +3 -0
  74. package/nuxt/components/Select.js +3 -0
  75. package/nuxt/components/StickSlider.js +3 -0
  76. package/nuxt/components/Tab.js +3 -0
  77. package/nuxt/components/Table.js +3 -0
  78. package/nuxt/components/Tabs.js +3 -0
  79. package/nuxt/components/Tooltip.js +3 -0
  80. package/nuxt/components/autoCompleteProps.js +3 -0
  81. package/nuxt/components/avatarProps.js +3 -0
  82. package/nuxt/components/cardProps.js +3 -0
  83. package/nuxt/components/checkboxGroupInjectionKey.js +3 -0
  84. package/nuxt/components/checkboxGroupProps.js +3 -0
  85. package/nuxt/components/checkboxProps.js +3 -0
  86. package/nuxt/components/colProps.js +3 -0
  87. package/nuxt/components/colPropsBaseClass.js +3 -0
  88. package/nuxt/components/colPropsBaseStyle.js +3 -0
  89. package/nuxt/components/commentProps.js +3 -0
  90. package/nuxt/components/countdownProps.js +3 -0
  91. package/nuxt/components/dropdownMenuProps.js +3 -0
  92. package/nuxt/components/editableSelectProps.js +3 -0
  93. package/nuxt/components/imagePreviewProps.js +3 -0
  94. package/nuxt/components/inputProps.js +3 -0
  95. package/nuxt/components/loadingProps.js +3 -0
  96. package/nuxt/components/modalProps.js +3 -0
  97. package/nuxt/components/progressProps.js +3 -0
  98. package/nuxt/components/rateProps.js +3 -0
  99. package/nuxt/components/readTipProps.js +3 -0
  100. package/nuxt/components/resultProps.js +3 -0
  101. package/nuxt/components/rowProps.js +3 -0
  102. package/nuxt/components/screenSizes.js +3 -0
  103. package/nuxt/components/skeletonProps.js +3 -0
  104. package/nuxt/components/sliderProps.js +3 -0
  105. package/nuxt/components/splitterProps.js +3 -0
  106. package/nuxt/components/statisticProps.js +3 -0
  107. package/nuxt/components/switchProps.js +3 -0
  108. package/nuxt/components/tabsProps.js +3 -0
  109. package/nuxt/components/textareaProps.js +3 -0
  110. package/nuxt/components/timeAxisProps.js +3 -0
  111. package/nuxt/components/tooltipProps.js +3 -0
  112. package/overlay/index.es.js +20 -8
  113. package/overlay/index.umd.js +1 -1
  114. package/package.json +2 -2
  115. package/pagination/index.es.js +14 -13
  116. package/pagination/index.umd.js +1 -1
  117. package/popover/index.es.js +20 -8
  118. package/popover/index.umd.js +12 -12
  119. package/progress/index.es.js +33 -35
  120. package/progress/index.umd.js +3 -3
  121. package/rate/index.es.js +31 -41
  122. package/rate/index.umd.js +1 -1
  123. package/read-tip/index.es.js +34 -34
  124. package/read-tip/index.umd.js +1 -1
  125. package/read-tip/style.css +1 -1
  126. package/result/index.es.js +2 -5
  127. package/result/index.umd.js +1 -1
  128. package/search/index.es.js +11 -11
  129. package/search/index.umd.js +8 -8
  130. package/select/index.d.ts +7 -0
  131. package/select/index.es.js +696 -0
  132. package/select/index.umd.js +1 -0
  133. package/select/package.json +7 -0
  134. package/select/style.css +1 -0
  135. package/skeleton/index.es.js +9 -12
  136. package/skeleton/index.umd.js +1 -1
  137. package/slider/index.es.js +1 -4
  138. package/slider/index.umd.js +1 -1
  139. package/splitter/index.es.js +23 -14
  140. package/splitter/index.umd.js +15 -15
  141. package/statistic/index.es.js +7 -18
  142. package/statistic/index.umd.js +1 -1
  143. package/style.css +1 -1
  144. package/switch/index.es.js +4 -7
  145. package/switch/index.umd.js +1 -1
  146. package/switch/style.css +1 -1
  147. package/table/index.d.ts +7 -0
  148. package/table/index.es.js +2376 -0
  149. package/table/index.umd.js +1 -0
  150. package/table/package.json +7 -0
  151. package/table/style.css +1 -0
  152. package/tabs/index.d.ts +7 -0
  153. package/tabs/index.es.js +194 -0
  154. package/tabs/index.umd.js +1 -0
  155. package/tabs/package.json +7 -0
  156. package/tabs/style.css +1 -0
  157. package/textarea/index.es.js +2 -5
  158. package/textarea/index.umd.js +1 -1
  159. package/timeline/index.es.js +10 -16
  160. package/timeline/index.umd.js +1 -1
  161. package/tooltip/index.d.ts +7 -0
  162. package/tooltip/index.es.js +5847 -0
  163. package/tooltip/index.umd.js +27 -0
  164. package/tooltip/package.json +7 -0
  165. package/tooltip/style.css +1 -0
  166. package/upload/index.es.js +160 -67
  167. package/upload/index.umd.js +1 -1
  168. package/upload/style.css +1 -1
  169. package/vue-devui.es.js +16936 -24821
  170. package/vue-devui.umd.js +24 -22
  171. package/nuxt/components/TagInput.js +0 -3
  172. package/tag-input/index.es.js +0 -331
  173. package/tag-input/index.umd.js +0 -1
  174. package/tag-input/style.css +0 -1
package/README.md CHANGED
@@ -111,6 +111,15 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
111
111
  <td align="center"><a href="https://github.com/unfound"><img src="https://avatars.githubusercontent.com/u/32935349?v=4?s=100" width="100px;" alt=""/><br /><sub><b>unfound</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=unfound" title="Code">💻</a></td>
112
112
  <td align="center"><a href="https://github.com/Roading"><img src="https://avatars.githubusercontent.com/u/7751774?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Roading</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=Roading" title="Code">💻</a></td>
113
113
  <td align="center"><a href="http://inreasons.cn"><img src="https://avatars.githubusercontent.com/u/47918504?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Chestnut</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=banlify" title="Code">💻</a></td>
114
+ <td align="center"><a href="https://github.com/c0dedance"><img src="https://avatars.githubusercontent.com/u/38075730?v=4?s=100" width="100px;" alt=""/><br /><sub><b>c0dedance</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=c0dedance" title="Code">💻</a></td>
115
+ <td align="center"><a href="https://github.com/duqingyu"><img src="https://avatars.githubusercontent.com/u/30541930?v=4?s=100" width="100px;" alt=""/><br /><sub><b>杜庆愉</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=duqingyu" title="Code">💻</a></td>
116
+ <td align="center"><a href="https://github.com/linxiang07"><img src="https://avatars.githubusercontent.com/u/40119767?v=4?s=100" width="100px;" alt=""/><br /><sub><b>linxiang</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=linxiang07" title="Code">💻</a></td>
117
+ </tr>
118
+ <tr>
119
+ <td align="center"><a href="https://github.com/nextniko"><img src="https://avatars.githubusercontent.com/u/40553790?v=4?s=100" width="100px;" alt=""/><br /><sub><b>掘墓忍者</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=nextniko" title="Code">💻</a></td>
120
+ <td align="center"><a href="https://github.com/zcj996"><img src="https://avatars.githubusercontent.com/u/52314078?v=4?s=100" width="100px;" alt=""/><br /><sub><b>一个大胖子</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=zcj996" title="Code">💻</a></td>
121
+ <td align="center"><a href="https://bandism.net/"><img src="https://avatars.githubusercontent.com/u/22633385?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ikko Ashimine</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=eltociear" title="Documentation">📖</a></td>
122
+ <td align="center"><a href="https://xiaoborao.github.io/"><img src="https://avatars.githubusercontent.com/u/27467603?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Bob</b></sub></a><br /><a href="https://github.com/DevCloudFE/vue-devui/commits?author=xiaoboRao" title="Code">💻</a></td>
114
123
  </tr>
115
124
  </table>
116
125
 
@@ -19,8 +19,13 @@ var __publicField = (obj, key, value) => {
19
19
  return value;
20
20
  };
21
21
  import { ref, nextTick, defineComponent, createVNode, h, render, inject, withDirectives, createTextVNode, resolveDirective, vShow, unref, watch, onUnmounted, mergeProps, toRefs, provide, Teleport, Transition, isVNode } from "vue";
22
- import { shift, offset, autoPlacement, arrow, computePosition } from "@floating-ui/dom";
23
- const defaultFormatter = (item) => item ? item.label || item.toString() : "";
22
+ import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
23
+ const defaultFormatter = (item) => {
24
+ if (typeof item === "string") {
25
+ return item;
26
+ }
27
+ return item !== null ? item.label || item.toString() : "";
28
+ };
24
29
  const defaultValueParse = (item) => item;
25
30
  const autoCompleteProps = {
26
31
  modelValue: {
@@ -35,6 +40,10 @@ const autoCompleteProps = {
35
40
  type: Boolean,
36
41
  default: false
37
42
  },
43
+ appendToBody: {
44
+ type: Boolean,
45
+ default: false
46
+ },
38
47
  position: {
39
48
  type: Array,
40
49
  default: ["bottom-end"]
@@ -145,9 +154,20 @@ function useCustomTemplate(ctx2, modelValue) {
145
154
  return { customRenderSolts };
146
155
  }
147
156
  function useSearchFn(ctx2, allowEmptyValueSearch, source, searchFn, formatter) {
148
- const searchList = ref();
157
+ const searchList = ref([]);
149
158
  const showNoResultItemTemplate = ref(false);
150
- const handleSearch = async (term, enableLazyLoad) => {
159
+ const defaultSearchFn = (term) => {
160
+ const arr = [];
161
+ source.value.forEach((item) => {
162
+ let cur = formatter.value(item);
163
+ cur = cur.toLowerCase();
164
+ if (cur.startsWith(term)) {
165
+ arr.push(item);
166
+ }
167
+ });
168
+ return arr;
169
+ };
170
+ const handleSearch = async (term, enableLazyLoad = false) => {
151
171
  if (term === "" && !allowEmptyValueSearch.value) {
152
172
  searchList.value = [];
153
173
  showNoResultItemTemplate.value = false;
@@ -158,13 +178,7 @@ function useSearchFn(ctx2, allowEmptyValueSearch, source, searchFn, formatter) {
158
178
  if (enableLazyLoad) {
159
179
  arr = source.value;
160
180
  } else if (!searchFn.value) {
161
- source.value.forEach((item) => {
162
- let cur = formatter.value(item);
163
- cur = cur.toLowerCase();
164
- if (cur.startsWith(term)) {
165
- arr.push(item);
166
- }
167
- });
181
+ arr = defaultSearchFn(term);
168
182
  } else {
169
183
  arr = await searchFn.value(term);
170
184
  }
@@ -193,13 +207,13 @@ function useInputHandle(ctx2, searchList, showNoResultItemTemplate, modelValue,
193
207
  const searchStatus = ref(false);
194
208
  const debounce = (cb, time) => {
195
209
  let timer;
196
- return (...args) => {
210
+ return (arg) => {
197
211
  if (timer) {
198
212
  clearTimeout(timer);
199
213
  }
200
214
  timer = setTimeout(async () => {
201
215
  searchStatus.value = true;
202
- await cb(...args);
216
+ await cb(arg);
203
217
  searchStatus.value = false;
204
218
  }, time);
205
219
  };
@@ -218,7 +232,7 @@ function useInputHandle(ctx2, searchList, showNoResultItemTemplate, modelValue,
218
232
  };
219
233
  const onFocus = () => {
220
234
  handleSearch(modelValue.value);
221
- recentlyFocus(latestSource.value);
235
+ recentlyFocus(latestSource == null ? void 0 : latestSource.value);
222
236
  transInputFocusEmit.value && transInputFocusEmit.value();
223
237
  };
224
238
  const handleClose = () => {
@@ -250,11 +264,22 @@ function useInputHandle(ctx2, searchList, showNoResultItemTemplate, modelValue,
250
264
  }
251
265
  function useSelectHandle(ctx2, searchList, selectValue, handleSearch, formatter, handleClose) {
252
266
  const selectedIndex = ref(0);
253
- const getListIndex = (item) => {
267
+ const getListIndex = (cur) => {
254
268
  if (searchList.value.length === 0) {
255
269
  return 0;
256
270
  }
257
- const ind = searchList.value.indexOf(item);
271
+ let ind = 0;
272
+ searchList.value.forEach((item, index2) => {
273
+ if (typeof item === "string") {
274
+ if (item === cur) {
275
+ ind = index2;
276
+ }
277
+ } else {
278
+ if (String(item.label) === cur) {
279
+ ind = index2;
280
+ }
281
+ }
282
+ });
258
283
  return ind === -1 ? 0 : ind;
259
284
  };
260
285
  const selectOptionClick = async (item) => {
@@ -285,11 +310,11 @@ function useLazyHandle(props, ctx2, handleSearch) {
285
310
  showLoading.value = true;
286
311
  }
287
312
  };
288
- ctx2.expose({ loadFinish });
289
313
  async function loadFinish() {
290
314
  await handleSearch(props.modelValue, props.enableLazyLoad);
291
315
  showLoading.value = false;
292
316
  }
317
+ ctx2.expose({ loadFinish });
293
318
  return {
294
319
  showLoading,
295
320
  dropDownRef,
@@ -350,14 +375,13 @@ function useKeyBoardHandle(dropDownRef, visible, searchList, selectedIndex, sear
350
375
  handlekeyDown
351
376
  };
352
377
  }
353
- var autoComplete = "";
354
378
  class View {
355
379
  constructor() {
356
380
  __publicField(this, "top", "50%");
357
381
  __publicField(this, "left", "50%");
358
382
  }
359
383
  }
360
- const componentProps = {
384
+ const loadingProps = {
361
385
  message: String,
362
386
  backdrop: Boolean,
363
387
  view: {
@@ -370,7 +394,7 @@ const componentProps = {
370
394
  default: false
371
395
  }
372
396
  };
373
- class LoadingProps {
397
+ class LoadingOptions {
374
398
  constructor() {
375
399
  __publicField(this, "target");
376
400
  __publicField(this, "message");
@@ -385,7 +409,7 @@ var loading = "";
385
409
  var Loading = defineComponent({
386
410
  name: "DLoading",
387
411
  inheritAttrs: false,
388
- props: componentProps,
412
+ props: loadingProps,
389
413
  setup(props) {
390
414
  const style = {
391
415
  top: props.view.top,
@@ -444,8 +468,8 @@ var Loading = defineComponent({
444
468
  }
445
469
  });
446
470
  const COMPONENT_CONTAINER_SYMBOL = Symbol("dev_component_container");
447
- function createComponent(Component, props, children = null) {
448
- const vnode = h(Component, __spreadValues({}, props), children);
471
+ function createComponent(component, props, children = null) {
472
+ const vnode = h(component, __spreadValues({}, props), children);
449
473
  const container = document.createElement("div");
450
474
  vnode[COMPONENT_CONTAINER_SYMBOL] = container;
451
475
  render(vnode, container);
@@ -457,14 +481,18 @@ function unmountComponent(ComponnetInstance) {
457
481
  const loadingConstructor = defineComponent(Loading);
458
482
  const cacheInstance = /* @__PURE__ */ new WeakSet();
459
483
  const isEmpty = (val) => {
460
- if (!val)
484
+ if (!val) {
461
485
  return true;
462
- if (Array.isArray(val))
486
+ }
487
+ if (Array.isArray(val)) {
463
488
  return val.length === 0;
464
- if (val instanceof Set || val instanceof Map)
489
+ }
490
+ if (val instanceof Set || val instanceof Map) {
465
491
  return val.size === 0;
466
- if (val instanceof Promise)
492
+ }
493
+ if (val instanceof Promise) {
467
494
  return false;
495
+ }
468
496
  if (typeof val === "object") {
469
497
  try {
470
498
  return Object.keys(val).length === 0;
@@ -498,11 +526,13 @@ const unmount = (el) => {
498
526
  unmountComponent(el.instance);
499
527
  };
500
528
  const toggleLoading = (el, binding) => {
529
+ var _a, _b, _c;
501
530
  if (binding.value) {
502
531
  const vals = isPromise(binding.value);
503
- if (vals === "error")
532
+ if (vals === "error") {
504
533
  return;
505
- el.instance.proxy.open();
534
+ }
535
+ (_c = (_b = (_a = el == null ? void 0 : el.instance) == null ? void 0 : _a.proxy) == null ? void 0 : _b.open) == null ? void 0 : _c.call(_b);
506
536
  el.appendChild(el.mask);
507
537
  cacheInstance.add(el);
508
538
  if (vals) {
@@ -525,13 +555,14 @@ const removeAttribute = (el) => {
525
555
  el.removeAttribute("loadingtemplateref");
526
556
  };
527
557
  const handleProps = (el, vprops) => {
528
- const props = __spreadValues(__spreadValues({}, new LoadingProps()), vprops);
558
+ var _a;
559
+ const props = __spreadValues(__spreadValues({}, new LoadingOptions()), vprops);
529
560
  const loadingTemplateRef = props.loadingTemplateRef;
530
561
  const loadingInstance = createComponent(loadingConstructor, __spreadValues({}, props), loadingTemplateRef ? () => loadingTemplateRef : null);
531
562
  el.style.position = props.positionType;
532
563
  el.options = props;
533
564
  el.instance = loadingInstance;
534
- el.mask = loadingInstance.proxy.$el;
565
+ el.mask = (_a = loadingInstance == null ? void 0 : loadingInstance.proxy) == null ? void 0 : _a.$el;
535
566
  };
536
567
  const loadingDirective = {
537
568
  mounted: function(el, binding, vnode) {
@@ -540,8 +571,9 @@ const loadingDirective = {
540
571
  !isEmpty(binding.value) && toggleLoading(el, binding);
541
572
  },
542
573
  updated: function(el, binding, vnode) {
543
- if (!isEmpty(binding.value) && cacheInstance.has(el) || isEmpty(binding.value) && !cacheInstance.has(el))
574
+ if (!isEmpty(binding.value) && cacheInstance.has(el) || isEmpty(binding.value) && !cacheInstance.has(el)) {
544
575
  return;
576
+ }
545
577
  !cacheInstance.has(el) && handleProps(el, vnode.props);
546
578
  removeAttribute(el);
547
579
  toggleLoading(el, binding);
@@ -566,7 +598,8 @@ var DAutoCompleteDropdown = defineComponent({
566
598
  showNoResultItemTemplate,
567
599
  latestSource,
568
600
  modelValue,
569
- hoverIndex
601
+ hoverIndex,
602
+ valueParser
570
603
  } = propsData;
571
604
  const {
572
605
  disabled,
@@ -576,7 +609,8 @@ var DAutoCompleteDropdown = defineComponent({
576
609
  isSearching
577
610
  } = propsData.props;
578
611
  const onSelect = (item) => {
579
- if (item[disabledKey]) {
612
+ item = valueParser.value(item);
613
+ if (typeof item === "object" && item[disabledKey]) {
580
614
  return;
581
615
  }
582
616
  selectOptionClick(item);
@@ -601,7 +635,7 @@ var DAutoCompleteDropdown = defineComponent({
601
635
  return createVNode("li", {
602
636
  "onClick": () => onSelect(item),
603
637
  "class": ["devui-dropdown-item", selectedIndex.value === index2 && "selected", {
604
- "disabled": disabledKey && item[disabledKey]
638
+ "disabled": disabledKey && typeof item === "object" && item[disabledKey]
605
639
  }, {
606
640
  "devui-dropdown-bg": hoverIndex.value === index2
607
641
  }],
@@ -688,6 +722,9 @@ const flexibleOverlayProps = {
688
722
  type: [Number, Object],
689
723
  default: 8
690
724
  },
725
+ shiftOffset: {
726
+ type: Number
727
+ },
691
728
  align: {
692
729
  type: String,
693
730
  default: null
@@ -733,6 +770,7 @@ function adjustArrowPosition(isArrowCenter, point, placement, originRect) {
733
770
  function useOverlay(props, emit) {
734
771
  const overlayRef = ref();
735
772
  const arrowRef = ref();
773
+ let originParent = null;
736
774
  const updateArrowPosition = (arrowEl, placement, point, overlayEl) => {
737
775
  const { x, y } = adjustArrowPosition(props.isArrowCenter, point, placement, overlayEl.getBoundingClientRect());
738
776
  const staticSide = {
@@ -754,7 +792,6 @@ function useOverlay(props, emit) {
754
792
  const overlayEl = unref(overlayRef.value);
755
793
  const arrowEl = unref(arrowRef.value);
756
794
  const middleware = [
757
- shift(),
758
795
  offset(props.offset),
759
796
  autoPlacement({
760
797
  alignment: props.align,
@@ -762,30 +799,39 @@ function useOverlay(props, emit) {
762
799
  })
763
800
  ];
764
801
  props.showArrow && middleware.push(arrow({ element: arrowEl }));
802
+ props.shiftOffset !== void 0 && middleware.push(shift());
765
803
  const { x, y, placement, middlewareData } = await computePosition(hostEl, overlayEl, {
766
804
  strategy: "fixed",
767
805
  middleware
768
806
  });
807
+ let applyX = x;
808
+ let applyY = y;
809
+ if (props.shiftOffset !== void 0) {
810
+ const { x: shiftX, y: shiftY } = middlewareData.shift;
811
+ shiftX < 0 && (applyX -= props.shiftOffset);
812
+ shiftX > 0 && (applyX += props.shiftOffset);
813
+ shiftY < 0 && (applyY -= props.shiftOffset);
814
+ shiftY > 0 && (applyY += props.shiftOffset);
815
+ }
769
816
  emit("positionChange", placement);
770
- Object.assign(overlayEl.style, { top: `${y}px`, left: `${x}px` });
817
+ Object.assign(overlayEl.style, { top: `${applyY}px`, left: `${applyX}px` });
771
818
  props.showArrow && updateArrowPosition(arrowEl, placement, middlewareData.arrow, overlayEl);
772
819
  };
773
820
  watch(() => props.modelValue, () => {
774
- const originParent = getScrollParent(props.origin);
775
821
  if (props.modelValue && props.origin) {
822
+ originParent = getScrollParent(props.origin);
776
823
  nextTick(updatePosition);
777
- originParent.addEventListener("scroll", updatePosition);
824
+ originParent == null ? void 0 : originParent.addEventListener("scroll", updatePosition);
778
825
  originParent !== window && window.addEventListener("scroll", updatePosition);
779
826
  window.addEventListener("resize", updatePosition);
780
827
  } else {
781
- originParent.removeEventListener("scroll", updatePosition);
828
+ originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
782
829
  originParent !== window && window.removeEventListener("scroll", updatePosition);
783
830
  window.removeEventListener("resize", updatePosition);
784
831
  }
785
832
  });
786
833
  onUnmounted(() => {
787
- const originParent = getScrollParent(props.origin);
788
- originParent.removeEventListener("scroll", updatePosition);
834
+ originParent == null ? void 0 : originParent.removeEventListener("scroll", updatePosition);
789
835
  originParent !== window && window.removeEventListener("scroll", updatePosition);
790
836
  window.removeEventListener("resize", updatePosition);
791
837
  });
@@ -823,6 +869,7 @@ const FlexibleOverlay = defineComponent({
823
869
  };
824
870
  }
825
871
  });
872
+ var autoComplete = "";
826
873
  function _isSlot(s) {
827
874
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
828
875
  }
@@ -840,6 +887,7 @@ var AutoComplete = defineComponent({
840
887
  width,
841
888
  delay,
842
889
  allowEmptyValueSearch,
890
+ appendToBody,
843
891
  formatter,
844
892
  transInputFocusEmit,
845
893
  selectValue,
@@ -847,7 +895,8 @@ var AutoComplete = defineComponent({
847
895
  searchFn,
848
896
  position,
849
897
  latestSource,
850
- showAnimation
898
+ showAnimation,
899
+ valueParser
851
900
  } = toRefs(props);
852
901
  const {
853
902
  handleSearch,
@@ -894,18 +943,46 @@ var AutoComplete = defineComponent({
894
943
  latestSource,
895
944
  modelValue,
896
945
  showNoResultItemTemplate,
897
- hoverIndex
946
+ hoverIndex,
947
+ valueParser
898
948
  });
899
949
  const origin = ref();
900
950
  const renderDropdown = () => {
901
- let _slot;
902
- return createVNode(Teleport, {
903
- "to": "body"
904
- }, {
905
- default: () => [createVNode(Transition, {
951
+ if (appendToBody.value) {
952
+ let _slot;
953
+ return createVNode(Teleport, {
954
+ "to": "body"
955
+ }, {
956
+ default: () => [createVNode(Transition, {
957
+ "name": showAnimation ? "fade" : ""
958
+ }, {
959
+ default: () => [createVNode(FlexibleOverlay, {
960
+ "show-arrow": true,
961
+ "origin": origin.value,
962
+ "position": position.value,
963
+ "modelValue": visible.value,
964
+ "onUpdate:modelValue": ($event) => visible.value = $event
965
+ }, {
966
+ default: () => [createVNode("div", {
967
+ "class": "devui-auto-complete-menu",
968
+ "style": {
969
+ width: `
970
+ ${width.value + "px"}
971
+ `
972
+ }
973
+ }, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot = customRenderSolts()) ? _slot : {
974
+ default: () => [_slot]
975
+ })])]
976
+ })]
977
+ })]
978
+ });
979
+ } else {
980
+ let _slot2;
981
+ return createVNode(Transition, {
906
982
  "name": showAnimation ? "fade" : ""
907
983
  }, {
908
984
  default: () => [createVNode(FlexibleOverlay, {
985
+ "show-arrow": true,
909
986
  "origin": origin.value,
910
987
  "position": position.value,
911
988
  "modelValue": visible.value,
@@ -918,12 +995,12 @@ var AutoComplete = defineComponent({
918
995
  ${width.value + "px"}
919
996
  `
920
997
  }
921
- }, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot = customRenderSolts()) ? _slot : {
922
- default: () => [_slot]
998
+ }, [createVNode(DAutoCompleteDropdown, null, _isSlot(_slot2 = customRenderSolts()) ? _slot2 : {
999
+ default: () => [_slot2]
923
1000
  })])]
924
1001
  })]
925
- })]
926
- });
1002
+ });
1003
+ }
927
1004
  };
928
1005
  return () => {
929
1006
  return withDirectives(createVNode("div", {
@@ -947,15 +1024,12 @@ var AutoComplete = defineComponent({
947
1024
  };
948
1025
  }
949
1026
  });
950
- AutoComplete.install = function(app) {
951
- app.component(AutoComplete.name, AutoComplete);
952
- };
953
1027
  var index = {
954
1028
  title: "AutoComplete \u81EA\u52A8\u8865\u5168",
955
1029
  category: "\u6570\u636E\u5F55\u5165",
956
1030
  status: "100%",
957
1031
  install(app) {
958
- app.use(AutoComplete);
1032
+ app.component(AutoComplete.name, AutoComplete);
959
1033
  }
960
1034
  };
961
- export { AutoComplete, index as default };
1035
+ export { AutoComplete, DropdownPropsKey, autoCompleteProps, index as default };
@@ -1,3 +1,5 @@
1
- var Pe=Object.defineProperty;var te=Object.getOwnPropertySymbols;var Re=Object.prototype.hasOwnProperty,Oe=Object.prototype.propertyIsEnumerable;var B=(p,t,m)=>t in p?Pe(p,t,{enumerable:!0,configurable:!0,writable:!0,value:m}):p[t]=m,k=(p,t)=>{for(var m in t||(t={}))Re.call(t,m)&&B(p,m,t[m]);if(te)for(var m of te(t))Oe.call(t,m)&&B(p,m,t[m]);return p};var T=(p,t,m)=>(B(p,typeof t!="symbol"?t+"":t,m),m);(function(p,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):(p=typeof globalThis!="undefined"?globalThis:p||self,t(p.index={},p.Vue,p.dom))})(this,function(p,t,m){"use strict";const oe={modelValue:{type:String,default:""},source:{type:Array,default:null},allowEmptyValueSearch:{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=>e?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 ne(e,n){const o=(a,s)=>{const u={item:a,index:s};return e.slots.item?e.slots.item(u):null},l=()=>e.slots.nothing?e.slots.nothing(n.value):null,i=()=>e.slots.searching?e.slots.searching(n.value):null;return{customRenderSolts:()=>{const a={};return e.slots.item&&(a.itemTemplate=o),e.slots.nothing&&(a.noResultItemTemplate=l),e.slots.searching&&(a.searchingTemplate=i),a}}}function le(e,n,o,l,i){const r=t.ref(),a=t.ref(!1);return{handleSearch:async(d,c)=>{if(d===""&&!n.value){r.value=[],a.value=!1;return}let v=[];d=d.toLowerCase(),c?v=o.value:l.value?v=await l.value(d):o.value.forEach(f=>{let g=i.value(f);g=g.toLowerCase(),g.startsWith(d)&&v.push(f)}),r.value=v,r.value.length===0?a.value=!0:a.value=!1},recentlyFocus:d=>{d&&(r.value=d)},searchList:r,showNoResultItemTemplate:a}}function ae(e,n,o,l,i,r,a,s,u,d){const c=t.ref(!1),v=t.ref(),f=t.ref(!1),h=((N,y)=>{let b;return(...E)=>{b&&clearTimeout(b),b=setTimeout(async()=>{f.value=!0,await N(...E),f.value=!1},y)}})(async N=>{await a(N),c.value=!0},r.value),V=N=>{const y=N.target;f.value=!1,o.value=!1,e.emit("update:modelValue",y.value),h(y.value)},C=()=>{a(l.value),u(d.value),s.value&&s.value()},S=()=>{c.value=!1,f.value=!1,o.value=!1};return{handleClose:S,toggleMenu:()=>{i.value||(c.value?S():(c.value=!0,e.slots.noResultItemTemplate&&n.value.length===0&&l.value.trim()!==""&&(o.value=!0)))},onInput:V,onFocus:C,inputRef:v,visible:c,searchStatus:f}}function re(e,n,o,l,i,r){const a=t.ref(0),s=d=>{if(n.value.length===0)return 0;const c=n.value.indexOf(d);return c===-1?0:c};return{selectedIndex:a,selectOptionClick:async d=>{const c=i.value(d);e.emit("update:modelValue",c),r(),await l(c),a.value=s(c),o.value&&o.value(c)}}}function ie(e,n,o){const l=t.ref(!1),i=t.ref(),r=()=>{if(!e.enableLazyLoad&&l)return;const s=i.value,u=s.scrollHeight,d=s.clientHeight+s.scrollTop;d>=u&&d>=e.maxHeight&&(e.loadMore(),l.value=!0)};n.expose({loadFinish:a});async function a(){await o(e.modelValue,e.enableLazyLoad),l.value=!1}return{showLoading:l,dropDownRef:i,loadMore:r}}function se(e,n,o,l,i,r,a,s){var v;const u=t.ref((v=l.value)!=null?v:0),d=f=>{const g=e.value,w=g.children[f];t.nextTick(()=>{if(w.scrollIntoViewIfNeeded)w.scrollIntoViewIfNeeded(!1);else{const h=g.getBoundingClientRect(),V=w.getBoundingClientRect();(V.bottom>h.bottom||V.top<h.top)&&w.scrollIntoView(!1)}})};return{hoverIndex:u,handlekeyDown:f=>{var h;const g=f.key||f.code;if(g==="Escape"&&(n.value&&o.value.length||i.value||r.value)){s();return}const w=n.value&&o.value.length&&!i.value&&!r.value;if(g==="ArrowDown"&&w){if(u.value===o.value.length-1){u.value=0,d(u.value);return}u.value=u.value+1,d(u.value)}else if(g==="ArrowUp"&&w){if(u.value===0){u.value=o.value.length-1,d(u.value);return}u.value=u.value-1,d(u.value)}if(g==="Enter"&&w){a(o.value[u.value]),u.value=(h=l.value)!=null?h:0;return}}}}var je="";class j{constructor(){T(this,"top","50%");T(this,"left","50%")}}const ue={message:String,backdrop:Boolean,view:{type:Object,default:()=>new j},zIndex:Number,isFull:{type:Boolean,default:!1}};class de{constructor(){T(this,"target");T(this,"message");T(this,"loadingTemplateRef");T(this,"backdrop",!0);T(this,"positionType","relative");T(this,"view",new j);T(this,"zIndex")}}var He="",ce=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:ue,setup(e){const n={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(n.background="none");const o=t.ref(!1);return{style:n,isShow:o,open:()=>{o.value=!0},close:()=>{o.value=!1}}},render(){var a;const{isShow:e,isFull:n,backdrop:o,style:l,message:i,$slots:r}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",n?"devui-loading--full":""]},[((a=r.default)==null?void 0:a.call(r))||t.createVNode("div",{class:"devui-loading-wrapper"},[o?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:l,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),i?t.createVNode("span",{class:"devui-loading-text"},[i]):null])])])}});const H=Symbol("dev_component_container");function fe(e,n,o=null){const l=t.h(e,k({},n),o),i=document.createElement("div");return l[H]=i,t.render(l,i),l.component}function pe(e){t.render(null,e==null?void 0:e.vnode[H])}const ve=t.defineComponent(ce),F=new WeakSet,D=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},z=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),me=e=>{switch(z(e)){case"promise":return[e];case"array":return e.some(o=>z(o)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},_=e=>{F.delete(e),e.instance.proxy.close(),pe(e.instance)},$=(e,n)=>{if(n.value){const o=me(n.value);if(o==="error")return;e.instance.proxy.open(),e.appendChild(e.mask),F.add(e),o&&Promise.all(o).catch(l=>{console.error(new Error("Promise handling errors"),l)}).finally(()=>{_(e)})}else _(e)},K=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},q=(e,n)=>{const o=k(k({},new de),n),l=o.loadingTemplateRef,i=fe(ve,k({},o),l?()=>l:null);e.style.position=o.positionType,e.options=o,e.instance=i,e.mask=i.proxy.$el},ge={mounted:function(e,n,o){q(e,o.props),K(e),!D(n.value)&&$(e,n)},updated:function(e,n,o){!D(n.value)&&F.has(e)||D(n.value)&&!F.has(e)||(!F.has(e)&&q(e,o.props),K(e),$(e,n))}};var ye=t.defineComponent({name:"DAutoCompleteDropdown",directives:{dLoading:ge},setup(e,n){const o=t.inject(M),{visible:l,selectedIndex:i,selectOptionClick:r,searchList:a,searchStatus:s,dropDownRef:u,loadMore:d,showLoading:c,showNoResultItemTemplate:v,latestSource:f,modelValue:g,hoverIndex:w}=o,{disabled:h,maxHeight:V,formatter:C,disabledKey:S,isSearching:L}=o.props,N=y=>{y[S]||r(y)};return()=>t.withDirectives(t.createVNode("div",{class:["devui-dropdown-menu","devui-dropdown-menu-cdk",h&&"disabled",f.value&&"devui-dropdown-latestSource"]},[t.createVNode("ul",{ref:u,class:"devui-list-unstyled scroll-height",style:{maxHeight:`${V}px`},onScroll:d},[L&&n.slots.searchingTemplate&&(s==null?void 0:s.value)&&t.createVNode("li",{class:"devui-is-searching-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.searchingTemplate()])]),f.value&&!g.value&&t.createVNode("li",{class:"devui-popup-tips"},[t.createTextVNode("\u6700\u8FD1\u8F93\u5165")]),!v.value&&!(s==null?void 0:s.value)&&a!=null&&a.value.length>0&&a.value.map((y,b)=>t.createVNode("li",{onClick:()=>N(y),class:["devui-dropdown-item",i.value===b&&"selected",{disabled:S&&y[S]},{"devui-dropdown-bg":w.value===b}],title:C(y),key:C(y)},[n.slots.itemTemplate?n.slots.itemTemplate(y,b):C(y)])),!(s==null?void 0:s.value)&&a.value.length===0&&n.slots.noResultItemTemplate&&v.value&&t.createVNode("li",{class:"devui-no-result-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.noResultItemTemplate()])])])]),[[t.resolveDirective("dLoading"),c.value],[t.vShow,l.value&&a.value.length>0||n.slots.noResultItemTemplate&&v.value||L&&n.slots.searchingTemplate&&(s==null?void 0:s.value)]])}});const we=typeof window!="undefined";function U(e,n,o){document.addEventListener?e&&n&&o&&e.addEventListener(n,o,!1):e&&n&&o&&e.attachEvent("on"+n,o)}const A=Symbol("@@clickoutside"),x=new Map;let W,P=0,Y=!0;function X(e,n,o){return we&&Y&&(Y=!1,U(document,"mousedown",l=>{W=l}),U(document,"mouseup",l=>{for(const[i,r]of x)r[A].documentHandler(l,W)})),function(l,i){!o||!n.instance||!l.target||!i.target||e.contains(l.target)||e.contains(i.target)||e===l.target||e[A].bindingFn&&e[A].bindingFn()}}const he={beforeMount:function(e,n,o){P++,x.set(P,e),e[A]={nid:P,documentHandler:X(e,n,o),bindingFn:n.value}},updated:function(e,n,o){e[A].documentHandler=X(e,n,o),e[A].bindingFn=n.value},unmounted:function(e){x.delete(e[A].nid),delete e[A]}},be={modelValue:{type:Boolean,default:!1},origin:{type:Object,require:!0},position:{type:Array,default:["bottom"]},offset:{type:[Number,Object],default:8},align:{type:String,default:null},showArrow:{type:Boolean,default:!1},isArrowCenter:{type:Boolean,default:!0}};function G(e){const n=/(auto|scroll|hidden)/;for(let o=e;o=o.parentElement;o.parentElement!==document.body){const l=window.getComputedStyle(o);if(n.test(l.overflow+l.overflowX+l.overflowY))return o}return window}function Ve(e,n,o,l){let{x:i,y:r}=n;if(!e){const{width:a,height:s}=l;i&&o.includes("start")&&(i=12),i&&o.includes("end")&&(i=Math.round(a-24)),r&&o.includes("start")&&(r=10),r&&o.includes("end")&&(r=s-14)}return{x:i,y:r}}function Te(e,n){const o=t.ref(),l=t.ref(),i=(a,s,u,d)=>{const{x:c,y:v}=Ve(e.isArrowCenter,u,s,d.getBoundingClientRect()),f={top:"bottom",right:"left",bottom:"top",left:"right"}[s.split("-")[0]];Object.assign(a.style,{left:c?`${c}px`:"",top:v?`${v}px`:"",right:"",bottom:"",[f]:"-4px"})},r=async()=>{const a=e.origin,s=t.unref(o.value),u=t.unref(l.value),d=[m.shift(),m.offset(e.offset),m.autoPlacement({alignment:e.align,allowedPlacements:e.position})];e.showArrow&&d.push(m.arrow({element:u}));const{x:c,y:v,placement:f,middlewareData:g}=await m.computePosition(a,s,{strategy:"fixed",middleware:d});n("positionChange",f),Object.assign(s.style,{top:`${v}px`,left:`${c}px`}),e.showArrow&&i(u,f,g.arrow,s)};return t.watch(()=>e.modelValue,()=>{const a=G(e.origin);e.modelValue&&e.origin?(t.nextTick(r),a.addEventListener("scroll",r),a!==window&&window.addEventListener("scroll",r),window.addEventListener("resize",r)):(a.removeEventListener("scroll",r),a!==window&&window.removeEventListener("scroll",r),window.removeEventListener("resize",r))}),t.onUnmounted(()=>{const a=G(e.origin);a.removeEventListener("scroll",r),a!==window&&window.removeEventListener("scroll",r),window.removeEventListener("resize",r)}),{arrowRef:l,overlayRef:o,updatePosition:r}}var ze="";const Ce=t.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:be,emits:["update:modelValue","positionChange"],setup(e,{slots:n,attrs:o,emit:l,expose:i}){const{arrowRef:r,overlayRef:a,updatePosition:s}=Te(e,l);return i({updatePosition:s}),()=>{var u;return e.modelValue&&t.createVNode("div",t.mergeProps({ref:a,class:"devui-flexible-overlay"},o),[(u=n.default)==null?void 0:u.call(n),e.showArrow&&t.createVNode("div",{ref:r,class:"devui-flexible-overlay-arrow"},null)])}}});function Ne(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}var I=t.defineComponent({name:"DAutoComplete",directives:{ClickOutside:he},props:oe,emits:["update:modelValue"],setup(e,n){const{disabled:o,modelValue:l,width:i,delay:r,allowEmptyValueSearch:a,formatter:s,transInputFocusEmit:u,selectValue:d,source:c,searchFn:v,position:f,latestSource:g,showAnimation:w}=t.toRefs(e),{handleSearch:h,searchList:V,showNoResultItemTemplate:C,recentlyFocus:S}=le(n,a,c,v,s),{onInput:L,onFocus:N,inputRef:y,visible:b,searchStatus:E,handleClose:R,toggleMenu:Se}=ae(n,V,C,l,o,r,h,u,S,g),{selectedIndex:J,selectOptionClick:Q}=re(n,V,d,h,s,R),{showLoading:Fe,dropDownRef:Z,loadMore:Ie}=ie(e,n,h),{customRenderSolts:Le}=ne(n,l),{hoverIndex:ke,handlekeyDown:Ee}=se(Z,b,V,J,E,C,Q,R);t.provide(M,{props:e,visible:b,term:"",searchList:V,selectedIndex:J,searchStatus:E,selectOptionClick:Q,dropDownRef:Z,showLoading:Fe,loadMore:Ie,latestSource:g,modelValue:l,showNoResultItemTemplate:C,hoverIndex:ke});const ee=t.ref(),De=()=>{let O;return t.createVNode(t.Teleport,{to:"body"},{default:()=>[t.createVNode(t.Transition,{name:w?"fade":""},{default:()=>[t.createVNode(Ce,{origin:ee.value,position:f.value,modelValue:b.value,"onUpdate:modelValue":xe=>b.value=xe},{default:()=>[t.createVNode("div",{class:"devui-auto-complete-menu",style:{width:`
2
- ${i.value+"px"}
3
- `}},[t.createVNode(ye,null,Ne(O=Le())?O:{default:()=>[O]})])]})]})]})};return()=>t.withDirectives(t.createVNode("div",{class:["devui-auto-complete","devui-form-group","devui-has-feedback",b.value&&"devui-select-open"],ref:ee,style:{width:`${i.value+"px"}`}},[t.createVNode("input",{disabled:o.value,type:"text",onClick:Se,class:["devui-form-control","devui-dropdown-origin","devui-dropdown-origin-open",o.value&&"disabled"],placeholder:"Search",onInput:L,onFocus:N,value:l.value,ref:y,onKeydown:Ee},null),De()]),[[t.resolveDirective("click-outside"),R]])}});I.install=function(e){e.component(I.name,I)};var Ae={title:"AutoComplete \u81EA\u52A8\u8865\u5168",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.use(I)}};p.AutoComplete=I,p.default=Ae,Object.defineProperty(p,"__esModule",{value:!0}),p[Symbol.toStringTag]="Module"});
1
+ var Pe=Object.defineProperty;var ie=Object.getOwnPropertySymbols;var Be=Object.prototype.hasOwnProperty,je=Object.prototype.propertyIsEnumerable;var z=(v,t,y)=>t in v?Pe(v,t,{enumerable:!0,configurable:!0,writable:!0,value:y}):v[t]=y,D=(v,t)=>{for(var y in t||(t={}))Be.call(t,y)&&z(v,y,t[y]);if(ie)for(var y of ie(t))je.call(t,y)&&z(v,y,t[y]);return v};var C=(v,t,y)=>(z(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 _={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}},I=Symbol("DropdownPropsKey");function ue(e,n){const o=(r,u)=>{const i={item:r,index:u};return e.slots.item?e.slots.item(i):null},a=()=>e.slots.nothing?e.slots.nothing(n.value):null,l=()=>e.slots.searching?e.slots.searching(n.value):null;return{customRenderSolts:()=>{const r={};return e.slots.item&&(r.itemTemplate=o),e.slots.nothing&&(r.noResultItemTemplate=a),e.slots.searching&&(r.searchingTemplate=l),r}}}function de(e,n,o,a,l){const s=t.ref([]),r=t.ref(!1),u=d=>{const p=[];return o.value.forEach(c=>{let m=l.value(c);m=m.toLowerCase(),m.startsWith(d)&&p.push(c)}),p};return{handleSearch:async(d,p=!1)=>{if(d===""&&!n.value){s.value=[],r.value=!1;return}let c=[];d=d.toLowerCase(),p?c=o.value:a.value?c=await a.value(d):c=u(d),s.value=c,s.value.length===0?r.value=!0:r.value=!1},recentlyFocus:d=>{d&&(s.value=d)},searchList:s,showNoResultItemTemplate:r}}function ce(e,n,o,a,l,s,r,u,i,f){const d=t.ref(!1),p=t.ref(),c=t.ref(!1),h=((N,S)=>{let g;return E=>{g&&clearTimeout(g),g=setTimeout(async()=>{c.value=!0,await N(E),c.value=!1},S)}})(async N=>{await r(N),d.value=!0},s.value),V=N=>{const S=N.target;c.value=!1,o.value=!1,e.emit("update:modelValue",S.value),h(S.value)},T=()=>{r(a.value),i(f==null?void 0:f.value),u.value&&u.value()},b=()=>{d.value=!1,c.value=!1,o.value=!1};return{handleClose:b,toggleMenu:()=>{l.value||(d.value?b():(d.value=!0,e.slots.noResultItemTemplate&&n.value.length===0&&a.value.trim()!==""&&(o.value=!0)))},onInput:V,onFocus:T,inputRef:p,visible:d,searchStatus:c}}function fe(e,n,o,a,l,s){const r=t.ref(0),u=f=>{if(n.value.length===0)return 0;let d=0;return n.value.forEach((p,c)=>{typeof p=="string"?p===f&&(d=c):String(p.label)===f&&(d=c)}),d===-1?0:d};return{selectedIndex:r,selectOptionClick:async f=>{const d=l.value(f);e.emit("update:modelValue",d),s(),await a(d),r.value=u(d),o.value&&o.value(d)}}}function pe(e,n,o){const a=t.ref(!1),l=t.ref(),s=()=>{if(!e.enableLazyLoad&&a)return;const u=l.value,i=u.scrollHeight,f=u.clientHeight+u.scrollTop;f>=i&&f>=e.maxHeight&&(e.loadMore(),a.value=!0)};async function r(){await o(e.modelValue,e.enableLazyLoad),a.value=!1}return n.expose({loadFinish:r}),{showLoading:a,dropDownRef:l,loadMore:s}}function ve(e,n,o,a,l,s,r,u){var p;const i=t.ref((p=a.value)!=null?p:0),f=c=>{const m=e.value,w=m.children[c];t.nextTick(()=>{if(w.scrollIntoViewIfNeeded)w.scrollIntoViewIfNeeded(!1);else{const h=m.getBoundingClientRect(),V=w.getBoundingClientRect();(V.bottom>h.bottom||V.top<h.top)&&w.scrollIntoView(!1)}})};return{hoverIndex:i,handlekeyDown:c=>{var h;const m=c.key||c.code;if(m==="Escape"&&(n.value&&o.value.length||l.value||s.value)){u();return}const w=n.value&&o.value.length&&!l.value&&!s.value;if(m==="ArrowDown"&&w){if(i.value===o.value.length-1){i.value=0,f(i.value);return}i.value=i.value+1,f(i.value)}else if(m==="ArrowUp"&&w){if(i.value===0){i.value=o.value.length-1,f(i.value);return}i.value=i.value-1,f(i.value)}if(m==="Enter"&&w){r(o.value[i.value]),i.value=(h=a.value)!=null?h:0;return}}}}class ${constructor(){C(this,"top","50%");C(this,"left","50%")}}const me={message:String,backdrop:Boolean,view:{type:Object,default:()=>new $},zIndex:Number,isFull:{type:Boolean,default:!1}};class ye{constructor(){C(this,"target");C(this,"message");C(this,"loadingTemplateRef");C(this,"backdrop",!0);C(this,"positionType","relative");C(this,"view",new $);C(this,"zIndex")}}var ze="",ge=t.defineComponent({name:"DLoading",inheritAttrs:!1,props:me,setup(e){const n={top:e.view.top,left:e.view.left,zIndex:e.zIndex};e.message||(n.background="none");const o=t.ref(!1);return{style:n,isShow:o,open:()=>{o.value=!0},close:()=>{o.value=!1}}},render(){var r;const{isShow:e,isFull:n,backdrop:o,style:a,message:l,$slots:s}=this;return e&&t.createVNode("div",{class:["devui-loading-contanier",n?"devui-loading--full":""]},[((r=s.default)==null?void 0:r.call(s))||t.createVNode("div",{class:"devui-loading-wrapper"},[o?t.createVNode("div",{class:"devui-loading-mask"},null):null,t.createVNode("div",{style:a,class:"devui-loading-area"},[t.createVNode("div",{class:"devui-busy-default-spinner"},[t.createVNode("div",{class:"devui-loading-bar1"},null),t.createVNode("div",{class:"devui-loading-bar2"},null),t.createVNode("div",{class:"devui-loading-bar3"},null),t.createVNode("div",{class:"devui-loading-bar4"},null)]),l?t.createVNode("span",{class:"devui-loading-text"},[l]):null])])])}});const K=Symbol("dev_component_container");function we(e,n,o=null){const a=t.h(e,D({},n),o),l=document.createElement("div");return a[K]=l,t.render(a,l),a.component}function he(e){t.render(null,e==null?void 0:e.vnode[K])}const be=t.defineComponent(ge),k=new WeakSet,R=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},U=e=>Object.prototype.toString.call(e).slice(8,-1).toLowerCase(),Ve=e=>{switch(U(e)){case"promise":return[e];case"array":return e.some(o=>U(o)!=="promise")?(console.error(new TypeError("Binding values should all be of type Promise")),"error"):e;default:return!1}},Y=e=>{k.delete(e),e.instance.proxy.close(),he(e.instance)},q=(e,n)=>{var o,a,l;if(n.value){const s=Ve(n.value);if(s==="error")return;(l=(a=(o=e==null?void 0:e.instance)==null?void 0:o.proxy)==null?void 0:a.open)==null||l.call(a),e.appendChild(e.mask),k.add(e),s&&Promise.all(s).catch(r=>{console.error(new Error("Promise handling errors"),r)}).finally(()=>{Y(e)})}else Y(e)},X=e=>{e.removeAttribute("zindex"),e.removeAttribute("positiontype"),e.removeAttribute("backdrop"),e.removeAttribute("message"),e.removeAttribute("view"),e.removeAttribute("loadingtemplateref")},W=(e,n)=>{var s;const o=D(D({},new ye),n),a=o.loadingTemplateRef,l=we(be,D({},o),a?()=>a:null);e.style.position=o.positionType,e.options=o,e.instance=l,e.mask=(s=l==null?void 0:l.proxy)==null?void 0:s.$el},Te={mounted:function(e,n,o){W(e,o.props),X(e),!R(n.value)&&q(e,n)},updated:function(e,n,o){!R(n.value)&&k.has(e)||R(n.value)&&!k.has(e)||(!k.has(e)&&W(e,o.props),X(e),q(e,n))}};var G=t.defineComponent({name:"DAutoCompleteDropdown",directives:{dLoading:Te},setup(e,n){const o=t.inject(I),{visible:a,selectedIndex:l,selectOptionClick:s,searchList:r,searchStatus:u,dropDownRef:i,loadMore:f,showLoading:d,showNoResultItemTemplate:p,latestSource:c,modelValue:m,hoverIndex:w,valueParser:h}=o,{disabled:V,maxHeight:T,formatter:b,disabledKey:F,isSearching:N}=o.props,S=g=>{g=h.value(g),!(typeof g=="object"&&g[F])&&s(g)};return()=>t.withDirectives(t.createVNode("div",{class:["devui-dropdown-menu","devui-dropdown-menu-cdk",V&&"disabled",c.value&&"devui-dropdown-latestSource"]},[t.createVNode("ul",{ref:i,class:"devui-list-unstyled scroll-height",style:{maxHeight:`${T}px`},onScroll:f},[N&&n.slots.searchingTemplate&&(u==null?void 0:u.value)&&t.createVNode("li",{class:"devui-is-searching-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.searchingTemplate()])]),c.value&&!m.value&&t.createVNode("li",{class:"devui-popup-tips"},[t.createTextVNode("\u6700\u8FD1\u8F93\u5165")]),!p.value&&!(u==null?void 0:u.value)&&r!=null&&r.value.length>0&&r.value.map((g,E)=>t.createVNode("li",{onClick:()=>S(g),class:["devui-dropdown-item",l.value===E&&"selected",{disabled:F&&typeof g=="object"&&g[F]},{"devui-dropdown-bg":w.value===E}],title:b(g),key:b(g)},[n.slots.itemTemplate?n.slots.itemTemplate(g,E):b(g)])),!(u==null?void 0:u.value)&&r.value.length===0&&n.slots.noResultItemTemplate&&p.value&&t.createVNode("li",{class:"devui-no-result-template"},[t.createVNode("div",{class:"devui-no-data-tip"},[n.slots.noResultItemTemplate()])])])]),[[t.resolveDirective("dLoading"),d.value],[t.vShow,a.value&&r.value.length>0||n.slots.noResultItemTemplate&&p.value||N&&n.slots.searchingTemplate&&(u==null?void 0:u.value)]])}});const Ne=typeof window!="undefined";function J(e,n,o){document.addEventListener?e&&n&&o&&e.addEventListener(n,o,!1):e&&n&&o&&e.attachEvent("on"+n,o)}const A=Symbol("@@clickoutside"),x=new Map;let Q,P=0,Z=!0;function ee(e,n,o){return Ne&&Z&&(Z=!1,J(document,"mousedown",a=>{Q=a}),J(document,"mouseup",a=>{for(const[l,s]of x)s[A].documentHandler(a,Q)})),function(a,l){!o||!n.instance||!a.target||!l.target||e.contains(a.target)||e.contains(l.target)||e===a.target||e[A].bindingFn&&e[A].bindingFn()}}const Ce={beforeMount:function(e,n,o){P++,x.set(P,e),e[A]={nid:P,documentHandler:ee(e,n,o),bindingFn:n.value}},updated:function(e,n,o){e[A].documentHandler=ee(e,n,o),e[A].bindingFn=n.value},unmounted:function(e){x.delete(e[A].nid),delete e[A]}},Ae={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 Fe(e){const n=/(auto|scroll|hidden)/;for(let o=e;o=o.parentElement;o.parentElement!==document.body){const a=window.getComputedStyle(o);if(n.test(a.overflow+a.overflowX+a.overflowY))return o}return window}function Se(e,n,o,a){let{x:l,y:s}=n;if(!e){const{width:r,height:u}=a;l&&o.includes("start")&&(l=12),l&&o.includes("end")&&(l=Math.round(r-24)),s&&o.includes("start")&&(s=10),s&&o.includes("end")&&(s=u-14)}return{x:l,y:s}}function Ee(e,n){const o=t.ref(),a=t.ref();let l=null;const s=(u,i,f,d)=>{const{x:p,y:c}=Se(e.isArrowCenter,f,i,d.getBoundingClientRect()),m={top:"bottom",right:"left",bottom:"top",left:"right"}[i.split("-")[0]];Object.assign(u.style,{left:p?`${p}px`:"",top:c?`${c}px`:"",right:"",bottom:"",[m]:"-4px"})},r=async()=>{const u=e.origin,i=t.unref(o.value),f=t.unref(a.value),d=[y.offset(e.offset),y.autoPlacement({alignment:e.align,allowedPlacements:e.position})];e.showArrow&&d.push(y.arrow({element:f})),e.shiftOffset!==void 0&&d.push(y.shift());const{x:p,y:c,placement:m,middlewareData:w}=await y.computePosition(u,i,{strategy:"fixed",middleware:d});let h=p,V=c;if(e.shiftOffset!==void 0){const{x:T,y:b}=w.shift;T<0&&(h-=e.shiftOffset),T>0&&(h+=e.shiftOffset),b<0&&(V-=e.shiftOffset),b>0&&(V+=e.shiftOffset)}n("positionChange",m),Object.assign(i.style,{top:`${V}px`,left:`${h}px`}),e.showArrow&&s(f,m,w.arrow,i)};return t.watch(()=>e.modelValue,()=>{e.modelValue&&e.origin?(l=Fe(e.origin),t.nextTick(r),l==null||l.addEventListener("scroll",r),l!==window&&window.addEventListener("scroll",r),window.addEventListener("resize",r)):(l==null||l.removeEventListener("scroll",r),l!==window&&window.removeEventListener("scroll",r),window.removeEventListener("resize",r))}),t.onUnmounted(()=>{l==null||l.removeEventListener("scroll",r),l!==window&&window.removeEventListener("scroll",r),window.removeEventListener("resize",r)}),{arrowRef:a,overlayRef:o,updatePosition:r}}var _e="";const te=t.defineComponent({name:"DFlexibleOverlay",inheritAttrs:!1,props:Ae,emits:["update:modelValue","positionChange"],setup(e,{slots:n,attrs:o,emit:a,expose:l}){const{arrowRef:s,overlayRef:r,updatePosition:u}=Ee(e,a);return l({updatePosition:u}),()=>{var i;return e.modelValue&&t.createVNode("div",t.mergeProps({ref:r,class:"devui-flexible-overlay"},o),[(i=n.default)==null?void 0:i.call(n),e.showArrow&&t.createVNode("div",{ref:s,class:"devui-flexible-overlay-arrow"},null)])}}});var $e="";function oe(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!t.isVNode(e)}var B=t.defineComponent({name:"DAutoComplete",directives:{ClickOutside:Ce},props:_,emits:["update:modelValue"],setup(e,n){const{disabled:o,modelValue:a,width:l,delay:s,allowEmptyValueSearch:r,appendToBody:u,formatter:i,transInputFocusEmit:f,selectValue:d,source:p,searchFn:c,position:m,latestSource:w,showAnimation:h,valueParser:V}=t.toRefs(e),{handleSearch:T,searchList:b,showNoResultItemTemplate:F,recentlyFocus:N}=de(n,r,p,c,i),{onInput:S,onFocus:g,inputRef:E,visible:L,searchStatus:ne,handleClose:j,toggleMenu:Oe}=ce(n,b,F,a,o,s,T,f,N,w),{selectedIndex:le,selectOptionClick:ae}=fe(n,b,d,T,i,j),{showLoading:ke,dropDownRef:re,loadMore:De}=pe(e,n,T),{customRenderSolts:se}=ue(n,a),{hoverIndex:Ie,handlekeyDown:Re}=ve(re,L,b,le,ne,F,ae,j);t.provide(I,{props:e,visible:L,term:"",searchList:b,selectedIndex:le,searchStatus:ne,selectOptionClick:ae,dropDownRef:re,showLoading:ke,loadMore:De,latestSource:w,modelValue:a,showNoResultItemTemplate:F,hoverIndex:Ie,valueParser:V});const M=t.ref(),xe=()=>{if(u.value){let O;return t.createVNode(t.Teleport,{to:"body"},{default:()=>[t.createVNode(t.Transition,{name:h?"fade":""},{default:()=>[t.createVNode(te,{"show-arrow":!0,origin:M.value,position:m.value,modelValue:L.value,"onUpdate:modelValue":H=>L.value=H},{default:()=>[t.createVNode("div",{class:"devui-auto-complete-menu",style:{width:`
2
+ ${l.value+"px"}
3
+ `}},[t.createVNode(G,null,oe(O=se())?O:{default:()=>[O]})])]})]})]})}else{let O;return t.createVNode(t.Transition,{name:h?"fade":""},{default:()=>[t.createVNode(te,{"show-arrow":!0,origin:M.value,position:m.value,modelValue:L.value,"onUpdate:modelValue":H=>L.value=H},{default:()=>[t.createVNode("div",{class:"devui-auto-complete-menu",style:{width:`
4
+ ${l.value+"px"}
5
+ `}},[t.createVNode(G,null,oe(O=se())?O:{default:()=>[O]})])]})]})}};return()=>t.withDirectives(t.createVNode("div",{class:["devui-auto-complete","devui-form-group","devui-has-feedback",L.value&&"devui-select-open"],ref:M,style:{width:`${l.value+"px"}`}},[t.createVNode("input",{disabled:o.value,type:"text",onClick:Oe,class:["devui-form-control","devui-dropdown-origin","devui-dropdown-origin-open",o.value&&"disabled"],placeholder:"Search",onInput:S,onFocus:g,value:a.value,ref:E,onKeydown:Re},null),xe()]),[[t.resolveDirective("click-outside"),j]])}}),Le={title:"AutoComplete \u81EA\u52A8\u8865\u5168",category:"\u6570\u636E\u5F55\u5165",status:"100%",install(e){e.component(B.name,B)}};v.AutoComplete=B,v.DropdownPropsKey=I,v.autoCompleteProps=_,v.default=Le,Object.defineProperty(v,"__esModule",{value:!0}),v[Symbol.toStringTag]="Module"});
@@ -1 +1 @@
1
- @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 8px}.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-dropdown-menu-cdk,.devui-auto-complete-menu .devui-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-menu .devui-dropdown-menu .devui-dropdown-item:not(.disabled).selected{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)}.devui-auto-complete .devui-no-result-template,.devui-auto-complete .devui-is-searching-template,.devui-auto-complete-menu .devui-no-result-template,.devui-auto-complete-menu .devui-is-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-no-result-template:hover,.devui-auto-complete .devui-no-result-template:active,.devui-auto-complete .devui-no-result-template:hover:active,.devui-auto-complete .devui-is-searching-template:hover,.devui-auto-complete .devui-is-searching-template:active,.devui-auto-complete .devui-is-searching-template:hover:active,.devui-auto-complete-menu .devui-no-result-template:hover,.devui-auto-complete-menu .devui-no-result-template:active,.devui-auto-complete-menu .devui-no-result-template:hover:active,.devui-auto-complete-menu .devui-is-searching-template:hover,.devui-auto-complete-menu .devui-is-searching-template:active,.devui-auto-complete-menu .devui-is-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-list-unstyled,.devui-auto-complete-menu ul.devui-list-unstyled{margin:0;overflow-y:auto}.devui-auto-complete .devui-dropdown-bg,.devui-auto-complete-menu .devui-dropdown-bg{background:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-auto-complete .devui-popup-tips,.devui-auto-complete-menu .devui-popup-tips{color:var(--devui-text-weak, #575d6c);padding:4px 12px}.devui-auto-complete .devui-dropdown-latestSource ul,.devui-auto-complete-menu .devui-dropdown-latestSource ul{line-height:initial!important}@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(135deg) scale(1.5)}to{transform:rotate(270deg) 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-busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-busy-default-spinner .devui-loading-bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-busy-default-spinner .devui-loading-bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-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(0, 0, 0, .2));z-index:1000}.devui-flexible-overlay-arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}
1
+ @keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(135deg) scale(1.5)}to{transform:rotate(270deg) 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-busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-busy-default-spinner .devui-loading-bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-busy-default-spinner .devui-loading-bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-busy-default-spinner .devui-loading-bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-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(0, 0, 0, .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 8px}.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-dropdown-menu-cdk,.devui-auto-complete-menu .devui-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-no-result-template,.devui-auto-complete .devui-is-searching-template,.devui-auto-complete-menu .devui-no-result-template,.devui-auto-complete-menu .devui-is-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-no-result-template:hover,.devui-auto-complete .devui-no-result-template:active,.devui-auto-complete .devui-no-result-template:hover:active,.devui-auto-complete .devui-is-searching-template:hover,.devui-auto-complete .devui-is-searching-template:active,.devui-auto-complete .devui-is-searching-template:hover:active,.devui-auto-complete-menu .devui-no-result-template:hover,.devui-auto-complete-menu .devui-no-result-template:active,.devui-auto-complete-menu .devui-no-result-template:hover:active,.devui-auto-complete-menu .devui-is-searching-template:hover,.devui-auto-complete-menu .devui-is-searching-template:active,.devui-auto-complete-menu .devui-is-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-list-unstyled,.devui-auto-complete-menu ul.devui-list-unstyled{margin:0;overflow-y:auto}.devui-auto-complete .devui-dropdown-bg,.devui-auto-complete-menu .devui-dropdown-bg{background:var(--devui-list-item-hover-bg, #f2f5fc);color:var(--devui-list-item-hover-text, #526ecc)}.devui-auto-complete .devui-popup-tips,.devui-auto-complete-menu .devui-popup-tips{color:var(--devui-text-weak, #575d6c);padding:4px 12px}.devui-auto-complete .devui-dropdown-latestSource ul,.devui-auto-complete-menu .devui-dropdown-latestSource ul{line-height:initial!important}