vue-devui 1.6.4 → 1.6.6

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 (127) hide show
  1. package/auto-complete/index.es.js +19 -6
  2. package/auto-complete/index.umd.js +10 -10
  3. package/auto-complete/style.css +1 -1
  4. package/breadcrumb/index.es.js +2 -15
  5. package/breadcrumb/index.umd.js +1 -1
  6. package/breadcrumb/style.css +1 -1
  7. package/button/index.es.js +31 -12
  8. package/button/index.umd.js +10 -10
  9. package/button/style.css +1 -1
  10. package/carousel/index.es.js +36 -213
  11. package/carousel/index.umd.js +1 -1
  12. package/carousel/style.css +1 -1
  13. package/category-search/index.es.js +53 -29
  14. package/category-search/index.umd.js +12 -12
  15. package/category-search/style.css +1 -1
  16. package/checkbox/index.es.js +22 -9
  17. package/checkbox/index.umd.js +8 -8
  18. package/checkbox/style.css +1 -1
  19. package/code-review/style.css +1 -1
  20. package/collapse/index.es.js +15 -18
  21. package/collapse/index.umd.js +5 -5
  22. package/data-grid/index.es.js +48 -29
  23. package/data-grid/index.umd.js +6 -6
  24. package/data-grid/style.css +1 -1
  25. package/date-picker-pro/index.es.js +91 -20
  26. package/date-picker-pro/index.umd.js +16 -16
  27. package/date-picker-pro/style.css +1 -1
  28. package/dropdown/index.es.js +2 -15
  29. package/dropdown/index.umd.js +1 -1
  30. package/dropdown/style.css +1 -1
  31. package/editable-select/index.es.js +84 -207
  32. package/editable-select/index.umd.js +20 -16
  33. package/editable-select/style.css +1 -1
  34. package/editor-md/index.es.js +32 -18
  35. package/editor-md/index.umd.js +15 -15
  36. package/editor-md/style.css +1 -1
  37. package/form/style.css +1 -1
  38. package/icon/index.es.js +1 -2
  39. package/icon/index.umd.js +1 -1
  40. package/input/index.es.js +27 -7
  41. package/input/index.umd.js +11 -11
  42. package/input/style.css +1 -1
  43. package/input-number/index.es.js +5 -0
  44. package/input-number/index.umd.js +10 -10
  45. package/input-number/style.css +1 -1
  46. package/mention/index.es.js +12 -3
  47. package/mention/index.umd.js +8 -8
  48. package/mention/style.css +1 -1
  49. package/message/index.es.js +1 -2
  50. package/message/index.umd.js +1 -1
  51. package/modal/index.es.js +27 -4
  52. package/modal/index.umd.js +7 -1
  53. package/modal/style.css +1 -1
  54. package/notification/index.es.js +1 -2
  55. package/notification/index.umd.js +2 -2
  56. package/overlay/style.css +1 -1
  57. package/package.json +1 -1
  58. package/pagination/index.es.js +83 -263
  59. package/pagination/index.umd.js +14 -19
  60. package/pagination/style.css +1 -1
  61. package/popover/style.css +1 -1
  62. package/radio/index.es.js +10 -28
  63. package/radio/index.umd.js +9 -9
  64. package/radio/style.css +1 -1
  65. package/result/index.es.js +1 -2
  66. package/result/index.umd.js +1 -1
  67. package/search/index.es.js +54 -28
  68. package/search/index.umd.js +18 -14
  69. package/search/style.css +1 -1
  70. package/select/index.es.js +71 -52
  71. package/select/index.umd.js +18 -23
  72. package/select/style.css +1 -1
  73. package/splitter/style.css +1 -1
  74. package/steps/index.es.js +1 -2
  75. package/steps/index.umd.js +1 -1
  76. package/style.css +2 -2
  77. package/switch/index.es.js +16 -2
  78. package/switch/index.umd.js +15 -15
  79. package/switch/style.css +1 -1
  80. package/table/index.es.js +49 -30
  81. package/table/index.umd.js +12 -12
  82. package/table/style.css +1 -1
  83. package/textarea/index.es.js +6 -1
  84. package/textarea/index.umd.js +1 -1
  85. package/textarea/style.css +1 -1
  86. package/time-picker/index.es.js +66 -14
  87. package/time-picker/index.umd.js +16 -16
  88. package/time-picker/style.css +1 -1
  89. package/time-select/index.es.js +71 -52
  90. package/time-select/index.umd.js +12 -17
  91. package/time-select/style.css +1 -1
  92. package/timeline/index.es.js +1 -2
  93. package/timeline/index.umd.js +1 -1
  94. package/tooltip/style.css +1 -1
  95. package/tree/index.es.js +22 -9
  96. package/tree/index.umd.js +9 -9
  97. package/tree/style.css +1 -1
  98. package/types/auto-complete/src/auto-complete-types.d.ts +4 -0
  99. package/types/carousel/src/components/carousel-icons.d.ts +2 -0
  100. package/types/cascader/src/cascader-types.d.ts +4 -0
  101. package/types/checkbox/src/checkbox-types.d.ts +8 -0
  102. package/types/date-picker-pro/src/date-picker-pro-types.d.ts +12 -0
  103. package/types/date-picker-pro/src/range-date-picker-types.d.ts +4 -0
  104. package/types/dropdown/src/use-dropdown.d.ts +1 -1
  105. package/types/editable-select/src/editable-select-types.d.ts +4 -0
  106. package/types/editor-md/src/composables/use-editor-md.d.ts +1 -0
  107. package/types/editor-md/src/editor-md-types.d.ts +3 -0
  108. package/types/icon/src/icon-types.d.ts +0 -1
  109. package/types/input/src/input-types.d.ts +4 -0
  110. package/types/input-icon/src/input-icon.d.ts +9 -0
  111. package/types/input-number/src/input-number-types.d.ts +4 -0
  112. package/types/mention/src/mention-types.d.ts +4 -0
  113. package/types/mention/src/mention.d.ts +9 -0
  114. package/types/modal/src/components/modal-icons.d.ts +1 -0
  115. package/types/radio/src/radio-types.d.ts +8 -0
  116. package/types/select/src/select-types.d.ts +4 -0
  117. package/types/svg-icons/index.d.ts +3 -0
  118. package/types/textarea/src/textarea-types.d.ts +4 -0
  119. package/types/time-picker/src/components/time-scroll/index.d.ts +9 -0
  120. package/types/time-picker/src/time-picker-types.d.ts +4 -0
  121. package/upload/index.es.js +1 -2
  122. package/upload/index.umd.js +2 -2
  123. package/vue-devui.es.js +393 -174
  124. package/vue-devui.umd.js +93 -82
  125. package/types/search/src/components/search-close-icon.d.ts +0 -2
  126. package/types/search/src/components/search-icon.d.ts +0 -2
  127. package/types/select/src/components/select-arrow-icon.d.ts +0 -2
package/vue-devui.es.js CHANGED
@@ -1854,6 +1854,10 @@ const autoCompleteProps = {
1854
1854
  clearable: {
1855
1855
  type: Boolean,
1856
1856
  default: false
1857
+ },
1858
+ showGlowStyle: {
1859
+ type: Boolean,
1860
+ default: true
1857
1861
  }
1858
1862
  };
1859
1863
  const DropdownPropsKey = Symbol("DropdownPropsKey");
