@rolster/forms 2.6.4 → 2.7.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.
- package/dist/cjs/arguments.js +27 -25
- package/dist/cjs/arguments.js.map +1 -1
- package/dist/cjs/index.js +205 -171
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/arguments.js +27 -25
- package/dist/es/arguments.js.map +1 -1
- package/dist/es/index.js +204 -172
- package/dist/es/index.js.map +1 -1
- package/dist/esm/arguments.d.ts +4 -4
- package/dist/esm/arguments.js +27 -25
- package/dist/esm/arguments.js.map +1 -1
- package/dist/esm/form-array/arguments.d.ts +6 -0
- package/dist/esm/form-array/arguments.js +2 -0
- package/dist/esm/form-array/arguments.js.map +1 -0
- package/dist/esm/form-array/form-array-control.d.ts +3 -3
- package/dist/esm/form-array/form-array-list.d.ts +14 -0
- package/dist/esm/form-array/form-array-list.js +32 -0
- package/dist/esm/form-array/form-array-list.js.map +1 -0
- package/dist/esm/form-array/form-array.d.ts +2 -2
- package/dist/esm/form-array/index.d.ts +3 -2
- package/dist/esm/form-array/index.js +2 -1
- package/dist/esm/form-array/index.js.map +1 -1
- package/dist/esm/form-control.d.ts +16 -15
- package/dist/esm/form-control.js +2 -2
- package/dist/esm/form-control.js.map +1 -1
- package/dist/esm/form-group.d.ts +2 -2
- package/dist/esm/helpers.d.ts +2 -2
- package/dist/esm/helpers.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types.d.ts +18 -11
- package/package.json +1 -1
package/dist/esm/arguments.js
CHANGED
|
@@ -1,45 +1,47 @@
|
|
|
1
|
-
function
|
|
2
|
-
return (typeof
|
|
1
|
+
function itIsControlOptions(options) {
|
|
2
|
+
return (typeof options === 'object' &&
|
|
3
|
+
('value' in options || 'validators' in options));
|
|
3
4
|
}
|
|
4
|
-
function
|
|
5
|
-
return typeof
|
|
5
|
+
function itIsGroupOptions(options) {
|
|
6
|
+
return typeof options === 'object' && 'controls' in options;
|
|
6
7
|
}
|
|
7
|
-
function
|
|
8
|
-
return (typeof
|
|
8
|
+
function itIsArrayOptions(options) {
|
|
9
|
+
return (typeof options === 'object' &&
|
|
10
|
+
('groups' in options || 'validators' in options));
|
|
9
11
|
}
|
|
10
|
-
export function createFormControlOptions(...
|
|
11
|
-
const [
|
|
12
|
-
if (!
|
|
13
|
-
return { value:
|
|
12
|
+
export function createFormControlOptions(...controlOptions) {
|
|
13
|
+
const [options, validators] = controlOptions;
|
|
14
|
+
if (!options) {
|
|
15
|
+
return { value: options, validators };
|
|
14
16
|
}
|
|
15
|
-
if (!validators &&
|
|
16
|
-
return
|
|
17
|
+
if (!validators && itIsControlOptions(options)) {
|
|
18
|
+
return options;
|
|
17
19
|
}
|
|
18
20
|
return {
|
|
19
|
-
value:
|
|
21
|
+
value: options,
|
|
20
22
|
validators
|
|
21
23
|
};
|
|
22
24
|
}
|
|
23
|
-
export function createFormGroupOptions(...
|
|
24
|
-
const [
|
|
25
|
-
if (!validators &&
|
|
26
|
-
return
|
|
25
|
+
export function createFormGroupOptions(...groupOptions) {
|
|
26
|
+
const [options, validators] = groupOptions;
|
|
27
|
+
if (!validators && itIsGroupOptions(options)) {
|
|
28
|
+
return options;
|
|
27
29
|
}
|
|
28
30
|
return {
|
|
29
|
-
controls:
|
|
31
|
+
controls: options,
|
|
30
32
|
validators
|
|
31
33
|
};
|
|
32
34
|
}
|
|
33
|
-
export function createFormArrayOptions(...
|
|
34
|
-
const [
|
|
35
|
-
if (!
|
|
36
|
-
return { groups:
|
|
35
|
+
export function createFormArrayOptions(...arrayOptions) {
|
|
36
|
+
const [options, validators] = arrayOptions;
|
|
37
|
+
if (!options) {
|
|
38
|
+
return { groups: options, validators };
|
|
37
39
|
}
|
|
38
|
-
if (!validators &&
|
|
39
|
-
return
|
|
40
|
+
if (!validators && itIsArrayOptions(options)) {
|
|
41
|
+
return options;
|
|
40
42
|
}
|
|
41
43
|
return {
|
|
42
|
-
groups:
|
|
44
|
+
groups: options,
|
|
43
45
|
validators
|
|
44
46
|
};
|
|
45
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../src/arguments.ts"],"names":[],"mappings":"AA+BA,SAAS,
|
|
1
|
+
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../src/arguments.ts"],"names":[],"mappings":"AA+BA,SAAS,kBAAkB,CACzB,OAAY;IAEZ,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,CAAC,OAAO,IAAI,OAAO,IAAI,YAAY,IAAI,OAAO,CAAC,CAChD,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAGvB,OAAY;IACZ,OAAO,OAAO,OAAO,KAAK,QAAQ,IAAI,UAAU,IAAI,OAAO,CAAC;AAC9D,CAAC;AAED,SAAS,gBAAgB,CAKvB,OAAY;IACZ,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,CAAC,QAAQ,IAAI,OAAO,IAAI,YAAY,IAAI,OAAO,CAAC,CACjD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,GAAG,cAAqC;IAExC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,cAAc,CAAC;IAE7C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAO,CAAC;KAC5C;IAED,IAAI,CAAC,UAAU,IAAI,kBAAkB,CAAO,OAAO,CAAC,EAAE;QACpD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO;QACL,KAAK,EAAE,OAAY;QACnB,UAAU;KACN,CAAC;AACT,CAAC;AAED,MAAM,UAAU,sBAAsB,CAGpC,GAAG,YAAiC;IACpC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC;IAE3C,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAO,OAAO,CAAC,EAAE;QAClD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO;QACL,QAAQ,EAAE,OAAY;QACtB,UAAU;KACN,CAAC;AACT,CAAC;AAED,MAAM,UAAU,sBAAsB,CAKpC,GAAG,YAAuC;IAC1C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,YAAY,CAAC;IAE3C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAO,CAAC;KAC7C;IAED,IAAI,CAAC,UAAU,IAAI,gBAAgB,CAAa,OAAO,CAAC,EAAE;QACxD,OAAO,OAAO,CAAC;KAChB;IAED,OAAO;QACL,MAAM,EAAE,OAAqC;QAC7C,UAAU;KACN,CAAC;AACT,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/form-array/arguments.ts"],"names":[],"mappings":""}
|
|
@@ -6,13 +6,13 @@ export declare class FormArrayControl<T = any> extends FormControl<T> implements
|
|
|
6
6
|
readonly uuid: string;
|
|
7
7
|
constructor();
|
|
8
8
|
constructor(options: ArrayControlOptions<T>);
|
|
9
|
-
constructor(
|
|
9
|
+
constructor(value: T, validators?: ValidatorFn<T>[]);
|
|
10
10
|
}
|
|
11
11
|
export type FormArrayVoid<T = any> = FormArrayControl<T | undefined>;
|
|
12
|
-
type
|
|
12
|
+
type ArrayValueOptions<T> = Omit<ArrayControlOptions<T>, 'validators'>;
|
|
13
13
|
type ArrayValidatorsOptions<T> = Omit<ArrayControlOptions<T>, 'value'>;
|
|
14
14
|
export declare function formArrayControl<T>(): FormArrayControl<T | undefined>;
|
|
15
|
-
export declare function formArrayControl<T>(options:
|
|
15
|
+
export declare function formArrayControl<T>(options: ArrayValueOptions<T>): FormArrayControl<T>;
|
|
16
16
|
export declare function formArrayControl<T>(options: ArrayValidatorsOptions<T>): FormArrayControl<T | undefined>;
|
|
17
17
|
export declare function formArrayControl<T>(options: FormArrayControlOptions<T>): FormArrayControl<T>;
|
|
18
18
|
export declare function formArrayControl<T>(value: undefined, validators?: ValidatorFn<T>[]): FormArrayControl<T | undefined>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ValidatorFn } from '@rolster/validators';
|
|
2
|
+
import { FormControl } from '../form-control';
|
|
3
|
+
import { AbstractArrayList, ArrayControlsValue, ArrayListValueToControls } from '../types';
|
|
4
|
+
import { FormArrayControls } from './types';
|
|
5
|
+
export declare class FormArrayList<C extends FormArrayControls = FormArrayControls> extends FormControl<ArrayControlsValue<C>[]> implements AbstractArrayList<C> {
|
|
6
|
+
private valueToControls;
|
|
7
|
+
readonly uuid: string;
|
|
8
|
+
private currentControls;
|
|
9
|
+
constructor(valueToControls: ArrayListValueToControls<C>, value?: ArrayControlsValue<C>[], validators?: ValidatorFn<ArrayControlsValue<C>[]>[]);
|
|
10
|
+
get controls(): C[];
|
|
11
|
+
setValue(values: ArrayControlsValue<C>[]): void;
|
|
12
|
+
private createControls;
|
|
13
|
+
}
|
|
14
|
+
export declare function formArrayList<C extends FormArrayControls = FormArrayControls>(valueToControl: ArrayListValueToControls<C>, value?: ArrayControlsValue<C>[], validators?: ValidatorFn<ArrayControlsValue<C>[]>[]): FormArrayList<C>;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { v4 as uuid } from 'uuid';
|
|
2
|
+
import { FormControl } from '../form-control';
|
|
3
|
+
export class FormArrayList extends FormControl {
|
|
4
|
+
constructor(valueToControls, value, validators) {
|
|
5
|
+
super(value || [], validators);
|
|
6
|
+
this.valueToControls = valueToControls;
|
|
7
|
+
this.currentControls = (value || []).map((value) => this.createControls(value));
|
|
8
|
+
this.uuid = uuid();
|
|
9
|
+
}
|
|
10
|
+
get controls() {
|
|
11
|
+
return this.currentControls;
|
|
12
|
+
}
|
|
13
|
+
setValue(values) {
|
|
14
|
+
this.currentControls = values.map((value) => this.createControls(value));
|
|
15
|
+
super.setValue(values);
|
|
16
|
+
}
|
|
17
|
+
createControls(value) {
|
|
18
|
+
const controls = this.valueToControls(value);
|
|
19
|
+
Object.values(controls).forEach((control) => {
|
|
20
|
+
control.subscribe(() => {
|
|
21
|
+
const { value, validators } = this;
|
|
22
|
+
this.updateValueAndValidity(value, validators);
|
|
23
|
+
this.observable.next(value);
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
return controls;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export function formArrayList(valueToControl, value, validators) {
|
|
30
|
+
return new FormArrayList(valueToControl, value, validators);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=form-array-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form-array-list.js","sourceRoot":"","sources":["../../../src/form-array/form-array-list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAQ9C,MAAM,OAAO,aACX,SAAQ,WAAoC;IAO5C,YACU,eAA4C,EACpD,KAA+B,EAC/B,UAAmD;QAEnD,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;QAJvB,oBAAe,GAAf,eAAe,CAA6B;QAMpD,IAAI,CAAC,eAAe,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACjD,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAC3B,CAAC;QAEF,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;IACrB,CAAC;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEM,QAAQ,CAAC,MAA+B;QAC7C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QACzE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAEO,cAAc,CAAC,KAA4B;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAE7C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC1C,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE;gBACrB,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;gBAEnC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAC3B,cAA2C,EAC3C,KAA+B,EAC/B,UAAmD;IAEnD,OAAO,IAAI,aAAa,CAAC,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ValidatorError } from '@rolster/validators';
|
|
2
|
-
import { AbstractReactiveArray, AbstractReactiveArrayGroup,
|
|
2
|
+
import { AbstractReactiveArray, AbstractReactiveArrayGroup, ArrayControlsValue, FormArrayOptions, SubscriberArray, ValidatorArrayFn } from '../types';
|
|
3
3
|
import { FormArrayControls } from './types';
|
|
4
4
|
type ArrayOptions<C extends FormArrayControls, R> = FormArrayOptions<C, R, AbstractReactiveArrayGroup<C, R>>;
|
|
5
5
|
export declare class FormArray<C extends FormArrayControls = FormArrayControls, R = any> implements AbstractReactiveArray<C, R, AbstractReactiveArrayGroup<C, R>> {
|
|
@@ -29,7 +29,7 @@ export declare class FormArray<C extends FormArrayControls = FormArrayControls,
|
|
|
29
29
|
get enabled(): boolean;
|
|
30
30
|
get valid(): boolean;
|
|
31
31
|
get invalid(): boolean;
|
|
32
|
-
get value():
|
|
32
|
+
get value(): ArrayControlsValue<C>[];
|
|
33
33
|
get error(): ValidatorError | undefined;
|
|
34
34
|
get errors(): ValidatorError[];
|
|
35
35
|
get wrong(): boolean;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export { FormArrayControl, formArrayControl } from './form-array-control';
|
|
1
|
+
export { FormArrayControl, FormArrayVoid, formArrayControl } from './form-array-control';
|
|
3
2
|
export { FormArrayGroup, formArrayGroup } from './form-array-group';
|
|
3
|
+
export { FormArrayList, formArrayList } from './form-array-list';
|
|
4
|
+
export { FormArray, formArray } from './form-array';
|
|
4
5
|
export * from './types';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
export { FormArray, formArray } from './form-array';
|
|
2
1
|
export { FormArrayControl, formArrayControl } from './form-array-control';
|
|
3
2
|
export { FormArrayGroup, formArrayGroup } from './form-array-group';
|
|
3
|
+
export { FormArrayList, formArrayList } from './form-array-list';
|
|
4
|
+
export { FormArray, formArray } from './form-array';
|
|
4
5
|
export * from './types';
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/form-array/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/form-array/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAEhB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,cAAc,SAAS,CAAC"}
|
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
import { Observable } from '@rolster/commons';
|
|
1
2
|
import { ValidatorError, ValidatorFn } from '@rolster/validators';
|
|
2
|
-
import { AbstractReactiveControl, FormControlOptions,
|
|
3
|
+
import { AbstractReactiveControl, FormControlOptions, FormValueOptions, FormValidatorsOptions, SubscriberControl } from './types';
|
|
3
4
|
export declare class FormControl<T = any> implements AbstractReactiveControl<T> {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
5
|
+
protected currentFocused: boolean;
|
|
6
|
+
protected currentTouched: boolean;
|
|
7
|
+
protected currentDirty: boolean;
|
|
8
|
+
protected currentDisabled: boolean;
|
|
9
|
+
protected currentValid: boolean;
|
|
10
|
+
protected initialValue: T;
|
|
11
|
+
protected currentValue: T;
|
|
12
|
+
protected currentError?: ValidatorError;
|
|
13
|
+
protected currentErrors: ValidatorError[];
|
|
14
|
+
protected validators?: ValidatorFn<T>[];
|
|
15
|
+
protected observable: Observable<T>;
|
|
15
16
|
constructor();
|
|
16
|
-
constructor(
|
|
17
|
+
constructor(options: FormControlOptions<T>);
|
|
17
18
|
constructor(value: T, validators?: ValidatorFn<T>[]);
|
|
18
19
|
get focused(): boolean;
|
|
19
20
|
get unfocused(): boolean;
|
|
@@ -40,11 +41,11 @@ export declare class FormControl<T = any> implements AbstractReactiveControl<T>
|
|
|
40
41
|
setValue(value: T): void;
|
|
41
42
|
setValidators(validators?: ValidatorFn<T>[]): void;
|
|
42
43
|
subscribe(subscriber: SubscriberControl<T>): Unsubscription;
|
|
43
|
-
|
|
44
|
+
protected updateValueAndValidity(value: T, validators?: ValidatorFn<T>[]): void;
|
|
44
45
|
}
|
|
45
46
|
export type FormVoid<T = any> = FormControl<T | undefined>;
|
|
46
47
|
export declare function formControl<T>(): FormControl<T | undefined>;
|
|
47
|
-
export declare function formControl<T>(options:
|
|
48
|
+
export declare function formControl<T>(options: FormValueOptions<T>): FormControl<T>;
|
|
48
49
|
export declare function formControl<T>(options: FormValidatorsOptions<T>): FormControl<T | undefined>;
|
|
49
50
|
export declare function formControl<T>(options: FormControlOptions<T>): FormControl<T>;
|
|
50
51
|
export declare function formControl<T>(value: undefined, validators?: ValidatorFn<T>[]): FormControl<T | undefined>;
|
package/dist/esm/form-control.js
CHANGED
|
@@ -2,14 +2,14 @@ import { observable } from '@rolster/commons';
|
|
|
2
2
|
import { createFormControlOptions } from './arguments';
|
|
3
3
|
import { controlIsValid, hasError, someErrors } from './helpers';
|
|
4
4
|
export class FormControl {
|
|
5
|
-
constructor(
|
|
5
|
+
constructor(controlOptions, controlValidators) {
|
|
6
6
|
this.currentFocused = false;
|
|
7
7
|
this.currentTouched = false;
|
|
8
8
|
this.currentDirty = false;
|
|
9
9
|
this.currentDisabled = false;
|
|
10
10
|
this.currentValid = true;
|
|
11
11
|
this.currentErrors = [];
|
|
12
|
-
const { value, validators } = createFormControlOptions(
|
|
12
|
+
const { value, validators } = createFormControlOptions(controlOptions, controlValidators);
|
|
13
13
|
this.observable = observable(value);
|
|
14
14
|
this.initialValue = value;
|
|
15
15
|
this.validators = validators;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-control.js","sourceRoot":"","sources":["../../src/form-control.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AASjE,MAAM,OAAO,WAAW;IA0BtB,YACE,
|
|
1
|
+
{"version":3,"file":"form-control.js","sourceRoot":"","sources":["../../src/form-control.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/form-group.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ValidatorError } from '@rolster/validators';
|
|
2
|
-
import { AbstractControls, AbstractReactiveControl, AbstractReactiveGroup, FormGroupOptions, SubscriberGroup, ValidatorGroupFn
|
|
2
|
+
import { AbstractControls, AbstractReactiveControl, AbstractReactiveGroup, ControlsValue, FormGroupOptions, SubscriberGroup, ValidatorGroupFn } from './types';
|
|
3
3
|
export type FormControls<T extends AbstractReactiveControl = AbstractReactiveControl> = AbstractControls<T>;
|
|
4
4
|
export declare class FormGroup<C extends FormControls = FormControls> implements AbstractReactiveGroup<C> {
|
|
5
5
|
protected currentControls: C;
|
|
@@ -21,7 +21,7 @@ export declare class FormGroup<C extends FormControls = FormControls> implements
|
|
|
21
21
|
get pristineAll(): boolean;
|
|
22
22
|
get valid(): boolean;
|
|
23
23
|
get invalid(): boolean;
|
|
24
|
-
get value():
|
|
24
|
+
get value(): ControlsValue<C>;
|
|
25
25
|
get errors(): ValidatorError[];
|
|
26
26
|
get error(): ValidatorError | undefined;
|
|
27
27
|
get wrong(): boolean;
|
package/dist/esm/helpers.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ValidatorError, ValidatorFn } from '@rolster/validators';
|
|
2
|
-
import { AbstractControl, AbstractArrayGroup, AbstractArrayControls, AbstractGroup, AbstractControls, ValidatorArrayFn, ValidatorGroupFn
|
|
2
|
+
import { AbstractControl, AbstractArrayGroup, AbstractArrayControls, AbstractGroup, AbstractControls, ControlsValue, ValidatorArrayFn, ValidatorGroupFn } from './types';
|
|
3
3
|
interface ControlValidOptions<T> {
|
|
4
4
|
value: T;
|
|
5
5
|
validators: ValidatorFn<T>[];
|
|
@@ -15,7 +15,7 @@ interface ArrayValidOptions<T extends AbstractArrayControls = AbstractArrayContr
|
|
|
15
15
|
export declare const controlIsValid: <T>({ value, validators }: ControlValidOptions<T>) => ValidatorError[];
|
|
16
16
|
export declare const controlsAllChecked: <T extends AbstractControl<any>>(controls: AbstractControls<T>, key: keyof T) => boolean;
|
|
17
17
|
export declare const controlsPartialChecked: <T extends AbstractControl<any>>(controls: AbstractControls<T>, key: keyof T) => boolean;
|
|
18
|
-
export declare const controlsToValue: <C extends AbstractControls<AbstractControl<any>>>(controls: C) =>
|
|
18
|
+
export declare const controlsToValue: <C extends AbstractControls<AbstractControl<any>>>(controls: C) => ControlsValue<C>;
|
|
19
19
|
export declare const groupIsValid: <C extends AbstractControls<AbstractControl<any>>>({ controls, validators }: GroupValidOptions<C>) => ValidatorError[];
|
|
20
20
|
export declare function groupAllChecked<C extends AbstractControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
|
|
21
21
|
export declare function groupPartialChecked<C extends AbstractControls>(groups: AbstractGroup<C>[], key: keyof AbstractGroup<C>): boolean;
|
package/dist/esm/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgChD,SAAS,YAAY,CAAC,MAAwB;IAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,IAAc,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAI,EAChC,KAAK,EACL,UAAU,EACa,EAAoB,EAAE;IAC7C,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAE/B,IAAI,KAAK,EAAE;YACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAsB,CAAC,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,QAA6B,EAC7B,GAAY,EACH,EAAE;IACX,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CACnC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACjB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAChE,IAAI,CACL,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,QAA6B,EAC7B,GAAY,EACH,EAAE;IACX,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CACnC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACjB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAChE,KAAK,CACN,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,QAAW,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { FormArray, FormArrayControl, FormArrayControls, FormArrayGroup, formArray, formArrayControl, formArrayGroup } from './form-array';
|
|
1
|
+
export { FormArray, FormArrayControl, FormArrayControls, FormArrayGroup, FormArrayList, FormArrayVoid, formArray, formArrayControl, formArrayGroup, formArrayList } from './form-array';
|
|
2
2
|
export { FormControl, formControl } from './form-control';
|
|
3
3
|
export { FormControls, FormGroup, formGroup } from './form-group';
|
|
4
4
|
export * from './types';
|
package/dist/esm/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { FormArray, FormArrayControl, FormArrayGroup, formArray, formArrayControl, formArrayGroup } from './form-array';
|
|
1
|
+
export { FormArray, FormArrayControl, FormArrayGroup, FormArrayList, formArray, formArrayControl, formArrayGroup, formArrayList } from './form-array';
|
|
2
2
|
export { FormControl, formControl } from './form-control';
|
|
3
3
|
export { FormGroup, formGroup } from './form-group';
|
|
4
4
|
export * from './types';
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,gBAAgB,EAEhB,cAAc,EACd,SAAS,EACT,gBAAgB,EAChB,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,gBAAgB,EAEhB,cAAc,EACd,aAAa,EAEb,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,aAAa,EACd,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"}
|
package/dist/esm/types.d.ts
CHANGED
|
@@ -52,15 +52,15 @@ export interface AbstractGroup<C extends AbstractControls = AbstractControls> {
|
|
|
52
52
|
readonly wrong: boolean;
|
|
53
53
|
readonly error?: ValidatorError;
|
|
54
54
|
}
|
|
55
|
-
export type
|
|
55
|
+
export type ControlsValue<C extends AbstractControls = AbstractControls> = {
|
|
56
56
|
[K in keyof C]: C[K]['value'];
|
|
57
57
|
};
|
|
58
58
|
export type ValidatorGroupFn<C extends AbstractControls = AbstractControls, V = any> = (controls: C) => ValidatorResult<V>;
|
|
59
|
-
export type SubscriberGroup<C extends AbstractControls = AbstractControls> = (value:
|
|
59
|
+
export type SubscriberGroup<C extends AbstractControls = AbstractControls> = (value: ControlsValue<C>) => void;
|
|
60
60
|
export interface AbstractFormGroup<C extends AbstractControls = AbstractControls> extends AbstractGroup<C> {
|
|
61
61
|
reset: () => void;
|
|
62
62
|
setValidators: (validators: ValidatorGroupFn<C>[]) => void;
|
|
63
|
-
readonly value:
|
|
63
|
+
readonly value: ControlsValue<C>;
|
|
64
64
|
}
|
|
65
65
|
export interface AbstractReactiveGroup<C extends AbstractControls = AbstractControls> extends AbstractFormGroup<C> {
|
|
66
66
|
subscribe: (subscriber: SubscriberGroup<C>) => Unsubscription;
|
|
@@ -72,22 +72,22 @@ export interface AbstractReactiveArrayControl<T = any> extends AbstractArrayCont
|
|
|
72
72
|
subscribe: (subscriber: SubscriberControl<T>) => Unsubscription;
|
|
73
73
|
}
|
|
74
74
|
export type AbstractArrayControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractControls<T>;
|
|
75
|
+
export type ArrayControlsValue<C extends AbstractArrayControls> = {
|
|
76
|
+
[K in keyof C]: C[K]['value'];
|
|
77
|
+
};
|
|
75
78
|
export interface AbstractArrayGroup<C extends AbstractArrayControls, R = any> extends AbstractGroup<C> {
|
|
76
79
|
setValidators: (validators: ValidatorGroupFn<C>[]) => void;
|
|
77
|
-
readonly value: ArrayStateGroup<C>;
|
|
78
80
|
readonly uuid: string;
|
|
81
|
+
readonly value: ArrayControlsValue<C>;
|
|
79
82
|
resource?: R;
|
|
80
83
|
}
|
|
81
84
|
export interface AbstractReactiveArrayGroup<C extends AbstractArrayControls, R = any> extends AbstractArrayGroup<C, R> {
|
|
82
85
|
subscribe: (subscriber: SubscriberGroup<C>) => Unsubscription;
|
|
83
86
|
}
|
|
84
|
-
export type ArrayStateGroup<C extends AbstractArrayControls> = {
|
|
85
|
-
[K in keyof C]: C[K]['value'];
|
|
86
|
-
};
|
|
87
87
|
export type ValidatorArrayFn<T extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<T, R> = AbstractArrayGroup<T, R>, V = any> = (groups: G[]) => ValidatorResult<V>;
|
|
88
88
|
export type ArrayFormControls<T extends AbstractArrayControl = AbstractArrayControl> = AbstractArrayControls<T>;
|
|
89
|
-
export type SubscriberArray<C extends ArrayFormControls> = SubscriberControl<
|
|
90
|
-
export interface AbstractArray<C extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> extends AbstractControl<
|
|
89
|
+
export type SubscriberArray<C extends ArrayFormControls> = SubscriberControl<ArrayControlsValue<C>[]>;
|
|
90
|
+
export interface AbstractArray<C extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> extends AbstractControl<ArrayControlsValue<C>[]> {
|
|
91
91
|
readonly controls: C[];
|
|
92
92
|
readonly dirtyAll: boolean;
|
|
93
93
|
disable: () => void;
|
|
@@ -101,9 +101,13 @@ export interface AbstractArray<C extends AbstractArrayControls = AbstractArrayCo
|
|
|
101
101
|
setValidators: (validators: ValidatorArrayFn<C, R>[]) => void;
|
|
102
102
|
readonly touchedAll: boolean;
|
|
103
103
|
readonly untouchedAll: boolean;
|
|
104
|
-
readonly value:
|
|
104
|
+
readonly value: ArrayControlsValue<C>[];
|
|
105
105
|
readonly wrong: boolean;
|
|
106
106
|
}
|
|
107
|
+
export interface AbstractArrayList<C extends AbstractArrayControls = AbstractArrayControls> extends AbstractArrayControl<ArrayControlsValue<C>[]> {
|
|
108
|
+
controls: C[];
|
|
109
|
+
}
|
|
110
|
+
export type ArrayListValueToControls<C extends AbstractArrayControls = AbstractArrayControls> = (value: ArrayControlsValue<C>) => C;
|
|
107
111
|
export interface AbstractReactiveArray<C extends AbstractArrayControls = AbstractArrayControls, R = any, G extends AbstractArrayGroup<C, R> = AbstractArrayGroup<C, R>> extends AbstractArray<C, R, G> {
|
|
108
112
|
subscribe: (subscriber: SubscriberArray<C>) => Unsubscription;
|
|
109
113
|
}
|
|
@@ -111,7 +115,7 @@ export interface FormControlOptions<T = any> {
|
|
|
111
115
|
value: T;
|
|
112
116
|
validators?: ValidatorFn<T>[];
|
|
113
117
|
}
|
|
114
|
-
export type
|
|
118
|
+
export type FormValueOptions<T> = Omit<FormControlOptions<T>, 'validators'>;
|
|
115
119
|
export type FormValidatorsOptions<T> = Omit<FormControlOptions<T>, 'value'>;
|
|
116
120
|
export interface FormGroupOptions<C extends AbstractControls = AbstractControls> {
|
|
117
121
|
controls: C;
|
|
@@ -120,6 +124,9 @@ export interface FormGroupOptions<C extends AbstractControls = AbstractControls>
|
|
|
120
124
|
export interface FormArrayControlOptions<T = any> extends FormControlOptions<T> {
|
|
121
125
|
uuid: string;
|
|
122
126
|
}
|
|
127
|
+
export interface FormArrayListOptions<C extends AbstractArrayControls = AbstractArrayControls> extends FormArrayControlOptions<ArrayControlsValue<C>[]> {
|
|
128
|
+
valueToControl: ArrayListValueToControls<C>;
|
|
129
|
+
}
|
|
123
130
|
export interface FormArrayGroupOptions<C extends AbstractArrayControls = AbstractArrayControls, R = any> extends FormGroupOptions<C> {
|
|
124
131
|
uuid: string;
|
|
125
132
|
resource?: R;
|
package/package.json
CHANGED