@service_laboratory/auth 5.0.3 → 5.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -31,6 +31,7 @@ export declare class Auth {
31
31
  accountStore: Store<AccountData, (cb: AccountData) => AccountData>;
32
32
  httpClient: Axios;
33
33
  constructor(httpClient: Axios);
34
+ loadServerData: ({ user, token: sessionID }: any) => void;
34
35
  initAuthData: () => void;
35
36
  load: () => Promise<void>;
36
37
  login: (values: LoginRequest) => Promise<any>;
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import _e, { createContext as Mr, useContext as U, useMemo as pt, useCallback as ve, useState as Le, useEffect as Qe } from "react";
2
- import { Button as ue, cn as Ce, toast as D, Card as we, CardHeader as ye, CardTitle as be, CardDescription as Ee, CardContent as ke, Form as Se, Label as B, FormField as K, FormItem as G, FormControl as Y, Input as q, FieldError as cr, FieldDescription as ze, FormMessage as it, Progress as Vr } from "@service_laboratory/ui";
2
+ import { Button as ue, cn as Ce, toast as D, Card as we, CardHeader as ye, CardTitle as be, CardDescription as Ee, CardContent as ke, Form as Se, Label as K, FormField as G, FormItem as Y, FormControl as q, Input as H, FieldError as cr, FieldDescription as ze, FormMessage as it, Progress as Vr } from "@service_laboratory/ui";
3
3
  import { RefreshCw as Jr, EyeOff as mt, EyeIcon as ht, Loader2Icon as De } from "lucide-react";
4
4
  import { LocaleContext as J } from "@service_laboratory/locale";
5
5
  import { useNavigate as le, Link as te, useLocation as Wr } from "@tanstack/react-router";
@@ -64,7 +64,7 @@ function Yr() {
64
64
  case $:
65
65
  var y = d.render;
66
66
  return d = d.displayName, d || (d = y.displayName || y.name || "", d = d !== "" ? "ForwardRef(" + d + ")" : "ForwardRef"), d;
67
- case Q:
67
+ case ee:
68
68
  return y = d.displayName || null, y !== null ? y : e(d.type) || "Memo";
69
69
  case Ge:
70
70
  y = d._payload, d = d._init;
@@ -225,7 +225,7 @@ React keys must be passed directly to JSX without using spread:
225
225
  function g(d) {
226
226
  return typeof d == "object" && d !== null && d.$$typeof === _;
227
227
  }
228
- var p = _e, _ = /* @__PURE__ */ Symbol.for("react.transitional.element"), v = /* @__PURE__ */ Symbol.for("react.portal"), E = /* @__PURE__ */ Symbol.for("react.fragment"), N = /* @__PURE__ */ Symbol.for("react.strict_mode"), M = /* @__PURE__ */ Symbol.for("react.profiler"), O = /* @__PURE__ */ Symbol.for("react.consumer"), k = /* @__PURE__ */ Symbol.for("react.context"), $ = /* @__PURE__ */ Symbol.for("react.forward_ref"), j = /* @__PURE__ */ Symbol.for("react.suspense"), A = /* @__PURE__ */ Symbol.for("react.suspense_list"), Q = /* @__PURE__ */ Symbol.for("react.memo"), Ge = /* @__PURE__ */ Symbol.for("react.lazy"), Lr = /* @__PURE__ */ Symbol.for("react.activity"), Cr = /* @__PURE__ */ Symbol.for("react.client.reference"), Ye = p.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, St = Object.prototype.hasOwnProperty, Dr = Array.isArray, qe = console.createTask ? console.createTask : function() {
228
+ var p = _e, _ = /* @__PURE__ */ Symbol.for("react.transitional.element"), v = /* @__PURE__ */ Symbol.for("react.portal"), E = /* @__PURE__ */ Symbol.for("react.fragment"), N = /* @__PURE__ */ Symbol.for("react.strict_mode"), M = /* @__PURE__ */ Symbol.for("react.profiler"), O = /* @__PURE__ */ Symbol.for("react.consumer"), k = /* @__PURE__ */ Symbol.for("react.context"), $ = /* @__PURE__ */ Symbol.for("react.forward_ref"), j = /* @__PURE__ */ Symbol.for("react.suspense"), A = /* @__PURE__ */ Symbol.for("react.suspense_list"), ee = /* @__PURE__ */ Symbol.for("react.memo"), Ge = /* @__PURE__ */ Symbol.for("react.lazy"), Lr = /* @__PURE__ */ Symbol.for("react.activity"), Cr = /* @__PURE__ */ Symbol.for("react.client.reference"), Ye = p.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, St = Object.prototype.hasOwnProperty, Dr = Array.isArray, qe = console.createTask ? console.createTask : function() {
229
229
  return null;
230
230
  };
231
231
  p = {
@@ -433,7 +433,7 @@ function se(e, t, r) {
433
433
  configurable: !0
434
434
  });
435
435
  }
436
- function H(...e) {
436
+ function X(...e) {
437
437
  const t = {};
438
438
  for (const r of e) {
439
439
  const n = Object.getOwnPropertyDescriptors(r);
@@ -478,7 +478,7 @@ const en = /* @__PURE__ */ new Set(["string", "number", "symbol"]);
478
478
  function Ue(e) {
479
479
  return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
480
480
  }
481
- function X(e, t, r) {
481
+ function Q(e, t, r) {
482
482
  const n = new e._zod.constr(t ?? e._zod.def);
483
483
  return (!t || r?.parent) && (n._zod.parent = e), n;
484
484
  }
@@ -502,7 +502,7 @@ function rn(e, t) {
502
502
  const r = e._zod.def, n = r.checks;
503
503
  if (n && n.length > 0)
504
504
  throw new Error(".pick() cannot be used on object schemas containing refinements");
505
- const i = H(e._zod.def, {
505
+ const i = X(e._zod.def, {
506
506
  get shape() {
507
507
  const s = {};
508
508
  for (const a in t) {
@@ -514,13 +514,13 @@ function rn(e, t) {
514
514
  },
515
515
  checks: []
516
516
  });
517
- return X(e, i);
517
+ return Q(e, i);
518
518
  }
519
519
  function nn(e, t) {
520
520
  const r = e._zod.def, n = r.checks;
521
521
  if (n && n.length > 0)
522
522
  throw new Error(".omit() cannot be used on object schemas containing refinements");
523
- const i = H(e._zod.def, {
523
+ const i = X(e._zod.def, {
524
524
  get shape() {
525
525
  const s = { ...e._zod.def.shape };
526
526
  for (const a in t) {
@@ -532,7 +532,7 @@ function nn(e, t) {
532
532
  },
533
533
  checks: []
534
534
  });
535
- return X(e, i);
535
+ return Q(e, i);
536
536
  }
537
537
  function on(e, t) {
538
538
  if (!he(t))
@@ -544,27 +544,27 @@ function on(e, t) {
544
544
  if (Object.getOwnPropertyDescriptor(i, s) !== void 0)
545
545
  throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.");
546
546
  }
547
- const o = H(e._zod.def, {
547
+ const o = X(e._zod.def, {
548
548
  get shape() {
549
549
  const i = { ...e._zod.def.shape, ...t };
550
550
  return se(this, "shape", i), i;
551
551
  }
552
552
  });
553
- return X(e, o);
553
+ return Q(e, o);
554
554
  }
555
555
  function sn(e, t) {
556
556
  if (!he(t))
557
557
  throw new Error("Invalid input to safeExtend: expected a plain object");
558
- const r = H(e._zod.def, {
558
+ const r = X(e._zod.def, {
559
559
  get shape() {
560
560
  const n = { ...e._zod.def.shape, ...t };
561
561
  return se(this, "shape", n), n;
562
562
  }
563
563
  });
564
- return X(e, r);
564
+ return Q(e, r);
565
565
  }
566
566
  function an(e, t) {
567
- const r = H(e._zod.def, {
567
+ const r = X(e._zod.def, {
568
568
  get shape() {
569
569
  const n = { ...e._zod.def.shape, ...t._zod.def.shape };
570
570
  return se(this, "shape", n), n;
@@ -575,13 +575,13 @@ function an(e, t) {
575
575
  checks: []
576
576
  // delete existing checks
577
577
  });
578
- return X(e, r);
578
+ return Q(e, r);
579
579
  }
580
580
  function cn(e, t, r) {
581
581
  const o = t._zod.def.checks;
582
582
  if (o && o.length > 0)
583
583
  throw new Error(".partial() cannot be used on object schemas containing refinements");
584
- const s = H(t._zod.def, {
584
+ const s = X(t._zod.def, {
585
585
  get shape() {
586
586
  const a = t._zod.def.shape, u = { ...a };
587
587
  if (r)
@@ -603,10 +603,10 @@ function cn(e, t, r) {
603
603
  },
604
604
  checks: []
605
605
  });
606
- return X(t, s);
606
+ return Q(t, s);
607
607
  }
608
608
  function un(e, t, r) {
609
- const n = H(t._zod.def, {
609
+ const n = X(t._zod.def, {
610
610
  get shape() {
611
611
  const o = t._zod.def.shape, i = { ...o };
612
612
  if (r)
@@ -627,7 +627,7 @@ function un(e, t, r) {
627
627
  return se(this, "shape", i), i;
628
628
  }
629
629
  });
630
- return X(t, n);
630
+ return Q(t, n);
631
631
  }
632
632
  function ae(e, t = 0) {
633
633
  if (e.aborted === !0)
@@ -2629,14 +2629,14 @@ const mi = (e, t) => {
2629
2629
  input: Fe(e, "input"),
2630
2630
  output: Fe(e, "output")
2631
2631
  }
2632
- }), e.toJSONSchema = Cs(e, {}), e.def = t, e.type = t.type, Object.defineProperty(e, "_def", { value: t }), e.check = (...r) => e.clone(H(t, {
2632
+ }), e.toJSONSchema = Cs(e, {}), e.def = t, e.type = t.type, Object.defineProperty(e, "_def", { value: t }), e.check = (...r) => e.clone(X(t, {
2633
2633
  checks: [
2634
2634
  ...t.checks ?? [],
2635
2635
  ...r.map((n) => typeof n == "function" ? { _zod: { check: n, def: { check: "custom" }, onattach: [] } } : n)
2636
2636
  ]
2637
2637
  }), {
2638
2638
  parent: !0
2639
- }), e.with = e.check, e.clone = (r, n) => X(e, r, n), e.brand = () => e, e.register = ((r, n) => (r.add(e, n), e)), e.parse = (r, n) => hi(e, r, n, { callee: e.parse }), e.safeParse = (r, n) => _i(e, r, n), e.parseAsync = async (r, n) => gi(e, r, n, { callee: e.parseAsync }), e.safeParseAsync = async (r, n) => vi(e, r, n), e.spa = e.safeParseAsync, e.encode = (r, n) => wi(e, r, n), e.decode = (r, n) => yi(e, r, n), e.encodeAsync = async (r, n) => bi(e, r, n), e.decodeAsync = async (r, n) => Ei(e, r, n), e.safeEncode = (r, n) => ki(e, r, n), e.safeDecode = (r, n) => Si(e, r, n), e.safeEncodeAsync = async (r, n) => zi(e, r, n), e.safeDecodeAsync = async (r, n) => Oi(e, r, n), e.refine = (r, n) => e.check(_a(r, n)), e.superRefine = (r) => e.check(va(r)), e.overwrite = (r) => e.check(/* @__PURE__ */ fe(r)), e.optional = () => Xt(e), e.exactOptional = () => oa(e), e.nullable = () => Qt(e), e.nullish = () => Xt(Qt(e)), e.nonoptional = (r) => la(e, r), e.array = () => Gi(e), e.or = (r) => Hi([e, r]), e.and = (r) => Qi(e, r), e.transform = (r) => er(e, ra(r)), e.default = (r) => aa(e, r), e.prefault = (r) => ua(e, r), e.catch = (r) => da(e, r), e.pipe = (r) => er(e, r), e.readonly = () => ha(e), e.describe = (r) => {
2639
+ }), e.with = e.check, e.clone = (r, n) => Q(e, r, n), e.brand = () => e, e.register = ((r, n) => (r.add(e, n), e)), e.parse = (r, n) => hi(e, r, n, { callee: e.parse }), e.safeParse = (r, n) => _i(e, r, n), e.parseAsync = async (r, n) => gi(e, r, n, { callee: e.parseAsync }), e.safeParseAsync = async (r, n) => vi(e, r, n), e.spa = e.safeParseAsync, e.encode = (r, n) => wi(e, r, n), e.decode = (r, n) => yi(e, r, n), e.encodeAsync = async (r, n) => bi(e, r, n), e.decodeAsync = async (r, n) => Ei(e, r, n), e.safeEncode = (r, n) => ki(e, r, n), e.safeDecode = (r, n) => Si(e, r, n), e.safeEncodeAsync = async (r, n) => zi(e, r, n), e.safeDecodeAsync = async (r, n) => Oi(e, r, n), e.refine = (r, n) => e.check(_a(r, n)), e.superRefine = (r) => e.check(va(r)), e.overwrite = (r) => e.check(/* @__PURE__ */ fe(r)), e.optional = () => Xt(e), e.exactOptional = () => oa(e), e.nullable = () => Qt(e), e.nullish = () => Xt(Qt(e)), e.nonoptional = (r) => la(e, r), e.array = () => Gi(e), e.or = (r) => Hi([e, r]), e.and = (r) => Qi(e, r), e.transform = (r) => er(e, ra(r)), e.default = (r) => aa(e, r), e.prefault = (r) => ua(e, r), e.catch = (r) => da(e, r), e.pipe = (r) => er(e, r), e.readonly = () => ha(e), e.describe = (r) => {
2640
2640
  const n = e.clone();
2641
2641
  return me.add(n, { description: r }), n;
2642
2642
  }, Object.defineProperty(e, "description", {
@@ -3212,32 +3212,35 @@ const I = {
3212
3212
  password: ft().min(8, {
3213
3213
  message: e.t("auth.confirmResetPasswordForm.errors.fields.passwordToSmall")
3214
3214
  })
3215
- }), []), n = Oe({
3215
+ }), [e.t]), n = Oe({
3216
3216
  resolver: Et(r),
3217
3217
  defaultValues: {
3218
3218
  code: "",
3219
3219
  password: ""
3220
3220
  }
3221
3221
  }), o = le();
3222
- return { submit: ve((s) => {
3223
- t.confirmResetPassword(s).then(() => {
3224
- D.success(e.t("auth.confirmResetPasswordForm.success.notifications.confirmResetPasswordSuccess")), o({
3225
- to: "/"
3226
- });
3227
- }).catch((a) => {
3228
- if (a.status === 400) {
3229
- const u = a.response.data.detail;
3230
- if (I.fieldsErrorsMap[u] && n.setError(I.fieldsErrorsMap[u], {}), I.notificationsErrorsMap[u]) {
3231
- const l = I.notificationsErrorsMap[u];
3232
- D.error(e.t(l, s));
3233
- return;
3234
- }
3235
- D.error(e.t("auth.confirmResetPasswordForm.errors.notifications.unknownError"), {
3236
- description: e.t("auth.confirmResetPasswordForm.errors.notifications.unknownErrorDescription")
3222
+ return { submit: ve(
3223
+ (s) => {
3224
+ t.confirmResetPassword(s).then(() => {
3225
+ D.success(e.t("auth.confirmResetPasswordForm.success.notifications.confirmResetPasswordSuccess")), o({
3226
+ to: "/"
3237
3227
  });
3238
- }
3239
- });
3240
- }, []), form: n };
3228
+ }).catch((a) => {
3229
+ if (a.status === 400) {
3230
+ const u = a.response.data.detail;
3231
+ if (I.fieldsErrorsMap[u] && n.setError(I.fieldsErrorsMap[u], {}), I.notificationsErrorsMap[u]) {
3232
+ const l = I.notificationsErrorsMap[u];
3233
+ D.error(e.t(l, s));
3234
+ return;
3235
+ }
3236
+ D.error(e.t("auth.confirmResetPasswordForm.errors.notifications.unknownError"), {
3237
+ description: e.t("auth.confirmResetPasswordForm.errors.notifications.unknownErrorDescription")
3238
+ });
3239
+ }
3240
+ });
3241
+ },
3242
+ [t.confirmResetPassword, n.setError, e.t, o]
3243
+ ), form: n };
3241
3244
  };
3242
3245
  function Da() {
3243
3246
  const [e, t] = Le(!1), { form: r, submit: n } = wa(), { i18n: o } = U(J);
@@ -3248,14 +3251,14 @@ function Da() {
3248
3251
  ] }),
3249
3252
  /* @__PURE__ */ c.jsx(ke, { children: /* @__PURE__ */ c.jsx(Se, { ...r, children: /* @__PURE__ */ c.jsx("form", { onSubmit: r.handleSubmit(n), children: /* @__PURE__ */ c.jsxs("div", { className: "flex flex-col gap-6", children: [
3250
3253
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3251
- /* @__PURE__ */ c.jsx(B, { children: o.t("auth.confirmResetPasswordForm.form.authCodeInputLabel") }),
3254
+ /* @__PURE__ */ c.jsx(K, { children: o.t("auth.confirmResetPasswordForm.form.authCodeInputLabel") }),
3252
3255
  /* @__PURE__ */ c.jsx(
3253
- K,
3256
+ G,
3254
3257
  {
3255
3258
  control: r.control,
3256
3259
  name: "code",
3257
- render: ({ field: i }) => /* @__PURE__ */ c.jsx(G, { children: /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(
3258
- q,
3260
+ render: ({ field: i }) => /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(q, { children: /* @__PURE__ */ c.jsx(
3261
+ H,
3259
3262
  {
3260
3263
  type: "text",
3261
3264
  placeholder: "00001234",
@@ -3268,13 +3271,13 @@ function Da() {
3268
3271
  )
3269
3272
  ] }),
3270
3273
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3271
- /* @__PURE__ */ c.jsx("div", { className: "flex items-center", children: /* @__PURE__ */ c.jsx(B, { children: o.t("auth.confirmResetPasswordForm.form.passwordInputLabel") }) }),
3274
+ /* @__PURE__ */ c.jsx("div", { className: "flex items-center", children: /* @__PURE__ */ c.jsx(K, { children: o.t("auth.confirmResetPasswordForm.form.passwordInputLabel") }) }),
3272
3275
  /* @__PURE__ */ c.jsx(
3273
- K,
3276
+ G,
3274
3277
  {
3275
3278
  control: r.control,
3276
3279
  name: "password",
3277
- render: ({ field: i, fieldState: s }) => /* @__PURE__ */ c.jsx(G, { children: /* @__PURE__ */ c.jsx(Y, { className: "relative", children: /* @__PURE__ */ c.jsxs("div", { className: "form-control-wrapper", children: [
3280
+ render: ({ field: i, fieldState: s }) => /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(q, { className: "relative", children: /* @__PURE__ */ c.jsxs("div", { className: "form-control-wrapper", children: [
3278
3281
  /* @__PURE__ */ c.jsxs("div", { className: "relative", children: [
3279
3282
  e ? /* @__PURE__ */ c.jsx(
3280
3283
  mt,
@@ -3294,7 +3297,7 @@ function Da() {
3294
3297
  }
3295
3298
  ),
3296
3299
  /* @__PURE__ */ c.jsx(
3297
- q,
3300
+ H,
3298
3301
  {
3299
3302
  disabled: r.formState.isSubmitting,
3300
3303
  type: e ? "text" : "password",
@@ -3368,15 +3371,15 @@ function Ua() {
3368
3371
  ] }),
3369
3372
  /* @__PURE__ */ c.jsx(ke, { children: /* @__PURE__ */ c.jsx(Se, { ...t, children: /* @__PURE__ */ c.jsx("form", { onSubmit: t.handleSubmit(r), children: /* @__PURE__ */ c.jsxs("div", { className: "flex flex-col gap-6", children: [
3370
3373
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3371
- /* @__PURE__ */ c.jsx(B, { htmlFor: "email", children: e.t("auth.loginForm.form.emailLabel") }),
3374
+ /* @__PURE__ */ c.jsx(K, { htmlFor: "email", children: e.t("auth.loginForm.form.emailLabel") }),
3372
3375
  /* @__PURE__ */ c.jsx(
3373
- K,
3376
+ G,
3374
3377
  {
3375
3378
  control: t.control,
3376
3379
  name: "email",
3377
- render: ({ field: i }) => /* @__PURE__ */ c.jsxs(G, { children: [
3378
- /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(
3379
- q,
3380
+ render: ({ field: i }) => /* @__PURE__ */ c.jsxs(Y, { children: [
3381
+ /* @__PURE__ */ c.jsx(q, { children: /* @__PURE__ */ c.jsx(
3382
+ H,
3380
3383
  {
3381
3384
  disabled: t.formState.isSubmitting,
3382
3385
  type: "email",
@@ -3393,7 +3396,7 @@ function Ua() {
3393
3396
  ] }),
3394
3397
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3395
3398
  /* @__PURE__ */ c.jsxs("div", { className: "flex items-center", children: [
3396
- /* @__PURE__ */ c.jsx(B, { htmlFor: "password", children: e.t("auth.loginForm.form.passwordLabel") }),
3399
+ /* @__PURE__ */ c.jsx(K, { htmlFor: "password", children: e.t("auth.loginForm.form.passwordLabel") }),
3397
3400
  /* @__PURE__ */ c.jsx(
3398
3401
  te,
3399
3402
  {
@@ -3405,12 +3408,12 @@ function Ua() {
3405
3408
  )
3406
3409
  ] }),
3407
3410
  /* @__PURE__ */ c.jsx(
3408
- K,
3411
+ G,
3409
3412
  {
3410
3413
  control: t.control,
3411
3414
  name: "password",
3412
- render: ({ field: i }) => /* @__PURE__ */ c.jsxs(G, { children: [
3413
- /* @__PURE__ */ c.jsx(Y, { className: "relative", children: /* @__PURE__ */ c.jsxs("div", { className: "relative", children: [
3415
+ render: ({ field: i }) => /* @__PURE__ */ c.jsxs(Y, { children: [
3416
+ /* @__PURE__ */ c.jsx(q, { className: "relative", children: /* @__PURE__ */ c.jsxs("div", { className: "relative", children: [
3414
3417
  n ? /* @__PURE__ */ c.jsx(
3415
3418
  mt,
3416
3419
  {
@@ -3429,7 +3432,7 @@ function Ua() {
3429
3432
  }
3430
3433
  ),
3431
3434
  /* @__PURE__ */ c.jsx(
3432
- q,
3435
+ H,
3433
3436
  {
3434
3437
  placeholder: "********",
3435
3438
  disabled: t.formState.isSubmitting,
@@ -3503,7 +3506,7 @@ const ba = () => {
3503
3506
  });
3504
3507
  });
3505
3508
  },
3506
- [n.setError, o]
3509
+ [n.setError, o, t.signup, e.t]
3507
3510
  ), form: n };
3508
3511
  };
3509
3512
  function Ma() {
@@ -3521,14 +3524,14 @@ function Ma() {
3521
3524
  ] }),
3522
3525
  /* @__PURE__ */ c.jsx(ke, { children: /* @__PURE__ */ c.jsx(Se, { ...n, children: /* @__PURE__ */ c.jsx("form", { onSubmit: n.handleSubmit(o), children: /* @__PURE__ */ c.jsxs("div", { className: "flex flex-col gap-6", children: [
3523
3526
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3524
- /* @__PURE__ */ c.jsx(B, { children: r.t("auth.signUpForm.form.emailLabel") }),
3527
+ /* @__PURE__ */ c.jsx(K, { children: r.t("auth.signUpForm.form.emailLabel") }),
3525
3528
  /* @__PURE__ */ c.jsx(
3526
- K,
3529
+ G,
3527
3530
  {
3528
3531
  control: n.control,
3529
3532
  name: "email",
3530
- render: ({ field: i }) => /* @__PURE__ */ c.jsx(G, { children: /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(
3531
- q,
3533
+ render: ({ field: i }) => /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(q, { children: /* @__PURE__ */ c.jsx(
3534
+ H,
3532
3535
  {
3533
3536
  disabled: n.formState.isSubmitting,
3534
3537
  type: "email",
@@ -3543,7 +3546,7 @@ function Ma() {
3543
3546
  ] }),
3544
3547
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3545
3548
  /* @__PURE__ */ c.jsxs("div", { className: "flex items-center", children: [
3546
- /* @__PURE__ */ c.jsx(B, { children: r.t("auth.signUpForm.form.passwordLabel") }),
3549
+ /* @__PURE__ */ c.jsx(K, { children: r.t("auth.signUpForm.form.passwordLabel") }),
3547
3550
  /* @__PURE__ */ c.jsx(
3548
3551
  te,
3549
3552
  {
@@ -3554,11 +3557,11 @@ function Ma() {
3554
3557
  )
3555
3558
  ] }),
3556
3559
  /* @__PURE__ */ c.jsx(
3557
- K,
3560
+ G,
3558
3561
  {
3559
3562
  control: n.control,
3560
3563
  name: "password",
3561
- render: ({ field: i, fieldState: s }) => /* @__PURE__ */ c.jsx(G, { children: /* @__PURE__ */ c.jsx(Y, { className: "relative", children: /* @__PURE__ */ c.jsxs(c.Fragment, { children: [
3564
+ render: ({ field: i, fieldState: s }) => /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(q, { className: "relative", children: /* @__PURE__ */ c.jsxs(c.Fragment, { children: [
3562
3565
  /* @__PURE__ */ c.jsxs("div", { className: "relative", children: [
3563
3566
  e ? /* @__PURE__ */ c.jsx(
3564
3567
  mt,
@@ -3578,7 +3581,7 @@ function Ma() {
3578
3581
  }
3579
3582
  ),
3580
3583
  /* @__PURE__ */ c.jsx(
3581
- q,
3584
+ H,
3582
3585
  {
3583
3586
  disabled: n.formState.isSubmitting,
3584
3587
  type: e ? "text" : "password",
@@ -3669,15 +3672,15 @@ function Va() {
3669
3672
  ] }),
3670
3673
  /* @__PURE__ */ c.jsx(ke, { children: /* @__PURE__ */ c.jsx(Se, { ...t, children: /* @__PURE__ */ c.jsx("form", { onSubmit: t.handleSubmit(r), children: /* @__PURE__ */ c.jsxs("div", { className: "flex flex-col gap-6", children: [
3671
3674
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3672
- /* @__PURE__ */ c.jsx(B, { htmlFor: "email", children: e.t("auth.startResetPasswordForm.form.emailLabel") }),
3675
+ /* @__PURE__ */ c.jsx(K, { htmlFor: "email", children: e.t("auth.startResetPasswordForm.form.emailLabel") }),
3673
3676
  /* @__PURE__ */ c.jsx(
3674
- K,
3677
+ G,
3675
3678
  {
3676
3679
  control: t.control,
3677
3680
  name: "email",
3678
- render: ({ field: n }) => /* @__PURE__ */ c.jsxs(G, { children: [
3679
- /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(
3680
- q,
3681
+ render: ({ field: n }) => /* @__PURE__ */ c.jsxs(Y, { children: [
3682
+ /* @__PURE__ */ c.jsx(q, { children: /* @__PURE__ */ c.jsx(
3683
+ H,
3681
3684
  {
3682
3685
  disabled: t.formState.isSubmitting,
3683
3686
  type: "email",
@@ -3752,14 +3755,14 @@ function Ja() {
3752
3755
  ] }),
3753
3756
  /* @__PURE__ */ c.jsx(ke, { children: /* @__PURE__ */ c.jsx(Se, { ...t, children: /* @__PURE__ */ c.jsx("form", { onSubmit: t.handleSubmit(r), children: /* @__PURE__ */ c.jsxs("div", { className: "flex flex-col gap-6", children: [
3754
3757
  /* @__PURE__ */ c.jsxs("div", { className: "grid gap-2", children: [
3755
- /* @__PURE__ */ c.jsx(B, { children: e.t("auth.verifyEmailForm.form.codeLabel") }),
3758
+ /* @__PURE__ */ c.jsx(K, { children: e.t("auth.verifyEmailForm.form.codeLabel") }),
3756
3759
  /* @__PURE__ */ c.jsx(
3757
- K,
3760
+ G,
3758
3761
  {
3759
3762
  control: t.control,
3760
3763
  name: "code",
3761
- render: ({ field: n }) => /* @__PURE__ */ c.jsx(G, { children: /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(
3762
- q,
3764
+ render: ({ field: n }) => /* @__PURE__ */ c.jsx(Y, { children: /* @__PURE__ */ c.jsx(q, { children: /* @__PURE__ */ c.jsx(
3765
+ H,
3763
3766
  {
3764
3767
  type: "text",
3765
3768
  placeholder: "00001234",
@@ -3799,16 +3802,24 @@ const tt = "Authorization", Ir = () => ({
3799
3802
  sessionID: null,
3800
3803
  isAuthenticated: !1,
3801
3804
  isLoaded: !1
3802
- }), ee = new Br(Ir()), Wa = new Kr({
3803
- fn: () => !!ee.state.user?.roles.find((e) => e.name === "admin"),
3804
- deps: [ee]
3805
+ }), B = new Br(Ir()), Wa = new Kr({
3806
+ fn: () => !!B.state.user?.roles.find((e) => e.name === "admin"),
3807
+ deps: [B]
3805
3808
  });
3806
3809
  class Ba {
3807
3810
  accountStore;
3808
3811
  httpClient;
3809
3812
  constructor(t) {
3810
- this.httpClient = t, this.accountStore = ee;
3813
+ this.httpClient = t, this.accountStore = B;
3811
3814
  }
3815
+ loadServerData = ({ user: t, token: r }) => {
3816
+ B.setState(() => ({
3817
+ user: t,
3818
+ sessionID: r,
3819
+ isAuthenticated: !0,
3820
+ isLoaded: !0
3821
+ }));
3822
+ };
3812
3823
  initAuthData = () => {
3813
3824
  const t = localStorage.getItem("token");
3814
3825
  t && (this.httpClient.defaults.headers.common[tt] = t);
@@ -3816,14 +3827,14 @@ class Ba {
3816
3827
  load = async () => {
3817
3828
  try {
3818
3829
  const { data: t } = await this.httpClient.get("/api/auth/account/me");
3819
- ee.setState(() => ({
3830
+ B.setState(() => ({
3820
3831
  user: t.user,
3821
3832
  sessionID: t.session_id,
3822
3833
  isAuthenticated: !0,
3823
3834
  isLoaded: !0
3824
3835
  }));
3825
3836
  } catch {
3826
- ee.setState((t) => ({
3837
+ B.setState((t) => ({
3827
3838
  ...t,
3828
3839
  isLoaded: !0
3829
3840
  }));
@@ -3839,7 +3850,7 @@ class Ba {
3839
3850
  this._initUserData(r.data);
3840
3851
  };
3841
3852
  logout = () => {
3842
- ee.setState(() => ({ ...Ir(), isLoaded: !0 })), this._clearAuthData();
3853
+ B.setState(() => ({ ...Ir(), isLoaded: !0 })), this._clearAuthData();
3843
3854
  };
3844
3855
  startResetPassword = (t) => this.httpClient.post("/api/auth/account/start-reset-password", t);
3845
3856
  confirmResetPassword = async (t) => {
@@ -3847,7 +3858,7 @@ class Ba {
3847
3858
  this._initUserData(r.data);
3848
3859
  };
3849
3860
  _initUserData = ({ user: t, token: r, sessionID: n }) => {
3850
- this._setAuthData(r), ee.setState(() => ({
3861
+ this._setAuthData(r), B.setState(() => ({
3851
3862
  user: t,
3852
3863
  isAuthenticated: !0,
3853
3864
  isLoaded: !0,
@@ -3988,8 +3999,8 @@ function Oa() {
3988
3999
  return k = j;
3989
4000
  }
3990
4001
  if (A = k, n(O, j)) return A;
3991
- var Q = g(j);
3992
- return p !== void 0 && p(A, Q) ? (O = j, A) : (O = j, k = Q);
4002
+ var ee = g(j);
4003
+ return p !== void 0 && p(A, ee) ? (O = j, A) : (O = j, k = ee);
3993
4004
  }
3994
4005
  var M = !1, O, k, $ = h === void 0 ? null : h;
3995
4006
  return [
@@ -4040,8 +4051,8 @@ function ja() {
4040
4051
  }
4041
4052
  if (A = k, n(O, j))
4042
4053
  return A;
4043
- var Q = g(j);
4044
- return p !== void 0 && p(A, Q) ? (O = j, A) : (O = j, k = Q);
4054
+ var ee = g(j);
4055
+ return p !== void 0 && p(A, ee) ? (O = j, A) : (O = j, k = ee);
4045
4056
  }
4046
4057
  var M = !1, O, k, $ = h === void 0 ? null : h;
4047
4058
  return [
@@ -4120,9 +4131,9 @@ const Ka = ({ auth: e, children: t }) => {
4120
4131
  }, 100);
4121
4132
  return () => clearInterval(u);
4122
4133
  }, []), Qe(() => {
4123
- e.initAuthData(), e.load().then(() => {
4134
+ e.accountStore.state.isLoaded || (e.initAuthData(), e.load().then(() => {
4124
4135
  a(100);
4125
- });
4136
+ }));
4126
4137
  }, [e]), Qe(() => {
4127
4138
  o && !i && (n.pathname.startsWith("/auth") || r({ to: "/auth/login" }));
4128
4139
  }, [o, i, r, n.pathname.startsWith]), n.pathname.startsWith("/auth") ? /* @__PURE__ */ c.jsx(oe, { value: { auth: e }, children: t }) : o && i ? /* @__PURE__ */ c.jsx(oe, { value: { auth: e }, children: t }) : s > 5 ? /* @__PURE__ */ c.jsx("div", { className: "flex items-center justify-center h-screen", children: /* @__PURE__ */ c.jsxs("div", { className: "p-4 rounded w-1/2", children: [
@@ -3,7 +3,7 @@
3
3
  <%s {...props} />
4
4
  React keys must be passed directly to JSX without using spread:
5
5
  let props = %s;
6
- <%s key={someKey} {...props} />`,I,L,ae,L),_r[L+I]=!0)}if(L=null,C!==void 0&&(r(C),L=""+C),s(E)&&(r(E.key),L=""+E.key),"key"in E){C={};for(var qe in E)qe!=="key"&&(C[qe]=E[qe])}else C=E;return L&&a(C,typeof p=="function"?p.displayName||p.name||"Unknown":p),l(p,L,C,o(),Ze,Qe)}function g(p){_(p)?p._store&&(p._store.validated=1):typeof p=="object"&&p!==null&&p.$$typeof===Ye&&(p._payload.status==="fulfilled"?_(p._payload.value)&&p._payload.value._store&&(p._payload.value._store.validated=1):p._store&&(p._store.validated=1))}function _(p){return typeof p=="object"&&p!==null&&p.$$typeof===v}var m=b,v=Symbol.for("react.transitional.element"),w=Symbol.for("react.portal"),z=Symbol.for("react.fragment"),A=Symbol.for("react.strict_mode"),W=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),O=Symbol.for("react.context"),R=Symbol.for("react.forward_ref"),Z=Symbol.for("react.suspense"),D=Symbol.for("react.suspense_list"),ne=Symbol.for("react.memo"),Ye=Symbol.for("react.lazy"),sa=Symbol.for("react.activity"),ia=Symbol.for("react.client.reference"),He=m.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,fr=Object.prototype.hasOwnProperty,aa=Array.isArray,Xe=console.createTask?console.createTask:function(){return null};m={react_stack_bottom_frame:function(p){return p()}};var pr,mr={},hr=m.react_stack_bottom_frame.bind(m,i)(),gr=Xe(n(i)),_r={};ue.Fragment=z,ue.jsx=function(p,E,C){var I=1e4>He.recentlyCreatedOwnerStacks++;return h(p,E,C,!1,I?Error("react-stack-top-frame"):hr,I?Xe(n(p)):gr)},ue.jsxs=function(p,E,C){var I=1e4>He.recentlyCreatedOwnerStacks++;return h(p,E,C,!0,I?Error("react-stack-top-frame"):hr,I?Xe(n(p)):gr)}})()),ue}var nt;function yr(){return nt||(nt=1,process.env.NODE_ENV==="production"?pe.exports=vr():pe.exports=wr()),pe.exports}var c=yr();const br=({reset:e,processing:t})=>c.jsx("div",{className:"fixed right-2 top-4",children:c.jsx(d.Button,{onClick:e,variant:t?"destructive":"secondary",size:"icon-sm",className:"cursor-pointer",disabled:t,children:c.jsx(K.RefreshCw,{className:d.cn({"animate-spin":t})})})}),U={loginForm:{emailInput:"login-form-email-input",passwordInput:"login-form-password-input",submitButton:"login-form-submit-button",signUpFormLink:"login-form-signup-link",resetPasswordLink:"login-form-reset-password-link"},signupForm:{emailInput:"signup-form-email-input",passwordInput:"signup-form-password-input",submitButton:"signup-form-submit-button"},verifyEmailForm:{authCodeInput:"verify-email-form-auth-code-input",submitButton:"verify-email-form-submit-button"},startResetPasswordForm:{emailInput:"start-reset-password-form-email-input",submitButton:"start-reset-password-form-submit-button"},confirmResetPasswordForm:{authCodeInput:"confirm-reset-password-form-auth-code-input",newPasswordInput:"confirm-reset-password-form-new-password-input",submitButton:"confirm-reset-password-form-submit-button"}},ot=(e,t,r)=>{if(e&&"reportValidity"in e){const n=J.get(r,t);e.setCustomValidity(n&&n.message||""),e.reportValidity()}},Ce=(e,t)=>{for(const r in t.fields){const n=t.fields[r];n&&n.ref&&"reportValidity"in n.ref?ot(n.ref,r,e):n&&n.refs&&n.refs.forEach(o=>ot(o,r,e))}},st=(e,t)=>{t.shouldUseNativeValidation&&Ce(e,t);const r={};for(const n in e){const o=J.get(t.fields,n),i=Object.assign(e[n]||{},{ref:o&&o.ref});if(Er(t.names||Object.keys(e),n)){const s=Object.assign({},J.get(r,n));J.set(s,"root",i),J.set(r,n,s)}else J.set(r,n,i)}return r},Er=(e,t)=>{const r=it(t);return e.some(n=>it(n).match(`^${r}\\.\\d+`))};function it(e){return e.replace(/\]|\[/g,"")}function f(e,t,r){function n(a,u){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1}),a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,u);const l=s.prototype,h=Object.keys(l);for(let g=0;g<h.length;g++){const _=h[g];_ in a||(a[_]=l[_].bind(a))}}const o=r?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var u;const l=r?.Parent?new i:this;n(l,a),(u=l._zod).deferred??(u.deferred=[]);for(const h of l._zod.deferred)h();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}class oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class at extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const ct={};function q(e){return ct}function ut(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Fe(e,t){return typeof t=="bigint"?t.toString():t}function Te(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Re(e){return e==null}function Ie(e){const t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}const lt=Symbol("evaluating");function S(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==lt)return n===void 0&&(n=lt,n=r()),n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function ee(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function H(...e){const t={};for(const r of e){const n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function dt(e){return JSON.stringify(e)}function kr(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const ft="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function me(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Sr=Te(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function le(e){if(me(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const r=t.prototype;return!(me(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function pt(e){return le(e)?{...e}:Array.isArray(e)?[...e]:e}const zr=new Set(["string","number","symbol"]);function he(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function X(e,t,r){const n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function y(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Or(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}function jr(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=H(e._zod.def,{get shape(){const s={};for(const a in t){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);t[a]&&(s[a]=r.shape[a])}return ee(this,"shape",s),s},checks:[]});return X(e,i)}function xr(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=H(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const a in t){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);t[a]&&delete s[a]}return ee(this,"shape",s),s},checks:[]});return X(e,i)}function Pr(e,t){if(!le(t))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const i=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=H(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return ee(this,"shape",i),i}});return X(e,o)}function Zr(e,t){if(!le(t))throw new Error("Invalid input to safeExtend: expected a plain object");const r=H(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return ee(this,"shape",n),n}});return X(e,r)}function Cr(e,t){const r=H(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return ee(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return X(e,r)}function Fr(e,t,r){const o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=H(t._zod.def,{get shape(){const a=t._zod.def.shape,u={...a};if(r)for(const l in r){if(!(l in a))throw new Error(`Unrecognized key: "${l}"`);r[l]&&(u[l]=e?new e({type:"optional",innerType:a[l]}):a[l])}else for(const l in a)u[l]=e?new e({type:"optional",innerType:a[l]}):a[l];return ee(this,"shape",u),u},checks:[]});return X(t,s)}function Tr(e,t,r){const n=H(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(r)for(const s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new e({type:"nonoptional",innerType:o[s]}))}else for(const s in o)i[s]=new e({type:"nonoptional",innerType:o[s]});return ee(this,"shape",i),i}});return X(t,n)}function se(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function mt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function ge(e){return typeof e=="string"?e:e?.message}function te(e,t,r){const n={...e,path:e.path??[]};if(!e.message){const o=ge(e.inst?._zod.def?.error?.(e))??ge(t?.error?.(e))??ge(r.customError?.(e))??ge(r.localeError?.(e))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function Le(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function de(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const ht=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Fe,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ne=f("$ZodError",ht),_e=f("$ZodError",ht,{Parent:Error});function Rr(e,t=r=>r.message){const r={},n=[];for(const o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function Ir(e,t=r=>r.message){const r={_errors:[]},n=o=>{for(const i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(s=>n({issues:s}));else if(i.code==="invalid_key")n({issues:i.issues});else if(i.code==="invalid_element")n({issues:i.issues});else if(i.path.length===0)r._errors.push(t(i));else{let s=r,a=0;for(;a<i.path.length;){const u=i.path[a];a===i.path.length-1?(s[u]=s[u]||{_errors:[]},s[u]._errors.push(t(i))):s[u]=s[u]||{_errors:[]},s=s[u],a++}}};return n(e),r}const ve=e=>(t,r,n,o)=>{const i=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new oe;if(s.issues.length){const a=new(o?.Err??e)(s.issues.map(u=>te(u,i,q())));throw ft(a,o?.callee),a}return s.value},Lr=ve(_e),we=e=>async(t,r,n,o)=>{const i=n?Object.assign(n,{async:!0}):{async:!0};let s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){const a=new(o?.Err??e)(s.issues.map(u=>te(u,i,q())));throw ft(a,o?.callee),a}return s.value},Nr=we(_e),ye=e=>(t,r,n)=>{const o=n?{...n,async:!1}:{async:!1},i=t._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new oe;return i.issues.length?{success:!1,error:new(e??Ne)(i.issues.map(s=>te(s,o,q())))}:{success:!0,data:i.value}},Ar=ye(_e),be=e=>async(t,r,n)=>{const o=n?Object.assign(n,{async:!0}):{async:!0};let i=t._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>te(s,o,q())))}:{success:!0,data:i.value}},$r=be(_e),Dr=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ve(e)(t,r,o)},Ur=e=>(t,r,n)=>ve(e)(t,r,n),Mr=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return we(e)(t,r,o)},Vr=e=>async(t,r,n)=>we(e)(t,r,n),Jr=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ye(e)(t,r,o)},Wr=e=>(t,r,n)=>ye(e)(t,r,n),Br=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return be(e)(t,r,o)},Kr=e=>async(t,r,n)=>be(e)(t,r,n),Gr=/^[cC][^\s-]{8,}$/,Yr=/^[0-9a-z]+$/,Hr=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xr=/^[0-9a-vA-V]{20}$/,Qr=/^[A-Za-z0-9]{27}$/,qr=/^[a-zA-Z0-9_-]{21}$/,en=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,tn=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,gt=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,rn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,nn="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function on(){return new RegExp(nn,"u")}const sn=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,an=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,cn=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,un=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ln=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_t=/^[A-Za-z0-9_-]*$/,dn=/^\+[1-9]\d{6,14}$/,vt="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",fn=new RegExp(`^${vt}$`);function wt(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function pn(e){return new RegExp(`^${wt(e)}$`)}function mn(e){const t=wt({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${t}(?:${r.join("|")})`;return new RegExp(`^${vt}T(?:${n})$`)}const hn=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},gn=/^[^A-Z]*$/,_n=/^[^a-z]*$/,Y=f("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),vn=f("$ZodCheckMaxLength",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const o=n.value;if(o.length<=t.maximum)return;const s=Le(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),wn=f("$ZodCheckMinLength",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const o=n.value;if(o.length>=t.minimum)return;const s=Le(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),yn=f("$ZodCheckLengthEquals",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{const o=n.value,i=o.length;if(i===t.length)return;const s=Le(o),a=i>t.length;n.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Ee=f("$ZodCheckStringFormat",(e,t)=>{var r,n;Y.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),bn=f("$ZodCheckRegex",(e,t)=>{Ee.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),En=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=gn),Ee.init(e,t)}),kn=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=_n),Ee.init(e,t)}),Sn=f("$ZodCheckIncludes",(e,t)=>{Y.init(e,t);const r=he(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),zn=f("$ZodCheckStartsWith",(e,t)=>{Y.init(e,t);const r=new RegExp(`^${he(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),On=f("$ZodCheckEndsWith",(e,t)=>{Y.init(e,t);const r=new RegExp(`.*${he(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),jn=f("$ZodCheckOverwrite",(e,t)=>{Y.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class xn{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const n=t.split(`
6
+ <%s key={someKey} {...props} />`,I,L,ae,L),_r[L+I]=!0)}if(L=null,C!==void 0&&(r(C),L=""+C),s(E)&&(r(E.key),L=""+E.key),"key"in E){C={};for(var qe in E)qe!=="key"&&(C[qe]=E[qe])}else C=E;return L&&a(C,typeof p=="function"?p.displayName||p.name||"Unknown":p),l(p,L,C,o(),Ze,Qe)}function g(p){_(p)?p._store&&(p._store.validated=1):typeof p=="object"&&p!==null&&p.$$typeof===Ye&&(p._payload.status==="fulfilled"?_(p._payload.value)&&p._payload.value._store&&(p._payload.value._store.validated=1):p._store&&(p._store.validated=1))}function _(p){return typeof p=="object"&&p!==null&&p.$$typeof===v}var m=b,v=Symbol.for("react.transitional.element"),w=Symbol.for("react.portal"),z=Symbol.for("react.fragment"),A=Symbol.for("react.strict_mode"),W=Symbol.for("react.profiler"),P=Symbol.for("react.consumer"),O=Symbol.for("react.context"),R=Symbol.for("react.forward_ref"),Z=Symbol.for("react.suspense"),D=Symbol.for("react.suspense_list"),ne=Symbol.for("react.memo"),Ye=Symbol.for("react.lazy"),sa=Symbol.for("react.activity"),ia=Symbol.for("react.client.reference"),He=m.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,fr=Object.prototype.hasOwnProperty,aa=Array.isArray,Xe=console.createTask?console.createTask:function(){return null};m={react_stack_bottom_frame:function(p){return p()}};var pr,mr={},hr=m.react_stack_bottom_frame.bind(m,i)(),gr=Xe(n(i)),_r={};ue.Fragment=z,ue.jsx=function(p,E,C){var I=1e4>He.recentlyCreatedOwnerStacks++;return h(p,E,C,!1,I?Error("react-stack-top-frame"):hr,I?Xe(n(p)):gr)},ue.jsxs=function(p,E,C){var I=1e4>He.recentlyCreatedOwnerStacks++;return h(p,E,C,!0,I?Error("react-stack-top-frame"):hr,I?Xe(n(p)):gr)}})()),ue}var nt;function yr(){return nt||(nt=1,process.env.NODE_ENV==="production"?pe.exports=vr():pe.exports=wr()),pe.exports}var c=yr();const br=({reset:e,processing:t})=>c.jsx("div",{className:"fixed right-2 top-4",children:c.jsx(d.Button,{onClick:e,variant:t?"destructive":"secondary",size:"icon-sm",className:"cursor-pointer",disabled:t,children:c.jsx(K.RefreshCw,{className:d.cn({"animate-spin":t})})})}),U={loginForm:{emailInput:"login-form-email-input",passwordInput:"login-form-password-input",submitButton:"login-form-submit-button",signUpFormLink:"login-form-signup-link",resetPasswordLink:"login-form-reset-password-link"},signupForm:{emailInput:"signup-form-email-input",passwordInput:"signup-form-password-input",submitButton:"signup-form-submit-button"},verifyEmailForm:{authCodeInput:"verify-email-form-auth-code-input",submitButton:"verify-email-form-submit-button"},startResetPasswordForm:{emailInput:"start-reset-password-form-email-input",submitButton:"start-reset-password-form-submit-button"},confirmResetPasswordForm:{authCodeInput:"confirm-reset-password-form-auth-code-input",newPasswordInput:"confirm-reset-password-form-new-password-input",submitButton:"confirm-reset-password-form-submit-button"}},ot=(e,t,r)=>{if(e&&"reportValidity"in e){const n=J.get(r,t);e.setCustomValidity(n&&n.message||""),e.reportValidity()}},Ce=(e,t)=>{for(const r in t.fields){const n=t.fields[r];n&&n.ref&&"reportValidity"in n.ref?ot(n.ref,r,e):n&&n.refs&&n.refs.forEach(o=>ot(o,r,e))}},st=(e,t)=>{t.shouldUseNativeValidation&&Ce(e,t);const r={};for(const n in e){const o=J.get(t.fields,n),i=Object.assign(e[n]||{},{ref:o&&o.ref});if(Er(t.names||Object.keys(e),n)){const s=Object.assign({},J.get(r,n));J.set(s,"root",i),J.set(r,n,s)}else J.set(r,n,i)}return r},Er=(e,t)=>{const r=it(t);return e.some(n=>it(n).match(`^${r}\\.\\d+`))};function it(e){return e.replace(/\]|\[/g,"")}function f(e,t,r){function n(a,u){if(a._zod||Object.defineProperty(a,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1}),a._zod.traits.has(e))return;a._zod.traits.add(e),t(a,u);const l=s.prototype,h=Object.keys(l);for(let g=0;g<h.length;g++){const _=h[g];_ in a||(a[_]=l[_].bind(a))}}const o=r?.Parent??Object;class i extends o{}Object.defineProperty(i,"name",{value:e});function s(a){var u;const l=r?.Parent?new i:this;n(l,a),(u=l._zod).deferred??(u.deferred=[]);for(const h of l._zod.deferred)h();return l}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(e)}),Object.defineProperty(s,"name",{value:e}),s}class oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class at extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`),this.name="ZodEncodeError"}}const ct={};function ee(e){return ct}function ut(e){const t=Object.values(e).filter(n=>typeof n=="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Fe(e,t){return typeof t=="bigint"?t.toString():t}function Te(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function Re(e){return e==null}function Ie(e){const t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}const lt=Symbol("evaluating");function S(e,t,r){let n;Object.defineProperty(e,t,{get(){if(n!==lt)return n===void 0&&(n=lt,n=r()),n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function te(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function H(...e){const t={};for(const r of e){const n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function dt(e){return JSON.stringify(e)}function kr(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}const ft="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function me(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Sr=Te(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{const e=Function;return new e(""),!0}catch{return!1}});function le(e){if(me(e)===!1)return!1;const t=e.constructor;if(t===void 0||typeof t!="function")return!0;const r=t.prototype;return!(me(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function pt(e){return le(e)?{...e}:Array.isArray(e)?[...e]:e}const zr=new Set(["string","number","symbol"]);function he(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function X(e,t,r){const n=new e._zod.constr(t??e._zod.def);return(!t||r?.parent)&&(n._zod.parent=e),n}function y(e){const t=e;if(!t)return{};if(typeof t=="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error=="string"?{...t,error:()=>t.error}:t}function Or(e){return Object.keys(e).filter(t=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}function jr(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");const i=H(e._zod.def,{get shape(){const s={};for(const a in t){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);t[a]&&(s[a]=r.shape[a])}return te(this,"shape",s),s},checks:[]});return X(e,i)}function xr(e,t){const r=e._zod.def,n=r.checks;if(n&&n.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");const i=H(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const a in t){if(!(a in r.shape))throw new Error(`Unrecognized key: "${a}"`);t[a]&&delete s[a]}return te(this,"shape",s),s},checks:[]});return X(e,i)}function Pr(e,t){if(!le(t))throw new Error("Invalid input to extend: expected a plain object");const r=e._zod.def.checks;if(r&&r.length>0){const i=e._zod.def.shape;for(const s in t)if(Object.getOwnPropertyDescriptor(i,s)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}const o=H(e._zod.def,{get shape(){const i={...e._zod.def.shape,...t};return te(this,"shape",i),i}});return X(e,o)}function Zr(e,t){if(!le(t))throw new Error("Invalid input to safeExtend: expected a plain object");const r=H(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return te(this,"shape",n),n}});return X(e,r)}function Cr(e,t){const r=H(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return te(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return X(e,r)}function Fr(e,t,r){const o=t._zod.def.checks;if(o&&o.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");const s=H(t._zod.def,{get shape(){const a=t._zod.def.shape,u={...a};if(r)for(const l in r){if(!(l in a))throw new Error(`Unrecognized key: "${l}"`);r[l]&&(u[l]=e?new e({type:"optional",innerType:a[l]}):a[l])}else for(const l in a)u[l]=e?new e({type:"optional",innerType:a[l]}):a[l];return te(this,"shape",u),u},checks:[]});return X(t,s)}function Tr(e,t,r){const n=H(t._zod.def,{get shape(){const o=t._zod.def.shape,i={...o};if(r)for(const s in r){if(!(s in i))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(i[s]=new e({type:"nonoptional",innerType:o[s]}))}else for(const s in o)i[s]=new e({type:"nonoptional",innerType:o[s]});return te(this,"shape",i),i}});return X(t,n)}function se(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function mt(e,t){return t.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function ge(e){return typeof e=="string"?e:e?.message}function re(e,t,r){const n={...e,path:e.path??[]};if(!e.message){const o=ge(e.inst?._zod.def?.error?.(e))??ge(t?.error?.(e))??ge(r.customError?.(e))??ge(r.localeError?.(e))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,t?.reportInput||delete n.input,n}function Le(e){return Array.isArray(e)?"array":typeof e=="string"?"string":"unknown"}function de(...e){const[t,r,n]=e;return typeof t=="string"?{message:t,code:"custom",input:r,inst:n}:{...t}}const ht=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Fe,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Ne=f("$ZodError",ht),_e=f("$ZodError",ht,{Parent:Error});function Rr(e,t=r=>r.message){const r={},n=[];for(const o of e.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o))):n.push(t(o));return{formErrors:n,fieldErrors:r}}function Ir(e,t=r=>r.message){const r={_errors:[]},n=o=>{for(const i of o.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(s=>n({issues:s}));else if(i.code==="invalid_key")n({issues:i.issues});else if(i.code==="invalid_element")n({issues:i.issues});else if(i.path.length===0)r._errors.push(t(i));else{let s=r,a=0;for(;a<i.path.length;){const u=i.path[a];a===i.path.length-1?(s[u]=s[u]||{_errors:[]},s[u]._errors.push(t(i))):s[u]=s[u]||{_errors:[]},s=s[u],a++}}};return n(e),r}const ve=e=>(t,r,n,o)=>{const i=n?Object.assign(n,{async:!1}):{async:!1},s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise)throw new oe;if(s.issues.length){const a=new(o?.Err??e)(s.issues.map(u=>re(u,i,ee())));throw ft(a,o?.callee),a}return s.value},Lr=ve(_e),we=e=>async(t,r,n,o)=>{const i=n?Object.assign(n,{async:!0}):{async:!0};let s=t._zod.run({value:r,issues:[]},i);if(s instanceof Promise&&(s=await s),s.issues.length){const a=new(o?.Err??e)(s.issues.map(u=>re(u,i,ee())));throw ft(a,o?.callee),a}return s.value},Nr=we(_e),ye=e=>(t,r,n)=>{const o=n?{...n,async:!1}:{async:!1},i=t._zod.run({value:r,issues:[]},o);if(i instanceof Promise)throw new oe;return i.issues.length?{success:!1,error:new(e??Ne)(i.issues.map(s=>re(s,o,ee())))}:{success:!0,data:i.value}},Ar=ye(_e),be=e=>async(t,r,n)=>{const o=n?Object.assign(n,{async:!0}):{async:!0};let i=t._zod.run({value:r,issues:[]},o);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(s=>re(s,o,ee())))}:{success:!0,data:i.value}},$r=be(_e),Dr=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ve(e)(t,r,o)},Ur=e=>(t,r,n)=>ve(e)(t,r,n),Mr=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return we(e)(t,r,o)},Vr=e=>async(t,r,n)=>we(e)(t,r,n),Jr=e=>(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return ye(e)(t,r,o)},Wr=e=>(t,r,n)=>ye(e)(t,r,n),Br=e=>async(t,r,n)=>{const o=n?Object.assign(n,{direction:"backward"}):{direction:"backward"};return be(e)(t,r,o)},Kr=e=>async(t,r,n)=>be(e)(t,r,n),Gr=/^[cC][^\s-]{8,}$/,Yr=/^[0-9a-z]+$/,Hr=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xr=/^[0-9a-vA-V]{20}$/,Qr=/^[A-Za-z0-9]{27}$/,qr=/^[a-zA-Z0-9_-]{21}$/,en=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,tn=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,gt=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,rn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,nn="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function on(){return new RegExp(nn,"u")}const sn=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,an=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,cn=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,un=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ln=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,_t=/^[A-Za-z0-9_-]*$/,dn=/^\+[1-9]\d{6,14}$/,vt="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",fn=new RegExp(`^${vt}$`);function wt(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof e.precision=="number"?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function pn(e){return new RegExp(`^${wt(e)}$`)}function mn(e){const t=wt({precision:e.precision}),r=["Z"];e.local&&r.push(""),e.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const n=`${t}(?:${r.join("|")})`;return new RegExp(`^${vt}T(?:${n})$`)}const hn=e=>{const t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},gn=/^[^A-Z]*$/,_n=/^[^a-z]*$/,Y=f("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),vn=f("$ZodCheckMaxLength",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<o&&(n._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const o=n.value;if(o.length<=t.maximum)return;const s=Le(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),wn=f("$ZodCheckMinLength",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>o&&(n._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const o=n.value;if(o.length>=t.minimum)return;const s=Le(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),yn=f("$ZodCheckLengthEquals",(e,t)=>{var r;Y.init(e,t),(r=e._zod.def).when??(r.when=n=>{const o=n.value;return!Re(o)&&o.length!==void 0}),e._zod.onattach.push(n=>{const o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=n=>{const o=n.value,i=o.length;if(i===t.length)return;const s=Le(o),a=i>t.length;n.issues.push({origin:s,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),Ee=f("$ZodCheckStringFormat",(e,t)=>{var r,n;Y.init(e,t),e._zod.onattach.push(o=>{const i=o._zod.bag;i.format=t.format,t.pattern&&(i.patterns??(i.patterns=new Set),i.patterns.add(t.pattern))}),t.pattern?(r=e._zod).check??(r.check=o=>{t.pattern.lastIndex=0,!t.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(n=e._zod).check??(n.check=()=>{})}),bn=f("$ZodCheckRegex",(e,t)=>{Ee.init(e,t),e._zod.check=r=>{t.pattern.lastIndex=0,!t.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),En=f("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=gn),Ee.init(e,t)}),kn=f("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=_n),Ee.init(e,t)}),Sn=f("$ZodCheckIncludes",(e,t)=>{Y.init(e,t);const r=he(t.includes),n=new RegExp(typeof t.position=="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push(o=>{const i=o._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=o=>{o.value.includes(t.includes,t.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),zn=f("$ZodCheckStartsWith",(e,t)=>{Y.init(e,t);const r=new RegExp(`^${he(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),On=f("$ZodCheckEndsWith",(e,t)=>{Y.init(e,t);const r=new RegExp(`.*${he(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push(n=>{const o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),jn=f("$ZodCheckOverwrite",(e,t)=>{Y.init(e,t),e._zod.check=r=>{r.value=t.tx(r.value)}});class xn{constructor(t=[]){this.content=[],this.indent=0,this&&(this.args=t)}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t=="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}const n=t.split(`
7
7
  `).filter(s=>s),o=Math.min(...n.map(s=>s.length-s.trimStart().length)),i=n.map(s=>s.slice(o)).map(s=>" ".repeat(this.indent*2)+s);for(const s of i)this.content.push(s)}compile(){const t=Function,r=this?.args,o=[...(this?.content??[""]).map(i=>` ${i}`)];return new t(...r,o.join(`
8
8
  `))}}const Pn={major:4,minor:3,patch:6},F=f("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Pn;const n=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&n.unshift(e);for(const o of n)for(const i of o._zod.onattach)i(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const o=(s,a,u)=>{let l=se(s),h;for(const g of a){if(g._zod.def.when){if(!g._zod.def.when(s))continue}else if(l)continue;const _=s.issues.length,m=g._zod.check(s);if(m instanceof Promise&&u?.async===!1)throw new oe;if(h||m instanceof Promise)h=(h??Promise.resolve()).then(async()=>{await m,s.issues.length!==_&&(l||(l=se(s,_)))});else{if(s.issues.length===_)continue;l||(l=se(s,_))}}return h?h.then(()=>s):s},i=(s,a,u)=>{if(se(s))return s.aborted=!0,s;const l=o(a,n,u);if(l instanceof Promise){if(u.async===!1)throw new oe;return l.then(h=>e._zod.parse(h,u))}return e._zod.parse(l,u)};e._zod.run=(s,a)=>{if(a.skipChecks)return e._zod.parse(s,a);if(a.direction==="backward"){const l=e._zod.parse({value:s.value,issues:[]},{...a,skipChecks:!0});return l instanceof Promise?l.then(h=>i(h,s,a)):i(l,s,a)}const u=e._zod.parse(s,a);if(u instanceof Promise){if(a.async===!1)throw new oe;return u.then(l=>o(l,n,a))}return o(u,n,a)}}S(e,"~standard",()=>({validate:o=>{try{const i=Ar(e,o);return i.success?{value:i.data}:{issues:i.error?.issues}}catch{return $r(e,o).then(s=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Ae=f("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??hn(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),j=f("$ZodStringFormat",(e,t)=>{Ee.init(e,t),Ae.init(e,t)}),Zn=f("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=tn),j.init(e,t)}),Cn=f("$ZodUUID",(e,t)=>{if(t.version){const n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=gt(n))}else t.pattern??(t.pattern=gt());j.init(e,t)}),Fn=f("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=rn),j.init(e,t)}),Tn=f("$ZodURL",(e,t)=>{j.init(e,t),e._zod.check=r=>{try{const n=r.value.trim(),o=new URL(n);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})),t.normalize?r.value=o.href:r.value=n;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Rn=f("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=on()),j.init(e,t)}),In=f("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=qr),j.init(e,t)}),Ln=f("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Gr),j.init(e,t)}),Nn=f("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Yr),j.init(e,t)}),An=f("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Hr),j.init(e,t)}),$n=f("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Xr),j.init(e,t)}),Dn=f("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Qr),j.init(e,t)}),Un=f("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=mn(t)),j.init(e,t)}),Mn=f("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=fn),j.init(e,t)}),Vn=f("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=pn(t)),j.init(e,t)}),Jn=f("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=en),j.init(e,t)}),Wn=f("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=sn),j.init(e,t),e._zod.bag.format="ipv4"}),Bn=f("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=an),j.init(e,t),e._zod.bag.format="ipv6",e._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}}),Kn=f("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=cn),j.init(e,t)}),Gn=f("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=un),j.init(e,t),e._zod.check=r=>{const n=r.value.split("/");try{if(n.length!==2)throw new Error;const[o,i]=n;if(!i)throw new Error;const s=Number(i);if(`${s}`!==i)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function yt(e){if(e==="")return!0;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}const Yn=f("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ln),j.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=r=>{yt(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Hn(e){if(!_t.test(e))return!1;const t=e.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return yt(r)}const Xn=f("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=_t),j.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=r=>{Hn(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Qn=f("$ZodE164",(e,t)=>{t.pattern??(t.pattern=dn),j.init(e,t)});function qn(e,t=null){try{const r=e.split(".");if(r.length!==3)return!1;const[n]=r;if(!n)return!1;const o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||t&&(!("alg"in o)||o.alg!==t))}catch{return!1}}const eo=f("$ZodJWT",(e,t)=>{j.init(e,t),e._zod.check=r=>{qn(r.value,t.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}}),to=f("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=r=>r}),ro=f("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function bt(e,t,r){e.issues.length&&t.issues.push(...mt(r,e.issues)),t.value[r]=e.value}const no=f("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);const i=[];for(let s=0;s<o.length;s++){const a=o[s],u=t.element._zod.run({value:a,issues:[]},n);u instanceof Promise?i.push(u.then(l=>bt(l,r,s))):bt(u,r,s)}return i.length?Promise.all(i).then(()=>r):r}});function ke(e,t,r,n,o){if(e.issues.length){if(o&&!(r in n))return;t.issues.push(...mt(r,e.issues))}e.value===void 0?r in n&&(t.value[r]=void 0):t.value[r]=e.value}function Et(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const r=Or(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function kt(e,t,r,n,o,i){const s=[],a=o.keySet,u=o.catchall._zod,l=u.def.type,h=u.optout==="optional";for(const g in t){if(a.has(g))continue;if(l==="never"){s.push(g);continue}const _=u.run({value:t[g],issues:[]},n);_ instanceof Promise?e.push(_.then(m=>ke(m,r,g,t,h))):ke(_,r,g,t,h)}return s.length&&r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:i}),e.length?Promise.all(e).then(()=>r):r}const oo=f("$ZodObject",(e,t)=>{if(F.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){const a=t.shape;Object.defineProperty(t,"shape",{get:()=>{const u={...a};return Object.defineProperty(t,"shape",{value:u}),u}})}const n=Te(()=>Et(t));S(e._zod,"propValues",()=>{const a=t.shape,u={};for(const l in a){const h=a[l]._zod;if(h.values){u[l]??(u[l]=new Set);for(const g of h.values)u[l].add(g)}}return u});const o=me,i=t.catchall;let s;e._zod.parse=(a,u)=>{s??(s=n.value);const l=a.value;if(!o(l))return a.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),a;a.value={};const h=[],g=s.shape;for(const _ of s.keys){const m=g[_],v=m._zod.optout==="optional",w=m._zod.run({value:l[_],issues:[]},u);w instanceof Promise?h.push(w.then(z=>ke(z,a,_,l,v))):ke(w,a,_,l,v)}return i?kt(h,l,a,u,n.value,e):h.length?Promise.all(h).then(()=>a):a}}),so=f("$ZodObjectJIT",(e,t)=>{oo.init(e,t);const r=e._zod.parse,n=Te(()=>Et(t)),o=_=>{const m=new xn(["shape","payload","ctx"]),v=n.value,w=P=>{const O=dt(P);return`shape[${O}]._zod.run({ value: input[${O}], issues: [] }, ctx)`};m.write("const input = payload.value;");const z=Object.create(null);let A=0;for(const P of v.keys)z[P]=`key_${A++}`;m.write("const newResult = {};");for(const P of v.keys){const O=z[P],R=dt(P),D=_[P]?._zod?.optout==="optional";m.write(`const ${O} = ${w(P)};`),D?m.write(`
9
9
  if (${O}.issues.length) {
@@ -39,6 +39,6 @@ React keys must be passed directly to JSX without using spread:
39
39
  newResult[${R}] = ${O}.value;
40
40
  }
41
41
 
42
- `)}m.write("payload.value = newResult;"),m.write("return payload;");const W=m.compile();return(P,O)=>W(_,P,O)};let i;const s=me,a=!ct.jitless,l=a&&Sr.value,h=t.catchall;let g;e._zod.parse=(_,m)=>{g??(g=n.value);const v=_.value;return s(v)?a&&l&&m?.async===!1&&m.jitless!==!0?(i||(i=o(t.shape)),_=i(_,m),h?kt([],v,_,m,g,e):_):r(_,m):(_.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),_)}});function St(e,t,r,n){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!se(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(s=>te(s,n,q())))}),t)}const io=f("$ZodUnion",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),S(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),S(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),S(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>Ie(i.source)).join("|")})$`)}});const r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(r)return n(o,i);let s=!1;const a=[];for(const u of t.options){const l=u._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else{if(l.issues.length===0)return l;a.push(l)}}return s?Promise.all(a).then(u=>St(u,o,e,i)):St(a,o,e,i)}}),ao=f("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value,i=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([u,l])=>zt(r,u,l)):zt(r,i,s)}});function $e(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(le(e)&&le(t)){const r=Object.keys(t),n=Object.keys(e).filter(i=>r.indexOf(i)!==-1),o={...e,...t};for(const i of n){const s=$e(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let n=0;n<e.length;n++){const o=e[n],i=t[n],s=$e(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function zt(e,t,r){const n=new Map;let o;for(const a of t.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(const u of a.keys)n.has(u)||n.set(u,{}),n.get(u).l=!0}else e.issues.push(a);for(const a of r.issues)if(a.code==="unrecognized_keys")for(const u of a.keys)n.has(u)||n.set(u,{}),n.get(u).r=!0;else e.issues.push(a);const i=[...n].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(i.length&&o&&e.issues.push({...o,keys:i}),se(e))return e;const s=$e(t.value,r.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const co=f("$ZodEnum",(e,t)=>{F.init(e,t);const r=ut(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(o=>zr.has(typeof o)).map(o=>typeof o=="string"?he(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const s=o.value;return n.has(s)||o.issues.push({code:"invalid_value",values:r,input:s,inst:e}),o}}),uo=f("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new at(e.constructor.name);const o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(r.value=s,r));if(o instanceof Promise)throw new oe;return r.value=o,r}});function Ot(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const jt=f("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",S(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),S(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ie(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Ot(i,r.value)):Ot(o,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),lo=f("$ZodExactOptional",(e,t)=>{jt.init(e,t),S(e._zod,"values",()=>t.innerType._zod.values),S(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),fo=f("$ZodNullable",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.innerType._zod.optin),S(e._zod,"optout",()=>t.innerType._zod.optout),S(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ie(r.source)}|null)$`):void 0}),S(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),po=f("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>xt(i,t)):xt(o,t)}});function xt(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const mo=f("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),ho=f("$ZodNonOptional",(e,t)=>{F.init(e,t),S(e._zod,"values",()=>{const r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Pt(i,e)):Pt(o,e)}});function Pt(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const go=f("$ZodCatch",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.innerType._zod.optin),S(e._zod,"optout",()=>t.innerType._zod.optout),S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(s=>te(s,n,q()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(i=>te(i,n,q()))},input:r.value}),r.issues=[]),r)}}),_o=f("$ZodPipe",(e,t)=>{F.init(e,t),S(e._zod,"values",()=>t.in._zod.values),S(e._zod,"optin",()=>t.in._zod.optin),S(e._zod,"optout",()=>t.out._zod.optout),S(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){const i=t.out._zod.run(r,n);return i instanceof Promise?i.then(s=>Se(s,t.in,n)):Se(i,t.in,n)}const o=t.in._zod.run(r,n);return o instanceof Promise?o.then(i=>Se(i,t.out,n)):Se(o,t.out,n)}});function Se(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const vo=f("$ZodReadonly",(e,t)=>{F.init(e,t),S(e._zod,"propValues",()=>t.innerType._zod.propValues),S(e._zod,"values",()=>t.innerType._zod.values),S(e._zod,"optin",()=>t.innerType?._zod?.optin),S(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(Zt):Zt(o)}});function Zt(e){return e.value=Object.freeze(e.value),e}const wo=f("$ZodCustom",(e,t)=>{Y.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{const n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(i=>Ct(i,r,n,e));Ct(o,r,n,e)}});function Ct(e,t,r,n){if(!e){const o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),t.issues.push(de(o))}}var Ft;class yo{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){const n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){const r=t._zod.parent;if(r){const n={...this.get(r)??{}};delete n.id;const o={...n,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function bo(){return new yo}(Ft=globalThis).__zod_globalRegistry??(Ft.__zod_globalRegistry=bo());const fe=globalThis.__zod_globalRegistry;function Eo(e,t){return new e({type:"string",...y(t)})}function Tt(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...y(t)})}function Rt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...y(t)})}function ko(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...y(t)})}function So(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...y(t)})}function zo(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...y(t)})}function Oo(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...y(t)})}function jo(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...y(t)})}function xo(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...y(t)})}function Po(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...y(t)})}function Zo(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...y(t)})}function Co(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...y(t)})}function Fo(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...y(t)})}function To(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...y(t)})}function Ro(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...y(t)})}function Io(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...y(t)})}function Lo(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...y(t)})}function No(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...y(t)})}function Ao(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...y(t)})}function $o(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...y(t)})}function Do(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...y(t)})}function Uo(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...y(t)})}function Mo(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...y(t)})}function Vo(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...y(t)})}function Jo(e,t){return new e({type:"string",format:"date",check:"string_format",...y(t)})}function Wo(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...y(t)})}function Bo(e,t){return new e({type:"string",format:"duration",check:"string_format",...y(t)})}function Ko(e){return new e({type:"unknown"})}function Go(e,t){return new e({type:"never",...y(t)})}function It(e,t){return new vn({check:"max_length",...y(t),maximum:e})}function ze(e,t){return new wn({check:"min_length",...y(t),minimum:e})}function Lt(e,t){return new yn({check:"length_equals",...y(t),length:e})}function Yo(e,t){return new bn({check:"string_format",format:"regex",...y(t),pattern:e})}function Ho(e){return new En({check:"string_format",format:"lowercase",...y(e)})}function Xo(e){return new kn({check:"string_format",format:"uppercase",...y(e)})}function Qo(e,t){return new Sn({check:"string_format",format:"includes",...y(t),includes:e})}function qo(e,t){return new zn({check:"string_format",format:"starts_with",...y(t),prefix:e})}function es(e,t){return new On({check:"string_format",format:"ends_with",...y(t),suffix:e})}function ie(e){return new jn({check:"overwrite",tx:e})}function ts(e){return ie(t=>t.normalize(e))}function rs(){return ie(e=>e.trim())}function ns(){return ie(e=>e.toLowerCase())}function os(){return ie(e=>e.toUpperCase())}function ss(){return ie(e=>kr(e))}function is(e,t,r){return new e({type:"array",element:t,...y(r)})}function as(e,t,r){return new e({type:"custom",check:"custom",fn:t,...y(r)})}function cs(e){const t=us(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(de(n,r.value,t._zod.def));else{const o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(de(o))}},e(r.value,r)));return t}function us(e,t){const r=new Y({check:"custom",...y(t)});return r._zod.check=e,r}function Nt(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??fe,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function $(e,t,r={path:[],schemaPath:[]}){var n;const o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;const s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);const a=e._zod.toJSONSchema?.();if(a)s.schema=a;else{const h={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,h);else{const _=s.schema,m=t.processors[o.type];if(!m)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,_,h)}const g=e._zod.parent;g&&(s.ref||(s.ref=g),$(g,t,h),t.seen.get(g).isParent=!0)}const u=t.metadataRegistry.get(e);return u&&Object.assign(s.schema,u),t.io==="input"&&M(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function At(e,t){const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=new Map;for(const s of e.seen.entries()){const a=e.metadataRegistry.get(s[0])?.id;if(a){const u=n.get(a);if(u&&u!==s[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,s[0])}}const o=s=>{const a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const g=e.external.registry.get(s[0])?.id,_=e.external.uri??(v=>v);if(g)return{ref:_(g)};const m=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=m,{defId:m,ref:`${_("__shared")}#/${a}/${m}`}}if(s[1]===r)return{ref:"#"};const l=`#/${a}/`,h=s[1].schema.id??`__schema${e.counter++}`;return{defId:h,ref:l+h}},i=s=>{if(s[1].schema.$ref)return;const a=s[1],{ref:u,defId:l}=o(s);a.def={...a.schema},l&&(a.defId=l);const h=a.schema;for(const g in h)delete h[g];h.$ref=u};if(e.cycles==="throw")for(const s of e.seen.entries()){const a=s[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
42
+ `)}m.write("payload.value = newResult;"),m.write("return payload;");const W=m.compile();return(P,O)=>W(_,P,O)};let i;const s=me,a=!ct.jitless,l=a&&Sr.value,h=t.catchall;let g;e._zod.parse=(_,m)=>{g??(g=n.value);const v=_.value;return s(v)?a&&l&&m?.async===!1&&m.jitless!==!0?(i||(i=o(t.shape)),_=i(_,m),h?kt([],v,_,m,g,e):_):r(_,m):(_.issues.push({expected:"object",code:"invalid_type",input:v,inst:e}),_)}});function St(e,t,r,n){for(const i of e)if(i.issues.length===0)return t.value=i.value,t;const o=e.filter(i=>!se(i));return o.length===1?(t.value=o[0].value,o[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map(i=>i.issues.map(s=>re(s,n,ee())))}),t)}const io=f("$ZodUnion",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.options.some(o=>o._zod.optin==="optional")?"optional":void 0),S(e._zod,"optout",()=>t.options.some(o=>o._zod.optout==="optional")?"optional":void 0),S(e._zod,"values",()=>{if(t.options.every(o=>o._zod.values))return new Set(t.options.flatMap(o=>Array.from(o._zod.values)))}),S(e._zod,"pattern",()=>{if(t.options.every(o=>o._zod.pattern)){const o=t.options.map(i=>i._zod.pattern);return new RegExp(`^(${o.map(i=>Ie(i.source)).join("|")})$`)}});const r=t.options.length===1,n=t.options[0]._zod.run;e._zod.parse=(o,i)=>{if(r)return n(o,i);let s=!1;const a=[];for(const u of t.options){const l=u._zod.run({value:o.value,issues:[]},i);if(l instanceof Promise)a.push(l),s=!0;else{if(l.issues.length===0)return l;a.push(l)}}return s?Promise.all(a).then(u=>St(u,o,e,i)):St(a,o,e,i)}}),ao=f("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{const o=r.value,i=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);return i instanceof Promise||s instanceof Promise?Promise.all([i,s]).then(([u,l])=>zt(r,u,l)):zt(r,i,s)}});function $e(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(le(e)&&le(t)){const r=Object.keys(t),n=Object.keys(e).filter(i=>r.indexOf(i)!==-1),o={...e,...t};for(const i of n){const s=$e(e[i],t[i]);if(!s.valid)return{valid:!1,mergeErrorPath:[i,...s.mergeErrorPath]};o[i]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const r=[];for(let n=0;n<e.length;n++){const o=e[n],i=t[n],s=$e(o,i);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function zt(e,t,r){const n=new Map;let o;for(const a of t.issues)if(a.code==="unrecognized_keys"){o??(o=a);for(const u of a.keys)n.has(u)||n.set(u,{}),n.get(u).l=!0}else e.issues.push(a);for(const a of r.issues)if(a.code==="unrecognized_keys")for(const u of a.keys)n.has(u)||n.set(u,{}),n.get(u).r=!0;else e.issues.push(a);const i=[...n].filter(([,a])=>a.l&&a.r).map(([a])=>a);if(i.length&&o&&e.issues.push({...o,keys:i}),se(e))return e;const s=$e(t.value,r.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const co=f("$ZodEnum",(e,t)=>{F.init(e,t);const r=ut(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter(o=>zr.has(typeof o)).map(o=>typeof o=="string"?he(o):o.toString()).join("|")})$`),e._zod.parse=(o,i)=>{const s=o.value;return n.has(s)||o.issues.push({code:"invalid_value",values:r,input:s,inst:e}),o}}),uo=f("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new at(e.constructor.name);const o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(s=>(r.value=s,r));if(o instanceof Promise)throw new oe;return r.value=o,r}});function Ot(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const jt=f("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",S(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),S(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ie(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Ot(i,r.value)):Ot(o,r.value)}return r.value===void 0?r:t.innerType._zod.run(r,n)}}),lo=f("$ZodExactOptional",(e,t)=>{jt.init(e,t),S(e._zod,"values",()=>t.innerType._zod.values),S(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),fo=f("$ZodNullable",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.innerType._zod.optin),S(e._zod,"optout",()=>t.innerType._zod.optout),S(e._zod,"pattern",()=>{const r=t.innerType._zod.pattern;return r?new RegExp(`^(${Ie(r.source)}|null)$`):void 0}),S(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>r.value===null?r:t.innerType._zod.run(r,n)}),po=f("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>xt(i,t)):xt(o,t)}});function xt(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const mo=f("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>(n.direction==="backward"||r.value===void 0&&(r.value=t.defaultValue),t.innerType._zod.run(r,n))}),ho=f("$ZodNonOptional",(e,t)=>{F.init(e,t),S(e._zod,"values",()=>{const r=t.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>Pt(i,e)):Pt(o,e)}});function Pt(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const go=f("$ZodCatch",(e,t)=>{F.init(e,t),S(e._zod,"optin",()=>t.innerType._zod.optin),S(e._zod,"optout",()=>t.innerType._zod.optout),S(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(i=>(r.value=i.value,i.issues.length&&(r.value=t.catchValue({...r,error:{issues:i.issues.map(s=>re(s,n,ee()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=t.catchValue({...r,error:{issues:o.issues.map(i=>re(i,n,ee()))},input:r.value}),r.issues=[]),r)}}),_o=f("$ZodPipe",(e,t)=>{F.init(e,t),S(e._zod,"values",()=>t.in._zod.values),S(e._zod,"optin",()=>t.in._zod.optin),S(e._zod,"optout",()=>t.out._zod.optout),S(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){const i=t.out._zod.run(r,n);return i instanceof Promise?i.then(s=>Se(s,t.in,n)):Se(i,t.in,n)}const o=t.in._zod.run(r,n);return o instanceof Promise?o.then(i=>Se(i,t.out,n)):Se(o,t.out,n)}});function Se(e,t,r){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},r)}const vo=f("$ZodReadonly",(e,t)=>{F.init(e,t),S(e._zod,"propValues",()=>t.innerType._zod.propValues),S(e._zod,"values",()=>t.innerType._zod.values),S(e._zod,"optin",()=>t.innerType?._zod?.optin),S(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);const o=t.innerType._zod.run(r,n);return o instanceof Promise?o.then(Zt):Zt(o)}});function Zt(e){return e.value=Object.freeze(e.value),e}const wo=f("$ZodCustom",(e,t)=>{Y.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=r=>{const n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then(i=>Ct(i,r,n,e));Ct(o,r,n,e)}});function Ct(e,t,r,n){if(!e){const o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),t.issues.push(de(o))}}var Ft;class yo{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...r){const n=r[0];return this._map.set(t,n),n&&typeof n=="object"&&"id"in n&&this._idmap.set(n.id,t),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){const r=this._map.get(t);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(t),this}get(t){const r=t._zod.parent;if(r){const n={...this.get(r)??{}};delete n.id;const o={...n,...this._map.get(t)};return Object.keys(o).length?o:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function bo(){return new yo}(Ft=globalThis).__zod_globalRegistry??(Ft.__zod_globalRegistry=bo());const fe=globalThis.__zod_globalRegistry;function Eo(e,t){return new e({type:"string",...y(t)})}function Tt(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...y(t)})}function Rt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...y(t)})}function ko(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...y(t)})}function So(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...y(t)})}function zo(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...y(t)})}function Oo(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...y(t)})}function jo(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...y(t)})}function xo(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...y(t)})}function Po(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...y(t)})}function Zo(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...y(t)})}function Co(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...y(t)})}function Fo(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...y(t)})}function To(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...y(t)})}function Ro(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...y(t)})}function Io(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...y(t)})}function Lo(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...y(t)})}function No(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...y(t)})}function Ao(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...y(t)})}function $o(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...y(t)})}function Do(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...y(t)})}function Uo(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...y(t)})}function Mo(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...y(t)})}function Vo(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...y(t)})}function Jo(e,t){return new e({type:"string",format:"date",check:"string_format",...y(t)})}function Wo(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...y(t)})}function Bo(e,t){return new e({type:"string",format:"duration",check:"string_format",...y(t)})}function Ko(e){return new e({type:"unknown"})}function Go(e,t){return new e({type:"never",...y(t)})}function It(e,t){return new vn({check:"max_length",...y(t),maximum:e})}function ze(e,t){return new wn({check:"min_length",...y(t),minimum:e})}function Lt(e,t){return new yn({check:"length_equals",...y(t),length:e})}function Yo(e,t){return new bn({check:"string_format",format:"regex",...y(t),pattern:e})}function Ho(e){return new En({check:"string_format",format:"lowercase",...y(e)})}function Xo(e){return new kn({check:"string_format",format:"uppercase",...y(e)})}function Qo(e,t){return new Sn({check:"string_format",format:"includes",...y(t),includes:e})}function qo(e,t){return new zn({check:"string_format",format:"starts_with",...y(t),prefix:e})}function es(e,t){return new On({check:"string_format",format:"ends_with",...y(t),suffix:e})}function ie(e){return new jn({check:"overwrite",tx:e})}function ts(e){return ie(t=>t.normalize(e))}function rs(){return ie(e=>e.trim())}function ns(){return ie(e=>e.toLowerCase())}function os(){return ie(e=>e.toUpperCase())}function ss(){return ie(e=>kr(e))}function is(e,t,r){return new e({type:"array",element:t,...y(r)})}function as(e,t,r){return new e({type:"custom",check:"custom",fn:t,...y(r)})}function cs(e){const t=us(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(de(n,r.value,t._zod.def));else{const o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=t),o.continue??(o.continue=!t._zod.def.abort),r.issues.push(de(o))}},e(r.value,r)));return t}function us(e,t){const r=new Y({check:"custom",...y(t)});return r._zod.check=e,r}function Nt(e){let t=e?.target??"draft-2020-12";return t==="draft-4"&&(t="draft-04"),t==="draft-7"&&(t="draft-07"),{processors:e.processors??{},metadataRegistry:e?.metadata??fe,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function $(e,t,r={path:[],schemaPath:[]}){var n;const o=e._zod.def,i=t.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;const s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);const a=e._zod.toJSONSchema?.();if(a)s.schema=a;else{const h={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,h);else{const _=s.schema,m=t.processors[o.type];if(!m)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,_,h)}const g=e._zod.parent;g&&(s.ref||(s.ref=g),$(g,t,h),t.seen.get(g).isParent=!0)}const u=t.metadataRegistry.get(e);return u&&Object.assign(s.schema,u),t.io==="input"&&M(e)&&(delete s.schema.examples,delete s.schema.default),t.io==="input"&&s.schema._prefault&&((n=s.schema).default??(n.default=s.schema._prefault)),delete s.schema._prefault,t.seen.get(e).schema}function At(e,t){const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=new Map;for(const s of e.seen.entries()){const a=e.metadataRegistry.get(s[0])?.id;if(a){const u=n.get(a);if(u&&u!==s[0])throw new Error(`Duplicate schema id "${a}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(a,s[0])}}const o=s=>{const a=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){const g=e.external.registry.get(s[0])?.id,_=e.external.uri??(v=>v);if(g)return{ref:_(g)};const m=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=m,{defId:m,ref:`${_("__shared")}#/${a}/${m}`}}if(s[1]===r)return{ref:"#"};const l=`#/${a}/`,h=s[1].schema.id??`__schema${e.counter++}`;return{defId:h,ref:l+h}},i=s=>{if(s[1].schema.$ref)return;const a=s[1],{ref:u,defId:l}=o(s);a.def={...a.schema},l&&(a.defId=l);const h=a.schema;for(const g in h)delete h[g];h.$ref=u};if(e.cycles==="throw")for(const s of e.seen.entries()){const a=s[1];if(a.cycle)throw new Error(`Cycle detected: #/${a.cycle?.join("/")}/<root>
43
43
 
44
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const s of e.seen.entries()){const a=s[1];if(t===s[0]){i(s);continue}if(e.external){const l=e.external.registry.get(s[0])?.id;if(t!==s[0]&&l){i(s);continue}}if(e.metadataRegistry.get(s[0])?.id){i(s);continue}if(a.cycle){i(s);continue}if(a.count>1&&e.reused==="ref"){i(s);continue}}}function $t(e,t){const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=s=>{const a=e.seen.get(s);if(a.ref===null)return;const u=a.def??a.schema,l={...u},h=a.ref;if(a.ref=null,h){n(h);const _=e.seen.get(h),m=_.schema;if(m.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(m)):Object.assign(u,m),Object.assign(u,l),s._zod.parent===h)for(const w in u)w==="$ref"||w==="allOf"||w in l||delete u[w];if(m.$ref&&_.def)for(const w in u)w==="$ref"||w==="allOf"||w in _.def&&JSON.stringify(u[w])===JSON.stringify(_.def[w])&&delete u[w]}const g=s._zod.parent;if(g&&g!==h){n(g);const _=e.seen.get(g);if(_?.schema.$ref&&(u.$ref=_.schema.$ref,_.def))for(const m in u)m==="$ref"||m==="allOf"||m in _.def&&JSON.stringify(u[m])===JSON.stringify(_.def[m])&&delete u[m]}e.override({zodSchema:s,jsonSchema:u,path:a.path??[]})};for(const s of[...e.seen.entries()].reverse())n(s[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const s=e.external.registry.get(t)?.id;if(!s)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(s)}Object.assign(o,r.def??r.schema);const i=e.external?.defs??{};for(const s of e.seen.entries()){const a=s[1];a.def&&a.defId&&(i[a.defId]=a.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{const s=JSON.parse(JSON.stringify(o));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:Oe(t,"input",e.processors),output:Oe(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function M(e,t){const r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return M(n.element,r);if(n.type==="set")return M(n.valueType,r);if(n.type==="lazy")return M(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return M(n.innerType,r);if(n.type==="intersection")return M(n.left,r)||M(n.right,r);if(n.type==="record"||n.type==="map")return M(n.keyType,r)||M(n.valueType,r);if(n.type==="pipe")return M(n.in,r)||M(n.out,r);if(n.type==="object"){for(const o in n.shape)if(M(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(const o of n.options)if(M(o,r))return!0;return!1}if(n.type==="tuple"){for(const o of n.items)if(M(o,r))return!0;return!!(n.rest&&M(n.rest,r))}return!1}const ls=(e,t={})=>r=>{const n=Nt({...r,processors:t});return $(e,n),At(n,e),$t(n,e)},Oe=(e,t,r={})=>n=>{const{libraryOptions:o,target:i}=n??{},s=Nt({...o??{},target:i,io:t,processors:r});return $(e,s),At(s,e),$t(s,e)},ds={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},fs=(e,t,r,n)=>{const o=r;o.type="string";const{minimum:i,maximum:s,format:a,patterns:u,contentEncoding:l}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof s=="number"&&(o.maxLength=s),a&&(o.format=ds[a]??a,o.format===""&&delete o.format,a==="time"&&delete o.format),l&&(o.contentEncoding=l),u&&u.size>0){const h=[...u];h.length===1?o.pattern=h[0].source:h.length>1&&(o.allOf=[...h.map(g=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:g.source}))])}},ps=(e,t,r,n)=>{r.not={}},ms=(e,t,r,n)=>{},hs=(e,t,r,n)=>{const o=e._zod.def,i=ut(o.entries);i.every(s=>typeof s=="number")&&(r.type="number"),i.every(s=>typeof s=="string")&&(r.type="string"),r.enum=i},gs=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},_s=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},vs=(e,t,r,n)=>{const o=r,i=e._zod.def,{minimum:s,maximum:a}=e._zod.bag;typeof s=="number"&&(o.minItems=s),typeof a=="number"&&(o.maxItems=a),o.type="array",o.items=$(i.element,t,{...n,path:[...n.path,"items"]})},ws=(e,t,r,n)=>{const o=r,i=e._zod.def;o.type="object",o.properties={};const s=i.shape;for(const l in s)o.properties[l]=$(s[l],t,{...n,path:[...n.path,"properties",l]});const a=new Set(Object.keys(s)),u=new Set([...a].filter(l=>{const h=i.shape[l]._zod;return t.io==="input"?h.optin===void 0:h.optout===void 0}));u.size>0&&(o.required=Array.from(u)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=$(i.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},ys=(e,t,r,n)=>{const o=e._zod.def,i=o.inclusive===!1,s=o.options.map((a,u)=>$(a,t,{...n,path:[...n.path,i?"oneOf":"anyOf",u]}));i?r.oneOf=s:r.anyOf=s},bs=(e,t,r,n)=>{const o=e._zod.def,i=$(o.left,t,{...n,path:[...n.path,"allOf",0]}),s=$(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=l=>"allOf"in l&&Object.keys(l).length===1,u=[...a(i)?i.allOf:[i],...a(s)?s.allOf:[s]];r.allOf=u},Es=(e,t,r,n)=>{const o=e._zod.def,i=$(o.innerType,t,n),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=o.innerType,r.nullable=!0):r.anyOf=[i,{type:"null"}]},ks=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType},Ss=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},zs=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},Os=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},js=(e,t,r,n)=>{const o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;$(i,t,n);const s=t.seen.get(e);s.ref=i},xs=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,r.readOnly=!0},Dt=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType};function Ut(e,t){try{var r=e()}catch(n){return t(n)}return r&&r.then?r.then(void 0,t):r}function Ps(e,t){for(var r={};e.length;){var n=e[0],o=n.code,i=n.message,s=n.path.join(".");if(!r[s])if("unionErrors"in n){var a=n.unionErrors[0].errors[0];r[s]={message:a.message,type:a.code}}else r[s]={message:i,type:o};if("unionErrors"in n&&n.unionErrors.forEach(function(h){return h.errors.forEach(function(g){return e.push(g)})}),t){var u=r[s].types,l=u&&u[n.code];r[s]=J.appendErrors(s,t,r,o,l?[].concat(l,n.message):n.message)}e.shift()}return r}function Zs(e,t){for(var r={};e.length;){var n=e[0],o=n.code,i=n.message,s=n.path.join(".");if(!r[s])if(n.code==="invalid_union"&&n.errors.length>0){var a=n.errors[0][0];r[s]={message:a.message,type:a.code}}else r[s]={message:i,type:o};if(n.code==="invalid_union"&&n.errors.forEach(function(h){return h.forEach(function(g){return e.push(g)})}),t){var u=r[s].types,l=u&&u[n.code];r[s]=J.appendErrors(s,t,r,o,l?[].concat(l,n.message):n.message)}e.shift()}return r}function De(e,t,r){if(r===void 0&&(r={}),(function(n){return"_def"in n&&typeof n._def=="object"&&"typeName"in n._def})(e))return function(n,o,i){try{return Promise.resolve(Ut(function(){return Promise.resolve(e[r.mode==="sync"?"parse":"parseAsync"](n,t)).then(function(s){return i.shouldUseNativeValidation&&Ce({},i),{errors:{},values:r.raw?Object.assign({},n):s}})},function(s){if((function(a){return Array.isArray(a?.issues)})(s))return{values:{},errors:st(Ps(s.errors,!i.shouldUseNativeValidation&&i.criteriaMode==="all"),i)};throw s}))}catch(s){return Promise.reject(s)}};if((function(n){return"_zod"in n&&typeof n._zod=="object"})(e))return function(n,o,i){try{return Promise.resolve(Ut(function(){return Promise.resolve((r.mode==="sync"?Lr:Nr)(e,n,t)).then(function(s){return i.shouldUseNativeValidation&&Ce({},i),{errors:{},values:r.raw?Object.assign({},n):s}})},function(s){if((function(a){return a instanceof Ne})(s))return{values:{},errors:st(Zs(s.issues,!i.shouldUseNativeValidation&&i.criteriaMode==="all"),i)};throw s}))}catch(s){return Promise.reject(s)}};throw new Error("Invalid input: not a Zod schema")}const Cs=f("ZodISODateTime",(e,t)=>{Un.init(e,t),x.init(e,t)});function Fs(e){return Vo(Cs,e)}const Ts=f("ZodISODate",(e,t)=>{Mn.init(e,t),x.init(e,t)});function Rs(e){return Jo(Ts,e)}const Is=f("ZodISOTime",(e,t)=>{Vn.init(e,t),x.init(e,t)});function Ls(e){return Wo(Is,e)}const Ns=f("ZodISODuration",(e,t)=>{Jn.init(e,t),x.init(e,t)});function As(e){return Bo(Ns,e)}const B=f("ZodError",(e,t)=>{Ne.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Ir(e,r)},flatten:{value:r=>Rr(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Fe,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Fe,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),$s=ve(B),Ds=we(B),Us=ye(B),Ms=be(B),Vs=Dr(B),Js=Ur(B),Ws=Mr(B),Bs=Vr(B),Ks=Jr(B),Gs=Wr(B),Ys=Br(B),Hs=Kr(B),T=f("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Oe(e,"input"),output:Oe(e,"output")}}),e.toJSONSchema=ls(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone(H(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>X(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>$s(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Us(e,r,n),e.parseAsync=async(r,n)=>Ds(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Ms(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>Vs(e,r,n),e.decode=(r,n)=>Js(e,r,n),e.encodeAsync=async(r,n)=>Ws(e,r,n),e.decodeAsync=async(r,n)=>Bs(e,r,n),e.safeEncode=(r,n)=>Ks(e,r,n),e.safeDecode=(r,n)=>Gs(e,r,n),e.safeEncodeAsync=async(r,n)=>Ys(e,r,n),e.safeDecodeAsync=async(r,n)=>Hs(e,r,n),e.refine=(r,n)=>e.check(Ui(r,n)),e.superRefine=r=>e.check(Mi(r)),e.overwrite=r=>e.check(ie(r)),e.optional=()=>Gt(e),e.exactOptional=()=>xi(e),e.nullable=()=>Yt(e),e.nullish=()=>Gt(Yt(e)),e.nonoptional=r=>Ri(e,r),e.array=()=>vi(e),e.or=r=>bi([e,r]),e.and=r=>ki(e,r),e.transform=r=>Xt(e,Oi(r)),e.default=r=>Ci(e,r),e.prefault=r=>Ti(e,r),e.catch=r=>Li(e,r),e.pipe=r=>Xt(e,r),e.readonly=()=>$i(e),e.describe=r=>{const n=e.clone();return fe.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return fe.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return fe.get(e);const n=e.clone();return fe.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),Mt=f("_ZodString",(e,t)=>{Ae.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,o,i)=>fs(e,n,o);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(Yo(...n)),e.includes=(...n)=>e.check(Qo(...n)),e.startsWith=(...n)=>e.check(qo(...n)),e.endsWith=(...n)=>e.check(es(...n)),e.min=(...n)=>e.check(ze(...n)),e.max=(...n)=>e.check(It(...n)),e.length=(...n)=>e.check(Lt(...n)),e.nonempty=(...n)=>e.check(ze(1,...n)),e.lowercase=n=>e.check(Ho(n)),e.uppercase=n=>e.check(Xo(n)),e.trim=()=>e.check(rs()),e.normalize=(...n)=>e.check(ts(...n)),e.toLowerCase=()=>e.check(ns()),e.toUpperCase=()=>e.check(os()),e.slugify=()=>e.check(ss())}),Xs=f("ZodString",(e,t)=>{Ae.init(e,t),Mt.init(e,t),e.email=r=>e.check(Tt(Vt,r)),e.url=r=>e.check(jo(Qs,r)),e.jwt=r=>e.check(Mo(pi,r)),e.emoji=r=>e.check(xo(qs,r)),e.guid=r=>e.check(Rt(Wt,r)),e.uuid=r=>e.check(ko(je,r)),e.uuidv4=r=>e.check(So(je,r)),e.uuidv6=r=>e.check(zo(je,r)),e.uuidv7=r=>e.check(Oo(je,r)),e.nanoid=r=>e.check(Po(ei,r)),e.guid=r=>e.check(Rt(Wt,r)),e.cuid=r=>e.check(Zo(ti,r)),e.cuid2=r=>e.check(Co(ri,r)),e.ulid=r=>e.check(Fo(ni,r)),e.base64=r=>e.check($o(li,r)),e.base64url=r=>e.check(Do(di,r)),e.xid=r=>e.check(To(oi,r)),e.ksuid=r=>e.check(Ro(si,r)),e.ipv4=r=>e.check(Io(ii,r)),e.ipv6=r=>e.check(Lo(ai,r)),e.cidrv4=r=>e.check(No(ci,r)),e.cidrv6=r=>e.check(Ao(ui,r)),e.e164=r=>e.check(Uo(fi,r)),e.datetime=r=>e.check(Fs(r)),e.date=r=>e.check(Rs(r)),e.time=r=>e.check(Ls(r)),e.duration=r=>e.check(As(r))});function Ue(e){return Eo(Xs,e)}const x=f("ZodStringFormat",(e,t)=>{j.init(e,t),Mt.init(e,t)}),Vt=f("ZodEmail",(e,t)=>{Fn.init(e,t),x.init(e,t)});function Jt(e){return Tt(Vt,e)}const Wt=f("ZodGUID",(e,t)=>{Zn.init(e,t),x.init(e,t)}),je=f("ZodUUID",(e,t)=>{Cn.init(e,t),x.init(e,t)}),Qs=f("ZodURL",(e,t)=>{Tn.init(e,t),x.init(e,t)}),qs=f("ZodEmoji",(e,t)=>{Rn.init(e,t),x.init(e,t)}),ei=f("ZodNanoID",(e,t)=>{In.init(e,t),x.init(e,t)}),ti=f("ZodCUID",(e,t)=>{Ln.init(e,t),x.init(e,t)}),ri=f("ZodCUID2",(e,t)=>{Nn.init(e,t),x.init(e,t)}),ni=f("ZodULID",(e,t)=>{An.init(e,t),x.init(e,t)}),oi=f("ZodXID",(e,t)=>{$n.init(e,t),x.init(e,t)}),si=f("ZodKSUID",(e,t)=>{Dn.init(e,t),x.init(e,t)}),ii=f("ZodIPv4",(e,t)=>{Wn.init(e,t),x.init(e,t)}),ai=f("ZodIPv6",(e,t)=>{Bn.init(e,t),x.init(e,t)}),ci=f("ZodCIDRv4",(e,t)=>{Kn.init(e,t),x.init(e,t)}),ui=f("ZodCIDRv6",(e,t)=>{Gn.init(e,t),x.init(e,t)}),li=f("ZodBase64",(e,t)=>{Yn.init(e,t),x.init(e,t)}),di=f("ZodBase64URL",(e,t)=>{Xn.init(e,t),x.init(e,t)}),fi=f("ZodE164",(e,t)=>{Qn.init(e,t),x.init(e,t)}),pi=f("ZodJWT",(e,t)=>{eo.init(e,t),x.init(e,t)}),mi=f("ZodUnknown",(e,t)=>{to.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ms()});function Bt(){return Ko(mi)}const hi=f("ZodNever",(e,t)=>{ro.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ps(e,r,n)});function gi(e){return Go(hi,e)}const _i=f("ZodArray",(e,t)=>{no.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>vs(e,r,n,o),e.element=t.element,e.min=(r,n)=>e.check(ze(r,n)),e.nonempty=r=>e.check(ze(1,r)),e.max=(r,n)=>e.check(It(r,n)),e.length=(r,n)=>e.check(Lt(r,n)),e.unwrap=()=>e.element});function vi(e,t){return is(_i,e,t)}const wi=f("ZodObject",(e,t)=>{so.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ws(e,r,n,o),S(e,"shape",()=>t.shape),e.keyof=()=>Si(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Bt()}),e.loose=()=>e.clone({...e._zod.def,catchall:Bt()}),e.strict=()=>e.clone({...e._zod.def,catchall:gi()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>Pr(e,r),e.safeExtend=r=>Zr(e,r),e.merge=r=>Cr(e,r),e.pick=r=>jr(e,r),e.omit=r=>xr(e,r),e.partial=(...r)=>Fr(Kt,e,r[0]),e.required=(...r)=>Tr(Ht,e,r[0])});function Me(e,t){const r={type:"object",shape:e??{},...y(t)};return new wi(r)}const yi=f("ZodUnion",(e,t)=>{io.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ys(e,r,n,o),e.options=t.options});function bi(e,t){return new yi({type:"union",options:e,...y(t)})}const Ei=f("ZodIntersection",(e,t)=>{ao.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bs(e,r,n,o)});function ki(e,t){return new Ei({type:"intersection",left:e,right:t})}const Ve=f("ZodEnum",(e,t)=>{co.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,o,i)=>hs(e,n,o),e.enum=t.entries,e.options=Object.values(t.entries);const r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{const i={};for(const s of n)if(r.has(s))i[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new Ve({...t,checks:[],...y(o),entries:i})},e.exclude=(n,o)=>{const i={...t.entries};for(const s of n)if(r.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new Ve({...t,checks:[],...y(o),entries:i})}});function Si(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Ve({type:"enum",entries:r,...y(t)})}const zi=f("ZodTransform",(e,t)=>{uo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_s(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new at(e.constructor.name);r.addIssue=i=>{if(typeof i=="string")r.issues.push(de(i,r.value,t));else{const s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(de(s))}};const o=t.transform(r.value,r);return o instanceof Promise?o.then(i=>(r.value=i,r)):(r.value=o,r)}});function Oi(e){return new zi({type:"transform",transform:e})}const Kt=f("ZodOptional",(e,t)=>{jt.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dt(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Gt(e){return new Kt({type:"optional",innerType:e})}const ji=f("ZodExactOptional",(e,t)=>{lo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dt(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xi(e){return new ji({type:"optional",innerType:e})}const Pi=f("ZodNullable",(e,t)=>{fo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Es(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Yt(e){return new Pi({type:"nullable",innerType:e})}const Zi=f("ZodDefault",(e,t)=>{po.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ss(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ci(e,t){return new Zi({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():pt(t)}})}const Fi=f("ZodPrefault",(e,t)=>{mo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zs(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ti(e,t){return new Fi({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():pt(t)}})}const Ht=f("ZodNonOptional",(e,t)=>{ho.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ks(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ri(e,t){return new Ht({type:"nonoptional",innerType:e,...y(t)})}const Ii=f("ZodCatch",(e,t)=>{go.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Os(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Li(e,t){return new Ii({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const Ni=f("ZodPipe",(e,t)=>{_o.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>js(e,r,n,o),e.in=t.in,e.out=t.out});function Xt(e,t){return new Ni({type:"pipe",in:e,out:t})}const Ai=f("ZodReadonly",(e,t)=>{vo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xs(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function $i(e){return new Ai({type:"readonly",innerType:e})}const Di=f("ZodCustom",(e,t)=>{wo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gs(e,r)});function Ui(e,t={}){return as(Di,e,t)}function Mi(e){return cs(e)}const N={notificationsErrorsMap:{"User is not enabled":"auth.loginForm.errors.notifications.userIsNotEnabled","Email not verified":"auth.loginForm.errors.notifications.emailNotVerified","Email not found":"auth.loginForm.errors.notifications.emailNotFound","Invalid password":"auth.loginForm.errors.notifications.invalidPassword","Email is already used":"auth.signUpForm.errors.notifications.emailAlreadyExists","Wrong verification code":"auth.verifyEmailForm.errors.notifications.wrongAuthCode","Start reset password failed, email not found":"auth.startResetPasswordForm.errors.notifications.emailNotFound","Confirm reset password failed, wrong code":"auth.confirmResetPasswordForm.errors.notifications.wrongAuthCode"},fieldsErrorsMap:{"User is not enabled":"email","Email not verified":"email","Email not found":"email","Invalid password":"password","Email is already used":"email","Start reset password failed, email not found":"email"},ru:{asideMenu:{title:"Управление доступом",menuItems:{users:"Пользователи",roles:"Роли",permissions:"Права доступа",sessions:"Сессии"}},confirmResetPasswordForm:{form:{title:"Подтверждение сброса пароля",description:"Введите код подтверждения, чтобы сбросить пароль.",passwordInputLabel:"Новый пароль",authCodeInputLabel:"Код подтверждения",submitButtonLabel:"Сбросить пароль",loginLinkMessage:"Вспомнили пароль?",loginLink:"Войти в систему"},success:{notifications:{confirmResetPasswordSuccess:"Пароль успешно сброшен"}},errors:{fields:{passwordToSmall:"Минимальная длина пароля - 8 символов"},notifications:{unknownError:"Не удалось сбросить пароль",unknownErrorDescription:"Пожалуйста, попробуйте еще раз или обратитесь в службу поддержки",wrongAuthCode:"Неверный код подтверждения"}}},startResetPasswordForm:{form:{title:"Сброс пароля",description:"Введите вашу почту, чтобы получить ссылку на сброс пароля.",emailLabel:"Электронная почта",submitButtonLabel:"Отправить ссылку на сброс пароля",loginLinkMessage:"Вспомнили пароль?",loginLink:"Войти в систему"},errors:{notifications:{unknownError:"Неизвестная ошибка",unknownErrorDescription:"Пожалуйста, попробуйте еще раз позже, либо обратитесь в службу поддержки",emailNotFound:"Пользователь с email {{email}} не найден"}},success:{notifications:{startResetPasswordSuccess:"Ссылка на сброс пароля отправлена на вашу почту"}}},verifyEmailForm:{form:{title:"Подтверждение почты",submitButtonLabel:"Подтвердить",codeLabel:"Код подтверждения",verifyEmailDescription:"Введите код подтверждения, отправленный на вашу почту.",loginLinkMessage:"Почта уже подтверждена?",loginLink:"Войти"},success:{notifications:{verifyEmailSuccess:"Почта успешно подтверждена"}},errors:{notifications:{wrongAuthCode:"Неверный код подтверждения",unknownError:"Неизвестная ошибка",unknownErrorDescription:"Пожалуйста, попробуйте еще раз, либо обратитесь в службу поддержки"}}},loginForm:{form:{title:"Вход",description:"Введите данные для входа",emailLabel:"Email",passwordLabel:"Пароль",forgotPasswordMessage:"Забыли пароль?",submitButtonLabel:"Войти",dontHaveAccountMessage:"Нет аккаунта?",dontHaveAccountLink:"Зарегистрироваться"},errors:{notifications:{emailNotFound:"Пользователь с email {{email}} не найден",userIsNotEnabled:"Пользователь не активирован",emailNotVerified:"Почта не подтверждена",invalidPassword:"Неверный пароль",unknownError:"Не удалось войти в систему",unknownErrorDescription:"Попробуйте войти позже, либо обратитесь в службу поддержки"}},success:{notifications:{loginSuccess:"Вы успешно вошли в систему"}}},signUpForm:{form:{title:"Регистрация",description:"Введите данные для регистрации",emailLabel:"Email",passwordLabel:"Пароль",submitButtonLabel:"Зарегистрироваться",forgotPasswordMessage:"Забыли пароль?",loginLinkMessage:"Уже есть аккаунт?",loginLink:"Войти"},errors:{notifications:{unknownError:"Ошибка регистрации",unknownErrorDescription:"Пожалуйста, попробуйте еще раз или обратитесь к администратору",emailAlreadyExists:"Пользователь с email {{email}} уже существует"},fields:{passwordToSmall:"Минимальная длина пароля - 8 символов"}},success:{notifications:{signUpSuccess:"Вы успешно зарегистрированы"}}}},en:{asideMenu:{title:"Access Management",menuItems:{users:"Users",roles:"Roles",permissions:"Permissions",sessions:"Sessions"}},confirmResetPasswordForm:{form:{title:"Confirm password reset",description:"Enter your new password to confirm the reset.",submitButtonLabel:"Confirm reset",passwordInputLabel:"New password",authCodeInputLabel:"Auth code",confirmPasswordLabel:"Confirm new password",loginLinkMessage:"Already have an account?",loginLink:"Login"},success:{notifications:{confirmResetPasswordSuccess:"Password reset confirmed"}},errors:{fields:{passwordToSmall:"Minimum password length is 8 characters"},notifications:{wrongAuthCode:"Wrong auth code",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},startResetPasswordForm:{form:{title:"Start password reset",description:"Enter your email to receive a password reset link.",submitButtonLabel:"Send reset link",emailLabel:"Email",resetPasswordDescription:"Enter your email to receive a password reset link.",loginLinkMessage:"Already have an account?",loginLink:"Login"},success:{notifications:{startResetPasswordSuccess:"Reset link sent successfully"}},errors:{notifications:{emailNotFound:"User with email {{email}} not found",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},verifyEmailForm:{form:{title:"Verify email",submitButtonLabel:"Verify",codeLabel:"Verification code",verifyEmailDescription:"Enter the verification code sent to your email.",loginLinkMessage:"Email already verified?",loginLink:"Login"},success:{notifications:{verifyEmailSuccess:"Email successfully verified"}},errors:{notifications:{wrongAuthCode:"Wrong verification code",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},loginForm:{form:{title:"Login",description:"Enter your login details",emailLabel:"Email",passwordLabel:"Password",forgotPasswordMessage:"Forgot password?",submitButtonLabel:"Login",dontHaveAccountMessage:"Don't have an account?",dontHaveAccountLink:"Register"},errors:{notifications:{emailNotFound:"User with email {{email}} not found",userIsNotEnabled:"User is not enabled",emailNotVerified:"Email not verified",invalidPassword:"Invalid password",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}},success:{notifications:{loginSuccess:"You have successfully logged in"}}},signUpForm:{form:{title:"Registration",description:"Enter your registration details",emailLabel:"Email",passwordLabel:"Password",submitButtonLabel:"Register",forgotPasswordMessage:"Forgot password?",loginLinkMessage:"Already have an account?",loginLink:"Login"},errors:{notifications:{unknownError:"Signup failed",unknownErrorDescription:"Please try again or contact the administrator",emailAlreadyExists:"User with email {{email}} already exists"}},success:{notifications:{signUpSuccess:"You have successfully registered"}}}}},Q=b.createContext({}),Qt=()=>{const{i18n:e}=b.useContext(G.LocaleContext),{auth:t}=b.useContext(Q),r=b.useMemo(()=>Me({code:Ue(),password:Ue().min(8,{message:e.t("auth.confirmResetPasswordForm.errors.fields.passwordToSmall")})}),[]),n=J.useForm({resolver:De(r),defaultValues:{code:"",password:""}}),o=V.useNavigate();return{submit:b.useCallback(s=>{t.confirmResetPassword(s).then(()=>{d.toast.success(e.t("auth.confirmResetPasswordForm.success.notifications.confirmResetPasswordSuccess")),o({to:"/"})}).catch(a=>{if(a.status===400){const u=a.response.data.detail;if(N.fieldsErrorsMap[u]&&n.setError(N.fieldsErrorsMap[u],{}),N.notificationsErrorsMap[u]){const l=N.notificationsErrorsMap[u];d.toast.error(e.t(l,s));return}d.toast.error(e.t("auth.confirmResetPasswordForm.errors.notifications.unknownError"),{description:e.t("auth.confirmResetPasswordForm.errors.notifications.unknownErrorDescription")})}})},[]),form:n}};function Vi(){const[e,t]=b.useState(!1),{form:r,submit:n}=Qt(),{i18n:o}=b.useContext(G.LocaleContext);return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:o.t("auth.confirmResetPasswordForm.form.title")}),c.jsx(d.CardDescription,{children:o.t("auth.confirmResetPasswordForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...r,children:c.jsx("form",{onSubmit:r.handleSubmit(n),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:o.t("auth.confirmResetPasswordForm.form.authCodeInputLabel")}),c.jsx(d.FormField,{control:r.control,name:"code",render:({field:i})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{type:"text",placeholder:"00001234","data-testid":U.confirmResetPasswordForm.authCodeInput,required:!0,...i})})})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsx("div",{className:"flex items-center",children:c.jsx(d.Label,{children:o.t("auth.confirmResetPasswordForm.form.passwordInputLabel")})}),c.jsx(d.FormField,{control:r.control,name:"password",render:({field:i,fieldState:s})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{className:"relative",children:c.jsxs("div",{className:"form-control-wrapper",children:[c.jsxs("div",{className:"relative",children:[e?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!0)}}),c.jsx(d.Input,{disabled:r.formState.isSubmitting,type:e?"text":"password",placeholder:"********","aria-invalid":!!r.formState.errors?.password,"data-testid":U.confirmResetPasswordForm.newPasswordInput,...i,className:"pr-10"})]}),s.invalid&&c.jsx(d.FieldError,{errors:[s.error]})]})})})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer","data-testid":U.confirmResetPasswordForm.submitButton,children:[o.t("auth.confirmResetPasswordForm.form.submitButtonLabel"),r.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[o.t("auth.confirmResetPasswordForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:o.t("auth.confirmResetPasswordForm.form.loginLink")})]})]})})})})]})})}const qt=()=>{const e=V.useNavigate(),{auth:t}=b.useContext(Q),{i18n:r}=b.useContext(G.LocaleContext),n=J.useForm({defaultValues:{email:"",password:""}}),o=b.useCallback(i=>t.login(i).then(()=>{e({to:"/"}),d.toast.success(r.t("auth.loginForm.success.notifications.loginSuccess"))}).catch(s=>{if(s.status===400&&(N.fieldsErrorsMap[s.response.data.detail]&&n.setError(N.fieldsErrorsMap[s.response.data.detail],{}),N.notificationsErrorsMap[s.response.data.detail])){d.toast.error(r.t(N.notificationsErrorsMap[s.response.data.detail],i));return}d.toast.error(r.t("auth.loginForm.errors.notifications.unknownError"),{description:r.t("auth.loginForm.errors.notifications.unknownErrorDescription")})}),[t.login,r,n.setError,e]);return{form:n,submit:o}};function Ji(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=qt(),[n,o]=b.useState(!1);return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn("transition-opacity",{"opacity-50":t.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.loginForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.loginForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{htmlFor:"email",children:e.t("auth.loginForm.form.emailLabel")}),c.jsx(d.FormField,{control:t.control,name:"email",render:({field:i})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:t.formState.isSubmitting,type:"email",placeholder:"m@example.com",required:!0,"data-testid":U.loginForm.emailInput,...i})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsxs("div",{className:"flex items-center",children:[c.jsx(d.Label,{htmlFor:"password",children:e.t("auth.loginForm.form.passwordLabel")}),c.jsx(V.Link,{to:"/auth/start-reset-password",className:"ml-auto inline-block text-sm underline-offset-4 hover:underline","data-testid":U.loginForm.resetPasswordLink,children:e.t("auth.loginForm.form.forgotPasswordMessage")})]}),c.jsx(d.FormField,{control:t.control,name:"password",render:({field:i})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{className:"relative",children:c.jsxs("div",{className:"relative",children:[n?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{o(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{o(!0)}}),c.jsx(d.Input,{placeholder:"********",disabled:t.formState.isSubmitting,"data-testid":U.loginForm.passwordInput,...i,className:"pr-10","aria-invalid":!!t.formState.errors?.password,type:n?"text":"password"})]})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:t.formState.isSubmitting,"data-testid":U.loginForm.submitButton,children:[e.t("auth.loginForm.form.submitButtonLabel"),t.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.loginForm.form.dontHaveAccountMessage")," ",c.jsx(V.Link,{to:"/auth/signup","data-testid":U.loginForm.signUpFormLink,children:e.t("auth.loginForm.form.dontHaveAccountLink")})]})]})})})})]})})}const er=()=>{const{i18n:e}=b.useContext(G.LocaleContext),{auth:t}=b.useContext(Q),r=b.useMemo(()=>Me({email:Jt(),password:Ue().min(8,{message:e.t("auth.signUpForm.errors.fields.passwordToSmall")})}),[e]),n=J.useForm({resolver:De(r),defaultValues:{email:"",password:""}}),o=V.useNavigate();return{submit:b.useCallback(s=>{t.signup(s).then(()=>{o({to:"/auth/verify-email"}).then(()=>{d.toast.success(e.t("auth.signUpForm.success.notifications.signUpSuccess"))})}).catch(a=>{if(a.status===400){N.fieldsErrorsMap[a.response.data.detail]&&n.setError(N.fieldsErrorsMap[a.response.data.detail],{});const u=a.response.data.detail;if(N.notificationsErrorsMap[u]){const l=N.notificationsErrorsMap[u];d.toast.error(e.t(l,s))}return}d.toast.error(e.t("auth.signUpForm.errors.notifications.unknownError"),{description:e.t("auth.signUpForm.errors.notifications.unknownErrorDescription")})})},[n.setError,o]),form:n}};function Wi(){const[e,t]=b.useState(!1),{i18n:r}=b.useContext(G.LocaleContext),{form:n,submit:o}=er();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn({"opacity-50":n.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:r.t("auth.signUpForm.form.title")}),c.jsx(d.CardDescription,{children:r.t("auth.signUpForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...n,children:c.jsx("form",{onSubmit:n.handleSubmit(o),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:r.t("auth.signUpForm.form.emailLabel")}),c.jsx(d.FormField,{control:n.control,name:"email",render:({field:i})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:n.formState.isSubmitting,type:"email","data-testid":U.signupForm.emailInput,placeholder:"m@example.com",required:!0,...i})})})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsxs("div",{className:"flex items-center",children:[c.jsx(d.Label,{children:r.t("auth.signUpForm.form.passwordLabel")}),c.jsx(V.Link,{to:"/auth/start-reset-password",className:"ml-auto inline-block text-sm underline-offset-4 hover:underline",children:r.t("auth.signUpForm.form.forgotPasswordMessage")})]}),c.jsx(d.FormField,{control:n.control,name:"password",render:({field:i,fieldState:s})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{className:"relative",children:c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"relative",children:[e?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!0)}}),c.jsx(d.Input,{disabled:n.formState.isSubmitting,type:e?"text":"password",placeholder:"********","aria-invalid":!!n.formState.errors?.password,"data-testid":U.signupForm.passwordInput,...i,className:"pr-10"})]}),s.invalid&&c.jsx(d.FieldError,{errors:[s.error]})]})})})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:n.formState.isSubmitting,"data-testid":U.signupForm.submitButton,children:[r.t("auth.signUpForm.form.submitButtonLabel"),n.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[r.t("auth.signUpForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:r.t("auth.signUpForm.form.loginLink")})]})]})})})})]})})}const tr=()=>{const e=V.useNavigate(),{i18n:t}=b.useContext(G.LocaleContext),{auth:r}=b.useContext(Q),n=b.useMemo(()=>Me({email:Jt()}),[]),o=J.useForm({resolver:De(n),defaultValues:{email:""}}),i=b.useCallback(s=>{r.startResetPassword(s).then(()=>{d.toast.success(t.t("auth.startResetPasswordForm.success.notifications.startResetPasswordSuccess")),e({to:"/auth/confirm-reset-password"})}).catch(a=>{if(a.status===400&&(N.fieldsErrorsMap[a.response.data.detail]&&o.setError(N.fieldsErrorsMap[a.response.data.detail],{}),N.notificationsErrorsMap[a.response.data.detail])){d.toast.error(t.t(N.notificationsErrorsMap[a.response.data.detail],s));return}d.toast.error(t.t("auth.startResetPasswordForm.errors.notifications.unknownError"),{description:t.t("auth.startResetPasswordForm.errors.notifications.unknownErrorDescription")})})},[t,r,o.setError,e]);return{form:o,submit:i}};function Bi(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=tr();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn("transition-opacity",{"opacity-50":t.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.startResetPasswordForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.startResetPasswordForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{htmlFor:"email",children:e.t("auth.startResetPasswordForm.form.emailLabel")}),c.jsx(d.FormField,{control:t.control,name:"email",render:({field:n})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:t.formState.isSubmitting,type:"email",placeholder:"m@example.com",required:!0,"data-testid":U.startResetPasswordForm.emailInput,...n})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:t.formState.isSubmitting,"data-testid":U.startResetPasswordForm.submitButton,children:[e.t("auth.startResetPasswordForm.form.submitButtonLabel"),t.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.startResetPasswordForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:e.t("auth.startResetPasswordForm.form.loginLink")})]})]})})})})]})})}const rr=()=>{const e=J.useForm({defaultValues:{code:""}}),{auth:t}=b.useContext(Q),{i18n:r}=b.useContext(G.LocaleContext),n=V.useNavigate();return{submit:b.useCallback(i=>{t.verifyEmail(i).then(()=>{n({to:"/"}).then(()=>{d.toast.success(r.t("auth.verifyEmailForm.success.notifications.verifyEmailSuccess"))})}).catch(s=>{if(s.status===400){const a=s.response.data.detail,u=N.notificationsErrorsMap[a];if(u){d.toast.error(r.t(u));return}}d.toast.error(r.t("auth.verifyEmailForm.errors.notifications.unknownError"),{description:r.t("auth.verifyEmailForm.errors.notifications.unknownErrorDescription")})})},[r,t.verifyEmail,n]),form:e}};function Ki(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=rr();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.verifyEmailForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.verifyEmailForm.form.verifyEmailDescription")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:e.t("auth.verifyEmailForm.form.codeLabel")}),c.jsx(d.FormField,{control:t.control,name:"code",render:({field:n})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{type:"text",placeholder:"00001234","data-testid":U.verifyEmailForm.authCodeInput,required:!0,...n})})})})]}),c.jsx(d.Button,{type:"submit",className:"w-full cursor-pointer","data-testid":U.verifyEmailForm.submitButton,children:e.t("auth.verifyEmailForm.form.submitButtonLabel")}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.verifyEmailForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:e.t("auth.verifyEmailForm.form.loginLink")})]})]})})})})]})})}const Je="Authorization",nr=()=>({user:{id:null,email:null,roles:[],is_enabled:!1,is_email_verified:!1},sessionID:null,isAuthenticated:!1,isLoaded:!1}),re=new et.Store(nr()),Gi=new et.Derived({fn:()=>!!re.state.user?.roles.find(e=>e.name==="admin"),deps:[re]});class Yi{accountStore;httpClient;constructor(t){this.httpClient=t,this.accountStore=re}initAuthData=()=>{const t=localStorage.getItem("token");t&&(this.httpClient.defaults.headers.common[Je]=t)};load=async()=>{try{const{data:t}=await this.httpClient.get("/api/auth/account/me");re.setState(()=>({user:t.user,sessionID:t.session_id,isAuthenticated:!0,isLoaded:!0}))}catch{re.setState(t=>({...t,isLoaded:!0}))}};login=async t=>{const r=await this.httpClient.post("/api/auth/account/login",t),{user:n,token:o,session_id:i}=r.data;return this._initUserData({user:n,token:o,sessionID:i}),n};signup=async t=>this.httpClient.post("/api/auth/account/signup",t);verifyEmail=async t=>{const r=await this.httpClient.post("/api/auth/account/verify-email",t);this._initUserData(r.data)};logout=()=>{re.setState(()=>({...nr(),isLoaded:!0})),this._clearAuthData()};startResetPassword=t=>this.httpClient.post("/api/auth/account/start-reset-password",t);confirmResetPassword=async t=>{const r=await this.httpClient.post("/api/auth/account/confirm-reset-password",t);this._initUserData(r.data)};_initUserData=({user:t,token:r,sessionID:n})=>{this._setAuthData(r),re.setState(()=>({user:t,isAuthenticated:!0,isLoaded:!0,sessionID:n}))};_setAuthData=t=>{localStorage.setItem("token",t),window.cookieStore.set("token",t),this.httpClient.defaults.headers.common[Je]=t};_clearAuthData=()=>{localStorage.removeItem("token"),window.cookieStore.delete("token"),delete this.httpClient.defaults.headers.common[Je]}}var xe={exports:{}},We={},Pe={exports:{}},Be={};var or;function Hi(){if(or)return Be;or=1;var e=b;function t(g,_){return g===_&&(g!==0||1/g===1/_)||g!==g&&_!==_}var r=typeof Object.is=="function"?Object.is:t,n=e.useState,o=e.useEffect,i=e.useLayoutEffect,s=e.useDebugValue;function a(g,_){var m=_(),v=n({inst:{value:m,getSnapshot:_}}),w=v[0].inst,z=v[1];return i(function(){w.value=m,w.getSnapshot=_,u(w)&&z({inst:w})},[g,m,_]),o(function(){return u(w)&&z({inst:w}),g(function(){u(w)&&z({inst:w})})},[g]),s(m),m}function u(g){var _=g.getSnapshot;g=g.value;try{var m=_();return!r(g,m)}catch{return!0}}function l(g,_){return _()}var h=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?l:a;return Be.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:h,Be}var Ke={};var sr;function Xi(){return sr||(sr=1,process.env.NODE_ENV!=="production"&&(function(){function e(m,v){return m===v&&(m!==0||1/m===1/v)||m!==m&&v!==v}function t(m,v){h||o.startTransition===void 0||(h=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var w=v();if(!g){var z=v();i(w,z)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),g=!0)}z=s({inst:{value:w,getSnapshot:v}});var A=z[0].inst,W=z[1];return u(function(){A.value=w,A.getSnapshot=v,r(A)&&W({inst:A})},[m,w,v]),a(function(){return r(A)&&W({inst:A}),m(function(){r(A)&&W({inst:A})})},[m]),l(w),w}function r(m){var v=m.getSnapshot;m=m.value;try{var w=v();return!i(m,w)}catch{return!0}}function n(m,v){return v()}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var o=b,i=typeof Object.is=="function"?Object.is:e,s=o.useState,a=o.useEffect,u=o.useLayoutEffect,l=o.useDebugValue,h=!1,g=!1,_=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?n:t;Ke.useSyncExternalStore=o.useSyncExternalStore!==void 0?o.useSyncExternalStore:_,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ke}var ir;function ar(){return ir||(ir=1,process.env.NODE_ENV==="production"?Pe.exports=Hi():Pe.exports=Xi()),Pe.exports}var cr;function Qi(){if(cr)return We;cr=1;var e=b,t=ar();function r(l,h){return l===h&&(l!==0||1/l===1/h)||l!==l&&h!==h}var n=typeof Object.is=="function"?Object.is:r,o=t.useSyncExternalStore,i=e.useRef,s=e.useEffect,a=e.useMemo,u=e.useDebugValue;return We.useSyncExternalStoreWithSelector=function(l,h,g,_,m){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=a(function(){function A(Z){if(!W){if(W=!0,P=Z,Z=_(Z),m!==void 0&&w.hasValue){var D=w.value;if(m(D,Z))return O=D}return O=Z}if(D=O,n(P,Z))return D;var ne=_(Z);return m!==void 0&&m(D,ne)?(P=Z,D):(P=Z,O=ne)}var W=!1,P,O,R=g===void 0?null:g;return[function(){return A(h())},R===null?void 0:function(){return A(R())}]},[h,g,_,m]);var z=o(l,v[0],v[1]);return s(function(){w.hasValue=!0,w.value=z},[z]),u(z),z},We}var Ge={};var ur;function qi(){return ur||(ur=1,process.env.NODE_ENV!=="production"&&(function(){function e(l,h){return l===h&&(l!==0||1/l===1/h)||l!==l&&h!==h}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=b,r=ar(),n=typeof Object.is=="function"?Object.is:e,o=r.useSyncExternalStore,i=t.useRef,s=t.useEffect,a=t.useMemo,u=t.useDebugValue;Ge.useSyncExternalStoreWithSelector=function(l,h,g,_,m){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=a(function(){function A(Z){if(!W){if(W=!0,P=Z,Z=_(Z),m!==void 0&&w.hasValue){var D=w.value;if(m(D,Z))return O=D}return O=Z}if(D=O,n(P,Z))return D;var ne=_(Z);return m!==void 0&&m(D,ne)?(P=Z,D):(P=Z,O=ne)}var W=!1,P,O,R=g===void 0?null:g;return[function(){return A(h())},R===null?void 0:function(){return A(R())}]},[h,g,_,m]);var z=o(l,v[0],v[1]);return s(function(){w.hasValue=!0,w.value=z},[z]),u(z),z},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ge}var lr;function ea(){return lr||(lr=1,process.env.NODE_ENV==="production"?xe.exports=Qi():xe.exports=qi()),xe.exports}var ta=ea();function ra(e,t=n=>n,r={}){const n=r.equal??na;return ta.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,t,n)}function na(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[n,o]of e)if(!t.has(n)||!Object.is(o,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();const r=dr(e);if(r.length!==dr(t).length)return!1;for(let n=0;n<r.length;n++)if(!Object.prototype.hasOwnProperty.call(t,r[n])||!Object.is(e[r[n]],t[r[n]]))return!1;return!0}function dr(e){return Object.keys(e).concat(Object.getOwnPropertySymbols(e))}const oa=({auth:e,children:t})=>{const r=V.useNavigate(),n=V.useLocation(),{isLoaded:o,isAuthenticated:i}=ra(e.accountStore,u=>u),[s,a]=b.useState(0);return b.useEffect(()=>{const u=setInterval(()=>{a(l=>l===100?(clearInterval(u),l):l+1)},100);return()=>clearInterval(u)},[]),b.useEffect(()=>{e.initAuthData(),e.load().then(()=>{a(100)})},[e]),b.useEffect(()=>{o&&!i&&(n.pathname.startsWith("/auth")||r({to:"/auth/login"}))},[o,i,r,n.pathname.startsWith]),n.pathname.startsWith("/auth")?c.jsx(Q,{value:{auth:e},children:t}):o&&i?c.jsx(Q,{value:{auth:e},children:t}):s>5?c.jsx("div",{className:"flex items-center justify-center h-screen",children:c.jsxs("div",{className:"p-4 rounded w-1/2",children:[c.jsx("h2",{className:"text-center",children:"account loading..."}),c.jsx(d.Progress,{value:s})]})}):null};k.Auth=Yi,k.AuthContext=Q,k.AuthContextProvider=oa,k.ConfirmResetPasswordForm=Vi,k.DevPanel=br,k.LoginForm=Ji,k.SignUpForm=Wi,k.StartResetPasswordForm=Bi,k.VerifyEmailForm=Ki,k.authE2EConfig=U,k.isAdmin=Gi,k.locale=N,k.useConfirmResetPasswordForm=Qt,k.useLoginForm=qt,k.useSignUpForm=er,k.useStartResetPasswordForm=tr,k.useVerifyEmailForm=rr,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}));
44
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(const s of e.seen.entries()){const a=s[1];if(t===s[0]){i(s);continue}if(e.external){const l=e.external.registry.get(s[0])?.id;if(t!==s[0]&&l){i(s);continue}}if(e.metadataRegistry.get(s[0])?.id){i(s);continue}if(a.cycle){i(s);continue}if(a.count>1&&e.reused==="ref"){i(s);continue}}}function $t(e,t){const r=e.seen.get(t);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");const n=s=>{const a=e.seen.get(s);if(a.ref===null)return;const u=a.def??a.schema,l={...u},h=a.ref;if(a.ref=null,h){n(h);const _=e.seen.get(h),m=_.schema;if(m.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(m)):Object.assign(u,m),Object.assign(u,l),s._zod.parent===h)for(const w in u)w==="$ref"||w==="allOf"||w in l||delete u[w];if(m.$ref&&_.def)for(const w in u)w==="$ref"||w==="allOf"||w in _.def&&JSON.stringify(u[w])===JSON.stringify(_.def[w])&&delete u[w]}const g=s._zod.parent;if(g&&g!==h){n(g);const _=e.seen.get(g);if(_?.schema.$ref&&(u.$ref=_.schema.$ref,_.def))for(const m in u)m==="$ref"||m==="allOf"||m in _.def&&JSON.stringify(u[m])===JSON.stringify(_.def[m])&&delete u[m]}e.override({zodSchema:s,jsonSchema:u,path:a.path??[]})};for(const s of[...e.seen.entries()].reverse())n(s[0]);const o={};if(e.target==="draft-2020-12"?o.$schema="https://json-schema.org/draft/2020-12/schema":e.target==="draft-07"?o.$schema="http://json-schema.org/draft-07/schema#":e.target==="draft-04"?o.$schema="http://json-schema.org/draft-04/schema#":e.target,e.external?.uri){const s=e.external.registry.get(t)?.id;if(!s)throw new Error("Schema is missing an `id` property");o.$id=e.external.uri(s)}Object.assign(o,r.def??r.schema);const i=e.external?.defs??{};for(const s of e.seen.entries()){const a=s[1];a.def&&a.defId&&(i[a.defId]=a.def)}e.external||Object.keys(i).length>0&&(e.target==="draft-2020-12"?o.$defs=i:o.definitions=i);try{const s=JSON.parse(JSON.stringify(o));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:Oe(t,"input",e.processors),output:Oe(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch{throw new Error("Error converting schema to JSON.")}}function M(e,t){const r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);const n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return M(n.element,r);if(n.type==="set")return M(n.valueType,r);if(n.type==="lazy")return M(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return M(n.innerType,r);if(n.type==="intersection")return M(n.left,r)||M(n.right,r);if(n.type==="record"||n.type==="map")return M(n.keyType,r)||M(n.valueType,r);if(n.type==="pipe")return M(n.in,r)||M(n.out,r);if(n.type==="object"){for(const o in n.shape)if(M(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(const o of n.options)if(M(o,r))return!0;return!1}if(n.type==="tuple"){for(const o of n.items)if(M(o,r))return!0;return!!(n.rest&&M(n.rest,r))}return!1}const ls=(e,t={})=>r=>{const n=Nt({...r,processors:t});return $(e,n),At(n,e),$t(n,e)},Oe=(e,t,r={})=>n=>{const{libraryOptions:o,target:i}=n??{},s=Nt({...o??{},target:i,io:t,processors:r});return $(e,s),At(s,e),$t(s,e)},ds={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},fs=(e,t,r,n)=>{const o=r;o.type="string";const{minimum:i,maximum:s,format:a,patterns:u,contentEncoding:l}=e._zod.bag;if(typeof i=="number"&&(o.minLength=i),typeof s=="number"&&(o.maxLength=s),a&&(o.format=ds[a]??a,o.format===""&&delete o.format,a==="time"&&delete o.format),l&&(o.contentEncoding=l),u&&u.size>0){const h=[...u];h.length===1?o.pattern=h[0].source:h.length>1&&(o.allOf=[...h.map(g=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:g.source}))])}},ps=(e,t,r,n)=>{r.not={}},ms=(e,t,r,n)=>{},hs=(e,t,r,n)=>{const o=e._zod.def,i=ut(o.entries);i.every(s=>typeof s=="number")&&(r.type="number"),i.every(s=>typeof s=="string")&&(r.type="string"),r.enum=i},gs=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},_s=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},vs=(e,t,r,n)=>{const o=r,i=e._zod.def,{minimum:s,maximum:a}=e._zod.bag;typeof s=="number"&&(o.minItems=s),typeof a=="number"&&(o.maxItems=a),o.type="array",o.items=$(i.element,t,{...n,path:[...n.path,"items"]})},ws=(e,t,r,n)=>{const o=r,i=e._zod.def;o.type="object",o.properties={};const s=i.shape;for(const l in s)o.properties[l]=$(s[l],t,{...n,path:[...n.path,"properties",l]});const a=new Set(Object.keys(s)),u=new Set([...a].filter(l=>{const h=i.shape[l]._zod;return t.io==="input"?h.optin===void 0:h.optout===void 0}));u.size>0&&(o.required=Array.from(u)),i.catchall?._zod.def.type==="never"?o.additionalProperties=!1:i.catchall?i.catchall&&(o.additionalProperties=$(i.catchall,t,{...n,path:[...n.path,"additionalProperties"]})):t.io==="output"&&(o.additionalProperties=!1)},ys=(e,t,r,n)=>{const o=e._zod.def,i=o.inclusive===!1,s=o.options.map((a,u)=>$(a,t,{...n,path:[...n.path,i?"oneOf":"anyOf",u]}));i?r.oneOf=s:r.anyOf=s},bs=(e,t,r,n)=>{const o=e._zod.def,i=$(o.left,t,{...n,path:[...n.path,"allOf",0]}),s=$(o.right,t,{...n,path:[...n.path,"allOf",1]}),a=l=>"allOf"in l&&Object.keys(l).length===1,u=[...a(i)?i.allOf:[i],...a(s)?s.allOf:[s]];r.allOf=u},Es=(e,t,r,n)=>{const o=e._zod.def,i=$(o.innerType,t,n),s=t.seen.get(e);t.target==="openapi-3.0"?(s.ref=o.innerType,r.nullable=!0):r.anyOf=[i,{type:"null"}]},ks=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType},Ss=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},zs=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,t.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(o.defaultValue)))},Os=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},js=(e,t,r,n)=>{const o=e._zod.def,i=t.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;$(i,t,n);const s=t.seen.get(e);s.ref=i},xs=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType,r.readOnly=!0},Dt=(e,t,r,n)=>{const o=e._zod.def;$(o.innerType,t,n);const i=t.seen.get(e);i.ref=o.innerType};function Ut(e,t){try{var r=e()}catch(n){return t(n)}return r&&r.then?r.then(void 0,t):r}function Ps(e,t){for(var r={};e.length;){var n=e[0],o=n.code,i=n.message,s=n.path.join(".");if(!r[s])if("unionErrors"in n){var a=n.unionErrors[0].errors[0];r[s]={message:a.message,type:a.code}}else r[s]={message:i,type:o};if("unionErrors"in n&&n.unionErrors.forEach(function(h){return h.errors.forEach(function(g){return e.push(g)})}),t){var u=r[s].types,l=u&&u[n.code];r[s]=J.appendErrors(s,t,r,o,l?[].concat(l,n.message):n.message)}e.shift()}return r}function Zs(e,t){for(var r={};e.length;){var n=e[0],o=n.code,i=n.message,s=n.path.join(".");if(!r[s])if(n.code==="invalid_union"&&n.errors.length>0){var a=n.errors[0][0];r[s]={message:a.message,type:a.code}}else r[s]={message:i,type:o};if(n.code==="invalid_union"&&n.errors.forEach(function(h){return h.forEach(function(g){return e.push(g)})}),t){var u=r[s].types,l=u&&u[n.code];r[s]=J.appendErrors(s,t,r,o,l?[].concat(l,n.message):n.message)}e.shift()}return r}function De(e,t,r){if(r===void 0&&(r={}),(function(n){return"_def"in n&&typeof n._def=="object"&&"typeName"in n._def})(e))return function(n,o,i){try{return Promise.resolve(Ut(function(){return Promise.resolve(e[r.mode==="sync"?"parse":"parseAsync"](n,t)).then(function(s){return i.shouldUseNativeValidation&&Ce({},i),{errors:{},values:r.raw?Object.assign({},n):s}})},function(s){if((function(a){return Array.isArray(a?.issues)})(s))return{values:{},errors:st(Ps(s.errors,!i.shouldUseNativeValidation&&i.criteriaMode==="all"),i)};throw s}))}catch(s){return Promise.reject(s)}};if((function(n){return"_zod"in n&&typeof n._zod=="object"})(e))return function(n,o,i){try{return Promise.resolve(Ut(function(){return Promise.resolve((r.mode==="sync"?Lr:Nr)(e,n,t)).then(function(s){return i.shouldUseNativeValidation&&Ce({},i),{errors:{},values:r.raw?Object.assign({},n):s}})},function(s){if((function(a){return a instanceof Ne})(s))return{values:{},errors:st(Zs(s.issues,!i.shouldUseNativeValidation&&i.criteriaMode==="all"),i)};throw s}))}catch(s){return Promise.reject(s)}};throw new Error("Invalid input: not a Zod schema")}const Cs=f("ZodISODateTime",(e,t)=>{Un.init(e,t),x.init(e,t)});function Fs(e){return Vo(Cs,e)}const Ts=f("ZodISODate",(e,t)=>{Mn.init(e,t),x.init(e,t)});function Rs(e){return Jo(Ts,e)}const Is=f("ZodISOTime",(e,t)=>{Vn.init(e,t),x.init(e,t)});function Ls(e){return Wo(Is,e)}const Ns=f("ZodISODuration",(e,t)=>{Jn.init(e,t),x.init(e,t)});function As(e){return Bo(Ns,e)}const B=f("ZodError",(e,t)=>{Ne.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:r=>Ir(e,r)},flatten:{value:r=>Rr(e,r)},addIssue:{value:r=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Fe,2)}},addIssues:{value:r=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Fe,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),$s=ve(B),Ds=we(B),Us=ye(B),Ms=be(B),Vs=Dr(B),Js=Ur(B),Ws=Mr(B),Bs=Vr(B),Ks=Jr(B),Gs=Wr(B),Ys=Br(B),Hs=Kr(B),T=f("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:Oe(e,"input"),output:Oe(e,"output")}}),e.toJSONSchema=ls(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...r)=>e.clone(H(t,{checks:[...t.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0}),e.with=e.check,e.clone=(r,n)=>X(e,r,n),e.brand=()=>e,e.register=((r,n)=>(r.add(e,n),e)),e.parse=(r,n)=>$s(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>Us(e,r,n),e.parseAsync=async(r,n)=>Ds(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>Ms(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>Vs(e,r,n),e.decode=(r,n)=>Js(e,r,n),e.encodeAsync=async(r,n)=>Ws(e,r,n),e.decodeAsync=async(r,n)=>Bs(e,r,n),e.safeEncode=(r,n)=>Ks(e,r,n),e.safeDecode=(r,n)=>Gs(e,r,n),e.safeEncodeAsync=async(r,n)=>Ys(e,r,n),e.safeDecodeAsync=async(r,n)=>Hs(e,r,n),e.refine=(r,n)=>e.check(Ui(r,n)),e.superRefine=r=>e.check(Mi(r)),e.overwrite=r=>e.check(ie(r)),e.optional=()=>Gt(e),e.exactOptional=()=>xi(e),e.nullable=()=>Yt(e),e.nullish=()=>Gt(Yt(e)),e.nonoptional=r=>Ri(e,r),e.array=()=>vi(e),e.or=r=>bi([e,r]),e.and=r=>ki(e,r),e.transform=r=>Xt(e,Oi(r)),e.default=r=>Ci(e,r),e.prefault=r=>Ti(e,r),e.catch=r=>Li(e,r),e.pipe=r=>Xt(e,r),e.readonly=()=>$i(e),e.describe=r=>{const n=e.clone();return fe.add(n,{description:r}),n},Object.defineProperty(e,"description",{get(){return fe.get(e)?.description},configurable:!0}),e.meta=(...r)=>{if(r.length===0)return fe.get(e);const n=e.clone();return fe.add(n,r[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=r=>r(e),e)),Mt=f("_ZodString",(e,t)=>{Ae.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,o,i)=>fs(e,n,o);const r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,e.regex=(...n)=>e.check(Yo(...n)),e.includes=(...n)=>e.check(Qo(...n)),e.startsWith=(...n)=>e.check(qo(...n)),e.endsWith=(...n)=>e.check(es(...n)),e.min=(...n)=>e.check(ze(...n)),e.max=(...n)=>e.check(It(...n)),e.length=(...n)=>e.check(Lt(...n)),e.nonempty=(...n)=>e.check(ze(1,...n)),e.lowercase=n=>e.check(Ho(n)),e.uppercase=n=>e.check(Xo(n)),e.trim=()=>e.check(rs()),e.normalize=(...n)=>e.check(ts(...n)),e.toLowerCase=()=>e.check(ns()),e.toUpperCase=()=>e.check(os()),e.slugify=()=>e.check(ss())}),Xs=f("ZodString",(e,t)=>{Ae.init(e,t),Mt.init(e,t),e.email=r=>e.check(Tt(Vt,r)),e.url=r=>e.check(jo(Qs,r)),e.jwt=r=>e.check(Mo(pi,r)),e.emoji=r=>e.check(xo(qs,r)),e.guid=r=>e.check(Rt(Wt,r)),e.uuid=r=>e.check(ko(je,r)),e.uuidv4=r=>e.check(So(je,r)),e.uuidv6=r=>e.check(zo(je,r)),e.uuidv7=r=>e.check(Oo(je,r)),e.nanoid=r=>e.check(Po(ei,r)),e.guid=r=>e.check(Rt(Wt,r)),e.cuid=r=>e.check(Zo(ti,r)),e.cuid2=r=>e.check(Co(ri,r)),e.ulid=r=>e.check(Fo(ni,r)),e.base64=r=>e.check($o(li,r)),e.base64url=r=>e.check(Do(di,r)),e.xid=r=>e.check(To(oi,r)),e.ksuid=r=>e.check(Ro(si,r)),e.ipv4=r=>e.check(Io(ii,r)),e.ipv6=r=>e.check(Lo(ai,r)),e.cidrv4=r=>e.check(No(ci,r)),e.cidrv6=r=>e.check(Ao(ui,r)),e.e164=r=>e.check(Uo(fi,r)),e.datetime=r=>e.check(Fs(r)),e.date=r=>e.check(Rs(r)),e.time=r=>e.check(Ls(r)),e.duration=r=>e.check(As(r))});function Ue(e){return Eo(Xs,e)}const x=f("ZodStringFormat",(e,t)=>{j.init(e,t),Mt.init(e,t)}),Vt=f("ZodEmail",(e,t)=>{Fn.init(e,t),x.init(e,t)});function Jt(e){return Tt(Vt,e)}const Wt=f("ZodGUID",(e,t)=>{Zn.init(e,t),x.init(e,t)}),je=f("ZodUUID",(e,t)=>{Cn.init(e,t),x.init(e,t)}),Qs=f("ZodURL",(e,t)=>{Tn.init(e,t),x.init(e,t)}),qs=f("ZodEmoji",(e,t)=>{Rn.init(e,t),x.init(e,t)}),ei=f("ZodNanoID",(e,t)=>{In.init(e,t),x.init(e,t)}),ti=f("ZodCUID",(e,t)=>{Ln.init(e,t),x.init(e,t)}),ri=f("ZodCUID2",(e,t)=>{Nn.init(e,t),x.init(e,t)}),ni=f("ZodULID",(e,t)=>{An.init(e,t),x.init(e,t)}),oi=f("ZodXID",(e,t)=>{$n.init(e,t),x.init(e,t)}),si=f("ZodKSUID",(e,t)=>{Dn.init(e,t),x.init(e,t)}),ii=f("ZodIPv4",(e,t)=>{Wn.init(e,t),x.init(e,t)}),ai=f("ZodIPv6",(e,t)=>{Bn.init(e,t),x.init(e,t)}),ci=f("ZodCIDRv4",(e,t)=>{Kn.init(e,t),x.init(e,t)}),ui=f("ZodCIDRv6",(e,t)=>{Gn.init(e,t),x.init(e,t)}),li=f("ZodBase64",(e,t)=>{Yn.init(e,t),x.init(e,t)}),di=f("ZodBase64URL",(e,t)=>{Xn.init(e,t),x.init(e,t)}),fi=f("ZodE164",(e,t)=>{Qn.init(e,t),x.init(e,t)}),pi=f("ZodJWT",(e,t)=>{eo.init(e,t),x.init(e,t)}),mi=f("ZodUnknown",(e,t)=>{to.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ms()});function Bt(){return Ko(mi)}const hi=f("ZodNever",(e,t)=>{ro.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ps(e,r,n)});function gi(e){return Go(hi,e)}const _i=f("ZodArray",(e,t)=>{no.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>vs(e,r,n,o),e.element=t.element,e.min=(r,n)=>e.check(ze(r,n)),e.nonempty=r=>e.check(ze(1,r)),e.max=(r,n)=>e.check(It(r,n)),e.length=(r,n)=>e.check(Lt(r,n)),e.unwrap=()=>e.element});function vi(e,t){return is(_i,e,t)}const wi=f("ZodObject",(e,t)=>{so.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ws(e,r,n,o),S(e,"shape",()=>t.shape),e.keyof=()=>Si(Object.keys(e._zod.def.shape)),e.catchall=r=>e.clone({...e._zod.def,catchall:r}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Bt()}),e.loose=()=>e.clone({...e._zod.def,catchall:Bt()}),e.strict=()=>e.clone({...e._zod.def,catchall:gi()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=r=>Pr(e,r),e.safeExtend=r=>Zr(e,r),e.merge=r=>Cr(e,r),e.pick=r=>jr(e,r),e.omit=r=>xr(e,r),e.partial=(...r)=>Fr(Kt,e,r[0]),e.required=(...r)=>Tr(Ht,e,r[0])});function Me(e,t){const r={type:"object",shape:e??{},...y(t)};return new wi(r)}const yi=f("ZodUnion",(e,t)=>{io.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ys(e,r,n,o),e.options=t.options});function bi(e,t){return new yi({type:"union",options:e,...y(t)})}const Ei=f("ZodIntersection",(e,t)=>{ao.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>bs(e,r,n,o)});function ki(e,t){return new Ei({type:"intersection",left:e,right:t})}const Ve=f("ZodEnum",(e,t)=>{co.init(e,t),T.init(e,t),e._zod.processJSONSchema=(n,o,i)=>hs(e,n,o),e.enum=t.entries,e.options=Object.values(t.entries);const r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{const i={};for(const s of n)if(r.has(s))i[s]=t.entries[s];else throw new Error(`Key ${s} not found in enum`);return new Ve({...t,checks:[],...y(o),entries:i})},e.exclude=(n,o)=>{const i={...t.entries};for(const s of n)if(r.has(s))delete i[s];else throw new Error(`Key ${s} not found in enum`);return new Ve({...t,checks:[],...y(o),entries:i})}});function Si(e,t){const r=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new Ve({type:"enum",entries:r,...y(t)})}const zi=f("ZodTransform",(e,t)=>{uo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_s(e,r),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new at(e.constructor.name);r.addIssue=i=>{if(typeof i=="string")r.issues.push(de(i,r.value,t));else{const s=i;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(de(s))}};const o=t.transform(r.value,r);return o instanceof Promise?o.then(i=>(r.value=i,r)):(r.value=o,r)}});function Oi(e){return new zi({type:"transform",transform:e})}const Kt=f("ZodOptional",(e,t)=>{jt.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dt(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Gt(e){return new Kt({type:"optional",innerType:e})}const ji=f("ZodExactOptional",(e,t)=>{lo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Dt(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xi(e){return new ji({type:"optional",innerType:e})}const Pi=f("ZodNullable",(e,t)=>{fo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Es(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Yt(e){return new Pi({type:"nullable",innerType:e})}const Zi=f("ZodDefault",(e,t)=>{po.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ss(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ci(e,t){return new Zi({type:"default",innerType:e,get defaultValue(){return typeof t=="function"?t():pt(t)}})}const Fi=f("ZodPrefault",(e,t)=>{mo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zs(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ti(e,t){return new Fi({type:"prefault",innerType:e,get defaultValue(){return typeof t=="function"?t():pt(t)}})}const Ht=f("ZodNonOptional",(e,t)=>{ho.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ks(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ri(e,t){return new Ht({type:"nonoptional",innerType:e,...y(t)})}const Ii=f("ZodCatch",(e,t)=>{go.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Os(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Li(e,t){return new Ii({type:"catch",innerType:e,catchValue:typeof t=="function"?t:()=>t})}const Ni=f("ZodPipe",(e,t)=>{_o.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>js(e,r,n,o),e.in=t.in,e.out=t.out});function Xt(e,t){return new Ni({type:"pipe",in:e,out:t})}const Ai=f("ZodReadonly",(e,t)=>{vo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xs(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function $i(e){return new Ai({type:"readonly",innerType:e})}const Di=f("ZodCustom",(e,t)=>{wo.init(e,t),T.init(e,t),e._zod.processJSONSchema=(r,n,o)=>gs(e,r)});function Ui(e,t={}){return as(Di,e,t)}function Mi(e){return cs(e)}const N={notificationsErrorsMap:{"User is not enabled":"auth.loginForm.errors.notifications.userIsNotEnabled","Email not verified":"auth.loginForm.errors.notifications.emailNotVerified","Email not found":"auth.loginForm.errors.notifications.emailNotFound","Invalid password":"auth.loginForm.errors.notifications.invalidPassword","Email is already used":"auth.signUpForm.errors.notifications.emailAlreadyExists","Wrong verification code":"auth.verifyEmailForm.errors.notifications.wrongAuthCode","Start reset password failed, email not found":"auth.startResetPasswordForm.errors.notifications.emailNotFound","Confirm reset password failed, wrong code":"auth.confirmResetPasswordForm.errors.notifications.wrongAuthCode"},fieldsErrorsMap:{"User is not enabled":"email","Email not verified":"email","Email not found":"email","Invalid password":"password","Email is already used":"email","Start reset password failed, email not found":"email"},ru:{asideMenu:{title:"Управление доступом",menuItems:{users:"Пользователи",roles:"Роли",permissions:"Права доступа",sessions:"Сессии"}},confirmResetPasswordForm:{form:{title:"Подтверждение сброса пароля",description:"Введите код подтверждения, чтобы сбросить пароль.",passwordInputLabel:"Новый пароль",authCodeInputLabel:"Код подтверждения",submitButtonLabel:"Сбросить пароль",loginLinkMessage:"Вспомнили пароль?",loginLink:"Войти в систему"},success:{notifications:{confirmResetPasswordSuccess:"Пароль успешно сброшен"}},errors:{fields:{passwordToSmall:"Минимальная длина пароля - 8 символов"},notifications:{unknownError:"Не удалось сбросить пароль",unknownErrorDescription:"Пожалуйста, попробуйте еще раз или обратитесь в службу поддержки",wrongAuthCode:"Неверный код подтверждения"}}},startResetPasswordForm:{form:{title:"Сброс пароля",description:"Введите вашу почту, чтобы получить ссылку на сброс пароля.",emailLabel:"Электронная почта",submitButtonLabel:"Отправить ссылку на сброс пароля",loginLinkMessage:"Вспомнили пароль?",loginLink:"Войти в систему"},errors:{notifications:{unknownError:"Неизвестная ошибка",unknownErrorDescription:"Пожалуйста, попробуйте еще раз позже, либо обратитесь в службу поддержки",emailNotFound:"Пользователь с email {{email}} не найден"}},success:{notifications:{startResetPasswordSuccess:"Ссылка на сброс пароля отправлена на вашу почту"}}},verifyEmailForm:{form:{title:"Подтверждение почты",submitButtonLabel:"Подтвердить",codeLabel:"Код подтверждения",verifyEmailDescription:"Введите код подтверждения, отправленный на вашу почту.",loginLinkMessage:"Почта уже подтверждена?",loginLink:"Войти"},success:{notifications:{verifyEmailSuccess:"Почта успешно подтверждена"}},errors:{notifications:{wrongAuthCode:"Неверный код подтверждения",unknownError:"Неизвестная ошибка",unknownErrorDescription:"Пожалуйста, попробуйте еще раз, либо обратитесь в службу поддержки"}}},loginForm:{form:{title:"Вход",description:"Введите данные для входа",emailLabel:"Email",passwordLabel:"Пароль",forgotPasswordMessage:"Забыли пароль?",submitButtonLabel:"Войти",dontHaveAccountMessage:"Нет аккаунта?",dontHaveAccountLink:"Зарегистрироваться"},errors:{notifications:{emailNotFound:"Пользователь с email {{email}} не найден",userIsNotEnabled:"Пользователь не активирован",emailNotVerified:"Почта не подтверждена",invalidPassword:"Неверный пароль",unknownError:"Не удалось войти в систему",unknownErrorDescription:"Попробуйте войти позже, либо обратитесь в службу поддержки"}},success:{notifications:{loginSuccess:"Вы успешно вошли в систему"}}},signUpForm:{form:{title:"Регистрация",description:"Введите данные для регистрации",emailLabel:"Email",passwordLabel:"Пароль",submitButtonLabel:"Зарегистрироваться",forgotPasswordMessage:"Забыли пароль?",loginLinkMessage:"Уже есть аккаунт?",loginLink:"Войти"},errors:{notifications:{unknownError:"Ошибка регистрации",unknownErrorDescription:"Пожалуйста, попробуйте еще раз или обратитесь к администратору",emailAlreadyExists:"Пользователь с email {{email}} уже существует"},fields:{passwordToSmall:"Минимальная длина пароля - 8 символов"}},success:{notifications:{signUpSuccess:"Вы успешно зарегистрированы"}}}},en:{asideMenu:{title:"Access Management",menuItems:{users:"Users",roles:"Roles",permissions:"Permissions",sessions:"Sessions"}},confirmResetPasswordForm:{form:{title:"Confirm password reset",description:"Enter your new password to confirm the reset.",submitButtonLabel:"Confirm reset",passwordInputLabel:"New password",authCodeInputLabel:"Auth code",confirmPasswordLabel:"Confirm new password",loginLinkMessage:"Already have an account?",loginLink:"Login"},success:{notifications:{confirmResetPasswordSuccess:"Password reset confirmed"}},errors:{fields:{passwordToSmall:"Minimum password length is 8 characters"},notifications:{wrongAuthCode:"Wrong auth code",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},startResetPasswordForm:{form:{title:"Start password reset",description:"Enter your email to receive a password reset link.",submitButtonLabel:"Send reset link",emailLabel:"Email",resetPasswordDescription:"Enter your email to receive a password reset link.",loginLinkMessage:"Already have an account?",loginLink:"Login"},success:{notifications:{startResetPasswordSuccess:"Reset link sent successfully"}},errors:{notifications:{emailNotFound:"User with email {{email}} not found",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},verifyEmailForm:{form:{title:"Verify email",submitButtonLabel:"Verify",codeLabel:"Verification code",verifyEmailDescription:"Enter the verification code sent to your email.",loginLinkMessage:"Email already verified?",loginLink:"Login"},success:{notifications:{verifyEmailSuccess:"Email successfully verified"}},errors:{notifications:{wrongAuthCode:"Wrong verification code",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}}},loginForm:{form:{title:"Login",description:"Enter your login details",emailLabel:"Email",passwordLabel:"Password",forgotPasswordMessage:"Forgot password?",submitButtonLabel:"Login",dontHaveAccountMessage:"Don't have an account?",dontHaveAccountLink:"Register"},errors:{notifications:{emailNotFound:"User with email {{email}} not found",userIsNotEnabled:"User is not enabled",emailNotVerified:"Email not verified",invalidPassword:"Invalid password",unknownError:"Unknown error",unknownErrorDescription:"Please try again or contact support"}},success:{notifications:{loginSuccess:"You have successfully logged in"}}},signUpForm:{form:{title:"Registration",description:"Enter your registration details",emailLabel:"Email",passwordLabel:"Password",submitButtonLabel:"Register",forgotPasswordMessage:"Forgot password?",loginLinkMessage:"Already have an account?",loginLink:"Login"},errors:{notifications:{unknownError:"Signup failed",unknownErrorDescription:"Please try again or contact the administrator",emailAlreadyExists:"User with email {{email}} already exists"}},success:{notifications:{signUpSuccess:"You have successfully registered"}}}}},Q=b.createContext({}),Qt=()=>{const{i18n:e}=b.useContext(G.LocaleContext),{auth:t}=b.useContext(Q),r=b.useMemo(()=>Me({code:Ue(),password:Ue().min(8,{message:e.t("auth.confirmResetPasswordForm.errors.fields.passwordToSmall")})}),[e.t]),n=J.useForm({resolver:De(r),defaultValues:{code:"",password:""}}),o=V.useNavigate();return{submit:b.useCallback(s=>{t.confirmResetPassword(s).then(()=>{d.toast.success(e.t("auth.confirmResetPasswordForm.success.notifications.confirmResetPasswordSuccess")),o({to:"/"})}).catch(a=>{if(a.status===400){const u=a.response.data.detail;if(N.fieldsErrorsMap[u]&&n.setError(N.fieldsErrorsMap[u],{}),N.notificationsErrorsMap[u]){const l=N.notificationsErrorsMap[u];d.toast.error(e.t(l,s));return}d.toast.error(e.t("auth.confirmResetPasswordForm.errors.notifications.unknownError"),{description:e.t("auth.confirmResetPasswordForm.errors.notifications.unknownErrorDescription")})}})},[t.confirmResetPassword,n.setError,e.t,o]),form:n}};function Vi(){const[e,t]=b.useState(!1),{form:r,submit:n}=Qt(),{i18n:o}=b.useContext(G.LocaleContext);return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:o.t("auth.confirmResetPasswordForm.form.title")}),c.jsx(d.CardDescription,{children:o.t("auth.confirmResetPasswordForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...r,children:c.jsx("form",{onSubmit:r.handleSubmit(n),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:o.t("auth.confirmResetPasswordForm.form.authCodeInputLabel")}),c.jsx(d.FormField,{control:r.control,name:"code",render:({field:i})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{type:"text",placeholder:"00001234","data-testid":U.confirmResetPasswordForm.authCodeInput,required:!0,...i})})})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsx("div",{className:"flex items-center",children:c.jsx(d.Label,{children:o.t("auth.confirmResetPasswordForm.form.passwordInputLabel")})}),c.jsx(d.FormField,{control:r.control,name:"password",render:({field:i,fieldState:s})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{className:"relative",children:c.jsxs("div",{className:"form-control-wrapper",children:[c.jsxs("div",{className:"relative",children:[e?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!0)}}),c.jsx(d.Input,{disabled:r.formState.isSubmitting,type:e?"text":"password",placeholder:"********","aria-invalid":!!r.formState.errors?.password,"data-testid":U.confirmResetPasswordForm.newPasswordInput,...i,className:"pr-10"})]}),s.invalid&&c.jsx(d.FieldError,{errors:[s.error]})]})})})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer","data-testid":U.confirmResetPasswordForm.submitButton,children:[o.t("auth.confirmResetPasswordForm.form.submitButtonLabel"),r.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[o.t("auth.confirmResetPasswordForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:o.t("auth.confirmResetPasswordForm.form.loginLink")})]})]})})})})]})})}const qt=()=>{const e=V.useNavigate(),{auth:t}=b.useContext(Q),{i18n:r}=b.useContext(G.LocaleContext),n=J.useForm({defaultValues:{email:"",password:""}}),o=b.useCallback(i=>t.login(i).then(()=>{e({to:"/"}),d.toast.success(r.t("auth.loginForm.success.notifications.loginSuccess"))}).catch(s=>{if(s.status===400&&(N.fieldsErrorsMap[s.response.data.detail]&&n.setError(N.fieldsErrorsMap[s.response.data.detail],{}),N.notificationsErrorsMap[s.response.data.detail])){d.toast.error(r.t(N.notificationsErrorsMap[s.response.data.detail],i));return}d.toast.error(r.t("auth.loginForm.errors.notifications.unknownError"),{description:r.t("auth.loginForm.errors.notifications.unknownErrorDescription")})}),[t.login,r,n.setError,e]);return{form:n,submit:o}};function Ji(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=qt(),[n,o]=b.useState(!1);return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn("transition-opacity",{"opacity-50":t.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.loginForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.loginForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{htmlFor:"email",children:e.t("auth.loginForm.form.emailLabel")}),c.jsx(d.FormField,{control:t.control,name:"email",render:({field:i})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:t.formState.isSubmitting,type:"email",placeholder:"m@example.com",required:!0,"data-testid":U.loginForm.emailInput,...i})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsxs("div",{className:"flex items-center",children:[c.jsx(d.Label,{htmlFor:"password",children:e.t("auth.loginForm.form.passwordLabel")}),c.jsx(V.Link,{to:"/auth/start-reset-password",className:"ml-auto inline-block text-sm underline-offset-4 hover:underline","data-testid":U.loginForm.resetPasswordLink,children:e.t("auth.loginForm.form.forgotPasswordMessage")})]}),c.jsx(d.FormField,{control:t.control,name:"password",render:({field:i})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{className:"relative",children:c.jsxs("div",{className:"relative",children:[n?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{o(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{o(!0)}}),c.jsx(d.Input,{placeholder:"********",disabled:t.formState.isSubmitting,"data-testid":U.loginForm.passwordInput,...i,className:"pr-10","aria-invalid":!!t.formState.errors?.password,type:n?"text":"password"})]})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:t.formState.isSubmitting,"data-testid":U.loginForm.submitButton,children:[e.t("auth.loginForm.form.submitButtonLabel"),t.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.loginForm.form.dontHaveAccountMessage")," ",c.jsx(V.Link,{to:"/auth/signup","data-testid":U.loginForm.signUpFormLink,children:e.t("auth.loginForm.form.dontHaveAccountLink")})]})]})})})})]})})}const er=()=>{const{i18n:e}=b.useContext(G.LocaleContext),{auth:t}=b.useContext(Q),r=b.useMemo(()=>Me({email:Jt(),password:Ue().min(8,{message:e.t("auth.signUpForm.errors.fields.passwordToSmall")})}),[e]),n=J.useForm({resolver:De(r),defaultValues:{email:"",password:""}}),o=V.useNavigate();return{submit:b.useCallback(s=>{t.signup(s).then(()=>{o({to:"/auth/verify-email"}).then(()=>{d.toast.success(e.t("auth.signUpForm.success.notifications.signUpSuccess"))})}).catch(a=>{if(a.status===400){N.fieldsErrorsMap[a.response.data.detail]&&n.setError(N.fieldsErrorsMap[a.response.data.detail],{});const u=a.response.data.detail;if(N.notificationsErrorsMap[u]){const l=N.notificationsErrorsMap[u];d.toast.error(e.t(l,s))}return}d.toast.error(e.t("auth.signUpForm.errors.notifications.unknownError"),{description:e.t("auth.signUpForm.errors.notifications.unknownErrorDescription")})})},[n.setError,o,t.signup,e.t]),form:n}};function Wi(){const[e,t]=b.useState(!1),{i18n:r}=b.useContext(G.LocaleContext),{form:n,submit:o}=er();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn({"opacity-50":n.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:r.t("auth.signUpForm.form.title")}),c.jsx(d.CardDescription,{children:r.t("auth.signUpForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...n,children:c.jsx("form",{onSubmit:n.handleSubmit(o),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:r.t("auth.signUpForm.form.emailLabel")}),c.jsx(d.FormField,{control:n.control,name:"email",render:({field:i})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:n.formState.isSubmitting,type:"email","data-testid":U.signupForm.emailInput,placeholder:"m@example.com",required:!0,...i})})})})]}),c.jsxs("div",{className:"grid gap-2",children:[c.jsxs("div",{className:"flex items-center",children:[c.jsx(d.Label,{children:r.t("auth.signUpForm.form.passwordLabel")}),c.jsx(V.Link,{to:"/auth/start-reset-password",className:"ml-auto inline-block text-sm underline-offset-4 hover:underline",children:r.t("auth.signUpForm.form.forgotPasswordMessage")})]}),c.jsx(d.FormField,{control:n.control,name:"password",render:({field:i,fieldState:s})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{className:"relative",children:c.jsxs(c.Fragment,{children:[c.jsxs("div",{className:"relative",children:[e?c.jsx(K.EyeOff,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!1)}}):c.jsx(K.EyeIcon,{className:"absolute right-3 top-1/2 transform -translate-y-1/2 text-gray-500 z-10 cursor-pointer",onClick:()=>{t(!0)}}),c.jsx(d.Input,{disabled:n.formState.isSubmitting,type:e?"text":"password",placeholder:"********","aria-invalid":!!n.formState.errors?.password,"data-testid":U.signupForm.passwordInput,...i,className:"pr-10"})]}),s.invalid&&c.jsx(d.FieldError,{errors:[s.error]})]})})})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:n.formState.isSubmitting,"data-testid":U.signupForm.submitButton,children:[r.t("auth.signUpForm.form.submitButtonLabel"),n.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[r.t("auth.signUpForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:r.t("auth.signUpForm.form.loginLink")})]})]})})})})]})})}const tr=()=>{const e=V.useNavigate(),{i18n:t}=b.useContext(G.LocaleContext),{auth:r}=b.useContext(Q),n=b.useMemo(()=>Me({email:Jt()}),[]),o=J.useForm({resolver:De(n),defaultValues:{email:""}}),i=b.useCallback(s=>{r.startResetPassword(s).then(()=>{d.toast.success(t.t("auth.startResetPasswordForm.success.notifications.startResetPasswordSuccess")),e({to:"/auth/confirm-reset-password"})}).catch(a=>{if(a.status===400&&(N.fieldsErrorsMap[a.response.data.detail]&&o.setError(N.fieldsErrorsMap[a.response.data.detail],{}),N.notificationsErrorsMap[a.response.data.detail])){d.toast.error(t.t(N.notificationsErrorsMap[a.response.data.detail],s));return}d.toast.error(t.t("auth.startResetPasswordForm.errors.notifications.unknownError"),{description:t.t("auth.startResetPasswordForm.errors.notifications.unknownErrorDescription")})})},[t,r,o.setError,e]);return{form:o,submit:i}};function Bi(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=tr();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{className:d.cn("transition-opacity",{"opacity-50":t.formState.isSubmitting}),children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.startResetPasswordForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.startResetPasswordForm.form.description")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{htmlFor:"email",children:e.t("auth.startResetPasswordForm.form.emailLabel")}),c.jsx(d.FormField,{control:t.control,name:"email",render:({field:n})=>c.jsxs(d.FormItem,{children:[c.jsx(d.FormControl,{children:c.jsx(d.Input,{disabled:t.formState.isSubmitting,type:"email",placeholder:"m@example.com",required:!0,"data-testid":U.startResetPasswordForm.emailInput,...n})}),c.jsx(d.FormMessage,{})]})})]}),c.jsxs(d.Button,{type:"submit",className:"w-full cursor-pointer",disabled:t.formState.isSubmitting,"data-testid":U.startResetPasswordForm.submitButton,children:[e.t("auth.startResetPasswordForm.form.submitButtonLabel"),t.formState.isSubmitting&&c.jsx(K.Loader2Icon,{className:"animate-spin"})]}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.startResetPasswordForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:e.t("auth.startResetPasswordForm.form.loginLink")})]})]})})})})]})})}const rr=()=>{const e=J.useForm({defaultValues:{code:""}}),{auth:t}=b.useContext(Q),{i18n:r}=b.useContext(G.LocaleContext),n=V.useNavigate();return{submit:b.useCallback(i=>{t.verifyEmail(i).then(()=>{n({to:"/"}).then(()=>{d.toast.success(r.t("auth.verifyEmailForm.success.notifications.verifyEmailSuccess"))})}).catch(s=>{if(s.status===400){const a=s.response.data.detail,u=N.notificationsErrorsMap[a];if(u){d.toast.error(r.t(u));return}}d.toast.error(r.t("auth.verifyEmailForm.errors.notifications.unknownError"),{description:r.t("auth.verifyEmailForm.errors.notifications.unknownErrorDescription")})})},[r,t.verifyEmail,n]),form:e}};function Ki(){const{i18n:e}=b.useContext(G.LocaleContext),{form:t,submit:r}=rr();return c.jsx("div",{className:"flex flex-col gap-6",children:c.jsxs(d.Card,{children:[c.jsxs(d.CardHeader,{children:[c.jsx(d.CardTitle,{className:"text-2xl",children:e.t("auth.verifyEmailForm.form.title")}),c.jsx(d.CardDescription,{children:e.t("auth.verifyEmailForm.form.verifyEmailDescription")})]}),c.jsx(d.CardContent,{children:c.jsx(d.Form,{...t,children:c.jsx("form",{onSubmit:t.handleSubmit(r),children:c.jsxs("div",{className:"flex flex-col gap-6",children:[c.jsxs("div",{className:"grid gap-2",children:[c.jsx(d.Label,{children:e.t("auth.verifyEmailForm.form.codeLabel")}),c.jsx(d.FormField,{control:t.control,name:"code",render:({field:n})=>c.jsx(d.FormItem,{children:c.jsx(d.FormControl,{children:c.jsx(d.Input,{type:"text",placeholder:"00001234","data-testid":U.verifyEmailForm.authCodeInput,required:!0,...n})})})})]}),c.jsx(d.Button,{type:"submit",className:"w-full cursor-pointer","data-testid":U.verifyEmailForm.submitButton,children:e.t("auth.verifyEmailForm.form.submitButtonLabel")}),c.jsxs(d.FieldDescription,{className:"text-center",children:[e.t("auth.verifyEmailForm.form.loginLinkMessage")," ",c.jsx(V.Link,{to:"/auth/login",children:e.t("auth.verifyEmailForm.form.loginLink")})]})]})})})})]})})}const Je="Authorization",nr=()=>({user:{id:null,email:null,roles:[],is_enabled:!1,is_email_verified:!1},sessionID:null,isAuthenticated:!1,isLoaded:!1}),q=new et.Store(nr()),Gi=new et.Derived({fn:()=>!!q.state.user?.roles.find(e=>e.name==="admin"),deps:[q]});class Yi{accountStore;httpClient;constructor(t){this.httpClient=t,this.accountStore=q}loadServerData=({user:t,token:r})=>{q.setState(()=>({user:t,sessionID:r,isAuthenticated:!0,isLoaded:!0}))};initAuthData=()=>{const t=localStorage.getItem("token");t&&(this.httpClient.defaults.headers.common[Je]=t)};load=async()=>{try{const{data:t}=await this.httpClient.get("/api/auth/account/me");q.setState(()=>({user:t.user,sessionID:t.session_id,isAuthenticated:!0,isLoaded:!0}))}catch{q.setState(t=>({...t,isLoaded:!0}))}};login=async t=>{const r=await this.httpClient.post("/api/auth/account/login",t),{user:n,token:o,session_id:i}=r.data;return this._initUserData({user:n,token:o,sessionID:i}),n};signup=async t=>this.httpClient.post("/api/auth/account/signup",t);verifyEmail=async t=>{const r=await this.httpClient.post("/api/auth/account/verify-email",t);this._initUserData(r.data)};logout=()=>{q.setState(()=>({...nr(),isLoaded:!0})),this._clearAuthData()};startResetPassword=t=>this.httpClient.post("/api/auth/account/start-reset-password",t);confirmResetPassword=async t=>{const r=await this.httpClient.post("/api/auth/account/confirm-reset-password",t);this._initUserData(r.data)};_initUserData=({user:t,token:r,sessionID:n})=>{this._setAuthData(r),q.setState(()=>({user:t,isAuthenticated:!0,isLoaded:!0,sessionID:n}))};_setAuthData=t=>{localStorage.setItem("token",t),window.cookieStore.set("token",t),this.httpClient.defaults.headers.common[Je]=t};_clearAuthData=()=>{localStorage.removeItem("token"),window.cookieStore.delete("token"),delete this.httpClient.defaults.headers.common[Je]}}var xe={exports:{}},We={},Pe={exports:{}},Be={};var or;function Hi(){if(or)return Be;or=1;var e=b;function t(g,_){return g===_&&(g!==0||1/g===1/_)||g!==g&&_!==_}var r=typeof Object.is=="function"?Object.is:t,n=e.useState,o=e.useEffect,i=e.useLayoutEffect,s=e.useDebugValue;function a(g,_){var m=_(),v=n({inst:{value:m,getSnapshot:_}}),w=v[0].inst,z=v[1];return i(function(){w.value=m,w.getSnapshot=_,u(w)&&z({inst:w})},[g,m,_]),o(function(){return u(w)&&z({inst:w}),g(function(){u(w)&&z({inst:w})})},[g]),s(m),m}function u(g){var _=g.getSnapshot;g=g.value;try{var m=_();return!r(g,m)}catch{return!0}}function l(g,_){return _()}var h=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?l:a;return Be.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:h,Be}var Ke={};var sr;function Xi(){return sr||(sr=1,process.env.NODE_ENV!=="production"&&(function(){function e(m,v){return m===v&&(m!==0||1/m===1/v)||m!==m&&v!==v}function t(m,v){h||o.startTransition===void 0||(h=!0,console.error("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release."));var w=v();if(!g){var z=v();i(w,z)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),g=!0)}z=s({inst:{value:w,getSnapshot:v}});var A=z[0].inst,W=z[1];return u(function(){A.value=w,A.getSnapshot=v,r(A)&&W({inst:A})},[m,w,v]),a(function(){return r(A)&&W({inst:A}),m(function(){r(A)&&W({inst:A})})},[m]),l(w),w}function r(m){var v=m.getSnapshot;m=m.value;try{var w=v();return!i(m,w)}catch{return!0}}function n(m,v){return v()}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var o=b,i=typeof Object.is=="function"?Object.is:e,s=o.useState,a=o.useEffect,u=o.useLayoutEffect,l=o.useDebugValue,h=!1,g=!1,_=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?n:t;Ke.useSyncExternalStore=o.useSyncExternalStore!==void 0?o.useSyncExternalStore:_,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ke}var ir;function ar(){return ir||(ir=1,process.env.NODE_ENV==="production"?Pe.exports=Hi():Pe.exports=Xi()),Pe.exports}var cr;function Qi(){if(cr)return We;cr=1;var e=b,t=ar();function r(l,h){return l===h&&(l!==0||1/l===1/h)||l!==l&&h!==h}var n=typeof Object.is=="function"?Object.is:r,o=t.useSyncExternalStore,i=e.useRef,s=e.useEffect,a=e.useMemo,u=e.useDebugValue;return We.useSyncExternalStoreWithSelector=function(l,h,g,_,m){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=a(function(){function A(Z){if(!W){if(W=!0,P=Z,Z=_(Z),m!==void 0&&w.hasValue){var D=w.value;if(m(D,Z))return O=D}return O=Z}if(D=O,n(P,Z))return D;var ne=_(Z);return m!==void 0&&m(D,ne)?(P=Z,D):(P=Z,O=ne)}var W=!1,P,O,R=g===void 0?null:g;return[function(){return A(h())},R===null?void 0:function(){return A(R())}]},[h,g,_,m]);var z=o(l,v[0],v[1]);return s(function(){w.hasValue=!0,w.value=z},[z]),u(z),z},We}var Ge={};var ur;function qi(){return ur||(ur=1,process.env.NODE_ENV!=="production"&&(function(){function e(l,h){return l===h&&(l!==0||1/l===1/h)||l!==l&&h!==h}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var t=b,r=ar(),n=typeof Object.is=="function"?Object.is:e,o=r.useSyncExternalStore,i=t.useRef,s=t.useEffect,a=t.useMemo,u=t.useDebugValue;Ge.useSyncExternalStoreWithSelector=function(l,h,g,_,m){var v=i(null);if(v.current===null){var w={hasValue:!1,value:null};v.current=w}else w=v.current;v=a(function(){function A(Z){if(!W){if(W=!0,P=Z,Z=_(Z),m!==void 0&&w.hasValue){var D=w.value;if(m(D,Z))return O=D}return O=Z}if(D=O,n(P,Z))return D;var ne=_(Z);return m!==void 0&&m(D,ne)?(P=Z,D):(P=Z,O=ne)}var W=!1,P,O,R=g===void 0?null:g;return[function(){return A(h())},R===null?void 0:function(){return A(R())}]},[h,g,_,m]);var z=o(l,v[0],v[1]);return s(function(){w.hasValue=!0,w.value=z},[z]),u(z),z},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()),Ge}var lr;function ea(){return lr||(lr=1,process.env.NODE_ENV==="production"?xe.exports=Qi():xe.exports=qi()),xe.exports}var ta=ea();function ra(e,t=n=>n,r={}){const n=r.equal??na;return ta.useSyncExternalStoreWithSelector(e.subscribe,()=>e.state,()=>e.state,t,n)}function na(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[n,o]of e)if(!t.has(n)||!Object.is(o,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();const r=dr(e);if(r.length!==dr(t).length)return!1;for(let n=0;n<r.length;n++)if(!Object.prototype.hasOwnProperty.call(t,r[n])||!Object.is(e[r[n]],t[r[n]]))return!1;return!0}function dr(e){return Object.keys(e).concat(Object.getOwnPropertySymbols(e))}const oa=({auth:e,children:t})=>{const r=V.useNavigate(),n=V.useLocation(),{isLoaded:o,isAuthenticated:i}=ra(e.accountStore,u=>u),[s,a]=b.useState(0);return b.useEffect(()=>{const u=setInterval(()=>{a(l=>l===100?(clearInterval(u),l):l+1)},100);return()=>clearInterval(u)},[]),b.useEffect(()=>{e.accountStore.state.isLoaded||(e.initAuthData(),e.load().then(()=>{a(100)}))},[e]),b.useEffect(()=>{o&&!i&&(n.pathname.startsWith("/auth")||r({to:"/auth/login"}))},[o,i,r,n.pathname.startsWith]),n.pathname.startsWith("/auth")?c.jsx(Q,{value:{auth:e},children:t}):o&&i?c.jsx(Q,{value:{auth:e},children:t}):s>5?c.jsx("div",{className:"flex items-center justify-center h-screen",children:c.jsxs("div",{className:"p-4 rounded w-1/2",children:[c.jsx("h2",{className:"text-center",children:"account loading..."}),c.jsx(d.Progress,{value:s})]})}):null};k.Auth=Yi,k.AuthContext=Q,k.AuthContextProvider=oa,k.ConfirmResetPasswordForm=Vi,k.DevPanel=br,k.LoginForm=Ji,k.SignUpForm=Wi,k.StartResetPasswordForm=Bi,k.VerifyEmailForm=Ki,k.authE2EConfig=U,k.isAdmin=Gi,k.locale=N,k.useConfirmResetPasswordForm=Qt,k.useLoginForm=qt,k.useSignUpForm=er,k.useStartResetPasswordForm=tr,k.useVerifyEmailForm=rr,Object.defineProperty(k,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,12 +1,18 @@
1
1
  {
2
2
  "name": "@service_laboratory/auth",
3
- "version": "5.0.3",
3
+ "version": "5.0.4",
4
4
  "type": "module",
5
5
  "main": "./dist/index.umd.cjs",
6
6
  "module": "./dist/index.js",
7
7
  "files": [
8
8
  "dist"
9
9
  ],
10
+ "scripts": {
11
+ "dev": "vite",
12
+ "build": "tsc && vite build",
13
+ "preview": "vite preview",
14
+ "pack": "npm pack"
15
+ },
10
16
  "exports": {
11
17
  ".": {
12
18
  "types": "./dist/index.d.ts",
@@ -33,11 +39,5 @@
33
39
  "typescript": "~5.8.3",
34
40
  "vite": "^7.1.11",
35
41
  "vite-plugin-dts": "^4.5.4"
36
- },
37
- "scripts": {
38
- "dev": "vite",
39
- "build": "tsc && vite build",
40
- "preview": "vite preview",
41
- "pack": "npm pack"
42
42
  }
43
- }
43
+ }