vxe-pc-ui 4.1.19 → 4.1.21

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 (259) hide show
  1. package/README.md +83 -2
  2. package/es/anchor/src/anchor-link.js +1 -1
  3. package/es/anchor/src/anchor.js +1 -1
  4. package/es/breadcrumb/src/breadcrumb.js +1 -1
  5. package/es/button/src/button-group.js +4 -1
  6. package/es/button/src/button.js +2 -1
  7. package/es/calendar/src/calendar.js +64 -32
  8. package/es/card/src/card.js +4 -3
  9. package/es/carousel/src/carousel-item.js +13 -3
  10. package/es/carousel/src/carousel.js +16 -8
  11. package/es/checkbox/src/checkbox.js +30 -14
  12. package/es/checkbox/src/group.js +17 -8
  13. package/es/collapse-pane/index.js +1 -1
  14. package/es/countdown/src/countdown.js +17 -8
  15. package/es/date-picker/src/date-picker.js +148 -69
  16. package/es/drawer/src/drawer.js +86 -46
  17. package/es/form/render/index.js +1 -2
  18. package/es/form/src/form-config-item.js +4 -3
  19. package/es/form/src/form-gather.js +5 -3
  20. package/es/form/src/form-item.js +15 -10
  21. package/es/form/src/form.js +11 -8
  22. package/es/form/src/render.js +2 -1
  23. package/es/form/src/util.js +2 -1
  24. package/es/icon/src/icon.js +3 -0
  25. package/es/icon/style.css +1 -1
  26. package/es/icon-picker/src/icon-picker.js +24 -11
  27. package/es/image/src/group.js +4 -1
  28. package/es/image/src/preview.js +1 -1
  29. package/es/input/src/input.js +131 -66
  30. package/es/layout-aside/src/layout-aside.js +1 -1
  31. package/es/list/src/list.js +7 -5
  32. package/es/list-design/src/list-design.js +1 -1
  33. package/es/list-design/src/list-view.js +1 -1
  34. package/es/loading/src/loading.js +4 -1
  35. package/es/menu/src/menu.js +4 -3
  36. package/es/number-input/src/number-input.js +100 -77
  37. package/es/pager/src/pager.js +85 -45
  38. package/es/password-input/src/password-input.js +2 -2
  39. package/es/print/src/page-break.js +11 -2
  40. package/es/print/src/print.js +6 -4
  41. package/es/pulldown/src/pulldown.js +19 -13
  42. package/es/radio/src/button.js +2 -2
  43. package/es/radio/src/group.js +8 -4
  44. package/es/row/src/row.js +1 -1
  45. package/es/select/src/optgroup.js +19 -10
  46. package/es/select/src/option.js +17 -9
  47. package/es/select/src/select.js +64 -41
  48. package/es/select/src/util.js +2 -2
  49. package/es/style.css +1 -1
  50. package/es/style.min.css +1 -1
  51. package/es/tabs/src/tab-pane.js +13 -3
  52. package/es/tabs/src/tabs.js +57 -47
  53. package/es/textarea/src/textarea.js +28 -10
  54. package/es/tooltip/src/tooltip.js +107 -78
  55. package/es/tree/src/tree.js +6 -3
  56. package/es/tree-select/src/tree-select.js +18 -10
  57. package/es/ui/index.js +1 -7
  58. package/es/ui/src/log.js +1 -1
  59. package/es/upload/src/upload.js +5 -5
  60. package/lib/anchor/src/anchor-link.js +1 -1
  61. package/lib/anchor/src/anchor-link.min.js +1 -1
  62. package/lib/anchor/src/anchor.js +1 -1
  63. package/lib/anchor/src/anchor.min.js +1 -1
  64. package/lib/breadcrumb/src/breadcrumb.js +1 -1
  65. package/lib/breadcrumb/src/breadcrumb.min.js +1 -1
  66. package/lib/button/src/button-group.js +4 -1
  67. package/lib/button/src/button-group.min.js +1 -1
  68. package/lib/button/src/button.js +2 -1
  69. package/lib/button/src/button.min.js +1 -1
  70. package/lib/calendar/src/calendar.js +42 -24
  71. package/lib/calendar/src/calendar.min.js +1 -1
  72. package/lib/card/src/card.js +6 -5
  73. package/lib/card/src/card.min.js +1 -1
  74. package/lib/carousel/src/carousel-item.js +16 -3
  75. package/lib/carousel/src/carousel-item.min.js +1 -1
  76. package/lib/carousel/src/carousel.js +18 -8
  77. package/lib/carousel/src/carousel.min.js +1 -1
  78. package/lib/checkbox/src/checkbox.js +16 -12
  79. package/lib/checkbox/src/checkbox.min.js +1 -1
  80. package/lib/checkbox/src/group.js +10 -7
  81. package/lib/checkbox/src/group.min.js +1 -1
  82. package/lib/collapse-pane/index.js +1 -1
  83. package/lib/collapse-pane/index.min.js +1 -1
  84. package/lib/countdown/src/countdown.js +15 -7
  85. package/lib/countdown/src/countdown.min.js +1 -1
  86. package/lib/date-picker/src/date-picker.js +124 -62
  87. package/lib/date-picker/src/date-picker.min.js +1 -1
  88. package/lib/drawer/src/drawer.js +15 -30
  89. package/lib/drawer/src/drawer.min.js +1 -1
  90. package/lib/form/render/index.js +1 -4
  91. package/lib/form/render/index.min.js +1 -1
  92. package/lib/form/src/form-config-item.js +4 -5
  93. package/lib/form/src/form-config-item.min.js +1 -1
  94. package/lib/form/src/form-gather.js +11 -9
  95. package/lib/form/src/form-gather.min.js +1 -1
  96. package/lib/form/src/form-item.js +11 -12
  97. package/lib/form/src/form-item.min.js +1 -1
  98. package/lib/form/src/form.js +7 -7
  99. package/lib/form/src/form.min.js +1 -1
  100. package/lib/form/src/render.js +2 -1
  101. package/lib/form/src/util.js +2 -1
  102. package/lib/icon/src/icon.js +3 -0
  103. package/lib/icon/src/icon.min.js +1 -1
  104. package/lib/icon/style/style.css +1 -1
  105. package/lib/icon/style/style.min.css +1 -1
  106. package/lib/icon-picker/src/icon-picker.js +22 -12
  107. package/lib/icon-picker/src/icon-picker.min.js +1 -1
  108. package/lib/image/src/group.js +4 -1
  109. package/lib/image/src/group.min.js +1 -1
  110. package/lib/image/src/preview.js +1 -1
  111. package/lib/image/src/preview.min.js +1 -1
  112. package/lib/index.umd.js +884 -649
  113. package/lib/index.umd.min.js +1 -1
  114. package/lib/input/src/input.js +79 -51
  115. package/lib/input/src/input.min.js +1 -1
  116. package/lib/layout-aside/src/layout-aside.js +1 -1
  117. package/lib/layout-aside/src/layout-aside.min.js +1 -1
  118. package/lib/list/src/list.js +9 -5
  119. package/lib/list/src/list.min.js +1 -1
  120. package/lib/list-design/src/list-design.js +1 -1
  121. package/lib/list-design/src/list-design.min.js +1 -1
  122. package/lib/list-design/src/list-view.js +1 -1
  123. package/lib/list-design/src/list-view.min.js +1 -1
  124. package/lib/loading/src/loading.js +4 -1
  125. package/lib/loading/src/loading.min.js +1 -1
  126. package/lib/menu/src/menu.js +4 -3
  127. package/lib/menu/src/menu.min.js +1 -1
  128. package/lib/number-input/src/number-input.js +67 -69
  129. package/lib/number-input/src/number-input.min.js +1 -1
  130. package/lib/pager/src/pager.js +40 -39
  131. package/lib/pager/src/pager.min.js +1 -1
  132. package/lib/password-input/src/password-input.js +2 -2
  133. package/lib/print/src/page-break.js +14 -2
  134. package/lib/print/src/page-break.min.js +1 -1
  135. package/lib/print/src/print.js +8 -6
  136. package/lib/print/src/print.min.js +1 -1
  137. package/lib/pulldown/src/pulldown.js +19 -13
  138. package/lib/pulldown/src/pulldown.min.js +1 -1
  139. package/lib/radio/src/button.js +2 -2
  140. package/lib/radio/src/group.js +8 -4
  141. package/lib/radio/src/group.min.js +1 -1
  142. package/lib/row/src/row.js +1 -1
  143. package/lib/row/src/row.min.js +1 -1
  144. package/lib/select/src/optgroup.js +12 -9
  145. package/lib/select/src/optgroup.min.js +1 -1
  146. package/lib/select/src/option.js +9 -7
  147. package/lib/select/src/option.min.js +1 -1
  148. package/lib/select/src/select.js +52 -41
  149. package/lib/select/src/select.min.js +1 -1
  150. package/lib/select/src/util.js +2 -2
  151. package/lib/select/src/util.min.js +1 -1
  152. package/lib/style.css +1 -1
  153. package/lib/style.min.css +1 -1
  154. package/lib/tabs/src/tab-pane.js +16 -3
  155. package/lib/tabs/src/tab-pane.min.js +1 -1
  156. package/lib/tabs/src/tabs.js +62 -50
  157. package/lib/tabs/src/tabs.min.js +1 -1
  158. package/lib/textarea/src/textarea.js +4 -4
  159. package/lib/tooltip/src/tooltip.js +96 -88
  160. package/lib/tooltip/src/tooltip.min.js +1 -1
  161. package/lib/tree/src/tree.js +2 -2
  162. package/lib/tree/src/tree.min.js +1 -1
  163. package/lib/tree-select/src/tree-select.js +13 -8
  164. package/lib/tree-select/src/tree-select.min.js +1 -1
  165. package/lib/ui/index.js +3 -10
  166. package/lib/ui/index.min.js +1 -1
  167. package/lib/ui/src/log.js +1 -1
  168. package/lib/ui/src/log.min.js +1 -1
  169. package/lib/upload/src/upload.js +5 -5
  170. package/lib/upload/src/upload.min.js +1 -1
  171. package/package.json +2 -2
  172. package/packages/anchor/src/anchor-link.ts +2 -2
  173. package/packages/anchor/src/anchor.ts +2 -2
  174. package/packages/breadcrumb/src/breadcrumb.ts +2 -2
  175. package/packages/button/src/button-group.ts +4 -1
  176. package/packages/button/src/button.ts +6 -5
  177. package/packages/calendar/src/calendar.ts +67 -35
  178. package/packages/card/src/card.ts +6 -4
  179. package/packages/carousel/src/carousel-item.ts +19 -4
  180. package/packages/carousel/src/carousel.ts +19 -11
  181. package/packages/checkbox/src/checkbox.ts +34 -15
  182. package/packages/checkbox/src/group.ts +22 -10
  183. package/packages/collapse-pane/index.ts +1 -1
  184. package/packages/countdown/src/countdown.ts +20 -11
  185. package/packages/date-picker/src/date-picker.ts +160 -80
  186. package/packages/drawer/src/drawer.ts +91 -50
  187. package/packages/form/render/index.ts +1 -3
  188. package/packages/form/src/form-config-item.ts +4 -3
  189. package/packages/form/src/form-gather.ts +5 -3
  190. package/packages/form/src/form-item.ts +15 -10
  191. package/packages/form/src/form.ts +12 -10
  192. package/packages/form/src/render.ts +2 -1
  193. package/packages/form/src/util.ts +2 -1
  194. package/packages/icon/src/icon.ts +3 -0
  195. package/packages/icon-picker/src/icon-picker.ts +31 -17
  196. package/packages/image/src/group.ts +4 -1
  197. package/packages/image/src/preview.ts +2 -2
  198. package/packages/input/src/input.ts +138 -75
  199. package/packages/layout-aside/src/layout-aside.ts +2 -2
  200. package/packages/list/src/list.ts +12 -11
  201. package/packages/list-design/src/list-design.ts +2 -2
  202. package/packages/list-design/src/list-view.ts +2 -2
  203. package/packages/loading/src/loading.ts +5 -2
  204. package/packages/menu/src/menu.ts +5 -4
  205. package/packages/number-input/src/number-input.ts +102 -79
  206. package/packages/pager/src/pager.ts +91 -50
  207. package/packages/password-input/src/password-input.ts +2 -2
  208. package/packages/print/src/page-break.ts +18 -4
  209. package/packages/print/src/print.ts +10 -5
  210. package/packages/pulldown/src/pulldown.ts +28 -22
  211. package/packages/radio/src/button.ts +2 -2
  212. package/packages/radio/src/group.ts +9 -5
  213. package/packages/row/src/row.ts +2 -2
  214. package/packages/select/src/optgroup.ts +22 -13
  215. package/packages/select/src/option.ts +18 -10
  216. package/packages/select/src/select.ts +79 -52
  217. package/packages/select/src/util.ts +3 -3
  218. package/packages/tabs/src/tab-pane.ts +20 -5
  219. package/packages/tabs/src/tabs.ts +59 -49
  220. package/packages/textarea/src/textarea.ts +28 -10
  221. package/packages/tooltip/src/tooltip.ts +118 -84
  222. package/packages/tree/src/tree.ts +7 -4
  223. package/packages/tree-select/src/tree-select.ts +25 -16
  224. package/packages/ui/index.ts +0 -7
  225. package/packages/upload/src/upload.ts +6 -6
  226. package/types/components/calendar.d.ts +6 -0
  227. package/types/components/carousel.d.ts +5 -0
  228. package/types/components/countdown.d.ts +4 -0
  229. package/types/components/date-picker.d.ts +23 -5
  230. package/types/components/drawer.d.ts +0 -1
  231. package/types/components/form.d.ts +4 -2
  232. package/types/components/icon-picker.d.ts +4 -0
  233. package/types/components/input.d.ts +9 -1
  234. package/types/components/list.d.ts +1 -0
  235. package/types/components/number-input.d.ts +6 -2
  236. package/types/components/optgroup.d.ts +10 -4
  237. package/types/components/pulldown.d.ts +5 -1
  238. package/types/components/select.d.ts +4 -0
  239. package/types/components/tabs.d.ts +4 -0
  240. package/types/components/toolbar.d.ts +5 -0
  241. package/types/components/tooltip.d.ts +4 -0
  242. package/types/components/tree-select.d.ts +4 -0
  243. package/types/ui/index.d.ts +0 -22
  244. /package/es/{collapse-pane → collapse}/src/collapse-pane.js +0 -0
  245. /package/es/icon/style/{iconfont.1725597808239.ttf → iconfont.1725941866604.ttf} +0 -0
  246. /package/es/icon/style/{iconfont.1725597808239.woff → iconfont.1725941866604.woff} +0 -0
  247. /package/es/icon/style/{iconfont.1725597808239.woff2 → iconfont.1725941866604.woff2} +0 -0
  248. /package/es/{iconfont.1725597808239.ttf → iconfont.1725941866604.ttf} +0 -0
  249. /package/es/{iconfont.1725597808239.woff → iconfont.1725941866604.woff} +0 -0
  250. /package/es/{iconfont.1725597808239.woff2 → iconfont.1725941866604.woff2} +0 -0
  251. /package/lib/{collapse-pane → collapse}/src/collapse-pane.js +0 -0
  252. /package/lib/{collapse-pane → collapse}/src/collapse-pane.min.js +0 -0
  253. /package/lib/icon/style/{iconfont.1725597808239.ttf → iconfont.1725941866604.ttf} +0 -0
  254. /package/lib/icon/style/{iconfont.1725597808239.woff → iconfont.1725941866604.woff} +0 -0
  255. /package/lib/icon/style/{iconfont.1725597808239.woff2 → iconfont.1725941866604.woff2} +0 -0
  256. /package/lib/{iconfont.1725597808239.ttf → iconfont.1725941866604.ttf} +0 -0
  257. /package/lib/{iconfont.1725597808239.woff → iconfont.1725941866604.woff} +0 -0
  258. /package/lib/{iconfont.1725597808239.woff2 → iconfont.1725941866604.woff2} +0 -0
  259. /package/packages/{collapse-pane → collapse}/src/collapse-pane.ts +0 -0
