remix-validated-form 4.6.4 → 4.6.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,17 +1,17 @@
1
1
  $ vite build
2
- vite v2.9.5 building for production...
2
+ vite v2.9.15 building for production...
3
3
  transforming...
4
- ✓ 289 modules transformed.
4
+ ✓ 291 modules transformed.
5
5
  rendering chunks...
6
- dist/remix-validated-form.cjs.js  32.65 KiB / gzip: 11.34 KiB
7
- dist/remix-validated-form.cjs.js.map 168.30 KiB
8
- dist/remix-validated-form.es.js  66.83 KiB / gzip: 15.64 KiB
9
- dist/remix-validated-form.es.js.map 165.89 KiB
10
- dist/remix-validated-form.umd.js  32.84 KiB / gzip: 11.42 KiB
11
- dist/remix-validated-form.umd.js.map 168.25 KiB
12
- 
13
- [vite:dts] Start generate declaration files...
14
- [vite:dts] Declaration files built in 2581ms.
15
- 
6
+ dist/remix-validated-form.cjs.js  32.76 KiB / gzip: 11.39 KiB
7
+ dist/remix-validated-form.cjs.js.map 168.68 KiB
8
+ dist/remix-validated-form.es.js  67.07 KiB / gzip: 15.71 KiB
9
+ dist/remix-validated-form.es.js.map 166.22 KiB
16
10
  No name was provided for external module 'react' in output.globals – guessing 'React'
17
11
  No name was provided for external module '@remix-run/react' in output.globals – guessing 'react'
12
+ dist/remix-validated-form.umd.js  32.95 KiB / gzip: 11.46 KiB
13
+ dist/remix-validated-form.umd.js.map 168.64 KiB
14
+ 
15
+ [vite:dts] Start generate declaration files...
16
+ [vite:dts] Declaration files built in 1834ms.
17
+ 
@@ -0,0 +1 @@
1
+ $ tsc --noEmit
@@ -1,7 +1,7 @@
1
- import { Form as RemixForm, useFetcher } from "@remix-run/react";
1
+ import { FetcherWithComponents, Form as RemixForm } from "@remix-run/react";
2
2
  import React, { ComponentProps } from "react";
3
3
  import { Validator } from "./validation/types";
