@goodie-forms/core 1.2.5-alpha → 1.2.6-alpha

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 (43) hide show
  1. package/dist/field/FieldPath.d.ts +18 -9
  2. package/dist/field/FieldPath.d.ts.map +1 -1
  3. package/dist/field/FieldPathBuilder.d.ts +2 -2
  4. package/dist/field/FieldPathBuilder.d.ts.map +1 -1
  5. package/dist/field/Reconcile.d.ts +2 -2
  6. package/dist/field/Reconcile.d.ts.map +1 -1
  7. package/dist/form/FormController.d.ts +51 -20
  8. package/dist/form/FormController.d.ts.map +1 -1
  9. package/dist/form/FormField.d.ts +15 -10
  10. package/dist/form/FormField.d.ts.map +1 -1
  11. package/dist/index.d.ts +2 -2
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +523 -476
  14. package/dist/index.js.map +1 -1
  15. package/dist/types/DeepHelpers.d.ts +11 -0
  16. package/dist/types/DeepHelpers.d.ts.map +1 -0
  17. package/dist/types/FormHelpers.d.ts +5 -0
  18. package/dist/types/FormHelpers.d.ts.map +1 -0
  19. package/dist/types/Suppliable.d.ts +3 -0
  20. package/dist/types/Suppliable.d.ts.map +1 -0
  21. package/dist/validation/CustomValidation.d.ts +1 -1
  22. package/package.json +13 -3
  23. package/src/field/FieldPath.spec.ts +204 -0
  24. package/src/field/FieldPath.ts +62 -59
  25. package/src/field/FieldPathBuilder.spec.ts +47 -0
  26. package/src/field/FieldPathBuilder.ts +15 -81
  27. package/src/field/Reconcile.ts +2 -2
  28. package/src/form/FormController.spec.ts +55 -0
  29. package/src/form/FormController.ts +151 -115
  30. package/src/form/FormField.ts +63 -30
  31. package/src/index.ts +2 -2
  32. package/src/types/DeepHelpers.ts +15 -0
  33. package/src/types/FormHelpers.ts +13 -0
  34. package/src/types/Suppliable.ts +7 -0
  35. package/src/validation/CustomValidation.ts +1 -1
  36. package/dist/form/NonullFormField.d.ts +0 -9
  37. package/dist/form/NonullFormField.d.ts.map +0 -1
  38. package/dist/types/DeepPartial.d.ts +0 -6
  39. package/dist/types/DeepPartial.d.ts.map +0 -1
  40. package/src/form/NonullFormField.ts +0 -15
  41. package/src/types/DeepPartial.ts +0 -7
  42. package/tsconfig.json +0 -8
  43. package/vite.config.ts +0 -18
