remix-validated-form 4.6.3 → 4.6.4
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/.turbo/turbo-build.log +7 -7
- package/browser/internal/flatten.js +1 -1
- package/browser/internal/hooks.js +1 -1
- package/browser/internal/state/arrayUtil.js +16 -2
- package/browser/internal/state/createFormStore.js +1 -1
- package/dist/remix-validated-form.cjs.js +1 -1
- package/dist/remix-validated-form.cjs.js.map +1 -1
- package/dist/remix-validated-form.es.js +3 -1
- package/dist/remix-validated-form.es.js.map +1 -1
- package/dist/remix-validated-form.umd.js +1 -1
- package/dist/remix-validated-form.umd.js.map +1 -1
- package/package.json +1 -1
- package/src/internal/state/arrayUtil.ts +16 -1
- package/stats.html +1 -1
package/.turbo/turbo-build.log
CHANGED
@@ -3,15 +3,15 @@
|
|
3
3
|
transforming...
|
4
4
|
[32m✓[39m 289 modules transformed.
|
5
5
|
rendering chunks...
|
6
|
-
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.cjs.js [39m [2m32.
|
7
|
-
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.cjs.js.map[39m [
|
8
|
-
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.es.js [39m [2m66.
|
9
|
-
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.es.js.map[39m [2m165.
|
10
|
-
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.umd.js [39m [2m32.
|
11
|
-
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.umd.js.map[39m [
|
6
|
+
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.cjs.js [39m [2m32.65 KiB / gzip: 11.34 KiB[22m
|
7
|
+
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.cjs.js.map[39m [2m168.30 KiB[22m
|
8
|
+
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.es.js [39m [2m66.83 KiB / gzip: 15.64 KiB[22m
|
9
|
+
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.es.js.map[39m [2m165.89 KiB[22m
|
10
|
+
[90m[37m[2mdist/[22m[90m[39m[36mremix-validated-form.umd.js [39m [2m32.84 KiB / gzip: 11.42 KiB[22m
|
11
|
+
[90m[37m[2mdist/[22m[90m[39m[90mremix-validated-form.umd.js.map[39m [2m168.25 KiB[22m
|
12
12
|
[32m[39m
|
13
13
|
[32m[36m[vite:dts][39m[32m Start generate declaration files...[39m
|
14
|
-
[32m[36m[vite:dts][39m[32m Declaration files built in
|
14
|
+
[32m[36m[vite:dts][39m[32m Declaration files built in 2581ms.[39m
|
15
15
|
[32m[39m
|
16
16
|
No name was provided for external module 'react' in output.globals – guessing 'React'
|
17
17
|
No name was provided for external module '@remix-run/react' in output.globals – guessing 'react'
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { useActionData, useMatches, useTransition } from "@remix-run/react";
|
2
2
|
import { useCallback, useContext } from "react";
|
3
|
-
import { getPath } from "
|
3
|
+
import { getPath } from "set-get";
|
4
4
|
import invariant from "tiny-invariant";
|
5
5
|
import { formDefaultValuesKey } from "./constants";
|
6
6
|
import { InternalFormContext } from "./formContext";
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { getPath, setPath } from "
|
1
|
+
import { getPath, setPath } from "set-get";
|
2
2
|
import invariant from "tiny-invariant";
|
3
3
|
////
|
4
4
|
// All of these array helpers are written in a way that mutates the original array.
|
@@ -80,7 +80,9 @@ export const mutateAsArray = (field, obj, mutate) => {
|
|
80
80
|
const newKeys = getDeepArrayPaths(arr);
|
81
81
|
for (const key of newKeys) {
|
82
82
|
const val = getPath(arr, key);
|
83
|
-
|
83
|
+
if (val !== undefined) {
|
84
|
+
obj[`${field}${key}`] = val;
|
85
|
+
}
|
84
86
|
}
|
85
87
|
};
|
86
88
|
const getDeepArrayPaths = (obj, basePath = "") => {
|
@@ -294,6 +296,18 @@ if (import.meta.vitest) {
|
|
294
296
|
"otherField[0]": "something else",
|
295
297
|
});
|
296
298
|
});
|
299
|
+
it("should not create keys for `undefined`", () => {
|
300
|
+
const values = {
|
301
|
+
"myField[0]": "foo",
|
302
|
+
};
|
303
|
+
mutateAsArray("myField", values, (arr) => {
|
304
|
+
arr.unshift(undefined);
|
305
|
+
});
|
306
|
+
expect(Object.keys(values)).toHaveLength(1);
|
307
|
+
expect(values).toEqual({
|
308
|
+
"myField[1]": "foo",
|
309
|
+
});
|
310
|
+
});
|
297
311
|
it("should handle remove", () => {
|
298
312
|
const values = {
|
299
313
|
myField: "something",
|
@@ -14,7 +14,7 @@
|
|
14
14
|
*
|
15
15
|
* This source code is licensed under the MIT license found in the
|
16
16
|
* LICENSE file in the root directory of this source tree.
|
17
|
-
*/var ae=P.default,pr=vt.exports;function yr(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Fr=typeof Object.is=="function"?Object.is:yr,br=pr.useSyncExternalStore,Er=ae.useRef,gr=ae.useEffect,Sr=ae.useMemo,Vr=ae.useDebugValue;mt.useSyncExternalStoreWithSelector=function(e,t,r,n,o){var u=Er(null);if(u.current===null){var s={hasValue:!1,value:null};u.current=s}else s=u.current;u=Sr(function(){function a(f){if(!l){if(l=!0,c=f,f=n(f),o!==void 0&&s.hasValue){var F=s.value;if(o(F,f))return v=F}return v=f}if(F=v,Fr(c,f))return F;var y=n(f);return o!==void 0&&o(F,y)?F:(c=f,v=y)}var l=!1,c,v,h=r===void 0?null:r;return[function(){return a(t())},h===null?void 0:function(){return a(h())}]},[t,r,n,o]);var i=br(e,u[0],u[1]);return gr(function(){s.hasValue=!0,s.value=i},[i]),Vr(i),i};dt.exports=mt;function Pr(e,t=e.getState,r){const n=dt.exports.useSyncExternalStoreWithSelector(e.subscribe,e.getState,e.getServerState||e.getState,t,r);return p.useDebugValue(n),n}const Ne=e=>{const t=typeof e=="function"?sr(e):e,r=(n,o)=>Pr(t,n,o);return Object.assign(r,t),r},wr=e=>e?Ne(e):Ne;var Ir=wr;function w(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(o){return"'"+o+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function H(e){return!!e&&!!e[S]}function U(e){return!!e&&(function(t){if(!t||typeof t!="object")return!1;var r=Object.getPrototypeOf(t);if(r===null)return!0;var n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return n===Object||typeof n=="function"&&Function.toString.call(n)===Rr}(e)||Array.isArray(e)||!!e[it]||!!e.constructor[it]||Te(e)||je(e))}function G(e,t,r){r===void 0&&(r=!1),L(e)===0?(r?Object.keys:Ue)(e).forEach(function(n){r&&typeof n=="symbol"||t(n,e[n],e)}):e.forEach(function(n,o){return t(o,n,e)})}function L(e){var t=e[S];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Te(e)?2:je(e)?3:0}function ge(e,t){return L(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Dr(e,t){return L(e)===2?e.get(t):e[t]}function pt(e,t,r){var n=L(e);n===2?e.set(t,r):n===3?(e.delete(t),e.add(r)):e[t]=r}function Or(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Te(e){return jr&&e instanceof Map}function je(e){return kr&&e instanceof Set}function M(e){return e.o||e.t}function ke(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Mr(e);delete t[S];for(var r=Ue(t),n=0;n<r.length;n++){var o=r[n],u=t[o];u.writable===!1&&(u.writable=!0,u.configurable=!0),(u.get||u.set)&&(t[o]={configurable:!0,writable:!0,enumerable:u.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function Re(e,t){return t===void 0&&(t=!1),Me(e)||H(e)||!U(e)||(L(e)>1&&(e.set=e.add=e.clear=e.delete=Cr),Object.freeze(e),t&&G(e,function(r,n){return Re(n,!0)},!0)),e}function Cr(){w(2)}function Me(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function D(e){var t=_r[e];return t||w(18,e),t}function et(){return J}function ve(e,t){t&&(D("Patches"),e.u=[],e.s=[],e.v=t)}function se(e){Se(e),e.p.forEach(Ar),e.p=null}function Se(e){e===J&&(J=e.l)}function tt(e){return J={p:[],l:J,h:e,m:!0,_:0}}function Ar(e){var t=e[S];t.i===0||t.i===1?t.j():t.O=!0}function he(e,t){t._=t.p.length;var r=t.p[0],n=e!==void 0&&e!==r;return t.h.g||D("ES5").S(t,e,n),n?(r[S].P&&(se(t),w(4)),U(e)&&(e=ie(t,e),t.l||le(t,e)),t.u&&D("Patches").M(r[S].t,e,t.u,t.s)):e=ie(t,r,[]),se(t),t.u&&t.v(t.u,t.s),e!==yt?e:void 0}function ie(e,t,r){if(Me(t))return t;var n=t[S];if(!n)return G(t,function(u,s){return rt(e,n,t,u,s,r)},!0),t;if(n.A!==e)return t;if(!n.P)return le(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var o=n.i===4||n.i===5?n.o=ke(n.k):n.o;G(n.i===3?new Set(o):o,function(u,s){return rt(e,n,o,u,s,r)}),le(e,o,!1),r&&e.u&&D("Patches").R(n,r,e.u,e.s)}return n.o}function rt(e,t,r,n,o,u){if(H(o)){var s=ie(e,o,u&&t&&t.i!==3&&!ge(t.D,n)?u.concat(n):void 0);if(pt(r,n,s),!H(s))return;e.m=!1}if(U(o)&&!Me(o)){if(!e.h.F&&e._<1)return;ie(e,o),t&&t.A.l||le(e,o)}}function le(e,t,r){r===void 0&&(r=!1),e.h.F&&e.m&&Re(t,r)}function pe(e,t){var r=e[S];return(r?M(r):e)[t]}function nt(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Ve(e){e.P||(e.P=!0,e.l&&Ve(e.l))}function ye(e){e.o||(e.o=ke(e.t))}function Pe(e,t,r){var n=Te(t)?D("MapSet").N(t,r):je(t)?D("MapSet").T(t,r):e.g?function(o,u){var s=Array.isArray(o),i={i:s?1:0,A:u?u.A:et(),P:!1,I:!1,D:{},l:u,t:o,k:null,o:null,j:null,C:!1},a=i,l=we;s&&(a=[i],l=B);var c=Proxy.revocable(a,l),v=c.revoke,h=c.proxy;return i.k=h,i.j=v,h}(t,r):D("ES5").J(t,r);return(r?r.A:et()).p.push(n),n}function Tr(e){return H(e)||w(22,e),function t(r){if(!U(r))return r;var n,o=r[S],u=L(r);if(o){if(!o.P&&(o.i<4||!D("ES5").K(o)))return o.t;o.I=!0,n=ot(r,u),o.I=!1}else n=ot(r,u);return G(n,function(s,i){o&&Dr(o.t,s)===i||pt(n,s,t(i))}),u===3?new Set(n):n}(e)}function ot(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return ke(e)}var ut,J,_e=typeof Symbol!="undefined"&&typeof Symbol("x")=="symbol",jr=typeof Map!="undefined",kr=typeof Set!="undefined",st=typeof Proxy!="undefined"&&Proxy.revocable!==void 0&&typeof Reflect!="undefined",yt=_e?Symbol.for("immer-nothing"):((ut={})["immer-nothing"]=!0,ut),it=_e?Symbol.for("immer-draftable"):"__$immer_draftable",S=_e?Symbol.for("immer-state"):"__$immer_state",Rr=""+Object.prototype.constructor,Ue=typeof Reflect!="undefined"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Mr=Object.getOwnPropertyDescriptors||function(e){var t={};return Ue(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)}),t},_r={},we={get:function(e,t){if(t===S)return e;var r=M(e);if(!ge(r,t))return function(o,u,s){var i,a=nt(u,s);return a?"value"in a?a.value:(i=a.get)===null||i===void 0?void 0:i.call(o.k):void 0}(e,r,t);var n=r[t];return e.I||!U(n)?n:n===pe(e.t,t)?(ye(e),e.o[t]=Pe(e.A.h,n,e)):n},has:function(e,t){return t in M(e)},ownKeys:function(e){return Reflect.ownKeys(M(e))},set:function(e,t,r){var n=nt(M(e),t);if(n!=null&&n.set)return n.set.call(e.k,r),!0;if(!e.P){var o=pe(M(e),t),u=o==null?void 0:o[S];if(u&&u.t===r)return e.o[t]=r,e.D[t]=!1,!0;if(Or(r,o)&&(r!==void 0||ge(e.t,t)))return!0;ye(e),Ve(e)}return e.o[t]===r&&typeof r!="number"&&(r!==void 0||t in e.o)||(e.o[t]=r,e.D[t]=!0,!0)},deleteProperty:function(e,t){return pe(e.t,t)!==void 0||t in e.t?(e.D[t]=!1,ye(e),Ve(e)):delete e.D[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=M(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty:function(){w(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){w(12)}},B={};G(we,function(e,t){B[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),B.deleteProperty=function(e,t){return B.set.call(this,e,t,void 0)},B.set=function(e,t,r){return we.set.call(this,e[0],t,r,e[0])};var Ur=function(){function e(r){var n=this;this.g=st,this.F=!0,this.produce=function(o,u,s){if(typeof o=="function"&&typeof u!="function"){var i=u;u=o;var a=n;return function(y){var A=this;y===void 0&&(y=i);for(var T=arguments.length,C=Array(T>1?T-1:0),k=1;k<T;k++)C[k-1]=arguments[k];return a.produce(y,function(ce){var R;return(R=u).call.apply(R,[A,ce].concat(C))})}}var l;if(typeof u!="function"&&w(6),s!==void 0&&typeof s!="function"&&w(7),U(o)){var c=tt(n),v=Pe(n,o,void 0),h=!0;try{l=u(v),h=!1}finally{h?se(c):Se(c)}return typeof Promise!="undefined"&&l instanceof Promise?l.then(function(y){return ve(c,s),he(y,c)},function(y){throw se(c),y}):(ve(c,s),he(l,c))}if(!o||typeof o!="object"){if((l=u(o))===void 0&&(l=o),l===yt&&(l=void 0),n.F&&Re(l,!0),s){var f=[],F=[];D("Patches").M(o,l,f,F),s(f,F)}return l}w(21,o)},this.produceWithPatches=function(o,u){if(typeof o=="function")return function(l){for(var c=arguments.length,v=Array(c>1?c-1:0),h=1;h<c;h++)v[h-1]=arguments[h];return n.produceWithPatches(l,function(f){return o.apply(void 0,[f].concat(v))})};var s,i,a=n.produce(o,u,function(l,c){s=l,i=c});return typeof Promise!="undefined"&&a instanceof Promise?a.then(function(l){return[l,s,i]}):[a,s,i]},typeof(r==null?void 0:r.useProxies)=="boolean"&&this.setUseProxies(r.useProxies),typeof(r==null?void 0:r.autoFreeze)=="boolean"&&this.setAutoFreeze(r.autoFreeze)}var t=e.prototype;return t.createDraft=function(r){U(r)||w(8),H(r)&&(r=Tr(r));var n=tt(this),o=Pe(this,r,void 0);return o[S].C=!0,Se(n),o},t.finishDraft=function(r,n){var o=r&&r[S],u=o.A;return ve(u,n),he(void 0,u)},t.setAutoFreeze=function(r){this.F=r},t.setUseProxies=function(r){r&&!st&&w(20),this.g=r},t.applyPatches=function(r,n){var o;for(o=n.length-1;o>=0;o--){var u=n[o];if(u.path.length===0&&u.op==="replace"){r=u.value;break}}o>-1&&(n=n.slice(o+1));var s=D("Patches").$;return H(r)?s(r,n):this.produce(r,function(i){return s(i,n)})},e}(),V=new Ur,$r=V.produce;V.produceWithPatches.bind(V);V.setAutoFreeze.bind(V);V.setUseProxies.bind(V);V.applyPatches.bind(V);V.createDraft.bind(V);V.finishDraft.bind(V);const xr=e=>(t,r,n)=>(n.setState=(o,u,...s)=>{const i=typeof o=="function"?$r(o):o;return t(i,u,...s)},e(n.setState,r,n)),Hr=xr,Lr=(e,t)=>{if(typeof Object.getPrototypeOf(e).requestSubmit=="function"){e.requestSubmit(t);return}if(t){zr(e,t),t.click();return}const r=document.createElement("input");r.type="submit",r.hidden=!0,e.appendChild(r),r.click(),e.removeChild(r)};function zr(e,t){t instanceof HTMLElement||Fe(TypeError,"parameter 1 is not of type 'HTMLElement'"),"type"in t&&t.type==="submit"||Fe(TypeError,"The specified element is not a submit button"),"form"in t&&t.form===e||Fe(DOMException,"The specified element is not owned by this form element","NotFoundError")}function Fe(e,t,r){throw new e("Failed to execute 'requestSubmit' on 'HTMLFormElement': "+t+".",r)}const E=(e,t)=>{const r=_(e,t);if(r==null){const n=[];return $(e,t,n),n}return j(Array.isArray(r),`FieldArray: defaultValue value for ${t} must be an array, null, or undefined`),r},te=(e,t,r)=>{const n=e[t],o=e[r],u=t in e,s=r in e;u?e[r]=n:delete e[r],s?e[t]=o:delete e[t]};function X(e,t,r,n){return e.length<t&&n&&(e.length=t),arguments.length===4?e.splice(t,r,n):e.splice(t,r)}const re=(e,t,r)=>{const[n]=X(e,t,1);X(e,r,0,n)},ne=(e,t,r)=>{X(e,t,0,r)},oe=(e,t)=>{X(e,t,1)},ue=(e,t,r)=>{X(e,t,1,r)},g=(e,t,r)=>{const n=new Set,o=[];for(const[s,i]of Object.entries(t))s.startsWith(e)&&s!==e&&(n.add(s),$(o,s.substring(e.length),i));r(o);for(const s of n)delete t[s];const u=Ie(o);for(const s of u){const i=_(o,s);t[`${e}${s}`]=i}},Ie=(e,t="")=>Array.isArray(e)?e.flatMap((r,n)=>Ie(r,`${t}[${n}]`)):typeof e=="object"?Object.keys(e).flatMap(r=>Ie(e[r],`${t}.${r}`)):[t],b=()=>{},Br={isHydrated:!1,isSubmitting:!1,hasBeenSubmitted:!1,touchedFields:{},fieldErrors:{},formElement:null,isValid:()=>!0,startSubmit:b,endSubmit:b,setTouched:b,setFieldError:b,setFieldErrors:b,clearFieldError:b,currentDefaultValues:{},reset:()=>b,syncFormProps:b,setFormElement:b,validateField:async()=>null,validate:async()=>{throw new Error("Validate called before form was initialized.")},submit:async()=>{throw new Error("Submit called before form was initialized.")},resetFormElement:b,getValues:()=>new FormData,controlledFields:{values:{},refCounts:{},valueUpdatePromises:{},valueUpdateResolvers:{},register:b,unregister:b,setValue:b,getValue:b,kickoffValueUpdate:b,awaitValueUpdate:async()=>{throw new Error("AwaitValueUpdate called before form was initialized.")},array:{push:b,swap:b,move:b,insert:b,unshift:b,remove:b,pop:b,replace:b}}},qr=(e,t)=>({isHydrated:!1,isSubmitting:!1,hasBeenSubmitted:!1,touchedFields:{},fieldErrors:{},formElement:null,currentDefaultValues:{},isValid:()=>Object.keys(t().fieldErrors).length===0,startSubmit:()=>e(r=>{r.isSubmitting=!0,r.hasBeenSubmitted=!0}),endSubmit:()=>e(r=>{r.isSubmitting=!1}),setTouched:(r,n)=>e(o=>{o.touchedFields[r]=n}),setFieldError:(r,n)=>e(o=>{o.fieldErrors[r]=n}),setFieldErrors:r=>e(n=>{n.fieldErrors=r}),clearFieldError:r=>e(n=>{delete n.fieldErrors[r]}),reset:()=>e(r=>{var o,u;r.fieldErrors={},r.touchedFields={},r.hasBeenSubmitted=!1;const n=(u=(o=r.formProps)==null?void 0:o.defaultValues)!=null?u:{};r.controlledFields.values=n,r.currentDefaultValues=n}),syncFormProps:r=>e(n=>{n.isHydrated||(n.controlledFields.values=r.defaultValues,n.currentDefaultValues=r.defaultValues),n.formProps=r,n.isHydrated=!0}),setFormElement:r=>{t().formElement!==r&&e(n=>{n.formElement=r})},validateField:async r=>{var s,i,a;const n=t().formElement;j(n,"Cannot find reference to form. This is probably a bug in remix-validated-form.");const o=(s=t().formProps)==null?void 0:s.validator;j(o,"Cannot validator. This is probably a bug in remix-validated-form."),await((a=(i=t().controlledFields).awaitValueUpdate)==null?void 0:a.call(i,r));const{error:u}=await o.validateField(new FormData(n),r);return u?(t().setFieldError(r,u),u):(t().clearFieldError(r),null)},validate:async()=>{var u;const r=t().formElement;j(r,"Cannot find reference to form. This is probably a bug in remix-validated-form.");const n=(u=t().formProps)==null?void 0:u.validator;j(n,"Cannot validator. This is probably a bug in remix-validated-form.");const o=await n.validate(new FormData(r));return o.error&&t().setFieldErrors(o.error.fieldErrors),o},submit:()=>{const r=t().formElement;j(r,"Cannot find reference to form. This is probably a bug in remix-validated-form."),Lr(r)},getValues:()=>{var r;return new FormData((r=t().formElement)!=null?r:void 0)},resetFormElement:()=>{var r;return(r=t().formElement)==null?void 0:r.reset()},controlledFields:{values:{},refCounts:{},valueUpdatePromises:{},valueUpdateResolvers:{},register:r=>{e(n=>{var u;const o=(u=n.controlledFields.refCounts[r])!=null?u:0;n.controlledFields.refCounts[r]=o+1})},unregister:r=>{t()===null||t()===void 0||e(n=>{var s,i,a;const o=(s=n.controlledFields.refCounts[r])!=null?s:0;if(o>1){n.controlledFields.refCounts[r]=o-1;return}Object.keys(n.controlledFields.refCounts).some(l=>r.startsWith(l)&&l!==r)||($(n.controlledFields.values,r,_((i=n.formProps)==null?void 0:i.defaultValues,r)),$(n.currentDefaultValues,r,_((a=n.formProps)==null?void 0:a.defaultValues,r))),delete n.controlledFields.refCounts[r]})},getValue:r=>_(t().controlledFields.values,r),setValue:(r,n)=>{e(o=>{$(o.controlledFields.values,r,n)}),t().controlledFields.kickoffValueUpdate(r)},kickoffValueUpdate:r=>{const n=()=>e(o=>{delete o.controlledFields.valueUpdateResolvers[r],delete o.controlledFields.valueUpdatePromises[r]});e(o=>{const u=new Promise(s=>{o.controlledFields.valueUpdateResolvers[r]=s}).then(n);o.controlledFields.valueUpdatePromises[r]=u})},awaitValueUpdate:async r=>{await t().controlledFields.valueUpdatePromises[r]},array:{push:(r,n)=>{e(o=>{E(o.controlledFields.values,r).push(n),E(o.currentDefaultValues,r).push(n)}),t().controlledFields.kickoffValueUpdate(r)},swap:(r,n,o)=>{e(u=>{te(E(u.controlledFields.values,r),n,o),te(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>te(s,n,o)),g(r,u.fieldErrors,s=>te(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)},move:(r,n,o)=>{e(u=>{re(E(u.controlledFields.values,r),n,o),re(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>re(s,n,o)),g(r,u.fieldErrors,s=>re(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)},insert:(r,n,o)=>{e(u=>{ne(E(u.controlledFields.values,r),n,o),ne(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>ne(s,n,!1)),g(r,u.fieldErrors,s=>ne(s,n,void 0))}),t().controlledFields.kickoffValueUpdate(r)},remove:(r,n)=>{e(o=>{oe(E(o.controlledFields.values,r),n),oe(E(o.currentDefaultValues,r),n),g(r,o.touchedFields,u=>oe(u,n)),g(r,o.fieldErrors,u=>oe(u,n))}),t().controlledFields.kickoffValueUpdate(r)},pop:r=>{e(n=>{E(n.controlledFields.values,r).pop(),E(n.currentDefaultValues,r).pop(),g(r,n.touchedFields,o=>o.pop()),g(r,n.fieldErrors,o=>o.pop())}),t().controlledFields.kickoffValueUpdate(r)},unshift:(r,n)=>{e(o=>{E(o.controlledFields.values,r).unshift(n),E(o.currentDefaultValues,r).unshift(n),g(r,o.touchedFields,u=>u.unshift(!1)),g(r,o.fieldErrors,u=>u.unshift(void 0))})},replace:(r,n,o)=>{e(u=>{ue(E(u.controlledFields.values,r),n,o),ue(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>ue(s,n,o)),g(r,u.fieldErrors,s=>ue(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)}}}}),De=Ir()(Hr((e,t)=>({forms:{},form:r=>{var n;return(n=t().forms[r])!=null?n:Br},cleanupForm:r=>{e(n=>{delete n.forms[r]})},registerForm:r=>{t().forms[r]||e(n=>{n.forms[r]=qr(o=>e(u=>o(u.forms[r])),()=>t().forms[r])})}}))),d=(e,t)=>De(r=>t(r.form(e))),O=(e,t)=>{const r=p.useContext(ft);if(e)return{formId:e};if(r)return r;throw new Error(`Unable to determine form for ${t}. Please use it inside a ValidatedForm or pass a 'formId'.`)};function $e({fetcher:e,subaction:t,formId:r}){var o;const n=K.useActionData();return e?(o=e.data)!=null&&o.fieldErrors?e.data:null:n!=null&&n.fieldErrors?typeof r=="string"&&n.formId?n.formId===r?n:null:!t&&!n.subaction||n.subaction===t?n:null:null}const Ft=e=>{const t=$e(e),r=d(e.formId,n=>n.isHydrated);return z.from(t==null?void 0:t.fieldErrors,r)},bt=({formId:e})=>{const t=K.useMatches();if(typeof e=="string"){const r=ct(e),n=t.reverse().find(o=>o.data&&r in o.data);return n==null?void 0:n.data[r]}return null},Et=e=>{const{formId:t,defaultValuesProp:r}=e,n=d(t,s=>s.isHydrated),o=$e(e),u=bt(e);return n?z.hydratedData():o!=null&&o.repopulateFields?(j(typeof o.repopulateFields=="object","repopulateFields returned something other than an object"),z.serverData(o.repopulateFields)):r?z.serverData(r):z.serverData(u)},Kr=({fetcher:e})=>{const t=K.useTransition();return e?e.state==="submitting":!!t.submission},Wr=(e,{formId:t})=>{const r=d(t,u=>u.touchedFields[e]),n=d(t,u=>u.setTouched),o=p.useCallback(u=>n(e,u),[e,n]);return[r,o]},gt=(e,t)=>{const r=Ft(t),n=d(t.formId,o=>o.fieldErrors[e]);return r.map(o=>o==null?void 0:o[e]).hydrateTo(n)},St=e=>{const{formId:t}=e;return d(t,r=>r.clearFieldError)},Gr=(e,t)=>d(e,r=>_(r.currentDefaultValues,t)),xe=(e,t)=>{const r=Et(t),n=Gr(t.formId,e);return r.map(o=>_(o,e)).hydrateTo(n)},Vt=e=>d(e,t=>t.isSubmitting),Pt=e=>d(e,t=>t.isValid()),He=e=>d(e,t=>t.hasBeenSubmitted),Le=e=>d(e,t=>t.validateField),Jr=e=>d(e,t=>t.validate),Xr=()=>()=>{},wt=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.registerReceiveFocus)!=null?n:Xr}),Qr={},Zr=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.defaultValues)!=null?n:Qr}),Yr=({formId:e})=>d(e,t=>t.setTouched),Nr=e=>d(e,t=>t.touchedFields),en=e=>d(e,t=>t.fieldErrors),It=e=>d(e,t=>t.setFieldErrors),tn=e=>d(e,t=>t.resetFormElement),rn=e=>d(e,t=>t.submit),nn=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.action}),on=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.subaction}),un=e=>d(e,t=>t.getValues),sn=(e,t)=>{const r=d(e.formId,u=>u.controlledFields.getValue(t)),n=d(e.formId,u=>u.isHydrated),o=xe(t,e);return n?r:o},Dt=(e,t)=>{const r=d(e.formId,u=>u.controlledFields.valueUpdateResolvers[t]);p.useEffect(()=>{r==null||r()},[r]);const n=d(e.formId,u=>u.controlledFields.register),o=d(e.formId,u=>u.controlledFields.unregister);p.useEffect(()=>(n(t),()=>o(t)),[e.formId,t,n,o])},ln=(e,t)=>{Dt(e,t);const r=d(e.formId,u=>u.controlledFields.setValue),n=p.useCallback(u=>r(t,u),[t,r]);return[sn(e,t),n]},an=e=>{const t=d(e,r=>r.controlledFields.setValue);return p.useCallback((r,n)=>t(r,n),[t])},Ot=e=>{const t=O(e,"useIsSubmitting");return Vt(t.formId)},Ct=e=>{const t=O(e,"useIsValid");return Pt(t.formId)},cn=(e,t)=>{const{formId:r,handleReceiveFocus:n}=t!=null?t:{},o=O(r,"useField"),u=xe(e,o),[s,i]=Wr(e,o),a=gt(e,o),l=St(o),c=He(o.formId),v=Le(o.formId),h=wt(o.formId);return p.useEffect(()=>{if(n)return h(e,n)},[n,e,h]),p.useMemo(()=>{const F={error:a,clearError:()=>l(e),validate:()=>{v(e)},defaultValue:u,touched:s,setTouched:i},y=tr({...F,name:e,hasBeenSubmitted:c,validationBehavior:t==null?void 0:t.validationBehavior});return{...F,getInputProps:y}},[a,l,u,s,i,e,c,t==null?void 0:t.validationBehavior,v])},fn=(e,t)=>{const r=O(t,"useControlField"),[n,o]=ln(r,e);return[n,o]},dn=e=>{const t=O(e,"useControlField");return an(t.formId)};/**
|
17
|
+
*/var ae=P.default,pr=vt.exports;function yr(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Fr=typeof Object.is=="function"?Object.is:yr,br=pr.useSyncExternalStore,Er=ae.useRef,gr=ae.useEffect,Sr=ae.useMemo,Vr=ae.useDebugValue;mt.useSyncExternalStoreWithSelector=function(e,t,r,n,o){var u=Er(null);if(u.current===null){var s={hasValue:!1,value:null};u.current=s}else s=u.current;u=Sr(function(){function a(f){if(!l){if(l=!0,c=f,f=n(f),o!==void 0&&s.hasValue){var F=s.value;if(o(F,f))return v=F}return v=f}if(F=v,Fr(c,f))return F;var y=n(f);return o!==void 0&&o(F,y)?F:(c=f,v=y)}var l=!1,c,v,h=r===void 0?null:r;return[function(){return a(t())},h===null?void 0:function(){return a(h())}]},[t,r,n,o]);var i=br(e,u[0],u[1]);return gr(function(){s.hasValue=!0,s.value=i},[i]),Vr(i),i};dt.exports=mt;function Pr(e,t=e.getState,r){const n=dt.exports.useSyncExternalStoreWithSelector(e.subscribe,e.getState,e.getServerState||e.getState,t,r);return p.useDebugValue(n),n}const Ne=e=>{const t=typeof e=="function"?sr(e):e,r=(n,o)=>Pr(t,n,o);return Object.assign(r,t),r},wr=e=>e?Ne(e):Ne;var Ir=wr;function w(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];throw Error("[Immer] minified error nr: "+e+(r.length?" "+r.map(function(o){return"'"+o+"'"}).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function H(e){return!!e&&!!e[S]}function U(e){return!!e&&(function(t){if(!t||typeof t!="object")return!1;var r=Object.getPrototypeOf(t);if(r===null)return!0;var n=Object.hasOwnProperty.call(r,"constructor")&&r.constructor;return n===Object||typeof n=="function"&&Function.toString.call(n)===Rr}(e)||Array.isArray(e)||!!e[it]||!!e.constructor[it]||Te(e)||je(e))}function G(e,t,r){r===void 0&&(r=!1),L(e)===0?(r?Object.keys:Ue)(e).forEach(function(n){r&&typeof n=="symbol"||t(n,e[n],e)}):e.forEach(function(n,o){return t(o,n,e)})}function L(e){var t=e[S];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:Te(e)?2:je(e)?3:0}function ge(e,t){return L(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Dr(e,t){return L(e)===2?e.get(t):e[t]}function pt(e,t,r){var n=L(e);n===2?e.set(t,r):n===3?(e.delete(t),e.add(r)):e[t]=r}function Or(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Te(e){return jr&&e instanceof Map}function je(e){return kr&&e instanceof Set}function M(e){return e.o||e.t}function ke(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Mr(e);delete t[S];for(var r=Ue(t),n=0;n<r.length;n++){var o=r[n],u=t[o];u.writable===!1&&(u.writable=!0,u.configurable=!0),(u.get||u.set)&&(t[o]={configurable:!0,writable:!0,enumerable:u.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function Re(e,t){return t===void 0&&(t=!1),Me(e)||H(e)||!U(e)||(L(e)>1&&(e.set=e.add=e.clear=e.delete=Cr),Object.freeze(e),t&&G(e,function(r,n){return Re(n,!0)},!0)),e}function Cr(){w(2)}function Me(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function D(e){var t=_r[e];return t||w(18,e),t}function et(){return J}function ve(e,t){t&&(D("Patches"),e.u=[],e.s=[],e.v=t)}function se(e){Se(e),e.p.forEach(Ar),e.p=null}function Se(e){e===J&&(J=e.l)}function tt(e){return J={p:[],l:J,h:e,m:!0,_:0}}function Ar(e){var t=e[S];t.i===0||t.i===1?t.j():t.O=!0}function he(e,t){t._=t.p.length;var r=t.p[0],n=e!==void 0&&e!==r;return t.h.g||D("ES5").S(t,e,n),n?(r[S].P&&(se(t),w(4)),U(e)&&(e=ie(t,e),t.l||le(t,e)),t.u&&D("Patches").M(r[S].t,e,t.u,t.s)):e=ie(t,r,[]),se(t),t.u&&t.v(t.u,t.s),e!==yt?e:void 0}function ie(e,t,r){if(Me(t))return t;var n=t[S];if(!n)return G(t,function(u,s){return rt(e,n,t,u,s,r)},!0),t;if(n.A!==e)return t;if(!n.P)return le(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var o=n.i===4||n.i===5?n.o=ke(n.k):n.o;G(n.i===3?new Set(o):o,function(u,s){return rt(e,n,o,u,s,r)}),le(e,o,!1),r&&e.u&&D("Patches").R(n,r,e.u,e.s)}return n.o}function rt(e,t,r,n,o,u){if(H(o)){var s=ie(e,o,u&&t&&t.i!==3&&!ge(t.D,n)?u.concat(n):void 0);if(pt(r,n,s),!H(s))return;e.m=!1}if(U(o)&&!Me(o)){if(!e.h.F&&e._<1)return;ie(e,o),t&&t.A.l||le(e,o)}}function le(e,t,r){r===void 0&&(r=!1),e.h.F&&e.m&&Re(t,r)}function pe(e,t){var r=e[S];return(r?M(r):e)[t]}function nt(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Ve(e){e.P||(e.P=!0,e.l&&Ve(e.l))}function ye(e){e.o||(e.o=ke(e.t))}function Pe(e,t,r){var n=Te(t)?D("MapSet").N(t,r):je(t)?D("MapSet").T(t,r):e.g?function(o,u){var s=Array.isArray(o),i={i:s?1:0,A:u?u.A:et(),P:!1,I:!1,D:{},l:u,t:o,k:null,o:null,j:null,C:!1},a=i,l=we;s&&(a=[i],l=B);var c=Proxy.revocable(a,l),v=c.revoke,h=c.proxy;return i.k=h,i.j=v,h}(t,r):D("ES5").J(t,r);return(r?r.A:et()).p.push(n),n}function Tr(e){return H(e)||w(22,e),function t(r){if(!U(r))return r;var n,o=r[S],u=L(r);if(o){if(!o.P&&(o.i<4||!D("ES5").K(o)))return o.t;o.I=!0,n=ot(r,u),o.I=!1}else n=ot(r,u);return G(n,function(s,i){o&&Dr(o.t,s)===i||pt(n,s,t(i))}),u===3?new Set(n):n}(e)}function ot(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return ke(e)}var ut,J,_e=typeof Symbol!="undefined"&&typeof Symbol("x")=="symbol",jr=typeof Map!="undefined",kr=typeof Set!="undefined",st=typeof Proxy!="undefined"&&Proxy.revocable!==void 0&&typeof Reflect!="undefined",yt=_e?Symbol.for("immer-nothing"):((ut={})["immer-nothing"]=!0,ut),it=_e?Symbol.for("immer-draftable"):"__$immer_draftable",S=_e?Symbol.for("immer-state"):"__$immer_state",Rr=""+Object.prototype.constructor,Ue=typeof Reflect!="undefined"&&Reflect.ownKeys?Reflect.ownKeys:Object.getOwnPropertySymbols!==void 0?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Mr=Object.getOwnPropertyDescriptors||function(e){var t={};return Ue(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)}),t},_r={},we={get:function(e,t){if(t===S)return e;var r=M(e);if(!ge(r,t))return function(o,u,s){var i,a=nt(u,s);return a?"value"in a?a.value:(i=a.get)===null||i===void 0?void 0:i.call(o.k):void 0}(e,r,t);var n=r[t];return e.I||!U(n)?n:n===pe(e.t,t)?(ye(e),e.o[t]=Pe(e.A.h,n,e)):n},has:function(e,t){return t in M(e)},ownKeys:function(e){return Reflect.ownKeys(M(e))},set:function(e,t,r){var n=nt(M(e),t);if(n!=null&&n.set)return n.set.call(e.k,r),!0;if(!e.P){var o=pe(M(e),t),u=o==null?void 0:o[S];if(u&&u.t===r)return e.o[t]=r,e.D[t]=!1,!0;if(Or(r,o)&&(r!==void 0||ge(e.t,t)))return!0;ye(e),Ve(e)}return e.o[t]===r&&typeof r!="number"&&(r!==void 0||t in e.o)||(e.o[t]=r,e.D[t]=!0,!0)},deleteProperty:function(e,t){return pe(e.t,t)!==void 0||t in e.t?(e.D[t]=!1,ye(e),Ve(e)):delete e.D[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=M(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.i!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty:function(){w(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){w(12)}},B={};G(we,function(e,t){B[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),B.deleteProperty=function(e,t){return B.set.call(this,e,t,void 0)},B.set=function(e,t,r){return we.set.call(this,e[0],t,r,e[0])};var Ur=function(){function e(r){var n=this;this.g=st,this.F=!0,this.produce=function(o,u,s){if(typeof o=="function"&&typeof u!="function"){var i=u;u=o;var a=n;return function(y){var A=this;y===void 0&&(y=i);for(var T=arguments.length,C=Array(T>1?T-1:0),k=1;k<T;k++)C[k-1]=arguments[k];return a.produce(y,function(ce){var R;return(R=u).call.apply(R,[A,ce].concat(C))})}}var l;if(typeof u!="function"&&w(6),s!==void 0&&typeof s!="function"&&w(7),U(o)){var c=tt(n),v=Pe(n,o,void 0),h=!0;try{l=u(v),h=!1}finally{h?se(c):Se(c)}return typeof Promise!="undefined"&&l instanceof Promise?l.then(function(y){return ve(c,s),he(y,c)},function(y){throw se(c),y}):(ve(c,s),he(l,c))}if(!o||typeof o!="object"){if((l=u(o))===void 0&&(l=o),l===yt&&(l=void 0),n.F&&Re(l,!0),s){var f=[],F=[];D("Patches").M(o,l,f,F),s(f,F)}return l}w(21,o)},this.produceWithPatches=function(o,u){if(typeof o=="function")return function(l){for(var c=arguments.length,v=Array(c>1?c-1:0),h=1;h<c;h++)v[h-1]=arguments[h];return n.produceWithPatches(l,function(f){return o.apply(void 0,[f].concat(v))})};var s,i,a=n.produce(o,u,function(l,c){s=l,i=c});return typeof Promise!="undefined"&&a instanceof Promise?a.then(function(l){return[l,s,i]}):[a,s,i]},typeof(r==null?void 0:r.useProxies)=="boolean"&&this.setUseProxies(r.useProxies),typeof(r==null?void 0:r.autoFreeze)=="boolean"&&this.setAutoFreeze(r.autoFreeze)}var t=e.prototype;return t.createDraft=function(r){U(r)||w(8),H(r)&&(r=Tr(r));var n=tt(this),o=Pe(this,r,void 0);return o[S].C=!0,Se(n),o},t.finishDraft=function(r,n){var o=r&&r[S],u=o.A;return ve(u,n),he(void 0,u)},t.setAutoFreeze=function(r){this.F=r},t.setUseProxies=function(r){r&&!st&&w(20),this.g=r},t.applyPatches=function(r,n){var o;for(o=n.length-1;o>=0;o--){var u=n[o];if(u.path.length===0&&u.op==="replace"){r=u.value;break}}o>-1&&(n=n.slice(o+1));var s=D("Patches").$;return H(r)?s(r,n):this.produce(r,function(i){return s(i,n)})},e}(),V=new Ur,$r=V.produce;V.produceWithPatches.bind(V);V.setAutoFreeze.bind(V);V.setUseProxies.bind(V);V.applyPatches.bind(V);V.createDraft.bind(V);V.finishDraft.bind(V);const xr=e=>(t,r,n)=>(n.setState=(o,u,...s)=>{const i=typeof o=="function"?$r(o):o;return t(i,u,...s)},e(n.setState,r,n)),Hr=xr,Lr=(e,t)=>{if(typeof Object.getPrototypeOf(e).requestSubmit=="function"){e.requestSubmit(t);return}if(t){zr(e,t),t.click();return}const r=document.createElement("input");r.type="submit",r.hidden=!0,e.appendChild(r),r.click(),e.removeChild(r)};function zr(e,t){t instanceof HTMLElement||Fe(TypeError,"parameter 1 is not of type 'HTMLElement'"),"type"in t&&t.type==="submit"||Fe(TypeError,"The specified element is not a submit button"),"form"in t&&t.form===e||Fe(DOMException,"The specified element is not owned by this form element","NotFoundError")}function Fe(e,t,r){throw new e("Failed to execute 'requestSubmit' on 'HTMLFormElement': "+t+".",r)}const E=(e,t)=>{const r=_(e,t);if(r==null){const n=[];return $(e,t,n),n}return j(Array.isArray(r),`FieldArray: defaultValue value for ${t} must be an array, null, or undefined`),r},te=(e,t,r)=>{const n=e[t],o=e[r],u=t in e,s=r in e;u?e[r]=n:delete e[r],s?e[t]=o:delete e[t]};function X(e,t,r,n){return e.length<t&&n&&(e.length=t),arguments.length===4?e.splice(t,r,n):e.splice(t,r)}const re=(e,t,r)=>{const[n]=X(e,t,1);X(e,r,0,n)},ne=(e,t,r)=>{X(e,t,0,r)},oe=(e,t)=>{X(e,t,1)},ue=(e,t,r)=>{X(e,t,1,r)},g=(e,t,r)=>{const n=new Set,o=[];for(const[s,i]of Object.entries(t))s.startsWith(e)&&s!==e&&(n.add(s),$(o,s.substring(e.length),i));r(o);for(const s of n)delete t[s];const u=Ie(o);for(const s of u){const i=_(o,s);i!==void 0&&(t[`${e}${s}`]=i)}},Ie=(e,t="")=>Array.isArray(e)?e.flatMap((r,n)=>Ie(r,`${t}[${n}]`)):typeof e=="object"?Object.keys(e).flatMap(r=>Ie(e[r],`${t}.${r}`)):[t],b=()=>{},Br={isHydrated:!1,isSubmitting:!1,hasBeenSubmitted:!1,touchedFields:{},fieldErrors:{},formElement:null,isValid:()=>!0,startSubmit:b,endSubmit:b,setTouched:b,setFieldError:b,setFieldErrors:b,clearFieldError:b,currentDefaultValues:{},reset:()=>b,syncFormProps:b,setFormElement:b,validateField:async()=>null,validate:async()=>{throw new Error("Validate called before form was initialized.")},submit:async()=>{throw new Error("Submit called before form was initialized.")},resetFormElement:b,getValues:()=>new FormData,controlledFields:{values:{},refCounts:{},valueUpdatePromises:{},valueUpdateResolvers:{},register:b,unregister:b,setValue:b,getValue:b,kickoffValueUpdate:b,awaitValueUpdate:async()=>{throw new Error("AwaitValueUpdate called before form was initialized.")},array:{push:b,swap:b,move:b,insert:b,unshift:b,remove:b,pop:b,replace:b}}},qr=(e,t)=>({isHydrated:!1,isSubmitting:!1,hasBeenSubmitted:!1,touchedFields:{},fieldErrors:{},formElement:null,currentDefaultValues:{},isValid:()=>Object.keys(t().fieldErrors).length===0,startSubmit:()=>e(r=>{r.isSubmitting=!0,r.hasBeenSubmitted=!0}),endSubmit:()=>e(r=>{r.isSubmitting=!1}),setTouched:(r,n)=>e(o=>{o.touchedFields[r]=n}),setFieldError:(r,n)=>e(o=>{o.fieldErrors[r]=n}),setFieldErrors:r=>e(n=>{n.fieldErrors=r}),clearFieldError:r=>e(n=>{delete n.fieldErrors[r]}),reset:()=>e(r=>{var o,u;r.fieldErrors={},r.touchedFields={},r.hasBeenSubmitted=!1;const n=(u=(o=r.formProps)==null?void 0:o.defaultValues)!=null?u:{};r.controlledFields.values=n,r.currentDefaultValues=n}),syncFormProps:r=>e(n=>{n.isHydrated||(n.controlledFields.values=r.defaultValues,n.currentDefaultValues=r.defaultValues),n.formProps=r,n.isHydrated=!0}),setFormElement:r=>{t().formElement!==r&&e(n=>{n.formElement=r})},validateField:async r=>{var s,i,a;const n=t().formElement;j(n,"Cannot find reference to form. This is probably a bug in remix-validated-form.");const o=(s=t().formProps)==null?void 0:s.validator;j(o,"Cannot validator. This is probably a bug in remix-validated-form."),await((a=(i=t().controlledFields).awaitValueUpdate)==null?void 0:a.call(i,r));const{error:u}=await o.validateField(new FormData(n),r);return u?(t().setFieldError(r,u),u):(t().clearFieldError(r),null)},validate:async()=>{var u;const r=t().formElement;j(r,"Cannot find reference to form. This is probably a bug in remix-validated-form.");const n=(u=t().formProps)==null?void 0:u.validator;j(n,"Cannot validator. This is probably a bug in remix-validated-form.");const o=await n.validate(new FormData(r));return o.error&&t().setFieldErrors(o.error.fieldErrors),o},submit:()=>{const r=t().formElement;j(r,"Cannot find reference to form. This is probably a bug in remix-validated-form."),Lr(r)},getValues:()=>{var r;return new FormData((r=t().formElement)!=null?r:void 0)},resetFormElement:()=>{var r;return(r=t().formElement)==null?void 0:r.reset()},controlledFields:{values:{},refCounts:{},valueUpdatePromises:{},valueUpdateResolvers:{},register:r=>{e(n=>{var u;const o=(u=n.controlledFields.refCounts[r])!=null?u:0;n.controlledFields.refCounts[r]=o+1})},unregister:r=>{t()===null||t()===void 0||e(n=>{var s,i,a;const o=(s=n.controlledFields.refCounts[r])!=null?s:0;if(o>1){n.controlledFields.refCounts[r]=o-1;return}Object.keys(n.controlledFields.refCounts).some(l=>r.startsWith(l)&&l!==r)||($(n.controlledFields.values,r,_((i=n.formProps)==null?void 0:i.defaultValues,r)),$(n.currentDefaultValues,r,_((a=n.formProps)==null?void 0:a.defaultValues,r))),delete n.controlledFields.refCounts[r]})},getValue:r=>_(t().controlledFields.values,r),setValue:(r,n)=>{e(o=>{$(o.controlledFields.values,r,n)}),t().controlledFields.kickoffValueUpdate(r)},kickoffValueUpdate:r=>{const n=()=>e(o=>{delete o.controlledFields.valueUpdateResolvers[r],delete o.controlledFields.valueUpdatePromises[r]});e(o=>{const u=new Promise(s=>{o.controlledFields.valueUpdateResolvers[r]=s}).then(n);o.controlledFields.valueUpdatePromises[r]=u})},awaitValueUpdate:async r=>{await t().controlledFields.valueUpdatePromises[r]},array:{push:(r,n)=>{e(o=>{E(o.controlledFields.values,r).push(n),E(o.currentDefaultValues,r).push(n)}),t().controlledFields.kickoffValueUpdate(r)},swap:(r,n,o)=>{e(u=>{te(E(u.controlledFields.values,r),n,o),te(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>te(s,n,o)),g(r,u.fieldErrors,s=>te(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)},move:(r,n,o)=>{e(u=>{re(E(u.controlledFields.values,r),n,o),re(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>re(s,n,o)),g(r,u.fieldErrors,s=>re(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)},insert:(r,n,o)=>{e(u=>{ne(E(u.controlledFields.values,r),n,o),ne(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>ne(s,n,!1)),g(r,u.fieldErrors,s=>ne(s,n,void 0))}),t().controlledFields.kickoffValueUpdate(r)},remove:(r,n)=>{e(o=>{oe(E(o.controlledFields.values,r),n),oe(E(o.currentDefaultValues,r),n),g(r,o.touchedFields,u=>oe(u,n)),g(r,o.fieldErrors,u=>oe(u,n))}),t().controlledFields.kickoffValueUpdate(r)},pop:r=>{e(n=>{E(n.controlledFields.values,r).pop(),E(n.currentDefaultValues,r).pop(),g(r,n.touchedFields,o=>o.pop()),g(r,n.fieldErrors,o=>o.pop())}),t().controlledFields.kickoffValueUpdate(r)},unshift:(r,n)=>{e(o=>{E(o.controlledFields.values,r).unshift(n),E(o.currentDefaultValues,r).unshift(n),g(r,o.touchedFields,u=>u.unshift(!1)),g(r,o.fieldErrors,u=>u.unshift(void 0))})},replace:(r,n,o)=>{e(u=>{ue(E(u.controlledFields.values,r),n,o),ue(E(u.currentDefaultValues,r),n,o),g(r,u.touchedFields,s=>ue(s,n,o)),g(r,u.fieldErrors,s=>ue(s,n,o))}),t().controlledFields.kickoffValueUpdate(r)}}}}),De=Ir()(Hr((e,t)=>({forms:{},form:r=>{var n;return(n=t().forms[r])!=null?n:Br},cleanupForm:r=>{e(n=>{delete n.forms[r]})},registerForm:r=>{t().forms[r]||e(n=>{n.forms[r]=qr(o=>e(u=>o(u.forms[r])),()=>t().forms[r])})}}))),d=(e,t)=>De(r=>t(r.form(e))),O=(e,t)=>{const r=p.useContext(ft);if(e)return{formId:e};if(r)return r;throw new Error(`Unable to determine form for ${t}. Please use it inside a ValidatedForm or pass a 'formId'.`)};function $e({fetcher:e,subaction:t,formId:r}){var o;const n=K.useActionData();return e?(o=e.data)!=null&&o.fieldErrors?e.data:null:n!=null&&n.fieldErrors?typeof r=="string"&&n.formId?n.formId===r?n:null:!t&&!n.subaction||n.subaction===t?n:null:null}const Ft=e=>{const t=$e(e),r=d(e.formId,n=>n.isHydrated);return z.from(t==null?void 0:t.fieldErrors,r)},bt=({formId:e})=>{const t=K.useMatches();if(typeof e=="string"){const r=ct(e),n=t.reverse().find(o=>o.data&&r in o.data);return n==null?void 0:n.data[r]}return null},Et=e=>{const{formId:t,defaultValuesProp:r}=e,n=d(t,s=>s.isHydrated),o=$e(e),u=bt(e);return n?z.hydratedData():o!=null&&o.repopulateFields?(j(typeof o.repopulateFields=="object","repopulateFields returned something other than an object"),z.serverData(o.repopulateFields)):r?z.serverData(r):z.serverData(u)},Kr=({fetcher:e})=>{const t=K.useTransition();return e?e.state==="submitting":!!t.submission},Wr=(e,{formId:t})=>{const r=d(t,u=>u.touchedFields[e]),n=d(t,u=>u.setTouched),o=p.useCallback(u=>n(e,u),[e,n]);return[r,o]},gt=(e,t)=>{const r=Ft(t),n=d(t.formId,o=>o.fieldErrors[e]);return r.map(o=>o==null?void 0:o[e]).hydrateTo(n)},St=e=>{const{formId:t}=e;return d(t,r=>r.clearFieldError)},Gr=(e,t)=>d(e,r=>_(r.currentDefaultValues,t)),xe=(e,t)=>{const r=Et(t),n=Gr(t.formId,e);return r.map(o=>_(o,e)).hydrateTo(n)},Vt=e=>d(e,t=>t.isSubmitting),Pt=e=>d(e,t=>t.isValid()),He=e=>d(e,t=>t.hasBeenSubmitted),Le=e=>d(e,t=>t.validateField),Jr=e=>d(e,t=>t.validate),Xr=()=>()=>{},wt=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.registerReceiveFocus)!=null?n:Xr}),Qr={},Zr=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.defaultValues)!=null?n:Qr}),Yr=({formId:e})=>d(e,t=>t.setTouched),Nr=e=>d(e,t=>t.touchedFields),en=e=>d(e,t=>t.fieldErrors),It=e=>d(e,t=>t.setFieldErrors),tn=e=>d(e,t=>t.resetFormElement),rn=e=>d(e,t=>t.submit),nn=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.action}),on=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.subaction}),un=e=>d(e,t=>t.getValues),sn=(e,t)=>{const r=d(e.formId,u=>u.controlledFields.getValue(t)),n=d(e.formId,u=>u.isHydrated),o=xe(t,e);return n?r:o},Dt=(e,t)=>{const r=d(e.formId,u=>u.controlledFields.valueUpdateResolvers[t]);p.useEffect(()=>{r==null||r()},[r]);const n=d(e.formId,u=>u.controlledFields.register),o=d(e.formId,u=>u.controlledFields.unregister);p.useEffect(()=>(n(t),()=>o(t)),[e.formId,t,n,o])},ln=(e,t)=>{Dt(e,t);const r=d(e.formId,u=>u.controlledFields.setValue),n=p.useCallback(u=>r(t,u),[t,r]);return[sn(e,t),n]},an=e=>{const t=d(e,r=>r.controlledFields.setValue);return p.useCallback((r,n)=>t(r,n),[t])},Ot=e=>{const t=O(e,"useIsSubmitting");return Vt(t.formId)},Ct=e=>{const t=O(e,"useIsValid");return Pt(t.formId)},cn=(e,t)=>{const{formId:r,handleReceiveFocus:n}=t!=null?t:{},o=O(r,"useField"),u=xe(e,o),[s,i]=Wr(e,o),a=gt(e,o),l=St(o),c=He(o.formId),v=Le(o.formId),h=wt(o.formId);return p.useEffect(()=>{if(n)return h(e,n)},[n,e,h]),p.useMemo(()=>{const F={error:a,clearError:()=>l(e),validate:()=>{v(e)},defaultValue:u,touched:s,setTouched:i},y=tr({...F,name:e,hasBeenSubmitted:c,validationBehavior:t==null?void 0:t.validationBehavior});return{...F,getInputProps:y}},[a,l,u,s,i,e,c,t==null?void 0:t.validationBehavior,v])},fn=(e,t)=>{const r=O(t,"useControlField"),[n,o]=ln(r,e);return[n,o]},dn=e=>{const t=O(e,"useControlField");return an(t.formId)};/**
|
18
18
|
* @remix-run/server-runtime v1.6.5
|
19
19
|
*
|
20
20
|
* Copyright (c) Remix Software Inc.
|