@rolster/forms 2.1.0 → 2.2.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.
@@ -1,9 +1,7 @@
1
1
  import { ValidatorError } from '@rolster/validators';
2
- import { AbstractArray, AbstractArrayControl, AbstractArrayGroup, AbstractControls, ArrayStateGroup, FormArrayProps, SubscriberControl, ValidatorArrayFn } from '../types';
3
- type FormControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractControls<T>;
4
- type ArrayProps<G extends FormControls, R> = FormArrayProps<G, R, AbstractArrayGroup<G, R>>;
5
- type SubscriberArray<G extends FormControls> = SubscriberControl<ArrayStateGroup<G>[]>;
6
- export declare class FormArray<G extends FormControls = FormControls, R = any> implements AbstractArray<G, R> {
2
+ import { AbstractArray, AbstractArrayGroup, ArrayFormControls, ArrayStateGroup, FormArrayOptions, SubscriberArray, ValidatorArrayFn } from '../types';
3
+ type ArrayOptions<C extends ArrayFormControls, R> = FormArrayOptions<C, R, AbstractArrayGroup<C, R>>;
4
+ export declare class FormArray<C extends ArrayFormControls = ArrayFormControls, R = any> implements AbstractArray<C, R> {
7
5
  private currentGroups;
8
6
  private initialState?;
9
7
  private currentValid;
@@ -13,10 +11,10 @@ export declare class FormArray<G extends FormControls = FormControls, R = any> i
13
11
  private observable;
14
12
  private unsusbcriptions;
15
13
  constructor();
16
- constructor(props: ArrayProps<G, R>);
17
- constructor(groups: AbstractArrayGroup<G, R>[], validators?: ValidatorArrayFn<G, R>[]);
18
- get groups(): AbstractArrayGroup<G, R>[];
19
- get controls(): G[];
14
+ constructor(options: ArrayOptions<C, R>);
15
+ constructor(groups: AbstractArrayGroup<C, R>[], validators?: ValidatorArrayFn<C, R>[]);
16
+ get groups(): AbstractArrayGroup<C, R>[];
17
+ get controls(): C[];
20
18
  get touched(): boolean;
21
19
  get toucheds(): boolean;
22
20
  get untouched(): boolean;
@@ -27,22 +25,22 @@ export declare class FormArray<G extends FormControls = FormControls, R = any> i
27
25
  get pristines(): boolean;
28
26
  get valid(): boolean;
29
27
  get invalid(): boolean;
30
- get state(): ArrayStateGroup<G>[];
28
+ get state(): ArrayStateGroup<C>[];
31
29
  get error(): ValidatorError | undefined;
32
30
  get errors(): ValidatorError[];
33
31
  get wrong(): boolean;
34
32
  reset(): void;
35
- push(group: AbstractArrayGroup<G, R>): void;
36
- merge(groups: AbstractArrayGroup<G, R>[]): void;
37
- set(groups: AbstractArrayGroup<G, R>[]): void;
38
- remove({ uuid }: AbstractArrayGroup<G, R>): void;
39
- setValidators(validators: ValidatorArrayFn<G, R>[]): void;
40
- subscribe(subscriber: SubscriberArray<G>): Unsubscription;
33
+ push(group: AbstractArrayGroup<C, R>): void;
34
+ merge(groups: AbstractArrayGroup<C, R>[]): void;
35
+ set(groups: AbstractArrayGroup<C, R>[]): void;
36
+ remove({ uuid }: AbstractArrayGroup<C, R>): void;
37
+ setValidators(validators: ValidatorArrayFn<C, R>[]): void;
38
+ subscribe(subscriber: SubscriberArray<C>): Unsubscription;
41
39
  private subscription;
42
40
  private updateValidityStatus;
43
41
  private refresh;
44
42
  }
45
- export declare function formArray<G extends FormControls = FormControls, R = any>(): FormArray<G, R>;
46
- export declare function formArray<G extends FormControls = FormControls, R = any>(props: ArrayProps<G, R>): FormArray<G, R>;
47
- export declare function formArray<G extends FormControls = FormControls, R = any>(groups: AbstractArrayGroup<G, R>[], validators?: ValidatorArrayFn<G, R>[]): FormArray<G, R>;
43
+ export declare function formArray<G extends ArrayFormControls = ArrayFormControls, R = any>(): FormArray<G, R>;
44
+ export declare function formArray<G extends ArrayFormControls = ArrayFormControls, R = any>(options: ArrayOptions<G, R>): FormArray<G, R>;
45
+ export declare function formArray<G extends ArrayFormControls = ArrayFormControls, R = any>(groups: AbstractArrayGroup<G, R>[], validators?: ValidatorArrayFn<G, R>[]): FormArray<G, R>;
48
46
  export {};
@@ -1,12 +1,12 @@
1
1
  import { observable } from '@rolster/commons';
2
- import { createFormArrayProps } from '../arguments';
2
+ import { createFormArrayOptions } from '../arguments';
3
3
  import { arrayIsValid, groupAllChecked, groupPartialChecked } from '../helpers';
4
4
  export class FormArray {
5
- constructor(arrayProps, arrayValidators) {
5
+ constructor(arrayOptions, arrayValidators) {
6
6
  this.currentGroups = [];
7
7
  this.currentValid = true;
8
8
  this.currentErrors = [];
9
- const { groups, validators } = createFormArrayProps(arrayProps, arrayValidators);
9
+ const { groups, validators } = createFormArrayOptions(arrayOptions, arrayValidators);
10
10
  this.unsusbcriptions = new Map();
11
11
  this.initialState = groups;
12
12
  this.validators = validators;
@@ -121,7 +121,7 @@ export class FormArray {
121
121
  this.updateValidityStatus(groups, this.validators);
122
122
  }
123
123
  }
124
- export function formArray(arrayProps, arrayValidators) {
125
- return new FormArray(createFormArrayProps(arrayProps, arrayValidators));
124
+ export function formArray(options, validators) {
125
+ return new FormArray(createFormArrayOptions(options, validators));
126
126
  }
127
127
  //# sourceMappingURL=form-array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-array.js","sourceRoot":"","sources":["../../../src/form-array/form-array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-array.js","sourceRoot":"","sources":["../../../src/form-array/form-array.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { ValidatorError, ValidatorFn } from '@rolster/validators';
2
- import { AbstractControl, FormControlProps, FormStateProps, FormValidatorsProps, SubscriberControl } from './types';
2
+ import { AbstractControl, FormControlOptions, FormStateOptions, FormValidatorsOptions, SubscriberControl } from './types';
3
3
  export declare class FormControl<T = any> implements AbstractControl<T> {
4
4
  private currentFocused;
5
5
  private currentTouched;
@@ -13,7 +13,7 @@ export declare class FormControl<T = any> implements AbstractControl<T> {
13
13
  private validators?;
14
14
  private observable;
15
15
  constructor();
16
- constructor(props: FormControlProps<T>);
16
+ constructor(props: FormControlOptions<T>);
17
17
  constructor(state: T, validators?: ValidatorFn<T>[]);
18
18
  get focused(): boolean;
19
19
  get unfocused(): boolean;
@@ -42,6 +42,6 @@ export declare class FormControl<T = any> implements AbstractControl<T> {
42
42
  private updateValueAndValidity;
43
43
  }
44
44
  export declare function formControl<T>(): FormControl<T | undefined>;
45
- export declare function formControl<T>(props: FormStateProps<T>): FormControl<T>;
46
- export declare function formControl<T>(props: FormValidatorsProps<T>): FormControl<T | undefined>;
45
+ export declare function formControl<T>(options: FormStateOptions<T>): FormControl<T>;
46
+ export declare function formControl<T>(options: FormValidatorsOptions<T>): FormControl<T | undefined>;
47
47
  export declare function formControl<T>(state: T, validators?: ValidatorFn<T>[]): FormControl<T>;
@@ -1,5 +1,5 @@
1
1
  import { observable } from '@rolster/commons';
2
- import { createFormControlProps } from './arguments';
2
+ import { createFormControlOptions } from './arguments';
3
3
  import { controlIsValid } from './helpers';
4
4
  export class FormControl {
5
5
  constructor(controlProps, controlValidators) {
@@ -9,7 +9,7 @@ export class FormControl {
9
9
  this.currentDisabled = false;
10
10
  this.currentValid = true;
11
11
  this.currentErrors = [];
12
- const { state, validators } = createFormControlProps(controlProps, controlValidators);
12
+ const { state, validators } = createFormControlOptions(controlProps, controlValidators);
13
13
  this.observable = observable(state);
14
14
  this.initialState = state;
15
15
  this.validators = validators;
@@ -108,7 +108,7 @@ export class FormControl {
108
108
  }
109
109
  }
110
110
  }
111
- export function formControl(props, validators) {
112
- return new FormControl(createFormControlProps(props, validators));
111
+ export function formControl(options, validators) {
112
+ return new FormControl(createFormControlOptions(options, validators));
113
113
  }
114
114
  //# sourceMappingURL=form-control.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-control.js","sourceRoot":"","sources":["../../src/form-control.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-control.js","sourceRoot":"","sources":["../../src/form-control.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ValidatorError } from '@rolster/validators';
2
- import { AbstractControl, AbstractControls, AbstractFormGroup, FormGroupProps, StateGroup, SubscriberGroup, ValidatorGroupFn } from './types';
3
- export type FormControls<T extends AbstractControl = AbstractControl> = AbstractControls<T>;
2
+ import { AbstractFormGroup, AbstractControls, FormGroupOptions, StateGroup, SubscriberGroup, ValidatorGroupFn, AbstractReactiveControl } from './types';
3
+ export type FormControls<T extends AbstractReactiveControl = AbstractReactiveControl> = AbstractControls<T>;
4
4
  export declare class FormGroup<C extends FormControls = FormControls> implements AbstractFormGroup<C> {
5
5
  protected currentControls: C;
6
6
  private currentError?;
@@ -8,7 +8,7 @@ export declare class FormGroup<C extends FormControls = FormControls> implements
8
8
  private currentValid;
9
9
  private validators?;
10
10
  private observable;
11
- constructor(props: FormGroupProps<C>);
11
+ constructor(options: FormGroupOptions<C>);
12
12
  constructor(controls: C, validators?: ValidatorGroupFn<C>[]);
13
13
  get controls(): C;
14
14
  get touched(): boolean;
@@ -30,5 +30,5 @@ export declare class FormGroup<C extends FormControls = FormControls> implements
30
30
  subscribe(subscriber: SubscriberGroup<C>): Unsubscription;
31
31
  private updateValueAndValidity;
32
32
  }
33
- export declare function formGroup<C extends FormControls = FormControls>(props: FormGroupProps<C>): FormGroup<C>;
33
+ export declare function formGroup<C extends FormControls = FormControls>(options: FormGroupOptions<C>): FormGroup<C>;
34
34
  export declare function formGroup<C extends FormControls = FormControls>(controls: C, validators?: ValidatorGroupFn<C>[]): FormGroup<C>;
@@ -1,11 +1,11 @@
1
1
  import { observable } from '@rolster/commons';
2
- import { createFormGroupProps } from './arguments';
2
+ import { createFormGroupOptions } from './arguments';
3
3
  import { controlsAllChecked, controlsPartialChecked, controlsToState, groupIsValid } from './helpers';
4
4
  export class FormGroup {
5
- constructor(groupProps, groupValidators) {
5
+ constructor(groupOptions, groupValidators) {
6
6
  this.currentErrors = [];
7
7
  this.currentValid = true;
8
- const { controls, validators } = createFormGroupProps(groupProps, groupValidators);
8
+ const { controls, validators } = createFormGroupOptions(groupOptions, groupValidators);
9
9
  this.currentControls = controls;
10
10
  this.validators = validators;
11
11
  this.updateValueAndValidity(controls, validators);
@@ -88,7 +88,7 @@ export class FormGroup {
88
88
  }
89
89
  }
90
90
  }
91
- export function formGroup(groupProps, groupValidators) {
92
- return new FormGroup(createFormGroupProps(groupProps, groupValidators));
91
+ export function formGroup(options, validators) {
92
+ return new FormGroup(createFormGroupOptions(options, validators));
93
93
  }
94
94
  //# sourceMappingURL=form-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-group.js","sourceRoot":"","sources":["../../src/form-group.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-group.js","sourceRoot":"","sources":["../../src/form-group.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,23 @@
1
1
  import { ValidatorError, ValidatorFn } from '@rolster/validators';
2
- import { AbstractArrayGroupControls, AbstractArrayGroup, AbstractBaseControl, AbstractControls, AbstractGroup, AbstractGroupControls, StateGroup, ValidatorArrayFn, ValidatorGroupFn } from './types';
3
- interface ControlValidProps<T> {
2
+ import { AbstractControl, AbstractArrayGroup, AbstractArrayControls, AbstractGroup, AbstractControls, StateGroup, ValidatorArrayFn, ValidatorGroupFn } from './types';
3
+ interface ControlValidOptions<T> {
4
4
  state: T;
5
5
  validators: ValidatorFn<T>[];
6
6
  }
7
- interface GroupValidProps<T extends AbstractGroupControls> {
7
+ interface GroupValidOptions<T extends AbstractControls> {
8
8
  controls: T;
9
9
  validators: ValidatorGroupFn<T>[];
10
10
  }
11
- interface ArrayValidProps<T extends AbstractArrayGroupControls = AbstractArrayGroupControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>> {
11
+ interface ArrayValidOptions<T extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>> {
12
12
  groups: G[];
13
13
  validators: ValidatorArrayFn<T, R>[];
14
14
  }
15
- export declare const controlIsValid: <T>(props: ControlValidProps<T>) => ValidatorError[];
16
- export declare const controlsAllChecked: <T extends AbstractBaseControl<any>>(controls: AbstractControls<T>, props: keyof T) => boolean;
17
- export declare const controlsPartialChecked: <T extends AbstractBaseControl<any>>(controls: AbstractControls<T>, props: keyof T) => boolean;
18
- export declare const controlsToState: <C extends AbstractGroupControls<import("./types").AbstractControl<any>>>(controls: C) => StateGroup<C>;
19
- export declare const groupIsValid: <C extends AbstractGroupControls<import("./types").AbstractControl<any>>>({ controls, validators }: GroupValidProps<C>) => ValidatorError[];
20
- export declare function groupAllChecked<C extends AbstractGroupControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
21
- export declare function groupPartialChecked<C extends AbstractGroupControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
22
- export declare const arrayIsValid: <C extends AbstractArrayGroupControls<import("./types").AbstractArrayControl<any>> = AbstractArrayGroupControls<import("./types").AbstractArrayControl<any>>, R = any>({ groups, validators }: ArrayValidProps<C, R, AbstractArrayGroup<C, R>>) => ValidatorError[];
15
+ export declare const controlIsValid: <T>({ state, validators }: ControlValidOptions<T>) => ValidatorError[];
16
+ export declare const controlsAllChecked: <T extends AbstractControl<any>>(controls: AbstractControls<T>, key: keyof T) => boolean;
17
+ export declare const controlsPartialChecked: <T extends AbstractControl<any>>(controls: AbstractControls<T>, key: keyof T) => boolean;
18
+ export declare const controlsToState: <C extends AbstractControls<AbstractControl<any>>>(controls: C) => StateGroup<C>;
19
+ export declare const groupIsValid: <C extends AbstractControls<AbstractControl<any>>>({ controls, validators }: GroupValidOptions<C>) => ValidatorError[];
20
+ export declare function groupAllChecked<C extends AbstractControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
21
+ export declare function groupPartialChecked<C extends AbstractControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
22
+ export declare const arrayIsValid: <C extends AbstractArrayControls<import("./types").AbstractArrayControl<any>> = AbstractArrayControls<import("./types").AbstractArrayControl<any>>, R = any>({ groups, validators }: ArrayValidOptions<C, R, AbstractArrayGroup<C, R>>) => ValidatorError[];
23
23
  export {};
@@ -1,11 +1,5 @@
1
- const FALSY_VALUE = ['false', 'undefined', '0', 0];
2
- function toBoolean(value) {
3
- return !(!(typeof value !== 'undefined' && value !== null) ||
4
- value === false ||
5
- FALSY_VALUE.includes(value));
6
- }
7
- export const controlIsValid = (props) => {
8
- const { state, validators } = props;
1
+ import { parseBoolean } from '@rolster/commons';
2
+ export const controlIsValid = ({ state, validators }) => {
9
3
  return validators.reduce((errors, validator) => {
10
4
  const error = validator(state);
11
5
  if (error) {
@@ -14,11 +8,11 @@ export const controlIsValid = (props) => {
14
8
  return errors;
15
9
  }, []);
16
10
  };
17
- export const controlsAllChecked = (controls, props) => {
18
- return Object.values(controls).reduce((value, control) => value && toBoolean(control[props]), true);
11
+ export const controlsAllChecked = (controls, key) => {
12
+ return Object.values(controls).reduce((value, control) => value && parseBoolean(control[key]), true);
19
13
  };
20
- export const controlsPartialChecked = (controls, props) => {
21
- return Object.values(controls).reduce((value, control) => value || toBoolean(control[props]), false);
14
+ export const controlsPartialChecked = (controls, key) => {
15
+ return Object.values(controls).reduce((value, control) => value || parseBoolean(control[key]), false);
22
16
  };
23
17
  export const controlsToState = (controls) => {
24
18
  return Object.entries(controls).reduce((result, [key, { state }]) => {
@@ -36,10 +30,10 @@ export const groupIsValid = ({ controls, validators }) => {
36
30
  }, []);
37
31
  };
38
32
  export function groupAllChecked(groups, key) {
39
- return groups.reduce((value, group) => value && toBoolean(group[key]), true);
33
+ return groups.reduce((value, group) => value && parseBoolean(group[key]), true);
40
34
  }
41
35
  export function groupPartialChecked(groups, key) {
42
- return groups.reduce((value, group) => value || toBoolean(group[key]), false);
36
+ return groups.reduce((value, group) => value || parseBoolean(group[key]), false);
43
37
  }
44
38
  export const arrayIsValid = ({ groups, validators }) => {
45
39
  return validators.reduce((errors, validator) => {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { createFormArrayProps, createFormControlProps, createFormGroupProps } from './arguments';
1
+ export { createFormArrayOptions, createFormControlOptions, createFormGroupOptions } from './arguments';
2
2
  export { FormArray, FormArrayControl, FormArrayControls, FormArrayGroup, formArray, formArrayControl, formArrayGroup } from './form-array';
3
3
  export { FormControl, formControl } from './form-control';
4
4
  export { FormControls, FormGroup, formGroup } from './form-group';
package/dist/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- export { createFormArrayProps, createFormControlProps, createFormGroupProps } from './arguments';
1
+ export { createFormArrayOptions, createFormControlOptions, createFormGroupOptions } from './arguments';
2
2
  export { FormArray, FormArrayControl, FormArrayGroup, formArray, formArrayControl, formArrayGroup } from './form-array';
3
3
  export { FormControl, formControl } from './form-control';
4
4
  export { FormGroup, formGroup } from './form-group';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,SAAS,EACT,gBAAgB,EAEhB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAgB,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClE,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,SAAS,EACT,gBAAgB,EAEhB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAgB,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAClE,cAAc,SAAS,CAAC"}
@@ -4,11 +4,12 @@ export interface ValidationFormError<T = any> extends ValidatorError<T> {
4
4
  type: ValidationFormType;
5
5
  }
6
6
  export type SubscriberControl<T> = (state: T) => void;
7
- export interface AbstractBaseControl<T = any> {
7
+ export interface AbstractControl<T = any> {
8
8
  dirty: boolean;
9
9
  errors: ValidatorError[];
10
10
  invalid: boolean;
11
11
  pristine: boolean;
12
+ reset: () => void;
12
13
  touched: boolean;
13
14
  untouched: boolean;
14
15
  valid: boolean;
@@ -16,12 +17,7 @@ export interface AbstractBaseControl<T = any> {
16
17
  error?: ValidatorError;
17
18
  state?: T;
18
19
  }
19
- export type AbstractControls<T extends AbstractBaseControl = AbstractBaseControl> = Record<string, T>;
20
- export interface AbstractControl<T = any> extends AbstractBaseControl<T> {
21
- reset: () => void;
22
- subscribe: (subscriber: SubscriberControl<T>) => Unsubscription;
23
- }
24
- export interface AbstractFunctionalControl<T = any> extends AbstractControl<T> {
20
+ export interface AbstractFormControl<T = any> extends AbstractControl<T> {
25
21
  blur: () => void;
26
22
  disable: () => void;
27
23
  disabled: boolean;
@@ -33,12 +29,13 @@ export interface AbstractFunctionalControl<T = any> extends AbstractControl<T> {
33
29
  touch: () => void;
34
30
  unfocused: boolean;
35
31
  untouch: () => void;
36
- }
37
- export interface AbstractFormControl<T = any> extends AbstractFunctionalControl<T> {
38
32
  setValidators: (validators?: ValidatorFn<T>[]) => void;
39
33
  }
40
- export type AbstractGroupControls<T extends AbstractControl = AbstractControl> = Record<string, T>;
41
- export interface AbstractGroup<T extends AbstractGroupControls = AbstractGroupControls> {
34
+ export interface AbstractReactiveControl<T = any> extends AbstractFormControl<T> {
35
+ subscribe: (subscriber: SubscriberControl<T>) => Unsubscription;
36
+ }
37
+ export type AbstractControls<T extends AbstractControl = AbstractControl> = Record<string, T>;
38
+ export interface AbstractGroup<T extends AbstractControls = AbstractControls> {
42
39
  controls: T;
43
40
  dirty: boolean;
44
41
  dirties: boolean;
@@ -54,34 +51,36 @@ export interface AbstractGroup<T extends AbstractGroupControls = AbstractGroupCo
54
51
  wrong: boolean;
55
52
  error?: ValidatorError;
56
53
  }
57
- export type StateGroup<C extends AbstractGroupControls = AbstractGroupControls> = {
54
+ export type StateGroup<C extends AbstractControls = AbstractControls> = {
58
55
  [K in keyof C]: C[K]['state'];
59
56
  };
60
- export type ValidatorGroupFn<C extends AbstractGroupControls = AbstractGroupControls, V = any> = (controls: C) => ValidatorResult<V>;
61
- export type SubscriberGroup<C extends AbstractGroupControls = AbstractGroupControls> = (state: StateGroup<C>) => void;
62
- export interface AbstractFormGroup<C extends AbstractGroupControls = AbstractGroupControls> extends AbstractGroup<C> {
57
+ export type ValidatorGroupFn<C extends AbstractControls = AbstractControls, V = any> = (controls: C) => ValidatorResult<V>;
58
+ export type SubscriberGroup<C extends AbstractControls = AbstractControls> = (state: StateGroup<C>) => void;
59
+ export interface AbstractFormGroup<C extends AbstractControls = AbstractControls> extends AbstractGroup<C> {
63
60
  reset: () => void;
64
61
  setValidators: (validators: ValidatorGroupFn<C>[]) => void;
65
62
  state: StateGroup<C>;
66
63
  subscribe: (subscriber: SubscriberGroup<C>) => Unsubscription;
67
64
  }
68
- export interface AbstractArrayControl<T = any> extends AbstractFormControl<T> {
65
+ export interface AbstractArrayControl<T = any> extends AbstractReactiveControl<T> {
69
66
  uuid: string;
70
67
  }
71
- export type AbstractArrayGroupControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractControls<T>;
72
- export interface AbstractArrayGroup<C extends AbstractArrayGroupControls, R = any> extends AbstractGroup<C> {
68
+ export type AbstractArrayControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractControls<T>;
69
+ export interface AbstractArrayGroup<C extends AbstractArrayControls, R = any> extends AbstractGroup<C> {
73
70
  setValidators: (validators: ValidatorGroupFn<C>[]) => void;
74
71
  state: ArrayStateGroup<C>;
75
72
  subscribe: (subscriber: SubscriberGroup<C>) => Unsubscription;
76
73
  uuid: string;
77
74
  resource?: R;
78
75
  }
79
- export type ArrayStateGroup<C extends AbstractArrayGroupControls> = {
76
+ export type ArrayStateGroup<C extends AbstractArrayControls> = {
80
77
  [K in keyof C]: C[K]['state'];
81
78
  };
82
- export type ValidatorArrayFn<T extends AbstractArrayGroupControls = AbstractArrayGroupControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>, V = any> = (groups: G[]) => ValidatorResult<V>;
83
- export interface AbstractArray<T extends AbstractArrayGroupControls = AbstractArrayGroupControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>> extends AbstractControl<ArrayStateGroup<T>[]> {
84
- controls: T[];
79
+ export type ValidatorArrayFn<T extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>, V = any> = (groups: G[]) => ValidatorResult<V>;
80
+ export type ArrayFormControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractArrayControls<T>;
81
+ export type SubscriberArray<C extends ArrayFormControls> = SubscriberControl<ArrayStateGroup<C>[]>;
82
+ export interface AbstractArray<C extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> extends AbstractControl<ArrayStateGroup<C>[]> {
83
+ controls: C[];
85
84
  dirties: boolean;
86
85
  groups: G[];
87
86
  merge: (groups: G[]) => void;
@@ -89,30 +88,30 @@ export interface AbstractArray<T extends AbstractArrayGroupControls = AbstractAr
89
88
  push: (group: G) => void;
90
89
  remove: (group: G) => void;
91
90
  set: (groups: G[]) => void;
92
- setValidators: (validators: ValidatorArrayFn<T, R>[]) => void;
93
- state: ArrayStateGroup<T>[];
91
+ setValidators: (validators: ValidatorArrayFn<C, R>[]) => void;
92
+ subscribe: (subscriber: SubscriberArray<C>) => Unsubscription;
94
93
  toucheds: boolean;
95
94
  untoucheds: boolean;
96
95
  wrong: boolean;
97
96
  }
98
- export interface FormControlProps<T = any> {
97
+ export interface FormControlOptions<T = any> {
99
98
  state: T;
100
99
  validators?: ValidatorFn<T>[];
101
100
  }
102
- export type FormStateProps<T> = Omit<FormControlProps<T>, 'validators'>;
103
- export type FormValidatorsProps<T> = Omit<FormControlProps<T>, 'state'>;
104
- export interface FormGroupProps<C extends AbstractGroupControls = AbstractGroupControls> {
101
+ export type FormStateOptions<T> = Omit<FormControlOptions<T>, 'validators'>;
102
+ export type FormValidatorsOptions<T> = Omit<FormControlOptions<T>, 'state'>;
103
+ export interface FormGroupOptions<C extends AbstractControls = AbstractControls> {
105
104
  controls: C;
106
105
  validators?: ValidatorGroupFn<C>[];
107
106
  }
108
- export interface FormArrayControlProps<T = any> extends FormControlProps<T> {
107
+ export interface FormArrayControlOptions<T = any> extends FormControlOptions<T> {
109
108
  uuid: string;
110
109
  }
111
- export interface FormArrayGroupProps<C extends AbstractArrayGroupControls = AbstractArrayGroupControls, R = any> extends FormGroupProps<C> {
110
+ export interface FormArrayGroupOptions<C extends AbstractArrayControls = AbstractArrayControls, R = any> extends FormGroupOptions<C> {
112
111
  uuid: string;
113
112
  resource?: R;
114
113
  }
115
- export interface FormArrayProps<C extends AbstractArrayGroupControls = AbstractArrayGroupControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> {
114
+ export interface FormArrayOptions<C extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> {
116
115
  groups?: G[];
117
116
  validators?: ValidatorArrayFn<C, R>[];
118
117
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rolster/forms",
3
- "version": "2.1.0",
3
+ "version": "2.2.1",
4
4
  "description": "It implements a set of classes that allow managing the control of states of the input components of the UI.",
5
5
  "module": "dist/esm/index.js",
6
6
  "main": "dist/cjs/index.js",