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