@websolutespa/bom-mixer-forms 1.9.0 → 1.9.1
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/CHANGELOG.md +7 -0
- package/dist/index.d.ts +97 -58
- package/dist/index.js +375 -321
- package/dist/index.mjs +375 -322
- package/package.json +1 -1
- package/src/forms/form-abstract-collection.ts +57 -60
- package/src/forms/form-abstract.ts +56 -375
- package/src/forms/form-array.ts +3 -4
- package/src/forms/form-control.ts +0 -1
- package/src/forms/form-emitter.ts +226 -0
- package/src/forms/form-group.ts +0 -1
- package/src/forms/form-state.ts +18 -0
- package/src/forms/types.ts +5 -2
- package/src/forms/utils.ts +22 -1
- package/src/hooks/useControl/useControl.ts +9 -5
- package/src/hooks/useForm/useForm.ts +11 -3
- package/src/hooks/useFormBuilder/useFormBuilder.ts +11 -3
- package/src/hooks/useFormSchema/useFormSchema.ts +10 -16
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -11,15 +11,32 @@ declare class EventEmitter {
|
|
|
11
11
|
once(event: string, listener: (...args: any[]) => any): void;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
+
declare class FormState$1 {
|
|
15
|
+
invalid: boolean;
|
|
16
|
+
disabled: boolean;
|
|
17
|
+
hidden: boolean;
|
|
18
|
+
readonly: boolean;
|
|
19
|
+
dirty: boolean;
|
|
20
|
+
touched: boolean;
|
|
21
|
+
submitted: boolean;
|
|
22
|
+
get valid(): boolean;
|
|
23
|
+
get enabled(): boolean;
|
|
24
|
+
get visible(): boolean;
|
|
25
|
+
get writeable(): boolean;
|
|
26
|
+
get pristine(): boolean;
|
|
27
|
+
get untouched(): boolean;
|
|
28
|
+
get unsubmitted(): boolean;
|
|
29
|
+
}
|
|
30
|
+
|
|
14
31
|
declare class FormAbstractCollection<U extends Record<string, FormValue> | FormValue[], T extends FormControls> extends FormAbstract<U> {
|
|
15
32
|
controls_: T;
|
|
16
33
|
constructor(controls: T, validators?: (FormValidator | FormValidator[]));
|
|
17
34
|
initControl_(controlOrValue: FormAbstract | FormValue, key: any): FormAbstract;
|
|
18
35
|
protected setInitialOptions(options?: FormOptions): void;
|
|
19
|
-
protected checkAsyncPropState_(key: keyof FormFlags,
|
|
20
|
-
updateState_(): void;
|
|
36
|
+
protected checkAsyncPropState_(key: keyof FormFlags, activator?: FormActivator, root?: FormCollection): Promise<void>;
|
|
21
37
|
revalidate_(): Promise<void>;
|
|
22
|
-
|
|
38
|
+
validate_(root?: FormCollection): Promise<void>;
|
|
39
|
+
updateState_(): void;
|
|
23
40
|
reset(): void;
|
|
24
41
|
patch(value: any): void;
|
|
25
42
|
get(key: keyof T): FormAbstract;
|
|
@@ -44,12 +61,8 @@ declare class FormAbstractCollection<U extends Record<string, FormValue> | FormV
|
|
|
44
61
|
set touched(touched: boolean);
|
|
45
62
|
get value(): U;
|
|
46
63
|
set value(value: U);
|
|
47
|
-
get errors():
|
|
48
|
-
|
|
49
|
-
};
|
|
50
|
-
set errors(errors: {
|
|
51
|
-
[key: string]: any;
|
|
52
|
-
});
|
|
64
|
+
get errors(): ValidationError;
|
|
65
|
+
set errors(errors: ValidationError);
|
|
53
66
|
}
|
|
54
67
|
|
|
55
68
|
declare class FormArray<T extends FormValue[] = FormValue[]> extends FormAbstractCollection<T, FormArrayControls> {
|
|
@@ -126,6 +139,8 @@ type FormFlags = {
|
|
|
126
139
|
dirty: boolean;
|
|
127
140
|
touched: boolean;
|
|
128
141
|
submitted: boolean;
|
|
142
|
+
};
|
|
143
|
+
type FormDerivedFlags = {
|
|
129
144
|
valid: boolean;
|
|
130
145
|
enabled: boolean;
|
|
131
146
|
visible: boolean;
|
|
@@ -142,9 +157,10 @@ type FormValidationError = {
|
|
|
142
157
|
type FormValidationErrors = FormValidationError[];
|
|
143
158
|
type FormState<T> = {
|
|
144
159
|
value: T | null;
|
|
145
|
-
flags: FormFlags;
|
|
160
|
+
flags: FormFlags & FormDerivedFlags;
|
|
146
161
|
errors: FormValidationErrors;
|
|
147
162
|
};
|
|
163
|
+
type FormCustomData = Record<string, any>;
|
|
148
164
|
type ControlType = 'group' | 'array' | string;
|
|
149
165
|
type IFormBuilderControlSchema = {
|
|
150
166
|
schema: ControlType;
|
|
@@ -169,61 +185,35 @@ type IFormBuilderArraySchema = IFormBuilderControlSchema[];
|
|
|
169
185
|
type IFormBuilderGroupValues = Record<string, FormGroup | FormArray | FormControl>;
|
|
170
186
|
type IFormBuilderSchema = IFormBuilderGroupSchema | IFormBuilderArraySchema;
|
|
171
187
|
|
|
172
|
-
declare class
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
validators_: FormValidator[];
|
|
176
|
-
state_: FormFlags;
|
|
188
|
+
declare class FormEmitter<T = FormValue> extends EventEmitter {
|
|
189
|
+
protected markAsDirty_: boolean;
|
|
190
|
+
get isDirty(): boolean;
|
|
177
191
|
name?: string | number;
|
|
178
|
-
|
|
179
|
-
schema: ControlType;
|
|
180
|
-
options?: IOption[];
|
|
181
|
-
optionsExtra?: {
|
|
182
|
-
asEquatable: boolean;
|
|
183
|
-
};
|
|
184
|
-
customData?: Record<string, any>;
|
|
185
|
-
protected initialOptions_?: FormOptions;
|
|
186
|
-
private markAsDirty_;
|
|
187
|
-
constructor(value: FormValue, validators?: (FormValidator | FormValidator[]));
|
|
188
|
-
protected setInitialOptions(options?: FormOptions): void;
|
|
189
|
-
protected checkAsyncState_(root?: FormCollection): Promise<boolean>;
|
|
190
|
-
protected checkAsyncPropState_(key: keyof FormFlags, option?: FormActivator, root?: FormCollection): Promise<boolean>;
|
|
191
|
-
protected revalidate_(): Promise<void>;
|
|
192
|
-
protected validate_(root?: FormCollection): Promise<void>;
|
|
193
|
-
validateAndChange_(root?: FormCollection): Promise<void>;
|
|
194
|
-
protected updateStateAndChange_(): Promise<void>;
|
|
195
|
-
protected change_(propagate?: boolean): void;
|
|
196
|
-
protected updateState_(): void;
|
|
197
|
-
reset(): void;
|
|
198
|
-
patch(value: FormValue): void;
|
|
199
|
-
addValidators(...validators: FormValidator[]): void;
|
|
200
|
-
replaceValidators(...validators: FormValidator[]): void;
|
|
201
|
-
clearValidators(): void;
|
|
202
|
-
protected get path(): (string | number)[];
|
|
203
|
-
protected get root(): FormCollection | FormAbstract;
|
|
204
|
-
private label_?;
|
|
192
|
+
protected label_: string | undefined;
|
|
205
193
|
get label(): string;
|
|
206
|
-
|
|
207
|
-
private placeholder_?;
|
|
194
|
+
protected placeholder_: string | undefined;
|
|
208
195
|
get placeholder(): string;
|
|
209
|
-
|
|
210
|
-
get
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
196
|
+
protected options_: IOption[] | undefined;
|
|
197
|
+
get options(): IOption[] | undefined;
|
|
198
|
+
protected optionsExtra_: {
|
|
199
|
+
asEquatable: boolean;
|
|
200
|
+
} | undefined;
|
|
201
|
+
get optionsExtra(): {
|
|
202
|
+
asEquatable: boolean;
|
|
203
|
+
} | undefined;
|
|
204
|
+
protected customData_: FormCustomData | undefined;
|
|
205
|
+
get customData(): FormCustomData | undefined;
|
|
206
|
+
protected value_: T | null;
|
|
207
|
+
get value(): T | null;
|
|
208
|
+
protected state_: FormState$1;
|
|
209
|
+
get state(): FormState$1;
|
|
214
210
|
get invalid(): boolean;
|
|
215
211
|
get disabled(): boolean;
|
|
216
|
-
set disabled(disabled: boolean);
|
|
217
212
|
get hidden(): boolean;
|
|
218
|
-
set hidden(hidden: boolean);
|
|
219
213
|
get readonly(): boolean;
|
|
220
|
-
set readonly(readonly: boolean);
|
|
221
214
|
get dirty(): boolean;
|
|
222
|
-
set dirty(dirty: boolean);
|
|
223
215
|
get touched(): boolean;
|
|
224
|
-
set touched(touched: boolean);
|
|
225
216
|
get submitted(): boolean;
|
|
226
|
-
set submitted(submitted: boolean);
|
|
227
217
|
get valid(): boolean;
|
|
228
218
|
get enabled(): boolean;
|
|
229
219
|
get visible(): boolean;
|
|
@@ -231,12 +221,62 @@ declare class FormAbstract<T = any> extends EventEmitter {
|
|
|
231
221
|
get pristine(): boolean;
|
|
232
222
|
get untouched(): boolean;
|
|
233
223
|
get unsubmitted(): boolean;
|
|
234
|
-
|
|
224
|
+
protected errors_: ValidationError;
|
|
225
|
+
get errors(): ValidationError;
|
|
226
|
+
protected validators_: FormValidator[];
|
|
227
|
+
get validators(): FormValidator[];
|
|
228
|
+
constructor(value: T | null, validators?: (FormValidator | FormValidator[]));
|
|
229
|
+
/**
|
|
230
|
+
* SETTERS
|
|
231
|
+
*/
|
|
232
|
+
set label(label: string | undefined);
|
|
233
|
+
set placeholder(placeholder: string | undefined);
|
|
234
|
+
set options(options: IOption[] | undefined);
|
|
235
|
+
set optionsExtra(optionsExtra: {
|
|
236
|
+
asEquatable: boolean;
|
|
237
|
+
} | undefined);
|
|
238
|
+
set customData(customData: FormCustomData | undefined);
|
|
235
239
|
set value(value: T | null);
|
|
240
|
+
set invalid(invalid: boolean);
|
|
241
|
+
set disabled(disabled: boolean);
|
|
242
|
+
set hidden(hidden: boolean);
|
|
243
|
+
set readonly(readonly: boolean);
|
|
244
|
+
set dirty(dirty: boolean);
|
|
245
|
+
set touched(touched: boolean);
|
|
246
|
+
set submitted(submitted: boolean);
|
|
247
|
+
set errors(errors: ValidationError);
|
|
248
|
+
set validators(validators: FormValidator[]);
|
|
249
|
+
protected revalidate_(): void;
|
|
250
|
+
protected updateStateAndChange_(): Promise<boolean>;
|
|
251
|
+
protected emitChange_(): boolean;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
declare class FormAbstract<T = FormValue> extends FormEmitter {
|
|
255
|
+
schema: ControlType;
|
|
256
|
+
parent?: FormCollection;
|
|
257
|
+
protected initialOptions_?: FormOptions;
|
|
258
|
+
constructor(value: T | null, validators?: (FormValidator | FormValidator[]));
|
|
259
|
+
protected setInitialOptions(options?: FormOptions): void;
|
|
260
|
+
protected checkAsyncState_(root?: FormCollection): Promise<void>;
|
|
261
|
+
protected checkAsyncPropState_(key: keyof FormFlags, activator?: FormActivator, root?: FormCollection): Promise<void>;
|
|
262
|
+
protected revalidate_(): Promise<void>;
|
|
263
|
+
validateAndChange_(root?: FormCollection): Promise<boolean>;
|
|
264
|
+
validate_(root?: FormCollection): Promise<void>;
|
|
265
|
+
protected updateStateAndChange_(): Promise<boolean>;
|
|
266
|
+
protected updateState_(): void;
|
|
267
|
+
change_(propagate?: boolean): boolean;
|
|
268
|
+
reset(): void;
|
|
269
|
+
patch(value: FormValue): void;
|
|
270
|
+
addValidators(...validators: FormValidator[]): void;
|
|
271
|
+
replaceValidators(...validators: FormValidator[]): void;
|
|
272
|
+
clearValidators(): void;
|
|
273
|
+
protected get path(): (string | number)[];
|
|
274
|
+
protected get root(): FormCollection | FormAbstract;
|
|
236
275
|
}
|
|
237
276
|
|
|
238
277
|
declare function validValue(value: FormValue): any;
|
|
239
278
|
declare function mapErrors_(errors: FormErrors): FormValidationError[];
|
|
279
|
+
declare function mapState_(state: FormState$1): FormFlags & FormDerivedFlags;
|
|
240
280
|
declare function valueToString(value: IOption | IOption[] | IEquatable | IEquatable[] | null): string | string[] | undefined;
|
|
241
281
|
declare function stringToValue(value: string | string[] | undefined, options?: IOption[], optionsExtra?: {
|
|
242
282
|
asEquatable: boolean;
|
|
@@ -307,11 +347,10 @@ declare function useForm<T, U extends (FormGroup | FormArray)>(factory: () => U,
|
|
|
307
347
|
declare function useFormBuilder<T extends (Record<string, FormValue> | FormValue[]) = Record<string, FormValue>, U extends (T extends FormValue[] ? FormArray<T> : FormGroup<T>) = T extends FormValue[] ? FormArray<T> : FormGroup<T>>(schema: IFormBuilderSchema, deps?: DependencyList): [FormState<T>, (value: Partial<T>) => void, () => void, () => void, U];
|
|
308
348
|
|
|
309
349
|
declare function useFormSchema<T extends (Record<string, FormValue> | FormValue[]) = Record<string, FormValue>, U extends (T extends FormValue[] ? FormArray<T> : FormGroup<T>) = T extends FormValue[] ? FormArray<T> : FormGroup<T>>(schema: IFormBuilderSchema, deps?: DependencyList): {
|
|
310
|
-
state: FormState<T>;
|
|
311
350
|
setValue: (value: Partial<T>) => void;
|
|
312
351
|
setTouched: () => void;
|
|
313
352
|
reset: () => void;
|
|
314
353
|
form: U;
|
|
315
354
|
};
|
|
316
355
|
|
|
317
|
-
export { ControlType, EmailValidator, FormAbstract, FormAbstractCollection, FormActivator, FormArray, FormArrayControls, FormAsyncValidator, FormCollection, FormControl, FormControls, FormErrors, FormFlags, FormGroup, FormGroupControls, FormOptions, FormState, FormValidationError, FormValidationErrors, FormValidator, FormValue, FormValueArray, FormValueGroup, IControlParam, IFormBuilderArraySchema, IFormBuilderControlSchema, IFormBuilderGroupSchema, IFormBuilderGroupValues, IFormBuilderSchema, IFormOption, MatchValidator, MaxLengthValidator, MaxValidator, MinLengthValidator, MinValidator, NullValidator, PatternValidator, RequiredIfValidator, RequiredTrueValidator, RequiredValidator, ValidationError, formArray, formControl, formGroup, mapErrors_, stringToValue, useControl, useForm, useFormBuilder, useFormSchema, validValue, valueToString };
|
|
356
|
+
export { ControlType, EmailValidator, FormAbstract, FormAbstractCollection, FormActivator, FormArray, FormArrayControls, FormAsyncValidator, FormCollection, FormControl, FormControls, FormCustomData, FormDerivedFlags, FormErrors, FormFlags, FormGroup, FormGroupControls, FormOptions, FormState, FormValidationError, FormValidationErrors, FormValidator, FormValue, FormValueArray, FormValueGroup, IControlParam, IFormBuilderArraySchema, IFormBuilderControlSchema, IFormBuilderGroupSchema, IFormBuilderGroupValues, IFormBuilderSchema, IFormOption, MatchValidator, MaxLengthValidator, MaxValidator, MinLengthValidator, MinValidator, NullValidator, PatternValidator, RequiredIfValidator, RequiredTrueValidator, RequiredValidator, ValidationError, formArray, formControl, formGroup, mapErrors_, mapState_, stringToValue, useControl, useForm, useFormBuilder, useFormSchema, validValue, valueToString };
|