@versini/sassysaint 8.118.2 → 8.118.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/dist/chunks/{AboutChangelog.D-CvvmNj.js → AboutChangelog.Dspi4cmi.js} +2 -2
  2. package/dist/chunks/{AboutEntry.DSwJ8c3X.js → AboutEntry.DxWZPlbg.js} +7 -7
  3. package/dist/chunks/{App.CeXH-zPe.js → App.yIuQGm0t.js} +17 -17
  4. package/dist/chunks/{BubbleActions.D7oR9h2P.js → BubbleActions.BMYwxyEv.js} +3 -3
  5. package/dist/chunks/{ButtonIconDelete.BMSba-RX.js → ButtonIconDelete.BMqZFgu1.js} +2 -2
  6. package/dist/chunks/{Chart.BcLSFk4S.js → Chart.C1IWoXDe.js} +2 -2
  7. package/dist/chunks/{ChatBubbleAssistant.B7aKj9Kz.js → ChatBubbleAssistant.BKlO1McH.js} +5 -5
  8. package/dist/chunks/{ChatBubbleUser.D1cm5gzP.js → ChatBubbleUser.CSjDB1B9.js} +4 -4
  9. package/dist/chunks/{ChatHistoryTable.BvYdhMqi.js → ChatHistoryTable.B8dA3To0.js} +4 -4
  10. package/dist/chunks/{HistoryEntry.B0QgepOk.js → HistoryEntry.Bhv62llk.js} +129 -124
  11. package/dist/chunks/{LoginEntry.-bnrLsVp.js → LoginEntry.BEPZiizw.js} +4 -4
  12. package/dist/chunks/{LogoEntry.rzjFIdbv.js → LogoEntry.BZFz5IRw.js} +1 -1
  13. package/dist/chunks/{MemoriesEntry.BOvQNYiF.js → MemoriesEntry.C40K6l5F.js} +71 -67
  14. package/dist/chunks/{ProfileEntry.BjWgDBqL.js → ProfileEntry.C0WTyHem.js} +4 -4
  15. package/dist/chunks/{SettingsEntry.XE7O69z9.js → SettingsEntry.B1WFVdjg.js} +5 -5
  16. package/dist/chunks/{UsageEntry.DV6W6WGG.js → UsageEntry.CPOickJC.js} +5 -5
  17. package/dist/chunks/{_baseUniq.Dmbcf1N7.js → _baseUniq.YXUy3_Q9.js} +1 -1
  18. package/dist/chunks/{arc.BN6_60mZ.js → arc.CgPKPJv0.js} +1 -1
  19. package/dist/chunks/{architecture-U656AL7Q.3wcHlTzP.js → architecture-U656AL7Q.D2ZUn_s6.js} +1 -1
  20. package/dist/chunks/{architectureDiagram-VXUJARFQ.ULGdKAsY.js → architectureDiagram-VXUJARFQ.DbVJLkeI.js} +4 -4
  21. package/dist/chunks/{blockDiagram-VD42YOAC.rsYqZQuv.js → blockDiagram-VD42YOAC.DFlSEVyA.js} +5 -5
  22. package/dist/chunks/{browser.ygpjKEUL.js → browser.DtDEL-3A.js} +1 -1
  23. package/dist/chunks/{c4Diagram-YG6GDRKO.BoulQIAf.js → c4Diagram-YG6GDRKO.CiBMNtX8.js} +2 -2
  24. package/dist/chunks/{channel.CeCiSz8G.js → channel.DS55bkfq.js} +1 -1
  25. package/dist/chunks/{chunk-4BX2VUAB.nPXiqVPa.js → chunk-4BX2VUAB.t3AfQtrb.js} +1 -1
  26. package/dist/chunks/{chunk-55IACEB6.BVjwceMV.js → chunk-55IACEB6.tlGBBIP8.js} +1 -1
  27. package/dist/chunks/{chunk-B4BG7PRW.C71uSmgS.js → chunk-B4BG7PRW.DB-Y3GhQ.js} +4 -4
  28. package/dist/chunks/{chunk-DI55MBZ5.C1pnFYaE.js → chunk-DI55MBZ5.CkwKVFLI.js} +3 -3
  29. package/dist/chunks/{chunk-FMBD7UC4.jDZnjru1.js → chunk-FMBD7UC4.CRLAfQmx.js} +1 -1
  30. package/dist/chunks/{chunk-QN33PNHL.DP6Fwelp.js → chunk-QN33PNHL.DF4bWkbp.js} +1 -1
  31. package/dist/chunks/{chunk-QZHKN3VN.E73siEqr.js → chunk-QZHKN3VN.BijmX3ar.js} +1 -1
  32. package/dist/chunks/{chunk-TZMSLE5B.BuA_4J8K.js → chunk-TZMSLE5B.BIvqaR0r.js} +1 -1
  33. package/dist/chunks/{classDiagram-2ON5EDUG.D_z1qDzM.js → classDiagram-2ON5EDUG.SU5U-1P1.js} +2 -2
  34. package/dist/chunks/{classDiagram-v2-WZHVMYZB.D_z1qDzM.js → classDiagram-v2-WZHVMYZB.SU5U-1P1.js} +2 -2
  35. package/dist/chunks/{clone.mMQDv3bv.js → clone.8clUx6ET.js} +1 -1
  36. package/dist/chunks/{cose-bilkent-S5V4N54A.ck8LAP13.js → cose-bilkent-S5V4N54A.DnWtIsYd.js} +2 -2
  37. package/dist/chunks/{dagre-6UL2VRFP.BItaK99h.js → dagre-6UL2VRFP.C8KeFvOQ.js} +5 -5
  38. package/dist/chunks/{diagram-PSM6KHXK.DyW4Ptmi.js → diagram-PSM6KHXK.DnzHPurw.js} +4 -4
  39. package/dist/chunks/{diagram-QEK2KX5R.jKwj3GRj.js → diagram-QEK2KX5R.DCKZbQSh.js} +3 -3
  40. package/dist/chunks/{diagram-S2PKOQOG.DsMH6_Zw.js → diagram-S2PKOQOG.lY2nb2ry.js} +3 -3
  41. package/dist/chunks/{erDiagram-Q2GNP2WA.CzmoZDbP.js → erDiagram-Q2GNP2WA.BYtHx1uZ.js} +4 -4
  42. package/dist/chunks/{flowDiagram-NV44I4VS.DxdqqGRo.js → flowDiagram-NV44I4VS.G-nRLM7M.js} +5 -5
  43. package/dist/chunks/{ganttDiagram-JELNMOA3.CcLEjTud.js → ganttDiagram-JELNMOA3.B7RwC1m-.js} +2 -2
  44. package/dist/chunks/{gitGraph-F6HP7TQM.jRe6CGxe.js → gitGraph-F6HP7TQM.Chwk8Igs.js} +1 -1
  45. package/dist/chunks/{gitGraphDiagram-NY62KEGX.BU9jMEjw.js → gitGraphDiagram-NY62KEGX.BQpsCwST.js} +4 -4
  46. package/dist/chunks/{graph.D_97simK.js → graph.toxuN_lw.js} +2 -2
  47. package/dist/chunks/{index.Ba4pxqR4.js → index.7D5oQmQR.js} +3 -3
  48. package/dist/chunks/{index.C8TVf8G8.js → index.BlDUpXR0.js} +1 -1
  49. package/dist/chunks/{index.Cl3rYVMB.js → index.Bt339Jho.js} +1 -1
  50. package/dist/chunks/{index.KOLL3mel.js → index.ChIqgESd.js} +1 -1
  51. package/dist/chunks/{index.5Dk40BwF.js → index.D_muERB9.js} +1 -1
  52. package/dist/chunks/{index.ggYqhS1e.js → index.KxPrp_tf.js} +3 -3
  53. package/dist/chunks/{index.BkOYiDfc.js → index.hGvmkGha.js} +5 -5
  54. package/dist/chunks/{index.UROP8tJb.js → index.mDr9FsVI.js} +1 -1
  55. package/dist/chunks/{index.QUKSRj2a.js → index.petd1VFV.js} +1 -1
  56. package/dist/chunks/{info-NVLQJR56.CszFnDwo.js → info-NVLQJR56.DqwhVDNM.js} +1 -1
  57. package/dist/chunks/{infoDiagram-WHAUD3N6.YyEpS05M.js → infoDiagram-WHAUD3N6.Bz9PwgrD.js} +2 -2
  58. package/dist/chunks/{journeyDiagram-XKPGCS4Q.DcbRg9cB.js → journeyDiagram-XKPGCS4Q.b8ugCUee.js} +4 -4
  59. package/dist/chunks/{kanban-definition-3W4ZIXB7.BbVIN7fW.js → kanban-definition-3W4ZIXB7.ruPmZWrk.js} +2 -2
  60. package/dist/chunks/{layout.CfcudlJZ.js → layout.Bw1IU1i2.js} +4 -4
  61. package/dist/chunks/{mermaid-parser.core.kpF3KDFK.js → mermaid-parser.core.BgEYW9Yt.js} +10 -10
  62. package/dist/chunks/{min.DRYc5zYs.js → min.C98rd9wr.js} +2 -2
  63. package/dist/chunks/{mindmap-definition-VGOIOE7T.Dn-mBgyv.js → mindmap-definition-VGOIOE7T.VWXpOB6F.js} +4 -4
  64. package/dist/chunks/{packet-BFZMPI3H.Cayad0vN.js → packet-BFZMPI3H.BYL6GQTI.js} +1 -1
  65. package/dist/chunks/{pie-7BOR55EZ.zajRRxb0.js → pie-7BOR55EZ.BbY5iD1e.js} +1 -1
  66. package/dist/chunks/{pieDiagram-ADFJNKIX.BK3VLjHA.js → pieDiagram-ADFJNKIX.CsOtW7r-.js} +4 -4
  67. package/dist/chunks/{quadrantDiagram-AYHSOK5B.BsUBxvka.js → quadrantDiagram-AYHSOK5B.7UFNI_vX.js} +1 -1
  68. package/dist/chunks/{radar-NHE76QYJ.q2p7Sm3i.js → radar-NHE76QYJ.DvagCir3.js} +1 -1
  69. package/dist/chunks/{rehype-mermaid.2ONPwhMk.js → rehype-mermaid.hM-_EEUn.js} +33 -33
  70. package/dist/chunks/{requirementDiagram-UZGBJVZJ.B4PjDM9-.js → requirementDiagram-UZGBJVZJ.CBvrcwfU.js} +3 -3
  71. package/dist/chunks/{sankeyDiagram-TZEHDZUN.CDGSRLf0.js → sankeyDiagram-TZEHDZUN.DwPokg-1.js} +1 -1
  72. package/dist/chunks/{sequenceDiagram-WL72ISMW.QdoIh0dQ.js → sequenceDiagram-WL72ISMW.DTlYi-bq.js} +3 -3
  73. package/dist/chunks/{stateDiagram-FKZM4ZOC.Dp31Fg9B.js → stateDiagram-FKZM4ZOC.B3zjLqs6.js} +4 -4
  74. package/dist/chunks/{stateDiagram-v2-4FDKWEC3.BACEZc8w.js → stateDiagram-v2-4FDKWEC3.M0ePKl-7.js} +2 -2
  75. package/dist/chunks/{timeline-definition-IT6M3QCI.DsQAVlJ0.js → timeline-definition-IT6M3QCI.QqZxgHc2.js} +2 -2
  76. package/dist/chunks/{treemap-KMMF4GRG.C5WeXexz.js → treemap-KMMF4GRG.BmCv7l6d.js} +1 -1
  77. package/dist/chunks/useAnimatedHeight.3F4Xj7iE.js +91 -0
  78. package/dist/chunks/{useMarkdown.SxDFn8Cl.js → useMarkdown.ZHvHgCd8.js} +8 -8
  79. package/dist/chunks/{xychartDiagram-PRI3JC2R.Cwk7BfJr.js → xychartDiagram-PRI3JC2R.CPjv7vTS.js} +1 -1
  80. package/dist/components/SassySaint/SassySaint.js +1 -1
  81. package/dist/index.js +3 -3
  82. package/package.json +3 -3
  83. package/dist/chunks/InlineFilter.1P5aQFGT.js +0 -58
