@lucas-barake/effect-form-react 0.3.0 → 0.5.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,13 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.build = void 0;
6
+ exports.forField = exports.build = void 0;
7
7
  var _jsxRuntime = /*#__PURE__*/require("react/jsx-runtime");
8
8
  var _atomReact = /*#__PURE__*/require("@effect-atom/atom-react");
9
9
  var Atom = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@effect-atom/atom/Atom"));
10
10
  var _effectForm = /*#__PURE__*/require("@lucas-barake/effect-form");
11
11
  var _path = /*#__PURE__*/require("@lucas-barake/effect-form/internal/path");
12
12
  var Cause = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Cause"));
13
+ var Effect = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Effect"));
13
14
  var Option = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/Option"));
14
15
  var ParseResult = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/ParseResult"));
15
16
  var AST = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("effect/SchemaAST"));
@@ -43,7 +44,7 @@ function _interopRequireWildcard(e, t) {
43
44
  const ArrayItemContext = /*#__PURE__*/(0, _react.createContext)(null);
44
45
  const AutoSubmitContext = /*#__PURE__*/(0, _react.createContext)(null);
45
46
  const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, Component) => {
46
- const FieldComponent = React.memo(() => {
47
+ const FieldComponent = extraProps => {
47
48
  const arrayCtx = (0, _react.useContext)(ArrayItemContext);
48
49
  const autoSubmitOnBlur = (0, _react.useContext)(AutoSubmitContext);
49
50
  const fieldPath = arrayCtx ? `${arrayCtx.parentPath}.${fieldKey}` : fieldKey;
@@ -108,17 +109,21 @@ const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCoun
108
109
  const isDirty = React.useMemo(() => (0, _path.isPathOrParentDirty)(dirtyFields, fieldPath), [dirtyFields, fieldPath]);
109
110
  const isValidating = validationResult.waiting;
110
111
  const shouldShowError = isTouched || submitCount > 0;
111
- return (0, _jsxRuntime.jsx)(Component, {
112
- value: value,
113
- onChange: onChange,
114
- onBlur: onBlur,
112
+ const fieldState = React.useMemo(() => ({
113
+ value,
114
+ onChange,
115
+ onBlur,
115
116
  error: shouldShowError ? validationError : Option.none(),
116
- isTouched: isTouched,
117
- isValidating: isValidating,
118
- isDirty: isDirty
117
+ isTouched,
118
+ isValidating,
119
+ isDirty
120
+ }), [value, onChange, onBlur, shouldShowError, validationError, isTouched, isValidating, isDirty]);
121
+ return (0, _jsxRuntime.jsx)(Component, {
122
+ field: fieldState,
123
+ props: extraProps
119
124
  });
120
- });
121
- return FieldComponent;
125
+ };
126
+ return React.memo(FieldComponent);
122
127
  };
123
128
  const makeArrayFieldComponent = (fieldKey, def, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, componentMap) => {
124
129
  const isStructSchema = AST.isTypeLiteral(def.itemSchema.ast);
@@ -241,7 +246,7 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
241
246
  *
242
247
  * const runtime = Atom.runtime(Layer.empty)
243
248
  *
244
- * const loginForm = Form.empty
249
+ * const loginForm = FormBuilder.empty
245
250
  * .addField("email", Schema.String)
246
251
  * .addField("password", Schema.String)
247
252
  *
@@ -480,7 +485,10 @@ const build = (self, options) => {
480
485
  })
481
486
  });
482
487
  };
483
- const submitHelper = fn => runtime.fn()(fn);
488
+ const submitHelper = fn => runtime.fn()((values, get) => {
489
+ const result = fn(values, get);
490
+ return Effect.isEffect(result) ? result : Effect.succeed(result);
491
+ });
484
492
  const fieldComponents = makeFieldComponents(fields, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, components);
485
493
  return {
486
494
  atom: stateAtom,
@@ -493,5 +501,29 @@ const build = (self, options) => {
493
501
  ...fieldComponents
494
502
  };
495
503
  };
504
+ /**
505
+ * A curried helper that infers the schema type from the field definition.
506
+ * Provides ergonomic type inference when defining field components.
507
+ *
508
+ * @example
509
+ * ```tsx
510
+ * import { FormReact } from "@lucas-barake/effect-form-react"
511
+ *
512
+ * // Without extra props - schema inferred from field
513
+ * const TextInput = FormReact.forField(EmailField)(({ field }) => (
514
+ * <input value={field.value} onChange={e => field.onChange(e.target.value)} />
515
+ * ))
516
+ *
517
+ * // With extra props - just specify the props type
518
+ * const TextInput = FormReact.forField(EmailField)<{ placeholder?: string }>(({ field, props }) => (
519
+ * <input value={field.value} placeholder={props.placeholder} ... />
520
+ * ))
521
+ * ```
522
+ *
523
+ * @since 1.0.0
524
+ * @category Constructors
525
+ */
496
526
  exports.build = build;
