@versini/sassysaint 7.1.7 → 7.2.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,6 +1,6 @@
1
1
  import { jsx as Ve, jsxs as P0, Fragment as ka } from "react/jsx-runtime";
2
- import { convert as _s, getDefaultExportFromCjs as Ss, visit as Na, find as ks, parse as kn, parse$1 as Nn, normalize as Tn, svg as Ns, html as Ts, visitParents as As, SKIP as Ms, longestStreak as Os, factorySpace as _r, markdownLineEnding as Vt, Markdown as Rs, remarkGfm as Cs } from "./ChatBubbleAssistant.rvXLFo_B.js";
3
- import { re as Is, L as Ds, j as Ls } from "./index.DAXcx2b2.js";
2
+ import { convert as _s, getDefaultExportFromCjs as Ss, visit as Na, find as ks, parse as kn, parse$1 as Nn, normalize as Tn, svg as Ns, html as Ts, visitParents as As, SKIP as Ms, longestStreak as Os, factorySpace as _r, markdownLineEnding as Vt, Markdown as Rs, remarkGfm as Cs } from "./ChatBubbleAssistant.DOnx5Cnk.js";
3
+ import { re as Is, L as Ds, j as Ls } from "./index.B3-UOQNr.js";
4
4
  import zs, { useState as Bs, useEffect as Fs } from "react";
5
5
  import Ps from "clsx";
6
6
  const Ta = ({
@@ -1,5 +1,5 @@
1
1
  import { jsx as d, jsxs as $, Fragment as Ne } from "react/jsx-runtime";
2
- import X, { createContext as dr, useReducer as At, useRef as C, useCallback as q, useEffect as G, useContext as Rt, useSyncExternalStore as ur, useLayoutEffect as ve, useMemo as Le, useState as z, useId as Nt, lazy as mr, Suspense as hr } from "react";
2
+ import X, { createContext as dr, useReducer as At, useRef as O, useCallback as q, useEffect as G, useContext as Rt, useSyncExternalStore as ur, useLayoutEffect as ve, useMemo as Le, useState as z, useId as Nt, lazy as mr, Suspense as hr } from "react";
3
3
  import p from "clsx";
4
4
  var pr = Object.defineProperty, fr = (e, t, r) => t in e ? pr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, We = (e, t, r) => fr(e, typeof t != "symbol" ? t + "" : t, r);
5
5
  /*!
@@ -141,8 +141,8 @@ class yr {
141
141
  }
142
142
  }
143
143
  }
144
- const Ct = new yr(), br = ["cross-platform", "platform"];
145
- function Ot(e) {
144
+ const Ot = new yr(), br = ["cross-platform", "platform"];
145
+ function Ct(e) {
146
146
  if (e && !(br.indexOf(e) < 0))
147
147
  return e;
148
148
  }
@@ -159,7 +159,7 @@ async function Er(e) {
159
159
  },
160
160
  excludeCredentials: (m = e.excludeCredentials) == null ? void 0 : m.map(vt)
161
161
  } };
162
- t.signal = Ct.createNewAbortSignal();
162
+ t.signal = Ot.createNewAbortSignal();
163
163
  let r;
164
164
  try {
165
165
  r = await navigator.credentials.create(t);
@@ -206,7 +206,7 @@ async function Er(e) {
206
206
  },
207
207
  type: s,
208
208
  clientExtensionResults: r.getClientExtensionResults(),
209
- authenticatorAttachment: Ot(r.authenticatorAttachment)
209
+ authenticatorAttachment: Ct(r.authenticatorAttachment)
210
210
  };
211
211
  }
212
212
  function Be(e, t) {
@@ -278,7 +278,7 @@ async function Tr(e, t = !1) {
278
278
  throw Error('No <input> with "webauthn" as the only or last value in its `autocomplete` attribute was detected');
279
279
  n.mediation = "conditional", a.allowCredentials = [];
280
280
  }
281
- n.publicKey = a, n.signal = Ct.createNewAbortSignal();
281
+ n.publicKey = a, n.signal = Ot.createNewAbortSignal();
282
282
  let o;
283
283
  try {
284
284
  o = await navigator.credentials.get(n);
@@ -300,7 +300,7 @@ async function Tr(e, t = !1) {
300
300
  },
301
301
  type: f,
302
302
  clientExtensionResults: o.getClientExtensionResults(),
303
- authenticatorAttachment: Ot(o.authenticatorAttachment)
303
+ authenticatorAttachment: Ct(o.authenticatorAttachment)
304
304
  };
305
305
  }
306
306
  /*!
@@ -446,18 +446,18 @@ class xr extends D {
446
446
  }
447
447
  }
448
448
  xr.code = "ERR_JWKS_NO_MATCHING_KEY";
449
- class Cr extends D {
449
+ class Or extends D {
450
450
  constructor(t = "multiple matching keys found in the JSON Web Key Set", r) {
451
451
  super(t, r), this.code = "ERR_JWKS_MULTIPLE_MATCHING_KEYS";
452
452
  }
453
453
  }
454
- Cr.code = "ERR_JWKS_MULTIPLE_MATCHING_KEYS";
455
- class Or extends D {
454
+ Or.code = "ERR_JWKS_MULTIPLE_MATCHING_KEYS";
455
+ class Cr extends D {
456
456
  constructor(t = "request timed out", r) {
457
457
  super(t, r), this.code = "ERR_JWKS_TIMEOUT";
458
458
  }
459
459
  }
460
- Or.code = "ERR_JWKS_TIMEOUT";
460
+ Cr.code = "ERR_JWKS_TIMEOUT";
461
461
  class $t extends D {
462
462
  constructor(t = "signature verification failed", r) {
463
463
  super(t, r), this.code = "ERR_JWS_SIGNATURE_VERIFICATION_FAILED";
@@ -559,7 +559,7 @@ const it = (e, ...t) => Mt("Key must be ", e, ...t);
559
559
  function Ut(e, t, ...r) {
560
560
  return Mt(`Key for the ${e} algorithm must be `, t, ...r);
561
561
  }
562
- const Kt = (e) => Dt(e) ? !0 : (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", Ce = ["CryptoKey"], $r = (...e) => {
562
+ const Kt = (e) => Dt(e) ? !0 : (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", Oe = ["CryptoKey"], $r = (...e) => {
563
563
  const t = e.filter(Boolean);
564
564
  if (t.length === 0 || t.length === 1)
565
565
  return !0;
@@ -693,7 +693,7 @@ const Ht = async (e) => {
693
693
  return delete n.alg, delete n.use, Me.subtle.importKey("jwk", n, ...a);
694
694
  }, Wt = (e) => te(e);
695
695
  let se, ie;
696
- const Bt = (e) => (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", Oe = async (e, t, r, a, n = !1) => {
696
+ const Bt = (e) => (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject", Ce = async (e, t, r, a, n = !1) => {
697
697
  let o = e.get(t);
698
698
  if (o != null && o[a])
699
699
  return o[a];
@@ -702,15 +702,15 @@ const Bt = (e) => (e == null ? void 0 : e[Symbol.toStringTag]) === "KeyObject",
702
702
  }, Vr = (e, t) => {
703
703
  if (Bt(e)) {
704
704
  let r = e.export({ format: "jwk" });
705
- return delete r.d, delete r.dp, delete r.dq, delete r.p, delete r.q, delete r.qi, r.k ? Wt(r.k) : (ie || (ie = /* @__PURE__ */ new WeakMap()), Oe(ie, e, r, t));
705
+ return delete r.d, delete r.dp, delete r.dq, delete r.p, delete r.q, delete r.qi, r.k ? Wt(r.k) : (ie || (ie = /* @__PURE__ */ new WeakMap()), Ce(ie, e, r, t));
706
706
  }
