@strictly/react-form 0.0.36 → 0.0.37

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.
@@ -8,11 +8,11 @@ $ tsup
8
8
  CJS Build start
9
9
  ESM Build start
10
10
  CJS dist/index.cjs 64.40 KB
11
- CJS ⚡️ Build success in 140ms
11
+ CJS ⚡️ Build success in 127ms
12
12
  ESM dist/index.js 60.22 KB
13
- ESM ⚡️ Build success in 155ms
13
+ ESM ⚡️ Build success in 128ms
14
14
  DTS Build start
15
- DTS ⚡️ Build success in 5375ms
16
- DTS dist/index.d.cts 39.00 KB
17
- DTS dist/index.d.ts 39.00 KB
18
- Done in 6.87s.
15
+ DTS ⚡️ Build success in 5539ms
16
+ DTS dist/index.d.cts 39.05 KB
17
+ DTS dist/index.d.ts 39.05 KB
18
+ Done in 6.93s.
@@ -1,3 +1,3 @@
1
1
  yarn run v1.22.22
2
2
  $ tsc -b
3
- Done in 0.32s.
3
+ Done in 0.30s.
@@ -1,3 +1,3 @@
1
1
  yarn run v1.22.22
2
2
  $ json -f package.json -f package.exports.json --merge > package.release.json
3
- Done in 0.11s.
3
+ Done in 0.13s.
@@ -146,6 +146,9 @@ export abstract class FormModel<
146
146
  ContextType
147
147
  >,
148
148
  ContextType = ContextOf<TypePathsToAdapters>,
149
+ ContextSource extends FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>,
150
+ keyof ValuePathsToAdapters> = FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>,
151
+ string | number | symbol>,
149
152
  ValuePathsToAdapters extends ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths> = ValuePathsToAdaptersOf<
150
153
  TypePathsToAdapters,
151
154
  ValueToTypePaths
@@ -173,11 +176,7 @@ export abstract class FormModel<
173
176
  readonly type: T,
174
177
  private readonly originalValue: ValueOfType<ReadonlyTypeOfType<T>>,
175
178
  protected readonly adapters: TypePathsToAdapters,
176
- protected readonly contextSource: FormModelContextSource<
177
- ContextType,
178
- ValueOfType<ReadonlyTypeOfType<T>>,
179
- keyof ValuePathsToAdapters
180
- >,
179
+ protected readonly contextSource: ContextSource,
181
180
  protected readonly mode: FormMode,
