gentiq 0.7.30 → 0.7.31
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.
- package/README.md +6 -0
- package/dist/{checkbox-DllHCh8Z.js → checkbox-CXJMAW8-.js} +921 -920
- package/dist/gentiq-admin.es.js +1385 -1321
- package/dist/gentiq-index.es.js +709 -705
- package/dist/src/components/ThemeProvider.d.ts +1 -1
- package/dist/src/locales/en.json.d.ts +8 -1
- package/dist/src/locales/fa.json.d.ts +8 -1
- package/dist/src/types.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { jsx as i, Fragment as
|
|
1
|
+
import { jsx as i, Fragment as Z, jsxs as _ } from "react/jsx-runtime";
|
|
2
2
|
import * as Ce from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { createContext as de, useContext as Fe, useState as B, useEffect as J, useCallback as oe, useMemo as St, Children as cn, useRef as Ge, memo as pe } from "react";
|
|
4
4
|
import { useTranslation as M, initReactI18next as un } from "react-i18next";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import * as K from "@radix-ui/react-tooltip";
|
|
11
|
-
import { toast as Rn } from "sonner";
|
|
5
|
+
import { Slot as Et } from "@radix-ui/react-slot";
|
|
6
|
+
import { cva as De } from "class-variance-authority";
|
|
7
|
+
import { ArrowDownIcon as dn, ChevronDownIcon as ie, BookIcon as pn, XIcon as he, CheckIcon as Pe, ArrowUpIcon as hn, Loader2Icon as gn, SquareIcon as mn, FileIcon as Nt, PaperclipIcon as fn, MessageCircle as bn, RefreshCcwIcon as yn, ThumbsUpIcon as kn, ThumbsDownIcon as vn, CopyIcon as Tt, BrainIcon as wn, WrenchIcon as _n, ImagePlusIcon as xn, CodeIcon as Sn, DownloadIcon as ue, GlobeIcon as En, XCircleIcon as Ct, CheckCircleIcon as Nn, ClockIcon as Tn, CircleIcon as Cn, ChevronUpIcon as An } from "lucide-react";
|
|
8
|
+
import * as X from "@radix-ui/react-tooltip";
|
|
9
|
+
import { toast as In } from "sonner";
|
|
12
10
|
import "@radix-ui/react-scroll-area";
|
|
13
|
-
import { Streamdown as
|
|
11
|
+
import { Streamdown as Rn } from "streamdown";
|
|
14
12
|
import Ve from "katex";
|
|
15
13
|
import { useControllableState as We } from "@radix-ui/react-use-controllable-state";
|
|
14
|
+
import * as Me from "@radix-ui/react-collapsible";
|
|
16
15
|
import * as H from "@radix-ui/react-dialog";
|
|
17
16
|
import { PrismLight as U } from "react-syntax-highlighter";
|
|
17
|
+
import { StickToBottom as At, useStickToBottomContext as On } from "use-stick-to-bottom";
|
|
18
18
|
import Ln from "i18next";
|
|
19
19
|
import * as F from "@radix-ui/react-select";
|
|
20
20
|
import * as re from "@radix-ui/react-dropdown-menu";
|
|
@@ -22,6 +22,63 @@ import * as Ye from "@radix-ui/react-checkbox";
|
|
|
22
22
|
import { clsx as Fn } from "clsx";
|
|
23
23
|
import { twMerge as Dn } from "tailwind-merge";
|
|
24
24
|
const Pn = {
|
|
25
|
+
theme: "system",
|
|
26
|
+
setTheme: () => null,
|
|
27
|
+
accent: void 0,
|
|
28
|
+
setAccent: () => null,
|
|
29
|
+
radius: void 0,
|
|
30
|
+
setRadius: () => null
|
|
31
|
+
}, It = de(Pn);
|
|
32
|
+
function ki({
|
|
33
|
+
children: e,
|
|
34
|
+
defaultTheme: t = "system",
|
|
35
|
+
storageKey: n = "chatbot-theme",
|
|
36
|
+
config: o,
|
|
37
|
+
...r
|
|
38
|
+
}) {
|
|
39
|
+
const [a, l] = B(() => {
|
|
40
|
+
const u = window.localStorage.getItem(n);
|
|
41
|
+
return u === "system" || u === "light" || u === "dark" ? u : void 0;
|
|
42
|
+
}), [c, s] = B(
|
|
43
|
+
() => window.localStorage.getItem(n + "-accent") || void 0
|
|
44
|
+
), [p, g] = B(
|
|
45
|
+
() => window.localStorage.getItem(n + "-radius") || "1.25rem"
|
|
46
|
+
), { i18n: m } = M(["theme"]), f = a ?? o?.defaultTheme ?? t, b = c ?? o?.accent;
|
|
47
|
+
J(() => {
|
|
48
|
+
const u = window.document.documentElement;
|
|
49
|
+
if (u.classList.remove("light", "dark"), f === "system") {
|
|
50
|
+
const w = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
51
|
+
u.classList.add(w);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
u.classList.add(f);
|
|
55
|
+
}, [f]), J(() => {
|
|
56
|
+
const u = window.document.documentElement, w = m.language?.split("-")[0] || m.language;
|
|
57
|
+
let v = o?.typography?.fontFamily;
|
|
58
|
+
if (typeof v == "object" && v !== null && (v = v[m.language] || v[w] || v.en || Object.values(v)[0]), v) {
|
|
59
|
+
const C = v.includes(" ") && !v.startsWith("'") && !v.startsWith('"') ? `"${v}"` : v;
|
|
60
|
+
u.style.setProperty("--gentiq-font-family", C), u.style.fontFamily = C, window.document.body && (window.document.body.style.fontFamily = C);
|
|
61
|
+
}
|
|
62
|
+
const h = p || (typeof o?.radius == "number" ? `${o.radius}px` : o?.radius);
|
|
63
|
+
h !== void 0 && u.style.setProperty("--radius", h), b !== void 0 ? u.style.setProperty("--gentiq-primary", b) : u.style.removeProperty("--gentiq-primary"), window.document.documentElement.dir = m.dir();
|
|
64
|
+
}, [o, m, m.language, b, p]);
|
|
65
|
+
const k = {
|
|
66
|
+
theme: f,
|
|
67
|
+
setTheme: (u) => {
|
|
68
|
+
window.localStorage.setItem(n, u), l(u);
|
|
69
|
+
},
|
|
70
|
+
accent: b,
|
|
71
|
+
setAccent: (u) => {
|
|
72
|
+
u ? window.localStorage.setItem(n + "-accent", u) : window.localStorage.removeItem(n + "-accent"), s(u);
|
|
73
|
+
},
|
|
74
|
+
radius: p,
|
|
75
|
+
setRadius: (u) => {
|
|
76
|
+
u ? window.localStorage.setItem(n + "-radius", u) : window.localStorage.removeItem(n + "-radius"), g(u);
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
return /* @__PURE__ */ i(It.Provider, { ...r, value: k, children: e });
|
|
80
|
+
}
|
|
81
|
+
const vi = () => Fe(It), Mn = {
|
|
25
82
|
// Auth Errors
|
|
26
83
|
UNAUTHORIZED: "unauthorized",
|
|
27
84
|
INVALID_CREDENTIALS: "invalid_credentials",
|
|
@@ -61,8 +118,8 @@ class Xe extends Error {
|
|
|
61
118
|
super(t.error.message), this.name = "GentiqError", this.code = t.error.code, this.status = n, this.details = t.error.details;
|
|
62
119
|
}
|
|
63
120
|
}
|
|
64
|
-
function
|
|
65
|
-
const n = typeof e == "string" ? e : e.message, o = typeof e == "string" ? e : e.code || (Object.values(
|
|
121
|
+
function wi(e, t) {
|
|
122
|
+
const n = typeof e == "string" ? e : e.message, o = typeof e == "string" ? e : e.code || (Object.values(Mn).includes(n) ? n : void 0);
|
|
66
123
|
if (typeof o != "string")
|
|
67
124
|
return n || String(e);
|
|
68
125
|
const r = `errors:${o}`, a = t(r);
|
|
@@ -77,7 +134,7 @@ let N = {
|
|
|
77
134
|
cacheNamespace: "gentiq"
|
|
78
135
|
}
|
|
79
136
|
};
|
|
80
|
-
const
|
|
137
|
+
const zn = {
|
|
81
138
|
getToken: () => localStorage.getItem("token"),
|
|
82
139
|
setToken: (e) => localStorage.setItem("token", e),
|
|
83
140
|
clearToken: () => {
|
|
@@ -88,7 +145,7 @@ const Mn = {
|
|
|
88
145
|
return e ? { Authorization: `Bearer ${e}` } : {};
|
|
89
146
|
}
|
|
90
147
|
};
|
|
91
|
-
let L =
|
|
148
|
+
let L = zn;
|
|
92
149
|
const S = {
|
|
93
150
|
init: (e) => {
|
|
94
151
|
if (N = {
|
|
@@ -297,7 +354,7 @@ const S = {
|
|
|
297
354
|
return S.handleResponse(e, "Failed to fetch app configuration");
|
|
298
355
|
}
|
|
299
356
|
};
|
|
300
|
-
function
|
|
357
|
+
function Un(e, t) {
|
|
301
358
|
const [n, o] = B(
|
|
302
359
|
e.metadata?.feedback
|
|
303
360
|
), r = oe((l) => {
|
|
@@ -308,7 +365,7 @@ function zn(e, t) {
|
|
|
308
365
|
const c = n === l ? void 0 : l;
|
|
309
366
|
o(c);
|
|
310
367
|
try {
|
|
311
|
-
const s = e.parts.find((
|
|
368
|
+
const s = e.parts.find((g) => g.type === "data-message-id"), p = s ? s.data[0].message_id : e.id;
|
|
312
369
|
await S.saveFeedback(t, p, c ?? null);
|
|
313
370
|
} catch (s) {
|
|
314
371
|
console.error("Error saving feedback:", s);
|
|
@@ -320,9 +377,9 @@ function zn(e, t) {
|
|
|
320
377
|
copy: r
|
|
321
378
|
};
|
|
322
379
|
}
|
|
323
|
-
const
|
|
324
|
-
function
|
|
325
|
-
const { i18n: e } = M(["translation"]), { app: t } =
|
|
380
|
+
const $n = /* @__PURE__ */ new Set(["ar", "fa", "he", "ur", "yi", "ku", "ckb", "ps", "sd", "ug", "arc", "syc"]);
|
|
381
|
+
function Bn() {
|
|
382
|
+
const { i18n: e } = M(["translation"]), { app: t } = te(), n = St(() => {
|
|
326
383
|
const l = S.getConfig(), c = t || l.app;
|
|
327
384
|
return {
|
|
328
385
|
name: c?.name || "Gentiq App",
|
|
@@ -331,8 +388,8 @@ function $n() {
|
|
|
331
388
|
language: e.language || c?.language || "en",
|
|
332
389
|
showToolDetails: c?.showToolDetails ?? !0
|
|
333
390
|
};
|
|
334
|
-
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r =
|
|
335
|
-
return
|
|
391
|
+
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r = $n.has(o), a = t?.language;
|
|
392
|
+
return J(() => {
|
|
336
393
|
if (typeof window > "u") return;
|
|
337
394
|
const l = localStorage.getItem("gentiq-last-default-lang");
|
|
338
395
|
a && a !== l && (e.changeLanguage(a), localStorage.setItem("gentiq-last-default-lang", a)), document.documentElement.dir = r ? "rtl" : "ltr", document.documentElement.lang = e.language;
|
|
@@ -346,7 +403,7 @@ function $n() {
|
|
|
346
403
|
error: null
|
|
347
404
|
};
|
|
348
405
|
}
|
|
349
|
-
function
|
|
406
|
+
function Hn(e) {
|
|
350
407
|
const {
|
|
351
408
|
part: t,
|
|
352
409
|
message: n,
|
|
@@ -357,20 +414,20 @@ function Bn(e) {
|
|
|
357
414
|
conversationId: c,
|
|
358
415
|
isFinished: s,
|
|
359
416
|
renderMessagePart: p,
|
|
360
|
-
chat:
|
|
361
|
-
readonly:
|
|
362
|
-
} = e, { showToolDetails:
|
|
417
|
+
chat: g,
|
|
418
|
+
readonly: m
|
|
419
|
+
} = e, { showToolDetails: f } = Bn(), { TextPart: b, ReasoningPart: k, ToolPart: u, FilePart: w, toolComponents: v, threadActions: h } = te(), { feedback: C, handleFeedback: E, copy: R } = Un(n, c);
|
|
363
420
|
if (p) {
|
|
364
421
|
const O = p(t, n);
|
|
365
422
|
if (O !== void 0)
|
|
366
|
-
return /* @__PURE__ */ i(
|
|
423
|
+
return /* @__PURE__ */ i(Z, { children: O });
|
|
367
424
|
}
|
|
368
425
|
if (["data-progress-update", "data-message-id", "data-chat-finished", "data-title"].includes(t.type)) return null;
|
|
369
426
|
const z = n.parts.filter(
|
|
370
427
|
(O) => !["data-progress-update", "data-message-id", "data-chat-finished", "data-title"].includes(O.type)
|
|
371
428
|
), ne = t === z[z.length - 1];
|
|
372
429
|
return t.type === "text" ? /* @__PURE__ */ i(
|
|
373
|
-
|
|
430
|
+
b,
|
|
374
431
|
{
|
|
375
432
|
part: t,
|
|
376
433
|
message: n,
|
|
@@ -379,14 +436,14 @@ function Bn(e) {
|
|
|
379
436
|
lastMessage: l,
|
|
380
437
|
isLastVisiblePart: ne,
|
|
381
438
|
regen: r,
|
|
382
|
-
feedback:
|
|
439
|
+
feedback: C,
|
|
383
440
|
handleFeedback: E,
|
|
384
|
-
copyHost:
|
|
385
|
-
feedbackEnabled:
|
|
386
|
-
retryEnabled:
|
|
441
|
+
copyHost: R,
|
|
442
|
+
feedbackEnabled: m ? !1 : h?.feedback ?? !1,
|
|
443
|
+
retryEnabled: m ? !1 : h?.retry ?? !1
|
|
387
444
|
}
|
|
388
445
|
) : t.type === "reasoning" ? /* @__PURE__ */ i(
|
|
389
|
-
|
|
446
|
+
k,
|
|
390
447
|
{
|
|
391
448
|
part: t,
|
|
392
449
|
status: o,
|
|
@@ -395,26 +452,26 @@ function Bn(e) {
|
|
|
395
452
|
lastMessage: l
|
|
396
453
|
}
|
|
397
454
|
) : t.type.startsWith("tool-") || "toolCallId" in t ? /* @__PURE__ */ i(
|
|
398
|
-
|
|
455
|
+
u,
|
|
399
456
|
{
|
|
400
457
|
part: t,
|
|
401
458
|
message: n,
|
|
402
|
-
chat:
|
|
403
|
-
toolComponents:
|
|
404
|
-
showToolCalls: !!
|
|
459
|
+
chat: g,
|
|
460
|
+
toolComponents: v,
|
|
461
|
+
showToolCalls: !!f
|
|
405
462
|
}
|
|
406
463
|
) : t.type === "file" ? /* @__PURE__ */ i(
|
|
407
|
-
|
|
464
|
+
w,
|
|
408
465
|
{
|
|
409
466
|
part: t,
|
|
410
467
|
message: n
|
|
411
468
|
}
|
|
412
469
|
) : null;
|
|
413
470
|
}
|
|
414
|
-
function
|
|
471
|
+
function y(...e) {
|
|
415
472
|
return Dn(Fn(e));
|
|
416
473
|
}
|
|
417
|
-
function
|
|
474
|
+
function _i(e, t) {
|
|
418
475
|
if (t === "/") return e;
|
|
419
476
|
const n = e.endsWith("/") ? e.slice(0, -1) : e, o = t.startsWith("/") ? t : "/" + t;
|
|
420
477
|
return n + o;
|
|
@@ -422,7 +479,7 @@ function vi(e, t) {
|
|
|
422
479
|
const fe = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
423
480
|
"div",
|
|
424
481
|
{
|
|
425
|
-
className:
|
|
482
|
+
className: y(
|
|
426
483
|
"flex items-center gap-1.5 px-1 py-3",
|
|
427
484
|
e
|
|
428
485
|
),
|
|
@@ -439,18 +496,18 @@ const fe = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
|
439
496
|
n
|
|
440
497
|
))
|
|
441
498
|
}
|
|
442
|
-
),
|
|
499
|
+
), qn = /[\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/;
|
|
443
500
|
function ge(e, t = "ltr") {
|
|
444
501
|
if (!e) return t;
|
|
445
502
|
for (const n of e) {
|
|
446
|
-
if (
|
|
503
|
+
if (qn.test(n))
|
|
447
504
|
return "rtl";
|
|
448
505
|
if (/[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02B8]/.test(n))
|
|
449
506
|
return "ltr";
|
|
450
507
|
}
|
|
451
508
|
return "ltr";
|
|
452
509
|
}
|
|
453
|
-
const
|
|
510
|
+
const jn = De(
|
|
454
511
|
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
|
|
455
512
|
{
|
|
456
513
|
variants: {
|
|
@@ -475,39 +532,39 @@ const qn = Pe(
|
|
|
475
532
|
}
|
|
476
533
|
}
|
|
477
534
|
);
|
|
478
|
-
function
|
|
535
|
+
function Q({
|
|
479
536
|
className: e,
|
|
480
537
|
variant: t,
|
|
481
538
|
size: n,
|
|
482
539
|
asChild: o = !1,
|
|
483
540
|
...r
|
|
484
541
|
}) {
|
|
485
|
-
return /* @__PURE__ */ i(o ?
|
|
542
|
+
return /* @__PURE__ */ i(o ? Et : "button", { "data-slot": "button", className: y(jn({ variant: t, size: n, className: e })), ...r });
|
|
486
543
|
}
|
|
487
|
-
const
|
|
544
|
+
const Gn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
488
545
|
At,
|
|
489
546
|
{
|
|
490
|
-
className:
|
|
547
|
+
className: y("relative flex-1 overflow-hidden", e),
|
|
491
548
|
initial: "smooth",
|
|
492
549
|
resize: "smooth",
|
|
493
550
|
role: "log",
|
|
494
551
|
...t
|
|
495
552
|
}
|
|
496
|
-
),
|
|
553
|
+
), Vn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
497
554
|
At.Content,
|
|
498
555
|
{
|
|
499
|
-
className:
|
|
556
|
+
className: y("p-4 pb-6 stick-to-bottom", e),
|
|
500
557
|
scrollClassName: "custom-scrollbar",
|
|
501
558
|
...t
|
|
502
559
|
}
|
|
503
|
-
),
|
|
504
|
-
const { isAtBottom: n, scrollToBottom: o } =
|
|
560
|
+
), Wn = ({ className: e, ...t }) => {
|
|
561
|
+
const { isAtBottom: n, scrollToBottom: o } = On(), r = oe(() => {
|
|
505
562
|
o();
|
|
506
563
|
}, [o]);
|
|
507
564
|
return n ? null : /* @__PURE__ */ i(
|
|
508
565
|
"button",
|
|
509
566
|
{
|
|
510
|
-
className:
|
|
567
|
+
className: y(
|
|
511
568
|
"absolute bottom-32 left-1/2 -translate-x-1/2 z-10",
|
|
512
569
|
"flex items-center gap-1.5 px-4 py-2 rounded-full text-sm font-medium",
|
|
513
570
|
"glass border border-border/50 shadow-lg shadow-black/10",
|
|
@@ -533,40 +590,40 @@ function Ue({ ...e }) {
|
|
|
533
590
|
function $e({ ...e }) {
|
|
534
591
|
return /* @__PURE__ */ i(Me.CollapsibleContent, { "data-slot": "collapsible-content", ...e });
|
|
535
592
|
}
|
|
536
|
-
const
|
|
593
|
+
const Yn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: y("not-prose mb-4 text-primary text-xs", e), ...t }), Xn = ({ className: e, count: t, children: n, ...o }) => {
|
|
537
594
|
const { t: r } = M(["chat"]);
|
|
538
|
-
return /* @__PURE__ */ i(Ue, { className:
|
|
595
|
+
return /* @__PURE__ */ i(Ue, { className: y("flex items-center gap-2", e), ...o, children: n ?? /* @__PURE__ */ _(Z, { children: [
|
|
539
596
|
/* @__PURE__ */ i("p", { className: "font-medium", children: r("used_sources", { count: t }) }),
|
|
540
597
|
/* @__PURE__ */ i(ie, { className: "h-4 w-4" })
|
|
541
598
|
] }) });
|
|
542
|
-
},
|
|
599
|
+
}, Kn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
543
600
|
$e,
|
|
544
601
|
{
|
|
545
|
-
className:
|
|
602
|
+
className: y(
|
|
546
603
|
"mt-3 flex w-fit flex-col gap-2",
|
|
547
604
|
"data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",
|
|
548
605
|
e
|
|
549
606
|
),
|
|
550
607
|
...t
|
|
551
608
|
}
|
|
552
|
-
),
|
|
609
|
+
), Zn = ({ href: e, title: t, children: n, ...o }) => /* @__PURE__ */ i("a", { className: "flex items-center gap-2", href: e, rel: "noreferrer", target: "_blank", ...o, children: n ?? /* @__PURE__ */ _(Z, { children: [
|
|
553
610
|
/* @__PURE__ */ i(pn, { className: "h-4 w-4" }),
|
|
554
611
|
/* @__PURE__ */ i("span", { className: "block font-medium", children: t })
|
|
555
|
-
] }) }),
|
|
612
|
+
] }) }), Jn = ({ latestProgress: e, parts: t }) => {
|
|
556
613
|
const n = e.data[0].status, o = e.data[0].message, r = t.lastIndexOf(e);
|
|
557
614
|
if (!!(t.slice(r + 1).some(
|
|
558
|
-
(
|
|
615
|
+
(m) => m.type === "text" && (m.text || "").trim().length > 0 || m.type === "tool-invocation" || m.type === "tool-call"
|
|
559
616
|
) && n !== "running")) return null;
|
|
560
|
-
const s = n === "running", p = n === "error",
|
|
561
|
-
return /* @__PURE__ */ i("div", { className:
|
|
617
|
+
const s = n === "running", p = n === "error", g = ge(o);
|
|
618
|
+
return /* @__PURE__ */ i("div", { className: y(
|
|
562
619
|
"flex w-full py-3 mx-auto max-w-4xl px-4 md:px-0 animate-in-bubble",
|
|
563
|
-
|
|
564
|
-
), children: /* @__PURE__ */
|
|
565
|
-
s ? /* @__PURE__ */ i("div", { className: "size-4 animate-spin rounded-full border-2 border-primary border-r-transparent shrink-0" }) : p ? /* @__PURE__ */ i(he, { className: "size-4 text-destructive shrink-0" }) : /* @__PURE__ */ i(
|
|
566
|
-
/* @__PURE__ */ i("span", { className:
|
|
620
|
+
g === "rtl" ? "justify-end" : "justify-start"
|
|
621
|
+
), children: /* @__PURE__ */ _("div", { className: y("flex items-center gap-3 text-sm text-muted-foreground", g === "rtl" && "flex-row-reverse"), dir: g, children: [
|
|
622
|
+
s ? /* @__PURE__ */ i("div", { className: "size-4 animate-spin rounded-full border-2 border-primary border-r-transparent shrink-0" }) : p ? /* @__PURE__ */ i(he, { className: "size-4 text-destructive shrink-0" }) : /* @__PURE__ */ i(Pe, { className: "size-4 text-green-500 shrink-0" }),
|
|
623
|
+
/* @__PURE__ */ i("span", { className: y("font-medium", s && "animate-pulse"), children: o })
|
|
567
624
|
] }) });
|
|
568
625
|
};
|
|
569
|
-
function
|
|
626
|
+
function Qn({
|
|
570
627
|
messages: e,
|
|
571
628
|
status: t,
|
|
572
629
|
isLoadingHistory: n,
|
|
@@ -578,66 +635,66 @@ function Jn({
|
|
|
578
635
|
className: s,
|
|
579
636
|
readonly: p
|
|
580
637
|
}) {
|
|
581
|
-
const { i18n:
|
|
582
|
-
return /* @__PURE__ */
|
|
583
|
-
/* @__PURE__ */
|
|
584
|
-
e.length === 0 && !n ? /* @__PURE__ */ i(
|
|
585
|
-
|
|
586
|
-
/* @__PURE__ */ i(
|
|
587
|
-
|
|
638
|
+
const { i18n: g, t: m } = M(["chat", "translation"]), f = g.language === "fa", { WelcomeScreen: b } = te(), k = e[e.length - 1], u = k?.role === "assistant" && (t === "ready" || k.parts.some((w) => w.type === "data-chat-finished"));
|
|
639
|
+
return /* @__PURE__ */ _(Gn, { className: y("min-h-0 flex-1", s), children: [
|
|
640
|
+
/* @__PURE__ */ _(Vn, { className: "max-w-4xl mx-auto w-full px-4 md:px-0 pb-32", dir: "ltr", children: [
|
|
641
|
+
e.length === 0 && !n ? /* @__PURE__ */ i(b, { onSuggestionClick: l }) : e.map((w) => /* @__PURE__ */ _("div", { children: [
|
|
642
|
+
w.role === "assistant" && w.parts.filter((v) => v.type === "source-url").length > 0 && /* @__PURE__ */ _(Yn, { children: [
|
|
643
|
+
/* @__PURE__ */ i(Xn, { count: w.parts.filter((v) => v.type === "source-url").length }),
|
|
644
|
+
w.parts.filter((v) => v.type === "source-url").map((v, h) => /* @__PURE__ */ i(Kn, { children: /* @__PURE__ */ i(Zn, { href: v.url, title: v.url }, `${w.id}-${h}`) }, `${w.id}-${h}`))
|
|
588
645
|
] }),
|
|
589
|
-
|
|
590
|
-
|
|
646
|
+
w.parts.map((v, h) => /* @__PURE__ */ i(
|
|
647
|
+
Hn,
|
|
591
648
|
{
|
|
592
|
-
part:
|
|
593
|
-
message:
|
|
649
|
+
part: v,
|
|
650
|
+
message: w,
|
|
594
651
|
status: t,
|
|
595
|
-
index:
|
|
652
|
+
index: h,
|
|
596
653
|
regen: a,
|
|
597
|
-
lastMessage:
|
|
654
|
+
lastMessage: w.id === e.at(-1)?.id,
|
|
598
655
|
conversationId: r,
|
|
599
|
-
isFinished:
|
|
656
|
+
isFinished: u,
|
|
600
657
|
chat: c,
|
|
601
658
|
readonly: p
|
|
602
659
|
},
|
|
603
|
-
`${
|
|
660
|
+
`${w.id}-${h}`
|
|
604
661
|
))
|
|
605
|
-
] },
|
|
662
|
+
] }, w.id)),
|
|
606
663
|
(() => {
|
|
607
|
-
if (!
|
|
608
|
-
const
|
|
609
|
-
if (
|
|
610
|
-
const
|
|
611
|
-
return
|
|
664
|
+
if (!k || k.role !== "assistant") return null;
|
|
665
|
+
const w = k.parts.filter((h) => h.type === "data-progress-update");
|
|
666
|
+
if (w.length === 0) return null;
|
|
667
|
+
const v = w[w.length - 1];
|
|
668
|
+
return v ? /* @__PURE__ */ i(Jn, { latestProgress: v, parts: k.parts }) : null;
|
|
612
669
|
})(),
|
|
613
670
|
(n || t === "submitted") && /* @__PURE__ */ i("div", { className: "animate-in-bubble", children: /* @__PURE__ */ i(fe, {}) }),
|
|
614
671
|
t === "streaming" && (() => {
|
|
615
|
-
const
|
|
616
|
-
return !
|
|
617
|
-
(
|
|
672
|
+
const w = e[e.length - 1];
|
|
673
|
+
return !w || w.role === "user" ? /* @__PURE__ */ i(fe, {}) : w.parts?.some(
|
|
674
|
+
(h) => h.type === "text" && h.text?.trim().length > 0 || h.type === "reasoning" || h.type === "tool-invocation" || h.type === "tool-call"
|
|
618
675
|
) ? null : /* @__PURE__ */ i(fe, {});
|
|
619
676
|
})(),
|
|
620
|
-
t === "error" && o && /* @__PURE__ */ i("div", { className: "mx-auto max-w-4xl w-full px-4 my-3 animate-in-bubble", children: /* @__PURE__ */
|
|
677
|
+
t === "error" && o && /* @__PURE__ */ i("div", { className: "mx-auto max-w-4xl w-full px-4 my-3 animate-in-bubble", children: /* @__PURE__ */ _("div", { className: y(
|
|
621
678
|
"flex w-full items-start gap-3 px-4 py-3.5 rounded-xl bg-destructive/8 border border-destructive/15",
|
|
622
|
-
|
|
623
|
-
), dir:
|
|
679
|
+
f ? "border-r-2 border-r-destructive/60" : "border-l-2 border-l-destructive/60"
|
|
680
|
+
), dir: f ? "rtl" : "ltr", children: [
|
|
624
681
|
/* @__PURE__ */ i("div", { className: "size-1.5 rounded-full bg-destructive mt-2 shrink-0" }),
|
|
625
|
-
/* @__PURE__ */
|
|
626
|
-
/* @__PURE__ */ i("span", { className: "font-semibold", children:
|
|
682
|
+
/* @__PURE__ */ _("div", { className: y("text-sm text-destructive/90 leading-relaxed flex-1", f ? "text-right" : "text-left"), children: [
|
|
683
|
+
/* @__PURE__ */ i("span", { className: "font-semibold", children: m("error") }),
|
|
627
684
|
" ",
|
|
628
685
|
o.message
|
|
629
686
|
] })
|
|
630
687
|
] }) })
|
|
631
688
|
] }),
|
|
632
|
-
/* @__PURE__ */ i(
|
|
689
|
+
/* @__PURE__ */ i(Wn, {})
|
|
633
690
|
] });
|
|
634
691
|
}
|
|
635
|
-
function
|
|
692
|
+
function eo({ className: e, ...t }) {
|
|
636
693
|
return /* @__PURE__ */ i(
|
|
637
694
|
"textarea",
|
|
638
695
|
{
|
|
639
696
|
"data-slot": "textarea",
|
|
640
|
-
className:
|
|
697
|
+
className: y(
|
|
641
698
|
"border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
|
|
642
699
|
e
|
|
643
700
|
),
|
|
@@ -645,10 +702,10 @@ function Qn({ className: e, ...t }) {
|
|
|
645
702
|
}
|
|
646
703
|
);
|
|
647
704
|
}
|
|
648
|
-
const
|
|
705
|
+
const to = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg-transparent w-full", children: /* @__PURE__ */ i(
|
|
649
706
|
"form",
|
|
650
707
|
{
|
|
651
|
-
className:
|
|
708
|
+
className: y(
|
|
652
709
|
"w-full flex items-end gap-2 overflow-hidden",
|
|
653
710
|
"rounded-lg bg-surface glow-primary",
|
|
654
711
|
"px-3 py-2",
|
|
@@ -660,7 +717,7 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
660
717
|
),
|
|
661
718
|
...t
|
|
662
719
|
}
|
|
663
|
-
) }),
|
|
720
|
+
) }), no = ({
|
|
664
721
|
onChange: e,
|
|
665
722
|
className: t,
|
|
666
723
|
placeholder: n = "What would you like to know?",
|
|
@@ -676,10 +733,10 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
676
733
|
}
|
|
677
734
|
}, { i18n: a } = M(["chat"]), l = ge(o.value, a.dir());
|
|
678
735
|
return /* @__PURE__ */ i(
|
|
679
|
-
|
|
736
|
+
eo,
|
|
680
737
|
{
|
|
681
738
|
dir: l,
|
|
682
|
-
className:
|
|
739
|
+
className: y(
|
|
683
740
|
"flex-1 resize-none rounded-none border-none shadow-none outline-none ring-0",
|
|
684
741
|
"px-2 py-2.5",
|
|
685
742
|
"field-sizing-content max-h-[6lh] bg-transparent dark:bg-transparent",
|
|
@@ -697,12 +754,12 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
697
754
|
...o
|
|
698
755
|
}
|
|
699
756
|
);
|
|
700
|
-
},
|
|
757
|
+
}, oo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: y("flex shrink-0 items-center gap-1.5 pb-1", e), ...t }), ro = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: y("flex items-center gap-0.5", e), ...t }), ao = ({ variant: e = "ghost", className: t, size: n, ...o }) => {
|
|
701
758
|
const r = n ?? cn.count(o.children) > 1 ? "default" : "icon";
|
|
702
759
|
return /* @__PURE__ */ i(
|
|
703
|
-
|
|
760
|
+
Q,
|
|
704
761
|
{
|
|
705
|
-
className:
|
|
762
|
+
className: y(
|
|
706
763
|
"shrink-0 gap-1.5 rounded-xl",
|
|
707
764
|
"text-muted-foreground hover:text-foreground",
|
|
708
765
|
"hover:bg-accent/60 transition-all duration-200",
|
|
@@ -716,7 +773,7 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
716
773
|
...o
|
|
717
774
|
}
|
|
718
775
|
);
|
|
719
|
-
},
|
|
776
|
+
}, io = ({
|
|
720
777
|
className: e,
|
|
721
778
|
variant: t = "default",
|
|
722
779
|
size: n = "icon",
|
|
@@ -726,9 +783,9 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
726
783
|
}) => {
|
|
727
784
|
let l = /* @__PURE__ */ i(hn, { className: "size-4" });
|
|
728
785
|
return o === "submitted" ? l = /* @__PURE__ */ i(gn, { className: "size-4 animate-spin" }) : o === "streaming" ? l = /* @__PURE__ */ i(mn, { className: "size-3.5 fill-current" }) : o === "error" && (l = /* @__PURE__ */ i(he, { className: "size-4" })), /* @__PURE__ */ i(
|
|
729
|
-
|
|
786
|
+
Q,
|
|
730
787
|
{
|
|
731
|
-
className:
|
|
788
|
+
className: y(
|
|
732
789
|
"shrink-0 rounded-lg size-9",
|
|
733
790
|
"bg-gradient-to-br from-primary to-primary/80",
|
|
734
791
|
"text-primary-foreground",
|
|
@@ -750,40 +807,40 @@ const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
750
807
|
}
|
|
751
808
|
);
|
|
752
809
|
};
|
|
753
|
-
function
|
|
754
|
-
return /* @__PURE__ */ i(
|
|
755
|
-
}
|
|
756
|
-
function Rt({ ...e }) {
|
|
757
|
-
return /* @__PURE__ */ i(It, { children: /* @__PURE__ */ i(K.Root, { "data-slot": "tooltip", ...e }) });
|
|
810
|
+
function Rt({ delayDuration: e = 400, ...t }) {
|
|
811
|
+
return /* @__PURE__ */ i(X.Provider, { "data-slot": "tooltip-provider", delayDuration: e, ...t });
|
|
758
812
|
}
|
|
759
813
|
function Ot({ ...e }) {
|
|
760
|
-
return /* @__PURE__ */ i(
|
|
814
|
+
return /* @__PURE__ */ i(Rt, { children: /* @__PURE__ */ i(X.Root, { "data-slot": "tooltip", ...e }) });
|
|
815
|
+
}
|
|
816
|
+
function Lt({ ...e }) {
|
|
817
|
+
return /* @__PURE__ */ i(X.Trigger, { "data-slot": "tooltip-trigger", ...e });
|
|
761
818
|
}
|
|
762
|
-
function
|
|
819
|
+
function Ft({
|
|
763
820
|
className: e,
|
|
764
821
|
sideOffset: t = 0,
|
|
765
822
|
children: n,
|
|
766
823
|
...o
|
|
767
824
|
}) {
|
|
768
|
-
return /* @__PURE__ */ i(
|
|
769
|
-
|
|
825
|
+
return /* @__PURE__ */ i(X.Portal, { children: /* @__PURE__ */ _(
|
|
826
|
+
X.Content,
|
|
770
827
|
{
|
|
771
828
|
"data-slot": "tooltip-content",
|
|
772
829
|
sideOffset: t,
|
|
773
|
-
className:
|
|
830
|
+
className: y(
|
|
774
831
|
"bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-sm text-balance",
|
|
775
832
|
e
|
|
776
833
|
),
|
|
777
834
|
...o,
|
|
778
835
|
children: [
|
|
779
836
|
n,
|
|
780
|
-
/* @__PURE__ */ i(
|
|
837
|
+
/* @__PURE__ */ i(X.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
781
838
|
]
|
|
782
839
|
}
|
|
783
840
|
) });
|
|
784
841
|
}
|
|
785
842
|
const be = 768;
|
|
786
|
-
function
|
|
843
|
+
function lo() {
|
|
787
844
|
const [e, t] = Ce.useState(void 0);
|
|
788
845
|
return Ce.useEffect(() => {
|
|
789
846
|
const n = window.matchMedia(`(max-width: ${be - 1}px)`), o = () => {
|
|
@@ -794,7 +851,7 @@ function io() {
|
|
|
794
851
|
};
|
|
795
852
|
}, []), !!e;
|
|
796
853
|
}
|
|
797
|
-
function
|
|
854
|
+
function so({
|
|
798
855
|
onSend: e,
|
|
799
856
|
status: t,
|
|
800
857
|
isLastMessageFinished: n,
|
|
@@ -803,66 +860,66 @@ function lo({
|
|
|
803
860
|
conversationId: a,
|
|
804
861
|
className: l
|
|
805
862
|
}) {
|
|
806
|
-
const { t: c } = M(["chat", "translation"]), { composer: s } =
|
|
807
|
-
|
|
808
|
-
!
|
|
809
|
-
}, [a,
|
|
810
|
-
const
|
|
863
|
+
const { t: c } = M(["chat", "translation"]), { composer: s } = te(), [p, g] = B(""), [m, f] = B([]), b = lo(), k = Ge(null), u = Ge(null);
|
|
864
|
+
J(() => {
|
|
865
|
+
!b && a === "/" && k.current && k.current.focus();
|
|
866
|
+
}, [a, b]);
|
|
867
|
+
const w = oe((E) => {
|
|
811
868
|
if (E.target.files) {
|
|
812
|
-
const
|
|
813
|
-
if ($ &&
|
|
814
|
-
|
|
869
|
+
const R = Array.from(E.target.files), $ = s?.attachments?.maxSize;
|
|
870
|
+
if ($ && R.filter((ne) => ne.size > $).length > 0) {
|
|
871
|
+
In.error(c("file_too_large", { size: $ }));
|
|
815
872
|
return;
|
|
816
873
|
}
|
|
817
|
-
|
|
874
|
+
f((z) => [...z, ...R]);
|
|
818
875
|
}
|
|
819
876
|
E.target.value = "";
|
|
820
|
-
}, [s, c]),
|
|
821
|
-
|
|
822
|
-
}, []),
|
|
823
|
-
if (E.preventDefault(), !
|
|
824
|
-
const
|
|
825
|
-
|
|
877
|
+
}, [s, c]), v = oe((E) => {
|
|
878
|
+
f((R) => R.filter(($, z) => z !== E));
|
|
879
|
+
}, []), h = t === "streaming" && !n, C = (E) => {
|
|
880
|
+
if (E.preventDefault(), !h && (p.trim() || m.length > 0)) {
|
|
881
|
+
const R = new DataTransfer();
|
|
882
|
+
m.forEach(($) => R.items.add($)), e(p, R.files), g(""), f([]);
|
|
826
883
|
}
|
|
827
884
|
};
|
|
828
|
-
return /* @__PURE__ */ i("div", { className:
|
|
885
|
+
return /* @__PURE__ */ i("div", { className: y("shrink-0 px-4 pb-5 pt-2 md:px-6 md:pb-6 w-full", l), children: /* @__PURE__ */ i("div", { className: "max-w-4xl mx-auto w-full", children: /* @__PURE__ */ _(to, { onSubmit: C, children: [
|
|
829
886
|
/* @__PURE__ */ i(
|
|
830
887
|
"input",
|
|
831
888
|
{
|
|
832
889
|
type: "file",
|
|
833
|
-
ref:
|
|
834
|
-
onChange:
|
|
890
|
+
ref: u,
|
|
891
|
+
onChange: w,
|
|
835
892
|
multiple: !0,
|
|
836
893
|
accept: s?.attachments?.types?.join(",") || "image/*,text/*,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx",
|
|
837
894
|
className: "hidden"
|
|
838
895
|
}
|
|
839
896
|
),
|
|
840
|
-
/* @__PURE__ */
|
|
841
|
-
|
|
842
|
-
E.type.startsWith("image/") ? /* @__PURE__ */ i("img", { src: URL.createObjectURL(E), alt: E.name, className: "size-7 rounded-lg object-cover ring-1 ring-border/50" }) : /* @__PURE__ */ i(
|
|
897
|
+
/* @__PURE__ */ _("div", { className: "flex flex-col flex-1 gap-2", children: [
|
|
898
|
+
m.length > 0 && /* @__PURE__ */ i("div", { className: "flex flex-wrap gap-2 px-2 pt-2", children: m.map((E, R) => /* @__PURE__ */ _("div", { className: "group relative flex items-center gap-2 rounded-xl glass-surface px-2.5 py-1.5 text-sm shadow-sm", children: [
|
|
899
|
+
E.type.startsWith("image/") ? /* @__PURE__ */ i("img", { src: URL.createObjectURL(E), alt: E.name, className: "size-7 rounded-lg object-cover ring-1 ring-border/50" }) : /* @__PURE__ */ i(Nt, { className: "size-3.5 text-muted-foreground shrink-0" }),
|
|
843
900
|
/* @__PURE__ */ i("span", { className: "max-w-[120px] truncate text-xs font-medium text-foreground/80", children: E.name }),
|
|
844
|
-
/* @__PURE__ */ i("button", { type: "button", onClick: () =>
|
|
845
|
-
] }, `${E.name}-${
|
|
901
|
+
/* @__PURE__ */ i("button", { type: "button", onClick: () => v(R), className: "ml-0.5 flex items-center justify-center size-4 rounded-full hover:bg-destructive/15 text-muted-foreground/60 hover:text-destructive transition-all duration-150", children: /* @__PURE__ */ i(he, { className: "size-2.5" }) })
|
|
902
|
+
] }, `${E.name}-${R}`)) }),
|
|
846
903
|
/* @__PURE__ */ i(
|
|
847
|
-
|
|
904
|
+
no,
|
|
848
905
|
{
|
|
849
|
-
ref:
|
|
850
|
-
onChange: (E) =>
|
|
906
|
+
ref: k,
|
|
907
|
+
onChange: (E) => g(E.target.value),
|
|
851
908
|
value: p,
|
|
852
|
-
autoFocus: !
|
|
909
|
+
autoFocus: !b,
|
|
853
910
|
placeholder: s?.placeholder ? c(s.placeholder) : c("input_placeholder")
|
|
854
911
|
}
|
|
855
912
|
)
|
|
856
913
|
] }),
|
|
857
|
-
/* @__PURE__ */
|
|
858
|
-
/* @__PURE__ */ i(
|
|
859
|
-
/* @__PURE__ */ i(
|
|
860
|
-
/* @__PURE__ */ i(
|
|
914
|
+
/* @__PURE__ */ _(oo, { children: [
|
|
915
|
+
/* @__PURE__ */ i(ro, { children: (s?.attachments?.enabled ?? !1) && /* @__PURE__ */ _(Ot, { children: [
|
|
916
|
+
/* @__PURE__ */ i(Lt, { asChild: !0, children: /* @__PURE__ */ i(ao, { variant: "ghost", onClick: () => u.current?.click(), disabled: h, children: /* @__PURE__ */ i(fn, { className: "size-4" }) }) }),
|
|
917
|
+
/* @__PURE__ */ i(Ft, { children: c("attach_file") })
|
|
861
918
|
] }) }),
|
|
862
919
|
/* @__PURE__ */ i(
|
|
863
|
-
|
|
920
|
+
io,
|
|
864
921
|
{
|
|
865
|
-
disabled: t !== "streaming" && !p &&
|
|
922
|
+
disabled: t !== "streaming" && !p && m.length === 0,
|
|
866
923
|
status: r ? "error" : t === "error" ? void 0 : n ? "ready" : t,
|
|
867
924
|
onClick: t === "streaming" && !n ? o : void 0
|
|
868
925
|
}
|
|
@@ -870,7 +927,7 @@ function lo({
|
|
|
870
927
|
] })
|
|
871
928
|
] }) }) });
|
|
872
929
|
}
|
|
873
|
-
const
|
|
930
|
+
const co = ({
|
|
874
931
|
suggestion: e,
|
|
875
932
|
onClick: t,
|
|
876
933
|
className: n,
|
|
@@ -883,9 +940,9 @@ const so = ({
|
|
|
883
940
|
t?.(e);
|
|
884
941
|
};
|
|
885
942
|
return /* @__PURE__ */ i(
|
|
886
|
-
|
|
943
|
+
Q,
|
|
887
944
|
{
|
|
888
|
-
className:
|
|
945
|
+
className: y("cursor-pointer rounded-full px-4", n),
|
|
889
946
|
onClick: c,
|
|
890
947
|
size: r,
|
|
891
948
|
type: "button",
|
|
@@ -894,39 +951,39 @@ const so = ({
|
|
|
894
951
|
children: a ?? e
|
|
895
952
|
}
|
|
896
953
|
);
|
|
897
|
-
},
|
|
898
|
-
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } =
|
|
899
|
-
const
|
|
900
|
-
return n(
|
|
901
|
-
}).filter((
|
|
902
|
-
return /* @__PURE__ */
|
|
954
|
+
}, uo = ({ onSuggestionClick: e, icons: t }) => {
|
|
955
|
+
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } = te(), a = r?.prompts ?? [], l = a.map((g) => {
|
|
956
|
+
const m = typeof g == "string" ? g : g.text;
|
|
957
|
+
return n(m);
|
|
958
|
+
}).filter((g) => g !== null && g !== ""), c = o.dir() === "rtl", s = r?.greeting ? n(r.greeting) ?? r.greeting : n("welcome.title"), p = r?.subtitle ? n(r.subtitle) : null;
|
|
959
|
+
return /* @__PURE__ */ _(
|
|
903
960
|
"div",
|
|
904
961
|
{
|
|
905
962
|
dir: c ? "rtl" : "ltr",
|
|
906
963
|
className: "flex flex-col items-center justify-center min-h-[60vh] text-center px-6 animate-in fade-in duration-700 ease-out",
|
|
907
964
|
children: [
|
|
908
|
-
r?.icon && /* @__PURE__ */
|
|
965
|
+
r?.icon && /* @__PURE__ */ _("div", { className: "mb-8 relative flex items-center justify-center", children: [
|
|
909
966
|
/* @__PURE__ */ i("div", { className: "absolute size-24 rounded-full bg-primary/5 blur-[40px] animate-pulse" }),
|
|
910
967
|
/* @__PURE__ */ i("div", { className: "relative size-12 md:size-16 rounded-xl bg-gradient-to-br from-surface to-secondary flex items-center justify-center border border-border/10 dark:border-border/5 shadow-xl shadow-black/10", children: typeof r.icon == "function" ? /* @__PURE__ */ i(r.icon, { className: "size-6 md:size-8 text-primary opacity-80" }) : r.icon })
|
|
911
968
|
] }),
|
|
912
|
-
(s || p) && /* @__PURE__ */
|
|
969
|
+
(s || p) && /* @__PURE__ */ _("div", { className: "space-y-3 mb-12 max-w-xl mx-auto", children: [
|
|
913
970
|
s && /* @__PURE__ */ i("h1", { className: "text-2xl md:text-3xl font-black tracking-tight leading-tight text-foreground", children: s }),
|
|
914
971
|
p && /* @__PURE__ */ i("p", { className: "text-muted-foreground text-base md:text-lg font-medium max-w-md mx-auto leading-relaxed opacity-85 dark:opacity-70", children: p })
|
|
915
972
|
] }),
|
|
916
|
-
l.length > 0 && /* @__PURE__ */ i("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-3 w-full max-w-xl", children: l.map((
|
|
917
|
-
const
|
|
973
|
+
l.length > 0 && /* @__PURE__ */ i("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-3 w-full max-w-xl", children: l.map((g, m) => {
|
|
974
|
+
const f = a[m], b = typeof f != "string" ? f.icon : null, k = t && t[m % t.length] ? t[m % t.length] : bn, u = b || k;
|
|
918
975
|
return /* @__PURE__ */ i(
|
|
919
976
|
"div",
|
|
920
977
|
{
|
|
921
978
|
className: "animate-in fade-in slide-in-from-bottom-3 duration-700 fill-mode-both",
|
|
922
|
-
style: { animationDelay: `${
|
|
923
|
-
children: /* @__PURE__ */
|
|
924
|
-
|
|
979
|
+
style: { animationDelay: `${m * 80}ms` },
|
|
980
|
+
children: /* @__PURE__ */ _(
|
|
981
|
+
co,
|
|
925
982
|
{
|
|
926
|
-
onClick: () => e(
|
|
927
|
-
suggestion:
|
|
983
|
+
onClick: () => e(g),
|
|
984
|
+
suggestion: g,
|
|
928
985
|
variant: "ghost",
|
|
929
|
-
className:
|
|
986
|
+
className: y(
|
|
930
987
|
"h-full py-4 px-5 justify-start text-start items-center whitespace-normal w-full",
|
|
931
988
|
"group rounded-xl relative overflow-hidden",
|
|
932
989
|
"bg-secondary/45 border border-border/12 dark:bg-secondary/20 dark:border-border/5",
|
|
@@ -934,11 +991,11 @@ const so = ({
|
|
|
934
991
|
"hover:-translate-y-0.5 transition-[background-color,border-color,transform] duration-300 ease-out-quint"
|
|
935
992
|
),
|
|
936
993
|
children: [
|
|
937
|
-
/* @__PURE__ */
|
|
938
|
-
/* @__PURE__ */ i("div", { className: "size-8 rounded-lg bg-secondary/35 dark:bg-background/40 flex items-center justify-center shrink-0 border border-border/10 dark:border-border/5 group-hover:bg-primary group-hover:text-primary-foreground transition-colors duration-300", children: /* @__PURE__ */ i(
|
|
939
|
-
/* @__PURE__ */ i("div", { className: "flex flex-col gap-0.5 overflow-hidden", children: /* @__PURE__ */ i("span", { className: "text-sm md:text-base font-semibold text-foreground/80 group-hover:text-foreground transition-colors", children:
|
|
994
|
+
/* @__PURE__ */ _("div", { className: "flex items-center gap-3 w-full text-start", children: [
|
|
995
|
+
/* @__PURE__ */ i("div", { className: "size-8 rounded-lg bg-secondary/35 dark:bg-background/40 flex items-center justify-center shrink-0 border border-border/10 dark:border-border/5 group-hover:bg-primary group-hover:text-primary-foreground transition-colors duration-300", children: /* @__PURE__ */ i(u, { className: "size-4" }) }),
|
|
996
|
+
/* @__PURE__ */ i("div", { className: "flex flex-col gap-0.5 overflow-hidden", children: /* @__PURE__ */ i("span", { className: "text-sm md:text-base font-semibold text-foreground/80 group-hover:text-foreground transition-colors", children: g.length > 60 ? g.substring(0, 60) + "..." : g }) })
|
|
940
997
|
] }),
|
|
941
|
-
/* @__PURE__ */ i("div", { className:
|
|
998
|
+
/* @__PURE__ */ i("div", { className: y(
|
|
942
999
|
"absolute bottom-0 left-0 w-full h-[1.5px] bg-primary scale-x-0 group-hover:scale-x-100 transition-transform duration-500",
|
|
943
1000
|
c ? "origin-right" : "origin-left"
|
|
944
1001
|
) })
|
|
@@ -946,26 +1003,26 @@ const so = ({
|
|
|
946
1003
|
}
|
|
947
1004
|
)
|
|
948
1005
|
},
|
|
949
|
-
|
|
1006
|
+
m
|
|
950
1007
|
);
|
|
951
1008
|
}) })
|
|
952
1009
|
]
|
|
953
1010
|
}
|
|
954
1011
|
);
|
|
955
|
-
},
|
|
1012
|
+
}, Dt = ({ className: e, from: t, ...n }) => /* @__PURE__ */ i(
|
|
956
1013
|
"div",
|
|
957
1014
|
{
|
|
958
|
-
className:
|
|
1015
|
+
className: y(
|
|
959
1016
|
"group flex w-full items-end gap-3",
|
|
960
1017
|
t === "user" ? "is-user justify-end" : "is-assistant",
|
|
961
1018
|
e
|
|
962
1019
|
),
|
|
963
1020
|
...n
|
|
964
1021
|
}
|
|
965
|
-
),
|
|
1022
|
+
), Pt = ({ children: e, className: t, isPlain: n, ...o }) => /* @__PURE__ */ i(
|
|
966
1023
|
"div",
|
|
967
1024
|
{
|
|
968
|
-
className:
|
|
1025
|
+
className: y(
|
|
969
1026
|
"flex flex-col gap-2 overflow-hidden text-[1.0625rem]",
|
|
970
1027
|
// User bubble: gradient pill with glow shadow
|
|
971
1028
|
!n && [
|
|
@@ -986,10 +1043,10 @@ const so = ({
|
|
|
986
1043
|
...o,
|
|
987
1044
|
children: e
|
|
988
1045
|
}
|
|
989
|
-
),
|
|
1046
|
+
), po = ({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
990
1047
|
"div",
|
|
991
1048
|
{
|
|
992
|
-
className:
|
|
1049
|
+
className: y(
|
|
993
1050
|
"flex items-center gap-0.5",
|
|
994
1051
|
"opacity-100",
|
|
995
1052
|
"transition-opacity duration-200",
|
|
@@ -1007,10 +1064,10 @@ const so = ({
|
|
|
1007
1064
|
size: a = "sm",
|
|
1008
1065
|
...l
|
|
1009
1066
|
}) => {
|
|
1010
|
-
const c = /* @__PURE__ */
|
|
1011
|
-
|
|
1067
|
+
const c = /* @__PURE__ */ _(
|
|
1068
|
+
Q,
|
|
1012
1069
|
{
|
|
1013
|
-
className:
|
|
1070
|
+
className: y(
|
|
1014
1071
|
"size-7 p-1 rounded-lg",
|
|
1015
1072
|
"text-muted-foreground/60 hover:text-foreground",
|
|
1016
1073
|
"hover:bg-accent/70",
|
|
@@ -1028,9 +1085,9 @@ const so = ({
|
|
|
1028
1085
|
]
|
|
1029
1086
|
}
|
|
1030
1087
|
);
|
|
1031
|
-
return e ? /* @__PURE__ */ i(
|
|
1032
|
-
/* @__PURE__ */ i(
|
|
1033
|
-
/* @__PURE__ */ i(
|
|
1088
|
+
return e ? /* @__PURE__ */ i(Rt, { children: /* @__PURE__ */ _(Ot, { children: [
|
|
1089
|
+
/* @__PURE__ */ i(Lt, { asChild: !0, children: c }),
|
|
1090
|
+
/* @__PURE__ */ i(Ft, { children: /* @__PURE__ */ i("p", { children: e }) })
|
|
1034
1091
|
] }) }) : c;
|
|
1035
1092
|
};
|
|
1036
1093
|
class le {
|
|
@@ -1051,7 +1108,7 @@ class le {
|
|
|
1051
1108
|
le.prototype.normal = {};
|
|
1052
1109
|
le.prototype.property = {};
|
|
1053
1110
|
le.prototype.space = void 0;
|
|
1054
|
-
function
|
|
1111
|
+
function Mt(e, t) {
|
|
1055
1112
|
const n = {}, o = {};
|
|
1056
1113
|
for (const r of e)
|
|
1057
1114
|
Object.assign(n, r.property), Object.assign(o, r.normal);
|
|
@@ -1085,18 +1142,18 @@ D.prototype.overloadedBoolean = !1;
|
|
|
1085
1142
|
D.prototype.property = "";
|
|
1086
1143
|
D.prototype.spaceSeparated = !1;
|
|
1087
1144
|
D.prototype.space = void 0;
|
|
1088
|
-
let
|
|
1089
|
-
const x = G(),
|
|
1145
|
+
let ho = 0;
|
|
1146
|
+
const x = G(), I = G(), Ae = G(), d = G(), T = G(), K = G(), P = G();
|
|
1090
1147
|
function G() {
|
|
1091
|
-
return 2 ** ++
|
|
1148
|
+
return 2 ** ++ho;
|
|
1092
1149
|
}
|
|
1093
1150
|
const Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1094
1151
|
__proto__: null,
|
|
1095
1152
|
boolean: x,
|
|
1096
|
-
booleanish:
|
|
1153
|
+
booleanish: I,
|
|
1097
1154
|
commaOrSpaceSeparated: P,
|
|
1098
|
-
commaSeparated:
|
|
1099
|
-
number:
|
|
1155
|
+
commaSeparated: K,
|
|
1156
|
+
number: d,
|
|
1100
1157
|
overloadedBoolean: Ae,
|
|
1101
1158
|
spaceSeparated: T
|
|
1102
1159
|
}, Symbol.toStringTag, { value: "Module" })), ye = (
|
|
@@ -1130,7 +1187,7 @@ Be.prototype.defined = !0;
|
|
|
1130
1187
|
function Ke(e, t, n) {
|
|
1131
1188
|
n && (e[t] = n);
|
|
1132
1189
|
}
|
|
1133
|
-
function
|
|
1190
|
+
function ee(e) {
|
|
1134
1191
|
const t = {}, n = {};
|
|
1135
1192
|
for (const [o, r] of Object.entries(e.properties)) {
|
|
1136
1193
|
const a = new Be(
|
|
@@ -1143,55 +1200,55 @@ function te(e) {
|
|
|
1143
1200
|
}
|
|
1144
1201
|
return new le(t, n, e.space);
|
|
1145
1202
|
}
|
|
1146
|
-
const
|
|
1203
|
+
const zt = ee({
|
|
1147
1204
|
properties: {
|
|
1148
1205
|
ariaActiveDescendant: null,
|
|
1149
|
-
ariaAtomic:
|
|
1206
|
+
ariaAtomic: I,
|
|
1150
1207
|
ariaAutoComplete: null,
|
|
1151
|
-
ariaBusy:
|
|
1152
|
-
ariaChecked:
|
|
1153
|
-
ariaColCount:
|
|
1154
|
-
ariaColIndex:
|
|
1155
|
-
ariaColSpan:
|
|
1208
|
+
ariaBusy: I,
|
|
1209
|
+
ariaChecked: I,
|
|
1210
|
+
ariaColCount: d,
|
|
1211
|
+
ariaColIndex: d,
|
|
1212
|
+
ariaColSpan: d,
|
|
1156
1213
|
ariaControls: T,
|
|
1157
1214
|
ariaCurrent: null,
|
|
1158
1215
|
ariaDescribedBy: T,
|
|
1159
1216
|
ariaDetails: null,
|
|
1160
|
-
ariaDisabled:
|
|
1217
|
+
ariaDisabled: I,
|
|
1161
1218
|
ariaDropEffect: T,
|
|
1162
1219
|
ariaErrorMessage: null,
|
|
1163
|
-
ariaExpanded:
|
|
1220
|
+
ariaExpanded: I,
|
|
1164
1221
|
ariaFlowTo: T,
|
|
1165
|
-
ariaGrabbed:
|
|
1222
|
+
ariaGrabbed: I,
|
|
1166
1223
|
ariaHasPopup: null,
|
|
1167
|
-
ariaHidden:
|
|
1224
|
+
ariaHidden: I,
|
|
1168
1225
|
ariaInvalid: null,
|
|
1169
1226
|
ariaKeyShortcuts: null,
|
|
1170
1227
|
ariaLabel: null,
|
|
1171
1228
|
ariaLabelledBy: T,
|
|
1172
|
-
ariaLevel:
|
|
1229
|
+
ariaLevel: d,
|
|
1173
1230
|
ariaLive: null,
|
|
1174
|
-
ariaModal:
|
|
1175
|
-
ariaMultiLine:
|
|
1176
|
-
ariaMultiSelectable:
|
|
1231
|
+
ariaModal: I,
|
|
1232
|
+
ariaMultiLine: I,
|
|
1233
|
+
ariaMultiSelectable: I,
|
|
1177
1234
|
ariaOrientation: null,
|
|
1178
1235
|
ariaOwns: T,
|
|
1179
1236
|
ariaPlaceholder: null,
|
|
1180
|
-
ariaPosInSet:
|
|
1181
|
-
ariaPressed:
|
|
1182
|
-
ariaReadOnly:
|
|
1237
|
+
ariaPosInSet: d,
|
|
1238
|
+
ariaPressed: I,
|
|
1239
|
+
ariaReadOnly: I,
|
|
1183
1240
|
ariaRelevant: null,
|
|
1184
|
-
ariaRequired:
|
|
1241
|
+
ariaRequired: I,
|
|
1185
1242
|
ariaRoleDescription: T,
|
|
1186
|
-
ariaRowCount:
|
|
1187
|
-
ariaRowIndex:
|
|
1188
|
-
ariaRowSpan:
|
|
1189
|
-
ariaSelected:
|
|
1190
|
-
ariaSetSize:
|
|
1243
|
+
ariaRowCount: d,
|
|
1244
|
+
ariaRowIndex: d,
|
|
1245
|
+
ariaRowSpan: d,
|
|
1246
|
+
ariaSelected: I,
|
|
1247
|
+
ariaSetSize: d,
|
|
1191
1248
|
ariaSort: null,
|
|
1192
|
-
ariaValueMax:
|
|
1193
|
-
ariaValueMin:
|
|
1194
|
-
ariaValueNow:
|
|
1249
|
+
ariaValueMax: d,
|
|
1250
|
+
ariaValueMin: d,
|
|
1251
|
+
ariaValueNow: d,
|
|
1195
1252
|
ariaValueText: null,
|
|
1196
1253
|
role: null
|
|
1197
1254
|
},
|
|
@@ -1199,13 +1256,13 @@ const Mt = te({
|
|
|
1199
1256
|
return t === "role" ? t : "aria-" + t.slice(4).toLowerCase();
|
|
1200
1257
|
}
|
|
1201
1258
|
});
|
|
1202
|
-
function
|
|
1259
|
+
function Ut(e, t) {
|
|
1203
1260
|
return t in e ? e[t] : t;
|
|
1204
1261
|
}
|
|
1205
|
-
function
|
|
1206
|
-
return
|
|
1262
|
+
function $t(e, t) {
|
|
1263
|
+
return Ut(e, t.toLowerCase());
|
|
1207
1264
|
}
|
|
1208
|
-
const
|
|
1265
|
+
const go = ee({
|
|
1209
1266
|
attributes: {
|
|
1210
1267
|
acceptcharset: "accept-charset",
|
|
1211
1268
|
classname: "class",
|
|
@@ -1216,7 +1273,7 @@ const ho = te({
|
|
|
1216
1273
|
properties: {
|
|
1217
1274
|
// Standard Properties.
|
|
1218
1275
|
abbr: null,
|
|
1219
|
-
accept:
|
|
1276
|
+
accept: K,
|
|
1220
1277
|
acceptCharset: T,
|
|
1221
1278
|
accessKey: T,
|
|
1222
1279
|
action: null,
|
|
@@ -1237,13 +1294,13 @@ const ho = te({
|
|
|
1237
1294
|
checked: x,
|
|
1238
1295
|
cite: null,
|
|
1239
1296
|
className: T,
|
|
1240
|
-
cols:
|
|
1297
|
+
cols: d,
|
|
1241
1298
|
colSpan: null,
|
|
1242
1299
|
content: null,
|
|
1243
|
-
contentEditable:
|
|
1300
|
+
contentEditable: I,
|
|
1244
1301
|
controls: x,
|
|
1245
1302
|
controlsList: T,
|
|
1246
|
-
coords:
|
|
1303
|
+
coords: d | K,
|
|
1247
1304
|
crossOrigin: null,
|
|
1248
1305
|
data: null,
|
|
1249
1306
|
dateTime: null,
|
|
@@ -1254,7 +1311,7 @@ const ho = te({
|
|
|
1254
1311
|
dirName: null,
|
|
1255
1312
|
disabled: x,
|
|
1256
1313
|
download: Ae,
|
|
1257
|
-
draggable:
|
|
1314
|
+
draggable: I,
|
|
1258
1315
|
encType: null,
|
|
1259
1316
|
enterKeyHint: null,
|
|
1260
1317
|
fetchPriority: null,
|
|
@@ -1265,9 +1322,9 @@ const ho = te({
|
|
|
1265
1322
|
formNoValidate: x,
|
|
1266
1323
|
formTarget: null,
|
|
1267
1324
|
headers: T,
|
|
1268
|
-
height:
|
|
1325
|
+
height: d,
|
|
1269
1326
|
hidden: Ae,
|
|
1270
|
-
high:
|
|
1327
|
+
high: d,
|
|
1271
1328
|
href: null,
|
|
1272
1329
|
hrefLang: null,
|
|
1273
1330
|
htmlFor: T,
|
|
@@ -1292,14 +1349,14 @@ const ho = te({
|
|
|
1292
1349
|
list: null,
|
|
1293
1350
|
loading: null,
|
|
1294
1351
|
loop: x,
|
|
1295
|
-
low:
|
|
1352
|
+
low: d,
|
|
1296
1353
|
manifest: null,
|
|
1297
1354
|
max: null,
|
|
1298
|
-
maxLength:
|
|
1355
|
+
maxLength: d,
|
|
1299
1356
|
media: null,
|
|
1300
1357
|
method: null,
|
|
1301
1358
|
min: null,
|
|
1302
|
-
minLength:
|
|
1359
|
+
minLength: d,
|
|
1303
1360
|
multiple: x,
|
|
1304
1361
|
muted: x,
|
|
1305
1362
|
name: null,
|
|
@@ -1395,7 +1452,7 @@ const ho = te({
|
|
|
1395
1452
|
onWaiting: null,
|
|
1396
1453
|
onWheel: null,
|
|
1397
1454
|
open: x,
|
|
1398
|
-
optimum:
|
|
1455
|
+
optimum: d,
|
|
1399
1456
|
pattern: null,
|
|
1400
1457
|
ping: T,
|
|
1401
1458
|
placeholder: null,
|
|
@@ -1410,8 +1467,8 @@ const ho = te({
|
|
|
1410
1467
|
rel: T,
|
|
1411
1468
|
required: x,
|
|
1412
1469
|
reversed: x,
|
|
1413
|
-
rows:
|
|
1414
|
-
rowSpan:
|
|
1470
|
+
rows: d,
|
|
1471
|
+
rowSpan: d,
|
|
1415
1472
|
sandbox: T,
|
|
1416
1473
|
scope: null,
|
|
1417
1474
|
scoped: x,
|
|
@@ -1421,27 +1478,27 @@ const ho = te({
|
|
|
1421
1478
|
shadowRootDelegatesFocus: x,
|
|
1422
1479
|
shadowRootMode: null,
|
|
1423
1480
|
shape: null,
|
|
1424
|
-
size:
|
|
1481
|
+
size: d,
|
|
1425
1482
|
sizes: null,
|
|
1426
1483
|
slot: null,
|
|
1427
|
-
span:
|
|
1428
|
-
spellCheck:
|
|
1484
|
+
span: d,
|
|
1485
|
+
spellCheck: I,
|
|
1429
1486
|
src: null,
|
|
1430
1487
|
srcDoc: null,
|
|
1431
1488
|
srcLang: null,
|
|
1432
1489
|
srcSet: null,
|
|
1433
|
-
start:
|
|
1490
|
+
start: d,
|
|
1434
1491
|
step: null,
|
|
1435
1492
|
style: null,
|
|
1436
|
-
tabIndex:
|
|
1493
|
+
tabIndex: d,
|
|
1437
1494
|
target: null,
|
|
1438
1495
|
title: null,
|
|
1439
1496
|
translate: null,
|
|
1440
1497
|
type: null,
|
|
1441
1498
|
typeMustMatch: x,
|
|
1442
1499
|
useMap: null,
|
|
1443
|
-
value:
|
|
1444
|
-
width:
|
|
1500
|
+
value: I,
|
|
1501
|
+
width: d,
|
|
1445
1502
|
wrap: null,
|
|
1446
1503
|
writingSuggestions: null,
|
|
1447
1504
|
// Legacy.
|
|
@@ -1458,11 +1515,11 @@ const ho = te({
|
|
|
1458
1515
|
// `<body>`. Use CSS `background-image` instead
|
|
1459
1516
|
bgColor: null,
|
|
1460
1517
|
// `<body>` and table elements. Use CSS `background-color` instead
|
|
1461
|
-
border:
|
|
1518
|
+
border: d,
|
|
1462
1519
|
// `<table>`. Use CSS `border-width` instead,
|
|
1463
1520
|
borderColor: null,
|
|
1464
1521
|
// `<table>`. Use CSS `border-color` instead,
|
|
1465
|
-
bottomMargin:
|
|
1522
|
+
bottomMargin: d,
|
|
1466
1523
|
// `<body>`
|
|
1467
1524
|
cellPadding: null,
|
|
1468
1525
|
// `<table>`
|
|
@@ -1496,9 +1553,9 @@ const ho = te({
|
|
|
1496
1553
|
// `<table>`
|
|
1497
1554
|
frameBorder: null,
|
|
1498
1555
|
// `<iframe>`. Use CSS `border` instead
|
|
1499
|
-
hSpace:
|
|
1556
|
+
hSpace: d,
|
|
1500
1557
|
// `<img>` and `<object>`
|
|
1501
|
-
leftMargin:
|
|
1558
|
+
leftMargin: d,
|
|
1502
1559
|
// `<body>`
|
|
1503
1560
|
link: null,
|
|
1504
1561
|
// `<body>`. Use CSS `a:link {color: *}` instead
|
|
@@ -1506,9 +1563,9 @@ const ho = te({
|
|
|
1506
1563
|
// `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
|
|
1507
1564
|
lowSrc: null,
|
|
1508
1565
|
// `<img>`. Use a `<picture>`
|
|
1509
|
-
marginHeight:
|
|
1566
|
+
marginHeight: d,
|
|
1510
1567
|
// `<body>`
|
|
1511
|
-
marginWidth:
|
|
1568
|
+
marginWidth: d,
|
|
1512
1569
|
// `<body>`
|
|
1513
1570
|
noResize: x,
|
|
1514
1571
|
// `<frame>`
|
|
@@ -1526,13 +1583,13 @@ const ho = te({
|
|
|
1526
1583
|
// `<isindex>`
|
|
1527
1584
|
rev: null,
|
|
1528
1585
|
// `<link>`
|
|
1529
|
-
rightMargin:
|
|
1586
|
+
rightMargin: d,
|
|
1530
1587
|
// `<body>`
|
|
1531
1588
|
rules: null,
|
|
1532
1589
|
// `<table>`
|
|
1533
1590
|
scheme: null,
|
|
1534
1591
|
// `<meta>`
|
|
1535
|
-
scrolling:
|
|
1592
|
+
scrolling: I,
|
|
1536
1593
|
// `<frame>`. Use overflow in the child context
|
|
1537
1594
|
standby: null,
|
|
1538
1595
|
// `<object>`
|
|
@@ -1540,7 +1597,7 @@ const ho = te({
|
|
|
1540
1597
|
// `<table>`
|
|
1541
1598
|
text: null,
|
|
1542
1599
|
// `<body>`. Use CSS `color` instead
|
|
1543
|
-
topMargin:
|
|
1600
|
+
topMargin: d,
|
|
1544
1601
|
// `<body>`
|
|
1545
1602
|
valueType: null,
|
|
1546
1603
|
// `<param>`
|
|
@@ -1550,7 +1607,7 @@ const ho = te({
|
|
|
1550
1607
|
// Several. Use CSS `vertical-align` instead
|
|
1551
1608
|
vLink: null,
|
|
1552
1609
|
// `<body>`. Use CSS `a:visited {color}` instead
|
|
1553
|
-
vSpace:
|
|
1610
|
+
vSpace: d,
|
|
1554
1611
|
// `<img>` and `<object>`
|
|
1555
1612
|
// Non-standard Properties.
|
|
1556
1613
|
allowTransparency: null,
|
|
@@ -1560,13 +1617,13 @@ const ho = te({
|
|
|
1560
1617
|
disableRemotePlayback: x,
|
|
1561
1618
|
prefix: null,
|
|
1562
1619
|
property: null,
|
|
1563
|
-
results:
|
|
1620
|
+
results: d,
|
|
1564
1621
|
security: null,
|
|
1565
1622
|
unselectable: null
|
|
1566
1623
|
},
|
|
1567
1624
|
space: "html",
|
|
1568
|
-
transform:
|
|
1569
|
-
}),
|
|
1625
|
+
transform: $t
|
|
1626
|
+
}), mo = ee({
|
|
1570
1627
|
attributes: {
|
|
1571
1628
|
accentHeight: "accent-height",
|
|
1572
1629
|
alignmentBaseline: "alignment-baseline",
|
|
@@ -1744,27 +1801,27 @@ const ho = te({
|
|
|
1744
1801
|
},
|
|
1745
1802
|
properties: {
|
|
1746
1803
|
about: P,
|
|
1747
|
-
accentHeight:
|
|
1804
|
+
accentHeight: d,
|
|
1748
1805
|
accumulate: null,
|
|
1749
1806
|
additive: null,
|
|
1750
1807
|
alignmentBaseline: null,
|
|
1751
|
-
alphabetic:
|
|
1752
|
-
amplitude:
|
|
1808
|
+
alphabetic: d,
|
|
1809
|
+
amplitude: d,
|
|
1753
1810
|
arabicForm: null,
|
|
1754
|
-
ascent:
|
|
1811
|
+
ascent: d,
|
|
1755
1812
|
attributeName: null,
|
|
1756
1813
|
attributeType: null,
|
|
1757
|
-
azimuth:
|
|
1814
|
+
azimuth: d,
|
|
1758
1815
|
bandwidth: null,
|
|
1759
1816
|
baselineShift: null,
|
|
1760
1817
|
baseFrequency: null,
|
|
1761
1818
|
baseProfile: null,
|
|
1762
1819
|
bbox: null,
|
|
1763
1820
|
begin: null,
|
|
1764
|
-
bias:
|
|
1821
|
+
bias: d,
|
|
1765
1822
|
by: null,
|
|
1766
1823
|
calcMode: null,
|
|
1767
|
-
capHeight:
|
|
1824
|
+
capHeight: d,
|
|
1768
1825
|
className: T,
|
|
1769
1826
|
clip: null,
|
|
1770
1827
|
clipPath: null,
|
|
@@ -1785,26 +1842,26 @@ const ho = te({
|
|
|
1785
1842
|
d: null,
|
|
1786
1843
|
dataType: null,
|
|
1787
1844
|
defaultAction: null,
|
|
1788
|
-
descent:
|
|
1789
|
-
diffuseConstant:
|
|
1845
|
+
descent: d,
|
|
1846
|
+
diffuseConstant: d,
|
|
1790
1847
|
direction: null,
|
|
1791
1848
|
display: null,
|
|
1792
1849
|
dur: null,
|
|
1793
|
-
divisor:
|
|
1850
|
+
divisor: d,
|
|
1794
1851
|
dominantBaseline: null,
|
|
1795
1852
|
download: x,
|
|
1796
1853
|
dx: null,
|
|
1797
1854
|
dy: null,
|
|
1798
1855
|
edgeMode: null,
|
|
1799
1856
|
editable: null,
|
|
1800
|
-
elevation:
|
|
1857
|
+
elevation: d,
|
|
1801
1858
|
enableBackground: null,
|
|
1802
1859
|
end: null,
|
|
1803
1860
|
event: null,
|
|
1804
|
-
exponent:
|
|
1861
|
+
exponent: d,
|
|
1805
1862
|
externalResourcesRequired: null,
|
|
1806
1863
|
fill: null,
|
|
1807
|
-
fillOpacity:
|
|
1864
|
+
fillOpacity: d,
|
|
1808
1865
|
fillRule: null,
|
|
1809
1866
|
filter: null,
|
|
1810
1867
|
filterRes: null,
|
|
@@ -1825,36 +1882,36 @@ const ho = te({
|
|
|
1825
1882
|
from: null,
|
|
1826
1883
|
fx: null,
|
|
1827
1884
|
fy: null,
|
|
1828
|
-
g1:
|
|
1829
|
-
g2:
|
|
1830
|
-
glyphName:
|
|
1885
|
+
g1: K,
|
|
1886
|
+
g2: K,
|
|
1887
|
+
glyphName: K,
|
|
1831
1888
|
glyphOrientationHorizontal: null,
|
|
1832
1889
|
glyphOrientationVertical: null,
|
|
1833
1890
|
glyphRef: null,
|
|
1834
1891
|
gradientTransform: null,
|
|
1835
1892
|
gradientUnits: null,
|
|
1836
1893
|
handler: null,
|
|
1837
|
-
hanging:
|
|
1894
|
+
hanging: d,
|
|
1838
1895
|
hatchContentUnits: null,
|
|
1839
1896
|
hatchUnits: null,
|
|
1840
1897
|
height: null,
|
|
1841
1898
|
href: null,
|
|
1842
1899
|
hrefLang: null,
|
|
1843
|
-
horizAdvX:
|
|
1844
|
-
horizOriginX:
|
|
1845
|
-
horizOriginY:
|
|
1900
|
+
horizAdvX: d,
|
|
1901
|
+
horizOriginX: d,
|
|
1902
|
+
horizOriginY: d,
|
|
1846
1903
|
id: null,
|
|
1847
|
-
ideographic:
|
|
1904
|
+
ideographic: d,
|
|
1848
1905
|
imageRendering: null,
|
|
1849
1906
|
initialVisibility: null,
|
|
1850
1907
|
in: null,
|
|
1851
1908
|
in2: null,
|
|
1852
|
-
intercept:
|
|
1853
|
-
k:
|
|
1854
|
-
k1:
|
|
1855
|
-
k2:
|
|
1856
|
-
k3:
|
|
1857
|
-
k4:
|
|
1909
|
+
intercept: d,
|
|
1910
|
+
k: d,
|
|
1911
|
+
k1: d,
|
|
1912
|
+
k2: d,
|
|
1913
|
+
k3: d,
|
|
1914
|
+
k4: d,
|
|
1858
1915
|
kernelMatrix: P,
|
|
1859
1916
|
kernelUnitLength: null,
|
|
1860
1917
|
keyPoints: null,
|
|
@@ -1868,7 +1925,7 @@ const ho = te({
|
|
|
1868
1925
|
lengthAdjust: null,
|
|
1869
1926
|
letterSpacing: null,
|
|
1870
1927
|
lightingColor: null,
|
|
1871
|
-
limitingConeAngle:
|
|
1928
|
+
limitingConeAngle: d,
|
|
1872
1929
|
local: null,
|
|
1873
1930
|
markerEnd: null,
|
|
1874
1931
|
markerMid: null,
|
|
@@ -1884,7 +1941,7 @@ const ho = te({
|
|
|
1884
1941
|
media: null,
|
|
1885
1942
|
mediaCharacterEncoding: null,
|
|
1886
1943
|
mediaContentEncodings: null,
|
|
1887
|
-
mediaSize:
|
|
1944
|
+
mediaSize: d,
|
|
1888
1945
|
mediaTime: null,
|
|
1889
1946
|
method: null,
|
|
1890
1947
|
min: null,
|
|
@@ -1990,12 +2047,12 @@ const ho = te({
|
|
|
1990
2047
|
origin: null,
|
|
1991
2048
|
overflow: null,
|
|
1992
2049
|
overlay: null,
|
|
1993
|
-
overlinePosition:
|
|
1994
|
-
overlineThickness:
|
|
2050
|
+
overlinePosition: d,
|
|
2051
|
+
overlineThickness: d,
|
|
1995
2052
|
paintOrder: null,
|
|
1996
2053
|
panose1: null,
|
|
1997
2054
|
path: null,
|
|
1998
|
-
pathLength:
|
|
2055
|
+
pathLength: d,
|
|
1999
2056
|
patternContentUnits: null,
|
|
2000
2057
|
patternTransform: null,
|
|
2001
2058
|
patternUnits: null,
|
|
@@ -2005,9 +2062,9 @@ const ho = te({
|
|
|
2005
2062
|
playbackOrder: null,
|
|
2006
2063
|
pointerEvents: null,
|
|
2007
2064
|
points: null,
|
|
2008
|
-
pointsAtX:
|
|
2009
|
-
pointsAtY:
|
|
2010
|
-
pointsAtZ:
|
|
2065
|
+
pointsAtX: d,
|
|
2066
|
+
pointsAtY: d,
|
|
2067
|
+
pointsAtZ: d,
|
|
2011
2068
|
preserveAlpha: null,
|
|
2012
2069
|
preserveAspectRatio: null,
|
|
2013
2070
|
primitiveUnits: null,
|
|
@@ -2039,8 +2096,8 @@ const ho = te({
|
|
|
2039
2096
|
side: null,
|
|
2040
2097
|
slope: null,
|
|
2041
2098
|
snapshotTime: null,
|
|
2042
|
-
specularConstant:
|
|
2043
|
-
specularExponent:
|
|
2099
|
+
specularConstant: d,
|
|
2100
|
+
specularExponent: d,
|
|
2044
2101
|
spreadMethod: null,
|
|
2045
2102
|
spacing: null,
|
|
2046
2103
|
startOffset: null,
|
|
@@ -2050,30 +2107,30 @@ const ho = te({
|
|
|
2050
2107
|
stitchTiles: null,
|
|
2051
2108
|
stopColor: null,
|
|
2052
2109
|
stopOpacity: null,
|
|
2053
|
-
strikethroughPosition:
|
|
2054
|
-
strikethroughThickness:
|
|
2110
|
+
strikethroughPosition: d,
|
|
2111
|
+
strikethroughThickness: d,
|
|
2055
2112
|
string: null,
|
|
2056
2113
|
stroke: null,
|
|
2057
2114
|
strokeDashArray: P,
|
|
2058
2115
|
strokeDashOffset: null,
|
|
2059
2116
|
strokeLineCap: null,
|
|
2060
2117
|
strokeLineJoin: null,
|
|
2061
|
-
strokeMiterLimit:
|
|
2062
|
-
strokeOpacity:
|
|
2118
|
+
strokeMiterLimit: d,
|
|
2119
|
+
strokeOpacity: d,
|
|
2063
2120
|
strokeWidth: null,
|
|
2064
2121
|
style: null,
|
|
2065
|
-
surfaceScale:
|
|
2122
|
+
surfaceScale: d,
|
|
2066
2123
|
syncBehavior: null,
|
|
2067
2124
|
syncBehaviorDefault: null,
|
|
2068
2125
|
syncMaster: null,
|
|
2069
2126
|
syncTolerance: null,
|
|
2070
2127
|
syncToleranceDefault: null,
|
|
2071
2128
|
systemLanguage: P,
|
|
2072
|
-
tabIndex:
|
|
2129
|
+
tabIndex: d,
|
|
2073
2130
|
tableValues: null,
|
|
2074
2131
|
target: null,
|
|
2075
|
-
targetX:
|
|
2076
|
-
targetY:
|
|
2132
|
+
targetX: d,
|
|
2133
|
+
targetY: d,
|
|
2077
2134
|
textAnchor: null,
|
|
2078
2135
|
textDecoration: null,
|
|
2079
2136
|
textRendering: null,
|
|
@@ -2088,22 +2145,22 @@ const ho = te({
|
|
|
2088
2145
|
transformOrigin: null,
|
|
2089
2146
|
u1: null,
|
|
2090
2147
|
u2: null,
|
|
2091
|
-
underlinePosition:
|
|
2092
|
-
underlineThickness:
|
|
2148
|
+
underlinePosition: d,
|
|
2149
|
+
underlineThickness: d,
|
|
2093
2150
|
unicode: null,
|
|
2094
2151
|
unicodeBidi: null,
|
|
2095
2152
|
unicodeRange: null,
|
|
2096
|
-
unitsPerEm:
|
|
2153
|
+
unitsPerEm: d,
|
|
2097
2154
|
values: null,
|
|
2098
|
-
vAlphabetic:
|
|
2099
|
-
vMathematical:
|
|
2155
|
+
vAlphabetic: d,
|
|
2156
|
+
vMathematical: d,
|
|
2100
2157
|
vectorEffect: null,
|
|
2101
|
-
vHanging:
|
|
2102
|
-
vIdeographic:
|
|
2158
|
+
vHanging: d,
|
|
2159
|
+
vIdeographic: d,
|
|
2103
2160
|
version: null,
|
|
2104
|
-
vertAdvY:
|
|
2105
|
-
vertOriginX:
|
|
2106
|
-
vertOriginY:
|
|
2161
|
+
vertAdvY: d,
|
|
2162
|
+
vertOriginX: d,
|
|
2163
|
+
vertOriginY: d,
|
|
2107
2164
|
viewBox: null,
|
|
2108
2165
|
viewTarget: null,
|
|
2109
2166
|
visibility: null,
|
|
@@ -2115,7 +2172,7 @@ const ho = te({
|
|
|
2115
2172
|
x1: null,
|
|
2116
2173
|
x2: null,
|
|
2117
2174
|
xChannelSelector: null,
|
|
2118
|
-
xHeight:
|
|
2175
|
+
xHeight: d,
|
|
2119
2176
|
y: null,
|
|
2120
2177
|
y1: null,
|
|
2121
2178
|
y2: null,
|
|
@@ -2124,8 +2181,8 @@ const ho = te({
|
|
|
2124
2181
|
zoomAndPan: null
|
|
2125
2182
|
},
|
|
2126
2183
|
space: "svg",
|
|
2127
|
-
transform:
|
|
2128
|
-
}),
|
|
2184
|
+
transform: Ut
|
|
2185
|
+
}), Bt = ee({
|
|
2129
2186
|
properties: {
|
|
2130
2187
|
xLinkActuate: null,
|
|
2131
2188
|
xLinkArcRole: null,
|
|
@@ -2139,31 +2196,31 @@ const ho = te({
|
|
|
2139
2196
|
transform(e, t) {
|
|
2140
2197
|
return "xlink:" + t.slice(5).toLowerCase();
|
|
2141
2198
|
}
|
|
2142
|
-
}),
|
|
2199
|
+
}), Ht = ee({
|
|
2143
2200
|
attributes: { xmlnsxlink: "xmlns:xlink" },
|
|
2144
2201
|
properties: { xmlnsXLink: null, xmlns: null },
|
|
2145
2202
|
space: "xmlns",
|
|
2146
|
-
transform:
|
|
2147
|
-
}),
|
|
2203
|
+
transform: $t
|
|
2204
|
+
}), qt = ee({
|
|
2148
2205
|
properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
|
|
2149
2206
|
space: "xml",
|
|
2150
2207
|
transform(e, t) {
|
|
2151
2208
|
return "xml:" + t.slice(3).toLowerCase();
|
|
2152
2209
|
}
|
|
2153
|
-
}),
|
|
2154
|
-
function
|
|
2210
|
+
}), fo = /[A-Z]/g, Ze = /-[a-z]/g, bo = /^data[-\w.:]+$/i;
|
|
2211
|
+
function yo(e, t) {
|
|
2155
2212
|
const n = ae(t);
|
|
2156
2213
|
let o = t, r = D;
|
|
2157
2214
|
if (n in e.normal)
|
|
2158
2215
|
return e.property[e.normal[n]];
|
|
2159
|
-
if (n.length > 4 && n.slice(0, 4) === "data" &&
|
|
2216
|
+
if (n.length > 4 && n.slice(0, 4) === "data" && bo.test(t)) {
|
|
2160
2217
|
if (t.charAt(4) === "-") {
|
|
2161
|
-
const a = t.slice(5).replace(Ze,
|
|
2218
|
+
const a = t.slice(5).replace(Ze, vo);
|
|
2162
2219
|
o = "data" + a.charAt(0).toUpperCase() + a.slice(1);
|
|
2163
2220
|
} else {
|
|
2164
2221
|
const a = t.slice(4);
|
|
2165
2222
|
if (!Ze.test(a)) {
|
|
2166
|
-
let l = a.replace(
|
|
2223
|
+
let l = a.replace(fo, ko);
|
|
2167
2224
|
l.charAt(0) !== "-" && (l = "-" + l), t = "data" + l;
|
|
2168
2225
|
}
|
|
2169
2226
|
}
|
|
@@ -2171,13 +2228,13 @@ function bo(e, t) {
|
|
|
2171
2228
|
}
|
|
2172
2229
|
return new r(o, t);
|
|
2173
2230
|
}
|
|
2174
|
-
function
|
|
2231
|
+
function ko(e) {
|
|
2175
2232
|
return "-" + e.toLowerCase();
|
|
2176
2233
|
}
|
|
2177
|
-
function
|
|
2234
|
+
function vo(e) {
|
|
2178
2235
|
return e.charAt(1).toUpperCase();
|
|
2179
2236
|
}
|
|
2180
|
-
const
|
|
2237
|
+
const wo = Mt([zt, go, Bt, Ht, qt], "html"), _o = Mt([zt, mo, Bt, Ht, qt], "svg");
|
|
2181
2238
|
function Je(e) {
|
|
2182
2239
|
const t = [], n = String(e || "");
|
|
2183
2240
|
let o = n.indexOf(","), r = 0, a = !1;
|
|
@@ -2189,7 +2246,7 @@ function Je(e) {
|
|
|
2189
2246
|
return t;
|
|
2190
2247
|
}
|
|
2191
2248
|
const Qe = /[#.]/g;
|
|
2192
|
-
function
|
|
2249
|
+
function xo(e, t) {
|
|
2193
2250
|
const n = e || "", o = {};
|
|
2194
2251
|
let r = 0, a, l;
|
|
2195
2252
|
for (; r < n.length; ) {
|
|
@@ -2209,8 +2266,8 @@ function et(e) {
|
|
|
2209
2266
|
const t = String(e || "").trim();
|
|
2210
2267
|
return t ? t.split(/[ \t\n\r\f]+/g) : [];
|
|
2211
2268
|
}
|
|
2212
|
-
function
|
|
2213
|
-
const o = n ?
|
|
2269
|
+
function jt(e, t, n) {
|
|
2270
|
+
const o = n ? To(n) : void 0;
|
|
2214
2271
|
function r(a, l, ...c) {
|
|
2215
2272
|
let s;
|
|
2216
2273
|
if (a == null) {
|
|
@@ -2221,13 +2278,13 @@ function qt(e, t, n) {
|
|
|
2221
2278
|
);
|
|
2222
2279
|
c.unshift(p);
|
|
2223
2280
|
} else {
|
|
2224
|
-
s =
|
|
2225
|
-
const p = s.tagName.toLowerCase(),
|
|
2226
|
-
if (s.tagName =
|
|
2281
|
+
s = xo(a, t);
|
|
2282
|
+
const p = s.tagName.toLowerCase(), g = o ? o.get(p) : void 0;
|
|
2283
|
+
if (s.tagName = g || p, So(l))
|
|
2227
2284
|
c.unshift(l);
|
|
2228
2285
|
else
|
|
2229
|
-
for (const [
|
|
2230
|
-
|
|
2286
|
+
for (const [m, f] of Object.entries(l))
|
|
2287
|
+
Eo(e, s.properties, m, f);
|
|
2231
2288
|
}
|
|
2232
2289
|
for (const p of c)
|
|
2233
2290
|
Re(s.children, p);
|
|
@@ -2235,7 +2292,7 @@ function qt(e, t, n) {
|
|
|
2235
2292
|
}
|
|
2236
2293
|
return r;
|
|
2237
2294
|
}
|
|
2238
|
-
function
|
|
2295
|
+
function So(e) {
|
|
2239
2296
|
if (e === null || typeof e != "object" || Array.isArray(e))
|
|
2240
2297
|
return !0;
|
|
2241
2298
|
if (typeof e.type != "string") return !1;
|
|
@@ -2258,14 +2315,14 @@ function xo(e) {
|
|
|
2258
2315
|
}
|
|
2259
2316
|
return !!("children" in e && Array.isArray(e.children));
|
|
2260
2317
|
}
|
|
2261
|
-
function
|
|
2262
|
-
const r =
|
|
2318
|
+
function Eo(e, t, n, o) {
|
|
2319
|
+
const r = yo(e, n);
|
|
2263
2320
|
let a;
|
|
2264
2321
|
if (o != null) {
|
|
2265
2322
|
if (typeof o == "number") {
|
|
2266
2323
|
if (Number.isNaN(o)) return;
|
|
2267
2324
|
a = o;
|
|
2268
|
-
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a = et(o) : r.commaSeparated ? a = Je(o) : r.commaOrSpaceSeparated ? a = et(Je(o).join(" ")) : a = tt(r, r.property, o) : Array.isArray(o) ? a = [...o] : a = r.property === "style" ?
|
|
2325
|
+
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a = et(o) : r.commaSeparated ? a = Je(o) : r.commaOrSpaceSeparated ? a = et(Je(o).join(" ")) : a = tt(r, r.property, o) : Array.isArray(o) ? a = [...o] : a = r.property === "style" ? No(o) : String(o);
|
|
2269
2326
|
if (Array.isArray(a)) {
|
|
2270
2327
|
const l = [];
|
|
2271
2328
|
for (const c of a)
|
|
@@ -2301,19 +2358,19 @@ function tt(e, t, n) {
|
|
|
2301
2358
|
}
|
|
2302
2359
|
return n;
|
|
2303
2360
|
}
|
|
2304
|
-
function
|
|
2361
|
+
function No(e) {
|
|
2305
2362
|
const t = [];
|
|
2306
2363
|
for (const [n, o] of Object.entries(e))
|
|
2307
2364
|
t.push([n, o].join(": "));
|
|
2308
2365
|
return t.join("; ");
|
|
2309
2366
|
}
|
|
2310
|
-
function
|
|
2367
|
+
function To(e) {
|
|
2311
2368
|
const t = /* @__PURE__ */ new Map();
|
|
2312
2369
|
for (const n of e)
|
|
2313
2370
|
t.set(n.toLowerCase(), n);
|
|
2314
2371
|
return t;
|
|
2315
2372
|
}
|
|
2316
|
-
const
|
|
2373
|
+
const Co = [
|
|
2317
2374
|
"altGlyph",
|
|
2318
2375
|
"altGlyphDef",
|
|
2319
2376
|
"altGlyphItem",
|
|
@@ -2353,28 +2410,28 @@ const To = [
|
|
|
2353
2410
|
"solidColor",
|
|
2354
2411
|
"textArea",
|
|
2355
2412
|
"textPath"
|
|
2356
|
-
],
|
|
2413
|
+
], Ao = jt(wo, "div"), Io = jt(_o, "g", Co), ke = {
|
|
2357
2414
|
html: "http://www.w3.org/1999/xhtml",
|
|
2358
2415
|
svg: "http://www.w3.org/2000/svg"
|
|
2359
2416
|
};
|
|
2360
|
-
function
|
|
2361
|
-
return
|
|
2417
|
+
function Ro(e, t) {
|
|
2418
|
+
return Gt(e, {}) || { type: "root", children: [] };
|
|
2362
2419
|
}
|
|
2363
|
-
function
|
|
2364
|
-
const n =
|
|
2420
|
+
function Gt(e, t) {
|
|
2421
|
+
const n = Oo(e, t);
|
|
2365
2422
|
return n && t.afterTransform && t.afterTransform(e, n), n;
|
|
2366
2423
|
}
|
|
2367
|
-
function
|
|
2424
|
+
function Oo(e, t) {
|
|
2368
2425
|
switch (e.nodeType) {
|
|
2369
2426
|
case 1:
|
|
2370
|
-
return
|
|
2427
|
+
return Po(
|
|
2371
2428
|
/** @type {Element} */
|
|
2372
2429
|
e,
|
|
2373
2430
|
t
|
|
2374
2431
|
);
|
|
2375
2432
|
// Ignore: Attr (2).
|
|
2376
2433
|
case 3:
|
|
2377
|
-
return
|
|
2434
|
+
return Fo(
|
|
2378
2435
|
/** @type {Text} */
|
|
2379
2436
|
e
|
|
2380
2437
|
);
|
|
@@ -2383,7 +2440,7 @@ function Ro(e, t) {
|
|
|
2383
2440
|
// Removed: Entity (6)
|
|
2384
2441
|
// Ignore: Processing instruction (7).
|
|
2385
2442
|
case 8:
|
|
2386
|
-
return
|
|
2443
|
+
return Do(
|
|
2387
2444
|
/** @type {Comment} */
|
|
2388
2445
|
e
|
|
2389
2446
|
);
|
|
@@ -2394,7 +2451,7 @@ function Ro(e, t) {
|
|
|
2394
2451
|
t
|
|
2395
2452
|
);
|
|
2396
2453
|
case 10:
|
|
2397
|
-
return
|
|
2454
|
+
return Lo();
|
|
2398
2455
|
case 11:
|
|
2399
2456
|
return nt(
|
|
2400
2457
|
/** @type {DocumentFragment} */
|
|
@@ -2406,45 +2463,45 @@ function Ro(e, t) {
|
|
|
2406
2463
|
}
|
|
2407
2464
|
}
|
|
2408
2465
|
function nt(e, t) {
|
|
2409
|
-
return { type: "root", children:
|
|
2466
|
+
return { type: "root", children: Vt(e, t) };
|
|
2410
2467
|
}
|
|
2411
|
-
function
|
|
2468
|
+
function Lo() {
|
|
2412
2469
|
return { type: "doctype" };
|
|
2413
2470
|
}
|
|
2414
|
-
function
|
|
2471
|
+
function Fo(e) {
|
|
2415
2472
|
return { type: "text", value: e.nodeValue || "" };
|
|
2416
2473
|
}
|
|
2417
|
-
function
|
|
2474
|
+
function Do(e) {
|
|
2418
2475
|
return { type: "comment", value: e.nodeValue || "" };
|
|
2419
2476
|
}
|
|
2420
|
-
function
|
|
2421
|
-
const n = e.namespaceURI, o = n === ke.svg ?
|
|
2477
|
+
function Po(e, t) {
|
|
2478
|
+
const n = e.namespaceURI, o = n === ke.svg ? Io : Ao, r = n === ke.html ? e.tagName.toLowerCase() : e.tagName, a = (
|
|
2422
2479
|
// @ts-expect-error: DOM types are wrong, content can exist.
|
|
2423
2480
|
n === ke.html && r === "template" ? e.content : e
|
|
2424
2481
|
), l = e.getAttributeNames(), c = {};
|
|
2425
2482
|
let s = -1;
|
|
2426
2483
|
for (; ++s < l.length; )
|
|
2427
2484
|
c[l[s]] = e.getAttribute(l[s]) || "";
|
|
2428
|
-
return o(r, c,
|
|
2485
|
+
return o(r, c, Vt(a, t));
|
|
2429
2486
|
}
|
|
2430
|
-
function
|
|
2487
|
+
function Vt(e, t) {
|
|
2431
2488
|
const n = e.childNodes, o = [];
|
|
2432
2489
|
let r = -1;
|
|
2433
2490
|
for (; ++r < n.length; ) {
|
|
2434
|
-
const a =
|
|
2491
|
+
const a = Gt(n[r], t);
|
|
2435
2492
|
a !== void 0 && o.push(a);
|
|
2436
2493
|
}
|
|
2437
2494
|
return o;
|
|
2438
2495
|
}
|
|
2439
2496
|
new DOMParser();
|
|
2440
|
-
function
|
|
2441
|
-
const n =
|
|
2497
|
+
function Mo(e, t) {
|
|
2498
|
+
const n = zo(e);
|
|
2442
2499
|
return (
|
|
2443
2500
|
/** @type {Root} */
|
|
2444
|
-
|
|
2501
|
+
Ro(n)
|
|
2445
2502
|
);
|
|
2446
2503
|
}
|
|
2447
|
-
function
|
|
2504
|
+
function zo(e) {
|
|
2448
2505
|
const t = document.createElement("template");
|
|
2449
2506
|
return t.innerHTML = e, t.content;
|
|
2450
2507
|
}
|
|
@@ -2465,24 +2522,24 @@ const He = (
|
|
|
2465
2522
|
*/
|
|
2466
2523
|
(function(e) {
|
|
2467
2524
|
if (e == null)
|
|
2468
|
-
return
|
|
2525
|
+
return Ho;
|
|
2469
2526
|
if (typeof e == "function")
|
|
2470
2527
|
return me(e);
|
|
2471
2528
|
if (typeof e == "object")
|
|
2472
|
-
return Array.isArray(e) ?
|
|
2529
|
+
return Array.isArray(e) ? Uo(e) : (
|
|
2473
2530
|
// Cast because `ReadonlyArray` goes into the above but `isArray`
|
|
2474
2531
|
// narrows to `Array`.
|
|
2475
|
-
|
|
2532
|
+
$o(
|
|
2476
2533
|
/** @type {Props} */
|
|
2477
2534
|
e
|
|
2478
2535
|
)
|
|
2479
2536
|
);
|
|
2480
2537
|
if (typeof e == "string")
|
|
2481
|
-
return
|
|
2538
|
+
return Bo(e);
|
|
2482
2539
|
throw new Error("Expected function, string, or object as test");
|
|
2483
2540
|
})
|
|
2484
2541
|
);
|
|
2485
|
-
function
|
|
2542
|
+
function Uo(e) {
|
|
2486
2543
|
const t = [];
|
|
2487
2544
|
let n = -1;
|
|
2488
2545
|
for (; ++n < e.length; )
|
|
@@ -2495,7 +2552,7 @@ function zo(e) {
|
|
|
2495
2552
|
return !1;
|
|
2496
2553
|
}
|
|
2497
2554
|
}
|
|
2498
|
-
function
|
|
2555
|
+
function $o(e) {
|
|
2499
2556
|
const t = (
|
|
2500
2557
|
/** @type {Record<string, unknown>} */
|
|
2501
2558
|
e
|
|
@@ -2513,7 +2570,7 @@ function Uo(e) {
|
|
|
2513
2570
|
return !0;
|
|
2514
2571
|
}
|
|
2515
2572
|
}
|
|
2516
|
-
function
|
|
2573
|
+
function Bo(e) {
|
|
2517
2574
|
return me(t);
|
|
2518
2575
|
function t(n) {
|
|
2519
2576
|
return n && n.type === e;
|
|
@@ -2522,7 +2579,7 @@ function $o(e) {
|
|
|
2522
2579
|
function me(e) {
|
|
2523
2580
|
return t;
|
|
2524
2581
|
function t(n, o, r) {
|
|
2525
|
-
return !!(
|
|
2582
|
+
return !!(qo(n) && e.call(
|
|
2526
2583
|
this,
|
|
2527
2584
|
n,
|
|
2528
2585
|
typeof o == "number" ? o : void 0,
|
|
@@ -2530,10 +2587,10 @@ function me(e) {
|
|
|
2530
2587
|
));
|
|
2531
2588
|
}
|
|
2532
2589
|
}
|
|
2533
|
-
function
|
|
2590
|
+
function Ho() {
|
|
2534
2591
|
return !0;
|
|
2535
2592
|
}
|
|
2536
|
-
function
|
|
2593
|
+
function qo(e) {
|
|
2537
2594
|
return e !== null && typeof e == "object" && "type" in e;
|
|
2538
2595
|
}
|
|
2539
2596
|
const ot = (
|
|
@@ -2579,17 +2636,17 @@ const ot = (
|
|
|
2579
2636
|
*/
|
|
2580
2637
|
(function(e) {
|
|
2581
2638
|
if (e == null)
|
|
2582
|
-
return
|
|
2639
|
+
return Vo;
|
|
2583
2640
|
if (typeof e == "string")
|
|
2584
|
-
return
|
|
2641
|
+
return Go(e);
|
|
2585
2642
|
if (typeof e == "object")
|
|
2586
|
-
return
|
|
2643
|
+
return jo(e);
|
|
2587
2644
|
if (typeof e == "function")
|
|
2588
2645
|
return qe(e);
|
|
2589
2646
|
throw new Error("Expected function, string, or array as `test`");
|
|
2590
2647
|
})
|
|
2591
2648
|
);
|
|
2592
|
-
function
|
|
2649
|
+
function jo(e) {
|
|
2593
2650
|
const t = [];
|
|
2594
2651
|
let n = -1;
|
|
2595
2652
|
for (; ++n < e.length; )
|
|
@@ -2602,7 +2659,7 @@ function qo(e) {
|
|
|
2602
2659
|
return !1;
|
|
2603
2660
|
}
|
|
2604
2661
|
}
|
|
2605
|
-
function
|
|
2662
|
+
function Go(e) {
|
|
2606
2663
|
return qe(t);
|
|
2607
2664
|
function t(n) {
|
|
2608
2665
|
return n.tagName === e;
|
|
@@ -2611,7 +2668,7 @@ function jo(e) {
|
|
|
2611
2668
|
function qe(e) {
|
|
2612
2669
|
return t;
|
|
2613
2670
|
function t(n, o, r) {
|
|
2614
|
-
return !!(
|
|
2671
|
+
return !!(Wo(n) && e.call(
|
|
2615
2672
|
this,
|
|
2616
2673
|
n,
|
|
2617
2674
|
typeof o == "number" ? o : void 0,
|
|
@@ -2619,13 +2676,13 @@ function qe(e) {
|
|
|
2619
2676
|
));
|
|
2620
2677
|
}
|
|
2621
2678
|
}
|
|
2622
|
-
function
|
|
2679
|
+
function Vo(e) {
|
|
2623
2680
|
return !!(e && typeof e == "object" && "type" in e && e.type === "element" && "tagName" in e && typeof e.tagName == "string");
|
|
2624
2681
|
}
|
|
2625
|
-
function
|
|
2682
|
+
function Wo(e) {
|
|
2626
2683
|
return e !== null && typeof e == "object" && "type" in e && "tagName" in e;
|
|
2627
2684
|
}
|
|
2628
|
-
const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(
|
|
2685
|
+
const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(tr), Yo = V("p"), lt = V("tr"), Xo = V([
|
|
2629
2686
|
// List from: <https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements>
|
|
2630
2687
|
"datalist",
|
|
2631
2688
|
"head",
|
|
@@ -2639,10 +2696,10 @@ const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(er), Wo = V("p"), lt = V(
|
|
|
2639
2696
|
"template",
|
|
2640
2697
|
"title",
|
|
2641
2698
|
// Hidden attribute.
|
|
2642
|
-
|
|
2699
|
+
er,
|
|
2643
2700
|
// From: <https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3>
|
|
2644
|
-
|
|
2645
|
-
]),
|
|
2701
|
+
nr
|
|
2702
|
+
]), Wt = V([
|
|
2646
2703
|
"address",
|
|
2647
2704
|
// Flow content
|
|
2648
2705
|
"article",
|
|
@@ -2724,12 +2781,12 @@ const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(er), Wo = V("p"), lt = V(
|
|
|
2724
2781
|
"xmp"
|
|
2725
2782
|
// Flow content (legacy)
|
|
2726
2783
|
]);
|
|
2727
|
-
function
|
|
2728
|
-
const n = t || {}, o = "children" in e ? e.children : [], r =
|
|
2784
|
+
function Ko(e, t) {
|
|
2785
|
+
const n = t || {}, o = "children" in e ? e.children : [], r = Wt(e), a = Kt(e, {
|
|
2729
2786
|
whitespace: n.whitespace || "normal"
|
|
2730
2787
|
}), l = [];
|
|
2731
2788
|
(e.type === "text" || e.type === "comment") && l.push(
|
|
2732
|
-
...
|
|
2789
|
+
...Xt(e, {
|
|
2733
2790
|
breakBefore: !0,
|
|
2734
2791
|
breakAfter: !0
|
|
2735
2792
|
})
|
|
@@ -2737,7 +2794,7 @@ function Xo(e, t) {
|
|
|
2737
2794
|
let c = -1;
|
|
2738
2795
|
for (; ++c < o.length; )
|
|
2739
2796
|
l.push(
|
|
2740
|
-
...
|
|
2797
|
+
...Yt(
|
|
2741
2798
|
o[c],
|
|
2742
2799
|
// @ts-expect-error: `tree` is a parent if we’re here.
|
|
2743
2800
|
e,
|
|
@@ -2751,26 +2808,26 @@ function Xo(e, t) {
|
|
|
2751
2808
|
const s = [];
|
|
2752
2809
|
let p;
|
|
2753
2810
|
for (c = -1; ++c < l.length; ) {
|
|
2754
|
-
const
|
|
2755
|
-
typeof
|
|
2756
|
-
`.repeat(p) || " "), p = -1, s.push(
|
|
2811
|
+
const g = l[c];
|
|
2812
|
+
typeof g == "number" ? p !== void 0 && g > p && (p = g) : g && (p !== void 0 && p > -1 && s.push(`
|
|
2813
|
+
`.repeat(p) || " "), p = -1, s.push(g));
|
|
2757
2814
|
}
|
|
2758
2815
|
return s.join("");
|
|
2759
2816
|
}
|
|
2760
|
-
function
|
|
2761
|
-
return e.type === "element" ?
|
|
2817
|
+
function Yt(e, t, n) {
|
|
2818
|
+
return e.type === "element" ? Zo(e, t, n) : e.type === "text" ? n.whitespace === "normal" ? Xt(e, n) : Jo(e) : [];
|
|
2762
2819
|
}
|
|
2763
|
-
function
|
|
2764
|
-
const o =
|
|
2820
|
+
function Zo(e, t, n) {
|
|
2821
|
+
const o = Kt(e, n), r = e.children || [];
|
|
2765
2822
|
let a = -1, l = [];
|
|
2766
|
-
if (
|
|
2823
|
+
if (Xo(e))
|
|
2767
2824
|
return l;
|
|
2768
2825
|
let c, s;
|
|
2769
2826
|
for (Oe(e) || lt(e) && // @ts-expect-error: something up with types of parents.
|
|
2770
2827
|
ot(t, e, lt) ? s = `
|
|
2771
|
-
` :
|
|
2828
|
+
` : Yo(e) ? (c = 2, s = 2) : Wt(e) && (c = 1, s = 1); ++a < r.length; )
|
|
2772
2829
|
l = l.concat(
|
|
2773
|
-
|
|
2830
|
+
Yt(r[a], e, {
|
|
2774
2831
|
whitespace: o,
|
|
2775
2832
|
breakBefore: a ? void 0 : c,
|
|
2776
2833
|
breakAfter: a < r.length - 1 ? Oe(r[a + 1]) : s
|
|
@@ -2779,7 +2836,7 @@ function Ko(e, t, n) {
|
|
|
2779
2836
|
return it(e) && // @ts-expect-error: something up with types of parents.
|
|
2780
2837
|
ot(t, e, it) && l.push(" "), c && l.unshift(c), s && l.push(s), l;
|
|
2781
2838
|
}
|
|
2782
|
-
function
|
|
2839
|
+
function Xt(e, t) {
|
|
2783
2840
|
const n = String(e.value), o = [], r = [];
|
|
2784
2841
|
let a = 0;
|
|
2785
2842
|
for (; a <= n.length; ) {
|
|
@@ -2788,7 +2845,7 @@ function Yt(e, t) {
|
|
|
2788
2845
|
o.push(
|
|
2789
2846
|
// Any sequence of collapsible spaces and tabs immediately preceding or
|
|
2790
2847
|
// following a segment break is removed.
|
|
2791
|
-
|
|
2848
|
+
Qo(
|
|
2792
2849
|
// […] ignoring bidi formatting characters (characters with the
|
|
2793
2850
|
// Bidi_Control property [UAX9]: ALM, LTR, RTL, LRE-RLO, LRI-PDI) as if
|
|
2794
2851
|
// they were not there.
|
|
@@ -2803,10 +2860,10 @@ function Yt(e, t) {
|
|
|
2803
2860
|
o[l].charCodeAt(o[l].length - 1) === 8203 || l < o.length - 1 && o[l + 1].charCodeAt(0) === 8203 ? (r.push(o[l]), c = void 0) : o[l] ? (typeof c == "number" && r.push(c), r.push(o[l]), c = 0) : (l === 0 || l === o.length - 1) && r.push(0);
|
|
2804
2861
|
return r;
|
|
2805
2862
|
}
|
|
2806
|
-
function
|
|
2863
|
+
function Jo(e) {
|
|
2807
2864
|
return [String(e.value)];
|
|
2808
2865
|
}
|
|
2809
|
-
function
|
|
2866
|
+
function Qo(e, t, n) {
|
|
2810
2867
|
const o = [];
|
|
2811
2868
|
let r = 0, a;
|
|
2812
2869
|
for (; r < e.length; ) {
|
|
@@ -2816,7 +2873,7 @@ function Jo(e, t, n) {
|
|
|
2816
2873
|
}
|
|
2817
2874
|
return r !== a && !n && o.push(""), o.join(" ");
|
|
2818
2875
|
}
|
|
2819
|
-
function
|
|
2876
|
+
function Kt(e, t) {
|
|
2820
2877
|
if (e.type === "element") {
|
|
2821
2878
|
const n = e.properties || {};
|
|
2822
2879
|
switch (e.tagName) {
|
|
@@ -2837,131 +2894,131 @@ function Xt(e, t) {
|
|
|
2837
2894
|
}
|
|
2838
2895
|
return t.whitespace;
|
|
2839
2896
|
}
|
|
2840
|
-
function
|
|
2897
|
+
function er(e) {
|
|
2841
2898
|
return !!(e.properties || {}).hidden;
|
|
2842
2899
|
}
|
|
2843
|
-
function
|
|
2900
|
+
function tr(e) {
|
|
2844
2901
|
return e.tagName === "td" || e.tagName === "th";
|
|
2845
2902
|
}
|
|
2846
|
-
function
|
|
2903
|
+
function nr(e) {
|
|
2847
2904
|
return e.tagName === "dialog" && !(e.properties || {}).open;
|
|
2848
2905
|
}
|
|
2849
|
-
const
|
|
2850
|
-
function
|
|
2906
|
+
const Zt = [], or = !0, st = !1, Jt = "skip";
|
|
2907
|
+
function rr(e, t, n, o) {
|
|
2851
2908
|
let r;
|
|
2852
2909
|
r = t;
|
|
2853
2910
|
const a = He(r), l = 1;
|
|
2854
2911
|
c(e, void 0, [])();
|
|
2855
|
-
function c(s, p,
|
|
2856
|
-
const
|
|
2912
|
+
function c(s, p, g) {
|
|
2913
|
+
const m = (
|
|
2857
2914
|
/** @type {Record<string, unknown>} */
|
|
2858
2915
|
s && typeof s == "object" ? s : {}
|
|
2859
2916
|
);
|
|
2860
|
-
if (typeof
|
|
2861
|
-
const
|
|
2917
|
+
if (typeof m.type == "string") {
|
|
2918
|
+
const b = (
|
|
2862
2919
|
// `hast`
|
|
2863
|
-
typeof
|
|
2920
|
+
typeof m.tagName == "string" ? m.tagName : (
|
|
2864
2921
|
// `xast`
|
|
2865
|
-
typeof
|
|
2922
|
+
typeof m.name == "string" ? m.name : void 0
|
|
2866
2923
|
)
|
|
2867
2924
|
);
|
|
2868
|
-
Object.defineProperty(
|
|
2869
|
-
value: "node (" + (s.type + (
|
|
2925
|
+
Object.defineProperty(f, "name", {
|
|
2926
|
+
value: "node (" + (s.type + (b ? "<" + b + ">" : "")) + ")"
|
|
2870
2927
|
});
|
|
2871
2928
|
}
|
|
2872
|
-
return
|
|
2873
|
-
function
|
|
2874
|
-
let
|
|
2875
|
-
if (a(s, p,
|
|
2876
|
-
return
|
|
2929
|
+
return f;
|
|
2930
|
+
function f() {
|
|
2931
|
+
let b = Zt, k, u, w;
|
|
2932
|
+
if (a(s, p, g[g.length - 1] || void 0) && (b = ar(n(s, g)), b[0] === st))
|
|
2933
|
+
return b;
|
|
2877
2934
|
if ("children" in s && s.children) {
|
|
2878
|
-
const
|
|
2935
|
+
const v = (
|
|
2879
2936
|
/** @type {UnistParent} */
|
|
2880
2937
|
s
|
|
2881
2938
|
);
|
|
2882
|
-
if (
|
|
2883
|
-
for (
|
|
2884
|
-
const
|
|
2885
|
-
if (
|
|
2886
|
-
return
|
|
2887
|
-
|
|
2939
|
+
if (v.children && b[0] !== Jt)
|
|
2940
|
+
for (u = -1 + l, w = g.concat(v); u > -1 && u < v.children.length; ) {
|
|
2941
|
+
const h = v.children[u];
|
|
2942
|
+
if (k = c(h, u, w)(), k[0] === st)
|
|
2943
|
+
return k;
|
|
2944
|
+
u = typeof k[1] == "number" ? k[1] : u + l;
|
|
2888
2945
|
}
|
|
2889
2946
|
}
|
|
2890
|
-
return
|
|
2947
|
+
return b;
|
|
2891
2948
|
}
|
|
2892
2949
|
}
|
|
2893
2950
|
}
|
|
2894
|
-
function
|
|
2895
|
-
return Array.isArray(e) ? e : typeof e == "number" ? [
|
|
2951
|
+
function ar(e) {
|
|
2952
|
+
return Array.isArray(e) ? e : typeof e == "number" ? [or, e] : e == null ? Zt : [e];
|
|
2896
2953
|
}
|
|
2897
|
-
const
|
|
2898
|
-
function
|
|
2899
|
-
const t = e ||
|
|
2954
|
+
const ir = {}, lr = [];
|
|
2955
|
+
function sr(e) {
|
|
2956
|
+
const t = e || ir;
|
|
2900
2957
|
return function(n, o) {
|
|
2901
|
-
|
|
2902
|
-
const l = Array.isArray(r.properties.className) ? r.properties.className :
|
|
2903
|
-
let
|
|
2958
|
+
rr(n, "element", function(r, a) {
|
|
2959
|
+
const l = Array.isArray(r.properties.className) ? r.properties.className : lr, c = l.includes("language-math"), s = l.includes("math-display"), p = l.includes("math-inline");
|
|
2960
|
+
let g = s;
|
|
2904
2961
|
if (!c && !s && !p)
|
|
2905
2962
|
return;
|
|
2906
|
-
let
|
|
2907
|
-
if (r.tagName === "code" && c &&
|
|
2908
|
-
const
|
|
2909
|
-
let
|
|
2963
|
+
let m = a[a.length - 1], f = r;
|
|
2964
|
+
if (r.tagName === "code" && c && m && m.type === "element" && m.tagName === "pre" && (f = m, m = a[a.length - 2], g = !0), !m) return;
|
|
2965
|
+
const b = Ko(f, { whitespace: "pre" });
|
|
2966
|
+
let k;
|
|
2910
2967
|
try {
|
|
2911
|
-
|
|
2968
|
+
k = Ve.renderToString(b, {
|
|
2912
2969
|
...t,
|
|
2913
|
-
displayMode:
|
|
2970
|
+
displayMode: g,
|
|
2914
2971
|
throwOnError: !0
|
|
2915
2972
|
});
|
|
2916
|
-
} catch (
|
|
2917
|
-
const
|
|
2973
|
+
} catch (w) {
|
|
2974
|
+
const v = (
|
|
2918
2975
|
/** @type {Error} */
|
|
2919
|
-
|
|
2920
|
-
),
|
|
2976
|
+
w
|
|
2977
|
+
), h = v.name.toLowerCase();
|
|
2921
2978
|
o.message("Could not render math with KaTeX", {
|
|
2922
2979
|
ancestors: [...a, r],
|
|
2923
|
-
cause:
|
|
2980
|
+
cause: v,
|
|
2924
2981
|
place: r.position,
|
|
2925
|
-
ruleId:
|
|
2982
|
+
ruleId: h,
|
|
2926
2983
|
source: "rehype-katex"
|
|
2927
2984
|
});
|
|
2928
2985
|
try {
|
|
2929
|
-
|
|
2986
|
+
k = Ve.renderToString(b, {
|
|
2930
2987
|
...t,
|
|
2931
|
-
displayMode:
|
|
2988
|
+
displayMode: g,
|
|
2932
2989
|
strict: "ignore",
|
|
2933
2990
|
throwOnError: !1
|
|
2934
2991
|
});
|
|
2935
2992
|
} catch {
|
|
2936
|
-
|
|
2993
|
+
k = [
|
|
2937
2994
|
{
|
|
2938
2995
|
type: "element",
|
|
2939
2996
|
tagName: "span",
|
|
2940
2997
|
properties: {
|
|
2941
2998
|
className: ["katex-error"],
|
|
2942
2999
|
style: "color:" + (t.errorColor || "#cc0000"),
|
|
2943
|
-
title: String(
|
|
3000
|
+
title: String(w)
|
|
2944
3001
|
},
|
|
2945
|
-
children: [{ type: "text", value:
|
|
3002
|
+
children: [{ type: "text", value: b }]
|
|
2946
3003
|
}
|
|
2947
3004
|
];
|
|
2948
3005
|
}
|
|
2949
3006
|
}
|
|
2950
|
-
typeof
|
|
2951
|
-
|
|
2952
|
-
const
|
|
2953
|
-
return
|
|
3007
|
+
typeof k == "string" && (k = /** @type {Array<ElementContent>} */
|
|
3008
|
+
Mo(k).children);
|
|
3009
|
+
const u = m.children.indexOf(f);
|
|
3010
|
+
return m.children.splice(u, 1, ...k), Jt;
|
|
2954
3011
|
});
|
|
2955
3012
|
};
|
|
2956
3013
|
}
|
|
2957
|
-
function
|
|
3014
|
+
function cr(e, t) {
|
|
2958
3015
|
const n = String(e);
|
|
2959
3016
|
let o = n.indexOf(t), r = o, a = 0, l = 0;
|
|
2960
3017
|
for (; o !== -1; )
|
|
2961
3018
|
o === r ? ++a > l && (l = a) : a = 1, r = o + t.length, o = n.indexOf(t, r);
|
|
2962
3019
|
return l;
|
|
2963
3020
|
}
|
|
2964
|
-
function
|
|
3021
|
+
function ur() {
|
|
2965
3022
|
return {
|
|
2966
3023
|
enter: {
|
|
2967
3024
|
mathFlow: e,
|
|
@@ -3005,13 +3062,13 @@ function cr() {
|
|
|
3005
3062
|
this.data.mathFlowInside || (this.buffer(), this.data.mathFlowInside = !0);
|
|
3006
3063
|
}
|
|
3007
3064
|
function r(s) {
|
|
3008
|
-
const p = this.resume().replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""),
|
|
3009
|
-
|
|
3010
|
-
const
|
|
3065
|
+
const p = this.resume().replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""), g = this.stack[this.stack.length - 1];
|
|
3066
|
+
g.type, this.exit(s), g.value = p;
|
|
3067
|
+
const m = (
|
|
3011
3068
|
/** @type {HastElement} */
|
|
3012
|
-
|
|
3069
|
+
g.data.hChildren[0]
|
|
3013
3070
|
);
|
|
3014
|
-
|
|
3071
|
+
m.type, m.tagName, m.children.push({ type: "text", value: p }), this.data.mathFlowInside = void 0;
|
|
3015
3072
|
}
|
|
3016
3073
|
function a(s) {
|
|
3017
3074
|
this.enter(
|
|
@@ -3028,16 +3085,16 @@ function cr() {
|
|
|
3028
3085
|
), this.buffer();
|
|
3029
3086
|
}
|
|
3030
3087
|
function l(s) {
|
|
3031
|
-
const p = this.resume(),
|
|
3032
|
-
|
|
3088
|
+
const p = this.resume(), g = this.stack[this.stack.length - 1];
|
|
3089
|
+
g.type, this.exit(s), g.value = p, /** @type {Array<HastElementContent>} */
|
|
3033
3090
|
// @ts-expect-error: we defined it in `enterMathFlow`.
|
|
3034
|
-
|
|
3091
|
+
g.data.hChildren.push({ type: "text", value: p });
|
|
3035
3092
|
}
|
|
3036
3093
|
function c(s) {
|
|
3037
3094
|
this.config.enter.data.call(this, s), this.config.exit.data.call(this, s);
|
|
3038
3095
|
}
|
|
3039
3096
|
}
|
|
3040
|
-
function
|
|
3097
|
+
function dr(e) {
|
|
3041
3098
|
let t = (e || {}).singleDollarTextMath;
|
|
3042
3099
|
return t == null && (t = !0), o.peek = r, {
|
|
3043
3100
|
unsafe: [
|
|
@@ -3055,45 +3112,45 @@ function ur(e) {
|
|
|
3055
3112
|
handlers: { math: n, inlineMath: o }
|
|
3056
3113
|
};
|
|
3057
3114
|
function n(a, l, c, s) {
|
|
3058
|
-
const p = a.value || "",
|
|
3059
|
-
let
|
|
3115
|
+
const p = a.value || "", g = c.createTracker(s), m = "$".repeat(Math.max(cr(p, "$") + 1, 2)), f = c.enter("mathFlow");
|
|
3116
|
+
let b = g.move(m);
|
|
3060
3117
|
if (a.meta) {
|
|
3061
|
-
const
|
|
3062
|
-
|
|
3118
|
+
const k = c.enter("mathFlowMeta");
|
|
3119
|
+
b += g.move(
|
|
3063
3120
|
c.safe(a.meta, {
|
|
3064
3121
|
after: `
|
|
3065
3122
|
`,
|
|
3066
|
-
before:
|
|
3123
|
+
before: b,
|
|
3067
3124
|
encode: ["$"],
|
|
3068
|
-
...
|
|
3125
|
+
...g.current()
|
|
3069
3126
|
})
|
|
3070
|
-
),
|
|
3127
|
+
), k();
|
|
3071
3128
|
}
|
|
3072
|
-
return
|
|
3073
|
-
`), p && (
|
|
3074
|
-
`)),
|
|
3129
|
+
return b += g.move(`
|
|
3130
|
+
`), p && (b += g.move(p + `
|
|
3131
|
+
`)), b += g.move(m), f(), b;
|
|
3075
3132
|
}
|
|
3076
3133
|
function o(a, l, c) {
|
|
3077
3134
|
let s = a.value || "", p = 1;
|
|
3078
3135
|
for (t || p++; new RegExp("(^|[^$])" + "\\$".repeat(p) + "([^$]|$)").test(s); )
|
|
3079
3136
|
p++;
|
|
3080
|
-
const
|
|
3137
|
+
const g = "$".repeat(p);
|
|
3081
3138
|
// Contains non-space.
|
|
3082
3139
|
/[^ \r\n]/.test(s) && // Starts with space and ends with space.
|
|
3083
3140
|
(/^[ \r\n]/.test(s) && /[ \r\n]$/.test(s) || // Starts or ends with dollar.
|
|
3084
3141
|
/^\$|\$$/.test(s)) && (s = " " + s + " ");
|
|
3085
|
-
let
|
|
3086
|
-
for (; ++
|
|
3087
|
-
const
|
|
3088
|
-
if (!
|
|
3089
|
-
const
|
|
3090
|
-
let
|
|
3091
|
-
for (;
|
|
3092
|
-
let
|
|
3093
|
-
s.codePointAt(
|
|
3142
|
+
let m = -1;
|
|
3143
|
+
for (; ++m < c.unsafe.length; ) {
|
|
3144
|
+
const f = c.unsafe[m];
|
|
3145
|
+
if (!f.atBreak) continue;
|
|
3146
|
+
const b = c.compilePattern(f);
|
|
3147
|
+
let k;
|
|
3148
|
+
for (; k = b.exec(s); ) {
|
|
3149
|
+
let u = k.index;
|
|
3150
|
+
s.codePointAt(u) === 10 && s.codePointAt(u - 1) === 13 && u--, s = s.slice(0, u) + " " + s.slice(k.index + 1);
|
|
3094
3151
|
}
|
|
3095
3152
|
}
|
|
3096
|
-
return
|
|
3153
|
+
return g + s + g;
|
|
3097
3154
|
}
|
|
3098
3155
|
function r() {
|
|
3099
3156
|
return "$";
|
|
@@ -3116,68 +3173,68 @@ function ce(e, t, n, o) {
|
|
|
3116
3173
|
return ct(s) && a++ < r ? (e.consume(s), c) : (e.exit(n), t(s));
|
|
3117
3174
|
}
|
|
3118
3175
|
}
|
|
3119
|
-
const
|
|
3120
|
-
tokenize:
|
|
3176
|
+
const pr = {
|
|
3177
|
+
tokenize: hr,
|
|
3121
3178
|
concrete: !0,
|
|
3122
3179
|
name: "mathFlow"
|
|
3123
3180
|
}, ut = {
|
|
3124
|
-
tokenize:
|
|
3181
|
+
tokenize: gr,
|
|
3125
3182
|
partial: !0
|
|
3126
3183
|
};
|
|
3127
|
-
function
|
|
3184
|
+
function hr(e, t, n) {
|
|
3128
3185
|
const o = this, r = o.events[o.events.length - 1], a = r && r[1].type === "linePrefix" ? r[2].sliceSerialize(r[1], !0).length : 0;
|
|
3129
3186
|
let l = 0;
|
|
3130
3187
|
return c;
|
|
3131
|
-
function c(
|
|
3132
|
-
return e.enter("mathFlow"), e.enter("mathFlowFence"), e.enter("mathFlowFenceSequence"), s(
|
|
3188
|
+
function c(h) {
|
|
3189
|
+
return e.enter("mathFlow"), e.enter("mathFlowFence"), e.enter("mathFlowFenceSequence"), s(h);
|
|
3133
3190
|
}
|
|
3134
|
-
function s(
|
|
3135
|
-
return
|
|
3191
|
+
function s(h) {
|
|
3192
|
+
return h === 36 ? (e.consume(h), l++, s) : l < 2 ? n(h) : (e.exit("mathFlowFenceSequence"), ce(e, p, "whitespace")(h));
|
|
3136
3193
|
}
|
|
3137
|
-
function p(
|
|
3138
|
-
return
|
|
3194
|
+
function p(h) {
|
|
3195
|
+
return h === null || j(h) ? m(h) : (e.enter("mathFlowFenceMeta"), e.enter("chunkString", {
|
|
3139
3196
|
contentType: "string"
|
|
3140
|
-
}), h
|
|
3197
|
+
}), g(h));
|
|
3141
3198
|
}
|
|
3142
|
-
function h
|
|
3143
|
-
return
|
|
3199
|
+
function g(h) {
|
|
3200
|
+
return h === null || j(h) ? (e.exit("chunkString"), e.exit("mathFlowFenceMeta"), m(h)) : h === 36 ? n(h) : (e.consume(h), g);
|
|
3144
3201
|
}
|
|
3145
|
-
function
|
|
3146
|
-
return e.exit("mathFlowFence"), o.interrupt ? t(
|
|
3202
|
+
function m(h) {
|
|
3203
|
+
return e.exit("mathFlowFence"), o.interrupt ? t(h) : e.attempt(ut, f, w)(h);
|
|
3147
3204
|
}
|
|
3148
|
-
function
|
|
3205
|
+
function f(h) {
|
|
3149
3206
|
return e.attempt({
|
|
3150
|
-
tokenize:
|
|
3207
|
+
tokenize: v,
|
|
3151
3208
|
partial: !0
|
|
3152
|
-
},
|
|
3209
|
+
}, w, b)(h);
|
|
3153
3210
|
}
|
|
3154
|
-
function
|
|
3155
|
-
return (a ? ce(e,
|
|
3211
|
+
function b(h) {
|
|
3212
|
+
return (a ? ce(e, k, "linePrefix", a + 1) : k)(h);
|
|
3156
3213
|
}
|
|
3157
|
-
function
|
|
3158
|
-
return
|
|
3214
|
+
function k(h) {
|
|
3215
|
+
return h === null ? w(h) : j(h) ? e.attempt(ut, f, w)(h) : (e.enter("mathFlowValue"), u(h));
|
|
3159
3216
|
}
|
|
3160
|
-
function
|
|
3161
|
-
return
|
|
3217
|
+
function u(h) {
|
|
3218
|
+
return h === null || j(h) ? (e.exit("mathFlowValue"), k(h)) : (e.consume(h), u);
|
|
3162
3219
|
}
|
|
3163
|
-
function
|
|
3164
|
-
return e.exit("mathFlow"), t(
|
|
3220
|
+
function w(h) {
|
|
3221
|
+
return e.exit("mathFlow"), t(h);
|
|
3165
3222
|
}
|
|
3166
|
-
function
|
|
3167
|
-
let
|
|
3168
|
-
return ce(
|
|
3223
|
+
function v(h, C, E) {
|
|
3224
|
+
let R = 0;
|
|
3225
|
+
return ce(h, $, "linePrefix", o.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
|
|
3169
3226
|
function $(O) {
|
|
3170
|
-
return
|
|
3227
|
+
return h.enter("mathFlowFence"), h.enter("mathFlowFenceSequence"), z(O);
|
|
3171
3228
|
}
|
|
3172
3229
|
function z(O) {
|
|
3173
|
-
return O === 36 ? (
|
|
3230
|
+
return O === 36 ? (R++, h.consume(O), z) : R < l ? E(O) : (h.exit("mathFlowFenceSequence"), ce(h, ne, "whitespace")(O));
|
|
3174
3231
|
}
|
|
3175
3232
|
function ne(O) {
|
|
3176
|
-
return O === null || j(O) ? (
|
|
3233
|
+
return O === null || j(O) ? (h.exit("mathFlowFence"), C(O)) : E(O);
|
|
3177
3234
|
}
|
|
3178
3235
|
}
|
|
3179
3236
|
}
|
|
3180
|
-
function
|
|
3237
|
+
function gr(e, t, n) {
|
|
3181
3238
|
const o = this;
|
|
3182
3239
|
return r;
|
|
3183
3240
|
function r(l) {
|
|
@@ -3187,35 +3244,35 @@ function hr(e, t, n) {
|
|
|
3187
3244
|
return o.parser.lazy[o.now().line] ? n(l) : t(l);
|
|
3188
3245
|
}
|
|
3189
3246
|
}
|
|
3190
|
-
function
|
|
3247
|
+
function mr(e) {
|
|
3191
3248
|
let n = (e || {}).singleDollarTextMath;
|
|
3192
3249
|
return n == null && (n = !0), {
|
|
3193
3250
|
tokenize: o,
|
|
3194
|
-
resolve:
|
|
3195
|
-
previous:
|
|
3251
|
+
resolve: fr,
|
|
3252
|
+
previous: br,
|
|
3196
3253
|
name: "mathText"
|
|
3197
3254
|
};
|
|
3198
3255
|
function o(r, a, l) {
|
|
3199
3256
|
let c = 0, s, p;
|
|
3200
|
-
return
|
|
3201
|
-
function
|
|
3202
|
-
return r.enter("mathText"), r.enter("mathTextSequence"),
|
|
3257
|
+
return g;
|
|
3258
|
+
function g(u) {
|
|
3259
|
+
return r.enter("mathText"), r.enter("mathTextSequence"), m(u);
|
|
3203
3260
|
}
|
|
3204
|
-
function
|
|
3205
|
-
return
|
|
3261
|
+
function m(u) {
|
|
3262
|
+
return u === 36 ? (r.consume(u), c++, m) : c < 2 && !n ? l(u) : (r.exit("mathTextSequence"), f(u));
|
|
3206
3263
|
}
|
|
3207
|
-
function
|
|
3208
|
-
return
|
|
3264
|
+
function f(u) {
|
|
3265
|
+
return u === null ? l(u) : u === 36 ? (p = r.enter("mathTextSequence"), s = 0, k(u)) : u === 32 ? (r.enter("space"), r.consume(u), r.exit("space"), f) : j(u) ? (r.enter("lineEnding"), r.consume(u), r.exit("lineEnding"), f) : (r.enter("mathTextData"), b(u));
|
|
3209
3266
|
}
|
|
3210
|
-
function
|
|
3211
|
-
return
|
|
3267
|
+
function b(u) {
|
|
3268
|
+
return u === null || u === 32 || u === 36 || j(u) ? (r.exit("mathTextData"), f(u)) : (r.consume(u), b);
|
|
3212
3269
|
}
|
|
3213
|
-
function
|
|
3214
|
-
return
|
|
3270
|
+
function k(u) {
|
|
3271
|
+
return u === 36 ? (r.consume(u), s++, k) : s === c ? (r.exit("mathTextSequence"), r.exit("mathText"), a(u)) : (p.type = "mathTextData", b(u));
|
|
3215
3272
|
}
|
|
3216
3273
|
}
|
|
3217
3274
|
}
|
|
3218
|
-
function
|
|
3275
|
+
function fr(e) {
|
|
3219
3276
|
let t = e.length - 4, n = 3, o, r;
|
|
3220
3277
|
if ((e[n][1].type === "lineEnding" || e[n][1].type === "space") && (e[t][1].type === "lineEnding" || e[t][1].type === "space")) {
|
|
3221
3278
|
for (o = n; ++o < t; )
|
|
@@ -3228,40 +3285,40 @@ function mr(e) {
|
|
|
3228
3285
|
r === void 0 ? o !== t && e[o][1].type !== "lineEnding" && (r = o) : (o === t || e[o][1].type === "lineEnding") && (e[r][1].type = "mathTextData", o !== r + 2 && (e[r][1].end = e[o - 1][1].end, e.splice(r + 2, o - r - 2), t -= o - r - 2, o = r + 2), r = void 0);
|
|
3229
3286
|
return e;
|
|
3230
3287
|
}
|
|
3231
|
-
function
|
|
3288
|
+
function br(e) {
|
|
3232
3289
|
return e !== 36 || this.events[this.events.length - 1][1].type === "characterEscape";
|
|
3233
3290
|
}
|
|
3234
|
-
function
|
|
3291
|
+
function yr(e) {
|
|
3235
3292
|
return {
|
|
3236
3293
|
flow: {
|
|
3237
|
-
36:
|
|
3294
|
+
36: pr
|
|
3238
3295
|
},
|
|
3239
3296
|
text: {
|
|
3240
|
-
36:
|
|
3297
|
+
36: mr(e)
|
|
3241
3298
|
}
|
|
3242
3299
|
};
|
|
3243
3300
|
}
|
|
3244
|
-
const
|
|
3245
|
-
function
|
|
3301
|
+
const kr = {};
|
|
3302
|
+
function vr(e) {
|
|
3246
3303
|
const t = (
|
|
3247
3304
|
/** @type {Processor} */
|
|
3248
3305
|
this
|
|
3249
|
-
), n = e ||
|
|
3250
|
-
r.push(
|
|
3306
|
+
), n = e || kr, o = t.data(), r = o.micromarkExtensions || (o.micromarkExtensions = []), a = o.fromMarkdownExtensions || (o.fromMarkdownExtensions = []), l = o.toMarkdownExtensions || (o.toMarkdownExtensions = []);
|
|
3307
|
+
r.push(yr(n)), a.push(ur()), l.push(dr(n));
|
|
3251
3308
|
}
|
|
3252
|
-
function
|
|
3309
|
+
function wr(e = {}) {
|
|
3253
3310
|
var t, n;
|
|
3254
|
-
let o = [
|
|
3311
|
+
let o = [vr, { singleDollarTextMath: (t = e.singleDollarTextMath) != null ? t : !1 }], r = [sr, { errorColor: (n = e.errorColor) != null ? n : "var(--color-muted-foreground)" }];
|
|
3255
3312
|
return { name: "katex", type: "math", remarkPlugin: o, rehypePlugin: r, getStyles() {
|
|
3256
3313
|
return "katex/dist/katex.min.css";
|
|
3257
3314
|
} };
|
|
3258
3315
|
}
|
|
3259
|
-
var dt =
|
|
3260
|
-
const je =
|
|
3316
|
+
var dt = wr();
|
|
3317
|
+
const je = pe(
|
|
3261
3318
|
({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
3262
|
-
|
|
3319
|
+
Rn,
|
|
3263
3320
|
{
|
|
3264
|
-
className:
|
|
3321
|
+
className: y("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 code-bg ", e),
|
|
3265
3322
|
...t,
|
|
3266
3323
|
remarkPlugins: [dt.remarkPlugin, ...t.remarkPlugins || []],
|
|
3267
3324
|
rehypePlugins: [dt.rehypePlugin, ...t.rehypePlugins || []]
|
|
@@ -3270,7 +3327,7 @@ const je = de(
|
|
|
3270
3327
|
(e, t) => e.children === t.children
|
|
3271
3328
|
);
|
|
3272
3329
|
je.displayName = "Response";
|
|
3273
|
-
function
|
|
3330
|
+
function _r({
|
|
3274
3331
|
part: e,
|
|
3275
3332
|
message: t,
|
|
3276
3333
|
status: n,
|
|
@@ -3281,39 +3338,40 @@ function wr({
|
|
|
3281
3338
|
feedback: c,
|
|
3282
3339
|
handleFeedback: s,
|
|
3283
3340
|
copyHost: p,
|
|
3284
|
-
feedbackEnabled:
|
|
3285
|
-
retryEnabled:
|
|
3341
|
+
feedbackEnabled: g,
|
|
3342
|
+
retryEnabled: m
|
|
3286
3343
|
}) {
|
|
3287
|
-
const { t:
|
|
3344
|
+
const { t: f } = M(["chat"]), { textComponents: b, remarkPlugins: k, rehypePlugins: u } = te(), w = ge(e.text), v = !o && r && (n === "streaming" || n === "submitted"), h = l || (() => {
|
|
3288
3345
|
});
|
|
3289
|
-
return /* @__PURE__ */
|
|
3290
|
-
/* @__PURE__ */ i(
|
|
3346
|
+
return /* @__PURE__ */ _("div", { className: "group py-2 first:pt-4 animate-in-bubble", children: [
|
|
3347
|
+
/* @__PURE__ */ i(Dt, { from: t.role, children: /* @__PURE__ */ i(Pt, { dir: w, children: /* @__PURE__ */ i(
|
|
3291
3348
|
je,
|
|
3292
3349
|
{
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3350
|
+
className: y(t.role === "user" && "whitespace-pre-wrap break-words"),
|
|
3351
|
+
components: b,
|
|
3352
|
+
remarkPlugins: k,
|
|
3353
|
+
rehypePlugins: u,
|
|
3296
3354
|
children: e.text
|
|
3297
3355
|
}
|
|
3298
3356
|
) }) }),
|
|
3299
|
-
a && !
|
|
3300
|
-
t.role === "assistant" && /* @__PURE__ */
|
|
3301
|
-
r &&
|
|
3357
|
+
a && !v && /* @__PURE__ */ _(po, { className: y("mt-1.5 ml-0.5", t.role === "user" && "justify-end"), children: [
|
|
3358
|
+
t.role === "assistant" && /* @__PURE__ */ _(Z, { children: [
|
|
3359
|
+
r && m && /* @__PURE__ */ i(
|
|
3302
3360
|
se,
|
|
3303
3361
|
{
|
|
3304
|
-
onClick: () =>
|
|
3305
|
-
label:
|
|
3306
|
-
tooltip:
|
|
3362
|
+
onClick: () => h(t.id),
|
|
3363
|
+
label: f("retry"),
|
|
3364
|
+
tooltip: f("retry"),
|
|
3307
3365
|
children: /* @__PURE__ */ i(yn, { className: "size-3" })
|
|
3308
3366
|
}
|
|
3309
3367
|
),
|
|
3310
|
-
|
|
3368
|
+
g && /* @__PURE__ */ _(Z, { children: [
|
|
3311
3369
|
/* @__PURE__ */ i(
|
|
3312
3370
|
se,
|
|
3313
3371
|
{
|
|
3314
3372
|
onClick: () => s("like"),
|
|
3315
|
-
label:
|
|
3316
|
-
tooltip:
|
|
3373
|
+
label: f("like"),
|
|
3374
|
+
tooltip: f("like"),
|
|
3317
3375
|
className: c === "like" ? "text-primary" : "",
|
|
3318
3376
|
children: /* @__PURE__ */ i(kn, { className: "size-3" })
|
|
3319
3377
|
}
|
|
@@ -3322,8 +3380,8 @@ function wr({
|
|
|
3322
3380
|
se,
|
|
3323
3381
|
{
|
|
3324
3382
|
onClick: () => s("dislike"),
|
|
3325
|
-
label:
|
|
3326
|
-
tooltip:
|
|
3383
|
+
label: f("dislike"),
|
|
3384
|
+
tooltip: f("dislike"),
|
|
3327
3385
|
className: c === "dislike" ? "text-destructive" : "",
|
|
3328
3386
|
children: /* @__PURE__ */ i(vn, { className: "size-3" })
|
|
3329
3387
|
}
|
|
@@ -3336,20 +3394,20 @@ function wr({
|
|
|
3336
3394
|
onClick: () => {
|
|
3337
3395
|
p(e.text);
|
|
3338
3396
|
},
|
|
3339
|
-
label:
|
|
3340
|
-
tooltip:
|
|
3341
|
-
children: /* @__PURE__ */ i(
|
|
3397
|
+
label: f("copy"),
|
|
3398
|
+
tooltip: f("copy"),
|
|
3399
|
+
children: /* @__PURE__ */ i(Tt, { className: "size-3" })
|
|
3342
3400
|
}
|
|
3343
3401
|
)
|
|
3344
3402
|
] })
|
|
3345
3403
|
] });
|
|
3346
3404
|
}
|
|
3347
|
-
const
|
|
3348
|
-
const e = Fe(
|
|
3405
|
+
const Qt = de(null), xr = () => {
|
|
3406
|
+
const e = Fe(Qt);
|
|
3349
3407
|
if (!e)
|
|
3350
3408
|
throw new Error("Reasoning components must be used within Reasoning");
|
|
3351
3409
|
return e;
|
|
3352
|
-
},
|
|
3410
|
+
}, Sr = 1e3, Er = 1e3, en = pe(
|
|
3353
3411
|
({
|
|
3354
3412
|
className: e,
|
|
3355
3413
|
isStreaming: t = !1,
|
|
@@ -3365,41 +3423,41 @@ const Jt = pe(null), _r = () => {
|
|
|
3365
3423
|
prop: n,
|
|
3366
3424
|
defaultProp: o,
|
|
3367
3425
|
onChange: r
|
|
3368
|
-
}), [
|
|
3426
|
+
}), [g, m] = We({
|
|
3369
3427
|
prop: a,
|
|
3370
3428
|
defaultProp: 0
|
|
3371
|
-
}), [
|
|
3372
|
-
|
|
3373
|
-
t ?
|
|
3374
|
-
}, [t,
|
|
3375
|
-
if (o && !t && s && !
|
|
3376
|
-
const
|
|
3377
|
-
p(!1),
|
|
3378
|
-
},
|
|
3429
|
+
}), [f, b] = B(!1), [k, u] = B(null);
|
|
3430
|
+
J(() => {
|
|
3431
|
+
t ? k === null && u(Date.now()) : k !== null && (m(Math.ceil((Date.now() - k) / Er)), u(null));
|
|
3432
|
+
}, [t, k, m]), J(() => {
|
|
3433
|
+
if (o && !t && s && !f) {
|
|
3434
|
+
const v = setTimeout(() => {
|
|
3435
|
+
p(!1), b(!0);
|
|
3436
|
+
}, Sr);
|
|
3379
3437
|
return () => {
|
|
3380
|
-
clearTimeout(
|
|
3438
|
+
clearTimeout(v);
|
|
3381
3439
|
};
|
|
3382
3440
|
}
|
|
3383
|
-
}, [t, s, o, p,
|
|
3384
|
-
const
|
|
3385
|
-
p(
|
|
3441
|
+
}, [t, s, o, p, f]);
|
|
3442
|
+
const w = (v) => {
|
|
3443
|
+
p(v);
|
|
3386
3444
|
};
|
|
3387
|
-
return /* @__PURE__ */ i(
|
|
3445
|
+
return /* @__PURE__ */ i(Qt.Provider, { value: { isStreaming: t, isOpen: s, setIsOpen: p, duration: g }, children: /* @__PURE__ */ i(
|
|
3388
3446
|
ze,
|
|
3389
3447
|
{
|
|
3390
|
-
className:
|
|
3391
|
-
onOpenChange:
|
|
3448
|
+
className: y("not-prose mb-4", e),
|
|
3449
|
+
onOpenChange: w,
|
|
3392
3450
|
open: s,
|
|
3393
3451
|
...c,
|
|
3394
3452
|
children: l
|
|
3395
3453
|
}
|
|
3396
3454
|
) });
|
|
3397
3455
|
}
|
|
3398
|
-
),
|
|
3399
|
-
const { isStreaming: o, isOpen: r, duration: a } =
|
|
3400
|
-
return /* @__PURE__ */ i(Ue, { className:
|
|
3456
|
+
), tn = pe(({ className: e, children: t, ...n }) => {
|
|
3457
|
+
const { isStreaming: o, isOpen: r, duration: a } = xr();
|
|
3458
|
+
return /* @__PURE__ */ i(Ue, { className: y("flex items-center gap-2 text-muted-foreground text-sm", e), ...n, children: t ?? /* @__PURE__ */ _(Z, { children: [
|
|
3401
3459
|
/* @__PURE__ */ i(wn, { className: "size-4" }),
|
|
3402
|
-
o || a === 0 ? /* @__PURE__ */ i("p", { children: "Thinking..." }) : /* @__PURE__ */
|
|
3460
|
+
o || a === 0 ? /* @__PURE__ */ i("p", { children: "Thinking..." }) : /* @__PURE__ */ _("p", { children: [
|
|
3403
3461
|
"Thought for ",
|
|
3404
3462
|
a,
|
|
3405
3463
|
" ",
|
|
@@ -3408,14 +3466,14 @@ const Jt = pe(null), _r = () => {
|
|
|
3408
3466
|
/* @__PURE__ */ i(
|
|
3409
3467
|
ie,
|
|
3410
3468
|
{
|
|
3411
|
-
className:
|
|
3469
|
+
className: y("size-4 text-muted-foreground transition-transform", r ? "rotate-180" : "rotate-0")
|
|
3412
3470
|
}
|
|
3413
3471
|
)
|
|
3414
3472
|
] }) });
|
|
3415
|
-
}),
|
|
3473
|
+
}), nn = pe(({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
3416
3474
|
$e,
|
|
3417
3475
|
{
|
|
3418
|
-
className:
|
|
3476
|
+
className: y(
|
|
3419
3477
|
"mt-4 text-base",
|
|
3420
3478
|
"data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",
|
|
3421
3479
|
e
|
|
@@ -3424,10 +3482,10 @@ const Jt = pe(null), _r = () => {
|
|
|
3424
3482
|
children: /* @__PURE__ */ i(je, { className: "grid gap-2", children: t })
|
|
3425
3483
|
}
|
|
3426
3484
|
));
|
|
3427
|
-
|
|
3428
|
-
|
|
3429
|
-
|
|
3430
|
-
function
|
|
3485
|
+
en.displayName = "Reasoning";
|
|
3486
|
+
tn.displayName = "ReasoningTrigger";
|
|
3487
|
+
nn.displayName = "ReasoningContent";
|
|
3488
|
+
function Nr({
|
|
3431
3489
|
part: e,
|
|
3432
3490
|
status: t,
|
|
3433
3491
|
index: n,
|
|
@@ -3435,19 +3493,19 @@ function Er({
|
|
|
3435
3493
|
lastMessage: r
|
|
3436
3494
|
}) {
|
|
3437
3495
|
const a = ge(e.text);
|
|
3438
|
-
return /* @__PURE__ */
|
|
3439
|
-
|
|
3496
|
+
return /* @__PURE__ */ _(
|
|
3497
|
+
en,
|
|
3440
3498
|
{
|
|
3441
3499
|
className: "w-full animate-in-bubble",
|
|
3442
3500
|
isStreaming: t === "streaming" && n === o - 1 && r,
|
|
3443
3501
|
children: [
|
|
3444
|
-
/* @__PURE__ */ i(
|
|
3445
|
-
/* @__PURE__ */ i(
|
|
3502
|
+
/* @__PURE__ */ i(tn, {}),
|
|
3503
|
+
/* @__PURE__ */ i(nn, { dir: a, children: e.text })
|
|
3446
3504
|
]
|
|
3447
3505
|
}
|
|
3448
3506
|
);
|
|
3449
3507
|
}
|
|
3450
|
-
const
|
|
3508
|
+
const Tr = De(
|
|
3451
3509
|
"inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
|
|
3452
3510
|
{
|
|
3453
3511
|
variants: {
|
|
@@ -3463,32 +3521,32 @@ const Nr = Pe(
|
|
|
3463
3521
|
}
|
|
3464
3522
|
}
|
|
3465
3523
|
);
|
|
3466
|
-
function
|
|
3524
|
+
function Cr({
|
|
3467
3525
|
className: e,
|
|
3468
3526
|
variant: t,
|
|
3469
3527
|
asChild: n = !1,
|
|
3470
3528
|
...o
|
|
3471
3529
|
}) {
|
|
3472
|
-
return /* @__PURE__ */ i(n ?
|
|
3530
|
+
return /* @__PURE__ */ i(n ? Et : "span", { "data-slot": "badge", className: y(Tr({ variant: t }), e), ...o });
|
|
3473
3531
|
}
|
|
3474
|
-
function
|
|
3532
|
+
function Ar({ ...e }) {
|
|
3475
3533
|
return /* @__PURE__ */ i(H.Root, { "data-slot": "dialog", ...e });
|
|
3476
3534
|
}
|
|
3477
|
-
function
|
|
3535
|
+
function Ir({ ...e }) {
|
|
3478
3536
|
return /* @__PURE__ */ i(H.Trigger, { "data-slot": "dialog-trigger", ...e });
|
|
3479
3537
|
}
|
|
3480
|
-
function
|
|
3538
|
+
function Rr({ ...e }) {
|
|
3481
3539
|
return /* @__PURE__ */ i(H.Portal, { "data-slot": "dialog-portal", ...e });
|
|
3482
3540
|
}
|
|
3483
|
-
function
|
|
3541
|
+
function xi({ ...e }) {
|
|
3484
3542
|
return /* @__PURE__ */ i(H.Close, { "data-slot": "dialog-close", ...e });
|
|
3485
3543
|
}
|
|
3486
|
-
function
|
|
3544
|
+
function Or({ className: e, ...t }) {
|
|
3487
3545
|
return /* @__PURE__ */ i(
|
|
3488
3546
|
H.Overlay,
|
|
3489
3547
|
{
|
|
3490
3548
|
"data-slot": "dialog-overlay",
|
|
3491
|
-
className:
|
|
3549
|
+
className: y(
|
|
3492
3550
|
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
|
|
3493
3551
|
e
|
|
3494
3552
|
),
|
|
@@ -3496,26 +3554,26 @@ function Rr({ className: e, ...t }) {
|
|
|
3496
3554
|
}
|
|
3497
3555
|
);
|
|
3498
3556
|
}
|
|
3499
|
-
function
|
|
3557
|
+
function Lr({
|
|
3500
3558
|
className: e,
|
|
3501
3559
|
children: t,
|
|
3502
3560
|
showCloseButton: n = !0,
|
|
3503
3561
|
...o
|
|
3504
3562
|
}) {
|
|
3505
|
-
return /* @__PURE__ */
|
|
3506
|
-
/* @__PURE__ */ i(
|
|
3507
|
-
/* @__PURE__ */
|
|
3563
|
+
return /* @__PURE__ */ _(Rr, { "data-slot": "dialog-portal", children: [
|
|
3564
|
+
/* @__PURE__ */ i(Or, {}),
|
|
3565
|
+
/* @__PURE__ */ _(
|
|
3508
3566
|
H.Content,
|
|
3509
3567
|
{
|
|
3510
3568
|
"data-slot": "dialog-content",
|
|
3511
|
-
className:
|
|
3569
|
+
className: y(
|
|
3512
3570
|
"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",
|
|
3513
3571
|
e
|
|
3514
3572
|
),
|
|
3515
3573
|
...o,
|
|
3516
3574
|
children: [
|
|
3517
3575
|
t,
|
|
3518
|
-
n && /* @__PURE__ */
|
|
3576
|
+
n && /* @__PURE__ */ _(
|
|
3519
3577
|
H.Close,
|
|
3520
3578
|
{
|
|
3521
3579
|
"data-slot": "dialog-close",
|
|
@@ -3531,47 +3589,47 @@ function Or({
|
|
|
3531
3589
|
)
|
|
3532
3590
|
] });
|
|
3533
3591
|
}
|
|
3534
|
-
function
|
|
3592
|
+
function Fr({ className: e, ...t }) {
|
|
3535
3593
|
return /* @__PURE__ */ i(
|
|
3536
3594
|
"div",
|
|
3537
3595
|
{
|
|
3538
3596
|
"data-slot": "dialog-header",
|
|
3539
|
-
className:
|
|
3597
|
+
className: y("flex flex-col gap-2 text-center sm:text-start", e),
|
|
3540
3598
|
...t
|
|
3541
3599
|
}
|
|
3542
3600
|
);
|
|
3543
3601
|
}
|
|
3544
|
-
function
|
|
3602
|
+
function Si({ className: e, ...t }) {
|
|
3545
3603
|
return /* @__PURE__ */ i(
|
|
3546
3604
|
"div",
|
|
3547
3605
|
{
|
|
3548
3606
|
"data-slot": "dialog-footer",
|
|
3549
|
-
className:
|
|
3607
|
+
className: y("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", e),
|
|
3550
3608
|
...t
|
|
3551
3609
|
}
|
|
3552
3610
|
);
|
|
3553
3611
|
}
|
|
3554
|
-
function
|
|
3612
|
+
function Dr({ className: e, ...t }) {
|
|
3555
3613
|
return /* @__PURE__ */ i(
|
|
3556
3614
|
H.Title,
|
|
3557
3615
|
{
|
|
3558
3616
|
"data-slot": "dialog-title",
|
|
3559
|
-
className:
|
|
3617
|
+
className: y("text-xl leading-none font-semibold", e),
|
|
3560
3618
|
...t
|
|
3561
3619
|
}
|
|
3562
3620
|
);
|
|
3563
3621
|
}
|
|
3564
|
-
function
|
|
3622
|
+
function Ei({ className: e, ...t }) {
|
|
3565
3623
|
return /* @__PURE__ */ i(
|
|
3566
3624
|
H.Description,
|
|
3567
3625
|
{
|
|
3568
3626
|
"data-slot": "dialog-description",
|
|
3569
|
-
className:
|
|
3627
|
+
className: y("text-muted-foreground text-base", e),
|
|
3570
3628
|
...t
|
|
3571
3629
|
}
|
|
3572
3630
|
);
|
|
3573
3631
|
}
|
|
3574
|
-
const
|
|
3632
|
+
const Pr = {
|
|
3575
3633
|
'code[class*="language-"]': {
|
|
3576
3634
|
background: "hsl(220, 13%, 18%)",
|
|
3577
3635
|
color: "hsl(220, 14%, 71%)",
|
|
@@ -4071,7 +4129,7 @@ const Dr = {
|
|
|
4071
4129
|
".prism-previewer-easing.prism-previewer-easing line": {
|
|
4072
4130
|
stroke: "hsl(220, 14%, 71%)"
|
|
4073
4131
|
}
|
|
4074
|
-
},
|
|
4132
|
+
}, Mr = {
|
|
4075
4133
|
'code[class*="language-"]': {
|
|
4076
4134
|
background: "hsl(230, 1%, 98%)",
|
|
4077
4135
|
color: "hsl(230, 8%, 24%)",
|
|
@@ -4564,7 +4622,7 @@ function q(e) {
|
|
|
4564
4622
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
4565
4623
|
}
|
|
4566
4624
|
var ve, pt;
|
|
4567
|
-
function
|
|
4625
|
+
function zr() {
|
|
4568
4626
|
if (pt) return ve;
|
|
4569
4627
|
pt = 1, ve = e, e.displayName = "python", e.aliases = ["py"];
|
|
4570
4628
|
function e(t) {
|
|
@@ -4632,10 +4690,10 @@ function Mr() {
|
|
|
4632
4690
|
}
|
|
4633
4691
|
return ve;
|
|
4634
4692
|
}
|
|
4635
|
-
var
|
|
4636
|
-
const
|
|
4693
|
+
var Ur = zr();
|
|
4694
|
+
const $r = /* @__PURE__ */ q(Ur);
|
|
4637
4695
|
var we, ht;
|
|
4638
|
-
function
|
|
4696
|
+
function Br() {
|
|
4639
4697
|
if (ht) return we;
|
|
4640
4698
|
ht = 1, we = e, e.displayName = "javascript", e.aliases = ["js"];
|
|
4641
4699
|
function e(t) {
|
|
@@ -4764,10 +4822,10 @@ function $r() {
|
|
|
4764
4822
|
}
|
|
4765
4823
|
return we;
|
|
4766
4824
|
}
|
|
4767
|
-
var
|
|
4768
|
-
const
|
|
4825
|
+
var Hr = Br();
|
|
4826
|
+
const qr = /* @__PURE__ */ q(Hr);
|
|
4769
4827
|
var _e, gt;
|
|
4770
|
-
function
|
|
4828
|
+
function jr() {
|
|
4771
4829
|
if (gt) return _e;
|
|
4772
4830
|
gt = 1, _e = e, e.displayName = "typescript", e.aliases = ["ts"];
|
|
4773
4831
|
function e(t) {
|
|
@@ -4819,10 +4877,10 @@ function qr() {
|
|
|
4819
4877
|
}
|
|
4820
4878
|
return _e;
|
|
4821
4879
|
}
|
|
4822
|
-
var
|
|
4823
|
-
const
|
|
4880
|
+
var Gr = jr();
|
|
4881
|
+
const Vr = /* @__PURE__ */ q(Gr);
|
|
4824
4882
|
var xe, mt;
|
|
4825
|
-
function
|
|
4883
|
+
function Wr() {
|
|
4826
4884
|
if (mt) return xe;
|
|
4827
4885
|
mt = 1, xe = e, e.displayName = "json", e.aliases = ["webmanifest"];
|
|
4828
4886
|
function e(t) {
|
|
@@ -4853,10 +4911,10 @@ function Vr() {
|
|
|
4853
4911
|
}
|
|
4854
4912
|
return xe;
|
|
4855
4913
|
}
|
|
4856
|
-
var
|
|
4857
|
-
const
|
|
4914
|
+
var Yr = Wr();
|
|
4915
|
+
const Xr = /* @__PURE__ */ q(Yr);
|
|
4858
4916
|
var Se, ft;
|
|
4859
|
-
function
|
|
4917
|
+
function Kr() {
|
|
4860
4918
|
if (ft) return Se;
|
|
4861
4919
|
ft = 1, Se = e, e.displayName = "bash", e.aliases = ["shell"];
|
|
4862
4920
|
function e(t) {
|
|
@@ -5075,10 +5133,10 @@ function Xr() {
|
|
|
5075
5133
|
}
|
|
5076
5134
|
return Se;
|
|
5077
5135
|
}
|
|
5078
|
-
var
|
|
5079
|
-
const
|
|
5136
|
+
var Zr = Kr();
|
|
5137
|
+
const Jr = /* @__PURE__ */ q(Zr);
|
|
5080
5138
|
var Ee, bt;
|
|
5081
|
-
function
|
|
5139
|
+
function Qr() {
|
|
5082
5140
|
if (bt) return Ee;
|
|
5083
5141
|
bt = 1, Ee = e, e.displayName = "sql", e.aliases = [];
|
|
5084
5142
|
function e(t) {
|
|
@@ -5118,10 +5176,10 @@ function Jr() {
|
|
|
5118
5176
|
}
|
|
5119
5177
|
return Ee;
|
|
5120
5178
|
}
|
|
5121
|
-
var
|
|
5122
|
-
const
|
|
5179
|
+
var ea = Qr();
|
|
5180
|
+
const ta = /* @__PURE__ */ q(ea);
|
|
5123
5181
|
var Ne, yt;
|
|
5124
|
-
function
|
|
5182
|
+
function na() {
|
|
5125
5183
|
if (yt) return Ne;
|
|
5126
5184
|
yt = 1, Ne = e, e.displayName = "yaml", e.aliases = ["yml"];
|
|
5127
5185
|
function e(t) {
|
|
@@ -5132,14 +5190,14 @@ function ta() {
|
|
|
5132
5190
|
return /[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source;
|
|
5133
5191
|
}
|
|
5134
5192
|
), c = /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;
|
|
5135
|
-
function s(p,
|
|
5136
|
-
|
|
5137
|
-
var
|
|
5193
|
+
function s(p, g) {
|
|
5194
|
+
g = (g || "").replace(/m/g, "") + "m";
|
|
5195
|
+
var m = /([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g, function() {
|
|
5138
5196
|
return a;
|
|
5139
5197
|
}).replace(/<<value>>/g, function() {
|
|
5140
5198
|
return p;
|
|
5141
5199
|
});
|
|
5142
|
-
return RegExp(
|
|
5200
|
+
return RegExp(m, g);
|
|
5143
5201
|
}
|
|
5144
5202
|
n.languages.yaml = {
|
|
5145
5203
|
scalar: {
|
|
@@ -5209,19 +5267,19 @@ function ta() {
|
|
|
5209
5267
|
}
|
|
5210
5268
|
return Ne;
|
|
5211
5269
|
}
|
|
5212
|
-
var
|
|
5213
|
-
const
|
|
5270
|
+
var oa = na();
|
|
5271
|
+
const ra = /* @__PURE__ */ q(oa);
|
|
5214
5272
|
var Te, kt;
|
|
5215
|
-
function
|
|
5273
|
+
function aa() {
|
|
5216
5274
|
if (kt) return Te;
|
|
5217
5275
|
kt = 1, Te = e, e.displayName = "markdown", e.aliases = ["md"];
|
|
5218
5276
|
function e(t) {
|
|
5219
5277
|
(function(n) {
|
|
5220
5278
|
var o = /(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;
|
|
5221
|
-
function r(
|
|
5222
|
-
return
|
|
5279
|
+
function r(f) {
|
|
5280
|
+
return f = f.replace(/<inner>/g, function() {
|
|
5223
5281
|
return o;
|
|
5224
|
-
}), RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + "(?:" +
|
|
5282
|
+
}), RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + "(?:" + f + ")");
|
|
5225
5283
|
}
|
|
5226
5284
|
var a = /(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source, l = /\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(
|
|
5227
5285
|
/__/g,
|
|
@@ -5464,55 +5522,55 @@ function ra() {
|
|
|
5464
5522
|
}
|
|
5465
5523
|
}
|
|
5466
5524
|
}
|
|
5467
|
-
}), ["url", "bold", "italic", "strike"].forEach(function(
|
|
5468
|
-
["url", "bold", "italic", "strike", "code-snippet"].forEach(function(
|
|
5469
|
-
|
|
5525
|
+
}), ["url", "bold", "italic", "strike"].forEach(function(f) {
|
|
5526
|
+
["url", "bold", "italic", "strike", "code-snippet"].forEach(function(b) {
|
|
5527
|
+
f !== b && (n.languages.markdown[f].inside.content.inside[b] = n.languages.markdown[b]);
|
|
5470
5528
|
});
|
|
5471
|
-
}), n.hooks.add("after-tokenize", function(
|
|
5472
|
-
if (
|
|
5529
|
+
}), n.hooks.add("after-tokenize", function(f) {
|
|
5530
|
+
if (f.language !== "markdown" && f.language !== "md")
|
|
5473
5531
|
return;
|
|
5474
|
-
function
|
|
5475
|
-
if (!(!
|
|
5476
|
-
for (var
|
|
5477
|
-
var
|
|
5478
|
-
if (
|
|
5479
|
-
|
|
5532
|
+
function b(k) {
|
|
5533
|
+
if (!(!k || typeof k == "string"))
|
|
5534
|
+
for (var u = 0, w = k.length; u < w; u++) {
|
|
5535
|
+
var v = k[u];
|
|
5536
|
+
if (v.type !== "code") {
|
|
5537
|
+
b(v.content);
|
|
5480
5538
|
continue;
|
|
5481
5539
|
}
|
|
5482
|
-
var
|
|
5483
|
-
if (
|
|
5484
|
-
var E =
|
|
5540
|
+
var h = v.content[1], C = v.content[3];
|
|
5541
|
+
if (h && C && h.type === "code-language" && C.type === "code-block" && typeof h.content == "string") {
|
|
5542
|
+
var E = h.content.replace(/\b#/g, "sharp").replace(/\b\+\+/g, "pp");
|
|
5485
5543
|
E = (/[a-z][\w-]*/i.exec(E) || [""])[0].toLowerCase();
|
|
5486
|
-
var
|
|
5487
|
-
|
|
5544
|
+
var R = "language-" + E;
|
|
5545
|
+
C.alias ? typeof C.alias == "string" ? C.alias = [C.alias, R] : C.alias.push(R) : C.alias = [R];
|
|
5488
5546
|
}
|
|
5489
5547
|
}
|
|
5490
5548
|
}
|
|
5491
|
-
|
|
5492
|
-
}), n.hooks.add("wrap", function(
|
|
5493
|
-
if (
|
|
5494
|
-
for (var
|
|
5495
|
-
var
|
|
5496
|
-
if (
|
|
5497
|
-
|
|
5549
|
+
b(f.tokens);
|
|
5550
|
+
}), n.hooks.add("wrap", function(f) {
|
|
5551
|
+
if (f.type === "code-block") {
|
|
5552
|
+
for (var b = "", k = 0, u = f.classes.length; k < u; k++) {
|
|
5553
|
+
var w = f.classes[k], v = /language-(.+)/.exec(w);
|
|
5554
|
+
if (v) {
|
|
5555
|
+
b = v[1];
|
|
5498
5556
|
break;
|
|
5499
5557
|
}
|
|
5500
5558
|
}
|
|
5501
|
-
var
|
|
5502
|
-
if (
|
|
5503
|
-
|
|
5504
|
-
f
|
|
5505
|
-
|
|
5506
|
-
|
|
5559
|
+
var h = n.languages[b];
|
|
5560
|
+
if (h)
|
|
5561
|
+
f.content = n.highlight(
|
|
5562
|
+
m(f.content.value),
|
|
5563
|
+
h,
|
|
5564
|
+
b
|
|
5507
5565
|
);
|
|
5508
|
-
else if (
|
|
5509
|
-
var
|
|
5510
|
-
|
|
5511
|
-
var E = document.getElementById(
|
|
5566
|
+
else if (b && b !== "none" && n.plugins.autoloader) {
|
|
5567
|
+
var C = "md-" + (/* @__PURE__ */ new Date()).valueOf() + "-" + Math.floor(Math.random() * 1e16);
|
|
5568
|
+
f.attributes.id = C, n.plugins.autoloader.loadLanguages(b, function() {
|
|
5569
|
+
var E = document.getElementById(C);
|
|
5512
5570
|
E && (E.innerHTML = n.highlight(
|
|
5513
5571
|
E.textContent,
|
|
5514
|
-
n.languages[
|
|
5515
|
-
|
|
5572
|
+
n.languages[b],
|
|
5573
|
+
b
|
|
5516
5574
|
));
|
|
5517
5575
|
});
|
|
5518
5576
|
}
|
|
@@ -5523,35 +5581,35 @@ function ra() {
|
|
|
5523
5581
|
lt: "<",
|
|
5524
5582
|
gt: ">",
|
|
5525
5583
|
quot: '"'
|
|
5526
|
-
},
|
|
5527
|
-
function f
|
|
5528
|
-
var
|
|
5529
|
-
return
|
|
5530
|
-
if (
|
|
5531
|
-
var
|
|
5532
|
-
return
|
|
5584
|
+
}, g = String.fromCodePoint || String.fromCharCode;
|
|
5585
|
+
function m(f) {
|
|
5586
|
+
var b = f.replace(s, "");
|
|
5587
|
+
return b = b.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi, function(k, u) {
|
|
5588
|
+
if (u = u.toLowerCase(), u[0] === "#") {
|
|
5589
|
+
var w;
|
|
5590
|
+
return u[1] === "x" ? w = parseInt(u.slice(2), 16) : w = Number(u.slice(1)), g(w);
|
|
5533
5591
|
} else {
|
|
5534
|
-
var
|
|
5535
|
-
return
|
|
5592
|
+
var v = p[u];
|
|
5593
|
+
return v || k;
|
|
5536
5594
|
}
|
|
5537
|
-
}),
|
|
5595
|
+
}), b;
|
|
5538
5596
|
}
|
|
5539
5597
|
n.languages.md = n.languages.markdown;
|
|
5540
5598
|
})(t);
|
|
5541
5599
|
}
|
|
5542
5600
|
return Te;
|
|
5543
5601
|
}
|
|
5544
|
-
var
|
|
5545
|
-
const
|
|
5546
|
-
U.registerLanguage("python",
|
|
5547
|
-
U.registerLanguage("javascript",
|
|
5548
|
-
U.registerLanguage("typescript",
|
|
5549
|
-
U.registerLanguage("json",
|
|
5550
|
-
U.registerLanguage("bash",
|
|
5551
|
-
U.registerLanguage("sql",
|
|
5552
|
-
U.registerLanguage("yaml",
|
|
5553
|
-
U.registerLanguage("markdown",
|
|
5554
|
-
const
|
|
5602
|
+
var ia = aa();
|
|
5603
|
+
const la = /* @__PURE__ */ q(ia);
|
|
5604
|
+
U.registerLanguage("python", $r);
|
|
5605
|
+
U.registerLanguage("javascript", qr);
|
|
5606
|
+
U.registerLanguage("typescript", Vr);
|
|
5607
|
+
U.registerLanguage("json", Xr);
|
|
5608
|
+
U.registerLanguage("bash", Jr);
|
|
5609
|
+
U.registerLanguage("sql", ta);
|
|
5610
|
+
U.registerLanguage("yaml", ra);
|
|
5611
|
+
U.registerLanguage("markdown", la);
|
|
5612
|
+
const sa = de({
|
|
5555
5613
|
code: ""
|
|
5556
5614
|
}), Le = ({
|
|
5557
5615
|
code: e,
|
|
@@ -5560,13 +5618,13 @@ const la = pe({
|
|
|
5560
5618
|
className: o,
|
|
5561
5619
|
children: r,
|
|
5562
5620
|
...a
|
|
5563
|
-
}) => /* @__PURE__ */ i(
|
|
5621
|
+
}) => /* @__PURE__ */ i(sa.Provider, { value: { code: e }, children: /* @__PURE__ */ i(
|
|
5564
5622
|
"div",
|
|
5565
5623
|
{
|
|
5566
|
-
className:
|
|
5624
|
+
className: y("relative w-full overflow-hidden rounded-md border bg-background text-foreground", o),
|
|
5567
5625
|
dir: "ltr",
|
|
5568
5626
|
...a,
|
|
5569
|
-
children: /* @__PURE__ */
|
|
5627
|
+
children: /* @__PURE__ */ _("div", { className: "relative", children: [
|
|
5570
5628
|
/* @__PURE__ */ i(
|
|
5571
5629
|
U,
|
|
5572
5630
|
{
|
|
@@ -5588,7 +5646,7 @@ const la = pe({
|
|
|
5588
5646
|
minWidth: "2.5rem"
|
|
5589
5647
|
},
|
|
5590
5648
|
showLineNumbers: n,
|
|
5591
|
-
style:
|
|
5649
|
+
style: Mr,
|
|
5592
5650
|
children: e
|
|
5593
5651
|
}
|
|
5594
5652
|
),
|
|
@@ -5613,7 +5671,7 @@ const la = pe({
|
|
|
5613
5671
|
minWidth: "2.5rem"
|
|
5614
5672
|
},
|
|
5615
5673
|
showLineNumbers: n,
|
|
5616
|
-
style:
|
|
5674
|
+
style: Pr,
|
|
5617
5675
|
children: e
|
|
5618
5676
|
}
|
|
5619
5677
|
),
|
|
@@ -5621,7 +5679,7 @@ const la = pe({
|
|
|
5621
5679
|
] })
|
|
5622
5680
|
}
|
|
5623
5681
|
) });
|
|
5624
|
-
function
|
|
5682
|
+
function ca(e, t = "size-4") {
|
|
5625
5683
|
return {
|
|
5626
5684
|
web_search: /* @__PURE__ */ i(En, { className: t }),
|
|
5627
5685
|
web_fetch: /* @__PURE__ */ i(ue, { className: t }),
|
|
@@ -5629,42 +5687,42 @@ function sa(e, t = "size-4") {
|
|
|
5629
5687
|
image_generation: /* @__PURE__ */ i(xn, { className: t })
|
|
5630
5688
|
}[e] ?? /* @__PURE__ */ i(_n, { className: t });
|
|
5631
5689
|
}
|
|
5632
|
-
const
|
|
5690
|
+
const ua = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: y("not-prose mb-4 w-full rounded-md border", e), ...t }), da = ({ status: e }) => {
|
|
5633
5691
|
const { t } = M(["tools_ui"]), n = {
|
|
5634
5692
|
"input-streaming": t("pending"),
|
|
5635
5693
|
"input-available": t("running"),
|
|
5636
5694
|
"output-available": t("completed"),
|
|
5637
5695
|
"output-error": t("error")
|
|
5638
5696
|
};
|
|
5639
|
-
return /* @__PURE__ */
|
|
5697
|
+
return /* @__PURE__ */ _(Cr, { className: "gap-1.5 rounded-full text-xs", variant: "secondary", children: [
|
|
5640
5698
|
{
|
|
5641
5699
|
"input-streaming": /* @__PURE__ */ i(Cn, { className: "size-4" }),
|
|
5642
5700
|
"input-available": /* @__PURE__ */ i(Tn, { className: "size-4 animate-pulse" }),
|
|
5643
5701
|
"output-available": /* @__PURE__ */ i(Nn, { className: "size-4 text-green-600" }),
|
|
5644
|
-
"output-error": /* @__PURE__ */ i(
|
|
5702
|
+
"output-error": /* @__PURE__ */ i(Ct, { className: "size-4 text-red-600" })
|
|
5645
5703
|
}[e],
|
|
5646
5704
|
n[e]
|
|
5647
5705
|
] });
|
|
5648
|
-
},
|
|
5649
|
-
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l =
|
|
5650
|
-
return /* @__PURE__ */
|
|
5651
|
-
/* @__PURE__ */
|
|
5706
|
+
}, pa = ({ className: e, type: t, state: n, toolName: o, ...r }) => {
|
|
5707
|
+
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l = ca(a, "size-4 text-muted-foreground");
|
|
5708
|
+
return /* @__PURE__ */ _(Ue, { className: y("flex w-full items-center justify-between gap-4 p-3", e), ...r, children: [
|
|
5709
|
+
/* @__PURE__ */ _("div", { className: "flex items-center gap-2", children: [
|
|
5652
5710
|
l,
|
|
5653
5711
|
/* @__PURE__ */ i("span", { className: "font-medium text-sm", children: a }),
|
|
5654
|
-
/* @__PURE__ */ i(
|
|
5712
|
+
/* @__PURE__ */ i(da, { status: n })
|
|
5655
5713
|
] }),
|
|
5656
5714
|
/* @__PURE__ */ i(ie, { className: "size-4 text-muted-foreground transition-transform group-data-[state=open]:rotate-180" })
|
|
5657
5715
|
] });
|
|
5658
|
-
},
|
|
5716
|
+
}, ha = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
5659
5717
|
$e,
|
|
5660
5718
|
{
|
|
5661
|
-
className:
|
|
5719
|
+
className: y(
|
|
5662
5720
|
"data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",
|
|
5663
5721
|
e
|
|
5664
5722
|
),
|
|
5665
5723
|
...t
|
|
5666
5724
|
}
|
|
5667
|
-
),
|
|
5725
|
+
), on = (e) => {
|
|
5668
5726
|
if (typeof e == "string")
|
|
5669
5727
|
try {
|
|
5670
5728
|
return JSON.stringify(JSON.parse(e), null, 2);
|
|
@@ -5672,13 +5730,13 @@ const ca = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5672
5730
|
return e;
|
|
5673
5731
|
}
|
|
5674
5732
|
return JSON.stringify(e, null, 2);
|
|
5675
|
-
},
|
|
5733
|
+
}, ga = ({ className: e, input: t, ...n }) => {
|
|
5676
5734
|
const { t: o } = M(["tools_ui"]);
|
|
5677
|
-
return /* @__PURE__ */
|
|
5735
|
+
return /* @__PURE__ */ _("div", { className: y("space-y-2 overflow-hidden p-4", e), ...n, children: [
|
|
5678
5736
|
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: o("parameters") }),
|
|
5679
|
-
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(Le, { code:
|
|
5737
|
+
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(Le, { code: on(t), language: "json" }) })
|
|
5680
5738
|
] });
|
|
5681
|
-
},
|
|
5739
|
+
}, ma = ({ className: e, output: t, errorText: n, ...o }) => {
|
|
5682
5740
|
const { t: r } = M(["tools_ui"]), [a, l] = B(!1);
|
|
5683
5741
|
if (!(t || n))
|
|
5684
5742
|
return null;
|
|
@@ -5696,19 +5754,19 @@ const ca = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5696
5754
|
}
|
|
5697
5755
|
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */ i(Le, { code: JSON.stringify(t, null, 2), language: "json" }) : t;
|
|
5698
5756
|
};
|
|
5699
|
-
return /* @__PURE__ */
|
|
5757
|
+
return /* @__PURE__ */ _("div", { className: y("space-y-2 p-4", e), ...o, children: [
|
|
5700
5758
|
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: r(n ? "error" : "result") }),
|
|
5701
|
-
n && /* @__PURE__ */
|
|
5702
|
-
/* @__PURE__ */ i(
|
|
5703
|
-
/* @__PURE__ */ i(
|
|
5759
|
+
n && /* @__PURE__ */ _(Ar, { children: [
|
|
5760
|
+
/* @__PURE__ */ i(Ir, { asChild: !0, children: /* @__PURE__ */ _(Q, { variant: "destructive", size: "sm", children: [
|
|
5761
|
+
/* @__PURE__ */ i(Ct, { className: "mr-1.5 size-4" }),
|
|
5704
5762
|
r("view_error")
|
|
5705
5763
|
] }) }),
|
|
5706
|
-
/* @__PURE__ */
|
|
5707
|
-
/* @__PURE__ */ i(
|
|
5708
|
-
/* @__PURE__ */
|
|
5709
|
-
/* @__PURE__ */ i("div", { className: "max-h-96 overflow-auto rounded-md bg-destructive/10 p-4 text-destructive text-sm", children: /* @__PURE__ */ i("pre", { className: "whitespace-pre-wrap break-words", children:
|
|
5710
|
-
/* @__PURE__ */
|
|
5711
|
-
/* @__PURE__ */ i(
|
|
5764
|
+
/* @__PURE__ */ _(Lr, { className: "max-w-2xl", children: [
|
|
5765
|
+
/* @__PURE__ */ i(Fr, { children: /* @__PURE__ */ i(Dr, { className: "text-destructive", children: r("tool_error") }) }),
|
|
5766
|
+
/* @__PURE__ */ _("div", { className: "space-y-4", children: [
|
|
5767
|
+
/* @__PURE__ */ i("div", { className: "max-h-96 overflow-auto rounded-md bg-destructive/10 p-4 text-destructive text-sm", children: /* @__PURE__ */ i("pre", { className: "whitespace-pre-wrap break-words", children: on(n) }) }),
|
|
5768
|
+
/* @__PURE__ */ _(Q, { variant: "outline", size: "sm", onClick: c, children: [
|
|
5769
|
+
/* @__PURE__ */ i(Tt, { className: "mr-1.5 size-4" }),
|
|
5712
5770
|
r(a ? "copied" : "copy_error")
|
|
5713
5771
|
] })
|
|
5714
5772
|
] })
|
|
@@ -5717,7 +5775,7 @@ const ca = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5717
5775
|
t && !n && /* @__PURE__ */ i("div", { className: "overflow-x-auto rounded-md bg-muted/50 text-foreground text-xs [&_table]:w-full line-clamp-[20]", children: /* @__PURE__ */ i("div", { children: s() }) })
|
|
5718
5776
|
] });
|
|
5719
5777
|
};
|
|
5720
|
-
function
|
|
5778
|
+
function fa({
|
|
5721
5779
|
part: e,
|
|
5722
5780
|
message: t,
|
|
5723
5781
|
chat: n,
|
|
@@ -5743,15 +5801,15 @@ function ma({
|
|
|
5743
5801
|
const c = o[l];
|
|
5744
5802
|
return /* @__PURE__ */ i(c, { part: e, message: t, chat: n });
|
|
5745
5803
|
}
|
|
5746
|
-
return r ? /* @__PURE__ */
|
|
5747
|
-
/* @__PURE__ */ i(
|
|
5748
|
-
/* @__PURE__ */
|
|
5749
|
-
/* @__PURE__ */ i(
|
|
5750
|
-
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(
|
|
5804
|
+
return r ? /* @__PURE__ */ _(ua, { className: "animate-in-bubble", children: [
|
|
5805
|
+
/* @__PURE__ */ i(pa, { type: e.type, state: a.state, toolName: l }),
|
|
5806
|
+
/* @__PURE__ */ _(ha, { children: [
|
|
5807
|
+
/* @__PURE__ */ i(ga, { input: a.input }),
|
|
5808
|
+
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(ma, { errorText: a.errorText, output: a.output })
|
|
5751
5809
|
] })
|
|
5752
5810
|
] }) : null;
|
|
5753
5811
|
}
|
|
5754
|
-
function
|
|
5812
|
+
function ba({
|
|
5755
5813
|
part: e,
|
|
5756
5814
|
message: t
|
|
5757
5815
|
}) {
|
|
@@ -5760,7 +5818,7 @@ function fa({
|
|
|
5760
5818
|
const s = document.createElement("a");
|
|
5761
5819
|
s.href = o.url, s.download = a, document.body.appendChild(s), s.click(), document.body.removeChild(s);
|
|
5762
5820
|
};
|
|
5763
|
-
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(
|
|
5821
|
+
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(Dt, { from: t.role, children: /* @__PURE__ */ i(Pt, { isPlain: !0, children: r ? /* @__PURE__ */ _("div", { className: "group relative max-w-[280px] rounded-xl overflow-hidden border border-border/5 transition-all duration-300 hover:border-primary/30 hover:shadow-[0_0_20px_var(--glow)]", children: [
|
|
5764
5822
|
/* @__PURE__ */ i(
|
|
5765
5823
|
"img",
|
|
5766
5824
|
{
|
|
@@ -5769,7 +5827,7 @@ function fa({
|
|
|
5769
5827
|
className: "max-h-[280px] w-full rounded-xl object-cover transition-transform duration-500 group-hover:scale-105"
|
|
5770
5828
|
}
|
|
5771
5829
|
),
|
|
5772
|
-
/* @__PURE__ */
|
|
5830
|
+
/* @__PURE__ */ _("div", { className: "absolute inset-x-0 bottom-0 p-3 bg-gradient-to-t from-black/80 via-black/40 to-transparent opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-between", children: [
|
|
5773
5831
|
/* @__PURE__ */ i("span", { className: "text-[10px] text-white truncate max-w-[150px] font-medium drop-shadow-sm", children: a }),
|
|
5774
5832
|
/* @__PURE__ */ i(
|
|
5775
5833
|
"button",
|
|
@@ -5789,9 +5847,9 @@ function fa({
|
|
|
5789
5847
|
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5790
5848
|
}
|
|
5791
5849
|
) })
|
|
5792
|
-
] }) : /* @__PURE__ */ i("div", { className: "flex flex-col gap-1.5", children: /* @__PURE__ */
|
|
5793
|
-
/* @__PURE__ */ i("div", { className: "p-2.5 rounded-lg bg-background/50 border border-border/10 group-hover:border-primary/20 group-hover:text-primary transition-colors", children: /* @__PURE__ */ i(
|
|
5794
|
-
/* @__PURE__ */
|
|
5850
|
+
] }) : /* @__PURE__ */ i("div", { className: "flex flex-col gap-1.5", children: /* @__PURE__ */ _("div", { className: "group inline-flex items-center gap-3 rounded-xl p-3 text-sm transition-all duration-300 bg-secondary/10 border border-border/5 hover:border-primary/30 hover:bg-secondary/20 hover:shadow-[0_0_15px_var(--glow)]", children: [
|
|
5851
|
+
/* @__PURE__ */ i("div", { className: "p-2.5 rounded-lg bg-background/50 border border-border/10 group-hover:border-primary/20 group-hover:text-primary transition-colors", children: /* @__PURE__ */ i(Nt, { className: "size-4 shrink-0" }) }),
|
|
5852
|
+
/* @__PURE__ */ _("div", { className: "flex flex-col min-w-0 mr-4", children: [
|
|
5795
5853
|
/* @__PURE__ */ i("span", { className: "truncate max-w-[180px] font-semibold text-foreground/90 leading-none mb-1 group-hover:text-foreground transition-colors", children: a }),
|
|
5796
5854
|
(o.mediaType || o.media_type) && /* @__PURE__ */ i("span", { className: "text-[10px] text-muted-foreground uppercase font-bold tracking-widest opacity-60", children: (o.mediaType || o.media_type).split("/").pop() })
|
|
5797
5855
|
] }),
|
|
@@ -5806,14 +5864,14 @@ function fa({
|
|
|
5806
5864
|
)
|
|
5807
5865
|
] }) }) }) }) });
|
|
5808
5866
|
}
|
|
5809
|
-
const
|
|
5810
|
-
MessageList:
|
|
5811
|
-
PromptInput:
|
|
5812
|
-
WelcomeScreen:
|
|
5813
|
-
TextPart:
|
|
5814
|
-
ReasoningPart:
|
|
5815
|
-
ToolPart:
|
|
5816
|
-
FilePart:
|
|
5867
|
+
const A = {
|
|
5868
|
+
MessageList: Qn,
|
|
5869
|
+
PromptInput: so,
|
|
5870
|
+
WelcomeScreen: uo,
|
|
5871
|
+
TextPart: _r,
|
|
5872
|
+
ReasoningPart: Nr,
|
|
5873
|
+
ToolPart: fa,
|
|
5874
|
+
FilePart: ba,
|
|
5817
5875
|
toolComponents: void 0,
|
|
5818
5876
|
textComponents: void 0,
|
|
5819
5877
|
remarkPlugins: void 0,
|
|
@@ -5858,11 +5916,11 @@ const C = {
|
|
|
5858
5916
|
account: { enabled: !0, fields: {} }
|
|
5859
5917
|
}
|
|
5860
5918
|
}
|
|
5861
|
-
},
|
|
5862
|
-
function
|
|
5863
|
-
return Fe(
|
|
5919
|
+
}, rn = de(A);
|
|
5920
|
+
function te() {
|
|
5921
|
+
return Fe(rn);
|
|
5864
5922
|
}
|
|
5865
|
-
function
|
|
5923
|
+
function Ni({
|
|
5866
5924
|
components: e,
|
|
5867
5925
|
history: t,
|
|
5868
5926
|
welcome: n,
|
|
@@ -5873,97 +5931,40 @@ function Si({
|
|
|
5873
5931
|
app: c,
|
|
5874
5932
|
i18n: s,
|
|
5875
5933
|
settings: p,
|
|
5876
|
-
children:
|
|
5934
|
+
children: g
|
|
5877
5935
|
}) {
|
|
5878
|
-
const
|
|
5936
|
+
const m = St(
|
|
5879
5937
|
() => ({
|
|
5880
|
-
...
|
|
5938
|
+
...A,
|
|
5881
5939
|
...e,
|
|
5882
5940
|
// toolComponents is a plain merge (not nested-spread) — callers
|
|
5883
5941
|
// provide the full map for all tool names they want to override.
|
|
5884
|
-
toolComponents: e?.toolComponents ??
|
|
5885
|
-
history: t ? { ...
|
|
5886
|
-
welcome: n ? { ...
|
|
5887
|
-
threadActions: o ? { ...
|
|
5942
|
+
toolComponents: e?.toolComponents ?? A.toolComponents,
|
|
5943
|
+
history: t ? { ...A.history, ...t } : A.history,
|
|
5944
|
+
welcome: n ? { ...A.welcome, ...n } : A.welcome,
|
|
5945
|
+
threadActions: o ? { ...A.threadActions, ...o } : A.threadActions,
|
|
5888
5946
|
composer: r ? {
|
|
5889
|
-
...
|
|
5947
|
+
...A.composer,
|
|
5890
5948
|
...r,
|
|
5891
|
-
attachments: r.attachments ? { ...
|
|
5892
|
-
} :
|
|
5893
|
-
theme: a ??
|
|
5894
|
-
disclaimer: l ??
|
|
5895
|
-
app: c ? { ...
|
|
5896
|
-
i18n: s ??
|
|
5949
|
+
attachments: r.attachments ? { ...A.composer?.attachments, ...r.attachments } : A.composer?.attachments
|
|
5950
|
+
} : A.composer,
|
|
5951
|
+
theme: a ?? A.theme,
|
|
5952
|
+
disclaimer: l ?? A.disclaimer,
|
|
5953
|
+
app: c ? { ...A.app, ...c } : A.app,
|
|
5954
|
+
i18n: s ?? A.i18n,
|
|
5897
5955
|
settings: p ? {
|
|
5898
|
-
...
|
|
5956
|
+
...A.settings,
|
|
5899
5957
|
sections: {
|
|
5900
|
-
...
|
|
5958
|
+
...A.settings?.sections,
|
|
5901
5959
|
...p.sections
|
|
5902
5960
|
}
|
|
5903
|
-
} :
|
|
5961
|
+
} : A.settings
|
|
5904
5962
|
}),
|
|
5905
5963
|
[e, t, n, o, r, a, l, c, s, p]
|
|
5906
5964
|
);
|
|
5907
|
-
return /* @__PURE__ */ i(
|
|
5965
|
+
return /* @__PURE__ */ i(rn.Provider, { value: m, children: g });
|
|
5908
5966
|
}
|
|
5909
|
-
const
|
|
5910
|
-
theme: "system",
|
|
5911
|
-
setTheme: () => null,
|
|
5912
|
-
accent: void 0,
|
|
5913
|
-
setAccent: () => null,
|
|
5914
|
-
radius: void 0,
|
|
5915
|
-
setRadius: () => null
|
|
5916
|
-
}, rn = pe(ba);
|
|
5917
|
-
function Ei({
|
|
5918
|
-
children: e,
|
|
5919
|
-
defaultTheme: t = "system",
|
|
5920
|
-
storageKey: n = "chatbot-theme",
|
|
5921
|
-
...o
|
|
5922
|
-
}) {
|
|
5923
|
-
const [r, a] = B(
|
|
5924
|
-
() => window.localStorage.getItem(n) ?? t
|
|
5925
|
-
), [l, c] = B(
|
|
5926
|
-
() => window.localStorage.getItem(n + "-accent") || void 0
|
|
5927
|
-
), [s, p] = B(
|
|
5928
|
-
() => window.localStorage.getItem(n + "-radius") || "1.25rem"
|
|
5929
|
-
), { theme: h } = W(), { i18n: f } = M(["theme"]);
|
|
5930
|
-
Q(() => {
|
|
5931
|
-
const m = window.document.documentElement;
|
|
5932
|
-
if (m.classList.remove("light", "dark"), r === "system") {
|
|
5933
|
-
const y = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
5934
|
-
m.classList.add(y);
|
|
5935
|
-
return;
|
|
5936
|
-
}
|
|
5937
|
-
m.classList.add(r);
|
|
5938
|
-
}, [r]), Q(() => {
|
|
5939
|
-
const m = window.document.documentElement, y = f.language?.split("-")[0] || f.language;
|
|
5940
|
-
let d = h?.typography?.fontFamily;
|
|
5941
|
-
if (typeof d == "object" && d !== null && (d = d[f.language] || d[y] || d.en || Object.values(d)[0]), d) {
|
|
5942
|
-
const g = d.includes(" ") && !d.startsWith("'") && !d.startsWith('"') ? `"${d}"` : d;
|
|
5943
|
-
m.style.setProperty("--gentiq-font-family", g), m.style.fontFamily = g, window.document.body && (window.document.body.style.fontFamily = g);
|
|
5944
|
-
}
|
|
5945
|
-
const v = s || (typeof h?.radius == "number" ? `${h.radius}px` : h?.radius);
|
|
5946
|
-
v !== void 0 && m.style.setProperty("--radius", v);
|
|
5947
|
-
const _ = l || h?.accent;
|
|
5948
|
-
_ !== void 0 && m.style.setProperty("--gentiq-primary", _), window.document.documentElement.dir = f.dir();
|
|
5949
|
-
}, [h, f, f.language, l, s]);
|
|
5950
|
-
const b = {
|
|
5951
|
-
theme: r,
|
|
5952
|
-
setTheme: (m) => {
|
|
5953
|
-
window.localStorage.setItem(n, m), a(m);
|
|
5954
|
-
},
|
|
5955
|
-
accent: l,
|
|
5956
|
-
setAccent: (m) => {
|
|
5957
|
-
m ? window.localStorage.setItem(n + "-accent", m) : window.localStorage.removeItem(n + "-accent"), c(m);
|
|
5958
|
-
},
|
|
5959
|
-
radius: s,
|
|
5960
|
-
setRadius: (m) => {
|
|
5961
|
-
m ? window.localStorage.setItem(n + "-radius", m) : window.localStorage.removeItem(n + "-radius"), p(m);
|
|
5962
|
-
}
|
|
5963
|
-
};
|
|
5964
|
-
return /* @__PURE__ */ i(rn.Provider, { ...o, value: b, children: e });
|
|
5965
|
-
}
|
|
5966
|
-
const Ni = () => Fe(rn), {
|
|
5967
|
+
const {
|
|
5967
5968
|
slice: ya,
|
|
5968
5969
|
forEach: ka
|
|
5969
5970
|
} = [];
|
|
@@ -6112,18 +6113,18 @@ var xa = {
|
|
|
6112
6113
|
return o;
|
|
6113
6114
|
}
|
|
6114
6115
|
};
|
|
6115
|
-
let
|
|
6116
|
+
let W = null;
|
|
6116
6117
|
const _t = () => {
|
|
6117
|
-
if (
|
|
6118
|
+
if (W !== null) return W;
|
|
6118
6119
|
try {
|
|
6119
|
-
if (
|
|
6120
|
+
if (W = typeof window < "u" && window.localStorage !== null, !W)
|
|
6120
6121
|
return !1;
|
|
6121
6122
|
const e = "i18next.translate.boo";
|
|
6122
6123
|
window.localStorage.setItem(e, "foo"), window.localStorage.removeItem(e);
|
|
6123
6124
|
} catch {
|
|
6124
|
-
|
|
6125
|
+
W = !1;
|
|
6125
6126
|
}
|
|
6126
|
-
return
|
|
6127
|
+
return W;
|
|
6127
6128
|
};
|
|
6128
6129
|
var Na = {
|
|
6129
6130
|
name: "localStorage",
|
|
@@ -6143,18 +6144,18 @@ var Na = {
|
|
|
6143
6144
|
n && _t() && window.localStorage.setItem(n, e);
|
|
6144
6145
|
}
|
|
6145
6146
|
};
|
|
6146
|
-
let
|
|
6147
|
+
let Y = null;
|
|
6147
6148
|
const xt = () => {
|
|
6148
|
-
if (
|
|
6149
|
+
if (Y !== null) return Y;
|
|
6149
6150
|
try {
|
|
6150
|
-
if (
|
|
6151
|
+
if (Y = typeof window < "u" && window.sessionStorage !== null, !Y)
|
|
6151
6152
|
return !1;
|
|
6152
6153
|
const e = "i18next.translate.boo";
|
|
6153
6154
|
window.sessionStorage.setItem(e, "foo"), window.sessionStorage.removeItem(e);
|
|
6154
6155
|
} catch {
|
|
6155
|
-
|
|
6156
|
+
Y = !1;
|
|
6156
6157
|
}
|
|
6157
|
-
return
|
|
6158
|
+
return Y;
|
|
6158
6159
|
};
|
|
6159
6160
|
var Ta = {
|
|
6160
6161
|
name: "sessionStorage",
|
|
@@ -6271,7 +6272,7 @@ class sn {
|
|
|
6271
6272
|
}
|
|
6272
6273
|
}
|
|
6273
6274
|
sn.type = "languageDetector";
|
|
6274
|
-
const La = { new_conversation: "New conversation", tooltip_new_conversation: "Start a new conversation", delete_conversation: "Delete", delete_confirm_title: "Delete conversation?", delete_confirm_description: "Are you sure you want to delete this chat? This action cannot be undone.", cancel: "Cancel", delete: "Delete", chat_deleted_success: "Chat deleted successfully", logout: "Logout", new_chat: "New Chat", rename_conversation: "Rename", rename_success: "Conversation renamed successfully", rename_failed: "Failed to rename conversation", search_conversations: "Search conversations...", save: "Save", no_conversations: "No conversations yet", loading_more: "Loading more...", pinned_success: "Conversation pinned", unpinned_success: "Conversation unpinned", pin_failed: "Failed to pin conversation", share_success: "Link copied", share_description: "The shareable link has been copied to your clipboard.", share_failed: "Failed to generate share link", pin_conversation: "Pin", unpin_conversation: "Unpin", share_conversation: "Share" }, Fa = { tools: "Tools", error: "Error:", input_placeholder: "Ask something...", insufficient_balance: "Insufficient balance. Please recharge your account to continue.", regenerate: "Regenerate", retry: "Retry", copy: "Copy", like: "Like", dislike: "Dislike", attach_file: "Attach file", remove_file: "Remove file", used_sources: "Used {{count}} sources", welcome: { title: "Hello! How can I help you today?", subtitle: "Ask me anything and I'll do my best to help.", suggestions: ["What can you help me with?", "Tell me something interesting", "Help me write an email", "Explain a concept to me"] }, disclaimer: "AI can make mistakes. Check important info." }, Da = { pending: "Pending", running: "Running", completed: "Completed", error: "Error", parameters: "Parameters", result: "Result", view_error: "View Error", tool_error: "Tool Error", copied: "Copied!", copy_error: "Copy Error" }, Pa = { login_tab: "Login", signup_tab: "Sign Up", phone: "Phone", phone_placeholder: "Phone number", password: "Password", name: "Name", name_placeholder: "First Name", surname: "Surname", surname_placeholder: "Last Name", loading: "Loading...", logging_in: "Logging in...", signing_up: "Signing up...", auth_page_disabled_title: "The sign-in page is currently disabled.", auth_page_disabled_description: "Please contact the administrator for access.", select_placeholder: "Select an option", login_button: "Login", signup_button: "Sign Up" }, Ma = { toggle: "Change theme", light: "Switch to light theme", dark: "Switch to dark theme", system: "Switch to system theme" }, za = { select_placeholder: "Select an option", loading: "Loading...", retry: "Retry", save: "Save", saving: "Saving...", cancel: "Cancel", delete: "Delete", edit: "Edit", search: "Search", search_placeholder: "Search...", no_data: "No data available", loading_more: "Loading more...", confirm_delete: "Are you sure you want to delete?", error_loading: "Error loading data", dashboard: { title: "Admin Panel", logout: "Logout", tabs: { analytics: "Analytics", chat_history: "Chats", users: "Users", admins: "Admins", settings: "Settings" } }, app_settings: { title: "System Settings", subtitle: "Manage global configuration for application appearance and behavior.", sections: { general: "Basic Information", chat: "Chat Experience", user_billing: "User & Billing" }, general: { app_name: "App Name", admin_title: "Admin Panel Title", language: "Default Language", language_help: "The language users see on their first visit (if not auto-detected)." }, chat: { welcome_greeting: "Welcome Greeting", welcome_subtitle: "Welcome Subtitle", disclaimer: "Disclaimer Text", show_tool_details: "Show technical tool details", show_tool_details_help: "Enable this to show professional technical details of AI tools to users.", show_settings: "Show settings icon for users", show_settings_help: "Show a settings gear icon in the chat interface for user customization.", show_version_in_settings: "Show app version in user settings", show_version_in_settings_help: "Show the app version at the bottom of the user settings dialog. This does not affect the admin settings page.", disable_signup: "Disable signup", disable_signup_help: "Hide the signup tab so users can only log in.", disable_auth_page: "Disable login/signup page", disable_auth_page_help: "Hide the entire auth page and prevent users from reaching login or signup forms.", composer_attachments: "Enable File Attachments", composer_attachments_help: "Allow users to upload and attach files to their messages.", thread_actions_feedback: "Enable Feedback Buttons", thread_actions_feedback_help: "Show like/dislike buttons on AI responses.", thread_actions_retry: "Enable Retry Button", thread_actions_retry_help: "Show a retry button to regenerate the last AI response.", history_enabled: "Enable Chat History Sidebar", history_enabled_help: "Show the sidebar containing previous conversations.", history_show_delete: "Allow Deleting Conversations", history_show_rename: "Allow Renaming Conversations", history_show_share: "Allow Sharing Conversations", history_show_pin: "Allow Pinning Conversations", sections_modes: "Settings Tab Modes", sections_modes_help: "Control visibility and interactability of settings tabs for users.", mode_editable: "Enable (Editable)", mode_faded: "Fade (Readonly)", mode_hidden: "Hide (Disable)", general_tab: "General Tab", profile_tab: "Profile Tab", account_tab: "Account Tab", inner_fields_modes: "Inner Fields Visibility", inner_fields_modes_help: "Configure visibility for individual fields within each tab." }, user_billing: { initial_balance_tokens: "Default Initial Tokens", initial_balance_requests: "Default Initial Requests", initial_balance_help: "These values will be assigned to new users by default if not specified during creation." }, save_success: "Settings saved successfully", save_error: "Failed to save settings", save: "Save Changes", translations_management: "Translations Management", editor_tips: "All changes are saved automatically to local state. Don't forget to push 'Save Changes' to persist.", sync_from_code: "Sync from Code", reset_button: "Reset to Defaults", reset_confirm_title: "Reset Settings?", reset_confirm_description: "This will reset all fields to their original default values from the code. Current unsaved changes will be lost.", preview: "Preview", tips_label: "TIPS" }, analytics: { title: "Analytics & Statistics", days: "{{count}} Days", total_users: "Total Users", total_threads: "Total Threads", total_messages: "Total Messages", total_token_usage: "Total Token Usage", threads_chart: "Threads", messages_chart: "Messages", token_usage_chart: "Token Usage", active_users: "Active Users", conversations: "conversations", threads: "threads", feedback: "User Feedback", total_feedback: "Total Feedback", positive: "Positive", negative: "Negative", loading_analytics: "Loading analytics...", error_loading: "Error loading data" }, chat_history: { title: "Chat History Management", search_placeholder: "Search by name, phone, thread title, or ID...", search_button: "Search", threads_list: "Threads List", thread_count: "{{count}}", no_thread_title: "Untitled conversation", messages: "Messages", messages_for: "Messages for: {{title}}", select_thread: "Select a conversation to view", no_threads: "No conversations found", empty_thread: "This conversation is empty", loading_threads: "Loading...", loading_messages: "Loading messages...", user_label: "User", assistant_label: "AI Assistant", input_tokens: "Input: {{value}}", output_tokens: "Output: {{value}}", total_tokens: "Total: {{value}}", all_feedbacks: "All Conversations", liked_feedbacks: "Liked 👍", disliked_feedbacks: "Disliked 👎", any_feedback: "With Feedback", output_available: "Output Available", running: "Running...", unnamed_file: "Unnamed File", download_file: "Download File" }, users: { title: "User Management", user_count: "User count: {{count}}", add_user: "Add New User", edit_user: "Edit User", phone: "Phone Number", phone_placeholder: "09123456789", name: "Name", surname: "Surname", initial_tokens: "Initial Tokens (optional)", initial_requests: "Initial Requests (optional)", balance: "Balance", requests_label: "Requests", tokens_label: "Tokens", token_limit: "Token Limit", request_limit: "Request Limit", tokens_usage: "Tokens Usage", requests_usage: "Requests Usage", actions: "Actions", copy_token: "Copy Token (auto-refresh)", token_copied: "Token copied successfully", no_token: "No token found for this user", recharge: "Recharge Balance", full_charge: "Full Charge", update_balance: "Update Balance", update_balance_for: "Update Balance for", token_count: "Token Count", request_count: "Request Count", updating: "Updating...", no_users: "No users found.", confirm_delete_user: "Are you sure you want to delete this user?", tokens_exceed_limit: "Tokens cannot exceed the specified limit", requests_exceed_limit: "Requests cannot exceed the specified limit", metadata: "Metadata (JSON)", initial_balance: "Initial Balance", custom_fields: "Additional Fields", metadata_raw: "Metadata (Raw JSON)", advanced_usage: "Advanced usage", invalid_json: "Invalid JSON format" }, admins: { title: "Admin Management", admin_count: "Admin count: {{count}}", add_admin: "Add New Admin", edit_admin: "Edit Admin", username: "Username", name: "Name", password: "Password", password_edit: "New Password (leave empty to keep current)", permissions: "Permissions", perm_chat_history: "Chat History", perm_admin_management: "Admin Management", perm_user_management: "User Management", perm_analytics: "Analytics", perm_settings: "Settings", no_admins: "No admins found.", confirm_delete_admin: "Are you sure you want to delete this admin?" }, errors: { access_denied_title: "Access Denied", access_denied_message: "You don't have the necessary permissions to access this page. You can contact the administrator!", back_to_dashboard: "Back to Dashboard" }, login: { title: "Admin Panel", setup_title: "Initial Setup", setup_description: "No admin account exists yet. Set a password for the default admin user to get started.", set_password: "Set Password", set_password_placeholder: "Choose a strong password", confirm_password: "Confirm Password", confirm_password_placeholder: "Re-enter the password", passwords_mismatch: "Passwords do not match", password_too_short: "Password must be at least 4 characters", create_admin: "Create Admin & Login", setting_up: "Setting up...", username: "Username", username_placeholder: "Username", password: "Password", password_placeholder: "••••••••", submit: "Login", logging_in: "Logging in...", error: "Login failed", copyright: "© 2026 AI Chatbot Platform" } }, Ua = { title: "Settings", sections: { profile: "Profile", general: "General", account: "Account" }, profile: { title: "Profile Information", subtitle: "Update your personal details below.", name: "First Name", surname: "Last Name", phone: "Phone Number", password: "New Password", password_placeholder: "Leave empty to keep current", save: "Save Changes", saving: "Saving...", success: "Profile updated successfully", error: "Failed to update profile", select_placeholder: "Select an option" }, general: { title: "General Settings", subtitle: "Configure look and feel and language.", theme: "Theme", language: "Language", themes: { light: "Light", dark: "Dark", system: "System" }, accent: "Accent Color", radius: "Rounded Corners", radius_levels: { sharp: "Sharp", round: "Round" }, languages: { en: "English", fa: "Persian" } }, account: { title: "Account & Usage", subtitle: "Monitor your quotas and manage your session.", balance: "Current Balance", tokens: "Tokens", requests: "Requests", logout: "Logout", logout_confirm: "Are you sure you want to logout?", last_recharge: "Last balance update on" } }, $a = { unauthorized: "Authentication required. Please login again.", invalid_credentials: "Invalid phone number or password.", phone_required: "Phone number is required.", password_required: "Password is required.", name_surname_required: "Name and surname are required.", phone_already_exists: "This phone number is already registered.", invalid_token: "Your session has expired. Please login again.", user_not_found: "User not found.", insufficient_balance: "Insufficient balance. Please recharge your account.", me_update_failed: "Failed to update profile information.", thread_not_found: "Conversation not found.", access_denied: "You do not have permission to perform this action.", feedback_save_failed: "Failed to save feedback.", thread_update_failed: "Failed to update conversation.", thread_delete_failed: "Failed to delete conversation.", attachment_not_found: "Attachment not found.", thread_share_failed: "Failed to share conversation.", model_quota_reached_error: "The system cannot respond at this time. Please try again later.", admin_already_exists: "Admin with this username already exists.", admin_not_found: "Admin not found.", cannot_delete_self: "You cannot delete your own admin account.", admin_update_failed: "Failed to update admin information.", internal_error: "An internal server error occurred. Please try again later.", validation_error: "Invalid data provided. Please check your input.", not_found: "The requested resource was not found." }, Ba = {
|
|
6275
|
+
const La = { new_conversation: "New conversation", tooltip_new_conversation: "Start a new conversation", delete_conversation: "Delete", delete_confirm_title: "Delete conversation?", delete_confirm_description: "Are you sure you want to delete this chat? This action cannot be undone.", cancel: "Cancel", delete: "Delete", chat_deleted_success: "Chat deleted successfully", logout: "Logout", new_chat: "New Chat", rename_conversation: "Rename", rename_success: "Conversation renamed successfully", rename_failed: "Failed to rename conversation", search_conversations: "Search conversations...", save: "Save", no_conversations: "No conversations yet", loading_more: "Loading more...", pinned_success: "Conversation pinned", unpinned_success: "Conversation unpinned", pin_failed: "Failed to pin conversation", share_success: "Link copied", share_description: "The shareable link has been copied to your clipboard.", share_failed: "Failed to generate share link", pin_conversation: "Pin", unpin_conversation: "Unpin", share_conversation: "Share" }, Fa = { tools: "Tools", error: "Error:", input_placeholder: "Ask something...", insufficient_balance: "Insufficient balance. Please recharge your account to continue.", regenerate: "Regenerate", retry: "Retry", copy: "Copy", like: "Like", dislike: "Dislike", attach_file: "Attach file", remove_file: "Remove file", used_sources: "Used {{count}} sources", welcome: { title: "Hello! How can I help you today?", subtitle: "Ask me anything and I'll do my best to help.", suggestions: ["What can you help me with?", "Tell me something interesting", "Help me write an email", "Explain a concept to me"] }, disclaimer: "AI can make mistakes. Check important info." }, Da = { pending: "Pending", running: "Running", completed: "Completed", error: "Error", parameters: "Parameters", result: "Result", view_error: "View Error", tool_error: "Tool Error", copied: "Copied!", copy_error: "Copy Error" }, Pa = { login_tab: "Login", signup_tab: "Sign Up", phone: "Phone", phone_placeholder: "Phone number", password: "Password", name: "Name", name_placeholder: "First Name", surname: "Surname", surname_placeholder: "Last Name", loading: "Loading...", logging_in: "Logging in...", signing_up: "Signing up...", auth_page_disabled_title: "The sign-in page is currently disabled.", auth_page_disabled_description: "Please contact the administrator for access.", select_placeholder: "Select an option", login_button: "Login", signup_button: "Sign Up" }, Ma = { toggle: "Change theme", light: "Switch to light theme", dark: "Switch to dark theme", system: "Switch to system theme" }, za = { select_placeholder: "Select an option", loading: "Loading...", retry: "Retry", save: "Save", saving: "Saving...", cancel: "Cancel", delete: "Delete", edit: "Edit", search: "Search", search_placeholder: "Search...", no_data: "No data available", loading_more: "Loading more...", confirm_delete: "Are you sure you want to delete?", error_loading: "Error loading data", dashboard: { title: "Admin Panel", logout: "Logout", tabs: { analytics: "Analytics", chat_history: "Chats", users: "Users", admins: "Admins", settings: "Settings" } }, app_settings: { title: "System Settings", subtitle: "Manage global configuration for application appearance and behavior.", sections: { general: "Basic Information", chat: "Chat Experience", user_billing: "User & Billing" }, general: { app_name: "App Name", admin_title: "Admin Panel Title", language: "Default Language", language_help: "The language users see on their first visit (if not auto-detected).", appearance: "Default Appearance", appearance_help: "These values apply when a user has not saved their own appearance preferences.", default_theme: "Default Theme", default_accent: "Default Accent Color", default_accent_help: "Enter any browser-supported CSS color, such as #3b82f6, rgb(59 130 246), or oklch(0.623 0.214 259.815).", default_accent_invalid: "Enter a valid browser-supported CSS color.", default_accent_preview: "Accent color preview" }, chat: { welcome_greeting: "Welcome Greeting", welcome_subtitle: "Welcome Subtitle", disclaimer: "Disclaimer Text", show_tool_details: "Show technical tool details", show_tool_details_help: "Enable this to show professional technical details of AI tools to users.", show_settings: "Show settings icon for users", show_settings_help: "Show a settings gear icon in the chat interface for user customization.", show_version_in_settings: "Show app version in user settings", show_version_in_settings_help: "Show the app version at the bottom of the user settings dialog. This does not affect the admin settings page.", disable_signup: "Disable signup", disable_signup_help: "Hide the signup tab so users can only log in.", disable_auth_page: "Disable login/signup page", disable_auth_page_help: "Hide the entire auth page and prevent users from reaching login or signup forms.", composer_attachments: "Enable File Attachments", composer_attachments_help: "Allow users to upload and attach files to their messages.", thread_actions_feedback: "Enable Feedback Buttons", thread_actions_feedback_help: "Show like/dislike buttons on AI responses.", thread_actions_retry: "Enable Retry Button", thread_actions_retry_help: "Show a retry button to regenerate the last AI response.", history_enabled: "Enable Chat History Sidebar", history_enabled_help: "Show the sidebar containing previous conversations.", history_show_delete: "Allow Deleting Conversations", history_show_rename: "Allow Renaming Conversations", history_show_share: "Allow Sharing Conversations", history_show_pin: "Allow Pinning Conversations", sections_modes: "Settings Tab Modes", sections_modes_help: "Control visibility and interactability of settings tabs for users.", mode_editable: "Enable (Editable)", mode_faded: "Fade (Readonly)", mode_hidden: "Hide (Disable)", general_tab: "General Tab", profile_tab: "Profile Tab", account_tab: "Account Tab", inner_fields_modes: "Inner Fields Visibility", inner_fields_modes_help: "Configure visibility for individual fields within each tab." }, user_billing: { initial_balance_tokens: "Default Initial Tokens", initial_balance_requests: "Default Initial Requests", initial_balance_help: "These values will be assigned to new users by default if not specified during creation." }, save_success: "Settings saved successfully", save_error: "Failed to save settings", save: "Save Changes", translations_management: "Translations Management", editor_tips: "All changes are saved automatically to local state. Don't forget to push 'Save Changes' to persist.", sync_from_code: "Sync from Code", reset_button: "Reset to Defaults", reset_confirm_title: "Reset Settings?", reset_confirm_description: "This will reset all fields to their original default values from the code. Current unsaved changes will be lost.", preview: "Preview", tips_label: "TIPS" }, analytics: { title: "Analytics & Statistics", days: "{{count}} Days", total_users: "Total Users", total_threads: "Total Threads", total_messages: "Total Messages", total_token_usage: "Total Token Usage", threads_chart: "Threads", messages_chart: "Messages", token_usage_chart: "Token Usage", active_users: "Active Users", conversations: "conversations", threads: "threads", feedback: "User Feedback", total_feedback: "Total Feedback", positive: "Positive", negative: "Negative", loading_analytics: "Loading analytics...", error_loading: "Error loading data" }, chat_history: { title: "Chat History Management", search_placeholder: "Search by name, phone, thread title, or ID...", search_button: "Search", threads_list: "Threads List", thread_count: "{{count}}", no_thread_title: "Untitled conversation", messages: "Messages", messages_for: "Messages for: {{title}}", select_thread: "Select a conversation to view", no_threads: "No conversations found", empty_thread: "This conversation is empty", loading_threads: "Loading...", loading_messages: "Loading messages...", user_label: "User", assistant_label: "AI Assistant", input_tokens: "Input: {{value}}", output_tokens: "Output: {{value}}", total_tokens: "Total: {{value}}", all_feedbacks: "All Conversations", liked_feedbacks: "Liked 👍", disliked_feedbacks: "Disliked 👎", any_feedback: "With Feedback", output_available: "Output Available", running: "Running...", unnamed_file: "Unnamed File", download_file: "Download File" }, users: { title: "User Management", user_count: "User count: {{count}}", add_user: "Add New User", edit_user: "Edit User", phone: "Phone Number", phone_placeholder: "09123456789", name: "Name", surname: "Surname", initial_tokens: "Initial Tokens (optional)", initial_requests: "Initial Requests (optional)", balance: "Balance", requests_label: "Requests", tokens_label: "Tokens", token_limit: "Token Limit", request_limit: "Request Limit", tokens_usage: "Tokens Usage", requests_usage: "Requests Usage", actions: "Actions", copy_token: "Copy Token (auto-refresh)", token_copied: "Token copied successfully", no_token: "No token found for this user", recharge: "Recharge Balance", full_charge: "Full Charge", update_balance: "Update Balance", update_balance_for: "Update Balance for", token_count: "Token Count", request_count: "Request Count", updating: "Updating...", no_users: "No users found.", confirm_delete_user: "Are you sure you want to delete this user?", tokens_exceed_limit: "Tokens cannot exceed the specified limit", requests_exceed_limit: "Requests cannot exceed the specified limit", metadata: "Metadata (JSON)", initial_balance: "Initial Balance", custom_fields: "Additional Fields", metadata_raw: "Metadata (Raw JSON)", advanced_usage: "Advanced usage", invalid_json: "Invalid JSON format" }, admins: { title: "Admin Management", admin_count: "Admin count: {{count}}", add_admin: "Add New Admin", edit_admin: "Edit Admin", username: "Username", name: "Name", password: "Password", password_edit: "New Password (leave empty to keep current)", permissions: "Permissions", perm_chat_history: "Chat History", perm_admin_management: "Admin Management", perm_user_management: "User Management", perm_analytics: "Analytics", perm_settings: "Settings", no_admins: "No admins found.", confirm_delete_admin: "Are you sure you want to delete this admin?" }, errors: { access_denied_title: "Access Denied", access_denied_message: "You don't have the necessary permissions to access this page. You can contact the administrator!", back_to_dashboard: "Back to Dashboard" }, login: { title: "Admin Panel", setup_title: "Initial Setup", setup_description: "No admin account exists yet. Set a password for the default admin user to get started.", set_password: "Set Password", set_password_placeholder: "Choose a strong password", confirm_password: "Confirm Password", confirm_password_placeholder: "Re-enter the password", passwords_mismatch: "Passwords do not match", password_too_short: "Password must be at least 4 characters", create_admin: "Create Admin & Login", setting_up: "Setting up...", username: "Username", username_placeholder: "Username", password: "Password", password_placeholder: "••••••••", submit: "Login", logging_in: "Logging in...", error: "Login failed", copyright: "© 2026 AI Chatbot Platform" } }, Ua = { title: "Settings", sections: { profile: "Profile", general: "General", account: "Account" }, profile: { title: "Profile Information", subtitle: "Update your personal details below.", name: "First Name", surname: "Last Name", phone: "Phone Number", password: "New Password", password_placeholder: "Leave empty to keep current", save: "Save Changes", saving: "Saving...", success: "Profile updated successfully", error: "Failed to update profile", select_placeholder: "Select an option" }, general: { title: "General Settings", subtitle: "Configure look and feel and language.", theme: "Theme", language: "Language", themes: { light: "Light", dark: "Dark", system: "System" }, accent: "Accent Color", radius: "Rounded Corners", radius_levels: { sharp: "Sharp", round: "Round" }, languages: { en: "English", fa: "Persian" } }, account: { title: "Account & Usage", subtitle: "Monitor your quotas and manage your session.", balance: "Current Balance", tokens: "Tokens", requests: "Requests", logout: "Logout", logout_confirm: "Are you sure you want to logout?", last_recharge: "Last balance update on" } }, $a = { unauthorized: "Authentication required. Please login again.", invalid_credentials: "Invalid phone number or password.", phone_required: "Phone number is required.", password_required: "Password is required.", name_surname_required: "Name and surname are required.", phone_already_exists: "This phone number is already registered.", invalid_token: "Your session has expired. Please login again.", user_not_found: "User not found.", insufficient_balance: "Insufficient balance. Please recharge your account.", me_update_failed: "Failed to update profile information.", thread_not_found: "Conversation not found.", access_denied: "You do not have permission to perform this action.", feedback_save_failed: "Failed to save feedback.", thread_update_failed: "Failed to update conversation.", thread_delete_failed: "Failed to delete conversation.", attachment_not_found: "Attachment not found.", thread_share_failed: "Failed to share conversation.", model_quota_reached_error: "The system cannot respond at this time. Please try again later.", admin_already_exists: "Admin with this username already exists.", admin_not_found: "Admin not found.", cannot_delete_self: "You cannot delete your own admin account.", admin_update_failed: "Failed to update admin information.", internal_error: "An internal server error occurred. Please try again later.", validation_error: "Invalid data provided. Please check your input.", not_found: "The requested resource was not found." }, Ba = {
|
|
6275
6276
|
sidebar: La,
|
|
6276
6277
|
chat: Fa,
|
|
6277
6278
|
tools_ui: Da,
|
|
@@ -6280,7 +6281,7 @@ const La = { new_conversation: "New conversation", tooltip_new_conversation: "St
|
|
|
6280
6281
|
admin: za,
|
|
6281
6282
|
settings: Ua,
|
|
6282
6283
|
errors: $a
|
|
6283
|
-
}, Ha = { new_conversation: "گفتگوی جدید", tooltip_new_conversation: "شروع یک گفتگوی جدید", delete_conversation: "حذف", delete_confirm_title: "حذف گفتگو؟", delete_confirm_description: "آیا از حذف این گفتگو اطمینان دارید؟ این عمل قابل بازگشت نیست.", cancel: "انصراف", delete: "حذف", chat_deleted_success: "گفتگو با موفقیت حذف شد", logout: "خروج", new_chat: "گفتگوی جدید", rename_conversation: "تغییر نام", rename_success: "نام گفتگو با موفقیت تغییر کرد", rename_failed: "خطا در تغییر نام گفتگو", search_conversations: "جستجوی گفتگوها...", save: "ذخیره", no_conversations: "هنوز گفتگویی ندارید", loading_more: "در حال بارگذاری...", pinned_success: "گفتگو پین شد", unpinned_success: "گفتگو از حالت پین خارج شد", pin_failed: "خطا در پین کردن گفتگو", share_success: "لینک کپی شد", share_description: "لینک اشتراکگذاری در حافظه موقت کپی شد.", share_failed: "خطا در ایجاد لینک اشتراکگذاری", pin_conversation: "پین", unpin_conversation: "برداشتن پین", share_conversation: "اشتراکگذاری" }, qa = { tools: "ابزارها", error: "خطا:", input_placeholder: "سوالتو اینجا بپرس...", insufficient_balance: "موجودی حساب شما کافی نیست. لطفا برای ادامه، حساب خود را شارژ کنید.", regenerate: "تولید مجدد", retry: "تلاش مجدد", copy: "کپی", like: "پسندیدم", dislike: "نپسندیدم", attach_file: "پیوست فایل", remove_file: "حذف فایل", used_sources: "از {{count}} منبع استفاده شد", welcome: { title: "سلام! چطور میتونم کمکت کنم؟", subtitle: "هر سوالی داری بپرس، تمام تلاشمو میکنم کمکت کنم.", suggestions: ["چه کارهایی میتونی انجام بدی؟", "یه چیز جالب بهم بگو", "کمکم کن یه ایمیل بنویسم", "یه مفهوم رو برام توضیح بده"] }, disclaimer: "هوش مصنوعی ممکن است اشتباه کند. اطلاعات مهم را بررسی کنید." }, ja = { pending: "در انتظار", running: "در حال اجرا", completed: "تکمیل شده", error: "خطا", parameters: "پارامترها", result: "نتیجه", view_error: "نمایش خطا", tool_error: "خطای ابزار", copied: "کپی شد!", copy_error: "کپی خطا" }, Ga = { login_tab: "ورود", signup_tab: "ثبت نام", phone: "شماره تلفن", phone_placeholder: "شماره تلفن", password: "رمز عبور", name: "نام", name_placeholder: "نام", surname: "نام خانوادگی", surname_placeholder: "نام خانوادگی", logging_in: "در حال ورود...", signing_up: "در حال ثبت نام...", auth_page_disabled_title: "صفحه ورود غیرفعال شده است.", auth_page_disabled_description: "برای دسترسی با مدیر سامانه تماس بگیرید.", select_placeholder: "انتخاب کنید", login_button: "ورود", signup_button: "ثبت نام" }, Va = { toggle: "تغییر تم", light: "تغییر به تم روشن", dark: "تغییر به تم تاریک", system: "تغییر به تم سیستم" }, Wa = { select_placeholder: "انتخاب کنید", loading: "در حال بارگذاری...", retry: "تلاش مجدد", save: "ذخیره", saving: "در حال ذخیره...", cancel: "انصراف", delete: "حذف", edit: "ویرایش", search: "جستجو", search_placeholder: "جستجو...", no_data: "دادهای موجود نیست", loading_more: "در حال بارگذاری بیشتر...", confirm_delete: "آیا از حذف اطمینان دارید؟", error_loading: "خطا در بارگذاری دادهها", dashboard: { title: "پنل ادمین", logout: "خروج", tabs: { analytics: "تحلیل و آمار", chat_history: "گفتگوها", users: "کاربران", admins: "ادمینها", settings: "تنظیمات" } }, app_settings: { title: "تنظیمات سامانه", subtitle: "پیکربندی کلی ظاهر و رفتار سامانه را مدیریت کنید.", sections: { general: "اطلاعات پایه", chat: "تنظیمات گفتگو", user_billing: "کاربری و مالی" }, general: { app_name: "نام سامانه", admin_title: "عنوان پنل ادمین", language: "زبان پیشفرض", language_help: "زبانی که کاربر در اولین ورود مشاهده میکند (در صورت عدم تشخیص خودکار)." }, chat: { welcome_greeting: "پیام خوشآمدگویی", welcome_subtitle: "زیرعنوان خوشآمدگویی", disclaimer: "متن سلب مسئولیت", show_tool_details: "نمایش جزئیات فنی ابزارها (Tools)", show_tool_details_help: "برای نمایش جزئیات فنی و نحوه عملکرد ابزارهای هوش مصنوعی به کاربران، این گزینه را فعال کنید.", show_settings: "نمایش آیکون تنظیمات برای کاربران", show_settings_help: "نمایش چرخدنده تنظیمات در محیط چت برای شخصیسازی توسط کاربر.", show_version_in_settings: "نمایش نسخه برنامه در تنظیمات کاربر", show_version_in_settings_help: "نسخه برنامه را در پایین پنجره تنظیمات کاربر نمایش میدهد. این گزینه روی صفحه تنظیمات ادمین اثری ندارد.", disable_signup: "غیرفعالسازی ثبتنام", disable_signup_help: "تب ثبتنام را مخفی میکند تا کاربران فقط بتوانند وارد شوند.", disable_auth_page: "غیرفعالسازی صفحه ورود/ثبتنام", disable_auth_page_help: "کل صفحه احراز هویت را مخفی میکند و دسترسی به فرمهای ورود و ثبتنام را میبندد.", composer_attachments: "فعالسازی پیوست فایل", composer_attachments_help: "اجازه به کاربران برای آپلود و پیوست فایل به پیامها.", thread_actions_feedback: "فعالسازی دکمههای بازخورد", thread_actions_feedback_help: "نمایش دکمههای پسندیدن/نپسندیدن در پاسخهای هوش مصنوعی.", thread_actions_retry: "فعالسازی دکمه تلاش مجدد", thread_actions_retry_help: "نمایش دکمه تلاش مجدد برای تولید دوباره آخرین پاسخ هوش مصنوعی.", history_enabled: "فعالسازی سایدبار تاریخچه", history_enabled_help: "نمایش منوی کناری شامل گفتگوهای قبلی.", history_show_delete: "اجازه حذف گفتگوها", history_show_rename: "اجازه تغییر نام گفتگوها", history_show_share: "اجازه اشتراکگذاری گفتگوها", history_show_pin: "اجازه پین کردن گفتگوها", sections_modes: "وضعیت نمایش تبهای تنظیمات", sections_modes_help: "کنترل نمایش یا غیرفعال بودن تبهای مختلف در بخش تنظیمات کاربر.", mode_editable: "فعال (قابل ویرایش)", mode_faded: "محو (فقط خواندنی)", mode_hidden: "مخفی (غیرفعال)", general_tab: "تب عمومی", profile_tab: "تب پروفایل", account_tab: "تب حساب کاربری", inner_fields_modes: "مشاهدهپذیری فیلدهای داخلی", inner_fields_modes_help: "وضعیت نمایش فیلدهای هر تب را بهصورت مجزا پیکربندی کنید." }, user_billing: { initial_balance_tokens: "توکن اولیه پیشفرض", initial_balance_requests: "تعداد درخواست اولیه پیشفرض", initial_balance_help: "این مقادیر بهصورت خودکار به کاربران جدید اختصاص داده میشوند، مگر اینکه هنگام ایجاد کاربر مقدار دیگری تعیین شود." }, save_success: "تنظیمات با موفقیت ذخیره شد", save_error: "خطا در ذخیرهسازی تنظیمات", save: "ذخیره تغییرات", translations_management: "مدیریت ترجمهها", editor_tips: "تمام تغییرات بهصورت خودکار در حالت محلی ذخیره میشوند. برای نهاییسازی، دکمه «ذخیره تغییرات» را بزنید.", sync_from_code: "همگامسازی از کد", reset_button: "بازنشانی به تنظیمات اولیه", reset_confirm_title: "بازنشانی تنظیمات؟", reset_confirm_description: "این عمل تمام فیلدها را به مقادیر پیشفرض در کد بازمیگرداند. تغییرات ذخیره نشده فعلی از بین خواهند رفت.", preview: "پیشنمایش", tips_label: "نکته" }, analytics: { title: "تحلیل و آمار", days: "{{count}} روز", total_users: "تعداد کاربران", total_threads: "تعداد گفتگوها", total_messages: "تعداد پیامها", total_token_usage: "مصرف کل توکن", threads_chart: "گفتگوها", messages_chart: "پیامها", token_usage_chart: "مصرف توکن", active_users: "کاربران فعال", conversations: "گفتگو", threads: "گفتگو", feedback: "نظرات کاربران", total_feedback: "کل نظرات", positive: "مثبت", negative: "منفی", loading_analytics: "در حال بارگذاری تحلیلها...", error_loading: "خطا در بارگذاری دادهها" }, chat_history: { title: "مدیریت تاریخچه گفتگوها", search_placeholder: "جستجو بر اساس نام، شماره تماس، عنوان گفتگو یا شناسه...", search_button: "جستجو", threads_list: "لیست گفتگوها", thread_count: "{{count}}", no_thread_title: "گفتگو بدون عنوان", messages: "پیامها", messages_for: "پیامهای گفتگو: {{title}}", select_thread: "یک گفتگو را برای مشاهده انتخاب کنید", no_threads: "هیچ گفتگویی یافت نشد", empty_thread: "این گفتگو خالی است", loading_threads: "در حال بارگذاری...", loading_messages: "در حال بارگذاری پیامها...", user_label: "کاربر", assistant_label: "دستیار هوشمند", input_tokens: "ورودی: {{value}}", output_tokens: "خروجی: {{value}}", total_tokens: "کل: {{value}}", all_feedbacks: "همه گفتگوها", liked_feedbacks: "پسندیده شده 👍", disliked_feedbacks: "نپسندیده شده 👎", any_feedback: "دارای بازخورد", output_available: "خروجی موجود است", running: "در حال اجرا...", unnamed_file: "فایل بدون نام", download_file: "دانلود فایل" }, users: { title: "مدیریت کاربران", user_count: "تعداد کاربران: {{count}}", add_user: "افزودن کاربر جدید", edit_user: "ویرایش کاربر", phone: "شماره تلفن", phone_placeholder: "۰۹۱۲۳۴۵۶۷۸۹", name: "نام", surname: "نام خانوادگی", initial_tokens: "تعداد توکن اولیه (اختیاری)", initial_requests: "تعداد درخواست اولیه (اختیاری)", balance: "موجودی", requests_label: "درخواستها", tokens_label: "توکنها", token_limit: "سقف توکن", request_limit: "سقف درخواست", tokens_usage: "میزان مصرف توکن", requests_usage: "میزان مصرف درخواست", actions: "عملیات", copy_token: "کپی توکن (با بروزرسانی خودکار)", token_copied: "توکن با موفقیت کپی شد", no_token: "توکنی برای این کاربر یافت نشد", recharge: "شارژ موجودی", full_charge: "شارژ کامل", update_balance: "بروزرسانی موجودی", update_balance_for: "بروزرسانی موجودی", token_count: "تعداد توکن", request_count: "تعداد درخواست", updating: "در حال بروزرسانی...", no_users: "هیچ کاربری یافت نشد.", confirm_delete_user: "آیا از حذف این کاربر اطمینان دارید؟", tokens_exceed_limit: "تعداد توکن نمیتواند بیشتر از سقف مجاز باشد", requests_exceed_limit: "تعداد درخواست نمیتواند بیشتر از سقف مجاز باشد", metadata: "متادیتا (JSON)", initial_balance: "موجودی اولیه", custom_fields: "فیلدهای اضافه", metadata_raw: "متادیتا (JSON خام)", advanced_usage: "استفاده پیشرفته", invalid_json: "فرمت JSON نامعتبر است" }, admins: { title: "مدیریت ادمینها", admin_count: "تعداد ادمینها: {{count}}", add_admin: "افزودن ادمین جدید", edit_admin: "ویرایش ادمین", username: "نام کاربری", name: "نام", password: "رمز عبور", password_edit: "رمز عبور جدید (خالی بگذارید تا تغییر نکند)", permissions: "دسترسیها", perm_chat_history: "تاریخچه گفتگوها", perm_admin_management: "مدیریت ادمینها", perm_user_management: "مدیریت کاربران", perm_analytics: "تحلیل و آمار", perm_settings: "تنظیمات", no_admins: "هیچ ادمینی یافت نشد.", confirm_delete_admin: "آیا از حذف این ادمین اطمینان دارید؟" }, errors: { access_denied_title: "عدم دسترسی", access_denied_message: "شما مجوزهای لازم برای دسترسی به این صفحه را ندارید. میتوانید با مدیر سیستم تماس بگیرید.", back_to_dashboard: "بازگشت به پیشخوان" }, login: { title: "پنل ادمین", setup_title: "راهاندازی اولیه", setup_description: "هنوز حساب ادمینی وجود ندارد. برای شروع، یک رمز عبور برای کاربر ادمین پیشفرض تنظیم کنید.", set_password: "تعیین رمز عبور", set_password_placeholder: "یک رمز عبور قوی انتخاب کنید", confirm_password: "تأیید رمز عبور", confirm_password_placeholder: "رمز عبور را دوباره وارد کنید", passwords_mismatch: "رمزهای عبور مطابقت ندارند", password_too_short: "رمز عبور باید حداقل ۴ کاراکتر باشد", create_admin: "ایجاد ادمین و ورود", setting_up: "در حال راهاندازی...", username: "نام کاربری", username_placeholder: "نام کاربری", password: "رمز عبور", password_placeholder: "••••••••", submit: "ورود به پنل", logging_in: "در حال ورود...", error: "خطا در ورود", copyright: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Ya = { title: "تنظیمات", sections: { profile: "پروفایل", general: "عمومی", account: "حساب کاربری" }, profile: { title: "اطلاعات پروفایل", subtitle: "اطلاعات شخصی خود را در زیر بروز کنید.", name: "نام", surname: "نام خانوادگی", phone: "شماره تلفن", password: "رمز عبور جدید", password_placeholder: "برای عدم تغییر خالی بگذارید", save: "ذخیره تغییرات", saving: "در حال ذخیره...", success: "پروفایل با موفقیت بروزرسانی شد", error: "خطا در بروزرسانی پروفایل", select_placeholder: "انتخاب کنید" }, general: { title: "تنظیمات عمومی", subtitle: "ظاهر و زبان برنامه را تنظیم کنید.", theme: "تم", language: "زبان", themes: { light: "روشن", dark: "تاریک", system: "سیستم" }, accent: "رنگ اصلی", radius: "میزان گردی لبهها", radius_levels: { sharp: "تیز", round: "گرد" }, languages: { en: "English", fa: "فارسی" } }, account: { title: "حساب و میزان مصرف", subtitle: "سهمیه مصرف و نشست خود را مدیریت کنید.", balance: "موجود فعلی", tokens: "توکنها", requests: "درخواستها", logout: "خروج از حساب", logout_confirm: "آیا از خروج اطمینان دارید؟", last_recharge: "آخرین بروزرسانی اعتبار در تاریخ" } }, Xa = { unauthorized: "دسترسی مجاز نیست. لطفاً دوباره وارد شوید.", invalid_credentials: "شماره تلفن یا رمز عبور اشتباه است.", phone_required: "شماره تلفن الزامی است.", password_required: "رمز عبور الزامی است.", name_surname_required: "نام و نام خانوادگی الزامی است.", phone_already_exists: "این شماره تلفن قبلاً ثبت شده است.", invalid_token: "نشست شما منقضی شده است. لطفاً دوباره وارد شوید.", user_not_found: "کاربر یافت نشد.", insufficient_balance: "موجودی کافی نیست. لطفاً حساب خود را شارژ کنید.", me_update_failed: "خطا در بروزرسانی اطلاعات پروفایل.", thread_not_found: "گفتگو یافت نشد.", access_denied: "شما اجازه انجام این عملیات را ندارید.", feedback_save_failed: "خطا در ثبت بازخورد.", thread_update_failed: "خطا در بروزرسانی گفتگو.", thread_delete_failed: "خطا در حذف گفتگو.", attachment_not_found: "فایل پیوست یافت نشد.", thread_share_failed: "خطا در اشتراکگذاری گفتگو.", model_quota_reached_error: "سامانه در حال حاضر قادر به پاسخگویی نیست. لطفاً بعداً دوباره تلاش کنید.", admin_already_exists: "ادمین با این نام کاربری قبلاً ایجاد شده است.", admin_not_found: "ادمین یافت نشد.", cannot_delete_self: "شما نمیتوانید حساب مدیریت خود را حذف کنید.", admin_update_failed: "خطا در بروزرسانی اطلاعات ادمین.", internal_error: "یک خطای داخلی در سرور رخ داده است. لطفاً بعداً تلاش کنید.", validation_error: "دادههای ارسالی معتبر نیستند. لطفاً ورودیهای خود را بررسی کنید.", not_found: "منبع مورد نظر یافت نشد." }, Ka = {
|
|
6284
|
+
}, Ha = { new_conversation: "گفتگوی جدید", tooltip_new_conversation: "شروع یک گفتگوی جدید", delete_conversation: "حذف", delete_confirm_title: "حذف گفتگو؟", delete_confirm_description: "آیا از حذف این گفتگو اطمینان دارید؟ این عمل قابل بازگشت نیست.", cancel: "انصراف", delete: "حذف", chat_deleted_success: "گفتگو با موفقیت حذف شد", logout: "خروج", new_chat: "گفتگوی جدید", rename_conversation: "تغییر نام", rename_success: "نام گفتگو با موفقیت تغییر کرد", rename_failed: "خطا در تغییر نام گفتگو", search_conversations: "جستجوی گفتگوها...", save: "ذخیره", no_conversations: "هنوز گفتگویی ندارید", loading_more: "در حال بارگذاری...", pinned_success: "گفتگو پین شد", unpinned_success: "گفتگو از حالت پین خارج شد", pin_failed: "خطا در پین کردن گفتگو", share_success: "لینک کپی شد", share_description: "لینک اشتراکگذاری در حافظه موقت کپی شد.", share_failed: "خطا در ایجاد لینک اشتراکگذاری", pin_conversation: "پین", unpin_conversation: "برداشتن پین", share_conversation: "اشتراکگذاری" }, qa = { tools: "ابزارها", error: "خطا:", input_placeholder: "سوالتو اینجا بپرس...", insufficient_balance: "موجودی حساب شما کافی نیست. لطفا برای ادامه، حساب خود را شارژ کنید.", regenerate: "تولید مجدد", retry: "تلاش مجدد", copy: "کپی", like: "پسندیدم", dislike: "نپسندیدم", attach_file: "پیوست فایل", remove_file: "حذف فایل", used_sources: "از {{count}} منبع استفاده شد", welcome: { title: "سلام! چطور میتونم کمکت کنم؟", subtitle: "هر سوالی داری بپرس، تمام تلاشمو میکنم کمکت کنم.", suggestions: ["چه کارهایی میتونی انجام بدی؟", "یه چیز جالب بهم بگو", "کمکم کن یه ایمیل بنویسم", "یه مفهوم رو برام توضیح بده"] }, disclaimer: "هوش مصنوعی ممکن است اشتباه کند. اطلاعات مهم را بررسی کنید." }, ja = { pending: "در انتظار", running: "در حال اجرا", completed: "تکمیل شده", error: "خطا", parameters: "پارامترها", result: "نتیجه", view_error: "نمایش خطا", tool_error: "خطای ابزار", copied: "کپی شد!", copy_error: "کپی خطا" }, Ga = { login_tab: "ورود", signup_tab: "ثبت نام", phone: "شماره تلفن", phone_placeholder: "شماره تلفن", password: "رمز عبور", name: "نام", name_placeholder: "نام", surname: "نام خانوادگی", surname_placeholder: "نام خانوادگی", logging_in: "در حال ورود...", signing_up: "در حال ثبت نام...", auth_page_disabled_title: "صفحه ورود غیرفعال شده است.", auth_page_disabled_description: "برای دسترسی با مدیر سامانه تماس بگیرید.", select_placeholder: "انتخاب کنید", login_button: "ورود", signup_button: "ثبت نام" }, Va = { toggle: "تغییر تم", light: "تغییر به تم روشن", dark: "تغییر به تم تاریک", system: "تغییر به تم سیستم" }, Wa = { select_placeholder: "انتخاب کنید", loading: "در حال بارگذاری...", retry: "تلاش مجدد", save: "ذخیره", saving: "در حال ذخیره...", cancel: "انصراف", delete: "حذف", edit: "ویرایش", search: "جستجو", search_placeholder: "جستجو...", no_data: "دادهای موجود نیست", loading_more: "در حال بارگذاری بیشتر...", confirm_delete: "آیا از حذف اطمینان دارید؟", error_loading: "خطا در بارگذاری دادهها", dashboard: { title: "پنل ادمین", logout: "خروج", tabs: { analytics: "تحلیل و آمار", chat_history: "گفتگوها", users: "کاربران", admins: "ادمینها", settings: "تنظیمات" } }, app_settings: { title: "تنظیمات سامانه", subtitle: "پیکربندی کلی ظاهر و رفتار سامانه را مدیریت کنید.", sections: { general: "اطلاعات پایه", chat: "تنظیمات گفتگو", user_billing: "کاربری و مالی" }, general: { app_name: "نام سامانه", admin_title: "عنوان پنل ادمین", language: "زبان پیشفرض", language_help: "زبانی که کاربر در اولین ورود مشاهده میکند (در صورت عدم تشخیص خودکار).", appearance: "ظاهر پیشفرض", appearance_help: "این مقادیر زمانی اعمال میشوند که کاربر تنظیمات ظاهری خود را ذخیره نکرده باشد.", default_theme: "پوسته پیشفرض", default_accent: "رنگ اصلی پیشفرض", default_accent_help: "هر رنگ CSS پشتیبانیشده توسط مرورگر را وارد کنید؛ مانند #3b82f6 یا rgb(59 130 246).", default_accent_invalid: "یک رنگ CSS معتبر و پشتیبانیشده توسط مرورگر وارد کنید.", default_accent_preview: "پیشنمایش رنگ اصلی" }, chat: { welcome_greeting: "پیام خوشآمدگویی", welcome_subtitle: "زیرعنوان خوشآمدگویی", disclaimer: "متن سلب مسئولیت", show_tool_details: "نمایش جزئیات فنی ابزارها (Tools)", show_tool_details_help: "برای نمایش جزئیات فنی و نحوه عملکرد ابزارهای هوش مصنوعی به کاربران، این گزینه را فعال کنید.", show_settings: "نمایش آیکون تنظیمات برای کاربران", show_settings_help: "نمایش چرخدنده تنظیمات در محیط چت برای شخصیسازی توسط کاربر.", show_version_in_settings: "نمایش نسخه برنامه در تنظیمات کاربر", show_version_in_settings_help: "نسخه برنامه را در پایین پنجره تنظیمات کاربر نمایش میدهد. این گزینه روی صفحه تنظیمات ادمین اثری ندارد.", disable_signup: "غیرفعالسازی ثبتنام", disable_signup_help: "تب ثبتنام را مخفی میکند تا کاربران فقط بتوانند وارد شوند.", disable_auth_page: "غیرفعالسازی صفحه ورود/ثبتنام", disable_auth_page_help: "کل صفحه احراز هویت را مخفی میکند و دسترسی به فرمهای ورود و ثبتنام را میبندد.", composer_attachments: "فعالسازی پیوست فایل", composer_attachments_help: "اجازه به کاربران برای آپلود و پیوست فایل به پیامها.", thread_actions_feedback: "فعالسازی دکمههای بازخورد", thread_actions_feedback_help: "نمایش دکمههای پسندیدن/نپسندیدن در پاسخهای هوش مصنوعی.", thread_actions_retry: "فعالسازی دکمه تلاش مجدد", thread_actions_retry_help: "نمایش دکمه تلاش مجدد برای تولید دوباره آخرین پاسخ هوش مصنوعی.", history_enabled: "فعالسازی سایدبار تاریخچه", history_enabled_help: "نمایش منوی کناری شامل گفتگوهای قبلی.", history_show_delete: "اجازه حذف گفتگوها", history_show_rename: "اجازه تغییر نام گفتگوها", history_show_share: "اجازه اشتراکگذاری گفتگوها", history_show_pin: "اجازه پین کردن گفتگوها", sections_modes: "وضعیت نمایش تبهای تنظیمات", sections_modes_help: "کنترل نمایش یا غیرفعال بودن تبهای مختلف در بخش تنظیمات کاربر.", mode_editable: "فعال (قابل ویرایش)", mode_faded: "محو (فقط خواندنی)", mode_hidden: "مخفی (غیرفعال)", general_tab: "تب عمومی", profile_tab: "تب پروفایل", account_tab: "تب حساب کاربری", inner_fields_modes: "مشاهدهپذیری فیلدهای داخلی", inner_fields_modes_help: "وضعیت نمایش فیلدهای هر تب را بهصورت مجزا پیکربندی کنید." }, user_billing: { initial_balance_tokens: "توکن اولیه پیشفرض", initial_balance_requests: "تعداد درخواست اولیه پیشفرض", initial_balance_help: "این مقادیر بهصورت خودکار به کاربران جدید اختصاص داده میشوند، مگر اینکه هنگام ایجاد کاربر مقدار دیگری تعیین شود." }, save_success: "تنظیمات با موفقیت ذخیره شد", save_error: "خطا در ذخیرهسازی تنظیمات", save: "ذخیره تغییرات", translations_management: "مدیریت ترجمهها", editor_tips: "تمام تغییرات بهصورت خودکار در حالت محلی ذخیره میشوند. برای نهاییسازی، دکمه «ذخیره تغییرات» را بزنید.", sync_from_code: "همگامسازی از کد", reset_button: "بازنشانی به تنظیمات اولیه", reset_confirm_title: "بازنشانی تنظیمات؟", reset_confirm_description: "این عمل تمام فیلدها را به مقادیر پیشفرض در کد بازمیگرداند. تغییرات ذخیره نشده فعلی از بین خواهند رفت.", preview: "پیشنمایش", tips_label: "نکته" }, analytics: { title: "تحلیل و آمار", days: "{{count}} روز", total_users: "تعداد کاربران", total_threads: "تعداد گفتگوها", total_messages: "تعداد پیامها", total_token_usage: "مصرف کل توکن", threads_chart: "گفتگوها", messages_chart: "پیامها", token_usage_chart: "مصرف توکن", active_users: "کاربران فعال", conversations: "گفتگو", threads: "گفتگو", feedback: "نظرات کاربران", total_feedback: "کل نظرات", positive: "مثبت", negative: "منفی", loading_analytics: "در حال بارگذاری تحلیلها...", error_loading: "خطا در بارگذاری دادهها" }, chat_history: { title: "مدیریت تاریخچه گفتگوها", search_placeholder: "جستجو بر اساس نام، شماره تماس، عنوان گفتگو یا شناسه...", search_button: "جستجو", threads_list: "لیست گفتگوها", thread_count: "{{count}}", no_thread_title: "گفتگو بدون عنوان", messages: "پیامها", messages_for: "پیامهای گفتگو: {{title}}", select_thread: "یک گفتگو را برای مشاهده انتخاب کنید", no_threads: "هیچ گفتگویی یافت نشد", empty_thread: "این گفتگو خالی است", loading_threads: "در حال بارگذاری...", loading_messages: "در حال بارگذاری پیامها...", user_label: "کاربر", assistant_label: "دستیار هوشمند", input_tokens: "ورودی: {{value}}", output_tokens: "خروجی: {{value}}", total_tokens: "کل: {{value}}", all_feedbacks: "همه گفتگوها", liked_feedbacks: "پسندیده شده 👍", disliked_feedbacks: "نپسندیده شده 👎", any_feedback: "دارای بازخورد", output_available: "خروجی موجود است", running: "در حال اجرا...", unnamed_file: "فایل بدون نام", download_file: "دانلود فایل" }, users: { title: "مدیریت کاربران", user_count: "تعداد کاربران: {{count}}", add_user: "افزودن کاربر جدید", edit_user: "ویرایش کاربر", phone: "شماره تلفن", phone_placeholder: "۰۹۱۲۳۴۵۶۷۸۹", name: "نام", surname: "نام خانوادگی", initial_tokens: "تعداد توکن اولیه (اختیاری)", initial_requests: "تعداد درخواست اولیه (اختیاری)", balance: "موجودی", requests_label: "درخواستها", tokens_label: "توکنها", token_limit: "سقف توکن", request_limit: "سقف درخواست", tokens_usage: "میزان مصرف توکن", requests_usage: "میزان مصرف درخواست", actions: "عملیات", copy_token: "کپی توکن (با بروزرسانی خودکار)", token_copied: "توکن با موفقیت کپی شد", no_token: "توکنی برای این کاربر یافت نشد", recharge: "شارژ موجودی", full_charge: "شارژ کامل", update_balance: "بروزرسانی موجودی", update_balance_for: "بروزرسانی موجودی", token_count: "تعداد توکن", request_count: "تعداد درخواست", updating: "در حال بروزرسانی...", no_users: "هیچ کاربری یافت نشد.", confirm_delete_user: "آیا از حذف این کاربر اطمینان دارید؟", tokens_exceed_limit: "تعداد توکن نمیتواند بیشتر از سقف مجاز باشد", requests_exceed_limit: "تعداد درخواست نمیتواند بیشتر از سقف مجاز باشد", metadata: "متادیتا (JSON)", initial_balance: "موجودی اولیه", custom_fields: "فیلدهای اضافه", metadata_raw: "متادیتا (JSON خام)", advanced_usage: "استفاده پیشرفته", invalid_json: "فرمت JSON نامعتبر است" }, admins: { title: "مدیریت ادمینها", admin_count: "تعداد ادمینها: {{count}}", add_admin: "افزودن ادمین جدید", edit_admin: "ویرایش ادمین", username: "نام کاربری", name: "نام", password: "رمز عبور", password_edit: "رمز عبور جدید (خالی بگذارید تا تغییر نکند)", permissions: "دسترسیها", perm_chat_history: "تاریخچه گفتگوها", perm_admin_management: "مدیریت ادمینها", perm_user_management: "مدیریت کاربران", perm_analytics: "تحلیل و آمار", perm_settings: "تنظیمات", no_admins: "هیچ ادمینی یافت نشد.", confirm_delete_admin: "آیا از حذف این ادمین اطمینان دارید؟" }, errors: { access_denied_title: "عدم دسترسی", access_denied_message: "شما مجوزهای لازم برای دسترسی به این صفحه را ندارید. میتوانید با مدیر سیستم تماس بگیرید.", back_to_dashboard: "بازگشت به پیشخوان" }, login: { title: "پنل ادمین", setup_title: "راهاندازی اولیه", setup_description: "هنوز حساب ادمینی وجود ندارد. برای شروع، یک رمز عبور برای کاربر ادمین پیشفرض تنظیم کنید.", set_password: "تعیین رمز عبور", set_password_placeholder: "یک رمز عبور قوی انتخاب کنید", confirm_password: "تأیید رمز عبور", confirm_password_placeholder: "رمز عبور را دوباره وارد کنید", passwords_mismatch: "رمزهای عبور مطابقت ندارند", password_too_short: "رمز عبور باید حداقل ۴ کاراکتر باشد", create_admin: "ایجاد ادمین و ورود", setting_up: "در حال راهاندازی...", username: "نام کاربری", username_placeholder: "نام کاربری", password: "رمز عبور", password_placeholder: "••••••••", submit: "ورود به پنل", logging_in: "در حال ورود...", error: "خطا در ورود", copyright: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Ya = { title: "تنظیمات", sections: { profile: "پروفایل", general: "عمومی", account: "حساب کاربری" }, profile: { title: "اطلاعات پروفایل", subtitle: "اطلاعات شخصی خود را در زیر بروز کنید.", name: "نام", surname: "نام خانوادگی", phone: "شماره تلفن", password: "رمز عبور جدید", password_placeholder: "برای عدم تغییر خالی بگذارید", save: "ذخیره تغییرات", saving: "در حال ذخیره...", success: "پروفایل با موفقیت بروزرسانی شد", error: "خطا در بروزرسانی پروفایل", select_placeholder: "انتخاب کنید" }, general: { title: "تنظیمات عمومی", subtitle: "ظاهر و زبان برنامه را تنظیم کنید.", theme: "تم", language: "زبان", themes: { light: "روشن", dark: "تاریک", system: "سیستم" }, accent: "رنگ اصلی", radius: "میزان گردی لبهها", radius_levels: { sharp: "تیز", round: "گرد" }, languages: { en: "English", fa: "فارسی" } }, account: { title: "حساب و میزان مصرف", subtitle: "سهمیه مصرف و نشست خود را مدیریت کنید.", balance: "موجود فعلی", tokens: "توکنها", requests: "درخواستها", logout: "خروج از حساب", logout_confirm: "آیا از خروج اطمینان دارید؟", last_recharge: "آخرین بروزرسانی اعتبار در تاریخ" } }, Xa = { unauthorized: "دسترسی مجاز نیست. لطفاً دوباره وارد شوید.", invalid_credentials: "شماره تلفن یا رمز عبور اشتباه است.", phone_required: "شماره تلفن الزامی است.", password_required: "رمز عبور الزامی است.", name_surname_required: "نام و نام خانوادگی الزامی است.", phone_already_exists: "این شماره تلفن قبلاً ثبت شده است.", invalid_token: "نشست شما منقضی شده است. لطفاً دوباره وارد شوید.", user_not_found: "کاربر یافت نشد.", insufficient_balance: "موجودی کافی نیست. لطفاً حساب خود را شارژ کنید.", me_update_failed: "خطا در بروزرسانی اطلاعات پروفایل.", thread_not_found: "گفتگو یافت نشد.", access_denied: "شما اجازه انجام این عملیات را ندارید.", feedback_save_failed: "خطا در ثبت بازخورد.", thread_update_failed: "خطا در بروزرسانی گفتگو.", thread_delete_failed: "خطا در حذف گفتگو.", attachment_not_found: "فایل پیوست یافت نشد.", thread_share_failed: "خطا در اشتراکگذاری گفتگو.", model_quota_reached_error: "سامانه در حال حاضر قادر به پاسخگویی نیست. لطفاً بعداً دوباره تلاش کنید.", admin_already_exists: "ادمین با این نام کاربری قبلاً ایجاد شده است.", admin_not_found: "ادمین یافت نشد.", cannot_delete_self: "شما نمیتوانید حساب مدیریت خود را حذف کنید.", admin_update_failed: "خطا در بروزرسانی اطلاعات ادمین.", internal_error: "یک خطای داخلی در سرور رخ داده است. لطفاً بعداً تلاش کنید.", validation_error: "دادههای ارسالی معتبر نیستند. لطفاً ورودیهای خود را بررسی کنید.", not_found: "منبع مورد نظر یافت نشد." }, Ka = {
|
|
6284
6285
|
sidebar: Ha,
|
|
6285
6286
|
chat: qa,
|
|
6286
6287
|
tools_ui: ja,
|
|
@@ -6314,7 +6315,7 @@ function Ti({ className: e, type: t, ...n }) {
|
|
|
6314
6315
|
{
|
|
6315
6316
|
type: t,
|
|
6316
6317
|
"data-slot": "input",
|
|
6317
|
-
className:
|
|
6318
|
+
className: y(
|
|
6318
6319
|
"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
6319
6320
|
"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
|
|
6320
6321
|
"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
|
|
@@ -6324,13 +6325,13 @@ function Ti({ className: e, type: t, ...n }) {
|
|
|
6324
6325
|
}
|
|
6325
6326
|
);
|
|
6326
6327
|
}
|
|
6327
|
-
const Ci = "data:image/svg+xml,%3csvg%20version='1.2'%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201280%201280'%20width='500'%20height='500'%3e%3cstyle%3e%20.s0%20{%20opacity:%201;fill:%20%2317535d%20}%20.s1%20{%20opacity:%20.99;fill:%20%23fab185%20}%20%3c/style%3e%3cg%20id='gentiq%20(7)'%3e%3cpath%20id='Path%201'%20fill-rule='evenodd'%20class='s0'%20d='m616.5%2012.22c19.25-0.09%2038.15%200.29%2042%200.84%203.85%200.54%2011.73%201.43%2017.5%201.98%205.77%200.55%2016.35%201.85%2023.5%202.91%207.15%201.05%2016.6%202.62%2021%203.49%204.4%200.88%209.8%202.02%2012%202.53%202.2%200.52%207.15%201.65%2011%202.5%203.85%200.86%208.58%202%2010.5%202.54%201.92%200.54%207.77%202.15%2013%203.6%205.23%201.44%2016.02%204.77%2024%207.4%207.98%202.63%2017.65%205.99%2021.5%207.48%203.85%201.48%2011.95%204.74%2018%207.24%206.05%202.5%2014.6%206.16%2019%208.14%204.4%201.98%2013.4%206.35%2020%209.72%206.6%203.36%2014.48%207.47%2017.5%209.11%203.02%201.65%2011.35%206.5%2018.5%2010.77%207.15%204.27%2018.17%2011.2%2024.49%2015.4%206.32%204.2%2012.17%208.16%2013%208.82%200.83%200.65%207.36%205.55%2014.51%2010.88%207.15%205.33%2013.23%209.97%2013.5%2010.31%200.27%200.34%202.73%202.42%205.45%204.62%202.72%202.2%205.43%204.45%206.02%205%200.59%200.55%204.89%204.35%209.55%208.45%204.67%204.1%2015.04%2014%2023.05%2022%208.02%208%2018.22%2018.6%2022.67%2023.55%204.46%204.95%2011.4%2013.07%2015.43%2018.04%204.03%204.97%2011.43%2014.42%2016.43%2021%205.01%206.58%2012.65%2017.36%2016.97%2023.96%204.33%206.6%208.56%2013.15%209.4%2014.57%200.84%201.41%204.08%206.81%207.19%2012%203.11%205.18%207.29%2012.36%209.29%2015.93%202%203.57%207.6%2014.6%2012.44%2024.5%204.84%209.9%2010.51%2022.05%2012.6%2027%202.08%204.95%204.36%2010.35%205.07%2012%200.71%201.65%202.26%205.48%203.44%208.5%201.19%203.02%204.44%2012.25%207.22%2020.5%202.79%208.25%205.42%2016.35%205.84%2018%200.43%201.65%201.72%206.15%202.87%2010%201.15%203.85%203.86%2014.43%206.03%2023.5%202.16%209.07%204.38%2019.2%204.94%2022.5%200.56%203.3%201.5%208.7%202.1%2012%200.59%203.3%201.68%2010.05%202.43%2015%200.74%204.95%201.85%2013.27%202.47%2018.5%200.61%205.23%201.56%2018.95%202.11%2030.5%200.55%2011.55%200.99%2034.61%200.99%2051.25%200%2019.16-0.37%2030.43-1%2030.75-0.55%200.27-1%202.64-1.01%205.25%200%202.61-0.43%207.45-0.96%2010.75-0.52%203.3-1.7%2011.17-2.62%2017.5-0.92%206.33-2.02%2013.52-2.44%2016-0.43%202.48-1.29%207.42-1.93%2011-0.63%203.58-2.7%2013.02-4.6%2021-1.9%207.98-3.93%2016.3-4.51%2018.5-0.58%202.2-2.41%208.5-4.05%2014-1.64%205.5-4.8%2015.4-7.01%2022-2.21%206.6-4.39%2012.9-4.85%2014-0.46%201.1-2.22%205.71-3.92%2010.25-1.71%204.54-3.44%208.24-3.85%208.22-0.41-0.02-2.55-1.5-4.75-3.29-2.2-1.8-6.25-4.85-9-6.79-2.75-1.94-9.95-6.45-16-10.03-6.05-3.58-14.83-8.34-19.5-10.57-4.67-2.23-10.64-5.01-13.25-6.18-2.61-1.16-8.91-3.51-14-5.21-5.09-1.71-10.71-3.51-12.5-4-1.79-0.5-4.94-1.38-7-1.96-2.06-0.58-6.9-1.73-10.75-2.54-3.85-0.82-9.47-1.94-12.5-2.48-3.02-0.54-10.9-1.64-17.5-2.44-6.6-0.81-18.52-1.46-26.5-1.45-7.98%200-20.13%200.68-27%201.5-6.88%200.81-13.85%201.75-15.5%202.08-1.65%200.32-7.27%201.43-12.5%202.47-5.23%201.04-12.65%202.83-16.5%203.98-3.85%201.16-9.02%202.67-11.5%203.38-2.48%200.7-9.45%203.31-15.5%205.8-6.05%202.49-14.6%206.3-19%208.46-4.4%202.17-12.05%206.39-17%209.38-4.95%203-13.5%208.66-19%2012.58-5.5%203.92-12.7%209.48-16%2012.36-3.3%202.88-8.88%207.99-12.41%2011.36-3.52%203.36-9.6%209.72-13.5%2014.12-3.9%204.4-7.32%208.23-7.59%208.5-0.27%200.27-2.09%202.52-4.04%205-1.94%202.48-4.39%205.85-5.43%207.5-1.04%201.65-2.38%203.47-2.96%204.05-0.59%200.58-3.12%204.4-5.63%208.5-2.5%204.1-5.89%209.7-7.53%2012.45-1.63%202.75-4.16%207.48-5.61%2010.5-1.45%203.02-4.03%208.42-5.73%2012-1.71%203.58-3.1%206.95-3.09%207.5%200%200.55-0.69%202.35-1.54%204-0.85%201.65-2.83%206.83-4.39%2011.5-1.56%204.67-4.24%2014.12-5.95%2021-1.71%206.87-4.01%2019.25-5.1%2027.5-1.42%2010.7-1.99%2020.73-1.99%2035%200%2014.2%200.58%2024.35%201.98%2035%201.09%208.25%203.53%2021.08%205.43%2028.5%201.9%207.42%204.63%2016.87%206.07%2021%201.44%204.12%203.03%208.4%203.54%209.5%200.5%201.1%201.87%204.47%203.03%207.5%201.16%203.03%204.23%209.78%206.82%2015%202.59%205.22%205.48%2010.62%206.42%2012%200.94%201.37%201.73%202.72%201.74%203%200.01%200.28-1.91%201.07-4.26%201.77-2.35%200.7-8.55%202.17-13.78%203.28-5.23%201.11-11.98%202.47-15%203.03-3.02%200.55-7.75%201.43-10.5%201.95-2.75%200.52-10.63%201.65-17.5%202.53-6.88%200.87-16.33%202-21%202.5-4.67%200.5-17.27%201.4-28%202.01-11.32%200.65-29.56%200.85-43.5%200.48-13.2-0.35-27.83-1.06-32.5-1.57-4.67-0.52-14.8-1.66-22.5-2.54-7.7-0.88-17.6-2.21-22-2.95-4.4-0.75-14.98-2.78-23.5-4.5-8.52-1.73-18.88-4.05-23-5.15-4.13-1.1-10.2-2.68-13.5-3.51-3.3-0.83-10.27-2.86-15.5-4.51-5.23-1.65-12.88-4.1-17-5.45-4.13-1.35-8.4-2.85-9.5-3.33-1.1-0.47-6.5-2.54-12-4.6-5.5-2.05-11.8-4.52-14-5.49-2.2-0.97-8.73-3.88-14.5-6.47-5.77-2.59-15.45-7.18-21.5-10.21-6.05-3.02-14.38-7.3-18.5-9.51-4.13-2.2-7.95-4.36-8.5-4.78-0.55-0.42-3.25-2.02-6-3.54-2.75-1.52-12.65-7.69-22-13.71-9.35-6.02-23.75-16.02-32-22.22-8.25-6.21-16.78-12.8-18.96-14.65-2.18-1.85-8.68-7.41-14.44-12.36-5.77-4.95-17.28-15.75-25.58-24-8.3-8.25-17.33-17.48-20.07-20.5-2.74-3.02-7.71-8.65-11.05-12.5-3.34-3.85-9.97-11.95-14.75-18-4.77-6.05-9.02-11.45-9.44-12-0.42-0.55-3.51-4.83-6.87-9.5-3.36-4.67-8.78-12.55-12.05-17.5-3.26-4.95-8.45-13.05-11.52-18-3.07-4.95-8.47-14.17-11.99-20.5-3.53-6.33-9.38-17.58-13-25-3.63-7.42-7.59-15.75-8.8-18.5-1.21-2.75-3.22-7.25-4.45-10-1.24-2.75-2.6-6.13-3.02-7.5-0.43-1.38-1.6-4.3-2.61-6.5-1.01-2.2-3.68-9.17-5.94-15.5-2.27-6.33-4.71-13.3-5.43-15.5-0.73-2.2-2.52-8.05-3.99-13-1.46-4.95-3.06-10.13-3.55-11.5-0.49-1.38-2.5-9.25-4.47-17.5-1.98-8.25-4.02-16.8-4.54-19-0.52-2.2-1.42-6.7-2-10-0.58-3.3-1.67-9.6-2.42-14-0.75-4.4-1.83-11.6-2.41-16-0.58-4.4-1.54-12.5-2.13-18-0.59-5.5-1.51-10.11-2.05-10.25-0.6-0.16-0.97-11.89-0.96-31%200-16.91%200.44-39.3%200.97-49.75%200.53-10.45%201.45-23.73%202.03-29.5%200.59-5.77%201.55-14.1%202.13-18.5%200.58-4.4%201.67-11.6%202.42-16%200.75-4.4%201.84-10.7%202.42-14%200.58-3.3%201.48-7.8%202-10%200.52-2.2%202.56-10.75%204.54-19%201.97-8.25%203.98-16.13%204.47-17.5%200.48-1.38%201.84-5.88%203.02-10%201.18-4.13%204.4-14.02%207.15-22%202.75-7.98%205.36-15.4%205.81-16.5%200.44-1.1%201.97-4.7%203.39-8%201.43-3.3%202.6-6.34%202.61-6.75%200.02-0.41%201.2-3.34%202.64-6.5%201.43-3.16%203.3-7.32%204.15-9.25%200.86-1.93%204.59-9.8%208.3-17.5%203.71-7.7%209.76-19.4%2013.45-26%203.68-6.6%209.22-16.05%2012.3-21%203.08-4.95%208.58-13.5%2012.22-19%203.64-5.5%207.72-11.57%209.05-13.5%201.34-1.93%204.43-6.2%206.87-9.5%202.43-3.3%207.79-10.28%2011.91-15.5%204.11-5.22%2010.67-13.1%2014.56-17.5%203.89-4.4%209.08-10.25%2011.53-13%202.44-2.75%2010.77-11.3%2018.5-19.01%207.73-7.7%2019.23-18.52%2025.55-24.04%206.32-5.51%2015.1-12.94%2019.5-16.49%204.4-3.56%2010.02-7.96%2012.5-9.77%202.48-1.82%207.43-5.45%2011-8.06%203.57-2.62%209.43-6.72%2013-9.11%203.57-2.39%208.3-5.57%2010.5-7.06%202.2-1.49%209.85-6.21%2017-10.48%207.15-4.28%2015.48-9.13%2018.5-10.78%203.02-1.66%2010.92-5.75%2017.53-9.1%206.62-3.36%2015.17-7.53%2019-9.27%203.84-1.75%2010.12-4.52%2013.97-6.17%203.85-1.66%2012.4-5.11%2019-7.67%206.6-2.56%2018.64-6.87%2026.75-9.58%208.11-2.7%2016.44-5.33%2018.5-5.85%202.06-0.52%207.12-1.9%2011.25-3.06%204.12-1.17%2010.43-2.8%2014-3.63%203.57-0.84%208.07-1.88%2010-2.32%201.93-0.45%207.1-1.54%2011.5-2.42%204.4-0.89%2010.25-2.05%2013-2.58%202.75-0.53%207.25-1.24%2010-1.57%202.75-0.34%207.25-1.02%2010-1.52%202.75-0.5%2010.4-1.45%2017-2.1%206.6-0.65%2016.95-1.48%2023-1.84%206.05-0.36%2026.75-0.72%2046-0.8zm-42.29%20288.46c-6.99%200.78-16.76%202.31-21.71%203.4-4.95%201.09-11.48%202.67-14.5%203.51-3.02%200.84-7.98%202.24-11%203.12-3.02%200.88-10.45%203.5-16.5%205.83-6.05%202.33-14.82%206-19.5%208.16-4.68%202.15-12.77%206.32-18%209.26-5.23%202.94-13.32%207.87-18%2010.95-4.68%203.09-11.2%207.62-14.5%2010.08-3.3%202.45-8.93%206.92-12.5%209.92-3.57%203.01-12.15%2011.12-19.05%2018.03-6.9%206.91-15.61%2016.38-19.34%2021.06-3.73%204.68-10.49%2014.13-15.01%2021-4.53%206.88-9.98%2015.65-12.11%2019.5-2.13%203.85-5.64%2010.6-7.79%2015-2.15%204.4-5.5%2011.82-7.43%2016.5-1.94%204.68-4.38%2011.2-5.43%2014.5-1.06%203.3-3.22%2010.5-4.81%2016-1.59%205.5-3.42%2012.7-4.06%2016-0.64%203.3-1.58%208.25-2.08%2011-0.5%202.75-1.58%209.95-2.39%2016-0.95%207.05-1.49%2019.36-1.49%2034.25-0.01%2012.79%200.45%2026.51%201.02%2030.5%200.56%203.99%201.5%2010.17%202.07%2013.75%200.58%203.58%201.73%209.88%202.57%2014%200.84%204.13%202.88%2012.23%204.53%2018%201.65%205.77%204.12%2013.88%205.5%2018%201.37%204.13%202.84%207.95%203.27%208.5%200.42%200.55%201.68%203.48%202.79%206.5%201.11%203.02%203.79%209.1%205.94%2013.5%202.15%204.4%205.66%2011.15%207.78%2015%202.13%203.85%207.59%2012.63%2012.14%2019.5%204.54%206.88%2011.3%2016.33%2015.02%2021%203.73%204.67%2012.09%2013.9%2018.58%2020.5%206.5%206.6%2014.62%2014.29%2018.05%2017.09%203.43%202.8%2010.05%207.98%2014.73%2011.51%204.68%203.53%2012.1%208.74%2016.5%2011.58%204.4%202.83%2010.02%206.3%2012.5%207.7%202.48%201.4%209.45%204.99%2015.5%207.97%206.05%202.98%2013.25%206.42%2016%207.65%202.75%201.23%2012.2%204.61%2021%207.5%208.8%202.9%2021.62%206.44%2028.5%207.89%206.87%201.44%2014.52%203.04%2017%203.55%202.48%200.51%2013.27%201.48%2024%202.15%2015.34%200.97%2023.66%200.97%2039%200.01%2010.73-0.67%2021.3-1.6%2023.5-2.08%202.2-0.47%206.7-1.37%2010-1.99%203.3-0.63%208.92-1.82%2012.5-2.66%203.58-0.84%2010.1-2.58%2014.5-3.87%204.4-1.29%2012.27-3.89%2017.5-5.78%205.23-1.89%2011.51-4.29%2013.96-5.33%202.46-1.04%2010.33-4.84%2017.5-8.44%207.17-3.61%2018.21-9.87%2024.54-13.92%206.33-4.04%2012.68-8.3%2014.12-9.44%201.45-1.15%203.87-2.99%205.39-4.09%201.53-1.1%203.56-2.67%204.52-3.5%200.97-0.83%204.51-3.75%207.88-6.5%203.37-2.75%2011.85-10.86%2018.86-18.02%207-7.16%2016.15-17.51%2020.34-23%204.19-5.49%2010.3-14.03%2013.6-18.98%203.29-4.95%207.48-11.7%209.3-15%201.83-3.3%205.43-10.27%208.02-15.5%202.58-5.23%205.41-11.08%206.28-13%200.88-1.92%202.57-5.98%203.75-9%201.18-3.02%203.02-8.2%204.08-11.5%201.07-3.3%203.22-10.5%204.78-16%201.56-5.5%203.34-12.02%203.96-14.5%200.61-2.48%201.6-7.42%202.18-11%200.59-3.58%201.51-9.65%202.04-13.5%200.54-3.85%201.34-13.98%201.79-22.5%200.44-8.52%200.44-22.25%200-30.5-0.45-8.25-1.25-18.15-1.79-22-0.53-3.85-1.46-9.92-2.05-13.5-0.59-3.58-2.01-10.33-3.14-15-1.14-4.67-2.44-9.62-2.89-11-0.45-1.37-1.84-5.87-3.08-10-1.24-4.12-3.56-10.87-5.15-15-1.59-4.12-3.6-9.07-4.47-11-0.87-1.93-3.71-7.77-6.31-13-2.59-5.23-5.55-11.07-6.56-13-1.01-1.93-3.99-6.87-6.62-11-2.63-4.12-7.45-11.32-10.7-16-3.25-4.68-9.5-12.77-13.89-18-4.39-5.23-13.1-14.45-19.36-20.5-6.26-6.05-15.21-14.06-19.88-17.8-4.68-3.74-10.92-8.47-13.88-10.5-2.96-2.04-9.26-6.13-14-9.1-4.74-2.97-13.12-7.77-18.62-10.66-5.5-2.89-14.5-7.13-20-9.42-5.5-2.28-10.9-4.56-12-5.06-1.1-0.49-6.05-2.24-11-3.88-4.95-1.65-11.02-3.49-13.5-4.09-2.48-0.6-9.23-2.16-15-3.47-5.77-1.3-15.9-3.11-22.5-4.02-6.81-0.93-20.87-1.79-32.5-1.97-11.27-0.17-22.66-0.08-25.29%200.21-2.63%200.29-10.51%201.16-17.5%201.94z'/%3e%3cpath%20id='Path%202'%20class='s1'%20d='m953.5%20831.1c-2.75%200.49-7.7%201.38-11%201.99-3.3%200.61-8.48%201.77-11.5%202.57-3.02%200.81-9.33%202.84-14%204.52-4.67%201.68-13%205.31-18.5%208.06-5.5%202.75-12.48%206.61-15.5%208.58-3.02%201.97-8.2%205.61-11.5%208.08-3.3%202.47-9.33%207.44-13.39%2011.05-4.07%203.6-10.64%2010.38-14.61%2015.05-3.96%204.67-10.02%2012.77-13.46%2018-3.44%205.22-7.84%2012.65-9.78%2016.5-1.94%203.85-5.1%2011.05-7.02%2016-1.92%204.95-4.35%2011.92-5.39%2015.5-1.04%203.58-2.57%209.65-3.39%2013.5-0.83%203.85-2%2013.3-2.61%2021-0.81%2010.28-0.8%2017.79%200.02%2028.25%200.62%207.84%202.22%2018.86%203.55%2024.5%201.33%205.64%203.42%2013.17%204.65%2016.75%201.22%203.58%204%2010.55%206.17%2015.5%202.17%204.95%206.32%2013.05%209.22%2018%202.91%204.95%207.71%2012.22%2010.66%2016.15%202.96%203.94%208.08%2010.19%2011.38%2013.89%203.3%203.7%2010.05%2010.13%2015%2014.28%204.95%204.15%2013.05%2010.21%2018%2013.47%204.95%203.25%2011.92%207.4%2015.5%209.2%203.58%201.81%2010.55%204.92%2015.5%206.91%204.95%201.99%2012.83%204.69%2017.5%206%204.67%201.3%209.85%202.69%2011.5%203.07%201.65%200.39%206.83%201.33%2011.5%202.1%205.11%200.84%2015.89%201.4%2027%201.4%2010.17%200%2020.08-0.41%2022-0.92%201.92-0.5%206.2-1.45%209.5-2.1%203.3-0.65%2010.27-2.42%2015.5-3.93%205.22-1.5%2013.55-4.41%2018.5-6.46%204.95-2.05%2013.05-5.96%2018-8.68%204.95-2.73%2013.5-8.3%2019-12.39%205.5-4.08%2013.97-11.38%2018.82-16.21%204.86-4.83%2012.1-13.06%2016.09-18.28%203.99-5.22%209.09-12.65%2011.32-16.5%202.23-3.85%205.93-10.83%208.21-15.5%202.28-4.67%205.68-13.22%207.55-19%201.87-5.78%203.86-12.3%204.41-14.5%200.55-2.2%201.7-8.39%202.55-13.75%200.98-6.14%201.55-16.31%201.54-27.5%200-12.91-0.53-20.88-1.94-29.25-1.06-6.33-3.1-15.33-4.52-20-1.43-4.67-3.03-9.29-3.56-10.25-0.53-0.96-0.97-2.2-0.97-2.75%200-0.55-0.86-2.91-1.92-5.25-1.06-2.34-2.98-6.5-4.28-9.25-1.29-2.75-4.32-8.38-6.72-12.5-2.41-4.13-5.99-9.75-7.98-12.5-1.98-2.75-4.5-6.1-5.6-7.45-1.1-1.35-4.03-4.71-6.5-7.48-2.47-2.76-5.63-6.17-7-7.56-1.38-1.39-5.65-5.28-9.5-8.64-3.85-3.36-11.5-9.16-17-12.89-5.5-3.73-14.3-8.85-19.55-11.38-5.26-2.53-10.88-5.15-12.5-5.82-1.62-0.68-6.33-2.39-10.45-3.8-4.13-1.42-10.65-3.26-14.5-4.09-3.85-0.84-10.83-2.16-15.5-2.94-5.29-0.88-15.11-1.38-26-1.32-9.63%200.05-19.75%200.49-22.5%200.97z'/%3e%3c/g%3e%3c/svg%3e", Qa = Pe(
|
|
6328
|
+
const Ci = "data:image/svg+xml,%3csvg%20version='1.2'%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201280%201280'%20width='500'%20height='500'%3e%3cstyle%3e%20.s0%20{%20opacity:%201;fill:%20%2317535d%20}%20.s1%20{%20opacity:%20.99;fill:%20%23fab185%20}%20%3c/style%3e%3cg%20id='gentiq%20(7)'%3e%3cpath%20id='Path%201'%20fill-rule='evenodd'%20class='s0'%20d='m616.5%2012.22c19.25-0.09%2038.15%200.29%2042%200.84%203.85%200.54%2011.73%201.43%2017.5%201.98%205.77%200.55%2016.35%201.85%2023.5%202.91%207.15%201.05%2016.6%202.62%2021%203.49%204.4%200.88%209.8%202.02%2012%202.53%202.2%200.52%207.15%201.65%2011%202.5%203.85%200.86%208.58%202%2010.5%202.54%201.92%200.54%207.77%202.15%2013%203.6%205.23%201.44%2016.02%204.77%2024%207.4%207.98%202.63%2017.65%205.99%2021.5%207.48%203.85%201.48%2011.95%204.74%2018%207.24%206.05%202.5%2014.6%206.16%2019%208.14%204.4%201.98%2013.4%206.35%2020%209.72%206.6%203.36%2014.48%207.47%2017.5%209.11%203.02%201.65%2011.35%206.5%2018.5%2010.77%207.15%204.27%2018.17%2011.2%2024.49%2015.4%206.32%204.2%2012.17%208.16%2013%208.82%200.83%200.65%207.36%205.55%2014.51%2010.88%207.15%205.33%2013.23%209.97%2013.5%2010.31%200.27%200.34%202.73%202.42%205.45%204.62%202.72%202.2%205.43%204.45%206.02%205%200.59%200.55%204.89%204.35%209.55%208.45%204.67%204.1%2015.04%2014%2023.05%2022%208.02%208%2018.22%2018.6%2022.67%2023.55%204.46%204.95%2011.4%2013.07%2015.43%2018.04%204.03%204.97%2011.43%2014.42%2016.43%2021%205.01%206.58%2012.65%2017.36%2016.97%2023.96%204.33%206.6%208.56%2013.15%209.4%2014.57%200.84%201.41%204.08%206.81%207.19%2012%203.11%205.18%207.29%2012.36%209.29%2015.93%202%203.57%207.6%2014.6%2012.44%2024.5%204.84%209.9%2010.51%2022.05%2012.6%2027%202.08%204.95%204.36%2010.35%205.07%2012%200.71%201.65%202.26%205.48%203.44%208.5%201.19%203.02%204.44%2012.25%207.22%2020.5%202.79%208.25%205.42%2016.35%205.84%2018%200.43%201.65%201.72%206.15%202.87%2010%201.15%203.85%203.86%2014.43%206.03%2023.5%202.16%209.07%204.38%2019.2%204.94%2022.5%200.56%203.3%201.5%208.7%202.1%2012%200.59%203.3%201.68%2010.05%202.43%2015%200.74%204.95%201.85%2013.27%202.47%2018.5%200.61%205.23%201.56%2018.95%202.11%2030.5%200.55%2011.55%200.99%2034.61%200.99%2051.25%200%2019.16-0.37%2030.43-1%2030.75-0.55%200.27-1%202.64-1.01%205.25%200%202.61-0.43%207.45-0.96%2010.75-0.52%203.3-1.7%2011.17-2.62%2017.5-0.92%206.33-2.02%2013.52-2.44%2016-0.43%202.48-1.29%207.42-1.93%2011-0.63%203.58-2.7%2013.02-4.6%2021-1.9%207.98-3.93%2016.3-4.51%2018.5-0.58%202.2-2.41%208.5-4.05%2014-1.64%205.5-4.8%2015.4-7.01%2022-2.21%206.6-4.39%2012.9-4.85%2014-0.46%201.1-2.22%205.71-3.92%2010.25-1.71%204.54-3.44%208.24-3.85%208.22-0.41-0.02-2.55-1.5-4.75-3.29-2.2-1.8-6.25-4.85-9-6.79-2.75-1.94-9.95-6.45-16-10.03-6.05-3.58-14.83-8.34-19.5-10.57-4.67-2.23-10.64-5.01-13.25-6.18-2.61-1.16-8.91-3.51-14-5.21-5.09-1.71-10.71-3.51-12.5-4-1.79-0.5-4.94-1.38-7-1.96-2.06-0.58-6.9-1.73-10.75-2.54-3.85-0.82-9.47-1.94-12.5-2.48-3.02-0.54-10.9-1.64-17.5-2.44-6.6-0.81-18.52-1.46-26.5-1.45-7.98%200-20.13%200.68-27%201.5-6.88%200.81-13.85%201.75-15.5%202.08-1.65%200.32-7.27%201.43-12.5%202.47-5.23%201.04-12.65%202.83-16.5%203.98-3.85%201.16-9.02%202.67-11.5%203.38-2.48%200.7-9.45%203.31-15.5%205.8-6.05%202.49-14.6%206.3-19%208.46-4.4%202.17-12.05%206.39-17%209.38-4.95%203-13.5%208.66-19%2012.58-5.5%203.92-12.7%209.48-16%2012.36-3.3%202.88-8.88%207.99-12.41%2011.36-3.52%203.36-9.6%209.72-13.5%2014.12-3.9%204.4-7.32%208.23-7.59%208.5-0.27%200.27-2.09%202.52-4.04%205-1.94%202.48-4.39%205.85-5.43%207.5-1.04%201.65-2.38%203.47-2.96%204.05-0.59%200.58-3.12%204.4-5.63%208.5-2.5%204.1-5.89%209.7-7.53%2012.45-1.63%202.75-4.16%207.48-5.61%2010.5-1.45%203.02-4.03%208.42-5.73%2012-1.71%203.58-3.1%206.95-3.09%207.5%200%200.55-0.69%202.35-1.54%204-0.85%201.65-2.83%206.83-4.39%2011.5-1.56%204.67-4.24%2014.12-5.95%2021-1.71%206.87-4.01%2019.25-5.1%2027.5-1.42%2010.7-1.99%2020.73-1.99%2035%200%2014.2%200.58%2024.35%201.98%2035%201.09%208.25%203.53%2021.08%205.43%2028.5%201.9%207.42%204.63%2016.87%206.07%2021%201.44%204.12%203.03%208.4%203.54%209.5%200.5%201.1%201.87%204.47%203.03%207.5%201.16%203.03%204.23%209.78%206.82%2015%202.59%205.22%205.48%2010.62%206.42%2012%200.94%201.37%201.73%202.72%201.74%203%200.01%200.28-1.91%201.07-4.26%201.77-2.35%200.7-8.55%202.17-13.78%203.28-5.23%201.11-11.98%202.47-15%203.03-3.02%200.55-7.75%201.43-10.5%201.95-2.75%200.52-10.63%201.65-17.5%202.53-6.88%200.87-16.33%202-21%202.5-4.67%200.5-17.27%201.4-28%202.01-11.32%200.65-29.56%200.85-43.5%200.48-13.2-0.35-27.83-1.06-32.5-1.57-4.67-0.52-14.8-1.66-22.5-2.54-7.7-0.88-17.6-2.21-22-2.95-4.4-0.75-14.98-2.78-23.5-4.5-8.52-1.73-18.88-4.05-23-5.15-4.13-1.1-10.2-2.68-13.5-3.51-3.3-0.83-10.27-2.86-15.5-4.51-5.23-1.65-12.88-4.1-17-5.45-4.13-1.35-8.4-2.85-9.5-3.33-1.1-0.47-6.5-2.54-12-4.6-5.5-2.05-11.8-4.52-14-5.49-2.2-0.97-8.73-3.88-14.5-6.47-5.77-2.59-15.45-7.18-21.5-10.21-6.05-3.02-14.38-7.3-18.5-9.51-4.13-2.2-7.95-4.36-8.5-4.78-0.55-0.42-3.25-2.02-6-3.54-2.75-1.52-12.65-7.69-22-13.71-9.35-6.02-23.75-16.02-32-22.22-8.25-6.21-16.78-12.8-18.96-14.65-2.18-1.85-8.68-7.41-14.44-12.36-5.77-4.95-17.28-15.75-25.58-24-8.3-8.25-17.33-17.48-20.07-20.5-2.74-3.02-7.71-8.65-11.05-12.5-3.34-3.85-9.97-11.95-14.75-18-4.77-6.05-9.02-11.45-9.44-12-0.42-0.55-3.51-4.83-6.87-9.5-3.36-4.67-8.78-12.55-12.05-17.5-3.26-4.95-8.45-13.05-11.52-18-3.07-4.95-8.47-14.17-11.99-20.5-3.53-6.33-9.38-17.58-13-25-3.63-7.42-7.59-15.75-8.8-18.5-1.21-2.75-3.22-7.25-4.45-10-1.24-2.75-2.6-6.13-3.02-7.5-0.43-1.38-1.6-4.3-2.61-6.5-1.01-2.2-3.68-9.17-5.94-15.5-2.27-6.33-4.71-13.3-5.43-15.5-0.73-2.2-2.52-8.05-3.99-13-1.46-4.95-3.06-10.13-3.55-11.5-0.49-1.38-2.5-9.25-4.47-17.5-1.98-8.25-4.02-16.8-4.54-19-0.52-2.2-1.42-6.7-2-10-0.58-3.3-1.67-9.6-2.42-14-0.75-4.4-1.83-11.6-2.41-16-0.58-4.4-1.54-12.5-2.13-18-0.59-5.5-1.51-10.11-2.05-10.25-0.6-0.16-0.97-11.89-0.96-31%200-16.91%200.44-39.3%200.97-49.75%200.53-10.45%201.45-23.73%202.03-29.5%200.59-5.77%201.55-14.1%202.13-18.5%200.58-4.4%201.67-11.6%202.42-16%200.75-4.4%201.84-10.7%202.42-14%200.58-3.3%201.48-7.8%202-10%200.52-2.2%202.56-10.75%204.54-19%201.97-8.25%203.98-16.13%204.47-17.5%200.48-1.38%201.84-5.88%203.02-10%201.18-4.13%204.4-14.02%207.15-22%202.75-7.98%205.36-15.4%205.81-16.5%200.44-1.1%201.97-4.7%203.39-8%201.43-3.3%202.6-6.34%202.61-6.75%200.02-0.41%201.2-3.34%202.64-6.5%201.43-3.16%203.3-7.32%204.15-9.25%200.86-1.93%204.59-9.8%208.3-17.5%203.71-7.7%209.76-19.4%2013.45-26%203.68-6.6%209.22-16.05%2012.3-21%203.08-4.95%208.58-13.5%2012.22-19%203.64-5.5%207.72-11.57%209.05-13.5%201.34-1.93%204.43-6.2%206.87-9.5%202.43-3.3%207.79-10.28%2011.91-15.5%204.11-5.22%2010.67-13.1%2014.56-17.5%203.89-4.4%209.08-10.25%2011.53-13%202.44-2.75%2010.77-11.3%2018.5-19.01%207.73-7.7%2019.23-18.52%2025.55-24.04%206.32-5.51%2015.1-12.94%2019.5-16.49%204.4-3.56%2010.02-7.96%2012.5-9.77%202.48-1.82%207.43-5.45%2011-8.06%203.57-2.62%209.43-6.72%2013-9.11%203.57-2.39%208.3-5.57%2010.5-7.06%202.2-1.49%209.85-6.21%2017-10.48%207.15-4.28%2015.48-9.13%2018.5-10.78%203.02-1.66%2010.92-5.75%2017.53-9.1%206.62-3.36%2015.17-7.53%2019-9.27%203.84-1.75%2010.12-4.52%2013.97-6.17%203.85-1.66%2012.4-5.11%2019-7.67%206.6-2.56%2018.64-6.87%2026.75-9.58%208.11-2.7%2016.44-5.33%2018.5-5.85%202.06-0.52%207.12-1.9%2011.25-3.06%204.12-1.17%2010.43-2.8%2014-3.63%203.57-0.84%208.07-1.88%2010-2.32%201.93-0.45%207.1-1.54%2011.5-2.42%204.4-0.89%2010.25-2.05%2013-2.58%202.75-0.53%207.25-1.24%2010-1.57%202.75-0.34%207.25-1.02%2010-1.52%202.75-0.5%2010.4-1.45%2017-2.1%206.6-0.65%2016.95-1.48%2023-1.84%206.05-0.36%2026.75-0.72%2046-0.8zm-42.29%20288.46c-6.99%200.78-16.76%202.31-21.71%203.4-4.95%201.09-11.48%202.67-14.5%203.51-3.02%200.84-7.98%202.24-11%203.12-3.02%200.88-10.45%203.5-16.5%205.83-6.05%202.33-14.82%206-19.5%208.16-4.68%202.15-12.77%206.32-18%209.26-5.23%202.94-13.32%207.87-18%2010.95-4.68%203.09-11.2%207.62-14.5%2010.08-3.3%202.45-8.93%206.92-12.5%209.92-3.57%203.01-12.15%2011.12-19.05%2018.03-6.9%206.91-15.61%2016.38-19.34%2021.06-3.73%204.68-10.49%2014.13-15.01%2021-4.53%206.88-9.98%2015.65-12.11%2019.5-2.13%203.85-5.64%2010.6-7.79%2015-2.15%204.4-5.5%2011.82-7.43%2016.5-1.94%204.68-4.38%2011.2-5.43%2014.5-1.06%203.3-3.22%2010.5-4.81%2016-1.59%205.5-3.42%2012.7-4.06%2016-0.64%203.3-1.58%208.25-2.08%2011-0.5%202.75-1.58%209.95-2.39%2016-0.95%207.05-1.49%2019.36-1.49%2034.25-0.01%2012.79%200.45%2026.51%201.02%2030.5%200.56%203.99%201.5%2010.17%202.07%2013.75%200.58%203.58%201.73%209.88%202.57%2014%200.84%204.13%202.88%2012.23%204.53%2018%201.65%205.77%204.12%2013.88%205.5%2018%201.37%204.13%202.84%207.95%203.27%208.5%200.42%200.55%201.68%203.48%202.79%206.5%201.11%203.02%203.79%209.1%205.94%2013.5%202.15%204.4%205.66%2011.15%207.78%2015%202.13%203.85%207.59%2012.63%2012.14%2019.5%204.54%206.88%2011.3%2016.33%2015.02%2021%203.73%204.67%2012.09%2013.9%2018.58%2020.5%206.5%206.6%2014.62%2014.29%2018.05%2017.09%203.43%202.8%2010.05%207.98%2014.73%2011.51%204.68%203.53%2012.1%208.74%2016.5%2011.58%204.4%202.83%2010.02%206.3%2012.5%207.7%202.48%201.4%209.45%204.99%2015.5%207.97%206.05%202.98%2013.25%206.42%2016%207.65%202.75%201.23%2012.2%204.61%2021%207.5%208.8%202.9%2021.62%206.44%2028.5%207.89%206.87%201.44%2014.52%203.04%2017%203.55%202.48%200.51%2013.27%201.48%2024%202.15%2015.34%200.97%2023.66%200.97%2039%200.01%2010.73-0.67%2021.3-1.6%2023.5-2.08%202.2-0.47%206.7-1.37%2010-1.99%203.3-0.63%208.92-1.82%2012.5-2.66%203.58-0.84%2010.1-2.58%2014.5-3.87%204.4-1.29%2012.27-3.89%2017.5-5.78%205.23-1.89%2011.51-4.29%2013.96-5.33%202.46-1.04%2010.33-4.84%2017.5-8.44%207.17-3.61%2018.21-9.87%2024.54-13.92%206.33-4.04%2012.68-8.3%2014.12-9.44%201.45-1.15%203.87-2.99%205.39-4.09%201.53-1.1%203.56-2.67%204.52-3.5%200.97-0.83%204.51-3.75%207.88-6.5%203.37-2.75%2011.85-10.86%2018.86-18.02%207-7.16%2016.15-17.51%2020.34-23%204.19-5.49%2010.3-14.03%2013.6-18.98%203.29-4.95%207.48-11.7%209.3-15%201.83-3.3%205.43-10.27%208.02-15.5%202.58-5.23%205.41-11.08%206.28-13%200.88-1.92%202.57-5.98%203.75-9%201.18-3.02%203.02-8.2%204.08-11.5%201.07-3.3%203.22-10.5%204.78-16%201.56-5.5%203.34-12.02%203.96-14.5%200.61-2.48%201.6-7.42%202.18-11%200.59-3.58%201.51-9.65%202.04-13.5%200.54-3.85%201.34-13.98%201.79-22.5%200.44-8.52%200.44-22.25%200-30.5-0.45-8.25-1.25-18.15-1.79-22-0.53-3.85-1.46-9.92-2.05-13.5-0.59-3.58-2.01-10.33-3.14-15-1.14-4.67-2.44-9.62-2.89-11-0.45-1.37-1.84-5.87-3.08-10-1.24-4.12-3.56-10.87-5.15-15-1.59-4.12-3.6-9.07-4.47-11-0.87-1.93-3.71-7.77-6.31-13-2.59-5.23-5.55-11.07-6.56-13-1.01-1.93-3.99-6.87-6.62-11-2.63-4.12-7.45-11.32-10.7-16-3.25-4.68-9.5-12.77-13.89-18-4.39-5.23-13.1-14.45-19.36-20.5-6.26-6.05-15.21-14.06-19.88-17.8-4.68-3.74-10.92-8.47-13.88-10.5-2.96-2.04-9.26-6.13-14-9.1-4.74-2.97-13.12-7.77-18.62-10.66-5.5-2.89-14.5-7.13-20-9.42-5.5-2.28-10.9-4.56-12-5.06-1.1-0.49-6.05-2.24-11-3.88-4.95-1.65-11.02-3.49-13.5-4.09-2.48-0.6-9.23-2.16-15-3.47-5.77-1.3-15.9-3.11-22.5-4.02-6.81-0.93-20.87-1.79-32.5-1.97-11.27-0.17-22.66-0.08-25.29%200.21-2.63%200.29-10.51%201.16-17.5%201.94z'/%3e%3cpath%20id='Path%202'%20class='s1'%20d='m953.5%20831.1c-2.75%200.49-7.7%201.38-11%201.99-3.3%200.61-8.48%201.77-11.5%202.57-3.02%200.81-9.33%202.84-14%204.52-4.67%201.68-13%205.31-18.5%208.06-5.5%202.75-12.48%206.61-15.5%208.58-3.02%201.97-8.2%205.61-11.5%208.08-3.3%202.47-9.33%207.44-13.39%2011.05-4.07%203.6-10.64%2010.38-14.61%2015.05-3.96%204.67-10.02%2012.77-13.46%2018-3.44%205.22-7.84%2012.65-9.78%2016.5-1.94%203.85-5.1%2011.05-7.02%2016-1.92%204.95-4.35%2011.92-5.39%2015.5-1.04%203.58-2.57%209.65-3.39%2013.5-0.83%203.85-2%2013.3-2.61%2021-0.81%2010.28-0.8%2017.79%200.02%2028.25%200.62%207.84%202.22%2018.86%203.55%2024.5%201.33%205.64%203.42%2013.17%204.65%2016.75%201.22%203.58%204%2010.55%206.17%2015.5%202.17%204.95%206.32%2013.05%209.22%2018%202.91%204.95%207.71%2012.22%2010.66%2016.15%202.96%203.94%208.08%2010.19%2011.38%2013.89%203.3%203.7%2010.05%2010.13%2015%2014.28%204.95%204.15%2013.05%2010.21%2018%2013.47%204.95%203.25%2011.92%207.4%2015.5%209.2%203.58%201.81%2010.55%204.92%2015.5%206.91%204.95%201.99%2012.83%204.69%2017.5%206%204.67%201.3%209.85%202.69%2011.5%203.07%201.65%200.39%206.83%201.33%2011.5%202.1%205.11%200.84%2015.89%201.4%2027%201.4%2010.17%200%2020.08-0.41%2022-0.92%201.92-0.5%206.2-1.45%209.5-2.1%203.3-0.65%2010.27-2.42%2015.5-3.93%205.22-1.5%2013.55-4.41%2018.5-6.46%204.95-2.05%2013.05-5.96%2018-8.68%204.95-2.73%2013.5-8.3%2019-12.39%205.5-4.08%2013.97-11.38%2018.82-16.21%204.86-4.83%2012.1-13.06%2016.09-18.28%203.99-5.22%209.09-12.65%2011.32-16.5%202.23-3.85%205.93-10.83%208.21-15.5%202.28-4.67%205.68-13.22%207.55-19%201.87-5.78%203.86-12.3%204.41-14.5%200.55-2.2%201.7-8.39%202.55-13.75%200.98-6.14%201.55-16.31%201.54-27.5%200-12.91-0.53-20.88-1.94-29.25-1.06-6.33-3.1-15.33-4.52-20-1.43-4.67-3.03-9.29-3.56-10.25-0.53-0.96-0.97-2.2-0.97-2.75%200-0.55-0.86-2.91-1.92-5.25-1.06-2.34-2.98-6.5-4.28-9.25-1.29-2.75-4.32-8.38-6.72-12.5-2.41-4.13-5.99-9.75-7.98-12.5-1.98-2.75-4.5-6.1-5.6-7.45-1.1-1.35-4.03-4.71-6.5-7.48-2.47-2.76-5.63-6.17-7-7.56-1.38-1.39-5.65-5.28-9.5-8.64-3.85-3.36-11.5-9.16-17-12.89-5.5-3.73-14.3-8.85-19.55-11.38-5.26-2.53-10.88-5.15-12.5-5.82-1.62-0.68-6.33-2.39-10.45-3.8-4.13-1.42-10.65-3.26-14.5-4.09-3.85-0.84-10.83-2.16-15.5-2.94-5.29-0.88-15.11-1.38-26-1.32-9.63%200.05-19.75%200.49-22.5%200.97z'/%3e%3c/g%3e%3c/svg%3e", Qa = De(
|
|
6328
6329
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
6329
6330
|
), ei = Ce.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ i(
|
|
6330
6331
|
"label",
|
|
6331
6332
|
{
|
|
6332
6333
|
ref: n,
|
|
6333
|
-
className:
|
|
6334
|
+
className: y(Qa(), e),
|
|
6334
6335
|
...t
|
|
6335
6336
|
}
|
|
6336
6337
|
));
|
|
@@ -6350,12 +6351,12 @@ function Oi({
|
|
|
6350
6351
|
children: n,
|
|
6351
6352
|
...o
|
|
6352
6353
|
}) {
|
|
6353
|
-
return /* @__PURE__ */
|
|
6354
|
+
return /* @__PURE__ */ _(
|
|
6354
6355
|
F.Trigger,
|
|
6355
6356
|
{
|
|
6356
6357
|
"data-slot": "select-trigger",
|
|
6357
6358
|
"data-size": t,
|
|
6358
|
-
className:
|
|
6359
|
+
className: y(
|
|
6359
6360
|
"border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
6360
6361
|
e
|
|
6361
6362
|
),
|
|
@@ -6373,11 +6374,11 @@ function Li({
|
|
|
6373
6374
|
position: n = "popper",
|
|
6374
6375
|
...o
|
|
6375
6376
|
}) {
|
|
6376
|
-
return /* @__PURE__ */ i(F.Portal, { children: /* @__PURE__ */
|
|
6377
|
+
return /* @__PURE__ */ i(F.Portal, { children: /* @__PURE__ */ _(
|
|
6377
6378
|
F.Content,
|
|
6378
6379
|
{
|
|
6379
6380
|
"data-slot": "select-content",
|
|
6380
|
-
className:
|
|
6381
|
+
className: y(
|
|
6381
6382
|
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
|
|
6382
6383
|
n === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
6383
6384
|
e
|
|
@@ -6389,7 +6390,7 @@ function Li({
|
|
|
6389
6390
|
/* @__PURE__ */ i(
|
|
6390
6391
|
F.Viewport,
|
|
6391
6392
|
{
|
|
6392
|
-
className:
|
|
6393
|
+
className: y(
|
|
6393
6394
|
"p-1",
|
|
6394
6395
|
n === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
|
|
6395
6396
|
),
|
|
@@ -6406,23 +6407,23 @@ function Fi({ className: e, ...t }) {
|
|
|
6406
6407
|
F.Label,
|
|
6407
6408
|
{
|
|
6408
6409
|
"data-slot": "select-label",
|
|
6409
|
-
className:
|
|
6410
|
+
className: y("text-muted-foreground px-2 py-1.5 text-xs", e),
|
|
6410
6411
|
...t
|
|
6411
6412
|
}
|
|
6412
6413
|
);
|
|
6413
6414
|
}
|
|
6414
6415
|
function Di({ className: e, children: t, ...n }) {
|
|
6415
|
-
return /* @__PURE__ */
|
|
6416
|
+
return /* @__PURE__ */ _(
|
|
6416
6417
|
F.Item,
|
|
6417
6418
|
{
|
|
6418
6419
|
"data-slot": "select-item",
|
|
6419
|
-
className:
|
|
6420
|
+
className: y(
|
|
6420
6421
|
"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pe-8 ps-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2 text-start",
|
|
6421
6422
|
e
|
|
6422
6423
|
),
|
|
6423
6424
|
...n,
|
|
6424
6425
|
children: [
|
|
6425
|
-
/* @__PURE__ */ i("span", { className: "absolute inset-inline-end-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ i(F.ItemIndicator, { children: /* @__PURE__ */ i(
|
|
6426
|
+
/* @__PURE__ */ i("span", { className: "absolute inset-inline-end-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ i(F.ItemIndicator, { children: /* @__PURE__ */ i(Pe, { className: "size-4" }) }) }),
|
|
6426
6427
|
/* @__PURE__ */ i(F.ItemText, { children: t })
|
|
6427
6428
|
]
|
|
6428
6429
|
}
|
|
@@ -6433,7 +6434,7 @@ function Pi({ className: e, ...t }) {
|
|
|
6433
6434
|
F.Separator,
|
|
6434
6435
|
{
|
|
6435
6436
|
"data-slot": "select-separator",
|
|
6436
|
-
className:
|
|
6437
|
+
className: y("bg-border pointer-events-none -mx-1 my-1 h-px", e),
|
|
6437
6438
|
...t
|
|
6438
6439
|
}
|
|
6439
6440
|
);
|
|
@@ -6443,7 +6444,7 @@ function ti({ className: e, ...t }) {
|
|
|
6443
6444
|
F.ScrollUpButton,
|
|
6444
6445
|
{
|
|
6445
6446
|
"data-slot": "select-scroll-up-button",
|
|
6446
|
-
className:
|
|
6447
|
+
className: y("flex cursor-default items-center justify-center py-1", e),
|
|
6447
6448
|
...t,
|
|
6448
6449
|
children: /* @__PURE__ */ i(An, { className: "size-4" })
|
|
6449
6450
|
}
|
|
@@ -6457,7 +6458,7 @@ function ni({
|
|
|
6457
6458
|
F.ScrollDownButton,
|
|
6458
6459
|
{
|
|
6459
6460
|
"data-slot": "select-scroll-down-button",
|
|
6460
|
-
className:
|
|
6461
|
+
className: y("flex cursor-default items-center justify-center py-1", e),
|
|
6461
6462
|
...t,
|
|
6462
6463
|
children: /* @__PURE__ */ i(ie, { className: "size-4" })
|
|
6463
6464
|
}
|
|
@@ -6495,7 +6496,7 @@ function $i({
|
|
|
6495
6496
|
{
|
|
6496
6497
|
"data-slot": "dropdown-menu-content",
|
|
6497
6498
|
sideOffset: t,
|
|
6498
|
-
className:
|
|
6499
|
+
className: y(
|
|
6499
6500
|
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
|
|
6500
6501
|
e
|
|
6501
6502
|
),
|
|
@@ -6515,7 +6516,7 @@ function Bi({
|
|
|
6515
6516
|
"data-slot": "dropdown-menu-item",
|
|
6516
6517
|
"data-inset": t,
|
|
6517
6518
|
"data-variant": n,
|
|
6518
|
-
className:
|
|
6519
|
+
className: y(
|
|
6519
6520
|
"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
6520
6521
|
e
|
|
6521
6522
|
),
|
|
@@ -6528,7 +6529,7 @@ function Hi({ className: e, ...t }) {
|
|
|
6528
6529
|
Ye.Root,
|
|
6529
6530
|
{
|
|
6530
6531
|
"data-slot": "checkbox",
|
|
6531
|
-
className:
|
|
6532
|
+
className: y(
|
|
6532
6533
|
"peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
|
|
6533
6534
|
e
|
|
6534
6535
|
),
|
|
@@ -6538,60 +6539,60 @@ function Hi({ className: e, ...t }) {
|
|
|
6538
6539
|
{
|
|
6539
6540
|
"data-slot": "checkbox-indicator",
|
|
6540
6541
|
className: "grid place-content-center text-current transition-none",
|
|
6541
|
-
children: /* @__PURE__ */ i(
|
|
6542
|
+
children: /* @__PURE__ */ i(Pe, { className: "size-3.5" })
|
|
6542
6543
|
}
|
|
6543
6544
|
)
|
|
6544
6545
|
}
|
|
6545
6546
|
);
|
|
6546
6547
|
}
|
|
6547
6548
|
export {
|
|
6548
|
-
|
|
6549
|
+
uo as $,
|
|
6549
6550
|
Bi as A,
|
|
6550
|
-
|
|
6551
|
-
|
|
6552
|
-
|
|
6553
|
-
|
|
6554
|
-
|
|
6551
|
+
Q as B,
|
|
6552
|
+
Ni as C,
|
|
6553
|
+
Ar as D,
|
|
6554
|
+
Fr as E,
|
|
6555
|
+
Dr as F,
|
|
6555
6556
|
Xe as G,
|
|
6556
|
-
|
|
6557
|
+
Ei as H,
|
|
6557
6558
|
Ti as I,
|
|
6558
|
-
|
|
6559
|
+
Si as J,
|
|
6559
6560
|
Hi as K,
|
|
6560
6561
|
ei as L,
|
|
6561
6562
|
fe as M,
|
|
6562
|
-
|
|
6563
|
-
|
|
6564
|
-
|
|
6565
|
-
|
|
6566
|
-
|
|
6563
|
+
ba as N,
|
|
6564
|
+
Qn as O,
|
|
6565
|
+
Hn as P,
|
|
6566
|
+
so as Q,
|
|
6567
|
+
Nr as R,
|
|
6567
6568
|
Ai as S,
|
|
6568
|
-
|
|
6569
|
+
ki as T,
|
|
6569
6570
|
Ii as U,
|
|
6570
6571
|
Fi as V,
|
|
6571
6572
|
ni as W,
|
|
6572
6573
|
ti as X,
|
|
6573
6574
|
Pi as Y,
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
|
|
6577
|
-
|
|
6578
|
-
|
|
6575
|
+
_r as Z,
|
|
6576
|
+
fa as _,
|
|
6577
|
+
te as a,
|
|
6578
|
+
xi as a0,
|
|
6579
|
+
eo as a1,
|
|
6579
6580
|
sn as a2,
|
|
6580
|
-
|
|
6581
|
-
|
|
6581
|
+
Bn as b,
|
|
6582
|
+
wi as c,
|
|
6582
6583
|
Za as d,
|
|
6583
|
-
|
|
6584
|
-
|
|
6584
|
+
y as e,
|
|
6585
|
+
lo as f,
|
|
6585
6586
|
Ja as g,
|
|
6586
|
-
|
|
6587
|
-
|
|
6588
|
-
|
|
6589
|
-
|
|
6590
|
-
|
|
6591
|
-
|
|
6587
|
+
Rt as h,
|
|
6588
|
+
Ot as i,
|
|
6589
|
+
_i as j,
|
|
6590
|
+
Lt as k,
|
|
6591
|
+
Ft as l,
|
|
6592
|
+
vi as m,
|
|
6592
6593
|
Mi as n,
|
|
6593
|
-
|
|
6594
|
-
|
|
6594
|
+
Ir as o,
|
|
6595
|
+
Lr as p,
|
|
6595
6596
|
Oi as q,
|
|
6596
6597
|
Ri as r,
|
|
6597
6598
|
Li as s,
|