@@ -1,20 +1,19 @@
1
1
  export declare namespace FieldPath {
2
2
  export type Segments = readonly PropertyKey[];
3
- export type CanonicalPath = string;
4
3
  export type StringPath = string;
5
- export function toCanonicalPath(path: Segments): CanonicalPath;
6
4
  export function toStringPath(path: Segments): string;
7
5
  export function fromStringPath<TStrPath extends string>(stringPath: TStrPath): FieldPath.ParseStringPath<TStrPath>;
8
6
  export function normalize<T extends readonly any[] | undefined>(path: T): Segments;
9
7
  export function equals(path1?: Segments, path2?: Segments): boolean;
10
8
  export function isDescendant(parentPath: Segments, childPath: Segments): boolean;
11
- type Unfoldable<T> = T & {
9
+ /** @internal used to mark and prevent array types, so IntellSense can suggest and accept array indices */
10
+ export type _Unfoldable<T> = T & {
12
11
  _____foldMark?: never;
13
12
  } & {};
14
- export type Resolve<TObject, TPath extends readonly PropertyKey[]> = TPath extends [] ? TObject : TPath extends readonly [infer Prop, ...infer Rest] ? Rest extends readonly PropertyKey[] ? Resolve<ResolveStep<TObject, Prop>, Rest> : never : never;
13
+ export type Resolve<TObject, TPath extends Segments> = TPath extends [] ? TObject : TPath extends readonly [infer Prop, ...infer Rest] ? Rest extends Segments ? Resolve<ResolveStep<TObject, Prop>, Rest> : never : never;
15
14
  type ResolveStep<TObject, TKey> = NonNullable<TObject> extends infer U ? U extends readonly unknown[] ? number extends U["length"] ? TKey extends number | `${number}` ? U[number] : never : TKey extends keyof U ? U[TKey] : TKey extends `${infer N extends number}` ? U[N] : never : TKey extends keyof U ? U[TKey] : never : never;
16
15
  export type StringPaths<TObject extends object> = StringPathsImpl<CanonicalStringPaths<TObject>>;
17
- type StringPathsImpl<TCanonicalStringPaths extends string> = TCanonicalStringPaths extends `${string}[*]${string}` ? ReplaceAll<TCanonicalStringPaths, "[*]", "[0]"> | Unfoldable<ReplaceAll<TCanonicalStringPaths, "[*]", `[${number}]`>> : TCanonicalStringPaths;
16
+ type StringPathsImpl<TCanonicalStringPaths extends string> = TCanonicalStringPaths extends `${string}[*]${string}` ? ReplaceAll<TCanonicalStringPaths, "[*]", "[0]"> | _Unfoldable<ReplaceAll<TCanonicalStringPaths, "[*]", `[${number}]`>> : TCanonicalStringPaths;
18
17
  type CanonicalStringPaths<TObject extends object> = {
19
18
  [K in keyof TObject & string]: NonNullable<TObject[K]> extends (...args: any[]) => any ? never : NonNullable<TObject[K]> extends (infer U)[] ? U extends object ? K | `${K}[*]` | `${K}[*].${CanonicalStringPaths<NonNullable<U>>}` : K | `${K}[*]` : NonNullable<TObject[K]> extends object ? K | `${K}.${CanonicalStringPaths<NonNullable<TObject[K]>>}` : K;
20
19
  }[keyof TObject & string];
@@ -23,10 +22,20 @@ export declare namespace FieldPath {
23
22
  type ParseStringPathImpl<TStrPath extends string, TPath extends PropertyKey[]> = TStrPath extends "" ? TPath : TStrPath extends `.${infer Rest}` ? ParseStringPathImpl<Rest, TPath> : TStrPath extends `[${infer Bracket}]${infer Rest}` ? ParseStringPathImpl<Rest, [...TPath, ParseBracket<Bracket>]> : TStrPath extends `${infer Head}.${infer Rest}` ? ParseStringPathImpl<Rest, [...TPath, Head]> : TStrPath extends `${infer Head}[${infer Tail}` ? ParseStringPathImpl<`[${Tail}`, [...TPath, Head]> : [...TPath, TStrPath];
24
23
  type NormalizeStrPath<TStringPath extends string> = TStringPath extends `${infer A}[${infer B}]${infer Rest}` ? NormalizeStrPath<`${A}.${B}${Rest}`> : TStringPath extends `.${infer R}` ? NormalizeStrPath<R> : TStringPath;
25
24
  type ParseBracket<TString extends string> = TString extends `${infer N extends number}` ? N : TString extends `"${infer K}"` ? K : TString extends `'${infer K}'` ? K : never;
26
- export function getValue<TObject extends object, const TPath extends readonly PropertyKey[]>(object: TObject, path: TPath): FieldPath.Resolve<TObject, TPath> | undefined;
27
- export function setValue<TObject extends object, const TPath extends readonly PropertyKey[]>(object: TObject, key: TPath, value: FieldPath.Resolve<TObject, TPath>): void;
28
- export function modifyValue<TObject extends object, const TPath extends readonly PropertyKey[]>(object: TObject, path: TPath, modifier: (currentValue: FieldPath.Resolve<TObject, TPath>) => FieldPath.Resolve<TObject, TPath> | void): void;
29
- export function deleteValue<TObject extends object, TPath extends readonly PropertyKey[]>(object: TObject, path: TPath): void;
25
+ export function walkPath<TObject extends object, const TPath extends FieldPath.Segments>(object: TObject, path: TPath): {
26
+ target: any;
27
+ key: PropertyKey;
28
+ };
29
+ export function walkPath<TObject extends object, const TPath extends FieldPath.Segments>(object: TObject, path: TPath, opts: {
30
+ returnOnEmptyBranch: true;
31
+ }): {
32
+ target: any;
33
+ key: PropertyKey | null;
34
+ };
35
+ export function getValue<TObject extends object, const TPath extends Segments>(object: TObject, path: TPath): FieldPath.Resolve<TObject, TPath> | undefined;
36
+ export function setValue<TObject extends object, const TPath extends Segments>(object: TObject, path: TPath, value: FieldPath.Resolve<TObject, TPath>): void;
37
+ export function modifyValue<TObject extends object, const TPath extends Segments>(object: TObject, path: TPath, modifier: (currentValue: FieldPath.Resolve<TObject, TPath> | undefined) => void): void;
38
+ export function deleteValue<TObject extends object, TPath extends Segments>(object: TObject, path: TPath): void;
30
39
  export {};
31
40
  }
32
41
  //# sourceMappingURL=FieldPath.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPath.d.ts","sourceRoot":"","sources":["../../src/field/FieldPath.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldPath.d.ts","sourceRoot":"","sources":["../../src/field/FieldPath.ts"],"names":[],"mappings":"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"}
@@ -18,8 +18,8 @@ export declare namespace FieldPathBuilder {
18
18
  }
19
19
  export declare class FieldPathBuilder<TOutput extends object> {
20
20
  protected static wrap<TObject extends object, TPath extends readonly PropertyKey[]>(paths: TPath): FieldPathBuilder.Proxy<TObject, TPath>;
21
- fromStringPath<TStrPath extends FieldPath.StringPaths<TOutput>>(stringPath: TStrPath): FieldPath.ParseStringPath<TStrPath>;
22
- fromProxy<TProxy extends FieldPathBuilder.Proxy<any, any>>(consumer: (data: FieldPathBuilder.Proxy<TOutput, []>) => TProxy): TProxy[typeof resolverCall];
21
+ of<TStrPath extends FieldPath.StringPaths<TOutput>>(stringPath: TStrPath): FieldPath.ParseStringPath<TStrPath>;
22
+ of<TProxy extends FieldPathBuilder.Proxy<any, any>>(consumer: (data: FieldPathBuilder.Proxy<TOutput, []>) => TProxy): TProxy[typeof resolverCall];
23
23
  }
24
24
  export {};
25
25
  //# sourceMappingURL=FieldPathBuilder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPathBuilder.d.ts","sourceRoot":"","sources":["../../src/field/FieldPathBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,QAAA,MAAM,YAAY,eAAyB,CAAC;AAE5C,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,KAAK,CAAC,OAAO,EAAE,KAAK,SAAS,SAAS,WAAW,EAAE,IAC7D,WAAW,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAC7C;SACG,CAAC,IAAI,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;KACpD,GAAG;QACF,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,GACD,WAAW,CAAC,OAAO,CAAC,SAAS,MAAM,GACjC;SACG,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,GAAG,KAAK,CAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACvB;YAAC,GAAG,KAAK;YAAE,CAAC;SAAC,CACd;KACF,GAAG;QACF,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,GACD;QACE,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,CAAC;CACX;AAED,qBAAa,gBAAgB,CAAC,OAAO,SAAS,MAAM;IAClD,SAAS,CAAC,MAAM,CAAC,IAAI,CACnB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;IAgBhD,cAAc,CAAC,QAAQ,SAAS,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,EACnE,UAAU,EAAE,QAAQ,GAIJ,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC;IAG9C,SAAS,CAAC,MAAM,SAAS,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAC9D,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,MAAM,GAC9D,MAAM,CAAC,OAAO,YAAY,CAAC;CAG/B"}
1
+ {"version":3,"file":"FieldPathBuilder.d.ts","sourceRoot":"","sources":["../../src/field/FieldPathBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,QAAA,MAAM,YAAY,eAAyB,CAAC;AAE5C,yBAAiB,gBAAgB,CAAC;IAChC,KAAY,KAAK,CAAC,OAAO,EAAE,KAAK,SAAS,SAAS,WAAW,EAAE,IAC7D,WAAW,CAAC,OAAO,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAC7C;SACG,CAAC,IAAI,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;KACpD,GAAG;QACF,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,GACD,WAAW,CAAC,OAAO,CAAC,SAAS,MAAM,GACjC;SACG,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,GAAG,KAAK,CAC3B,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACvB;YAAC,GAAG,KAAK;YAAE,CAAC;SAAC,CACd;KACF,GAAG;QACF,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,GACD;QACE,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;KACvB,CAAC;CACX;AAED,qBAAa,gBAAgB,CAAC,OAAO,SAAS,MAAM;IAClD,SAAS,CAAC,MAAM,CAAC,IAAI,CACnB,OAAO,SAAS,MAAM,EACtB,KAAK,SAAS,SAAS,WAAW,EAAE,EACpC,KAAK,EAAE,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC;IAgBhD,EAAE,CAAC,QAAQ,SAAS,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,EACvD,UAAU,EAAE,QAAQ,GACnB,SAAS,CAAC,eAAe,CAAC,QAAQ,CAAC;IAE/B,EAAE,CAAC,MAAM,SAAS,gBAAgB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EACvD,QAAQ,EAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,MAAM,GAC9D,MAAM,CAAC,OAAO,YAAY,CAAC;CAa/B"}
@@ -1,6 +1,6 @@
1
- export declare namespace Reconsile {
1
+ export declare namespace Reconcile {
2
2
  function deepEqual(a: any, b: any, customComparator?: (a: any, b: any) => boolean | undefined): boolean;
3
- function diff<T>(prev: readonly T[], next: readonly T[], equals: (a: T, b: T) => boolean, filter?: (a: T) => boolean): {
3
+ function arrayDiff<T>(prev: readonly T[], next: readonly T[], equals: (a: T, b: T) => boolean, filter?: (a: T) => boolean): {
4
4
  added: T[];
5
5
  removed: T[];
6
6
  unchanged: T[];
@@ -1 +1 @@
1
- {"version":3,"file":"Reconcile.d.ts","sourceRoot":"","sources":["../../src/field/Reconcile.ts"],"names":[],"mappings":"AAAA,yBAAiB,SAAS,CAAC;IACzB,SAAgB,SAAS,CACvB,CAAC,EAAE,GAAG,EACN,CAAC,EAAE,GAAG,EACN,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAAO,GAAG,SAAS,WAkE3D;IAED,SAAgB,IAAI,CAAC,CAAC,EACpB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,EAC/B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO;;;;MAqB3B;CACF"}
1
+ {"version":3,"file":"Reconcile.d.ts","sourceRoot":"","sources":["../../src/field/Reconcile.ts"],"names":[],"mappings":"AAAA,yBAAiB,SAAS,CAAC;IACzB,SAAgB,SAAS,CACvB,CAAC,EAAE,GAAG,EACN,CAAC,EAAE,GAAG,EACN,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,OAAO,GAAG,SAAS,WAkE3D;IAED,SAAgB,SAAS,CAAC,CAAC,EACzB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,EAC/B,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO;;;;MAqB3B;CACF"}
@@ -1,64 +1,95 @@
1
1
  import { StandardSchemaV1 } from '@standard-schema/spec';
2
2
  import { FieldPath } from '../field/FieldPath';
3
+ import { FieldPathBuilder } from '../field/FieldPathBuilder';
3
4
  import { FormField } from '../form/FormField';
4
- import { DeepPartial } from '../types/DeepPartial';
5
+ import { DeepPartial, DeepReadonly } from '../types/DeepHelpers';
6
+ import { Suppliable } from '../types/Suppliable';
5
7
  export declare namespace FormController {
6
8
  type Configs<TOutput extends object> = {
7
9
  initialData?: DeepPartial<TOutput>;
8
10
  validationSchema?: StandardSchemaV1<unknown, TOutput>;
9
- equalityComparators?: Record<any, (a: any, b: any) => boolean>;
11
+ equalityComparators?: Map<any, (a: any, b: any) => boolean>;
10
12
  };
11
13
  interface PreventableEvent {
12
14
  preventDefault(): void;
13
15
  }
14
- type SubmitSuccessHandler<TOutput extends object, TEvent extends PreventableEvent> = (data: TOutput, event: TEvent, abortSignal: AbortSignal) => void | Promise<void>;
15
- type SubmitErrorHandler<TEvent extends PreventableEvent> = (issues: StandardSchemaV1.Issue[], event: TEvent, abortSignal: AbortSignal) => void | Promise<void>;
16
+ type SubmitSuccessHandler<TOutput extends object, TEvent extends PreventableEvent | null | undefined> = (data: DeepReadonly<TOutput>, event: TEvent) => void | Promise<void>;
17
+ type SubmitErrorHandler<TEvent extends PreventableEvent | null | undefined> = (issues: StandardSchemaV1.Issue[], event: TEvent) => void | Promise<void>;
16
18
  }
17
19
  export declare class FormController<TOutput extends object> {
18
- _isValidating: boolean;
19
- _isSubmitting: boolean;
20
+ private _isValidating;
21
+ private _isSubmitting;
22
+ private _triedSubmitting;
23
+ private pathBuilder;
24
+ /** @internal use `this.getFields` instead */
20
25
  _fields: Map<string, FormField<TOutput, any>>;
26
+ /** @internal use `this.initialData` instead */
21
27
  _initialData: DeepPartial<TOutput>;
28
+ /** @internal use `this.data` instead */
22
29
  _data: DeepPartial<TOutput>;
30
+ /** @internal use `this.issues` instead */
23
31
  _issues: StandardSchemaV1.Issue[];
24
- equalityComparators?: Record<any, (a: any, b: any) => boolean>;
32
+ equalityComparators?: Map<any, (a: any, b: any) => boolean>;
25
33
  validationSchema?: StandardSchemaV1<unknown, TOutput>;
26
34
  readonly events: import('nanoevents').Emitter<{
35
+ /** Emitted when `this.isSubmitting` changes */
27
36
  submissionStatusChange(isSubmitting: boolean): void;
37
+ /** Emitted when `this.isValidating` changes */
28
38
  validationStatusChange(isValidating: boolean): void;
29
- fieldBound(fieldPath: FieldPath.Segments): void;
30
- fieldUnbound(fieldPath: FieldPath.Segments): void;
39
+ /** Emitted when a field is registered */
40
+ fieldRegistered(fieldPath: FieldPath.Segments): void;
41
+ /** Emitted when a field is unregistered */
42
+ fieldUnregistered(fieldPath: FieldPath.Segments): void;
43
+ /** Emitted when a field's `isTouched` changes */
31
44
  fieldTouchUpdated(path: FieldPath.Segments): void;
45
+ /** Emitted when a field's `isDirty` changes */
32
46
  fieldDirtyUpdated(path: FieldPath.Segments): void;
47
+ /** Emitted when a field's `issues` changes */
33
48
  fieldIssuesUpdated(fieldPath: FieldPath.Segments): void;
49
+ /** Emitted when a field's `reset()` is invoked */
50
+ fieldReset(fieldPath: FieldPath.Segments): void;
51
+ /** Emitted when a HTMLELement is bound to a field */
34
52
  elementBound(fieldPath: FieldPath.Segments, el: HTMLElement): void;
53
+ /** Emitted when a HTMLELement is unbound from a field */
35
54
  elementUnbound(fieldPath: FieldPath.Segments): void;
36
- validationTriggered(fieldPath: FieldPath.Segments): void;
37
- valueChanged(fieldPath: FieldPath.Segments, newValue: {} | undefined, oldValue: {} | undefined): void;
55
+ /** Emitted when validation is triggered on a field */
56
+ fieldValidationTriggered(fieldPath: FieldPath.Segments): void;
57
+ /** Emitted when a field's `value` is updated */
58
+ fieldValueChanged(fieldPath: FieldPath.Segments, newValue: {} | undefined, oldValue: {} | undefined): void;
38
59
  }>;
39
60
  constructor(config: FormController.Configs<TOutput>);
61
+ get data(): DeepReadonly<DeepPartial<TOutput>>;
62
+ get initialData(): DeepReadonly<DeepPartial<TOutput>>;
63
+ get issues(): readonly StandardSchemaV1.Issue[];
64
+ get path(): FieldPathBuilder<TOutput>;
40
65
  get isDirty(): boolean;
41
66
  get isValid(): boolean;
42
67
  get isValidating(): boolean;
43
68
  get isSubmitting(): boolean;
69
+ get triedSubmitting(): boolean;
44
70
  protected setValidating(newStatus: boolean): void;
45
71
  protected setSubmitting(newStatus: boolean): void;
46
- _unsafeSetFieldValue<TPath extends FieldPath.Segments>(path: TPath, value: FieldPath.Resolve<TOutput, TPath>, config?: {
47
- updateInitialValue?: boolean;
48
- }): void;
49
- bindField<TPath extends FieldPath.Segments>(path: TPath, config?: {
50
- defaultValue?: FieldPath.Resolve<TOutput, TPath>;
51
- domElement?: HTMLElement;
72
+ registerField<TPath extends FieldPath.Segments>(path: TPath, config?: {
73
+ /**
74
+ * Used to set value at **path** in **data**, if it's missing.
75
+ */
76
+ defaultValue?: Suppliable<FieldPath.Resolve<TOutput, TPath>>;
77
+ /**
78
+ * Whether value in **initialData** should also be changed, if **defaultValue** is used or not
79
+ *
80
+ * If this is set to `true` and **defaultValue** is used; **initialData** will be modified
81
+ */
52
82
  overrideInitialValue?: boolean;
53
83
  }): FormField<TOutput, FieldPath.Resolve<TOutput, TPath>>;
54
- unbindField(path: FieldPath.Segments): void;
84
+ unregisterField(path: FieldPath.Segments): boolean;
55
85
  reset(newInitialData?: DeepPartial<TOutput>): void;
56
86
  getAscendantFields<TPath extends FieldPath.Segments>(path: TPath): FormField<TOutput, never>[];
57
87
  getField<TPath extends FieldPath.Segments>(path: TPath): FormField<TOutput, FieldPath.Resolve<TOutput, TPath>> | undefined;
88
+ getFields(): MapIterator<FormField<TOutput, any>>;
58
89
  clearFieldIssues<TPath extends FieldPath.Segments>(path: TPath): void;
59
90
  private applyValidation;
60
- validateField<TPath extends FieldPath.Segments>(path: TPath): Promise<void>;
61
91
  validateForm(): Promise<void>;
62
- createSubmitHandler<TEvent extends FormController.PreventableEvent>(onSuccess?: FormController.SubmitSuccessHandler<TOutput, TEvent>, onError?: FormController.SubmitErrorHandler<TEvent>): (event: TEvent) => Promise<void>;
92
+ validateField<TPath extends FieldPath.Segments>(path: TPath): Promise<void>;
93
+ createSubmitHandler<TEvent extends FormController.PreventableEvent | null | undefined>(onSuccess?: FormController.SubmitSuccessHandler<TOutput, TEvent>, onError?: FormController.SubmitErrorHandler<TEvent>): (event: TEvent) => Promise<void>;
63
94
  }
64
95
  //# sourceMappingURL=FormController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormController.d.ts","sourceRoot":"","sources":["../../src/form/FormController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormController.d.ts","sourceRoot":"","sources":["../../src/form/FormController.ts"],"names":[],"mappings":"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"}
@@ -1,39 +1,44 @@
1
1
  import { FieldPath } from '../field/FieldPath';
2
2
  import { FormController } from '../form/FormController';
3
+ import { DeepReadonly } from '../types/DeepHelpers';
4
+ import { Suppliable } from '../types/Suppliable';
3
5
  export declare class FormField<TOutput extends object, TValue> {
4
6
  readonly controller: FormController<TOutput>;
5
7
  readonly path: FieldPath.Segments;
8
+ readonly defaultValue?: Suppliable<TValue> | undefined;
6
9
  readonly id: number;
7
10
  protected target?: HTMLElement;
8
11
  protected _isTouched: boolean;
9
12
  protected _isDirty: boolean;
10
- constructor(controller: FormController<TOutput>, path: FieldPath.Segments, initialState?: {
13
+ /** @internal register via `FormController::registerField` instead */
14
+ constructor(controller: FormController<TOutput>, path: FieldPath.Segments, defaultValue?: Suppliable<TValue> | undefined, initialState?: {
11
15
  isTouched?: boolean;
12
16
  isDirty?: boolean;
13
17
  });
14
- get canonicalPath(): string;
15
18
  get stringPath(): string;
16
- get value(): TValue | undefined;
17
- get initialValue(): TValue | undefined;
19
+ get value(): DeepReadonly<TValue> | undefined;
20
+ get initialValue(): DeepReadonly<TValue> | undefined;
18
21
  get boundElement(): HTMLElement | undefined;
19
22
  get issues(): import("@standard-schema/spec").StandardSchemaV1.Issue[];
20
23
  get isTouched(): boolean;
21
24
  get isDirty(): boolean;
22
25
  get isValid(): boolean;
26
+ ensureDefault(opts?: Parameters<typeof this.modifyData>[1]): void;
23
27
  protected _setTouched(isTouched: boolean): void;
24
28
  protected _setDirty(isDirty: boolean): void;
25
29
  bindElement(el: HTMLElement | undefined): void;
26
- setValue(value: TValue, opts?: Parameters<typeof this.modifyValue>[1]): void;
27
- modifyValue(modifier: (currentValue: TValue | undefined) => TValue | void, opts?: {
28
- shouldTouch?: boolean;
29
- shouldMarkDirty?: boolean;
30
- }): void;
30
+ unbindElement(): void;
31
+ clearIssues(): void;
32
+ private modifyData;
33
+ setValue(value: TValue, opts?: Parameters<typeof this.modifyData>[1]): void;
34
+ modifyValue(modifier: (currentValue: TValue) => undefined, opts?: Parameters<typeof this.modifyData>[1]): void;
31
35
  reset(): void;
32
36
  touch(): void;
33
37
  markDirty(): void;
34
- triggerValidation(): void;
38
+ validate(): void;
35
39
  focus(opts?: {
36
40
  shouldTouch?: boolean;
41
+ scrollOptions?: ScrollIntoViewOptions;
37
42
  }): void;
38
43
  }
39
44
  //# sourceMappingURL=FormField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../src/form/FormField.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAIxD,qBAAa,SAAS,CAAC,OAAO,SAAS,MAAM,EAAE,MAAM;aASjC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC;aACnC,IAAI,EAAE,SAAS,CAAC,QAAQ;IAT1C,SAAgB,EAAE,SAAW;IAE7B,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE/B,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,QAAQ,UAAS;gBAGT,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,EACnC,IAAI,EAAE,SAAS,CAAC,QAAQ,EACxC,YAAY,CAAC,EAAE;QACb,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB;IAMH,IAAI,aAAa,WAEhB;IAED,IAAI,UAAU,WAEb;IAED,IAAI,KAAK,IAAI,MAAM,GAAG,SAAS,CAE9B;IAED,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IAED,IAAI,YAAY,4BAEf;IAED,IAAI,MAAM,6DAIT;IAED,IAAI,SAAS,YAEZ;IAED,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,YAEV;IAED,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO;IAcxC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO;IAcpC,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,SAAS;IASvC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAIrE,WAAW,CACT,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,KAAK,MAAM,GAAG,IAAI,EAC7D,IAAI,CAAC,EAAE;QACL,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GACA,IAAI;IA2DP,KAAK;IAKL,KAAK;IAIL,SAAS;IAKT,iBAAiB;IAIjB,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,OAAO,CAAA;KAAE;CAUvC"}
1
+ {"version":3,"file":"FormField.d.ts","sourceRoot":"","sources":["../../src/form/FormField.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAC;AAIzD,qBAAa,SAAS,CAAC,OAAO,SAAS,MAAM,EAAE,MAAM;aAUjC,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC;aACnC,IAAI,EAAE,SAAS,CAAC,QAAQ;aACxB,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC;IAXnD,SAAgB,EAAE,SAAW;IAE7B,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE/B,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,QAAQ,UAAS;IAE3B,qEAAqE;gBAEnD,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,EACnC,IAAI,EAAE,SAAS,CAAC,QAAQ,EACxB,YAAY,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,YAAA,EACjD,YAAY,CAAC,EAAE;QACb,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB;IAMH,IAAI,UAAU,WAEb;IAED,IAAI,KAAK,IAAI,YAAY,CAAC,MAAM,CAAC,GAAG,SAAS,CAE5C;IAED,IAAI,YAAY,IAAI,YAAY,CAAC,MAAM,CAAC,GAAG,SAAS,CAEnD;IAED,IAAI,YAAY,4BAEf;IAED,IAAI,MAAM,6DAIT;IAED,IAAI,SAAS,YAEZ;IAED,IAAI,OAAO,YAEV;IAED,IAAI,OAAO,YAEV;IAED,aAAa,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAU1D,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO;IAcxC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO;IAcpC,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,SAAS;IASvC,aAAa;IAOb,WAAW;IAIX,OAAO,CAAC,UAAU;IA6DlB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAMpE,WAAW,CACT,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,SAAS,EAC7C,IAAI,CAAC,EAAE,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAC3C,IAAI;IAQP,KAAK;IAML,KAAK;IAIL,SAAS;IAIT,QAAQ;IAIR,KAAK,CAAC,IAAI,CAAC,EAAE;QACX,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,aAAa,CAAC,EAAE,qBAAqB,CAAC;KACvC;CAUF"}
package/dist/index.d.ts CHANGED
@@ -3,8 +3,8 @@ export * from './field/FieldPathBuilder';
3
3
  export * from './field/Reconcile';
4
4
  export * from './form/FormController';
5
5
  export * from './form/FormField';
6
- export * from './form/NonullFormField';
7
6
  export * from './validation/CustomValidation';
8
- export * from './types/DeepPartial';
7
+ export * from './types/DeepHelpers';
8
+ export * from './types/Suppliable';
9
9
  export * from './types/Mixin';
10
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAElC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,+BAA+B,CAAC;AAE9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,0BAA0B,CAAC;AACzC,cAAc,mBAAmB,CAAC;AAElC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,+BAA+B,CAAC;AAE9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}