fast-element-plus 2.0.18 → 2.0.20

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 (130) hide show
  1. package/CHANGELOG.md +52 -19
  2. package/CONTRIBUTING.md +3 -4
  3. package/README.md +80 -27
  4. package/README.zh.md +66 -27
  5. package/dist/component.d.ts +123 -123
  6. package/dist/components/avatar/src/avatar.d.ts +26 -26
  7. package/dist/components/avatar/src/avatar.mjs +10 -10
  8. package/dist/components/avatar/src/avatar.mjs.map +1 -1
  9. package/dist/components/button/src/button.d.ts +32 -27
  10. package/dist/components/button/src/button.mjs +57 -36
  11. package/dist/components/button/src/button.mjs.map +1 -1
  12. package/dist/components/carNumber/src/carNumber.d.ts +8 -8
  13. package/dist/components/carNumber/src/carNumber.mjs +5 -5
  14. package/dist/components/carNumber/src/carNumber.mjs.map +1 -1
  15. package/dist/components/contextMenu/src/contextMenu.d.ts +7 -7
  16. package/dist/components/contextMenu/src/contextMenu.mjs +7 -7
  17. package/dist/components/contextMenu/src/contextMenu.mjs.map +1 -1
  18. package/dist/components/contextMenu/src/contextMenu.type.d.ts +7 -7
  19. package/dist/components/dialog/src/dialog.d.ts +76 -76
  20. package/dist/components/dialog/src/dialog.mjs +34 -34
  21. package/dist/components/dialog/src/dialog.mjs.map +1 -1
  22. package/dist/components/drawer/src/drawer.d.ts +59 -59
  23. package/dist/components/drawer/src/drawer.mjs +27 -27
  24. package/dist/components/drawer/src/drawer.mjs.map +1 -1
  25. package/dist/components/form/src/form.d.ts +30 -30
  26. package/dist/components/form/src/form.mjs +16 -16
  27. package/dist/components/form/src/form.mjs.map +1 -1
  28. package/dist/components/form/src/formItem.d.ts +30 -30
  29. package/dist/components/form/src/formItem.mjs +13 -13
  30. package/dist/components/form/src/formItem.mjs.map +1 -1
  31. package/dist/components/formItemTip/src/formItemTip.d.ts +9 -9
  32. package/dist/components/formItemTip/src/formItemTip.mjs +3 -3
  33. package/dist/components/formItemTip/src/formItemTip.mjs.map +1 -1
  34. package/dist/components/icon/src/icon.d.ts +10 -10
  35. package/dist/components/icon/src/icon.mjs +4 -4
  36. package/dist/components/icon/src/icon.mjs.map +1 -1
  37. package/dist/components/iconSelector/src/iconSelector.d.ts +6 -6
  38. package/dist/components/iconSelector/src/iconSelector.mjs +4 -4
  39. package/dist/components/iconSelector/src/iconSelector.mjs.map +1 -1
  40. package/dist/components/image/src/image.d.ts +36 -36
  41. package/dist/components/image/src/image.mjs +11 -11
  42. package/dist/components/image/src/image.mjs.map +1 -1
  43. package/dist/components/inputDialogPage/src/inputDialogPage.d.ts +37 -37
  44. package/dist/components/inputDialogPage/src/inputDialogPage.mjs +16 -16
  45. package/dist/components/inputDialogPage/src/inputDialogPage.mjs.map +1 -1
  46. package/dist/components/layoutGrid/src/layoutGrid.d.ts +12 -12
  47. package/dist/components/layoutGrid/src/layoutGrid.mjs +6 -6
  48. package/dist/components/layoutGrid/src/layoutGrid.mjs.map +1 -1
  49. package/dist/components/layoutGrid/src/layoutGridItem.d.ts +19 -19
  50. package/dist/components/layoutGrid/src/layoutGridItem.mjs +9 -9
  51. package/dist/components/layoutGrid/src/layoutGridItem.mjs.map +1 -1
  52. package/dist/components/select/src/select.d.ts +89 -89
  53. package/dist/components/select/src/select.mjs +30 -30
  54. package/dist/components/select/src/select.mjs.map +1 -1
  55. package/dist/components/select/src/selectOption.d.ts +13 -13
  56. package/dist/components/select/src/selectOption.mjs +6 -6
  57. package/dist/components/select/src/selectOption.mjs.map +1 -1
  58. package/dist/components/selectPage/src/selectPage.d.ts +76 -76
  59. package/dist/components/selectPage/src/selectPage.mjs +50 -36
  60. package/dist/components/selectPage/src/selectPage.mjs.map +1 -1
  61. package/dist/components/selectV2/index.mjs +2 -1
  62. package/dist/components/selectV2/index.mjs.map +1 -1
  63. package/dist/components/selectV2/src/selectV2.d.ts +161 -852
  64. package/dist/components/selectV2/src/selectV2.mjs +32 -340
  65. package/dist/components/selectV2/src/selectV2.mjs.map +1 -1
  66. package/dist/components/table/index.mjs +3 -2
  67. package/dist/components/table/index.mjs.map +1 -1
  68. package/dist/components/table/src/page.type.d.ts +1 -1
  69. package/dist/components/table/src/table.d.ts +211 -744
  70. package/dist/components/table/src/table.mjs +111 -307
  71. package/dist/components/table/src/table.mjs.map +1 -1
  72. package/dist/components/table/src/table.state.d.ts +3 -3
  73. package/dist/components/table/src/table.type.d.ts +1 -9
  74. package/dist/components/table/src/table.type.mjs.map +1 -1
  75. package/dist/components/table/src/tableColumn.d.ts +102 -399
  76. package/dist/components/table/src/tableColumn.mjs +28 -185
  77. package/dist/components/table/src/tableColumn.mjs.map +1 -1
  78. package/dist/components/table/src/tableColumnSettingDialog.d.ts +4 -4
  79. package/dist/components/table/src/tableColumnSettingDialog.mjs +3 -3
  80. package/dist/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
  81. package/dist/components/table/src/tablePagination.d.ts +4 -4
  82. package/dist/components/table/src/tablePagination.mjs +3 -3
  83. package/dist/components/table/src/tablePagination.mjs.map +1 -1
  84. package/dist/components/table/src/tableSearchForm.d.ts +12 -12
  85. package/dist/components/table/src/tableSearchForm.mjs +6 -6
  86. package/dist/components/table/src/tableSearchForm.mjs.map +1 -1
  87. package/dist/components/table/src/tableSearchFormItem.d.ts +4 -4
  88. package/dist/components/table/src/tableSearchFormItem.mjs +2 -2
  89. package/dist/components/table/src/tableSearchFormItem.mjs.map +1 -1
  90. package/dist/components/table/src/useTable.d.ts +1 -0
  91. package/dist/components/table/src/useTable.mjs +109 -65
  92. package/dist/components/table/src/useTable.mjs.map +1 -1
  93. package/dist/components/table/utils/table.d.ts +4 -4
  94. package/dist/components/table/utils/table.mjs +4 -4
  95. package/dist/components/table/utils/table.mjs.map +1 -1
  96. package/dist/components/tree/src/tree.d.ts +87 -87
  97. package/dist/components/tree/src/tree.mjs +48 -48
  98. package/dist/components/tree/src/tree.mjs.map +1 -1
  99. package/dist/components/treeSelect/src/treeSelect.d.ts +139 -133
  100. package/dist/components/treeSelect/src/treeSelect.mjs +57 -57
  101. package/dist/components/treeSelect/src/treeSelect.mjs.map +1 -1
  102. package/dist/components/upload/src/upload.d.ts +36 -36
  103. package/dist/components/upload/src/upload.mjs +19 -19
  104. package/dist/components/upload/src/upload.mjs.map +1 -1
  105. package/dist/components/uploadImage/src/uploadImage.d.ts +47 -47
  106. package/dist/components/uploadImage/src/uploadImage.mjs +24 -28
  107. package/dist/components/uploadImage/src/uploadImage.mjs.map +1 -1
  108. package/dist/components/uploadImages/src/uploadImages.d.ts +41 -41
  109. package/dist/components/uploadImages/src/uploadImages.mjs +21 -21
  110. package/dist/components/uploadImages/src/uploadImages.mjs.map +1 -1
  111. package/dist/directives/click-debounce/index.mjs +19 -11
  112. package/dist/directives/click-debounce/index.mjs.map +1 -1
  113. package/dist/directives/click-throttle/index.d.ts +4 -2
  114. package/dist/directives/click-throttle/index.mjs +21 -11
  115. package/dist/directives/click-throttle/index.mjs.map +1 -1
  116. package/dist/index.css +1 -1
  117. package/dist/index.css.map +1 -1
  118. package/dist/index.global.min.js +3 -3
  119. package/dist/index.global.min.js.map +1 -1
  120. package/dist/index.mjs +3 -3
  121. package/dist/internal/props.d.ts +685 -0
  122. package/dist/internal/props.mjs +683 -0
  123. package/dist/internal/props.mjs.map +1 -0
  124. package/dist/utils/loading-tasks.d.ts +5 -0
  125. package/dist/utils/loading-tasks.mjs +32 -0
  126. package/dist/utils/loading-tasks.mjs.map +1 -0
  127. package/dist/version.d.ts +1 -1
  128. package/dist/version.mjs +1 -1
  129. package/dist/version.mjs.map +1 -1
  130. package/package.json +5 -10