@@ -9934,6 +9938,7 @@ function useAutoCompleteRender(props, ctx2, visible, isFocus, isDisabled, autoCo
9934
9938
  const inputWrapperClasses = computed(() => ({
9935
9939
  [inputNs.e("wrapper")]: true,
9936
9940
  [inputNs.em("wrapper", "error")]: isValidatorError.value,
9941
+ [ns2.m("glow-style")]: props.showGlowStyle,
9937
9942
  [inputNs.em("wrapper", "feedback")]: Boolean(formItemContext == null ? void 0 : formItemContext.validateState) && (formItemContext == null ? void 0 : formItemContext.showFeedback),
9938
9943
  [ns2.m("disabled")]: isDisabled.value
9939
9944
  }));
@@ -10302,8 +10307,7 @@ const DEFAULT_PREFIX = "icon";
10302
10307
  const iconProps = {
10303
10308
  name: {
10304
10309
  type: String,
10305
- default: "",
10306
- required: true
10310
+ default: ""
10307
10311
  },
10308
10312
  size: {
10309
10313
  type: [Number, String],
@@ -10523,6 +10527,7 @@ var AutoComplete = defineComponent({
10523
10527
  const inputNs = useNamespace$1("auto-complete-input");
10524
10528
  const isDisabled = computed(() => (formContext == null ? void 0 : formContext.disabled) || disabled.value);
10525
10529
  const autoCompleteSize = computed(() => (formContext == null ? void 0 : formContext.size) || props.size);
10530
+ const align = computed(() => position.value.some((item) => item.includes("start") || item.includes("end")) ? "start" : null);
10526
10531
  const {
10527
10532
  handleSearch,
10528
10533
  searchList,
@@ -10582,22 +10587,30 @@ var AutoComplete = defineComponent({
10582
10587
  valueParser
10583
10588
  });
10584
10589
  const origin = ref();
10590
+ const currentPosition = ref("bottom");
10585
10591
  const prefixVisible = ctx2.slots.prefix || props.prefix;
10586
10592
  const suffixVisible = ctx2.slots.suffix || props.suffix || props.clearable;
10587
10593
  const showClearable = computed(() => props.clearable && !isDisabled.value);
10594
+ const overlayStyles = computed(() => ({
10595
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
10596
+ zIndex: "var(--devui-z-index-dropdown, 1052)"
10597
+ }));
10598
+ const handlePositionChange = (pos) => {
10599
+ currentPosition.value = pos.includes("top") || pos.includes("right-end") || pos.includes("left-end") ? "top" : "bottom";
10600
+ };
10588
10601
  const renderBasicDropdown = () => {
10589
10602
  let _slot;
10590
10603
  return createVNode(Transition, {
10591
- "name": showAnimation ? "fade" : ""
10604
+ "name": showAnimation ? ns2.m(`fade-${currentPosition.value}`) : ""
10592
10605
  }, {
10593
10606
  default: () => [createVNode(FlexibleOverlay, {
10594
10607
  "origin": origin.value,
10595
10608
  "position": position.value,
10609
+ "align": align.value,
10596
10610
  "modelValue": visible.value,
10597
10611
  "onUpdate:modelValue": ($event) => visible.value = $event,
10598
- "style": {
10599
- zIndex: "var(--devui-z-index-dropdown, 1052)"
10600
- }
10612
+ "onPositionChange": handlePositionChange,
10613
+ "style": overlayStyles.value
10601
10614
  }, {
10602
10615
  default: () => [createVNode("div", {
10603
10616
  "class": ns2.e("menu"),
@@ -11428,17 +11441,7 @@ const useDropdownEvent = ({ id, isOpen, origin, dropdownRef, props, emit }) => {
11428
11441
  onInvalidate(() => subscriptions.forEach((v) => v()));
11429
11442
  });
11430
11443
  };
11431
- function useDropdown(id, visible, isOpen, origin, dropdownRef, popDirection, emit) {
11432
- const calcPopDirection = (dropdownEl) => {
11433
- const elementHeight = dropdownEl.offsetHeight;
11434
- const bottomDistance = window.innerHeight - origin.value.getBoundingClientRect().bottom;
11435
- const isBottomEnough = bottomDistance >= elementHeight;
11436
- if (!isBottomEnough) {
11437
- popDirection.value = "top";
11438
- } else {
11439
- popDirection.value = "bottom";
11440
- }
11441
- };
11444
+ function useDropdown(id, visible, isOpen, origin, dropdownRef, emit) {
11442
11445
  watch(visible, (newVal, oldVal) => {
11443
11446
  if (oldVal === void 0) {
11444
11447
  return;
@@ -11462,9 +11465,6 @@ function useDropdown(id, visible, isOpen, origin, dropdownRef, popDirection, emi
11462
11465
  }
11463
11466
  }
11464
11467
  }
11465
- if (dropdownEl) {
11466
- calcPopDirection(dropdownEl);
11467
- }
11468
11468
  });
11469
11469
  onMounted(() => {
11470
11470
  dropdownMap.set(id, { toggleEl: origin.value });
@@ -11533,7 +11533,7 @@ var Dropdown$1 = defineComponent({
11533
11533
  props,
11534
11534
  emit
11535
11535
  });
11536
- useDropdown(id, visible, isOpen, origin, dropdownRef, currentPosition, emit);
11536
+ useDropdown(id, visible, isOpen, origin, dropdownRef, emit);
11537
11537
  const {
11538
11538
  overlayModelValue,
11539
11539
  overlayShowValue,
@@ -11833,19 +11833,36 @@ var DButton = defineComponent({
11833
11833
  classes,
11834
11834
  iconClass
11835
11835
  } = useButton(props, ctx2);
11836
+ const isMouseDown = ref(false);
11837
+ const showWave = ref(false);
11838
+ const waveStyle = reactive({
11839
+ top: "0px",
11840
+ left: "0px"
11841
+ });
11842
+ const showClickWave = (e) => {
11843
+ waveStyle.left = e.offsetX + "px";
11844
+ waveStyle.top = e.offsetY + "px";
11845
+ showWave.value = true;
11846
+ setTimeout(() => {
11847
+ showWave.value = false;
11848
+ }, 300);
11849
+ };
11836
11850
  const onClick = (e) => {
11837
11851
  if (loading2.value) {
11838
11852
  return;
11839
11853
  }
11854
+ showClickWave(e);
11840
11855
  ctx2.emit("click", e);
11841
11856
  };
11842
11857
  return () => {
11843
11858
  var _a2, _b;
11844
11859
  return createVNode("button", {
11845
- "class": classes.value,
11860
+ "class": [classes.value, isMouseDown.value ? "mousedown" : ""],
11846
11861
  "disabled": disabled.value,
11847
11862
  "onClick": onClick,
11848
- "type": nativeType.value
11863
+ "type": nativeType.value,
11864
+ "onMousedown": () => isMouseDown.value = true,
11865
+ "onMouseup": () => isMouseDown.value = false
11849
11866
  }, [icon2.value && createVNode(DIcon, {
11850
11867
  "name": icon2.value,
11851
11868
  "size": "var(--devui-font-size, 12px)",
@@ -11859,7 +11876,10 @@ var DButton = defineComponent({
11859
11876
  "color": "#BBDEFB"
11860
11877
  }, null)]), [[vShow, loading2.value]]), createVNode("span", {
11861
11878
  "class": "button-content"
11862
- }, [(_b = (_a2 = ctx2.slots).default) == null ? void 0 : _b.call(_a2)])]);
11879
+ }, [(_b = (_a2 = ctx2.slots).default) == null ? void 0 : _b.call(_a2)]), showWave.value && createVNode("div", {
11880
+ "class": "water-wave",
11881
+ "style": waveStyle
11882
+ }, null)]);
11863
11883
  };
11864
11884
  }
11865
11885
  });
@@ -11992,6 +12012,41 @@ const carouselProps = {
11992
12012
  default: 500
11993
12013
  }
11994
12014
  };
12015
+ function CarouselArrowLeft() {
12016
+ return createVNode("svg", {
12017
+ "width": "18px",
12018
+ "height": "18px",
12019
+ "viewBox": "0 0 16 16",
12020
+ "version": "1.1"
12021
+ }, [createVNode("g", {
12022
+ "stroke": "none",
12023
+ "stroke-width": "1",
12024
+ "fill": "none",
12025
+ "fill-rule": "evenodd"
12026
+ }, [createVNode("polygon", {
12027
+ "fill": "#293040",
12028
+ "fill-rule": "nonzero",
12029
+ "points": "10.7071068 12.2928932 9.29289322 13.7071068 3.58578644 8 9.29289322 2.29289322 10.7071068 3.70710678 6.41421356 8"
12030
+ }, null)])]);
12031
+ }
12032
+ function CarouselArrowRight() {
12033
+ return createVNode("svg", {
12034
+ "width": "18px",
12035
+ "height": "18px",
12036
+ "viewBox": "0 0 16 16",
12037
+ "version": "1.1"
12038
+ }, [createVNode("g", {
12039
+ "stroke": "none",
12040
+ "stroke-width": "1",
12041
+ "fill": "none",
12042
+ "fill-rule": "evenodd"
12043
+ }, [createVNode("polygon", {
12044
+ "fill": "#293040",
12045
+ "fill-rule": "nonzero",
12046
+ "transform": "translate(8.146447, 8.000000) scale(-1, 1) translate(-8.146447, -8.000000) ",
12047
+ "points": "11.7071068 12.2928932 10.2928932 13.7071068 4.58578644 8 10.2928932 2.29289322 11.7071068 3.70710678 7.41421356 8"
12048
+ }, null)])]);
12049
+ }
11995
12050
  var carousel = "";
11996
12051
  var Carousel = defineComponent({
11997
12052
  name: "DCarousel",
@@ -12151,14 +12206,10 @@ var Carousel = defineComponent({
12151
12206
  }, [createVNode("button", {
12152
12207
  "class": "arrow-left",
12153
12208
  "onClick": () => prev()
12154
- }, [createVNode(DIcon, {
12155
- "name": "arrow-left"
12156
- }, null)]), createVNode("button", {
12209
+ }, [createVNode(CarouselArrowLeft, null, null)]), createVNode("button", {
12157
12210
  "class": "arrow-right",
12158
12211
  "onClick": () => next()
12159
- }, [createVNode(DIcon, {
12160
- "name": "arrow-right"
12161
- }, null)])]) : null, createVNode("div", {
12212
+ }, [createVNode(CarouselArrowRight, null, null)])]) : null, createVNode("div", {
12162
12213
  "class": ns2.e("item-wrapper"),
12163
12214
  "ref": wrapperRef
12164
12215
  }, [createVNode("div", {
@@ -12309,6 +12360,10 @@ const cascaderProps = {
12309
12360
  },
12310
12361
  size: {
12311
12362
  type: String
12363
+ },
12364
+ showGlowStyle: {
12365
+ type: Boolean,
12366
+ default: true
12312
12367
  }
12313
12368
  };
12314
12369
  const cascaderulProps = {
@@ -12527,6 +12582,10 @@ const commonProps$2 = {
12527
12582
  size: {
12528
12583
  type: String,
12529
12584
  default: "md"
12585
+ },
12586
+ showGlowStyle: {
12587
+ type: Boolean,
12588
+ default: true
12530
12589
  }
12531
12590
  };
12532
12591
  const checkboxProps = __spreadProps(__spreadValues({}, commonProps$2), {
@@ -12782,7 +12841,10 @@ var Checkbox = defineComponent({
12782
12841
  active: mergedChecked.value,
12783
12842
  "half-checked": props.halfChecked,
12784
12843
  disabled: mergedDisabled.value,
12785
- unchecked: !mergedChecked.value
12844
+ unchecked: !mergedChecked.value,
12845
+ [ns2.m("glow-style")]: props.showGlowStyle,
12846
+ [ns2.m(`checkbox-${size.value}`)]: border.value,
12847
+ [ns2.m("checkbox-bordered")]: border.value
12786
12848
  };
12787
12849
  const labelTitle = mergedIsShowTitle.value ? props.title || props.label : "";
12788
12850
  const bgImgStyle = mergedColor.value && props.halfChecked || mergedColor.value ? `linear-gradient(${mergedColor.value}, ${mergedColor.value})` : "";
@@ -12799,7 +12861,7 @@ var Checkbox = defineComponent({
12799
12861
  [ns2.m("no-animation")]: !mergedShowAnimation.value
12800
12862
  };
12801
12863
  const labelCls = {
12802
- [ns2.m(size.value)]: size.value,
12864
+ [ns2.m(size.value)]: border.value,
12803
12865
  [ns2.m("bordered")]: border.value
12804
12866
  };
12805
12867
  const stopPropagation = ($event) => $event.stopPropagation();
@@ -12811,7 +12873,11 @@ var Checkbox = defineComponent({
12811
12873
  "style": wrapperStyle.value
12812
12874
  }, [createVNode("div", {
12813
12875
  "class": checkboxCls
12814
- }, [createVNode("label", {
12876
+ }, [props.showGlowStyle && mergedShowAnimation.value && createVNode("div", {
12877
+ "class": ns2.e("glow-box")
12878
+ }, [createVNode("span", {
12879
+ "class": "glow-bg"
12880
+ }, null)]), createVNode("label", {
12815
12881
  "title": labelTitle,
12816
12882
  "onClick": handleClick,
12817
12883
  "class": labelCls,
@@ -12833,18 +12899,20 @@ var Checkbox = defineComponent({
12833
12899
  }, [createVNode("span", {
12834
12900
  "class": ns2.e("halfchecked-bg")
12835
12901
  }, null), createVNode("svg", {
12836
- "viewBox": "0 0 16 16",
12837
- "version": "1.1",
12838
- "xmlns": "http://www.w3.org/2000/svg",
12902
+ "viewBox": "0 0 14 14",
12903
+ "width": "14",
12904
+ "height": "14",
12839
12905
  "class": ns2.e("tick-wrap")
12840
12906
  }, [createVNode("g", {
12841
12907
  "stroke": "none",
12842
12908
  "stroke-width": "1",
12843
12909
  "fill": "none",
12844
12910
  "fill-rule": "evenodd"
12845
- }, [createVNode("polygon", {
12846
- "fill-rule": "nonzero",
12847
- "points": "5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",
12911
+ }, [createVNode("path", {
12912
+ "d": "M 2.3 7.0 5.6 9.6 11.4 3.5",
12913
+ "stroke": "#fff",
12914
+ "stroke-width": "1.5",
12915
+ "fill": "none",
12848
12916
  "class": polygonCls
12849
12917
  }, null)])])]), createVNode("span", {
12850
12918
  "class": ns2.e("label-text")
@@ -13482,8 +13550,77 @@ const inputProps = {
13482
13550
  autofocus: {
13483
13551
  type: Boolean,
13484
13552
  default: false
13553
+ },
13554
+ showGlowStyle: {
13555
+ type: Boolean,
13556
+ default: true
13485
13557
  }
13486
13558
  };
13559
+ function SelectArrowIcon() {
13560
+ return createVNode("svg", {
13561
+ "width": "16px",
13562
+ "height": "16px",
13563
+ "viewBox": "0 0 16 16",
13564
+ "version": "1.1",
13565
+ "xmlns": "http://www.w3.org/2000/svg"
13566
+ }, [createVNode("g", {
13567
+ "stroke": "none",
13568
+ "stroke-width": "1",
13569
+ "fill": "none",
13570
+ "fill-rule": "evenodd"
13571
+ }, [createVNode("path", {
13572
+ "d": `M3.64644661,5.64644661 C3.82001296,5.47288026 4.08943736,5.45359511 4.2843055,5.58859116 L4.35355339,5.64644661
13573
+ L8,9.293 L11.6464466,5.64644661 C11.820013,5.47288026 12.0894374,5.45359511 12.2843055,5.58859116 L12.3535534,5.64644661
13574
+ C12.5271197,5.82001296 12.5464049,6.08943736 12.4114088,6.2843055 L12.3535534,6.35355339 L8.35355339,10.3535534
13575
+ C8.17998704,10.5271197 7.91056264,10.5464049 7.7156945,10.4114088 L7.64644661,10.3535534 L3.64644661,6.35355339
13576
+ C3.45118446,6.15829124 3.45118446,5.84170876 3.64644661,5.64644661 Z`
13577
+ }, null)])]);
13578
+ }
13579
+ function SearchIcon$1() {
13580
+ return createVNode("svg", {
13581
+ "width": "16px",
13582
+ "height": "16px",
13583
+ "viewBox": "0 0 16 16",
13584
+ "version": "1.1",
13585
+ "xmlns": "http://www.w3.org/2000/svg"
13586
+ }, [createVNode("g", {
13587
+ "id": "dv-search-icon",
13588
+ "stroke": "none",
13589
+ "stroke-width": "1",
13590
+ "fill": "none",
13591
+ "fill-rule": "evenodd"
13592
+ }, [createVNode("path", {
13593
+ "d": `M7.71295742,1.53283795 C11.0266659,1.53283795 13.7129574,4.21912945 13.7129574,7.53283795 C13.7129574,9.0690006
13594
+ 13.1356609,10.4703284 12.1861834,11.5317059 L14.5333041,13.8784875 C14.7285663,14.0737497 14.7285663,14.3903321
13595
+ 14.5333041,14.5855943 C14.3597378,14.7591606 14.0903134,14.7784458 13.8954453,14.6434497 L13.8261974,14.5855943
13596
+ L11.4604434,12.2188804 C10.4336319,13.0411023 9.13072017,13.5328379 7.71295742,13.5328379 C4.39924893,13.5328379
13597
+ 1.71295742,10.8465464 1.71295742,7.53283795 C1.71295742,4.21912945 4.39924893,1.53283795 7.71295742,1.53283795 Z M7.71295742,2.53283795
13598
+ C4.95153368,2.53283795 2.71295742,4.7714142 2.71295742,7.53283795 C2.71295742,10.2942617 4.95153368,12.5328379 7.71295742,12.5328379
13599
+ C10.4743812,12.5328379 12.7129574,10.2942617 12.7129574,7.53283795 C12.7129574,4.7714142 10.4743812,2.53283795 7.71295742,2.53283795 Z`,
13600
+ "id": "\u5F62\u72B6\u7ED3\u5408",
13601
+ "fill": "#71757F",
13602
+ "fill-rule": "nonzero"
13603
+ }, null)])]);
13604
+ }
13605
+ function InputClearIcon() {
13606
+ return createVNode("svg", {
13607
+ "width": "16px",
13608
+ "height": "16px",
13609
+ "viewBox": "0 0 16 16",
13610
+ "version": "1.1",
13611
+ "xmlns": "http://www.w3.org/2000/svg"
13612
+ }, [createVNode("g", {
13613
+ "stroke": "none",
13614
+ "stroke-width": "1",
13615
+ "fill": "none",
13616
+ "fill-rule": "evenodd"
13617
+ }, [createVNode("path", {
13618
+ "d": "M8,1 C11.8659932,1 15,4.13400675 15,8 C15,11.8659932 11.8659932,15 8,15 C4.13400675,15 1,11.8659932 1,8 C1,4.13400675 4.13400675,1 8,1 Z M5.87867966,5.17157288 C5.68341751,4.97631073 5.36683502,4.97631073 5.17157288,5.17157288 C4.99800652,5.34513923 4.97872137,5.61456363 5.11371742,5.80943177 L5.17157288,5.87867966 L7.29218611,7.99929289 L5.17157288,10.1213203 C4.97631073,10.3165825 4.97631073,10.633165 5.17157288,10.8284271 C5.34513923,11.0019935 5.61456363,11.0212786 5.80943177,10.8862826 L5.87867966,10.8284271 L7.99929289,8.70639967 L10.1213203,10.8284271 C10.3165825,11.0236893 10.633165,11.0236893 10.8284271,10.8284271 C11.0019935,10.6548608 11.0212786,10.3854364 10.8862826,10.1905682 L10.8284271,10.1213203 L8.70710678,8 L10.8284271,5.87867966 C11.0236893,5.68341751 11.0236893,5.36683502 10.8284271,5.17157288 C10.6548608,4.99800652 10.3854364,4.97872137 10.1905682,5.11371742 L10.1213203,5.17157288 L8,7.29289322 L5.87867966,5.17157288 Z",
13619
+ "id": "\u5F62\u72B6",
13620
+ "fill": "#D5D5DB",
13621
+ "fill-rule": "nonzero"
13622
+ }, null)])]);
13623
+ }
13487
13624
  function useInputRender$1(props, ctx2) {
13488
13625
  const formContext = inject(FORM_TOKEN, void 0);
13489
13626
  const formItemContext = inject(FORM_ITEM_TOKEN, void 0);
@@ -13491,7 +13628,7 @@ function useInputRender$1(props, ctx2) {
13491
13628
  const ns2 = useNamespace("input");
13492
13629
  const slotNs = useNamespace("input-slot");
13493
13630
  const isFocus = ref(false);
13494
- const { error: error2, size, disabled } = toRefs(props);
13631
+ const { error: error2, size, disabled, showGlowStyle } = toRefs(props);
13495
13632
  const slots = ctx2.slots;
13496
13633
  const inputDisabled = computed(() => disabled.value || (formContext == null ? void 0 : formContext.disabled));
13497
13634
  const inputSize = computed(() => (size == null ? void 0 : size.value) || (formContext == null ? void 0 : formContext.size) || "");
@@ -13502,6 +13639,7 @@ function useInputRender$1(props, ctx2) {
13502
13639
  [ns2.e("wrapper")]: true,
13503
13640
  [ns2.m("focus")]: isFocus.value,
13504
13641
  [ns2.m("disabled")]: inputDisabled.value,
13642
+ [ns2.m("glow-style")]: showGlowStyle.value,
13505
13643
  [ns2.m("error")]: error2.value || isValidateError.value,
13506
13644
  [ns2.m("feedback")]: Boolean(formItemContext == null ? void 0 : formItemContext.validateState) && (formItemContext == null ? void 0 : formItemContext.showFeedback)
13507
13645
  }));
@@ -13692,11 +13830,8 @@ var DInput = defineComponent({
13692
13830
  "class": ns2.em("password", "icon"),
13693
13831
  "name": passwordVisible.value ? "preview" : "preview-forbidden",
13694
13832
  "onClick": clickPasswordIcon
13695
- }, null), showClearable.value && createVNode(DIcon, {
13696
- "size": inputSize.value,
13833
+ }, null), showClearable.value && createVNode(InputClearIcon, {
13697
13834
  "class": ns2.em("clear", "icon"),
13698
- "name": "error-o",
13699
- "color": "#adb0b8",
13700
13835
  "onClick": onClear
13701
13836
  }, null)])]), ctx2.slots.append && createVNode("div", {
13702
13837
  "class": slotNs.e("append")
@@ -13739,6 +13874,14 @@ var Cascader = defineComponent({
13739
13874
  onBlur
13740
13875
  } = useCascader(props, ctx2);
13741
13876
  provide(POPPER_TRIGGER_TOKEN, origin);
13877
+ const currentPosition = ref("bottom");
13878
+ const styles = computed(() => ({
13879
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
13880
+ "z-index": "var(--devui-z-index-dropdown, 1052)"
13881
+ }));
13882
+ const handlePositionChange = (pos) => {
13883
+ currentPosition.value = pos.split("-")[0] === "top" ? "top" : "bottom";
13884
+ };
13742
13885
  return () => createVNode("div", {
13743
13886
  "style": rootStyle.inputWidth
13744
13887
  }, [createVNode(PopperTrigger, null, {
@@ -13755,26 +13898,23 @@ var Cascader = defineComponent({
13755
13898
  "placeholder": props.placeholder,
13756
13899
  "modelValue": inputValue.value,
13757
13900
  "size": props.size,
13901
+ "show-glow-style": props.showGlowStyle,
13758
13902
  "onInput": handleInput,
13759
13903
  "onFocus": onFocus,
13760
13904
  "onBlur": onBlur
13761
13905
  }, null), !showClearable.value && createVNode("div", {
13762
13906
  "class": `${ns2.e("icon")} ${ns2.m("drop-icon-animation")}`
13763
- }, [createVNode(resolveComponent("d-icon"), {
13764
- "name": "select-arrow",
13765
- "size": "12px"
13766
- }, null)]), showClearable.value && props.clearable && createVNode("div", {
13907
+ }, [createVNode(SelectArrowIcon, null, null)]), showClearable.value && props.clearable && createVNode("div", {
13767
13908
  "class": `${ns2.e("icon")} ${ns2.e("close")}`,
13768
13909
  "onClick": clearData
13769
- }, [createVNode(resolveComponent("d-icon"), {
13770
- "name": "close",
13771
- "size": "12px"
13772
- }, null)])])]
13910
+ }, [createVNode("div", {
13911
+ "class": "close-icon-container"
13912
+ }, [createVNode(InputClearIcon, null, null)])])])]
13773
13913
  }), createVNode(Teleport, {
13774
13914
  "to": "body"
13775
13915
  }, {
13776
13916
  default: () => [createVNode(Transition, {
13777
- "name": "fade"
13917
+ "name": ns2.m(`fade-${currentPosition.value}`)
13778
13918
  }, {
13779
13919
  default: () => [createVNode(FlexibleOverlay, {
13780
13920
  "origin": origin.value,
@@ -13783,9 +13923,8 @@ var Cascader = defineComponent({
13783
13923
  "onUpdate:modelValue": ($event) => menuShow.value = $event,
13784
13924
  "position": position.value,
13785
13925
  "align": "start",
13786
- "style": {
13787
- zIndex: "var(--devui-z-index-dropdown, 1052)"
13788
- }
13926
+ "style": styles.value,
13927
+ "onPositionChange": handlePositionChange
13789
13928
  }, {
13790
13929
  default: () => [createVNode("div", {
13791
13930
  "class": ns2.e("drop-menu-animation")
@@ -13821,7 +13960,7 @@ var CascaderInstall = {
13821
13960
  app.component(Cascader.name, Cascader);
13822
13961
  }
13823
13962
  };
13824
- function SearchIcon$1() {
13963
+ function SearchIcon() {
13825
13964
  return createVNode("svg", {
13826
13965
  "width": "16px",
13827
13966
  "height": "16px",
@@ -16057,6 +16196,10 @@ const inputNumberProps = {
16057
16196
  reg: {
16058
16197
  type: [RegExp, String],
16059
16198
  default: ""
16199
+ },
16200
+ showGlowStyle: {
16201
+ type: Boolean,
16202
+ default: true
16060
16203
  }
16061
16204
  };
16062
16205
  const ns$g = useNamespace$1("input-number");
@@ -16111,6 +16254,7 @@ function useRender$1(props, ctx2) {
16111
16254
  const wrapClass = computed(() => [
16112
16255
  {
16113
16256
  [ns$f.b()]: true,
16257
+ [ns$f.m("glow-style")]: props.showGlowStyle,
16114
16258
  [ns$f.m(inputNumberSize.value)]: true
16115
16259
  },
16116
16260
  customClass
@@ -17013,7 +17157,7 @@ var CategorySearch = defineComponent({
17013
17157
  }, [createVNode("div", {
17014
17158
  "class": "dp-category-search-icon",
17015
17159
  "onClick": onSearch
17016
- }, [createVNode(SearchIcon$1, null, null)]), createVNode("div", {
17160
+ }, [createVNode(SearchIcon, null, null)]), createVNode("div", {
17017
17161
  "ref": scrollBarRef,
17018
17162
  "class": "dp-category-search-line-container"
17019
17163
  }, [createVNode("ul", {
@@ -18726,7 +18870,7 @@ var CollapseItem = defineComponent({
18726
18870
  "onClick": handlerTitleClick
18727
18871
  }, [ctx2.slots.title ? ctx2.slots.title() : props.title, createVNode("span", {
18728
18872
  "class": ns2.e("open-icon")
18729
- }, [createVNode(OpenIcon, null, null)])]), createVNode(Transition, {
18873
+ }, [createVNode(SelectArrowIcon, null, null)])]), createVNode(Transition, {
18730
18874
  "name": transitionNs.b(),
18731
18875
  "onEnter": enter,
18732
18876
  "onLeave": leave
@@ -24107,6 +24251,10 @@ const datePickerProCommonProps = {
24107
24251
  type: {
24108
24252
  type: String,
24109
24253
  default: "date"
24254
+ },
24255
+ showGlowStyle: {
24256
+ type: Boolean,
24257
+ default: true
24110
24258
  }
24111
24259
  };
24112
24260
  const datePickerProProps = __spreadValues({
@@ -26173,6 +26321,10 @@ const timePickerProps = {
26173
26321
  readonly: {
26174
26322
  type: Boolean,
26175
26323
  default: false
26324
+ },
26325
+ showGlowStyle: {
26326
+ type: Boolean,
26327
+ default: true
26176
26328
  }
26177
26329
  };
26178
26330
  function useTimeScroll() {
@@ -27179,6 +27331,9 @@ var DatePickerPro = defineComponent({
27179
27331
  setup(props, ctx2) {
27180
27332
  const app = getCurrentInstance();
27181
27333
  const t = createI18nTranslate("DDatePickerPro", app);
27334
+ const {
27335
+ showGlowStyle
27336
+ } = toRefs(props);
27182
27337
  const ns2 = useNamespace$1("date-picker-pro");
27183
27338
  const {
27184
27339
  originRef,
@@ -27199,6 +27354,14 @@ var DatePickerPro = defineComponent({
27199
27354
  handlerClearTime
27200
27355
  } = usePickerPro(props, ctx2, t);
27201
27356
  const position = ref(["bottom-start", "top-start"]);
27357
+ const currentPosition = ref("bottom");
27358
+ const handlePositionChange = (pos) => {
27359
+ currentPosition.value = pos.split("-")[0] === "top" ? "top" : "bottom";
27360
+ };
27361
+ const styles = computed(() => ({
27362
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
27363
+ "z-index": "var(--devui-z-index-dropdown, 1052)"
27364
+ }));
27202
27365
  return () => {
27203
27366
  var _a2, _b;
27204
27367
  const vSlots = {
@@ -27219,7 +27382,8 @@ var DatePickerPro = defineComponent({
27219
27382
  "onFocus": withModifiers(onFocus, ["stop"]),
27220
27383
  "size": pickerSize.value,
27221
27384
  "disabled": pickerDisabled.value,
27222
- "error": isValidateError.value
27385
+ "error": isValidateError.value,
27386
+ "show-glow-style": showGlowStyle.value
27223
27387
  }, {
27224
27388
  prefix: () => createVNode("span", {
27225
27389
  "class": ns2.e("single-picker-icon")
@@ -27232,7 +27396,7 @@ var DatePickerPro = defineComponent({
27232
27396
  "to": "body"
27233
27397
  }, {
27234
27398
  default: () => [createVNode(Transition, {
27235
- "name": "fade"
27399
+ "name": ns2.m(`fade-${currentPosition.value}`)
27236
27400
  }, {
27237
27401
  default: () => [createVNode(FlexibleOverlay, {
27238
27402
  "modelValue": isPanelShow.value,
@@ -27241,9 +27405,8 @@ var DatePickerPro = defineComponent({
27241
27405
  "origin": originRef.value,
27242
27406
  "align": "start",
27243
27407
  "position": position.value,
27244
- "style": {
27245
- zIndex: "var(--devui-z-index-dropdown, 1052)"
27246
- }
27408
+ "style": styles.value,
27409
+ "onPositionChange": handlePositionChange
27247
27410
  }, {
27248
27411
  default: () => [createVNode(DatePickerProPanel, mergeProps(props, {
27249
27412
  "dateValue": dateValue.value,
@@ -27405,6 +27568,9 @@ var DRangeDatePickerPro = defineComponent({
27405
27568
  setup(props, ctx2) {
27406
27569
  const app = getCurrentInstance();
27407
27570
  const t = createI18nTranslate("DDatePickerPro", app);
27571
+ const {
27572
+ showGlowStyle
27573
+ } = toRefs(props);
27408
27574
  const ns2 = useNamespace$1("range-date-picker-pro");
27409
27575
  const {
27410
27576
  originRef,
@@ -27429,6 +27595,14 @@ var DRangeDatePickerPro = defineComponent({
27429
27595
  onChangeRangeFocusType
27430
27596
  } = useRangePickerPro(props, ctx2);
27431
27597
  const position = ref(["bottom-start", "top-start"]);
27598
+ const currentPosition = ref("bottom");
27599
+ const handlePositionChange = (pos) => {
27600
+ currentPosition.value = pos.split("-")[0] === "top" ? "top" : "bottom";
27601
+ };
27602
+ const styles = computed(() => ({
27603
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
27604
+ "z-index": "var(--devui-z-index-dropdown, 1052)"
27605
+ }));
27432
27606
  return () => {
27433
27607
  var _a2, _b;
27434
27608
  const vSlots = {
@@ -27438,7 +27612,7 @@ var DRangeDatePickerPro = defineComponent({
27438
27612
  return createVNode("div", {
27439
27613
  "class": [ns2.b(), props.showTime ? ns2.e("range-time-width") : ns2.e("range-width"), isPanelShow.value && ns2.m("open")]
27440
27614
  }, [createVNode("div", {
27441
- "class": [ns2.e("range-picker"), pickerDisabled.value && ns2.m("disabled"), isValidateError.value && ns2.m("error")],
27615
+ "class": [ns2.e("range-picker"), pickerDisabled.value && ns2.m("disabled"), isValidateError.value && ns2.m("error"), showGlowStyle.value && ns2.m("glow-style")],
27442
27616
  "ref": originRef,
27443
27617
  "onMouseover": () => isMouseEnter.value = true,
27444
27618
  "onMouseout": () => isMouseEnter.value = false
@@ -27448,6 +27622,7 @@ var DRangeDatePickerPro = defineComponent({
27448
27622
  "ref": startInputRef,
27449
27623
  "modelValue": displayDateValue.value[0],
27450
27624
  "placeholder": placeholder.value[0] || t("startPlaceholder"),
27625
+ "show-glow-style": false,
27451
27626
  "onFocus": withModifiers((e) => {
27452
27627
  onFocus("start");
27453
27628
  focusHandler(e);
@@ -27466,6 +27641,7 @@ var DRangeDatePickerPro = defineComponent({
27466
27641
  "ref": endInputRef,
27467
27642
  "modelValue": displayDateValue.value[1],
27468
27643
  "placeholder": placeholder.value[1] || t("endPlaceholder"),
27644
+ "show-glow-style": false,
27469
27645
  "onFocus": withModifiers((e) => {
27470
27646
  onFocus("end");
27471
27647
  focusHandler(e);
@@ -27481,7 +27657,7 @@ var DRangeDatePickerPro = defineComponent({
27481
27657
  "to": "body"
27482
27658
  }, {
27483
27659
  default: () => [createVNode(Transition, {
27484
- "name": "fade"
27660
+ "name": ns2.m(`fade-${currentPosition.value}`)
27485
27661
  }, {
27486
27662
  default: () => [createVNode(FlexibleOverlay, {
27487
27663
  "modelValue": isPanelShow.value,
@@ -27490,9 +27666,8 @@ var DRangeDatePickerPro = defineComponent({
27490
27666
  "origin": originRef.value,
27491
27667
  "align": "start",
27492
27668
  "position": position.value,
27493
- "style": {
27494
- zIndex: "var(--devui-z-index-dropdown, 1052)"
27495
- }
27669
+ "style": styles.value,
27670
+ "onPositionChange": handlePositionChange
27496
27671
  }, {
27497
27672
  default: () => [createVNode(DatePickerProPanel, mergeProps(props, {
27498
27673
  "dateValue": dateValue.value,
@@ -33477,6 +33652,10 @@ const editableSelectProps = {
33477
33652
  enableLazyLoad: {
33478
33653
  type: Boolean,
33479
33654
  default: false
33655
+ },
33656
+ showGlowStyle: {
33657
+ type: Boolean,
33658
+ default: true
33480
33659
  }
33481
33660
  };
33482
33661
  const SELECT_KEY = Symbol("EditableSelect");
@@ -33580,7 +33759,7 @@ var Dropdown = defineComponent({
33580
33759
  debounceLoadMore();
33581
33760
  };
33582
33761
  const renderOption = () => {
33583
- if (props.options.length === 0) {
33762
+ if (props.options.length === 0 && !select2.loading.value) {
33584
33763
  return createVNode("li", {
33585
33764
  "class": ns2.em("item", "no-data-tip")
33586
33765
  }, [slots.noResultItem ? slots.noResultItem() : emptyText.value]);
@@ -33824,7 +34003,8 @@ function useInputRender(props, states) {
33824
34003
  const inputWrapperClasses = computed(() => ({
33825
34004
  [ns2.e("wrapper")]: true,
33826
34005
  [ns2.em("wrapper", "focus")]: states.isFocus,
33827
- [ns2.em("wrapper", "disabled")]: props.disabled
34006
+ [ns2.em("wrapper", "disabled")]: props.disabled,
34007
+ [ns2.em("wrapper", "glow-style")]: props.showGlowStyle
33828
34008
  }));
33829
34009
  const inputInnerClasses = computed(() => ({
33830
34010
  [ns2.e("inner")]: true
@@ -33955,6 +34135,7 @@ var EditableSelect = defineComponent({
33955
34135
  position,
33956
34136
  placeholder
33957
34137
  } = toRefs(props);
34138
+ const align = computed(() => position.value.some((item) => item.includes("start") || item.includes("end")) ? "start" : null);
33958
34139
  const {
33959
34140
  onInput,
33960
34141
  onMouseenter,
@@ -34003,9 +34184,17 @@ var EditableSelect = defineComponent({
34003
34184
  inputInnerClasses,
34004
34185
  inputSuffixClasses
34005
34186
  } = useInputRender(props, states);
34187
+ const currentPosition = ref("bottom");
34188
+ const handlePositionChange = (pos) => {
34189
+ currentPosition.value = pos.includes("top") || pos.includes("right-end") || pos.includes("left-end") ? "top" : "bottom";
34190
+ };
34191
+ const styles = computed(() => ({
34192
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
34193
+ "z-index": "var(--devui-z-index-dropdown, 1052)"
34194
+ }));
34006
34195
  const renderBasicDropdown = () => {
34007
34196
  return createVNode(Transition, {
34008
- "name": "fade"
34197
+ "name": ns2.m(`fade-${currentPosition.value}`)
34009
34198
  }, {
34010
34199
  default: () => [createVNode(FlexibleOverlay, {
34011
34200
  "ref": overlayRef,
@@ -34013,9 +34202,9 @@ var EditableSelect = defineComponent({
34013
34202
  "onUpdate:modelValue": ($event) => states.visible = $event,
34014
34203
  "origin": originRef.value,
34015
34204
  "position": position.value,
34016
- "style": {
34017
- zIndex: "var(--devui-z-index-dropdown, 1052)"
34018
- }
34205
+ "align": align.value,
34206
+ "style": styles.value,
34207
+ "onPositionChange": handlePositionChange
34019
34208
  }, {
34020
34209
  default: () => [createVNode(Dropdown, {
34021
34210
  "options": filteredOptions.value,
@@ -34067,13 +34256,9 @@ var EditableSelect = defineComponent({
34067
34256
  }, [withDirectives(createVNode("span", {
34068
34257
  "class": ns2.e("clear-icon"),
34069
34258
  "onClick": withModifiers(handleClear, ["stop"])
34070
- }, [createVNode(DIcon, {
34071
- "name": "icon-remove"
34072
- }, null)]), [[vShow, showClearable.value]]), withDirectives(createVNode("span", {
34259
+ }, [createVNode(InputClearIcon, null, null)]), [[vShow, showClearable.value]]), withDirectives(createVNode("span", {
34073
34260
  "class": ns2.e("arrow-icon")
34074
- }, [createVNode(DIcon, {
34075
- "name": "select-arrow"
34076
- }, null)]), [[vShow, !showClearable.value]])])])]), renderDropdown()]);
34261
+ }, [createVNode(SelectArrowIcon, null, null)]), [[vShow, !showClearable.value]])])])]), renderDropdown()]);
34077
34262
  };
34078
34263
  }
34079
34264
  });
@@ -35846,13 +36031,15 @@ function useEditorMd(props, ctx2) {
35846
36031
  customHintReplaceFn,
35847
36032
  hintConfig,
35848
36033
  disableChangeEvent,
35849
- modelValue
36034
+ modelValue,
36035
+ beforeShowHint
35850
36036
  } = toRefs(props);
35851
36037
  const toolbars = reactive(cloneDeep_1(DEFAULT_TOOLBARS));
35852
36038
  const editorRef = ref();
35853
36039
  const renderRef = ref();
35854
36040
  const overlayRef = ref();
35855
36041
  const cursorRef = ref();
36042
+ const containerRef = ref();
35856
36043
  const isHintShow = ref();
35857
36044
  const previewHtmlList = ref([]);
35858
36045
  let editorIns;
@@ -35966,6 +36153,13 @@ function useEditorMd(props, ctx2) {
35966
36153
  const cursor = editorIns.getCursor();
35967
36154
  let i = prefixes.value.length;
35968
36155
  const value = editorIns.getLine(cursor.line).replace(/\t/g, " ");
36156
+ let result2 = false;
36157
+ if (beforeShowHint == null ? void 0 : beforeShowHint.value) {
36158
+ result2 = beforeShowHint.value(value);
36159
+ }
36160
+ if (result2) {
36161
+ return;
36162
+ }
35969
36163
  const selection = editorIns.getSelection();
35970
36164
  const isImgRegx = /^\!\[\S+/;
35971
36165
  if (selection) {
@@ -36080,12 +36274,22 @@ function useEditorMd(props, ctx2) {
36080
36274
  }
36081
36275
  }
36082
36276
  };
36277
+ const onDocumentClick = (e) => {
36278
+ var _a2;
36279
+ if (isHintShow.value && e.target !== containerRef.value && !((_a2 = containerRef.value) == null ? void 0 : _a2.contains(e.target))) {
36280
+ hideHint();
36281
+ }
36282
+ };
36083
36283
  onMounted(async () => {
36084
36284
  await import("codemirror/addon/display/placeholder.js");
36085
36285
  await import("codemirror/mode/markdown/markdown.js");
36086
36286
  const module2 = await import("codemirror");
36087
36287
  CodeMirror = module2.default;
36088
36288
  initEditor();
36289
+ document.addEventListener("click", onDocumentClick);
36290
+ });
36291
+ onBeforeUnmount(() => {
36292
+ document.removeEventListener("click", onDocumentClick);
36089
36293
  });
36090
36294
  watch(modelValue, (val) => {
36091
36295
  if (editorIns) {
@@ -36126,6 +36330,7 @@ function useEditorMd(props, ctx2) {
36126
36330
  overlayRef,
36127
36331
  cursorRef,
36128
36332
  renderRef,
36333
+ containerRef,
36129
36334
  toolbars,
36130
36335
  previewHtmlList,
36131
36336
  isHintShow,
@@ -36253,6 +36458,9 @@ const editorMdProps = __spreadProps(__spreadValues({}, commonProps$1), {
36253
36458
  },
36254
36459
  customHintReplaceFn: {
36255
36460
  type: Function
36461
+ },
36462
+ beforeShowHint: {
36463
+ type: Function
36256
36464
  }
36257
36465
  });
36258
36466
  const EditorMdInjectionKey = Symbol("d-editor-md");
@@ -37113,6 +37321,7 @@ var EditorMd = defineComponent({
37113
37321
  overlayRef,
37114
37322
  cursorRef,
37115
37323
  renderRef,
37324
+ containerRef,
37116
37325
  isHintShow,
37117
37326
  toolbars,
37118
37327
  previewHtmlList,
@@ -37143,6 +37352,7 @@ var EditorMd = defineComponent({
37143
37352
  "z-index": fullscreenZIndex.value
37144
37353
  }, {
37145
37354
  default: () => [createVNode("div", {
37355
+ "ref": containerRef,
37146
37356
  "class": ["dp-md-container", {
37147
37357
  "dp-md-readonly": mode.value === "readonly",
37148
37358
  "dp-md-editonly": mode.value === "editonly",
@@ -37169,7 +37379,9 @@ var EditorMd = defineComponent({
37169
37379
  "onUpdate:modelValue": ($event) => isHintShow.value = $event,
37170
37380
  "origin": cursorRef.value || void 0,
37171
37381
  "align": "start",
37172
- "position": ["bottom-start"]
37382
+ "position": ["bottom-start"],
37383
+ "onClick": withModifiers(() => {
37384
+ }, ["stop"])
37173
37385
  }, {
37174
37386
  default: () => {
37175
37387
  var _a2, _b;
@@ -39412,6 +39624,10 @@ const mentionProps = {
39412
39624
  trigger: {
39413
39625
  type: Array,
39414
39626
  default: ["@"]
39627
+ },
39628
+ showGlowStyle: {
39629
+ type: Boolean,
39630
+ default: true
39415
39631
  }
39416
39632
  };
39417
39633
  const textareaProps = {
@@ -39450,6 +39666,10 @@ const textareaProps = {
39450
39666
  validateEvent: {
39451
39667
  type: Boolean,
39452
39668
  default: true
39669
+ },
39670
+ showGlowStyle: {
39671
+ type: Boolean,
39672
+ default: true
39453
39673
  }
39454
39674
  };
39455
39675
  function useTextareaRender(props) {
@@ -39458,10 +39678,11 @@ function useTextareaRender(props) {
39458
39678
  const ns2 = useNamespace$1("textarea");
39459
39679
  const isValidateError = computed(() => (formItemContext == null ? void 0 : formItemContext.validateState) === "error");
39460
39680
  const isFocus = ref(false);
39461
- const { error: error2, disabled } = toRefs(props);
39681
+ const { error: error2, disabled, showGlowStyle } = toRefs(props);
39462
39682
  const textareaDisabled = computed(() => disabled.value || (formContext == null ? void 0 : formContext.disabled));
39463
39683
  const wrapClasses = computed(() => ({
39464
39684
  [ns2.b()]: true,
39685
+ [ns2.m("glow-style")]: showGlowStyle.value,
39465
39686
  [ns2.m("focus")]: isFocus.value,
39466
39687
  [ns2.m("disabled")]: textareaDisabled.value,
39467
39688
  [ns2.m("error")]: error2.value || isValidateError.value,
@@ -39774,6 +39995,7 @@ var Mention = defineComponent({
39774
39995
  }, [createVNode(resolveComponent("d-textarea"), {
39775
39996
  "modelValue": textContext.value,
39776
39997
  "onUpdate:modelValue": ($event) => textContext.value = $event,
39998
+ "show-glow-style": props.showGlowStyle,
39777
39999
  "onUpdate": handleUpdate,
39778
40000
  "onFocus": handleFocus
39779
40001
  }, null), showSuggestions.value ? loading2.value ? createVNode("div", {
@@ -41221,6 +41443,30 @@ var ModalBody = defineComponent({
41221
41443
  };
41222
41444
  }
41223
41445
  });
41446
+ function CloseIcon() {
41447
+ return createVNode("svg", {
41448
+ "width": "16px",
41449
+ "height": "16px",
41450
+ "viewBox": "0 0 16 16",
41451
+ "version": "1.1",
41452
+ "xmlns": "http://www.w3.org/2000/svg"
41453
+ }, [createVNode("g", {
41454
+ "stroke": "none",
41455
+ "stroke-width": "1",
41456
+ "fill": "none",
41457
+ "fill-rule": "evenodd"
41458
+ }, [createVNode("path", {
41459
+ "d": `M14.6887175,1.25368865 C15.0770801,1.64205125 15.0121881,2.34244569 14.544513,2.81012074 L9.383,7.971 L14.544513,13.1322854
41460
+ C14.9787827,13.5665551 15.0657548,14.2014859 14.7650189,14.6009195 L14.6887175,14.6887175 C14.3003549,15.0770801
41461
+ 13.5999604,15.0121881 13.1322854,14.544513 L13.1322854,14.544513 L7.971,9.383 L2.81012075,14.544513 C2.3424457,15.0121881
41462
+ 1.64205125,15.0770801 1.25368865,14.6887175 C0.865326051,14.3003549 0.930218063,13.5999605 1.39789313,13.1322854 L6.558,7.971
41463
+ L1.39789311,2.81012074 C0.963623424,2.37585105 0.876651354,1.74092026 1.17738727,1.34148668 L1.25368865,1.25368865
41464
+ C1.64205125,0.865326051 2.34244569,0.930218063 2.81012074,1.39789311 L2.81012074,1.39789311 L7.971,6.558 L13.1322854,1.39789311
41465
+ C13.5999605,0.930218063 14.3003549,0.865326051 14.6887175,1.25368865 Z`,
41466
+ "fill": "#8A8E99",
41467
+ "fill-rule": "nonzero"
41468
+ }, null)])]);
41469
+ }
41224
41470
  var modal = "";
41225
41471
  var Modal = defineComponent({
41226
41472
  name: "DModal",
@@ -41337,8 +41583,8 @@ var Modal = defineComponent({
41337
41583
  "onClick": execClose,
41338
41584
  "class": "btn-close"
41339
41585
  }, [createVNode(DIcon, {
41340
- "name": "close",
41341
- "size": "20px"
41586
+ "operable": true,
41587
+ "component": CloseIcon()
41342
41588
  }, null)]), props.type ? renderType() : createVNode("div", {
41343
41589
  "style": {
41344
41590
  cursor: props.draggable ? "move" : "default"
@@ -42148,6 +42394,9 @@ function useSelect$2(props, selectRef, ctx2, focus, blur2, isSelectFocus, t) {
42148
42394
  (_a2 = dropdownRef.value) == null ? void 0 : _a2.updatePosition();
42149
42395
  }
42150
42396
  }, { flush: "post" });
42397
+ onMounted(() => {
42398
+ nextTick(updateInjectOptionsStatus);
42399
+ });
42151
42400
  return {
42152
42401
  selectDisabled,
42153
42402
  selectSize,
@@ -42262,6 +42511,10 @@ const selectProps = {
42262
42511
  multipleLimit: {
42263
42512
  type: Number,
42264
42513
  default: 0
42514
+ },
42515
+ showGlowStyle: {
42516
+ type: Boolean,
42517
+ default: true
42265
42518
  }
42266
42519
  };
42267
42520
  const optionProps = {
@@ -42371,24 +42624,6 @@ var Option = defineComponent({
42371
42624
  };
42372
42625
  }
42373
42626
  });
42374
- const SelectArrowIcon = () => createVNode("svg", {
42375
- "width": "1em",
42376
- "height": "1em",
42377
- "viewBox": "0 0 16 16",
42378
- "version": "1.1",
42379
- "xmlns": "http://www.w3.org/2000/svg"
42380
- }, [createVNode("g", {
42381
- "stroke": "none",
42382
- "stroke-width": "1",
42383
- "fill": "none",
42384
- "fill-rule": "evenodd"
42385
- }, [createVNode("path", {
42386
- "d": `M12.1464466,6.85355339 L8.35355339,10.6464466 C8.15829124,10.8417088 7.84170876,10.8417088
42387
- 7.64644661,10.6464466 L3.85355339,6.85355339 C3.65829124,6.65829124 3.65829124,6.34170876
42388
- 3.85355339,6.14644661 C3.94732158,6.05267842 4.07449854,6 4.20710678,6 L11.7928932,6 C12.0690356,6
42389
- 12.2928932,6.22385763 12.2928932,6.5 C12.2928932,6.63260824 12.2402148,6.7597852 12.1464466,6.85355339 Z`,
42390
- "fill-rule": "nonzero"
42391
- }, null)])]);
42392
42627
  function useSelectContent() {
42393
42628
  const ns2 = useNamespace$1("select");
42394
42629
  const select2 = inject(SELECT_TOKEN);
@@ -42427,7 +42662,8 @@ function useSelectContent() {
42427
42662
  const selectionCls = computed(() => {
42428
42663
  return className$1(ns2.e("selection"), {
42429
42664
  [ns2.e("clearable")]: mergeClearable.value,
42430
- [ns2.em("selection", "error")]: isValidateError.value
42665
+ [ns2.em("selection", "error")]: isValidateError.value,
42666
+ [ns2.em("selection", "glow-style")]: Boolean(select2 == null ? void 0 : select2.showGlowStyle)
42431
42667
  });
42432
42668
  });
42433
42669
  const inputCls = computed(() => {
@@ -42579,7 +42815,7 @@ var SelectContent = defineComponent({
42579
42815
  }, null), createVNode("span", {
42580
42816
  "onClick": handleClear,
42581
42817
  "class": clearCls.value
42582
- }, [createVNode(AlertCloseIcon, null, null)]), createVNode("span", {
42818
+ }, [createVNode(InputClearIcon, null, null)]), createVNode("span", {
42583
42819
  "class": arrowCls.value
42584
42820
  }, [createVNode(SelectArrowIcon, null, null)])]);
42585
42821
  };
@@ -43277,7 +43513,7 @@ var PageSize = defineComponent({
43277
43513
  setup() {
43278
43514
  const ns2 = useNamespace("pagination");
43279
43515
  const paginationContext = inject(paginationInjectionKey);
43280
- const iconRotate = ref(0);
43516
+ const isOpen = ref(false);
43281
43517
  const {
43282
43518
  size,
43283
43519
  currentPageSize,
@@ -43286,8 +43522,13 @@ var PageSize = defineComponent({
43286
43522
  pageSizeChange,
43287
43523
  t
43288
43524
  } = paginationContext;
43525
+ const pageSizeClasses = computed(() => ({
43526
+ [ns2.e("size")]: true,
43527
+ [ns2.em("size", size.value)]: Boolean(size.value),
43528
+ [ns2.em("size", "open")]: isOpen.value
43529
+ }));
43289
43530
  const onDropdownToggle = (e) => {
43290
- iconRotate.value = e ? 180 : 0;
43531
+ isOpen.value = e;
43291
43532
  };
43292
43533
  return () => createVNode(Fragment, null, [createVNode(Dropdown$1, {
43293
43534
  "position": pageSizeDirection.value,
@@ -43296,14 +43537,8 @@ var PageSize = defineComponent({
43296
43537
  }, {
43297
43538
  default: () => createVNode("div", {
43298
43539
  "tabindex": "0",
43299
- "class": [ns2.e("size"), size.value ? ns2.em("size", size.value) : ""]
43300
- }, [createVNode(DIcon, {
43301
- "name": "select-arrow",
43302
- "size": "16px",
43303
- "rotate": iconRotate.value
43304
- }, {
43305
- prefix: () => createVNode("span", null, [currentPageSize.value])
43306
- })]),
43540
+ "class": pageSizeClasses.value
43541
+ }, [createVNode("span", null, [currentPageSize.value]), createVNode(SelectArrowIcon, null, null)]),
43307
43542
  menu: () => createVNode("ul", null, [pageSizeOptions.value.map((item, index2) => createVNode("li", {
43308
43543
  "class": {
43309
43544
  active: item === currentPageSize.value
@@ -44200,6 +44435,10 @@ const radioCommonProps = {
44200
44435
  type: Boolean,
44201
44436
  default: false
44202
44437
  },
44438
+ showGlowStyle: {
44439
+ type: Boolean,
44440
+ default: true
44441
+ },
44203
44442
  size: {
44204
44443
  type: String
44205
44444
  }
@@ -44366,17 +44605,18 @@ var Radio = defineComponent({
44366
44605
  const radioCls = {
44367
44606
  [ns2.e("wrapper")]: true
44368
44607
  };
44369
- const labelCls = {
44608
+ const labelCls = computed(() => ({
44370
44609
  active: isChecked.value,
44371
44610
  disabled: isDisabled.value,
44372
44611
  [ns2.b()]: true,
44373
44612
  [ns2.m("bordered")]: border.value,
44374
- [ns2.m(size.value)]: size.value
44375
- };
44613
+ [ns2.m(size.value)]: border.value,
44614
+ [ns2.m("glow-style")]: props.showGlowStyle
44615
+ }));
44376
44616
  return createVNode("div", {
44377
44617
  "class": radioCls
44378
44618
  }, [createVNode("label", {
44379
- "class": labelCls
44619
+ "class": labelCls.value
44380
44620
  }, [createVNode("input", {
44381
44621
  "type": "radio",
44382
44622
  "name": radioName.value,
@@ -44387,30 +44627,7 @@ var Radio = defineComponent({
44387
44627
  "checked": isChecked.value
44388
44628
  }, null), createVNode("span", {
44389
44629
  "class": ns2.e("material")
44390
- }, [createVNode("svg", {
44391
- "height": "100%",
44392
- "width": "100%",
44393
- "viewBox": "0 0 1024 1024",
44394
- "xmlns": "http://www.w3.org/2000/svg"
44395
- }, [createVNode("circle", {
44396
- "class": {
44397
- [ns2.e("material-outer")]: true,
44398
- disabled: isDisabled.value
44399
- },
44400
- "cx": "512",
44401
- "cy": "512",
44402
- "r": "486.5",
44403
- "stroke-width": "51"
44404
- }, null), createVNode("circle", {
44405
- "class": {
44406
- [ns2.e("material-inner")]: true,
44407
- disabled: isDisabled.value
44408
- },
44409
- "cx": "512",
44410
- "fill-rule": "nonzero",
44411
- "cy": "512",
44412
- "r": "320"
44413
- }, null)])]), createVNode("span", {
44630
+ }, null), createVNode("span", {
44414
44631
  "class": ns2.e("label")
44415
44632
  }, [(_b = (_a2 = ctx2.slots).default) == null ? void 0 : _b.call(_a2)])])]);
44416
44633
  };
@@ -45305,26 +45522,6 @@ const keydownHandles = (ctx2, keywords, props) => {
45305
45522
  };
45306
45523
  };
45307
45524
  var search = "";
45308
- const SearchCloseIcon = () => createVNode("svg", {
45309
- "viewBox": "0 0 1024 1024",
45310
- "width": "12px",
45311
- "height": "12px"
45312
- }, [createVNode("path", {
45313
- "d": `M940.8 207.530667L818.602667 85.333333l-305.493334 305.493334L207.616 85.333333
45314
- 85.333333 207.530667l305.493334 305.493333L85.333333 818.517333l122.282667 122.282667
45315
- 305.493333-305.493333 305.493334 305.493333 122.197333-122.282667-305.493333-305.493333z`,
45316
- "p-id": "30810"
45317
- }, null)]);
45318
- const SearchIcon = () => createVNode("svg", {
45319
- "viewBox": "0 0 1024 1024",
45320
- "version": "1.1",
45321
- "width": "12px",
45322
- "height": "12px"
45323
- }, [createVNode("path", {
45324
- "d": "M1005.312 914.752l-198.528-198.464A448 448 0 1 0 0 448a448 448 0 0 0 716.288 358.784l198.4 198.4a64 64 0 1 0 90.624-90.432zM448 767.936A320 320 0 1 1 448 128a320 320 0 0 1 0 640z",
45325
- "fill": "#262626",
45326
- "p-id": "32547"
45327
- }, null)]);
45328
45525
  var DSearch = defineComponent({
45329
45526
  name: "DSearch",
45330
45527
  props: searchProps,
@@ -45379,13 +45576,13 @@ var DSearch = defineComponent({
45379
45576
  }, [props.iconPosition === "left" && createVNode("div", {
45380
45577
  "class": ns2.e("icon"),
45381
45578
  "onClick": onClickHandle
45382
- }, [createVNode(SearchIcon, null, null)]), createVNode(DInput, inputProps2, null), clearIconShow.value && createVNode("div", {
45579
+ }, [createVNode(SearchIcon$1, null, null)]), createVNode(DInput, inputProps2, null), clearIconShow.value && createVNode("div", {
45383
45580
  "class": ns2.e("clear"),
45384
45581
  "onClick": onClearHandle
45385
- }, [createVNode(SearchCloseIcon, null, null)]), props.iconPosition === "right" && createVNode("div", {
45582
+ }, [createVNode(InputClearIcon, null, null)]), props.iconPosition === "right" && createVNode("div", {
45386
45583
  "class": ns2.e("icon"),
45387
45584
  "onClick": onClickHandle
45388
- }, [createVNode(SearchIcon, null, null)])]);
45585
+ }, [createVNode(SearchIcon$1, null, null)])]);
45389
45586
  };
45390
45587
  }
45391
45588
  });
@@ -47341,6 +47538,8 @@ var Switch = defineComponent({
47341
47538
  switchDisabled,
47342
47539
  switchSize
47343
47540
  } = useSwitch(props, ctx2);
47541
+ const AnimationNumberDurationSlow = 300;
47542
+ const isMousedown = ref(false);
47344
47543
  return () => {
47345
47544
  const switchCls = {
47346
47545
  [ns2.b()]: true,
@@ -47354,17 +47553,29 @@ var Switch = defineComponent({
47354
47553
  const switchWrapperStyle = [`background: ${checked.value && !switchDisabled.value ? props.color : ""}`, `border-color: ${checked.value && !switchDisabled.value ? props.color : ""}`];
47355
47554
  const checkedContent = renderSlot(useSlots(), "checkedContent");
47356
47555
  const uncheckedContent = renderSlot(useSlots(), "uncheckedContent");
47556
+ const onMousedown2 = () => {
47557
+ isMousedown.value = true;
47558
+ };
47559
+ const onMouseup = () => {
47560
+ setTimeout(() => {
47561
+ isMousedown.value = false;
47562
+ }, AnimationNumberDurationSlow / 2);
47563
+ };
47357
47564
  return createVNode("div", {
47358
47565
  "class": switchCls
47359
47566
  }, [createVNode("span", {
47360
47567
  "class": switchWrapperCls,
47361
47568
  "style": switchWrapperStyle,
47362
- "onClick": toggle
47569
+ "onClick": toggle,
47570
+ "onMousedown": onMousedown2,
47571
+ "onMouseup": onMouseup
47363
47572
  }, [createVNode("span", {
47364
47573
  "class": ns2.e("inner-wrapper")
47365
47574
  }, [createVNode("div", {
47366
47575
  "class": ns2.e("inner")
47367
- }, [checked.value ? checkedContent : uncheckedContent])]), createVNode("small", null, null)])]);
47576
+ }, [checked.value ? checkedContent : uncheckedContent])]), createVNode("small", {
47577
+ "class": isMousedown.value && !props.disabled && "mouseDown"
47578
+ }, null)])]);
47368
47579
  };
47369
47580
  }
47370
47581
  });
@@ -50109,6 +50320,14 @@ var TimePicker = defineComponent({
50109
50320
  const activeSecond = ref("00");
50110
50321
  const format2 = props.format.toLowerCase();
50111
50322
  const position = ref(["bottom-start", "top-start"]);
50323
+ const currentPosition = ref("bottom");
50324
+ const handlePositionChange = (pos) => {
50325
+ currentPosition.value = pos.split("-")[0] === "top" ? "top" : "bottom";
50326
+ };
50327
+ const styles = computed(() => ({
50328
+ transformOrigin: currentPosition.value === "top" ? "0% 100%" : "0% 0%",
50329
+ "z-index": "var(--devui-z-index-dropdown, 1052)"
50330
+ }));
50112
50331
  const {
50113
50332
  showPopup,
50114
50333
  trueTimeValue,
@@ -50150,6 +50369,7 @@ var TimePicker = defineComponent({
50150
50369
  "placeholder": props.placeholder,
50151
50370
  "disabled": props.disabled,
50152
50371
  "readonly": props.readonly,
50372
+ "show-glow-style": props.showGlowStyle,
50153
50373
  "size": props.size,
50154
50374
  "onFocus": clickVerifyFun
50155
50375
  }, {
@@ -50170,7 +50390,7 @@ var TimePicker = defineComponent({
50170
50390
  "to": "body"
50171
50391
  }, {
50172
50392
  default: () => [createVNode(Transition, {
50173
- "name": "fade"
50393
+ "name": ns2.m(`fade-${currentPosition.value}`)
50174
50394
  }, {
50175
50395
  default: () => {
50176
50396
  var _a2;
@@ -50181,9 +50401,8 @@ var TimePicker = defineComponent({
50181
50401
  "origin": (_a2 = inputDom.value) == null ? void 0 : _a2.$el,
50182
50402
  "position": position.value,
50183
50403
  "align": "start",
50184
- "style": {
50185
- zIndex: "var(--devui-z-index-dropdown, 1052)"
50186
- }
50404
+ "style": styles.value,
50405
+ "onPositionChange": handlePositionChange
50187
50406
  }, {
50188
50407
  default: () => [createVNode(TimePopup, {
50189
50408
  "ref": timePopupDom,
@@ -54098,7 +54317,7 @@ const installs = [
54098
54317
  VirtualListInstall
54099
54318
  ];
54100
54319
  var vueDevui = {
54101
- version: "1.6.4",
54320
+ version: "1.6.6",
54102
54321
  install(app) {
54103
54322
  installs.forEach((p) => app.use(p));
54104
54323
  }