@qin-ui/vant-pro 1.0.5 → 1.1.0

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 (87) hide show
  1. package/AI-CONTEXT.md +48 -33
  2. package/LICENSE +9 -0
  3. package/README.md +1 -1
  4. package/api.json +27 -22
  5. package/es/component-provider/{index-DC_k4_R3.js → index-cldbPMDQ.js} +5 -4
  6. package/es/component-provider/index-cldbPMDQ.js.map +1 -0
  7. package/es/component-provider/index.js +2 -1
  8. package/es/component-provider/index.js.map +1 -0
  9. package/es/components/component-provider/components/index.vue.d.ts +27 -0
  10. package/es/components/component-provider/components/index.vue.d.ts.map +1 -0
  11. package/es/components/component-provider/constants/index.d.ts +16 -0
  12. package/es/components/component-provider/constants/index.d.ts.map +1 -0
  13. package/es/components/component-provider/index.d.ts +4 -0
  14. package/es/components/component-provider/index.d.ts.map +1 -0
  15. package/es/components/component-provider/types/index.d.ts +16 -0
  16. package/es/components/component-provider/types/index.d.ts.map +1 -0
  17. package/es/components/form/components/BaseField/index.vue.d.ts +1323 -0
  18. package/es/components/form/components/BaseField/index.vue.d.ts.map +1 -0
  19. package/es/components/form/components/BaseField/utils/index.d.ts +3 -0
  20. package/es/components/form/components/BaseField/utils/index.d.ts.map +1 -0
  21. package/es/components/form/components/BaseFormItem/index.vue.d.ts +7 -0
  22. package/es/components/form/components/BaseFormItem/index.vue.d.ts.map +1 -0
  23. package/es/components/form/components/ContainerFragment/index.vue.d.ts +23 -0
  24. package/es/components/form/components/ContainerFragment/index.vue.d.ts.map +1 -0
  25. package/es/components/form/components/GroupedFieldAttrs/index.vue.d.ts +24 -0
  26. package/es/components/form/components/GroupedFieldAttrs/index.vue.d.ts.map +1 -0
  27. package/es/components/form/components/PathProvider/index.vue.d.ts +23 -0
  28. package/es/components/form/components/PathProvider/index.vue.d.ts.map +1 -0
  29. package/es/components/form/components/ProForm/index.vue.d.ts +34 -0
  30. package/es/components/form/components/ProForm/index.vue.d.ts.map +1 -0
  31. package/es/components/form/components/SlotComponent/index.vue.d.ts +7 -0
  32. package/es/components/form/components/SlotComponent/index.vue.d.ts.map +1 -0
  33. package/es/components/form/components/index.d.ts +12 -0
  34. package/es/components/form/components/index.d.ts.map +1 -0
  35. package/es/components/form/constants/index.d.ts +62 -0
  36. package/es/components/form/constants/index.d.ts.map +1 -0
  37. package/es/components/form/hooks/index.d.ts +6 -0
  38. package/es/components/form/hooks/index.d.ts.map +1 -0
  39. package/es/components/form/hooks/useFields.d.ts +57 -0
  40. package/es/components/form/hooks/useFields.d.ts.map +1 -0
  41. package/es/components/form/hooks/useForm.d.ts +101 -0
  42. package/es/components/form/hooks/useForm.d.ts.map +1 -0
  43. package/es/components/form/hooks/useFormPopup.d.ts +57 -0
  44. package/es/components/form/hooks/useFormPopup.d.ts.map +1 -0
  45. package/es/components/form/hooks/useFormRef.d.ts +30 -0
  46. package/es/components/form/hooks/useFormRef.d.ts.map +1 -0
  47. package/es/components/form/index.d.ts +7 -0
  48. package/es/components/form/index.d.ts.map +1 -0
  49. package/es/components/form/types/index.d.ts +152 -0
  50. package/es/components/form/types/index.d.ts.map +1 -0
  51. package/es/form/index.js +11 -7
  52. package/es/form/index.js.map +1 -0
  53. package/es/index.d.ts +58 -954
  54. package/es/index.d.ts.map +1 -0
  55. package/es/index.js +10 -21
  56. package/es/index.js.map +1 -0
  57. package/es/shared/core/index.d.ts +6 -0
  58. package/es/shared/core/index.d.ts.map +1 -0
  59. package/es/shared/ui/index.d.ts +2 -0
  60. package/es/shared/ui/index.d.ts.map +1 -0
  61. package/package.json +11 -12
  62. package/src/components/component-provider/components/index.vue +67 -0
  63. package/src/components/component-provider/constants/index.ts +110 -0
  64. package/src/components/component-provider/index.ts +6 -0
  65. package/src/components/component-provider/types/index.ts +31 -0
  66. package/src/components/form/components/BaseField/index.vue +340 -0
  67. package/src/components/form/components/BaseField/utils/index.ts +14 -0
  68. package/src/components/form/components/BaseFormItem/index.vue +77 -0
  69. package/src/components/form/components/ContainerFragment/index.vue +24 -0
  70. package/src/components/form/components/GroupedFieldAttrs/index.vue +51 -0
  71. package/src/components/form/components/PathProvider/index.vue +18 -0
  72. package/src/components/form/components/ProForm/index.vue +114 -0
  73. package/src/components/form/components/SlotComponent/index.vue +26 -0
  74. package/src/components/form/components/index.ts +15 -0
  75. package/src/components/form/constants/index.ts +109 -0
  76. package/src/components/form/hooks/index.ts +6 -0
  77. package/src/components/form/hooks/useFields.ts +67 -0
  78. package/src/components/form/hooks/useForm.ts +126 -0
  79. package/src/components/form/hooks/useFormPopup.ts +111 -0
  80. package/src/components/form/hooks/useFormRef.ts +35 -0
  81. package/src/components/form/index.ts +27 -0
  82. package/src/components/form/types/index.ts +220 -0
  83. package/src/index.ts +62 -0
  84. package/src/shared/core/index.ts +37 -0
  85. package/src/shared/ui/index.ts +26 -0
  86. package/es/core/index-B5vvm4Fj.js +0 -236
  87. package/es/vendor/utils/lodash-es-DN4QDiDm.js +0 -1079
