@versini/sassysaint 8.111.3 → 8.112.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.
Files changed (84) hide show
  1. package/dist/chunks/{AboutChangelog.DEKrUTg3.js → AboutChangelog.Dayt987X.js} +2 -2
  2. package/dist/chunks/AboutEntry.C7nQnTaR.js +81 -0
  3. package/dist/chunks/{App.BGRzjrbt.js → App.1qxTcHhE.js} +1176 -1175
  4. package/dist/chunks/{Bubble.QSYju7U-.js → Bubble.Bw-2eGqM.js} +1 -1
  5. package/dist/chunks/{ButtonIconDelete.DHjTCxTa.js → ButtonIconDelete.DZW_2G6c.js} +2 -2
  6. package/dist/chunks/{Chart.DuetMnKn.js → Chart.Cx6km9TU.js} +2 -2
  7. package/dist/chunks/{ChatBubbleAssistant.D3lIckh1.js → ChatBubbleAssistant.BNu2Y1zq.js} +4 -4
  8. package/dist/chunks/{ChatBubbleUser.DVW35Z8i.js → ChatBubbleUser.pPCI3WL0.js} +3 -3
  9. package/dist/chunks/ChatHistoryTable.DaVUivHo.js +234 -0
  10. package/dist/chunks/{HistoryEntry.BxmHCW43.js → HistoryEntry.C3bboYln.js} +6 -6
  11. package/dist/chunks/{LoginEntry.skJhNhty.js → LoginEntry.Bn-GsVAB.js} +4 -4
  12. package/dist/chunks/{LogoEntry.B2b4Yt9T.js → LogoEntry.DReNqiYv.js} +717 -676
  13. package/dist/chunks/{MemoriesEntry.DR38VMVA.js → MemoriesEntry.CAg5AW5F.js} +5 -5
  14. package/dist/chunks/{ProfileEntry.DidXR7UA.js → ProfileEntry.COWhUBbO.js} +4 -4
  15. package/dist/chunks/{SettingsEntry.BMRN3VCY.js → SettingsEntry.e4vl4zRK.js} +5 -5
  16. package/dist/chunks/{UsageEntry.w9OaCaF4.js → UsageEntry.CnnazYSh.js} +5 -5
  17. package/dist/chunks/{_baseUniq.DvrohptJ.js → _baseUniq.CNUFz9Ie.js} +1 -1
  18. package/dist/chunks/{arc.DZpAibrn.js → arc.Bxl15E2D.js} +1 -1
  19. package/dist/chunks/{architecture-U656AL7Q.75obykqH.js → architecture-U656AL7Q.DzlHQE5F.js} +1 -1
  20. package/dist/chunks/{architectureDiagram-VXUJARFQ.pvpoyqCy.js → architectureDiagram-VXUJARFQ.DQBLcSlJ.js} +4 -4
  21. package/dist/chunks/{blockDiagram-VD42YOAC.BU2QdSKu.js → blockDiagram-VD42YOAC.BSHnyqv8.js} +5 -5
  22. package/dist/chunks/{browser.DhnrsZbt.js → browser.ykQdyxYi.js} +1 -1
  23. package/dist/chunks/{c4Diagram-YG6GDRKO.DYkwL6tj.js → c4Diagram-YG6GDRKO.Zzum1FZK.js} +2 -2
  24. package/dist/chunks/{channel.BHY66kqg.js → channel._2RWo0R_.js} +1 -1
  25. package/dist/chunks/{chunk-4BX2VUAB.Bb73N5Y_.js → chunk-4BX2VUAB.C-pLiL50.js} +1 -1
  26. package/dist/chunks/{chunk-55IACEB6.EJTrLywF.js → chunk-55IACEB6.fMp9ubf_.js} +1 -1
  27. package/dist/chunks/{chunk-B4BG7PRW.B05H5NQI.js → chunk-B4BG7PRW.BNmIeVTV.js} +4 -4
  28. package/dist/chunks/{chunk-DI55MBZ5.Dh0s-UnT.js → chunk-DI55MBZ5.uDz3flQ8.js} +3 -3
  29. package/dist/chunks/{chunk-FMBD7UC4.Cw7-UpbW.js → chunk-FMBD7UC4.Diy7mBue.js} +1 -1
  30. package/dist/chunks/{chunk-QN33PNHL.CUlNcxvp.js → chunk-QN33PNHL.ryixtm2U.js} +1 -1
  31. package/dist/chunks/{chunk-QZHKN3VN.BC6_w42h.js → chunk-QZHKN3VN.C7w_fpJx.js} +1 -1
  32. package/dist/chunks/{chunk-TZMSLE5B.acGXviQk.js → chunk-TZMSLE5B.BofTElRx.js} +1 -1
  33. package/dist/chunks/{classDiagram-2ON5EDUG.D8kN3SgN.js → classDiagram-2ON5EDUG.Bcl4iHVO.js} +2 -2
  34. package/dist/chunks/{classDiagram-v2-WZHVMYZB.D8kN3SgN.js → classDiagram-v2-WZHVMYZB.Bcl4iHVO.js} +2 -2
  35. package/dist/chunks/{clone.DUf0xir_.js → clone.CXzi7x3n.js} +1 -1
  36. package/dist/chunks/{cose-bilkent-S5V4N54A.DRLIsg0b.js → cose-bilkent-S5V4N54A.DAjW96yL.js} +2 -2
  37. package/dist/chunks/{dagre-6UL2VRFP.D9hG5izt.js → dagre-6UL2VRFP.CRpUm0Nd.js} +5 -5
  38. package/dist/chunks/{diagram-PSM6KHXK.xULVc2co.js → diagram-PSM6KHXK.D8PLOyb_.js} +4 -4
  39. package/dist/chunks/{diagram-QEK2KX5R.DJhjwGo4.js → diagram-QEK2KX5R.DwNvsJ_b.js} +3 -3
  40. package/dist/chunks/{diagram-S2PKOQOG.BHhhIiAD.js → diagram-S2PKOQOG.DyCzcwzE.js} +3 -3
  41. package/dist/chunks/{erDiagram-Q2GNP2WA.DvbYawn6.js → erDiagram-Q2GNP2WA.BlUI5_4z.js} +4 -4
  42. package/dist/chunks/{flowDiagram-NV44I4VS.DWPYPBNY.js → flowDiagram-NV44I4VS.Bfreb6t8.js} +5 -5
  43. package/dist/chunks/{ganttDiagram-JELNMOA3.C2ivXQOG.js → ganttDiagram-JELNMOA3.ib1rXCQk.js} +2 -2
  44. package/dist/chunks/{gitGraph-F6HP7TQM.SVu1f6lJ.js → gitGraph-F6HP7TQM.CxufJdwn.js} +1 -1
  45. package/dist/chunks/{gitGraphDiagram-NY62KEGX.BCjHXLCK.js → gitGraphDiagram-NY62KEGX.BZt4MXEW.js} +4 -4
  46. package/dist/chunks/{graph.BHn1sawQ.js → graph.hvB27c9D.js} +2 -2
  47. package/dist/chunks/{index.DhDzmNGa.js → index.92htXG5J.js} +1 -1
  48. package/dist/chunks/{index.jTMAwvqw.js → index.BB4J2Qi1.js} +1 -1
  49. package/dist/chunks/{index.CEpN9Mfy.js → index.BVCLFEiI.js} +1 -1
  50. package/dist/chunks/{index.mw7jb1FZ.js → index.BXReSy4c.js} +637 -620
  51. package/dist/chunks/{index.CxVl48pN.js → index.CmdM8OhV.js} +3 -3
  52. package/dist/chunks/index.DR0-P5h3.js +67 -0
  53. package/dist/chunks/{index.wBZ-bAF2.js → index.DS1kY_8b.js} +1 -1
  54. package/dist/chunks/{index.BbGq3i0Z.js → index.Hd2XXux1.js} +3 -3
  55. package/dist/chunks/{index.CwvbWO48.js → index.IpQNrFt6.js} +1 -1
  56. package/dist/chunks/{index.nS2ugdrV.js → index.TLbAcxWR.js} +1 -1
  57. package/dist/chunks/{info-NVLQJR56.B6GOsfuo.js → info-NVLQJR56.B1fpEaU0.js} +1 -1
  58. package/dist/chunks/{infoDiagram-WHAUD3N6.cdFwiHIE.js → infoDiagram-WHAUD3N6.Bq2JnNoD.js} +2 -2
  59. package/dist/chunks/{journeyDiagram-XKPGCS4Q.CNCWl07w.js → journeyDiagram-XKPGCS4Q.iqGtFhp_.js} +4 -4
  60. package/dist/chunks/{kanban-definition-3W4ZIXB7.DeWOoHnE.js → kanban-definition-3W4ZIXB7.JMlNoVIk.js} +2 -2
  61. package/dist/chunks/{layout.CfrMsjsl.js → layout.CP2AqVdG.js} +4 -4
  62. package/dist/chunks/{mermaid-parser.core.B7ZGVptT.js → mermaid-parser.core.Bi2yoxZq.js} +10 -10
  63. package/dist/chunks/{min.BR9AxVjW.js → min.C11Gc2EF.js} +2 -2
  64. package/dist/chunks/{mindmap-definition-VGOIOE7T.DR_iVu-I.js → mindmap-definition-VGOIOE7T.Cd1AilWi.js} +4 -4
  65. package/dist/chunks/{packet-BFZMPI3H.D4P0CBH4.js → packet-BFZMPI3H.fS8hEXjX.js} +1 -1
  66. package/dist/chunks/{pie-7BOR55EZ.jNr-y8mq.js → pie-7BOR55EZ.Ds7KQGmJ.js} +1 -1
  67. package/dist/chunks/{pieDiagram-ADFJNKIX.C_GyIBuS.js → pieDiagram-ADFJNKIX.C1aHiwho.js} +4 -4
  68. package/dist/chunks/{quadrantDiagram-AYHSOK5B.xgs0dGMa.js → quadrantDiagram-AYHSOK5B.1yLMviWL.js} +1 -1
  69. package/dist/chunks/{radar-NHE76QYJ.mOtw_q2V.js → radar-NHE76QYJ.B9AoWAwO.js} +1 -1
  70. package/dist/chunks/{rehype-mermaid.DBBytI1M.js → rehype-mermaid.CTTnjcVn.js} +33 -33
  71. package/dist/chunks/{requirementDiagram-UZGBJVZJ.BgOTowCr.js → requirementDiagram-UZGBJVZJ.2S8yiwhm.js} +3 -3
  72. package/dist/chunks/{sankeyDiagram-TZEHDZUN.C6hMt0nE.js → sankeyDiagram-TZEHDZUN.DpCJXyYB.js} +1 -1
  73. package/dist/chunks/{sequenceDiagram-WL72ISMW.DgpEBhZm.js → sequenceDiagram-WL72ISMW.GhgH6avH.js} +3 -3
  74. package/dist/chunks/{stateDiagram-FKZM4ZOC.BiE_Lzjk.js → stateDiagram-FKZM4ZOC.CcbwpENI.js} +4 -4
  75. package/dist/chunks/{stateDiagram-v2-4FDKWEC3.KXeGw2Kg.js → stateDiagram-v2-4FDKWEC3.BhJWHBo_.js} +2 -2
  76. package/dist/chunks/{timeline-definition-IT6M3QCI.DYXhP7Qb.js → timeline-definition-IT6M3QCI.eg5mNjCi.js} +2 -2
  77. package/dist/chunks/{treemap-KMMF4GRG.FJkI1pin.js → treemap-KMMF4GRG.Bn78avOP.js} +1 -1
  78. package/dist/chunks/{useMarkdown.BzkU5yrq.js → useMarkdown.js2o9U64.js} +8 -8
  79. package/dist/chunks/{xychartDiagram-PRI3JC2R.C6VyMJws.js → xychartDiagram-PRI3JC2R.DuYEc52x.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/AboutEntry.DtlPqgFq.js +0 -77
  84. package/dist/chunks/ChatHistoryTable.Dxbpo7ck.js +0 -292
@@ -1,5 +1,5 @@
1
1
  import { jsxs as x, jsx as o } from "react/jsx-runtime";
2
- import { ButtonIcon as N, IconCopied as $, IconCopy as E } from "./LogoEntry.B2b4Yt9T.js";
2
+ import { ButtonIcon as N, IconCopied as $, IconCopy as E } from "./LogoEntry.DReNqiYv.js";
3
3
  import { useState as z, useEffect as j } from "react";
4
4
  import t from "clsx";
5
5
  const u = "av-bubble";
@@ -1,8 +1,8 @@
1
1
  import { jsx as s, jsxs as m, Fragment as C } from "react/jsx-runtime";
2
2
  import o from "clsx";
3
- import { ButtonIcon as x, TableCellSortDirections as k, IconSortUp as w, IconSortDown as N, IconSort as T, IconDelete as W } from "./LogoEntry.B2b4Yt9T.js";
3
+ import { ButtonIcon as x, TableCellSortDirections as k, IconSortUp as w, IconSortDown as N, IconSort as T, IconDelete as W } from "./LogoEntry.DReNqiYv.js";
4
4
  import R, { useContext as y } from "react";
5
- import { ResponsiveTooltip as S } from "./App.BGRzjrbt.js";
5
+ import { ResponsiveTooltip as S } from "./App.1qxTcHhE.js";
6
6
  function z({ children: e, mode: t = "system", className: r, active: a = !1, ref: l, ...n }) {
7
7
  const c = a ? o("relative", "focus-within:static", "focus-within:after:border-transparent", "after:absolute", "after:content-['']", "after:border-b-2", "after:-bottom-1", "after:left-0", "after:right-0", {
8
8
  "after:border-table-light": t === "dark",
@@ -1,7 +1,7 @@
1
1
  import { jsx as Pp } from "react/jsx-runtime";
2
- import { getDefaultExportFromCjs as dn, isProbablyMobile as Op } from "./App.BGRzjrbt.js";
2
+ import { getDefaultExportFromCjs as dn, isProbablyMobile as Op } from "./App.1qxTcHhE.js";
3
3
  import Lp, { useMemo as Ep } from "react";
4
- import { TRIMESTERS_SHORT as Ip, TRIMESTERS as on, TIME_RANGES as ls, TIME_RANGE_LABELS as an } from "./LogoEntry.B2b4Yt9T.js";
4
+ import { TRIMESTERS_SHORT as Ip, TRIMESTERS as on, TIME_RANGES as ls, TIME_RANGE_LABELS as an } from "./LogoEntry.DReNqiYv.js";
5
5
  var hs = { exports: {} }, Dp = hs.exports, nn;
6
6
  function Bp() {
7
7
  return nn || (nn = 1, (function(Ae, pe) {
@@ -1,10 +1,10 @@
1
1
  import { jsx as rs } from "react/jsx-runtime";
2
- import { n as as, useUserPreferences as os, formatTimestamp as vt } from "./index.mw7jb1FZ.js";
3
- import { numberFormatter as ls, pluralize as us, AsyncBubble as cs } from "./App.BGRzjrbt.js";
2
+ import { n as as, useUserPreferences as os, formatTimestamp as vt } from "./index.BXReSy4c.js";
3
+ import { numberFormatter as ls, pluralize as us, AsyncBubble as cs } from "./App.1qxTcHhE.js";
4
4
  import Ht from "clsx";
5
5
  import fs, { useState as Ae, useEffect as Zt, useContext as Vt } from "react";
6
- import { useMarkdown as hs } from "./useMarkdown.BzkU5yrq.js";
7
- import { ChatContext as ds, AppContext as ps } from "./LogoEntry.B2b4Yt9T.js";
6
+ import { useMarkdown as hs } from "./useMarkdown.js2o9U64.js";
7
+ import { ChatContext as ds, AppContext as ps } from "./LogoEntry.DReNqiYv.js";
8
8
  const Me = {
9
9
  isEmpty: !0
10
10
  };
@@ -1,8 +1,8 @@
1
1
  import { jsx as i, Fragment as C, jsxs as S } from "react/jsx-runtime";
2
- import { Button as b } from "./LogoEntry.B2b4Yt9T.js";
2
+ import { Button as b } from "./LogoEntry.DReNqiYv.js";
3
3
  import { useState as k, useMemo as m, isValidElement as T, useEffect as H } from "react";
4
- import { useMarkdown as h } from "./useMarkdown.BzkU5yrq.js";
5
- import { AsyncBubble as M } from "./App.BGRzjrbt.js";
4
+ import { useMarkdown as h } from "./useMarkdown.js2o9U64.js";
5
+ import { AsyncBubble as M } from "./App.1qxTcHhE.js";
6
6
  const O = 200, w = ({ string: e, idealLength: r = O }) => {
7
7
  if (e.length <= r)
8
8
  return {
@@ -0,0 +1,234 @@
1
+ import { jsxs as l, jsx as e } from "react/jsx-runtime";
2
+ import { y as h, v as x, INFINITE_SCROLL_THRESHOLD as D } from "./index.BXReSy4c.js";
3
+ import { CARDS as P, ButtonIcon as M, IconRestore as B, IconStarInCircle as L, IconStarInCircleLight as _ } from "./LogoEntry.DReNqiYv.js";
4
+ import { Pill as S } from "./index.DR0-P5h3.js";
5
+ import { Table as $, TableHead as z, TableRow as m, TableBody as Y, TableCell as a, TableCellSort as b, ButtonIconDelete as K } from "./ButtonIconDelete.DZW_2G6c.js";
6
+ import { pluralize as N, ResponsiveTooltip as g, numberFormatter as W, isProbablyMobile as G } from "./App.1qxTcHhE.js";
7
+ import d from "clsx";
8
+ import { Fragment as H } from "react";
9
+ const s = {
10
+ ROW: "row",
11
+ TIMESTAMP: h,
12
+ SUMMARY: "summary",
13
+ TOKEN_USAGE: x,
14
+ ACTIONS: "actions"
15
+ }, F = [
16
+ s.ROW,
17
+ s.TIMESTAMP,
18
+ s.SUMMARY,
19
+ s.ACTIONS
20
+ ], j = [
21
+ s.ROW,
22
+ s.SUMMARY,
23
+ s.TIMESTAMP,
24
+ s.TOKEN_USAGE,
25
+ s.ACTIONS
26
+ ], ae = ({
27
+ filteredHistory: o,
28
+ historyState: n,
29
+ lastEntryToLoad: u,
30
+ onClickSort: f,
31
+ onClickRestore: w,
32
+ onClickDelete: y,
33
+ onClickFavorite: A,
34
+ infinityScrollMarkerRef: O,
35
+ isLoading: p = !1,
36
+ totalHistoryCount: R,
37
+ isFiltered: k = !1,
38
+ isSearchActive: T = !1
39
+ }) => {
40
+ const C = G() ? F : j, v = (t) => {
41
+ switch (t) {
42
+ case s.ROW:
43
+ return /* @__PURE__ */ e(a, { className: "sr-only", children: "Row" }, t);
44
+ case s.TIMESTAMP:
45
+ return T ? /* @__PURE__ */ e(a, { className: "text-xs sm:text-sm", children: "Date" }, t) : /* @__PURE__ */ e(
46
+ b,
47
+ {
48
+ focusMode: "system",
49
+ buttonClassName: "text-xs sm:text-sm",
50
+ cellId: h,
51
+ align: "left",
52
+ sortDirection: n.sortDirection,
53
+ sortedCell: n.sortedCell,
54
+ onClick: () => {
55
+ f(h);
56
+ },
57
+ children: "Date"
58
+ },
59
+ t
60
+ );
61
+ case s.SUMMARY:
62
+ return /* @__PURE__ */ e(a, { className: "text-xs sm:text-sm", children: "Summary" }, t);
63
+ case s.TOKEN_USAGE:
64
+ return T ? /* @__PURE__ */ e(a, { className: "text-xs sm:text-sm text-right", children: "Tokens" }, t) : /* @__PURE__ */ e(
65
+ b,
66
+ {
67
+ focusMode: "system",
68
+ buttonClassName: "text-xs sm:text-sm",
69
+ cellId: x,
70
+ align: "right",
71
+ sortDirection: n.sortDirection,
72
+ sortedCell: n.sortedCell,
73
+ onClick: () => {
74
+ f(x);
75
+ },
76
+ children: "Tokens"
77
+ },
78
+ t
79
+ );
80
+ case s.ACTIONS:
81
+ return /* @__PURE__ */ e(a, { className: "text-xs sm:text-sm text-right", children: "Actions" }, t);
82
+ default:
83
+ return null;
84
+ }
85
+ }, E = (t, r, c) => {
86
+ switch (t) {
87
+ case s.ROW:
88
+ return /* @__PURE__ */ e(a, { children: c + 1 }, t);
89
+ case s.TIMESTAMP:
90
+ return /* @__PURE__ */ e(
91
+ a,
92
+ {
93
+ className: d(
94
+ "dark:text-copy-medium",
95
+ "sm:whitespace-nowrap text-xs sm:text-sm max-w-20 sm:max-w-none"
96
+ ),
97
+ children: r.timestamp.split(",")[0]
98
+ },
99
+ t
100
+ );
101
+ case s.SUMMARY: {
102
+ const i = r.similarityScore !== void 0 && r.similarityScore !== null ? Math.round(r.similarityScore * 100) : null, U = i !== null && i < 40 ? "warning" : "success", I = r.keywordMatch === !0;
103
+ return /* @__PURE__ */ e(
104
+ a,
105
+ {
106
+ className: d(
107
+ "dark:text-white",
108
+ "max-w-25 sm:max-w-full text-xs sm:text-sm"
109
+ ),
110
+ style: {
111
+ wordBreak: "break-word"
112
+ },
113
+ children: /* @__PURE__ */ l("div", { className: "flex flex-col gap-1", children: [
114
+ /* @__PURE__ */ l("div", { className: "flex flex-wrap gap-1", children: [
115
+ i !== null && /* @__PURE__ */ e(
116
+ S,
117
+ {
118
+ variant: U,
119
+ label: `${i}% semantic`
120
+ }
121
+ ),
122
+ I && /* @__PURE__ */ e(S, { variant: "information", label: "keyword" })
123
+ ] }),
124
+ /* @__PURE__ */ e("span", { children: r.summary })
125
+ ] })
126
+ },
127
+ t
128
+ );
129
+ }
130
+ case s.TOKEN_USAGE:
131
+ return /* @__PURE__ */ e(
132
+ a,
133
+ {
134
+ className: d("dark:text-copy-medium", "text-xs sm:text-sm"),
135
+ align: "right",
136
+ children: r.tokenUsage ? W.format(r.tokenUsage) : "0"
137
+ },
138
+ t
139
+ );
140
+ case s.ACTIONS:
141
+ return /* @__PURE__ */ e(
142
+ a,
143
+ {
144
+ className: "border-l border-table-light dark:border-table-dark",
145
+ children: /* @__PURE__ */ l("div", { className: "flex flex-col items-end sm:flex-row gap-2", children: [
146
+ /* @__PURE__ */ e(
147
+ g,
148
+ {
149
+ label: "Restore chat",
150
+ placement: "top",
151
+ trigger: /* @__PURE__ */ e(
152
+ M,
153
+ {
154
+ noBorder: !0,
155
+ label: "Restore chat",
156
+ variant: "primary",
157
+ onClick: async () => {
158
+ await w(r);
159
+ },
160
+ children: /* @__PURE__ */ e(
161
+ B,
162
+ {
163
+ size: "size-3",
164
+ monotone: !0,
165
+ className: "text-copy-success dark:text-copy-success-light"
166
+ }
167
+ )
168
+ }
169
+ )
170
+ }
171
+ ),
172
+ /* @__PURE__ */ e(
173
+ g,
174
+ {
175
+ label: r.favoriteChat ? "Remove from favorites" : "Add to favorites",
176
+ placement: "top",
177
+ trigger: /* @__PURE__ */ e(
178
+ M,
179
+ {
180
+ noBorder: !0,
181
+ label: r.favoriteChat ? "Remove from favorites" : "Add to favorites",
182
+ variant: "primary",
183
+ onClick: async () => {
184
+ await A(r);
185
+ },
186
+ children: r.favoriteChat ? /* @__PURE__ */ e(L, { size: "size-4", monotone: !0 }) : /* @__PURE__ */ e(_, { size: "size-4", monotone: !0 })
187
+ }
188
+ )
189
+ }
190
+ ),
191
+ /* @__PURE__ */ e(
192
+ K,
193
+ {
194
+ label: "Delete chat",
195
+ disabled: !1,
196
+ onClick: () => {
197
+ y(r);
198
+ }
199
+ }
200
+ )
201
+ ] })
202
+ },
203
+ t
204
+ );
205
+ default:
206
+ return null;
207
+ }
208
+ };
209
+ return /* @__PURE__ */ l(
210
+ $,
211
+ {
212
+ stickyHeader: !0,
213
+ compact: !0,
214
+ mode: "alt-system",
215
+ caption: (() => {
216
+ const t = o.length, r = R ?? t;
217
+ return k && r > t ? `Showing ${N(`${t} chat`, t)} out of ${r}` : N(`${t} chat`, t);
218
+ })(),
219
+ disabled: p && o.length > 0,
220
+ children: [
221
+ /* @__PURE__ */ e(z, { children: /* @__PURE__ */ e(m, { children: C.map((t) => v(t)) }) }),
222
+ /* @__PURE__ */ e(Y, { children: p && o.length === 0 ? /* @__PURE__ */ e(m, { children: /* @__PURE__ */ e(a, { colSpan: 1e3, children: /* @__PURE__ */ e("div", { children: "Loading..." }) }) }) : o.slice(0, u).map((t, r) => t?.summary ? /* @__PURE__ */ l(H, { children: [
223
+ r === u - D && /* @__PURE__ */ e("tr", { ref: O }),
224
+ /* @__PURE__ */ e(m, { children: C.map(
225
+ (c) => E(c, t, r)
226
+ ) })
227
+ ] }, `${P.HISTORY.TITLE}-${t.id}-${r}`) : null) })
228
+ ]
229
+ }
230
+ );
231
+ };
232
+ export {
233
+ ae as ChatHistoryTable
234
+ };
@@ -1,15 +1,15 @@
1
1
  import { jsxs as n, Fragment as Q, jsx as t } from "react/jsx-runtime";
2
- import { n as ee, INFINITE_SCROLL_LIMIT as Z, INFINITE_SCROLL_THRESHOLD as ae, LOCAL_STORAGE_PREFIX as d, LOCAL_STORAGE_SORT_TIMESTAMP as re, LOCAL_STORAGE_SORT_TOKEN_USAGE as oe, LOCAL_STORAGE_SORT as se, y as F, LOCAL_STORAGE_CHAT_ID as ne, useDeleteChat as ie, useToggleFavoriteChat as le, graphQLRequest as ce, SERVICE_TYPES as de, ACTION_SORT as he, v as me, LOCAL_STORAGE_SEARCH as ue, LOCAL_STORAGE_FAVORITES_ONLY as Ce, LOCAL_STORAGE_KEYWORD_MATCH_ALL as fe, useChatsHistory as Se, useUserChatStats as ye, ACTION_SEARCH as pe } from "./index.mw7jb1FZ.js";
3
- import { HistoryContext as te, ChatContext as Te, TableCellSortDirections as c, APP_CLASSNAME as ge, TOAST_CHAT_DELETED as Ae, HISTORY_TITLE as Ee, IconSearch as _e, Button as De } from "./LogoEntry.B2b4Yt9T.js";
4
- import { Card as Le } from "./index.CwvbWO48.js";
5
- import { useAiChat as ve, useLocalStorage as h, LazyToastContainerWrapper as Oe, v4 as be, CHAT_RESET as ke, CHAT_SET_ATTACHMENTS as Re, CHAT_SET_STATUS as xe, showErrorToast as Ie, ConfirmationPanel as we, Panel as He, debounce as Ne, Toggle as $, ButtonCancel as Fe } from "./App.BGRzjrbt.js";
6
- import { TextInput as Me } from "./index.CEpN9Mfy.js";
2
+ import { n as ee, INFINITE_SCROLL_LIMIT as Z, INFINITE_SCROLL_THRESHOLD as ae, LOCAL_STORAGE_PREFIX as d, LOCAL_STORAGE_SORT_TIMESTAMP as re, LOCAL_STORAGE_SORT_TOKEN_USAGE as oe, LOCAL_STORAGE_SORT as se, y as F, LOCAL_STORAGE_CHAT_ID as ne, useDeleteChat as ie, useToggleFavoriteChat as le, graphQLRequest as ce, SERVICE_TYPES as de, ACTION_SORT as he, v as me, LOCAL_STORAGE_SEARCH as ue, LOCAL_STORAGE_FAVORITES_ONLY as Ce, LOCAL_STORAGE_KEYWORD_MATCH_ALL as fe, useChatsHistory as Se, useUserChatStats as ye, ACTION_SEARCH as pe } from "./index.BXReSy4c.js";
3
+ import { HistoryContext as te, ChatContext as Te, TableCellSortDirections as c, APP_CLASSNAME as ge, TOAST_CHAT_DELETED as Ae, HISTORY_TITLE as Ee, IconSearch as _e, Button as De } from "./LogoEntry.DReNqiYv.js";
4
+ import { Card as Le } from "./index.IpQNrFt6.js";
5
+ import { useAiChat as ve, useLocalStorage as h, LazyToastContainerWrapper as Oe, v4 as be, CHAT_RESET as ke, CHAT_SET_ATTACHMENTS as Re, CHAT_SET_STATUS as xe, showErrorToast as Ie, ConfirmationPanel as we, Panel as He, debounce as Ne, Toggle as $, ButtonCancel as Fe } from "./App.1qxTcHhE.js";
6
+ import { TextInput as Me } from "./index.BVCLFEiI.js";
7
7
  import Ge from "clsx";
8
8
  import { useRef as M, useState as D, useContext as X, useCallback as G, Suspense as Ve, lazy as ze, useEffect as Pe } from "react";
9
9
  const Ue = ze(
10
10
  () => import(
11
11
  /* webpackChunkName: "history-table" */
12
- "./ChatHistoryTable.Dxbpo7ck.js"
12
+ "./ChatHistoryTable.DaVUivHo.js"
13
13
  ).then((m) => ({ default: m.ChatHistoryTable }))
14
14
  ), Be = ({
15
15
  filteredHistory: m,
@@ -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.mw7jb1FZ.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.B2b4Yt9T.js";
4
- import { Card as B } from "./index.CwvbWO48.js";
5
- import { TextInput as O, TextInputMask as T } from "./index.CEpN9Mfy.js";
2
+ import { n as N, getLayoutPaddingClass as C, getMessageContaintWrapperClass as v, isTauri as w } from "./index.BXReSy4c.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.DReNqiYv.js";
4
+ import { Card as B } from "./index.IpQNrFt6.js";
5
+ import { TextInput as O, TextInputMask as T } from "./index.BVCLFEiI.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({