react-f0rm 0.11.1 → 1.1.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 +37 -1
- 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/form-BGWPwts2.mjs +2 -0
- package/dist/form-BGWPwts2.mjs.map +1 -0
- package/dist/{form-DSwruZIg.d.ts → form-BiDaJLjD.d.ts} +92 -13
- package/dist/form-DwuY91QB.cjs.js +2 -0
- package/dist/form-DwuY91QB.cjs.js.map +1 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +25 -3
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/index.umd.js +147 -32
- 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/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/{validate-CqRu0f-o.d.ts → validate-2XUilILy.d.ts} +1 -1
- package/package.json +1 -1
- package/dist/form-CpN0eh8a.cjs.js +0 -2
- package/dist/form-CpN0eh8a.cjs.js.map +0 -1
- package/dist/form-_6GaGvln.mjs +0 -2
- package/dist/form-_6GaGvln.mjs.map +0 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("react");function t(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}}),t.default=e,Object.freeze(t)}var r=t(e);function n(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];(e.get(t)||[]).forEach(function(e){return e.apply(void 0,n)})}function o(e,t,r){var n=function(e,t){var r=e.get(t);if(r)return r;var n=new Set;return e.set(t,n),n}(e,t);return n.add(r),function(){return n.delete(r)}}const s=new Map;function u(e){if(Array.isArray(e))return e;const t=s.get(e);if(t)return t;const r=function(e){const t=[];let r="";const n=()=>{t.push(r),r=""};for(let o=0;o<e.length;o++){const s=e[o];if("."===s)""!==r&&n();else if("["===s){""!==r&&n();const s=e[o+1];if('"'===s||"'"===s){const r=e.indexOf(s,o+2);if(-1===r)throw new TypeError(`Unterminated quote in path: ${e}`);if("]"!==e[r+1])throw new TypeError(`Expected "]" after quoted segment in path: ${e}`);t.push(e.slice(o+2,r)),o=r+1}else{const r=e.indexOf("]",o+1);if(-1===r)throw new TypeError(`Unterminated bracket in path: ${e}`);const n=e.slice(o+1,r);t.push(i(n)?Number(n):n),o=r}}else r+=s}""===r&&0!==t.length||n();return t}(e);return s.set(e,r),r}const i=e=>/^-?\d+$/.test(e);function a(e,t){return t.reduce((e,t)=>{if(null!=e)return e[t]},e)}function c(e,t){if(!t.length||null==e)return e;const[r,...n]=t;if(n.length){const t=c(e[r],n);return t===e[r]?e:l(e,[r],t)}if(Array.isArray(e)){if(!(r in e))return e;const t=e.slice();return delete t[r],t}if("object"!=typeof e||!(r in e))return e;const o={...e};return delete o[r],o}function l(e,t,r){if(!t.length)return r;const[n,...o]=t,s="number"==typeof n?n:Array.isArray(e)&&"string"==typeof n&&i(n)?Number(n):void 0;if(void 0!==s){const t=Array.isArray(e)?e.slice():[];return t[s]=l(t[s],o,r),t}return{...e,[n]:l(e&&e[n],o,r)}}function f(e,t,r,n){if(!t.length)return r;let o=e,s=null,u="";for(let a=0;a<t.length;a++){const c=t[a];if(!n.has(o)){let t;t="number"==typeof c||Array.isArray(o)&&"string"==typeof c&&i(c)?Array.isArray(o)?o.slice():[]:{...o},n.add(t),0===a?e=t:s[u]=t,o=t}a===t.length-1?o[c]=r:(s=o,u=c,o=o[c])}return e}function d(e){return e&&"function"==typeof e.then}function p(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 r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!p(e[r],t[r]))return!1;return!0}const n=Object.getPrototypeOf(e);if(n!==Object.prototype&&null!==n)return!1;if(Object.getPrototypeOf(t)!==n)return!1;const o=Object.keys(e),s=Object.keys(t);if(o.length!==s.length)return!1;for(const r of o)if(!p(e[r],t[r]))return!1;return!0}function m(e,t,r,n){return new Promise((s,u)=>{if(n())return void u();if(r())return void s();const i=o(e,t,()=>{if(n())return i(),void u();r()&&(i(),s())})})}function h(e){const t=u(e);return{value:t,key:JSON.stringify(t)}}const y=Symbol("validation-outcome");function g(e){return{emitter:new Map,...e,mode:e?.mode??"onSubmit",reValidateMode:e?.reValidateMode??"onChange",disabled:e?.disabled??!1,validateDeps:e?.validateDeps?new Set(e.validateDeps.map(e=>h(e).key)):void 0,initialValues:e?.initialValues??{},values:new Map,deleted:new Set,errors:new Map,touched:new Set,validators:new Map,changeHandlers:new Map,validating:new Set,parsedValues:void 0,isSubmitting:!1,submitCount:0,isSubmitSuccessful:void 0}}function v(e){const{initialValues:t,parsedValues:r,values:n,deleted:o}=e,s=new Set;let u=r??t;for(const[e,t]of n)u=f(u,JSON.parse(e),t,s);for(const e of o)u=c(u,JSON.parse(e));return u}function b(e,t){return x(e,h(t))}function x({initialValues:e,parsedValues:t,values:r,deleted:n},o){const{key:s,value:u}=o;if(r.has(s))return r.get(s);if(!n.has(s)){for(let e=u.length-1;e>0;e--){const t=JSON.stringify(u.slice(0,e));if(r.has(t))return a(r.get(t),u.slice(e))}return a(t??e,u)}}function k(e,t,r,o){const{emitter:s,values:u,deleted:i}=e;u.set(t.key,r),function(e,{key:t}){if(!e.size)return;const r=`${t.slice(0,-1)},`;for(const t of e.keys())t.startsWith(r)&&e.delete(t)}(u,t),G(i,t),function(e,{key:t}){const r=M.get(e);if(!r?.size)return;const n=`${t.slice(0,-1)},`;for(const e of r.keys())e.startsWith(n)&&r.delete(e)}(e,t),!1===o?.shouldDirty&&R(e,t,r),W(e),o?.shouldTouch&&F(e,t),o?.shouldValidate&&e.validators.get(t.key)?.(),n(s,"change",t)}function E(e,t,r,n){!1===n?.shouldDirty&&R(e,t,r);const o=e.changeHandlers.get(t.key);o?o(r):k(e,t,r,n)}function S({errors:e},t){return e.get(t.key)?.[0]}const V=[];function w({errors:e},t){return e.get(t.key)??V}function O({errors:e}){const t=[];for(const[r,n]of e){const e=JSON.parse(r).join(".");for(const{type:r,message:o}of n)t.push({path:e,type:r,message:o})}return t}function C({errors:e}){return e.values().next().value?.[0]?.message}function A({emitter:e,validating:t},r){t.delete(r.key),n(e,"validating",r)}function _({emitter:e,validating:t},r){t.add(r.key),n(e,"validating",r)}function T(e,t,r){D(e,h(t),r)}function D({emitter:e,errors:t},r,o){const s=function(e){if("string"==typeof e)return e?[{type:"custom",message:e}]:void 0;if(Q(e))return[e];if(!e)return;const t=[];return e.forEach(e=>{"string"==typeof e&&e?t.push({type:"custom",message:e}):Q(e)&&t.push(e)}),t.length?t:void 0}(o);s?t.set(r.key,s):t.delete(r.key),n(e,"errors",r)}function j(e,t){const{emitter:r,errors:o}=e;if(void 0===t)return o.clear(),void n(r,"errors");const s="string"==typeof t||Y(t)?[h(t)]:t.map(e=>h(e));for(const{key:e}of s)o.delete(e);for(const e of s)n(r,"errors",e)}function F({emitter:e,touched:t},r){t.has(r.key)||(t.add(r.key),n(e,"touched",r))}function P({touched:e},t){return e.has(t.key)}function L(e){let t=!1;return B(e,()=>{t=!0}),t}function B(e,t){for(const[r,n]of e.values){const o=JSON.parse(r);N(e,r,o)!==n&&t(o.join("."))}}const M=new WeakMap;function N(e,t,r){const n=M.get(e);return n?.has(t)?n.get(t):a(e.initialValues,r)}function R(e,{key:t},r){let n=M.get(e);n||(n=new Map,M.set(e,n)),n.set(t,r)}function I(e,t){const r=M.get(e);r&&(void 0===t?r.clear():r.delete(t))}const $=new WeakMap;function W(e){const t=$.get(e);t&&t.version++}function q(e){const t={};return B(e,e=>{t[e]=!0}),t}function H(e){let t=$.get(e);if(t){if(t.version>0){const r=q(e);(function(e,t){const r=Object.keys(e);return r.length===Object.keys(t).length&&r.every(e=>!0===t[e])})(t.result,r)||(t.result=r),t.version=0}}else t={version:0,result:q(e)},$.set(e,t);return t.result}function J({touched:e}){return Array.from(e,e=>JSON.parse(e).join("."))}function U(e,{key:t,value:r}){const{emitter:o,values:s,touched:u,errors:i,validating:a,deleted:c}=e;s.delete(t),u.delete(t),i.delete(t),a.delete(t),I(e,t),function(e,t){for(let r=1;r<t.length;r++)if(e.has(JSON.stringify(t.slice(0,r))))return!0;const r=`${JSON.stringify(t).slice(0,-1)},`;for(const t of e.keys())if(t.startsWith(r))return!0;return!1}(s,r)||c.add(t),W(e),n(o,"change"),n(o,"touched"),n(o,"errors"),n(o,"validating")}function G(e,{key:t}){if(e.size)for(const r of e)(r===t||r.startsWith(`${t.slice(0,-1)},`)||t.startsWith(`${r.slice(0,-1)},`))&&e.delete(r)}function z(e,t){e.initialValues===t||p(e.initialValues,t)||(e.initialValues=t,e.parsedValues=void 0,e.values.clear(),e.deleted.clear(),I(e),W(e),n(e.emitter,"change"))}function K({errors:e}){return e.size>0}function Y(e){return e.some(e=>"number"==typeof e)}function Q(e){return!!e&&"object"==typeof e&&"string"==typeof e.type&&"string"==typeof e.message}function X(e,t,r=[],n){Object.entries(t).forEach(([t,o])=>{const s=[...r,...u(t)];"string"==typeof o?o&&(T(e,s,o),Z(e,s,n)):Array.isArray(o)||Q(o)?(T(e,s,o),Z(e,s,n)):o&&"object"==typeof o&&X(e,o,s,n)})}function Z(e,t,r){if(!r)return;const n=h(t),o=e.errors.get(n.key);o&&r.set(n.key,o)}function ee(e,t){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,t){for(const[r,o]of t){e.errors.get(r)===o&&(e.errors.delete(r),n(e.emitter,"errors",h(JSON.parse(r))))}}(e,r),r.clear()),t){if("object"==typeof t&&y in t){const o=t;return o.errors&&X(e,o.errors,[],r),void function(e,t){void 0!==t&&t!==e.parsedValues&&(e.parsedValues=t,n(e.emitter,"change"))}(e,o.values)}X(e,t,[],r)}}const te=new WeakMap;const re="__form_validate__";function ne(e){for(const t of e.validating)if(t!==re)return!1;return!0}const oe=Symbol("form-validate-settled"),se=new WeakMap;function ue(e){const t=e.validate;if(!t)return Promise.resolve();const r=e.validateDebounce??0;if(r<=0){const r=new AbortController;return Promise.resolve(t(v(e),{form:e,signal:r.signal})).then(t=>{ee(e,t)})}const o=function(e){let t=se.get(e);return t||(t={timer:null,controller:null,round:null,marked:!1,waiters:[]},se.set(e,t)),t}(e);return null!==o.timer?clearTimeout(o.timer):(o.marked=!0,e.validating.add(re),n(e.emitter,"validating")),o.timer=setTimeout(()=>{o.timer=null;const t=o.round={};(function(e,t,r){const n=e.validate;if(!n)return Promise.resolve();t.controller?.abort();const o=t.controller=new AbortController;let s;try{s=Promise.resolve(n(v(e),{form:e,signal:o.signal}))}catch(e){s=Promise.reject(e)}return s.then(n=>{t.round===r&&ee(e,n)},e=>{if(t.round===r)throw e})})(e,o,t).then(()=>ie(e,o,t,oe),r=>ie(e,o,t,r))},r),new Promise((e,t)=>{o.waiters.push({resolve:e,reject:t})})}function ie(e,t,r,o){if(t.round!==r)return;if(t.round=null,null!==t.timer)return;t.marked&&(t.marked=!1,e.validating.delete(re),n(e.emitter,"validating"));const s=t.waiters;t.waiters=[];for(const e of s)o===oe?e.resolve():e.reject(o)}function ae(e,t,r){e.validateDeps?.has(t.key)&&e.validate&&("onChange"===r||"all"===r||"onTouched"===r&&P(e,t)||"onChange"===e.reValidateMode&&function(e){const t=te.get(e);if(!t)return!1;for(const[r,n]of t)if(e.errors.get(r)===n)return!0;return!1}(e))&&ue(e).catch(()=>{})}async function ce(e){if(e.validators.forEach(e=>e()),await m(e.emitter,"validating",()=>ne(e),()=>K(e)).catch(()=>{throw new Error(C(e))}),e.validate&&(await ue(e),K(e)))throw new Error(C(e))}async function le(e){return ce(e).catch(e=>e.message)}function fe(e,t){e.isSubmitting=t,n(e.emitter,"submitting")}function de(e){e.submitCount++,n(e.emitter,"submitCount")}function pe(e,t){e.isSubmitSuccessful=t,n(e.emitter,"submitSuccessful")}function me(e){if(e.startsWith("["))try{const t=JSON.parse(e);if(Array.isArray(t))return t.join(".")}catch{}return e}function he(e,t){const{onSubmit:r,onValidSubmit:o,onInvalidSubmit:s,shouldFocusError:u=!0}=t??{};return async t=>{t&&"function"==typeof t.preventDefault&&t.preventDefault();const i=t?.currentTarget;fe(e,!0),de(e);const a=v(e);if(i&&"function"==typeof i.checkValidity&&!1===i.checkValidity()){if(i.reportValidity(),u&&"function"==typeof i.querySelector){const e=i.querySelector(":invalid");e&&"function"==typeof e.focus&&e.focus()}return fe(e,!1),pe(e,!1),void(s&&s(function(e){const t=[],{elements:r}=e;for(let e=0;e<r.length;e++){const n=r[e];n.name&&"function"==typeof n.checkValidity&&!n.checkValidity()&&t.push({path:me(n.name),type:"native",message:n.validationMessage})}return t}(i),a))}if(await le(e)){if(fe(e,!1),pe(e,!1),u){const t=e.errors.keys().next().value;void 0!==t&&n(e.emitter,"focusError",t)}s&&s(O(e),a)}else try{const n=v(e);r&&await r(n,t),o&&await o(n,t),pe(e,!0)}catch{pe(e,!1)}finally{fe(e,!1)}}}function ye(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"}}var ge,ve={exports:{}},be={};var xe,ke,Ee={};var Se=(ke||(ke=1,"production"===process.env.NODE_ENV?ve.exports=function(){if(ge)return be;ge=1;var t=e,r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=t.useState,o=t.useEffect,s=t.useLayoutEffect,u=t.useDebugValue;function i(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}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 r=t(),a=n({inst:{value:r,getSnapshot:t}}),c=a[0].inst,l=a[1];return s(function(){c.value=r,c.getSnapshot=t,i(c)&&l({inst:c})},[e,r,t]),o(function(){return i(c)&&l({inst:c}),e(function(){i(c)&&l({inst:c})})},[e]),u(r),r};return be.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:a,be}():ve.exports=(xe||(xe=1,"production"!==process.env.NODE_ENV&&function(){function t(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 r=e,n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=r.useState,s=r.useEffect,u=r.useLayoutEffect,i=r.useDebugValue,a=!1,c=!1,l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,l){a||void 0===r.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 f=l();if(!c){var d=l();n(f,d)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),c=!0)}var p=(d=o({inst:{value:f,getSnapshot:l}}))[0].inst,m=d[1];return u(function(){p.value=f,p.getSnapshot=l,t(p)&&m({inst:p})},[e,f,l]),s(function(){return t(p)&&m({inst:p}),e(function(){t(p)&&m({inst:p})})},[e]),i(f),f};Ee.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:l,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Ee)),ve.exports);function Ve(e,t){return e.startsWith(`${t.slice(0,-1)},`)}function we(e,t,r,n,s){const{key:u}=r;return o(e,t,e=>{(void 0===e||e.key===u||Ve(u,e.key)||"branch"===n&&Ve(e.key,u))&&s()})}function Oe(e,t,r,n){return o(e,t,e=>{void 0!==e&&e.key!==r||n()})}function Ce(t){const[r]=e.useState(()=>{const e=g(t);return t&&void 0!==t.values&&z(e,t.values),e}),n=t&&t.initialValues,o=t&&t.values,s=e.useRef(null);null===s.current&&(s.current={done:!1,source:void 0}),e.useEffect(()=>{const e=s.current;e.done&&(e.source===n||p(e.source,n))||(e.done=!0,e.source=n,z(r,n))},[r,n]);const u=e.useRef(null);return null===u.current&&(u.current={done:!1,source:void 0}),e.useEffect(()=>{if(void 0===o)return;const e=u.current;e.done&&(e.source===o||p(e.source,o))||(e.done=!0,e.source=o,z(r,o))},[r,o]),r}function Ae(t,r){const n=e.useRef(null);null===n.current&&(n.current={hasValue:!1});const o=n.current,s=e.useRef(r);s.current=r;const u=e.useCallback(()=>(o.hasValue||(o.value=s.current(),o.hasValue=!0),o.value),[o]),i=e.useCallback(e=>{o.hasValue=!1;return t(()=>{o.hasValue=!1,e()})},[t,o]);return Se.useSyncExternalStore(i,u,u)}function _e(t,r,n){return Ae(e.useCallback(e=>o(t,r,e),[t,r]),n)}function Te(t,r){const{emitter:n}=t,{key:o}=r;return Ae(e.useCallback(e=>we(n,"change",r,"leaf",e),[n,o]),x.bind(null,t,r))}function De(t,r){const{emitter:n}=t,{key:o}=r;return Ae(e.useCallback(e=>Oe(n,"touched",o,e),[n,o]),P.bind(null,t,r))}function je(t,r){const{emitter:n}=t,{key:o}=r;return Ae(e.useCallback(e=>Oe(n,"errors",o,e),[n,o]),S.bind(null,t,r))}function Fe(t,r){const{emitter:n}=t,{key:o}=r;return Ae(e.useCallback(e=>Oe(n,"errors",o,e),[n,o]),w.bind(null,t,r))}function Pe(t){const r=e.useMemo(()=>h(u(t)),[t]);return e.useMemo(()=>r,[r.key])}function Le(t){const r=e.useRef(t);return r.current=t,r}function Be(t){const r=Le(t);return e.useCallback((...e)=>r.current(...e),[r])}function Me(e,t){if(!e)return t;const r=function(e){return t=>{if(e.required&&(""===t||null==t))return[{type:"required",message:"string"==typeof e.required?e.required:ye("required")}];const r=[],n=(t,r)=>e.messages?.[t]??ye(t,r);if(void 0!==e.min){const o=Number(t);!Number.isNaN(o)&&o<e.min&&r.push({type:"min",message:n("min",e.min)})}if(void 0!==e.max){const o=Number(t);!Number.isNaN(o)&&o>e.max&&r.push({type:"max",message:n("max",e.max)})}return void 0!==e.minLength&&"string"==typeof t&&t.length<e.minLength&&r.push({type:"minLength",message:n("minLength",e.minLength)}),void 0!==e.maxLength&&"string"==typeof t&&t.length>e.maxLength&&r.push({type:"maxLength",message:n("maxLength",e.maxLength)}),e.pattern&&!e.pattern.value.test(t)&&r.push({type:"pattern",message:e.messages?.pattern??e.pattern.message??ye("pattern")}),r.length?r:void 0}}(e);return t?(e,n)=>{const o=r(e,n),s=e=>{const t=[...o??[]];return Array.isArray(e)?t.push(...e):e&&t.push(e),t.length?t:void 0},u=t(e,n);return d(u)?u.then(s):s(u)}:r}function Ne({form:t,name:r,initialValue:n,shouldUnregister:o,validate:s,rules:u,validateDebounce:i,delayError:a,disabled:c,mode:l},f){const p=e.useContext(f),m=t||p;if(!m)throw new Error("no form provided");const h=Pe(r),y=function(t,r,n,o){const s=e.useContext(Ge),u=n||s;if(!u)throw new Error("no form provided");const i=e.useRef(null),a=e.useRef(t);a.current=t;const c=e.useRef(o?.debounce??0);return c.current=o?.debounce??0,e.useEffect(()=>{let e=null,t=null,n=!1;const o=()=>{n||(n=!0,_(u,r))},s=()=>{n&&(n=!1,A(u,r))},l=()=>{e=null;const n=a.current;if(!n)return void s();t?.abort(),t=new AbortController;const c=i.current={};let l;try{l=n(x(u,r),{form:u,path:r,signal:t.signal})}catch(e){throw s(),e}if(!d(l))return D(u,r,l),void s();o(),l.then(e=>{c===i.current&&D(u,r,e)}).catch(()=>{}).finally(()=>{c===i.current&&(s(),i.current=null)})};return u.validators.set(r.key,()=>{const t=c.current;if(t>0)return null!==e?clearTimeout(e):o(),void(e=setTimeout(l,t));l()}),()=>{u.validators.delete(r.key),null!==e&&(clearTimeout(e),e=null),s(),t?.abort()}},[u,r.key]),Be(()=>u.validators.get(r.key)?.())}(Me(u,s),h,m,{debounce:i}),g=Fe(m,h),v=function(t,r){const[n,o]=e.useState(t);return e.useEffect(()=>{if(void 0===r)return;if(0===t.length)return void o(t);if(n.length>0)return void o(t);const e=setTimeout(()=>o(t),r);return()=>clearTimeout(e)},[t,r,n]),void 0===r?t:n}(g,a),b=v[0],E=b?.message,S=Te(m,h),V=_e(m.emitter,"disabled",()=>m.disabled),w=l??m.mode;e.useEffect(()=>{void 0!==n&&void 0===x(m,h)&&k(m,h,n)},[m,h,n]);const O=Be(e=>{k(m,h,e),("onChange"===w||"all"===w||"onTouched"===w&&P(m,h)||g.length>0&&"onChange"===m.reValidateMode)&&y(),ae(m,h,w)});e.useEffect(()=>(m.changeHandlers.set(h.key,O),()=>{m.changeHandlers.get(h.key)===O&&m.changeHandlers.delete(h.key)}),[m,h.key,O]);const C=Be(()=>{F(m,h),("onBlur"===w||"onTouched"===w||"all"===w||g.length>0&&"onBlur"===m.reValidateMode)&&y()});return e.useEffect(()=>()=>{!1!==o&&U(m,h)},[h,m,o]),{form:m,value:S,error:E,errorObject:b,errors:v,onChange:O,onBlur:C,name:h.key,disabled:V||!!c}}function Re(e){return Ne(e,Ge)}let Ie=0;function $e(){return"_"+ ++Ie}const We=new WeakMap;function qe(e,t,r){let n=We.get(e);n||(n=new Map,We.set(e,n)),n.set(t,r)}function He(e){return e+1}function Je(t,r){const n=e.useContext(r),o=t.form||n;if(!o)throw new Error("no form provided");const s=Pe(t.name),u=e.useRef([]),i=e.useCallback(()=>x(o,s)||[],[o,s]),a=e.useCallback(e=>{k(o,s,e)},[o,s]),c=e.useCallback(()=>{const e=i();for(;u.current.length<e.length;)u.current.push($e());for(;u.current.length>e.length;)u.current.pop();return u.current.map((e,t)=>({id:e,index:t}))},[i]),[l,f]=e.useReducer(c,void 0,c);e.useEffect(()=>we(o.emitter,"change",s,"branch",f),[o.emitter,s]),qe(o,s.key,u.current),e.useEffect(()=>(qe(o,s.key,u.current),()=>{const e=We.get(o);e?.get(s.key)===u.current&&e.delete(s.key)}),[o,s.key]);return{fields:l,append:Be(e=>{const t=i();u.current.push($e()),a([...t,e])}),prepend:Be(e=>{const t=i();u.current.unshift($e()),a([e,...t])}),insert:Be((e,t)=>{const r=i();u.current.splice(e,0,$e());const n=[...r.slice(0,e),t,...r.slice(e)];a(n)}),remove:Be(e=>{const t=i();u.current.splice(e,1);const r=t.filter((t,r)=>r!==e);a(r)}),swap:Be((e,t)=>{const r=i();[u.current[e],u.current[t]]=[u.current[t],u.current[e]];const n=[...r];[n[e],n[t]]=[n[t],n[e]],a(n)}),move:Be((e,t)=>{const r=i(),[n]=u.current.splice(e,1);u.current.splice(t,0,n);const o=[...r],[s]=o.splice(e,1);o.splice(t,0,s),a(o)}),replace:Be(e=>{u.current=e.map(()=>$e()),a([...e])}),update:Be((e,t)=>{const r=i();if(e<0||e>=r.length)return;const n=[...r];n[e]=t,a(n)})}}function Ue(t,r){const n=e.useContext(r),o=t.form||n;if(!o)throw new Error("no form provided");const{id:s}=t,u=Pe(t.name),i=e.useCallback(()=>function(e,t){return We.get(e)?.get(t)}(o,u.key)?.indexOf(s)??-1,[o,u.key,s]),a=e.useCallback(e=>{const t=x(o,u);return Array.isArray(t)?t[e]:void 0},[o,u]),c=i(),l=a(c),f=e.useRef({index:c,value:l});f.current={index:c,value:l};const d=Le({computeIndex:i,computeValue:a}),[,p]=e.useReducer(He,0);e.useEffect(()=>we(o.emitter,"change",u,"leaf",()=>{const{computeIndex:e,computeValue:t}=d.current,r=e();r===f.current.index&&Object.is(t(r),f.current.value)||p()}),[o.emitter,u,d]);const m=Pe([...u.value,c]),h=Fe(o,m);return{value:l,setValue:Be(e=>{if(c<0)return;const t=[...x(o,u)??[]];c>=t.length||(t[c]=e,k(o,u,t))}),errors:h,error:h[0]?.message,name:m.key,index:c,form:o}}const Ge=e.createContext(null),ze=Ge.Provider;const Ke=e.createContext(null),Ye=Ke.Provider;function Qe(e){return e.replace(/["'[\],\s]+/g,"-").replace(/^-+|-+$/g,"")||"field"}function Xe(e,t,r){return{"aria-invalid":!!e||r["aria-invalid"],"aria-describedby":e?[r["aria-describedby"],Qe(t)].filter(Boolean).join(" "):r["aria-describedby"]}}const Ze=r.forwardRef(({validate:e,eventToValue:t,initialValue:n,name:s,asProps:u,renderError:i,as:a,valueToProps:c,form:l,shouldUnregister:f,rules:d,validateDebounce:p,disabled:m,delayError:h,mode:y,...g},v)=>{const b=r.useRef(null),[x,k]=r.useState(0),E=r.useCallback(e=>{b.current=e,function(e,t){"function"==typeof e?e(t):e&&(e.current=t)}(v,e)},[v]),{value:S,onChange:V,onBlur:w,error:O,form:C,name:A,disabled:_}=Re({name:s,form:l,initialValue:n,shouldUnregister:f,rules:d,validateDebounce:p,delayError:h,disabled:m,mode:y,validate:(...t)=>{const r=b.current;if(!r||"function"!=typeof r.checkValidity||(r.setCustomValidity(""),!1!==r.checkValidity()))return e?e(...t):void 0;k(e=>e+1)}}),T=a||"input";r.useEffect(()=>{const e=b.current;e&&"function"==typeof e.setCustomValidity&&("string"==typeof O?(e.setCustomValidity(O),e.reportValidity()):e.setCustomValidity(""))},[O]),r.useEffect(()=>{x>0&&b.current?.reportValidity()},[x]),r.useEffect(()=>o(C.emitter,"focusError",(e,t)=>{if(e!==A)return;const r=b.current;r&&"function"==typeof r.focus&&(r.focus(),t?.shouldSelect&&"function"==typeof r.select&&r.select())}),[C,A]);const D=t??(e=>e.target.value),j=Qe(A);return r.createElement(r.Fragment,null,r.createElement(T,{...g,name:A,onBlur:w,...u,...c?c(S):{value:S},...Xe(O,A,g),disabled:_,onChange:e=>V(D(e)),ref:E}),O&&i?r.createElement("span",{id:j,role:"alert"},i(O,j)):null)}),et=r.forwardRef(({name:e,form:t,initialValue:n,shouldUnregister:o,validate:s,rules:u,validateDebounce:i,disabled:a,delayError:c,mode:l,...f},d)=>{const{value:p,onChange:m,onBlur:h,error:y,name:g,disabled:v}=Re({name:e,form:t,initialValue:n,shouldUnregister:o,validate:s,rules:u,validateDebounce:i,delayError:c,disabled:a,mode:l});return r.createElement("input",{...f,name:g,onBlur:h,type:"checkbox",checked:!!p,...Xe(y,g,f),disabled:v,onChange:e=>m(e.target.checked),ref:d})});function tt(e,t){return e?Array.isArray(t)?t:[]:t??""}const rt=r.forwardRef(({name:e,multiple:t,children:n,form:o,initialValue:s,shouldUnregister:u,validate:i,rules:a,validateDebounce:c,disabled:l,delayError:f,mode:d,...p},m)=>{const{value:h,onChange:y,onBlur:g,error:v,name:b,disabled:x}=Re({name:e,form:o,initialValue:s,shouldUnregister:u,validate:i,rules:a,validateDebounce:c,delayError:f,disabled:l,mode:d});return r.createElement("select",{...p,name:b,onBlur:g,multiple:t,value:tt(t,h),...Xe(v,b,p),disabled:x,onChange:e=>y(t?Array.from(e.target.selectedOptions,e=>e.value):e.target.value),ref:m},n)});exports.Checkbox=et,exports.CheckboxGroupContext=Ke,exports.CheckboxGroupProvider=Ye,exports.Field=Ze,exports.Form=function({form:e,context:t,initialValues:n,values:o,onSubmit:s,onValidSubmit:u,onInvalidSubmit:i,shouldFocusError:a,...c}){const l=Ce({initialValues:n,values:o}),f=e||l,d=he(f,{onSubmit:s,onValidSubmit:u,onInvalidSubmit:i,shouldFocusError:a}),{Provider:p}=t??Ge;return r.createElement(p,{value:f},r.createElement("form",{...c,noValidate:!0,onSubmit:d}))},exports.FormContext=Ge,exports.FormProvider=ze,exports.Select=rt,exports.VALIDATION_OUTCOME=y,exports.changeValue=function(e,t,r,n){E(e,h(t),r,n)},exports.changeValueByPath=E,exports.clearErrors=j,exports.createForm=g,exports.createFormContext=function(){const t=e.createContext(null);return{context:t,FormProvider:function({form:r,children:n}){return e.createElement(t.Provider,{value:r},n)},useFormContext:function(){const r=e.useContext(t);if(!r)throw new Error("no form provided");return r},useField:function(e){return Ne(e,t)},useFieldArray:function(e){return Je(e,t)},useFieldArrayItem:function(e){return Ue(e,t)}}},exports.ensureValidate=ce,exports.fieldErrorId=function(e){return Qe(h(e).key)},exports.getDirtyFields=H,exports.getError=function(e,t){return S(e,h(t))},exports.getErrorByPath=S,exports.getErrors=O,exports.getFieldErrors=function(e,t){return w(e,h(t))},exports.getFieldErrorsByPath=w,exports.getFieldState=function(e,t){const r=h(t),{values:n,touched:o,validating:s}=e,u=n.get(r.key);return{value:x(e,r),error:S(e,r),errors:w(e,r),isDirty:n.has(r.key)&&N(e,r.key,r.value)!==u,isTouched:o.has(r.key),isValidating:s.has(r.key)}},exports.getFirstError=C,exports.getTouchedFields=J,exports.getValue=b,exports.getValueByPath=x,exports.getValues=v,exports.handleSubmit=he,exports.hasErrors=K,exports.hasTouched=function(e,t){return P(e,h(t))},exports.hasTouchedByPath=P,exports.incrementSubmitCount=de,exports.isDirty=L,exports.isTouched=function({touched:e}){return e.size>0},exports.removeField=function(e,t){U(e,h(t))},exports.removeFieldByPath=U,exports.reset=function(e,t,r){const o=r?.keepDirtyValues?Object.keys(H(e)).map(t=>({key:t,value:b(e,t)})):[];e.initialValues=t,e.parsedValues=void 0,r?.keepErrors||j(e);const{emitter:s,touched:u,values:i,deleted:a,validating:c}=e;i.clear(),a.clear(),I(e),r?.keepTouched||u.clear(),c.clear(),r?.keepIsSubmitting||(e.isSubmitting=!1),r?.keepSubmitCount||(e.submitCount=0),r?.keepIsSubmitted||(e.isSubmitSuccessful=void 0),W(e);for(const{key:t,value:r}of o)k(e,h(t),r);n(s,"change"),n(s,"touched"),n(s,"validating"),n(s,"submitting"),n(s,"submitCount"),n(s,"submitSuccessful"),n(s,"reset")},exports.resetField=function(e,t,r){const o=h(t),{emitter:s,values:u,touched:i,errors:l,deleted:f}=e;if(u.delete(o.key),I(e,o.key),void 0!==e.parsedValues){e.parsedValues=c(e.parsedValues,o.value);const t=a(e.initialValues,o.value);void 0!==t&&u.set(o.key,t)}r&&"value"in r&&u.set(o.key,r.value),G(f,o),n(s,"change"),!r?.keepTouched&&i.delete(o.key)&&n(s,"touched",o),!r?.keepErrors&&l.delete(o.key)&&n(s,"errors",o),W(e)},exports.revalidateFormOnChange=ae,exports.setDisabled=function(e,t){e.disabled=t,n(e.emitter,"disabled")},exports.setError=T,exports.setErrorByPath=D,exports.setFocus=function(e,t,r){const{key:o}=h(t);r?n(e.emitter,"focusError",o,r):n(e.emitter,"focusError",o)},exports.setInitialValues=z,exports.setIsSubmitting=fe,exports.setServerErrors=function(e,t,r){r?.keepExisting||j(e);for(const[r,n]of Object.entries(t))T(e,r,(Array.isArray(n)?n:[n]).map(e=>({type:"server",message:e})))},exports.setSubmitSuccessful=pe,exports.setTouched=function(e,t){F(e,h(t))},exports.setTouchedByPath=F,exports.setValidatingByPath=_,exports.setValue=function(e,t,r,n){k(e,h(t),r,n)},exports.setValueByPath=k,exports.subscribe=function(e,t){const{name:r,event:n="change",scope:s="branch",callback:u}=t;if(void 0===r)return o(e.emitter,n,u);const i=(function(e){return Array.isArray(e)&&e.every(e=>"number"!=typeof e)}(r)?r:[r]).map(t=>{const r=h(t);return"errors"===n||"touched"===n?Oe(e.emitter,n,r.key,u):we(e.emitter,n,r,s,u)});return 1===i.length?i[0]:()=>i.forEach(e=>e())},exports.trigger=async function(e,t){const r=()=>m(e.emitter,"validating",()=>ne(e),()=>!1);if(void 0===t)return e.validators.forEach(e=>e()),await r(),e.validate&&await ue(e),!K(e);const n="string"==typeof t||Y(t)?[h(t).key]:t.map(e=>h(e).key);return n.forEach(t=>e.validators.get(t)?.()),await r(),n.every(t=>!e.errors.has(t))},exports.unsetValidatingByPath=A,exports.useCanSubmit=function(t){const{emitter:r}=t;return Ae(e.useCallback(e=>{const t=o(r,"errors",e),n=o(r,"submitting",e);return()=>{t(),n()}},[r]),()=>!t.isSubmitting&&!K(t))},exports.useCheckboxGroupContext=function(){const t=e.useContext(Ke);if(!t)throw new Error("no group provided");return t},exports.useDirtyFields=function(e){return _e(e.emitter,"change",H.bind(null,e))},exports.useError=function(e,t){return je(e,h(t))?.message},exports.useErrorByPath=je,exports.useField=Re,exports.useFieldArray=function(e){return Je(e,Ge)},exports.useFieldArrayItem=function(e){return Ue(e,Ge)},exports.useFieldErrors=function(e,t){return Fe(e,h(t))},exports.useFieldErrorsByPath=Fe,exports.useForm=Ce,exports.useFormContext=function(){const t=e.useContext(Ge);if(!t)throw new Error("no form provided");return t},exports.useHasErrors=function(e){return _e(e.emitter,"errors",K.bind(null,e))},exports.useIsDirty=function(e){return _e(e.emitter,"change",L.bind(null,e))},exports.useIsSubmitting=function(e){return _e(e.emitter,"submitting",()=>e.isSubmitting)},exports.useSubmitCount=function(e){return _e(e.emitter,"submitCount",()=>e.submitCount)},exports.useTouched=function(e,t){return De(e,h(t))},exports.useTouchedByPath=De,exports.useTouchedFields=function(e){return _e(e.emitter,"touched",J.bind(null,e))},exports.useValue=function(e,t){return Te(e,h(t))},exports.useValueByPath=Te,exports.useWatch=_e,exports.validate=le;
|
|
1
|
+
"use strict";var e=require("react");function t(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}}),t.default=e,Object.freeze(t)}var r=t(e);function n(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];(e.get(t)||[]).forEach(function(e){return e.apply(void 0,n)})}function o(e,t,r){var n=function(e,t){var r=e.get(t);if(r)return r;var n=new Set;return e.set(t,n),n}(e,t);return n.add(r),function(){return n.delete(r)}}const s=new Map;function i(e){if(Array.isArray(e))return e;const t=s.get(e);if(t)return t;const r=function(e){const t=[];let r="";const n=()=>{if(u(r)){const n=[...t.map(String),r].join("."),o=t.reduce((e,t)=>e+("number"==typeof t?`[${t}]`:`${e?".":""}${t}`),"");throw new TypeError(`Numeric path segment must use bracket notation: "${n}" → "${o}[${r}]" (path: ${e})`)}t.push(r),r=""};for(let o=0;o<e.length;o++){const s=e[o];if("."===s)""!==r&&n();else if("["===s){""!==r&&n();const s=e[o+1];if('"'===s||"'"===s){const r=e.indexOf(s,o+2);if(-1===r)throw new TypeError(`Unterminated quote in path: ${e}`);if("]"!==e[r+1])throw new TypeError(`Expected "]" after quoted segment in path: ${e}`);t.push(e.slice(o+2,r)),o=r+1}else{const r=e.indexOf("]",o+1);if(-1===r)throw new TypeError(`Unterminated bracket in path: ${e}`);const n=e.slice(o+1,r);t.push(u(n)?Number(n):n),o=r}}else r+=s}""===r&&0!==t.length||n();return t}(e);return s.set(e,r),r}const u=e=>/^-?\d+$/.test(e);function a(e,t){return t.reduce((e,t)=>{if(null!=e)return e[t]},e)}function c(e,t){if(!t.length||null==e)return e;const[r,...n]=t;if(n.length){const t=c(e[r],n);return t===e[r]?e:l(e,[r],t)}if(Array.isArray(e)){if(!(r in e))return e;const t=e.slice();return delete t[r],t}if("object"!=typeof e||!(r in e))return e;const o={...e};return delete o[r],o}function l(e,t,r){if(!t.length)return r;const[n,...o]=t,s="number"==typeof n?n:Array.isArray(e)&&"string"==typeof n&&u(n)?Number(n):void 0;if(void 0!==s){const t=Array.isArray(e)?e.slice():[];return t[s]=l(t[s],o,r),t}return{...e,[n]:l(e&&e[n],o,r)}}function f(e,t,r,n){if(!t.length)return r;let o=e,s=null,i="";for(let a=0;a<t.length;a++){const c=t[a];if(!n.has(o)){let t;t="number"==typeof c||Array.isArray(o)&&"string"==typeof c&&u(c)?Array.isArray(o)?o.slice():[]:{...o},n.add(t),0===a?e=t:s[i]=t,o=t}a===t.length-1?o[c]=r:(s=o,i=c,o=o[c])}return e}function d(e){return e&&"function"==typeof e.then}function p(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 r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){if(e.length!==t.length)return!1;for(let r=0;r<e.length;r++)if(!p(e[r],t[r]))return!1;return!0}const n=Object.getPrototypeOf(e);if(n!==Object.prototype&&null!==n)return!1;if(Object.getPrototypeOf(t)!==n)return!1;const o=Object.keys(e),s=Object.keys(t);if(o.length!==s.length)return!1;for(const r of o)if(!p(e[r],t[r]))return!1;return!0}function m(e,t,r,n){return new Promise((s,i)=>{if(n())return void i();if(r())return void s();const u=o(e,t,()=>{if(n())return u(),void i();r()&&(u(),s())})})}function h(e){const t=i(e);return{value:t,key:JSON.stringify(t)}}const y=Symbol("validation-outcome");function g(e){return{emitter:new Map,...e,mode:e?.mode??"onSubmit",reValidateMode:e?.reValidateMode??"onChange",disabled:e?.disabled??!1,validateDeps:e?.validateDeps?new Set(e.validateDeps.map(e=>h(e).key)):void 0,initialValues:e?.initialValues??{},values:new Map,deleted:new Set,errors:new Map,touched:new Set,validators:new Map,changeHandlers:new Map,validating:new Set,parsedValues:void 0,isSubmitting:!1,submitCount:0,isSubmitSuccessful:void 0}}const v=new WeakMap;function b(e){const t=v.get(e);t&&t.version++}function x(e){let t=v.get(e);return t?t.version>0&&(t.result=k(e),t.version=0):(t={version:0,result:k(e)},v.set(e,t)),t.result}function k(e){const{initialValues:t,parsedValues:r,values:n,deleted:o}=e,s=new Set;let i=r??t;for(const[e,t]of n)i=f(i,JSON.parse(e),t,s);for(const e of o)i=c(i,JSON.parse(e));return i}function E({initialValues:e,parsedValues:t,values:r,deleted:n},o){const{key:s,value:i}=o;if(r.has(s))return r.get(s);if(!n.has(s)){for(let e=i.length-1;e>0;e--){const t=JSON.stringify(i.slice(0,e));if(r.has(t))return a(r.get(t),i.slice(e))}return a(t??e,i)}}function S(e,t,r,o){const{emitter:s,values:i,deleted:u}=e;i.set(t.key,r),X(i,t),Z(u,t),H(e,t),!1===o?.shouldDirty&&q(e,t,r),G(e),b(e),o?.shouldTouch&&L(e,t),o?.shouldValidate&&e.validators.get(t.key)?.(),n(s,"change",t)}function V(e,t,r){const{values:n,deleted:o}=e;n.set(t.key,r),X(n,t),Z(o,t),H(e,t),G(e),b(e)}function w({emitter:e},t){n(e,"change",t)}function C(e,t,r,n){!1===n?.shouldDirty&&q(e,t,r);const o=e.changeHandlers.get(t.key);o?o(r):S(e,t,r,n)}function O({errors:e},t){return e.get(t.key)?.[0]}const A=[];function T({errors:e},t){return e.get(t.key)??A}function _({errors:e}){const t=[];for(const[r,n]of e){const e=JSON.parse(r).join(".");for(const{type:r,message:o}of n)t.push({path:e,type:r,message:o})}return t}function D({errors:e}){return e.values().next().value?.[0]?.message}function j({emitter:e,validating:t},r){t.delete(r.key),n(e,"validating",r)}function F({emitter:e,validating:t},r){t.add(r.key),n(e,"validating",r)}function P(e,t,r){M(e,h(t),r)}function M({emitter:e,errors:t},r,o){const s=function(e){if("string"==typeof e)return e?[{type:"custom",message:e}]:void 0;if(ne(e))return[e];if(!e)return;const t=[];return e.forEach(e=>{"string"==typeof e&&e?t.push({type:"custom",message:e}):ne(e)&&t.push(e)}),t.length?t:void 0}(o);s?t.set(r.key,s):t.delete(r.key),n(e,"errors",r)}function B(e,t){const{emitter:r,errors:o}=e;if(void 0===t)return o.clear(),void n(r,"errors");const s="string"==typeof t||re(t)?[h(t)]:t.map(e=>h(e));for(const{key:e}of s)o.delete(e);for(const e of s)n(r,"errors",e)}function L({emitter:e,touched:t},r){t.has(r.key)||(t.add(r.key),n(e,"touched",r))}function N({touched:e},t){return e.has(t.key)}function R(e){let t=!1;return $(e,()=>{t=!0}),t}function $(e,t){for(const[r,n]of e.values){const o=JSON.parse(r);W(e,r,o)!==n&&t(o.join("."))}}const I=new WeakMap;function W(e,t,r){const n=I.get(e);return n?.has(t)?n.get(t):a(e.initialValues,r)}function q(e,{key:t},r){let n=I.get(e);n||(n=new Map,I.set(e,n)),n.set(t,r)}function H(e,{key:t}){const r=I.get(e);if(!r?.size)return;const n=`${t.slice(0,-1)},`;for(const e of r.keys())e.startsWith(n)&&r.delete(e)}function J(e,t){const r=I.get(e);r&&(void 0===t?r.clear():r.delete(t))}const U=new WeakMap;function G(e){const t=U.get(e);t&&t.version++}function z(e){const t={};return $(e,e=>{t[e]=!0}),t}function K(e){let t=U.get(e);if(t){if(t.version>0){const r=z(e);(function(e,t){const r=Object.keys(e);return r.length===Object.keys(t).length&&r.every(e=>!0===t[e])})(t.result,r)||(t.result=r),t.version=0}}else t={version:0,result:z(e)},U.set(e,t);return t.result}function Y({touched:e}){return Array.from(e,e=>JSON.parse(e).join("."))}function Q(e,t){const{key:r,value:o}=t,{emitter:s,values:i,touched:u,errors:a,validating:c,deleted:l}=e;i.delete(r),u.delete(r),a.delete(r),c.delete(r),J(e,r),function(e,t){for(let r=1;r<t.length;r++)if(e.has(JSON.stringify(t.slice(0,r))))return!0;const r=`${JSON.stringify(t).slice(0,-1)},`;for(const t of e.keys())if(t.startsWith(r))return!0;return!1}(i,o)||l.add(r),G(e),b(e),n(s,"change",t),n(s,"touched",t),n(s,"errors",t),n(s,"validating",t)}function X(e,{key:t}){if(!e.size)return;const r=`${t.slice(0,-1)},`;for(const t of e.keys())t.startsWith(r)&&e.delete(t)}function Z(e,{key:t}){if(e.size)for(const r of e)(r===t||r.startsWith(`${t.slice(0,-1)},`)||t.startsWith(`${r.slice(0,-1)},`))&&e.delete(r)}function ee(e,t){e.initialValues===t||p(e.initialValues,t)||(e.initialValues=t,e.parsedValues=void 0,e.values.clear(),e.deleted.clear(),J(e),G(e),b(e),n(e.emitter,"change"))}function te({errors:e}){return e.size>0}function re(e){return e.some(e=>"number"==typeof e)}function ne(e){return!!e&&"object"==typeof e&&"string"==typeof e.type&&"string"==typeof e.message}function oe(e,t,r=[],n){Object.entries(t).forEach(([t,o])=>{const s=[...r,...u(t)?[t]:i(t)];"string"==typeof o?o&&(P(e,s,o),se(e,s,n)):Array.isArray(o)||ne(o)?(P(e,s,o),se(e,s,n)):o&&"object"==typeof o&&oe(e,o,s,n)})}function se(e,t,r){if(!r)return;const n=h(t),o=e.errors.get(n.key);o&&r.set(n.key,o)}function ie(e,t){const r=e.validateDeps?function(e){let t=ue.get(e);t||(t=new Map,ue.set(e,t));return t}(e):void 0;if(r&&(!function(e,t){for(const[r,o]of t){e.errors.get(r)===o&&(e.errors.delete(r),n(e.emitter,"errors",h(JSON.parse(r))))}}(e,r),r.clear()),t){if("object"==typeof t&&y in t){const o=t;return o.errors&&oe(e,o.errors,[],r),void function(e,t){void 0!==t&&t!==e.parsedValues&&(e.parsedValues=t,b(e),n(e.emitter,"change"))}(e,o.values)}oe(e,t,[],r)}}const ue=new WeakMap;const ae="__form_validate__";function ce(e){for(const t of e.validating)if(t!==ae)return!1;return!0}const le=Symbol("form-validate-settled"),fe=new WeakMap;function de(e){const t=e.validate;if(!t)return Promise.resolve();const r=e.validateDebounce??0;if(r<=0){const r=new AbortController;return Promise.resolve(t(x(e),{form:e,signal:r.signal})).then(t=>{ie(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(ae),n(e.emitter,"validating")),o.timer=setTimeout(()=>{o.timer=null;const t=o.round={};(function(e,t,r){const n=e.validate;if(!n)return Promise.resolve();t.controller?.abort();const o=t.controller=new AbortController;let s;try{s=Promise.resolve(n(x(e),{form:e,signal:o.signal}))}catch(e){s=Promise.reject(e)}return s.then(n=>{t.round===r&&ie(e,n)},e=>{if(t.round===r)throw e})})(e,o,t).then(()=>pe(e,o,t,le),r=>pe(e,o,t,r))},r),new Promise((e,t)=>{o.waiters.push({resolve:e,reject:t})})}function pe(e,t,r,o){if(t.round!==r)return;if(t.round=null,null!==t.timer)return;t.marked&&(t.marked=!1,e.validating.delete(ae),n(e.emitter,"validating"));const s=t.waiters;t.waiters=[];for(const e of s)o===le?e.resolve():e.reject(o)}function me(e,t,r){e.validateDeps?.has(t.key)&&e.validate&&("onChange"===r||"all"===r||"onTouched"===r&&N(e,t)||"onChange"===e.reValidateMode&&function(e){const t=ue.get(e);if(!t)return!1;for(const[r,n]of t)if(e.errors.get(r)===n)return!0;return!1}(e))&&de(e).catch(()=>{})}const he=new WeakMap;function ye(e,t,r){let n=he.get(e);n||(n=new Map,he.set(e,n));for(const e of r){let r=n.get(e);r||(r=new Set,n.set(e,r)),r.add(t)}}function ge(e,t,r){const n=he.get(e);if(n)for(const e of r){const r=n.get(e);r?.delete(t)&&(r.size||n.delete(e))}}function ve(e,t,r){const n=he.get(e)?.get(t.key);if(n?.size)for(const o of n)o!==t.key&&("onChange"===r||"all"===r||"onTouched"===r&&N(e,t)||"onChange"===e.reValidateMode&&e.errors.has(o))&&e.validators.get(o)?.()}function be(e){const t=new Error(D(e));return t.errors=_(e),t}async function xe(e){if(e.validators.forEach(e=>e()),await m(e.emitter,"validating",()=>ce(e),()=>te(e)).catch(()=>{throw be(e)}),e.validate&&(await de(e),te(e)))throw be(e)}async function ke(e){return xe(e).catch(e=>e.message)}function Ee(e,t){e.isSubmitting=t,n(e.emitter,"submitting")}function Se(e){e.submitCount++,n(e.emitter,"submitCount")}function Ve(e,t){e.isSubmitSuccessful=t,n(e.emitter,"submitSuccessful")}function we(e){if(e.startsWith("["))try{const t=JSON.parse(e);if(Array.isArray(t))return t.join(".")}catch{}return e}function Ce(e,t){const{onSubmit:r,onValidSubmit:o,onInvalidSubmit:s,shouldFocusError:i=!0}=t??{};return async t=>{t&&"function"==typeof t.preventDefault&&t.preventDefault();const u=t?.currentTarget;Ee(e,!0),Se(e);const a=x(e);if(u&&"function"==typeof u.checkValidity&&!1===u.checkValidity()){if(u.reportValidity(),i&&"function"==typeof u.querySelector){const e=u.querySelector(":invalid");e&&"function"==typeof e.focus&&e.focus()}return Ee(e,!1),Ve(e,!1),void(s&&s(function(e){const t=[],{elements:r}=e;for(let e=0;e<r.length;e++){const n=r[e];n.name&&"function"==typeof n.checkValidity&&!n.checkValidity()&&t.push({path:we(n.name),type:"native",message:n.validationMessage})}return t}(u),a))}if(await ke(e)){if(Ee(e,!1),Ve(e,!1),i){const t=e.errors.keys().next().value;void 0!==t&&n(e.emitter,"focusError",t)}s&&s(_(e),a)}else try{const n=x(e);r&&await r(n,t),o&&await o(n,t),Ve(e,!0)}catch{Ve(e,!1)}finally{Ee(e,!1)}}}function Oe(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"}}var Ae,Te={exports:{}},_e={};var De,je,Fe={};var Pe=(je||(je=1,"production"===process.env.NODE_ENV?Te.exports=function(){if(Ae)return _e;Ae=1;var t=e,r="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},n=t.useState,o=t.useEffect,s=t.useLayoutEffect,i=t.useDebugValue;function u(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!r(e,n)}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 r=t(),a=n({inst:{value:r,getSnapshot:t}}),c=a[0].inst,l=a[1];return s(function(){c.value=r,c.getSnapshot=t,u(c)&&l({inst:c})},[e,r,t]),o(function(){return u(c)&&l({inst:c}),e(function(){u(c)&&l({inst:c})})},[e]),i(r),r};return _e.useSyncExternalStore=void 0!==t.useSyncExternalStore?t.useSyncExternalStore:a,_e}():Te.exports=(De||(De=1,"production"!==process.env.NODE_ENV&&function(){function t(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 r=e,n="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},o=r.useState,s=r.useEffect,i=r.useLayoutEffect,u=r.useDebugValue,a=!1,c=!1,l="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,l){a||void 0===r.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 f=l();if(!c){var d=l();n(f,d)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),c=!0)}var p=(d=o({inst:{value:f,getSnapshot:l}}))[0].inst,m=d[1];return i(function(){p.value=f,p.getSnapshot=l,t(p)&&m({inst:p})},[e,f,l]),s(function(){return t(p)&&m({inst:p}),e(function(){t(p)&&m({inst:p})})},[e]),u(f),f};Fe.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:l,"undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())}()),Fe)),Te.exports);function Me(e,t){return e.startsWith(`${t.slice(0,-1)},`)}function Be(e,t,r,n,s){const{key:i}=r;return o(e,t,e=>{(void 0===e||e.key===i||Me(i,e.key)||"branch"===n&&Me(e.key,i))&&s()})}function Le(e,t,r,n){return o(e,t,e=>{void 0!==e&&e.key!==r||n()})}function Ne(t){const[r]=e.useState(()=>{const e=g(t);return t&&void 0!==t.values&&ee(e,t.values),e}),n=t&&t.initialValues,o=t&&t.values,s=e.useRef(null);null===s.current&&(s.current={done:!1,source:void 0}),e.useEffect(()=>{if(void 0===n)return;const e=s.current;e.done&&(e.source===n||p(e.source,n))||(e.done=!0,e.source=n,ee(r,n))},[r,n]);const i=e.useRef(null);return null===i.current&&(i.current={done:!1,source:void 0}),e.useEffect(()=>{if(void 0===o)return;const e=i.current;e.done&&(e.source===o||p(e.source,o))||(e.done=!0,e.source=o,ee(r,o))},[r,o]),r}function Re(t,r){const n=e.useRef(null);null===n.current&&(n.current={hasValue:!1});const o=n.current,s=e.useRef(r);s.current=r;const i=e.useCallback(()=>(o.hasValue||(o.value=s.current(),o.hasValue=!0),o.value),[o]),u=e.useCallback(e=>{o.hasValue=!1;return t(()=>{o.hasValue=!1,e()})},[t,o]);return Pe.useSyncExternalStore(u,i,i)}function $e(t,r,n){return Re(e.useCallback(e=>o(t,r,e),[t,r]),n)}function Ie(t,r){const{emitter:n}=t,{key:o}=r;return Re(e.useCallback(e=>Be(n,"change",r,"leaf",e),[n,o]),E.bind(null,t,r))}function We(t,r){const{emitter:n}=t,{key:o}=r;return Re(e.useCallback(e=>Le(n,"touched",o,e),[n,o]),N.bind(null,t,r))}function qe(t,r){const{emitter:n}=t,{key:o}=r;return Re(e.useCallback(e=>Le(n,"errors",o,e),[n,o]),O.bind(null,t,r))}function He(t,r){const{emitter:n}=t,{key:o}=r;return Re(e.useCallback(e=>Le(n,"errors",o,e),[n,o]),T.bind(null,t,r))}function Je(t){const r=e.useMemo(()=>h(i(t)),[t]);return e.useMemo(()=>r,[r.key])}function Ue(t){const r=e.useRef(t);return r.current=t,r}function Ge(t){const r=Ue(t);return e.useCallback((...e)=>r.current(...e),[r])}function ze(e,t){if(!e)return t;const r=function(e){return t=>{if(e.required&&(""===t||null==t))return[{type:"required",message:"string"==typeof e.required?e.required:Oe("required")}];const r=[],n=(t,r)=>e.messages?.[t]??Oe(t,r);if(void 0!==e.min){const o=Number(t);!Number.isNaN(o)&&o<e.min&&r.push({type:"min",message:n("min",e.min)})}if(void 0!==e.max){const o=Number(t);!Number.isNaN(o)&&o>e.max&&r.push({type:"max",message:n("max",e.max)})}return void 0!==e.minLength&&"string"==typeof t&&t.length<e.minLength&&r.push({type:"minLength",message:n("minLength",e.minLength)}),void 0!==e.maxLength&&"string"==typeof t&&t.length>e.maxLength&&r.push({type:"maxLength",message:n("maxLength",e.maxLength)}),e.pattern&&!e.pattern.value.test(t)&&r.push({type:"pattern",message:e.messages?.pattern??e.pattern.message??Oe("pattern")}),r.length?r:void 0}}(e);return t?(e,n)=>{const o=r(e,n),s=e=>{const t=[...o??[]];return Array.isArray(e)?t.push(...e):e&&t.push(e),t.length?t:void 0},i=t(e,n);return d(i)?i.then(s):s(i)}:r}function Ke({form:t,name:r,initialValue:n,shouldUnregister:o,validate:s,rules:i,validateDebounce:u,validateDeps:a,delayError:c,disabled:l,mode:f},p){const m=e.useContext(p),y=t||m;if(!y)throw new Error("no form provided");const g=Je(r),v=e.useRef(!1);void 0!==n&&void 0===E(y,g)&&(V(y,g,n),v.current=!0),e.useEffect(()=>{v.current&&(v.current=!1,w(y,g))});const b=function(t,r,n,o){const s=e.useContext(ot),i=n||s;if(!i)throw new Error("no form provided");const u=e.useRef(null),a=e.useRef(t);a.current=t;const c=e.useRef(o?.debounce??0);return c.current=o?.debounce??0,e.useEffect(()=>{let e=null,t=null,n=!1;const o=()=>{n||(n=!0,F(i,r))},s=()=>{n&&(n=!1,j(i,r))},l=()=>{e=null;const n=a.current;if(!n)return void s();t?.abort(),t=new AbortController;const c=u.current={};let l;try{l=n(E(i,r),{form:i,path:r,signal:t.signal})}catch(e){throw s(),e}if(!d(l))return M(i,r,l),void s();o(),l.then(e=>{c===u.current&&M(i,r,e)}).catch(()=>{}).finally(()=>{c===u.current&&(s(),u.current=null)})};return i.validators.set(r.key,()=>{const t=c.current;if(t>0)return null!==e?clearTimeout(e):o(),void(e=setTimeout(l,t));l()}),()=>{i.validators.delete(r.key),null!==e&&(clearTimeout(e),e=null),s(),t?.abort()}},[i,r.key]),Ge(()=>i.validators.get(r.key)?.())}(ze(i,s),g,y,{debounce:u}),x=He(y,g),k=function(t,r){const[n,o]=e.useState(t);return e.useEffect(()=>{if(void 0===r)return;if(0===t.length)return void o(t);if(n.length>0)return void o(t);const e=setTimeout(()=>o(t),r);return()=>clearTimeout(e)},[t,r,n]),void 0===r?t:n}(x,c),C=k[0],O=C?.message,A=Ie(y,g),T=$e(y.emitter,"disabled",()=>y.disabled),_=f??y.mode,D=Ge(e=>{S(y,g,e),("onChange"===_||"all"===_||"onTouched"===_&&N(y,g)||x.length>0&&"onChange"===y.reValidateMode)&&b(),me(y,g,_),ve(y,g,_)});e.useEffect(()=>(y.changeHandlers.set(g.key,D),()=>{y.changeHandlers.get(g.key)===D&&y.changeHandlers.delete(g.key)}),[y,g.key,D]);const P=a?.length?a.join("\n"):void 0;e.useEffect(()=>{if(!P)return;const e=a.map(e=>h(e).key);return ye(y,g.key,e),()=>ge(y,g.key,e)},[y,g.key,P]);const B=Ge(()=>{L(y,g),("onBlur"===_||"onTouched"===_||"all"===_||x.length>0&&"onBlur"===y.reValidateMode)&&b()});return e.useEffect(()=>()=>{!1!==o&&Q(y,g)},[g,y,o]),{form:y,value:A,error:O,errorObject:C,errors:k,onChange:D,onBlur:B,name:g.key,disabled:T||!!l}}function Ye(e){return Ke(e,ot)}const Qe=new WeakMap;function Xe(e){const t=(Qe.get(e)??0)+1;return Qe.set(e,t),`_${t}`}const Ze=new WeakMap;function et(e,t,r){let n=Ze.get(e);n||(n=new Map,Ze.set(e,n)),n.set(t,r)}function tt(e){return e+1}function rt(t,r){const n=e.useContext(r),o=t.form||n;if(!o)throw new Error("no form provided");const s=Je(t.name),i=e.useRef([]),u=e.useCallback(()=>E(o,s)||[],[o,s]),a=e.useCallback(e=>{S(o,s,e)},[o,s]),c=e.useCallback(()=>{const e=u();for(;i.current.length<e.length;)i.current.push(Xe(o));for(;i.current.length>e.length;)i.current.pop();return i.current.map((e,t)=>({id:e,index:t}))},[u,o]),[l,f]=e.useReducer(c,void 0,c);e.useEffect(()=>Be(o.emitter,"change",s,"branch",f),[o.emitter,s]),et(o,s.key,i.current),e.useEffect(()=>(et(o,s.key,i.current),()=>{const e=Ze.get(o);e?.get(s.key)===i.current&&e.delete(s.key)}),[o,s.key]);return{fields:l,append:Ge(e=>{const t=u();i.current.push(Xe(o)),a([...t,e])}),prepend:Ge(e=>{const t=u();i.current.unshift(Xe(o)),a([e,...t])}),insert:Ge((e,t)=>{const r=u();i.current.splice(e,0,Xe(o));const n=[...r.slice(0,e),t,...r.slice(e)];a(n)}),remove:Ge(e=>{const t=u();i.current.splice(e,1);const r=t.filter((t,r)=>r!==e);a(r)}),swap:Ge((e,t)=>{const r=u();[i.current[e],i.current[t]]=[i.current[t],i.current[e]];const n=[...r];[n[e],n[t]]=[n[t],n[e]],a(n)}),move:Ge((e,t)=>{const r=u(),[n]=i.current.splice(e,1);i.current.splice(t,0,n);const o=[...r],[s]=o.splice(e,1);o.splice(t,0,s),a(o)}),replace:Ge(e=>{i.current=e.map(()=>Xe(o)),a([...e])}),update:Ge((e,t)=>{const r=u();if(e<0||e>=r.length)return;const n=[...r];n[e]=t,a(n)})}}function nt(t,r){const n=e.useContext(r),o=t.form||n;if(!o)throw new Error("no form provided");const{id:s}=t,i=Je(t.name),u=e.useCallback(()=>function(e,t){return Ze.get(e)?.get(t)}(o,i.key)?.indexOf(s)??-1,[o,i.key,s]),a=e.useCallback(e=>{const t=E(o,i);return Array.isArray(t)?t[e]:void 0},[o,i]),c=u(),l=a(c),f=e.useRef({index:c,value:l});f.current={index:c,value:l};const d=Ue({computeIndex:u,computeValue:a}),[,p]=e.useReducer(tt,0);e.useEffect(()=>Be(o.emitter,"change",i,"leaf",()=>{const{computeIndex:e,computeValue:t}=d.current,r=e();r===f.current.index&&Object.is(t(r),f.current.value)||p()}),[o.emitter,i,d]);const m=Je([...i.value,c]),h=He(o,m);return{value:l,setValue:Ge(e=>{if(c<0)return;const t=[...E(o,i)??[]];c>=t.length||(t[c]=e,S(o,i,t))}),errors:h,error:h[0]?.message,name:m.key,index:c,form:o}}const ot=e.createContext(null),st=ot.Provider;const it=e.createContext(null),ut=it.Provider;function at(e){return e.replace(/["'[\],\s]+/g,"-").replace(/^-+|-+$/g,"")||"field"}function ct(e,t,r){return{"aria-invalid":!!e||r["aria-invalid"],"aria-describedby":e?[r["aria-describedby"],at(t)].filter(Boolean).join(" "):r["aria-describedby"]}}const lt=r.forwardRef(({validate:e,eventToValue:t,initialValue:n,name:s,asProps:i,renderError:u,as:a,valueToProps:c,form:l,shouldUnregister:f,rules:d,validateDebounce:p,disabled:m,delayError:h,mode:y,...g},v)=>{const b=r.useRef(null),[x,k]=r.useState(0),E=r.useCallback(e=>{b.current=e,function(e,t){"function"==typeof e?e(t):e&&(e.current=t)}(v,e)},[v]),{value:S,onChange:V,onBlur:w,error:C,form:O,name:A,disabled:T}=Ye({name:s,form:l,initialValue:n,shouldUnregister:f,rules:d,validateDebounce:p,delayError:h,disabled:m,mode:y,validate:(...t)=>{const r=b.current;if(!r||"function"!=typeof r.checkValidity||(r.setCustomValidity(""),!1!==r.checkValidity()))return e?e(...t):void 0;k(e=>e+1)}}),_=a||"input";r.useEffect(()=>{const e=b.current;e&&"function"==typeof e.setCustomValidity&&("string"==typeof C?(e.setCustomValidity(C),e.reportValidity()):e.setCustomValidity(""))},[C]),r.useEffect(()=>{x>0&&b.current?.reportValidity()},[x]),r.useEffect(()=>o(O.emitter,"focusError",(e,t)=>{if(e!==A)return;const r=b.current;r&&"function"==typeof r.focus&&(r.focus(),t?.shouldSelect&&"function"==typeof r.select&&r.select())}),[O,A]);const D=t??(e=>e.target.value),j=at(A);return r.createElement(r.Fragment,null,r.createElement(_,{...g,name:A,onBlur:w,...i,...c?c(S):{value:S},...ct(C,A,g),disabled:T,onChange:e=>V(D(e)),ref:E}),C&&u?r.createElement("span",{id:j,role:"alert"},u(C,j)):null)}),ft=r.forwardRef(({name:e,form:t,initialValue:n,shouldUnregister:o,validate:s,rules:i,validateDebounce:u,disabled:a,delayError:c,mode:l,...f},d)=>{const{value:p,onChange:m,onBlur:h,error:y,name:g,disabled:v}=Ye({name:e,form:t,initialValue:n,shouldUnregister:o,validate:s,rules:i,validateDebounce:u,delayError:c,disabled:a,mode:l});return r.createElement("input",{...f,name:g,onBlur:h,type:"checkbox",checked:!!p,...ct(y,g,f),disabled:v,onChange:e=>m(e.target.checked),ref:d})});function dt(e,t){return e?Array.isArray(t)?t:[]:t??""}const pt=r.forwardRef(({name:e,multiple:t,children:n,form:o,initialValue:s,shouldUnregister:i,validate:u,rules:a,validateDebounce:c,disabled:l,delayError:f,mode:d,...p},m)=>{const{value:h,onChange:y,onBlur:g,error:v,name:b,disabled:x}=Ye({name:e,form:o,initialValue:s,shouldUnregister:i,validate:u,rules:a,validateDebounce:c,delayError:f,disabled:l,mode:d});return r.createElement("select",{...p,name:b,onBlur:g,multiple:t,value:dt(t,h),...ct(v,b,p),disabled:x,onChange:e=>y(t?Array.from(e.target.selectedOptions,e=>e.value):e.target.value),ref:m},n)});exports.Checkbox=ft,exports.CheckboxGroupContext=it,exports.CheckboxGroupProvider=ut,exports.Field=lt,exports.Form=function({form:e,context:t,initialValues:n,values:o,onSubmit:s,onValidSubmit:i,onInvalidSubmit:u,shouldFocusError:a,...c}){const l=Ne({initialValues:n,values:o}),f=e||l,d=Ce(f,{onSubmit:s,onValidSubmit:i,onInvalidSubmit:u,shouldFocusError:a}),{Provider:p}=t??ot;return r.createElement(p,{value:f},r.createElement("form",{...c,noValidate:!0,onSubmit:d}))},exports.FormContext=ot,exports.FormProvider=st,exports.Select=pt,exports.VALIDATION_OUTCOME=y,exports.changeValue=function(e,t,r,n){C(e,h(t),r,n)},exports.changeValueByPath=C,exports.clearErrors=B,exports.createForm=g,exports.createFormContext=function(){const t=e.createContext(null);return{context:t,FormProvider:function({form:r,children:n}){return e.createElement(t.Provider,{value:r},n)},useFormContext:function(){const r=e.useContext(t);if(!r)throw new Error("no form provided");return r},useField:function(e){return Ke(e,t)},useFieldArray:function(e){return rt(e,t)},useFieldArrayItem:function(e){return nt(e,t)}}},exports.emitChangeByPath=w,exports.ensureValidate=xe,exports.fieldErrorId=function(e){return at(h(e).key)},exports.getDirtyFields=K,exports.getError=function(e,t){return O(e,h(t))},exports.getErrorByPath=O,exports.getErrors=_,exports.getFieldErrors=function(e,t){return T(e,h(t))},exports.getFieldErrorsByPath=T,exports.getFieldState=function(e,t){const r=h(t),{values:n,touched:o,validating:s}=e,i=n.get(r.key);return{value:E(e,r),error:O(e,r),errors:T(e,r),isDirty:n.has(r.key)&&W(e,r.key,r.value)!==i,isTouched:o.has(r.key),isValidating:s.has(r.key)}},exports.getFirstError=D,exports.getTouchedFields=Y,exports.getValue=function(e,t){return E(e,h(t))},exports.getValueByPath=E,exports.getValues=x,exports.handleSubmit=Ce,exports.hasErrors=te,exports.hasTouched=function(e,t){return N(e,h(t))},exports.hasTouchedByPath=N,exports.incrementSubmitCount=Se,exports.isDirty=R,exports.isTouched=function({touched:e}){return e.size>0},exports.registerFieldValidateDeps=ye,exports.removeField=function(e,t){Q(e,h(t))},exports.removeFieldByPath=Q,exports.reset=function(e,t,r){const o=[];if(r?.keepDirtyValues)for(const[t,r]of e.values){const n=JSON.parse(t);W(e,t,n)!==r&&o.push({segments:n,value:r})}e.initialValues=t,e.parsedValues=void 0,r?.keepErrors||B(e);const{emitter:s,touched:i,values:u,deleted:a,validating:c}=e;u.clear(),a.clear(),J(e),r?.keepTouched||i.clear(),c.clear(),r?.keepIsSubmitting||(e.isSubmitting=!1),r?.keepSubmitCount||(e.submitCount=0),r?.keepIsSubmitted||(e.isSubmitSuccessful=void 0),G(e),b(e);for(const{segments:t,value:r}of o)S(e,h(t),r);n(s,"change"),n(s,"touched"),n(s,"validating"),n(s,"submitting"),n(s,"submitCount"),n(s,"submitSuccessful"),n(s,"reset")},exports.resetField=function(e,t,r){const o=h(t),{emitter:s,values:i,touched:u,errors:l,deleted:f}=e;if(i.delete(o.key),J(e,o.key),void 0!==e.parsedValues){e.parsedValues=c(e.parsedValues,o.value);const t=a(e.initialValues,o.value);void 0!==t&&i.set(o.key,t)}r&&"value"in r&&i.set(o.key,r.value),Z(f,o),n(s,"change"),!r?.keepTouched&&u.delete(o.key)&&n(s,"touched",o),!r?.keepErrors&&l.delete(o.key)&&n(s,"errors",o),G(e),b(e)},exports.revalidateDependentsOnChange=ve,exports.revalidateFormOnChange=me,exports.seedValueByPath=V,exports.setDisabled=function(e,t){e.disabled=t,n(e.emitter,"disabled")},exports.setError=P,exports.setErrorByPath=M,exports.setFocus=function(e,t,r){const{key:o}=h(t);r?n(e.emitter,"focusError",o,r):n(e.emitter,"focusError",o)},exports.setInitialValues=ee,exports.setIsSubmitting=Ee,exports.setServerErrors=function(e,t,r){r?.keepExisting||B(e);for(const[r,n]of Object.entries(t))P(e,r,(Array.isArray(n)?n:[n]).map(e=>({type:"server",message:e})))},exports.setSubmitSuccessful=Ve,exports.setTouched=function(e,t){L(e,h(t))},exports.setTouchedByPath=L,exports.setValidatingByPath=F,exports.setValue=function(e,t,r,n){S(e,h(t),r,n)},exports.setValueByPath=S,exports.subscribe=function(e,t){const{name:r,event:n="change",scope:s="branch",callback:i}=t;if(void 0===r)return o(e.emitter,n,i);const u=(function(e){return Array.isArray(e)&&e.every(e=>"number"!=typeof e)}(r)?r:[r]).map(t=>{const r=h(t);return"errors"===n||"touched"===n?Le(e.emitter,n,r.key,i):Be(e.emitter,n,r,s,i)});return 1===u.length?u[0]:()=>u.forEach(e=>e())},exports.trigger=async function(e,t){const r=t=>m(e.emitter,"validating",()=>void 0===t?ce(e):t.every(t=>!e.validating.has(t)),()=>!1);if(void 0===t)return e.validators.forEach(e=>e()),await r(),e.validate&&await de(e),!te(e);const n="string"==typeof t||re(t)?[h(t).key]:t.map(e=>h(e).key);return n.forEach(t=>e.validators.get(t)?.()),await r(n),n.every(t=>!e.errors.has(t))},exports.unregisterFieldValidateDeps=ge,exports.unsetValidatingByPath=j,exports.useCanSubmit=function(t){const{emitter:r}=t;return Re(e.useCallback(e=>{const t=o(r,"errors",e),n=o(r,"submitting",e);return()=>{t(),n()}},[r]),()=>!t.isSubmitting&&!te(t))},exports.useCheckboxGroupContext=function(){const t=e.useContext(it);if(!t)throw new Error("no group provided");return t},exports.useDirtyFields=function(e){return $e(e.emitter,"change",K.bind(null,e))},exports.useError=function(e,t){return qe(e,h(t))?.message},exports.useErrorByPath=qe,exports.useField=Ye,exports.useFieldArray=function(e){return rt(e,ot)},exports.useFieldArrayItem=function(e){return nt(e,ot)},exports.useFieldErrors=function(e,t){return He(e,h(t))},exports.useFieldErrorsByPath=He,exports.useForm=Ne,exports.useFormContext=function(){const t=e.useContext(ot);if(!t)throw new Error("no form provided");return t},exports.useHasErrors=function(e){return $e(e.emitter,"errors",te.bind(null,e))},exports.useIsDirty=function(e){return $e(e.emitter,"change",R.bind(null,e))},exports.useIsSubmitting=function(e){return $e(e.emitter,"submitting",()=>e.isSubmitting)},exports.useSubmitCount=function(e){return $e(e.emitter,"submitCount",()=>e.submitCount)},exports.useTouched=function(e,t){return We(e,h(t))},exports.useTouchedByPath=We,exports.useTouchedFields=function(e){return $e(e.emitter,"touched",Y.bind(null,e))},exports.useValue=function(e,t){return Ie(e,h(t))},exports.useValueByPath=Ie,exports.useWatch=$e,exports.validate=ke;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|