@versini/sassysaint 8.106.1 → 8.107.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/chunks/{AboutChangelog.C1rKf-fs.js → AboutChangelog.Bka_dEqx.js} +2 -2
  2. package/dist/chunks/{AboutEntry.BAR4O6Y4.js → AboutEntry.DUtXxWlx.js} +7 -7
  3. package/dist/chunks/{App.B9tjGMnG.js → App.BERAIqpH.js} +49 -47
  4. package/dist/chunks/Bubble.CMHhu8Uu.js +183 -0
  5. package/dist/chunks/{Chart.BJQmO98B.js → Chart.CaVz0BaD.js} +2 -2
  6. package/dist/chunks/{ChatBubbleAssistant.B5Un5WKI.js → ChatBubbleAssistant.C2BK2j1e.js} +453 -426
  7. package/dist/chunks/{ChatBubbleUser.DEe4IIdl.js → ChatBubbleUser.DiLNCz62.js} +3 -3
  8. package/dist/chunks/{ChatHistoryTable.-d8_qx2Z.js → ChatHistoryTable.stVdzUh4.js} +4 -4
  9. package/dist/chunks/{HistoryEntry.BSAHx4eZ.js → HistoryEntry.Cfj7zpsO.js} +28 -27
  10. package/dist/chunks/{LoginEntry.DR0qFvNl.js → LoginEntry.NKL57b20.js} +4 -4
  11. package/dist/chunks/{LogoEntry.BwA2ssO6.js → LogoEntry._hzptl5K.js} +23 -23
  12. package/dist/chunks/{MemoriesEntry.Cz7T3caz.js → MemoriesEntry.d_q-JhJM.js} +5 -5
  13. package/dist/chunks/{ProfileEntry.Cotp19Aj.js → ProfileEntry.DIQtOnWx.js} +4 -4
  14. package/dist/chunks/{SettingsEntry.C55bTACC.js → SettingsEntry.DzdlYRls.js} +5 -5
  15. package/dist/chunks/{Table.DWGS6ANJ.js → Table.DC7e-PME.js} +1 -1
  16. package/dist/chunks/{UsageEntry.HvLHOBP5.js → UsageEntry.BH_ezlOO.js} +5 -5
  17. package/dist/chunks/{index.BOLZ9GJH.js → index.-n8MsBkX.js} +1 -1
  18. package/dist/chunks/{index.DNRN6B_p.js → index.Bc-tiddM.js} +1 -1
  19. package/dist/chunks/{index.DVCf7tp5.js → index.BeTlnSxo.js} +196 -182
  20. package/dist/chunks/{index.1CBqWB-9.js → index.CBzjyG-A.js} +2 -2
  21. package/dist/chunks/{index.Dnj64P2t.js → index.D2X4dLEq.js} +3 -3
  22. package/dist/chunks/{index.Cik0_Cr1.js → index.DAJKVS9Y.js} +1 -1
  23. package/dist/chunks/{index.Ce0LQWUm.js → index.DvprFu44.js} +1 -1
  24. package/dist/chunks/{index.BSJ1MGWU.js → index.NT6ZWB8q.js} +1 -1
  25. package/dist/chunks/{index.yI7VsMw8.js → index.ogleoHzE.js} +1 -1
  26. package/dist/chunks/{useMarkdown.Di6pc73q.js → useMarkdown.CUQaOUBB.js} +7 -7
  27. package/dist/components/SassySaint/SassySaint.js +1 -1
  28. package/dist/index.js +4 -4
  29. package/dist/style.css +1 -1
  30. package/package.json +3 -3
  31. package/dist/chunks/index.j05AJWYD.js +0 -153
@@ -1,10 +1,10 @@
1
1
  import { jsx as S, jsxs as ts } from "react/jsx-runtime";
2
- import * as $ from "react";
2
+ import * as D from "react";
3
3
  import rs, { createContext as ft, useReducer as ss, useCallback as Q, useRef as ns, useEffect as ne, useSyncExternalStore as as, useContext as pt, useState as is, useMemo as bt, Suspense as It, lazy as tr } from "react";
4
- import $e from "clsx";
5
- let Ya = "standard";
4
+ import De from "clsx";
5
+ let Xa = "standard";
6
6
  var g, T = ((g = {})[g.NewChat = 0] = "NewChat", g[g.Prompts = 1] = "Prompts", g[g.Attachment = 2] = "Attachment", g[g.PrivateChat = 3] = "PrivateChat", g[g.Reasoning = 4] = "Reasoning", g[g.Send = 5] = "Send", g[g.Header = 6] = "Header", g[g.Provider = 7] = "Provider", g[g.Logo = 8] = "Logo", g[g.Placeholder = 9] = "Placeholder", g[g.Footer = 10] = "Footer", g);
7
- let za = "user", Xa = "assistant", qe = "OpenAI", yt = "Anthropic", mt = "Google", os = "Perplexity", Za = qe, cs = [qe, yt, mt], rr = "gpt-5.2", sr = "gpt-5-mini", nr = "gpt-5-nano", ar = "gpt-4.1-nano", ir = "claude-haiku-4-5", or = "claude-sonnet-4-5", cr = "gemini-2.5-flash", ur = "gemini-3-pro-preview", lr = "sonar", dr = "sonar-pro", ei = { [rr]: "GPT-5.2", [sr]: "GPT-5 Mini", [nr]: "GPT-5 Nano", [ar]: "GPT-4.1 Nano", [ir]: "Claude Haiku 4.5", [or]: "Claude Sonnet 4.5", [cr]: "Gemini 2.5 Flash", [ur]: "Gemini 3 Pro", [lr]: "Sonar", [dr]: "Sonar Pro" }, hr = { [qe]: [ar, rr, sr, nr], [yt]: [ir, or], [mt]: [cr, ur], [os]: [lr, dr] }, ti = "x-diggidy-chat-id", ri = "timestamp", si = "tokenUsage", ni = "Diggidy", ai = { TOOL: { MEMORIES: "getUserMemories" }, ADDON: { ATTACHMENTS: "addon:attachments", REASONING: "addon:reasoning" } }, ii = (e) => {
7
+ let Za = "user", ei = "assistant", qe = "OpenAI", yt = "Anthropic", mt = "Google", os = "Perplexity", ti = qe, cs = [qe, yt, mt], rr = "gpt-5.2", sr = "gpt-5-mini", nr = "gpt-5-nano", ar = "gpt-4.1-nano", ir = "claude-haiku-4-5", or = "claude-sonnet-4-5", cr = "gemini-2.5-flash", ur = "gemini-3-pro-preview", lr = "sonar", dr = "sonar-pro", ri = { [rr]: "GPT-5.2", [sr]: "GPT-5 Mini", [nr]: "GPT-5 Nano", [ar]: "GPT-4.1 Nano", [ir]: "Claude Haiku 4.5", [or]: "Claude Sonnet 4.5", [cr]: "Gemini 2.5 Flash", [ur]: "Gemini 3 Pro", [lr]: "Sonar", [dr]: "Sonar Pro" }, hr = { [qe]: [ar, rr, sr, nr], [yt]: [ir, or], [mt]: [cr, ur], [os]: [lr, dr] }, si = "x-diggidy-chat-id", ni = "timestamp", ai = "tokenUsage", ii = "Diggidy", oi = { TOOL: { MEMORIES: "getUserMemories" }, ADDON: { ATTACHMENTS: "addon:attachments", REASONING: "addon:reasoning" } }, ci = (e) => {
8
8
  if (!e || e.length === 0) return [];
9
9
  let t = /* @__PURE__ */ new Set();
10
10
  for (let r of e) for (let [s, n] of Object.entries(hr)) n.includes(r) && (s === qe || s === yt || s === mt) && t.add(s);
@@ -17,16 +17,16 @@ let za = "user", Xa = "assistant", qe = "OpenAI", yt = "Anthropic", mt = "Google
17
17
  break;
18
18
  }
19
19
  return t;
20
- }, oi = (e) => {
20
+ }, ui = (e) => {
21
21
  for (let t of us(e).values()) if (t.length > 1) return !0;
22
22
  return !1;
23
- }, ci = (e, t) => !!e && !!t && t.length !== 0 && t.includes(e);
23
+ }, li = (e, t) => !!e && !!t && t.length !== 0 && t.includes(e);
24
24
  function ls(e, t, r) {
25
25
  if (!t || Array.isArray(t) && t.length === 0) return !0;
26
26
  let s = e instanceof Set ? e : e ? new Set(e) : null;
27
27
  return !!s && s.size !== 0 && (typeof t == "string" ? s.has(t) : r?.any === !0 ? t.some((n) => s.has(n)) : t.every((n) => s.has(n)));
28
28
  }
