straw-ui-vue 0.1.20 → 0.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 (44) hide show
  1. package/README.md +146 -146
  2. package/dist/{cn-CiflBmGp.js → cn-CThBjlvA.js} +7 -7
  3. package/dist/components/st-button/types.d.ts +63 -63
  4. package/dist/components/st-card/types.d.ts +184 -184
  5. package/dist/components/st-cascade/types.d.ts +156 -156
  6. package/dist/components/st-checkbox/types.d.ts +120 -120
  7. package/dist/components/st-color-picker/types.d.ts +160 -160
  8. package/dist/components/st-date-picker/types.d.ts +157 -157
  9. package/dist/components/st-datetime-picker/types.d.ts +155 -155
  10. package/dist/components/st-dialog/types.d.ts +293 -293
  11. package/dist/components/st-divider/types.d.ts +92 -92
  12. package/dist/components/st-drawer/types.d.ts +232 -232
  13. package/dist/components/st-empty/types.d.ts +39 -39
  14. package/dist/components/st-form-control/types.d.ts +21 -21
  15. package/dist/components/st-form-description/types.d.ts +21 -21
  16. package/dist/components/st-form-field/types.d.ts +64 -64
  17. package/dist/components/st-form-item/types.d.ts +21 -21
  18. package/dist/components/st-form-label/types.d.ts +19 -19
  19. package/dist/components/st-form-message/types.d.ts +23 -23
  20. package/dist/components/st-image/types.d.ts +58 -58
  21. package/dist/components/st-input/types.d.ts +415 -415
  22. package/dist/components/st-label/types.d.ts +19 -19
  23. package/dist/components/st-menu/types.d.ts +262 -262
  24. package/dist/components/st-pagination/types.d.ts +91 -91
  25. package/dist/components/st-popover/types.d.ts +202 -202
  26. package/dist/components/st-progress/types.d.ts +37 -37
  27. package/dist/components/st-radio/types.d.ts +126 -126
  28. package/dist/components/st-scrollbar/types.d.ts +62 -62
  29. package/dist/components/st-segmented/types.d.ts +53 -53
  30. package/dist/components/st-sidebar/types.d.ts +85 -85
  31. package/dist/components/st-sidebar-item/types.d.ts +45 -45
  32. package/dist/components/st-skeleton/types.d.ts +56 -56
  33. package/dist/components/st-slider/types.d.ts +61 -61
  34. package/dist/components/st-splitter/types.d.ts +260 -260
  35. package/dist/components/st-splitter-panel/types.d.ts +63 -63
  36. package/dist/components/st-switch/types.d.ts +53 -53
  37. package/dist/components/st-tabs/types.d.ts +151 -151
  38. package/dist/components/st-tag/types.d.ts +51 -51
  39. package/dist/components/st-time-picker/types.d.ts +143 -143
  40. package/dist/components/st-toggle/types.d.ts +58 -58
  41. package/dist/components/st-tooltip/types.d.ts +172 -172
  42. package/dist/components/st-tree/types.d.ts +188 -188
  43. package/dist/straw-ui.js +107 -51
  44. package/package.json +16 -11