@@ -27,7 +27,10 @@ export default defineComponent({
27
27
  default: null
28
28
  },
29
29
  multiple: Boolean,
30
- multiCharOverflow: { type: [Number, String], default: () => getConfig().select.multiCharOverflow },
30
+ multiCharOverflow: {
31
+ type: [Number, String],
32
+ default: () => getConfig().select.multiCharOverflow
33
+ },
31
34
  prefixIcon: String,
32
35
  placement: String,
33
36
  options: Array,
@@ -37,21 +40,30 @@ export default defineComponent({
37
40
  optionConfig: Object,
38
41
  className: [String, Function],
39
42
  popupClassName: [String, Function],
40
- max: { type: [String, Number], default: null },
41
- size: { type: String, default: () => getConfig().select.size || getConfig().size },
43
+ max: {
44
+ type: [String, Number],
45
+ default: null
46
+ },
47
+ size: {
48
+ type: String,
49
+ default: () => getConfig().select.size || getConfig().size
50
+ },
42
51
  filterable: Boolean,
43
52
  filterMethod: Function,
44
53
  remote: Boolean,
45
54
  remoteMethod: Function,
46
55
  emptyText: String,
47
- // 已废弃,被 option-config.keyField 替换
48
- optionId: { type: String, default: () => getConfig().select.optionId },
49
- // 已废弃,被 option-config.useKey 替换
50
- optionKey: Boolean,
51
56
  transfer: {
52
57
  type: Boolean,
53
58
  default: null
54
- }
59
+ },
60
+ // 已废弃,被 option-config.keyField 替换
61
+ optionId: {
62
+ type: String,
63
+ default: () => getConfig().select.optionId
64
+ },
65
+ // 已废弃,被 option-config.useKey 替换
66
+ optionKey: Boolean
55
67
  },
56
68
  emits: [
57
69
  'update:modelValue',
@@ -64,6 +76,7 @@ export default defineComponent({
64
76
  setup(props, context) {
65
77
  const { slots, emit } = context;
66
78
  const $xeModal = inject('$xeModal', null);
79
+ const $xeDrawer = inject('$xeDrawer', null);
67
80
  const $xeTable = inject('$xeTable', null);
68
81
  const $xeForm = inject('$xeForm', null);
69
82
  const formItemInfo = inject('xeFormItemInfo', null);
@@ -89,6 +102,9 @@ export default defineComponent({
89
102
  searchValue: '',
90
103
  searchLoading: false
91
104
  });
105
+ const internalData = {
106
+ hpTimeout: undefined
107
+ };
92
108
  const refElem = ref();
93
109
  const refInput = ref();
94
110
  const refInpSearch = ref();
@@ -102,6 +118,7 @@ export default defineComponent({
102
118
  props,
103
119
  context,
104
120
  reactData,
121
+ internalData,
105
122
  getRefMaps: () => refMaps
106
123
  };
107
124
  let selectMethods = {};
@@ -132,7 +149,7 @@ export default defineComponent({
132
149
  if (XEUtils.isBoolean(globalTransfer)) {
133
150
  return globalTransfer;
134
151
  }
135
- if ($xeTable || $xeModal || $xeForm) {
152
+ if ($xeTable || $xeModal || $xeDrawer || $xeForm) {
136
153
  return true;
137
154
  }
138
155
  }
@@ -150,10 +167,10 @@ export default defineComponent({
150
167
  return getI18n('vxe.base.pleaseSelect');
151
168
  });
152
169
  const computePropsOpts = computed(() => {
153
- return props.optionProps || {};
170
+ return Object.assign({}, props.optionProps);
154
171
  });
155
172
  const computeGroupPropsOpts = computed(() => {
156
- return props.optionGroupProps || {};
173
+ return Object.assign({}, props.optionGroupProps);
157
174
  });
158
175
  const computeLabelField = computed(() => {
159
176
  const propsOpts = computePropsOpts.value;
@@ -187,6 +204,27 @@ export default defineComponent({
187
204
  const computeMultiMaxCharNum = computed(() => {
188
205
  return XEUtils.toNumber(props.multiCharOverflow);
189
206
  });
207
+ const computeSelectLabel = computed(() => {
208
+ const { modelValue, multiple, remote } = props;
209
+ const multiMaxCharNum = computeMultiMaxCharNum.value;
210
+ if (modelValue && multiple) {
211
+ const vals = XEUtils.isArray(modelValue) ? modelValue : [modelValue];
212
+ if (remote) {
213
+ return vals.map(val => getRemoteSelectLabel(val)).join(', ');
214
+ }
215
+ return vals.map((val) => {
216
+ const label = getSelectLabel(val);
217
+ if (multiMaxCharNum > 0 && label.length > multiMaxCharNum) {
218
+ return `${label.substring(0, multiMaxCharNum)}...`;
219
+ }
220
+ return label;
221
+ }).join(', ');
222
+ }
223
+ if (remote) {
224
+ return getRemoteSelectLabel(modelValue);
225
+ }
226
+ return getSelectLabel(modelValue);
227
+ });
190
228
  const callSlot = (slotFunc, params) => {
191
229
  if (slotFunc) {
192
230
  if (XEUtils.isString(slotFunc)) {
@@ -248,27 +286,6 @@ export default defineComponent({
248
286
  const item = findOption(value);
249
287
  return XEUtils.toValueString(item ? item[labelField] : value);
250
288
  };
251
- const computeSelectLabel = computed(() => {
252
- const { modelValue, multiple, remote } = props;
253
- const multiMaxCharNum = computeMultiMaxCharNum.value;
254
- if (modelValue && multiple) {
255
- const vals = XEUtils.isArray(modelValue) ? modelValue : [modelValue];
256
- if (remote) {
257
- return vals.map(val => getRemoteSelectLabel(val)).join(', ');
258
- }
259
- return vals.map((val) => {
260
- const label = getSelectLabel(val);
261
- if (multiMaxCharNum > 0 && label.length > multiMaxCharNum) {
262
- return `${label.substring(0, multiMaxCharNum)}...`;
263
- }
264
- return label;
265
- }).join(', ');
266
- }
267
- if (remote) {
268
- return getRemoteSelectLabel(modelValue);
269
- }
270
- return getSelectLabel(modelValue);
271
- });
272
289
  const getOptkey = () => {
273
290
  const optionOpts = computeOptionOpts.value;
274
291
  return optionOpts.keyField || props.optionId || '_X_OPTION_KEY';
@@ -441,12 +458,15 @@ export default defineComponent({
441
458
  }
442
459
  });
443
460
  };
444
- let hidePanelTimeout;
445
461
  const showOptionPanel = () => {
446
462
  const { loading, filterable } = props;
463
+ const { hpTimeout } = internalData;
447
464
  const isDisabled = computeIsDisabled.value;
448
465
  if (!loading && !isDisabled) {
449
- clearTimeout(hidePanelTimeout);
466
+ if (hpTimeout) {
467
+ clearTimeout(hpTimeout);
468
+ internalData.hpTimeout = undefined;
469
+ }
450
470
  if (!reactData.initialized) {
451
471
  reactData.initialized = true;
452
472
  }
@@ -473,13 +493,13 @@ export default defineComponent({
473
493
  reactData.searchValue = '';
474
494
  reactData.searchLoading = false;
475
495
  reactData.visiblePanel = false;
476
- hidePanelTimeout = window.setTimeout(() => {
496
+ internalData.hpTimeout = window.setTimeout(() => {
477
497
  reactData.isAniVisible = false;
478
498
  }, 350);
479
499
  };
480
500
  const changeEvent = (evnt, selectValue) => {
501
+ emit('update:modelValue', selectValue);
481
502
  if (selectValue !== props.modelValue) {
482
- emit('update:modelValue', selectValue);
483
503
  selectMethods.dispatchEvent('change', { value: selectValue }, evnt);
484
504
  // 自动更新校验状态
485
505
  if ($xeForm && formItemInfo) {
@@ -714,12 +734,14 @@ export default defineComponent({
714
734
  const focusSearchEvent = () => {
715
735
  reactData.isActivated = true;
716
736
  };
717
- const triggerSearchEvent = XEUtils.debounce(function () {
737
+ const handleSearchEvent = () => {
718
738
  const { remote, remoteMethod } = props;
719
739
  const { searchValue } = reactData;
720
740
  if (remote && remoteMethod) {
721
741
  reactData.searchLoading = true;
722
- Promise.resolve(remoteMethod({ searchValue })).then(() => nextTick()).catch(() => nextTick()).finally(() => {
742
+ Promise.resolve(remoteMethod({ searchValue })).then(() => nextTick())
743
+ .catch(() => nextTick())
744
+ .finally(() => {
723
745
  reactData.searchLoading = false;
724
746
  refreshOption();
725
747
  });
@@ -727,7 +749,8 @@ export default defineComponent({
727
749
  else {
728
750
  refreshOption();
729
751
  }
730
- }, 350, { trailing: true });
752
+ };
753
+ const triggerSearchEvent = XEUtils.debounce(handleSearchEvent, 350, { trailing: true });
731
754
  const togglePanelEvent = (params) => {
732
755
  const { $event } = params;
733
756
  $event.preventDefault();
@@ -936,7 +959,7 @@ export default defineComponent({
936
959
  }, defaultSlot ? defaultSlot({}) : []),
937
960
  h('span', {
938
961
  class: 'vxe-select-label'
939
- }, selectLabel)
962
+ }, [selectLabel])
940
963
  ]);
941
964
  }
942
965
  return h('div', {
@@ -1035,7 +1058,6 @@ export default defineComponent({
1035
1058
  ])
1036
1059
  ]);
1037
1060
  };
1038
- $xeSelect.renderVN = renderVN;
1039
1061
  watch(() => reactData.staticOptions, (value) => {
1040
1062
  if (value.some((item) => item.options && item.options.length)) {
1041
1063
  reactData.fullOptionList = [];
@@ -1080,6 +1102,7 @@ export default defineComponent({
1080
1102
  globalEvents.off($xeSelect, 'blur');
1081
1103
  });
1082
1104
  provide('$xeSelect', $xeSelect);
1105
+ $xeSelect.renderVN = renderVN;
1083
1106
  return $xeSelect;
1084
1107
  },
1085
1108
  render() {
@@ -14,11 +14,11 @@ export function watchOption(props, option) {
14
14
  });
15
15
  });
16
16
  }
17
- export function assembleOption($xeSelect, el, option, optGroup) {
17
+ export function assembleOption($xeSelect, el, option, $xeOptgroup) {
18
18
  const { reactData } = $xeSelect;
19
19
  const { staticOptions } = reactData;
20
20
  const parentElem = el.parentNode;
21
- const parentOption = optGroup ? optGroup.option : null;
21
+ const parentOption = $xeOptgroup ? $xeOptgroup.optionConfig : null;
22
22
  const parentCols = parentOption ? parentOption.options : staticOptions;
23
23
  if (parentElem && parentCols) {
24
24
  parentCols.splice(XEUtils.arrayIndexOf(parentElem.children, el), 0, option);