react-simple-formkit 1.3.0 → 1.3.2

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/README.md CHANGED
@@ -21,23 +21,21 @@ Configuration is simple, fast, and efficient. There are also many other tools av
21
21
  import { Form, useForm } form 'react-simple-formkit'
22
22
 
23
23
  const form = useForm();
24
- const { isDirty, actions } = form;
25
24
 
26
25
  const handleSubmit = (data) => {
27
- alert(JSON.stringify(data));
26
+ alert(JSON.stringify(data));
28
27
  };
29
28
 
30
29
  return (
31
- <Form form={form} onSubmit={handleSubmit}>
32
- <input required name="email" />
33
- <input required name="password" type="password" />
34
- <button type="reset" disabled={!isDirty}>
35
- Reset
36
- </button>
37
- <button type="submit" disabled={!isDirty}>
38
- Submit
39
- </button>
40
- </Form>
30
+ <Form form={form} onSubmit={handleSubmit}>
31
+ <input required name="email" placeholder="email" />
32
+ <input required name="password" type="password" placeholder="password" />
33
+ <input required name="input1" placeholder="input 1" />
34
+ <input required name="input2" placeholder="input 2" />
35
+ {/* ... */}
36
+ <input required name="input100" placeholder="input 100" />
37
+ <button type="submit">Submit</button>
38
+ </Form>
41
39
  );
