@lucas-barake/effect-form-react 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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, schemaPathToFieldPath } from "@lucas-barake/effect-form/internal/path";
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";
@@ -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
- if (prev.has(fieldPath)) {
64
- const next = new Map(prev);
65
- next.delete(fieldPath);
66
- return next;
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);
@@ -183,6 +182,7 @@ const makeArrayFieldComponent = (fieldKey, def, stateAtom, crossFieldErrorsAtom,
183
182
  Item: ItemWrapper,
184
183
  ...itemFieldComponents
185
184
  };
185
+ // Proxy enables <Form.items.Item> and <Form.items.name> syntax
186
186
  return new Proxy(ArrayWrapper, {
187
187
  get(target, prop) {
188
188
  if (prop in properties) {
@@ -210,11 +210,11 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
210
210
  *
211
211
  * @example
212
212
  * ```tsx
213
- * import { Form } from "@lucas-barake/effect-form"
213
+ * import { FormBuilder } from "@lucas-barake/effect-form"
214
214
  * import { FormReact } from "@lucas-barake/effect-form-react"
215
+ * import { useAtomValue, useAtomSet } from "@effect-atom/atom-react"
215
216
  * import * as Atom from "@effect-atom/atom/Atom"
216
217
  * import * as Schema from "effect/Schema"
217
- * import * as Effect from "effect/Effect"
218
218
  * import * as Layer from "effect/Layer"
219
219
  *
220
220
  * const runtime = Atom.runtime(Layer.empty)
@@ -226,26 +226,28 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
226
226
  * const form = FormReact.build(loginForm, {
227
227
  * runtime,
228
228
  * fields: { email: TextInput, password: PasswordInput },
229
+ * onSubmit: (values) => Effect.log(`Login: ${values.email}`),
229
230
  * })
230
231
  *
231
- * function LoginDialog({ onClose }) {
232
- * const handleSubmit = form.submit((values) =>
233
- * Effect.gen(function* () {
234
- * yield* saveUser(values)
235
- * onClose()
236
- * })
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>
237
241
  * )
242
+ * }
238
243
  *
244
+ * function LoginDialog({ onClose }) {
239
245
  * return (
240
- * <form.Form defaultValues={{ email: "", password: "" }} onSubmit={handleSubmit}>
246
+ * <form.Initialize defaultValues={{ email: "", password: "" }}>
241
247
  * <form.email />
242
248
  * <form.password />
243
- * <form.Subscribe>
244
- * {({ isDirty, submit }) => (
245
- * <button onClick={submit} disabled={!isDirty}>Login</button>
246
- * )}
247
- * </form.Subscribe>
248
- * </form.Form>
249
+ * <SubmitButton />
250
+ * </form.Initialize>
249
251
  * )
250
252
  * }
251
253
  * ```
@@ -257,6 +259,7 @@ export const build = (self, options) => {
257
259
  const {
258
260
  fields: components,
259
261
  mode,
262
+ onSubmit,
260
263
  runtime
261
264
  } = options;
262
265
  const parsedMode = Mode.parse(mode);
@@ -265,12 +268,12 @@ export const build = (self, options) => {
265
268
  } = self;
266
269
  const formAtoms = FormAtoms.make({
267
270
  formBuilder: self,
268
- runtime
271
+ runtime,
272
+ onSubmit
269
273
  });
270
274
  const {
271
275
  combinedSchema,
272
276
  crossFieldErrorsAtom,
273
- decodeAndSubmit,
274
277
  dirtyFieldsAtom,
275
278
  fieldRefs,
276
279
  getOrCreateFieldAtoms,
@@ -278,35 +281,36 @@ export const build = (self, options) => {
278
281
  hasChangedSinceSubmitAtom,
279
282
  isDirtyAtom,
280
283
  lastSubmittedValuesAtom,
281
- onSubmitAtom,
282
284
  operations,
283
- resetValidationAtoms,
285
+ resetAtom,
286
+ revertToLastSubmitAtom,
287
+ setValue,
288
+ setValuesAtom,
284
289
  stateAtom,
290
+ submitAtom,
285
291
  submitCountAtom
286
292
  } = formAtoms;
287
- const FormComponent = ({
293
+ const InitializeComponent = ({
288
294
  children,
289
- defaultValues,
290
- onSubmit
295
+ defaultValues
291
296
  }) => {
292
297
  const registry = React.useContext(RegistryContext);
293
298
  const state = useAtomValue(stateAtom);
294
299
  const setFormState = useAtomSet(stateAtom);
295
- const setOnSubmit = useAtomSet(onSubmitAtom);
296
- const callDecodeAndSubmit = useAtomSet(decodeAndSubmit);
297
- React.useEffect(() => {
298
- setOnSubmit(onSubmit);
299
- }, [onSubmit, setOnSubmit]);
300
+ const callSubmit = useAtomSet(submitAtom);
301
+ const isInitializedRef = React.useRef(false);
300
302
  React.useEffect(() => {
301
303
  setFormState(Option.some(operations.createInitialState(defaultValues)));
304
+ isInitializedRef.current = true;
302
305
  // eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only
303
306
  }, []);
304
307
  const debouncedAutoSubmit = useDebounced(() => {
305
308
  const stateOption = registry.get(stateAtom);
306
309
  if (Option.isNone(stateOption)) return;
307
- callDecodeAndSubmit(stateOption.value.values);
310
+ callSubmit();
308
311
  }, parsedMode.autoSubmit && parsedMode.validation === "onChange" ? parsedMode.debounce : null);
309
312
  useAtomSubscribe(stateAtom, React.useCallback(() => {
313
+ if (!isInitializedRef.current) return;
310
314
  if (parsedMode.autoSubmit && parsedMode.validation === "onChange") {
311
315
  debouncedAutoSubmit();
312
316
  }
@@ -317,9 +321,9 @@ export const build = (self, options) => {
317
321
  if (parsedMode.autoSubmit && parsedMode.validation === "onBlur") {
318
322
  const stateOption = registry.get(stateAtom);
319
323
  if (Option.isNone(stateOption)) return;
320
- callDecodeAndSubmit(stateOption.value.values);
324
+ callSubmit();
321
325
  }
322
- }, [registry, callDecodeAndSubmit]);
326
+ }, [registry, callSubmit]);
323
327
  if (Option.isNone(state)) return null;
324
328
  return _jsx(AutoSubmitContext.Provider, {
325
329
  value: onBlurAutoSubmit,
@@ -332,145 +336,20 @@ export const build = (self, options) => {
332
336
  })
333
337
  });
334
338
  };
335
- const useFormHook = () => {
336
- const registry = React.useContext(RegistryContext);
337
- const formValues = Option.getOrThrow(useAtomValue(stateAtom)).values;
338
- const setFormState = useAtomSet(stateAtom);
339
- const setCrossFieldErrors = useAtomSet(crossFieldErrorsAtom);
340
- const [decodeAndSubmitResult, callDecodeAndSubmit] = useAtom(decodeAndSubmit);
341
- const isDirty = useAtomValue(isDirtyAtom);
342
- const hasChangedSinceSubmit = useAtomValue(hasChangedSinceSubmitAtom);
343
- const lastSubmittedValues = useAtomValue(lastSubmittedValuesAtom);
344
- React.useEffect(() => {
345
- if (decodeAndSubmitResult._tag === "Failure") {
346
- const parseError = Cause.failureOption(decodeAndSubmitResult.cause);
347
- if (Option.isSome(parseError) && ParseResult.isParseError(parseError.value)) {
348
- const issues = ParseResult.ArrayFormatter.formatErrorSync(parseError.value);
349
- const fieldErrors = new Map();
350
- for (const issue of issues) {
351
- if (issue.path.length > 0) {
352
- const fieldPath = schemaPathToFieldPath(issue.path);
353
- if (!fieldErrors.has(fieldPath)) {
354
- fieldErrors.set(fieldPath, issue.message);
355
- }
356
- }
357
- }
358
- if (fieldErrors.size > 0) {
359
- setCrossFieldErrors(fieldErrors);
360
- }
361
- }
362
- }
363
- }, [decodeAndSubmitResult, setCrossFieldErrors]);
364
- const submit = React.useCallback(() => {
365
- const stateOption = registry.get(stateAtom);
366
- if (Option.isNone(stateOption)) return;
367
- setCrossFieldErrors(new Map());
368
- setFormState(prev => {
369
- if (Option.isNone(prev)) return prev;
370
- return Option.some(operations.createSubmitState(prev.value));
371
- });
372
- callDecodeAndSubmit(stateOption.value.values);
373
- }, [setFormState, callDecodeAndSubmit, setCrossFieldErrors, registry]);
374
- const reset = React.useCallback(() => {
375
- setFormState(prev => {
376
- if (Option.isNone(prev)) return prev;
377
- return Option.some(operations.createResetState(prev.value));
378
- });
379
- setCrossFieldErrors(new Map());
380
- resetValidationAtoms(registry);
381
- callDecodeAndSubmit(Atom.Reset);
382
- }, [setFormState, setCrossFieldErrors, callDecodeAndSubmit, registry]);
383
- const revertToLastSubmit = React.useCallback(() => {
384
- setFormState(prev => {
385
- if (Option.isNone(prev)) return prev;
386
- return Option.some(operations.revertToLastSubmit(prev.value));
387
- });
388
- setCrossFieldErrors(new Map());
389
- }, [setFormState, setCrossFieldErrors]);
390
- const setValue = React.useCallback((field, update) => {
391
- const path = field.key;
392
- setFormState(prev => {
393
- if (Option.isNone(prev)) return prev;
394
- const state = prev.value;
395
- const currentValue = getNestedValue(state.values, path);
396
- const newValue = typeof update === "function" ? update(currentValue) : update;
397
- return Option.some(operations.setFieldValue(state, path, newValue));
398
- });
399
- setCrossFieldErrors(prev => {
400
- let changed = false;
401
- const next = new Map(prev);
402
- for (const errorPath of prev.keys()) {
403
- if (errorPath === path || errorPath.startsWith(path + ".") || errorPath.startsWith(path + "[")) {
404
- next.delete(errorPath);
405
- changed = true;
406
- }
407
- }
408
- return changed ? next : prev;
409
- });
410
- }, [setFormState, setCrossFieldErrors]);
411
- const setValues = React.useCallback(values => {
412
- setFormState(prev => {
413
- if (Option.isNone(prev)) return prev;
414
- return Option.some(operations.setFormValues(prev.value, values));
415
- });
416
- setCrossFieldErrors(new Map());
417
- }, [setFormState, setCrossFieldErrors]);
418
- return {
419
- submit,
420
- reset,
421
- revertToLastSubmit,
422
- isDirty,
423
- hasChangedSinceSubmit,
424
- lastSubmittedValues,
425
- submitResult: decodeAndSubmitResult,
426
- values: formValues,
427
- setValue,
428
- setValues
429
- };
430
- };
431
- const SubscribeComponent = ({
432
- children
433
- }) => {
434
- const {
435
- hasChangedSinceSubmit,
436
- isDirty,
437
- lastSubmittedValues,
438
- reset,
439
- revertToLastSubmit,
440
- setValue,
441
- setValues,
442
- submit,
443
- submitResult,
444
- values
445
- } = useFormHook();
446
- return _jsx(_Fragment, {
447
- children: children({
448
- hasChangedSinceSubmit,
449
- isDirty,
450
- lastSubmittedValues,
451
- reset,
452
- revertToLastSubmit,
453
- setValue,
454
- setValues,
455
- submit,
456
- submitResult,
457
- values
458
- })
459
- });
460
- };
461
- const submitHelper = fn => runtime.fn()((values, get) => {
462
- const result = fn(values, get);
463
- return Effect.isEffect(result) ? result : Effect.succeed(result);
464
- });
465
339
  const fieldComponents = makeFieldComponents(fields, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, components);
466
340
  return {
467
- atom: stateAtom,
341
+ isDirty: isDirtyAtom,
342
+ hasChangedSinceSubmit: hasChangedSinceSubmitAtom,
343
+ lastSubmittedValues: lastSubmittedValuesAtom,
344
+ submitCount: submitCountAtom,
468
345
  schema: combinedSchema,
469
346
  fields: fieldRefs,
470
- Form: FormComponent,
471
- Subscribe: SubscribeComponent,
472
- useForm: useFormHook,
473
- submit: submitHelper,
347
+ Initialize: InitializeComponent,
348
+ submit: submitAtom,
349
+ reset: resetAtom,
350
+ revertToLastSubmit: revertToLastSubmitAtom,
351
+ setValues: setValuesAtom,
352
+ setValue,
474
353
  ...fieldComponents
475
354
  };
476
355
  };
@@ -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","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","has","next","Map","delete","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","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","update","currentValue","setFieldValue","changed","errorPath","keys","startsWith","setValues","setFormValues","submitResult","SubscribeComponent","submitHelper","fn","result","isEffect","succeed","fieldComponents","atom","Form","Subscribe","useForm","forField","_field","component"],"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","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.5.0",
3
+ "version": "0.7.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.4.0"
14
+ "@lucas-barake/effect-form": "^0.6.0"
15
15
  },
16
16
  "peerDependencies": {
17
17
  "@effect-atom/atom": "^0.4.8",