@tmagic/form 1.3.0-alpha.2 → 1.3.0-alpha.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 (85) hide show
  1. package/dist/style.css +21 -0
  2. package/dist/tmagic-form.js +1400 -1187
  3. package/dist/tmagic-form.js.map +1 -1
  4. package/dist/tmagic-form.umd.cjs +1425 -1210
  5. package/dist/tmagic-form.umd.cjs.map +1 -1
  6. package/package.json +10 -11
  7. package/src/Form.vue +14 -2
  8. package/src/FormDialog.vue +20 -6
  9. package/src/FormDrawer.vue +134 -0
  10. package/src/containers/Col.vue +5 -1
  11. package/src/containers/Container.vue +16 -11
  12. package/src/containers/Fieldset.vue +5 -1
  13. package/src/containers/GroupList.vue +7 -2
  14. package/src/containers/GroupListItem.vue +15 -9
  15. package/src/containers/Panel.vue +5 -1
  16. package/src/containers/Row.vue +5 -1
  17. package/src/containers/Step.vue +5 -1
  18. package/src/containers/Table.vue +153 -151
  19. package/src/containers/Tabs.vue +14 -8
  20. package/src/fields/Cascader.vue +7 -13
  21. package/src/fields/Checkbox.vue +7 -13
  22. package/src/fields/CheckboxGroup.vue +9 -15
  23. package/src/fields/ColorPicker.vue +10 -14
  24. package/src/fields/Date.vue +11 -15
  25. package/src/fields/DateTime.vue +12 -16
  26. package/src/fields/Daterange.vue +7 -13
  27. package/src/fields/Display.vue +7 -11
  28. package/src/fields/DynamicField.vue +8 -14
  29. package/src/fields/Hidden.vue +7 -11
  30. package/src/fields/Link.vue +7 -13
  31. package/src/fields/Number.vue +12 -15
  32. package/src/fields/NumberRange.vue +50 -0
  33. package/src/fields/RadioGroup.vue +7 -13
  34. package/src/fields/Select.vue +28 -30
  35. package/src/fields/SelectOptionGroups.vue +7 -3
  36. package/src/fields/SelectOptions.vue +5 -1
  37. package/src/fields/Switch.vue +11 -15
  38. package/src/fields/Text.vue +12 -15
  39. package/src/fields/Textarea.vue +12 -15
  40. package/src/fields/Time.vue +10 -14
  41. package/src/index.ts +43 -37
  42. package/src/schema.ts +27 -5
  43. package/src/theme/form-drawer.scss +11 -0
  44. package/src/theme/index.scss +2 -0
  45. package/src/theme/number-range.scss +8 -0
  46. package/src/theme/panel.scss +6 -0
  47. package/src/utils/config.ts +1 -1
  48. package/src/utils/form.ts +2 -1
  49. package/types/Form.vue.d.ts +11 -6
  50. package/types/FormDialog.vue.d.ts +89 -125
  51. package/types/FormDrawer.vue.d.ts +338 -0
  52. package/types/containers/Col.vue.d.ts +1 -1
  53. package/types/containers/Container.vue.d.ts +6 -3
  54. package/types/containers/Fieldset.vue.d.ts +6 -3
  55. package/types/containers/GroupList.vue.d.ts +1 -1
  56. package/types/containers/GroupListItem.vue.d.ts +1 -1
  57. package/types/containers/Panel.vue.d.ts +3 -3
  58. package/types/containers/Row.vue.d.ts +1 -1
  59. package/types/containers/Step.vue.d.ts +6 -3
  60. package/types/containers/Table.vue.d.ts +9 -6
  61. package/types/containers/Tabs.vue.d.ts +6 -3
  62. package/types/fields/Cascader.vue.d.ts +3 -23
  63. package/types/fields/Checkbox.vue.d.ts +3 -23
  64. package/types/fields/CheckboxGroup.vue.d.ts +3 -23
  65. package/types/fields/ColorPicker.vue.d.ts +2 -24
  66. package/types/fields/Date.vue.d.ts +2 -24
  67. package/types/fields/DateTime.vue.d.ts +2 -24
  68. package/types/fields/Daterange.vue.d.ts +3 -23
  69. package/types/fields/Display.vue.d.ts +2 -18
  70. package/types/fields/DynamicField.vue.d.ts +3 -32
  71. package/types/fields/Hidden.vue.d.ts +2 -18
  72. package/types/fields/Link.vue.d.ts +3 -23
  73. package/types/fields/Number.vue.d.ts +2 -25
  74. package/types/fields/NumberRange.vue.d.ts +12 -0
  75. package/types/fields/RadioGroup.vue.d.ts +3 -23
  76. package/types/fields/Select.vue.d.ts +3 -23
  77. package/types/fields/SelectOptionGroups.vue.d.ts +2 -2
  78. package/types/fields/SelectOptions.vue.d.ts +2 -2
  79. package/types/fields/Switch.vue.d.ts +2 -24
  80. package/types/fields/Text.vue.d.ts +2 -25
  81. package/types/fields/Textarea.vue.d.ts +2 -25
  82. package/types/fields/Time.vue.d.ts +2 -24
  83. package/types/index.d.ts +6 -1
  84. package/types/schema.d.ts +25 -5
  85. package/types/utils/config.d.ts +1 -1
