azirid-react 0.8.0 → 0.9.1

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.cjs CHANGED
@@ -59,6 +59,32 @@ var socialLoginSchema = zod.z.object({
59
59
  acceptedTosVersion: zod.z.string().optional(),
60
60
  acceptedPrivacyVersion: zod.z.string().optional()
61
61
  });
62
+ function createForgotPasswordSchema(v) {
63
+ return zod.z.object({
64
+ email: zod.z.string({ required_error: v.emailRequired }).min(1, v.emailRequired).email(v.emailInvalid)
65
+ });
66
+ }
67
+ var forgotPasswordSchema = zod.z.object({
68
+ email: zod.z.string({ required_error: "El correo es requerido" }).min(1, "El correo es requerido").email("Correo electr\xF3nico inv\xE1lido")
69
+ });
70
+ function createResetPasswordConfirmSchema(v) {
71
+ return zod.z.object({
72
+ token: zod.z.string({ required_error: v.tokenRequired }).min(1, v.tokenRequired),
73
+ newPassword: zod.z.string({ required_error: v.newPasswordRequired }).min(10, v.passwordMinLength),
74
+ confirmPassword: zod.z.string({ required_error: v.confirmPasswordRequired }).min(1, v.confirmPasswordRequired)
75
+ }).refine((data) => data.newPassword === data.confirmPassword, {
76
+ message: v.passwordsMismatch,
77
+ path: ["confirmPassword"]
78
+ });
79
+ }
80
+ var resetPasswordConfirmSchema = zod.z.object({
81
+ token: zod.z.string({ required_error: "El token es requerido" }).min(1, "El token es requerido"),
82
+ newPassword: zod.z.string({ required_error: "La nueva contrase\xF1a es requerida" }).min(10, "La contrase\xF1a debe tener al menos 10 caracteres"),
83
+ confirmPassword: zod.z.string({ required_error: "Confirma tu contrase\xF1a" }).min(1, "Confirma tu contrase\xF1a")
84
+ }).refine((data) => data.newPassword === data.confirmPassword, {
85
+ message: "Las contrase\xF1as no coinciden",
86
+ path: ["confirmPassword"]
87
+ });
62
88
  var passkeyRegisterStartSchema = zod.z.object({
63
89
  deviceName: zod.z.string().optional()
64
90
  });