42
40
  ```
43
41
 
@@ -53,7 +51,7 @@ const form = useForm( {numberFields: ['number'] } );
53
51
  return (
54
52
  <Form form={form}>
55
53
  <input name="number" placeholder=This is number field" />
56
- <button type="submit" disabled={!isDirty || isError}>
54
+ <button type="submit">
57
55
  Submit
58
56
  </button>
59
57
  </Form>
@@ -188,7 +186,7 @@ return (
188
186
  const [loading, setLoading] = useState(false);
189
187
  const [defaultValues, setDefaultValues] = useState({ email: "email@example.com", password: "123456" });
190
188
 
191
- const form = useForm();
189
+ const form = useForm({ defaultValues });
192
190
  const { isDirty, actions } = form;
193
191
 
194
192
  const handleSubmit = async (data) => {
@@ -203,10 +201,9 @@ const handleSubmit = async (data) => {
203
201
 
204
202
  return (
205
203
  <Form form={form} onSubmit={handleSubmit}>
206
- <input required name="email" defaultValue={defaultValues.email} />
204
+ <input required name="email" />
207
205
  <Controller
208
206
  name="password"
209
- defaultValue={defaultValues.password}
210
207
  render={({ ref, name, defaultValue, value, setValue }) => (
211
208
  <input
212
209
  ref={ref}
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var Z;function se(){if(Z)return I;Z=1;var a=Symbol.for("react.transitional.element"),s=Symbol.for("react.fragment");function o(l,u,i){var E=null;if(i!==void 0&&(E=""+i),u.key!==void 0&&(E=""+u.key),"key"in u){i={};for(var d in u)d!=="key"&&(i[d]=u[d])}else i=u;return u=i.ref,{$$typeof:a,type:l,key:E,ref:u!==void 0?u:null,props:i}}return I.Fragment=s,I.jsx=o,I.jsxs=o,I}var $={};/**
9
+ */var Z;function se(){if(Z)return I;Z=1;var s=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function o(l,u,i){var E=null;if(i!==void 0&&(E=""+i),u.key!==void 0&&(E=""+u.key),"key"in u){i={};for(var d in u)d!=="key"&&(i[d]=u[d])}else i=u;return u=i.ref,{$$typeof:s,type:l,key:E,ref:u!==void 0?u:null,props:i}}return I.Fragment=a,I.jsx=o,I.jsxs=o,I}var $={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,9 +14,9 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var Q;function oe(){return Q||(Q=1,process.env.NODE_ENV!=="production"&&function(){function a(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===j?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case h:return"Fragment";case V:return"Profiler";case A:return"StrictMode";case G:return"Suspense";case W:return"SuspenseList";case U:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case g:return"Portal";case M:return(e.displayName||"Context")+".Provider";case y:return(e._context.displayName||"Context")+".Consumer";case L:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case q:return r=e.displayName||null,r!==null?r:a(e.type)||"Memo";case O:r=e._payload,e=e._init;try{return a(e(r))}catch{}}return null}function s(e){return""+e}function o(e){try{s(e);var r=!1}catch{r=!0}if(r){r=console;var c=r.error,k=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",k),s(e)}}function l(e){if(e===h)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===O)return"<...>";try{var r=a(e);return r?"<"+r+">":"<...>"}catch{return"<...>"}}function u(){var e=F.A;return e===null?null:e.getOwner()}function i(){return Error("react-stack-top-frame")}function E(e){if(D.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function d(e,r){function c(){J||(J=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function b(){var e=a(this.type);return t[e]||(t[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function v(e,r,c,k,C,w,X,B){return c=w.ref,e={$$typeof:N,type:e,key:r,props:w,_owner:C},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:b}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:X}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:B}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function p(e,r,c,k,C,w,X,B){var _=r.children;if(_!==void 0)if(k)if(Y(_)){for(k=0;k<_.length;k++)m(_[k]);Object.freeze&&Object.freeze(_)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else m(_);if(D.call(r,"key")){_=a(e);var x=Object.keys(r).filter(function(ae){return ae!=="key"});k=0<x.length?"{key: someKey, "+x.join(": ..., ")+": ...}":"{key: someKey}",S[_+k]||(x=0<x.length?"{"+x.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var Q;function oe(){return Q||(Q=1,process.env.NODE_ENV!=="production"&&function(){function s(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===j?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case h:return"Fragment";case V:return"Profiler";case A:return"StrictMode";case G:return"Suspense";case W:return"SuspenseList";case U:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case g:return"Portal";case M:return(e.displayName||"Context")+".Provider";case y:return(e._context.displayName||"Context")+".Consumer";case L:var r=e.render;return e=e.displayName,e||(e=r.displayName||r.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case q:return r=e.displayName||null,r!==null?r:s(e.type)||"Memo";case O:r=e._payload,e=e._init;try{return s(e(r))}catch{}}return null}function a(e){return""+e}function o(e){try{a(e);var r=!1}catch{r=!0}if(r){r=console;var c=r.error,k=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",k),a(e)}}function l(e){if(e===h)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===O)return"<...>";try{var r=s(e);return r?"<"+r+">":"<...>"}catch{return"<...>"}}function u(){var e=F.A;return e===null?null:e.getOwner()}function i(){return Error("react-stack-top-frame")}function E(e){if(D.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function d(e,r){function c(){J||(J=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function b(){var e=s(this.type);return t[e]||(t[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function v(e,r,c,k,C,w,X,B){return c=w.ref,e={$$typeof:N,type:e,key:r,props:w,_owner:C},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:b}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:X}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:B}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function p(e,r,c,k,C,w,X,B){var _=r.children;if(_!==void 0)if(k)if(Y(_)){for(k=0;k<_.length;k++)m(_[k]);Object.freeze&&Object.freeze(_)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else m(_);if(D.call(r,"key")){_=s(e);var x=Object.keys(r).filter(function(ae){return ae!=="key"});k=0<x.length?"{key: someKey, "+x.join(": ..., ")+": ...}":"{key: someKey}",S[_+k]||(x=0<x.length?"{"+x.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,k,_,x,_),S[_+k]=!0)}if(_=null,c!==void 0&&(o(c),_=""+c),E(r)&&(o(r.key),_=""+r.key),"key"in r){c={};for(var H in r)H!=="key"&&(c[H]=r[H])}else c=r;return _&&d(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),v(e,_,w,C,u(),c,X,B)}function m(e){typeof e=="object"&&e!==null&&e.$$typeof===N&&e._store&&(e._store.validated=1)}var T=n,N=Symbol.for("react.transitional.element"),g=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),A=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),y=Symbol.for("react.consumer"),M=Symbol.for("react.context"),L=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),q=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),U=Symbol.for("react.activity"),j=Symbol.for("react.client.reference"),F=T.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=Object.prototype.hasOwnProperty,Y=Array.isArray,P=console.createTask?console.createTask:function(){return null};T={"react-stack-bottom-frame":function(e){return e()}};var J,t={},f=T["react-stack-bottom-frame"].bind(T,i)(),R=P(l(i)),S={};$.Fragment=h,$.jsx=function(e,r,c,k,C){var w=1e4>F.recentlyCreatedOwnerStacks++;return p(e,r,c,!1,k,C,w?Error("react-stack-top-frame"):f,w?P(l(e)):R)},$.jsxs=function(e,r,c,k,C){var w=1e4>F.recentlyCreatedOwnerStacks++;return p(e,r,c,!0,k,C,w?Error("react-stack-top-frame"):f,w?P(l(e)):R)}}()),$}var K;function ce(){return K||(K=1,process.env.NODE_ENV==="production"?z.exports=se():z.exports=oe()),z.exports}var ee=ce();const te=n.createContext({}),ue=()=>n.useContext(te),le=({id:a,form:s,method:o,action:l,children:u,onSubmit:i=()=>{},onInput:E=()=>{},onChange:d=()=>{},numberFields:b=[],className:v,...p})=>(n.useEffect(()=>s.actions.registerOnchange(d),[d]),ee.jsx(te.Provider,{value:s,children:ee.jsx("form",{id:a,ref:s==null?void 0:s.ref,action:l,method:o,className:v,onSubmit:m=>{o||m.preventDefault();const T=s.actions.loadFormValues();i(T)},onInput:m=>{if(m.target.tagName==="FORM"){const T=s.actions.loadFormValues();s.actions.setFormState(T)}else E(m)},onChange:()=>{const m=s.actions.loadFormValues();s.actions.setFormState(m)},onReset:m=>{s&&(m.preventDefault(),s.actions.reset())},...p,children:u},s==null?void 0:s.lastReloadedAt)})),ie=({name:a,render:s=({ref:o,name:l,defaultValue:u,value:i,setValue:E})=>null})=>{const o=n.useRef(),l=ue(),u=l.actions.getDefaultValues()[a],[i,E]=n.useState(u),d=n.useCallback((b,{shouldDirty:v=!1}={})=>{l.actions.setFormState(p=>({...p,[a]:b}),{shouldDirty:v}),E(b)},[E,l.actions.setFormState]);return n.useEffect(()=>l.subscribe(a,(v,{shouldDirty:p=!0,shouldOnChange:m=!0}={})=>{E(v),l.actions.setFormState(T=>({...T,[a]:v}),{shouldDirty:p,shouldOnChange:m}),o.current&&typeof o.current.dispatchEvent=="function"&&m&&o.current.dispatchEvent(new Event("change"))}),[]),s({ref:o,name:a,defaultValue:u,value:i,setValue:d})},fe=(a,s)=>{let o=!1;return Object.keys(s).forEach(l=>{if(!(l in a)||o)return;const u=s[l],i=a[l];(typeof u=="object"||u!==i)&&(o=!0)}),o},re=a=>(typeof a.setCustomValidity=="function"&&a.setCustomValidity(""),!a||typeof a.checkValidity!="function"||a.checkValidity()?null:a.validationMessage),ne=()=>{const[a,s]=n.useState({}),o=n.useMemo(()=>Object.values(a).filter(Boolean).length>0,[a]),l=n.useCallback((d,b)=>{s(v=>v[d]===b?v:{...v,[d]:b})},[]),u=n.useCallback(d=>{s(b=>({...b,...d}))},[]),i=n.useCallback(d=>{s(b=>b[d]?{...b,[d]:""}:b)},[]),E=n.useCallback(()=>{s({})},[]);return{isError:o,errors:a,changeError:l,changeErrors:u,clearError:i,clearErrors:E}},de=()=>{const[a,s]=n.useState(),o=n.useCallback(()=>s(new Date().toString()),[]);return[a,o]},be=()=>{const[,a]=n.useState({});return n.useCallback(()=>a({}),[])},Ee=[],me=({numberFields:a=Ee,defaultValues:s={}}={})=>{const{changeError:o,errors:l,changeErrors:u,clearError:i,clearErrors:E,isError:d}=ne(),[b,v]=n.useState(!1),[p,m]=de(),T=be(),N=n.useRef(new Set),g=n.useRef({}),h=n.useRef(s),A=n.useRef({}),V=n.useRef(()=>{}),y=n.useRef(),M=n.useCallback((t,{shouldDirty:f=!0,shouldOnChange:R=!0}={})=>{let S=t;typeof t=="function"&&(S=t(g.current)),[...N.current].forEach(c=>{g.current[c]!==S[c]&&T()}),g.current=S;let r=b;f&&(r=fe(g.current,h.current),r!==b&&v(r)),R&&V.current(g.current)},[b]),L=n.useCallback(()=>{v(!1),E();const t=A.current;Object.keys(t).forEach(f=>{const R=t[f];R(h.current[f],{shouldDirty:!1,shouldOnChange:!1})}),y.current&&y.current.reset(),m()},[E]),G=n.useCallback((t,f)=>{const R=A.current;return R[t]=f,()=>{delete R[t],delete g.current[t],delete h.current[t]}},[]),W=n.useCallback(t=>(V.current=t,()=>V.current=()=>{})),q=n.useCallback(t=>re(t.target),[]),O=n.useCallback(t=>t?g.current[t]:g.current,[]),U=n.useCallback(()=>h.current,[]),j=n.useCallback(()=>{setTimeout(()=>y.current.dispatchEvent(new Event("input",{bubbles:!0})))},[]),F=n.useCallback(t=>{const f=re(t.target);f?o(t.target.name,f):o(t.target.name,null)},[o]),D=n.useCallback((t,f,{shouldDirty:R=!0,shouldOnChange:S=!0}={})=>{const e=A.current;switch(typeof t){case"string":{const r=e[t];if(!r)throw new Error(`${t} is uncontrolled, please use Controller for it!`);r(f,{shouldDirty:R,shouldOnChange:S}),S&&j()}break;case"object":Object.entries(t).forEach(([r,c])=>{const k=e[r];if(!k)throw new Error(`${r} is uncontrolled, please use Controller for it!`);k(c,{shouldDirty:R,shouldOnChange:S})}),S&&j();default:return}},[j]),Y=n.useCallback(()=>{const t=Object.fromEntries(new FormData(y.current)),f=A.current;return Object.keys(f).map(R=>{t[R]=g.current[R]}),a.forEach(R=>t.hasOwnProperty(R)&&(t[R]=+t[R])),t},[]),P=t=>(N.current.add(t),t==="data"?O():O()[t]),J=n.useMemo(()=>({setValue:D,instantChange:j,getDefaultValues:U,getFormState:O,setFormState:M,changeError:o,changeErrors:u,clearError:i,clearErrors:E,loadFormValues:Y,checkValidity:F,getFieldValidity:q,registerOnchange:W,reload:m,reset:L,watch:P}),[D,j,U,O,M,o,u,i,Y,q,F,W,m,L,P]);return n.useEffect(()=>{if(y.current){const t=Y();h.current=t,g.current=t}return()=>{h.current={},g.current={},v(!1),E()}},[p]),n.useLayoutEffect(()=>{y.current&&[...y.current.querySelectorAll("[name]")].forEach(f=>{f.defaultValue||(f.defaultValue=s[f.name])})},[p]),{ref:y,lastReloadedAt:p,isDirty:b,isError:d,errors:l,numberFields:a,subscribe:G,actions:J}};exports.Controller=ie;exports.Form=le;exports.useForm=me;exports.useValidateForm=ne;
22
+ <%s key={someKey} {...props} />`,k,_,x,_),S[_+k]=!0)}if(_=null,c!==void 0&&(o(c),_=""+c),E(r)&&(o(r.key),_=""+r.key),"key"in r){c={};for(var H in r)H!=="key"&&(c[H]=r[H])}else c=r;return _&&d(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),v(e,_,w,C,u(),c,X,B)}function m(e){typeof e=="object"&&e!==null&&e.$$typeof===N&&e._store&&(e._store.validated=1)}var T=n,N=Symbol.for("react.transitional.element"),g=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),A=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),y=Symbol.for("react.consumer"),M=Symbol.for("react.context"),L=Symbol.for("react.forward_ref"),G=Symbol.for("react.suspense"),W=Symbol.for("react.suspense_list"),q=Symbol.for("react.memo"),O=Symbol.for("react.lazy"),U=Symbol.for("react.activity"),j=Symbol.for("react.client.reference"),F=T.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,D=Object.prototype.hasOwnProperty,Y=Array.isArray,P=console.createTask?console.createTask:function(){return null};T={"react-stack-bottom-frame":function(e){return e()}};var J,t={},f=T["react-stack-bottom-frame"].bind(T,i)(),R=P(l(i)),S={};$.Fragment=h,$.jsx=function(e,r,c,k,C){var w=1e4>F.recentlyCreatedOwnerStacks++;return p(e,r,c,!1,k,C,w?Error("react-stack-top-frame"):f,w?P(l(e)):R)},$.jsxs=function(e,r,c,k,C){var w=1e4>F.recentlyCreatedOwnerStacks++;return p(e,r,c,!0,k,C,w?Error("react-stack-top-frame"):f,w?P(l(e)):R)}}()),$}var K;function ce(){return K||(K=1,process.env.NODE_ENV==="production"?z.exports=se():z.exports=oe()),z.exports}var ee=ce();const te=n.createContext({}),ue=()=>n.useContext(te),le=({id:s,form:a,method:o,action:l,children:u,onSubmit:i=()=>{},onInput:E=()=>{},onChange:d=()=>{},numberFields:b=[],className:v,...p})=>(n.useEffect(()=>a.actions.registerOnchange(d),[d]),ee.jsx(te.Provider,{value:a,children:ee.jsx("form",{id:s,ref:a==null?void 0:a.ref,action:l,method:o,className:v,onSubmit:m=>{o||m.preventDefault();const T=a.actions.loadFormValues();i(T)},onInput:m=>{if(m.target.tagName==="FORM"){const T=a.actions.loadFormValues();a.actions.setFormState(T)}else E(m)},onChange:()=>{const m=a.actions.loadFormValues();a.actions.setFormState(m)},onReset:m=>{a&&(m.preventDefault(),a.actions.reset())},...p,children:u},a==null?void 0:a.lastReloadedAt)})),ie=({name:s,render:a=({ref:o,name:l,defaultValue:u,value:i,setValue:E})=>null})=>{const o=n.useRef(),l=ue(),u=l.actions.getDefaultValues()[s],[i,E]=n.useState(u),d=n.useCallback((b,{shouldDirty:v=!1}={})=>{l.actions.setFormState(p=>({...p,[s]:b}),{shouldDirty:v}),E(b)},[E,l.actions.setFormState]);return n.useEffect(()=>l.subscribe(s,(v,{shouldDirty:p=!0,shouldOnChange:m=!0}={})=>{E(v),l.actions.setFormState(T=>({...T,[s]:v}),{shouldDirty:p,shouldOnChange:m}),o.current&&typeof o.current.dispatchEvent=="function"&&m&&o.current.dispatchEvent(new Event("change"))}),[]),a({ref:o,name:s,defaultValue:u,value:i,setValue:d})},fe=(s,a)=>{let o=!1;return Object.keys(a).forEach(l=>{if(!(l in s)||o)return;const u=a[l],i=s[l];(typeof u=="object"||u!==i)&&(o=!0)}),o},re=s=>(typeof s.setCustomValidity=="function"&&s.setCustomValidity(""),!s||typeof s.checkValidity!="function"||s.checkValidity()?null:s.validationMessage),ne=()=>{const[s,a]=n.useState({}),o=n.useMemo(()=>Object.values(s).filter(Boolean).length>0,[s]),l=n.useCallback((d,b)=>{a(v=>v[d]===b?v:{...v,[d]:b})},[]),u=n.useCallback(d=>{a(b=>({...b,...d}))},[]),i=n.useCallback(d=>{a(b=>b[d]?{...b,[d]:""}:b)},[]),E=n.useCallback(()=>{a({})},[]);return{isError:o,errors:s,changeError:l,changeErrors:u,clearError:i,clearErrors:E}},de=()=>{const[s,a]=n.useState(),o=n.useCallback(()=>a(new Date().toString()),[]);return[s,o]},be=()=>{const[,s]=n.useState({});return n.useCallback(()=>s({}),[])},Ee=[],me=({numberFields:s=Ee,defaultValues:a={}}={})=>{const{changeError:o,errors:l,changeErrors:u,clearError:i,clearErrors:E,isError:d}=ne(),[b,v]=n.useState(!1),[p,m]=de(),T=be(),N=n.useRef(new Set),g=n.useRef(a),h=n.useRef(a),A=n.useRef({}),V=n.useRef(()=>{}),y=n.useRef(),M=n.useCallback((t,{shouldDirty:f=!0,shouldOnChange:R=!0}={})=>{let S=t;typeof t=="function"&&(S=t(g.current)),[...N.current].forEach(c=>{g.current[c]!==S[c]&&T()}),g.current=S;let r=b;f&&(r=fe(g.current,h.current),r!==b&&v(r)),R&&V.current(g.current)},[b]),L=n.useCallback(()=>{v(!1),E();const t=A.current;Object.keys(t).forEach(f=>{const R=t[f];R(h.current[f],{shouldDirty:!1,shouldOnChange:!1})}),y.current&&y.current.reset(),m()},[E]),G=n.useCallback((t,f)=>{const R=A.current;return R[t]=f,()=>{delete R[t],delete g.current[t],delete h.current[t]}},[]),W=n.useCallback(t=>(V.current=t,()=>V.current=()=>{})),q=n.useCallback(t=>re(t.target),[]),O=n.useCallback(t=>t?g.current[t]:g.current,[]),U=n.useCallback(()=>h.current,[]),j=n.useCallback(()=>{setTimeout(()=>y.current.dispatchEvent(new Event("input",{bubbles:!0})))},[]),F=n.useCallback(t=>{const f=re(t.target);f?o(t.target.name,f):o(t.target.name,null)},[o]),D=n.useCallback((t,f,{shouldDirty:R=!0,shouldOnChange:S=!0}={})=>{const e=A.current;switch(typeof t){case"string":{const r=e[t];if(!r)throw new Error(`${t} is uncontrolled, please use Controller for it!`);r(f,{shouldDirty:R,shouldOnChange:S}),S&&j()}break;case"object":Object.entries(t).forEach(([r,c])=>{const k=e[r];if(!k)throw new Error(`${r} is uncontrolled, please use Controller for it!`);k(c,{shouldDirty:R,shouldOnChange:S})}),S&&j();default:return}},[j]),Y=n.useCallback(()=>{const t=Object.fromEntries(new FormData(y.current)),f=A.current;return Object.keys(f).map(R=>{t[R]=g.current[R]}),s.forEach(R=>t.hasOwnProperty(R)&&(t[R]=+t[R])),t},[]),P=t=>(N.current.add(t),t==="data"?O():O()[t]),J=n.useMemo(()=>({setValue:D,instantChange:j,getDefaultValues:U,getFormState:O,setFormState:M,changeError:o,changeErrors:u,clearError:i,clearErrors:E,loadFormValues:Y,checkValidity:F,getFieldValidity:q,registerOnchange:W,reload:m,reset:L,watch:P}),[D,j,U,O,M,o,u,i,Y,q,F,W,m,L,P]);return n.useEffect(()=>{if(y.current){const t=Y();h.current=t,g.current=t}return()=>{h.current={},g.current={},v(!1),E()}},[p]),n.useLayoutEffect(()=>{y.current&&[...y.current.querySelectorAll("[name]")].forEach(f=>{!f.defaultValue&&a[f.name]&&(f.defaultValue=a[f.name])})},[p]),{ref:y,lastReloadedAt:p,isDirty:b,isError:d,errors:l,numberFields:s,subscribe:G,actions:J}};exports.Controller=ie;exports.Form=le;exports.useForm=me;exports.useValidateForm=ne;
@@ -13,7 +13,7 @@ var ee;
13
13
  function de() {
14
14
  if (ee) return $;
15
15
  ee = 1;
16
- var n = Symbol.for("react.transitional.element"), o = Symbol.for("react.fragment");
16
+ var o = Symbol.for("react.transitional.element"), n = Symbol.for("react.fragment");
17
17
  function a(u, c, l) {
18
18
  var E = null;
19
19
  if (l !== void 0 && (E = "" + l), c.key !== void 0 && (E = "" + c.key), "key" in c) {
@@ -22,14 +22,14 @@ function de() {
22
22
  f !== "key" && (l[f] = c[f]);
23
23
  } else l = c;
24
24
  return c = l.ref, {
25
- $$typeof: n,
25
+ $$typeof: o,
26
26
  type: u,
27
27
  key: E,
28
28
  ref: c !== void 0 ? c : null,
29
29
  props: l
30
30
  };
31
31
  }
32
- return $.Fragment = o, $.jsx = a, $.jsxs = a, $;
32
+ return $.Fragment = n, $.jsx = a, $.jsxs = a, $;
33
33
  }
34
34
  var M = {};
35
35
  /**
@@ -44,7 +44,7 @@ var M = {};
44
44
  var re;
45
45
  function Ee() {
46
46
  return re || (re = 1, process.env.NODE_ENV !== "production" && function() {
47
- function n(e) {
47
+ function o(e) {
48
48
  if (e == null) return null;
49
49
  if (typeof e == "function")
50
50
  return e.$$typeof === j ? null : e.displayName || e.name || null;
@@ -77,22 +77,22 @@ function Ee() {
77
77
  var r = e.render;
78
78
  return e = e.displayName, e || (e = r.displayName || r.name || "", e = e !== "" ? "ForwardRef(" + e + ")" : "ForwardRef"), e;
79
79
  case J:
80
- return r = e.displayName || null, r !== null ? r : n(e.type) || "Memo";
80
+ return r = e.displayName || null, r !== null ? r : o(e.type) || "Memo";
81
81
  case A:
82
82
  r = e._payload, e = e._init;
83
83
  try {
84
- return n(e(r));
84
+ return o(e(r));
85
85
  } catch {
86
86
  }
87
87
  }
88
88
  return null;
89
89
  }
90
- function o(e) {
90
+ function n(e) {
91
91
  return "" + e;
92
92
  }
93
93
  function a(e) {
94
94
  try {
95
- o(e);
95
+ n(e);
96
96
  var r = !1;
97
97
  } catch {
98
98
  r = !0;
@@ -104,7 +104,7 @@ function Ee() {
104
104
  r,
105
105
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
106
106
  R
107
- ), o(e);
107
+ ), n(e);
108
108
  }
109
109
  }
110
110
  function u(e) {
@@ -112,7 +112,7 @@ function Ee() {
112
112
  if (typeof e == "object" && e !== null && e.$$typeof === A)
113
113
  return "<...>";
114
114
  try {
115
- var r = n(e);
115
+ var r = o(e);
116
116
  return r ? "<" + r + ">" : "<...>";
117
117
  } catch {
118
118
  return "<...>";
@@ -145,7 +145,7 @@ function Ee() {
145
145
  });
146
146
  }
147
147
  function d() {
148
- var e = n(this.type);
148
+ var e = o(this.type);
149
149
  return t[e] || (t[e] = !0, console.error(
150
150
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
151
151
  )), e = this.props.ref, e !== void 0 ? e : null;
@@ -196,7 +196,7 @@ function Ee() {
196
196
  );
197
197
  else b(v);
198
198
  if (Y.call(r, "key")) {
199
- v = n(e);
199
+ v = o(e);
200
200
  var N = Object.keys(r).filter(function(ce) {
201
201
  return ce !== "key";
202
202
  });
@@ -280,8 +280,8 @@ function be() {
280
280
  }
281
281
  var ne = be();
282
282
  const se = le({}), me = () => ie(se), he = ({
283
- id: n,
284
- form: o,
283
+ id: o,
284
+ form: n,
285
285
  method: a,
286
286
  action: u,
287
287
  children: c,
@@ -294,73 +294,73 @@ const se = le({}), me = () => ie(se), he = ({
294
294
  numberFields: d = [],
295
295
  className: _,
296
296
  ...T
297
- }) => (K(() => o.actions.registerOnchange(f), [f]), /* @__PURE__ */ ne.jsx(se.Provider, { value: o, children: /* @__PURE__ */ ne.jsx(
297
+ }) => (K(() => n.actions.registerOnchange(f), [f]), /* @__PURE__ */ ne.jsx(se.Provider, { value: n, children: /* @__PURE__ */ ne.jsx(
298
298
  "form",
299
299
  {
300
- id: n,
301
- ref: o == null ? void 0 : o.ref,
300
+ id: o,
301
+ ref: n == null ? void 0 : n.ref,
302
302
  action: u,
303
303
  method: a,
304
304
  className: _,
305
305
  onSubmit: (b) => {
306
306
  a || b.preventDefault();
307
- const h = o.actions.loadFormValues();
307
+ const h = n.actions.loadFormValues();
308
308
  l(h);
309
309
  },
310
310
  onInput: (b) => {
311
311
  if (b.target.tagName === "FORM") {
312
- const h = o.actions.loadFormValues();
313
- o.actions.setFormState(h);
312
+ const h = n.actions.loadFormValues();
313
+ n.actions.setFormState(h);
314
314
  } else
315
315
  E(b);
316
316
  },
317
317
  onChange: () => {
318
- const b = o.actions.loadFormValues();
319
- o.actions.setFormState(b);
318
+ const b = n.actions.loadFormValues();
319
+ n.actions.setFormState(b);
320
320
  },
321
321
  onReset: (b) => {
322
- o && (b.preventDefault(), o.actions.reset());
322
+ n && (b.preventDefault(), n.actions.reset());
323
323
  },
324
324
  ...T,
325
325
  children: c
326
326
  },
327
- o == null ? void 0 : o.lastReloadedAt
328
- ) })), Se = ({ name: n, render: o = ({ ref: a, name: u, defaultValue: c, value: l, setValue: E }) => null }) => {
329
- const a = x(), u = me(), c = u.actions.getDefaultValues()[n], [l, E] = L(c), f = p(
327
+ n == null ? void 0 : n.lastReloadedAt
328
+ ) })), Se = ({ name: o, render: n = ({ ref: a, name: u, defaultValue: c, value: l, setValue: E }) => null }) => {
329
+ const a = x(), u = me(), c = u.actions.getDefaultValues()[o], [l, E] = L(c), f = p(
330
330
  (d, { shouldDirty: _ = !1 } = {}) => {
331
- u.actions.setFormState((T) => ({ ...T, [n]: d }), { shouldDirty: _ }), E(d);
331
+ u.actions.setFormState((T) => ({ ...T, [o]: d }), { shouldDirty: _ }), E(d);
332
332
  },
333
333
  [E, u.actions.setFormState]
334
334
  );
335
- return K(() => u.subscribe(n, (_, { shouldDirty: T = !0, shouldOnChange: b = !0 } = {}) => {
336
- E(_), u.actions.setFormState((h) => ({ ...h, [n]: _ }), { shouldDirty: T, shouldOnChange: b }), a.current && typeof a.current.dispatchEvent == "function" && b && a.current.dispatchEvent(new Event("change"));
337
- }), []), o({ ref: a, name: n, defaultValue: c, value: l, setValue: f });
338
- }, Re = (n, o) => {
335
+ return K(() => u.subscribe(o, (_, { shouldDirty: T = !0, shouldOnChange: b = !0 } = {}) => {
336
+ E(_), u.actions.setFormState((h) => ({ ...h, [o]: _ }), { shouldDirty: T, shouldOnChange: b }), a.current && typeof a.current.dispatchEvent == "function" && b && a.current.dispatchEvent(new Event("change"));
337
+ }), []), n({ ref: a, name: o, defaultValue: c, value: l, setValue: f });
338
+ }, Re = (o, n) => {
339
339
  let a = !1;
340
- return Object.keys(o).forEach((u) => {
341
- if (!(u in n) || a) return;
342
- const c = o[u], l = n[u];
340
+ return Object.keys(n).forEach((u) => {
341
+ if (!(u in o) || a) return;
342
+ const c = n[u], l = o[u];
343
343
  (typeof c == "object" || c !== l) && (a = !0);
344
344
  }), a;
345
- }, oe = (n) => (typeof n.setCustomValidity == "function" && n.setCustomValidity(""), !n || typeof n.checkValidity != "function" || n.checkValidity() ? null : n.validationMessage), pe = () => {
346
- const [n, o] = L({}), a = ae(() => Object.values(n).filter(Boolean).length > 0, [n]), u = p((f, d) => {
347
- o((_) => _[f] === d ? _ : { ..._, [f]: d });
345
+ }, oe = (o) => (typeof o.setCustomValidity == "function" && o.setCustomValidity(""), !o || typeof o.checkValidity != "function" || o.checkValidity() ? null : o.validationMessage), pe = () => {
346
+ const [o, n] = L({}), a = ae(() => Object.values(o).filter(Boolean).length > 0, [o]), u = p((f, d) => {
347
+ n((_) => _[f] === d ? _ : { ..._, [f]: d });
348
348
  }, []), c = p((f) => {
349
- o((d) => ({ ...d, ...f }));
349
+ n((d) => ({ ...d, ...f }));
350
350
  }, []), l = p((f) => {
351
- o((d) => d[f] ? { ...d, [f]: "" } : d);
351
+ n((d) => d[f] ? { ...d, [f]: "" } : d);
352
352
  }, []), E = p(() => {
353
- o({});
353
+ n({});
354
354
  }, []);
355
- return { isError: a, errors: n, changeError: u, changeErrors: c, clearError: l, clearErrors: E };
355
+ return { isError: a, errors: o, changeError: u, changeErrors: c, clearError: l, clearErrors: E };
356
356
  }, _e = () => {
357
- const [n, o] = L(), a = p(() => o((/* @__PURE__ */ new Date()).toString()), []);
358
- return [n, a];
357
+ const [o, n] = L(), a = p(() => n((/* @__PURE__ */ new Date()).toString()), []);
358
+ return [o, a];
359
359
  }, ve = () => {
360
- const [, n] = L({});
361
- return p(() => n({}), []);
362
- }, ge = [], ke = ({ numberFields: n = ge, defaultValues: o = {} } = {}) => {
363
- const { changeError: a, errors: u, changeErrors: c, clearError: l, clearErrors: E, isError: f } = pe(), [d, _] = L(!1), [T, b] = _e(), h = ve(), V = x(/* @__PURE__ */ new Set()), g = x({}), k = x(o), F = x({}), D = x(() => {
360
+ const [, o] = L({});
361
+ return p(() => o({}), []);
362
+ }, ge = [], ke = ({ numberFields: o = ge, defaultValues: n = {} } = {}) => {
363
+ const { changeError: a, errors: u, changeErrors: c, clearError: l, clearErrors: E, isError: f } = pe(), [d, _] = L(!1), [T, b] = _e(), h = ve(), V = x(/* @__PURE__ */ new Set()), g = x(n), k = x(n), F = x({}), D = x(() => {
364
364
  }), w = x(), W = p(
365
365
  (t, { shouldDirty: i = !0, shouldOnChange: m = !0 } = {}) => {
366
366
  let S = t;
@@ -420,7 +420,7 @@ const se = le({}), me = () => ie(se), he = ({
420
420
  const t = Object.fromEntries(new FormData(w.current)), i = F.current;
421
421
  return Object.keys(i).map((m) => {
422
422
  t[m] = g.current[m];
423
- }), n.forEach((m) => t.hasOwnProperty(m) && (t[m] = +t[m])), t;
423
+ }), o.forEach((m) => t.hasOwnProperty(m) && (t[m] = +t[m])), t;
424
424
  }, []), C = (t) => (V.current.add(t), t === "data" ? A() : A()[t]), G = ae(
425
425
  () => ({
426
426
  setValue: Y,
@@ -468,9 +468,9 @@ const se = le({}), me = () => ie(se), he = ({
468
468
  };
469
469
  }, [T]), fe(() => {
470
470
  w.current && [...w.current.querySelectorAll("[name]")].forEach((i) => {
471
- i.defaultValue || (i.defaultValue = o[i.name]);
471
+ !i.defaultValue && n[i.name] && (i.defaultValue = n[i.name]);
472
472
  });
473
- }, [T]), { ref: w, lastReloadedAt: T, isDirty: d, isError: f, errors: u, numberFields: n, subscribe: B, actions: G };
473
+ }, [T]), { ref: w, lastReloadedAt: T, isDirty: d, isError: f, errors: u, numberFields: o, subscribe: B, actions: G };
474
474
  };
475
475
  export {
476
476
  Se as Controller,
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var q;function se(){if(q)return V;q=1;var a=Symbol.for("react.transitional.element"),s=Symbol.for("react.fragment");function o(l,u,i){var E=null;if(i!==void 0&&(E=""+i),u.key!==void 0&&(E=""+u.key),"key"in u){i={};for(var d in u)d!=="key"&&(i[d]=u[d])}else i=u;return u=i.ref,{$$typeof:a,type:l,key:E,ref:u!==void 0?u:null,props:i}}return V.Fragment=s,V.jsx=o,V.jsxs=o,V}var D={};/**
9
+ */var q;function se(){if(q)return V;q=1;var s=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function o(l,u,i){var E=null;if(i!==void 0&&(E=""+i),u.key!==void 0&&(E=""+u.key),"key"in u){i={};for(var d in u)d!=="key"&&(i[d]=u[d])}else i=u;return u=i.ref,{$$typeof:s,type:l,key:E,ref:u!==void 0?u:null,props:i}}return V.Fragment=a,V.jsx=o,V.jsxs=o,V}var D={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -14,9 +14,9 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var $;function oe(){return $||($=1,process.env.NODE_ENV!=="production"&&function(){function a(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===A?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case y:return"Fragment";case I:return"Profiler";case F:return"StrictMode";case H:return"Suspense";case z:return"SuspenseList";case X:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case T:return"Portal";case U:return(e.displayName||"Context")+".Provider";case w:return(e._context.displayName||"Context")+".Consumer";case J:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case G:return t=e.displayName||null,t!==null?t:a(e.type)||"Memo";case j:t=e._payload,e=e._init;try{return a(e(t))}catch{}}return null}function s(e){return""+e}function o(e){try{s(e);var t=!1}catch{t=!0}if(t){t=console;var c=t.error,k=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",k),s(e)}}function l(e){if(e===y)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===j)return"<...>";try{var t=a(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function u(){var e=P.A;return e===null?null:e.getOwner()}function i(){return Error("react-stack-top-frame")}function E(e){if(M.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function d(e,t){function c(){B||(B=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function b(){var e=a(this.type);return r[e]||(r[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function p(e,t,c,k,O,C,Z,Q){return c=C.ref,e={$$typeof:Y,type:e,key:t,props:C,_owner:O},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:b}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Z}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Q}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function _(e,t,c,k,O,C,Z,Q){var v=t.children;if(v!==void 0)if(k)if(L(v)){for(k=0;k<v.length;k++)m(v[k]);Object.freeze&&Object.freeze(v)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else m(v);if(M.call(t,"key")){v=a(e);var N=Object.keys(t).filter(function(Re){return Re!=="key"});k=0<N.length?"{key: someKey, "+N.join(": ..., ")+": ...}":"{key: someKey}",g[v+k]||(N=0<N.length?"{"+N.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var $;function oe(){return $||($=1,process.env.NODE_ENV!=="production"&&function(){function s(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===A?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case y:return"Fragment";case I:return"Profiler";case F:return"StrictMode";case H:return"Suspense";case z:return"SuspenseList";case X:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case T:return"Portal";case U:return(e.displayName||"Context")+".Provider";case w:return(e._context.displayName||"Context")+".Consumer";case J:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case G:return t=e.displayName||null,t!==null?t:s(e.type)||"Memo";case j:t=e._payload,e=e._init;try{return s(e(t))}catch{}}return null}function a(e){return""+e}function o(e){try{a(e);var t=!1}catch{t=!0}if(t){t=console;var c=t.error,k=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return c.call(t,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",k),a(e)}}function l(e){if(e===y)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===j)return"<...>";try{var t=s(e);return t?"<"+t+">":"<...>"}catch{return"<...>"}}function u(){var e=P.A;return e===null?null:e.getOwner()}function i(){return Error("react-stack-top-frame")}function E(e){if(M.call(e,"key")){var t=Object.getOwnPropertyDescriptor(e,"key").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function d(e,t){function c(){B||(B=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}c.isReactWarning=!0,Object.defineProperty(e,"key",{get:c,configurable:!0})}function b(){var e=s(this.type);return r[e]||(r[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function p(e,t,c,k,O,C,Z,Q){return c=C.ref,e={$$typeof:Y,type:e,key:t,props:C,_owner:O},(c!==void 0?c:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:b}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:Z}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:Q}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function _(e,t,c,k,O,C,Z,Q){var v=t.children;if(v!==void 0)if(k)if(L(v)){for(k=0;k<v.length;k++)m(v[k]);Object.freeze&&Object.freeze(v)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else m(v);if(M.call(t,"key")){v=s(e);var N=Object.keys(t).filter(function(Re){return Re!=="key"});k=0<N.length?"{key: someKey, "+N.join(": ..., ")+": ...}":"{key: someKey}",g[v+k]||(N=0<N.length?"{"+N.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,k,v,N,v),g[v+k]=!0)}if(v=null,c!==void 0&&(o(c),v=""+c),E(t)&&(o(t.key),v=""+t.key),"key"in t){c={};for(var K in t)K!=="key"&&(c[K]=t[K])}else c=t;return v&&d(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),p(e,v,C,O,u(),c,Z,Q)}function m(e){typeof e=="object"&&e!==null&&e.$$typeof===Y&&e._store&&(e._store.validated=1)}var h=n,Y=Symbol.for("react.transitional.element"),T=Symbol.for("react.portal"),y=Symbol.for("react.fragment"),F=Symbol.for("react.strict_mode"),I=Symbol.for("react.profiler"),w=Symbol.for("react.consumer"),U=Symbol.for("react.context"),J=Symbol.for("react.forward_ref"),H=Symbol.for("react.suspense"),z=Symbol.for("react.suspense_list"),G=Symbol.for("react.memo"),j=Symbol.for("react.lazy"),X=Symbol.for("react.activity"),A=Symbol.for("react.client.reference"),P=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,M=Object.prototype.hasOwnProperty,L=Array.isArray,x=console.createTask?console.createTask:function(){return null};h={"react-stack-bottom-frame":function(e){return e()}};var B,r={},f=h["react-stack-bottom-frame"].bind(h,i)(),R=x(l(i)),g={};D.Fragment=y,D.jsx=function(e,t,c,k,O){var C=1e4>P.recentlyCreatedOwnerStacks++;return _(e,t,c,!1,k,O,C?Error("react-stack-top-frame"):f,C?x(l(e)):R)},D.jsxs=function(e,t,c,k,O){var C=1e4>P.recentlyCreatedOwnerStacks++;return _(e,t,c,!0,k,O,C?Error("react-stack-top-frame"):f,C?x(l(e)):R)}}()),D}var ee;function ce(){return ee||(ee=1,process.env.NODE_ENV==="production"?W.exports=se():W.exports=oe()),W.exports}var te=ce();const re=n.createContext({}),ue=()=>n.useContext(re),le=({id:a,form:s,method:o,action:l,children:u,onSubmit:i=()=>{},onInput:E=()=>{},onChange:d=()=>{},numberFields:b=[],className:p,..._})=>(n.useEffect(()=>s.actions.registerOnchange(d),[d]),te.jsx(re.Provider,{value:s,children:te.jsx("form",{id:a,ref:s==null?void 0:s.ref,action:l,method:o,className:p,onSubmit:m=>{o||m.preventDefault();const h=s.actions.loadFormValues();i(h)},onInput:m=>{if(m.target.tagName==="FORM"){const h=s.actions.loadFormValues();s.actions.setFormState(h)}else E(m)},onChange:()=>{const m=s.actions.loadFormValues();s.actions.setFormState(m)},onReset:m=>{s&&(m.preventDefault(),s.actions.reset())},..._,children:u},s==null?void 0:s.lastReloadedAt)})),ie=({name:a,render:s=({ref:o,name:l,defaultValue:u,value:i,setValue:E})=>null})=>{const o=n.useRef(),l=ue(),u=l.actions.getDefaultValues()[a],[i,E]=n.useState(u),d=n.useCallback((b,{shouldDirty:p=!1}={})=>{l.actions.setFormState(_=>({..._,[a]:b}),{shouldDirty:p}),E(b)},[E,l.actions.setFormState]);return n.useEffect(()=>l.subscribe(a,(p,{shouldDirty:_=!0,shouldOnChange:m=!0}={})=>{E(p),l.actions.setFormState(h=>({...h,[a]:p}),{shouldDirty:_,shouldOnChange:m}),o.current&&typeof o.current.dispatchEvent=="function"&&m&&o.current.dispatchEvent(new Event("change"))}),[]),s({ref:o,name:a,defaultValue:u,value:i,setValue:d})},fe=(a,s)=>{let o=!1;return Object.keys(s).forEach(l=>{if(!(l in a)||o)return;const u=s[l],i=a[l];(typeof u=="object"||u!==i)&&(o=!0)}),o},ne=a=>(typeof a.setCustomValidity=="function"&&a.setCustomValidity(""),!a||typeof a.checkValidity!="function"||a.checkValidity()?null:a.validationMessage),ae=()=>{const[a,s]=n.useState({}),o=n.useMemo(()=>Object.values(a).filter(Boolean).length>0,[a]),l=n.useCallback((d,b)=>{s(p=>p[d]===b?p:{...p,[d]:b})},[]),u=n.useCallback(d=>{s(b=>({...b,...d}))},[]),i=n.useCallback(d=>{s(b=>b[d]?{...b,[d]:""}:b)},[]),E=n.useCallback(()=>{s({})},[]);return{isError:o,errors:a,changeError:l,changeErrors:u,clearError:i,clearErrors:E}},de=()=>{const[a,s]=n.useState(),o=n.useCallback(()=>s(new Date().toString()),[]);return[a,o]},be=()=>{const[,a]=n.useState({});return n.useCallback(()=>a({}),[])},Ee=[],me=({numberFields:a=Ee,defaultValues:s={}}={})=>{const{changeError:o,errors:l,changeErrors:u,clearError:i,clearErrors:E,isError:d}=ae(),[b,p]=n.useState(!1),[_,m]=de(),h=be(),Y=n.useRef(new Set),T=n.useRef({}),y=n.useRef(s),F=n.useRef({}),I=n.useRef(()=>{}),w=n.useRef(),U=n.useCallback((r,{shouldDirty:f=!0,shouldOnChange:R=!0}={})=>{let g=r;typeof r=="function"&&(g=r(T.current)),[...Y.current].forEach(c=>{T.current[c]!==g[c]&&h()}),T.current=g;let t=b;f&&(t=fe(T.current,y.current),t!==b&&p(t)),R&&I.current(T.current)},[b]),J=n.useCallback(()=>{p(!1),E();const r=F.current;Object.keys(r).forEach(f=>{const R=r[f];R(y.current[f],{shouldDirty:!1,shouldOnChange:!1})}),w.current&&w.current.reset(),m()},[E]),H=n.useCallback((r,f)=>{const R=F.current;return R[r]=f,()=>{delete R[r],delete T.current[r],delete y.current[r]}},[]),z=n.useCallback(r=>(I.current=r,()=>I.current=()=>{})),G=n.useCallback(r=>ne(r.target),[]),j=n.useCallback(r=>r?T.current[r]:T.current,[]),X=n.useCallback(()=>y.current,[]),A=n.useCallback(()=>{setTimeout(()=>w.current.dispatchEvent(new Event("input",{bubbles:!0})))},[]),P=n.useCallback(r=>{const f=ne(r.target);f?o(r.target.name,f):o(r.target.name,null)},[o]),M=n.useCallback((r,f,{shouldDirty:R=!0,shouldOnChange:g=!0}={})=>{const e=F.current;switch(typeof r){case"string":{const t=e[r];if(!t)throw new Error(`${r} is uncontrolled, please use Controller for it!`);t(f,{shouldDirty:R,shouldOnChange:g}),g&&A()}break;case"object":Object.entries(r).forEach(([t,c])=>{const k=e[t];if(!k)throw new Error(`${t} is uncontrolled, please use Controller for it!`);k(c,{shouldDirty:R,shouldOnChange:g})}),g&&A();default:return}},[A]),L=n.useCallback(()=>{const r=Object.fromEntries(new FormData(w.current)),f=F.current;return Object.keys(f).map(R=>{r[R]=T.current[R]}),a.forEach(R=>r.hasOwnProperty(R)&&(r[R]=+r[R])),r},[]),x=r=>(Y.current.add(r),r==="data"?j():j()[r]),B=n.useMemo(()=>({setValue:M,instantChange:A,getDefaultValues:X,getFormState:j,setFormState:U,changeError:o,changeErrors:u,clearError:i,clearErrors:E,loadFormValues:L,checkValidity:P,getFieldValidity:G,registerOnchange:z,reload:m,reset:J,watch:x}),[M,A,X,j,U,o,u,i,L,G,P,z,m,J,x]);return n.useEffect(()=>{if(w.current){const r=L();y.current=r,T.current=r}return()=>{y.current={},T.current={},p(!1),E()}},[_]),n.useLayoutEffect(()=>{w.current&&[...w.current.querySelectorAll("[name]")].forEach(f=>{f.defaultValue||(f.defaultValue=s[f.name])})},[_]),{ref:w,lastReloadedAt:_,isDirty:b,isError:d,errors:l,numberFields:a,subscribe:H,actions:B}};S.Controller=ie,S.Form=le,S.useForm=me,S.useValidateForm=ae,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})});
22
+ <%s key={someKey} {...props} />`,k,v,N,v),g[v+k]=!0)}if(v=null,c!==void 0&&(o(c),v=""+c),E(t)&&(o(t.key),v=""+t.key),"key"in t){c={};for(var K in t)K!=="key"&&(c[K]=t[K])}else c=t;return v&&d(c,typeof e=="function"?e.displayName||e.name||"Unknown":e),p(e,v,C,O,u(),c,Z,Q)}function m(e){typeof e=="object"&&e!==null&&e.$$typeof===Y&&e._store&&(e._store.validated=1)}var h=n,Y=Symbol.for("react.transitional.element"),T=Symbol.for("react.portal"),y=Symbol.for("react.fragment"),F=Symbol.for("react.strict_mode"),I=Symbol.for("react.profiler"),w=Symbol.for("react.consumer"),U=Symbol.for("react.context"),J=Symbol.for("react.forward_ref"),H=Symbol.for("react.suspense"),z=Symbol.for("react.suspense_list"),G=Symbol.for("react.memo"),j=Symbol.for("react.lazy"),X=Symbol.for("react.activity"),A=Symbol.for("react.client.reference"),P=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,M=Object.prototype.hasOwnProperty,L=Array.isArray,x=console.createTask?console.createTask:function(){return null};h={"react-stack-bottom-frame":function(e){return e()}};var B,r={},f=h["react-stack-bottom-frame"].bind(h,i)(),R=x(l(i)),g={};D.Fragment=y,D.jsx=function(e,t,c,k,O){var C=1e4>P.recentlyCreatedOwnerStacks++;return _(e,t,c,!1,k,O,C?Error("react-stack-top-frame"):f,C?x(l(e)):R)},D.jsxs=function(e,t,c,k,O){var C=1e4>P.recentlyCreatedOwnerStacks++;return _(e,t,c,!0,k,O,C?Error("react-stack-top-frame"):f,C?x(l(e)):R)}}()),D}var ee;function ce(){return ee||(ee=1,process.env.NODE_ENV==="production"?W.exports=se():W.exports=oe()),W.exports}var te=ce();const re=n.createContext({}),ue=()=>n.useContext(re),le=({id:s,form:a,method:o,action:l,children:u,onSubmit:i=()=>{},onInput:E=()=>{},onChange:d=()=>{},numberFields:b=[],className:p,..._})=>(n.useEffect(()=>a.actions.registerOnchange(d),[d]),te.jsx(re.Provider,{value:a,children:te.jsx("form",{id:s,ref:a==null?void 0:a.ref,action:l,method:o,className:p,onSubmit:m=>{o||m.preventDefault();const h=a.actions.loadFormValues();i(h)},onInput:m=>{if(m.target.tagName==="FORM"){const h=a.actions.loadFormValues();a.actions.setFormState(h)}else E(m)},onChange:()=>{const m=a.actions.loadFormValues();a.actions.setFormState(m)},onReset:m=>{a&&(m.preventDefault(),a.actions.reset())},..._,children:u},a==null?void 0:a.lastReloadedAt)})),ie=({name:s,render:a=({ref:o,name:l,defaultValue:u,value:i,setValue:E})=>null})=>{const o=n.useRef(),l=ue(),u=l.actions.getDefaultValues()[s],[i,E]=n.useState(u),d=n.useCallback((b,{shouldDirty:p=!1}={})=>{l.actions.setFormState(_=>({..._,[s]:b}),{shouldDirty:p}),E(b)},[E,l.actions.setFormState]);return n.useEffect(()=>l.subscribe(s,(p,{shouldDirty:_=!0,shouldOnChange:m=!0}={})=>{E(p),l.actions.setFormState(h=>({...h,[s]:p}),{shouldDirty:_,shouldOnChange:m}),o.current&&typeof o.current.dispatchEvent=="function"&&m&&o.current.dispatchEvent(new Event("change"))}),[]),a({ref:o,name:s,defaultValue:u,value:i,setValue:d})},fe=(s,a)=>{let o=!1;return Object.keys(a).forEach(l=>{if(!(l in s)||o)return;const u=a[l],i=s[l];(typeof u=="object"||u!==i)&&(o=!0)}),o},ne=s=>(typeof s.setCustomValidity=="function"&&s.setCustomValidity(""),!s||typeof s.checkValidity!="function"||s.checkValidity()?null:s.validationMessage),ae=()=>{const[s,a]=n.useState({}),o=n.useMemo(()=>Object.values(s).filter(Boolean).length>0,[s]),l=n.useCallback((d,b)=>{a(p=>p[d]===b?p:{...p,[d]:b})},[]),u=n.useCallback(d=>{a(b=>({...b,...d}))},[]),i=n.useCallback(d=>{a(b=>b[d]?{...b,[d]:""}:b)},[]),E=n.useCallback(()=>{a({})},[]);return{isError:o,errors:s,changeError:l,changeErrors:u,clearError:i,clearErrors:E}},de=()=>{const[s,a]=n.useState(),o=n.useCallback(()=>a(new Date().toString()),[]);return[s,o]},be=()=>{const[,s]=n.useState({});return n.useCallback(()=>s({}),[])},Ee=[],me=({numberFields:s=Ee,defaultValues:a={}}={})=>{const{changeError:o,errors:l,changeErrors:u,clearError:i,clearErrors:E,isError:d}=ae(),[b,p]=n.useState(!1),[_,m]=de(),h=be(),Y=n.useRef(new Set),T=n.useRef(a),y=n.useRef(a),F=n.useRef({}),I=n.useRef(()=>{}),w=n.useRef(),U=n.useCallback((r,{shouldDirty:f=!0,shouldOnChange:R=!0}={})=>{let g=r;typeof r=="function"&&(g=r(T.current)),[...Y.current].forEach(c=>{T.current[c]!==g[c]&&h()}),T.current=g;let t=b;f&&(t=fe(T.current,y.current),t!==b&&p(t)),R&&I.current(T.current)},[b]),J=n.useCallback(()=>{p(!1),E();const r=F.current;Object.keys(r).forEach(f=>{const R=r[f];R(y.current[f],{shouldDirty:!1,shouldOnChange:!1})}),w.current&&w.current.reset(),m()},[E]),H=n.useCallback((r,f)=>{const R=F.current;return R[r]=f,()=>{delete R[r],delete T.current[r],delete y.current[r]}},[]),z=n.useCallback(r=>(I.current=r,()=>I.current=()=>{})),G=n.useCallback(r=>ne(r.target),[]),j=n.useCallback(r=>r?T.current[r]:T.current,[]),X=n.useCallback(()=>y.current,[]),A=n.useCallback(()=>{setTimeout(()=>w.current.dispatchEvent(new Event("input",{bubbles:!0})))},[]),P=n.useCallback(r=>{const f=ne(r.target);f?o(r.target.name,f):o(r.target.name,null)},[o]),M=n.useCallback((r,f,{shouldDirty:R=!0,shouldOnChange:g=!0}={})=>{const e=F.current;switch(typeof r){case"string":{const t=e[r];if(!t)throw new Error(`${r} is uncontrolled, please use Controller for it!`);t(f,{shouldDirty:R,shouldOnChange:g}),g&&A()}break;case"object":Object.entries(r).forEach(([t,c])=>{const k=e[t];if(!k)throw new Error(`${t} is uncontrolled, please use Controller for it!`);k(c,{shouldDirty:R,shouldOnChange:g})}),g&&A();default:return}},[A]),L=n.useCallback(()=>{const r=Object.fromEntries(new FormData(w.current)),f=F.current;return Object.keys(f).map(R=>{r[R]=T.current[R]}),s.forEach(R=>r.hasOwnProperty(R)&&(r[R]=+r[R])),r},[]),x=r=>(Y.current.add(r),r==="data"?j():j()[r]),B=n.useMemo(()=>({setValue:M,instantChange:A,getDefaultValues:X,getFormState:j,setFormState:U,changeError:o,changeErrors:u,clearError:i,clearErrors:E,loadFormValues:L,checkValidity:P,getFieldValidity:G,registerOnchange:z,reload:m,reset:J,watch:x}),[M,A,X,j,U,o,u,i,L,G,P,z,m,J,x]);return n.useEffect(()=>{if(w.current){const r=L();y.current=r,T.current=r}return()=>{y.current={},T.current={},p(!1),E()}},[_]),n.useLayoutEffect(()=>{w.current&&[...w.current.querySelectorAll("[name]")].forEach(f=>{!f.defaultValue&&a[f.name]&&(f.defaultValue=a[f.name])})},[_]),{ref:w,lastReloadedAt:_,isDirty:b,isError:d,errors:l,numberFields:s,subscribe:H,actions:B}};S.Controller=ie,S.Form=le,S.useForm=me,S.useValidateForm=ae,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-simple-formkit",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "keywords": [
5
5
  "react formkit",
6
6
  "react ez formkit",