autoforma 2.2.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,5 @@
1
1
  import { default as React } from 'react';
2
2
  import { FormRef, FormProps } from '../types';
3
- declare const AutoForm: React.ForwardRefExoticComponent<FormProps<string> & React.RefAttributes<FormRef>>;
3
+ type AutoFormComponent = <TCustom extends string = never>(props: FormProps<TCustom> & React.RefAttributes<FormRef>) => React.ReactElement;
4
+ declare const AutoForm: AutoFormComponent;
4
5
  export default AutoForm;
@@ -1,2 +1,5 @@
1
+ import { Schema } from '../types';
2
+ type ResourceFormFieldTypes = 'resource';
3
+ export type ResourceFormSchema = Schema<ResourceFormFieldTypes>;
1
4
  declare const App: () => import("react/jsx-runtime").JSX.Element;
2
5
  export default App;
@@ -1,4 +1,4 @@
1
- import { Resolver, UseFormRegisterReturn } from 'react-hook-form';
1
+ import { Control, Resolver, UseFormRegisterReturn } from 'react-hook-form';
2
2
  export type FormValues = Record<string, any>;
3
3
  export declare const BUILT_IN_FIELD_TYPES: readonly ["text", "number", "checkbox", "select", "date", "datetime-local", "time", "array", "object"];
4
4
  export type BuiltInFieldType = typeof BUILT_IN_FIELD_TYPES[number];
