react-f0rm 1.2.0 → 1.3.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.
- package/README.md +107 -24
- package/dist/devtools/index.cjs.js +1 -1
- package/dist/devtools/index.cjs.js.map +1 -1
- package/dist/devtools/index.mjs +1 -1
- package/dist/devtools/index.mjs.map +1 -1
- package/dist/errors-BKrUdpfI.cjs.js +2 -0
- package/dist/errors-BKrUdpfI.cjs.js.map +1 -0
- package/dist/errors-CrQBddrJ.mjs +2 -0
- package/dist/errors-CrQBddrJ.mjs.map +1 -0
- package/dist/{form-CvmWHUrd.d.ts → form-CeKSBs31.d.ts} +68 -5
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +344 -49
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/index.umd.js +379 -283
- package/dist/index.umd.js.map +1 -1
- package/dist/index.umd.min.js +2 -2
- package/dist/index.umd.min.js.map +1 -1
- package/dist/persist.cjs.js +1 -1
- package/dist/persist.cjs.js.map +1 -1
- package/dist/persist.mjs +1 -1
- package/dist/persist.mjs.map +1 -1
- package/dist/resolvers/standard-schema.cjs.js +1 -1
- package/dist/resolvers/standard-schema.mjs +1 -1
- package/dist/resolvers/yup.cjs.js +1 -1
- package/dist/resolvers/yup.d.ts +1 -1
- package/dist/resolvers/yup.mjs +1 -1
- package/dist/resolvers/zod.cjs.js +1 -1
- package/dist/resolvers/zod.d.ts +1 -1
- package/dist/resolvers/zod.mjs +1 -1
- package/dist/server/index.cjs.js +1 -1
- package/dist/server/index.cjs.js.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.mjs +1 -1
- package/dist/server/index.mjs.map +1 -1
- package/dist/{validate-B1Gdjeaq.mjs → validate-CNtuUhmk.mjs} +2 -2
- package/dist/validate-CNtuUhmk.mjs.map +1 -0
- package/dist/{validate-DAfz8Nbb.cjs.js → validate-Cl4ksNFu.cjs.js} +2 -2
- package/dist/validate-Cl4ksNFu.cjs.js.map +1 -0
- package/dist/{validate-CUmNZqg6.d.ts → validate-nksgv1pR.d.ts} +37 -3
- package/dist/values-Cu6awQOJ.cjs.js +2 -0
- package/dist/values-Cu6awQOJ.cjs.js.map +1 -0
- package/dist/values-DRY-a32G.mjs +2 -0
- package/dist/values-DRY-a32G.mjs.map +1 -0
- package/package.json +20 -9
- package/dist/errors-CxSjrWJO.cjs.js +0 -2
- package/dist/errors-CxSjrWJO.cjs.js.map +0 -1
- package/dist/errors-CzWtwjO0.mjs +0 -2
- package/dist/errors-CzWtwjO0.mjs.map +0 -1
- package/dist/validate-B1Gdjeaq.mjs.map +0 -1
- package/dist/validate-DAfz8Nbb.cjs.js.map +0 -1
- package/dist/values-B1IV-6V4.mjs +0 -2
- package/dist/values-B1IV-6V4.mjs.map +0 -1
- package/dist/values-CDNAYEOB.cjs.js +0 -2
- package/dist/values-CDNAYEOB.cjs.js.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{on as e,emit as t,create as n,setMaxListeners as r}from"@for-fun/event-emitter";import*as o from"react";import i,{useCallback as u,useRef as s,useState as a,useEffect as c,useMemo as l,useContext as d,useReducer as f,createContext as m,createElement as y}from"react";const g=new Map;function v(e){if(Array.isArray(e))return e;const t=g.get(e);if(t)return t;const n=function(e){const t=[];let n="";const r=()=>{if(h(n)){const r=[...t.map(String),n].join("."),o=t.reduce((e,t)=>e+("number"==typeof t?`[${t}]`:`${e?".":""}${t}`),"");throw new TypeError(`Numeric path segment must use bracket notation: "${r}" → "${o}[${n}]" (path: ${e})`)}t.push(n),n=""};for(let o=0;o<e.length;o++){const i=e[o];if("."===i)""!==n&&r();else if("["===i){""!==n&&r();const i=e[o+1];if('"'===i||"'"===i){const n=e.indexOf(i,o+2);if(-1===n)throw new TypeError(`Unterminated quote in path: ${e}`);if("]"!==e[n+1])throw new TypeError(`Expected "]" after quoted segment in path: ${e}`);t.push(e.slice(o+2,n)),o=n+1}else{const n=e.indexOf("]",o+1);if(-1===n)throw new TypeError(`Unterminated bracket in path: ${e}`);const r=e.slice(o+1,n);t.push(h(r)?Number(r):r),o=n}}else n+=i}""===n&&0!==t.length||r();return t}(e);if(g.size>=1e4){const e=g.keys().next();e.done||g.delete(e.value)}return g.set(e,n),n}const h=e=>/^-?\d+$/.test(e);function p(e,t){return t.reduce((e,t)=>{if(null!=e)return e[t]},e)}function b(e,t){if(!t.length||null==e)return e;const[n,...r]=t;if(r.length){const t=b(e[n],r);return t===e[n]?e:k(e,[n],t)}if(Array.isArray(e)){if(!(n in e))return e;const t=e.slice();return delete t[n],t}if("object"!=typeof e||!(n in e))return e;const o={...e};return delete o[n],o}function k(e,t,n){if(!t.length)return n;const[r,...o]=t,i="number"==typeof r?r:Array.isArray(e)&&"string"==typeof r&&h(r)?Number(r):void 0;if(void 0!==i){const t=Array.isArray(e)?e.slice():[];return t[i]=k(t[i],o,n),t}return{...e,[r]:k(e&&e[r],o,n)}}function S(e,t,n,r){if(!t.length)return n;let o=e,i=null,u="";for(let s=0;s<t.length;s++){const a=t[s];if(!r.has(o)){let t;t="number"==typeof a||Array.isArray(o)&&"string"==typeof a&&h(a)?Array.isArray(o)?o.slice():[]:{...o},r.add(t),0===s?e=t:i[u]=t,o=t}s===t.length-1?o[a]=n:(i=o,u=a,o=o[a])}return e}function w(e){return e&&"function"==typeof e.then}function V(e,t){if(Object.is(e,t))return!0;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(!e||!t||"object"!=typeof e||"object"!=typeof t)return!1;const n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!V(e[n],t[n]))return!1;return!0}const r=Object.getPrototypeOf(e);if(r!==Object.prototype&&null!==r)return!1;if(Object.getPrototypeOf(t)!==r)return!1;const o=Object.keys(e),i=Object.keys(t);if(o.length!==i.length)return!1;for(const n of o)if(!V(e[n],t[n]))return!1;return!0}function E(t,n,r,o){return new Promise((i,u)=>{if(o())return void u();if(r())return void i();const s=e(t,n,()=>{if(o())return s(),void u();r()&&(s(),i())})})}function O(e){const t=v(e);return{value:t,key:JSON.stringify(t)}}const A=new WeakMap;function _(e){const t=A.get(e);t&&t.version++}const x=new WeakMap;function T(e,t,n){const r=x.get(e);return r?.has(t)?r.get(t):p(e.initialValues,n)}function L(e,{key:t},n){let r=x.get(e);r||(r=new Map,x.set(e,r)),r.set(t,n)}function C(e,{key:t}){const n=x.get(e);if(!n?.size)return;const r=`${t.slice(0,-1)},`;for(const e of n.keys())e.startsWith(r)&&n.delete(e)}function D(e,t){const n=x.get(e);n&&(void 0===t?n.clear():n.delete(t))}const j=new WeakMap;function M(e){const t=j.get(e);t&&t.version++}function N(e){return e.some(e=>"number"==typeof e)}function F(e){return!!e&&"object"==typeof e&&"string"==typeof e.type&&"string"==typeof e.message}const $="_form",B=Symbol("validation-outcome");function P(e,t){return q(e,O(t))}function q({errors:e},t){return e.get(t.key)?.[0]}const W=[];function I(e,t){return J(e,O(t))}function J({errors:e},t){return e.get(t.key)??W}function R({errors:e}){const t=[];for(const[n,r]of e){const e=JSON.parse(n).join(".");for(const{type:n,message:o}of r)t.push({path:e,type:n,message:o})}return t}function U({errors:e}){return e.values().next().value?.[0]?.message}function z(e,t,n){G(e,O(t),n)}function G({emitter:e,errors:n},r,o){const i=function(e){if("string"==typeof e)return e?[{type:"custom",message:e}]:void 0;if(F(e))return[e];if(!e)return;const t=[];return e.forEach(e=>{"string"==typeof e&&e?t.push({type:"custom",message:e}):F(e)&&t.push(e)}),t.length?t:void 0}(o);i?n.set(r.key,i):n.delete(r.key),t(e,"errors",r)}function H(e,n){const{emitter:r,errors:o}=e;if(void 0===n)return o.clear(),void t(r,"errors");const i="string"==typeof n||N(n)?[O(n)]:n.map(e=>O(e));for(const{key:e}of i)o.delete(e);for(const e of i)t(r,"errors",e)}function K(e,t,n){n?.keepExisting||H(e);for(const[n,r]of Object.entries(t))z(e,n,(Array.isArray(r)?r:[r]).map(e=>({type:"server",message:e})))}function Y({errors:e}){return e.size>0}function Q(e,t){X(e,O(t))}function X({emitter:e,touched:n},r){n.has(r.key)||(n.add(r.key),t(e,"touched",r))}function Z(e,t){return ee(e,O(t))}function ee({touched:e},t){return e.has(t.key)}function te({touched:e}){return Array.from(e,e=>JSON.parse(e).join("."))}function ne({touched:e}){return e.size>0}function re(e){let t=A.get(e);return t?t.version>0&&(t.result=oe(e),t.version=0):(t={version:0,result:oe(e)},A.set(e,t)),t.result}function oe(e){const{initialValues:t,parsedValues:n,values:r,deleted:o}=e,i=new Set;let u=n??t;for(const[e,t]of r)u=S(u,JSON.parse(e),t,i);for(const e of o)u=b(u,JSON.parse(e));return u}function ie(e,t){return ue(e,O(t))}function ue({initialValues:e,parsedValues:t,values:n,deleted:r},o){const{key:i,value:u}=o;if(n.has(i))return n.get(i);if(!r.has(i)){for(let e=u.length-1;e>0;e--){const t=JSON.stringify(u.slice(0,e));if(n.has(t))return p(n.get(t),u.slice(e))}return p(t??e,u)}}function se(e,t,n,r){ae(e,O(t),n,r)}function ae(e,n,r,o){const{emitter:i,values:u,deleted:s}=e;u.set(n.key,r),ye(u,n),ge(s,n),C(e,n),!1===o?.shouldDirty&&L(e,n,r),M(e),_(e),o?.shouldTouch&&X(e,n),o?.shouldValidate&&e.validators.get(n.key)?.(),t(i,"change",n)}function ce(e,t,n){const{values:r,deleted:o}=e;r.set(t.key,n),ye(r,t),ge(o,t),C(e,t),M(e),_(e)}function le({emitter:e},n){t(e,"change",n)}function de(e,t){const n=O(t),{values:r,touched:o,validating:i}=e,u=r.get(n.key);return{value:ue(e,n),error:q(e,n),errors:J(e,n),isDirty:r.has(n.key)&&T(e,n.key,n.value)!==u,isTouched:o.has(n.key),isValidating:i.has(n.key)}}function fe(e,t,n){me(e,O(t),n)}function me(e,n,r){const{key:o,value:i}=n,{emitter:u,values:s,touched:a,errors:c,validating:l,deleted:d}=e;r?.keepValue||r?.keepDirty||(s.delete(o),D(e,o),function(e,t){for(let n=1;n<t.length;n++)if(e.has(JSON.stringify(t.slice(0,n))))return!0;const n=`${JSON.stringify(t).slice(0,-1)},`;for(const t of e.keys())if(t.startsWith(n))return!0;return!1}(s,i)||d.add(o)),r?.keepTouched||a.delete(o),r?.keepError||c.delete(o),l.delete(o),M(e),_(e),t(u,"change",n),t(u,"touched",n),t(u,"errors",n),t(u,"validating",n)}function ye(e,{key:t}){if(!e.size)return;const n=`${t.slice(0,-1)},`;for(const t of e.keys())t.startsWith(n)&&e.delete(t)}function ge(e,{key:t}){if(e.size)for(const n of e)(n===t||n.startsWith(`${t.slice(0,-1)},`)||t.startsWith(`${n.slice(0,-1)},`))&&e.delete(n)}function ve(e,n){e.initialValues===n||V(e.initialValues,n)||(e.initialValues=n,e.parsedValues=void 0,e.values.clear(),e.deleted.clear(),D(e),M(e),_(e),t(e.emitter,"change"))}function he(e,t,n){if(null!==e&&"object"==typeof e){if(Array.isArray(e)){for(let r=0;r<e.length;r++)he(e[r],[...t,r],n);return}const r=Object.keys(e);if(r.length>0){for(const o of r)he(e[o],[...t,o],n);return}}n.push({segments:t,value:e})}function pe(e,n,r){const o=[];if(r?.keepValues)he(re(e),[],o);else if(r?.keepDirtyValues)for(const[t,n]of e.values){const r=JSON.parse(t);T(e,t,r)!==n&&o.push({segments:r,value:n})}e.initialValues=r?.keepDefaultValues?e.initialValues:n??e.initialValues,e.parsedValues=void 0,r?.keepErrors||H(e);const{emitter:i,touched:u,values:s,deleted:a,validating:c}=e;s.clear(),a.clear(),D(e),r?.keepTouched||u.clear(),c.clear(),r?.keepIsSubmitting||(e.isSubmitting=!1),r?.keepSubmitCount||(e.submitCount=0),r?.keepIsSubmitted||(e.isSubmitSuccessful=void 0),M(e),_(e);for(const{segments:t,value:n}of o)ae(e,O(t),n);t(i,"change"),t(i,"touched"),t(i,"validating"),t(i,"submitting"),t(i,"submitCount"),t(i,"submitSuccessful"),t(i,"reset")}function be(e,n,r){const o=O(n),{emitter:i,values:u,touched:s,errors:a,deleted:c}=e;if(u.delete(o.key),D(e,o.key),void 0!==e.parsedValues){e.parsedValues=b(e.parsedValues,o.value);const t=p(e.initialValues,o.value);void 0!==t&&u.set(o.key,t)}r&&"value"in r&&u.set(o.key,r.value),ge(c,o),t(i,"change"),!r?.keepTouched&&s.delete(o.key)&&t(i,"touched",o),!r?.keepErrors&&a.delete(o.key)&&t(i,"errors",o),M(e),_(e)}function ke(e){let t=!1;return Se(e,()=>{t=!0}),t}function Se(e,t){for(const[n,r]of e.values){const o=JSON.parse(n);T(e,n,o)!==r&&t(o.join("."))}}function we(e){const t={};return Se(e,e=>{t[e]=!0}),t}function Ve(e){let t=j.get(e);if(t){if(t.version>0){const n=we(e);(function(e,t){const n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(e=>!0===t[e])})(t.result,n)||(t.result=n),t.version=0}}else t={version:0,result:we(e)},j.set(e,t);return t.result}function Ee({emitter:e,validating:n},r){n.delete(r.key),t(e,"validating",r)}function Oe({emitter:e,validating:n},r){n.add(r.key),t(e,"validating",r)}function Ae(e,t,n){let r=null,o=null,i=!1,u=null,s=null;const a=e=>void 0!==e&&!(Array.isArray(e)&&0===e.length),c=()=>{i||(i=!0,Oe(e,t))},l=()=>{i&&(i=!1,Ee(e,t))},d=()=>{const r=n.sync();if(!r)return!1;const o=r(ue(e,t),{form:e,path:t});return a(o)?(G(e,t,o),s="sync",!0):(n.validate()&&"sync"!==s||(G(e,t,void 0),s=null),!1)},f=()=>{null!==r&&(clearTimeout(r),r=null),o?.abort(),u={}},m=()=>{const r=n.validate();if(!r)return void l();o?.abort(),o=new AbortController;const i=u={};let d;try{d=r(ue(e,t),{form:e,path:t,signal:o.signal})}catch(e){throw l(),e}if(!w(d))return G(e,t,d),s=a(d)?"validator":null,void l();c(),d.then(n=>{u===i&&(G(e,t,n),s=a(n)?"validator":null)}).catch(()=>{}).finally(()=>{u===i&&(l(),u=null)})},y=()=>{if(r=null,d())return f(),void l();m()};return e.validators.set(t.key,()=>{if(d())return f(),void l();if(!n.validate())return;const e=n.debounce();if(e>0)return null!==r?clearTimeout(r):c(),void(r=setTimeout(y,e));m()}),()=>{e.validators.delete(t.key),null!==r&&(clearTimeout(r),r=null),l(),o?.abort()}}async function _e(e,n,r){const o=t=>E(e.emitter,"validating",()=>void 0===t?Me(e):t.every(t=>!e.validating.has(t)),()=>!1);if(void 0===n){if(e.validators.forEach(e=>e()),await o(),e.validate&&await $e(e),r?.shouldTouch&&xe(e,[...e.validators.keys()]),r?.shouldFocus){const n=e.errors.keys().next().value;void 0!==n&&t(e.emitter,"focusError",n)}return!Y(e)}const i="string"==typeof n||N(n)?[O(n).key]:n.map(e=>O(e).key);if(i.forEach(t=>e.validators.get(t)?.()),await o(i),r?.shouldTouch&&xe(e,i),r?.shouldFocus){const n=i.find(t=>e.errors.has(t));void 0!==n&&t(e.emitter,"focusError",n)}return i.every(t=>!e.errors.has(t))}function xe(e,t){t.forEach(t=>X(e,O(JSON.parse(t))))}function Te(e,t,n=[],r){Object.entries(t).forEach(([t,o])=>{const i=[...n,...h(t)?[t]:v(t)];"string"==typeof o?o&&(z(e,i,o),Le(e,i,r)):Array.isArray(o)||F(o)?(z(e,i,o),Le(e,i,r)):o&&"object"==typeof o&&Te(e,o,i,r)})}function Le(e,t,n){if(!n)return;const r=O(t),o=e.errors.get(r.key);o&&n.set(r.key,o)}function Ce(e,n){const r=e.validateDeps?function(e){let t=De.get(e);t||(t=new Map,De.set(e,t));return t}(e):void 0;if(r&&(!function(e,n){for(const[r,o]of n){e.errors.get(r)===o&&(e.errors.delete(r),t(e.emitter,"errors",O(JSON.parse(r))))}}(e,r),r.clear()),n){if("object"==typeof n&&B in n){const o=n;return o.errors&&Te(e,o.errors,[],r),void function(e,n){void 0!==n&&n!==e.parsedValues&&(e.parsedValues=n,_(e),t(e.emitter,"change"))}(e,o.values)}Te(e,n,[],r)}}const De=new WeakMap;const je="__form_validate__";function Me(e){for(const t of e.validating)if(t!==je)return!1;return!0}const Ne=Symbol("form-validate-settled"),Fe=new WeakMap;function $e(e){const n=e.validate;if(!n)return Promise.resolve();const r=e.validateDebounce??0;if(r<=0){const t=new AbortController;return Promise.resolve(n(re(e),{form:e,signal:t.signal})).then(t=>{Ce(e,t)})}const o=function(e){let t=Fe.get(e);return t||(t={timer:null,controller:null,round:null,marked:!1,waiters:[]},Fe.set(e,t)),t}(e);return null!==o.timer?clearTimeout(o.timer):(o.marked=!0,e.validating.add(je),t(e.emitter,"validating")),o.timer=setTimeout(()=>{o.timer=null;const t=o.round={};(function(e,t,n){const r=e.validate;if(!r)return Promise.resolve();t.controller?.abort();const o=t.controller=new AbortController;let i;try{i=Promise.resolve(r(re(e),{form:e,signal:o.signal}))}catch(e){i=Promise.reject(e)}return i.then(r=>{t.round===n&&Ce(e,r)},e=>{if(t.round===n)throw e})})(e,o,t).then(()=>Be(e,o,t,Ne),n=>Be(e,o,t,n))},r),new Promise((e,t)=>{o.waiters.push({resolve:e,reject:t})})}function Be(e,n,r,o){if(n.round!==r)return;if(n.round=null,null!==n.timer)return;n.marked&&(n.marked=!1,e.validating.delete(je),t(e.emitter,"validating"));const i=n.waiters;n.waiters=[];for(const e of i)o===Ne?e.resolve():e.reject(o)}function Pe(e,t,n){e.validateDeps?.has(t.key)&&e.validate&&("onChange"===n||"all"===n||"onTouched"===n&&ee(e,t)||"onChange"===e.reValidateMode&&function(e){const t=De.get(e);if(!t)return!1;for(const[n,r]of t)if(e.errors.get(n)===r)return!0;return!1}(e))&&$e(e).catch(()=>{})}const qe=new WeakMap;function We(e,t,n){let r=qe.get(e);r||(r=new Map,qe.set(e,r));for(const e of n){let n=r.get(e);n||(n=new Set,r.set(e,n)),n.add(t)}}function Ie(e,t,n){const r=qe.get(e);if(r)for(const e of n){const n=r.get(e);n?.delete(t)&&(n.size||r.delete(e))}}function Je(e,t,n){const r=qe.get(e)?.get(t.key);if(r?.size)for(const o of r)o!==t.key&&("onChange"===n||"all"===n||"onTouched"===n&&ee(e,t)||"onChange"===e.reValidateMode&&e.errors.has(o))&&e.validators.get(o)?.()}function Re(e){const t=new Error(U(e));return t.errors=R(e),t}async function Ue(e){if(e.validators.forEach(e=>e()),await E(e.emitter,"validating",()=>Me(e),()=>Y(e)).catch(()=>{throw Re(e)}),e.validate&&(await $e(e),Y(e)))throw Re(e)}async function ze(e){return Ue(e).catch(e=>e.message)}const Ge=new WeakMap;function He(e,t,n,r){Ke(e,O(t),n,r)}function Ke(e,t,n,r){!1===r?.shouldDirty&&L(e,t,n),Ge.get(e)?.get(t.key)?Xe(e,t,n):ae(e,t,n,r)}function Ye(e,t,n){let r=Ge.get(e);r||(r=new Map,Ge.set(e,r));const o=r.has(t.key),i={};return r.set(t.key,{mode:n,token:i}),{token:i,displaced:o}}function Qe(e,t,n){const r=Ge.get(e),o=r?.get(t.key);r&&o&&o.token===n&&r.delete(t.key)}function Xe(e,t,n){ae(e,t,n);const r=Ge.get(e)?.get(t.key);r&&function(e,t,n){("onChange"===n||"all"===n||"onTouched"===n&&ee(e,t)||J(e,t).length>0&&"onChange"===e.reValidateMode)&&e.validators.get(t.key)?.(),Pe(e,t,n),Je(e,t,n)}(e,t,r.mode??e.mode)}function Ze(e,t){X(e,t);const n=Ge.get(e)?.get(t.key);if(!n)return;const r=n.mode??e.mode;("onBlur"===r||"onTouched"===r||"all"===r||J(e,t).length>0&&"onBlur"===e.reValidateMode)&&e.validators.get(t.key)?.()}function et(e,n){e.isSubmitting=n,t(e.emitter,"submitting")}function tt(e){e.submitCount++,t(e.emitter,"submitCount")}function nt(e,n){e.isSubmitSuccessful=n,t(e.emitter,"submitSuccessful")}function rt(e,n){e.disabled=n,t(e.emitter,"disabled")}function ot(e){if(e.startsWith("["))try{const t=JSON.parse(e);if(Array.isArray(t))return t.join(".")}catch{}return e}function it(e,n){const{onSubmit:r,onValidSubmit:o,onInvalidSubmit:i,onAction:u,shouldFocusError:s=!0}=n??{};return async n=>{n&&"function"==typeof n.preventDefault&&n.preventDefault();const a=n?.currentTarget;et(e,!0),tt(e);const c=re(e);if(a&&"function"==typeof a.checkValidity&&!1===a.checkValidity()){if(a.reportValidity(),s&&"function"==typeof a.querySelector){const e=a.querySelector(":invalid");e&&"function"==typeof e.focus&&e.focus()}return et(e,!1),nt(e,!1),void(i&&i(function(e){const t=[],{elements:n}=e;for(let e=0;e<n.length;e++){const r=n[e];r.name&&"function"==typeof r.checkValidity&&!r.checkValidity()&&t.push({path:ot(r.name),type:"native",message:r.validationMessage})}return t}(a),c))}if(await ze(e)){if(et(e,!1),nt(e,!1),s){const n=e.errors.keys().next().value;void 0!==n&&t(e.emitter,"focusError",n)}i&&i(R(e),c)}else try{const t=re(e);r&&await r(t,n),o&&await o(t,n),u&&await u(t,n),nt(e,!0)}catch{nt(e,!1)}finally{et(e,!1)}}}function ut(e,n,r){const{key:o}=O(n);r?t(e.emitter,"focusError",o,r):t(e.emitter,"focusError",o)}function st(e){const o=n();r(o,0);let i=e?.initialValues??{};"function"==typeof i&&(i=i());const u={emitter:o,...e,mode:e?.mode??"onSubmit",reValidateMode:e?.reValidateMode??"onChange",disabled:e?.disabled??!1,validateDeps:e?.validateDeps?new Set(e.validateDeps.map(e=>O(e).key)):void 0,initialValues:{},values:new Map,deleted:new Set,errors:new Map,touched:new Set,validators:new Map,validating:new Set,parsedValues:void 0,isSubmitting:!1,submitCount:0,isSubmitSuccessful:void 0,isLoading:!1};return w(i)?(u.isLoading=!0,t(o,"loading"),Promise.resolve(i).then(e=>{u.isLoading=!1,t(o,"loading"),ve(u,e??{})},e=>{u.isLoading=!1,t(o,"loading")})):u.initialValues=i,u}function at(e,t){switch(e){case"required":return"This field is required";case"min":return`Must be at least ${t}`;case"max":return`Must be at most ${t}`;case"minLength":return`Must be at least ${t} characters`;case"maxLength":return`Must be at most ${t} characters`;case"pattern":return"Invalid format";default:return"Invalid value"}}function ct(e){return t=>{if(e.required&&(""===t||null==t))return[{type:"required",message:"string"==typeof e.required?e.required:at("required")}];const n=[],r=(t,n)=>e.messages?.[t]??at(t,n);if(void 0!==e.min){const o=Number(t);!Number.isNaN(o)&&o<e.min&&n.push({type:"min",message:r("min",e.min)})}if(void 0!==e.max){const o=Number(t);!Number.isNaN(o)&&o>e.max&&n.push({type:"max",message:r("max",e.max)})}return void 0!==e.minLength&&"string"==typeof t&&t.length<e.minLength&&n.push({type:"minLength",message:r("minLength",e.minLength)}),void 0!==e.maxLength&&"string"==typeof t&&t.length>e.maxLength&&n.push({type:"maxLength",message:r("maxLength",e.maxLength)}),e.pattern&&!e.pattern.value.test(t)&&n.push({type:"pattern",message:e.messages?.pattern??e.pattern.message??at("pattern")}),n.length?n:void 0}}var lt,dt={exports:{}},ft={};var mt,yt,gt={};var vt=(yt||(yt=1,"production"===process.env.NODE_ENV?dt.exports=function(){if(lt)return ft;lt=1;var e=i,t="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=e.useState,r=e.useEffect,o=e.useLayoutEffect,u=e.useDebugValue;function s(e){var n=e.getSnapshot;e=e.value;try{var r=n();return!t(e,r)}catch(e){return!0}}var a="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var i=t(),a=n({inst:{value:i,getSnapshot:t}}),c=a[0].inst,l=a[1];return o(function(){c.value=i,c.getSnapshot=t,s(c)&&l({inst:c})},[e,i,t]),r(function(){return s(c)&&l({inst:c}),e(function(){s(c)&&l({inst:c})})},[e]),u(i),i};return ft.useSyncExternalStore=void 0!==e.useSyncExternalStore?e.useSyncExternalStore:a,ft}():dt.exports=(mt||(mt=1,"production"!==process.env.NODE_ENV&&function(){function e(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!n(e,r)}catch(e){return!0}}"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=i,n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},r=t.useState,o=t.useEffect,u=t.useLayoutEffect,s=t.useDebugValue,a=!1,c=!1,l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(i,l){a||void 0===t.startTransition||(a=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var d=l();if(!c){var f=l();n(d,f)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),c=!0)}var m=(f=r({inst:{value:d,getSnapshot:l}}))[0].inst,y=f[1];return u(function(){m.value=d,m.getSnapshot=l,e(m)&&y({inst:m})},[i,d,l]),o(function(){return e(m)&&y({inst:m}),i(function(){e(m)&&y({inst:m})})},[i]),s(d),d};gt.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:l,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),gt)),dt.exports);function ht(e,t){return e.startsWith(`${t.slice(0,-1)},`)}function pt(t,n,r,o,i){const{key:u}=r;return e(t,n,e=>{(void 0===e||e.key===u||ht(u,e.key)||"branch"===o&&ht(e.key,u))&&i()})}function bt(t,n,r,o){return e(t,n,e=>{void 0!==e&&e.key!==r||o()})}function kt(t,n){const{name:r,event:o="change",scope:i="branch",callback:u}=n;if(void 0===r)return e(t.emitter,o,u);const s=function(e){return Array.isArray(e)&&e.every(e=>"number"!=typeof e)}(r)?r:[r],a=s.map(e=>{const n=O(e);return"errors"===o||"touched"===o?bt(t.emitter,o,n.key,u):pt(t.emitter,o,n,i,u)});return 1===a.length?a[0]:()=>a.forEach(e=>e())}function St(e){const[t]=a(()=>{const t=st(e);return e&&void 0!==e.values&&ve(t,e.values),t}),n=e&&e.initialValues,r=e&&e.values,o=s(null);null===o.current&&(o.current={done:!1,source:void 0}),c(()=>{if(void 0===n)return;if("function"==typeof n||w(n))return;const e=o.current;e.done&&(e.source===n||V(e.source,n))||(e.done=!0,e.source=n,ve(t,n))},[t,n]);const i=s(null);return null===i.current&&(i.current={done:!1,source:void 0}),c(()=>{if(void 0===r)return;const e=i.current;e.done&&(e.source===r||V(e.source,r))||(e.done=!0,e.source=r,ve(t,r))},[t,r]),t}function wt(e,t,n){const r=s(null);null===r.current&&(r.current={hasValue:!1});const o=r.current,i=s(t);i.current=t;const a=s(n);a.current=n;const c=u(()=>(o.hasValue||(o.value=i.current(),o.hasValue=!0),o.value),[o]),l=u(t=>{o.hasValue=!1;return e(()=>{const e=a.current;if(e&&o.hasValue){const n=i.current();if(e(o.value,n))return;return o.value=n,void t()}o.hasValue=!1,t()})},[e,o]);return vt.useSyncExternalStore(l,c,c)}function Vt(t,n,r,o){const i="emitter"in t?t.emitter:t;return wt(u(t=>e(i,n,t),[i,n]),r,o)}function Et(e,t){return Ot(e,O(t))}function Ot(e,t){const{emitter:n}=e,{key:r}=t;return wt(u(e=>pt(n,"change",t,"leaf",e),[n,r]),ue.bind(null,e,t))}function At(e,t){return _t(e,O(t))}function _t(e,t){const{emitter:n}=e,{key:r}=t;return wt(u(e=>bt(n,"touched",r,e),[n,r]),ee.bind(null,e,t))}function xt(e,t){return Tt(e,O(t))?.message}function Tt(e,t){const{emitter:n}=e,{key:r}=t;return wt(u(e=>bt(n,"errors",r,e),[n,r]),q.bind(null,e,t))}function Lt(e,t){return Ct(e,O(t))}function Ct(e,t){const{emitter:n}=e,{key:r}=t;return wt(u(e=>bt(n,"errors",r,e),[n,r]),J.bind(null,e,t))}function Dt(e){return Vt(e,"change",ke.bind(null,e))}function jt(e){return Vt(e,"change",Ve.bind(null,e))}function Mt(e){return Vt(e,"touched",te.bind(null,e))}const Nt=["change","errors","touched","validating","submitting","submitCount","submitSuccessful","disabled","loading"];function Ft(e,t){const n=e.touchedFields.length===t.touchedFields.length&&e.touchedFields.every((e,n)=>e===t.touchedFields[n]);return e.isDirty===t.isDirty&&e.dirtyFields===t.dirtyFields&&e.isTouched===t.isTouched&&n&&e.hasErrors===t.hasErrors&&e.isValid===t.isValid&&e.isSubmitting===t.isSubmitting&&e.isValidating===t.isValidating&&e.isSubmitSuccessful===t.isSubmitSuccessful&&e.submitCount===t.submitCount&&e.isLoading===t.isLoading&&e.disabled===t.disabled}function $t(t){const n=u(()=>function(e){return{isDirty:ke(e),dirtyFields:Ve(e),isTouched:e.touched.size>0,touchedFields:te(e),hasErrors:Y(e),isValid:!Y(e),isSubmitting:e.isSubmitting,isValidating:e.validating.size>0,isSubmitSuccessful:e.isSubmitSuccessful,submitCount:e.submitCount,isLoading:e.isLoading,disabled:e.disabled}}(t),[t]);return wt(u(n=>{const r=Nt.map(r=>e(t.emitter,r,n));return()=>{for(const e of r)e()}},[t.emitter]),n,Ft)}function Bt(e){return Vt(e,"errors",Y.bind(null,e))}function Pt(e){return Vt(e,"errors",()=>!Y(e))}function qt(e){return Vt(e,"submitting",()=>e.isSubmitting)}function Wt(e){return Vt(e,"loading",()=>e.isLoading)}function It(t){const{emitter:n}=t;return wt(u(t=>{const r=e(n,"errors",t),o=e(n,"submitting",t);return()=>{r(),o()}},[n]),()=>!t.isSubmitting&&!Y(t))}function Jt(e){return Vt(e,"submitCount",()=>e.submitCount)}function Rt(e){return Vt(e,"validating",()=>e.validating.size>0)}function Ut(e){return Vt(e.emitter,"submitSuccessful",()=>!!e.isSubmitSuccessful)}function zt(e){return Tt(e,O($))?.message}function Gt(e){return Ct(e,O($))}function Ht(e){const t=l(()=>O(v(e)),[e]);return l(()=>t,[t.key])}function Kt(e){const t=s(e);return t.current=e,t}function Yt(e){const t=Kt(e);return u((...e)=>t.current(...e),[t])}function Qt({form:t,name:n,initialValue:r,shouldUnregister:o,validate:i,rules:l,validateDebounce:f,validateDeps:m,delayError:y,disabled:g,uncontrolled:v,mode:h},p){const b=d(p),k=t||b;if(!k)throw new Error("no form provided");const S=Ht(n),V=s(!1);void 0!==r&&void 0===ue(k,S)&&(ce(k,S,r),V.current=!0),c(()=>{V.current&&(V.current=!1,le(k,S))});!function(e,t,n,r){const o=d(cn),i=n||o;if(!i)throw new Error("no form provided");const u=s(e);u.current=e;const a=s(r?.debounce??0);a.current=r?.debounce??0;const l=s(r?.sync);l.current=r?.sync,c(()=>Ae(i,t,{validate:()=>u.current,debounce:()=>a.current,sync:()=>l.current}),[i,t.key]),Yt(()=>i.validators.get(t.key)?.())}(function(e,t){if(!e||!function(e){return void 0!==e.required||void 0!==e.min||void 0!==e.max||void 0!==e.minLength||void 0!==e.maxLength||void 0!==e.pattern}(e))return t;const n=ct(e);return t?(e,r)=>{const o=n(e,r),i=e=>{const t=[...o??[]];return Array.isArray(e)?t.push(...e):e&&t.push(e),t.length?t:void 0},u=t(e,r);return w(u)?u.then(i):i(u)}:n}(l?{...l,required:void 0}:void 0,i),S,k,{debounce:f,sync:l&&void 0!==l.required?ct({required:l.required}):void 0});const E=function(e,t){const[n,r]=a(e);return c(()=>{if(void 0===t)return;if(0===e.length)return void r(e);if(n.length>0)return void r(e);const o=setTimeout(()=>r(e),t);return()=>clearTimeout(o)},[e,t,n]),void 0===t?e:n}(Ct(k,S),y),A=E[0],_=A?.message,x=function(e,t,n){const r=s({has:!1,value:void 0}),o=u(()=>n?(r.current.has||(r.current={has:!0,value:ue(e,t)}),r.current.value):ue(e,t),[n,e,t]);return wt(u(r=>n?()=>{}:pt(e.emitter,"change",t,"leaf",r),[n,e.emitter,t]),o)}(k,S,!!v),T=Vt(k,"disabled",()=>k.disabled),L=Yt(e=>Xe(k,S,e)),C=Yt(()=>Ze(k,S));c(()=>{const{token:e,displaced:t}=Ye(k,S,h);return()=>Qe(k,S,e)},[k,S.key,h]);const D=m?.length?m.join("\n"):void 0;c(()=>{if(!D)return;const e=m.map(e=>O(e).key);return We(k,S.key,e),()=>Ie(k,S.key,e)},[k,S.key,D]);const j=s(null),M=u(e=>{j.current=e},[]);return c(()=>e(k.emitter,"focusError",(e,t)=>{if(e!==S.key)return;const n=j.current;n&&"function"==typeof n.focus&&(n.focus(),t?.shouldSelect&&"function"==typeof n.select&&n.select())}),[k,S.key]),c(()=>()=>{!1!==(o??k.shouldUnregister)&&me(k,S)},[S,k,o]),{form:k,value:x,error:_,errorObject:A,errors:E,onChange:L,onBlur:C,name:S.key,disabled:T||!!g,focusRef:M}}function Xt(e){return Qt(e,cn)}const Zt=new WeakMap;function en(e){const t=(Zt.get(e)??0)+1;return Zt.set(e,t),`_${t}`}const tn=new WeakMap;function nn(e,t,n){let r=tn.get(e);r||(r=new Map,tn.set(e,r)),r.set(t,n)}function rn(e){return e+1}function on(e,t){const n=d(t),r=e.form||n;if(!r)throw new Error("no form provided");const o=Ht(e.name),i=s([]),a=u(()=>ue(r,o)||[],[r,o]),l=u(e=>{ae(r,o,e)},[r,o]),m=u(()=>{const e=a();for(;i.current.length<e.length;)i.current.push(en(r));for(;i.current.length>e.length;)i.current.pop();return i.current.map((e,t)=>({id:e,index:t}))},[a,r]),[y,g]=f(m,void 0,m);c(()=>pt(r.emitter,"change",o,"branch",g),[r.emitter,o]),nn(r,o.key,i.current),c(()=>(nn(r,o.key,i.current),()=>{const e=tn.get(r);e?.get(o.key)===i.current&&e.delete(o.key)}),[r,o.key]);return{fields:y,append:Yt(e=>{const t=a();i.current.push(en(r)),l([...t,e])}),prepend:Yt(e=>{const t=a();i.current.unshift(en(r)),l([e,...t])}),insert:Yt((e,t)=>{const n=a();i.current.splice(e,0,en(r));const o=[...n.slice(0,e),t,...n.slice(e)];l(o)}),remove:Yt(e=>{const t=a();i.current.splice(e,1);const n=t.filter((t,n)=>n!==e);l(n)}),swap:Yt((e,t)=>{const n=a();[i.current[e],i.current[t]]=[i.current[t],i.current[e]];const r=[...n];[r[e],r[t]]=[r[t],r[e]],l(r)}),move:Yt((e,t)=>{const n=a(),[r]=i.current.splice(e,1);i.current.splice(t,0,r);const o=[...n],[u]=o.splice(e,1);o.splice(t,0,u),l(o)}),replace:Yt(e=>{i.current=e.map(()=>en(r)),l([...e])}),update:Yt((e,t)=>{const n=a();if(e<0||e>=n.length)return;const r=[...n];r[e]=t,l(r)})}}function un(e){return on(e,cn)}function sn(e,t){const n=d(t),r=e.form||n;if(!r)throw new Error("no form provided");const{id:o}=e,i=Ht(e.name),a=u(()=>function(e,t){return tn.get(e)?.get(t)}(r,i.key)?.indexOf(o)??-1,[r,i.key,o]),l=u(e=>{const t=ue(r,i);return Array.isArray(t)?t[e]:void 0},[r,i]),m=a(),y=l(m),g=s({index:m,value:y});g.current={index:m,value:y};const v=Kt({computeIndex:a,computeValue:l}),[,h]=f(rn,0);c(()=>pt(r.emitter,"change",i,"leaf",()=>{const{computeIndex:e,computeValue:t}=v.current,n=e();n===g.current.index&&Object.is(t(n),g.current.value)||h()}),[r.emitter,i,v]);const p=Ht([...i.value,m]),b=Ct(r,p);return{value:y,setValue:Yt(e=>{if(m<0)return;const t=[...ue(r,i)??[]];m>=t.length||(t[m]=e,ae(r,i,t))}),errors:b,error:b[0]?.message,name:p.key,index:m,form:r}}function an(e){return sn(e,cn)}const cn=m(null),ln=cn.Provider;function dn(){const e=d(cn);if(!e)throw new Error("no form provided");return e}function fn(){const e=m(null);return{context:e,FormProvider:function({form:t,children:n}){return y(e.Provider,{value:t},n)},useFormContext:function(){const t=d(e);if(!t)throw new Error("no form provided");return t},useField:function(t){return Qt(t,e)},useFieldArray:function(t){return on(t,e)},useFieldArrayItem:function(t){return sn(t,e)}}}const mn=m(null),yn=mn.Provider;function gn(){const e=d(mn);if(!e)throw new Error("no group provided");return e}function vn(e,t,n){if(null!=n)if(Array.isArray(n))for(const r of n)vn(e,t,r);else if("undefined"!=typeof FileList&&n instanceof FileList)for(let r=0;r<n.length;r++)e.append(t,n.item(r));else"undefined"!=typeof File&&n instanceof File?e.append(t,n,n.name):"undefined"!=typeof Blob&&n instanceof Blob?e.append(t,n):n instanceof Date?e.append(t,n.toISOString()):e.append(t,"object"==typeof n?JSON.stringify(n):String(n))}function hn({form:e,context:t,initialValues:n,values:r,shouldUnregister:i,onSubmit:u,onValidSubmit:s,onInvalidSubmit:a,action:c,shouldFocusError:l,...d}){const f=St({initialValues:n,values:r,shouldUnregister:i}),m=e||f,y=it(m,{onSubmit:u,onValidSubmit:s,onInvalidSubmit:a,shouldFocusError:l,onAction:c?e=>c(function(e){const t=new FormData;for(const n of Object.keys(e))vn(t,n,e[n]);return t}(e)):void 0}),{Provider:g}=t??cn;return o.createElement(g,{value:m},o.createElement("form",{...d,noValidate:!0,onSubmit:y}))}function pn({children:e,...t}){return e(Xt(t))}function bn(e){return e.replace(/["'[\],\s]+/g,"-").replace(/^-+|-+$/g,"")||"field"}function kn(e,t,n){return{"aria-invalid":!!e||n["aria-invalid"],"aria-describedby":e?[n["aria-describedby"],bn(t)].filter(Boolean).join(" "):n["aria-describedby"]}}function Sn(e){return bn(O(e).key)}const wn=o.forwardRef(({validate:e,eventToValue:t,initialValue:n,name:r,asProps:i,renderError:u,as:s,valueToProps:a,form:c,shouldUnregister:l,rules:d,validateDebounce:f,disabled:m,delayError:y,mode:g,uncontrolled:v,...h},p)=>{const b=o.useRef(null),[k,S]=o.useState(0),{value:w,onChange:V,onBlur:E,error:O,name:A,disabled:_,focusRef:x}=Xt({name:r,form:c,initialValue:n,shouldUnregister:l,rules:d,validateDebounce:f,delayError:y,disabled:m,mode:g,uncontrolled:v||"file"===h.type,validate:(...t)=>{const n=b.current;if(!n||"function"!=typeof n.checkValidity||(n.setCustomValidity(""),!1!==n.checkValidity()))return e?e(...t):void 0;S(e=>e+1)}}),T=o.useCallback(e=>{b.current=e,x(e),function(e,t){"function"==typeof e?e(t):e&&(e.current=t)}(p,e)},[p,x]),L=s||"input";o.useEffect(()=>{const e=b.current;e&&"function"==typeof e.setCustomValidity&&("string"==typeof O?(e.setCustomValidity(O),e.reportValidity()):e.setCustomValidity(""))},[O]),o.useEffect(()=>{k>0&&b.current?.reportValidity()},[k]);const C="file"===h.type,D=t??(C?e=>e.target.files:e=>e.target.value),j=a?a(w):C?{}:v?{defaultValue:w}:{value:w},M=bn(A);return o.createElement(o.Fragment,null,o.createElement(L,{...h,name:A,onBlur:E,...i,...j,...kn(O,A,h),disabled:_,onChange:e=>V(D(e)),ref:T}),O&&u?o.createElement("span",{id:M,role:"alert"},u(O,M)):null)}),Vn=o.forwardRef(({name:e,form:t,initialValue:n,shouldUnregister:r,validate:i,rules:u,validateDebounce:s,disabled:a,delayError:c,mode:l,...d},f)=>{const{value:m,onChange:y,onBlur:g,error:v,name:h,disabled:p}=Xt({name:e,form:t,initialValue:n,shouldUnregister:r,validate:i,rules:u,validateDebounce:s,delayError:c,disabled:a,mode:l});return o.createElement("input",{...d,name:h,onBlur:g,type:"checkbox",checked:!!m,...kn(v,h,d),disabled:p,onChange:e=>y(e.target.checked),ref:f})});function En(e,t){return e?Array.isArray(t)?t:[]:t??""}const On=o.forwardRef(({name:e,multiple:t,children:n,form:r,initialValue:i,shouldUnregister:u,validate:s,rules:a,validateDebounce:c,disabled:l,delayError:d,mode:f,...m},y)=>{const{value:g,onChange:v,onBlur:h,error:p,name:b,disabled:k}=Xt({name:e,form:r,initialValue:i,shouldUnregister:u,validate:s,rules:a,validateDebounce:c,delayError:d,disabled:l,mode:f});return o.createElement("select",{...m,name:b,onBlur:h,multiple:t,value:En(t,g),...kn(p,b,m),disabled:k,onChange:e=>v(t?Array.from(e.target.selectedOptions,e=>e.value):e.target.value),ref:y},n)});export{Vn as Checkbox,mn as CheckboxGroupContext,yn as CheckboxGroupProvider,$ as FORM_ERROR,wn as Field,hn as Form,cn as FormContext,pn as FormField,ln as FormProvider,On as Select,B as VALIDATION_OUTCOME,He as changeValue,Ke as changeValueByPath,H as clearErrors,st as createForm,fn as createFormContext,le as emitChangeByPath,Ue as ensureValidate,Sn as fieldErrorId,Ve as getDirtyFields,P as getError,q as getErrorByPath,R as getErrors,I as getFieldErrors,J as getFieldErrorsByPath,de as getFieldState,U as getFirstError,te as getTouchedFields,ie as getValue,ue as getValueByPath,re as getValues,it as handleSubmit,Y as hasErrors,Z as hasTouched,ee as hasTouchedByPath,tt as incrementSubmitCount,ke as isDirty,ne as isTouched,Ye as registerFieldMode,We as registerFieldValidateDeps,Ae as registerValidatorByPath,fe as removeField,me as removeFieldByPath,pe as reset,be as resetField,Je as revalidateDependentsOnChange,Pe as revalidateFormOnChange,ce as seedValueByPath,rt as setDisabled,z as setError,G as setErrorByPath,ut as setFocus,ve as setInitialValues,et as setIsSubmitting,K as setServerErrors,nt as setSubmitSuccessful,Q as setTouched,X as setTouchedByPath,Oe as setValidatingByPath,se as setValue,ae as setValueByPath,kt as subscribe,_e as trigger,Qe as unregisterFieldMode,Ie as unregisterFieldValidateDeps,Ee as unsetValidatingByPath,It as useCanSubmit,gn as useCheckboxGroupContext,jt as useDirtyFields,xt as useError,Tt as useErrorByPath,Xt as useField,un as useFieldArray,an as useFieldArrayItem,Lt as useFieldErrors,Ct as useFieldErrorsByPath,St as useForm,dn as useFormContext,zt as useFormError,Gt as useFormErrors,$t as useFormState,Bt as useHasErrors,Dt as useIsDirty,Wt as useIsLoading,Ut as useIsSubmitSuccessful,qt as useIsSubmitting,Pt as useIsValid,Rt as useIsValidating,Jt as useSubmitCount,At as useTouched,_t as useTouchedByPath,Mt as useTouchedFields,Et as useValue,Ot as useValueByPath,Vt as useWatch,wt as useWatchCore,Ze as userBlur,Xe as userChangeByPath,ze as validate};
|
|
1
|
+
import{on as e,emit as t,create as n,setMaxListeners as r}from"@for-fun/event-emitter";import*as i from"react";import{useCallback as o,useRef as s,useSyncExternalStore as u,useState as a,useEffect as c,useMemo as l,useContext as d,useReducer as f,createContext as m,createElement as y}from"react";const v=new Map;function g(e){if(Array.isArray(e))return e;const t=v.get(e);if(t)return t;const n=function(e){const t=[];let n="";const r=()=>{if(h(n)){const r=[...t.map(String),n].join("."),i=t.reduce((e,t)=>e+("number"==typeof t?`[${t}]`:`${e?".":""}${t}`),"");throw new TypeError(`Numeric path segment must use bracket notation: "${r}" → "${i}[${n}]" (path: ${e})`)}t.push(n),n=""};for(let i=0;i<e.length;i++){const o=e[i];if("."===o)""!==n&&r();else if("["===o){""!==n&&r();const o=e[i+1];if('"'===o||"'"===o){const n=e.indexOf(o,i+2);if(-1===n)throw new TypeError(`Unterminated quote in path: ${e}`);if("]"!==e[n+1])throw new TypeError(`Expected "]" after quoted segment in path: ${e}`);t.push(e.slice(i+2,n)),i=n+1}else{const n=e.indexOf("]",i+1);if(-1===n)throw new TypeError(`Unterminated bracket in path: ${e}`);const r=e.slice(i+1,n);t.push(h(r)?Number(r):r),i=n}}else n+=o}""===n&&0!==t.length||r();return t}(e);if(v.size>=1e4){const e=v.keys().next();e.done||v.delete(e.value)}return v.set(e,n),n}const h=e=>/^-?\d+$/.test(e);function p(e,t){return t.reduce((e,t)=>{if(null!=e)return e[t]},e)}function b(e,t){if(!t.length||null==e)return e;const[n,...r]=t;if(r.length){const t=b(e[n],r);return t===e[n]?e:k(e,[n],t)}if(Array.isArray(e)){if(!(n in e))return e;const t=e.slice();return delete t[n],t}if("object"!=typeof e||!(n in e))return e;const i={...e};return delete i[n],i}function k(e,t,n){if(!t.length)return n;const[r,...i]=t,o="number"==typeof r?r:Array.isArray(e)&&"string"==typeof r&&h(r)?Number(r):void 0;if(void 0!==o){const t=Array.isArray(e)?e.slice():[];return t[o]=k(t[o],i,n),t}return{...e,[r]:k(e&&e[r],i,n)}}function w(e,t,n,r){if(!t.length)return n;let i=e,o=null,s="";for(let u=0;u<t.length;u++){const a=t[u];if(!r.has(i)){let t;t="number"==typeof a||Array.isArray(i)&&"string"==typeof a&&h(a)?Array.isArray(i)?i.slice():[]:{...i},r.add(t),0===u?e=t:o[s]=t,i=t}u===t.length-1?i[a]=n:(o=i,s=a,i=i[a])}return e}function S(e){return e&&"function"==typeof e.then}function V(e,t){if(Object.is(e,t))return!0;if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(!e||!t||"object"!=typeof e||"object"!=typeof t)return!1;const n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!V(e[n],t[n]))return!1;return!0}const r=Object.getPrototypeOf(e);if(r!==Object.prototype&&null!==r)return!1;if(Object.getPrototypeOf(t)!==r)return!1;const i=Object.keys(e),o=Object.keys(t);if(i.length!==o.length)return!1;for(const n of i)if(!V(e[n],t[n]))return!1;return!0}function A(t,n,r,i){return new Promise((o,s)=>{if(i())return void s();if(r())return void o();const u=e(t,n,()=>{if(i())return u(),void s();r()&&(u(),o())})})}function E(e){const t=g(e);return{value:t,key:JSON.stringify(t)}}const O=new WeakMap;function M(e){const t=O.get(e);t&&t.version++}const x=new WeakMap;function C(e,t,n){const r=x.get(e);return r?.has(t)?r.get(t):p(e.initialValues,n)}function D(e,{key:t},n){let r=x.get(e);r||(r=new Map,x.set(e,r)),r.set(t,n)}function j(e,{key:t}){const n=x.get(e);if(!n?.size)return;const r=`${t.slice(0,-1)},`;for(const e of n.keys())e.startsWith(r)&&n.delete(e)}function L(e,t){const n=x.get(e);n&&(void 0===t?n.clear():n.delete(t))}const T=new WeakMap;function N(e){const t=T.get(e);t&&t.version++}function F(e){return e.some(e=>"number"==typeof e)}function $(e){return!!e&&"object"==typeof e&&"string"==typeof e.type&&"string"==typeof e.message}const q="_form",P=Symbol("validation-outcome");function W(e,t){return J(e,E(t))}function J({errors:e},t){return e.get(t.key)?.[0]}const U=[];function z(e,t){return B(e,E(t))}function B({errors:e},t){return e.get(t.key)??U}function I({errors:e}){const t=[];for(const[n,r]of e){const e=JSON.parse(n).join(".");for(const{type:n,message:i}of r)t.push({path:e,type:n,message:i})}return t}function _({errors:e}){return e.values().next().value?.[0]?.message}function R(e,t,n,r){G(e,E(t),n,r)}function G(e,n,r,i){const{emitter:o,errors:s}=e,u=function(e){if("string"==typeof e)return e?[{type:"custom",message:e}]:void 0;if($(e))return[e];if(!e)return;const t=[];return e.forEach(e=>{"string"==typeof e&&e?t.push({type:"custom",message:e}):$(e)&&t.push(e)}),t.length?t:void 0}(r);u?s.set(n.key,u):s.delete(n.key),t(o,"errors",n),i?.shouldFocus&&t(o,"focusError",n.key)}function H(e,n){const{emitter:r,errors:i}=e;if(void 0===n)return i.clear(),void t(r,"errors");const o="string"==typeof n||F(n)?[E(n)]:n.map(e=>E(e));for(const{key:e}of o)i.delete(e);for(const e of o)t(r,"errors",e)}function K(e,t,n){n?.keepExisting||H(e);for(const[n,r]of Object.entries(t))R(e,n,(Array.isArray(r)?r:[r]).map(e=>({type:"server",message:e})))}function Q({errors:e}){return e.size>0}function X(e,t){const n=e.values.get(t.key);return e.values.has(t.key)&&C(e,t.key,t.value)!==n}function Y(e){let t=!1;return Z(e,()=>{t=!0}),t}function Z(e,t){for(const[n,r]of e.values){const i=JSON.parse(n);C(e,n,i)!==r&&t(i.join("."))}}function ee(e){const t={};return Z(e,e=>{t[e]=!0}),t}function te(e){let t=T.get(e);if(t){if(t.version>0){const n=ee(e);(function(e,t){const n=Object.keys(e);return n.length===Object.keys(t).length&&n.every(e=>!0===t[e])})(t.result,n)||(t.result=n),t.version=0}}else t={version:0,result:ee(e)},T.set(e,t);return t.result}function ne(e,t){re(e,E(t))}function re({emitter:e,touched:n},r){n.has(r.key)||(n.add(r.key),t(e,"touched",r))}function ie(e,t){return oe(e,E(t))}function oe({touched:e},t){return e.has(t.key)}function se({touched:e}){return Array.from(e,e=>JSON.parse(e).join("."))}function ue({touched:e}){return e.size>0}function ae(e){let t=O.get(e);return t?t.version>0&&(t.result=ce(e),t.version=0):(t={version:0,result:ce(e)},O.set(e,t)),t.result}function ce(e){const{initialValues:t,parsedValues:n,values:r,deleted:i}=e,o=new Set;let s=n??t;for(const[e,t]of r)s=w(s,JSON.parse(e),t,o);for(const e of i)s=b(s,JSON.parse(e));return s}function le(e,t){return de(e,E(t))}function de({initialValues:e,parsedValues:t,values:n,deleted:r},i){const{key:o,value:s}=i;if(n.has(o))return n.get(o);if(!r.has(o)){for(let e=s.length-1;e>0;e--){const t=JSON.stringify(s.slice(0,e));if(n.has(t))return p(n.get(t),s.slice(e))}return p(t??e,s)}}function fe(e,t,n,r){me(e,E(t),n,r)}function me(e,n,r,i){const{emitter:o,values:s,deleted:u}=e,a="function"==typeof r?r(de(e,n)):r;s.set(n.key,a),be(s,n),ke(u,n),j(e,n),!1===i?.shouldDirty&&D(e,n,a),N(e),M(e),i?.shouldTouch&&re(e,n),i?.shouldValidate&&e.validators.get(n.key)?.(),t(o,"change",n)}function ye(e,t,n){const{values:r,deleted:i}=e;r.set(t.key,n),be(r,t),ke(i,t),j(e,t),N(e),M(e)}function ve({emitter:e},n){t(e,"change",n)}function ge(e,t){const n=E(t),{touched:r,validating:i}=e;return{value:de(e,n),error:J(e,n),errors:B(e,n),isDirty:X(e,n),isTouched:r.has(n.key),isValidating:i.has(n.key)}}function he(e,t,n){pe(e,E(t),n)}function pe(e,n,r){const{key:i,value:o}=n,{emitter:s,values:u,touched:a,errors:c,validating:l,deleted:d}=e;r?.keepValue||r?.keepDirty||(u.delete(i),L(e,i),function(e,t){for(let n=1;n<t.length;n++)if(e.has(JSON.stringify(t.slice(0,n))))return!0;const n=`${JSON.stringify(t).slice(0,-1)},`;for(const t of e.keys())if(t.startsWith(n))return!0;return!1}(u,o)||d.add(i)),r?.keepTouched||a.delete(i),r?.keepError||c.delete(i),l.delete(i),N(e),M(e),t(s,"change",n),t(s,"touched",n),t(s,"errors",n),t(s,"validating",n)}function be(e,{key:t}){if(!e.size)return;const n=`${t.slice(0,-1)},`;for(const t of e.keys())t.startsWith(n)&&e.delete(t)}function ke(e,{key:t}){if(e.size)for(const n of e)(n===t||n.startsWith(`${t.slice(0,-1)},`)||t.startsWith(`${n.slice(0,-1)},`))&&e.delete(n)}function we(e,n){e.initialValues===n||V(e.initialValues,n)||(e.initialValues=n,e.parsedValues=void 0,e.values.clear(),e.deleted.clear(),L(e),N(e),M(e),t(e.emitter,"change"))}function Se(e,t,n){if(null!==e&&"object"==typeof e){if(Array.isArray(e)){for(let r=0;r<e.length;r++)Se(e[r],[...t,r],n);return}const r=Object.keys(e);if(r.length>0){for(const i of r)Se(e[i],[...t,i],n);return}}n.push({segments:t,value:e})}function Ve(e,n,r){const i=[];if(r?.keepValues)Se(ae(e),[],i);else if(r?.keepDirtyValues)for(const[t,n]of e.values){const r=JSON.parse(t);C(e,t,r)!==n&&i.push({segments:r,value:n})}e.initialValues=r?.keepDefaultValues?e.initialValues:n??e.initialValues,e.parsedValues=void 0,r?.keepErrors||H(e);const{emitter:o,touched:s,values:u,deleted:a,validating:c}=e;u.clear(),a.clear(),L(e),r?.keepTouched||s.clear(),c.clear(),r?.keepIsSubmitting||(e.isSubmitting=!1),r?.keepSubmitCount||(e.submitCount=0),r?.keepIsSubmitted||(e.isSubmitted=!1),r?.keepIsSubmitSuccessful||(e.isSubmitSuccessful=void 0),N(e),M(e);for(const{segments:t,value:n}of i)me(e,E(t),n);t(o,"change"),t(o,"touched"),t(o,"validating"),t(o,"submitting"),t(o,"submitCount"),t(o,"submitSuccessful"),t(o,"reset")}function Ae(e,n,r){const i=E(n),{emitter:o,values:s,touched:u,errors:a,deleted:c}=e;if(s.delete(i.key),L(e,i.key),void 0!==e.parsedValues){e.parsedValues=b(e.parsedValues,i.value);const t=p(e.initialValues,i.value);void 0!==t&&s.set(i.key,t)}r&&"value"in r&&s.set(i.key,r.value),ke(c,i),t(o,"change"),!r?.keepTouched&&u.delete(i.key)&&t(o,"touched",i),!r?.keepErrors&&a.delete(i.key)&&t(o,"errors",i),N(e),M(e)}function Ee({emitter:e,validating:n},r){n.delete(r.key),t(e,"validating",r)}function Oe({emitter:e,validating:n},r){n.add(r.key),t(e,"validating",r)}function Me(e,t,n){let r=null,i=null,o=!1,s=null,u=null;const a=e=>void 0!==e&&!(Array.isArray(e)&&0===e.length),c=()=>{o||(o=!0,Oe(e,t))},l=()=>{o&&(o=!1,Ee(e,t))},d=()=>{const r=n.sync();if(!r)return!1;const i=r(de(e,t),{form:e,path:t});return a(i)?(G(e,t,i),u="sync",!0):(n.validate()&&"sync"!==u||(G(e,t,void 0),u=null),!1)},f=r=>{if(n.asyncAlways?.()){const i=(()=>{const r=n.sync();if(!r)return null;const i=r(de(e,t),{form:e,path:t});if(void 0===i)return null;const o=Array.isArray(i)?i:[i];return o.length?o:null})(),o=void 0===r?[]:Array.isArray(r)?r:[r];G(e,t,[...i??[],...o]),u=a(r)?"validator":i?"sync":null}else G(e,t,r),u=a(r)?"validator":null},m=()=>{null!==r&&(clearTimeout(r),r=null),i?.abort(),s={}},y=()=>{const r=n.validate();if(!r)return void l();i?.abort(),i=new AbortController;const o=s={};let u;try{u=r(de(e,t),{form:e,path:t,signal:i.signal})}catch(e){throw l(),e}if(!S(u))return f(u),void l();c(),u.then(e=>{s===o&&f(e)}).catch(()=>{}).finally(()=>{s===o&&(l(),s=null)})},v=()=>{if(r=null,d()&&!n.asyncAlways?.())return m(),void l();y()};return e.validators.set(t.key,()=>{if(d()&&!n.asyncAlways?.())return m(),void l();if(!n.validate())return;const e=n.debounce();if(e>0)return null!==r?clearTimeout(r):c(),void(r=setTimeout(v,e));y()}),()=>{e.validators.delete(t.key),null!==r&&(clearTimeout(r),r=null),l(),i?.abort()}}async function xe(e,n,r){const i=t=>A(e.emitter,"validating",()=>void 0===t?Fe(e):t.every(t=>!e.validating.has(t)),()=>!1);if(void 0===n){if(e.validators.forEach(e=>e()),await i(),e.validate&&await Pe(e),r?.shouldTouch&&Ce(e,[...e.validators.keys()]),r?.shouldFocus){const n=e.errors.keys().next().value;void 0!==n&&t(e.emitter,"focusError",n)}return!Q(e)}const o="string"==typeof n||F(n)?[E(n).key]:n.map(e=>E(e).key);if(o.forEach(t=>e.validators.get(t)?.()),await i(o),r?.shouldTouch&&Ce(e,o),r?.shouldFocus){const n=o.find(t=>e.errors.has(t));void 0!==n&&t(e.emitter,"focusError",n)}return o.every(t=>!e.errors.has(t))}function Ce(e,t){t.forEach(t=>re(e,E(JSON.parse(t))))}function De(e,t,n=[],r){Object.entries(t).forEach(([t,i])=>{const o=[...n,...h(t)?[t]:g(t)];"string"==typeof i?i&&(R(e,o,i),je(e,o,r)):Array.isArray(i)||$(i)?(R(e,o,i),je(e,o,r)):i&&"object"==typeof i&&De(e,i,o,r)})}function je(e,t,n){if(!n)return;const r=E(t),i=e.errors.get(r.key);i&&n.set(r.key,i)}function Le(e,n){const r=e.validateDeps?function(e){let t=Te.get(e);t||(t=new Map,Te.set(e,t));return t}(e):void 0;if(r&&(!function(e,n){for(const[r,i]of n){e.errors.get(r)===i&&(e.errors.delete(r),t(e.emitter,"errors",E(JSON.parse(r))))}}(e,r),r.clear()),n){if("object"==typeof n&&P in n){const i=n;return i.errors&&De(e,i.errors,[],r),void function(e,n){void 0!==n&&n!==e.parsedValues&&(e.parsedValues=n,M(e),t(e.emitter,"change"))}(e,i.values)}De(e,n,[],r)}}const Te=new WeakMap;const Ne="__form_validate__";function Fe(e){for(const t of e.validating)if(t!==Ne)return!1;return!0}const $e=Symbol("form-validate-settled"),qe=new WeakMap;function Pe(e){const n=e.validate;if(!n)return Promise.resolve();const r=e.validateDebounce??0;if(r<=0){const t=new AbortController;return Promise.resolve(n(ae(e),{form:e,signal:t.signal})).then(t=>{Le(e,t)})}const i=function(e){let t=qe.get(e);return t||(t={timer:null,controller:null,round:null,marked:!1,waiters:[]},qe.set(e,t)),t}(e);return null!==i.timer?clearTimeout(i.timer):(i.marked=!0,e.validating.add(Ne),t(e.emitter,"validating")),i.timer=setTimeout(()=>{i.timer=null;const t=i.round={};(function(e,t,n){const r=e.validate;if(!r)return Promise.resolve();t.controller?.abort();const i=t.controller=new AbortController;let o;try{o=Promise.resolve(r(ae(e),{form:e,signal:i.signal}))}catch(e){o=Promise.reject(e)}return o.then(r=>{t.round===n&&Le(e,r)},e=>{if(t.round===n)throw e})})(e,i,t).then(()=>We(e,i,t,$e),n=>We(e,i,t,n))},r),new Promise((e,t)=>{i.waiters.push({resolve:e,reject:t})})}function We(e,n,r,i){if(n.round!==r)return;if(n.round=null,null!==n.timer)return;n.marked&&(n.marked=!1,e.validating.delete(Ne),t(e.emitter,"validating"));const o=n.waiters;n.waiters=[];for(const e of o)i===$e?e.resolve():e.reject(i)}function Je(e,t,n){e.validateDeps?.has(t.key)&&e.validate&&("onChange"===n||"all"===n||"onTouched"===n&&oe(e,t)||"onChange"===e.reValidateMode&&function(e){const t=Te.get(e);if(!t)return!1;for(const[n,r]of t)if(e.errors.get(n)===r)return!0;return!1}(e))&&Pe(e).catch(()=>{})}const Ue=new WeakMap;function ze(e,t,n){let r=Ue.get(e);r||(r=new Map,Ue.set(e,r));for(const e of n){let n=r.get(e);n||(n=new Set,r.set(e,n)),n.add(t)}}function Be(e,t,n){const r=Ue.get(e);if(r)for(const e of n){const n=r.get(e);n?.delete(t)&&(n.size||r.delete(e))}}function Ie(e,t,n){const r=Ue.get(e)?.get(t.key);if(r?.size)for(const i of r)i!==t.key&&("onChange"===n||"all"===n||"onTouched"===n&&oe(e,t)||"onChange"===e.reValidateMode&&e.errors.has(i))&&e.validators.get(i)?.()}function _e(e){const t=new Error(_(e));return t.errors=I(e),t}async function Re(e){if(e.validators.forEach(e=>e()),await A(e.emitter,"validating",()=>Fe(e),()=>Q(e)).catch(()=>{throw _e(e)}),e.validate&&(await Pe(e),Q(e)))throw _e(e)}async function Ge(e){return Re(e).catch(e=>e.message)}const He=new WeakMap;function Ke(e,t,n,r){Qe(e,E(t),n,r)}function Qe(e,t,n,r){!1===r?.shouldDirty&&D(e,t,n),He.get(e)?.get(t.key)?Ze(e,t,n):me(e,t,n,r)}function Xe(e,t,n){let r=He.get(e);r||(r=new Map,He.set(e,r));const i=r.has(t.key),o={};return r.set(t.key,{mode:n,token:o}),{token:o,displaced:i}}function Ye(e,t,n){const r=He.get(e),i=r?.get(t.key);r&&i&&i.token===n&&r.delete(t.key)}function Ze(e,t,n){me(e,t,n);const r=He.get(e)?.get(t.key);r&&function(e,t,n){("onChange"===n||"all"===n||"onTouched"===n&&oe(e,t)||B(e,t).length>0&&"onChange"===e.reValidateMode)&&e.validators.get(t.key)?.(),Je(e,t,n),Ie(e,t,n)}(e,t,r.mode??e.mode)}function et(e,t){re(e,t);const n=He.get(e)?.get(t.key);if(!n)return;const r=n.mode??e.mode;("onBlur"===r||"onTouched"===r||"all"===r||B(e,t).length>0&&"onBlur"===e.reValidateMode)&&e.validators.get(t.key)?.()}function tt(e,n){e.isSubmitting=n,t(e.emitter,"submitting")}function nt(e){e.submitCount++,t(e.emitter,"submitCount")}function rt(e,n){e.isSubmitSuccessful=n,t(e.emitter,"submitSuccessful")}function it(e,n){e.disabled=n,t(e.emitter,"disabled")}function ot(e,n){e.status=n,t(e.emitter,"status")}function st(e){if(e.startsWith("["))try{const t=JSON.parse(e);if(Array.isArray(t))return t.join(".")}catch{}return e}function ut(e,n){const{onSubmit:r,onValidSubmit:i,onInvalidSubmit:o,onAction:s,shouldFocusError:u=!0}=n??{};return async n=>{n&&"function"==typeof n.preventDefault&&n.preventDefault();const a=n?.currentTarget;e.isSubmitted=!0,tt(e,!0),nt(e);const c=ae(e);if(a&&"function"==typeof a.checkValidity&&!1===a.checkValidity()){if(a.reportValidity(),u&&"function"==typeof a.querySelector){const e=a.querySelector(":invalid");e&&"function"==typeof e.focus&&e.focus()}return tt(e,!1),rt(e,!1),void(o&&o(function(e){const t=[],{elements:n}=e;for(let e=0;e<n.length;e++){const r=n[e];r.name&&"function"==typeof r.checkValidity&&!r.checkValidity()&&t.push({path:st(r.name),type:"native",message:r.validationMessage})}return t}(a),c))}if(await Ge(e)){if(tt(e,!1),rt(e,!1),u){const n=e.errors.keys().next().value;void 0!==n&&t(e.emitter,"focusError",n)}o&&o(I(e),c)}else try{const t=ae(e);r&&await r(t,n),i&&await i(t,n),s&&await s(t,n),rt(e,!0)}catch{rt(e,!1)}finally{tt(e,!1)}}}function at(e,n,r){const{key:i}=E(n);r?t(e.emitter,"focusError",i,r):t(e.emitter,"focusError",i)}function ct(e){const i=n();r(i,0);let o=e?.initialValues??{};"function"==typeof o&&(o=o());const s={emitter:i,...e,mode:e?.mode??"onSubmit",reValidateMode:e?.reValidateMode??"onChange",disabled:e?.disabled??!1,validateOnMount:e?.validateOnMount??!1,asyncAlways:e?.asyncAlways??!1,validateDeps:e?.validateDeps?new Set(e.validateDeps.map(e=>E(e).key)):void 0,initialValues:{},values:new Map,deleted:new Set,errors:new Map,touched:new Set,validators:new Map,validating:new Set,parsedValues:void 0,isSubmitting:!1,isSubmitted:!1,submitCount:0,isSubmitSuccessful:void 0,isLoading:!1,status:void 0};return S(o)?(s.isLoading=!0,t(i,"loading"),Promise.resolve(o).then(e=>{we(s,e??{}),s.isLoading=!1,t(i,"loading")},e=>{s.isLoading=!1,t(i,"loading")})):s.initialValues=o,s}function lt(e,t){switch(e){case"required":return"This field is required";case"min":return`Must be at least ${t}`;case"max":return`Must be at most ${t}`;case"minLength":return`Must be at least ${t} characters`;case"maxLength":return`Must be at most ${t} characters`;case"pattern":return"Invalid format";default:return"Invalid value"}}function dt(e){return(t,n)=>{if(e.required&&(""===t||null==t||Array.isArray(t)&&0===t.length))return[{type:"required",message:"string"==typeof e.required?e.required:lt("required")}];const r=[],i=(t,n)=>e.messages?.[t]??lt(t,n);if(void 0!==e.min){const n=Number(t);!Number.isNaN(n)&&n<e.min&&r.push({type:"min",message:i("min",e.min)})}if(void 0!==e.max){const n=Number(t);!Number.isNaN(n)&&n>e.max&&r.push({type:"max",message:i("max",e.max)})}const o="string"==typeof t||Array.isArray(t);if(void 0!==e.minLength&&o&&t.length<e.minLength&&r.push({type:"minLength",message:i("minLength",e.minLength)}),void 0!==e.maxLength&&o&&t.length>e.maxLength&&r.push({type:"maxLength",message:i("maxLength",e.maxLength)}),e.pattern&&!e.pattern.value.test(t)&&r.push({type:"pattern",message:e.messages?.pattern??e.pattern.message??lt("pattern")}),void 0!==e.validate){const i="function"==typeof e.validate?{validate:e.validate}:e.validate;for(const[e,o]of Object.entries(i)){const i=o(t,n);if(void 0!==i)for(const t of Array.isArray(i)?i:[i])r.push("string"==typeof t?{type:e,message:t}:{...t,type:e})}}return r.length?r:void 0}}function ft(e){const t={};return e.required&&(t.required=!0),void 0!==e.min&&(t.min=e.min),void 0!==e.max&&(t.max=e.max),void 0!==e.minLength&&(t.minLength=e.minLength),void 0!==e.maxLength&&(t.maxLength=e.maxLength),e.pattern&&(t.pattern=e.pattern.value.source),t}function mt(e,t){return e.startsWith(`${t.slice(0,-1)},`)}function yt(t,n,r,i,o){const{key:s}=r;return e(t,n,e=>{(void 0===e||e.key===s||mt(s,e.key)||"branch"===i&&mt(e.key,s))&&o()})}function vt(t,n,r,i){return e(t,n,e=>{void 0!==e&&e.key!==r||i()})}function gt(t,n){const{name:r,event:i="change",scope:o="branch",callback:s}=n;if(void 0===r)return e(t.emitter,i,s);const u=function(e){return Array.isArray(e)&&e.every(e=>"number"!=typeof e)}(r)?r:[r],a=u.map(e=>{const n=E(e);return"errors"===i||"touched"===i?vt(t.emitter,i,n.key,s):yt(t.emitter,i,n,o,s)});return 1===a.length?a[0]:()=>a.forEach(e=>e())}function ht(t){const[n]=a(()=>{const e=ct(t);return t&&void 0!==t.values&&we(e,t.values),e}),r=t&&t.initialValues,i=t&&t.values,o=s(null);null===o.current&&(o.current={done:!1,source:void 0}),c(()=>{if(void 0===r)return;if("function"==typeof r||S(r))return;const e=o.current;e.done&&(e.source===r||V(e.source,r))||(e.done=!0,e.source=r,we(n,r))},[n,r]);const u=s(null);return null===u.current&&(u.current={done:!1,source:void 0}),c(()=>{if(void 0===i)return;const e=u.current;e.done&&(e.source===i||V(e.source,i))||(e.done=!0,e.source=i,we(n,i))},[n,i]),c(()=>{if(!n.validateOnMount||!n.validate)return;const t=()=>{Pe(n).catch(()=>{})};if(n.isLoading)return e(n.emitter,"loading",()=>{t()});t()},[n]),n}function pt(e,t,n){const r=s(null);null===r.current&&(r.current={hasValue:!1});const i=r.current,a=s(t);a.current=t;const c=s(n);c.current=n;const l=o(()=>(i.hasValue||(i.value=a.current(),i.hasValue=!0),i.value),[i]),d=o(t=>{i.hasValue=!1;return e(()=>{const e=c.current;if(e&&i.hasValue){const n=a.current();if(e(i.value,n))return;return i.value=n,void t()}i.hasValue=!1,t()})},[e,i]);return u(d,l,l)}function bt(t,n,r,i){const s="emitter"in t?t.emitter:t;return pt(o(t=>e(s,n,t),[s,n]),r,i)}function kt(e,t,n){return wt(e,E(t),n)}function wt(e,t,n){const{emitter:r}=e,{key:i}=t,s=!1===n?.exact?"branch":"leaf";return pt(o(e=>yt(r,"change",t,s,e),[r,i,s]),()=>{if(!1===n?.exact)return p(ae(e),t.value);const r=de(e,t);return void 0===r?n?.defaultValue:r})}function St(e,t){return Vt(e,E(t))}function Vt(e,t){const{emitter:n}=e,{key:r}=t;return pt(o(e=>vt(n,"touched",r,e),[n,r]),oe.bind(null,e,t))}function At(e,t){return Et(e,E(t))?.message}function Et(e,t){const{emitter:n}=e,{key:r}=t;return pt(o(e=>vt(n,"errors",r,e),[n,r]),J.bind(null,e,t))}function Ot(e,t){return Mt(e,E(t))}function Mt(e,t){const{emitter:n}=e,{key:r}=t;return pt(o(e=>vt(n,"errors",r,e),[n,r]),B.bind(null,e,t))}function xt(e){return bt(e,"change",Y.bind(null,e))}function Ct(e,t){return Dt(e,E(t))}function Dt(e,t){const{emitter:n}=e,{key:r}=t;return pt(o(e=>yt(n,"change",t,"leaf",e),[n,r]),()=>X(e,t))}function jt(e){return bt(e,"change",te.bind(null,e))}function Lt(e){return bt(e,"touched",se.bind(null,e))}const Tt=["change","errors","touched","validating","submitting","submitCount","submitSuccessful","disabled","loading"];function Nt(e,t){const n=e.touchedFields.length===t.touchedFields.length&&e.touchedFields.every((e,n)=>e===t.touchedFields[n]);return e.isDirty===t.isDirty&&e.dirtyFields===t.dirtyFields&&e.isTouched===t.isTouched&&n&&e.hasErrors===t.hasErrors&&e.isValid===t.isValid&&e.isSubmitting===t.isSubmitting&&e.isSubmitted===t.isSubmitted&&e.isValidating===t.isValidating&&e.isSubmitSuccessful===t.isSubmitSuccessful&&e.submitCount===t.submitCount&&e.isLoading===t.isLoading&&e.disabled===t.disabled}function Ft(t){const n=o(()=>function(e){return{isDirty:Y(e),dirtyFields:te(e),isTouched:e.touched.size>0,touchedFields:se(e),hasErrors:Q(e),isValid:!Q(e),isSubmitting:e.isSubmitting,isSubmitted:e.isSubmitted,isValidating:e.validating.size>0,isSubmitSuccessful:e.isSubmitSuccessful,submitCount:e.submitCount,isLoading:e.isLoading,disabled:e.disabled}}(t),[t]);return pt(o(n=>{const r=Tt.map(r=>e(t.emitter,r,n));return()=>{for(const e of r)e()}},[t.emitter]),n,Nt)}function $t(e){return bt(e,"errors",Q.bind(null,e))}function qt(e){return bt(e,"errors",()=>!Q(e))}function Pt(e){return bt(e,"submitting",()=>e.isSubmitting)}function Wt(e){return bt(e,"loading",()=>e.isLoading)}function Jt(e){return bt(e,"status",()=>e.status)}function Ut(t){const{emitter:n}=t;return pt(o(t=>{const r=e(n,"errors",t),i=e(n,"submitting",t);return()=>{r(),i()}},[n]),()=>!t.isSubmitting&&!Q(t))}function zt(e){return bt(e,"submitCount",()=>e.submitCount)}function Bt(e){return bt(e,"validating",()=>e.validating.size>0)}function It(e){return bt(e.emitter,"submitSuccessful",()=>!!e.isSubmitSuccessful)}function _t(e){return Et(e,E(q))?.message}function Rt(e){return Mt(e,E(q))}function Gt(e){const t=l(()=>E(g(e)),[e]);return l(()=>t,[t.key])}function Ht(e){const t=s(e);return t.current=e,t}function Kt(e){const t=Ht(e);return o((...e)=>t.current(...e),[t])}function Qt(e,t){const n=s(!1);c(()=>(n.current&&(n.current=!1,t()),()=>{n.current=!0,e()}),[])}function Xt(t,n,r,i){const o=d(mn),u=r||o;if(!u)throw new Error("no form provided");const a=s(t);a.current=t;const l=s(i?.debounce??0);l.current=i?.debounce??0;const f=s(i?.sync);f.current=i?.sync;const m=s(i?.asyncAlways??!1);return m.current=i?.asyncAlways??!1,c(()=>{const t=Me(u,n,{validate:()=>a.current,debounce:()=>l.current,sync:()=>f.current,asyncAlways:()=>m.current});if(!(i?.validateOnMount??u.validateOnMount)||!a.current&&!f.current)return t;let r=!1;const o=()=>{r||u.validators.get(n.key)?.()};if(u.isLoading){const t=e(u.emitter,"loading",()=>{t(),o()})}else o();return()=>{r=!0,t()}},[u,n.key]),Kt(()=>u.validators.get(n.key)?.())}function Yt(e,t){const{key:n}=t,r={present:e.values.has(n),value:e.values.get(n),touched:e.touched.has(n),errors:e.errors.get(n)};return pe(e,t),r}function Zt(e,n,r){const{key:i}=n;r.present?me(e,n,r.value,{shouldDirty:!1}):(e.deleted.delete(i),M(e),t(e.emitter,"change",n)),r.touched&&re(e,n),r.errors&&G(e,n,r.errors)}const en=new WeakMap;function tn({form:t,name:n,initialValue:r,shouldUnregister:i,validate:u,rules:l,validateDebounce:f,validateDeps:m,validateOnMount:y,delayError:v,disabled:g,uncontrolled:h,asyncAlways:p,mode:b},k){const w=d(k),V=t||w;if(!V)throw new Error("no form provided");const A=Gt(n),O=s(!1);void 0!==r&&void 0===de(V,A)&&(ye(V,A,r),O.current=!0),c(()=>{O.current&&(O.current=!1,ve(V,A))});Xt(function(e,t){if(!e||!function(e){return void 0!==e.required||void 0!==e.min||void 0!==e.max||void 0!==e.minLength||void 0!==e.maxLength||void 0!==e.pattern||void 0!==e.validate}(e))return t;const n=dt(e);return t?(e,r)=>{const i=n(e,r),o=e=>{const t=[...i??[]];return Array.isArray(e)?t.push(...e):e&&t.push(e),t.length?t:void 0},s=t(e,r);return S(s)?s.then(o):o(s)}:n}(l?{...l,required:void 0}:void 0,u),A,V,{debounce:f,validateOnMount:y,asyncAlways:p??V.asyncAlways,sync:l&&void 0!==l.required?dt({required:l.required}):void 0});const M=function(e,t){const[n,r]=a(e);return c(()=>{if(void 0===t)return;if(0===e.length)return void r(e);if(n.length>0)return void r(e);const i=setTimeout(()=>r(e),t);return()=>clearTimeout(i)},[e,t,n]),void 0===t?e:n}(Mt(V,A),v),x=M[0],C=x?.message,D=function(e,t,n){const r=s({has:!1,value:void 0}),i=o(()=>n?(r.current.has||(r.current={has:!0,value:de(e,t)}),r.current.value):de(e,t),[n,e,t]);return pt(o(r=>n?()=>{}:yt(e.emitter,"change",t,"leaf",r),[n,e.emitter,t]),i)}(V,A,!!h),j=pt(o(e=>h?()=>{}:yt(V.emitter,"change",A,"leaf",e),[V.emitter,A.key,h]),()=>X(V,A)),L=pt(o(e=>vt(V.emitter,"validating",A.key,e),[V.emitter,A.key]),()=>V.validating.has(A.key)),T=bt(V,"disabled",()=>V.disabled),N=Kt(e=>Ze(V,A,e)),F=Kt(()=>et(V,A));c(()=>{const{token:e,displaced:t}=Xe(V,A,b);return()=>Ye(V,A,e)},[V,A.key,b]);const $=m?.length?m.join("\n"):void 0;c(()=>{if(!$)return;const e=m.map(e=>E(e).key);return ze(V,A.key,e),()=>Be(V,A.key,e)},[V,A.key,$]);const q=s(null),P=o(e=>{q.current=e},[]);c(()=>e(V.emitter,"focusError",(e,t)=>{if(e!==A.key)return;const n=q.current;n&&"function"==typeof n.focus&&(n.focus(),t?.shouldSelect&&"function"==typeof n.select&&n.select())}),[V,A.key]),c(()=>{if(!h)return;let t=en.get(V);if(!t){const n=new Map,r=e(V.emitter,"change",e=>{if(!e)for(const e of n.values()){const{el:t,path:n}=e();if(!t||"file"===t.type)continue;const r=de(V,n),i=null==r?"":String(r);t.value!==i&&(t.value=i)}});t={cells:n,off:r},en.set(V,t)}return t.cells.set(A.key,()=>({el:q.current,path:A})),()=>{t.cells.delete(A.key),0===t.cells.size&&(t.off(),en.delete(V))}},[V,A.key,h]);const W=s(null);return Qt(Kt(()=>{!1!==(i??V.shouldUnregister)&&(W.current=Yt(V,A))}),Kt(()=>{const e=W.current;W.current=null,e&&Zt(V,A,e)})),{form:V,value:D,error:C,errorObject:x,errors:M,isDirty:j,validating:L,onChange:N,onBlur:F,name:A.key,disabled:T||!!g,focusRef:P}}function nn(e){return tn(e,mn)}const rn=new WeakMap;function on(e){const t=(rn.get(e)??0)+1;return rn.set(e,t),`_${t}`}const sn=new WeakMap;function un(e,t,n){let r=sn.get(e);r||(r=new Map,sn.set(e,r)),r.set(t,n)}function an(e){return e+1}function cn(e,t){const n=d(t),r=e.form||n;if(!r)throw new Error("no form provided");const i=e.keyName??"id",{rules:u,shouldUnregister:a}=e,l=Gt(e.name),m=s([]),y=o(()=>de(r,l)||[],[r,l]),v=o(e=>{me(r,l,e)},[r,l]),g=o(()=>{const e=y();for(;m.current.length<e.length;)m.current.push(on(r));for(;m.current.length>e.length;)m.current.pop();return m.current.map((e,t)=>({id:e,index:t,[i]:e}))},[y,r,i]),[h,p]=f(g,void 0,g);c(()=>yt(r.emitter,"change",l,"branch",p),[r.emitter,l]),un(r,l.key,m.current),c(()=>(un(r,l.key,m.current),()=>{const e=sn.get(r);e?.get(l.key)===m.current&&e.delete(l.key)}),[r,l.key]);const b=s(null);Qt(Kt(()=>{!1!==(a??r.shouldUnregister)&&(b.current=Yt(r,l))}),Kt(()=>{const e=b.current;b.current=null,e&&Zt(r,l,e)})),Xt(u?dt({...u,required:void 0}):void 0,l,r,{sync:u&&void 0!==u.required?dt({required:u.required}):void 0});return{fields:h,append:Kt(e=>{const t=y();m.current.push(on(r)),v([...t,e])}),prepend:Kt(e=>{const t=y();m.current.unshift(on(r)),v([e,...t])}),insert:Kt((e,t)=>{const n=y();m.current.splice(e,0,on(r));const i=[...n.slice(0,e),t,...n.slice(e)];v(i)}),remove:Kt(e=>{const t=y();m.current.splice(e,1);const n=t.filter((t,n)=>n!==e);v(n)}),swap:Kt((e,t)=>{const n=y();[m.current[e],m.current[t]]=[m.current[t],m.current[e]];const r=[...n];[r[e],r[t]]=[r[t],r[e]],v(r)}),move:Kt((e,t)=>{const n=y(),[r]=m.current.splice(e,1);m.current.splice(t,0,r);const i=[...n],[o]=i.splice(e,1);i.splice(t,0,o),v(i)}),replace:Kt(e=>{m.current=e.map(()=>on(r)),v([...e])}),update:Kt((e,t)=>{const n=y();if(e<0||e>=n.length)return;const r=[...n];r[e]=t,v(r)})}}function ln(e){return cn(e,mn)}function dn(e,t){const n=d(t),r=e.form||n;if(!r)throw new Error("no form provided");const{id:i}=e,u=Gt(e.name),a=o(()=>function(e,t){return sn.get(e)?.get(t)}(r,u.key)?.indexOf(i)??-1,[r,u.key,i]),l=o(e=>{const t=de(r,u);return Array.isArray(t)?t[e]:void 0},[r,u]),m=a(),y=l(m),v=s({index:m,value:y});v.current={index:m,value:y};const g=Ht({computeIndex:a,computeValue:l}),[,h]=f(an,0);c(()=>yt(r.emitter,"change",u,"leaf",()=>{const{computeIndex:e,computeValue:t}=g.current,n=e();n===v.current.index&&Object.is(t(n),v.current.value)||h()}),[r.emitter,u,g]);const p=Gt([...u.value,m]),b=Mt(r,p);return{value:y,setValue:Kt(e=>{if(m<0)return;const t=[...de(r,u)??[]];m>=t.length||(t[m]=e,me(r,u,t))}),errors:b,error:b[0]?.message,name:p.key,index:m,form:r}}function fn(e){return dn(e,mn)}const mn=m(null),yn=mn.Provider;function vn(){const e=d(mn);if(!e)throw new Error("no form provided");return e}function gn(){const e=m(null);return{context:e,FormProvider:function({form:t,children:n}){return y(e.Provider,{value:t},n)},useFormContext:function(){const t=d(e);if(!t)throw new Error("no form provided");return t},useField:function(t){return tn(t,e)},useFieldArray:function(t){return cn(t,e)},useFieldArrayItem:function(t){return dn(t,e)}}}const hn=m(null),pn=hn.Provider;function bn(){const e=d(hn);if(!e)throw new Error("no group provided");return e}function kn(e,t,n={}){const r=Gt(t),{toDisplay:i,fromDisplay:s}=n,u=pt(o(t=>yt(e.emitter,"change",r,"leaf",t),[e.emitter,r.key]),()=>de(e,r));return{value:i?i(u):u,onChange:o(t=>{Ze(e,r,s?s(t):t)},[e,r,s])}}function wn(e,t,n){if(null!=n)if(Array.isArray(n))for(const r of n)wn(e,t,r);else if("undefined"!=typeof FileList&&n instanceof FileList)for(let r=0;r<n.length;r++)e.append(t,n.item(r));else"undefined"!=typeof File&&n instanceof File?e.append(t,n,n.name):"undefined"!=typeof Blob&&n instanceof Blob?e.append(t,n):n instanceof Date?e.append(t,n.toISOString()):e.append(t,"object"==typeof n?JSON.stringify(n):String(n))}function Sn({form:e,context:t,initialValues:n,values:r,shouldUnregister:o,validateOnMount:s,disabled:u,asyncAlways:a,onSubmit:c,onValidSubmit:l,onInvalidSubmit:d,action:f,shouldFocusError:m,...y}){const v=ht({initialValues:n,values:r,shouldUnregister:o,validateOnMount:s,disabled:u,asyncAlways:a}),g=e||v;i.useEffect(()=>{void 0!==u&&it(g,u)},[g,u]);const h=ut(g,{onSubmit:c,onValidSubmit:l,onInvalidSubmit:d,shouldFocusError:m,onAction:f?e=>f(function(e){const t=new FormData;for(const n of Object.keys(e))wn(t,n,e[n]);return t}(e)):void 0}),{Provider:p}=t??mn;return i.createElement(p,{value:g},i.createElement("form",{...y,noValidate:!0,onSubmit:h}))}function Vn({children:e,...t}){return e(nn(t))}function An(e){return e.replace(/["'[\],\s]+/g,"-").replace(/^-+|-+$/g,"")||"field"}function En(e,t,n){return{"aria-invalid":!!e||n["aria-invalid"],"aria-describedby":e?[n["aria-describedby"],An(t)].filter(Boolean).join(" "):n["aria-describedby"]}}function On(e){return An(E(e).key)}const Mn=i.forwardRef(({validate:e,eventToValue:t,initialValue:n,name:r,asProps:o,renderError:s,as:u,valueToProps:a,form:c,shouldUnregister:l,rules:d,validateDebounce:f,validateOnMount:m,valueAsNumber:y,valueAsDate:v,asyncAlways:g,disabled:h,delayError:p,mode:b,uncontrolled:k,...w},S)=>{const V=i.useRef(null),[A,E]=i.useState(0),{value:O,onChange:M,onBlur:x,error:C,name:D,disabled:j,focusRef:L}=nn({name:r,form:c,initialValue:n,shouldUnregister:l,rules:d,validateDebounce:f,validateOnMount:m,delayError:p,disabled:h,asyncAlways:g,mode:b,uncontrolled:k||"file"===w.type,validate:(...t)=>{const n=V.current;if(!n||"function"!=typeof n.checkValidity||(n.setCustomValidity(""),!1!==n.checkValidity()))return e?e(...t):void 0;E(e=>e+1)}}),T=i.useCallback(e=>{V.current=e,L(e),function(e,t){"function"==typeof e?e(t):e&&(e.current=t)}(S,e)},[S,L]),N=u||"input";i.useEffect(()=>{const e=V.current;e&&"function"==typeof e.setCustomValidity&&("string"==typeof C?(e.setCustomValidity(C),e.reportValidity()):e.setCustomValidity(""))},[C]),i.useEffect(()=>{A>0&&V.current?.reportValidity()},[A]);const F="file"===w.type,$=t??(F?e=>e.target.files:y?e=>e.target.valueAsNumber:v?e=>e.target.valueAsDate:e=>e.target.value),q=a?a(O):F?{}:k?{defaultValue:O}:{value:O},P=An(D),W=d?ft(d):void 0;return i.createElement(i.Fragment,null,i.createElement(N,{...W,...w,name:D,onBlur:x,...o,...q,...En(C,D,w),disabled:j,onChange:e=>M($(e)),ref:T}),C&&s?i.createElement("span",{id:P,role:"alert"},s(C,P)):null)}),xn=i.forwardRef(({name:e,form:t,initialValue:n,shouldUnregister:r,validate:o,rules:s,validateDebounce:u,validateOnMount:a,asyncAlways:c,disabled:l,delayError:d,mode:f,...m},y)=>{const{value:v,onChange:g,onBlur:h,error:p,name:b,disabled:k}=nn({name:e,form:t,initialValue:n,shouldUnregister:r,validate:o,rules:s,validateDebounce:u,validateOnMount:a,asyncAlways:c,delayError:d,disabled:l,mode:f}),w=s?ft(s):void 0;return i.createElement("input",{...w,...m,name:b,onBlur:h,type:"checkbox",checked:!!v,...En(p,b,m),disabled:k,onChange:e=>g(e.target.checked),ref:y})});function Cn(e,t){return e?Array.isArray(t)?t:[]:t??""}const Dn=i.forwardRef(({name:e,multiple:t,children:n,form:r,initialValue:o,shouldUnregister:s,validate:u,rules:a,validateDebounce:c,validateOnMount:l,asyncAlways:d,disabled:f,delayError:m,mode:y,...v},g)=>{const{value:h,onChange:p,onBlur:b,error:k,name:w,disabled:S}=nn({name:e,form:r,initialValue:o,shouldUnregister:s,validate:u,rules:a,validateDebounce:c,validateOnMount:l,asyncAlways:d,delayError:m,disabled:f,mode:y}),V=a?ft(a):void 0;return i.createElement("select",{...V,...v,name:w,onBlur:b,multiple:t,value:Cn(t,h),...En(k,w,v),disabled:S,onChange:e=>p(t?Array.from(e.target.selectedOptions,e=>e.value):e.target.value),ref:g},n)});export{xn as Checkbox,hn as CheckboxGroupContext,pn as CheckboxGroupProvider,q as FORM_ERROR,Mn as Field,Sn as Form,mn as FormContext,Vn as FormField,yn as FormProvider,Dn as Select,P as VALIDATION_OUTCOME,Ke as changeValue,Qe as changeValueByPath,H as clearErrors,ct as createForm,gn as createFormContext,ve as emitChangeByPath,Re as ensureValidate,On as fieldErrorId,te as getDirtyFields,W as getError,J as getErrorByPath,I as getErrors,z as getFieldErrors,B as getFieldErrorsByPath,ge as getFieldState,_ as getFirstError,se as getTouchedFields,le as getValue,de as getValueByPath,ae as getValues,ut as handleSubmit,Q as hasErrors,ie as hasTouched,oe as hasTouchedByPath,nt as incrementSubmitCount,Y as isDirty,X as isFieldDirtyByPath,ue as isTouched,Xe as registerFieldMode,ze as registerFieldValidateDeps,Me as registerValidatorByPath,he as removeField,pe as removeFieldByPath,Ve as reset,Ae as resetField,Ie as revalidateDependentsOnChange,Je as revalidateFormOnChange,Pe as runFormValidate,ye as seedValueByPath,it as setDisabled,R as setError,G as setErrorByPath,at as setFocus,we as setInitialValues,tt as setIsSubmitting,K as setServerErrors,ot as setStatus,rt as setSubmitSuccessful,ne as setTouched,re as setTouchedByPath,Oe as setValidatingByPath,fe as setValue,me as setValueByPath,gt as subscribe,xe as trigger,Ye as unregisterFieldMode,Be as unregisterFieldValidateDeps,Ee as unsetValidatingByPath,Ut as useCanSubmit,bn as useCheckboxGroupContext,jt as useDirtyFields,At as useError,Et as useErrorByPath,nn as useField,ln as useFieldArray,fn as useFieldArrayItem,Ot as useFieldErrors,Mt as useFieldErrorsByPath,ht as useForm,vn as useFormContext,_t as useFormError,Rt as useFormErrors,Ft as useFormState,$t as useHasErrors,xt as useIsDirty,Ct as useIsFieldDirty,Dt as useIsFieldDirtyByPath,Wt as useIsLoading,It as useIsSubmitSuccessful,Pt as useIsSubmitting,qt as useIsValid,Bt as useIsValidating,Jt as useStatus,zt as useSubmitCount,St as useTouched,Vt as useTouchedByPath,Lt as useTouchedFields,kn as useTransform,kt as useValue,wt as useValueByPath,bt as useWatch,pt as useWatchCore,et as userBlur,Ze as userChangeByPath,Ge as validate};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|