@@ -96,6 +122,8 @@ var SUFFIXES = {
96
122
  submitTransferProof: "billing/transfer-proof",
97
123
  transferProofs: "billing/transfer-proofs",
98
124
  payphoneConfirm: "billing/payphone/confirm",
125
+ passwordResetRequest: "password/reset/request",
126
+ passwordResetConfirm: "password/reset/confirm",
99
127
  referralMe: "referrals/me",
100
128
  referralStats: "referrals/stats",
101
129
  userTenants: "tenants"
@@ -375,6 +403,14 @@ var es = {
375
403
  cancel: "Cancelar",
376
404
  processing: "Procesando..."
377
405
  },
406
+ navigation: {
407
+ noAccountText: "\xBFNo tienes cuenta?",
408
+ signUpLink: "Reg\xEDstrate",
409
+ hasAccountText: "\xBFYa tienes cuenta?",
410
+ signInLink: "Inicia sesi\xF3n",
411
+ forgotPassword: "\xBFOlvidaste tu contrase\xF1a?",
412
+ backToLogin: "Volver a iniciar sesi\xF3n"
413
+ },
378
414
  validation: {
379
415
  emailRequired: "El correo es requerido",
380
416
  emailInvalid: "Correo electr\xF3nico inv\xE1lido",
@@ -453,6 +489,14 @@ var en = {
453
489
  cancel: "Cancel",
454
490
  processing: "Processing..."
455
491
  },
492
+ navigation: {
493
+ noAccountText: "Don't have an account?",
494
+ signUpLink: "Sign up",
495
+ hasAccountText: "Already have an account?",
496
+ signInLink: "Sign in",
497
+ forgotPassword: "Forgot your password?",
498
+ backToLogin: "Back to sign in"
499
+ },
456
500
  validation: {
457
501
  emailRequired: "Email is required",
458
502
  emailInvalid: "Invalid email address",
@@ -481,6 +525,7 @@ function resolveMessages(locale = "es", overrides) {
481
525
  signup: { ...base.signup, ...overrides.signup },
482
526
  forgotPassword: { ...base.forgotPassword, ...overrides.forgotPassword },
483
527
  resetPassword: { ...base.resetPassword, ...overrides.resetPassword },
528
+ navigation: { ...base.navigation, ...overrides.navigation },
484
529
  social: { ...base.social, ...overrides.social },
485
530
  passwordToggle: { ...base.passwordToggle, ...overrides.passwordToggle },
486
531
  securedBy: overrides.securedBy ?? base.securedBy,
@@ -491,7 +536,7 @@ function resolveMessages(locale = "es", overrides) {
491
536
 
492
537
  // src/styles/generated.ts
493
538
  var css = `/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
494
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){[data-azirid] *,[data-azirid] :before,[data-azirid] :after,[data-azirid] ::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-content:""}}[data-azirid]{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-blue-500:oklch(62.3% .214 259.815);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--leading-snug:1.375;--radius-md:calc(var(--aa-radius) - 2px);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--aa-font-sans,ui-sans-serif, system-ui, sans-serif);--default-mono-font-family:var(--font-mono)}.\\@container\\/card-header{container:card-header/inline-size}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.z-10{z-index:10}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.w-4{width:calc(var(--spacing) * 4)}.w-auto{width:auto}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.self-center{align-self:center}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--aa-radius)}.rounded-md{border-radius:calc(var(--aa-radius) - 2px)}.rounded-xl{border-radius:calc(var(--aa-radius) + 4px)}.rounded-t-xl{border-top-left-radius:calc(var(--aa-radius) + 4px);border-top-right-radius:calc(var(--aa-radius) + 4px)}.rounded-b-xl{border-bottom-right-radius:calc(var(--aa-radius) + 4px);border-bottom-left-radius:calc(var(--aa-radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--aa-border)}.border-destructive,.border-destructive\\/50{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\\/50{border-color:color-mix(in oklab, var(--aa-destructive) 50%, transparent)}}.border-input{border-color:var(--aa-input)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--aa-background)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-border{background-color:var(--aa-border)}.bg-card{background-color:var(--aa-card)}.bg-destructive,.bg-destructive\\/10{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--aa-destructive) 10%, transparent)}}.bg-muted,.bg-muted\\/50{background-color:var(--aa-muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/50{background-color:color-mix(in oklab, var(--aa-muted) 50%, transparent)}}.bg-primary{background-color:var(--aa-primary)}.bg-secondary{background-color:var(--aa-secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[0\\.8rem\\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--aa-card-foreground)}.text-destructive{color:var(--aa-destructive)}.text-muted-foreground{color:var(--aa-muted-foreground)}.text-primary{color:var(--aa-primary)}.text-primary-foreground{color:var(--aa-primary-foreground)}.text-secondary-foreground{color:var(--aa-secondary-foreground)}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground,.ring-foreground\\/10{--tw-ring-color:var(--aa-foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--aa-foreground) 10%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.group-data-\\[disabled\\=true\\]\\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\\[disabled\\=true\\]\\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\\[size\\=sm\\]\\/card\\:p-3:is(:where(.group\\/card)[data-size=sm] *){padding:calc(var(--spacing) * 3)}.group-data-\\[size\\=sm\\]\\/card\\:px-3:is(:where(.group\\/card)[data-size=sm] *){padding-inline:calc(var(--spacing) * 3)}.group-data-\\[size\\=sm\\]\\/card\\:text-sm:is(:where(.group\\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\\:bg-transparent::file-selector-button{background-color:#0000}.file\\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\\:text-foreground::file-selector-button{color:var(--aa-foreground)}.placeholder\\:text-muted-foreground::placeholder{color:var(--aa-muted-foreground)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.after\\:top-1\\/2:after{content:var(--tw-content);top:50%}.after\\:z-0:after{content:var(--tw-content);z-index:0}.after\\:flex:after{content:var(--tw-content);display:flex}.after\\:items-center:after{content:var(--tw-content);align-items:center}.after\\:border-t:after{content:var(--tw-content);border-top-style:var(--tw-border-style);border-top-width:1px}.after\\:border-border:after{content:var(--tw-content);border-color:var(--aa-border)}@media (hover:hover){.hover\\:bg-destructive\\/20:hover{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.hover\\:bg-muted:hover{background-color:var(--aa-muted)}.hover\\:bg-secondary\\/80:hover{background-color:var(--aa-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-secondary\\/80:hover{background-color:color-mix(in oklab, var(--aa-secondary) 80%, transparent)}}.hover\\:text-foreground:hover{color:var(--aa-foreground)}.hover\\:underline:hover{text-decoration-line:underline}}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.focus-visible\\:border-ring:focus-visible{border-color:var(--aa-ring)}.focus-visible\\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--aa-ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-ring) 50%, transparent)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-input\\/50:disabled{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.disabled\\:bg-input\\/50:disabled{background-color:color-mix(in oklab, var(--aa-input) 50%, transparent)}}.disabled\\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--aa-radius)}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-end\\]\\:pr-3:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 3)}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-start\\]\\:pl-3:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 3)}.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\\[slot\\=card-description\\]\\:grid-rows-\\[auto_auto\\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\\[slot\\=card-footer\\]\\:pb-0:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}.has-\\[\\>img\\:first-child\\]\\:pt-0:has(>img:first-child){padding-top:calc(var(--spacing) * 0)}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--aa-muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--aa-secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--aa-foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--aa-secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--aa-destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.data-horizontal\\:h-px[data-horizontal]{height:1px}.data-horizontal\\:w-full[data-horizontal]{width:100%}.data-vertical\\:w-px[data-vertical]{width:1px}.data-vertical\\:self-stretch[data-vertical]{align-self:stretch}.data-\\[size\\=sm\\]\\:gap-3[data-size=sm]{gap:calc(var(--spacing) * 3)}.data-\\[size\\=sm\\]\\:py-3[data-size=sm]{padding-block:calc(var(--spacing) * 3)}.data-\\[size\\=sm\\]\\:has-data-\\[slot\\=card-footer\\]\\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}@media (min-width:48rem){.md\\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\\:border-input:is(.dark *){border-color:var(--aa-input)}.dark\\:bg-destructive\\/20:is(.dark *){background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(.dark *){background-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.dark\\:bg-input\\/30:is(.dark *){background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab, var(--aa-input) 30%, transparent)}}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:var(--aa-muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-muted) 50%, transparent)}}}.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--aa-input) 80%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--aa-destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}.\\[\\&_a\\]\\:underline-offset-4 a{text-underline-offset:4px}@media (hover:hover){.\\[\\&_a\\]\\:hover\\:text-primary a:hover{color:var(--aa-primary)}}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\.border-b\\]\\:pb-4.border-b{padding-bottom:calc(var(--spacing) * 4)}.group-data-\\[size\\=sm\\]\\/card\\:\\[\\.border-b\\]\\:pb-3:is(:where(.group\\/card)[data-size=sm] *).border-b{padding-bottom:calc(var(--spacing) * 3)}@media (hover:hover){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:var(--aa-primary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--aa-primary) 80%, transparent)}}}:is(.\\*\\:\\[img\\:first-child\\]\\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--aa-radius) + 4px);border-top-right-radius:calc(var(--aa-radius) + 4px)}:is(.\\*\\:\\[img\\:last-child\\]\\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--aa-radius) + 4px);border-bottom-left-radius:calc(var(--aa-radius) + 4px)}[data-azirid]{--aa-radius:.625rem;--aa-background:oklch(100% 0 0);--aa-foreground:oklch(14.5% 0 0);--aa-card:oklch(100% 0 0);--aa-card-foreground:oklch(14.5% 0 0);--aa-popover:oklch(100% 0 0);--aa-popover-foreground:oklch(14.5% 0 0);--aa-primary:oklch(20.5% 0 0);--aa-primary-foreground:oklch(98.5% 0 0);--aa-secondary:oklch(97% 0 0);--aa-secondary-foreground:oklch(20.5% 0 0);--aa-muted:oklch(97% 0 0);--aa-muted-foreground:oklch(55.6% 0 0);--aa-accent:oklch(97% 0 0);--aa-accent-foreground:oklch(20.5% 0 0);--aa-destructive:oklch(57.7% .245 27.325);--aa-border:oklch(92.2% 0 0);--aa-input:oklch(92.2% 0 0);--aa-ring:oklch(70.8% 0 0);--aa-font-sans:ui-sans-serif, system-ui, sans-serif}@layer base{[data-azirid]{font-family:var(--aa-font-sans);color:var(--aa-foreground);background-color:var(--aa-background);-webkit-text-size-adjust:100%;tab-size:4;-webkit-font-smoothing:antialiased;line-height:1.5}[data-azirid] *,[data-azirid] :before,[data-azirid] :after{box-sizing:border-box;border:0 solid;border-color:var(--aa-border);margin:0;padding:0}[data-azirid] hr{height:0;color:inherit;border-top-width:1px}[data-azirid] h1,[data-azirid] h2,[data-azirid] h3,[data-azirid] h4,[data-azirid] h5,[data-azirid] h6{font-size:inherit;font-weight:inherit}[data-azirid] a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}[data-azirid] b,[data-azirid] strong{font-weight:bolder}[data-azirid] code,[data-azirid] kbd,[data-azirid] samp,[data-azirid] pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}[data-azirid] small{font-size:80%}[data-azirid] table{text-indent:0;border-color:inherit;border-collapse:collapse}[data-azirid] button,[data-azirid] input,[data-azirid] optgroup,[data-azirid] select,[data-azirid] textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}[data-azirid] button,[data-azirid] select{text-transform:none}[data-azirid] button,[data-azirid] input[type=button],[data-azirid] input[type=reset],[data-azirid] input[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}[data-azirid] :-moz-focusring{outline:auto}[data-azirid] ::-moz-focus-inner{border-style:none;padding:0}[data-azirid] :-moz-ui-invalid{box-shadow:none}[data-azirid] progress{vertical-align:baseline}[data-azirid] ::-webkit-inner-spin-button{height:auto}[data-azirid] ::-webkit-outer-spin-button{height:auto}[data-azirid] [type=search]{-webkit-appearance:textfield;outline-offset:-2px}[data-azirid] ::-webkit-search-decoration{-webkit-appearance:none}[data-azirid] ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[data-azirid] summary{display:list-item}[data-azirid] ol,[data-azirid] ul,[data-azirid] menu{margin:0;padding:0;list-style:none}[data-azirid] textarea{resize:vertical}[data-azirid] ::placeholder{opacity:1;color:currentColor}@supports (color:color-mix(in lab, red, red)){[data-azirid] ::placeholder{color:color-mix(in oklch, currentColor 50%, transparent)}}[data-azirid] img,[data-azirid] svg,[data-azirid] video,[data-azirid] canvas,[data-azirid] audio,[data-azirid] iframe,[data-azirid] embed,[data-azirid] object{vertical-align:middle;display:block}[data-azirid] img,[data-azirid] video{max-width:100%;height:auto}[data-azirid] [hidden]:not([hidden=until-found]){display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}`;
539
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){[data-azirid] *,[data-azirid] :before,[data-azirid] :after,[data-azirid] ::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-content:""}}[data-azirid]{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-green-50:oklch(98.2% .018 155.826);--color-green-200:oklch(92.5% .084 155.995);--color-green-800:oklch(44.8% .119 151.328);--color-green-950:oklch(26.6% .065 152.934);--color-blue-500:oklch(62.3% .214 259.815);--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-medium:500;--leading-snug:1.375;--radius-md:calc(var(--aa-radius) - 2px);--animate-spin:spin 1s linear infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--aa-font-sans,ui-sans-serif, system-ui, sans-serif);--default-mono-font-family:var(--font-mono)}.\\@container\\/card-header{container:card-header/inline-size}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.z-10{z-index:10}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mr-2{margin-right:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.w-4{width:calc(var(--spacing) * 4)}.w-auto{width:auto}.w-full{width:100%}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.self-center{align-self:center}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.overflow-hidden{overflow:hidden}.rounded-\\[min\\(var\\(--radius-md\\)\\,10px\\)\\]{border-radius:min(var(--radius-md), 10px)}.rounded-\\[min\\(var\\(--radius-md\\)\\,12px\\)\\]{border-radius:min(var(--radius-md), 12px)}.rounded-lg{border-radius:var(--aa-radius)}.rounded-md{border-radius:calc(var(--aa-radius) - 2px)}.rounded-xl{border-radius:calc(var(--aa-radius) + 4px)}.rounded-t-xl{border-top-left-radius:calc(var(--aa-radius) + 4px);border-top-right-radius:calc(var(--aa-radius) + 4px)}.rounded-b-xl{border-bottom-right-radius:calc(var(--aa-radius) + 4px);border-bottom-left-radius:calc(var(--aa-radius) + 4px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--aa-border)}.border-destructive,.border-destructive\\/50{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.border-destructive\\/50{border-color:color-mix(in oklab, var(--aa-destructive) 50%, transparent)}}.border-green-200{border-color:var(--color-green-200)}.border-input{border-color:var(--aa-input)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--aa-background)}.bg-blue-500{background-color:var(--color-blue-500)}.bg-border{background-color:var(--aa-border)}.bg-card{background-color:var(--aa-card)}.bg-destructive,.bg-destructive\\/10{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\\/10{background-color:color-mix(in oklab, var(--aa-destructive) 10%, transparent)}}.bg-green-50{background-color:var(--color-green-50)}.bg-muted,.bg-muted\\/50{background-color:var(--aa-muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\\/50{background-color:color-mix(in oklab, var(--aa-muted) 50%, transparent)}}.bg-primary{background-color:var(--aa-primary)}.bg-secondary{background-color:var(--aa-secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-clip-padding{background-clip:padding-box}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\\[0\\.8rem\\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground{color:var(--aa-card-foreground)}.text-destructive{color:var(--aa-destructive)}.text-green-800{color:var(--color-green-800)}.text-muted-foreground{color:var(--aa-muted-foreground)}.text-primary{color:var(--aa-primary)}.text-primary-foreground{color:var(--aa-primary-foreground)}.text-secondary-foreground{color:var(--aa-secondary-foreground)}.uppercase{text-transform:uppercase}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground,.ring-foreground\\/10{--tw-ring-color:var(--aa-foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\\/10{--tw-ring-color:color-mix(in oklab, var(--aa-foreground) 10%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.group-data-\\[disabled\\=true\\]\\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\\[disabled\\=true\\]\\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\\[size\\=sm\\]\\/card\\:p-3:is(:where(.group\\/card)[data-size=sm] *){padding:calc(var(--spacing) * 3)}.group-data-\\[size\\=sm\\]\\/card\\:px-3:is(:where(.group\\/card)[data-size=sm] *){padding-inline:calc(var(--spacing) * 3)}.group-data-\\[size\\=sm\\]\\/card\\:text-sm:is(:where(.group\\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.peer-disabled\\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\\:inline-flex::file-selector-button{display:inline-flex}.file\\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\\:bg-transparent::file-selector-button{background-color:#0000}.file\\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\\:text-foreground::file-selector-button{color:var(--aa-foreground)}.placeholder\\:text-muted-foreground::placeholder{color:var(--aa-muted-foreground)}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing) * 0)}.after\\:top-1\\/2:after{content:var(--tw-content);top:50%}.after\\:z-0:after{content:var(--tw-content);z-index:0}.after\\:flex:after{content:var(--tw-content);display:flex}.after\\:items-center:after{content:var(--tw-content);align-items:center}.after\\:border-t:after{content:var(--tw-content);border-top-style:var(--tw-border-style);border-top-width:1px}.after\\:border-border:after{content:var(--tw-content);border-color:var(--aa-border)}@media (hover:hover){.hover\\:bg-destructive\\/20:hover{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-destructive\\/20:hover{background-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.hover\\:bg-muted:hover{background-color:var(--aa-muted)}.hover\\:bg-secondary\\/80:hover{background-color:var(--aa-secondary)}@supports (color:color-mix(in lab, red, red)){.hover\\:bg-secondary\\/80:hover{background-color:color-mix(in oklab, var(--aa-secondary) 80%, transparent)}}.hover\\:text-foreground:hover{color:var(--aa-foreground)}.hover\\:underline:hover{text-decoration-line:underline}}.focus-visible\\:border-destructive\\/40:focus-visible{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:border-destructive\\/40:focus-visible{border-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.focus-visible\\:border-ring:focus-visible{border-color:var(--aa-ring)}.focus-visible\\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:var(--aa-ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\\:ring-ring\\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-ring) 50%, transparent)}}.disabled\\:pointer-events-none:disabled{pointer-events:none}.disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\\:bg-input\\/50:disabled{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.disabled\\:bg-input\\/50:disabled{background-color:color-mix(in oklab, var(--aa-input) 50%, transparent)}}.disabled\\:opacity-50:disabled{opacity:.5}:where([data-slot=button-group]) .in-data-\\[slot\\=button-group\\]\\:rounded-lg{border-radius:var(--aa-radius)}.has-data-\\[icon\\=inline-end\\]\\:pr-1\\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-end\\]\\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-end\\]\\:pr-3:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 3)}.has-data-\\[icon\\=inline-start\\]\\:pl-1\\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\\[icon\\=inline-start\\]\\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\\[icon\\=inline-start\\]\\:pl-3:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 3)}.has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\\[slot\\=card-description\\]\\:grid-rows-\\[auto_auto\\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\\[slot\\=card-footer\\]\\:pb-0:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}.has-\\[\\>img\\:first-child\\]\\:pt-0:has(>img:first-child){padding-top:calc(var(--spacing) * 0)}.aria-expanded\\:bg-muted[aria-expanded=true]{background-color:var(--aa-muted)}.aria-expanded\\:bg-secondary[aria-expanded=true]{background-color:var(--aa-secondary)}.aria-expanded\\:text-foreground[aria-expanded=true]{color:var(--aa-foreground)}.aria-expanded\\:text-secondary-foreground[aria-expanded=true]{color:var(--aa-secondary-foreground)}.aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--aa-destructive)}.aria-invalid\\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.data-horizontal\\:h-px[data-horizontal]{height:1px}.data-horizontal\\:w-full[data-horizontal]{width:100%}.data-vertical\\:w-px[data-vertical]{width:1px}.data-vertical\\:self-stretch[data-vertical]{align-self:stretch}.data-\\[size\\=sm\\]\\:gap-3[data-size=sm]{gap:calc(var(--spacing) * 3)}.data-\\[size\\=sm\\]\\:py-3[data-size=sm]{padding-block:calc(var(--spacing) * 3)}.data-\\[size\\=sm\\]\\:has-data-\\[slot\\=card-footer\\]\\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}@media (min-width:48rem){.md\\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\\:border-green-800:is(.dark *){border-color:var(--color-green-800)}.dark\\:border-input:is(.dark *){border-color:var(--aa-input)}.dark\\:bg-destructive\\/20:is(.dark *){background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-destructive\\/20:is(.dark *){background-color:color-mix(in oklab, var(--aa-destructive) 20%, transparent)}}.dark\\:bg-green-950:is(.dark *){background-color:var(--color-green-950)}.dark\\:bg-input\\/30:is(.dark *){background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab, var(--aa-input) 30%, transparent)}}.dark\\:text-green-200:is(.dark *){color:var(--color-green-200)}@media (hover:hover){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-destructive\\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-destructive) 30%, transparent)}}.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-input) 50%, transparent)}}.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:var(--aa-muted)}@supports (color:color-mix(in lab, red, red)){.dark\\:hover\\:bg-muted\\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--aa-muted) 50%, transparent)}}}.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:var(--aa-input)}@supports (color:color-mix(in lab, red, red)){.dark\\:disabled\\:bg-input\\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--aa-input) 80%, transparent)}}.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:border-destructive\\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--aa-destructive) 50%, transparent)}}.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--aa-destructive)}@supports (color:color-mix(in lab, red, red)){.dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--aa-destructive) 40%, transparent)}}.\\[\\&_a\\]\\:underline a{text-decoration-line:underline}.\\[\\&_a\\]\\:underline-offset-4 a{text-underline-offset:4px}@media (hover:hover){.\\[\\&_a\\]\\:hover\\:text-primary a:hover{color:var(--aa-primary)}}.\\[\\&_svg\\]\\:pointer-events-none svg{pointer-events:none}.\\[\\&_svg\\]\\:shrink-0 svg{flex-shrink:0}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-3\\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\\[\\&_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\\[\\.border-b\\]\\:pb-4.border-b{padding-bottom:calc(var(--spacing) * 4)}.group-data-\\[size\\=sm\\]\\/card\\:\\[\\.border-b\\]\\:pb-3:is(:where(.group\\/card)[data-size=sm] *).border-b{padding-bottom:calc(var(--spacing) * 3)}@media (hover:hover){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:var(--aa-primary)}@supports (color:color-mix(in lab, red, red)){.\\[a\\]\\:hover\\:bg-primary\\/80:is(a):hover{background-color:color-mix(in oklab, var(--aa-primary) 80%, transparent)}}}:is(.\\*\\:\\[img\\:first-child\\]\\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--aa-radius) + 4px);border-top-right-radius:calc(var(--aa-radius) + 4px)}:is(.\\*\\:\\[img\\:last-child\\]\\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--aa-radius) + 4px);border-bottom-left-radius:calc(var(--aa-radius) + 4px)}[data-azirid]{--aa-radius:.625rem;--aa-background:oklch(100% 0 0);--aa-foreground:oklch(14.5% 0 0);--aa-card:oklch(100% 0 0);--aa-card-foreground:oklch(14.5% 0 0);--aa-popover:oklch(100% 0 0);--aa-popover-foreground:oklch(14.5% 0 0);--aa-primary:oklch(20.5% 0 0);--aa-primary-foreground:oklch(98.5% 0 0);--aa-secondary:oklch(97% 0 0);--aa-secondary-foreground:oklch(20.5% 0 0);--aa-muted:oklch(97% 0 0);--aa-muted-foreground:oklch(55.6% 0 0);--aa-accent:oklch(97% 0 0);--aa-accent-foreground:oklch(20.5% 0 0);--aa-destructive:oklch(57.7% .245 27.325);--aa-border:oklch(92.2% 0 0);--aa-input:oklch(92.2% 0 0);--aa-ring:oklch(70.8% 0 0);--aa-font-sans:ui-sans-serif, system-ui, sans-serif}@layer base{[data-azirid]{font-family:var(--aa-font-sans);color:var(--aa-foreground);background-color:var(--aa-background);-webkit-text-size-adjust:100%;tab-size:4;-webkit-font-smoothing:antialiased;line-height:1.5}[data-azirid] *,[data-azirid] :before,[data-azirid] :after{box-sizing:border-box;border:0 solid;border-color:var(--aa-border);margin:0;padding:0}[data-azirid] hr{height:0;color:inherit;border-top-width:1px}[data-azirid] h1,[data-azirid] h2,[data-azirid] h3,[data-azirid] h4,[data-azirid] h5,[data-azirid] h6{font-size:inherit;font-weight:inherit}[data-azirid] a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}[data-azirid] b,[data-azirid] strong{font-weight:bolder}[data-azirid] code,[data-azirid] kbd,[data-azirid] samp,[data-azirid] pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}[data-azirid] small{font-size:80%}[data-azirid] table{text-indent:0;border-color:inherit;border-collapse:collapse}[data-azirid] button,[data-azirid] input,[data-azirid] optgroup,[data-azirid] select,[data-azirid] textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}[data-azirid] button,[data-azirid] select{text-transform:none}[data-azirid] button,[data-azirid] input[type=button],[data-azirid] input[type=reset],[data-azirid] input[type=submit]{-webkit-appearance:button;background-color:#0000;background-image:none}[data-azirid] :-moz-focusring{outline:auto}[data-azirid] ::-moz-focus-inner{border-style:none;padding:0}[data-azirid] :-moz-ui-invalid{box-shadow:none}[data-azirid] progress{vertical-align:baseline}[data-azirid] ::-webkit-inner-spin-button{height:auto}[data-azirid] ::-webkit-outer-spin-button{height:auto}[data-azirid] [type=search]{-webkit-appearance:textfield;outline-offset:-2px}[data-azirid] ::-webkit-search-decoration{-webkit-appearance:none}[data-azirid] ::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[data-azirid] summary{display:list-item}[data-azirid] ol,[data-azirid] ul,[data-azirid] menu{margin:0;padding:0;list-style:none}[data-azirid] textarea{resize:vertical}[data-azirid] ::placeholder{opacity:1;color:currentColor}@supports (color:color-mix(in lab, red, red)){[data-azirid] ::placeholder{color:color-mix(in oklch, currentColor 50%, transparent)}}[data-azirid] img,[data-azirid] svg,[data-azirid] video,[data-azirid] canvas,[data-azirid] audio,[data-azirid] iframe,[data-azirid] embed,[data-azirid] object{vertical-align:middle;display:block}[data-azirid] img,[data-azirid] video{max-width:100%;height:auto}[data-azirid] [hidden]:not([hidden=until-found]){display:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}`;
495
540
 
496
541
  // src/utils/inject-styles.ts
497
542
  var STYLE_ID = "azirid-access-styles";
@@ -1403,6 +1448,418 @@ var SignupForm = react.forwardRef(
1403
1448
  }
1404
1449
  );
1405
1450
  SignupForm.displayName = "SignupForm";
1451
+ function usePasswordReset(options) {
1452
+ const client = useAccessClient();
1453
+ const request = reactQuery.useMutation({
1454
+ mutationKey: ["azirid-access", "password-reset", "request"],
1455
+ mutationFn: (data) => client.post(client.paths.passwordResetRequest, data),
1456
+ onSuccess: () => options?.onRequestSuccess?.(),
1457
+ onError: options?.onError
1458
+ });
1459
+ const confirm = reactQuery.useMutation({
1460
+ mutationKey: ["azirid-access", "password-reset", "confirm"],
1461
+ mutationFn: (data) => client.post(client.paths.passwordResetConfirm, data),
1462
+ onSuccess: () => options?.onConfirmSuccess?.(),
1463
+ onError: options?.onError
1464
+ });
1465
+ return { request, confirm };
1466
+ }
1467
+ var ForgotPasswordForm = react.forwardRef(
1468
+ ({
1469
+ onSubmit: onSubmitProp,
1470
+ schema: schemaProp,
1471
+ isLoading: externalLoading,
1472
+ error: externalError,
1473
+ className,
1474
+ style,
1475
+ title: titleProp,
1476
+ description: descriptionProp,
1477
+ logo: logoProp,
1478
+ submitText: submitTextProp,
1479
+ footer,
1480
+ defaultValues
1481
+ }, ref) => {
1482
+ const msg = useMessages();
1483
+ const branding = useBranding();
1484
+ const [success, setSuccess] = react.useState(false);
1485
+ const [hookError, setHookError] = react.useState(null);
1486
+ const title = titleProp ?? msg.forgotPassword.title;
1487
+ const description = descriptionProp ?? msg.forgotPassword.description;
1488
+ const submitText = submitTextProp ?? msg.forgotPassword.submit;
1489
+ const logo = logoProp !== void 0 ? logoProp : branding?.logoUrl ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: branding.logoUrl, alt: branding.displayName ?? "", className: "h-10 w-auto" }) : null;
1490
+ const schema = react.useMemo(
1491
+ () => schemaProp ?? createForgotPasswordSchema(msg.validation),
1492
+ [schemaProp, msg.validation]
1493
+ );
1494
+ let passwordReset = null;
1495
+ try {
1496
+ passwordReset = usePasswordReset({
1497
+ onRequestSuccess: () => setSuccess(true),
1498
+ onError: (err) => setHookError(err.message)
1499
+ });
1500
+ } catch {
1501
+ }
1502
+ const {
1503
+ register,
1504
+ handleSubmit,
1505
+ formState: { errors, isSubmitting }
1506
+ } = reactHookForm.useForm({
1507
+ resolver: zod$1.zodResolver(schema),
1508
+ defaultValues: { email: "", ...defaultValues }
1509
+ });
1510
+ const onSubmit = react.useCallback(
1511
+ async (values) => {
1512
+ setHookError(null);
1513
+ if (onSubmitProp) {
1514
+ await onSubmitProp(values);
1515
+ } else if (passwordReset) {
1516
+ passwordReset.request.mutate(values);
1517
+ }
1518
+ },
1519
+ [onSubmitProp, passwordReset]
1520
+ );
1521
+ const loading = externalLoading ?? passwordReset?.request.isPending ?? isSubmitting;
1522
+ const error = externalError ?? hookError;
1523
+ const wrapperStyle = react.useMemo(() => {
1524
+ if (!branding?.primaryColor) return style ?? {};
1525
+ return {
1526
+ ...style,
1527
+ "--aa-primary": branding.primaryColor,
1528
+ "--aa-primary-foreground": "#fff"
1529
+ };
1530
+ }, [style, branding?.primaryColor]);
1531
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-azirid": true, className: cn("flex flex-col gap-6", className), style: wrapperStyle, children: [
1532
+ logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2 self-center font-medium", children: logo }),
1533
+ /* @__PURE__ */ jsxRuntime.jsxs(Card, { children: [
1534
+ /* @__PURE__ */ jsxRuntime.jsxs(CardHeader, { className: "text-center", children: [
1535
+ title && /* @__PURE__ */ jsxRuntime.jsx(CardTitle, { className: "text-xl", children: title }),
1536
+ description && /* @__PURE__ */ jsxRuntime.jsx(CardDescription, { children: description })
1537
+ ] }),
1538
+ /* @__PURE__ */ jsxRuntime.jsx(CardContent, { children: success ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-md border border-green-200 bg-green-50 px-4 py-3 text-center text-sm text-green-800 dark:border-green-800 dark:bg-green-950 dark:text-green-200", children: msg.forgotPassword.successMessage }) : /* @__PURE__ */ jsxRuntime.jsx("form", { ref, onSubmit: handleSubmit(onSubmit), noValidate: true, children: /* @__PURE__ */ jsxRuntime.jsxs(FieldGroup, { children: [
1539
+ error && /* @__PURE__ */ jsxRuntime.jsx(
1540
+ "div",
1541
+ {
1542
+ role: "alert",
1543
+ className: "border-destructive/50 bg-destructive/10 text-destructive rounded-md border px-4 py-3 text-sm",
1544
+ children: error
1545
+ }
1546
+ ),
1547
+ /* @__PURE__ */ jsxRuntime.jsxs(Field, { children: [
1548
+ /* @__PURE__ */ jsxRuntime.jsx(FieldLabel, { htmlFor: "aa-forgot-email", children: msg.forgotPassword.emailLabel }),
1549
+ /* @__PURE__ */ jsxRuntime.jsx(
1550
+ Input,
1551
+ {
1552
+ id: "aa-forgot-email",
1553
+ type: "email",
1554
+ autoComplete: "email",
1555
+ placeholder: msg.forgotPassword.emailPlaceholder,
1556
+ disabled: loading,
1557
+ "aria-invalid": !!errors.email,
1558
+ "aria-describedby": errors.email ? "aa-forgot-email-err" : void 0,
1559
+ ...register("email")
1560
+ }
1561
+ ),
1562
+ errors.email && /* @__PURE__ */ jsxRuntime.jsx("p", { id: "aa-forgot-email-err", className: "text-destructive text-xs", children: errors.email.message })
1563
+ ] }),
1564
+ /* @__PURE__ */ jsxRuntime.jsxs(Field, { children: [
1565
+ /* @__PURE__ */ jsxRuntime.jsxs(Button, { type: "submit", disabled: loading, className: "w-full", children: [
1566
+ loading && /* @__PURE__ */ jsxRuntime.jsxs(
1567
+ "svg",
1568
+ {
1569
+ className: "mr-2 h-4 w-4 animate-spin",
1570
+ xmlns: "http://www.w3.org/2000/svg",
1571
+ fill: "none",
1572
+ viewBox: "0 0 24 24",
1573
+ "aria-hidden": "true",
1574
+ children: [
1575
+ /* @__PURE__ */ jsxRuntime.jsx(
1576
+ "circle",
1577
+ {
1578
+ className: "opacity-25",
1579
+ cx: "12",
1580
+ cy: "12",
1581
+ r: "10",
1582
+ stroke: "currentColor",
1583
+ strokeWidth: "4"
1584
+ }
1585
+ ),
1586
+ /* @__PURE__ */ jsxRuntime.jsx(
1587
+ "path",
1588
+ {
1589
+ className: "opacity-75",
1590
+ fill: "currentColor",
1591
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
1592
+ }
1593
+ )
1594
+ ]
1595
+ }
1596
+ ),
1597
+ submitText
1598
+ ] }),
1599
+ footer && /* @__PURE__ */ jsxRuntime.jsx(FieldDescription, { className: "text-center", children: footer })
1600
+ ] })
1601
+ ] }) }) })
1602
+ ] })
1603
+ ] });
1604
+ }
1605
+ );
1606
+ ForgotPasswordForm.displayName = "ForgotPasswordForm";
1607
+ var ResetPasswordForm = react.forwardRef(
1608
+ ({
1609
+ token,
1610
+ onSubmit: onSubmitProp,
1611
+ schema: schemaProp,
1612
+ isLoading: externalLoading,
1613
+ error: externalError,
1614
+ className,
1615
+ style,
1616
+ title: titleProp,
1617
+ description: descriptionProp,
1618
+ logo: logoProp,
1619
+ submitText: submitTextProp,
1620
+ footer,
1621
+ onSuccess
1622
+ }, ref) => {
1623
+ const msg = useMessages();
1624
+ const branding = useBranding();
1625
+ const [hookError, setHookError] = react.useState(null);
1626
+ const title = titleProp ?? msg.resetPassword.title;
1627
+ const description = descriptionProp ?? msg.resetPassword.description;
1628
+ const submitText = submitTextProp ?? msg.resetPassword.submit;
1629
+ const logo = logoProp !== void 0 ? logoProp : branding?.logoUrl ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: branding.logoUrl, alt: branding.displayName ?? "", className: "h-10 w-auto" }) : null;
1630
+ const schema = react.useMemo(
1631
+ () => schemaProp ?? createResetPasswordConfirmSchema(msg.validation),
1632
+ [schemaProp, msg.validation]
1633
+ );
1634
+ let passwordReset = null;
1635
+ try {
1636
+ passwordReset = usePasswordReset({
1637
+ onConfirmSuccess: () => onSuccess?.(),
1638
+ onError: (err) => setHookError(err.message)
1639
+ });
1640
+ } catch {
1641
+ }
1642
+ const {
1643
+ register,
1644
+ handleSubmit,
1645
+ formState: { errors, isSubmitting }
1646
+ } = reactHookForm.useForm({
1647
+ resolver: zod$1.zodResolver(schema),
1648
+ defaultValues: { token, newPassword: "", confirmPassword: "" }
1649
+ });
1650
+ const onSubmit = react.useCallback(
1651
+ async (values) => {
1652
+ setHookError(null);
1653
+ if (onSubmitProp) {
1654
+ await onSubmitProp({ token: values.token, newPassword: values.newPassword });
1655
+ } else if (passwordReset) {
1656
+ passwordReset.confirm.mutate({
1657
+ token: values.token,
1658
+ newPassword: values.newPassword
1659
+ });
1660
+ }
1661
+ },
1662
+ [onSubmitProp, passwordReset]
1663
+ );
1664
+ const loading = externalLoading ?? passwordReset?.confirm.isPending ?? isSubmitting;
1665
+ const error = externalError ?? hookError;
1666
+ const wrapperStyle = react.useMemo(() => {
1667
+ if (!branding?.primaryColor) return style ?? {};
1668
+ return {
1669
+ ...style,
1670
+ "--aa-primary": branding.primaryColor,
1671
+ "--aa-primary-foreground": "#fff"
1672
+ };
1673
+ }, [style, branding?.primaryColor]);
1674
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-azirid": true, className: cn("flex flex-col gap-6", className), style: wrapperStyle, children: [
1675
+ logo && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-2 self-center font-medium", children: logo }),
1676
+ /* @__PURE__ */ jsxRuntime.jsxs(Card, { children: [
1677
+ /* @__PURE__ */ jsxRuntime.jsxs(CardHeader, { className: "text-center", children: [
1678
+ title && /* @__PURE__ */ jsxRuntime.jsx(CardTitle, { className: "text-xl", children: title }),
1679
+ description && /* @__PURE__ */ jsxRuntime.jsx(CardDescription, { children: description })
1680
+ ] }),
1681
+ /* @__PURE__ */ jsxRuntime.jsx(CardContent, { children: /* @__PURE__ */ jsxRuntime.jsxs("form", { ref, onSubmit: handleSubmit(onSubmit), noValidate: true, children: [
1682
+ /* @__PURE__ */ jsxRuntime.jsx("input", { type: "hidden", ...register("token") }),
1683
+ /* @__PURE__ */ jsxRuntime.jsxs(FieldGroup, { children: [
1684
+ error && /* @__PURE__ */ jsxRuntime.jsx(
1685
+ "div",
1686
+ {
1687
+ role: "alert",
1688
+ className: "border-destructive/50 bg-destructive/10 text-destructive rounded-md border px-4 py-3 text-sm",
1689
+ children: error
1690
+ }
1691
+ ),
1692
+ /* @__PURE__ */ jsxRuntime.jsxs(Field, { children: [
1693
+ /* @__PURE__ */ jsxRuntime.jsx(FieldLabel, { htmlFor: "aa-reset-new-password", children: msg.resetPassword.newPasswordLabel }),
1694
+ /* @__PURE__ */ jsxRuntime.jsx(
1695
+ Input,
1696
+ {
1697
+ id: "aa-reset-new-password",
1698
+ type: "password",
1699
+ autoComplete: "new-password",
1700
+ placeholder: msg.resetPassword.newPasswordPlaceholder,
1701
+ disabled: loading,
1702
+ "aria-invalid": !!errors.newPassword,
1703
+ "aria-describedby": errors.newPassword ? "aa-reset-newpass-err" : void 0,
1704
+ ...register("newPassword")
1705
+ }
1706
+ ),
1707
+ errors.newPassword && /* @__PURE__ */ jsxRuntime.jsx("p", { id: "aa-reset-newpass-err", className: "text-destructive text-xs", children: errors.newPassword.message })
1708
+ ] }),
1709
+ /* @__PURE__ */ jsxRuntime.jsxs(Field, { children: [
1710
+ /* @__PURE__ */ jsxRuntime.jsx(FieldLabel, { htmlFor: "aa-reset-confirm-password", children: msg.resetPassword.confirmPasswordLabel }),
1711
+ /* @__PURE__ */ jsxRuntime.jsx(
1712
+ Input,
1713
+ {
1714
+ id: "aa-reset-confirm-password",
1715
+ type: "password",
1716
+ autoComplete: "new-password",
1717
+ placeholder: msg.resetPassword.confirmPasswordPlaceholder,
1718
+ disabled: loading,
1719
+ "aria-invalid": !!errors.confirmPassword,
1720
+ "aria-describedby": errors.confirmPassword ? "aa-reset-confirmpass-err" : void 0,
1721
+ ...register("confirmPassword")
1722
+ }
1723
+ ),
1724
+ errors.confirmPassword && /* @__PURE__ */ jsxRuntime.jsx("p", { id: "aa-reset-confirmpass-err", className: "text-destructive text-xs", children: errors.confirmPassword.message })
1725
+ ] }),
1726
+ /* @__PURE__ */ jsxRuntime.jsxs(Field, { children: [
1727
+ /* @__PURE__ */ jsxRuntime.jsxs(Button, { type: "submit", disabled: loading, className: "w-full", children: [
1728
+ loading && /* @__PURE__ */ jsxRuntime.jsxs(
1729
+ "svg",
1730
+ {
1731
+ className: "mr-2 h-4 w-4 animate-spin",
1732
+ xmlns: "http://www.w3.org/2000/svg",
1733
+ fill: "none",
1734
+ viewBox: "0 0 24 24",
1735
+ "aria-hidden": "true",
1736
+ children: [
1737
+ /* @__PURE__ */ jsxRuntime.jsx(
1738
+ "circle",
1739
+ {
1740
+ className: "opacity-25",
1741
+ cx: "12",
1742
+ cy: "12",
1743
+ r: "10",
1744
+ stroke: "currentColor",
1745
+ strokeWidth: "4"
1746
+ }
1747
+ ),
1748
+ /* @__PURE__ */ jsxRuntime.jsx(
1749
+ "path",
1750
+ {
1751
+ className: "opacity-75",
1752
+ fill: "currentColor",
1753
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
1754
+ }
1755
+ )
1756
+ ]
1757
+ }
1758
+ ),
1759
+ submitText
1760
+ ] }),
1761
+ footer && /* @__PURE__ */ jsxRuntime.jsx(FieldDescription, { className: "text-center", children: footer })
1762
+ ] })
1763
+ ] })
1764
+ ] }) })
1765
+ ] })
1766
+ ] });
1767
+ }
1768
+ );
1769
+ ResetPasswordForm.displayName = "ResetPasswordForm";
1770
+ function AuthForm({
1771
+ view: controlledView,
1772
+ onViewChange,
1773
+ defaultView = "login",
1774
+ className,
1775
+ style,
1776
+ logo,
1777
+ showSocialButtons,
1778
+ hideNavigation,
1779
+ resetToken,
1780
+ defaultValues,
1781
+ loginProps,
1782
+ signupProps,
1783
+ forgotPasswordProps,
1784
+ resetPasswordProps
1785
+ }) {
1786
+ const [internalView, setInternalView] = react.useState(defaultView);
1787
+ const msg = useMessages();
1788
+ const currentView = controlledView ?? internalView;
1789
+ const navigate = react.useCallback(
1790
+ (target) => {
1791
+ if (onViewChange) {
1792
+ onViewChange(target);
1793
+ } else {
1794
+ setInternalView(target);
1795
+ }
1796
+ },
1797
+ [onViewChange]
1798
+ );
1799
+ const navLink = (text, target) => /* @__PURE__ */ jsxRuntime.jsx(
1800
+ "button",
1801
+ {
1802
+ type: "button",
1803
+ onClick: () => navigate(target),
1804
+ className: "text-primary font-medium underline-offset-4 hover:underline",
1805
+ children: text
1806
+ }
1807
+ );
1808
+ const sharedProps = { className, style, logo };
1809
+ switch (currentView) {
1810
+ case "login":
1811
+ return /* @__PURE__ */ jsxRuntime.jsx(
1812
+ LoginForm,
1813
+ {
1814
+ ...sharedProps,
1815
+ showSocialButtons,
1816
+ defaultValues,
1817
+ ...loginProps,
1818
+ forgotPassword: hideNavigation ? void 0 : navLink(msg.navigation.forgotPassword, "forgot-password"),
1819
+ footer: hideNavigation ? void 0 : /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
1820
+ msg.navigation.noAccountText,
1821
+ " ",
1822
+ navLink(msg.navigation.signUpLink, "signup")
1823
+ ] })
1824
+ }
1825
+ );
1826
+ case "signup":
1827
+ return /* @__PURE__ */ jsxRuntime.jsx(
1828
+ SignupForm,
1829
+ {
1830
+ ...sharedProps,
1831
+ showSocialButtons,
1832
+ ...signupProps,
1833
+ footer: hideNavigation ? void 0 : /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
1834
+ msg.navigation.hasAccountText,
1835
+ " ",
1836
+ navLink(msg.navigation.signInLink, "login")
1837
+ ] })
1838
+ }
1839
+ );
1840
+ case "forgot-password":
1841
+ return /* @__PURE__ */ jsxRuntime.jsx(
1842
+ ForgotPasswordForm,
1843
+ {
1844
+ ...sharedProps,
1845
+ defaultValues: defaultValues ? { email: defaultValues.email } : void 0,
1846
+ ...forgotPasswordProps,
1847
+ footer: hideNavigation ? void 0 : /* @__PURE__ */ jsxRuntime.jsx("span", { children: navLink(msg.navigation.backToLogin, "login") })
1848
+ }
1849
+ );
1850
+ case "reset-password":
1851
+ return /* @__PURE__ */ jsxRuntime.jsx(
1852
+ ResetPasswordForm,
1853
+ {
1854
+ ...sharedProps,
1855
+ token: resetToken ?? "",
1856
+ ...resetPasswordProps,
1857
+ footer: hideNavigation ? void 0 : /* @__PURE__ */ jsxRuntime.jsx("span", { children: navLink(msg.navigation.backToLogin, "login") })
1858
+ }
1859
+ );
1860
+ }
1861
+ }
1862
+ AuthForm.displayName = "AuthForm";
1406
1863
  function useReferral() {
1407
1864
  const client = useAccessClient();
1408
1865
  const query = reactQuery.useQuery({
@@ -3367,11 +3824,13 @@ function usePasswordToggle() {
3367
3824
  }
3368
3825
 
3369
3826
  // src/index.ts
3370
- var SDK_VERSION = "0.8.0";
3827
+ var SDK_VERSION = "0.9.1";
3371
3828
 
3829
+ exports.AuthForm = AuthForm;
3372
3830
  exports.AziridProvider = AziridProvider;
3373
3831
  exports.BASE_PATHS = BASE_PATHS;
3374
3832
  exports.CheckoutButton = CheckoutButton;
3833
+ exports.ForgotPasswordForm = ForgotPasswordForm;
3375
3834
  exports.InvoiceList = InvoiceList;
3376
3835
  exports.LoginForm = LoginForm;
3377
3836
  exports.PATHS = PATHS;
@@ -3380,6 +3839,7 @@ exports.PayphoneCallback = PayphoneCallback;
3380
3839
  exports.PricingTable = PricingTable;
3381
3840
  exports.ReferralCard = ReferralCard;
3382
3841
  exports.ReferralStats = ReferralStats;
3842
+ exports.ResetPasswordForm = ResetPasswordForm;
3383
3843
  exports.SDK_VERSION = SDK_VERSION;
3384
3844
  exports.SignupForm = SignupForm;
3385
3845
  exports.SubscriptionBadge = SubscriptionBadge;
@@ -3387,17 +3847,21 @@ exports.buildPaths = buildPaths;
3387
3847
  exports.changePasswordSchema = changePasswordSchema;
3388
3848
  exports.cn = cn;
3389
3849
  exports.createAccessClient = createAccessClient;
3850
+ exports.createForgotPasswordSchema = createForgotPasswordSchema;
3390
3851
  exports.createLoginSchema = createLoginSchema;
3391
3852
  exports.createMutationHook = createMutationHook;
3853
+ exports.createResetPasswordConfirmSchema = createResetPasswordConfirmSchema;
3392
3854
  exports.createSignupSchema = createSignupSchema;
3393
3855
  exports.en = en;
3394
3856
  exports.es = es;
3857
+ exports.forgotPasswordSchema = forgotPasswordSchema;
3395
3858
  exports.isAuthError = isAuthError;
3396
3859
  exports.loginSchema = loginSchema;
3397
3860
  exports.magicLinkRequestSchema = magicLinkRequestSchema;
3398
3861
  exports.magicLinkVerifySchema = magicLinkVerifySchema;
3399
3862
  exports.passkeyRegisterStartSchema = passkeyRegisterStartSchema;
3400
3863
  exports.removeStyles = removeStyles;
3864
+ exports.resetPasswordConfirmSchema = resetPasswordConfirmSchema;
3401
3865
  exports.resolveMessages = resolveMessages;
3402
3866
  exports.signupSchema = signupSchema;
3403
3867
  exports.socialLoginSchema = socialLoginSchema;
@@ -3414,6 +3878,7 @@ exports.useLogout = useLogout;
3414
3878
  exports.useMagicLink = useMagicLink;
3415
3879
  exports.useMessages = useMessages;
3416
3880
  exports.usePasskeys = usePasskeys;
3881
+ exports.usePasswordReset = usePasswordReset;
3417
3882
  exports.usePasswordToggle = usePasswordToggle;
3418
3883
  exports.usePaymentProviders = usePaymentProviders;
3419
3884
  exports.usePayphoneConfirm = usePayphoneConfirm;