autoforma 2.9.7 → 2.9.91

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.
@@ -30,13 +30,15 @@ export interface SelectFieldSchema<TCustom extends string = never> extends BaseF
30
30
  }[];
31
31
  }
32
32
  export interface FieldSchemaRegistry<TCustom extends string = never> {
33
- base: BaseFieldSchema<TCustom>;
34
- select: SelectFieldSchema<TCustom>;
35
- hasFields: HasFields<TCustom>;
36
- array: ArrayFieldSchema<TCustom>;
37
- object: ObjectFieldSchema<TCustom>;
33
+ base: BaseFieldSchema<never>;
34
+ select: SelectFieldSchema<never>;
35
+ hasFields: HasFields<never>;
36
+ array: ArrayFieldSchema<never>;
37
+ object: ObjectFieldSchema<never>;
38
38
  }
39
- export type FieldSchema<TCustom extends string = never> = FieldSchemaRegistry<TCustom>[keyof FieldSchemaRegistry<TCustom>];
39
+ type BuiltInFieldSchema = FieldSchemaRegistry<never>[keyof FieldSchemaRegistry<never>];
40
+ type CustomFieldSchema<TCustom extends string> = FieldSchemaRegistry<TCustom>[keyof FieldSchemaRegistry<TCustom>];
41
+ export type FieldSchema<TCustom extends string = never> = BuiltInFieldSchema | (TCustom extends never ? never : CustomFieldSchema<TCustom>);
40
42
  export type Schema<TCustom extends string = never> = FieldSchema<TCustom>[];
