@vtj/materials 0.9.7 → 0.9.9

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 (54) hide show
  1. package/dist/assets/antdv/index.umd.js +2 -2
  2. package/dist/assets/charts/index.umd.js +2 -2
  3. package/dist/assets/element/index.umd.js +4 -4
  4. package/dist/assets/ui/index.umd.js +2 -2
  5. package/dist/assets/vant/index.umd.js +2 -2
  6. package/dist/deps/@vtj/charts/index.umd.js +2 -2
  7. package/dist/deps/@vtj/icons/index.umd.js +2 -2
  8. package/dist/deps/@vtj/ui/index.umd.js +2 -2
  9. package/dist/deps/@vtj/utils/index.umd.js +2 -2
  10. package/package.json +6 -6
  11. package/src/element/anchor.ts +7 -1
  12. package/src/element/avatar.ts +2 -2
  13. package/src/element/badge.ts +16 -1
  14. package/src/element/breadcrumb.ts +2 -2
  15. package/src/element/calendar.ts +2 -2
  16. package/src/element/carousel.ts +8 -1
  17. package/src/element/cascader.ts +2 -9
  18. package/src/element/collapse.ts +9 -1
  19. package/src/element/datePicker.ts +6 -2
  20. package/src/element/descriptions.ts +17 -2
  21. package/src/element/dialog.ts +13 -10
  22. package/src/element/drawer.ts +13 -5
  23. package/src/element/dropdown.ts +26 -6
  24. package/src/element/form.ts +1 -1
  25. package/src/element/image.ts +2 -2
  26. package/src/element/index.ts +4 -0
  27. package/src/element/inputNumber.ts +8 -3
  28. package/src/element/inputTag.ts +18 -3
  29. package/src/element/mention.ts +162 -2
  30. package/src/element/menu.ts +26 -22
  31. package/src/element/pageHeader.ts +2 -2
  32. package/src/element/pagination.ts +20 -12
  33. package/src/element/popconfirm.ts +9 -1
  34. package/src/element/popover.ts +5 -1
  35. package/src/element/progress.ts +3 -3
  36. package/src/element/radio.ts +2 -0
  37. package/src/element/rate.ts +8 -5
  38. package/src/element/segmented.ts +68 -0
  39. package/src/element/select.ts +55 -5
  40. package/src/element/selectV2.ts +66 -14
  41. package/src/element/skeleton.ts +11 -2
  42. package/src/element/slider.ts +0 -1
  43. package/src/element/switch.ts +17 -16
  44. package/src/element/table.ts +26 -13
  45. package/src/element/tabs.ts +2 -1
  46. package/src/element/tag.ts +7 -2
  47. package/src/element/timePicker.ts +36 -3
  48. package/src/element/timeSelect.ts +22 -13
  49. package/src/element/tour.ts +7 -7
  50. package/src/element/transfer.ts +17 -12
  51. package/src/element/treeSelect.ts +75 -21
  52. package/src/element/treeV2.ts +3 -2
  53. package/src/element/upload.ts +9 -15
  54. package/src/version.ts +2 -2
@@ -1,4 +1,5 @@
1
1
  import type { MaterialDescription } from '@vtj/core';
2
+ import { size } from '../shared';
2
3
 
