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
@@ -29,7 +29,7 @@ var __objRest = (source, exclude) => {
29
29
  }
30
30
  return target;
31
31
  };
32
- import { defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, ref, unref, nextTick, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, computed, onMounted, Teleport, createTextVNode, onBeforeUnmount, toRef, onBeforeMount, vShow, resolveComponent, getCurrentInstance, resolveDirective, resolveDynamicComponent } from "vue";
32
+ import { defineComponent, watch, provide, reactive, toRefs, createVNode, onUnmounted, Transition, mergeProps, ref, unref, nextTick, withModifiers, Comment, Text, h, Fragment, inject, withDirectives, cloneVNode, computed, onMounted, Teleport, createTextVNode, onBeforeUnmount, toRef, onBeforeMount, vShow, resolveComponent, getCurrentInstance, resolveDirective } from "vue";
33
33
  import { onClickOutside } from "@vueuse/core";
34
34
  import "clipboard";
35
35
  import { offset, autoPlacement, arrow, shift, computePosition } from "@floating-ui/dom";
@@ -5587,9 +5587,6 @@ function useNamespace(block, needDot = false) {
5587
5587
  em
5588
5588
  };
5589
5589
  }
5590
- function isUrl(value) {
5591
- return /^((http|https):)?\/\//.test(value);
5592
- }
5593
5590
  function useFieldCollection() {
5594
5591
  const itemContexts = [];
5595
5592
  const addItemContext = (field) => {
@@ -8143,6 +8140,9 @@ function useSelect(props, selectRef, ctx2, focus, blur, isSelectFocus, t) {
8143
8140
  (_a = dropdownRef.value) == null ? void 0 : _a.updatePosition();
8144
8141
  }
8145
8142
  }, { flush: "post" });
