import{p as zt,c as Kt,$ as Zt}from"./vendor-zod-BNDLCzeL.js";import{R as b,r as Ae}from"./vendor-react-C630P38J.js";var ve=e=>e.type==="checkbox",le=e=>e instanceof Date,q=e=>e==null;const wt=e=>typeof e=="object";var U=e=>!q(e)&&!Array.isArray(e)&&wt(e)&&!le(e),Me=e=>U(e)&&e.target?ve(e.target)?e.target.checked:e.target.value:e,Dt=(e,r)=>r.split(".").some((t,i,a)=>!isNaN(Number(t))&&e.has(a.slice(0,i).join("."))),kt=e=>{const r=e.constructor&&e.constructor.prototype;return U(r)&&r.hasOwnProperty("isPrototypeOf")},De=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function L(e){if(e instanceof Date)return new Date(e);const r=typeof FileList<"u"&&e instanceof FileList;if(De&&(e instanceof Blob||r))return e;const t=Array.isArray(e);if(!t&&!(U(e)&&kt(e)))return e;const i=t?[]:Object.create(Object.getPrototypeOf(e));for(const a in e)Object.prototype.hasOwnProperty.call(e,a)&&(i[a]=L(e[a]));return i}const ie={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},te={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ee={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},pe="form",Ot="root",Ct=["__proto__","constructor","prototype"];var _e=e=>/^\w*$/.test(e),S=e=>e===void 0,ke=e=>e.split(/[.[\]'"]/g).filter(Boolean),c=(e,r,t)=>{if(!r||!U(e))return t;const i=_e(r)?[r]:ke(r);if(i.some(o=>Ct.includes(o)))return t;const a=i.reduce((o,l)=>q(o)?void 0:o[l],e);return S(a)||a===e?S(e[r])?t:e[r]:a},z=e=>typeof e=="boolean",H=e=>typeof e=="function",C=(e,r,t)=>{let i=-1;const a=_e(r)?[r]:ke(r),o=a.length,l=o-1;for(;++ib.useContext(je);var Rt=(e,r,t,i=!0)=>{const a={};for(const o in e)Object.defineProperty(a,o,{get:()=>{const l=o;return r._proxyFormState[l]!==te.all&&(r._proxyFormState[l]=!i||te.all),t&&(t[l]=!0),e[l]}});return a};const He=De?b.useLayoutEffect:b.useEffect;function Jt(e){const r=qe(),{control:t=r,disabled:i,name:a,exact:o}=e||{},[l,f]=b.useState(()=>({...t._formState,defaultValues:t._defaultValues})),v=b.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return He(()=>t._subscribe({name:a,formState:v.current,exact:o,callback:D=>{!i&&f({...t._formState,...D,defaultValues:t._defaultValues})}}),[a,i,o]),b.useEffect(()=>{v.current.isValid&&t._setValid(!0)},[t]),b.useMemo(()=>Rt(l,t,v.current,!1),[l,t])}var G=e=>typeof e=="string",Ie=(e,r,t,i,a)=>G(e)?(i&&r.watch.add(e),c(t,e,a)):Array.isArray(e)?e.map(o=>(i&&r.watch.add(o),c(t,o))):(i&&(r.watchAll=!0),t),Le=e=>q(e)||!wt(e);const ot=(e,r)=>r.length===0&&!Array.isArray(e)&&!kt(e);function K(e,r,t=new WeakMap){if(e===r)return!0;if(Le(e)||Le(r))return Object.is(e,r);if(le(e)&&le(r))return Object.is(e.getTime(),r.getTime());const i=Object.keys(e),a=Object.keys(r);if(i.length!==a.length)return!1;if(ot(e,i)||ot(r,a))return Object.is(e,r);const o=t.get(e);if(o&&o.has(r))return!0;o?o.add(r):t.set(e,new WeakSet([r]));for(const l of i){const f=e[l];if(!(l in r))return!1;if(l!=="ref"){const v=r[l];if(le(f)&&le(v)||(U(f)||Array.isArray(f))&&(U(v)||Array.isArray(v))?!K(f,v,t):!Object.is(f,v))return!1}}return!0}function Qt(e){const r=qe(),{control:t=r,name:i,defaultValue:a,disabled:o,exact:l,compute:f}=e||{},v=b.useRef(a),D=b.useRef(f),M=b.useRef(void 0),_=b.useRef(t),F=b.useRef(i);D.current=f;const[V,N]=b.useState(()=>{const E=t._getWatch(i,v.current);return D.current?D.current(E):E}),R=b.useCallback(E=>{const k=Ie(i,t._names,E||t._formValues,!1,v.current);return D.current?D.current(k):k},[t._formValues,t._names,i]),T=b.useCallback(E=>{if(!o){const k=Ie(i,t._names,E||t._formValues,!1,v.current);if(D.current){const $=D.current(k);K($,M.current)||(N($),M.current=$)}else N(k)}},[t._formValues,t._names,o,i]);He(()=>((_.current!==t||!K(F.current,i))&&(_.current=t,F.current=i,T()),t._subscribe({name:i,formState:{values:!0},exact:l,callback:E=>{T(E.values)}})),[t,l,i,T]),b.useEffect(()=>t._removeUnmounted());const p=_.current!==t,A=F.current,Y=b.useMemo(()=>{if(o)return null;const E=!p&&!K(A,i);return p||E?R():null},[o,p,i,A,R]);return Y!==null?Y:V}function Xt(e){const r=qe(),{name:t,disabled:i,control:a=r,shouldUnregister:o,defaultValue:l,exact:f=!0}=e,v=Dt(a._names.array,t),D=b.useMemo(()=>c(a._formValues,t,c(a._defaultValues,t,l)),[a,t,l]),M=Qt({control:a,name:t,defaultValue:D,exact:f}),_=Jt({control:a,name:t,exact:f}),F=b.useRef(e),V=b.useRef(null),N=b.useRef(a.register(t,{...e.rules,value:M,...z(e.disabled)?{disabled:e.disabled}:{}}));F.current=e;const R=b.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!c(_.errors,t)},isDirty:{enumerable:!0,get:()=>!!c(_.dirtyFields,t)},isTouched:{enumerable:!0,get:()=>!!c(_.touchedFields,t)},isValidating:{enumerable:!0,get:()=>!!c(_.validatingFields,t)},error:{enumerable:!0,get:()=>c(_.errors,t)}}),[_,t]),T=b.useCallback(E=>{const k=Me(E);return c(a._fields,t)||(N.current=a.register(t,{...F.current.rules,value:k})),N.current.onChange({target:{value:Me(E),name:t},type:ie.CHANGE})},[t,a]),p=b.useCallback(()=>N.current.onBlur({target:{value:c(a._formValues,t),name:t},type:ie.BLUR}),[t,a._formValues]),A=b.useCallback(E=>{E&&(V.current={focus:()=>H(E.focus)&&E.focus(),select:()=>H(E.select)&&E.select(),setCustomValidity:$=>H(E.setCustomValidity)&&E.setCustomValidity($),reportValidity:()=>H(E.reportValidity)&&E.reportValidity()});const k=c(a._fields,t);k&&k._f&&E&&(k._f.ref=V.current)},[a._fields,t]),Y=b.useMemo(()=>({name:t,value:M,...z(i)||_.disabled?{disabled:_.disabled||i}:{},onChange:T,onBlur:p,ref:A}),[t,i,_.disabled,T,p,A,M]);return b.useEffect(()=>{const E=a._options.shouldUnregister||o;a.register(t,{...F.current.rules,...z(F.current.disabled)?{disabled:F.current.disabled}:{}});const k=($,ne)=>{const se=c(a._fields,$);se&&se._f&&(se._f.mount=ne)};if(k(t,!0),E){const $=L(c(o?a._defaultValues:a._options.values||a._defaultValues,t,c(a._options.defaultValues,t,F.current.defaultValue)));C(a._defaultValues,t,$),S(c(a._formValues,t))&&C(a._formValues,t,$)}if(!v&&a.register(t),V.current){const $=c(a._fields,t);$&&$._f&&($._f.ref=V.current)}return()=>{(v?E&&!a._state.action:E)?a.unregister(t):k(t,!1)}},[t,a,v,o]),b.useEffect(()=>{a._setDisabledField({disabled:i,name:t})},[i,t,a]),b.useMemo(()=>({field:Y,formState:_,fieldState:R}),[Y,_,R])}const Fr=e=>e.render(Xt(e)),Ge=b.createContext(null);Ge.displayName="HookFormContext";const er=()=>b.useContext(Ge),Ar=({children:e,watch:r,getValues:t,getFieldState:i,setError:a,clearErrors:o,setValue:l,setValues:f,trigger:v,formState:D,resetField:M,reset:_,handleSubmit:F,unregister:V,control:N,register:R,setFocus:T,subscribe:p})=>{const A=b.useMemo(()=>({watch:r,getValues:t,getFieldState:i,setError:a,clearErrors:o,setValue:l,setValues:f,trigger:v,formState:D,resetField:M,reset:_,handleSubmit:F,unregister:V,control:N,register:R,setFocus:T,subscribe:p}),[o,N,D,i,t,F,R,_,M,a,T,l,f,p,v,V,r]);return b.createElement(Ge.Provider,{value:A},b.createElement(je.Provider,{value:A.control},e))};var Ye=(e,r,t,i,a)=>r?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[i]:a||!0}}:{},St=e=>Array.isArray(e)?e.filter(Boolean):[],Ee=e=>Array.isArray(e)?e:[e],ft=()=>{let e=[];return{get observers(){return e},next:a=>{for(const o of e)o.next&&o.next(a)},subscribe:a=>(e.push(a),{unsubscribe:()=>{e=e.filter(o=>o!==a)}}),unsubscribe:()=>{e=[]}}};function Tt(e,r){const t={};for(const i in e)if(e.hasOwnProperty(i)){const a=e[i],o=r[i];if(a&&U(a)&&o){const l=Tt(a,o);U(l)&&(t[i]=l)}else e[i]&&(t[i]=o)}return t}var j=e=>U(e)&&!Object.keys(e).length,ze=e=>e.type==="file",xe=e=>{if(!De)return!1;const r=e?e.ownerDocument:0;return e instanceof(r&&r.defaultView?r.defaultView.HTMLElement:HTMLElement)},pt=e=>e.type==="select-multiple",Ke=e=>e.type==="radio",tr=e=>Ke(e)||ve(e),Ne=e=>xe(e)&&e.isConnected;function rr(e,r){const t=r.slice(0,-1).length;let i=0;for(;i{for(const r in e)if(H(e[r]))return!0;return!1};function Nt(e){return Array.isArray(e)||U(e)&&!ir(e)}function Pe(e,r={}){for(const t in e){const i=e[t];Nt(i)?(r[t]=Array.isArray(i)?[]:{},Pe(i,r[t])):S(i)||(r[t]=!0)}return r}function Be(e){if(e!==!1){if(e===!0)return!0;if(Array.isArray(e)){const r=e.map(t=>Be(t));return r.some(t=>t!==void 0)?r:void 0}if(U(e)){const r={};for(const t in e){const i=Be(e[t]);S(i)||(r[t]=i)}return Object.keys(r).length?r:void 0}}}function ue(e,r,t){t||(t=Pe(r));for(const i in e){const a=e[i];if(Nt(a))S(r)||Le(t[i])?t[i]=Pe(a,Array.isArray(a)?[]:{}):ue(a,q(r)?{}:r[i],t[i]);else{const o=r[i];t[i]=!K(a,o)}}return Be(t)||{}}const dt={value:!1,isValid:!1},ct={value:!0,isValid:!0};var Ut=e=>{if(Array.isArray(e)){if(e.length>1){const r=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:r,isValid:!!r.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!S(e[0].attributes.value)?S(e[0].value)||e[0].value===""?ct:{value:e[0].value,isValid:!0}:ct:dt}return dt},Mt=(e,{valueAsNumber:r,valueAsDate:t,setValueAs:i})=>S(e)?e:r?e===""?NaN:e&&+e:t&&G(e)?new Date(e):i?i(e):e;const yt={isValid:!1,value:null};var It=e=>Array.isArray(e)?e.reduce((r,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:r,yt):yt;function ht(e){const r=e.ref;return ze(r)?r.files:Ke(r)?It(e.refs).value:pt(r)?[...r.selectedOptions].map(({value:t})=>t):ve(r)?Ut(e.refs).value:Mt(S(r.value)?e.ref.value:r.value,e)}var nr=(e,r,t,i)=>{const a={};for(const o of e){const l=c(r,o);l&&C(a,o,l._f)}return{criteriaMode:t,names:[...e],fields:a,shouldUseNativeValidation:i}},we=e=>e instanceof RegExp,ge=e=>S(e)?e:we(e)?e.source:U(e)?we(e.value)?e.value.source:e.value:e,gt=e=>({isOnSubmit:!e||e===te.onSubmit,isOnBlur:e===te.onBlur,isOnChange:e===te.onChange,isOnAll:e===te.all,isOnTouch:e===te.onTouched});const mt="AsyncFunction";var ar=e=>!!e&&!!e.validate&&!!(H(e.validate)&&e.validate.constructor.name===mt||U(e.validate)&&Object.values(e.validate).find(r=>r.constructor.name===mt)),ur=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Ue=(e,r,t)=>!t&&(r.watchAll||r.watch.has(e)||[...r.watch].some(i=>e.startsWith(`${i}.`)));const me=(e,r,t,i)=>{for(const a of t||Object.keys(e)){const o=c(e,a);if(o){const{_f:l,...f}=o;if(l){if(l.refs&&l.refs[0]&&r(l.refs[0],a)&&!i)return!0;if(l.ref&&r(l.ref,l.name)&&!i)return!0;if(me(f,r))break}else if(U(f)&&me(f,r))break}}};function vt(e,r,t){const i=c(e,t);if(i||_e(t))return{error:i,name:t};const a=t.split(".");for(;a.length;){const o=a.join("."),l=c(r,o),f=c(e,o);if(l&&!Array.isArray(l)&&t!==o)return{name:t};if(f&&f.type)return{name:o,error:f};if(f&&f.root&&f.root.type)return{name:`${o}.root`,error:f.root};a.pop()}return{name:t}}var lr=(e,r,t,i)=>{t(e);const{name:a,...o}=e;return j(o)||i&&Object.keys(o).length>=Object.keys(r).length||Object.keys(o).find(l=>r[l]===(!i||te.all))},or=(e,r,t)=>!e||!r||e===r||Ee(e).some(i=>i&&(t?i===r:i.startsWith(r)||r.startsWith(i))),fr=(e,r,t,i,a)=>a.isOnAll?!1:!t&&a.isOnTouch?!(r||e):(t?i.isOnBlur:a.isOnBlur)?!e:(t?i.isOnChange:a.isOnChange)?e:!0,dr=(e,r)=>!St(c(e,r)).length&&W(e,r),_t=(e,r,t)=>{const i=c(e,t),a=Array.isArray(i)?i:[];return C(a,Ot,r[t]),C(e,t,a),e};function Vt(e,r,t="validate"){if(G(e)||Array.isArray(e)&&e.every(G)||z(e)&&!e)return{type:t,message:G(e)?e:"",ref:r}}var de=e=>U(e)&&!we(e)?e:{value:e,message:""},bt=async(e,r,t,i,a,o)=>{const{ref:l,refs:f,required:v,maxLength:D,minLength:M,min:_,max:F,pattern:V,validate:N,name:R,valueAsNumber:T,mount:p}=e._f,A=c(t,R);if(!p||r.has(R))return{};const Y=f?f[0]:l,E=O=>{if(a&&Y.reportValidity){const x=z(O)?"":O||"";f?f.forEach(P=>P.setCustomValidity(x)):Y.setCustomValidity(x),Y.reportValidity()}},k={},$=Ke(l),ne=ve(l),se=$||ne,oe=(T||ze(l))&&S(l.value)&&S(A)||xe(l)&&l.value===""||A===""||Array.isArray(A)&&!A.length,Q=Ye.bind(null,R,i,k),Ve=(O,x,P,I=ee.maxLength,Z=ee.minLength)=>{const re=O?x:P;k[R]={type:O?I:Z,message:re,ref:l,...Q(O?I:Z,re)}};if(o?!Array.isArray(A)||!A.length:v&&(!se&&(oe||q(A))||z(A)&&!A||ne&&!Ut(f).isValid||$&&!It(f).isValid)){const{value:O,message:x}=G(v)?{value:!!v,message:v}:de(v);if(O&&(k[R]={type:ee.required,message:x,ref:Y,...Q(ee.required,x)},!i))return E(x),k}if(!oe&&(!q(_)||!q(F))){let O,x;const P=de(F),I=de(_);if(!q(A)&&!isNaN(A)){const Z=l.valueAsNumber||A&&+A;q(P.value)||(O=Z>P.value),q(I.value)||(x=Znew Date(new Date().toDateString()+" "+be),fe=l.type=="time",ce=l.type=="week";G(P.value)&&A&&(O=fe?re(A)>re(P.value):ce?A>P.value:Z>new Date(P.value)),G(I.value)&&A&&(x=fe?re(A)+O.value,I=!q(x.value)&&A.length<+x.value;if((P||I)&&(Ve(P,O.message,x.message),!i))return E(k[R].message),k}if(V&&!oe&&G(A)){const{value:O,message:x}=de(V);if(we(O)&&!A.match(O)&&(k[R]={type:ee.pattern,message:x,ref:l,...Q(ee.pattern,x)},!i))return E(x),k}if(N){if(H(N)){const O=await N(A,t),x=Vt(O,Y);if(x&&(k[R]={...x,...Q(ee.validate,x.message)},!i))return E(x.message),k}else if(U(N)){let O={};for(const x in N){if(!j(O)&&!i)break;const P=Vt(await N[x](A,t),Y,x);P&&(O={...P,...Q(x,P.message)},E(P.message),i&&(k[R]=O))}if(!j(O)&&(k[R]={ref:Y,...O},!i))return k}}return E(!0),k};const cr={mode:te.onSubmit,reValidateMode:te.onChange,shouldFocusError:!0},Lt={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function yr(e={}){let r={...cr,...e},t={...L(Lt),isLoading:H(r.defaultValues),errors:r.errors||{},disabled:r.disabled||!1},i={},a=U(r.defaultValues)||U(r.values)?L(r.defaultValues||r.values)||{}:{},o=r.shouldUnregister?{}:L(a),l={action:!1,mount:!1,watch:!1,keepIsValid:!1},f={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},v,D=0;const M={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},_={...M};let F={..._};const V={array:ft(),state:ft()},N=r.criteriaMode===te.all,R=s=>n=>{clearTimeout(D),D=setTimeout(s,n)},T=async s=>{if(!l.keepIsValid&&!r.disabled&&(_.isValid||F.isValid||s)){let n;r.resolver?(n=j((await Q()).errors),p()):n=await x({fields:i,onlyCheckValid:!0,eventType:ie.VALID}),n!==t.isValid&&V.state.next({isValid:n})}},p=(s,n)=>{!r.disabled&&(_.isValidating||_.validatingFields||F.isValidating||F.validatingFields)&&((s||Array.from(f.mount)).forEach(u=>{u&&(n?C(t.validatingFields,u,n):W(t.validatingFields,u))}),V.state.next({validatingFields:t.validatingFields,isValidating:!j(t.validatingFields)}))},A=()=>{t.dirtyFields=ue(a,o)},Y=(s,n=[],u,d,h=!0,g=!0)=>{if(d&&u&&!r.disabled){if(l.action=!0,g&&Array.isArray(c(i,s))){const y=u(c(i,s),d.argA,d.argB);h&&C(i,s,y)}if(g&&Array.isArray(c(t.errors,s))){const y=u(c(t.errors,s),d.argA,d.argB);h&&C(t.errors,s,y),dr(t.errors,s)}if((_.touchedFields||F.touchedFields)&&g&&Array.isArray(c(t.touchedFields,s))){const y=u(c(t.touchedFields,s),d.argA,d.argB);h&&C(t.touchedFields,s,y)}(_.dirtyFields||F.dirtyFields)&&A(),V.state.next({name:s,isDirty:I(s,n),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else C(o,s,n)},E=(s,n)=>{C(t.errors,s,n),t.errors={...t.errors},V.state.next({errors:t.errors})},k=s=>{t.errors=s,V.state.next({errors:t.errors,isValid:!1})},$=s=>{const n=_e(s)?[s]:ke(s);let u=o,d=a;for(let h=0;h{const h=c(i,s);if(h){if($(s))return;const g=S(c(o,s)),y=c(o,s,S(u)?c(a,s):u);S(y)||d&&d.defaultChecked||n?C(o,s,n?y:ht(h._f)):fe(s,y),l.mount&&!l.action&&(T(),g&&t.isDirty&&(_.isDirty||F.isDirty)&&(I()||(t.isDirty=!1,V.state.next({...t}))),e.shouldUnregister&&g&&!S(c(o,s))&&Ue(s,f)&&(l.watch=!0))}},se=(s,n,u,d,h)=>{let g=!1,y=!1;const m={name:s};if(!r.disabled){if(!u||d){(_.isDirty||F.isDirty)&&(y=t.isDirty,t.isDirty=m.isDirty=I(),g=y!==m.isDirty);const w=K(c(a,s),n);y=!!c(t.dirtyFields,s),w!==t.isDirty?t.dirtyFields=ue(a,o):w?W(t.dirtyFields,s):C(t.dirtyFields,s,!0),m.dirtyFields=t.dirtyFields,g=g||(_.dirtyFields||F.dirtyFields)&&y!==!w}if(u){const w=c(t.touchedFields,s);w||(C(t.touchedFields,s,u),m.touchedFields=t.touchedFields,g=g||(_.touchedFields||F.touchedFields)&&w!==u)}g&&h&&V.state.next(m)}return g?m:{}},oe=(s,n,u,d)=>{const h=c(t.errors,s),g=(_.isValid||F.isValid)&&z(n)&&t.isValid!==n;if(r.delayError&&u?(v=R(()=>E(s,u)),v(r.delayError)):(clearTimeout(D),v=null,u?C(t.errors,s,u):W(t.errors,s),t.errors={...t.errors}),(u?!K(h,u):h)||!j(d)||g){const y={...d,...g&&z(n)?{isValid:n}:{},errors:t.errors,name:s};t={...t,...y},V.state.next(y)}},Q=async s=>(p(s,!0),await r.resolver(o,r.context,nr(s||f.mount,i,r.criteriaMode,r.shouldUseNativeValidation))),Ve=async s=>{const{errors:n}=await Q(s);if(p(s),s){for(const u of s){const d=c(n,u);d?f.array.has(u)&&U(d)&&!Object.keys(d).some(h=>!Number.isNaN(Number(h)))?_t(t.errors,{[u]:d},u):C(t.errors,u,d):W(t.errors,u)}t.errors={...t.errors}}else t.errors=n;return n},O=async({name:s,eventType:n})=>{if(e.validate){const u=await e.validate({formValues:o,formState:t,name:s,eventType:n});if(U(u))for(const d in u){const h=u[d];h&&Fe(`${pe}.${d}`,{message:G(h.message)?h.message:"",type:h.type||ee.validate})}else G(u)||!u?Fe(pe,{message:u||"",type:ee.validate}):et(pe);return u}return!0},x=async({fields:s,onlyCheckValid:n,name:u,eventType:d,context:h={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(h.runRootValidation=!0,!await O({name:u,eventType:d})&&(h.valid=!1,n)))return h.valid;for(const g in s){const y=s[g];if(y){const{_f:m,...w}=y;if(m){const B=f.array.has(m.name),J=y._f&&ar(y._f),X=_.validatingFields||_.isValidating||F.validatingFields||F.isValidating;J&&X&&p([m.name],!0);const ae=await bt(y,f.disabled,o,N,r.shouldUseNativeValidation&&!n,B);if(J&&X&&p([m.name]),ae[m.name]&&(h.valid=!1,n)||(!n&&(c(ae,m.name)?B?_t(t.errors,ae,m.name):C(t.errors,m.name,ae[m.name]):W(t.errors,m.name)),e.shouldUseNativeValidation&&ae[m.name]))break}!j(w)&&await x({context:h,onlyCheckValid:n,fields:w,name:g,eventType:d})}}return h.valid},P=()=>{for(const s of f.unMount){const n=c(i,s);n&&(n._f.refs?n._f.refs.every(u=>!Ne(u)):!Ne(n._f.ref))&&Ce(s)}f.unMount=new Set},I=(s,n)=>!r.disabled&&(s&&n&&C(o,s,n),!K(Qe(),a)),Z=(s,n,u)=>Ie(s,f,{...l.mount?o:S(n)?a:G(s)?{[s]:n}:n},u,n),re=s=>St(c(l.mount?o:a,s,r.shouldUnregister?c(a,s,[]):[])),fe=(s,n,u={},d=!1)=>{const h=c(i,s);let g=n;if(h){const y=h._f;y&&(!y.disabled&&C(o,s,Mt(n,y)),g=xe(y.ref)&&q(n)?"":n,pt(y.ref)?[...y.ref.options].forEach(m=>m.selected=g.includes(m.value)):y.refs?ve(y.ref)?y.refs.forEach(m=>{(!m.defaultChecked||!m.disabled)&&(Array.isArray(g)?m.checked=!!g.find(w=>w===m.value):m.checked=g===m.value||!!g)}):y.refs.forEach(m=>m.checked=m.value===g):ze(y.ref)?y.ref.value="":(y.ref.value=g,y.ref.type||V.state.next({name:s,values:d?o:L(o)})))}(u.shouldDirty||u.shouldTouch)&&se(s,g,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&Oe(s)},ce=(s,n,u,d=!1)=>{for(const h in n){if(!n.hasOwnProperty(h))return;const g=n[h],y=s+"."+h,m=c(i,y);(f.array.has(s)||U(g)||m&&!m._f)&&!le(g)?ce(y,g,u,d):fe(y,g,u,d)}},be=(s,n,u,d)=>{const h=c(i,s),g=f.array.has(s),y=d?n:L(n),m=c(o,s),w=K(m,y);if(w||C(o,s,y),g)V.array.next({name:s,values:d?o:L(o)}),(_.isDirty||_.dirtyFields||F.isDirty||F.dirtyFields)&&u.shouldDirty&&(A(),V.state.next({name:s,dirtyFields:t.dirtyFields,isDirty:I(s,y)}));else{const B=Array.isArray(y)&&!y.length||j(y);!h||h._f||q(y)||B?fe(s,y,u,d):ce(s,y,u,d)}if(!w){const B=Ue(s,f),J=d?o:L(o);V.state.next({...B&&t,name:l.mount||B?s:void 0,values:J})}},ye=(s,n,u={})=>be(s,n,u,!1),Pt=(s,n={})=>{const u=H(s)?s(o):s;if(!K(o,u)){o={...o,...u};for(const d of f.mount)be(d,c(u,d),n,!0);V.state.next({...t,name:void 0,type:void 0,values:o}),n.shouldValidate&&T()}},Ze=async s=>{l.mount=!0;const n=s.target;let u=n.name,d=!0;const h=c(i,u),g=w=>{d=Number.isNaN(w)||le(w)&&isNaN(w.getTime())||K(w,c(o,u,w))},y=gt(r.mode),m=gt(r.reValidateMode);if(h){let w,B;const J=n.type?ht(h._f):Me(s),X=s.type===ie.BLUR||s.type===ie.FOCUS_OUT,ae=!ur(h._f)&&!e.validate&&!r.resolver&&!c(t.errors,u)&&!h._f.deps||fr(X,c(t.touchedFields,u),t.isSubmitted,m,y),Te=Ue(u,f,X);C(o,u,J),X?(!n||!n.readOnly)&&(h._f.onBlur&&h._f.onBlur(s),v&&v(0)):h._f.onChange&&h._f.onChange(s);const he=se(u,J,X),Gt=!j(he)||Te;if(!X&&V.state.next({name:u,type:s.type,values:L(o)}),ae)return(_.isValid||F.isValid)&&(r.mode==="onBlur"?X&&T():X||T()),Gt&&V.state.next({name:u,...Te?{}:he});if(!r.resolver&&e.validate&&await O({name:u,eventType:s.type}),!X&&Te&&V.state.next({...t}),r.resolver){const{errors:ut}=await Q([u]);if(p([u]),g(J),!d){!j(he)&&V.state.next(he);return}const Yt=vt(t.errors,i,u),lt=vt(ut,i,Yt.name||u);w=lt.error,u=lt.name,B=j(ut)}else p([u],!0),w=(await bt(h,f.disabled,o,N,r.shouldUseNativeValidation))[u],p([u]),g(J),d&&(w?B=!1:(_.isValid||F.isValid)&&(B=await x({fields:i,onlyCheckValid:!0,name:u,eventType:s.type})));d&&(h._f.deps&&(!Array.isArray(h._f.deps)||h._f.deps.length>0)&&Oe(h._f.deps),oe(u,B,w,he))}},Je=(s,n)=>{if(c(t.errors,n)&&s.focus)return s.focus(),1},Oe=async(s,n={})=>{let u,d;const h=Ee(s);if(r.resolver){const g=await Ve(S(s)?s:h);u=j(g),d=s?!h.some(y=>c(g,y)):u}else s?(d=(await Promise.all(h.map(async g=>{const y=c(i,g);return await x({fields:y&&y._f?{[g]:y}:y,eventType:ie.TRIGGER})}))).every(Boolean),!(!d&&!t.isValid)&&T()):d=u=await x({fields:i,name:s,eventType:ie.TRIGGER});return V.state.next({...!G(s)||(_.isValid||F.isValid)&&u!==t.isValid?{}:{name:s},...r.resolver||!s?{isValid:u}:{},errors:t.errors}),n.shouldFocus&&!d&&me(i,Je,s?h:f.mount),d},Qe=(s,n)=>{let u={...l.mount?o:a};return n&&(u=Tt(n.dirtyFields?t.dirtyFields:t.touchedFields,u)),S(s)?u:G(s)?c(u,s):s.map(d=>c(u,d))},Xe=(s,n)=>({invalid:!!c((n||t).errors,s),isDirty:!!c((n||t).dirtyFields,s),error:c((n||t).errors,s),isValidating:!!c(t.validatingFields,s),isTouched:!!c((n||t).touchedFields,s)}),et=s=>{const n=s?Ee(s):void 0;n==null||n.forEach(u=>W(t.errors,u)),n?n.forEach(u=>{V.state.next({name:u,errors:t.errors})}):V.state.next({errors:{}})},Fe=(s,n,u)=>{const d=(c(i,s,{_f:{}})._f||{}).ref,h=c(t.errors,s)||{},{ref:g,message:y,type:m,...w}=h;C(t.errors,s,{...w,...n,ref:d}),V.state.next({name:s,errors:t.errors,isValid:!1}),u&&u.shouldFocus&&d&&d.focus&&d.focus()},Bt=(s,n)=>H(s)?V.state.subscribe({next:u=>"values"in u&&s(u.values||Z(void 0,n),u)}):Z(s,n,!0),tt=s=>V.state.subscribe({next:n=>{if(or(s.name,n.name,s.exact)&&lr(n,s.formState||_,Ht,s.reRenderRoot)){const u={...o};s.callback({values:u,...t,...n,defaultValues:a})}}}).unsubscribe,Wt=s=>(l.mount=!0,F={...F,...s.formState},tt({...s,formState:{...M,...s.formState}})),Ce=(s,n={})=>{for(const u of s?Ee(s):f.mount)f.mount.delete(u),f.array.delete(u),n.keepValue||(W(i,u),W(o,u)),!n.keepError&&W(t.errors,u),!n.keepDirty&&W(t.dirtyFields,u),!n.keepTouched&&W(t.touchedFields,u),!n.keepIsValidating&&W(t.validatingFields,u),!r.shouldUnregister&&!n.keepDefaultValue&&W(a,u);V.state.next({values:L(o)}),V.state.next({...t,...n.keepDirty?{isDirty:I()}:{}}),!n.keepIsValid&&T()},rt=({disabled:s,name:n})=>{if(z(s)&&l.mount||s||f.disabled.has(n)){const h=f.disabled.has(n)!==!!s;s?f.disabled.add(n):f.disabled.delete(n),h&&l.mount&&!l.action&&T()}},Re=(s,n={})=>{let u=c(i,s);const d=z(n.disabled)||z(r.disabled),h=!f.registerName.has(s)&&u&&u._f&&!u._f.mount;return C(i,s,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:s}},name:s,mount:!0,...n}}),f.mount.add(s),u&&!h?rt({disabled:z(n.disabled)?n.disabled:r.disabled,name:s}):ne(s,!0,n.value),{...d?{disabled:n.disabled||r.disabled}:{},...r.progressive?{required:!!n.required,min:ge(n.min),max:ge(n.max),minLength:ge(n.minLength),maxLength:ge(n.maxLength),pattern:ge(n.pattern)}:{},name:s,onChange:Ze,onBlur:Ze,ref:g=>{if(g){f.registerName.add(s),Re(s,n),f.registerName.delete(s),u=c(i,s);const y=S(g.value)&&g.querySelectorAll&&g.querySelectorAll("input,select,textarea")[0]||g,m=tr(y),w=u._f.refs||[];if(m?w.find(B=>B===y):y===u._f.ref)return;C(i,s,{_f:{...u._f,...m?{refs:[...w.filter(Ne),y,...Array.isArray(c(a,s))?[{}]:[]],ref:{type:y.type,name:s}}:{ref:y}}}),ne(s,!1,void 0,y)}else u=c(i,s,{}),u._f&&(u._f.mount=!1),(r.shouldUnregister||n.shouldUnregister)&&!(Dt(f.array,s)&&l.action)&&f.unMount.add(s)}}},Se=()=>r.shouldFocusError&&!r.shouldUseNativeValidation&&me(i,Je,f.mount),$t=s=>{z(s)&&(V.state.next({disabled:s}),me(i,(n,u)=>{const d=c(i,u);d&&(n.disabled=d._f.disabled||s,Array.isArray(d._f.refs)&&d._f.refs.forEach(h=>{h.disabled=d._f.disabled||s}))},0,!1))},st=(s,n)=>async u=>{let d;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let h=L(o);if(V.state.next({isSubmitting:!0}),r.resolver){const{errors:g,values:y}=await Q();p(),t.errors=g,h=L(y)}else await x({fields:i,eventType:ie.SUBMIT});if(f.disabled.size)for(const g of f.disabled)W(h,g);if(W(t.errors,Ot),j(t.errors)){V.state.next({errors:{}});try{await s(h,u)}catch(g){d=g}}else n&&await n({...t.errors},u),Se(),setTimeout(Se);if(V.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:j(t.errors)&&!d,submitCount:t.submitCount+1,errors:t.errors}),d)throw d},jt=(s,n={})=>{c(i,s)&&(S(n.defaultValue)?ye(s,L(c(a,s))):(ye(s,n.defaultValue),C(a,s,L(n.defaultValue))),n.keepTouched||W(t.touchedFields,s),n.keepDirty||(W(t.dirtyFields,s),t.isDirty=n.defaultValue?I(s,L(c(a,s))):I()),n.keepError||(W(t.errors,s),_.isValid&&T()),V.state.next({...t}))},it=(s,n={})=>{const u=s?L(s):a,d=L(u),h=j(s),g=d;if(n.keepDefaultValues||(a=u),!n.keepValues){if(n.keepDirtyValues){const y=new Set([...f.mount,...Object.keys(ue(a,o))]);for(const m of Array.from(y)){const w=c(t.dirtyFields,m),B=c(o,m),J=c(g,m);w&&!S(B)?C(g,m,B):!w&&!S(J)&&ye(m,J)}}else{if(De&&S(s))for(const y of f.mount){const m=c(i,y);if(m&&m._f){const w=Array.isArray(m._f.refs)?m._f.refs[0]:m._f.ref;if(xe(w)){const B=w.closest("form");if(B){B.reset();break}}}}if(n.keepFieldsRef)for(const y of f.mount)ye(y,c(g,y));else i={}}if(r.shouldUnregister){if(o=n.keepDefaultValues?L(a):{},n.keepFieldsRef)for(const y of f.mount)C(o,y,c(g,y))}else o=L(g);V.array.next({values:{...g}}),V.state.next({values:{...g}})}f={mount:n.keepDirtyValues?f.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},l.mount=!_.isValid||!!n.keepIsValid||!!n.keepDirtyValues||!r.shouldUnregister&&!j(g),l.watch=!!r.shouldUnregister,l.keepIsValid=!!n.keepIsValid,l.action=!1,n.keepErrors||(t.errors={}),V.state.next({submitCount:n.keepSubmitCount?t.submitCount:0,isDirty:h?!1:n.keepDirty?t.isDirty:n.keepValues?I():!!(n.keepDefaultValues&&!K(s,a)),isSubmitted:n.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:h?{}:n.keepDirtyValues?n.keepDefaultValues&&o?ue(a,o):t.dirtyFields:n.keepDefaultValues&&s?ue(a,s):n.keepDirty?t.dirtyFields:{},touchedFields:n.keepTouched?t.touchedFields:{},errors:n.keepErrors?t.errors:{},isSubmitSuccessful:n.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:a})},nt=(s,n)=>it(H(s)?s(o):s,{...r.resetOptions,...n}),qt=(s,n={})=>{const u=c(i,s),d=u&&u._f;if(d){const h=d.refs?d.refs[0]:d.ref;h.focus&&setTimeout(()=>{h.focus(),n.shouldSelect&&H(h.select)&&h.select()})}},Ht=s=>{t={...t,...s}},at={control:{register:Re,unregister:Ce,getFieldState:Xe,handleSubmit:st,setError:Fe,_subscribe:tt,_runSchema:Q,_updateIsValidating:p,_focusError:Se,_getWatch:Z,_getDirty:I,_setValid:T,_setFieldArray:Y,_setDisabledField:rt,_setErrors:k,_getFieldArray:re,_reset:it,_resetDefaultValues:()=>H(r.defaultValues)&&r.defaultValues().then(s=>{nt(s,r.resetOptions),V.state.next({isLoading:!1})}),_removeUnmounted:P,_disableForm:$t,_subjects:V,_proxyFormState:_,get _fields(){return i},get _formValues(){return o},get _state(){return l},set _state(s){l=s},get _defaultValues(){return a},get _names(){return f},set _names(s){f=s},get _formState(){return t},get _options(){return r},set _options(s){r={...r,...s}}},subscribe:Wt,trigger:Oe,register:Re,handleSubmit:st,watch:Bt,setValue:ye,setValues:Pt,getValues:Qe,reset:nt,resetField:jt,resetDefaultValues:(s,n={})=>{if(a=L(s),!n.keepDirty){const u=ue(a,o);t.dirtyFields=u,t.isDirty=!j(u)}n.keepIsValid||T(),V.state.next({...t,defaultValues:a})},clearErrors:et,unregister:Ce,setError:Fe,setFocus:qt,getFieldState:Xe};return{...at,formControl:at}}function Er(e={}){const r=b.useRef(void 0),t=b.useRef(void 0),i=b.useRef(e.formControl),[a,o]=b.useState(()=>({...L(Lt),isLoading:H(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:H(e.defaultValues)?void 0:e.defaultValues}));if(!r.current||e.formControl&&i.current!==e.formControl)if(i.current=e.formControl,e.formControl)r.current={...e.formControl,formState:a},e.defaultValues&&!H(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:f,...v}=yr(e);r.current={...v,formState:a}}const l=r.current.control;return l._options=e,He(()=>{const f=l._subscribe({formState:l._proxyFormState,callback:()=>o({...l._formState,defaultValues:l._defaultValues}),reRenderRoot:!0});return o(v=>({...v,isReady:!0})),l._formState.isReady=!0,f},[l]),b.useEffect(()=>l._disableForm(e.disabled),[l,e.disabled]),b.useEffect(()=>{e.mode&&(l._options.mode=e.mode),e.reValidateMode&&(l._options.reValidateMode=e.reValidateMode)},[l,e.mode,e.reValidateMode]),b.useEffect(()=>{e.errors&&(l._setErrors(e.errors),l._focusError())},[l,e.errors]),b.useEffect(()=>{e.shouldUnregister&&l._subjects.state.next({values:l._getWatch()})},[l,e.shouldUnregister]),b.useEffect(()=>{if(l._proxyFormState.isDirty){const f=l._getDirty();f!==a.isDirty&&l._subjects.state.next({isDirty:f})}},[l,a.isDirty]),b.useEffect(()=>{var f;e.values&&!K(e.values,t.current)?(l._reset(e.values,{keepFieldsRef:!0,...l._options.resetOptions}),!((f=l._options.resetOptions)===null||f===void 0)&&f.keepIsValid||l._setValid(),t.current=e.values,o(v=>({...v}))):l._resetDefaultValues()},[l,e.values]),b.useEffect(()=>{l._state.mount||(l._setValid(),l._state.mount=!0),l._state.watch&&(l._state.watch=!1,l._subjects.state.next({...l._formState})),l._removeUnmounted()}),r.current.formState=b.useMemo(()=>Rt(a,l),[l,a]),r.current}const Ft=(e,r,t)=>{if(e&&"reportValidity"in e){const i=c(t,r);e.setCustomValidity(i&&i.message||""),e.reportValidity()}},We=(e,r)=>{for(const t in r.fields){const i=r.fields[t];i&&i.ref&&"reportValidity"in i.ref?Ft(i.ref,t,e):i&&i.refs&&i.refs.forEach(a=>Ft(a,t,e))}},At=(e,r)=>{r.shouldUseNativeValidation&&We(e,r);const t={};for(const i in e){const a=c(r.fields,i),o=Object.assign(e[i]||{},{ref:a&&a.ref});if(hr(r.names||Object.keys(e),i)){const l=Object.assign({},c(t,i));C(l,"root",o),C(t,i,l)}else C(t,i,o)}return t},hr=(e,r)=>{const t=Et(r).replace(/[.*+?^${}()|\\]/g,"\\$&");return e.some(i=>Et(i).match(`^${t}\\.\\d+`))};function Et(e){return e.replace(/[\[\]]/g,"")}function $e(){return $e=Object.assign?Object.assign.bind():function(e){for(var r=1;r0){var v=a.errors[0][0];t[f]={message:v.message,type:v.code}}else t[f]={message:l,type:o};if(a.code==="invalid_union"&&a.errors.forEach(function(_){return _.forEach(function(F){return e.push($e({},F,{path:[].concat(a.path,F.path)}))})}),r){var D=t[f].types,M=D&&D[a.code];t[f]=Ye(f,r,t,o,M?[].concat(M,a.message):a.message)}e.shift()};e.length;)i();return t}function xr(e,r,t){if(t===void 0&&(t={}),(function(i){return"_def"in i&&typeof i._def=="object"&&"typeName"in i._def})(e))return function(i,a,o){try{return Promise.resolve(xt(function(){return Promise.resolve(e[t.mode==="sync"?"parse":"parseAsync"](i,r)).then(function(l){return o.shouldUseNativeValidation&&We({},o),{errors:{},values:t.raw?Object.assign({},i):l}})},function(l){if((function(f){return Array.isArray(f==null?void 0:f.issues)})(l))return{values:{},errors:At(gr(l.errors,!o.shouldUseNativeValidation&&o.criteriaMode==="all"),o)};throw l}))}catch(l){return Promise.reject(l)}};if((function(i){return"_zod"in i&&typeof i._zod=="object"})(e))return function(i,a,o){try{return Promise.resolve(xt(function(){return Promise.resolve((t.mode==="sync"?zt:Kt)(e,i,r)).then(function(l){return o.shouldUseNativeValidation&&We({},o),{errors:{},values:t.raw?Object.assign({},i):l}})},function(l){if((function(f){return f instanceof Zt})(l))return{values:{},errors:At(mr(l.issues,!o.shouldUseNativeValidation&&o.criteriaMode==="all"),o)};throw l}))}catch(l){return Promise.reject(l)}};throw new Error("Invalid input: not a Zod schema")}var wr=function(e){var r=e.as,t=e.errors,i=e.name,a=e.message,o=e.render,l=(function(F,V){if(F==null)return{};var N,R,T={},p=Object.keys(F);for(R=0;R=0||(T[N]=F[N]);return T})(e,["as","errors","name","message","render"]),f=er(),v=c(t||f.formState.errors,i);if(!v)return null;var D=v.message,M=v.types,_=Object.assign({},l,{children:D||a});return Ae.isValidElement(r)?Ae.cloneElement(r,_):o?o({message:D||a,messages:M}):Ae.createElement(r||Ae.Fragment,_)};export{Fr as C,Ar as F,xr as a,er as b,Qt as c,wr as s,Er as u};