@@ -9,7 +9,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
9
9
  disabled?: boolean | undefined;
10
10
  title?: string | undefined;
11
11
  zIndex?: number | undefined;
12
- size?: "default" | "small" | "large" | undefined;
12
+ size?: "large" | "default" | "small" | undefined;
13
13
  confirmText?: string | undefined;
14
14
  }>, {
15
15
  config: () => never[];
@@ -19,93 +19,70 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
19
19
  form: import("vue").Ref<({
20
20
  $: import("vue").ComponentInternalInstance;
21
21
  $data: {};
22
- $props: Partial<{
23
- config: FormConfig;
24
- initValues: Object;
25
- lastValues: Object;
26
- isCompare: boolean;
27
- keyProp: string;
28
- parentValues: Object;
29
- labelWidth: string;
30
- disabled: boolean;
31
- stepActive: string | number;
32
- height: string;
33
- inline: boolean;
34
- labelPosition: string;
35
- }> & Omit<Readonly<import("vue").ExtractPropTypes<{
36
- config: {
37
- type: import("vue").PropType<FormConfig>;
38
- required: true;
39
- } & {
40
- default: () => never[];
41
- };
42
- popperClass: {
43
- type: import("vue").PropType<string>;
44
- };
45
- initValues: {
46
- type: import("vue").PropType<Object>;
47
- required: true;
48
- } & {
49
- default: () => {};
50
- };
51
- lastValues: {
52
- type: import("vue").PropType<Object>;
53
- } & {
54
- default: () => {};
55
- };
56
- isCompare: {
57
- type: import("vue").PropType<boolean>;
58
- } & {
59
- default: boolean;
60
- };
61
- keyProp: {
62
- type: import("vue").PropType<string>;
63
- } & {
64
- default: string;
65
- };
66
- parentValues: {
67
- type: import("vue").PropType<Object>;
68
- } & {
69
- default: () => {};
70
- };
71
- labelWidth: {
72
- type: import("vue").PropType<string>;
73
- } & {
74
- default: string;
75
- };
76
- disabled: {
77
- type: import("vue").PropType<boolean>;
78
- } & {
79
- default: boolean;
80
- };
81
- stepActive: {
82
- type: import("vue").PropType<string | number>;
83
- } & {
84
- default: number;
85
- };
86
- size: {
87
- type: import("vue").PropType<"default" | "small" | "large">;
88
- };
89
- height: {
90
- type: import("vue").PropType<string>;
91
- } & {
92
- default: string;
93
- };
94
- inline: {
95
- type: import("vue").PropType<boolean>;
96
- } & {
97
- default: boolean;
98
- };
99
- labelPosition: {
100
- type: import("vue").PropType<string>;
101
- } & {
102
- default: string;
103
- };
104
- }>> & {
22
+ $props: {
23
+ config?: FormConfig | undefined;
24
+ initValues?: Object | undefined;
25
+ lastValues?: Object | undefined;
26
+ isCompare?: boolean | undefined;
27
+ keyProp?: string | undefined;
28
+ parentValues?: Object | undefined;
29
+ labelWidth?: string | undefined;
30
+ disabled?: boolean | undefined;
31
+ stepActive?: string | number | undefined;
32
+ height?: string | undefined;
33
+ inline?: boolean | undefined;
34
+ labelPosition?: string | undefined;
35
+ readonly popperClass?: string | undefined;
36
+ key?: string | number | symbol | undefined;
105
37
  onChange?: ((...args: any[]) => any) | undefined;
38
+ readonly size?: "large" | "default" | "small" | undefined;
39
+ ref?: import("vue").VNodeRef | undefined;
40
+ ref_for?: boolean | undefined;
41
+ ref_key?: string | undefined;
42
+ onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
43
+ [key: string]: any;
44
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
45
+ [key: string]: any;
46
+ }>) => void)[] | undefined;
47
+ onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
48
+ [key: string]: any;
49
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
50
+ [key: string]: any;
51
+ }>) => void)[] | undefined;
52
+ onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
53
+ [key: string]: any;
54
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
55
+ [key: string]: any;
56
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
57
+ [key: string]: any;
58
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
59
+ [key: string]: any;
60
+ }>) => void)[] | undefined;
61
+ onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
62
+ [key: string]: any;
63
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
64
+ [key: string]: any;
65
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
66
+ [key: string]: any;
67
+ }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
68
+ [key: string]: any;
69
+ }>) => void)[] | undefined;
70
+ onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
71
+ [key: string]: any;
72
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
73
+ [key: string]: any;
74
+ }>) => void)[] | undefined;
75
+ onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
76
+ [key: string]: any;
77
+ }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
78
+ [key: string]: any;
79
+ }>) => void)[] | undefined;
80
+ class?: unknown;
81
+ style?: unknown;
82
+ readonly extendState?: ((state: import("./schema").FormState) => Record<string, any> | Promise<Record<string, any>>) | undefined;
106
83
  "onField-input"?: ((...args: any[]) => any) | undefined;