@@ -1,49 +1,49 @@
1
- import { jsxs as l, jsx as t, Fragment as W } from "react/jsx-runtime";
2
- import { n as ee, INFINITE_SCROLL_LIMIT as J, INFINITE_SCROLL_THRESHOLD as Z, LOCAL_STORAGE_PREFIX as u, LOCAL_STORAGE_SORT_TIMESTAMP as re, LOCAL_STORAGE_SORT_TOKEN_USAGE as oe, LOCAL_STORAGE_SORT as ne, y as V, LOCAL_STORAGE_CHAT_ID as ie, useDeleteChat as ce, useToggleFavoriteChat as le, graphQLRequest as de, SERVICE_TYPES as he, ACTION_SORT as ue, V as Ce, LOCAL_STORAGE_SEARCH as me, LOCAL_STORAGE_FAVORITES_ONLY as Se, LOCAL_STORAGE_KEYWORD_MATCH_ALL as fe, useChatsHistory as Te, useUserChatStats as ye, ACTION_SEARCH as ge } from "./index.BkOYiDfc.js";
3
- import { useAiChat as pe, useLocalStorage as C, LazyToastContainerWrapper as Ae, v4 as Ee, CHAT_RESET as _e, CHAT_SET_ATTACHMENTS as De, CHAT_SET_STATUS as Le, showErrorToast as Oe, ConfirmationPanel as Re, Panel as Ie, debounce as ve, Toggle as $, ButtonCancel as ke } from "./App.CeXH-zPe.js";
4
- import { HistoryContext as te, ChatContext as be, TableCellSortDirections as h, APP_CLASSNAME as we, TOAST_CHAT_DELETED as xe, HISTORY_TITLE as He } from "./LogoEntry.rzjFIdbv.js";
5
- import { useRef as G, useState as R, useContext as Q, useEffect as ae, useCallback as P, Suspense as Ne, lazy as Fe } from "react";
6
- import { InlineFilter as Me } from "./InlineFilter.1P5aQFGT.js";
7
- const Ve = Fe(
1
+ import { jsxs as l, jsx as t, Fragment as q } from "react/jsx-runtime";
2
+ import { n as ee, INFINITE_SCROLL_LIMIT as J, INFINITE_SCROLL_THRESHOLD as Z, LOCAL_STORAGE_PREFIX as m, LOCAL_STORAGE_SORT_TIMESTAMP as se, LOCAL_STORAGE_SORT_TOKEN_USAGE as oe, LOCAL_STORAGE_SORT as ne, y as V, LOCAL_STORAGE_CHAT_ID as ie, useDeleteChat as ce, useToggleFavoriteChat as le, graphQLRequest as de, SERVICE_TYPES as he, ACTION_SORT as ue, V as Ce, LOCAL_STORAGE_SEARCH as me, LOCAL_STORAGE_FAVORITES_ONLY as Se, LOCAL_STORAGE_KEYWORD_MATCH_ALL as fe, useChatsHistory as Te, useUserChatStats as ye, ACTION_SEARCH as ge } from "./index.hGvmkGha.js";
3
+ import { useAiChat as Ae, useLocalStorage as S, LazyToastContainerWrapper as pe, v4 as Ee, CHAT_RESET as _e, CHAT_SET_ATTACHMENTS as De, CHAT_SET_STATUS as Le, showErrorToast as Oe, ConfirmationPanel as Re, Panel as ve, debounce as Ie, Toggle as $, ButtonCancel as ke } from "./App.yIuQGm0t.js";
4
+ import { HistoryContext as te, ChatContext as be, TableCellSortDirections as C, APP_CLASSNAME as we, TOAST_CHAT_DELETED as He, HISTORY_TITLE as xe } from "./LogoEntry.BZFz5IRw.js";
5
+ import { useRef as G, useState as v, useContext as Q, useEffect as ae, useCallback as P, Suspense as Ne, lazy as Fe } from "react";
6
+ import { InlineFilter as Me, useAnimatedHeight as Ve } from "./useAnimatedHeight.3F4Xj7iE.js";
7
+ const Ge = Fe(
8
8
  () => import(
9
9
  /* webpackChunkName: "history-table" */
10
- "./ChatHistoryTable.BvYdhMqi.js"
10
+ "./ChatHistoryTable.B8dA3To0.js"
11
11
  ).then((n) => ({ default: n.ChatHistoryTable }))
12
- ), Ge = ({
12
+ ), Pe = ({
13
13
  filteredHistory: n,
14
- onOpenChange: y,
15
- mutate: g,
16
- isLoading: I = !1,
17
- totalHistoryCount: v,
14
+ onOpenChange: d,
15
+ mutate: h,
16
+ isLoading: f = !1,
17
+ totalHistoryCount: I,
18
18
  isFiltered: U = !1,
19
19
  isSearchActive: k = !1,
20
- requestConfirmation: m
20
+ requestConfirmation: T
21
21
  }) => {
22
- const { user: r, getAccessToken: p } = ee(), A = G(null), S = G({
22
+ const { user: s, getAccessToken: p } = ee(), E = G(null), y = G({
23
23
  id: "",
24
24
  timestamp: "",
25
25
  message: ""
26
- }), [E, _] = R(
26
+ }), [_, D] = v(
27
27
  J + Z
28
28
  ), { state: i, dispatch: z } = Q(te), b = {
29
29
  searchString: i.searchString || "",
30
- sortDirection: i.sortDirection || h.DESC,
30
+ sortDirection: i.sortDirection || C.DESC,
31
31
  sortedCell: i.sortedCell || V
32
32
  }, {
33
- setChatId: f,
34
- setInitialMessages: D,
35
- dispatch: L
36
- } = Q(be), { setInput: O } = pe(), [w, x] = C({
37
- key: u + re,
38
- initialValue: h.DESC
39
- }), [T, K] = C({
40
- key: u + oe,
41
- initialValue: h.ASC
42
- }), [, H] = C({
43
- key: u + ne,
33
+ setChatId: g,
34
+ setInitialMessages: L,
35
+ dispatch: O
36
+ } = Q(be), { setInput: R } = Ae(), [w, H] = S({
37
+ key: m + se,
38
+ initialValue: C.DESC
39
+ }), [A, K] = S({
40
+ key: m + oe,
41
+ initialValue: C.ASC
42
+ }), [, x] = S({
43
+ key: m + ne,
44
44
  initialValue: V
45
- }), [c] = C({
46
- key: u + ie,
45
+ }), [c] = S({
46
+ key: m + ie,
47
47
  initialValue: ""
48
48
  });
49
49
  ae(() => {
@@ -52,26 +52,26 @@ const Ve = Fe(
52
52
  const e = n.findIndex(
53
53
  (o) => o.id === c
54
54
  );
55
- e >= 0 && e >= E && _(e + Z);
56
- }, [c, n, E]);
57
- const { mutateAsync: d } = ce({ getAccessToken: p }), { mutateAsync: Y } = le({
55
+ e >= 0 && e >= _ && D(e + Z);
56
+ }, [c, n, _]);
57
+ const { mutateAsync: u } = ce({ getAccessToken: p }), { mutateAsync: Y } = le({
58
58
  getAccessToken: p
59
59
  }), N = (e) => {
60
60
  const o = i.sortedCell === e;
61
- let s, M;
61
+ let r, M;
62
62
  switch (e) {
63
63
  case V:
64
- M = x, s = o ? i.sortDirection : w;
64
+ M = H, r = o ? i.sortDirection : w;
65
65
  break;
66
66
  case Ce:
67
- M = K, s = o ? i.sortDirection : T;
67
+ M = K, r = o ? i.sortDirection : A;
68
68
  break;
69
69
  default:
70
- M = x, s = o ? i.sortDirection : w;
70
+ M = H, r = o ? i.sortDirection : w;
71
71
  break;
72
72
  }
73
- const X = s === h.ASC ? h.DESC : h.ASC;
74
- M(X), H(e), z({
73
+ const X = r === C.ASC ? C.DESC : C.ASC;
74
+ M(X), x(e), z({
75
75
  type: ue,
76
76
  payload: {
77
77
  sortedCell: e,
@@ -80,10 +80,10 @@ const Ve = Fe(
80
80
  });
81
81
  }, j = async (e) => {
82
82
  try {
83
- await d({
84
- userId: r?.username || "",
83
+ await u({
84
+ userId: s?.username || "",
85
85
  id: e
86
- }), g(""), await Oe(xe, {
86
+ }), h(""), await Oe(He, {
87
87
  autoClose: 2e3,
88
88
  containerId: "history-table"
89
89
  });
@@ -91,34 +91,34 @@ const Ve = Fe(
91
91
  }
92
92
  }, B = async (e) => {
93
93
  try {
94
- const o = await p(), s = await de({
94
+ const o = await p(), r = await de({
95
95
  accessToken: o,
96
96
  type: he.GET_CHAT,
97
97
  params: {
98
98
  id: e.id
99
99
  }
100
100
  });
101
- L({
101
+ O({
102
102
  type: Le,
103
103
  payload: {
104
104
  streaming: !1,
105
105
  loading: !1,
106
106
  restoring: !0,
107
- restoredModel: s.data?.model || "",
108
- restoredTimestamp: s.data?.timestamp || "",
109
- restoredUsage: s.data?.tokenUsage || 0
107
+ restoredModel: r.data?.model || "",
108
+ restoredTimestamp: r.data?.timestamp || "",
109
+ restoredUsage: r.data?.tokenUsage || 0
110
110
  }
111
- }), O(""), f(e.id), D(s.data.messages), y(!1);
111
+ }), R(""), g(e.id), L(r.data.messages), d(!1);
112
112
  } catch {
113
113
  }
114
- }, q = (e) => {
115
- S.current = {
114
+ }, W = (e) => {
115
+ y.current = {
116
116
  id: e.id,
117
117
  timestamp: e.timestamp,
118
118
  message: e.summary
119
- }, m(
119
+ }, T(
120
120
  () => j(e.id),
121
- /* @__PURE__ */ l(W, { children: [
121
+ /* @__PURE__ */ l(q, { children: [
122
122
  /* @__PURE__ */ t("p", { className: "m-0", children: "Are you sure you want to delete the following chat:" }),
123
123
  /* @__PURE__ */ l("ul", { className: "m-0", children: [
124
124
  /* @__PURE__ */ l("li", { children: [
@@ -131,13 +131,13 @@ const Ve = Fe(
131
131
  ] })
132
132
  ] })
133
133
  ] })
134
- ), c === e.id && (f(Ee()), D([]), O(""), L({
134
+ ), c === e.id && (g(Ee()), L([]), R(""), O({
135
135
  type: _e,
136
136
  payload: {
137
137
  privateChat: !1,
138
138
  reasoningText: !1
139
139
  }
140
- }), L({
140
+ }), O({
141
141
  type: De,
142
142
  payload: {
143
143
  attachments: 0
@@ -146,137 +146,142 @@ const Ve = Fe(
146
146
  }, a = async (e) => {
147
147
  try {
148
148
  await Y({
149
- userId: r?.username || "",
149
+ userId: s?.username || "",
150
150
  id: e.id
151
- }), g("");
151
+ }), h("");
152
152
  } catch {
153
153
  }
154
154
  }, F = P((e) => {
155
- e[0].isIntersecting && _((s) => s + J);
156
- }, []), se = P(
155
+ e[0].isIntersecting && D((r) => r + J);
156
+ }, []), re = P(
157
157
  (e) => {
158
- if (A.current && A.current.disconnect(), e) {
158
+ if (E.current && E.current.disconnect(), e) {
159
159
  const o = {
160
160
  rootMargin: "20px"
161
- }, s = new IntersectionObserver(F, o);
162
- s.observe(e), A.current = s;
161
+ }, r = new IntersectionObserver(F, o);
162
+ r.observe(e), E.current = r;
163
163
  }
164
164
  },
165
165
  [F]
166
166
  );
167
167
  return /* @__PURE__ */ l("div", { children: [
168
- /* @__PURE__ */ t("div", { className: we, children: /* @__PURE__ */ t(Ae, { containerId: "history-table" }) }),
168
+ /* @__PURE__ */ t("div", { className: we, children: /* @__PURE__ */ t(pe, { containerId: "history-table" }) }),
169
169
  /* @__PURE__ */ t(Ne, { fallback: /* @__PURE__ */ t("div", {}), children: /* @__PURE__ */ t(
170
- Ve,
170
+ Ge,
171
171
  {
172
172
  filteredHistory: n,
173
173
  historyState: b,
174
- lastEntryToLoad: E,
174
+ lastEntryToLoad: _,
175
175
  onClickSort: N,
176
176
  onClickRestore: B,
177
- onClickDelete: q,
177
+ onClickDelete: W,
178
178
  onClickFavorite: a,
179
- infinityScrollMarkerRef: se,
180
- isLoading: I,
181
- totalHistoryCount: v,
179
+ infinityScrollMarkerRef: re,
180
+ isLoading: f,
181
+ totalHistoryCount: I,
182
182
  isFiltered: U,
183
183
  isSearchActive: k,
184
184
  activeChatId: c
185
185
  }
186
186
  ) })
187
187
  ] });
188
- }, Be = ({
188
+ };
189
+ function Ue(n) {
190
+ const d = n.filteredHistory?.length ?? 0, { ref: h, style: f } = Ve(d);
191
+ return /* @__PURE__ */ t("div", { ref: h, style: f, children: /* @__PURE__ */ t(Pe, { ...n }) });
192
+ }
193
+ const qe = ({
189
194
  open: n,
190
- onOpenChange: y
195
+ onOpenChange: d
191
196
  }) => {
192
- const g = G(null), { getAccessToken: I, user: v } = ee(), [U, k] = R([]), m = G(null), { state: r, dispatch: p } = Q(te), [, A] = C({
193
- key: u + me,
194
- initialValue: r.searchString
195
- }), [S, E] = C({
196
- key: u + Se,
197
+ const h = G(null), { getAccessToken: f, user: I } = ee(), [U, k] = v([]), T = G(null), { state: s, dispatch: p } = Q(te), [, E] = S({
198
+ key: m + me,
199
+ initialValue: s.searchString
200
+ }), [y, _] = S({
201
+ key: m + Se,
197
202
  initialValue: !1
198
- }), [_, i] = C({
199
- key: u + fe,
203
+ }), [D, i] = S({
204
+ key: m + fe,
200
205
  initialValue: !0
201
- }), [z, b] = R(!1), [f, D] = R(null), [L, O] = R(null), w = P(
206
+ }), [z, b] = v(!1), [g, L] = v(null), [O, R] = v(null), w = P(
202
207
  (a, F) => {
203
- D(() => a), O(F), b(!0);
208
+ L(() => a), R(F), b(!0);
204
209
  },
205
210
  []
206
- ), x = P(() => {
207
- f && f(), D(null), O(null);
208
- }, [f]), {
209
- data: T,
211
+ ), H = P(() => {
212
+ g && g(), L(null), R(null);
213
+ }, [g]), {
214
+ data: A,
210
215
  refetch: K,
211
- isLoading: H,
216
+ isLoading: x,
212
217
  isError: c
213
218
  } = Te({
214
219
  enabled: n,
215
- user: v?.username || "",
216
- searchString: r.searchString || "",
217
- sortDirection: r.sortDirection || h.DESC,
218
- sortedCell: r.sortedCell || V,
219
- getAccessToken: I,
220
- keywordMatchAll: _
221
- }), { data: d } = ye({
222
- user: v?.username,
223
- getAccessToken: I
224
- }), Y = d && d.totalChats ? d.totalChats - d.privateChats - d.deletedChats : 0;
220
+ user: I?.username || "",
221
+ searchString: s.searchString || "",
222
+ sortDirection: s.sortDirection || C.DESC,
223
+ sortedCell: s.sortedCell || V,
224
+ getAccessToken: f,
225
+ keywordMatchAll: D
226
+ }), { data: u } = ye({
227
+ user: I?.username,
228
+ getAccessToken: f
229
+ }), Y = u && u.totalChats ? u.totalChats - u.privateChats - u.deletedChats : 0;
225
230
  ae(() => {
226
- T && k(
227
- S ? T.filter((a) => a.favoriteChat === !0) : T
231
+ A && k(
232
+ y ? A.filter((a) => a.favoriteChat === !0) : A
228
233
  );
229
- }, [T, S]);
234
+ }, [A, y]);
230
235
  const N = async (a) => {
231
- A(a), p({
236
+ E(a), p({
232
237
  type: ge,
233
238
  payload: { searchString: a }
234
239
  });
235
- }, j = ve((a) => {
240
+ }, j = Ie((a) => {
236
241
  N(a.target.value.trim());
237
242
  }, 800), B = (a) => {
238
- E(a);
239
- }, q = (a) => {
243
+ _(a);
244
+ }, W = (a) => {
240
245
  i(a);
241
246
  };
242
- return /* @__PURE__ */ l(W, { children: [
247
+ return /* @__PURE__ */ l(q, { children: [
243
248
  /* @__PURE__ */ t(
244
249
  Re,
245
250
  {
246
251
  showConfirmation: z,
247
252
  setShowConfirmation: b,
248
- action: x,
253
+ action: H,
249
254
  customStrings: {
250
255
  confirmAction: "Delete",
251
256
  cancelAction: "Cancel",
252
257
  title: "Delete chat"
253
258
  },
254
- children: L
259
+ children: O
255
260
  }
256
261
  ),
257
262
  /* @__PURE__ */ t(
258
- Ie,
263
+ ve,
259
264
  {
260
265
  open: n,
261
- onOpenChange: y,
262
- title: He,
266
+ onOpenChange: d,
267
+ title: xe,
263
268
  animation: !0,
264
269
  animationType: "fade",
265
270
  blurEffect: "large",
266
- initialFocus: g,
271
+ initialFocus: h,
267
272
  className: "h-full sm:h-max",
268
- footer: /* @__PURE__ */ t("div", { className: "flex flex-wrap justify-end gap-x-2 pb-8 sm:pb-0", children: /* @__PURE__ */ t("div", { className: "box-border max-w-full basis-auto", children: /* @__PURE__ */ t(ke, { onOpenChange: y, ref: g }) }) }),
273
+ footer: /* @__PURE__ */ t("div", { className: "flex flex-wrap justify-end gap-x-2 pb-8 sm:pb-0", children: /* @__PURE__ */ t("div", { className: "box-border max-w-full basis-auto", children: /* @__PURE__ */ t(ke, { onOpenChange: d, ref: h }) }) }),
269
274
  children: /* @__PURE__ */ l("div", { className: "flex h-full flex-col gap-4", children: [
270
275
  /* @__PURE__ */ t(
271
276
  Me,
272
277
  {
273
- header: H && r.searchString ? "Loading..." : r.searchString ? "Filters applied" : "Filters",
274
- toggles: /* @__PURE__ */ l(W, { children: [
278
+ header: x && s.searchString ? "Loading..." : s.searchString ? "Filters applied" : "Filters",
279
+ toggles: /* @__PURE__ */ l(q, { children: [
275
280
  /* @__PURE__ */ t(
276
281
  $,
277
282
  {
278
283
  name: "favorites-only",
279
- checked: S,
284
+ checked: y,
280
285
  onChange: B,
281
286
  label: "Show favorites only",
282
287
  narrow: !0,
@@ -287,34 +292,34 @@ const Ve = Fe(
287
292
  $,
288
293
  {
289
294
  name: "keyword-match-all",
290
- checked: _,
291
- onChange: q,
295
+ checked: D,
296
+ onChange: W,
292
297
  label: "Match all keywords",
293
298
  narrow: !0,
294
299
  noBorder: !0
295
300
  }
296
301
  )
297
302
  ] }),
298
- inputSearchRef: m,
303
+ inputSearchRef: T,
299
304
  onSearchChange: j,
300
- defaultValue: r.searchString,
301
- resetDisabled: r.searchString === "",
305
+ defaultValue: s.searchString,
306
+ resetDisabled: s.searchString === "",
302
307
  onResetSearch: () => {
303
- N(""), m.current?.value && (m.current.value = "", m.current.focus());
308
+ N(""), T.current?.value && (T.current.value = "", T.current.focus());
304
309
  }
305
310
  }
306
311
  ),
307
312
  c && /* @__PURE__ */ t("p", { className: "m-0 text-copy-error-light", children: "Failed to load history." }),
308
313
  !c && /* @__PURE__ */ t(
309
- Ge,
314
+ Ue,
310
315
  {
311
316
  mutate: K,
312
317
  filteredHistory: U,
313
- onOpenChange: y,
314
- isLoading: H,
318
+ onOpenChange: d,
319
+ isLoading: x,
315
320
  totalHistoryCount: Y,
316
- isFiltered: !!(r.searchString || S),
317
- isSearchActive: !!r.searchString,
321
+ isFiltered: !!(s.searchString || y),
322
+ isSearchActive: !!s.searchString,
318
323
  requestConfirmation: w
319
324
  }
320
325
  )
@@ -324,5 +329,5 @@ const Ve = Fe(
324
329
  ] });
325
330
  };
326
331
  export {
327
- Be as HistoryPanel
332
+ qe as HistoryPanel
328
333
  };
@@ -1,8 +1,8 @@
1
1
  import { jsxs as i, jsx as e, Fragment as x } from "react/jsx-runtime";
2
- import { n as N, getLayoutPaddingClass as C, getMessageContaintWrapperClass as v, isTauri as w } from "./index.BkOYiDfc.js";
3
- import { Logo as k, PASSWORD_PLACEHOLDER as M, ButtonIcon as u, IconShow as I, IconHide as L, Button as y, LOG_IN as E, LOG_IN_PASSKEY as S, IconPasskey as P } from "./LogoEntry.rzjFIdbv.js";
4
- import { Card as B } from "./index.C8TVf8G8.js";
5
- import { TextInput as O, TextInputMask as T } from "./index.UROP8tJb.js";
2
+ import { n as N, getLayoutPaddingClass as C, getMessageContaintWrapperClass as v, isTauri as w } from "./index.hGvmkGha.js";
3
+ import { Logo as k, PASSWORD_PLACEHOLDER as M, ButtonIcon as u, IconShow as I, IconHide as L, Button as y, LOG_IN as E, LOG_IN_PASSKEY as S, IconPasskey as P } from "./LogoEntry.BZFz5IRw.js";
4
+ import { Card as B } from "./index.BlDUpXR0.js";
5
+ import { TextInput as O, TextInputMask as T } from "./index.mDr9FsVI.js";
6
6
  import { useState as r, useEffect as f } from "react";
7
7
  const G = () => {
8
8
  const { login: h, logoutReason: o, loginWithPasskey: g } = N(), [t, l] = r(""), [d, n] = r(""), [m, p] = r(!0), [s, c] = r({
@@ -1,7 +1,7 @@
1
1
  import B, { useRef as M, useEffect as z, useCallback as Q, useState as i1, useMemo as G, useContext as n1, useId as l1, useLayoutEffect as J } from "react";
2
2
  import { jsxs as n, jsx as r } from "react/jsx-runtime";
3
3
  import l from "clsx";
4
- import { b as h, e as h1, R as d1, E as u1 } from "./index.BkOYiDfc.js";
4
+ import { B as h, e as h1, R as d1, E as u1 } from "./index.hGvmkGha.js";
5
5
  function p1() {
6
6
  const t = M(!1);
7
7
  return z(() => (t.current = !0, () => {