707
- return fe(e) ? e.k ? te(e.k) : (ie || (ie = /* @__PURE__ */ new WeakMap()), Oe(ie, e, e, t, !0)) : e;
707
+ return fe(e) ? e.k ? te(e.k) : (ie || (ie = /* @__PURE__ */ new WeakMap()), Ce(ie, e, e, t, !0)) : e;
708
708
  }, Jr = (e, t) => {
709
709
  if (Bt(e)) {
710
710
  let r = e.export({ format: "jwk" });
711
- return r.k ? Wt(r.k) : (se || (se = /* @__PURE__ */ new WeakMap()), Oe(se, e, r, t));
711
+ return r.k ? Wt(r.k) : (se || (se = /* @__PURE__ */ new WeakMap()), Ce(se, e, r, t));
712
712
  }
713
- return fe(e) ? e.k ? te(e.k) : (se || (se = /* @__PURE__ */ new WeakMap()), Oe(se, e, e, t, !0)) : e;
713
+ return fe(e) ? e.k ? te(e.k) : (se || (se = /* @__PURE__ */ new WeakMap()), Ce(se, e, e, t, !0)) : e;
714
714
  }, Gr = { normalizePublicKey: Vr, normalizePrivateKey: Jr }, ee = (e, t, r = 0) => {
715
715
  r === 0 && (t.unshift(t.length), t.unshift(6));
716
716
  const a = e.indexOf(t[0], r);
@@ -825,7 +825,7 @@ const me = (e) => e == null ? void 0 : e[Symbol.toStringTag], Qe = (e, t, r) =>
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 (!Kt(t))
828
- throw new TypeError(Ut(e, t, ...Ce, "Uint8Array", a ? "JSON Web Key" : null));
828
+ throw new TypeError(Ut(e, t, ...Oe, "Uint8Array", a ? "JSON Web Key" : null));
829
829
  if (t.type !== "secret")
830
830
  throw new TypeError(`${me(t)} instances for symmetric algorithms must be of type "secret"`);
831
831
  }