107
84
  "onField-change"?: ((...args: any[]) => any) | undefined;
108
- } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "config" | "initValues" | "lastValues" | "isCompare" | "keyProp" | "parentValues" | "labelWidth" | "disabled" | "stepActive" | "height" | "inline" | "labelPosition">;
85
+ };
109
86
  $attrs: {
110
87
  [x: string]: unknown;
111
88
  };
@@ -113,17 +90,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
113
90
  [x: string]: unknown;
114
91
  };
115
92
  $slots: Readonly<{
116
- [name: string]: import("vue").Slot | undefined;
93
+ [name: string]: import("vue").Slot<any> | undefined;
117
94
  }>;
118
- $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
119
- $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null;
95
+ $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
96
+ $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
120
97
  $emit: (event: "change" | "field-input" | "field-change", ...args: any[]) => void;
121
98
  $el: any;
122
99
  $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
123
100
  config: {
124
101
  type: import("vue").PropType<FormConfig>;
125
102
  required: true;
126
- } & {
127
103
  default: () => never[];
128
104
  };
129
105
  popperClass: {
@@ -132,62 +108,54 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
132
108
  initValues: {
133
109
  type: import("vue").PropType<Object>;
134
110
  required: true;
135
- } & {
136
111
  default: () => {};
137
112
  };
138
113
  lastValues: {
139
114
  type: import("vue").PropType<Object>;
140
- } & {
141
115
  default: () => {};
142
116
  };
143
117
  isCompare: {
144
118
  type: import("vue").PropType<boolean>;
145
- } & {
146
119
  default: boolean;
147
120
  };
148
121
  keyProp: {
149
122
  type: import("vue").PropType<string>;
150
- } & {
151
123
  default: string;
152
124
  };
153
125
  parentValues: {
154
126
  type: import("vue").PropType<Object>;
155
- } & {
156
127
  default: () => {};
157
128
  };
158
129
  labelWidth: {
159
130
  type: import("vue").PropType<string>;
160
- } & {
161
131
  default: string;
162
132
  };
163
133
  disabled: {
164
134
  type: import("vue").PropType<boolean>;
165
- } & {
166
135
  default: boolean;
167
136
  };
168
137
  stepActive: {
169
138
  type: import("vue").PropType<string | number>;
170
- } & {
171
139
  default: number;
172
140
  };
173
141
  size: {
174
- type: import("vue").PropType<"default" | "small" | "large">;
142
+ type: import("vue").PropType<"large" | "default" | "small">;
175
143
  };
176
144
  height: {
177
145
  type: import("vue").PropType<string>;
178
- } & {
179
146
  default: string;
180
147
  };
181
148
  inline: {
182
149
  type: import("vue").PropType<boolean>;
183
- } & {
184
150
  default: boolean;
185
151
  };
186
152
  labelPosition: {
187
153
  type: import("vue").PropType<string>;
188
- } & {
189
154
  default: string;
190
155
  };
156
+ extendState: {
157
+ type: import("vue").PropType<(state: import("./schema").FormState) => Record<string, any> | Promise<Record<string, any>>>;
158
+ };
191
159
  }>> & {
192
160
  onChange?: ((...args: any[]) => any) | undefined;
193
161
  "onField-input"?: ((...args: any[]) => any) | undefined;
@@ -213,7 +181,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
213
181
  height: string;
214
182
  inline: boolean;
215
183
  labelPosition: string;
216
- }> & {
184
+ }, {}, string, {}> & {
217
185
  beforeCreate?: ((() => void) | (() => void)[]) | undefined;
218
186
  created?: ((() => void) | (() => void)[]) | undefined;
219
187
  beforeMount?: ((() => void) | (() => void)[]) | undefined;
@@ -228,16 +196,15 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
228
196
  unmounted?: ((() => void) | (() => void)[]) | undefined;
229
197
  renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
230
198
  renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
231
- errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}>> | null, info: string) => boolean | void)[]) | undefined;
199
+ errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
232
200
  };
233
201
  $forceUpdate: () => void;
234
202
  $nextTick: typeof import("vue").nextTick;
