@lucas-barake/effect-form 0.2.0 → 0.4.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.
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../dist/cjs/FormBuilder.js",
3
+ "module": "../dist/esm/FormBuilder.js",
4
+ "types": "../dist/dts/FormBuilder.d.ts",
5
+ "sideEffects": []
6
+ }
@@ -6,13 +6,11 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.make = void 0;
7
7
  var Atom = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect-atom/atom/Atom"));
8
8
  var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
9
- var Equal = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Equal"));
10
9
  var _Function = /*#__PURE__*/require("effect/Function");
11
10
  var Option = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Option"));
12
11
  var Schema = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Schema"));
13
- var Utils = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Utils"));
14
12
  var Field = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Field.js"));
15
- var Form = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Form.js"));
13
+ var FormBuilder = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./FormBuilder.js"));
16
14
  var _dirty = /*#__PURE__*/require("./internal/dirty.js");
17
15
  var _path = /*#__PURE__*/require("./internal/path.js");
18
16
  var _weakRegistry = /*#__PURE__*/require("./internal/weak-registry.js");
@@ -57,9 +55,9 @@ function _interopRequireWildcard(e, t) {
57
55
  *
58
56
  * const runtime = Atom.runtime(Layer.empty)
59
57
  *
60
- * const loginForm = Form.empty
61
- * .addField(Form.makeField("email", Schema.String))
62
- * .addField(Form.makeField("password", Schema.String))
58
+ * const loginForm = FormBuilder.empty
59
+ * .addField(FormBuilder.makeField("email", Schema.String))
60
+ * .addField(FormBuilder.makeField("password", Schema.String))
63
61
  *
64
62
  * const atoms = FormAtoms.make({
65
63
  * runtime,
@@ -79,24 +77,27 @@ const make = config => {
79
77
  const {
80
78
  fields
81
79
  } = formBuilder;
82
- const combinedSchema = Form.buildSchema(formBuilder);
80
+ const combinedSchema = FormBuilder.buildSchema(formBuilder);
83
81
  const stateAtom = Atom.make(Option.none()).pipe(Atom.setIdleTTL(0));
84
82
  const crossFieldErrorsAtom = Atom.make(new Map()).pipe(Atom.setIdleTTL(0));
85
83
  const dirtyFieldsAtom = Atom.readable(get => Option.getOrThrow(get(stateAtom)).dirtyFields).pipe(Atom.setIdleTTL(0));
86
84
  const isDirtyAtom = Atom.readable(get => Option.getOrThrow(get(stateAtom)).dirtyFields.size > 0).pipe(Atom.setIdleTTL(0));
87
85
  const submitCountAtom = Atom.readable(get => Option.getOrThrow(get(stateAtom)).submitCount).pipe(Atom.setIdleTTL(0));
86
+ const lastSubmittedValuesAtom = Atom.readable(get => Option.getOrThrow(get(stateAtom)).lastSubmittedValues).pipe(Atom.setIdleTTL(0));
87
+ const changedSinceSubmitFieldsAtom = Atom.readable(get => {
88
+ const state = Option.getOrThrow(get(stateAtom));
89
+ return Option.match(state.lastSubmittedValues, {
90
+ onNone: () => new Set(),
91
+ onSome: lastSubmitted => (0, _dirty.recalculateDirtySubtree)(new Set(), lastSubmitted, state.values, "")
92
+ });
93
+ }).pipe(Atom.setIdleTTL(0));
94
+ const hasChangedSinceSubmitAtom = Atom.readable(get => {
95
+ const state = Option.getOrThrow(get(stateAtom));
96
+ if (Option.isNone(state.lastSubmittedValues)) return false;
97
+ if (state.values === state.lastSubmittedValues.value) return false;
98
+ return get(changedSinceSubmitFieldsAtom).size > 0;
99
+ }).pipe(Atom.setIdleTTL(0));
88
100
  const onSubmitAtom = Atom.make(null).pipe(Atom.setIdleTTL(0));
89
- const updateDirtyFields = (state, fieldPath, newValue) => {
90
- const initialValue = (0, _path.getNestedValue)(state.initialValues, fieldPath);
91
- const isEqual = Utils.structuralRegion(() => Equal.equals(newValue, initialValue));
92
- const newDirtyFields = new Set(state.dirtyFields);
93
- if (!isEqual) {
94
- newDirtyFields.add(fieldPath);
95
- } else {
96
- newDirtyFields.delete(fieldPath);
97
- }
98
- return newDirtyFields;
99
- };
100
101
  const validationAtomsRegistry = (0, _weakRegistry.createWeakRegistry)();
101
102
  const fieldAtomsRegistry = (0, _weakRegistry.createWeakRegistry)();
102
103
  const getOrCreateValidationAtom = (fieldPath, schema) => {
@@ -111,10 +112,11 @@ const make = config => {
111
112
  if (existing) return existing;
112
113
  const valueAtom = Atom.writable(get => (0, _path.getNestedValue)(Option.getOrThrow(get(stateAtom)).values, fieldPath), (ctx, value) => {
113
114
  const currentState = Option.getOrThrow(ctx.get(stateAtom));
115
+ const newValues = (0, _path.setNestedValue)(currentState.values, fieldPath, value);
114
116
  ctx.set(stateAtom, Option.some({
115
117
  ...currentState,
116
- values: (0, _path.setNestedValue)(currentState.values, fieldPath, value),
117
- dirtyFields: updateDirtyFields(currentState, fieldPath, value)
118
+ values: newValues,
119
+ dirtyFields: (0, _dirty.recalculateDirtySubtree)(currentState.dirtyFields, currentState.initialValues, newValues, fieldPath)
118
120
  }));
119
121
  }).pipe(Atom.setIdleTTL(0));
120
122
  const initialValueAtom = Atom.readable(get => (0, _path.getNestedValue)(Option.getOrThrow(get(stateAtom)).initialValues, fieldPath)).pipe(Atom.setIdleTTL(0));
@@ -154,11 +156,12 @@ const make = config => {
154
156
  suspendOnWaiting: true
155
157
  });
156
158
  })).pipe(Atom.setIdleTTL(0));
157
- const fieldRefs = Object.fromEntries(Object.keys(fields).map(key => [key, Form.makeFieldRef(key)]));
159
+ const fieldRefs = Object.fromEntries(Object.keys(fields).map(key => [key, FormBuilder.makeFieldRef(key)]));
158
160
  const operations = {
159
161
  createInitialState: defaultValues => ({
160
162
  values: defaultValues,
161
163
  initialValues: defaultValues,
164
+ lastSubmittedValues: Option.none(),
162
165
  touched: Field.createTouchedRecord(fields, false),
163
166
  submitCount: 0,
164
167
  dirtyFields: new Set()
@@ -166,12 +169,14 @@ const make = config => {
166
169
  createResetState: state => ({
167
170
  values: state.initialValues,
168
171
  initialValues: state.initialValues,
172
+ lastSubmittedValues: Option.none(),
169
173
  touched: Field.createTouchedRecord(fields, false),
170
174
  submitCount: 0,
171
175
  dirtyFields: new Set()
172
176
  }),
173
177
  createSubmitState: state => ({
174
178
  ...state,
179
+ lastSubmittedValues: Option.some(state.values),
175
180
  touched: Field.createTouchedRecord(fields, true),
176
181
  submitCount: state.submitCount + 1
177
182
  }),
@@ -243,6 +248,20 @@ const make = config => {
243
248
  values: (0, _path.setNestedValue)(state.values, arrayPath, newItems),
244
249
  dirtyFields: (0, _dirty.recalculateDirtyFieldsForArray)(state.dirtyFields, state.initialValues, arrayPath, newItems)
245
250
  };
251
+ },
252
+ revertToLastSubmit: state => {
253
+ if (Option.isNone(state.lastSubmittedValues)) {
254
+ return state;
255
+ }
256
+ if (state.values === state.lastSubmittedValues.value) {
257
+ return state;
258
+ }
259
+ const newDirtyFields = (0, _dirty.recalculateDirtySubtree)(state.dirtyFields, state.initialValues, state.lastSubmittedValues.value, "");
260
+ return {
261
+ ...state,
262
+ values: state.lastSubmittedValues.value,
263
+ dirtyFields: newDirtyFields
264
+ };
246
265
  }
247
266
  };
248
267
  return {
@@ -251,6 +270,9 @@ const make = config => {
251
270
  dirtyFieldsAtom,
252
271
  isDirtyAtom,
253
272
  submitCountAtom,
273
+ lastSubmittedValuesAtom,
274
+ changedSinceSubmitFieldsAtom,
275
+ hasChangedSinceSubmitAtom,
254
276
  onSubmitAtom,
255
277
  decodeAndSubmit,
256
278
  combinedSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"FormAtoms.js","names":["Atom","_interopRequireWildcard","require","Effect","Equal","_Function","Option","Schema","Utils","Field","Form","_dirty","_path","_weakRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","config","formBuilder","runtime","fields","combinedSchema","buildSchema","stateAtom","none","pipe","setIdleTTL","crossFieldErrorsAtom","Map","dirtyFieldsAtom","readable","getOrThrow","dirtyFields","isDirtyAtom","size","submitCountAtom","submitCount","onSubmitAtom","updateDirtyFields","state","fieldPath","newValue","initialValue","getNestedValue","initialValues","isEqual","structuralRegion","equals","newDirtyFields","Set","add","delete","validationAtomsRegistry","createWeakRegistry","fieldAtomsRegistry","getOrCreateValidationAtom","schema","existing","validationAtom","fn","value","decodeUnknown","asVoid","getOrCreateFieldAtoms","valueAtom","writable","values","ctx","currentState","some","setNestedValue","initialValueAtom","touchedAtom","touched","crossFieldErrorAtom","errors","error","undefined","atoms","resetValidationAtoms","registry","Reset","clear","decodeAndSubmit","gen","decoded","onSubmit","result","suspendOnWaiting","fieldRefs","fromEntries","keys","map","key","makeFieldRef","operations","createInitialState","defaultValues","createTouchedRecord","createResetState","createSubmitState","setFieldValue","newValues","recalculateDirtySubtree","setFormValues","setFieldTouched","appendArrayItem","arrayPath","itemSchema","newItem","getDefaultFromSchema","currentItems","newItems","recalculateDirtyFieldsForArray","removeArrayItem","index","filter","_","swapArrayItems","indexA","indexB","length","temp","moveArrayItem","fromIndex","toIndex","item","splice","exports"],"sources":["../../src/FormAtoms.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormAtoms.js","names":["Atom","_interopRequireWildcard","require","Effect","_Function","Option","Schema","Field","FormBuilder","_dirty","_path","_weakRegistry","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","config","formBuilder","runtime","fields","combinedSchema","buildSchema","stateAtom","none","pipe","setIdleTTL","crossFieldErrorsAtom","Map","dirtyFieldsAtom","readable","getOrThrow","dirtyFields","isDirtyAtom","size","submitCountAtom","submitCount","lastSubmittedValuesAtom","lastSubmittedValues","changedSinceSubmitFieldsAtom","state","match","onNone","Set","onSome","lastSubmitted","recalculateDirtySubtree","values","hasChangedSinceSubmitAtom","isNone","value","onSubmitAtom","validationAtomsRegistry","createWeakRegistry","fieldAtomsRegistry","getOrCreateValidationAtom","fieldPath","schema","existing","validationAtom","fn","decodeUnknown","asVoid","getOrCreateFieldAtoms","valueAtom","writable","getNestedValue","ctx","currentState","newValues","setNestedValue","some","initialValues","initialValueAtom","touchedAtom","touched","crossFieldErrorAtom","errors","error","undefined","atoms","resetValidationAtoms","registry","Reset","clear","decodeAndSubmit","gen","decoded","onSubmit","result","suspendOnWaiting","fieldRefs","fromEntries","keys","map","key","makeFieldRef","operations","createInitialState","defaultValues","createTouchedRecord","createResetState","createSubmitState","setFieldValue","newDirtyFields","setFormValues","setFieldTouched","appendArrayItem","arrayPath","itemSchema","newItem","getDefaultFromSchema","currentItems","newItems","recalculateDirtyFieldsForArray","removeArrayItem","index","filter","_","swapArrayItems","indexA","indexB","length","temp","moveArrayItem","fromIndex","toIndex","item","splice","revertToLastSubmit","exports"],"sources":["../../src/FormAtoms.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -102,14 +102,14 @@ const FormBuilderProto = {
102
102
  *
103
103
  * @example
104
104
  * ```ts
105
- * import * as Form from "@lucas-barake/effect-form"
105
+ * import { FormBuilder } from "@lucas-barake/effect-form"
106
106
  *
107
- * const builder = Form.empty
107
+ * const builder = FormBuilder.empty
108
108
  *
109
- * console.log(Form.isFormBuilder(builder))
109
+ * console.log(FormBuilder.isFormBuilder(builder))
110
110
  * // Output: true
111
111
  *
112
- * console.log(Form.isFormBuilder({}))
112
+ * console.log(FormBuilder.isFormBuilder({}))
113
113
  * // Output: false
114
114
  * ```
115
115
  *
@@ -127,13 +127,13 @@ const isFormBuilder = u => Predicate.hasProperty(u, TypeId);
127
127
  *
128
128
  * @example
129
129
  * ```ts
130
- * import * as Form from "@lucas-barake/effect-form"
130
+ * import { Field, FormBuilder } from "@lucas-barake/effect-form"
131
131
  * import * as Schema from "effect/Schema"
132
132
  *
133
- * const EmailField = Form.makeField("email", Schema.String)
134
- * const PasswordField = Form.makeField("password", Schema.String)
133
+ * const EmailField = Field.makeField("email", Schema.String)
134
+ * const PasswordField = Field.makeField("password", Schema.String)
135
135
  *
136
- * const loginForm = Form.empty
136
+ * const loginForm = FormBuilder.empty
137
137
  * .addField(EmailField)
138
138
  * .addField(PasswordField)
139
139
  * ```
@@ -175,4 +175,4 @@ const buildSchema = self => {
175
175
  return schema;
176
176
  };
177
177
  exports.buildSchema = buildSchema;
178
- //# sourceMappingURL=Form.js.map
178
+ //# sourceMappingURL=FormBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormBuilder.js","names":["Predicate","_interopRequireWildcard","require","Schema","_Field","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","FieldTypeId","exports","Symbol","for","makeFieldRef","key","_S","undefined","TypeId","FormBuilderProto","addField","field","newSelf","create","fields","refinements","merge","other","refine","predicate","_tag","fn","values","refineEffect","isFormBuilder","u","hasProperty","empty","self","buildSchema","schemaFields","def","entries","isArrayFieldDef","Array","itemSchema","isFieldDef","schema","Struct","refinement","pipe","filter","filterEffect"],"sources":["../../src/FormBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -3,13 +3,13 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Validation = exports.Mode = exports.FormAtoms = exports.Form = exports.Field = void 0;
6
+ exports.Validation = exports.Mode = exports.FormBuilder = exports.FormAtoms = exports.Field = void 0;
7
7
  var _Field = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Field.js"));
8
8
  exports.Field = _Field;
9
- var _Form = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Form.js"));
10
- exports.Form = _Form;
11
9
  var _FormAtoms = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./FormAtoms.js"));
12
10
  exports.FormAtoms = _FormAtoms;
11
+ var _FormBuilder = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./FormBuilder.js"));
12
+ exports.FormBuilder = _FormBuilder;
13
13
  var _Mode = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Mode.js"));
14
14
  exports.Mode = _Mode;
15
15
  var _Validation = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./Validation.js"));
@@ -12,7 +12,7 @@ import * as Option from "effect/Option";
12
12
  import type * as ParseResult from "effect/ParseResult";
13
13
  import * as Schema from "effect/Schema";
14
14
  import * as Field from "./Field.js";
15
- import * as Form from "./Form.js";
15
+ import * as FormBuilder from "./FormBuilder.js";
16
16
  import { type WeakRegistry } from "./internal/weak-registry.js";
17
17
  /**
18
18
  * Atoms for a single field.
@@ -34,7 +34,7 @@ export interface FieldAtoms {
34
34
  */
35
35
  export interface FormAtomsConfig<TFields extends Field.FieldsRecord, R> {
36
36
  readonly runtime: Atom.AtomRuntime<R, any>;
37
- readonly formBuilder: Form.FormBuilder<TFields, R>;
37
+ readonly formBuilder: FormBuilder.FormBuilder<TFields, R>;
38
38
  }
39
39
  /**
40
40
  * Maps field names to their type-safe Field references for setValue operations.
@@ -43,7 +43,7 @@ export interface FormAtomsConfig<TFields extends Field.FieldsRecord, R> {
43
43
  * @category Models
44
44
  */
45
45
  export type FieldRefs<TFields extends Field.FieldsRecord> = {
46
- readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? Form.Field<Schema.Schema.Encoded<S>> : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? Form.Field<ReadonlyArray<Schema.Schema.Encoded<S>>> : never;
46
+ readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? FormBuilder.FieldRef<Schema.Schema.Encoded<S>> : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? FormBuilder.FieldRef<ReadonlyArray<Schema.Schema.Encoded<S>>> : never;
47
47
  };
48
48
  /**
49
49
  * The complete form atoms infrastructure.
@@ -52,11 +52,14 @@ export type FieldRefs<TFields extends Field.FieldsRecord> = {
52
52
  * @category Models
53
53
  */
54
54
  export interface FormAtoms<TFields extends Field.FieldsRecord, R> {
55
- readonly stateAtom: Atom.Writable<Option.Option<Form.FormState<TFields>>, Option.Option<Form.FormState<TFields>>>;
55
+ readonly stateAtom: Atom.Writable<Option.Option<FormBuilder.FormState<TFields>>, Option.Option<FormBuilder.FormState<TFields>>>;
56
56
  readonly crossFieldErrorsAtom: Atom.Writable<Map<string, string>, Map<string, string>>;
57
57
  readonly dirtyFieldsAtom: Atom.Atom<ReadonlySet<string>>;
58
58
  readonly isDirtyAtom: Atom.Atom<boolean>;
59
59
  readonly submitCountAtom: Atom.Atom<number>;
60
+ readonly lastSubmittedValuesAtom: Atom.Atom<Option.Option<Field.EncodedFromFields<TFields>>>;
61
+ readonly changedSinceSubmitFieldsAtom: Atom.Atom<ReadonlySet<string>>;
62
+ readonly hasChangedSinceSubmitAtom: Atom.Atom<boolean>;
60
63
  readonly onSubmitAtom: Atom.Writable<Atom.AtomResultFn<Field.DecodedFromFields<TFields>, unknown, unknown> | null, Atom.AtomResultFn<Field.DecodedFromFields<TFields>, unknown, unknown> | null>;
61
64
  readonly decodeAndSubmit: Atom.AtomResultFn<Field.EncodedFromFields<TFields>, unknown, unknown>;
62
65
  readonly combinedSchema: Schema.Schema<Field.DecodedFromFields<TFields>, Field.EncodedFromFields<TFields>, R>;
@@ -75,46 +78,21 @@ export interface FormAtoms<TFields extends Field.FieldsRecord, R> {
75
78
  * @category Models
76
79
  */
77
80
  export interface FormOperations<TFields extends Field.FieldsRecord> {
81
+ readonly createInitialState: (defaultValues: Field.EncodedFromFields<TFields>) => FormBuilder.FormState<TFields>;
82
+ readonly createResetState: (state: FormBuilder.FormState<TFields>) => FormBuilder.FormState<TFields>;
83
+ readonly createSubmitState: (state: FormBuilder.FormState<TFields>) => FormBuilder.FormState<TFields>;
84
+ readonly setFieldValue: (state: FormBuilder.FormState<TFields>, fieldPath: string, value: unknown) => FormBuilder.FormState<TFields>;
85
+ readonly setFormValues: (state: FormBuilder.FormState<TFields>, values: Field.EncodedFromFields<TFields>) => FormBuilder.FormState<TFields>;
86
+ readonly setFieldTouched: (state: FormBuilder.FormState<TFields>, fieldPath: string, touched: boolean) => FormBuilder.FormState<TFields>;
87
+ readonly appendArrayItem: (state: FormBuilder.FormState<TFields>, arrayPath: string, itemSchema: Schema.Schema.Any, value?: unknown) => FormBuilder.FormState<TFields>;
88
+ readonly removeArrayItem: (state: FormBuilder.FormState<TFields>, arrayPath: string, index: number) => FormBuilder.FormState<TFields>;
89
+ readonly swapArrayItems: (state: FormBuilder.FormState<TFields>, arrayPath: string, indexA: number, indexB: number) => FormBuilder.FormState<TFields>;
90
+ readonly moveArrayItem: (state: FormBuilder.FormState<TFields>, arrayPath: string, fromIndex: number, toIndex: number) => FormBuilder.FormState<TFields>;
78
91
  /**
79
- * Creates the initial form state from default values.
92
+ * Reverts values to the last submitted state.
93
+ * No-op if form has never been submitted or is already in sync.
80
94
  */
81
- readonly createInitialState: (defaultValues: Field.EncodedFromFields<TFields>) => Form.FormState<TFields>;
82
- /**
83
- * Creates a reset state (back to initial values).
84
- */
85
- readonly createResetState: (state: Form.FormState<TFields>) => Form.FormState<TFields>;
86
- /**
87
- * Creates state with all fields marked as touched and submit count incremented.
88
- */
89
- readonly createSubmitState: (state: Form.FormState<TFields>) => Form.FormState<TFields>;
90
- /**
91
- * Updates a single field value in the state.
92
- */
93
- readonly setFieldValue: (state: Form.FormState<TFields>, fieldPath: string, value: unknown) => Form.FormState<TFields>;
94
- /**
95
- * Sets all form values, recalculating dirty fields.
96
- */
97
- readonly setFormValues: (state: Form.FormState<TFields>, values: Field.EncodedFromFields<TFields>) => Form.FormState<TFields>;
98
- /**
99
- * Sets a field as touched.
100
- */
101
- readonly setFieldTouched: (state: Form.FormState<TFields>, fieldPath: string, touched: boolean) => Form.FormState<TFields>;
102
- /**
103
- * Appends an item to an array field.
104
- */
105
- readonly appendArrayItem: (state: Form.FormState<TFields>, arrayPath: string, itemSchema: Schema.Schema.Any, value?: unknown) => Form.FormState<TFields>;
106
- /**
107
- * Removes an item from an array field.
108
- */
109
- readonly removeArrayItem: (state: Form.FormState<TFields>, arrayPath: string, index: number) => Form.FormState<TFields>;
110
- /**
111
- * Swaps two items in an array field.
112
- */
113
- readonly swapArrayItems: (state: Form.FormState<TFields>, arrayPath: string, indexA: number, indexB: number) => Form.FormState<TFields>;
114
- /**
115
- * Moves an item in an array field.
116
- */
117
- readonly moveArrayItem: (state: Form.FormState<TFields>, arrayPath: string, fromIndex: number, toIndex: number) => Form.FormState<TFields>;
95
+ readonly revertToLastSubmit: (state: FormBuilder.FormState<TFields>) => FormBuilder.FormState<TFields>;
118
96
  }
119
97
  /**
120
98
  * Creates the complete form atoms infrastructure.
@@ -128,9 +106,9 @@ export interface FormOperations<TFields extends Field.FieldsRecord> {
128
106
  *
129
107
  * const runtime = Atom.runtime(Layer.empty)
130
108
  *
131
- * const loginForm = Form.empty
132
- * .addField(Form.makeField("email", Schema.String))
133
- * .addField(Form.makeField("password", Schema.String))
109
+ * const loginForm = FormBuilder.empty
110
+ * .addField(FormBuilder.makeField("email", Schema.String))
111
+ * .addField(FormBuilder.makeField("password", Schema.String))
134
112
  *
135
113
  * const atoms = FormAtoms.make({
136
114
  * runtime,
@@ -1 +1 @@
1
- {"version":3,"file":"FormAtoms.d.ts","sourceRoot":"","sources":["../../src/FormAtoms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormAtoms.d.ts","sourceRoot":"","sources":["../../src/FormAtoms.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * @since 1.0.0
3
3
  */
4
4
  import type * as Effect from "effect/Effect";
5
+ import type * as Option from "effect/Option";
5
6
  import * as Schema from "effect/Schema";
6
7
  import type { ArrayFieldDef, DecodedFromFields, EncodedFromFields, FieldDef, FieldsRecord } from "./Field.js";
7
8
  /**
@@ -10,7 +11,7 @@ import type { ArrayFieldDef, DecodedFromFields, EncodedFromFields, FieldDef, Fie
10
11
  * @since 1.0.0
11
12
  * @category Models
12
13
  */
13
- export interface Field<S> {
14
+ export interface FieldRef<S> {
14
15
  readonly [FieldTypeId]: FieldTypeId;
15
16
  readonly _S: S;
16
17
  readonly key: string;
@@ -36,6 +37,7 @@ export type TypeId = typeof TypeId;
36
37
  export interface FormState<TFields extends FieldsRecord> {
37
38
  readonly values: EncodedFromFields<TFields>;
38
39
  readonly initialValues: EncodedFromFields<TFields>;
40
+ readonly lastSubmittedValues: Option.Option<EncodedFromFields<TFields>>;
39
41
  readonly touched: {
40
42
  readonly [K in keyof TFields]: boolean;
41
43
  };
@@ -73,8 +75,8 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
73
75
  *
74
76
  * @example
75
77
  * ```ts
76
- * const NameField = Form.makeField("name", Schema.String)
77
- * const form = Form.empty.addField(NameField)
78
+ * const NameField = Field.makeField("name", Schema.String)
79
+ * const form = FormBuilder.empty.addField(NameField)
78
80
  * ```
79
81
  */
80
82
  addField<K extends string, S extends Schema.Schema.Any>(this: FormBuilder<TFields, R>, field: FieldDef<K, S>): FormBuilder<TFields & {
@@ -85,8 +87,8 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
85
87
  *
86
88
  * @example
87
89
  * ```ts
88
- * const ItemsField = Form.makeArrayField("items", Schema.Struct({ name: Schema.String }))
89
- * const form = Form.empty.addField(ItemsField)
90
+ * const ItemsField = Field.makeArrayField("items", Schema.Struct({ name: Schema.String }))
91
+ * const form = FormBuilder.empty.addField(ItemsField)
90
92
  * ```
91
93
  */
92
94
  addField<K extends string, S extends Schema.Schema.Any>(this: FormBuilder<TFields, R>, field: ArrayFieldDef<K, S>): FormBuilder<TFields & {
@@ -98,11 +100,11 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
98
100
  *
99
101
  * @example
100
102
  * ```ts
101
- * const addressFields = Form.empty
103
+ * const addressFields = FormBuilder.empty
102
104
  * .addField("street", Schema.String)
103
105
  * .addField("city", Schema.String)
104
106
  *
105
- * const userForm = Form.empty
107
+ * const userForm = FormBuilder.empty
106
108
  * .addField("name", Schema.String)
107
109
  * .merge(addressFields)
108
110
  * ```
@@ -113,7 +115,7 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
113
115
  *
114
116
  * @example
115
117
  * ```ts
116
- * const form = Form.empty
118
+ * const form = FormBuilder.empty
117
119
  * .addField("password", Schema.String)
118
120
  * .addField("confirmPassword", Schema.String)
119
121
  * .refine((values) => {
@@ -129,7 +131,7 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
129
131
  *
130
132
  * @example
131
133
  * ```ts
132
- * const form = Form.empty
134
+ * const form = FormBuilder.empty
133
135
  * .addField("username", Schema.String)
134
136
  * .refineEffect((values) =>
135
137
  * Effect.gen(function* () {
@@ -146,14 +148,14 @@ export interface FormBuilder<TFields extends FieldsRecord, R> {
146
148
  *
147
149
  * @example
148
150
  * ```ts
149
- * import * as Form from "@lucas-barake/effect-form"
151
+ * import { FormBuilder } from "@lucas-barake/effect-form"
150
152
  *
151
- * const builder = Form.empty
153
+ * const builder = FormBuilder.empty
152
154
  *
153
- * console.log(Form.isFormBuilder(builder))
155
+ * console.log(FormBuilder.isFormBuilder(builder))
154
156
  * // Output: true
155
157
  *
156
- * console.log(Form.isFormBuilder({}))
158
+ * console.log(FormBuilder.isFormBuilder({}))
157
159
  * // Output: false
158
160
  * ```
159
161
  *
@@ -171,13 +173,13 @@ export declare const isFormBuilder: (u: unknown) => u is FormBuilder<any, any>;
171
173
  *
172
174
  * @example
173
175
  * ```ts
174
- * import * as Form from "@lucas-barake/effect-form"
176
+ * import { Field, FormBuilder } from "@lucas-barake/effect-form"
175
177
  * import * as Schema from "effect/Schema"
176
178
  *
177
- * const EmailField = Form.makeField("email", Schema.String)
178
- * const PasswordField = Form.makeField("password", Schema.String)
179
+ * const EmailField = Field.makeField("email", Schema.String)
180
+ * const PasswordField = Field.makeField("password", Schema.String)
179
181
  *
180
- * const loginForm = Form.empty
182
+ * const loginForm = FormBuilder.empty
181
183
  * .addField(EmailField)
182
184
  * .addField(PasswordField)
183
185
  * ```
@@ -194,4 +196,4 @@ export declare const empty: FormBuilder<{}, never>;
194
196
  */
195
197
  export declare const buildSchema: <TFields extends FieldsRecord, R>(self: FormBuilder<TFields, R>) => Schema.Schema<DecodedFromFields<TFields>, EncodedFromFields<TFields>, R>;
196
198
  export {};
197
- //# sourceMappingURL=Form.d.ts.map
199
+ //# sourceMappingURL=FormBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormBuilder.d.ts","sourceRoot":"","sources":["../../src/FormBuilder.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,EAEV,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACb,MAAM,YAAY,CAAA;AAmBnB;;;;;GAKG;AACH,MAAM,WAAW,QAAQ,CAAC,CAAC;IACzB,QAAQ,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,CAAA;IACnC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;IACd,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB;AAmBD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAqD,CAAA;AAEjF;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;;;GAKG;AACH,MAAM,WAAW,SAAS,CAAC,OAAO,SAAS,YAAY;IACrD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC3C,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAClD,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAA;IACvE,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,CAAC,IAAI,MAAM,OAAO,GAAG,OAAO;KAAE,CAAA;IAC5D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;CAC1C;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,YAAY,CAAA;CACtD;AAED,UAAU,eAAe;IACvB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;CACrF;AAED,KAAK,UAAU,GAAG,cAAc,GAAG,eAAe,CAAA;AAElD;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,WAAW,CAAC,OAAO,SAAS,YAAY,EAAE,CAAC;IAC1D,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,UAAU,CAAC,CAAA;IAC/C,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAEf;;;;;;;;OAQG;IACH,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACpD,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAC7B,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,GACpB,WAAW,CAAC,OAAO,GAAG;QAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;KAAE,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAE/F;;;;;;;;OAQG;IACH,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EACpD,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAC7B,KAAK,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GACzB,WAAW,CAAC,OAAO,GAAG;QAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC;KAAE,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpG;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,QAAQ,SAAS,YAAY,EAAE,EAAE,EACrC,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAC7B,KAAK,EAAE,WAAW,CAAC,QAAQ,EAAE,EAAE,CAAC,GAC/B,WAAW,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;IAE1C;;;;;;;;;;;;;;OAcG;IACH,MAAM,CACJ,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAC7B,SAAS,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,YAAY,GACrE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;IAE1B;;;;;;;;;;;;;;OAcG;IACH,YAAY,CAAC,EAAE,EACb,IAAI,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAC7B,SAAS,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC,GAC/F,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;CAChC;AAgDD;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,aAAa,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,CAAqC,CAAA;AAEzG;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,eAAO,MAAM,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,CAKrC,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,YAAY,EAAE,CAAC,EACzD,MAAM,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,KAC5B,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAyBzE,CAAA"}
@@ -4,10 +4,6 @@
4
4
  * @since 1.0.0
5
5
  */
6
6
  export * as Field from "./Field.js";
7
- /**
8
- * @since 1.0.0
9
- */
10
- export * as Form from "./Form.js";
11
7
  /**
12
8
  * Atom infrastructure for form state management.
13
9
  *
@@ -17,6 +13,10 @@ export * as Form from "./Form.js";
17
13
  * @since 1.0.0
18
14
  */
19
15
  export * as FormAtoms from "./FormAtoms.js";
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+ export * as FormBuilder from "./FormBuilder.js";
20
20
  /**
21
21
  * Form validation mode configuration.
22
22
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;;;;;;GAOG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;;GAIG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;;;;;;GAOG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;;GAIG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}