527
+ const forField = _field => component => component;
528
+ exports.forField = forField;
497
529
  //# sourceMappingURL=FormReact.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormReact.js","names":["_atomReact","require","Atom","_interopRequireWildcard","_effectForm","_path","Cause","Option","ParseResult","AST","_react","React","_useDebounced","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ArrayItemContext","createContext","AutoSubmitContext","makeFieldComponent","fieldKey","fieldDef","crossFieldErrorsAtom","submitCountAtom","dirtyFieldsAtom","parsedMode","getOrCreateValidationAtom","getOrCreateFieldAtoms","Component","FieldComponent","memo","arrayCtx","useContext","autoSubmitOnBlur","fieldPath","parentPath","crossFieldErrorAtom","touchedAtom","valueAtom","useMemo","value","setValue","useAtom","isTouched","setTouched","crossFieldError","useAtomValue","setCrossFieldErrors","useAtomSet","submitCount","validationAtom","schema","validationResult","validateImmediate","shouldDebounceValidation","validation","debounce","autoSubmit","validate","useDebounced","prevValueRef","useRef","useEffect","current","shouldValidate","perFieldError","_tag","parseError","failureOption","cause","isSome","isParseError","Validation","extractFirstError","none","validationError","onChange","useCallback","newValue","prev","next","Map","delete","onBlur","dirtyFields","isDirty","isPathOrParentDirty","isValidating","waiting","shouldShowError","_jsxRuntime","jsx","error","makeArrayFieldComponent","def","stateAtom","operations","componentMap","isStructSchema","isTypeLiteral","itemSchema","ast","ArrayWrapper","children","formStateOption","setFormState","formState","getOrThrow","items","getNestedValue","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","Field","makeField","itemComponent","properties","Item","Proxy","target","Reflect","makeFieldComponents","fields","components","key","entries","isArrayFieldDef","arrayComponentMap","isFieldDef","fieldComponent","build","self","options","mode","runtime","Mode","parse","formAtoms","FormAtoms","make","formBuilder","combinedSchema","decodeAndSubmit","fieldRefs","hasChangedSinceSubmitAtom","isDirtyAtom","lastSubmittedValuesAtom","onSubmitAtom","resetValidationAtoms","FormComponent","defaultValues","onSubmit","registry","RegistryContext","state","setOnSubmit","callDecodeAndSubmit","createInitialState","debouncedAutoSubmit","stateOption","useAtomSubscribe","immediate","onBlurAutoSubmit","preventDefault","stopPropagation","useFormHook","formValues","decodeAndSubmitResult","hasChangedSinceSubmit","lastSubmittedValues","issues","ArrayFormatter","formatErrorSync","fieldErrors","issue","path","length","schemaPathToFieldPath","message","size","submit","createSubmitState","reset","createResetState","Reset","revertToLastSubmit","field","update","currentValue","setFieldValue","changed","errorPath","keys","startsWith","setValues","setFormValues","submitResult","SubscribeComponent","submitHelper","fn","fieldComponents","atom","Form","Subscribe","useForm","exports"],"sources":["../../src/FormReact.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FormReact.js","names":["_atomReact","require","Atom","_interopRequireWildcard","_effectForm","_path","Cause","Effect","Option","ParseResult","AST","_react","React","_useDebounced","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ArrayItemContext","createContext","AutoSubmitContext","makeFieldComponent","fieldKey","fieldDef","crossFieldErrorsAtom","submitCountAtom","dirtyFieldsAtom","parsedMode","getOrCreateValidationAtom","getOrCreateFieldAtoms","Component","FieldComponent","extraProps","arrayCtx","useContext","autoSubmitOnBlur","fieldPath","parentPath","crossFieldErrorAtom","touchedAtom","valueAtom","useMemo","value","setValue","useAtom","isTouched","setTouched","crossFieldError","useAtomValue","setCrossFieldErrors","useAtomSet","submitCount","validationAtom","schema","validationResult","validateImmediate","shouldDebounceValidation","validation","debounce","autoSubmit","validate","useDebounced","prevValueRef","useRef","useEffect","current","shouldValidate","perFieldError","_tag","parseError","failureOption","cause","isSome","isParseError","Validation","extractFirstError","none","validationError","onChange","useCallback","newValue","prev","next","Map","delete","onBlur","dirtyFields","isDirty","isPathOrParentDirty","isValidating","waiting","shouldShowError","fieldState","error","_jsxRuntime","jsx","field","props","memo","makeArrayFieldComponent","def","stateAtom","operations","componentMap","isStructSchema","isTypeLiteral","itemSchema","ast","ArrayWrapper","children","formStateOption","setFormState","formState","getOrThrow","items","getNestedValue","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","Field","makeField","itemComponent","properties","Item","Proxy","target","Reflect","makeFieldComponents","fields","components","key","entries","isArrayFieldDef","arrayComponentMap","isFieldDef","fieldComponent","build","self","options","mode","runtime","Mode","parse","formAtoms","FormAtoms","make","formBuilder","combinedSchema","decodeAndSubmit","fieldRefs","hasChangedSinceSubmitAtom","isDirtyAtom","lastSubmittedValuesAtom","onSubmitAtom","resetValidationAtoms","FormComponent","defaultValues","onSubmit","registry","RegistryContext","state","setOnSubmit","callDecodeAndSubmit","createInitialState","debouncedAutoSubmit","stateOption","useAtomSubscribe","immediate","onBlurAutoSubmit","preventDefault","stopPropagation","useFormHook","formValues","decodeAndSubmitResult","hasChangedSinceSubmit","lastSubmittedValues","issues","ArrayFormatter","formatErrorSync","fieldErrors","issue","path","length","schemaPathToFieldPath","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","exports","forField","_field","component"],"sources":["../../src/FormReact.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -3,4 +3,40 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ Object.defineProperty(exports, "Field", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _effectForm.Field;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "FormBuilder", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _effectForm.FormBuilder;
16
+ }
17
+ });
18
+ exports.FormReact = void 0;
19
+ var _effectForm = /*#__PURE__*/require("@lucas-barake/effect-form");
20
+ var _FormReact = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("./FormReact.js"));
21
+ exports.FormReact = _FormReact;
22
+ function _interopRequireWildcard(e, t) {
23
+ if ("function" == typeof WeakMap) var r = new WeakMap(),
24
+ n = new WeakMap();
25
+ return (_interopRequireWildcard = function (e, t) {
26
+ if (!t && e && e.__esModule) return e;
27
+ var o,
28
+ i,
29
+ f = {
30
+ __proto__: null,
31
+ default: e
32
+ };
33
+ if (null === e || "object" != typeof e && "function" != typeof e) return f;
34
+ if (o = t ? n : r) {
35
+ if (o.has(e)) return o.get(e);
36
+ o.set(e, f);
37
+ }
38
+ for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]);
39
+ return f;
40
+ })(e, t);
41
+ }
6
42
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_effectForm","require","_FormReact","_interopRequireWildcard","exports","FormReact","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;AAKA,IAAAA,WAAA,gBAAAC,OAAA;AAA8D,IAAAC,UAAA,gBAAAC,uBAAA,cAAAF,OAAA;AAAAG,OAAA,CAAAC,SAAA,GAAAH,UAAA;AAAA,SAAAC,wBAAAG,CAAA,EAAAC,CAAA;EAAA,yBAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA;IAAA,KAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA;IAAA,IAAAM,CAAA;MAAAC,CAAA;MAAAC,CAAA;QAAAC,SAAA;QAAAC,OAAA,EAAAV;MAAA;IAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA;IAAA,IAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA;MAAA,IAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA;MAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA;IAAA;IAAA,WAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA;IAAA,OAAAO,CAAA;EAAA,GAAAR,CAAA,EAAAC,CAAA;AAAA","ignoreList":[]}
@@ -1,18 +1,18 @@
1
1
  import * as Atom from "@effect-atom/atom/Atom";
2
2
  import type * as Result from "@effect-atom/atom/Result";
3
3
  import { Field, FormAtoms, Mode } from "@lucas-barake/effect-form";
4
- import type * as Form from "@lucas-barake/effect-form/Form";
5
- import type * as Effect from "effect/Effect";
4
+ import type * as FormBuilder from "@lucas-barake/effect-form/FormBuilder";
5
+ import * as Effect from "effect/Effect";
6
6
  import * as Option from "effect/Option";
