@ram_28/kf-ai-sdk 1.0.21 → 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 });
@@ -221,6 +221,14 @@ export interface UseFormOptionsType<T extends Record<string, any> = Record<strin
221
221
  * @default "interactive"
222
222
  */
223
223
  interactionMode?: InteractionModeType;
224
+ /**
225
+ * Enable draft API calls in update mode
226
+ * When false (default), no draft API calls (e.g., /instance_id/draft) are made during
227
+ * field blur in update mode. The update API is only called on form submission.
228
+ * When true, draft API calls are made on blur for computed field dependencies.
229
+ * @default false
230
+ */
231
+ enableDraftInUpdateMode?: boolean;
224
232
  }
225
233
  /**
226
234
  * Field permission for current user
@@ -362,12 +370,10 @@ export interface UseFormReturnType<T extends Record<string, any> = Record<string
362
370
  isSubmitting: boolean;
363
371
  /** Form submission was successful - direct access */
364
372
  isSubmitSuccessful: boolean;
365
- /** Loading initial schema/data */
366
- isLoadingInitialData: boolean;
367
- /** Loading record data for update */
368
- isLoadingRecord: boolean;
369
- /** Any loading state active */
373
+ /** True during initial load */
370
374
  isLoading: boolean;
375
+ /** True during background operations */
376
+ isFetching: boolean;
371
377
  /** Draft ID for interactive create mode */
372
378
  draftId: string | null;