235
- $watch(source: string | Function, cb: Function, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
203
+ $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
236
204
  } & Readonly<import("vue").ExtractPropTypes<{
237
205
  config: {
238
206
  type: import("vue").PropType<FormConfig>;
239
207
  required: true;
240
- } & {
241
208
  default: () => never[];
242
209
  };
243
210
  popperClass: {
@@ -246,62 +213,54 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
246
213
  initValues: {
247
214
  type: import("vue").PropType<Object>;
248
215
  required: true;
249
- } & {
250
216
  default: () => {};
251
217
  };
252
218
  lastValues: {
253
219
  type: import("vue").PropType<Object>;
254
- } & {
255
220
  default: () => {};
256
221
  };
257
222
  isCompare: {
258
223
  type: import("vue").PropType<boolean>;
259
- } & {
260
224
  default: boolean;
261
225
  };
262
226
  keyProp: {
263
227
  type: import("vue").PropType<string>;
264
- } & {
265
228
  default: string;
266
229
  };
267
230
  parentValues: {
268
231
  type: import("vue").PropType<Object>;
269
- } & {
270
232
  default: () => {};
271
233
  };
272
234
  labelWidth: {
273
235
  type: import("vue").PropType<string>;
274
- } & {
275
236
  default: string;
276
237
  };
277
238
  disabled: {
278
239
  type: import("vue").PropType<boolean>;
279
- } & {
280
240
  default: boolean;
281
241
  };
282
242
  stepActive: {
283
243
  type: import("vue").PropType<string | number>;
284
- } & {
285
244
  default: number;
286
245
  };
287
246
  size: {
288
- type: import("vue").PropType<"default" | "small" | "large">;
247
+ type: import("vue").PropType<"large" | "default" | "small">;
289
248
  };
290
249
  height: {
291
250
  type: import("vue").PropType<string>;
292
- } & {
293
251
  default: string;
294
252
  };
295
253
  inline: {
296
254
  type: import("vue").PropType<boolean>;
297
- } & {
298
255
  default: boolean;
299
256
  };
300
257
  labelPosition: {
301
258
  type: import("vue").PropType<string>;
302
- } & {
303
259
  default: string;
304
260
  };
261
+ extendState: {
262
+ type: import("vue").PropType<(state: import("./schema").FormState) => Record<string, any> | Promise<Record<string, any>>>;
263
+ };
305
264
  }>> & {
306
265
  onChange?: ((...args: any[]) => any) | undefined;
307
266
  "onField-input"?: ((...args: any[]) => any) | undefined;
@@ -314,11 +273,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
314
273
  changeHandler: () => void;
315
274
  resetForm: () => any;
316
275
  submitForm: (native?: boolean | undefined) => Promise<any>;
317
- }> & {} & import("vue").ComponentCustomProperties) | undefined>;
276
+ }> & {} & import("vue").ComponentCustomProperties & {}) | undefined>;
318
277
  saveFetch: import("vue").Ref<boolean>;
319
278
  dialogVisible: import("vue").Ref<boolean>;
320
279
  cancel: () => void;
321
280
  save: () => Promise<void>;
281
+ show: () => void;
282
+ hide: () => void;
322
283
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("change" | "close" | "submit" | "error")[], "change" | "close" | "submit" | "error", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
323
284
  config?: FormConfig | undefined;
324
285
  values?: Object | undefined;
@@ -329,7 +290,7 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
329
290
  disabled?: boolean | undefined;
330
291
  title?: string | undefined;
331
292
  zIndex?: number | undefined;
332
- size?: "default" | "small" | "large" | undefined;
293
+ size?: "large" | "default" | "small" | undefined;
333
294
  confirmText?: string | undefined;
334
295
  }>, {
335
296
  config: () => never[];
@@ -344,10 +305,10 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
344
305
  config: FormConfig;
345
306
  values: Object;
346
307
  confirmText: string;
347
- }>, {
348
- default: (_: {}) => any;
349
- left: (_: {}) => any;
350
- footer: (_: {}) => any;
308
+ }, {}>, {
309
+ default?(_: {}): any;
310
+ left?(_: {}): any;
311
+ footer?(_: {}): any;
351
312
  }>;
352
313
  export default _default;
353
314
  type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
@@ -360,12 +321,15 @@ type __VLS_TypePropsToRuntimeProps<T> = {
360
321
  };
361
322
  };
362
323
  type __VLS_WithDefaults<P, D> = {
363
- [K in keyof Pick<P, keyof P>]: K extends keyof D ? P[K] & {
324
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
364
325
  default: D[K];
365
- } : P[K];
326
+ }> : P[K];
366
327
  };
367
328
  type __VLS_WithTemplateSlots<T, S> = T & {
368
329
  new (): {
369
330
  $slots: S;
370
331
  };
371
332
  };
333
+ type __VLS_Prettify<T> = {
334
+ [K in keyof T]: T[K];
335
+ } & {};