gentiq 0.7.26 → 0.7.27
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/dist/{checkbox-D3JJhc0K.js → checkbox-plYm_Rxp.js} +1000 -987
- package/dist/gentiq-admin.es.js +1038 -952
- package/dist/gentiq-index.es.js +1017 -1027
- package/dist/gentiq.css +1 -1
- package/dist/src/locales/en.json.d.ts +8 -1
- package/dist/src/locales/fa.json.d.ts +8 -1
- package/package.json +1 -1
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import * as
|
|
3
|
-
import { useState as
|
|
4
|
-
import { useTranslation as M, initReactI18next as
|
|
5
|
-
import { ArrowDownIcon as
|
|
6
|
-
import { Slot as
|
|
7
|
-
import { cva as
|
|
8
|
-
import { StickToBottom as
|
|
9
|
-
import * as
|
|
1
|
+
import { jsx as i, Fragment as J, jsxs as w } from "react/jsx-runtime";
|
|
2
|
+
import * as Ce from "react";
|
|
3
|
+
import { useState as B, useCallback as oe, useMemo as _t, useEffect as Q, Children as sn, useRef as Ge, memo as de, createContext as pe, useContext as Le } from "react";
|
|
4
|
+
import { useTranslation as M, initReactI18next as cn } from "react-i18next";
|
|
5
|
+
import { ArrowDownIcon as un, ChevronDownIcon as ie, BookIcon as dn, XIcon as he, CheckIcon as De, ArrowUpIcon as pn, Loader2Icon as hn, SquareIcon as gn, FileIcon as St, PaperclipIcon as mn, MessageCircle as fn, RefreshCcwIcon as bn, ThumbsUpIcon as kn, ThumbsDownIcon as yn, CopyIcon as Et, BrainIcon as vn, WrenchIcon as wn, ImagePlusIcon as xn, CodeIcon as _n, DownloadIcon as ue, GlobeIcon as Sn, XCircleIcon as Nt, CheckCircleIcon as En, ClockIcon as Nn, CircleIcon as Tn, ChevronUpIcon as Cn } from "lucide-react";
|
|
6
|
+
import { Slot as Tt } from "@radix-ui/react-slot";
|
|
7
|
+
import { cva as Pe } from "class-variance-authority";
|
|
8
|
+
import { StickToBottom as Ct, useStickToBottomContext as An } from "use-stick-to-bottom";
|
|
9
|
+
import * as Me from "@radix-ui/react-collapsible";
|
|
10
10
|
import * as K from "@radix-ui/react-tooltip";
|
|
11
|
-
import { toast as
|
|
11
|
+
import { toast as In } from "sonner";
|
|
12
12
|
import "@radix-ui/react-scroll-area";
|
|
13
|
-
import { Streamdown as
|
|
14
|
-
import
|
|
15
|
-
import { useControllableState as
|
|
16
|
-
import * as
|
|
17
|
-
import { PrismLight as
|
|
18
|
-
import
|
|
13
|
+
import { Streamdown as Rn } from "streamdown";
|
|
14
|
+
import We from "katex";
|
|
15
|
+
import { useControllableState as Ve } from "@radix-ui/react-use-controllable-state";
|
|
16
|
+
import * as H from "@radix-ui/react-dialog";
|
|
17
|
+
import { PrismLight as $ } from "react-syntax-highlighter";
|
|
18
|
+
import On from "i18next";
|
|
19
19
|
import * as L from "@radix-ui/react-select";
|
|
20
|
-
import * as
|
|
21
|
-
import * as
|
|
22
|
-
import { clsx as
|
|
23
|
-
import { twMerge as
|
|
24
|
-
class
|
|
20
|
+
import * as re from "@radix-ui/react-dropdown-menu";
|
|
21
|
+
import * as Ye from "@radix-ui/react-checkbox";
|
|
22
|
+
import { clsx as Fn } from "clsx";
|
|
23
|
+
import { twMerge as Ln } from "tailwind-merge";
|
|
24
|
+
class Dn extends Error {
|
|
25
25
|
code;
|
|
26
26
|
status;
|
|
27
27
|
details;
|
|
@@ -29,7 +29,7 @@ class Ln extends Error {
|
|
|
29
29
|
super(t.error.message), this.name = "GentiqError", this.code = t.error.code, this.status = n, this.details = t.error.details;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
|
-
function
|
|
32
|
+
function ki(e, t) {
|
|
33
33
|
const n = typeof e == "string" ? e : e.code, o = `errors.${n}`, r = t(o);
|
|
34
34
|
return r === o ? typeof e != "string" && e.message ? e.message : n.replace(/_/g, " ").replace(/\b\w/g, (a) => a.toUpperCase()) : r;
|
|
35
35
|
}
|
|
@@ -42,7 +42,7 @@ let N = {
|
|
|
42
42
|
cacheNamespace: "gentiq"
|
|
43
43
|
}
|
|
44
44
|
};
|
|
45
|
-
const
|
|
45
|
+
const Pn = {
|
|
46
46
|
getToken: () => localStorage.getItem("token"),
|
|
47
47
|
setToken: (e) => localStorage.setItem("token", e),
|
|
48
48
|
clearToken: () => {
|
|
@@ -53,7 +53,7 @@ const Dn = {
|
|
|
53
53
|
return e ? { Authorization: `Bearer ${e}` } : {};
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
|
-
let
|
|
56
|
+
let F = Pn;
|
|
57
57
|
const S = {
|
|
58
58
|
init: (e) => {
|
|
59
59
|
if (N = {
|
|
@@ -63,7 +63,7 @@ const S = {
|
|
|
63
63
|
app: e.app ? { ...N.app, ...e.app } : N.app
|
|
64
64
|
}, e.api?.authAdapter) {
|
|
65
65
|
const t = e.api.authAdapter;
|
|
66
|
-
|
|
66
|
+
F = {
|
|
67
67
|
...t,
|
|
68
68
|
getHeaders: t.getHeaders || (() => {
|
|
69
69
|
const n = t.getToken();
|
|
@@ -73,14 +73,14 @@ const S = {
|
|
|
73
73
|
}
|
|
74
74
|
},
|
|
75
75
|
getConfig: () => N,
|
|
76
|
-
getToken: () =>
|
|
76
|
+
getToken: () => F.getToken(),
|
|
77
77
|
setToken: (e) => {
|
|
78
|
-
|
|
78
|
+
F.setToken(e);
|
|
79
79
|
},
|
|
80
80
|
clearToken: () => {
|
|
81
|
-
|
|
81
|
+
F.clearToken();
|
|
82
82
|
},
|
|
83
|
-
getHeaders: () =>
|
|
83
|
+
getHeaders: () => F.getHeaders(),
|
|
84
84
|
getEndpoint: (e, t, ...n) => {
|
|
85
85
|
const o = N.api?.endpoints?.[e];
|
|
86
86
|
return o ? typeof o == "function" ? o(...n) : o : typeof t == "function" ? t(...n) : t;
|
|
@@ -89,7 +89,7 @@ const S = {
|
|
|
89
89
|
if (!e.ok) {
|
|
90
90
|
const n = await e.json().catch(() => ({}));
|
|
91
91
|
if (n.error && (n.error.code || n.error.message))
|
|
92
|
-
throw new
|
|
92
|
+
throw new Dn(n, e.status);
|
|
93
93
|
const o = n.error || n.message || t, r = new Error(o);
|
|
94
94
|
throw r.status = e.status, r;
|
|
95
95
|
}
|
|
@@ -104,17 +104,17 @@ const S = {
|
|
|
104
104
|
return r.token && S.setToken(r.token), r;
|
|
105
105
|
},
|
|
106
106
|
register: async (e, t, n, o, r) => {
|
|
107
|
-
const a = S.getEndpoint("register", "/public/auth/register"),
|
|
107
|
+
const a = S.getEndpoint("register", "/public/auth/register"), l = await fetch(`${N.api?.basePath}${a}`, {
|
|
108
108
|
method: "POST",
|
|
109
109
|
headers: { "Content-Type": "application/json" },
|
|
110
110
|
body: JSON.stringify({ phone: e, password: t, name: n, surname: o, metadata: r })
|
|
111
|
-
}), c = await S.handleResponse(
|
|
111
|
+
}), c = await S.handleResponse(l, "Registration failed");
|
|
112
112
|
return c.token && S.setToken(c.token), c;
|
|
113
113
|
},
|
|
114
114
|
getBalance: async () => {
|
|
115
115
|
const e = S.getEndpoint("balance", "/users/balance"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
116
116
|
headers: {
|
|
117
|
-
...
|
|
117
|
+
...F.getHeaders()
|
|
118
118
|
}
|
|
119
119
|
});
|
|
120
120
|
return S.handleResponse(t, "Failed to fetch balance");
|
|
@@ -122,7 +122,7 @@ const S = {
|
|
|
122
122
|
getHistory: async (e = 0, t = 50) => {
|
|
123
123
|
const n = S.getEndpoint("threads", "/chat/threads"), o = await fetch(`${N.api?.basePath}${n}?skip=${e}&limit=${t}`, {
|
|
124
124
|
headers: {
|
|
125
|
-
...
|
|
125
|
+
...F.getHeaders()
|
|
126
126
|
}
|
|
127
127
|
});
|
|
128
128
|
return S.handleResponse(o, "Failed to fetch chat history");
|
|
@@ -131,7 +131,7 @@ const S = {
|
|
|
131
131
|
if (!S.getToken()) throw new Error("No token found");
|
|
132
132
|
const n = S.getEndpoint("threadMessages", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
133
133
|
headers: {
|
|
134
|
-
...
|
|
134
|
+
...F.getHeaders()
|
|
135
135
|
}
|
|
136
136
|
});
|
|
137
137
|
return S.handleResponse(o, "Failed to fetch thread messages");
|
|
@@ -141,7 +141,7 @@ const S = {
|
|
|
141
141
|
const n = S.getEndpoint("deleteThread", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
142
142
|
method: "DELETE",
|
|
143
143
|
headers: {
|
|
144
|
-
...
|
|
144
|
+
...F.getHeaders()
|
|
145
145
|
}
|
|
146
146
|
});
|
|
147
147
|
return S.handleResponse(o, "Failed to delete thread");
|
|
@@ -152,7 +152,7 @@ const S = {
|
|
|
152
152
|
method: "PATCH",
|
|
153
153
|
headers: {
|
|
154
154
|
"Content-Type": "application/json",
|
|
155
|
-
...
|
|
155
|
+
...F.getHeaders()
|
|
156
156
|
},
|
|
157
157
|
body: JSON.stringify({ title: t })
|
|
158
158
|
});
|
|
@@ -167,7 +167,7 @@ const S = {
|
|
|
167
167
|
if (N.api?.attachmentResolver)
|
|
168
168
|
return N.api.attachmentResolver(e);
|
|
169
169
|
const t = S.getEndpoint("attachments", (r) => `/chat/attachments/${r}`, e), n = await fetch(`${N.api?.basePath}${t}`, {
|
|
170
|
-
headers: { ...
|
|
170
|
+
headers: { ...F.getHeaders() }
|
|
171
171
|
});
|
|
172
172
|
if (!n.ok) return S.handleResponse(n, "Failed to fetch attachment");
|
|
173
173
|
const o = await n.blob();
|
|
@@ -192,7 +192,7 @@ const S = {
|
|
|
192
192
|
method: "POST",
|
|
193
193
|
headers: {
|
|
194
194
|
"Content-Type": "application/json",
|
|
195
|
-
...
|
|
195
|
+
...F.getHeaders()
|
|
196
196
|
},
|
|
197
197
|
body: JSON.stringify({
|
|
198
198
|
thread_id: e.replace(/^\//, ""),
|
|
@@ -205,7 +205,7 @@ const S = {
|
|
|
205
205
|
getMe: async () => {
|
|
206
206
|
const e = S.getEndpoint("me", "/users/me"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
207
207
|
headers: {
|
|
208
|
-
...
|
|
208
|
+
...F.getHeaders()
|
|
209
209
|
}
|
|
210
210
|
});
|
|
211
211
|
return S.handleResponse(t, "Failed to fetch user profile");
|
|
@@ -215,7 +215,7 @@ const S = {
|
|
|
215
215
|
method: "PATCH",
|
|
216
216
|
headers: {
|
|
217
217
|
"Content-Type": "application/json",
|
|
218
|
-
...
|
|
218
|
+
...F.getHeaders()
|
|
219
219
|
},
|
|
220
220
|
body: JSON.stringify(e)
|
|
221
221
|
});
|
|
@@ -227,7 +227,7 @@ const S = {
|
|
|
227
227
|
method: "PATCH",
|
|
228
228
|
headers: {
|
|
229
229
|
"Content-Type": "application/json",
|
|
230
|
-
...
|
|
230
|
+
...F.getHeaders()
|
|
231
231
|
},
|
|
232
232
|
body: JSON.stringify({ pinned: t })
|
|
233
233
|
});
|
|
@@ -238,7 +238,7 @@ const S = {
|
|
|
238
238
|
const n = S.getEndpoint("shareThread", (r) => `/chat/threads/${r.replace(/^\//, "")}/share`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
239
239
|
method: "POST",
|
|
240
240
|
headers: {
|
|
241
|
-
...
|
|
241
|
+
...F.getHeaders()
|
|
242
242
|
}
|
|
243
243
|
});
|
|
244
244
|
return S.handleResponse(o, "Failed to share thread");
|
|
@@ -256,15 +256,15 @@ const S = {
|
|
|
256
256
|
return S.handleResponse(e, "Failed to fetch app configuration");
|
|
257
257
|
}
|
|
258
258
|
};
|
|
259
|
-
function
|
|
260
|
-
const [n, o] =
|
|
259
|
+
function Mn(e, t) {
|
|
260
|
+
const [n, o] = B(
|
|
261
261
|
e.metadata?.feedback
|
|
262
|
-
), r =
|
|
263
|
-
navigator.clipboard.writeText(
|
|
262
|
+
), r = oe((l) => {
|
|
263
|
+
navigator.clipboard.writeText(l).catch((c) => {
|
|
264
264
|
console.error("Error copying text:", c);
|
|
265
265
|
});
|
|
266
|
-
}, []), a =
|
|
267
|
-
const c = n ===
|
|
266
|
+
}, []), a = oe(async (l) => {
|
|
267
|
+
const c = n === l ? void 0 : l;
|
|
268
268
|
o(c);
|
|
269
269
|
try {
|
|
270
270
|
const s = e.parts.find((h) => h.type === "data-message-id"), p = s ? s.data[0].message_id : e.id;
|
|
@@ -279,10 +279,10 @@ function Pn(e, t) {
|
|
|
279
279
|
copy: r
|
|
280
280
|
};
|
|
281
281
|
}
|
|
282
|
-
const
|
|
283
|
-
function
|
|
284
|
-
const { i18n: e } = M(["translation"]), { app: t } =
|
|
285
|
-
const
|
|
282
|
+
const zn = /* @__PURE__ */ new Set(["ar", "fa", "he", "ur", "yi", "ku", "ckb", "ps", "sd", "ug", "arc", "syc"]);
|
|
283
|
+
function $n() {
|
|
284
|
+
const { i18n: e } = M(["translation"]), { app: t } = V(), n = _t(() => {
|
|
285
|
+
const l = S.getConfig(), c = t || l.app;
|
|
286
286
|
return {
|
|
287
287
|
name: c?.name || "Gentiq App",
|
|
288
288
|
// Use i18n.language as the primary source for the UI state.
|
|
@@ -290,11 +290,11 @@ function zn() {
|
|
|
290
290
|
language: e.language || c?.language || "en",
|
|
291
291
|
showToolDetails: c?.showToolDetails ?? !0
|
|
292
292
|
};
|
|
293
|
-
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r =
|
|
293
|
+
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r = zn.has(o), a = t?.language;
|
|
294
294
|
return Q(() => {
|
|
295
295
|
if (typeof window > "u") return;
|
|
296
|
-
const
|
|
297
|
-
a && a !==
|
|
296
|
+
const l = localStorage.getItem("gentiq-last-default-lang");
|
|
297
|
+
a && a !== l && (e.changeLanguage(a), localStorage.setItem("gentiq-last-default-lang", a)), document.documentElement.dir = r ? "rtl" : "ltr", document.documentElement.lang = e.language;
|
|
298
298
|
}, [r, e, e.language, a]), {
|
|
299
299
|
appName: n.name || "Gentiq",
|
|
300
300
|
language: n.language || e.language,
|
|
@@ -305,55 +305,55 @@ function zn() {
|
|
|
305
305
|
error: null
|
|
306
306
|
};
|
|
307
307
|
}
|
|
308
|
-
function
|
|
308
|
+
function Un(e) {
|
|
309
309
|
const {
|
|
310
310
|
part: t,
|
|
311
311
|
message: n,
|
|
312
312
|
status: o,
|
|
313
313
|
regen: r,
|
|
314
314
|
index: a,
|
|
315
|
-
lastMessage:
|
|
315
|
+
lastMessage: l,
|
|
316
316
|
conversationId: c,
|
|
317
317
|
isFinished: s,
|
|
318
318
|
renderMessagePart: p,
|
|
319
319
|
chat: h,
|
|
320
320
|
readonly: f
|
|
321
|
-
} = e, { showToolDetails: b } =
|
|
321
|
+
} = e, { showToolDetails: b } = $n(), { TextPart: m, ReasoningPart: k, ToolPart: d, FilePart: v, toolComponents: x, threadActions: g } = V(), { feedback: R, handleFeedback: E, copy: I } = Mn(n, c);
|
|
322
322
|
if (p) {
|
|
323
|
-
const
|
|
324
|
-
if (
|
|
325
|
-
return /* @__PURE__ */
|
|
323
|
+
const O = p(t, n);
|
|
324
|
+
if (O !== void 0)
|
|
325
|
+
return /* @__PURE__ */ i(J, { children: O });
|
|
326
326
|
}
|
|
327
327
|
if (["data-progress-update", "data-message-id", "data-chat-finished", "data-title"].includes(t.type)) return null;
|
|
328
|
-
const
|
|
329
|
-
(
|
|
330
|
-
),
|
|
331
|
-
return t.type === "text" ? /* @__PURE__ */
|
|
328
|
+
const z = n.parts.filter(
|
|
329
|
+
(O) => !["data-progress-update", "data-message-id", "data-chat-finished", "data-title"].includes(O.type)
|
|
330
|
+
), ne = t === z[z.length - 1];
|
|
331
|
+
return t.type === "text" ? /* @__PURE__ */ i(
|
|
332
332
|
m,
|
|
333
333
|
{
|
|
334
334
|
part: t,
|
|
335
335
|
message: n,
|
|
336
336
|
status: o,
|
|
337
337
|
isFinished: !!s,
|
|
338
|
-
lastMessage:
|
|
339
|
-
isLastVisiblePart:
|
|
338
|
+
lastMessage: l,
|
|
339
|
+
isLastVisiblePart: ne,
|
|
340
340
|
regen: r,
|
|
341
|
-
feedback:
|
|
342
|
-
handleFeedback:
|
|
343
|
-
copyHost:
|
|
341
|
+
feedback: R,
|
|
342
|
+
handleFeedback: E,
|
|
343
|
+
copyHost: I,
|
|
344
344
|
feedbackEnabled: f ? !1 : g?.feedback ?? !1,
|
|
345
345
|
retryEnabled: f ? !1 : g?.retry ?? !1
|
|
346
346
|
}
|
|
347
|
-
) : t.type === "reasoning" ? /* @__PURE__ */
|
|
347
|
+
) : t.type === "reasoning" ? /* @__PURE__ */ i(
|
|
348
348
|
k,
|
|
349
349
|
{
|
|
350
350
|
part: t,
|
|
351
351
|
status: o,
|
|
352
352
|
index: a,
|
|
353
353
|
partsCount: n.parts.length,
|
|
354
|
-
lastMessage:
|
|
354
|
+
lastMessage: l
|
|
355
355
|
}
|
|
356
|
-
) : t.type.startsWith("tool-") || "toolCallId" in t ? /* @__PURE__ */
|
|
356
|
+
) : t.type.startsWith("tool-") || "toolCallId" in t ? /* @__PURE__ */ i(
|
|
357
357
|
d,
|
|
358
358
|
{
|
|
359
359
|
part: t,
|
|
@@ -362,7 +362,7 @@ function $n(e) {
|
|
|
362
362
|
toolComponents: x,
|
|
363
363
|
showToolCalls: !!b
|
|
364
364
|
}
|
|
365
|
-
) : t.type === "file" ? /* @__PURE__ */
|
|
365
|
+
) : t.type === "file" ? /* @__PURE__ */ i(
|
|
366
366
|
v,
|
|
367
367
|
{
|
|
368
368
|
part: t,
|
|
@@ -371,14 +371,14 @@ function $n(e) {
|
|
|
371
371
|
) : null;
|
|
372
372
|
}
|
|
373
373
|
function y(...e) {
|
|
374
|
-
return Fn(
|
|
374
|
+
return Ln(Fn(e));
|
|
375
375
|
}
|
|
376
|
-
function
|
|
376
|
+
function yi(e, t) {
|
|
377
377
|
if (t === "/") return e;
|
|
378
378
|
const n = e.endsWith("/") ? e.slice(0, -1) : e, o = t.startsWith("/") ? t : "/" + t;
|
|
379
379
|
return n + o;
|
|
380
380
|
}
|
|
381
|
-
const fe = ({ className: e, ...t }) => /* @__PURE__ */
|
|
381
|
+
const fe = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
382
382
|
"div",
|
|
383
383
|
{
|
|
384
384
|
className: y(
|
|
@@ -386,7 +386,7 @@ const fe = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
386
386
|
e
|
|
387
387
|
),
|
|
388
388
|
...t,
|
|
389
|
-
children: [0, 1, 2].map((n) => /* @__PURE__ */
|
|
389
|
+
children: [0, 1, 2].map((n) => /* @__PURE__ */ i(
|
|
390
390
|
"span",
|
|
391
391
|
{
|
|
392
392
|
className: "size-2 rounded-full bg-primary/70",
|
|
@@ -398,18 +398,18 @@ const fe = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
398
398
|
n
|
|
399
399
|
))
|
|
400
400
|
}
|
|
401
|
-
),
|
|
402
|
-
function
|
|
401
|
+
), Bn = /[\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/;
|
|
402
|
+
function ge(e, t = "ltr") {
|
|
403
403
|
if (!e) return t;
|
|
404
404
|
for (const n of e) {
|
|
405
|
-
if (
|
|
405
|
+
if (Bn.test(n))
|
|
406
406
|
return "rtl";
|
|
407
407
|
if (/[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02B8]/.test(n))
|
|
408
408
|
return "ltr";
|
|
409
409
|
}
|
|
410
410
|
return "ltr";
|
|
411
411
|
}
|
|
412
|
-
const
|
|
412
|
+
const Hn = Pe(
|
|
413
413
|
"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",
|
|
414
414
|
{
|
|
415
415
|
variants: {
|
|
@@ -441,10 +441,10 @@ function ee({
|
|
|
441
441
|
asChild: o = !1,
|
|
442
442
|
...r
|
|
443
443
|
}) {
|
|
444
|
-
return /* @__PURE__ */
|
|
444
|
+
return /* @__PURE__ */ i(o ? Tt : "button", { "data-slot": "button", className: y(Hn({ variant: t, size: n, className: e })), ...r });
|
|
445
445
|
}
|
|
446
|
-
const
|
|
447
|
-
|
|
446
|
+
const qn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
447
|
+
Ct,
|
|
448
448
|
{
|
|
449
449
|
className: y("relative flex-1 overflow-hidden", e),
|
|
450
450
|
initial: "smooth",
|
|
@@ -452,18 +452,18 @@ const Hn = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
452
452
|
role: "log",
|
|
453
453
|
...t
|
|
454
454
|
}
|
|
455
|
-
), jn = ({ className: e, ...t }) => /* @__PURE__ */
|
|
456
|
-
|
|
455
|
+
), jn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
456
|
+
Ct.Content,
|
|
457
457
|
{
|
|
458
458
|
className: y("p-4 pb-6 stick-to-bottom", e),
|
|
459
459
|
scrollClassName: "custom-scrollbar",
|
|
460
460
|
...t
|
|
461
461
|
}
|
|
462
|
-
),
|
|
463
|
-
const { isAtBottom: n, scrollToBottom: o } =
|
|
462
|
+
), Gn = ({ className: e, ...t }) => {
|
|
463
|
+
const { isAtBottom: n, scrollToBottom: o } = An(), r = oe(() => {
|
|
464
464
|
o();
|
|
465
465
|
}, [o]);
|
|
466
|
-
return n ? null : /* @__PURE__ */
|
|
466
|
+
return n ? null : /* @__PURE__ */ i(
|
|
467
467
|
"button",
|
|
468
468
|
{
|
|
469
469
|
className: y(
|
|
@@ -479,27 +479,27 @@ const Hn = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
479
479
|
onClick: r,
|
|
480
480
|
type: "button",
|
|
481
481
|
...t,
|
|
482
|
-
children: /* @__PURE__ */
|
|
482
|
+
children: /* @__PURE__ */ i(un, { className: "size-3.5" })
|
|
483
483
|
}
|
|
484
484
|
);
|
|
485
485
|
};
|
|
486
|
-
function
|
|
487
|
-
return /* @__PURE__ */
|
|
486
|
+
function ze({ ...e }) {
|
|
487
|
+
return /* @__PURE__ */ i(Me.Root, { "data-slot": "collapsible", ...e });
|
|
488
488
|
}
|
|
489
|
-
function
|
|
490
|
-
return /* @__PURE__ */
|
|
489
|
+
function $e({ ...e }) {
|
|
490
|
+
return /* @__PURE__ */ i(Me.CollapsibleTrigger, { "data-slot": "collapsible-trigger", ...e });
|
|
491
491
|
}
|
|
492
|
-
function
|
|
493
|
-
return /* @__PURE__ */
|
|
492
|
+
function Ue({ ...e }) {
|
|
493
|
+
return /* @__PURE__ */ i(Me.CollapsibleContent, { "data-slot": "collapsible-content", ...e });
|
|
494
494
|
}
|
|
495
|
-
const
|
|
495
|
+
const Wn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: y("not-prose mb-4 text-primary text-xs", e), ...t }), Vn = ({ className: e, count: t, children: n, ...o }) => {
|
|
496
496
|
const { t: r } = M(["chat"]);
|
|
497
|
-
return /* @__PURE__ */
|
|
498
|
-
/* @__PURE__ */
|
|
499
|
-
/* @__PURE__ */
|
|
497
|
+
return /* @__PURE__ */ i($e, { className: y("flex items-center gap-2", e), ...o, children: n ?? /* @__PURE__ */ w(J, { children: [
|
|
498
|
+
/* @__PURE__ */ i("p", { className: "font-medium", children: r("used_sources", { count: t }) }),
|
|
499
|
+
/* @__PURE__ */ i(ie, { className: "h-4 w-4" })
|
|
500
500
|
] }) });
|
|
501
|
-
},
|
|
502
|
-
|
|
501
|
+
}, Yn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
502
|
+
Ue,
|
|
503
503
|
{
|
|
504
504
|
className: y(
|
|
505
505
|
"mt-3 flex w-fit flex-col gap-2",
|
|
@@ -508,45 +508,45 @@ const Gn = ({ className: e, ...t }) => /* @__PURE__ */ l(Pe, { className: y("not
|
|
|
508
508
|
),
|
|
509
509
|
...t
|
|
510
510
|
}
|
|
511
|
-
),
|
|
512
|
-
/* @__PURE__ */
|
|
513
|
-
/* @__PURE__ */
|
|
514
|
-
] }) }),
|
|
511
|
+
), Xn = ({ 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: [
|
|
512
|
+
/* @__PURE__ */ i(dn, { className: "h-4 w-4" }),
|
|
513
|
+
/* @__PURE__ */ i("span", { className: "block font-medium", children: t })
|
|
514
|
+
] }) }), Kn = ({ latestProgress: e, parts: t }) => {
|
|
515
515
|
const n = e.data[0].status, o = e.data[0].message, r = t.lastIndexOf(e);
|
|
516
516
|
if (!!(t.slice(r + 1).some(
|
|
517
517
|
(f) => f.type === "text" && (f.text || "").trim().length > 0 || f.type === "tool-invocation" || f.type === "tool-call"
|
|
518
518
|
) && n !== "running")) return null;
|
|
519
|
-
const s = n === "running", p = n === "error", h =
|
|
520
|
-
return /* @__PURE__ */
|
|
519
|
+
const s = n === "running", p = n === "error", h = ge(o);
|
|
520
|
+
return /* @__PURE__ */ i("div", { className: y(
|
|
521
521
|
"flex w-full py-3 mx-auto max-w-4xl px-4 md:px-0 animate-in-bubble",
|
|
522
522
|
h === "rtl" ? "justify-end" : "justify-start"
|
|
523
523
|
), children: /* @__PURE__ */ w("div", { className: y("flex items-center gap-3 text-sm text-muted-foreground", h === "rtl" && "flex-row-reverse"), dir: h, children: [
|
|
524
|
-
s ? /* @__PURE__ */
|
|
525
|
-
/* @__PURE__ */
|
|
524
|
+
s ? /* @__PURE__ */ i("div", { className: "size-4 animate-spin rounded-full border-2 border-primary border-r-transparent shrink-0" }) : p ? /* @__PURE__ */ i(he, { className: "size-4 text-destructive shrink-0" }) : /* @__PURE__ */ i(De, { className: "size-4 text-green-500 shrink-0" }),
|
|
525
|
+
/* @__PURE__ */ i("span", { className: y("font-medium", s && "animate-pulse"), children: o })
|
|
526
526
|
] }) });
|
|
527
527
|
};
|
|
528
|
-
function
|
|
528
|
+
function Zn({
|
|
529
529
|
messages: e,
|
|
530
530
|
status: t,
|
|
531
531
|
isLoadingHistory: n,
|
|
532
532
|
error: o,
|
|
533
533
|
conversationId: r,
|
|
534
534
|
regen: a,
|
|
535
|
-
onSuggestionClick:
|
|
535
|
+
onSuggestionClick: l,
|
|
536
536
|
chat: c,
|
|
537
537
|
className: s,
|
|
538
538
|
readonly: p
|
|
539
539
|
}) {
|
|
540
|
-
const { i18n: h, t: f } = M(["chat", "translation"]), b = h.language === "fa", { WelcomeScreen: m } =
|
|
541
|
-
return /* @__PURE__ */ w(
|
|
540
|
+
const { i18n: h, t: f } = M(["chat", "translation"]), b = h.language === "fa", { WelcomeScreen: m } = V(), k = e[e.length - 1], d = k?.role === "assistant" && (t === "ready" || k.parts.some((v) => v.type === "data-chat-finished"));
|
|
541
|
+
return /* @__PURE__ */ w(qn, { className: y("min-h-0 flex-1", s), children: [
|
|
542
542
|
/* @__PURE__ */ w(jn, { className: "max-w-4xl mx-auto w-full px-4 md:px-0 pb-32", dir: "ltr", children: [
|
|
543
|
-
e.length === 0 && !n ? /* @__PURE__ */
|
|
544
|
-
v.role === "assistant" && v.parts.filter((x) => x.type === "source-url").length > 0 && /* @__PURE__ */ w(
|
|
545
|
-
/* @__PURE__ */
|
|
546
|
-
v.parts.filter((x) => x.type === "source-url").map((x, g) => /* @__PURE__ */
|
|
543
|
+
e.length === 0 && !n ? /* @__PURE__ */ i(m, { onSuggestionClick: l }) : e.map((v) => /* @__PURE__ */ w("div", { children: [
|
|
544
|
+
v.role === "assistant" && v.parts.filter((x) => x.type === "source-url").length > 0 && /* @__PURE__ */ w(Wn, { children: [
|
|
545
|
+
/* @__PURE__ */ i(Vn, { count: v.parts.filter((x) => x.type === "source-url").length }),
|
|
546
|
+
v.parts.filter((x) => x.type === "source-url").map((x, g) => /* @__PURE__ */ i(Yn, { children: /* @__PURE__ */ i(Xn, { href: x.url, title: x.url }, `${v.id}-${g}`) }, `${v.id}-${g}`))
|
|
547
547
|
] }),
|
|
548
|
-
v.parts.map((x, g) => /* @__PURE__ */
|
|
549
|
-
|
|
548
|
+
v.parts.map((x, g) => /* @__PURE__ */ i(
|
|
549
|
+
Un,
|
|
550
550
|
{
|
|
551
551
|
part: x,
|
|
552
552
|
message: v,
|
|
@@ -567,32 +567,32 @@ function Kn({
|
|
|
567
567
|
const v = k.parts.filter((g) => g.type === "data-progress-update");
|
|
568
568
|
if (v.length === 0) return null;
|
|
569
569
|
const x = v[v.length - 1];
|
|
570
|
-
return x ? /* @__PURE__ */
|
|
570
|
+
return x ? /* @__PURE__ */ i(Kn, { latestProgress: x, parts: k.parts }) : null;
|
|
571
571
|
})(),
|
|
572
|
-
(n || t === "submitted") && /* @__PURE__ */
|
|
572
|
+
(n || t === "submitted") && /* @__PURE__ */ i("div", { className: "animate-in-bubble", children: /* @__PURE__ */ i(fe, {}) }),
|
|
573
573
|
t === "streaming" && (() => {
|
|
574
574
|
const v = e[e.length - 1];
|
|
575
|
-
return !v || v.role === "user" ? /* @__PURE__ */
|
|
575
|
+
return !v || v.role === "user" ? /* @__PURE__ */ i(fe, {}) : v.parts?.some(
|
|
576
576
|
(g) => g.type === "text" && g.text?.trim().length > 0 || g.type === "reasoning" || g.type === "tool-invocation" || g.type === "tool-call"
|
|
577
|
-
) ? null : /* @__PURE__ */
|
|
577
|
+
) ? null : /* @__PURE__ */ i(fe, {});
|
|
578
578
|
})(),
|
|
579
|
-
t === "error" && o && /* @__PURE__ */
|
|
579
|
+
t === "error" && o && /* @__PURE__ */ i("div", { className: "mx-auto max-w-4xl w-full px-4 my-3 animate-in-bubble", children: /* @__PURE__ */ w("div", { className: y(
|
|
580
580
|
"flex w-full items-start gap-3 px-4 py-3.5 rounded-xl bg-destructive/8 border border-destructive/15",
|
|
581
581
|
b ? "border-r-2 border-r-destructive/60" : "border-l-2 border-l-destructive/60"
|
|
582
582
|
), dir: b ? "rtl" : "ltr", children: [
|
|
583
|
-
/* @__PURE__ */
|
|
583
|
+
/* @__PURE__ */ i("div", { className: "size-1.5 rounded-full bg-destructive mt-2 shrink-0" }),
|
|
584
584
|
/* @__PURE__ */ w("div", { className: y("text-sm text-destructive/90 leading-relaxed flex-1", b ? "text-right" : "text-left"), children: [
|
|
585
|
-
/* @__PURE__ */
|
|
585
|
+
/* @__PURE__ */ i("span", { className: "font-semibold", children: f("error") }),
|
|
586
586
|
" ",
|
|
587
587
|
o.message
|
|
588
588
|
] })
|
|
589
589
|
] }) })
|
|
590
590
|
] }),
|
|
591
|
-
/* @__PURE__ */
|
|
591
|
+
/* @__PURE__ */ i(Gn, {})
|
|
592
592
|
] });
|
|
593
593
|
}
|
|
594
|
-
function
|
|
595
|
-
return /* @__PURE__ */
|
|
594
|
+
function Jn({ className: e, ...t }) {
|
|
595
|
+
return /* @__PURE__ */ i(
|
|
596
596
|
"textarea",
|
|
597
597
|
{
|
|
598
598
|
"data-slot": "textarea",
|
|
@@ -604,7 +604,7 @@ function Zn({ className: e, ...t }) {
|
|
|
604
604
|
}
|
|
605
605
|
);
|
|
606
606
|
}
|
|
607
|
-
const
|
|
607
|
+
const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg-transparent w-full", children: /* @__PURE__ */ i(
|
|
608
608
|
"form",
|
|
609
609
|
{
|
|
610
610
|
className: y(
|
|
@@ -619,7 +619,7 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
619
619
|
),
|
|
620
620
|
...t
|
|
621
621
|
}
|
|
622
|
-
) }),
|
|
622
|
+
) }), eo = ({
|
|
623
623
|
onChange: e,
|
|
624
624
|
className: t,
|
|
625
625
|
placeholder: n = "What would you like to know?",
|
|
@@ -633,11 +633,11 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
633
633
|
const s = c.currentTarget.form;
|
|
634
634
|
s && s.requestSubmit();
|
|
635
635
|
}
|
|
636
|
-
}, { i18n: a } = M(["chat"]),
|
|
637
|
-
return /* @__PURE__ */
|
|
638
|
-
|
|
636
|
+
}, { i18n: a } = M(["chat"]), l = ge(o.value, a.dir());
|
|
637
|
+
return /* @__PURE__ */ i(
|
|
638
|
+
Jn,
|
|
639
639
|
{
|
|
640
|
-
dir:
|
|
640
|
+
dir: l,
|
|
641
641
|
className: y(
|
|
642
642
|
"flex-1 resize-none rounded-none border-none shadow-none outline-none ring-0",
|
|
643
643
|
"px-2 py-2.5",
|
|
@@ -656,9 +656,9 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
656
656
|
...o
|
|
657
657
|
}
|
|
658
658
|
);
|
|
659
|
-
},
|
|
660
|
-
const r = n ??
|
|
661
|
-
return /* @__PURE__ */
|
|
659
|
+
}, to = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: y("flex shrink-0 items-center gap-1.5 pb-1", e), ...t }), no = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: y("flex items-center gap-0.5", e), ...t }), oo = ({ variant: e = "ghost", className: t, size: n, ...o }) => {
|
|
660
|
+
const r = n ?? sn.count(o.children) > 1 ? "default" : "icon";
|
|
661
|
+
return /* @__PURE__ */ i(
|
|
662
662
|
ee,
|
|
663
663
|
{
|
|
664
664
|
className: y(
|
|
@@ -675,7 +675,7 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
675
675
|
...o
|
|
676
676
|
}
|
|
677
677
|
);
|
|
678
|
-
},
|
|
678
|
+
}, ro = ({
|
|
679
679
|
className: e,
|
|
680
680
|
variant: t = "default",
|
|
681
681
|
size: n = "icon",
|
|
@@ -683,8 +683,8 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
683
683
|
children: r,
|
|
684
684
|
...a
|
|
685
685
|
}) => {
|
|
686
|
-
let
|
|
687
|
-
return o === "submitted" ?
|
|
686
|
+
let l = /* @__PURE__ */ i(pn, { className: "size-4" });
|
|
687
|
+
return o === "submitted" ? l = /* @__PURE__ */ i(hn, { className: "size-4 animate-spin" }) : o === "streaming" ? l = /* @__PURE__ */ i(gn, { className: "size-3.5 fill-current" }) : o === "error" && (l = /* @__PURE__ */ i(he, { className: "size-4" })), /* @__PURE__ */ i(
|
|
688
688
|
ee,
|
|
689
689
|
{
|
|
690
690
|
className: y(
|
|
@@ -705,26 +705,26 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
705
705
|
type: o === "streaming" ? "button" : "submit",
|
|
706
706
|
variant: t,
|
|
707
707
|
...a,
|
|
708
|
-
children: r ??
|
|
708
|
+
children: r ?? l
|
|
709
709
|
}
|
|
710
710
|
);
|
|
711
711
|
};
|
|
712
|
-
function
|
|
713
|
-
return /* @__PURE__ */
|
|
712
|
+
function At({ delayDuration: e = 400, ...t }) {
|
|
713
|
+
return /* @__PURE__ */ i(K.Provider, { "data-slot": "tooltip-provider", delayDuration: e, ...t });
|
|
714
714
|
}
|
|
715
|
-
function
|
|
716
|
-
return /* @__PURE__ */
|
|
715
|
+
function It({ ...e }) {
|
|
716
|
+
return /* @__PURE__ */ i(At, { children: /* @__PURE__ */ i(K.Root, { "data-slot": "tooltip", ...e }) });
|
|
717
717
|
}
|
|
718
|
-
function
|
|
719
|
-
return /* @__PURE__ */
|
|
718
|
+
function Rt({ ...e }) {
|
|
719
|
+
return /* @__PURE__ */ i(K.Trigger, { "data-slot": "tooltip-trigger", ...e });
|
|
720
720
|
}
|
|
721
|
-
function
|
|
721
|
+
function Ot({
|
|
722
722
|
className: e,
|
|
723
723
|
sideOffset: t = 0,
|
|
724
724
|
children: n,
|
|
725
725
|
...o
|
|
726
726
|
}) {
|
|
727
|
-
return /* @__PURE__ */
|
|
727
|
+
return /* @__PURE__ */ i(K.Portal, { children: /* @__PURE__ */ w(
|
|
728
728
|
K.Content,
|
|
729
729
|
{
|
|
730
730
|
"data-slot": "tooltip-content",
|
|
@@ -736,78 +736,90 @@ function It({
|
|
|
736
736
|
...o,
|
|
737
737
|
children: [
|
|
738
738
|
n,
|
|
739
|
-
/* @__PURE__ */
|
|
739
|
+
/* @__PURE__ */ i(K.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
740
740
|
]
|
|
741
741
|
}
|
|
742
742
|
) });
|
|
743
743
|
}
|
|
744
|
-
|
|
744
|
+
const be = 768;
|
|
745
|
+
function ao() {
|
|
746
|
+
const [e, t] = Ce.useState(void 0);
|
|
747
|
+
return Ce.useEffect(() => {
|
|
748
|
+
const n = window.matchMedia(`(max-width: ${be - 1}px)`), o = () => {
|
|
749
|
+
t(window.innerWidth < be);
|
|
750
|
+
};
|
|
751
|
+
return n.addEventListener("change", o), t(window.innerWidth < be), () => {
|
|
752
|
+
n.removeEventListener("change", o);
|
|
753
|
+
};
|
|
754
|
+
}, []), !!e;
|
|
755
|
+
}
|
|
756
|
+
function io({
|
|
745
757
|
onSend: e,
|
|
746
758
|
status: t,
|
|
747
759
|
isLastMessageFinished: n,
|
|
748
760
|
stop: o,
|
|
749
761
|
isErrorVisible: r,
|
|
750
762
|
conversationId: a,
|
|
751
|
-
className:
|
|
763
|
+
className: l
|
|
752
764
|
}) {
|
|
753
|
-
const { t: c } = M(["chat", "translation"]), { composer: s } =
|
|
765
|
+
const { t: c } = M(["chat", "translation"]), { composer: s } = V(), [p, h] = B(""), [f, b] = B([]), m = ao(), k = Ge(null), d = Ge(null);
|
|
754
766
|
Q(() => {
|
|
755
|
-
a === "/" &&
|
|
756
|
-
}, [a]);
|
|
757
|
-
const
|
|
767
|
+
!m && a === "/" && k.current && k.current.focus();
|
|
768
|
+
}, [a, m]);
|
|
769
|
+
const v = oe((E) => {
|
|
758
770
|
if (E.target.files) {
|
|
759
|
-
const
|
|
760
|
-
if (
|
|
761
|
-
|
|
771
|
+
const I = Array.from(E.target.files), U = s?.attachments?.maxSize;
|
|
772
|
+
if (U && I.filter((ne) => ne.size > U).length > 0) {
|
|
773
|
+
In.error(c("file_too_large", { size: U }));
|
|
762
774
|
return;
|
|
763
775
|
}
|
|
764
|
-
b((
|
|
776
|
+
b((z) => [...z, ...I]);
|
|
765
777
|
}
|
|
766
778
|
E.target.value = "";
|
|
767
|
-
}, [s, c]),
|
|
768
|
-
b((
|
|
769
|
-
}, []),
|
|
770
|
-
if (E.preventDefault(), !
|
|
771
|
-
const
|
|
772
|
-
f.forEach((
|
|
779
|
+
}, [s, c]), x = oe((E) => {
|
|
780
|
+
b((I) => I.filter((U, z) => z !== E));
|
|
781
|
+
}, []), g = t === "streaming" && !n, R = (E) => {
|
|
782
|
+
if (E.preventDefault(), !g && (p.trim() || f.length > 0)) {
|
|
783
|
+
const I = new DataTransfer();
|
|
784
|
+
f.forEach((U) => I.items.add(U)), e(p, I.files), h(""), b([]);
|
|
773
785
|
}
|
|
774
786
|
};
|
|
775
|
-
return /* @__PURE__ */
|
|
776
|
-
/* @__PURE__ */
|
|
787
|
+
return /* @__PURE__ */ i("div", { className: y("shrink-0 px-4 pb-5 pt-2 md:px-6 md:pb-6 w-full", l), children: /* @__PURE__ */ i("div", { className: "max-w-4xl mx-auto w-full", children: /* @__PURE__ */ w(Qn, { onSubmit: R, children: [
|
|
788
|
+
/* @__PURE__ */ i(
|
|
777
789
|
"input",
|
|
778
790
|
{
|
|
779
791
|
type: "file",
|
|
780
|
-
ref:
|
|
781
|
-
onChange:
|
|
792
|
+
ref: d,
|
|
793
|
+
onChange: v,
|
|
782
794
|
multiple: !0,
|
|
783
795
|
accept: s?.attachments?.types?.join(",") || "image/*,text/*,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx",
|
|
784
796
|
className: "hidden"
|
|
785
797
|
}
|
|
786
798
|
),
|
|
787
799
|
/* @__PURE__ */ w("div", { className: "flex flex-col flex-1 gap-2", children: [
|
|
788
|
-
f.length > 0 && /* @__PURE__ */
|
|
789
|
-
E.type.startsWith("image/") ? /* @__PURE__ */
|
|
790
|
-
/* @__PURE__ */
|
|
791
|
-
/* @__PURE__ */
|
|
792
|
-
] }, `${E.name}-${
|
|
793
|
-
/* @__PURE__ */
|
|
794
|
-
|
|
800
|
+
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: [
|
|
801
|
+
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(St, { className: "size-3.5 text-muted-foreground shrink-0" }),
|
|
802
|
+
/* @__PURE__ */ i("span", { className: "max-w-[120px] truncate text-xs font-medium text-foreground/80", children: E.name }),
|
|
803
|
+
/* @__PURE__ */ i("button", { type: "button", onClick: () => x(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" }) })
|
|
804
|
+
] }, `${E.name}-${I}`)) }),
|
|
805
|
+
/* @__PURE__ */ i(
|
|
806
|
+
eo,
|
|
795
807
|
{
|
|
796
|
-
ref:
|
|
808
|
+
ref: k,
|
|
797
809
|
onChange: (E) => h(E.target.value),
|
|
798
810
|
value: p,
|
|
799
|
-
autoFocus: !
|
|
811
|
+
autoFocus: !m,
|
|
800
812
|
placeholder: s?.placeholder ? c(s.placeholder) : c("input_placeholder")
|
|
801
813
|
}
|
|
802
814
|
)
|
|
803
815
|
] }),
|
|
804
|
-
/* @__PURE__ */ w(
|
|
805
|
-
/* @__PURE__ */
|
|
806
|
-
/* @__PURE__ */
|
|
807
|
-
/* @__PURE__ */
|
|
816
|
+
/* @__PURE__ */ w(to, { children: [
|
|
817
|
+
/* @__PURE__ */ i(no, { children: (s?.attachments?.enabled ?? !1) && /* @__PURE__ */ w(It, { children: [
|
|
818
|
+
/* @__PURE__ */ i(Rt, { asChild: !0, children: /* @__PURE__ */ i(oo, { variant: "ghost", onClick: () => d.current?.click(), disabled: g, children: /* @__PURE__ */ i(mn, { className: "size-4" }) }) }),
|
|
819
|
+
/* @__PURE__ */ i(Ot, { children: c("attach_file") })
|
|
808
820
|
] }) }),
|
|
809
|
-
/* @__PURE__ */
|
|
810
|
-
|
|
821
|
+
/* @__PURE__ */ i(
|
|
822
|
+
ro,
|
|
811
823
|
{
|
|
812
824
|
disabled: t !== "streaming" && !p && f.length === 0,
|
|
813
825
|
status: r ? "error" : t === "error" ? void 0 : n ? "ready" : t,
|
|
@@ -817,19 +829,19 @@ function ro({
|
|
|
817
829
|
] })
|
|
818
830
|
] }) }) });
|
|
819
831
|
}
|
|
820
|
-
const
|
|
832
|
+
const lo = ({
|
|
821
833
|
suggestion: e,
|
|
822
834
|
onClick: t,
|
|
823
835
|
className: n,
|
|
824
836
|
variant: o = "outline",
|
|
825
837
|
size: r = "sm",
|
|
826
838
|
children: a,
|
|
827
|
-
...
|
|
839
|
+
...l
|
|
828
840
|
}) => {
|
|
829
841
|
const c = () => {
|
|
830
842
|
t?.(e);
|
|
831
843
|
};
|
|
832
|
-
return /* @__PURE__ */
|
|
844
|
+
return /* @__PURE__ */ i(
|
|
833
845
|
ee,
|
|
834
846
|
{
|
|
835
847
|
className: y("cursor-pointer rounded-full px-4", n),
|
|
@@ -837,12 +849,12 @@ const ao = ({
|
|
|
837
849
|
size: r,
|
|
838
850
|
type: "button",
|
|
839
851
|
variant: o,
|
|
840
|
-
...
|
|
852
|
+
...l,
|
|
841
853
|
children: a ?? e
|
|
842
854
|
}
|
|
843
855
|
);
|
|
844
|
-
},
|
|
845
|
-
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } =
|
|
856
|
+
}, so = ({ onSuggestionClick: e, icons: t }) => {
|
|
857
|
+
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } = V(), a = r?.prompts ?? [], l = a.map((h) => {
|
|
846
858
|
const f = typeof h == "string" ? h : h.text;
|
|
847
859
|
return n(f);
|
|
848
860
|
}).filter((h) => h !== null && h !== ""), c = o.dir() === "rtl", s = r?.greeting ? n(r.greeting) ?? r.greeting : n("welcome.title"), p = r?.subtitle ? n(r.subtitle) : null;
|
|
@@ -853,22 +865,22 @@ const ao = ({
|
|
|
853
865
|
className: "flex flex-col items-center justify-center min-h-[60vh] text-center px-6 animate-in fade-in duration-700 ease-out",
|
|
854
866
|
children: [
|
|
855
867
|
r?.icon && /* @__PURE__ */ w("div", { className: "mb-8 relative flex items-center justify-center", children: [
|
|
856
|
-
/* @__PURE__ */
|
|
857
|
-
/* @__PURE__ */
|
|
868
|
+
/* @__PURE__ */ i("div", { className: "absolute size-24 rounded-full bg-primary/5 blur-[40px] animate-pulse" }),
|
|
869
|
+
/* @__PURE__ */ i("div", { className: "relative size-12 md:size-16 rounded-xl bg-gradient-to-br from-surface to-secondary flex items-center justify-center border border-border/10 dark:border-border/5 shadow-xl shadow-black/10", children: typeof r.icon == "function" ? /* @__PURE__ */ i(r.icon, { className: "size-6 md:size-8 text-primary opacity-80" }) : r.icon })
|
|
858
870
|
] }),
|
|
859
871
|
(s || p) && /* @__PURE__ */ w("div", { className: "space-y-3 mb-12 max-w-xl mx-auto", children: [
|
|
860
|
-
s && /* @__PURE__ */
|
|
861
|
-
p && /* @__PURE__ */
|
|
872
|
+
s && /* @__PURE__ */ i("h1", { className: "text-2xl md:text-3xl font-black tracking-tight leading-tight text-foreground", children: s }),
|
|
873
|
+
p && /* @__PURE__ */ i("p", { className: "text-muted-foreground text-base md:text-lg font-medium max-w-md mx-auto leading-relaxed opacity-85 dark:opacity-70", children: p })
|
|
862
874
|
] }),
|
|
863
|
-
|
|
864
|
-
const b = a[f], m = typeof b != "string" ? b.icon : null, k = t && t[f % t.length] ? t[f % t.length] :
|
|
865
|
-
return /* @__PURE__ */
|
|
875
|
+
l.length > 0 && /* @__PURE__ */ i("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-3 w-full max-w-xl", children: l.map((h, f) => {
|
|
876
|
+
const b = a[f], m = typeof b != "string" ? b.icon : null, k = t && t[f % t.length] ? t[f % t.length] : fn, d = m || k;
|
|
877
|
+
return /* @__PURE__ */ i(
|
|
866
878
|
"div",
|
|
867
879
|
{
|
|
868
880
|
className: "animate-in fade-in slide-in-from-bottom-3 duration-700 fill-mode-both",
|
|
869
881
|
style: { animationDelay: `${f * 80}ms` },
|
|
870
882
|
children: /* @__PURE__ */ w(
|
|
871
|
-
|
|
883
|
+
lo,
|
|
872
884
|
{
|
|
873
885
|
onClick: () => e(h),
|
|
874
886
|
suggestion: h,
|
|
@@ -882,10 +894,10 @@ const ao = ({
|
|
|
882
894
|
),
|
|
883
895
|
children: [
|
|
884
896
|
/* @__PURE__ */ w("div", { className: "flex items-center gap-3 w-full text-start", children: [
|
|
885
|
-
/* @__PURE__ */
|
|
886
|
-
/* @__PURE__ */
|
|
897
|
+
/* @__PURE__ */ i("div", { className: "size-8 rounded-lg bg-secondary/35 dark:bg-background/40 flex items-center justify-center shrink-0 border border-border/10 dark:border-border/5 group-hover:bg-primary group-hover:text-primary-foreground transition-colors duration-300", children: /* @__PURE__ */ i(d, { className: "size-4" }) }),
|
|
898
|
+
/* @__PURE__ */ i("div", { className: "flex flex-col gap-0.5 overflow-hidden", children: /* @__PURE__ */ i("span", { className: "text-sm md:text-base font-semibold text-foreground/80 group-hover:text-foreground transition-colors", children: h.length > 60 ? h.substring(0, 60) + "..." : h }) })
|
|
887
899
|
] }),
|
|
888
|
-
/* @__PURE__ */
|
|
900
|
+
/* @__PURE__ */ i("div", { className: y(
|
|
889
901
|
"absolute bottom-0 left-0 w-full h-[1.5px] bg-primary scale-x-0 group-hover:scale-x-100 transition-transform duration-500",
|
|
890
902
|
c ? "origin-right" : "origin-left"
|
|
891
903
|
) })
|
|
@@ -899,7 +911,7 @@ const ao = ({
|
|
|
899
911
|
]
|
|
900
912
|
}
|
|
901
913
|
);
|
|
902
|
-
},
|
|
914
|
+
}, Ft = ({ className: e, from: t, ...n }) => /* @__PURE__ */ i(
|
|
903
915
|
"div",
|
|
904
916
|
{
|
|
905
917
|
className: y(
|
|
@@ -909,7 +921,7 @@ const ao = ({
|
|
|
909
921
|
),
|
|
910
922
|
...n
|
|
911
923
|
}
|
|
912
|
-
),
|
|
924
|
+
), Lt = ({ children: e, className: t, isPlain: n, ...o }) => /* @__PURE__ */ i(
|
|
913
925
|
"div",
|
|
914
926
|
{
|
|
915
927
|
className: y(
|
|
@@ -933,7 +945,7 @@ const ao = ({
|
|
|
933
945
|
...o,
|
|
934
946
|
children: e
|
|
935
947
|
}
|
|
936
|
-
),
|
|
948
|
+
), co = ({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
937
949
|
"div",
|
|
938
950
|
{
|
|
939
951
|
className: y(
|
|
@@ -945,14 +957,14 @@ const ao = ({
|
|
|
945
957
|
...n,
|
|
946
958
|
children: t
|
|
947
959
|
}
|
|
948
|
-
),
|
|
960
|
+
), se = ({
|
|
949
961
|
tooltip: e,
|
|
950
962
|
children: t,
|
|
951
963
|
label: n,
|
|
952
964
|
className: o,
|
|
953
965
|
variant: r = "ghost",
|
|
954
966
|
size: a = "sm",
|
|
955
|
-
...
|
|
967
|
+
...l
|
|
956
968
|
}) => {
|
|
957
969
|
const c = /* @__PURE__ */ w(
|
|
958
970
|
ee,
|
|
@@ -968,16 +980,16 @@ const ao = ({
|
|
|
968
980
|
size: a,
|
|
969
981
|
type: "button",
|
|
970
982
|
variant: r,
|
|
971
|
-
...
|
|
983
|
+
...l,
|
|
972
984
|
children: [
|
|
973
985
|
t,
|
|
974
|
-
/* @__PURE__ */
|
|
986
|
+
/* @__PURE__ */ i("span", { className: "sr-only", children: n ?? e })
|
|
975
987
|
]
|
|
976
988
|
}
|
|
977
989
|
);
|
|
978
|
-
return e ? /* @__PURE__ */
|
|
979
|
-
/* @__PURE__ */
|
|
980
|
-
/* @__PURE__ */
|
|
990
|
+
return e ? /* @__PURE__ */ i(At, { children: /* @__PURE__ */ w(It, { children: [
|
|
991
|
+
/* @__PURE__ */ i(Rt, { asChild: !0, children: c }),
|
|
992
|
+
/* @__PURE__ */ i(Ot, { children: /* @__PURE__ */ i("p", { children: e }) })
|
|
981
993
|
] }) }) : c;
|
|
982
994
|
};
|
|
983
995
|
class le {
|
|
@@ -998,13 +1010,13 @@ class le {
|
|
|
998
1010
|
le.prototype.normal = {};
|
|
999
1011
|
le.prototype.property = {};
|
|
1000
1012
|
le.prototype.space = void 0;
|
|
1001
|
-
function
|
|
1013
|
+
function Dt(e, t) {
|
|
1002
1014
|
const n = {}, o = {};
|
|
1003
1015
|
for (const r of e)
|
|
1004
1016
|
Object.assign(n, r.property), Object.assign(o, r.normal);
|
|
1005
1017
|
return new le(n, o, t);
|
|
1006
1018
|
}
|
|
1007
|
-
function
|
|
1019
|
+
function ae(e) {
|
|
1008
1020
|
return e.toLowerCase();
|
|
1009
1021
|
}
|
|
1010
1022
|
class D {
|
|
@@ -1032,25 +1044,25 @@ D.prototype.overloadedBoolean = !1;
|
|
|
1032
1044
|
D.prototype.property = "";
|
|
1033
1045
|
D.prototype.spaceSeparated = !1;
|
|
1034
1046
|
D.prototype.space = void 0;
|
|
1035
|
-
let
|
|
1036
|
-
const _ = G(),
|
|
1047
|
+
let uo = 0;
|
|
1048
|
+
const _ = G(), A = G(), Ae = G(), u = G(), T = G(), Z = G(), P = G();
|
|
1037
1049
|
function G() {
|
|
1038
|
-
return 2 ** ++
|
|
1050
|
+
return 2 ** ++uo;
|
|
1039
1051
|
}
|
|
1040
|
-
const
|
|
1052
|
+
const Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1041
1053
|
__proto__: null,
|
|
1042
1054
|
boolean: _,
|
|
1043
|
-
booleanish:
|
|
1055
|
+
booleanish: A,
|
|
1044
1056
|
commaOrSpaceSeparated: P,
|
|
1045
1057
|
commaSeparated: Z,
|
|
1046
1058
|
number: u,
|
|
1047
|
-
overloadedBoolean:
|
|
1059
|
+
overloadedBoolean: Ae,
|
|
1048
1060
|
spaceSeparated: T
|
|
1049
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1061
|
+
}, Symbol.toStringTag, { value: "Module" })), ke = (
|
|
1050
1062
|
/** @type {ReadonlyArray<keyof typeof types>} */
|
|
1051
|
-
Object.keys(
|
|
1063
|
+
Object.keys(Ie)
|
|
1052
1064
|
);
|
|
1053
|
-
class
|
|
1065
|
+
class Be extends D {
|
|
1054
1066
|
/**
|
|
1055
1067
|
* @constructor
|
|
1056
1068
|
* @param {string} property
|
|
@@ -1066,37 +1078,37 @@ class $e extends D {
|
|
|
1066
1078
|
*/
|
|
1067
1079
|
constructor(t, n, o, r) {
|
|
1068
1080
|
let a = -1;
|
|
1069
|
-
if (super(t, n),
|
|
1070
|
-
for (; ++a <
|
|
1071
|
-
const
|
|
1072
|
-
|
|
1081
|
+
if (super(t, n), Xe(this, "space", r), typeof o == "number")
|
|
1082
|
+
for (; ++a < ke.length; ) {
|
|
1083
|
+
const l = ke[a];
|
|
1084
|
+
Xe(this, ke[a], (o & Ie[l]) === Ie[l]);
|
|
1073
1085
|
}
|
|
1074
1086
|
}
|
|
1075
1087
|
}
|
|
1076
|
-
|
|
1077
|
-
function
|
|
1088
|
+
Be.prototype.defined = !0;
|
|
1089
|
+
function Xe(e, t, n) {
|
|
1078
1090
|
n && (e[t] = n);
|
|
1079
1091
|
}
|
|
1080
1092
|
function te(e) {
|
|
1081
1093
|
const t = {}, n = {};
|
|
1082
1094
|
for (const [o, r] of Object.entries(e.properties)) {
|
|
1083
|
-
const a = new
|
|
1095
|
+
const a = new Be(
|
|
1084
1096
|
o,
|
|
1085
1097
|
e.transform(e.attributes || {}, o),
|
|
1086
1098
|
r,
|
|
1087
1099
|
e.space
|
|
1088
1100
|
);
|
|
1089
|
-
e.mustUseProperty && e.mustUseProperty.includes(o) && (a.mustUseProperty = !0), t[o] = a, n[
|
|
1101
|
+
e.mustUseProperty && e.mustUseProperty.includes(o) && (a.mustUseProperty = !0), t[o] = a, n[ae(o)] = o, n[ae(a.attribute)] = o;
|
|
1090
1102
|
}
|
|
1091
1103
|
return new le(t, n, e.space);
|
|
1092
1104
|
}
|
|
1093
|
-
const
|
|
1105
|
+
const Pt = te({
|
|
1094
1106
|
properties: {
|
|
1095
1107
|
ariaActiveDescendant: null,
|
|
1096
|
-
ariaAtomic:
|
|
1108
|
+
ariaAtomic: A,
|
|
1097
1109
|
ariaAutoComplete: null,
|
|
1098
|
-
ariaBusy:
|
|
1099
|
-
ariaChecked:
|
|
1110
|
+
ariaBusy: A,
|
|
1111
|
+
ariaChecked: A,
|
|
1100
1112
|
ariaColCount: u,
|
|
1101
1113
|
ariaColIndex: u,
|
|
1102
1114
|
ariaColSpan: u,
|
|
@@ -1104,36 +1116,36 @@ const Lt = te({
|
|
|
1104
1116
|
ariaCurrent: null,
|
|
1105
1117
|
ariaDescribedBy: T,
|
|
1106
1118
|
ariaDetails: null,
|
|
1107
|
-
ariaDisabled:
|
|
1119
|
+
ariaDisabled: A,
|
|
1108
1120
|
ariaDropEffect: T,
|
|
1109
1121
|
ariaErrorMessage: null,
|
|
1110
|
-
ariaExpanded:
|
|
1122
|
+
ariaExpanded: A,
|
|
1111
1123
|
ariaFlowTo: T,
|
|
1112
|
-
ariaGrabbed:
|
|
1124
|
+
ariaGrabbed: A,
|
|
1113
1125
|
ariaHasPopup: null,
|
|
1114
|
-
ariaHidden:
|
|
1126
|
+
ariaHidden: A,
|
|
1115
1127
|
ariaInvalid: null,
|
|
1116
1128
|
ariaKeyShortcuts: null,
|
|
1117
1129
|
ariaLabel: null,
|
|
1118
1130
|
ariaLabelledBy: T,
|
|
1119
1131
|
ariaLevel: u,
|
|
1120
1132
|
ariaLive: null,
|
|
1121
|
-
ariaModal:
|
|
1122
|
-
ariaMultiLine:
|
|
1123
|
-
ariaMultiSelectable:
|
|
1133
|
+
ariaModal: A,
|
|
1134
|
+
ariaMultiLine: A,
|
|
1135
|
+
ariaMultiSelectable: A,
|
|
1124
1136
|
ariaOrientation: null,
|
|
1125
1137
|
ariaOwns: T,
|
|
1126
1138
|
ariaPlaceholder: null,
|
|
1127
1139
|
ariaPosInSet: u,
|
|
1128
|
-
ariaPressed:
|
|
1129
|
-
ariaReadOnly:
|
|
1140
|
+
ariaPressed: A,
|
|
1141
|
+
ariaReadOnly: A,
|
|
1130
1142
|
ariaRelevant: null,
|
|
1131
|
-
ariaRequired:
|
|
1143
|
+
ariaRequired: A,
|
|
1132
1144
|
ariaRoleDescription: T,
|
|
1133
1145
|
ariaRowCount: u,
|
|
1134
1146
|
ariaRowIndex: u,
|
|
1135
1147
|
ariaRowSpan: u,
|
|
1136
|
-
ariaSelected:
|
|
1148
|
+
ariaSelected: A,
|
|
1137
1149
|
ariaSetSize: u,
|
|
1138
1150
|
ariaSort: null,
|
|
1139
1151
|
ariaValueMax: u,
|
|
@@ -1146,13 +1158,13 @@ const Lt = te({
|
|
|
1146
1158
|
return t === "role" ? t : "aria-" + t.slice(4).toLowerCase();
|
|
1147
1159
|
}
|
|
1148
1160
|
});
|
|
1149
|
-
function
|
|
1161
|
+
function Mt(e, t) {
|
|
1150
1162
|
return t in e ? e[t] : t;
|
|
1151
1163
|
}
|
|
1152
|
-
function
|
|
1153
|
-
return
|
|
1164
|
+
function zt(e, t) {
|
|
1165
|
+
return Mt(e, t.toLowerCase());
|
|
1154
1166
|
}
|
|
1155
|
-
const
|
|
1167
|
+
const po = te({
|
|
1156
1168
|
attributes: {
|
|
1157
1169
|
acceptcharset: "accept-charset",
|
|
1158
1170
|
classname: "class",
|
|
@@ -1187,7 +1199,7 @@ const co = te({
|
|
|
1187
1199
|
cols: u,
|
|
1188
1200
|
colSpan: null,
|
|
1189
1201
|
content: null,
|
|
1190
|
-
contentEditable:
|
|
1202
|
+
contentEditable: A,
|
|
1191
1203
|
controls: _,
|
|
1192
1204
|
controlsList: T,
|
|
1193
1205
|
coords: u | Z,
|
|
@@ -1200,8 +1212,8 @@ const co = te({
|
|
|
1200
1212
|
dir: null,
|
|
1201
1213
|
dirName: null,
|
|
1202
1214
|
disabled: _,
|
|
1203
|
-
download:
|
|
1204
|
-
draggable:
|
|
1215
|
+
download: Ae,
|
|
1216
|
+
draggable: A,
|
|
1205
1217
|
encType: null,
|
|
1206
1218
|
enterKeyHint: null,
|
|
1207
1219
|
fetchPriority: null,
|
|
@@ -1213,7 +1225,7 @@ const co = te({
|
|
|
1213
1225
|
formTarget: null,
|
|
1214
1226
|
headers: T,
|
|
1215
1227
|
height: u,
|
|
1216
|
-
hidden:
|
|
1228
|
+
hidden: Ae,
|
|
1217
1229
|
high: u,
|
|
1218
1230
|
href: null,
|
|
1219
1231
|
hrefLang: null,
|
|
@@ -1372,7 +1384,7 @@ const co = te({
|
|
|
1372
1384
|
sizes: null,
|
|
1373
1385
|
slot: null,
|
|
1374
1386
|
span: u,
|
|
1375
|
-
spellCheck:
|
|
1387
|
+
spellCheck: A,
|
|
1376
1388
|
src: null,
|
|
1377
1389
|
srcDoc: null,
|
|
1378
1390
|
srcLang: null,
|
|
@@ -1387,7 +1399,7 @@ const co = te({
|
|
|
1387
1399
|
type: null,
|
|
1388
1400
|
typeMustMatch: _,
|
|
1389
1401
|
useMap: null,
|
|
1390
|
-
value:
|
|
1402
|
+
value: A,
|
|
1391
1403
|
width: u,
|
|
1392
1404
|
wrap: null,
|
|
1393
1405
|
writingSuggestions: null,
|
|
@@ -1479,7 +1491,7 @@ const co = te({
|
|
|
1479
1491
|
// `<table>`
|
|
1480
1492
|
scheme: null,
|
|
1481
1493
|
// `<meta>`
|
|
1482
|
-
scrolling:
|
|
1494
|
+
scrolling: A,
|
|
1483
1495
|
// `<frame>`. Use overflow in the child context
|
|
1484
1496
|
standby: null,
|
|
1485
1497
|
// `<object>`
|
|
@@ -1512,8 +1524,8 @@ const co = te({
|
|
|
1512
1524
|
unselectable: null
|
|
1513
1525
|
},
|
|
1514
1526
|
space: "html",
|
|
1515
|
-
transform:
|
|
1516
|
-
}),
|
|
1527
|
+
transform: zt
|
|
1528
|
+
}), ho = te({
|
|
1517
1529
|
attributes: {
|
|
1518
1530
|
accentHeight: "accent-height",
|
|
1519
1531
|
alignmentBaseline: "alignment-baseline",
|
|
@@ -2071,8 +2083,8 @@ const co = te({
|
|
|
2071
2083
|
zoomAndPan: null
|
|
2072
2084
|
},
|
|
2073
2085
|
space: "svg",
|
|
2074
|
-
transform:
|
|
2075
|
-
}),
|
|
2086
|
+
transform: Mt
|
|
2087
|
+
}), $t = te({
|
|
2076
2088
|
properties: {
|
|
2077
2089
|
xLinkActuate: null,
|
|
2078
2090
|
xLinkArcRole: null,
|
|
@@ -2086,103 +2098,103 @@ const co = te({
|
|
|
2086
2098
|
transform(e, t) {
|
|
2087
2099
|
return "xlink:" + t.slice(5).toLowerCase();
|
|
2088
2100
|
}
|
|
2089
|
-
}),
|
|
2101
|
+
}), Ut = te({
|
|
2090
2102
|
attributes: { xmlnsxlink: "xmlns:xlink" },
|
|
2091
2103
|
properties: { xmlnsXLink: null, xmlns: null },
|
|
2092
2104
|
space: "xmlns",
|
|
2093
|
-
transform:
|
|
2094
|
-
}),
|
|
2105
|
+
transform: zt
|
|
2106
|
+
}), Bt = te({
|
|
2095
2107
|
properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
|
|
2096
2108
|
space: "xml",
|
|
2097
2109
|
transform(e, t) {
|
|
2098
2110
|
return "xml:" + t.slice(3).toLowerCase();
|
|
2099
2111
|
}
|
|
2100
|
-
}),
|
|
2101
|
-
function
|
|
2102
|
-
const n =
|
|
2112
|
+
}), go = /[A-Z]/g, Ke = /-[a-z]/g, mo = /^data[-\w.:]+$/i;
|
|
2113
|
+
function fo(e, t) {
|
|
2114
|
+
const n = ae(t);
|
|
2103
2115
|
let o = t, r = D;
|
|
2104
2116
|
if (n in e.normal)
|
|
2105
2117
|
return e.property[e.normal[n]];
|
|
2106
|
-
if (n.length > 4 && n.slice(0, 4) === "data" &&
|
|
2118
|
+
if (n.length > 4 && n.slice(0, 4) === "data" && mo.test(t)) {
|
|
2107
2119
|
if (t.charAt(4) === "-") {
|
|
2108
|
-
const a = t.slice(5).replace(
|
|
2120
|
+
const a = t.slice(5).replace(Ke, ko);
|
|
2109
2121
|
o = "data" + a.charAt(0).toUpperCase() + a.slice(1);
|
|
2110
2122
|
} else {
|
|
2111
2123
|
const a = t.slice(4);
|
|
2112
|
-
if (!
|
|
2113
|
-
let
|
|
2114
|
-
|
|
2124
|
+
if (!Ke.test(a)) {
|
|
2125
|
+
let l = a.replace(go, bo);
|
|
2126
|
+
l.charAt(0) !== "-" && (l = "-" + l), t = "data" + l;
|
|
2115
2127
|
}
|
|
2116
2128
|
}
|
|
2117
|
-
r =
|
|
2129
|
+
r = Be;
|
|
2118
2130
|
}
|
|
2119
2131
|
return new r(o, t);
|
|
2120
2132
|
}
|
|
2121
|
-
function
|
|
2133
|
+
function bo(e) {
|
|
2122
2134
|
return "-" + e.toLowerCase();
|
|
2123
2135
|
}
|
|
2124
|
-
function
|
|
2136
|
+
function ko(e) {
|
|
2125
2137
|
return e.charAt(1).toUpperCase();
|
|
2126
2138
|
}
|
|
2127
|
-
const
|
|
2128
|
-
function
|
|
2139
|
+
const yo = Dt([Pt, po, $t, Ut, Bt], "html"), vo = Dt([Pt, ho, $t, Ut, Bt], "svg");
|
|
2140
|
+
function Ze(e) {
|
|
2129
2141
|
const t = [], n = String(e || "");
|
|
2130
2142
|
let o = n.indexOf(","), r = 0, a = !1;
|
|
2131
2143
|
for (; !a; ) {
|
|
2132
2144
|
o === -1 && (o = n.length, a = !0);
|
|
2133
|
-
const
|
|
2134
|
-
(
|
|
2145
|
+
const l = n.slice(r, o).trim();
|
|
2146
|
+
(l || !a) && t.push(l), r = o + 1, o = n.indexOf(",", r);
|
|
2135
2147
|
}
|
|
2136
2148
|
return t;
|
|
2137
2149
|
}
|
|
2138
|
-
const
|
|
2139
|
-
function
|
|
2150
|
+
const Je = /[#.]/g;
|
|
2151
|
+
function wo(e, t) {
|
|
2140
2152
|
const n = e || "", o = {};
|
|
2141
|
-
let r = 0, a,
|
|
2153
|
+
let r = 0, a, l;
|
|
2142
2154
|
for (; r < n.length; ) {
|
|
2143
|
-
|
|
2144
|
-
const c =
|
|
2145
|
-
s && (a ? a === "#" ? o.id = s : Array.isArray(o.className) ? o.className.push(s) : o.className = [s] :
|
|
2155
|
+
Je.lastIndex = r;
|
|
2156
|
+
const c = Je.exec(n), s = n.slice(r, c ? c.index : n.length);
|
|
2157
|
+
s && (a ? a === "#" ? o.id = s : Array.isArray(o.className) ? o.className.push(s) : o.className = [s] : l = s, r += s.length), c && (a = c[0], r++);
|
|
2146
2158
|
}
|
|
2147
2159
|
return {
|
|
2148
2160
|
type: "element",
|
|
2149
2161
|
// @ts-expect-error: tag name is parsed.
|
|
2150
|
-
tagName:
|
|
2162
|
+
tagName: l || t || "div",
|
|
2151
2163
|
properties: o,
|
|
2152
2164
|
children: []
|
|
2153
2165
|
};
|
|
2154
2166
|
}
|
|
2155
|
-
function
|
|
2167
|
+
function Qe(e) {
|
|
2156
2168
|
const t = String(e || "").trim();
|
|
2157
2169
|
return t ? t.split(/[ \t\n\r\f]+/g) : [];
|
|
2158
2170
|
}
|
|
2159
|
-
function
|
|
2160
|
-
const o = n ?
|
|
2161
|
-
function r(a,
|
|
2171
|
+
function Ht(e, t, n) {
|
|
2172
|
+
const o = n ? Eo(n) : void 0;
|
|
2173
|
+
function r(a, l, ...c) {
|
|
2162
2174
|
let s;
|
|
2163
2175
|
if (a == null) {
|
|
2164
2176
|
s = { type: "root", children: [] };
|
|
2165
2177
|
const p = (
|
|
2166
2178
|
/** @type {Child} */
|
|
2167
|
-
|
|
2179
|
+
l
|
|
2168
2180
|
);
|
|
2169
2181
|
c.unshift(p);
|
|
2170
2182
|
} else {
|
|
2171
|
-
s =
|
|
2183
|
+
s = wo(a, t);
|
|
2172
2184
|
const p = s.tagName.toLowerCase(), h = o ? o.get(p) : void 0;
|
|
2173
|
-
if (s.tagName = h || p,
|
|
2174
|
-
c.unshift(
|
|
2185
|
+
if (s.tagName = h || p, xo(l))
|
|
2186
|
+
c.unshift(l);
|
|
2175
2187
|
else
|
|
2176
|
-
for (const [f, b] of Object.entries(
|
|
2177
|
-
|
|
2188
|
+
for (const [f, b] of Object.entries(l))
|
|
2189
|
+
_o(e, s.properties, f, b);
|
|
2178
2190
|
}
|
|
2179
2191
|
for (const p of c)
|
|
2180
|
-
|
|
2192
|
+
Re(s.children, p);
|
|
2181
2193
|
return s.type === "element" && s.tagName === "template" && (s.content = { type: "root", children: s.children }, s.children = []), s;
|
|
2182
2194
|
}
|
|
2183
2195
|
return r;
|
|
2184
2196
|
}
|
|
2185
|
-
function
|
|
2197
|
+
function xo(e) {
|
|
2186
2198
|
if (e === null || typeof e != "object" || Array.isArray(e))
|
|
2187
2199
|
return !0;
|
|
2188
2200
|
if (typeof e.type != "string") return !1;
|
|
@@ -2198,29 +2210,29 @@ function vo(e) {
|
|
|
2198
2210
|
/** @type {ReadonlyArray<unknown>} */
|
|
2199
2211
|
r
|
|
2200
2212
|
);
|
|
2201
|
-
for (const
|
|
2202
|
-
if (typeof
|
|
2213
|
+
for (const l of a)
|
|
2214
|
+
if (typeof l != "number" && typeof l != "string")
|
|
2203
2215
|
return !0;
|
|
2204
2216
|
}
|
|
2205
2217
|
}
|
|
2206
2218
|
return !!("children" in e && Array.isArray(e.children));
|
|
2207
2219
|
}
|
|
2208
|
-
function
|
|
2209
|
-
const r =
|
|
2220
|
+
function _o(e, t, n, o) {
|
|
2221
|
+
const r = fo(e, n);
|
|
2210
2222
|
let a;
|
|
2211
2223
|
if (o != null) {
|
|
2212
2224
|
if (typeof o == "number") {
|
|
2213
2225
|
if (Number.isNaN(o)) return;
|
|
2214
2226
|
a = o;
|
|
2215
|
-
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a =
|
|
2227
|
+
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a = Qe(o) : r.commaSeparated ? a = Ze(o) : r.commaOrSpaceSeparated ? a = Qe(Ze(o).join(" ")) : a = et(r, r.property, o) : Array.isArray(o) ? a = [...o] : a = r.property === "style" ? So(o) : String(o);
|
|
2216
2228
|
if (Array.isArray(a)) {
|
|
2217
|
-
const
|
|
2229
|
+
const l = [];
|
|
2218
2230
|
for (const c of a)
|
|
2219
|
-
|
|
2231
|
+
l.push(
|
|
2220
2232
|
/** @type {number | string} */
|
|
2221
|
-
|
|
2233
|
+
et(r, r.property, c)
|
|
2222
2234
|
);
|
|
2223
|
-
a =
|
|
2235
|
+
a = l;
|
|
2224
2236
|
}
|
|
2225
2237
|
r.property === "className" && Array.isArray(t.className) && (a = t.className.concat(
|
|
2226
2238
|
/** @type {Array<number | string> | number | string} */
|
|
@@ -2228,39 +2240,39 @@ function wo(e, t, n, o) {
|
|
|
2228
2240
|
)), t[r.property] = a;
|
|
2229
2241
|
}
|
|
2230
2242
|
}
|
|
2231
|
-
function
|
|
2243
|
+
function Re(e, t) {
|
|
2232
2244
|
if (t != null) if (typeof t == "number" || typeof t == "string")
|
|
2233
2245
|
e.push({ type: "text", value: String(t) });
|
|
2234
2246
|
else if (Array.isArray(t))
|
|
2235
2247
|
for (const n of t)
|
|
2236
|
-
|
|
2248
|
+
Re(e, n);
|
|
2237
2249
|
else if (typeof t == "object" && "type" in t)
|
|
2238
|
-
t.type === "root" ?
|
|
2250
|
+
t.type === "root" ? Re(e, t.children) : e.push(t);
|
|
2239
2251
|
else
|
|
2240
2252
|
throw new Error("Expected node, nodes, or string, got `" + t + "`");
|
|
2241
2253
|
}
|
|
2242
|
-
function
|
|
2254
|
+
function et(e, t, n) {
|
|
2243
2255
|
if (typeof n == "string") {
|
|
2244
2256
|
if (e.number && n && !Number.isNaN(Number(n)))
|
|
2245
2257
|
return Number(n);
|
|
2246
|
-
if ((e.boolean || e.overloadedBoolean) && (n === "" ||
|
|
2258
|
+
if ((e.boolean || e.overloadedBoolean) && (n === "" || ae(n) === ae(t)))
|
|
2247
2259
|
return !0;
|
|
2248
2260
|
}
|
|
2249
2261
|
return n;
|
|
2250
2262
|
}
|
|
2251
|
-
function
|
|
2263
|
+
function So(e) {
|
|
2252
2264
|
const t = [];
|
|
2253
2265
|
for (const [n, o] of Object.entries(e))
|
|
2254
2266
|
t.push([n, o].join(": "));
|
|
2255
2267
|
return t.join("; ");
|
|
2256
2268
|
}
|
|
2257
|
-
function
|
|
2269
|
+
function Eo(e) {
|
|
2258
2270
|
const t = /* @__PURE__ */ new Map();
|
|
2259
2271
|
for (const n of e)
|
|
2260
2272
|
t.set(n.toLowerCase(), n);
|
|
2261
2273
|
return t;
|
|
2262
2274
|
}
|
|
2263
|
-
const
|
|
2275
|
+
const No = [
|
|
2264
2276
|
"altGlyph",
|
|
2265
2277
|
"altGlyphDef",
|
|
2266
2278
|
"altGlyphItem",
|
|
@@ -2300,28 +2312,28 @@ const So = [
|
|
|
2300
2312
|
"solidColor",
|
|
2301
2313
|
"textArea",
|
|
2302
2314
|
"textPath"
|
|
2303
|
-
],
|
|
2315
|
+
], To = Ht(yo, "div"), Co = Ht(vo, "g", No), ye = {
|
|
2304
2316
|
html: "http://www.w3.org/1999/xhtml",
|
|
2305
2317
|
svg: "http://www.w3.org/2000/svg"
|
|
2306
2318
|
};
|
|
2307
|
-
function
|
|
2308
|
-
return
|
|
2319
|
+
function Ao(e, t) {
|
|
2320
|
+
return qt(e, {}) || { type: "root", children: [] };
|
|
2309
2321
|
}
|
|
2310
|
-
function
|
|
2311
|
-
const n =
|
|
2322
|
+
function qt(e, t) {
|
|
2323
|
+
const n = Io(e, t);
|
|
2312
2324
|
return n && t.afterTransform && t.afterTransform(e, n), n;
|
|
2313
2325
|
}
|
|
2314
|
-
function
|
|
2326
|
+
function Io(e, t) {
|
|
2315
2327
|
switch (e.nodeType) {
|
|
2316
2328
|
case 1:
|
|
2317
|
-
return
|
|
2329
|
+
return Lo(
|
|
2318
2330
|
/** @type {Element} */
|
|
2319
2331
|
e,
|
|
2320
2332
|
t
|
|
2321
2333
|
);
|
|
2322
2334
|
// Ignore: Attr (2).
|
|
2323
2335
|
case 3:
|
|
2324
|
-
return
|
|
2336
|
+
return Oo(
|
|
2325
2337
|
/** @type {Text} */
|
|
2326
2338
|
e
|
|
2327
2339
|
);
|
|
@@ -2330,20 +2342,20 @@ function Co(e, t) {
|
|
|
2330
2342
|
// Removed: Entity (6)
|
|
2331
2343
|
// Ignore: Processing instruction (7).
|
|
2332
2344
|
case 8:
|
|
2333
|
-
return
|
|
2345
|
+
return Fo(
|
|
2334
2346
|
/** @type {Comment} */
|
|
2335
2347
|
e
|
|
2336
2348
|
);
|
|
2337
2349
|
case 9:
|
|
2338
|
-
return
|
|
2350
|
+
return tt(
|
|
2339
2351
|
/** @type {Document} */
|
|
2340
2352
|
e,
|
|
2341
2353
|
t
|
|
2342
2354
|
);
|
|
2343
2355
|
case 10:
|
|
2344
|
-
return
|
|
2356
|
+
return Ro();
|
|
2345
2357
|
case 11:
|
|
2346
|
-
return
|
|
2358
|
+
return tt(
|
|
2347
2359
|
/** @type {DocumentFragment} */
|
|
2348
2360
|
e,
|
|
2349
2361
|
t
|
|
@@ -2352,50 +2364,50 @@ function Co(e, t) {
|
|
|
2352
2364
|
return;
|
|
2353
2365
|
}
|
|
2354
2366
|
}
|
|
2355
|
-
function
|
|
2356
|
-
return { type: "root", children:
|
|
2367
|
+
function tt(e, t) {
|
|
2368
|
+
return { type: "root", children: jt(e, t) };
|
|
2357
2369
|
}
|
|
2358
|
-
function
|
|
2370
|
+
function Ro() {
|
|
2359
2371
|
return { type: "doctype" };
|
|
2360
2372
|
}
|
|
2361
|
-
function
|
|
2373
|
+
function Oo(e) {
|
|
2362
2374
|
return { type: "text", value: e.nodeValue || "" };
|
|
2363
2375
|
}
|
|
2364
|
-
function
|
|
2376
|
+
function Fo(e) {
|
|
2365
2377
|
return { type: "comment", value: e.nodeValue || "" };
|
|
2366
2378
|
}
|
|
2367
|
-
function
|
|
2368
|
-
const n = e.namespaceURI, o = n ===
|
|
2379
|
+
function Lo(e, t) {
|
|
2380
|
+
const n = e.namespaceURI, o = n === ye.svg ? Co : To, r = n === ye.html ? e.tagName.toLowerCase() : e.tagName, a = (
|
|
2369
2381
|
// @ts-expect-error: DOM types are wrong, content can exist.
|
|
2370
|
-
n ===
|
|
2371
|
-
),
|
|
2382
|
+
n === ye.html && r === "template" ? e.content : e
|
|
2383
|
+
), l = e.getAttributeNames(), c = {};
|
|
2372
2384
|
let s = -1;
|
|
2373
|
-
for (; ++s <
|
|
2374
|
-
c[
|
|
2375
|
-
return o(r, c,
|
|
2385
|
+
for (; ++s < l.length; )
|
|
2386
|
+
c[l[s]] = e.getAttribute(l[s]) || "";
|
|
2387
|
+
return o(r, c, jt(a, t));
|
|
2376
2388
|
}
|
|
2377
|
-
function
|
|
2389
|
+
function jt(e, t) {
|
|
2378
2390
|
const n = e.childNodes, o = [];
|
|
2379
2391
|
let r = -1;
|
|
2380
2392
|
for (; ++r < n.length; ) {
|
|
2381
|
-
const a =
|
|
2393
|
+
const a = qt(n[r], t);
|
|
2382
2394
|
a !== void 0 && o.push(a);
|
|
2383
2395
|
}
|
|
2384
2396
|
return o;
|
|
2385
2397
|
}
|
|
2386
2398
|
new DOMParser();
|
|
2387
|
-
function
|
|
2388
|
-
const n =
|
|
2399
|
+
function Do(e, t) {
|
|
2400
|
+
const n = Po(e);
|
|
2389
2401
|
return (
|
|
2390
2402
|
/** @type {Root} */
|
|
2391
|
-
|
|
2403
|
+
Ao(n)
|
|
2392
2404
|
);
|
|
2393
2405
|
}
|
|
2394
|
-
function
|
|
2406
|
+
function Po(e) {
|
|
2395
2407
|
const t = document.createElement("template");
|
|
2396
2408
|
return t.innerHTML = e, t.content;
|
|
2397
2409
|
}
|
|
2398
|
-
const
|
|
2410
|
+
const He = (
|
|
2399
2411
|
// Note: overloads in JSDoc can’t yet use different `@template`s.
|
|
2400
2412
|
/**
|
|
2401
2413
|
* @type {(
|
|
@@ -2412,29 +2424,29 @@ const Ue = (
|
|
|
2412
2424
|
*/
|
|
2413
2425
|
(function(e) {
|
|
2414
2426
|
if (e == null)
|
|
2415
|
-
return
|
|
2427
|
+
return Uo;
|
|
2416
2428
|
if (typeof e == "function")
|
|
2417
|
-
return
|
|
2429
|
+
return me(e);
|
|
2418
2430
|
if (typeof e == "object")
|
|
2419
|
-
return Array.isArray(e) ?
|
|
2431
|
+
return Array.isArray(e) ? Mo(e) : (
|
|
2420
2432
|
// Cast because `ReadonlyArray` goes into the above but `isArray`
|
|
2421
2433
|
// narrows to `Array`.
|
|
2422
|
-
|
|
2434
|
+
zo(
|
|
2423
2435
|
/** @type {Props} */
|
|
2424
2436
|
e
|
|
2425
2437
|
)
|
|
2426
2438
|
);
|
|
2427
2439
|
if (typeof e == "string")
|
|
2428
|
-
return
|
|
2440
|
+
return $o(e);
|
|
2429
2441
|
throw new Error("Expected function, string, or object as test");
|
|
2430
2442
|
})
|
|
2431
2443
|
);
|
|
2432
|
-
function
|
|
2444
|
+
function Mo(e) {
|
|
2433
2445
|
const t = [];
|
|
2434
2446
|
let n = -1;
|
|
2435
2447
|
for (; ++n < e.length; )
|
|
2436
|
-
t[n] =
|
|
2437
|
-
return
|
|
2448
|
+
t[n] = He(e[n]);
|
|
2449
|
+
return me(o);
|
|
2438
2450
|
function o(...r) {
|
|
2439
2451
|
let a = -1;
|
|
2440
2452
|
for (; ++a < t.length; )
|
|
@@ -2442,12 +2454,12 @@ function Do(e) {
|
|
|
2442
2454
|
return !1;
|
|
2443
2455
|
}
|
|
2444
2456
|
}
|
|
2445
|
-
function
|
|
2457
|
+
function zo(e) {
|
|
2446
2458
|
const t = (
|
|
2447
2459
|
/** @type {Record<string, unknown>} */
|
|
2448
2460
|
e
|
|
2449
2461
|
);
|
|
2450
|
-
return
|
|
2462
|
+
return me(n);
|
|
2451
2463
|
function n(o) {
|
|
2452
2464
|
const r = (
|
|
2453
2465
|
/** @type {Record<string, unknown>} */
|
|
@@ -2460,16 +2472,16 @@ function Po(e) {
|
|
|
2460
2472
|
return !0;
|
|
2461
2473
|
}
|
|
2462
2474
|
}
|
|
2463
|
-
function
|
|
2464
|
-
return
|
|
2475
|
+
function $o(e) {
|
|
2476
|
+
return me(t);
|
|
2465
2477
|
function t(n) {
|
|
2466
2478
|
return n && n.type === e;
|
|
2467
2479
|
}
|
|
2468
2480
|
}
|
|
2469
|
-
function
|
|
2481
|
+
function me(e) {
|
|
2470
2482
|
return t;
|
|
2471
2483
|
function t(n, o, r) {
|
|
2472
|
-
return !!(
|
|
2484
|
+
return !!(Bo(n) && e.call(
|
|
2473
2485
|
this,
|
|
2474
2486
|
n,
|
|
2475
2487
|
typeof o == "number" ? o : void 0,
|
|
@@ -2477,13 +2489,13 @@ function ge(e) {
|
|
|
2477
2489
|
));
|
|
2478
2490
|
}
|
|
2479
2491
|
}
|
|
2480
|
-
function
|
|
2492
|
+
function Uo() {
|
|
2481
2493
|
return !0;
|
|
2482
2494
|
}
|
|
2483
|
-
function
|
|
2495
|
+
function Bo(e) {
|
|
2484
2496
|
return e !== null && typeof e == "object" && "type" in e;
|
|
2485
2497
|
}
|
|
2486
|
-
const
|
|
2498
|
+
const nt = (
|
|
2487
2499
|
// Note: overloads like this are needed to support optional generics.
|
|
2488
2500
|
/**
|
|
2489
2501
|
* @type {(
|
|
@@ -2498,7 +2510,7 @@ const et = (
|
|
|
2498
2510
|
* @returns {UnistNode | undefined}
|
|
2499
2511
|
*/
|
|
2500
2512
|
(function(e, t, n) {
|
|
2501
|
-
const o =
|
|
2513
|
+
const o = He(n);
|
|
2502
2514
|
if (!e || !e.type || !e.children)
|
|
2503
2515
|
throw new Error("Expected parent node");
|
|
2504
2516
|
if (typeof t == "number") {
|
|
@@ -2510,7 +2522,7 @@ const et = (
|
|
|
2510
2522
|
if (o(e.children[t], t, e))
|
|
2511
2523
|
return e.children[t];
|
|
2512
2524
|
})
|
|
2513
|
-
),
|
|
2525
|
+
), W = (
|
|
2514
2526
|
// Note: overloads in JSDoc can’t yet use different `@template`s.
|
|
2515
2527
|
/**
|
|
2516
2528
|
* @type {(
|
|
@@ -2526,22 +2538,22 @@ const et = (
|
|
|
2526
2538
|
*/
|
|
2527
2539
|
(function(e) {
|
|
2528
2540
|
if (e == null)
|
|
2529
|
-
return
|
|
2541
|
+
return jo;
|
|
2530
2542
|
if (typeof e == "string")
|
|
2531
|
-
return
|
|
2543
|
+
return qo(e);
|
|
2532
2544
|
if (typeof e == "object")
|
|
2533
|
-
return
|
|
2545
|
+
return Ho(e);
|
|
2534
2546
|
if (typeof e == "function")
|
|
2535
|
-
return
|
|
2547
|
+
return qe(e);
|
|
2536
2548
|
throw new Error("Expected function, string, or array as `test`");
|
|
2537
2549
|
})
|
|
2538
2550
|
);
|
|
2539
|
-
function
|
|
2551
|
+
function Ho(e) {
|
|
2540
2552
|
const t = [];
|
|
2541
2553
|
let n = -1;
|
|
2542
2554
|
for (; ++n < e.length; )
|
|
2543
|
-
t[n] =
|
|
2544
|
-
return
|
|
2555
|
+
t[n] = W(e[n]);
|
|
2556
|
+
return qe(o);
|
|
2545
2557
|
function o(...r) {
|
|
2546
2558
|
let a = -1;
|
|
2547
2559
|
for (; ++a < t.length; )
|
|
@@ -2549,16 +2561,16 @@ function Uo(e) {
|
|
|
2549
2561
|
return !1;
|
|
2550
2562
|
}
|
|
2551
2563
|
}
|
|
2552
|
-
function
|
|
2553
|
-
return
|
|
2564
|
+
function qo(e) {
|
|
2565
|
+
return qe(t);
|
|
2554
2566
|
function t(n) {
|
|
2555
2567
|
return n.tagName === e;
|
|
2556
2568
|
}
|
|
2557
2569
|
}
|
|
2558
|
-
function
|
|
2570
|
+
function qe(e) {
|
|
2559
2571
|
return t;
|
|
2560
2572
|
function t(n, o, r) {
|
|
2561
|
-
return !!(
|
|
2573
|
+
return !!(Go(n) && e.call(
|
|
2562
2574
|
this,
|
|
2563
2575
|
n,
|
|
2564
2576
|
typeof o == "number" ? o : void 0,
|
|
@@ -2566,13 +2578,13 @@ function Be(e) {
|
|
|
2566
2578
|
));
|
|
2567
2579
|
}
|
|
2568
2580
|
}
|
|
2569
|
-
function
|
|
2581
|
+
function jo(e) {
|
|
2570
2582
|
return !!(e && typeof e == "object" && "type" in e && e.type === "element" && "tagName" in e && typeof e.tagName == "string");
|
|
2571
2583
|
}
|
|
2572
|
-
function
|
|
2584
|
+
function Go(e) {
|
|
2573
2585
|
return e !== null && typeof e == "object" && "type" in e && "tagName" in e;
|
|
2574
2586
|
}
|
|
2575
|
-
const
|
|
2587
|
+
const ot = /\n/g, rt = /[\t ]+/g, Oe = W("br"), at = W(Qo), Wo = W("p"), it = W("tr"), Vo = W([
|
|
2576
2588
|
// List from: <https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements>
|
|
2577
2589
|
"datalist",
|
|
2578
2590
|
"head",
|
|
@@ -2586,10 +2598,10 @@ const tt = /\n/g, nt = /[\t ]+/g, Ie = V("br"), ot = V(Zo), qo = V("p"), rt = V(
|
|
|
2586
2598
|
"template",
|
|
2587
2599
|
"title",
|
|
2588
2600
|
// Hidden attribute.
|
|
2589
|
-
|
|
2601
|
+
Jo,
|
|
2590
2602
|
// From: <https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3>
|
|
2591
|
-
|
|
2592
|
-
]),
|
|
2603
|
+
er
|
|
2604
|
+
]), Gt = W([
|
|
2593
2605
|
"address",
|
|
2594
2606
|
// Flow content
|
|
2595
2607
|
"article",
|
|
@@ -2671,71 +2683,71 @@ const tt = /\n/g, nt = /[\t ]+/g, Ie = V("br"), ot = V(Zo), qo = V("p"), rt = V(
|
|
|
2671
2683
|
"xmp"
|
|
2672
2684
|
// Flow content (legacy)
|
|
2673
2685
|
]);
|
|
2674
|
-
function
|
|
2675
|
-
const n = t || {}, o = "children" in e ? e.children : [], r =
|
|
2686
|
+
function Yo(e, t) {
|
|
2687
|
+
const n = t || {}, o = "children" in e ? e.children : [], r = Gt(e), a = Yt(e, {
|
|
2676
2688
|
whitespace: n.whitespace || "normal"
|
|
2677
|
-
}),
|
|
2678
|
-
(e.type === "text" || e.type === "comment") &&
|
|
2679
|
-
...
|
|
2689
|
+
}), l = [];
|
|
2690
|
+
(e.type === "text" || e.type === "comment") && l.push(
|
|
2691
|
+
...Vt(e, {
|
|
2680
2692
|
breakBefore: !0,
|
|
2681
2693
|
breakAfter: !0
|
|
2682
2694
|
})
|
|
2683
2695
|
);
|
|
2684
2696
|
let c = -1;
|
|
2685
2697
|
for (; ++c < o.length; )
|
|
2686
|
-
|
|
2687
|
-
...
|
|
2698
|
+
l.push(
|
|
2699
|
+
...Wt(
|
|
2688
2700
|
o[c],
|
|
2689
2701
|
// @ts-expect-error: `tree` is a parent if we’re here.
|
|
2690
2702
|
e,
|
|
2691
2703
|
{
|
|
2692
2704
|
whitespace: a,
|
|
2693
2705
|
breakBefore: c ? void 0 : r,
|
|
2694
|
-
breakAfter: c < o.length - 1 ?
|
|
2706
|
+
breakAfter: c < o.length - 1 ? Oe(o[c + 1]) : r
|
|
2695
2707
|
}
|
|
2696
2708
|
)
|
|
2697
2709
|
);
|
|
2698
2710
|
const s = [];
|
|
2699
2711
|
let p;
|
|
2700
|
-
for (c = -1; ++c <
|
|
2701
|
-
const h =
|
|
2712
|
+
for (c = -1; ++c < l.length; ) {
|
|
2713
|
+
const h = l[c];
|
|
2702
2714
|
typeof h == "number" ? p !== void 0 && h > p && (p = h) : h && (p !== void 0 && p > -1 && s.push(`
|
|
2703
2715
|
`.repeat(p) || " "), p = -1, s.push(h));
|
|
2704
2716
|
}
|
|
2705
2717
|
return s.join("");
|
|
2706
2718
|
}
|
|
2707
|
-
function
|
|
2708
|
-
return e.type === "element" ?
|
|
2719
|
+
function Wt(e, t, n) {
|
|
2720
|
+
return e.type === "element" ? Xo(e, t, n) : e.type === "text" ? n.whitespace === "normal" ? Vt(e, n) : Ko(e) : [];
|
|
2709
2721
|
}
|
|
2710
|
-
function
|
|
2711
|
-
const o =
|
|
2712
|
-
let a = -1,
|
|
2713
|
-
if (
|
|
2714
|
-
return
|
|
2722
|
+
function Xo(e, t, n) {
|
|
2723
|
+
const o = Yt(e, n), r = e.children || [];
|
|
2724
|
+
let a = -1, l = [];
|
|
2725
|
+
if (Vo(e))
|
|
2726
|
+
return l;
|
|
2715
2727
|
let c, s;
|
|
2716
|
-
for (
|
|
2717
|
-
|
|
2718
|
-
` :
|
|
2719
|
-
|
|
2720
|
-
|
|
2728
|
+
for (Oe(e) || it(e) && // @ts-expect-error: something up with types of parents.
|
|
2729
|
+
nt(t, e, it) ? s = `
|
|
2730
|
+
` : Wo(e) ? (c = 2, s = 2) : Gt(e) && (c = 1, s = 1); ++a < r.length; )
|
|
2731
|
+
l = l.concat(
|
|
2732
|
+
Wt(r[a], e, {
|
|
2721
2733
|
whitespace: o,
|
|
2722
2734
|
breakBefore: a ? void 0 : c,
|
|
2723
|
-
breakAfter: a < r.length - 1 ?
|
|
2735
|
+
breakAfter: a < r.length - 1 ? Oe(r[a + 1]) : s
|
|
2724
2736
|
})
|
|
2725
2737
|
);
|
|
2726
|
-
return
|
|
2727
|
-
|
|
2738
|
+
return at(e) && // @ts-expect-error: something up with types of parents.
|
|
2739
|
+
nt(t, e, at) && l.push(" "), c && l.unshift(c), s && l.push(s), l;
|
|
2728
2740
|
}
|
|
2729
|
-
function
|
|
2741
|
+
function Vt(e, t) {
|
|
2730
2742
|
const n = String(e.value), o = [], r = [];
|
|
2731
2743
|
let a = 0;
|
|
2732
2744
|
for (; a <= n.length; ) {
|
|
2733
|
-
|
|
2734
|
-
const s =
|
|
2745
|
+
ot.lastIndex = a;
|
|
2746
|
+
const s = ot.exec(n), p = s && "index" in s ? s.index : n.length;
|
|
2735
2747
|
o.push(
|
|
2736
2748
|
// Any sequence of collapsible spaces and tabs immediately preceding or
|
|
2737
2749
|
// following a segment break is removed.
|
|
2738
|
-
|
|
2750
|
+
Zo(
|
|
2739
2751
|
// […] ignoring bidi formatting characters (characters with the
|
|
2740
2752
|
// Bidi_Control property [UAX9]: ALM, LTR, RTL, LRE-RLO, LRI-PDI) as if
|
|
2741
2753
|
// they were not there.
|
|
@@ -2745,25 +2757,25 @@ function Gt(e, t) {
|
|
|
2745
2757
|
)
|
|
2746
2758
|
), a = p + 1;
|
|
2747
2759
|
}
|
|
2748
|
-
let
|
|
2749
|
-
for (; ++
|
|
2750
|
-
o[
|
|
2760
|
+
let l = -1, c;
|
|
2761
|
+
for (; ++l < o.length; )
|
|
2762
|
+
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);
|
|
2751
2763
|
return r;
|
|
2752
2764
|
}
|
|
2753
|
-
function
|
|
2765
|
+
function Ko(e) {
|
|
2754
2766
|
return [String(e.value)];
|
|
2755
2767
|
}
|
|
2756
|
-
function
|
|
2768
|
+
function Zo(e, t, n) {
|
|
2757
2769
|
const o = [];
|
|
2758
2770
|
let r = 0, a;
|
|
2759
2771
|
for (; r < e.length; ) {
|
|
2760
|
-
|
|
2761
|
-
const
|
|
2762
|
-
a =
|
|
2772
|
+
rt.lastIndex = r;
|
|
2773
|
+
const l = rt.exec(e);
|
|
2774
|
+
a = l ? l.index : e.length, !r && !a && l && !t && o.push(""), r !== a && o.push(e.slice(r, a)), r = l ? a + l[0].length : a;
|
|
2763
2775
|
}
|
|
2764
2776
|
return r !== a && !n && o.push(""), o.join(" ");
|
|
2765
2777
|
}
|
|
2766
|
-
function
|
|
2778
|
+
function Yt(e, t) {
|
|
2767
2779
|
if (e.type === "element") {
|
|
2768
2780
|
const n = e.properties || {};
|
|
2769
2781
|
switch (e.tagName) {
|
|
@@ -2784,20 +2796,20 @@ function Vt(e, t) {
|
|
|
2784
2796
|
}
|
|
2785
2797
|
return t.whitespace;
|
|
2786
2798
|
}
|
|
2787
|
-
function
|
|
2799
|
+
function Jo(e) {
|
|
2788
2800
|
return !!(e.properties || {}).hidden;
|
|
2789
2801
|
}
|
|
2790
|
-
function
|
|
2802
|
+
function Qo(e) {
|
|
2791
2803
|
return e.tagName === "td" || e.tagName === "th";
|
|
2792
2804
|
}
|
|
2793
|
-
function
|
|
2805
|
+
function er(e) {
|
|
2794
2806
|
return e.tagName === "dialog" && !(e.properties || {}).open;
|
|
2795
2807
|
}
|
|
2796
|
-
const
|
|
2797
|
-
function
|
|
2808
|
+
const Xt = [], tr = !0, lt = !1, Kt = "skip";
|
|
2809
|
+
function nr(e, t, n, o) {
|
|
2798
2810
|
let r;
|
|
2799
2811
|
r = t;
|
|
2800
|
-
const a =
|
|
2812
|
+
const a = He(r), l = 1;
|
|
2801
2813
|
c(e, void 0, [])();
|
|
2802
2814
|
function c(s, p, h) {
|
|
2803
2815
|
const f = (
|
|
@@ -2818,44 +2830,44 @@ function er(e, t, n, o) {
|
|
|
2818
2830
|
}
|
|
2819
2831
|
return b;
|
|
2820
2832
|
function b() {
|
|
2821
|
-
let m =
|
|
2822
|
-
if (a(s, p, h[h.length - 1] || void 0) && (m =
|
|
2833
|
+
let m = Xt, k, d, v;
|
|
2834
|
+
if (a(s, p, h[h.length - 1] || void 0) && (m = or(n(s, h)), m[0] === lt))
|
|
2823
2835
|
return m;
|
|
2824
2836
|
if ("children" in s && s.children) {
|
|
2825
2837
|
const x = (
|
|
2826
2838
|
/** @type {UnistParent} */
|
|
2827
2839
|
s
|
|
2828
2840
|
);
|
|
2829
|
-
if (x.children && m[0] !==
|
|
2830
|
-
for (d = -1 +
|
|
2841
|
+
if (x.children && m[0] !== Kt)
|
|
2842
|
+
for (d = -1 + l, v = h.concat(x); d > -1 && d < x.children.length; ) {
|
|
2831
2843
|
const g = x.children[d];
|
|
2832
|
-
if (k = c(g, d, v)(), k[0] ===
|
|
2844
|
+
if (k = c(g, d, v)(), k[0] === lt)
|
|
2833
2845
|
return k;
|
|
2834
|
-
d = typeof k[1] == "number" ? k[1] : d +
|
|
2846
|
+
d = typeof k[1] == "number" ? k[1] : d + l;
|
|
2835
2847
|
}
|
|
2836
2848
|
}
|
|
2837
2849
|
return m;
|
|
2838
2850
|
}
|
|
2839
2851
|
}
|
|
2840
2852
|
}
|
|
2841
|
-
function
|
|
2842
|
-
return Array.isArray(e) ? e : typeof e == "number" ? [
|
|
2853
|
+
function or(e) {
|
|
2854
|
+
return Array.isArray(e) ? e : typeof e == "number" ? [tr, e] : e == null ? Xt : [e];
|
|
2843
2855
|
}
|
|
2844
|
-
const
|
|
2845
|
-
function
|
|
2846
|
-
const t = e ||
|
|
2856
|
+
const rr = {}, ar = [];
|
|
2857
|
+
function ir(e) {
|
|
2858
|
+
const t = e || rr;
|
|
2847
2859
|
return function(n, o) {
|
|
2848
|
-
|
|
2849
|
-
const
|
|
2860
|
+
nr(n, "element", function(r, a) {
|
|
2861
|
+
const l = Array.isArray(r.properties.className) ? r.properties.className : ar, c = l.includes("language-math"), s = l.includes("math-display"), p = l.includes("math-inline");
|
|
2850
2862
|
let h = s;
|
|
2851
2863
|
if (!c && !s && !p)
|
|
2852
2864
|
return;
|
|
2853
2865
|
let f = a[a.length - 1], b = r;
|
|
2854
2866
|
if (r.tagName === "code" && c && f && f.type === "element" && f.tagName === "pre" && (b = f, f = a[a.length - 2], h = !0), !f) return;
|
|
2855
|
-
const m =
|
|
2867
|
+
const m = Yo(b, { whitespace: "pre" });
|
|
2856
2868
|
let k;
|
|
2857
2869
|
try {
|
|
2858
|
-
k =
|
|
2870
|
+
k = We.renderToString(m, {
|
|
2859
2871
|
...t,
|
|
2860
2872
|
displayMode: h,
|
|
2861
2873
|
throwOnError: !0
|
|
@@ -2873,7 +2885,7 @@ function rr(e) {
|
|
|
2873
2885
|
source: "rehype-katex"
|
|
2874
2886
|
});
|
|
2875
2887
|
try {
|
|
2876
|
-
k =
|
|
2888
|
+
k = We.renderToString(m, {
|
|
2877
2889
|
...t,
|
|
2878
2890
|
displayMode: h,
|
|
2879
2891
|
strict: "ignore",
|
|
@@ -2895,20 +2907,20 @@ function rr(e) {
|
|
|
2895
2907
|
}
|
|
2896
2908
|
}
|
|
2897
2909
|
typeof k == "string" && (k = /** @type {Array<ElementContent>} */
|
|
2898
|
-
|
|
2910
|
+
Do(k).children);
|
|
2899
2911
|
const d = f.children.indexOf(b);
|
|
2900
|
-
return f.children.splice(d, 1, ...k),
|
|
2912
|
+
return f.children.splice(d, 1, ...k), Kt;
|
|
2901
2913
|
});
|
|
2902
2914
|
};
|
|
2903
2915
|
}
|
|
2904
|
-
function
|
|
2916
|
+
function lr(e, t) {
|
|
2905
2917
|
const n = String(e);
|
|
2906
|
-
let o = n.indexOf(t), r = o, a = 0,
|
|
2918
|
+
let o = n.indexOf(t), r = o, a = 0, l = 0;
|
|
2907
2919
|
for (; o !== -1; )
|
|
2908
|
-
o === r ? ++a >
|
|
2909
|
-
return
|
|
2920
|
+
o === r ? ++a > l && (l = a) : a = 1, r = o + t.length, o = n.indexOf(t, r);
|
|
2921
|
+
return l;
|
|
2910
2922
|
}
|
|
2911
|
-
function
|
|
2923
|
+
function sr() {
|
|
2912
2924
|
return {
|
|
2913
2925
|
enter: {
|
|
2914
2926
|
mathFlow: e,
|
|
@@ -2920,7 +2932,7 @@ function lr() {
|
|
|
2920
2932
|
mathFlowFence: o,
|
|
2921
2933
|
mathFlowFenceMeta: n,
|
|
2922
2934
|
mathFlowValue: c,
|
|
2923
|
-
mathText:
|
|
2935
|
+
mathText: l,
|
|
2924
2936
|
mathTextData: c
|
|
2925
2937
|
}
|
|
2926
2938
|
};
|
|
@@ -2974,7 +2986,7 @@ function lr() {
|
|
|
2974
2986
|
s
|
|
2975
2987
|
), this.buffer();
|
|
2976
2988
|
}
|
|
2977
|
-
function
|
|
2989
|
+
function l(s) {
|
|
2978
2990
|
const p = this.resume(), h = this.stack[this.stack.length - 1];
|
|
2979
2991
|
h.type, this.exit(s), h.value = p, /** @type {Array<HastElementContent>} */
|
|
2980
2992
|
// @ts-expect-error: we defined it in `enterMathFlow`.
|
|
@@ -2984,7 +2996,7 @@ function lr() {
|
|
|
2984
2996
|
this.config.enter.data.call(this, s), this.config.exit.data.call(this, s);
|
|
2985
2997
|
}
|
|
2986
2998
|
}
|
|
2987
|
-
function
|
|
2999
|
+
function cr(e) {
|
|
2988
3000
|
let t = (e || {}).singleDollarTextMath;
|
|
2989
3001
|
return t == null && (t = !0), o.peek = r, {
|
|
2990
3002
|
unsafe: [
|
|
@@ -3001,8 +3013,8 @@ function ir(e) {
|
|
|
3001
3013
|
],
|
|
3002
3014
|
handlers: { math: n, inlineMath: o }
|
|
3003
3015
|
};
|
|
3004
|
-
function n(a,
|
|
3005
|
-
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(
|
|
3016
|
+
function n(a, l, c, s) {
|
|
3017
|
+
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(lr(p, "$") + 1, 2)), b = c.enter("mathFlow");
|
|
3006
3018
|
let m = h.move(f);
|
|
3007
3019
|
if (a.meta) {
|
|
3008
3020
|
const k = c.enter("mathFlowMeta");
|
|
@@ -3020,7 +3032,7 @@ function ir(e) {
|
|
|
3020
3032
|
`), p && (m += h.move(p + `
|
|
3021
3033
|
`)), m += h.move(f), b(), m;
|
|
3022
3034
|
}
|
|
3023
|
-
function o(a,
|
|
3035
|
+
function o(a, l, c) {
|
|
3024
3036
|
let s = a.value || "", p = 1;
|
|
3025
3037
|
for (t || p++; new RegExp("(^|[^$])" + "\\$".repeat(p) + "([^$]|$)").test(s); )
|
|
3026
3038
|
p++;
|
|
@@ -3046,51 +3058,51 @@ function ir(e) {
|
|
|
3046
3058
|
return "$";
|
|
3047
3059
|
}
|
|
3048
3060
|
}
|
|
3049
|
-
function
|
|
3061
|
+
function j(e) {
|
|
3050
3062
|
return e !== null && e < -2;
|
|
3051
3063
|
}
|
|
3052
|
-
function
|
|
3064
|
+
function st(e) {
|
|
3053
3065
|
return e === -2 || e === -1 || e === 32;
|
|
3054
3066
|
}
|
|
3055
|
-
function
|
|
3067
|
+
function ce(e, t, n, o) {
|
|
3056
3068
|
const r = o ? o - 1 : Number.POSITIVE_INFINITY;
|
|
3057
3069
|
let a = 0;
|
|
3058
|
-
return
|
|
3059
|
-
function
|
|
3060
|
-
return
|
|
3070
|
+
return l;
|
|
3071
|
+
function l(s) {
|
|
3072
|
+
return st(s) ? (e.enter(n), c(s)) : t(s);
|
|
3061
3073
|
}
|
|
3062
3074
|
function c(s) {
|
|
3063
|
-
return
|
|
3075
|
+
return st(s) && a++ < r ? (e.consume(s), c) : (e.exit(n), t(s));
|
|
3064
3076
|
}
|
|
3065
3077
|
}
|
|
3066
|
-
const
|
|
3067
|
-
tokenize:
|
|
3078
|
+
const ur = {
|
|
3079
|
+
tokenize: dr,
|
|
3068
3080
|
concrete: !0,
|
|
3069
3081
|
name: "mathFlow"
|
|
3070
|
-
},
|
|
3071
|
-
tokenize:
|
|
3082
|
+
}, ct = {
|
|
3083
|
+
tokenize: pr,
|
|
3072
3084
|
partial: !0
|
|
3073
3085
|
};
|
|
3074
|
-
function
|
|
3086
|
+
function dr(e, t, n) {
|
|
3075
3087
|
const o = this, r = o.events[o.events.length - 1], a = r && r[1].type === "linePrefix" ? r[2].sliceSerialize(r[1], !0).length : 0;
|
|
3076
|
-
let
|
|
3088
|
+
let l = 0;
|
|
3077
3089
|
return c;
|
|
3078
3090
|
function c(g) {
|
|
3079
3091
|
return e.enter("mathFlow"), e.enter("mathFlowFence"), e.enter("mathFlowFenceSequence"), s(g);
|
|
3080
3092
|
}
|
|
3081
3093
|
function s(g) {
|
|
3082
|
-
return g === 36 ? (e.consume(g),
|
|
3094
|
+
return g === 36 ? (e.consume(g), l++, s) : l < 2 ? n(g) : (e.exit("mathFlowFenceSequence"), ce(e, p, "whitespace")(g));
|
|
3083
3095
|
}
|
|
3084
3096
|
function p(g) {
|
|
3085
|
-
return g === null ||
|
|
3097
|
+
return g === null || j(g) ? f(g) : (e.enter("mathFlowFenceMeta"), e.enter("chunkString", {
|
|
3086
3098
|
contentType: "string"
|
|
3087
3099
|
}), h(g));
|
|
3088
3100
|
}
|
|
3089
3101
|
function h(g) {
|
|
3090
|
-
return g === null ||
|
|
3102
|
+
return g === null || j(g) ? (e.exit("chunkString"), e.exit("mathFlowFenceMeta"), f(g)) : g === 36 ? n(g) : (e.consume(g), h);
|
|
3091
3103
|
}
|
|
3092
3104
|
function f(g) {
|
|
3093
|
-
return e.exit("mathFlowFence"), o.interrupt ? t(g) : e.attempt(
|
|
3105
|
+
return e.exit("mathFlowFence"), o.interrupt ? t(g) : e.attempt(ct, b, v)(g);
|
|
3094
3106
|
}
|
|
3095
3107
|
function b(g) {
|
|
3096
3108
|
return e.attempt({
|
|
@@ -3099,70 +3111,70 @@ function cr(e, t, n) {
|
|
|
3099
3111
|
}, v, m)(g);
|
|
3100
3112
|
}
|
|
3101
3113
|
function m(g) {
|
|
3102
|
-
return (a ?
|
|
3114
|
+
return (a ? ce(e, k, "linePrefix", a + 1) : k)(g);
|
|
3103
3115
|
}
|
|
3104
3116
|
function k(g) {
|
|
3105
|
-
return g === null ? v(g) :
|
|
3117
|
+
return g === null ? v(g) : j(g) ? e.attempt(ct, b, v)(g) : (e.enter("mathFlowValue"), d(g));
|
|
3106
3118
|
}
|
|
3107
3119
|
function d(g) {
|
|
3108
|
-
return g === null ||
|
|
3120
|
+
return g === null || j(g) ? (e.exit("mathFlowValue"), k(g)) : (e.consume(g), d);
|
|
3109
3121
|
}
|
|
3110
3122
|
function v(g) {
|
|
3111
3123
|
return e.exit("mathFlow"), t(g);
|
|
3112
3124
|
}
|
|
3113
|
-
function x(g,
|
|
3114
|
-
let
|
|
3115
|
-
return
|
|
3116
|
-
function
|
|
3117
|
-
return g.enter("mathFlowFence"), g.enter("mathFlowFenceSequence"),
|
|
3125
|
+
function x(g, R, E) {
|
|
3126
|
+
let I = 0;
|
|
3127
|
+
return ce(g, U, "linePrefix", o.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
|
|
3128
|
+
function U(O) {
|
|
3129
|
+
return g.enter("mathFlowFence"), g.enter("mathFlowFenceSequence"), z(O);
|
|
3118
3130
|
}
|
|
3119
|
-
function
|
|
3120
|
-
return
|
|
3131
|
+
function z(O) {
|
|
3132
|
+
return O === 36 ? (I++, g.consume(O), z) : I < l ? E(O) : (g.exit("mathFlowFenceSequence"), ce(g, ne, "whitespace")(O));
|
|
3121
3133
|
}
|
|
3122
|
-
function
|
|
3123
|
-
return
|
|
3134
|
+
function ne(O) {
|
|
3135
|
+
return O === null || j(O) ? (g.exit("mathFlowFence"), R(O)) : E(O);
|
|
3124
3136
|
}
|
|
3125
3137
|
}
|
|
3126
3138
|
}
|
|
3127
|
-
function
|
|
3139
|
+
function pr(e, t, n) {
|
|
3128
3140
|
const o = this;
|
|
3129
3141
|
return r;
|
|
3130
|
-
function r(
|
|
3131
|
-
return
|
|
3142
|
+
function r(l) {
|
|
3143
|
+
return l === null ? t(l) : (e.enter("lineEnding"), e.consume(l), e.exit("lineEnding"), a);
|
|
3132
3144
|
}
|
|
3133
|
-
function a(
|
|
3134
|
-
return o.parser.lazy[o.now().line] ? n(
|
|
3145
|
+
function a(l) {
|
|
3146
|
+
return o.parser.lazy[o.now().line] ? n(l) : t(l);
|
|
3135
3147
|
}
|
|
3136
3148
|
}
|
|
3137
|
-
function
|
|
3149
|
+
function hr(e) {
|
|
3138
3150
|
let n = (e || {}).singleDollarTextMath;
|
|
3139
3151
|
return n == null && (n = !0), {
|
|
3140
3152
|
tokenize: o,
|
|
3141
|
-
resolve:
|
|
3142
|
-
previous:
|
|
3153
|
+
resolve: gr,
|
|
3154
|
+
previous: mr,
|
|
3143
3155
|
name: "mathText"
|
|
3144
3156
|
};
|
|
3145
|
-
function o(r, a,
|
|
3157
|
+
function o(r, a, l) {
|
|
3146
3158
|
let c = 0, s, p;
|
|
3147
3159
|
return h;
|
|
3148
3160
|
function h(d) {
|
|
3149
3161
|
return r.enter("mathText"), r.enter("mathTextSequence"), f(d);
|
|
3150
3162
|
}
|
|
3151
3163
|
function f(d) {
|
|
3152
|
-
return d === 36 ? (r.consume(d), c++, f) : c < 2 && !n ?
|
|
3164
|
+
return d === 36 ? (r.consume(d), c++, f) : c < 2 && !n ? l(d) : (r.exit("mathTextSequence"), b(d));
|
|
3153
3165
|
}
|
|
3154
3166
|
function b(d) {
|
|
3155
|
-
return d === null ?
|
|
3167
|
+
return d === null ? l(d) : d === 36 ? (p = r.enter("mathTextSequence"), s = 0, k(d)) : d === 32 ? (r.enter("space"), r.consume(d), r.exit("space"), b) : j(d) ? (r.enter("lineEnding"), r.consume(d), r.exit("lineEnding"), b) : (r.enter("mathTextData"), m(d));
|
|
3156
3168
|
}
|
|
3157
3169
|
function m(d) {
|
|
3158
|
-
return d === null || d === 32 || d === 36 ||
|
|
3170
|
+
return d === null || d === 32 || d === 36 || j(d) ? (r.exit("mathTextData"), b(d)) : (r.consume(d), m);
|
|
3159
3171
|
}
|
|
3160
3172
|
function k(d) {
|
|
3161
3173
|
return d === 36 ? (r.consume(d), s++, k) : s === c ? (r.exit("mathTextSequence"), r.exit("mathText"), a(d)) : (p.type = "mathTextData", m(d));
|
|
3162
3174
|
}
|
|
3163
3175
|
}
|
|
3164
3176
|
}
|
|
3165
|
-
function
|
|
3177
|
+
function gr(e) {
|
|
3166
3178
|
let t = e.length - 4, n = 3, o, r;
|
|
3167
3179
|
if ((e[n][1].type === "lineEnding" || e[n][1].type === "space") && (e[t][1].type === "lineEnding" || e[t][1].type === "space")) {
|
|
3168
3180
|
for (o = n; ++o < t; )
|
|
@@ -3175,67 +3187,67 @@ function pr(e) {
|
|
|
3175
3187
|
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);
|
|
3176
3188
|
return e;
|
|
3177
3189
|
}
|
|
3178
|
-
function
|
|
3190
|
+
function mr(e) {
|
|
3179
3191
|
return e !== 36 || this.events[this.events.length - 1][1].type === "characterEscape";
|
|
3180
3192
|
}
|
|
3181
|
-
function
|
|
3193
|
+
function fr(e) {
|
|
3182
3194
|
return {
|
|
3183
3195
|
flow: {
|
|
3184
|
-
36:
|
|
3196
|
+
36: ur
|
|
3185
3197
|
},
|
|
3186
3198
|
text: {
|
|
3187
|
-
36:
|
|
3199
|
+
36: hr(e)
|
|
3188
3200
|
}
|
|
3189
3201
|
};
|
|
3190
3202
|
}
|
|
3191
|
-
const
|
|
3192
|
-
function
|
|
3203
|
+
const br = {};
|
|
3204
|
+
function kr(e) {
|
|
3193
3205
|
const t = (
|
|
3194
3206
|
/** @type {Processor} */
|
|
3195
3207
|
this
|
|
3196
|
-
), n = e ||
|
|
3197
|
-
r.push(
|
|
3208
|
+
), n = e || br, o = t.data(), r = o.micromarkExtensions || (o.micromarkExtensions = []), a = o.fromMarkdownExtensions || (o.fromMarkdownExtensions = []), l = o.toMarkdownExtensions || (o.toMarkdownExtensions = []);
|
|
3209
|
+
r.push(fr(n)), a.push(sr()), l.push(cr(n));
|
|
3198
3210
|
}
|
|
3199
|
-
function
|
|
3211
|
+
function yr(e = {}) {
|
|
3200
3212
|
var t, n;
|
|
3201
|
-
let o = [
|
|
3213
|
+
let o = [kr, { singleDollarTextMath: (t = e.singleDollarTextMath) != null ? t : !1 }], r = [ir, { errorColor: (n = e.errorColor) != null ? n : "var(--color-muted-foreground)" }];
|
|
3202
3214
|
return { name: "katex", type: "math", remarkPlugin: o, rehypePlugin: r, getStyles() {
|
|
3203
3215
|
return "katex/dist/katex.min.css";
|
|
3204
3216
|
} };
|
|
3205
3217
|
}
|
|
3206
|
-
var
|
|
3207
|
-
const
|
|
3208
|
-
({ className: e, ...t }) => /* @__PURE__ */
|
|
3209
|
-
|
|
3218
|
+
var ut = yr();
|
|
3219
|
+
const je = de(
|
|
3220
|
+
({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
3221
|
+
Rn,
|
|
3210
3222
|
{
|
|
3211
3223
|
className: y("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 code-bg ", e),
|
|
3212
3224
|
...t,
|
|
3213
|
-
remarkPlugins: [
|
|
3214
|
-
rehypePlugins: [
|
|
3225
|
+
remarkPlugins: [ut.remarkPlugin, ...t.remarkPlugins || []],
|
|
3226
|
+
rehypePlugins: [ut.rehypePlugin, ...t.rehypePlugins || []]
|
|
3215
3227
|
}
|
|
3216
3228
|
),
|
|
3217
3229
|
(e, t) => e.children === t.children
|
|
3218
3230
|
);
|
|
3219
|
-
|
|
3220
|
-
function
|
|
3231
|
+
je.displayName = "Response";
|
|
3232
|
+
function vr({
|
|
3221
3233
|
part: e,
|
|
3222
3234
|
message: t,
|
|
3223
3235
|
status: n,
|
|
3224
3236
|
isFinished: o,
|
|
3225
3237
|
lastMessage: r,
|
|
3226
3238
|
isLastVisiblePart: a,
|
|
3227
|
-
regen:
|
|
3239
|
+
regen: l,
|
|
3228
3240
|
feedback: c,
|
|
3229
3241
|
handleFeedback: s,
|
|
3230
3242
|
copyHost: p,
|
|
3231
3243
|
feedbackEnabled: h,
|
|
3232
3244
|
retryEnabled: f
|
|
3233
3245
|
}) {
|
|
3234
|
-
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins: k, rehypePlugins: d } =
|
|
3246
|
+
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins: k, rehypePlugins: d } = V(), v = ge(e.text), x = !o && r && (n === "streaming" || n === "submitted"), g = l || (() => {
|
|
3235
3247
|
});
|
|
3236
3248
|
return /* @__PURE__ */ w("div", { className: "group py-2 first:pt-4 animate-in-bubble", children: [
|
|
3237
|
-
/* @__PURE__ */
|
|
3238
|
-
|
|
3249
|
+
/* @__PURE__ */ i(Ft, { from: t.role, children: /* @__PURE__ */ i(Lt, { dir: v, children: /* @__PURE__ */ i(
|
|
3250
|
+
je,
|
|
3239
3251
|
{
|
|
3240
3252
|
components: m,
|
|
3241
3253
|
remarkPlugins: k,
|
|
@@ -3243,60 +3255,60 @@ function kr({
|
|
|
3243
3255
|
children: e.text
|
|
3244
3256
|
}
|
|
3245
3257
|
) }) }),
|
|
3246
|
-
a && !x && /* @__PURE__ */ w(
|
|
3258
|
+
a && !x && /* @__PURE__ */ w(co, { className: y("mt-1.5 ml-0.5", t.role === "user" && "justify-end"), children: [
|
|
3247
3259
|
t.role === "assistant" && /* @__PURE__ */ w(J, { children: [
|
|
3248
|
-
r && f && /* @__PURE__ */
|
|
3249
|
-
|
|
3260
|
+
r && f && /* @__PURE__ */ i(
|
|
3261
|
+
se,
|
|
3250
3262
|
{
|
|
3251
3263
|
onClick: () => g(t.id),
|
|
3252
3264
|
label: b("retry"),
|
|
3253
3265
|
tooltip: b("retry"),
|
|
3254
|
-
children: /* @__PURE__ */
|
|
3266
|
+
children: /* @__PURE__ */ i(bn, { className: "size-3" })
|
|
3255
3267
|
}
|
|
3256
3268
|
),
|
|
3257
3269
|
h && /* @__PURE__ */ w(J, { children: [
|
|
3258
|
-
/* @__PURE__ */
|
|
3259
|
-
|
|
3270
|
+
/* @__PURE__ */ i(
|
|
3271
|
+
se,
|
|
3260
3272
|
{
|
|
3261
3273
|
onClick: () => s("like"),
|
|
3262
3274
|
label: b("like"),
|
|
3263
3275
|
tooltip: b("like"),
|
|
3264
3276
|
className: c === "like" ? "text-primary" : "",
|
|
3265
|
-
children: /* @__PURE__ */
|
|
3277
|
+
children: /* @__PURE__ */ i(kn, { className: "size-3" })
|
|
3266
3278
|
}
|
|
3267
3279
|
),
|
|
3268
|
-
/* @__PURE__ */
|
|
3269
|
-
|
|
3280
|
+
/* @__PURE__ */ i(
|
|
3281
|
+
se,
|
|
3270
3282
|
{
|
|
3271
3283
|
onClick: () => s("dislike"),
|
|
3272
3284
|
label: b("dislike"),
|
|
3273
3285
|
tooltip: b("dislike"),
|
|
3274
3286
|
className: c === "dislike" ? "text-destructive" : "",
|
|
3275
|
-
children: /* @__PURE__ */
|
|
3287
|
+
children: /* @__PURE__ */ i(yn, { className: "size-3" })
|
|
3276
3288
|
}
|
|
3277
3289
|
)
|
|
3278
3290
|
] })
|
|
3279
3291
|
] }),
|
|
3280
|
-
/* @__PURE__ */
|
|
3281
|
-
|
|
3292
|
+
/* @__PURE__ */ i(
|
|
3293
|
+
se,
|
|
3282
3294
|
{
|
|
3283
3295
|
onClick: () => {
|
|
3284
3296
|
p(e.text);
|
|
3285
3297
|
},
|
|
3286
3298
|
label: b("copy"),
|
|
3287
3299
|
tooltip: b("copy"),
|
|
3288
|
-
children: /* @__PURE__ */
|
|
3300
|
+
children: /* @__PURE__ */ i(Et, { className: "size-3" })
|
|
3289
3301
|
}
|
|
3290
3302
|
)
|
|
3291
3303
|
] })
|
|
3292
3304
|
] });
|
|
3293
3305
|
}
|
|
3294
|
-
const
|
|
3295
|
-
const e =
|
|
3306
|
+
const Zt = pe(null), wr = () => {
|
|
3307
|
+
const e = Le(Zt);
|
|
3296
3308
|
if (!e)
|
|
3297
3309
|
throw new Error("Reasoning components must be used within Reasoning");
|
|
3298
3310
|
return e;
|
|
3299
|
-
},
|
|
3311
|
+
}, xr = 1e3, _r = 1e3, Jt = de(
|
|
3300
3312
|
({
|
|
3301
3313
|
className: e,
|
|
3302
3314
|
isStreaming: t = !1,
|
|
@@ -3305,24 +3317,24 @@ const Xt = de(null), yr = () => {
|
|
|
3305
3317
|
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
3306
3318
|
onOpenChange: r,
|
|
3307
3319
|
duration: a,
|
|
3308
|
-
children:
|
|
3320
|
+
children: l,
|
|
3309
3321
|
...c
|
|
3310
3322
|
}) => {
|
|
3311
|
-
const [s, p] =
|
|
3323
|
+
const [s, p] = Ve({
|
|
3312
3324
|
prop: n,
|
|
3313
3325
|
defaultProp: o,
|
|
3314
3326
|
onChange: r
|
|
3315
|
-
}), [h, f] =
|
|
3327
|
+
}), [h, f] = Ve({
|
|
3316
3328
|
prop: a,
|
|
3317
3329
|
defaultProp: 0
|
|
3318
|
-
}), [b, m] =
|
|
3330
|
+
}), [b, m] = B(!1), [k, d] = B(null);
|
|
3319
3331
|
Q(() => {
|
|
3320
|
-
t ? k === null && d(Date.now()) : k !== null && (f(Math.ceil((Date.now() - k) /
|
|
3332
|
+
t ? k === null && d(Date.now()) : k !== null && (f(Math.ceil((Date.now() - k) / _r)), d(null));
|
|
3321
3333
|
}, [t, k, f]), Q(() => {
|
|
3322
3334
|
if (o && !t && s && !b) {
|
|
3323
3335
|
const x = setTimeout(() => {
|
|
3324
3336
|
p(!1), m(!0);
|
|
3325
|
-
},
|
|
3337
|
+
}, xr);
|
|
3326
3338
|
return () => {
|
|
3327
3339
|
clearTimeout(x);
|
|
3328
3340
|
};
|
|
@@ -3331,36 +3343,36 @@ const Xt = de(null), yr = () => {
|
|
|
3331
3343
|
const v = (x) => {
|
|
3332
3344
|
p(x);
|
|
3333
3345
|
};
|
|
3334
|
-
return /* @__PURE__ */
|
|
3335
|
-
|
|
3346
|
+
return /* @__PURE__ */ i(Zt.Provider, { value: { isStreaming: t, isOpen: s, setIsOpen: p, duration: h }, children: /* @__PURE__ */ i(
|
|
3347
|
+
ze,
|
|
3336
3348
|
{
|
|
3337
3349
|
className: y("not-prose mb-4", e),
|
|
3338
3350
|
onOpenChange: v,
|
|
3339
3351
|
open: s,
|
|
3340
3352
|
...c,
|
|
3341
|
-
children:
|
|
3353
|
+
children: l
|
|
3342
3354
|
}
|
|
3343
3355
|
) });
|
|
3344
3356
|
}
|
|
3345
|
-
),
|
|
3346
|
-
const { isStreaming: o, isOpen: r, duration: a } =
|
|
3347
|
-
return /* @__PURE__ */
|
|
3348
|
-
/* @__PURE__ */
|
|
3349
|
-
o || a === 0 ? /* @__PURE__ */
|
|
3357
|
+
), Qt = de(({ className: e, children: t, ...n }) => {
|
|
3358
|
+
const { isStreaming: o, isOpen: r, duration: a } = wr();
|
|
3359
|
+
return /* @__PURE__ */ i($e, { className: y("flex items-center gap-2 text-muted-foreground text-sm", e), ...n, children: t ?? /* @__PURE__ */ w(J, { children: [
|
|
3360
|
+
/* @__PURE__ */ i(vn, { className: "size-4" }),
|
|
3361
|
+
o || a === 0 ? /* @__PURE__ */ i("p", { children: "Thinking..." }) : /* @__PURE__ */ w("p", { children: [
|
|
3350
3362
|
"Thought for ",
|
|
3351
3363
|
a,
|
|
3352
3364
|
" ",
|
|
3353
3365
|
a === 1 ? "second" : "seconds"
|
|
3354
3366
|
] }),
|
|
3355
|
-
/* @__PURE__ */
|
|
3356
|
-
|
|
3367
|
+
/* @__PURE__ */ i(
|
|
3368
|
+
ie,
|
|
3357
3369
|
{
|
|
3358
3370
|
className: y("size-4 text-muted-foreground transition-transform", r ? "rotate-180" : "rotate-0")
|
|
3359
3371
|
}
|
|
3360
3372
|
)
|
|
3361
3373
|
] }) });
|
|
3362
|
-
}),
|
|
3363
|
-
|
|
3374
|
+
}), en = de(({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
3375
|
+
Ue,
|
|
3364
3376
|
{
|
|
3365
3377
|
className: y(
|
|
3366
3378
|
"mt-4 text-base",
|
|
@@ -3368,33 +3380,33 @@ const Xt = de(null), yr = () => {
|
|
|
3368
3380
|
e
|
|
3369
3381
|
),
|
|
3370
3382
|
...n,
|
|
3371
|
-
children: /* @__PURE__ */
|
|
3383
|
+
children: /* @__PURE__ */ i(je, { className: "grid gap-2", children: t })
|
|
3372
3384
|
}
|
|
3373
3385
|
));
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3377
|
-
function
|
|
3386
|
+
Jt.displayName = "Reasoning";
|
|
3387
|
+
Qt.displayName = "ReasoningTrigger";
|
|
3388
|
+
en.displayName = "ReasoningContent";
|
|
3389
|
+
function Sr({
|
|
3378
3390
|
part: e,
|
|
3379
3391
|
status: t,
|
|
3380
3392
|
index: n,
|
|
3381
3393
|
partsCount: o,
|
|
3382
3394
|
lastMessage: r
|
|
3383
3395
|
}) {
|
|
3384
|
-
const a =
|
|
3396
|
+
const a = ge(e.text);
|
|
3385
3397
|
return /* @__PURE__ */ w(
|
|
3386
|
-
|
|
3398
|
+
Jt,
|
|
3387
3399
|
{
|
|
3388
3400
|
className: "w-full animate-in-bubble",
|
|
3389
3401
|
isStreaming: t === "streaming" && n === o - 1 && r,
|
|
3390
3402
|
children: [
|
|
3391
|
-
/* @__PURE__ */
|
|
3392
|
-
/* @__PURE__ */
|
|
3403
|
+
/* @__PURE__ */ i(Qt, {}),
|
|
3404
|
+
/* @__PURE__ */ i(en, { dir: a, children: e.text })
|
|
3393
3405
|
]
|
|
3394
3406
|
}
|
|
3395
3407
|
);
|
|
3396
3408
|
}
|
|
3397
|
-
const
|
|
3409
|
+
const Er = Pe(
|
|
3398
3410
|
"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",
|
|
3399
3411
|
{
|
|
3400
3412
|
variants: {
|
|
@@ -3410,29 +3422,29 @@ const _r = Le(
|
|
|
3410
3422
|
}
|
|
3411
3423
|
}
|
|
3412
3424
|
);
|
|
3413
|
-
function
|
|
3425
|
+
function Nr({
|
|
3414
3426
|
className: e,
|
|
3415
3427
|
variant: t,
|
|
3416
3428
|
asChild: n = !1,
|
|
3417
3429
|
...o
|
|
3418
3430
|
}) {
|
|
3419
|
-
return /* @__PURE__ */
|
|
3431
|
+
return /* @__PURE__ */ i(n ? Tt : "span", { "data-slot": "badge", className: y(Er({ variant: t }), e), ...o });
|
|
3420
3432
|
}
|
|
3421
|
-
function
|
|
3422
|
-
return /* @__PURE__ */
|
|
3433
|
+
function Tr({ ...e }) {
|
|
3434
|
+
return /* @__PURE__ */ i(H.Root, { "data-slot": "dialog", ...e });
|
|
3423
3435
|
}
|
|
3424
|
-
function
|
|
3425
|
-
return /* @__PURE__ */
|
|
3436
|
+
function Cr({ ...e }) {
|
|
3437
|
+
return /* @__PURE__ */ i(H.Trigger, { "data-slot": "dialog-trigger", ...e });
|
|
3426
3438
|
}
|
|
3427
|
-
function
|
|
3428
|
-
return /* @__PURE__ */
|
|
3439
|
+
function Ar({ ...e }) {
|
|
3440
|
+
return /* @__PURE__ */ i(H.Portal, { "data-slot": "dialog-portal", ...e });
|
|
3429
3441
|
}
|
|
3430
|
-
function
|
|
3431
|
-
return /* @__PURE__ */
|
|
3442
|
+
function vi({ ...e }) {
|
|
3443
|
+
return /* @__PURE__ */ i(H.Close, { "data-slot": "dialog-close", ...e });
|
|
3432
3444
|
}
|
|
3433
|
-
function
|
|
3434
|
-
return /* @__PURE__ */
|
|
3435
|
-
|
|
3445
|
+
function Ir({ className: e, ...t }) {
|
|
3446
|
+
return /* @__PURE__ */ i(
|
|
3447
|
+
H.Overlay,
|
|
3436
3448
|
{
|
|
3437
3449
|
"data-slot": "dialog-overlay",
|
|
3438
3450
|
className: y(
|
|
@@ -3443,16 +3455,16 @@ function Cr({ className: e, ...t }) {
|
|
|
3443
3455
|
}
|
|
3444
3456
|
);
|
|
3445
3457
|
}
|
|
3446
|
-
function
|
|
3458
|
+
function Rr({
|
|
3447
3459
|
className: e,
|
|
3448
3460
|
children: t,
|
|
3449
3461
|
showCloseButton: n = !0,
|
|
3450
3462
|
...o
|
|
3451
3463
|
}) {
|
|
3452
|
-
return /* @__PURE__ */ w(
|
|
3453
|
-
/* @__PURE__ */
|
|
3464
|
+
return /* @__PURE__ */ w(Ar, { "data-slot": "dialog-portal", children: [
|
|
3465
|
+
/* @__PURE__ */ i(Ir, {}),
|
|
3454
3466
|
/* @__PURE__ */ w(
|
|
3455
|
-
|
|
3467
|
+
H.Content,
|
|
3456
3468
|
{
|
|
3457
3469
|
"data-slot": "dialog-content",
|
|
3458
3470
|
className: y(
|
|
@@ -3463,13 +3475,13 @@ function Ar({
|
|
|
3463
3475
|
children: [
|
|
3464
3476
|
t,
|
|
3465
3477
|
n && /* @__PURE__ */ w(
|
|
3466
|
-
|
|
3478
|
+
H.Close,
|
|
3467
3479
|
{
|
|
3468
3480
|
"data-slot": "dialog-close",
|
|
3469
3481
|
className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rtl:left-4 rtl:right-auto rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3470
3482
|
children: [
|
|
3471
|
-
/* @__PURE__ */
|
|
3472
|
-
/* @__PURE__ */
|
|
3483
|
+
/* @__PURE__ */ i(he, {}),
|
|
3484
|
+
/* @__PURE__ */ i("span", { className: "sr-only", children: "Close" })
|
|
3473
3485
|
]
|
|
3474
3486
|
}
|
|
3475
3487
|
)
|
|
@@ -3478,8 +3490,8 @@ function Ar({
|
|
|
3478
3490
|
)
|
|
3479
3491
|
] });
|
|
3480
3492
|
}
|
|
3481
|
-
function
|
|
3482
|
-
return /* @__PURE__ */
|
|
3493
|
+
function Or({ className: e, ...t }) {
|
|
3494
|
+
return /* @__PURE__ */ i(
|
|
3483
3495
|
"div",
|
|
3484
3496
|
{
|
|
3485
3497
|
"data-slot": "dialog-header",
|
|
@@ -3488,8 +3500,8 @@ function Ir({ className: e, ...t }) {
|
|
|
3488
3500
|
}
|
|
3489
3501
|
);
|
|
3490
3502
|
}
|
|
3491
|
-
function
|
|
3492
|
-
return /* @__PURE__ */
|
|
3503
|
+
function wi({ className: e, ...t }) {
|
|
3504
|
+
return /* @__PURE__ */ i(
|
|
3493
3505
|
"div",
|
|
3494
3506
|
{
|
|
3495
3507
|
"data-slot": "dialog-footer",
|
|
@@ -3498,9 +3510,9 @@ function yl({ className: e, ...t }) {
|
|
|
3498
3510
|
}
|
|
3499
3511
|
);
|
|
3500
3512
|
}
|
|
3501
|
-
function
|
|
3502
|
-
return /* @__PURE__ */
|
|
3503
|
-
|
|
3513
|
+
function Fr({ className: e, ...t }) {
|
|
3514
|
+
return /* @__PURE__ */ i(
|
|
3515
|
+
H.Title,
|
|
3504
3516
|
{
|
|
3505
3517
|
"data-slot": "dialog-title",
|
|
3506
3518
|
className: y("text-xl leading-none font-semibold", e),
|
|
@@ -3508,9 +3520,9 @@ function Rr({ className: e, ...t }) {
|
|
|
3508
3520
|
}
|
|
3509
3521
|
);
|
|
3510
3522
|
}
|
|
3511
|
-
function
|
|
3512
|
-
return /* @__PURE__ */
|
|
3513
|
-
|
|
3523
|
+
function xi({ className: e, ...t }) {
|
|
3524
|
+
return /* @__PURE__ */ i(
|
|
3525
|
+
H.Description,
|
|
3514
3526
|
{
|
|
3515
3527
|
"data-slot": "dialog-description",
|
|
3516
3528
|
className: y("text-muted-foreground text-base", e),
|
|
@@ -3518,7 +3530,7 @@ function vl({ className: e, ...t }) {
|
|
|
3518
3530
|
}
|
|
3519
3531
|
);
|
|
3520
3532
|
}
|
|
3521
|
-
const
|
|
3533
|
+
const Lr = {
|
|
3522
3534
|
'code[class*="language-"]': {
|
|
3523
3535
|
background: "hsl(220, 13%, 18%)",
|
|
3524
3536
|
color: "hsl(220, 14%, 71%)",
|
|
@@ -4018,7 +4030,7 @@ const Or = {
|
|
|
4018
4030
|
".prism-previewer-easing.prism-previewer-easing line": {
|
|
4019
4031
|
stroke: "hsl(220, 14%, 71%)"
|
|
4020
4032
|
}
|
|
4021
|
-
},
|
|
4033
|
+
}, Dr = {
|
|
4022
4034
|
'code[class*="language-"]': {
|
|
4023
4035
|
background: "hsl(230, 1%, 98%)",
|
|
4024
4036
|
color: "hsl(230, 8%, 24%)",
|
|
@@ -4507,13 +4519,13 @@ const Or = {
|
|
|
4507
4519
|
stroke: "hsl(230, 8%, 24%)"
|
|
4508
4520
|
}
|
|
4509
4521
|
};
|
|
4510
|
-
function
|
|
4522
|
+
function q(e) {
|
|
4511
4523
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
4512
4524
|
}
|
|
4513
|
-
var
|
|
4514
|
-
function
|
|
4515
|
-
if (
|
|
4516
|
-
|
|
4525
|
+
var ve, dt;
|
|
4526
|
+
function Pr() {
|
|
4527
|
+
if (dt) return ve;
|
|
4528
|
+
dt = 1, ve = e, e.displayName = "python", e.aliases = ["py"];
|
|
4517
4529
|
function e(t) {
|
|
4518
4530
|
t.languages.python = {
|
|
4519
4531
|
comment: {
|
|
@@ -4577,14 +4589,14 @@ function Lr() {
|
|
|
4577
4589
|
punctuation: /[{}[\];(),.:]/
|
|
4578
4590
|
}, t.languages.python["string-interpolation"].inside.interpolation.inside.rest = t.languages.python, t.languages.py = t.languages.python;
|
|
4579
4591
|
}
|
|
4580
|
-
return
|
|
4581
|
-
}
|
|
4582
|
-
var
|
|
4583
|
-
const
|
|
4584
|
-
var
|
|
4585
|
-
function
|
|
4586
|
-
if (
|
|
4587
|
-
|
|
4592
|
+
return ve;
|
|
4593
|
+
}
|
|
4594
|
+
var Mr = Pr();
|
|
4595
|
+
const zr = /* @__PURE__ */ q(Mr);
|
|
4596
|
+
var we, pt;
|
|
4597
|
+
function $r() {
|
|
4598
|
+
if (pt) return we;
|
|
4599
|
+
pt = 1, we = e, e.displayName = "javascript", e.aliases = ["js"];
|
|
4588
4600
|
function e(t) {
|
|
4589
4601
|
t.languages.javascript = t.languages.extend("clike", {
|
|
4590
4602
|
"class-name": [
|
|
@@ -4709,14 +4721,14 @@ function Mr() {
|
|
|
4709
4721
|
"javascript"
|
|
4710
4722
|
)), t.languages.js = t.languages.javascript;
|
|
4711
4723
|
}
|
|
4712
|
-
return
|
|
4724
|
+
return we;
|
|
4713
4725
|
}
|
|
4714
|
-
var
|
|
4715
|
-
const
|
|
4716
|
-
var
|
|
4717
|
-
function
|
|
4718
|
-
if (
|
|
4719
|
-
|
|
4726
|
+
var Ur = $r();
|
|
4727
|
+
const Br = /* @__PURE__ */ q(Ur);
|
|
4728
|
+
var xe, ht;
|
|
4729
|
+
function Hr() {
|
|
4730
|
+
if (ht) return xe;
|
|
4731
|
+
ht = 1, xe = e, e.displayName = "typescript", e.aliases = ["ts"];
|
|
4720
4732
|
function e(t) {
|
|
4721
4733
|
(function(n) {
|
|
4722
4734
|
n.languages.typescript = n.languages.extend("javascript", {
|
|
@@ -4764,14 +4776,14 @@ function Ur() {
|
|
|
4764
4776
|
}), n.languages.ts = n.languages.typescript;
|
|
4765
4777
|
})(t);
|
|
4766
4778
|
}
|
|
4767
|
-
return
|
|
4779
|
+
return xe;
|
|
4768
4780
|
}
|
|
4769
|
-
var
|
|
4770
|
-
const
|
|
4771
|
-
var
|
|
4772
|
-
function
|
|
4773
|
-
if (
|
|
4774
|
-
|
|
4781
|
+
var qr = Hr();
|
|
4782
|
+
const jr = /* @__PURE__ */ q(qr);
|
|
4783
|
+
var _e, gt;
|
|
4784
|
+
function Gr() {
|
|
4785
|
+
if (gt) return _e;
|
|
4786
|
+
gt = 1, _e = e, e.displayName = "json", e.aliases = ["webmanifest"];
|
|
4775
4787
|
function e(t) {
|
|
4776
4788
|
t.languages.json = {
|
|
4777
4789
|
property: {
|
|
@@ -4798,14 +4810,14 @@ function jr() {
|
|
|
4798
4810
|
}
|
|
4799
4811
|
}, t.languages.webmanifest = t.languages.json;
|
|
4800
4812
|
}
|
|
4801
|
-
return
|
|
4813
|
+
return _e;
|
|
4802
4814
|
}
|
|
4803
|
-
var
|
|
4804
|
-
const
|
|
4805
|
-
var
|
|
4806
|
-
function
|
|
4807
|
-
if (
|
|
4808
|
-
|
|
4815
|
+
var Wr = Gr();
|
|
4816
|
+
const Vr = /* @__PURE__ */ q(Wr);
|
|
4817
|
+
var Se, mt;
|
|
4818
|
+
function Yr() {
|
|
4819
|
+
if (mt) return Se;
|
|
4820
|
+
mt = 1, Se = e, e.displayName = "bash", e.aliases = ["shell"];
|
|
4809
4821
|
function e(t) {
|
|
4810
4822
|
(function(n) {
|
|
4811
4823
|
var o = "\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b", r = {
|
|
@@ -5000,7 +5012,7 @@ function Vr() {
|
|
|
5000
5012
|
lookbehind: !0
|
|
5001
5013
|
}
|
|
5002
5014
|
}, r.inside = n.languages.bash;
|
|
5003
|
-
for (var
|
|
5015
|
+
for (var l = [
|
|
5004
5016
|
"comment",
|
|
5005
5017
|
"function-name",
|
|
5006
5018
|
"for-or-select",
|
|
@@ -5015,19 +5027,19 @@ function Vr() {
|
|
|
5015
5027
|
"operator",
|
|
5016
5028
|
"punctuation",
|
|
5017
5029
|
"number"
|
|
5018
|
-
], c = a.variable[1].inside, s = 0; s <
|
|
5019
|
-
c[
|
|
5030
|
+
], c = a.variable[1].inside, s = 0; s < l.length; s++)
|
|
5031
|
+
c[l[s]] = n.languages.bash[l[s]];
|
|
5020
5032
|
n.languages.shell = n.languages.bash;
|
|
5021
5033
|
})(t);
|
|
5022
5034
|
}
|
|
5023
|
-
return
|
|
5035
|
+
return Se;
|
|
5024
5036
|
}
|
|
5025
|
-
var
|
|
5026
|
-
const
|
|
5027
|
-
var
|
|
5028
|
-
function
|
|
5029
|
-
if (
|
|
5030
|
-
|
|
5037
|
+
var Xr = Yr();
|
|
5038
|
+
const Kr = /* @__PURE__ */ q(Xr);
|
|
5039
|
+
var Ee, ft;
|
|
5040
|
+
function Zr() {
|
|
5041
|
+
if (ft) return Ee;
|
|
5042
|
+
ft = 1, Ee = e, e.displayName = "sql", e.aliases = [];
|
|
5031
5043
|
function e(t) {
|
|
5032
5044
|
t.languages.sql = {
|
|
5033
5045
|
comment: {
|
|
@@ -5063,17 +5075,17 @@ function Xr() {
|
|
|
5063
5075
|
punctuation: /[;[\]()`,.]/
|
|
5064
5076
|
};
|
|
5065
5077
|
}
|
|
5066
|
-
return
|
|
5078
|
+
return Ee;
|
|
5067
5079
|
}
|
|
5068
|
-
var
|
|
5069
|
-
const
|
|
5070
|
-
var
|
|
5071
|
-
function
|
|
5072
|
-
if (
|
|
5073
|
-
|
|
5080
|
+
var Jr = Zr();
|
|
5081
|
+
const Qr = /* @__PURE__ */ q(Jr);
|
|
5082
|
+
var Ne, bt;
|
|
5083
|
+
function ea() {
|
|
5084
|
+
if (bt) return Ne;
|
|
5085
|
+
bt = 1, Ne = e, e.displayName = "yaml", e.aliases = ["yml"];
|
|
5074
5086
|
function e(t) {
|
|
5075
5087
|
(function(n) {
|
|
5076
|
-
var o = /[*&][^\s[\]{},]+/, r = /!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/, a = "(?:" + r.source + "(?:[ ]+" + o.source + ")?|" + o.source + "(?:[ ]+" + r.source + ")?)",
|
|
5088
|
+
var o = /[*&][^\s[\]{},]+/, r = /!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/, a = "(?:" + r.source + "(?:[ ]+" + o.source + ")?|" + o.source + "(?:[ ]+" + r.source + ")?)", l = /(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(
|
|
5077
5089
|
/<PLAIN>/g,
|
|
5078
5090
|
function() {
|
|
5079
5091
|
return /[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source;
|
|
@@ -5107,7 +5119,7 @@ function Jr() {
|
|
|
5107
5119
|
/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g, function() {
|
|
5108
5120
|
return a;
|
|
5109
5121
|
}).replace(/<<key>>/g, function() {
|
|
5110
|
-
return "(?:" +
|
|
5122
|
+
return "(?:" + l + "|" + c + ")";
|
|
5111
5123
|
})
|
|
5112
5124
|
),
|
|
5113
5125
|
lookbehind: !0,
|
|
@@ -5154,14 +5166,14 @@ function Jr() {
|
|
|
5154
5166
|
}, n.languages.yml = n.languages.yaml;
|
|
5155
5167
|
})(t);
|
|
5156
5168
|
}
|
|
5157
|
-
return
|
|
5169
|
+
return Ne;
|
|
5158
5170
|
}
|
|
5159
|
-
var
|
|
5160
|
-
const
|
|
5161
|
-
var
|
|
5162
|
-
function
|
|
5163
|
-
if (
|
|
5164
|
-
|
|
5171
|
+
var ta = ea();
|
|
5172
|
+
const na = /* @__PURE__ */ q(ta);
|
|
5173
|
+
var Te, kt;
|
|
5174
|
+
function oa() {
|
|
5175
|
+
if (kt) return Te;
|
|
5176
|
+
kt = 1, Te = e, e.displayName = "markdown", e.aliases = ["md"];
|
|
5165
5177
|
function e(t) {
|
|
5166
5178
|
(function(n) {
|
|
5167
5179
|
var o = /(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;
|
|
@@ -5170,7 +5182,7 @@ function ta() {
|
|
|
5170
5182
|
return o;
|
|
5171
5183
|
}), RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + "(?:" + b + ")");
|
|
5172
5184
|
}
|
|
5173
|
-
var a = /(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,
|
|
5185
|
+
var a = /(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source, l = /\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(
|
|
5174
5186
|
/__/g,
|
|
5175
5187
|
function() {
|
|
5176
5188
|
return a;
|
|
@@ -5197,13 +5209,13 @@ function ta() {
|
|
|
5197
5209
|
},
|
|
5198
5210
|
table: {
|
|
5199
5211
|
pattern: RegExp(
|
|
5200
|
-
"^" +
|
|
5212
|
+
"^" + l + c + "(?:" + l + ")*",
|
|
5201
5213
|
"m"
|
|
5202
5214
|
),
|
|
5203
5215
|
inside: {
|
|
5204
5216
|
"table-data-rows": {
|
|
5205
5217
|
pattern: RegExp(
|
|
5206
|
-
"^(" +
|
|
5218
|
+
"^(" + l + c + ")(?:" + l + ")*$"
|
|
5207
5219
|
),
|
|
5208
5220
|
lookbehind: !0,
|
|
5209
5221
|
inside: {
|
|
@@ -5215,14 +5227,14 @@ function ta() {
|
|
|
5215
5227
|
}
|
|
5216
5228
|
},
|
|
5217
5229
|
"table-line": {
|
|
5218
|
-
pattern: RegExp("^(" +
|
|
5230
|
+
pattern: RegExp("^(" + l + ")" + c + "$"),
|
|
5219
5231
|
lookbehind: !0,
|
|
5220
5232
|
inside: {
|
|
5221
5233
|
punctuation: /\||:?-{3,}:?/
|
|
5222
5234
|
}
|
|
5223
5235
|
},
|
|
5224
5236
|
"table-header-row": {
|
|
5225
|
-
pattern: RegExp("^" +
|
|
5237
|
+
pattern: RegExp("^" + l + "$"),
|
|
5226
5238
|
inside: {
|
|
5227
5239
|
"table-header": {
|
|
5228
5240
|
pattern: RegExp(a),
|
|
@@ -5426,12 +5438,12 @@ function ta() {
|
|
|
5426
5438
|
m(x.content);
|
|
5427
5439
|
continue;
|
|
5428
5440
|
}
|
|
5429
|
-
var g = x.content[1],
|
|
5430
|
-
if (g &&
|
|
5431
|
-
var
|
|
5432
|
-
|
|
5433
|
-
var
|
|
5434
|
-
|
|
5441
|
+
var g = x.content[1], R = x.content[3];
|
|
5442
|
+
if (g && R && g.type === "code-language" && R.type === "code-block" && typeof g.content == "string") {
|
|
5443
|
+
var E = g.content.replace(/\b#/g, "sharp").replace(/\b\+\+/g, "pp");
|
|
5444
|
+
E = (/[a-z][\w-]*/i.exec(E) || [""])[0].toLowerCase();
|
|
5445
|
+
var I = "language-" + E;
|
|
5446
|
+
R.alias ? typeof R.alias == "string" ? R.alias = [R.alias, I] : R.alias.push(I) : R.alias = [I];
|
|
5435
5447
|
}
|
|
5436
5448
|
}
|
|
5437
5449
|
}
|
|
@@ -5453,11 +5465,11 @@ function ta() {
|
|
|
5453
5465
|
m
|
|
5454
5466
|
);
|
|
5455
5467
|
else if (m && m !== "none" && n.plugins.autoloader) {
|
|
5456
|
-
var
|
|
5457
|
-
b.attributes.id =
|
|
5458
|
-
var
|
|
5459
|
-
|
|
5460
|
-
|
|
5468
|
+
var R = "md-" + (/* @__PURE__ */ new Date()).valueOf() + "-" + Math.floor(Math.random() * 1e16);
|
|
5469
|
+
b.attributes.id = R, n.plugins.autoloader.loadLanguages(m, function() {
|
|
5470
|
+
var E = document.getElementById(R);
|
|
5471
|
+
E && (E.innerHTML = n.highlight(
|
|
5472
|
+
E.textContent,
|
|
5461
5473
|
n.languages[m],
|
|
5462
5474
|
m
|
|
5463
5475
|
));
|
|
@@ -5486,36 +5498,36 @@ function ta() {
|
|
|
5486
5498
|
n.languages.md = n.languages.markdown;
|
|
5487
5499
|
})(t);
|
|
5488
5500
|
}
|
|
5489
|
-
return
|
|
5490
|
-
}
|
|
5491
|
-
var
|
|
5492
|
-
const
|
|
5493
|
-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5501
|
-
const
|
|
5501
|
+
return Te;
|
|
5502
|
+
}
|
|
5503
|
+
var ra = oa();
|
|
5504
|
+
const aa = /* @__PURE__ */ q(ra);
|
|
5505
|
+
$.registerLanguage("python", zr);
|
|
5506
|
+
$.registerLanguage("javascript", Br);
|
|
5507
|
+
$.registerLanguage("typescript", jr);
|
|
5508
|
+
$.registerLanguage("json", Vr);
|
|
5509
|
+
$.registerLanguage("bash", Kr);
|
|
5510
|
+
$.registerLanguage("sql", Qr);
|
|
5511
|
+
$.registerLanguage("yaml", na);
|
|
5512
|
+
$.registerLanguage("markdown", aa);
|
|
5513
|
+
const ia = pe({
|
|
5502
5514
|
code: ""
|
|
5503
|
-
}),
|
|
5515
|
+
}), Fe = ({
|
|
5504
5516
|
code: e,
|
|
5505
5517
|
language: t,
|
|
5506
5518
|
showLineNumbers: n = !1,
|
|
5507
5519
|
className: o,
|
|
5508
5520
|
children: r,
|
|
5509
5521
|
...a
|
|
5510
|
-
}) => /* @__PURE__ */
|
|
5522
|
+
}) => /* @__PURE__ */ i(ia.Provider, { value: { code: e }, children: /* @__PURE__ */ i(
|
|
5511
5523
|
"div",
|
|
5512
5524
|
{
|
|
5513
5525
|
className: y("relative w-full overflow-hidden rounded-md border bg-background text-foreground", o),
|
|
5514
5526
|
dir: "ltr",
|
|
5515
5527
|
...a,
|
|
5516
5528
|
children: /* @__PURE__ */ w("div", { className: "relative", children: [
|
|
5517
|
-
/* @__PURE__ */
|
|
5518
|
-
|
|
5529
|
+
/* @__PURE__ */ i(
|
|
5530
|
+
$,
|
|
5519
5531
|
{
|
|
5520
5532
|
className: "overflow-hidden dark:hidden",
|
|
5521
5533
|
codeTagProps: {
|
|
@@ -5535,12 +5547,12 @@ const ra = de({
|
|
|
5535
5547
|
minWidth: "2.5rem"
|
|
5536
5548
|
},
|
|
5537
5549
|
showLineNumbers: n,
|
|
5538
|
-
style:
|
|
5550
|
+
style: Dr,
|
|
5539
5551
|
children: e
|
|
5540
5552
|
}
|
|
5541
5553
|
),
|
|
5542
|
-
/* @__PURE__ */
|
|
5543
|
-
|
|
5554
|
+
/* @__PURE__ */ i(
|
|
5555
|
+
$,
|
|
5544
5556
|
{
|
|
5545
5557
|
className: "hidden overflow-hidden dark:block",
|
|
5546
5558
|
codeTagProps: {
|
|
@@ -5560,50 +5572,50 @@ const ra = de({
|
|
|
5560
5572
|
minWidth: "2.5rem"
|
|
5561
5573
|
},
|
|
5562
5574
|
showLineNumbers: n,
|
|
5563
|
-
style:
|
|
5575
|
+
style: Lr,
|
|
5564
5576
|
children: e
|
|
5565
5577
|
}
|
|
5566
5578
|
),
|
|
5567
|
-
r && /* @__PURE__ */
|
|
5579
|
+
r && /* @__PURE__ */ i("div", { className: "absolute top-2 right-2 flex items-center gap-2", children: r })
|
|
5568
5580
|
] })
|
|
5569
5581
|
}
|
|
5570
5582
|
) });
|
|
5571
|
-
function
|
|
5583
|
+
function la(e, t = "size-4") {
|
|
5572
5584
|
return {
|
|
5573
|
-
web_search: /* @__PURE__ */
|
|
5574
|
-
web_fetch: /* @__PURE__ */
|
|
5575
|
-
code_execution: /* @__PURE__ */
|
|
5576
|
-
image_generation: /* @__PURE__ */
|
|
5577
|
-
}[e] ?? /* @__PURE__ */
|
|
5585
|
+
web_search: /* @__PURE__ */ i(Sn, { className: t }),
|
|
5586
|
+
web_fetch: /* @__PURE__ */ i(ue, { className: t }),
|
|
5587
|
+
code_execution: /* @__PURE__ */ i(_n, { className: t }),
|
|
5588
|
+
image_generation: /* @__PURE__ */ i(xn, { className: t })
|
|
5589
|
+
}[e] ?? /* @__PURE__ */ i(wn, { className: t });
|
|
5578
5590
|
}
|
|
5579
|
-
const
|
|
5591
|
+
const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: y("not-prose mb-4 w-full rounded-md border", e), ...t }), ca = ({ status: e }) => {
|
|
5580
5592
|
const { t } = M(["tools_ui"]), n = {
|
|
5581
5593
|
"input-streaming": t("pending"),
|
|
5582
5594
|
"input-available": t("running"),
|
|
5583
5595
|
"output-available": t("completed"),
|
|
5584
5596
|
"output-error": t("error")
|
|
5585
5597
|
};
|
|
5586
|
-
return /* @__PURE__ */ w(
|
|
5598
|
+
return /* @__PURE__ */ w(Nr, { className: "gap-1.5 rounded-full text-xs", variant: "secondary", children: [
|
|
5587
5599
|
{
|
|
5588
|
-
"input-streaming": /* @__PURE__ */
|
|
5589
|
-
"input-available": /* @__PURE__ */
|
|
5590
|
-
"output-available": /* @__PURE__ */
|
|
5591
|
-
"output-error": /* @__PURE__ */
|
|
5600
|
+
"input-streaming": /* @__PURE__ */ i(Tn, { className: "size-4" }),
|
|
5601
|
+
"input-available": /* @__PURE__ */ i(Nn, { className: "size-4 animate-pulse" }),
|
|
5602
|
+
"output-available": /* @__PURE__ */ i(En, { className: "size-4 text-green-600" }),
|
|
5603
|
+
"output-error": /* @__PURE__ */ i(Nt, { className: "size-4 text-red-600" })
|
|
5592
5604
|
}[e],
|
|
5593
5605
|
n[e]
|
|
5594
5606
|
] });
|
|
5595
|
-
},
|
|
5596
|
-
const a = o || (t.startsWith("tool-") ? t.slice(5) : t),
|
|
5597
|
-
return /* @__PURE__ */ w(
|
|
5607
|
+
}, ua = ({ className: e, type: t, state: n, toolName: o, ...r }) => {
|
|
5608
|
+
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l = la(a, "size-4 text-muted-foreground");
|
|
5609
|
+
return /* @__PURE__ */ w($e, { className: y("flex w-full items-center justify-between gap-4 p-3", e), ...r, children: [
|
|
5598
5610
|
/* @__PURE__ */ w("div", { className: "flex items-center gap-2", children: [
|
|
5599
|
-
|
|
5600
|
-
/* @__PURE__ */
|
|
5601
|
-
/* @__PURE__ */
|
|
5611
|
+
l,
|
|
5612
|
+
/* @__PURE__ */ i("span", { className: "font-medium text-sm", children: a }),
|
|
5613
|
+
/* @__PURE__ */ i(ca, { status: n })
|
|
5602
5614
|
] }),
|
|
5603
|
-
/* @__PURE__ */
|
|
5615
|
+
/* @__PURE__ */ i(ie, { className: "size-4 text-muted-foreground transition-transform group-data-[state=open]:rotate-180" })
|
|
5604
5616
|
] });
|
|
5605
|
-
},
|
|
5606
|
-
|
|
5617
|
+
}, da = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
5618
|
+
Ue,
|
|
5607
5619
|
{
|
|
5608
5620
|
className: y(
|
|
5609
5621
|
"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",
|
|
@@ -5611,7 +5623,7 @@ const la = ({ className: e, ...t }) => /* @__PURE__ */ l(Pe, { className: y("not
|
|
|
5611
5623
|
),
|
|
5612
5624
|
...t
|
|
5613
5625
|
}
|
|
5614
|
-
),
|
|
5626
|
+
), tn = (e) => {
|
|
5615
5627
|
if (typeof e == "string")
|
|
5616
5628
|
try {
|
|
5617
5629
|
return JSON.stringify(JSON.parse(e), null, 2);
|
|
@@ -5619,52 +5631,52 @@ const la = ({ className: e, ...t }) => /* @__PURE__ */ l(Pe, { className: y("not
|
|
|
5619
5631
|
return e;
|
|
5620
5632
|
}
|
|
5621
5633
|
return JSON.stringify(e, null, 2);
|
|
5622
|
-
},
|
|
5634
|
+
}, pa = ({ className: e, input: t, ...n }) => {
|
|
5623
5635
|
const { t: o } = M(["tools_ui"]);
|
|
5624
5636
|
return /* @__PURE__ */ w("div", { className: y("space-y-2 overflow-hidden p-4", e), ...n, children: [
|
|
5625
|
-
/* @__PURE__ */
|
|
5626
|
-
/* @__PURE__ */
|
|
5637
|
+
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: o("parameters") }),
|
|
5638
|
+
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(Fe, { code: tn(t), language: "json" }) })
|
|
5627
5639
|
] });
|
|
5628
|
-
},
|
|
5629
|
-
const { t: r } = M(["tools_ui"]), [a,
|
|
5640
|
+
}, ha = ({ className: e, output: t, errorText: n, ...o }) => {
|
|
5641
|
+
const { t: r } = M(["tools_ui"]), [a, l] = B(!1);
|
|
5630
5642
|
if (!(t || n))
|
|
5631
5643
|
return null;
|
|
5632
5644
|
const c = () => {
|
|
5633
5645
|
n && navigator.clipboard.writeText(n).then(() => {
|
|
5634
|
-
|
|
5646
|
+
l(!0), setTimeout(() => l(!1), 2e3);
|
|
5635
5647
|
});
|
|
5636
5648
|
}, s = () => {
|
|
5637
5649
|
if (typeof t == "string")
|
|
5638
5650
|
try {
|
|
5639
5651
|
const p = JSON.parse(t);
|
|
5640
|
-
return /* @__PURE__ */
|
|
5652
|
+
return /* @__PURE__ */ i(Fe, { code: JSON.stringify(p, null, 2), language: "json" });
|
|
5641
5653
|
} catch {
|
|
5642
|
-
return /* @__PURE__ */
|
|
5654
|
+
return /* @__PURE__ */ i("div", { className: "p-4 text-sm whitespace-pre-wrap", dir: "ltr", children: t });
|
|
5643
5655
|
}
|
|
5644
|
-
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */
|
|
5656
|
+
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */ i(Fe, { code: JSON.stringify(t, null, 2), language: "json" }) : t;
|
|
5645
5657
|
};
|
|
5646
5658
|
return /* @__PURE__ */ w("div", { className: y("space-y-2 p-4", e), ...o, children: [
|
|
5647
|
-
/* @__PURE__ */
|
|
5648
|
-
n && /* @__PURE__ */ w(
|
|
5649
|
-
/* @__PURE__ */
|
|
5650
|
-
/* @__PURE__ */
|
|
5659
|
+
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: r(n ? "error" : "result") }),
|
|
5660
|
+
n && /* @__PURE__ */ w(Tr, { children: [
|
|
5661
|
+
/* @__PURE__ */ i(Cr, { asChild: !0, children: /* @__PURE__ */ w(ee, { variant: "destructive", size: "sm", children: [
|
|
5662
|
+
/* @__PURE__ */ i(Nt, { className: "mr-1.5 size-4" }),
|
|
5651
5663
|
r("view_error")
|
|
5652
5664
|
] }) }),
|
|
5653
|
-
/* @__PURE__ */ w(
|
|
5654
|
-
/* @__PURE__ */
|
|
5665
|
+
/* @__PURE__ */ w(Rr, { className: "max-w-2xl", children: [
|
|
5666
|
+
/* @__PURE__ */ i(Or, { children: /* @__PURE__ */ i(Fr, { className: "text-destructive", children: r("tool_error") }) }),
|
|
5655
5667
|
/* @__PURE__ */ w("div", { className: "space-y-4", children: [
|
|
5656
|
-
/* @__PURE__ */
|
|
5668
|
+
/* @__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: tn(n) }) }),
|
|
5657
5669
|
/* @__PURE__ */ w(ee, { variant: "outline", size: "sm", onClick: c, children: [
|
|
5658
|
-
/* @__PURE__ */
|
|
5670
|
+
/* @__PURE__ */ i(Et, { className: "mr-1.5 size-4" }),
|
|
5659
5671
|
r(a ? "copied" : "copy_error")
|
|
5660
5672
|
] })
|
|
5661
5673
|
] })
|
|
5662
5674
|
] })
|
|
5663
5675
|
] }),
|
|
5664
|
-
t && !n && /* @__PURE__ */
|
|
5676
|
+
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() }) })
|
|
5665
5677
|
] });
|
|
5666
5678
|
};
|
|
5667
|
-
function
|
|
5679
|
+
function ga({
|
|
5668
5680
|
part: e,
|
|
5669
5681
|
message: t,
|
|
5670
5682
|
chat: n,
|
|
@@ -5672,43 +5684,43 @@ function pa({
|
|
|
5672
5684
|
showToolCalls: r
|
|
5673
5685
|
}) {
|
|
5674
5686
|
const a = e;
|
|
5675
|
-
let
|
|
5676
|
-
if (!
|
|
5687
|
+
let l = a.toolName;
|
|
5688
|
+
if (!l && e.type.startsWith("tool-")) {
|
|
5677
5689
|
const c = e.type.slice(5);
|
|
5678
|
-
c !== "invocation" && c !== "result" && (
|
|
5690
|
+
c !== "invocation" && c !== "result" && (l = c);
|
|
5679
5691
|
}
|
|
5680
|
-
if (!
|
|
5692
|
+
if (!l && a.toolCallId && Array.isArray(t.parts))
|
|
5681
5693
|
try {
|
|
5682
5694
|
const c = t.parts.find(
|
|
5683
5695
|
(s) => s && typeof s == "object" && s.toolCallId === a.toolCallId && (s.toolName || s.type && s.type.startsWith("tool-"))
|
|
5684
5696
|
);
|
|
5685
|
-
c && (
|
|
5697
|
+
c && (l = c.toolName || (c.type.startsWith("tool-") ? c.type.slice(5) : void 0));
|
|
5686
5698
|
} catch (c) {
|
|
5687
5699
|
console.error("Error resolving toolName in ToolPart:", c);
|
|
5688
5700
|
}
|
|
5689
|
-
if (o &&
|
|
5690
|
-
const c = o[
|
|
5691
|
-
return /* @__PURE__ */
|
|
5701
|
+
if (o && l && o[l]) {
|
|
5702
|
+
const c = o[l];
|
|
5703
|
+
return /* @__PURE__ */ i(c, { part: e, message: t, chat: n });
|
|
5692
5704
|
}
|
|
5693
|
-
return r ? /* @__PURE__ */ w(
|
|
5694
|
-
/* @__PURE__ */
|
|
5695
|
-
/* @__PURE__ */ w(
|
|
5696
|
-
/* @__PURE__ */
|
|
5697
|
-
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */
|
|
5705
|
+
return r ? /* @__PURE__ */ w(sa, { className: "animate-in-bubble", children: [
|
|
5706
|
+
/* @__PURE__ */ i(ua, { type: e.type, state: a.state, toolName: l }),
|
|
5707
|
+
/* @__PURE__ */ w(da, { children: [
|
|
5708
|
+
/* @__PURE__ */ i(pa, { input: a.input }),
|
|
5709
|
+
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(ha, { errorText: a.errorText, output: a.output })
|
|
5698
5710
|
] })
|
|
5699
5711
|
] }) : null;
|
|
5700
5712
|
}
|
|
5701
|
-
function
|
|
5713
|
+
function ma({
|
|
5702
5714
|
part: e,
|
|
5703
5715
|
message: t
|
|
5704
5716
|
}) {
|
|
5705
|
-
const { t: n } = M(["chat", "admin"]), o = e, r = (o.mediaType || o.media_type)?.startsWith("image/"), a = o.filename ?? "file",
|
|
5717
|
+
const { t: n } = M(["chat", "admin"]), o = e, r = (o.mediaType || o.media_type)?.startsWith("image/"), a = o.filename ?? "file", l = (c) => {
|
|
5706
5718
|
if (c.preventDefault(), !o.url) return;
|
|
5707
5719
|
const s = document.createElement("a");
|
|
5708
5720
|
s.href = o.url, s.download = a, document.body.appendChild(s), s.click(), document.body.removeChild(s);
|
|
5709
5721
|
};
|
|
5710
|
-
return /* @__PURE__ */
|
|
5711
|
-
/* @__PURE__ */
|
|
5722
|
+
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(Ft, { from: t.role, children: /* @__PURE__ */ i(Lt, { 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: [
|
|
5723
|
+
/* @__PURE__ */ i(
|
|
5712
5724
|
"img",
|
|
5713
5725
|
{
|
|
5714
5726
|
src: o.url,
|
|
@@ -5717,50 +5729,50 @@ function ha({
|
|
|
5717
5729
|
}
|
|
5718
5730
|
),
|
|
5719
5731
|
/* @__PURE__ */ w("div", { className: "absolute inset-x-0 bottom-0 p-3 bg-gradient-to-t from-black/80 via-black/40 to-transparent opacity-0 group-hover:opacity-100 transition-opacity flex items-center justify-between", children: [
|
|
5720
|
-
/* @__PURE__ */
|
|
5721
|
-
/* @__PURE__ */
|
|
5732
|
+
/* @__PURE__ */ i("span", { className: "text-[10px] text-white truncate max-w-[150px] font-medium drop-shadow-sm", children: a }),
|
|
5733
|
+
/* @__PURE__ */ i(
|
|
5722
5734
|
"button",
|
|
5723
5735
|
{
|
|
5724
|
-
onClick:
|
|
5736
|
+
onClick: l,
|
|
5725
5737
|
className: "p-1.5 bg-white/20 hover:bg-white/30 backdrop-blur-md rounded-full text-white transition-all hover:scale-110 active:scale-95",
|
|
5726
5738
|
title: n("download", "Download"),
|
|
5727
|
-
children: /* @__PURE__ */
|
|
5739
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5728
5740
|
}
|
|
5729
5741
|
)
|
|
5730
5742
|
] }),
|
|
5731
|
-
/* @__PURE__ */
|
|
5743
|
+
/* @__PURE__ */ i("div", { className: "absolute top-2 right-2 md:hidden", children: /* @__PURE__ */ i(
|
|
5732
5744
|
"button",
|
|
5733
5745
|
{
|
|
5734
|
-
onClick:
|
|
5746
|
+
onClick: l,
|
|
5735
5747
|
className: "p-1.5 bg-black/40 backdrop-blur-md rounded-full text-white",
|
|
5736
|
-
children: /* @__PURE__ */
|
|
5748
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5737
5749
|
}
|
|
5738
5750
|
) })
|
|
5739
|
-
] }) : /* @__PURE__ */
|
|
5740
|
-
/* @__PURE__ */
|
|
5751
|
+
] }) : /* @__PURE__ */ i("div", { className: "flex flex-col gap-1.5", children: /* @__PURE__ */ w("div", { className: "group inline-flex items-center gap-3 rounded-xl p-3 text-sm transition-all duration-300 bg-secondary/10 border border-border/5 hover:border-primary/30 hover:bg-secondary/20 hover:shadow-[0_0_15px_var(--glow)]", children: [
|
|
5752
|
+
/* @__PURE__ */ i("div", { className: "p-2.5 rounded-lg bg-background/50 border border-border/10 group-hover:border-primary/20 group-hover:text-primary transition-colors", children: /* @__PURE__ */ i(St, { className: "size-4 shrink-0" }) }),
|
|
5741
5753
|
/* @__PURE__ */ w("div", { className: "flex flex-col min-w-0 mr-4", children: [
|
|
5742
|
-
/* @__PURE__ */
|
|
5743
|
-
(o.mediaType || o.media_type) && /* @__PURE__ */
|
|
5754
|
+
/* @__PURE__ */ i("span", { className: "truncate max-w-[180px] font-semibold text-foreground/90 leading-none mb-1 group-hover:text-foreground transition-colors", children: a }),
|
|
5755
|
+
(o.mediaType || o.media_type) && /* @__PURE__ */ i("span", { className: "text-[10px] text-muted-foreground uppercase font-bold tracking-widest opacity-60", children: (o.mediaType || o.media_type).split("/").pop() })
|
|
5744
5756
|
] }),
|
|
5745
|
-
/* @__PURE__ */
|
|
5757
|
+
/* @__PURE__ */ i(
|
|
5746
5758
|
"button",
|
|
5747
5759
|
{
|
|
5748
|
-
onClick:
|
|
5760
|
+
onClick: l,
|
|
5749
5761
|
className: "ml-auto p-2 hover:bg-primary hover:text-primary-foreground rounded-lg text-muted-foreground transition-all active:scale-90",
|
|
5750
5762
|
title: n("download", "Download"),
|
|
5751
|
-
children: /* @__PURE__ */
|
|
5763
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5752
5764
|
}
|
|
5753
5765
|
)
|
|
5754
5766
|
] }) }) }) }) });
|
|
5755
5767
|
}
|
|
5756
|
-
const
|
|
5757
|
-
MessageList:
|
|
5758
|
-
PromptInput:
|
|
5759
|
-
WelcomeScreen:
|
|
5760
|
-
TextPart:
|
|
5761
|
-
ReasoningPart:
|
|
5762
|
-
ToolPart:
|
|
5763
|
-
FilePart:
|
|
5768
|
+
const C = {
|
|
5769
|
+
MessageList: Zn,
|
|
5770
|
+
PromptInput: io,
|
|
5771
|
+
WelcomeScreen: so,
|
|
5772
|
+
TextPart: vr,
|
|
5773
|
+
ReasoningPart: Sr,
|
|
5774
|
+
ToolPart: ga,
|
|
5775
|
+
FilePart: ma,
|
|
5764
5776
|
toolComponents: void 0,
|
|
5765
5777
|
textComponents: void 0,
|
|
5766
5778
|
remarkPlugins: void 0,
|
|
@@ -5803,75 +5815,75 @@ const A = {
|
|
|
5803
5815
|
account: { enabled: !0, fields: {} }
|
|
5804
5816
|
}
|
|
5805
5817
|
}
|
|
5806
|
-
},
|
|
5807
|
-
function
|
|
5808
|
-
return
|
|
5818
|
+
}, nn = pe(C);
|
|
5819
|
+
function V() {
|
|
5820
|
+
return Le(nn);
|
|
5809
5821
|
}
|
|
5810
|
-
function
|
|
5822
|
+
function _i({
|
|
5811
5823
|
components: e,
|
|
5812
5824
|
history: t,
|
|
5813
5825
|
welcome: n,
|
|
5814
5826
|
threadActions: o,
|
|
5815
5827
|
composer: r,
|
|
5816
5828
|
theme: a,
|
|
5817
|
-
disclaimer:
|
|
5829
|
+
disclaimer: l,
|
|
5818
5830
|
app: c,
|
|
5819
5831
|
i18n: s,
|
|
5820
5832
|
settings: p,
|
|
5821
5833
|
children: h
|
|
5822
5834
|
}) {
|
|
5823
|
-
const f =
|
|
5835
|
+
const f = _t(
|
|
5824
5836
|
() => ({
|
|
5825
|
-
...
|
|
5837
|
+
...C,
|
|
5826
5838
|
...e,
|
|
5827
5839
|
// toolComponents is a plain merge (not nested-spread) — callers
|
|
5828
5840
|
// provide the full map for all tool names they want to override.
|
|
5829
|
-
toolComponents: e?.toolComponents ??
|
|
5830
|
-
history: t ? { ...
|
|
5831
|
-
welcome: n ? { ...
|
|
5832
|
-
threadActions: o ? { ...
|
|
5841
|
+
toolComponents: e?.toolComponents ?? C.toolComponents,
|
|
5842
|
+
history: t ? { ...C.history, ...t } : C.history,
|
|
5843
|
+
welcome: n ? { ...C.welcome, ...n } : C.welcome,
|
|
5844
|
+
threadActions: o ? { ...C.threadActions, ...o } : C.threadActions,
|
|
5833
5845
|
composer: r ? {
|
|
5834
|
-
...
|
|
5846
|
+
...C.composer,
|
|
5835
5847
|
...r,
|
|
5836
|
-
attachments: r.attachments ? { ...
|
|
5837
|
-
} :
|
|
5838
|
-
theme: a ??
|
|
5839
|
-
disclaimer:
|
|
5840
|
-
app: c ? { ...
|
|
5841
|
-
i18n: s ??
|
|
5848
|
+
attachments: r.attachments ? { ...C.composer?.attachments, ...r.attachments } : C.composer?.attachments
|
|
5849
|
+
} : C.composer,
|
|
5850
|
+
theme: a ?? C.theme,
|
|
5851
|
+
disclaimer: l ?? C.disclaimer,
|
|
5852
|
+
app: c ? { ...C.app, ...c } : C.app,
|
|
5853
|
+
i18n: s ?? C.i18n,
|
|
5842
5854
|
settings: p ? {
|
|
5843
|
-
...
|
|
5855
|
+
...C.settings,
|
|
5844
5856
|
sections: {
|
|
5845
|
-
...
|
|
5857
|
+
...C.settings?.sections,
|
|
5846
5858
|
...p.sections
|
|
5847
5859
|
}
|
|
5848
|
-
} :
|
|
5860
|
+
} : C.settings
|
|
5849
5861
|
}),
|
|
5850
|
-
[e, t, n, o, r, a,
|
|
5862
|
+
[e, t, n, o, r, a, l, c, s, p]
|
|
5851
5863
|
);
|
|
5852
|
-
return /* @__PURE__ */
|
|
5864
|
+
return /* @__PURE__ */ i(nn.Provider, { value: f, children: h });
|
|
5853
5865
|
}
|
|
5854
|
-
const
|
|
5866
|
+
const fa = {
|
|
5855
5867
|
theme: "system",
|
|
5856
5868
|
setTheme: () => null,
|
|
5857
5869
|
accent: void 0,
|
|
5858
5870
|
setAccent: () => null,
|
|
5859
5871
|
radius: void 0,
|
|
5860
5872
|
setRadius: () => null
|
|
5861
|
-
},
|
|
5862
|
-
function
|
|
5873
|
+
}, on = pe(fa);
|
|
5874
|
+
function Si({
|
|
5863
5875
|
children: e,
|
|
5864
5876
|
defaultTheme: t = "system",
|
|
5865
5877
|
storageKey: n = "chatbot-theme",
|
|
5866
5878
|
...o
|
|
5867
5879
|
}) {
|
|
5868
|
-
const [r, a] =
|
|
5880
|
+
const [r, a] = B(
|
|
5869
5881
|
() => window.localStorage.getItem(n) ?? t
|
|
5870
|
-
), [
|
|
5882
|
+
), [l, c] = B(
|
|
5871
5883
|
() => window.localStorage.getItem(n + "-accent") || void 0
|
|
5872
|
-
), [s, p] =
|
|
5884
|
+
), [s, p] = B(
|
|
5873
5885
|
() => window.localStorage.getItem(n + "-radius") || "1.25rem"
|
|
5874
|
-
), { theme: h } =
|
|
5886
|
+
), { theme: h } = V(), { i18n: f } = M(["theme"]);
|
|
5875
5887
|
Q(() => {
|
|
5876
5888
|
const m = window.document.documentElement;
|
|
5877
5889
|
if (m.classList.remove("light", "dark"), r === "system") {
|
|
@@ -5889,15 +5901,15 @@ function xl({
|
|
|
5889
5901
|
}
|
|
5890
5902
|
const v = s || (typeof h?.radius == "number" ? `${h.radius}px` : h?.radius);
|
|
5891
5903
|
v !== void 0 && m.style.setProperty("--radius", v);
|
|
5892
|
-
const x =
|
|
5904
|
+
const x = l || h?.accent;
|
|
5893
5905
|
x !== void 0 && m.style.setProperty("--gentiq-primary", x), window.document.documentElement.dir = f.dir();
|
|
5894
|
-
}, [h, f, f.language,
|
|
5906
|
+
}, [h, f, f.language, l, s]);
|
|
5895
5907
|
const b = {
|
|
5896
5908
|
theme: r,
|
|
5897
5909
|
setTheme: (m) => {
|
|
5898
5910
|
window.localStorage.setItem(n, m), a(m);
|
|
5899
5911
|
},
|
|
5900
|
-
accent:
|
|
5912
|
+
accent: l,
|
|
5901
5913
|
setAccent: (m) => {
|
|
5902
5914
|
m ? window.localStorage.setItem(n + "-accent", m) : window.localStorage.removeItem(n + "-accent"), c(m);
|
|
5903
5915
|
},
|
|
@@ -5906,39 +5918,39 @@ function xl({
|
|
|
5906
5918
|
m ? window.localStorage.setItem(n + "-radius", m) : window.localStorage.removeItem(n + "-radius"), p(m);
|
|
5907
5919
|
}
|
|
5908
5920
|
};
|
|
5909
|
-
return /* @__PURE__ */
|
|
5921
|
+
return /* @__PURE__ */ i(on.Provider, { ...o, value: b, children: e });
|
|
5910
5922
|
}
|
|
5911
|
-
const
|
|
5912
|
-
slice:
|
|
5913
|
-
forEach:
|
|
5923
|
+
const Ei = () => Le(on), {
|
|
5924
|
+
slice: ba,
|
|
5925
|
+
forEach: ka
|
|
5914
5926
|
} = [];
|
|
5915
|
-
function
|
|
5916
|
-
return
|
|
5927
|
+
function ya(e) {
|
|
5928
|
+
return ka.call(ba.call(arguments, 1), (t) => {
|
|
5917
5929
|
if (t)
|
|
5918
5930
|
for (const n in t)
|
|
5919
5931
|
e[n] === void 0 && (e[n] = t[n]);
|
|
5920
5932
|
}), e;
|
|
5921
5933
|
}
|
|
5922
|
-
function
|
|
5934
|
+
function va(e) {
|
|
5923
5935
|
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));
|
|
5924
5936
|
}
|
|
5925
|
-
const
|
|
5937
|
+
const yt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, wa = function(e, t) {
|
|
5926
5938
|
const o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {
|
|
5927
5939
|
path: "/"
|
|
5928
5940
|
}, r = encodeURIComponent(t);
|
|
5929
5941
|
let a = `${e}=${r}`;
|
|
5930
5942
|
if (o.maxAge > 0) {
|
|
5931
|
-
const
|
|
5932
|
-
if (Number.isNaN(
|
|
5933
|
-
a += `; Max-Age=${Math.floor(
|
|
5943
|
+
const l = o.maxAge - 0;
|
|
5944
|
+
if (Number.isNaN(l)) throw new Error("maxAge should be a Number");
|
|
5945
|
+
a += `; Max-Age=${Math.floor(l)}`;
|
|
5934
5946
|
}
|
|
5935
5947
|
if (o.domain) {
|
|
5936
|
-
if (!
|
|
5948
|
+
if (!yt.test(o.domain))
|
|
5937
5949
|
throw new TypeError("option domain is invalid");
|
|
5938
5950
|
a += `; Domain=${o.domain}`;
|
|
5939
5951
|
}
|
|
5940
5952
|
if (o.path) {
|
|
5941
|
-
if (!
|
|
5953
|
+
if (!yt.test(o.path))
|
|
5942
5954
|
throw new TypeError("option path is invalid");
|
|
5943
5955
|
a += `; Path=${o.path}`;
|
|
5944
5956
|
}
|
|
@@ -5965,13 +5977,13 @@ const bt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, ya = function(e, t) {
|
|
|
5965
5977
|
throw new TypeError("option sameSite is invalid");
|
|
5966
5978
|
}
|
|
5967
5979
|
return o.partitioned && (a += "; Partitioned"), a;
|
|
5968
|
-
},
|
|
5980
|
+
}, vt = {
|
|
5969
5981
|
create(e, t, n, o) {
|
|
5970
5982
|
let r = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : {
|
|
5971
5983
|
path: "/",
|
|
5972
5984
|
sameSite: "strict"
|
|
5973
5985
|
};
|
|
5974
|
-
n && (r.expires = /* @__PURE__ */ new Date(), r.expires.setTime(r.expires.getTime() + n * 60 * 1e3)), o && (r.domain = o), document.cookie =
|
|
5986
|
+
n && (r.expires = /* @__PURE__ */ new Date(), r.expires.setTime(r.expires.getTime() + n * 60 * 1e3)), o && (r.domain = o), document.cookie = wa(e, t, r);
|
|
5975
5987
|
},
|
|
5976
5988
|
read(e) {
|
|
5977
5989
|
const t = `${e}=`, n = document.cookie.split(";");
|
|
@@ -5986,7 +5998,7 @@ const bt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, ya = function(e, t) {
|
|
|
5986
5998
|
this.create(e, "", -1, t);
|
|
5987
5999
|
}
|
|
5988
6000
|
};
|
|
5989
|
-
var
|
|
6001
|
+
var xa = {
|
|
5990
6002
|
name: "cookie",
|
|
5991
6003
|
// Deconstruct the options object and extract the lookupCookie property
|
|
5992
6004
|
lookup(e) {
|
|
@@ -5994,7 +6006,7 @@ var va = {
|
|
|
5994
6006
|
lookupCookie: t
|
|
5995
6007
|
} = e;
|
|
5996
6008
|
if (t && typeof document < "u")
|
|
5997
|
-
return
|
|
6009
|
+
return vt.read(t) || void 0;
|
|
5998
6010
|
},
|
|
5999
6011
|
// Deconstruct the options object and extract the lookupCookie, cookieMinutes, cookieDomain, and cookieOptions properties
|
|
6000
6012
|
cacheUserLanguage(e, t) {
|
|
@@ -6004,9 +6016,9 @@ var va = {
|
|
|
6004
6016
|
cookieDomain: r,
|
|
6005
6017
|
cookieOptions: a
|
|
6006
6018
|
} = t;
|
|
6007
|
-
n && typeof document < "u" &&
|
|
6019
|
+
n && typeof document < "u" && vt.create(n, e, o, r, a);
|
|
6008
6020
|
}
|
|
6009
|
-
},
|
|
6021
|
+
}, _a = {
|
|
6010
6022
|
name: "querystring",
|
|
6011
6023
|
// Deconstruct the options object and extract the lookupQuerystring property
|
|
6012
6024
|
lookup(e) {
|
|
@@ -6019,14 +6031,14 @@ var va = {
|
|
|
6019
6031
|
} = window.location;
|
|
6020
6032
|
!window.location.search && window.location.hash?.indexOf("?") > -1 && (o = window.location.hash.substring(window.location.hash.indexOf("?")));
|
|
6021
6033
|
const a = o.substring(1).split("&");
|
|
6022
|
-
for (let
|
|
6023
|
-
const c = a[
|
|
6024
|
-
c > 0 && a[
|
|
6034
|
+
for (let l = 0; l < a.length; l++) {
|
|
6035
|
+
const c = a[l].indexOf("=");
|
|
6036
|
+
c > 0 && a[l].substring(0, c) === t && (n = a[l].substring(c + 1));
|
|
6025
6037
|
}
|
|
6026
6038
|
}
|
|
6027
6039
|
return n;
|
|
6028
6040
|
}
|
|
6029
|
-
},
|
|
6041
|
+
}, Sa = {
|
|
6030
6042
|
name: "hash",
|
|
6031
6043
|
// Deconstruct the options object and extract the lookupHash property and the lookupFromHashIndex property
|
|
6032
6044
|
lookup(e) {
|
|
@@ -6041,16 +6053,16 @@ var va = {
|
|
|
6041
6053
|
if (r && r.length > 2) {
|
|
6042
6054
|
const a = r.substring(1);
|
|
6043
6055
|
if (t) {
|
|
6044
|
-
const
|
|
6045
|
-
for (let c = 0; c <
|
|
6046
|
-
const s =
|
|
6047
|
-
s > 0 &&
|
|
6056
|
+
const l = a.split("&");
|
|
6057
|
+
for (let c = 0; c < l.length; c++) {
|
|
6058
|
+
const s = l[c].indexOf("=");
|
|
6059
|
+
s > 0 && l[c].substring(0, s) === t && (o = l[c].substring(s + 1));
|
|
6048
6060
|
}
|
|
6049
6061
|
}
|
|
6050
6062
|
if (o) return o;
|
|
6051
6063
|
if (!o && n > -1) {
|
|
6052
|
-
const
|
|
6053
|
-
return Array.isArray(
|
|
6064
|
+
const l = r.match(/\/([a-zA-Z-]*)/g);
|
|
6065
|
+
return Array.isArray(l) ? l[typeof n == "number" ? n : 0]?.replace("/", "") : void 0;
|
|
6054
6066
|
}
|
|
6055
6067
|
}
|
|
6056
6068
|
}
|
|
@@ -6058,7 +6070,7 @@ var va = {
|
|
|
6058
6070
|
}
|
|
6059
6071
|
};
|
|
6060
6072
|
let Y = null;
|
|
6061
|
-
const
|
|
6073
|
+
const wt = () => {
|
|
6062
6074
|
if (Y !== null) return Y;
|
|
6063
6075
|
try {
|
|
6064
6076
|
if (Y = typeof window < "u" && window.localStorage !== null, !Y)
|
|
@@ -6070,14 +6082,14 @@ const yt = () => {
|
|
|
6070
6082
|
}
|
|
6071
6083
|
return Y;
|
|
6072
6084
|
};
|
|
6073
|
-
var
|
|
6085
|
+
var Ea = {
|
|
6074
6086
|
name: "localStorage",
|
|
6075
6087
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
6076
6088
|
lookup(e) {
|
|
6077
6089
|
let {
|
|
6078
6090
|
lookupLocalStorage: t
|
|
6079
6091
|
} = e;
|
|
6080
|
-
if (t &&
|
|
6092
|
+
if (t && wt())
|
|
6081
6093
|
return window.localStorage.getItem(t) || void 0;
|
|
6082
6094
|
},
|
|
6083
6095
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
@@ -6085,11 +6097,11 @@ var _a = {
|
|
|
6085
6097
|
let {
|
|
6086
6098
|
lookupLocalStorage: n
|
|
6087
6099
|
} = t;
|
|
6088
|
-
n &&
|
|
6100
|
+
n && wt() && window.localStorage.setItem(n, e);
|
|
6089
6101
|
}
|
|
6090
6102
|
};
|
|
6091
6103
|
let X = null;
|
|
6092
|
-
const
|
|
6104
|
+
const xt = () => {
|
|
6093
6105
|
if (X !== null) return X;
|
|
6094
6106
|
try {
|
|
6095
6107
|
if (X = typeof window < "u" && window.sessionStorage !== null, !X)
|
|
@@ -6101,22 +6113,22 @@ const vt = () => {
|
|
|
6101
6113
|
}
|
|
6102
6114
|
return X;
|
|
6103
6115
|
};
|
|
6104
|
-
var
|
|
6116
|
+
var Na = {
|
|
6105
6117
|
name: "sessionStorage",
|
|
6106
6118
|
lookup(e) {
|
|
6107
6119
|
let {
|
|
6108
6120
|
lookupSessionStorage: t
|
|
6109
6121
|
} = e;
|
|
6110
|
-
if (t &&
|
|
6122
|
+
if (t && xt())
|
|
6111
6123
|
return window.sessionStorage.getItem(t) || void 0;
|
|
6112
6124
|
},
|
|
6113
6125
|
cacheUserLanguage(e, t) {
|
|
6114
6126
|
let {
|
|
6115
6127
|
lookupSessionStorage: n
|
|
6116
6128
|
} = t;
|
|
6117
|
-
n &&
|
|
6129
|
+
n && xt() && window.sessionStorage.setItem(n, e);
|
|
6118
6130
|
}
|
|
6119
|
-
},
|
|
6131
|
+
}, Ta = {
|
|
6120
6132
|
name: "navigator",
|
|
6121
6133
|
lookup(e) {
|
|
6122
6134
|
const t = [];
|
|
@@ -6133,7 +6145,7 @@ var Sa = {
|
|
|
6133
6145
|
}
|
|
6134
6146
|
return t.length > 0 ? t : void 0;
|
|
6135
6147
|
}
|
|
6136
|
-
},
|
|
6148
|
+
}, Ca = {
|
|
6137
6149
|
name: "htmlTag",
|
|
6138
6150
|
// Deconstruct the options object and extract the htmlTag property
|
|
6139
6151
|
lookup(e) {
|
|
@@ -6143,7 +6155,7 @@ var Sa = {
|
|
|
6143
6155
|
const o = t || (typeof document < "u" ? document.documentElement : null);
|
|
6144
6156
|
return o && typeof o.getAttribute == "function" && (n = o.getAttribute("lang")), n;
|
|
6145
6157
|
}
|
|
6146
|
-
},
|
|
6158
|
+
}, Aa = {
|
|
6147
6159
|
name: "path",
|
|
6148
6160
|
// Deconstruct the options object and extract the lookupFromPathIndex property
|
|
6149
6161
|
lookup(e) {
|
|
@@ -6154,7 +6166,7 @@ var Sa = {
|
|
|
6154
6166
|
const n = window.location.pathname.match(/\/([a-zA-Z-]*)/g);
|
|
6155
6167
|
return Array.isArray(n) ? n[typeof t == "number" ? t : 0]?.replace("/", "") : void 0;
|
|
6156
6168
|
}
|
|
6157
|
-
},
|
|
6169
|
+
}, Ia = {
|
|
6158
6170
|
name: "subdomain",
|
|
6159
6171
|
lookup(e) {
|
|
6160
6172
|
let {
|
|
@@ -6165,15 +6177,15 @@ var Sa = {
|
|
|
6165
6177
|
return o[n];
|
|
6166
6178
|
}
|
|
6167
6179
|
};
|
|
6168
|
-
let
|
|
6180
|
+
let rn = !1;
|
|
6169
6181
|
try {
|
|
6170
|
-
document.cookie,
|
|
6182
|
+
document.cookie, rn = !0;
|
|
6171
6183
|
} catch {
|
|
6172
6184
|
}
|
|
6173
|
-
const
|
|
6174
|
-
|
|
6175
|
-
const
|
|
6176
|
-
order:
|
|
6185
|
+
const an = ["querystring", "cookie", "localStorage", "sessionStorage", "navigator", "htmlTag"];
|
|
6186
|
+
rn || an.splice(1, 1);
|
|
6187
|
+
const Ra = () => ({
|
|
6188
|
+
order: an,
|
|
6177
6189
|
lookupQuerystring: "lng",
|
|
6178
6190
|
lookupCookie: "i18next",
|
|
6179
6191
|
lookupLocalStorage: "i18nextLng",
|
|
@@ -6185,7 +6197,7 @@ const Aa = () => ({
|
|
|
6185
6197
|
// cookieDomain: 'myDomain'
|
|
6186
6198
|
convertDetectedLanguage: (e) => e
|
|
6187
6199
|
});
|
|
6188
|
-
class
|
|
6200
|
+
class ln {
|
|
6189
6201
|
constructor(t) {
|
|
6190
6202
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
6191
6203
|
this.type = "languageDetector", this.detectors = {}, this.init(t, n);
|
|
@@ -6194,7 +6206,7 @@ class rn {
|
|
|
6194
6206
|
let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {
|
|
6195
6207
|
languageUtils: {}
|
|
6196
6208
|
}, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
|
|
6197
|
-
this.services = t, this.options =
|
|
6209
|
+
this.services = t, this.options = ya(n, this.options || {}, Ra()), 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(_a), this.addDetector(Ea), this.addDetector(Na), this.addDetector(Ta), this.addDetector(Ca), this.addDetector(Aa), this.addDetector(Ia), this.addDetector(Sa);
|
|
6198
6210
|
}
|
|
6199
6211
|
addDetector(t) {
|
|
6200
6212
|
return this.detectors[t.name] = t, this;
|
|
@@ -6206,7 +6218,7 @@ class rn {
|
|
|
6206
6218
|
let r = this.detectors[o].lookup(this.options);
|
|
6207
6219
|
r && typeof r == "string" && (r = [r]), r && (n = n.concat(r));
|
|
6208
6220
|
}
|
|
6209
|
-
}), n = n.filter((o) => o != null && !
|
|
6221
|
+
}), n = n.filter((o) => o != null && !va(o)).map((o) => this.options.convertDetectedLanguage(o)), this.services && this.services.languageUtils && this.services.languageUtils.getBestMatchFromCodes ? n : n.length > 0 ? n[0] : null;
|
|
6210
6222
|
}
|
|
6211
6223
|
cacheUserLanguage(t) {
|
|
6212
6224
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.options.caches;
|
|
@@ -6215,31 +6227,31 @@ class rn {
|
|
|
6215
6227
|
}));
|
|
6216
6228
|
}
|
|
6217
6229
|
}
|
|
6218
|
-
|
|
6219
|
-
const Ia = { 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" }, Ra = { 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." }, Oa = { 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" }, Fa = { 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" }, La = { toggle: "Change theme", light: "Switch to light theme", dark: "Switch to dark theme", system: "Switch to system theme" }, Da = { 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" }, 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." }, 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", 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" } }, Pa = { 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" } }, Ma = { 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." }, za = {
|
|
6220
|
-
sidebar:
|
|
6221
|
-
chat:
|
|
6222
|
-
tools_ui:
|
|
6223
|
-
login:
|
|
6224
|
-
theme:
|
|
6225
|
-
admin:
|
|
6226
|
-
settings:
|
|
6227
|
-
errors:
|
|
6228
|
-
}, $a = { 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: "اشتراکگذاری" }, Ua = { tools: "ابزارها", error: "خطا:", input_placeholder: "سوالتو اینجا بپرس...", insufficient_balance: "موجودی حساب شما کافی نیست. لطفا برای ادامه، حساب خود را شارژ کنید.", regenerate: "تولید مجدد", retry: "تلاش مجدد", copy: "کپی", like: "پسندیدم", dislike: "نپسندیدم", attach_file: "پیوست فایل", remove_file: "حذف فایل", used_sources: "از {{count}} منبع استفاده شد", welcome: { title: "سلام! چطور میتونم کمکت کنم؟", subtitle: "هر سوالی داری بپرس، تمام تلاشمو میکنم کمکت کنم.", suggestions: ["چه کارهایی میتونی انجام بدی؟", "یه چیز جالب بهم بگو", "کمکم کن یه ایمیل بنویسم", "یه مفهوم رو برام توضیح بده"] }, disclaimer: "هوش مصنوعی ممکن است اشتباه کند. اطلاعات مهم را بررسی کنید." }, Ba = { pending: "در انتظار", running: "در حال اجرا", completed: "تکمیل شده", error: "خطا", parameters: "پارامترها", result: "نتیجه", view_error: "نمایش خطا", tool_error: "خطای ابزار", copied: "کپی شد!", copy_error: "کپی خطا" }, Ha = { login_tab: "ورود", signup_tab: "ثبت نام", phone: "شماره تلفن", phone_placeholder: "شماره تلفن", password: "رمز عبور", name: "نام", name_placeholder: "نام", surname: "نام خانوادگی", surname_placeholder: "نام خانوادگی", logging_in: "در حال ورود...", signing_up: "در حال ثبت نام...", select_placeholder: "انتخاب کنید", login_button: "ورود", signup_button: "ثبت نام" }, ja = { toggle: "تغییر تم", light: "تغییر به تم روشن", dark: "تغییر به تم تاریک", system: "تغییر به تم سیستم" }, qa = { 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: "تنظیمات گفتگو" }, 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: "وضعیت نمایش فیلدهای هر تب را بهصورت مجزا پیکربندی کنید." }, 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: "شارژ موجودی", 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: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Ga = { 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: "آخرین بروزرسانی اعتبار در تاریخ" } }, Va = { 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: "منبع مورد نظر یافت نشد." }, Wa = {
|
|
6229
|
-
sidebar:
|
|
6230
|
-
chat:
|
|
6231
|
-
tools_ui:
|
|
6232
|
-
login:
|
|
6233
|
-
theme:
|
|
6234
|
-
admin:
|
|
6235
|
-
settings:
|
|
6236
|
-
errors:
|
|
6237
|
-
},
|
|
6238
|
-
en:
|
|
6239
|
-
fa:
|
|
6240
|
-
},
|
|
6241
|
-
|
|
6242
|
-
resources:
|
|
6230
|
+
ln.type = "languageDetector";
|
|
6231
|
+
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 = {
|
|
6232
|
+
sidebar: Oa,
|
|
6233
|
+
chat: Fa,
|
|
6234
|
+
tools_ui: La,
|
|
6235
|
+
login: Da,
|
|
6236
|
+
theme: Pa,
|
|
6237
|
+
admin: Ma,
|
|
6238
|
+
settings: za,
|
|
6239
|
+
errors: $a
|
|
6240
|
+
}, 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: "تغییر به تم سیستم" }, 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: "نمایش چرخدنده تنظیمات در محیط چت برای شخصیسازی توسط کاربر.", 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: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Va = { 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 = {
|
|
6241
|
+
sidebar: Ba,
|
|
6242
|
+
chat: Ha,
|
|
6243
|
+
tools_ui: qa,
|
|
6244
|
+
login: ja,
|
|
6245
|
+
theme: Ga,
|
|
6246
|
+
admin: Wa,
|
|
6247
|
+
settings: Va,
|
|
6248
|
+
errors: Ya
|
|
6249
|
+
}, Ka = {
|
|
6250
|
+
en: Ua,
|
|
6251
|
+
fa: Xa
|
|
6252
|
+
}, Za = On.createInstance();
|
|
6253
|
+
Za.use(ln).use(cn).init({
|
|
6254
|
+
resources: Ka,
|
|
6243
6255
|
fallbackLng: "en",
|
|
6244
6256
|
returnNull: !1,
|
|
6245
6257
|
returnEmptyString: !1,
|
|
@@ -6253,8 +6265,8 @@ Xa.use(rn).use(sn).init({
|
|
|
6253
6265
|
caches: ["localStorage"]
|
|
6254
6266
|
}
|
|
6255
6267
|
});
|
|
6256
|
-
function
|
|
6257
|
-
return /* @__PURE__ */
|
|
6268
|
+
function Ni({ className: e, type: t, ...n }) {
|
|
6269
|
+
return /* @__PURE__ */ i(
|
|
6258
6270
|
"input",
|
|
6259
6271
|
{
|
|
6260
6272
|
type: t,
|
|
@@ -6269,27 +6281,27 @@ function Sl({ className: e, type: t, ...n }) {
|
|
|
6269
6281
|
}
|
|
6270
6282
|
);
|
|
6271
6283
|
}
|
|
6272
|
-
const El = "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", Ka = Le(
|
|
6284
|
+
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(
|
|
6273
6285
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
6274
|
-
),
|
|
6286
|
+
), Qa = Ce.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ i(
|
|
6275
6287
|
"label",
|
|
6276
6288
|
{
|
|
6277
6289
|
ref: n,
|
|
6278
|
-
className: y(
|
|
6290
|
+
className: y(Ja(), e),
|
|
6279
6291
|
...t
|
|
6280
6292
|
}
|
|
6281
6293
|
));
|
|
6282
|
-
|
|
6283
|
-
function
|
|
6284
|
-
return /* @__PURE__ */
|
|
6294
|
+
Qa.displayName = "Label";
|
|
6295
|
+
function Ci({ ...e }) {
|
|
6296
|
+
return /* @__PURE__ */ i(L.Root, { "data-slot": "select", ...e });
|
|
6285
6297
|
}
|
|
6286
|
-
function
|
|
6287
|
-
return /* @__PURE__ */
|
|
6298
|
+
function Ai({ ...e }) {
|
|
6299
|
+
return /* @__PURE__ */ i(L.Group, { "data-slot": "select-group", ...e });
|
|
6288
6300
|
}
|
|
6289
|
-
function
|
|
6290
|
-
return /* @__PURE__ */
|
|
6301
|
+
function Ii({ ...e }) {
|
|
6302
|
+
return /* @__PURE__ */ i(L.Value, { "data-slot": "select-value", ...e });
|
|
6291
6303
|
}
|
|
6292
|
-
function
|
|
6304
|
+
function Ri({
|
|
6293
6305
|
className: e,
|
|
6294
6306
|
size: t = "default",
|
|
6295
6307
|
children: n,
|
|
@@ -6307,18 +6319,18 @@ function Al({
|
|
|
6307
6319
|
...o,
|
|
6308
6320
|
children: [
|
|
6309
6321
|
n,
|
|
6310
|
-
/* @__PURE__ */
|
|
6322
|
+
/* @__PURE__ */ i(L.Icon, { asChild: !0, children: /* @__PURE__ */ i(ie, { className: "size-4 opacity-50" }) })
|
|
6311
6323
|
]
|
|
6312
6324
|
}
|
|
6313
6325
|
);
|
|
6314
6326
|
}
|
|
6315
|
-
function
|
|
6327
|
+
function Oi({
|
|
6316
6328
|
className: e,
|
|
6317
6329
|
children: t,
|
|
6318
6330
|
position: n = "popper",
|
|
6319
6331
|
...o
|
|
6320
6332
|
}) {
|
|
6321
|
-
return /* @__PURE__ */
|
|
6333
|
+
return /* @__PURE__ */ i(L.Portal, { children: /* @__PURE__ */ w(
|
|
6322
6334
|
L.Content,
|
|
6323
6335
|
{
|
|
6324
6336
|
"data-slot": "select-content",
|
|
@@ -6330,8 +6342,8 @@ function Il({
|
|
|
6330
6342
|
position: n,
|
|
6331
6343
|
...o,
|
|
6332
6344
|
children: [
|
|
6333
|
-
/* @__PURE__ */
|
|
6334
|
-
/* @__PURE__ */
|
|
6345
|
+
/* @__PURE__ */ i(ei, {}),
|
|
6346
|
+
/* @__PURE__ */ i(
|
|
6335
6347
|
L.Viewport,
|
|
6336
6348
|
{
|
|
6337
6349
|
className: y(
|
|
@@ -6341,13 +6353,13 @@ function Il({
|
|
|
6341
6353
|
children: t
|
|
6342
6354
|
}
|
|
6343
6355
|
),
|
|
6344
|
-
/* @__PURE__ */
|
|
6356
|
+
/* @__PURE__ */ i(ti, {})
|
|
6345
6357
|
]
|
|
6346
6358
|
}
|
|
6347
6359
|
) });
|
|
6348
6360
|
}
|
|
6349
|
-
function
|
|
6350
|
-
return /* @__PURE__ */
|
|
6361
|
+
function Fi({ className: e, ...t }) {
|
|
6362
|
+
return /* @__PURE__ */ i(
|
|
6351
6363
|
L.Label,
|
|
6352
6364
|
{
|
|
6353
6365
|
"data-slot": "select-label",
|
|
@@ -6356,7 +6368,7 @@ function Rl({ className: e, ...t }) {
|
|
|
6356
6368
|
}
|
|
6357
6369
|
);
|
|
6358
6370
|
}
|
|
6359
|
-
function
|
|
6371
|
+
function Li({ className: e, children: t, ...n }) {
|
|
6360
6372
|
return /* @__PURE__ */ w(
|
|
6361
6373
|
L.Item,
|
|
6362
6374
|
{
|
|
@@ -6367,14 +6379,14 @@ function Ol({ className: e, children: t, ...n }) {
|
|
|
6367
6379
|
),
|
|
6368
6380
|
...n,
|
|
6369
6381
|
children: [
|
|
6370
|
-
/* @__PURE__ */
|
|
6371
|
-
/* @__PURE__ */
|
|
6382
|
+
/* @__PURE__ */ i("span", { className: "absolute inset-inline-end-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ i(L.ItemIndicator, { children: /* @__PURE__ */ i(De, { className: "size-4" }) }) }),
|
|
6383
|
+
/* @__PURE__ */ i(L.ItemText, { children: t })
|
|
6372
6384
|
]
|
|
6373
6385
|
}
|
|
6374
6386
|
);
|
|
6375
6387
|
}
|
|
6376
|
-
function
|
|
6377
|
-
return /* @__PURE__ */
|
|
6388
|
+
function Di({ className: e, ...t }) {
|
|
6389
|
+
return /* @__PURE__ */ i(
|
|
6378
6390
|
L.Separator,
|
|
6379
6391
|
{
|
|
6380
6392
|
"data-slot": "select-separator",
|
|
@@ -6383,32 +6395,32 @@ function Fl({ className: e, ...t }) {
|
|
|
6383
6395
|
}
|
|
6384
6396
|
);
|
|
6385
6397
|
}
|
|
6386
|
-
function
|
|
6387
|
-
return /* @__PURE__ */
|
|
6398
|
+
function ei({ className: e, ...t }) {
|
|
6399
|
+
return /* @__PURE__ */ i(
|
|
6388
6400
|
L.ScrollUpButton,
|
|
6389
6401
|
{
|
|
6390
6402
|
"data-slot": "select-scroll-up-button",
|
|
6391
6403
|
className: y("flex cursor-default items-center justify-center py-1", e),
|
|
6392
6404
|
...t,
|
|
6393
|
-
children: /* @__PURE__ */
|
|
6405
|
+
children: /* @__PURE__ */ i(Cn, { className: "size-4" })
|
|
6394
6406
|
}
|
|
6395
6407
|
);
|
|
6396
6408
|
}
|
|
6397
|
-
function
|
|
6409
|
+
function ti({
|
|
6398
6410
|
className: e,
|
|
6399
6411
|
...t
|
|
6400
6412
|
}) {
|
|
6401
|
-
return /* @__PURE__ */
|
|
6413
|
+
return /* @__PURE__ */ i(
|
|
6402
6414
|
L.ScrollDownButton,
|
|
6403
6415
|
{
|
|
6404
6416
|
"data-slot": "select-scroll-down-button",
|
|
6405
6417
|
className: y("flex cursor-default items-center justify-center py-1", e),
|
|
6406
6418
|
...t,
|
|
6407
|
-
children: /* @__PURE__ */
|
|
6419
|
+
children: /* @__PURE__ */ i(ie, { className: "size-4" })
|
|
6408
6420
|
}
|
|
6409
6421
|
);
|
|
6410
6422
|
}
|
|
6411
|
-
function
|
|
6423
|
+
function Pi(e, t) {
|
|
6412
6424
|
if (!e) return !0;
|
|
6413
6425
|
const { field: n, operator: o = "equals", value: r } = e, a = t[n];
|
|
6414
6426
|
switch (o) {
|
|
@@ -6424,19 +6436,19 @@ function Ll(e, t) {
|
|
|
6424
6436
|
return !0;
|
|
6425
6437
|
}
|
|
6426
6438
|
}
|
|
6427
|
-
function
|
|
6428
|
-
return /* @__PURE__ */
|
|
6439
|
+
function Mi({ ...e }) {
|
|
6440
|
+
return /* @__PURE__ */ i(re.Root, { "data-slot": "dropdown-menu", ...e });
|
|
6429
6441
|
}
|
|
6430
|
-
function
|
|
6431
|
-
return /* @__PURE__ */
|
|
6442
|
+
function zi({ ...e }) {
|
|
6443
|
+
return /* @__PURE__ */ i(re.Trigger, { "data-slot": "dropdown-menu-trigger", ...e });
|
|
6432
6444
|
}
|
|
6433
|
-
function
|
|
6445
|
+
function $i({
|
|
6434
6446
|
className: e,
|
|
6435
6447
|
sideOffset: t = 4,
|
|
6436
6448
|
...n
|
|
6437
6449
|
}) {
|
|
6438
|
-
return /* @__PURE__ */
|
|
6439
|
-
|
|
6450
|
+
return /* @__PURE__ */ i(re.Portal, { children: /* @__PURE__ */ i(
|
|
6451
|
+
re.Content,
|
|
6440
6452
|
{
|
|
6441
6453
|
"data-slot": "dropdown-menu-content",
|
|
6442
6454
|
sideOffset: t,
|
|
@@ -6448,14 +6460,14 @@ function Ml({
|
|
|
6448
6460
|
}
|
|
6449
6461
|
) });
|
|
6450
6462
|
}
|
|
6451
|
-
function
|
|
6463
|
+
function Ui({
|
|
6452
6464
|
className: e,
|
|
6453
6465
|
inset: t,
|
|
6454
6466
|
variant: n = "default",
|
|
6455
6467
|
...o
|
|
6456
6468
|
}) {
|
|
6457
|
-
return /* @__PURE__ */
|
|
6458
|
-
|
|
6469
|
+
return /* @__PURE__ */ i(
|
|
6470
|
+
re.Item,
|
|
6459
6471
|
{
|
|
6460
6472
|
"data-slot": "dropdown-menu-item",
|
|
6461
6473
|
"data-inset": t,
|
|
@@ -6468,9 +6480,9 @@ function zl({
|
|
|
6468
6480
|
}
|
|
6469
6481
|
);
|
|
6470
6482
|
}
|
|
6471
|
-
function
|
|
6472
|
-
return /* @__PURE__ */
|
|
6473
|
-
|
|
6483
|
+
function Bi({ className: e, ...t }) {
|
|
6484
|
+
return /* @__PURE__ */ i(
|
|
6485
|
+
Ye.Root,
|
|
6474
6486
|
{
|
|
6475
6487
|
"data-slot": "checkbox",
|
|
6476
6488
|
className: y(
|
|
@@ -6478,72 +6490,73 @@ function $l({ className: e, ...t }) {
|
|
|
6478
6490
|
e
|
|
6479
6491
|
),
|
|
6480
6492
|
...t,
|
|
6481
|
-
children: /* @__PURE__ */
|
|
6482
|
-
|
|
6493
|
+
children: /* @__PURE__ */ i(
|
|
6494
|
+
Ye.Indicator,
|
|
6483
6495
|
{
|
|
6484
6496
|
"data-slot": "checkbox-indicator",
|
|
6485
6497
|
className: "grid place-content-center text-current transition-none",
|
|
6486
|
-
children: /* @__PURE__ */
|
|
6498
|
+
children: /* @__PURE__ */ i(De, { className: "size-3.5" })
|
|
6487
6499
|
}
|
|
6488
6500
|
)
|
|
6489
6501
|
}
|
|
6490
6502
|
);
|
|
6491
6503
|
}
|
|
6492
6504
|
export {
|
|
6493
|
-
|
|
6494
|
-
|
|
6505
|
+
so as $,
|
|
6506
|
+
Ui as A,
|
|
6495
6507
|
ee as B,
|
|
6496
|
-
|
|
6497
|
-
|
|
6498
|
-
|
|
6499
|
-
|
|
6500
|
-
|
|
6501
|
-
|
|
6502
|
-
|
|
6503
|
-
|
|
6504
|
-
|
|
6505
|
-
|
|
6506
|
-
|
|
6507
|
-
|
|
6508
|
-
|
|
6509
|
-
|
|
6510
|
-
|
|
6511
|
-
|
|
6512
|
-
|
|
6513
|
-
|
|
6514
|
-
|
|
6515
|
-
|
|
6516
|
-
|
|
6517
|
-
|
|
6518
|
-
|
|
6519
|
-
|
|
6520
|
-
|
|
6521
|
-
|
|
6522
|
-
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6508
|
+
_i as C,
|
|
6509
|
+
Tr as D,
|
|
6510
|
+
Or as E,
|
|
6511
|
+
Fr as F,
|
|
6512
|
+
Dn as G,
|
|
6513
|
+
xi as H,
|
|
6514
|
+
Ni as I,
|
|
6515
|
+
wi as J,
|
|
6516
|
+
Bi as K,
|
|
6517
|
+
Qa as L,
|
|
6518
|
+
fe as M,
|
|
6519
|
+
ma as N,
|
|
6520
|
+
Zn as O,
|
|
6521
|
+
Un as P,
|
|
6522
|
+
io as Q,
|
|
6523
|
+
Sr as R,
|
|
6524
|
+
Ci as S,
|
|
6525
|
+
Si as T,
|
|
6526
|
+
Ai as U,
|
|
6527
|
+
Fi as V,
|
|
6528
|
+
ti as W,
|
|
6529
|
+
ei as X,
|
|
6530
|
+
Di as Y,
|
|
6531
|
+
vr as Z,
|
|
6532
|
+
ga as _,
|
|
6533
|
+
V as a,
|
|
6534
|
+
vi as a0,
|
|
6535
|
+
Jn as a1,
|
|
6536
|
+
ln as a2,
|
|
6537
|
+
$n as b,
|
|
6538
|
+
ki as c,
|
|
6539
|
+
Ka as d,
|
|
6527
6540
|
y as e,
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6541
|
+
ao as f,
|
|
6542
|
+
Za as g,
|
|
6543
|
+
At as h,
|
|
6544
|
+
It as i,
|
|
6545
|
+
yi as j,
|
|
6546
|
+
Rt as k,
|
|
6547
|
+
Ot as l,
|
|
6548
|
+
Ei as m,
|
|
6549
|
+
Pi as n,
|
|
6550
|
+
Cr as o,
|
|
6551
|
+
Rr as p,
|
|
6552
|
+
Ri as q,
|
|
6553
|
+
Ii as r,
|
|
6554
|
+
Oi as s,
|
|
6555
|
+
Li as t,
|
|
6543
6556
|
S as u,
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6557
|
+
Ti as v,
|
|
6558
|
+
ge as w,
|
|
6559
|
+
Mi as x,
|
|
6560
|
+
zi as y,
|
|
6561
|
+
$i as z
|
|
6549
6562
|
};
|