@@ -842,7 +842,7 @@ const me = (e) => e == null ? void 0 : e[Symbol.toStringTag], Qe = (e, t, r) =>
842
842
  throw new TypeError("JSON Web Key for this operation be a public JWK");
843
843
  }
844
844
  if (!Kt(t))
845
- throw new TypeError(Ut(e, t, ...Ce, a ? "JSON Web Key" : null));
845
+ throw new TypeError(Ut(e, t, ...Oe, a ? "JSON Web Key" : null));
846
846
  if (t.type === "secret")
847
847
  throw new TypeError(`${me(t)} instances for asymmetric algorithms must not be of type "secret"`);
848
848
  if (r === "sign" && t.type === "public")
@@ -914,10 +914,10 @@ async function ta(e, t, r) {
914
914
  return Lr(t, e, r), t;
915
915
  if (t instanceof Uint8Array) {
916
916
  if (!e.startsWith("HS"))
917
- throw new TypeError(it(t, ...Ce));
917
+ throw new TypeError(it(t, ...Oe));
918
918
  return Me.subtle.importKey("raw", t, { hash: `SHA-${e.slice(-3)}`, name: "HMAC" }, !1, [r]);
919
919
  }
920
- throw new TypeError(it(t, ...Ce, "Uint8Array", "JSON Web Key"));
920
+ throw new TypeError(it(t, ...Oe, "Uint8Array", "JSON Web Key"));
921
921
  }
