@versini/sassysaint 6.5.1 → 6.6.0

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.
@@ -1,7 +1,7 @@
1
- import { jsx as l, jsxs as M, Fragment as et } from "react/jsx-runtime";
2
- import X, { createContext as sr, useReducer as Tt, useRef as x, useCallback as q, useEffect as Y, useContext as St, useSyncExternalStore as ir, useLayoutEffect as Re, useMemo as De, useState as z, useId as _t, lazy as cr, Suspense as lr } from "react";
1
+ import { jsx as l, jsxs as D, Fragment as Re } from "react/jsx-runtime";
2
+ import X, { createContext as sr, useReducer as Tt, useRef as C, useCallback as q, useEffect as Y, useContext as St, useSyncExternalStore as ir, useLayoutEffect as Ne, useMemo as Le, useState as z, useId as _t, lazy as cr, Suspense as lr } from "react";
3
3
  import p from "clsx";
4
- var dr = Object.defineProperty, ur = (e, t, r) => t in e ? dr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, He = (e, t, r) => ur(e, typeof t != "symbol" ? t + "" : t, r);
4
+ var dr = Object.defineProperty, ur = (e, t, r) => t in e ? dr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, We = (e, t, r) => ur(e, typeof t != "symbol" ? t + "" : t, r);
5
5
  /*!
6
6
  @versini/auth-provider v7.4.0
7
7
  © 2024 gizmette.com
@@ -22,7 +22,7 @@ function V(e) {
22
22
  r += String.fromCharCode(a);
23
23
  return btoa(r).replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, "");
24
24
  }
25
- function Ne(e) {
25
+ function ve(e) {
26
26
  const t = e.replace(/-/g, "+").replace(/_/g, "/"), r = (4 - t.length % 4) % 4, a = t.padEnd(t.length + r, "="), n = atob(a), o = new ArrayBuffer(n.length), s = new Uint8Array(o);
27
27
  for (let i = 0; i < n.length; i++)
28
28
  s[i] = n.charCodeAt(i);
@@ -35,7 +35,7 @@ function kt(e) {
35
35
  const { id: t } = e;
36
36
  return {
37
37
  ...e,
38
- id: Ne(t),
38
+ id: ve(t),
39
39
  transports: e.transports
40
40
  };
41
41
  }
@@ -152,10 +152,10 @@ async function fr(e) {
152
152
  throw new Error("WebAuthn is not supported in this browser");
153
153
  const t = { publicKey: {
154
154
  ...e,
155
- challenge: Ne(e.challenge),
155
+ challenge: ve(e.challenge),
156
156
  user: {
157
157
  ...e.user,
158
- id: Ne(e.user.id)
158
+ id: ve(e.user.id)
159
159
  },
160
160
  excludeCredentials: (u = e.excludeCredentials) == null ? void 0 : u.map(kt)
161
161
  } };
@@ -176,7 +176,7 @@ async function fr(e) {
176
176
  try {
177
177
  d = o.getPublicKeyAlgorithm();
178
178
  } catch (c) {
179
- We("getPublicKeyAlgorithm()", c);
179
+ Be("getPublicKeyAlgorithm()", c);
180
180
  }
181
181
  let h;
182
182
  if (typeof o.getPublicKey == "function")
@@ -184,14 +184,14 @@ async function fr(e) {
184
184
  const c = o.getPublicKey();
185
185
  c !== null && (h = V(c));
186
186
  } catch (c) {
187
- We("getPublicKey()", c);
187
+ Be("getPublicKey()", c);
188
188
  }
189
189
  let f;
190
190
  if (typeof o.getAuthenticatorData == "function")
191
191
  try {
192
192
  f = V(o.getAuthenticatorData());
193
193
  } catch (c) {
194
- We("getAuthenticatorData()", c);
194
+ Be("getAuthenticatorData()", c);
195
195
  }
196
196
  return {
197
197
  id: a,
@@ -209,7 +209,7 @@ async function fr(e) {
209
209
  authenticatorAttachment: Nt(r.authenticatorAttachment)
210
210
  };
211
211
  }
212
- function We(e, t) {
212
+ function Be(e, t) {
213
213
  console.warn(`The browser extension that intercepted this WebAuthn API call incorrectly implemented ${e}. You should report this error to them.
214
214
  `, t);
215
215
  }
@@ -268,7 +268,7 @@ async function br(e, t = !1) {
268
268
  ((u = e.allowCredentials) == null ? void 0 : u.length) !== 0 && (r = (c = e.allowCredentials) == null ? void 0 : c.map(kt));
269
269
  const a = {
270
270
  ...e,
271
- challenge: Ne(e.challenge),
271
+ challenge: ve(e.challenge),
272
272
  allowCredentials: r
273
273
  }, n = {};
274
274
  if (t) {
@@ -346,12 +346,12 @@ aMwPFOIcJH+rKfFgNcHLcaS5syp7zU1ANwZ+trgR+DifBr8TLVkBynmNeTyhDm2+
346
346
  l0haqjMk0UoNPPE8iYBWUHQJJE1Dqstj65d6Eh5g64Pao25y4cmYJbKjiblIGEkE
347
347
  sjqybA9mARAqh9k/eiIopecWSiffNQTwVQVd2I9ZH3BalhEXHlqFgrjz51kFqg81
348
348
  awIDAQAB
349
- -----END PUBLIC KEY-----`, Le = {
349
+ -----END PUBLIC KEY-----`, $e = {
350
350
  CODE: "code",
351
351
  LOGOUT: "logout",
352
352
  LOGIN: "login",
353
353
  REFRESH: "refresh"
354
- }, $e = crypto, xt = (e) => e instanceof CryptoKey, Ee = new TextEncoder(), ye = new TextDecoder();
354
+ }, Me = crypto, Ct = (e) => e instanceof CryptoKey, Ee = new TextEncoder(), ye = new TextDecoder();
355
355
  function wr(...e) {
356
356
  const t = e.reduce((n, { length: o }) => n + o, 0), r = new Uint8Array(t);
357
357
  let a = 0;
@@ -386,18 +386,18 @@ let H = class extends P {
386
386
  }
387
387
  };
388
388
  H.code = "ERR_JWT_CLAIM_VALIDATION_FAILED";
389
- class qe extends P {
389
+ class Xe extends P {
390
390
  constructor(t, r, a = "unspecified", n = "unspecified") {
391
391
  super(t, { cause: { claim: a, reason: n, payload: r } }), this.code = "ERR_JWT_EXPIRED", this.claim = a, this.reason = n, this.payload = r;
392
392
  }
393
393
  }
394
- qe.code = "ERR_JWT_EXPIRED";
395
- class Ct extends P {
394
+ Xe.code = "ERR_JWT_EXPIRED";
395
+ class xt extends P {
396
396
  constructor() {
397
397
  super(...arguments), this.code = "ERR_JOSE_ALG_NOT_ALLOWED";
398
398
  }
399
399
  }
400
- Ct.code = "ERR_JOSE_ALG_NOT_ALLOWED";
400
+ xt.code = "ERR_JOSE_ALG_NOT_ALLOWED";
401
401
  let W = class extends P {
402
402
  constructor() {
403
403
  super(...arguments), this.code = "ERR_JOSE_NOT_SUPPORTED";
@@ -470,7 +470,7 @@ function j(e, t = "algorithm.name") {
470
470
  function we(e, t) {
471
471
  return e.name === t;
472
472
  }
473
- function Be(e) {
473
+ function Ge(e) {
474
474
  return parseInt(e.name.slice(4), 10);
475
475
  }
476
476
  function vr(e) {
@@ -485,7 +485,7 @@ function vr(e) {
485
485
  throw new Error("unreachable");
486
486
  }
487
487
  }
488
- function xr(e, t) {
488
+ function Cr(e, t) {
489
489
  if (t.length && !t.some((r) => e.usages.includes(r))) {
490
490
  let r = "CryptoKey does not support this operation, its usages must include ";
491
491
  if (t.length > 2) {
@@ -495,7 +495,7 @@ function xr(e, t) {
495
495
  throw new TypeError(r);
496
496
  }
497
497
  }
498
- function Cr(e, t, ...r) {
498
+ function xr(e, t, ...r) {
499
499
  switch (t) {
500
500
  case "HS256":
501
501
  case "HS384":
@@ -503,7 +503,7 @@ function Cr(e, t, ...r) {
503
503
  if (!we(e.algorithm, "HMAC"))
504
504
  throw j("HMAC");
505
505
  const a = parseInt(t.slice(2), 10);
506
- if (Be(e.algorithm.hash) !== a)
506
+ if (Ge(e.algorithm.hash) !== a)
507
507
  throw j(`SHA-${a}`, "algorithm.hash");
508
508
  break;
509
509
  }
@@ -513,7 +513,7 @@ function Cr(e, t, ...r) {
513
513
  if (!we(e.algorithm, "RSASSA-PKCS1-v1_5"))
514
514
  throw j("RSASSA-PKCS1-v1_5");
515
515
  const a = parseInt(t.slice(2), 10);
516
- if (Be(e.algorithm.hash) !== a)
516
+ if (Ge(e.algorithm.hash) !== a)
517
517
  throw j(`SHA-${a}`, "algorithm.hash");
518
518
  break;
519
519
  }
@@ -523,7 +523,7 @@ function Cr(e, t, ...r) {
523
523
  if (!we(e.algorithm, "RSA-PSS"))
524
524
  throw j("RSA-PSS");
525
525
  const a = parseInt(t.slice(2), 10);
526
- if (Be(e.algorithm.hash) !== a)
526
+ if (Ge(e.algorithm.hash) !== a)
527
527
  throw j(`SHA-${a}`, "algorithm.hash");
528
528
  break;
529
529
  }
@@ -545,7 +545,7 @@ function Cr(e, t, ...r) {
545
545
  default:
546
546
  throw new TypeError("CryptoKey does not support this operation");
547
547
  }
548
- xr(e, r);
548
+ Cr(e, r);
549
549
  }
550
550
  function Pt(e, t, ...r) {
551
551
  var a;
@@ -559,7 +559,7 @@ const it = (e, ...t) => Pt("Key must be ", e, ...t);
559
559
  function Dt(e, t, ...r) {
560
560
  return Pt(`Key for the ${e} algorithm must be `, t, ...r);
561
561
  }
562
- const Lt = (e) => xt(e) ? !0 : (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", ve = ["CryptoKey"], Or = (...e) => {
562
+ const Lt = (e) => Ct(e) ? !0 : (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", Ce = ["CryptoKey"], Or = (...e) => {
563
563
  const t = e.filter(Boolean);
564
564
  if (t.length === 0 || t.length === 1)
565
565
  return !0;
@@ -690,7 +690,7 @@ const $t = async (e) => {
690
690
  e.ext ?? !1,
691
691
  e.key_ops ?? r
692
692
  ], n = { ...e };
693
- return delete n.alg, delete n.use, $e.subtle.importKey("jwk", n, ...a);
693
+ return delete n.alg, delete n.use, Me.subtle.importKey("jwk", n, ...a);
694
694
  }, Mt = (e) => te(e);
695
695
  let oe, se;
696
696
  const Ut = (e) => (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", xe = async (e, t, r, a, n = !1) => {
@@ -783,7 +783,7 @@ const Ut = (e) => (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject",
783
783
  default:
784
784
  throw new W('Invalid or unsupported "alg" (Algorithm) value');
785
785
  }
786
- return $e.subtle.importKey(t, i, o, !1, s);
786
+ return Me.subtle.importKey(t, i, o, !1, s);
787
787
  }, Gr = (e, t, r) => Br(/(?:-----(?:BEGIN|END) PUBLIC KEY-----|\s)/g, "spki", e, t);
788
788
  async function Jr(e, t, r) {
789
789
  if (e.indexOf("-----BEGIN PUBLIC KEY-----") !== 0)
@@ -808,7 +808,7 @@ async function Vr(e, t) {
808
808
  throw new W('Unsupported "kty" (Key Type) Parameter value');
809
809
  }
810
810
  }
811
- const ue = (e) => e == null ? void 0 : e[Symbol.toStringTag], Xe = (e, t, r) => {
811
+ const ue = (e) => e == null ? void 0 : e[Symbol.toStringTag], Qe = (e, t, r) => {
812
812
  var a, n;
813
813
  if (t.use !== void 0 && t.use !== "sig")
814
814
  throw new TypeError("Invalid key for this operation, when present its use must be sig");
@@ -820,12 +820,12 @@ const ue = (e) => e == null ? void 0 : e[Symbol.toStringTag], Xe = (e, t, r) =>
820
820
  }, Yr = (e, t, r, a) => {
821
821
  if (!(t instanceof Uint8Array)) {
822
822
  if (a && pe(t)) {
823
- if (Mr(t) && Xe(e, t, r))
823
+ if (Mr(t) && Qe(e, t, r))
824
824
  return;
825
825
  throw new TypeError('JSON Web Key for symmetric algorithms must have JWK "kty" (Key Type) equal to "oct" and the JWK "k" (Key Value) present');
826
826
  }
827
827
  if (!Lt(t))
828
- throw new TypeError(Dt(e, t, ...ve, "Uint8Array", a ? "JSON Web Key" : null));
828
+ throw new TypeError(Dt(e, t, ...Ce, "Uint8Array", a ? "JSON Web Key" : null));
829
829
  if (t.type !== "secret")
830
830
  throw new TypeError(`${ue(t)} instances for symmetric algorithms must be of type "secret"`);
831
831
  }
@@ -833,16 +833,16 @@ const ue = (e) => e == null ? void 0 : e[Symbol.toStringTag], Xe = (e, t, r) =>
833
833
  if (a && pe(t))
834
834
  switch (r) {
835
835
  case "sign":
836
- if (Lr(t) && Xe(e, t, r))
836
+ if (Lr(t) && Qe(e, t, r))
837
837
  return;
838
838
  throw new TypeError("JSON Web Key for this operation be a private JWK");
839
839
  case "verify":
840
- if ($r(t) && Xe(e, t, r))
840
+ if ($r(t) && Qe(e, t, r))
841
841
  return;
842
842
  throw new TypeError("JSON Web Key for this operation be a public JWK");
843
843
  }
844
844
  if (!Lt(t))
845
- throw new TypeError(Dt(e, t, ...ve, a ? "JSON Web Key" : null));
845
+ throw new TypeError(Dt(e, t, ...Ce, a ? "JSON Web Key" : null));
846
846
  if (t.type === "secret")
847
847
  throw new TypeError(`${ue(t)} instances for asymmetric algorithms must not be of type "secret"`);
848
848
  if (r === "sign" && t.type === "public")
@@ -910,21 +910,21 @@ function qr(e, t) {
910
910
  }
911
911
  }
912
912
  async function Xr(e, t, r) {
913
- if (t = await Wr.normalizePublicKey(t, e), xt(t))
914
- return Cr(t, e, r), t;
913
+ if (t = await Wr.normalizePublicKey(t, e), Ct(t))
914
+ return xr(t, e, r), t;
915
915
  if (t instanceof Uint8Array) {
916
916
  if (!e.startsWith("HS"))
917
- throw new TypeError(it(t, ...ve));
918
- return $e.subtle.importKey("raw", t, { hash: `SHA-${e.slice(-3)}`, name: "HMAC" }, !1, [r]);
917
+ throw new TypeError(it(t, ...Ce));
918
+ return Me.subtle.importKey("raw", t, { hash: `SHA-${e.slice(-3)}`, name: "HMAC" }, !1, [r]);
919
919
  }
920
- throw new TypeError(it(t, ...ve, "Uint8Array", "JSON Web Key"));
920
+ throw new TypeError(it(t, ...Ce, "Uint8Array", "JSON Web Key"));
921
921
  }
922
922
  const Qr = async (e, t, r, a) => {
923
923
  const n = await Xr(e, t, "verify");
924
924
  Dr(e, n);
925
925
  const o = qr(e, n.algorithm);
926
926
  try {
927
- return await $e.subtle.verify(o, n, r, a);
927
+ return await Me.subtle.verify(o, n, r, a);
928
928
  } catch {
929
929
  return !1;
930
930
  }
@@ -964,7 +964,7 @@ async function Zr(e, t, r) {
964
964
  throw new _('JWS "alg" (Algorithm) Header Parameter missing or invalid');
965
965
  const d = zr("algorithms", r.algorithms);
966
966
  if (d && !d.has(i))
967
- throw new Ct('"alg" (Algorithm) Header Parameter value not allowed');
967
+ throw new xt('"alg" (Algorithm) Header Parameter value not allowed');
968
968
  if (s) {
969
969
  if (typeof e.payload != "string")
970
970
  throw new _("JWS Payload must be a string");
@@ -1093,12 +1093,12 @@ const ta = (e) => Math.floor(e.getTime() / 1e3), Ht = 60, Wt = Ht * 60, rt = Wt
1093
1093
  if (typeof a.exp != "number")
1094
1094
  throw new H('"exp" claim must be a number', a, "exp", "invalid");
1095
1095
  if (a.exp <= m - u)
1096
- throw new qe('"exp" claim timestamp check failed', a, "exp", "check_failed");
1096
+ throw new Xe('"exp" claim timestamp check failed', a, "exp", "check_failed");
1097
1097
  }
1098
1098
  if (h) {
1099
1099
  const y = m - a.iat, w = typeof h == "number" ? h : dt(h);
1100
1100
  if (y - u > w)
1101
- throw new qe('"iat" claim timestamp check failed (too far in the past)', a, "iat", "check_failed");
1101
+ throw new Xe('"iat" claim timestamp check failed (too far in the past)', a, "iat", "check_failed");
1102
1102
  if (y < 0 - u)
1103
1103
  throw new H('"iat" claim timestamp check failed (it should be in the past)', a, "iat", "check_failed");
1104
1104
  }
@@ -1160,15 +1160,15 @@ for (let e = 0; e < 256; ++e)
1160
1160
  function ua(e, t = 0) {
1161
1161
  return (A[e[t + 0]] + A[e[t + 1]] + A[e[t + 2]] + A[e[t + 3]] + "-" + A[e[t + 4]] + A[e[t + 5]] + "-" + A[e[t + 6]] + A[e[t + 7]] + "-" + A[e[t + 8]] + A[e[t + 9]] + "-" + A[e[t + 10]] + A[e[t + 11]] + A[e[t + 12]] + A[e[t + 13]] + A[e[t + 14]] + A[e[t + 15]]).toLowerCase();
1162
1162
  }
1163
- let Ge;
1163
+ let Je;
1164
1164
  const ma = new Uint8Array(16);
1165
1165
  function ha() {
1166
- if (!Ge) {
1166
+ if (!Je) {
1167
1167
  if (typeof crypto > "u" || !crypto.getRandomValues)
1168
1168
  throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
1169
- Ge = crypto.getRandomValues.bind(crypto);
1169
+ Je = crypto.getRandomValues.bind(crypto);
1170
1170
  }
1171
- return Ge(ma);
1171
+ return Je(ma);
1172
1172
  }
1173
1173
  const pa = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), mt = { randomUUID: pa };
1174
1174
  function ht(e, t, r) {
@@ -1240,25 +1240,25 @@ for (let e = 0; e < 256; ++e)
1240
1240
  function Ia(e, t = 0) {
1241
1241
  return (R[e[t + 0]] + R[e[t + 1]] + R[e[t + 2]] + R[e[t + 3]] + "-" + R[e[t + 4]] + R[e[t + 5]] + "-" + R[e[t + 6]] + R[e[t + 7]] + "-" + R[e[t + 8]] + R[e[t + 9]] + "-" + R[e[t + 10]] + R[e[t + 11]] + R[e[t + 12]] + R[e[t + 13]] + R[e[t + 14]] + R[e[t + 15]]).toLowerCase();
1242
1242
  }
1243
- let Je;
1243
+ let Ve;
1244
1244
  const Ta = new Uint8Array(16);
1245
1245
  function Sa() {
1246
- if (!Je) {
1246
+ if (!Ve) {
1247
1247
  if (typeof crypto > "u" || !crypto.getRandomValues)
1248
1248
  throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
1249
- Je = crypto.getRandomValues.bind(crypto);
1249
+ Ve = crypto.getRandomValues.bind(crypto);
1250
1250
  }
1251
- return Je(Ta);
1251
+ return Ve(Ta);
1252
1252
  }
1253
1253
  const _a = typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto), yt = { randomUUID: _a };
1254
- function Ve(e, t, r) {
1254
+ function Ye(e, t, r) {
1255
1255
  if (yt.randomUUID && !e)
1256
1256
  return yt.randomUUID();
1257
1257
  e = e || {};
1258
1258
  const a = e.random || (e.rng || Sa)();
1259
1259
  return a[6] = a[6] & 15 | 64, a[8] = a[8] & 63 | 128, Ia(a);
1260
1260
  }
1261
- const ie = "Your session has expired. For your security, please log in again to continue.", ka = "Your session has been successfully terminated.", Ye = "Login failed. Please try again.", Aa = "Error getting access token, please re-authenticate.", Ra = "You forgot to wrap your component in <AuthProvider>.", Ce = {
1261
+ const ie = "Your session has expired. For your security, please log in again to continue.", ka = "Your session has been successfully terminated.", Fe = "Login failed. Please try again.", Aa = "Error getting access token, please re-authenticate.", Ra = "You forgot to wrap your component in <AuthProvider>.", Oe = {
1262
1262
  dev: "https://auth.gizmette.local.com:3003",
1263
1263
  prod: "https://mylogin.gizmette.com/auth"
1264
1264
  }, Te = "@@auth@@", fe = "LOADING", ke = "LOGIN", Gt = "LOGOUT", be = "success", F = "failure", Jt = "include", Vt = "POST", Yt = "application/json", Se = {
@@ -1367,7 +1367,7 @@ const ie = "Your session has expired. For your security, please log in again to
1367
1367
  }) => {
1368
1368
  try {
1369
1369
  const n = `Bearer ${e}`, o = await fetch(
1370
- Ft ? `${Ce.dev}/graphql` : `${Ce.prod}/graphql`,
1370
+ Ft ? `${Oe.dev}/graphql` : `${Oe.prod}/graphql`,
1371
1371
  {
1372
1372
  credentials: Jt,
1373
1373
  method: Vt,
@@ -1392,14 +1392,14 @@ const ie = "Your session has expired. For your security, please log in again to
1392
1392
  } catch (n) {
1393
1393
  return console.error(n), { status: F, data: [] };
1394
1394
  }
1395
- }, Me = async ({
1395
+ }, Ue = async ({
1396
1396
  type: e,
1397
1397
  clientId: t,
1398
1398
  params: r = {}
1399
1399
  }) => {
1400
1400
  try {
1401
1401
  const a = await fetch(
1402
- Ft ? `${Ce.dev}/${e}` : `${Ce.prod}/${e}`,
1402
+ Ft ? `${Oe.dev}/${e}` : `${Oe.prod}/${e}`,
1403
1403
  {
1404
1404
  credentials: Jt,
1405
1405
  method: Vt,
@@ -1434,7 +1434,7 @@ const ie = "Your session has expired. For your security, please log in again to
1434
1434
  } catch {
1435
1435
  return "";
1436
1436
  }
1437
- }, xa = async ({
1437
+ }, Ca = async ({
1438
1438
  userId: e,
1439
1439
  clientId: t,
1440
1440
  domain: r,
@@ -1443,8 +1443,8 @@ const ie = "Your session has expired. For your security, please log in again to
1443
1443
  var n;
1444
1444
  try {
1445
1445
  return {
1446
- status: ((n = await Me({
1447
- type: Le.LOGOUT,
1446
+ status: ((n = await Ue({
1447
+ type: $e.LOGOUT,
1448
1448
  clientId: t,
1449
1449
  params: {
1450
1450
  userId: e,
@@ -1458,7 +1458,7 @@ const ie = "Your session has expired. For your security, please log in again to
1458
1458
  status: F
1459
1459
  };
1460
1460
  }
1461
- }, Ca = async ({
1461
+ }, xa = async ({
1462
1462
  username: e,
1463
1463
  password: t,
1464
1464
  clientId: r,
@@ -1472,8 +1472,8 @@ const ie = "Your session has expired. For your security, please log in again to
1472
1472
  }) => {
1473
1473
  var f;
1474
1474
  try {
1475
- const u = await Me({
1476
- type: Le.LOGIN,
1475
+ const u = await Ue({
1476
+ type: $e.LOGIN,
1477
1477
  clientId: r,
1478
1478
  params: {
1479
1479
  type: n || me.ID_AND_ACCESS_TOKEN,
@@ -1509,8 +1509,8 @@ const ie = "Your session has expired. For your security, please log in again to
1509
1509
  }) => {
1510
1510
  var a;
1511
1511
  try {
1512
- const n = await Me({
1513
- type: Le.CODE,
1512
+ const n = await Ue({
1513
+ type: $e.CODE,
1514
1514
  clientId: t,
1515
1515
  params: {
1516
1516
  type: me.CODE,
@@ -1541,8 +1541,8 @@ const ie = "Your session has expired. For your security, please log in again to
1541
1541
  }) => {
1542
1542
  var s;
1543
1543
  try {
1544
- const i = await Me({
1545
- type: Le.REFRESH,
1544
+ const i = await Ue({
1545
+ type: $e.REFRESH,
1546
1546
  clientId: e,
1547
1547
  params: {
1548
1548
  type: me.REFRESH_TOKEN,
@@ -1569,7 +1569,7 @@ const ie = "Your session has expired. For your security, please log in again to
1569
1569
  };
1570
1570
  class Da {
1571
1571
  constructor(t = null, r = null) {
1572
- He(this, "refreshTokenPromise", null), He(this, "accessToken"), He(this, "refreshToken"), this.accessToken = t || "", this.refreshToken = r || "";
1572
+ We(this, "refreshTokenPromise", null), We(this, "accessToken"), We(this, "refreshToken"), this.accessToken = t || "", this.refreshToken = r || "";
1573
1573
  }
1574
1574
  async refreshtoken({
1575
1575
  clientId: t,
@@ -1667,7 +1667,7 @@ const La = (e) => q(
1667
1667
  const [o, s] = Tt(Ma, {
1668
1668
  ...jt,
1669
1669
  debug: n
1670
- }), i = La(n), d = x(!1), [h, f, , u] = Ie({
1670
+ }), i = La(n), d = C(!1), [h, f, , u] = Ie({
1671
1671
  key: `${Te}::${r}::@@user@@`
1672
1672
  }), [c, m, , y] = Ie({
1673
1673
  key: `${Te}::${r}::@@access@@`
@@ -1675,9 +1675,9 @@ const La = (e) => q(
1675
1675
  {
1676
1676
  key: `${Te}::${r}::@@refresh@@`
1677
1677
  }
1678
- ), [Q, D, , Z] = Ie({
1678
+ ), [Q, L, , Z] = Ie({
1679
1679
  key: `${Te}::${r}::@@nonce@@`
1680
- }), L = new Da(c, w), B = q(() => {
1680
+ }), $ = new Da(c, w), B = q(() => {
1681
1681
  i("removeLocalStorage: removing local storage"), u(), y(), k(), Z();
1682
1682
  }, [
1683
1683
  y,
@@ -1704,7 +1704,7 @@ const La = (e) => q(
1704
1704
  const { user: E } = o, b = (E == null ? void 0 : E.userId) || va(h);
1705
1705
  b || i(
1706
1706
  "invalidateAndLogout: user cannot be identified, logging out without userId"
1707
- ), await xa({
1707
+ ), await Ca({
1708
1708
  userId: b,
1709
1709
  clientId: r,
1710
1710
  domain: a,
@@ -1738,17 +1738,17 @@ const La = (e) => q(
1738
1738
  d.current = !0;
1739
1739
  };
1740
1740
  }, [o.isLoading, h, S, i]);
1741
- const $ = async (g, E) => {
1741
+ const M = async (g, E) => {
1742
1742
  s({ type: fe, payload: { isLoading: !0 } }), B();
1743
- const b = Ve();
1744
- D(b), i("login: Logging in with password");
1743
+ const b = Ye();
1744
+ L(b), i("login: Logging in with password");
1745
1745
  const { code_verifier: ae, code_challenge: or } = await ba(), st = await Oa({
1746
1746
  nonce: b,
1747
1747
  clientId: r,
1748
1748
  code_challenge: or
1749
1749
  });
1750
1750
  if (st.status) {
1751
- const ne = await Ca({
1751
+ const ne = await xa({
1752
1752
  username: g,
1753
1753
  password: E,
1754
1754
  clientId: r,
@@ -1770,7 +1770,7 @@ const La = (e) => q(
1770
1770
  email: ne.email
1771
1771
  }
1772
1772
  }
1773
- }), !0) : (U(Ye), !1);
1773
+ }), !0) : (U(Fe), !1);
1774
1774
  }
1775
1775
  return !1;
1776
1776
  }, K = async (g) => {
@@ -1786,7 +1786,7 @@ const La = (e) => q(
1786
1786
  return c;
1787
1787
  }
1788
1788
  i("getAccessToken: invalid access token, trying to refresh it");
1789
- const b = await L.refreshtoken({
1789
+ const b = await $.refreshtoken({
1790
1790
  clientId: r,
1791
1791
  userId: E.userId,
1792
1792
  nonce: Q,
@@ -1804,7 +1804,7 @@ const La = (e) => q(
1804
1804
  "getAccessToken: exception occurred, invalidating and logging out"
1805
1805
  ), await S(Aa), "";
1806
1806
  }
1807
- }, C = () => o.isAuthenticated && h ? h : "", O = async () => {
1807
+ }, x = () => o.isAuthenticated && h ? h : "", O = async () => {
1808
1808
  const { user: g } = o;
1809
1809
  let E = await le({
1810
1810
  accessToken: c,
@@ -1846,9 +1846,9 @@ const La = (e) => q(
1846
1846
  return !1;
1847
1847
  }, G = async () => {
1848
1848
  s({ type: fe, payload: { isLoading: !0 } }), B();
1849
- const g = Ve();
1850
- D(g), i("loginWithPasskey");
1851
- const E = Ve();
1849
+ const g = Ye();
1850
+ L(g), i("loginWithPasskey");
1851
+ const E = Ye();
1852
1852
  let b = await le({
1853
1853
  accessToken: c,
1854
1854
  clientId: r,
@@ -1884,7 +1884,7 @@ const La = (e) => q(
1884
1884
  email: b.data.email
1885
1885
  }
1886
1886
  }
1887
- }), !0) : (U(Ye), !1);
1887
+ }), !0) : (U(Fe), !1);
1888
1888
  } catch {
1889
1889
  return await le({
1890
1890
  accessToken: c,
@@ -1898,7 +1898,7 @@ const La = (e) => q(
1898
1898
  domain: a,
1899
1899
  sessionExpiration: t
1900
1900
  }
1901
- }), U(Ye), !1;
1901
+ }), U(Fe), !1;
1902
1902
  }
1903
1903
  return !1;
1904
1904
  };
@@ -1907,17 +1907,17 @@ const La = (e) => q(
1907
1907
  {
1908
1908
  value: {
1909
1909
  ...o,
1910
- login: $,
1910
+ login: M,
1911
1911
  logout: K,
1912
1912
  getAccessToken: T,
1913
- getIdToken: C,
1913
+ getIdToken: x,
1914
1914
  registeringForPasskey: O,
1915
1915
  loginWithPasskey: G
1916
1916
  },
1917
1917
  children: e
1918
1918
  }
1919
1919
  ) });
1920
- }, qt = (e = zt) => St(e), bo = "user", Eo = "assistant", wo = "system", Io = "internal", To = "hidden", So = "I'm having trouble right now. Please try again later.", _o = "OpenAI", ko = "OpenAI", Ao = "Anthropic", Ro = "action-message", No = "action-reset", vo = "action-model", xo = "action-restore", Co = "action-streaming", Oo = "action-search", Po = "action-sort", Do = "action-toggle-prompt", Lo = "action-reset-prompt", $o = "sassy-saint-", Mo = "details", Uo = "search", Ko = "sort", Ho = "private-disclosure", Wo = "==stats==", Ka = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Bo = 10, Go = 30, Jo = "av-prompt", Vo = "av-prompt-editable", Yo = "size-4", bt = (e) => Number.isFinite(e) ? e : 0;
1920
+ }, qt = (e = zt) => St(e), Eo = "user", wo = "assistant", Io = "system", To = "internal", So = "hidden", _o = "I'm having trouble right now. Please try again later.", ko = "OpenAI", Ao = "OpenAI", Ro = "Anthropic", No = "action-message", vo = "action-reset", Co = "action-model", xo = "action-restore", Oo = "action-streaming", Po = "action-search", Do = "action-sort", Lo = "action-toggle-prompt", $o = "action-reset-prompt", Mo = "sassy-saint-", Uo = "details", Ko = "search", Ho = "sort", Wo = "private-disclosure", Bo = "==stats==", Ka = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Go = 10, Jo = 30, Vo = "av-prompt", Yo = "av-prompt-editable", Fo = "size-4", bt = (e) => Number.isFinite(e) ? e : 0;
1921
1921
  function Ha(e) {
1922
1922
  return {
1923
1923
  days: Math.trunc(e / 864e5),
@@ -1997,7 +1997,7 @@ function Fa(e, t) {
1997
1997
  const h = t.colonNotation ? ":" : " ";
1998
1998
  return typeof t.unitCount == "number" && (n = n.slice(0, Math.max(t.unitCount, 1))), a + n.join(h);
1999
1999
  }
2000
- const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.local.com" : "gizmette.com", Fo = async () => {
2000
+ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.local.com" : "gizmette.com", jo = async () => {
2001
2001
  const e = {
2002
2002
  /**
2003
2003
  * A boolean value that indicates the application would
@@ -2046,10 +2046,10 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2046
2046
  e
2047
2047
  );
2048
2048
  });
2049
- }, jo = (e, t) => t ? Object.keys(t).map((r) => /* @__PURE__ */ l("dl", { className: "my-0", children: /* @__PURE__ */ M("div", { className: "flex items-center justify-between", children: [
2049
+ }, zo = (e, t) => t ? Object.keys(t).map((r) => /* @__PURE__ */ l("dl", { className: "my-0", children: /* @__PURE__ */ D("div", { className: "flex items-center justify-between", children: [
2050
2050
  /* @__PURE__ */ l("dt", { className: "my-1 inline-block font-bold text-copy-dark dark:text-copy-lighter", children: r }),
2051
2051
  /* @__PURE__ */ l("dd", { className: "my-1 inline-block", children: t[r] })
2052
- ] }) }, `${e}-${r}`)) : null, zo = (e, t) => t && t.messages.length > 0 && t.messages[t.messages.length - 1].message.role === e, qo = (e) => e > 0 ? Fa(e, {
2052
+ ] }) }, `${e}-${r}`)) : null, qo = (e, t) => t && t.messages.length > 0 && t.messages[t.messages.length - 1].message.role === e, Xo = (e) => e > 0 ? Fa(e, {
2053
2053
  secondsDecimalDigits: 2,
2054
2054
  unitCount: 2
2055
2055
  }) : "N/A", Xa = ({
@@ -2061,12 +2061,12 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2061
2061
  t
2062
2062
  ), Qa = ({
2063
2063
  extraClass: e
2064
- }) => p("px-2 sm:px-0", e), Xo = (e, t) => t === 1 ? e : `${e}s`, Qo = (e, t) => {
2064
+ }) => p("px-2 sm:px-0", e), Qo = (e, t) => t === 1 ? e : `${e}s`, Zo = (e, t) => {
2065
2065
  let r;
2066
2066
  return (...a) => {
2067
2067
  window.clearTimeout(r), r = window.setTimeout(() => e(...a), t);
2068
2068
  };
2069
- }, Et = "av-button", Ue = "icon", at = "button", Qe = "link", Za = ({
2069
+ }, Za = () => !!(window != null && window.__VERSINI_CALLISTO_ELECTRON__), Et = "av-button", Ke = "icon", at = "button", Ze = "link", en = ({
2070
2070
  type: e,
2071
2071
  size: t,
2072
2072
  labelRight: r,
@@ -2077,13 +2077,13 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2077
2077
  const s = "max-h-8 py-0 px-2", i = "max-h-9 h-8 px-3", d = "max-h-12 py-2 px-4";
2078
2078
  switch (e) {
2079
2079
  case at:
2080
- case Qe:
2080
+ case Ze:
2081
2081
  return p({
2082
2082
  [s]: t === "small",
2083
2083
  [i]: t === "medium",
2084
2084
  [d]: t === "large"
2085
2085
  });
2086
- case Ue:
2086
+ case Ke:
2087
2087
  return p("flex items-center", {
2088
2088
  "justify-center": n === "center",
2089
2089
  "justify-start": n === "left",
@@ -2102,7 +2102,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2102
2102
  "h-12": t === "large" && o && (r || a)
2103
2103
  });
2104
2104
  }
2105
- }, en = ({
2105
+ }, tn = ({
2106
2106
  type: e,
2107
2107
  size: t,
2108
2108
  labelRight: r,
@@ -2111,21 +2111,21 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2111
2111
  const n = "text-sm font-medium", o = "text-base font-medium", s = "text-lg font-medium";
2112
2112
  switch (e) {
2113
2113
  case at:
2114
- case Qe:
2114
+ case Ze:
2115
2115
  return p({
2116
- "text-center": e === Qe,
2116
+ "text-center": e === Ze,
2117
2117
  [n]: t === "small",
2118
2118
  [o]: t === "medium",
2119
2119
  [s]: t === "large"
2120
2120
  });
2121
- case Ue:
2121
+ case Ke:
2122
2122
  return p({
2123
2123
  [n]: t === "small" && (r || a),
2124
2124
  [o]: t === "medium" && (r || a),
2125
2125
  [s]: t === "large" && (r || a)
2126
2126
  });
2127
2127
  }
2128
- }, tn = ({
2128
+ }, rn = ({
2129
2129
  mode: e,
2130
2130
  noBackground: t,
2131
2131
  noTruncate: r,
@@ -2161,7 +2161,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2161
2161
  return p("not-prose text-copy-lighter", {
2162
2162
  truncate: !r
2163
2163
  });
2164
- }, rn = ({
2164
+ }, an = ({
2165
2165
  mode: e,
2166
2166
  noBackground: t,
2167
2167
  variant: r
@@ -2191,13 +2191,13 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2191
2191
  if (r === "selected")
2192
2192
  return "bg-action-selected-dark";
2193
2193
  }
2194
- }, an = ({
2194
+ }, nn = ({
2195
2195
  radius: e
2196
2196
  }) => p({
2197
2197
  "rounded-full": e === "large",
2198
2198
  "rounded-md": e === "medium",
2199
2199
  "rounded-sm": e === "small"
2200
- }), nn = ({
2200
+ }), on = ({
2201
2201
  mode: e,
2202
2202
  disabled: t,
2203
2203
  variant: r
@@ -2227,7 +2227,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2227
2227
  });
2228
2228
  if (r === "selected")
2229
2229
  return "hover:text-copy-light-hover hover:bg-action-selected-dark-hover";
2230
- }, on = ({
2230
+ }, sn = ({
2231
2231
  mode: e,
2232
2232
  disabled: t,
2233
2233
  variant: r
@@ -2257,7 +2257,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2257
2257
  });
2258
2258
  if (r === "selected")
2259
2259
  return "active:text-copy-lighter-active active:bg-action-selected-dark-active";
2260
- }, sn = ({
2260
+ }, cn = ({
2261
2261
  mode: e,
2262
2262
  noBorder: t,
2263
2263
  variant: r
@@ -2287,14 +2287,14 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2287
2287
  });
2288
2288
  if (r === "selected")
2289
2289
  return "border border-border-selected-dark";
2290
- }, cn = ({
2290
+ }, ln = ({
2291
2291
  focusMode: e
2292
2292
  }) => p("focus:outline", "focus:outline-2", "focus:outline-offset-2", {
2293
2293
  "focus:outline-focus-dark": e === "dark",
2294
2294
  "focus:outline-focus-light": e === "light",
2295
2295
  "focus:outline-focus-light dark:focus:outline-focus-dark": e === "alt-system",
2296
2296
  "focus:outline-focus-dark dark:focus:outline-focus-light": e === "system"
2297
- }), ln = ({
2297
+ }), dn = ({
2298
2298
  mode: e,
2299
2299
  raw: t,
2300
2300
  iconClassName: r
@@ -2306,7 +2306,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2306
2306
  "dark:text-copy-accent-dark": e === "system"
2307
2307
  },
2308
2308
  r
2309
- ), dn = ({
2309
+ ), un = ({
2310
2310
  animated: e
2311
2311
  }) => p({
2312
2312
  "transition-opacity duration-300 ease-in": e
@@ -2330,15 +2330,15 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2330
2330
  animated: I
2331
2331
  }) => (c || (c = "primary"), r ? p(Et, t) : p(
2332
2332
  Et,
2333
- tn({
2333
+ rn({
2334
2334
  mode: a,
2335
2335
  variant: c,
2336
2336
  noBackground: u,
2337
2337
  noTruncate: m
2338
2338
  }),
2339
- rn({ mode: a, noBackground: u, variant: c }),
2340
- an({ radius: w }),
2341
- Za({
2339
+ an({ mode: a, noBackground: u, variant: c }),
2340
+ nn({ radius: w }),
2341
+ en({
2342
2342
  type: e,
2343
2343
  size: i,
2344
2344
  labelRight: h,
@@ -2346,20 +2346,20 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2346
2346
  align: y,
2347
2347
  animated: I
2348
2348
  }),
2349
- en({ type: e, size: i, labelRight: h, labelLeft: f }),
2350
- sn({ mode: a, variant: c, noBorder: d }),
2351
- cn({ focusMode: n }),
2352
- nn({ mode: a, variant: c, disabled: o }),
2349
+ tn({ type: e, size: i, labelRight: h, labelLeft: f }),
2350
+ cn({ mode: a, variant: c, noBorder: d }),
2351
+ ln({ focusMode: n }),
2353
2352
  on({ mode: a, variant: c, disabled: o }),
2353
+ sn({ mode: a, variant: c, disabled: o }),
2354
2354
  {
2355
2355
  "w-full": s,
2356
2356
  "disabled:cursor-not-allowed disabled:opacity-50": o
2357
2357
  },
2358
2358
  p({
2359
- "transition-[width] duration-300 ease-in-out": e === Ue && I
2359
+ "transition-[width] duration-300 ease-in-out": e === Ke && I
2360
2360
  }),
2361
2361
  t
2362
- )), un = (e, t, r) => {
2362
+ )), mn = (e, t, r) => {
2363
2363
  var a;
2364
2364
  !t && (!document.activeElement || document.activeElement !== e.currentTarget) && typeof ((a = e == null ? void 0 : e.currentTarget) == null ? void 0 : a.focus) == "function" && e.currentTarget.focus(), typeof r == "function" && r(e);
2365
2365
  }, nt = X.forwardRef((e, t) => {
@@ -2369,7 +2369,7 @@ const ja = process.env.NODE_ENV === "production", za = !ja, qa = za ? "gizmette.
2369
2369
  {
2370
2370
  ref: t,
2371
2371
  onClick: (o) => {
2372
- un(o, a, r);
2372
+ mn(o, a, r);
2373
2373
  },
2374
2374
  ...n
2375
2375
  }
@@ -2419,21 +2419,21 @@ const Qt = X.forwardRef(
2419
2419
  }
2420
2420
  );
2421
2421
  Qt.displayName = "Button";
2422
- function mn() {
2423
- const e = x(!1);
2422
+ function hn() {
2423
+ const e = C(!1);
2424
2424
  return Y(() => (e.current = !0, () => {
2425
2425
  e.current = !1;
2426
2426
  }), []), q(() => e.current, []);
2427
2427
  }
2428
- function hn(e) {
2429
- return De(() => e.every((t) => t == null) ? () => {
2428
+ function pn(e) {
2429
+ return Le(() => e.every((t) => t == null) ? () => {
2430
2430
  } : (t) => {
2431
2431
  e.forEach((r) => {
2432
2432
  typeof r == "function" ? r(t) : r != null && (r.current = t);
2433
2433
  });
2434
2434
  }, e);
2435
2435
  }
2436
- const pn = {
2436
+ const fn = {
2437
2437
  x: 0,
2438
2438
  y: 0,
2439
2439
  width: 0,
@@ -2443,8 +2443,8 @@ const pn = {
2443
2443
  bottom: 0,
2444
2444
  right: 0
2445
2445
  };
2446
- function Fe(e) {
2447
- const t = mn(), r = x(0), a = x(null), [n, o] = z(pn), s = De(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
2446
+ function je(e) {
2447
+ const t = hn(), r = C(0), a = C(null), [n, o] = z(fn), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
2448
2448
  const d = i[0];
2449
2449
  d && (cancelAnimationFrame(r.current), r.current = requestAnimationFrame(() => {
2450
2450
  a.current && t() && o(d.contentRect);
@@ -2454,21 +2454,21 @@ function Fe(e) {
2454
2454
  s == null || s.disconnect(), r.current && cancelAnimationFrame(r.current);
2455
2455
  }), [s, e]), [a, n];
2456
2456
  }
2457
- const fn = {
2457
+ const gn = {
2458
2458
  small: 24,
2459
2459
  // w-6
2460
2460
  medium: 32,
2461
2461
  // w-8
2462
2462
  large: 48
2463
2463
  // w-12
2464
- }, gn = {
2464
+ }, yn = {
2465
2465
  small: 8 * 2,
2466
2466
  // px-2 x 2
2467
2467
  medium: 12 * 2,
2468
2468
  // px-3 x 2
2469
2469
  large: 16 * 2
2470
2470
  // px-4 x 2
2471
- }, yn = 2, Oe = X.forwardRef(
2471
+ }, bn = 2, Pe = X.forwardRef(
2472
2472
  ({
2473
2473
  children: e,
2474
2474
  disabled: t = !1,
@@ -2489,11 +2489,11 @@ const fn = {
2489
2489
  radius: I = "large",
2490
2490
  variant: k = "primary",
2491
2491
  iconClassName: Q,
2492
- animated: D = !1,
2492
+ animated: L = !1,
2493
2493
  ...Z
2494
- }, L) => {
2494
+ }, $) => {
2495
2495
  const B = Xt({
2496
- type: Ue,
2496
+ type: Ke,
2497
2497
  mode: r,
2498
2498
  focusMode: a,
2499
2499
  fullWidth: n,
@@ -2508,22 +2508,22 @@ const fn = {
2508
2508
  align: w,
2509
2509
  radius: I,
2510
2510
  variant: k,
2511
- animated: D
2512
- }), U = ln({ mode: r, raw: i, iconClassName: Q }), S = dn({ animated: D }), [$, K] = Fe(), [T, C] = Fe(), [O, G] = Fe(), g = x(0), E = x(null), b = hn([L, E]);
2513
- return Re(() => {
2514
- O && O.current && D && (g.current = G.width + gn[u] + (d ? 0 : yn));
2515
- }, [G, O, u, d, D]), Re(() => {
2516
- E && E.current && D && (c && $ && K.width > 0 ? ($.current && ($.current.style.opacity = "100"), E.current.style.width = `${K.width + g.current}px`) : m && C.width > 0 ? (T.current && (T.current.style.opacity = "100"), E.current.style.width = `${C.width + g.current}px`) : ($.current && ($.current.style.opacity = "0"), T.current && (T.current.style.opacity = "0"), E.current.style.width = `${fn[u]}px`));
2511
+ animated: L
2512
+ }), U = dn({ mode: r, raw: i, iconClassName: Q }), S = un({ animated: L }), [M, K] = je(), [T, x] = je(), [O, G] = je(), g = C(0), E = C(null), b = pn([$, E]);
2513
+ return Ne(() => {
2514
+ O && O.current && L && (g.current = G.width + yn[u] + (d ? 0 : bn));
2515
+ }, [G, O, u, d, L]), Ne(() => {
2516
+ E && E.current && L && (c && M && K.width > 0 ? (M.current && (M.current.style.opacity = "100"), E.current.style.width = `${K.width + g.current}px`) : m && x.width > 0 ? (T.current && (T.current.style.opacity = "100"), E.current.style.width = `${x.width + g.current}px`) : (M.current && (M.current.style.opacity = "0"), T.current && (T.current.style.opacity = "0"), E.current.style.width = `${gn[u]}px`));
2517
2517
  }, [
2518
2518
  K,
2519
2519
  c,
2520
- $,
2521
- C,
2520
+ M,
2521
+ x,
2522
2522
  m,
2523
2523
  T,
2524
2524
  u,
2525
- D
2526
- ]), /* @__PURE__ */ M(
2525
+ L
2526
+ ]), /* @__PURE__ */ D(
2527
2527
  nt,
2528
2528
  {
2529
2529
  ref: b,
@@ -2547,7 +2547,7 @@ const fn = {
2547
2547
  wt,
2548
2548
  {
2549
2549
  label: c,
2550
- labelRef: $,
2550
+ labelRef: M,
2551
2551
  labelClass: S,
2552
2552
  labelInnerClass: "pl-2"
2553
2553
  }
@@ -2562,7 +2562,7 @@ const fn = {
2562
2562
  label: r,
2563
2563
  labelInnerClass: a
2564
2564
  }) => /* @__PURE__ */ l("span", { ref: e, className: t, children: r && /* @__PURE__ */ l("span", { className: a, children: r }) });
2565
- Oe.displayName = "ButtonIcon";
2565
+ Pe.displayName = "ButtonIcon";
2566
2566
  /*!
2567
2567
  @versini/ui-button v4.2.4
2568
2568
  © 2025 gizmette.com
@@ -2576,7 +2576,7 @@ try {
2576
2576
  });
2577
2577
  } catch {
2578
2578
  }
2579
- const bn = X.forwardRef(
2579
+ const En = X.forwardRef(
2580
2580
  ({
2581
2581
  children: e,
2582
2582
  mode: t = "system",
@@ -2602,7 +2602,7 @@ const bn = X.forwardRef(
2602
2602
  }
2603
2603
  ) : "";
2604
2604
  return /* @__PURE__ */ l("div", { className: s, children: /* @__PURE__ */ l(
2605
- Oe,
2605
+ Pe,
2606
2606
  {
2607
2607
  className: p("justify-center", r),
2608
2608
  ref: o,
@@ -2614,7 +2614,7 @@ const bn = X.forwardRef(
2614
2614
  ) });
2615
2615
  }
2616
2616
  );
2617
- bn.displayName = "ButtonSort";
2617
+ En.displayName = "ButtonSort";
2618
2618
  /*!
2619
2619
  @versini/ui-card v3.0.13
2620
2620
  © 2025 gizmette.com
@@ -2629,11 +2629,11 @@ try {
2629
2629
  } catch {
2630
2630
  }
2631
2631
  const Ae = "av-card";
2632
- function En(e) {
2632
+ function wn(e) {
2633
2633
  const t = _t();
2634
2634
  return `${e}${t}`;
2635
2635
  }
2636
- const wn = ({
2636
+ const In = ({
2637
2637
  className: e,
2638
2638
  headerClassName: t,
2639
2639
  bodyClassName: r,
@@ -2673,7 +2673,7 @@ const wn = ({
2673
2673
  footer: f
2674
2674
  };
2675
2675
  };
2676
- function In({
2676
+ function Tn({
2677
2677
  id: e,
2678
2678
  content: t,
2679
2679
  userAriaLabelledby: r,
@@ -2681,7 +2681,7 @@ function In({
2681
2681
  }) {
2682
2682
  return typeof t == "string" ? /* @__PURE__ */ l("h2", { id: e, className: a, children: t }) : r ? /* @__PURE__ */ l("div", { className: a, children: t }) : t ? /* @__PURE__ */ l("div", { className: a, id: e, children: t }) : null;
2683
2683
  }
2684
- const Tn = ({
2684
+ const Sn = ({
2685
2685
  header: e,
2686
2686
  headerClassName: t,
2687
2687
  footer: r,
@@ -2696,7 +2696,7 @@ const Tn = ({
2696
2696
  ...u
2697
2697
  }) => {
2698
2698
  let c = null, m = null;
2699
- const y = typeof e == "string", w = En(Ae), I = wn({
2699
+ const y = typeof e == "string", w = wn(Ae), I = In({
2700
2700
  className: o,
2701
2701
  headerClassName: t,
2702
2702
  bodyClassName: s,
@@ -2705,7 +2705,7 @@ const Tn = ({
2705
2705
  compact: h,
2706
2706
  noBorder: f
2707
2707
  });
2708
- return y ? (c = w, m = c) : !y && e && i ? (c = null, m = i) : !y && e && !i ? (c = w, m = c) : (c = null, m = i || null), /* @__PURE__ */ l("div", { className: I.wrapper, children: /* @__PURE__ */ M(
2708
+ return y ? (c = w, m = c) : !y && e && i ? (c = null, m = i) : !y && e && !i ? (c = w, m = c) : (c = null, m = i || null), /* @__PURE__ */ l("div", { className: I.wrapper, children: /* @__PURE__ */ D(
2709
2709
  "section",
2710
2710
  {
2711
2711
  ...m && {
@@ -2715,7 +2715,7 @@ const Tn = ({
2715
2715
  ...u,
2716
2716
  children: [
2717
2717
  /* @__PURE__ */ l(
2718
- In,
2718
+ Tn,
2719
2719
  {
2720
2720
  ...c && { id: c },
2721
2721
  content: e,
@@ -2728,7 +2728,7 @@ const Tn = ({
2728
2728
  ]
2729
2729
  }
2730
2730
  ) });
2731
- }, Ke = ({
2731
+ }, He = ({
2732
2732
  children: e,
2733
2733
  fill: t,
2734
2734
  viewBox: r,
@@ -2740,7 +2740,7 @@ const Tn = ({
2740
2740
  ...d
2741
2741
  }) => {
2742
2742
  const h = p(o, a);
2743
- return /* @__PURE__ */ M(et, { children: [
2743
+ return /* @__PURE__ */ D(Re, { children: [
2744
2744
  /* @__PURE__ */ l(
2745
2745
  "svg",
2746
2746
  {
@@ -2771,14 +2771,14 @@ try {
2771
2771
  });
2772
2772
  } catch {
2773
2773
  }
2774
- const Sn = ({
2774
+ const _n = ({
2775
2775
  className: e,
2776
2776
  viewBox: t,
2777
2777
  title: r,
2778
2778
  monotone: a,
2779
2779
  ...n
2780
2780
  }) => /* @__PURE__ */ l(
2781
- Ke,
2781
+ He,
2782
2782
  {
2783
2783
  defaultViewBox: "0 0 1200 500",
2784
2784
  size: "w-full",
@@ -2788,14 +2788,14 @@ const Sn = ({
2788
2788
  ...n,
2789
2789
  children: /* @__PURE__ */ l("path", { d: "M927.943 30.81c0-2.381-1.191-5.954-3.573-7.145-7.146-4.763-19.055-1.19-26.2 0-17.864 2.382-34.537 4.764-53.592 4.764-26.2 0-53.591-1.19-79.791-4.764-23.819-3.572-44.064-10.718-69.074-3.572-35.727 9.527-58.355 38.109-57.164 75.028 1.191 21.436-2.382 38.109-9.527 57.164-7.146 17.864-15.482 20.245-32.155 20.245-115.52 0-229.848-1.19-345.367 0h-63.119c-29.773 0-59.546 5.955-89.319 0-21.436-4.763-42.873-15.482-58.355-30.964-3.573-3.572-10.718-14.29-14.29-14.29-4.765 1.19-4.765 15.481-4.765 19.054 0 15.482 5.955 30.964 5.955 46.446s-7.145 28.582-11.91 42.873c-4.763 16.673-4.763 33.346-2.381 50.019 4.764 27.39 9.527 55.973 11.91 84.555 2.381 25.01 2.381 48.828 4.763 73.837 2.382 20.246 3.573 29.773 29.773 33.346 30.964 4.764 30.964-5.955 38.11-26.2 9.527-25.01 17.863-51.21 27.39-76.22 8.337-19.054 15.482-60.736 67.883-40.49 28.582 10.718 58.355 16.672 88.128 25.009 32.155 8.336 65.5 16.673 97.655 22.627 65.501 13.1 132.193 20.246 200.075 23.819 7.146 0 11.91 0 16.673 5.954 17.864 22.628-3.573 63.119 41.682 70.265 40.491 5.954 40.491-22.628 45.255-47.637 2.382-14.291 4.764-27.391 8.337-40.492 1.19-5.954 5.954-11.909 10.718-15.481 55.973-33.346 88.128-98.847 78.6-164.347-1.19-10.719-4.763-21.437-3.572-33.346 2.382-23.819 32.155-33.346 50.018-42.873 22.628-13.1 47.637-25.01 66.692-42.873 13.1-11.91 23.818-27.392 29.773-44.064 3.573-5.955 5.955-14.292 4.764-20.246M737.395 190.395c-2.381 25.01-13.1 36.919-35.727 41.682-40.491 8.337-66.692-19.054-54.783-58.355 8.337-26.2 17.864-51.21 29.773-75.028 11.91-23.818 22.628-23.818 36.919-1.19 17.864 28.581 27.391 59.545 23.818 92.891m38.11-109.564c-7.146 0-13.1-5.955-13.1-13.1 0-7.146 5.954-13.1 13.1-13.1 7.145 0 13.1 5.954 13.1 13.1 0 7.145-5.955 13.1-13.1 13.1" })
2790
2790
  }
2791
- ), _n = ({
2791
+ ), kn = ({
2792
2792
  className: e,
2793
2793
  viewBox: t,
2794
2794
  title: r,
2795
2795
  monotone: a,
2796
2796
  ...n
2797
- }) => /* @__PURE__ */ M(
2798
- Ke,
2797
+ }) => /* @__PURE__ */ D(
2798
+ He,
2799
2799
  {
2800
2800
  defaultViewBox: "0 0 640 512",
2801
2801
  size: "size-5",
@@ -2814,7 +2814,7 @@ const Sn = ({
2814
2814
  /* @__PURE__ */ l("path", { d: "M5.1 9.2C13.3-1.2 28.4-3.1 38.8 5.1l592 464c10.4 8.2 12.3 23.3 4.1 33.7s-23.3 12.3-33.7 4.1l-592-464C-1.2 34.7-3.1 19.6 5.1 9.2" })
2815
2815
  ]
2816
2816
  }
2817
- ), kn = ({
2817
+ ), An = ({
2818
2818
  className: e,
2819
2819
  viewBox: t,
2820
2820
  title: r,
@@ -2822,8 +2822,8 @@ const Sn = ({
2822
2822
  ...n
2823
2823
  }) => {
2824
2824
  const o = a ? "1" : "0.4";
2825
- return /* @__PURE__ */ M(
2826
- Ke,
2825
+ return /* @__PURE__ */ D(
2826
+ He,
2827
2827
  {
2828
2828
  defaultViewBox: "0 0 190 190",
2829
2829
  size: "size-5",
@@ -2850,14 +2850,14 @@ const Sn = ({
2850
2850
  ]
2851
2851
  }
2852
2852
  );
2853
- }, An = ({
2853
+ }, Rn = ({
2854
2854
  className: e,
2855
2855
  viewBox: t,
2856
2856
  title: r,
2857
2857
  monotone: a,
2858
2858
  ...n
2859
- }) => /* @__PURE__ */ M(
2860
- Ke,
2859
+ }) => /* @__PURE__ */ D(
2860
+ He,
2861
2861
  {
2862
2862
  defaultViewBox: "0 0 576 512",
2863
2863
  size: "size-5",
@@ -2903,7 +2903,7 @@ try {
2903
2903
  });
2904
2904
  } catch {
2905
2905
  }
2906
- const Rn = "av-main", Nn = ({
2906
+ const Nn = "av-main", vn = ({
2907
2907
  children: e,
2908
2908
  className: t,
2909
2909
  raw: r = !1,
@@ -2911,7 +2911,7 @@ const Rn = "av-main", Nn = ({
2911
2911
  noPadding: n = !1
2912
2912
  }) => {
2913
2913
  const o = p(
2914
- Rn,
2914
+ Nn,
2915
2915
  {
2916
2916
  "mt-2 sm:mt-3": !r && !a,
2917
2917
  "p-2": !r && !n,
@@ -2920,7 +2920,7 @@ const Rn = "av-main", Nn = ({
2920
2920
  t
2921
2921
  );
2922
2922
  return /* @__PURE__ */ l("main", { className: o, children: e });
2923
- }, vn = "av-flexgrid", _e = "av-flexgrid-item", Pe = 0.25, Ze = X.createContext({
2923
+ }, Cn = "av-flexgrid", _e = "av-flexgrid-item", De = 0.25, et = X.createContext({
2924
2924
  columnGap: 0,
2925
2925
  rowGap: 0
2926
2926
  }), xn = ({
@@ -2946,14 +2946,14 @@ const Rn = "av-main", Nn = ({
2946
2946
  * by the columnGap and rowGap that will be applied
2947
2947
  * to all FlexgridItems (see context and paddings).
2948
2948
  */
2949
- marginLeft: r * -1 * Pe + "rem",
2950
- marginTop: a * -1 * Pe + "rem"
2949
+ marginLeft: r * -1 * De + "rem",
2950
+ marginTop: a * -1 * De + "rem"
2951
2951
  }, u = p(
2952
- vn,
2952
+ Cn,
2953
2953
  "box-border flex flex-wrap"
2954
2954
  ), c = { columnGap: r, rowGap: a };
2955
- return t ? /* @__PURE__ */ l("div", { className: t, children: /* @__PURE__ */ l("div", { className: u, style: f, ...h, children: /* @__PURE__ */ l(Ze.Provider, { value: c, children: e }) }) }) : /* @__PURE__ */ l("div", { className: u, style: f, ...h, children: /* @__PURE__ */ l(Ze.Provider, { value: c, children: e }) });
2956
- }, je = (e, t) => p({
2955
+ return t ? /* @__PURE__ */ l("div", { className: t, children: /* @__PURE__ */ l("div", { className: u, style: f, ...h, children: /* @__PURE__ */ l(et.Provider, { value: c, children: e }) }) }) : /* @__PURE__ */ l("div", { className: u, style: f, ...h, children: /* @__PURE__ */ l(et.Provider, { value: c, children: e }) });
2956
+ }, ze = (e, t) => p({
2957
2957
  "basis-1/12": e === 1 && !t,
2958
2958
  "sm:basis-1/12": e === 1 && t === "sm",
2959
2959
  "md:basis-1/12": e === 1 && t === "md",
@@ -3026,7 +3026,7 @@ const Rn = "av-main", Nn = ({
3026
3026
  "lg:basis-full": e === 12 && t === "lg",
3027
3027
  "xl:basis-full": e === 12 && t === "xl",
3028
3028
  "2xl:basis-full": e === 12 && t === "2xl"
3029
- }), Cn = ({
3029
+ }), On = ({
3030
3030
  className: e,
3031
3031
  span: t
3032
3032
  }) => {
@@ -3034,14 +3034,14 @@ const Rn = "av-main", Nn = ({
3034
3034
  return p(e, _e, "box-border basis-auto");
3035
3035
  if (typeof t == "number")
3036
3036
  return p(e, _e, "box-border max-w-full", {
3037
- [`${je(t)}`]: !0
3037
+ [`${ze(t)}`]: !0
3038
3038
  });
3039
3039
  if (typeof t == "string")
3040
3040
  return p(e, _e, "box-border basis-auto", {
3041
3041
  "max-w-full grow": t === "auto"
3042
3042
  });
3043
3043
  if (typeof t == "object") {
3044
- const r = Object.entries(t).map(([a, n]) => a === "fallback" ? je(n) : je(n, a));
3044
+ const r = Object.entries(t).map(([a, n]) => a === "fallback" ? ze(n) : ze(n, a));
3045
3045
  return p(
3046
3046
  e,
3047
3047
  _e,
@@ -3055,10 +3055,10 @@ const Rn = "av-main", Nn = ({
3055
3055
  span: r,
3056
3056
  ...a
3057
3057
  }) => {
3058
- const { columnGap: n, rowGap: o } = St(Ze), s = {
3059
- paddingLeft: n * Pe + "rem",
3060
- paddingTop: o * Pe + "rem"
3061
- }, i = Cn({
3058
+ const { columnGap: n, rowGap: o } = St(et), s = {
3059
+ paddingLeft: n * De + "rem",
3060
+ paddingTop: o * De + "rem"
3061
+ }, i = On({
3062
3062
  className: t,
3063
3063
  span: r
3064
3064
  });
@@ -3077,14 +3077,14 @@ try {
3077
3077
  });
3078
3078
  } catch {
3079
3079
  }
3080
- const Zt = "av-text-input", On = "av-text-input-wrapper", ze = "av-text-input-helper-text";
3081
- function Pn() {
3082
- const e = x(!1);
3080
+ const Zt = "av-text-input", Pn = "av-text-input-wrapper", qe = "av-text-input-helper-text";
3081
+ function Dn() {
3082
+ const e = C(!1);
3083
3083
  return Y(() => (e.current = !0, () => {
3084
3084
  e.current = !1;
3085
3085
  }), []), q(() => e.current, []);
3086
3086
  }
3087
- const Dn = {
3087
+ const Ln = {
3088
3088
  x: 0,
3089
3089
  y: 0,
3090
3090
  width: 0,
@@ -3094,8 +3094,8 @@ const Dn = {
3094
3094
  bottom: 0,
3095
3095
  right: 0
3096
3096
  };
3097
- function Ln(e) {
3098
- const t = Pn(), r = x(0), a = x(null), [n, o] = z(Dn), s = De(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
3097
+ function $n(e) {
3098
+ const t = Dn(), r = C(0), a = C(null), [n, o] = z(Ln), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
3099
3099
  const d = i[0];
3100
3100
  d && (cancelAnimationFrame(r.current), r.current = requestAnimationFrame(() => {
3101
3101
  a.current && t() && o(d.contentRect);
@@ -3105,7 +3105,7 @@ function Ln(e) {
3105
3105
  s == null || s.disconnect(), r.current && cancelAnimationFrame(r.current);
3106
3106
  }), [s, e]), [a, n];
3107
3107
  }
3108
- function $n(e) {
3108
+ function Mn(e) {
3109
3109
  const t = _t();
3110
3110
  if (!e)
3111
3111
  return t;
@@ -3116,7 +3116,7 @@ function $n(e) {
3116
3116
  return typeof r == "number" || typeof r == "string" ? `${a}${r}` : `${a}${t}`;
3117
3117
  }
3118
3118
  }
3119
- const er = "SET_ANNOUNCEMENT", tr = "CLEAR_ANNOUNCEMENT", Mn = {
3119
+ const er = "SET_ANNOUNCEMENT", tr = "CLEAR_ANNOUNCEMENT", Un = {
3120
3120
  alert: null,
3121
3121
  alertdialog: null,
3122
3122
  log: "polite",
@@ -3124,7 +3124,7 @@ const er = "SET_ANNOUNCEMENT", tr = "CLEAR_ANNOUNCEMENT", Mn = {
3124
3124
  progressbar: null,
3125
3125
  status: "polite",
3126
3126
  timer: "assertive"
3127
- }, Un = (e, t) => {
3127
+ }, Kn = (e, t) => {
3128
3128
  switch (t == null ? void 0 : t.type) {
3129
3129
  case er:
3130
3130
  return {
@@ -3139,7 +3139,7 @@ const er = "SET_ANNOUNCEMENT", tr = "CLEAR_ANNOUNCEMENT", Mn = {
3139
3139
  default:
3140
3140
  return e;
3141
3141
  }
3142
- }, Kn = ({
3142
+ }, Hn = ({
3143
3143
  onAnnouncementClear: e,
3144
3144
  dispatch: t
3145
3145
  }) => {
@@ -3157,13 +3157,13 @@ const er = "SET_ANNOUNCEMENT", tr = "CLEAR_ANNOUNCEMENT", Mn = {
3157
3157
  type: er,
3158
3158
  payload: e
3159
3159
  }), t && (r.current = setTimeout(
3160
- () => Kn({
3160
+ () => Hn({
3161
3161
  onAnnouncementClear: a,
3162
3162
  dispatch: n
3163
3163
  }),
3164
3164
  t
3165
3165
  ));
3166
- }, Hn = ({
3166
+ }, Wn = ({
3167
3167
  children: e,
3168
3168
  announcementTimeoutRef: t,
3169
3169
  announcementDelay: r,
@@ -3197,12 +3197,12 @@ function rr({
3197
3197
  visible: i,
3198
3198
  ...d
3199
3199
  }) {
3200
- const h = x(null), f = x(null), [u, c] = Tt(Un, {
3200
+ const h = C(null), f = C(null), [u, c] = Tt(Kn, {
3201
3201
  announcement: null
3202
3202
  });
3203
3203
  let m = r;
3204
- typeof m > "u" && (m = a ? Mn[a] : "assertive"), Y(() => {
3205
- Hn({
3204
+ typeof m > "u" && (m = a ? Un[a] : "assertive"), Y(() => {
3205
+ Wn({
3206
3206
  announcementTimeoutRef: h,
3207
3207
  announcementDelay: n,
3208
3208
  children: e,
@@ -3244,21 +3244,21 @@ try {
3244
3244
  });
3245
3245
  } catch {
3246
3246
  }
3247
- const Wn = ({
3247
+ const Bn = ({
3248
3248
  mode: e
3249
3249
  }) => p({
3250
3250
  "bg-surface-darker text-copy-lighter caret-copy-light": e === "dark",
3251
3251
  "bg-surface-lighter text-copy-dark caret-copy-dark": e === "light",
3252
3252
  "bg-surface-lighter text-copy-dark caret-copy-dark dark:bg-surface-darker dark:text-copy-lighter dark:caret-copy-light": e === "system",
3253
3253
  "bg-surface-darker text-copy-lighter caret-copy-light dark:bg-surface-lighter dark:text-copy-dark dark:caret-copy-dark": e === "alt-system"
3254
- }), Bn = ({
3254
+ }), Gn = ({
3255
3255
  focusMode: e
3256
3256
  }) => p("focus:outline focus:outline-2 focus:outline-offset-2", {
3257
3257
  "focus:outline-focus-dark": e === "dark",
3258
3258
  "focus:outline-focus-light": e === "light",
3259
3259
  "focus:outline-focus-light dark:focus:outline-focus-dark": e === "alt-system",
3260
3260
  "focus:outline-focus-dark dark:focus:outline-focus-light": e === "system"
3261
- }), Gn = ({
3261
+ }), Jn = ({
3262
3262
  noBorder: e,
3263
3263
  error: t
3264
3264
  }) => p("border-2", {
@@ -3266,7 +3266,7 @@ const Wn = ({
3266
3266
  "focus:border-border-dark": !e && t,
3267
3267
  "border-border-error-dark": !e && t,
3268
3268
  "border-transparent": e
3269
- }), Jn = ({
3269
+ }), Vn = ({
3270
3270
  disabled: e,
3271
3271
  raw: t,
3272
3272
  error: r,
@@ -3290,7 +3290,7 @@ const Wn = ({
3290
3290
  "text-copy-error-dark dark:text-copy-error-light dark:bg-surface-darker": a === "system",
3291
3291
  "text-copy-lighter dark:text-copy-error-dark": a === "alt-system"
3292
3292
  });
3293
- }, Vn = ({
3293
+ }, Yn = ({
3294
3294
  error: e,
3295
3295
  raw: t,
3296
3296
  mode: r,
@@ -3300,24 +3300,24 @@ const Wn = ({
3300
3300
  return "";
3301
3301
  if (a)
3302
3302
  return p(
3303
- ze,
3303
+ qe,
3304
3304
  "absolute px-2 cursor-not-allowed opacity-50 font-medium"
3305
3305
  );
3306
3306
  if (!e)
3307
- return p(ze, "absolute px-2 font-medium", {
3307
+ return p(qe, "absolute px-2 font-medium", {
3308
3308
  "text-copy-lighter": r === "dark",
3309
3309
  "text-copy-dark": r === "light",
3310
3310
  "text-copy-dark dark:text-copy-lighter": r === "system",
3311
3311
  "text-copy-lighter dark:text-copy-dark": r === "alt-system"
3312
3312
  });
3313
3313
  if (e)
3314
- return p(ze, "absolute px-2 font-medium", {
3314
+ return p(qe, "absolute px-2 font-medium", {
3315
3315
  "text-copy-error-light bg-surface-darker": r === "dark",
3316
3316
  "text-copy-error-dark": r === "light",
3317
3317
  "text-copy-error-dark dark:text-copy-error-light dark:bg-surface-darker": r === "system",
3318
3318
  "dark:text-copy-error-dark text-copy-error-light bg-surface-darker": r === "alt-system"
3319
3319
  });
3320
- }, Yn = ({
3320
+ }, Fn = ({
3321
3321
  className: e,
3322
3322
  inputClassName: t,
3323
3323
  raw: r,
@@ -3331,7 +3331,7 @@ const Wn = ({
3331
3331
  }) => {
3332
3332
  const f = r ? e : p(
3333
3333
  "relative flex w-full flex-col justify-center",
3334
- On,
3334
+ Pn,
3335
3335
  e
3336
3336
  );
3337
3337
  let u = "";
@@ -3356,19 +3356,19 @@ const Wn = ({
3356
3356
  Zt,
3357
3357
  u,
3358
3358
  "rounded-md text-base px-4",
3359
- Wn({ mode: s }),
3360
- Bn({ focusMode: i }),
3361
- Gn({ noBorder: n, error: o }),
3359
+ Bn({ mode: s }),
3360
+ Gn({ focusMode: i }),
3361
+ Jn({ noBorder: n, error: o }),
3362
3362
  {
3363
3363
  "disabled:cursor-not-allowed disabled:opacity-50": a
3364
3364
  },
3365
3365
  t
3366
- ), m = r ? void 0 : "sr-only", y = Jn({
3366
+ ), m = r ? void 0 : "sr-only", y = Vn({
3367
3367
  disabled: a,
3368
3368
  raw: r,
3369
3369
  error: o,
3370
3370
  mode: s
3371
- }), w = Vn({
3371
+ }), w = Yn({
3372
3372
  error: o,
3373
3373
  raw: r,
3374
3374
  mode: s,
@@ -3403,14 +3403,14 @@ const Wn = ({
3403
3403
  rightElementClassName: I,
3404
3404
  size: k = "md",
3405
3405
  ...Q
3406
- }, D) => {
3407
- const [Z, L] = Ln(), [B, U] = z(0), S = $n({ id: e, prefix: `${Zt}-` }), $ = `${t} error, ${y}`, K = x(null), T = x(null), C = {
3406
+ }, L) => {
3407
+ const [Z, $] = $n(), [B, U] = z(0), S = Mn({ id: e, prefix: `${Zt}-` }), M = `${t} error, ${y}`, K = C(null), T = C(null), x = {
3408
3408
  xs: { label: "-25px", helperText: "30px" },
3409
3409
  sm: { label: "-29px", helperText: "34px" },
3410
3410
  md: { label: "-33px", helperText: "38px" },
3411
3411
  lg: { label: "-15px", helperText: "22px" },
3412
3412
  xl: { label: "-19px", helperText: "25px" }
3413
- }, O = Yn({
3413
+ }, O = Fn({
3414
3414
  className: o,
3415
3415
  inputClassName: s,
3416
3416
  error: a,
@@ -3422,16 +3422,16 @@ const Wn = ({
3422
3422
  size: k,
3423
3423
  rightElementClassName: I
3424
3424
  });
3425
- return Re(() => {
3426
- L && L.width && U(L.width + 18 + 10);
3427
- }, [L]), Re(() => {
3425
+ return Ne(() => {
3426
+ $ && $.width && U($.width + 18 + 10);
3427
+ }, [$]), Ne(() => {
3428
3428
  var G, g;
3429
- const { label: E, helperText: b } = C[k];
3429
+ const { label: E, helperText: b } = x[k];
3430
3430
  (G = K == null ? void 0 : K.current) == null || G.style.setProperty("--av-text-input-label", E), (g = T == null ? void 0 : T.current) == null || g.style.setProperty(
3431
3431
  "--av-text-input-helper-text",
3432
3432
  b
3433
3433
  );
3434
- }, [k]), /* @__PURE__ */ M("div", { className: O.wrapper, children: [
3434
+ }, [k]), /* @__PURE__ */ D("div", { className: O.wrapper, children: [
3435
3435
  /* @__PURE__ */ l(
3436
3436
  "label",
3437
3437
  {
@@ -3444,7 +3444,7 @@ const Wn = ({
3444
3444
  /* @__PURE__ */ l(
3445
3445
  "input",
3446
3446
  {
3447
- ref: D,
3447
+ ref: L,
3448
3448
  id: S,
3449
3449
  name: t,
3450
3450
  type: m,
@@ -3484,20 +3484,20 @@ const Wn = ({
3484
3484
  children: w
3485
3485
  }
3486
3486
  ),
3487
- a && y && /* @__PURE__ */ l(rr, { politeness: "polite", clearAnnouncementDelay: 500, children: $ })
3487
+ a && y && /* @__PURE__ */ l(rr, { politeness: "polite", clearAnnouncementDelay: 500, children: M })
3488
3488
  ] });
3489
3489
  }
3490
3490
  );
3491
3491
  ot.displayName = "TextInput";
3492
- function Fn(e) {
3493
- return De(() => e.every((t) => t == null) ? () => {
3492
+ function jn(e) {
3493
+ return Le(() => e.every((t) => t == null) ? () => {
3494
3494
  } : (t) => {
3495
3495
  e.forEach((r) => {
3496
3496
  typeof r == "function" ? r(t) : r != null && (r.current = t);
3497
3497
  });
3498
3498
  }, e);
3499
3499
  }
3500
- const jn = 500, zn = 5e3, qn = 2e4, ar = X.forwardRef(
3500
+ const zn = 500, qn = 5e3, Xn = 2e4, ar = X.forwardRef(
3501
3501
  ({
3502
3502
  name: e,
3503
3503
  disabled: t,
@@ -3514,47 +3514,47 @@ const jn = 500, zn = 5e3, qn = 2e4, ar = X.forwardRef(
3514
3514
  const [c, m] = z(!0), [y, w] = z({
3515
3515
  message: null,
3516
3516
  politeness: null
3517
- }), I = x(!0), k = x(null), Q = x(null), D = Fn([u, Q]), Z = c ? "Show" : "Hide", L = () => {
3517
+ }), I = C(!0), k = C(null), Q = C(null), L = jn([u, Q]), Z = c ? "Show" : "Hide", $ = () => {
3518
3518
  k.current && clearTimeout(k.current), I.current || (k.current = setTimeout(() => {
3519
3519
  I.current = !0, m(!0), w({
3520
- announcementTimeout: zn,
3520
+ announcementTimeout: qn,
3521
3521
  politeness: "polite",
3522
3522
  message: `${r} hiding characters`
3523
3523
  }), n && n(!0);
3524
- }, qn));
3524
+ }, Xn));
3525
3525
  }, B = (T) => {
3526
3526
  T.preventDefault();
3527
- const C = !I.current;
3528
- I.current = C, L(), m(C), w({
3529
- announcementTimeout: jn,
3527
+ const x = !I.current;
3528
+ I.current = x, $(), m(x), w({
3529
+ announcementTimeout: zn,
3530
3530
  politeness: "assertive",
3531
- message: C ? "Characters hidden" : "Characters showing"
3532
- }), n && n(C);
3531
+ message: x ? "Characters hidden" : "Characters showing"
3532
+ }), n && n(x);
3533
3533
  }, U = (T) => {
3534
- var C;
3535
- const { relatedTarget: O } = T, G = (C = Q.current) == null ? void 0 : C.parentElement;
3534
+ var x;
3535
+ const { relatedTarget: O } = T, G = (x = Q.current) == null ? void 0 : x.parentElement;
3536
3536
  G != null && G.contains(O) || d && d();
3537
3537
  }, S = (T) => {
3538
- L(), s && s(T), U(T);
3539
- }, $ = (T) => {
3540
- L(), i && i(T);
3538
+ $(), s && s(T), U(T);
3539
+ }, M = (T) => {
3540
+ $(), i && i(T);
3541
3541
  }, K = (T) => {
3542
- L(), o && o(T);
3542
+ $(), o && o(T);
3543
3543
  };
3544
3544
  return Y(() => () => {
3545
3545
  k.current && clearTimeout(k.current);
3546
- }, []), /* @__PURE__ */ M(et, { children: [
3546
+ }, []), /* @__PURE__ */ D(Re, { children: [
3547
3547
  /* @__PURE__ */ l(
3548
3548
  ot,
3549
3549
  {
3550
- ref: D,
3550
+ ref: L,
3551
3551
  name: e,
3552
3552
  label: r,
3553
3553
  labelHidden: a,
3554
3554
  type: c ? "password" : "text",
3555
3555
  disabled: t,
3556
3556
  onBlur: S,
3557
- onFocus: $,
3557
+ onFocus: M,
3558
3558
  onChange: K,
3559
3559
  rightElement: X.cloneElement(h, {
3560
3560
  ref: u,
@@ -3592,7 +3592,7 @@ try {
3592
3592
  });
3593
3593
  } catch {
3594
3594
  }
3595
- const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in with a Passkey", Zo = "Log out", eo = "Password", es = "Profile", ts = "Settings", rs = "Chat history", as = "About", ns = "Type your question here", os = "{{clipboard}}", ss = `Sometimes, ${nr} hallucinates. Review important details.`, is = "Prompts are pre-filled buttons available on the main screen, to help you quickly start requests. The label is used for the button, and the content is what will be inserted in the chat when the button is pressed. You can use the special placeholder {{clipboard}} to automatically insert the content of your clipboard.", cs = {
3595
+ const Qn = "ASK! ME! ANYTHING!", nr = "Callisto", Zn = "Log in", eo = "Sign in with a Passkey", es = "Log out", to = "Password", ts = "Profile", rs = "Settings", as = "Chat history", ns = "About", os = "Type your question here", ss = "{{clipboard}}", is = `Sometimes, ${nr} hallucinates. Review important details.`, cs = "Prompts are pre-filled buttons available on the main screen, to help you quickly start requests. The label is used for the button, and the content is what will be inserted in the chat when the button is pressed. You can use the special placeholder {{clipboard}} to automatically insert the content of your clipboard.", ls = {
3596
3596
  PREFERENCES: {
3597
3597
  TITLE: "User profile",
3598
3598
  NAME: "Name",
@@ -3629,13 +3629,13 @@ const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in w
3629
3629
  SETTINGS_ENGINE: {
3630
3630
  TITLE: "AI Engine"
3631
3631
  }
3632
- }, to = () => /* @__PURE__ */ M("div", { className: "flex items-center justify-center", children: [
3633
- /* @__PURE__ */ l("div", { className: "basis-1/4", children: /* @__PURE__ */ l(Sn, {}) }),
3634
- /* @__PURE__ */ M("div", { className: "prose prose-sm prose-light md:prose-base prose-h1:mb-0 prose-h2:mt-0", children: [
3632
+ }, ro = () => /* @__PURE__ */ D("div", { className: "flex items-center justify-center", children: [
3633
+ /* @__PURE__ */ l("div", { className: "basis-1/4", children: /* @__PURE__ */ l(_n, {}) }),
3634
+ /* @__PURE__ */ D("div", { className: "prose prose-sm prose-light md:prose-base prose-h1:mb-0 prose-h2:mt-0", children: [
3635
3635
  /* @__PURE__ */ l("h1", { children: nr }),
3636
- /* @__PURE__ */ l("h2", { children: Xn })
3636
+ /* @__PURE__ */ l("h2", { children: Qn })
3637
3637
  ] })
3638
- ] }), ro = () => {
3638
+ ] }), ao = () => {
3639
3639
  const { login: e, logoutReason: t, loginWithPasskey: r } = qt(), [a, n] = z(""), [o, s] = z(""), [i, d] = z(!0), [h, f] = z({
3640
3640
  username: "",
3641
3641
  password: ""
@@ -3650,8 +3650,8 @@ const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in w
3650
3650
  }, 500);
3651
3651
  }), Y(() => {
3652
3652
  t && s(t);
3653
- }, [t]), /* @__PURE__ */ l(et, { children: /* @__PURE__ */ M(
3654
- Nn,
3653
+ }, [t]), /* @__PURE__ */ l(Re, { children: /* @__PURE__ */ D(
3654
+ vn,
3655
3655
  {
3656
3656
  className: Qa({
3657
3657
  extraClass: "mt-5"
@@ -3665,10 +3665,10 @@ const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in w
3665
3665
  className: Xa({
3666
3666
  extraClass: "rounded-md"
3667
3667
  }),
3668
- children: /* @__PURE__ */ l(to, {})
3668
+ children: /* @__PURE__ */ l(ro, {})
3669
3669
  }
3670
3670
  ),
3671
- /* @__PURE__ */ l("form", { className: "mt-5", onSubmit: u, children: /* @__PURE__ */ l(xn, { alignHorizontal: "center", children: /* @__PURE__ */ l(re, { span: 6, children: /* @__PURE__ */ M(Tn, { mode: "dark", children: [
3671
+ /* @__PURE__ */ l("form", { className: "mt-5", onSubmit: u, children: /* @__PURE__ */ l(xn, { alignHorizontal: "center", children: /* @__PURE__ */ l(re, { span: 6, children: /* @__PURE__ */ D(Sn, { mode: "dark", children: [
3672
3672
  /* @__PURE__ */ l(re, { span: 12, className: "mt-7", children: o && /* @__PURE__ */ l("div", { className: "p-2 text-sm text-center text-copy-error-light bg-surface-darker", children: o }) }),
3673
3673
  /* @__PURE__ */ l(re, { span: 12, children: /* @__PURE__ */ l(
3674
3674
  ot,
@@ -3702,14 +3702,14 @@ const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in w
3702
3702
  mode: "dark",
3703
3703
  focusMode: "light",
3704
3704
  name: "password",
3705
- label: eo,
3705
+ label: to,
3706
3706
  rightElement: /* @__PURE__ */ l(
3707
- Oe,
3707
+ Pe,
3708
3708
  {
3709
3709
  focusMode: "light",
3710
3710
  mode: "dark",
3711
3711
  label: i ? "Show" : "Hide",
3712
- children: i ? /* @__PURE__ */ l(An, {}) : /* @__PURE__ */ l(_n, {})
3712
+ children: i ? /* @__PURE__ */ l(Rn, {}) : /* @__PURE__ */ l(kn, {})
3713
3713
  }
3714
3714
  ),
3715
3715
  onMaskChange: d,
@@ -3732,97 +3732,100 @@ const Xn = "ASK! ME! ANYTHING!", nr = "Callisto", Qn = "Log in", Zn = "Sign in w
3732
3732
  noBorder: !0,
3733
3733
  type: "submit",
3734
3734
  className: "mt-7",
3735
- children: Qn
3735
+ children: Zn
3736
3736
  }
3737
3737
  ) }),
3738
- /* @__PURE__ */ l(re, { span: 12, children: /* @__PURE__ */ l("div", { className: "text-center text-copy-light mt-2 mb-2", children: "or" }) }),
3739
- /* @__PURE__ */ l(re, { span: 12, children: /* @__PURE__ */ l(
3740
- Oe,
3741
- {
3742
- variant: "selected",
3743
- mode: "dark",
3744
- focusMode: "light",
3745
- fullWidth: !0,
3746
- className: "mb-4",
3747
- labelRight: Zn,
3748
- onClick: r,
3749
- children: /* @__PURE__ */ l(kn, { size: "size-7" })
3750
- }
3751
- ) })
3738
+ !Za() && /* @__PURE__ */ D(Re, { children: [
3739
+ /* @__PURE__ */ l(re, { span: 12, children: /* @__PURE__ */ l("div", { className: "text-center text-copy-light mt-2 mb-2", children: "or" }) }),
3740
+ /* @__PURE__ */ l(re, { span: 12, children: /* @__PURE__ */ l(
3741
+ Pe,
3742
+ {
3743
+ variant: "selected",
3744
+ mode: "dark",
3745
+ focusMode: "light",
3746
+ fullWidth: !0,
3747
+ className: "mb-4",
3748
+ labelRight: eo,
3749
+ onClick: r,
3750
+ children: /* @__PURE__ */ l(An, { size: "size-7" })
3751
+ }
3752
+ ) })
3753
+ ] })
3752
3754
  ] }) }) }) })
3753
3755
  ]
3754
3756
  }
3755
3757
  ) });
3756
- }, ao = new URL(document.location.href).searchParams, no = !!ao.get("debug") || !1, oo = cr(() => import(
3758
+ }, no = new URL(document.location.href).searchParams, oo = !!no.get("debug") || !1, so = cr(() => import(
3757
3759
  /* webpackChunkName: "LazyApp" */
3758
- "./App.DxiuLsPO.js"
3759
- ).then((e) => e.App)), so = ({ isComponent: e }) => {
3760
+ "./App.BNzZ9HLl.js"
3761
+ ).then((e) => e.App)), io = ({ isComponent: e }) => {
3760
3762
  const { isAuthenticated: t } = qt();
3761
- return t ? /* @__PURE__ */ l(lr, { fallback: /* @__PURE__ */ l("div", {}), children: /* @__PURE__ */ l(oo, { isComponent: e }) }) : /* @__PURE__ */ l(ro, {});
3762
- }, io = ({
3763
+ return t ? /* @__PURE__ */ l(lr, { fallback: /* @__PURE__ */ l("div", {}), children: /* @__PURE__ */ l(so, { isComponent: e }) }) : /* @__PURE__ */ l(ao, {});
3764
+ }, co = ({
3763
3765
  isComponent: e = !1,
3764
3766
  domain: t = qa
3765
- }) => /* @__PURE__ */ l(Ua, { clientId: Ka, domain: t, debug: no, children: /* @__PURE__ */ l(so, { isComponent: e }) }), ls = ({ domain: e }) => /* @__PURE__ */ l(io, { isComponent: !0, domain: e });
3767
+ }) => /* @__PURE__ */ l(Ua, { clientId: Ka, domain: t, debug: oo, children: /* @__PURE__ */ l(io, { isComponent: e }) }), ds = ({ domain: e }) => /* @__PURE__ */ l(co, { isComponent: !0, domain: e });
3766
3768
  export {
3767
- as as ABOUT_TITLE,
3768
- Ro as ACTION_MESSAGE,
3769
- vo as ACTION_MODEL,
3770
- No as ACTION_RESET,
3771
- Lo as ACTION_RESET_PROMPT,
3769
+ ns as ABOUT_TITLE,
3770
+ No as ACTION_MESSAGE,
3771
+ Co as ACTION_MODEL,
3772
+ vo as ACTION_RESET,
3773
+ $o as ACTION_RESET_PROMPT,
3772
3774
  xo as ACTION_RESTORE,
3773
- Oo as ACTION_SEARCH,
3774
- Po as ACTION_SORT,
3775
- Co as ACTION_STREAMING,
3776
- Do as ACTION_TOGGLE_PROMPT,
3775
+ Po as ACTION_SEARCH,
3776
+ Do as ACTION_SORT,
3777
+ Oo as ACTION_STREAMING,
3778
+ Lo as ACTION_TOGGLE_PROMPT,
3777
3779
  nr as APP_NAME,
3778
3780
  Qt as C,
3779
- cs as CARDS,
3780
- os as CLIPBOARD_PROMPT,
3781
- _o as DEFAULT_AI_ENGINE,
3782
- Yo as DEFAULT_ICON_ACTION_SIZE,
3783
- Ao as ENGINE_ANTHROPIC,
3784
- ko as ENGINE_OPENAI,
3785
- So as ERROR_MESSAGE,
3786
- ss as FOOTER_DISCLAIMER,
3787
- rs as HISTORY_TITLE,
3788
- Go as INFINITE_SCROLL_LIMIT,
3789
- Bo as INFINITE_SCROLL_THRESHOLD,
3781
+ ls as CARDS,
3782
+ ss as CLIPBOARD_PROMPT,
3783
+ ko as DEFAULT_AI_ENGINE,
3784
+ Fo as DEFAULT_ICON_ACTION_SIZE,
3785
+ Ro as ENGINE_ANTHROPIC,
3786
+ Ao as ENGINE_OPENAI,
3787
+ _o as ERROR_MESSAGE,
3788
+ is as FOOTER_DISCLAIMER,
3789
+ as as HISTORY_TITLE,
3790
+ Jo as INFINITE_SCROLL_LIMIT,
3791
+ Go as INFINITE_SCROLL_THRESHOLD,
3790
3792
  xn as L,
3791
- Mo as LOCAL_STORAGE_CHAT_DETAILS,
3792
- $o as LOCAL_STORAGE_PREFIX,
3793
- Ho as LOCAL_STORAGE_PRIVATE_DISCLOSURE,
3794
- Uo as LOCAL_STORAGE_SEARCH,
3795
- Ko as LOCAL_STORAGE_SORT,
3796
- Zo as LOG_OUT,
3797
- to as Logo,
3793
+ Uo as LOCAL_STORAGE_CHAT_DETAILS,
3794
+ Mo as LOCAL_STORAGE_PREFIX,
3795
+ Wo as LOCAL_STORAGE_PRIVATE_DISCLOSURE,
3796
+ Ko as LOCAL_STORAGE_SEARCH,
3797
+ Ho as LOCAL_STORAGE_SORT,
3798
+ es as LOG_OUT,
3799
+ ro as Logo,
3798
3800
  me as M,
3799
- es as PROFILE_TITLE,
3800
- is as PROMPTS_DESCRIPTION,
3801
- Jo as PROMPT_CLASSNAME,
3802
- Vo as PROMPT_EDITABLE_AREA_CLASSNAME,
3803
- Tn as R,
3804
- Eo as ROLE_ASSISTANT,
3805
- To as ROLE_HIDDEN,
3806
- Io as ROLE_INTERNAL,
3807
- wo as ROLE_SYSTEM,
3808
- bo as ROLE_USER,
3809
- ts as SETTINGS_TITLE,
3810
- Wo as STATS_SEPARATOR,
3811
- ls as SassySaint,
3812
- ns as TYPE_QUESTION,
3813
- Qo as debounce,
3814
- qo as durationFormatter,
3815
- Ke as f,
3801
+ ts as PROFILE_TITLE,
3802
+ cs as PROMPTS_DESCRIPTION,
3803
+ Vo as PROMPT_CLASSNAME,
3804
+ Yo as PROMPT_EDITABLE_AREA_CLASSNAME,
3805
+ Sn as R,
3806
+ wo as ROLE_ASSISTANT,
3807
+ So as ROLE_HIDDEN,
3808
+ To as ROLE_INTERNAL,
3809
+ Io as ROLE_SYSTEM,
3810
+ Eo as ROLE_USER,
3811
+ rs as SETTINGS_TITLE,
3812
+ Bo as STATS_SEPARATOR,
3813
+ ds as SassySaint,
3814
+ os as TYPE_QUESTION,
3815
+ Zo as debounce,
3816
+ Xo as durationFormatter,
3817
+ He as f,
3816
3818
  ot as fe,
3817
- Fo as getCurrentGeoLocation,
3819
+ jo as getCurrentGeoLocation,
3818
3820
  Qa as getMainPaddingClass,
3819
3821
  Xa as getMessageContaintWrapperClass,
3820
- zo as isLastMessageFromRole,
3822
+ Za as isElectron,
3823
+ qo as isLastMessageFromRole,
3821
3824
  re as j,
3822
- kn as l,
3823
- Xo as pluralize,
3824
- Nn as r,
3825
- Oe as re,
3826
- jo as renderDataAsList,
3825
+ An as l,
3826
+ Qo as pluralize,
3827
+ vn as r,
3828
+ Pe as re,
3829
+ zo as renderDataAsList,
3827
3830
  qt as un
3828
3831
  };