8143
+ onMounted(() => {
8144
+ nextTick(updateInjectOptionsStatus);
8145
+ });
8146
8146
  return {
8147
8147
  selectDisabled,
8148
8148
  selectSize,
@@ -8257,6 +8257,10 @@ const selectProps = {
8257
8257
  multipleLimit: {
8258
8258
  type: Number,
8259
8259
  default: 0
8260
+ },
8261
+ showGlowStyle: {
8262
+ type: Boolean,
8263
+ default: true
8260
8264
  }
8261
8265
  };
8262
8266
  const optionProps = {
@@ -8323,6 +8327,10 @@ const commonProps = {
8323
8327
  size: {
8324
8328
  type: String,
8325
8329
  default: "md"
8330
+ },
8331
+ showGlowStyle: {
8332
+ type: Boolean,
8333
+ default: true
8326
8334
  }
8327
8335
  };
8328
8336
  const checkboxProps = __spreadProps(__spreadValues({}, commonProps), {
@@ -8578,7 +8586,10 @@ var Checkbox = defineComponent({
8578
8586
  active: mergedChecked.value,
8579
8587
  "half-checked": props.halfChecked,
8580
8588
  disabled: mergedDisabled.value,
8581
- unchecked: !mergedChecked.value
8589
+ unchecked: !mergedChecked.value,
8590
+ [ns2.m("glow-style")]: props.showGlowStyle,
8591
+ [ns2.m(`checkbox-${size.value}`)]: border.value,
8592
+ [ns2.m("checkbox-bordered")]: border.value
8582
8593
  };
8583
8594
  const labelTitle = mergedIsShowTitle.value ? props.title || props.label : "";
8584
8595
  const bgImgStyle = mergedColor.value && props.halfChecked || mergedColor.value ? `linear-gradient(${mergedColor.value}, ${mergedColor.value})` : "";
@@ -8595,7 +8606,7 @@ var Checkbox = defineComponent({
8595
8606
  [ns2.m("no-animation")]: !mergedShowAnimation.value
8596
8607
  };
8597
8608
  const labelCls = {
8598
- [ns2.m(size.value)]: size.value,
8609
+ [ns2.m(size.value)]: border.value,
8599
8610
  [ns2.m("bordered")]: border.value
8600
8611
  };
8601
8612
  const stopPropagation = ($event) => $event.stopPropagation();
@@ -8607,7 +8618,11 @@ var Checkbox = defineComponent({
8607
8618
  "style": wrapperStyle.value
8608
8619
  }, [createVNode("div", {
8609
8620
  "class": checkboxCls
8610
- }, [createVNode("label", {
8621
+ }, [props.showGlowStyle && mergedShowAnimation.value && createVNode("div", {
8622
+ "class": ns2.e("glow-box")
8623
+ }, [createVNode("span", {
8624
+ "class": "glow-bg"
8625
+ }, null)]), createVNode("label", {
8611
8626
  "title": labelTitle,
8612
8627
  "onClick": handleClick,
8613
8628
  "class": labelCls,
@@ -8629,18 +8644,20 @@ var Checkbox = defineComponent({
8629
8644
  }, [createVNode("span", {
8630
8645
  "class": ns2.e("halfchecked-bg")
8631
8646
  }, null), createVNode("svg", {
8632
- "viewBox": "0 0 16 16",
8633
- "version": "1.1",
8634
- "xmlns": "http://www.w3.org/2000/svg",
8647
+ "viewBox": "0 0 14 14",
8648
+ "width": "14",
8649
+ "height": "14",
8635
8650
  "class": ns2.e("tick-wrap")
8636
8651
  }, [createVNode("g", {
8637
8652
  "stroke": "none",
8638
8653
  "stroke-width": "1",
8639
8654
  "fill": "none",
8640
8655
  "fill-rule": "evenodd"
8641
- }, [createVNode("polygon", {
8642
- "fill-rule": "nonzero",
8643
- "points": "5.17391304 6.56521739 7.7173913 9.10869565 11.826087 5 13 6.17391304 7.7173913 11.4565217 4 7.73913043",
8656
+ }, [createVNode("path", {
8657
+ "d": "M 2.3 7.0 5.6 9.6 11.4 3.5",
8658
+ "stroke": "#fff",
8659
+ "stroke-width": "1.5",
8660
+ "fill": "none",
8644
8661
  "class": polygonCls
8645
8662
  }, null)])])]), createVNode("span", {
8646
8663
  "class": ns2.e("label-text")
@@ -8824,47 +8841,45 @@ var Option = defineComponent({
8824
8841
  };
8825
8842
  }
8826
8843
  });
8827
- const AlertCloseIcon = () => createVNode("svg", {
8828
- "width": "10px",
8829
- "height": "10px",
8830
- "viewBox": "0 0 10 10",
8831
- "version": "1.1",
8832
- "xmlns": "http://www.w3.org/2000/svg"
8833
- }, [createVNode("g", {
8834
- "stroke": "none",
8835
- "stroke-width": "1",
8836
- "fill": "none",
8837
- "fill-rule": "evenodd"
8838
- }, [createVNode("g", {
8839
- "transform": "translate(-3.000000, -3.000000)",
8840
- "fill-rule": "nonzero"
8841
- }, [createVNode("path", {
8842
- "d": `M11.6426,3.19816936 C11.9239974,2.91574512 12.4131626,2.93784891 12.7352108,3.24751057 C13.0571998,3.5572302
8843
- 13.0901298,4.03723416 12.8087324,4.31965839 L9.14064666,7.99900183 L12.8087324,11.6803416 C13.0645482,11.9370909
8844
- 13.0605893,12.3571292 12.8158402,12.6640749 L12.7352108,12.7524894 C12.4131626,13.0621511 11.9239974,13.0842548
8845
- 11.6426,12.8018306 L8,9.14489021 L4.35740003,12.8018306 C4.10158422,13.05858 3.6740594,13.0636532 3.35648225,12.8298003
8846
- L3.26478919,12.7524894 C2.94280021,12.4427698 2.90987023,11.9627658 3.19126762,11.6803416 L6.8583349,7.99900183
8847
- L3.19126762,4.31965839 C2.93545181,4.06290908 2.93941068,3.64287076 3.18415975,3.3359251 L3.26478919,3.24751057
8848
- C3.58683735,2.93784891 4.07600264,2.91574512 4.35740003,3.19816936 L8,6.85411161 L11.6426,3.19816936 Z`
8849
- }, null)])])]);
8850
- const SelectArrowIcon = () => createVNode("svg", {
8851
- "width": "1em",
8852
- "height": "1em",
8853
- "viewBox": "0 0 16 16",
8854
- "version": "1.1",
8855
- "xmlns": "http://www.w3.org/2000/svg"
8856
- }, [createVNode("g", {
8857
- "stroke": "none",
8858
- "stroke-width": "1",
8859
- "fill": "none",
8860
- "fill-rule": "evenodd"
8861
- }, [createVNode("path", {
8862
- "d": `M12.1464466,6.85355339 L8.35355339,10.6464466 C8.15829124,10.8417088 7.84170876,10.8417088
8863
- 7.64644661,10.6464466 L3.85355339,6.85355339 C3.65829124,6.65829124 3.65829124,6.34170876
8864
- 3.85355339,6.14644661 C3.94732158,6.05267842 4.07449854,6 4.20710678,6 L11.7928932,6 C12.0690356,6
8865
- 12.2928932,6.22385763 12.2928932,6.5 C12.2928932,6.63260824 12.2402148,6.7597852 12.1464466,6.85355339 Z`,
8866
- "fill-rule": "nonzero"
8867
- }, null)])]);
8844
+ function SelectArrowIcon() {
8845
+ return createVNode("svg", {
8846
+ "width": "16px",
8847
+ "height": "16px",
8848
+ "viewBox": "0 0 16 16",
8849
+ "version": "1.1",
8850
+ "xmlns": "http://www.w3.org/2000/svg"
8851
+ }, [createVNode("g", {
8852
+ "stroke": "none",
8853
+ "stroke-width": "1",
8854
+ "fill": "none",
8855
+ "fill-rule": "evenodd"
8856
+ }, [createVNode("path", {
8857
+ "d": `M3.64644661,5.64644661 C3.82001296,5.47288026 4.08943736,5.45359511 4.2843055,5.58859116 L4.35355339,5.64644661
8858
+ L8,9.293 L11.6464466,5.64644661 C11.820013,5.47288026 12.0894374,5.45359511 12.2843055,5.58859116 L12.3535534,5.64644661
8859
+ C12.5271197,5.82001296 12.5464049,6.08943736 12.4114088,6.2843055 L12.3535534,6.35355339 L8.35355339,10.3535534
8860
+ C8.17998704,10.5271197 7.91056264,10.5464049 7.7156945,10.4114088 L7.64644661,10.3535534 L3.64644661,6.35355339
8861
+ C3.45118446,6.15829124 3.45118446,5.84170876 3.64644661,5.64644661 Z`
8862
+ }, null)])]);
8863
+ }
8864
+ function InputClearIcon() {
8865
+ return createVNode("svg", {
8866
+ "width": "16px",
8867
+ "height": "16px",
8868
+ "viewBox": "0 0 16 16",
8869
+ "version": "1.1",
8870
+ "xmlns": "http://www.w3.org/2000/svg"
8871
+ }, [createVNode("g", {
8872
+ "stroke": "none",
8873
+ "stroke-width": "1",
8874
+ "fill": "none",
8875
+ "fill-rule": "evenodd"
8876
+ }, [createVNode("path", {
8877
+ "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",
8878
+ "id": "\u5F62\u72B6",
8879
+ "fill": "#D5D5DB",
8880
+ "fill-rule": "nonzero"
8881
+ }, null)])]);
8882
+ }
8868
8883
  const tagProps = {
8869
8884
  type: {
8870
8885
  type: String,
@@ -9199,7 +9214,8 @@ function useSelectContent() {
9199
9214
  const selectionCls = computed(() => {
9200
9215
  return className(ns2.e("selection"), {
9201
9216
  [ns2.e("clearable")]: mergeClearable.value,
9202
- [ns2.em("selection", "error")]: isValidateError.value
9217
+ [ns2.em("selection", "error")]: isValidateError.value,
9218
+ [ns2.em("selection", "glow-style")]: Boolean(select2 == null ? void 0 : select2.showGlowStyle)
9203
9219
  });
9204
9220
  });
9205
9221
  const inputCls = computed(() => {
@@ -9351,7 +9367,7 @@ var SelectContent = defineComponent({
9351
9367
  }, null), createVNode("span", {
9352
9368
  "onClick": handleClear,
9353
9369
  "class": clearCls.value
9354
- }, [createVNode(AlertCloseIcon, null, null)]), createVNode("span", {
9370
+ }, [createVNode(InputClearIcon, null, null)]), createVNode("span", {
9355
9371
  "class": arrowCls.value
9356
9372
  }, [createVNode(SelectArrowIcon, null, null)])]);
9357
9373
  };
@@ -10100,188 +10116,6 @@ var PageNumBtn = defineComponent({
10100
10116
  }, [createVNode(NextLinkIcon, null, null)])])]);
10101
10117
  }
10102
10118
  });
10103
- const DEFAULT_PREFIX = "icon";
10104
- const iconProps = {
10105
- name: {
10106
- type: String,
10107
- default: "",
10108
- required: true
10109
- },
10110
- size: {
10111
- type: [Number, String],
10112
- default: "inherit"
10113
- },
10114
- color: {
10115
- type: String,
10116
- default: "inherit"
10117
- },
10118
- component: {
10119
- type: Object,
10120
- default: null
10121
- },
10122
- classPrefix: {
10123
- type: String,
10124
- default: DEFAULT_PREFIX
10125
- },
10126
- operable: {
10127
- type: Boolean,
10128
- default: false
10129
- },
10130
- disabled: {
10131
- type: Boolean,
10132
- default: false
10133
- },
10134
- rotate: {
10135
- type: [Number, String]
10136
- }
10137
- };
10138
- const svgIconProps = {
10139
- name: {
10140
- type: String,
10141
- default: "",
10142
- required: true
10143
- },
10144
- color: {
10145
- type: String,
10146
- default: "inherit"
10147
- },
10148
- size: {
10149
- type: [Number, String],
10150
- default: "inherit"
10151
- }
10152
- };
10153
- var icon = "";
10154
- var svgIcon = defineComponent({
10155
- name: "DSvgIcon",
10156
- props: svgIconProps,
10157
- setup(props) {
10158
- const {
10159
- name,
10160
- color,
10161
- size
10162
- } = toRefs(props);
10163
- const ns2 = useNamespace$1("svg-icon");
10164
- const iconName = computed(() => `#icon-${name.value}`);
10165
- const iconSize = computed(() => {
10166
- return typeof size.value === "number" ? `${size.value}px` : size.value;
10167
- });
10168
- const styles = {
10169
- width: iconSize.value,
10170
- height: iconSize.value
10171
- };
10172
- return () => {
10173
- return createVNode("svg", {
10174
- "class": ns2.b(),
10175
- "style": styles
10176
- }, [createVNode("use", {
10177
- "xlink:href": iconName.value,
10178
- "fill": color.value
10179
- }, null)]);
10180
- };
10181
- }
10182
- });
10183
- function useIconDom(props, ctx2) {
10184
- const {
10185
- component,
10186
- name,
10187
- size,
10188
- color,
10189
- classPrefix,
10190
- rotate
10191
- } = toRefs(props);
10192
- const ns2 = useNamespace$1("icon");
10193
- const iconSize = computed(() => {
10194
- return typeof size.value === "number" ? `${size.value}px` : size.value;
10195
- });
10196
- const IconComponent = component.value ? resolveDynamicComponent(component.value) : resolveDynamicComponent(svgIcon);
10197
- const imgIconDom = () => {
10198
- return createVNode("img", mergeProps({
10199
- "src": name.value,
10200
- "alt": name.value.split("/")[name.value.split("/").length - 1],
10201
- "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
10202
- "style": {
10203
- width: iconSize.value || "",
10204
- transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`,
10205
- verticalAlign: "middle"
10206
- }
10207
- }, ctx2.attrs), null);
10208
- };
10209
- const svgIconDom = () => {
10210
- return createVNode(IconComponent, mergeProps({
10211
- "name": name.value,
10212
- "color": color.value,
10213
- "size": iconSize.value,
10214
- "class": [(rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
10215
- "style": {
10216
- transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
10217
- }
10218
- }, ctx2.attrs), null);
10219
- };
10220
- const fontIconDom = () => {
10221
- const fontIconClass = /^icon-/.test(name.value) ? name.value : `${classPrefix.value}-${name.value}`;
10222
- return createVNode("i", mergeProps({
10223
- "class": [classPrefix.value, fontIconClass, (rotate == null ? void 0 : rotate.value) === "infinite" && ns2.m("spin")],
10224
- "style": {
10225
- fontSize: iconSize.value,
10226
- color: color.value,
10227
- transform: `rotate(${rotate == null ? void 0 : rotate.value}deg)`
10228
- }
10229
- }, ctx2.attrs), null);
10230
- };
10231
- const iconDom = () => {
10232
- return component.value ? svgIconDom() : isUrl(name.value) ? imgIconDom() : fontIconDom();
10233
- };
10234
- return {
10235
- iconDom
10236
- };
10237
- }
10238
- var Icon = defineComponent({
10239
- name: "DIcon",
10240
- props: iconProps,
10241
- emits: ["click"],
10242
- setup(props, ctx2) {
10243
- const {
10244
- disabled,
10245
- operable
10246
- } = toRefs(props);
10247
- const {
10248
- iconDom
10249
- } = useIconDom(props, ctx2);
10250
- const ns2 = useNamespace$1("icon");
10251
- const wrapClassed = computed(() => ({
10252
- [ns2.e("container")]: true,
10253
- [ns2.m("disabled")]: disabled.value,
10254
- [ns2.m("operable")]: operable.value,
10255
- [ns2.m("no-slots")]: !Object.keys(ctx2.slots).length
10256
- }));
10257
- const onClick = (e) => {
10258
- if (disabled.value) {
10259
- return;
10260
- }
10261
- ctx2.emit("click", e);
10262
- };
10263
- return () => {
10264
- var _a, _b, _c, _d;
10265
- return createVNode("div", {
10266
- "class": wrapClassed.value,
10267
- "onClick": onClick
10268
- }, [(_b = (_a = ctx2.slots).prefix) == null ? void 0 : _b.call(_a), iconDom(), (_d = (_c = ctx2.slots).suffix) == null ? void 0 : _d.call(_c)]);
10269
- };
10270
- }
10271
- });
10272
- var iconGroup = "";
10273
- defineComponent({
10274
- name: "DIconGroup",
10275
- setup(_, ctx2) {
10276
- const ns2 = useNamespace$1("icon-group");
10277
- return () => {
10278
- var _a, _b;
10279
- return createVNode("div", {
10280
- "class": ns2.b()
10281
- }, [(_b = (_a = ctx2.slots).default) == null ? void 0 : _b.call(_a)]);
10282
- };
10283
- }
10284
- });
10285
10119
  const dropdownProps = {
10286
10120
  visible: {
10287
10121
  type: Boolean,
@@ -10413,17 +10247,7 @@ const useDropdownEvent = ({ id, isOpen, origin, dropdownRef, props, emit }) => {
10413
10247
  onInvalidate(() => subscriptions.forEach((v) => v()));
10414
10248
  });
10415
10249
  };
10416
- function useDropdown(id, visible, isOpen, origin, dropdownRef, popDirection, emit) {
10417
- const calcPopDirection = (dropdownEl) => {
10418
- const elementHeight = dropdownEl.offsetHeight;
10419
- const bottomDistance = window.innerHeight - origin.value.getBoundingClientRect().bottom;
10420
- const isBottomEnough = bottomDistance >= elementHeight;
10421
- if (!isBottomEnough) {
10422
- popDirection.value = "top";
10423
- } else {
10424
- popDirection.value = "bottom";
10425
- }
10426
- };
10250
+ function useDropdown(id, visible, isOpen, origin, dropdownRef, emit) {
10427
10251
  watch(visible, (newVal, oldVal) => {
10428
10252
  if (oldVal === void 0) {
10429
10253
  return;
@@ -10447,9 +10271,6 @@ function useDropdown(id, visible, isOpen, origin, dropdownRef, popDirection, emi
10447
10271
  }
10448
10272
  }
10449
10273
  }
10450
- if (dropdownEl) {
10451
- calcPopDirection(dropdownEl);
10452
- }
10453
10274
  });
10454
10275
  onMounted(() => {
10455
10276
  dropdownMap.set(id, { toggleEl: origin.value });
@@ -10518,7 +10339,7 @@ var Dropdown = defineComponent({
10518
10339
  props,
10519
10340
  emit
10520
10341
  });
10521
- useDropdown(id, visible, isOpen, origin, dropdownRef, currentPosition, emit);
10342
+ useDropdown(id, visible, isOpen, origin, dropdownRef, emit);
10522
10343
  const {
10523
10344
  overlayModelValue,
10524
10345
  overlayShowValue,
@@ -10675,7 +10496,7 @@ var PageSize = defineComponent({
10675
10496
  setup() {
10676
10497
  const ns2 = useNamespace("pagination");
10677
10498
  const paginationContext = inject(paginationInjectionKey);
10678
- const iconRotate = ref(0);
10499
+ const isOpen = ref(false);
10679
10500
  const {
10680
10501
  size,
10681
10502
  currentPageSize,
@@ -10684,8 +10505,13 @@ var PageSize = defineComponent({
10684
10505
  pageSizeChange,
10685
10506
  t
10686
10507
  } = paginationContext;
10508
+ const pageSizeClasses = computed(() => ({
10509
+ [ns2.e("size")]: true,
10510
+ [ns2.em("size", size.value)]: Boolean(size.value),
10511
+ [ns2.em("size", "open")]: isOpen.value
10512
+ }));
10687
10513
  const onDropdownToggle = (e) => {
10688
- iconRotate.value = e ? 180 : 0;
10514
+ isOpen.value = e;
10689
10515
  };
10690
10516
  return () => createVNode(Fragment, null, [createVNode(Dropdown, {
10691
10517
  "position": pageSizeDirection.value,
@@ -10694,14 +10520,8 @@ var PageSize = defineComponent({
10694
10520
  }, {
10695
10521
  default: () => createVNode("div", {
10696
10522
  "tabindex": "0",
10697
- "class": [ns2.e("size"), size.value ? ns2.em("size", size.value) : ""]
10698
- }, [createVNode(Icon, {
10699
- "name": "select-arrow",
10700
- "size": "16px",
10701
- "rotate": iconRotate.value
10702
- }, {
10703
- prefix: () => createVNode("span", null, [currentPageSize.value])
10704
- })]),
10523
+ "class": pageSizeClasses.value
10524
+ }, [createVNode("span", null, [currentPageSize.value]), createVNode(SelectArrowIcon, null, null)]),
10705
10525
  menu: () => createVNode("ul", null, [pageSizeOptions.value.map((item, index2) => createVNode("li", {
10706
10526
  "class": {
10707
10527
  active: item === currentPageSize.value