@ram_28/kf-ai-sdk 1.0.22 → 1.0.23

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/dist/auth.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var z=Object.defineProperty;var J=(e,t,n)=>t in e?z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var M=(e,t,n)=>J(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("react/jsx-runtime"),r=require("react"),K=require("@tanstack/react-query"),x=require("./client-DxjRcEtN.cjs"),H={sessionEndpoint:"/api/id",providers:{google:{loginPath:"/api/auth/google/login",logoutPath:"/api/auth/logout"}},defaultProvider:"google",autoRedirect:!1,sessionCheckInterval:0,retry:{count:3,delay:1e3},staleTime:5*60*1e3,refetchOnWindowFocus:!1,refetchOnReconnect:!0};let h={...H};function N(e){h={...h,...e,providers:{...h.providers,...e.providers},retry:{...h.retry,...e.retry}}}function X(e,t){h.providers[e]=t}function b(){return{...h}}function k(){return h.baseUrl||x.getApiBaseUrl()||(typeof window<"u"?window.location.origin:"")}function Y(e){return h.providers[e]}function Z(){h={...H}}class m extends Error{constructor(n,o){super(n);M(this,"statusCode");this.name="AuthenticationError",this.statusCode=o}}async function D(){const e=b(),t=k(),n=x.getDefaultHeaders(),o=await fetch(`${t}${e.sessionEndpoint}`,{method:"GET",headers:n,credentials:"include"});if(!o.ok)throw o.status===401||o.status===403?new m("Not authenticated",o.status):new m(`Session check failed: ${o.statusText}`,o.status);return await o.json()}function W(e,t){return new Promise(()=>{const n=b(),o=k();if(!o)throw new Error('Auth base URL is not configured. Call setApiBaseUrl("https://...") or configureAuth({ baseUrl: "https://..." }) first.');const i=e||n.defaultProvider,c=Y(i);if(!c){const w=Object.keys(n.providers||{}).join(", ")||"none";throw new Error(`Auth provider "${i}" is not configured. Available providers: ${w}`)}if(!c.loginPath)throw new Error(`Login path not configured for provider "${i}". Configure it with: configureAuth({ providers: { ${i}: { loginPath: '/api/auth/...' } } })`);let f;try{f=new URL(`${o}${c.loginPath}`)}catch{throw new Error(`Failed to construct login URL. Base URL: "${o}", Login path: "${c.loginPath}". Ensure baseUrl is a valid URL (e.g., "https://example.com").`)}(t!=null&&t.callbackUrl||n.callbackUrl)&&f.searchParams.set("callbackUrl",(t==null?void 0:t.callbackUrl)||n.callbackUrl||window.location.href),t!=null&&t.params&&Object.entries(t.params).forEach(([w,v])=>{f.searchParams.set(w,v)}),window.location.href=f.toString()})}async function ee(e){const t=b(),n=k(),o=x.getDefaultHeaders(),i=Y(t.defaultProvider),c=i==null?void 0:i.logoutPath;if(c&&(e==null?void 0:e.callLogoutEndpoint)!==!1)try{await fetch(`${n}${c}`,{method:"POST",headers:o,credentials:"include"})}catch(f){console.warn("Logout endpoint call failed:",f)}e!=null&&e.redirectUrl?window.location.href=e.redirectUrl:t.loginRedirectUrl&&(window.location.href=t.loginRedirectUrl)}const G=r.createContext(null),_=["auth","session"];function te({children:e,config:t,onAuthChange:n,onError:o,loadingComponent:i,unauthenticatedComponent:c,skipInitialCheck:f=!1}){const w=r.useRef(!1);t&&!w.current&&(N(t),w.current=!0);const v=K.useQueryClient(),l=b(),{data:a,isLoading:g,error:U,refetch:R,isFetching:C}=K.useQuery({queryKey:_,queryFn:D,enabled:!f,retry:(s,y)=>y instanceof m&&(y.statusCode===401||y.statusCode===403)?!1:s<l.retry.count,retryDelay:l.retry.delay,staleTime:l.staleTime,gcTime:l.staleTime*2,refetchOnWindowFocus:l.refetchOnWindowFocus??!0,refetchOnReconnect:l.refetchOnReconnect??!0,refetchInterval:l.sessionCheckInterval||!1}),[S,L]=r.useState(null),d=r.useMemo(()=>g||C?"loading":Object.keys((a==null?void 0:a.userDetails)||{}).length>0?"authenticated":"unauthenticated",[g,C,a]),u=(a==null?void 0:a.userDetails)||null,$=(a==null?void 0:a.staticBaseUrl)||null,O=(a==null?void 0:a.buildId)||null,j=d==="authenticated",E=r.useRef(n);E.current=n;const P=r.useRef(o);P.current=o,r.useEffect(()=>{var s;g||(s=E.current)==null||s.call(E,d,u)},[d,u,g]),r.useEffect(()=>{var s;U&&(L(U),(s=P.current)==null||s.call(P,U))},[U]),r.useEffect(()=>{d==="unauthenticated"&&l.autoRedirect&&!g&&W()},[d,g,l.autoRedirect]);const B=r.useCallback((s,y)=>{W(s,y)},[]),p=r.useCallback(async s=>{v.removeQueries({queryKey:_}),await ee(s)},[v]),q=r.useCallback(async()=>{if(C)return a||null;try{return(await R()).data||null}catch(s){return L(s),null}},[R,C,a]),I=r.useCallback(s=>(u==null?void 0:u.Role)===s,[u]),T=r.useCallback(s=>s.includes((u==null?void 0:u.Role)||""),[u]),F=r.useCallback(()=>{L(null)},[]),Q=r.useCallback(()=>{R()},[R]),V=r.useMemo(()=>({user:u,staticBaseUrl:$,buildId:O,status:d,isAuthenticated:j,isLoading:g,login:B,logout:p,refreshSession:q,hasRole:I,hasAnyRole:T,error:S,clearError:F,_forceCheck:Q}),[u,$,O,d,j,g,B,p,q,I,T,S,F,Q]);return d==="loading"&&i?A.jsx(A.Fragment,{children:i}):d==="unauthenticated"&&!l.autoRedirect&&c?A.jsx(A.Fragment,{children:c}):A.jsx(G.Provider,{value:V,children:e})}function re(){const e=r.useContext(G);if(!e)throw new Error("useAuth must be used within an AuthProvider");return e}function ne(){const e=re();return r.useMemo(()=>({user:e.user,staticBaseUrl:e.staticBaseUrl,buildId:e.buildId,status:e.status,isAuthenticated:e.isAuthenticated,isLoading:e.isLoading,login:e.login,logout:e.logout,refreshSession:e.refreshSession,hasRole:e.hasRole,hasAnyRole:e.hasAnyRole,error:e.error,clearError:e.clearError}),[e.user,e.staticBaseUrl,e.buildId,e.status,e.isAuthenticated,e.isLoading,e.login,e.logout,e.refreshSession,e.hasRole,e.hasAnyRole,e.error,e.clearError])}exports.AuthProvider=te;exports.AuthenticationError=m;exports.configureAuth=N;exports.getAuthBaseUrl=k;exports.getAuthConfig=b;exports.resetAuthConfig=Z;exports.setAuthProvider=X;exports.useAuth=ne;
1
+ "use strict";var z=Object.defineProperty;var J=(e,t,n)=>t in e?z(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var M=(e,t,n)=>J(e,typeof t!="symbol"?t+"":t,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("react/jsx-runtime"),r=require("react"),_=require("@tanstack/react-query"),x=require("./client-DxjRcEtN.cjs"),H={sessionEndpoint:"/api/id",providers:{google:{loginPath:"/api/auth/google/login",logoutPath:"/api/auth/logout"}},defaultProvider:"google",autoRedirect:!1,sessionCheckInterval:0,retry:{count:3,delay:1e3},staleTime:5*60*1e3,refetchOnWindowFocus:!1,refetchOnReconnect:!0};let h={...H};function N(e){h={...h,...e,providers:{...h.providers,...e.providers},retry:{...h.retry,...e.retry}}}function X(e,t){h.providers[e]=t}function b(){return{...h}}function k(){return h.baseUrl||x.getApiBaseUrl()||(typeof window<"u"?window.location.origin:"")}function Y(e){return h.providers[e]}function Z(){h={...H}}class m extends Error{constructor(n,o){super(n);M(this,"statusCode");this.name="AuthenticationError",this.statusCode=o}}async function D(){const e=b(),t=k(),n=x.getDefaultHeaders(),o=await fetch(`${t}${e.sessionEndpoint}`,{method:"GET",headers:n,credentials:"include"});if(!o.ok)throw o.status===401||o.status===403?new m("Not authenticated",o.status):new m(`Session check failed: ${o.statusText}`,o.status);return await o.json()}function K(e,t){return new Promise(()=>{const n=b(),o=k();if(!o)throw new Error('Auth base URL is not configured. Call setApiBaseUrl("https://...") or configureAuth({ baseUrl: "https://..." }) first.');const i=e||n.defaultProvider,c=Y(i);if(!c){const w=Object.keys(n.providers||{}).join(", ")||"none";throw new Error(`Auth provider "${i}" is not configured. Available providers: ${w}`)}if(!c.loginPath)throw new Error(`Login path not configured for provider "${i}". Configure it with: configureAuth({ providers: { ${i}: { loginPath: '/api/auth/...' } } })`);let f;try{f=new URL(`${o}${c.loginPath}`)}catch{throw new Error(`Failed to construct login URL. Base URL: "${o}", Login path: "${c.loginPath}". Ensure baseUrl is a valid URL (e.g., "https://example.com").`)}(t!=null&&t.callbackUrl||n.callbackUrl)&&f.searchParams.set("callbackUrl",(t==null?void 0:t.callbackUrl)||n.callbackUrl||window.location.href),t!=null&&t.params&&Object.entries(t.params).forEach(([w,v])=>{f.searchParams.set(w,v)}),window.open(f.toString(),"_blank")})}async function ee(e){const t=b(),n=k(),o=x.getDefaultHeaders(),i=Y(t.defaultProvider),c=i==null?void 0:i.logoutPath;if(c&&(e==null?void 0:e.callLogoutEndpoint)!==!1)try{await fetch(`${n}${c}`,{method:"POST",headers:o,credentials:"include"})}catch(f){console.warn("Logout endpoint call failed:",f)}e!=null&&e.redirectUrl?window.location.href=e.redirectUrl:t.loginRedirectUrl&&(window.location.href=t.loginRedirectUrl)}const G=r.createContext(null),W=["auth","session"];function te({children:e,config:t,onAuthChange:n,onError:o,loadingComponent:i,unauthenticatedComponent:c,skipInitialCheck:f=!1}){const w=r.useRef(!1);t&&!w.current&&(N(t),w.current=!0);const v=_.useQueryClient(),l=b(),{data:a,isLoading:g,error:U,refetch:R,isFetching:C}=_.useQuery({queryKey:W,queryFn:D,enabled:!f,retry:(s,y)=>y instanceof m&&(y.statusCode===401||y.statusCode===403)?!1:s<l.retry.count,retryDelay:l.retry.delay,staleTime:l.staleTime,gcTime:l.staleTime*2,refetchOnWindowFocus:l.refetchOnWindowFocus??!0,refetchOnReconnect:l.refetchOnReconnect??!0,refetchInterval:l.sessionCheckInterval||!1}),[S,L]=r.useState(null),d=r.useMemo(()=>g||C?"loading":Object.keys((a==null?void 0:a.userDetails)||{}).length>0?"authenticated":"unauthenticated",[g,C,a]),u=(a==null?void 0:a.userDetails)||null,$=(a==null?void 0:a.staticBaseUrl)||null,O=(a==null?void 0:a.buildId)||null,j=d==="authenticated",E=r.useRef(n);E.current=n;const P=r.useRef(o);P.current=o,r.useEffect(()=>{var s;g||(s=E.current)==null||s.call(E,d,u)},[d,u,g]),r.useEffect(()=>{var s;U&&(L(U),(s=P.current)==null||s.call(P,U))},[U]),r.useEffect(()=>{d==="unauthenticated"&&l.autoRedirect&&!g&&K()},[d,g,l.autoRedirect]);const p=r.useCallback((s,y)=>{K(s,y)},[]),B=r.useCallback(async s=>{v.removeQueries({queryKey:W}),await ee(s)},[v]),q=r.useCallback(async()=>{if(C)return a||null;try{return(await R()).data||null}catch(s){return L(s),null}},[R,C,a]),I=r.useCallback(s=>(u==null?void 0:u.Role)===s,[u]),T=r.useCallback(s=>s.includes((u==null?void 0:u.Role)||""),[u]),F=r.useCallback(()=>{L(null)},[]),Q=r.useCallback(()=>{R()},[R]),V=r.useMemo(()=>({user:u,staticBaseUrl:$,buildId:O,status:d,isAuthenticated:j,isLoading:g,login:p,logout:B,refreshSession:q,hasRole:I,hasAnyRole:T,error:S,clearError:F,_forceCheck:Q}),[u,$,O,d,j,g,p,B,q,I,T,S,F,Q]);return d==="loading"&&i?A.jsx(A.Fragment,{children:i}):d==="unauthenticated"&&!l.autoRedirect&&c?A.jsx(A.Fragment,{children:c}):A.jsx(G.Provider,{value:V,children:e})}function re(){const e=r.useContext(G);if(!e)throw new Error("useAuth must be used within an AuthProvider");return e}function ne(){const e=re();return r.useMemo(()=>({user:e.user,staticBaseUrl:e.staticBaseUrl,buildId:e.buildId,status:e.status,isAuthenticated:e.isAuthenticated,isLoading:e.isLoading,login:e.login,logout:e.logout,refreshSession:e.refreshSession,hasRole:e.hasRole,hasAnyRole:e.hasAnyRole,error:e.error,clearError:e.clearError}),[e.user,e.staticBaseUrl,e.buildId,e.status,e.isAuthenticated,e.isLoading,e.login,e.logout,e.refreshSession,e.hasRole,e.hasAnyRole,e.error,e.clearError])}exports.AuthProvider=te;exports.AuthenticationError=m;exports.configureAuth=N;exports.getAuthBaseUrl=k;exports.getAuthConfig=b;exports.resetAuthConfig=Z;exports.setAuthProvider=X;exports.useAuth=ne;
package/dist/auth.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  var X = Object.defineProperty;
2
2
  var Z = (e, t, r) => t in e ? X(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
- var _ = (e, t, r) => Z(e, typeof t != "symbol" ? t + "" : t, r);
3
+ var W = (e, t, r) => Z(e, typeof t != "symbol" ? t + "" : t, r);
4
4
  import { jsx as C, Fragment as N } from "react/jsx-runtime";
5
5
  import { useRef as L, useState as D, useMemo as p, useEffect as k, useCallback as g, createContext as ee, useContext as te } from "react";
6
6
  import { useQueryClient as re, useQuery as ne } from "@tanstack/react-query";
@@ -57,7 +57,7 @@ function we() {
57
57
  class $ extends Error {
58
58
  constructor(r, n) {
59
59
  super(r);
60
- _(this, "statusCode");
60
+ W(this, "statusCode");
61
61
  this.name = "AuthenticationError", this.statusCode = n;
62
62
  }
63
63
  }
@@ -105,7 +105,7 @@ function Y(e, t) {
105
105
  (t == null ? void 0 : t.callbackUrl) || r.callbackUrl || window.location.href
106
106
  ), t != null && t.params && Object.entries(t.params).forEach(([w, U]) => {
107
107
  h.searchParams.set(w, U);
108
- }), window.location.href = h.toString();
108
+ }), window.open(h.toString(), "_blank");
109
109
  });
110
110
  }