41
43
  export type UpdateFieldSchema<TCustom extends string = never> = {
42
44
  [key: string]: (path: string, fieldSchema: FieldSchema<TCustom>, values: FormValues) => FieldSchema<TCustom> | Promise<FieldSchema<TCustom>>;
@@ -76,3 +78,4 @@ export interface FormRef {
76
78
  export interface FieldProps<TCustom extends string = never> {
77
79
  fieldSchema: FieldSchema<TCustom>;
78
80
  }
81
+ export {};
package/dist/index.cjs.js CHANGED
@@ -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 nt;function Bt(){if(nt)return Ae;nt=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function t(n,o,i){var l=null;if(i!==void 0&&(l=""+i),o.key!==void 0&&(l=""+o.key),"key"in o){i={};for(var f in o)f!=="key"&&(i[f]=o[f])}else i=o;return o=i.ref,{$$typeof:e,type:n,key:l,ref:o!==void 0?o:null,props:i}}return Ae.Fragment=r,Ae.jsx=t,Ae.jsxs=t,Ae}var pe={};/**
9
+ */var nt;function Bt(){if(nt)return Ae;nt=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function t(n,o,i){var u=null;if(i!==void 0&&(u=""+i),o.key!==void 0&&(u=""+o.key),"key"in o){i={};for(var f in o)f!=="key"&&(i[f]=o[f])}else i=o;return o=i.ref,{$$typeof:e,type:n,key:u,ref:o!==void 0?o:null,props:i}}return Ae.Fragment=r,Ae.jsx=t,Ae.jsxs=t,Ae}var we={};/**
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 it;function $t(){return it||(it=1,process.env.NODE_ENV!=="production"&&(function(){function e(c){if(c==null)return null;if(typeof c=="function")return c.$$typeof===fe?null:c.displayName||c.name||null;if(typeof c=="string")return c;switch(c){case $:return"Fragment";case V:return"Profiler";case W:return"StrictMode";case ee:return"Suspense";case ce:return"SuspenseList";case J:return"Activity"}if(typeof c=="object")switch(typeof c.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),c.$$typeof){case O:return"Portal";case C:return c.displayName||"Context";case G:return(c._context.displayName||"Context")+".Consumer";case k:var _=c.render;return c=c.displayName,c||(c=_.displayName||_.name||"",c=c!==""?"ForwardRef("+c+")":"ForwardRef"),c;case se:return _=c.displayName||null,_!==null?_:e(c.type)||"Memo";case N:_=c._payload,c=c._init;try{return e(c(_))}catch{}}return null}function r(c){return""+c}function t(c){try{r(c);var _=!1}catch{_=!0}if(_){_=console;var j=_.error,L=typeof Symbol=="function"&&Symbol.toStringTag&&c[Symbol.toStringTag]||c.constructor.name||"Object";return j.call(_,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",L),r(c)}}function n(c){if(c===$)return"<>";if(typeof c=="object"&&c!==null&&c.$$typeof===N)return"<...>";try{var _=e(c);return _?"<"+_+">":"<...>"}catch{return"<...>"}}function o(){var c=x.A;return c===null?null:c.getOwner()}function i(){return Error("react-stack-top-frame")}function l(c){if(R.call(c,"key")){var _=Object.getOwnPropertyDescriptor(c,"key").get;if(_&&_.isReactWarning)return!1}return c.key!==void 0}function f(c,_){function j(){Q||(Q=!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)",_))}j.isReactWarning=!0,Object.defineProperty(c,"key",{get:j,configurable:!0})}function A(){var c=e(this.type);return X[c]||(X[c]=!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.")),c=this.props.ref,c!==void 0?c:null}function p(c,_,j,L,ge,_e){var M=j.ref;return c={$$typeof:B,type:c,key:_,props:j,_owner:L},(M!==void 0?M:null)!==null?Object.defineProperty(c,"ref",{enumerable:!1,get:A}):Object.defineProperty(c,"ref",{enumerable:!1,value:null}),c._store={},Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(c,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(c,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:ge}),Object.defineProperty(c,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:_e}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}function T(c,_,j,L,ge,_e){var M=_.children;if(M!==void 0)if(L)if(I(M)){for(L=0;L<M.length;L++)E(M[L]);Object.freeze&&Object.freeze(M)}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 E(M);if(R.call(_,"key")){M=e(c);var oe=Object.keys(_).filter(function(Fe){return Fe!=="key"});L=0<oe.length?"{key: someKey, "+oe.join(": ..., ")+": ...}":"{key: someKey}",me[M+L]||(oe=0<oe.length?"{"+oe.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var it;function Wt(){return it||(it=1,process.env.NODE_ENV!=="production"&&(function(){function e(c){if(c==null)return null;if(typeof c=="function")return c.$$typeof===fe?null:c.displayName||c.name||null;if(typeof c=="string")return c;switch(c){case W:return"Fragment";case V:return"Profiler";case $:return"StrictMode";case ee:return"Suspense";case ce:return"SuspenseList";case J:return"Activity"}if(typeof c=="object")switch(typeof c.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),c.$$typeof){case O:return"Portal";case C:return c.displayName||"Context";case G:return(c._context.displayName||"Context")+".Consumer";case k:var _=c.render;return c=c.displayName,c||(c=_.displayName||_.name||"",c=c!==""?"ForwardRef("+c+")":"ForwardRef"),c;case se:return _=c.displayName||null,_!==null?_:e(c.type)||"Memo";case N:_=c._payload,c=c._init;try{return e(c(_))}catch{}}return null}function r(c){return""+c}function t(c){try{r(c);var _=!1}catch{_=!0}if(_){_=console;var j=_.error,L=typeof Symbol=="function"&&Symbol.toStringTag&&c[Symbol.toStringTag]||c.constructor.name||"Object";return j.call(_,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",L),r(c)}}function n(c){if(c===W)return"<>";if(typeof c=="object"&&c!==null&&c.$$typeof===N)return"<...>";try{var _=e(c);return _?"<"+_+">":"<...>"}catch{return"<...>"}}function o(){var c=x.A;return c===null?null:c.getOwner()}function i(){return Error("react-stack-top-frame")}function u(c){if(R.call(c,"key")){var _=Object.getOwnPropertyDescriptor(c,"key").get;if(_&&_.isReactWarning)return!1}return c.key!==void 0}function f(c,_){function j(){Q||(Q=!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)",_))}j.isReactWarning=!0,Object.defineProperty(c,"key",{get:j,configurable:!0})}function A(){var c=e(this.type);return X[c]||(X[c]=!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.")),c=this.props.ref,c!==void 0?c:null}function w(c,_,j,L,ge,_e){var I=j.ref;return c={$$typeof:B,type:c,key:_,props:j,_owner:L},(I!==void 0?I:null)!==null?Object.defineProperty(c,"ref",{enumerable:!1,get:A}):Object.defineProperty(c,"ref",{enumerable:!1,value:null}),c._store={},Object.defineProperty(c._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(c,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(c,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:ge}),Object.defineProperty(c,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:_e}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}function T(c,_,j,L,ge,_e){var I=_.children;if(I!==void 0)if(L)if(M(I)){for(L=0;L<I.length;L++)E(I[L]);Object.freeze&&Object.freeze(I)}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 E(I);if(R.call(_,"key")){I=e(c);var oe=Object.keys(_).filter(function(Fe){return Fe!=="key"});L=0<oe.length?"{key: someKey, "+oe.join(": ..., ")+": ...}":"{key: someKey}",me[I+L]||(oe=0<oe.length?"{"+oe.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} />`,L,M,oe,M),me[M+L]=!0)}if(M=null,j!==void 0&&(t(j),M=""+j),l(_)&&(t(_.key),M=""+_.key),"key"in _){j={};for(var xe in _)xe!=="key"&&(j[xe]=_[xe])}else j=_;return M&&f(j,typeof c=="function"?c.displayName||c.name||"Unknown":c),p(c,M,j,o(),ge,_e)}function E(c){w(c)?c._store&&(c._store.validated=1):typeof c=="object"&&c!==null&&c.$$typeof===N&&(c._payload.status==="fulfilled"?w(c._payload.value)&&c._payload.value._store&&(c._payload.value._store.validated=1):c._store&&(c._store.validated=1))}function w(c){return typeof c=="object"&&c!==null&&c.$$typeof===B}var b=g,B=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),$=Symbol.for("react.fragment"),W=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),G=Symbol.for("react.consumer"),C=Symbol.for("react.context"),k=Symbol.for("react.forward_ref"),ee=Symbol.for("react.suspense"),ce=Symbol.for("react.suspense_list"),se=Symbol.for("react.memo"),N=Symbol.for("react.lazy"),J=Symbol.for("react.activity"),fe=Symbol.for("react.client.reference"),x=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,R=Object.prototype.hasOwnProperty,I=Array.isArray,Y=console.createTask?console.createTask:function(){return null};b={react_stack_bottom_frame:function(c){return c()}};var Q,X={},de=b.react_stack_bottom_frame.bind(b,i)(),ye=Y(n(i)),me={};pe.Fragment=$,pe.jsx=function(c,_,j){var L=1e4>x.recentlyCreatedOwnerStacks++;return T(c,_,j,!1,L?Error("react-stack-top-frame"):de,L?Y(n(c)):ye)},pe.jsxs=function(c,_,j){var L=1e4>x.recentlyCreatedOwnerStacks++;return T(c,_,j,!0,L?Error("react-stack-top-frame"):de,L?Y(n(c)):ye)}})()),pe}var at;function Wt(){return at||(at=1,process.env.NODE_ENV==="production"?Ce.exports=Bt():Ce.exports=$t()),Ce.exports}var F=Wt(),Oe=e=>e.type==="checkbox",ve=e=>e instanceof Date,K=e=>e==null;const _t=e=>typeof e=="object";var z=e=>!K(e)&&!Array.isArray(e)&&_t(e)&&!ve(e),Yt=e=>z(e)&&e.target?Oe(e.target)?e.target.checked:e.target.value:e,qt=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,zt=(e,r)=>e.has(qt(r)),Ht=e=>{const r=e.constructor&&e.constructor.prototype;return z(r)&&r.hasOwnProperty("isPrototypeOf")},qe=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function H(e){if(e instanceof Date)return new Date(e);const r=typeof FileList<"u"&&e instanceof FileList;if(qe&&(e instanceof Blob||r))return e;const t=Array.isArray(e);if(!t&&!(z(e)&&Ht(e)))return e;const n=t?[]:Object.create(Object.getPrototypeOf(e));for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=H(e[o]));return n}var Ne=e=>/^\w*$/.test(e),U=e=>e===void 0,ze=e=>Array.isArray(e)?e.filter(Boolean):[],He=e=>ze(e.replace(/["|']|\]/g,"").split(/\.|\[/)),h=(e,r,t)=>{if(!r||!z(e))return t;const n=(Ne(r)?[r]:He(r)).reduce((o,i)=>K(o)?o:o[i],e);return U(n)||n===e?U(e[r])?t:e[r]:n},ue=e=>typeof e=="boolean",ne=e=>typeof e=="function",P=(e,r,t)=>{let n=-1;const o=Ne(r)?[r]:He(r),i=o.length,l=i-1;for(;++n<i;){const f=o[n];let A=t;if(n!==l){const p=e[f];A=z(p)||Array.isArray(p)?p:isNaN(+o[n+1])?{}:[]}if(f==="__proto__"||f==="constructor"||f==="prototype")return;e[f]=A,e=e[f]}};const ot={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},le={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Je=g.createContext(null);Je.displayName="HookFormContext";const be=()=>g.useContext(Je),Jt=e=>{const{children:r,...t}=e;return g.createElement(Je.Provider,{value:t},r)};var Gt=(e,r,t,n=!0)=>{const o={defaultValues:r._defaultValues};for(const i in e)Object.defineProperty(o,i,{get:()=>{const l=i;return r._proxyFormState[l]!==ie.all&&(r._proxyFormState[l]=!n||ie.all),e[l]}});return o};const xt=typeof window<"u"?g.useLayoutEffect:g.useEffect;var te=e=>typeof e=="string",$e=(e,r,t,n,o)=>te(e)?(n&&r.watch.add(e),h(t,e,o)):Array.isArray(e)?e.map(i=>(n&&r.watch.add(i),h(t,i))):(n&&(r.watchAll=!0),t),We=e=>K(e)||!_t(e);function ae(e,r,t=new WeakSet){if(We(e)||We(r))return Object.is(e,r);if(ve(e)&&ve(r))return e.getTime()===r.getTime();const n=Object.keys(e),o=Object.keys(r);if(n.length!==o.length)return!1;if(t.has(e)||t.has(r))return!0;t.add(e),t.add(r);for(const i of n){const l=e[i];if(!o.includes(i))return!1;if(i!=="ref"){const f=r[i];if(ve(l)&&ve(f)||z(l)&&z(f)||Array.isArray(l)&&Array.isArray(f)?!ae(l,f,t):!Object.is(l,f))return!1}}return!0}function Et(e){const r=be(),{control:t=r.control,name:n,defaultValue:o,disabled:i,exact:l,compute:f}=e||{},A=g.useRef(o),p=g.useRef(f),T=g.useRef(void 0),E=g.useRef(t),w=g.useRef(n);p.current=f;const[b,B]=g.useState(()=>{const C=t._getWatch(n,A.current);return p.current?p.current(C):C}),O=g.useCallback(C=>{const k=$e(n,t._names,C||t._formValues,!1,A.current);return p.current?p.current(k):k},[t._formValues,t._names,n]),$=g.useCallback(C=>{if(!i){const k=$e(n,t._names,C||t._formValues,!1,A.current);if(p.current){const ee=p.current(k);ae(ee,T.current)||(B(ee),T.current=ee)}else B(k)}},[t._formValues,t._names,i,n]);xt(()=>((E.current!==t||!ae(w.current,n))&&(E.current=t,w.current=n,$()),t._subscribe({name:n,formState:{values:!0},exact:l,callback:C=>{$(C.values)}})),[t,l,n,$]),g.useEffect(()=>t._removeUnmounted());const W=E.current!==t,V=w.current,G=g.useMemo(()=>{if(i)return null;const C=!W&&!ae(V,n);return W||C?O():null},[i,W,n,V,O]);return G!==null?G:b}var Xt=(e,r,t,n,o)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[n]:o||!0}}:{},Re=e=>Array.isArray(e)?e:[e],ut=()=>{let e=[];return{get observers(){return e},next:o=>{for(const i of e)i.next&&i.next(o)},subscribe:o=>(e.push(o),{unsubscribe:()=>{e=e.filter(i=>i!==o)}}),unsubscribe:()=>{e=[]}}};function Vt(e,r){const t={};for(const n in e)if(e.hasOwnProperty(n)){const o=e[n],i=r[n];if(o&&z(o)&&i){const l=Vt(o,i);z(l)&&(t[n]=l)}else e[n]&&(t[n]=i)}return t}var Z=e=>z(e)&&!Object.keys(e).length,Ge=e=>e.type==="file",je=e=>{if(!qe)return!1;const r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},Ft=e=>e.type==="select-multiple",Xe=e=>e.type==="radio",Zt=e=>Xe(e)||Oe(e),Be=e=>je(e)&&e.isConnected;function Qt(e,r){const t=r.slice(0,-1).length;let n=0;for(;n<t;)e=U(e)?n++:e[r[n++]];return e}function Kt(e){for(const r in e)if(e.hasOwnProperty(r)&&!U(e[r]))return!1;return!0}function q(e,r){const t=Array.isArray(r)?r:Ne(r)?[r]:He(r),n=t.length===1?e:Qt(e,t),o=t.length-1,i=t[o];return n&&delete n[i],o!==0&&(z(n)&&Z(n)||Array.isArray(n)&&Kt(n))&&q(e,t.slice(0,-1)),e}var er=e=>{for(const r in e)if(ne(e[r]))return!0;return!1};function At(e){return Array.isArray(e)||z(e)&&!er(e)}function Ye(e,r={}){for(const t in e){const n=e[t];At(n)?(r[t]=Array.isArray(n)?[]:{},Ye(n,r[t])):U(n)||(r[t]=!0)}return r}function Ve(e,r,t){t||(t=Ye(r));for(const n in e){const o=e[n];if(At(o))U(r)||We(t[n])?t[n]=Ye(o,Array.isArray(o)?[]:{}):Ve(o,K(r)?{}:r[n],t[n]);else{const i=r[n];t[n]=!ae(o,i)}}return t}const lt={value:!1,isValid:!1},ct={value:!0,isValid:!0};var pt=e=>{if(Array.isArray(e)){if(e.length>1){const r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!U(e[0].attributes.value)?U(e[0].value)||e[0].value===""?ct:{value:e[0].value,isValid:!0}:ct:lt}return lt},wt=(e,{valueAsNumber:r,valueAsDate:t,setValueAs:n})=>U(e)?e:r?e===""?NaN:e&&+e:t&&te(e)?new Date(e):n?n(e):e;const ft={isValid:!1,value:null};var Rt=e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,ft):ft;function dt(e){const r=e.ref;return Ge(r)?r.files:Xe(r)?Rt(e.refs).value:Ft(r)?[...r.selectedOptions].map(({value:t})=>t):Oe(r)?pt(e.refs).value:wt(U(r.value)?e.ref.value:r.value,e)}var tr=(e,r,t,n)=>{const o={};for(const i of e){const l=h(r,i);l&&P(o,i,l._f)}return{criteriaMode:t,names:[...e],fields:o,shouldUseNativeValidation:n}},Pe=e=>e instanceof RegExp,we=e=>U(e)?e:Pe(e)?e.source:z(e)?Pe(e.value)?e.value.source:e.value:e,yt=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const mt="AsyncFunction";var rr=e=>!!e&&!!e.validate&&!!(ne(e.validate)&&e.validate.constructor.name===mt||z(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===mt)),sr=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),ht=(e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(n=>e.startsWith(n)&&/^\.\w+/.test(e.slice(n.length))));const ke=(e,r,t,n)=>{for(const o of t||Object.keys(e)){const i=h(e,o);if(i){const{_f:l,...f}=i;if(l){if(l.refs&&l.refs[0]&&r(l.refs[0],o)&&!n)return!0;if(l.ref&&r(l.ref,l.name)&&!n)return!0;if(ke(f,r))break}else if(z(f)&&ke(f,r))break}}};function vt(e,r,t){const n=h(e,t);if(n||Ne(t))return{error:n,name:t};const o=t.split(".");for(;o.length;){const i=o.join("."),l=h(r,i),f=h(e,i);if(l&&!Array.isArray(l)&&t!==i)return{name:t};if(f&&f.type)return{name:i,error:f};if(f&&f.root&&f.root.type)return{name:`${i}.root`,error:f.root};o.pop()}return{name:t}}var nr=(e,r,t,n)=>{t(e);const{name:o,...i}=e;return Z(i)||Object.keys(i).length>=Object.keys(r).length||Object.keys(i).find(l=>r[l]===(!n||ie.all))},ir=(e,r,t)=>!e||!r||e===r||Re(e).some(n=>n&&(t?n===r:n.startsWith(r)||r.startsWith(n))),ar=(e,r,t,n,o)=>o.isOnAll?!1:!t&&o.isOnTouch?!(r||e):(t?n.isOnBlur:o.isOnBlur)?!e:(t?n.isOnChange:o.isOnChange)?e:!0,or=(e,r)=>!ze(h(e,r)).length&&q(e,r),ur=(e,r,t)=>{const n=Re(h(e,t));return P(n,"root",r[t]),P(e,t,n),e};function bt(e,r,t="validate"){if(te(e)||Array.isArray(e)&&e.every(te)||ue(e)&&!e)return{type:t,message:te(e)?e:"",ref:r}}var Ee=e=>z(e)&&!Pe(e)?e:{value:e,message:""},gt=async(e,r,t,n,o,i)=>{const{ref:l,refs:f,required:A,maxLength:p,minLength:T,min:E,max:w,pattern:b,validate:B,name:O,valueAsNumber:$,mount:W}=e._f,V=h(t,O);if(!W||r.has(O))return{};const G=f?f[0]:l,C=x=>{o&&G.reportValidity&&(G.setCustomValidity(ue(x)?"":x||""),G.reportValidity())},k={},ee=Xe(l),ce=Oe(l),se=ee||ce,N=($||Ge(l))&&U(l.value)&&U(V)||je(l)&&l.value===""||V===""||Array.isArray(V)&&!V.length,J=Xt.bind(null,O,n,k),fe=(x,R,I,Y=le.maxLength,Q=le.minLength)=>{const X=x?R:I;k[O]={type:x?Y:Q,message:X,ref:l,...J(x?Y:Q,X)}};if(i?!Array.isArray(V)||!V.length:A&&(!se&&(N||K(V))||ue(V)&&!V||ce&&!pt(f).isValid||ee&&!Rt(f).isValid)){const{value:x,message:R}=te(A)?{value:!!A,message:A}:Ee(A);if(x&&(k[O]={type:le.required,message:R,ref:G,...J(le.required,R)},!n))return C(R),k}if(!N&&(!K(E)||!K(w))){let x,R;const I=Ee(w),Y=Ee(E);if(!K(V)&&!isNaN(V)){const Q=l.valueAsNumber||V&&+V;K(I.value)||(x=Q>I.value),K(Y.value)||(R=Q<Y.value)}else{const Q=l.valueAsDate||new Date(V),X=me=>new Date(new Date().toDateString()+" "+me),de=l.type=="time",ye=l.type=="week";te(I.value)&&V&&(x=de?X(V)>X(I.value):ye?V>I.value:Q>new Date(I.value)),te(Y.value)&&V&&(R=de?X(V)<X(Y.value):ye?V<Y.value:Q<new Date(Y.value))}if((x||R)&&(fe(!!x,I.message,Y.message,le.max,le.min),!n))return C(k[O].message),k}if((p||T)&&!N&&(te(V)||i&&Array.isArray(V))){const x=Ee(p),R=Ee(T),I=!K(x.value)&&V.length>+x.value,Y=!K(R.value)&&V.length<+R.value;if((I||Y)&&(fe(I,x.message,R.message),!n))return C(k[O].message),k}if(b&&!N&&te(V)){const{value:x,message:R}=Ee(b);if(Pe(x)&&!V.match(x)&&(k[O]={type:le.pattern,message:R,ref:l,...J(le.pattern,R)},!n))return C(R),k}if(B){if(ne(B)){const x=await B(V,t),R=bt(x,G);if(R&&(k[O]={...R,...J(le.validate,R.message)},!n))return C(R.message),k}else if(z(B)){let x={};for(const R in B){if(!Z(x)&&!n)break;const I=bt(await B[R](V,t),G,R);I&&(x={...I,...J(R,I.message)},C(I.message),n&&(k[O]=x))}if(!Z(x)&&(k[O]={ref:G,...x},!n))return k}}return C(!0),k};const lr={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function cr(e={}){let r={...lr,...e},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:ne(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},n={},o=z(r.defaultValues)||z(r.values)?H(r.defaultValues||r.values)||{}:{},i=r.shouldUnregister?{}:H(o),l={action:!1,mount:!1,watch:!1,keepIsValid:!1},f={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},A,p=0;const T={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},E={...T};let w={...E};const b={array:ut(),state:ut()},B=r.criteriaMode===ie.all,O=s=>a=>{clearTimeout(p),p=setTimeout(s,a)},$=async s=>{if(!l.keepIsValid&&!r.disabled&&(E.isValid||w.isValid||s)){let a;r.resolver?(a=Z((await se()).errors),W()):a=await J(n,!0),a!==t.isValid&&b.state.next({isValid:a})}},W=(s,a)=>{!r.disabled&&(E.isValidating||E.validatingFields||w.isValidating||w.validatingFields)&&((s||Array.from(f.mount)).forEach(u=>{u&&(a?P(t.validatingFields,u,a):q(t.validatingFields,u))}),b.state.next({validatingFields:t.validatingFields,isValidating:!Z(t.validatingFields)}))},V=(s,a=[],u,m,y=!0,d=!0)=>{if(m&&u&&!r.disabled){if(l.action=!0,d&&Array.isArray(h(n,s))){const v=u(h(n,s),m.argA,m.argB);y&&P(n,s,v)}if(d&&Array.isArray(h(t.errors,s))){const v=u(h(t.errors,s),m.argA,m.argB);y&&P(t.errors,s,v),or(t.errors,s)}if((E.touchedFields||w.touchedFields)&&d&&Array.isArray(h(t.touchedFields,s))){const v=u(h(t.touchedFields,s),m.argA,m.argB);y&&P(t.touchedFields,s,v)}(E.dirtyFields||w.dirtyFields)&&(t.dirtyFields=Ve(o,i)),b.state.next({name:s,isDirty:x(s,a),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else P(i,s,a)},G=(s,a)=>{P(t.errors,s,a),b.state.next({errors:t.errors})},C=s=>{t.errors=s,b.state.next({errors:t.errors,isValid:!1})},k=(s,a,u,m)=>{const y=h(n,s);if(y){const d=h(i,s,U(u)?h(o,s):u);U(d)||m&&m.defaultChecked||a?P(i,s,a?d:dt(y._f)):Y(s,d),l.mount&&!l.action&&$()}},ee=(s,a,u,m,y)=>{let d=!1,v=!1;const S={name:s};if(!r.disabled){if(!u||m){(E.isDirty||w.isDirty)&&(v=t.isDirty,t.isDirty=S.isDirty=x(),d=v!==S.isDirty);const D=ae(h(o,s),a);v=!!h(t.dirtyFields,s),D?q(t.dirtyFields,s):P(t.dirtyFields,s,!0),S.dirtyFields=t.dirtyFields,d=d||(E.dirtyFields||w.dirtyFields)&&v!==!D}if(u){const D=h(t.touchedFields,s);D||(P(t.touchedFields,s,u),S.touchedFields=t.touchedFields,d=d||(E.touchedFields||w.touchedFields)&&D!==u)}d&&y&&b.state.next(S)}return d?S:{}},ce=(s,a,u,m)=>{const y=h(t.errors,s),d=(E.isValid||w.isValid)&&ue(a)&&t.isValid!==a;if(r.delayError&&u?(A=O(()=>G(s,u)),A(r.delayError)):(clearTimeout(p),A=null,u?P(t.errors,s,u):q(t.errors,s)),(u?!ae(y,u):y)||!Z(m)||d){const v={...m,...d&&ue(a)?{isValid:a}:{},errors:t.errors,name:s};t={...t,...v},b.state.next(v)}},se=async s=>(W(s,!0),await r.resolver(i,r.context,tr(s||f.mount,n,r.criteriaMode,r.shouldUseNativeValidation))),N=async s=>{const{errors:a}=await se(s);if(W(s),s)for(const u of s){const m=h(a,u);m?P(t.errors,u,m):q(t.errors,u)}else t.errors=a;return a},J=async(s,a,u={valid:!0})=>{for(const m in s){const y=s[m];if(y){const{_f:d,...v}=y;if(d){const S=f.array.has(d.name),D=y._f&&rr(y._f);D&&E.validatingFields&&W([d.name],!0);const re=await gt(y,f.disabled,i,B,r.shouldUseNativeValidation&&!a,S);if(D&&E.validatingFields&&W([d.name]),re[d.name]&&(u.valid=!1,a))break;!a&&(h(re,d.name)?S?ur(t.errors,re,d.name):P(t.errors,d.name,re[d.name]):q(t.errors,d.name))}!Z(v)&&await J(v,a,u)}}return u.valid},fe=()=>{for(const s of f.unMount){const a=h(n,s);a&&(a._f.refs?a._f.refs.every(u=>!Be(u)):!Be(a._f.ref))&&oe(s)}f.unMount=new Set},x=(s,a)=>!r.disabled&&(s&&a&&P(i,s,a),!ae(c(),o)),R=(s,a,u)=>$e(s,f,{...l.mount?i:U(a)?o:te(s)?{[s]:a}:a},u,a),I=s=>ze(h(l.mount?i:o,s,r.shouldUnregister?h(o,s,[]):[])),Y=(s,a,u={})=>{const m=h(n,s);let y=a;if(m){const d=m._f;d&&(!d.disabled&&P(i,s,wt(a,d)),y=je(d.ref)&&K(a)?"":a,Ft(d.ref)?[...d.ref.options].forEach(v=>v.selected=y.includes(v.value)):d.refs?Oe(d.ref)?d.refs.forEach(v=>{(!v.defaultChecked||!v.disabled)&&(Array.isArray(y)?v.checked=!!y.find(S=>S===v.value):v.checked=y===v.value||!!y)}):d.refs.forEach(v=>v.checked=v.value===y):Ge(d.ref)?d.ref.value="":(d.ref.value=y,d.ref.type||b.state.next({name:s,values:H(i)})))}(u.shouldDirty||u.shouldTouch)&&ee(s,y,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&me(s)},Q=(s,a,u)=>{for(const m in a){if(!a.hasOwnProperty(m))return;const y=a[m],d=s+"."+m,v=h(n,d);(f.array.has(s)||z(y)||v&&!v._f)&&!ve(y)?Q(d,y,u):Y(d,y,u)}},X=(s,a,u={})=>{const m=h(n,s),y=f.array.has(s),d=H(a);P(i,s,d),y?(b.array.next({name:s,values:H(i)}),(E.isDirty||E.dirtyFields||w.isDirty||w.dirtyFields)&&u.shouldDirty&&b.state.next({name:s,dirtyFields:Ve(o,i),isDirty:x(s,d)})):m&&!m._f&&!K(d)?Q(s,d,u):Y(s,d,u),ht(s,f)&&b.state.next({...t,name:s}),b.state.next({name:l.mount?s:void 0,values:H(i)})},de=async s=>{l.mount=!0;const a=s.target;let u=a.name,m=!0;const y=h(n,u),d=D=>{m=Number.isNaN(D)||ve(D)&&isNaN(D.getTime())||ae(D,h(i,u,D))},v=yt(r.mode),S=yt(r.reValidateMode);if(y){let D,re;const De=a.type?dt(y._f):Yt(s),he=s.type===ot.BLUR||s.type===ot.FOCUS_OUT,It=!sr(y._f)&&!r.resolver&&!h(t.errors,u)&&!y._f.deps||ar(he,h(t.touchedFields,u),t.isSubmitted,S,v),Me=ht(u,f,he);P(i,u,De),he?(!a||!a.readOnly)&&(y._f.onBlur&&y._f.onBlur(s),A&&A(0)):y._f.onChange&&y._f.onChange(s);const Ue=ee(u,De,he),Mt=!Z(Ue)||Me;if(!he&&b.state.next({name:u,type:s.type,values:H(i)}),It)return(E.isValid||w.isValid)&&(r.mode==="onBlur"?he&&$():he||$()),Mt&&b.state.next({name:u,...Me?{}:Ue});if(!he&&Me&&b.state.next({...t}),r.resolver){const{errors:rt}=await se([u]);if(W([u]),d(De),m){const Ut=vt(t.errors,n,u),st=vt(rt,n,Ut.name||u);D=st.error,u=st.name,re=Z(rt)}}else W([u],!0),D=(await gt(y,f.disabled,i,B,r.shouldUseNativeValidation))[u],W([u]),d(De),m&&(D?re=!1:(E.isValid||w.isValid)&&(re=await J(n,!0)));m&&(y._f.deps&&(!Array.isArray(y._f.deps)||y._f.deps.length>0)&&me(y._f.deps),ce(u,re,D,Ue))}},ye=(s,a)=>{if(h(t.errors,a)&&s.focus)return s.focus(),1},me=async(s,a={})=>{let u,m;const y=Re(s);if(r.resolver){const d=await N(U(s)?s:y);u=Z(d),m=s?!y.some(v=>h(d,v)):u}else s?(m=(await Promise.all(y.map(async d=>{const v=h(n,d);return await J(v&&v._f?{[d]:v}:v)}))).every(Boolean),!(!m&&!t.isValid)&&$()):m=u=await J(n);return b.state.next({...!te(s)||(E.isValid||w.isValid)&&u!==t.isValid?{}:{name:s},...r.resolver||!s?{isValid:u}:{},errors:t.errors}),a.shouldFocus&&!m&&ke(n,ye,s?y:f.mount),m},c=(s,a)=>{let u={...l.mount?i:o};return a&&(u=Vt(a.dirtyFields?t.dirtyFields:t.touchedFields,u)),U(s)?u:te(s)?h(u,s):s.map(m=>h(u,m))},_=(s,a)=>({invalid:!!h((a||t).errors,s),isDirty:!!h((a||t).dirtyFields,s),error:h((a||t).errors,s),isValidating:!!h(t.validatingFields,s),isTouched:!!h((a||t).touchedFields,s)}),j=s=>{s&&Re(s).forEach(a=>q(t.errors,a)),b.state.next({errors:s?t.errors:{}})},L=(s,a,u)=>{const m=(h(n,s,{_f:{}})._f||{}).ref,y=h(t.errors,s)||{},{ref:d,message:v,type:S,...D}=y;P(t.errors,s,{...D,...a,ref:m}),b.state.next({name:s,errors:t.errors,isValid:!1}),u&&u.shouldFocus&&m&&m.focus&&m.focus()},ge=(s,a)=>ne(s)?b.state.subscribe({next:u=>"values"in u&&s(R(void 0,a),u)}):R(s,a,!0),_e=s=>b.state.subscribe({next:a=>{ir(s.name,a.name,s.exact)&&nr(a,s.formState||E,Lt,s.reRenderRoot)&&s.callback({values:{...i},...t,...a,defaultValues:o})}}).unsubscribe,M=s=>(l.mount=!0,w={...w,...s.formState},_e({...s,formState:{...T,...s.formState}})),oe=(s,a={})=>{for(const u of s?Re(s):f.mount)f.mount.delete(u),f.array.delete(u),a.keepValue||(q(n,u),q(i,u)),!a.keepError&&q(t.errors,u),!a.keepDirty&&q(t.dirtyFields,u),!a.keepTouched&&q(t.touchedFields,u),!a.keepIsValidating&&q(t.validatingFields,u),!r.shouldUnregister&&!a.keepDefaultValue&&q(o,u);b.state.next({values:H(i)}),b.state.next({...t,...a.keepDirty?{isDirty:x()}:{}}),!a.keepIsValid&&$()},xe=({disabled:s,name:a})=>{(ue(s)&&l.mount||s||f.disabled.has(a))&&(s?f.disabled.add(a):f.disabled.delete(a))},Fe=(s,a={})=>{let u=h(n,s);const m=ue(a.disabled)||ue(r.disabled);return P(n,s,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:s}},name:s,mount:!0,...a}}),f.mount.add(s),u?xe({disabled:ue(a.disabled)?a.disabled:r.disabled,name:s}):k(s,!0,a.value),{...m?{disabled:a.disabled||r.disabled}:{},...r.progressive?{required:!!a.required,min:we(a.min),max:we(a.max),minLength:we(a.minLength),maxLength:we(a.maxLength),pattern:we(a.pattern)}:{},name:s,onChange:de,onBlur:de,ref:y=>{if(y){Fe(s,a),u=h(n,s);const d=U(y.value)&&y.querySelectorAll&&y.querySelectorAll("input,select,textarea")[0]||y,v=Zt(d),S=u._f.refs||[];if(v?S.find(D=>D===d):d===u._f.ref)return;P(n,s,{_f:{...u._f,...v?{refs:[...S.filter(Be),d,...Array.isArray(h(o,s))?[{}]:[]],ref:{type:d.type,name:s}}:{ref:d}}}),k(s,!1,void 0,d)}else u=h(n,s,{}),u._f&&(u._f.mount=!1),(r.shouldUnregister||a.shouldUnregister)&&!(zt(f.array,s)&&l.action)&&f.unMount.add(s)}}},Ie=()=>r.shouldFocusError&&ke(n,ye,f.mount),jt=s=>{ue(s)&&(b.state.next({disabled:s}),ke(n,(a,u)=>{const m=h(n,u);m&&(a.disabled=m._f.disabled||s,Array.isArray(m._f.refs)&&m._f.refs.forEach(y=>{y.disabled=m._f.disabled||s}))},0,!1))},Qe=(s,a)=>async u=>{let m;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let y=H(i);if(b.state.next({isSubmitting:!0}),r.resolver){const{errors:d,values:v}=await se();W(),t.errors=d,y=H(v)}else await J(n);if(f.disabled.size)for(const d of f.disabled)q(y,d);if(q(t.errors,"root"),Z(t.errors)){b.state.next({errors:{}});try{await s(y,u)}catch(d){m=d}}else a&&await a({...t.errors},u),Ie(),setTimeout(Ie);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Z(t.errors)&&!m,submitCount:t.submitCount+1,errors:t.errors}),m)throw m},Pt=(s,a={})=>{h(n,s)&&(U(a.defaultValue)?X(s,H(h(o,s))):(X(s,a.defaultValue),P(o,s,H(a.defaultValue))),a.keepTouched||q(t.touchedFields,s),a.keepDirty||(q(t.dirtyFields,s),t.isDirty=a.defaultValue?x(s,H(h(o,s))):x()),a.keepError||(q(t.errors,s),E.isValid&&$()),b.state.next({...t}))},Ke=(s,a={})=>{const u=s?H(s):o,m=H(u),y=Z(s),d=y?o:m;if(a.keepDefaultValues||(o=u),!a.keepValues){if(a.keepDirtyValues){const v=new Set([...f.mount,...Object.keys(Ve(o,i))]);for(const S of Array.from(v))h(t.dirtyFields,S)?P(d,S,h(i,S)):X(S,h(d,S))}else{if(qe&&U(s))for(const v of f.mount){const S=h(n,v);if(S&&S._f){const D=Array.isArray(S._f.refs)?S._f.refs[0]:S._f.ref;if(je(D)){const re=D.closest("form");if(re){re.reset();break}}}}if(a.keepFieldsRef)for(const v of f.mount)X(v,h(d,v));else n={}}i=r.shouldUnregister?a.keepDefaultValues?H(o):{}:H(d),b.array.next({values:{...d}}),b.state.next({values:{...d}})}f={mount:a.keepDirtyValues?f.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},l.mount=!E.isValid||!!a.keepIsValid||!!a.keepDirtyValues||!r.shouldUnregister&&!Z(d),l.watch=!!r.shouldUnregister,l.keepIsValid=!!a.keepIsValid,l.action=!1,a.keepErrors||(t.errors={}),b.state.next({submitCount:a.keepSubmitCount?t.submitCount:0,isDirty:y?!1:a.keepDirty?t.isDirty:!!(a.keepDefaultValues&&!ae(s,o)),isSubmitted:a.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:y?{}:a.keepDirtyValues?a.keepDefaultValues&&i?Ve(o,i):t.dirtyFields:a.keepDefaultValues&&s?Ve(o,s):a.keepDirty?t.dirtyFields:{},touchedFields:a.keepTouched?t.touchedFields:{},errors:a.keepErrors?t.errors:{},isSubmitSuccessful:a.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:o})},et=(s,a)=>Ke(ne(s)?s(i):s,{...r.resetOptions,...a}),Nt=(s,a={})=>{const u=h(n,s),m=u&&u._f;if(m){const y=m.refs?m.refs[0]:m.ref;y.focus&&setTimeout(()=>{y.focus(),a.shouldSelect&&ne(y.select)&&y.select()})}},Lt=s=>{t={...t,...s}},tt={control:{register:Fe,unregister:oe,getFieldState:_,handleSubmit:Qe,setError:L,_subscribe:_e,_runSchema:se,_updateIsValidating:W,_focusError:Ie,_getWatch:R,_getDirty:x,_setValid:$,_setFieldArray:V,_setDisabledField:xe,_setErrors:C,_getFieldArray:I,_reset:Ke,_resetDefaultValues:()=>ne(r.defaultValues)&&r.defaultValues().then(s=>{et(s,r.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:fe,_disableForm:jt,_subjects:b,_proxyFormState:E,get _fields(){return n},get _formValues(){return i},get _state(){return l},set _state(s){l=s},get _defaultValues(){return o},get _names(){return f},set _names(s){f=s},get _formState(){return t},get _options(){return r},set _options(s){r={...r,...s}}},subscribe:M,trigger:me,register:Fe,handleSubmit:Qe,watch:ge,setValue:X,getValues:c,reset:et,resetField:Pt,clearErrors:j,unregister:oe,setError:L,setFocus:Nt,getFieldState:_};return{...tt,formControl:tt}}function fr(e={}){const r=g.useRef(void 0),t=g.useRef(void 0),[n,o]=g.useState({isDirty:!1,isValidating:!1,isLoading:ne(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:ne(e.defaultValues)?void 0:e.defaultValues});if(!r.current)if(e.formControl)r.current={...e.formControl,formState:n},e.defaultValues&&!ne(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:l,...f}=cr(e);r.current={...f,formState:n}}const i=r.current.control;return i._options=e,xt(()=>{const l=i._subscribe({formState:i._proxyFormState,callback:()=>o({...i._formState}),reRenderRoot:!0});return o(f=>({...f,isReady:!0})),i._formState.isReady=!0,l},[i]),g.useEffect(()=>i._disableForm(e.disabled),[i,e.disabled]),g.useEffect(()=>{e.mode&&(i._options.mode=e.mode),e.reValidateMode&&(i._options.reValidateMode=e.reValidateMode)},[i,e.mode,e.reValidateMode]),g.useEffect(()=>{e.errors&&(i._setErrors(e.errors),i._focusError())},[i,e.errors]),g.useEffect(()=>{e.shouldUnregister&&i._subjects.state.next({values:i._getWatch()})},[i,e.shouldUnregister]),g.useEffect(()=>{if(i._proxyFormState.isDirty){const l=i._getDirty();l!==n.isDirty&&i._subjects.state.next({isDirty:l})}},[i,n.isDirty]),g.useEffect(()=>{var l;e.values&&!ae(e.values,t.current)?(i._reset(e.values,{keepFieldsRef:!0,...i._options.resetOptions}),!((l=i._options.resetOptions)===null||l===void 0)&&l.keepIsValid||i._setValid(),t.current=e.values,o(f=>({...f}))):i._resetDefaultValues()},[i,e.values]),g.useEffect(()=>{i._state.mount||(i._setValid(),i._state.mount=!0),i._state.watch&&(i._state.watch=!1,i._subjects.state.next({...i._formState})),i._removeUnmounted()}),r.current.formState=Gt(n,i),r.current}const kt=g.createContext(null),dr=({children:e,layout:r="vertical",uiConfig:t,updateFieldSchema:n})=>{const o=g.useMemo(()=>({layout:r,uiConfig:t,updateFieldSchema:n}),[r,t,n]);return F.jsx(kt.Provider,{value:o,children:e})},St=()=>{const e=g.useContext(kt);if(!e)throw new Error("useAutoFormRenderContext must be used within AutoFormRenderContextProvider");return e},yr=e=>{const{fieldSchema:r}=e,{register:t}=be(),n=t(r.name);return F.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[F.jsx("label",{children:r.label}),F.jsx("input",{type:r.type,...n,readOnly:r.readonly})]})},mr=e=>{const{fieldSchema:r}=e,{register:t}=be(),n=t(r.name),o=r.options;return F.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[F.jsx("label",{children:r.label}),F.jsx("select",{...n,disabled:r.readonly,children:o.map(i=>F.jsx("option",{value:i.value,children:i.label},i.value))})]})};function Tt(e,r){const t={};return e.forEach((n,o)=>{const i=n.split(".");let l=t;i.forEach((f,A)=>{const p=A===i.length-1,T=!isNaN(Number(f));p?l[f]=r[o]:(f in l||(l[f]=T?[]:{}),l=l[f])})}),t}function Ot(e){switch(e){case"array":return[];case"object":default:return null}}function Le(e){return e.replace(/\.\d+\./g,".")}function Dt(e,r){const t=e.split("."),n=[];return t.forEach((o,i)=>{isNaN(Number(o))||n.push({pos:i,value:o})}),r.map(o=>{const l=[...o.split(".")];return n.forEach(({pos:f,value:A})=>{f<=l.length&&l.splice(f,0,A)}),l.join(".")})}function Se(e,r={}){const t={};for(const n of e)if(n.type==="object"){const o=n.fields;t[n.name]=Se(o,r==null?void 0:r[n.name])}else t[n.name]=(r==null?void 0:r[n.name])??n.initialValue??Ot(n.type);return t}function Ze(e){return e.map(r=>{if(["object","array"].includes(r.type)){const t=r.fields;return{...r,readonly:!0,fields:Ze(t)}}return{...r,readonly:!0}})}const hr=g.memo(e=>{const{baseName:r,index:t,fields:n}=e,o=g.useMemo(()=>n.map(i=>({...i,name:`${r}.${t}.${i.name}`})),[r,t,n]);return F.jsxs("div",{children:[F.jsxs("div",{children:["row ",t]}),F.jsx(Te,{schema:o})]})}),vr=e=>{const{fieldSchema:r}=e,{control:t,getValues:n,setValue:o}=be(),l=Et({control:t,name:r.name})??[],f=()=>{const p=n(r.name)||[];o(r.name,[...p,Se(r.fields)])},A=p=>{const E=(n(r.name)||[]).filter((w,b)=>b!==p);o(r.name,E)};return F.jsxs("div",{children:[l.map((p,T)=>F.jsxs("div",{children:[F.jsx(hr,{baseName:r.name,index:T,fields:r.fields}),!r.readonly&&F.jsx("button",{type:"button",onClick:()=>A(T),children:"Remove"})]},T)),!r.readonly&&F.jsx("button",{type:"button",onClick:f,children:"Add Row"})]})},br=g.memo(vr),gr=e=>{const{fieldSchema:r}=e;let t=g.useMemo(()=>r.fields.map(n=>({...n,name:`${r.name}.${n.name}`})),[r.fields]);return F.jsx(Te,{schema:t})},Ct=({fieldSchema:e})=>{var p,T;const t=St().uiConfig,{register:n,control:o}=be(),i=Le(e.name),l=n(e.name),f=(p=t==null?void 0:t.renderersByName)==null?void 0:p[i];if(e.visible===!1)return null;if(f)return F.jsx(f,{fieldSchema:e,control:o,register:l});const A=(T=t==null?void 0:t.renderersByType)==null?void 0:T[e.type];if(A)return F.jsx(A,{fieldSchema:e,control:o,register:l});switch(e.type){case"select":return F.jsx(mr,{fieldSchema:e});case"array":return F.jsx(br,{fieldSchema:e});case"object":return F.jsx(gr,{fieldSchema:e});case"text":case"number":case"checkbox":case"date":case"datetime-local":case"time":return F.jsx(yr,{fieldSchema:e});default:return null}throw new Error(`AutoForm: No renderer found for field "${e.name}" with type "${e.type}". If this is a custom field type, make sure to register a renderer via uiConfig.renderersByType.`)},_r=({fieldSchema:e})=>F.jsx(Ct,{fieldSchema:e}),xr=({fieldSchema:e})=>{const{control:r}=be(),t=St(),n=e.dependsOn??[],o=g.useMemo(()=>Dt(e.name,n),[e.name,n]),i=Et({control:r,name:o}),[l,f]=g.useState(e);return g.useEffect(()=>{if(!n.length)return;let A=!1;return(async()=>{var B;const T=Le(e.name),E=Tt(o,i??[]),w=(B=t==null?void 0:t.updateFieldSchema)==null?void 0:B[T];if(!w)return;const b=await w(e.name,e,E);!A&&b&&f({...e,...b})})(),()=>{A=!0}},[i]),F.jsx(Ct,{fieldSchema:l})},Er=e=>{var t;const{fieldSchema:r}=e;return(t=r.dependsOn)!=null&&t.length?F.jsx(xr,{fieldSchema:r}):F.jsx(_r,{fieldSchema:r})},Vr=e=>{const{fieldSchema:r}=e;return F.jsx(Er,{fieldSchema:r})},Te=g.memo(e=>{const{schema:r}=e;return r.map(t=>F.jsx(Vr,{fieldSchema:t},t.name))});function Fr(e,r){const t=i=>/^\d+$/.test(i),n=e.split(".");let o=r;for(const i of n){if(o==null)return;const l=t(i)?Number(i):i;o=o[l]}return o}const Ar=e=>{const{onDirtyChange:r,onValuesChange:t,onFieldChange:n}=e,{formState:o,watch:i}=be(),l=g.useRef(!0);return g.useEffect(()=>{const f=i((A,{name:p=""})=>{var w;t(A);const T=Le(p),E=Fr(p,A);(w=n==null?void 0:n[T])==null||w.call(n,p,E,A)});return()=>f.unsubscribe()},[i,t]),g.useEffect(()=>{if(l.current){l.current=!1;return}r(o.isDirty)},[o.isDirty,r]),null},pr=({onValuesChange:e,onDirtyChange:r,onFieldChange:t})=>(Ar({onDirtyChange:r,onValuesChange:e,onFieldChange:t}),null),wr=g.forwardRef((e,r)=>{const{schema:t,onSubmit:n,uiConfig:o={renderersByName:{},renderersByType:{}},updateFieldSchema:i={},layout:l="vertical",values:f=()=>({}),hideSubmit:A=!1,onDirtyChange:p=()=>{},onValuesChange:T=()=>{},resolver:E,readonly:w,onFieldChange:b={},loadingComponent:B}=e,O=fr({reValidateMode:"onSubmit",criteriaMode:"all",resolver:E}),$=g.useRef(!1),[W,V]=g.useState(!1),G=O.handleSubmit(n),C=g.useMemo(()=>{let N=t;return w&&(N=Ze(N)),N},[w,t]);g.useEffect(()=>{if(!f)return;let N=!1;return(async()=>{if($.current)return;V(!1);const fe=await f();N||(O.reset(Se(t,fe),{keepErrors:!0,keepDirty:!1,keepTouched:!1}),$.current=!0,V(!0))})(),()=>{N=!0}},[t,f]),g.useImperativeHandle(r,()=>({submit:async()=>{await O.handleSubmit(n)()},reset:N=>{O.reset(N?Se(t,N):void 0)},getValues:()=>O.getValues(),setValue:(N,J)=>{O.setValue(N,J)}}));const k=A||w,ee=g.useMemo(()=>o,[o]),ce=g.useMemo(()=>i,[i]),se=g.useMemo(()=>({layout:l,uiConfig:o,updateFieldSchema:i}),[l,o,i]);return W?F.jsxs(Jt,{...O,children:[F.jsx(pr,{onDirtyChange:p,onValuesChange:T,onFieldChange:b}),F.jsxs(dr,{layout:se.layout,uiConfig:ee,updateFieldSchema:ce,children:[["vertical","horizontal"].includes(l)&&F.jsx("div",{style:{display:"flex",flexDirection:l==="vertical"?"column":"row"},children:F.jsx(Te,{schema:C})}),l==="custom"&&F.jsx(Te,{schema:C}),!k&&F.jsx("button",{style:{marginTop:"1rem"},onClick:G,children:"Submit"})]})]}):F.jsx(F.Fragment,{children:B??F.jsx("div",{style:{padding:"2rem",textAlign:"center",color:"#666",fontSize:"0.9rem"},children:"Loading form..."})})});exports.AutoForm=wr;exports.SchemaRenderer=Te;exports.buildNestedPartialValues=Tt;exports.generateInitialValues=Se;exports.getDefaultValueForField=Ot;exports.makeSchemaReadOnly=Ze;exports.normalizeFieldPath=Le;exports.resolveDependsOnNew=Dt;
22
+ <%s key={someKey} {...props} />`,L,I,oe,I),me[I+L]=!0)}if(I=null,j!==void 0&&(t(j),I=""+j),u(_)&&(t(_.key),I=""+_.key),"key"in _){j={};for(var xe in _)xe!=="key"&&(j[xe]=_[xe])}else j=_;return I&&f(j,typeof c=="function"?c.displayName||c.name||"Unknown":c),w(c,I,j,o(),ge,_e)}function E(c){p(c)?c._store&&(c._store.validated=1):typeof c=="object"&&c!==null&&c.$$typeof===N&&(c._payload.status==="fulfilled"?p(c._payload.value)&&c._payload.value._store&&(c._payload.value._store.validated=1):c._store&&(c._store.validated=1))}function p(c){return typeof c=="object"&&c!==null&&c.$$typeof===B}var b=g,B=Symbol.for("react.transitional.element"),O=Symbol.for("react.portal"),W=Symbol.for("react.fragment"),$=Symbol.for("react.strict_mode"),V=Symbol.for("react.profiler"),G=Symbol.for("react.consumer"),C=Symbol.for("react.context"),k=Symbol.for("react.forward_ref"),ee=Symbol.for("react.suspense"),ce=Symbol.for("react.suspense_list"),se=Symbol.for("react.memo"),N=Symbol.for("react.lazy"),J=Symbol.for("react.activity"),fe=Symbol.for("react.client.reference"),x=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,R=Object.prototype.hasOwnProperty,M=Array.isArray,Y=console.createTask?console.createTask:function(){return null};b={react_stack_bottom_frame:function(c){return c()}};var Q,X={},de=b.react_stack_bottom_frame.bind(b,i)(),ye=Y(n(i)),me={};we.Fragment=W,we.jsx=function(c,_,j){var L=1e4>x.recentlyCreatedOwnerStacks++;return T(c,_,j,!1,L?Error("react-stack-top-frame"):de,L?Y(n(c)):ye)},we.jsxs=function(c,_,j){var L=1e4>x.recentlyCreatedOwnerStacks++;return T(c,_,j,!0,L?Error("react-stack-top-frame"):de,L?Y(n(c)):ye)}})()),we}var at;function $t(){return at||(at=1,process.env.NODE_ENV==="production"?Ce.exports=Bt():Ce.exports=Wt()),Ce.exports}var F=$t(),Oe=e=>e.type==="checkbox",ve=e=>e instanceof Date,K=e=>e==null;const _t=e=>typeof e=="object";var z=e=>!K(e)&&!Array.isArray(e)&&_t(e)&&!ve(e),Yt=e=>z(e)&&e.target?Oe(e.target)?e.target.checked:e.target.value:e,qt=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,zt=(e,r)=>e.has(qt(r)),Ht=e=>{const r=e.constructor&&e.constructor.prototype;return z(r)&&r.hasOwnProperty("isPrototypeOf")},qe=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function H(e){if(e instanceof Date)return new Date(e);const r=typeof FileList<"u"&&e instanceof FileList;if(qe&&(e instanceof Blob||r))return e;const t=Array.isArray(e);if(!t&&!(z(e)&&Ht(e)))return e;const n=t?[]:Object.create(Object.getPrototypeOf(e));for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(n[o]=H(e[o]));return n}var Ne=e=>/^\w*$/.test(e),U=e=>e===void 0,ze=e=>Array.isArray(e)?e.filter(Boolean):[],He=e=>ze(e.replace(/["|']|\]/g,"").split(/\.|\[/)),h=(e,r,t)=>{if(!r||!z(e))return t;const n=(Ne(r)?[r]:He(r)).reduce((o,i)=>K(o)?o:o[i],e);return U(n)||n===e?U(e[r])?t:e[r]:n},le=e=>typeof e=="boolean",ne=e=>typeof e=="function",P=(e,r,t)=>{let n=-1;const o=Ne(r)?[r]:He(r),i=o.length,u=i-1;for(;++n<i;){const f=o[n];let A=t;if(n!==u){const w=e[f];A=z(w)||Array.isArray(w)?w:isNaN(+o[n+1])?{}:[]}if(f==="__proto__"||f==="constructor"||f==="prototype")return;e[f]=A,e=e[f]}};const ot={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ue={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Je=g.createContext(null);Je.displayName="HookFormContext";const be=()=>g.useContext(Je),Jt=e=>{const{children:r,...t}=e;return g.createElement(Je.Provider,{value:t},r)};var Gt=(e,r,t,n=!0)=>{const o={defaultValues:r._defaultValues};for(const i in e)Object.defineProperty(o,i,{get:()=>{const u=i;return r._proxyFormState[u]!==ie.all&&(r._proxyFormState[u]=!n||ie.all),e[u]}});return o};const xt=typeof window<"u"?g.useLayoutEffect:g.useEffect;var te=e=>typeof e=="string",We=(e,r,t,n,o)=>te(e)?(n&&r.watch.add(e),h(t,e,o)):Array.isArray(e)?e.map(i=>(n&&r.watch.add(i),h(t,i))):(n&&(r.watchAll=!0),t),$e=e=>K(e)||!_t(e);function ae(e,r,t=new WeakSet){if($e(e)||$e(r))return Object.is(e,r);if(ve(e)&&ve(r))return e.getTime()===r.getTime();const n=Object.keys(e),o=Object.keys(r);if(n.length!==o.length)return!1;if(t.has(e)||t.has(r))return!0;t.add(e),t.add(r);for(const i of n){const u=e[i];if(!o.includes(i))return!1;if(i!=="ref"){const f=r[i];if(ve(u)&&ve(f)||z(u)&&z(f)||Array.isArray(u)&&Array.isArray(f)?!ae(u,f,t):!Object.is(u,f))return!1}}return!0}function Et(e){const r=be(),{control:t=r.control,name:n,defaultValue:o,disabled:i,exact:u,compute:f}=e||{},A=g.useRef(o),w=g.useRef(f),T=g.useRef(void 0),E=g.useRef(t),p=g.useRef(n);w.current=f;const[b,B]=g.useState(()=>{const C=t._getWatch(n,A.current);return w.current?w.current(C):C}),O=g.useCallback(C=>{const k=We(n,t._names,C||t._formValues,!1,A.current);return w.current?w.current(k):k},[t._formValues,t._names,n]),W=g.useCallback(C=>{if(!i){const k=We(n,t._names,C||t._formValues,!1,A.current);if(w.current){const ee=w.current(k);ae(ee,T.current)||(B(ee),T.current=ee)}else B(k)}},[t._formValues,t._names,i,n]);xt(()=>((E.current!==t||!ae(p.current,n))&&(E.current=t,p.current=n,W()),t._subscribe({name:n,formState:{values:!0},exact:u,callback:C=>{W(C.values)}})),[t,u,n,W]),g.useEffect(()=>t._removeUnmounted());const $=E.current!==t,V=p.current,G=g.useMemo(()=>{if(i)return null;const C=!$&&!ae(V,n);return $||C?O():null},[i,$,n,V,O]);return G!==null?G:b}var Xt=(e,r,t,n,o)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[n]:o||!0}}:{},Re=e=>Array.isArray(e)?e:[e],lt=()=>{let e=[];return{get observers(){return e},next:o=>{for(const i of e)i.next&&i.next(o)},subscribe:o=>(e.push(o),{unsubscribe:()=>{e=e.filter(i=>i!==o)}}),unsubscribe:()=>{e=[]}}};function Vt(e,r){const t={};for(const n in e)if(e.hasOwnProperty(n)){const o=e[n],i=r[n];if(o&&z(o)&&i){const u=Vt(o,i);z(u)&&(t[n]=u)}else e[n]&&(t[n]=i)}return t}var Z=e=>z(e)&&!Object.keys(e).length,Ge=e=>e.type==="file",je=e=>{if(!qe)return!1;const r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},Ft=e=>e.type==="select-multiple",Xe=e=>e.type==="radio",Zt=e=>Xe(e)||Oe(e),Be=e=>je(e)&&e.isConnected;function Qt(e,r){const t=r.slice(0,-1).length;let n=0;for(;n<t;)e=U(e)?n++:e[r[n++]];return e}function Kt(e){for(const r in e)if(e.hasOwnProperty(r)&&!U(e[r]))return!1;return!0}function q(e,r){const t=Array.isArray(r)?r:Ne(r)?[r]:He(r),n=t.length===1?e:Qt(e,t),o=t.length-1,i=t[o];return n&&delete n[i],o!==0&&(z(n)&&Z(n)||Array.isArray(n)&&Kt(n))&&q(e,t.slice(0,-1)),e}var er=e=>{for(const r in e)if(ne(e[r]))return!0;return!1};function At(e){return Array.isArray(e)||z(e)&&!er(e)}function Ye(e,r={}){for(const t in e){const n=e[t];At(n)?(r[t]=Array.isArray(n)?[]:{},Ye(n,r[t])):U(n)||(r[t]=!0)}return r}function Ve(e,r,t){t||(t=Ye(r));for(const n in e){const o=e[n];if(At(o))U(r)||$e(t[n])?t[n]=Ye(o,Array.isArray(o)?[]:{}):Ve(o,K(r)?{}:r[n],t[n]);else{const i=r[n];t[n]=!ae(o,i)}}return t}const ut={value:!1,isValid:!1},ct={value:!0,isValid:!0};var wt=e=>{if(Array.isArray(e)){if(e.length>1){const r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!U(e[0].attributes.value)?U(e[0].value)||e[0].value===""?ct:{value:e[0].value,isValid:!0}:ct:ut}return ut},pt=(e,{valueAsNumber:r,valueAsDate:t,setValueAs:n})=>U(e)?e:r?e===""?NaN:e&&+e:t&&te(e)?new Date(e):n?n(e):e;const ft={isValid:!1,value:null};var Rt=e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,ft):ft;function dt(e){const r=e.ref;return Ge(r)?r.files:Xe(r)?Rt(e.refs).value:Ft(r)?[...r.selectedOptions].map(({value:t})=>t):Oe(r)?wt(e.refs).value:pt(U(r.value)?e.ref.value:r.value,e)}var tr=(e,r,t,n)=>{const o={};for(const i of e){const u=h(r,i);u&&P(o,i,u._f)}return{criteriaMode:t,names:[...e],fields:o,shouldUseNativeValidation:n}},Pe=e=>e instanceof RegExp,pe=e=>U(e)?e:Pe(e)?e.source:z(e)?Pe(e.value)?e.value.source:e.value:e,yt=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const mt="AsyncFunction";var rr=e=>!!e&&!!e.validate&&!!(ne(e.validate)&&e.validate.constructor.name===mt||z(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===mt)),sr=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),ht=(e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(n=>e.startsWith(n)&&/^\.\w+/.test(e.slice(n.length))));const ke=(e,r,t,n)=>{for(const o of t||Object.keys(e)){const i=h(e,o);if(i){const{_f:u,...f}=i;if(u){if(u.refs&&u.refs[0]&&r(u.refs[0],o)&&!n)return!0;if(u.ref&&r(u.ref,u.name)&&!n)return!0;if(ke(f,r))break}else if(z(f)&&ke(f,r))break}}};function vt(e,r,t){const n=h(e,t);if(n||Ne(t))return{error:n,name:t};const o=t.split(".");for(;o.length;){const i=o.join("."),u=h(r,i),f=h(e,i);if(u&&!Array.isArray(u)&&t!==i)return{name:t};if(f&&f.type)return{name:i,error:f};if(f&&f.root&&f.root.type)return{name:`${i}.root`,error:f.root};o.pop()}return{name:t}}var nr=(e,r,t,n)=>{t(e);const{name:o,...i}=e;return Z(i)||Object.keys(i).length>=Object.keys(r).length||Object.keys(i).find(u=>r[u]===(!n||ie.all))},ir=(e,r,t)=>!e||!r||e===r||Re(e).some(n=>n&&(t?n===r:n.startsWith(r)||r.startsWith(n))),ar=(e,r,t,n,o)=>o.isOnAll?!1:!t&&o.isOnTouch?!(r||e):(t?n.isOnBlur:o.isOnBlur)?!e:(t?n.isOnChange:o.isOnChange)?e:!0,or=(e,r)=>!ze(h(e,r)).length&&q(e,r),lr=(e,r,t)=>{const n=Re(h(e,t));return P(n,"root",r[t]),P(e,t,n),e};function bt(e,r,t="validate"){if(te(e)||Array.isArray(e)&&e.every(te)||le(e)&&!e)return{type:t,message:te(e)?e:"",ref:r}}var Ee=e=>z(e)&&!Pe(e)?e:{value:e,message:""},gt=async(e,r,t,n,o,i)=>{const{ref:u,refs:f,required:A,maxLength:w,minLength:T,min:E,max:p,pattern:b,validate:B,name:O,valueAsNumber:W,mount:$}=e._f,V=h(t,O);if(!$||r.has(O))return{};const G=f?f[0]:u,C=x=>{o&&G.reportValidity&&(G.setCustomValidity(le(x)?"":x||""),G.reportValidity())},k={},ee=Xe(u),ce=Oe(u),se=ee||ce,N=(W||Ge(u))&&U(u.value)&&U(V)||je(u)&&u.value===""||V===""||Array.isArray(V)&&!V.length,J=Xt.bind(null,O,n,k),fe=(x,R,M,Y=ue.maxLength,Q=ue.minLength)=>{const X=x?R:M;k[O]={type:x?Y:Q,message:X,ref:u,...J(x?Y:Q,X)}};if(i?!Array.isArray(V)||!V.length:A&&(!se&&(N||K(V))||le(V)&&!V||ce&&!wt(f).isValid||ee&&!Rt(f).isValid)){const{value:x,message:R}=te(A)?{value:!!A,message:A}:Ee(A);if(x&&(k[O]={type:ue.required,message:R,ref:G,...J(ue.required,R)},!n))return C(R),k}if(!N&&(!K(E)||!K(p))){let x,R;const M=Ee(p),Y=Ee(E);if(!K(V)&&!isNaN(V)){const Q=u.valueAsNumber||V&&+V;K(M.value)||(x=Q>M.value),K(Y.value)||(R=Q<Y.value)}else{const Q=u.valueAsDate||new Date(V),X=me=>new Date(new Date().toDateString()+" "+me),de=u.type=="time",ye=u.type=="week";te(M.value)&&V&&(x=de?X(V)>X(M.value):ye?V>M.value:Q>new Date(M.value)),te(Y.value)&&V&&(R=de?X(V)<X(Y.value):ye?V<Y.value:Q<new Date(Y.value))}if((x||R)&&(fe(!!x,M.message,Y.message,ue.max,ue.min),!n))return C(k[O].message),k}if((w||T)&&!N&&(te(V)||i&&Array.isArray(V))){const x=Ee(w),R=Ee(T),M=!K(x.value)&&V.length>+x.value,Y=!K(R.value)&&V.length<+R.value;if((M||Y)&&(fe(M,x.message,R.message),!n))return C(k[O].message),k}if(b&&!N&&te(V)){const{value:x,message:R}=Ee(b);if(Pe(x)&&!V.match(x)&&(k[O]={type:ue.pattern,message:R,ref:u,...J(ue.pattern,R)},!n))return C(R),k}if(B){if(ne(B)){const x=await B(V,t),R=bt(x,G);if(R&&(k[O]={...R,...J(ue.validate,R.message)},!n))return C(R.message),k}else if(z(B)){let x={};for(const R in B){if(!Z(x)&&!n)break;const M=bt(await B[R](V,t),G,R);M&&(x={...M,...J(R,M.message)},C(M.message),n&&(k[O]=x))}if(!Z(x)&&(k[O]={ref:G,...x},!n))return k}}return C(!0),k};const ur={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function cr(e={}){let r={...ur,...e},t={submitCount:0,isDirty:!1,isReady:!1,isLoading:ne(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:r.errors||{},disabled:r.disabled||!1},n={},o=z(r.defaultValues)||z(r.values)?H(r.defaultValues||r.values)||{}:{},i=r.shouldUnregister?{}:H(o),u={action:!1,mount:!1,watch:!1,keepIsValid:!1},f={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},A,w=0;const T={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},E={...T};let p={...E};const b={array:lt(),state:lt()},B=r.criteriaMode===ie.all,O=s=>a=>{clearTimeout(w),w=setTimeout(s,a)},W=async s=>{if(!u.keepIsValid&&!r.disabled&&(E.isValid||p.isValid||s)){let a;r.resolver?(a=Z((await se()).errors),$()):a=await J(n,!0),a!==t.isValid&&b.state.next({isValid:a})}},$=(s,a)=>{!r.disabled&&(E.isValidating||E.validatingFields||p.isValidating||p.validatingFields)&&((s||Array.from(f.mount)).forEach(l=>{l&&(a?P(t.validatingFields,l,a):q(t.validatingFields,l))}),b.state.next({validatingFields:t.validatingFields,isValidating:!Z(t.validatingFields)}))},V=(s,a=[],l,m,y=!0,d=!0)=>{if(m&&l&&!r.disabled){if(u.action=!0,d&&Array.isArray(h(n,s))){const v=l(h(n,s),m.argA,m.argB);y&&P(n,s,v)}if(d&&Array.isArray(h(t.errors,s))){const v=l(h(t.errors,s),m.argA,m.argB);y&&P(t.errors,s,v),or(t.errors,s)}if((E.touchedFields||p.touchedFields)&&d&&Array.isArray(h(t.touchedFields,s))){const v=l(h(t.touchedFields,s),m.argA,m.argB);y&&P(t.touchedFields,s,v)}(E.dirtyFields||p.dirtyFields)&&(t.dirtyFields=Ve(o,i)),b.state.next({name:s,isDirty:x(s,a),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else P(i,s,a)},G=(s,a)=>{P(t.errors,s,a),b.state.next({errors:t.errors})},C=s=>{t.errors=s,b.state.next({errors:t.errors,isValid:!1})},k=(s,a,l,m)=>{const y=h(n,s);if(y){const d=h(i,s,U(l)?h(o,s):l);U(d)||m&&m.defaultChecked||a?P(i,s,a?d:dt(y._f)):Y(s,d),u.mount&&!u.action&&W()}},ee=(s,a,l,m,y)=>{let d=!1,v=!1;const S={name:s};if(!r.disabled){if(!l||m){(E.isDirty||p.isDirty)&&(v=t.isDirty,t.isDirty=S.isDirty=x(),d=v!==S.isDirty);const D=ae(h(o,s),a);v=!!h(t.dirtyFields,s),D?q(t.dirtyFields,s):P(t.dirtyFields,s,!0),S.dirtyFields=t.dirtyFields,d=d||(E.dirtyFields||p.dirtyFields)&&v!==!D}if(l){const D=h(t.touchedFields,s);D||(P(t.touchedFields,s,l),S.touchedFields=t.touchedFields,d=d||(E.touchedFields||p.touchedFields)&&D!==l)}d&&y&&b.state.next(S)}return d?S:{}},ce=(s,a,l,m)=>{const y=h(t.errors,s),d=(E.isValid||p.isValid)&&le(a)&&t.isValid!==a;if(r.delayError&&l?(A=O(()=>G(s,l)),A(r.delayError)):(clearTimeout(w),A=null,l?P(t.errors,s,l):q(t.errors,s)),(l?!ae(y,l):y)||!Z(m)||d){const v={...m,...d&&le(a)?{isValid:a}:{},errors:t.errors,name:s};t={...t,...v},b.state.next(v)}},se=async s=>($(s,!0),await r.resolver(i,r.context,tr(s||f.mount,n,r.criteriaMode,r.shouldUseNativeValidation))),N=async s=>{const{errors:a}=await se(s);if($(s),s)for(const l of s){const m=h(a,l);m?P(t.errors,l,m):q(t.errors,l)}else t.errors=a;return a},J=async(s,a,l={valid:!0})=>{for(const m in s){const y=s[m];if(y){const{_f:d,...v}=y;if(d){const S=f.array.has(d.name),D=y._f&&rr(y._f);D&&E.validatingFields&&$([d.name],!0);const re=await gt(y,f.disabled,i,B,r.shouldUseNativeValidation&&!a,S);if(D&&E.validatingFields&&$([d.name]),re[d.name]&&(l.valid=!1,a))break;!a&&(h(re,d.name)?S?lr(t.errors,re,d.name):P(t.errors,d.name,re[d.name]):q(t.errors,d.name))}!Z(v)&&await J(v,a,l)}}return l.valid},fe=()=>{for(const s of f.unMount){const a=h(n,s);a&&(a._f.refs?a._f.refs.every(l=>!Be(l)):!Be(a._f.ref))&&oe(s)}f.unMount=new Set},x=(s,a)=>!r.disabled&&(s&&a&&P(i,s,a),!ae(c(),o)),R=(s,a,l)=>We(s,f,{...u.mount?i:U(a)?o:te(s)?{[s]:a}:a},l,a),M=s=>ze(h(u.mount?i:o,s,r.shouldUnregister?h(o,s,[]):[])),Y=(s,a,l={})=>{const m=h(n,s);let y=a;if(m){const d=m._f;d&&(!d.disabled&&P(i,s,pt(a,d)),y=je(d.ref)&&K(a)?"":a,Ft(d.ref)?[...d.ref.options].forEach(v=>v.selected=y.includes(v.value)):d.refs?Oe(d.ref)?d.refs.forEach(v=>{(!v.defaultChecked||!v.disabled)&&(Array.isArray(y)?v.checked=!!y.find(S=>S===v.value):v.checked=y===v.value||!!y)}):d.refs.forEach(v=>v.checked=v.value===y):Ge(d.ref)?d.ref.value="":(d.ref.value=y,d.ref.type||b.state.next({name:s,values:H(i)})))}(l.shouldDirty||l.shouldTouch)&&ee(s,y,l.shouldTouch,l.shouldDirty,!0),l.shouldValidate&&me(s)},Q=(s,a,l)=>{for(const m in a){if(!a.hasOwnProperty(m))return;const y=a[m],d=s+"."+m,v=h(n,d);(f.array.has(s)||z(y)||v&&!v._f)&&!ve(y)?Q(d,y,l):Y(d,y,l)}},X=(s,a,l={})=>{const m=h(n,s),y=f.array.has(s),d=H(a);P(i,s,d),y?(b.array.next({name:s,values:H(i)}),(E.isDirty||E.dirtyFields||p.isDirty||p.dirtyFields)&&l.shouldDirty&&b.state.next({name:s,dirtyFields:Ve(o,i),isDirty:x(s,d)})):m&&!m._f&&!K(d)?Q(s,d,l):Y(s,d,l),ht(s,f)&&b.state.next({...t,name:s}),b.state.next({name:u.mount?s:void 0,values:H(i)})},de=async s=>{u.mount=!0;const a=s.target;let l=a.name,m=!0;const y=h(n,l),d=D=>{m=Number.isNaN(D)||ve(D)&&isNaN(D.getTime())||ae(D,h(i,l,D))},v=yt(r.mode),S=yt(r.reValidateMode);if(y){let D,re;const De=a.type?dt(y._f):Yt(s),he=s.type===ot.BLUR||s.type===ot.FOCUS_OUT,Mt=!sr(y._f)&&!r.resolver&&!h(t.errors,l)&&!y._f.deps||ar(he,h(t.touchedFields,l),t.isSubmitted,S,v),Ie=ht(l,f,he);P(i,l,De),he?(!a||!a.readOnly)&&(y._f.onBlur&&y._f.onBlur(s),A&&A(0)):y._f.onChange&&y._f.onChange(s);const Ue=ee(l,De,he),It=!Z(Ue)||Ie;if(!he&&b.state.next({name:l,type:s.type,values:H(i)}),Mt)return(E.isValid||p.isValid)&&(r.mode==="onBlur"?he&&W():he||W()),It&&b.state.next({name:l,...Ie?{}:Ue});if(!he&&Ie&&b.state.next({...t}),r.resolver){const{errors:rt}=await se([l]);if($([l]),d(De),m){const Ut=vt(t.errors,n,l),st=vt(rt,n,Ut.name||l);D=st.error,l=st.name,re=Z(rt)}}else $([l],!0),D=(await gt(y,f.disabled,i,B,r.shouldUseNativeValidation))[l],$([l]),d(De),m&&(D?re=!1:(E.isValid||p.isValid)&&(re=await J(n,!0)));m&&(y._f.deps&&(!Array.isArray(y._f.deps)||y._f.deps.length>0)&&me(y._f.deps),ce(l,re,D,Ue))}},ye=(s,a)=>{if(h(t.errors,a)&&s.focus)return s.focus(),1},me=async(s,a={})=>{let l,m;const y=Re(s);if(r.resolver){const d=await N(U(s)?s:y);l=Z(d),m=s?!y.some(v=>h(d,v)):l}else s?(m=(await Promise.all(y.map(async d=>{const v=h(n,d);return await J(v&&v._f?{[d]:v}:v)}))).every(Boolean),!(!m&&!t.isValid)&&W()):m=l=await J(n);return b.state.next({...!te(s)||(E.isValid||p.isValid)&&l!==t.isValid?{}:{name:s},...r.resolver||!s?{isValid:l}:{},errors:t.errors}),a.shouldFocus&&!m&&ke(n,ye,s?y:f.mount),m},c=(s,a)=>{let l={...u.mount?i:o};return a&&(l=Vt(a.dirtyFields?t.dirtyFields:t.touchedFields,l)),U(s)?l:te(s)?h(l,s):s.map(m=>h(l,m))},_=(s,a)=>({invalid:!!h((a||t).errors,s),isDirty:!!h((a||t).dirtyFields,s),error:h((a||t).errors,s),isValidating:!!h(t.validatingFields,s),isTouched:!!h((a||t).touchedFields,s)}),j=s=>{s&&Re(s).forEach(a=>q(t.errors,a)),b.state.next({errors:s?t.errors:{}})},L=(s,a,l)=>{const m=(h(n,s,{_f:{}})._f||{}).ref,y=h(t.errors,s)||{},{ref:d,message:v,type:S,...D}=y;P(t.errors,s,{...D,...a,ref:m}),b.state.next({name:s,errors:t.errors,isValid:!1}),l&&l.shouldFocus&&m&&m.focus&&m.focus()},ge=(s,a)=>ne(s)?b.state.subscribe({next:l=>"values"in l&&s(R(void 0,a),l)}):R(s,a,!0),_e=s=>b.state.subscribe({next:a=>{ir(s.name,a.name,s.exact)&&nr(a,s.formState||E,Lt,s.reRenderRoot)&&s.callback({values:{...i},...t,...a,defaultValues:o})}}).unsubscribe,I=s=>(u.mount=!0,p={...p,...s.formState},_e({...s,formState:{...T,...s.formState}})),oe=(s,a={})=>{for(const l of s?Re(s):f.mount)f.mount.delete(l),f.array.delete(l),a.keepValue||(q(n,l),q(i,l)),!a.keepError&&q(t.errors,l),!a.keepDirty&&q(t.dirtyFields,l),!a.keepTouched&&q(t.touchedFields,l),!a.keepIsValidating&&q(t.validatingFields,l),!r.shouldUnregister&&!a.keepDefaultValue&&q(o,l);b.state.next({values:H(i)}),b.state.next({...t,...a.keepDirty?{isDirty:x()}:{}}),!a.keepIsValid&&W()},xe=({disabled:s,name:a})=>{(le(s)&&u.mount||s||f.disabled.has(a))&&(s?f.disabled.add(a):f.disabled.delete(a))},Fe=(s,a={})=>{let l=h(n,s);const m=le(a.disabled)||le(r.disabled);return P(n,s,{...l||{},_f:{...l&&l._f?l._f:{ref:{name:s}},name:s,mount:!0,...a}}),f.mount.add(s),l?xe({disabled:le(a.disabled)?a.disabled:r.disabled,name:s}):k(s,!0,a.value),{...m?{disabled:a.disabled||r.disabled}:{},...r.progressive?{required:!!a.required,min:pe(a.min),max:pe(a.max),minLength:pe(a.minLength),maxLength:pe(a.maxLength),pattern:pe(a.pattern)}:{},name:s,onChange:de,onBlur:de,ref:y=>{if(y){Fe(s,a),l=h(n,s);const d=U(y.value)&&y.querySelectorAll&&y.querySelectorAll("input,select,textarea")[0]||y,v=Zt(d),S=l._f.refs||[];if(v?S.find(D=>D===d):d===l._f.ref)return;P(n,s,{_f:{...l._f,...v?{refs:[...S.filter(Be),d,...Array.isArray(h(o,s))?[{}]:[]],ref:{type:d.type,name:s}}:{ref:d}}}),k(s,!1,void 0,d)}else l=h(n,s,{}),l._f&&(l._f.mount=!1),(r.shouldUnregister||a.shouldUnregister)&&!(zt(f.array,s)&&u.action)&&f.unMount.add(s)}}},Me=()=>r.shouldFocusError&&ke(n,ye,f.mount),jt=s=>{le(s)&&(b.state.next({disabled:s}),ke(n,(a,l)=>{const m=h(n,l);m&&(a.disabled=m._f.disabled||s,Array.isArray(m._f.refs)&&m._f.refs.forEach(y=>{y.disabled=m._f.disabled||s}))},0,!1))},Qe=(s,a)=>async l=>{let m;l&&(l.preventDefault&&l.preventDefault(),l.persist&&l.persist());let y=H(i);if(b.state.next({isSubmitting:!0}),r.resolver){const{errors:d,values:v}=await se();$(),t.errors=d,y=H(v)}else await J(n);if(f.disabled.size)for(const d of f.disabled)q(y,d);if(q(t.errors,"root"),Z(t.errors)){b.state.next({errors:{}});try{await s(y,l)}catch(d){m=d}}else a&&await a({...t.errors},l),Me(),setTimeout(Me);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Z(t.errors)&&!m,submitCount:t.submitCount+1,errors:t.errors}),m)throw m},Pt=(s,a={})=>{h(n,s)&&(U(a.defaultValue)?X(s,H(h(o,s))):(X(s,a.defaultValue),P(o,s,H(a.defaultValue))),a.keepTouched||q(t.touchedFields,s),a.keepDirty||(q(t.dirtyFields,s),t.isDirty=a.defaultValue?x(s,H(h(o,s))):x()),a.keepError||(q(t.errors,s),E.isValid&&W()),b.state.next({...t}))},Ke=(s,a={})=>{const l=s?H(s):o,m=H(l),y=Z(s),d=y?o:m;if(a.keepDefaultValues||(o=l),!a.keepValues){if(a.keepDirtyValues){const v=new Set([...f.mount,...Object.keys(Ve(o,i))]);for(const S of Array.from(v))h(t.dirtyFields,S)?P(d,S,h(i,S)):X(S,h(d,S))}else{if(qe&&U(s))for(const v of f.mount){const S=h(n,v);if(S&&S._f){const D=Array.isArray(S._f.refs)?S._f.refs[0]:S._f.ref;if(je(D)){const re=D.closest("form");if(re){re.reset();break}}}}if(a.keepFieldsRef)for(const v of f.mount)X(v,h(d,v));else n={}}i=r.shouldUnregister?a.keepDefaultValues?H(o):{}:H(d),b.array.next({values:{...d}}),b.state.next({values:{...d}})}f={mount:a.keepDirtyValues?f.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},u.mount=!E.isValid||!!a.keepIsValid||!!a.keepDirtyValues||!r.shouldUnregister&&!Z(d),u.watch=!!r.shouldUnregister,u.keepIsValid=!!a.keepIsValid,u.action=!1,a.keepErrors||(t.errors={}),b.state.next({submitCount:a.keepSubmitCount?t.submitCount:0,isDirty:y?!1:a.keepDirty?t.isDirty:!!(a.keepDefaultValues&&!ae(s,o)),isSubmitted:a.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:y?{}:a.keepDirtyValues?a.keepDefaultValues&&i?Ve(o,i):t.dirtyFields:a.keepDefaultValues&&s?Ve(o,s):a.keepDirty?t.dirtyFields:{},touchedFields:a.keepTouched?t.touchedFields:{},errors:a.keepErrors?t.errors:{},isSubmitSuccessful:a.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:o})},et=(s,a)=>Ke(ne(s)?s(i):s,{...r.resetOptions,...a}),Nt=(s,a={})=>{const l=h(n,s),m=l&&l._f;if(m){const y=m.refs?m.refs[0]:m.ref;y.focus&&setTimeout(()=>{y.focus(),a.shouldSelect&&ne(y.select)&&y.select()})}},Lt=s=>{t={...t,...s}},tt={control:{register:Fe,unregister:oe,getFieldState:_,handleSubmit:Qe,setError:L,_subscribe:_e,_runSchema:se,_updateIsValidating:$,_focusError:Me,_getWatch:R,_getDirty:x,_setValid:W,_setFieldArray:V,_setDisabledField:xe,_setErrors:C,_getFieldArray:M,_reset:Ke,_resetDefaultValues:()=>ne(r.defaultValues)&&r.defaultValues().then(s=>{et(s,r.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:fe,_disableForm:jt,_subjects:b,_proxyFormState:E,get _fields(){return n},get _formValues(){return i},get _state(){return u},set _state(s){u=s},get _defaultValues(){return o},get _names(){return f},set _names(s){f=s},get _formState(){return t},get _options(){return r},set _options(s){r={...r,...s}}},subscribe:I,trigger:me,register:Fe,handleSubmit:Qe,watch:ge,setValue:X,getValues:c,reset:et,resetField:Pt,clearErrors:j,unregister:oe,setError:L,setFocus:Nt,getFieldState:_};return{...tt,formControl:tt}}function fr(e={}){const r=g.useRef(void 0),t=g.useRef(void 0),[n,o]=g.useState({isDirty:!1,isValidating:!1,isLoading:ne(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:ne(e.defaultValues)?void 0:e.defaultValues});if(!r.current)if(e.formControl)r.current={...e.formControl,formState:n},e.defaultValues&&!ne(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:u,...f}=cr(e);r.current={...f,formState:n}}const i=r.current.control;return i._options=e,xt(()=>{const u=i._subscribe({formState:i._proxyFormState,callback:()=>o({...i._formState}),reRenderRoot:!0});return o(f=>({...f,isReady:!0})),i._formState.isReady=!0,u},[i]),g.useEffect(()=>i._disableForm(e.disabled),[i,e.disabled]),g.useEffect(()=>{e.mode&&(i._options.mode=e.mode),e.reValidateMode&&(i._options.reValidateMode=e.reValidateMode)},[i,e.mode,e.reValidateMode]),g.useEffect(()=>{e.errors&&(i._setErrors(e.errors),i._focusError())},[i,e.errors]),g.useEffect(()=>{e.shouldUnregister&&i._subjects.state.next({values:i._getWatch()})},[i,e.shouldUnregister]),g.useEffect(()=>{if(i._proxyFormState.isDirty){const u=i._getDirty();u!==n.isDirty&&i._subjects.state.next({isDirty:u})}},[i,n.isDirty]),g.useEffect(()=>{var u;e.values&&!ae(e.values,t.current)?(i._reset(e.values,{keepFieldsRef:!0,...i._options.resetOptions}),!((u=i._options.resetOptions)===null||u===void 0)&&u.keepIsValid||i._setValid(),t.current=e.values,o(f=>({...f}))):i._resetDefaultValues()},[i,e.values]),g.useEffect(()=>{i._state.mount||(i._setValid(),i._state.mount=!0),i._state.watch&&(i._state.watch=!1,i._subjects.state.next({...i._formState})),i._removeUnmounted()}),r.current.formState=Gt(n,i),r.current}const kt=g.createContext(null),dr=({children:e,layout:r="vertical",uiConfig:t,updateFieldSchema:n})=>{const o=g.useMemo(()=>({layout:r,uiConfig:t,updateFieldSchema:n}),[r,t,n]);return F.jsx(kt.Provider,{value:o,children:e})},St=()=>{const e=g.useContext(kt);if(!e)throw new Error("useAutoFormRenderContext must be used within AutoFormRenderContextProvider");return e},yr=e=>{const{fieldSchema:r}=e,{register:t}=be(),n=t(r.name);return F.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[F.jsx("label",{children:r.label}),F.jsx("input",{type:r.type,...n,readOnly:r.readonly})]})},mr=e=>{const{fieldSchema:r}=e,{register:t}=be(),n=t(r.name),o=r.options;return F.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[F.jsx("label",{children:r.label}),F.jsx("select",{...n,disabled:r.readonly,children:o.map(i=>F.jsx("option",{value:i.value,children:i.label},i.value))})]})};function Tt(e,r){const t={};return e.forEach((n,o)=>{const i=n.split(".");let u=t;i.forEach((f,A)=>{const w=A===i.length-1,T=!isNaN(Number(f));w?u[f]=r[o]:(f in u||(u[f]=T?[]:{}),u=u[f])})}),t}function Ot(e){switch(e){case"array":return[];case"object":default:return null}}function Le(e){return e.replace(/\.\d+\./g,".")}function Dt(e,r){const t=e.split("."),n=[];return t.forEach((o,i)=>{isNaN(Number(o))||n.push({pos:i,value:o})}),r.map(o=>{const u=[...o.split(".")];return n.forEach(({pos:f,value:A})=>{f<=u.length&&u.splice(f,0,A)}),u.join(".")})}function Se(e,r={}){const t={};for(const n of e)if(n.type==="object"){const o=n.fields;t[n.name]=Se(o,r==null?void 0:r[n.name])}else t[n.name]=(r==null?void 0:r[n.name])??n.initialValue??Ot(n.type);return t}function Ze(e){return e.map(r=>{if(["object","array"].includes(r.type)){const t=r.fields;return{...r,readonly:!0,fields:Ze(t)}}return{...r,readonly:!0}})}const hr=g.memo(e=>{const{baseName:r,index:t,fields:n}=e,o=g.useMemo(()=>n.map(i=>({...i,name:`${r}.${t}.${i.name}`})),[r,t,n]);return F.jsxs("div",{children:[F.jsxs("div",{children:["row ",t]}),F.jsx(Te,{schema:o})]})}),vr=e=>{const{fieldSchema:r}=e,{control:t,getValues:n,setValue:o}=be(),u=Et({control:t,name:r.name})??[],f=()=>{const w=n(r.name)||[];o(r.name,[...w,Se(r.fields)])},A=w=>{const E=(n(r.name)||[]).filter((p,b)=>b!==w);o(r.name,E)};return F.jsxs("div",{children:[u.map((w,T)=>F.jsxs("div",{children:[F.jsx(hr,{baseName:r.name,index:T,fields:r.fields}),!r.readonly&&F.jsx("button",{type:"button",onClick:()=>A(T),children:"Remove"})]},T)),!r.readonly&&F.jsx("button",{type:"button",onClick:f,children:"Add Row"})]})},br=g.memo(vr),gr=e=>{const{fieldSchema:r}=e;let t=g.useMemo(()=>r.fields.map(n=>({...n,name:`${r.name}.${n.name}`})),[r.fields]);return F.jsx(Te,{schema:t})},Ct=({fieldSchema:e})=>{var w,T;const t=St().uiConfig,{register:n,control:o}=be(),i=Le(e.name),u=n(e.name),f=(w=t==null?void 0:t.renderersByName)==null?void 0:w[i];if(e.visible===!1)return null;if(f)return F.jsx(f,{fieldSchema:e,control:o,register:u});const A=(T=t==null?void 0:t.renderersByType)==null?void 0:T[e.type];if(A)return F.jsx(A,{fieldSchema:e,control:o,register:u});switch(e.type){case"select":return F.jsx(mr,{fieldSchema:e});case"array":return F.jsx(br,{fieldSchema:e});case"object":return F.jsx(gr,{fieldSchema:e});case"text":case"number":case"checkbox":case"date":case"datetime-local":case"time":return F.jsx(yr,{fieldSchema:e})}},_r=({fieldSchema:e})=>F.jsx(Ct,{fieldSchema:e}),xr=({fieldSchema:e})=>{const{control:r}=be(),t=St(),n=e.dependsOn??[],o=g.useMemo(()=>Dt(e.name,n),[e.name,n]),i=Et({control:r,name:o}),[u,f]=g.useState(e);return g.useEffect(()=>{if(!n.length)return;let A=!1;return(async()=>{var B;const T=Le(e.name),E=Tt(o,i??[]),p=(B=t==null?void 0:t.updateFieldSchema)==null?void 0:B[T];if(!p)return;const b=await p(e.name,e,E);!A&&b&&f({...e,...b})})(),()=>{A=!0}},[i]),F.jsx(Ct,{fieldSchema:u})},Er=e=>{var t;const{fieldSchema:r}=e;return(t=r.dependsOn)!=null&&t.length?F.jsx(xr,{fieldSchema:r}):F.jsx(_r,{fieldSchema:r})},Vr=e=>{const{fieldSchema:r}=e;return F.jsx(Er,{fieldSchema:r})},Te=g.memo(e=>{const{schema:r}=e;return r.map(t=>F.jsx(Vr,{fieldSchema:t},t.name))});function Fr(e,r){const t=i=>/^\d+$/.test(i),n=e.split(".");let o=r;for(const i of n){if(o==null)return;const u=t(i)?Number(i):i;o=o[u]}return o}const Ar=e=>{const{onDirtyChange:r,onValuesChange:t,onFieldChange:n}=e,{formState:o,watch:i}=be(),u=g.useRef(!0);return g.useEffect(()=>{const f=i((A,{name:w=""})=>{var p;t(A);const T=Le(w),E=Fr(w,A);(p=n==null?void 0:n[T])==null||p.call(n,w,E,A)});return()=>f.unsubscribe()},[i,t]),g.useEffect(()=>{if(u.current){u.current=!1;return}r(o.isDirty)},[o.isDirty,r]),null},wr=({onValuesChange:e,onDirtyChange:r,onFieldChange:t})=>(Ar({onDirtyChange:r,onValuesChange:e,onFieldChange:t}),null),pr=g.forwardRef((e,r)=>{const{schema:t,onSubmit:n,uiConfig:o={renderersByName:{},renderersByType:{}},updateFieldSchema:i={},layout:u="vertical",values:f=()=>({}),hideSubmit:A=!1,onDirtyChange:w=()=>{},onValuesChange:T=()=>{},resolver:E,readonly:p,onFieldChange:b={},loadingComponent:B}=e,O=fr({reValidateMode:"onSubmit",criteriaMode:"all",resolver:E}),W=g.useRef(!1),[$,V]=g.useState(!1),G=O.handleSubmit(n),C=g.useMemo(()=>{let N=t;return p&&(N=Ze(N)),N},[p,t]);g.useEffect(()=>{if(!f)return;let N=!1;return(async()=>{if(W.current)return;V(!1);const fe=await f();N||(O.reset(Se(t,fe),{keepErrors:!0,keepDirty:!1,keepTouched:!1}),W.current=!0,V(!0))})(),()=>{N=!0}},[t,f]),g.useImperativeHandle(r,()=>({submit:async()=>{await O.handleSubmit(n)()},reset:N=>{O.reset(N?Se(t,N):void 0)},getValues:()=>O.getValues(),setValue:(N,J)=>{O.setValue(N,J)}}));const k=A||p,ee=g.useMemo(()=>o,[o]),ce=g.useMemo(()=>i,[i]),se=g.useMemo(()=>({layout:u,uiConfig:o,updateFieldSchema:i}),[u,o,i]);return $?F.jsxs(Jt,{...O,children:[F.jsx(wr,{onDirtyChange:w,onValuesChange:T,onFieldChange:b}),F.jsxs(dr,{layout:se.layout,uiConfig:ee,updateFieldSchema:ce,children:[["vertical","horizontal"].includes(u)&&F.jsx("div",{style:{display:"flex",flexDirection:u==="vertical"?"column":"row"},children:F.jsx(Te,{schema:C})}),u==="custom"&&F.jsx(Te,{schema:C}),!k&&F.jsx("button",{style:{marginTop:"1rem"},onClick:G,children:"Submit"})]})]}):F.jsx(F.Fragment,{children:B??F.jsx("div",{style:{padding:"2rem",textAlign:"center",color:"#666",fontSize:"0.9rem"},children:"Loading form..."})})});exports.AutoForm=pr;exports.SchemaRenderer=Te;exports.buildNestedPartialValues=Tt;exports.generateInitialValues=Se;exports.getDefaultValueForField=Ot;exports.makeSchemaReadOnly=Ze;exports.normalizeFieldPath=Le;exports.resolveDependsOnNew=Dt;
package/dist/index.es.js CHANGED
@@ -1,5 +1,5 @@
1
- import R, { useMemo as ve, createContext as $t, useContext as Wt, useState as xt, useEffect as Ce, useRef as Et, useImperativeHandle as Yt } from "react";
2
- var De = { exports: {} }, Ae = {};
1
+ import R, { useMemo as ve, createContext as Wt, useContext as $t, useState as xt, useEffect as Ce, useRef as Et, useImperativeHandle as Yt } from "react";
2
+ var De = { exports: {} }, pe = {};
3
3
  /**
4
4
  * @license React
5
5
  * react-jsx-runtime.production.js
@@ -11,7 +11,7 @@ var De = { exports: {} }, Ae = {};
11
11
  */
12
12
  var it;
13
13
  function qt() {
14
- if (it) return Ae;
14
+ if (it) return pe;
15
15
  it = 1;
16
16
  var e = Symbol.for("react.transitional.element"), r = Symbol.for("react.fragment");
17
17
  function t(n, o, i) {
@@ -29,7 +29,7 @@ function qt() {
29
29
  props: i
30
30
  };
31
31
  }
32
- return Ae.Fragment = r, Ae.jsx = t, Ae.jsxs = t, Ae;
32
+ return pe.Fragment = r, pe.jsx = t, pe.jsxs = t, pe;
33
33
  }
34
34
  var we = {};
35
35
  /**
@@ -50,11 +50,11 @@ function zt() {
50
50
  return c.$$typeof === fe ? null : c.displayName || c.name || null;
51
51
  if (typeof c == "string") return c;
52
52
  switch (c) {
53
- case $:
53
+ case W:
54
54
  return "Fragment";
55
55
  case E:
56
56
  return "Profiler";
57
- case W:
57
+ case $:
58
58
  return "StrictMode";
59
59
  case ee:
60
60
  return "Suspense";
@@ -108,7 +108,7 @@ function zt() {
108
108
  }
109
109
  }
110
110
  function n(c) {
111
- if (c === $) return "<>";
111
+ if (c === W) return "<>";
112
112
  if (typeof c == "object" && c !== null && c.$$typeof === N)
113
113
  return "<...>";
114
114
  try {
@@ -150,7 +150,7 @@ function zt() {
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
  )), c = this.props.ref, c !== void 0 ? c : null;
152
152
  }
153
- function p(c, g, j, L, _e, xe) {
153
+ function A(c, g, j, L, _e, xe) {
154
154
  var U = j.ref;
155
155
  return c = {
156
156
  $$typeof: B,
@@ -198,8 +198,8 @@ function zt() {
198
198
  else x(U);
199
199
  if (w.call(g, "key")) {
200
200
  U = e(c);
201
- var oe = Object.keys(g).filter(function(pe) {
202
- return pe !== "key";
201
+ var oe = Object.keys(g).filter(function(Ae) {
202
+ return Ae !== "key";
203
203
  });
204
204
  L = 0 < oe.length ? "{key: someKey, " + oe.join(": ..., ") + ": ...}" : "{key: someKey}", me[U + L] || (oe = 0 < oe.length ? "{" + oe.join(": ..., ") + ": ...}" : "{}", console.error(
205
205
  `A props object containing a "key" prop is being spread into JSX:
@@ -222,7 +222,7 @@ React keys must be passed directly to JSX without using spread:
222
222
  return U && f(
223
223
  j,
224
224
  typeof c == "function" ? c.displayName || c.name || "Unknown" : c
225
- ), p(
225
+ ), A(
226
226
  c,
227
227
  U,
228
228
  j,
@@ -232,12 +232,12 @@ React keys must be passed directly to JSX without using spread:
232
232
  );
233
233
  }
234
234
  function x(c) {
235
- A(c) ? c._store && (c._store.validated = 1) : typeof c == "object" && c !== null && c.$$typeof === N && (c._payload.status === "fulfilled" ? A(c._payload.value) && c._payload.value._store && (c._payload.value._store.validated = 1) : c._store && (c._store.validated = 1));
235
+ p(c) ? c._store && (c._store.validated = 1) : typeof c == "object" && c !== null && c.$$typeof === N && (c._payload.status === "fulfilled" ? p(c._payload.value) && c._payload.value._store && (c._payload.value._store.validated = 1) : c._store && (c._store.validated = 1));
236
236
  }
237
- function A(c) {
237
+ function p(c) {
238
238
  return typeof c == "object" && c !== null && c.$$typeof === B;
239
239
  }
240
- var b = R, B = Symbol.for("react.transitional.element"), O = Symbol.for("react.portal"), $ = Symbol.for("react.fragment"), W = Symbol.for("react.strict_mode"), E = Symbol.for("react.profiler"), G = Symbol.for("react.consumer"), C = Symbol.for("react.context"), k = Symbol.for("react.forward_ref"), ee = Symbol.for("react.suspense"), ce = Symbol.for("react.suspense_list"), se = Symbol.for("react.memo"), N = Symbol.for("react.lazy"), J = Symbol.for("react.activity"), fe = Symbol.for("react.client.reference"), _ = b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, w = Object.prototype.hasOwnProperty, I = Array.isArray, Y = console.createTask ? console.createTask : function() {
240
+ var b = R, B = Symbol.for("react.transitional.element"), O = Symbol.for("react.portal"), W = Symbol.for("react.fragment"), $ = Symbol.for("react.strict_mode"), E = Symbol.for("react.profiler"), G = Symbol.for("react.consumer"), C = Symbol.for("react.context"), k = Symbol.for("react.forward_ref"), ee = Symbol.for("react.suspense"), ce = Symbol.for("react.suspense_list"), se = Symbol.for("react.memo"), N = Symbol.for("react.lazy"), J = Symbol.for("react.activity"), fe = Symbol.for("react.client.reference"), _ = b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, w = Object.prototype.hasOwnProperty, I = Array.isArray, Y = console.createTask ? console.createTask : function() {
241
241
  return null;
242
242
  };
243
243
  b = {
@@ -249,7 +249,7 @@ React keys must be passed directly to JSX without using spread:
249
249
  b,
250
250
  i
251
251
  )(), ye = Y(n(i)), me = {};
252
- we.Fragment = $, we.jsx = function(c, g, j) {
252
+ we.Fragment = W, we.jsx = function(c, g, j) {
253
253
  var L = 1e4 > _.recentlyCreatedOwnerStacks++;
254
254
  return T(
255
255
  c,
@@ -308,8 +308,8 @@ var Ie = (e) => /^\w*$/.test(e), M = (e) => e === void 0, He = (e) => Array.isAr
308
308
  const f = o[n];
309
309
  let F = t;
310
310
  if (n !== u) {
311
- const p = e[f];
312
- F = z(p) || Array.isArray(p) ? p : isNaN(+o[n + 1]) ? {} : [];
311
+ const A = e[f];
312
+ F = z(A) || Array.isArray(A) ? A : isNaN(+o[n + 1]) ? {} : [];
313
313
  }
314
314
  if (f === "__proto__" || f === "constructor" || f === "prototype")
315
315
  return;
@@ -353,7 +353,7 @@ var Kt = (e, r, t, n = !0) => {
353
353
  return o;
354
354
  };
355
355
  const Ft = typeof window < "u" ? R.useLayoutEffect : R.useEffect;
356
- var te = (e) => typeof e == "string", We = (e, r, t, n, o) => te(e) ? (n && r.watch.add(e), h(t, e, o)) : Array.isArray(e) ? e.map((i) => (n && r.watch.add(i), h(t, i))) : (n && (r.watchAll = !0), t), Ye = (e) => K(e) || !Vt(e);
356
+ var te = (e) => typeof e == "string", $e = (e, r, t, n, o) => te(e) ? (n && r.watch.add(e), h(t, e, o)) : Array.isArray(e) ? e.map((i) => (n && r.watch.add(i), h(t, i))) : (n && (r.watchAll = !0), t), Ye = (e) => K(e) || !Vt(e);
357
357
  function ae(e, r, t = /* @__PURE__ */ new WeakSet()) {
358
358
  if (Ye(e) || Ye(r))
359
359
  return Object.is(e, r);
@@ -377,41 +377,41 @@ function ae(e, r, t = /* @__PURE__ */ new WeakSet()) {
377
377
  }
378
378
  return !0;
379
379
  }
380
- function pt(e) {
381
- const r = ge(), { control: t = r.control, name: n, defaultValue: o, disabled: i, exact: u, compute: f } = e || {}, F = R.useRef(o), p = R.useRef(f), T = R.useRef(void 0), x = R.useRef(t), A = R.useRef(n);
382
- p.current = f;
380
+ function At(e) {
381
+ const r = ge(), { control: t = r.control, name: n, defaultValue: o, disabled: i, exact: u, compute: f } = e || {}, F = R.useRef(o), A = R.useRef(f), T = R.useRef(void 0), x = R.useRef(t), p = R.useRef(n);
382
+ A.current = f;
383
383
  const [b, B] = R.useState(() => {
384
384
  const C = t._getWatch(n, F.current);
385
- return p.current ? p.current(C) : C;
385
+ return A.current ? A.current(C) : C;
386
386
  }), O = R.useCallback((C) => {
387
- const k = We(n, t._names, C || t._formValues, !1, F.current);
388
- return p.current ? p.current(k) : k;
389
- }, [t._formValues, t._names, n]), $ = R.useCallback((C) => {
387
+ const k = $e(n, t._names, C || t._formValues, !1, F.current);
388
+ return A.current ? A.current(k) : k;
389
+ }, [t._formValues, t._names, n]), W = R.useCallback((C) => {
390
390
  if (!i) {
391
- const k = We(n, t._names, C || t._formValues, !1, F.current);
392
- if (p.current) {
393
- const ee = p.current(k);
391
+ const k = $e(n, t._names, C || t._formValues, !1, F.current);
392
+ if (A.current) {
393
+ const ee = A.current(k);
394
394
  ae(ee, T.current) || (B(ee), T.current = ee);
395
395
  } else
396
396
  B(k);
397
397
  }
398
398
  }, [t._formValues, t._names, i, n]);
399
- Ft(() => ((x.current !== t || !ae(A.current, n)) && (x.current = t, A.current = n, $()), t._subscribe({
399
+ Ft(() => ((x.current !== t || !ae(p.current, n)) && (x.current = t, p.current = n, W()), t._subscribe({
400
400
  name: n,
401
401
  formState: {
402
402
  values: !0
403
403
  },
404
404
  exact: u,
405
405
  callback: (C) => {
406
- $(C.values);
406
+ W(C.values);
407
407
  }
408
- })), [t, u, n, $]), R.useEffect(() => t._removeUnmounted());
409
- const W = x.current !== t, E = A.current, G = R.useMemo(() => {
408
+ })), [t, u, n, W]), R.useEffect(() => t._removeUnmounted());
409
+ const $ = x.current !== t, E = p.current, G = R.useMemo(() => {
410
410
  if (i)
411
411
  return null;
412
- const C = !W && !ae(E, n);
413
- return W || C ? O() : null;
414
- }, [i, W, n, E, O]);
412
+ const C = !$ && !ae(E, n);
413
+ return $ || C ? O() : null;
414
+ }, [i, $, n, E, O]);
415
415
  return G !== null ? G : b;
416
416
  }
417
417
  var er = (e, r, t, n, o) => r ? {
@@ -440,13 +440,13 @@ var er = (e, r, t, n, o) => r ? {
440
440
  }
441
441
  };
442
442
  };
443
- function At(e, r) {
443
+ function pt(e, r) {
444
444
  const t = {};
445
445
  for (const n in e)
446
446
  if (e.hasOwnProperty(n)) {
447
447
  const o = e[n], i = r[n];
448
448
  if (o && z(o) && i) {
449
- const u = At(o, i);
449
+ const u = pt(o, i);
450
450
  z(u) && (t[n] = u);
451
451
  } else e[n] && (t[n] = i);
452
452
  }
@@ -457,7 +457,7 @@ var Z = (e) => z(e) && !Object.keys(e).length, Xe = (e) => e.type === "file", je
457
457
  return !1;
458
458
  const r = e ? e.ownerDocument : 0;
459
459
  return e instanceof (r && r.defaultView ? r.defaultView.HTMLElement : HTMLElement);
460
- }, wt = (e) => e.type === "select-multiple", Ze = (e) => e.type === "radio", tr = (e) => Ze(e) || Te(e), $e = (e) => je(e) && e.isConnected;
460
+ }, wt = (e) => e.type === "select-multiple", Ze = (e) => e.type === "radio", tr = (e) => Ze(e) || Te(e), We = (e) => je(e) && e.isConnected;
461
461
  function rr(e, r) {
462
462
  const t = r.slice(0, -1).length;
463
463
  let n = 0;
@@ -619,12 +619,12 @@ var Ve = (e) => z(e) && !Pe(e) ? e : {
619
619
  value: e,
620
620
  message: ""
621
621
  }, _t = async (e, r, t, n, o, i) => {
622
- const { ref: u, refs: f, required: F, maxLength: p, minLength: T, min: x, max: A, pattern: b, validate: B, name: O, valueAsNumber: $, mount: W } = e._f, E = h(t, O);
623
- if (!W || r.has(O))
622
+ const { ref: u, refs: f, required: F, maxLength: A, minLength: T, min: x, max: p, pattern: b, validate: B, name: O, valueAsNumber: W, mount: $ } = e._f, E = h(t, O);
623
+ if (!$ || r.has(O))
624
624
  return {};
625
625
  const G = f ? f[0] : u, C = (_) => {
626
626
  o && G.reportValidity && (G.setCustomValidity(le(_) ? "" : _ || ""), G.reportValidity());
627
- }, k = {}, ee = Ze(u), ce = Te(u), se = ee || ce, N = ($ || Xe(u)) && M(u.value) && M(E) || je(u) && u.value === "" || E === "" || Array.isArray(E) && !E.length, J = er.bind(null, O, n, k), fe = (_, w, I, Y = ue.maxLength, Q = ue.minLength) => {
627
+ }, k = {}, ee = Ze(u), ce = Te(u), se = ee || ce, N = (W || Xe(u)) && M(u.value) && M(E) || je(u) && u.value === "" || E === "" || Array.isArray(E) && !E.length, J = er.bind(null, O, n, k), fe = (_, w, I, Y = ue.maxLength, Q = ue.minLength) => {
628
628
  const X = _ ? w : I;
629
629
  k[O] = {
630
630
  type: _ ? Y : Q,
@@ -643,9 +643,9 @@ var Ve = (e) => z(e) && !Pe(e) ? e : {
643
643
  }, !n))
644
644
  return C(w), k;
645
645
  }
646
- if (!N && (!K(x) || !K(A))) {
646
+ if (!N && (!K(x) || !K(p))) {
647
647
  let _, w;
648
- const I = Ve(A), Y = Ve(x);
648
+ const I = Ve(p), Y = Ve(x);
649
649
  if (!K(E) && !isNaN(E)) {
650
650
  const Q = u.valueAsNumber || E && +E;
651
651
  K(I.value) || (_ = Q > I.value), K(Y.value) || (w = Q < Y.value);
@@ -656,8 +656,8 @@ var Ve = (e) => z(e) && !Pe(e) ? e : {
656
656
  if ((_ || w) && (fe(!!_, I.message, Y.message, ue.max, ue.min), !n))
657
657
  return C(k[O].message), k;
658
658
  }
659
- if ((p || T) && !N && (te(E) || i && Array.isArray(E))) {
660
- const _ = Ve(p), w = Ve(T), I = !K(_.value) && E.length > +_.value, Y = !K(w.value) && E.length < +w.value;
659
+ if ((A || T) && !N && (te(E) || i && Array.isArray(E))) {
660
+ const _ = Ve(A), w = Ve(T), I = !K(_.value) && E.length > +_.value, Y = !K(w.value) && E.length < +w.value;
661
661
  if ((I || Y) && (fe(I, _.message, w.message), !n))
662
662
  return C(k[O].message), k;
663
663
  }
@@ -734,7 +734,7 @@ function mr(e = {}) {
734
734
  unMount: /* @__PURE__ */ new Set(),
735
735
  array: /* @__PURE__ */ new Set(),
736
736
  watch: /* @__PURE__ */ new Set()
737
- }, F, p = 0;
737
+ }, F, A = 0;
738
738
  const T = {
739
739
  isDirty: !1,
740
740
  dirtyFields: !1,
@@ -746,23 +746,23 @@ function mr(e = {}) {
746
746
  }, x = {
747
747
  ...T
748
748
  };
749
- let A = {
749
+ let p = {
750
750
  ...x
751
751
  };
752
752
  const b = {
753
753
  array: ut(),
754
754
  state: ut()
755
755
  }, B = r.criteriaMode === ie.all, O = (s) => (a) => {
756
- clearTimeout(p), p = setTimeout(s, a);
757
- }, $ = async (s) => {
758
- if (!u.keepIsValid && !r.disabled && (x.isValid || A.isValid || s)) {
756
+ clearTimeout(A), A = setTimeout(s, a);
757
+ }, W = async (s) => {
758
+ if (!u.keepIsValid && !r.disabled && (x.isValid || p.isValid || s)) {
759
759
  let a;
760
- r.resolver ? (a = Z((await se()).errors), W()) : a = await J(n, !0), a !== t.isValid && b.state.next({
760
+ r.resolver ? (a = Z((await se()).errors), $()) : a = await J(n, !0), a !== t.isValid && b.state.next({
761
761
  isValid: a
762
762
  });
763
763
  }
764
- }, W = (s, a) => {
765
- !r.disabled && (x.isValidating || x.validatingFields || A.isValidating || A.validatingFields) && ((s || Array.from(f.mount)).forEach((l) => {
764
+ }, $ = (s, a) => {
765
+ !r.disabled && (x.isValidating || x.validatingFields || p.isValidating || p.validatingFields) && ((s || Array.from(f.mount)).forEach((l) => {
766
766
  l && (a ? P(t.validatingFields, l, a) : q(t.validatingFields, l));
767
767
  }), b.state.next({
768
768
  validatingFields: t.validatingFields,
@@ -778,11 +778,11 @@ function mr(e = {}) {
778
778
  const v = l(h(t.errors, s), m.argA, m.argB);
779
779
  y && P(t.errors, s, v), fr(t.errors, s);
780
780
  }
781
- if ((x.touchedFields || A.touchedFields) && d && Array.isArray(h(t.touchedFields, s))) {
781
+ if ((x.touchedFields || p.touchedFields) && d && Array.isArray(h(t.touchedFields, s))) {
782
782
  const v = l(h(t.touchedFields, s), m.argA, m.argB);
783
783
  y && P(t.touchedFields, s, v);
784
784
  }
785
- (x.dirtyFields || A.dirtyFields) && (t.dirtyFields = Fe(o, i)), b.state.next({
785
+ (x.dirtyFields || p.dirtyFields) && (t.dirtyFields = Fe(o, i)), b.state.next({
786
786
  name: s,
787
787
  isDirty: _(s, a),
788
788
  dirtyFields: t.dirtyFields,
@@ -804,7 +804,7 @@ function mr(e = {}) {
804
804
  const y = h(n, s);
805
805
  if (y) {
806
806
  const d = h(i, s, M(l) ? h(o, s) : l);
807
- M(d) || m && m.defaultChecked || a ? P(i, s, a ? d : yt(y._f)) : Y(s, d), u.mount && !u.action && $();
807
+ M(d) || m && m.defaultChecked || a ? P(i, s, a ? d : yt(y._f)) : Y(s, d), u.mount && !u.action && W();
808
808
  }
809
809
  }, ee = (s, a, l, m, y) => {
810
810
  let d = !1, v = !1;
@@ -813,20 +813,20 @@ function mr(e = {}) {
813
813
  };
814
814
  if (!r.disabled) {
815
815
  if (!l || m) {
816
- (x.isDirty || A.isDirty) && (v = t.isDirty, t.isDirty = S.isDirty = _(), d = v !== S.isDirty);
816
+ (x.isDirty || p.isDirty) && (v = t.isDirty, t.isDirty = S.isDirty = _(), d = v !== S.isDirty);
817
817
  const D = ae(h(o, s), a);
818
- v = !!h(t.dirtyFields, s), D ? q(t.dirtyFields, s) : P(t.dirtyFields, s, !0), S.dirtyFields = t.dirtyFields, d = d || (x.dirtyFields || A.dirtyFields) && v !== !D;
818
+ v = !!h(t.dirtyFields, s), D ? q(t.dirtyFields, s) : P(t.dirtyFields, s, !0), S.dirtyFields = t.dirtyFields, d = d || (x.dirtyFields || p.dirtyFields) && v !== !D;
819
819
  }
820
820
  if (l) {
821
821
  const D = h(t.touchedFields, s);
822
- D || (P(t.touchedFields, s, l), S.touchedFields = t.touchedFields, d = d || (x.touchedFields || A.touchedFields) && D !== l);
822
+ D || (P(t.touchedFields, s, l), S.touchedFields = t.touchedFields, d = d || (x.touchedFields || p.touchedFields) && D !== l);
823
823
  }
824
824
  d && y && b.state.next(S);
825
825
  }
826
826
  return d ? S : {};
827
827
  }, ce = (s, a, l, m) => {
828
- const y = h(t.errors, s), d = (x.isValid || A.isValid) && le(a) && t.isValid !== a;
829
- if (r.delayError && l ? (F = O(() => G(s, l)), F(r.delayError)) : (clearTimeout(p), F = null, l ? P(t.errors, s, l) : q(t.errors, s)), (l ? !ae(y, l) : y) || !Z(m) || d) {
828
+ const y = h(t.errors, s), d = (x.isValid || p.isValid) && le(a) && t.isValid !== a;
829
+ if (r.delayError && l ? (F = O(() => G(s, l)), F(r.delayError)) : (clearTimeout(A), F = null, l ? P(t.errors, s, l) : q(t.errors, s)), (l ? !ae(y, l) : y) || !Z(m) || d) {
830
830
  const v = {
831
831
  ...m,
832
832
  ...d && le(a) ? { isValid: a } : {},
@@ -838,9 +838,9 @@ function mr(e = {}) {
838
838
  ...v
839
839
  }, b.state.next(v);
840
840
  }
841
- }, se = async (s) => (W(s, !0), await r.resolver(i, r.context, ir(s || f.mount, n, r.criteriaMode, r.shouldUseNativeValidation))), N = async (s) => {
841
+ }, se = async (s) => ($(s, !0), await r.resolver(i, r.context, ir(s || f.mount, n, r.criteriaMode, r.shouldUseNativeValidation))), N = async (s) => {
842
842
  const { errors: a } = await se(s);
843
- if (W(s), s)
843
+ if ($(s), s)
844
844
  for (const l of s) {
845
845
  const m = h(a, l);
846
846
  m ? P(t.errors, l, m) : q(t.errors, l);
@@ -857,9 +857,9 @@ function mr(e = {}) {
857
857
  const { _f: d, ...v } = y;
858
858
  if (d) {
859
859
  const S = f.array.has(d.name), D = y._f && ar(y._f);
860
- D && x.validatingFields && W([d.name], !0);
860
+ D && x.validatingFields && $([d.name], !0);
861
861
  const re = await _t(y, f.disabled, i, B, r.shouldUseNativeValidation && !a, S);
862
- if (D && x.validatingFields && W([d.name]), re[d.name] && (l.valid = !1, a))
862
+ if (D && x.validatingFields && $([d.name]), re[d.name] && (l.valid = !1, a))
863
863
  break;
864
864
  !a && (h(re, d.name) ? S ? dr(t.errors, re, d.name) : P(t.errors, d.name, re[d.name]) : q(t.errors, d.name));
865
865
  }
@@ -870,10 +870,10 @@ function mr(e = {}) {
870
870
  }, fe = () => {
871
871
  for (const s of f.unMount) {
872
872
  const a = h(n, s);
873
- a && (a._f.refs ? a._f.refs.every((l) => !$e(l)) : !$e(a._f.ref)) && oe(s);
873
+ a && (a._f.refs ? a._f.refs.every((l) => !We(l)) : !We(a._f.ref)) && oe(s);
874
874
  }
875
875
  f.unMount = /* @__PURE__ */ new Set();
876
- }, _ = (s, a) => !r.disabled && (s && a && P(i, s, a), !ae(c(), o)), w = (s, a, l) => We(s, f, {
876
+ }, _ = (s, a) => !r.disabled && (s && a && P(i, s, a), !ae(c(), o)), w = (s, a, l) => $e(s, f, {
877
877
  ...u.mount ? i : M(a) ? o : te(s) ? { [s]: a } : a
878
878
  }, l, a), I = (s) => He(h(u.mount ? i : o, s, r.shouldUnregister ? h(o, s, []) : [])), Y = (s, a, l = {}) => {
879
879
  const m = h(n, s);
@@ -900,7 +900,7 @@ function mr(e = {}) {
900
900
  P(i, s, d), y ? (b.array.next({
901
901
  name: s,
902
902
  values: H(i)
903
- }), (x.isDirty || x.dirtyFields || A.isDirty || A.dirtyFields) && l.shouldDirty && b.state.next({
903
+ }), (x.isDirty || x.dirtyFields || p.isDirty || p.dirtyFields) && l.shouldDirty && b.state.next({
904
904
  name: s,
905
905
  dirtyFields: Fe(o, i),
906
906
  isDirty: _(s, d)
@@ -925,15 +925,15 @@ function mr(e = {}) {
925
925
  type: s.type,
926
926
  values: H(i)
927
927
  }), Ut)
928
- return (x.isValid || A.isValid) && (r.mode === "onBlur" ? he && $() : he || $()), Mt && b.state.next({ name: l, ...Me ? {} : Be });
928
+ return (x.isValid || p.isValid) && (r.mode === "onBlur" ? he && W() : he || W()), Mt && b.state.next({ name: l, ...Me ? {} : Be });
929
929
  if (!he && Me && b.state.next({ ...t }), r.resolver) {
930
930
  const { errors: st } = await se([l]);
931
- if (W([l]), d(Oe), m) {
931
+ if ($([l]), d(Oe), m) {
932
932
  const Bt = bt(t.errors, n, l), nt = bt(st, n, Bt.name || l);
933
933
  D = nt.error, l = nt.name, re = Z(st);
934
934
  }
935
935
  } else
936
- W([l], !0), D = (await _t(y, f.disabled, i, B, r.shouldUseNativeValidation))[l], W([l]), d(Oe), m && (D ? re = !1 : (x.isValid || A.isValid) && (re = await J(n, !0)));
936
+ $([l], !0), D = (await _t(y, f.disabled, i, B, r.shouldUseNativeValidation))[l], $([l]), d(Oe), m && (D ? re = !1 : (x.isValid || p.isValid) && (re = await J(n, !0)));
937
937
  m && (y._f.deps && (!Array.isArray(y._f.deps) || y._f.deps.length > 0) && me(y._f.deps), ce(l, re, D, Be));
938
938
  }
939
939
  }, ye = (s, a) => {
@@ -948,9 +948,9 @@ function mr(e = {}) {
948
948
  } else s ? (m = (await Promise.all(y.map(async (d) => {
949
949
  const v = h(n, d);
950
950
  return await J(v && v._f ? { [d]: v } : v);
951
- }))).every(Boolean), !(!m && !t.isValid) && $()) : m = l = await J(n);
951
+ }))).every(Boolean), !(!m && !t.isValid) && W()) : m = l = await J(n);
952
952
  return b.state.next({
953
- ...!te(s) || (x.isValid || A.isValid) && l !== t.isValid ? {} : { name: s },
953
+ ...!te(s) || (x.isValid || p.isValid) && l !== t.isValid ? {} : { name: s },
954
954
  ...r.resolver || !s ? { isValid: l } : {},
955
955
  errors: t.errors
956
956
  }), a.shouldFocus && !m && Se(n, ye, s ? y : f.mount), m;
@@ -958,7 +958,7 @@ function mr(e = {}) {
958
958
  let l = {
959
959
  ...u.mount ? i : o
960
960
  };
961
- return a && (l = At(a.dirtyFields ? t.dirtyFields : t.touchedFields, l)), M(s) ? l : te(s) ? h(l, s) : s.map((m) => h(l, m));
961
+ return a && (l = pt(a.dirtyFields ? t.dirtyFields : t.touchedFields, l)), M(s) ? l : te(s) ? h(l, s) : s.map((m) => h(l, m));
962
962
  }, g = (s, a) => ({
963
963
  invalid: !!h((a || t).errors, s),
964
964
  isDirty: !!h((a || t).dirtyFields, s),
@@ -991,8 +991,8 @@ function mr(e = {}) {
991
991
  defaultValues: o
992
992
  });
993
993
  }
994
- }).unsubscribe, U = (s) => (u.mount = !0, A = {
995
- ...A,
994
+ }).unsubscribe, U = (s) => (u.mount = !0, p = {
995
+ ...p,
996
996
  ...s.formState
997
997
  }, xe({
998
998
  ...s,
@@ -1008,10 +1008,10 @@ function mr(e = {}) {
1008
1008
  }), b.state.next({
1009
1009
  ...t,
1010
1010
  ...a.keepDirty ? { isDirty: _() } : {}
1011
- }), !a.keepIsValid && $();
1011
+ }), !a.keepIsValid && W();
1012
1012
  }, Ee = ({ disabled: s, name: a }) => {
1013
1013
  (le(s) && u.mount || s || f.disabled.has(a)) && (s ? f.disabled.add(a) : f.disabled.delete(a));
1014
- }, pe = (s, a = {}) => {
1014
+ }, Ae = (s, a = {}) => {
1015
1015
  let l = h(n, s);
1016
1016
  const m = le(a.disabled) || le(r.disabled);
1017
1017
  return P(n, s, {
@@ -1040,7 +1040,7 @@ function mr(e = {}) {
1040
1040
  onBlur: de,
1041
1041
  ref: (y) => {
1042
1042
  if (y) {
1043
- pe(s, a), l = h(n, s);
1043
+ Ae(s, a), l = h(n, s);
1044
1044
  const d = M(y.value) && y.querySelectorAll && y.querySelectorAll("input,select,textarea")[0] || y, v = tr(d), S = l._f.refs || [];
1045
1045
  if (v ? S.find((D) => D === d) : d === l._f.ref)
1046
1046
  return;
@@ -1049,7 +1049,7 @@ function mr(e = {}) {
1049
1049
  ...l._f,
1050
1050
  ...v ? {
1051
1051
  refs: [
1052
- ...S.filter($e),
1052
+ ...S.filter(We),
1053
1053
  d,
1054
1054
  ...Array.isArray(h(o, s)) ? [{}] : []
1055
1055
  ],
@@ -1076,7 +1076,7 @@ function mr(e = {}) {
1076
1076
  isSubmitting: !0
1077
1077
  }), r.resolver) {
1078
1078
  const { errors: d, values: v } = await se();
1079
- W(), t.errors = d, y = H(v);
1079
+ $(), t.errors = d, y = H(v);
1080
1080
  } else
1081
1081
  await J(n);
1082
1082
  if (f.disabled.size)
@@ -1102,7 +1102,7 @@ function mr(e = {}) {
1102
1102
  }), m)
1103
1103
  throw m;
1104
1104
  }, Nt = (s, a = {}) => {
1105
- h(n, s) && (M(a.defaultValue) ? X(s, H(h(o, s))) : (X(s, a.defaultValue), P(o, s, H(a.defaultValue))), a.keepTouched || q(t.touchedFields, s), a.keepDirty || (q(t.dirtyFields, s), t.isDirty = a.defaultValue ? _(s, H(h(o, s))) : _()), a.keepError || (q(t.errors, s), x.isValid && $()), b.state.next({ ...t }));
1105
+ h(n, s) && (M(a.defaultValue) ? X(s, H(h(o, s))) : (X(s, a.defaultValue), P(o, s, H(a.defaultValue))), a.keepTouched || q(t.touchedFields, s), a.keepDirty || (q(t.dirtyFields, s), t.isDirty = a.defaultValue ? _(s, H(h(o, s))) : _()), a.keepError || (q(t.errors, s), x.isValid && W()), b.state.next({ ...t }));
1106
1106
  }, et = (s, a = {}) => {
1107
1107
  const l = s ? H(s) : o, m = H(l), y = Z(s), d = y ? o : m;
1108
1108
  if (a.keepDefaultValues || (o = l), !a.keepValues) {
@@ -1174,18 +1174,18 @@ function mr(e = {}) {
1174
1174
  };
1175
1175
  }, rt = {
1176
1176
  control: {
1177
- register: pe,
1177
+ register: Ae,
1178
1178
  unregister: oe,
1179
1179
  getFieldState: g,
1180
1180
  handleSubmit: Ke,
1181
1181
  setError: L,
1182
1182
  _subscribe: xe,
1183
1183
  _runSchema: se,
1184
- _updateIsValidating: W,
1184
+ _updateIsValidating: $,
1185
1185
  _focusError: Ue,
1186
1186
  _getWatch: w,
1187
1187
  _getDirty: _,
1188
- _setValid: $,
1188
+ _setValid: W,
1189
1189
  _setFieldArray: E,
1190
1190
  _setDisabledField: Ee,
1191
1191
  _setErrors: C,
@@ -1236,7 +1236,7 @@ function mr(e = {}) {
1236
1236
  },
1237
1237
  subscribe: U,
1238
1238
  trigger: me,
1239
- register: pe,
1239
+ register: Ae,
1240
1240
  handleSubmit: Ke,
1241
1241
  watch: _e,
1242
1242
  setValue: X,
@@ -1321,7 +1321,7 @@ function hr(e = {}) {
1321
1321
  i._state.mount || (i._setValid(), i._state.mount = !0), i._state.watch && (i._state.watch = !1, i._subjects.state.next({ ...i._formState })), i._removeUnmounted();
1322
1322
  }), r.current.formState = Kt(n, i), r.current;
1323
1323
  }
1324
- const Ot = $t(null), vr = ({
1324
+ const Ot = Wt(null), vr = ({
1325
1325
  children: e,
1326
1326
  layout: r = "vertical",
1327
1327
  uiConfig: t,
@@ -1337,7 +1337,7 @@ const Ot = $t(null), vr = ({
1337
1337
  );
1338
1338
  return /* @__PURE__ */ V.jsx(Ot.Provider, { value: o, children: e });
1339
1339
  }, Dt = () => {
1340
- const e = Wt(Ot);
1340
+ const e = $t(Ot);
1341
1341
  if (!e)
1342
1342
  throw new Error("useAutoFormRenderContext must be used within AutoFormRenderContextProvider");
1343
1343
  return e;
@@ -1360,8 +1360,8 @@ function _r(e, r) {
1360
1360
  const i = n.split(".");
1361
1361
  let u = t;
1362
1362
  i.forEach((f, F) => {
1363
- const p = F === i.length - 1, T = !isNaN(Number(f));
1364
- p ? u[f] = r[o] : (f in u || (u[f] = T ? [] : {}), u = u[f]);
1363
+ const A = F === i.length - 1, T = !isNaN(Number(f));
1364
+ A ? u[f] = r[o] : (f in u || (u[f] = T ? [] : {}), u = u[f]);
1365
1365
  });
1366
1366
  }), t;
1367
1367
  }
@@ -1430,24 +1430,24 @@ const Vr = R.memo((e) => {
1430
1430
  /* @__PURE__ */ V.jsx(Le, { schema: o })
1431
1431
  ] });
1432
1432
  }), Fr = (e) => {
1433
- const { fieldSchema: r } = e, { control: t, getValues: n, setValue: o } = ge(), u = pt({
1433
+ const { fieldSchema: r } = e, { control: t, getValues: n, setValue: o } = ge(), u = At({
1434
1434
  control: t,
1435
1435
  name: r.name
1436
1436
  }) ?? [], f = () => {
1437
- const p = n(r.name) || [];
1438
- o(r.name, [...p, Ne(r.fields)]);
1439
- }, F = (p) => {
1440
- const x = (n(r.name) || []).filter((A, b) => b !== p);
1437
+ const A = n(r.name) || [];
1438
+ o(r.name, [...A, Ne(r.fields)]);
1439
+ }, F = (A) => {
1440
+ const x = (n(r.name) || []).filter((p, b) => b !== A);
1441
1441
  o(r.name, x);
1442
1442
  };
1443
1443
  return /* @__PURE__ */ V.jsxs("div", { children: [
1444
- u.map((p, T) => /* @__PURE__ */ V.jsxs("div", { children: [
1444
+ u.map((A, T) => /* @__PURE__ */ V.jsxs("div", { children: [
1445
1445
  /* @__PURE__ */ V.jsx(Vr, { baseName: r.name, index: T, fields: r.fields }),
1446
1446
  !r.readonly && /* @__PURE__ */ V.jsx("button", { type: "button", onClick: () => F(T), children: "Remove" })
1447
1447
  ] }, T)),
1448
1448
  !r.readonly && /* @__PURE__ */ V.jsx("button", { type: "button", onClick: f, children: "Add Row" })
1449
1449
  ] });
1450
- }, pr = R.memo(Fr), Ar = (e) => {
1450
+ }, Ar = R.memo(Fr), pr = (e) => {
1451
1451
  const { fieldSchema: r } = e;
1452
1452
  let t = ve(
1453
1453
  () => r.fields.map((n) => ({
@@ -1458,8 +1458,8 @@ const Vr = R.memo((e) => {
1458
1458
  );
1459
1459
  return /* @__PURE__ */ V.jsx(Le, { schema: t });
1460
1460
  }, jt = ({ fieldSchema: e }) => {
1461
- var p, T;
1462
- const t = Dt().uiConfig, { register: n, control: o } = ge(), i = Qe(e.name), u = n(e.name), f = (p = t == null ? void 0 : t.renderersByName) == null ? void 0 : p[i];
1461
+ var A, T;
1462
+ const t = Dt().uiConfig, { register: n, control: o } = ge(), i = Qe(e.name), u = n(e.name), f = (A = t == null ? void 0 : t.renderersByName) == null ? void 0 : A[i];
1463
1463
  if (e.visible === !1)
1464
1464
  return null;
1465
1465
  if (f)
@@ -1471,9 +1471,9 @@ const Vr = R.memo((e) => {
1471
1471
  case "select":
1472
1472
  return /* @__PURE__ */ V.jsx(gr, { fieldSchema: e });
1473
1473
  case "array":
1474
- return /* @__PURE__ */ V.jsx(pr, { fieldSchema: e });
1475
- case "object":
1476
1474
  return /* @__PURE__ */ V.jsx(Ar, { fieldSchema: e });
1475
+ case "object":
1476
+ return /* @__PURE__ */ V.jsx(pr, { fieldSchema: e });
1477
1477
  case "text":
1478
1478
  case "number":
1479
1479
  case "checkbox":
@@ -1481,17 +1481,12 @@ const Vr = R.memo((e) => {
1481
1481
  case "datetime-local":
1482
1482
  case "time":
1483
1483
  return /* @__PURE__ */ V.jsx(br, { fieldSchema: e });
1484
- default:
1485
- return null;
1486
1484
  }
1487
- throw new Error(
1488
- `AutoForm: No renderer found for field "${e.name}" with type "${e.type}". If this is a custom field type, make sure to register a renderer via uiConfig.renderersByType.`
1489
- );
1490
1485
  }, wr = ({ fieldSchema: e }) => /* @__PURE__ */ V.jsx(jt, { fieldSchema: e }), Rr = ({ fieldSchema: e }) => {
1491
1486
  const { control: r } = ge(), t = Dt(), n = e.dependsOn ?? [], o = ve(
1492
1487
  () => Er(e.name, n),
1493
1488
  [e.name, n]
1494
- ), i = pt({
1489
+ ), i = At({
1495
1490
  control: r,
1496
1491
  name: o
1497
1492
  }), [u, f] = xt(e);
@@ -1500,9 +1495,9 @@ const Vr = R.memo((e) => {
1500
1495
  let F = !1;
1501
1496
  return (async () => {
1502
1497
  var B;
1503
- const T = Qe(e.name), x = _r(o, i ?? []), A = (B = t == null ? void 0 : t.updateFieldSchema) == null ? void 0 : B[T];
1504
- if (!A) return;
1505
- const b = await A(e.name, e, x);
1498
+ const T = Qe(e.name), x = _r(o, i ?? []), p = (B = t == null ? void 0 : t.updateFieldSchema) == null ? void 0 : B[T];
1499
+ if (!p) return;
1500
+ const b = await p(e.name, e, x);
1506
1501
  !F && b && f({
1507
1502
  ...e,
1508
1503
  ...b
@@ -1537,11 +1532,11 @@ function Tr(e, r) {
1537
1532
  const Or = (e) => {
1538
1533
  const { onDirtyChange: r, onValuesChange: t, onFieldChange: n } = e, { formState: o, watch: i } = ge(), u = Et(!0);
1539
1534
  return Ce(() => {
1540
- const f = i((F, { name: p = "" }) => {
1541
- var A;
1535
+ const f = i((F, { name: A = "" }) => {
1536
+ var p;
1542
1537
  t(F);
1543
- const T = Qe(p), x = Tr(p, F);
1544
- (A = n == null ? void 0 : n[T]) == null || A.call(n, p, x, F);
1538
+ const T = Qe(A), x = Tr(A, F);
1539
+ (p = n == null ? void 0 : n[T]) == null || p.call(n, A, x, F);
1545
1540
  });
1546
1541
  return () => f.unsubscribe();
1547
1542
  }, [i, t]), Ce(() => {
@@ -1572,34 +1567,34 @@ const Or = (e) => {
1572
1567
  layout: u = "vertical",
1573
1568
  values: f = () => ({}),
1574
1569
  hideSubmit: F = !1,
1575
- onDirtyChange: p = () => {
1570
+ onDirtyChange: A = () => {
1576
1571
  },
1577
1572
  onValuesChange: T = () => {
1578
1573
  },
1579
1574
  resolver: x,
1580
- readonly: A,
1575
+ readonly: p,
1581
1576
  onFieldChange: b = {},
1582
1577
  loadingComponent: B
1583
1578
  } = e, O = hr({
1584
1579
  reValidateMode: "onSubmit",
1585
1580
  criteriaMode: "all",
1586
1581
  resolver: x
1587
- }), $ = Et(!1), [W, E] = xt(!1), G = O.handleSubmit(n), C = ve(() => {
1582
+ }), W = Et(!1), [$, E] = xt(!1), G = O.handleSubmit(n), C = ve(() => {
1588
1583
  let N = t;
1589
- return A && (N = Ct(N)), N;
1590
- }, [A, t]);
1584
+ return p && (N = Ct(N)), N;
1585
+ }, [p, t]);
1591
1586
  Ce(() => {
1592
1587
  if (!f) return;
1593
1588
  let N = !1;
1594
1589
  return (async () => {
1595
- if ($.current) return;
1590
+ if (W.current) return;
1596
1591
  E(!1);
1597
1592
  const fe = await f();
1598
1593
  N || (O.reset(Ne(t, fe), {
1599
1594
  keepErrors: !0,
1600
1595
  keepDirty: !1,
1601
1596
  keepTouched: !1
1602
- }), $.current = !0, E(!0));
1597
+ }), W.current = !0, E(!0));
1603
1598
  })(), () => {
1604
1599
  N = !0;
1605
1600
  };
@@ -1615,7 +1610,7 @@ const Or = (e) => {
1615
1610
  O.setValue(N, J);
1616
1611
  }
1617
1612
  }));
1618
- const k = F || A, ee = ve(() => o, [o]), ce = ve(() => i, [i]), se = ve(
1613
+ const k = F || p, ee = ve(() => o, [o]), ce = ve(() => i, [i]), se = ve(
1619
1614
  () => ({
1620
1615
  layout: u,
1621
1616
  uiConfig: o,
@@ -1623,11 +1618,11 @@ const Or = (e) => {
1623
1618
  }),
1624
1619
  [u, o, i]
1625
1620
  );
1626
- return W ? /* @__PURE__ */ V.jsxs(Qt, { ...O, children: [
1621
+ return $ ? /* @__PURE__ */ V.jsxs(Qt, { ...O, children: [
1627
1622
  /* @__PURE__ */ V.jsx(
1628
1623
  Dr,
1629
1624
  {
1630
- onDirtyChange: p,
1625
+ onDirtyChange: A,
1631
1626
  onValuesChange: T,
1632
1627
  onFieldChange: b
1633
1628
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "autoforma",
3
- "version": "2.9.7",
3
+ "version": "2.9.91",
4
4
  "description": "AutoForma is a headless dynamic form builder based on React Hook Form",
5
5
  "type": "module",
6
6
  "sideEffects": false,