373
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,CA47BtB"}
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 kt=Object.defineProperty;var Ut=(e,t,r)=>t in e?kt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var pe=(e,t,r)=>Ut(e,typeof t!="symbol"?t+"":t,r);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("react"),ot=require("@tanstack/react-query"),ve=require("./client-DxjRcEtN.cjs"),Bt=require("./metadata-Bz8zJqC1.cjs"),Re=require("./error-handling-CAoD0Kwb.cjs");var Oe=e=>e.type==="checkbox",ye=e=>e instanceof Date,Q=e=>e==null;const St=e=>typeof e=="object";var P=e=>!Q(e)&&!Array.isArray(e)&&St(e)&&!ye(e),qt=e=>P(e)&&e.target?Oe(e.target)?e.target.checked:e.target.value:e,Pt=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,$t=(e,t)=>e.has(Pt(t)),jt=e=>{const t=e.constructor&&e.constructor.prototype;return P(t)&&t.hasOwnProperty("isPrototypeOf")},tt=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function $(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&&!(P(e)&&jt(e)))return e;const s=r?[]:Object.create(Object.getPrototypeOf(e));for(const i in e)Object.prototype.hasOwnProperty.call(e,i)&&(s[i]=$(e[i]));return s}var We=e=>/^\w*$/.test(e),L=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||!P(e))return r;const s=(We(t)?[t]:st(t)).reduce((i,n)=>Q(i)?i:i[n],e);return L(s)||s===e?L(e[t])?r:e[t]:s},ie=e=>typeof e=="boolean",te=e=>typeof e=="function",O=(e,t,r)=>{let s=-1;const i=We(t)?[t]:st(t),n=i.length,l=n-1;for(;++s<n;){const f=i[s];let b=r;if(s!==l){const w=e[f];b=P(w)||Array.isArray(w)?w:isNaN(+i[s+1])?{}:[]}if(f==="__proto__"||f==="constructor"||f==="prototype")return;e[f]=b,e=e[f]}};const lt={BLUR:"blur",FOCUS_OUT:"focusout"},re={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},ue={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},Wt=v.createContext(null);Wt.displayName="HookFormContext";var Ht=(e,t,r,s=!0)=>{const i={defaultValues:t._defaultValues};for(const n in e)Object.defineProperty(i,n,{get:()=>{const l=n;return t._proxyFormState[l]!==re.all&&(t._proxyFormState[l]=!s||re.all),e[l]}});return i};const Yt=typeof window<"u"?v.useLayoutEffect:v.useEffect;var Z=e=>typeof e=="string",Kt=(e,t,r,s,i)=>Z(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=>Q(e)||!St(e);function fe(e,t,r=new WeakSet){if(Ze(e)||Ze(t))return Object.is(e,t);if(ye(e)&&ye(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 l=e[n];if(!i.includes(n))return!1;if(n!=="ref"){const f=t[n];if(ye(l)&&ye(f)||P(l)&&P(f)||Array.isArray(l)&&Array.isArray(f)?!fe(l,f,r):!Object.is(l,f))return!1}}return!0}var zt=(e,t,r,s,i)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[s]:i||!0}}:{},Ne=e=>Array.isArray(e)?e:[e],ct=()=>{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 _t(e,t){const r={};for(const s in e)if(e.hasOwnProperty(s)){const i=e[s],n=t[s];if(i&&P(i)&&n){const l=_t(i,n);P(l)&&(r[s]=l)}else e[s]&&(r[s]=n)}return r}var z=e=>P(e)&&!Object.keys(e).length,it=e=>e.type==="file",$e=e=>{if(!tt)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Dt=e=>e.type==="select-multiple",at=e=>e.type==="radio",Jt=e=>at(e)||Oe(e),Qe=e=>$e(e)&&e.isConnected;function Gt(e,t){const r=t.slice(0,-1).length;let s=0;for(;s<r;)e=L(e)?s++:e[t[s++]];return e}function Qt(e){for(const t in e)if(e.hasOwnProperty(t)&&!L(e[t]))return!1;return!0}function q(e,t){const r=Array.isArray(t)?t:We(t)?[t]:st(t),s=r.length===1?e:Gt(e,r),i=r.length-1,n=r[i];return s&&delete s[n],i!==0&&(P(s)&&z(s)||Array.isArray(s)&&Qt(s))&&q(e,r.slice(0,-1)),e}var Xt=e=>{for(const t in e)if(te(e[t]))return!0;return!1};function Rt(e){return Array.isArray(e)||P(e)&&!Xt(e)}function et(e,t={}){for(const r in e){const s=e[r];Rt(s)?(t[r]=Array.isArray(s)?[]:{},et(s,t[r])):L(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(Rt(i))L(t)||Ze(r[s])?r[s]=et(i,Array.isArray(i)?[]:{}):we(i,Q(t)?{}:t[s],r[s]);else{const n=t[s];r[s]=!fe(i,n)}}return r}const dt={value:!1,isValid:!1},ft={value:!0,isValid:!0};var Nt=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&&!L(e[0].attributes.value)?L(e[0].value)||e[0].value===""?ft:{value:e[0].value,isValid:!0}:ft:dt}return dt},Ct=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:s})=>L(e)?e:t?e===""?NaN:e&&+e:r&&Z(e)?new Date(e):s?s(e):e;const ht={isValid:!1,value:null};var Ot=e=>Array.isArray(e)?e.reduce((t,r)=>r&&r.checked&&!r.disabled?{isValid:!0,value:r.value}:t,ht):ht;function mt(e){const t=e.ref;return it(t)?t.files:at(t)?Ot(e.refs).value:Dt(t)?[...t.selectedOptions].map(({value:r})=>r):Oe(t)?Nt(e.refs).value:Ct(L(t.value)?e.ref.value:t.value,e)}var Zt=(e,t,r,s)=>{const i={};for(const n of e){const l=g(t,n);l&&O(i,n,l._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:s}},je=e=>e instanceof RegExp,De=e=>L(e)?e:je(e)?e.source:P(e)?je(e.value)?e.value.source:e.value:e,yt=e=>({isOnSubmit:!e||e===re.onSubmit,isOnBlur:e===re.onBlur,isOnChange:e===re.onChange,isOnAll:e===re.all,isOnTouch:e===re.onTouched});const gt="AsyncFunction";var er=e=>!!e&&!!e.validate&&!!(te(e.validate)&&e.validate.constructor.name===gt||P(e.validate)&&Object.values(e.validate).find(t=>t.constructor.name===gt)),tr=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),pt=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(s=>e.startsWith(s)&&/^\.\w+/.test(e.slice(s.length))));const Ce=(e,t,r,s)=>{for(const i of r||Object.keys(e)){const n=g(e,i);if(n){const{_f:l,...f}=n;if(l){if(l.refs&&l.refs[0]&&t(l.refs[0],i)&&!s)return!0;if(l.ref&&t(l.ref,l.name)&&!s)return!0;if(Ce(f,t))break}else if(P(f)&&Ce(f,t))break}}};function bt(e,t,r){const s=g(e,r);if(s||We(r))return{error:s,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),l=g(t,n),f=g(e,n);if(l&&!Array.isArray(l)&&r!==n)return{name:r};if(f&&f.type)return{name:n,error:f};if(f&&f.root&&f.root.type)return{name:`${n}.root`,error:f.root};i.pop()}return{name:r}}var rr=(e,t,r,s)=>{r(e);const{name:i,...n}=e;return z(n)||Object.keys(n).length>=Object.keys(t).length||Object.keys(n).find(l=>t[l]===(!s||re.all))},sr=(e,t,r)=>!e||!t||e===t||Ne(e).some(s=>s&&(r?s===t:s.startsWith(t)||t.startsWith(s))),ir=(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,ar=(e,t)=>!rt(g(e,t)).length&&q(e,t),nr=(e,t,r)=>{const s=Ne(g(e,r));return O(s,"root",t[r]),O(e,r,s),e};function wt(e,t,r="validate"){if(Z(e)||Array.isArray(e)&&e.every(Z)||ie(e)&&!e)return{type:r,message:Z(e)?e:"",ref:t}}var be=e=>P(e)&&!je(e)?e:{value:e,message:""},vt=async(e,t,r,s,i,n)=>{const{ref:l,refs:f,required:b,maxLength:w,minLength:C,min:_,max:E,pattern:m,validate:J,name:T,valueAsNumber:se,mount:Y}=e._f,x=g(r,T);if(!Y||t.has(T))return{};const ee=f?f[0]:l,k=F=>{i&&ee.reportValidity&&(ee.setCustomValidity(ie(F)?"":F||""),ee.reportValidity())},I={},oe=at(l),me=Oe(l),ae=oe||me,ne=(se||it(l))&&L(l.value)&&L(x)||$e(l)&&l.value===""||x===""||Array.isArray(x)&&!x.length,W=zt.bind(null,T,s,I),le=(F,S,R,U=ue.maxLength,X=ue.minLength)=>{const j=F?S:R;I[T]={type:F?U:X,message:j,ref:l,...W(F?U:X,j)}};if(n?!Array.isArray(x)||!x.length:b&&(!ae&&(ne||Q(x))||ie(x)&&!x||me&&!Nt(f).isValid||oe&&!Ot(f).isValid)){const{value:F,message:S}=Z(b)?{value:!!b,message:b}:be(b);if(F&&(I[T]={type:ue.required,message:S,ref:ee,...W(ue.required,S)},!s))return k(S),I}if(!ne&&(!Q(_)||!Q(E))){let F,S;const R=be(E),U=be(_);if(!Q(x)&&!isNaN(x)){const X=l.valueAsNumber||x&&+x;Q(R.value)||(F=X>R.value),Q(U.value)||(S=X<U.value)}else{const X=l.valueAsDate||new Date(x),j=de=>new Date(new Date().toDateString()+" "+de),ce=l.type=="time",G=l.type=="week";Z(R.value)&&x&&(F=ce?j(x)>j(R.value):G?x>R.value:X>new Date(R.value)),Z(U.value)&&x&&(S=ce?j(x)<j(U.value):G?x<U.value:X<new Date(U.value))}if((F||S)&&(le(!!F,R.message,U.message,ue.max,ue.min),!s))return k(I[T].message),I}if((w||C)&&!ne&&(Z(x)||n&&Array.isArray(x))){const F=be(w),S=be(C),R=!Q(F.value)&&x.length>+F.value,U=!Q(S.value)&&x.length<+S.value;if((R||U)&&(le(R,F.message,S.message),!s))return k(I[T].message),I}if(m&&!ne&&Z(x)){const{value:F,message:S}=be(m);if(je(F)&&!x.match(F)&&(I[T]={type:ue.pattern,message:S,ref:l,...W(ue.pattern,S)},!s))return k(S),I}if(J){if(te(J)){const F=await J(x,r),S=wt(F,ee);if(S&&(I[T]={...S,...W(ue.validate,S.message)},!s))return k(S.message),I}else if(P(J)){let F={};for(const S in J){if(!z(F)&&!s)break;const R=wt(await J[S](x,r),ee,S);R&&(F={...R,...W(S,R.message)},k(R.message),s&&(I[T]=F))}if(!z(F)&&(I[T]={ref:ee,...F},!s))return I}}return k(!0),I};const ur={mode:re.onSubmit,reValidateMode:re.onChange,shouldFocusError:!0};function or(e={}){let t={...ur,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:te(t.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||!1},s={},i=P(t.defaultValues)||P(t.values)?$(t.defaultValues||t.values)||{}:{},n=t.shouldUnregister?{}:$(i),l={action:!1,mount:!1,watch:!1,keepIsValid:!1},f={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},b,w=0;const C={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},_={...C};let E={..._};const m={array:ct(),state:ct()},J=t.criteriaMode===re.all,T=a=>o=>{clearTimeout(w),w=setTimeout(a,o)},se=async a=>{if(!l.keepIsValid&&!t.disabled&&(_.isValid||E.isValid||a)){let o;t.resolver?(o=z((await ae()).errors),Y()):o=await W(s,!0),o!==r.isValid&&m.state.next({isValid:o})}},Y=(a,o)=>{!t.disabled&&(_.isValidating||_.validatingFields||E.isValidating||E.validatingFields)&&((a||Array.from(f.mount)).forEach(u=>{u&&(o?O(r.validatingFields,u,o):q(r.validatingFields,u))}),m.state.next({validatingFields:r.validatingFields,isValidating:!z(r.validatingFields)}))},x=(a,o=[],u,h,d=!0,c=!0)=>{if(h&&u&&!t.disabled){if(l.action=!0,c&&Array.isArray(g(s,a))){const y=u(g(s,a),h.argA,h.argB);d&&O(s,a,y)}if(c&&Array.isArray(g(r.errors,a))){const y=u(g(r.errors,a),h.argA,h.argB);d&&O(r.errors,a,y),ar(r.errors,a)}if((_.touchedFields||E.touchedFields)&&c&&Array.isArray(g(r.touchedFields,a))){const y=u(g(r.touchedFields,a),h.argA,h.argB);d&&O(r.touchedFields,a,y)}(_.dirtyFields||E.dirtyFields)&&(r.dirtyFields=we(i,n)),m.state.next({name:a,isDirty:F(a,o),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else O(n,a,o)},ee=(a,o)=>{O(r.errors,a,o),m.state.next({errors:r.errors})},k=a=>{r.errors=a,m.state.next({errors:r.errors,isValid:!1})},I=(a,o,u,h)=>{const d=g(s,a);if(d){const c=g(n,a,L(u)?g(i,a):u);L(c)||h&&h.defaultChecked||o?O(n,a,o?c:mt(d._f)):U(a,c),l.mount&&!l.action&&se()}},oe=(a,o,u,h,d)=>{let c=!1,y=!1;const p={name:a};if(!t.disabled){if(!u||h){(_.isDirty||E.isDirty)&&(y=r.isDirty,r.isDirty=p.isDirty=F(),c=y!==p.isDirty);const V=fe(g(i,a),o);y=!!g(r.dirtyFields,a),V?q(r.dirtyFields,a):O(r.dirtyFields,a,!0),p.dirtyFields=r.dirtyFields,c=c||(_.dirtyFields||E.dirtyFields)&&y!==!V}if(u){const V=g(r.touchedFields,a);V||(O(r.touchedFields,a,u),p.touchedFields=r.touchedFields,c=c||(_.touchedFields||E.touchedFields)&&V!==u)}c&&d&&m.state.next(p)}return c?p:{}},me=(a,o,u,h)=>{const d=g(r.errors,a),c=(_.isValid||E.isValid)&&ie(o)&&r.isValid!==o;if(t.delayError&&u?(b=T(()=>ee(a,u)),b(t.delayError)):(clearTimeout(w),b=null,u?O(r.errors,a,u):q(r.errors,a)),(u?!fe(d,u):d)||!z(h)||c){const y={...h,...c&&ie(o)?{isValid:o}:{},errors:r.errors,name:a};r={...r,...y},m.state.next(y)}},ae=async a=>(Y(a,!0),await t.resolver(n,t.context,Zt(a||f.mount,s,t.criteriaMode,t.shouldUseNativeValidation))),ne=async a=>{const{errors:o}=await ae(a);if(Y(a),a)for(const u of a){const h=g(o,u);h?O(r.errors,u,h):q(r.errors,u)}else r.errors=o;return o},W=async(a,o,u={valid:!0})=>{for(const h in a){const d=a[h];if(d){const{_f:c,...y}=d;if(c){const p=f.array.has(c.name),V=d._f&&er(d._f);V&&_.validatingFields&&Y([c.name],!0);const D=await vt(d,f.disabled,n,J,t.shouldUseNativeValidation&&!o,p);if(V&&_.validatingFields&&Y([c.name]),D[c.name]&&(u.valid=!1,o||e.shouldUseNativeValidation))break;!o&&(g(D,c.name)?p?nr(r.errors,D,c.name):O(r.errors,c.name,D[c.name]):q(r.errors,c.name))}!z(y)&&await W(y,o,u)}}return u.valid},le=()=>{for(const a of f.unMount){const o=g(s,a);o&&(o._f.refs?o._f.refs.every(u=>!Qe(u)):!Qe(o._f.ref))&&Ve(a)}f.unMount=new Set},F=(a,o)=>!t.disabled&&(a&&o&&O(n,a,o),!fe(Te(),i)),S=(a,o,u)=>Kt(a,f,{...l.mount?n:L(o)?i:Z(a)?{[a]:o}:o},u,o),R=a=>rt(g(l.mount?n:i,a,t.shouldUnregister?g(i,a,[]):[])),U=(a,o,u={})=>{const h=g(s,a);let d=o;if(h){const c=h._f;c&&(!c.disabled&&O(n,a,Ct(o,c)),d=$e(c.ref)&&Q(o)?"":o,Dt(c.ref)?[...c.ref.options].forEach(y=>y.selected=d.includes(y.value)):c.refs?Oe(c.ref)?c.refs.forEach(y=>{(!y.defaultChecked||!y.disabled)&&(Array.isArray(d)?y.checked=!!d.find(p=>p===y.value):y.checked=d===y.value||!!d)}):c.refs.forEach(y=>y.checked=y.value===d):it(c.ref)?c.ref.value="":(c.ref.value=d,c.ref.type||m.state.next({name:a,values:$(n)})))}(u.shouldDirty||u.shouldTouch)&&oe(a,d,u.shouldTouch,u.shouldDirty,!0),u.shouldValidate&&de(a)},X=(a,o,u)=>{for(const h in o){if(!o.hasOwnProperty(h))return;const d=o[h],c=a+"."+h,y=g(s,c);(f.array.has(a)||P(d)||y&&!y._f)&&!ye(d)?X(c,d,u):U(c,d,u)}},j=(a,o,u={})=>{const h=g(s,a),d=f.array.has(a),c=$(o);O(n,a,c),d?(m.array.next({name:a,values:$(n)}),(_.isDirty||_.dirtyFields||E.isDirty||E.dirtyFields)&&u.shouldDirty&&m.state.next({name:a,dirtyFields:we(i,n),isDirty:F(a,c)})):h&&!h._f&&!Q(c)?X(a,c,u):U(a,c,u),pt(a,f)?m.state.next({...r,name:a,values:$(n)}):m.state.next({name:l.mount?a:void 0,values:$(n)})},ce=async a=>{l.mount=!0;const o=a.target;let u=o.name,h=!0;const d=g(s,u),c=V=>{h=Number.isNaN(V)||ye(V)&&isNaN(V.getTime())||fe(V,g(n,u,V))},y=yt(t.mode),p=yt(t.reValidateMode);if(d){let V,D;const M=o.type?mt(d._f):qt(a),N=a.type===lt.BLUR||a.type===lt.FOCUS_OUT,K=!tr(d._f)&&!t.resolver&&!g(r.errors,u)&&!d._f.deps||ir(N,g(r.touchedFields,u),r.isSubmitted,p,y),B=pt(u,f,N);O(n,u,M),N?(!o||!o.readOnly)&&(d._f.onBlur&&d._f.onBlur(a),b&&b(0)):d._f.onChange&&d._f.onChange(a);const H=oe(u,M,N),Pe=!z(H)||B;if(!N&&m.state.next({name:u,type:a.type,values:$(n)}),K)return(_.isValid||E.isValid)&&(t.mode==="onBlur"?N&&se():N||se()),Pe&&m.state.next({name:u,...B?{}:H});if(!N&&B&&m.state.next({...r}),t.resolver){const{errors:Je}=await ae([u]);if(Y([u]),c(M),h){const ut=bt(r.errors,s,u),_e=bt(Je,s,ut.name||u);V=_e.error,u=_e.name,D=z(Je)}}else Y([u],!0),V=(await vt(d,f.disabled,n,J,t.shouldUseNativeValidation))[u],Y([u]),c(M),h&&(V?D=!1:(_.isValid||E.isValid)&&(D=await W(s,!0)));h&&(d._f.deps&&(!Array.isArray(d._f.deps)||d._f.deps.length>0)&&de(d._f.deps),me(u,D,V,H))}},G=(a,o)=>{if(g(r.errors,o)&&a.focus)return a.focus(),1},de=async(a,o={})=>{let u,h;const d=Ne(a);if(t.resolver){const c=await ne(L(a)?a:d);u=z(c),h=a?!d.some(y=>g(c,y)):u}else a?(h=(await Promise.all(d.map(async c=>{const y=g(s,c);return await W(y&&y._f?{[c]:y}:y)}))).every(Boolean),!(!h&&!r.isValid)&&se()):h=u=await W(s);return m.state.next({...!Z(a)||(_.isValid||E.isValid)&&u!==r.isValid?{}:{name:a},...t.resolver||!a?{isValid:u}:{},errors:r.errors}),o.shouldFocus&&!h&&Ce(s,G,a?d:f.mount),h},Te=(a,o)=>{let u={...l.mount?n:i};return o&&(u=_t(o.dirtyFields?r.dirtyFields:r.touchedFields,u)),L(a)?u:Z(a)?g(u,a):a.map(h=>g(u,h))},Me=(a,o)=>({invalid:!!g((o||r).errors,a),isDirty:!!g((o||r).dirtyFields,a),error:g((o||r).errors,a),isValidating:!!g(r.validatingFields,a),isTouched:!!g((o||r).touchedFields,a)}),A=a=>{a&&Ne(a).forEach(o=>q(r.errors,o)),m.state.next({errors:a?r.errors:{}})},ge=(a,o,u)=>{const h=(g(s,a,{_f:{}})._f||{}).ref,d=g(r.errors,a)||{},{ref:c,message:y,type:p,...V}=d;O(r.errors,a,{...V,...o,ref:h}),m.state.next({name:a,errors:r.errors,isValid:!1}),u&&u.shouldFocus&&h&&h.focus&&h.focus()},Le=(a,o)=>te(a)?m.state.subscribe({next:u=>"values"in u&&a(S(void 0,o),u)}):S(a,o,!0),Ie=a=>m.state.subscribe({next:o=>{sr(a.name,o.name,a.exact)&&rr(o,a.formState||_,ze,a.reRenderRoot)&&a.callback({values:{...n},...r,...o,defaultValues:i})}}).unsubscribe,He=a=>(l.mount=!0,E={...E,...a.formState},Ie({...a,formState:{...C,...a.formState}})),Ve=(a,o={})=>{for(const u of a?Ne(a):f.mount)f.mount.delete(u),f.array.delete(u),o.keepValue||(q(s,u),q(n,u)),!o.keepError&&q(r.errors,u),!o.keepDirty&&q(r.dirtyFields,u),!o.keepTouched&&q(r.touchedFields,u),!o.keepIsValidating&&q(r.validatingFields,u),!t.shouldUnregister&&!o.keepDefaultValue&&q(i,u);m.state.next({values:$(n)}),m.state.next({...r,...o.keepDirty?{isDirty:F()}:{}}),!o.keepIsValid&&se()},ke=({disabled:a,name:o})=>{(ie(a)&&l.mount||a||f.disabled.has(o))&&(a?f.disabled.add(o):f.disabled.delete(o))},Fe=(a,o={})=>{let u=g(s,a);const h=ie(o.disabled)||ie(t.disabled);return O(s,a,{...u||{},_f:{...u&&u._f?u._f:{ref:{name:a}},name:a,mount:!0,...o}}),f.mount.add(a),u?ke({disabled:ie(o.disabled)?o.disabled:t.disabled,name:a}):I(a,!0,o.value),{...h?{disabled:o.disabled||t.disabled}:{},...t.progressive?{required:!!o.required,min:De(o.min),max:De(o.max),minLength:De(o.minLength),maxLength:De(o.maxLength),pattern:De(o.pattern)}:{},name:a,onChange:ce,onBlur:ce,ref:d=>{if(d){Fe(a,o),u=g(s,a);const c=L(d.value)&&d.querySelectorAll&&d.querySelectorAll("input,select,textarea")[0]||d,y=Jt(c),p=u._f.refs||[];if(y?p.find(V=>V===c):c===u._f.ref)return;O(s,a,{_f:{...u._f,...y?{refs:[...p.filter(Qe),c,...Array.isArray(g(i,a))?[{}]:[]],ref:{type:c.type,name:a}}:{ref:c}}}),I(a,!1,void 0,c)}else u=g(s,a,{}),u._f&&(u._f.mount=!1),(t.shouldUnregister||o.shouldUnregister)&&!($t(f.array,a)&&l.action)&&f.unMount.add(a)}}},Ae=()=>t.shouldFocusError&&Ce(s,G,f.mount),Ye=a=>{ie(a)&&(m.state.next({disabled:a}),Ce(s,(o,u)=>{const h=g(s,u);h&&(o.disabled=h._f.disabled||a,Array.isArray(h._f.refs)&&h._f.refs.forEach(d=>{d.disabled=h._f.disabled||a}))},0,!1))},Ue=(a,o)=>async u=>{let h;u&&(u.preventDefault&&u.preventDefault(),u.persist&&u.persist());let d=$(n);if(m.state.next({isSubmitting:!0}),t.resolver){const{errors:c,values:y}=await ae();Y(),r.errors=c,d=$(y)}else await W(s);if(f.disabled.size)for(const c of f.disabled)q(d,c);if(q(r.errors,"root"),z(r.errors)){m.state.next({errors:{}});try{await a(d,u)}catch(c){h=c}}else o&&await o({...r.errors},u),Ae(),setTimeout(Ae);if(m.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:z(r.errors)&&!h,submitCount:r.submitCount+1,errors:r.errors}),h)throw h},Ke=(a,o={})=>{g(s,a)&&(L(o.defaultValue)?j(a,$(g(i,a))):(j(a,o.defaultValue),O(i,a,$(o.defaultValue))),o.keepTouched||q(r.touchedFields,a),o.keepDirty||(q(r.dirtyFields,a),r.isDirty=o.defaultValue?F(a,$(g(i,a))):F()),o.keepError||(q(r.errors,a),_.isValid&&se()),m.state.next({...r}))},xe=(a,o={})=>{const u=a?$(a):i,h=$(u),d=z(a),c=d?i:h;if(o.keepDefaultValues||(i=u),!o.keepValues){if(o.keepDirtyValues){const y=new Set([...f.mount,...Object.keys(we(i,n))]);for(const p of Array.from(y)){const V=g(r.dirtyFields,p),D=g(n,p),M=g(c,p);V&&!L(D)?O(c,p,D):!V&&!L(M)&&j(p,M)}}else{if(tt&&L(a))for(const y of f.mount){const p=g(s,y);if(p&&p._f){const V=Array.isArray(p._f.refs)?p._f.refs[0]:p._f.ref;if($e(V)){const D=V.closest("form");if(D){D.reset();break}}}}if(o.keepFieldsRef)for(const y of f.mount)j(y,g(c,y));else s={}}n=t.shouldUnregister?o.keepDefaultValues?$(i):{}:$(c),m.array.next({values:{...c}}),m.state.next({values:{...c}})}f={mount:o.keepDirtyValues?f.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},l.mount=!_.isValid||!!o.keepIsValid||!!o.keepDirtyValues||!t.shouldUnregister&&!z(c),l.watch=!!t.shouldUnregister,l.keepIsValid=!!o.keepIsValid,l.action=!1,o.keepErrors||(r.errors={}),m.state.next({submitCount:o.keepSubmitCount?r.submitCount:0,isDirty:d?!1:o.keepDirty?r.isDirty:!!(o.keepDefaultValues&&!fe(a,i)),isSubmitted:o.keepIsSubmitted?r.isSubmitted:!1,dirtyFields:d?{}:o.keepDirtyValues?o.keepDefaultValues&&n?we(i,n):r.dirtyFields:o.keepDefaultValues&&a?we(i,a):o.keepDirty?r.dirtyFields:{},touchedFields:o.keepTouched?r.touchedFields:{},errors:o.keepErrors?r.errors:{},isSubmitSuccessful:o.keepIsSubmitSuccessful?r.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},Be=(a,o)=>xe(te(a)?a(n):a,{...t.resetOptions,...o}),Se=(a,o={})=>{const u=g(s,a),h=u&&u._f;if(h){const d=h.refs?h.refs[0]:h.ref;d.focus&&setTimeout(()=>{d.focus(),o.shouldSelect&&te(d.select)&&d.select()})}},ze=a=>{r={...r,...a}},qe={control:{register:Fe,unregister:Ve,getFieldState:Me,handleSubmit:Ue,setError:ge,_subscribe:Ie,_runSchema:ae,_updateIsValidating:Y,_focusError:Ae,_getWatch:S,_getDirty:F,_setValid:se,_setFieldArray:x,_setDisabledField:ke,_setErrors:k,_getFieldArray:R,_reset:xe,_resetDefaultValues:()=>te(t.defaultValues)&&t.defaultValues().then(a=>{Be(a,t.resetOptions),m.state.next({isLoading:!1})}),_removeUnmounted:le,_disableForm:Ye,_subjects:m,_proxyFormState:_,get _fields(){return s},get _formValues(){return n},get _state(){return l},set _state(a){l=a},get _defaultValues(){return i},get _names(){return f},set _names(a){f=a},get _formState(){return r},get _options(){return t},set _options(a){t={...t,...a}}},subscribe:He,trigger:de,register:Fe,handleSubmit:Ue,watch:Le,setValue:j,getValues:Te,reset:Be,resetField:Ke,clearErrors:A,unregister:Ve,setError:ge,setFocus:Se,getFieldState:Me};return{...qe,formControl:qe}}function lr(e={}){const t=v.useRef(void 0),r=v.useRef(void 0),[s,i]=v.useState({isDirty:!1,isValidating:!1,isLoading:te(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:te(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:s},e.defaultValues&&!te(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:l,...f}=or(e);t.current={...f,formState:s}}const n=t.current.control;return n._options=e,Yt(()=>{const l=n._subscribe({formState:n._proxyFormState,callback:()=>i({...n._formState}),reRenderRoot:!0});return i(f=>({...f,isReady:!0})),n._formState.isReady=!0,l},[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 l=n._getDirty();l!==s.isDirty&&n._subjects.state.next({isDirty:l})}},[n,s.isDirty]),v.useEffect(()=>{var l;e.values&&!fe(e.values,r.current)?(n._reset(e.values,{keepFieldsRef:!0,...n._options.resetOptions}),!((l=n._options.resetOptions)===null||l===void 0)&&l.keepIsValid||n._setValid(),r.current=e.values,i(f=>({...f}))):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=Ht(s,n),t.current}function cr(){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 dr={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 he(e,t){var r;switch(e.Type){case"Literal":return e.Value;case"SystemIdentifier":if(e.Property){const w=t.systemValues[e.Name];return Xe(w,e.Property.Name)}return t.systemValues[e.Name];case"Identifier":if(e.Property){const w=Et(e,t);return Xe(w,e.Property.Name)}return Et(e,t);case"MemberExpression":if(!e.Arguments||e.Arguments.length===0)throw new Error("MemberExpression requires Arguments array");const s=he(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=he(e.Arguments[0],t),l=he(e.Arguments[1],t);return fr(e.Operator,n,l);case"LogicalExpression":if(!e.Arguments||e.Arguments.length<2)throw new Error("LogicalExpression requires at least 2 arguments");return hr(e.Operator,e.Arguments,t);case"CallExpression":if(!e.Callee)throw new Error("CallExpression requires Callee");const f=dr[e.Callee];if(!f)throw new Error(`Unknown function: ${e.Callee}`);const b=(e.Arguments||[]).map(w=>he(w,t));return f(...b);case"AssignmentExpression":if(!e.Arguments||e.Arguments.length!==1)throw new Error("AssignmentExpression requires exactly 1 argument");return he(e.Arguments[0],t);default:throw new Error(`Unknown expression type: ${e.Type}`)}}function Et(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 fr(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 hr(e,t,r){switch(e){case"AND":return t.every(s=>!!he(s,r));case"OR":return t.some(s=>!!he(s,r));default:throw new Error(`Unknown logical operator: ${e}`)}}function Tt(e,t,r={}){const s={formValues:t,systemValues:cr(),referenceData:r};try{return he(e,s)}catch(i){return console.warn("Expression evaluation failed:",i),!1}}function Vt(e,t,r={}){const s=[];for(const i of e)try{Tt(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 mr(e,t={},r={}){try{return Tt(e,t,r)}catch(s){return console.warn("Default value calculation failed:",s),null}}function Ft(e,t){var f,b,w;const r=((f=e.Expression)==null?void 0:f.toLowerCase())||"",s=((b=e.Name)==null?void 0:b.toLowerCase())||"",i=((w=e.Id)==null?void 0:w.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 yr(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 l=[];i.Validation.forEach(f=>{t.Rules.Validation[f.Id]=f,l.push(f.Id),Ft(f,s)&&(n=!0)}),r[s]={...i,Validation:l,Required:n}}else i.Validation.forEach(f=>{var w;const b=(w=t.Rules.Validation)==null?void 0:w[f];b&&Ft(b,s)&&(n=!0)}),n&&!i.Required&&(r[s]={...i,Required:!0});if(i.Formula){const l=`RULE_COMPUTE_${s.toUpperCase()}`;t.Rules.Computation[l]={Id:l,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 gr(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 pr(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 l=i.toUpperCase().replace(/[_-]/g,"");for(const b of r){const w=b.toUpperCase().replace(/[_-]/g,"");if(l.includes(w)){t[i]=b;return}}const f=`${n.Name||""} ${n.Description||""}`.toLowerCase();for(const b of r)if(f.includes(b.toLowerCase())){t[i]=b;return}}),t}function br(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(f=>{t.validation[f]?r[i].validation.push(f):t.computation[f]?r[i].computation.push(f):t.businessLogic[f]&&r[i].businessLogic.push(f)}),n.Formula&&Object.entries(t.computation).forEach(([l,f])=>{var b;f.Expression===((b=n.Formula)==null?void 0:b.Expression)&&(r[i].computation.includes(l)||r[i].computation.push(l))})});const s=pr(e);return Object.entries(s).forEach(([i,n])=>{r[n]&&!r[n].computation.includes(i)&&r[n].computation.push(i)}),r}function wr(e,t){const r={},s={editable:!0,readable:!0,hidden:!1};return Object.keys(e.Fields).forEach(i=>{var b,w,C,_,E,m;if(!t||!((b=e.RolePermission)!=null&&b[t])){r[i]=s;return}const n=e.RolePermission[t],l=((w=n.Editable)==null?void 0:w.includes(i))||((C=n.Editable)==null?void 0:C.includes("*"))||!1,f=((_=n.ReadOnly)==null?void 0:_.includes(i))||((E=n.ReadOnly)==null?void 0:E.includes("*"))||l;r[i]={editable:l&&!((m=n.ReadOnly)!=null&&m.includes(i)),readable:f,hidden:!f}}),r}function vr(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 Mt(e){return e.replace(/([A-Z])/g," $1").replace(/^./,t=>t.toUpperCase()).replace(/_/g," ").trim()}function Er(e,t,r){const s={};switch(t.Required&&(s.required={value:!0,message:`${Mt(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 Vr(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 Fr(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 mr(e.DefaultValue.ExpressionTree,t)}function Ar(e,t,r,s={},i,n){const l={editable:!0,readable:!0,hidden:!1},b=n||{validation:[],computation:[],businessLogic:[]},w=t.Computed||!!t.Formula||b.computation.length>0,C=Er(e,t);return w&&(C.disabled=!0),{name:e,type:vr(t.Type,e),label:t.Name||Mt(e),required:t.Required||!1,computed:w,defaultValue:Fr(t,s),options:Vr(t),validation:C,description:t.Description,_bdoField:t,permission:i||l,rules:b}}function xr(e,t={},r){let s=e;s=yr(s);const i={},n=[],l=[],f=[],b=[],w=gr(s),C=br(s,w),_=wr(s,r);for(const[E,m]of Object.entries(s.Fields)){if(E.startsWith("_")&&!["_id"].includes(E))continue;const J=_[E];if(J.hidden)continue;const T=Ar(E,m,s.Fields,t,J,C[E]||{validation:[],computation:[],businessLogic:[]});i[E]=T,n.push(E),T.computed&&l.push(E),T.required&&f.push(E)}return{fields:i,fieldOrder:n,computedFields:l,requiredFields:f,crossFieldValidation:b,rules:w,fieldRules:C,rolePermissions:s.RolePermission}}async function Sr(e){try{const r=(await Bt.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 _r(e,t=3){let r;for(let s=1;s<=t;s++)try{return await Sr(e)}catch(i){if(r=Re.toError(i),s<t){const n=Math.min(1e3*Math.pow(2,s-1),5e3);await new Promise(l=>setTimeout(l,n));continue}}throw r}async function Dr(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 Rr(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 Nr(e,t,r="create",s,i){const n={};return Object.keys(e).forEach(l=>{const f=l;let b=e[f];if(!t.includes(l)&&b!==void 0){if((i==null?void 0:i[l])==="Reference"&&b!==null&&(b=Lt(b)),r==="create"){n[f]=b;return}if(r==="update"){if(!s){n[f]=b;return}const w=s[f];JSON.stringify(b)!==JSON.stringify(w)&&(n[f]=b)}}}),n}function Lt(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 Cr(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 Or(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 Tr(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 Mr(e,t,r=10){Ee.set(e,{data:t,timestamp:Date.now(),ttl:r*60*1e3})}function Lr(e){const t=Ee.get(e);return t?Date.now()-t.timestamp>t.ttl?(Ee.delete(e),null):t.data:null}function Ir(e){e?Array.from(Ee.keys()).filter(r=>r.startsWith(e)).forEach(r=>Ee.delete(r)):Ee.clear()}async function kr(e){const t=`schema:${e}`,r=Lr(t);if(r)return r;const s=await _r(e);return Mr(t,s,30),s}class At{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 Ur(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 Br{constructor(){pe(this,"resultCache",new At(500));pe(this,"dependencyCache",new At(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=Ur(t),this.dependencyCache.set(r,s)),s}getCachedResult(t,r,s){if(!s)return;const i=this.getDependencies(t);for(const l of i)if(r[l]!==s[l])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),l=this.createCacheKey(t,r);return this.resultCache.set(l,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(w=>String(w||"")).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((w,C)=>w+(Number(C)||0),0);case"AVG":const n=s.filter(w=>!isNaN(Number(w)));return n.length>0?n.reduce((w,C)=>w+Number(C),0)/n.length:0;case"MIN":return Math.min(...s.map(w=>Number(w)||0));case"MAX":return Math.max(...s.map(w=>Number(w)||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 l=new Date(s[0]),f=new Date(s[1]),b=Math.abs(l.getTime()-f.getTime());return Math.ceil(b/(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 It=new Br;function qr(e,t,r,s,i){if(!r||r.length===0)return{isValid:!0};const n={...s,[e]:t};for(const l of r)try{if(!It.evaluate(l.ExpressionTree,n,i))return{isValid:!1,message:l.Message||`Validation failed for ${l.Name}`,fieldName:e}}catch(f){console.warn(`Validation rule ${l.Id} failed to evaluate:`,f)}return{isValid:!0}}function xt(e){return Array.from(It.getDependencies(e))}function Pr(e){const{source:t,operation:r,recordId:s,defaultValues:i={},mode:n="onBlur",enabled:l=!0,userRole:f,onSchemaError:b,skipSchemaFetch:w=!1,schema:C,interactionMode:_="interactive"}=e,E=_==="interactive",[m,J]=v.useState(null),[T,se]=v.useState({}),[Y,x]=v.useState(!1),[ee]=v.useState({}),[k,I]=v.useState(null),[oe,me]=v.useState(!1),[ae,ne]=v.useState(null),W=v.useRef(!1),le=v.useRef(null),F=v.useRef(null),S=v.useRef(!1),R=v.useRef(b);v.useEffect(()=>{R.current=b},[b]);const{data:U,isLoading:X,error:j,refetch:ce}=ot.useQuery({queryKey:["form-schema",t],queryFn:()=>w?Promise.resolve(C||{}):kr(t),enabled:l&&(!w||!!C),retry:3,staleTime:30*60*1e3,gcTime:60*60*1e3,throwOnError:!1}),{data:G,isLoading:de,error:Te}=ot.useQuery({queryKey:["form-record",t,s],queryFn:()=>Dr(t,s),enabled:l&&r==="update"&&!!s,retry:3,staleTime:5*60*1e3,gcTime:15*60*1e3,throwOnError:!1}),Me=v.useMemo(()=>{const u={...i};if(r==="update"&&G&&Object.assign(u,G),m)for(const[h,d]of Object.entries(m.fields))d.defaultValue!==void 0&&!(h in u)&&(u[h]=d.defaultValue);return u},[i,G,r,m]),A=lr({mode:n,defaultValues:i,values:r==="update"&&G?Me:void 0});v.useEffect(()=>{var u;if(U)try{const h=xr(U,{},f);J(h)}catch(h){console.error("Schema processing failed:",h),(u=R.current)==null||u.call(R,Re.toError(h))}},[U,f]),v.useEffect(()=>{var u;j&&((u=R.current)==null||u.call(R,j))},[j]),v.useEffect(()=>{if(!E||r!=="create"||!m||!l||k||S.current)return;S.current=!0;let u=!0;return(async()=>{me(!0),ne(null);try{const c=await ve.api(t).draftInteraction({});if(!u)return;I(c._id),c&&typeof c=="object"&&Object.entries(c).forEach(([y,p])=>{if(y==="_id")return;A.getValues(y)!==p&&A.setValue(y,p,{shouldDirty:!1,shouldValidate:!1})})}catch(d){if(!u)return;console.error("Failed to create initial draft:",d),ne(Re.toError(d)),S.current=!1}finally{u&&me(!1)}})(),()=>{u=!1}},[E,r,m,l,k,t]);const ge=v.useMemo(()=>{if(!m)return[];const u=new Set,h=new Set(m.computedFields);return Object.entries(m.fieldRules).forEach(([d,c])=>{c.computation.forEach(y=>{const p=m.rules.computation[y];p!=null&&p.ExpressionTree&&xt(p.ExpressionTree).forEach(D=>{m.fields[D]&&D!==d&&!h.has(D)&&u.add(D)})})}),m.computedFields.forEach(d=>{const c=m.fields[d];c._bdoField.Formula&&xt(c._bdoField.Formula.ExpressionTree).forEach(p=>{m.fields[p]&&p!==d&&!h.has(p)&&u.add(p)})}),Array.from(u)},[m]),Le=v.useCallback(async u=>{if(!(!m||!(E&&r!=="update"||ge.length>0&&ge.includes(u)))){if(E&&r==="create"&&!k){console.warn("Interactive create mode: waiting for draft ID");return}W.current||(le.current&&clearTimeout(le.current),le.current=setTimeout(()=>{if(!m||W.current)return;const d=A.getValues();(async()=>{W.current=!0;try{const y=ve.api(t),p={};r==="update"&&s&&"_id"in d&&(p._id=d._id),E&&r==="create"&&k&&(p._id=k);const V=F.current??(r==="update"?G:null)??{},D=new Set(m.computedFields||[]);Object.keys(d).forEach(B=>{var _e;if(B==="_id"||D.has(B))return;let H=d[B];const Pe=V[B];if(JSON.stringify(H)!==JSON.stringify(Pe)&&(H!==""&&H!==null&&H!==void 0)){const Ge=m.fields[B];((_e=Ge==null?void 0:Ge._bdoField)==null?void 0:_e.Type)==="Reference"&&(H=Lt(H)),p[B]=H}});const M=p,N={...F.current};Object.keys(d).forEach(B=>{D.has(B)||(N[B]=d[B])}),F.current=N;let K;r==="update"&&s?K=await y.draftPatch(s,M):E&&k?K=await y.draftInteraction(M):K=await y.draft(M),K&&typeof K=="object"&&(Object.entries(K).forEach(([B,H])=>{d[B]!==H&&A.setValue(B,H,{shouldDirty:!1,shouldValidate:!1})}),Object.entries(K).forEach(([B,H])=>{D.has(B)&&(F.current[B]=H)}))}catch(y){console.warn("Failed to compute fields via API:",y)}finally{W.current=!1}})()},300))}},[m,r,s,G,t,A,ge,E,k]),Ie=v.useCallback(async()=>{if(!m)return!1;const u=A.getValues();if(!await A.trigger())return!1;const d=m.crossFieldValidation.map(y=>({Id:y.Id,Condition:{ExpressionTree:y.ExpressionTree},Message:y.Message||`Validation failed for ${y.Name}`})),c=Vt(d,u,T);return c.length>0?(c.forEach((y,p)=>{A.setError(`root.crossField${p}`,{type:"validate",message:y.message})}),!1):!0},[m,A.getValues,A.trigger,A.setError,T]),He=v.useCallback((u,h)=>A.handleSubmit(async(d,c)=>{if(!m){const y=new Error("Schema not loaded");h==null||h(y,c);return}x(!0);try{const y=m.crossFieldValidation.map(N=>({Id:N.Id,Condition:{ExpressionTree:N.ExpressionTree},Message:N.Message||`Validation failed for ${N.Name}`})),p=Vt(y,d,T);if(p.length>0){p.forEach((N,K)=>{A.setError(`root.crossField${K}`,{type:"validate",message:N.message})}),h==null||h(A.formState.errors,c);return}const V={};Object.entries(m.fields).forEach(([N,K])=>{V[N]=K._bdoField.Type});const D=Nr(d,m.computedFields,r,G,V);let M;if(E){const N=ve.api(t);if(r==="create"){if(!k)throw new Error("Interactive create mode requires a draft ID. Draft creation may have failed.");M={success:!0,data:await N.draft({...D,_id:k})}}else M={success:!0,data:await N.update(s,D)}}else if(M=await Rr(t,r,D,s),!M.success)throw M.error||new Error("Submission failed");r==="create"&&(A.reset(),E&&I(null)),await(u==null?void 0:u(M.data||d,c))}catch(y){h==null||h(Re.toError(y),c)}finally{x(!1)}},(d,c)=>{h==null||h(d,c)}),[A,m,T,t,r,s,G,E,k]),Ve=v.useCallback(u=>(m==null?void 0:m.fields[u])||null,[m]),ke=v.useCallback(()=>{if(!m)return{};const u={};return Object.entries(m.fields).forEach(([h,d])=>{u[h]=d}),u},[m]),Fe=v.useCallback(u=>!!(m!=null&&m.fields[u]),[m]),Ae=v.useCallback(u=>(m==null?void 0:m.requiredFields.includes(u))||!1,[m]),Ye=v.useCallback(u=>(m==null?void 0:m.computedFields.includes(u))||!1,[m]),Ue=v.useCallback(async()=>{await ce()},[ce]),Ke=v.useCallback(()=>{A.clearErrors()},[A]),xe=X||r==="update"&&de||E&&r==="create"&&oe,Be=xe||Y,Se=j||Te||ae,ze=!!Se,nt=v.useMemo(()=>(m==null?void 0:m.computedFields)||[],[m]),qe=v.useMemo(()=>(m==null?void 0:m.requiredFields)||[],[m]),a=v.useMemo(()=>{if(!m)return{};const u={};return Object.entries(m.fields).forEach(([h,d])=>{const c={};switch(d.required&&(c.required=`${d.label} is required`),d.permission.editable||(c.disabled=!0),d.type){case"number":c.valueAsNumber=!0;break;case"date":case"datetime-local":c.valueAsDate=!0;break}const y=d.rules.validation;y.length>0&&(c.validate={expressionValidation:p=>{const V=A.getValues();for(const D of y){const M=m.rules.validation[D];if(M){const N=qr(h,p,[M],V,ee);if(!N.isValid)return N.message||M.Message||"Invalid value"}}return!0}}),u[h]=c}),u},[m,A,T]);return{register:v.useCallback((u,h)=>{const d=a[u],c=h==null?void 0:h.onBlur,y=async p=>{c&&await c(p);let V=!0;n==="onBlur"||n==="onTouched"||n==="all"?V=await A.trigger(u):V=!A.getFieldState(u,A.formState).error,V&&await Le(u)};return A.register(u,{...d,...h,onBlur:y})},[A,a,Le,n]),handleSubmit:He,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||Y,isSubmitSuccessful:A.formState.isSubmitSuccessful,isLoadingInitialData:xe,isLoadingRecord:de,isLoading:Be,draftId:k,isCreatingDraft:oe,loadError:Se?Re.toError(Se):null,hasError:ze,schema:U,schemaConfig:m,computedFields:nt,requiredFields:qe,getField:Ve,getFields:ke,hasField:Fe,isFieldRequired:Ae,isFieldComputed:Ye,refreshSchema:Ue,validateForm:Ie,clearErrors:Ke}}exports.clearFormCache=Ir;exports.isNetworkError=Or;exports.isValidationError=Tr;exports.parseApiError=Cr;exports.useForm=Pr;
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;