7
7
  import type * as Schema from "effect/Schema";
8
8
  import * as React from "react";
9
9
  /**
10
- * Props passed to field components.
10
+ * Form-controlled state passed to field components.
11
11
  *
12
12
  * @since 1.0.0
13
13
  * @category Models
14
14
  */
15
- export interface FieldComponentProps<S extends Schema.Schema.Any> {
15
+ export interface FieldState<S extends Schema.Schema.Any> {
16
16
  readonly value: Schema.Schema.Encoded<S>;
17
17
  readonly onChange: (value: Schema.Schema.Encoded<S>) => void;
18
18
  readonly onBlur: () => void;
@@ -21,6 +21,24 @@ export interface FieldComponentProps<S extends Schema.Schema.Any> {
21
21
  readonly isValidating: boolean;
22
22
  readonly isDirty: boolean;
23
23
  }
24
+ /**
25
+ * Props passed to field components.
26
+ * Contains form-controlled state in `field` and user-defined props in `props`.
27
+ *
28
+ * @since 1.0.0
29
+ * @category Models
30
+ */
31
+ export interface FieldComponentProps<S extends Schema.Schema.Any, P extends Record<string, unknown> = Record<string, never>> {
32
+ readonly field: FieldState<S>;
33
+ readonly props: P;
34
+ }
35
+ /**
36
+ * Extracts the extra props type from a field component.
37
+ *
38
+ * @since 1.0.0
39
+ * @category Type-level utilities
40
+ */
41
+ export type ExtractExtraProps<C> = C extends React.FC<FieldComponentProps<any, infer P>> ? P : Record<string, never>;
24
42
  /**
25
43
  * Extracts field component map for array item schemas.
26
44
  * - For Struct schemas: returns a map of field names to components
@@ -30,8 +48,8 @@ export interface FieldComponentProps<S extends Schema.Schema.Any> {
30
48
  * @category Models
31
49
  */
32
50
  export type ArrayItemComponentMap<S extends Schema.Schema.Any> = S extends Schema.Struct<infer Fields> ? {
33
- readonly [K in keyof Fields]: Fields[K] extends Schema.Schema.Any ? React.FC<FieldComponentProps<Fields[K]>> : never;
34
- } : React.FC<FieldComponentProps<S>>;
51
+ readonly [K in keyof Fields]: Fields[K] extends Schema.Schema.Any ? React.FC<FieldComponentProps<Fields[K], any>> : never;
52
+ } : React.FC<FieldComponentProps<S, any>>;
35
53
  /**
36
54
  * Maps field names to their React components.
37
55
  *
@@ -39,7 +57,7 @@ export type ArrayItemComponentMap<S extends Schema.Schema.Any> = S extends Schem
39
57
  * @category Models
40
58
  */
41
59
  export type FieldComponentMap<TFields extends Field.FieldsRecord> = {
42
- readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? React.FC<FieldComponentProps<S>> : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayItemComponentMap<S> : never;
60
+ readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? React.FC<FieldComponentProps<S, any>> : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayItemComponentMap<S> : never;
43
61
  };
44
62
  /**
45
63
  * Maps field names to their type-safe Field references for setValue operations.
@@ -76,7 +94,7 @@ export interface SubscribeState<TFields extends Field.FieldsRecord> {
76
94
  readonly submit: () => void;
77
95
  readonly reset: () => void;
78
96
  readonly revertToLastSubmit: () => void;
79
- readonly setValue: <S>(field: Form.Field<S>, update: S | ((prev: S) => S)) => void;
97
+ readonly setValue: <S>(field: FormBuilder.FieldRef<S>, update: S | ((prev: S) => S)) => void;
80
98
  readonly setValues: (values: Field.EncodedFromFields<TFields>) => void;
81
99
  }
82
100
  /**
@@ -86,8 +104,8 @@ export interface SubscribeState<TFields extends Field.FieldsRecord> {
86
104
  * @since 1.0.0
87
105
  * @category Models
88
106
  */
89
- export type BuiltForm<TFields extends Field.FieldsRecord, R> = {
90
- readonly atom: Atom.Writable<Option.Option<Form.FormState<TFields>>, Option.Option<Form.FormState<TFields>>>;
107
+ export type BuiltForm<TFields extends Field.FieldsRecord, R, CM extends FieldComponentMap<TFields> = FieldComponentMap<TFields>> = {
108
+ readonly atom: Atom.Writable<Option.Option<FormBuilder.FormState<TFields>>, Option.Option<FormBuilder.FormState<TFields>>>;
91
109
  readonly schema: Schema.Schema<Field.DecodedFromFields<TFields>, Field.EncodedFromFields<TFields>, R>;
92
110
  readonly fields: FieldRefs<TFields>;
93
111
  readonly Form: React.FC<{
@@ -107,15 +125,20 @@ export type BuiltForm<TFields extends Field.FieldsRecord, R> = {
107
125
  readonly lastSubmittedValues: Option.Option<Field.EncodedFromFields<TFields>>;
108
126
  readonly submitResult: Result.Result<unknown, unknown>;
109
127
  readonly values: Field.EncodedFromFields<TFields>;
110
- readonly setValue: <S>(field: Form.Field<S>, update: S | ((prev: S) => S)) => void;
128
+ readonly setValue: <S>(field: FormBuilder.FieldRef<S>, update: S | ((prev: S) => S)) => void;
111
129
  readonly setValues: (values: Field.EncodedFromFields<TFields>) => void;
112
130
  };
113
- readonly submit: <A, E>(fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => Effect.Effect<A, E, R>) => Atom.AtomResultFn<Field.DecodedFromFields<TFields>, A, E>;
114
- } & FieldComponents<TFields>;
115
- type FieldComponents<TFields extends Field.FieldsRecord> = {
116
- readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, any> ? React.FC : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayFieldComponent<S> : never;
131
+ readonly submit: <A>(fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => A) => Atom.AtomResultFn<Field.DecodedFromFields<TFields>, A extends Effect.Effect<infer T, any, any> ? T : A, A extends Effect.Effect<any, infer E, any> ? E : never>;
132
+ } & FieldComponents<TFields, CM>;
133
+ type FieldComponents<TFields extends Field.FieldsRecord, CM extends FieldComponentMap<TFields>> = {
134
+ readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, any> ? React.FC<ExtractExtraProps<CM[K]>> : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayFieldComponent<S, ExtractArrayItemExtraProps<CM[K], S>> : never;
117
135
  };
118
- type ArrayFieldComponent<S extends Schema.Schema.Any> = React.FC<{
136
+ type ExtractArrayItemExtraProps<CM, S extends Schema.Schema.Any> = S extends Schema.Struct<infer Fields> ? {
137
+ readonly [K in keyof Fields]: CM extends {
138
+ readonly [P in K]: infer C;
139
+ } ? ExtractExtraProps<C> : never;
140
+ } : CM extends React.FC<FieldComponentProps<any, infer P>> ? P : never;
141
+ type ArrayFieldComponent<S extends Schema.Schema.Any, ExtraPropsMap> = React.FC<{
119
142
  readonly children: (ops: ArrayFieldOperations<Schema.Schema.Encoded<S>>) => React.ReactNode;
120
143
  }> & {
121
144
  readonly Item: React.FC<{
@@ -125,7 +148,9 @@ type ArrayFieldComponent<S extends Schema.Schema.Any> = React.FC<{
125
148
  }) => React.ReactNode);
126
149
  }>;
127
150
  } & (S extends Schema.Struct<infer Fields> ? {
128
- readonly [K in keyof Fields]: React.FC;
151
+ readonly [K in keyof Fields]: React.FC<ExtraPropsMap extends {
152
+ readonly [P in K]: infer EP;
153
+ } ? EP : Record<string, never>>;
129
154
  } : unknown);
130
155
  /**
131
156
  * Builds a React form from a FormBuilder.
@@ -141,7 +166,7 @@ type ArrayFieldComponent<S extends Schema.Schema.Any> = React.FC<{
141
166
  *
142
167
  * const runtime = Atom.runtime(Layer.empty)
143
168
  *
144
- * const loginForm = Form.empty
169
+ * const loginForm = FormBuilder.empty
145
170
  * .addField("email", Schema.String)
146
171
  * .addField("password", Schema.String)
147
172
  *
@@ -175,10 +200,33 @@ type ArrayFieldComponent<S extends Schema.Schema.Any> = React.FC<{
175
200
  * @since 1.0.0
176
201
  * @category Constructors
177
202
  */
178
- export declare const build: <TFields extends Field.FieldsRecord, R, ER = never>(self: Form.FormBuilder<TFields, R>, options: {
203
+ export declare const build: <TFields extends Field.FieldsRecord, R, ER = never, CM extends FieldComponentMap<TFields> = FieldComponentMap<TFields>>(self: FormBuilder.FormBuilder<TFields, R>, options: {
179
204
  readonly runtime: Atom.AtomRuntime<R, ER>;
180
- readonly fields: FieldComponentMap<TFields>;
205
+ readonly fields: CM;
181
206
  readonly mode?: Mode.FormMode;
182
- }) => BuiltForm<TFields, R>;
207
+ }) => BuiltForm<TFields, R, CM>;
208
+ /**
209
+ * A curried helper that infers the schema type from the field definition.
210
+ * Provides ergonomic type inference when defining field components.
211
+ *
212
+ * @example
213
+ * ```tsx
214
+ * import { FormReact } from "@lucas-barake/effect-form-react"
215
+ *
216
+ * // Without extra props - schema inferred from field
217
+ * const TextInput = FormReact.forField(EmailField)(({ field }) => (
218
+ * <input value={field.value} onChange={e => field.onChange(e.target.value)} />
219
+ * ))
220
+ *
221
+ * // With extra props - just specify the props type
222
+ * const TextInput = FormReact.forField(EmailField)<{ placeholder?: string }>(({ field, props }) => (
223
+ * <input value={field.value} placeholder={props.placeholder} ... />
224
+ * ))
225
+ * ```
226
+ *
227
+ * @since 1.0.0
228
+ * @category Constructors
229
+ */
230
+ export declare const forField: <K extends string, S extends Schema.Schema.Any>(_field: Field.FieldDef<K, S>) => <P extends Record<string, unknown> = Record<string, never>>(component: React.FC<FieldComponentProps<S, P>>) => React.FC<FieldComponentProps<S, P>>;
183
231
  export {};
184
232
  //# sourceMappingURL=FormReact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormReact.d.ts","sourceRoot":"","sources":["../../src/FormReact.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FormReact.d.ts","sourceRoot":"","sources":["../../src/FormReact.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,13 @@
1
- export {};
1
+ /**
2
+ * Re-export commonly used modules from the core package.
3
+ *
4
+ * @since 1.0.0
5
+ */
6
+ export { Field, FormBuilder } from "@lucas-barake/effect-form";
7
+ /**
8
+ * React bindings for @lucas-barake/effect-form.
9
+ *
10
+ * @since 1.0.0
11
+ */
12
+ export * as FormReact from "./FormReact.js";
2
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAE9D;;;;GAIG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
@@ -7,6 +7,7 @@ import * as Atom from "@effect-atom/atom/Atom";
7
7
  import { Field, FormAtoms, Mode, Validation } from "@lucas-barake/effect-form";
8
8
  import { getNestedValue, isPathOrParentDirty, schemaPathToFieldPath } from "@lucas-barake/effect-form/internal/path";
9
9
  import * as Cause from "effect/Cause";
10
+ import * as Effect from "effect/Effect";
10
11
  import * as Option from "effect/Option";
11
12
  import * as ParseResult from "effect/ParseResult";
12
13
  import * as AST from "effect/SchemaAST";
@@ -16,7 +17,7 @@ import { useDebounced } from "./internal/use-debounced.js";
16
17
  const ArrayItemContext = /*#__PURE__*/createContext(null);
17
18
  const AutoSubmitContext = /*#__PURE__*/createContext(null);
18
19
  const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, Component) => {
19
- const FieldComponent = React.memo(() => {
20
+ const FieldComponent = extraProps => {
20
21
  const arrayCtx = useContext(ArrayItemContext);
21
22
  const autoSubmitOnBlur = useContext(AutoSubmitContext);
22
23
  const fieldPath = arrayCtx ? `${arrayCtx.parentPath}.${fieldKey}` : fieldKey;
@@ -81,17 +82,21 @@ const makeFieldComponent = (fieldKey, fieldDef, crossFieldErrorsAtom, submitCoun
81
82
  const isDirty = React.useMemo(() => isPathOrParentDirty(dirtyFields, fieldPath), [dirtyFields, fieldPath]);
82
83
  const isValidating = validationResult.waiting;
83
84
  const shouldShowError = isTouched || submitCount > 0;
84
- return _jsx(Component, {
85
- value: value,
86
- onChange: onChange,
87
- onBlur: onBlur,
85
+ const fieldState = React.useMemo(() => ({
86
+ value,
87
+ onChange,
88
+ onBlur,
88
89
  error: shouldShowError ? validationError : Option.none(),
89
- isTouched: isTouched,
90
- isValidating: isValidating,
91
- isDirty: isDirty
90
+ isTouched,
91
+ isValidating,
92
+ isDirty
93
+ }), [value, onChange, onBlur, shouldShowError, validationError, isTouched, isValidating, isDirty]);
94
+ return _jsx(Component, {
95
+ field: fieldState,
96
+ props: extraProps
92
97
  });
93
- });
94
- return FieldComponent;
98
+ };
99
+ return React.memo(FieldComponent);
95
100
  };
96
101
  const makeArrayFieldComponent = (fieldKey, def, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, componentMap) => {
97
102
  const isStructSchema = AST.isTypeLiteral(def.itemSchema.ast);
@@ -214,7 +219,7 @@ const makeFieldComponents = (fields, stateAtom, crossFieldErrorsAtom, submitCoun
214
219
  *
215
220
  * const runtime = Atom.runtime(Layer.empty)
216
221
  *
217
- * const loginForm = Form.empty
222
+ * const loginForm = FormBuilder.empty
218
223
  * .addField("email", Schema.String)
219
224
  * .addField("password", Schema.String)
220
225
  *
@@ -453,7 +458,10 @@ export const build = (self, options) => {
453
458
  })
454
459
  });
455
460
  };
456
- const submitHelper = fn => runtime.fn()(fn);
461
+ const submitHelper = fn => runtime.fn()((values, get) => {
462
+ const result = fn(values, get);
463
+ return Effect.isEffect(result) ? result : Effect.succeed(result);
464
+ });
457
465
  const fieldComponents = makeFieldComponents(fields, stateAtom, crossFieldErrorsAtom, submitCountAtom, dirtyFieldsAtom, parsedMode, getOrCreateValidationAtom, getOrCreateFieldAtoms, operations, components);
458
466
  return {
459
467
  atom: stateAtom,
@@ -466,4 +474,27 @@ export const build = (self, options) => {
466
474
  ...fieldComponents
467
475
  };
468
476
  };
477
+ /**
478
+ * A curried helper that infers the schema type from the field definition.
479
+ * Provides ergonomic type inference when defining field components.
480
+ *
481
+ * @example
482
+ * ```tsx
483
+ * import { FormReact } from "@lucas-barake/effect-form-react"
484
+ *
485
+ * // Without extra props - schema inferred from field
486
+ * const TextInput = FormReact.forField(EmailField)(({ field }) => (
487
+ * <input value={field.value} onChange={e => field.onChange(e.target.value)} />
488
+ * ))
489
+ *
490
+ * // With extra props - just specify the props type
491
+ * const TextInput = FormReact.forField(EmailField)<{ placeholder?: string }>(({ field, props }) => (
492
+ * <input value={field.value} placeholder={props.placeholder} ... />
493
+ * ))
494
+ * ```
495
+ *
496
+ * @since 1.0.0
497
+ * @category Constructors
498
+ */
499
+ export const forField = _field => component => component;
469
500
  //# 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","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","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","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":[]}
package/dist/esm/index.js CHANGED
@@ -1,2 +1,13 @@
1
- export {};
1
+ /**
2
+ * Re-export commonly used modules from the core package.
3
+ *
4
+ * @since 1.0.0
5
+ */
6
+ export { Field, FormBuilder } from "@lucas-barake/effect-form";
7
+ /**
8
+ * React bindings for @lucas-barake/effect-form.
9
+ *
10
+ * @since 1.0.0
11
+ */
12
+ export * as FormReact from "./FormReact.js";
2
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Field","FormBuilder","FormReact"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAKA,SAASA,KAAK,EAAEC,WAAW,QAAQ,2BAA2B;AAE9D;;;;;AAKA,OAAO,KAAKC,SAAS,MAAM,gBAAgB","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lucas-barake/effect-form-react",
3
- "version": "0.3.0",
3
+ "version": "0.5.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.3.0"
14
+ "@lucas-barake/effect-form": "^0.4.0"
15
15
  },
16
16
  "peerDependencies": {
17
17
  "@effect-atom/atom": "^0.4.8",
package/src/FormReact.tsx CHANGED
@@ -5,10 +5,10 @@ import { RegistryContext, useAtom, useAtomSet, useAtomSubscribe, useAtomValue }
5
5
  import * as Atom from "@effect-atom/atom/Atom"
6
6
  import type * as Result from "@effect-atom/atom/Result"
7
7
  import { Field, FormAtoms, Mode, Validation } from "@lucas-barake/effect-form"
8
- import type * as Form from "@lucas-barake/effect-form/Form"
8
+ import type * as FormBuilder from "@lucas-barake/effect-form/FormBuilder"
9
9
  import { getNestedValue, isPathOrParentDirty, schemaPathToFieldPath } from "@lucas-barake/effect-form/internal/path"
10
10
  import * as Cause from "effect/Cause"
11
- import type * as Effect from "effect/Effect"
11
+ import * as Effect from "effect/Effect"
12
12
  import * as Option from "effect/Option"
13
13
  import * as ParseResult from "effect/ParseResult"
14
14
  import type * as Schema from "effect/Schema"
@@ -18,12 +18,12 @@ import { createContext, useContext } from "react"
18
18
  import { useDebounced } from "./internal/use-debounced.js"
19
19
 
20
20
  /**
21
- * Props passed to field components.
21
+ * Form-controlled state passed to field components.
22
22
  *
23
23
  * @since 1.0.0
24
24
  * @category Models
25
25
  */
26
- export interface FieldComponentProps<S extends Schema.Schema.Any> {
26
+ export interface FieldState<S extends Schema.Schema.Any> {
27
27
  readonly value: Schema.Schema.Encoded<S>
28
28
  readonly onChange: (value: Schema.Schema.Encoded<S>) => void
29
29
  readonly onBlur: () => void
@@ -33,6 +33,30 @@ export interface FieldComponentProps<S extends Schema.Schema.Any> {
33
33
  readonly isDirty: boolean
34
34
  }
35
35
 
36
+ /**
37
+ * Props passed to field components.
38
+ * Contains form-controlled state in `field` and user-defined props in `props`.
39
+ *
40
+ * @since 1.0.0
41
+ * @category Models
42
+ */
43
+ export interface FieldComponentProps<
44
+ S extends Schema.Schema.Any,
45
+ P extends Record<string, unknown> = Record<string, never>,
46
+ > {
47
+ readonly field: FieldState<S>
48
+ readonly props: P
49
+ }
50
+
51
+ /**
52
+ * Extracts the extra props type from a field component.
53
+ *
54
+ * @since 1.0.0
55
+ * @category Type-level utilities
56
+ */
57
+ export type ExtractExtraProps<C> = C extends React.FC<FieldComponentProps<any, infer P>> ? P
58
+ : Record<string, never>
59
+
36
60
  /**
37
61
  * Extracts field component map for array item schemas.
38
62
  * - For Struct schemas: returns a map of field names to components
@@ -42,9 +66,10 @@ export interface FieldComponentProps<S extends Schema.Schema.Any> {
42
66
  * @category Models
43
67
  */
44
68
  export type ArrayItemComponentMap<S extends Schema.Schema.Any> = S extends Schema.Struct<infer Fields> ? {
45
- readonly [K in keyof Fields]: Fields[K] extends Schema.Schema.Any ? React.FC<FieldComponentProps<Fields[K]>> : never
69
+ readonly [K in keyof Fields]: Fields[K] extends Schema.Schema.Any ? React.FC<FieldComponentProps<Fields[K], any>>
70
+ : never
46
71
  }
47
- : React.FC<FieldComponentProps<S>>
72
+ : React.FC<FieldComponentProps<S, any>>
48
73
 
49
74
  /**
50
75
  * Maps field names to their React components.
@@ -53,7 +78,7 @@ export type ArrayItemComponentMap<S extends Schema.Schema.Any> = S extends Schem
53
78
  * @category Models
54
79
  */
55
80
  export type FieldComponentMap<TFields extends Field.FieldsRecord> = {
56
- readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? React.FC<FieldComponentProps<S>>
81
+ readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, infer S> ? React.FC<FieldComponentProps<S, any>>
57
82
  : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayItemComponentMap<S>
58
83
  : never
59
84
  }
@@ -95,7 +120,7 @@ export interface SubscribeState<TFields extends Field.FieldsRecord> {
95
120
  readonly submit: () => void
96
121
  readonly reset: () => void
97
122
  readonly revertToLastSubmit: () => void
98
- readonly setValue: <S>(field: Form.Field<S>, update: S | ((prev: S) => S)) => void
123
+ readonly setValue: <S>(field: FormBuilder.FieldRef<S>, update: S | ((prev: S) => S)) => void
99
124
  readonly setValues: (values: Field.EncodedFromFields<TFields>) => void
100
125
  }
101
126
 
@@ -106,8 +131,15 @@ export interface SubscribeState<TFields extends Field.FieldsRecord> {
106
131
  * @since 1.0.0
107
132
  * @category Models
108
133
  */
109
- export type BuiltForm<TFields extends Field.FieldsRecord, R> = {
110
- readonly atom: Atom.Writable<Option.Option<Form.FormState<TFields>>, Option.Option<Form.FormState<TFields>>>
134
+ export type BuiltForm<
135
+ TFields extends Field.FieldsRecord,
136
+ R,
137
+ CM extends FieldComponentMap<TFields> = FieldComponentMap<TFields>,
138
+ > = {
139
+ readonly atom: Atom.Writable<
140
+ Option.Option<FormBuilder.FormState<TFields>>,
141
+ Option.Option<FormBuilder.FormState<TFields>>
142
+ >
111
143
  readonly schema: Schema.Schema<Field.DecodedFromFields<TFields>, Field.EncodedFromFields<TFields>, R>
112
144
  readonly fields: FieldRefs<TFields>
113
145
 
@@ -130,22 +162,32 @@ export type BuiltForm<TFields extends Field.FieldsRecord, R> = {
130
162
  readonly lastSubmittedValues: Option.Option<Field.EncodedFromFields<TFields>>
131
163
  readonly submitResult: Result.Result<unknown, unknown>
132
164
  readonly values: Field.EncodedFromFields<TFields>
133
- readonly setValue: <S>(field: Form.Field<S>, update: S | ((prev: S) => S)) => void
165
+ readonly setValue: <S>(field: FormBuilder.FieldRef<S>, update: S | ((prev: S) => S)) => void
134
166
  readonly setValues: (values: Field.EncodedFromFields<TFields>) => void
135
167
  }
136
168
 
137
- readonly submit: <A, E>(
138
- fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => Effect.Effect<A, E, R>,
139
- ) => Atom.AtomResultFn<Field.DecodedFromFields<TFields>, A, E>
140
- } & FieldComponents<TFields>
141
-
142
- type FieldComponents<TFields extends Field.FieldsRecord> = {
143
- readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, any> ? React.FC
144
- : TFields[K] extends Field.ArrayFieldDef<any, infer S> ? ArrayFieldComponent<S>
169
+ readonly submit: <A>(
170
+ fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => A,
171
+ ) => Atom.AtomResultFn<
172
+ Field.DecodedFromFields<TFields>,
173
+ A extends Effect.Effect<infer T, any, any> ? T : A,
174
+ A extends Effect.Effect<any, infer E, any> ? E : never
175
+ >
176
+ } & FieldComponents<TFields, CM>
177
+
178
+ type FieldComponents<TFields extends Field.FieldsRecord, CM extends FieldComponentMap<TFields>> = {
179
+ readonly [K in keyof TFields]: TFields[K] extends Field.FieldDef<any, any> ? React.FC<ExtractExtraProps<CM[K]>>
180
+ : TFields[K] extends Field.ArrayFieldDef<any, infer S>
181
+ ? ArrayFieldComponent<S, ExtractArrayItemExtraProps<CM[K], S>>
145
182
  : never
146
183
  }
147
184
 
148
- type ArrayFieldComponent<S extends Schema.Schema.Any> =
185
+ type ExtractArrayItemExtraProps<CM, S extends Schema.Schema.Any> = S extends Schema.Struct<infer Fields>
186
+ ? { readonly [K in keyof Fields]: CM extends { readonly [P in K]: infer C } ? ExtractExtraProps<C> : never }
187
+ : CM extends React.FC<FieldComponentProps<any, infer P>> ? P
188
+ : never
189
+
190
+ type ArrayFieldComponent<S extends Schema.Schema.Any, ExtraPropsMap> =
149
191
  & React.FC<{
150
192
  readonly children: (ops: ArrayFieldOperations<Schema.Schema.Encoded<S>>) => React.ReactNode
151
193
  }>
@@ -155,7 +197,11 @@ type ArrayFieldComponent<S extends Schema.Schema.Any> =
155
197
  readonly children: React.ReactNode | ((props: { readonly remove: () => void }) => React.ReactNode)
156
198
  }>
157
199
  }
158
- & (S extends Schema.Struct<infer Fields> ? { readonly [K in keyof Fields]: React.FC }
200
+ & (S extends Schema.Struct<infer Fields> ? {
201
+ readonly [K in keyof Fields]: React.FC<
202
+ ExtraPropsMap extends { readonly [P in K]: infer EP } ? EP : Record<string, never>
203
+ >
204
+ }
159
205
  : unknown)
160
206
 
161
207
  interface ArrayItemContextValue {
@@ -166,7 +212,7 @@ interface ArrayItemContextValue {
166
212
  const ArrayItemContext = createContext<ArrayItemContextValue | null>(null)
167
213
  const AutoSubmitContext = createContext<(() => void) | null>(null)
168
214
 
169
- const makeFieldComponent = <S extends Schema.Schema.Any>(
215
+ const makeFieldComponent = <S extends Schema.Schema.Any, P extends Record<string, unknown>>(
170
216
  fieldKey: string,
171
217
  fieldDef: Field.FieldDef<string, S>,
172
218
  crossFieldErrorsAtom: Atom.Writable<Map<string, string>, Map<string, string>>,
@@ -178,9 +224,9 @@ const makeFieldComponent = <S extends Schema.Schema.Any>(
178
224
  schema: Schema.Schema.Any,
179
225
  ) => Atom.AtomResultFn<unknown, void, ParseResult.ParseError>,
180
226
  getOrCreateFieldAtoms: (fieldPath: string) => FormAtoms.FieldAtoms,
181
- Component: React.FC<FieldComponentProps<S>>,
182
- ): React.FC => {
183
- const FieldComponent: React.FC = React.memo(() => {
227
+ Component: React.FC<FieldComponentProps<S, P>>,
228
+ ): React.FC<P> => {
229
+ const FieldComponent: React.FC<P> = (extraProps) => {
184
230
  const arrayCtx = useContext(ArrayItemContext)
185
231
  const autoSubmitOnBlur = useContext(AutoSubmitContext)
186
232
  const fieldPath = arrayCtx ? `${arrayCtx.parentPath}.${fieldKey}` : fieldKey
@@ -269,26 +315,26 @@ const makeFieldComponent = <S extends Schema.Schema.Any>(
269
315
  const isValidating = validationResult.waiting
270
316
  const shouldShowError = isTouched || submitCount > 0
271
317
 
272
- return (
273
- <Component
274
- value={value}
275
- onChange={onChange}
276
- onBlur={onBlur}
277
- error={shouldShowError ? validationError : Option.none<string>()}
278
- isTouched={isTouched}
279
- isValidating={isValidating}
280
- isDirty={isDirty}
281
- />
282
- )
283
- })
318
+ const fieldState: FieldState<S> = React.useMemo(() => ({
319
+ value,
320
+ onChange,
321
+ onBlur,
322
+ error: shouldShowError ? validationError : Option.none<string>(),
323
+ isTouched,
324
+ isValidating,
325
+ isDirty,
326
+ }), [value, onChange, onBlur, shouldShowError, validationError, isTouched, isValidating, isDirty])
327
+
328
+ return <Component field={fieldState} props={extraProps} />
329
+ }
284
330
 
285
- return FieldComponent
331
+ return React.memo(FieldComponent) as React.FC<P>
286
332
  }
287
333
 
288
334
  const makeArrayFieldComponent = <S extends Schema.Schema.Any>(
289
335
  fieldKey: string,
290
336
  def: Field.ArrayFieldDef<string, S>,
291
- stateAtom: Atom.Writable<Option.Option<Form.FormState<any>>, Option.Option<Form.FormState<any>>>,
337
+ stateAtom: Atom.Writable<Option.Option<FormBuilder.FormState<any>>, Option.Option<FormBuilder.FormState<any>>>,
292
338
  crossFieldErrorsAtom: Atom.Writable<Map<string, string>, Map<string, string>>,
293
339
  submitCountAtom: Atom.Atom<number>,
294
340
  dirtyFieldsAtom: Atom.Atom<ReadonlySet<string>>,
@@ -300,7 +346,7 @@ const makeArrayFieldComponent = <S extends Schema.Schema.Any>(
300
346
  getOrCreateFieldAtoms: (fieldPath: string) => FormAtoms.FieldAtoms,
301
347
  operations: FormAtoms.FormOperations<any>,
302
348
  componentMap: ArrayItemComponentMap<S>,
303
- ): ArrayFieldComponent<S> => {
349
+ ): ArrayFieldComponent<S, any> => {
304
350
  const isStructSchema = AST.isTypeLiteral(def.itemSchema.ast)
305
351
 
306
352
  const ArrayWrapper: React.FC<{
@@ -391,7 +437,7 @@ const makeArrayFieldComponent = <S extends Schema.Schema.Any>(
391
437
  const itemKey = prop.name as string
392
438
  const itemSchema = { ast: prop.type } as Schema.Schema.Any
393
439
  const itemDef = Field.makeField(itemKey, itemSchema)
394
- const itemComponent = (componentMap as Record<string, React.FC<FieldComponentProps<any>>>)[itemKey]
440
+ const itemComponent = (componentMap as Record<string, React.FC<FieldComponentProps<any, any>>>)[itemKey]
395
441
  itemFieldComponents[itemKey] = makeFieldComponent(
396
442
  itemKey,
397
443
  itemDef,
@@ -418,12 +464,18 @@ const makeArrayFieldComponent = <S extends Schema.Schema.Any>(
418
464
  }
419
465
  return Reflect.get(target, prop)
420
466
  },
421
- }) as ArrayFieldComponent<S>
467
+ }) as ArrayFieldComponent<S, any>
422
468
  }
423
469
 
424
- const makeFieldComponents = <TFields extends Field.FieldsRecord>(
470
+ const makeFieldComponents = <
471
+ TFields extends Field.FieldsRecord,
472
+ CM extends FieldComponentMap<TFields>,
473
+ >(
425
474
  fields: TFields,
426
- stateAtom: Atom.Writable<Option.Option<Form.FormState<TFields>>, Option.Option<Form.FormState<TFields>>>,
475
+ stateAtom: Atom.Writable<
476
+ Option.Option<FormBuilder.FormState<TFields>>,
477
+ Option.Option<FormBuilder.FormState<TFields>>
478
+ >,
427
479
  crossFieldErrorsAtom: Atom.Writable<Map<string, string>, Map<string, string>>,
428
480
  submitCountAtom: Atom.Atom<number>,
429
481
  dirtyFieldsAtom: Atom.Atom<ReadonlySet<string>>,
@@ -434,8 +486,8 @@ const makeFieldComponents = <TFields extends Field.FieldsRecord>(
434
486
  ) => Atom.AtomResultFn<unknown, void, ParseResult.ParseError>,
435
487
  getOrCreateFieldAtoms: (fieldPath: string) => FormAtoms.FieldAtoms,
436
488
  operations: FormAtoms.FormOperations<TFields>,
437
- componentMap: FieldComponentMap<TFields>,
438
- ): FieldComponents<TFields> => {
489
+ componentMap: CM,
490
+ ): FieldComponents<TFields, CM> => {
439
491
  const components: Record<string, any> = {}
440
492
 
441
493
  for (const [key, def] of Object.entries(fields)) {
@@ -455,7 +507,7 @@ const makeFieldComponents = <TFields extends Field.FieldsRecord>(
455
507
  arrayComponentMap,
456
508
  )
457
509
  } else if (Field.isFieldDef(def)) {
458
- const fieldComponent = (componentMap as Record<string, React.FC<FieldComponentProps<any>>>)[key]
510
+ const fieldComponent = (componentMap as Record<string, React.FC<FieldComponentProps<any, any>>>)[key]
459
511
  components[key] = makeFieldComponent(
460
512
  key,
461
513
  def,
@@ -470,7 +522,7 @@ const makeFieldComponents = <TFields extends Field.FieldsRecord>(
470
522
  }
471
523
  }
472
524
 
473
- return components as FieldComponents<TFields>
525
+ return components as FieldComponents<TFields, CM>
474
526
  }
475
527
 
476
528
  /**
@@ -487,7 +539,7 @@ const makeFieldComponents = <TFields extends Field.FieldsRecord>(
487
539
  *
488
540
  * const runtime = Atom.runtime(Layer.empty)
489
541
  *
490
- * const loginForm = Form.empty
542
+ * const loginForm = FormBuilder.empty
491
543
  * .addField("email", Schema.String)
492
544
  * .addField("password", Schema.String)
493
545
  *
@@ -521,14 +573,19 @@ const makeFieldComponents = <TFields extends Field.FieldsRecord>(
521
573
  * @since 1.0.0
522
574
  * @category Constructors
523
575
  */
524
- export const build = <TFields extends Field.FieldsRecord, R, ER = never>(
525
- self: Form.FormBuilder<TFields, R>,
576
+ export const build = <
577
+ TFields extends Field.FieldsRecord,
578
+ R,
579
+ ER = never,
580
+ CM extends FieldComponentMap<TFields> = FieldComponentMap<TFields>,
581
+ >(
582
+ self: FormBuilder.FormBuilder<TFields, R>,
526
583
  options: {
527
584
  readonly runtime: Atom.AtomRuntime<R, ER>
528
- readonly fields: FieldComponentMap<TFields>
585
+ readonly fields: CM
529
586
  readonly mode?: Mode.FormMode
530
587
  },
531
- ): BuiltForm<TFields, R> => {
588
+ ): BuiltForm<TFields, R, CM> => {
532
589
  const { fields: components, mode, runtime } = options
533
590
  const parsedMode = Mode.parse(mode)
534
591
  const { fields } = self
@@ -682,7 +739,7 @@ export const build = <TFields extends Field.FieldsRecord, R, ER = never>(
682
739
  }, [setFormState, setCrossFieldErrors])
683
740
 
684
741
  const setValue = React.useCallback(<S,>(
685
- field: Form.Field<S>,
742
+ field: FormBuilder.FieldRef<S>,
686
743
  update: S | ((prev: S) => S),
687
744
  ) => {
688
745
  const path = field.key
@@ -769,9 +826,21 @@ export const build = <TFields extends Field.FieldsRecord, R, ER = never>(
769
826
  )
770
827
  }
771
828
 
772
- const submitHelper = <A, E>(
773
- fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => Effect.Effect<A, E, R>,
774
- ) => runtime.fn<Field.DecodedFromFields<TFields>>()(fn) as Atom.AtomResultFn<Field.DecodedFromFields<TFields>, A, E>
829
+ const submitHelper = <A,>(
830
+ fn: (values: Field.DecodedFromFields<TFields>, get: Atom.FnContext) => A,
831
+ ) =>
832
+ runtime.fn<Field.DecodedFromFields<TFields>>()((values, get) => {
833
+ const result = fn(values, get)
834
+ return (Effect.isEffect(result) ? result : Effect.succeed(result)) as Effect.Effect<
835
+ A extends Effect.Effect<infer T, any, any> ? T : A,
836
+ A extends Effect.Effect<any, infer E, any> ? E : never,
837
+ R
838
+ >
839
+ }) as Atom.AtomResultFn<
840
+ Field.DecodedFromFields<TFields>,
841
+ A extends Effect.Effect<infer T, any, any> ? T : A,
842
+ A extends Effect.Effect<any, infer E, any> ? E : never
843
+ >
775
844
 
776
845
  const fieldComponents = makeFieldComponents(
777
846
  fields,
@@ -795,5 +864,34 @@ export const build = <TFields extends Field.FieldsRecord, R, ER = never>(
795
864
  useForm: useFormHook,
796
865
  submit: submitHelper,
797
866
  ...fieldComponents,
798
- } as BuiltForm<TFields, R>
867
+ } as BuiltForm<TFields, R, CM>
799
868
  }
869
+
870
+ /**
871
+ * A curried helper that infers the schema type from the field definition.
872
+ * Provides ergonomic type inference when defining field components.
873
+ *
874
+ * @example
875
+ * ```tsx
876
+ * import { FormReact } from "@lucas-barake/effect-form-react"
877
+ *
878
+ * // Without extra props - schema inferred from field
879
+ * const TextInput = FormReact.forField(EmailField)(({ field }) => (
880
+ * <input value={field.value} onChange={e => field.onChange(e.target.value)} />
881
+ * ))
882
+ *
883
+ * // With extra props - just specify the props type
884
+ * const TextInput = FormReact.forField(EmailField)<{ placeholder?: string }>(({ field, props }) => (
885
+ * <input value={field.value} placeholder={props.placeholder} ... />
886
+ * ))
887
+ * ```
888
+ *
889
+ * @since 1.0.0
890
+ * @category Constructors
891
+ */
892
+ export const forField = <K extends string, S extends Schema.Schema.Any>(
893
+ _field: Field.FieldDef<K, S>,
894
+ ) =>
895
+ <P extends Record<string, unknown> = Record<string, never>>(
896
+ component: React.FC<FieldComponentProps<S, P>>,
897
+ ): React.FC<FieldComponentProps<S, P>> => component
package/src/index.ts CHANGED
@@ -1 +1,13 @@
1
+ /**
2
+ * Re-export commonly used modules from the core package.
3
+ *
4
+ * @since 1.0.0
5
+ */
6
+ export { Field, FormBuilder } from "@lucas-barake/effect-form"
1
7
 
8
+ /**
9
+ * React bindings for @lucas-barake/effect-form.
10
+ *
11
+ * @since 1.0.0
12
+ */
13
+ export * as FormReact from "./FormReact.js"