@@ -37,6 +37,7 @@ export type UpdateFieldSchema<TCustom extends string = never> = {
37
37
  export type CustomFieldRendererProps<TCustom extends string = never> = {
38
38
  fieldSchema: FieldSchema<TCustom>;
39
39
  register: UseFormRegisterReturn<string>;
40
+ control: Control<FormValues>;
40
41
  };
41
42
  export type CustomRender<TCustom extends string = never> = Record<string, React.ComponentType<CustomFieldRendererProps<TCustom>>>;
42
43
  export type UiConfig<TCustom extends string = never> = {
@@ -48,8 +49,8 @@ export interface FormProps<TCustom extends string = never> {
48
49
  schema: Schema<TCustom>;
49
50
  onSubmit: (values: FormValues) => void;
50
51
  layout?: Layout;
51
- uiConfig?: UiConfig;
52
- updateFieldSchema?: UpdateFieldSchema;
52
+ uiConfig?: UiConfig<TCustom>;
53
+ updateFieldSchema?: UpdateFieldSchema<TCustom>;
53
54
  values?: () => FormValues | Promise<FormValues>;
54
55
  hideSubmit?: boolean;
55
56
  onDirtyChange?: (isDirty: boolean) => void;
package/dist/index.cjs.js CHANGED
@@ -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 vr;function Xr(){return vr||(vr=1,process.env.NODE_ENV!=="production"&&(function(){function e(c){if(c==null)return null;if(typeof c=="function")return c.$$typeof===be?null:c.displayName||c.name||null;if(typeof c=="string")return c;switch(c){case W:return"Fragment";case w:return"Profiler";case B:return"StrictMode";case V:return"Suspense";case C:return"SuspenseList";case K: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 $:return"Portal";case _:return c.displayName||"Context";case D:return(c._context.displayName||"Context")+".Consumer";case m:var E=c.render;return c=c.displayName,c||(c=E.displayName||E.name||"",c=c!==""?"ForwardRef("+c+")":"ForwardRef"),c;case Q:return E=c.displayName||null,E!==null?E:e(c.type)||"Memo";case se:E=c._payload,c=c._init;try{return e(c(E))}catch{}}return null}function t(c){return""+c}function r(c){try{t(c);var E=!1}catch{E=!0}if(E){E=console;var M=E.error,Y=typeof Symbol=="function"&&Symbol.toStringTag&&c[Symbol.toStringTag]||c.constructor.name||"Object";return M.call(E,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",Y),t(c)}}function s(c){if(c===W)return"<>";if(typeof c=="object"&&c!==null&&c.$$typeof===se)return"<...>";try{var E=e(c);return E?"<"+E+">":"<...>"}catch{return"<...>"}}function o(){var c=k.A;return c===null?null:c.getOwner()}function a(){return Error("react-stack-top-frame")}function l(c){if(S.call(c,"key")){var E=Object.getOwnPropertyDescriptor(c,"key").get;if(E&&E.isReactWarning)return!1}return c.key!==void 0}function d(c,E){function M(){ee||(ee=!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)",E))}M.isReactWarning=!0,Object.defineProperty(c,"key",{get:M,configurable:!0})}function F(){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 A(c,E,M,Y,xe,pe){var z=M.ref;return c={$$typeof:U,type:c,key:E,props:M,_owner:Y},(z!==void 0?z:null)!==null?Object.defineProperty(c,"ref",{enumerable:!1,get:F}):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:xe}),Object.defineProperty(c,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:pe}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}function I(c,E,M,Y,xe,pe){var z=E.children;if(z!==void 0)if(Y)if(q(z)){for(Y=0;Y<z.length;Y++)p(z[Y]);Object.freeze&&Object.freeze(z)}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 p(z);if(S.call(E,"key")){z=e(c);var le=Object.keys(E).filter(function(ke){return ke!=="key"});Y=0<le.length?"{key: someKey, "+le.join(": ..., ")+": ...}":"{key: someKey}",me[z+Y]||(le=0<le.length?"{"+le.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var vr;function Xr(){return vr||(vr=1,process.env.NODE_ENV!=="production"&&(function(){function e(c){if(c==null)return null;if(typeof c=="function")return c.$$typeof===be?null:c.displayName||c.name||null;if(typeof c=="string")return c;switch(c){case W:return"Fragment";case w:return"Profiler";case B:return"StrictMode";case V:return"Suspense";case j:return"SuspenseList";case K: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 $:return"Portal";case _:return c.displayName||"Context";case D:return(c._context.displayName||"Context")+".Consumer";case m:var E=c.render;return c=c.displayName,c||(c=E.displayName||E.name||"",c=c!==""?"ForwardRef("+c+")":"ForwardRef"),c;case Q:return E=c.displayName||null,E!==null?E:e(c.type)||"Memo";case se:E=c._payload,c=c._init;try{return e(c(E))}catch{}}return null}function t(c){return""+c}function r(c){try{t(c);var E=!1}catch{E=!0}if(E){E=console;var M=E.error,Y=typeof Symbol=="function"&&Symbol.toStringTag&&c[Symbol.toStringTag]||c.constructor.name||"Object";return M.call(E,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",Y),t(c)}}function s(c){if(c===W)return"<>";if(typeof c=="object"&&c!==null&&c.$$typeof===se)return"<...>";try{var E=e(c);return E?"<"+E+">":"<...>"}catch{return"<...>"}}function o(){var c=k.A;return c===null?null:c.getOwner()}function a(){return Error("react-stack-top-frame")}function l(c){if(S.call(c,"key")){var E=Object.getOwnPropertyDescriptor(c,"key").get;if(E&&E.isReactWarning)return!1}return c.key!==void 0}function d(c,E){function M(){ee||(ee=!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)",E))}M.isReactWarning=!0,Object.defineProperty(c,"key",{get:M,configurable:!0})}function F(){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 A(c,E,M,Y,xe,pe){var z=M.ref;return c={$$typeof:U,type:c,key:E,props:M,_owner:Y},(z!==void 0?z:null)!==null?Object.defineProperty(c,"ref",{enumerable:!1,get:F}):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:xe}),Object.defineProperty(c,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:pe}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c}function C(c,E,M,Y,xe,pe){var z=E.children;if(z!==void 0)if(Y)if(q(z)){for(Y=0;Y<z.length;Y++)p(z[Y]);Object.freeze&&Object.freeze(z)}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 p(z);if(S.call(E,"key")){z=e(c);var le=Object.keys(E).filter(function(ke){return ke!=="key"});Y=0<le.length?"{key: someKey, "+le.join(": ..., ")+": ...}":"{key: someKey}",me[z+Y]||(le=0<le.length?"{"+le.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} />`,Y,z,le,z),me[z+Y]=!0)}if(z=null,M!==void 0&&(r(M),z=""+M),l(E)&&(r(E.key),z=""+E.key),"key"in E){M={};for(var Ae in E)Ae!=="key"&&(M[Ae]=E[Ae])}else M=E;return z&&d(M,typeof c=="function"?c.displayName||c.name||"Unknown":c),A(c,z,M,o(),xe,pe)}function p(c){R(c)?c._store&&(c._store.validated=1):typeof c=="object"&&c!==null&&c.$$typeof===se&&(c._payload.status==="fulfilled"?R(c._payload.value)&&c._payload.value._store&&(c._payload.value._store.validated=1):c._store&&(c._store.validated=1))}function R(c){return typeof c=="object"&&c!==null&&c.$$typeof===U}var b=h,U=Symbol.for("react.transitional.element"),$=Symbol.for("react.portal"),W=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),D=Symbol.for("react.consumer"),_=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),C=Symbol.for("react.suspense_list"),Q=Symbol.for("react.memo"),se=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),be=Symbol.for("react.client.reference"),k=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,q=Array.isArray,J=console.createTask?console.createTask:function(){return null};b={react_stack_bottom_frame:function(c){return c()}};var ee,X={},fe=b.react_stack_bottom_frame.bind(b,a)(),ye=J(s(a)),me={};Se.Fragment=W,Se.jsx=function(c,E,M){var Y=1e4>k.recentlyCreatedOwnerStacks++;return I(c,E,M,!1,Y?Error("react-stack-top-frame"):fe,Y?J(s(c)):ye)},Se.jsxs=function(c,E,M){var Y=1e4>k.recentlyCreatedOwnerStacks++;return I(c,E,M,!0,Y?Error("react-stack-top-frame"):fe,Y?J(s(c)):ye)}})()),Se}var gr;function Zr(){return gr||(gr=1,process.env.NODE_ENV==="production"?Ce.exports=Gr():Ce.exports=Xr()),Ce.exports}var T=Zr(),Oe=e=>e.type==="checkbox",he=e=>e instanceof Date,re=e=>e==null;const Rr=e=>typeof e=="object";var G=e=>!re(e)&&!Array.isArray(e)&&Rr(e)&&!he(e),Qr=e=>G(e)&&e.target?Oe(e.target)?e.target.checked:e.target.value:e,Kr=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,et=(e,t)=>e.has(Kr(t)),rt=e=>{const t=e.constructor&&e.constructor.prototype;return G(t)&&t.hasOwnProperty("isPrototypeOf")},tr=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function L(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(tr&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(G(e)&&rt(e)))return e;const s=r?[]:Object.create(Object.getPrototypeOf(e));for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(s[o]=L(e[o]));return s}var Ie=e=>/^\w*$/.test(e),N=e=>e===void 0,Me=e=>Array.isArray(e)?e.filter(Boolean):[],sr=e=>Me(e.replace(/["|']|\]/g,"").split(/\.|\[/)),g=(e,t,r)=>{if(!t||!G(e))return r;const s=(Ie(t)?[t]:sr(t)).reduce((o,a)=>re(o)?o:o[a],e);return N(s)||s===e?N(e[t])?r:e[t]:s},ce=e=>typeof e=="boolean",oe=e=>typeof e=="function",P=(e,t,r)=>{let s=-1;const o=Ie(t)?[t]:sr(t),a=o.length,l=a-1;for(;++s<a;){const d=o[s];let F=r;if(s!==l){const A=e[d];F=G(A)||Array.isArray(A)?A:isNaN(+o[s+1])?{}:[]}if(d==="__proto__"||d==="constructor"||d==="prototype")return;e[d]=F,e=e[d]}};const hr={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},de={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},nr=h.createContext(null);nr.displayName="HookFormContext";const ge=()=>h.useContext(nr),tt=e=>{const{children:t,...r}=e;return h.createElement(nr.Provider,{value:r},t)};var st=(e,t,r,s=!0)=>{const o={defaultValues:t._defaultValues};for(const a in e)Object.defineProperty(o,a,{get:()=>{const l=a;return t._proxyFormState[l]!==ie.all&&(t._proxyFormState[l]=!s||ie.all),e[l]}});return o};const ar=typeof window<"u"?h.useLayoutEffect:h.useEffect;var ne=e=>typeof e=="string",Ze=(e,t,r,s,o)=>ne(e)?(s&&t.watch.add(e),g(r,e,o)):Array.isArray(e)?e.map(a=>(s&&t.watch.add(a),g(r,a))):(s&&(t.watchAll=!0),r),Qe=e=>re(e)||!Rr(e);function ue(e,t,r=new WeakSet){if(Qe(e)||Qe(t))return Object.is(e,t);if(he(e)&&he(t))return e.getTime()===t.getTime();const s=Object.keys(e),o=Object.keys(t);if(s.length!==o.length)return!1;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);for(const a of s){const l=e[a];if(!o.includes(a))return!1;if(a!=="ref"){const d=t[a];if(he(l)&&he(d)||G(l)&&G(d)||Array.isArray(l)&&Array.isArray(d)?!ue(l,d,r):!Object.is(l,d))return!1}}return!0}function Sr(e){const t=ge(),{control:r=t.control,name:s,defaultValue:o,disabled:a,exact:l,compute:d}=e||{},F=h.useRef(o),A=h.useRef(d),I=h.useRef(void 0),p=h.useRef(r),R=h.useRef(s);A.current=d;const[b,U]=h.useState(()=>{const _=r._getWatch(s,F.current);return A.current?A.current(_):_}),$=h.useCallback(_=>{const m=Ze(s,r._names,_||r._formValues,!1,F.current);return A.current?A.current(m):m},[r._formValues,r._names,s]),W=h.useCallback(_=>{if(!a){const m=Ze(s,r._names,_||r._formValues,!1,F.current);if(A.current){const V=A.current(m);ue(V,I.current)||(U(V),I.current=V)}else U(m)}},[r._formValues,r._names,a,s]);ar(()=>((p.current!==r||!ue(R.current,s))&&(p.current=r,R.current=s,W()),r._subscribe({name:s,formState:{values:!0},exact:l,callback:_=>{W(_.values)}})),[r,l,s,W]),h.useEffect(()=>r._removeUnmounted());const B=p.current!==r,w=R.current,D=h.useMemo(()=>{if(a)return null;const _=!B&&!ue(w,s);return B||_?$():null},[a,B,s,w,$]);return D!==null?D:b}var nt=(e,t,r,s,o)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:o||!0}}:{},te=e=>Array.isArray(e)?e:[e],br=()=>{let e=[];return{get observers(){return e},next:o=>{for(const a of e)a.next&&a.next(o)},subscribe:o=>(e.push(o),{unsubscribe:()=>{e=e.filter(a=>a!==o)}}),unsubscribe:()=>{e=[]}}};function Tr(e,t){const r={};for(const s in e)if(e.hasOwnProperty(s)){const o=e[s],a=t[s];if(o&&G(o)&&a){const l=Tr(o,a);G(l)&&(r[s]=l)}else e[s]&&(r[s]=a)}return r}var Z=e=>G(e)&&!Object.keys(e).length,ir=e=>e.type==="file",je=e=>{if(!tr)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Or=e=>e.type==="select-multiple",or=e=>e.type==="radio",at=e=>or(e)||Oe(e),$e=e=>je(e)&&e.isConnected;function it(e,t){const r=t.slice(0,-1).length;let s=0;for(;s<r;)e=N(e)?s++:e[t[s++]];return e}function ot(e){for(const t in e)if(e.hasOwnProperty(t)&&!N(e[t]))return!1;return!0}function H(e,t){const r=Array.isArray(t)?t:Ie(t)?[t]:sr(t),s=r.length===1?e:it(e,r),o=r.length-1,a=r[o];return s&&delete s[a],o!==0&&(G(s)&&Z(s)||Array.isArray(s)&&ot(s))&&H(e,r.slice(0,-1)),e}var ut=e=>{for(const t in e)if(oe(e[t]))return!0;return!1};function Dr(e){return Array.isArray(e)||G(e)&&!ut(e)}function Ke(e,t={}){for(const r in e){const s=e[r];Dr(s)?(t[r]=Array.isArray(s)?[]:{},Ke(s,t[r])):N(s)||(t[r]=!0)}return t}function Ve(e,t,r){r||(r=Ke(t));for(const s in e){const o=e[s];if(Dr(o))N(t)||Qe(r[s])?r[s]=Ke(o,Array.isArray(o)?[]:{}):Ve(o,re(t)?{}:t[s],r[s]);else{const a=t[s];r[s]=!ue(o,a)}}return r}const xr={value:!1,isValid:!1},pr={value:!0,isValid:!0};var Cr=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!N(e[0].attributes.value)?N(e[0].value)||e[0].value===""?pr:{value:e[0].value,isValid:!0}:pr:xr}return xr},jr=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>N(e)?e:t?e===""?NaN:e&&+e:r&&ne(e)?new Date(e):s?s(e):e;const Ar={isValid:!1,value:null};var Pr=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,Ar):Ar;function Fr(e){const t=e.ref;return ir(t)?t.files:or(t)?Pr(e.refs).value:Or(t)?[...t.selectedOptions].map(({value:r})=>r):Oe(t)?Cr(e.refs).value:jr(N(t.value)?e.ref.value:t.value,e)}var lt=(e,t,r,s)=>{const o={};for(const a of e){const l=g(t,a);l&&P(o,a,l._f)}return{criteriaMode:r,names:[...e],fields:o,shouldUseNativeValidation:s}},Pe=e=>e instanceof RegExp,Te=e=>N(e)?e:Pe(e)?e.source:G(e)?Pe(e.value)?e.value.source:e.value:e,Ee=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const Vr="AsyncFunction";var ct=e=>!!e&&!!e.validate&&!!(oe(e.validate)&&e.validate.constructor.name===Vr||G(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===Vr)),dt=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),er=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const we=(e,t,r,s)=>{for(const o of r||Object.keys(e)){const a=g(e,o);if(a){const{_f:l,...d}=a;if(l){if(l.refs&&l.refs[0]&&t(l.refs[0],o)&&!s)return!0;if(l.ref&&t(l.ref,l.name)&&!s)return!0;if(we(d,t))break}else if(G(d)&&we(d,t))break}}};function Er(e,t,r){const s=g(e,r);if(s||Ie(r))return{error:s,name:r};const o=r.split(".");for(;o.length;){const a=o.join("."),l=g(t,a),d=g(e,a);if(l&&!Array.isArray(l)&&r!==a)return{name:r};if(d&&d.type)return{name:a,error:d};if(d&&d.root&&d.root.type)return{name:`${a}.root`,error:d.root};o.pop()}return{name:r}}var ft=(e,t,r,s)=>{r(e);const{name:o,...a}=e;return Z(a)||Object.keys(a).length>=Object.keys(t).length||Object.keys(a).find(l=>t[l]===(!s||ie.all))},yt=(e,t,r)=>!e||!t||e===t||te(e).some(s=>s&&(r?s===t:s.startsWith(t)||t.startsWith(s))),mt=(e,t,r,s,o)=>o.isOnAll?!1:!r&&o.isOnTouch?!(t||e):(r?s.isOnBlur:o.isOnBlur)?!e:(r?s.isOnChange:o.isOnChange)?e:!0,_t=(e,t)=>!Me(g(e,t)).length&&H(e,t),Nr=(e,t,r)=>{const s=te(g(e,r));return P(s,"root",t[r]),P(e,r,s),e};function wr(e,t,r="validate"){if(ne(e)||Array.isArray(e)&&e.every(ne)||ce(e)&&!e)return{type:r,message:ne(e)?e:"",ref:t}}var Fe=e=>G(e)&&!Pe(e)?e:{value:e,message:""},rr=async(e,t,r,s,o,a)=>{const{ref:l,refs:d,required:F,maxLength:A,minLength:I,min:p,max:R,pattern:b,validate:U,name:$,valueAsNumber:W,mount:B}=e._f,w=g(r,$);if(!B||t.has($))return{};const D=d?d[0]:l,_=k=>{o&&D.reportValidity&&(D.setCustomValidity(ce(k)?"":k||""),D.reportValidity())},m={},V=or(l),C=Oe(l),Q=V||C,se=(W||ir(l))&&N(l.value)&&N(w)||je(l)&&l.value===""||w===""||Array.isArray(w)&&!w.length,K=nt.bind(null,$,s,m),be=(k,S,q,J=de.maxLength,ee=de.minLength)=>{const X=k?S:q;m[$]={type:k?J:ee,message:X,ref:l,...K(k?J:ee,X)}};if(a?!Array.isArray(w)||!w.length:F&&(!Q&&(se||re(w))||ce(w)&&!w||C&&!Cr(d).isValid||V&&!Pr(d).isValid)){const{value:k,message:S}=ne(F)?{value:!!F,message:F}:Fe(F);if(k&&(m[$]={type:de.required,message:S,ref:D,...K(de.required,S)},!s))return _(S),m}if(!se&&(!re(p)||!re(R))){let k,S;const q=Fe(R),J=Fe(p);if(!re(w)&&!isNaN(w)){const ee=l.valueAsNumber||w&&+w;re(q.value)||(k=ee>q.value),re(J.value)||(S=ee<J.value)}else{const ee=l.valueAsDate||new Date(w),X=me=>new Date(new Date().toDateString()+" "+me),fe=l.type=="time",ye=l.type=="week";ne(q.value)&&w&&(k=fe?X(w)>X(q.value):ye?w>q.value:ee>new Date(q.value)),ne(J.value)&&w&&(S=fe?X(w)<X(J.value):ye?w<J.value:ee<new Date(J.value))}if((k||S)&&(be(!!k,q.message,J.message,de.max,de.min),!s))return _(m[$].message),m}if((A||I)&&!se&&(ne(w)||a&&Array.isArray(w))){const k=Fe(A),S=Fe(I),q=!re(k.value)&&w.length>+k.value,J=!re(S.value)&&w.length<+S.value;if((q||J)&&(be(q,k.message,S.message),!s))return _(m[$].message),m}if(b&&!se&&ne(w)){const{value:k,message:S}=Fe(b);if(Pe(k)&&!w.match(k)&&(m[$]={type:de.pattern,message:S,ref:l,...K(de.pattern,S)},!s))return _(S),m}if(U){if(oe(U)){const k=await U(w,r),S=wr(k,D);if(S&&(m[$]={...S,...K(de.validate,S.message)},!s))return _(S.message),m}else if(G(U)){let k={};for(const S in U){if(!Z(k)&&!s)break;const q=wr(await U[S](w,r),D,S);q&&(k={...q,...K(S,q.message)},_(q.message),s&&(m[$]=k))}if(!Z(k)&&(m[$]={ref:D,...k},!s))return m}}return _(!0),m};const vt={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function gt(e={}){let t={...vt,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:oe(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},s={},o=G(t.defaultValues)||G(t.values)?L(t.defaultValues||t.values)||{}:{},a=t.shouldUnregister?{}:L(o),l={action:!1,mount:!1,watch:!1,keepIsValid:!1},d={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},F,A=0;const I={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},p={...I};let R={...p};const b={array:br(),state:br()},U=t.criteriaMode===ie.all,$=n=>i=>{clearTimeout(A),A=setTimeout(n,i)},W=async n=>{if(!l.keepIsValid&&!t.disabled&&(p.isValid||R.isValid||n)){let i;t.resolver?(i=Z((await Q()).errors),B()):i=await K(s,!0),i!==r.isValid&&b.state.next({isValid:i})}},B=(n,i)=>{!t.disabled&&(p.isValidating||p.validatingFields||R.isValidating||R.validatingFields)&&((n||Array.from(d.mount)).forEach(u=>{u&&(i?P(r.validatingFields,u,i):H(r.validatingFields,u))}),b.state.next({validatingFields:r.validatingFields,isValidating:!Z(r.validatingFields)}))},w=(n,i=[],u,v,y=!0,f=!0)=>{if(v&&u&&!t.disabled){if(l.action=!0,f&&Array.isArray(g(s,n))){const x=u(g(s,n),v.argA,v.argB);y&&P(s,n,x)}if(f&&Array.isArray(g(r.errors,n))){const x=u(g(r.errors,n),v.argA,v.argB);y&&P(r.errors,n,x),_t(r.errors,n)}if((p.touchedFields||R.touchedFields)&&f&&Array.isArray(g(r.touchedFields,n))){const x=u(g(r.touchedFields,n),v.argA,v.argB);y&&P(r.touchedFields,n,x)}(p.dirtyFields||R.dirtyFields)&&(r.dirtyFields=Ve(o,a)),b.state.next({name:n,isDirty:k(n,i),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else P(a,n,i)},D=(n,i)=>{P(r.errors,n,i),b.state.next({errors:r.errors})},_=n=>{r.errors=n,b.state.next({errors:r.errors,isValid:!1})},m=(n,i,u,v)=>{const y=g(s,n);if(y){const f=g(a,n,N(u)?g(o,n):u);N(f)||v&&v.defaultChecked||i?P(a,n,i?f:Fr(y._f)):J(n,f),l.mount&&!l.action&&W()}},V=(n,i,u,v,y)=>{let f=!1,x=!1;const O={name:n};if(!t.disabled){if(!u||v){(p.isDirty||R.isDirty)&&(x=r.isDirty,r.isDirty=O.isDirty=k(),f=x!==O.isDirty);const j=ue(g(o,n),i);x=!!g(r.dirtyFields,n),j?H(r.dirtyFields,n):P(r.dirtyFields,n,!0),O.dirtyFields=r.dirtyFields,f=f||(p.dirtyFields||R.dirtyFields)&&x!==!j}if(u){const j=g(r.touchedFields,n);j||(P(r.touchedFields,n,u),O.touchedFields=r.touchedFields,f=f||(p.touchedFields||R.touchedFields)&&j!==u)}f&&y&&b.state.next(O)}return f?O:{}},C=(n,i,u,v)=>{const y=g(r.errors,n),f=(p.isValid||R.isValid)&&ce(i)&&r.isValid!==i;if(t.delayError&&u?(F=$(()=>D(n,u)),F(t.delayError)):(clearTimeout(A),F=null,u?P(r.errors,n,u):H(r.errors,n)),(u?!ue(y,u):y)||!Z(v)||f){const x={...v,...f&&ce(i)?{isValid:i}:{},errors:r.errors,name:n};r={...r,...x},b.state.next(x)}},Q=async n=>(B(n,!0),await t.resolver(a,t.context,lt(n||d.mount,s,t.criteriaMode,t.shouldUseNativeValidation))),se=async n=>{const{errors:i}=await Q(n);if(B(n),n)for(const u of n){const v=g(i,u);v?P(r.errors,u,v):H(r.errors,u)}else r.errors=i;return i},K=async(n,i,u={valid:!0})=>{for(const v in n){const y=n[v];if(y){const{_f:f,...x}=y;if(f){const O=d.array.has(f.name),j=y._f&&ct(y._f);j&&p.validatingFields&&B([f.name],!0);const ae=await rr(y,d.disabled,a,U,t.shouldUseNativeValidation&&!i,O);if(j&&p.validatingFields&&B([f.name]),ae[f.name]&&(u.valid=!1,i))break;!i&&(g(ae,f.name)?O?Nr(r.errors,ae,f.name):P(r.errors,f.name,ae[f.name]):H(r.errors,f.name))}!Z(x)&&await K(x,i,u)}}return u.valid},be=()=>{for(const n of d.unMount){const i=g(s,n);i&&(i._f.refs?i._f.refs.every(u=>!$e(u)):!$e(i._f.ref))&&le(n)}d.unMount=new Set},k=(n,i)=>!t.disabled&&(n&&i&&P(a,n,i),!ue(c(),o)),S=(n,i,u)=>Ze(n,d,{...l.mount?a:N(i)?o:ne(n)?{[n]:i}:i},u,i),q=n=>Me(g(l.mount?a:o,n,t.shouldUnregister?g(o,n,[]):[])),J=(n,i,u={})=>{const v=g(s,n);let y=i;if(v){const f=v._f;f&&(!f.disabled&&P(a,n,jr(i,f)),y=je(f.ref)&&re(i)?"":i,Or(f.ref)?[...f.ref.options].forEach(x=>x.selected=y.includes(x.value)):f.refs?Oe(f.ref)?f.refs.forEach(x=>{(!x.defaultChecked||!x.disabled)&&(Array.isArray(y)?x.checked=!!y.find(O=>O===x.value):x.checked=y===x.value||!!y)}):f.refs.forEach(x=>x.checked=x.value===y):ir(f.ref)?f.ref.value="":(f.ref.value=y,f.ref.type||b.state.next({name:n,values:L(a)})))}(u.shouldDirty||u.shouldTouch)&&V(n,y,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&me(n)},ee=(n,i,u)=>{for(const v in i){if(!i.hasOwnProperty(v))return;const y=i[v],f=n+"."+v,x=g(s,f);(d.array.has(n)||G(y)||x&&!x._f)&&!he(y)?ee(f,y,u):J(f,y,u)}},X=(n,i,u={})=>{const v=g(s,n),y=d.array.has(n),f=L(i);P(a,n,f),y?(b.array.next({name:n,values:L(a)}),(p.isDirty||p.dirtyFields||R.isDirty||R.dirtyFields)&&u.shouldDirty&&b.state.next({name:n,dirtyFields:Ve(o,a),isDirty:k(n,f)})):v&&!v._f&&!re(f)?ee(n,f,u):J(n,f,u),er(n,d)&&b.state.next({...r,name:n}),b.state.next({name:l.mount?n:void 0,values:L(a)})},fe=async n=>{l.mount=!0;const i=n.target;let u=i.name,v=!0;const y=g(s,u),f=j=>{v=Number.isNaN(j)||he(j)&&isNaN(j.getTime())||ue(j,g(a,u,j))},x=Ee(t.mode),O=Ee(t.reValidateMode);if(y){let j,ae;const De=i.type?Fr(y._f):Qr(n),_e=n.type===hr.BLUR||n.type===hr.FOCUS_OUT,zr=!dt(y._f)&&!t.resolver&&!g(r.errors,u)&&!y._f.deps||mt(_e,g(r.touchedFields,u),r.isSubmitted,O,x),Ue=er(u,d,_e);P(a,u,De),_e?(!i||!i.readOnly)&&(y._f.onBlur&&y._f.onBlur(n),F&&F(0)):y._f.onChange&&y._f.onChange(n);const Be=V(u,De,_e),Hr=!Z(Be)||Ue;if(!_e&&b.state.next({name:u,type:n.type,values:L(a)}),zr)return(p.isValid||R.isValid)&&(t.mode==="onBlur"?_e&&W():_e||W()),Hr&&b.state.next({name:u,...Ue?{}:Be});if(!_e&&Ue&&b.state.next({...r}),t.resolver){const{errors:yr}=await Q([u]);if(B([u]),f(De),v){const Jr=Er(r.errors,s,u),mr=Er(yr,s,Jr.name||u);j=mr.error,u=mr.name,ae=Z(yr)}}else B([u],!0),j=(await rr(y,d.disabled,a,U,t.shouldUseNativeValidation))[u],B([u]),f(De),v&&(j?ae=!1:(p.isValid||R.isValid)&&(ae=await K(s,!0)));v&&(y._f.deps&&(!Array.isArray(y._f.deps)||y._f.deps.length>0)&&me(y._f.deps),C(u,ae,j,Be))}},ye=(n,i)=>{if(g(r.errors,i)&&n.focus)return n.focus(),1},me=async(n,i={})=>{let u,v;const y=te(n);if(t.resolver){const f=await se(N(n)?n:y);u=Z(f),v=n?!y.some(x=>g(f,x)):u}else n?(v=(await Promise.all(y.map(async f=>{const x=g(s,f);return await K(x&&x._f?{[f]:x}:x)}))).every(Boolean),!(!v&&!r.isValid)&&W()):v=u=await K(s);return b.state.next({...!ne(n)||(p.isValid||R.isValid)&&u!==r.isValid?{}:{name:n},...t.resolver||!n?{isValid:u}:{},errors:r.errors}),i.shouldFocus&&!v&&we(s,ye,n?y:d.mount),v},c=(n,i)=>{let u={...l.mount?a:o};return i&&(u=Tr(i.dirtyFields?r.dirtyFields:r.touchedFields,u)),N(n)?u:ne(n)?g(u,n):n.map(v=>g(u,v))},E=(n,i)=>({invalid:!!g((i||r).errors,n),isDirty:!!g((i||r).dirtyFields,n),error:g((i||r).errors,n),isValidating:!!g(r.validatingFields,n),isTouched:!!g((i||r).touchedFields,n)}),M=n=>{n&&te(n).forEach(i=>H(r.errors,i)),b.state.next({errors:n?r.errors:{}})},Y=(n,i,u)=>{const v=(g(s,n,{_f:{}})._f||{}).ref,y=g(r.errors,n)||{},{ref:f,message:x,type:O,...j}=y;P(r.errors,n,{...j,...i,ref:v}),b.state.next({name:n,errors:r.errors,isValid:!1}),u&&u.shouldFocus&&v&&v.focus&&v.focus()},xe=(n,i)=>oe(n)?b.state.subscribe({next:u=>"values"in u&&n(S(void 0,i),u)}):S(n,i,!0),pe=n=>b.state.subscribe({next:i=>{yt(n.name,i.name,n.exact)&&ft(i,n.formState||p,qr,n.reRenderRoot)&&n.callback({values:{...a},...r,...i,defaultValues:o})}}).unsubscribe,z=n=>(l.mount=!0,R={...R,...n.formState},pe({...n,formState:{...I,...n.formState}})),le=(n,i={})=>{for(const u of n?te(n):d.mount)d.mount.delete(u),d.array.delete(u),i.keepValue||(H(s,u),H(a,u)),!i.keepError&&H(r.errors,u),!i.keepDirty&&H(r.dirtyFields,u),!i.keepTouched&&H(r.touchedFields,u),!i.keepIsValidating&&H(r.validatingFields,u),!t.shouldUnregister&&!i.keepDefaultValue&&H(o,u);b.state.next({values:L(a)}),b.state.next({...r,...i.keepDirty?{isDirty:k()}:{}}),!i.keepIsValid&&W()},Ae=({disabled:n,name:i})=>{(ce(n)&&l.mount||n||d.disabled.has(i))&&(n?d.disabled.add(i):d.disabled.delete(i))},ke=(n,i={})=>{let u=g(s,n);const v=ce(i.disabled)||ce(t.disabled);return P(s,n,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:n}},name:n,mount:!0,...i}}),d.mount.add(n),u?Ae({disabled:ce(i.disabled)?i.disabled:t.disabled,name:n}):m(n,!0,i.value),{...v?{disabled:i.disabled||t.disabled}:{},...t.progressive?{required:!!i.required,min:Te(i.min),max:Te(i.max),minLength:Te(i.minLength),maxLength:Te(i.maxLength),pattern:Te(i.pattern)}:{},name:n,onChange:fe,onBlur:fe,ref:y=>{if(y){ke(n,i),u=g(s,n);const f=N(y.value)&&y.querySelectorAll&&y.querySelectorAll("input,select,textarea")[0]||y,x=at(f),O=u._f.refs||[];if(x?O.find(j=>j===f):f===u._f.ref)return;P(s,n,{_f:{...u._f,...x?{refs:[...O.filter($e),f,...Array.isArray(g(o,n))?[{}]:[]],ref:{type:f.type,name:n}}:{ref:f}}}),m(n,!1,void 0,f)}else u=g(s,n,{}),u._f&&(u._f.mount=!1),(t.shouldUnregister||i.shouldUnregister)&&!(et(d.array,n)&&l.action)&&d.unMount.add(n)}}},Le=()=>t.shouldFocusError&&we(s,ye,d.mount),$r=n=>{ce(n)&&(b.state.next({disabled:n}),we(s,(i,u)=>{const v=g(s,u);v&&(i.disabled=v._f.disabled||n,Array.isArray(v._f.refs)&&v._f.refs.forEach(y=>{y.disabled=v._f.disabled||n}))},0,!1))},lr=(n,i)=>async u=>{let v;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let y=L(a);if(b.state.next({isSubmitting:!0}),t.resolver){const{errors:f,values:x}=await Q();B(),r.errors=f,y=L(x)}else await K(s);if(d.disabled.size)for(const f of d.disabled)H(y,f);if(H(r.errors,"root"),Z(r.errors)){b.state.next({errors:{}});try{await n(y,u)}catch(f){v=f}}else i&&await i({...r.errors},u),Le(),setTimeout(Le);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Z(r.errors)&&!v,submitCount:r.submitCount+1,errors:r.errors}),v)throw v},Wr=(n,i={})=>{g(s,n)&&(N(i.defaultValue)?X(n,L(g(o,n))):(X(n,i.defaultValue),P(o,n,L(i.defaultValue))),i.keepTouched||H(r.touchedFields,n),i.keepDirty||(H(r.dirtyFields,n),r.isDirty=i.defaultValue?k(n,L(g(o,n))):k()),i.keepError||(H(r.errors,n),p.isValid&&W()),b.state.next({...r}))},cr=(n,i={})=>{const u=n?L(n):o,v=L(u),y=Z(n),f=y?o:v;if(i.keepDefaultValues||(o=u),!i.keepValues){if(i.keepDirtyValues){const x=new Set([...d.mount,...Object.keys(Ve(o,a))]);for(const O of Array.from(x))g(r.dirtyFields,O)?P(f,O,g(a,O)):X(O,g(f,O))}else{if(tr&&N(n))for(const x of d.mount){const O=g(s,x);if(O&&O._f){const j=Array.isArray(O._f.refs)?O._f.refs[0]:O._f.ref;if(je(j)){const ae=j.closest("form");if(ae){ae.reset();break}}}}if(i.keepFieldsRef)for(const x of d.mount)X(x,g(f,x));else s={}}a=t.shouldUnregister?i.keepDefaultValues?L(o):{}:L(f),b.array.next({values:{...f}}),b.state.next({values:{...f}})}d={mount:i.keepDirtyValues?d.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},l.mount=!p.isValid||!!i.keepIsValid||!!i.keepDirtyValues||!t.shouldUnregister&&!Z(f),l.watch=!!t.shouldUnregister,l.keepIsValid=!!i.keepIsValid,l.action=!1,i.keepErrors||(r.errors={}),b.state.next({submitCount:i.keepSubmitCount?r.submitCount:0,isDirty:y?!1:i.keepDirty?r.isDirty:!!(i.keepDefaultValues&&!ue(n,o)),isSubmitted:i.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:y?{}:i.keepDirtyValues?i.keepDefaultValues&&a?Ve(o,a):r.dirtyFields:i.keepDefaultValues&&n?Ve(o,n):i.keepDirty?r.dirtyFields:{},touchedFields:i.keepTouched?r.touchedFields:{},errors:i.keepErrors?r.errors:{},isSubmitSuccessful:i.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:o})},dr=(n,i)=>cr(oe(n)?n(a):n,{...t.resetOptions,...i}),Yr=(n,i={})=>{const u=g(s,n),v=u&&u._f;if(v){const y=v.refs?v.refs[0]:v.ref;y.focus&&setTimeout(()=>{y.focus(),i.shouldSelect&&oe(y.select)&&y.select()})}},qr=n=>{r={...r,...n}},fr={control:{register:ke,unregister:le,getFieldState:E,handleSubmit:lr,setError:Y,_subscribe:pe,_runSchema:Q,_updateIsValidating:B,_focusError:Le,_getWatch:S,_getDirty:k,_setValid:W,_setFieldArray:w,_setDisabledField:Ae,_setErrors:_,_getFieldArray:q,_reset:cr,_resetDefaultValues:()=>oe(t.defaultValues)&&t.defaultValues().then(n=>{dr(n,t.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:be,_disableForm:$r,_subjects:b,_proxyFormState:p,get _fields(){return s},get _formValues(){return a},get _state(){return l},set _state(n){l=n},get _defaultValues(){return o},get _names(){return d},set _names(n){d=n},get _formState(){return r},get _options(){return t},set _options(n){t={...t,...n}}},subscribe:z,trigger:me,register:ke,handleSubmit:lr,watch:xe,setValue:X,getValues:c,reset:dr,resetField:Wr,clearErrors:M,unregister:le,setError:Y,setFocus:Yr,getFieldState:E};return{...fr,formControl:fr}}var ve=()=>{if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID();const e=typeof performance>"u"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const r=(Math.random()*16+e)%16|0;return(t=="x"?r:r&3|8).toString(16)})},We=(e,t,r={})=>r.shouldFocus||N(r.shouldFocus)?r.focusName||`${e}.${N(r.focusIndex)?t:r.focusIndex}.`:"",Ye=(e,t)=>[...e,...te(t)],qe=e=>Array.isArray(e)?e.map(()=>{}):void 0;function ze(e,t,r){return[...e.slice(0,t),...te(r),...e.slice(t)]}var He=(e,t,r)=>Array.isArray(e)?(N(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[],Je=(e,t)=>[...te(t),...te(e)];function ht(e,t){let r=0;const s=[...e];for(const o of t)s.splice(o-r,1),r++;return Me(s).length?s:[]}var Ge=(e,t)=>N(t)?[]:ht(e,te(t).sort((r,s)=>r-s)),Xe=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]},kr=(e,t,r)=>(e[t]=r,e);function bt(e){const t=ge(),{control:r=t.control,name:s,keyName:o="id",shouldUnregister:a,rules:l}=e,[d,F]=h.useState(r._getFieldArray(s)),A=h.useRef(r._getFieldArray(s).map(ve)),I=h.useRef(!1);r._names.array.add(s),h.useMemo(()=>l&&d.length>=0&&r.register(s,l),[r,s,d.length,l]),ar(()=>r._subjects.array.subscribe({next:({values:_,name:m})=>{if(m===s||!m){const V=g(_,s);Array.isArray(V)&&(F(V),A.current=V.map(ve))}}}).unsubscribe,[r,s]);const p=h.useCallback(_=>{I.current=!0,r._setFieldArray(s,_)},[r,s]),R=(_,m)=>{const V=te(L(_)),C=Ye(r._getFieldArray(s),V);r._names.focus=We(s,C.length-1,m),A.current=Ye(A.current,V.map(ve)),p(C),F(C),r._setFieldArray(s,C,Ye,{argA:qe(_)})},b=(_,m)=>{const V=te(L(_)),C=Je(r._getFieldArray(s),V);r._names.focus=We(s,0,m),A.current=Je(A.current,V.map(ve)),p(C),F(C),r._setFieldArray(s,C,Je,{argA:qe(_)})},U=_=>{const m=Ge(r._getFieldArray(s),_);A.current=Ge(A.current,_),p(m),F(m),!Array.isArray(g(r._fields,s))&&P(r._fields,s,void 0),r._setFieldArray(s,m,Ge,{argA:_})},$=(_,m,V)=>{const C=te(L(m)),Q=ze(r._getFieldArray(s),_,C);r._names.focus=We(s,_,V),A.current=ze(A.current,_,C.map(ve)),p(Q),F(Q),r._setFieldArray(s,Q,ze,{argA:_,argB:qe(m)})},W=(_,m)=>{const V=r._getFieldArray(s);Xe(V,_,m),Xe(A.current,_,m),p(V),F(V),r._setFieldArray(s,V,Xe,{argA:_,argB:m},!1)},B=(_,m)=>{const V=r._getFieldArray(s);He(V,_,m),He(A.current,_,m),p(V),F(V),r._setFieldArray(s,V,He,{argA:_,argB:m},!1)},w=(_,m)=>{const V=L(m),C=kr(r._getFieldArray(s),_,V);A.current=[...C].map((Q,se)=>!Q||se===_?ve():A.current[se]),p(C),F([...C]),r._setFieldArray(s,C,kr,{argA:_,argB:V},!0,!1)},D=_=>{const m=te(L(_));A.current=m.map(ve),p([...m]),F([...m]),r._setFieldArray(s,[...m],V=>V,{},!0,!1)};return h.useEffect(()=>{if(r._state.action=!1,er(s,r._names)&&r._subjects.state.next({...r._formState}),I.current&&(!Ee(r._options.mode).isOnSubmit||r._formState.isSubmitted)&&!Ee(r._options.reValidateMode).isOnSubmit)if(r._options.resolver)r._runSchema([s]).then(_=>{r._updateIsValidating([s]);const m=g(_.errors,s),V=g(r._formState.errors,s);(V?!m&&V.type||m&&(V.type!==m.type||V.message!==m.message):m&&m.type)&&(m?P(r._formState.errors,s,m):H(r._formState.errors,s),r._subjects.state.next({errors:r._formState.errors}))});else{const _=g(r._fields,s);_&&_._f&&!(Ee(r._options.reValidateMode).isOnSubmit&&Ee(r._options.mode).isOnSubmit)&&rr(_,r._names.disabled,r._formValues,r._options.criteriaMode===ie.all,r._options.shouldUseNativeValidation,!0).then(m=>!Z(m)&&r._subjects.state.next({errors:Nr(r._formState.errors,m,s)}))}r._subjects.state.next({name:s,values:L(r._formValues)}),r._names.focus&&we(r._fields,(_,m)=>{if(r._names.focus&&m.startsWith(r._names.focus)&&_.focus)return _.focus(),1}),r._names.focus="",r._setValid(),I.current=!1},[d,s,r]),h.useEffect(()=>(!g(r._formValues,s)&&r._setFieldArray(s),()=>{const _=(m,V)=>{const C=g(r._fields,m);C&&C._f&&(C._f.mount=V)};r._options.shouldUnregister||a?r.unregister(s):_(s,!1)}),[s,r,o,a]),{swap:h.useCallback(W,[p,s,r]),move:h.useCallback(B,[p,s,r]),prepend:h.useCallback(b,[p,s,r]),append:h.useCallback(R,[p,s,r]),remove:h.useCallback(U,[p,s,r]),insert:h.useCallback($,[p,s,r]),update:h.useCallback(w,[p,s,r]),replace:h.useCallback(D,[p,s,r]),fields:h.useMemo(()=>d.map((_,m)=>({..._,[o]:A.current[m]||ve()})),[d,o])}}function xt(e={}){const t=h.useRef(void 0),r=h.useRef(void 0),[s,o]=h.useState({isDirty:!1,isValidating:!1,isLoading:oe(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:oe(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:s},e.defaultValues&&!oe(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:l,...d}=gt(e);t.current={...d,formState:s}}const a=t.current.control;return a._options=e,ar(()=>{const l=a._subscribe({formState:a._proxyFormState,callback:()=>o({...a._formState}),reRenderRoot:!0});return o(d=>({...d,isReady:!0})),a._formState.isReady=!0,l},[a]),h.useEffect(()=>a._disableForm(e.disabled),[a,e.disabled]),h.useEffect(()=>{e.mode&&(a._options.mode=e.mode),e.reValidateMode&&(a._options.reValidateMode=e.reValidateMode)},[a,e.mode,e.reValidateMode]),h.useEffect(()=>{e.errors&&(a._setErrors(e.errors),a._focusError())},[a,e.errors]),h.useEffect(()=>{e.shouldUnregister&&a._subjects.state.next({values:a._getWatch()})},[a,e.shouldUnregister]),h.useEffect(()=>{if(a._proxyFormState.isDirty){const l=a._getDirty();l!==s.isDirty&&a._subjects.state.next({isDirty:l})}},[a,s.isDirty]),h.useEffect(()=>{var l;e.values&&!ue(e.values,r.current)?(a._reset(e.values,{keepFieldsRef:!0,...a._options.resetOptions}),!((l=a._options.resetOptions)===null||l===void 0)&&l.keepIsValid||a._setValid(),r.current=e.values,o(d=>({...d}))):a._resetDefaultValues()},[a,e.values]),h.useEffect(()=>{a._state.mount||(a._setValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()}),t.current.formState=st(s,a),t.current}function pt(e,t){const r={};return e.forEach((s,o)=>{const a=s.split(".");let l=r;a.forEach((d,F)=>{const A=F===a.length-1,I=!isNaN(Number(d));A?l[d]=t[o]:(d in l||(l[d]=I?[]:{}),l=l[d])})}),r}function At(e){switch(e){case"text":return"";case"number":return 0;case"array":return[];case"checkbox":return!1;case"object":return{};case"select":return null;case"date":return new Date().toISOString().slice(0,10);case"datetime-local":return new Date().toISOString().slice(0,16);case"time":return new Date().toISOString().slice(11,16);default:return""}}function Ir(e){return e.replace(/\.\d+\./g,".")}function Ft(e,t){const r=e.split("."),s=[];return r.forEach((o,a)=>{isNaN(Number(o))||s.push({pos:a,value:o})}),t.map(o=>{const l=[...o.split(".")];return s.forEach(({pos:d,value:F})=>{d<=l.length&&l.splice(d,0,F)}),l.join(".")})}function Ne(e,t={}){const r={};for(const s of e)if(s.type==="object"){const o=s.fields;r[s.name]=Ne(o,t==null?void 0:t[s.name])}else r[s.name]=(t==null?void 0:t[s.name])??s.initialValue??At(s.type);return r}const Vt=e=>{const{fieldSchema:t}=e,r=t.fields,{control:s}=ge(),{fields:o,append:a}=bt({name:t.name,control:s}),l=()=>{a(Ne(r))};return T.jsxs("div",{children:[o.map((d,F)=>{const A=r.map(I=>({...I,name:`${t.name}.${F}.${I.name}`}));return T.jsxs(h.Fragment,{children:[T.jsxs("div",{children:["row ",F]}),ur(A)]},d.id)}),t.readonly!==!0&&T.jsx("button",{onClick:l,children:"Add Row"})]})},Mr=h.createContext(null),Et=({children:e,layout:t="vertical",uiConfig:r,updateFieldSchema:s})=>{const o=h.useMemo(()=>({layout:t,uiConfig:r,updateFieldSchema:s}),[t,r,s]);return T.jsx(Mr.Provider,{value:o,children:e})},Lr=()=>{const e=h.useContext(Mr);if(!e)throw new Error("useAutoFormRenderContext must be used within AutoFormRenderContextProvider");return e},wt=e=>{const{fieldSchema:t}=e,{register:r}=ge(),s=r(t.name);return T.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[T.jsx("label",{children:t.label}),T.jsx("input",{type:t.type,...s,readOnly:t.readonly})]})},kt=["text","number","checkbox","select","date","datetime-local","time","array","object"],Rt=e=>{const{fieldSchema:t}=e,{register:r}=ge(),s=r(t.name),o=t.options;return T.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[T.jsx("label",{children:t.label}),T.jsx("select",{...s,disabled:t.readonly,children:o.map(a=>T.jsx("option",{value:a.value,children:a.label},a.value))})]})},Ur=({fieldSchema:e})=>{var F,A;const r=Lr().uiConfig,{register:s}=ge(),o=Ir(e.name),a=s(e.name);if(e.visible===!1)return;const l=(F=r==null?void 0:r.renderersByName)==null?void 0:F[o];if(l)return T.jsx(l,{fieldSchema:e,register:a});const d=(A=r==null?void 0:r.renderersByType)==null?void 0:A[e.type];if(d)return T.jsx(d,{fieldSchema:e,register:a});if(kt.includes(e.type))return e.type==="select"?T.jsx(Rt,{fieldSchema:e}):T.jsx(wt,{fieldSchema:e});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.`)},St=({fieldSchema:e})=>T.jsx(Ur,{fieldSchema:e}),Tt=({fieldSchema:e})=>{const{control:t}=ge(),r=Lr(),s=e.dependsOn??[],o=h.useMemo(()=>Ft(e.name,s),[e.name,s]),a=Sr({control:t,name:o}),[l,d]=h.useState(e);return h.useEffect(()=>{if(!s.length)return;let F=!1;return(async()=>{var U;const I=Ir(e.name),p=pt(o,a??[]),R=(U=r==null?void 0:r.updateFieldSchema)==null?void 0:U[I];if(!R)return;const b=await R(e.name,e,p);!F&&b&&d({...e,...b})})(),()=>{F=!0}},[a]),T.jsx(Ur,{fieldSchema:l})},Ot=e=>{var r;const{fieldSchema:t}=e;return(r=t.dependsOn)!=null&&r.length?T.jsx(Tt,{fieldSchema:t}):T.jsx(St,{fieldSchema:t})},Dt=e=>{const{fieldSchema:t}=e;return T.jsx(Ot,{fieldSchema:t})},Ct=e=>{const{fieldSchema:t}=e;let r=h.useMemo(()=>t.fields.map(s=>({...s,name:`${t.name}.${s.name}`})),[t.fields]);return T.jsx(T.Fragment,{children:ur(r)})};function ur(e){return e.map(t=>{switch(t.type){case"array":return T.jsx(Vt,{fieldSchema:t},t.name);case"object":return T.jsx(Ct,{fieldSchema:t},t.name);default:return T.jsx(Dt,{fieldSchema:t},t.name)}})}function Br(e){return e.map(t=>{if(["object","array"].includes(t.type)){const r=t.fields;return{...t,readonly:!0,fields:Br(r)}}return{...t,readonly:!0}})}const jt=e=>{const{onDirtyChange:t,onValuesChange:r}=e,{formState:s,control:o}=ge(),a=Sr({control:o});return h.useEffect(()=>{r(a)},[a]),h.useEffect(()=>{t(s.isDirty)},[s.isDirty]),null},Pt=({onValuesChange:e,onDirtyChange:t})=>(jt({onDirtyChange:t,onValuesChange:e}),null),Nt=h.forwardRef((e,t)=>{const{schema:r,onSubmit:s,uiConfig:o={renderersByName:{},renderersByType:{}},updateFieldSchema:a={},layout:l="vertical",values:d=()=>({}),hideSubmit:F=!1,onDirtyChange:A=()=>{},onValuesChange:I=()=>{},resolver:p,readonly:R}=e,b=xt({reValidateMode:"onSubmit",criteriaMode:"all",resolver:p}),U=h.useRef(!1),$=b.handleSubmit(s),W=h.useMemo(()=>{let D=r;return R&&(D=Br(D)),D},[R,r]);h.useEffect(()=>{if(U.current)return;let D=!1;return(async()=>{const m=await d();D||(b.reset(Ne(r,m)),U.current=!0)})(),()=>{D=!0}},[d,r]),h.useImperativeHandle(t,()=>({submit:async()=>{await b.handleSubmit(s)()},reset:D=>{b.reset(D?Ne(r,D):void 0)},getValues:()=>b.getValues(),setValue:(D,_)=>{b.setValue(D,_)}}));const B=h.useMemo(()=>ur(W),[W]),w=F||R;return T.jsxs(tt,{...b,children:[T.jsx(Pt,{onDirtyChange:A,onValuesChange:I}),T.jsxs(Et,{layout:l,uiConfig:o,updateFieldSchema:a,children:[["vertical","horizontal"].includes(l)&&T.jsx("div",{style:{display:"flex",flexDirection:l==="vertical"?"column":"row"},children:B}),l==="custom"&&B,!w&&T.jsx("button",{style:{marginTop:"1rem"},onClick:$,children:"Submit"})]})]})});exports.AutoForm=Nt;
22
+ <%s key={someKey} {...props} />`,Y,z,le,z),me[z+Y]=!0)}if(z=null,M!==void 0&&(r(M),z=""+M),l(E)&&(r(E.key),z=""+E.key),"key"in E){M={};for(var Ae in E)Ae!=="key"&&(M[Ae]=E[Ae])}else M=E;return z&&d(M,typeof c=="function"?c.displayName||c.name||"Unknown":c),A(c,z,M,o(),xe,pe)}function p(c){R(c)?c._store&&(c._store.validated=1):typeof c=="object"&&c!==null&&c.$$typeof===se&&(c._payload.status==="fulfilled"?R(c._payload.value)&&c._payload.value._store&&(c._payload.value._store.validated=1):c._store&&(c._store.validated=1))}function R(c){return typeof c=="object"&&c!==null&&c.$$typeof===U}var b=h,U=Symbol.for("react.transitional.element"),$=Symbol.for("react.portal"),W=Symbol.for("react.fragment"),B=Symbol.for("react.strict_mode"),w=Symbol.for("react.profiler"),D=Symbol.for("react.consumer"),_=Symbol.for("react.context"),m=Symbol.for("react.forward_ref"),V=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),Q=Symbol.for("react.memo"),se=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),be=Symbol.for("react.client.reference"),k=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,q=Array.isArray,J=console.createTask?console.createTask:function(){return null};b={react_stack_bottom_frame:function(c){return c()}};var ee,X={},fe=b.react_stack_bottom_frame.bind(b,a)(),ye=J(s(a)),me={};Se.Fragment=W,Se.jsx=function(c,E,M){var Y=1e4>k.recentlyCreatedOwnerStacks++;return C(c,E,M,!1,Y?Error("react-stack-top-frame"):fe,Y?J(s(c)):ye)},Se.jsxs=function(c,E,M){var Y=1e4>k.recentlyCreatedOwnerStacks++;return C(c,E,M,!0,Y?Error("react-stack-top-frame"):fe,Y?J(s(c)):ye)}})()),Se}var gr;function Zr(){return gr||(gr=1,process.env.NODE_ENV==="production"?Ce.exports=Gr():Ce.exports=Xr()),Ce.exports}var T=Zr(),Oe=e=>e.type==="checkbox",he=e=>e instanceof Date,re=e=>e==null;const Rr=e=>typeof e=="object";var G=e=>!re(e)&&!Array.isArray(e)&&Rr(e)&&!he(e),Qr=e=>G(e)&&e.target?Oe(e.target)?e.target.checked:e.target.value:e,Kr=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,et=(e,t)=>e.has(Kr(t)),rt=e=>{const t=e.constructor&&e.constructor.prototype;return G(t)&&t.hasOwnProperty("isPrototypeOf")},tr=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function L(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(tr&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(G(e)&&rt(e)))return e;const s=r?[]:Object.create(Object.getPrototypeOf(e));for(const o in e)Object.prototype.hasOwnProperty.call(e,o)&&(s[o]=L(e[o]));return s}var Ie=e=>/^\w*$/.test(e),I=e=>e===void 0,Me=e=>Array.isArray(e)?e.filter(Boolean):[],sr=e=>Me(e.replace(/["|']|\]/g,"").split(/\.|\[/)),g=(e,t,r)=>{if(!t||!G(e))return r;const s=(Ie(t)?[t]:sr(t)).reduce((o,a)=>re(o)?o:o[a],e);return I(s)||s===e?I(e[t])?r:e[t]:s},ce=e=>typeof e=="boolean",oe=e=>typeof e=="function",N=(e,t,r)=>{let s=-1;const o=Ie(t)?[t]:sr(t),a=o.length,l=a-1;for(;++s<a;){const d=o[s];let F=r;if(s!==l){const A=e[d];F=G(A)||Array.isArray(A)?A:isNaN(+o[s+1])?{}:[]}if(d==="__proto__"||d==="constructor"||d==="prototype")return;e[d]=F,e=e[d]}};const hr={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},de={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},nr=h.createContext(null);nr.displayName="HookFormContext";const ge=()=>h.useContext(nr),tt=e=>{const{children:t,...r}=e;return h.createElement(nr.Provider,{value:r},t)};var st=(e,t,r,s=!0)=>{const o={defaultValues:t._defaultValues};for(const a in e)Object.defineProperty(o,a,{get:()=>{const l=a;return t._proxyFormState[l]!==ie.all&&(t._proxyFormState[l]=!s||ie.all),e[l]}});return o};const ar=typeof window<"u"?h.useLayoutEffect:h.useEffect;var ne=e=>typeof e=="string",Ze=(e,t,r,s,o)=>ne(e)?(s&&t.watch.add(e),g(r,e,o)):Array.isArray(e)?e.map(a=>(s&&t.watch.add(a),g(r,a))):(s&&(t.watchAll=!0),r),Qe=e=>re(e)||!Rr(e);function ue(e,t,r=new WeakSet){if(Qe(e)||Qe(t))return Object.is(e,t);if(he(e)&&he(t))return e.getTime()===t.getTime();const s=Object.keys(e),o=Object.keys(t);if(s.length!==o.length)return!1;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);for(const a of s){const l=e[a];if(!o.includes(a))return!1;if(a!=="ref"){const d=t[a];if(he(l)&&he(d)||G(l)&&G(d)||Array.isArray(l)&&Array.isArray(d)?!ue(l,d,r):!Object.is(l,d))return!1}}return!0}function Sr(e){const t=ge(),{control:r=t.control,name:s,defaultValue:o,disabled:a,exact:l,compute:d}=e||{},F=h.useRef(o),A=h.useRef(d),C=h.useRef(void 0),p=h.useRef(r),R=h.useRef(s);A.current=d;const[b,U]=h.useState(()=>{const _=r._getWatch(s,F.current);return A.current?A.current(_):_}),$=h.useCallback(_=>{const m=Ze(s,r._names,_||r._formValues,!1,F.current);return A.current?A.current(m):m},[r._formValues,r._names,s]),W=h.useCallback(_=>{if(!a){const m=Ze(s,r._names,_||r._formValues,!1,F.current);if(A.current){const V=A.current(m);ue(V,C.current)||(U(V),C.current=V)}else U(m)}},[r._formValues,r._names,a,s]);ar(()=>((p.current!==r||!ue(R.current,s))&&(p.current=r,R.current=s,W()),r._subscribe({name:s,formState:{values:!0},exact:l,callback:_=>{W(_.values)}})),[r,l,s,W]),h.useEffect(()=>r._removeUnmounted());const B=p.current!==r,w=R.current,D=h.useMemo(()=>{if(a)return null;const _=!B&&!ue(w,s);return B||_?$():null},[a,B,s,w,$]);return D!==null?D:b}var nt=(e,t,r,s,o)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:o||!0}}:{},te=e=>Array.isArray(e)?e:[e],br=()=>{let e=[];return{get observers(){return e},next:o=>{for(const a of e)a.next&&a.next(o)},subscribe:o=>(e.push(o),{unsubscribe:()=>{e=e.filter(a=>a!==o)}}),unsubscribe:()=>{e=[]}}};function Tr(e,t){const r={};for(const s in e)if(e.hasOwnProperty(s)){const o=e[s],a=t[s];if(o&&G(o)&&a){const l=Tr(o,a);G(l)&&(r[s]=l)}else e[s]&&(r[s]=a)}return r}var Z=e=>G(e)&&!Object.keys(e).length,ir=e=>e.type==="file",je=e=>{if(!tr)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Or=e=>e.type==="select-multiple",or=e=>e.type==="radio",at=e=>or(e)||Oe(e),$e=e=>je(e)&&e.isConnected;function it(e,t){const r=t.slice(0,-1).length;let s=0;for(;s<r;)e=I(e)?s++:e[t[s++]];return e}function ot(e){for(const t in e)if(e.hasOwnProperty(t)&&!I(e[t]))return!1;return!0}function H(e,t){const r=Array.isArray(t)?t:Ie(t)?[t]:sr(t),s=r.length===1?e:it(e,r),o=r.length-1,a=r[o];return s&&delete s[a],o!==0&&(G(s)&&Z(s)||Array.isArray(s)&&ot(s))&&H(e,r.slice(0,-1)),e}var ut=e=>{for(const t in e)if(oe(e[t]))return!0;return!1};function Dr(e){return Array.isArray(e)||G(e)&&!ut(e)}function Ke(e,t={}){for(const r in e){const s=e[r];Dr(s)?(t[r]=Array.isArray(s)?[]:{},Ke(s,t[r])):I(s)||(t[r]=!0)}return t}function Ve(e,t,r){r||(r=Ke(t));for(const s in e){const o=e[s];if(Dr(o))I(t)||Qe(r[s])?r[s]=Ke(o,Array.isArray(o)?[]:{}):Ve(o,re(t)?{}:t[s],r[s]);else{const a=t[s];r[s]=!ue(o,a)}}return r}const xr={value:!1,isValid:!1},pr={value:!0,isValid:!0};var Cr=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!I(e[0].attributes.value)?I(e[0].value)||e[0].value===""?pr:{value:e[0].value,isValid:!0}:pr:xr}return xr},jr=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>I(e)?e:t?e===""?NaN:e&&+e:r&&ne(e)?new Date(e):s?s(e):e;const Ar={isValid:!1,value:null};var Pr=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,Ar):Ar;function Fr(e){const t=e.ref;return ir(t)?t.files:or(t)?Pr(e.refs).value:Or(t)?[...t.selectedOptions].map(({value:r})=>r):Oe(t)?Cr(e.refs).value:jr(I(t.value)?e.ref.value:t.value,e)}var lt=(e,t,r,s)=>{const o={};for(const a of e){const l=g(t,a);l&&N(o,a,l._f)}return{criteriaMode:r,names:[...e],fields:o,shouldUseNativeValidation:s}},Pe=e=>e instanceof RegExp,Te=e=>I(e)?e:Pe(e)?e.source:G(e)?Pe(e.value)?e.value.source:e.value:e,Ee=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const Vr="AsyncFunction";var ct=e=>!!e&&!!e.validate&&!!(oe(e.validate)&&e.validate.constructor.name===Vr||G(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===Vr)),dt=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),er=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const we=(e,t,r,s)=>{for(const o of r||Object.keys(e)){const a=g(e,o);if(a){const{_f:l,...d}=a;if(l){if(l.refs&&l.refs[0]&&t(l.refs[0],o)&&!s)return!0;if(l.ref&&t(l.ref,l.name)&&!s)return!0;if(we(d,t))break}else if(G(d)&&we(d,t))break}}};function Er(e,t,r){const s=g(e,r);if(s||Ie(r))return{error:s,name:r};const o=r.split(".");for(;o.length;){const a=o.join("."),l=g(t,a),d=g(e,a);if(l&&!Array.isArray(l)&&r!==a)return{name:r};if(d&&d.type)return{name:a,error:d};if(d&&d.root&&d.root.type)return{name:`${a}.root`,error:d.root};o.pop()}return{name:r}}var ft=(e,t,r,s)=>{r(e);const{name:o,...a}=e;return Z(a)||Object.keys(a).length>=Object.keys(t).length||Object.keys(a).find(l=>t[l]===(!s||ie.all))},yt=(e,t,r)=>!e||!t||e===t||te(e).some(s=>s&&(r?s===t:s.startsWith(t)||t.startsWith(s))),mt=(e,t,r,s,o)=>o.isOnAll?!1:!r&&o.isOnTouch?!(t||e):(r?s.isOnBlur:o.isOnBlur)?!e:(r?s.isOnChange:o.isOnChange)?e:!0,_t=(e,t)=>!Me(g(e,t)).length&&H(e,t),Nr=(e,t,r)=>{const s=te(g(e,r));return N(s,"root",t[r]),N(e,r,s),e};function wr(e,t,r="validate"){if(ne(e)||Array.isArray(e)&&e.every(ne)||ce(e)&&!e)return{type:r,message:ne(e)?e:"",ref:t}}var Fe=e=>G(e)&&!Pe(e)?e:{value:e,message:""},rr=async(e,t,r,s,o,a)=>{const{ref:l,refs:d,required:F,maxLength:A,minLength:C,min:p,max:R,pattern:b,validate:U,name:$,valueAsNumber:W,mount:B}=e._f,w=g(r,$);if(!B||t.has($))return{};const D=d?d[0]:l,_=k=>{o&&D.reportValidity&&(D.setCustomValidity(ce(k)?"":k||""),D.reportValidity())},m={},V=or(l),j=Oe(l),Q=V||j,se=(W||ir(l))&&I(l.value)&&I(w)||je(l)&&l.value===""||w===""||Array.isArray(w)&&!w.length,K=nt.bind(null,$,s,m),be=(k,S,q,J=de.maxLength,ee=de.minLength)=>{const X=k?S:q;m[$]={type:k?J:ee,message:X,ref:l,...K(k?J:ee,X)}};if(a?!Array.isArray(w)||!w.length:F&&(!Q&&(se||re(w))||ce(w)&&!w||j&&!Cr(d).isValid||V&&!Pr(d).isValid)){const{value:k,message:S}=ne(F)?{value:!!F,message:F}:Fe(F);if(k&&(m[$]={type:de.required,message:S,ref:D,...K(de.required,S)},!s))return _(S),m}if(!se&&(!re(p)||!re(R))){let k,S;const q=Fe(R),J=Fe(p);if(!re(w)&&!isNaN(w)){const ee=l.valueAsNumber||w&&+w;re(q.value)||(k=ee>q.value),re(J.value)||(S=ee<J.value)}else{const ee=l.valueAsDate||new Date(w),X=me=>new Date(new Date().toDateString()+" "+me),fe=l.type=="time",ye=l.type=="week";ne(q.value)&&w&&(k=fe?X(w)>X(q.value):ye?w>q.value:ee>new Date(q.value)),ne(J.value)&&w&&(S=fe?X(w)<X(J.value):ye?w<J.value:ee<new Date(J.value))}if((k||S)&&(be(!!k,q.message,J.message,de.max,de.min),!s))return _(m[$].message),m}if((A||C)&&!se&&(ne(w)||a&&Array.isArray(w))){const k=Fe(A),S=Fe(C),q=!re(k.value)&&w.length>+k.value,J=!re(S.value)&&w.length<+S.value;if((q||J)&&(be(q,k.message,S.message),!s))return _(m[$].message),m}if(b&&!se&&ne(w)){const{value:k,message:S}=Fe(b);if(Pe(k)&&!w.match(k)&&(m[$]={type:de.pattern,message:S,ref:l,...K(de.pattern,S)},!s))return _(S),m}if(U){if(oe(U)){const k=await U(w,r),S=wr(k,D);if(S&&(m[$]={...S,...K(de.validate,S.message)},!s))return _(S.message),m}else if(G(U)){let k={};for(const S in U){if(!Z(k)&&!s)break;const q=wr(await U[S](w,r),D,S);q&&(k={...q,...K(S,q.message)},_(q.message),s&&(m[$]=k))}if(!Z(k)&&(m[$]={ref:D,...k},!s))return m}}return _(!0),m};const vt={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function gt(e={}){let t={...vt,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:oe(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},s={},o=G(t.defaultValues)||G(t.values)?L(t.defaultValues||t.values)||{}:{},a=t.shouldUnregister?{}:L(o),l={action:!1,mount:!1,watch:!1,keepIsValid:!1},d={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},F,A=0;const C={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},p={...C};let R={...p};const b={array:br(),state:br()},U=t.criteriaMode===ie.all,$=n=>i=>{clearTimeout(A),A=setTimeout(n,i)},W=async n=>{if(!l.keepIsValid&&!t.disabled&&(p.isValid||R.isValid||n)){let i;t.resolver?(i=Z((await Q()).errors),B()):i=await K(s,!0),i!==r.isValid&&b.state.next({isValid:i})}},B=(n,i)=>{!t.disabled&&(p.isValidating||p.validatingFields||R.isValidating||R.validatingFields)&&((n||Array.from(d.mount)).forEach(u=>{u&&(i?N(r.validatingFields,u,i):H(r.validatingFields,u))}),b.state.next({validatingFields:r.validatingFields,isValidating:!Z(r.validatingFields)}))},w=(n,i=[],u,v,y=!0,f=!0)=>{if(v&&u&&!t.disabled){if(l.action=!0,f&&Array.isArray(g(s,n))){const x=u(g(s,n),v.argA,v.argB);y&&N(s,n,x)}if(f&&Array.isArray(g(r.errors,n))){const x=u(g(r.errors,n),v.argA,v.argB);y&&N(r.errors,n,x),_t(r.errors,n)}if((p.touchedFields||R.touchedFields)&&f&&Array.isArray(g(r.touchedFields,n))){const x=u(g(r.touchedFields,n),v.argA,v.argB);y&&N(r.touchedFields,n,x)}(p.dirtyFields||R.dirtyFields)&&(r.dirtyFields=Ve(o,a)),b.state.next({name:n,isDirty:k(n,i),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else N(a,n,i)},D=(n,i)=>{N(r.errors,n,i),b.state.next({errors:r.errors})},_=n=>{r.errors=n,b.state.next({errors:r.errors,isValid:!1})},m=(n,i,u,v)=>{const y=g(s,n);if(y){const f=g(a,n,I(u)?g(o,n):u);I(f)||v&&v.defaultChecked||i?N(a,n,i?f:Fr(y._f)):J(n,f),l.mount&&!l.action&&W()}},V=(n,i,u,v,y)=>{let f=!1,x=!1;const O={name:n};if(!t.disabled){if(!u||v){(p.isDirty||R.isDirty)&&(x=r.isDirty,r.isDirty=O.isDirty=k(),f=x!==O.isDirty);const P=ue(g(o,n),i);x=!!g(r.dirtyFields,n),P?H(r.dirtyFields,n):N(r.dirtyFields,n,!0),O.dirtyFields=r.dirtyFields,f=f||(p.dirtyFields||R.dirtyFields)&&x!==!P}if(u){const P=g(r.touchedFields,n);P||(N(r.touchedFields,n,u),O.touchedFields=r.touchedFields,f=f||(p.touchedFields||R.touchedFields)&&P!==u)}f&&y&&b.state.next(O)}return f?O:{}},j=(n,i,u,v)=>{const y=g(r.errors,n),f=(p.isValid||R.isValid)&&ce(i)&&r.isValid!==i;if(t.delayError&&u?(F=$(()=>D(n,u)),F(t.delayError)):(clearTimeout(A),F=null,u?N(r.errors,n,u):H(r.errors,n)),(u?!ue(y,u):y)||!Z(v)||f){const x={...v,...f&&ce(i)?{isValid:i}:{},errors:r.errors,name:n};r={...r,...x},b.state.next(x)}},Q=async n=>(B(n,!0),await t.resolver(a,t.context,lt(n||d.mount,s,t.criteriaMode,t.shouldUseNativeValidation))),se=async n=>{const{errors:i}=await Q(n);if(B(n),n)for(const u of n){const v=g(i,u);v?N(r.errors,u,v):H(r.errors,u)}else r.errors=i;return i},K=async(n,i,u={valid:!0})=>{for(const v in n){const y=n[v];if(y){const{_f:f,...x}=y;if(f){const O=d.array.has(f.name),P=y._f&&ct(y._f);P&&p.validatingFields&&B([f.name],!0);const ae=await rr(y,d.disabled,a,U,t.shouldUseNativeValidation&&!i,O);if(P&&p.validatingFields&&B([f.name]),ae[f.name]&&(u.valid=!1,i))break;!i&&(g(ae,f.name)?O?Nr(r.errors,ae,f.name):N(r.errors,f.name,ae[f.name]):H(r.errors,f.name))}!Z(x)&&await K(x,i,u)}}return u.valid},be=()=>{for(const n of d.unMount){const i=g(s,n);i&&(i._f.refs?i._f.refs.every(u=>!$e(u)):!$e(i._f.ref))&&le(n)}d.unMount=new Set},k=(n,i)=>!t.disabled&&(n&&i&&N(a,n,i),!ue(c(),o)),S=(n,i,u)=>Ze(n,d,{...l.mount?a:I(i)?o:ne(n)?{[n]:i}:i},u,i),q=n=>Me(g(l.mount?a:o,n,t.shouldUnregister?g(o,n,[]):[])),J=(n,i,u={})=>{const v=g(s,n);let y=i;if(v){const f=v._f;f&&(!f.disabled&&N(a,n,jr(i,f)),y=je(f.ref)&&re(i)?"":i,Or(f.ref)?[...f.ref.options].forEach(x=>x.selected=y.includes(x.value)):f.refs?Oe(f.ref)?f.refs.forEach(x=>{(!x.defaultChecked||!x.disabled)&&(Array.isArray(y)?x.checked=!!y.find(O=>O===x.value):x.checked=y===x.value||!!y)}):f.refs.forEach(x=>x.checked=x.value===y):ir(f.ref)?f.ref.value="":(f.ref.value=y,f.ref.type||b.state.next({name:n,values:L(a)})))}(u.shouldDirty||u.shouldTouch)&&V(n,y,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&me(n)},ee=(n,i,u)=>{for(const v in i){if(!i.hasOwnProperty(v))return;const y=i[v],f=n+"."+v,x=g(s,f);(d.array.has(n)||G(y)||x&&!x._f)&&!he(y)?ee(f,y,u):J(f,y,u)}},X=(n,i,u={})=>{const v=g(s,n),y=d.array.has(n),f=L(i);N(a,n,f),y?(b.array.next({name:n,values:L(a)}),(p.isDirty||p.dirtyFields||R.isDirty||R.dirtyFields)&&u.shouldDirty&&b.state.next({name:n,dirtyFields:Ve(o,a),isDirty:k(n,f)})):v&&!v._f&&!re(f)?ee(n,f,u):J(n,f,u),er(n,d)&&b.state.next({...r,name:n}),b.state.next({name:l.mount?n:void 0,values:L(a)})},fe=async n=>{l.mount=!0;const i=n.target;let u=i.name,v=!0;const y=g(s,u),f=P=>{v=Number.isNaN(P)||he(P)&&isNaN(P.getTime())||ue(P,g(a,u,P))},x=Ee(t.mode),O=Ee(t.reValidateMode);if(y){let P,ae;const De=i.type?Fr(y._f):Qr(n),_e=n.type===hr.BLUR||n.type===hr.FOCUS_OUT,zr=!dt(y._f)&&!t.resolver&&!g(r.errors,u)&&!y._f.deps||mt(_e,g(r.touchedFields,u),r.isSubmitted,O,x),Ue=er(u,d,_e);N(a,u,De),_e?(!i||!i.readOnly)&&(y._f.onBlur&&y._f.onBlur(n),F&&F(0)):y._f.onChange&&y._f.onChange(n);const Be=V(u,De,_e),Hr=!Z(Be)||Ue;if(!_e&&b.state.next({name:u,type:n.type,values:L(a)}),zr)return(p.isValid||R.isValid)&&(t.mode==="onBlur"?_e&&W():_e||W()),Hr&&b.state.next({name:u,...Ue?{}:Be});if(!_e&&Ue&&b.state.next({...r}),t.resolver){const{errors:yr}=await Q([u]);if(B([u]),f(De),v){const Jr=Er(r.errors,s,u),mr=Er(yr,s,Jr.name||u);P=mr.error,u=mr.name,ae=Z(yr)}}else B([u],!0),P=(await rr(y,d.disabled,a,U,t.shouldUseNativeValidation))[u],B([u]),f(De),v&&(P?ae=!1:(p.isValid||R.isValid)&&(ae=await K(s,!0)));v&&(y._f.deps&&(!Array.isArray(y._f.deps)||y._f.deps.length>0)&&me(y._f.deps),j(u,ae,P,Be))}},ye=(n,i)=>{if(g(r.errors,i)&&n.focus)return n.focus(),1},me=async(n,i={})=>{let u,v;const y=te(n);if(t.resolver){const f=await se(I(n)?n:y);u=Z(f),v=n?!y.some(x=>g(f,x)):u}else n?(v=(await Promise.all(y.map(async f=>{const x=g(s,f);return await K(x&&x._f?{[f]:x}:x)}))).every(Boolean),!(!v&&!r.isValid)&&W()):v=u=await K(s);return b.state.next({...!ne(n)||(p.isValid||R.isValid)&&u!==r.isValid?{}:{name:n},...t.resolver||!n?{isValid:u}:{},errors:r.errors}),i.shouldFocus&&!v&&we(s,ye,n?y:d.mount),v},c=(n,i)=>{let u={...l.mount?a:o};return i&&(u=Tr(i.dirtyFields?r.dirtyFields:r.touchedFields,u)),I(n)?u:ne(n)?g(u,n):n.map(v=>g(u,v))},E=(n,i)=>({invalid:!!g((i||r).errors,n),isDirty:!!g((i||r).dirtyFields,n),error:g((i||r).errors,n),isValidating:!!g(r.validatingFields,n),isTouched:!!g((i||r).touchedFields,n)}),M=n=>{n&&te(n).forEach(i=>H(r.errors,i)),b.state.next({errors:n?r.errors:{}})},Y=(n,i,u)=>{const v=(g(s,n,{_f:{}})._f||{}).ref,y=g(r.errors,n)||{},{ref:f,message:x,type:O,...P}=y;N(r.errors,n,{...P,...i,ref:v}),b.state.next({name:n,errors:r.errors,isValid:!1}),u&&u.shouldFocus&&v&&v.focus&&v.focus()},xe=(n,i)=>oe(n)?b.state.subscribe({next:u=>"values"in u&&n(S(void 0,i),u)}):S(n,i,!0),pe=n=>b.state.subscribe({next:i=>{yt(n.name,i.name,n.exact)&&ft(i,n.formState||p,qr,n.reRenderRoot)&&n.callback({values:{...a},...r,...i,defaultValues:o})}}).unsubscribe,z=n=>(l.mount=!0,R={...R,...n.formState},pe({...n,formState:{...C,...n.formState}})),le=(n,i={})=>{for(const u of n?te(n):d.mount)d.mount.delete(u),d.array.delete(u),i.keepValue||(H(s,u),H(a,u)),!i.keepError&&H(r.errors,u),!i.keepDirty&&H(r.dirtyFields,u),!i.keepTouched&&H(r.touchedFields,u),!i.keepIsValidating&&H(r.validatingFields,u),!t.shouldUnregister&&!i.keepDefaultValue&&H(o,u);b.state.next({values:L(a)}),b.state.next({...r,...i.keepDirty?{isDirty:k()}:{}}),!i.keepIsValid&&W()},Ae=({disabled:n,name:i})=>{(ce(n)&&l.mount||n||d.disabled.has(i))&&(n?d.disabled.add(i):d.disabled.delete(i))},ke=(n,i={})=>{let u=g(s,n);const v=ce(i.disabled)||ce(t.disabled);return N(s,n,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:n}},name:n,mount:!0,...i}}),d.mount.add(n),u?Ae({disabled:ce(i.disabled)?i.disabled:t.disabled,name:n}):m(n,!0,i.value),{...v?{disabled:i.disabled||t.disabled}:{},...t.progressive?{required:!!i.required,min:Te(i.min),max:Te(i.max),minLength:Te(i.minLength),maxLength:Te(i.maxLength),pattern:Te(i.pattern)}:{},name:n,onChange:fe,onBlur:fe,ref:y=>{if(y){ke(n,i),u=g(s,n);const f=I(y.value)&&y.querySelectorAll&&y.querySelectorAll("input,select,textarea")[0]||y,x=at(f),O=u._f.refs||[];if(x?O.find(P=>P===f):f===u._f.ref)return;N(s,n,{_f:{...u._f,...x?{refs:[...O.filter($e),f,...Array.isArray(g(o,n))?[{}]:[]],ref:{type:f.type,name:n}}:{ref:f}}}),m(n,!1,void 0,f)}else u=g(s,n,{}),u._f&&(u._f.mount=!1),(t.shouldUnregister||i.shouldUnregister)&&!(et(d.array,n)&&l.action)&&d.unMount.add(n)}}},Le=()=>t.shouldFocusError&&we(s,ye,d.mount),$r=n=>{ce(n)&&(b.state.next({disabled:n}),we(s,(i,u)=>{const v=g(s,u);v&&(i.disabled=v._f.disabled||n,Array.isArray(v._f.refs)&&v._f.refs.forEach(y=>{y.disabled=v._f.disabled||n}))},0,!1))},lr=(n,i)=>async u=>{let v;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let y=L(a);if(b.state.next({isSubmitting:!0}),t.resolver){const{errors:f,values:x}=await Q();B(),r.errors=f,y=L(x)}else await K(s);if(d.disabled.size)for(const f of d.disabled)H(y,f);if(H(r.errors,"root"),Z(r.errors)){b.state.next({errors:{}});try{await n(y,u)}catch(f){v=f}}else i&&await i({...r.errors},u),Le(),setTimeout(Le);if(b.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:Z(r.errors)&&!v,submitCount:r.submitCount+1,errors:r.errors}),v)throw v},Wr=(n,i={})=>{g(s,n)&&(I(i.defaultValue)?X(n,L(g(o,n))):(X(n,i.defaultValue),N(o,n,L(i.defaultValue))),i.keepTouched||H(r.touchedFields,n),i.keepDirty||(H(r.dirtyFields,n),r.isDirty=i.defaultValue?k(n,L(g(o,n))):k()),i.keepError||(H(r.errors,n),p.isValid&&W()),b.state.next({...r}))},cr=(n,i={})=>{const u=n?L(n):o,v=L(u),y=Z(n),f=y?o:v;if(i.keepDefaultValues||(o=u),!i.keepValues){if(i.keepDirtyValues){const x=new Set([...d.mount,...Object.keys(Ve(o,a))]);for(const O of Array.from(x))g(r.dirtyFields,O)?N(f,O,g(a,O)):X(O,g(f,O))}else{if(tr&&I(n))for(const x of d.mount){const O=g(s,x);if(O&&O._f){const P=Array.isArray(O._f.refs)?O._f.refs[0]:O._f.ref;if(je(P)){const ae=P.closest("form");if(ae){ae.reset();break}}}}if(i.keepFieldsRef)for(const x of d.mount)X(x,g(f,x));else s={}}a=t.shouldUnregister?i.keepDefaultValues?L(o):{}:L(f),b.array.next({values:{...f}}),b.state.next({values:{...f}})}d={mount:i.keepDirtyValues?d.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},l.mount=!p.isValid||!!i.keepIsValid||!!i.keepDirtyValues||!t.shouldUnregister&&!Z(f),l.watch=!!t.shouldUnregister,l.keepIsValid=!!i.keepIsValid,l.action=!1,i.keepErrors||(r.errors={}),b.state.next({submitCount:i.keepSubmitCount?r.submitCount:0,isDirty:y?!1:i.keepDirty?r.isDirty:!!(i.keepDefaultValues&&!ue(n,o)),isSubmitted:i.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:y?{}:i.keepDirtyValues?i.keepDefaultValues&&a?Ve(o,a):r.dirtyFields:i.keepDefaultValues&&n?Ve(o,n):i.keepDirty?r.dirtyFields:{},touchedFields:i.keepTouched?r.touchedFields:{},errors:i.keepErrors?r.errors:{},isSubmitSuccessful:i.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:o})},dr=(n,i)=>cr(oe(n)?n(a):n,{...t.resetOptions,...i}),Yr=(n,i={})=>{const u=g(s,n),v=u&&u._f;if(v){const y=v.refs?v.refs[0]:v.ref;y.focus&&setTimeout(()=>{y.focus(),i.shouldSelect&&oe(y.select)&&y.select()})}},qr=n=>{r={...r,...n}},fr={control:{register:ke,unregister:le,getFieldState:E,handleSubmit:lr,setError:Y,_subscribe:pe,_runSchema:Q,_updateIsValidating:B,_focusError:Le,_getWatch:S,_getDirty:k,_setValid:W,_setFieldArray:w,_setDisabledField:Ae,_setErrors:_,_getFieldArray:q,_reset:cr,_resetDefaultValues:()=>oe(t.defaultValues)&&t.defaultValues().then(n=>{dr(n,t.resetOptions),b.state.next({isLoading:!1})}),_removeUnmounted:be,_disableForm:$r,_subjects:b,_proxyFormState:p,get _fields(){return s},get _formValues(){return a},get _state(){return l},set _state(n){l=n},get _defaultValues(){return o},get _names(){return d},set _names(n){d=n},get _formState(){return r},get _options(){return t},set _options(n){t={...t,...n}}},subscribe:z,trigger:me,register:ke,handleSubmit:lr,watch:xe,setValue:X,getValues:c,reset:dr,resetField:Wr,clearErrors:M,unregister:le,setError:Y,setFocus:Yr,getFieldState:E};return{...fr,formControl:fr}}var ve=()=>{if(typeof crypto<"u"&&crypto.randomUUID)return crypto.randomUUID();const e=typeof performance>"u"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const r=(Math.random()*16+e)%16|0;return(t=="x"?r:r&3|8).toString(16)})},We=(e,t,r={})=>r.shouldFocus||I(r.shouldFocus)?r.focusName||`${e}.${I(r.focusIndex)?t:r.focusIndex}.`:"",Ye=(e,t)=>[...e,...te(t)],qe=e=>Array.isArray(e)?e.map(()=>{}):void 0;function ze(e,t,r){return[...e.slice(0,t),...te(r),...e.slice(t)]}var He=(e,t,r)=>Array.isArray(e)?(I(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[],Je=(e,t)=>[...te(t),...te(e)];function ht(e,t){let r=0;const s=[...e];for(const o of t)s.splice(o-r,1),r++;return Me(s).length?s:[]}var Ge=(e,t)=>I(t)?[]:ht(e,te(t).sort((r,s)=>r-s)),Xe=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]},kr=(e,t,r)=>(e[t]=r,e);function bt(e){const t=ge(),{control:r=t.control,name:s,keyName:o="id",shouldUnregister:a,rules:l}=e,[d,F]=h.useState(r._getFieldArray(s)),A=h.useRef(r._getFieldArray(s).map(ve)),C=h.useRef(!1);r._names.array.add(s),h.useMemo(()=>l&&d.length>=0&&r.register(s,l),[r,s,d.length,l]),ar(()=>r._subjects.array.subscribe({next:({values:_,name:m})=>{if(m===s||!m){const V=g(_,s);Array.isArray(V)&&(F(V),A.current=V.map(ve))}}}).unsubscribe,[r,s]);const p=h.useCallback(_=>{C.current=!0,r._setFieldArray(s,_)},[r,s]),R=(_,m)=>{const V=te(L(_)),j=Ye(r._getFieldArray(s),V);r._names.focus=We(s,j.length-1,m),A.current=Ye(A.current,V.map(ve)),p(j),F(j),r._setFieldArray(s,j,Ye,{argA:qe(_)})},b=(_,m)=>{const V=te(L(_)),j=Je(r._getFieldArray(s),V);r._names.focus=We(s,0,m),A.current=Je(A.current,V.map(ve)),p(j),F(j),r._setFieldArray(s,j,Je,{argA:qe(_)})},U=_=>{const m=Ge(r._getFieldArray(s),_);A.current=Ge(A.current,_),p(m),F(m),!Array.isArray(g(r._fields,s))&&N(r._fields,s,void 0),r._setFieldArray(s,m,Ge,{argA:_})},$=(_,m,V)=>{const j=te(L(m)),Q=ze(r._getFieldArray(s),_,j);r._names.focus=We(s,_,V),A.current=ze(A.current,_,j.map(ve)),p(Q),F(Q),r._setFieldArray(s,Q,ze,{argA:_,argB:qe(m)})},W=(_,m)=>{const V=r._getFieldArray(s);Xe(V,_,m),Xe(A.current,_,m),p(V),F(V),r._setFieldArray(s,V,Xe,{argA:_,argB:m},!1)},B=(_,m)=>{const V=r._getFieldArray(s);He(V,_,m),He(A.current,_,m),p(V),F(V),r._setFieldArray(s,V,He,{argA:_,argB:m},!1)},w=(_,m)=>{const V=L(m),j=kr(r._getFieldArray(s),_,V);A.current=[...j].map((Q,se)=>!Q||se===_?ve():A.current[se]),p(j),F([...j]),r._setFieldArray(s,j,kr,{argA:_,argB:V},!0,!1)},D=_=>{const m=te(L(_));A.current=m.map(ve),p([...m]),F([...m]),r._setFieldArray(s,[...m],V=>V,{},!0,!1)};return h.useEffect(()=>{if(r._state.action=!1,er(s,r._names)&&r._subjects.state.next({...r._formState}),C.current&&(!Ee(r._options.mode).isOnSubmit||r._formState.isSubmitted)&&!Ee(r._options.reValidateMode).isOnSubmit)if(r._options.resolver)r._runSchema([s]).then(_=>{r._updateIsValidating([s]);const m=g(_.errors,s),V=g(r._formState.errors,s);(V?!m&&V.type||m&&(V.type!==m.type||V.message!==m.message):m&&m.type)&&(m?N(r._formState.errors,s,m):H(r._formState.errors,s),r._subjects.state.next({errors:r._formState.errors}))});else{const _=g(r._fields,s);_&&_._f&&!(Ee(r._options.reValidateMode).isOnSubmit&&Ee(r._options.mode).isOnSubmit)&&rr(_,r._names.disabled,r._formValues,r._options.criteriaMode===ie.all,r._options.shouldUseNativeValidation,!0).then(m=>!Z(m)&&r._subjects.state.next({errors:Nr(r._formState.errors,m,s)}))}r._subjects.state.next({name:s,values:L(r._formValues)}),r._names.focus&&we(r._fields,(_,m)=>{if(r._names.focus&&m.startsWith(r._names.focus)&&_.focus)return _.focus(),1}),r._names.focus="",r._setValid(),C.current=!1},[d,s,r]),h.useEffect(()=>(!g(r._formValues,s)&&r._setFieldArray(s),()=>{const _=(m,V)=>{const j=g(r._fields,m);j&&j._f&&(j._f.mount=V)};r._options.shouldUnregister||a?r.unregister(s):_(s,!1)}),[s,r,o,a]),{swap:h.useCallback(W,[p,s,r]),move:h.useCallback(B,[p,s,r]),prepend:h.useCallback(b,[p,s,r]),append:h.useCallback(R,[p,s,r]),remove:h.useCallback(U,[p,s,r]),insert:h.useCallback($,[p,s,r]),update:h.useCallback(w,[p,s,r]),replace:h.useCallback(D,[p,s,r]),fields:h.useMemo(()=>d.map((_,m)=>({..._,[o]:A.current[m]||ve()})),[d,o])}}function xt(e={}){const t=h.useRef(void 0),r=h.useRef(void 0),[s,o]=h.useState({isDirty:!1,isValidating:!1,isLoading:oe(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:oe(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:s},e.defaultValues&&!oe(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:l,...d}=gt(e);t.current={...d,formState:s}}const a=t.current.control;return a._options=e,ar(()=>{const l=a._subscribe({formState:a._proxyFormState,callback:()=>o({...a._formState}),reRenderRoot:!0});return o(d=>({...d,isReady:!0})),a._formState.isReady=!0,l},[a]),h.useEffect(()=>a._disableForm(e.disabled),[a,e.disabled]),h.useEffect(()=>{e.mode&&(a._options.mode=e.mode),e.reValidateMode&&(a._options.reValidateMode=e.reValidateMode)},[a,e.mode,e.reValidateMode]),h.useEffect(()=>{e.errors&&(a._setErrors(e.errors),a._focusError())},[a,e.errors]),h.useEffect(()=>{e.shouldUnregister&&a._subjects.state.next({values:a._getWatch()})},[a,e.shouldUnregister]),h.useEffect(()=>{if(a._proxyFormState.isDirty){const l=a._getDirty();l!==s.isDirty&&a._subjects.state.next({isDirty:l})}},[a,s.isDirty]),h.useEffect(()=>{var l;e.values&&!ue(e.values,r.current)?(a._reset(e.values,{keepFieldsRef:!0,...a._options.resetOptions}),!((l=a._options.resetOptions)===null||l===void 0)&&l.keepIsValid||a._setValid(),r.current=e.values,o(d=>({...d}))):a._resetDefaultValues()},[a,e.values]),h.useEffect(()=>{a._state.mount||(a._setValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()}),t.current.formState=st(s,a),t.current}function pt(e,t){const r={};return e.forEach((s,o)=>{const a=s.split(".");let l=r;a.forEach((d,F)=>{const A=F===a.length-1,C=!isNaN(Number(d));A?l[d]=t[o]:(d in l||(l[d]=C?[]:{}),l=l[d])})}),r}function At(e){switch(e){case"text":return"";case"number":return 0;case"array":return[];case"checkbox":return!1;case"object":return{};case"select":return null;case"date":return new Date().toISOString().slice(0,10);case"datetime-local":return new Date().toISOString().slice(0,16);case"time":return new Date().toISOString().slice(11,16);default:return""}}function Ir(e){return e.replace(/\.\d+\./g,".")}function Ft(e,t){const r=e.split("."),s=[];return r.forEach((o,a)=>{isNaN(Number(o))||s.push({pos:a,value:o})}),t.map(o=>{const l=[...o.split(".")];return s.forEach(({pos:d,value:F})=>{d<=l.length&&l.splice(d,0,F)}),l.join(".")})}function Ne(e,t={}){const r={};for(const s of e)if(s.type==="object"){const o=s.fields;r[s.name]=Ne(o,t==null?void 0:t[s.name])}else r[s.name]=(t==null?void 0:t[s.name])??s.initialValue??At(s.type);return r}const Vt=e=>{const{fieldSchema:t}=e,r=t.fields,{control:s}=ge(),{fields:o,append:a}=bt({name:t.name,control:s}),l=()=>{a(Ne(r))};return T.jsxs("div",{children:[o.map((d,F)=>{const A=r.map(C=>({...C,name:`${t.name}.${F}.${C.name}`}));return T.jsxs(h.Fragment,{children:[T.jsxs("div",{children:["row ",F]}),ur(A)]},d.id)}),t.readonly!==!0&&T.jsx("button",{onClick:l,children:"Add Row"})]})},Mr=h.createContext(null),Et=({children:e,layout:t="vertical",uiConfig:r,updateFieldSchema:s})=>{const o=h.useMemo(()=>({layout:t,uiConfig:r,updateFieldSchema:s}),[t,r,s]);return T.jsx(Mr.Provider,{value:o,children:e})},Lr=()=>{const e=h.useContext(Mr);if(!e)throw new Error("useAutoFormRenderContext must be used within AutoFormRenderContextProvider");return e},wt=e=>{const{fieldSchema:t}=e,{register:r}=ge(),s=r(t.name);return T.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[T.jsx("label",{children:t.label}),T.jsx("input",{type:t.type,...s,readOnly:t.readonly})]})},kt=["text","number","checkbox","select","date","datetime-local","time","array","object"],Rt=e=>{const{fieldSchema:t}=e,{register:r}=ge(),s=r(t.name),o=t.options;return T.jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[T.jsx("label",{children:t.label}),T.jsx("select",{...s,disabled:t.readonly,children:o.map(a=>T.jsx("option",{value:a.value,children:a.label},a.value))})]})},Ur=({fieldSchema:e})=>{var A,C;const r=Lr().uiConfig,{register:s,control:o}=ge(),a=Ir(e.name),l=s(e.name);if(e.visible===!1)return;const d=(A=r==null?void 0:r.renderersByName)==null?void 0:A[a];if(d)return T.jsx(d,{fieldSchema:e,control:o,register:l});const F=(C=r==null?void 0:r.renderersByType)==null?void 0:C[e.type];if(F)return T.jsx(F,{fieldSchema:e,control:o,register:l});if(kt.includes(e.type))return e.type==="select"?T.jsx(Rt,{fieldSchema:e}):T.jsx(wt,{fieldSchema:e});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.`)},St=({fieldSchema:e})=>T.jsx(Ur,{fieldSchema:e}),Tt=({fieldSchema:e})=>{const{control:t}=ge(),r=Lr(),s=e.dependsOn??[],o=h.useMemo(()=>Ft(e.name,s),[e.name,s]),a=Sr({control:t,name:o}),[l,d]=h.useState(e);return h.useEffect(()=>{if(!s.length)return;let F=!1;return(async()=>{var U;const C=Ir(e.name),p=pt(o,a??[]),R=(U=r==null?void 0:r.updateFieldSchema)==null?void 0:U[C];if(!R)return;const b=await R(e.name,e,p);!F&&b&&d({...e,...b})})(),()=>{F=!0}},[a]),T.jsx(Ur,{fieldSchema:l})},Ot=e=>{var r;const{fieldSchema:t}=e;return(r=t.dependsOn)!=null&&r.length?T.jsx(Tt,{fieldSchema:t}):T.jsx(St,{fieldSchema:t})},Dt=e=>{const{fieldSchema:t}=e;return T.jsx(Ot,{fieldSchema:t})},Ct=e=>{const{fieldSchema:t}=e;let r=h.useMemo(()=>t.fields.map(s=>({...s,name:`${t.name}.${s.name}`})),[t.fields]);return T.jsx(T.Fragment,{children:ur(r)})};function ur(e){return e.map(t=>{switch(t.type){case"array":return T.jsx(Vt,{fieldSchema:t},t.name);case"object":return T.jsx(Ct,{fieldSchema:t},t.name);default:return T.jsx(Dt,{fieldSchema:t},t.name)}})}function Br(e){return e.map(t=>{if(["object","array"].includes(t.type)){const r=t.fields;return{...t,readonly:!0,fields:Br(r)}}return{...t,readonly:!0}})}const jt=e=>{const{onDirtyChange:t,onValuesChange:r}=e,{formState:s,control:o}=ge(),a=Sr({control:o});return h.useEffect(()=>{r(a)},[a]),h.useEffect(()=>{t(s.isDirty)},[s.isDirty]),null},Pt=({onValuesChange:e,onDirtyChange:t})=>(jt({onDirtyChange:t,onValuesChange:e}),null),Nt=h.forwardRef((e,t)=>{const{schema:r,onSubmit:s,uiConfig:o={renderersByName:{},renderersByType:{}},updateFieldSchema:a={},layout:l="vertical",values:d=()=>({}),hideSubmit:F=!1,onDirtyChange:A=()=>{},onValuesChange:C=()=>{},resolver:p,readonly:R}=e,b=xt({reValidateMode:"onSubmit",criteriaMode:"all",resolver:p}),U=h.useRef(!1),$=b.handleSubmit(s),W=h.useMemo(()=>{let D=r;return R&&(D=Br(D)),D},[R,r]);h.useEffect(()=>{if(U.current)return;let D=!1;return(async()=>{const m=await d();D||(b.reset(Ne(r,m)),U.current=!0)})(),()=>{D=!0}},[d,r]),h.useImperativeHandle(t,()=>({submit:async()=>{await b.handleSubmit(s)()},reset:D=>{b.reset(D?Ne(r,D):void 0)},getValues:()=>b.getValues(),setValue:(D,_)=>{b.setValue(D,_)}}));const B=h.useMemo(()=>ur(W),[W]),w=F||R;return T.jsxs(tt,{...b,children:[T.jsx(Pt,{onDirtyChange:A,onValuesChange:C}),T.jsxs(Et,{layout:l,uiConfig:o,updateFieldSchema:a,children:[["vertical","horizontal"].includes(l)&&T.jsx("div",{style:{display:"flex",flexDirection:l==="vertical"?"column":"row"},children:B}),l==="custom"&&B,!w&&T.jsx("button",{style:{marginTop:"1rem"},onClick:$,children:"Submit"})]})]})});exports.AutoForm=Nt;
package/dist/index.es.js CHANGED
@@ -58,7 +58,7 @@ function st() {
58
58
  return "StrictMode";
59
59
  case F:
60
60
  return "Suspense";
61
- case C:
61
+ case j:
62
62
  return "SuspenseList";
63
63
  case K:
64
64
  return "Activity";
@@ -183,7 +183,7 @@ function st() {
183
183
  value: pe
184
184
  }), Object.freeze && (Object.freeze(c.props), Object.freeze(c)), c;
185
185
  }
186
- function I(c, E, L, Y, xe, pe) {
186
+ function C(c, E, L, Y, xe, pe) {
187
187
  var z = E.children;
188
188
  if (z !== void 0)
189
189
  if (Y)
@@ -237,7 +237,7 @@ React keys must be passed directly to JSX without using spread:
237
237
  function R(c) {
238
238
  return typeof c == "object" && c !== null && c.$$typeof === M;
239
239
  }
240
- var h = V, M = Symbol.for("react.transitional.element"), $ = Symbol.for("react.portal"), W = Symbol.for("react.fragment"), B = Symbol.for("react.strict_mode"), w = Symbol.for("react.profiler"), D = Symbol.for("react.consumer"), _ = Symbol.for("react.context"), m = Symbol.for("react.forward_ref"), F = Symbol.for("react.suspense"), C = Symbol.for("react.suspense_list"), Q = Symbol.for("react.memo"), se = Symbol.for("react.lazy"), K = Symbol.for("react.activity"), be = Symbol.for("react.client.reference"), k = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, S = Object.prototype.hasOwnProperty, q = Array.isArray, J = console.createTask ? console.createTask : function() {
240
+ var h = V, M = Symbol.for("react.transitional.element"), $ = Symbol.for("react.portal"), W = Symbol.for("react.fragment"), B = Symbol.for("react.strict_mode"), w = Symbol.for("react.profiler"), D = Symbol.for("react.consumer"), _ = Symbol.for("react.context"), m = Symbol.for("react.forward_ref"), F = Symbol.for("react.suspense"), j = Symbol.for("react.suspense_list"), Q = Symbol.for("react.memo"), se = Symbol.for("react.lazy"), K = Symbol.for("react.activity"), be = Symbol.for("react.client.reference"), k = h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, S = Object.prototype.hasOwnProperty, q = Array.isArray, J = console.createTask ? console.createTask : function() {
241
241
  return null;
242
242
  };
243
243
  h = {
@@ -251,7 +251,7 @@ React keys must be passed directly to JSX without using spread:
251
251
  )(), ye = J(s(a)), me = {};
252
252
  Se.Fragment = W, Se.jsx = function(c, E, L) {
253
253
  var Y = 1e4 > k.recentlyCreatedOwnerStacks++;
254
- return I(
254
+ return C(
255
255
  c,
256
256
  E,
257
257
  L,
@@ -261,7 +261,7 @@ React keys must be passed directly to JSX without using spread:
261
261
  );
262
262
  }, Se.jsxs = function(c, E, L) {
263
263
  var Y = 1e4 > k.recentlyCreatedOwnerStacks++;
264
- return I(
264
+ return C(
265
265
  c,
266
266
  E,
267
267
  L,
@@ -296,12 +296,12 @@ function U(e) {
296
296
  Object.prototype.hasOwnProperty.call(e, o) && (s[o] = U(e[o]));
297
297
  return s;
298
298
  }
299
- var Ue = (e) => /^\w*$/.test(e), N = (e) => e === void 0, Me = (e) => Array.isArray(e) ? e.filter(Boolean) : [], ar = (e) => Me(e.replace(/["|']|\]/g, "").split(/\.|\[/)), g = (e, t, r) => {
299
+ var Ue = (e) => /^\w*$/.test(e), I = (e) => e === void 0, Me = (e) => Array.isArray(e) ? e.filter(Boolean) : [], ar = (e) => Me(e.replace(/["|']|\]/g, "").split(/\.|\[/)), g = (e, t, r) => {
300
300
  if (!t || !G(e))
301
301
  return r;
302
302
  const s = (Ue(t) ? [t] : ar(t)).reduce((o, a) => re(o) ? o : o[a], e);
303
- return N(s) || s === e ? N(e[t]) ? r : e[t] : s;
304
- }, ce = (e) => typeof e == "boolean", oe = (e) => typeof e == "function", P = (e, t, r) => {
303
+ return I(s) || s === e ? I(e[t]) ? r : e[t] : s;
304
+ }, ce = (e) => typeof e == "boolean", oe = (e) => typeof e == "function", N = (e, t, r) => {
305
305
  let s = -1;
306
306
  const o = Ue(t) ? [t] : ar(t), a = o.length, l = a - 1;
307
307
  for (; ++s < a; ) {
@@ -378,7 +378,7 @@ function ue(e, t, r = /* @__PURE__ */ new WeakSet()) {
378
378
  return !0;
379
379
  }
380
380
  function Or(e) {
381
- const t = ge(), { control: r = t.control, name: s, defaultValue: o, disabled: a, exact: l, compute: d } = e || {}, A = V.useRef(o), p = V.useRef(d), I = V.useRef(void 0), x = V.useRef(r), R = V.useRef(s);
381
+ const t = ge(), { control: r = t.control, name: s, defaultValue: o, disabled: a, exact: l, compute: d } = e || {}, A = V.useRef(o), p = V.useRef(d), C = V.useRef(void 0), x = V.useRef(r), R = V.useRef(s);
382
382
  p.current = d;
383
383
  const [h, M] = V.useState(() => {
384
384
  const _ = r._getWatch(s, A.current);
@@ -391,7 +391,7 @@ function Or(e) {
391
391
  const m = Ke(s, r._names, _ || r._formValues, !1, A.current);
392
392
  if (p.current) {
393
393
  const F = p.current(m);
394
- ue(F, I.current) || (M(F), I.current = F);
394
+ ue(F, C.current) || (M(F), C.current = F);
395
395
  } else
396
396
  M(m);
397
397
  }
@@ -462,12 +462,12 @@ function yt(e, t) {
462
462
  const r = t.slice(0, -1).length;
463
463
  let s = 0;
464
464
  for (; s < r; )
465
- e = N(e) ? s++ : e[t[s++]];
465
+ e = I(e) ? s++ : e[t[s++]];
466
466
  return e;
467
467
  }
468
468
  function mt(e) {
469
469
  for (const t in e)
470
- if (e.hasOwnProperty(t) && !N(e[t]))
470
+ if (e.hasOwnProperty(t) && !I(e[t]))
471
471
  return !1;
472
472
  return !0;
473
473
  }
@@ -487,7 +487,7 @@ function jr(e) {
487
487
  function rr(e, t = {}) {
488
488
  for (const r in e) {
489
489
  const s = e[r];
490
- jr(s) ? (t[r] = Array.isArray(s) ? [] : {}, rr(s, t[r])) : N(s) || (t[r] = !0);
490
+ jr(s) ? (t[r] = Array.isArray(s) ? [] : {}, rr(s, t[r])) : I(s) || (t[r] = !0);
491
491
  }
492
492
  return t;
493
493
  }
@@ -496,7 +496,7 @@ function Ve(e, t, r) {
496
496
  for (const s in e) {
497
497
  const o = e[s];
498
498
  if (jr(o))
499
- N(t) || er(r[s]) ? r[s] = rr(o, Array.isArray(o) ? [] : {}) : Ve(o, re(t) ? {} : t[s], r[s]);
499
+ I(t) || er(r[s]) ? r[s] = rr(o, Array.isArray(o) ? [] : {}) : Ve(o, re(t) ? {} : t[s], r[s]);
500
500
  else {
501
501
  const a = t[s];
502
502
  r[s] = !ue(o, a);
@@ -516,11 +516,11 @@ var Pr = (e) => {
516
516
  }
517
517
  return e[0].checked && !e[0].disabled ? (
518
518
  // @ts-expect-error expected to work in the browser
519
- e[0].attributes && !N(e[0].attributes.value) ? N(e[0].value) || e[0].value === "" ? Fr : { value: e[0].value, isValid: !0 } : Fr
519
+ e[0].attributes && !I(e[0].attributes.value) ? I(e[0].value) || e[0].value === "" ? Fr : { value: e[0].value, isValid: !0 } : Fr
520
520
  ) : Ar;
521
521
  }
522
522
  return Ar;
523
- }, Nr = (e, { valueAsNumber: t, valueAsDate: r, setValueAs: s }) => N(e) ? e : t ? e === "" ? NaN : e && +e : r && ne(e) ? new Date(e) : s ? s(e) : e;
523
+ }, Nr = (e, { valueAsNumber: t, valueAsDate: r, setValueAs: s }) => I(e) ? e : t ? e === "" ? NaN : e && +e : r && ne(e) ? new Date(e) : s ? s(e) : e;
524
524
  const Vr = {
525
525
  isValid: !1,
526
526
  value: null
@@ -531,13 +531,13 @@ var Ir = (e) => Array.isArray(e) ? e.reduce((t, r) => r && r.checked && !r.disab
531
531
  } : t, Vr) : Vr;
532
532
  function Er(e) {
533
533
  const t = e.ref;
534
- return ur(t) ? t.files : lr(t) ? Ir(e.refs).value : Cr(t) ? [...t.selectedOptions].map(({ value: r }) => r) : De(t) ? Pr(e.refs).value : Nr(N(t.value) ? e.ref.value : t.value, e);
534
+ return ur(t) ? t.files : lr(t) ? Ir(e.refs).value : Cr(t) ? [...t.selectedOptions].map(({ value: r }) => r) : De(t) ? Pr(e.refs).value : Nr(I(t.value) ? e.ref.value : t.value, e);
535
535
  }
536
536
  var vt = (e, t, r, s) => {
537
537
  const o = {};
538
538
  for (const a of e) {
539
539
  const l = g(t, a);
540
- l && P(o, a, l._f);
540
+ l && N(o, a, l._f);
541
541
  }
542
542
  return {
543
543
  criteriaMode: r,
@@ -545,7 +545,7 @@ var vt = (e, t, r, s) => {
545
545
  fields: o,
546
546
  shouldUseNativeValidation: s
547
547
  };
548
- }, Ie = (e) => e instanceof RegExp, Te = (e) => N(e) ? e : Ie(e) ? e.source : G(e) ? Ie(e.value) ? e.value.source : e.value : e, Ee = (e) => ({
548
+ }, Ie = (e) => e instanceof RegExp, Te = (e) => I(e) ? e : Ie(e) ? e.source : G(e) ? Ie(e.value) ? e.value.source : e.value : e, Ee = (e) => ({
549
549
  isOnSubmit: !e || e === ie.onSubmit,
550
550
  isOnBlur: e === ie.onBlur,
551
551
  isOnChange: e === ie.onChange,
@@ -605,7 +605,7 @@ var bt = (e, t, r, s) => {
605
605
  return Z(a) || Object.keys(a).length >= Object.keys(t).length || Object.keys(a).find((l) => t[l] === (!s || ie.all));
606
606
  }, xt = (e, t, r) => !e || !t || e === t || te(e).some((s) => s && (r ? s === t : s.startsWith(t) || t.startsWith(s))), pt = (e, t, r, s, o) => o.isOnAll ? !1 : !r && o.isOnTouch ? !(t || e) : (r ? s.isOnBlur : o.isOnBlur) ? !e : (r ? s.isOnChange : o.isOnChange) ? e : !0, At = (e, t) => !Me(g(e, t)).length && H(e, t), Lr = (e, t, r) => {
607
607
  const s = te(g(e, r));
608
- return P(s, "root", t[r]), P(e, r, s), e;
608
+ return N(s, "root", t[r]), N(e, r, s), e;
609
609
  };
610
610
  function Rr(e, t, r = "validate") {
611
611
  if (ne(e) || Array.isArray(e) && e.every(ne) || ce(e) && !e)
@@ -619,12 +619,12 @@ var Fe = (e) => G(e) && !Ie(e) ? e : {
619
619
  value: e,
620
620
  message: ""
621
621
  }, sr = async (e, t, r, s, o, a) => {
622
- const { ref: l, refs: d, required: A, maxLength: p, minLength: I, min: x, max: R, pattern: h, validate: M, name: $, valueAsNumber: W, mount: B } = e._f, w = g(r, $);
622
+ const { ref: l, refs: d, required: A, maxLength: p, minLength: C, min: x, max: R, pattern: h, validate: M, name: $, valueAsNumber: W, mount: B } = e._f, w = g(r, $);
623
623
  if (!B || t.has($))
624
624
  return {};
625
625
  const D = d ? d[0] : l, _ = (k) => {
626
626
  o && D.reportValidity && (D.setCustomValidity(ce(k) ? "" : k || ""), D.reportValidity());
627
- }, m = {}, F = lr(l), C = De(l), Q = F || C, se = (W || ur(l)) && N(l.value) && N(w) || Ne(l) && l.value === "" || w === "" || Array.isArray(w) && !w.length, K = dt.bind(null, $, s, m), be = (k, S, q, J = de.maxLength, ee = de.minLength) => {
627
+ }, m = {}, F = lr(l), j = De(l), Q = F || j, se = (W || ur(l)) && I(l.value) && I(w) || Ne(l) && l.value === "" || w === "" || Array.isArray(w) && !w.length, K = dt.bind(null, $, s, m), be = (k, S, q, J = de.maxLength, ee = de.minLength) => {
628
628
  const X = k ? S : q;
629
629
  m[$] = {
630
630
  type: k ? J : ee,
@@ -633,7 +633,7 @@ var Fe = (e) => G(e) && !Ie(e) ? e : {
633
633
  ...K(k ? J : ee, X)
634
634
  };
635
635
  };
636
- if (a ? !Array.isArray(w) || !w.length : A && (!Q && (se || re(w)) || ce(w) && !w || C && !Pr(d).isValid || F && !Ir(d).isValid)) {
636
+ if (a ? !Array.isArray(w) || !w.length : A && (!Q && (se || re(w)) || ce(w) && !w || j && !Pr(d).isValid || F && !Ir(d).isValid)) {
637
637
  const { value: k, message: S } = ne(A) ? { value: !!A, message: A } : Fe(A);
638
638
  if (k && (m[$] = {
639
639
  type: de.required,
@@ -656,8 +656,8 @@ var Fe = (e) => G(e) && !Ie(e) ? e : {
656
656
  if ((k || S) && (be(!!k, q.message, J.message, de.max, de.min), !s))
657
657
  return _(m[$].message), m;
658
658
  }
659
- if ((p || I) && !se && (ne(w) || a && Array.isArray(w))) {
660
- const k = Fe(p), S = Fe(I), q = !re(k.value) && w.length > +k.value, J = !re(S.value) && w.length < +S.value;
659
+ if ((p || C) && !se && (ne(w) || a && Array.isArray(w))) {
660
+ const k = Fe(p), S = Fe(C), q = !re(k.value) && w.length > +k.value, J = !re(S.value) && w.length < +S.value;
661
661
  if ((q || J) && (be(q, k.message, S.message), !s))
662
662
  return _(m[$].message), m;
663
663
  }
@@ -735,7 +735,7 @@ function Vt(e = {}) {
735
735
  array: /* @__PURE__ */ new Set(),
736
736
  watch: /* @__PURE__ */ new Set()
737
737
  }, A, p = 0;
738
- const I = {
738
+ const C = {
739
739
  isDirty: !1,
740
740
  dirtyFields: !1,
741
741
  validatingFields: !1,
@@ -744,7 +744,7 @@ function Vt(e = {}) {
744
744
  isValid: !1,
745
745
  errors: !1
746
746
  }, x = {
747
- ...I
747
+ ...C
748
748
  };
749
749
  let R = {
750
750
  ...x
@@ -763,7 +763,7 @@ function Vt(e = {}) {
763
763
  }
764
764
  }, B = (n, i) => {
765
765
  !t.disabled && (x.isValidating || x.validatingFields || R.isValidating || R.validatingFields) && ((n || Array.from(d.mount)).forEach((u) => {
766
- u && (i ? P(r.validatingFields, u, i) : H(r.validatingFields, u));
766
+ u && (i ? N(r.validatingFields, u, i) : H(r.validatingFields, u));
767
767
  }), h.state.next({
768
768
  validatingFields: r.validatingFields,
769
769
  isValidating: !Z(r.validatingFields)
@@ -772,15 +772,15 @@ function Vt(e = {}) {
772
772
  if (v && u && !t.disabled) {
773
773
  if (l.action = !0, f && Array.isArray(g(s, n))) {
774
774
  const b = u(g(s, n), v.argA, v.argB);
775
- y && P(s, n, b);
775
+ y && N(s, n, b);
776
776
  }
777
777
  if (f && Array.isArray(g(r.errors, n))) {
778
778
  const b = u(g(r.errors, n), v.argA, v.argB);
779
- y && P(r.errors, n, b), At(r.errors, n);
779
+ y && N(r.errors, n, b), At(r.errors, n);
780
780
  }
781
781
  if ((x.touchedFields || R.touchedFields) && f && Array.isArray(g(r.touchedFields, n))) {
782
782
  const b = u(g(r.touchedFields, n), v.argA, v.argB);
783
- y && P(r.touchedFields, n, b);
783
+ y && N(r.touchedFields, n, b);
784
784
  }
785
785
  (x.dirtyFields || R.dirtyFields) && (r.dirtyFields = Ve(o, a)), h.state.next({
786
786
  name: n,
@@ -790,9 +790,9 @@ function Vt(e = {}) {
790
790
  isValid: r.isValid
791
791
  });
792
792
  } else
793
- P(a, n, i);
793
+ N(a, n, i);
794
794
  }, D = (n, i) => {
795
- P(r.errors, n, i), h.state.next({
795
+ N(r.errors, n, i), h.state.next({
796
796
  errors: r.errors
797
797
  });
798
798
  }, _ = (n) => {
@@ -803,8 +803,8 @@ function Vt(e = {}) {
803
803
  }, m = (n, i, u, v) => {
804
804
  const y = g(s, n);
805
805
  if (y) {
806
- const f = g(a, n, N(u) ? g(o, n) : u);
807
- N(f) || v && v.defaultChecked || i ? P(a, n, i ? f : Er(y._f)) : J(n, f), l.mount && !l.action && W();
806
+ const f = g(a, n, I(u) ? g(o, n) : u);
807
+ I(f) || v && v.defaultChecked || i ? N(a, n, i ? f : Er(y._f)) : J(n, f), l.mount && !l.action && W();
808
808
  }
809
809
  }, F = (n, i, u, v, y) => {
810
810
  let f = !1, b = !1;
@@ -814,19 +814,19 @@ function Vt(e = {}) {
814
814
  if (!t.disabled) {
815
815
  if (!u || v) {
816
816
  (x.isDirty || R.isDirty) && (b = r.isDirty, r.isDirty = O.isDirty = k(), f = b !== O.isDirty);
817
- const j = ue(g(o, n), i);
818
- b = !!g(r.dirtyFields, n), j ? H(r.dirtyFields, n) : P(r.dirtyFields, n, !0), O.dirtyFields = r.dirtyFields, f = f || (x.dirtyFields || R.dirtyFields) && b !== !j;
817
+ const P = ue(g(o, n), i);
818
+ b = !!g(r.dirtyFields, n), P ? H(r.dirtyFields, n) : N(r.dirtyFields, n, !0), O.dirtyFields = r.dirtyFields, f = f || (x.dirtyFields || R.dirtyFields) && b !== !P;
819
819
  }
820
820
  if (u) {
821
- const j = g(r.touchedFields, n);
822
- j || (P(r.touchedFields, n, u), O.touchedFields = r.touchedFields, f = f || (x.touchedFields || R.touchedFields) && j !== u);
821
+ const P = g(r.touchedFields, n);
822
+ P || (N(r.touchedFields, n, u), O.touchedFields = r.touchedFields, f = f || (x.touchedFields || R.touchedFields) && P !== u);
823
823
  }
824
824
  f && y && h.state.next(O);
825
825
  }
826
826
  return f ? O : {};
827
- }, C = (n, i, u, v) => {
827
+ }, j = (n, i, u, v) => {
828
828
  const y = g(r.errors, n), f = (x.isValid || R.isValid) && ce(i) && r.isValid !== i;
829
- if (t.delayError && u ? (A = $(() => D(n, u)), A(t.delayError)) : (clearTimeout(p), A = null, u ? P(r.errors, n, u) : H(r.errors, n)), (u ? !ue(y, u) : y) || !Z(v) || f) {
829
+ if (t.delayError && u ? (A = $(() => D(n, u)), A(t.delayError)) : (clearTimeout(p), A = null, u ? N(r.errors, n, u) : H(r.errors, n)), (u ? !ue(y, u) : y) || !Z(v) || f) {
830
830
  const b = {
831
831
  ...v,
832
832
  ...f && ce(i) ? { isValid: i } : {},
@@ -843,7 +843,7 @@ function Vt(e = {}) {
843
843
  if (B(n), n)
844
844
  for (const u of n) {
845
845
  const v = g(i, u);
846
- v ? P(r.errors, u, v) : H(r.errors, u);
846
+ v ? N(r.errors, u, v) : H(r.errors, u);
847
847
  }
848
848
  else
849
849
  r.errors = i;
@@ -856,12 +856,12 @@ function Vt(e = {}) {
856
856
  if (y) {
857
857
  const { _f: f, ...b } = y;
858
858
  if (f) {
859
- const O = d.array.has(f.name), j = y._f && gt(y._f);
860
- j && x.validatingFields && B([f.name], !0);
859
+ const O = d.array.has(f.name), P = y._f && gt(y._f);
860
+ P && x.validatingFields && B([f.name], !0);
861
861
  const ae = await sr(y, d.disabled, a, M, t.shouldUseNativeValidation && !i, O);
862
- if (j && x.validatingFields && B([f.name]), ae[f.name] && (u.valid = !1, i))
862
+ if (P && x.validatingFields && B([f.name]), ae[f.name] && (u.valid = !1, i))
863
863
  break;
864
- !i && (g(ae, f.name) ? O ? Lr(r.errors, ae, f.name) : P(r.errors, f.name, ae[f.name]) : H(r.errors, f.name));
864
+ !i && (g(ae, f.name) ? O ? Lr(r.errors, ae, f.name) : N(r.errors, f.name, ae[f.name]) : H(r.errors, f.name));
865
865
  }
866
866
  !Z(b) && await K(b, i, u);
867
867
  }
@@ -873,14 +873,14 @@ function Vt(e = {}) {
873
873
  i && (i._f.refs ? i._f.refs.every((u) => !Ye(u)) : !Ye(i._f.ref)) && le(n);
874
874
  }
875
875
  d.unMount = /* @__PURE__ */ new Set();
876
- }, k = (n, i) => !t.disabled && (n && i && P(a, n, i), !ue(c(), o)), S = (n, i, u) => Ke(n, d, {
877
- ...l.mount ? a : N(i) ? o : ne(n) ? { [n]: i } : i
876
+ }, k = (n, i) => !t.disabled && (n && i && N(a, n, i), !ue(c(), o)), S = (n, i, u) => Ke(n, d, {
877
+ ...l.mount ? a : I(i) ? o : ne(n) ? { [n]: i } : i
878
878
  }, u, i), q = (n) => Me(g(l.mount ? a : o, n, t.shouldUnregister ? g(o, n, []) : [])), J = (n, i, u = {}) => {
879
879
  const v = g(s, n);
880
880
  let y = i;
881
881
  if (v) {
882
882
  const f = v._f;
883
- f && (!f.disabled && P(a, n, Nr(i, f)), y = Ne(f.ref) && re(i) ? "" : i, Cr(f.ref) ? [...f.ref.options].forEach((b) => b.selected = y.includes(b.value)) : f.refs ? De(f.ref) ? f.refs.forEach((b) => {
883
+ f && (!f.disabled && N(a, n, Nr(i, f)), y = Ne(f.ref) && re(i) ? "" : i, Cr(f.ref) ? [...f.ref.options].forEach((b) => b.selected = y.includes(b.value)) : f.refs ? De(f.ref) ? f.refs.forEach((b) => {
884
884
  (!b.defaultChecked || !b.disabled) && (Array.isArray(y) ? b.checked = !!y.find((O) => O === b.value) : b.checked = y === b.value || !!y);
885
885
  }) : f.refs.forEach((b) => b.checked = b.value === y) : ur(f.ref) ? f.ref.value = "" : (f.ref.value = y, f.ref.type || h.state.next({
886
886
  name: n,
@@ -897,7 +897,7 @@ function Vt(e = {}) {
897
897
  }
898
898
  }, X = (n, i, u = {}) => {
899
899
  const v = g(s, n), y = d.array.has(n), f = U(i);
900
- P(a, n, f), y ? (h.array.next({
900
+ N(a, n, f), y ? (h.array.next({
901
901
  name: n,
902
902
  values: U(a)
903
903
  }), (x.isDirty || x.dirtyFields || R.isDirty || R.dirtyFields) && u.shouldDirty && h.state.next({
@@ -912,13 +912,13 @@ function Vt(e = {}) {
912
912
  l.mount = !0;
913
913
  const i = n.target;
914
914
  let u = i.name, v = !0;
915
- const y = g(s, u), f = (j) => {
916
- v = Number.isNaN(j) || he(j) && isNaN(j.getTime()) || ue(j, g(a, u, j));
915
+ const y = g(s, u), f = (P) => {
916
+ v = Number.isNaN(P) || he(P) && isNaN(P.getTime()) || ue(P, g(a, u, P));
917
917
  }, b = Ee(t.mode), O = Ee(t.reValidateMode);
918
918
  if (y) {
919
- let j, ae;
919
+ let P, ae;
920
920
  const Ce = i.type ? Er(y._f) : at(n), _e = n.type === xr.BLUR || n.type === xr.FOCUS_OUT, Jr = !ht(y._f) && !t.resolver && !g(r.errors, u) && !y._f.deps || pt(_e, g(r.touchedFields, u), r.isSubmitted, O, b), $e = tr(u, d, _e);
921
- P(a, u, Ce), _e ? (!i || !i.readOnly) && (y._f.onBlur && y._f.onBlur(n), A && A(0)) : y._f.onChange && y._f.onChange(n);
921
+ N(a, u, Ce), _e ? (!i || !i.readOnly) && (y._f.onBlur && y._f.onBlur(n), A && A(0)) : y._f.onChange && y._f.onChange(n);
922
922
  const We = F(u, Ce, _e), Gr = !Z(We) || $e;
923
923
  if (!_e && h.state.next({
924
924
  name: u,
@@ -930,11 +930,11 @@ function Vt(e = {}) {
930
930
  const { errors: _r } = await Q([u]);
931
931
  if (B([u]), f(Ce), v) {
932
932
  const Xr = kr(r.errors, s, u), vr = kr(_r, s, Xr.name || u);
933
- j = vr.error, u = vr.name, ae = Z(_r);
933
+ P = vr.error, u = vr.name, ae = Z(_r);
934
934
  }
935
935
  } else
936
- B([u], !0), j = (await sr(y, d.disabled, a, M, t.shouldUseNativeValidation))[u], B([u]), f(Ce), v && (j ? ae = !1 : (x.isValid || R.isValid) && (ae = await K(s, !0)));
937
- v && (y._f.deps && (!Array.isArray(y._f.deps) || y._f.deps.length > 0) && me(y._f.deps), C(u, ae, j, We));
936
+ B([u], !0), P = (await sr(y, d.disabled, a, M, t.shouldUseNativeValidation))[u], B([u]), f(Ce), v && (P ? ae = !1 : (x.isValid || R.isValid) && (ae = await K(s, !0)));
937
+ v && (y._f.deps && (!Array.isArray(y._f.deps) || y._f.deps.length > 0) && me(y._f.deps), j(u, ae, P, We));
938
938
  }
939
939
  }, ye = (n, i) => {
940
940
  if (g(r.errors, i) && n.focus)
@@ -943,7 +943,7 @@ function Vt(e = {}) {
943
943
  let u, v;
944
944
  const y = te(n);
945
945
  if (t.resolver) {
946
- const f = await se(N(n) ? n : y);
946
+ const f = await se(I(n) ? n : y);
947
947
  u = Z(f), v = n ? !y.some((b) => g(f, b)) : u;
948
948
  } else n ? (v = (await Promise.all(y.map(async (f) => {
949
949
  const b = g(s, f);
@@ -958,7 +958,7 @@ function Vt(e = {}) {
958
958
  let u = {
959
959
  ...l.mount ? a : o
960
960
  };
961
- return i && (u = Dr(i.dirtyFields ? r.dirtyFields : r.touchedFields, u)), N(n) ? u : ne(n) ? g(u, n) : n.map((v) => g(u, v));
961
+ return i && (u = Dr(i.dirtyFields ? r.dirtyFields : r.touchedFields, u)), I(n) ? u : ne(n) ? g(u, n) : n.map((v) => g(u, v));
962
962
  }, E = (n, i) => ({
963
963
  invalid: !!g((i || r).errors, n),
964
964
  isDirty: !!g((i || r).dirtyFields, n),
@@ -970,9 +970,9 @@ function Vt(e = {}) {
970
970
  errors: n ? r.errors : {}
971
971
  });
972
972
  }, Y = (n, i, u) => {
973
- const v = (g(s, n, { _f: {} })._f || {}).ref, y = g(r.errors, n) || {}, { ref: f, message: b, type: O, ...j } = y;
974
- P(r.errors, n, {
975
- ...j,
973
+ const v = (g(s, n, { _f: {} })._f || {}).ref, y = g(r.errors, n) || {}, { ref: f, message: b, type: O, ...P } = y;
974
+ N(r.errors, n, {
975
+ ...P,
976
976
  ...i,
977
977
  ref: v
978
978
  }), h.state.next({
@@ -997,7 +997,7 @@ function Vt(e = {}) {
997
997
  }, pe({
998
998
  ...n,
999
999
  formState: {
1000
- ...I,
1000
+ ...C,
1001
1001
  ...n.formState
1002
1002
  }
1003
1003
  })), le = (n, i = {}) => {
@@ -1014,7 +1014,7 @@ function Vt(e = {}) {
1014
1014
  }, ke = (n, i = {}) => {
1015
1015
  let u = g(s, n);
1016
1016
  const v = ce(i.disabled) || ce(t.disabled);
1017
- return P(s, n, {
1017
+ return N(s, n, {
1018
1018
  ...u || {},
1019
1019
  _f: {
1020
1020
  ...u && u._f ? u._f : { ref: { name: n } },
@@ -1041,10 +1041,10 @@ function Vt(e = {}) {
1041
1041
  ref: (y) => {
1042
1042
  if (y) {
1043
1043
  ke(n, i), u = g(s, n);
1044
- const f = N(y.value) && y.querySelectorAll && y.querySelectorAll("input,select,textarea")[0] || y, b = ft(f), O = u._f.refs || [];
1045
- if (b ? O.find((j) => j === f) : f === u._f.ref)
1044
+ const f = I(y.value) && y.querySelectorAll && y.querySelectorAll("input,select,textarea")[0] || y, b = ft(f), O = u._f.refs || [];
1045
+ if (b ? O.find((P) => P === f) : f === u._f.ref)
1046
1046
  return;
1047
- P(s, n, {
1047
+ N(s, n, {
1048
1048
  _f: {
1049
1049
  ...u._f,
1050
1050
  ...b ? {
@@ -1102,7 +1102,7 @@ function Vt(e = {}) {
1102
1102
  }), v)
1103
1103
  throw v;
1104
1104
  }, qr = (n, i = {}) => {
1105
- g(s, n) && (N(i.defaultValue) ? X(n, U(g(o, n))) : (X(n, i.defaultValue), P(o, n, U(i.defaultValue))), i.keepTouched || H(r.touchedFields, n), i.keepDirty || (H(r.dirtyFields, n), r.isDirty = i.defaultValue ? k(n, U(g(o, n))) : k()), i.keepError || (H(r.errors, n), x.isValid && W()), h.state.next({ ...r }));
1105
+ g(s, n) && (I(i.defaultValue) ? X(n, U(g(o, n))) : (X(n, i.defaultValue), N(o, n, U(i.defaultValue))), i.keepTouched || H(r.touchedFields, n), i.keepDirty || (H(r.dirtyFields, n), r.isDirty = i.defaultValue ? k(n, U(g(o, n))) : k()), i.keepError || (H(r.errors, n), x.isValid && W()), h.state.next({ ...r }));
1106
1106
  }, fr = (n, i = {}) => {
1107
1107
  const u = n ? U(n) : o, v = U(u), y = Z(n), f = y ? o : v;
1108
1108
  if (i.keepDefaultValues || (o = u), !i.keepValues) {
@@ -1112,15 +1112,15 @@ function Vt(e = {}) {
1112
1112
  ...Object.keys(Ve(o, a))
1113
1113
  ]);
1114
1114
  for (const O of Array.from(b))
1115
- g(r.dirtyFields, O) ? P(f, O, g(a, O)) : X(O, g(f, O));
1115
+ g(r.dirtyFields, O) ? N(f, O, g(a, O)) : X(O, g(f, O));
1116
1116
  } else {
1117
- if (nr && N(n))
1117
+ if (nr && I(n))
1118
1118
  for (const b of d.mount) {
1119
1119
  const O = g(s, b);
1120
1120
  if (O && O._f) {
1121
- const j = Array.isArray(O._f.refs) ? O._f.refs[0] : O._f.ref;
1122
- if (Ne(j)) {
1123
- const ae = j.closest("form");
1121
+ const P = Array.isArray(O._f.refs) ? O._f.refs[0] : O._f.ref;
1122
+ if (Ne(P)) {
1123
+ const ae = P.closest("form");
1124
1124
  if (ae) {
1125
1125
  ae.reset();
1126
1126
  break;
@@ -1262,7 +1262,7 @@ var ve = () => {
1262
1262
  const r = (Math.random() * 16 + e) % 16 | 0;
1263
1263
  return (t == "x" ? r : r & 3 | 8).toString(16);
1264
1264
  });
1265
- }, qe = (e, t, r = {}) => r.shouldFocus || N(r.shouldFocus) ? r.focusName || `${e}.${N(r.focusIndex) ? t : r.focusIndex}.` : "", ze = (e, t) => [
1265
+ }, qe = (e, t, r = {}) => r.shouldFocus || I(r.shouldFocus) ? r.focusName || `${e}.${I(r.focusIndex) ? t : r.focusIndex}.` : "", ze = (e, t) => [
1266
1266
  ...e,
1267
1267
  ...te(t)
1268
1268
  ], He = (e) => Array.isArray(e) ? e.map(() => {
@@ -1274,7 +1274,7 @@ function Je(e, t, r) {
1274
1274
  ...e.slice(t)
1275
1275
  ];
1276
1276
  }
1277
- var Ge = (e, t, r) => Array.isArray(e) ? (N(e[r]) && (e[r] = void 0), e.splice(r, 0, e.splice(t, 1)[0]), e) : [], Xe = (e, t) => [
1277
+ var Ge = (e, t, r) => Array.isArray(e) ? (I(e[r]) && (e[r] = void 0), e.splice(r, 0, e.splice(t, 1)[0]), e) : [], Xe = (e, t) => [
1278
1278
  ...te(t),
1279
1279
  ...te(e)
1280
1280
  ];
@@ -1285,11 +1285,11 @@ function Et(e, t) {
1285
1285
  s.splice(o - r, 1), r++;
1286
1286
  return Me(s).length ? s : [];
1287
1287
  }
1288
- var Ze = (e, t) => N(t) ? [] : Et(e, te(t).sort((r, s) => r - s)), Qe = (e, t, r) => {
1288
+ var Ze = (e, t) => I(t) ? [] : Et(e, te(t).sort((r, s) => r - s)), Qe = (e, t, r) => {
1289
1289
  [e[t], e[r]] = [e[r], e[t]];
1290
1290
  }, Sr = (e, t, r) => (e[t] = r, e);
1291
1291
  function wt(e) {
1292
- const t = ge(), { control: r = t.control, name: s, keyName: o = "id", shouldUnregister: a, rules: l } = e, [d, A] = V.useState(r._getFieldArray(s)), p = V.useRef(r._getFieldArray(s).map(ve)), I = V.useRef(!1);
1292
+ const t = ge(), { control: r = t.control, name: s, keyName: o = "id", shouldUnregister: a, rules: l } = e, [d, A] = V.useState(r._getFieldArray(s)), p = V.useRef(r._getFieldArray(s).map(ve)), C = V.useRef(!1);
1293
1293
  r._names.array.add(s), V.useMemo(() => l && d.length >= 0 && r.register(s, l), [r, s, d.length, l]), or(() => r._subjects.array.subscribe({
1294
1294
  next: ({ values: _, name: m }) => {
1295
1295
  if (m === s || !m) {
@@ -1299,25 +1299,25 @@ function wt(e) {
1299
1299
  }
1300
1300
  }).unsubscribe, [r, s]);
1301
1301
  const x = V.useCallback((_) => {
1302
- I.current = !0, r._setFieldArray(s, _);
1302
+ C.current = !0, r._setFieldArray(s, _);
1303
1303
  }, [r, s]), R = (_, m) => {
1304
- const F = te(U(_)), C = ze(r._getFieldArray(s), F);
1305
- r._names.focus = qe(s, C.length - 1, m), p.current = ze(p.current, F.map(ve)), x(C), A(C), r._setFieldArray(s, C, ze, {
1304
+ const F = te(U(_)), j = ze(r._getFieldArray(s), F);
1305
+ r._names.focus = qe(s, j.length - 1, m), p.current = ze(p.current, F.map(ve)), x(j), A(j), r._setFieldArray(s, j, ze, {
1306
1306
  argA: He(_)
1307
1307
  });
1308
1308
  }, h = (_, m) => {
1309
- const F = te(U(_)), C = Xe(r._getFieldArray(s), F);
1310
- r._names.focus = qe(s, 0, m), p.current = Xe(p.current, F.map(ve)), x(C), A(C), r._setFieldArray(s, C, Xe, {
1309
+ const F = te(U(_)), j = Xe(r._getFieldArray(s), F);
1310
+ r._names.focus = qe(s, 0, m), p.current = Xe(p.current, F.map(ve)), x(j), A(j), r._setFieldArray(s, j, Xe, {
1311
1311
  argA: He(_)
1312
1312
  });
1313
1313
  }, M = (_) => {
1314
1314
  const m = Ze(r._getFieldArray(s), _);
1315
- p.current = Ze(p.current, _), x(m), A(m), !Array.isArray(g(r._fields, s)) && P(r._fields, s, void 0), r._setFieldArray(s, m, Ze, {
1315
+ p.current = Ze(p.current, _), x(m), A(m), !Array.isArray(g(r._fields, s)) && N(r._fields, s, void 0), r._setFieldArray(s, m, Ze, {
1316
1316
  argA: _
1317
1317
  });
1318
1318
  }, $ = (_, m, F) => {
1319
- const C = te(U(m)), Q = Je(r._getFieldArray(s), _, C);
1320
- r._names.focus = qe(s, _, F), p.current = Je(p.current, _, C.map(ve)), x(Q), A(Q), r._setFieldArray(s, Q, Je, {
1319
+ const j = te(U(m)), Q = Je(r._getFieldArray(s), _, j);
1320
+ r._names.focus = qe(s, _, F), p.current = Je(p.current, _, j.map(ve)), x(Q), A(Q), r._setFieldArray(s, Q, Je, {
1321
1321
  argA: _,
1322
1322
  argB: He(m)
1323
1323
  });
@@ -1334,8 +1334,8 @@ function wt(e) {
1334
1334
  argB: m
1335
1335
  }, !1);
1336
1336
  }, w = (_, m) => {
1337
- const F = U(m), C = Sr(r._getFieldArray(s), _, F);
1338
- p.current = [...C].map((Q, se) => !Q || se === _ ? ve() : p.current[se]), x(C), A([...C]), r._setFieldArray(s, C, Sr, {
1337
+ const F = U(m), j = Sr(r._getFieldArray(s), _, F);
1338
+ p.current = [...j].map((Q, se) => !Q || se === _ ? ve() : p.current[se]), x(j), A([...j]), r._setFieldArray(s, j, Sr, {
1339
1339
  argA: _,
1340
1340
  argB: F
1341
1341
  }, !0, !1);
@@ -1346,12 +1346,12 @@ function wt(e) {
1346
1346
  return V.useEffect(() => {
1347
1347
  if (r._state.action = !1, tr(s, r._names) && r._subjects.state.next({
1348
1348
  ...r._formState
1349
- }), I.current && (!Ee(r._options.mode).isOnSubmit || r._formState.isSubmitted) && !Ee(r._options.reValidateMode).isOnSubmit)
1349
+ }), C.current && (!Ee(r._options.mode).isOnSubmit || r._formState.isSubmitted) && !Ee(r._options.reValidateMode).isOnSubmit)
1350
1350
  if (r._options.resolver)
1351
1351
  r._runSchema([s]).then((_) => {
1352
1352
  r._updateIsValidating([s]);
1353
1353
  const m = g(_.errors, s), F = g(r._formState.errors, s);
1354
- (F ? !m && F.type || m && (F.type !== m.type || F.message !== m.message) : m && m.type) && (m ? P(r._formState.errors, s, m) : H(r._formState.errors, s), r._subjects.state.next({
1354
+ (F ? !m && F.type || m && (F.type !== m.type || F.message !== m.message) : m && m.type) && (m ? N(r._formState.errors, s, m) : H(r._formState.errors, s), r._subjects.state.next({
1355
1355
  errors: r._formState.errors
1356
1356
  }));
1357
1357
  });
@@ -1367,11 +1367,11 @@ function wt(e) {
1367
1367
  }), r._names.focus && we(r._fields, (_, m) => {
1368
1368
  if (r._names.focus && m.startsWith(r._names.focus) && _.focus)
1369
1369
  return _.focus(), 1;
1370
- }), r._names.focus = "", r._setValid(), I.current = !1;
1370
+ }), r._names.focus = "", r._setValid(), C.current = !1;
1371
1371
  }, [d, s, r]), V.useEffect(() => (!g(r._formValues, s) && r._setFieldArray(s), () => {
1372
1372
  const _ = (m, F) => {
1373
- const C = g(r._fields, m);
1374
- C && C._f && (C._f.mount = F);
1373
+ const j = g(r._fields, m);
1374
+ j && j._f && (j._f.mount = F);
1375
1375
  };
1376
1376
  r._options.shouldUnregister || a ? r.unregister(s) : _(s, !1);
1377
1377
  }), [s, r, o, a]), {
@@ -1462,8 +1462,8 @@ function Rt(e, t) {
1462
1462
  const a = s.split(".");
1463
1463
  let l = r;
1464
1464
  a.forEach((d, A) => {
1465
- const p = A === a.length - 1, I = !isNaN(Number(d));
1466
- p ? l[d] = t[o] : (d in l || (l[d] = I ? [] : {}), l = l[d]);
1465
+ const p = A === a.length - 1, C = !isNaN(Number(d));
1466
+ p ? l[d] = t[o] : (d in l || (l[d] = C ? [] : {}), l = l[d]);
1467
1467
  });
1468
1468
  }), r;
1469
1469
  }
@@ -1527,9 +1527,9 @@ const Ot = (e) => {
1527
1527
  };
1528
1528
  return /* @__PURE__ */ T.jsxs("div", { children: [
1529
1529
  o.map((d, A) => {
1530
- const p = r.map((I) => ({
1531
- ...I,
1532
- name: `${t.name}.${A}.${I.name}`
1530
+ const p = r.map((C) => ({
1531
+ ...C,
1532
+ name: `${t.name}.${A}.${C.name}`
1533
1533
  }));
1534
1534
  return /* @__PURE__ */ T.jsxs(V.Fragment, { children: [
1535
1535
  /* @__PURE__ */ T.jsxs("div", { children: [
@@ -1586,16 +1586,16 @@ const Ot = (e) => {
1586
1586
  /* @__PURE__ */ T.jsx("select", { ...s, disabled: t.readonly, children: o.map((a) => /* @__PURE__ */ T.jsx("option", { value: a.value, children: a.label }, a.value)) })
1587
1587
  ] });
1588
1588
  }, $r = ({ fieldSchema: e }) => {
1589
- var A, p;
1590
- const r = Br().uiConfig, { register: s } = ge(), o = Ur(e.name), a = s(e.name);
1589
+ var p, C;
1590
+ const r = Br().uiConfig, { register: s, control: o } = ge(), a = Ur(e.name), l = s(e.name);
1591
1591
  if (e.visible === !1)
1592
1592
  return;
1593
- const l = (A = r == null ? void 0 : r.renderersByName) == null ? void 0 : A[o];
1594
- if (l)
1595
- return /* @__PURE__ */ T.jsx(l, { fieldSchema: e, register: a });
1596
- const d = (p = r == null ? void 0 : r.renderersByType) == null ? void 0 : p[e.type];
1593
+ const d = (p = r == null ? void 0 : r.renderersByName) == null ? void 0 : p[a];
1597
1594
  if (d)
1598
- return /* @__PURE__ */ T.jsx(d, { fieldSchema: e, register: a });
1595
+ return /* @__PURE__ */ T.jsx(d, { fieldSchema: e, control: o, register: l });
1596
+ const A = (C = r == null ? void 0 : r.renderersByType) == null ? void 0 : C[e.type];
1597
+ if (A)
1598
+ return /* @__PURE__ */ T.jsx(A, { fieldSchema: e, control: o, register: l });
1599
1599
  if (jt.includes(e.type))
1600
1600
  return e.type === "select" ? /* @__PURE__ */ T.jsx(Pt, { fieldSchema: e }) : /* @__PURE__ */ T.jsx(Ct, { fieldSchema: e });
1601
1601
  throw new Error(
@@ -1614,10 +1614,10 @@ const Ot = (e) => {
1614
1614
  let A = !1;
1615
1615
  return (async () => {
1616
1616
  var M;
1617
- const I = Ur(e.name), x = Rt(
1617
+ const C = Ur(e.name), x = Rt(
1618
1618
  o,
1619
1619
  a ?? []
1620
- ), R = (M = r == null ? void 0 : r.updateFieldSchema) == null ? void 0 : M[I];
1620
+ ), R = (M = r == null ? void 0 : r.updateFieldSchema) == null ? void 0 : M[C];
1621
1621
  if (!R) return;
1622
1622
  const h = await R(e.name, e, x);
1623
1623
  !A && h && d({
@@ -1713,7 +1713,7 @@ const Bt = (e) => {
1713
1713
  hideSubmit: A = !1,
1714
1714
  onDirtyChange: p = () => {
1715
1715
  },
1716
- onValuesChange: I = () => {
1716
+ onValuesChange: C = () => {
1717
1717
  },
1718
1718
  resolver: x,
1719
1719
  readonly: R
@@ -1752,7 +1752,7 @@ const Bt = (e) => {
1752
1752
  $t,
1753
1753
  {
1754
1754
  onDirtyChange: p,
1755
- onValuesChange: I
1755
+ onValuesChange: C
1756
1756
  }
1757
1757
  ),
1758
1758
  /* @__PURE__ */ T.jsxs(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "autoforma",
3
- "version": "2.2.0",
3
+ "version": "2.4.0",
4
4
  "description": "AutoForma is a headless dynamic form builder based on React Hook Form",
5
5
  "type": "module",
6
6
  "sideEffects": false,