gentiq 0.7.28 → 0.7.30
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 -1
- package/dist/{checkbox-DIJ7BlxY.js → checkbox-DllHCh8Z.js} +540 -506
- package/dist/gentiq-admin.es.js +880 -832
- package/dist/gentiq-index.es.js +762 -746
- package/dist/gentiq.css +1 -1
- package/dist/src/lib/errors.d.ts +2 -1
- package/dist/src/locales/en.json.d.ts +11 -1
- package/dist/src/locales/fa.json.d.ts +11 -1
- package/dist/src/types.d.ts +9 -0
- package/package.json +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsx as i, Fragment as J, jsxs as w } from "react/jsx-runtime";
|
|
2
2
|
import * as Ce from "react";
|
|
3
|
-
import { useState as B, useCallback as oe, useMemo as St, useEffect as Q, Children as cn, useRef as Ge, memo as de, createContext as pe, useContext as
|
|
3
|
+
import { useState as B, useCallback as oe, useMemo as St, useEffect as Q, Children as cn, useRef as Ge, memo as de, createContext as pe, useContext as Fe } from "react";
|
|
4
4
|
import { useTranslation as M, initReactI18next as un } from "react-i18next";
|
|
5
|
-
import { ArrowDownIcon as dn, ChevronDownIcon as ie, BookIcon as pn, XIcon as he, CheckIcon as De, ArrowUpIcon as hn, Loader2Icon as gn, SquareIcon as mn, FileIcon as Et, PaperclipIcon as fn, MessageCircle as bn, RefreshCcwIcon as yn, ThumbsUpIcon as kn, ThumbsDownIcon as vn, CopyIcon as Nt, BrainIcon as wn, WrenchIcon as
|
|
5
|
+
import { ArrowDownIcon as dn, ChevronDownIcon as ie, BookIcon as pn, XIcon as he, CheckIcon as De, ArrowUpIcon as hn, Loader2Icon as gn, SquareIcon as mn, FileIcon as Et, PaperclipIcon as fn, MessageCircle as bn, RefreshCcwIcon as yn, ThumbsUpIcon as kn, ThumbsDownIcon as vn, CopyIcon as Nt, BrainIcon as wn, WrenchIcon as _n, ImagePlusIcon as xn, CodeIcon as Sn, DownloadIcon as ue, GlobeIcon as En, XCircleIcon as Tt, CheckCircleIcon as Nn, ClockIcon as Tn, CircleIcon as Cn, ChevronUpIcon as An } from "lucide-react";
|
|
6
6
|
import { Slot as Ct } from "@radix-ui/react-slot";
|
|
7
7
|
import { cva as Pe } from "class-variance-authority";
|
|
8
8
|
import { StickToBottom as At, useStickToBottomContext as In } from "use-stick-to-bottom";
|
|
@@ -14,13 +14,45 @@ import { Streamdown as On } from "streamdown";
|
|
|
14
14
|
import Ve from "katex";
|
|
15
15
|
import { useControllableState as We } from "@radix-ui/react-use-controllable-state";
|
|
16
16
|
import * as H from "@radix-ui/react-dialog";
|
|
17
|
-
import { PrismLight as
|
|
18
|
-
import
|
|
19
|
-
import * as
|
|
17
|
+
import { PrismLight as U } from "react-syntax-highlighter";
|
|
18
|
+
import Ln from "i18next";
|
|
19
|
+
import * as F from "@radix-ui/react-select";
|
|
20
20
|
import * as re from "@radix-ui/react-dropdown-menu";
|
|
21
21
|
import * as Ye from "@radix-ui/react-checkbox";
|
|
22
|
-
import { clsx as
|
|
22
|
+
import { clsx as Fn } from "clsx";
|
|
23
23
|
import { twMerge as Dn } from "tailwind-merge";
|
|
24
|
+
const Pn = {
|
|
25
|
+
// Auth Errors
|
|
26
|
+
UNAUTHORIZED: "unauthorized",
|
|
27
|
+
INVALID_CREDENTIALS: "invalid_credentials",
|
|
28
|
+
PHONE_REQUIRED: "phone_required",
|
|
29
|
+
PASSWORD_REQUIRED: "password_required",
|
|
30
|
+
NAME_SURNAME_REQUIRED: "name_surname_required",
|
|
31
|
+
PHONE_ALREADY_EXISTS: "phone_already_exists",
|
|
32
|
+
INVALID_TOKEN: "invalid_token",
|
|
33
|
+
// User & Balance Errors
|
|
34
|
+
USER_NOT_FOUND: "user_not_found",
|
|
35
|
+
INSUFFICIENT_BALANCE: "insufficient_balance",
|
|
36
|
+
ME_UPDATE_FAILED: "me_update_failed",
|
|
37
|
+
// Chat & Thread Errors
|
|
38
|
+
THREAD_NOT_FOUND: "thread_not_found",
|
|
39
|
+
ACCESS_DENIED: "access_denied",
|
|
40
|
+
FEEDBACK_SAVE_FAILED: "feedback_save_failed",
|
|
41
|
+
THREAD_UPDATE_FAILED: "thread_update_failed",
|
|
42
|
+
THREAD_DELETE_FAILED: "thread_delete_failed",
|
|
43
|
+
ATTACHMENT_NOT_FOUND: "attachment_not_found",
|
|
44
|
+
THREAD_SHARE_FAILED: "thread_share_failed",
|
|
45
|
+
MODEL_QUOTA_REACHED_ERROR: "model_quota_reached_error",
|
|
46
|
+
// Admin Errors
|
|
47
|
+
ADMIN_ALREADY_EXISTS: "admin_already_exists",
|
|
48
|
+
ADMIN_NOT_FOUND: "admin_not_found",
|
|
49
|
+
CANNOT_DELETE_SELF: "cannot_delete_self",
|
|
50
|
+
ADMIN_UPDATE_FAILED: "admin_update_failed",
|
|
51
|
+
// System Errors
|
|
52
|
+
INTERNAL_ERROR: "internal_error",
|
|
53
|
+
VALIDATION_ERROR: "validation_error",
|
|
54
|
+
NOT_FOUND: "not_found"
|
|
55
|
+
};
|
|
24
56
|
class Xe extends Error {
|
|
25
57
|
code;
|
|
26
58
|
status;
|
|
@@ -29,12 +61,12 @@ class Xe extends Error {
|
|
|
29
61
|
super(t.error.message), this.name = "GentiqError", this.code = t.error.code, this.status = n, this.details = t.error.details;
|
|
30
62
|
}
|
|
31
63
|
}
|
|
32
|
-
function
|
|
33
|
-
const n = typeof e == "string" ? e : e.code;
|
|
34
|
-
if (typeof
|
|
35
|
-
return
|
|
36
|
-
const
|
|
37
|
-
return
|
|
64
|
+
function ki(e, t) {
|
|
65
|
+
const n = typeof e == "string" ? e : e.message, o = typeof e == "string" ? e : e.code || (Object.values(Pn).includes(n) ? n : void 0);
|
|
66
|
+
if (typeof o != "string")
|
|
67
|
+
return n || String(e);
|
|
68
|
+
const r = `errors:${o}`, a = t(r);
|
|
69
|
+
return a === r ? typeof e != "string" && e.message ? e.message : o.replace(/_/g, " ").replace(/\b\w/g, (l) => l.toUpperCase()) : a;
|
|
38
70
|
}
|
|
39
71
|
let N = {
|
|
40
72
|
api: {
|
|
@@ -45,7 +77,7 @@ let N = {
|
|
|
45
77
|
cacheNamespace: "gentiq"
|
|
46
78
|
}
|
|
47
79
|
};
|
|
48
|
-
const
|
|
80
|
+
const Mn = {
|
|
49
81
|
getToken: () => localStorage.getItem("token"),
|
|
50
82
|
setToken: (e) => localStorage.setItem("token", e),
|
|
51
83
|
clearToken: () => {
|
|
@@ -56,7 +88,7 @@ const Pn = {
|
|
|
56
88
|
return e ? { Authorization: `Bearer ${e}` } : {};
|
|
57
89
|
}
|
|
58
90
|
};
|
|
59
|
-
let
|
|
91
|
+
let L = Mn;
|
|
60
92
|
const S = {
|
|
61
93
|
init: (e) => {
|
|
62
94
|
if (N = {
|
|
@@ -66,7 +98,7 @@ const S = {
|
|
|
66
98
|
app: e.app ? { ...N.app, ...e.app } : N.app
|
|
67
99
|
}, e.api?.authAdapter) {
|
|
68
100
|
const t = e.api.authAdapter;
|
|
69
|
-
|
|
101
|
+
L = {
|
|
70
102
|
...t,
|
|
71
103
|
getHeaders: t.getHeaders || (() => {
|
|
72
104
|
const n = t.getToken();
|
|
@@ -76,14 +108,14 @@ const S = {
|
|
|
76
108
|
}
|
|
77
109
|
},
|
|
78
110
|
getConfig: () => N,
|
|
79
|
-
getToken: () =>
|
|
111
|
+
getToken: () => L.getToken(),
|
|
80
112
|
setToken: (e) => {
|
|
81
|
-
|
|
113
|
+
L.setToken(e);
|
|
82
114
|
},
|
|
83
115
|
clearToken: () => {
|
|
84
|
-
|
|
116
|
+
L.clearToken();
|
|
85
117
|
},
|
|
86
|
-
getHeaders: () =>
|
|
118
|
+
getHeaders: () => L.getHeaders(),
|
|
87
119
|
getEndpoint: (e, t, ...n) => {
|
|
88
120
|
const o = N.api?.endpoints?.[e];
|
|
89
121
|
return o ? typeof o == "function" ? o(...n) : o : typeof t == "function" ? t(...n) : t;
|
|
@@ -123,7 +155,7 @@ const S = {
|
|
|
123
155
|
getBalance: async () => {
|
|
124
156
|
const e = S.getEndpoint("balance", "/users/balance"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
125
157
|
headers: {
|
|
126
|
-
...
|
|
158
|
+
...L.getHeaders()
|
|
127
159
|
}
|
|
128
160
|
});
|
|
129
161
|
return S.handleResponse(t, "Failed to fetch balance");
|
|
@@ -131,7 +163,7 @@ const S = {
|
|
|
131
163
|
getHistory: async (e = 0, t = 50) => {
|
|
132
164
|
const n = S.getEndpoint("threads", "/chat/threads"), o = await fetch(`${N.api?.basePath}${n}?skip=${e}&limit=${t}`, {
|
|
133
165
|
headers: {
|
|
134
|
-
...
|
|
166
|
+
...L.getHeaders()
|
|
135
167
|
}
|
|
136
168
|
});
|
|
137
169
|
return S.handleResponse(o, "Failed to fetch chat history");
|
|
@@ -140,7 +172,7 @@ const S = {
|
|
|
140
172
|
if (!S.getToken()) throw new Error("No token found");
|
|
141
173
|
const n = S.getEndpoint("threadMessages", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
142
174
|
headers: {
|
|
143
|
-
...
|
|
175
|
+
...L.getHeaders()
|
|
144
176
|
}
|
|
145
177
|
});
|
|
146
178
|
return S.handleResponse(o, "Failed to fetch thread messages");
|
|
@@ -150,7 +182,7 @@ const S = {
|
|
|
150
182
|
const n = S.getEndpoint("deleteThread", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
151
183
|
method: "DELETE",
|
|
152
184
|
headers: {
|
|
153
|
-
...
|
|
185
|
+
...L.getHeaders()
|
|
154
186
|
}
|
|
155
187
|
});
|
|
156
188
|
return S.handleResponse(o, "Failed to delete thread");
|
|
@@ -161,7 +193,7 @@ const S = {
|
|
|
161
193
|
method: "PATCH",
|
|
162
194
|
headers: {
|
|
163
195
|
"Content-Type": "application/json",
|
|
164
|
-
...
|
|
196
|
+
...L.getHeaders()
|
|
165
197
|
},
|
|
166
198
|
body: JSON.stringify({ title: t })
|
|
167
199
|
});
|
|
@@ -176,7 +208,7 @@ const S = {
|
|
|
176
208
|
if (N.api?.attachmentResolver)
|
|
177
209
|
return N.api.attachmentResolver(e);
|
|
178
210
|
const t = S.getEndpoint("attachments", (r) => `/chat/attachments/${r}`, e), n = await fetch(`${N.api?.basePath}${t}`, {
|
|
179
|
-
headers: { ...
|
|
211
|
+
headers: { ...L.getHeaders() }
|
|
180
212
|
});
|
|
181
213
|
if (!n.ok) return S.handleResponse(n, "Failed to fetch attachment");
|
|
182
214
|
const o = await n.blob();
|
|
@@ -201,7 +233,7 @@ const S = {
|
|
|
201
233
|
method: "POST",
|
|
202
234
|
headers: {
|
|
203
235
|
"Content-Type": "application/json",
|
|
204
|
-
...
|
|
236
|
+
...L.getHeaders()
|
|
205
237
|
},
|
|
206
238
|
body: JSON.stringify({
|
|
207
239
|
thread_id: e.replace(/^\//, ""),
|
|
@@ -214,7 +246,7 @@ const S = {
|
|
|
214
246
|
getMe: async () => {
|
|
215
247
|
const e = S.getEndpoint("me", "/users/me"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
216
248
|
headers: {
|
|
217
|
-
...
|
|
249
|
+
...L.getHeaders()
|
|
218
250
|
}
|
|
219
251
|
});
|
|
220
252
|
return S.handleResponse(t, "Failed to fetch user profile");
|
|
@@ -224,7 +256,7 @@ const S = {
|
|
|
224
256
|
method: "PATCH",
|
|
225
257
|
headers: {
|
|
226
258
|
"Content-Type": "application/json",
|
|
227
|
-
...
|
|
259
|
+
...L.getHeaders()
|
|
228
260
|
},
|
|
229
261
|
body: JSON.stringify(e)
|
|
230
262
|
});
|
|
@@ -236,7 +268,7 @@ const S = {
|
|
|
236
268
|
method: "PATCH",
|
|
237
269
|
headers: {
|
|
238
270
|
"Content-Type": "application/json",
|
|
239
|
-
...
|
|
271
|
+
...L.getHeaders()
|
|
240
272
|
},
|
|
241
273
|
body: JSON.stringify({ pinned: t })
|
|
242
274
|
});
|
|
@@ -247,7 +279,7 @@ const S = {
|
|
|
247
279
|
const n = S.getEndpoint("shareThread", (r) => `/chat/threads/${r.replace(/^\//, "")}/share`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
248
280
|
method: "POST",
|
|
249
281
|
headers: {
|
|
250
|
-
...
|
|
282
|
+
...L.getHeaders()
|
|
251
283
|
}
|
|
252
284
|
});
|
|
253
285
|
return S.handleResponse(o, "Failed to share thread");
|
|
@@ -265,7 +297,7 @@ const S = {
|
|
|
265
297
|
return S.handleResponse(e, "Failed to fetch app configuration");
|
|
266
298
|
}
|
|
267
299
|
};
|
|
268
|
-
function
|
|
300
|
+
function zn(e, t) {
|
|
269
301
|
const [n, o] = B(
|
|
270
302
|
e.metadata?.feedback
|
|
271
303
|
), r = oe((l) => {
|
|
@@ -288,7 +320,7 @@ function Mn(e, t) {
|
|
|
288
320
|
copy: r
|
|
289
321
|
};
|
|
290
322
|
}
|
|
291
|
-
const
|
|
323
|
+
const Un = /* @__PURE__ */ new Set(["ar", "fa", "he", "ur", "yi", "ku", "ckb", "ps", "sd", "ug", "arc", "syc"]);
|
|
292
324
|
function $n() {
|
|
293
325
|
const { i18n: e } = M(["translation"]), { app: t } = W(), n = St(() => {
|
|
294
326
|
const l = S.getConfig(), c = t || l.app;
|
|
@@ -299,7 +331,7 @@ function $n() {
|
|
|
299
331
|
language: e.language || c?.language || "en",
|
|
300
332
|
showToolDetails: c?.showToolDetails ?? !0
|
|
301
333
|
};
|
|
302
|
-
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r =
|
|
334
|
+
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r = Un.has(o), a = t?.language;
|
|
303
335
|
return Q(() => {
|
|
304
336
|
if (typeof window > "u") return;
|
|
305
337
|
const l = localStorage.getItem("gentiq-last-default-lang");
|
|
@@ -314,7 +346,7 @@ function $n() {
|
|
|
314
346
|
error: null
|
|
315
347
|
};
|
|
316
348
|
}
|
|
317
|
-
function
|
|
349
|
+
function Bn(e) {
|
|
318
350
|
const {
|
|
319
351
|
part: t,
|
|
320
352
|
message: n,
|
|
@@ -327,7 +359,7 @@ function Un(e) {
|
|
|
327
359
|
renderMessagePart: p,
|
|
328
360
|
chat: h,
|
|
329
361
|
readonly: f
|
|
330
|
-
} = e, { showToolDetails: b } = $n(), { TextPart: m, ReasoningPart: y, ToolPart: d, FilePart: v, toolComponents:
|
|
362
|
+
} = e, { showToolDetails: b } = $n(), { TextPart: m, ReasoningPart: y, ToolPart: d, FilePart: v, toolComponents: _, threadActions: g } = W(), { feedback: R, handleFeedback: E, copy: I } = zn(n, c);
|
|
331
363
|
if (p) {
|
|
332
364
|
const O = p(t, n);
|
|
333
365
|
if (O !== void 0)
|
|
@@ -368,7 +400,7 @@ function Un(e) {
|
|
|
368
400
|
part: t,
|
|
369
401
|
message: n,
|
|
370
402
|
chat: h,
|
|
371
|
-
toolComponents:
|
|
403
|
+
toolComponents: _,
|
|
372
404
|
showToolCalls: !!b
|
|
373
405
|
}
|
|
374
406
|
) : t.type === "file" ? /* @__PURE__ */ i(
|
|
@@ -380,9 +412,9 @@ function Un(e) {
|
|
|
380
412
|
) : null;
|
|
381
413
|
}
|
|
382
414
|
function k(...e) {
|
|
383
|
-
return Dn(
|
|
415
|
+
return Dn(Fn(e));
|
|
384
416
|
}
|
|
385
|
-
function
|
|
417
|
+
function vi(e, t) {
|
|
386
418
|
if (t === "/") return e;
|
|
387
419
|
const n = e.endsWith("/") ? e.slice(0, -1) : e, o = t.startsWith("/") ? t : "/" + t;
|
|
388
420
|
return n + o;
|
|
@@ -407,18 +439,18 @@ const fe = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
|
407
439
|
n
|
|
408
440
|
))
|
|
409
441
|
}
|
|
410
|
-
),
|
|
442
|
+
), Hn = /[\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/;
|
|
411
443
|
function ge(e, t = "ltr") {
|
|
412
444
|
if (!e) return t;
|
|
413
445
|
for (const n of e) {
|
|
414
|
-
if (
|
|
446
|
+
if (Hn.test(n))
|
|
415
447
|
return "rtl";
|
|
416
448
|
if (/[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02B8]/.test(n))
|
|
417
449
|
return "ltr";
|
|
418
450
|
}
|
|
419
451
|
return "ltr";
|
|
420
452
|
}
|
|
421
|
-
const
|
|
453
|
+
const qn = Pe(
|
|
422
454
|
"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",
|
|
423
455
|
{
|
|
424
456
|
variants: {
|
|
@@ -450,9 +482,9 @@ function ee({
|
|
|
450
482
|
asChild: o = !1,
|
|
451
483
|
...r
|
|
452
484
|
}) {
|
|
453
|
-
return /* @__PURE__ */ i(o ? Ct : "button", { "data-slot": "button", className: k(
|
|
485
|
+
return /* @__PURE__ */ i(o ? Ct : "button", { "data-slot": "button", className: k(qn({ variant: t, size: n, className: e })), ...r });
|
|
454
486
|
}
|
|
455
|
-
const
|
|
487
|
+
const jn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
456
488
|
At,
|
|
457
489
|
{
|
|
458
490
|
className: k("relative flex-1 overflow-hidden", e),
|
|
@@ -461,14 +493,14 @@ const qn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
|
461
493
|
role: "log",
|
|
462
494
|
...t
|
|
463
495
|
}
|
|
464
|
-
),
|
|
496
|
+
), Gn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
465
497
|
At.Content,
|
|
466
498
|
{
|
|
467
499
|
className: k("p-4 pb-6 stick-to-bottom", e),
|
|
468
500
|
scrollClassName: "custom-scrollbar",
|
|
469
501
|
...t
|
|
470
502
|
}
|
|
471
|
-
),
|
|
503
|
+
), Vn = ({ className: e, ...t }) => {
|
|
472
504
|
const { isAtBottom: n, scrollToBottom: o } = In(), r = oe(() => {
|
|
473
505
|
o();
|
|
474
506
|
}, [o]);
|
|
@@ -495,20 +527,20 @@ const qn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
|
495
527
|
function ze({ ...e }) {
|
|
496
528
|
return /* @__PURE__ */ i(Me.Root, { "data-slot": "collapsible", ...e });
|
|
497
529
|
}
|
|
498
|
-
function
|
|
530
|
+
function Ue({ ...e }) {
|
|
499
531
|
return /* @__PURE__ */ i(Me.CollapsibleTrigger, { "data-slot": "collapsible-trigger", ...e });
|
|
500
532
|
}
|
|
501
|
-
function
|
|
533
|
+
function $e({ ...e }) {
|
|
502
534
|
return /* @__PURE__ */ i(Me.CollapsibleContent, { "data-slot": "collapsible-content", ...e });
|
|
503
535
|
}
|
|
504
|
-
const
|
|
536
|
+
const Wn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not-prose mb-4 text-primary text-xs", e), ...t }), Yn = ({ className: e, count: t, children: n, ...o }) => {
|
|
505
537
|
const { t: r } = M(["chat"]);
|
|
506
|
-
return /* @__PURE__ */ i(
|
|
538
|
+
return /* @__PURE__ */ i(Ue, { className: k("flex items-center gap-2", e), ...o, children: n ?? /* @__PURE__ */ w(J, { children: [
|
|
507
539
|
/* @__PURE__ */ i("p", { className: "font-medium", children: r("used_sources", { count: t }) }),
|
|
508
540
|
/* @__PURE__ */ i(ie, { className: "h-4 w-4" })
|
|
509
541
|
] }) });
|
|
510
|
-
},
|
|
511
|
-
|
|
542
|
+
}, Xn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
543
|
+
$e,
|
|
512
544
|
{
|
|
513
545
|
className: k(
|
|
514
546
|
"mt-3 flex w-fit flex-col gap-2",
|
|
@@ -517,10 +549,10 @@ const Vn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
517
549
|
),
|
|
518
550
|
...t
|
|
519
551
|
}
|
|
520
|
-
),
|
|
552
|
+
), Kn = ({ 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__ */ w(J, { children: [
|
|
521
553
|
/* @__PURE__ */ i(pn, { className: "h-4 w-4" }),
|
|
522
554
|
/* @__PURE__ */ i("span", { className: "block font-medium", children: t })
|
|
523
|
-
] }) }),
|
|
555
|
+
] }) }), Zn = ({ latestProgress: e, parts: t }) => {
|
|
524
556
|
const n = e.data[0].status, o = e.data[0].message, r = t.lastIndexOf(e);
|
|
525
557
|
if (!!(t.slice(r + 1).some(
|
|
526
558
|
(f) => f.type === "text" && (f.text || "").trim().length > 0 || f.type === "tool-invocation" || f.type === "tool-call"
|
|
@@ -534,7 +566,7 @@ const Vn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
534
566
|
/* @__PURE__ */ i("span", { className: k("font-medium", s && "animate-pulse"), children: o })
|
|
535
567
|
] }) });
|
|
536
568
|
};
|
|
537
|
-
function
|
|
569
|
+
function Jn({
|
|
538
570
|
messages: e,
|
|
539
571
|
status: t,
|
|
540
572
|
isLoadingHistory: n,
|
|
@@ -547,17 +579,17 @@ function Zn({
|
|
|
547
579
|
readonly: p
|
|
548
580
|
}) {
|
|
549
581
|
const { i18n: h, t: f } = M(["chat", "translation"]), b = h.language === "fa", { WelcomeScreen: m } = W(), y = e[e.length - 1], d = y?.role === "assistant" && (t === "ready" || y.parts.some((v) => v.type === "data-chat-finished"));
|
|
550
|
-
return /* @__PURE__ */ w(
|
|
551
|
-
/* @__PURE__ */ w(
|
|
582
|
+
return /* @__PURE__ */ w(jn, { className: k("min-h-0 flex-1", s), children: [
|
|
583
|
+
/* @__PURE__ */ w(Gn, { className: "max-w-4xl mx-auto w-full px-4 md:px-0 pb-32", dir: "ltr", children: [
|
|
552
584
|
e.length === 0 && !n ? /* @__PURE__ */ i(m, { onSuggestionClick: l }) : e.map((v) => /* @__PURE__ */ w("div", { children: [
|
|
553
|
-
v.role === "assistant" && v.parts.filter((
|
|
554
|
-
/* @__PURE__ */ i(
|
|
555
|
-
v.parts.filter((
|
|
585
|
+
v.role === "assistant" && v.parts.filter((_) => _.type === "source-url").length > 0 && /* @__PURE__ */ w(Wn, { children: [
|
|
586
|
+
/* @__PURE__ */ i(Yn, { count: v.parts.filter((_) => _.type === "source-url").length }),
|
|
587
|
+
v.parts.filter((_) => _.type === "source-url").map((_, g) => /* @__PURE__ */ i(Xn, { children: /* @__PURE__ */ i(Kn, { href: _.url, title: _.url }, `${v.id}-${g}`) }, `${v.id}-${g}`))
|
|
556
588
|
] }),
|
|
557
|
-
v.parts.map((
|
|
558
|
-
|
|
589
|
+
v.parts.map((_, g) => /* @__PURE__ */ i(
|
|
590
|
+
Bn,
|
|
559
591
|
{
|
|
560
|
-
part:
|
|
592
|
+
part: _,
|
|
561
593
|
message: v,
|
|
562
594
|
status: t,
|
|
563
595
|
index: g,
|
|
@@ -575,8 +607,8 @@ function Zn({
|
|
|
575
607
|
if (!y || y.role !== "assistant") return null;
|
|
576
608
|
const v = y.parts.filter((g) => g.type === "data-progress-update");
|
|
577
609
|
if (v.length === 0) return null;
|
|
578
|
-
const
|
|
579
|
-
return
|
|
610
|
+
const _ = v[v.length - 1];
|
|
611
|
+
return _ ? /* @__PURE__ */ i(Zn, { latestProgress: _, parts: y.parts }) : null;
|
|
580
612
|
})(),
|
|
581
613
|
(n || t === "submitted") && /* @__PURE__ */ i("div", { className: "animate-in-bubble", children: /* @__PURE__ */ i(fe, {}) }),
|
|
582
614
|
t === "streaming" && (() => {
|
|
@@ -597,10 +629,10 @@ function Zn({
|
|
|
597
629
|
] })
|
|
598
630
|
] }) })
|
|
599
631
|
] }),
|
|
600
|
-
/* @__PURE__ */ i(
|
|
632
|
+
/* @__PURE__ */ i(Vn, {})
|
|
601
633
|
] });
|
|
602
634
|
}
|
|
603
|
-
function
|
|
635
|
+
function Qn({ className: e, ...t }) {
|
|
604
636
|
return /* @__PURE__ */ i(
|
|
605
637
|
"textarea",
|
|
606
638
|
{
|
|
@@ -613,7 +645,7 @@ function Jn({ className: e, ...t }) {
|
|
|
613
645
|
}
|
|
614
646
|
);
|
|
615
647
|
}
|
|
616
|
-
const
|
|
648
|
+
const eo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg-transparent w-full", children: /* @__PURE__ */ i(
|
|
617
649
|
"form",
|
|
618
650
|
{
|
|
619
651
|
className: k(
|
|
@@ -628,7 +660,7 @@ const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
628
660
|
),
|
|
629
661
|
...t
|
|
630
662
|
}
|
|
631
|
-
) }),
|
|
663
|
+
) }), to = ({
|
|
632
664
|
onChange: e,
|
|
633
665
|
className: t,
|
|
634
666
|
placeholder: n = "What would you like to know?",
|
|
@@ -644,7 +676,7 @@ const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
644
676
|
}
|
|
645
677
|
}, { i18n: a } = M(["chat"]), l = ge(o.value, a.dir());
|
|
646
678
|
return /* @__PURE__ */ i(
|
|
647
|
-
|
|
679
|
+
Qn,
|
|
648
680
|
{
|
|
649
681
|
dir: l,
|
|
650
682
|
className: k(
|
|
@@ -665,7 +697,7 @@ const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
665
697
|
...o
|
|
666
698
|
}
|
|
667
699
|
);
|
|
668
|
-
},
|
|
700
|
+
}, no = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: k("flex shrink-0 items-center gap-1.5 pb-1", e), ...t }), oo = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: k("flex items-center gap-0.5", e), ...t }), ro = ({ variant: e = "ghost", className: t, size: n, ...o }) => {
|
|
669
701
|
const r = n ?? cn.count(o.children) > 1 ? "default" : "icon";
|
|
670
702
|
return /* @__PURE__ */ i(
|
|
671
703
|
ee,
|
|
@@ -684,7 +716,7 @@ const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg
|
|
|
684
716
|
...o
|
|
685
717
|
}
|
|
686
718
|
);
|
|
687
|
-
},
|
|
719
|
+
}, ao = ({
|
|
688
720
|
className: e,
|
|
689
721
|
variant: t = "default",
|
|
690
722
|
size: n = "icon",
|
|
@@ -727,7 +759,7 @@ function Rt({ ...e }) {
|
|
|
727
759
|
function Ot({ ...e }) {
|
|
728
760
|
return /* @__PURE__ */ i(K.Trigger, { "data-slot": "tooltip-trigger", ...e });
|
|
729
761
|
}
|
|
730
|
-
function
|
|
762
|
+
function Lt({
|
|
731
763
|
className: e,
|
|
732
764
|
sideOffset: t = 0,
|
|
733
765
|
children: n,
|
|
@@ -751,7 +783,7 @@ function Ft({
|
|
|
751
783
|
) });
|
|
752
784
|
}
|
|
753
785
|
const be = 768;
|
|
754
|
-
function
|
|
786
|
+
function io() {
|
|
755
787
|
const [e, t] = Ce.useState(void 0);
|
|
756
788
|
return Ce.useEffect(() => {
|
|
757
789
|
const n = window.matchMedia(`(max-width: ${be - 1}px)`), o = () => {
|
|
@@ -762,7 +794,7 @@ function ao() {
|
|
|
762
794
|
};
|
|
763
795
|
}, []), !!e;
|
|
764
796
|
}
|
|
765
|
-
function
|
|
797
|
+
function lo({
|
|
766
798
|
onSend: e,
|
|
767
799
|
status: t,
|
|
768
800
|
isLastMessageFinished: n,
|
|
@@ -771,29 +803,29 @@ function io({
|
|
|
771
803
|
conversationId: a,
|
|
772
804
|
className: l
|
|
773
805
|
}) {
|
|
774
|
-
const { t: c } = M(["chat", "translation"]), { composer: s } = W(), [p, h] = B(""), [f, b] = B([]), m =
|
|
806
|
+
const { t: c } = M(["chat", "translation"]), { composer: s } = W(), [p, h] = B(""), [f, b] = B([]), m = io(), y = Ge(null), d = Ge(null);
|
|
775
807
|
Q(() => {
|
|
776
808
|
!m && a === "/" && y.current && y.current.focus();
|
|
777
809
|
}, [a, m]);
|
|
778
810
|
const v = oe((E) => {
|
|
779
811
|
if (E.target.files) {
|
|
780
|
-
const I = Array.from(E.target.files),
|
|
781
|
-
if (
|
|
782
|
-
Rn.error(c("file_too_large", { size:
|
|
812
|
+
const I = Array.from(E.target.files), $ = s?.attachments?.maxSize;
|
|
813
|
+
if ($ && I.filter((ne) => ne.size > $).length > 0) {
|
|
814
|
+
Rn.error(c("file_too_large", { size: $ }));
|
|
783
815
|
return;
|
|
784
816
|
}
|
|
785
817
|
b((z) => [...z, ...I]);
|
|
786
818
|
}
|
|
787
819
|
E.target.value = "";
|
|
788
|
-
}, [s, c]),
|
|
789
|
-
b((I) => I.filter((
|
|
820
|
+
}, [s, c]), _ = oe((E) => {
|
|
821
|
+
b((I) => I.filter(($, z) => z !== E));
|
|
790
822
|
}, []), g = t === "streaming" && !n, R = (E) => {
|
|
791
823
|
if (E.preventDefault(), !g && (p.trim() || f.length > 0)) {
|
|
792
824
|
const I = new DataTransfer();
|
|
793
|
-
f.forEach((
|
|
825
|
+
f.forEach(($) => I.items.add($)), e(p, I.files), h(""), b([]);
|
|
794
826
|
}
|
|
795
827
|
};
|
|
796
|
-
return /* @__PURE__ */ i("div", { className: k("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__ */ w(
|
|
828
|
+
return /* @__PURE__ */ i("div", { className: k("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__ */ w(eo, { onSubmit: R, children: [
|
|
797
829
|
/* @__PURE__ */ i(
|
|
798
830
|
"input",
|
|
799
831
|
{
|
|
@@ -809,10 +841,10 @@ function io({
|
|
|
809
841
|
f.length > 0 && /* @__PURE__ */ i("div", { className: "flex flex-wrap gap-2 px-2 pt-2", children: f.map((E, I) => /* @__PURE__ */ w("div", { className: "group relative flex items-center gap-2 rounded-xl glass-surface px-2.5 py-1.5 text-sm shadow-sm", children: [
|
|
810
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(Et, { className: "size-3.5 text-muted-foreground shrink-0" }),
|
|
811
843
|
/* @__PURE__ */ i("span", { className: "max-w-[120px] truncate text-xs font-medium text-foreground/80", children: E.name }),
|
|
812
|
-
/* @__PURE__ */ i("button", { type: "button", onClick: () =>
|
|
844
|
+
/* @__PURE__ */ i("button", { type: "button", onClick: () => _(I), 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" }) })
|
|
813
845
|
] }, `${E.name}-${I}`)) }),
|
|
814
846
|
/* @__PURE__ */ i(
|
|
815
|
-
|
|
847
|
+
to,
|
|
816
848
|
{
|
|
817
849
|
ref: y,
|
|
818
850
|
onChange: (E) => h(E.target.value),
|
|
@@ -822,13 +854,13 @@ function io({
|
|
|
822
854
|
}
|
|
823
855
|
)
|
|
824
856
|
] }),
|
|
825
|
-
/* @__PURE__ */ w(
|
|
826
|
-
/* @__PURE__ */ i(
|
|
827
|
-
/* @__PURE__ */ i(Ot, { asChild: !0, children: /* @__PURE__ */ i(
|
|
828
|
-
/* @__PURE__ */ i(
|
|
857
|
+
/* @__PURE__ */ w(no, { children: [
|
|
858
|
+
/* @__PURE__ */ i(oo, { children: (s?.attachments?.enabled ?? !1) && /* @__PURE__ */ w(Rt, { children: [
|
|
859
|
+
/* @__PURE__ */ i(Ot, { asChild: !0, children: /* @__PURE__ */ i(ro, { variant: "ghost", onClick: () => d.current?.click(), disabled: g, children: /* @__PURE__ */ i(fn, { className: "size-4" }) }) }),
|
|
860
|
+
/* @__PURE__ */ i(Lt, { children: c("attach_file") })
|
|
829
861
|
] }) }),
|
|
830
862
|
/* @__PURE__ */ i(
|
|
831
|
-
|
|
863
|
+
ao,
|
|
832
864
|
{
|
|
833
865
|
disabled: t !== "streaming" && !p && f.length === 0,
|
|
834
866
|
status: r ? "error" : t === "error" ? void 0 : n ? "ready" : t,
|
|
@@ -838,7 +870,7 @@ function io({
|
|
|
838
870
|
] })
|
|
839
871
|
] }) }) });
|
|
840
872
|
}
|
|
841
|
-
const
|
|
873
|
+
const so = ({
|
|
842
874
|
suggestion: e,
|
|
843
875
|
onClick: t,
|
|
844
876
|
className: n,
|
|
@@ -862,7 +894,7 @@ const lo = ({
|
|
|
862
894
|
children: a ?? e
|
|
863
895
|
}
|
|
864
896
|
);
|
|
865
|
-
},
|
|
897
|
+
}, co = ({ onSuggestionClick: e, icons: t }) => {
|
|
866
898
|
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } = W(), a = r?.prompts ?? [], l = a.map((h) => {
|
|
867
899
|
const f = typeof h == "string" ? h : h.text;
|
|
868
900
|
return n(f);
|
|
@@ -889,7 +921,7 @@ const lo = ({
|
|
|
889
921
|
className: "animate-in fade-in slide-in-from-bottom-3 duration-700 fill-mode-both",
|
|
890
922
|
style: { animationDelay: `${f * 80}ms` },
|
|
891
923
|
children: /* @__PURE__ */ w(
|
|
892
|
-
|
|
924
|
+
so,
|
|
893
925
|
{
|
|
894
926
|
onClick: () => e(h),
|
|
895
927
|
suggestion: h,
|
|
@@ -920,7 +952,7 @@ const lo = ({
|
|
|
920
952
|
]
|
|
921
953
|
}
|
|
922
954
|
);
|
|
923
|
-
},
|
|
955
|
+
}, Ft = ({ className: e, from: t, ...n }) => /* @__PURE__ */ i(
|
|
924
956
|
"div",
|
|
925
957
|
{
|
|
926
958
|
className: k(
|
|
@@ -954,7 +986,7 @@ const lo = ({
|
|
|
954
986
|
...o,
|
|
955
987
|
children: e
|
|
956
988
|
}
|
|
957
|
-
),
|
|
989
|
+
), uo = ({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
958
990
|
"div",
|
|
959
991
|
{
|
|
960
992
|
className: k(
|
|
@@ -998,7 +1030,7 @@ const lo = ({
|
|
|
998
1030
|
);
|
|
999
1031
|
return e ? /* @__PURE__ */ i(It, { children: /* @__PURE__ */ w(Rt, { children: [
|
|
1000
1032
|
/* @__PURE__ */ i(Ot, { asChild: !0, children: c }),
|
|
1001
|
-
/* @__PURE__ */ i(
|
|
1033
|
+
/* @__PURE__ */ i(Lt, { children: /* @__PURE__ */ i("p", { children: e }) })
|
|
1002
1034
|
] }) }) : c;
|
|
1003
1035
|
};
|
|
1004
1036
|
class le {
|
|
@@ -1053,14 +1085,14 @@ D.prototype.overloadedBoolean = !1;
|
|
|
1053
1085
|
D.prototype.property = "";
|
|
1054
1086
|
D.prototype.spaceSeparated = !1;
|
|
1055
1087
|
D.prototype.space = void 0;
|
|
1056
|
-
let
|
|
1057
|
-
const
|
|
1088
|
+
let po = 0;
|
|
1089
|
+
const x = G(), A = G(), Ae = G(), u = G(), T = G(), Z = G(), P = G();
|
|
1058
1090
|
function G() {
|
|
1059
|
-
return 2 ** ++
|
|
1091
|
+
return 2 ** ++po;
|
|
1060
1092
|
}
|
|
1061
1093
|
const Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1062
1094
|
__proto__: null,
|
|
1063
|
-
boolean:
|
|
1095
|
+
boolean: x,
|
|
1064
1096
|
booleanish: A,
|
|
1065
1097
|
commaOrSpaceSeparated: P,
|
|
1066
1098
|
commaSeparated: Z,
|
|
@@ -1170,10 +1202,10 @@ const Mt = te({
|
|
|
1170
1202
|
function zt(e, t) {
|
|
1171
1203
|
return t in e ? e[t] : t;
|
|
1172
1204
|
}
|
|
1173
|
-
function
|
|
1205
|
+
function Ut(e, t) {
|
|
1174
1206
|
return zt(e, t.toLowerCase());
|
|
1175
1207
|
}
|
|
1176
|
-
const
|
|
1208
|
+
const ho = te({
|
|
1177
1209
|
attributes: {
|
|
1178
1210
|
acceptcharset: "accept-charset",
|
|
1179
1211
|
classname: "class",
|
|
@@ -1189,38 +1221,38 @@ const po = te({
|
|
|
1189
1221
|
accessKey: T,
|
|
1190
1222
|
action: null,
|
|
1191
1223
|
allow: null,
|
|
1192
|
-
allowFullScreen:
|
|
1193
|
-
allowPaymentRequest:
|
|
1194
|
-
allowUserMedia:
|
|
1224
|
+
allowFullScreen: x,
|
|
1225
|
+
allowPaymentRequest: x,
|
|
1226
|
+
allowUserMedia: x,
|
|
1195
1227
|
alt: null,
|
|
1196
1228
|
as: null,
|
|
1197
|
-
async:
|
|
1229
|
+
async: x,
|
|
1198
1230
|
autoCapitalize: null,
|
|
1199
1231
|
autoComplete: T,
|
|
1200
|
-
autoFocus:
|
|
1201
|
-
autoPlay:
|
|
1232
|
+
autoFocus: x,
|
|
1233
|
+
autoPlay: x,
|
|
1202
1234
|
blocking: T,
|
|
1203
1235
|
capture: null,
|
|
1204
1236
|
charSet: null,
|
|
1205
|
-
checked:
|
|
1237
|
+
checked: x,
|
|
1206
1238
|
cite: null,
|
|
1207
1239
|
className: T,
|
|
1208
1240
|
cols: u,
|
|
1209
1241
|
colSpan: null,
|
|
1210
1242
|
content: null,
|
|
1211
1243
|
contentEditable: A,
|
|
1212
|
-
controls:
|
|
1244
|
+
controls: x,
|
|
1213
1245
|
controlsList: T,
|
|
1214
1246
|
coords: u | Z,
|
|
1215
1247
|
crossOrigin: null,
|
|
1216
1248
|
data: null,
|
|
1217
1249
|
dateTime: null,
|
|
1218
1250
|
decoding: null,
|
|
1219
|
-
default:
|
|
1220
|
-
defer:
|
|
1251
|
+
default: x,
|
|
1252
|
+
defer: x,
|
|
1221
1253
|
dir: null,
|
|
1222
1254
|
dirName: null,
|
|
1223
|
-
disabled:
|
|
1255
|
+
disabled: x,
|
|
1224
1256
|
download: Ae,
|
|
1225
1257
|
draggable: A,
|
|
1226
1258
|
encType: null,
|
|
@@ -1230,7 +1262,7 @@ const po = te({
|
|
|
1230
1262
|
formAction: null,
|
|
1231
1263
|
formEncType: null,
|
|
1232
1264
|
formMethod: null,
|
|
1233
|
-
formNoValidate:
|
|
1265
|
+
formNoValidate: x,
|
|
1234
1266
|
formTarget: null,
|
|
1235
1267
|
headers: T,
|
|
1236
1268
|
height: u,
|
|
@@ -1243,15 +1275,15 @@ const po = te({
|
|
|
1243
1275
|
id: null,
|
|
1244
1276
|
imageSizes: null,
|
|
1245
1277
|
imageSrcSet: null,
|
|
1246
|
-
inert:
|
|
1278
|
+
inert: x,
|
|
1247
1279
|
inputMode: null,
|
|
1248
1280
|
integrity: null,
|
|
1249
1281
|
is: null,
|
|
1250
|
-
isMap:
|
|
1282
|
+
isMap: x,
|
|
1251
1283
|
itemId: null,
|
|
1252
1284
|
itemProp: T,
|
|
1253
1285
|
itemRef: T,
|
|
1254
|
-
itemScope:
|
|
1286
|
+
itemScope: x,
|
|
1255
1287
|
itemType: T,
|
|
1256
1288
|
kind: null,
|
|
1257
1289
|
label: null,
|
|
@@ -1259,7 +1291,7 @@ const po = te({
|
|
|
1259
1291
|
language: null,
|
|
1260
1292
|
list: null,
|
|
1261
1293
|
loading: null,
|
|
1262
|
-
loop:
|
|
1294
|
+
loop: x,
|
|
1263
1295
|
low: u,
|
|
1264
1296
|
manifest: null,
|
|
1265
1297
|
max: null,
|
|
@@ -1268,12 +1300,12 @@ const po = te({
|
|
|
1268
1300
|
method: null,
|
|
1269
1301
|
min: null,
|
|
1270
1302
|
minLength: u,
|
|
1271
|
-
multiple:
|
|
1272
|
-
muted:
|
|
1303
|
+
multiple: x,
|
|
1304
|
+
muted: x,
|
|
1273
1305
|
name: null,
|
|
1274
1306
|
nonce: null,
|
|
1275
|
-
noModule:
|
|
1276
|
-
noValidate:
|
|
1307
|
+
noModule: x,
|
|
1308
|
+
noValidate: x,
|
|
1277
1309
|
onAbort: null,
|
|
1278
1310
|
onAfterPrint: null,
|
|
1279
1311
|
onAuxClick: null,
|
|
@@ -1362,31 +1394,31 @@ const po = te({
|
|
|
1362
1394
|
onVolumeChange: null,
|
|
1363
1395
|
onWaiting: null,
|
|
1364
1396
|
onWheel: null,
|
|
1365
|
-
open:
|
|
1397
|
+
open: x,
|
|
1366
1398
|
optimum: u,
|
|
1367
1399
|
pattern: null,
|
|
1368
1400
|
ping: T,
|
|
1369
1401
|
placeholder: null,
|
|
1370
|
-
playsInline:
|
|
1402
|
+
playsInline: x,
|
|
1371
1403
|
popover: null,
|
|
1372
1404
|
popoverTarget: null,
|
|
1373
1405
|
popoverTargetAction: null,
|
|
1374
1406
|
poster: null,
|
|
1375
1407
|
preload: null,
|
|
1376
|
-
readOnly:
|
|
1408
|
+
readOnly: x,
|
|
1377
1409
|
referrerPolicy: null,
|
|
1378
1410
|
rel: T,
|
|
1379
|
-
required:
|
|
1380
|
-
reversed:
|
|
1411
|
+
required: x,
|
|
1412
|
+
reversed: x,
|
|
1381
1413
|
rows: u,
|
|
1382
1414
|
rowSpan: u,
|
|
1383
1415
|
sandbox: T,
|
|
1384
1416
|
scope: null,
|
|
1385
|
-
scoped:
|
|
1386
|
-
seamless:
|
|
1387
|
-
selected:
|
|
1388
|
-
shadowRootClonable:
|
|
1389
|
-
shadowRootDelegatesFocus:
|
|
1417
|
+
scoped: x,
|
|
1418
|
+
seamless: x,
|
|
1419
|
+
selected: x,
|
|
1420
|
+
shadowRootClonable: x,
|
|
1421
|
+
shadowRootDelegatesFocus: x,
|
|
1390
1422
|
shadowRootMode: null,
|
|
1391
1423
|
shape: null,
|
|
1392
1424
|
size: u,
|
|
@@ -1406,7 +1438,7 @@ const po = te({
|
|
|
1406
1438
|
title: null,
|
|
1407
1439
|
translate: null,
|
|
1408
1440
|
type: null,
|
|
1409
|
-
typeMustMatch:
|
|
1441
|
+
typeMustMatch: x,
|
|
1410
1442
|
useMap: null,
|
|
1411
1443
|
value: A,
|
|
1412
1444
|
width: u,
|
|
@@ -1452,9 +1484,9 @@ const po = te({
|
|
|
1452
1484
|
// `<object>`
|
|
1453
1485
|
color: null,
|
|
1454
1486
|
// `<font>` and `<hr>`. Use CSS instead
|
|
1455
|
-
compact:
|
|
1487
|
+
compact: x,
|
|
1456
1488
|
// Lists. Use CSS to reduce space between items instead
|
|
1457
|
-
declare:
|
|
1489
|
+
declare: x,
|
|
1458
1490
|
// `<object>`
|
|
1459
1491
|
event: null,
|
|
1460
1492
|
// `<script>`
|
|
@@ -1478,13 +1510,13 @@ const po = te({
|
|
|
1478
1510
|
// `<body>`
|
|
1479
1511
|
marginWidth: u,
|
|
1480
1512
|
// `<body>`
|
|
1481
|
-
noResize:
|
|
1513
|
+
noResize: x,
|
|
1482
1514
|
// `<frame>`
|
|
1483
|
-
noHref:
|
|
1515
|
+
noHref: x,
|
|
1484
1516
|
// `<area>`. Use no href instead of an explicit `nohref`
|
|
1485
|
-
noShade:
|
|
1517
|
+
noShade: x,
|
|
1486
1518
|
// `<hr>`. Use background-color and height instead of borders
|
|
1487
|
-
noWrap:
|
|
1519
|
+
noWrap: x,
|
|
1488
1520
|
// `<td>` and `<th>`
|
|
1489
1521
|
object: null,
|
|
1490
1522
|
// `<applet>`
|
|
@@ -1524,8 +1556,8 @@ const po = te({
|
|
|
1524
1556
|
allowTransparency: null,
|
|
1525
1557
|
autoCorrect: null,
|
|
1526
1558
|
autoSave: null,
|
|
1527
|
-
disablePictureInPicture:
|
|
1528
|
-
disableRemotePlayback:
|
|
1559
|
+
disablePictureInPicture: x,
|
|
1560
|
+
disableRemotePlayback: x,
|
|
1529
1561
|
prefix: null,
|
|
1530
1562
|
property: null,
|
|
1531
1563
|
results: u,
|
|
@@ -1533,8 +1565,8 @@ const po = te({
|
|
|
1533
1565
|
unselectable: null
|
|
1534
1566
|
},
|
|
1535
1567
|
space: "html",
|
|
1536
|
-
transform:
|
|
1537
|
-
}),
|
|
1568
|
+
transform: Ut
|
|
1569
|
+
}), go = te({
|
|
1538
1570
|
attributes: {
|
|
1539
1571
|
accentHeight: "accent-height",
|
|
1540
1572
|
alignmentBaseline: "alignment-baseline",
|
|
@@ -1760,7 +1792,7 @@ const po = te({
|
|
|
1760
1792
|
dur: null,
|
|
1761
1793
|
divisor: u,
|
|
1762
1794
|
dominantBaseline: null,
|
|
1763
|
-
download:
|
|
1795
|
+
download: x,
|
|
1764
1796
|
dx: null,
|
|
1765
1797
|
dy: null,
|
|
1766
1798
|
edgeMode: null,
|
|
@@ -2093,7 +2125,7 @@ const po = te({
|
|
|
2093
2125
|
},
|
|
2094
2126
|
space: "svg",
|
|
2095
2127
|
transform: zt
|
|
2096
|
-
}),
|
|
2128
|
+
}), $t = te({
|
|
2097
2129
|
properties: {
|
|
2098
2130
|
xLinkActuate: null,
|
|
2099
2131
|
xLinkArcRole: null,
|
|
@@ -2111,27 +2143,27 @@ const po = te({
|
|
|
2111
2143
|
attributes: { xmlnsxlink: "xmlns:xlink" },
|
|
2112
2144
|
properties: { xmlnsXLink: null, xmlns: null },
|
|
2113
2145
|
space: "xmlns",
|
|
2114
|
-
transform:
|
|
2146
|
+
transform: Ut
|
|
2115
2147
|
}), Ht = te({
|
|
2116
2148
|
properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
|
|
2117
2149
|
space: "xml",
|
|
2118
2150
|
transform(e, t) {
|
|
2119
2151
|
return "xml:" + t.slice(3).toLowerCase();
|
|
2120
2152
|
}
|
|
2121
|
-
}),
|
|
2122
|
-
function
|
|
2153
|
+
}), mo = /[A-Z]/g, Ze = /-[a-z]/g, fo = /^data[-\w.:]+$/i;
|
|
2154
|
+
function bo(e, t) {
|
|
2123
2155
|
const n = ae(t);
|
|
2124
2156
|
let o = t, r = D;
|
|
2125
2157
|
if (n in e.normal)
|
|
2126
2158
|
return e.property[e.normal[n]];
|
|
2127
|
-
if (n.length > 4 && n.slice(0, 4) === "data" &&
|
|
2159
|
+
if (n.length > 4 && n.slice(0, 4) === "data" && fo.test(t)) {
|
|
2128
2160
|
if (t.charAt(4) === "-") {
|
|
2129
|
-
const a = t.slice(5).replace(Ze,
|
|
2161
|
+
const a = t.slice(5).replace(Ze, ko);
|
|
2130
2162
|
o = "data" + a.charAt(0).toUpperCase() + a.slice(1);
|
|
2131
2163
|
} else {
|
|
2132
2164
|
const a = t.slice(4);
|
|
2133
2165
|
if (!Ze.test(a)) {
|
|
2134
|
-
let l = a.replace(
|
|
2166
|
+
let l = a.replace(mo, yo);
|
|
2135
2167
|
l.charAt(0) !== "-" && (l = "-" + l), t = "data" + l;
|
|
2136
2168
|
}
|
|
2137
2169
|
}
|
|
@@ -2139,13 +2171,13 @@ function fo(e, t) {
|
|
|
2139
2171
|
}
|
|
2140
2172
|
return new r(o, t);
|
|
2141
2173
|
}
|
|
2142
|
-
function
|
|
2174
|
+
function yo(e) {
|
|
2143
2175
|
return "-" + e.toLowerCase();
|
|
2144
2176
|
}
|
|
2145
|
-
function
|
|
2177
|
+
function ko(e) {
|
|
2146
2178
|
return e.charAt(1).toUpperCase();
|
|
2147
2179
|
}
|
|
2148
|
-
const
|
|
2180
|
+
const vo = Pt([Mt, ho, $t, Bt, Ht], "html"), wo = Pt([Mt, go, $t, Bt, Ht], "svg");
|
|
2149
2181
|
function Je(e) {
|
|
2150
2182
|
const t = [], n = String(e || "");
|
|
2151
2183
|
let o = n.indexOf(","), r = 0, a = !1;
|
|
@@ -2157,7 +2189,7 @@ function Je(e) {
|
|
|
2157
2189
|
return t;
|
|
2158
2190
|
}
|
|
2159
2191
|
const Qe = /[#.]/g;
|
|
2160
|
-
function
|
|
2192
|
+
function _o(e, t) {
|
|
2161
2193
|
const n = e || "", o = {};
|
|
2162
2194
|
let r = 0, a, l;
|
|
2163
2195
|
for (; r < n.length; ) {
|
|
@@ -2178,7 +2210,7 @@ function et(e) {
|
|
|
2178
2210
|
return t ? t.split(/[ \t\n\r\f]+/g) : [];
|
|
2179
2211
|
}
|
|
2180
2212
|
function qt(e, t, n) {
|
|
2181
|
-
const o = n ?
|
|
2213
|
+
const o = n ? No(n) : void 0;
|
|
2182
2214
|
function r(a, l, ...c) {
|
|
2183
2215
|
let s;
|
|
2184
2216
|
if (a == null) {
|
|
@@ -2189,13 +2221,13 @@ function qt(e, t, n) {
|
|
|
2189
2221
|
);
|
|
2190
2222
|
c.unshift(p);
|
|
2191
2223
|
} else {
|
|
2192
|
-
s =
|
|
2224
|
+
s = _o(a, t);
|
|
2193
2225
|
const p = s.tagName.toLowerCase(), h = o ? o.get(p) : void 0;
|
|
2194
2226
|
if (s.tagName = h || p, xo(l))
|
|
2195
2227
|
c.unshift(l);
|
|
2196
2228
|
else
|
|
2197
2229
|
for (const [f, b] of Object.entries(l))
|
|
2198
|
-
|
|
2230
|
+
So(e, s.properties, f, b);
|
|
2199
2231
|
}
|
|
2200
2232
|
for (const p of c)
|
|
2201
2233
|
Re(s.children, p);
|
|
@@ -2226,14 +2258,14 @@ function xo(e) {
|
|
|
2226
2258
|
}
|
|
2227
2259
|
return !!("children" in e && Array.isArray(e.children));
|
|
2228
2260
|
}
|
|
2229
|
-
function
|
|
2230
|
-
const r =
|
|
2261
|
+
function So(e, t, n, o) {
|
|
2262
|
+
const r = bo(e, n);
|
|
2231
2263
|
let a;
|
|
2232
2264
|
if (o != null) {
|
|
2233
2265
|
if (typeof o == "number") {
|
|
2234
2266
|
if (Number.isNaN(o)) return;
|
|
2235
2267
|
a = o;
|
|
2236
|
-
} 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" ?
|
|
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" ? Eo(o) : String(o);
|
|
2237
2269
|
if (Array.isArray(a)) {
|
|
2238
2270
|
const l = [];
|
|
2239
2271
|
for (const c of a)
|
|
@@ -2269,19 +2301,19 @@ function tt(e, t, n) {
|
|
|
2269
2301
|
}
|
|
2270
2302
|
return n;
|
|
2271
2303
|
}
|
|
2272
|
-
function
|
|
2304
|
+
function Eo(e) {
|
|
2273
2305
|
const t = [];
|
|
2274
2306
|
for (const [n, o] of Object.entries(e))
|
|
2275
2307
|
t.push([n, o].join(": "));
|
|
2276
2308
|
return t.join("; ");
|
|
2277
2309
|
}
|
|
2278
|
-
function
|
|
2310
|
+
function No(e) {
|
|
2279
2311
|
const t = /* @__PURE__ */ new Map();
|
|
2280
2312
|
for (const n of e)
|
|
2281
2313
|
t.set(n.toLowerCase(), n);
|
|
2282
2314
|
return t;
|
|
2283
2315
|
}
|
|
2284
|
-
const
|
|
2316
|
+
const To = [
|
|
2285
2317
|
"altGlyph",
|
|
2286
2318
|
"altGlyphDef",
|
|
2287
2319
|
"altGlyphItem",
|
|
@@ -2321,28 +2353,28 @@ const No = [
|
|
|
2321
2353
|
"solidColor",
|
|
2322
2354
|
"textArea",
|
|
2323
2355
|
"textPath"
|
|
2324
|
-
],
|
|
2356
|
+
], Co = qt(vo, "div"), Ao = qt(wo, "g", To), ke = {
|
|
2325
2357
|
html: "http://www.w3.org/1999/xhtml",
|
|
2326
2358
|
svg: "http://www.w3.org/2000/svg"
|
|
2327
2359
|
};
|
|
2328
|
-
function
|
|
2360
|
+
function Io(e, t) {
|
|
2329
2361
|
return jt(e, {}) || { type: "root", children: [] };
|
|
2330
2362
|
}
|
|
2331
2363
|
function jt(e, t) {
|
|
2332
|
-
const n =
|
|
2364
|
+
const n = Ro(e, t);
|
|
2333
2365
|
return n && t.afterTransform && t.afterTransform(e, n), n;
|
|
2334
2366
|
}
|
|
2335
|
-
function
|
|
2367
|
+
function Ro(e, t) {
|
|
2336
2368
|
switch (e.nodeType) {
|
|
2337
2369
|
case 1:
|
|
2338
|
-
return
|
|
2370
|
+
return Do(
|
|
2339
2371
|
/** @type {Element} */
|
|
2340
2372
|
e,
|
|
2341
2373
|
t
|
|
2342
2374
|
);
|
|
2343
2375
|
// Ignore: Attr (2).
|
|
2344
2376
|
case 3:
|
|
2345
|
-
return
|
|
2377
|
+
return Lo(
|
|
2346
2378
|
/** @type {Text} */
|
|
2347
2379
|
e
|
|
2348
2380
|
);
|
|
@@ -2362,7 +2394,7 @@ function Io(e, t) {
|
|
|
2362
2394
|
t
|
|
2363
2395
|
);
|
|
2364
2396
|
case 10:
|
|
2365
|
-
return
|
|
2397
|
+
return Oo();
|
|
2366
2398
|
case 11:
|
|
2367
2399
|
return nt(
|
|
2368
2400
|
/** @type {DocumentFragment} */
|
|
@@ -2376,17 +2408,17 @@ function Io(e, t) {
|
|
|
2376
2408
|
function nt(e, t) {
|
|
2377
2409
|
return { type: "root", children: Gt(e, t) };
|
|
2378
2410
|
}
|
|
2379
|
-
function
|
|
2411
|
+
function Oo() {
|
|
2380
2412
|
return { type: "doctype" };
|
|
2381
2413
|
}
|
|
2382
|
-
function
|
|
2414
|
+
function Lo(e) {
|
|
2383
2415
|
return { type: "text", value: e.nodeValue || "" };
|
|
2384
2416
|
}
|
|
2385
2417
|
function Fo(e) {
|
|
2386
2418
|
return { type: "comment", value: e.nodeValue || "" };
|
|
2387
2419
|
}
|
|
2388
|
-
function
|
|
2389
|
-
const n = e.namespaceURI, o = n === ke.svg ?
|
|
2420
|
+
function Do(e, t) {
|
|
2421
|
+
const n = e.namespaceURI, o = n === ke.svg ? Ao : Co, r = n === ke.html ? e.tagName.toLowerCase() : e.tagName, a = (
|
|
2390
2422
|
// @ts-expect-error: DOM types are wrong, content can exist.
|
|
2391
2423
|
n === ke.html && r === "template" ? e.content : e
|
|
2392
2424
|
), l = e.getAttributeNames(), c = {};
|
|
@@ -2405,14 +2437,14 @@ function Gt(e, t) {
|
|
|
2405
2437
|
return o;
|
|
2406
2438
|
}
|
|
2407
2439
|
new DOMParser();
|
|
2408
|
-
function
|
|
2409
|
-
const n =
|
|
2440
|
+
function Po(e, t) {
|
|
2441
|
+
const n = Mo(e);
|
|
2410
2442
|
return (
|
|
2411
2443
|
/** @type {Root} */
|
|
2412
|
-
|
|
2444
|
+
Io(n)
|
|
2413
2445
|
);
|
|
2414
2446
|
}
|
|
2415
|
-
function
|
|
2447
|
+
function Mo(e) {
|
|
2416
2448
|
const t = document.createElement("template");
|
|
2417
2449
|
return t.innerHTML = e, t.content;
|
|
2418
2450
|
}
|
|
@@ -2433,14 +2465,14 @@ const He = (
|
|
|
2433
2465
|
*/
|
|
2434
2466
|
(function(e) {
|
|
2435
2467
|
if (e == null)
|
|
2436
|
-
return
|
|
2468
|
+
return Bo;
|
|
2437
2469
|
if (typeof e == "function")
|
|
2438
2470
|
return me(e);
|
|
2439
2471
|
if (typeof e == "object")
|
|
2440
|
-
return Array.isArray(e) ?
|
|
2472
|
+
return Array.isArray(e) ? zo(e) : (
|
|
2441
2473
|
// Cast because `ReadonlyArray` goes into the above but `isArray`
|
|
2442
2474
|
// narrows to `Array`.
|
|
2443
|
-
|
|
2475
|
+
Uo(
|
|
2444
2476
|
/** @type {Props} */
|
|
2445
2477
|
e
|
|
2446
2478
|
)
|
|
@@ -2450,7 +2482,7 @@ const He = (
|
|
|
2450
2482
|
throw new Error("Expected function, string, or object as test");
|
|
2451
2483
|
})
|
|
2452
2484
|
);
|
|
2453
|
-
function
|
|
2485
|
+
function zo(e) {
|
|
2454
2486
|
const t = [];
|
|
2455
2487
|
let n = -1;
|
|
2456
2488
|
for (; ++n < e.length; )
|
|
@@ -2463,7 +2495,7 @@ function Mo(e) {
|
|
|
2463
2495
|
return !1;
|
|
2464
2496
|
}
|
|
2465
2497
|
}
|
|
2466
|
-
function
|
|
2498
|
+
function Uo(e) {
|
|
2467
2499
|
const t = (
|
|
2468
2500
|
/** @type {Record<string, unknown>} */
|
|
2469
2501
|
e
|
|
@@ -2490,7 +2522,7 @@ function $o(e) {
|
|
|
2490
2522
|
function me(e) {
|
|
2491
2523
|
return t;
|
|
2492
2524
|
function t(n, o, r) {
|
|
2493
|
-
return !!(
|
|
2525
|
+
return !!(Ho(n) && e.call(
|
|
2494
2526
|
this,
|
|
2495
2527
|
n,
|
|
2496
2528
|
typeof o == "number" ? o : void 0,
|
|
@@ -2498,10 +2530,10 @@ function me(e) {
|
|
|
2498
2530
|
));
|
|
2499
2531
|
}
|
|
2500
2532
|
}
|
|
2501
|
-
function
|
|
2533
|
+
function Bo() {
|
|
2502
2534
|
return !0;
|
|
2503
2535
|
}
|
|
2504
|
-
function
|
|
2536
|
+
function Ho(e) {
|
|
2505
2537
|
return e !== null && typeof e == "object" && "type" in e;
|
|
2506
2538
|
}
|
|
2507
2539
|
const ot = (
|
|
@@ -2547,17 +2579,17 @@ const ot = (
|
|
|
2547
2579
|
*/
|
|
2548
2580
|
(function(e) {
|
|
2549
2581
|
if (e == null)
|
|
2550
|
-
return
|
|
2582
|
+
return Go;
|
|
2551
2583
|
if (typeof e == "string")
|
|
2552
|
-
return
|
|
2584
|
+
return jo(e);
|
|
2553
2585
|
if (typeof e == "object")
|
|
2554
|
-
return
|
|
2586
|
+
return qo(e);
|
|
2555
2587
|
if (typeof e == "function")
|
|
2556
2588
|
return qe(e);
|
|
2557
2589
|
throw new Error("Expected function, string, or array as `test`");
|
|
2558
2590
|
})
|
|
2559
2591
|
);
|
|
2560
|
-
function
|
|
2592
|
+
function qo(e) {
|
|
2561
2593
|
const t = [];
|
|
2562
2594
|
let n = -1;
|
|
2563
2595
|
for (; ++n < e.length; )
|
|
@@ -2570,7 +2602,7 @@ function Ho(e) {
|
|
|
2570
2602
|
return !1;
|
|
2571
2603
|
}
|
|
2572
2604
|
}
|
|
2573
|
-
function
|
|
2605
|
+
function jo(e) {
|
|
2574
2606
|
return qe(t);
|
|
2575
2607
|
function t(n) {
|
|
2576
2608
|
return n.tagName === e;
|
|
@@ -2579,7 +2611,7 @@ function qo(e) {
|
|
|
2579
2611
|
function qe(e) {
|
|
2580
2612
|
return t;
|
|
2581
2613
|
function t(n, o, r) {
|
|
2582
|
-
return !!(
|
|
2614
|
+
return !!(Vo(n) && e.call(
|
|
2583
2615
|
this,
|
|
2584
2616
|
n,
|
|
2585
2617
|
typeof o == "number" ? o : void 0,
|
|
@@ -2587,13 +2619,13 @@ function qe(e) {
|
|
|
2587
2619
|
));
|
|
2588
2620
|
}
|
|
2589
2621
|
}
|
|
2590
|
-
function
|
|
2622
|
+
function Go(e) {
|
|
2591
2623
|
return !!(e && typeof e == "object" && "type" in e && e.type === "element" && "tagName" in e && typeof e.tagName == "string");
|
|
2592
2624
|
}
|
|
2593
|
-
function
|
|
2625
|
+
function Vo(e) {
|
|
2594
2626
|
return e !== null && typeof e == "object" && "type" in e && "tagName" in e;
|
|
2595
2627
|
}
|
|
2596
|
-
const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(
|
|
2628
|
+
const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(er), Wo = V("p"), lt = V("tr"), Yo = V([
|
|
2597
2629
|
// List from: <https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements>
|
|
2598
2630
|
"datalist",
|
|
2599
2631
|
"head",
|
|
@@ -2607,9 +2639,9 @@ const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(Qo), Vo = V("p"), lt = V(
|
|
|
2607
2639
|
"template",
|
|
2608
2640
|
"title",
|
|
2609
2641
|
// Hidden attribute.
|
|
2610
|
-
|
|
2642
|
+
Qo,
|
|
2611
2643
|
// From: <https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3>
|
|
2612
|
-
|
|
2644
|
+
tr
|
|
2613
2645
|
]), Vt = V([
|
|
2614
2646
|
"address",
|
|
2615
2647
|
// Flow content
|
|
@@ -2692,7 +2724,7 @@ const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(Qo), Vo = V("p"), lt = V(
|
|
|
2692
2724
|
"xmp"
|
|
2693
2725
|
// Flow content (legacy)
|
|
2694
2726
|
]);
|
|
2695
|
-
function
|
|
2727
|
+
function Xo(e, t) {
|
|
2696
2728
|
const n = t || {}, o = "children" in e ? e.children : [], r = Vt(e), a = Xt(e, {
|
|
2697
2729
|
whitespace: n.whitespace || "normal"
|
|
2698
2730
|
}), l = [];
|
|
@@ -2726,17 +2758,17 @@ function Yo(e, t) {
|
|
|
2726
2758
|
return s.join("");
|
|
2727
2759
|
}
|
|
2728
2760
|
function Wt(e, t, n) {
|
|
2729
|
-
return e.type === "element" ?
|
|
2761
|
+
return e.type === "element" ? Ko(e, t, n) : e.type === "text" ? n.whitespace === "normal" ? Yt(e, n) : Zo(e) : [];
|
|
2730
2762
|
}
|
|
2731
|
-
function
|
|
2763
|
+
function Ko(e, t, n) {
|
|
2732
2764
|
const o = Xt(e, n), r = e.children || [];
|
|
2733
2765
|
let a = -1, l = [];
|
|
2734
|
-
if (
|
|
2766
|
+
if (Yo(e))
|
|
2735
2767
|
return l;
|
|
2736
2768
|
let c, s;
|
|
2737
2769
|
for (Oe(e) || lt(e) && // @ts-expect-error: something up with types of parents.
|
|
2738
2770
|
ot(t, e, lt) ? s = `
|
|
2739
|
-
` :
|
|
2771
|
+
` : Wo(e) ? (c = 2, s = 2) : Vt(e) && (c = 1, s = 1); ++a < r.length; )
|
|
2740
2772
|
l = l.concat(
|
|
2741
2773
|
Wt(r[a], e, {
|
|
2742
2774
|
whitespace: o,
|
|
@@ -2756,7 +2788,7 @@ function Yt(e, t) {
|
|
|
2756
2788
|
o.push(
|
|
2757
2789
|
// Any sequence of collapsible spaces and tabs immediately preceding or
|
|
2758
2790
|
// following a segment break is removed.
|
|
2759
|
-
|
|
2791
|
+
Jo(
|
|
2760
2792
|
// […] ignoring bidi formatting characters (characters with the
|
|
2761
2793
|
// Bidi_Control property [UAX9]: ALM, LTR, RTL, LRE-RLO, LRI-PDI) as if
|
|
2762
2794
|
// they were not there.
|
|
@@ -2771,10 +2803,10 @@ function Yt(e, t) {
|
|
|
2771
2803
|
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);
|
|
2772
2804
|
return r;
|
|
2773
2805
|
}
|
|
2774
|
-
function
|
|
2806
|
+
function Zo(e) {
|
|
2775
2807
|
return [String(e.value)];
|
|
2776
2808
|
}
|
|
2777
|
-
function
|
|
2809
|
+
function Jo(e, t, n) {
|
|
2778
2810
|
const o = [];
|
|
2779
2811
|
let r = 0, a;
|
|
2780
2812
|
for (; r < e.length; ) {
|
|
@@ -2805,17 +2837,17 @@ function Xt(e, t) {
|
|
|
2805
2837
|
}
|
|
2806
2838
|
return t.whitespace;
|
|
2807
2839
|
}
|
|
2808
|
-
function
|
|
2840
|
+
function Qo(e) {
|
|
2809
2841
|
return !!(e.properties || {}).hidden;
|
|
2810
2842
|
}
|
|
2811
|
-
function
|
|
2843
|
+
function er(e) {
|
|
2812
2844
|
return e.tagName === "td" || e.tagName === "th";
|
|
2813
2845
|
}
|
|
2814
|
-
function
|
|
2846
|
+
function tr(e) {
|
|
2815
2847
|
return e.tagName === "dialog" && !(e.properties || {}).open;
|
|
2816
2848
|
}
|
|
2817
|
-
const Kt = [],
|
|
2818
|
-
function
|
|
2849
|
+
const Kt = [], nr = !0, st = !1, Zt = "skip";
|
|
2850
|
+
function or(e, t, n, o) {
|
|
2819
2851
|
let r;
|
|
2820
2852
|
r = t;
|
|
2821
2853
|
const a = He(r), l = 1;
|
|
@@ -2840,16 +2872,16 @@ function nr(e, t, n, o) {
|
|
|
2840
2872
|
return b;
|
|
2841
2873
|
function b() {
|
|
2842
2874
|
let m = Kt, y, d, v;
|
|
2843
|
-
if (a(s, p, h[h.length - 1] || void 0) && (m =
|
|
2875
|
+
if (a(s, p, h[h.length - 1] || void 0) && (m = rr(n(s, h)), m[0] === st))
|
|
2844
2876
|
return m;
|
|
2845
2877
|
if ("children" in s && s.children) {
|
|
2846
|
-
const
|
|
2878
|
+
const _ = (
|
|
2847
2879
|
/** @type {UnistParent} */
|
|
2848
2880
|
s
|
|
2849
2881
|
);
|
|
2850
|
-
if (
|
|
2851
|
-
for (d = -1 + l, v = h.concat(
|
|
2852
|
-
const g =
|
|
2882
|
+
if (_.children && m[0] !== Zt)
|
|
2883
|
+
for (d = -1 + l, v = h.concat(_); d > -1 && d < _.children.length; ) {
|
|
2884
|
+
const g = _.children[d];
|
|
2853
2885
|
if (y = c(g, d, v)(), y[0] === st)
|
|
2854
2886
|
return y;
|
|
2855
2887
|
d = typeof y[1] == "number" ? y[1] : d + l;
|
|
@@ -2859,21 +2891,21 @@ function nr(e, t, n, o) {
|
|
|
2859
2891
|
}
|
|
2860
2892
|
}
|
|
2861
2893
|
}
|
|
2862
|
-
function
|
|
2863
|
-
return Array.isArray(e) ? e : typeof e == "number" ? [
|
|
2894
|
+
function rr(e) {
|
|
2895
|
+
return Array.isArray(e) ? e : typeof e == "number" ? [nr, e] : e == null ? Kt : [e];
|
|
2864
2896
|
}
|
|
2865
|
-
const
|
|
2866
|
-
function
|
|
2867
|
-
const t = e ||
|
|
2897
|
+
const ar = {}, ir = [];
|
|
2898
|
+
function lr(e) {
|
|
2899
|
+
const t = e || ar;
|
|
2868
2900
|
return function(n, o) {
|
|
2869
|
-
|
|
2870
|
-
const l = Array.isArray(r.properties.className) ? r.properties.className :
|
|
2901
|
+
or(n, "element", function(r, a) {
|
|
2902
|
+
const l = Array.isArray(r.properties.className) ? r.properties.className : ir, c = l.includes("language-math"), s = l.includes("math-display"), p = l.includes("math-inline");
|
|
2871
2903
|
let h = s;
|
|
2872
2904
|
if (!c && !s && !p)
|
|
2873
2905
|
return;
|
|
2874
2906
|
let f = a[a.length - 1], b = r;
|
|
2875
2907
|
if (r.tagName === "code" && c && f && f.type === "element" && f.tagName === "pre" && (b = f, f = a[a.length - 2], h = !0), !f) return;
|
|
2876
|
-
const m =
|
|
2908
|
+
const m = Xo(b, { whitespace: "pre" });
|
|
2877
2909
|
let y;
|
|
2878
2910
|
try {
|
|
2879
2911
|
y = Ve.renderToString(m, {
|
|
@@ -2882,13 +2914,13 @@ function ir(e) {
|
|
|
2882
2914
|
throwOnError: !0
|
|
2883
2915
|
});
|
|
2884
2916
|
} catch (v) {
|
|
2885
|
-
const
|
|
2917
|
+
const _ = (
|
|
2886
2918
|
/** @type {Error} */
|
|
2887
2919
|
v
|
|
2888
|
-
), g =
|
|
2920
|
+
), g = _.name.toLowerCase();
|
|
2889
2921
|
o.message("Could not render math with KaTeX", {
|
|
2890
2922
|
ancestors: [...a, r],
|
|
2891
|
-
cause:
|
|
2923
|
+
cause: _,
|
|
2892
2924
|
place: r.position,
|
|
2893
2925
|
ruleId: g,
|
|
2894
2926
|
source: "rehype-katex"
|
|
@@ -2916,20 +2948,20 @@ function ir(e) {
|
|
|
2916
2948
|
}
|
|
2917
2949
|
}
|
|
2918
2950
|
typeof y == "string" && (y = /** @type {Array<ElementContent>} */
|
|
2919
|
-
|
|
2951
|
+
Po(y).children);
|
|
2920
2952
|
const d = f.children.indexOf(b);
|
|
2921
2953
|
return f.children.splice(d, 1, ...y), Zt;
|
|
2922
2954
|
});
|
|
2923
2955
|
};
|
|
2924
2956
|
}
|
|
2925
|
-
function
|
|
2957
|
+
function sr(e, t) {
|
|
2926
2958
|
const n = String(e);
|
|
2927
2959
|
let o = n.indexOf(t), r = o, a = 0, l = 0;
|
|
2928
2960
|
for (; o !== -1; )
|
|
2929
2961
|
o === r ? ++a > l && (l = a) : a = 1, r = o + t.length, o = n.indexOf(t, r);
|
|
2930
2962
|
return l;
|
|
2931
2963
|
}
|
|
2932
|
-
function
|
|
2964
|
+
function cr() {
|
|
2933
2965
|
return {
|
|
2934
2966
|
enter: {
|
|
2935
2967
|
mathFlow: e,
|
|
@@ -3005,7 +3037,7 @@ function sr() {
|
|
|
3005
3037
|
this.config.enter.data.call(this, s), this.config.exit.data.call(this, s);
|
|
3006
3038
|
}
|
|
3007
3039
|
}
|
|
3008
|
-
function
|
|
3040
|
+
function ur(e) {
|
|
3009
3041
|
let t = (e || {}).singleDollarTextMath;
|
|
3010
3042
|
return t == null && (t = !0), o.peek = r, {
|
|
3011
3043
|
unsafe: [
|
|
@@ -3023,7 +3055,7 @@ function cr(e) {
|
|
|
3023
3055
|
handlers: { math: n, inlineMath: o }
|
|
3024
3056
|
};
|
|
3025
3057
|
function n(a, l, c, s) {
|
|
3026
|
-
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(
|
|
3058
|
+
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(sr(p, "$") + 1, 2)), b = c.enter("mathFlow");
|
|
3027
3059
|
let m = h.move(f);
|
|
3028
3060
|
if (a.meta) {
|
|
3029
3061
|
const y = c.enter("mathFlowMeta");
|
|
@@ -3084,15 +3116,15 @@ function ce(e, t, n, o) {
|
|
|
3084
3116
|
return ct(s) && a++ < r ? (e.consume(s), c) : (e.exit(n), t(s));
|
|
3085
3117
|
}
|
|
3086
3118
|
}
|
|
3087
|
-
const
|
|
3088
|
-
tokenize:
|
|
3119
|
+
const dr = {
|
|
3120
|
+
tokenize: pr,
|
|
3089
3121
|
concrete: !0,
|
|
3090
3122
|
name: "mathFlow"
|
|
3091
3123
|
}, ut = {
|
|
3092
|
-
tokenize:
|
|
3124
|
+
tokenize: hr,
|
|
3093
3125
|
partial: !0
|
|
3094
3126
|
};
|
|
3095
|
-
function
|
|
3127
|
+
function pr(e, t, n) {
|
|
3096
3128
|
const o = this, r = o.events[o.events.length - 1], a = r && r[1].type === "linePrefix" ? r[2].sliceSerialize(r[1], !0).length : 0;
|
|
3097
3129
|
let l = 0;
|
|
3098
3130
|
return c;
|
|
@@ -3115,7 +3147,7 @@ function dr(e, t, n) {
|
|
|
3115
3147
|
}
|
|
3116
3148
|
function b(g) {
|
|
3117
3149
|
return e.attempt({
|
|
3118
|
-
tokenize:
|
|
3150
|
+
tokenize: _,
|
|
3119
3151
|
partial: !0
|
|
3120
3152
|
}, v, m)(g);
|
|
3121
3153
|
}
|
|
@@ -3131,10 +3163,10 @@ function dr(e, t, n) {
|
|
|
3131
3163
|
function v(g) {
|
|
3132
3164
|
return e.exit("mathFlow"), t(g);
|
|
3133
3165
|
}
|
|
3134
|
-
function
|
|
3166
|
+
function _(g, R, E) {
|
|
3135
3167
|
let I = 0;
|
|
3136
|
-
return ce(g,
|
|
3137
|
-
function
|
|
3168
|
+
return ce(g, $, "linePrefix", o.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
|
|
3169
|
+
function $(O) {
|
|
3138
3170
|
return g.enter("mathFlowFence"), g.enter("mathFlowFenceSequence"), z(O);
|
|
3139
3171
|
}
|
|
3140
3172
|
function z(O) {
|
|
@@ -3145,7 +3177,7 @@ function dr(e, t, n) {
|
|
|
3145
3177
|
}
|
|
3146
3178
|
}
|
|
3147
3179
|
}
|
|
3148
|
-
function
|
|
3180
|
+
function hr(e, t, n) {
|
|
3149
3181
|
const o = this;
|
|
3150
3182
|
return r;
|
|
3151
3183
|
function r(l) {
|
|
@@ -3155,12 +3187,12 @@ function pr(e, t, n) {
|
|
|
3155
3187
|
return o.parser.lazy[o.now().line] ? n(l) : t(l);
|
|
3156
3188
|
}
|
|
3157
3189
|
}
|
|
3158
|
-
function
|
|
3190
|
+
function gr(e) {
|
|
3159
3191
|
let n = (e || {}).singleDollarTextMath;
|
|
3160
3192
|
return n == null && (n = !0), {
|
|
3161
3193
|
tokenize: o,
|
|
3162
|
-
resolve:
|
|
3163
|
-
previous:
|
|
3194
|
+
resolve: mr,
|
|
3195
|
+
previous: fr,
|
|
3164
3196
|
name: "mathText"
|
|
3165
3197
|
};
|
|
3166
3198
|
function o(r, a, l) {
|
|
@@ -3183,7 +3215,7 @@ function hr(e) {
|
|
|
3183
3215
|
}
|
|
3184
3216
|
}
|
|
3185
3217
|
}
|
|
3186
|
-
function
|
|
3218
|
+
function mr(e) {
|
|
3187
3219
|
let t = e.length - 4, n = 3, o, r;
|
|
3188
3220
|
if ((e[n][1].type === "lineEnding" || e[n][1].type === "space") && (e[t][1].type === "lineEnding" || e[t][1].type === "space")) {
|
|
3189
3221
|
for (o = n; ++o < t; )
|
|
@@ -3196,35 +3228,35 @@ function gr(e) {
|
|
|
3196
3228
|
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);
|
|
3197
3229
|
return e;
|
|
3198
3230
|
}
|
|
3199
|
-
function
|
|
3231
|
+
function fr(e) {
|
|
3200
3232
|
return e !== 36 || this.events[this.events.length - 1][1].type === "characterEscape";
|
|
3201
3233
|
}
|
|
3202
|
-
function
|
|
3234
|
+
function br(e) {
|
|
3203
3235
|
return {
|
|
3204
3236
|
flow: {
|
|
3205
|
-
36:
|
|
3237
|
+
36: dr
|
|
3206
3238
|
},
|
|
3207
3239
|
text: {
|
|
3208
|
-
36:
|
|
3240
|
+
36: gr(e)
|
|
3209
3241
|
}
|
|
3210
3242
|
};
|
|
3211
3243
|
}
|
|
3212
|
-
const
|
|
3213
|
-
function
|
|
3244
|
+
const yr = {};
|
|
3245
|
+
function kr(e) {
|
|
3214
3246
|
const t = (
|
|
3215
3247
|
/** @type {Processor} */
|
|
3216
3248
|
this
|
|
3217
|
-
), n = e ||
|
|
3218
|
-
r.push(
|
|
3249
|
+
), n = e || yr, o = t.data(), r = o.micromarkExtensions || (o.micromarkExtensions = []), a = o.fromMarkdownExtensions || (o.fromMarkdownExtensions = []), l = o.toMarkdownExtensions || (o.toMarkdownExtensions = []);
|
|
3250
|
+
r.push(br(n)), a.push(cr()), l.push(ur(n));
|
|
3219
3251
|
}
|
|
3220
|
-
function
|
|
3252
|
+
function vr(e = {}) {
|
|
3221
3253
|
var t, n;
|
|
3222
|
-
let o = [
|
|
3254
|
+
let o = [kr, { singleDollarTextMath: (t = e.singleDollarTextMath) != null ? t : !1 }], r = [lr, { errorColor: (n = e.errorColor) != null ? n : "var(--color-muted-foreground)" }];
|
|
3223
3255
|
return { name: "katex", type: "math", remarkPlugin: o, rehypePlugin: r, getStyles() {
|
|
3224
3256
|
return "katex/dist/katex.min.css";
|
|
3225
3257
|
} };
|
|
3226
3258
|
}
|
|
3227
|
-
var dt =
|
|
3259
|
+
var dt = vr();
|
|
3228
3260
|
const je = de(
|
|
3229
3261
|
({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
3230
3262
|
On,
|
|
@@ -3238,7 +3270,7 @@ const je = de(
|
|
|
3238
3270
|
(e, t) => e.children === t.children
|
|
3239
3271
|
);
|
|
3240
3272
|
je.displayName = "Response";
|
|
3241
|
-
function
|
|
3273
|
+
function wr({
|
|
3242
3274
|
part: e,
|
|
3243
3275
|
message: t,
|
|
3244
3276
|
status: n,
|
|
@@ -3252,10 +3284,10 @@ function vr({
|
|
|
3252
3284
|
feedbackEnabled: h,
|
|
3253
3285
|
retryEnabled: f
|
|
3254
3286
|
}) {
|
|
3255
|
-
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins: y, rehypePlugins: d } = W(), v = ge(e.text),
|
|
3287
|
+
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins: y, rehypePlugins: d } = W(), v = ge(e.text), _ = !o && r && (n === "streaming" || n === "submitted"), g = l || (() => {
|
|
3256
3288
|
});
|
|
3257
3289
|
return /* @__PURE__ */ w("div", { className: "group py-2 first:pt-4 animate-in-bubble", children: [
|
|
3258
|
-
/* @__PURE__ */ i(
|
|
3290
|
+
/* @__PURE__ */ i(Ft, { from: t.role, children: /* @__PURE__ */ i(Dt, { dir: v, children: /* @__PURE__ */ i(
|
|
3259
3291
|
je,
|
|
3260
3292
|
{
|
|
3261
3293
|
components: m,
|
|
@@ -3264,7 +3296,7 @@ function vr({
|
|
|
3264
3296
|
children: e.text
|
|
3265
3297
|
}
|
|
3266
3298
|
) }) }),
|
|
3267
|
-
a && !
|
|
3299
|
+
a && !_ && /* @__PURE__ */ w(uo, { className: k("mt-1.5 ml-0.5", t.role === "user" && "justify-end"), children: [
|
|
3268
3300
|
t.role === "assistant" && /* @__PURE__ */ w(J, { children: [
|
|
3269
3301
|
r && f && /* @__PURE__ */ i(
|
|
3270
3302
|
se,
|
|
@@ -3312,12 +3344,12 @@ function vr({
|
|
|
3312
3344
|
] })
|
|
3313
3345
|
] });
|
|
3314
3346
|
}
|
|
3315
|
-
const Jt = pe(null),
|
|
3316
|
-
const e =
|
|
3347
|
+
const Jt = pe(null), _r = () => {
|
|
3348
|
+
const e = Fe(Jt);
|
|
3317
3349
|
if (!e)
|
|
3318
3350
|
throw new Error("Reasoning components must be used within Reasoning");
|
|
3319
3351
|
return e;
|
|
3320
|
-
}, xr = 1e3,
|
|
3352
|
+
}, xr = 1e3, Sr = 1e3, Qt = de(
|
|
3321
3353
|
({
|
|
3322
3354
|
className: e,
|
|
3323
3355
|
isStreaming: t = !1,
|
|
@@ -3338,19 +3370,19 @@ const Jt = pe(null), wr = () => {
|
|
|
3338
3370
|
defaultProp: 0
|
|
3339
3371
|
}), [b, m] = B(!1), [y, d] = B(null);
|
|
3340
3372
|
Q(() => {
|
|
3341
|
-
t ? y === null && d(Date.now()) : y !== null && (f(Math.ceil((Date.now() - y) /
|
|
3373
|
+
t ? y === null && d(Date.now()) : y !== null && (f(Math.ceil((Date.now() - y) / Sr)), d(null));
|
|
3342
3374
|
}, [t, y, f]), Q(() => {
|
|
3343
3375
|
if (o && !t && s && !b) {
|
|
3344
|
-
const
|
|
3376
|
+
const _ = setTimeout(() => {
|
|
3345
3377
|
p(!1), m(!0);
|
|
3346
3378
|
}, xr);
|
|
3347
3379
|
return () => {
|
|
3348
|
-
clearTimeout(
|
|
3380
|
+
clearTimeout(_);
|
|
3349
3381
|
};
|
|
3350
3382
|
}
|
|
3351
3383
|
}, [t, s, o, p, b]);
|
|
3352
|
-
const v = (
|
|
3353
|
-
p(
|
|
3384
|
+
const v = (_) => {
|
|
3385
|
+
p(_);
|
|
3354
3386
|
};
|
|
3355
3387
|
return /* @__PURE__ */ i(Jt.Provider, { value: { isStreaming: t, isOpen: s, setIsOpen: p, duration: h }, children: /* @__PURE__ */ i(
|
|
3356
3388
|
ze,
|
|
@@ -3364,8 +3396,8 @@ const Jt = pe(null), wr = () => {
|
|
|
3364
3396
|
) });
|
|
3365
3397
|
}
|
|
3366
3398
|
), en = de(({ className: e, children: t, ...n }) => {
|
|
3367
|
-
const { isStreaming: o, isOpen: r, duration: a } =
|
|
3368
|
-
return /* @__PURE__ */ i(
|
|
3399
|
+
const { isStreaming: o, isOpen: r, duration: a } = _r();
|
|
3400
|
+
return /* @__PURE__ */ i(Ue, { className: k("flex items-center gap-2 text-muted-foreground text-sm", e), ...n, children: t ?? /* @__PURE__ */ w(J, { children: [
|
|
3369
3401
|
/* @__PURE__ */ i(wn, { className: "size-4" }),
|
|
3370
3402
|
o || a === 0 ? /* @__PURE__ */ i("p", { children: "Thinking..." }) : /* @__PURE__ */ w("p", { children: [
|
|
3371
3403
|
"Thought for ",
|
|
@@ -3381,7 +3413,7 @@ const Jt = pe(null), wr = () => {
|
|
|
3381
3413
|
)
|
|
3382
3414
|
] }) });
|
|
3383
3415
|
}), tn = de(({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
3384
|
-
|
|
3416
|
+
$e,
|
|
3385
3417
|
{
|
|
3386
3418
|
className: k(
|
|
3387
3419
|
"mt-4 text-base",
|
|
@@ -3395,7 +3427,7 @@ const Jt = pe(null), wr = () => {
|
|
|
3395
3427
|
Qt.displayName = "Reasoning";
|
|
3396
3428
|
en.displayName = "ReasoningTrigger";
|
|
3397
3429
|
tn.displayName = "ReasoningContent";
|
|
3398
|
-
function
|
|
3430
|
+
function Er({
|
|
3399
3431
|
part: e,
|
|
3400
3432
|
status: t,
|
|
3401
3433
|
index: n,
|
|
@@ -3415,7 +3447,7 @@ function Sr({
|
|
|
3415
3447
|
}
|
|
3416
3448
|
);
|
|
3417
3449
|
}
|
|
3418
|
-
const
|
|
3450
|
+
const Nr = Pe(
|
|
3419
3451
|
"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",
|
|
3420
3452
|
{
|
|
3421
3453
|
variants: {
|
|
@@ -3431,27 +3463,27 @@ const Er = Pe(
|
|
|
3431
3463
|
}
|
|
3432
3464
|
}
|
|
3433
3465
|
);
|
|
3434
|
-
function
|
|
3466
|
+
function Tr({
|
|
3435
3467
|
className: e,
|
|
3436
3468
|
variant: t,
|
|
3437
3469
|
asChild: n = !1,
|
|
3438
3470
|
...o
|
|
3439
3471
|
}) {
|
|
3440
|
-
return /* @__PURE__ */ i(n ? Ct : "span", { "data-slot": "badge", className: k(
|
|
3472
|
+
return /* @__PURE__ */ i(n ? Ct : "span", { "data-slot": "badge", className: k(Nr({ variant: t }), e), ...o });
|
|
3441
3473
|
}
|
|
3442
|
-
function
|
|
3474
|
+
function Cr({ ...e }) {
|
|
3443
3475
|
return /* @__PURE__ */ i(H.Root, { "data-slot": "dialog", ...e });
|
|
3444
3476
|
}
|
|
3445
|
-
function
|
|
3477
|
+
function Ar({ ...e }) {
|
|
3446
3478
|
return /* @__PURE__ */ i(H.Trigger, { "data-slot": "dialog-trigger", ...e });
|
|
3447
3479
|
}
|
|
3448
|
-
function
|
|
3480
|
+
function Ir({ ...e }) {
|
|
3449
3481
|
return /* @__PURE__ */ i(H.Portal, { "data-slot": "dialog-portal", ...e });
|
|
3450
3482
|
}
|
|
3451
|
-
function
|
|
3483
|
+
function wi({ ...e }) {
|
|
3452
3484
|
return /* @__PURE__ */ i(H.Close, { "data-slot": "dialog-close", ...e });
|
|
3453
3485
|
}
|
|
3454
|
-
function
|
|
3486
|
+
function Rr({ className: e, ...t }) {
|
|
3455
3487
|
return /* @__PURE__ */ i(
|
|
3456
3488
|
H.Overlay,
|
|
3457
3489
|
{
|
|
@@ -3464,14 +3496,14 @@ function Ir({ className: e, ...t }) {
|
|
|
3464
3496
|
}
|
|
3465
3497
|
);
|
|
3466
3498
|
}
|
|
3467
|
-
function
|
|
3499
|
+
function Or({
|
|
3468
3500
|
className: e,
|
|
3469
3501
|
children: t,
|
|
3470
3502
|
showCloseButton: n = !0,
|
|
3471
3503
|
...o
|
|
3472
3504
|
}) {
|
|
3473
|
-
return /* @__PURE__ */ w(
|
|
3474
|
-
/* @__PURE__ */ i(
|
|
3505
|
+
return /* @__PURE__ */ w(Ir, { "data-slot": "dialog-portal", children: [
|
|
3506
|
+
/* @__PURE__ */ i(Rr, {}),
|
|
3475
3507
|
/* @__PURE__ */ w(
|
|
3476
3508
|
H.Content,
|
|
3477
3509
|
{
|
|
@@ -3499,7 +3531,7 @@ function Rr({
|
|
|
3499
3531
|
)
|
|
3500
3532
|
] });
|
|
3501
3533
|
}
|
|
3502
|
-
function
|
|
3534
|
+
function Lr({ className: e, ...t }) {
|
|
3503
3535
|
return /* @__PURE__ */ i(
|
|
3504
3536
|
"div",
|
|
3505
3537
|
{
|
|
@@ -3509,7 +3541,7 @@ function Or({ className: e, ...t }) {
|
|
|
3509
3541
|
}
|
|
3510
3542
|
);
|
|
3511
3543
|
}
|
|
3512
|
-
function
|
|
3544
|
+
function _i({ className: e, ...t }) {
|
|
3513
3545
|
return /* @__PURE__ */ i(
|
|
3514
3546
|
"div",
|
|
3515
3547
|
{
|
|
@@ -3539,7 +3571,7 @@ function xi({ className: e, ...t }) {
|
|
|
3539
3571
|
}
|
|
3540
3572
|
);
|
|
3541
3573
|
}
|
|
3542
|
-
const
|
|
3574
|
+
const Dr = {
|
|
3543
3575
|
'code[class*="language-"]': {
|
|
3544
3576
|
background: "hsl(220, 13%, 18%)",
|
|
3545
3577
|
color: "hsl(220, 14%, 71%)",
|
|
@@ -4039,7 +4071,7 @@ const Lr = {
|
|
|
4039
4071
|
".prism-previewer-easing.prism-previewer-easing line": {
|
|
4040
4072
|
stroke: "hsl(220, 14%, 71%)"
|
|
4041
4073
|
}
|
|
4042
|
-
},
|
|
4074
|
+
}, Pr = {
|
|
4043
4075
|
'code[class*="language-"]': {
|
|
4044
4076
|
background: "hsl(230, 1%, 98%)",
|
|
4045
4077
|
color: "hsl(230, 8%, 24%)",
|
|
@@ -4532,7 +4564,7 @@ function q(e) {
|
|
|
4532
4564
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
4533
4565
|
}
|
|
4534
4566
|
var ve, pt;
|
|
4535
|
-
function
|
|
4567
|
+
function Mr() {
|
|
4536
4568
|
if (pt) return ve;
|
|
4537
4569
|
pt = 1, ve = e, e.displayName = "python", e.aliases = ["py"];
|
|
4538
4570
|
function e(t) {
|
|
@@ -4600,8 +4632,8 @@ function Pr() {
|
|
|
4600
4632
|
}
|
|
4601
4633
|
return ve;
|
|
4602
4634
|
}
|
|
4603
|
-
var
|
|
4604
|
-
const
|
|
4635
|
+
var zr = Mr();
|
|
4636
|
+
const Ur = /* @__PURE__ */ q(zr);
|
|
4605
4637
|
var we, ht;
|
|
4606
4638
|
function $r() {
|
|
4607
4639
|
if (ht) return we;
|
|
@@ -4732,12 +4764,12 @@ function $r() {
|
|
|
4732
4764
|
}
|
|
4733
4765
|
return we;
|
|
4734
4766
|
}
|
|
4735
|
-
var
|
|
4736
|
-
const
|
|
4737
|
-
var
|
|
4738
|
-
function
|
|
4739
|
-
if (gt) return
|
|
4740
|
-
gt = 1,
|
|
4767
|
+
var Br = $r();
|
|
4768
|
+
const Hr = /* @__PURE__ */ q(Br);
|
|
4769
|
+
var _e, gt;
|
|
4770
|
+
function qr() {
|
|
4771
|
+
if (gt) return _e;
|
|
4772
|
+
gt = 1, _e = e, e.displayName = "typescript", e.aliases = ["ts"];
|
|
4741
4773
|
function e(t) {
|
|
4742
4774
|
(function(n) {
|
|
4743
4775
|
n.languages.typescript = n.languages.extend("javascript", {
|
|
@@ -4785,14 +4817,14 @@ function Hr() {
|
|
|
4785
4817
|
}), n.languages.ts = n.languages.typescript;
|
|
4786
4818
|
})(t);
|
|
4787
4819
|
}
|
|
4788
|
-
return
|
|
4820
|
+
return _e;
|
|
4789
4821
|
}
|
|
4790
|
-
var
|
|
4791
|
-
const
|
|
4792
|
-
var
|
|
4793
|
-
function
|
|
4794
|
-
if (mt) return
|
|
4795
|
-
mt = 1,
|
|
4822
|
+
var jr = qr();
|
|
4823
|
+
const Gr = /* @__PURE__ */ q(jr);
|
|
4824
|
+
var xe, mt;
|
|
4825
|
+
function Vr() {
|
|
4826
|
+
if (mt) return xe;
|
|
4827
|
+
mt = 1, xe = e, e.displayName = "json", e.aliases = ["webmanifest"];
|
|
4796
4828
|
function e(t) {
|
|
4797
4829
|
t.languages.json = {
|
|
4798
4830
|
property: {
|
|
@@ -4819,12 +4851,12 @@ function Gr() {
|
|
|
4819
4851
|
}
|
|
4820
4852
|
}, t.languages.webmanifest = t.languages.json;
|
|
4821
4853
|
}
|
|
4822
|
-
return
|
|
4854
|
+
return xe;
|
|
4823
4855
|
}
|
|
4824
|
-
var
|
|
4825
|
-
const
|
|
4856
|
+
var Wr = Vr();
|
|
4857
|
+
const Yr = /* @__PURE__ */ q(Wr);
|
|
4826
4858
|
var Se, ft;
|
|
4827
|
-
function
|
|
4859
|
+
function Xr() {
|
|
4828
4860
|
if (ft) return Se;
|
|
4829
4861
|
ft = 1, Se = e, e.displayName = "bash", e.aliases = ["shell"];
|
|
4830
4862
|
function e(t) {
|
|
@@ -5043,10 +5075,10 @@ function Yr() {
|
|
|
5043
5075
|
}
|
|
5044
5076
|
return Se;
|
|
5045
5077
|
}
|
|
5046
|
-
var
|
|
5047
|
-
const
|
|
5078
|
+
var Kr = Xr();
|
|
5079
|
+
const Zr = /* @__PURE__ */ q(Kr);
|
|
5048
5080
|
var Ee, bt;
|
|
5049
|
-
function
|
|
5081
|
+
function Jr() {
|
|
5050
5082
|
if (bt) return Ee;
|
|
5051
5083
|
bt = 1, Ee = e, e.displayName = "sql", e.aliases = [];
|
|
5052
5084
|
function e(t) {
|
|
@@ -5086,10 +5118,10 @@ function Zr() {
|
|
|
5086
5118
|
}
|
|
5087
5119
|
return Ee;
|
|
5088
5120
|
}
|
|
5089
|
-
var
|
|
5090
|
-
const
|
|
5121
|
+
var Qr = Jr();
|
|
5122
|
+
const ea = /* @__PURE__ */ q(Qr);
|
|
5091
5123
|
var Ne, yt;
|
|
5092
|
-
function
|
|
5124
|
+
function ta() {
|
|
5093
5125
|
if (yt) return Ne;
|
|
5094
5126
|
yt = 1, Ne = e, e.displayName = "yaml", e.aliases = ["yml"];
|
|
5095
5127
|
function e(t) {
|
|
@@ -5177,10 +5209,10 @@ function ea() {
|
|
|
5177
5209
|
}
|
|
5178
5210
|
return Ne;
|
|
5179
5211
|
}
|
|
5180
|
-
var
|
|
5181
|
-
const
|
|
5212
|
+
var na = ta();
|
|
5213
|
+
const oa = /* @__PURE__ */ q(na);
|
|
5182
5214
|
var Te, kt;
|
|
5183
|
-
function
|
|
5215
|
+
function ra() {
|
|
5184
5216
|
if (kt) return Te;
|
|
5185
5217
|
kt = 1, Te = e, e.displayName = "markdown", e.aliases = ["md"];
|
|
5186
5218
|
function e(t) {
|
|
@@ -5442,12 +5474,12 @@ function oa() {
|
|
|
5442
5474
|
function m(y) {
|
|
5443
5475
|
if (!(!y || typeof y == "string"))
|
|
5444
5476
|
for (var d = 0, v = y.length; d < v; d++) {
|
|
5445
|
-
var
|
|
5446
|
-
if (
|
|
5447
|
-
m(
|
|
5477
|
+
var _ = y[d];
|
|
5478
|
+
if (_.type !== "code") {
|
|
5479
|
+
m(_.content);
|
|
5448
5480
|
continue;
|
|
5449
5481
|
}
|
|
5450
|
-
var g =
|
|
5482
|
+
var g = _.content[1], R = _.content[3];
|
|
5451
5483
|
if (g && R && g.type === "code-language" && R.type === "code-block" && typeof g.content == "string") {
|
|
5452
5484
|
var E = g.content.replace(/\b#/g, "sharp").replace(/\b\+\+/g, "pp");
|
|
5453
5485
|
E = (/[a-z][\w-]*/i.exec(E) || [""])[0].toLowerCase();
|
|
@@ -5460,9 +5492,9 @@ function oa() {
|
|
|
5460
5492
|
}), n.hooks.add("wrap", function(b) {
|
|
5461
5493
|
if (b.type === "code-block") {
|
|
5462
5494
|
for (var m = "", y = 0, d = b.classes.length; y < d; y++) {
|
|
5463
|
-
var v = b.classes[y],
|
|
5464
|
-
if (
|
|
5465
|
-
m =
|
|
5495
|
+
var v = b.classes[y], _ = /language-(.+)/.exec(v);
|
|
5496
|
+
if (_) {
|
|
5497
|
+
m = _[1];
|
|
5466
5498
|
break;
|
|
5467
5499
|
}
|
|
5468
5500
|
}
|
|
@@ -5499,8 +5531,8 @@ function oa() {
|
|
|
5499
5531
|
var v;
|
|
5500
5532
|
return d[1] === "x" ? v = parseInt(d.slice(2), 16) : v = Number(d.slice(1)), h(v);
|
|
5501
5533
|
} else {
|
|
5502
|
-
var
|
|
5503
|
-
return
|
|
5534
|
+
var _ = p[d];
|
|
5535
|
+
return _ || y;
|
|
5504
5536
|
}
|
|
5505
5537
|
}), m;
|
|
5506
5538
|
}
|
|
@@ -5509,26 +5541,26 @@ function oa() {
|
|
|
5509
5541
|
}
|
|
5510
5542
|
return Te;
|
|
5511
5543
|
}
|
|
5512
|
-
var
|
|
5513
|
-
const
|
|
5514
|
-
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
|
|
5518
|
-
|
|
5519
|
-
|
|
5520
|
-
|
|
5521
|
-
|
|
5522
|
-
const
|
|
5544
|
+
var aa = ra();
|
|
5545
|
+
const ia = /* @__PURE__ */ q(aa);
|
|
5546
|
+
U.registerLanguage("python", Ur);
|
|
5547
|
+
U.registerLanguage("javascript", Hr);
|
|
5548
|
+
U.registerLanguage("typescript", Gr);
|
|
5549
|
+
U.registerLanguage("json", Yr);
|
|
5550
|
+
U.registerLanguage("bash", Zr);
|
|
5551
|
+
U.registerLanguage("sql", ea);
|
|
5552
|
+
U.registerLanguage("yaml", oa);
|
|
5553
|
+
U.registerLanguage("markdown", ia);
|
|
5554
|
+
const la = pe({
|
|
5523
5555
|
code: ""
|
|
5524
|
-
}),
|
|
5556
|
+
}), Le = ({
|
|
5525
5557
|
code: e,
|
|
5526
5558
|
language: t,
|
|
5527
5559
|
showLineNumbers: n = !1,
|
|
5528
5560
|
className: o,
|
|
5529
5561
|
children: r,
|
|
5530
5562
|
...a
|
|
5531
|
-
}) => /* @__PURE__ */ i(
|
|
5563
|
+
}) => /* @__PURE__ */ i(la.Provider, { value: { code: e }, children: /* @__PURE__ */ i(
|
|
5532
5564
|
"div",
|
|
5533
5565
|
{
|
|
5534
5566
|
className: k("relative w-full overflow-hidden rounded-md border bg-background text-foreground", o),
|
|
@@ -5536,7 +5568,7 @@ const ia = pe({
|
|
|
5536
5568
|
...a,
|
|
5537
5569
|
children: /* @__PURE__ */ w("div", { className: "relative", children: [
|
|
5538
5570
|
/* @__PURE__ */ i(
|
|
5539
|
-
|
|
5571
|
+
U,
|
|
5540
5572
|
{
|
|
5541
5573
|
className: "overflow-hidden dark:hidden",
|
|
5542
5574
|
codeTagProps: {
|
|
@@ -5556,12 +5588,12 @@ const ia = pe({
|
|
|
5556
5588
|
minWidth: "2.5rem"
|
|
5557
5589
|
},
|
|
5558
5590
|
showLineNumbers: n,
|
|
5559
|
-
style:
|
|
5591
|
+
style: Pr,
|
|
5560
5592
|
children: e
|
|
5561
5593
|
}
|
|
5562
5594
|
),
|
|
5563
5595
|
/* @__PURE__ */ i(
|
|
5564
|
-
|
|
5596
|
+
U,
|
|
5565
5597
|
{
|
|
5566
5598
|
className: "hidden overflow-hidden dark:block",
|
|
5567
5599
|
codeTagProps: {
|
|
@@ -5581,7 +5613,7 @@ const ia = pe({
|
|
|
5581
5613
|
minWidth: "2.5rem"
|
|
5582
5614
|
},
|
|
5583
5615
|
showLineNumbers: n,
|
|
5584
|
-
style:
|
|
5616
|
+
style: Dr,
|
|
5585
5617
|
children: e
|
|
5586
5618
|
}
|
|
5587
5619
|
),
|
|
@@ -5589,22 +5621,22 @@ const ia = pe({
|
|
|
5589
5621
|
] })
|
|
5590
5622
|
}
|
|
5591
5623
|
) });
|
|
5592
|
-
function
|
|
5624
|
+
function sa(e, t = "size-4") {
|
|
5593
5625
|
return {
|
|
5594
5626
|
web_search: /* @__PURE__ */ i(En, { className: t }),
|
|
5595
5627
|
web_fetch: /* @__PURE__ */ i(ue, { className: t }),
|
|
5596
5628
|
code_execution: /* @__PURE__ */ i(Sn, { className: t }),
|
|
5597
|
-
image_generation: /* @__PURE__ */ i(
|
|
5598
|
-
}[e] ?? /* @__PURE__ */ i(
|
|
5629
|
+
image_generation: /* @__PURE__ */ i(xn, { className: t })
|
|
5630
|
+
}[e] ?? /* @__PURE__ */ i(_n, { className: t });
|
|
5599
5631
|
}
|
|
5600
|
-
const
|
|
5632
|
+
const ca = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not-prose mb-4 w-full rounded-md border", e), ...t }), ua = ({ status: e }) => {
|
|
5601
5633
|
const { t } = M(["tools_ui"]), n = {
|
|
5602
5634
|
"input-streaming": t("pending"),
|
|
5603
5635
|
"input-available": t("running"),
|
|
5604
5636
|
"output-available": t("completed"),
|
|
5605
5637
|
"output-error": t("error")
|
|
5606
5638
|
};
|
|
5607
|
-
return /* @__PURE__ */ w(
|
|
5639
|
+
return /* @__PURE__ */ w(Tr, { className: "gap-1.5 rounded-full text-xs", variant: "secondary", children: [
|
|
5608
5640
|
{
|
|
5609
5641
|
"input-streaming": /* @__PURE__ */ i(Cn, { className: "size-4" }),
|
|
5610
5642
|
"input-available": /* @__PURE__ */ i(Tn, { className: "size-4 animate-pulse" }),
|
|
@@ -5613,18 +5645,18 @@ const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5613
5645
|
}[e],
|
|
5614
5646
|
n[e]
|
|
5615
5647
|
] });
|
|
5616
|
-
},
|
|
5617
|
-
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l =
|
|
5618
|
-
return /* @__PURE__ */ w(
|
|
5648
|
+
}, da = ({ className: e, type: t, state: n, toolName: o, ...r }) => {
|
|
5649
|
+
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l = sa(a, "size-4 text-muted-foreground");
|
|
5650
|
+
return /* @__PURE__ */ w(Ue, { className: k("flex w-full items-center justify-between gap-4 p-3", e), ...r, children: [
|
|
5619
5651
|
/* @__PURE__ */ w("div", { className: "flex items-center gap-2", children: [
|
|
5620
5652
|
l,
|
|
5621
5653
|
/* @__PURE__ */ i("span", { className: "font-medium text-sm", children: a }),
|
|
5622
|
-
/* @__PURE__ */ i(
|
|
5654
|
+
/* @__PURE__ */ i(ua, { status: n })
|
|
5623
5655
|
] }),
|
|
5624
5656
|
/* @__PURE__ */ i(ie, { className: "size-4 text-muted-foreground transition-transform group-data-[state=open]:rotate-180" })
|
|
5625
5657
|
] });
|
|
5626
|
-
},
|
|
5627
|
-
|
|
5658
|
+
}, pa = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
5659
|
+
$e,
|
|
5628
5660
|
{
|
|
5629
5661
|
className: k(
|
|
5630
5662
|
"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",
|
|
@@ -5640,13 +5672,13 @@ const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5640
5672
|
return e;
|
|
5641
5673
|
}
|
|
5642
5674
|
return JSON.stringify(e, null, 2);
|
|
5643
|
-
},
|
|
5675
|
+
}, ha = ({ className: e, input: t, ...n }) => {
|
|
5644
5676
|
const { t: o } = M(["tools_ui"]);
|
|
5645
5677
|
return /* @__PURE__ */ w("div", { className: k("space-y-2 overflow-hidden p-4", e), ...n, children: [
|
|
5646
5678
|
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: o("parameters") }),
|
|
5647
|
-
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(
|
|
5679
|
+
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(Le, { code: nn(t), language: "json" }) })
|
|
5648
5680
|
] });
|
|
5649
|
-
},
|
|
5681
|
+
}, ga = ({ className: e, output: t, errorText: n, ...o }) => {
|
|
5650
5682
|
const { t: r } = M(["tools_ui"]), [a, l] = B(!1);
|
|
5651
5683
|
if (!(t || n))
|
|
5652
5684
|
return null;
|
|
@@ -5658,21 +5690,21 @@ const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5658
5690
|
if (typeof t == "string")
|
|
5659
5691
|
try {
|
|
5660
5692
|
const p = JSON.parse(t);
|
|
5661
|
-
return /* @__PURE__ */ i(
|
|
5693
|
+
return /* @__PURE__ */ i(Le, { code: JSON.stringify(p, null, 2), language: "json" });
|
|
5662
5694
|
} catch {
|
|
5663
5695
|
return /* @__PURE__ */ i("div", { className: "p-4 text-sm whitespace-pre-wrap", dir: "ltr", children: t });
|
|
5664
5696
|
}
|
|
5665
|
-
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */ i(
|
|
5697
|
+
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */ i(Le, { code: JSON.stringify(t, null, 2), language: "json" }) : t;
|
|
5666
5698
|
};
|
|
5667
5699
|
return /* @__PURE__ */ w("div", { className: k("space-y-2 p-4", e), ...o, children: [
|
|
5668
5700
|
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: r(n ? "error" : "result") }),
|
|
5669
|
-
n && /* @__PURE__ */ w(
|
|
5670
|
-
/* @__PURE__ */ i(
|
|
5701
|
+
n && /* @__PURE__ */ w(Cr, { children: [
|
|
5702
|
+
/* @__PURE__ */ i(Ar, { asChild: !0, children: /* @__PURE__ */ w(ee, { variant: "destructive", size: "sm", children: [
|
|
5671
5703
|
/* @__PURE__ */ i(Tt, { className: "mr-1.5 size-4" }),
|
|
5672
5704
|
r("view_error")
|
|
5673
5705
|
] }) }),
|
|
5674
|
-
/* @__PURE__ */ w(
|
|
5675
|
-
/* @__PURE__ */ i(
|
|
5706
|
+
/* @__PURE__ */ w(Or, { className: "max-w-2xl", children: [
|
|
5707
|
+
/* @__PURE__ */ i(Lr, { children: /* @__PURE__ */ i(Fr, { className: "text-destructive", children: r("tool_error") }) }),
|
|
5676
5708
|
/* @__PURE__ */ w("div", { className: "space-y-4", children: [
|
|
5677
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: nn(n) }) }),
|
|
5678
5710
|
/* @__PURE__ */ w(ee, { variant: "outline", size: "sm", onClick: c, children: [
|
|
@@ -5685,7 +5717,7 @@ const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not
|
|
|
5685
5717
|
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() }) })
|
|
5686
5718
|
] });
|
|
5687
5719
|
};
|
|
5688
|
-
function
|
|
5720
|
+
function ma({
|
|
5689
5721
|
part: e,
|
|
5690
5722
|
message: t,
|
|
5691
5723
|
chat: n,
|
|
@@ -5711,15 +5743,15 @@ function ga({
|
|
|
5711
5743
|
const c = o[l];
|
|
5712
5744
|
return /* @__PURE__ */ i(c, { part: e, message: t, chat: n });
|
|
5713
5745
|
}
|
|
5714
|
-
return r ? /* @__PURE__ */ w(
|
|
5715
|
-
/* @__PURE__ */ i(
|
|
5716
|
-
/* @__PURE__ */ w(
|
|
5717
|
-
/* @__PURE__ */ i(
|
|
5718
|
-
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(
|
|
5746
|
+
return r ? /* @__PURE__ */ w(ca, { className: "animate-in-bubble", children: [
|
|
5747
|
+
/* @__PURE__ */ i(da, { type: e.type, state: a.state, toolName: l }),
|
|
5748
|
+
/* @__PURE__ */ w(pa, { children: [
|
|
5749
|
+
/* @__PURE__ */ i(ha, { input: a.input }),
|
|
5750
|
+
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(ga, { errorText: a.errorText, output: a.output })
|
|
5719
5751
|
] })
|
|
5720
5752
|
] }) : null;
|
|
5721
5753
|
}
|
|
5722
|
-
function
|
|
5754
|
+
function fa({
|
|
5723
5755
|
part: e,
|
|
5724
5756
|
message: t
|
|
5725
5757
|
}) {
|
|
@@ -5728,7 +5760,7 @@ function ma({
|
|
|
5728
5760
|
const s = document.createElement("a");
|
|
5729
5761
|
s.href = o.url, s.download = a, document.body.appendChild(s), s.click(), document.body.removeChild(s);
|
|
5730
5762
|
};
|
|
5731
|
-
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(
|
|
5763
|
+
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(Ft, { from: t.role, children: /* @__PURE__ */ i(Dt, { isPlain: !0, children: r ? /* @__PURE__ */ w("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: [
|
|
5732
5764
|
/* @__PURE__ */ i(
|
|
5733
5765
|
"img",
|
|
5734
5766
|
{
|
|
@@ -5775,13 +5807,13 @@ function ma({
|
|
|
5775
5807
|
] }) }) }) }) });
|
|
5776
5808
|
}
|
|
5777
5809
|
const C = {
|
|
5778
|
-
MessageList:
|
|
5779
|
-
PromptInput:
|
|
5780
|
-
WelcomeScreen:
|
|
5781
|
-
TextPart:
|
|
5782
|
-
ReasoningPart:
|
|
5783
|
-
ToolPart:
|
|
5784
|
-
FilePart:
|
|
5810
|
+
MessageList: Jn,
|
|
5811
|
+
PromptInput: lo,
|
|
5812
|
+
WelcomeScreen: co,
|
|
5813
|
+
TextPart: wr,
|
|
5814
|
+
ReasoningPart: Er,
|
|
5815
|
+
ToolPart: ma,
|
|
5816
|
+
FilePart: fa,
|
|
5785
5817
|
toolComponents: void 0,
|
|
5786
5818
|
textComponents: void 0,
|
|
5787
5819
|
remarkPlugins: void 0,
|
|
@@ -5810,6 +5842,8 @@ const C = {
|
|
|
5810
5842
|
app: {
|
|
5811
5843
|
name: void 0,
|
|
5812
5844
|
adminTitle: void 0,
|
|
5845
|
+
version: void 0,
|
|
5846
|
+
showVersionInSettings: !0,
|
|
5813
5847
|
cacheNamespace: "gentiq",
|
|
5814
5848
|
showSettings: !0,
|
|
5815
5849
|
settingsGeneralMode: "editable",
|
|
@@ -5826,9 +5860,9 @@ const C = {
|
|
|
5826
5860
|
}
|
|
5827
5861
|
}, on = pe(C);
|
|
5828
5862
|
function W() {
|
|
5829
|
-
return
|
|
5863
|
+
return Fe(on);
|
|
5830
5864
|
}
|
|
5831
|
-
function
|
|
5865
|
+
function Si({
|
|
5832
5866
|
components: e,
|
|
5833
5867
|
history: t,
|
|
5834
5868
|
welcome: n,
|
|
@@ -5872,15 +5906,15 @@ function _i({
|
|
|
5872
5906
|
);
|
|
5873
5907
|
return /* @__PURE__ */ i(on.Provider, { value: f, children: h });
|
|
5874
5908
|
}
|
|
5875
|
-
const
|
|
5909
|
+
const ba = {
|
|
5876
5910
|
theme: "system",
|
|
5877
5911
|
setTheme: () => null,
|
|
5878
5912
|
accent: void 0,
|
|
5879
5913
|
setAccent: () => null,
|
|
5880
5914
|
radius: void 0,
|
|
5881
5915
|
setRadius: () => null
|
|
5882
|
-
}, rn = pe(
|
|
5883
|
-
function
|
|
5916
|
+
}, rn = pe(ba);
|
|
5917
|
+
function Ei({
|
|
5884
5918
|
children: e,
|
|
5885
5919
|
defaultTheme: t = "system",
|
|
5886
5920
|
storageKey: n = "chatbot-theme",
|
|
@@ -5910,8 +5944,8 @@ function Si({
|
|
|
5910
5944
|
}
|
|
5911
5945
|
const v = s || (typeof h?.radius == "number" ? `${h.radius}px` : h?.radius);
|
|
5912
5946
|
v !== void 0 && m.style.setProperty("--radius", v);
|
|
5913
|
-
const
|
|
5914
|
-
|
|
5947
|
+
const _ = l || h?.accent;
|
|
5948
|
+
_ !== void 0 && m.style.setProperty("--gentiq-primary", _), window.document.documentElement.dir = f.dir();
|
|
5915
5949
|
}, [h, f, f.language, l, s]);
|
|
5916
5950
|
const b = {
|
|
5917
5951
|
theme: r,
|
|
@@ -5929,21 +5963,21 @@ function Si({
|
|
|
5929
5963
|
};
|
|
5930
5964
|
return /* @__PURE__ */ i(rn.Provider, { ...o, value: b, children: e });
|
|
5931
5965
|
}
|
|
5932
|
-
const
|
|
5933
|
-
slice:
|
|
5934
|
-
forEach:
|
|
5966
|
+
const Ni = () => Fe(rn), {
|
|
5967
|
+
slice: ya,
|
|
5968
|
+
forEach: ka
|
|
5935
5969
|
} = [];
|
|
5936
|
-
function
|
|
5937
|
-
return
|
|
5970
|
+
function va(e) {
|
|
5971
|
+
return ka.call(ya.call(arguments, 1), (t) => {
|
|
5938
5972
|
if (t)
|
|
5939
5973
|
for (const n in t)
|
|
5940
5974
|
e[n] === void 0 && (e[n] = t[n]);
|
|
5941
5975
|
}), e;
|
|
5942
5976
|
}
|
|
5943
|
-
function
|
|
5977
|
+
function wa(e) {
|
|
5944
5978
|
return typeof e != "string" ? !1 : [/<\s*script.*?>/i, /<\s*\/\s*script\s*>/i, /<\s*img.*?on\w+\s*=/i, /<\s*\w+\s*on\w+\s*=.*?>/i, /javascript\s*:/i, /vbscript\s*:/i, /expression\s*\(/i, /eval\s*\(/i, /alert\s*\(/i, /document\.cookie/i, /document\.write\s*\(/i, /window\.location/i, /innerHTML/i].some((n) => n.test(e));
|
|
5945
5979
|
}
|
|
5946
|
-
const vt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,
|
|
5980
|
+
const vt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, _a = function(e, t) {
|
|
5947
5981
|
const o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {
|
|
5948
5982
|
path: "/"
|
|
5949
5983
|
}, r = encodeURIComponent(t);
|
|
@@ -5992,7 +6026,7 @@ const vt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, wa = function(e, t) {
|
|
|
5992
6026
|
path: "/",
|
|
5993
6027
|
sameSite: "strict"
|
|
5994
6028
|
};
|
|
5995
|
-
n && (r.expires = /* @__PURE__ */ new Date(), r.expires.setTime(r.expires.getTime() + n * 60 * 1e3)), o && (r.domain = o), document.cookie =
|
|
6029
|
+
n && (r.expires = /* @__PURE__ */ new Date(), r.expires.setTime(r.expires.getTime() + n * 60 * 1e3)), o && (r.domain = o), document.cookie = _a(e, t, r);
|
|
5996
6030
|
},
|
|
5997
6031
|
read(e) {
|
|
5998
6032
|
const t = `${e}=`, n = document.cookie.split(";");
|
|
@@ -6027,7 +6061,7 @@ var xa = {
|
|
|
6027
6061
|
} = t;
|
|
6028
6062
|
n && typeof document < "u" && wt.create(n, e, o, r, a);
|
|
6029
6063
|
}
|
|
6030
|
-
},
|
|
6064
|
+
}, Sa = {
|
|
6031
6065
|
name: "querystring",
|
|
6032
6066
|
// Deconstruct the options object and extract the lookupQuerystring property
|
|
6033
6067
|
lookup(e) {
|
|
@@ -6047,7 +6081,7 @@ var xa = {
|
|
|
6047
6081
|
}
|
|
6048
6082
|
return n;
|
|
6049
6083
|
}
|
|
6050
|
-
},
|
|
6084
|
+
}, Ea = {
|
|
6051
6085
|
name: "hash",
|
|
6052
6086
|
// Deconstruct the options object and extract the lookupHash property and the lookupFromHashIndex property
|
|
6053
6087
|
lookup(e) {
|
|
@@ -6079,7 +6113,7 @@ var xa = {
|
|
|
6079
6113
|
}
|
|
6080
6114
|
};
|
|
6081
6115
|
let Y = null;
|
|
6082
|
-
const
|
|
6116
|
+
const _t = () => {
|
|
6083
6117
|
if (Y !== null) return Y;
|
|
6084
6118
|
try {
|
|
6085
6119
|
if (Y = typeof window < "u" && window.localStorage !== null, !Y)
|
|
@@ -6091,14 +6125,14 @@ const xt = () => {
|
|
|
6091
6125
|
}
|
|
6092
6126
|
return Y;
|
|
6093
6127
|
};
|
|
6094
|
-
var
|
|
6128
|
+
var Na = {
|
|
6095
6129
|
name: "localStorage",
|
|
6096
6130
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
6097
6131
|
lookup(e) {
|
|
6098
6132
|
let {
|
|
6099
6133
|
lookupLocalStorage: t
|
|
6100
6134
|
} = e;
|
|
6101
|
-
if (t &&
|
|
6135
|
+
if (t && _t())
|
|
6102
6136
|
return window.localStorage.getItem(t) || void 0;
|
|
6103
6137
|
},
|
|
6104
6138
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
@@ -6106,11 +6140,11 @@ var Ea = {
|
|
|
6106
6140
|
let {
|
|
6107
6141
|
lookupLocalStorage: n
|
|
6108
6142
|
} = t;
|
|
6109
|
-
n &&
|
|
6143
|
+
n && _t() && window.localStorage.setItem(n, e);
|
|
6110
6144
|
}
|
|
6111
6145
|
};
|
|
6112
6146
|
let X = null;
|
|
6113
|
-
const
|
|
6147
|
+
const xt = () => {
|
|
6114
6148
|
if (X !== null) return X;
|
|
6115
6149
|
try {
|
|
6116
6150
|
if (X = typeof window < "u" && window.sessionStorage !== null, !X)
|
|
@@ -6122,22 +6156,22 @@ const _t = () => {
|
|
|
6122
6156
|
}
|
|
6123
6157
|
return X;
|
|
6124
6158
|
};
|
|
6125
|
-
var
|
|
6159
|
+
var Ta = {
|
|
6126
6160
|
name: "sessionStorage",
|
|
6127
6161
|
lookup(e) {
|
|
6128
6162
|
let {
|
|
6129
6163
|
lookupSessionStorage: t
|
|
6130
6164
|
} = e;
|
|
6131
|
-
if (t &&
|
|
6165
|
+
if (t && xt())
|
|
6132
6166
|
return window.sessionStorage.getItem(t) || void 0;
|
|
6133
6167
|
},
|
|
6134
6168
|
cacheUserLanguage(e, t) {
|
|
6135
6169
|
let {
|
|
6136
6170
|
lookupSessionStorage: n
|
|
6137
6171
|
} = t;
|
|
6138
|
-
n &&
|
|
6172
|
+
n && xt() && window.sessionStorage.setItem(n, e);
|
|
6139
6173
|
}
|
|
6140
|
-
},
|
|
6174
|
+
}, Ca = {
|
|
6141
6175
|
name: "navigator",
|
|
6142
6176
|
lookup(e) {
|
|
6143
6177
|
const t = [];
|
|
@@ -6154,7 +6188,7 @@ var Na = {
|
|
|
6154
6188
|
}
|
|
6155
6189
|
return t.length > 0 ? t : void 0;
|
|
6156
6190
|
}
|
|
6157
|
-
},
|
|
6191
|
+
}, Aa = {
|
|
6158
6192
|
name: "htmlTag",
|
|
6159
6193
|
// Deconstruct the options object and extract the htmlTag property
|
|
6160
6194
|
lookup(e) {
|
|
@@ -6164,7 +6198,7 @@ var Na = {
|
|
|
6164
6198
|
const o = t || (typeof document < "u" ? document.documentElement : null);
|
|
6165
6199
|
return o && typeof o.getAttribute == "function" && (n = o.getAttribute("lang")), n;
|
|
6166
6200
|
}
|
|
6167
|
-
},
|
|
6201
|
+
}, Ia = {
|
|
6168
6202
|
name: "path",
|
|
6169
6203
|
// Deconstruct the options object and extract the lookupFromPathIndex property
|
|
6170
6204
|
lookup(e) {
|
|
@@ -6175,7 +6209,7 @@ var Na = {
|
|
|
6175
6209
|
const n = window.location.pathname.match(/\/([a-zA-Z-]*)/g);
|
|
6176
6210
|
return Array.isArray(n) ? n[typeof t == "number" ? t : 0]?.replace("/", "") : void 0;
|
|
6177
6211
|
}
|
|
6178
|
-
},
|
|
6212
|
+
}, Ra = {
|
|
6179
6213
|
name: "subdomain",
|
|
6180
6214
|
lookup(e) {
|
|
6181
6215
|
let {
|
|
@@ -6193,7 +6227,7 @@ try {
|
|
|
6193
6227
|
}
|
|
6194
6228
|
const ln = ["querystring", "cookie", "localStorage", "sessionStorage", "navigator", "htmlTag"];
|
|
6195
6229
|
an || ln.splice(1, 1);
|
|
6196
|
-
const
|
|
6230
|
+
const Oa = () => ({
|
|
6197
6231
|
order: ln,
|
|
6198
6232
|
lookupQuerystring: "lng",
|
|
6199
6233
|
lookupCookie: "i18next",
|
|
@@ -6215,7 +6249,7 @@ class sn {
|
|
|
6215
6249
|
let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {
|
|
6216
6250
|
languageUtils: {}
|
|
6217
6251
|
}, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
6218
|
-
this.services = t, this.options =
|
|
6252
|
+
this.services = t, this.options = va(n, this.options || {}, Oa()), typeof this.options.convertDetectedLanguage == "string" && this.options.convertDetectedLanguage.indexOf("15897") > -1 && (this.options.convertDetectedLanguage = (r) => r.replace("-", "_")), this.options.lookupFromUrlIndex && (this.options.lookupFromPathIndex = this.options.lookupFromUrlIndex), this.i18nOptions = o, this.addDetector(xa), this.addDetector(Sa), this.addDetector(Na), this.addDetector(Ta), this.addDetector(Ca), this.addDetector(Aa), this.addDetector(Ia), this.addDetector(Ra), this.addDetector(Ea);
|
|
6219
6253
|
}
|
|
6220
6254
|
addDetector(t) {
|
|
6221
6255
|
return this.detectors[t.name] = t, this;
|
|
@@ -6227,7 +6261,7 @@ class sn {
|
|
|
6227
6261
|
let r = this.detectors[o].lookup(this.options);
|
|
6228
6262
|
r && typeof r == "string" && (r = [r]), r && (n = n.concat(r));
|
|
6229
6263
|
}
|
|
6230
|
-
}), n = n.filter((o) => o != null && !
|
|
6264
|
+
}), n = n.filter((o) => o != null && !wa(o)).map((o) => this.options.convertDetectedLanguage(o)), this.services && this.services.languageUtils && this.services.languageUtils.getBestMatchFromCodes ? n : n.length > 0 ? n[0] : null;
|
|
6231
6265
|
}
|
|
6232
6266
|
cacheUserLanguage(t) {
|
|
6233
6267
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.options.caches;
|
|
@@ -6237,30 +6271,30 @@ class sn {
|
|
|
6237
6271
|
}
|
|
6238
6272
|
}
|
|
6239
6273
|
sn.type = "languageDetector";
|
|
6240
|
-
const Oa = { 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." }, La = { 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" }, Da = { 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...", select_placeholder: "Select an option", login_button: "Login", signup_button: "Sign Up" }, Pa = { toggle: "Change theme", light: "Switch to light theme", dark: "Switch to dark theme", system: "Switch to system theme" }, Ma = { 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.", 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" } }, za = { 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.", 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." }, Ua = {
|
|
6241
|
-
sidebar:
|
|
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
|
+
sidebar: La,
|
|
6242
6276
|
chat: Fa,
|
|
6243
|
-
tools_ui:
|
|
6244
|
-
login:
|
|
6245
|
-
theme:
|
|
6246
|
-
admin:
|
|
6247
|
-
settings:
|
|
6277
|
+
tools_ui: Da,
|
|
6278
|
+
login: Pa,
|
|
6279
|
+
theme: Ma,
|
|
6280
|
+
admin: za,
|
|
6281
|
+
settings: Ua,
|
|
6248
6282
|
errors: $a
|
|
6249
|
-
}, Ba = { 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: "اشتراکگذاری" }, Ha = { tools: "ابزارها", error: "خطا:", input_placeholder: "سوالتو اینجا بپرس...", insufficient_balance: "موجودی حساب شما کافی نیست. لطفا برای ادامه، حساب خود را شارژ کنید.", regenerate: "تولید مجدد", retry: "تلاش مجدد", copy: "کپی", like: "پسندیدم", dislike: "نپسندیدم", attach_file: "پیوست فایل", remove_file: "حذف فایل", used_sources: "از {{count}} منبع استفاده شد", welcome: { title: "سلام! چطور میتونم کمکت کنم؟", subtitle: "هر سوالی داری بپرس، تمام تلاشمو میکنم کمکت کنم.", suggestions: ["چه کارهایی میتونی انجام بدی؟", "یه چیز جالب بهم بگو", "کمکم کن یه ایمیل بنویسم", "یه مفهوم رو برام توضیح بده"] }, disclaimer: "هوش مصنوعی ممکن است اشتباه کند. اطلاعات مهم را بررسی کنید." }, qa = { pending: "در انتظار", running: "در حال اجرا", completed: "تکمیل شده", error: "خطا", parameters: "پارامترها", result: "نتیجه", view_error: "نمایش خطا", tool_error: "خطای ابزار", copied: "کپی شد!", copy_error: "کپی خطا" }, ja = { login_tab: "ورود", signup_tab: "ثبت نام", phone: "شماره تلفن", phone_placeholder: "شماره تلفن", password: "رمز عبور", name: "نام", name_placeholder: "نام", surname: "نام خانوادگی", surname_placeholder: "نام خانوادگی", logging_in: "در حال ورود...", signing_up: "در حال ثبت نام...", select_placeholder: "انتخاب کنید", login_button: "ورود", signup_button: "ثبت نام" }, Ga = { toggle: "تغییر تم", light: "تغییر به تم روشن", dark: "تغییر به تم تاریک", system: "تغییر به تم سیستم" }, Va = { 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: "نمایش چرخدنده تنظیمات در محیط چت برای شخصیسازی توسط کاربر.", 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: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Wa = { 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: "آخرین بروزرسانی اعتبار در تاریخ" } }, Ya = { 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: "خطا در اشتراکگذاری گفتگو.", admin_already_exists: "ادمین با این نام کاربری قبلاً ایجاد شده است.", admin_not_found: "ادمین یافت نشد.", cannot_delete_self: "شما نمیتوانید حساب مدیریت خود را حذف کنید.", admin_update_failed: "خطا در بروزرسانی اطلاعات ادمین.", internal_error: "یک خطای داخلی در سرور رخ داده است. لطفاً بعداً تلاش کنید.", validation_error: "دادههای ارسالی معتبر نیستند. لطفاً ورودیهای خود را بررسی کنید.", not_found: "منبع مورد نظر یافت نشد." }, Xa = {
|
|
6250
|
-
sidebar:
|
|
6251
|
-
chat:
|
|
6252
|
-
tools_ui:
|
|
6253
|
-
login:
|
|
6254
|
-
theme:
|
|
6255
|
-
admin:
|
|
6256
|
-
settings:
|
|
6257
|
-
errors:
|
|
6258
|
-
},
|
|
6259
|
-
en:
|
|
6260
|
-
fa:
|
|
6261
|
-
},
|
|
6262
|
-
|
|
6263
|
-
resources:
|
|
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
|
+
sidebar: Ha,
|
|
6285
|
+
chat: qa,
|
|
6286
|
+
tools_ui: ja,
|
|
6287
|
+
login: Ga,
|
|
6288
|
+
theme: Va,
|
|
6289
|
+
admin: Wa,
|
|
6290
|
+
settings: Ya,
|
|
6291
|
+
errors: Xa
|
|
6292
|
+
}, Za = {
|
|
6293
|
+
en: Ba,
|
|
6294
|
+
fa: Ka
|
|
6295
|
+
}, Ja = Ln.createInstance();
|
|
6296
|
+
Ja.use(sn).use(un).init({
|
|
6297
|
+
resources: Za,
|
|
6264
6298
|
fallbackLng: "en",
|
|
6265
6299
|
returnNull: !1,
|
|
6266
6300
|
returnEmptyString: !1,
|
|
@@ -6274,7 +6308,7 @@ Za.use(sn).use(un).init({
|
|
|
6274
6308
|
caches: ["localStorage"]
|
|
6275
6309
|
}
|
|
6276
6310
|
});
|
|
6277
|
-
function
|
|
6311
|
+
function Ti({ className: e, type: t, ...n }) {
|
|
6278
6312
|
return /* @__PURE__ */ i(
|
|
6279
6313
|
"input",
|
|
6280
6314
|
{
|
|
@@ -6290,34 +6324,34 @@ function Ni({ className: e, type: t, ...n }) {
|
|
|
6290
6324
|
}
|
|
6291
6325
|
);
|
|
6292
6326
|
}
|
|
6293
|
-
const Ti = "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", Ja = Pe(
|
|
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(
|
|
6294
6328
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
6295
|
-
),
|
|
6329
|
+
), ei = Ce.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ i(
|
|
6296
6330
|
"label",
|
|
6297
6331
|
{
|
|
6298
6332
|
ref: n,
|
|
6299
|
-
className: k(
|
|
6333
|
+
className: k(Qa(), e),
|
|
6300
6334
|
...t
|
|
6301
6335
|
}
|
|
6302
6336
|
));
|
|
6303
|
-
|
|
6304
|
-
function Ci({ ...e }) {
|
|
6305
|
-
return /* @__PURE__ */ i(L.Root, { "data-slot": "select", ...e });
|
|
6306
|
-
}
|
|
6337
|
+
ei.displayName = "Label";
|
|
6307
6338
|
function Ai({ ...e }) {
|
|
6308
|
-
return /* @__PURE__ */ i(
|
|
6339
|
+
return /* @__PURE__ */ i(F.Root, { "data-slot": "select", ...e });
|
|
6309
6340
|
}
|
|
6310
6341
|
function Ii({ ...e }) {
|
|
6311
|
-
return /* @__PURE__ */ i(
|
|
6342
|
+
return /* @__PURE__ */ i(F.Group, { "data-slot": "select-group", ...e });
|
|
6312
6343
|
}
|
|
6313
|
-
function Ri({
|
|
6344
|
+
function Ri({ ...e }) {
|
|
6345
|
+
return /* @__PURE__ */ i(F.Value, { "data-slot": "select-value", ...e });
|
|
6346
|
+
}
|
|
6347
|
+
function Oi({
|
|
6314
6348
|
className: e,
|
|
6315
6349
|
size: t = "default",
|
|
6316
6350
|
children: n,
|
|
6317
6351
|
...o
|
|
6318
6352
|
}) {
|
|
6319
6353
|
return /* @__PURE__ */ w(
|
|
6320
|
-
|
|
6354
|
+
F.Trigger,
|
|
6321
6355
|
{
|
|
6322
6356
|
"data-slot": "select-trigger",
|
|
6323
6357
|
"data-size": t,
|
|
@@ -6328,19 +6362,19 @@ function Ri({
|
|
|
6328
6362
|
...o,
|
|
6329
6363
|
children: [
|
|
6330
6364
|
n,
|
|
6331
|
-
/* @__PURE__ */ i(
|
|
6365
|
+
/* @__PURE__ */ i(F.Icon, { asChild: !0, children: /* @__PURE__ */ i(ie, { className: "size-4 opacity-50" }) })
|
|
6332
6366
|
]
|
|
6333
6367
|
}
|
|
6334
6368
|
);
|
|
6335
6369
|
}
|
|
6336
|
-
function
|
|
6370
|
+
function Li({
|
|
6337
6371
|
className: e,
|
|
6338
6372
|
children: t,
|
|
6339
6373
|
position: n = "popper",
|
|
6340
6374
|
...o
|
|
6341
6375
|
}) {
|
|
6342
|
-
return /* @__PURE__ */ i(
|
|
6343
|
-
|
|
6376
|
+
return /* @__PURE__ */ i(F.Portal, { children: /* @__PURE__ */ w(
|
|
6377
|
+
F.Content,
|
|
6344
6378
|
{
|
|
6345
6379
|
"data-slot": "select-content",
|
|
6346
6380
|
className: k(
|
|
@@ -6351,9 +6385,9 @@ function Oi({
|
|
|
6351
6385
|
position: n,
|
|
6352
6386
|
...o,
|
|
6353
6387
|
children: [
|
|
6354
|
-
/* @__PURE__ */ i(
|
|
6388
|
+
/* @__PURE__ */ i(ti, {}),
|
|
6355
6389
|
/* @__PURE__ */ i(
|
|
6356
|
-
|
|
6390
|
+
F.Viewport,
|
|
6357
6391
|
{
|
|
6358
6392
|
className: k(
|
|
6359
6393
|
"p-1",
|
|
@@ -6362,14 +6396,14 @@ function Oi({
|
|
|
6362
6396
|
children: t
|
|
6363
6397
|
}
|
|
6364
6398
|
),
|
|
6365
|
-
/* @__PURE__ */ i(
|
|
6399
|
+
/* @__PURE__ */ i(ni, {})
|
|
6366
6400
|
]
|
|
6367
6401
|
}
|
|
6368
6402
|
) });
|
|
6369
6403
|
}
|
|
6370
6404
|
function Fi({ className: e, ...t }) {
|
|
6371
6405
|
return /* @__PURE__ */ i(
|
|
6372
|
-
|
|
6406
|
+
F.Label,
|
|
6373
6407
|
{
|
|
6374
6408
|
"data-slot": "select-label",
|
|
6375
6409
|
className: k("text-muted-foreground px-2 py-1.5 text-xs", e),
|
|
@@ -6377,9 +6411,9 @@ function Fi({ className: e, ...t }) {
|
|
|
6377
6411
|
}
|
|
6378
6412
|
);
|
|
6379
6413
|
}
|
|
6380
|
-
function
|
|
6414
|
+
function Di({ className: e, children: t, ...n }) {
|
|
6381
6415
|
return /* @__PURE__ */ w(
|
|
6382
|
-
|
|
6416
|
+
F.Item,
|
|
6383
6417
|
{
|
|
6384
6418
|
"data-slot": "select-item",
|
|
6385
6419
|
className: k(
|
|
@@ -6388,15 +6422,15 @@ function Li({ className: e, children: t, ...n }) {
|
|
|
6388
6422
|
),
|
|
6389
6423
|
...n,
|
|
6390
6424
|
children: [
|
|
6391
|
-
/* @__PURE__ */ i("span", { className: "absolute inset-inline-end-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ i(
|
|
6392
|
-
/* @__PURE__ */ i(
|
|
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(De, { className: "size-4" }) }) }),
|
|
6426
|
+
/* @__PURE__ */ i(F.ItemText, { children: t })
|
|
6393
6427
|
]
|
|
6394
6428
|
}
|
|
6395
6429
|
);
|
|
6396
6430
|
}
|
|
6397
|
-
function
|
|
6431
|
+
function Pi({ className: e, ...t }) {
|
|
6398
6432
|
return /* @__PURE__ */ i(
|
|
6399
|
-
|
|
6433
|
+
F.Separator,
|
|
6400
6434
|
{
|
|
6401
6435
|
"data-slot": "select-separator",
|
|
6402
6436
|
className: k("bg-border pointer-events-none -mx-1 my-1 h-px", e),
|
|
@@ -6404,9 +6438,9 @@ function Di({ className: e, ...t }) {
|
|
|
6404
6438
|
}
|
|
6405
6439
|
);
|
|
6406
6440
|
}
|
|
6407
|
-
function
|
|
6441
|
+
function ti({ className: e, ...t }) {
|
|
6408
6442
|
return /* @__PURE__ */ i(
|
|
6409
|
-
|
|
6443
|
+
F.ScrollUpButton,
|
|
6410
6444
|
{
|
|
6411
6445
|
"data-slot": "select-scroll-up-button",
|
|
6412
6446
|
className: k("flex cursor-default items-center justify-center py-1", e),
|
|
@@ -6415,12 +6449,12 @@ function ei({ className: e, ...t }) {
|
|
|
6415
6449
|
}
|
|
6416
6450
|
);
|
|
6417
6451
|
}
|
|
6418
|
-
function
|
|
6452
|
+
function ni({
|
|
6419
6453
|
className: e,
|
|
6420
6454
|
...t
|
|
6421
6455
|
}) {
|
|
6422
6456
|
return /* @__PURE__ */ i(
|
|
6423
|
-
|
|
6457
|
+
F.ScrollDownButton,
|
|
6424
6458
|
{
|
|
6425
6459
|
"data-slot": "select-scroll-down-button",
|
|
6426
6460
|
className: k("flex cursor-default items-center justify-center py-1", e),
|
|
@@ -6429,7 +6463,7 @@ function ti({
|
|
|
6429
6463
|
}
|
|
6430
6464
|
);
|
|
6431
6465
|
}
|
|
6432
|
-
function
|
|
6466
|
+
function Mi(e, t) {
|
|
6433
6467
|
if (!e) return !0;
|
|
6434
6468
|
const { field: n, operator: o = "equals", value: r } = e, a = t[n];
|
|
6435
6469
|
switch (o) {
|
|
@@ -6445,10 +6479,10 @@ function Pi(e, t) {
|
|
|
6445
6479
|
return !0;
|
|
6446
6480
|
}
|
|
6447
6481
|
}
|
|
6448
|
-
function
|
|
6482
|
+
function zi({ ...e }) {
|
|
6449
6483
|
return /* @__PURE__ */ i(re.Root, { "data-slot": "dropdown-menu", ...e });
|
|
6450
6484
|
}
|
|
6451
|
-
function
|
|
6485
|
+
function Ui({ ...e }) {
|
|
6452
6486
|
return /* @__PURE__ */ i(re.Trigger, { "data-slot": "dropdown-menu-trigger", ...e });
|
|
6453
6487
|
}
|
|
6454
6488
|
function $i({
|
|
@@ -6469,7 +6503,7 @@ function $i({
|
|
|
6469
6503
|
}
|
|
6470
6504
|
) });
|
|
6471
6505
|
}
|
|
6472
|
-
function
|
|
6506
|
+
function Bi({
|
|
6473
6507
|
className: e,
|
|
6474
6508
|
inset: t,
|
|
6475
6509
|
variant: n = "default",
|
|
@@ -6489,7 +6523,7 @@ function Ui({
|
|
|
6489
6523
|
}
|
|
6490
6524
|
);
|
|
6491
6525
|
}
|
|
6492
|
-
function
|
|
6526
|
+
function Hi({ className: e, ...t }) {
|
|
6493
6527
|
return /* @__PURE__ */ i(
|
|
6494
6528
|
Ye.Root,
|
|
6495
6529
|
{
|
|
@@ -6511,61 +6545,61 @@ function Bi({ className: e, ...t }) {
|
|
|
6511
6545
|
);
|
|
6512
6546
|
}
|
|
6513
6547
|
export {
|
|
6514
|
-
|
|
6515
|
-
|
|
6548
|
+
co as $,
|
|
6549
|
+
Bi as A,
|
|
6516
6550
|
ee as B,
|
|
6517
|
-
|
|
6518
|
-
|
|
6519
|
-
|
|
6551
|
+
Si as C,
|
|
6552
|
+
Cr as D,
|
|
6553
|
+
Lr as E,
|
|
6520
6554
|
Fr as F,
|
|
6521
6555
|
Xe as G,
|
|
6522
6556
|
xi as H,
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6557
|
+
Ti as I,
|
|
6558
|
+
_i as J,
|
|
6559
|
+
Hi as K,
|
|
6560
|
+
ei as L,
|
|
6527
6561
|
fe as M,
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6562
|
+
fa as N,
|
|
6563
|
+
Jn as O,
|
|
6564
|
+
Bn as P,
|
|
6565
|
+
lo as Q,
|
|
6566
|
+
Er as R,
|
|
6567
|
+
Ai as S,
|
|
6568
|
+
Ei as T,
|
|
6569
|
+
Ii as U,
|
|
6536
6570
|
Fi as V,
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6571
|
+
ni as W,
|
|
6572
|
+
ti as X,
|
|
6573
|
+
Pi as Y,
|
|
6574
|
+
wr as Z,
|
|
6575
|
+
ma as _,
|
|
6542
6576
|
W as a,
|
|
6543
|
-
|
|
6544
|
-
|
|
6577
|
+
wi as a0,
|
|
6578
|
+
Qn as a1,
|
|
6545
6579
|
sn as a2,
|
|
6546
6580
|
$n as b,
|
|
6547
|
-
|
|
6548
|
-
|
|
6581
|
+
ki as c,
|
|
6582
|
+
Za as d,
|
|
6549
6583
|
k as e,
|
|
6550
|
-
|
|
6551
|
-
|
|
6584
|
+
io as f,
|
|
6585
|
+
Ja as g,
|
|
6552
6586
|
It as h,
|
|
6553
6587
|
Rt as i,
|
|
6554
|
-
|
|
6588
|
+
vi as j,
|
|
6555
6589
|
Ot as k,
|
|
6556
|
-
|
|
6557
|
-
|
|
6558
|
-
|
|
6559
|
-
|
|
6560
|
-
|
|
6561
|
-
|
|
6562
|
-
|
|
6563
|
-
|
|
6564
|
-
|
|
6590
|
+
Lt as l,
|
|
6591
|
+
Ni as m,
|
|
6592
|
+
Mi as n,
|
|
6593
|
+
Ar as o,
|
|
6594
|
+
Or as p,
|
|
6595
|
+
Oi as q,
|
|
6596
|
+
Ri as r,
|
|
6597
|
+
Li as s,
|
|
6598
|
+
Di as t,
|
|
6565
6599
|
S as u,
|
|
6566
|
-
|
|
6600
|
+
Ci as v,
|
|
6567
6601
|
ge as w,
|
|
6568
|
-
|
|
6569
|
-
|
|
6602
|
+
zi as x,
|
|
6603
|
+
Ui as y,
|
|
6570
6604
|
$i as z
|
|
6571
6605
|
};
|