182
181
  ) {
183
182
  this.originalValues = flattenValuesOfType<ReadonlyTypeOfType<T>>(type, originalValue, this.listIndicesToKeys)
@@ -16,7 +16,7 @@ import { peek } from './peek'
16
16
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
17
17
  type FormModelInterface<T extends Type = any> = Pick<
18
18
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
19
- FormModel<T, any, any, any, any>,
19
+ FormModel<T, any, any, any, any, any>,
20
20
  | 'fields'
21
21
  | 'value'
22
22
  | 'getValidation'
package/dist/index.d.cts CHANGED
@@ -135,11 +135,11 @@ type FormMode = 'edit' | 'create';
135
135
  type FormModelContextSource<ContextType, V, ValuePath extends string | number | symbol> = {
136
136
  forPath(value: V, valuePath: ValuePath): ContextType;
137
137
  };
138
- declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readonly<Record<string, string>>, TypePathsToAdapters extends FlattenedTypePathsToAdaptersOf<FlattenedValuesOfType<T, '*'>, ContextType>, ContextType = ContextOf<TypePathsToAdapters>, ValuePathsToAdapters extends ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths> = ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths>> {
138
+ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readonly<Record<string, string>>, TypePathsToAdapters extends FlattenedTypePathsToAdaptersOf<FlattenedValuesOfType<T, '*'>, ContextType>, ContextType = ContextOf<TypePathsToAdapters>, ContextSource extends FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters> = FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, string | number | symbol>, ValuePathsToAdapters extends ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths> = ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths>> {
139
139
  readonly type: T;
140
140
  private readonly originalValue;
141
141
  protected readonly adapters: TypePathsToAdapters;
142
- protected readonly contextSource: FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters>;
142
+ protected readonly contextSource: ContextSource;
143
143
  protected readonly mode: FormMode;
144
144
  private accessor observableValue;
145
145
  accessor fieldOverrides: FlattenedFieldOverrides<ValuePathsToAdapters>;
@@ -148,7 +148,7 @@ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readon
148
148
  private readonly flattenedTypeDefs;
149
149
  private readonly originalValues;
150
150
  private readonly listIndicesToKeys;
151
- constructor(type: T, originalValue: ValueOfType<ReadonlyTypeOfType<T>>, adapters: TypePathsToAdapters, contextSource: FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters>, mode: FormMode);
151
+ constructor(type: T, originalValue: ValueOfType<ReadonlyTypeOfType<T>>, adapters: TypePathsToAdapters, contextSource: ContextSource, mode: FormMode);
152
152
  get forceMutableFields(): boolean;
153
153
  get value(): ValueOfType<ReadonlyTypeOfType<T>>;
154
154
  get fields(): SimplifyDeep<FlattenedConvertedFieldsOf<ValuePathsToAdapters>>;
@@ -184,7 +184,7 @@ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readon
184
184
  validateSubmit(): boolean;
185
185
  }
186
186
 
187
- type FormModelInterface<T extends Type = any> = Pick<FormModel<T, any, any, any, any>, 'fields' | 'value' | 'getValidation' | 'validateField' | 'setFieldValue' | 'validateSubmit' | 'isFieldDirty' | 'isValuePathActive'>;
187
+ type FormModelInterface<T extends Type = any> = Pick<FormModel<T, any, any, any, any, any>, 'fields' | 'value' | 'getValidation' | 'validateField' | 'setFieldValue' | 'validateSubmit' | 'isFieldDirty' | 'isValuePathActive'>;
188
188
  type ValueOfModel<M extends FormModelInterface> = M extends FormModelInterface<infer T> ? ValueOfType<ReadonlyTypeOfType<T>> : never;
189
189
  declare function useDefaultMobxFormHooks<M extends FormModelInterface, F extends M['fields'] = M['fields']>(model: M, { onValidFieldSubmit, onValidFormSubmit, }?: {
190
190
  onValidFieldSubmit?: <Path extends keyof F>(valuePath: Path) => void;
package/dist/index.d.ts CHANGED
@@ -135,11 +135,11 @@ type FormMode = 'edit' | 'create';
135
135
  type FormModelContextSource<ContextType, V, ValuePath extends string | number | symbol> = {
136
136
  forPath(value: V, valuePath: ValuePath): ContextType;
137
137
  };
138
- declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readonly<Record<string, string>>, TypePathsToAdapters extends FlattenedTypePathsToAdaptersOf<FlattenedValuesOfType<T, '*'>, ContextType>, ContextType = ContextOf<TypePathsToAdapters>, ValuePathsToAdapters extends ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths> = ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths>> {
138
+ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readonly<Record<string, string>>, TypePathsToAdapters extends FlattenedTypePathsToAdaptersOf<FlattenedValuesOfType<T, '*'>, ContextType>, ContextType = ContextOf<TypePathsToAdapters>, ContextSource extends FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters> = FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, string | number | symbol>, ValuePathsToAdapters extends ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths> = ValuePathsToAdaptersOf<TypePathsToAdapters, ValueToTypePaths>> {
139
139
  readonly type: T;
140
140
  private readonly originalValue;
141
141
  protected readonly adapters: TypePathsToAdapters;
142
- protected readonly contextSource: FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters>;
142
+ protected readonly contextSource: ContextSource;
143
143
  protected readonly mode: FormMode;
144
144
  private accessor observableValue;
145
145
  accessor fieldOverrides: FlattenedFieldOverrides<ValuePathsToAdapters>;
@@ -148,7 +148,7 @@ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readon
148
148
  private readonly flattenedTypeDefs;
149
149
  private readonly originalValues;
150
150
  private readonly listIndicesToKeys;
151
- constructor(type: T, originalValue: ValueOfType<ReadonlyTypeOfType<T>>, adapters: TypePathsToAdapters, contextSource: FormModelContextSource<ContextType, ValueOfType<ReadonlyTypeOfType<T>>, keyof ValuePathsToAdapters>, mode: FormMode);
151
+ constructor(type: T, originalValue: ValueOfType<ReadonlyTypeOfType<T>>, adapters: TypePathsToAdapters, contextSource: ContextSource, mode: FormMode);
152
152
  get forceMutableFields(): boolean;
153
153
  get value(): ValueOfType<ReadonlyTypeOfType<T>>;
154
154
  get fields(): SimplifyDeep<FlattenedConvertedFieldsOf<ValuePathsToAdapters>>;
@@ -184,7 +184,7 @@ declare abstract class FormModel<T extends Type, ValueToTypePaths extends Readon
184
184
  validateSubmit(): boolean;
185
185
  }
186
186
 
187
- type FormModelInterface<T extends Type = any> = Pick<FormModel<T, any, any, any, any>, 'fields' | 'value' | 'getValidation' | 'validateField' | 'setFieldValue' | 'validateSubmit' | 'isFieldDirty' | 'isValuePathActive'>;
187
+ type FormModelInterface<T extends Type = any> = Pick<FormModel<T, any, any, any, any, any>, 'fields' | 'value' | 'getValidation' | 'validateField' | 'setFieldValue' | 'validateSubmit' | 'isFieldDirty' | 'isValuePathActive'>;
188
188
  type ValueOfModel<M extends FormModelInterface> = M extends FormModelInterface<infer T> ? ValueOfType<ReadonlyTypeOfType<T>> : never;
189
189
  declare function useDefaultMobxFormHooks<M extends FormModelInterface, F extends M['fields'] = M['fields']>(model: M, { onValidFieldSubmit, onValidFormSubmit, }?: {
190
190
  onValidFieldSubmit?: <Path extends keyof F>(valuePath: Path) => void;
package/package.json CHANGED
@@ -73,7 +73,7 @@
73
73
  "test:watch": "vitest"
74
74
  },
75
75
  "type": "module",
76
- "version": "0.0.36",
76
+ "version": "0.0.37",
77
77
  "exports": {
78
78
  ".": {
79
79
  "import": {