922
922
  const ra = async (e, t, r, a) => {
923
923
  const n = await ta(e, t, "verify");
@@ -1258,7 +1258,7 @@ function Ye(e, t, r) {
1258
1258
  const a = e.random || (e.rng || Ra)();
1259
1259
  return a[6] = a[6] & 15 | 64, a[8] = a[8] & 63 | 128, ka(a);
1260
1260
  }
1261
- const ce = "Your session has expired. For your security, please log in again to continue.", va = "Your session has been successfully terminated.", Fe = "Login failed. Please try again.", xa = "Error getting access token, please re-authenticate.", Ca = "You forgot to wrap your component in <AuthProvider>.", Se = "@@auth@@", ge = "LOADING", Ae = "LOGIN", Ft = "LOGOUT", Ee = "success", Y = "failure", jt = "include", zt = "POST", qt = "application/json", _e = {
1261
+ const ce = "Your session has expired. For your security, please log in again to continue.", va = "Your session has been successfully terminated.", Fe = "Login failed. Please try again.", xa = "Error getting access token, please re-authenticate.", Oa = "You forgot to wrap your component in <AuthProvider>.", Se = "@@auth@@", ge = "LOADING", Ae = "LOGIN", Ft = "LOGOUT", Ee = "success", Y = "failure", jt = "include", zt = "POST", qt = "application/json", _e = {
1262
1262
  GET_REGISTRATION_OPTIONS: `mutation GetPasskeyRegistrationOptions(
1263
1263
  $clientId: String!,
1264
1264
  $username: String!,
@@ -1413,7 +1413,7 @@ const ce = "Your session has expired. For your security, please log in again to
1413
1413
  } catch (n) {
1414
1414
  return console.error(n), { status: Y, data: [] };
1415
1415
  }
1416
- }, Oa = process.env.NODE_ENV === "production", Pa = !Oa, Xt = {
1416
+ }, Ca = process.env.NODE_ENV === "production", Pa = !Ca, Xt = {
1417
1417
  isLoading: !0,
1418
1418
  isAuthenticated: !1,
1419
1419
  user: void 0,
@@ -1629,7 +1629,7 @@ const Ha = (e) => q(
1629
1629
  },
1630
1630
  [e]
1631
1631
  ), ue = () => {
1632
- throw new Error(Ca);
1632
+ throw new Error(Oa);
1633
1633
  }, Qt = dr({
1634
1634
  isAuthenticated: !1,
1635
1635
  isLoading: !1,
@@ -1673,7 +1673,7 @@ const Ha = (e) => q(
1673
1673
  const [s, i] = At(Ba, {
1674
1674
  ...Xt,
1675
1675
  debug: n
1676
- }), c = Ha(n), f = C(!1), [h, m, , l] = Te({
1676
+ }), c = Ha(n), f = O(!1), [h, m, , l] = Te({
1677
1677
  key: `${Se}::${r}::@@user@@`
1678
1678
  }), [u, y, , E] = Te({
1679
1679
  key: `${Se}::${r}::@@access@@`
@@ -1792,7 +1792,7 @@ const Ha = (e) => q(
1792
1792
  return !1;
1793
1793
  }, w = async (g) => {
1794
1794
  g == null || g.preventDefault(), await S(va);
1795
- }, O = async () => {
1795
+ }, C = async () => {
1796
1796
  const { isAuthenticated: g, user: I } = s;
1797
1797
  try {
1798
1798
  if (g && I && I.userId) {
@@ -1933,7 +1933,7 @@ const Ha = (e) => q(
1933
1933
  ...s,
1934
1934
  login: K,
1935
1935
  logout: w,
1936
- getAccessToken: O,
1936
+ getAccessToken: C,
1937
1937
  getIdToken: P,
1938
1938
  registeringForPasskey: B,
1939
1939
  loginWithPasskey: Z
@@ -1941,7 +1941,7 @@ const Ha = (e) => q(
1941
1941
  children: e
1942
1942
  }
1943
1943
  ) });
1944
- }, Zt = (e = Qt) => Rt(e), wo = "user", Io = "assistant", To = "system", So = "internal", _o = "hidden", ko = "I'm having trouble right now. Please try again later.", Ao = "OpenAI", Ro = "OpenAI", No = "Anthropic", vo = "action-search", xo = "action-sort", Co = "action-toggle-prompt", Oo = "action-reset-prompt", Po = "sassy-saint-", Do = "details", Lo = "search", $o = "sort", Mo = "private-disclosure", Uo = "==stats==", Et = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Ko = 10, Ho = 30, Wo = "av-prompt", Bo = "av-prompt-editable", Vo = "size-5 sm:size-4", wt = (e) => Number.isFinite(e) ? e : 0;
1944
+ }, Zt = (e = Qt) => Rt(e), wo = "user", Io = "assistant", To = "system", So = "internal", _o = "hidden", ko = "I'm having trouble right now. Please try again later.", Ao = "OpenAI", Ro = "OpenAI", No = "Anthropic", vo = "action-search", xo = "action-sort", Oo = "action-toggle-prompt", Co = "action-reset-prompt", Po = "sassy-saint-", Do = "details", Lo = "search", $o = "sort", Mo = "private-disclosure", Uo = "==stats==", Ko = "==wait==", Et = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Ho = 10, Wo = 30, Bo = "av-prompt", Vo = "av-prompt-editable", Jo = "size-5 sm:size-4", wt = (e) => Number.isFinite(e) ? e : 0;
1945
1945
  function Va(e) {
1946
1946
  return {
1947
1947
  days: Math.trunc(e / 864e5),
@@ -2021,7 +2021,7 @@ function qa(e, t) {
2021
2021
  const f = t.colonNotation ? ":" : " ";
2022
2022
  return typeof t.unitCount == "number" && (n = n.slice(0, Math.max(t.unitCount, 1))), a + n.join(f);
2023
2023
  }
2024
- const Xa = process.env.NODE_ENV === "production", er = !Xa, Qa = er ? "gizmette.local.com" : "gizmette.com", Jo = async () => {
2024
+ const Xa = process.env.NODE_ENV === "production", er = !Xa, Qa = er ? "gizmette.local.com" : "gizmette.com", Go = async () => {
2025
2025
  const e = {
2026
2026
  /**
2027
2027
  * A boolean value that indicates the application would
@@ -2070,15 +2070,15 @@ const Xa = process.env.NODE_ENV === "production", er = !Xa, Qa = er ? "gizmette.
2070
2070
  e
2071
2071
  );
2072
2072
  });
2073
- }, Go = (e, t) => t ? Object.keys(t).map((r) => /* @__PURE__ */ d("dl", { className: "my-0", children: /* @__PURE__ */ $("div", { className: "flex items-center justify-between", children: [
2073
+ }, Yo = (e, t) => t ? Object.keys(t).map((r) => /* @__PURE__ */ d("dl", { className: "my-0", children: /* @__PURE__ */ $("div", { className: "flex items-center justify-between", children: [
2074
2074
  /* @__PURE__ */ d("dt", { className: "my-1 inline-block font-bold text-copy-dark dark:text-copy-lighter", children: r }),
2075
2075
  /* @__PURE__ */ d("dd", { className: "my-1 inline-block", children: t[r] })
2076
- ] }) }, `${e}-${r}`)) : null, Yo = new Intl.NumberFormat("en", {
2076
+ ] }) }, `${e}-${r}`)) : null, Fo = new Intl.NumberFormat("en", {
2077
2077
  style: "decimal",
2078
2078
  signDisplay: "never",
2079
2079
  minimumFractionDigits: 0,
2080
2080
  maximumFractionDigits: 0
2081
- }), Fo = (e) => e > 0 ? qa(e, {
2081
+ }), jo = (e) => e > 0 ? qa(e, {
2082
2082
  secondsDecimalDigits: 2,
2083
2083
  unitCount: 2
2084
2084
  }) : "N/A", Za = ({
@@ -2090,12 +2090,12 @@ const Xa = process.env.NODE_ENV === "production", er = !Xa, Qa = er ? "gizmette.
2090
2090
  t
2091
2091
  ), en = ({
2092
2092
  extraClass: e
2093
- }) => p("px-2 sm:px-0", e), jo = (e, t) => t === 1 ? e : `${e}s`, zo = (e, t) => {
2093
+ }) => p("px-2 sm:px-0", e), zo = (e, t) => t === 1 ? e : `${e}s`, qo = (e, t) => {
2094
2094
  let r;
2095
2095
  return (...a) => {
2096
2096
  window.clearTimeout(r), r = window.setTimeout(() => e(...a), t);
2097
2097
  };
2098
- }, tn = () => !!(window != null && window.__VERSINI_CALLISTO_ELECTRON__), rn = () => window.innerWidth < 403, qo = () => {
2098
+ }, tn = () => !!(window != null && window.__VERSINI_CALLISTO_ELECTRON__), rn = () => window.innerWidth < 403, Xo = () => {
2099
2099
  const e = ["iPhone Simulator", "iPhone"].includes(navigator.platform) || navigator.userAgent.includes("Mac") && "ontouchend" in document || window.indexedDB !== null, t = /iPhone/.test(navigator.userAgent), r = rn(), a = navigator.maxTouchPoints > 1;
2100
2100
  return e && t && r && a;
2101
2101
  }, It = "av-button", Ke = "icon", at = "button", Ze = "link", an = ({
@@ -2452,7 +2452,7 @@ const rr = X.forwardRef(
2452
2452
  );
2453
2453
  rr.displayName = "Button";
2454
2454
  function gn() {
2455
- const e = C(!1);
2455
+ const e = O(!1);
2456
2456
  return G(() => (e.current = !0, () => {
2457
2457
  e.current = !1;
2458
2458
  }), []), q(() => e.current, []);
@@ -2476,7 +2476,7 @@ const bn = {
2476
2476
  right: 0
2477
2477
  };
2478
2478
  function je(e) {
2479
- const t = gn(), r = C(0), a = C(null), [n, o] = z(bn), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
2479
+ const t = gn(), r = O(0), a = O(null), [n, o] = z(bn), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
2480
2480
  const c = i[0];
2481
2481
  c && (cancelAnimationFrame(r.current), r.current = requestAnimationFrame(() => {
2482
2482
  a.current && t() && o(c.contentRect);
@@ -2541,16 +2541,16 @@ const En = {
2541
2541
  radius: T,
2542
2542
  variant: _,
2543
2543
  animated: M
2544
- }), U = hn({ mode: r, raw: i, iconClassName: F }), v = pn({ animated: M }), [S, K] = je(), [w, O] = je(), [P, B] = je(), Z = C(0), g = C(null), I = yn([L, g]);
2544
+ }), U = hn({ mode: r, raw: i, iconClassName: F }), v = pn({ animated: M }), [S, K] = je(), [w, C] = je(), [P, B] = je(), Z = O(0), g = O(null), I = yn([L, g]);
2545
2545
  return ve(() => {
2546
2546
  P && P.current && M && (Z.current = B.width + wn[m] + (c ? 0 : In));
2547
2547
  }, [B, P, m, c, M]), ve(() => {
2548
- g && g.current && M && (l && S && K.width > 0 ? (S.current && (S.current.style.opacity = "100"), g.current.style.width = `${K.width + Z.current}px`) : u && O.width > 0 ? (w.current && (w.current.style.opacity = "100"), g.current.style.width = `${O.width + Z.current}px`) : (S.current && (S.current.style.opacity = "0"), w.current && (w.current.style.opacity = "0"), g.current.style.width = `${En[m]}px`));
2548
+ g && g.current && M && (l && S && K.width > 0 ? (S.current && (S.current.style.opacity = "100"), g.current.style.width = `${K.width + Z.current}px`) : u && C.width > 0 ? (w.current && (w.current.style.opacity = "100"), g.current.style.width = `${C.width + Z.current}px`) : (S.current && (S.current.style.opacity = "0"), w.current && (w.current.style.opacity = "0"), g.current.style.width = `${En[m]}px`));
2549
2549
  }, [
2550
2550
  K,
2551
2551
  l,
2552
2552
  S,
2553
- O,
2553
+ C,
2554
2554
  u,
2555
2555
  w,
2556
2556
  m,
@@ -2935,7 +2935,7 @@ try {
2935
2935
  });
2936
2936
  } catch {
2937
2937
  }
2938
- const Cn = "av-main", On = ({
2938
+ const On = "av-main", Cn = ({
2939
2939
  children: e,
2940
2940
  className: t,
2941
2941
  raw: r = !1,
@@ -2943,7 +2943,7 @@ const Cn = "av-main", On = ({
2943
2943
  noPadding: n = !1
2944
2944
  }) => {
2945
2945
  const o = p(
2946
- Cn,
2946
+ On,
2947
2947
  {
2948
2948
  "mt-2 sm:mt-3": !r && !a,
2949
2949
  "p-2": !r && !n,
@@ -3111,7 +3111,7 @@ try {
3111
3111
  }
3112
3112
  const ar = "av-text-input", $n = "av-text-input-wrapper", qe = "av-text-input-helper-text";
3113
3113
  function Mn() {
3114
- const e = C(!1);
3114
+ const e = O(!1);
3115
3115
  return G(() => (e.current = !0, () => {
3116
3116
  e.current = !1;
3117
3117
  }), []), q(() => e.current, []);
@@ -3127,7 +3127,7 @@ const Un = {
3127
3127
  right: 0
3128
3128
  };
3129
3129
  function Kn(e) {
3130
- const t = Mn(), r = C(0), a = C(null), [n, o] = z(Un), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
3130
+ const t = Mn(), r = O(0), a = O(null), [n, o] = z(Un), s = Le(() => typeof ResizeObserver > "u" ? null : new ResizeObserver((i) => {
3131
3131
  const c = i[0];
3132
3132
  c && (cancelAnimationFrame(r.current), r.current = requestAnimationFrame(() => {
3133
3133
  a.current && t() && o(c.contentRect);
@@ -3229,7 +3229,7 @@ function sr({
3229
3229
  visible: i,
3230
3230
  ...c
3231
3231
  }) {
3232
- const f = C(null), h = C(null), [m, l] = At(Bn, {
3232
+ const f = O(null), h = O(null), [m, l] = At(Bn, {
3233
3233
  announcement: null
3234
3234
  });
3235
3235
  let u = r;
@@ -3436,7 +3436,7 @@ const Gn = ({
3436
3436
  size: _ = "md",
3437
3437
  ...F
3438
3438
  }, M) => {
3439
- const [Q, L] = Kn(), [re, U] = z(0), v = Hn({ id: e, prefix: `${ar}-` }), S = `${t} error, ${y}`, K = C(null), w = C(null), O = {
3439
+ const [Q, L] = Kn(), [re, U] = z(0), v = Hn({ id: e, prefix: `${ar}-` }), S = `${t} error, ${y}`, K = O(null), w = O(null), C = {
3440
3440
  xs: { label: "-25px", helperText: "30px" },
3441
3441
  sm: { label: "-29px", helperText: "34px" },
3442
3442
  md: { label: "-33px", helperText: "38px" },
@@ -3458,7 +3458,7 @@ const Gn = ({
3458
3458
  L && L.width && U(L.width + 18 + 10);
3459
3459
  }, [L]), ve(() => {
3460
3460
  var B, Z;
3461
- const { label: g, helperText: I } = O[_];
3461
+ const { label: g, helperText: I } = C[_];
3462
3462
  (B = K == null ? void 0 : K.current) == null || B.style.setProperty("--av-text-input-label", g), (Z = w == null ? void 0 : w.current) == null || Z.style.setProperty(
3463
3463
  "--av-text-input-helper-text",
3464
3464
  I
@@ -3546,7 +3546,7 @@ const Qn = 500, Zn = 5e3, eo = 2e4, ir = X.forwardRef(
3546
3546
  const [l, u] = z(!0), [y, E] = z({
3547
3547
  message: null,
3548
3548
  politeness: null
3549
- }), T = C(!0), _ = C(null), F = C(null), M = Xn([m, F]), Q = l ? "Show" : "Hide", L = () => {
3549
+ }), T = O(!0), _ = O(null), F = O(null), M = Xn([m, F]), Q = l ? "Show" : "Hide", L = () => {
3550
3550
  _.current && clearTimeout(_.current), T.current || (_.current = setTimeout(() => {
3551
3551
  T.current = !0, u(!0), E({
3552
3552
  announcementTimeout: Zn,
@@ -3556,15 +3556,15 @@ const Qn = 500, Zn = 5e3, eo = 2e4, ir = X.forwardRef(
3556
3556
  }, eo));
3557
3557
  }, re = (w) => {
3558
3558
  w.preventDefault();
3559
- const O = !T.current;
3560
- T.current = O, L(), u(O), E({
3559
+ const C = !T.current;
3560
+ T.current = C, L(), u(C), E({
3561
3561
  announcementTimeout: Qn,
3562
3562
  politeness: "assertive",
3563
- message: O ? "Characters hidden" : "Characters showing"
3564
- }), n && n(O);
3563
+ message: C ? "Characters hidden" : "Characters showing"
3564
+ }), n && n(C);
3565
3565
  }, U = (w) => {
3566
- var O;
3567
- const { relatedTarget: P } = w, B = (O = F.current) == null ? void 0 : O.parentElement;
3566
+ var C;
3567
+ const { relatedTarget: P } = w, B = (C = F.current) == null ? void 0 : C.parentElement;
3568
3568
  B != null && B.contains(P) || c && c();
3569
3569
  }, v = (w) => {
3570
3570
  L(), s && s(w), U(w);
@@ -3624,7 +3624,7 @@ try {
3624
3624
  });
3625
3625
  } catch {
3626
3626
  }
3627
- const to = "ASK! ME! ANYTHING!", cr = "Callisto", ro = "Log in", ao = "Sign in with a Passkey", Xo = "Log out", no = "Password", Qo = "Profile", Zo = "Settings", es = "Chat history", ts = "About", rs = "Type your question here", as = "{{clipboard}}", ns = `Sometimes, ${cr} hallucinates. Review important details.`, os = "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.", ss = {
3627
+ const to = "ASK! ME! ANYTHING!", cr = "Callisto", ro = "Log in", ao = "Sign in with a Passkey", Qo = "Log out", no = "Password", Zo = "Profile", es = "Settings", ts = "Chat history", rs = "About", as = "Type your question here", ns = "{{clipboard}}", os = `Sometimes, ${cr} hallucinates. Review important details.`, ss = "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.", is = {
3628
3628
  PREFERENCES: {
3629
3629
  TITLE: "User profile",
3630
3630
  NAME: "Name",
@@ -3686,7 +3686,7 @@ const to = "ASK! ME! ANYTHING!", cr = "Callisto", ro = "Log in", ao = "Sign in w
3686
3686
  }), G(() => {
3687
3687
  t && s(t);
3688
3688
  }, [t]), /* @__PURE__ */ d(Ne, { children: /* @__PURE__ */ $(
3689
- On,
3689
+ Cn,
3690
3690
  {
3691
3691
  className: en({
3692
3692
  extraClass: "mt-5"
@@ -3792,7 +3792,7 @@ const to = "ASK! ME! ANYTHING!", cr = "Callisto", ro = "Log in", ao = "Sign in w
3792
3792
  ) });
3793
3793
  }, io = new URL(document.location.href).searchParams, _t = !!io.get("debug") || !1, co = mr(() => import(
3794
3794
  /* webpackChunkName: "LazyApp" */
3795
- "./App.Dy701JAx.js"
3795
+ "./App.DzDRKvsP.js"
3796
3796
  ).then((e) => e.App)), kt = ({ isComponent: e }) => {
3797
3797
  const { isAuthenticated: t } = Zt();
3798
3798
  return t ? /* @__PURE__ */ d(hr, { fallback: /* @__PURE__ */ d("div", {}), children: /* @__PURE__ */ d(co, { isComponent: e }) }) : /* @__PURE__ */ d(so, {});
@@ -3808,37 +3808,37 @@ const to = "ASK! ME! ANYTHING!", cr = "Callisto", ro = "Log in", ao = "Sign in w
3808
3808
  endpoint: process.env.PUBLIC_AUTH_SERVER_URL,
3809
3809
  children: /* @__PURE__ */ d(kt, { isComponent: e })
3810
3810
  }
3811
- ) : /* @__PURE__ */ d(bt, { clientId: Et, domain: t, debug: _t, children: /* @__PURE__ */ d(kt, { isComponent: e }) }), is = ({ domain: e }) => /* @__PURE__ */ d(lo, { isComponent: !0, domain: e });
3811
+ ) : /* @__PURE__ */ d(bt, { clientId: Et, domain: t, debug: _t, children: /* @__PURE__ */ d(kt, { isComponent: e }) }), cs = ({ domain: e }) => /* @__PURE__ */ d(lo, { isComponent: !0, domain: e });
3812
3812
  export {
3813
- ts as ABOUT_TITLE,
3814
- Oo as ACTION_RESET_PROMPT,
3813
+ rs as ABOUT_TITLE,
3814
+ Co as ACTION_RESET_PROMPT,
3815
3815
  vo as ACTION_SEARCH,
3816
3816
  xo as ACTION_SORT,
3817
- Co as ACTION_TOGGLE_PROMPT,
3817
+ Oo as ACTION_TOGGLE_PROMPT,
3818
3818
  cr as APP_NAME,
3819
3819
  rr as C,
3820
- ss as CARDS,
3821
- as as CLIPBOARD_PROMPT,
3820
+ is as CARDS,
3821
+ ns as CLIPBOARD_PROMPT,
3822
3822
  Ao as DEFAULT_AI_PROVIDER,
3823
- Vo as DEFAULT_ICON_ACTION_SIZE,
3823
+ Jo as DEFAULT_ICON_ACTION_SIZE,
3824
3824
  ko as ERROR_MESSAGE,
3825
- ns as FOOTER_DISCLAIMER,
3826
- es as HISTORY_TITLE,
3827
- Ho as INFINITE_SCROLL_LIMIT,
3828
- Ko as INFINITE_SCROLL_THRESHOLD,
3825
+ os as FOOTER_DISCLAIMER,
3826
+ ts as HISTORY_TITLE,
3827
+ Wo as INFINITE_SCROLL_LIMIT,
3828
+ Ho as INFINITE_SCROLL_THRESHOLD,
3829
3829
  Dn as L,
3830
3830
  Do as LOCAL_STORAGE_CHAT_DETAILS,
3831
3831
  Po as LOCAL_STORAGE_PREFIX,
3832
3832
  Mo as LOCAL_STORAGE_PRIVATE_DISCLOSURE,
3833
3833
  Lo as LOCAL_STORAGE_SEARCH,
3834
3834
  $o as LOCAL_STORAGE_SORT,
3835
- Xo as LOG_OUT,
3835
+ Qo as LOG_OUT,
3836
3836
  oo as Logo,
3837
3837
  he as M,
3838
- Qo as PROFILE_TITLE,
3839
- os as PROMPTS_DESCRIPTION,
3840
- Wo as PROMPT_CLASSNAME,
3841
- Bo as PROMPT_EDITABLE_AREA_CLASSNAME,
3838
+ Zo as PROFILE_TITLE,
3839
+ ss as PROMPTS_DESCRIPTION,
3840
+ Bo as PROMPT_CLASSNAME,
3841
+ Vo as PROMPT_EDITABLE_AREA_CLASSNAME,
3842
3842
  No as PROVIDER_ANTHROPIC,
3843
3843
  Ro as PROVIDER_OPENAI,
3844
3844
  An as R,
@@ -3847,26 +3847,27 @@ export {
3847
3847
  So as ROLE_INTERNAL,
3848
3848
  To as ROLE_SYSTEM,
3849
3849
  wo as ROLE_USER,
3850
- Zo as SETTINGS_TITLE,
3850
+ es as SETTINGS_TITLE,
3851
3851
  Uo as STATS_SEPARATOR,
3852
- is as SassySaint,
3853
- rs as TYPE_QUESTION,
3854
- zo as debounce,
3855
- Fo as durationFormatter,
3852
+ cs as SassySaint,
3853
+ as as TYPE_QUESTION,
3854
+ Ko as WAIT_SEPARATOR,
3855
+ qo as debounce,
3856
+ jo as durationFormatter,
3856
3857
  He as f,
3857
3858
  ot as fe,
3858
- Jo as getCurrentGeoLocation,
3859
+ Go as getCurrentGeoLocation,
3859
3860
  en as getMainPaddingClass,
3860
3861
  Za as getMessageContaintWrapperClass,
3861
3862
  tn as isElectron,
3862
3863
  rn as isProbablyMobile,
3863
- qo as isProbablyiPhone,
3864
+ Xo as isProbablyiPhone,
3864
3865
  ae as j,
3865
3866
  vn as l,
3866
- Yo as numberFormatter,
3867
- jo as pluralize,
3868
- On as r,
3867
+ Fo as numberFormatter,
3868
+ zo as pluralize,
3869
+ Cn as r,
3869
3870
  Pe as re,
3870
- Go as renderDataAsList,
3871
+ Yo as renderDataAsList,
3871
3872
  Zt as un
3872
3873
  };
@@ -1,5 +1,5 @@
1
1
  import "react/jsx-runtime";
2
- import { SassySaint as a } from "../../chunks/index.DAXcx2b2.js";
2
+ import { SassySaint as a } from "../../chunks/index.B3-UOQNr.js";
3
3
  export {
4
4
  a as SassySaint
5
5
  };
package/dist/index.js CHANGED
@@ -1,12 +1,12 @@
1
- import { SassySaint as r } from "./chunks/index.DAXcx2b2.js";
1
+ import { SassySaint as r } from "./chunks/index.B3-UOQNr.js";
2
2
  /*!
3
- @sassysaint/client v7.1.7
3
+ @sassysaint/client v7.2.0
4
4
  © 2025 gizmette.com
5
5
  */
6
6
  try {
7
7
  window.__VERSINI_SASSY_GLOBAL__ || (window.__VERSINI_SASSY_GLOBAL__ = {
8
- version: "7.1.7",
9
- buildTime: "02/10/2025 06:38 AM EST",
8
+ version: "7.2.0",
9
+ buildTime: "02/11/2025 06:48 PM EST",
10
10
  license: "MIT"
11
11
  });
12
12
  } catch {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@versini/sassysaint",
3
- "version": "7.1.7",
3
+ "version": "7.2.0",
4
4
  "license": "MIT",
5
5
  "author": "Arno Versini",
6
6
  "publishConfig": {
@@ -30,7 +30,7 @@
30
30
  "react-dom": "^18.3.1 || ^19.0.0"
31
31
  },
32
32
  "devDependencies": {
33
- "@sassysaint/client": "7.1.7",
33
+ "@sassysaint/client": "7.2.0",
34
34
  "@versini/ui-styles": "3.2.8"
35
35
  },
36
36
  "dependencies": {
@@ -41,5 +41,5 @@
41
41
  "sideEffects": [
42
42
  "**/*.css"
43
43
  ],
44
- "gitHead": "9c2553f2602bb16f1479a1dc75329f29cfb51a7e"
44
+ "gitHead": "cc7ac8c2f0afb4f7b3214378f4ea0f142f28196b"
45
45
  }