@lucas-barake/effect-form-react 0.4.0 → 0.6.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/FormReact.js +95 -183
- package/dist/cjs/FormReact.js.map +1 -1
- package/dist/dts/FormReact.d.ts +93 -69
- package/dist/dts/FormReact.d.ts.map +1 -1
- package/dist/esm/FormReact.js +94 -183
- package/dist/esm/FormReact.js.map +1 -1
- package/package.json +2 -2
- package/src/FormReact.tsx +194 -306
package/dist/esm/FormReact.js
CHANGED
|
@@ -3,11 +3,9 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
|
3
3
|
* @since 1.0.0
|
|
4
4
|
*/
|
|
5
5
|
import { RegistryContext, useAtom, useAtomSet, useAtomSubscribe, useAtomValue } from "@effect-atom/atom-react";
|
|
6
|
-
import * as Atom from "@effect-atom/atom/Atom";
|
|
7
6
|
import { Field, FormAtoms, Mode, Validation } from "@lucas-barake/effect-form";
|
|
8
|
-
import { getNestedValue, isPathOrParentDirty,
|
|
7
|
+
import { getNestedValue, isPathOrParentDirty, isPathUnderRoot } from "@lucas-barake/effect-form/internal/path";
|
|
9
8
|
import * as Cause from "effect/Cause";
|
|
10
|
-
import * as Effect from "effect/Effect";
|
|
11
9
|
import * as Option from "effect/Option";
|
|
12
10
|
import * as ParseResult from "effect/ParseResult";
|
|
13
11
|
import * as AST from "effect/SchemaAST";
|
|
@@ -17,7 +15,7 @@ import { useDebounced } from "./internal/use-debounced.js";
|
|
|
17
15
|
const ArrayItemContext = /*#__PURE__*/createContext(null);
|
|
18
16
|
const AutoSubmitContext = /*#__PURE__*/createContext(null);
|
|
19
17
|
const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, Component) => {
|
|
20
|
-
const FieldComponent =
|
|
18
|
+
const FieldComponent = extraProps => {
|
|
21
19
|
const arrayCtx = useContext(ArrayItemContext);
|
|
22
20
|
const autoSubmitOnBlur = useContext(AutoSubmitContext);
|
|
23
21
|
const fieldPath = arrayCtx ? `${arrayCtx.parentPath}.${fieldKey}` : fieldKey;
|
|
@@ -60,12 +58,13 @@ const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCoun
|
|
|
60
58
|
const onChange = React.useCallback(newValue => {
|
|
61
59
|
setValue(newValue);
|
|
62
60
|
setCrossFieldErrors(prev => {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
61
|
+
const next = new Map();
|
|
62
|
+
for (const [errorPath, message] of prev) {
|
|
63
|
+
if (!isPathUnderRoot(errorPath, fieldPath)) {
|
|
64
|
+
next.set(errorPath, message);
|
|
65
|
+
}
|
|
67
66
|
}
|
|
68
|
-
return prev;
|
|
67
|
+
return next.size !== prev.size ? next : prev;
|
|
69
68
|
});
|
|
70
69
|
if (parsedMode.validation === "onChange") {
|
|
71
70
|
validate(newValue);
|
|
@@ -82,17 +81,21 @@ const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCoun
|
|
|
82
81
|
const isDirty = React.useMemo(() => isPathOrParentDirty(dirtyFields, fieldPath), [dirtyFields, fieldPath]);
|
|
83
82
|
const isValidating = validationResult.waiting;
|
|
84
83
|
const shouldShowError = isTouched || submitCount > 0;
|
|
85
|
-
|
|
86
|
-
value
|
|
87
|
-
onChange
|
|
88
|
-
onBlur
|
|
84
|
+
const fieldState = React.useMemo(() => ({
|
|
85
|
+
value,
|
|
86
|
+
onChange,
|
|
87
|
+
onBlur,
|
|
89
88
|
error: shouldShowError ? validationError : Option.none(),
|
|
90
|
-
isTouched
|
|
91
|
-
isValidating
|
|
92
|
-
isDirty
|
|
89
|
+
isTouched,
|
|
90
|
+
isValidating,
|
|
91
|
+
isDirty
|
|
92
|
+
}), [value, onChange, onBlur, shouldShowError, validationError, isTouched, isValidating, isDirty]);
|
|
93
|
+
return _jsx(Component, {
|
|
94
|
+
field: fieldState,
|
|
95
|
+
props: extraProps
|
|
93
96
|
});
|
|
94
|
-
}
|
|
95
|
-
return FieldComponent;
|
|
97
|
+
};
|
|
98
|
+
return React.memo(FieldComponent);
|
|
96
99
|
};
|
|
97
100
|
const makeArrayFieldComponent = (fieldKey, def, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, componentMap) => {
|
|
98
101
|
const isStructSchema = AST.isTypeLiteral(def.itemSchema.ast);
|
|
@@ -179,6 +182,7 @@ const makeArrayFieldComponent = (fieldKey, def, stateAtom, crossFieldErrorsAtom,
|
|
|
179
182
|
Item: ItemWrapper,
|
|
180
183
|
...itemFieldComponents
|
|
181
184
|
};
|
|
185
|
+
// Proxy enables <Form.items.Item> and <Form.items.name> syntax
|
|
182
186
|
return new Proxy(ArrayWrapper, {
|
|
183
187
|
get(target, prop) {
|
|
184
188
|
if (prop in properties) {
|
|
@@ -206,11 +210,11 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
|
|
|
206
210
|
*
|
|
207
211
|
* @example
|
|
208
212
|
* ```tsx
|
|
209
|
-
* import {
|
|
213
|
+
* import { FormBuilder } from "@lucas-barake/effect-form"
|
|
210
214
|
* import { FormReact } from "@lucas-barake/effect-form-react"
|
|
215
|
+
* import { useAtomValue, useAtomSet } from "@effect-atom/atom-react"
|
|
211
216
|
* import * as Atom from "@effect-atom/atom/Atom"
|
|
212
217
|
* import * as Schema from "effect/Schema"
|
|
213
|
-
* import * as Effect from "effect/Effect"
|
|
214
218
|
* import * as Layer from "effect/Layer"
|
|
215
219
|
*
|
|
216
220
|
* const runtime = Atom.runtime(Layer.empty)
|
|
@@ -222,26 +226,28 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
|
|
|
222
226
|
* const form = FormReact.build(loginForm, {
|
|
223
227
|
* runtime,
|
|
224
228
|
* fields: { email: TextInput, password: PasswordInput },
|
|
229
|
+
* onSubmit: (values) => Effect.log(`Login: ${values.email}`),
|
|
225
230
|
* })
|
|
226
231
|
*
|
|
227
|
-
*
|
|
228
|
-
*
|
|
229
|
-
*
|
|
230
|
-
*
|
|
231
|
-
*
|
|
232
|
-
*
|
|
232
|
+
* // Subscribe to atoms anywhere in the tree
|
|
233
|
+
* function SubmitButton() {
|
|
234
|
+
* const isDirty = useAtomValue(form.isDirty)
|
|
235
|
+
* const submit = useAtomValue(form.submit)
|
|
236
|
+
* const callSubmit = useAtomSet(form.submit)
|
|
237
|
+
* return (
|
|
238
|
+
* <button onClick={() => callSubmit()} disabled={!isDirty || submit.waiting}>
|
|
239
|
+
* {submit.waiting ? "Validating..." : "Login"}
|
|
240
|
+
* </button>
|
|
233
241
|
* )
|
|
242
|
+
* }
|
|
234
243
|
*
|
|
244
|
+
* function LoginDialog({ onClose }) {
|
|
235
245
|
* return (
|
|
236
|
-
* <form.
|
|
246
|
+
* <form.Initialize defaultValues={{ email: "", password: "" }}>
|
|
237
247
|
* <form.email />
|
|
238
248
|
* <form.password />
|
|
239
|
-
* <
|
|
240
|
-
*
|
|
241
|
-
* <button onClick={submit} disabled={!isDirty}>Login</button>
|
|
242
|
-
* )}
|
|
243
|
-
* </form.Subscribe>
|
|
244
|
-
* </form.Form>
|
|
249
|
+
* <SubmitButton />
|
|
250
|
+
* </form.Initialize>
|
|
245
251
|
* )
|
|
246
252
|
* }
|
|
247
253
|
* ```
|
|
@@ -253,6 +259,7 @@ export const build = (self, options) => {
|
|
|
253
259
|
const {
|
|
254
260
|
fields: components,
|
|
255
261
|
mode,
|
|
262
|
+
onSubmit,
|
|
256
263
|
runtime
|
|
257
264
|
} = options;
|
|
258
265
|
const parsedMode = Mode.parse(mode);
|
|
@@ -261,12 +268,12 @@ export const build = (self, options) => {
|
|
|
261
268
|
} = self;
|
|
262
269
|
const formAtoms = FormAtoms.make({
|
|
263
270
|
formBuilder: self,
|
|
264
|
-
runtime
|
|
271
|
+
runtime,
|
|
272
|
+
onSubmit
|
|
265
273
|
});
|
|
266
274
|
const {
|
|
267
275
|
combinedSchema,
|
|
268
276
|
crossFieldErrorsAtom,
|
|
269
|
-
decodeAndSubmit,
|
|
270
277
|
dirtyFieldsAtom,
|
|
271
278
|
fieldRefs,
|
|
272
279
|
getOrCreateFieldAtoms,
|
|
@@ -274,35 +281,41 @@ export const build = (self, options) => {
|
|
|
274
281
|
hasChangedSinceSubmitAtom,
|
|
275
282
|
isDirtyAtom,
|
|
276
283
|
lastSubmittedValuesAtom,
|
|
277
|
-
onSubmitAtom,
|
|
278
284
|
operations,
|
|
279
|
-
|
|
285
|
+
resetAtom,
|
|
286
|
+
revertToLastSubmitAtom,
|
|
287
|
+
setValue,
|
|
288
|
+
setValuesAtom,
|
|
280
289
|
stateAtom,
|
|
290
|
+
submitAtom,
|
|
281
291
|
submitCountAtom
|
|
282
292
|
} = formAtoms;
|
|
283
|
-
const
|
|
293
|
+
const InitializeComponent = ({
|
|
284
294
|
children,
|
|
285
|
-
defaultValues
|
|
286
|
-
onSubmit
|
|
295
|
+
defaultValues
|
|
287
296
|
}) => {
|
|
288
297
|
const registry = React.useContext(RegistryContext);
|
|
289
298
|
const state = useAtomValue(stateAtom);
|
|
290
299
|
const setFormState = useAtomSet(stateAtom);
|
|
291
|
-
const
|
|
292
|
-
|
|
293
|
-
React.
|
|
294
|
-
setOnSubmit(onSubmit);
|
|
295
|
-
}, [onSubmit, setOnSubmit]);
|
|
300
|
+
const callSubmit = useAtomSet(submitAtom);
|
|
301
|
+
// Prevents auto-submit from firing on mount when initial state is set
|
|
302
|
+
const isInitializedRef = React.useRef(false);
|
|
296
303
|
React.useEffect(() => {
|
|
297
304
|
setFormState(Option.some(operations.createInitialState(defaultValues)));
|
|
305
|
+
// Microtask ensures state update completes before enabling auto-submit
|
|
306
|
+
queueMicrotask(() => {
|
|
307
|
+
isInitializedRef.current = true;
|
|
308
|
+
});
|
|
298
309
|
// eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only
|
|
299
310
|
}, []);
|
|
300
311
|
const debouncedAutoSubmit = useDebounced(() => {
|
|
301
312
|
const stateOption = registry.get(stateAtom);
|
|
302
313
|
if (Option.isNone(stateOption)) return;
|
|
303
|
-
|
|
314
|
+
callSubmit();
|
|
304
315
|
}, parsedMode.autoSubmit && parsedMode.validation === "onChange" ? parsedMode.debounce : null);
|
|
305
316
|
useAtomSubscribe(stateAtom, React.useCallback(() => {
|
|
317
|
+
// Skip auto-submit for initial state set
|
|
318
|
+
if (!isInitializedRef.current) return;
|
|
306
319
|
if (parsedMode.autoSubmit && parsedMode.validation === "onChange") {
|
|
307
320
|
debouncedAutoSubmit();
|
|
308
321
|
}
|
|
@@ -313,9 +326,9 @@ export const build = (self, options) => {
|
|
|
313
326
|
if (parsedMode.autoSubmit && parsedMode.validation === "onBlur") {
|
|
314
327
|
const stateOption = registry.get(stateAtom);
|
|
315
328
|
if (Option.isNone(stateOption)) return;
|
|
316
|
-
|
|
329
|
+
callSubmit();
|
|
317
330
|
}
|
|
318
|
-
}, [registry,
|
|
331
|
+
}, [registry, callSubmit]);
|
|
319
332
|
if (Option.isNone(state)) return null;
|
|
320
333
|
return _jsx(AutoSubmitContext.Provider, {
|
|
321
334
|
value: onBlurAutoSubmit,
|
|
@@ -328,146 +341,44 @@ export const build = (self, options) => {
|
|
|
328
341
|
})
|
|
329
342
|
});
|
|
330
343
|
};
|
|
331
|
-
const useFormHook = () => {
|
|
332
|
-
const registry = React.useContext(RegistryContext);
|
|
333
|
-
const formValues = Option.getOrThrow(useAtomValue(stateAtom)).values;
|
|
334
|
-
const setFormState = useAtomSet(stateAtom);
|
|
335
|
-
const setCrossFieldErrors = useAtomSet(crossFieldErrorsAtom);
|
|
336
|
-
const [decodeAndSubmitResult, callDecodeAndSubmit] = useAtom(decodeAndSubmit);
|
|
337
|
-
const isDirty = useAtomValue(isDirtyAtom);
|
|
338
|
-
const hasChangedSinceSubmit = useAtomValue(hasChangedSinceSubmitAtom);
|
|
339
|
-
const lastSubmittedValues = useAtomValue(lastSubmittedValuesAtom);
|
|
340
|
-
React.useEffect(() => {
|
|
341
|
-
if (decodeAndSubmitResult._tag === "Failure") {
|
|
342
|
-
const parseError = Cause.failureOption(decodeAndSubmitResult.cause);
|
|
343
|
-
if (Option.isSome(parseError) && ParseResult.isParseError(parseError.value)) {
|
|
344
|
-
const issues = ParseResult.ArrayFormatter.formatErrorSync(parseError.value);
|
|
345
|
-
const fieldErrors = new Map();
|
|
346
|
-
for (const issue of issues) {
|
|
347
|
-
if (issue.path.length > 0) {
|
|
348
|
-
const fieldPath = schemaPathToFieldPath(issue.path);
|
|
349
|
-
if (!fieldErrors.has(fieldPath)) {
|
|
350
|
-
fieldErrors.set(fieldPath, issue.message);
|
|
351
|
-
}
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
if (fieldErrors.size > 0) {
|
|
355
|
-
setCrossFieldErrors(fieldErrors);
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
}
|
|
359
|
-
}, [decodeAndSubmitResult, setCrossFieldErrors]);
|
|
360
|
-
const submit = React.useCallback(() => {
|
|
361
|
-
const stateOption = registry.get(stateAtom);
|
|
362
|
-
if (Option.isNone(stateOption)) return;
|
|
363
|
-
setCrossFieldErrors(new Map());
|
|
364
|
-
setFormState(prev => {
|
|
365
|
-
if (Option.isNone(prev)) return prev;
|
|
366
|
-
return Option.some(operations.createSubmitState(prev.value));
|
|
367
|
-
});
|
|
368
|
-
callDecodeAndSubmit(stateOption.value.values);
|
|
369
|
-
}, [setFormState, callDecodeAndSubmit, setCrossFieldErrors, registry]);
|
|
370
|
-
const reset = React.useCallback(() => {
|
|
371
|
-
setFormState(prev => {
|
|
372
|
-
if (Option.isNone(prev)) return prev;
|
|
373
|
-
return Option.some(operations.createResetState(prev.value));
|
|
374
|
-
});
|
|
375
|
-
setCrossFieldErrors(new Map());
|
|
376
|
-
resetValidationAtoms(registry);
|
|
377
|
-
callDecodeAndSubmit(Atom.Reset);
|
|
378
|
-
}, [setFormState, setCrossFieldErrors, callDecodeAndSubmit, registry]);
|
|
379
|
-
const revertToLastSubmit = React.useCallback(() => {
|
|
380
|
-
setFormState(prev => {
|
|
381
|
-
if (Option.isNone(prev)) return prev;
|
|
382
|
-
return Option.some(operations.revertToLastSubmit(prev.value));
|
|
383
|
-
});
|
|
384
|
-
setCrossFieldErrors(new Map());
|
|
385
|
-
}, [setFormState, setCrossFieldErrors]);
|
|
386
|
-
const setValue = React.useCallback((field, update) => {
|
|
387
|
-
const path = field.key;
|
|
388
|
-
setFormState(prev => {
|
|
389
|
-
if (Option.isNone(prev)) return prev;
|
|
390
|
-
const state = prev.value;
|
|
391
|
-
const currentValue = getNestedValue(state.values, path);
|
|
392
|
-
const newValue = typeof update === "function" ? update(currentValue) : update;
|
|
393
|
-
return Option.some(operations.setFieldValue(state, path, newValue));
|
|
394
|
-
});
|
|
395
|
-
setCrossFieldErrors(prev => {
|
|
396
|
-
let changed = false;
|
|
397
|
-
const next = new Map(prev);
|
|
398
|
-
for (const errorPath of prev.keys()) {
|
|
399
|
-
if (errorPath === path || errorPath.startsWith(path + ".") || errorPath.startsWith(path + "[")) {
|
|
400
|
-
next.delete(errorPath);
|
|
401
|
-
changed = true;
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
return changed ? next : prev;
|
|
405
|
-
});
|
|
406
|
-
}, [setFormState, setCrossFieldErrors]);
|
|
407
|
-
const setValues = React.useCallback(values => {
|
|
408
|
-
setFormState(prev => {
|
|
409
|
-
if (Option.isNone(prev)) return prev;
|
|
410
|
-
return Option.some(operations.setFormValues(prev.value, values));
|
|
411
|
-
});
|
|
412
|
-
setCrossFieldErrors(new Map());
|
|
413
|
-
}, [setFormState, setCrossFieldErrors]);
|
|
414
|
-
return {
|
|
415
|
-
submit,
|
|
416
|
-
reset,
|
|
417
|
-
revertToLastSubmit,
|
|
418
|
-
isDirty,
|
|
419
|
-
hasChangedSinceSubmit,
|
|
420
|
-
lastSubmittedValues,
|
|
421
|
-
submitResult: decodeAndSubmitResult,
|
|
422
|
-
values: formValues,
|
|
423
|
-
setValue,
|
|
424
|
-
setValues
|
|
425
|
-
};
|
|
426
|
-
};
|
|
427
|
-
const SubscribeComponent = ({
|
|
428
|
-
children
|
|
429
|
-
}) => {
|
|
430
|
-
const {
|
|
431
|
-
hasChangedSinceSubmit,
|
|
432
|
-
isDirty,
|
|
433
|
-
lastSubmittedValues,
|
|
434
|
-
reset,
|
|
435
|
-
revertToLastSubmit,
|
|
436
|
-
setValue,
|
|
437
|
-
setValues,
|
|
438
|
-
submit,
|
|
439
|
-
submitResult,
|
|
440
|
-
values
|
|
441
|
-
} = useFormHook();
|
|
442
|
-
return _jsx(_Fragment, {
|
|
443
|
-
children: children({
|
|
444
|
-
hasChangedSinceSubmit,
|
|
445
|
-
isDirty,
|
|
446
|
-
lastSubmittedValues,
|
|
447
|
-
reset,
|
|
448
|
-
revertToLastSubmit,
|
|
449
|
-
setValue,
|
|
450
|
-
setValues,
|
|
451
|
-
submit,
|
|
452
|
-
submitResult,
|
|
453
|
-
values
|
|
454
|
-
})
|
|
455
|
-
});
|
|
456
|
-
};
|
|
457
|
-
const submitHelper = fn => runtime.fn()((values, get) => {
|
|
458
|
-
const result = fn(values, get);
|
|
459
|
-
return Effect.isEffect(result) ? result : Effect.succeed(result);
|
|
460
|
-
});
|
|
461
344
|
const fieldComponents = makeFieldComponents(fields, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, components);
|
|
462
345
|
return {
|
|
463
|
-
|
|
346
|
+
isDirty: isDirtyAtom,
|
|
347
|
+
hasChangedSinceSubmit: hasChangedSinceSubmitAtom,
|
|
348
|
+
lastSubmittedValues: lastSubmittedValuesAtom,
|
|
349
|
+
submitCount: submitCountAtom,
|
|
464
350
|
schema: combinedSchema,
|
|
465
351
|
fields: fieldRefs,
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
352
|
+
Initialize: InitializeComponent,
|
|
353
|
+
submit: submitAtom,
|
|
354
|
+
reset: resetAtom,
|
|
355
|
+
revertToLastSubmit: revertToLastSubmitAtom,
|
|
356
|
+
setValues: setValuesAtom,
|
|
357
|
+
setValue,
|
|
470
358
|
...fieldComponents
|
|
471
359
|
};
|
|
472
360
|
};
|
|
361
|
+
/**
|
|
362
|
+
* A curried helper that infers the schema type from the field definition.
|
|
363
|
+
* Provides ergonomic type inference when defining field components.
|
|
364
|
+
*
|
|
365
|
+
* @example
|
|
366
|
+
* ```tsx
|
|
367
|
+
* import { FormReact } from "@lucas-barake/effect-form-react"
|
|
368
|
+
*
|
|
369
|
+
* // Without extra props - schema inferred from field
|
|
370
|
+
* const TextInput = FormReact.forField(EmailField)(({ field }) => (
|
|
371
|
+
* <input value={field.value} onChange={e => field.onChange(e.target.value)} />
|
|
372
|
+
* ))
|
|
373
|
+
*
|
|
374
|
+
* // With extra props - just specify the props type
|
|
375
|
+
* const TextInput = FormReact.forField(EmailField)<{ placeholder?: string }>(({ field, props }) => (
|
|
376
|
+
* <input value={field.value} placeholder={props.placeholder} ... />
|
|
377
|
+
* ))
|
|
378
|
+
* ```
|
|
379
|
+
*
|
|
380
|
+
* @since 1.0.0
|
|
381
|
+
* @category Constructors
|
|
382
|
+
*/
|
|
383
|
+
export const forField = _field => component => component;
|
|
473
384
|
//# sourceMappingURL=FormReact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormReact.js","names":["RegistryContext","useAtom","useAtomSet","useAtomSubscribe","useAtomValue","Atom","Field","FormAtoms","Mode","Validation","getNestedValue","isPathOrParentDirty","schemaPathToFieldPath","Cause","Effect","Option","ParseResult","AST","React","createContext","useContext","useDebounced","ArrayItemContext","AutoSubmitContext","makeFieldComponent","fieldKey","fieldDef","crossFieldErrorsAtom","submitCountAtom","dirtyFieldsAtom","parsedMode","getOrCreateValidationAtom","getOrCreateFieldAtoms","Component","FieldComponent","memo","arrayCtx","autoSubmitOnBlur","fieldPath","parentPath","crossFieldErrorAtom","touchedAtom","valueAtom","useMemo","value","setValue","isTouched","setTouched","crossFieldError","setCrossFieldErrors","submitCount","validationAtom","schema","validationResult","validateImmediate","shouldDebounceValidation","validation","debounce","autoSubmit","validate","prevValueRef","useRef","useEffect","current","shouldValidate","perFieldError","_tag","parseError","failureOption","cause","isSome","isParseError","extractFirstError","none","validationError","onChange","useCallback","newValue","prev","has","next","Map","delete","onBlur","dirtyFields","isDirty","isValidating","waiting","shouldShowError","_jsx","error","makeArrayFieldComponent","def","stateAtom","operations","componentMap","isStructSchema","isTypeLiteral","itemSchema","ast","ArrayWrapper","children","formStateOption","setFormState","formState","getOrThrow","items","values","append","isNone","some","appendArrayItem","remove","index","removeArrayItem","swap","indexA","indexB","swapArrayItems","move","from","to","moveArrayItem","_Fragment","ItemWrapper","itemPath","Provider","itemFieldComponents","prop","propertySignatures","itemKey","name","type","itemDef","makeField","itemComponent","properties","Item","Proxy","get","target","Reflect","makeFieldComponents","fields","components","key","Object","entries","isArrayFieldDef","arrayComponentMap","isFieldDef","fieldComponent","build","self","options","mode","runtime","parse","formAtoms","make","formBuilder","combinedSchema","decodeAndSubmit","fieldRefs","hasChangedSinceSubmitAtom","isDirtyAtom","lastSubmittedValuesAtom","onSubmitAtom","resetValidationAtoms","FormComponent","defaultValues","onSubmit","registry","state","setOnSubmit","callDecodeAndSubmit","createInitialState","debouncedAutoSubmit","stateOption","immediate","onBlurAutoSubmit","e","preventDefault","stopPropagation","useFormHook","formValues","decodeAndSubmitResult","hasChangedSinceSubmit","lastSubmittedValues","issues","ArrayFormatter","formatErrorSync","fieldErrors","issue","path","length","set","message","size","submit","createSubmitState","reset","createResetState","Reset","revertToLastSubmit","field","update","currentValue","setFieldValue","changed","errorPath","keys","startsWith","setValues","setFormValues","submitResult","SubscribeComponent","submitHelper","fn","result","isEffect","succeed","fieldComponents","atom","Form","Subscribe","useForm"],"sources":["../../src/FormReact.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"FormReact.js","names":["RegistryContext","useAtom","useAtomSet","useAtomSubscribe","useAtomValue","Field","FormAtoms","Mode","Validation","getNestedValue","isPathOrParentDirty","isPathUnderRoot","Cause","Option","ParseResult","AST","React","createContext","useContext","useDebounced","ArrayItemContext","AutoSubmitContext","makeFieldComponent","fieldKey","fieldDef","crossFieldErrorsAtom","submitCountAtom","dirtyFieldsAtom","parsedMode","getOrCreateValidationAtom","getOrCreateFieldAtoms","Component","FieldComponent","extraProps","arrayCtx","autoSubmitOnBlur","fieldPath","parentPath","crossFieldErrorAtom","touchedAtom","valueAtom","useMemo","value","setValue","isTouched","setTouched","crossFieldError","setCrossFieldErrors","submitCount","validationAtom","schema","validationResult","validateImmediate","shouldDebounceValidation","validation","debounce","autoSubmit","validate","prevValueRef","useRef","useEffect","current","shouldValidate","perFieldError","_tag","parseError","failureOption","cause","isSome","isParseError","extractFirstError","none","validationError","onChange","useCallback","newValue","prev","next","Map","errorPath","message","set","size","onBlur","dirtyFields","isDirty","isValidating","waiting","shouldShowError","fieldState","error","_jsx","field","props","memo","makeArrayFieldComponent","def","stateAtom","operations","componentMap","isStructSchema","isTypeLiteral","itemSchema","ast","ArrayWrapper","children","formStateOption","setFormState","formState","getOrThrow","items","values","append","isNone","some","appendArrayItem","remove","index","removeArrayItem","swap","indexA","indexB","swapArrayItems","move","from","to","moveArrayItem","_Fragment","ItemWrapper","itemPath","Provider","itemFieldComponents","prop","propertySignatures","itemKey","name","type","itemDef","makeField","itemComponent","properties","Item","Proxy","get","target","Reflect","makeFieldComponents","fields","components","key","Object","entries","isArrayFieldDef","arrayComponentMap","isFieldDef","fieldComponent","build","self","options","mode","onSubmit","runtime","parse","formAtoms","make","formBuilder","combinedSchema","fieldRefs","hasChangedSinceSubmitAtom","isDirtyAtom","lastSubmittedValuesAtom","resetAtom","revertToLastSubmitAtom","setValuesAtom","submitAtom","InitializeComponent","defaultValues","registry","state","callSubmit","isInitializedRef","createInitialState","queueMicrotask","debouncedAutoSubmit","stateOption","immediate","onBlurAutoSubmit","e","preventDefault","stopPropagation","fieldComponents","hasChangedSinceSubmit","lastSubmittedValues","Initialize","submit","reset","revertToLastSubmit","setValues","forField","_field","component"],"sources":["../../src/FormReact.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lucas-barake/effect-form-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "React bindings for @lucas-barake/effect-form",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"author": "Lucas Barake",
|
|
12
12
|
"homepage": "https://github.com/lucas-barake/effect-form",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@lucas-barake/effect-form": "^0.
|
|
14
|
+
"@lucas-barake/effect-form": "^0.5.0"
|
|
15
15
|
},
|
|
16
16
|
"peerDependencies": {
|
|
17
17
|
"@effect-atom/atom": "^0.4.8",
|