29
- var ui = "subtle";
29
+ var di = "subtle";
30
30
  const ds = {
31
31
  [T.NewChat]: "fill-[#7A9BC4]",
32
32
  [T.Prompts]: "fill-[#B8A4D5]",
@@ -823,7 +823,7 @@ var _s = class extends we {
823
823
  this.refetch = this.refetch.bind(this);
824
824
  }
825
825
  onSubscribe() {
826
- this.listeners.size === 1 && (this.#t.addObserver(this), Dt(this.#t, this.options) ? this.#d() : this.updateResult(), this.#S());
826
+ this.listeners.size === 1 && (this.#t.addObserver(this), $t(this.#t, this.options) ? this.#d() : this.updateResult(), this.#S());
827
827
  }
828
828
  onUnsubscribe() {
829
829
  this.hasListeners() || this.destroy();
@@ -857,7 +857,7 @@ var _s = class extends we {
857
857
  observer: this
858
858
  });
859
859
  const s = this.hasListeners();
860
- s && $t(
860
+ s && Dt(
861
861
  this.#t,
862
862
  r,
863
863
  this.options,
@@ -945,7 +945,7 @@ var _s = class extends we {
945
945
  const r = this.#t, s = this.options, n = this.#n, a = this.#s, i = this.#i, c = e !== r ? e.state : this.#r, { state: h } = e;
946
946
  let u = { ...h }, d = !1, l;
947
947
  if (t._optimisticResults) {
948
- const I = this.hasListeners(), F = !I && Dt(e, t), te = I && $t(e, r, t, s);
948
+ const I = this.hasListeners(), F = !I && $t(e, t), te = I && Dt(e, r, t, s);
949
949
  (F || te) && (u = {
950
950
  ...u,
951
951
  ...Sr(h.data, e.options)
@@ -1069,7 +1069,7 @@ var _s = class extends we {
1069
1069
  function Os(e, t) {
1070
1070
  return K(t.enabled, e) !== !1 && e.state.data === void 0 && !(e.state.status === "error" && t.retryOnMount === !1);
1071
1071
  }
1072
- function Dt(e, t) {
1072
+ function $t(e, t) {
1073
1073
  return Os(e, t) || e.state.data !== void 0 && lt(e, t, t.refetchOnMount);
1074
1074
  }
1075
1075
  function lt(e, t, r) {
@@ -1079,7 +1079,7 @@ function lt(e, t, r) {
1079
1079
  }
1080
1080
  return !1;
1081
1081
  }
1082
- function $t(e, t, r, s) {
1082
+ function Dt(e, t, r, s) {
1083
1083
  return (e !== t || K(s.enabled, e) === !1) && (!r.suspense || e.state.status !== "error") && St(e, r);
1084
1084
  }
1085
1085
  function St(e, t) {
@@ -1472,7 +1472,7 @@ var Ms = class extends we {
1472
1472
  function Ce(e) {
1473
1473
  return e.options.scope?.id;
1474
1474
  }
1475
- var Ds = class extends we {
1475
+ var $s = class extends we {
1476
1476
  #e;
1477
1477
  #t = void 0;
1478
1478
  #r;
@@ -1555,7 +1555,7 @@ var Ds = class extends we {
1555
1555
  });
1556
1556
  });
1557
1557
  }
1558
- }, $s = class extends we {
1558
+ }, Ds = class extends we {
1559
1559
  constructor(e = {}) {
1560
1560
  super(), this.config = e, this.#e = /* @__PURE__ */ new Map();
1561
1561
  }
@@ -1636,7 +1636,7 @@ var Ds = class extends we {
1636
1636
  #o;
1637
1637
  #a;
1638
1638
  constructor(e = {}) {
1639
- this.#e = e.queryCache || new $s(), this.#t = e.mutationCache || new Ms(), this.#r = e.defaultOptions || {}, this.#n = /* @__PURE__ */ new Map(), this.#s = /* @__PURE__ */ new Map(), this.#i = 0;
1639
+ this.#e = e.queryCache || new Ds(), this.#t = e.mutationCache || new Ms(), this.#r = e.defaultOptions || {}, this.#n = /* @__PURE__ */ new Map(), this.#s = /* @__PURE__ */ new Map(), this.#i = 0;
1640
1640
  }
1641
1641
  mount() {
1642
1642
  this.#i++, this.#i === 1 && (this.#o = gt.subscribe(async (e) => {
@@ -1829,19 +1829,19 @@ var Ds = class extends we {
1829
1829
  clear() {
1830
1830
  this.#e.clear(), this.#t.clear();
1831
1831
  }
1832
- }, Tr = $.createContext(
1832
+ }, Tr = D.createContext(
1833
1833
  void 0
1834
1834
  ), V = (e) => {
1835
- const t = $.useContext(Tr);
1835
+ const t = D.useContext(Tr);
1836
1836
  if (!t)
1837
1837
  throw new Error("No QueryClient set, use QueryClientProvider to set one");
1838
1838
  return t;
1839
1839
  }, Us = ({
1840
1840
  client: e,
1841
1841
  children: t
1842
- }) => ($.useEffect(() => (e.mount(), () => {
1842
+ }) => (D.useEffect(() => (e.mount(), () => {
1843
1843
  e.unmount();
1844
- }), [e]), /* @__PURE__ */ S(Tr.Provider, { value: e, children: t })), Ls = $.createContext(!1), Fs = () => $.useContext(Ls);
1844
+ }), [e]), /* @__PURE__ */ S(Tr.Provider, { value: e, children: t })), Ls = D.createContext(!1), Fs = () => D.useContext(Ls);
1845
1845
  function Ks() {
1846
1846
  let e = !1;
1847
1847
  return {
@@ -1854,10 +1854,10 @@ function Ks() {
1854
1854
  isReset: () => e
1855
1855
  };
1856
1856
  }
1857
- var Hs = $.createContext(Ks()), Gs = () => $.useContext(Hs), xs = (e, t) => {
1857
+ var Hs = D.createContext(Ks()), Gs = () => D.useContext(Hs), xs = (e, t) => {
1858
1858
  (e.suspense || e.throwOnError || e.experimental_prefetchInRender) && (t.isReset() || (e.retryOnMount = !1));
1859
1859
  }, qs = (e) => {
1860
- $.useEffect(() => {
1860
+ D.useEffect(() => {
1861
1861
  e.clearReset();
1862
1862
  }, [e]);
1863
1863
  }, Ws = ({
@@ -1888,14 +1888,14 @@ function Vs(e, t, r) {
1888
1888
  ), process.env.NODE_ENV !== "production" && (i.queryFn || console.error(
1889
1889
  `[${i.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`
1890
1890
  )), i._optimisticResults = s ? "isRestoring" : "optimistic", Bs(i), xs(i, n), qs(n);
1891
- const o = !a.getQueryCache().get(i.queryHash), [c] = $.useState(
1891
+ const o = !a.getQueryCache().get(i.queryHash), [c] = D.useState(
1892
1892
  () => new t(
1893
1893
  a,
1894
1894
  i
1895
1895
  )
1896
1896
  ), h = c.getOptimisticResult(i), u = !s && e.subscribed !== !1;
1897
- if ($.useSyncExternalStore(
1898
- $.useCallback(
1897
+ if (D.useSyncExternalStore(
1898
+ D.useCallback(
1899
1899
  (d) => {
1900
1900
  const l = u ? c.subscribe(v.batchCalls(d)) : U;
1901
1901
  return c.updateResult(), l;
@@ -1904,7 +1904,7 @@ function Vs(e, t, r) {
1904
1904
  ),
1905
1905
  () => c.getCurrentResult(),
1906
1906
  () => c.getCurrentResult()
1907
- ), $.useEffect(() => {
1907
+ ), D.useEffect(() => {
1908
1908
  c.setOptions(i);
1909
1909
  }, [i, c]), js(i, h))
1910
1910
  throw Lt(i, c, n);
@@ -1933,23 +1933,23 @@ function Z(e, t) {
1933
1933
  return Vs(e, _s);
1934
1934
  }
1935
1935
  function se(e, t) {
1936
- const r = V(), [s] = $.useState(
1937
- () => new Ds(
1936
+ const r = V(), [s] = D.useState(
1937
+ () => new $s(
1938
1938
  r,
1939
1939
  e
1940
1940
  )
1941
1941
  );
1942
- $.useEffect(() => {
1942
+ D.useEffect(() => {
1943
1943
  s.setOptions(e);
1944
1944
  }, [s, e]);
1945
- const n = $.useSyncExternalStore(
1946
- $.useCallback(
1945
+ const n = D.useSyncExternalStore(
1946
+ D.useCallback(
1947
1947
  (i) => s.subscribe(v.batchCalls(i)),
1948
1948
  [s]
1949
1949
  ),
1950
1950
  () => s.getCurrentResult(),
1951
1951
  () => s.getCurrentResult()
1952
- ), a = $.useCallback(
1952
+ ), a = D.useCallback(
1953
1953
  (i, o) => {
1954
1954
  s.mutate(i, o).catch(U);
1955
1955
  },
@@ -1978,7 +1978,7 @@ const Ae = {
1978
1978
  PASSKEY: "passkey"
1979
1979
  }, vr = {
1980
1980
  CLIENT_ID: "X-Auth-ClientId"
1981
- }, D = {
1981
+ }, $ = {
1982
1982
  ALG: "RS256",
1983
1983
  USER_ID_KEY: "sub",
1984
1984
  USERNAME_KEY: "username",
@@ -2800,7 +2800,7 @@ async function kn(e, t, r) {
2800
2800
  const o = await Pn({ payload: n, protected: s, signature: a }, t, r), c = { payload: o.payload, protectedHeader: o.protectedHeader };
2801
2801
  return typeof t == "function" ? { ...c, key: o.key } : c;
2802
2802
  }
2803
- const Mn = (e) => Math.floor(e.getTime() / 1e3), Pr = 60, kr = Pr * 60, Tt = kr * 24, Dn = Tt * 7, $n = Tt * 365.25, Nn = /^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;
2803
+ const Mn = (e) => Math.floor(e.getTime() / 1e3), Pr = 60, kr = Pr * 60, Tt = kr * 24, $n = Tt * 7, Dn = Tt * 365.25, Nn = /^(\+|\-)? ?(\d+|\d+\.\d+) ?(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)(?: (ago|from now))?$/i;
2804
2804
  function Gt(e) {
2805
2805
  const t = Nn.exec(e);
2806
2806
  if (!t || t[4] && t[1])
@@ -2837,10 +2837,10 @@ function Gt(e) {
2837
2837
  case "week":
2838
2838
  case "weeks":
2839
2839
  case "w":
2840
- n = Math.round(r * Dn);
2840
+ n = Math.round(r * $n);
2841
2841
  break;
2842
2842
  default:
2843
- n = Math.round(r * $n);
2843
+ n = Math.round(r * Dn);
2844
2844
  break;
2845
2845
  }
2846
2846
  return t[1] === "-" || t[4] === "ago" ? -n : n;
@@ -2941,9 +2941,9 @@ function Kn(e) {
2941
2941
  }
2942
2942
  const _e = async (e) => {
2943
2943
  try {
2944
- const t = D.ALG, r = await mn(Js, t);
2944
+ const t = $.ALG, r = await mn(Js, t);
2945
2945
  return await Fn(e, r, {
2946
- issuer: D.ISSUER
2946
+ issuer: $.ISSUER
2947
2947
  });
2948
2948
  } catch {
2949
2949
  return;
@@ -3032,7 +3032,7 @@ function vt() {
3032
3032
  const zn = {
3033
3033
  stubThis: (e) => e
3034
3034
  };
3035
- function Dr(e) {
3035
+ function $r(e) {
3036
3036
  const { id: t } = e;
3037
3037
  return {
3038
3038
  ...e,
@@ -3045,7 +3045,7 @@ function Dr(e) {
3045
3045
  transports: e.transports
3046
3046
  };
3047
3047
  }
3048
- function $r(e) {
3048
+ function Dr(e) {
3049
3049
  return (
3050
3050
  // Consider localhost valid as well since it's okay wrt Secure Contexts
3051
3051
  e === "localhost" || /^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i.test(e)
@@ -3119,7 +3119,7 @@ function Xn({ error: e, options: t }) {
3119
3119
  });
3120
3120
  if (e.name === "SecurityError") {
3121
3121
  const s = globalThis.location.hostname;
3122
- if ($r(s)) {
3122
+ if (Dr(s)) {
3123
3123
  if (r.rp.id !== s)
3124
3124
  return new M({
3125
3125
  message: `The RP ID "${r.rp.id}" is invalid for this domain`,
@@ -3188,7 +3188,7 @@ async function ta(e) {
3188
3188
  ...t.user,
3189
3189
  id: He(t.user.id)
3190
3190
  },
3191
- excludeCredentials: t.excludeCredentials?.map(Dr)
3191
+ excludeCredentials: t.excludeCredentials?.map($r)
3192
3192
  }, n = {};
3193
3193
  r && (n.mediation = "conditional"), n.publicKey = s, n.signal = Nr.createNewAbortSignal();
3194
3194
  let a;
@@ -3273,7 +3273,7 @@ function sa({ error: e, options: t }) {
3273
3273
  });
3274
3274
  if (e.name === "SecurityError") {
3275
3275
  const s = globalThis.location.hostname;
3276
- if ($r(s)) {
3276
+ if (Dr(s)) {
3277
3277
  if (r.rpId !== s)
3278
3278
  return new M({
3279
3279
  message: `The RP ID "${r.rpId}" is invalid for this domain`,
@@ -3300,7 +3300,7 @@ async function na(e) {
3300
3300
  if (!vt())
3301
3301
  throw new Error("WebAuthn is not supported in this browser");
3302
3302
  let n;
3303
- t.allowCredentials?.length !== 0 && (n = t.allowCredentials?.map(Dr));
3303
+ t.allowCredentials?.length !== 0 && (n = t.allowCredentials?.map($r));
3304
3304
  const a = {
3305
3305
  ...t,
3306
3306
  challenge: He(t.challenge),
@@ -3426,7 +3426,7 @@ function et(e, t, r) {
3426
3426
  throw new Error("Random bytes length must be >= 16");
3427
3427
  return s[6] = s[6] & 15 | 64, s[8] = s[8] & 63 | 128, oa(s);
3428
3428
  }
3429
- const fe = "Your session has expired. For your security, please log in again to continue.", da = "Your session has been successfully terminated.", tt = "Login failed. Please try again.", ha = "Error getting access token, please re-authenticate.", fa = "You forgot to wrap your component in <AuthProvider>.", ke = "@@auth@@", ve = "LOADING", De = "LOGIN", Fr = "LOGOUT", Oe = "success", j = "failure", Kr = "include", Hr = "POST", Gr = "application/json", Me = {
3429
+ const fe = "Your session has expired. For your security, please log in again to continue.", da = "Your session has been successfully terminated.", tt = "Login failed. Please try again.", ha = "Error getting access token, please re-authenticate.", fa = "You forgot to wrap your component in <AuthProvider>.", ke = "@@auth@@", ve = "LOADING", $e = "LOGIN", Fr = "LOGOUT", Oe = "success", j = "failure", Kr = "include", Hr = "POST", Gr = "application/json", Me = {
3430
3430
  GET_REGISTRATION_OPTIONS: `mutation GetPasskeyRegistrationOptions(
3431
3431
  $clientId: String!,
3432
3432
  $username: String!,
@@ -3591,7 +3591,7 @@ const fe = "Your session has expired. For your security, please log in again to
3591
3591
  }, ma = (e) => {
3592
3592
  try {
3593
3593
  const t = Hn(e);
3594
- return t ? t[D.USER_ID_KEY] : "";
3594
+ return t ? t[$.USER_ID_KEY] : "";
3595
3595
  } catch {
3596
3596
  return "";
3597
3597
  }
@@ -3650,12 +3650,12 @@ const fe = "Your session has expired. For your security, please log in again to
3650
3650
  ua: h
3651
3651
  }
3652
3652
  }), l = await _e(d?.data?.idToken);
3653
- return l && l.payload[D.USER_ID_KEY] !== "" && l.payload[D.NONCE_KEY] === s ? {
3653
+ return l && l.payload[$.USER_ID_KEY] !== "" && l.payload[$.NONCE_KEY] === s ? {
3654
3654
  idToken: d.data.idToken,
3655
3655
  accessToken: d.data.accessToken,
3656
3656
  refreshToken: d.data.refreshToken,
3657
- userId: l.payload[D.USER_ID_KEY],
3658
- email: l.payload[D.EMAIL_KEY],
3657
+ userId: l.payload[$.USER_ID_KEY],
3658
+ email: l.payload[$.EMAIL_KEY],
3659
3659
  status: !0
3660
3660
  } : {
3661
3661
  status: !1
@@ -3718,10 +3718,10 @@ const fe = "Your session has expired. For your security, please log in again to
3718
3718
  domain: a
3719
3719
  }
3720
3720
  }), c = await _e(o?.data?.accessToken);
3721
- return c && c.payload[D.USER_ID_KEY] !== "" && c.payload[D.NONCE_KEY] === r ? {
3721
+ return c && c.payload[$.USER_ID_KEY] !== "" && c.payload[$.NONCE_KEY] === r ? {
3722
3722
  accessToken: o.data.accessToken,
3723
3723
  refreshToken: o.data.refreshToken,
3724
- userId: c.payload[D.USER_ID_KEY],
3724
+ userId: c.payload[$.USER_ID_KEY],
3725
3725
  status: !0
3726
3726
  } : {
3727
3727
  status: !1
@@ -3764,7 +3764,7 @@ class Ta {
3764
3764
  domain: a
3765
3765
  }) {
3766
3766
  const i = await _e(this.refreshToken);
3767
- if (i && i.payload[D.USER_ID_KEY] !== "") {
3767
+ if (i && i.payload[$.USER_ID_KEY] !== "") {
3768
3768
  const o = await wa({
3769
3769
  endpoint: t,
3770
3770
  clientId: r,
@@ -3814,7 +3814,7 @@ const me = () => {
3814
3814
  }), ba = (e, t) => t?.type === ve ? {
3815
3815
  ...e,
3816
3816
  isLoading: t.payload.isLoading
3817
- } : t?.type === De ? {
3817
+ } : t?.type === $e ? {
3818
3818
  ...e,
3819
3819
  isLoading: !1,
3820
3820
  isAuthenticated: !0,
@@ -3902,14 +3902,14 @@ const me = () => {
3902
3902
  return i.isLoading && u !== null ? (async () => {
3903
3903
  try {
3904
3904
  const m = await _e(u);
3905
- m && m.payload[D.USER_ID_KEY] !== "" ? (c("useEffect: setting the authentication state"), o({
3906
- type: De,
3905
+ m && m.payload[$.USER_ID_KEY] !== "" ? (c("useEffect: setting the authentication state"), o({
3906
+ type: $e,
3907
3907
  payload: {
3908
- authenticationType: m.payload[D.AUTH_TYPE_KEY],
3908
+ authenticationType: m.payload[$.AUTH_TYPE_KEY],
3909
3909
  user: {
3910
- userId: m.payload[D.USER_ID_KEY],
3911
- username: m.payload[D.USERNAME_KEY],
3912
- email: m.payload[D.EMAIL_KEY]
3910
+ userId: m.payload[$.USER_ID_KEY],
3911
+ username: m.payload[$.USERNAME_KEY],
3912
+ email: m.payload[$.EMAIL_KEY]
3913
3913
  }
3914
3914
  }
3915
3915
  })) : (c("useEffect: invalid JWT, invalidating and logging out"), await F(fe));
@@ -3947,7 +3947,7 @@ const me = () => {
3947
3947
  ua: navigator.userAgent
3948
3948
  });
3949
3949
  return de.status ? (d(de.idToken), f(de.accessToken), b(de.refreshToken), o({
3950
- type: De,
3950
+ type: $e,
3951
3951
  payload: {
3952
3952
  authenticationType: Ae.CODE,
3953
3953
  user: {
@@ -3968,7 +3968,7 @@ const me = () => {
3968
3968
  if (p) {
3969
3969
  c("getAccessToken");
3970
3970
  const le = await _e(p);
3971
- if (le && le.payload[D.USER_ID_KEY] !== "")
3971
+ if (le && le.payload[$.USER_ID_KEY] !== "")
3972
3972
  return p;
3973
3973
  }
3974
3974
  c("getAccessToken: invalid access token, trying to refresh it");
@@ -4071,7 +4071,7 @@ const me = () => {
4071
4071
  ua: navigator.userAgent
4072
4072
  }
4073
4073
  }), E.data.status === Oe ? (d(E.data.idToken), f(E.data.accessToken), b(E.data.refreshToken), o({
4074
- type: De,
4074
+ type: $e,
4075
4075
  payload: {
4076
4076
  authenticationType: Ae.PASSKEY,
4077
4077
  user: {
@@ -4133,7 +4133,7 @@ const _a = () => {
4133
4133
  if (!e)
4134
4134
  throw new Error("useAuth must be used within an AuthHookProvider");
4135
4135
  return e;
4136
- }, pi = "I'm having trouble right now. Please try again later.", yi = "action-search", mi = "action-sort", Ei = "action-toggle-prompt", gi = "action-reset-prompt", Wr = "sassy-saint-", Si = "search", wi = "sort", Ti = "sort-timestamp", vi = "sort-token-usage", Ai = "sort-memory-direction", Ri = "sort-memory-column", bi = "favorites-only", Ii = "keyword-match-all", _i = "usage-view-mode", Oi = "usage-time-range", Ci = "usage-selected-month", Pi = "private-disclosure", ki = "reasoning-disclosure", Br = "service-worker", Mi = "chat-id", Di = "sassysaint-oled-mode", $i = "sassysaint-full-screen", Yt = "data-oled-mode", zt = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Ni = 20, Ui = 30, Li = "av-prompt", Fi = "av-prompt-editable", Ki = "size-5 sm:size-4", Hi = 30, Gi = 15, xi = 130, qi = 160, Wi = 16, Bi = 24, Qi = 16, ji = 76;
4136
+ }, mi = "I'm having trouble right now. Please try again later.", Ei = "action-search", gi = "action-sort", Si = "action-toggle-prompt", wi = "action-reset-prompt", Wr = "sassy-saint-", Ti = "search", vi = "sort", Ai = "sort-timestamp", Ri = "sort-token-usage", bi = "sort-memory-direction", Ii = "sort-memory-column", _i = "favorites-only", Oi = "keyword-match-all", Ci = "usage-view-mode", Pi = "usage-time-range", ki = "usage-selected-month", Mi = "private-disclosure", $i = "reasoning-disclosure", Br = "service-worker", Di = "chat-id", Ni = "sassysaint-oled-mode", Ui = "sassysaint-full-screen", Yt = "data-oled-mode", zt = "b44c68f0-e5b3-4a1d-a3e3-df8632b0223b", Li = 20, Fi = 30, Ki = "av-prompt", Hi = "av-prompt-editable", Gi = "size-5 sm:size-4", xi = 30, qi = 15, Wi = 130, Bi = 160, Qi = 16, ji = 24, Vi = 16, Ji = 76;
4137
4137
  let rt = null, z = !1;
4138
4138
  typeof window < "u" && "serviceWorker" in navigator && navigator.serviceWorker.addEventListener("controllerchange", () => {
4139
4139
  z && (z = !1, window.location.reload());
@@ -4183,7 +4183,7 @@ async function Ca() {
4183
4183
  return console.error("[SW] Service worker un-registration failed:", e), !1;
4184
4184
  }
4185
4185
  }
4186
- async function Vi(e) {
4186
+ async function Yi(e) {
4187
4187
  if (Oa(e), e) {
4188
4188
  z = !0;
4189
4189
  try {
@@ -4238,7 +4238,7 @@ async function Pa() {
4238
4238
  function st() {
4239
4239
  return "unknown";
4240
4240
  }
4241
- async function Ji(e = {}) {
4241
+ async function zi(e = {}) {
4242
4242
  const { urlLimitPerCache: t } = e;
4243
4243
  if (!("caches" in window))
4244
4244
  return { version: st(), caches: [], totalItems: 0 };
@@ -4312,7 +4312,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4312
4312
  /* @__PURE__ */ S(
4313
4313
  "dt",
4314
4314
  {
4315
- className: $e(
4315
+ className: De(
4316
4316
  { "my-0": r, "my-1": !r },
4317
4317
  "inline-block font-bold text-copy-dark dark:text-copy-lighter"
4318
4318
  ),
@@ -4322,24 +4322,24 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4322
4322
  /* @__PURE__ */ S(
4323
4323
  "dd",
4324
4324
  {
4325
- className: $e(
4325
+ className: De(
4326
4326
  { "my-0": r, "my-1": !r },
4327
4327
  "inline-block"
4328
4328
  ),
4329
4329
  children: t[s]
4330
4330
  }
4331
4331
  )
4332
- ] }) }, `${e}-${s}`)) : null, Da = ({
4332
+ ] }) }, `${e}-${s}`)) : null, $a = ({
4333
4333
  isAuthenticated: e,
4334
4334
  extraClass: t,
4335
4335
  oledMode: r
4336
- }) => $e("px-4", "flex-1 overflow-y-auto", e ? "pt-0" : "pt-10", t, {
4336
+ }) => De("px-4", "flex-1 overflow-y-auto", e ? "pt-0" : "pt-10", t, {
4337
4337
  "bg-surface-darker/95 dark:bg-surface-darker": r,
4338
4338
  "bg-surface-darker": !r
4339
- }), $a = ({
4339
+ }), Da = ({
4340
4340
  extraClass: e,
4341
4341
  fullScreen: t
4342
- } = {}) => $e(
4342
+ } = {}) => De(
4343
4343
  "flex flex-col",
4344
4344
  "w-full md:mx-auto",
4345
4345
  "sm:px-5 px-2",
@@ -4375,7 +4375,19 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4375
4375
  icon: u
4376
4376
  }), La = (e, t) => t === "ready" && !!e && e.length > 0, Fa = (e) => {
4377
4377
  e ? document.documentElement.setAttribute(Yt, "true") : document.documentElement.removeAttribute(Yt);
4378
- }, Yi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, DOMAIN: Vr, applyOledMode: Fa, canEvaluateModels: La, getCurrentGeoLocation: ka, getLayoutPaddingClass: $a, getMessageContaintWrapperClass: Da, isDev: Ge, isProd: jr, isTauri: Na, renderDataAsList: Ma, toastOptions: Ua }, Symbol.toStringTag, { value: "Module" })), w = {
4378
+ }, Ka = new Intl.DateTimeFormat("en-US", {
4379
+ year: "numeric",
4380
+ month: "short",
4381
+ day: "2-digit",
4382
+ hour: "2-digit",
4383
+ minute: "2-digit",
4384
+ hour12: !0
4385
+ });
4386
+ function Ha(e) {
4387
+ const t = typeof e == "string" ? new Date(parseInt(e, 10)) : new Date(e), r = Ka.formatToParts(t), s = (n) => r.find((a) => a.type === n)?.value ?? "";
4388
+ return `${s("month")} ${s("day")}, ${s("year")} - ${s("hour")}:${s("minute")} ${s("dayPeriod")}`;
4389
+ }
4390
+ const Xi = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({ __proto__: null, DOMAIN: Vr, applyOledMode: Fa, canEvaluateModels: La, formatTimestamp: Ha, getCurrentGeoLocation: ka, getLayoutPaddingClass: Da, getMessageContaintWrapperClass: $a, isDev: Ge, isProd: jr, isTauri: Na, renderDataAsList: Ma, toastOptions: Ua }, Symbol.toStringTag, { value: "Module" })), w = {
4379
4391
  GET_LOCATION: `query GetLocation($latitude: Float!, $longitude: Float!) {
4380
4392
  location(latitude: $latitude, longitude: $longitude) {
4381
4393
  country
@@ -4422,6 +4434,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4422
4434
  chatById(id: $id) {
4423
4435
  model
4424
4436
  summary
4437
+ timestamp
4425
4438
  tokenUsage
4426
4439
  messages {
4427
4440
  content
@@ -4706,12 +4719,12 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4706
4719
  schema: w.RESTORE_MEMORY,
4707
4720
  method: "restoreMemory"
4708
4721
  }
4709
- }, Ka = process.env.PUBLIC_SASSY_API_SERVER_URL, xe = async ({
4722
+ }, Ga = process.env.PUBLIC_SASSY_API_SERVER_URL, xe = async ({
4710
4723
  query: e,
4711
4724
  data: t,
4712
4725
  headers: r = {},
4713
4726
  ...s
4714
- }) => await fetch(`${Ka}/graphql`, {
4727
+ }) => await fetch(`${Ga}/graphql`, {
4715
4728
  method: "POST",
4716
4729
  credentials: "include",
4717
4730
  headers: {
@@ -4756,7 +4769,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4756
4769
  } catch (r) {
4757
4770
  throw console.error(r), r;
4758
4771
  }
4759
- }, zi = async ({
4772
+ }, Zi = async ({
4760
4773
  provider: e,
4761
4774
  model: t,
4762
4775
  accessToken: r,
@@ -4771,7 +4784,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4771
4784
  type: R.SET_USER_PREFERENCES,
4772
4785
  params: n
4773
4786
  });
4774
- }, Xi = async ({
4787
+ }, eo = async ({
4775
4788
  plan: e,
4776
4789
  accessToken: t,
4777
4790
  username: r
@@ -4792,13 +4805,13 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4792
4805
  USAGE: "usage",
4793
4806
  USER_MEMORIES: "userMemories",
4794
4807
  EXPIRED_MEMORIES: "expiredMemories"
4795
- }, Zi = () => Z({
4808
+ }, to = () => Z({
4796
4809
  queryKey: [A.CAPABILITIES],
4797
4810
  queryFn: async () => await ee({
4798
4811
  type: R.GET_SERVER_CAPABILITIES,
4799
4812
  noAuth: !0
4800
4813
  })
4801
- }), eo = () => Z({
4814
+ }), ro = () => Z({
4802
4815
  queryKey: [A.CHANGELOGS],
4803
4816
  queryFn: async () => await ee({
4804
4817
  type: R.GET_CHANGELOGS,
@@ -4807,7 +4820,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4807
4820
  client: !0
4808
4821
  }
4809
4822
  })
4810
- }), Ha = ({
4823
+ }), xa = ({
4811
4824
  user: e,
4812
4825
  getAccessToken: t
4813
4826
  }) => Z({
@@ -4819,7 +4832,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4819
4832
  type: R.GET_USER_PREFERENCES,
4820
4833
  getAccessToken: t
4821
4834
  })
4822
- }), to = ({
4835
+ }), so = ({
4823
4836
  user: e,
4824
4837
  getAccessToken: t
4825
4838
  }) => Z({
@@ -4831,7 +4844,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4831
4844
  type: R.GET_CHATS_STATS,
4832
4845
  getAccessToken: t
4833
4846
  })
4834
- }), ro = ({
4847
+ }), no = ({
4835
4848
  user: e,
4836
4849
  searchString: t,
4837
4850
  sortDirection: r,
@@ -4872,7 +4885,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4872
4885
  type: R.GET_CHATS,
4873
4886
  getAccessToken: n
4874
4887
  })
4875
- }), so = ({
4888
+ }), ao = ({
4876
4889
  chatId: e,
4877
4890
  getAccessToken: t,
4878
4891
  enabled: r = !0
@@ -4884,7 +4897,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4884
4897
  type: R.GET_CHAT,
4885
4898
  getAccessToken: t
4886
4899
  })
4887
- }), no = ({
4900
+ }), io = ({
4888
4901
  getAccessToken: e
4889
4902
  }) => {
4890
4903
  const t = V();
@@ -4908,7 +4921,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4908
4921
  t.invalidateQueries({ queryKey: [A.CHATS, s.userId] });
4909
4922
  }
4910
4923
  });
4911
- }, ao = ({
4924
+ }, oo = ({
4912
4925
  getAccessToken: e
4913
4926
  }) => {
4914
4927
  const t = V();
@@ -4925,7 +4938,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4925
4938
  t.invalidateQueries({ queryKey: [A.CHATS, s.userId] });
4926
4939
  }
4927
4940
  });
4928
- }, io = ({
4941
+ }, co = ({
4929
4942
  getAccessToken: e
4930
4943
  }) => {
4931
4944
  const t = V();
@@ -4942,7 +4955,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4942
4955
  t.invalidateQueries({ queryKey: [A.CHATS, s.userId] });
4943
4956
  }
4944
4957
  });
4945
- }, oo = ({
4958
+ }, uo = ({
4946
4959
  user: e,
4947
4960
  month: t,
4948
4961
  year: r = (/* @__PURE__ */ new Date()).getFullYear().toString(),
@@ -4964,7 +4977,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4964
4977
  type: R.GET_USAGE,
4965
4978
  getAccessToken: a
4966
4979
  })
4967
- }), co = ({
4980
+ }), lo = ({
4968
4981
  user: e,
4969
4982
  query: t,
4970
4983
  getAccessToken: r,
@@ -4977,7 +4990,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
4977
4990
  type: R.GET_USER_MEMORIES,
4978
4991
  getAccessToken: r
4979
4992
  })
4980
- }), uo = ({
4993
+ }), ho = ({
4981
4994
  getAccessToken: e
4982
4995
  }) => {
4983
4996
  const t = V();
@@ -5001,7 +5014,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5001
5014
  });
5002
5015
  }
5003
5016
  });
5004
- }, lo = ({
5017
+ }, fo = ({
5005
5018
  getAccessToken: e
5006
5019
  }) => {
5007
5020
  const t = V();
@@ -5025,7 +5038,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5025
5038
  });
5026
5039
  }
5027
5040
  });
5028
- }, ho = ({
5041
+ }, po = ({
5029
5042
  getAccessToken: e
5030
5043
  }) => {
5031
5044
  const t = V();
@@ -5044,7 +5057,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5044
5057
  });
5045
5058
  }
5046
5059
  });
5047
- }, fo = ({
5060
+ }, yo = ({
5048
5061
  getAccessToken: e
5049
5062
  }) => {
5050
5063
  const t = V();
@@ -5063,7 +5076,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5063
5076
  });
5064
5077
  }
5065
5078
  });
5066
- }, po = ({
5079
+ }, mo = ({
5067
5080
  user: e,
5068
5081
  query: t,
5069
5082
  getAccessToken: r,
@@ -5076,7 +5089,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5076
5089
  type: R.GET_EXPIRED_MEMORIES,
5077
5090
  getAccessToken: r
5078
5091
  })
5079
- }), yo = ({
5092
+ }), Eo = ({
5080
5093
  getAccessToken: e
5081
5094
  }) => {
5082
5095
  const t = V();
@@ -5143,7 +5156,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5143
5156
  allowedModels: [],
5144
5157
  version: null,
5145
5158
  status: "idle"
5146
- }, Ga = ({
5159
+ }, qa = ({
5147
5160
  user: e,
5148
5161
  getAccessToken: t,
5149
5162
  children: r
@@ -5173,7 +5186,7 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5173
5186
  ne(() => {
5174
5187
  s.status === "idle" && i();
5175
5188
  }, [i, s.status]);
5176
- const o = Ha({ user: e, getAccessToken: t });
5189
+ const o = xa({ user: e, getAccessToken: t });
5177
5190
  ne(() => {
5178
5191
  o.isLoading && s.status === "idle" && n((d) => ({ ...d, status: "loading" }));
5179
5192
  }, [o.isLoading, s.status]), ne(() => {
@@ -5241,34 +5254,34 @@ const jr = process.env.NODE_ENV === "production", Ge = !jr, Vr = Ge ? "gizmette.
5241
5254
  );
5242
5255
  return /* @__PURE__ */ S(Jr.Provider, { value: u, children: r });
5243
5256
  };
5244
- function mo() {
5257
+ function go() {
5245
5258
  const e = pt(Jr);
5246
5259
  if (!e)
5247
5260
  throw new Error("useEntitlements must be used within EntitlementsProvider");
5248
5261
  return e;
5249
5262
  }
5250
- const xa = new URL(document.location.href).searchParams, Zt = !!xa.get("debug") || !1, qa = tr(() => import(
5263
+ const Wa = new URL(document.location.href).searchParams, Zt = !!Wa.get("debug") || !1, Ba = tr(() => import(
5251
5264
  /* webpackChunkName: "LazyApp" */
5252
- "./App.B9tjGMnG.js"
5253
- ).then((e) => e.App)), Wa = tr(
5265
+ "./App.BERAIqpH.js"
5266
+ ).then((e) => e.App)), Qa = tr(
5254
5267
  () => import(
5255
5268
  /* webpackChunkName: "LazyLogin" */
5256
- "./LoginEntry.DR0qFvNl.js"
5269
+ "./LoginEntry.NKL57b20.js"
5257
5270
  )
5258
- ), Ba = new Ns(), er = ({
5271
+ ), ja = new Ns(), er = ({
5259
5272
  isComponent: e,
5260
5273
  headerHeight: t
5261
5274
  }) => {
5262
5275
  const { isAuthenticated: r, isLoading: s, user: n, getAccessToken: a } = _a();
5263
- return s ? /* @__PURE__ */ S("div", {}) : r ? /* @__PURE__ */ S(It, { fallback: /* @__PURE__ */ S("div", {}), children: /* @__PURE__ */ S(Us, { client: Ba, children: /* @__PURE__ */ S(
5264
- Ga,
5276
+ return s ? /* @__PURE__ */ S("div", {}) : r ? /* @__PURE__ */ S(It, { fallback: /* @__PURE__ */ S("div", {}), children: /* @__PURE__ */ S(Us, { client: ja, children: /* @__PURE__ */ S(
5277
+ qa,
5265
5278
  {
5266
5279
  user: n?.username,
5267
5280
  getAccessToken: a,
5268
- children: /* @__PURE__ */ S(qa, { isComponent: e, headerHeight: t })
5281
+ children: /* @__PURE__ */ S(Ba, { isComponent: e, headerHeight: t })
5269
5282
  }
5270
- ) }) }) : /* @__PURE__ */ S(It, { fallback: /* @__PURE__ */ S("div", {}), children: /* @__PURE__ */ S(Wa, {}) });
5271
- }, Qa = ({
5283
+ ) }) }) : /* @__PURE__ */ S(It, { fallback: /* @__PURE__ */ S("div", {}), children: /* @__PURE__ */ S(Qa, {}) });
5284
+ }, Va = ({
5272
5285
  isComponent: e = !1,
5273
5286
  headerHeight: t = 0,
5274
5287
  domain: r = Vr,
@@ -5289,8 +5302,8 @@ const xa = new URL(document.location.href).searchParams, Zt = !!xa.get("debug")
5289
5302
  endpoint: process.env.PUBLIC_AUTH_SERVER_URL,
5290
5303
  children: /* @__PURE__ */ S(er, { isComponent: e, headerHeight: t })
5291
5304
  }
5292
- ) : /* @__PURE__ */ S(Jt, { clientId: zt, domain: r, debug: Zt, children: /* @__PURE__ */ S(er, { isComponent: e, headerHeight: t }) })), Eo = ({ domain: e, headerHeight: t }) => /* @__PURE__ */ S(
5293
- Qa,
5305
+ ) : /* @__PURE__ */ S(Jt, { clientId: zt, domain: r, debug: Zt, children: /* @__PURE__ */ S(er, { isComponent: e, headerHeight: t }) })), So = ({ domain: e, headerHeight: t }) => /* @__PURE__ */ S(
5306
+ Va,
5294
5307
  {
5295
5308
  isComponent: !0,
5296
5309
  domain: e,
@@ -5299,97 +5312,98 @@ const xa = new URL(document.location.href).searchParams, Zt = !!xa.get("debug")
5299
5312
  }
5300
5313
  );
5301
5314
  export {
5302
- gi as ACTION_RESET_PROMPT,
5303
- yi as ACTION_SEARCH,
5304
- mi as ACTION_SORT,
5305
- Ei as ACTION_TOGGLE_PROMPT,
5306
- Ki as DEFAULT_ICON_ACTION_SIZE,
5307
- pi as ERROR_MESSAGE,
5308
- Ui as INFINITE_SCROLL_LIMIT,
5309
- Ni as INFINITE_SCROLL_THRESHOLD,
5310
- Wi as INPUT_BOTTOM_OFFSET,
5311
- ji as INPUT_BOTTOM_OFFSET_EXTRA,
5312
- Qi as INPUT_BOTTOM_OFFSET_IPAD,
5313
- Bi as INPUT_BOTTOM_OFFSET_IPHONE,
5314
- ui as K,
5315
- Mi as LOCAL_STORAGE_CHAT_ID,
5316
- bi as LOCAL_STORAGE_FAVORITES_ONLY,
5317
- $i as LOCAL_STORAGE_FULL_SCREEN,
5318
- Ii as LOCAL_STORAGE_KEYWORD_MATCH_ALL,
5319
- Di as LOCAL_STORAGE_OLED_MODE,
5315
+ wi as ACTION_RESET_PROMPT,
5316
+ Ei as ACTION_SEARCH,
5317
+ gi as ACTION_SORT,
5318
+ Si as ACTION_TOGGLE_PROMPT,
5319
+ Gi as DEFAULT_ICON_ACTION_SIZE,
5320
+ mi as ERROR_MESSAGE,
5321
+ Fi as INFINITE_SCROLL_LIMIT,
5322
+ Li as INFINITE_SCROLL_THRESHOLD,
5323
+ Qi as INPUT_BOTTOM_OFFSET,
5324
+ Ji as INPUT_BOTTOM_OFFSET_EXTRA,
5325
+ Vi as INPUT_BOTTOM_OFFSET_IPAD,
5326
+ ji as INPUT_BOTTOM_OFFSET_IPHONE,
5327
+ di as K,
5328
+ Di as LOCAL_STORAGE_CHAT_ID,
5329
+ _i as LOCAL_STORAGE_FAVORITES_ONLY,
5330
+ Ui as LOCAL_STORAGE_FULL_SCREEN,
5331
+ Oi as LOCAL_STORAGE_KEYWORD_MATCH_ALL,
5332
+ Ni as LOCAL_STORAGE_OLED_MODE,
5320
5333
  Wr as LOCAL_STORAGE_PREFIX,
5321
- Pi as LOCAL_STORAGE_PRIVATE_DISCLOSURE,
5322
- ki as LOCAL_STORAGE_REASONING_DISCLOSURE,
5323
- Si as LOCAL_STORAGE_SEARCH,
5324
- wi as LOCAL_STORAGE_SORT,
5325
- Ri as LOCAL_STORAGE_SORT_MEMORY_COLUMN,
5326
- Ai as LOCAL_STORAGE_SORT_MEMORY_DIRECTION,
5327
- Ti as LOCAL_STORAGE_SORT_TIMESTAMP,
5328
- vi as LOCAL_STORAGE_SORT_TOKEN_USAGE,
5329
- Ci as LOCAL_STORAGE_USAGE_SELECTED_MONTH,
5330
- Oi as LOCAL_STORAGE_USAGE_TIME_RANGE,
5331
- _i as LOCAL_STORAGE_USAGE_VIEW_MODE,
5332
- Za as P,
5333
- Li as PROMPT_CLASSNAME,
5334
- Fi as PROMPT_EDITABLE_AREA_CLASSNAME,
5334
+ Mi as LOCAL_STORAGE_PRIVATE_DISCLOSURE,
5335
+ $i as LOCAL_STORAGE_REASONING_DISCLOSURE,
5336
+ Ti as LOCAL_STORAGE_SEARCH,
5337
+ vi as LOCAL_STORAGE_SORT,
5338
+ Ii as LOCAL_STORAGE_SORT_MEMORY_COLUMN,
5339
+ bi as LOCAL_STORAGE_SORT_MEMORY_DIRECTION,
5340
+ Ai as LOCAL_STORAGE_SORT_TIMESTAMP,
5341
+ Ri as LOCAL_STORAGE_SORT_TOKEN_USAGE,
5342
+ ki as LOCAL_STORAGE_USAGE_SELECTED_MONTH,
5343
+ Pi as LOCAL_STORAGE_USAGE_TIME_RANGE,
5344
+ Ci as LOCAL_STORAGE_USAGE_VIEW_MODE,
5345
+ ti as P,
5346
+ Ki as PROMPT_CLASSNAME,
5347
+ Hi as PROMPT_EDITABLE_AREA_CLASSNAME,
5335
5348
  R as SERVICE_TYPES,
5336
- Eo as SassySaint,
5337
- ti as U,
5338
- Gi as UI_BUTTON_SCROLL_BUFFER,
5339
- xi as UI_DEFAULT_MAIN_HEIGHT,
5340
- qi as UI_DEFAULT_MAIN_HEIGHT_IPHONE,
5341
- Hi as UI_FOOTER_BUFFER,
5342
- ni as V,
5343
- oi as W,
5349
+ So as SassySaint,
5350
+ si as U,
5351
+ qi as UI_BUTTON_SCROLL_BUFFER,
5352
+ Wi as UI_DEFAULT_MAIN_HEIGHT,
5353
+ Bi as UI_DEFAULT_MAIN_HEIGHT_IPHONE,
5354
+ xi as UI_FOOTER_BUFFER,
5355
+ ii as V,
5356
+ ui as W,
5344
5357
  qe as a,
5345
5358
  Fa as applyOledMode,
5346
5359
  La as canEvaluateModels,
5347
- Ya as e,
5348
- Ji as getCacheInfo,
5360
+ Xa as e,
5361
+ Ha as formatTimestamp,
5362
+ zi as getCacheInfo,
5349
5363
  ka as getCurrentGeoLocation,
5350
- $a as getLayoutPaddingClass,
5351
- Da as getMessageContaintWrapperClass,
5364
+ Da as getLayoutPaddingClass,
5365
+ $a as getMessageContaintWrapperClass,
5352
5366
  J as graphQLRequest,
5353
- Vi as handleServiceWorkerToggle,
5367
+ Yi as handleServiceWorkerToggle,
5354
5368
  yt as i,
5355
5369
  Ge as isDev,
5356
5370
  ht as isServiceWorkerEnabled,
5357
5371
  Na as isTauri,
5358
- ci as j,
5359
- ii as k,
5372
+ li as j,
5373
+ ci as k,
5360
5374
  _a as n,
5361
- za as n$1,
5362
- Xa as o,
5363
- ei as p,
5375
+ Za as n$1,
5376
+ ei as o,
5377
+ ri as p,
5364
5378
  T as r,
5365
5379
  Ma as renderDataAsList,
5366
5380
  mt as s,
5367
- Ka as serverUrl,
5368
- zi as setNewProvider,
5369
- Xi as setUserPlan,
5381
+ Ga as serverUrl,
5382
+ Zi as setNewProvider,
5383
+ eo as setUserPlan,
5370
5384
  Ae as st,
5371
- eo as useChangelogs,
5372
- so as useChat,
5373
- ro as useChatsHistory,
5374
- oo as useChatsUsage,
5375
- ho as useDeleteAllActiveMemories,
5376
- fo as useDeleteAllExpiredMemories,
5377
- ao as useDeleteChat,
5378
- lo as useDeleteMemory,
5379
- mo as useEntitlements,
5380
- po as useExpiredMemories,
5385
+ ro as useChangelogs,
5386
+ ao as useChat,
5387
+ no as useChatsHistory,
5388
+ uo as useChatsUsage,
5389
+ po as useDeleteAllActiveMemories,
5390
+ yo as useDeleteAllExpiredMemories,
5391
+ oo as useDeleteChat,
5392
+ fo as useDeleteMemory,
5393
+ go as useEntitlements,
5394
+ mo as useExpiredMemories,
5381
5395
  V as useQueryClient,
5382
- yo as useRestoreMemory,
5383
- no as useSaveChat,
5384
- Zi as useServerCapabilities,
5385
- io as useToggleFavoriteChat,
5386
- uo as useUpdateMemory,
5387
- to as useUserChatStats,
5388
- co as useUserMemories,
5389
- Ha as useUserPreferences,
5390
- Yi as utilities,
5391
- si as v,
5392
- ai as w,
5396
+ Eo as useRestoreMemory,
5397
+ io as useSaveChat,
5398
+ to as useServerCapabilities,
5399
+ co as useToggleFavoriteChat,
5400
+ ho as useUpdateMemory,
5401
+ so as useUserChatStats,
5402
+ lo as useUserMemories,
5403
+ xa as useUserPreferences,
5404
+ Xi as utilities,
5405
+ ai as v,
5406
+ oi as w,
5393
5407
  us as x,
5394
- ri as y
5408
+ ni as y
5395
5409
  };