3
4
  const Mention: MaterialDescription = {
4
5
  name: 'ElMention',
@@ -80,9 +81,156 @@ const Mention: MaterialDescription = {
80
81
  title: '参数',
81
82
  setters: ['ObjectSetter', 'JSONSetter']
82
83
  },
84
+ //
83
85
  {
84
- name: 'inputProps',
85
- setters: ['JSONSetter', 'ExpressionSetter']
86
+ name: 'type',
87
+ defaultValue: 'text',
88
+ options: ['text', 'textarea'],
89
+ setters: ['SelectSetter', 'InputSetter']
90
+ },
91
+ {
92
+ name: 'modelValue',
93
+ defaultValue: '',
94
+ setters: ['InputSetter', 'NumberSetter']
95
+ },
96
+ {
97
+ name: 'maxlength',
98
+ defaultValue: '',
99
+ setters: ['InputSetter', 'NumberSetter']
100
+ },
101
+ {
102
+ name: 'minlength',
103
+ defaultValue: '',
104
+ setters: ['InputSetter', 'NumberSetter']
105
+ },
106
+ {
107
+ name: 'showWordLimit',
108
+ defaultValue: false,
109
+ title:
110
+ '是否显示输入字数统计,只在 type = "text" 或 type = "textarea" 时有效',
111
+ label: '字数统计',
112
+ setters: 'BooleanSetter'
113
+ },
114
+ {
115
+ name: 'placeholder',
116
+ defaultValue: '',
117
+ setters: 'InputSetter'
118
+ },
119
+ {
120
+ name: 'clearable',
121
+ defaultValue: false,
122
+ setters: 'BooleanSetter'
123
+ },
124
+ {
125
+ name: 'formatter',
126
+ defaultValue: '',
127
+ setters: 'FunctionSetter'
128
+ },
129
+ {
130
+ name: 'parser',
131
+ defaultValue: '',
132
+ setters: 'FunctionSetter'
133
+ },
134
+ {
135
+ name: 'showPassword',
136
+ defaultValue: false,
137
+ title: '是否显示切换密码图标',
138
+ label: '密码图标',
139
+ setters: 'BooleanSetter'
140
+ },
141
+ {
142
+ name: 'disabled',
143
+ defaultValue: false,
144
+ setters: 'BooleanSetter'
145
+ },
146
+ size('size'),
147
+ {
148
+ name: 'prefix-icon',
149
+ defaultValue: '',
150
+ setters: 'InputSetter'
151
+ },
152
+ {
153
+ name: 'suffix-icon',
154
+ defaultValue: '',
155
+ setters: 'InputSetter'
156
+ },
157
+ {
158
+ name: 'rows',
159
+ defaultValue: 2,
160
+ setters: 'NumberSetter'
161
+ },
162
+ {
163
+ name: 'autosize',
164
+ defaultValue: false,
165
+ setters: ['BooleanSetter', 'JSONStter']
166
+ },
167
+ {
168
+ name: 'autocomplete',
169
+ defaultValue: 'off',
170
+ setters: 'InputSetter'
171
+ },
172
+ {
173
+ name: 'name',
174
+ defaultValue: '',
175
+ setters: 'InputSetter'
176
+ },
177
+ {
178
+ name: 'readonly',
179
+ defaultValue: false,
180
+ setters: 'BooleanSetter'
181
+ },
182
+ {
183
+ name: 'max',
184
+ defaultValue: '',
185
+ setters: 'InputSetter'
186
+ },
187
+ {
188
+ name: 'min',
189
+ defaultValue: '',
190
+ setters: 'InputSetter'
191
+ },
192
+ {
193
+ name: 'step',
194
+ defaultValue: '',
195
+ setters: ['InputSetter', 'NumberSetter']
196
+ },
197
+ {
198
+ name: 'resize',
199
+ defaultValue: '',
200
+ options: ['none', 'both', 'horizontal', 'vertical'],
201
+ setters: 'InputSetter'
202
+ },
203
+ {
204
+ name: 'autofocus',
205
+ defaultValue: false,
206
+ setters: 'BooleanSetter'
207
+ },
208
+ {
209
+ name: 'form',
210
+ defaultValue: '',
211
+ setters: 'InputSetter'
212
+ },
213
+ {
214
+ name: 'aria-label',
215
+ defaultValue: '',
216
+ setters: 'InputSetter'
217
+ },
218
+ {
219
+ name: 'tabindex',
220
+ defaultValue: '',
221
+ setters: 'InputSetter'
222
+ },
223
+ {
224
+ name: 'validateEvent',
225
+ defaultValue: true,
226
+ title: '输入时是否触发表单的校验',
227
+ label: '表单校验',
228
+ setters: 'BooleanSetter'
229
+ },
230
+ {
231
+ name: 'inputStyle',
232
+ defaultValue: {},
233
+ setters: ['JSONSetter']
86
234
  }
87
235
  ],
