@volverjs/form-vue 0.0.14-beta.2 → 0.0.14-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/VvForm.d.ts CHANGED
@@ -1,8 +1,8 @@
1
- import { type InjectionKey, type DeepReadonly, type Ref } from 'vue';
1
+ import { type Component, type InjectionKey, type DeepReadonly, type Ref, type PropType } from 'vue';
2
2
  import type { z, TypeOf } from 'zod';
3
- import type { FormComponentOptions, FormSchema, InjectedFormData } from './types';
3
+ import type { FormComponentOptions, FormSchema, FormTemplate, InjectedFormData } from './types';
4
4
  import { FormStatus } from './enums';
5
- export declare const defineForm: <Schema extends FormSchema>(schema: Schema, provideKey: InjectionKey<InjectedFormData<Schema>>, options?: FormComponentOptions) => {
5
+ export declare const defineForm: <Schema extends FormSchema>(schema: Schema, provideKey: InjectionKey<InjectedFormData<Schema>>, options?: FormComponentOptions<Schema> | undefined, VvFormTemplate?: Component) => {
6
6
  errors: Ref<z.inferFormattedError<Schema, string> | undefined>;
7
7
  status: Ref<FormStatus | undefined>;
8
8
  formData: Ref<Partial<z.TypeOf<Schema> | undefined>>;
@@ -20,6 +20,7 @@ export declare const defineForm: <Schema extends FormSchema>(schema: Schema, pro
20
20
  onInvalid?: ((...args: any[]) => any) | undefined;
21
21
  onValid?: ((...args: any[]) => any) | undefined;
22
22
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
23
+ readonly template?: FormTemplate<Schema> | undefined;
23
24
  key?: string | number | symbol | undefined;
24
25
  onSubmit?: ((...args: any[]) => any) | undefined;
25
26
  ref?: import("vue").VNodeRef | undefined;
@@ -92,6 +93,9 @@ export declare const defineForm: <Schema extends FormSchema>(schema: Schema, pro
92
93
  type: BooleanConstructor;
93
94
  default: boolean;
94
95
  };
96
+ template: {
97
+ type: PropType<FormTemplate<Schema>>;
98
+ };
95
99
  }>> & {
96
100
  onInvalid?: ((...args: any[]) => any) | undefined;
97
101
  onValid?: ((...args: any[]) => any) | undefined;
@@ -141,6 +145,9 @@ export declare const defineForm: <Schema extends FormSchema>(schema: Schema, pro
141
145
  type: BooleanConstructor;
142
146
  default: boolean;
143
147
  };
148
+ template: {
149
+ type: PropType<FormTemplate<Schema>>;
150
+ };
144
151
  }>> & {
145
152
  onInvalid?: ((...args: any[]) => any) | undefined;
146
153
  onValid?: ((...args: any[]) => any) | undefined;
@@ -170,6 +177,9 @@ export declare const defineForm: <Schema extends FormSchema>(schema: Schema, pro
170
177
  type: BooleanConstructor;
171
178
  default: boolean;
172
179
  };
180
+ template: {
181
+ type: PropType<FormTemplate<Schema>>;
182
+ };
173
183
  }>> & {
174
184
  onInvalid?: ((...args: any[]) => any) | undefined;
175
185
  onValid?: ((...args: any[]) => any) | undefined;
@@ -1,13 +1,123 @@
1
- import { type Component, type InjectionKey, type DeepReadonly, type Ref } from 'vue';
1
+ import { type Component, type PropType, type InjectionKey, type DeepReadonly, type Ref, type VNode } from 'vue';
2
2
  import type { TypeOf, z } from 'zod';
3
- import type { FormSchema, InjectedFormData } from './types';
3
+ import type { FormSchema, InjectedFormData, FormTemplate } from './types';
4
4
  import type { FormStatus } from './enums';
5
- export declare const defineFormTemplate: <Schema extends FormSchema>(formProvideKey: InjectionKey<InjectedFormData<Schema>>, VvFormField: Component) => (import("vue").ComponentOptions<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions, any, any, any, any> | {
6
- new (...args: any[]): any;
5
+ export declare const defineFormTemplate: <Schema extends FormSchema>(formProvideKey: InjectionKey<InjectedFormData<Schema>>, VvFormField: Component) => {
6
+ new (...args: any[]): {
7
+ $: import("vue").ComponentInternalInstance;
8
+ $data: {};
9
+ $props: {
10
+ readonly schema: FormTemplate<Schema>;
11
+ key?: string | number | symbol | undefined;
12
+ ref?: import("vue").VNodeRef | undefined;
13
+ ref_for?: boolean | undefined;
14
+ ref_key?: string | undefined;
15
+ onVnodeBeforeMount?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
16
+ [key: string]: any;
17
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
18
+ [key: string]: any;
19
+ }>) => void)[] | undefined;
20
+ onVnodeMounted?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
21
+ [key: string]: any;
22
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
23
+ [key: string]: any;
24
+ }>) => void)[] | undefined;
25
+ onVnodeBeforeUpdate?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
26
+ [key: string]: any;
27
+ }>, oldVNode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
28
+ [key: string]: any;
29
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
30
+ [key: string]: any;
31
+ }>, oldVNode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
32
+ [key: string]: any;
33
+ }>) => void)[] | undefined;
34
+ onVnodeUpdated?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
35
+ [key: string]: any;
36
+ }>, oldVNode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
37
+ [key: string]: any;
38
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
39
+ [key: string]: any;
40
+ }>, oldVNode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
41
+ [key: string]: any;
42
+ }>) => void)[] | undefined;
43
+ onVnodeBeforeUnmount?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
44
+ [key: string]: any;
45
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
46
+ [key: string]: any;
47
+ }>) => void)[] | undefined;
48
+ onVnodeUnmounted?: ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
49
+ [key: string]: any;
50
+ }>) => void) | ((vnode: VNode<import("vue").RendererNode, import("vue").RendererElement, {
51
+ [key: string]: any;
52
+ }>) => void)[] | undefined;
53
+ class?: unknown;
54
+ style?: unknown;
55
+ };
56
+ $attrs: {
57
+ [x: string]: unknown;
58
+ };
59
+ $refs: {
60
+ [x: string]: unknown;
61
+ };
62
+ $slots: Readonly<{
63
+ [name: string]: import("vue").Slot<any> | undefined;
64
+ }>;
65
+ $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
66
+ $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
67
+ $emit: (event: string, ...args: any[]) => void;
68
+ $el: any;
69
+ $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
70
+ schema: {
71
+ type: PropType<FormTemplate<Schema>>;
72
+ required: true;
73
+ };
74
+ }>>, (() => (VNode<import("vue").RendererNode, import("vue").RendererElement, {
75
+ [key: string]: any;
76
+ }> | VNode<import("vue").RendererNode, import("vue").RendererElement, {
77
+ [key: string]: any;
78
+ }>[] | undefined)[]) | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & {
79
+ beforeCreate?: ((() => void) | (() => void)[]) | undefined;
80
+ created?: ((() => void) | (() => void)[]) | undefined;
81
+ beforeMount?: ((() => void) | (() => void)[]) | undefined;
82
+ mounted?: ((() => void) | (() => void)[]) | undefined;
83
+ beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
84
+ updated?: ((() => void) | (() => void)[]) | undefined;
85
+ activated?: ((() => void) | (() => void)[]) | undefined;
86
+ deactivated?: ((() => void) | (() => void)[]) | undefined;
87
+ beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
88
+ beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
89
+ destroyed?: ((() => void) | (() => void)[]) | undefined;
90
+ unmounted?: ((() => void) | (() => void)[]) | undefined;
91
+ renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
92
+ renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
93
+ 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;
94
+ };
95
+ $forceUpdate: () => void;
96
+ $nextTick: typeof import("vue").nextTick;
97
+ $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;
98
+ } & Readonly<import("vue").ExtractPropTypes<{
99
+ schema: {
100
+ type: PropType<FormTemplate<Schema>>;
101
+ required: true;
102
+ };
103
+ }>> & import("vue").ShallowUnwrapRef<{} | (() => (VNode<import("vue").RendererNode, import("vue").RendererElement, {
104
+ [key: string]: any;
105
+ }> | VNode<import("vue").RendererNode, import("vue").RendererElement, {
106
+ [key: string]: any;
107
+ }>[] | undefined)[])> & {} & import("vue").ComponentCustomProperties & {};
7
108
  __isFragment?: undefined;
8
109
  __isTeleport?: undefined;
9
110
  __isSuspense?: undefined;
10
- }) & (new () => {
111
+ } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
112
+ schema: {
113
+ type: PropType<FormTemplate<Schema>>;
114
+ required: true;
115
+ };
116
+ }>>, (() => (VNode<import("vue").RendererNode, import("vue").RendererElement, {
117
+ [key: string]: any;
118
+ }> | VNode<import("vue").RendererNode, import("vue").RendererElement, {
119
+ [key: string]: any;
120
+ }>[] | undefined)[]) | undefined, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
11
121
  $slots: {
12
122
  default: (_: {
13
123
  formData: unknown extends Partial<TypeOf<Schema>> | undefined ? undefined : Partial<TypeOf<Schema>> | undefined;