@versini/sassysaint 4.1.0 → 4.3.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,1279 +0,0 @@
1
- import { jsxs as l, jsx as e, Fragment as w } from "react/jsx-runtime";
2
- import { O as B, i$1 as ie, N as de, p as De, o as _e, g as I, N$1 as z, CARDS as u, renderDataAsList as U, pluralize as Z, ABOUT_TITLE as Be, MODEL_GPT4 as ze, numberFormatter as Ve, durationFormatter as Ce, NA as Pe, ROLE_ASSISTANT as Fe, extractAverage as Ge, GPT4_MAX_TOKENS as $e, qr as K, STATS as Ne, b as G, j as x, x as ee, LOCAL_STORAGE_PREFIX as te, LOCAL_STORAGE_SORT as Ue, ACTION_RESET as je, ACTION_RESTORE as Ye, truncate as Ke, ACTION_SORT as re, LOCAL_STORAGE_SEARCH as We, Y as Xe, ACTION_SEARCH as qe, HISTORY_TITLE as Je, LOCAL_STORAGE_CHAT_DETAILS as Qe, LOCAL_STORAGE_LOCATION as Ze, W as et, v as tt, ACTION_LOCATION as me, getCurrentGeoLocation as at, convertLatitudeToDMS as nt, convertLongitudeToDMS as st, PROFILE_TITLE as rt, LOG_OUT as ue } from "./index.iWfWxGn2.js";
3
- import * as ce from "react";
4
- import ot, { forwardRef as Te, useState as T, useRef as j, useContext as H, useEffect as O, Suspense as ct, lazy as lt, useId as it, useMemo as dt } from "react";
5
- import { g as mt, AppContext as W, serviceCall as ne, SERVICE_TYPES as se, HistoryContext as Ee, E as ae, k as A, et as ut, at as ht, lt as oe, J as M, ct as pt, st as ft, rt as gt } from "./useLocalStorage.ChFZVshd.js";
6
- import k from "clsx";
7
- import { useFloatingTree as Se, useFloatingNodeId as Ct, useListItem as ye, useFloating as Nt, offset as Tt, flip as Et, shift as St, autoUpdate as yt, useClick as bt, useRole as wt, useDismiss as xt, useListNavigation as kt, useTypeahead as vt, useInteractions as At, useMergeRefs as be, FloatingNode as It, FloatingList as Rt, FloatingPortal as Mt, FloatingFocusManager as Ht, FloatingTree as Lt } from "@floating-ui/react";
8
- const le = ce.createContext({
9
- getItemProps: () => ({}),
10
- activeIndex: null,
11
- /* v8 ignore next 2 */
12
- setActiveIndex: () => {
13
- },
14
- setHasFocusInside: () => {
15
- },
16
- isOpen: !1
17
- }), he = (t) => {
18
- if (typeof t == "string")
19
- return t;
20
- if (typeof t == "function")
21
- return t.displayName || t.name || "Component";
22
- if (typeof t == "object" && t !== null && "type" in t) {
23
- const a = t.type;
24
- if (typeof a == "function" || typeof a == "object")
25
- return a.displayName || a.name || "Component";
26
- }
27
- return "Element";
28
- }, we = Te(
29
- ({
30
- trigger: t,
31
- children: a,
32
- label: n = "Open menu",
33
- defaultPlacement: s = "bottom-start",
34
- onOpenChange: r,
35
- spacing: o,
36
- mode: i = "system",
37
- focusMode: h = "system",
38
- ...p
39
- }, d) => {
40
- const [m, g] = T(!1), [E, S] = T(!1), [f, b] = T(null), v = j([]), c = j([]), C = H(le), N = Se(), y = Ct(), L = ye(), { floatingStyles: V, refs: D, context: R } = Nt({
41
- nodeId: y,
42
- open: m,
43
- onOpenChange: (F) => {
44
- g(F), r == null || r(F);
45
- },
46
- placement: s,
47
- strategy: "fixed",
48
- middleware: [Tt({ mainAxis: 10 }), Et(), St()],
49
- whileElementsMounted: yt
50
- }), J = bt(R, {
51
- event: "mousedown",
52
- toggle: !0,
53
- ignoreMouse: !1
54
- }), P = wt(R, { role: "menu" }), ve = xt(R, { bubbles: !0 }), Ae = kt(R, {
55
- listRef: v,
56
- activeIndex: f,
57
- nested: !1,
58
- onNavigate: b,
59
- loop: !0
60
- }), Ie = vt(R, {
61
- listRef: c,
62
- onMatch: m ? b : void 0,
63
- activeIndex: f
64
- }), { getReferenceProps: Re, getFloatingProps: Me, getItemProps: He } = At([J, P, ve, Ae, Ie]), Le = he(t) === "Button" || he(t) === "ButtonIcon", Oe = ot.cloneElement(t, {
65
- mode: i,
66
- focusMode: h,
67
- spacing: o,
68
- noInternalClick: Le,
69
- "aria-label": n,
70
- "data-open": m ? "" : void 0,
71
- "data-focus-inside": E ? "" : void 0,
72
- ref: be([D.setReference, L.ref, d]),
73
- ...Re(
74
- C.getItemProps({
75
- ...p
76
- })
77
- )
78
- });
79
- return O(() => {
80
- if (!N)
81
- return;
82
- function F() {
83
- g(!1), r == null || r(!1);
84
- }
85
- return N.events.on("click", F), () => {
86
- N.events.off("click", F);
87
- };
88
- }, [N, r]), O(() => {
89
- m && N && N.events.emit("menuopen", { nodeId: y });
90
- }, [N, m, y]), /* @__PURE__ */ l(It, { id: y, children: [
91
- Oe,
92
- /* @__PURE__ */ e(
93
- le.Provider,
94
- {
95
- value: {
96
- activeIndex: f,
97
- setActiveIndex: b,
98
- getItemProps: He,
99
- setHasFocusInside: S,
100
- isOpen: m
101
- },
102
- children: /* @__PURE__ */ e(Rt, { elementsRef: v, labelsRef: c, children: m && /* @__PURE__ */ e(Mt, { children: /* @__PURE__ */ e(
103
- Ht,
104
- {
105
- context: R,
106
- modal: !1,
107
- initialFocus: 0,
108
- returnFocus: !0,
109
- children: /* @__PURE__ */ e(
110
- "div",
111
- {
112
- ref: D.setFloating,
113
- className: "rounded-md bg-surface-light p-4 shadow-sm shadow-border-dark outline-none sm:p-2",
114
- style: V,
115
- ...Me(),
116
- children: a
117
- }
118
- )
119
- }
120
- ) }) })
121
- }
122
- )
123
- ] });
124
- }
125
- ), xe = Te((t, a) => /* @__PURE__ */ e(Lt, { children: /* @__PURE__ */ e(we, { ...t, ref: a }) }));
126
- xe.displayName = "Menu";
127
- we.displayName = "MenuComponent";
128
- const _ = ce.forwardRef(({ label: t, disabled: a, icon: n, ...s }, r) => {
129
- const o = ce.useContext(le), i = ye({ label: a ? null : t }), h = Se();
130
- return /* @__PURE__ */ l(
131
- "button",
132
- {
133
- ...s,
134
- ref: be([i.ref, r]),
135
- role: "menuitem",
136
- className: "m-0 flex w-full rounded-md border border-transparent bg-none px-3 py-2 text-left text-base outline-none focus:border focus:border-border-medium focus:bg-surface-lighter focus:underline disabled:cursor-not-allowed disabled:text-copy-medium sm:py-1",
137
- tabIndex: 0,
138
- disabled: a,
139
- ...o.getItemProps({
140
- onClick(p) {
141
- var d;
142
- (d = s.onClick) == null || d.call(s, p), h == null || h.events.emit("click");
143
- },
144
- onFocus(p) {
145
- var d;
146
- (d = s.onFocus) == null || d.call(s, p), o.setHasFocusInside(!0);
147
- }
148
- }),
149
- children: [
150
- n,
151
- t && /* @__PURE__ */ e("span", { className: "pl-2", children: t })
152
- ]
153
- }
154
- );
155
- });
156
- _.displayName = "MenuItem";
157
- const Ot = ({ className: t, ...a }) => {
158
- const n = k(t, "my-1 border-t border-border-medium");
159
- return /* @__PURE__ */ e("div", { className: n, ...a });
160
- }, Dt = ({
161
- className: t,
162
- viewBox: a,
163
- spacing: n,
164
- title: s,
165
- monotone: r,
166
- ...o
167
- }) => /* @__PURE__ */ e(
168
- mt,
169
- {
170
- defaultViewBox: "0 0 384 512",
171
- defaultClassName: "size-5",
172
- viewBox: a,
173
- className: t,
174
- spacing: n,
175
- title: s || "Close",
176
- ...o,
177
- children: /* @__PURE__ */ e("path", { d: "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3l105.4 105.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256l105.3-105.4z" })
178
- }
179
- ), $ = "panel", Q = "messagebox", _t = ({
180
- className: t,
181
- kind: a,
182
- borderMode: n
183
- }) => ({
184
- main: k("prose prose-lighter flex flex-col bg-surface-medium", {
185
- [`${ie} h-full min-h-[95%] sm:h-auto sm:min-h-[10rem] sm:rounded-lg sm:border-2`]: a === $,
186
- [`${ie} w-full sm:w-[95%] md:max-w-2xl`]: a === $ && !t,
187
- [`${de} rounded-lg border-2`]: a === Q,
188
- [`${de} w-[95%] sm:w-[50%] md:max-w-2xl`]: a === Q && !t,
189
- [`${t}`]: !!t,
190
- "sm:border-border-dark": n === "dark" && a === $,
191
- "sm:border-border-accent": n === "light" && a === $,
192
- "border-border-dark": n === "dark" && a === Q,
193
- "border-border-accent": n === "light" && a === Q
194
- }),
195
- content: "flex flex-grow flex-col py-2 sm:py-4 px-4",
196
- footer: "flex flex-grow flex-col p-4",
197
- header: "p-4 mb-0",
198
- close: "p-4"
199
- }), X = (t) => lt(
200
- () => import("./index.7JJYsiGN.BMY0Ig6p.js").then((a) => ({
201
- default: a[t]
202
- }))
203
- ), Bt = X("Modal"), zt = X("ModalClose"), Vt = X("ModalContent"), Pt = X("ModalDescription"), Ft = X("ModalHeading"), q = ({
204
- open: t,
205
- onOpenChange: a,
206
- title: n,
207
- children: s,
208
- footer: r,
209
- borderMode: o = "light",
210
- kind: i = $,
211
- className: h
212
- }) => {
213
- const p = j(""), d = _t({ className: h, kind: i, borderMode: o });
214
- return O(() => (t && (p.current = document.title, document.title = `${n} | ${p.current}`), () => {
215
- t && (document.title = p.current);
216
- }), [n, t]), /* @__PURE__ */ e(ct, { fallback: /* @__PURE__ */ e("div", {}), children: t && /* @__PURE__ */ e(Bt, { open: t, onOpenChange: a, children: /* @__PURE__ */ l(Vt, { className: d.main, children: [
217
- /* @__PURE__ */ l("div", { className: "flex flex-row-reverse items-center justify-between", children: [
218
- /* @__PURE__ */ e(
219
- zt,
220
- {
221
- className: d.close,
222
- trigger: /* @__PURE__ */ e(
223
- B,
224
- {
225
- mode: "dark",
226
- focusMode: "light",
227
- noBorder: !0,
228
- label: "Close",
229
- children: /* @__PURE__ */ e(Dt, {})
230
- }
231
- )
232
- }
233
- ),
234
- /* @__PURE__ */ e(Ft, { className: d.header, children: n })
235
- ] }),
236
- /* @__PURE__ */ e(Pt, { className: d.content, children: s }),
237
- r && /* @__PURE__ */ e("div", { className: d.footer, children: r })
238
- ] }) }) });
239
- }, Gt = () => k("peer", "h-6", "w-11", "rounded-full"), $t = ({
240
- focusMode: t
241
- }) => k(
242
- "peer-focus:outline",
243
- "peer-focus:outline-2",
244
- "peer-focus:outline-offset-2",
245
- {
246
- "peer-focus:outline-focus-dark": t === "dark",
247
- "peer-focus:outline-focus-light": t === "light",
248
- "peer-focus:outline-focus-light dark:peer-focus:outline-focus-dark": t === "alt-system",
249
- "peer-focus:outline-focus-dark dark:peer-focus:outline-focus-light": t === "system"
250
- }
251
- ), Ut = () => k(
252
- "peer-checked:after:translate-x-full",
253
- // background color when checked
254
- "peer-checked:bg-violet-500",
255
- // knob circle and border color when checked
256
- "peer-checked:after:bg-white",
257
- "peer-checked:after:border-white"
258
- ), jt = () => k(
259
- "after:left-[2px]",
260
- "after:top-[2px]",
261
- "after:border",
262
- "after:border-surface-light dark:after:border-surface-medium",
263
- "after:bg-surface-light dark:after:bg-surface-medium",
264
- "after:absolute",
265
- "after:h-5",
266
- "after:w-5",
267
- "after:rounded-full",
268
- "after:transition-all",
269
- "after:content-['']"
270
- ), Yt = ({
271
- mode: t,
272
- noBorder: a
273
- }) => k({
274
- border: !a,
275
- "border-border-dark bg-surface-medium": t === "light",
276
- "border-border-light bg-surface-darker": t === "dark",
277
- "border-border-light bg-surface-darker dark:border-border-dark dark:bg-surface-medium": t === "alt-system",
278
- "border-border-dark bg-surface-medium dark:border-border-light dark:bg-surface-darker": t === "system"
279
- }), Kt = ({
280
- mode: t,
281
- labelHidden: a
282
- }) => a ? "sr-only" : k("ml-2 text-sm", {
283
- "text-copy-dark": t === "light",
284
- "text-copy-lighter": t === "dark",
285
- "text-copy-lighter dark:text-copy-dark": t === "alt-system",
286
- "text-copy-dark dark:text-copy-lighter": t === "system"
287
- }), Wt = ({ spacing: t }) => k(
288
- De,
289
- "relative flex cursor-pointer items-center",
290
- _e(t)
291
- ), Xt = ({
292
- mode: t,
293
- focusMode: a,
294
- labelHidden: n,
295
- spacing: s,
296
- noBorder: r
297
- }) => ({
298
- toggle: k(
299
- Gt(),
300
- Yt({ mode: t, noBorder: r }),
301
- $t({ focusMode: a }),
302
- jt(),
303
- Ut()
304
- ),
305
- label: Kt({ mode: t, labelHidden: n }),
306
- input: "peer sr-only",
307
- wrapper: Wt({ spacing: s })
308
- }), qt = ({
309
- checked: t = !1,
310
- onChange: a,
311
- label: n,
312
- labelHidden: s = !1,
313
- name: r,
314
- mode: o = "system",
315
- focusMode: i = "system",
316
- spacing: h,
317
- noBorder: p = !1
318
- }) => {
319
- const d = Xt({
320
- mode: o,
321
- focusMode: i,
322
- labelHidden: s,
323
- spacing: h,
324
- noBorder: p
325
- }), m = (g) => {
326
- a == null || a(g.target.checked);
327
- };
328
- return /* @__PURE__ */ l("label", { className: d.wrapper, children: [
329
- /* @__PURE__ */ e(
330
- "input",
331
- {
332
- name: r,
333
- checked: t,
334
- type: "checkbox",
335
- className: d.input,
336
- onChange: m
337
- }
338
- ),
339
- /* @__PURE__ */ e("div", { className: d.toggle }),
340
- /* @__PURE__ */ e("span", { className: d.label, children: n })
341
- ] });
342
- }, Jt = ({
343
- className: t,
344
- viewBox: a,
345
- spacing: n,
346
- title: s,
347
- monotone: r,
348
- ...o
349
- }) => /* @__PURE__ */ l(
350
- I,
351
- {
352
- defaultViewBox: "0 0 512 512",
353
- defaultClassName: "size-5",
354
- viewBox: a,
355
- className: t,
356
- spacing: n,
357
- title: s || "Back",
358
- ...o,
359
- children: [
360
- /* @__PURE__ */ e(
361
- "path",
362
- {
363
- opacity: r ? "1" : "0.4",
364
- d: "M288.4 93.4c2.9-17.4 19.4-29.2 36.9-26.3C431.3 84.9 512 177 512 288c0 123.7-100.3 224-224 224C177 512 84.9 431.3 67.1 325.3c-2.9-17.4 8.8-33.9 26.3-36.9s33.9 8.8 36.9 26.3C142.9 390.4 208.8 448 288 448c88.4 0 160-71.6 160-160c0-79.2-57.6-145.1-133.3-157.8c-17.4-2.9-29.2-19.4-26.3-36.9z"
365
- }
366
- ),
367
- /* @__PURE__ */ e("path", { d: "M32 0H192c17.7 0 32 14.3 32 32s-14.3 32-32 32H109.3L342.6 297.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L64 109.3V192c0 17.7-14.3 32-32 32s-32-14.3-32-32V32C0 14.3 14.3 0 32 0z" })
368
- ]
369
- }
370
- ), Qt = ({
371
- className: t,
372
- viewBox: a,
373
- spacing: n,
374
- title: s,
375
- monotone: r,
376
- ...o
377
- }) => /* @__PURE__ */ l(
378
- I,
379
- {
380
- defaultViewBox: "0 0 448 512",
381
- defaultClassName: "size-5",
382
- viewBox: a,
383
- className: t,
384
- spacing: n,
385
- title: s || "Chart",
386
- ...o,
387
- children: [
388
- /* @__PURE__ */ e(
389
- "path",
390
- {
391
- opacity: r ? "1" : "0.4",
392
- d: "M160 80c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V80z"
393
- }
394
- ),
395
- /* @__PURE__ */ e("path", { d: "M368 96c-26.5 0-48 21.5-48 48V432c0 26.5 21.5 48 48 48h32c26.5 0 48-21.5 48-48V144c0-26.5-21.5-48-48-48H368zM48 224c-26.5 0-48 21.5-48 48V432c0 26.5 21.5 48 48 48H80c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48H48z" })
396
- ]
397
- }
398
- ), Zt = ({
399
- className: t,
400
- viewBox: a,
401
- spacing: n,
402
- title: s,
403
- monotone: r,
404
- ...o
405
- }) => /* @__PURE__ */ l(
406
- I,
407
- {
408
- defaultViewBox: "0 0 448 512",
409
- defaultClassName: "size-5",
410
- viewBox: a,
411
- className: t,
412
- spacing: n,
413
- title: s || "Delete",
414
- ...o,
415
- children: [
416
- /* @__PURE__ */ e(
417
- "path",
418
- {
419
- opacity: r ? "1" : "0.4",
420
- d: "M416 96H32V448c0 35.3 28.7 64 64 64H352c35.3 0 64-28.7 64-64V96zM144 176V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V176c0-8.8 7.2-16 16-16s16 7.2 16 16zm96 0V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V176c0-8.8 7.2-16 16-16s16 7.2 16 16zm96 0V400c0 8.8-7.2 16-16 16s-16-7.2-16-16V176c0-8.8 7.2-16 16-16s16 7.2 16 16z"
421
- }
422
- ),
423
- /* @__PURE__ */ e("path", { d: "M163.8 0c-12.1 0-23.2 6.8-28.6 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8z" })
424
- ]
425
- }
426
- ), ea = ({
427
- className: t,
428
- viewBox: a,
429
- spacing: n,
430
- title: s,
431
- monotone: r,
432
- ...o
433
- }) => /* @__PURE__ */ l(
434
- I,
435
- {
436
- defaultViewBox: "0 0 512 512",
437
- defaultClassName: "size-5",
438
- viewBox: a,
439
- className: t,
440
- spacing: n,
441
- title: s || "History",
442
- ...o,
443
- children: [
444
- /* @__PURE__ */ e(
445
- "path",
446
- {
447
- opacity: r ? "1" : "0.4",
448
- d: "M120.2 120.2C155 85.5 203 64 256 64c106 0 192 86 192 192s-86 192-192 192c-40.8 0-78.6-12.7-109.7-34.4c-14.5-10.1-34.4-6.6-44.6 7.9s-6.6 34.4 7.9 44.6C151.2 495 201.7 512 256 512c141.4 0 256-114.6 256-256S397.4 0 256 0C185.3 0 121.3 28.7 75 75L41 41C25.9 25.9 0 36.6 0 57.9V168c0 13.3 10.7 24 24 24H134.1c21.4 0 32.1-25.9 17-41l-30.8-30.8z"
449
- }
450
- ),
451
- /* @__PURE__ */ e("path", { d: "M256 128c13.3 0 24 10.7 24 24v94.1l65 65c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-72-72c-4.5-4.5-7-10.6-7-17V152c0-13.3 10.7-24 24-24z" })
452
- ]
453
- }
454
- ), ta = ({
455
- className: t,
456
- viewBox: a,
457
- spacing: n,
458
- title: s,
459
- monotone: r,
460
- ...o
461
- }) => /* @__PURE__ */ l(
462
- I,
463
- {
464
- defaultViewBox: "0 0 512 512",
465
- defaultClassName: "size-5",
466
- viewBox: a,
467
- className: t,
468
- spacing: n,
469
- title: s || "Info",
470
- ...o,
471
- children: [
472
- /* @__PURE__ */ e(
473
- "path",
474
- {
475
- opacity: "0.4",
476
- d: "M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336h24V272H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24zm40-208a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"
477
- }
478
- ),
479
- /* @__PURE__ */ e("path", { d: "M256 128a32 32 0 1 1 0 64 32 32 0 1 1 0-64zM192 248c0-13.3 10.7-24 24-24h48c13.3 0 24 10.7 24 24v88h8c13.3 0 24 10.7 24 24s-10.7 24-24 24H216c-13.3 0-24-10.7-24-24s10.7-24 24-24h24V272H216c-13.3 0-24-10.7-24-24z" })
480
- ]
481
- }
482
- ), aa = ({
483
- className: t,
484
- viewBox: a,
485
- spacing: n,
486
- title: s,
487
- monotone: r,
488
- ...o
489
- }) => /* @__PURE__ */ l(
490
- I,
491
- {
492
- defaultViewBox: "0 0 576 512",
493
- defaultClassName: "size-5",
494
- viewBox: a,
495
- className: t,
496
- spacing: n,
497
- title: s || "Profile",
498
- ...o,
499
- children: [
500
- /* @__PURE__ */ e(
501
- "path",
502
- {
503
- opacity: "0.4",
504
- d: "M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zm80 256h64c44.2 0 80 35.8 80 80c0 8.8-7.2 16-16 16H80c-8.8 0-16-7.2-16-16c0-44.2 35.8-80 80-80zm-32-96a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm256-32H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16zm0 64H496c8.8 0 16 7.2 16 16s-7.2 16-16 16H368c-8.8 0-16-7.2-16-16s7.2-16 16-16z"
505
- }
506
- ),
507
- /* @__PURE__ */ e("path", { d: "M176 256a64 64 0 1 0 0-128 64 64 0 1 0 0 128zm-32 32c-44.2 0-80 35.8-80 80c0 8.8 7.2 16 16 16H272c8.8 0 16-7.2 16-16c0-44.2-35.8-80-80-80H144z" })
508
- ]
509
- }
510
- ), pe = ({
511
- className: t,
512
- viewBox: a,
513
- spacing: n,
514
- title: s,
515
- monotone: r,
516
- ...o
517
- }) => /* @__PURE__ */ l(
518
- I,
519
- {
520
- defaultViewBox: "0 0 512 512",
521
- defaultClassName: "size-5",
522
- viewBox: a,
523
- className: t,
524
- spacing: n,
525
- title: s || "Refresh",
526
- ...o,
527
- children: [
528
- /* @__PURE__ */ e(
529
- "path",
530
- {
531
- className: "fa-secondary",
532
- opacity: r ? "1" : "0.4",
533
- d: "M80 396.9V448c0 17.7-14.3 32-32 32s-32-14.3-32-32V320c0-17.7 14.3-32 32-32H176c17.7 0 32 14.3 32 32s-14.3 32-32 32H125.6l17.2 17.1c62.5 62.5 163.8 62.5 226.3 0c17.5-17.5 30.1-38 37.8-59.8c5.9-16.7 24.2-25.4 40.8-19.5s25.4 24.2 19.5 40.8c-10.8 30.6-28.4 59.3-52.9 83.8c-87.5 87.5-229.3 87.5-316.7 0L80 396.9z"
534
- }
535
- ),
536
- /* @__PURE__ */ e(
537
- "path",
538
- {
539
- className: "fa-primary",
540
- d: "M105.1 202.6c7.7-21.8 20.2-42.3 37.8-59.8c62.5-62.5 163.8-62.5 226.3 0L386.3 160H336c-17.7 0-32 14.3-32 32s14.3 32 32 32H463.5c0 0 0 0 0 0h.4c17.7 0 32-14.3 32-32V64c0-17.7-14.3-32-32-32s-32 14.3-32 32v51.2L414.4 97.6c-87.5-87.5-229.3-87.5-316.8 0C73.2 122 55.6 150.7 44.8 181.4c-5.9 16.7 2.9 34.9 19.5 40.8s34.9-2.9 40.8-19.5z"
541
- }
542
- )
543
- ]
544
- }
545
- ), na = ({
546
- className: t,
547
- viewBox: a,
548
- spacing: n,
549
- title: s,
550
- monotone: r,
551
- ...o
552
- }) => /* @__PURE__ */ l(
553
- I,
554
- {
555
- defaultViewBox: "0 0 512 512",
556
- defaultClassName: "size-5",
557
- viewBox: a,
558
- className: t,
559
- spacing: n,
560
- title: s || "Restore",
561
- ...o,
562
- children: [
563
- /* @__PURE__ */ e(
564
- "path",
565
- {
566
- opacity: r ? "1" : "0.4",
567
- d: "M208 64H432c8.8 0 16 7.2 16 16V304c0 8.8-7.2 16-16 16H416v64h16c44.2 0 80-35.8 80-80V80c0-44.2-35.8-80-80-80H208c-44.2 0-80 35.8-80 80V96h64V80c0-8.8 7.2-16 16-16z"
568
- }
569
- ),
570
- /* @__PURE__ */ e("path", { d: "M64 128c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V192c0-35.3-28.7-64-64-64H64zm32 64H288c17.7 0 32 14.3 32 32s-14.3 32-32 32H96c-17.7 0-32-14.3-32-32s14.3-32 32-32z" })
571
- ]
572
- }
573
- ), sa = ({
574
- className: t,
575
- viewBox: a,
576
- spacing: n,
577
- title: s,
578
- monotone: r,
579
- ...o
580
- }) => /* @__PURE__ */ e(
581
- I,
582
- {
583
- defaultViewBox: "0 0 448 512",
584
- defaultClassName: "size-5",
585
- viewBox: a,
586
- className: t,
587
- spacing: n,
588
- title: s || "Settings",
589
- ...o,
590
- children: /* @__PURE__ */ e("path", { d: "M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z" })
591
- }
592
- );
593
- function Y(t) {
594
- return it();
595
- }
596
- const ra = ({ stats: t }) => {
597
- const a = (t == null ? void 0 : t.plugins) || [], n = (t == null ? void 0 : t.version) || "", s = (t == null ? void 0 : t.models) || [], r = Y(), o = Y();
598
- return /* @__PURE__ */ l(w, { children: [
599
- /* @__PURE__ */ e("div", { className: "mb-4", children: /* @__PURE__ */ e(
600
- z,
601
- {
602
- header: u.ABOUT.TITLE_CLIENT,
603
- className: "prose-dark dark:prose-lighter",
604
- children: U(r, {
605
- [u.ABOUT.VERSION]: "4.1.0",
606
- [u.ABOUT.BUILD_TIMESTAMP]: "09/01/2024 05:59 PM EDT"
607
- })
608
- }
609
- ) }),
610
- /* @__PURE__ */ e(
611
- z,
612
- {
613
- header: u.ABOUT.TITLE_SERVER,
614
- className: "prose-dark dark:prose-lighter",
615
- children: U(o, {
616
- [u.ABOUT.VERSION]: n,
617
- [Z(u.ABOUT.ENGINE, s.length)]: /* @__PURE__ */ e(w, { children: s.map((i) => /* @__PURE__ */ e("div", { className: "text-right", children: i }, i)) }),
618
- [Z(u.ABOUT.PLUGIN, a.length)]: /* @__PURE__ */ e(w, { children: a.map((i) => /* @__PURE__ */ e("div", { className: "text-right", children: i }, i)) })
619
- })
620
- }
621
- )
622
- ] });
623
- }, oa = ({
624
- open: t,
625
- onOpenChange: a
626
- }) => {
627
- const { serverStats: n } = H(W);
628
- return /* @__PURE__ */ e(q, { open: t, onOpenChange: a, title: Be, children: /* @__PURE__ */ e(ra, { stats: n }) });
629
- }, ca = (t) => Ce(t), la = (t) => {
630
- if (!t || t.length === 0)
631
- return Pe;
632
- const a = t.filter(
633
- (n) => {
634
- var s, r;
635
- return ((s = n == null ? void 0 : n.message) == null ? void 0 : s.role) === Fe && typeof ((r = n == null ? void 0 : n.message) == null ? void 0 : r.processingTime) == "number";
636
- }
637
- ).map((n) => n.message.processingTime);
638
- return Ge({
639
- data: a,
640
- formatter: ca
641
- });
642
- }, ia = ({
643
- isAuthenticated: t,
644
- stats: a
645
- }) => {
646
- const { state: n } = H(W), s = $e - Number(n == null ? void 0 : n.usage), r = Y(), o = Y();
647
- return t ? /* @__PURE__ */ l(w, { children: [
648
- n && n.messages.length > 0 && /* @__PURE__ */ e("div", { className: "mb-4", children: /* @__PURE__ */ e(
649
- z,
650
- {
651
- header: u.CURRENT_STATISTICS.TITLE,
652
- className: "prose-dark dark:prose-lighter",
653
- children: U(r, {
654
- [u.CURRENT_STATISTICS.MODEL_NAME]: (n == null ? void 0 : n.model) || ze,
655
- [u.CURRENT_STATISTICS.TOKENS_USED]: n == null ? void 0 : n.usage,
656
- [u.CURRENT_STATISTICS.REMAINING_TOKENS]: Ve.format(s),
657
- [u.CURRENT_STATISTICS.PROCESSING_TIME]: la(n == null ? void 0 : n.messages)
658
- })
659
- }
660
- ) }),
661
- /* @__PURE__ */ e(
662
- z,
663
- {
664
- header: u.MAIN_STATISTICS.TITLE,
665
- className: "prose-dark dark:prose-lighter",
666
- children: U(o, {
667
- [Z(u.MAIN_STATISTICS.TOTAL, a.totalChats)]: a.totalChats,
668
- [u.MAIN_STATISTICS.PROCESSING_TIME]: Ce(
669
- a.averageProcessingTimes
670
- )
671
- })
672
- }
673
- )
674
- ] }) : null;
675
- }, da = ({
676
- open: t,
677
- onOpenChange: a
678
- }) => {
679
- const [n, s] = T({
680
- averageProcessingTimes: 0,
681
- totalChats: 0
682
- }), { isAuthenticated: r, getAccessToken: o, user: i } = K();
683
- return O(() => {
684
- !t || !i || (async () => {
685
- try {
686
- const h = await ne({
687
- accessToken: await o(),
688
- type: se.GET_CHATS_STATS,
689
- params: {
690
- userId: i.username
691
- }
692
- });
693
- h.status === 200 && s(h.data);
694
- } catch {
695
- }
696
- })();
697
- }, [t, o, i]), /* @__PURE__ */ e(q, { open: t, onOpenChange: a, title: Ne, children: /* @__PURE__ */ e(ia, { isAuthenticated: r, stats: n }) });
698
- }, ke = ({
699
- showConfirmation: t,
700
- setShowConfirmation: a,
701
- action: n,
702
- children: s,
703
- customStrings: r
704
- }) => /* @__PURE__ */ e(
705
- q,
706
- {
707
- kind: "messagebox",
708
- open: t,
709
- onOpenChange: a,
710
- title: r.title,
711
- footer: /* @__PURE__ */ l(G, { columnGap: 2, alignHorizontal: "flex-end", children: [
712
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(
713
- ee,
714
- {
715
- mode: "dark",
716
- variant: "secondary",
717
- focusMode: "light",
718
- onClick: () => {
719
- a(!1);
720
- },
721
- children: r.cancelAction
722
- }
723
- ) }),
724
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(
725
- ee,
726
- {
727
- mode: "dark",
728
- variant: "danger",
729
- focusMode: "light",
730
- onClick: () => {
731
- a(!1), n();
732
- },
733
- children: r.confirmAction
734
- }
735
- ) })
736
- ] }),
737
- children: s
738
- }
739
- );
740
- var ma = typeof window < "u", ua = function(t, a) {
741
- return ma ? window.matchMedia(t).matches : (process.env.NODE_ENV !== "production" && console.warn("`useMedia` When server side rendering, defaultState should be defined to prevent a hydration mismatches."), !1);
742
- }, ha = function(t, a) {
743
- var n = T(ua(t)), s = n[0], r = n[1];
744
- return O(function() {
745
- var o = !0, i = window.matchMedia(t), h = function() {
746
- o && r(!!i.matches);
747
- };
748
- return i.addEventListener("change", h), r(i.matches), function() {
749
- o = !1, i.removeEventListener("change", h);
750
- };
751
- }, [t]), s;
752
- };
753
- const pa = async (t, a, n, s) => {
754
- try {
755
- const r = await ne({
756
- accessToken: s,
757
- type: se.GET_CHAT,
758
- params: {
759
- id: t.id
760
- }
761
- });
762
- r.status === 200 && (a({
763
- type: je
764
- }), a({
765
- type: Ye,
766
- payload: {
767
- id: t.id,
768
- model: r.data.model,
769
- usage: r.data.usage,
770
- messages: r.data.messages
771
- }
772
- }), n(!1));
773
- } catch {
774
- }
775
- }, fe = (t) => {
776
- const a = t[0];
777
- return Ke(a == null ? void 0 : a.content, 100);
778
- }, fa = ({
779
- filteredHistory: t,
780
- setFilteredHistory: a,
781
- dispatch: n,
782
- onOpenChange: s
783
- }) => {
784
- var v;
785
- const { user: r, getAccessToken: o } = K(), i = j({
786
- id: 0,
787
- timestamp: "",
788
- message: ""
789
- }), [h, p] = T(!1), d = ha("(min-width: 480px)"), { state: m, dispatch: g } = H(Ee), [, E] = ae({
790
- key: te + Ue,
791
- initialValue: m.sortDirection
792
- }), S = t.data.sort(
793
- (c, C) => {
794
- switch (m.sortedCell) {
795
- case "timestamp":
796
- if (m.sortDirection === A.ASC)
797
- return new Date(c[m.sortedCell]).getTime() - new Date(C[m.sortedCell]).getTime();
798
- if (m.sortDirection === A.DESC)
799
- return new Date(C[m.sortedCell]).getTime() - new Date(c[m.sortedCell]).getTime();
800
- break;
801
- default:
802
- return 0;
803
- }
804
- return 0;
805
- }
806
- ), f = (c) => {
807
- switch (m.sortDirection) {
808
- case !1:
809
- E(A.ASC), g({
810
- type: re,
811
- payload: {
812
- sortedCell: c,
813
- sortDirection: A.ASC
814
- }
815
- });
816
- break;
817
- case A.ASC:
818
- E(A.DESC), g({
819
- type: re,
820
- payload: {
821
- sortedCell: c,
822
- sortDirection: A.DESC
823
- }
824
- });
825
- break;
826
- default:
827
- E(A.ASC), g({
828
- type: re,
829
- payload: {
830
- sortedCell: c,
831
- sortDirection: A.ASC
832
- }
833
- });
834
- break;
835
- }
836
- };
837
- return /* @__PURE__ */ l(w, { children: [
838
- /* @__PURE__ */ l(
839
- ke,
840
- {
841
- showConfirmation: h,
842
- setShowConfirmation: p,
843
- action: async () => {
844
- const c = i.current;
845
- try {
846
- const C = await ne({
847
- accessToken: await o(),
848
- type: se.DELETE_CHAT,
849
- params: {
850
- userId: (r == null ? void 0 : r.username) || "",
851
- id: c.id
852
- }
853
- });
854
- C.status === 200 && a({ data: C.data });
855
- } catch {
856
- }
857
- },
858
- customStrings: {
859
- confirmAction: "Delete",
860
- cancelAction: "Cancel",
861
- title: "Delete chat"
862
- },
863
- children: [
864
- /* @__PURE__ */ e("p", { className: "m-0", children: "Are you sure you want to delete the following chat:" }),
865
- /* @__PURE__ */ l("ul", { className: "m-0", children: [
866
- /* @__PURE__ */ l("li", { children: [
867
- "Timestamp:",
868
- " ",
869
- /* @__PURE__ */ e("span", { className: "text-lg", children: i.current && i.current.timestamp })
870
- ] }),
871
- /* @__PURE__ */ l("li", { children: [
872
- "First message:",
873
- " ",
874
- /* @__PURE__ */ e("span", { className: "text-lg", children: (v = i.current) == null ? void 0 : v.message })
875
- ] })
876
- ] })
877
- ]
878
- }
879
- ),
880
- /* @__PURE__ */ l(ut, { stickyHeader: !0, stickyFooter: !0, wrapperClassName: "max-h-[60vh]", children: [
881
- /* @__PURE__ */ e(ht, { children: /* @__PURE__ */ l(oe, { children: [
882
- d && /* @__PURE__ */ e(M, { className: "sr-only", children: "Row" }),
883
- /* @__PURE__ */ e(
884
- pt,
885
- {
886
- cellId: "timestamp",
887
- align: "left",
888
- sortDirection: m.sortDirection,
889
- sortedCell: m.sortedCell,
890
- onClick: () => {
891
- f("timestamp");
892
- },
893
- children: "Date"
894
- }
895
- ),
896
- /* @__PURE__ */ e(M, { children: "First message" }),
897
- /* @__PURE__ */ e(M, { className: "text-right", children: "Actions" })
898
- ] }) }),
899
- /* @__PURE__ */ e(ft, { children: S.map((c, C) => {
900
- var N;
901
- return ((N = c == null ? void 0 : c.messages) == null ? void 0 : N.length) > 0 ? /* @__PURE__ */ l(oe, { children: [
902
- d && /* @__PURE__ */ e(M, { children: C + 1 }),
903
- /* @__PURE__ */ e(
904
- M,
905
- {
906
- component: "th",
907
- scope: "row",
908
- className: "font-medium text-gray-400 sm:whitespace-nowrap",
909
- children: c.timestamp
910
- }
911
- ),
912
- /* @__PURE__ */ e(M, { className: "max-w-[100px] text-white sm:max-w-full", children: fe(c.messages) }),
913
- /* @__PURE__ */ e(M, { children: /* @__PURE__ */ l("div", { className: "flex justify-end gap-2", children: [
914
- /* @__PURE__ */ e(
915
- B,
916
- {
917
- focusMode: "alt-system",
918
- noBorder: !0,
919
- label: "Restore chat",
920
- onClick: async () => {
921
- const y = await o();
922
- pa(
923
- c,
924
- n,
925
- s,
926
- y
927
- );
928
- },
929
- children: /* @__PURE__ */ e(na, { className: "h-3 w-3", monotone: !0 })
930
- }
931
- ),
932
- /* @__PURE__ */ e(
933
- B,
934
- {
935
- focusMode: "alt-system",
936
- noBorder: !0,
937
- label: "Delete chat",
938
- onClick: () => {
939
- i.current = {
940
- id: c.id,
941
- timestamp: c.timestamp,
942
- message: fe(c.messages)
943
- }, p(!h);
944
- },
945
- children: /* @__PURE__ */ e("div", { className: "text-red-400", children: /* @__PURE__ */ e(Zt, { className: "h-3 w-3", monotone: !0 }) })
946
- }
947
- )
948
- ] }) })
949
- ] }, `${u.HISTORY.TITLE}-${c.id}-${C}`) : null;
950
- }) }),
951
- /* @__PURE__ */ e(gt, { children: /* @__PURE__ */ e(oe, { children: /* @__PURE__ */ e(M, { colSpan: 4, children: /* @__PURE__ */ e("div", { children: Z(
952
- `${t.data.length} chat`,
953
- t.data.length
954
- ) }) }) }) })
955
- ] })
956
- ] });
957
- };
958
- function ge(t, a) {
959
- return a ? t.filter(
960
- (n) => n.messages.some(
961
- (s) => s.content !== null && s.content.toLowerCase().includes(a.toLowerCase())
962
- )
963
- ) : t;
964
- }
965
- const ga = ({
966
- onOpenChange: t,
967
- historyData: a
968
- }) => {
969
- const { isAuthenticated: n } = K(), s = j(null), { dispatch: r } = H(W), { state: o, dispatch: i } = H(Ee), [, h] = ae({
970
- key: te + We,
971
- initialValue: o.searchString
972
- }), p = dt(() => a, [a]), [d, m] = T({
973
- data: p
974
- }), g = (f) => {
975
- const b = ge(p, f);
976
- m({
977
- data: b
978
- }), h(f), i({
979
- type: qe,
980
- payload: { searchString: f }
981
- });
982
- }, E = (f) => {
983
- g(f.target.value);
984
- }, S = async (f) => {
985
- f.preventDefault();
986
- };
987
- return O(() => {
988
- const f = ge(
989
- a,
990
- o.searchString
991
- );
992
- m({
993
- data: f
994
- });
995
- }, [a, o.searchString]), n ? d && d.data && /* @__PURE__ */ l(w, { children: [
996
- /* @__PURE__ */ e("form", { autoComplete: "off", onSubmit: S, children: /* @__PURE__ */ e(
997
- Xe,
998
- {
999
- ref: s,
1000
- defaultValue: o.searchString,
1001
- focusMode: "light",
1002
- name: "Search",
1003
- label: "Search",
1004
- onChange: E,
1005
- spacing: { t: 2, b: 2 },
1006
- ...o.searchString && {
1007
- rightElement: /* @__PURE__ */ e(
1008
- ee,
1009
- {
1010
- disabled: !o.searchString,
1011
- mode: "dark",
1012
- noBorder: !0,
1013
- size: "small",
1014
- onClick: () => {
1015
- var f;
1016
- g(""), (f = s.current) != null && f.value && (s.current.value = "", s.current.focus());
1017
- },
1018
- children: "Reset"
1019
- }
1020
- )
1021
- }
1022
- }
1023
- ) }),
1024
- /* @__PURE__ */ e("div", { className: "flex flex-col gap-2 sm:flex-row", children: /* @__PURE__ */ e(
1025
- fa,
1026
- {
1027
- filteredHistory: d,
1028
- setFilteredHistory: m,
1029
- dispatch: r,
1030
- onOpenChange: t
1031
- }
1032
- ) })
1033
- ] }) : null;
1034
- }, Ca = ({
1035
- open: t,
1036
- onOpenChange: a,
1037
- historyData: n
1038
- }) => /* @__PURE__ */ e(q, { open: t, onOpenChange: a, title: Je, children: /* @__PURE__ */ e(ga, { onOpenChange: a, historyData: n }) }), Na = () => {
1039
- const { isAuthenticated: t, user: a, registeringForPasskey: n, authenticationType: s } = K(), [r, o] = ae({
1040
- key: te + Qe,
1041
- initialValue: !1
1042
- }), [, i, h] = ae({
1043
- key: te + Ze,
1044
- initialValue: { latitude: 0, longitude: 0, accuracy: 0 }
1045
- }), [p, d] = T(!0), m = Y(), { state: g, dispatch: E } = H(W), S = (a == null ? void 0 : a.username) || "", f = (c) => {
1046
- o(c);
1047
- }, b = async () => {
1048
- d(!1), h(), E({
1049
- type: me,
1050
- payload: {
1051
- location: {
1052
- latitude: 0,
1053
- longitude: 0,
1054
- accuracy: 0
1055
- }
1056
- }
1057
- });
1058
- const c = await at();
1059
- i(c), E({
1060
- type: me,
1061
- payload: {
1062
- location: c
1063
- }
1064
- });
1065
- };
1066
- O(() => {
1067
- let c;
1068
- return p || (c = window.setTimeout(() => {
1069
- d(!0);
1070
- }, 3e3)), () => {
1071
- clearTimeout(c);
1072
- };
1073
- }, [p]);
1074
- const v = (c) => {
1075
- const { city: C, state: N, country: y, displayName: L } = c || {};
1076
- if (C && y && N || L)
1077
- return /* @__PURE__ */ e(w, { children: /* @__PURE__ */ l(G, { alignVertical: "center", columnGap: 4, children: [
1078
- /* @__PURE__ */ e(x, { children: C && N && y ? /* @__PURE__ */ l("div", { className: "mt-2", children: [
1079
- /* @__PURE__ */ l("div", { className: "text-right", children: [
1080
- C,
1081
- ", ",
1082
- N
1083
- ] }),
1084
- /* @__PURE__ */ e("div", { className: "text-right", children: y })
1085
- ] }) : L ? /* @__PURE__ */ e("div", { className: "mt-2 text-right", children: L }) : null }),
1086
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(
1087
- B,
1088
- {
1089
- disabled: !p,
1090
- size: "small",
1091
- className: "mt-2",
1092
- onClick: b,
1093
- children: /* @__PURE__ */ e(pe, { className: "size-3", monotone: !0 })
1094
- }
1095
- ) })
1096
- ] }) });
1097
- const V = nt(c == null ? void 0 : c.latitude), D = st(c == null ? void 0 : c.longitude);
1098
- return /* @__PURE__ */ e(w, { children: /* @__PURE__ */ l(G, { alignVertical: "center", columnGap: 4, children: [
1099
- /* @__PURE__ */ l(x, { children: [
1100
- /* @__PURE__ */ e("div", { children: V }),
1101
- /* @__PURE__ */ e("div", { children: D })
1102
- ] }),
1103
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(B, { size: "small", onClick: b, children: /* @__PURE__ */ e(pe, { className: "size-3", monotone: !0 }) }) })
1104
- ] }) });
1105
- };
1106
- return t && S ? /* @__PURE__ */ l(w, { children: [
1107
- /* @__PURE__ */ e(
1108
- z,
1109
- {
1110
- header: u.PREFERENCES.TITLE,
1111
- className: "prose-dark dark:prose-lighter",
1112
- children: U(m, {
1113
- [u.PREFERENCES.NAME]: S,
1114
- [u.PREFERENCES.EMAIL]: (a == null ? void 0 : a.email) || "",
1115
- [u.PREFERENCES.ENGINE_DETAILS]: /* @__PURE__ */ e(
1116
- qt,
1117
- {
1118
- noBorder: !0,
1119
- labelHidden: !0,
1120
- label: u.PREFERENCES.ENGINE_DETAILS,
1121
- name: u.PREFERENCES.ENGINE_DETAILS,
1122
- onChange: f,
1123
- checked: r
1124
- }
1125
- ),
1126
- [u.PREFERENCES.LOCATION]: v(g == null ? void 0 : g.location)
1127
- })
1128
- }
1129
- ),
1130
- s !== et.PASSKEY && /* @__PURE__ */ e(
1131
- z,
1132
- {
1133
- spacing: { t: 4 },
1134
- className: "prose-dark dark:prose-lighter",
1135
- header: /* @__PURE__ */ e("h2", { className: "m-0", children: /* @__PURE__ */ l(G, { columnGap: 3, alignVertical: "center", children: [
1136
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(tt, { className: "size-8 text-center" }) }),
1137
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e("div", { children: u.PREFERENCES.PASSKEY_TITLE }) })
1138
- ] }) }),
1139
- children: /* @__PURE__ */ l(G, { columnGap: 3, alignVertical: "center", children: [
1140
- /* @__PURE__ */ e(x, { children: u.PREFERENCES.PASSKEY_INSTRUCTIONS }),
1141
- /* @__PURE__ */ e(x, { children: /* @__PURE__ */ e(ee, { spacing: { t: 2 }, onClick: n, children: u.PREFERENCES.PASSKEY_BUTTON }) })
1142
- ] })
1143
- }
1144
- )
1145
- ] }) : null;
1146
- }, Ta = ({
1147
- open: t,
1148
- onOpenChange: a
1149
- }) => /* @__PURE__ */ e(q, { open: t, onOpenChange: a, title: rt, children: /* @__PURE__ */ e(Na, {}) }), ka = () => {
1150
- const { state: t } = H(W), [a, n] = T(!1), [s, r] = T(!1), [o, i] = T(!1), [h, p] = T(!1), [d, m] = T([]), [g, E] = T(!1), [S, f] = T({
1151
- done: !1,
1152
- progress: !1,
1153
- timestamp: Date.now()
1154
- }), { logout: b, getAccessToken: v, user: c } = K(), C = () => {
1155
- n(!a);
1156
- }, N = () => {
1157
- r(!s);
1158
- }, y = () => {
1159
- i(!o);
1160
- }, L = () => {
1161
- p(!h);
1162
- }, V = async (R) => {
1163
- const J = Date.now();
1164
- if (R && !(!c || !t || S.progress || S.done === !0 && J - S.timestamp < 5e3)) {
1165
- f({
1166
- done: !0,
1167
- progress: !0,
1168
- timestamp: J
1169
- });
1170
- try {
1171
- const P = await ne({
1172
- accessToken: await v(),
1173
- type: se.GET_CHATS,
1174
- params: {
1175
- userId: c.username
1176
- }
1177
- });
1178
- P.status === 200 && (m(P.data), f({
1179
- done: !0,
1180
- progress: !1,
1181
- timestamp: Date.now()
1182
- }));
1183
- } catch {
1184
- f({
1185
- done: !0,
1186
- progress: !1,
1187
- timestamp: Date.now()
1188
- });
1189
- }
1190
- }
1191
- }, D = () => {
1192
- E(!g);
1193
- };
1194
- return /* @__PURE__ */ l(w, { children: [
1195
- /* @__PURE__ */ e(
1196
- ke,
1197
- {
1198
- showConfirmation: g,
1199
- setShowConfirmation: E,
1200
- action: b,
1201
- customStrings: {
1202
- confirmAction: ue,
1203
- cancelAction: "Cancel",
1204
- title: ue
1205
- },
1206
- children: /* @__PURE__ */ e("p", { children: "Are you sure you want to log out?" })
1207
- }
1208
- ),
1209
- /* @__PURE__ */ e(Ta, { open: a, onOpenChange: n }),
1210
- /* @__PURE__ */ e(da, { open: s, onOpenChange: r }),
1211
- /* @__PURE__ */ e(
1212
- Ca,
1213
- {
1214
- open: o,
1215
- onOpenChange: i,
1216
- historyData: d
1217
- }
1218
- ),
1219
- /* @__PURE__ */ e(oa, { open: h, onOpenChange: p }),
1220
- /* @__PURE__ */ e("div", { className: "relative", children: /* @__PURE__ */ e("div", { className: "absolute bottom-[-28px] right-[-7px]", children: /* @__PURE__ */ l(
1221
- xe,
1222
- {
1223
- mode: "dark",
1224
- focusMode: "light",
1225
- trigger: /* @__PURE__ */ e(B, { children: /* @__PURE__ */ e(sa, {}) }),
1226
- defaultPlacement: "bottom-end",
1227
- onOpenChange: V,
1228
- children: [
1229
- /* @__PURE__ */ e(
1230
- _,
1231
- {
1232
- label: "Profile",
1233
- onClick: C,
1234
- icon: /* @__PURE__ */ e(aa, {})
1235
- }
1236
- ),
1237
- /* @__PURE__ */ e(
1238
- _,
1239
- {
1240
- label: Ne,
1241
- onClick: N,
1242
- icon: /* @__PURE__ */ e(Qt, {})
1243
- }
1244
- ),
1245
- /* @__PURE__ */ e(
1246
- _,
1247
- {
1248
- label: "History",
1249
- onClick: y,
1250
- icon: /* @__PURE__ */ e(ea, {})
1251
- }
1252
- ),
1253
- /* @__PURE__ */ e(
1254
- _,
1255
- {
1256
- label: "About",
1257
- onClick: L,
1258
- icon: /* @__PURE__ */ e(ta, {})
1259
- }
1260
- ),
1261
- t && t.id && !t.isComponent && /* @__PURE__ */ l(w, { children: [
1262
- /* @__PURE__ */ e(Ot, {}),
1263
- /* @__PURE__ */ e(
1264
- _,
1265
- {
1266
- label: "Log out",
1267
- onClick: D,
1268
- icon: /* @__PURE__ */ e("div", { className: "text-red-700", children: /* @__PURE__ */ e(Jt, { monotone: !0 }) })
1269
- }
1270
- )
1271
- ] })
1272
- ]
1273
- }
1274
- ) }) })
1275
- ] });
1276
- };
1277
- export {
1278
- ka as default
1279
- };