88
236
  events: [
@@ -97,6 +245,18 @@ const Mention: MaterialDescription = {
97
245
  },
98
246
  {
99
247
  name: 'input'
248
+ },
249
+ {
250
+ name: 'blur'
251
+ },
252
+ {
253
+ name: 'focus'
254
+ },
255
+ {
256
+ name: 'change'
257
+ },
258
+ {
259
+ name: 'clear'
100
260
  }
101
261
  ],
102
262
  slots: [
@@ -28,7 +28,7 @@ const Menu: MaterialDescription[] = [
28
28
  name: 'ellipsisIcon',
29
29
  label: 'ellipsisIcon',
30
30
  title: '自定义省略图标 (仅在水平模式下可用)',
31
- setters: 'StringSetter' //?? component
31
+ setters: 'StringSetter'
32
32
  },
33
33
  {
34
34
  name: 'popperOffset',
@@ -37,21 +37,6 @@ const Menu: MaterialDescription[] = [
37
37
  setters: 'NumberSetter',
38
38
  defaultValue: 6
39
39
  },
40
- {
41
- name: 'backgroundColor',
42
- defaultValue: '#ffffff',
43
- setters: 'ColorSetter'
44
- },
45
- {
46
- name: 'textColor',
47
- defaultValue: '#303133',
48
- setters: 'ColorSetter'
49
- },
50
- {
51
- name: 'activeTextColor',
52
- defaultValue: '#409EFF',
53
- setters: 'ColorSetter'
54
- },
55
40
  {
56
41
  name: 'defaultActive',
57
42
  defaultValue: '',
@@ -99,8 +84,8 @@ const Menu: MaterialDescription[] = [
99
84
  defaultValue: false
100
85
  },
101
86
  {
102
- name: 'popperClass ',
103
- label: 'popperClass ',
87
+ name: 'popperClass',
88
+ label: 'popperClass',
104
89
  title: '为 popper 添加类名',
105
90
  setters: 'StringSetter'
106
91
  },
@@ -117,6 +102,21 @@ const Menu: MaterialDescription[] = [
117
102
  title: '菜单消失前的延迟',
118
103
  setters: 'NumberSetter',
119
104
  defaultValue: 300
105
+ },
106
+ {
107
+ name: 'backgroundColor',
108
+ defaultValue: '#ffffff',
109
+ setters: 'ColorSetter'
110
+ },
111
+ {
112
+ name: 'textColor',
113
+ defaultValue: '#303133',
114
+ setters: 'ColorSetter'
115
+ },
116
+ {
117
+ name: 'activeTextColor',
118
+ defaultValue: '#409EFF',
119
+ setters: 'ColorSetter'
120
120
  }
121
121
  ],
122
122
  events: [
@@ -130,7 +130,7 @@ const Menu: MaterialDescription[] = [
130
130
  name: 'close'
131
131
  }
132
132
  ],
133
- slots: ['default'],
133
+ slots: ['default', 'ellipsis-icon'],
134
134
  snippet: {
135
135
  props: {
136
136
  mode: 'horizontal'
@@ -192,6 +192,7 @@ const Menu: MaterialDescription[] = [
192
192
  props: [
193
193
  {
194
194
  name: 'index',
195
+ label: 'index *',
195
196
  defaultValue: '',
196
197
  setters: 'InputSetter'
197
198
  },
@@ -202,12 +203,10 @@ const Menu: MaterialDescription[] = [
202
203
  },
203
204
  {
204
205
  name: 'showTimeout',
205
- defaultValue: 300,
206
206
  setters: 'NumberSetter'
207
207
  },
208
208
  {
209
209
  name: 'hideTimeout',
210
- defaultValue: 300,
211
210
  setters: 'NumberSetter'
212
211
  },
213
212
  {
@@ -215,6 +214,11 @@ const Menu: MaterialDescription[] = [
215
214
  defaultValue: false,
216
215
  setters: 'BooleanSetter'
217
216
  },
217
+ {
218
+ name: 'teleported',
219
+ defaultValue: undefined,
220
+ setters: 'BooleanSetter'
221
+ },
218
222
  {
219
223
  name: 'popperOffset',
220
224
  defaultValue: 6,
@@ -281,7 +285,7 @@ const Menu: MaterialDescription[] = [
281
285
  {
282
286
  name: 'route',
283
287
  defaultValue: '',
284
- setters: 'JSONSetter'
288
+ setters: ['StringSetter', 'JSONSetter']
285
289
  },
286
290
  {
287
291
  name: 'disabled',
@@ -10,12 +10,12 @@ const components: MaterialDescription = {
10
10
  props: [
11
11
  {
12
12
  name: 'icon',
13
- defaultValue: undefined,
13
+ defaultValue: 'Back',
14
14
  setters: 'InputSetter'
15
15
  },
16
16
  {
17
17
  name: 'title',
18
- defaultValue: 'Back',
18
+ defaultValue: '',
19
19
  setters: 'InputSetter'
20
20
  },
21
21
  {
@@ -8,9 +8,10 @@ const Pagination: MaterialDescription = {
8
8
  package: 'element-plus',
9
9
  props: [
10
10
  {
11
- name: 'small',
12
- defaultValue: false,
13
- setters: 'BooleanSetter'
11
+ name: 'size',
12
+ defaultValue: 'default',
13
+ options: ['large', 'default', 'small'],
14
+ setters: 'SelectSetter'
14
15
  },
15
16
  {
16
17
  name: 'background',
@@ -45,7 +46,6 @@ const Pagination: MaterialDescription = {
45
46
  setters: 'NumberSetter'
46
47
  },
47
48
  {
48
- // name: 'current-page',
49
49
  name: 'currentPage',
50
50
  defaultValue: 1,
51
51
  setters: 'NumberSetter'
@@ -58,13 +58,18 @@ const Pagination: MaterialDescription = {
58
58
  },
59
59
  {
60
60
  name: 'layout',
61
- defaultValue: undefined,
61
+ defaultValue: 'prev, pager, next, jumper, ->, total',
62
62
  setters: 'InputSetter'
63
63
  },
64
64
  {
65
65
  name: 'pageSizes',
66
66
  defaultValue: [10, 20, 30, 40, 50, 100],
67
- setters: 'JSONSetter'
67
+ setters: ['ArraySetter', 'JSONSetter']
68
+ },
69
+ {
70
+ name: 'appendSizeTo',
71
+ title: '下拉框挂载到哪个 DOM 元素',
72
+ setters: 'StringSetter'
68
73
  },
69
74
  {
70
75
  name: 'popperClass',
@@ -78,7 +83,7 @@ const Pagination: MaterialDescription = {
78
83
  },
79
84
  {
80
85
  name: 'prevIcon',
81
- defaultValue: '',
86
+ defaultValue: 'ArrowLeft',
82
87
  setters: 'InputSetter'
83
88
  },
84
89
  {
@@ -88,7 +93,7 @@ const Pagination: MaterialDescription = {
88
93
  },
89
94
  {
90
95
  name: 'nextIcon',
91
- defaultValue: '',
96
+ defaultValue: 'ArrowRight',
92
97
  setters: 'InputSetter'
93
98
  },
94
99
  {
@@ -98,15 +103,18 @@ const Pagination: MaterialDescription = {
98
103
  },
99
104
  {
100
105
  name: 'teleported ',
101
- label: 'teleported ',
102
106
  title: '是否将下拉菜单teleport至 body',
103
107
  setters: 'BooleanSetter',
104
108
  defaultValue: true
105
109
  },
106
110
  {
107
111
  name: 'hideOnSinglePage',
108
- defaultValue: '',
109
- label: '只有一页隐藏',
112
+ defaultValue: false,
113
+ setters: 'BooleanSetter'
114
+ },
115
+ {
116
+ name: 'small',
117
+ defaultValue: false,
110
118
  setters: 'BooleanSetter'
111
119
  }
112
120
  ],
@@ -119,7 +127,7 @@ const Pagination: MaterialDescription = {
119
127
  'update:pageSize',
120
128
  'update:currentPage'
121
129
  ],
122
- slots: ['default'],
130
+ slots: ['default', 'prevIcon', 'nextIcon'],
123
131
  snippet: {
124
132
  props: {
125
133
  total: 1000,
@@ -36,7 +36,7 @@ const components: MaterialDescription = {
36
36
  },
37
37
  {
38
38
  name: 'icon',
39
- defaultValue: '',
39
+ defaultValue: 'QuestionFilled',
40
40
  setters: ['InputSetter']
41
41
  },
42
42
  {
@@ -49,6 +49,11 @@ const components: MaterialDescription = {
49
49
  defaultValue: false,
50
50
  setters: 'BooleanSetter'
51
51
  },
52
+ {
53
+ name: 'hideAfter',
54
+ defaultValue: 200,
55
+ setters: 'NumberSetter'
56
+ },
52
57
  {
53
58
  name: 'teleported',
54
59
  defaultValue: true,
@@ -76,6 +81,9 @@ const components: MaterialDescription = {
76
81
  slots: [
77
82
  {
78
83
  name: 'reference'
84
+ },
85
+ {
86
+ name: 'actions'
79
87
  }
80
88
  ],
81
89
  snippet: {
@@ -31,7 +31,7 @@ const components: MaterialDescription = {
31
31
  },
32
32
  {
33
33
  name: 'width',
34
- defaultValue: '',
34
+ defaultValue: 150,
35
35
  setters: ['NumberSetter', 'InputSetter']
36
36
  },
37
37
  {
@@ -88,6 +88,10 @@ const components: MaterialDescription = {
88
88
  defaultValue: '',
89
89
  setters: 'InputSetter'
90
90
  },
91
+ {
92
+ name: 'popperStyle',
93
+ setters: ['InputSetter', 'ObjectSetter']
94
+ },
91
95
  {
92
96
  name: 'showAfter',
93
97
  defaultValue: 0,
@@ -21,7 +21,7 @@ const Progress: MaterialDescription = {
21
21
  },
22
22
  {
23
23
  name: 'type',
24
- defaultValue: 0,
24
+ defaultValue: 'line',
25
25
  options: ['line', 'circle', 'dashboard'],
26
26
  setters: 'SelectSetter'
27
27
  },
@@ -54,7 +54,7 @@ const Progress: MaterialDescription = {
54
54
  {
55
55
  name: 'color',
56
56
  defaultValue: '',
57
- setters: ['ColorSetter', 'FunctionSetter', 'JSONSetter']
57
+ setters: ['ColorSetter', 'FunctionSetter', 'ArraySetter', 'JSONSetter']
58
58
  },
59
59
  {
60
60
  name: 'width',
@@ -70,7 +70,7 @@ const Progress: MaterialDescription = {
70
70
  name: 'strokeLinecap',
71
71
  defaultValue: 'round',
72
72
  options: ['butt', 'round', 'square'],
73
- setters: 'BooleanSetter'
73
+ setters: 'SelectSetter'
74
74
  },
75
75
  {
76
76
  name: 'format',
@@ -58,6 +58,7 @@ const Radio: MaterialDescription[] = [
58
58
  name: 'update:modelValue'
59
59
  }
60
60
  ],
61
+ slots: ['default'],
61
62
  snippet: {
62
63
  props: {
63
64
  label: '选项一',
@@ -137,6 +138,7 @@ const Radio: MaterialDescription[] = [
137
138
  name: 'update:modelValue'
138
139
  }
139
140
  ],
141
+ slots: ['default'],
140
142
  snippet: {
141
143
  name: 'ElRadioGroup',
142
144
  children: [
@@ -38,20 +38,18 @@ const Rate: MaterialDescription = {
38
38
  name: 'lowThreshold',
39
39
  defaultValue: 2,
40
40
  title: '低分和中等分数的界限值, 值本身被划分在低分中',
41
- label: '低分界限',
42
41
  setters: 'NumberSetter'
43
42
  },
44
43
  {
45
44
  name: 'highThreshold',
46
45
  defaultValue: 4,
47
46
  title: '高分和中等分数的界限值, 值本身被划分在高分中',
48
- label: '高分界限',
49
47
  setters: 'NumberSetter'
50
48
  },
51
49
  {
52
50
  name: 'colors',
53
51
  defaultValue: ['#F7BA2A', '#F7BA2A', '#F7BA2A'],
54
- setters: 'JSONSetter'
52
+ setters: ['ArraySetter', 'JSONSetter']
55
53
  },
56
54
  {
57
55
  name: 'voidColor',
@@ -67,7 +65,7 @@ const Rate: MaterialDescription = {
67
65
  {
68
66
  name: 'icons',
69
67
  defaultValue: ['StarFilled', 'StarFilled', 'StarFilled'],
70
- setters: 'JSONSetter'
68
+ setters: ['ArraySetter', 'JSONSetter']
71
69
  },
72
70
  {
73
71
  name: 'voidIcon',
@@ -104,7 +102,7 @@ const Rate: MaterialDescription = {
104
102
  'Satisfied',
105
103
  'Surprise'
106
104
  ],
107
- setters: 'JSONSetter'
105
+ setters: ['ArraySetter', 'JSONSetter']
108
106
  },
109
107
  {
110
108
  name: 'scoreTemplate',
@@ -124,6 +122,11 @@ const Rate: MaterialDescription = {
124
122
  title: '原生 id 属性',
125
123
  setters: 'StringSetter'
126
124
  },
125
+ {
126
+ name: 'ariaLabel',
127
+ title: '和 Rate 的 aria-label 属性保持一致',
128
+ setters: 'StringSetter'
129
+ },
127
130
  {
128
131
  name: 'label',
129
132
  label: 'label',
@@ -0,0 +1,68 @@
1
+ import type { MaterialDescription } from '@vtj/core';
2
+ const Segmented: MaterialDescription[] = [
3
+ {
4
+ name: 'ElSegmented',
5
+ label: '分段控制器',
6
+
7
+ doc: 'https://element-plus.org/zh-CN/component/segmented.html',
8
+ categoryId: 'data',
9
+ package: 'element-plus',
10
+ props: [
11
+ {
12
+ name: 'modelValue',
13
+ title: '绑定值',
14
+ setters: ['StringSetter', 'NumberSetter', 'BooleanSetter']
15
+ },
16
+ {
17
+ name: 'options',
18
+ title: '选项的数据',
19
+ defaultValue: [],
20
+ setters: 'ArraySetter'
21
+ },
22
+ {
23
+ name: 'size',
24
+ defaultValue: '',
25
+ options: ['', 'large', 'default', 'small'],
26
+ setters: 'SelectSetter'
27
+ },
28
+ {
29
+ name: 'disabled',
30
+ defaultValue: false,
31
+ setters: 'BooleanSetter'
32
+ },
33
+ {
34
+ name: 'validate-event',
35
+ defaultValue: true,
36
+ setters: 'BooleanSetter'
37
+ },
38
+ {
39
+ name: 'name',
40
+ setters: 'StringSetter'
41
+ },
42
+ {
43
+ name: 'id',
44
+ setters: 'StringSetter'
45
+ },
46
+ {
47
+ name: 'ariaLabel',
48
+ setters: 'StringSetter'
49
+ },
50
+ {
51
+ name: 'direction',
52
+ defaultValue: 'horizontal',
53
+ options: ['horizontal', 'vertical'],
54
+ setters: 'SelectSetter'
55
+ }
56
+ ],
57
+ events: ['change', 'update:modelValue'],
58
+ slots: ['default'],
59
+ snippet: {
60
+ props: {
61
+ modelValue: 'Mom',
62
+ options: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
63
+ }
64
+ }
65
+ }
66
+ ];
67
+
68
+ export default Segmented;