@@ -1,415 +1,415 @@
1
- import type { ClassValue, Ref, StyleValue } from 'vue';
2
- import type { StButtonEmits, StButtonProps, StButtonSlots } from '../st-button/types.d.ts';
3
-
4
- /**
5
- * 输入框类型
6
- * */
7
- export type StInputType = 'text' | 'password' | 'email' | 'number' | 'tel' | 'url';
8
-
9
- // ============================================================
10
- // StInput 组件类型
11
- // ============================================================
12
-
13
- /**
14
- * 输入框组件属性接口
15
- * */
16
- export interface StInputProps {
17
- /** 输入框类型 */
18
- type?: StInputType;
19
- /** 占位符文本 */
20
- placeholder?: string;
21
- /** 是否禁用 */
22
- disabled?: boolean;
23
- /** 是否可清空 */
24
- clearable?: boolean;
25
- /** 是否只读 */
26
- readonly?: boolean;
27
- /** 是否显示密码切换按钮 */
28
- showPassword?: boolean;
29
- /** 最大输入长度 */
30
- maxlength?: number;
31
- /** 最小输入长度 */
32
- minlength?: number;
33
- /** 是否显示字数统计 */
34
- showWordLimit?: boolean;
35
- /** 前缀图标名称 */
36
- prefixIcon?: string;
37
- /** 后缀图标名称 */
38
- suffixIcon?: string;
39
- /** 输入框自定义类名 */
40
- inputClass?: ClassValue;
41
- /** 输入框自定义样式 */
42
- inputStyle?: StyleValue;
43
- /** 前缀自定义类名 */
44
- prefixClass?: ClassValue;
45
- /** 前缀自定义样式 */
46
- prefixStyle?: StyleValue;
47
- /** 后缀自定义类名 */
48
- suffixClass?: ClassValue;
49
- /** 后缀自定义样式 */
50
- suffixStyle?: StyleValue;
51
- /** 清除图标自定义类名 */
52
- clearIconClass?: ClassValue;
53
- /** 清除图标自定义样式 */
54
- clearIconStyle?: StyleValue;
55
- /** 密码切换图标自定义类名 */
56
- passwordToggleClass?: ClassValue;
57
- /** 密码切换图标自定义样式 */
58
- passwordToggleStyle?: StyleValue;
59
- }
60
-
61
- /**
62
- * 输入框组件事件接口
63
- * */
64
- export interface StInputEmits {
65
- /** 输入事件 */
66
- input: [event: Event];
67
- /** 值改变事件 */
68
- change: [event: Event];
69
- /** 获得焦点事件 */
70
- focus: [event: FocusEvent];
71
- /** 失去焦点事件 */
72
- blur: [event: FocusEvent];
73
- /** 清空事件 */
74
- clear: [];
75
- }
76
-
77
- /**
78
- * 输入框组件插槽接口
79
- * */
80
- export interface StInputSlots {
81
- /** 前缀内容插槽 */
82
- prefix?: () => unknown;
83
- /** 后缀内容插槽 */
84
- suffix?: () => unknown;
85
- /** 前缀图标插槽 */
86
- 'prefix-icon'?: () => unknown;
87
- /** 后缀图标插槽 */
88
- 'suffix-icon'?: () => unknown;
89
- }
90
-
91
- // ============================================================
92
- // StInputGroup 组件类型
93
- // ============================================================
94
-
95
- /**
96
- * InputGroup 容器组件属性接口
97
- * */
98
- export interface StInputGroupProps {
99
- /** 是否禁用 */
100
- disabled?: boolean;
101
- }
102
-
103
- /**
104
- * InputGroup 组件事件接口
105
- * */
106
- export interface StInputGroupEmits {}
107
-
108
- /**
109
- * InputGroup 组件插槽接口
110
- * */
111
- export interface StInputGroupSlots {
112
- /** 默认插槽 */
113
- default?: () => unknown;
114
- }
115
-
116
- // ============================================================
117
- // StInputGroupAddon 组件类型
118
- // ============================================================
119
-
120
- /**
121
- * InputGroupAddon 对齐类型
122
- * */
123
- export type StInputGroupAddonAlign = 'inline-start' | 'inline-end' | 'block-start' | 'block-end';
124
-
125
- /**
126
- * InputGroupAddon 附加组件属性接口
127
- * */
128
- export interface StInputGroupAddonProps {
129
- /** 对齐方式 */
130
- align?: StInputGroupAddonAlign;
131
- }
132
-
133
- /**
134
- * InputGroupAddon 组件插槽接口
135
- * */
136
- export interface StInputGroupAddonSlots {
137
- /** 默认插槽 */
138
- default?: () => unknown;
139
- }
140
-
141
- /**
142
- * InputGroupAddon 事件类型
143
- * */
144
- export interface StInputGroupAddonEmits {
145
- /** 点击事件 */
146
- click: [event: MouseEvent];
147
- }
148
-
149
- // ============================================================
150
- // StInputGroupInput 组件类型
151
- // ============================================================
152
-
153
- /**
154
- * InputGroupInput 输入组件属性接口
155
- * */
156
- export interface StInputGroupInputProps {
157
- /** 输入框类型 */
158
- type?: StInputType;
159
- /** 占位符文本 */
160
- placeholder?: string;
161
- /** 是否禁用 */
162
- disabled?: boolean;
163
- /** 是否只读 */
164
- readonly?: boolean;
165
- /** 最大输入长度 */
166
- maxlength?: number;
167
- /** 最小输入长度 */
168
- minlength?: number;
169
- }
170
-
171
- /**
172
- * InputGroupInput 输入组件事件接口
173
- * */
174
- export interface StInputGroupInputEmits {
175
- /** 输入事件 */
176
- input: [event: Event];
177
- /** 值改变事件 */
178
- change: [event: Event];
179
- /** 获得焦点事件 */
180
- focus: [event: FocusEvent];
181
- /** 失去焦点事件 */
182
- blur: [event: FocusEvent];
183
- }
184
-
185
- /**
186
- * InputGroupInput 组件暴露接口
187
- * */
188
- export interface StInputGroupInputExpose {
189
- /** 聚焦输入框 */
190
- focus: () => void;
191
- /** 失焦输入框 */
192
- blur: () => void;
193
- /** 选择输入框内容 */
194
- select: () => void;
195
- /** 输入框 DOM 引用 */
196
- inputRef: Ref<HTMLInputElement | null>;
197
- }
198
-
199
- // ============================================================
200
- // StInputGroupButton 组件类型(派生自 StButton)
201
- // ============================================================
202
-
203
- /** InputGroupButton 组件属性接口 */
204
- export type StInputGroupButtonProps = StButtonProps;
205
-
206
- /** InputGroupButton 组件事件接口 */
207
- export type StInputGroupButtonEmits = StButtonEmits;
208
-
209
- /** InputGroupButton 组件插槽接口 */
210
- export type StInputGroupButtonSlots = StButtonSlots;
211
-
212
- // ============================================================
213
- // StInputGroupText 组件类型(派生自 InputGroupAddon)
214
- // ============================================================
215
-
216
- /** InputGroupText 组件属性接口 */
217
- export type StInputGroupTextProps = StInputGroupAddonProps;
218
-
219
- /** InputGroupText 组件事件接口 */
220
- export type StInputGroupTextEmits = StInputGroupAddonEmits;
221
-
222
- /** InputGroupText 组件插槽接口 */
223
- export type StInputGroupTextSlots = StInputGroupAddonSlots;
224
-
225
- // ============================================================
226
- // StInputGroupTextarea 组件类型
227
- // ============================================================
228
-
229
- /**
230
- * InputGroupTextarea 文本域组件属性接口
231
- * */
232
- export interface StInputGroupTextareaProps {
233
- /** 占位符文本 */
234
- placeholder?: string;
235
- /** 是否禁用 */
236
- disabled?: boolean;
237
- /** 是否只读 */
238
- readonly?: boolean;
239
- /** 最大输入长度 */
240
- maxlength?: number;
241
- /** 最小输入长度 */
242
- minlength?: number;
243
- /** 可见行数 */
244
- rows?: number;
245
- /** 可见列数 */
246
- cols?: number;
247
- }
248
-
249
- /**
250
- * InputGroupTextarea 文本域组件事件接口
251
- * */
252
- export interface StInputGroupTextareaEmits {
253
- /** 输入事件 */
254
- input: [event: Event];
255
- /** 值改变事件 */
256
- change: [event: Event];
257
- /** 获得焦点事件 */
258
- focus: [event: FocusEvent];
259
- /** 失去焦点事件 */
260
- blur: [event: FocusEvent];
261
- }
262
-
263
- /**
264
- * InputGroupTextarea 文本域组件暴露接口
265
- * */
266
- export interface StInputGroupTextareaExpose {
267
- /** 聚焦文本域 */
268
- focus: () => void;
269
- /** 失焦文本域 */
270
- blur: () => void;
271
- /** 选择文本域内容 */
272
- select: () => void;
273
- /** 文本域 DOM 引用 */
274
- textareaRef: Ref<HTMLTextAreaElement | null>;
275
- }
276
-
277
- // ============================================================
278
- // StTextarea 组件类型
279
- // ============================================================
280
-
281
- /**
282
- * 文本域组件属性接口
283
- * */
284
- export interface StTextareaProps {
285
- /** 占位符文本 */
286
- placeholder?: string;
287
- /** 是否禁用 */
288
- disabled?: boolean;
289
- /** 是否可清空 */
290
- clearable?: boolean;
291
- /** 是否只读 */
292
- readonly?: boolean;
293
- /** 最大输入长度 */
294
- maxlength?: number;
295
- /** 最小输入长度 */
296
- minlength?: number;
297
- /** 可见行数 */
298
- rows?: number;
299
- /** 可见列数 */
300
- cols?: number;
301
- /** 是否显示字数统计 */
302
- showWordLimit?: boolean;
303
- /** 前缀图标名称 */
304
- prefixIcon?: string;
305
- /** 后缀图标名称 */
306
- suffixIcon?: string;
307
- /** 输入框自定义类名 */
308
- inputClass?: ClassValue;
309
- /** 输入框自定义样式 */
310
- inputStyle?: StyleValue;
311
- /** 前缀自定义类名 */
312
- prefixClass?: ClassValue;
313
- /** 前缀自定义样式 */
314
- prefixStyle?: StyleValue;
315
- /** 后缀自定义类名 */
316
- suffixClass?: ClassValue;
317
- /** 后缀自定义样式 */
318
- suffixStyle?: StyleValue;
319
- /** 清除图标自定义类名 */
320
- clearIconClass?: ClassValue;
321
- /** 清除图标自定义样式 */
322
- clearIconStyle?: StyleValue;
323
- }
324
-
325
- /**
326
- * 文本域组件事件接口
327
- * */
328
- export interface StTextareaEmits {
329
- /** 输入事件 */
330
- input: [event: Event];
331
- /** 值改变事件 */
332
- change: [event: Event];
333
- /** 获得焦点事件 */
334
- focus: [event: FocusEvent];
335
- /** 失去焦点事件 */
336
- blur: [event: FocusEvent];
337
- /** 清空事件 */
338
- clear: [];
339
- }
340
-
341
- /**
342
- * 文本域组件插槽接口
343
- * */
344
- export interface StTextareaSlots {
345
- /** 前缀内容插槽 */
346
- prefix?: () => unknown;
347
- /** 后缀内容插槽 */
348
- suffix?: () => unknown;
349
- }
350
-
351
- // ============================================================
352
- // StInputNumber 组件类型
353
- // ============================================================
354
-
355
- /**
356
- * 数字输入框组件属性接口
357
- * */
358
- export interface StInputNumberProps {
359
- /** 是否禁用 */
360
- disabled?: boolean;
361
- /** 最小值 */
362
- min?: number;
363
- /** 最大值 */
364
- max?: number;
365
- /** 步长 */
366
- step?: number;
367
- /** 数值精度(小数位数) */
368
- precision?: number;
369
- /** 是否显示增减按钮 */
370
- controls?: boolean;
371
- /** 输入框自定义类名 */
372
- inputClass?: ClassValue;
373
- /** 输入框自定义样式 */
374
- inputStyle?: StyleValue;
375
- /** 增加按钮自定义类名 */
376
- increaseClass?: ClassValue;
377
- /** 减少按钮自定义类名 */
378
- decreaseClass?: ClassValue;
379
- }
380
-
381
- /**
382
- * 数字输入框组件事件接口
383
- * */
384
- export interface StInputNumberEmits {
385
- /** 输入事件 */
386
- input: [value: number | undefined];
387
- /** 值改变事件 */
388
- change: [value: number | undefined];
389
- /** 获得焦点事件 */
390
- focus: [event: FocusEvent];
391
- /** 失去焦点事件 */
392
- blur: [event: FocusEvent];
393
- /** 增加按钮点击事件 */
394
- increase: [];
395
- /** 减少按钮点击事件 */
396
- decrease: [];
397
- }
398
-
399
- /**
400
- * 数字输入框组件暴露方法接口
401
- * */
402
- export interface StInputNumberExpose {
403
- /** 聚焦输入框 */
404
- focus: () => void;
405
- /** 失焦输入框 */
406
- blur: () => void;
407
- /** 选择输入框内容 */
408
- select: () => void;
409
- /** 增加数值 */
410
- increase: () => void;
411
- /** 减少数值 */
412
- decrease: () => void;
413
- }
414
-
415
- export {};
1
+ import type { ClassValue, Ref, StyleValue } from 'vue';
2
+ import type { StButtonEmits, StButtonProps, StButtonSlots } from '../st-button/types.d.ts';
3
+
4
+ /**
5
+ * 输入框类型
6
+ * */
7
+ export type StInputType = 'text' | 'password' | 'email' | 'number' | 'tel' | 'url';
8
+
9
+ // ============================================================
10
+ // StInput 组件类型
11
+ // ============================================================
12
+
13
+ /**
14
+ * 输入框组件属性接口
15
+ * */
16
+ export interface StInputProps {
17
+ /** 输入框类型 */
18
+ type?: StInputType;
19
+ /** 占位符文本 */
20
+ placeholder?: string;
21
+ /** 是否禁用 */
22
+ disabled?: boolean;
23
+ /** 是否可清空 */
24
+ clearable?: boolean;
25
+ /** 是否只读 */
26
+ readonly?: boolean;
27
+ /** 是否显示密码切换按钮 */
28
+ showPassword?: boolean;
29
+ /** 最大输入长度 */
30
+ maxlength?: number;
31
+ /** 最小输入长度 */
32
+ minlength?: number;
33
+ /** 是否显示字数统计 */
34
+ showWordLimit?: boolean;
35
+ /** 前缀图标名称 */
36
+ prefixIcon?: string;
37
+ /** 后缀图标名称 */
38
+ suffixIcon?: string;
39
+ /** 输入框自定义类名 */
40
+ inputClass?: ClassValue;
41
+ /** 输入框自定义样式 */
42
+ inputStyle?: StyleValue;
43
+ /** 前缀自定义类名 */
44
+ prefixClass?: ClassValue;
45
+ /** 前缀自定义样式 */
46
+ prefixStyle?: StyleValue;
47
+ /** 后缀自定义类名 */
48
+ suffixClass?: ClassValue;
49
+ /** 后缀自定义样式 */
50
+ suffixStyle?: StyleValue;
51
+ /** 清除图标自定义类名 */
52
+ clearIconClass?: ClassValue;
53
+ /** 清除图标自定义样式 */
54
+ clearIconStyle?: StyleValue;
55
+ /** 密码切换图标自定义类名 */
56
+ passwordToggleClass?: ClassValue;
57
+ /** 密码切换图标自定义样式 */
58
+ passwordToggleStyle?: StyleValue;
59
+ }
60
+
61
+ /**
62
+ * 输入框组件事件接口
63
+ * */
64
+ export interface StInputEmits {
65
+ /** 输入事件 */
66
+ input: [event: Event];
67
+ /** 值改变事件 */
68
+ change: [event: Event];
69
+ /** 获得焦点事件 */
70
+ focus: [event: FocusEvent];
71
+ /** 失去焦点事件 */
72
+ blur: [event: FocusEvent];
73
+ /** 清空事件 */
74
+ clear: [];
75
+ }
76
+
77
+ /**
78
+ * 输入框组件插槽接口
79
+ * */
80
+ export interface StInputSlots {
81
+ /** 前缀内容插槽 */
82
+ prefix?: () => unknown;
83
+ /** 后缀内容插槽 */
84
+ suffix?: () => unknown;
85
+ /** 前缀图标插槽 */
86
+ 'prefix-icon'?: () => unknown;
87
+ /** 后缀图标插槽 */
88
+ 'suffix-icon'?: () => unknown;
89
+ }
90
+
91
+ // ============================================================
92
+ // StInputGroup 组件类型
93
+ // ============================================================
94
+
95
+ /**
96
+ * InputGroup 容器组件属性接口
97
+ * */
98
+ export interface StInputGroupProps {
99
+ /** 是否禁用 */
100
+ disabled?: boolean;
101
+ }
102
+
103
+ /**
104
+ * InputGroup 组件事件接口
105
+ * */
106
+ export interface StInputGroupEmits {}
107
+
108
+ /**
109
+ * InputGroup 组件插槽接口
110
+ * */
111
+ export interface StInputGroupSlots {
112
+ /** 默认插槽 */
113
+ default?: () => unknown;
114
+ }
115
+
116
+ // ============================================================
117
+ // StInputGroupAddon 组件类型
118
+ // ============================================================
119
+
120
+ /**
121
+ * InputGroupAddon 对齐类型
122
+ * */
123
+ export type StInputGroupAddonAlign = 'inline-start' | 'inline-end' | 'block-start' | 'block-end';
124
+
125
+ /**
126
+ * InputGroupAddon 附加组件属性接口
127
+ * */
128
+ export interface StInputGroupAddonProps {
129
+ /** 对齐方式 */
130
+ align?: StInputGroupAddonAlign;
131
+ }
132
+
133
+ /**
134
+ * InputGroupAddon 组件插槽接口
135
+ * */
136
+ export interface StInputGroupAddonSlots {
137
+ /** 默认插槽 */
138
+ default?: () => unknown;
139
+ }
140
+
141
+ /**
142
+ * InputGroupAddon 事件类型
143
+ * */
144
+ export interface StInputGroupAddonEmits {
145
+ /** 点击事件 */
146
+ click: [event: MouseEvent];
147
+ }
148
+
149
+ // ============================================================
150
+ // StInputGroupInput 组件类型
151
+ // ============================================================
152
+
153
+ /**
154
+ * InputGroupInput 输入组件属性接口
155
+ * */
156
+ export interface StInputGroupInputProps {
157
+ /** 输入框类型 */
158
+ type?: StInputType;
159
+ /** 占位符文本 */
160
+ placeholder?: string;
161
+ /** 是否禁用 */
162
+ disabled?: boolean;
163
+ /** 是否只读 */
164
+ readonly?: boolean;
165
+ /** 最大输入长度 */
166
+ maxlength?: number;
167
+ /** 最小输入长度 */
168
+ minlength?: number;
169
+ }
170
+
171
+ /**
172
+ * InputGroupInput 输入组件事件接口
173
+ * */
174
+ export interface StInputGroupInputEmits {
175
+ /** 输入事件 */
176
+ input: [event: Event];
177
+ /** 值改变事件 */
178
+ change: [event: Event];
179
+ /** 获得焦点事件 */
180
+ focus: [event: FocusEvent];
181
+ /** 失去焦点事件 */
182
+ blur: [event: FocusEvent];
183
+ }
184
+
185
+ /**
186
+ * InputGroupInput 组件暴露接口
187
+ * */
188
+ export interface StInputGroupInputExpose {
189
+ /** 聚焦输入框 */
190
+ focus: () => void;
191
+ /** 失焦输入框 */
192
+ blur: () => void;
193
+ /** 选择输入框内容 */
194
+ select: () => void;
195
+ /** 输入框 DOM 引用 */
196
+ inputRef: Ref<HTMLInputElement | null>;
197
+ }
198
+
199
+ // ============================================================
200
+ // StInputGroupButton 组件类型(派生自 StButton)
201
+ // ============================================================
202
+
203
+ /** InputGroupButton 组件属性接口 */
204
+ export type StInputGroupButtonProps = StButtonProps;
205
+
206
+ /** InputGroupButton 组件事件接口 */
207
+ export type StInputGroupButtonEmits = StButtonEmits;
208
+
209
+ /** InputGroupButton 组件插槽接口 */
210
+ export type StInputGroupButtonSlots = StButtonSlots;
211
+
212
+ // ============================================================
213
+ // StInputGroupText 组件类型(派生自 InputGroupAddon)
214
+ // ============================================================
215
+
216
+ /** InputGroupText 组件属性接口 */
217
+ export type StInputGroupTextProps = StInputGroupAddonProps;
218
+
219
+ /** InputGroupText 组件事件接口 */
220
+ export type StInputGroupTextEmits = StInputGroupAddonEmits;
221
+
222
+ /** InputGroupText 组件插槽接口 */
223
+ export type StInputGroupTextSlots = StInputGroupAddonSlots;
224
+
225
+ // ============================================================
226
+ // StInputGroupTextarea 组件类型
227
+ // ============================================================
228
+
229
+ /**
230
+ * InputGroupTextarea 文本域组件属性接口
231
+ * */
232
+ export interface StInputGroupTextareaProps {
233
+ /** 占位符文本 */
234
+ placeholder?: string;
235
+ /** 是否禁用 */
236
+ disabled?: boolean;
237
+ /** 是否只读 */
238
+ readonly?: boolean;
239
+ /** 最大输入长度 */
240
+ maxlength?: number;
241
+ /** 最小输入长度 */
242
+ minlength?: number;
243
+ /** 可见行数 */
244
+ rows?: number;
245
+ /** 可见列数 */
246
+ cols?: number;
247
+ }
248
+
249
+ /**
250
+ * InputGroupTextarea 文本域组件事件接口
251
+ * */
252
+ export interface StInputGroupTextareaEmits {
253
+ /** 输入事件 */
254
+ input: [event: Event];
255
+ /** 值改变事件 */
256
+ change: [event: Event];
257
+ /** 获得焦点事件 */
258
+ focus: [event: FocusEvent];
259
+ /** 失去焦点事件 */
260
+ blur: [event: FocusEvent];
261
+ }
262
+
263
+ /**
264
+ * InputGroupTextarea 文本域组件暴露接口
265
+ * */
266
+ export interface StInputGroupTextareaExpose {
267
+ /** 聚焦文本域 */
268
+ focus: () => void;
269
+ /** 失焦文本域 */
270
+ blur: () => void;
271
+ /** 选择文本域内容 */
272
+ select: () => void;
273
+ /** 文本域 DOM 引用 */
274
+ textareaRef: Ref<HTMLTextAreaElement | null>;
275
+ }
276
+
277
+ // ============================================================
278
+ // StTextarea 组件类型
279
+ // ============================================================
280
+
281
+ /**
282
+ * 文本域组件属性接口
283
+ * */
284
+ export interface StTextareaProps {
285
+ /** 占位符文本 */
286
+ placeholder?: string;
287
+ /** 是否禁用 */
288
+ disabled?: boolean;
289
+ /** 是否可清空 */
290
+ clearable?: boolean;
291
+ /** 是否只读 */
292
+ readonly?: boolean;
293
+ /** 最大输入长度 */
294
+ maxlength?: number;
295
+ /** 最小输入长度 */
296
+ minlength?: number;
297
+ /** 可见行数 */
298
+ rows?: number;
299
+ /** 可见列数 */
300
+ cols?: number;
301
+ /** 是否显示字数统计 */
302
+ showWordLimit?: boolean;
303
+ /** 前缀图标名称 */
304
+ prefixIcon?: string;
305
+ /** 后缀图标名称 */
306
+ suffixIcon?: string;
307
+ /** 输入框自定义类名 */
308
+ inputClass?: ClassValue;
309
+ /** 输入框自定义样式 */
310
+ inputStyle?: StyleValue;
311
+ /** 前缀自定义类名 */
312
+ prefixClass?: ClassValue;
313
+ /** 前缀自定义样式 */
314
+ prefixStyle?: StyleValue;
315
+ /** 后缀自定义类名 */
316
+ suffixClass?: ClassValue;
317
+ /** 后缀自定义样式 */
318
+ suffixStyle?: StyleValue;
319
+ /** 清除图标自定义类名 */
320
+ clearIconClass?: ClassValue;
321
+ /** 清除图标自定义样式 */
322
+ clearIconStyle?: StyleValue;
323
+ }
324
+
325
+ /**
326
+ * 文本域组件事件接口
327
+ * */
328
+ export interface StTextareaEmits {
329
+ /** 输入事件 */
330
+ input: [event: Event];
331
+ /** 值改变事件 */
332
+ change: [event: Event];
333
+ /** 获得焦点事件 */
334
+ focus: [event: FocusEvent];
335
+ /** 失去焦点事件 */
336
+ blur: [event: FocusEvent];
337
+ /** 清空事件 */
338
+ clear: [];
339
+ }
340
+
341
+ /**
342
+ * 文本域组件插槽接口
343
+ * */
344
+ export interface StTextareaSlots {
345
+ /** 前缀内容插槽 */
346
+ prefix?: () => unknown;
347
+ /** 后缀内容插槽 */
348
+ suffix?: () => unknown;
349
+ }
350
+
351
+ // ============================================================
352
+ // StInputNumber 组件类型
353
+ // ============================================================
354
+
355
+ /**
356
+ * 数字输入框组件属性接口
357
+ * */
358
+ export interface StInputNumberProps {
359
+ /** 是否禁用 */
360
+ disabled?: boolean;
361
+ /** 最小值 */
362
+ min?: number;
363
+ /** 最大值 */
364
+ max?: number;
365
+ /** 步长 */
366
+ step?: number;
367
+ /** 数值精度(小数位数) */
368
+ precision?: number;
369
+ /** 是否显示增减按钮 */
370
+ controls?: boolean;
371
+ /** 输入框自定义类名 */
372
+ inputClass?: ClassValue;
373
+ /** 输入框自定义样式 */
374
+ inputStyle?: StyleValue;
375
+ /** 增加按钮自定义类名 */
376
+ increaseClass?: ClassValue;
377
+ /** 减少按钮自定义类名 */
378
+ decreaseClass?: ClassValue;
379
+ }
380
+
381
+ /**
382
+ * 数字输入框组件事件接口
383
+ * */
384
+ export interface StInputNumberEmits {
385
+ /** 输入事件 */
386
+ input: [value: number | undefined];
387
+ /** 值改变事件 */
388
+ change: [value: number | undefined];
389
+ /** 获得焦点事件 */
390
+ focus: [event: FocusEvent];
391
+ /** 失去焦点事件 */
392
+ blur: [event: FocusEvent];
393
+ /** 增加按钮点击事件 */
394
+ increase: [];
395
+ /** 减少按钮点击事件 */
396
+ decrease: [];
397
+ }
398
+
399
+ /**
400
+ * 数字输入框组件暴露方法接口
401
+ * */
402
+ export interface StInputNumberExpose {
403
+ /** 聚焦输入框 */
404
+ focus: () => void;
405
+ /** 失焦输入框 */
406
+ blur: () => void;
407
+ /** 选择输入框内容 */
408
+ select: () => void;
409
+ /** 增加数值 */
410
+ increase: () => void;
411
+ /** 减少数值 */
412
+ decrease: () => void;
413
+ }
414
+
415
+ export {};