fast-element-plus 2.0.19 → 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.
- package/CHANGELOG.md +40 -20
- package/CONTRIBUTING.md +3 -4
- package/README.md +80 -27
- package/README.zh.md +66 -27
- package/dist/component.d.ts +110 -110
- package/dist/components/avatar/src/avatar.d.ts +26 -26
- package/dist/components/avatar/src/avatar.mjs +10 -10
- package/dist/components/avatar/src/avatar.mjs.map +1 -1
- package/dist/components/button/src/button.d.ts +32 -27
- package/dist/components/button/src/button.mjs +57 -36
- package/dist/components/button/src/button.mjs.map +1 -1
- package/dist/components/carNumber/src/carNumber.d.ts +8 -8
- package/dist/components/carNumber/src/carNumber.mjs +5 -5
- package/dist/components/carNumber/src/carNumber.mjs.map +1 -1
- package/dist/components/contextMenu/src/contextMenu.d.ts +6 -6
- package/dist/components/contextMenu/src/contextMenu.mjs +5 -5
- package/dist/components/contextMenu/src/contextMenu.mjs.map +1 -1
- package/dist/components/contextMenu/src/contextMenu.type.d.ts +7 -7
- package/dist/components/dialog/src/dialog.d.ts +74 -74
- package/dist/components/dialog/src/dialog.mjs +31 -31
- package/dist/components/dialog/src/dialog.mjs.map +1 -1
- package/dist/components/drawer/src/drawer.d.ts +57 -57
- package/dist/components/drawer/src/drawer.mjs +24 -24
- package/dist/components/drawer/src/drawer.mjs.map +1 -1
- package/dist/components/form/src/form.d.ts +30 -30
- package/dist/components/form/src/form.mjs +16 -16
- package/dist/components/form/src/form.mjs.map +1 -1
- package/dist/components/form/src/formItem.d.ts +30 -30
- package/dist/components/form/src/formItem.mjs +13 -13
- package/dist/components/form/src/formItem.mjs.map +1 -1
- package/dist/components/formItemTip/src/formItemTip.d.ts +9 -9
- package/dist/components/formItemTip/src/formItemTip.mjs +3 -3
- package/dist/components/formItemTip/src/formItemTip.mjs.map +1 -1
- package/dist/components/icon/src/icon.d.ts +10 -10
- package/dist/components/icon/src/icon.mjs +4 -4
- package/dist/components/icon/src/icon.mjs.map +1 -1
- package/dist/components/iconSelector/src/iconSelector.d.ts +6 -6
- package/dist/components/iconSelector/src/iconSelector.mjs +4 -4
- package/dist/components/iconSelector/src/iconSelector.mjs.map +1 -1
- package/dist/components/image/src/image.d.ts +36 -36
- package/dist/components/image/src/image.mjs +11 -11
- package/dist/components/image/src/image.mjs.map +1 -1
- package/dist/components/inputDialogPage/src/inputDialogPage.d.ts +37 -37
- package/dist/components/inputDialogPage/src/inputDialogPage.mjs +16 -16
- package/dist/components/inputDialogPage/src/inputDialogPage.mjs.map +1 -1
- package/dist/components/layoutGrid/src/layoutGrid.d.ts +12 -12
- package/dist/components/layoutGrid/src/layoutGrid.mjs +6 -6
- package/dist/components/layoutGrid/src/layoutGrid.mjs.map +1 -1
- package/dist/components/layoutGrid/src/layoutGridItem.d.ts +18 -18
- package/dist/components/layoutGrid/src/layoutGridItem.mjs +8 -8
- package/dist/components/layoutGrid/src/layoutGridItem.mjs.map +1 -1
- package/dist/components/select/src/select.d.ts +88 -88
- package/dist/components/select/src/select.mjs +28 -28
- package/dist/components/select/src/select.mjs.map +1 -1
- package/dist/components/select/src/selectOption.d.ts +13 -13
- package/dist/components/select/src/selectOption.mjs +6 -6
- package/dist/components/select/src/selectOption.mjs.map +1 -1
- package/dist/components/selectPage/src/selectPage.d.ts +78 -84
- package/dist/components/selectPage/src/selectPage.mjs +49 -35
- package/dist/components/selectPage/src/selectPage.mjs.map +1 -1
- package/dist/components/selectV2/index.mjs +2 -1
- package/dist/components/selectV2/index.mjs.map +1 -1
- package/dist/components/selectV2/src/selectV2.d.ts +160 -851
- package/dist/components/selectV2/src/selectV2.mjs +30 -338
- package/dist/components/selectV2/src/selectV2.mjs.map +1 -1
- package/dist/components/table/index.mjs +3 -2
- package/dist/components/table/index.mjs.map +1 -1
- package/dist/components/table/src/page.type.d.ts +1 -1
- package/dist/components/table/src/table.d.ts +211 -744
- package/dist/components/table/src/table.mjs +111 -307
- package/dist/components/table/src/table.mjs.map +1 -1
- package/dist/components/table/src/table.state.d.ts +3 -3
- package/dist/components/table/src/table.type.d.ts +1 -9
- package/dist/components/table/src/table.type.mjs.map +1 -1
- package/dist/components/table/src/tableColumn.d.ts +102 -399
- package/dist/components/table/src/tableColumn.mjs +28 -185
- package/dist/components/table/src/tableColumn.mjs.map +1 -1
- package/dist/components/table/src/tableColumnSettingDialog.d.ts +4 -4
- package/dist/components/table/src/tableColumnSettingDialog.mjs +3 -3
- package/dist/components/table/src/tableColumnSettingDialog.mjs.map +1 -1
- package/dist/components/table/src/tablePagination.d.ts +4 -4
- package/dist/components/table/src/tablePagination.mjs +3 -3
- package/dist/components/table/src/tablePagination.mjs.map +1 -1
- package/dist/components/table/src/tableSearchForm.d.ts +12 -12
- package/dist/components/table/src/tableSearchForm.mjs +6 -6
- package/dist/components/table/src/tableSearchForm.mjs.map +1 -1
- package/dist/components/table/src/tableSearchFormItem.d.ts +4 -4
- package/dist/components/table/src/tableSearchFormItem.mjs +2 -2
- package/dist/components/table/src/tableSearchFormItem.mjs.map +1 -1
- package/dist/components/table/src/useTable.d.ts +1 -0
- package/dist/components/table/src/useTable.mjs +109 -65
- package/dist/components/table/src/useTable.mjs.map +1 -1
- package/dist/components/table/utils/table.d.ts +4 -4
- package/dist/components/table/utils/table.mjs +4 -4
- package/dist/components/table/utils/table.mjs.map +1 -1
- package/dist/components/tree/src/tree.d.ts +86 -86
- package/dist/components/tree/src/tree.mjs +46 -46
- package/dist/components/tree/src/tree.mjs.map +1 -1
- package/dist/components/treeSelect/src/treeSelect.d.ts +144 -150
- package/dist/components/treeSelect/src/treeSelect.mjs +55 -55
- package/dist/components/treeSelect/src/treeSelect.mjs.map +1 -1
- package/dist/components/upload/src/upload.d.ts +36 -36
- package/dist/components/upload/src/upload.mjs +17 -17
- package/dist/components/upload/src/upload.mjs.map +1 -1
- package/dist/components/uploadImage/src/uploadImage.d.ts +47 -47
- package/dist/components/uploadImage/src/uploadImage.mjs +23 -23
- package/dist/components/uploadImage/src/uploadImage.mjs.map +1 -1
- package/dist/components/uploadImages/src/uploadImages.d.ts +41 -41
- package/dist/components/uploadImages/src/uploadImages.mjs +21 -21
- package/dist/components/uploadImages/src/uploadImages.mjs.map +1 -1
- package/dist/directives/click-debounce/index.mjs +19 -11
- package/dist/directives/click-debounce/index.mjs.map +1 -1
- package/dist/directives/click-throttle/index.d.ts +4 -2
- package/dist/directives/click-throttle/index.mjs +21 -11
- package/dist/directives/click-throttle/index.mjs.map +1 -1
- package/dist/index.global.min.js +3 -3
- package/dist/index.global.min.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/internal/props.d.ts +685 -0
- package/dist/internal/props.mjs +683 -0
- package/dist/internal/props.mjs.map +1 -0
- package/dist/utils/loading-tasks.d.ts +5 -0
- package/dist/utils/loading-tasks.mjs +32 -0
- package/dist/utils/loading-tasks.mjs.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.mjs +1 -1
- package/dist/version.mjs.map +1 -1
- 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
|