4
- export declare type FormProps<DataType> = {
4
+ export type FormProps<DataType> = {
5
5
  /**
6
6
  * A `Validator` object that describes how to validate the form.
7
7
  */
@@ -16,7 +16,7 @@ export declare type FormProps<DataType> = {
16
16
  * The form will use the fetcher for loading states, action data, etc
17
17
  * instead of the default form action.
18
18
  */
19
- fetcher?: ReturnType<typeof useFetcher>;
19
+ fetcher?: FetcherWithComponents<any>;
20
20
  /**
21
21
  * Accepts an object of default values for the form
22
22
  * that will automatically be propagated to the form fields via `useField`.
@@ -13,7 +13,7 @@ export declare const useIsSubmitting: (formId?: string) => boolean;
13
13
  * @param formId the id of the form. Only necessary if being used outside a ValidatedForm.
14
14
  */
15
15
  export declare const useIsValid: (formId?: string) => boolean;
16
- export declare type FieldProps = {
16
+ export type FieldProps = {
17
17
  /**
18
18
  * The validation error message if there is one.
19
19
  */
@@ -1,12 +1,12 @@
1
1
  /// <reference types="react" />
2
- import { useFetcher } from "@remix-run/react";
3
- export declare type InternalFormContextValue = {
2
+ import { FetcherWithComponents } from "@remix-run/react";
3
+ export type InternalFormContextValue = {
4
4
  formId: string | symbol;
5
5
  action?: string;
6
6
  subaction?: string;
7
7
  defaultValuesProp?: {
8
8
  [fieldName: string]: any;
9
9
  };
10
- fetcher?: ReturnType<typeof useFetcher>;
10
+ fetcher?: FetcherWithComponents<unknown>;
11
11
  };
12
12
  export declare const InternalFormContext: import("react").Context<InternalFormContextValue | null>;
@@ -1,10 +1,10 @@
1
- export declare type ValidationBehavior = "onBlur" | "onChange" | "onSubmit";
2
- export declare type ValidationBehaviorOptions = {
1
+ export type ValidationBehavior = "onBlur" | "onChange" | "onSubmit";
2
+ export type ValidationBehaviorOptions = {
3
3
  initial: ValidationBehavior;
4
4
  whenTouched: ValidationBehavior;
5
5
  whenSubmitted: ValidationBehavior;
6
6
  };
7
- export declare type CreateGetInputPropsOptions = {
7
+ export type CreateGetInputPropsOptions = {
8
8
  clearError: () => void;
9
9
  validate: () => void;
10
10
  defaultValue?: any;
@@ -14,9 +14,9 @@ export declare type CreateGetInputPropsOptions = {
14
14
  validationBehavior?: Partial<ValidationBehaviorOptions>;
15
15
  name: string;
16
16
  };
17
- declare type HandledProps = "name" | "defaultValue" | "defaultChecked";
18
- declare type Callbacks = "onChange" | "onBlur";
19
- declare type MinimalInputProps = {
17
+ type HandledProps = "name" | "defaultValue" | "defaultChecked";
18
+ type Callbacks = "onChange" | "onBlur";
19
+ type MinimalInputProps = {
20
20
  onChange?: (...args: any[]) => void;
21
21
  onBlur?: (...args: any[]) => void;
22
22
  defaultValue?: any;
@@ -24,6 +24,6 @@ declare type MinimalInputProps = {
24
24
  name?: string;
25
25
  type?: string;
26
26
  };
27
- export declare type GetInputProps = <T extends MinimalInputProps>(props?: Omit<T, HandledProps | Callbacks> & Partial<Pick<T, Callbacks>>) => T;
27
+ export type GetInputProps = <T extends MinimalInputProps>(props?: Omit<T, HandledProps | Callbacks> & Partial<Pick<T, Callbacks>>) => T;
28
28
  export declare const createGetInputProps: ({ clearError, validate, defaultValue, touched, setTouched, hasBeenSubmitted, validationBehavior, name, }: CreateGetInputPropsOptions) => GetInputProps;
29
29
  export {};
@@ -3,7 +3,7 @@
3
3
  * around data that needs to come from the server initially,
4
4
  * but from the internal state after hydration.
5
5
  */
6
- export declare type Hydratable<T> = {
6
+ export type Hydratable<T> = {
7
7
  hydrateTo: (data: T) => T;
8
8
  map: <U>(fn: (data: T) => U) => Hydratable<U>;
9
9
  };
@@ -1,7 +1,7 @@
1
1
  import { WritableDraft } from "immer/dist/internal";
2
2
  import { FieldErrors, TouchedFields, ValidationResult, Validator } from "../../validation/types";
3
3
  import { InternalFormId } from "./types";
4
- export declare type SyncedFormProps = {
4
+ export type SyncedFormProps = {
5
5
  formId?: string;
6
6
  action?: string;
7
7
  subaction?: string;
@@ -11,7 +11,7 @@ export declare type SyncedFormProps = {
11
11
  registerReceiveFocus: (fieldName: string, handler: () => void) => () => void;
12
12
  validator: Validator<unknown>;
13
13
  };
14
- export declare type FormStoreState = {
14
+ export type FormStoreState = {
15
15
  forms: {
16
16
  [formId: InternalFormId]: FormState;
17
17
  };
@@ -19,7 +19,7 @@ export declare type FormStoreState = {
19
19
  registerForm: (formId: InternalFormId) => void;
20
20
  cleanupForm: (formId: InternalFormId) => void;
21
21
  };
22
- export declare type FormState = {
22
+ export type FormState = {
23
23
  isHydrated: boolean;
24
24
  isSubmitting: boolean;
25
25
  hasBeenSubmitted: boolean;
@@ -1,10 +1,10 @@
1
1
  import React from "react";
2
- export declare type FieldArrayValidationBehavior = "onChange" | "onSubmit";
3
- export declare type FieldArrayValidationBehaviorOptions = {
2
+ export type FieldArrayValidationBehavior = "onChange" | "onSubmit";
3
+ export type FieldArrayValidationBehaviorOptions = {
4
4
  initial: FieldArrayValidationBehavior;
5
5
  whenSubmitted: FieldArrayValidationBehavior;
6
6
  };
7
- export declare type FieldArrayHelpers<Item = any> = {
7
+ export type FieldArrayHelpers<Item = any> = {
8
8
  push: (item: Item) => void;
9
9
  swap: (indexA: number, indexB: number) => void;
10
10
  move: (from: number, to: number) => void;
@@ -14,12 +14,12 @@ export declare type FieldArrayHelpers<Item = any> = {
14
14
  pop: () => void;
15
15
  replace: (index: number, value: Item) => void;
16
16
  };
17
- export declare type UseFieldArrayOptions = {
17
+ export type UseFieldArrayOptions = {
18
18
  formId?: string;
19
19
  validationBehavior?: Partial<FieldArrayValidationBehaviorOptions>;
20
20
  };
21
21
  export declare function useFieldArray<Item = any>(name: string, { formId, validationBehavior }?: UseFieldArrayOptions): [itemDefaults: Item[], helpers: FieldArrayHelpers<any>, error: string | undefined];
22
- export declare type FieldArrayProps = {
22
+ export type FieldArrayProps = {
23
23
  name: string;
24
24
  children: (itemDefaults: any[], helpers: FieldArrayHelpers, error: string | undefined) => React.ReactNode;
25
25
  formId?: string;
@@ -1 +1 @@
1
- export declare type InternalFormId = string | symbol;
1
+ export type InternalFormId = string | symbol;
@@ -15,7 +15,7 @@ import { ValidatorError, ValidationErrorResponseData } from "./validation/types"
15
15
  * ```
16
16
  */
17
17
  export declare function validationError(error: ValidatorError, repopulateFields?: unknown, init?: ResponseInit): import("@remix-run/server-runtime").TypedResponse<ValidationErrorResponseData>;
18
- export declare type FormDefaults = {
18
+ export type FormDefaults = {
19
19
  [formDefaultsKey: `${typeof FORM_DEFAULTS_FIELD}_${string}`]: any;
20
20
  };
21
21
  export declare const setFormDefaults: <DataType = any>(formId: string, defaultValues: Partial<DataType>) => FormDefaults;
@@ -1,5 +1,5 @@
1
1
  import { FieldErrors, TouchedFields, ValidationResult } from "../validation/types";
2
- export declare type FormState = {
2
+ export type FormState = {
3
3
  fieldErrors: FieldErrors;
4
4
  isSubmitting: boolean;
5
5
  hasBeenSubmitted: boolean;
@@ -17,7 +17,7 @@ export declare type FormState = {
17
17
  * @param formId the id of the form. Only necessary if being used outside a ValidatedForm.
18
18
  */
19
19
  export declare const useFormState: (formId?: string) => FormState;
20
- export declare type FormHelpers = {
20
+ export type FormHelpers = {
21
21
  /**
22
22
  * Clear the error of the specified field.
23
23
  */
@@ -1,5 +1,5 @@
1
1
  import { FieldErrors, TouchedFields, ValidationResult } from "./validation/types";
2
- export declare type FormContextValue = {
2
+ export type FormContextValue = {
3
3
  /**
4
4
  * All the errors in all the fields in the form.
5
5
  */
@@ -1,58 +1,58 @@
1
- export declare type FieldErrors = Record<string, string>;
2
- export declare type TouchedFields = Record<string, boolean>;
3
- export declare type GenericObject = {
1
+ export type FieldErrors = Record<string, string>;
2
+ export type TouchedFields = Record<string, boolean>;
3
+ export type GenericObject = {
4
4
  [key: string]: any;
5
5
  };
6
- export declare type ValidatorError = {
6
+ export type ValidatorError = {
7
7
  subaction?: string;
8
8
  formId?: string;
9
9
  fieldErrors: FieldErrors;
10
10
  };
11
- export declare type ValidationErrorResponseData = {
11
+ export type ValidationErrorResponseData = {
12
12
  subaction?: string;
13
13
  formId?: string;
14
14
  fieldErrors: FieldErrors;
15
15
  repopulateFields?: unknown;
16
16
  };
17
- export declare type BaseResult = {
17
+ export type BaseResult = {
18
18
  submittedData: GenericObject;
19
19
  formId?: string;
20
20
  };
21
- export declare type ErrorResult = BaseResult & {
21
+ export type ErrorResult = BaseResult & {
22
22
  error: ValidatorError;
23
23
  data: undefined;
24
24
  };
25
- export declare type SuccessResult<DataType> = BaseResult & {
25
+ export type SuccessResult<DataType> = BaseResult & {
26
26
  data: DataType;
27
27
  error: undefined;
28
28
  };
29
29
  /**
30
30
  * The result when validating a form.
31
31
  */
32
- export declare type ValidationResult<DataType> = SuccessResult<DataType> | ErrorResult;
32
+ export type ValidationResult<DataType> = SuccessResult<DataType> | ErrorResult;
33
33
  /**
34
34
  * The result when validating an individual field in a form.
35
35
  */
36
- export declare type ValidateFieldResult = {
36
+ export type ValidateFieldResult = {
37
37
  error?: string;
38
38
  };
39
39
  /**
40
40
  * A `Validator` can be passed to the `validator` prop of a `ValidatedForm`.
41
41
  */
42
- export declare type Validator<DataType> = {
42
+ export type Validator<DataType> = {
43
43
  validate: (unvalidatedData: GenericObject) => Promise<ValidationResult<DataType>>;
44
44
  validateField: (unvalidatedData: GenericObject, field: string) => Promise<ValidateFieldResult>;
45
45
  };
46
- export declare type Valid<DataType> = {
46
+ export type Valid<DataType> = {
47
47
  data: DataType;
48
48
  error: undefined;
49
49
  };
50
- export declare type Invalid = {
50
+ export type Invalid = {
51
51
  error: FieldErrors;
52
52
  data: undefined;
53
53
  };
54
- export declare type CreateValidatorArg<DataType> = {
54
+ export type CreateValidatorArg<DataType> = {
55
55
  validate: (unvalidatedData: GenericObject) => Promise<Valid<DataType> | Invalid>;
56
56
  validateField: (unvalidatedData: GenericObject, field: string) => Promise<ValidateFieldResult>;
57
57
  };
58
- export declare type ValidatorData<T extends Validator<any>> = T extends Validator<infer U> ? U : never;
58
+ export type ValidatorData<T extends Validator<any>> = T extends Validator<infer U> ? U : never;
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var p=require("react"),K=require("@remix-run/react");function Ht(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var P=Ht(p),Lt=globalThis&&globalThis.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,u;n<o;n++)(u||!(n in t))&&(u||(u=Array.prototype.slice.call(t,0,n)),u[n]=t[n]);return e.concat(u||Array.prototype.slice.call(t))};function Q(e,t,r){var n=e.length-t.length,o=Array.from(t);if(n===0)return e.apply(void 0,o);if(n===1){var u=function(s){return e.apply(void 0,Lt([s],o,!1))};return(r||e.lazy)&&(u.lazy=r||e.lazy,u.lazyArgs=t),u}throw new Error("Wrong number of arguments")}function zt(e,t,r){return e.reduce(function(n,o,u){var s=r?t(o,u,e):t(o);return s.hasMany===!0?n.push.apply(n,s.next):s.hasNext===!0&&n.push(s.next),n},[])}var Qe=Array.isArray,Ze=Object.keys,Bt=Object.prototype.hasOwnProperty;function Ee(){return Q(qt,arguments)}function qt(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){var r=Qe(e),n=Qe(t),o=void 0,u=void 0,s=void 0;if(r&&n){if(u=e.length,u!==t.length)return!1;for(o=u;o--!==0;)if(!Ee(e[o],t[o]))return!1;return!0}if(r!==n)return!1;var i=e instanceof Date,a=t instanceof Date;if(i!==a)return!1;if(i&&a)return e.getTime()===t.getTime();var l=e instanceof RegExp,c=t instanceof RegExp;if(l!==c)return!1;if(l&&c)return e.toString()===t.toString();var v=Ze(e);if(u=v.length,u!==Ze(t).length)return!1;for(o=u;o--!==0;)if(!Bt.call(t,v[o]))return!1;for(o=u;o--!==0;)if(s=v[o],!Ee(e[s],t[s]))return!1;return!0}return e!==e&&t!==t}function Kt(){return Q(Wt,arguments)}function Wt(e,t){var r=new Set(t);return Object.entries(e).reduce(function(n,o){var u=o[0],s=o[1];return r.has(u)||(n[u]=s),n},{})}function Gt(){return Q(Jt,arguments)}function Jt(e,t){return Object.keys(e).reduce(function(r,n){return t(e[n],n)||(r[n]=e[n]),r},{})}function Xt(){return Q(Qt,arguments)}function Qt(e,t,r){for(var n=e,o=0,u=t;o<u.length;o++){var s=u[o];if(n==null||n[s]==null)return r;n=n[s]}return n}function W(){return Q(Zt,arguments,W.lazy)}function Zt(e){return zt(e,W.lazy())}(function(e){function t(){var r=new Set;return function(n){return r.has(n)?{done:!1,hasNext:!1}:(r.add(n),{done:!1,hasNext:!0,next:n})}}e.lazy=t})(W||(W={}));const Yt=(e="on",t)=>{if(Array.isArray(t))return t.some(r=>r===!0||r===e);if(typeof t=="boolean")return t;if(typeof t=="string")return t===e},Nt=(e="on",t)=>{if(typeof t=="string")return t===e},er={initial:"onBlur",whenTouched:"onChange",whenSubmitted:"onChange"},tr=({clearError:e,validate:t,defaultValue:r,touched:n,setTouched:o,hasBeenSubmitted:u,validationBehavior:s,name:i})=>{const a={...er,...s};return(l={})=>{const c=u?a.whenSubmitted:n?a.whenTouched:a.initial,v={...l,onChange:(...h)=>{var f;return c==="onChange"?t():e(),(f=l==null?void 0:l.onChange)==null?void 0:f.call(l,...h)},onBlur:(...h)=>{var f;return c==="onBlur"&&t(),o(!0),(f=l==null?void 0:l.onBlur)==null?void 0:f.call(l,...h)},name:i};return l.type==="checkbox"?v.defaultChecked=Yt(l.value,r):l.type==="radio"?v.defaultChecked=Nt(l.value,r):l.value===void 0&&(v.defaultValue=r),Gt(v,h=>h===void 0)}},Oe=e=>{if(e.length===0)return[];const t=e.match(/^\[(.+?)\](.*)$/)||e.match(/^\.?([^\.\[\]]+)(.*)$/);if(t){const[r,n,o]=t;return[/^\d+$/.test(n)?Number(n):n,...Oe(o)]}return[e]};function $(e,t,r){return rr(e,Oe(t),r)}function rr(e,t,r){var s;const n=t.slice(0,-1),o=t[t.length-1];let u=e;for(let i=0;i<n.length;i++){const a=n[i];if(u[a]===void 0){const l=(s=n[i+1])!=null?s:o;u[a]=typeof l=="number"?[]:{}}u=u[a]}return u[o]=r,e}const _=(e,t)=>Xt(e,Oe(t),void 0);var nr=!0,de="Invariant failed";function j(e,t){if(!e){if(nr)throw new Error(de);var r=typeof t=="function"?t():t,n=r?de+": "+r:de;throw new Error(n)}}const q="__rvfInternalFormId",or="__rvfInternalFormDefaults",ct=e=>`${or}_${e}`,ft=p.createContext(null),Ce=e=>({hydrateTo:()=>e,map:t=>Ce(t(e))}),Ae=()=>({hydrateTo:e=>e,map:()=>Ae()}),ur=(e,t)=>t?Ae():Ce(e),z={serverData:Ce,hydratedData:Ae,from:ur},Ye=e=>{let t;const r=new Set,n=(a,l)=>{const c=typeof a=="function"?a(t):a;if(c!==t){const v=t;t=l?c:Object.assign({},t,c),r.forEach(h=>h(t,v))}},o=()=>t,i={setState:n,getState:o,subscribe:a=>(r.add(a),()=>r.delete(a)),destroy:()=>r.clear()};return t=e(n,o,i),i},sr=e=>e?Ye(e):Ye;var dt={exports:{}},mt={},vt={exports:{}},ht={};/**
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var p=require("react"),K=require("@remix-run/react");function Ht(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var P=Ht(p),Lt=globalThis&&globalThis.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,u;n<o;n++)(u||!(n in t))&&(u||(u=Array.prototype.slice.call(t,0,n)),u[n]=t[n]);return e.concat(u||Array.prototype.slice.call(t))};function Q(e,t,r){var n=e.length-t.length,o=Array.from(t);if(n===0)return e.apply(void 0,o);if(n===1){var u=function(s){return e.apply(void 0,Lt([s],o,!1))};return(r||e.lazy)&&(u.lazy=r||e.lazy,u.lazyArgs=t),u}throw new Error("Wrong number of arguments")}function zt(e,t,r){return e.reduce(function(n,o,u){var s=r?t(o,u,e):t(o);return s.hasMany===!0?n.push.apply(n,s.next):s.hasNext===!0&&n.push(s.next),n},[])}var Qe=Array.isArray,Ze=Object.keys,Bt=Object.prototype.hasOwnProperty;function Ee(){return Q(qt,arguments)}function qt(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){var r=Qe(e),n=Qe(t),o=void 0,u=void 0,s=void 0;if(r&&n){if(u=e.length,u!==t.length)return!1;for(o=u;o--!==0;)if(!Ee(e[o],t[o]))return!1;return!0}if(r!==n)return!1;var i=e instanceof Date,a=t instanceof Date;if(i!==a)return!1;if(i&&a)return e.getTime()===t.getTime();var l=e instanceof RegExp,c=t instanceof RegExp;if(l!==c)return!1;if(l&&c)return e.toString()===t.toString();var v=Ze(e);if(u=v.length,u!==Ze(t).length)return!1;for(o=u;o--!==0;)if(!Bt.call(t,v[o]))return!1;for(o=u;o--!==0;)if(s=v[o],!Ee(e[s],t[s]))return!1;return!0}return e!==e&&t!==t}function Kt(){return Q(Wt,arguments)}function Wt(e,t){var r=new Set(t);return Object.entries(e).reduce(function(n,o){var u=o[0],s=o[1];return r.has(u)||(n[u]=s),n},{})}function Gt(){return Q(Jt,arguments)}function Jt(e,t){return Object.keys(e).reduce(function(r,n){return t(e[n],n)||(r[n]=e[n]),r},{})}function Xt(){return Q(Qt,arguments)}function Qt(e,t,r){for(var n=e,o=0,u=t;o<u.length;o++){var s=u[o];if(n==null||n[s]==null)return r;n=n[s]}return n}function W(){return Q(Zt,arguments,W.lazy)}function Zt(e){return zt(e,W.lazy())}(function(e){function t(){var r=new Set;return function(n){return r.has(n)?{done:!1,hasNext:!1}:(r.add(n),{done:!1,hasNext:!0,next:n})}}e.lazy=t})(W||(W={}));const Yt=(e="on",t)=>{if(Array.isArray(t))return t.some(r=>r===!0||r===e);if(typeof t=="boolean")return t;if(typeof t=="string")return t===e},Nt=(e="on",t)=>{if(typeof t=="string")return t===e},er={initial:"onBlur",whenTouched:"onChange",whenSubmitted:"onChange"},tr=({clearError:e,validate:t,defaultValue:r,touched:n,setTouched:o,hasBeenSubmitted:u,validationBehavior:s,name:i})=>{const a={...er,...s};return(l={})=>{const c=u?a.whenSubmitted:n?a.whenTouched:a.initial,v={...l,onChange:(...h)=>{var f;return c==="onChange"?t():e(),(f=l==null?void 0:l.onChange)==null?void 0:f.call(l,...h)},onBlur:(...h)=>{var f;return c==="onBlur"&&t(),o(!0),(f=l==null?void 0:l.onBlur)==null?void 0:f.call(l,...h)},name:i};return l.type==="checkbox"?v.defaultChecked=Yt(l.value,r):l.type==="radio"?v.defaultChecked=Nt(l.value,r):l.value===void 0&&(v.defaultValue=r),Gt(v,h=>h===void 0)}},Oe=e=>{if(e.length===0)return[];const t=e.match(/^\[(.+?)\](.*)$/)||e.match(/^\.?([^\.\[\]]+)(.*)$/);if(t){const[r,n,o]=t;return[/^\d+$/.test(n)?Number(n):n,...Oe(o)]}return[e]};function $(e,t,r){return rr(e,Oe(t),r)}function rr(e,t,r){var s;const n=t.slice(0,-1),o=t[t.length-1];let u=e;for(let i=0;i<n.length;i++){const a=n[i];if(u[a]===void 0){const l=(s=n[i+1])!=null?s:o;u[a]=typeof l=="number"?[]:{}}u=u[a]}return u[o]=r,e}const _=(e,t)=>Xt(e,Oe(t),void 0);var nr=!0,de="Invariant failed";function j(e,t){if(!e){if(nr)throw new Error(de);var r=typeof t=="function"?t():t,n=r?"".concat(de,": ").concat(r):de;throw new Error(n)}}const q="__rvfInternalFormId",or="__rvfInternalFormDefaults",ct=e=>`${or}_${e}`,ft=p.createContext(null),Ce=e=>({hydrateTo:()=>e,map:t=>Ce(t(e))}),Ae=()=>({hydrateTo:e=>e,map:()=>Ae()}),ur=(e,t)=>t?Ae():Ce(e),z={serverData:Ce,hydratedData:Ae,from:ur},Ye=e=>{let t;const r=new Set,n=(a,l)=>{const c=typeof a=="function"?a(t):a;if(!Object.is(c,t)){const v=t;t=(l!=null?l:typeof c!="object")?c:Object.assign({},t,c),r.forEach(h=>h(t,v))}},o=()=>t,i={setState:n,getState:o,subscribe:a=>(r.add(a),()=>r.delete(a)),destroy:()=>r.clear()};return t=e(n,o,i),i},sr=e=>e?Ye(e):Ye;var dt={exports:{}},mt={},vt={exports:{}},ht={};/**
2
2
  * @license React
3
3
  * use-sync-external-store-shim.production.min.js
4
4
  *
@@ -14,8 +14,8 @@
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);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
- * @remix-run/server-runtime v1.6.5
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;var Pr=dt.exports;const{useSyncExternalStoreWithSelector:wr}=Pr;function Ir(e,t=e.getState,r){const n=wr(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)=>Ir(t,n,o);return Object.assign(r,t),r},Dr=e=>e?Ne(e):Ne;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){var t;return!!e&&(function(r){if(!r||typeof r!="object")return!1;var n=Object.getPrototypeOf(r);if(n===null)return!0;var o=Object.hasOwnProperty.call(n,"constructor")&&n.constructor;return o===Object||typeof o=="function"&&Function.toString.call(o)===Mr}(e)||Array.isArray(e)||!!e[it]||!!(!((t=e.constructor)===null||t===void 0)&&t[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 Or(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 Cr(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function Te(e){return kr&&e instanceof Map}function je(e){return Rr&&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=_r(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=Ar),Object.freeze(e),t&&G(e,function(r,n){return Re(n,!0)},!0)),e}function Ar(){w(2)}function Me(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function D(e){var t=Ur[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(Tr),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 Tr(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 jr(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&&Or(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",kr=typeof Map!="undefined",Rr=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",Mr=""+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,_r=Object.getOwnPropertyDescriptors||function(e){var t={};return Ue(e).forEach(function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)}),t},Ur={},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(Cr(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 $r=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=jr(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 $r,xr=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 Hr=e=>(t,r,n)=>(n.setState=(o,u,...s)=>{const i=typeof o=="function"?xr(o):o;return t(i,u,...s)},e(n.setState,r,n)),Lr=Hr,zr=(e,t)=>{if(typeof Object.getPrototypeOf(e).requestSubmit=="function"){e.requestSubmit(t);return}if(t){Br(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 Br(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=()=>{},qr={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}}},Kr=(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."),zr(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=Dr()(Lr((e,t)=>({forms:{},form:r=>{var n;return(n=t().forms[r])!=null?n:qr},cleanupForm:r=>{e(n=>{delete n.forms[r]})},registerForm:r=>{t().forms[r]||e(n=>{n.forms[r]=Kr(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)},Wr=({fetcher:e})=>{const t=K.useTransition();return e?e.state==="submitting":!!t.submission},Gr=(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)},Jr=(e,t)=>d(e,r=>_(r.currentDefaultValues,t)),xe=(e,t)=>{const r=Et(t),n=Jr(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),Xr=e=>d(e,t=>t.validate),Qr=()=>()=>{},wt=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.registerReceiveFocus)!=null?n:Qr}),Zr={},Yr=e=>d(e,t=>{var r,n;return(n=(r=t.formProps)==null?void 0:r.defaultValues)!=null?n:Zr}),Nr=({formId:e})=>d(e,t=>t.setTouched),en=e=>d(e,t=>t.touchedFields),tn=e=>d(e,t=>t.fieldErrors),It=e=>d(e,t=>t.setFieldErrors),rn=e=>d(e,t=>t.resetFormElement),nn=e=>d(e,t=>t.submit),on=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.action}),un=e=>d(e,t=>{var r;return(r=t.formProps)==null?void 0:r.subaction}),sn=e=>d(e,t=>t.getValues),ln=(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])},an=(e,t)=>{Dt(e,t);const r=d(e.formId,u=>u.controlledFields.setValue),n=p.useCallback(u=>r(t,u),[t,r]);return[ln(e,t),n]},cn=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)},fn=(e,t)=>{const{formId:r,handleReceiveFocus:n}=t!=null?t:{},o=O(r,"useField"),u=xe(e,o),[s,i]=Gr(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])},dn=(e,t)=>{const r=O(t,"useControlField"),[n,o]=an(r,e);return[n,o]},mn=e=>{const t=O(e,"useControlField");return cn(t.formId)};/**
18
+ * @remix-run/server-runtime v1.7.6
19
19
  *
20
20
  * Copyright (c) Remix Software Inc.
21
21
  *
@@ -23,5 +23,5 @@
23
23
  * LICENSE.md file in the root directory of this source tree.
24
24
  *
25
25
  * @license MIT
26
- */const mn=(e,t={})=>{let r=typeof t=="number"?{status:t}:t,n=new Headers(r.headers);return n.has("Content-Type")||n.set("Content-Type","application/json; charset=utf-8"),new Response(JSON.stringify(e),{...r,headers:n})};function vn(e,t,r){return mn({fieldErrors:e.fieldErrors,subaction:e.subaction,repopulateFields:t,formId:e.formId},{status:422,...r})}const hn=(e,t)=>({[ct(e)]:t});class At{constructor(){this.dict=new Map,this.add=(t,r)=>{this.dict.has(t)?this.dict.get(t).push(r):this.dict.set(t,[r])},this.delete=t=>{this.dict.delete(t)},this.remove=(t,r)=>{if(!this.dict.has(t))return;const n=this.dict.get(t),o=n.indexOf(r);o!==-1&&n.splice(o,1),n.length===0&&this.dict.delete(t)},this.getAll=t=>{var r;return(r=this.dict.get(t))!=null?r:[]},this.entries=()=>this.dict.entries(),this.values=()=>this.dict.values(),this.has=t=>this.dict.has(t)}}const pn=()=>{const e=p.useRef(null);return p.useCallback(()=>(e.current||(e.current=new At),e.current),[])};function Tt(e,t){const r=p.useRef(!1);p.useEffect(()=>{e&&(r.current=!0),!e&&r.current&&(r.current=!1,t())})}const yn=e=>t=>{e.filter(Boolean).forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})},be=typeof window!="undefined"?p.useLayoutEffect:p.useEffect,Fn=e=>{const t=p.useRef(e),r=t.current===e||Ee(t.current,e);return p.useEffect(()=>{r||(t.current=e)}),r?t.current:e},bn=e=>new FormData(e);function En(e){return e!==null}const gn=(e,t,r)=>{var u;const n=[...r.elements].map(s=>{const i=s instanceof RadioNodeList?s[0]:s;return i instanceof HTMLElement&&"name"in i?i.name:null}).filter(En).filter(s=>s in e),o=W(n);for(const s of o){if(t.has(s)){t.getAll(s).forEach(a=>{a()});break}const i=r.elements.namedItem(s);if(!!i){if(i instanceof RadioNodeList){const a=(u=[...i].filter(l=>l instanceof HTMLInputElement).find(l=>l.value===i.value))!=null?u:i[0];if(a&&a instanceof HTMLInputElement){a.focus();break}}if(i instanceof HTMLElement){if(i instanceof HTMLInputElement&&i.type==="hidden")continue;i.focus();break}}}},Sn=e=>{const[t]=p.useState(()=>Symbol("remix-validated-form-id"));return e!=null?e:t},Vn=({resetAfterSubmit:e,formRef:t})=>{const r=Ot(),n=Ct();return Tt(r,()=>{var o;n&&e&&((o=t.current)==null||o.reset())}),null};function Pn(e){let t=!1;return new Proxy(e,{get:(r,n)=>n==="preventDefault"?()=>{t=!0}:n==="defaultPrevented"?t:r[n]})}function wn({validator:e,onSubmit:t,children:r,fetcher:n,action:o,defaultValues:u,formRef:s,onReset:i,subaction:a,resetAfterSubmit:l=!1,disableFocusOnError:c,method:v,replace:h,id:f,...F}){var Ge;const y=Sn(f),A=Fn(u),T=p.useMemo(()=>({formId:y,action:o,subaction:a,defaultValuesProp:A,fetcher:n}),[o,n,y,A,a]),C=$e(T),k=bt(T),ce=Kr(T),R=p.useRef(null),kt=(Ge=n==null?void 0:n.Form)!=null?Ge:K.Form,Rt=K.useSubmit(),Z=It(y),Mt=d(y,m=>m.setFieldError),_t=d(y,m=>m.reset),Ut=d(y,m=>m.startSubmit),fe=d(y,m=>m.endSubmit),ze=d(y,m=>m.syncFormProps),Be=d(y,m=>m.setFormElement),qe=De(m=>m.cleanupForm),Ke=De(m=>m.registerForm),Y=pn(),We=p.useCallback((m,N)=>(Y().add(m,N),()=>{Y().remove(m,N)}),[Y]);be(()=>(Ke(y),()=>qe(y)),[qe,y,Ke]),be(()=>{var m;ze({action:o,defaultValues:(m=A!=null?A:k)!=null?m:{},subaction:a,registerReceiveFocus:We,validator:e})},[o,A,We,a,ze,k,e]),be(()=>{Be(R.current)},[Be]),p.useEffect(()=>{var m;Z((m=C==null?void 0:C.fieldErrors)!=null?m:{})},[C==null?void 0:C.fieldErrors,Z,Mt]),Tt(ce,()=>{fe()});const $t=async(m,N,xt)=>{Ut();const I=xt.submitter,Je=bn(m.currentTarget);I!=null&&I.name&&Je.append(I.name,I.value);const ee=await e.validate(Je);if(ee.error)Z(ee.error.fieldErrors),fe(),c||gn(ee.error.fieldErrors,Y(),R.current);else{Z({});const Xe=Pn(m);if(await(t==null?void 0:t(ee.data,Xe)),Xe.defaultPrevented){fe();return}n?n.submit(I||m.currentTarget):Rt(I||N,{replace:h,method:(I==null?void 0:I.formMethod)||v})}};return P.default.createElement(kt,{ref:yn([R,s]),...F,id:f,action:o,method:v,replace:h,onSubmit:m=>{m.preventDefault(),$t(m,m.currentTarget,m.nativeEvent)},onReset:m=>{i==null||i(m),!m.defaultPrevented&&_t()}},P.default.createElement(ft.Provider,{value:T},P.default.createElement(P.default.Fragment,null,P.default.createElement(Vn,{formRef:R,resetAfterSubmit:l}),a&&P.default.createElement("input",{type:"hidden",value:a,name:"subaction"}),f&&P.default.createElement("input",{type:"hidden",value:f,name:q}),r)))}const lt=e=>{const t=new At;return e.forEach(([r,n])=>t.add(r,n)),[...t.entries()].reduce((r,[n,o])=>$(r,n,o.length===1?o[0]:o),{})},at=e=>"entries"in e&&typeof e.entries=="function"?lt([...e.entries()]):lt(Object.entries(e)),In=e=>Kt(e,[q]);function Dn(e){return{validate:async t=>{const r=at(t),n=await e.validate(In(r));return n.error?{data:void 0,error:{fieldErrors:n.error,subaction:r.subaction,formId:r[q]},submittedData:r,formId:r[q]}:{data:n.data,error:void 0,submittedData:r,formId:r[q]}},validateField:(t,r)=>e.validateField(at(t),r)}}const On=e=>{const t=O(e,"useFormState"),r=Vt(t.formId),n=He(t.formId),o=Nr(t.formId),u=Pt(t.formId),s=nn(t.formId),i=on(t.formId),a=Zr(t.formId),c=Et(t).hydrateTo(a),v=en(t.formId),f=Ft(t).hydrateTo(v);return p.useMemo(()=>({action:s,subaction:i,defaultValues:c,fieldErrors:f!=null?f:{},hasBeenSubmitted:n,isSubmitting:r,touchedFields:o,isValid:u}),[s,n,c,f,r,u,i,o])},Cn=e=>{const t=O(e,"useFormHelpers"),r=Yr(t),n=Le(t.formId),o=Jr(t.formId),u=St(t),s=It(t.formId),i=tn(t.formId),a=rn(t.formId),l=un(t.formId);return p.useMemo(()=>({setTouched:r,validateField:n,clearError:u,validate:o,clearAllErrors:()=>s({}),reset:i,submit:a,getValues:l}),[u,i,s,r,a,o,n,l])},An=e=>{const t=O(e,"useFormContext"),r=On(e),{clearError:n,setTouched:o,validateField:u,clearAllErrors:s,validate:i,reset:a,submit:l,getValues:c}=Cn(e),v=wt(t.formId),h=p.useCallback((...f)=>{f.forEach(F=>{n(F)})},[n]);return p.useMemo(()=>({...r,setFieldTouched:o,validateField:u,clearError:h,registerReceiveFocus:v,clearAllErrors:s,validate:i,reset:a,submit:l,getValues:c}),[s,h,v,a,o,r,l,i,u,c])},jt=(e,t,r)=>{const n=xe(t,e);Dt(e,t);const o=He(e.formId),u=Le(e.formId),s=gt(t,e),i={initial:"onSubmit",whenSubmitted:"onChange",...r},a=o?i.whenSubmitted:i.initial,l=p.useCallback(()=>{a==="onChange"&&u(t)},[a,t,u]);j(n==null||Array.isArray(n),`FieldArray: defaultValue value for ${t} must be an array, null, or undefined`);const c=d(e.formId,f=>f.controlledFields.array),v=p.useMemo(()=>({push:f=>{c.push(t,f),l()},swap:(f,F)=>{c.swap(t,f,F),l()},move:(f,F)=>{c.move(t,f,F),l()},insert:(f,F)=>{c.insert(t,f,F),l()},unshift:f=>{c.unshift(t,f),l()},remove:f=>{c.remove(t,f),l()},pop:()=>{c.pop(t),l()},replace:(f,F)=>{c.replace(t,f,F),l()}}),[c,t,l]);return[p.useMemo(()=>n!=null?n:[],[n]),v,s]};function Tn(e,{formId:t,validationBehavior:r}={}){const n=O(t,"FieldArray");return jt(n,e,r)}const jn=({name:e,children:t,formId:r,validationBehavior:n})=>{const o=O(r,"FieldArray"),[u,s,i]=jt(o,e,n);return P.default.createElement(P.default.Fragment,null,t(u,s,i))};exports.FieldArray=jn;exports.ValidatedForm=wn;exports.createValidator=Dn;exports.setFormDefaults=hn;exports.useControlField=fn;exports.useField=cn;exports.useFieldArray=Tn;exports.useFormContext=An;exports.useIsSubmitting=Ot;exports.useIsValid=Ct;exports.useUpdateControlledField=dn;exports.validationError=vn;
26
+ */const vn=(e,t={})=>{let r=typeof t=="number"?{status:t}:t,n=new Headers(r.headers);return n.has("Content-Type")||n.set("Content-Type","application/json; charset=utf-8"),new Response(JSON.stringify(e),{...r,headers:n})};function hn(e,t,r){return vn({fieldErrors:e.fieldErrors,subaction:e.subaction,repopulateFields:t,formId:e.formId},{status:422,...r})}const pn=(e,t)=>({[ct(e)]:t});class At{constructor(){this.dict=new Map,this.add=(t,r)=>{this.dict.has(t)?this.dict.get(t).push(r):this.dict.set(t,[r])},this.delete=t=>{this.dict.delete(t)},this.remove=(t,r)=>{if(!this.dict.has(t))return;const n=this.dict.get(t),o=n.indexOf(r);o!==-1&&n.splice(o,1),n.length===0&&this.dict.delete(t)},this.getAll=t=>{var r;return(r=this.dict.get(t))!=null?r:[]},this.entries=()=>this.dict.entries(),this.values=()=>this.dict.values(),this.has=t=>this.dict.has(t)}}const yn=()=>{const e=p.useRef(null);return p.useCallback(()=>(e.current||(e.current=new At),e.current),[])};function Tt(e,t){const r=p.useRef(!1);p.useEffect(()=>{e&&(r.current=!0),!e&&r.current&&(r.current=!1,t())})}const Fn=e=>t=>{e.filter(Boolean).forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})},be=typeof window!="undefined"?p.useLayoutEffect:p.useEffect,bn=e=>{const t=p.useRef(e),r=t.current===e||Ee(t.current,e);return p.useEffect(()=>{r||(t.current=e)}),r?t.current:e},En=e=>new FormData(e);function gn(e){return e!==null}const Sn=(e,t,r)=>{var u;const n=[...r.elements].map(s=>{const i=s instanceof RadioNodeList?s[0]:s;return i instanceof HTMLElement&&"name"in i?i.name:null}).filter(gn).filter(s=>s in e),o=W(n);for(const s of o){if(t.has(s)){t.getAll(s).forEach(a=>{a()});break}const i=r.elements.namedItem(s);if(!!i){if(i instanceof RadioNodeList){const a=(u=[...i].filter(l=>l instanceof HTMLInputElement).find(l=>l.value===i.value))!=null?u:i[0];if(a&&a instanceof HTMLInputElement){a.focus();break}}if(i instanceof HTMLElement){if(i instanceof HTMLInputElement&&i.type==="hidden")continue;i.focus();break}}}},Vn=e=>{const[t]=p.useState(()=>Symbol("remix-validated-form-id"));return e!=null?e:t},Pn=({resetAfterSubmit:e,formRef:t})=>{const r=Ot(),n=Ct();return Tt(r,()=>{var o;n&&e&&((o=t.current)==null||o.reset())}),null};function wn(e){let t=!1;return new Proxy(e,{get:(r,n)=>n==="preventDefault"?()=>{t=!0}:n==="defaultPrevented"?t:r[n]})}function In({validator:e,onSubmit:t,children:r,fetcher:n,action:o,defaultValues:u,formRef:s,onReset:i,subaction:a,resetAfterSubmit:l=!1,disableFocusOnError:c,method:v,replace:h,id:f,...F}){var Ge;const y=Vn(f),A=bn(u),T=p.useMemo(()=>({formId:y,action:o,subaction:a,defaultValuesProp:A,fetcher:n}),[o,n,y,A,a]),C=$e(T),k=bt(T),ce=Wr(T),R=p.useRef(null),kt=(Ge=n==null?void 0:n.Form)!=null?Ge:K.Form,Rt=K.useSubmit(),Z=It(y),Mt=d(y,m=>m.setFieldError),_t=d(y,m=>m.reset),Ut=d(y,m=>m.startSubmit),fe=d(y,m=>m.endSubmit),ze=d(y,m=>m.syncFormProps),Be=d(y,m=>m.setFormElement),qe=De(m=>m.cleanupForm),Ke=De(m=>m.registerForm),Y=yn(),We=p.useCallback((m,N)=>(Y().add(m,N),()=>{Y().remove(m,N)}),[Y]);be(()=>(Ke(y),()=>qe(y)),[qe,y,Ke]),be(()=>{var m;ze({action:o,defaultValues:(m=A!=null?A:k)!=null?m:{},subaction:a,registerReceiveFocus:We,validator:e})},[o,A,We,a,ze,k,e]),be(()=>{Be(R.current)},[Be]),p.useEffect(()=>{var m;Z((m=C==null?void 0:C.fieldErrors)!=null?m:{})},[C==null?void 0:C.fieldErrors,Z,Mt]),Tt(ce,()=>{fe()});const $t=async(m,N,xt)=>{Ut();const I=xt.submitter,Je=En(m.currentTarget);I!=null&&I.name&&Je.append(I.name,I.value);const ee=await e.validate(Je);if(ee.error)Z(ee.error.fieldErrors),fe(),c||Sn(ee.error.fieldErrors,Y(),R.current);else{Z({});const Xe=wn(m);if(await(t==null?void 0:t(ee.data,Xe)),Xe.defaultPrevented){fe();return}n?n.submit(I||m.currentTarget):Rt(I||N,{replace:h,method:(I==null?void 0:I.formMethod)||v})}};return P.default.createElement(kt,{ref:Fn([R,s]),...F,id:f,action:o,method:v,replace:h,onSubmit:m=>{m.preventDefault(),$t(m,m.currentTarget,m.nativeEvent)},onReset:m=>{i==null||i(m),!m.defaultPrevented&&_t()}},P.default.createElement(ft.Provider,{value:T},P.default.createElement(P.default.Fragment,null,P.default.createElement(Pn,{formRef:R,resetAfterSubmit:l}),a&&P.default.createElement("input",{type:"hidden",value:a,name:"subaction"}),f&&P.default.createElement("input",{type:"hidden",value:f,name:q}),r)))}const lt=e=>{const t=new At;return e.forEach(([r,n])=>t.add(r,n)),[...t.entries()].reduce((r,[n,o])=>$(r,n,o.length===1?o[0]:o),{})},at=e=>"entries"in e&&typeof e.entries=="function"?lt([...e.entries()]):lt(Object.entries(e)),Dn=e=>Kt(e,[q]);function On(e){return{validate:async t=>{const r=at(t),n=await e.validate(Dn(r));return n.error?{data:void 0,error:{fieldErrors:n.error,subaction:r.subaction,formId:r[q]},submittedData:r,formId:r[q]}:{data:n.data,error:void 0,submittedData:r,formId:r[q]}},validateField:(t,r)=>e.validateField(at(t),r)}}const Cn=e=>{const t=O(e,"useFormState"),r=Vt(t.formId),n=He(t.formId),o=en(t.formId),u=Pt(t.formId),s=on(t.formId),i=un(t.formId),a=Yr(t.formId),c=Et(t).hydrateTo(a),v=tn(t.formId),f=Ft(t).hydrateTo(v);return p.useMemo(()=>({action:s,subaction:i,defaultValues:c,fieldErrors:f!=null?f:{},hasBeenSubmitted:n,isSubmitting:r,touchedFields:o,isValid:u}),[s,n,c,f,r,u,i,o])},An=e=>{const t=O(e,"useFormHelpers"),r=Nr(t),n=Le(t.formId),o=Xr(t.formId),u=St(t),s=It(t.formId),i=rn(t.formId),a=nn(t.formId),l=sn(t.formId);return p.useMemo(()=>({setTouched:r,validateField:n,clearError:u,validate:o,clearAllErrors:()=>s({}),reset:i,submit:a,getValues:l}),[u,i,s,r,a,o,n,l])},Tn=e=>{const t=O(e,"useFormContext"),r=Cn(e),{clearError:n,setTouched:o,validateField:u,clearAllErrors:s,validate:i,reset:a,submit:l,getValues:c}=An(e),v=wt(t.formId),h=p.useCallback((...f)=>{f.forEach(F=>{n(F)})},[n]);return p.useMemo(()=>({...r,setFieldTouched:o,validateField:u,clearError:h,registerReceiveFocus:v,clearAllErrors:s,validate:i,reset:a,submit:l,getValues:c}),[s,h,v,a,o,r,l,i,u,c])},jt=(e,t,r)=>{const n=xe(t,e);Dt(e,t);const o=He(e.formId),u=Le(e.formId),s=gt(t,e),i={initial:"onSubmit",whenSubmitted:"onChange",...r},a=o?i.whenSubmitted:i.initial,l=p.useCallback(()=>{a==="onChange"&&u(t)},[a,t,u]);j(n==null||Array.isArray(n),`FieldArray: defaultValue value for ${t} must be an array, null, or undefined`);const c=d(e.formId,f=>f.controlledFields.array),v=p.useMemo(()=>({push:f=>{c.push(t,f),l()},swap:(f,F)=>{c.swap(t,f,F),l()},move:(f,F)=>{c.move(t,f,F),l()},insert:(f,F)=>{c.insert(t,f,F),l()},unshift:f=>{c.unshift(t,f),l()},remove:f=>{c.remove(t,f),l()},pop:()=>{c.pop(t),l()},replace:(f,F)=>{c.replace(t,f,F),l()}}),[c,t,l]);return[p.useMemo(()=>n!=null?n:[],[n]),v,s]};function jn(e,{formId:t,validationBehavior:r}={}){const n=O(t,"FieldArray");return jt(n,e,r)}const kn=({name:e,children:t,formId:r,validationBehavior:n})=>{const o=O(r,"FieldArray"),[u,s,i]=jt(o,e,n);return P.default.createElement(P.default.Fragment,null,t(u,s,i))};exports.FieldArray=kn;exports.ValidatedForm=In;exports.createValidator=On;exports.setFormDefaults=pn;exports.useControlField=dn;exports.useField=fn;exports.useFieldArray=jn;exports.useFormContext=Tn;exports.useIsSubmitting=Ot;exports.useIsValid=Ct;exports.useUpdateControlledField=mn;exports.validationError=hn;
27
27
  //# sourceMappingURL=remix-validated-form.cjs.js.map