@@ -0,0 +1,683 @@
1
+ import { definePropType } from "../utils/vue/props.mjs";
2
+ import { ArrowDown, CircleClose } from "@element-plus/icons-vue";
3
+ import { tagProps, useAriaProps, useEmptyValuesProps, useSizeProp, useTooltipContentProps } from "element-plus";
4
+ //#region src/internal/props.ts
5
+ /** 集中维护复制并适配的 Element Plus 运行时 Props;业务组件在此基础上覆写。 */
6
+ /** Element Plus Table 的透传 Props 定义。 */
7
+ const tableProps = {
8
+ /**
9
+ * table data
10
+ */
11
+ data: {
12
+ type: Array,
13
+ default: () => []
14
+ },
15
+ /**
16
+ * size of Table
17
+ */
18
+ size: useSizeProp,
19
+ width: [String, Number],
20
+ /**
21
+ * table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles
22
+ */
23
+ height: [String, Number],
24
+ /**
25
+ * table's max-height. The legal value is a number or the height in px
26
+ */
27
+ maxHeight: [String, Number],
28
+ /**
29
+ * whether width of column automatically fits its container
30
+ */
31
+ fit: {
32
+ type: Boolean,
33
+ default: true
34
+ },
35
+ /**
36
+ * whether Table is striped
37
+ */
38
+ stripe: Boolean,
39
+ /**
40
+ * whether Table has vertical border
41
+ */
42
+ border: Boolean,
43
+ /**
44
+ * key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used
45
+ */
46
+ rowKey: [String, Function],
47
+ /**
48
+ * whether Table header is visible
49
+ */
50
+ showHeader: {
51
+ type: Boolean,
52
+ default: true
53
+ },
54
+ /**
55
+ * whether to display a summary row
56
+ */
57
+ showSummary: Boolean,
58
+ /**
59
+ * displayed text for the first column of summary row
60
+ */
61
+ sumText: String,
62
+ /**
63
+ * custom summary method
64
+ */
65
+ summaryMethod: Function,
66
+ /**
67
+ * function that returns custom class names for a row, or a string assigning class names for every row
68
+ */
69
+ rowClassName: [String, Function],
70
+ /**
71
+ * function that returns custom style for a row, or an object assigning custom style for every row
72
+ */
73
+ rowStyle: [Object, Function],
74
+ /**
75
+ * function that returns custom class names for a cell, or a string assigning class names for every cell
76
+ */
77
+ cellClassName: [String, Function],
78
+ /**
79
+ * function that returns custom style for a cell, or an object assigning custom style for every cell
80
+ */
81
+ cellStyle: [Object, Function],
82
+ /**
83
+ * function that returns custom class names for a row in table header, or a string assigning class names for every row in table header
84
+ */
85
+ headerRowClassName: [String, Function],
86
+ /**
87
+ * function that returns custom style for a row in table header, or an object assigning custom style for every row in table header
88
+ */
89
+ headerRowStyle: [Object, Function],
90
+ /**
91
+ * function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header
92
+ */
93
+ headerCellClassName: [String, Function],
94
+ /**
95
+ * function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header
96
+ */
97
+ headerCellStyle: [Object, Function],
98
+ /**
99
+ * whether current row is highlighted
100
+ */
101
+ highlightCurrentRow: Boolean,
102
+ /**
103
+ * key of current row, a set only prop
104
+ */
105
+ currentRowKey: [String, Number],
106
+ /**
107
+ * displayed text when data is empty. You can customize this area with `#empty`
108
+ */
109
+ emptyText: String,
110
+ /**
111
+ * set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop
112
+ */
113
+ expandRowKeys: Array,
114
+ /** controls whether a row can be expanded */
115
+ rowExpandable: Function,
116
+ /**
117
+ * whether expand all rows by default, works when the table has a column type="expand" or contains tree structure data
118
+ */
119
+ defaultExpandAll: Boolean,
120
+ /**
121
+ * set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order
122
+ */
123
+ defaultSort: Object,
124
+ /**
125
+ * the `effect` of the overflow tooltip
126
+ */
127
+ tooltipEffect: String,
128
+ /**
129
+ * the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)
130
+ */
131
+ tooltipOptions: Object,
132
+ /**
133
+ * method that returns rowspan and colspan
134
+ */
135
+ spanMethod: Function,
136
+ /**
137
+ * controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected
138
+ */
139
+ selectOnIndeterminate: {
140
+ type: Boolean,
141
+ default: true
142
+ },
143
+ /**
144
+ * horizontal indentation of tree data
145
+ */
146
+ indent: {
147
+ type: Number,
148
+ default: 16
149
+ },
150
+ /**
151
+ * configuration for rendering nested data
152
+ */
153
+ treeProps: {
154
+ type: Object,
155
+ default: () => ({
156
+ hasChildren: "hasChildren",
157
+ children: "children",
158
+ checkStrictly: false
159
+ })
160
+ },
161
+ /**
162
+ * whether to lazy loading data
163
+ */
164
+ lazy: Boolean,
165
+ /**
166
+ * method for loading child row data, only works when `lazy` is true
167
+ */
168
+ load: Function,
169
+ style: {
170
+ type: Object,
171
+ default: () => ({})
172
+ },
173
+ className: {
174
+ type: String,
175
+ default: ""
176
+ },
177
+ /**
178
+ * sets the algorithm used to lay out table cells, rows, and columns
179
+ */
180
+ tableLayout: {
181
+ type: String,
182
+ default: "fixed"
183
+ },
184
+ /**
185
+ * always show scrollbar
186
+ */
187
+ scrollbarAlwaysOn: Boolean,
188
+ /**
189
+ * ensure main axis minimum-size doesn't follow the content
190
+ */
191
+ flexible: Boolean,
192
+ /**
193
+ * whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns
194
+ */
195
+ showOverflowTooltip: [Boolean, Object],
196
+ /** formats overflow tooltip content */
197
+ tooltipFormatter: Function,
198
+ /** element to which the filter panel is appended */
199
+ appendFilterPanelTo: String,
200
+ scrollbarTabindex: {
201
+ type: [Number, String],
202
+ default: void 0
203
+ },
204
+ /** whether the last column can be resized */
205
+ allowDragLastColumn: {
206
+ type: Boolean,
207
+ default: true
208
+ },
209
+ /** whether collapsed expanded-row content remains mounted */
210
+ preserveExpandedContent: Boolean,
211
+ /** whether to use native scrollbars */
212
+ nativeScrollbar: Boolean
213
+ };
214
+ /** Element Plus TableColumn 的透传 Props 定义 */
215
+ const tableColumnProps = {
216
+ /**
217
+ * type of the column. If set to `selection`, the column will display checkbox. If set to `index`, the column will display index of the row (staring from 1). If set to `expand`, the column will display expand icon
218
+ */
219
+ type: {
220
+ type: String,
221
+ default: "default"
222
+ },
223
+ /**
224
+ * column label
225
+ */
226
+ label: String,
227
+ /**
228
+ * class name of cells in the column
229
+ */
230
+ className: String,
231
+ /**
232
+ * class name of the label of this column
233
+ */
234
+ labelClassName: String,
235
+ /**
236
+ *
237
+ */
238
+ property: String,
239
+ /**
240
+ * field name. You can also use its alias: `property`
241
+ */
242
+ prop: String,
243
+ /**
244
+ * column width
245
+ */
246
+ width: {
247
+ type: [String, Number],
248
+ default: ""
249
+ },
250
+ /**
251
+ * column minimum width. Columns with `width` has a fixed width, while columns with `min-width` has a width that is distributed in proportion
252
+ */
253
+ minWidth: {
254
+ type: [String, Number],
255
+ default: ""
256
+ },
257
+ /**
258
+ * render function for table header of this column
259
+ */
260
+ renderHeader: Function,
261
+ /**
262
+ * whether column can be sorted. Remote sorting can be done by setting this attribute to 'custom' and listening to the `sort-change` event of Table
263
+ */
264
+ sortable: {
265
+ type: [Boolean, String],
266
+ default: false
267
+ },
268
+ /**
269
+ * sorting method, works when `sortable` is `true`. Should return a number, just like Array.sort
270
+ */
271
+ sortMethod: Function,
272
+ /**
273
+ * specify which property to sort by, works when `sortable` is `true` and `sort-method` is `undefined`. If set to an Array, the column will sequentially sort by the next property if the previous one is equal
274
+ */
275
+ sortBy: [
276
+ String,
277
+ Function,
278
+ Array
279
+ ],
280
+ /**
281
+ * whether column width can be resized, works when `border` of `el-table` is `true`
282
+ */
283
+ resizable: {
284
+ type: Boolean,
285
+ default: true
286
+ },
287
+ /**
288
+ * column's key. If you need to use the filter-change event, you need this attribute to identify which column is being filtered
289
+ */
290
+ columnKey: String,
291
+ /**
292
+ * alignment, the value should be 'left' \/ 'center' \/ 'right'
293
+ */
294
+ align: String,
295
+ /**
296
+ * alignment of the table header. If omitted, the value of the above `align` attribute will be applied, the value should be 'left' \/ 'center' \/ 'right'
297
+ */
298
+ headerAlign: String,
299
+ /**
300
+ * whether to hide extra content and show them in a tooltip when hovering on the cell
301
+ */
302
+ showOverflowTooltip: {
303
+ type: [Boolean, Object],
304
+ default: void 0
305
+ },
306
+ /** function that formats cell tooltip content, works when show-overflow-tooltip is enabled */
307
+ tooltipFormatter: Function,
308
+ /**
309
+ * whether column is fixed at left / right. Will be fixed at left if `true`
310
+ */
311
+ fixed: [Boolean, String],
312
+ /**
313
+ * function that formats cell content
314
+ */
315
+ formatter: Function,
316
+ /**
317
+ * function that determines if a certain row can be selected, works when `type` is 'selection'
318
+ */
319
+ selectable: Function,
320
+ /**
321
+ * whether to reserve selection after data refreshing, works when `type` is 'selection'. Note that `row-key` is required for this to work
322
+ */
323
+ reserveSelection: Boolean,
324
+ /**
325
+ * data filtering method. If `filter-multiple` is on, this method will be called multiple times for each row, and a row will display if one of the calls returns `true`
326
+ */
327
+ filterMethod: Function,
328
+ /**
329
+ * filter value for selected data, might be useful when table header is rendered with `render-header`
330
+ */
331
+ filteredValue: Array,
332
+ /**
333
+ * an array of data filtering options. For each element in this array, `text` and `value` are required
334
+ */
335
+ filters: Array,
336
+ /**
337
+ * placement for the filter dropdown
338
+ */
339
+ filterPlacement: String,
340
+ /**
341
+ * whether data filtering supports multiple options
342
+ */
343
+ filterMultiple: {
344
+ type: Boolean,
345
+ default: true
346
+ },
347
+ /**
348
+ * className for the filter dropdown
349
+ */
350
+ filterClassName: String,
351
+ /**
352
+ * customize indices for each row, works on columns with `type=index`
353
+ */
354
+ index: [Number, Function],
355
+ /**
356
+ * the order of the sorting strategies used when sorting the data, works when `sortable` is `true`. Accepts an array, as the user clicks on the header, the column is sorted in order of the elements in the array
357
+ */
358
+ sortOrders: {
359
+ type: Array,
360
+ default: () => {
361
+ return [
362
+ "ascending",
363
+ "descending",
364
+ null
365
+ ];
366
+ },
367
+ validator: (val) => {
368
+ return Array.isArray(val) && val.every((order) => order === "ascending" || order === "descending" || order === null);
369
+ }
370
+ }
371
+ };
372
+ /** Element Plus SelectV2 的透传 Props 定义。 */
373
+ const SelectV2Props = {
374
+ /**
375
+ * whether creating new items is allowed. To use this, `filterable` must be true
376
+ */
377
+ allowCreate: Boolean,
378
+ /**
379
+ * autocomplete of select input
380
+ */
381
+ autocomplete: {
382
+ type: definePropType(String),
383
+ default: "none"
384
+ },
385
+ /**
386
+ * for non-filterable Select, this prop decides if the option menu pops up when the input is focused
387
+ */
388
+ automaticDropdown: Boolean,
389
+ /**
390
+ * whether select can be cleared
391
+ */
392
+ clearable: Boolean,
393
+ /**
394
+ * custom clear icon
395
+ */
396
+ clearIcon: {
397
+ type: definePropType([
398
+ String,
399
+ Object,
400
+ Function
401
+ ]),
402
+ default: CircleClose
403
+ },
404
+ /**
405
+ * tooltip theme, built-in theme: `dark` / `light`
406
+ */
407
+ effect: {
408
+ type: definePropType(String),
409
+ default: "light"
410
+ },
411
+ /**
412
+ * whether to collapse tags to a text when multiple selecting
413
+ */
414
+ collapseTags: Boolean,
415
+ /**
416
+ * whether show all selected tags when mouse hover text of collapse-tags. To use this, `collapse-tags` must be true
417
+ */
418
+ collapseTagsTooltip: Boolean,
419
+ /** collapse-tags tooltip configuration */
420
+ tagTooltip: {
421
+ type: definePropType(Object),
422
+ default: () => ({})
423
+ },
424
+ /**
425
+ * The max tags number to be shown. To use this, `collapse-tags` must be true
426
+ */
427
+ maxCollapseTags: {
428
+ type: Number,
429
+ default: 1
430
+ },
431
+ /**
432
+ *
433
+ */
434
+ defaultFirstOption: Boolean,
435
+ /**
436
+ * is disabled
437
+ */
438
+ disabled: Boolean,
439
+ /**
440
+ *
441
+ */
442
+ estimatedOptionHeight: {
443
+ type: Number,
444
+ default: void 0
445
+ },
446
+ /**
447
+ * is filterable
448
+ */
449
+ filterable: Boolean,
450
+ /**
451
+ *
452
+ */
453
+ filterMethod: Function,
454
+ /**
455
+ * The height of the dropdown panel, 34px for each item
456
+ */
457
+ height: {
458
+ type: Number,
459
+ default: 274
460
+ },
461
+ /**
462
+ * The height of the dropdown item
463
+ */
464
+ itemHeight: {
465
+ type: Number,
466
+ default: 34
467
+ },
468
+ /**
469
+ *
470
+ */
471
+ id: String,
472
+ /**
473
+ * whether Select is loading data from server
474
+ */
475
+ loading: Boolean,
476
+ /**
477
+ * displayed text while loading data from server, default is 'Loading'
478
+ */
479
+ loadingText: String,
480
+ /**
481
+ * biding value
482
+ */
483
+ modelValue: { type: definePropType([
484
+ Array,
485
+ String,
486
+ Number,
487
+ Boolean,
488
+ Object
489
+ ]) },
490
+ /**
491
+ * is multiple
492
+ */
493
+ multiple: Boolean,
494
+ /**
495
+ * maximum number of options user can select when multiple is true. No limit when set to 0
496
+ */
497
+ multipleLimit: {
498
+ type: Number,
499
+ default: 0
500
+ },
501
+ /**
502
+ * the name attribute of select input
503
+ */
504
+ name: String,
505
+ /**
506
+ * displayed text when there is no options, you can also use slot empty, the default is 'No Data'
507
+ */
508
+ noDataText: String,
509
+ /**
510
+ * displayed text when no data matches the filtering query, you can also use slot `empty`, default is 'No matching data'
511
+ */
512
+ noMatchText: String,
513
+ /**
514
+ * function that gets called when the input value changes. Its parameter is the current input value. To use this, `filterable` must be true
515
+ */
516
+ remoteMethod: Function,
517
+ /**
518
+ * whether reserve the keyword after select filtered option.
519
+ */
520
+ reserveKeyword: {
521
+ type: Boolean,
522
+ default: true
523
+ },
524
+ /**
525
+ * data of the options, the key of `value` and `label` can be customize by `props`
526
+ */
527
+ options: { type: definePropType(Array) },
528
+ /**
529
+ * placeholder, the default is 'Please select'
530
+ */
531
+ placeholder: { type: String },
532
+ /**
533
+ * whether select dropdown is teleported to the body
534
+ */
535
+ teleported: useTooltipContentProps.teleported,
536
+ /**
537
+ * when select dropdown is inactive and `persistent` is `false`, select dropdown will be destroyed
538
+ */
539
+ persistent: {
540
+ type: Boolean,
541
+ default: true
542
+ },
543
+ /**
544
+ * custom class name for Select's dropdown
545
+ */
546
+ popperClass: {
547
+ type: String,
548
+ default: ""
549
+ },
550
+ /** custom style for Select's dropdown */
551
+ popperStyle: useTooltipContentProps.popperStyle,
552
+ /**
553
+ * [popper.js](https://popper.js.org/docs/v2/) parameters
554
+ */
555
+ popperOptions: {
556
+ type: definePropType(Object),
557
+ default: () => ({})
558
+ },
559
+ /**
560
+ * whether search data from server
561
+ */
562
+ remote: Boolean,
563
+ /** debounce delay during remote search, in milliseconds */
564
+ debounce: {
565
+ type: Number,
566
+ default: 300
567
+ },
568
+ /**
569
+ * size of component
570
+ */
571
+ size: useSizeProp,
572
+ /**
573
+ * configuration options, see the following table
574
+ */
575
+ props: {
576
+ type: definePropType(Object),
577
+ default: () => ({
578
+ label: "label",
579
+ value: "value",
580
+ disabled: "disabled",
581
+ options: "options"
582
+ })
583
+ },
584
+ /**
585
+ * unique identity key name for value, required when value is an object
586
+ */
587
+ valueKey: {
588
+ type: String,
589
+ default: "value"
590
+ },
591
+ /**
592
+ * Controls whether the scrollbar is always displayed
593
+ */
594
+ scrollbarAlwaysOn: Boolean,
595
+ /**
596
+ * whether to trigger form validation
597
+ */
598
+ validateEvent: {
599
+ type: Boolean,
600
+ default: true
601
+ },
602
+ /**
603
+ * offset of the dropdown
604
+ */
605
+ offset: {
606
+ type: Number,
607
+ default: 12
608
+ },
609
+ /** whether to show the suffix icon during remote search */
610
+ remoteShowSuffix: Boolean,
611
+ /**
612
+ * Determines whether the arrow is displayed
613
+ */
614
+ showArrow: {
615
+ type: Boolean,
616
+ default: true
617
+ },
618
+ /**
619
+ * position of dropdown
620
+ */
621
+ placement: {
622
+ type: definePropType(String),
623
+ default: "bottom-start"
624
+ },
625
+ /**
626
+ * list of possible positions for dropdown
627
+ */
628
+ fallbackPlacements: {
629
+ type: definePropType(Array),
630
+ default: [
631
+ "bottom-start",
632
+ "top-start",
633
+ "right",
634
+ "left"
635
+ ]
636
+ },
637
+ /**
638
+ * tag type
639
+ */
640
+ tagType: {
641
+ ...tagProps.type,
642
+ default: "info"
643
+ },
644
+ /**
645
+ * tag effect
646
+ */
647
+ tagEffect: {
648
+ ...tagProps.effect,
649
+ default: "light"
650
+ },
651
+ /**
652
+ * tabindex for input
653
+ */
654
+ tabindex: {
655
+ type: [String, Number],
656
+ default: 0
657
+ },
658
+ /**
659
+ * which element the select dropdown appends to
660
+ */
661
+ appendTo: String,
662
+ /** whether the dropdown width follows the input width, or a fixed width */
663
+ fitInputWidth: {
664
+ type: [Boolean, Number],
665
+ default: true,
666
+ validator: (value) => typeof value === "boolean" || typeof value === "number"
667
+ },
668
+ /** select suffix icon */
669
+ suffixIcon: {
670
+ type: definePropType([
671
+ String,
672
+ Object,
673
+ Function
674
+ ]),
675
+ default: ArrowDown
676
+ },
677
+ ...useEmptyValuesProps,
678
+ ...useAriaProps(["ariaLabel"])
679
+ };
680
+ //#endregion
681
+ export { SelectV2Props, tableColumnProps, tableProps };
682
+
683
+ //# sourceMappingURL=props.mjs.map