@@ -0,0 +1,1323 @@
1
+ import { Component } from 'vue';
2
+ type Props = {
3
+ component?: string | Component;
4
+ path?: string;
5
+ };
6
+ declare const _default: import('vue').DefineComponent<Props, {
7
+ getComponentRef: () => any;
8
+ getComponentComputedProps: () => any;
9
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
10
+ fieldRef: ({
11
+ $: import('vue').ComponentInternalInstance;
12
+ $data: {};
13
+ $props: Partial<{
14
+ type: import('vant').FieldType;
15
+ tag: keyof HTMLElementTagNameMap;
16
+ center: boolean;
17
+ autofocus: boolean;
18
+ disabled: boolean;
19
+ border: boolean;
20
+ isLink: boolean;
21
+ required: boolean | "auto";
22
+ clickable: boolean | null;
23
+ clearable: boolean;
24
+ clearIcon: string;
25
+ modelValue: string | number;
26
+ clearTrigger: import('vant').FieldClearTrigger;
27
+ formatTrigger: import('vant').FieldFormatTrigger;
28
+ spellcheck: boolean;
29
+ error: boolean;
30
+ readonly: boolean;
31
+ showWordLimit: boolean;
32
+ colon: boolean;
33
+ }> & Omit<{
34
+ readonly tag: keyof HTMLElementTagNameMap;
35
+ readonly center: boolean;
36
+ readonly isLink: boolean;
37
+ readonly border: boolean;
38
+ readonly required: boolean | "auto";
39
+ readonly clickable: boolean | null;
40
+ readonly autofocus: boolean;
41
+ readonly clearable: boolean;
42
+ readonly clearIcon: string;
43
+ readonly modelValue: string | number;
44
+ readonly clearTrigger: import('vant').FieldClearTrigger;
45
+ readonly formatTrigger: import('vant').FieldFormatTrigger;
46
+ readonly spellcheck: boolean;
47
+ readonly error: boolean;
48
+ readonly disabled: boolean;
49
+ readonly readonly: boolean;
50
+ readonly type: import('vant').FieldType;
51
+ readonly showWordLimit: boolean;
52
+ readonly colon: boolean;
53
+ readonly icon?: string | undefined;
54
+ readonly size?: import('vant').CellSize | undefined;
55
+ readonly title?: string | number | undefined;
56
+ readonly value?: string | number | undefined;
57
+ readonly label?: string | number | undefined;
58
+ readonly iconPrefix?: string | undefined;
59
+ readonly valueClass?: unknown;
60
+ readonly labelClass?: unknown;
61
+ readonly titleClass?: unknown;
62
+ readonly titleStyle?: string | import('vue').CSSProperties | undefined;
63
+ readonly arrowDirection?: import('vant').CellArrowDirection | undefined;
64
+ readonly id?: string | undefined;
65
+ readonly name?: string | undefined;
66
+ readonly leftIcon?: string | undefined;
67
+ readonly rightIcon?: string | undefined;
68
+ readonly maxlength?: string | number | undefined;
69
+ readonly max?: number | undefined;
70
+ readonly min?: number | undefined;
71
+ readonly formatter?: ((value: string) => string) | undefined;
72
+ readonly inputAlign?: import('vant').FieldTextAlign | undefined;
73
+ readonly placeholder?: string | undefined;
74
+ readonly autocomplete?: string | undefined;
75
+ readonly autocapitalize?: string | undefined;
76
+ readonly autocorrect?: string | undefined;
77
+ readonly errorMessage?: string | undefined;
78
+ readonly enterkeyhint?: import('vant').FieldEnterKeyHint | undefined;
79
+ readonly inputmode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
80
+ readonly rows?: string | number | undefined;
81
+ readonly rules?: import('vant').FieldRule[] | undefined;
82
+ readonly autosize?: boolean | import('vant').FieldAutosizeConfig | undefined;
83
+ readonly labelWidth?: string | number | undefined;
84
+ readonly labelAlign?: import('vant').FieldTextAlign | undefined;
85
+ readonly errorMessageAlign?: import('vant').FieldTextAlign | undefined;
86
+ readonly onFocus?: ((
87
+ /**
88
+ * @component BaseField
89
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
90
+ *
91
+ * ## 核心职责
92
+ *
93
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
94
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
95
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
96
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
97
+ *
98
+ * ## 组件解析优先级
99
+ *
100
+ * ```
101
+ * teleport 组件(ProForm 插槽注入)
102
+ * ↓ 未匹配
103
+ * 自定义组件(ProComponentProvider 的 componentMap)
104
+ * ↓ 未匹配
105
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
106
+ * ↓ 未匹配
107
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
108
+ * ```
109
+ *
110
+ * @param {string | Component} [component] - 组件名或组件对象
111
+ * @param {string} [path] - 字段路径,用于绑定表单数据
112
+ *
113
+ * @slot default - 默认插槽(透传给组件)
114
+ */
115
+ ...args: any[]) => any) | undefined | undefined;
116
+ readonly onBlur?: ((
117
+ /**
118
+ * @component BaseField
119
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
120
+ *
121
+ * ## 核心职责
122
+ *
123
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
124
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
125
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
126
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
127
+ *
128
+ * ## 组件解析优先级
129
+ *
130
+ * ```
131
+ * teleport 组件(ProForm 插槽注入)
132
+ * ↓ 未匹配
133
+ * 自定义组件(ProComponentProvider 的 componentMap)
134
+ * ↓ 未匹配
135
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
136
+ * ↓ 未匹配
137
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
138
+ * ```
139
+ *
140
+ * @param {string | Component} [component] - 组件名或组件对象
141
+ * @param {string} [path] - 字段路径,用于绑定表单数据
142
+ *
143
+ * @slot default - 默认插槽(透传给组件)
144
+ */
145
+ ...args: any[]) => any) | undefined | undefined;
146
+ readonly onKeypress?: ((
147
+ /**
148
+ * @component BaseField
149
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
150
+ *
151
+ * ## 核心职责
152
+ *
153
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
154
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
155
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
156
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
157
+ *
158
+ * ## 组件解析优先级
159
+ *
160
+ * ```
161
+ * teleport 组件(ProForm 插槽注入)
162
+ * ↓ 未匹配
163
+ * 自定义组件(ProComponentProvider 的 componentMap)
164
+ * ↓ 未匹配
165
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
166
+ * ↓ 未匹配
167
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
168
+ * ```
169
+ *
170
+ * @param {string | Component} [component] - 组件名或组件对象
171
+ * @param {string} [path] - 字段路径,用于绑定表单数据
172
+ *
173
+ * @slot default - 默认插槽(透传给组件)
174
+ */
175
+ ...args: any[]) => any) | undefined | undefined;
176
+ readonly onClear?: ((
177
+ /**
178
+ * @component BaseField
179
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
180
+ *
181
+ * ## 核心职责
182
+ *
183
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
184
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
185
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
186
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
187
+ *
188
+ * ## 组件解析优先级
189
+ *
190
+ * ```
191
+ * teleport 组件(ProForm 插槽注入)
192
+ * ↓ 未匹配
193
+ * 自定义组件(ProComponentProvider 的 componentMap)
194
+ * ↓ 未匹配
195
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
196
+ * ↓ 未匹配
197
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
198
+ * ```
199
+ *
200
+ * @param {string | Component} [component] - 组件名或组件对象
201
+ * @param {string} [path] - 字段路径,用于绑定表单数据
202
+ *
203
+ * @slot default - 默认插槽(透传给组件)
204
+ */
205
+ ...args: any[]) => any) | undefined | undefined;
206
+ readonly onClickInput?: ((
207
+ /**
208
+ * @component BaseField
209
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
210
+ *
211
+ * ## 核心职责
212
+ *
213
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
214
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
215
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
216
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
217
+ *
218
+ * ## 组件解析优先级
219
+ *
220
+ * ```
221
+ * teleport 组件(ProForm 插槽注入)
222
+ * ↓ 未匹配
223
+ * 自定义组件(ProComponentProvider 的 componentMap)
224
+ * ↓ 未匹配
225
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
226
+ * ↓ 未匹配
227
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
228
+ * ```
229
+ *
230
+ * @param {string | Component} [component] - 组件名或组件对象
231
+ * @param {string} [path] - 字段路径,用于绑定表单数据
232
+ *
233
+ * @slot default - 默认插槽(透传给组件)
234
+ */
235
+ ...args: any[]) => any) | undefined | undefined;
236
+ readonly onEndValidate?: ((
237
+ /**
238
+ * @component BaseField
239
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
240
+ *
241
+ * ## 核心职责
242
+ *
243
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
244
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
245
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
246
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
247
+ *
248
+ * ## 组件解析优先级
249
+ *
250
+ * ```
251
+ * teleport 组件(ProForm 插槽注入)
252
+ * ↓ 未匹配
253
+ * 自定义组件(ProComponentProvider 的 componentMap)
254
+ * ↓ 未匹配
255
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
256
+ * ↓ 未匹配
257
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
258
+ * ```
259
+ *
260
+ * @param {string | Component} [component] - 组件名或组件对象
261
+ * @param {string} [path] - 字段路径,用于绑定表单数据
262
+ *
263
+ * @slot default - 默认插槽(透传给组件)
264
+ */
265
+ ...args: any[]) => any) | undefined | undefined;
266
+ readonly onStartValidate?: ((
267
+ /**
268
+ * @component BaseField
269
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
270
+ *
271
+ * ## 核心职责
272
+ *
273
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
274
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
275
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
276
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
277
+ *
278
+ * ## 组件解析优先级
279
+ *
280
+ * ```
281
+ * teleport 组件(ProForm 插槽注入)
282
+ * ↓ 未匹配
283
+ * 自定义组件(ProComponentProvider 的 componentMap)
284
+ * ↓ 未匹配
285
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
286
+ * ↓ 未匹配
287
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
288
+ * ```
289
+ *
290
+ * @param {string | Component} [component] - 组件名或组件对象
291
+ * @param {string} [path] - 字段路径,用于绑定表单数据
292
+ *
293
+ * @slot default - 默认插槽(透传给组件)
294
+ */
295
+ ...args: any[]) => any) | undefined | undefined;
296
+ readonly onClickLeftIcon?: ((
297
+ /**
298
+ * @component BaseField
299
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
300
+ *
301
+ * ## 核心职责
302
+ *
303
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
304
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
305
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
306
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
307
+ *
308
+ * ## 组件解析优先级
309
+ *
310
+ * ```
311
+ * teleport 组件(ProForm 插槽注入)
312
+ * ↓ 未匹配
313
+ * 自定义组件(ProComponentProvider 的 componentMap)
314
+ * ↓ 未匹配
315
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
316
+ * ↓ 未匹配
317
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
318
+ * ```
319
+ *
320
+ * @param {string | Component} [component] - 组件名或组件对象
321
+ * @param {string} [path] - 字段路径,用于绑定表单数据
322
+ *
323
+ * @slot default - 默认插槽(透传给组件)
324
+ */
325
+ ...args: any[]) => any) | undefined | undefined;
326
+ readonly onClickRightIcon?: ((
327
+ /**
328
+ * @component BaseField
329
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
330
+ *
331
+ * ## 核心职责
332
+ *
333
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
334
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
335
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
336
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
337
+ *
338
+ * ## 组件解析优先级
339
+ *
340
+ * ```
341
+ * teleport 组件(ProForm 插槽注入)
342
+ * ↓ 未匹配
343
+ * 自定义组件(ProComponentProvider 的 componentMap)
344
+ * ↓ 未匹配
345
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
346
+ * ↓ 未匹配
347
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
348
+ * ```
349
+ *
350
+ * @param {string | Component} [component] - 组件名或组件对象
351
+ * @param {string} [path] - 字段路径,用于绑定表单数据
352
+ *
353
+ * @slot default - 默认插槽(透传给组件)
354
+ */
355
+ ...args: any[]) => any) | undefined | undefined;
356
+ readonly "onUpdate:modelValue"?: ((
357
+ /**
358
+ * @component BaseField
359
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
360
+ *
361
+ * ## 核心职责
362
+ *
363
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
364
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
365
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
366
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
367
+ *
368
+ * ## 组件解析优先级
369
+ *
370
+ * ```
371
+ * teleport 组件(ProForm 插槽注入)
372
+ * ↓ 未匹配
373
+ * 自定义组件(ProComponentProvider 的 componentMap)
374
+ * ↓ 未匹配
375
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
376
+ * ↓ 未匹配
377
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
378
+ * ```
379
+ *
380
+ * @param {string | Component} [component] - 组件名或组件对象
381
+ * @param {string} [path] - 字段路径,用于绑定表单数据
382
+ *
383
+ * @slot default - 默认插槽(透传给组件)
384
+ */
385
+ ...args: any[]) => any) | undefined | undefined;
386
+ } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "tag" | "center" | "isLink" | "border" | "required" | "clickable" | "autofocus" | "clearable" | "clearIcon" | "modelValue" | "clearTrigger" | "formatTrigger" | "spellcheck" | "error" | "disabled" | "readonly" | "type" | "showWordLimit" | "colon">;
387
+ $attrs: import('vue').Attrs;
388
+ $refs: {
389
+ [x: string]: unknown;
390
+ };
391
+ $slots: Readonly<{
392
+ [name: string]: import('vue').Slot<any> | undefined;
393
+ }>;
394
+ $root: import('vue').ComponentPublicInstance | null;
395
+ $parent: import('vue').ComponentPublicInstance | null;
396
+ $host: Element | null;
397
+ $emit: (event: "focus" | "clear" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue", ...args: any[]) => void;
398
+ $el: any;
399
+ $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
400
+ tag: {
401
+ type: import('vue').PropType<keyof HTMLElementTagNameMap>;
402
+ default: keyof HTMLElementTagNameMap;
403
+ };
404
+ icon: StringConstructor;
405
+ size: import('vue').PropType<import('vant').CellSize>;
406
+ title: (NumberConstructor | StringConstructor)[];
407
+ value: (NumberConstructor | StringConstructor)[];
408
+ label: (NumberConstructor | StringConstructor)[];
409
+ center: BooleanConstructor;
410
+ isLink: BooleanConstructor;
411
+ border: {
412
+ type: BooleanConstructor;
413
+ default: true;
414
+ };
415
+ iconPrefix: StringConstructor;
416
+ valueClass: import('vue').PropType<unknown>;
417
+ labelClass: import('vue').PropType<unknown>;
418
+ titleClass: import('vue').PropType<unknown>;
419
+ titleStyle: import('vue').PropType<string | import('vue').CSSProperties>;
420
+ arrowDirection: import('vue').PropType<import('vant').CellArrowDirection>;
421
+ required: {
422
+ type: import('vue').PropType<boolean | "auto">;
423
+ default: null;
424
+ };
425
+ clickable: {
426
+ type: import('vue').PropType<boolean | null>;
427
+ default: null;
428
+ };
429
+ } & {
430
+ id: StringConstructor;
431
+ name: StringConstructor;
432
+ leftIcon: StringConstructor;
433
+ rightIcon: StringConstructor;
434
+ autofocus: BooleanConstructor;
435
+ clearable: BooleanConstructor;
436
+ maxlength: (NumberConstructor | StringConstructor)[];
437
+ max: NumberConstructor;
438
+ min: NumberConstructor;
439
+ formatter: import('vue').PropType<(value: string) => string>;
440
+ clearIcon: {
441
+ type: import('vue').PropType<string>;
442
+ default: string;
443
+ };
444
+ modelValue: {
445
+ type: (NumberConstructor | StringConstructor)[];
446
+ default: string;
447
+ };
448
+ inputAlign: import('vue').PropType<import('vant').FieldTextAlign>;
449
+ placeholder: StringConstructor;
450
+ autocomplete: StringConstructor;
451
+ autocapitalize: StringConstructor;
452
+ autocorrect: StringConstructor;
453
+ errorMessage: StringConstructor;
454
+ enterkeyhint: import('vue').PropType<import('vant').FieldEnterKeyHint>;
455
+ clearTrigger: {
456
+ type: import('vue').PropType<import('vant').FieldClearTrigger>;
457
+ default: import('vant').FieldClearTrigger;
458
+ };
459
+ formatTrigger: {
460
+ type: import('vue').PropType<import('vant').FieldFormatTrigger>;
461
+ default: import('vant').FieldFormatTrigger;
462
+ };
463
+ spellcheck: {
464
+ type: BooleanConstructor;
465
+ default: null;
466
+ };
467
+ error: {
468
+ type: BooleanConstructor;
469
+ default: null;
470
+ };
471
+ disabled: {
472
+ type: BooleanConstructor;
473
+ default: null;
474
+ };
475
+ readonly: {
476
+ type: BooleanConstructor;
477
+ default: null;
478
+ };
479
+ inputmode: import('vue').PropType<import('vue').HTMLAttributes["inputmode"]>;
480
+ } & {
481
+ rows: (NumberConstructor | StringConstructor)[];
482
+ type: {
483
+ type: import('vue').PropType<import('vant').FieldType>;
484
+ default: import('vant').FieldType;
485
+ };
486
+ rules: import('vue').PropType<import('vant').FieldRule[]>;
487
+ autosize: import('vue').PropType<boolean | import('vant').FieldAutosizeConfig>;
488
+ labelWidth: (NumberConstructor | StringConstructor)[];
489
+ labelClass: import('vue').PropType<unknown>;
490
+ labelAlign: import('vue').PropType<import('vant').FieldTextAlign>;
491
+ showWordLimit: BooleanConstructor;
492
+ errorMessageAlign: import('vue').PropType<import('vant').FieldTextAlign>;
493
+ colon: {
494
+ type: BooleanConstructor;
495
+ default: null;
496
+ };
497
+ }>> & Readonly<{
498
+ onFocus?: ((
499
+ /**
500
+ * @component BaseField
501
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
502
+ *
503
+ * ## 核心职责
504
+ *
505
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
506
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
507
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
508
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
509
+ *
510
+ * ## 组件解析优先级
511
+ *
512
+ * ```
513
+ * teleport 组件(ProForm 插槽注入)
514
+ * ↓ 未匹配
515
+ * 自定义组件(ProComponentProvider 的 componentMap)
516
+ * ↓ 未匹配
517
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
518
+ * ↓ 未匹配
519
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
520
+ * ```
521
+ *
522
+ * @param {string | Component} [component] - 组件名或组件对象
523
+ * @param {string} [path] - 字段路径,用于绑定表单数据
524
+ *
525
+ * @slot default - 默认插槽(透传给组件)
526
+ */
527
+ ...args: any[]) => any) | undefined;
528
+ onBlur?: ((
529
+ /**
530
+ * @component BaseField
531
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
532
+ *
533
+ * ## 核心职责
534
+ *
535
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
536
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
537
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
538
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
539
+ *
540
+ * ## 组件解析优先级
541
+ *
542
+ * ```
543
+ * teleport 组件(ProForm 插槽注入)
544
+ * ↓ 未匹配
545
+ * 自定义组件(ProComponentProvider 的 componentMap)
546
+ * ↓ 未匹配
547
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
548
+ * ↓ 未匹配
549
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
550
+ * ```
551
+ *
552
+ * @param {string | Component} [component] - 组件名或组件对象
553
+ * @param {string} [path] - 字段路径,用于绑定表单数据
554
+ *
555
+ * @slot default - 默认插槽(透传给组件)
556
+ */
557
+ ...args: any[]) => any) | undefined;
558
+ onKeypress?: ((
559
+ /**
560
+ * @component BaseField
561
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
562
+ *
563
+ * ## 核心职责
564
+ *
565
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
566
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
567
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
568
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
569
+ *
570
+ * ## 组件解析优先级
571
+ *
572
+ * ```
573
+ * teleport 组件(ProForm 插槽注入)
574
+ * ↓ 未匹配
575
+ * 自定义组件(ProComponentProvider 的 componentMap)
576
+ * ↓ 未匹配
577
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
578
+ * ↓ 未匹配
579
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
580
+ * ```
581
+ *
582
+ * @param {string | Component} [component] - 组件名或组件对象
583
+ * @param {string} [path] - 字段路径,用于绑定表单数据
584
+ *
585
+ * @slot default - 默认插槽(透传给组件)
586
+ */
587
+ ...args: any[]) => any) | undefined;
588
+ onClear?: ((
589
+ /**
590
+ * @component BaseField
591
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
592
+ *
593
+ * ## 核心职责
594
+ *
595
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
596
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
597
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
598
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
599
+ *
600
+ * ## 组件解析优先级
601
+ *
602
+ * ```
603
+ * teleport 组件(ProForm 插槽注入)
604
+ * ↓ 未匹配
605
+ * 自定义组件(ProComponentProvider 的 componentMap)
606
+ * ↓ 未匹配
607
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
608
+ * ↓ 未匹配
609
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
610
+ * ```
611
+ *
612
+ * @param {string | Component} [component] - 组件名或组件对象
613
+ * @param {string} [path] - 字段路径,用于绑定表单数据
614
+ *
615
+ * @slot default - 默认插槽(透传给组件)
616
+ */
617
+ ...args: any[]) => any) | undefined;
618
+ onClickInput?: ((
619
+ /**
620
+ * @component BaseField
621
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
622
+ *
623
+ * ## 核心职责
624
+ *
625
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
626
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
627
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
628
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
629
+ *
630
+ * ## 组件解析优先级
631
+ *
632
+ * ```
633
+ * teleport 组件(ProForm 插槽注入)
634
+ * ↓ 未匹配
635
+ * 自定义组件(ProComponentProvider 的 componentMap)
636
+ * ↓ 未匹配
637
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
638
+ * ↓ 未匹配
639
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
640
+ * ```
641
+ *
642
+ * @param {string | Component} [component] - 组件名或组件对象
643
+ * @param {string} [path] - 字段路径,用于绑定表单数据
644
+ *
645
+ * @slot default - 默认插槽(透传给组件)
646
+ */
647
+ ...args: any[]) => any) | undefined;
648
+ onEndValidate?: ((
649
+ /**
650
+ * @component BaseField
651
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
652
+ *
653
+ * ## 核心职责
654
+ *
655
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
656
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
657
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
658
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
659
+ *
660
+ * ## 组件解析优先级
661
+ *
662
+ * ```
663
+ * teleport 组件(ProForm 插槽注入)
664
+ * ↓ 未匹配
665
+ * 自定义组件(ProComponentProvider 的 componentMap)
666
+ * ↓ 未匹配
667
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
668
+ * ↓ 未匹配
669
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
670
+ * ```
671
+ *
672
+ * @param {string | Component} [component] - 组件名或组件对象
673
+ * @param {string} [path] - 字段路径,用于绑定表单数据
674
+ *
675
+ * @slot default - 默认插槽(透传给组件)
676
+ */
677
+ ...args: any[]) => any) | undefined;
678
+ onStartValidate?: ((
679
+ /**
680
+ * @component BaseField
681
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
682
+ *
683
+ * ## 核心职责
684
+ *
685
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
686
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
687
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
688
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
689
+ *
690
+ * ## 组件解析优先级
691
+ *
692
+ * ```
693
+ * teleport 组件(ProForm 插槽注入)
694
+ * ↓ 未匹配
695
+ * 自定义组件(ProComponentProvider 的 componentMap)
696
+ * ↓ 未匹配
697
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
698
+ * ↓ 未匹配
699
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
700
+ * ```
701
+ *
702
+ * @param {string | Component} [component] - 组件名或组件对象
703
+ * @param {string} [path] - 字段路径,用于绑定表单数据
704
+ *
705
+ * @slot default - 默认插槽(透传给组件)
706
+ */
707
+ ...args: any[]) => any) | undefined;
708
+ onClickLeftIcon?: ((
709
+ /**
710
+ * @component BaseField
711
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
712
+ *
713
+ * ## 核心职责
714
+ *
715
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
716
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
717
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
718
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
719
+ *
720
+ * ## 组件解析优先级
721
+ *
722
+ * ```
723
+ * teleport 组件(ProForm 插槽注入)
724
+ * ↓ 未匹配
725
+ * 自定义组件(ProComponentProvider 的 componentMap)
726
+ * ↓ 未匹配
727
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
728
+ * ↓ 未匹配
729
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
730
+ * ```
731
+ *
732
+ * @param {string | Component} [component] - 组件名或组件对象
733
+ * @param {string} [path] - 字段路径,用于绑定表单数据
734
+ *
735
+ * @slot default - 默认插槽(透传给组件)
736
+ */
737
+ ...args: any[]) => any) | undefined;
738
+ onClickRightIcon?: ((
739
+ /**
740
+ * @component BaseField
741
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
742
+ *
743
+ * ## 核心职责
744
+ *
745
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
746
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
747
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
748
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
749
+ *
750
+ * ## 组件解析优先级
751
+ *
752
+ * ```
753
+ * teleport 组件(ProForm 插槽注入)
754
+ * ↓ 未匹配
755
+ * 自定义组件(ProComponentProvider 的 componentMap)
756
+ * ↓ 未匹配
757
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
758
+ * ↓ 未匹配
759
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
760
+ * ```
761
+ *
762
+ * @param {string | Component} [component] - 组件名或组件对象
763
+ * @param {string} [path] - 字段路径,用于绑定表单数据
764
+ *
765
+ * @slot default - 默认插槽(透传给组件)
766
+ */
767
+ ...args: any[]) => any) | undefined;
768
+ "onUpdate:modelValue"?: ((
769
+ /**
770
+ * @component BaseField
771
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
772
+ *
773
+ * ## 核心职责
774
+ *
775
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
776
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
777
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
778
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
779
+ *
780
+ * ## 组件解析优先级
781
+ *
782
+ * ```
783
+ * teleport 组件(ProForm 插槽注入)
784
+ * ↓ 未匹配
785
+ * 自定义组件(ProComponentProvider 的 componentMap)
786
+ * ↓ 未匹配
787
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
788
+ * ↓ 未匹配
789
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
790
+ * ```
791
+ *
792
+ * @param {string | Component} [component] - 组件名或组件对象
793
+ * @param {string} [path] - 字段路径,用于绑定表单数据
794
+ *
795
+ * @slot default - 默认插槽(透传给组件)
796
+ */
797
+ ...args: any[]) => any) | undefined;
798
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("focus" | "clear" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue")[], string, {
799
+ type: import('vant').FieldType;
800
+ tag: keyof HTMLElementTagNameMap;
801
+ center: boolean;
802
+ autofocus: boolean;
803
+ disabled: boolean;
804
+ border: boolean;
805
+ isLink: boolean;
806
+ required: boolean | "auto";
807
+ clickable: boolean | null;
808
+ clearable: boolean;
809
+ clearIcon: string;
810
+ modelValue: string | number;
811
+ clearTrigger: import('vant').FieldClearTrigger;
812
+ formatTrigger: import('vant').FieldFormatTrigger;
813
+ spellcheck: boolean;
814
+ error: boolean;
815
+ readonly: boolean;
816
+ showWordLimit: boolean;
817
+ colon: boolean;
818
+ }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
819
+ beforeCreate?: (() => void) | (() => void)[];
820
+ created?: (() => void) | (() => void)[];
821
+ beforeMount?: (() => void) | (() => void)[];
822
+ mounted?: (() => void) | (() => void)[];
823
+ beforeUpdate?: (() => void) | (() => void)[];
824
+ updated?: (() => void) | (() => void)[];
825
+ activated?: (() => void) | (() => void)[];
826
+ deactivated?: (() => void) | (() => void)[];
827
+ beforeDestroy?: (() => void) | (() => void)[];
828
+ beforeUnmount?: (() => void) | (() => void)[];
829
+ destroyed?: (() => void) | (() => void)[];
830
+ unmounted?: (() => void) | (() => void)[];
831
+ renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
832
+ renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
833
+ errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
834
+ };
835
+ $forceUpdate: () => void;
836
+ $nextTick: typeof import('vue').nextTick;
837
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
838
+ } & Readonly<{
839
+ type: import('vant').FieldType;
840
+ tag: keyof HTMLElementTagNameMap;
841
+ center: boolean;
842
+ autofocus: boolean;
843
+ disabled: boolean;
844
+ border: boolean;
845
+ isLink: boolean;
846
+ required: boolean | "auto";
847
+ clickable: boolean | null;
848
+ clearable: boolean;
849
+ clearIcon: string;
850
+ modelValue: string | number;
851
+ clearTrigger: import('vant').FieldClearTrigger;
852
+ formatTrigger: import('vant').FieldFormatTrigger;
853
+ spellcheck: boolean;
854
+ error: boolean;
855
+ readonly: boolean;
856
+ showWordLimit: boolean;
857
+ colon: boolean;
858
+ }> & Omit<Readonly<import('vue').ExtractPropTypes<{
859
+ tag: {
860
+ type: import('vue').PropType<keyof HTMLElementTagNameMap>;
861
+ default: keyof HTMLElementTagNameMap;
862
+ };
863
+ icon: StringConstructor;
864
+ size: import('vue').PropType<import('vant').CellSize>;
865
+ title: (NumberConstructor | StringConstructor)[];
866
+ value: (NumberConstructor | StringConstructor)[];
867
+ label: (NumberConstructor | StringConstructor)[];
868
+ center: BooleanConstructor;
869
+ isLink: BooleanConstructor;
870
+ border: {
871
+ type: BooleanConstructor;
872
+ default: true;
873
+ };
874
+ iconPrefix: StringConstructor;
875
+ valueClass: import('vue').PropType<unknown>;
876
+ labelClass: import('vue').PropType<unknown>;
877
+ titleClass: import('vue').PropType<unknown>;
878
+ titleStyle: import('vue').PropType<string | import('vue').CSSProperties>;
879
+ arrowDirection: import('vue').PropType<import('vant').CellArrowDirection>;
880
+ required: {
881
+ type: import('vue').PropType<boolean | "auto">;
882
+ default: null;
883
+ };
884
+ clickable: {
885
+ type: import('vue').PropType<boolean | null>;
886
+ default: null;
887
+ };
888
+ } & {
889
+ id: StringConstructor;
890
+ name: StringConstructor;
891
+ leftIcon: StringConstructor;
892
+ rightIcon: StringConstructor;
893
+ autofocus: BooleanConstructor;
894
+ clearable: BooleanConstructor;
895
+ maxlength: (NumberConstructor | StringConstructor)[];
896
+ max: NumberConstructor;
897
+ min: NumberConstructor;
898
+ formatter: import('vue').PropType<(value: string) => string>;
899
+ clearIcon: {
900
+ type: import('vue').PropType<string>;
901
+ default: string;
902
+ };
903
+ modelValue: {
904
+ type: (NumberConstructor | StringConstructor)[];
905
+ default: string;
906
+ };
907
+ inputAlign: import('vue').PropType<import('vant').FieldTextAlign>;
908
+ placeholder: StringConstructor;
909
+ autocomplete: StringConstructor;
910
+ autocapitalize: StringConstructor;
911
+ autocorrect: StringConstructor;
912
+ errorMessage: StringConstructor;
913
+ enterkeyhint: import('vue').PropType<import('vant').FieldEnterKeyHint>;
914
+ clearTrigger: {
915
+ type: import('vue').PropType<import('vant').FieldClearTrigger>;
916
+ default: import('vant').FieldClearTrigger;
917
+ };
918
+ formatTrigger: {
919
+ type: import('vue').PropType<import('vant').FieldFormatTrigger>;
920
+ default: import('vant').FieldFormatTrigger;
921
+ };
922
+ spellcheck: {
923
+ type: BooleanConstructor;
924
+ default: null;
925
+ };
926
+ error: {
927
+ type: BooleanConstructor;
928
+ default: null;
929
+ };
930
+ disabled: {
931
+ type: BooleanConstructor;
932
+ default: null;
933
+ };
934
+ readonly: {
935
+ type: BooleanConstructor;
936
+ default: null;
937
+ };
938
+ inputmode: import('vue').PropType<import('vue').HTMLAttributes["inputmode"]>;
939
+ } & {
940
+ rows: (NumberConstructor | StringConstructor)[];
941
+ type: {
942
+ type: import('vue').PropType<import('vant').FieldType>;
943
+ default: import('vant').FieldType;
944
+ };
945
+ rules: import('vue').PropType<import('vant').FieldRule[]>;
946
+ autosize: import('vue').PropType<boolean | import('vant').FieldAutosizeConfig>;
947
+ labelWidth: (NumberConstructor | StringConstructor)[];
948
+ labelClass: import('vue').PropType<unknown>;
949
+ labelAlign: import('vue').PropType<import('vant').FieldTextAlign>;
950
+ showWordLimit: BooleanConstructor;
951
+ errorMessageAlign: import('vue').PropType<import('vant').FieldTextAlign>;
952
+ colon: {
953
+ type: BooleanConstructor;
954
+ default: null;
955
+ };
956
+ }>> & Readonly<{
957
+ onFocus?: ((
958
+ /**
959
+ * @component BaseField
960
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
961
+ *
962
+ * ## 核心职责
963
+ *
964
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
965
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
966
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
967
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
968
+ *
969
+ * ## 组件解析优先级
970
+ *
971
+ * ```
972
+ * teleport 组件(ProForm 插槽注入)
973
+ * ↓ 未匹配
974
+ * 自定义组件(ProComponentProvider 的 componentMap)
975
+ * ↓ 未匹配
976
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
977
+ * ↓ 未匹配
978
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
979
+ * ```
980
+ *
981
+ * @param {string | Component} [component] - 组件名或组件对象
982
+ * @param {string} [path] - 字段路径,用于绑定表单数据
983
+ *
984
+ * @slot default - 默认插槽(透传给组件)
985
+ */
986
+ ...args: any[]) => any) | undefined;
987
+ onBlur?: ((
988
+ /**
989
+ * @component BaseField
990
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
991
+ *
992
+ * ## 核心职责
993
+ *
994
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
995
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
996
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
997
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
998
+ *
999
+ * ## 组件解析优先级
1000
+ *
1001
+ * ```
1002
+ * teleport 组件(ProForm 插槽注入)
1003
+ * ↓ 未匹配
1004
+ * 自定义组件(ProComponentProvider 的 componentMap)
1005
+ * ↓ 未匹配
1006
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1007
+ * ↓ 未匹配
1008
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1009
+ * ```
1010
+ *
1011
+ * @param {string | Component} [component] - 组件名或组件对象
1012
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1013
+ *
1014
+ * @slot default - 默认插槽(透传给组件)
1015
+ */
1016
+ ...args: any[]) => any) | undefined;
1017
+ onKeypress?: ((
1018
+ /**
1019
+ * @component BaseField
1020
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1021
+ *
1022
+ * ## 核心职责
1023
+ *
1024
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1025
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1026
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1027
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1028
+ *
1029
+ * ## 组件解析优先级
1030
+ *
1031
+ * ```
1032
+ * teleport 组件(ProForm 插槽注入)
1033
+ * ↓ 未匹配
1034
+ * 自定义组件(ProComponentProvider 的 componentMap)
1035
+ * ↓ 未匹配
1036
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1037
+ * ↓ 未匹配
1038
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1039
+ * ```
1040
+ *
1041
+ * @param {string | Component} [component] - 组件名或组件对象
1042
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1043
+ *
1044
+ * @slot default - 默认插槽(透传给组件)
1045
+ */
1046
+ ...args: any[]) => any) | undefined;
1047
+ onClear?: ((
1048
+ /**
1049
+ * @component BaseField
1050
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1051
+ *
1052
+ * ## 核心职责
1053
+ *
1054
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1055
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1056
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1057
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1058
+ *
1059
+ * ## 组件解析优先级
1060
+ *
1061
+ * ```
1062
+ * teleport 组件(ProForm 插槽注入)
1063
+ * ↓ 未匹配
1064
+ * 自定义组件(ProComponentProvider 的 componentMap)
1065
+ * ↓ 未匹配
1066
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1067
+ * ↓ 未匹配
1068
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1069
+ * ```
1070
+ *
1071
+ * @param {string | Component} [component] - 组件名或组件对象
1072
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1073
+ *
1074
+ * @slot default - 默认插槽(透传给组件)
1075
+ */
1076
+ ...args: any[]) => any) | undefined;
1077
+ onClickInput?: ((
1078
+ /**
1079
+ * @component BaseField
1080
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1081
+ *
1082
+ * ## 核心职责
1083
+ *
1084
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1085
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1086
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1087
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1088
+ *
1089
+ * ## 组件解析优先级
1090
+ *
1091
+ * ```
1092
+ * teleport 组件(ProForm 插槽注入)
1093
+ * ↓ 未匹配
1094
+ * 自定义组件(ProComponentProvider 的 componentMap)
1095
+ * ↓ 未匹配
1096
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1097
+ * ↓ 未匹配
1098
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1099
+ * ```
1100
+ *
1101
+ * @param {string | Component} [component] - 组件名或组件对象
1102
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1103
+ *
1104
+ * @slot default - 默认插槽(透传给组件)
1105
+ */
1106
+ ...args: any[]) => any) | undefined;
1107
+ onEndValidate?: ((
1108
+ /**
1109
+ * @component BaseField
1110
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1111
+ *
1112
+ * ## 核心职责
1113
+ *
1114
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1115
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1116
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1117
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1118
+ *
1119
+ * ## 组件解析优先级
1120
+ *
1121
+ * ```
1122
+ * teleport 组件(ProForm 插槽注入)
1123
+ * ↓ 未匹配
1124
+ * 自定义组件(ProComponentProvider 的 componentMap)
1125
+ * ↓ 未匹配
1126
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1127
+ * ↓ 未匹配
1128
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1129
+ * ```
1130
+ *
1131
+ * @param {string | Component} [component] - 组件名或组件对象
1132
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1133
+ *
1134
+ * @slot default - 默认插槽(透传给组件)
1135
+ */
1136
+ ...args: any[]) => any) | undefined;
1137
+ onStartValidate?: ((
1138
+ /**
1139
+ * @component BaseField
1140
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1141
+ *
1142
+ * ## 核心职责
1143
+ *
1144
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1145
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1146
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1147
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1148
+ *
1149
+ * ## 组件解析优先级
1150
+ *
1151
+ * ```
1152
+ * teleport 组件(ProForm 插槽注入)
1153
+ * ↓ 未匹配
1154
+ * 自定义组件(ProComponentProvider 的 componentMap)
1155
+ * ↓ 未匹配
1156
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1157
+ * ↓ 未匹配
1158
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1159
+ * ```
1160
+ *
1161
+ * @param {string | Component} [component] - 组件名或组件对象
1162
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1163
+ *
1164
+ * @slot default - 默认插槽(透传给组件)
1165
+ */
1166
+ ...args: any[]) => any) | undefined;
1167
+ onClickLeftIcon?: ((
1168
+ /**
1169
+ * @component BaseField
1170
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1171
+ *
1172
+ * ## 核心职责
1173
+ *
1174
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1175
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1176
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1177
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1178
+ *
1179
+ * ## 组件解析优先级
1180
+ *
1181
+ * ```
1182
+ * teleport 组件(ProForm 插槽注入)
1183
+ * ↓ 未匹配
1184
+ * 自定义组件(ProComponentProvider 的 componentMap)
1185
+ * ↓ 未匹配
1186
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1187
+ * ↓ 未匹配
1188
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1189
+ * ```
1190
+ *
1191
+ * @param {string | Component} [component] - 组件名或组件对象
1192
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1193
+ *
1194
+ * @slot default - 默认插槽(透传给组件)
1195
+ */
1196
+ ...args: any[]) => any) | undefined;
1197
+ onClickRightIcon?: ((
1198
+ /**
1199
+ * @component BaseField
1200
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1201
+ *
1202
+ * ## 核心职责
1203
+ *
1204
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1205
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1206
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1207
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1208
+ *
1209
+ * ## 组件解析优先级
1210
+ *
1211
+ * ```
1212
+ * teleport 组件(ProForm 插槽注入)
1213
+ * ↓ 未匹配
1214
+ * 自定义组件(ProComponentProvider 的 componentMap)
1215
+ * ↓ 未匹配
1216
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1217
+ * ↓ 未匹配
1218
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1219
+ * ```
1220
+ *
1221
+ * @param {string | Component} [component] - 组件名或组件对象
1222
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1223
+ *
1224
+ * @slot default - 默认插槽(透传给组件)
1225
+ */
1226
+ ...args: any[]) => any) | undefined;
1227
+ "onUpdate:modelValue"?: ((
1228
+ /**
1229
+ * @component BaseField
1230
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1231
+ *
1232
+ * ## 核心职责
1233
+ *
1234
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1235
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1236
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1237
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1238
+ *
1239
+ * ## 组件解析优先级
1240
+ *
1241
+ * ```
1242
+ * teleport 组件(ProForm 插槽注入)
1243
+ * ↓ 未匹配
1244
+ * 自定义组件(ProComponentProvider 的 componentMap)
1245
+ * ↓ 未匹配
1246
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1247
+ * ↓ 未匹配
1248
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1249
+ * ```
1250
+ *
1251
+ * @param {string | Component} [component] - 组件名或组件对象
1252
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1253
+ *
1254
+ * @slot default - 默认插槽(透传给组件)
1255
+ */
1256
+ ...args: any[]) => any) | undefined;
1257
+ }>, "tag" | "center" | "isLink" | "border" | "required" | "clickable" | "autofocus" | "clearable" | "clearIcon" | "modelValue" | "clearTrigger" | "formatTrigger" | "spellcheck" | "error" | "disabled" | "readonly" | "type" | "showWordLimit" | "colon"> & {} & {} & import('vue').ComponentCustomProperties & {} & {
1258
+ $props: {
1259
+ onClick
1260
+ /**
1261
+ * @component BaseField
1262
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1263
+ *
1264
+ * ## 核心职责
1265
+ *
1266
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1267
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1268
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1269
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1270
+ *
1271
+ * ## 组件解析优先级
1272
+ *
1273
+ * ```
1274
+ * teleport 组件(ProForm 插槽注入)
1275
+ * ↓ 未匹配
1276
+ * 自定义组件(ProComponentProvider 的 componentMap)
1277
+ * ↓ 未匹配
1278
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1279
+ * ↓ 未匹配
1280
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1281
+ * ```
1282
+ *
1283
+ * @param {string | Component} [component] - 组件名或组件对象
1284
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1285
+ *
1286
+ * @slot default - 默认插槽(透传给组件)
1287
+ */
1288
+ ?: (
1289
+ /**
1290
+ * @component BaseField
1291
+ * @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
1292
+ *
1293
+ * ## 核心职责
1294
+ *
1295
+ * 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
1296
+ * 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
1297
+ * 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
1298
+ * 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
1299
+ *
1300
+ * ## 组件解析优先级
1301
+ *
1302
+ * ```
1303
+ * teleport 组件(ProForm 插槽注入)
1304
+ * ↓ 未匹配
1305
+ * 自定义组件(ProComponentProvider 的 componentMap)
1306
+ * ↓ 未匹配
1307
+ * 内置组件映射(componentMap: input → Input, select → Select ...)
1308
+ * ↓ 未匹配
1309
+ * 原始 component 值(可能是字符串或 Vue 组件对象)
1310
+ * ```
1311
+ *
1312
+ * @param {string | Component} [component] - 组件名或组件对象
1313
+ * @param {string} [path] - 字段路径,用于绑定表单数据
1314
+ *
1315
+ * @slot default - 默认插槽(透传给组件)
1316
+ */
1317
+ ...args: any[]) => void;
1318
+ };
1319
+ }) | null;
1320
+ componentRef: unknown;
1321
+ }, any>;
1322
+ export default _default;
1323
+ //# sourceMappingURL=index.vue.d.ts.map