111
111
  async function ae(e) {
@@ -139,7 +139,7 @@ function ye({
139
139
  isLoading: f,
140
140
  error: v,
141
141
  refetch: A,
142
- isFetching: m
142
+ isFetching: b
143
143
  } = ne({
144
144
  queryKey: G,
145
145
  queryFn: se,
@@ -151,12 +151,12 @@ function ye({
151
151
  refetchOnWindowFocus: u.refetchOnWindowFocus ?? !0,
152
152
  refetchOnReconnect: u.refetchOnReconnect ?? !0,
153
153
  refetchInterval: u.sessionCheckInterval || !1
154
- }), [S, P] = D(null), l = p(() => f || m ? "loading" : Object.keys((i == null ? void 0 : i.userDetails) || {}).length > 0 ? "authenticated" : "unauthenticated", [f, m, i]), a = (i == null ? void 0 : i.userDetails) || null, O = (i == null ? void 0 : i.staticBaseUrl) || null, B = (i == null ? void 0 : i.buildId) || null, I = l === "authenticated", b = L(r);
155
- b.current = r;
154
+ }), [S, P] = D(null), l = p(() => f || b ? "loading" : Object.keys((i == null ? void 0 : i.userDetails) || {}).length > 0 ? "authenticated" : "unauthenticated", [f, b, i]), a = (i == null ? void 0 : i.userDetails) || null, O = (i == null ? void 0 : i.staticBaseUrl) || null, B = (i == null ? void 0 : i.buildId) || null, I = l === "authenticated", m = L(r);
155
+ m.current = r;
156
156
  const R = L(n);
157
157
  R.current = n, k(() => {
158
158
  var o;
159
- f || (o = b.current) == null || o.call(b, l, a);
159
+ f || (o = m.current) == null || o.call(m, l, a);
160
160
  }, [l, a, f]), k(() => {
161
161
  var o;
162
162
  v && (P(v), (o = R.current) == null || o.call(R, v));
@@ -174,22 +174,22 @@ function ye({
174
174
  },
175
175
  [U]
176
176
  ), j = g(async () => {
177
- if (m)
177
+ if (b)
178
178
  return i || null;
179
179
  try {
180
180
  return (await A()).data || null;
181
181
  } catch (o) {
182
182
  return P(o), null;
183
183
  }
184
- }, [A, m, i]), q = g(
184
+ }, [A, b, i]), q = g(
185
185
  (o) => (a == null ? void 0 : a.Role) === o,
186
186
  [a]
187
187
  ), Q = g(
188
188
  (o) => o.includes((a == null ? void 0 : a.Role) || ""),
189
189
  [a]
190
- ), K = g(() => {
190
+ ), _ = g(() => {
191
191
  P(null);
192
- }, []), W = g(() => {
192
+ }, []), K = g(() => {
193
193
  A();
194
194
  }, [A]), J = p(
195
195
  () => ({
@@ -205,8 +205,8 @@ function ye({
205
205
  hasRole: q,
206
206
  hasAnyRole: Q,
207
207
  error: S,
208
- clearError: K,
209
- _forceCheck: W
208
+ clearError: _,
209
+ _forceCheck: K
210
210
  }),
211
211
  [
212
212
  a,
@@ -221,8 +221,8 @@ function ye({
221
221
  q,
222
222
  Q,
223
223
  S,
224
- K,
225
- W
224
+ _,
225
+ K
226
226
  ]
227
227
  );
228
228
  return l === "loading" && s ? /* @__PURE__ */ C(N, { children: s }) : l === "unauthenticated" && !u.autoRedirect && c ? /* @__PURE__ */ C(N, { children: c }) : /* @__PURE__ */ C(z.Provider, { value: J, children: e });
@@ -370,12 +370,10 @@ export interface UseFormReturnType<T extends Record<string, any> = Record<string
370
370
  isSubmitting: boolean;
371
371
  /** Form submission was successful - direct access */
372
372
  isSubmitSuccessful: boolean;
373
- /** Loading initial schema/data */
374
- isLoadingInitialData: boolean;
375
- /** Loading record data for update */
376
- isLoadingRecord: boolean;
377
- /** Any loading state active */
373
+ /** True during initial load */
378
374
  isLoading: boolean;
375
+ /** True during background operations */
376
+ isFetching: boolean;
379
377
  /** Draft ID for interactive create mode */
380
378
  draftId: string | null;
381
379
  /** Whether draft is being created (interactive create only) */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/useForm.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AAyBjB,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,iBAAiB,CAAC,CAAC,CAAC,CAm8BtB"}
1
+ {"version":3,"file":"useForm.d.ts","sourceRoot":"","sources":["../../../../sdk/components/hooks/useForm/useForm.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AAyBjB,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC7B,iBAAiB,CAAC,CAAC,CAAC,CAo8BtB"}
package/dist/form.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var Ut=Object.defineProperty;var Bt=(e,t,r)=>t in e?Ut(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var pe=(e,t,r)=>Bt(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const V=require("react"),lt=require("@tanstack/react-query"),ve=require("./client-DxjRcEtN.cjs"),qt=require("./metadata-Bz8zJqC1.cjs"),Oe=require("./error-handling-CAoD0Kwb.cjs");var Le=e=>e.type==="checkbox",ge=e=>e instanceof Date,X=e=>e==null;const _t=e=>typeof e=="object";var q=e=>!X(e)&&!Array.isArray(e)&&_t(e)&&!ge(e),Pt=e=>q(e)&&e.target?Le(e.target)?e.target.checked:e.target.value:e,$t=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,jt=(e,t)=>e.has($t(t)),Wt=e=>{const t=e.constructor&&e.constructor.prototype;return q(t)&&t.hasOwnProperty("isPrototypeOf")},tt=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function j(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(tt&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(q(e)&&Wt(e)))return e;const s=r?[]:Object.create(Object.getPrototypeOf(e));for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&(s[i]=j(e[i]));return s}var je=e=>/^\w*$/.test(e),k=e=>e===void 0,rt=e=>Array.isArray(e)?e.filter(Boolean):[],st=e=>rt(e.replace(/["|']|\]/g,"").split(/\.|\[/)),g=(e,t,r)=>{if(!t||!q(e))return r;const s=(je(t)?[t]:st(t)).reduce((i,n)=>X(i)?i:i[n],e);return k(s)||s===e?k(e[t])?r:e[t]:s},ue=e=>typeof e=="boolean",se=e=>typeof e=="function",M=(e,t,r)=>{let s=-1;const i=je(t)?[t]:st(t),n=i.length,c=n-1;for(;++s<n;){const h=i[s];let w=r;if(s!==c){const E=e[h];w=q(E)||Array.isArray(E)?E:isNaN(+i[s+1])?{}:[]}if(h==="__proto__"||h==="constructor"||h==="prototype")return;e[h]=w,e=e[h]}};const ct={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},le={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Ht=V.createContext(null);Ht.displayName="HookFormContext";var Yt=(e,t,r,s=!0)=>{const i={defaultValues:t._defaultValues};for(const n in e)Object.defineProperty(i,n,{get:()=>{const c=n;return t._proxyFormState[c]!==ie.all&&(t._proxyFormState[c]=!s||ie.all),e[c]}});return i};const Kt=typeof window<"u"?V.useLayoutEffect:V.useEffect;var ee=e=>typeof e=="string",zt=(e,t,r,s,i)=>ee(e)?(s&&t.watch.add(e),g(r,e,i)):Array.isArray(e)?e.map(n=>(s&&t.watch.add(n),g(r,n))):(s&&(t.watchAll=!0),r),Ze=e=>X(e)||!_t(e);function he(e,t,r=new WeakSet){if(Ze(e)||Ze(t))return Object.is(e,t);if(ge(e)&&ge(t))return Object.is(e.getTime(),t.getTime());const s=Object.keys(e),i=Object.keys(t);if(s.length!==i.length)return!1;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);for(const n of s){const c=e[n];if(!i.includes(n))return!1;if(n!=="ref"){const h=t[n];if(ge(c)&&ge(h)||q(c)&&q(h)||Array.isArray(c)&&Array.isArray(h)?!he(c,h,r):!Object.is(c,h))return!1}}return!0}var Jt=(e,t,r,s,i)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:i||!0}}:{},Te=e=>Array.isArray(e)?e:[e],dt=()=>{let e=[];return{get observers(){return e},next:i=>{for(const n of e)n.next&&n.next(i)},subscribe:i=>(e.push(i),{unsubscribe:()=>{e=e.filter(n=>n!==i)}}),unsubscribe:()=>{e=[]}}};function Dt(e,t){const r={};for(const s in e)if(e.hasOwnProperty(s)){const i=e[s],n=t[s];if(i&&q(i)&&n){const c=Dt(i,n);q(c)&&(r[s]=c)}else e[s]&&(r[s]=n)}return r}var J=e=>q(e)&&!Object.keys(e).length,it=e=>e.type==="file",Pe=e=>{if(!tt)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Rt=e=>e.type==="select-multiple",at=e=>e.type==="radio",Gt=e=>at(e)||Le(e),Qe=e=>Pe(e)&&e.isConnected;function Qt(e,t){const r=t.slice(0,-1).length;let s=0;for(;s<r;)e=k(e)?s++:e[t[s++]];return e}function Xt(e){for(const t in e)if(e.hasOwnProperty(t)&&!k(e[t]))return!1;return!0}function B(e,t){const r=Array.isArray(t)?t:je(t)?[t]:st(t),s=r.length===1?e:Qt(e,r),i=r.length-1,n=r[i];return s&&delete s[n],i!==0&&(q(s)&&J(s)||Array.isArray(s)&&Xt(s))&&B(e,r.slice(0,-1)),e}var Zt=e=>{for(const t in e)if(se(e[t]))return!0;return!1};function Nt(e){return Array.isArray(e)||q(e)&&!Zt(e)}function et(e,t={}){for(const r in e){const s=e[r];Nt(s)?(t[r]=Array.isArray(s)?[]:{},et(s,t[r])):k(s)||(t[r]=!0)}return t}function we(e,t,r){r||(r=et(t));for(const s in e){const i=e[s];if(Nt(i))k(t)||Ze(r[s])?r[s]=et(i,Array.isArray(i)?[]:{}):we(i,X(t)?{}:t[s],r[s]);else{const n=t[s];r[s]=!he(i,n)}}return r}const ft={value:!1,isValid:!1},ht={value:!0,isValid:!0};var Ct=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!k(e[0].attributes.value)?k(e[0].value)||e[0].value===""?ht:{value:e[0].value,isValid:!0}:ht:ft}return ft},Ot=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>k(e)?e:t?e===""?NaN:e&&+e:r&&ee(e)?new Date(e):s?s(e):e;const mt={isValid:!1,value:null};var Tt=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,mt):mt;function yt(e){const t=e.ref;return it(t)?t.files:at(t)?Tt(e.refs).value:Rt(t)?[...t.selectedOptions].map(({value:r})=>r):Le(t)?Ct(e.refs).value:Ot(k(t.value)?e.ref.value:t.value,e)}var er=(e,t,r,s)=>{const i={};for(const n of e){const c=g(t,n);c&&M(i,n,c._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:s}},$e=e=>e instanceof RegExp,Ce=e=>k(e)?e:$e(e)?e.source:q(e)?$e(e.value)?e.value.source:e.value:e,gt=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const pt="AsyncFunction";var tr=e=>!!e&&!!e.validate&&!!(se(e.validate)&&e.validate.constructor.name===pt||q(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===pt)),rr=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),bt=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const Me=(e,t,r,s)=>{for(const i of r||Object.keys(e)){const n=g(e,i);if(n){const{_f:c,...h}=n;if(c){if(c.refs&&c.refs[0]&&t(c.refs[0],i)&&!s)return!0;if(c.ref&&t(c.ref,c.name)&&!s)return!0;if(Me(h,t))break}else if(q(h)&&Me(h,t))break}}};function wt(e,t,r){const s=g(e,r);if(s||je(r))return{error:s,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),c=g(t,n),h=g(e,n);if(c&&!Array.isArray(c)&&r!==n)return{name:r};if(h&&h.type)return{name:n,error:h};if(h&&h.root&&h.root.type)return{name:`${n}.root`,error:h.root};i.pop()}return{name:r}}var sr=(e,t,r,s)=>{r(e);const{name:i,...n}=e;return J(n)||Object.keys(n).length>=Object.keys(t).length||Object.keys(n).find(c=>t[c]===(!s||ie.all))},ir=(e,t,r)=>!e||!t||e===t||Te(e).some(s=>s&&(r?s===t:s.startsWith(t)||t.startsWith(s))),ar=(e,t,r,s,i)=>i.isOnAll?!1:!r&&i.isOnTouch?!(t||e):(r?s.isOnBlur:i.isOnBlur)?!e:(r?s.isOnChange:i.isOnChange)?e:!0,nr=(e,t)=>!rt(g(e,t)).length&&B(e,t),ur=(e,t,r)=>{const s=Te(g(e,r));return M(s,"root",t[r]),M(e,r,s),e};function vt(e,t,r="validate"){if(ee(e)||Array.isArray(e)&&e.every(ee)||ue(e)&&!e)return{type:r,message:ee(e)?e:"",ref:t}}var be=e=>q(e)&&!$e(e)?e:{value:e,message:""},Et=async(e,t,r,s,i,n)=>{const{ref:c,refs:h,required:w,maxLength:E,minLength:C,min:D,max:x,pattern:v,validate:y,name:P,valueAsNumber:Y,mount:Z}=e._f,_=g(r,P);if(!Z||t.has(P))return{};const te=h?h[0]:c,re=F=>{i&&te.reportValidity&&(te.setCustomValidity(ue(F)?"":F||""),te.reportValidity())},R={},ce=at(c),ye=Le(c),ae=ce||ye,de=(Y||it(c))&&k(c.value)&&k(_)||Pe(c)&&c.value===""||_===""||Array.isArray(_)&&!_.length,K=Jt.bind(null,P,s,R),oe=(F,S,L,O=le.maxLength,H=le.minLength)=>{const z=F?S:L;R[P]={type:F?O:H,message:z,ref:c,...K(F?O:H,z)}};if(n?!Array.isArray(_)||!_.length:w&&(!ae&&(de||X(_))||ue(_)&&!_||ye&&!Ct(h).isValid||ce&&!Tt(h).isValid)){const{value:F,message:S}=ee(w)?{value:!!w,message:w}:be(w);if(F&&(R[P]={type:le.required,message:S,ref:te,...K(le.required,S)},!s))return re(S),R}if(!de&&(!X(D)||!X(x))){let F,S;const L=be(x),O=be(D);if(!X(_)&&!isNaN(_)){const H=c.valueAsNumber||_&&+_;X(L.value)||(F=H>L.value),X(O.value)||(S=H<O.value)}else{const H=c.valueAsDate||new Date(_),z=G=>new Date(new Date().toDateString()+" "+G),ne=c.type=="time",fe=c.type=="week";ee(L.value)&&_&&(F=ne?z(_)>z(L.value):fe?_>L.value:H>new Date(L.value)),ee(O.value)&&_&&(S=ne?z(_)<z(O.value):fe?_<O.value:H<new Date(O.value))}if((F||S)&&(oe(!!F,L.message,O.message,le.max,le.min),!s))return re(R[P].message),R}if((E||C)&&!de&&(ee(_)||n&&Array.isArray(_))){const F=be(E),S=be(C),L=!X(F.value)&&_.length>+F.value,O=!X(S.value)&&_.length<+S.value;if((L||O)&&(oe(L,F.message,S.message),!s))return re(R[P].message),R}if(v&&!de&&ee(_)){const{value:F,message:S}=be(v);if($e(F)&&!_.match(F)&&(R[P]={type:le.pattern,message:S,ref:c,...K(le.pattern,S)},!s))return re(S),R}if(y){if(se(y)){const F=await y(_,r),S=vt(F,te);if(S&&(R[P]={...S,...K(le.validate,S.message)},!s))return re(S.message),R}else if(q(y)){let F={};for(const S in y){if(!J(F)&&!s)break;const L=vt(await y[S](_,r),te,S);L&&(F={...L,...K(S,L.message)},re(L.message),s&&(R[P]=F))}if(!J(F)&&(R[P]={ref:te,...F},!s))return R}}return re(!0),R};const or={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function lr(e={}){let t={...or,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:se(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},s={},i=q(t.defaultValues)||q(t.values)?j(t.defaultValues||t.values)||{}:{},n=t.shouldUnregister?{}:j(i),c={action:!1,mount:!1,watch:!1,keepIsValid:!1},h={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},w,E=0;const C={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},D={...C};let x={...D};const v={array:dt(),state:dt()},y=t.criteriaMode===ie.all,P=a=>u=>{clearTimeout(E),E=setTimeout(a,u)},Y=async a=>{if(!c.keepIsValid&&!t.disabled&&(D.isValid||x.isValid||a)){let u;t.resolver?(u=J((await ae()).errors),Z()):u=await K(s,!0),u!==r.isValid&&v.state.next({isValid:u})}},Z=(a,u)=>{!t.disabled&&(D.isValidating||D.validatingFields||x.isValidating||x.validatingFields)&&((a||Array.from(h.mount)).forEach(o=>{o&&(u?M(r.validatingFields,o,u):B(r.validatingFields,o))}),v.state.next({validatingFields:r.validatingFields,isValidating:!J(r.validatingFields)}))},_=(a,u=[],o,d,f=!0,l=!0)=>{if(d&&o&&!t.disabled){if(c.action=!0,l&&Array.isArray(g(s,a))){const m=o(g(s,a),d.argA,d.argB);f&&M(s,a,m)}if(l&&Array.isArray(g(r.errors,a))){const m=o(g(r.errors,a),d.argA,d.argB);f&&M(r.errors,a,m),nr(r.errors,a)}if((D.touchedFields||x.touchedFields)&&l&&Array.isArray(g(r.touchedFields,a))){const m=o(g(r.touchedFields,a),d.argA,d.argB);f&&M(r.touchedFields,a,m)}(D.dirtyFields||x.dirtyFields)&&(r.dirtyFields=we(i,n)),v.state.next({name:a,isDirty:F(a,u),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else M(n,a,u)},te=(a,u)=>{M(r.errors,a,u),v.state.next({errors:r.errors})},re=a=>{r.errors=a,v.state.next({errors:r.errors,isValid:!1})},R=(a,u,o,d)=>{const f=g(s,a);if(f){const l=g(n,a,k(o)?g(i,a):o);k(l)||d&&d.defaultChecked||u?M(n,a,u?l:yt(f._f)):O(a,l),c.mount&&!c.action&&Y()}},ce=(a,u,o,d,f)=>{let l=!1,m=!1;const p={name:a};if(!t.disabled){if(!o||d){(D.isDirty||x.isDirty)&&(m=r.isDirty,r.isDirty=p.isDirty=F(),l=m!==p.isDirty);const b=he(g(i,a),u);m=!!g(r.dirtyFields,a),b?B(r.dirtyFields,a):M(r.dirtyFields,a,!0),p.dirtyFields=r.dirtyFields,l=l||(D.dirtyFields||x.dirtyFields)&&m!==!b}if(o){const b=g(r.touchedFields,a);b||(M(r.touchedFields,a,o),p.touchedFields=r.touchedFields,l=l||(D.touchedFields||x.touchedFields)&&b!==o)}l&&f&&v.state.next(p)}return l?p:{}},ye=(a,u,o,d)=>{const f=g(r.errors,a),l=(D.isValid||x.isValid)&&ue(u)&&r.isValid!==u;if(t.delayError&&o?(w=P(()=>te(a,o)),w(t.delayError)):(clearTimeout(E),w=null,o?M(r.errors,a,o):B(r.errors,a)),(o?!he(f,o):f)||!J(d)||l){const m={...d,...l&&ue(u)?{isValid:u}:{},errors:r.errors,name:a};r={...r,...m},v.state.next(m)}},ae=async a=>(Z(a,!0),await t.resolver(n,t.context,er(a||h.mount,s,t.criteriaMode,t.shouldUseNativeValidation))),de=async a=>{const{errors:u}=await ae(a);if(Z(a),a)for(const o of a){const d=g(u,o);d?M(r.errors,o,d):B(r.errors,o)}else r.errors=u;return u},K=async(a,u,o={valid:!0})=>{for(const d in a){const f=a[d];if(f){const{_f:l,...m}=f;if(l){const p=h.array.has(l.name),b=f._f&&tr(f._f);b&&D.validatingFields&&Z([l.name],!0);const N=await Et(f,h.disabled,n,y,t.shouldUseNativeValidation&&!u,p);if(b&&D.validatingFields&&Z([l.name]),N[l.name]&&(o.valid=!1,u||e.shouldUseNativeValidation))break;!u&&(g(N,l.name)?p?ur(r.errors,N,l.name):M(r.errors,l.name,N[l.name]):B(r.errors,l.name))}!J(m)&&await K(m,u,o)}}return o.valid},oe=()=>{for(const a of h.unMount){const u=g(s,a);u&&(u._f.refs?u._f.refs.every(o=>!Qe(o)):!Qe(u._f.ref))&&xe(a)}h.unMount=new Set},F=(a,u)=>!t.disabled&&(a&&u&&M(n,a,u),!he(Ve(),i)),S=(a,u,o)=>zt(a,h,{...c.mount?n:k(u)?i:ee(a)?{[a]:u}:u},o,u),L=a=>rt(g(c.mount?n:i,a,t.shouldUnregister?g(i,a,[]):[])),O=(a,u,o={})=>{const d=g(s,a);let f=u;if(d){const l=d._f;l&&(!l.disabled&&M(n,a,Ot(u,l)),f=Pe(l.ref)&&X(u)?"":u,Rt(l.ref)?[...l.ref.options].forEach(m=>m.selected=f.includes(m.value)):l.refs?Le(l.ref)?l.refs.forEach(m=>{(!m.defaultChecked||!m.disabled)&&(Array.isArray(f)?m.checked=!!f.find(p=>p===m.value):m.checked=f===m.value||!!f)}):l.refs.forEach(m=>m.checked=m.value===f):it(l.ref)?l.ref.value="":(l.ref.value=f,l.ref.type||v.state.next({name:a,values:j(n)})))}(o.shouldDirty||o.shouldTouch)&&ce(a,f,o.shouldTouch,o.shouldDirty,!0),o.shouldValidate&&G(a)},H=(a,u,o)=>{for(const d in u){if(!u.hasOwnProperty(d))return;const f=u[d],l=a+"."+d,m=g(s,l);(h.array.has(a)||q(f)||m&&!m._f)&&!ge(f)?H(l,f,o):O(l,f,o)}},z=(a,u,o={})=>{const d=g(s,a),f=h.array.has(a),l=j(u);M(n,a,l),f?(v.array.next({name:a,values:j(n)}),(D.isDirty||D.dirtyFields||x.isDirty||x.dirtyFields)&&o.shouldDirty&&v.state.next({name:a,dirtyFields:we(i,n),isDirty:F(a,l)})):d&&!d._f&&!X(l)?H(a,l,o):O(a,l,o),bt(a,h)?v.state.next({...r,name:a,values:j(n)}):v.state.next({name:c.mount?a:void 0,values:j(n)})},ne=async a=>{c.mount=!0;const u=a.target;let o=u.name,d=!0;const f=g(s,o),l=b=>{d=Number.isNaN(b)||ge(b)&&isNaN(b.getTime())||he(b,g(n,o,b))},m=gt(t.mode),p=gt(t.reValidateMode);if(f){let b,N;const I=u.type?yt(f._f):Pt(a),T=a.type===ct.BLUR||a.type===ct.FOCUS_OUT,$=!rr(f._f)&&!t.resolver&&!g(r.errors,o)&&!f._f.deps||ar(T,g(r.touchedFields,o),r.isSubmitted,p,m),W=bt(o,h,T);M(n,o,I),T?(!u||!u.readOnly)&&(f._f.onBlur&&f._f.onBlur(a),w&&w(0)):f._f.onChange&&f._f.onChange(a);const U=ce(o,I,T),Q=!J(U)||W;if(!T&&v.state.next({name:o,type:a.type,values:j(n)}),$)return(D.isValid||x.isValid)&&(t.mode==="onBlur"?T&&Y():T||Y()),Q&&v.state.next({name:o,...W?{}:U});if(!T&&W&&v.state.next({...r}),t.resolver){const{errors:Ne}=await ae([o]);if(Z([o]),l(I),d){const ut=wt(r.errors,s,o),Je=wt(Ne,s,ut.name||o);b=Je.error,o=Je.name,N=J(Ne)}}else Z([o],!0),b=(await Et(f,h.disabled,n,y,t.shouldUseNativeValidation))[o],Z([o]),l(I),d&&(b?N=!1:(D.isValid||x.isValid)&&(N=await K(s,!0)));d&&(f._f.deps&&(!Array.isArray(f._f.deps)||f._f.deps.length>0)&&G(f._f.deps),ye(o,N,b,U))}},fe=(a,u)=>{if(g(r.errors,u)&&a.focus)return a.focus(),1},G=async(a,u={})=>{let o,d;const f=Te(a);if(t.resolver){const l=await de(k(a)?a:f);o=J(l),d=a?!f.some(m=>g(l,m)):o}else a?(d=(await Promise.all(f.map(async l=>{const m=g(s,l);return await K(m&&m._f?{[l]:m}:m)}))).every(Boolean),!(!d&&!r.isValid)&&Y()):d=o=await K(s);return v.state.next({...!ee(a)||(D.isValid||x.isValid)&&o!==r.isValid?{}:{name:a},...t.resolver||!a?{isValid:o}:{},errors:r.errors}),u.shouldFocus&&!d&&Me(s,fe,a?f:h.mount),d},Ve=(a,u)=>{let o={...c.mount?n:i};return u&&(o=Dt(u.dirtyFields?r.dirtyFields:r.touchedFields,o)),k(a)?o:ee(a)?g(o,a):a.map(d=>g(o,d))},Ie=(a,u)=>({invalid:!!g((u||r).errors,a),isDirty:!!g((u||r).dirtyFields,a),error:g((u||r).errors,a),isValidating:!!g(r.validatingFields,a),isTouched:!!g((u||r).touchedFields,a)}),We=a=>{a&&Te(a).forEach(u=>B(r.errors,u)),v.state.next({errors:a?r.errors:{}})},A=(a,u,o)=>{const d=(g(s,a,{_f:{}})._f||{}).ref,f=g(r.errors,a)||{},{ref:l,message:m,type:p,...b}=f;M(r.errors,a,{...b,...u,ref:d}),v.state.next({name:a,errors:r.errors,isValid:!1}),o&&o.shouldFocus&&d&&d.focus&&d.focus()},Fe=(a,u)=>se(a)?v.state.subscribe({next:o=>"values"in o&&a(S(void 0,u),o)}):S(a,u,!0),Ae=a=>v.state.subscribe({next:u=>{ir(a.name,u.name,a.exact)&&sr(u,a.formState||D,Re,a.reRenderRoot)&&a.callback({values:{...n},...r,...u,defaultValues:i})}}).unsubscribe,He=a=>(c.mount=!0,x={...x,...a.formState},Ae({...a,formState:{...C,...a.formState}})),xe=(a,u={})=>{for(const o of a?Te(a):h.mount)h.mount.delete(o),h.array.delete(o),u.keepValue||(B(s,o),B(n,o)),!u.keepError&&B(r.errors,o),!u.keepDirty&&B(r.dirtyFields,o),!u.keepTouched&&B(r.touchedFields,o),!u.keepIsValidating&&B(r.validatingFields,o),!t.shouldUnregister&&!u.keepDefaultValue&&B(i,o);v.state.next({values:j(n)}),v.state.next({...r,...u.keepDirty?{isDirty:F()}:{}}),!u.keepIsValid&&Y()},ke=({disabled:a,name:u})=>{(ue(a)&&c.mount||a||h.disabled.has(u))&&(a?h.disabled.add(u):h.disabled.delete(u))},Se=(a,u={})=>{let o=g(s,a);const d=ue(u.disabled)||ue(t.disabled);return M(s,a,{...o||{},_f:{...o&&o._f?o._f:{ref:{name:a}},name:a,mount:!0,...u}}),h.mount.add(a),o?ke({disabled:ue(u.disabled)?u.disabled:t.disabled,name:a}):R(a,!0,u.value),{...d?{disabled:u.disabled||t.disabled}:{},...t.progressive?{required:!!u.required,min:Ce(u.min),max:Ce(u.max),minLength:Ce(u.minLength),maxLength:Ce(u.maxLength),pattern:Ce(u.pattern)}:{},name:a,onChange:ne,onBlur:ne,ref:f=>{if(f){Se(a,u),o=g(s,a);const l=k(f.value)&&f.querySelectorAll&&f.querySelectorAll("input,select,textarea")[0]||f,m=Gt(l),p=o._f.refs||[];if(m?p.find(b=>b===l):l===o._f.ref)return;M(s,a,{_f:{...o._f,...m?{refs:[...p.filter(Qe),l,...Array.isArray(g(i,a))?[{}]:[]],ref:{type:l.type,name:a}}:{ref:l}}}),R(a,!1,void 0,l)}else o=g(s,a,{}),o._f&&(o._f.mount=!1),(t.shouldUnregister||u.shouldUnregister)&&!(jt(h.array,a)&&c.action)&&h.unMount.add(a)}}},_e=()=>t.shouldFocusError&&Me(s,fe,h.mount),Ye=a=>{ue(a)&&(v.state.next({disabled:a}),Me(s,(u,o)=>{const d=g(s,o);d&&(u.disabled=d._f.disabled||a,Array.isArray(d._f.refs)&&d._f.refs.forEach(f=>{f.disabled=d._f.disabled||a}))},0,!1))},Ue=(a,u)=>async o=>{let d;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let f=j(n);if(v.state.next({isSubmitting:!0}),t.resolver){const{errors:l,values:m}=await ae();Z(),r.errors=l,f=j(m)}else await K(s);if(h.disabled.size)for(const l of h.disabled)B(f,l);if(B(r.errors,"root"),J(r.errors)){v.state.next({errors:{}});try{await a(f,o)}catch(l){d=l}}else u&&await u({...r.errors},o),_e(),setTimeout(_e);if(v.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:J(r.errors)&&!d,submitCount:r.submitCount+1,errors:r.errors}),d)throw d},Ke=(a,u={})=>{g(s,a)&&(k(u.defaultValue)?z(a,j(g(i,a))):(z(a,u.defaultValue),M(i,a,j(u.defaultValue))),u.keepTouched||B(r.touchedFields,a),u.keepDirty||(B(r.dirtyFields,a),r.isDirty=u.defaultValue?F(a,j(g(i,a))):F()),u.keepError||(B(r.errors,a),D.isValid&&Y()),v.state.next({...r}))},Be=(a,u={})=>{const o=a?j(a):i,d=j(o),f=J(a),l=f?i:d;if(u.keepDefaultValues||(i=o),!u.keepValues){if(u.keepDirtyValues){const m=new Set([...h.mount,...Object.keys(we(i,n))]);for(const p of Array.from(m)){const b=g(r.dirtyFields,p),N=g(n,p),I=g(l,p);b&&!k(N)?M(l,p,N):!b&&!k(I)&&z(p,I)}}else{if(tt&&k(a))for(const m of h.mount){const p=g(s,m);if(p&&p._f){const b=Array.isArray(p._f.refs)?p._f.refs[0]:p._f.ref;if(Pe(b)){const N=b.closest("form");if(N){N.reset();break}}}}if(u.keepFieldsRef)for(const m of h.mount)z(m,g(l,m));else s={}}n=t.shouldUnregister?u.keepDefaultValues?j(i):{}:j(l),v.array.next({values:{...l}}),v.state.next({values:{...l}})}h={mount:u.keepDirtyValues?h.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},c.mount=!D.isValid||!!u.keepIsValid||!!u.keepDirtyValues||!t.shouldUnregister&&!J(l),c.watch=!!t.shouldUnregister,c.keepIsValid=!!u.keepIsValid,c.action=!1,u.keepErrors||(r.errors={}),v.state.next({submitCount:u.keepSubmitCount?r.submitCount:0,isDirty:f?!1:u.keepDirty?r.isDirty:!!(u.keepDefaultValues&&!he(a,i)),isSubmitted:u.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:f?{}:u.keepDirtyValues?u.keepDefaultValues&&n?we(i,n):r.dirtyFields:u.keepDefaultValues&&a?we(i,a):u.keepDirty?r.dirtyFields:{},touchedFields:u.keepTouched?r.touchedFields:{},errors:u.keepErrors?r.errors:{},isSubmitSuccessful:u.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},De=(a,u)=>Be(se(a)?a(n):a,{...t.resetOptions,...u}),ze=(a,u={})=>{const o=g(s,a),d=o&&o._f;if(d){const f=d.refs?d.refs[0]:d.ref;f.focus&&setTimeout(()=>{f.focus(),u.shouldSelect&&se(f.select)&&f.select()})}},Re=a=>{r={...r,...a}},qe={control:{register:Se,unregister:xe,getFieldState:Ie,handleSubmit:Ue,setError:A,_subscribe:Ae,_runSchema:ae,_updateIsValidating:Z,_focusError:_e,_getWatch:S,_getDirty:F,_setValid:Y,_setFieldArray:_,_setDisabledField:ke,_setErrors:re,_getFieldArray:L,_reset:Be,_resetDefaultValues:()=>se(t.defaultValues)&&t.defaultValues().then(a=>{De(a,t.resetOptions),v.state.next({isLoading:!1})}),_removeUnmounted:oe,_disableForm:Ye,_subjects:v,_proxyFormState:D,get _fields(){return s},get _formValues(){return n},get _state(){return c},set _state(a){c=a},get _defaultValues(){return i},get _names(){return h},set _names(a){h=a},get _formState(){return r},get _options(){return t},set _options(a){t={...t,...a}}},subscribe:He,trigger:G,register:Se,handleSubmit:Ue,watch:Fe,setValue:z,getValues:Ve,reset:De,resetField:Ke,clearErrors:We,unregister:xe,setError:A,setFocus:ze,getFieldState:Ie};return{...qe,formControl:qe}}function cr(e={}){const t=V.useRef(void 0),r=V.useRef(void 0),[s,i]=V.useState({isDirty:!1,isValidating:!1,isLoading:se(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:se(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:s},e.defaultValues&&!se(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:c,...h}=lr(e);t.current={...h,formState:s}}const n=t.current.control;return n._options=e,Kt(()=>{const c=n._subscribe({formState:n._proxyFormState,callback:()=>i({...n._formState}),reRenderRoot:!0});return i(h=>({...h,isReady:!0})),n._formState.isReady=!0,c},[n]),V.useEffect(()=>n._disableForm(e.disabled),[n,e.disabled]),V.useEffect(()=>{e.mode&&(n._options.mode=e.mode),e.reValidateMode&&(n._options.reValidateMode=e.reValidateMode)},[n,e.mode,e.reValidateMode]),V.useEffect(()=>{e.errors&&(n._setErrors(e.errors),n._focusError())},[n,e.errors]),V.useEffect(()=>{e.shouldUnregister&&n._subjects.state.next({values:n._getWatch()})},[n,e.shouldUnregister]),V.useEffect(()=>{if(n._proxyFormState.isDirty){const c=n._getDirty();c!==s.isDirty&&n._subjects.state.next({isDirty:c})}},[n,s.isDirty]),V.useEffect(()=>{var c;e.values&&!he(e.values,r.current)?(n._reset(e.values,{keepFieldsRef:!0,...n._options.resetOptions}),!((c=n._options.resetOptions)===null||c===void 0)&&c.keepIsValid||n._setValid(),r.current=e.values,i(h=>({...h}))):n._resetDefaultValues()},[n,e.values]),V.useEffect(()=>{n._state.mount||(n._setValid(),n._state.mount=!0),n._state.watch&&(n._state.watch=!1,n._subjects.state.next({...n._formState})),n._removeUnmounted()}),t.current.formState=Yt(s,n),t.current}function dr(){const e=new Date;return{NOW:e,TODAY:new Date(e.getFullYear(),e.getMonth(),e.getDate()),CURRENT_USER:{EmpId:1,Email:"user@example.com",FirstName:"John",LastName:"Doe",Role:"User"},CURRENT_USER_ID:1}}const fr={CONCAT:(...e)=>e.map(t=>String(t||"")).join(""),TRIM:e=>String(e||"").trim(),LENGTH:e=>String(e||"").length,UPPER:e=>String(e||"").toUpperCase(),LOWER:e=>String(e||"").toLowerCase(),SUBSTRING:(e,t,r)=>{const s=String(e||"");return r!==void 0?s.substring(t,t+r):s.substring(t)},CONTAINS:(e,t)=>String(e||"").includes(String(t||"")),YEAR:e=>new Date(e).getFullYear(),MONTH:e=>new Date(e).getMonth()+1,DAY:e=>new Date(e).getDate(),DATE_DIFF:(e,t)=>{const r=new Date(e),s=new Date(t),i=Math.abs(r.getTime()-s.getTime());return Math.ceil(i/(1e3*60*60*24))},ADD_DAYS:(e,t)=>{const r=new Date(e);return r.setDate(r.getDate()+t),r},ADD_MONTHS:(e,t)=>{const r=new Date(e);return r.setMonth(r.getMonth()+t),r},SUM:(...e)=>e.reduce((t,r)=>t+(Number(r)||0),0),AVG:(...e)=>{const t=e.filter(r=>!isNaN(Number(r)));return t.length>0?t.reduce((r,s)=>r+Number(s),0)/t.length:0},MIN:(...e)=>Math.min(...e.map(t=>Number(t)||0)),MAX:(...e)=>Math.max(...e.map(t=>Number(t)||0)),ROUND:e=>Math.round(Number(e)||0),FLOOR:e=>Math.floor(Number(e)||0),CEIL:e=>Math.ceil(Number(e)||0),ABS:e=>Math.abs(Number(e)||0),IF:(e,t,r)=>e?t:r,IS_NULL:e=>e==null,IS_EMPTY:e=>!e||String(e).trim()==="",IS_NUMBER:e=>!isNaN(Number(e))&&e!==""&&e!==null&&e!==void 0,IS_DATE:e=>{const t=new Date(e);return!isNaN(t.getTime())},AUTO_NUMBER:()=>Math.floor(Math.random()*1e4)+1e3,UUID:()=>"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)}),ARRAY_LENGTH:e=>Array.isArray(e)?e.length:0,ARRAY_CONTAINS:(e,t)=>Array.isArray(e)?e.includes(t):!1,ARRAY_JOIN:(e,t=",")=>Array.isArray(e)?e.join(t):""};function me(e,t){var r;switch(e.Type){case"Literal":return e.Value;case"SystemIdentifier":if(e.Property){const E=t.systemValues[e.Name];return Xe(E,e.Property.Name)}return t.systemValues[e.Name];case"Identifier":if(e.Property){const E=Vt(e,t);return Xe(E,e.Property.Name)}return Vt(e,t);case"MemberExpression":if(!e.Arguments||e.Arguments.length===0)throw new Error("MemberExpression requires Arguments array");const s=me(e.Arguments[0],t),i=(r=e.Arguments[0].Property)==null?void 0:r.Name;return i?Xe(s,i):s;case"BinaryExpression":if(!e.Arguments||e.Arguments.length!==2)throw new Error("BinaryExpression requires exactly 2 arguments");const n=me(e.Arguments[0],t),c=me(e.Arguments[1],t);return hr(e.Operator,n,c);case"LogicalExpression":if(!e.Arguments||e.Arguments.length<2)throw new Error("LogicalExpression requires at least 2 arguments");return mr(e.Operator,e.Arguments,t);case"CallExpression":if(!e.Callee)throw new Error("CallExpression requires Callee");const h=fr[e.Callee];if(!h)throw new Error(`Unknown function: ${e.Callee}`);const w=(e.Arguments||[]).map(E=>me(E,t));return h(...w);case"AssignmentExpression":if(!e.Arguments||e.Arguments.length!==1)throw new Error("AssignmentExpression requires exactly 1 argument");return me(e.Arguments[0],t);default:throw new Error(`Unknown expression type: ${e.Type}`)}}function Vt(e,t){const{Name:r,Source:s}=e;if(!r)throw new Error("Identifier requires Name");switch(s){case"Input":default:return t.formValues[r]}}function Xe(e,t){if(!(!e||typeof e!="object"))return e[t]}function hr(e,t,r){const s=i=>i==null?0:typeof i=="number"?i:typeof i=="object"&&i!==null&&"value"in i?Number(i.value)||0:Number(i)||0;switch(e){case"==":return t==r;case"!=":return t!=r;case">":return s(t)>s(r);case"<":return s(t)<s(r);case">=":return s(t)>=s(r);case"<=":return s(t)<=s(r);case"+":return s(t)+s(r);case"-":return s(t)-s(r);case"*":return s(t)*s(r);case"/":const i=s(r);return i!==0?s(t)/i:0;default:throw new Error(`Unknown binary operator: ${e}`)}}function mr(e,t,r){switch(e){case"AND":return t.every(s=>!!me(s,r));case"OR":return t.some(s=>!!me(s,r));default:throw new Error(`Unknown logical operator: ${e}`)}}function Mt(e,t,r={}){const s={formValues:t,systemValues:dr(),referenceData:r};try{return me(e,s)}catch(i){return console.warn("Expression evaluation failed:",i),!1}}function Ft(e,t,r={}){const s=[];for(const i of e)try{Mt(i.Condition.ExpressionTree,t,r)||s.push({isValid:!1,message:i.Message,fieldName:i.Id})}catch(n){console.warn(`Cross-field validation rule ${i.Id} failed:`,n)}return s}function yr(e,t={},r={}){try{return Mt(e,t,r)}catch(s){return console.warn("Default value calculation failed:",s),null}}function At(e,t){var h,w,E;const r=((h=e.Expression)==null?void 0:h.toLowerCase())||"",s=((w=e.Name)==null?void 0:w.toLowerCase())||"",i=((E=e.Id)==null?void 0:E.toLowerCase())||"",n=t.toLowerCase();return s.includes("required")||i.includes("required")?!0:[`${n} != null`,`${n} != ''`,`trim(${n}) != ''`,`${n}!=null`,`${n}!=''`].some(C=>r.includes(C))}function gr(e){const t={...e};t.Rules||(t.Rules={Validation:{},Computation:{},BusinessLogic:{}}),t.Rules.Validation||(t.Rules.Validation={}),t.Rules.Computation||(t.Rules.Computation={}),t.Rules.BusinessLogic||(t.Rules.BusinessLogic={});const r={...t.Fields};return Object.entries(r).forEach(([s,i])=>{let n=i.Required||!1;if(i.Validation&&Array.isArray(i.Validation))if(i.Validation.length>0&&typeof i.Validation[0]=="object"){const c=[];i.Validation.forEach(h=>{t.Rules.Validation[h.Id]=h,c.push(h.Id),At(h,s)&&(n=!0)}),r[s]={...i,Validation:c,Required:n}}else i.Validation.forEach(h=>{var E;const w=(E=t.Rules.Validation)==null?void 0:E[h];w&&At(w,s)&&(n=!0)}),n&&!i.Required&&(r[s]={...i,Required:!0});if(i.Formula){const c=`RULE_COMPUTE_${s.toUpperCase()}`;t.Rules.Computation[c]={Id:c,Name:i.Formula.Id||`Compute ${s}`,Description:i.Formula.Description||`Computes value for ${s}`,Expression:i.Formula.Expression,ExpressionTree:i.Formula.ExpressionTree,ResultType:i.Type}}}),t.Fields=r,t}function pr(e){var r,s,i;const t={validation:{},computation:{},businessLogic:{}};return(r=e.Rules)!=null&&r.Validation&&(t.validation={...e.Rules.Validation}),(s=e.Rules)!=null&&s.Computation&&(t.computation={...e.Rules.Computation}),(i=e.Rules)!=null&&i.BusinessLogic&&(t.businessLogic={...e.Rules.BusinessLogic}),t}function br(e){var s;const t={};if(!((s=e.Rules)!=null&&s.Computation))return t;const r=Object.entries(e.Fields).filter(([i,n])=>n.Computed).map(([i])=>i);return r.sort((i,n)=>n.length-i.length),Object.entries(e.Rules.Computation).forEach(([i,n])=>{const c=i.toUpperCase().replace(/[_-]/g,"");for(const w of r){const E=w.toUpperCase().replace(/[_-]/g,"");if(c.includes(E)){t[i]=w;return}}const h=`${n.Name||""} ${n.Description||""}`.toLowerCase();for(const w of r)if(h.includes(w.toLowerCase())){t[i]=w;return}}),t}function wr(e,t){const r={};Object.keys(e.Fields).forEach(i=>{r[i]={validation:[],computation:[],businessLogic:[]}}),Object.entries(e.Fields).forEach(([i,n])=>{n.Validation&&Array.isArray(n.Validation)&&n.Validation.forEach(h=>{t.validation[h]?r[i].validation.push(h):t.computation[h]?r[i].computation.push(h):t.businessLogic[h]&&r[i].businessLogic.push(h)}),n.Formula&&Object.entries(t.computation).forEach(([c,h])=>{var w;h.Expression===((w=n.Formula)==null?void 0:w.Expression)&&(r[i].computation.includes(c)||r[i].computation.push(c))})});const s=br(e);return Object.entries(s).forEach(([i,n])=>{r[n]&&!r[n].computation.includes(i)&&r[n].computation.push(i)}),r}function vr(e,t){const r={},s={editable:!0,readable:!0,hidden:!1};return Object.keys(e.Fields).forEach(i=>{var w,E,C,D,x,v;if(!t||!((w=e.RolePermission)!=null&&w[t])){r[i]=s;return}const n=e.RolePermission[t],c=((E=n.Editable)==null?void 0:E.includes(i))||((C=n.Editable)==null?void 0:C.includes("*"))||!1,h=((D=n.ReadOnly)==null?void 0:D.includes(i))||((x=n.ReadOnly)==null?void 0:x.includes("*"))||c;r[i]={editable:c&&!((v=n.ReadOnly)!=null&&v.includes(i)),readable:h,hidden:!h}}),r}function Er(e,t){switch(e){case"String":return t.toLowerCase().includes("email")?"email":t.toLowerCase().includes("password")?"password":"text";case"Number":return"number";case"Boolean":return"checkbox";case"Date":return"date";case"DateTime":return"datetime-local";case"Reference":return"reference";case"Array":case"Object":return"textarea";default:return"text"}}function Lt(e){return e.replace(/([A-Z])/g," $1").replace(/^./,t=>t.toUpperCase()).replace(/_/g," ").trim()}function Vr(e,t,r){const s={};switch(t.Required&&(s.required={value:!0,message:`${Lt(e)} is required`}),t.Type){case"Number":s.valueAsNumber=!0;break;case"Date":case"DateTime":s.valueAsDate=!0;break}return t.Validation&&t.Validation.length>0&&(s.validate=()=>!0),s}function Fr(e){return e.Values?e.Values.Mode==="Static"&&e.Values.Items?e.Values.Items.map(t=>({value:t.Value,label:t.Label})):e.Values.Mode==="Dynamic"&&e.Values.Reference?[]:[]:[]}function Ar(e,t={}){if(!e.DefaultValue)switch(e.Type){case"Boolean":return!1;case"Number":return 0;case"String":return"";case"Array":return[];case"Object":return{};default:return}return yr(e.DefaultValue.ExpressionTree,t)}function xr(e,t,r,s={},i,n){const c={editable:!0,readable:!0,hidden:!1},w=n||{validation:[],computation:[],businessLogic:[]},E=t.Computed||!!t.Formula||w.computation.length>0,C=Vr(e,t);return E&&(C.disabled=!0),{name:e,type:Er(t.Type,e),label:t.Name||Lt(e),required:t.Required||!1,computed:E,defaultValue:Ar(t,s),options:Fr(t),validation:C,description:t.Description,_bdoField:t,permission:i||c,rules:w}}function Sr(e,t={},r){let s=e;s=gr(s);const i={},n=[],c=[],h=[],w=[],E=pr(s),C=wr(s,E),D=vr(s,r);for(const[x,v]of Object.entries(s.Fields)){if(x.startsWith("_")&&!["_id"].includes(x))continue;const y=D[x];if(y.hidden)continue;const P=xr(x,v,s.Fields,t,y,C[x]||{validation:[],computation:[],businessLogic:[]});i[x]=P,n.push(x),P.computed&&c.push(x),P.required&&h.push(x)}return{fields:i,fieldOrder:n,computedFields:c,requiredFields:h,crossFieldValidation:w,rules:E,fieldRules:C,rolePermissions:s.RolePermission}}async function _r(e){try{const r=(await qt.getBdoSchema(e)).BOBlob;if(!r||typeof r!="object"||!r.Fields)throw new Error(`Invalid BDO schema response for ${e}`);return r}catch(t){throw console.error(`Schema fetch error for ${e}:`,t),new Error(`Failed to load form schema: ${t instanceof Error?t.message:"Unknown error"}`)}}async function Dr(e,t=3){let r;for(let s=1;s<=t;s++)try{return await _r(e)}catch(i){if(r=Oe.toError(i),s<t){const n=Math.min(1e3*Math.pow(2,s-1),5e3);await new Promise(c=>setTimeout(c,n));continue}}throw r}async function Rr(e,t){try{return await ve.api(e).get(t)}catch(r){throw console.error(`Record fetch error for ${e}/${t}:`,r),new Error(`Failed to load record: ${r instanceof Error?r.message:"Unknown error"}`)}}async function Nr(e,t,r,s){try{let i;if(t==="create")return i=await ve.api(e).create(r),{success:!0,data:i,recordId:i._id||s};if(t==="update"){if(!s)throw new Error("Record ID is required for update operations");return i=await ve.api(e).update(s,r),{success:!0,data:i,recordId:i._id||s}}else throw new Error(`Unsupported operation: ${t}`)}catch(i){return console.error("Form submission error:",i),{success:!1,error:new Error(`Failed to ${t} record: ${i instanceof Error?i.message:"Unknown error"}`)}}}function Cr(e,t,r="create",s,i){const n={};return Object.keys(e).forEach(c=>{const h=c;let w=e[h];if(!t.includes(c)&&w!==void 0){if((i==null?void 0:i[c])==="Reference"&&w!==null&&(w=It(w)),r==="create"){n[h]=w;return}if(r==="update"){if(!s){n[h]=w;return}const E=s[h];JSON.stringify(w)!==JSON.stringify(E)&&(n[h]=w)}}}),n}function It(e){if(e==null||e==="")return null;if(typeof e=="object"&&e._id)return{...e};if(typeof e=="string"){try{const t=JSON.parse(e);if(typeof t=="object"&&t._id)return{...t}}catch{}return{_id:e}}return e}function Or(e){var t,r,s,i;return typeof e=="string"?e:e!=null&&e.message?e.message:(r=(t=e==null?void 0:e.response)==null?void 0:t.data)!=null&&r.message?e.response.data.message:(i=(s=e==null?void 0:e.response)==null?void 0:s.data)!=null&&i.error?e.response.data.error:"An unexpected error occurred"}function Tr(e){var t,r;return!navigator.onLine||(e==null?void 0:e.code)==="NETWORK_ERROR"||((t=e==null?void 0:e.message)==null?void 0:t.toLowerCase().includes("network"))||((r=e==null?void 0:e.message)==null?void 0:r.toLowerCase().includes("fetch"))}function Mr(e){var t,r,s;return(e==null?void 0:e.status)===400||((t=e==null?void 0:e.response)==null?void 0:t.status)===400||((r=e==null?void 0:e.message)==null?void 0:r.toLowerCase().includes("validation"))||((s=e==null?void 0:e.message)==null?void 0:s.toLowerCase().includes("invalid"))}const Ee=new Map;function Lr(e,t,r=10){Ee.set(e,{data:t,timestamp:Date.now(),ttl:r*60*1e3})}function Ir(e){const t=Ee.get(e);return t?Date.now()-t.timestamp>t.ttl?(Ee.delete(e),null):t.data:null}function kr(e){e?Array.from(Ee.keys()).filter(r=>r.startsWith(e)).forEach(r=>Ee.delete(r)):Ee.clear()}async function Ur(e){const t=`schema:${e}`,r=Ir(t);if(r)return r;const s=await Dr(e);return Lr(t,s,30),s}class xt{constructor(t=1e3){pe(this,"cache",new Map);pe(this,"maxSize");this.maxSize=t}get(t){const r=this.cache.get(t);return r!==void 0&&(this.cache.delete(t),this.cache.set(t,r)),r}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){const s=this.cache.keys().next().value;this.cache.delete(s)}this.cache.set(t,r)}clear(){this.cache.clear()}}function Br(e){const t=new Set;function r(s){switch(s.Type){case"Identifier":s.Name&&!s.Name.startsWith("$")&&t.add(s.Name);break;case"MemberExpression":s.Arguments&&s.Arguments.forEach(r);break;case"CallExpression":case"BinaryExpression":case"LogicalExpression":s.Arguments&&s.Arguments.forEach(r);break}}return r(e),t}class qr{constructor(){pe(this,"resultCache",new xt(500));pe(this,"dependencyCache",new xt(200));pe(this,"compiledExpressions",new Map)}createCacheKey(t,r){const s=JSON.stringify(t),i=JSON.stringify(r);return`${s}:${i}`}getDependencies(t){const r=JSON.stringify(t);let s=this.dependencyCache.get(r);return s||(s=Br(t),this.dependencyCache.set(r,s)),s}getCachedResult(t,r,s){if(!s)return;const i=this.getDependencies(t);for(const c of i)if(r[c]!==s[c])return;const n=this.createCacheKey(t,r);return this.resultCache.get(n)}evaluate(t,r,s){const i=this.getCachedResult(t,r,s);if(i!==void 0)return i;const n=this.evaluateNode(t,r),c=this.createCacheKey(t,r);return this.resultCache.set(c,n),n}evaluateNode(t,r){switch(t.Type){case"Literal":return t.Value;case"Identifier":return this.getIdentifierValue(t,r);case"BinaryExpression":return this.evaluateBinaryExpression(t,r);case"LogicalExpression":return this.evaluateLogicalExpression(t,r);case"CallExpression":return this.evaluateCallExpression(t,r);case"MemberExpression":return this.evaluateMemberExpression(t,r);default:throw new Error(`Unsupported expression type: ${t.Type}`)}}getIdentifierValue(t,r){if(t.Name){if(t.Name==="NOW")return new Date;if(t.Name==="TODAY"){const s=new Date;return new Date(s.getFullYear(),s.getMonth(),s.getDate())}return t.Name==="CURRENT_USER_ID"?1:t.Name==="CURRENT_USER"?{EmpId:1,Email:"user@example.com",FirstName:"John",LastName:"Doe",Role:"User"}:r[t.Name]}}evaluateBinaryExpression(t,r){if(!t.Arguments||t.Arguments.length!==2)throw new Error("Binary expression requires exactly 2 arguments");const s=this.evaluateNode(t.Arguments[0],r),i=this.evaluateNode(t.Arguments[1],r);switch(t.Operator){case"==":return s==i;case"!=":return s!=i;case"===":return s===i;case"!==":return s!==i;case"<":return Number(s)<Number(i);case"<=":return Number(s)<=Number(i);case">":return Number(s)>Number(i);case">=":return Number(s)>=Number(i);case"+":return Number(s)+Number(i);case"-":return Number(s)-Number(i);case"*":return Number(s)*Number(i);case"/":return Number(s)/Number(i);case"%":return Number(s)%Number(i);default:throw new Error(`Unsupported binary operator: ${t.Operator}`)}}evaluateLogicalExpression(t,r){if(!t.Arguments||t.Arguments.length<2)throw new Error("Logical expression requires at least 2 arguments");switch(t.Operator){case"AND":for(const s of t.Arguments)if(!this.evaluateNode(s,r))return!1;return!0;case"OR":for(const s of t.Arguments)if(this.evaluateNode(s,r))return!0;return!1;default:throw new Error(`Unsupported logical operator: ${t.Operator}`)}}evaluateCallExpression(t,r){var i;if(!t.Callee)throw new Error("Call expression requires a function name");const s=((i=t.Arguments)==null?void 0:i.map(n=>this.evaluateNode(n,r)))||[];switch(t.Callee){case"CONCAT":return s.map(E=>String(E||"")).join("");case"TRIM":return String(s[0]||"").trim();case"LENGTH":return String(s[0]||"").length;case"UPPER":return String(s[0]||"").toUpperCase();case"LOWER":return String(s[0]||"").toLowerCase();case"CONTAINS":return String(s[0]||"").includes(String(s[1]||""));case"MATCHES":return new RegExp(String(s[1])).test(String(s[0]||""));case"SUM":return s.reduce((E,C)=>E+(Number(C)||0),0);case"AVG":const n=s.filter(E=>!isNaN(Number(E)));return n.length>0?n.reduce((E,C)=>E+Number(C),0)/n.length:0;case"MIN":return Math.min(...s.map(E=>Number(E)||0));case"MAX":return Math.max(...s.map(E=>Number(E)||0));case"ROUND":return Math.round(Number(s[0])||0);case"FLOOR":return Math.floor(Number(s[0])||0);case"CEIL":return Math.ceil(Number(s[0])||0);case"ABS":return Math.abs(Number(s[0])||0);case"YEAR":return new Date(s[0]).getFullYear();case"MONTH":return new Date(s[0]).getMonth()+1;case"DAY":return new Date(s[0]).getDate();case"DATE_DIFF":const c=new Date(s[0]),h=new Date(s[1]),w=Math.abs(c.getTime()-h.getTime());return Math.ceil(w/(1e3*60*60*24));case"IF":return s[0]?s[1]:s[2];case"AUTO_NUMBER":return Math.floor(Math.random()*1e4);default:throw new Error(`Unknown function: ${t.Callee}`)}}evaluateMemberExpression(t,r){var n;if(!t.Arguments||t.Arguments.length===0)throw new Error("Member expression requires arguments");const s=this.evaluateNode(t.Arguments[0],r),i=(n=t.Arguments[0].Property)==null?void 0:n.Name;return i&&s&&typeof s=="object"?s[i]:s}clearCache(){this.resultCache.clear(),this.dependencyCache.clear(),this.compiledExpressions.clear()}}const kt=new qr;function Pr(e,t,r,s,i){if(!r||r.length===0)return{isValid:!0};const n={...s,[e]:t};for(const c of r)try{if(!kt.evaluate(c.ExpressionTree,n,i))return{isValid:!1,message:c.Message||`Validation failed for ${c.Name}`,fieldName:e}}catch(h){console.warn(`Validation rule ${c.Id} failed to evaluate:`,h)}return{isValid:!0}}function St(e){return Array.from(kt.getDependencies(e))}function $r(e){const{source:t,operation:r,recordId:s,defaultValues:i={},mode:n="onBlur",enabled:c=!0,userRole:h,onSchemaError:w,skipSchemaFetch:E=!1,schema:C,interactionMode:D="interactive",enableDraftInUpdateMode:x=!1}=e,v=D==="interactive",[y,P]=V.useState(null),[Y,Z]=V.useState({}),[_,te]=V.useState(!1),[re]=V.useState({}),[R,ce]=V.useState(null),[ye,ae]=V.useState(!1),[de,K]=V.useState(null),oe=V.useRef(!1),F=V.useRef(null),S=V.useRef(null),L=V.useRef(!1),O=V.useRef(w);V.useEffect(()=>{O.current=w},[w]);const{data:H,isLoading:z,error:ne,refetch:fe}=lt.useQuery({queryKey:["form-schema",t],queryFn:()=>E?Promise.resolve(C||{}):Ur(t),enabled:c&&(!E||!!C),retry:3,staleTime:30*60*1e3,gcTime:60*60*1e3,throwOnError:!1}),{data:G,isLoading:Ve,error:Ie}=lt.useQuery({queryKey:["form-record",t,s],queryFn:()=>Rr(t,s),enabled:c&&r==="update"&&!!s,retry:3,staleTime:5*60*1e3,gcTime:15*60*1e3,throwOnError:!1}),We=V.useMemo(()=>{const d={...i};if(r==="update"&&G&&Object.assign(d,G),y)for(const[f,l]of Object.entries(y.fields))l.defaultValue!==void 0&&!(f in d)&&(d[f]=l.defaultValue);return d},[i,G,r,y]),A=cr({mode:n,defaultValues:i,values:r==="update"&&G?We:void 0});V.useEffect(()=>{var d;if(H)try{const f=Sr(H,{},h);P(f)}catch(f){console.error("Schema processing failed:",f),(d=O.current)==null||d.call(O,Oe.toError(f))}},[H,h]),V.useEffect(()=>{var d;ne&&((d=O.current)==null||d.call(O,ne))},[ne]),V.useEffect(()=>{if(!v||r!=="create"||!y||!c||R||L.current)return;L.current=!0;let d=!0;return(async()=>{ae(!0),K(null);try{const m=await ve.api(t).draftInteraction({});if(!d)return;ce(m._id),m&&typeof m=="object"&&Object.entries(m).forEach(([p,b])=>{if(p==="_id")return;A.getValues(p)!==b&&A.setValue(p,b,{shouldDirty:!1,shouldValidate:!1})})}catch(l){if(!d)return;console.error("Failed to create initial draft:",l),K(Oe.toError(l)),L.current=!1}finally{d&&ae(!1)}})(),()=>{d=!1}},[v,r,y,c,R,t]);const Fe=V.useMemo(()=>{if(!y)return[];const d=new Set,f=new Set(y.computedFields);return Object.entries(y.fieldRules).forEach(([l,m])=>{m.computation.forEach(p=>{const b=y.rules.computation[p];b!=null&&b.ExpressionTree&&St(b.ExpressionTree).forEach(I=>{y.fields[I]&&I!==l&&!f.has(I)&&d.add(I)})})}),y.computedFields.forEach(l=>{const m=y.fields[l];m._bdoField.Formula&&St(m._bdoField.Formula.ExpressionTree).forEach(b=>{y.fields[b]&&b!==l&&!f.has(b)&&d.add(b)})}),Array.from(d)},[y]),Ae=V.useCallback(async d=>{if(!(!y||r==="update"&&!x||!(v&&r!=="update"||Fe.length>0&&Fe.includes(d)))){if(v&&r==="create"&&!R){console.warn("Interactive create mode: waiting for draft ID");return}oe.current||(F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{if(!y||oe.current)return;const l=A.getValues();(async()=>{oe.current=!0;try{const p=ve.api(t),b={};r==="update"&&s&&"_id"in l&&(b._id=l._id),v&&r==="create"&&R&&(b._id=R);const N=S.current??(r==="update"?G:null)??{},I=new Set(y.computedFields||[]);Object.keys(l).forEach(U=>{var ot;if(U==="_id"||I.has(U))return;let Q=l[U];const Ne=N[U];if(JSON.stringify(Q)!==JSON.stringify(Ne)&&(Q!==""&&Q!==null&&Q!==void 0)){const Ge=y.fields[U];((ot=Ge==null?void 0:Ge._bdoField)==null?void 0:ot.Type)==="Reference"&&(Q=It(Q)),b[U]=Q}});const T=b,$={...S.current};Object.keys(l).forEach(U=>{I.has(U)||($[U]=l[U])}),S.current=$;let W;r==="update"&&s?W=await p.draftPatch(s,T):v&&R?W=await p.draftInteraction(T):W=await p.draft(T),W&&typeof W=="object"&&(Object.entries(W).forEach(([U,Q])=>{l[U]!==Q&&A.setValue(U,Q,{shouldDirty:!1,shouldValidate:!1})}),Object.entries(W).forEach(([U,Q])=>{I.has(U)&&(S.current[U]=Q)}))}catch(p){console.warn("Failed to compute fields via API:",p)}finally{oe.current=!1}})()},300))}},[y,r,s,G,t,A,Fe,v,R,x]),He=V.useCallback(async()=>{if(!y)return!1;const d=A.getValues();if(!await A.trigger())return!1;const l=y.crossFieldValidation.map(p=>({Id:p.Id,Condition:{ExpressionTree:p.ExpressionTree},Message:p.Message||`Validation failed for ${p.Name}`})),m=Ft(l,d,Y);return m.length>0?(m.forEach((p,b)=>{A.setError(`root.crossField${b}`,{type:"validate",message:p.message})}),!1):!0},[y,A.getValues,A.trigger,A.setError,Y]),xe=V.useCallback((d,f)=>A.handleSubmit(async(l,m)=>{if(!y){const p=new Error("Schema not loaded");f==null||f(p,m);return}te(!0);try{const p=y.crossFieldValidation.map($=>({Id:$.Id,Condition:{ExpressionTree:$.ExpressionTree},Message:$.Message||`Validation failed for ${$.Name}`})),b=Ft(p,l,Y);if(b.length>0){b.forEach(($,W)=>{A.setError(`root.crossField${W}`,{type:"validate",message:$.message})}),f==null||f(A.formState.errors,m);return}const N={};Object.entries(y.fields).forEach(([$,W])=>{N[$]=W._bdoField.Type});const I=Cr(l,y.computedFields,r,G,N);let T;if(v){const $=ve.api(t);if(r==="create"){if(!R)throw new Error("Interactive create mode requires a draft ID. Draft creation may have failed.");T={success:!0,data:await $.draft({...I,_id:R})}}else T={success:!0,data:await $.update(s,I)}}else if(T=await Nr(t,r,I,s),!T.success)throw T.error||new Error("Submission failed");r==="create"&&(A.reset(),v&&ce(null)),await(d==null?void 0:d(T.data||l,m))}catch(p){f==null||f(Oe.toError(p),m)}finally{te(!1)}},(l,m)=>{f==null||f(l,m)}),[A,y,Y,t,r,s,G,v,R]),ke=V.useCallback(d=>(y==null?void 0:y.fields[d])||null,[y]),Se=V.useCallback(()=>{if(!y)return{};const d={};return Object.entries(y.fields).forEach(([f,l])=>{d[f]=l}),d},[y]),_e=V.useCallback(d=>!!(y!=null&&y.fields[d]),[y]),Ye=V.useCallback(d=>(y==null?void 0:y.requiredFields.includes(d))||!1,[y]),Ue=V.useCallback(d=>(y==null?void 0:y.computedFields.includes(d))||!1,[y]),Ke=V.useCallback(async()=>{await fe()},[fe]),Be=V.useCallback(()=>{A.clearErrors()},[A]),De=z||r==="update"&&Ve||v&&r==="create"&&ye,ze=De||_,Re=ne||Ie||de,nt=!!Re,qe=V.useMemo(()=>(y==null?void 0:y.computedFields)||[],[y]),a=V.useMemo(()=>(y==null?void 0:y.requiredFields)||[],[y]),u=V.useMemo(()=>{if(!y)return{};const d={};return Object.entries(y.fields).forEach(([f,l])=>{const m={};switch(l.required&&(m.required=`${l.label} is required`),l.permission.editable||(m.disabled=!0),l.type){case"number":m.valueAsNumber=!0;break;case"date":case"datetime-local":m.valueAsDate=!0;break}const p=l.rules.validation;p.length>0&&(m.validate={expressionValidation:b=>{const N=A.getValues();for(const I of p){const T=y.rules.validation[I];if(T){const $=Pr(f,b,[T],N,re);if(!$.isValid)return $.message||T.Message||"Invalid value"}}return!0}}),d[f]=m}),d},[y,A,Y]);return{register:V.useCallback((d,f)=>{const l=u[d],m=f==null?void 0:f.onBlur,p=async b=>{m&&await m(b);let N=!0;n==="onBlur"||n==="onTouched"||n==="all"?N=await A.trigger(d):N=!A.getFieldState(d,A.formState).error,N&&await Ae(d)};return A.register(d,{...l,...f,onBlur:p})},[A,u,Ae,n]),handleSubmit:xe,watch:A.watch,setValue:A.setValue,reset:A.reset,errors:A.formState.errors,isValid:A.formState.isValid,isDirty:A.formState.isDirty,isSubmitting:A.formState.isSubmitting||_,isSubmitSuccessful:A.formState.isSubmitSuccessful,isLoadingInitialData:De,isLoadingRecord:Ve,isLoading:ze,draftId:R,isCreatingDraft:ye,loadError:Re?Oe.toError(Re):null,hasError:nt,schema:H,schemaConfig:y,computedFields:qe,requiredFields:a,getField:ke,getFields:Se,hasField:_e,isFieldRequired:Ye,isFieldComputed:Ue,refreshSchema:Ke,validateForm:He,clearErrors:Be}}exports.clearFormCache=kr;exports.isNetworkError=Tr;exports.isValidationError=Mr;exports.parseApiError=Or;exports.useForm=$r;
1
+ "use strict";var Ut=Object.defineProperty;var Bt=(e,t,r)=>t in e?Ut(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var pe=(e,t,r)=>Bt(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const V=require("react"),lt=require("@tanstack/react-query"),ve=require("./client-DxjRcEtN.cjs"),qt=require("./metadata-Bz8zJqC1.cjs"),Ne=require("./error-handling-CAoD0Kwb.cjs");var Te=e=>e.type==="checkbox",ge=e=>e instanceof Date,X=e=>e==null;const _t=e=>typeof e=="object";var q=e=>!X(e)&&!Array.isArray(e)&&_t(e)&&!ge(e),Pt=e=>q(e)&&e.target?Te(e.target)?e.target.checked:e.target.value:e,$t=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,jt=(e,t)=>e.has($t(t)),Wt=e=>{const t=e.constructor&&e.constructor.prototype;return q(t)&&t.hasOwnProperty("isPrototypeOf")},tt=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function j(e){if(e instanceof Date)return new Date(e);const t=typeof FileList<"u"&&e instanceof FileList;if(tt&&(e instanceof Blob||t))return e;const r=Array.isArray(e);if(!r&&!(q(e)&&Wt(e)))return e;const s=r?[]:Object.create(Object.getPrototypeOf(e));for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&(s[i]=j(e[i]));return s}var je=e=>/^\w*$/.test(e),k=e=>e===void 0,rt=e=>Array.isArray(e)?e.filter(Boolean):[],st=e=>rt(e.replace(/["|']|\]/g,"").split(/\.|\[/)),g=(e,t,r)=>{if(!t||!q(e))return r;const s=(je(t)?[t]:st(t)).reduce((i,n)=>X(i)?i:i[n],e);return k(s)||s===e?k(e[t])?r:e[t]:s},ue=e=>typeof e=="boolean",se=e=>typeof e=="function",M=(e,t,r)=>{let s=-1;const i=je(t)?[t]:st(t),n=i.length,c=n-1;for(;++s<n;){const h=i[s];let w=r;if(s!==c){const E=e[h];w=q(E)||Array.isArray(E)?E:isNaN(+i[s+1])?{}:[]}if(h==="__proto__"||h==="constructor"||h==="prototype")return;e[h]=w,e=e[h]}};const ct={BLUR:"blur",FOCUS_OUT:"focusout"},ie={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},le={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Ht=V.createContext(null);Ht.displayName="HookFormContext";var Yt=(e,t,r,s=!0)=>{const i={defaultValues:t._defaultValues};for(const n in e)Object.defineProperty(i,n,{get:()=>{const c=n;return t._proxyFormState[c]!==ie.all&&(t._proxyFormState[c]=!s||ie.all),e[c]}});return i};const Kt=typeof window<"u"?V.useLayoutEffect:V.useEffect;var ee=e=>typeof e=="string",zt=(e,t,r,s,i)=>ee(e)?(s&&t.watch.add(e),g(r,e,i)):Array.isArray(e)?e.map(n=>(s&&t.watch.add(n),g(r,n))):(s&&(t.watchAll=!0),r),Ze=e=>X(e)||!_t(e);function he(e,t,r=new WeakSet){if(Ze(e)||Ze(t))return Object.is(e,t);if(ge(e)&&ge(t))return Object.is(e.getTime(),t.getTime());const s=Object.keys(e),i=Object.keys(t);if(s.length!==i.length)return!1;if(r.has(e)||r.has(t))return!0;r.add(e),r.add(t);for(const n of s){const c=e[n];if(!i.includes(n))return!1;if(n!=="ref"){const h=t[n];if(ge(c)&&ge(h)||q(c)&&q(h)||Array.isArray(c)&&Array.isArray(h)?!he(c,h,r):!Object.is(c,h))return!1}}return!0}var Jt=(e,t,r,s,i)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:i||!0}}:{},Ce=e=>Array.isArray(e)?e:[e],dt=()=>{let e=[];return{get observers(){return e},next:i=>{for(const n of e)n.next&&n.next(i)},subscribe:i=>(e.push(i),{unsubscribe:()=>{e=e.filter(n=>n!==i)}}),unsubscribe:()=>{e=[]}}};function Dt(e,t){const r={};for(const s in e)if(e.hasOwnProperty(s)){const i=e[s],n=t[s];if(i&&q(i)&&n){const c=Dt(i,n);q(c)&&(r[s]=c)}else e[s]&&(r[s]=n)}return r}var J=e=>q(e)&&!Object.keys(e).length,it=e=>e.type==="file",Pe=e=>{if(!tt)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Rt=e=>e.type==="select-multiple",at=e=>e.type==="radio",Gt=e=>at(e)||Te(e),Qe=e=>Pe(e)&&e.isConnected;function Qt(e,t){const r=t.slice(0,-1).length;let s=0;for(;s<r;)e=k(e)?s++:e[t[s++]];return e}function Xt(e){for(const t in e)if(e.hasOwnProperty(t)&&!k(e[t]))return!1;return!0}function B(e,t){const r=Array.isArray(t)?t:je(t)?[t]:st(t),s=r.length===1?e:Qt(e,r),i=r.length-1,n=r[i];return s&&delete s[n],i!==0&&(q(s)&&J(s)||Array.isArray(s)&&Xt(s))&&B(e,r.slice(0,-1)),e}var Zt=e=>{for(const t in e)if(se(e[t]))return!0;return!1};function Nt(e){return Array.isArray(e)||q(e)&&!Zt(e)}function et(e,t={}){for(const r in e){const s=e[r];Nt(s)?(t[r]=Array.isArray(s)?[]:{},et(s,t[r])):k(s)||(t[r]=!0)}return t}function we(e,t,r){r||(r=et(t));for(const s in e){const i=e[s];if(Nt(i))k(t)||Ze(r[s])?r[s]=et(i,Array.isArray(i)?[]:{}):we(i,X(t)?{}:t[s],r[s]);else{const n=t[s];r[s]=!he(i,n)}}return r}const ft={value:!1,isValid:!1},ht={value:!0,isValid:!0};var Ct=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(r=>r&&r.checked&&!r.disabled).map(r=>r.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!k(e[0].attributes.value)?k(e[0].value)||e[0].value===""?ht:{value:e[0].value,isValid:!0}:ht:ft}return ft},Ot=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>k(e)?e:t?e===""?NaN:e&&+e:r&&ee(e)?new Date(e):s?s(e):e;const mt={isValid:!1,value:null};var Tt=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,mt):mt;function yt(e){const t=e.ref;return it(t)?t.files:at(t)?Tt(e.refs).value:Rt(t)?[...t.selectedOptions].map(({value:r})=>r):Te(t)?Ct(e.refs).value:Ot(k(t.value)?e.ref.value:t.value,e)}var er=(e,t,r,s)=>{const i={};for(const n of e){const c=g(t,n);c&&M(i,n,c._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:s}},$e=e=>e instanceof RegExp,Re=e=>k(e)?e:$e(e)?e.source:q(e)?$e(e.value)?e.value.source:e.value:e,gt=e=>({isOnSubmit:!e||e===ie.onSubmit,isOnBlur:e===ie.onBlur,isOnChange:e===ie.onChange,isOnAll:e===ie.all,isOnTouch:e===ie.onTouched});const pt="AsyncFunction";var tr=e=>!!e&&!!e.validate&&!!(se(e.validate)&&e.validate.constructor.name===pt||q(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===pt)),rr=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),bt=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const Oe=(e,t,r,s)=>{for(const i of r||Object.keys(e)){const n=g(e,i);if(n){const{_f:c,...h}=n;if(c){if(c.refs&&c.refs[0]&&t(c.refs[0],i)&&!s)return!0;if(c.ref&&t(c.ref,c.name)&&!s)return!0;if(Oe(h,t))break}else if(q(h)&&Oe(h,t))break}}};function wt(e,t,r){const s=g(e,r);if(s||je(r))return{error:s,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),c=g(t,n),h=g(e,n);if(c&&!Array.isArray(c)&&r!==n)return{name:r};if(h&&h.type)return{name:n,error:h};if(h&&h.root&&h.root.type)return{name:`${n}.root`,error:h.root};i.pop()}return{name:r}}var sr=(e,t,r,s)=>{r(e);const{name:i,...n}=e;return J(n)||Object.keys(n).length>=Object.keys(t).length||Object.keys(n).find(c=>t[c]===(!s||ie.all))},ir=(e,t,r)=>!e||!t||e===t||Ce(e).some(s=>s&&(r?s===t:s.startsWith(t)||t.startsWith(s))),ar=(e,t,r,s,i)=>i.isOnAll?!1:!r&&i.isOnTouch?!(t||e):(r?s.isOnBlur:i.isOnBlur)?!e:(r?s.isOnChange:i.isOnChange)?e:!0,nr=(e,t)=>!rt(g(e,t)).length&&B(e,t),ur=(e,t,r)=>{const s=Ce(g(e,r));return M(s,"root",t[r]),M(e,r,s),e};function vt(e,t,r="validate"){if(ee(e)||Array.isArray(e)&&e.every(ee)||ue(e)&&!e)return{type:r,message:ee(e)?e:"",ref:t}}var be=e=>q(e)&&!$e(e)?e:{value:e,message:""},Et=async(e,t,r,s,i,n)=>{const{ref:c,refs:h,required:w,maxLength:E,minLength:C,min:D,max:x,pattern:v,validate:y,name:P,valueAsNumber:Y,mount:Z}=e._f,_=g(r,P);if(!Z||t.has(P))return{};const te=h?h[0]:c,re=F=>{i&&te.reportValidity&&(te.setCustomValidity(ue(F)?"":F||""),te.reportValidity())},R={},ce=at(c),ye=Te(c),ae=ce||ye,de=(Y||it(c))&&k(c.value)&&k(_)||Pe(c)&&c.value===""||_===""||Array.isArray(_)&&!_.length,K=Jt.bind(null,P,s,R),oe=(F,S,L,O=le.maxLength,H=le.minLength)=>{const z=F?S:L;R[P]={type:F?O:H,message:z,ref:c,...K(F?O:H,z)}};if(n?!Array.isArray(_)||!_.length:w&&(!ae&&(de||X(_))||ue(_)&&!_||ye&&!Ct(h).isValid||ce&&!Tt(h).isValid)){const{value:F,message:S}=ee(w)?{value:!!w,message:w}:be(w);if(F&&(R[P]={type:le.required,message:S,ref:te,...K(le.required,S)},!s))return re(S),R}if(!de&&(!X(D)||!X(x))){let F,S;const L=be(x),O=be(D);if(!X(_)&&!isNaN(_)){const H=c.valueAsNumber||_&&+_;X(L.value)||(F=H>L.value),X(O.value)||(S=H<O.value)}else{const H=c.valueAsDate||new Date(_),z=G=>new Date(new Date().toDateString()+" "+G),ne=c.type=="time",fe=c.type=="week";ee(L.value)&&_&&(F=ne?z(_)>z(L.value):fe?_>L.value:H>new Date(L.value)),ee(O.value)&&_&&(S=ne?z(_)<z(O.value):fe?_<O.value:H<new Date(O.value))}if((F||S)&&(oe(!!F,L.message,O.message,le.max,le.min),!s))return re(R[P].message),R}if((E||C)&&!de&&(ee(_)||n&&Array.isArray(_))){const F=be(E),S=be(C),L=!X(F.value)&&_.length>+F.value,O=!X(S.value)&&_.length<+S.value;if((L||O)&&(oe(L,F.message,S.message),!s))return re(R[P].message),R}if(v&&!de&&ee(_)){const{value:F,message:S}=be(v);if($e(F)&&!_.match(F)&&(R[P]={type:le.pattern,message:S,ref:c,...K(le.pattern,S)},!s))return re(S),R}if(y){if(se(y)){const F=await y(_,r),S=vt(F,te);if(S&&(R[P]={...S,...K(le.validate,S.message)},!s))return re(S.message),R}else if(q(y)){let F={};for(const S in y){if(!J(F)&&!s)break;const L=vt(await y[S](_,r),te,S);L&&(F={...L,...K(S,L.message)},re(L.message),s&&(R[P]=F))}if(!J(F)&&(R[P]={ref:te,...F},!s))return R}}return re(!0),R};const or={mode:ie.onSubmit,reValidateMode:ie.onChange,shouldFocusError:!0};function lr(e={}){let t={...or,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:se(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},s={},i=q(t.defaultValues)||q(t.values)?j(t.defaultValues||t.values)||{}:{},n=t.shouldUnregister?{}:j(i),c={action:!1,mount:!1,watch:!1,keepIsValid:!1},h={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},w,E=0;const C={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},D={...C};let x={...D};const v={array:dt(),state:dt()},y=t.criteriaMode===ie.all,P=a=>u=>{clearTimeout(E),E=setTimeout(a,u)},Y=async a=>{if(!c.keepIsValid&&!t.disabled&&(D.isValid||x.isValid||a)){let u;t.resolver?(u=J((await ae()).errors),Z()):u=await K(s,!0),u!==r.isValid&&v.state.next({isValid:u})}},Z=(a,u)=>{!t.disabled&&(D.isValidating||D.validatingFields||x.isValidating||x.validatingFields)&&((a||Array.from(h.mount)).forEach(o=>{o&&(u?M(r.validatingFields,o,u):B(r.validatingFields,o))}),v.state.next({validatingFields:r.validatingFields,isValidating:!J(r.validatingFields)}))},_=(a,u=[],o,d,f=!0,l=!0)=>{if(d&&o&&!t.disabled){if(c.action=!0,l&&Array.isArray(g(s,a))){const m=o(g(s,a),d.argA,d.argB);f&&M(s,a,m)}if(l&&Array.isArray(g(r.errors,a))){const m=o(g(r.errors,a),d.argA,d.argB);f&&M(r.errors,a,m),nr(r.errors,a)}if((D.touchedFields||x.touchedFields)&&l&&Array.isArray(g(r.touchedFields,a))){const m=o(g(r.touchedFields,a),d.argA,d.argB);f&&M(r.touchedFields,a,m)}(D.dirtyFields||x.dirtyFields)&&(r.dirtyFields=we(i,n)),v.state.next({name:a,isDirty:F(a,u),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else M(n,a,u)},te=(a,u)=>{M(r.errors,a,u),v.state.next({errors:r.errors})},re=a=>{r.errors=a,v.state.next({errors:r.errors,isValid:!1})},R=(a,u,o,d)=>{const f=g(s,a);if(f){const l=g(n,a,k(o)?g(i,a):o);k(l)||d&&d.defaultChecked||u?M(n,a,u?l:yt(f._f)):O(a,l),c.mount&&!c.action&&Y()}},ce=(a,u,o,d,f)=>{let l=!1,m=!1;const p={name:a};if(!t.disabled){if(!o||d){(D.isDirty||x.isDirty)&&(m=r.isDirty,r.isDirty=p.isDirty=F(),l=m!==p.isDirty);const b=he(g(i,a),u);m=!!g(r.dirtyFields,a),b?B(r.dirtyFields,a):M(r.dirtyFields,a,!0),p.dirtyFields=r.dirtyFields,l=l||(D.dirtyFields||x.dirtyFields)&&m!==!b}if(o){const b=g(r.touchedFields,a);b||(M(r.touchedFields,a,o),p.touchedFields=r.touchedFields,l=l||(D.touchedFields||x.touchedFields)&&b!==o)}l&&f&&v.state.next(p)}return l?p:{}},ye=(a,u,o,d)=>{const f=g(r.errors,a),l=(D.isValid||x.isValid)&&ue(u)&&r.isValid!==u;if(t.delayError&&o?(w=P(()=>te(a,o)),w(t.delayError)):(clearTimeout(E),w=null,o?M(r.errors,a,o):B(r.errors,a)),(o?!he(f,o):f)||!J(d)||l){const m={...d,...l&&ue(u)?{isValid:u}:{},errors:r.errors,name:a};r={...r,...m},v.state.next(m)}},ae=async a=>(Z(a,!0),await t.resolver(n,t.context,er(a||h.mount,s,t.criteriaMode,t.shouldUseNativeValidation))),de=async a=>{const{errors:u}=await ae(a);if(Z(a),a)for(const o of a){const d=g(u,o);d?M(r.errors,o,d):B(r.errors,o)}else r.errors=u;return u},K=async(a,u,o={valid:!0})=>{for(const d in a){const f=a[d];if(f){const{_f:l,...m}=f;if(l){const p=h.array.has(l.name),b=f._f&&tr(f._f);b&&D.validatingFields&&Z([l.name],!0);const N=await Et(f,h.disabled,n,y,t.shouldUseNativeValidation&&!u,p);if(b&&D.validatingFields&&Z([l.name]),N[l.name]&&(o.valid=!1,u||e.shouldUseNativeValidation))break;!u&&(g(N,l.name)?p?ur(r.errors,N,l.name):M(r.errors,l.name,N[l.name]):B(r.errors,l.name))}!J(m)&&await K(m,u,o)}}return o.valid},oe=()=>{for(const a of h.unMount){const u=g(s,a);u&&(u._f.refs?u._f.refs.every(o=>!Qe(o)):!Qe(u._f.ref))&&Ae(a)}h.unMount=new Set},F=(a,u)=>!t.disabled&&(a&&u&&M(n,a,u),!he(Me(),i)),S=(a,u,o)=>zt(a,h,{...c.mount?n:k(u)?i:ee(a)?{[a]:u}:u},o,u),L=a=>rt(g(c.mount?n:i,a,t.shouldUnregister?g(i,a,[]):[])),O=(a,u,o={})=>{const d=g(s,a);let f=u;if(d){const l=d._f;l&&(!l.disabled&&M(n,a,Ot(u,l)),f=Pe(l.ref)&&X(u)?"":u,Rt(l.ref)?[...l.ref.options].forEach(m=>m.selected=f.includes(m.value)):l.refs?Te(l.ref)?l.refs.forEach(m=>{(!m.defaultChecked||!m.disabled)&&(Array.isArray(f)?m.checked=!!f.find(p=>p===m.value):m.checked=f===m.value||!!f)}):l.refs.forEach(m=>m.checked=m.value===f):it(l.ref)?l.ref.value="":(l.ref.value=f,l.ref.type||v.state.next({name:a,values:j(n)})))}(o.shouldDirty||o.shouldTouch)&&ce(a,f,o.shouldTouch,o.shouldDirty,!0),o.shouldValidate&&G(a)},H=(a,u,o)=>{for(const d in u){if(!u.hasOwnProperty(d))return;const f=u[d],l=a+"."+d,m=g(s,l);(h.array.has(a)||q(f)||m&&!m._f)&&!ge(f)?H(l,f,o):O(l,f,o)}},z=(a,u,o={})=>{const d=g(s,a),f=h.array.has(a),l=j(u);M(n,a,l),f?(v.array.next({name:a,values:j(n)}),(D.isDirty||D.dirtyFields||x.isDirty||x.dirtyFields)&&o.shouldDirty&&v.state.next({name:a,dirtyFields:we(i,n),isDirty:F(a,l)})):d&&!d._f&&!X(l)?H(a,l,o):O(a,l,o),bt(a,h)?v.state.next({...r,name:a,values:j(n)}):v.state.next({name:c.mount?a:void 0,values:j(n)})},ne=async a=>{c.mount=!0;const u=a.target;let o=u.name,d=!0;const f=g(s,o),l=b=>{d=Number.isNaN(b)||ge(b)&&isNaN(b.getTime())||he(b,g(n,o,b))},m=gt(t.mode),p=gt(t.reValidateMode);if(f){let b,N;const I=u.type?yt(f._f):Pt(a),T=a.type===ct.BLUR||a.type===ct.FOCUS_OUT,$=!rr(f._f)&&!t.resolver&&!g(r.errors,o)&&!f._f.deps||ar(T,g(r.touchedFields,o),r.isSubmitted,p,m),W=bt(o,h,T);M(n,o,I),T?(!u||!u.readOnly)&&(f._f.onBlur&&f._f.onBlur(a),w&&w(0)):f._f.onChange&&f._f.onChange(a);const U=ce(o,I,T),Q=!J(U)||W;if(!T&&v.state.next({name:o,type:a.type,values:j(n)}),$)return(D.isValid||x.isValid)&&(t.mode==="onBlur"?T&&Y():T||Y()),Q&&v.state.next({name:o,...W?{}:U});if(!T&&W&&v.state.next({...r}),t.resolver){const{errors:De}=await ae([o]);if(Z([o]),l(I),d){const ut=wt(r.errors,s,o),Je=wt(De,s,ut.name||o);b=Je.error,o=Je.name,N=J(De)}}else Z([o],!0),b=(await Et(f,h.disabled,n,y,t.shouldUseNativeValidation))[o],Z([o]),l(I),d&&(b?N=!1:(D.isValid||x.isValid)&&(N=await K(s,!0)));d&&(f._f.deps&&(!Array.isArray(f._f.deps)||f._f.deps.length>0)&&G(f._f.deps),ye(o,N,b,U))}},fe=(a,u)=>{if(g(r.errors,u)&&a.focus)return a.focus(),1},G=async(a,u={})=>{let o,d;const f=Ce(a);if(t.resolver){const l=await de(k(a)?a:f);o=J(l),d=a?!f.some(m=>g(l,m)):o}else a?(d=(await Promise.all(f.map(async l=>{const m=g(s,l);return await K(m&&m._f?{[l]:m}:m)}))).every(Boolean),!(!d&&!r.isValid)&&Y()):d=o=await K(s);return v.state.next({...!ee(a)||(D.isValid||x.isValid)&&o!==r.isValid?{}:{name:a},...t.resolver||!a?{isValid:o}:{},errors:r.errors}),u.shouldFocus&&!d&&Oe(s,fe,a?f:h.mount),d},Me=(a,u)=>{let o={...c.mount?n:i};return u&&(o=Dt(u.dirtyFields?r.dirtyFields:r.touchedFields,o)),k(a)?o:ee(a)?g(o,a):a.map(d=>g(o,d))},Le=(a,u)=>({invalid:!!g((u||r).errors,a),isDirty:!!g((u||r).dirtyFields,a),error:g((u||r).errors,a),isValidating:!!g(r.validatingFields,a),isTouched:!!g((u||r).touchedFields,a)}),We=a=>{a&&Ce(a).forEach(u=>B(r.errors,u)),v.state.next({errors:a?r.errors:{}})},A=(a,u,o)=>{const d=(g(s,a,{_f:{}})._f||{}).ref,f=g(r.errors,a)||{},{ref:l,message:m,type:p,...b}=f;M(r.errors,a,{...b,...u,ref:d}),v.state.next({name:a,errors:r.errors,isValid:!1}),o&&o.shouldFocus&&d&&d.focus&&d.focus()},Ve=(a,u)=>se(a)?v.state.subscribe({next:o=>"values"in o&&a(S(void 0,u),o)}):S(a,u,!0),Fe=a=>v.state.subscribe({next:u=>{ir(a.name,u.name,a.exact)&&sr(u,a.formState||D,_e,a.reRenderRoot)&&a.callback({values:{...n},...r,...u,defaultValues:i})}}).unsubscribe,He=a=>(c.mount=!0,x={...x,...a.formState},Fe({...a,formState:{...C,...a.formState}})),Ae=(a,u={})=>{for(const o of a?Ce(a):h.mount)h.mount.delete(o),h.array.delete(o),u.keepValue||(B(s,o),B(n,o)),!u.keepError&&B(r.errors,o),!u.keepDirty&&B(r.dirtyFields,o),!u.keepTouched&&B(r.touchedFields,o),!u.keepIsValidating&&B(r.validatingFields,o),!t.shouldUnregister&&!u.keepDefaultValue&&B(i,o);v.state.next({values:j(n)}),v.state.next({...r,...u.keepDirty?{isDirty:F()}:{}}),!u.keepIsValid&&Y()},Ie=({disabled:a,name:u})=>{(ue(a)&&c.mount||a||h.disabled.has(u))&&(a?h.disabled.add(u):h.disabled.delete(u))},xe=(a,u={})=>{let o=g(s,a);const d=ue(u.disabled)||ue(t.disabled);return M(s,a,{...o||{},_f:{...o&&o._f?o._f:{ref:{name:a}},name:a,mount:!0,...u}}),h.mount.add(a),o?Ie({disabled:ue(u.disabled)?u.disabled:t.disabled,name:a}):R(a,!0,u.value),{...d?{disabled:u.disabled||t.disabled}:{},...t.progressive?{required:!!u.required,min:Re(u.min),max:Re(u.max),minLength:Re(u.minLength),maxLength:Re(u.maxLength),pattern:Re(u.pattern)}:{},name:a,onChange:ne,onBlur:ne,ref:f=>{if(f){xe(a,u),o=g(s,a);const l=k(f.value)&&f.querySelectorAll&&f.querySelectorAll("input,select,textarea")[0]||f,m=Gt(l),p=o._f.refs||[];if(m?p.find(b=>b===l):l===o._f.ref)return;M(s,a,{_f:{...o._f,...m?{refs:[...p.filter(Qe),l,...Array.isArray(g(i,a))?[{}]:[]],ref:{type:l.type,name:a}}:{ref:l}}}),R(a,!1,void 0,l)}else o=g(s,a,{}),o._f&&(o._f.mount=!1),(t.shouldUnregister||u.shouldUnregister)&&!(jt(h.array,a)&&c.action)&&h.unMount.add(a)}}},Se=()=>t.shouldFocusError&&Oe(s,fe,h.mount),Ye=a=>{ue(a)&&(v.state.next({disabled:a}),Oe(s,(u,o)=>{const d=g(s,o);d&&(u.disabled=d._f.disabled||a,Array.isArray(d._f.refs)&&d._f.refs.forEach(f=>{f.disabled=d._f.disabled||a}))},0,!1))},ke=(a,u)=>async o=>{let d;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let f=j(n);if(v.state.next({isSubmitting:!0}),t.resolver){const{errors:l,values:m}=await ae();Z(),r.errors=l,f=j(m)}else await K(s);if(h.disabled.size)for(const l of h.disabled)B(f,l);if(B(r.errors,"root"),J(r.errors)){v.state.next({errors:{}});try{await a(f,o)}catch(l){d=l}}else u&&await u({...r.errors},o),Se(),setTimeout(Se);if(v.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:J(r.errors)&&!d,submitCount:r.submitCount+1,errors:r.errors}),d)throw d},Ke=(a,u={})=>{g(s,a)&&(k(u.defaultValue)?z(a,j(g(i,a))):(z(a,u.defaultValue),M(i,a,j(u.defaultValue))),u.keepTouched||B(r.touchedFields,a),u.keepDirty||(B(r.dirtyFields,a),r.isDirty=u.defaultValue?F(a,j(g(i,a))):F()),u.keepError||(B(r.errors,a),D.isValid&&Y()),v.state.next({...r}))},Ue=(a,u={})=>{const o=a?j(a):i,d=j(o),f=J(a),l=f?i:d;if(u.keepDefaultValues||(i=o),!u.keepValues){if(u.keepDirtyValues){const m=new Set([...h.mount,...Object.keys(we(i,n))]);for(const p of Array.from(m)){const b=g(r.dirtyFields,p),N=g(n,p),I=g(l,p);b&&!k(N)?M(l,p,N):!b&&!k(I)&&z(p,I)}}else{if(tt&&k(a))for(const m of h.mount){const p=g(s,m);if(p&&p._f){const b=Array.isArray(p._f.refs)?p._f.refs[0]:p._f.ref;if(Pe(b)){const N=b.closest("form");if(N){N.reset();break}}}}if(u.keepFieldsRef)for(const m of h.mount)z(m,g(l,m));else s={}}n=t.shouldUnregister?u.keepDefaultValues?j(i):{}:j(l),v.array.next({values:{...l}}),v.state.next({values:{...l}})}h={mount:u.keepDirtyValues?h.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},c.mount=!D.isValid||!!u.keepIsValid||!!u.keepDirtyValues||!t.shouldUnregister&&!J(l),c.watch=!!t.shouldUnregister,c.keepIsValid=!!u.keepIsValid,c.action=!1,u.keepErrors||(r.errors={}),v.state.next({submitCount:u.keepSubmitCount?r.submitCount:0,isDirty:f?!1:u.keepDirty?r.isDirty:!!(u.keepDefaultValues&&!he(a,i)),isSubmitted:u.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:f?{}:u.keepDirtyValues?u.keepDefaultValues&&n?we(i,n):r.dirtyFields:u.keepDefaultValues&&a?we(i,a):u.keepDirty?r.dirtyFields:{},touchedFields:u.keepTouched?r.touchedFields:{},errors:u.keepErrors?r.errors:{},isSubmitSuccessful:u.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Be=(a,u)=>Ue(se(a)?a(n):a,{...t.resetOptions,...u}),ze=(a,u={})=>{const o=g(s,a),d=o&&o._f;if(d){const f=d.refs?d.refs[0]:d.ref;f.focus&&setTimeout(()=>{f.focus(),u.shouldSelect&&se(f.select)&&f.select()})}},_e=a=>{r={...r,...a}},qe={control:{register:xe,unregister:Ae,getFieldState:Le,handleSubmit:ke,setError:A,_subscribe:Fe,_runSchema:ae,_updateIsValidating:Z,_focusError:Se,_getWatch:S,_getDirty:F,_setValid:Y,_setFieldArray:_,_setDisabledField:Ie,_setErrors:re,_getFieldArray:L,_reset:Ue,_resetDefaultValues:()=>se(t.defaultValues)&&t.defaultValues().then(a=>{Be(a,t.resetOptions),v.state.next({isLoading:!1})}),_removeUnmounted:oe,_disableForm:Ye,_subjects:v,_proxyFormState:D,get _fields(){return s},get _formValues(){return n},get _state(){return c},set _state(a){c=a},get _defaultValues(){return i},get _names(){return h},set _names(a){h=a},get _formState(){return r},get _options(){return t},set _options(a){t={...t,...a}}},subscribe:He,trigger:G,register:xe,handleSubmit:ke,watch:Ve,setValue:z,getValues:Me,reset:Be,resetField:Ke,clearErrors:We,unregister:Ae,setError:A,setFocus:ze,getFieldState:Le};return{...qe,formControl:qe}}function cr(e={}){const t=V.useRef(void 0),r=V.useRef(void 0),[s,i]=V.useState({isDirty:!1,isValidating:!1,isLoading:se(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:se(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:s},e.defaultValues&&!se(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:c,...h}=lr(e);t.current={...h,formState:s}}const n=t.current.control;return n._options=e,Kt(()=>{const c=n._subscribe({formState:n._proxyFormState,callback:()=>i({...n._formState}),reRenderRoot:!0});return i(h=>({...h,isReady:!0})),n._formState.isReady=!0,c},[n]),V.useEffect(()=>n._disableForm(e.disabled),[n,e.disabled]),V.useEffect(()=>{e.mode&&(n._options.mode=e.mode),e.reValidateMode&&(n._options.reValidateMode=e.reValidateMode)},[n,e.mode,e.reValidateMode]),V.useEffect(()=>{e.errors&&(n._setErrors(e.errors),n._focusError())},[n,e.errors]),V.useEffect(()=>{e.shouldUnregister&&n._subjects.state.next({values:n._getWatch()})},[n,e.shouldUnregister]),V.useEffect(()=>{if(n._proxyFormState.isDirty){const c=n._getDirty();c!==s.isDirty&&n._subjects.state.next({isDirty:c})}},[n,s.isDirty]),V.useEffect(()=>{var c;e.values&&!he(e.values,r.current)?(n._reset(e.values,{keepFieldsRef:!0,...n._options.resetOptions}),!((c=n._options.resetOptions)===null||c===void 0)&&c.keepIsValid||n._setValid(),r.current=e.values,i(h=>({...h}))):n._resetDefaultValues()},[n,e.values]),V.useEffect(()=>{n._state.mount||(n._setValid(),n._state.mount=!0),n._state.watch&&(n._state.watch=!1,n._subjects.state.next({...n._formState})),n._removeUnmounted()}),t.current.formState=Yt(s,n),t.current}function dr(){const e=new Date;return{NOW:e,TODAY:new Date(e.getFullYear(),e.getMonth(),e.getDate()),CURRENT_USER:{EmpId:1,Email:"user@example.com",FirstName:"John",LastName:"Doe",Role:"User"},CURRENT_USER_ID:1}}const fr={CONCAT:(...e)=>e.map(t=>String(t||"")).join(""),TRIM:e=>String(e||"").trim(),LENGTH:e=>String(e||"").length,UPPER:e=>String(e||"").toUpperCase(),LOWER:e=>String(e||"").toLowerCase(),SUBSTRING:(e,t,r)=>{const s=String(e||"");return r!==void 0?s.substring(t,t+r):s.substring(t)},CONTAINS:(e,t)=>String(e||"").includes(String(t||"")),YEAR:e=>new Date(e).getFullYear(),MONTH:e=>new Date(e).getMonth()+1,DAY:e=>new Date(e).getDate(),DATE_DIFF:(e,t)=>{const r=new Date(e),s=new Date(t),i=Math.abs(r.getTime()-s.getTime());return Math.ceil(i/(1e3*60*60*24))},ADD_DAYS:(e,t)=>{const r=new Date(e);return r.setDate(r.getDate()+t),r},ADD_MONTHS:(e,t)=>{const r=new Date(e);return r.setMonth(r.getMonth()+t),r},SUM:(...e)=>e.reduce((t,r)=>t+(Number(r)||0),0),AVG:(...e)=>{const t=e.filter(r=>!isNaN(Number(r)));return t.length>0?t.reduce((r,s)=>r+Number(s),0)/t.length:0},MIN:(...e)=>Math.min(...e.map(t=>Number(t)||0)),MAX:(...e)=>Math.max(...e.map(t=>Number(t)||0)),ROUND:e=>Math.round(Number(e)||0),FLOOR:e=>Math.floor(Number(e)||0),CEIL:e=>Math.ceil(Number(e)||0),ABS:e=>Math.abs(Number(e)||0),IF:(e,t,r)=>e?t:r,IS_NULL:e=>e==null,IS_EMPTY:e=>!e||String(e).trim()==="",IS_NUMBER:e=>!isNaN(Number(e))&&e!==""&&e!==null&&e!==void 0,IS_DATE:e=>{const t=new Date(e);return!isNaN(t.getTime())},AUTO_NUMBER:()=>Math.floor(Math.random()*1e4)+1e3,UUID:()=>"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)}),ARRAY_LENGTH:e=>Array.isArray(e)?e.length:0,ARRAY_CONTAINS:(e,t)=>Array.isArray(e)?e.includes(t):!1,ARRAY_JOIN:(e,t=",")=>Array.isArray(e)?e.join(t):""};function me(e,t){var r;switch(e.Type){case"Literal":return e.Value;case"SystemIdentifier":if(e.Property){const E=t.systemValues[e.Name];return Xe(E,e.Property.Name)}return t.systemValues[e.Name];case"Identifier":if(e.Property){const E=Vt(e,t);return Xe(E,e.Property.Name)}return Vt(e,t);case"MemberExpression":if(!e.Arguments||e.Arguments.length===0)throw new Error("MemberExpression requires Arguments array");const s=me(e.Arguments[0],t),i=(r=e.Arguments[0].Property)==null?void 0:r.Name;return i?Xe(s,i):s;case"BinaryExpression":if(!e.Arguments||e.Arguments.length!==2)throw new Error("BinaryExpression requires exactly 2 arguments");const n=me(e.Arguments[0],t),c=me(e.Arguments[1],t);return hr(e.Operator,n,c);case"LogicalExpression":if(!e.Arguments||e.Arguments.length<2)throw new Error("LogicalExpression requires at least 2 arguments");return mr(e.Operator,e.Arguments,t);case"CallExpression":if(!e.Callee)throw new Error("CallExpression requires Callee");const h=fr[e.Callee];if(!h)throw new Error(`Unknown function: ${e.Callee}`);const w=(e.Arguments||[]).map(E=>me(E,t));return h(...w);case"AssignmentExpression":if(!e.Arguments||e.Arguments.length!==1)throw new Error("AssignmentExpression requires exactly 1 argument");return me(e.Arguments[0],t);default:throw new Error(`Unknown expression type: ${e.Type}`)}}function Vt(e,t){const{Name:r,Source:s}=e;if(!r)throw new Error("Identifier requires Name");switch(s){case"Input":default:return t.formValues[r]}}function Xe(e,t){if(!(!e||typeof e!="object"))return e[t]}function hr(e,t,r){const s=i=>i==null?0:typeof i=="number"?i:typeof i=="object"&&i!==null&&"value"in i?Number(i.value)||0:Number(i)||0;switch(e){case"==":return t==r;case"!=":return t!=r;case">":return s(t)>s(r);case"<":return s(t)<s(r);case">=":return s(t)>=s(r);case"<=":return s(t)<=s(r);case"+":return s(t)+s(r);case"-":return s(t)-s(r);case"*":return s(t)*s(r);case"/":const i=s(r);return i!==0?s(t)/i:0;default:throw new Error(`Unknown binary operator: ${e}`)}}function mr(e,t,r){switch(e){case"AND":return t.every(s=>!!me(s,r));case"OR":return t.some(s=>!!me(s,r));default:throw new Error(`Unknown logical operator: ${e}`)}}function Mt(e,t,r={}){const s={formValues:t,systemValues:dr(),referenceData:r};try{return me(e,s)}catch(i){return console.warn("Expression evaluation failed:",i),!1}}function Ft(e,t,r={}){const s=[];for(const i of e)try{Mt(i.Condition.ExpressionTree,t,r)||s.push({isValid:!1,message:i.Message,fieldName:i.Id})}catch(n){console.warn(`Cross-field validation rule ${i.Id} failed:`,n)}return s}function yr(e,t={},r={}){try{return Mt(e,t,r)}catch(s){return console.warn("Default value calculation failed:",s),null}}function At(e,t){var h,w,E;const r=((h=e.Expression)==null?void 0:h.toLowerCase())||"",s=((w=e.Name)==null?void 0:w.toLowerCase())||"",i=((E=e.Id)==null?void 0:E.toLowerCase())||"",n=t.toLowerCase();return s.includes("required")||i.includes("required")?!0:[`${n} != null`,`${n} != ''`,`trim(${n}) != ''`,`${n}!=null`,`${n}!=''`].some(C=>r.includes(C))}function gr(e){const t={...e};t.Rules||(t.Rules={Validation:{},Computation:{},BusinessLogic:{}}),t.Rules.Validation||(t.Rules.Validation={}),t.Rules.Computation||(t.Rules.Computation={}),t.Rules.BusinessLogic||(t.Rules.BusinessLogic={});const r={...t.Fields};return Object.entries(r).forEach(([s,i])=>{let n=i.Required||!1;if(i.Validation&&Array.isArray(i.Validation))if(i.Validation.length>0&&typeof i.Validation[0]=="object"){const c=[];i.Validation.forEach(h=>{t.Rules.Validation[h.Id]=h,c.push(h.Id),At(h,s)&&(n=!0)}),r[s]={...i,Validation:c,Required:n}}else i.Validation.forEach(h=>{var E;const w=(E=t.Rules.Validation)==null?void 0:E[h];w&&At(w,s)&&(n=!0)}),n&&!i.Required&&(r[s]={...i,Required:!0});if(i.Formula){const c=`RULE_COMPUTE_${s.toUpperCase()}`;t.Rules.Computation[c]={Id:c,Name:i.Formula.Id||`Compute ${s}`,Description:i.Formula.Description||`Computes value for ${s}`,Expression:i.Formula.Expression,ExpressionTree:i.Formula.ExpressionTree,ResultType:i.Type}}}),t.Fields=r,t}function pr(e){var r,s,i;const t={validation:{},computation:{},businessLogic:{}};return(r=e.Rules)!=null&&r.Validation&&(t.validation={...e.Rules.Validation}),(s=e.Rules)!=null&&s.Computation&&(t.computation={...e.Rules.Computation}),(i=e.Rules)!=null&&i.BusinessLogic&&(t.businessLogic={...e.Rules.BusinessLogic}),t}function br(e){var s;const t={};if(!((s=e.Rules)!=null&&s.Computation))return t;const r=Object.entries(e.Fields).filter(([i,n])=>n.Computed).map(([i])=>i);return r.sort((i,n)=>n.length-i.length),Object.entries(e.Rules.Computation).forEach(([i,n])=>{const c=i.toUpperCase().replace(/[_-]/g,"");for(const w of r){const E=w.toUpperCase().replace(/[_-]/g,"");if(c.includes(E)){t[i]=w;return}}const h=`${n.Name||""} ${n.Description||""}`.toLowerCase();for(const w of r)if(h.includes(w.toLowerCase())){t[i]=w;return}}),t}function wr(e,t){const r={};Object.keys(e.Fields).forEach(i=>{r[i]={validation:[],computation:[],businessLogic:[]}}),Object.entries(e.Fields).forEach(([i,n])=>{n.Validation&&Array.isArray(n.Validation)&&n.Validation.forEach(h=>{t.validation[h]?r[i].validation.push(h):t.computation[h]?r[i].computation.push(h):t.businessLogic[h]&&r[i].businessLogic.push(h)}),n.Formula&&Object.entries(t.computation).forEach(([c,h])=>{var w;h.Expression===((w=n.Formula)==null?void 0:w.Expression)&&(r[i].computation.includes(c)||r[i].computation.push(c))})});const s=br(e);return Object.entries(s).forEach(([i,n])=>{r[n]&&!r[n].computation.includes(i)&&r[n].computation.push(i)}),r}function vr(e,t){const r={},s={editable:!0,readable:!0,hidden:!1};return Object.keys(e.Fields).forEach(i=>{var w,E,C,D,x,v;if(!t||!((w=e.RolePermission)!=null&&w[t])){r[i]=s;return}const n=e.RolePermission[t],c=((E=n.Editable)==null?void 0:E.includes(i))||((C=n.Editable)==null?void 0:C.includes("*"))||!1,h=((D=n.ReadOnly)==null?void 0:D.includes(i))||((x=n.ReadOnly)==null?void 0:x.includes("*"))||c;r[i]={editable:c&&!((v=n.ReadOnly)!=null&&v.includes(i)),readable:h,hidden:!h}}),r}function Er(e,t){switch(e){case"String":return t.toLowerCase().includes("email")?"email":t.toLowerCase().includes("password")?"password":"text";case"Number":return"number";case"Boolean":return"checkbox";case"Date":return"date";case"DateTime":return"datetime-local";case"Reference":return"reference";case"Array":case"Object":return"textarea";default:return"text"}}function Lt(e){return e.replace(/([A-Z])/g," $1").replace(/^./,t=>t.toUpperCase()).replace(/_/g," ").trim()}function Vr(e,t,r){const s={};switch(t.Required&&(s.required={value:!0,message:`${Lt(e)} is required`}),t.Type){case"Number":s.valueAsNumber=!0;break;case"Date":case"DateTime":s.valueAsDate=!0;break}return t.Validation&&t.Validation.length>0&&(s.validate=()=>!0),s}function Fr(e){return e.Values?e.Values.Mode==="Static"&&e.Values.Items?e.Values.Items.map(t=>({value:t.Value,label:t.Label})):e.Values.Mode==="Dynamic"&&e.Values.Reference?[]:[]:[]}function Ar(e,t={}){if(!e.DefaultValue)switch(e.Type){case"Boolean":return!1;case"Number":return 0;case"String":return"";case"Array":return[];case"Object":return{};default:return}return yr(e.DefaultValue.ExpressionTree,t)}function xr(e,t,r,s={},i,n){const c={editable:!0,readable:!0,hidden:!1},w=n||{validation:[],computation:[],businessLogic:[]},E=t.Computed||!!t.Formula||w.computation.length>0,C=Vr(e,t);return E&&(C.disabled=!0),{name:e,type:Er(t.Type,e),label:t.Name||Lt(e),required:t.Required||!1,computed:E,defaultValue:Ar(t,s),options:Fr(t),validation:C,description:t.Description,_bdoField:t,permission:i||c,rules:w}}function Sr(e,t={},r){let s=e;s=gr(s);const i={},n=[],c=[],h=[],w=[],E=pr(s),C=wr(s,E),D=vr(s,r);for(const[x,v]of Object.entries(s.Fields)){if(x.startsWith("_")&&!["_id"].includes(x))continue;const y=D[x];if(y.hidden)continue;const P=xr(x,v,s.Fields,t,y,C[x]||{validation:[],computation:[],businessLogic:[]});i[x]=P,n.push(x),P.computed&&c.push(x),P.required&&h.push(x)}return{fields:i,fieldOrder:n,computedFields:c,requiredFields:h,crossFieldValidation:w,rules:E,fieldRules:C,rolePermissions:s.RolePermission}}async function _r(e){try{const r=(await qt.getBdoSchema(e)).BOBlob;if(!r||typeof r!="object"||!r.Fields)throw new Error(`Invalid BDO schema response for ${e}`);return r}catch(t){throw console.error(`Schema fetch error for ${e}:`,t),new Error(`Failed to load form schema: ${t instanceof Error?t.message:"Unknown error"}`)}}async function Dr(e,t=3){let r;for(let s=1;s<=t;s++)try{return await _r(e)}catch(i){if(r=Ne.toError(i),s<t){const n=Math.min(1e3*Math.pow(2,s-1),5e3);await new Promise(c=>setTimeout(c,n));continue}}throw r}async function Rr(e,t){try{return await ve.api(e).get(t)}catch(r){throw console.error(`Record fetch error for ${e}/${t}:`,r),new Error(`Failed to load record: ${r instanceof Error?r.message:"Unknown error"}`)}}async function Nr(e,t,r,s){try{let i;if(t==="create")return i=await ve.api(e).create(r),{success:!0,data:i,recordId:i._id||s};if(t==="update"){if(!s)throw new Error("Record ID is required for update operations");return i=await ve.api(e).update(s,r),{success:!0,data:i,recordId:i._id||s}}else throw new Error(`Unsupported operation: ${t}`)}catch(i){return console.error("Form submission error:",i),{success:!1,error:new Error(`Failed to ${t} record: ${i instanceof Error?i.message:"Unknown error"}`)}}}function Cr(e,t,r="create",s,i){const n={};return Object.keys(e).forEach(c=>{const h=c;let w=e[h];if(!t.includes(c)&&w!==void 0){if((i==null?void 0:i[c])==="Reference"&&w!==null&&(w=It(w)),r==="create"){n[h]=w;return}if(r==="update"){if(!s){n[h]=w;return}const E=s[h];JSON.stringify(w)!==JSON.stringify(E)&&(n[h]=w)}}}),n}function It(e){if(e==null||e==="")return null;if(typeof e=="object"&&e._id)return{...e};if(typeof e=="string"){try{const t=JSON.parse(e);if(typeof t=="object"&&t._id)return{...t}}catch{}return{_id:e}}return e}function Or(e){var t,r,s,i;return typeof e=="string"?e:e!=null&&e.message?e.message:(r=(t=e==null?void 0:e.response)==null?void 0:t.data)!=null&&r.message?e.response.data.message:(i=(s=e==null?void 0:e.response)==null?void 0:s.data)!=null&&i.error?e.response.data.error:"An unexpected error occurred"}function Tr(e){var t,r;return!navigator.onLine||(e==null?void 0:e.code)==="NETWORK_ERROR"||((t=e==null?void 0:e.message)==null?void 0:t.toLowerCase().includes("network"))||((r=e==null?void 0:e.message)==null?void 0:r.toLowerCase().includes("fetch"))}function Mr(e){var t,r,s;return(e==null?void 0:e.status)===400||((t=e==null?void 0:e.response)==null?void 0:t.status)===400||((r=e==null?void 0:e.message)==null?void 0:r.toLowerCase().includes("validation"))||((s=e==null?void 0:e.message)==null?void 0:s.toLowerCase().includes("invalid"))}const Ee=new Map;function Lr(e,t,r=10){Ee.set(e,{data:t,timestamp:Date.now(),ttl:r*60*1e3})}function Ir(e){const t=Ee.get(e);return t?Date.now()-t.timestamp>t.ttl?(Ee.delete(e),null):t.data:null}function kr(e){e?Array.from(Ee.keys()).filter(r=>r.startsWith(e)).forEach(r=>Ee.delete(r)):Ee.clear()}async function Ur(e){const t=`schema:${e}`,r=Ir(t);if(r)return r;const s=await Dr(e);return Lr(t,s,30),s}class xt{constructor(t=1e3){pe(this,"cache",new Map);pe(this,"maxSize");this.maxSize=t}get(t){const r=this.cache.get(t);return r!==void 0&&(this.cache.delete(t),this.cache.set(t,r)),r}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){const s=this.cache.keys().next().value;this.cache.delete(s)}this.cache.set(t,r)}clear(){this.cache.clear()}}function Br(e){const t=new Set;function r(s){switch(s.Type){case"Identifier":s.Name&&!s.Name.startsWith("$")&&t.add(s.Name);break;case"MemberExpression":s.Arguments&&s.Arguments.forEach(r);break;case"CallExpression":case"BinaryExpression":case"LogicalExpression":s.Arguments&&s.Arguments.forEach(r);break}}return r(e),t}class qr{constructor(){pe(this,"resultCache",new xt(500));pe(this,"dependencyCache",new xt(200));pe(this,"compiledExpressions",new Map)}createCacheKey(t,r){const s=JSON.stringify(t),i=JSON.stringify(r);return`${s}:${i}`}getDependencies(t){const r=JSON.stringify(t);let s=this.dependencyCache.get(r);return s||(s=Br(t),this.dependencyCache.set(r,s)),s}getCachedResult(t,r,s){if(!s)return;const i=this.getDependencies(t);for(const c of i)if(r[c]!==s[c])return;const n=this.createCacheKey(t,r);return this.resultCache.get(n)}evaluate(t,r,s){const i=this.getCachedResult(t,r,s);if(i!==void 0)return i;const n=this.evaluateNode(t,r),c=this.createCacheKey(t,r);return this.resultCache.set(c,n),n}evaluateNode(t,r){switch(t.Type){case"Literal":return t.Value;case"Identifier":return this.getIdentifierValue(t,r);case"BinaryExpression":return this.evaluateBinaryExpression(t,r);case"LogicalExpression":return this.evaluateLogicalExpression(t,r);case"CallExpression":return this.evaluateCallExpression(t,r);case"MemberExpression":return this.evaluateMemberExpression(t,r);default:throw new Error(`Unsupported expression type: ${t.Type}`)}}getIdentifierValue(t,r){if(t.Name){if(t.Name==="NOW")return new Date;if(t.Name==="TODAY"){const s=new Date;return new Date(s.getFullYear(),s.getMonth(),s.getDate())}return t.Name==="CURRENT_USER_ID"?1:t.Name==="CURRENT_USER"?{EmpId:1,Email:"user@example.com",FirstName:"John",LastName:"Doe",Role:"User"}:r[t.Name]}}evaluateBinaryExpression(t,r){if(!t.Arguments||t.Arguments.length!==2)throw new Error("Binary expression requires exactly 2 arguments");const s=this.evaluateNode(t.Arguments[0],r),i=this.evaluateNode(t.Arguments[1],r);switch(t.Operator){case"==":return s==i;case"!=":return s!=i;case"===":return s===i;case"!==":return s!==i;case"<":return Number(s)<Number(i);case"<=":return Number(s)<=Number(i);case">":return Number(s)>Number(i);case">=":return Number(s)>=Number(i);case"+":return Number(s)+Number(i);case"-":return Number(s)-Number(i);case"*":return Number(s)*Number(i);case"/":return Number(s)/Number(i);case"%":return Number(s)%Number(i);default:throw new Error(`Unsupported binary operator: ${t.Operator}`)}}evaluateLogicalExpression(t,r){if(!t.Arguments||t.Arguments.length<2)throw new Error("Logical expression requires at least 2 arguments");switch(t.Operator){case"AND":for(const s of t.Arguments)if(!this.evaluateNode(s,r))return!1;return!0;case"OR":for(const s of t.Arguments)if(this.evaluateNode(s,r))return!0;return!1;default:throw new Error(`Unsupported logical operator: ${t.Operator}`)}}evaluateCallExpression(t,r){var i;if(!t.Callee)throw new Error("Call expression requires a function name");const s=((i=t.Arguments)==null?void 0:i.map(n=>this.evaluateNode(n,r)))||[];switch(t.Callee){case"CONCAT":return s.map(E=>String(E||"")).join("");case"TRIM":return String(s[0]||"").trim();case"LENGTH":return String(s[0]||"").length;case"UPPER":return String(s[0]||"").toUpperCase();case"LOWER":return String(s[0]||"").toLowerCase();case"CONTAINS":return String(s[0]||"").includes(String(s[1]||""));case"MATCHES":return new RegExp(String(s[1])).test(String(s[0]||""));case"SUM":return s.reduce((E,C)=>E+(Number(C)||0),0);case"AVG":const n=s.filter(E=>!isNaN(Number(E)));return n.length>0?n.reduce((E,C)=>E+Number(C),0)/n.length:0;case"MIN":return Math.min(...s.map(E=>Number(E)||0));case"MAX":return Math.max(...s.map(E=>Number(E)||0));case"ROUND":return Math.round(Number(s[0])||0);case"FLOOR":return Math.floor(Number(s[0])||0);case"CEIL":return Math.ceil(Number(s[0])||0);case"ABS":return Math.abs(Number(s[0])||0);case"YEAR":return new Date(s[0]).getFullYear();case"MONTH":return new Date(s[0]).getMonth()+1;case"DAY":return new Date(s[0]).getDate();case"DATE_DIFF":const c=new Date(s[0]),h=new Date(s[1]),w=Math.abs(c.getTime()-h.getTime());return Math.ceil(w/(1e3*60*60*24));case"IF":return s[0]?s[1]:s[2];case"AUTO_NUMBER":return Math.floor(Math.random()*1e4);default:throw new Error(`Unknown function: ${t.Callee}`)}}evaluateMemberExpression(t,r){var n;if(!t.Arguments||t.Arguments.length===0)throw new Error("Member expression requires arguments");const s=this.evaluateNode(t.Arguments[0],r),i=(n=t.Arguments[0].Property)==null?void 0:n.Name;return i&&s&&typeof s=="object"?s[i]:s}clearCache(){this.resultCache.clear(),this.dependencyCache.clear(),this.compiledExpressions.clear()}}const kt=new qr;function Pr(e,t,r,s,i){if(!r||r.length===0)return{isValid:!0};const n={...s,[e]:t};for(const c of r)try{if(!kt.evaluate(c.ExpressionTree,n,i))return{isValid:!1,message:c.Message||`Validation failed for ${c.Name}`,fieldName:e}}catch(h){console.warn(`Validation rule ${c.Id} failed to evaluate:`,h)}return{isValid:!0}}function St(e){return Array.from(kt.getDependencies(e))}function $r(e){const{source:t,operation:r,recordId:s,defaultValues:i={},mode:n="onBlur",enabled:c=!0,userRole:h,onSchemaError:w,skipSchemaFetch:E=!1,schema:C,interactionMode:D="interactive",enableDraftInUpdateMode:x=!1}=e,v=D==="interactive",[y,P]=V.useState(null),[Y,Z]=V.useState({}),[_,te]=V.useState(!1),[re]=V.useState({}),[R,ce]=V.useState(null),[ye,ae]=V.useState(!1),[de,K]=V.useState(null),oe=V.useRef(!1),F=V.useRef(null),S=V.useRef(null),L=V.useRef(!1),O=V.useRef(w);V.useEffect(()=>{O.current=w},[w]);const{data:H,isLoading:z,error:ne,refetch:fe}=lt.useQuery({queryKey:["form-schema",t],queryFn:()=>E?Promise.resolve(C||{}):Ur(t),enabled:c&&(!E||!!C),retry:3,staleTime:30*60*1e3,gcTime:60*60*1e3,throwOnError:!1}),{data:G,isLoading:Me,error:Le}=lt.useQuery({queryKey:["form-record",t,s],queryFn:()=>Rr(t,s),enabled:c&&r==="update"&&!!s,retry:3,staleTime:5*60*1e3,gcTime:15*60*1e3,throwOnError:!1}),We=V.useMemo(()=>{const d={...i};if(r==="update"&&G&&Object.assign(d,G),y)for(const[f,l]of Object.entries(y.fields))l.defaultValue!==void 0&&!(f in d)&&(d[f]=l.defaultValue);return d},[i,G,r,y]),A=cr({mode:n,defaultValues:i,values:r==="update"&&G?We:void 0});V.useEffect(()=>{var d;if(H)try{const f=Sr(H,{},h);P(f)}catch(f){console.error("Schema processing failed:",f),(d=O.current)==null||d.call(O,Ne.toError(f))}},[H,h]),V.useEffect(()=>{var d;ne&&((d=O.current)==null||d.call(O,ne))},[ne]),V.useEffect(()=>{if(!v||r!=="create"||!y||!c||R||L.current)return;L.current=!0;let d=!0;return(async()=>{ae(!0),K(null);try{const m=await ve.api(t).draftInteraction({});if(!d)return;ce(m._id),m&&typeof m=="object"&&Object.entries(m).forEach(([p,b])=>{if(p==="_id")return;A.getValues(p)!==b&&A.setValue(p,b,{shouldDirty:!1,shouldValidate:!1})})}catch(l){if(!d)return;console.error("Failed to create initial draft:",l),K(Ne.toError(l)),L.current=!1}finally{d&&ae(!1)}})(),()=>{d=!1}},[v,r,y,c,R,t]);const Ve=V.useMemo(()=>{if(!y)return[];const d=new Set,f=new Set(y.computedFields);return Object.entries(y.fieldRules).forEach(([l,m])=>{m.computation.forEach(p=>{const b=y.rules.computation[p];b!=null&&b.ExpressionTree&&St(b.ExpressionTree).forEach(I=>{y.fields[I]&&I!==l&&!f.has(I)&&d.add(I)})})}),y.computedFields.forEach(l=>{const m=y.fields[l];m._bdoField.Formula&&St(m._bdoField.Formula.ExpressionTree).forEach(b=>{y.fields[b]&&b!==l&&!f.has(b)&&d.add(b)})}),Array.from(d)},[y]),Fe=V.useCallback(async d=>{if(!(!y||r==="update"&&!x||!(v&&r!=="update"||Ve.length>0&&Ve.includes(d)))){if(v&&r==="create"&&!R){console.warn("Interactive create mode: waiting for draft ID");return}oe.current||(F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{if(!y||oe.current)return;const l=A.getValues();(async()=>{oe.current=!0;try{const p=ve.api(t),b={};r==="update"&&s&&"_id"in l&&(b._id=l._id),v&&r==="create"&&R&&(b._id=R);const N=S.current??(r==="update"?G:null)??{},I=new Set(y.computedFields||[]);Object.keys(l).forEach(U=>{var ot;if(U==="_id"||I.has(U))return;let Q=l[U];const De=N[U];if(JSON.stringify(Q)!==JSON.stringify(De)&&(Q!==""&&Q!==null&&Q!==void 0)){const Ge=y.fields[U];((ot=Ge==null?void 0:Ge._bdoField)==null?void 0:ot.Type)==="Reference"&&(Q=It(Q)),b[U]=Q}});const T=b,$={...S.current};Object.keys(l).forEach(U=>{I.has(U)||($[U]=l[U])}),S.current=$;let W;r==="update"&&s?W=await p.draftPatch(s,T):v&&R?W=await p.draftInteraction(T):W=await p.draft(T),W&&typeof W=="object"&&(Object.entries(W).forEach(([U,Q])=>{l[U]!==Q&&A.setValue(U,Q,{shouldDirty:!1,shouldValidate:!1})}),Object.entries(W).forEach(([U,Q])=>{I.has(U)&&(S.current[U]=Q)}))}catch(p){console.warn("Failed to compute fields via API:",p)}finally{oe.current=!1}})()},300))}},[y,r,s,G,t,A,Ve,v,R,x]),He=V.useCallback(async()=>{if(!y)return!1;const d=A.getValues();if(!await A.trigger())return!1;const l=y.crossFieldValidation.map(p=>({Id:p.Id,Condition:{ExpressionTree:p.ExpressionTree},Message:p.Message||`Validation failed for ${p.Name}`})),m=Ft(l,d,Y);return m.length>0?(m.forEach((p,b)=>{A.setError(`root.crossField${b}`,{type:"validate",message:p.message})}),!1):!0},[y,A.getValues,A.trigger,A.setError,Y]),Ae=V.useCallback((d,f)=>A.handleSubmit(async(l,m)=>{if(!y){const p=new Error("Schema not loaded");f==null||f(p,m);return}te(!0);try{const p=y.crossFieldValidation.map($=>({Id:$.Id,Condition:{ExpressionTree:$.ExpressionTree},Message:$.Message||`Validation failed for ${$.Name}`})),b=Ft(p,l,Y);if(b.length>0){b.forEach(($,W)=>{A.setError(`root.crossField${W}`,{type:"validate",message:$.message})}),f==null||f(A.formState.errors,m);return}const N={};Object.entries(y.fields).forEach(([$,W])=>{N[$]=W._bdoField.Type});const I=Cr(l,y.computedFields,r,G,N);let T;if(v){const $=ve.api(t);if(r==="create"){if(!R)throw new Error("Interactive create mode requires a draft ID. Draft creation may have failed.");T={success:!0,data:await $.draft({...I,_id:R})}}else T={success:!0,data:await $.update(s,I)}}else if(T=await Nr(t,r,I,s),!T.success)throw T.error||new Error("Submission failed");r==="create"&&(A.reset(),v&&ce(null)),await(d==null?void 0:d(T.data||l,m))}catch(p){f==null||f(Ne.toError(p),m)}finally{te(!1)}},(l,m)=>{f==null||f(l,m)}),[A,y,Y,t,r,s,G,v,R]),Ie=V.useCallback(d=>(y==null?void 0:y.fields[d])||null,[y]),xe=V.useCallback(()=>{if(!y)return{};const d={};return Object.entries(y.fields).forEach(([f,l])=>{d[f]=l}),d},[y]),Se=V.useCallback(d=>!!(y!=null&&y.fields[d]),[y]),Ye=V.useCallback(d=>(y==null?void 0:y.requiredFields.includes(d))||!1,[y]),ke=V.useCallback(d=>(y==null?void 0:y.computedFields.includes(d))||!1,[y]),Ke=V.useCallback(async()=>{await fe()},[fe]),Ue=V.useCallback(()=>{A.clearErrors()},[A]),Be=z||r==="update"&&Me||v&&r==="create"&&ye,ze=_,_e=ne||Le||de,nt=!!_e,qe=V.useMemo(()=>(y==null?void 0:y.computedFields)||[],[y]),a=V.useMemo(()=>(y==null?void 0:y.requiredFields)||[],[y]),u=V.useMemo(()=>{if(!y)return{};const d={};return Object.entries(y.fields).forEach(([f,l])=>{const m={};switch(l.required&&(m.required=`${l.label} is required`),l.permission.editable||(m.disabled=!0),l.type){case"number":m.valueAsNumber=!0;break;case"date":case"datetime-local":m.valueAsDate=!0;break}const p=l.rules.validation;p.length>0&&(m.validate={expressionValidation:b=>{const N=A.getValues();for(const I of p){const T=y.rules.validation[I];if(T){const $=Pr(f,b,[T],N,re);if(!$.isValid)return $.message||T.Message||"Invalid value"}}return!0}}),d[f]=m}),d},[y,A,Y]);return{register:V.useCallback((d,f)=>{const l=u[d],m=f==null?void 0:f.onBlur,p=async b=>{m&&await m(b);let N=!0;n==="onBlur"||n==="onTouched"||n==="all"?N=await A.trigger(d):N=!A.getFieldState(d,A.formState).error,N&&await Fe(d)};return A.register(d,{...l,...f,onBlur:p})},[A,u,Fe,n]),handleSubmit:Ae,watch:A.watch,setValue:A.setValue,reset:A.reset,errors:A.formState.errors,isValid:A.formState.isValid,isDirty:A.formState.isDirty,isSubmitting:A.formState.isSubmitting||_,isSubmitSuccessful:A.formState.isSubmitSuccessful,isLoading:Be,isFetching:ze,draftId:R,isCreatingDraft:ye,loadError:_e?Ne.toError(_e):null,hasError:nt,schema:H,schemaConfig:y,computedFields:qe,requiredFields:a,getField:Ie,getFields:xe,hasField:Se,isFieldRequired:Ye,isFieldComputed:ke,refreshSchema:Ke,validateForm:He,clearErrors:Ue}}exports.clearFormCache=kr;exports.isNetworkError=Tr;exports.isValidationError=Mr;exports.parseApiError=Or;exports.useForm=$r;