gentiq 0.7.26 → 0.7.28
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-DIJ7BlxY.js} +1084 -1062
- package/dist/gentiq-admin.es.js +1042 -947
- package/dist/gentiq-index.es.js +1018 -1022
- 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 St, useEffect as Q, Children as cn, useRef as Ge, memo as de, createContext as pe, useContext as Le } from "react";
|
|
4
|
+
import { useTranslation as M, initReactI18next as un } from "react-i18next";
|
|
5
|
+
import { ArrowDownIcon as dn, ChevronDownIcon as ie, BookIcon as pn, XIcon as he, CheckIcon as De, ArrowUpIcon as hn, Loader2Icon as gn, SquareIcon as mn, FileIcon as Et, PaperclipIcon as fn, MessageCircle as bn, RefreshCcwIcon as yn, ThumbsUpIcon as kn, ThumbsDownIcon as vn, CopyIcon as Nt, BrainIcon as wn, WrenchIcon as xn, ImagePlusIcon as _n, CodeIcon as Sn, DownloadIcon as ue, GlobeIcon as En, XCircleIcon as Tt, CheckCircleIcon as Nn, ClockIcon as Tn, CircleIcon as Cn, ChevronUpIcon as An } from "lucide-react";
|
|
6
|
+
import { Slot as Ct } from "@radix-ui/react-slot";
|
|
7
|
+
import { cva as Pe } from "class-variance-authority";
|
|
8
|
+
import { StickToBottom as At, useStickToBottomContext as In } 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 Rn } 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 On } from "streamdown";
|
|
14
|
+
import Ve from "katex";
|
|
15
|
+
import { useControllableState as We } 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 Fn 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 Ln } from "clsx";
|
|
23
|
+
import { twMerge as Dn } from "tailwind-merge";
|
|
24
|
+
class Xe extends Error {
|
|
25
25
|
code;
|
|
26
26
|
status;
|
|
27
27
|
details;
|
|
@@ -29,8 +29,11 @@ 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
|
|
33
|
-
const n = typeof e == "string" ? e : e.code
|
|
32
|
+
function yi(e, t) {
|
|
33
|
+
const n = typeof e == "string" ? e : e.code;
|
|
34
|
+
if (typeof n != "string")
|
|
35
|
+
return e?.message || String(e);
|
|
36
|
+
const o = `errors:${n}`, r = t(o);
|
|
34
37
|
return r === o ? typeof e != "string" && e.message ? e.message : n.replace(/_/g, " ").replace(/\b\w/g, (a) => a.toUpperCase()) : r;
|
|
35
38
|
}
|
|
36
39
|
let N = {
|
|
@@ -42,7 +45,7 @@ let N = {
|
|
|
42
45
|
cacheNamespace: "gentiq"
|
|
43
46
|
}
|
|
44
47
|
};
|
|
45
|
-
const
|
|
48
|
+
const Pn = {
|
|
46
49
|
getToken: () => localStorage.getItem("token"),
|
|
47
50
|
setToken: (e) => localStorage.setItem("token", e),
|
|
48
51
|
clearToken: () => {
|
|
@@ -53,7 +56,7 @@ const Dn = {
|
|
|
53
56
|
return e ? { Authorization: `Bearer ${e}` } : {};
|
|
54
57
|
}
|
|
55
58
|
};
|
|
56
|
-
let
|
|
59
|
+
let F = Pn;
|
|
57
60
|
const S = {
|
|
58
61
|
init: (e) => {
|
|
59
62
|
if (N = {
|
|
@@ -63,7 +66,7 @@ const S = {
|
|
|
63
66
|
app: e.app ? { ...N.app, ...e.app } : N.app
|
|
64
67
|
}, e.api?.authAdapter) {
|
|
65
68
|
const t = e.api.authAdapter;
|
|
66
|
-
|
|
69
|
+
F = {
|
|
67
70
|
...t,
|
|
68
71
|
getHeaders: t.getHeaders || (() => {
|
|
69
72
|
const n = t.getToken();
|
|
@@ -73,14 +76,14 @@ const S = {
|
|
|
73
76
|
}
|
|
74
77
|
},
|
|
75
78
|
getConfig: () => N,
|
|
76
|
-
getToken: () =>
|
|
79
|
+
getToken: () => F.getToken(),
|
|
77
80
|
setToken: (e) => {
|
|
78
|
-
|
|
81
|
+
F.setToken(e);
|
|
79
82
|
},
|
|
80
83
|
clearToken: () => {
|
|
81
|
-
|
|
84
|
+
F.clearToken();
|
|
82
85
|
},
|
|
83
|
-
getHeaders: () =>
|
|
86
|
+
getHeaders: () => F.getHeaders(),
|
|
84
87
|
getEndpoint: (e, t, ...n) => {
|
|
85
88
|
const o = N.api?.endpoints?.[e];
|
|
86
89
|
return o ? typeof o == "function" ? o(...n) : o : typeof t == "function" ? t(...n) : t;
|
|
@@ -88,10 +91,16 @@ const S = {
|
|
|
88
91
|
handleResponse: async (e, t = "Request failed") => {
|
|
89
92
|
if (!e.ok) {
|
|
90
93
|
const n = await e.json().catch(() => ({}));
|
|
91
|
-
if (n.error && (n.error.code || n.error.message))
|
|
92
|
-
throw new
|
|
93
|
-
|
|
94
|
-
throw r.
|
|
94
|
+
if (n.error && (typeof n.error.code == "string" || typeof n.error.message == "string"))
|
|
95
|
+
throw new Xe(n, e.status);
|
|
96
|
+
let o = t, r = "error", a = null;
|
|
97
|
+
throw typeof n.detail == "string" ? o = n.detail : typeof n.message == "string" ? o = n.message : typeof n.error == "string" ? o = n.error : Array.isArray(n.detail) ? (o = "Validation failed", a = n.detail, r = "validation_error") : n.error && typeof n.error.message == "string" && (o = n.error.message), new Xe({
|
|
98
|
+
error: {
|
|
99
|
+
code: r,
|
|
100
|
+
message: o,
|
|
101
|
+
details: a
|
|
102
|
+
}
|
|
103
|
+
}, e.status);
|
|
95
104
|
}
|
|
96
105
|
return e.json();
|
|
97
106
|
},
|
|
@@ -104,17 +113,17 @@ const S = {
|
|
|
104
113
|
return r.token && S.setToken(r.token), r;
|
|
105
114
|
},
|
|
106
115
|
register: async (e, t, n, o, r) => {
|
|
107
|
-
const a = S.getEndpoint("register", "/public/auth/register"),
|
|
116
|
+
const a = S.getEndpoint("register", "/public/auth/register"), l = await fetch(`${N.api?.basePath}${a}`, {
|
|
108
117
|
method: "POST",
|
|
109
118
|
headers: { "Content-Type": "application/json" },
|
|
110
119
|
body: JSON.stringify({ phone: e, password: t, name: n, surname: o, metadata: r })
|
|
111
|
-
}), c = await S.handleResponse(
|
|
120
|
+
}), c = await S.handleResponse(l, "Registration failed");
|
|
112
121
|
return c.token && S.setToken(c.token), c;
|
|
113
122
|
},
|
|
114
123
|
getBalance: async () => {
|
|
115
124
|
const e = S.getEndpoint("balance", "/users/balance"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
116
125
|
headers: {
|
|
117
|
-
...
|
|
126
|
+
...F.getHeaders()
|
|
118
127
|
}
|
|
119
128
|
});
|
|
120
129
|
return S.handleResponse(t, "Failed to fetch balance");
|
|
@@ -122,7 +131,7 @@ const S = {
|
|
|
122
131
|
getHistory: async (e = 0, t = 50) => {
|
|
123
132
|
const n = S.getEndpoint("threads", "/chat/threads"), o = await fetch(`${N.api?.basePath}${n}?skip=${e}&limit=${t}`, {
|
|
124
133
|
headers: {
|
|
125
|
-
...
|
|
134
|
+
...F.getHeaders()
|
|
126
135
|
}
|
|
127
136
|
});
|
|
128
137
|
return S.handleResponse(o, "Failed to fetch chat history");
|
|
@@ -131,7 +140,7 @@ const S = {
|
|
|
131
140
|
if (!S.getToken()) throw new Error("No token found");
|
|
132
141
|
const n = S.getEndpoint("threadMessages", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
133
142
|
headers: {
|
|
134
|
-
...
|
|
143
|
+
...F.getHeaders()
|
|
135
144
|
}
|
|
136
145
|
});
|
|
137
146
|
return S.handleResponse(o, "Failed to fetch thread messages");
|
|
@@ -141,7 +150,7 @@ const S = {
|
|
|
141
150
|
const n = S.getEndpoint("deleteThread", (r) => `/chat/threads/${r.replace(/^\//, "")}`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
142
151
|
method: "DELETE",
|
|
143
152
|
headers: {
|
|
144
|
-
...
|
|
153
|
+
...F.getHeaders()
|
|
145
154
|
}
|
|
146
155
|
});
|
|
147
156
|
return S.handleResponse(o, "Failed to delete thread");
|
|
@@ -152,7 +161,7 @@ const S = {
|
|
|
152
161
|
method: "PATCH",
|
|
153
162
|
headers: {
|
|
154
163
|
"Content-Type": "application/json",
|
|
155
|
-
...
|
|
164
|
+
...F.getHeaders()
|
|
156
165
|
},
|
|
157
166
|
body: JSON.stringify({ title: t })
|
|
158
167
|
});
|
|
@@ -167,7 +176,7 @@ const S = {
|
|
|
167
176
|
if (N.api?.attachmentResolver)
|
|
168
177
|
return N.api.attachmentResolver(e);
|
|
169
178
|
const t = S.getEndpoint("attachments", (r) => `/chat/attachments/${r}`, e), n = await fetch(`${N.api?.basePath}${t}`, {
|
|
170
|
-
headers: { ...
|
|
179
|
+
headers: { ...F.getHeaders() }
|
|
171
180
|
});
|
|
172
181
|
if (!n.ok) return S.handleResponse(n, "Failed to fetch attachment");
|
|
173
182
|
const o = await n.blob();
|
|
@@ -192,7 +201,7 @@ const S = {
|
|
|
192
201
|
method: "POST",
|
|
193
202
|
headers: {
|
|
194
203
|
"Content-Type": "application/json",
|
|
195
|
-
...
|
|
204
|
+
...F.getHeaders()
|
|
196
205
|
},
|
|
197
206
|
body: JSON.stringify({
|
|
198
207
|
thread_id: e.replace(/^\//, ""),
|
|
@@ -205,7 +214,7 @@ const S = {
|
|
|
205
214
|
getMe: async () => {
|
|
206
215
|
const e = S.getEndpoint("me", "/users/me"), t = await fetch(`${N.api?.basePath}${e}`, {
|
|
207
216
|
headers: {
|
|
208
|
-
...
|
|
217
|
+
...F.getHeaders()
|
|
209
218
|
}
|
|
210
219
|
});
|
|
211
220
|
return S.handleResponse(t, "Failed to fetch user profile");
|
|
@@ -215,7 +224,7 @@ const S = {
|
|
|
215
224
|
method: "PATCH",
|
|
216
225
|
headers: {
|
|
217
226
|
"Content-Type": "application/json",
|
|
218
|
-
...
|
|
227
|
+
...F.getHeaders()
|
|
219
228
|
},
|
|
220
229
|
body: JSON.stringify(e)
|
|
221
230
|
});
|
|
@@ -227,7 +236,7 @@ const S = {
|
|
|
227
236
|
method: "PATCH",
|
|
228
237
|
headers: {
|
|
229
238
|
"Content-Type": "application/json",
|
|
230
|
-
...
|
|
239
|
+
...F.getHeaders()
|
|
231
240
|
},
|
|
232
241
|
body: JSON.stringify({ pinned: t })
|
|
233
242
|
});
|
|
@@ -238,7 +247,7 @@ const S = {
|
|
|
238
247
|
const n = S.getEndpoint("shareThread", (r) => `/chat/threads/${r.replace(/^\//, "")}/share`, e), o = await fetch(`${N.api?.basePath}${n}`, {
|
|
239
248
|
method: "POST",
|
|
240
249
|
headers: {
|
|
241
|
-
...
|
|
250
|
+
...F.getHeaders()
|
|
242
251
|
}
|
|
243
252
|
});
|
|
244
253
|
return S.handleResponse(o, "Failed to share thread");
|
|
@@ -256,15 +265,15 @@ const S = {
|
|
|
256
265
|
return S.handleResponse(e, "Failed to fetch app configuration");
|
|
257
266
|
}
|
|
258
267
|
};
|
|
259
|
-
function
|
|
260
|
-
const [n, o] =
|
|
268
|
+
function Mn(e, t) {
|
|
269
|
+
const [n, o] = B(
|
|
261
270
|
e.metadata?.feedback
|
|
262
|
-
), r =
|
|
263
|
-
navigator.clipboard.writeText(
|
|
271
|
+
), r = oe((l) => {
|
|
272
|
+
navigator.clipboard.writeText(l).catch((c) => {
|
|
264
273
|
console.error("Error copying text:", c);
|
|
265
274
|
});
|
|
266
|
-
}, []), a =
|
|
267
|
-
const c = n ===
|
|
275
|
+
}, []), a = oe(async (l) => {
|
|
276
|
+
const c = n === l ? void 0 : l;
|
|
268
277
|
o(c);
|
|
269
278
|
try {
|
|
270
279
|
const s = e.parts.find((h) => h.type === "data-message-id"), p = s ? s.data[0].message_id : e.id;
|
|
@@ -279,10 +288,10 @@ function Pn(e, t) {
|
|
|
279
288
|
copy: r
|
|
280
289
|
};
|
|
281
290
|
}
|
|
282
|
-
const
|
|
283
|
-
function
|
|
284
|
-
const { i18n: e } = M(["translation"]), { app: t } = W(), n =
|
|
285
|
-
const
|
|
291
|
+
const zn = /* @__PURE__ */ new Set(["ar", "fa", "he", "ur", "yi", "ku", "ckb", "ps", "sd", "ug", "arc", "syc"]);
|
|
292
|
+
function $n() {
|
|
293
|
+
const { i18n: e } = M(["translation"]), { app: t } = W(), n = St(() => {
|
|
294
|
+
const l = S.getConfig(), c = t || l.app;
|
|
286
295
|
return {
|
|
287
296
|
name: c?.name || "Gentiq App",
|
|
288
297
|
// Use i18n.language as the primary source for the UI state.
|
|
@@ -290,11 +299,11 @@ function zn() {
|
|
|
290
299
|
language: e.language || c?.language || "en",
|
|
291
300
|
showToolDetails: c?.showToolDetails ?? !0
|
|
292
301
|
};
|
|
293
|
-
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r =
|
|
302
|
+
}, [e.language, t]), o = (n.language ?? "").split("-")[0].toLowerCase(), r = zn.has(o), a = t?.language;
|
|
294
303
|
return Q(() => {
|
|
295
304
|
if (typeof window > "u") return;
|
|
296
|
-
const
|
|
297
|
-
a && a !==
|
|
305
|
+
const l = localStorage.getItem("gentiq-last-default-lang");
|
|
306
|
+
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
307
|
}, [r, e, e.language, a]), {
|
|
299
308
|
appName: n.name || "Gentiq",
|
|
300
309
|
language: n.language || e.language,
|
|
@@ -305,55 +314,55 @@ function zn() {
|
|
|
305
314
|
error: null
|
|
306
315
|
};
|
|
307
316
|
}
|
|
308
|
-
function
|
|
317
|
+
function Un(e) {
|
|
309
318
|
const {
|
|
310
319
|
part: t,
|
|
311
320
|
message: n,
|
|
312
321
|
status: o,
|
|
313
322
|
regen: r,
|
|
314
323
|
index: a,
|
|
315
|
-
lastMessage:
|
|
324
|
+
lastMessage: l,
|
|
316
325
|
conversationId: c,
|
|
317
326
|
isFinished: s,
|
|
318
327
|
renderMessagePart: p,
|
|
319
328
|
chat: h,
|
|
320
329
|
readonly: f
|
|
321
|
-
} = e, { showToolDetails: b } =
|
|
330
|
+
} = e, { showToolDetails: b } = $n(), { TextPart: m, ReasoningPart: y, ToolPart: d, FilePart: v, toolComponents: x, threadActions: g } = W(), { feedback: R, handleFeedback: E, copy: I } = Mn(n, c);
|
|
322
331
|
if (p) {
|
|
323
|
-
const
|
|
324
|
-
if (
|
|
325
|
-
return /* @__PURE__ */
|
|
332
|
+
const O = p(t, n);
|
|
333
|
+
if (O !== void 0)
|
|
334
|
+
return /* @__PURE__ */ i(J, { children: O });
|
|
326
335
|
}
|
|
327
336
|
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__ */
|
|
337
|
+
const z = n.parts.filter(
|
|
338
|
+
(O) => !["data-progress-update", "data-message-id", "data-chat-finished", "data-title"].includes(O.type)
|
|
339
|
+
), ne = t === z[z.length - 1];
|
|
340
|
+
return t.type === "text" ? /* @__PURE__ */ i(
|
|
332
341
|
m,
|
|
333
342
|
{
|
|
334
343
|
part: t,
|
|
335
344
|
message: n,
|
|
336
345
|
status: o,
|
|
337
346
|
isFinished: !!s,
|
|
338
|
-
lastMessage:
|
|
339
|
-
isLastVisiblePart:
|
|
347
|
+
lastMessage: l,
|
|
348
|
+
isLastVisiblePart: ne,
|
|
340
349
|
regen: r,
|
|
341
|
-
feedback:
|
|
342
|
-
handleFeedback:
|
|
343
|
-
copyHost:
|
|
350
|
+
feedback: R,
|
|
351
|
+
handleFeedback: E,
|
|
352
|
+
copyHost: I,
|
|
344
353
|
feedbackEnabled: f ? !1 : g?.feedback ?? !1,
|
|
345
354
|
retryEnabled: f ? !1 : g?.retry ?? !1
|
|
346
355
|
}
|
|
347
|
-
) : t.type === "reasoning" ? /* @__PURE__ */
|
|
348
|
-
|
|
356
|
+
) : t.type === "reasoning" ? /* @__PURE__ */ i(
|
|
357
|
+
y,
|
|
349
358
|
{
|
|
350
359
|
part: t,
|
|
351
360
|
status: o,
|
|
352
361
|
index: a,
|
|
353
362
|
partsCount: n.parts.length,
|
|
354
|
-
lastMessage:
|
|
363
|
+
lastMessage: l
|
|
355
364
|
}
|
|
356
|
-
) : t.type.startsWith("tool-") || "toolCallId" in t ? /* @__PURE__ */
|
|
365
|
+
) : t.type.startsWith("tool-") || "toolCallId" in t ? /* @__PURE__ */ i(
|
|
357
366
|
d,
|
|
358
367
|
{
|
|
359
368
|
part: t,
|
|
@@ -362,7 +371,7 @@ function $n(e) {
|
|
|
362
371
|
toolComponents: x,
|
|
363
372
|
showToolCalls: !!b
|
|
364
373
|
}
|
|
365
|
-
) : t.type === "file" ? /* @__PURE__ */
|
|
374
|
+
) : t.type === "file" ? /* @__PURE__ */ i(
|
|
366
375
|
v,
|
|
367
376
|
{
|
|
368
377
|
part: t,
|
|
@@ -370,23 +379,23 @@ function $n(e) {
|
|
|
370
379
|
}
|
|
371
380
|
) : null;
|
|
372
381
|
}
|
|
373
|
-
function
|
|
374
|
-
return
|
|
382
|
+
function k(...e) {
|
|
383
|
+
return Dn(Ln(e));
|
|
375
384
|
}
|
|
376
|
-
function
|
|
385
|
+
function ki(e, t) {
|
|
377
386
|
if (t === "/") return e;
|
|
378
387
|
const n = e.endsWith("/") ? e.slice(0, -1) : e, o = t.startsWith("/") ? t : "/" + t;
|
|
379
388
|
return n + o;
|
|
380
389
|
}
|
|
381
|
-
const fe = ({ className: e, ...t }) => /* @__PURE__ */
|
|
390
|
+
const fe = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
382
391
|
"div",
|
|
383
392
|
{
|
|
384
|
-
className:
|
|
393
|
+
className: k(
|
|
385
394
|
"flex items-center gap-1.5 px-1 py-3",
|
|
386
395
|
e
|
|
387
396
|
),
|
|
388
397
|
...t,
|
|
389
|
-
children: [0, 1, 2].map((n) => /* @__PURE__ */
|
|
398
|
+
children: [0, 1, 2].map((n) => /* @__PURE__ */ i(
|
|
390
399
|
"span",
|
|
391
400
|
{
|
|
392
401
|
className: "size-2 rounded-full bg-primary/70",
|
|
@@ -398,18 +407,18 @@ const fe = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
398
407
|
n
|
|
399
408
|
))
|
|
400
409
|
}
|
|
401
|
-
),
|
|
402
|
-
function
|
|
410
|
+
), Bn = /[\u0591-\u07FF\uFB1D-\uFDFD\uFE70-\uFEFC]/;
|
|
411
|
+
function ge(e, t = "ltr") {
|
|
403
412
|
if (!e) return t;
|
|
404
413
|
for (const n of e) {
|
|
405
|
-
if (
|
|
414
|
+
if (Bn.test(n))
|
|
406
415
|
return "rtl";
|
|
407
416
|
if (/[A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02B8]/.test(n))
|
|
408
417
|
return "ltr";
|
|
409
418
|
}
|
|
410
419
|
return "ltr";
|
|
411
420
|
}
|
|
412
|
-
const
|
|
421
|
+
const Hn = Pe(
|
|
413
422
|
"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
423
|
{
|
|
415
424
|
variants: {
|
|
@@ -441,32 +450,32 @@ function ee({
|
|
|
441
450
|
asChild: o = !1,
|
|
442
451
|
...r
|
|
443
452
|
}) {
|
|
444
|
-
return /* @__PURE__ */
|
|
453
|
+
return /* @__PURE__ */ i(o ? Ct : "button", { "data-slot": "button", className: k(Hn({ variant: t, size: n, className: e })), ...r });
|
|
445
454
|
}
|
|
446
|
-
const
|
|
447
|
-
|
|
455
|
+
const qn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
456
|
+
At,
|
|
448
457
|
{
|
|
449
|
-
className:
|
|
458
|
+
className: k("relative flex-1 overflow-hidden", e),
|
|
450
459
|
initial: "smooth",
|
|
451
460
|
resize: "smooth",
|
|
452
461
|
role: "log",
|
|
453
462
|
...t
|
|
454
463
|
}
|
|
455
|
-
), jn = ({ className: e, ...t }) => /* @__PURE__ */
|
|
456
|
-
|
|
464
|
+
), jn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
465
|
+
At.Content,
|
|
457
466
|
{
|
|
458
|
-
className:
|
|
467
|
+
className: k("p-4 pb-6 stick-to-bottom", e),
|
|
459
468
|
scrollClassName: "custom-scrollbar",
|
|
460
469
|
...t
|
|
461
470
|
}
|
|
462
|
-
),
|
|
463
|
-
const { isAtBottom: n, scrollToBottom: o } =
|
|
471
|
+
), Gn = ({ className: e, ...t }) => {
|
|
472
|
+
const { isAtBottom: n, scrollToBottom: o } = In(), r = oe(() => {
|
|
464
473
|
o();
|
|
465
474
|
}, [o]);
|
|
466
|
-
return n ? null : /* @__PURE__ */
|
|
475
|
+
return n ? null : /* @__PURE__ */ i(
|
|
467
476
|
"button",
|
|
468
477
|
{
|
|
469
|
-
className:
|
|
478
|
+
className: k(
|
|
470
479
|
"absolute bottom-32 left-1/2 -translate-x-1/2 z-10",
|
|
471
480
|
"flex items-center gap-1.5 px-4 py-2 rounded-full text-sm font-medium",
|
|
472
481
|
"glass border border-border/50 shadow-lg shadow-black/10",
|
|
@@ -479,74 +488,74 @@ const Hn = ({ className: e, ...t }) => /* @__PURE__ */ l(
|
|
|
479
488
|
onClick: r,
|
|
480
489
|
type: "button",
|
|
481
490
|
...t,
|
|
482
|
-
children: /* @__PURE__ */
|
|
491
|
+
children: /* @__PURE__ */ i(dn, { className: "size-3.5" })
|
|
483
492
|
}
|
|
484
493
|
);
|
|
485
494
|
};
|
|
486
|
-
function
|
|
487
|
-
return /* @__PURE__ */
|
|
495
|
+
function ze({ ...e }) {
|
|
496
|
+
return /* @__PURE__ */ i(Me.Root, { "data-slot": "collapsible", ...e });
|
|
488
497
|
}
|
|
489
|
-
function
|
|
490
|
-
return /* @__PURE__ */
|
|
498
|
+
function $e({ ...e }) {
|
|
499
|
+
return /* @__PURE__ */ i(Me.CollapsibleTrigger, { "data-slot": "collapsible-trigger", ...e });
|
|
491
500
|
}
|
|
492
|
-
function
|
|
493
|
-
return /* @__PURE__ */
|
|
501
|
+
function Ue({ ...e }) {
|
|
502
|
+
return /* @__PURE__ */ i(Me.CollapsibleContent, { "data-slot": "collapsible-content", ...e });
|
|
494
503
|
}
|
|
495
|
-
const
|
|
504
|
+
const Vn = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not-prose mb-4 text-primary text-xs", e), ...t }), Wn = ({ className: e, count: t, children: n, ...o }) => {
|
|
496
505
|
const { t: r } = M(["chat"]);
|
|
497
|
-
return /* @__PURE__ */
|
|
498
|
-
/* @__PURE__ */
|
|
499
|
-
/* @__PURE__ */
|
|
506
|
+
return /* @__PURE__ */ i($e, { className: k("flex items-center gap-2", e), ...o, children: n ?? /* @__PURE__ */ w(J, { children: [
|
|
507
|
+
/* @__PURE__ */ i("p", { className: "font-medium", children: r("used_sources", { count: t }) }),
|
|
508
|
+
/* @__PURE__ */ i(ie, { className: "h-4 w-4" })
|
|
500
509
|
] }) });
|
|
501
|
-
},
|
|
502
|
-
|
|
510
|
+
}, Yn = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
511
|
+
Ue,
|
|
503
512
|
{
|
|
504
|
-
className:
|
|
513
|
+
className: k(
|
|
505
514
|
"mt-3 flex w-fit flex-col gap-2",
|
|
506
515
|
"data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",
|
|
507
516
|
e
|
|
508
517
|
),
|
|
509
518
|
...t
|
|
510
519
|
}
|
|
511
|
-
),
|
|
512
|
-
/* @__PURE__ */
|
|
513
|
-
/* @__PURE__ */
|
|
514
|
-
] }) }),
|
|
520
|
+
), 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: [
|
|
521
|
+
/* @__PURE__ */ i(pn, { className: "h-4 w-4" }),
|
|
522
|
+
/* @__PURE__ */ i("span", { className: "block font-medium", children: t })
|
|
523
|
+
] }) }), Kn = ({ latestProgress: e, parts: t }) => {
|
|
515
524
|
const n = e.data[0].status, o = e.data[0].message, r = t.lastIndexOf(e);
|
|
516
525
|
if (!!(t.slice(r + 1).some(
|
|
517
526
|
(f) => f.type === "text" && (f.text || "").trim().length > 0 || f.type === "tool-invocation" || f.type === "tool-call"
|
|
518
527
|
) && n !== "running")) return null;
|
|
519
|
-
const s = n === "running", p = n === "error", h =
|
|
520
|
-
return /* @__PURE__ */
|
|
528
|
+
const s = n === "running", p = n === "error", h = ge(o);
|
|
529
|
+
return /* @__PURE__ */ i("div", { className: k(
|
|
521
530
|
"flex w-full py-3 mx-auto max-w-4xl px-4 md:px-0 animate-in-bubble",
|
|
522
531
|
h === "rtl" ? "justify-end" : "justify-start"
|
|
523
|
-
), children: /* @__PURE__ */ w("div", { className:
|
|
524
|
-
s ? /* @__PURE__ */
|
|
525
|
-
/* @__PURE__ */
|
|
532
|
+
), children: /* @__PURE__ */ w("div", { className: k("flex items-center gap-3 text-sm text-muted-foreground", h === "rtl" && "flex-row-reverse"), dir: h, children: [
|
|
533
|
+
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" }),
|
|
534
|
+
/* @__PURE__ */ i("span", { className: k("font-medium", s && "animate-pulse"), children: o })
|
|
526
535
|
] }) });
|
|
527
536
|
};
|
|
528
|
-
function
|
|
537
|
+
function Zn({
|
|
529
538
|
messages: e,
|
|
530
539
|
status: t,
|
|
531
540
|
isLoadingHistory: n,
|
|
532
541
|
error: o,
|
|
533
542
|
conversationId: r,
|
|
534
543
|
regen: a,
|
|
535
|
-
onSuggestionClick:
|
|
544
|
+
onSuggestionClick: l,
|
|
536
545
|
chat: c,
|
|
537
546
|
className: s,
|
|
538
547
|
readonly: p
|
|
539
548
|
}) {
|
|
540
|
-
const { i18n: h, t: f } = M(["chat", "translation"]), b = h.language === "fa", { WelcomeScreen: m } = W(),
|
|
541
|
-
return /* @__PURE__ */ w(
|
|
549
|
+
const { i18n: h, t: f } = M(["chat", "translation"]), b = h.language === "fa", { WelcomeScreen: m } = W(), y = e[e.length - 1], d = y?.role === "assistant" && (t === "ready" || y.parts.some((v) => v.type === "data-chat-finished"));
|
|
550
|
+
return /* @__PURE__ */ w(qn, { className: k("min-h-0 flex-1", s), children: [
|
|
542
551
|
/* @__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__ */
|
|
552
|
+
e.length === 0 && !n ? /* @__PURE__ */ i(m, { onSuggestionClick: l }) : e.map((v) => /* @__PURE__ */ w("div", { children: [
|
|
553
|
+
v.role === "assistant" && v.parts.filter((x) => x.type === "source-url").length > 0 && /* @__PURE__ */ w(Vn, { children: [
|
|
554
|
+
/* @__PURE__ */ i(Wn, { count: v.parts.filter((x) => x.type === "source-url").length }),
|
|
555
|
+
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
556
|
] }),
|
|
548
|
-
v.parts.map((x, g) => /* @__PURE__ */
|
|
549
|
-
|
|
557
|
+
v.parts.map((x, g) => /* @__PURE__ */ i(
|
|
558
|
+
Un,
|
|
550
559
|
{
|
|
551
560
|
part: x,
|
|
552
561
|
message: v,
|
|
@@ -563,40 +572,40 @@ function Kn({
|
|
|
563
572
|
))
|
|
564
573
|
] }, v.id)),
|
|
565
574
|
(() => {
|
|
566
|
-
if (!
|
|
567
|
-
const v =
|
|
575
|
+
if (!y || y.role !== "assistant") return null;
|
|
576
|
+
const v = y.parts.filter((g) => g.type === "data-progress-update");
|
|
568
577
|
if (v.length === 0) return null;
|
|
569
578
|
const x = v[v.length - 1];
|
|
570
|
-
return x ? /* @__PURE__ */
|
|
579
|
+
return x ? /* @__PURE__ */ i(Kn, { latestProgress: x, parts: y.parts }) : null;
|
|
571
580
|
})(),
|
|
572
|
-
(n || t === "submitted") && /* @__PURE__ */
|
|
581
|
+
(n || t === "submitted") && /* @__PURE__ */ i("div", { className: "animate-in-bubble", children: /* @__PURE__ */ i(fe, {}) }),
|
|
573
582
|
t === "streaming" && (() => {
|
|
574
583
|
const v = e[e.length - 1];
|
|
575
|
-
return !v || v.role === "user" ? /* @__PURE__ */
|
|
584
|
+
return !v || v.role === "user" ? /* @__PURE__ */ i(fe, {}) : v.parts?.some(
|
|
576
585
|
(g) => g.type === "text" && g.text?.trim().length > 0 || g.type === "reasoning" || g.type === "tool-invocation" || g.type === "tool-call"
|
|
577
|
-
) ? null : /* @__PURE__ */
|
|
586
|
+
) ? null : /* @__PURE__ */ i(fe, {});
|
|
578
587
|
})(),
|
|
579
|
-
t === "error" && o && /* @__PURE__ */
|
|
588
|
+
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: k(
|
|
580
589
|
"flex w-full items-start gap-3 px-4 py-3.5 rounded-xl bg-destructive/8 border border-destructive/15",
|
|
581
590
|
b ? "border-r-2 border-r-destructive/60" : "border-l-2 border-l-destructive/60"
|
|
582
591
|
), dir: b ? "rtl" : "ltr", children: [
|
|
583
|
-
/* @__PURE__ */
|
|
584
|
-
/* @__PURE__ */ w("div", { className:
|
|
585
|
-
/* @__PURE__ */
|
|
592
|
+
/* @__PURE__ */ i("div", { className: "size-1.5 rounded-full bg-destructive mt-2 shrink-0" }),
|
|
593
|
+
/* @__PURE__ */ w("div", { className: k("text-sm text-destructive/90 leading-relaxed flex-1", b ? "text-right" : "text-left"), children: [
|
|
594
|
+
/* @__PURE__ */ i("span", { className: "font-semibold", children: f("error") }),
|
|
586
595
|
" ",
|
|
587
596
|
o.message
|
|
588
597
|
] })
|
|
589
598
|
] }) })
|
|
590
599
|
] }),
|
|
591
|
-
/* @__PURE__ */
|
|
600
|
+
/* @__PURE__ */ i(Gn, {})
|
|
592
601
|
] });
|
|
593
602
|
}
|
|
594
|
-
function
|
|
595
|
-
return /* @__PURE__ */
|
|
603
|
+
function Jn({ className: e, ...t }) {
|
|
604
|
+
return /* @__PURE__ */ i(
|
|
596
605
|
"textarea",
|
|
597
606
|
{
|
|
598
607
|
"data-slot": "textarea",
|
|
599
|
-
className:
|
|
608
|
+
className: k(
|
|
600
609
|
"border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
|
|
601
610
|
e
|
|
602
611
|
),
|
|
@@ -604,10 +613,10 @@ function Zn({ className: e, ...t }) {
|
|
|
604
613
|
}
|
|
605
614
|
);
|
|
606
615
|
}
|
|
607
|
-
const
|
|
616
|
+
const Qn = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: "bg-transparent w-full", children: /* @__PURE__ */ i(
|
|
608
617
|
"form",
|
|
609
618
|
{
|
|
610
|
-
className:
|
|
619
|
+
className: k(
|
|
611
620
|
"w-full flex items-end gap-2 overflow-hidden",
|
|
612
621
|
"rounded-lg bg-surface glow-primary",
|
|
613
622
|
"px-3 py-2",
|
|
@@ -619,7 +628,7 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
619
628
|
),
|
|
620
629
|
...t
|
|
621
630
|
}
|
|
622
|
-
) }),
|
|
631
|
+
) }), eo = ({
|
|
623
632
|
onChange: e,
|
|
624
633
|
className: t,
|
|
625
634
|
placeholder: n = "What would you like to know?",
|
|
@@ -633,12 +642,12 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
633
642
|
const s = c.currentTarget.form;
|
|
634
643
|
s && s.requestSubmit();
|
|
635
644
|
}
|
|
636
|
-
}, { i18n: a } = M(["chat"]),
|
|
637
|
-
return /* @__PURE__ */
|
|
638
|
-
|
|
645
|
+
}, { i18n: a } = M(["chat"]), l = ge(o.value, a.dir());
|
|
646
|
+
return /* @__PURE__ */ i(
|
|
647
|
+
Jn,
|
|
639
648
|
{
|
|
640
|
-
dir:
|
|
641
|
-
className:
|
|
649
|
+
dir: l,
|
|
650
|
+
className: k(
|
|
642
651
|
"flex-1 resize-none rounded-none border-none shadow-none outline-none ring-0",
|
|
643
652
|
"px-2 py-2.5",
|
|
644
653
|
"field-sizing-content max-h-[6lh] bg-transparent dark:bg-transparent",
|
|
@@ -656,12 +665,12 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
656
665
|
...o
|
|
657
666
|
}
|
|
658
667
|
);
|
|
659
|
-
},
|
|
660
|
-
const r = n ??
|
|
661
|
-
return /* @__PURE__ */
|
|
668
|
+
}, to = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: k("flex shrink-0 items-center gap-1.5 pb-1", e), ...t }), no = ({ className: e, ...t }) => /* @__PURE__ */ i("div", { className: k("flex items-center gap-0.5", e), ...t }), oo = ({ variant: e = "ghost", className: t, size: n, ...o }) => {
|
|
669
|
+
const r = n ?? cn.count(o.children) > 1 ? "default" : "icon";
|
|
670
|
+
return /* @__PURE__ */ i(
|
|
662
671
|
ee,
|
|
663
672
|
{
|
|
664
|
-
className:
|
|
673
|
+
className: k(
|
|
665
674
|
"shrink-0 gap-1.5 rounded-xl",
|
|
666
675
|
"text-muted-foreground hover:text-foreground",
|
|
667
676
|
"hover:bg-accent/60 transition-all duration-200",
|
|
@@ -675,7 +684,7 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
675
684
|
...o
|
|
676
685
|
}
|
|
677
686
|
);
|
|
678
|
-
},
|
|
687
|
+
}, ro = ({
|
|
679
688
|
className: e,
|
|
680
689
|
variant: t = "default",
|
|
681
690
|
size: n = "icon",
|
|
@@ -683,11 +692,11 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
683
692
|
children: r,
|
|
684
693
|
...a
|
|
685
694
|
}) => {
|
|
686
|
-
let
|
|
687
|
-
return o === "submitted" ?
|
|
695
|
+
let l = /* @__PURE__ */ i(hn, { className: "size-4" });
|
|
696
|
+
return o === "submitted" ? l = /* @__PURE__ */ i(gn, { className: "size-4 animate-spin" }) : o === "streaming" ? l = /* @__PURE__ */ i(mn, { className: "size-3.5 fill-current" }) : o === "error" && (l = /* @__PURE__ */ i(he, { className: "size-4" })), /* @__PURE__ */ i(
|
|
688
697
|
ee,
|
|
689
698
|
{
|
|
690
|
-
className:
|
|
699
|
+
className: k(
|
|
691
700
|
"shrink-0 rounded-lg size-9",
|
|
692
701
|
"bg-gradient-to-br from-primary to-primary/80",
|
|
693
702
|
"text-primary-foreground",
|
|
@@ -705,109 +714,121 @@ const Jn = ({ className: e, ...t }) => /* @__PURE__ */ l("div", { className: "bg
|
|
|
705
714
|
type: o === "streaming" ? "button" : "submit",
|
|
706
715
|
variant: t,
|
|
707
716
|
...a,
|
|
708
|
-
children: r ??
|
|
717
|
+
children: r ?? l
|
|
709
718
|
}
|
|
710
719
|
);
|
|
711
720
|
};
|
|
712
|
-
function
|
|
713
|
-
return /* @__PURE__ */
|
|
721
|
+
function It({ delayDuration: e = 400, ...t }) {
|
|
722
|
+
return /* @__PURE__ */ i(K.Provider, { "data-slot": "tooltip-provider", delayDuration: e, ...t });
|
|
714
723
|
}
|
|
715
|
-
function
|
|
716
|
-
return /* @__PURE__ */
|
|
724
|
+
function Rt({ ...e }) {
|
|
725
|
+
return /* @__PURE__ */ i(It, { children: /* @__PURE__ */ i(K.Root, { "data-slot": "tooltip", ...e }) });
|
|
717
726
|
}
|
|
718
|
-
function
|
|
719
|
-
return /* @__PURE__ */
|
|
727
|
+
function Ot({ ...e }) {
|
|
728
|
+
return /* @__PURE__ */ i(K.Trigger, { "data-slot": "tooltip-trigger", ...e });
|
|
720
729
|
}
|
|
721
|
-
function
|
|
730
|
+
function Ft({
|
|
722
731
|
className: e,
|
|
723
732
|
sideOffset: t = 0,
|
|
724
733
|
children: n,
|
|
725
734
|
...o
|
|
726
735
|
}) {
|
|
727
|
-
return /* @__PURE__ */
|
|
736
|
+
return /* @__PURE__ */ i(K.Portal, { children: /* @__PURE__ */ w(
|
|
728
737
|
K.Content,
|
|
729
738
|
{
|
|
730
739
|
"data-slot": "tooltip-content",
|
|
731
740
|
sideOffset: t,
|
|
732
|
-
className:
|
|
741
|
+
className: k(
|
|
733
742
|
"bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-sm text-balance",
|
|
734
743
|
e
|
|
735
744
|
),
|
|
736
745
|
...o,
|
|
737
746
|
children: [
|
|
738
747
|
n,
|
|
739
|
-
/* @__PURE__ */
|
|
748
|
+
/* @__PURE__ */ i(K.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
740
749
|
]
|
|
741
750
|
}
|
|
742
751
|
) });
|
|
743
752
|
}
|
|
744
|
-
|
|
753
|
+
const be = 768;
|
|
754
|
+
function ao() {
|
|
755
|
+
const [e, t] = Ce.useState(void 0);
|
|
756
|
+
return Ce.useEffect(() => {
|
|
757
|
+
const n = window.matchMedia(`(max-width: ${be - 1}px)`), o = () => {
|
|
758
|
+
t(window.innerWidth < be);
|
|
759
|
+
};
|
|
760
|
+
return n.addEventListener("change", o), t(window.innerWidth < be), () => {
|
|
761
|
+
n.removeEventListener("change", o);
|
|
762
|
+
};
|
|
763
|
+
}, []), !!e;
|
|
764
|
+
}
|
|
765
|
+
function io({
|
|
745
766
|
onSend: e,
|
|
746
767
|
status: t,
|
|
747
768
|
isLastMessageFinished: n,
|
|
748
769
|
stop: o,
|
|
749
770
|
isErrorVisible: r,
|
|
750
771
|
conversationId: a,
|
|
751
|
-
className:
|
|
772
|
+
className: l
|
|
752
773
|
}) {
|
|
753
|
-
const { t: c } = M(["chat", "translation"]), { composer: s } = W(), [p, h] =
|
|
774
|
+
const { t: c } = M(["chat", "translation"]), { composer: s } = W(), [p, h] = B(""), [f, b] = B([]), m = ao(), y = Ge(null), d = Ge(null);
|
|
754
775
|
Q(() => {
|
|
755
|
-
a === "/" &&
|
|
756
|
-
}, [a]);
|
|
757
|
-
const
|
|
776
|
+
!m && a === "/" && y.current && y.current.focus();
|
|
777
|
+
}, [a, m]);
|
|
778
|
+
const v = oe((E) => {
|
|
758
779
|
if (E.target.files) {
|
|
759
|
-
const
|
|
760
|
-
if (
|
|
761
|
-
|
|
780
|
+
const I = Array.from(E.target.files), U = s?.attachments?.maxSize;
|
|
781
|
+
if (U && I.filter((ne) => ne.size > U).length > 0) {
|
|
782
|
+
Rn.error(c("file_too_large", { size: U }));
|
|
762
783
|
return;
|
|
763
784
|
}
|
|
764
|
-
b((
|
|
785
|
+
b((z) => [...z, ...I]);
|
|
765
786
|
}
|
|
766
787
|
E.target.value = "";
|
|
767
|
-
}, [s, c]),
|
|
768
|
-
b((
|
|
769
|
-
}, []),
|
|
770
|
-
if (E.preventDefault(), !
|
|
771
|
-
const
|
|
772
|
-
f.forEach((
|
|
788
|
+
}, [s, c]), x = oe((E) => {
|
|
789
|
+
b((I) => I.filter((U, z) => z !== E));
|
|
790
|
+
}, []), g = t === "streaming" && !n, R = (E) => {
|
|
791
|
+
if (E.preventDefault(), !g && (p.trim() || f.length > 0)) {
|
|
792
|
+
const I = new DataTransfer();
|
|
793
|
+
f.forEach((U) => I.items.add(U)), e(p, I.files), h(""), b([]);
|
|
773
794
|
}
|
|
774
795
|
};
|
|
775
|
-
return /* @__PURE__ */
|
|
776
|
-
/* @__PURE__ */
|
|
796
|
+
return /* @__PURE__ */ i("div", { className: k("shrink-0 px-4 pb-5 pt-2 md:px-6 md:pb-6 w-full", l), children: /* @__PURE__ */ i("div", { className: "max-w-4xl mx-auto w-full", children: /* @__PURE__ */ w(Qn, { onSubmit: R, children: [
|
|
797
|
+
/* @__PURE__ */ i(
|
|
777
798
|
"input",
|
|
778
799
|
{
|
|
779
800
|
type: "file",
|
|
780
|
-
ref:
|
|
781
|
-
onChange:
|
|
801
|
+
ref: d,
|
|
802
|
+
onChange: v,
|
|
782
803
|
multiple: !0,
|
|
783
804
|
accept: s?.attachments?.types?.join(",") || "image/*,text/*,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx",
|
|
784
805
|
className: "hidden"
|
|
785
806
|
}
|
|
786
807
|
),
|
|
787
808
|
/* @__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
|
-
|
|
809
|
+
f.length > 0 && /* @__PURE__ */ i("div", { className: "flex flex-wrap gap-2 px-2 pt-2", children: f.map((E, I) => /* @__PURE__ */ w("div", { className: "group relative flex items-center gap-2 rounded-xl glass-surface px-2.5 py-1.5 text-sm shadow-sm", children: [
|
|
810
|
+
E.type.startsWith("image/") ? /* @__PURE__ */ i("img", { src: URL.createObjectURL(E), alt: E.name, className: "size-7 rounded-lg object-cover ring-1 ring-border/50" }) : /* @__PURE__ */ i(Et, { className: "size-3.5 text-muted-foreground shrink-0" }),
|
|
811
|
+
/* @__PURE__ */ i("span", { className: "max-w-[120px] truncate text-xs font-medium text-foreground/80", children: E.name }),
|
|
812
|
+
/* @__PURE__ */ i("button", { type: "button", onClick: () => 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" }) })
|
|
813
|
+
] }, `${E.name}-${I}`)) }),
|
|
814
|
+
/* @__PURE__ */ i(
|
|
815
|
+
eo,
|
|
795
816
|
{
|
|
796
|
-
ref:
|
|
817
|
+
ref: y,
|
|
797
818
|
onChange: (E) => h(E.target.value),
|
|
798
819
|
value: p,
|
|
799
|
-
autoFocus: !
|
|
820
|
+
autoFocus: !m,
|
|
800
821
|
placeholder: s?.placeholder ? c(s.placeholder) : c("input_placeholder")
|
|
801
822
|
}
|
|
802
823
|
)
|
|
803
824
|
] }),
|
|
804
|
-
/* @__PURE__ */ w(
|
|
805
|
-
/* @__PURE__ */
|
|
806
|
-
/* @__PURE__ */
|
|
807
|
-
/* @__PURE__ */
|
|
825
|
+
/* @__PURE__ */ w(to, { children: [
|
|
826
|
+
/* @__PURE__ */ i(no, { children: (s?.attachments?.enabled ?? !1) && /* @__PURE__ */ w(Rt, { children: [
|
|
827
|
+
/* @__PURE__ */ i(Ot, { asChild: !0, children: /* @__PURE__ */ i(oo, { variant: "ghost", onClick: () => d.current?.click(), disabled: g, children: /* @__PURE__ */ i(fn, { className: "size-4" }) }) }),
|
|
828
|
+
/* @__PURE__ */ i(Ft, { children: c("attach_file") })
|
|
808
829
|
] }) }),
|
|
809
|
-
/* @__PURE__ */
|
|
810
|
-
|
|
830
|
+
/* @__PURE__ */ i(
|
|
831
|
+
ro,
|
|
811
832
|
{
|
|
812
833
|
disabled: t !== "streaming" && !p && f.length === 0,
|
|
813
834
|
status: r ? "error" : t === "error" ? void 0 : n ? "ready" : t,
|
|
@@ -817,32 +838,32 @@ function ro({
|
|
|
817
838
|
] })
|
|
818
839
|
] }) }) });
|
|
819
840
|
}
|
|
820
|
-
const
|
|
841
|
+
const lo = ({
|
|
821
842
|
suggestion: e,
|
|
822
843
|
onClick: t,
|
|
823
844
|
className: n,
|
|
824
845
|
variant: o = "outline",
|
|
825
846
|
size: r = "sm",
|
|
826
847
|
children: a,
|
|
827
|
-
...
|
|
848
|
+
...l
|
|
828
849
|
}) => {
|
|
829
850
|
const c = () => {
|
|
830
851
|
t?.(e);
|
|
831
852
|
};
|
|
832
|
-
return /* @__PURE__ */
|
|
853
|
+
return /* @__PURE__ */ i(
|
|
833
854
|
ee,
|
|
834
855
|
{
|
|
835
|
-
className:
|
|
856
|
+
className: k("cursor-pointer rounded-full px-4", n),
|
|
836
857
|
onClick: c,
|
|
837
858
|
size: r,
|
|
838
859
|
type: "button",
|
|
839
860
|
variant: o,
|
|
840
|
-
...
|
|
861
|
+
...l,
|
|
841
862
|
children: a ?? e
|
|
842
863
|
}
|
|
843
864
|
);
|
|
844
|
-
},
|
|
845
|
-
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } = W(), a = r?.prompts ?? [],
|
|
865
|
+
}, so = ({ onSuggestionClick: e, icons: t }) => {
|
|
866
|
+
const { t: n, i18n: o } = M(["chat", "translation"]), { welcome: r } = W(), a = r?.prompts ?? [], l = a.map((h) => {
|
|
846
867
|
const f = typeof h == "string" ? h : h.text;
|
|
847
868
|
return n(f);
|
|
848
869
|
}).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,27 +874,27 @@ const ao = ({
|
|
|
853
874
|
className: "flex flex-col items-center justify-center min-h-[60vh] text-center px-6 animate-in fade-in duration-700 ease-out",
|
|
854
875
|
children: [
|
|
855
876
|
r?.icon && /* @__PURE__ */ w("div", { className: "mb-8 relative flex items-center justify-center", children: [
|
|
856
|
-
/* @__PURE__ */
|
|
857
|
-
/* @__PURE__ */
|
|
877
|
+
/* @__PURE__ */ i("div", { className: "absolute size-24 rounded-full bg-primary/5 blur-[40px] animate-pulse" }),
|
|
878
|
+
/* @__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
879
|
] }),
|
|
859
880
|
(s || p) && /* @__PURE__ */ w("div", { className: "space-y-3 mb-12 max-w-xl mx-auto", children: [
|
|
860
|
-
s && /* @__PURE__ */
|
|
861
|
-
p && /* @__PURE__ */
|
|
881
|
+
s && /* @__PURE__ */ i("h1", { className: "text-2xl md:text-3xl font-black tracking-tight leading-tight text-foreground", children: s }),
|
|
882
|
+
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
883
|
] }),
|
|
863
|
-
|
|
864
|
-
const b = a[f], m = typeof b != "string" ? b.icon : null,
|
|
865
|
-
return /* @__PURE__ */
|
|
884
|
+
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) => {
|
|
885
|
+
const b = a[f], m = typeof b != "string" ? b.icon : null, y = t && t[f % t.length] ? t[f % t.length] : bn, d = m || y;
|
|
886
|
+
return /* @__PURE__ */ i(
|
|
866
887
|
"div",
|
|
867
888
|
{
|
|
868
889
|
className: "animate-in fade-in slide-in-from-bottom-3 duration-700 fill-mode-both",
|
|
869
890
|
style: { animationDelay: `${f * 80}ms` },
|
|
870
891
|
children: /* @__PURE__ */ w(
|
|
871
|
-
|
|
892
|
+
lo,
|
|
872
893
|
{
|
|
873
894
|
onClick: () => e(h),
|
|
874
895
|
suggestion: h,
|
|
875
896
|
variant: "ghost",
|
|
876
|
-
className:
|
|
897
|
+
className: k(
|
|
877
898
|
"h-full py-4 px-5 justify-start text-start items-center whitespace-normal w-full",
|
|
878
899
|
"group rounded-xl relative overflow-hidden",
|
|
879
900
|
"bg-secondary/45 border border-border/12 dark:bg-secondary/20 dark:border-border/5",
|
|
@@ -882,10 +903,10 @@ const ao = ({
|
|
|
882
903
|
),
|
|
883
904
|
children: [
|
|
884
905
|
/* @__PURE__ */ w("div", { className: "flex items-center gap-3 w-full text-start", children: [
|
|
885
|
-
/* @__PURE__ */
|
|
886
|
-
/* @__PURE__ */
|
|
906
|
+
/* @__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" }) }),
|
|
907
|
+
/* @__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
908
|
] }),
|
|
888
|
-
/* @__PURE__ */
|
|
909
|
+
/* @__PURE__ */ i("div", { className: k(
|
|
889
910
|
"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
911
|
c ? "origin-right" : "origin-left"
|
|
891
912
|
) })
|
|
@@ -899,20 +920,20 @@ const ao = ({
|
|
|
899
920
|
]
|
|
900
921
|
}
|
|
901
922
|
);
|
|
902
|
-
},
|
|
923
|
+
}, Lt = ({ className: e, from: t, ...n }) => /* @__PURE__ */ i(
|
|
903
924
|
"div",
|
|
904
925
|
{
|
|
905
|
-
className:
|
|
926
|
+
className: k(
|
|
906
927
|
"group flex w-full items-end gap-3",
|
|
907
928
|
t === "user" ? "is-user justify-end" : "is-assistant",
|
|
908
929
|
e
|
|
909
930
|
),
|
|
910
931
|
...n
|
|
911
932
|
}
|
|
912
|
-
),
|
|
933
|
+
), Dt = ({ children: e, className: t, isPlain: n, ...o }) => /* @__PURE__ */ i(
|
|
913
934
|
"div",
|
|
914
935
|
{
|
|
915
|
-
className:
|
|
936
|
+
className: k(
|
|
916
937
|
"flex flex-col gap-2 overflow-hidden text-[1.0625rem]",
|
|
917
938
|
// User bubble: gradient pill with glow shadow
|
|
918
939
|
!n && [
|
|
@@ -933,10 +954,10 @@ const ao = ({
|
|
|
933
954
|
...o,
|
|
934
955
|
children: e
|
|
935
956
|
}
|
|
936
|
-
),
|
|
957
|
+
), co = ({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
937
958
|
"div",
|
|
938
959
|
{
|
|
939
|
-
className:
|
|
960
|
+
className: k(
|
|
940
961
|
"flex items-center gap-0.5",
|
|
941
962
|
"opacity-100",
|
|
942
963
|
"transition-opacity duration-200",
|
|
@@ -945,19 +966,19 @@ const ao = ({
|
|
|
945
966
|
...n,
|
|
946
967
|
children: t
|
|
947
968
|
}
|
|
948
|
-
),
|
|
969
|
+
), se = ({
|
|
949
970
|
tooltip: e,
|
|
950
971
|
children: t,
|
|
951
972
|
label: n,
|
|
952
973
|
className: o,
|
|
953
974
|
variant: r = "ghost",
|
|
954
975
|
size: a = "sm",
|
|
955
|
-
...
|
|
976
|
+
...l
|
|
956
977
|
}) => {
|
|
957
978
|
const c = /* @__PURE__ */ w(
|
|
958
979
|
ee,
|
|
959
980
|
{
|
|
960
|
-
className:
|
|
981
|
+
className: k(
|
|
961
982
|
"size-7 p-1 rounded-lg",
|
|
962
983
|
"text-muted-foreground/60 hover:text-foreground",
|
|
963
984
|
"hover:bg-accent/70",
|
|
@@ -968,16 +989,16 @@ const ao = ({
|
|
|
968
989
|
size: a,
|
|
969
990
|
type: "button",
|
|
970
991
|
variant: r,
|
|
971
|
-
...
|
|
992
|
+
...l,
|
|
972
993
|
children: [
|
|
973
994
|
t,
|
|
974
|
-
/* @__PURE__ */
|
|
995
|
+
/* @__PURE__ */ i("span", { className: "sr-only", children: n ?? e })
|
|
975
996
|
]
|
|
976
997
|
}
|
|
977
998
|
);
|
|
978
|
-
return e ? /* @__PURE__ */
|
|
979
|
-
/* @__PURE__ */
|
|
980
|
-
/* @__PURE__ */
|
|
999
|
+
return e ? /* @__PURE__ */ i(It, { children: /* @__PURE__ */ w(Rt, { children: [
|
|
1000
|
+
/* @__PURE__ */ i(Ot, { asChild: !0, children: c }),
|
|
1001
|
+
/* @__PURE__ */ i(Ft, { children: /* @__PURE__ */ i("p", { children: e }) })
|
|
981
1002
|
] }) }) : c;
|
|
982
1003
|
};
|
|
983
1004
|
class le {
|
|
@@ -998,13 +1019,13 @@ class le {
|
|
|
998
1019
|
le.prototype.normal = {};
|
|
999
1020
|
le.prototype.property = {};
|
|
1000
1021
|
le.prototype.space = void 0;
|
|
1001
|
-
function
|
|
1022
|
+
function Pt(e, t) {
|
|
1002
1023
|
const n = {}, o = {};
|
|
1003
1024
|
for (const r of e)
|
|
1004
1025
|
Object.assign(n, r.property), Object.assign(o, r.normal);
|
|
1005
1026
|
return new le(n, o, t);
|
|
1006
1027
|
}
|
|
1007
|
-
function
|
|
1028
|
+
function ae(e) {
|
|
1008
1029
|
return e.toLowerCase();
|
|
1009
1030
|
}
|
|
1010
1031
|
class D {
|
|
@@ -1032,25 +1053,25 @@ D.prototype.overloadedBoolean = !1;
|
|
|
1032
1053
|
D.prototype.property = "";
|
|
1033
1054
|
D.prototype.spaceSeparated = !1;
|
|
1034
1055
|
D.prototype.space = void 0;
|
|
1035
|
-
let
|
|
1036
|
-
const _ = G(),
|
|
1056
|
+
let uo = 0;
|
|
1057
|
+
const _ = G(), A = G(), Ae = G(), u = G(), T = G(), Z = G(), P = G();
|
|
1037
1058
|
function G() {
|
|
1038
|
-
return 2 ** ++
|
|
1059
|
+
return 2 ** ++uo;
|
|
1039
1060
|
}
|
|
1040
|
-
const
|
|
1061
|
+
const Ie = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
1041
1062
|
__proto__: null,
|
|
1042
1063
|
boolean: _,
|
|
1043
|
-
booleanish:
|
|
1064
|
+
booleanish: A,
|
|
1044
1065
|
commaOrSpaceSeparated: P,
|
|
1045
1066
|
commaSeparated: Z,
|
|
1046
1067
|
number: u,
|
|
1047
|
-
overloadedBoolean:
|
|
1068
|
+
overloadedBoolean: Ae,
|
|
1048
1069
|
spaceSeparated: T
|
|
1049
|
-
}, Symbol.toStringTag, { value: "Module" })),
|
|
1070
|
+
}, Symbol.toStringTag, { value: "Module" })), ye = (
|
|
1050
1071
|
/** @type {ReadonlyArray<keyof typeof types>} */
|
|
1051
|
-
Object.keys(
|
|
1072
|
+
Object.keys(Ie)
|
|
1052
1073
|
);
|
|
1053
|
-
class
|
|
1074
|
+
class Be extends D {
|
|
1054
1075
|
/**
|
|
1055
1076
|
* @constructor
|
|
1056
1077
|
* @param {string} property
|
|
@@ -1066,37 +1087,37 @@ class $e extends D {
|
|
|
1066
1087
|
*/
|
|
1067
1088
|
constructor(t, n, o, r) {
|
|
1068
1089
|
let a = -1;
|
|
1069
|
-
if (super(t, n),
|
|
1070
|
-
for (; ++a <
|
|
1071
|
-
const
|
|
1072
|
-
|
|
1090
|
+
if (super(t, n), Ke(this, "space", r), typeof o == "number")
|
|
1091
|
+
for (; ++a < ye.length; ) {
|
|
1092
|
+
const l = ye[a];
|
|
1093
|
+
Ke(this, ye[a], (o & Ie[l]) === Ie[l]);
|
|
1073
1094
|
}
|
|
1074
1095
|
}
|
|
1075
1096
|
}
|
|
1076
|
-
|
|
1077
|
-
function
|
|
1097
|
+
Be.prototype.defined = !0;
|
|
1098
|
+
function Ke(e, t, n) {
|
|
1078
1099
|
n && (e[t] = n);
|
|
1079
1100
|
}
|
|
1080
1101
|
function te(e) {
|
|
1081
1102
|
const t = {}, n = {};
|
|
1082
1103
|
for (const [o, r] of Object.entries(e.properties)) {
|
|
1083
|
-
const a = new
|
|
1104
|
+
const a = new Be(
|
|
1084
1105
|
o,
|
|
1085
1106
|
e.transform(e.attributes || {}, o),
|
|
1086
1107
|
r,
|
|
1087
1108
|
e.space
|
|
1088
1109
|
);
|
|
1089
|
-
e.mustUseProperty && e.mustUseProperty.includes(o) && (a.mustUseProperty = !0), t[o] = a, n[
|
|
1110
|
+
e.mustUseProperty && e.mustUseProperty.includes(o) && (a.mustUseProperty = !0), t[o] = a, n[ae(o)] = o, n[ae(a.attribute)] = o;
|
|
1090
1111
|
}
|
|
1091
1112
|
return new le(t, n, e.space);
|
|
1092
1113
|
}
|
|
1093
|
-
const
|
|
1114
|
+
const Mt = te({
|
|
1094
1115
|
properties: {
|
|
1095
1116
|
ariaActiveDescendant: null,
|
|
1096
|
-
ariaAtomic:
|
|
1117
|
+
ariaAtomic: A,
|
|
1097
1118
|
ariaAutoComplete: null,
|
|
1098
|
-
ariaBusy:
|
|
1099
|
-
ariaChecked:
|
|
1119
|
+
ariaBusy: A,
|
|
1120
|
+
ariaChecked: A,
|
|
1100
1121
|
ariaColCount: u,
|
|
1101
1122
|
ariaColIndex: u,
|
|
1102
1123
|
ariaColSpan: u,
|
|
@@ -1104,36 +1125,36 @@ const Lt = te({
|
|
|
1104
1125
|
ariaCurrent: null,
|
|
1105
1126
|
ariaDescribedBy: T,
|
|
1106
1127
|
ariaDetails: null,
|
|
1107
|
-
ariaDisabled:
|
|
1128
|
+
ariaDisabled: A,
|
|
1108
1129
|
ariaDropEffect: T,
|
|
1109
1130
|
ariaErrorMessage: null,
|
|
1110
|
-
ariaExpanded:
|
|
1131
|
+
ariaExpanded: A,
|
|
1111
1132
|
ariaFlowTo: T,
|
|
1112
|
-
ariaGrabbed:
|
|
1133
|
+
ariaGrabbed: A,
|
|
1113
1134
|
ariaHasPopup: null,
|
|
1114
|
-
ariaHidden:
|
|
1135
|
+
ariaHidden: A,
|
|
1115
1136
|
ariaInvalid: null,
|
|
1116
1137
|
ariaKeyShortcuts: null,
|
|
1117
1138
|
ariaLabel: null,
|
|
1118
1139
|
ariaLabelledBy: T,
|
|
1119
1140
|
ariaLevel: u,
|
|
1120
1141
|
ariaLive: null,
|
|
1121
|
-
ariaModal:
|
|
1122
|
-
ariaMultiLine:
|
|
1123
|
-
ariaMultiSelectable:
|
|
1142
|
+
ariaModal: A,
|
|
1143
|
+
ariaMultiLine: A,
|
|
1144
|
+
ariaMultiSelectable: A,
|
|
1124
1145
|
ariaOrientation: null,
|
|
1125
1146
|
ariaOwns: T,
|
|
1126
1147
|
ariaPlaceholder: null,
|
|
1127
1148
|
ariaPosInSet: u,
|
|
1128
|
-
ariaPressed:
|
|
1129
|
-
ariaReadOnly:
|
|
1149
|
+
ariaPressed: A,
|
|
1150
|
+
ariaReadOnly: A,
|
|
1130
1151
|
ariaRelevant: null,
|
|
1131
|
-
ariaRequired:
|
|
1152
|
+
ariaRequired: A,
|
|
1132
1153
|
ariaRoleDescription: T,
|
|
1133
1154
|
ariaRowCount: u,
|
|
1134
1155
|
ariaRowIndex: u,
|
|
1135
1156
|
ariaRowSpan: u,
|
|
1136
|
-
ariaSelected:
|
|
1157
|
+
ariaSelected: A,
|
|
1137
1158
|
ariaSetSize: u,
|
|
1138
1159
|
ariaSort: null,
|
|
1139
1160
|
ariaValueMax: u,
|
|
@@ -1146,13 +1167,13 @@ const Lt = te({
|
|
|
1146
1167
|
return t === "role" ? t : "aria-" + t.slice(4).toLowerCase();
|
|
1147
1168
|
}
|
|
1148
1169
|
});
|
|
1149
|
-
function
|
|
1170
|
+
function zt(e, t) {
|
|
1150
1171
|
return t in e ? e[t] : t;
|
|
1151
1172
|
}
|
|
1152
|
-
function
|
|
1153
|
-
return
|
|
1173
|
+
function $t(e, t) {
|
|
1174
|
+
return zt(e, t.toLowerCase());
|
|
1154
1175
|
}
|
|
1155
|
-
const
|
|
1176
|
+
const po = te({
|
|
1156
1177
|
attributes: {
|
|
1157
1178
|
acceptcharset: "accept-charset",
|
|
1158
1179
|
classname: "class",
|
|
@@ -1187,7 +1208,7 @@ const co = te({
|
|
|
1187
1208
|
cols: u,
|
|
1188
1209
|
colSpan: null,
|
|
1189
1210
|
content: null,
|
|
1190
|
-
contentEditable:
|
|
1211
|
+
contentEditable: A,
|
|
1191
1212
|
controls: _,
|
|
1192
1213
|
controlsList: T,
|
|
1193
1214
|
coords: u | Z,
|
|
@@ -1200,8 +1221,8 @@ const co = te({
|
|
|
1200
1221
|
dir: null,
|
|
1201
1222
|
dirName: null,
|
|
1202
1223
|
disabled: _,
|
|
1203
|
-
download:
|
|
1204
|
-
draggable:
|
|
1224
|
+
download: Ae,
|
|
1225
|
+
draggable: A,
|
|
1205
1226
|
encType: null,
|
|
1206
1227
|
enterKeyHint: null,
|
|
1207
1228
|
fetchPriority: null,
|
|
@@ -1213,7 +1234,7 @@ const co = te({
|
|
|
1213
1234
|
formTarget: null,
|
|
1214
1235
|
headers: T,
|
|
1215
1236
|
height: u,
|
|
1216
|
-
hidden:
|
|
1237
|
+
hidden: Ae,
|
|
1217
1238
|
high: u,
|
|
1218
1239
|
href: null,
|
|
1219
1240
|
hrefLang: null,
|
|
@@ -1372,7 +1393,7 @@ const co = te({
|
|
|
1372
1393
|
sizes: null,
|
|
1373
1394
|
slot: null,
|
|
1374
1395
|
span: u,
|
|
1375
|
-
spellCheck:
|
|
1396
|
+
spellCheck: A,
|
|
1376
1397
|
src: null,
|
|
1377
1398
|
srcDoc: null,
|
|
1378
1399
|
srcLang: null,
|
|
@@ -1387,7 +1408,7 @@ const co = te({
|
|
|
1387
1408
|
type: null,
|
|
1388
1409
|
typeMustMatch: _,
|
|
1389
1410
|
useMap: null,
|
|
1390
|
-
value:
|
|
1411
|
+
value: A,
|
|
1391
1412
|
width: u,
|
|
1392
1413
|
wrap: null,
|
|
1393
1414
|
writingSuggestions: null,
|
|
@@ -1479,7 +1500,7 @@ const co = te({
|
|
|
1479
1500
|
// `<table>`
|
|
1480
1501
|
scheme: null,
|
|
1481
1502
|
// `<meta>`
|
|
1482
|
-
scrolling:
|
|
1503
|
+
scrolling: A,
|
|
1483
1504
|
// `<frame>`. Use overflow in the child context
|
|
1484
1505
|
standby: null,
|
|
1485
1506
|
// `<object>`
|
|
@@ -1512,8 +1533,8 @@ const co = te({
|
|
|
1512
1533
|
unselectable: null
|
|
1513
1534
|
},
|
|
1514
1535
|
space: "html",
|
|
1515
|
-
transform:
|
|
1516
|
-
}),
|
|
1536
|
+
transform: $t
|
|
1537
|
+
}), ho = te({
|
|
1517
1538
|
attributes: {
|
|
1518
1539
|
accentHeight: "accent-height",
|
|
1519
1540
|
alignmentBaseline: "alignment-baseline",
|
|
@@ -2071,8 +2092,8 @@ const co = te({
|
|
|
2071
2092
|
zoomAndPan: null
|
|
2072
2093
|
},
|
|
2073
2094
|
space: "svg",
|
|
2074
|
-
transform:
|
|
2075
|
-
}),
|
|
2095
|
+
transform: zt
|
|
2096
|
+
}), Ut = te({
|
|
2076
2097
|
properties: {
|
|
2077
2098
|
xLinkActuate: null,
|
|
2078
2099
|
xLinkArcRole: null,
|
|
@@ -2086,103 +2107,103 @@ const co = te({
|
|
|
2086
2107
|
transform(e, t) {
|
|
2087
2108
|
return "xlink:" + t.slice(5).toLowerCase();
|
|
2088
2109
|
}
|
|
2089
|
-
}),
|
|
2110
|
+
}), Bt = te({
|
|
2090
2111
|
attributes: { xmlnsxlink: "xmlns:xlink" },
|
|
2091
2112
|
properties: { xmlnsXLink: null, xmlns: null },
|
|
2092
2113
|
space: "xmlns",
|
|
2093
|
-
transform:
|
|
2094
|
-
}),
|
|
2114
|
+
transform: $t
|
|
2115
|
+
}), Ht = te({
|
|
2095
2116
|
properties: { xmlBase: null, xmlLang: null, xmlSpace: null },
|
|
2096
2117
|
space: "xml",
|
|
2097
2118
|
transform(e, t) {
|
|
2098
2119
|
return "xml:" + t.slice(3).toLowerCase();
|
|
2099
2120
|
}
|
|
2100
|
-
}),
|
|
2101
|
-
function
|
|
2102
|
-
const n =
|
|
2121
|
+
}), go = /[A-Z]/g, Ze = /-[a-z]/g, mo = /^data[-\w.:]+$/i;
|
|
2122
|
+
function fo(e, t) {
|
|
2123
|
+
const n = ae(t);
|
|
2103
2124
|
let o = t, r = D;
|
|
2104
2125
|
if (n in e.normal)
|
|
2105
2126
|
return e.property[e.normal[n]];
|
|
2106
|
-
if (n.length > 4 && n.slice(0, 4) === "data" &&
|
|
2127
|
+
if (n.length > 4 && n.slice(0, 4) === "data" && mo.test(t)) {
|
|
2107
2128
|
if (t.charAt(4) === "-") {
|
|
2108
|
-
const a = t.slice(5).replace(
|
|
2129
|
+
const a = t.slice(5).replace(Ze, yo);
|
|
2109
2130
|
o = "data" + a.charAt(0).toUpperCase() + a.slice(1);
|
|
2110
2131
|
} else {
|
|
2111
2132
|
const a = t.slice(4);
|
|
2112
|
-
if (!
|
|
2113
|
-
let
|
|
2114
|
-
|
|
2133
|
+
if (!Ze.test(a)) {
|
|
2134
|
+
let l = a.replace(go, bo);
|
|
2135
|
+
l.charAt(0) !== "-" && (l = "-" + l), t = "data" + l;
|
|
2115
2136
|
}
|
|
2116
2137
|
}
|
|
2117
|
-
r =
|
|
2138
|
+
r = Be;
|
|
2118
2139
|
}
|
|
2119
2140
|
return new r(o, t);
|
|
2120
2141
|
}
|
|
2121
|
-
function
|
|
2142
|
+
function bo(e) {
|
|
2122
2143
|
return "-" + e.toLowerCase();
|
|
2123
2144
|
}
|
|
2124
|
-
function
|
|
2145
|
+
function yo(e) {
|
|
2125
2146
|
return e.charAt(1).toUpperCase();
|
|
2126
2147
|
}
|
|
2127
|
-
const
|
|
2128
|
-
function
|
|
2148
|
+
const ko = Pt([Mt, po, Ut, Bt, Ht], "html"), vo = Pt([Mt, ho, Ut, Bt, Ht], "svg");
|
|
2149
|
+
function Je(e) {
|
|
2129
2150
|
const t = [], n = String(e || "");
|
|
2130
2151
|
let o = n.indexOf(","), r = 0, a = !1;
|
|
2131
2152
|
for (; !a; ) {
|
|
2132
2153
|
o === -1 && (o = n.length, a = !0);
|
|
2133
|
-
const
|
|
2134
|
-
(
|
|
2154
|
+
const l = n.slice(r, o).trim();
|
|
2155
|
+
(l || !a) && t.push(l), r = o + 1, o = n.indexOf(",", r);
|
|
2135
2156
|
}
|
|
2136
2157
|
return t;
|
|
2137
2158
|
}
|
|
2138
|
-
const
|
|
2139
|
-
function
|
|
2159
|
+
const Qe = /[#.]/g;
|
|
2160
|
+
function wo(e, t) {
|
|
2140
2161
|
const n = e || "", o = {};
|
|
2141
|
-
let r = 0, a,
|
|
2162
|
+
let r = 0, a, l;
|
|
2142
2163
|
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] :
|
|
2164
|
+
Qe.lastIndex = r;
|
|
2165
|
+
const c = Qe.exec(n), s = n.slice(r, c ? c.index : n.length);
|
|
2166
|
+
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
2167
|
}
|
|
2147
2168
|
return {
|
|
2148
2169
|
type: "element",
|
|
2149
2170
|
// @ts-expect-error: tag name is parsed.
|
|
2150
|
-
tagName:
|
|
2171
|
+
tagName: l || t || "div",
|
|
2151
2172
|
properties: o,
|
|
2152
2173
|
children: []
|
|
2153
2174
|
};
|
|
2154
2175
|
}
|
|
2155
|
-
function
|
|
2176
|
+
function et(e) {
|
|
2156
2177
|
const t = String(e || "").trim();
|
|
2157
2178
|
return t ? t.split(/[ \t\n\r\f]+/g) : [];
|
|
2158
2179
|
}
|
|
2159
|
-
function
|
|
2160
|
-
const o = n ?
|
|
2161
|
-
function r(a,
|
|
2180
|
+
function qt(e, t, n) {
|
|
2181
|
+
const o = n ? Eo(n) : void 0;
|
|
2182
|
+
function r(a, l, ...c) {
|
|
2162
2183
|
let s;
|
|
2163
2184
|
if (a == null) {
|
|
2164
2185
|
s = { type: "root", children: [] };
|
|
2165
2186
|
const p = (
|
|
2166
2187
|
/** @type {Child} */
|
|
2167
|
-
|
|
2188
|
+
l
|
|
2168
2189
|
);
|
|
2169
2190
|
c.unshift(p);
|
|
2170
2191
|
} else {
|
|
2171
|
-
s =
|
|
2192
|
+
s = wo(a, t);
|
|
2172
2193
|
const p = s.tagName.toLowerCase(), h = o ? o.get(p) : void 0;
|
|
2173
|
-
if (s.tagName = h || p,
|
|
2174
|
-
c.unshift(
|
|
2194
|
+
if (s.tagName = h || p, xo(l))
|
|
2195
|
+
c.unshift(l);
|
|
2175
2196
|
else
|
|
2176
|
-
for (const [f, b] of Object.entries(
|
|
2177
|
-
|
|
2197
|
+
for (const [f, b] of Object.entries(l))
|
|
2198
|
+
_o(e, s.properties, f, b);
|
|
2178
2199
|
}
|
|
2179
2200
|
for (const p of c)
|
|
2180
|
-
|
|
2201
|
+
Re(s.children, p);
|
|
2181
2202
|
return s.type === "element" && s.tagName === "template" && (s.content = { type: "root", children: s.children }, s.children = []), s;
|
|
2182
2203
|
}
|
|
2183
2204
|
return r;
|
|
2184
2205
|
}
|
|
2185
|
-
function
|
|
2206
|
+
function xo(e) {
|
|
2186
2207
|
if (e === null || typeof e != "object" || Array.isArray(e))
|
|
2187
2208
|
return !0;
|
|
2188
2209
|
if (typeof e.type != "string") return !1;
|
|
@@ -2198,29 +2219,29 @@ function vo(e) {
|
|
|
2198
2219
|
/** @type {ReadonlyArray<unknown>} */
|
|
2199
2220
|
r
|
|
2200
2221
|
);
|
|
2201
|
-
for (const
|
|
2202
|
-
if (typeof
|
|
2222
|
+
for (const l of a)
|
|
2223
|
+
if (typeof l != "number" && typeof l != "string")
|
|
2203
2224
|
return !0;
|
|
2204
2225
|
}
|
|
2205
2226
|
}
|
|
2206
2227
|
return !!("children" in e && Array.isArray(e.children));
|
|
2207
2228
|
}
|
|
2208
|
-
function
|
|
2209
|
-
const r =
|
|
2229
|
+
function _o(e, t, n, o) {
|
|
2230
|
+
const r = fo(e, n);
|
|
2210
2231
|
let a;
|
|
2211
2232
|
if (o != null) {
|
|
2212
2233
|
if (typeof o == "number") {
|
|
2213
2234
|
if (Number.isNaN(o)) return;
|
|
2214
2235
|
a = o;
|
|
2215
|
-
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a =
|
|
2236
|
+
} else typeof o == "boolean" ? a = o : typeof o == "string" ? r.spaceSeparated ? a = et(o) : r.commaSeparated ? a = Je(o) : r.commaOrSpaceSeparated ? a = et(Je(o).join(" ")) : a = tt(r, r.property, o) : Array.isArray(o) ? a = [...o] : a = r.property === "style" ? So(o) : String(o);
|
|
2216
2237
|
if (Array.isArray(a)) {
|
|
2217
|
-
const
|
|
2238
|
+
const l = [];
|
|
2218
2239
|
for (const c of a)
|
|
2219
|
-
|
|
2240
|
+
l.push(
|
|
2220
2241
|
/** @type {number | string} */
|
|
2221
|
-
|
|
2242
|
+
tt(r, r.property, c)
|
|
2222
2243
|
);
|
|
2223
|
-
a =
|
|
2244
|
+
a = l;
|
|
2224
2245
|
}
|
|
2225
2246
|
r.property === "className" && Array.isArray(t.className) && (a = t.className.concat(
|
|
2226
2247
|
/** @type {Array<number | string> | number | string} */
|
|
@@ -2228,39 +2249,39 @@ function wo(e, t, n, o) {
|
|
|
2228
2249
|
)), t[r.property] = a;
|
|
2229
2250
|
}
|
|
2230
2251
|
}
|
|
2231
|
-
function
|
|
2252
|
+
function Re(e, t) {
|
|
2232
2253
|
if (t != null) if (typeof t == "number" || typeof t == "string")
|
|
2233
2254
|
e.push({ type: "text", value: String(t) });
|
|
2234
2255
|
else if (Array.isArray(t))
|
|
2235
2256
|
for (const n of t)
|
|
2236
|
-
|
|
2257
|
+
Re(e, n);
|
|
2237
2258
|
else if (typeof t == "object" && "type" in t)
|
|
2238
|
-
t.type === "root" ?
|
|
2259
|
+
t.type === "root" ? Re(e, t.children) : e.push(t);
|
|
2239
2260
|
else
|
|
2240
2261
|
throw new Error("Expected node, nodes, or string, got `" + t + "`");
|
|
2241
2262
|
}
|
|
2242
|
-
function
|
|
2263
|
+
function tt(e, t, n) {
|
|
2243
2264
|
if (typeof n == "string") {
|
|
2244
2265
|
if (e.number && n && !Number.isNaN(Number(n)))
|
|
2245
2266
|
return Number(n);
|
|
2246
|
-
if ((e.boolean || e.overloadedBoolean) && (n === "" ||
|
|
2267
|
+
if ((e.boolean || e.overloadedBoolean) && (n === "" || ae(n) === ae(t)))
|
|
2247
2268
|
return !0;
|
|
2248
2269
|
}
|
|
2249
2270
|
return n;
|
|
2250
2271
|
}
|
|
2251
|
-
function
|
|
2272
|
+
function So(e) {
|
|
2252
2273
|
const t = [];
|
|
2253
2274
|
for (const [n, o] of Object.entries(e))
|
|
2254
2275
|
t.push([n, o].join(": "));
|
|
2255
2276
|
return t.join("; ");
|
|
2256
2277
|
}
|
|
2257
|
-
function
|
|
2278
|
+
function Eo(e) {
|
|
2258
2279
|
const t = /* @__PURE__ */ new Map();
|
|
2259
2280
|
for (const n of e)
|
|
2260
2281
|
t.set(n.toLowerCase(), n);
|
|
2261
2282
|
return t;
|
|
2262
2283
|
}
|
|
2263
|
-
const
|
|
2284
|
+
const No = [
|
|
2264
2285
|
"altGlyph",
|
|
2265
2286
|
"altGlyphDef",
|
|
2266
2287
|
"altGlyphItem",
|
|
@@ -2300,28 +2321,28 @@ const So = [
|
|
|
2300
2321
|
"solidColor",
|
|
2301
2322
|
"textArea",
|
|
2302
2323
|
"textPath"
|
|
2303
|
-
],
|
|
2324
|
+
], To = qt(ko, "div"), Co = qt(vo, "g", No), ke = {
|
|
2304
2325
|
html: "http://www.w3.org/1999/xhtml",
|
|
2305
2326
|
svg: "http://www.w3.org/2000/svg"
|
|
2306
2327
|
};
|
|
2307
|
-
function
|
|
2308
|
-
return
|
|
2328
|
+
function Ao(e, t) {
|
|
2329
|
+
return jt(e, {}) || { type: "root", children: [] };
|
|
2309
2330
|
}
|
|
2310
|
-
function
|
|
2311
|
-
const n =
|
|
2331
|
+
function jt(e, t) {
|
|
2332
|
+
const n = Io(e, t);
|
|
2312
2333
|
return n && t.afterTransform && t.afterTransform(e, n), n;
|
|
2313
2334
|
}
|
|
2314
|
-
function
|
|
2335
|
+
function Io(e, t) {
|
|
2315
2336
|
switch (e.nodeType) {
|
|
2316
2337
|
case 1:
|
|
2317
|
-
return
|
|
2338
|
+
return Lo(
|
|
2318
2339
|
/** @type {Element} */
|
|
2319
2340
|
e,
|
|
2320
2341
|
t
|
|
2321
2342
|
);
|
|
2322
2343
|
// Ignore: Attr (2).
|
|
2323
2344
|
case 3:
|
|
2324
|
-
return
|
|
2345
|
+
return Oo(
|
|
2325
2346
|
/** @type {Text} */
|
|
2326
2347
|
e
|
|
2327
2348
|
);
|
|
@@ -2330,20 +2351,20 @@ function Co(e, t) {
|
|
|
2330
2351
|
// Removed: Entity (6)
|
|
2331
2352
|
// Ignore: Processing instruction (7).
|
|
2332
2353
|
case 8:
|
|
2333
|
-
return
|
|
2354
|
+
return Fo(
|
|
2334
2355
|
/** @type {Comment} */
|
|
2335
2356
|
e
|
|
2336
2357
|
);
|
|
2337
2358
|
case 9:
|
|
2338
|
-
return
|
|
2359
|
+
return nt(
|
|
2339
2360
|
/** @type {Document} */
|
|
2340
2361
|
e,
|
|
2341
2362
|
t
|
|
2342
2363
|
);
|
|
2343
2364
|
case 10:
|
|
2344
|
-
return
|
|
2365
|
+
return Ro();
|
|
2345
2366
|
case 11:
|
|
2346
|
-
return
|
|
2367
|
+
return nt(
|
|
2347
2368
|
/** @type {DocumentFragment} */
|
|
2348
2369
|
e,
|
|
2349
2370
|
t
|
|
@@ -2352,50 +2373,50 @@ function Co(e, t) {
|
|
|
2352
2373
|
return;
|
|
2353
2374
|
}
|
|
2354
2375
|
}
|
|
2355
|
-
function
|
|
2356
|
-
return { type: "root", children:
|
|
2376
|
+
function nt(e, t) {
|
|
2377
|
+
return { type: "root", children: Gt(e, t) };
|
|
2357
2378
|
}
|
|
2358
|
-
function
|
|
2379
|
+
function Ro() {
|
|
2359
2380
|
return { type: "doctype" };
|
|
2360
2381
|
}
|
|
2361
|
-
function
|
|
2382
|
+
function Oo(e) {
|
|
2362
2383
|
return { type: "text", value: e.nodeValue || "" };
|
|
2363
2384
|
}
|
|
2364
|
-
function
|
|
2385
|
+
function Fo(e) {
|
|
2365
2386
|
return { type: "comment", value: e.nodeValue || "" };
|
|
2366
2387
|
}
|
|
2367
|
-
function
|
|
2368
|
-
const n = e.namespaceURI, o = n === ke.svg ?
|
|
2388
|
+
function Lo(e, t) {
|
|
2389
|
+
const n = e.namespaceURI, o = n === ke.svg ? Co : To, r = n === ke.html ? e.tagName.toLowerCase() : e.tagName, a = (
|
|
2369
2390
|
// @ts-expect-error: DOM types are wrong, content can exist.
|
|
2370
2391
|
n === ke.html && r === "template" ? e.content : e
|
|
2371
|
-
),
|
|
2392
|
+
), l = e.getAttributeNames(), c = {};
|
|
2372
2393
|
let s = -1;
|
|
2373
|
-
for (; ++s <
|
|
2374
|
-
c[
|
|
2375
|
-
return o(r, c,
|
|
2394
|
+
for (; ++s < l.length; )
|
|
2395
|
+
c[l[s]] = e.getAttribute(l[s]) || "";
|
|
2396
|
+
return o(r, c, Gt(a, t));
|
|
2376
2397
|
}
|
|
2377
|
-
function
|
|
2398
|
+
function Gt(e, t) {
|
|
2378
2399
|
const n = e.childNodes, o = [];
|
|
2379
2400
|
let r = -1;
|
|
2380
2401
|
for (; ++r < n.length; ) {
|
|
2381
|
-
const a =
|
|
2402
|
+
const a = jt(n[r], t);
|
|
2382
2403
|
a !== void 0 && o.push(a);
|
|
2383
2404
|
}
|
|
2384
2405
|
return o;
|
|
2385
2406
|
}
|
|
2386
2407
|
new DOMParser();
|
|
2387
|
-
function
|
|
2388
|
-
const n =
|
|
2408
|
+
function Do(e, t) {
|
|
2409
|
+
const n = Po(e);
|
|
2389
2410
|
return (
|
|
2390
2411
|
/** @type {Root} */
|
|
2391
|
-
|
|
2412
|
+
Ao(n)
|
|
2392
2413
|
);
|
|
2393
2414
|
}
|
|
2394
|
-
function
|
|
2415
|
+
function Po(e) {
|
|
2395
2416
|
const t = document.createElement("template");
|
|
2396
2417
|
return t.innerHTML = e, t.content;
|
|
2397
2418
|
}
|
|
2398
|
-
const
|
|
2419
|
+
const He = (
|
|
2399
2420
|
// Note: overloads in JSDoc can’t yet use different `@template`s.
|
|
2400
2421
|
/**
|
|
2401
2422
|
* @type {(
|
|
@@ -2412,29 +2433,29 @@ const Ue = (
|
|
|
2412
2433
|
*/
|
|
2413
2434
|
(function(e) {
|
|
2414
2435
|
if (e == null)
|
|
2415
|
-
return
|
|
2436
|
+
return Uo;
|
|
2416
2437
|
if (typeof e == "function")
|
|
2417
|
-
return
|
|
2438
|
+
return me(e);
|
|
2418
2439
|
if (typeof e == "object")
|
|
2419
|
-
return Array.isArray(e) ?
|
|
2440
|
+
return Array.isArray(e) ? Mo(e) : (
|
|
2420
2441
|
// Cast because `ReadonlyArray` goes into the above but `isArray`
|
|
2421
2442
|
// narrows to `Array`.
|
|
2422
|
-
|
|
2443
|
+
zo(
|
|
2423
2444
|
/** @type {Props} */
|
|
2424
2445
|
e
|
|
2425
2446
|
)
|
|
2426
2447
|
);
|
|
2427
2448
|
if (typeof e == "string")
|
|
2428
|
-
return
|
|
2449
|
+
return $o(e);
|
|
2429
2450
|
throw new Error("Expected function, string, or object as test");
|
|
2430
2451
|
})
|
|
2431
2452
|
);
|
|
2432
|
-
function
|
|
2453
|
+
function Mo(e) {
|
|
2433
2454
|
const t = [];
|
|
2434
2455
|
let n = -1;
|
|
2435
2456
|
for (; ++n < e.length; )
|
|
2436
|
-
t[n] =
|
|
2437
|
-
return
|
|
2457
|
+
t[n] = He(e[n]);
|
|
2458
|
+
return me(o);
|
|
2438
2459
|
function o(...r) {
|
|
2439
2460
|
let a = -1;
|
|
2440
2461
|
for (; ++a < t.length; )
|
|
@@ -2442,12 +2463,12 @@ function Do(e) {
|
|
|
2442
2463
|
return !1;
|
|
2443
2464
|
}
|
|
2444
2465
|
}
|
|
2445
|
-
function
|
|
2466
|
+
function zo(e) {
|
|
2446
2467
|
const t = (
|
|
2447
2468
|
/** @type {Record<string, unknown>} */
|
|
2448
2469
|
e
|
|
2449
2470
|
);
|
|
2450
|
-
return
|
|
2471
|
+
return me(n);
|
|
2451
2472
|
function n(o) {
|
|
2452
2473
|
const r = (
|
|
2453
2474
|
/** @type {Record<string, unknown>} */
|
|
@@ -2460,16 +2481,16 @@ function Po(e) {
|
|
|
2460
2481
|
return !0;
|
|
2461
2482
|
}
|
|
2462
2483
|
}
|
|
2463
|
-
function
|
|
2464
|
-
return
|
|
2484
|
+
function $o(e) {
|
|
2485
|
+
return me(t);
|
|
2465
2486
|
function t(n) {
|
|
2466
2487
|
return n && n.type === e;
|
|
2467
2488
|
}
|
|
2468
2489
|
}
|
|
2469
|
-
function
|
|
2490
|
+
function me(e) {
|
|
2470
2491
|
return t;
|
|
2471
2492
|
function t(n, o, r) {
|
|
2472
|
-
return !!(
|
|
2493
|
+
return !!(Bo(n) && e.call(
|
|
2473
2494
|
this,
|
|
2474
2495
|
n,
|
|
2475
2496
|
typeof o == "number" ? o : void 0,
|
|
@@ -2477,13 +2498,13 @@ function ge(e) {
|
|
|
2477
2498
|
));
|
|
2478
2499
|
}
|
|
2479
2500
|
}
|
|
2480
|
-
function
|
|
2501
|
+
function Uo() {
|
|
2481
2502
|
return !0;
|
|
2482
2503
|
}
|
|
2483
|
-
function
|
|
2504
|
+
function Bo(e) {
|
|
2484
2505
|
return e !== null && typeof e == "object" && "type" in e;
|
|
2485
2506
|
}
|
|
2486
|
-
const
|
|
2507
|
+
const ot = (
|
|
2487
2508
|
// Note: overloads like this are needed to support optional generics.
|
|
2488
2509
|
/**
|
|
2489
2510
|
* @type {(
|
|
@@ -2498,7 +2519,7 @@ const et = (
|
|
|
2498
2519
|
* @returns {UnistNode | undefined}
|
|
2499
2520
|
*/
|
|
2500
2521
|
(function(e, t, n) {
|
|
2501
|
-
const o =
|
|
2522
|
+
const o = He(n);
|
|
2502
2523
|
if (!e || !e.type || !e.children)
|
|
2503
2524
|
throw new Error("Expected parent node");
|
|
2504
2525
|
if (typeof t == "number") {
|
|
@@ -2526,22 +2547,22 @@ const et = (
|
|
|
2526
2547
|
*/
|
|
2527
2548
|
(function(e) {
|
|
2528
2549
|
if (e == null)
|
|
2529
|
-
return
|
|
2550
|
+
return jo;
|
|
2530
2551
|
if (typeof e == "string")
|
|
2531
|
-
return
|
|
2552
|
+
return qo(e);
|
|
2532
2553
|
if (typeof e == "object")
|
|
2533
|
-
return
|
|
2554
|
+
return Ho(e);
|
|
2534
2555
|
if (typeof e == "function")
|
|
2535
|
-
return
|
|
2556
|
+
return qe(e);
|
|
2536
2557
|
throw new Error("Expected function, string, or array as `test`");
|
|
2537
2558
|
})
|
|
2538
2559
|
);
|
|
2539
|
-
function
|
|
2560
|
+
function Ho(e) {
|
|
2540
2561
|
const t = [];
|
|
2541
2562
|
let n = -1;
|
|
2542
2563
|
for (; ++n < e.length; )
|
|
2543
2564
|
t[n] = V(e[n]);
|
|
2544
|
-
return
|
|
2565
|
+
return qe(o);
|
|
2545
2566
|
function o(...r) {
|
|
2546
2567
|
let a = -1;
|
|
2547
2568
|
for (; ++a < t.length; )
|
|
@@ -2549,16 +2570,16 @@ function Uo(e) {
|
|
|
2549
2570
|
return !1;
|
|
2550
2571
|
}
|
|
2551
2572
|
}
|
|
2552
|
-
function
|
|
2553
|
-
return
|
|
2573
|
+
function qo(e) {
|
|
2574
|
+
return qe(t);
|
|
2554
2575
|
function t(n) {
|
|
2555
2576
|
return n.tagName === e;
|
|
2556
2577
|
}
|
|
2557
2578
|
}
|
|
2558
|
-
function
|
|
2579
|
+
function qe(e) {
|
|
2559
2580
|
return t;
|
|
2560
2581
|
function t(n, o, r) {
|
|
2561
|
-
return !!(
|
|
2582
|
+
return !!(Go(n) && e.call(
|
|
2562
2583
|
this,
|
|
2563
2584
|
n,
|
|
2564
2585
|
typeof o == "number" ? o : void 0,
|
|
@@ -2566,13 +2587,13 @@ function Be(e) {
|
|
|
2566
2587
|
));
|
|
2567
2588
|
}
|
|
2568
2589
|
}
|
|
2569
|
-
function
|
|
2590
|
+
function jo(e) {
|
|
2570
2591
|
return !!(e && typeof e == "object" && "type" in e && e.type === "element" && "tagName" in e && typeof e.tagName == "string");
|
|
2571
2592
|
}
|
|
2572
|
-
function
|
|
2593
|
+
function Go(e) {
|
|
2573
2594
|
return e !== null && typeof e == "object" && "type" in e && "tagName" in e;
|
|
2574
2595
|
}
|
|
2575
|
-
const
|
|
2596
|
+
const rt = /\n/g, at = /[\t ]+/g, Oe = V("br"), it = V(Qo), Vo = V("p"), lt = V("tr"), Wo = V([
|
|
2576
2597
|
// List from: <https://html.spec.whatwg.org/multipage/rendering.html#hidden-elements>
|
|
2577
2598
|
"datalist",
|
|
2578
2599
|
"head",
|
|
@@ -2586,10 +2607,10 @@ const tt = /\n/g, nt = /[\t ]+/g, Ie = V("br"), ot = V(Zo), qo = V("p"), rt = V(
|
|
|
2586
2607
|
"template",
|
|
2587
2608
|
"title",
|
|
2588
2609
|
// Hidden attribute.
|
|
2589
|
-
|
|
2610
|
+
Jo,
|
|
2590
2611
|
// From: <https://html.spec.whatwg.org/multipage/rendering.html#flow-content-3>
|
|
2591
|
-
|
|
2592
|
-
]),
|
|
2612
|
+
er
|
|
2613
|
+
]), Vt = V([
|
|
2593
2614
|
"address",
|
|
2594
2615
|
// Flow content
|
|
2595
2616
|
"article",
|
|
@@ -2671,71 +2692,71 @@ const tt = /\n/g, nt = /[\t ]+/g, Ie = V("br"), ot = V(Zo), qo = V("p"), rt = V(
|
|
|
2671
2692
|
"xmp"
|
|
2672
2693
|
// Flow content (legacy)
|
|
2673
2694
|
]);
|
|
2674
|
-
function
|
|
2675
|
-
const n = t || {}, o = "children" in e ? e.children : [], r =
|
|
2695
|
+
function Yo(e, t) {
|
|
2696
|
+
const n = t || {}, o = "children" in e ? e.children : [], r = Vt(e), a = Xt(e, {
|
|
2676
2697
|
whitespace: n.whitespace || "normal"
|
|
2677
|
-
}),
|
|
2678
|
-
(e.type === "text" || e.type === "comment") &&
|
|
2679
|
-
...
|
|
2698
|
+
}), l = [];
|
|
2699
|
+
(e.type === "text" || e.type === "comment") && l.push(
|
|
2700
|
+
...Yt(e, {
|
|
2680
2701
|
breakBefore: !0,
|
|
2681
2702
|
breakAfter: !0
|
|
2682
2703
|
})
|
|
2683
2704
|
);
|
|
2684
2705
|
let c = -1;
|
|
2685
2706
|
for (; ++c < o.length; )
|
|
2686
|
-
|
|
2687
|
-
...
|
|
2707
|
+
l.push(
|
|
2708
|
+
...Wt(
|
|
2688
2709
|
o[c],
|
|
2689
2710
|
// @ts-expect-error: `tree` is a parent if we’re here.
|
|
2690
2711
|
e,
|
|
2691
2712
|
{
|
|
2692
2713
|
whitespace: a,
|
|
2693
2714
|
breakBefore: c ? void 0 : r,
|
|
2694
|
-
breakAfter: c < o.length - 1 ?
|
|
2715
|
+
breakAfter: c < o.length - 1 ? Oe(o[c + 1]) : r
|
|
2695
2716
|
}
|
|
2696
2717
|
)
|
|
2697
2718
|
);
|
|
2698
2719
|
const s = [];
|
|
2699
2720
|
let p;
|
|
2700
|
-
for (c = -1; ++c <
|
|
2701
|
-
const h =
|
|
2721
|
+
for (c = -1; ++c < l.length; ) {
|
|
2722
|
+
const h = l[c];
|
|
2702
2723
|
typeof h == "number" ? p !== void 0 && h > p && (p = h) : h && (p !== void 0 && p > -1 && s.push(`
|
|
2703
2724
|
`.repeat(p) || " "), p = -1, s.push(h));
|
|
2704
2725
|
}
|
|
2705
2726
|
return s.join("");
|
|
2706
2727
|
}
|
|
2707
|
-
function
|
|
2708
|
-
return e.type === "element" ?
|
|
2728
|
+
function Wt(e, t, n) {
|
|
2729
|
+
return e.type === "element" ? Xo(e, t, n) : e.type === "text" ? n.whitespace === "normal" ? Yt(e, n) : Ko(e) : [];
|
|
2709
2730
|
}
|
|
2710
|
-
function
|
|
2711
|
-
const o =
|
|
2712
|
-
let a = -1,
|
|
2713
|
-
if (
|
|
2714
|
-
return
|
|
2731
|
+
function Xo(e, t, n) {
|
|
2732
|
+
const o = Xt(e, n), r = e.children || [];
|
|
2733
|
+
let a = -1, l = [];
|
|
2734
|
+
if (Wo(e))
|
|
2735
|
+
return l;
|
|
2715
2736
|
let c, s;
|
|
2716
|
-
for (
|
|
2717
|
-
|
|
2718
|
-
` :
|
|
2719
|
-
|
|
2720
|
-
|
|
2737
|
+
for (Oe(e) || lt(e) && // @ts-expect-error: something up with types of parents.
|
|
2738
|
+
ot(t, e, lt) ? s = `
|
|
2739
|
+
` : Vo(e) ? (c = 2, s = 2) : Vt(e) && (c = 1, s = 1); ++a < r.length; )
|
|
2740
|
+
l = l.concat(
|
|
2741
|
+
Wt(r[a], e, {
|
|
2721
2742
|
whitespace: o,
|
|
2722
2743
|
breakBefore: a ? void 0 : c,
|
|
2723
|
-
breakAfter: a < r.length - 1 ?
|
|
2744
|
+
breakAfter: a < r.length - 1 ? Oe(r[a + 1]) : s
|
|
2724
2745
|
})
|
|
2725
2746
|
);
|
|
2726
|
-
return
|
|
2727
|
-
|
|
2747
|
+
return it(e) && // @ts-expect-error: something up with types of parents.
|
|
2748
|
+
ot(t, e, it) && l.push(" "), c && l.unshift(c), s && l.push(s), l;
|
|
2728
2749
|
}
|
|
2729
|
-
function
|
|
2750
|
+
function Yt(e, t) {
|
|
2730
2751
|
const n = String(e.value), o = [], r = [];
|
|
2731
2752
|
let a = 0;
|
|
2732
2753
|
for (; a <= n.length; ) {
|
|
2733
|
-
|
|
2734
|
-
const s =
|
|
2754
|
+
rt.lastIndex = a;
|
|
2755
|
+
const s = rt.exec(n), p = s && "index" in s ? s.index : n.length;
|
|
2735
2756
|
o.push(
|
|
2736
2757
|
// Any sequence of collapsible spaces and tabs immediately preceding or
|
|
2737
2758
|
// following a segment break is removed.
|
|
2738
|
-
|
|
2759
|
+
Zo(
|
|
2739
2760
|
// […] ignoring bidi formatting characters (characters with the
|
|
2740
2761
|
// Bidi_Control property [UAX9]: ALM, LTR, RTL, LRE-RLO, LRI-PDI) as if
|
|
2741
2762
|
// they were not there.
|
|
@@ -2745,25 +2766,25 @@ function Gt(e, t) {
|
|
|
2745
2766
|
)
|
|
2746
2767
|
), a = p + 1;
|
|
2747
2768
|
}
|
|
2748
|
-
let
|
|
2749
|
-
for (; ++
|
|
2750
|
-
o[
|
|
2769
|
+
let l = -1, c;
|
|
2770
|
+
for (; ++l < o.length; )
|
|
2771
|
+
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
2772
|
return r;
|
|
2752
2773
|
}
|
|
2753
|
-
function
|
|
2774
|
+
function Ko(e) {
|
|
2754
2775
|
return [String(e.value)];
|
|
2755
2776
|
}
|
|
2756
|
-
function
|
|
2777
|
+
function Zo(e, t, n) {
|
|
2757
2778
|
const o = [];
|
|
2758
2779
|
let r = 0, a;
|
|
2759
2780
|
for (; r < e.length; ) {
|
|
2760
|
-
|
|
2761
|
-
const
|
|
2762
|
-
a =
|
|
2781
|
+
at.lastIndex = r;
|
|
2782
|
+
const l = at.exec(e);
|
|
2783
|
+
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
2784
|
}
|
|
2764
2785
|
return r !== a && !n && o.push(""), o.join(" ");
|
|
2765
2786
|
}
|
|
2766
|
-
function
|
|
2787
|
+
function Xt(e, t) {
|
|
2767
2788
|
if (e.type === "element") {
|
|
2768
2789
|
const n = e.properties || {};
|
|
2769
2790
|
switch (e.tagName) {
|
|
@@ -2784,20 +2805,20 @@ function Vt(e, t) {
|
|
|
2784
2805
|
}
|
|
2785
2806
|
return t.whitespace;
|
|
2786
2807
|
}
|
|
2787
|
-
function
|
|
2808
|
+
function Jo(e) {
|
|
2788
2809
|
return !!(e.properties || {}).hidden;
|
|
2789
2810
|
}
|
|
2790
|
-
function
|
|
2811
|
+
function Qo(e) {
|
|
2791
2812
|
return e.tagName === "td" || e.tagName === "th";
|
|
2792
2813
|
}
|
|
2793
|
-
function
|
|
2814
|
+
function er(e) {
|
|
2794
2815
|
return e.tagName === "dialog" && !(e.properties || {}).open;
|
|
2795
2816
|
}
|
|
2796
|
-
const
|
|
2797
|
-
function
|
|
2817
|
+
const Kt = [], tr = !0, st = !1, Zt = "skip";
|
|
2818
|
+
function nr(e, t, n, o) {
|
|
2798
2819
|
let r;
|
|
2799
2820
|
r = t;
|
|
2800
|
-
const a =
|
|
2821
|
+
const a = He(r), l = 1;
|
|
2801
2822
|
c(e, void 0, [])();
|
|
2802
2823
|
function c(s, p, h) {
|
|
2803
2824
|
const f = (
|
|
@@ -2818,44 +2839,44 @@ function er(e, t, n, o) {
|
|
|
2818
2839
|
}
|
|
2819
2840
|
return b;
|
|
2820
2841
|
function b() {
|
|
2821
|
-
let m =
|
|
2822
|
-
if (a(s, p, h[h.length - 1] || void 0) && (m =
|
|
2842
|
+
let m = Kt, y, d, v;
|
|
2843
|
+
if (a(s, p, h[h.length - 1] || void 0) && (m = or(n(s, h)), m[0] === st))
|
|
2823
2844
|
return m;
|
|
2824
2845
|
if ("children" in s && s.children) {
|
|
2825
2846
|
const x = (
|
|
2826
2847
|
/** @type {UnistParent} */
|
|
2827
2848
|
s
|
|
2828
2849
|
);
|
|
2829
|
-
if (x.children && m[0] !==
|
|
2830
|
-
for (d = -1 +
|
|
2850
|
+
if (x.children && m[0] !== Zt)
|
|
2851
|
+
for (d = -1 + l, v = h.concat(x); d > -1 && d < x.children.length; ) {
|
|
2831
2852
|
const g = x.children[d];
|
|
2832
|
-
if (
|
|
2833
|
-
return
|
|
2834
|
-
d = typeof
|
|
2853
|
+
if (y = c(g, d, v)(), y[0] === st)
|
|
2854
|
+
return y;
|
|
2855
|
+
d = typeof y[1] == "number" ? y[1] : d + l;
|
|
2835
2856
|
}
|
|
2836
2857
|
}
|
|
2837
2858
|
return m;
|
|
2838
2859
|
}
|
|
2839
2860
|
}
|
|
2840
2861
|
}
|
|
2841
|
-
function
|
|
2842
|
-
return Array.isArray(e) ? e : typeof e == "number" ? [
|
|
2862
|
+
function or(e) {
|
|
2863
|
+
return Array.isArray(e) ? e : typeof e == "number" ? [tr, e] : e == null ? Kt : [e];
|
|
2843
2864
|
}
|
|
2844
|
-
const
|
|
2845
|
-
function
|
|
2846
|
-
const t = e ||
|
|
2865
|
+
const rr = {}, ar = [];
|
|
2866
|
+
function ir(e) {
|
|
2867
|
+
const t = e || rr;
|
|
2847
2868
|
return function(n, o) {
|
|
2848
|
-
|
|
2849
|
-
const
|
|
2869
|
+
nr(n, "element", function(r, a) {
|
|
2870
|
+
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
2871
|
let h = s;
|
|
2851
2872
|
if (!c && !s && !p)
|
|
2852
2873
|
return;
|
|
2853
2874
|
let f = a[a.length - 1], b = r;
|
|
2854
2875
|
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 =
|
|
2856
|
-
let
|
|
2876
|
+
const m = Yo(b, { whitespace: "pre" });
|
|
2877
|
+
let y;
|
|
2857
2878
|
try {
|
|
2858
|
-
|
|
2879
|
+
y = Ve.renderToString(m, {
|
|
2859
2880
|
...t,
|
|
2860
2881
|
displayMode: h,
|
|
2861
2882
|
throwOnError: !0
|
|
@@ -2873,14 +2894,14 @@ function rr(e) {
|
|
|
2873
2894
|
source: "rehype-katex"
|
|
2874
2895
|
});
|
|
2875
2896
|
try {
|
|
2876
|
-
|
|
2897
|
+
y = Ve.renderToString(m, {
|
|
2877
2898
|
...t,
|
|
2878
2899
|
displayMode: h,
|
|
2879
2900
|
strict: "ignore",
|
|
2880
2901
|
throwOnError: !1
|
|
2881
2902
|
});
|
|
2882
2903
|
} catch {
|
|
2883
|
-
|
|
2904
|
+
y = [
|
|
2884
2905
|
{
|
|
2885
2906
|
type: "element",
|
|
2886
2907
|
tagName: "span",
|
|
@@ -2894,21 +2915,21 @@ function rr(e) {
|
|
|
2894
2915
|
];
|
|
2895
2916
|
}
|
|
2896
2917
|
}
|
|
2897
|
-
typeof
|
|
2898
|
-
|
|
2918
|
+
typeof y == "string" && (y = /** @type {Array<ElementContent>} */
|
|
2919
|
+
Do(y).children);
|
|
2899
2920
|
const d = f.children.indexOf(b);
|
|
2900
|
-
return f.children.splice(d, 1, ...
|
|
2921
|
+
return f.children.splice(d, 1, ...y), Zt;
|
|
2901
2922
|
});
|
|
2902
2923
|
};
|
|
2903
2924
|
}
|
|
2904
|
-
function
|
|
2925
|
+
function lr(e, t) {
|
|
2905
2926
|
const n = String(e);
|
|
2906
|
-
let o = n.indexOf(t), r = o, a = 0,
|
|
2927
|
+
let o = n.indexOf(t), r = o, a = 0, l = 0;
|
|
2907
2928
|
for (; o !== -1; )
|
|
2908
|
-
o === r ? ++a >
|
|
2909
|
-
return
|
|
2929
|
+
o === r ? ++a > l && (l = a) : a = 1, r = o + t.length, o = n.indexOf(t, r);
|
|
2930
|
+
return l;
|
|
2910
2931
|
}
|
|
2911
|
-
function
|
|
2932
|
+
function sr() {
|
|
2912
2933
|
return {
|
|
2913
2934
|
enter: {
|
|
2914
2935
|
mathFlow: e,
|
|
@@ -2920,7 +2941,7 @@ function lr() {
|
|
|
2920
2941
|
mathFlowFence: o,
|
|
2921
2942
|
mathFlowFenceMeta: n,
|
|
2922
2943
|
mathFlowValue: c,
|
|
2923
|
-
mathText:
|
|
2944
|
+
mathText: l,
|
|
2924
2945
|
mathTextData: c
|
|
2925
2946
|
}
|
|
2926
2947
|
};
|
|
@@ -2974,7 +2995,7 @@ function lr() {
|
|
|
2974
2995
|
s
|
|
2975
2996
|
), this.buffer();
|
|
2976
2997
|
}
|
|
2977
|
-
function
|
|
2998
|
+
function l(s) {
|
|
2978
2999
|
const p = this.resume(), h = this.stack[this.stack.length - 1];
|
|
2979
3000
|
h.type, this.exit(s), h.value = p, /** @type {Array<HastElementContent>} */
|
|
2980
3001
|
// @ts-expect-error: we defined it in `enterMathFlow`.
|
|
@@ -2984,7 +3005,7 @@ function lr() {
|
|
|
2984
3005
|
this.config.enter.data.call(this, s), this.config.exit.data.call(this, s);
|
|
2985
3006
|
}
|
|
2986
3007
|
}
|
|
2987
|
-
function
|
|
3008
|
+
function cr(e) {
|
|
2988
3009
|
let t = (e || {}).singleDollarTextMath;
|
|
2989
3010
|
return t == null && (t = !0), o.peek = r, {
|
|
2990
3011
|
unsafe: [
|
|
@@ -3001,11 +3022,11 @@ function ir(e) {
|
|
|
3001
3022
|
],
|
|
3002
3023
|
handlers: { math: n, inlineMath: o }
|
|
3003
3024
|
};
|
|
3004
|
-
function n(a,
|
|
3005
|
-
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(
|
|
3025
|
+
function n(a, l, c, s) {
|
|
3026
|
+
const p = a.value || "", h = c.createTracker(s), f = "$".repeat(Math.max(lr(p, "$") + 1, 2)), b = c.enter("mathFlow");
|
|
3006
3027
|
let m = h.move(f);
|
|
3007
3028
|
if (a.meta) {
|
|
3008
|
-
const
|
|
3029
|
+
const y = c.enter("mathFlowMeta");
|
|
3009
3030
|
m += h.move(
|
|
3010
3031
|
c.safe(a.meta, {
|
|
3011
3032
|
after: `
|
|
@@ -3014,13 +3035,13 @@ function ir(e) {
|
|
|
3014
3035
|
encode: ["$"],
|
|
3015
3036
|
...h.current()
|
|
3016
3037
|
})
|
|
3017
|
-
),
|
|
3038
|
+
), y();
|
|
3018
3039
|
}
|
|
3019
3040
|
return m += h.move(`
|
|
3020
3041
|
`), p && (m += h.move(p + `
|
|
3021
3042
|
`)), m += h.move(f), b(), m;
|
|
3022
3043
|
}
|
|
3023
|
-
function o(a,
|
|
3044
|
+
function o(a, l, c) {
|
|
3024
3045
|
let s = a.value || "", p = 1;
|
|
3025
3046
|
for (t || p++; new RegExp("(^|[^$])" + "\\$".repeat(p) + "([^$]|$)").test(s); )
|
|
3026
3047
|
p++;
|
|
@@ -3034,10 +3055,10 @@ function ir(e) {
|
|
|
3034
3055
|
const b = c.unsafe[f];
|
|
3035
3056
|
if (!b.atBreak) continue;
|
|
3036
3057
|
const m = c.compilePattern(b);
|
|
3037
|
-
let
|
|
3038
|
-
for (;
|
|
3039
|
-
let d =
|
|
3040
|
-
s.codePointAt(d) === 10 && s.codePointAt(d - 1) === 13 && d--, s = s.slice(0, d) + " " + s.slice(
|
|
3058
|
+
let y;
|
|
3059
|
+
for (; y = m.exec(s); ) {
|
|
3060
|
+
let d = y.index;
|
|
3061
|
+
s.codePointAt(d) === 10 && s.codePointAt(d - 1) === 13 && d--, s = s.slice(0, d) + " " + s.slice(y.index + 1);
|
|
3041
3062
|
}
|
|
3042
3063
|
}
|
|
3043
3064
|
return h + s + h;
|
|
@@ -3046,51 +3067,51 @@ function ir(e) {
|
|
|
3046
3067
|
return "$";
|
|
3047
3068
|
}
|
|
3048
3069
|
}
|
|
3049
|
-
function
|
|
3070
|
+
function j(e) {
|
|
3050
3071
|
return e !== null && e < -2;
|
|
3051
3072
|
}
|
|
3052
|
-
function
|
|
3073
|
+
function ct(e) {
|
|
3053
3074
|
return e === -2 || e === -1 || e === 32;
|
|
3054
3075
|
}
|
|
3055
|
-
function
|
|
3076
|
+
function ce(e, t, n, o) {
|
|
3056
3077
|
const r = o ? o - 1 : Number.POSITIVE_INFINITY;
|
|
3057
3078
|
let a = 0;
|
|
3058
|
-
return
|
|
3059
|
-
function
|
|
3060
|
-
return
|
|
3079
|
+
return l;
|
|
3080
|
+
function l(s) {
|
|
3081
|
+
return ct(s) ? (e.enter(n), c(s)) : t(s);
|
|
3061
3082
|
}
|
|
3062
3083
|
function c(s) {
|
|
3063
|
-
return
|
|
3084
|
+
return ct(s) && a++ < r ? (e.consume(s), c) : (e.exit(n), t(s));
|
|
3064
3085
|
}
|
|
3065
3086
|
}
|
|
3066
|
-
const
|
|
3067
|
-
tokenize:
|
|
3087
|
+
const ur = {
|
|
3088
|
+
tokenize: dr,
|
|
3068
3089
|
concrete: !0,
|
|
3069
3090
|
name: "mathFlow"
|
|
3070
|
-
},
|
|
3071
|
-
tokenize:
|
|
3091
|
+
}, ut = {
|
|
3092
|
+
tokenize: pr,
|
|
3072
3093
|
partial: !0
|
|
3073
3094
|
};
|
|
3074
|
-
function
|
|
3095
|
+
function dr(e, t, n) {
|
|
3075
3096
|
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
|
|
3097
|
+
let l = 0;
|
|
3077
3098
|
return c;
|
|
3078
3099
|
function c(g) {
|
|
3079
3100
|
return e.enter("mathFlow"), e.enter("mathFlowFence"), e.enter("mathFlowFenceSequence"), s(g);
|
|
3080
3101
|
}
|
|
3081
3102
|
function s(g) {
|
|
3082
|
-
return g === 36 ? (e.consume(g),
|
|
3103
|
+
return g === 36 ? (e.consume(g), l++, s) : l < 2 ? n(g) : (e.exit("mathFlowFenceSequence"), ce(e, p, "whitespace")(g));
|
|
3083
3104
|
}
|
|
3084
3105
|
function p(g) {
|
|
3085
|
-
return g === null ||
|
|
3106
|
+
return g === null || j(g) ? f(g) : (e.enter("mathFlowFenceMeta"), e.enter("chunkString", {
|
|
3086
3107
|
contentType: "string"
|
|
3087
3108
|
}), h(g));
|
|
3088
3109
|
}
|
|
3089
3110
|
function h(g) {
|
|
3090
|
-
return g === null ||
|
|
3111
|
+
return g === null || j(g) ? (e.exit("chunkString"), e.exit("mathFlowFenceMeta"), f(g)) : g === 36 ? n(g) : (e.consume(g), h);
|
|
3091
3112
|
}
|
|
3092
3113
|
function f(g) {
|
|
3093
|
-
return e.exit("mathFlowFence"), o.interrupt ? t(g) : e.attempt(
|
|
3114
|
+
return e.exit("mathFlowFence"), o.interrupt ? t(g) : e.attempt(ut, b, v)(g);
|
|
3094
3115
|
}
|
|
3095
3116
|
function b(g) {
|
|
3096
3117
|
return e.attempt({
|
|
@@ -3099,70 +3120,70 @@ function cr(e, t, n) {
|
|
|
3099
3120
|
}, v, m)(g);
|
|
3100
3121
|
}
|
|
3101
3122
|
function m(g) {
|
|
3102
|
-
return (a ?
|
|
3123
|
+
return (a ? ce(e, y, "linePrefix", a + 1) : y)(g);
|
|
3103
3124
|
}
|
|
3104
|
-
function
|
|
3105
|
-
return g === null ? v(g) :
|
|
3125
|
+
function y(g) {
|
|
3126
|
+
return g === null ? v(g) : j(g) ? e.attempt(ut, b, v)(g) : (e.enter("mathFlowValue"), d(g));
|
|
3106
3127
|
}
|
|
3107
3128
|
function d(g) {
|
|
3108
|
-
return g === null ||
|
|
3129
|
+
return g === null || j(g) ? (e.exit("mathFlowValue"), y(g)) : (e.consume(g), d);
|
|
3109
3130
|
}
|
|
3110
3131
|
function v(g) {
|
|
3111
3132
|
return e.exit("mathFlow"), t(g);
|
|
3112
3133
|
}
|
|
3113
|
-
function x(g,
|
|
3114
|
-
let
|
|
3115
|
-
return
|
|
3116
|
-
function
|
|
3117
|
-
return g.enter("mathFlowFence"), g.enter("mathFlowFenceSequence"),
|
|
3134
|
+
function x(g, R, E) {
|
|
3135
|
+
let I = 0;
|
|
3136
|
+
return ce(g, U, "linePrefix", o.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
|
|
3137
|
+
function U(O) {
|
|
3138
|
+
return g.enter("mathFlowFence"), g.enter("mathFlowFenceSequence"), z(O);
|
|
3118
3139
|
}
|
|
3119
|
-
function
|
|
3120
|
-
return
|
|
3140
|
+
function z(O) {
|
|
3141
|
+
return O === 36 ? (I++, g.consume(O), z) : I < l ? E(O) : (g.exit("mathFlowFenceSequence"), ce(g, ne, "whitespace")(O));
|
|
3121
3142
|
}
|
|
3122
|
-
function
|
|
3123
|
-
return
|
|
3143
|
+
function ne(O) {
|
|
3144
|
+
return O === null || j(O) ? (g.exit("mathFlowFence"), R(O)) : E(O);
|
|
3124
3145
|
}
|
|
3125
3146
|
}
|
|
3126
3147
|
}
|
|
3127
|
-
function
|
|
3148
|
+
function pr(e, t, n) {
|
|
3128
3149
|
const o = this;
|
|
3129
3150
|
return r;
|
|
3130
|
-
function r(
|
|
3131
|
-
return
|
|
3151
|
+
function r(l) {
|
|
3152
|
+
return l === null ? t(l) : (e.enter("lineEnding"), e.consume(l), e.exit("lineEnding"), a);
|
|
3132
3153
|
}
|
|
3133
|
-
function a(
|
|
3134
|
-
return o.parser.lazy[o.now().line] ? n(
|
|
3154
|
+
function a(l) {
|
|
3155
|
+
return o.parser.lazy[o.now().line] ? n(l) : t(l);
|
|
3135
3156
|
}
|
|
3136
3157
|
}
|
|
3137
|
-
function
|
|
3158
|
+
function hr(e) {
|
|
3138
3159
|
let n = (e || {}).singleDollarTextMath;
|
|
3139
3160
|
return n == null && (n = !0), {
|
|
3140
3161
|
tokenize: o,
|
|
3141
|
-
resolve:
|
|
3142
|
-
previous:
|
|
3162
|
+
resolve: gr,
|
|
3163
|
+
previous: mr,
|
|
3143
3164
|
name: "mathText"
|
|
3144
3165
|
};
|
|
3145
|
-
function o(r, a,
|
|
3166
|
+
function o(r, a, l) {
|
|
3146
3167
|
let c = 0, s, p;
|
|
3147
3168
|
return h;
|
|
3148
3169
|
function h(d) {
|
|
3149
3170
|
return r.enter("mathText"), r.enter("mathTextSequence"), f(d);
|
|
3150
3171
|
}
|
|
3151
3172
|
function f(d) {
|
|
3152
|
-
return d === 36 ? (r.consume(d), c++, f) : c < 2 && !n ?
|
|
3173
|
+
return d === 36 ? (r.consume(d), c++, f) : c < 2 && !n ? l(d) : (r.exit("mathTextSequence"), b(d));
|
|
3153
3174
|
}
|
|
3154
3175
|
function b(d) {
|
|
3155
|
-
return d === null ?
|
|
3176
|
+
return d === null ? l(d) : d === 36 ? (p = r.enter("mathTextSequence"), s = 0, y(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
3177
|
}
|
|
3157
3178
|
function m(d) {
|
|
3158
|
-
return d === null || d === 32 || d === 36 ||
|
|
3179
|
+
return d === null || d === 32 || d === 36 || j(d) ? (r.exit("mathTextData"), b(d)) : (r.consume(d), m);
|
|
3159
3180
|
}
|
|
3160
|
-
function
|
|
3161
|
-
return d === 36 ? (r.consume(d), s++,
|
|
3181
|
+
function y(d) {
|
|
3182
|
+
return d === 36 ? (r.consume(d), s++, y) : s === c ? (r.exit("mathTextSequence"), r.exit("mathText"), a(d)) : (p.type = "mathTextData", m(d));
|
|
3162
3183
|
}
|
|
3163
3184
|
}
|
|
3164
3185
|
}
|
|
3165
|
-
function
|
|
3186
|
+
function gr(e) {
|
|
3166
3187
|
let t = e.length - 4, n = 3, o, r;
|
|
3167
3188
|
if ((e[n][1].type === "lineEnding" || e[n][1].type === "space") && (e[t][1].type === "lineEnding" || e[t][1].type === "space")) {
|
|
3168
3189
|
for (o = n; ++o < t; )
|
|
@@ -3175,128 +3196,128 @@ function pr(e) {
|
|
|
3175
3196
|
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
3197
|
return e;
|
|
3177
3198
|
}
|
|
3178
|
-
function
|
|
3199
|
+
function mr(e) {
|
|
3179
3200
|
return e !== 36 || this.events[this.events.length - 1][1].type === "characterEscape";
|
|
3180
3201
|
}
|
|
3181
|
-
function
|
|
3202
|
+
function fr(e) {
|
|
3182
3203
|
return {
|
|
3183
3204
|
flow: {
|
|
3184
|
-
36:
|
|
3205
|
+
36: ur
|
|
3185
3206
|
},
|
|
3186
3207
|
text: {
|
|
3187
|
-
36:
|
|
3208
|
+
36: hr(e)
|
|
3188
3209
|
}
|
|
3189
3210
|
};
|
|
3190
3211
|
}
|
|
3191
|
-
const
|
|
3192
|
-
function
|
|
3212
|
+
const br = {};
|
|
3213
|
+
function yr(e) {
|
|
3193
3214
|
const t = (
|
|
3194
3215
|
/** @type {Processor} */
|
|
3195
3216
|
this
|
|
3196
|
-
), n = e ||
|
|
3197
|
-
r.push(
|
|
3217
|
+
), n = e || br, o = t.data(), r = o.micromarkExtensions || (o.micromarkExtensions = []), a = o.fromMarkdownExtensions || (o.fromMarkdownExtensions = []), l = o.toMarkdownExtensions || (o.toMarkdownExtensions = []);
|
|
3218
|
+
r.push(fr(n)), a.push(sr()), l.push(cr(n));
|
|
3198
3219
|
}
|
|
3199
|
-
function
|
|
3220
|
+
function kr(e = {}) {
|
|
3200
3221
|
var t, n;
|
|
3201
|
-
let o = [
|
|
3222
|
+
let o = [yr, { singleDollarTextMath: (t = e.singleDollarTextMath) != null ? t : !1 }], r = [ir, { errorColor: (n = e.errorColor) != null ? n : "var(--color-muted-foreground)" }];
|
|
3202
3223
|
return { name: "katex", type: "math", remarkPlugin: o, rehypePlugin: r, getStyles() {
|
|
3203
3224
|
return "katex/dist/katex.min.css";
|
|
3204
3225
|
} };
|
|
3205
3226
|
}
|
|
3206
|
-
var
|
|
3207
|
-
const
|
|
3208
|
-
({ className: e, ...t }) => /* @__PURE__ */
|
|
3209
|
-
|
|
3227
|
+
var dt = kr();
|
|
3228
|
+
const je = de(
|
|
3229
|
+
({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
3230
|
+
On,
|
|
3210
3231
|
{
|
|
3211
|
-
className:
|
|
3232
|
+
className: k("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0 code-bg ", e),
|
|
3212
3233
|
...t,
|
|
3213
|
-
remarkPlugins: [
|
|
3214
|
-
rehypePlugins: [
|
|
3234
|
+
remarkPlugins: [dt.remarkPlugin, ...t.remarkPlugins || []],
|
|
3235
|
+
rehypePlugins: [dt.rehypePlugin, ...t.rehypePlugins || []]
|
|
3215
3236
|
}
|
|
3216
3237
|
),
|
|
3217
3238
|
(e, t) => e.children === t.children
|
|
3218
3239
|
);
|
|
3219
|
-
|
|
3220
|
-
function
|
|
3240
|
+
je.displayName = "Response";
|
|
3241
|
+
function vr({
|
|
3221
3242
|
part: e,
|
|
3222
3243
|
message: t,
|
|
3223
3244
|
status: n,
|
|
3224
3245
|
isFinished: o,
|
|
3225
3246
|
lastMessage: r,
|
|
3226
3247
|
isLastVisiblePart: a,
|
|
3227
|
-
regen:
|
|
3248
|
+
regen: l,
|
|
3228
3249
|
feedback: c,
|
|
3229
3250
|
handleFeedback: s,
|
|
3230
3251
|
copyHost: p,
|
|
3231
3252
|
feedbackEnabled: h,
|
|
3232
3253
|
retryEnabled: f
|
|
3233
3254
|
}) {
|
|
3234
|
-
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins:
|
|
3255
|
+
const { t: b } = M(["chat"]), { textComponents: m, remarkPlugins: y, rehypePlugins: d } = W(), v = ge(e.text), x = !o && r && (n === "streaming" || n === "submitted"), g = l || (() => {
|
|
3235
3256
|
});
|
|
3236
3257
|
return /* @__PURE__ */ w("div", { className: "group py-2 first:pt-4 animate-in-bubble", children: [
|
|
3237
|
-
/* @__PURE__ */
|
|
3238
|
-
|
|
3258
|
+
/* @__PURE__ */ i(Lt, { from: t.role, children: /* @__PURE__ */ i(Dt, { dir: v, children: /* @__PURE__ */ i(
|
|
3259
|
+
je,
|
|
3239
3260
|
{
|
|
3240
3261
|
components: m,
|
|
3241
|
-
remarkPlugins:
|
|
3262
|
+
remarkPlugins: y,
|
|
3242
3263
|
rehypePlugins: d,
|
|
3243
3264
|
children: e.text
|
|
3244
3265
|
}
|
|
3245
3266
|
) }) }),
|
|
3246
|
-
a && !x && /* @__PURE__ */ w(
|
|
3267
|
+
a && !x && /* @__PURE__ */ w(co, { className: k("mt-1.5 ml-0.5", t.role === "user" && "justify-end"), children: [
|
|
3247
3268
|
t.role === "assistant" && /* @__PURE__ */ w(J, { children: [
|
|
3248
|
-
r && f && /* @__PURE__ */
|
|
3249
|
-
|
|
3269
|
+
r && f && /* @__PURE__ */ i(
|
|
3270
|
+
se,
|
|
3250
3271
|
{
|
|
3251
3272
|
onClick: () => g(t.id),
|
|
3252
3273
|
label: b("retry"),
|
|
3253
3274
|
tooltip: b("retry"),
|
|
3254
|
-
children: /* @__PURE__ */
|
|
3275
|
+
children: /* @__PURE__ */ i(yn, { className: "size-3" })
|
|
3255
3276
|
}
|
|
3256
3277
|
),
|
|
3257
3278
|
h && /* @__PURE__ */ w(J, { children: [
|
|
3258
|
-
/* @__PURE__ */
|
|
3259
|
-
|
|
3279
|
+
/* @__PURE__ */ i(
|
|
3280
|
+
se,
|
|
3260
3281
|
{
|
|
3261
3282
|
onClick: () => s("like"),
|
|
3262
3283
|
label: b("like"),
|
|
3263
3284
|
tooltip: b("like"),
|
|
3264
3285
|
className: c === "like" ? "text-primary" : "",
|
|
3265
|
-
children: /* @__PURE__ */
|
|
3286
|
+
children: /* @__PURE__ */ i(kn, { className: "size-3" })
|
|
3266
3287
|
}
|
|
3267
3288
|
),
|
|
3268
|
-
/* @__PURE__ */
|
|
3269
|
-
|
|
3289
|
+
/* @__PURE__ */ i(
|
|
3290
|
+
se,
|
|
3270
3291
|
{
|
|
3271
3292
|
onClick: () => s("dislike"),
|
|
3272
3293
|
label: b("dislike"),
|
|
3273
3294
|
tooltip: b("dislike"),
|
|
3274
3295
|
className: c === "dislike" ? "text-destructive" : "",
|
|
3275
|
-
children: /* @__PURE__ */
|
|
3296
|
+
children: /* @__PURE__ */ i(vn, { className: "size-3" })
|
|
3276
3297
|
}
|
|
3277
3298
|
)
|
|
3278
3299
|
] })
|
|
3279
3300
|
] }),
|
|
3280
|
-
/* @__PURE__ */
|
|
3281
|
-
|
|
3301
|
+
/* @__PURE__ */ i(
|
|
3302
|
+
se,
|
|
3282
3303
|
{
|
|
3283
3304
|
onClick: () => {
|
|
3284
3305
|
p(e.text);
|
|
3285
3306
|
},
|
|
3286
3307
|
label: b("copy"),
|
|
3287
3308
|
tooltip: b("copy"),
|
|
3288
|
-
children: /* @__PURE__ */
|
|
3309
|
+
children: /* @__PURE__ */ i(Nt, { className: "size-3" })
|
|
3289
3310
|
}
|
|
3290
3311
|
)
|
|
3291
3312
|
] })
|
|
3292
3313
|
] });
|
|
3293
3314
|
}
|
|
3294
|
-
const
|
|
3295
|
-
const e =
|
|
3315
|
+
const Jt = pe(null), wr = () => {
|
|
3316
|
+
const e = Le(Jt);
|
|
3296
3317
|
if (!e)
|
|
3297
3318
|
throw new Error("Reasoning components must be used within Reasoning");
|
|
3298
3319
|
return e;
|
|
3299
|
-
},
|
|
3320
|
+
}, xr = 1e3, _r = 1e3, Qt = de(
|
|
3300
3321
|
({
|
|
3301
3322
|
className: e,
|
|
3302
3323
|
isStreaming: t = !1,
|
|
@@ -3305,24 +3326,24 @@ const Xt = de(null), yr = () => {
|
|
|
3305
3326
|
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
3306
3327
|
onOpenChange: r,
|
|
3307
3328
|
duration: a,
|
|
3308
|
-
children:
|
|
3329
|
+
children: l,
|
|
3309
3330
|
...c
|
|
3310
3331
|
}) => {
|
|
3311
|
-
const [s, p] =
|
|
3332
|
+
const [s, p] = We({
|
|
3312
3333
|
prop: n,
|
|
3313
3334
|
defaultProp: o,
|
|
3314
3335
|
onChange: r
|
|
3315
|
-
}), [h, f] =
|
|
3336
|
+
}), [h, f] = We({
|
|
3316
3337
|
prop: a,
|
|
3317
3338
|
defaultProp: 0
|
|
3318
|
-
}), [b, m] =
|
|
3339
|
+
}), [b, m] = B(!1), [y, d] = B(null);
|
|
3319
3340
|
Q(() => {
|
|
3320
|
-
t ?
|
|
3321
|
-
}, [t,
|
|
3341
|
+
t ? y === null && d(Date.now()) : y !== null && (f(Math.ceil((Date.now() - y) / _r)), d(null));
|
|
3342
|
+
}, [t, y, f]), Q(() => {
|
|
3322
3343
|
if (o && !t && s && !b) {
|
|
3323
3344
|
const x = setTimeout(() => {
|
|
3324
3345
|
p(!1), m(!0);
|
|
3325
|
-
},
|
|
3346
|
+
}, xr);
|
|
3326
3347
|
return () => {
|
|
3327
3348
|
clearTimeout(x);
|
|
3328
3349
|
};
|
|
@@ -3331,70 +3352,70 @@ const Xt = de(null), yr = () => {
|
|
|
3331
3352
|
const v = (x) => {
|
|
3332
3353
|
p(x);
|
|
3333
3354
|
};
|
|
3334
|
-
return /* @__PURE__ */
|
|
3335
|
-
|
|
3355
|
+
return /* @__PURE__ */ i(Jt.Provider, { value: { isStreaming: t, isOpen: s, setIsOpen: p, duration: h }, children: /* @__PURE__ */ i(
|
|
3356
|
+
ze,
|
|
3336
3357
|
{
|
|
3337
|
-
className:
|
|
3358
|
+
className: k("not-prose mb-4", e),
|
|
3338
3359
|
onOpenChange: v,
|
|
3339
3360
|
open: s,
|
|
3340
3361
|
...c,
|
|
3341
|
-
children:
|
|
3362
|
+
children: l
|
|
3342
3363
|
}
|
|
3343
3364
|
) });
|
|
3344
3365
|
}
|
|
3345
|
-
),
|
|
3346
|
-
const { isStreaming: o, isOpen: r, duration: a } =
|
|
3347
|
-
return /* @__PURE__ */
|
|
3348
|
-
/* @__PURE__ */
|
|
3349
|
-
o || a === 0 ? /* @__PURE__ */
|
|
3366
|
+
), en = de(({ className: e, children: t, ...n }) => {
|
|
3367
|
+
const { isStreaming: o, isOpen: r, duration: a } = wr();
|
|
3368
|
+
return /* @__PURE__ */ i($e, { className: k("flex items-center gap-2 text-muted-foreground text-sm", e), ...n, children: t ?? /* @__PURE__ */ w(J, { children: [
|
|
3369
|
+
/* @__PURE__ */ i(wn, { className: "size-4" }),
|
|
3370
|
+
o || a === 0 ? /* @__PURE__ */ i("p", { children: "Thinking..." }) : /* @__PURE__ */ w("p", { children: [
|
|
3350
3371
|
"Thought for ",
|
|
3351
3372
|
a,
|
|
3352
3373
|
" ",
|
|
3353
3374
|
a === 1 ? "second" : "seconds"
|
|
3354
3375
|
] }),
|
|
3355
|
-
/* @__PURE__ */
|
|
3356
|
-
|
|
3376
|
+
/* @__PURE__ */ i(
|
|
3377
|
+
ie,
|
|
3357
3378
|
{
|
|
3358
|
-
className:
|
|
3379
|
+
className: k("size-4 text-muted-foreground transition-transform", r ? "rotate-180" : "rotate-0")
|
|
3359
3380
|
}
|
|
3360
3381
|
)
|
|
3361
3382
|
] }) });
|
|
3362
|
-
}),
|
|
3363
|
-
|
|
3383
|
+
}), tn = de(({ className: e, children: t, ...n }) => /* @__PURE__ */ i(
|
|
3384
|
+
Ue,
|
|
3364
3385
|
{
|
|
3365
|
-
className:
|
|
3386
|
+
className: k(
|
|
3366
3387
|
"mt-4 text-base",
|
|
3367
3388
|
"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",
|
|
3368
3389
|
e
|
|
3369
3390
|
),
|
|
3370
3391
|
...n,
|
|
3371
|
-
children: /* @__PURE__ */
|
|
3392
|
+
children: /* @__PURE__ */ i(je, { className: "grid gap-2", children: t })
|
|
3372
3393
|
}
|
|
3373
3394
|
));
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3377
|
-
function
|
|
3395
|
+
Qt.displayName = "Reasoning";
|
|
3396
|
+
en.displayName = "ReasoningTrigger";
|
|
3397
|
+
tn.displayName = "ReasoningContent";
|
|
3398
|
+
function Sr({
|
|
3378
3399
|
part: e,
|
|
3379
3400
|
status: t,
|
|
3380
3401
|
index: n,
|
|
3381
3402
|
partsCount: o,
|
|
3382
3403
|
lastMessage: r
|
|
3383
3404
|
}) {
|
|
3384
|
-
const a =
|
|
3405
|
+
const a = ge(e.text);
|
|
3385
3406
|
return /* @__PURE__ */ w(
|
|
3386
|
-
|
|
3407
|
+
Qt,
|
|
3387
3408
|
{
|
|
3388
3409
|
className: "w-full animate-in-bubble",
|
|
3389
3410
|
isStreaming: t === "streaming" && n === o - 1 && r,
|
|
3390
3411
|
children: [
|
|
3391
|
-
/* @__PURE__ */
|
|
3392
|
-
/* @__PURE__ */
|
|
3412
|
+
/* @__PURE__ */ i(en, {}),
|
|
3413
|
+
/* @__PURE__ */ i(tn, { dir: a, children: e.text })
|
|
3393
3414
|
]
|
|
3394
3415
|
}
|
|
3395
3416
|
);
|
|
3396
3417
|
}
|
|
3397
|
-
const
|
|
3418
|
+
const Er = Pe(
|
|
3398
3419
|
"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
3420
|
{
|
|
3400
3421
|
variants: {
|
|
@@ -3410,32 +3431,32 @@ const _r = Le(
|
|
|
3410
3431
|
}
|
|
3411
3432
|
}
|
|
3412
3433
|
);
|
|
3413
|
-
function
|
|
3434
|
+
function Nr({
|
|
3414
3435
|
className: e,
|
|
3415
3436
|
variant: t,
|
|
3416
3437
|
asChild: n = !1,
|
|
3417
3438
|
...o
|
|
3418
3439
|
}) {
|
|
3419
|
-
return /* @__PURE__ */
|
|
3440
|
+
return /* @__PURE__ */ i(n ? Ct : "span", { "data-slot": "badge", className: k(Er({ variant: t }), e), ...o });
|
|
3420
3441
|
}
|
|
3421
|
-
function
|
|
3422
|
-
return /* @__PURE__ */
|
|
3442
|
+
function Tr({ ...e }) {
|
|
3443
|
+
return /* @__PURE__ */ i(H.Root, { "data-slot": "dialog", ...e });
|
|
3423
3444
|
}
|
|
3424
|
-
function
|
|
3425
|
-
return /* @__PURE__ */
|
|
3445
|
+
function Cr({ ...e }) {
|
|
3446
|
+
return /* @__PURE__ */ i(H.Trigger, { "data-slot": "dialog-trigger", ...e });
|
|
3426
3447
|
}
|
|
3427
|
-
function
|
|
3428
|
-
return /* @__PURE__ */
|
|
3448
|
+
function Ar({ ...e }) {
|
|
3449
|
+
return /* @__PURE__ */ i(H.Portal, { "data-slot": "dialog-portal", ...e });
|
|
3429
3450
|
}
|
|
3430
|
-
function
|
|
3431
|
-
return /* @__PURE__ */
|
|
3451
|
+
function vi({ ...e }) {
|
|
3452
|
+
return /* @__PURE__ */ i(H.Close, { "data-slot": "dialog-close", ...e });
|
|
3432
3453
|
}
|
|
3433
|
-
function
|
|
3434
|
-
return /* @__PURE__ */
|
|
3435
|
-
|
|
3454
|
+
function Ir({ className: e, ...t }) {
|
|
3455
|
+
return /* @__PURE__ */ i(
|
|
3456
|
+
H.Overlay,
|
|
3436
3457
|
{
|
|
3437
3458
|
"data-slot": "dialog-overlay",
|
|
3438
|
-
className:
|
|
3459
|
+
className: k(
|
|
3439
3460
|
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
|
|
3440
3461
|
e
|
|
3441
3462
|
),
|
|
@@ -3443,19 +3464,19 @@ function Cr({ className: e, ...t }) {
|
|
|
3443
3464
|
}
|
|
3444
3465
|
);
|
|
3445
3466
|
}
|
|
3446
|
-
function
|
|
3467
|
+
function Rr({
|
|
3447
3468
|
className: e,
|
|
3448
3469
|
children: t,
|
|
3449
3470
|
showCloseButton: n = !0,
|
|
3450
3471
|
...o
|
|
3451
3472
|
}) {
|
|
3452
|
-
return /* @__PURE__ */ w(
|
|
3453
|
-
/* @__PURE__ */
|
|
3473
|
+
return /* @__PURE__ */ w(Ar, { "data-slot": "dialog-portal", children: [
|
|
3474
|
+
/* @__PURE__ */ i(Ir, {}),
|
|
3454
3475
|
/* @__PURE__ */ w(
|
|
3455
|
-
|
|
3476
|
+
H.Content,
|
|
3456
3477
|
{
|
|
3457
3478
|
"data-slot": "dialog-content",
|
|
3458
|
-
className:
|
|
3479
|
+
className: k(
|
|
3459
3480
|
"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg",
|
|
3460
3481
|
e
|
|
3461
3482
|
),
|
|
@@ -3463,13 +3484,13 @@ function Ar({
|
|
|
3463
3484
|
children: [
|
|
3464
3485
|
t,
|
|
3465
3486
|
n && /* @__PURE__ */ w(
|
|
3466
|
-
|
|
3487
|
+
H.Close,
|
|
3467
3488
|
{
|
|
3468
3489
|
"data-slot": "dialog-close",
|
|
3469
3490
|
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
3491
|
children: [
|
|
3471
|
-
/* @__PURE__ */
|
|
3472
|
-
/* @__PURE__ */
|
|
3492
|
+
/* @__PURE__ */ i(he, {}),
|
|
3493
|
+
/* @__PURE__ */ i("span", { className: "sr-only", children: "Close" })
|
|
3473
3494
|
]
|
|
3474
3495
|
}
|
|
3475
3496
|
)
|
|
@@ -3478,47 +3499,47 @@ function Ar({
|
|
|
3478
3499
|
)
|
|
3479
3500
|
] });
|
|
3480
3501
|
}
|
|
3481
|
-
function
|
|
3482
|
-
return /* @__PURE__ */
|
|
3502
|
+
function Or({ className: e, ...t }) {
|
|
3503
|
+
return /* @__PURE__ */ i(
|
|
3483
3504
|
"div",
|
|
3484
3505
|
{
|
|
3485
3506
|
"data-slot": "dialog-header",
|
|
3486
|
-
className:
|
|
3507
|
+
className: k("flex flex-col gap-2 text-center sm:text-start", e),
|
|
3487
3508
|
...t
|
|
3488
3509
|
}
|
|
3489
3510
|
);
|
|
3490
3511
|
}
|
|
3491
|
-
function
|
|
3492
|
-
return /* @__PURE__ */
|
|
3512
|
+
function wi({ className: e, ...t }) {
|
|
3513
|
+
return /* @__PURE__ */ i(
|
|
3493
3514
|
"div",
|
|
3494
3515
|
{
|
|
3495
3516
|
"data-slot": "dialog-footer",
|
|
3496
|
-
className:
|
|
3517
|
+
className: k("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", e),
|
|
3497
3518
|
...t
|
|
3498
3519
|
}
|
|
3499
3520
|
);
|
|
3500
3521
|
}
|
|
3501
|
-
function
|
|
3502
|
-
return /* @__PURE__ */
|
|
3503
|
-
|
|
3522
|
+
function Fr({ className: e, ...t }) {
|
|
3523
|
+
return /* @__PURE__ */ i(
|
|
3524
|
+
H.Title,
|
|
3504
3525
|
{
|
|
3505
3526
|
"data-slot": "dialog-title",
|
|
3506
|
-
className:
|
|
3527
|
+
className: k("text-xl leading-none font-semibold", e),
|
|
3507
3528
|
...t
|
|
3508
3529
|
}
|
|
3509
3530
|
);
|
|
3510
3531
|
}
|
|
3511
|
-
function
|
|
3512
|
-
return /* @__PURE__ */
|
|
3513
|
-
|
|
3532
|
+
function xi({ className: e, ...t }) {
|
|
3533
|
+
return /* @__PURE__ */ i(
|
|
3534
|
+
H.Description,
|
|
3514
3535
|
{
|
|
3515
3536
|
"data-slot": "dialog-description",
|
|
3516
|
-
className:
|
|
3537
|
+
className: k("text-muted-foreground text-base", e),
|
|
3517
3538
|
...t
|
|
3518
3539
|
}
|
|
3519
3540
|
);
|
|
3520
3541
|
}
|
|
3521
|
-
const
|
|
3542
|
+
const Lr = {
|
|
3522
3543
|
'code[class*="language-"]': {
|
|
3523
3544
|
background: "hsl(220, 13%, 18%)",
|
|
3524
3545
|
color: "hsl(220, 14%, 71%)",
|
|
@@ -4018,7 +4039,7 @@ const Or = {
|
|
|
4018
4039
|
".prism-previewer-easing.prism-previewer-easing line": {
|
|
4019
4040
|
stroke: "hsl(220, 14%, 71%)"
|
|
4020
4041
|
}
|
|
4021
|
-
},
|
|
4042
|
+
}, Dr = {
|
|
4022
4043
|
'code[class*="language-"]': {
|
|
4023
4044
|
background: "hsl(230, 1%, 98%)",
|
|
4024
4045
|
color: "hsl(230, 8%, 24%)",
|
|
@@ -4507,13 +4528,13 @@ const Or = {
|
|
|
4507
4528
|
stroke: "hsl(230, 8%, 24%)"
|
|
4508
4529
|
}
|
|
4509
4530
|
};
|
|
4510
|
-
function
|
|
4531
|
+
function q(e) {
|
|
4511
4532
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
4512
4533
|
}
|
|
4513
|
-
var
|
|
4514
|
-
function
|
|
4515
|
-
if (
|
|
4516
|
-
|
|
4534
|
+
var ve, pt;
|
|
4535
|
+
function Pr() {
|
|
4536
|
+
if (pt) return ve;
|
|
4537
|
+
pt = 1, ve = e, e.displayName = "python", e.aliases = ["py"];
|
|
4517
4538
|
function e(t) {
|
|
4518
4539
|
t.languages.python = {
|
|
4519
4540
|
comment: {
|
|
@@ -4577,14 +4598,14 @@ function Lr() {
|
|
|
4577
4598
|
punctuation: /[{}[\];(),.:]/
|
|
4578
4599
|
}, t.languages.python["string-interpolation"].inside.interpolation.inside.rest = t.languages.python, t.languages.py = t.languages.python;
|
|
4579
4600
|
}
|
|
4580
|
-
return
|
|
4581
|
-
}
|
|
4582
|
-
var
|
|
4583
|
-
const
|
|
4584
|
-
var
|
|
4585
|
-
function
|
|
4586
|
-
if (
|
|
4587
|
-
|
|
4601
|
+
return ve;
|
|
4602
|
+
}
|
|
4603
|
+
var Mr = Pr();
|
|
4604
|
+
const zr = /* @__PURE__ */ q(Mr);
|
|
4605
|
+
var we, ht;
|
|
4606
|
+
function $r() {
|
|
4607
|
+
if (ht) return we;
|
|
4608
|
+
ht = 1, we = e, e.displayName = "javascript", e.aliases = ["js"];
|
|
4588
4609
|
function e(t) {
|
|
4589
4610
|
t.languages.javascript = t.languages.extend("clike", {
|
|
4590
4611
|
"class-name": [
|
|
@@ -4709,14 +4730,14 @@ function Mr() {
|
|
|
4709
4730
|
"javascript"
|
|
4710
4731
|
)), t.languages.js = t.languages.javascript;
|
|
4711
4732
|
}
|
|
4712
|
-
return
|
|
4733
|
+
return we;
|
|
4713
4734
|
}
|
|
4714
|
-
var
|
|
4715
|
-
const
|
|
4716
|
-
var
|
|
4717
|
-
function
|
|
4718
|
-
if (
|
|
4719
|
-
|
|
4735
|
+
var Ur = $r();
|
|
4736
|
+
const Br = /* @__PURE__ */ q(Ur);
|
|
4737
|
+
var xe, gt;
|
|
4738
|
+
function Hr() {
|
|
4739
|
+
if (gt) return xe;
|
|
4740
|
+
gt = 1, xe = e, e.displayName = "typescript", e.aliases = ["ts"];
|
|
4720
4741
|
function e(t) {
|
|
4721
4742
|
(function(n) {
|
|
4722
4743
|
n.languages.typescript = n.languages.extend("javascript", {
|
|
@@ -4764,14 +4785,14 @@ function Ur() {
|
|
|
4764
4785
|
}), n.languages.ts = n.languages.typescript;
|
|
4765
4786
|
})(t);
|
|
4766
4787
|
}
|
|
4767
|
-
return
|
|
4788
|
+
return xe;
|
|
4768
4789
|
}
|
|
4769
|
-
var
|
|
4770
|
-
const
|
|
4771
|
-
var
|
|
4772
|
-
function
|
|
4773
|
-
if (
|
|
4774
|
-
|
|
4790
|
+
var qr = Hr();
|
|
4791
|
+
const jr = /* @__PURE__ */ q(qr);
|
|
4792
|
+
var _e, mt;
|
|
4793
|
+
function Gr() {
|
|
4794
|
+
if (mt) return _e;
|
|
4795
|
+
mt = 1, _e = e, e.displayName = "json", e.aliases = ["webmanifest"];
|
|
4775
4796
|
function e(t) {
|
|
4776
4797
|
t.languages.json = {
|
|
4777
4798
|
property: {
|
|
@@ -4798,14 +4819,14 @@ function jr() {
|
|
|
4798
4819
|
}
|
|
4799
4820
|
}, t.languages.webmanifest = t.languages.json;
|
|
4800
4821
|
}
|
|
4801
|
-
return
|
|
4822
|
+
return _e;
|
|
4802
4823
|
}
|
|
4803
|
-
var
|
|
4804
|
-
const
|
|
4805
|
-
var
|
|
4806
|
-
function
|
|
4807
|
-
if (
|
|
4808
|
-
|
|
4824
|
+
var Vr = Gr();
|
|
4825
|
+
const Wr = /* @__PURE__ */ q(Vr);
|
|
4826
|
+
var Se, ft;
|
|
4827
|
+
function Yr() {
|
|
4828
|
+
if (ft) return Se;
|
|
4829
|
+
ft = 1, Se = e, e.displayName = "bash", e.aliases = ["shell"];
|
|
4809
4830
|
function e(t) {
|
|
4810
4831
|
(function(n) {
|
|
4811
4832
|
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 +5021,7 @@ function Vr() {
|
|
|
5000
5021
|
lookbehind: !0
|
|
5001
5022
|
}
|
|
5002
5023
|
}, r.inside = n.languages.bash;
|
|
5003
|
-
for (var
|
|
5024
|
+
for (var l = [
|
|
5004
5025
|
"comment",
|
|
5005
5026
|
"function-name",
|
|
5006
5027
|
"for-or-select",
|
|
@@ -5015,19 +5036,19 @@ function Vr() {
|
|
|
5015
5036
|
"operator",
|
|
5016
5037
|
"punctuation",
|
|
5017
5038
|
"number"
|
|
5018
|
-
], c = a.variable[1].inside, s = 0; s <
|
|
5019
|
-
c[
|
|
5039
|
+
], c = a.variable[1].inside, s = 0; s < l.length; s++)
|
|
5040
|
+
c[l[s]] = n.languages.bash[l[s]];
|
|
5020
5041
|
n.languages.shell = n.languages.bash;
|
|
5021
5042
|
})(t);
|
|
5022
5043
|
}
|
|
5023
|
-
return
|
|
5044
|
+
return Se;
|
|
5024
5045
|
}
|
|
5025
|
-
var
|
|
5026
|
-
const
|
|
5027
|
-
var
|
|
5028
|
-
function
|
|
5029
|
-
if (
|
|
5030
|
-
|
|
5046
|
+
var Xr = Yr();
|
|
5047
|
+
const Kr = /* @__PURE__ */ q(Xr);
|
|
5048
|
+
var Ee, bt;
|
|
5049
|
+
function Zr() {
|
|
5050
|
+
if (bt) return Ee;
|
|
5051
|
+
bt = 1, Ee = e, e.displayName = "sql", e.aliases = [];
|
|
5031
5052
|
function e(t) {
|
|
5032
5053
|
t.languages.sql = {
|
|
5033
5054
|
comment: {
|
|
@@ -5063,17 +5084,17 @@ function Xr() {
|
|
|
5063
5084
|
punctuation: /[;[\]()`,.]/
|
|
5064
5085
|
};
|
|
5065
5086
|
}
|
|
5066
|
-
return
|
|
5087
|
+
return Ee;
|
|
5067
5088
|
}
|
|
5068
|
-
var
|
|
5069
|
-
const
|
|
5070
|
-
var
|
|
5071
|
-
function
|
|
5072
|
-
if (
|
|
5073
|
-
|
|
5089
|
+
var Jr = Zr();
|
|
5090
|
+
const Qr = /* @__PURE__ */ q(Jr);
|
|
5091
|
+
var Ne, yt;
|
|
5092
|
+
function ea() {
|
|
5093
|
+
if (yt) return Ne;
|
|
5094
|
+
yt = 1, Ne = e, e.displayName = "yaml", e.aliases = ["yml"];
|
|
5074
5095
|
function e(t) {
|
|
5075
5096
|
(function(n) {
|
|
5076
|
-
var o = /[*&][^\s[\]{},]+/, r = /!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/, a = "(?:" + r.source + "(?:[ ]+" + o.source + ")?|" + o.source + "(?:[ ]+" + r.source + ")?)",
|
|
5097
|
+
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
5098
|
/<PLAIN>/g,
|
|
5078
5099
|
function() {
|
|
5079
5100
|
return /[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source;
|
|
@@ -5107,7 +5128,7 @@ function Jr() {
|
|
|
5107
5128
|
/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g, function() {
|
|
5108
5129
|
return a;
|
|
5109
5130
|
}).replace(/<<key>>/g, function() {
|
|
5110
|
-
return "(?:" +
|
|
5131
|
+
return "(?:" + l + "|" + c + ")";
|
|
5111
5132
|
})
|
|
5112
5133
|
),
|
|
5113
5134
|
lookbehind: !0,
|
|
@@ -5154,14 +5175,14 @@ function Jr() {
|
|
|
5154
5175
|
}, n.languages.yml = n.languages.yaml;
|
|
5155
5176
|
})(t);
|
|
5156
5177
|
}
|
|
5157
|
-
return
|
|
5178
|
+
return Ne;
|
|
5158
5179
|
}
|
|
5159
|
-
var
|
|
5160
|
-
const
|
|
5161
|
-
var
|
|
5162
|
-
function
|
|
5163
|
-
if (
|
|
5164
|
-
|
|
5180
|
+
var ta = ea();
|
|
5181
|
+
const na = /* @__PURE__ */ q(ta);
|
|
5182
|
+
var Te, kt;
|
|
5183
|
+
function oa() {
|
|
5184
|
+
if (kt) return Te;
|
|
5185
|
+
kt = 1, Te = e, e.displayName = "markdown", e.aliases = ["md"];
|
|
5165
5186
|
function e(t) {
|
|
5166
5187
|
(function(n) {
|
|
5167
5188
|
var o = /(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;
|
|
@@ -5170,7 +5191,7 @@ function ta() {
|
|
|
5170
5191
|
return o;
|
|
5171
5192
|
}), RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + "(?:" + b + ")");
|
|
5172
5193
|
}
|
|
5173
|
-
var a = /(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,
|
|
5194
|
+
var a = /(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source, l = /\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(
|
|
5174
5195
|
/__/g,
|
|
5175
5196
|
function() {
|
|
5176
5197
|
return a;
|
|
@@ -5197,13 +5218,13 @@ function ta() {
|
|
|
5197
5218
|
},
|
|
5198
5219
|
table: {
|
|
5199
5220
|
pattern: RegExp(
|
|
5200
|
-
"^" +
|
|
5221
|
+
"^" + l + c + "(?:" + l + ")*",
|
|
5201
5222
|
"m"
|
|
5202
5223
|
),
|
|
5203
5224
|
inside: {
|
|
5204
5225
|
"table-data-rows": {
|
|
5205
5226
|
pattern: RegExp(
|
|
5206
|
-
"^(" +
|
|
5227
|
+
"^(" + l + c + ")(?:" + l + ")*$"
|
|
5207
5228
|
),
|
|
5208
5229
|
lookbehind: !0,
|
|
5209
5230
|
inside: {
|
|
@@ -5215,14 +5236,14 @@ function ta() {
|
|
|
5215
5236
|
}
|
|
5216
5237
|
},
|
|
5217
5238
|
"table-line": {
|
|
5218
|
-
pattern: RegExp("^(" +
|
|
5239
|
+
pattern: RegExp("^(" + l + ")" + c + "$"),
|
|
5219
5240
|
lookbehind: !0,
|
|
5220
5241
|
inside: {
|
|
5221
5242
|
punctuation: /\||:?-{3,}:?/
|
|
5222
5243
|
}
|
|
5223
5244
|
},
|
|
5224
5245
|
"table-header-row": {
|
|
5225
|
-
pattern: RegExp("^" +
|
|
5246
|
+
pattern: RegExp("^" + l + "$"),
|
|
5226
5247
|
inside: {
|
|
5227
5248
|
"table-header": {
|
|
5228
5249
|
pattern: RegExp(a),
|
|
@@ -5418,28 +5439,28 @@ function ta() {
|
|
|
5418
5439
|
}), n.hooks.add("after-tokenize", function(b) {
|
|
5419
5440
|
if (b.language !== "markdown" && b.language !== "md")
|
|
5420
5441
|
return;
|
|
5421
|
-
function m(
|
|
5422
|
-
if (!(!
|
|
5423
|
-
for (var d = 0, v =
|
|
5424
|
-
var x =
|
|
5442
|
+
function m(y) {
|
|
5443
|
+
if (!(!y || typeof y == "string"))
|
|
5444
|
+
for (var d = 0, v = y.length; d < v; d++) {
|
|
5445
|
+
var x = y[d];
|
|
5425
5446
|
if (x.type !== "code") {
|
|
5426
5447
|
m(x.content);
|
|
5427
5448
|
continue;
|
|
5428
5449
|
}
|
|
5429
|
-
var g = x.content[1],
|
|
5430
|
-
if (g &&
|
|
5431
|
-
var
|
|
5432
|
-
|
|
5433
|
-
var
|
|
5434
|
-
|
|
5450
|
+
var g = x.content[1], R = x.content[3];
|
|
5451
|
+
if (g && R && g.type === "code-language" && R.type === "code-block" && typeof g.content == "string") {
|
|
5452
|
+
var E = g.content.replace(/\b#/g, "sharp").replace(/\b\+\+/g, "pp");
|
|
5453
|
+
E = (/[a-z][\w-]*/i.exec(E) || [""])[0].toLowerCase();
|
|
5454
|
+
var I = "language-" + E;
|
|
5455
|
+
R.alias ? typeof R.alias == "string" ? R.alias = [R.alias, I] : R.alias.push(I) : R.alias = [I];
|
|
5435
5456
|
}
|
|
5436
5457
|
}
|
|
5437
5458
|
}
|
|
5438
5459
|
m(b.tokens);
|
|
5439
5460
|
}), n.hooks.add("wrap", function(b) {
|
|
5440
5461
|
if (b.type === "code-block") {
|
|
5441
|
-
for (var m = "",
|
|
5442
|
-
var v = b.classes[
|
|
5462
|
+
for (var m = "", y = 0, d = b.classes.length; y < d; y++) {
|
|
5463
|
+
var v = b.classes[y], x = /language-(.+)/.exec(v);
|
|
5443
5464
|
if (x) {
|
|
5444
5465
|
m = x[1];
|
|
5445
5466
|
break;
|
|
@@ -5453,11 +5474,11 @@ function ta() {
|
|
|
5453
5474
|
m
|
|
5454
5475
|
);
|
|
5455
5476
|
else if (m && m !== "none" && n.plugins.autoloader) {
|
|
5456
|
-
var
|
|
5457
|
-
b.attributes.id =
|
|
5458
|
-
var
|
|
5459
|
-
|
|
5460
|
-
|
|
5477
|
+
var R = "md-" + (/* @__PURE__ */ new Date()).valueOf() + "-" + Math.floor(Math.random() * 1e16);
|
|
5478
|
+
b.attributes.id = R, n.plugins.autoloader.loadLanguages(m, function() {
|
|
5479
|
+
var E = document.getElementById(R);
|
|
5480
|
+
E && (E.innerHTML = n.highlight(
|
|
5481
|
+
E.textContent,
|
|
5461
5482
|
n.languages[m],
|
|
5462
5483
|
m
|
|
5463
5484
|
));
|
|
@@ -5473,49 +5494,49 @@ function ta() {
|
|
|
5473
5494
|
}, h = String.fromCodePoint || String.fromCharCode;
|
|
5474
5495
|
function f(b) {
|
|
5475
5496
|
var m = b.replace(s, "");
|
|
5476
|
-
return m = m.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi, function(
|
|
5497
|
+
return m = m.replace(/&(\w{1,8}|#x?[\da-f]{1,8});/gi, function(y, d) {
|
|
5477
5498
|
if (d = d.toLowerCase(), d[0] === "#") {
|
|
5478
5499
|
var v;
|
|
5479
5500
|
return d[1] === "x" ? v = parseInt(d.slice(2), 16) : v = Number(d.slice(1)), h(v);
|
|
5480
5501
|
} else {
|
|
5481
5502
|
var x = p[d];
|
|
5482
|
-
return x ||
|
|
5503
|
+
return x || y;
|
|
5483
5504
|
}
|
|
5484
5505
|
}), m;
|
|
5485
5506
|
}
|
|
5486
5507
|
n.languages.md = n.languages.markdown;
|
|
5487
5508
|
})(t);
|
|
5488
5509
|
}
|
|
5489
|
-
return
|
|
5490
|
-
}
|
|
5491
|
-
var
|
|
5492
|
-
const
|
|
5493
|
-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
|
|
5501
|
-
const
|
|
5510
|
+
return Te;
|
|
5511
|
+
}
|
|
5512
|
+
var ra = oa();
|
|
5513
|
+
const aa = /* @__PURE__ */ q(ra);
|
|
5514
|
+
$.registerLanguage("python", zr);
|
|
5515
|
+
$.registerLanguage("javascript", Br);
|
|
5516
|
+
$.registerLanguage("typescript", jr);
|
|
5517
|
+
$.registerLanguage("json", Wr);
|
|
5518
|
+
$.registerLanguage("bash", Kr);
|
|
5519
|
+
$.registerLanguage("sql", Qr);
|
|
5520
|
+
$.registerLanguage("yaml", na);
|
|
5521
|
+
$.registerLanguage("markdown", aa);
|
|
5522
|
+
const ia = pe({
|
|
5502
5523
|
code: ""
|
|
5503
|
-
}),
|
|
5524
|
+
}), Fe = ({
|
|
5504
5525
|
code: e,
|
|
5505
5526
|
language: t,
|
|
5506
5527
|
showLineNumbers: n = !1,
|
|
5507
5528
|
className: o,
|
|
5508
5529
|
children: r,
|
|
5509
5530
|
...a
|
|
5510
|
-
}) => /* @__PURE__ */
|
|
5531
|
+
}) => /* @__PURE__ */ i(ia.Provider, { value: { code: e }, children: /* @__PURE__ */ i(
|
|
5511
5532
|
"div",
|
|
5512
5533
|
{
|
|
5513
|
-
className:
|
|
5534
|
+
className: k("relative w-full overflow-hidden rounded-md border bg-background text-foreground", o),
|
|
5514
5535
|
dir: "ltr",
|
|
5515
5536
|
...a,
|
|
5516
5537
|
children: /* @__PURE__ */ w("div", { className: "relative", children: [
|
|
5517
|
-
/* @__PURE__ */
|
|
5518
|
-
|
|
5538
|
+
/* @__PURE__ */ i(
|
|
5539
|
+
$,
|
|
5519
5540
|
{
|
|
5520
5541
|
className: "overflow-hidden dark:hidden",
|
|
5521
5542
|
codeTagProps: {
|
|
@@ -5535,12 +5556,12 @@ const ra = de({
|
|
|
5535
5556
|
minWidth: "2.5rem"
|
|
5536
5557
|
},
|
|
5537
5558
|
showLineNumbers: n,
|
|
5538
|
-
style:
|
|
5559
|
+
style: Dr,
|
|
5539
5560
|
children: e
|
|
5540
5561
|
}
|
|
5541
5562
|
),
|
|
5542
|
-
/* @__PURE__ */
|
|
5543
|
-
|
|
5563
|
+
/* @__PURE__ */ i(
|
|
5564
|
+
$,
|
|
5544
5565
|
{
|
|
5545
5566
|
className: "hidden overflow-hidden dark:block",
|
|
5546
5567
|
codeTagProps: {
|
|
@@ -5560,58 +5581,58 @@ const ra = de({
|
|
|
5560
5581
|
minWidth: "2.5rem"
|
|
5561
5582
|
},
|
|
5562
5583
|
showLineNumbers: n,
|
|
5563
|
-
style:
|
|
5584
|
+
style: Lr,
|
|
5564
5585
|
children: e
|
|
5565
5586
|
}
|
|
5566
5587
|
),
|
|
5567
|
-
r && /* @__PURE__ */
|
|
5588
|
+
r && /* @__PURE__ */ i("div", { className: "absolute top-2 right-2 flex items-center gap-2", children: r })
|
|
5568
5589
|
] })
|
|
5569
5590
|
}
|
|
5570
5591
|
) });
|
|
5571
|
-
function
|
|
5592
|
+
function la(e, t = "size-4") {
|
|
5572
5593
|
return {
|
|
5573
|
-
web_search: /* @__PURE__ */
|
|
5574
|
-
web_fetch: /* @__PURE__ */
|
|
5575
|
-
code_execution: /* @__PURE__ */
|
|
5576
|
-
image_generation: /* @__PURE__ */
|
|
5577
|
-
}[e] ?? /* @__PURE__ */
|
|
5594
|
+
web_search: /* @__PURE__ */ i(En, { className: t }),
|
|
5595
|
+
web_fetch: /* @__PURE__ */ i(ue, { className: t }),
|
|
5596
|
+
code_execution: /* @__PURE__ */ i(Sn, { className: t }),
|
|
5597
|
+
image_generation: /* @__PURE__ */ i(_n, { className: t })
|
|
5598
|
+
}[e] ?? /* @__PURE__ */ i(xn, { className: t });
|
|
5578
5599
|
}
|
|
5579
|
-
const
|
|
5600
|
+
const sa = ({ className: e, ...t }) => /* @__PURE__ */ i(ze, { className: k("not-prose mb-4 w-full rounded-md border", e), ...t }), ca = ({ status: e }) => {
|
|
5580
5601
|
const { t } = M(["tools_ui"]), n = {
|
|
5581
5602
|
"input-streaming": t("pending"),
|
|
5582
5603
|
"input-available": t("running"),
|
|
5583
5604
|
"output-available": t("completed"),
|
|
5584
5605
|
"output-error": t("error")
|
|
5585
5606
|
};
|
|
5586
|
-
return /* @__PURE__ */ w(
|
|
5607
|
+
return /* @__PURE__ */ w(Nr, { className: "gap-1.5 rounded-full text-xs", variant: "secondary", children: [
|
|
5587
5608
|
{
|
|
5588
|
-
"input-streaming": /* @__PURE__ */
|
|
5589
|
-
"input-available": /* @__PURE__ */
|
|
5590
|
-
"output-available": /* @__PURE__ */
|
|
5591
|
-
"output-error": /* @__PURE__ */
|
|
5609
|
+
"input-streaming": /* @__PURE__ */ i(Cn, { className: "size-4" }),
|
|
5610
|
+
"input-available": /* @__PURE__ */ i(Tn, { className: "size-4 animate-pulse" }),
|
|
5611
|
+
"output-available": /* @__PURE__ */ i(Nn, { className: "size-4 text-green-600" }),
|
|
5612
|
+
"output-error": /* @__PURE__ */ i(Tt, { className: "size-4 text-red-600" })
|
|
5592
5613
|
}[e],
|
|
5593
5614
|
n[e]
|
|
5594
5615
|
] });
|
|
5595
|
-
},
|
|
5596
|
-
const a = o || (t.startsWith("tool-") ? t.slice(5) : t),
|
|
5597
|
-
return /* @__PURE__ */ w(
|
|
5616
|
+
}, ua = ({ className: e, type: t, state: n, toolName: o, ...r }) => {
|
|
5617
|
+
const a = o || (t.startsWith("tool-") ? t.slice(5) : t), l = la(a, "size-4 text-muted-foreground");
|
|
5618
|
+
return /* @__PURE__ */ w($e, { className: k("flex w-full items-center justify-between gap-4 p-3", e), ...r, children: [
|
|
5598
5619
|
/* @__PURE__ */ w("div", { className: "flex items-center gap-2", children: [
|
|
5599
|
-
|
|
5600
|
-
/* @__PURE__ */
|
|
5601
|
-
/* @__PURE__ */
|
|
5620
|
+
l,
|
|
5621
|
+
/* @__PURE__ */ i("span", { className: "font-medium text-sm", children: a }),
|
|
5622
|
+
/* @__PURE__ */ i(ca, { status: n })
|
|
5602
5623
|
] }),
|
|
5603
|
-
/* @__PURE__ */
|
|
5624
|
+
/* @__PURE__ */ i(ie, { className: "size-4 text-muted-foreground transition-transform group-data-[state=open]:rotate-180" })
|
|
5604
5625
|
] });
|
|
5605
|
-
},
|
|
5606
|
-
|
|
5626
|
+
}, da = ({ className: e, ...t }) => /* @__PURE__ */ i(
|
|
5627
|
+
Ue,
|
|
5607
5628
|
{
|
|
5608
|
-
className:
|
|
5629
|
+
className: k(
|
|
5609
5630
|
"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",
|
|
5610
5631
|
e
|
|
5611
5632
|
),
|
|
5612
5633
|
...t
|
|
5613
5634
|
}
|
|
5614
|
-
),
|
|
5635
|
+
), nn = (e) => {
|
|
5615
5636
|
if (typeof e == "string")
|
|
5616
5637
|
try {
|
|
5617
5638
|
return JSON.stringify(JSON.parse(e), null, 2);
|
|
@@ -5619,52 +5640,52 @@ const la = ({ className: e, ...t }) => /* @__PURE__ */ l(Pe, { className: y("not
|
|
|
5619
5640
|
return e;
|
|
5620
5641
|
}
|
|
5621
5642
|
return JSON.stringify(e, null, 2);
|
|
5622
|
-
},
|
|
5643
|
+
}, pa = ({ className: e, input: t, ...n }) => {
|
|
5623
5644
|
const { t: o } = M(["tools_ui"]);
|
|
5624
|
-
return /* @__PURE__ */ w("div", { className:
|
|
5625
|
-
/* @__PURE__ */
|
|
5626
|
-
/* @__PURE__ */
|
|
5645
|
+
return /* @__PURE__ */ w("div", { className: k("space-y-2 overflow-hidden p-4", e), ...n, children: [
|
|
5646
|
+
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: o("parameters") }),
|
|
5647
|
+
/* @__PURE__ */ i("div", { className: "rounded-md bg-muted/50", children: /* @__PURE__ */ i(Fe, { code: nn(t), language: "json" }) })
|
|
5627
5648
|
] });
|
|
5628
|
-
},
|
|
5629
|
-
const { t: r } = M(["tools_ui"]), [a,
|
|
5649
|
+
}, ha = ({ className: e, output: t, errorText: n, ...o }) => {
|
|
5650
|
+
const { t: r } = M(["tools_ui"]), [a, l] = B(!1);
|
|
5630
5651
|
if (!(t || n))
|
|
5631
5652
|
return null;
|
|
5632
5653
|
const c = () => {
|
|
5633
5654
|
n && navigator.clipboard.writeText(n).then(() => {
|
|
5634
|
-
|
|
5655
|
+
l(!0), setTimeout(() => l(!1), 2e3);
|
|
5635
5656
|
});
|
|
5636
5657
|
}, s = () => {
|
|
5637
5658
|
if (typeof t == "string")
|
|
5638
5659
|
try {
|
|
5639
5660
|
const p = JSON.parse(t);
|
|
5640
|
-
return /* @__PURE__ */
|
|
5661
|
+
return /* @__PURE__ */ i(Fe, { code: JSON.stringify(p, null, 2), language: "json" });
|
|
5641
5662
|
} catch {
|
|
5642
|
-
return /* @__PURE__ */
|
|
5663
|
+
return /* @__PURE__ */ i("div", { className: "p-4 text-sm whitespace-pre-wrap", dir: "ltr", children: t });
|
|
5643
5664
|
}
|
|
5644
|
-
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */
|
|
5665
|
+
return typeof t == "object" && t !== null && !("$$typeof" in t) ? /* @__PURE__ */ i(Fe, { code: JSON.stringify(t, null, 2), language: "json" }) : t;
|
|
5645
5666
|
};
|
|
5646
|
-
return /* @__PURE__ */ w("div", { className:
|
|
5647
|
-
/* @__PURE__ */
|
|
5648
|
-
n && /* @__PURE__ */ w(
|
|
5649
|
-
/* @__PURE__ */
|
|
5650
|
-
/* @__PURE__ */
|
|
5667
|
+
return /* @__PURE__ */ w("div", { className: k("space-y-2 p-4", e), ...o, children: [
|
|
5668
|
+
/* @__PURE__ */ i("h4", { className: "font-medium text-muted-foreground text-xs uppercase tracking-wide", children: r(n ? "error" : "result") }),
|
|
5669
|
+
n && /* @__PURE__ */ w(Tr, { children: [
|
|
5670
|
+
/* @__PURE__ */ i(Cr, { asChild: !0, children: /* @__PURE__ */ w(ee, { variant: "destructive", size: "sm", children: [
|
|
5671
|
+
/* @__PURE__ */ i(Tt, { className: "mr-1.5 size-4" }),
|
|
5651
5672
|
r("view_error")
|
|
5652
5673
|
] }) }),
|
|
5653
|
-
/* @__PURE__ */ w(
|
|
5654
|
-
/* @__PURE__ */
|
|
5674
|
+
/* @__PURE__ */ w(Rr, { className: "max-w-2xl", children: [
|
|
5675
|
+
/* @__PURE__ */ i(Or, { children: /* @__PURE__ */ i(Fr, { className: "text-destructive", children: r("tool_error") }) }),
|
|
5655
5676
|
/* @__PURE__ */ w("div", { className: "space-y-4", children: [
|
|
5656
|
-
/* @__PURE__ */
|
|
5677
|
+
/* @__PURE__ */ i("div", { className: "max-h-96 overflow-auto rounded-md bg-destructive/10 p-4 text-destructive text-sm", children: /* @__PURE__ */ i("pre", { className: "whitespace-pre-wrap break-words", children: nn(n) }) }),
|
|
5657
5678
|
/* @__PURE__ */ w(ee, { variant: "outline", size: "sm", onClick: c, children: [
|
|
5658
|
-
/* @__PURE__ */
|
|
5679
|
+
/* @__PURE__ */ i(Nt, { className: "mr-1.5 size-4" }),
|
|
5659
5680
|
r(a ? "copied" : "copy_error")
|
|
5660
5681
|
] })
|
|
5661
5682
|
] })
|
|
5662
5683
|
] })
|
|
5663
5684
|
] }),
|
|
5664
|
-
t && !n && /* @__PURE__ */
|
|
5685
|
+
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
5686
|
] });
|
|
5666
5687
|
};
|
|
5667
|
-
function
|
|
5688
|
+
function ga({
|
|
5668
5689
|
part: e,
|
|
5669
5690
|
message: t,
|
|
5670
5691
|
chat: n,
|
|
@@ -5672,43 +5693,43 @@ function pa({
|
|
|
5672
5693
|
showToolCalls: r
|
|
5673
5694
|
}) {
|
|
5674
5695
|
const a = e;
|
|
5675
|
-
let
|
|
5676
|
-
if (!
|
|
5696
|
+
let l = a.toolName;
|
|
5697
|
+
if (!l && e.type.startsWith("tool-")) {
|
|
5677
5698
|
const c = e.type.slice(5);
|
|
5678
|
-
c !== "invocation" && c !== "result" && (
|
|
5699
|
+
c !== "invocation" && c !== "result" && (l = c);
|
|
5679
5700
|
}
|
|
5680
|
-
if (!
|
|
5701
|
+
if (!l && a.toolCallId && Array.isArray(t.parts))
|
|
5681
5702
|
try {
|
|
5682
5703
|
const c = t.parts.find(
|
|
5683
5704
|
(s) => s && typeof s == "object" && s.toolCallId === a.toolCallId && (s.toolName || s.type && s.type.startsWith("tool-"))
|
|
5684
5705
|
);
|
|
5685
|
-
c && (
|
|
5706
|
+
c && (l = c.toolName || (c.type.startsWith("tool-") ? c.type.slice(5) : void 0));
|
|
5686
5707
|
} catch (c) {
|
|
5687
5708
|
console.error("Error resolving toolName in ToolPart:", c);
|
|
5688
5709
|
}
|
|
5689
|
-
if (o &&
|
|
5690
|
-
const c = o[
|
|
5691
|
-
return /* @__PURE__ */
|
|
5710
|
+
if (o && l && o[l]) {
|
|
5711
|
+
const c = o[l];
|
|
5712
|
+
return /* @__PURE__ */ i(c, { part: e, message: t, chat: n });
|
|
5692
5713
|
}
|
|
5693
|
-
return r ? /* @__PURE__ */ w(
|
|
5694
|
-
/* @__PURE__ */
|
|
5695
|
-
/* @__PURE__ */ w(
|
|
5696
|
-
/* @__PURE__ */
|
|
5697
|
-
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */
|
|
5714
|
+
return r ? /* @__PURE__ */ w(sa, { className: "animate-in-bubble", children: [
|
|
5715
|
+
/* @__PURE__ */ i(ua, { type: e.type, state: a.state, toolName: l }),
|
|
5716
|
+
/* @__PURE__ */ w(da, { children: [
|
|
5717
|
+
/* @__PURE__ */ i(pa, { input: a.input }),
|
|
5718
|
+
(a.state === "output-available" || a.state === "output-error") && /* @__PURE__ */ i(ha, { errorText: a.errorText, output: a.output })
|
|
5698
5719
|
] })
|
|
5699
5720
|
] }) : null;
|
|
5700
5721
|
}
|
|
5701
|
-
function
|
|
5722
|
+
function ma({
|
|
5702
5723
|
part: e,
|
|
5703
5724
|
message: t
|
|
5704
5725
|
}) {
|
|
5705
|
-
const { t: n } = M(["chat", "admin"]), o = e, r = (o.mediaType || o.media_type)?.startsWith("image/"), a = o.filename ?? "file",
|
|
5726
|
+
const { t: n } = M(["chat", "admin"]), o = e, r = (o.mediaType || o.media_type)?.startsWith("image/"), a = o.filename ?? "file", l = (c) => {
|
|
5706
5727
|
if (c.preventDefault(), !o.url) return;
|
|
5707
5728
|
const s = document.createElement("a");
|
|
5708
5729
|
s.href = o.url, s.download = a, document.body.appendChild(s), s.click(), document.body.removeChild(s);
|
|
5709
5730
|
};
|
|
5710
|
-
return /* @__PURE__ */
|
|
5711
|
-
/* @__PURE__ */
|
|
5731
|
+
return /* @__PURE__ */ i("div", { className: "py-2 animate-in-bubble", children: /* @__PURE__ */ i(Lt, { from: t.role, children: /* @__PURE__ */ i(Dt, { isPlain: !0, children: r ? /* @__PURE__ */ w("div", { className: "group relative max-w-[280px] rounded-xl overflow-hidden border border-border/5 transition-all duration-300 hover:border-primary/30 hover:shadow-[0_0_20px_var(--glow)]", children: [
|
|
5732
|
+
/* @__PURE__ */ i(
|
|
5712
5733
|
"img",
|
|
5713
5734
|
{
|
|
5714
5735
|
src: o.url,
|
|
@@ -5717,50 +5738,50 @@ function ha({
|
|
|
5717
5738
|
}
|
|
5718
5739
|
),
|
|
5719
5740
|
/* @__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__ */
|
|
5741
|
+
/* @__PURE__ */ i("span", { className: "text-[10px] text-white truncate max-w-[150px] font-medium drop-shadow-sm", children: a }),
|
|
5742
|
+
/* @__PURE__ */ i(
|
|
5722
5743
|
"button",
|
|
5723
5744
|
{
|
|
5724
|
-
onClick:
|
|
5745
|
+
onClick: l,
|
|
5725
5746
|
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
5747
|
title: n("download", "Download"),
|
|
5727
|
-
children: /* @__PURE__ */
|
|
5748
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5728
5749
|
}
|
|
5729
5750
|
)
|
|
5730
5751
|
] }),
|
|
5731
|
-
/* @__PURE__ */
|
|
5752
|
+
/* @__PURE__ */ i("div", { className: "absolute top-2 right-2 md:hidden", children: /* @__PURE__ */ i(
|
|
5732
5753
|
"button",
|
|
5733
5754
|
{
|
|
5734
|
-
onClick:
|
|
5755
|
+
onClick: l,
|
|
5735
5756
|
className: "p-1.5 bg-black/40 backdrop-blur-md rounded-full text-white",
|
|
5736
|
-
children: /* @__PURE__ */
|
|
5757
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5737
5758
|
}
|
|
5738
5759
|
) })
|
|
5739
|
-
] }) : /* @__PURE__ */
|
|
5740
|
-
/* @__PURE__ */
|
|
5760
|
+
] }) : /* @__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: [
|
|
5761
|
+
/* @__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(Et, { className: "size-4 shrink-0" }) }),
|
|
5741
5762
|
/* @__PURE__ */ w("div", { className: "flex flex-col min-w-0 mr-4", children: [
|
|
5742
|
-
/* @__PURE__ */
|
|
5743
|
-
(o.mediaType || o.media_type) && /* @__PURE__ */
|
|
5763
|
+
/* @__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 }),
|
|
5764
|
+
(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
5765
|
] }),
|
|
5745
|
-
/* @__PURE__ */
|
|
5766
|
+
/* @__PURE__ */ i(
|
|
5746
5767
|
"button",
|
|
5747
5768
|
{
|
|
5748
|
-
onClick:
|
|
5769
|
+
onClick: l,
|
|
5749
5770
|
className: "ml-auto p-2 hover:bg-primary hover:text-primary-foreground rounded-lg text-muted-foreground transition-all active:scale-90",
|
|
5750
5771
|
title: n("download", "Download"),
|
|
5751
|
-
children: /* @__PURE__ */
|
|
5772
|
+
children: /* @__PURE__ */ i(ue, { className: "size-4" })
|
|
5752
5773
|
}
|
|
5753
5774
|
)
|
|
5754
5775
|
] }) }) }) }) });
|
|
5755
5776
|
}
|
|
5756
|
-
const
|
|
5757
|
-
MessageList:
|
|
5758
|
-
PromptInput:
|
|
5759
|
-
WelcomeScreen:
|
|
5760
|
-
TextPart:
|
|
5761
|
-
ReasoningPart:
|
|
5762
|
-
ToolPart:
|
|
5763
|
-
FilePart:
|
|
5777
|
+
const C = {
|
|
5778
|
+
MessageList: Zn,
|
|
5779
|
+
PromptInput: io,
|
|
5780
|
+
WelcomeScreen: so,
|
|
5781
|
+
TextPart: vr,
|
|
5782
|
+
ReasoningPart: Sr,
|
|
5783
|
+
ToolPart: ga,
|
|
5784
|
+
FilePart: ma,
|
|
5764
5785
|
toolComponents: void 0,
|
|
5765
5786
|
textComponents: void 0,
|
|
5766
5787
|
remarkPlugins: void 0,
|
|
@@ -5803,101 +5824,101 @@ const A = {
|
|
|
5803
5824
|
account: { enabled: !0, fields: {} }
|
|
5804
5825
|
}
|
|
5805
5826
|
}
|
|
5806
|
-
},
|
|
5827
|
+
}, on = pe(C);
|
|
5807
5828
|
function W() {
|
|
5808
|
-
return
|
|
5829
|
+
return Le(on);
|
|
5809
5830
|
}
|
|
5810
|
-
function
|
|
5831
|
+
function _i({
|
|
5811
5832
|
components: e,
|
|
5812
5833
|
history: t,
|
|
5813
5834
|
welcome: n,
|
|
5814
5835
|
threadActions: o,
|
|
5815
5836
|
composer: r,
|
|
5816
5837
|
theme: a,
|
|
5817
|
-
disclaimer:
|
|
5838
|
+
disclaimer: l,
|
|
5818
5839
|
app: c,
|
|
5819
5840
|
i18n: s,
|
|
5820
5841
|
settings: p,
|
|
5821
5842
|
children: h
|
|
5822
5843
|
}) {
|
|
5823
|
-
const f =
|
|
5844
|
+
const f = St(
|
|
5824
5845
|
() => ({
|
|
5825
|
-
...
|
|
5846
|
+
...C,
|
|
5826
5847
|
...e,
|
|
5827
5848
|
// toolComponents is a plain merge (not nested-spread) — callers
|
|
5828
5849
|
// 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 ? { ...
|
|
5850
|
+
toolComponents: e?.toolComponents ?? C.toolComponents,
|
|
5851
|
+
history: t ? { ...C.history, ...t } : C.history,
|
|
5852
|
+
welcome: n ? { ...C.welcome, ...n } : C.welcome,
|
|
5853
|
+
threadActions: o ? { ...C.threadActions, ...o } : C.threadActions,
|
|
5833
5854
|
composer: r ? {
|
|
5834
|
-
...
|
|
5855
|
+
...C.composer,
|
|
5835
5856
|
...r,
|
|
5836
|
-
attachments: r.attachments ? { ...
|
|
5837
|
-
} :
|
|
5838
|
-
theme: a ??
|
|
5839
|
-
disclaimer:
|
|
5840
|
-
app: c ? { ...
|
|
5841
|
-
i18n: s ??
|
|
5857
|
+
attachments: r.attachments ? { ...C.composer?.attachments, ...r.attachments } : C.composer?.attachments
|
|
5858
|
+
} : C.composer,
|
|
5859
|
+
theme: a ?? C.theme,
|
|
5860
|
+
disclaimer: l ?? C.disclaimer,
|
|
5861
|
+
app: c ? { ...C.app, ...c } : C.app,
|
|
5862
|
+
i18n: s ?? C.i18n,
|
|
5842
5863
|
settings: p ? {
|
|
5843
|
-
...
|
|
5864
|
+
...C.settings,
|
|
5844
5865
|
sections: {
|
|
5845
|
-
...
|
|
5866
|
+
...C.settings?.sections,
|
|
5846
5867
|
...p.sections
|
|
5847
5868
|
}
|
|
5848
|
-
} :
|
|
5869
|
+
} : C.settings
|
|
5849
5870
|
}),
|
|
5850
|
-
[e, t, n, o, r, a,
|
|
5871
|
+
[e, t, n, o, r, a, l, c, s, p]
|
|
5851
5872
|
);
|
|
5852
|
-
return /* @__PURE__ */
|
|
5873
|
+
return /* @__PURE__ */ i(on.Provider, { value: f, children: h });
|
|
5853
5874
|
}
|
|
5854
|
-
const
|
|
5875
|
+
const fa = {
|
|
5855
5876
|
theme: "system",
|
|
5856
5877
|
setTheme: () => null,
|
|
5857
5878
|
accent: void 0,
|
|
5858
5879
|
setAccent: () => null,
|
|
5859
5880
|
radius: void 0,
|
|
5860
5881
|
setRadius: () => null
|
|
5861
|
-
},
|
|
5862
|
-
function
|
|
5882
|
+
}, rn = pe(fa);
|
|
5883
|
+
function Si({
|
|
5863
5884
|
children: e,
|
|
5864
5885
|
defaultTheme: t = "system",
|
|
5865
5886
|
storageKey: n = "chatbot-theme",
|
|
5866
5887
|
...o
|
|
5867
5888
|
}) {
|
|
5868
|
-
const [r, a] =
|
|
5889
|
+
const [r, a] = B(
|
|
5869
5890
|
() => window.localStorage.getItem(n) ?? t
|
|
5870
|
-
), [
|
|
5891
|
+
), [l, c] = B(
|
|
5871
5892
|
() => window.localStorage.getItem(n + "-accent") || void 0
|
|
5872
|
-
), [s, p] =
|
|
5893
|
+
), [s, p] = B(
|
|
5873
5894
|
() => window.localStorage.getItem(n + "-radius") || "1.25rem"
|
|
5874
5895
|
), { theme: h } = W(), { i18n: f } = M(["theme"]);
|
|
5875
5896
|
Q(() => {
|
|
5876
5897
|
const m = window.document.documentElement;
|
|
5877
5898
|
if (m.classList.remove("light", "dark"), r === "system") {
|
|
5878
|
-
const
|
|
5879
|
-
m.classList.add(
|
|
5899
|
+
const y = window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
5900
|
+
m.classList.add(y);
|
|
5880
5901
|
return;
|
|
5881
5902
|
}
|
|
5882
5903
|
m.classList.add(r);
|
|
5883
5904
|
}, [r]), Q(() => {
|
|
5884
|
-
const m = window.document.documentElement,
|
|
5905
|
+
const m = window.document.documentElement, y = f.language?.split("-")[0] || f.language;
|
|
5885
5906
|
let d = h?.typography?.fontFamily;
|
|
5886
|
-
if (typeof d == "object" && d !== null && (d = d[f.language] || d[
|
|
5907
|
+
if (typeof d == "object" && d !== null && (d = d[f.language] || d[y] || d.en || Object.values(d)[0]), d) {
|
|
5887
5908
|
const g = d.includes(" ") && !d.startsWith("'") && !d.startsWith('"') ? `"${d}"` : d;
|
|
5888
5909
|
m.style.setProperty("--gentiq-font-family", g), m.style.fontFamily = g, window.document.body && (window.document.body.style.fontFamily = g);
|
|
5889
5910
|
}
|
|
5890
5911
|
const v = s || (typeof h?.radius == "number" ? `${h.radius}px` : h?.radius);
|
|
5891
5912
|
v !== void 0 && m.style.setProperty("--radius", v);
|
|
5892
|
-
const x =
|
|
5913
|
+
const x = l || h?.accent;
|
|
5893
5914
|
x !== void 0 && m.style.setProperty("--gentiq-primary", x), window.document.documentElement.dir = f.dir();
|
|
5894
|
-
}, [h, f, f.language,
|
|
5915
|
+
}, [h, f, f.language, l, s]);
|
|
5895
5916
|
const b = {
|
|
5896
5917
|
theme: r,
|
|
5897
5918
|
setTheme: (m) => {
|
|
5898
5919
|
window.localStorage.setItem(n, m), a(m);
|
|
5899
5920
|
},
|
|
5900
|
-
accent:
|
|
5921
|
+
accent: l,
|
|
5901
5922
|
setAccent: (m) => {
|
|
5902
5923
|
m ? window.localStorage.setItem(n + "-accent", m) : window.localStorage.removeItem(n + "-accent"), c(m);
|
|
5903
5924
|
},
|
|
@@ -5906,39 +5927,39 @@ function xl({
|
|
|
5906
5927
|
m ? window.localStorage.setItem(n + "-radius", m) : window.localStorage.removeItem(n + "-radius"), p(m);
|
|
5907
5928
|
}
|
|
5908
5929
|
};
|
|
5909
|
-
return /* @__PURE__ */
|
|
5930
|
+
return /* @__PURE__ */ i(rn.Provider, { ...o, value: b, children: e });
|
|
5910
5931
|
}
|
|
5911
|
-
const
|
|
5912
|
-
slice:
|
|
5913
|
-
forEach:
|
|
5932
|
+
const Ei = () => Le(rn), {
|
|
5933
|
+
slice: ba,
|
|
5934
|
+
forEach: ya
|
|
5914
5935
|
} = [];
|
|
5915
|
-
function
|
|
5916
|
-
return
|
|
5936
|
+
function ka(e) {
|
|
5937
|
+
return ya.call(ba.call(arguments, 1), (t) => {
|
|
5917
5938
|
if (t)
|
|
5918
5939
|
for (const n in t)
|
|
5919
5940
|
e[n] === void 0 && (e[n] = t[n]);
|
|
5920
5941
|
}), e;
|
|
5921
5942
|
}
|
|
5922
|
-
function
|
|
5943
|
+
function va(e) {
|
|
5923
5944
|
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
5945
|
}
|
|
5925
|
-
const
|
|
5946
|
+
const vt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, wa = function(e, t) {
|
|
5926
5947
|
const o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {
|
|
5927
5948
|
path: "/"
|
|
5928
5949
|
}, r = encodeURIComponent(t);
|
|
5929
5950
|
let a = `${e}=${r}`;
|
|
5930
5951
|
if (o.maxAge > 0) {
|
|
5931
|
-
const
|
|
5932
|
-
if (Number.isNaN(
|
|
5933
|
-
a += `; Max-Age=${Math.floor(
|
|
5952
|
+
const l = o.maxAge - 0;
|
|
5953
|
+
if (Number.isNaN(l)) throw new Error("maxAge should be a Number");
|
|
5954
|
+
a += `; Max-Age=${Math.floor(l)}`;
|
|
5934
5955
|
}
|
|
5935
5956
|
if (o.domain) {
|
|
5936
|
-
if (!
|
|
5957
|
+
if (!vt.test(o.domain))
|
|
5937
5958
|
throw new TypeError("option domain is invalid");
|
|
5938
5959
|
a += `; Domain=${o.domain}`;
|
|
5939
5960
|
}
|
|
5940
5961
|
if (o.path) {
|
|
5941
|
-
if (!
|
|
5962
|
+
if (!vt.test(o.path))
|
|
5942
5963
|
throw new TypeError("option path is invalid");
|
|
5943
5964
|
a += `; Path=${o.path}`;
|
|
5944
5965
|
}
|
|
@@ -5965,13 +5986,13 @@ const bt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, ya = function(e, t) {
|
|
|
5965
5986
|
throw new TypeError("option sameSite is invalid");
|
|
5966
5987
|
}
|
|
5967
5988
|
return o.partitioned && (a += "; Partitioned"), a;
|
|
5968
|
-
},
|
|
5989
|
+
}, wt = {
|
|
5969
5990
|
create(e, t, n, o) {
|
|
5970
5991
|
let r = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : {
|
|
5971
5992
|
path: "/",
|
|
5972
5993
|
sameSite: "strict"
|
|
5973
5994
|
};
|
|
5974
|
-
n && (r.expires = /* @__PURE__ */ new Date(), r.expires.setTime(r.expires.getTime() + n * 60 * 1e3)), o && (r.domain = o), document.cookie =
|
|
5995
|
+
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
5996
|
},
|
|
5976
5997
|
read(e) {
|
|
5977
5998
|
const t = `${e}=`, n = document.cookie.split(";");
|
|
@@ -5986,7 +6007,7 @@ const bt = /^[\u0009\u0020-\u007e\u0080-\u00ff]+$/, ya = function(e, t) {
|
|
|
5986
6007
|
this.create(e, "", -1, t);
|
|
5987
6008
|
}
|
|
5988
6009
|
};
|
|
5989
|
-
var
|
|
6010
|
+
var xa = {
|
|
5990
6011
|
name: "cookie",
|
|
5991
6012
|
// Deconstruct the options object and extract the lookupCookie property
|
|
5992
6013
|
lookup(e) {
|
|
@@ -5994,7 +6015,7 @@ var va = {
|
|
|
5994
6015
|
lookupCookie: t
|
|
5995
6016
|
} = e;
|
|
5996
6017
|
if (t && typeof document < "u")
|
|
5997
|
-
return
|
|
6018
|
+
return wt.read(t) || void 0;
|
|
5998
6019
|
},
|
|
5999
6020
|
// Deconstruct the options object and extract the lookupCookie, cookieMinutes, cookieDomain, and cookieOptions properties
|
|
6000
6021
|
cacheUserLanguage(e, t) {
|
|
@@ -6004,9 +6025,9 @@ var va = {
|
|
|
6004
6025
|
cookieDomain: r,
|
|
6005
6026
|
cookieOptions: a
|
|
6006
6027
|
} = t;
|
|
6007
|
-
n && typeof document < "u" &&
|
|
6028
|
+
n && typeof document < "u" && wt.create(n, e, o, r, a);
|
|
6008
6029
|
}
|
|
6009
|
-
},
|
|
6030
|
+
}, _a = {
|
|
6010
6031
|
name: "querystring",
|
|
6011
6032
|
// Deconstruct the options object and extract the lookupQuerystring property
|
|
6012
6033
|
lookup(e) {
|
|
@@ -6019,14 +6040,14 @@ var va = {
|
|
|
6019
6040
|
} = window.location;
|
|
6020
6041
|
!window.location.search && window.location.hash?.indexOf("?") > -1 && (o = window.location.hash.substring(window.location.hash.indexOf("?")));
|
|
6021
6042
|
const a = o.substring(1).split("&");
|
|
6022
|
-
for (let
|
|
6023
|
-
const c = a[
|
|
6024
|
-
c > 0 && a[
|
|
6043
|
+
for (let l = 0; l < a.length; l++) {
|
|
6044
|
+
const c = a[l].indexOf("=");
|
|
6045
|
+
c > 0 && a[l].substring(0, c) === t && (n = a[l].substring(c + 1));
|
|
6025
6046
|
}
|
|
6026
6047
|
}
|
|
6027
6048
|
return n;
|
|
6028
6049
|
}
|
|
6029
|
-
},
|
|
6050
|
+
}, Sa = {
|
|
6030
6051
|
name: "hash",
|
|
6031
6052
|
// Deconstruct the options object and extract the lookupHash property and the lookupFromHashIndex property
|
|
6032
6053
|
lookup(e) {
|
|
@@ -6041,16 +6062,16 @@ var va = {
|
|
|
6041
6062
|
if (r && r.length > 2) {
|
|
6042
6063
|
const a = r.substring(1);
|
|
6043
6064
|
if (t) {
|
|
6044
|
-
const
|
|
6045
|
-
for (let c = 0; c <
|
|
6046
|
-
const s =
|
|
6047
|
-
s > 0 &&
|
|
6065
|
+
const l = a.split("&");
|
|
6066
|
+
for (let c = 0; c < l.length; c++) {
|
|
6067
|
+
const s = l[c].indexOf("=");
|
|
6068
|
+
s > 0 && l[c].substring(0, s) === t && (o = l[c].substring(s + 1));
|
|
6048
6069
|
}
|
|
6049
6070
|
}
|
|
6050
6071
|
if (o) return o;
|
|
6051
6072
|
if (!o && n > -1) {
|
|
6052
|
-
const
|
|
6053
|
-
return Array.isArray(
|
|
6073
|
+
const l = r.match(/\/([a-zA-Z-]*)/g);
|
|
6074
|
+
return Array.isArray(l) ? l[typeof n == "number" ? n : 0]?.replace("/", "") : void 0;
|
|
6054
6075
|
}
|
|
6055
6076
|
}
|
|
6056
6077
|
}
|
|
@@ -6058,7 +6079,7 @@ var va = {
|
|
|
6058
6079
|
}
|
|
6059
6080
|
};
|
|
6060
6081
|
let Y = null;
|
|
6061
|
-
const
|
|
6082
|
+
const xt = () => {
|
|
6062
6083
|
if (Y !== null) return Y;
|
|
6063
6084
|
try {
|
|
6064
6085
|
if (Y = typeof window < "u" && window.localStorage !== null, !Y)
|
|
@@ -6070,14 +6091,14 @@ const yt = () => {
|
|
|
6070
6091
|
}
|
|
6071
6092
|
return Y;
|
|
6072
6093
|
};
|
|
6073
|
-
var
|
|
6094
|
+
var Ea = {
|
|
6074
6095
|
name: "localStorage",
|
|
6075
6096
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
6076
6097
|
lookup(e) {
|
|
6077
6098
|
let {
|
|
6078
6099
|
lookupLocalStorage: t
|
|
6079
6100
|
} = e;
|
|
6080
|
-
if (t &&
|
|
6101
|
+
if (t && xt())
|
|
6081
6102
|
return window.localStorage.getItem(t) || void 0;
|
|
6082
6103
|
},
|
|
6083
6104
|
// Deconstruct the options object and extract the lookupLocalStorage property
|
|
@@ -6085,11 +6106,11 @@ var _a = {
|
|
|
6085
6106
|
let {
|
|
6086
6107
|
lookupLocalStorage: n
|
|
6087
6108
|
} = t;
|
|
6088
|
-
n &&
|
|
6109
|
+
n && xt() && window.localStorage.setItem(n, e);
|
|
6089
6110
|
}
|
|
6090
6111
|
};
|
|
6091
6112
|
let X = null;
|
|
6092
|
-
const
|
|
6113
|
+
const _t = () => {
|
|
6093
6114
|
if (X !== null) return X;
|
|
6094
6115
|
try {
|
|
6095
6116
|
if (X = typeof window < "u" && window.sessionStorage !== null, !X)
|
|
@@ -6101,22 +6122,22 @@ const vt = () => {
|
|
|
6101
6122
|
}
|
|
6102
6123
|
return X;
|
|
6103
6124
|
};
|
|
6104
|
-
var
|
|
6125
|
+
var Na = {
|
|
6105
6126
|
name: "sessionStorage",
|
|
6106
6127
|
lookup(e) {
|
|
6107
6128
|
let {
|
|
6108
6129
|
lookupSessionStorage: t
|
|
6109
6130
|
} = e;
|
|
6110
|
-
if (t &&
|
|
6131
|
+
if (t && _t())
|
|
6111
6132
|
return window.sessionStorage.getItem(t) || void 0;
|
|
6112
6133
|
},
|
|
6113
6134
|
cacheUserLanguage(e, t) {
|
|
6114
6135
|
let {
|
|
6115
6136
|
lookupSessionStorage: n
|
|
6116
6137
|
} = t;
|
|
6117
|
-
n &&
|
|
6138
|
+
n && _t() && window.sessionStorage.setItem(n, e);
|
|
6118
6139
|
}
|
|
6119
|
-
},
|
|
6140
|
+
}, Ta = {
|
|
6120
6141
|
name: "navigator",
|
|
6121
6142
|
lookup(e) {
|
|
6122
6143
|
const t = [];
|
|
@@ -6133,7 +6154,7 @@ var Sa = {
|
|
|
6133
6154
|
}
|
|
6134
6155
|
return t.length > 0 ? t : void 0;
|
|
6135
6156
|
}
|
|
6136
|
-
},
|
|
6157
|
+
}, Ca = {
|
|
6137
6158
|
name: "htmlTag",
|
|
6138
6159
|
// Deconstruct the options object and extract the htmlTag property
|
|
6139
6160
|
lookup(e) {
|
|
@@ -6143,7 +6164,7 @@ var Sa = {
|
|
|
6143
6164
|
const o = t || (typeof document < "u" ? document.documentElement : null);
|
|
6144
6165
|
return o && typeof o.getAttribute == "function" && (n = o.getAttribute("lang")), n;
|
|
6145
6166
|
}
|
|
6146
|
-
},
|
|
6167
|
+
}, Aa = {
|
|
6147
6168
|
name: "path",
|
|
6148
6169
|
// Deconstruct the options object and extract the lookupFromPathIndex property
|
|
6149
6170
|
lookup(e) {
|
|
@@ -6154,7 +6175,7 @@ var Sa = {
|
|
|
6154
6175
|
const n = window.location.pathname.match(/\/([a-zA-Z-]*)/g);
|
|
6155
6176
|
return Array.isArray(n) ? n[typeof t == "number" ? t : 0]?.replace("/", "") : void 0;
|
|
6156
6177
|
}
|
|
6157
|
-
},
|
|
6178
|
+
}, Ia = {
|
|
6158
6179
|
name: "subdomain",
|
|
6159
6180
|
lookup(e) {
|
|
6160
6181
|
let {
|
|
@@ -6165,15 +6186,15 @@ var Sa = {
|
|
|
6165
6186
|
return o[n];
|
|
6166
6187
|
}
|
|
6167
6188
|
};
|
|
6168
|
-
let
|
|
6189
|
+
let an = !1;
|
|
6169
6190
|
try {
|
|
6170
|
-
document.cookie,
|
|
6191
|
+
document.cookie, an = !0;
|
|
6171
6192
|
} catch {
|
|
6172
6193
|
}
|
|
6173
|
-
const
|
|
6174
|
-
|
|
6175
|
-
const
|
|
6176
|
-
order:
|
|
6194
|
+
const ln = ["querystring", "cookie", "localStorage", "sessionStorage", "navigator", "htmlTag"];
|
|
6195
|
+
an || ln.splice(1, 1);
|
|
6196
|
+
const Ra = () => ({
|
|
6197
|
+
order: ln,
|
|
6177
6198
|
lookupQuerystring: "lng",
|
|
6178
6199
|
lookupCookie: "i18next",
|
|
6179
6200
|
lookupLocalStorage: "i18nextLng",
|
|
@@ -6185,7 +6206,7 @@ const Aa = () => ({
|
|
|
6185
6206
|
// cookieDomain: 'myDomain'
|
|
6186
6207
|
convertDetectedLanguage: (e) => e
|
|
6187
6208
|
});
|
|
6188
|
-
class
|
|
6209
|
+
class sn {
|
|
6189
6210
|
constructor(t) {
|
|
6190
6211
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
6191
6212
|
this.type = "languageDetector", this.detectors = {}, this.init(t, n);
|
|
@@ -6194,7 +6215,7 @@ class rn {
|
|
|
6194
6215
|
let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {
|
|
6195
6216
|
languageUtils: {}
|
|
6196
6217
|
}, 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 =
|
|
6218
|
+
this.services = t, this.options = ka(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
6219
|
}
|
|
6199
6220
|
addDetector(t) {
|
|
6200
6221
|
return this.detectors[t.name] = t, this;
|
|
@@ -6206,7 +6227,7 @@ class rn {
|
|
|
6206
6227
|
let r = this.detectors[o].lookup(this.options);
|
|
6207
6228
|
r && typeof r == "string" && (r = [r]), r && (n = n.concat(r));
|
|
6208
6229
|
}
|
|
6209
|
-
}), n = n.filter((o) => o != null && !
|
|
6230
|
+
}), 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
6231
|
}
|
|
6211
6232
|
cacheUserLanguage(t) {
|
|
6212
6233
|
let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.options.caches;
|
|
@@ -6215,31 +6236,31 @@ class rn {
|
|
|
6215
6236
|
}));
|
|
6216
6237
|
}
|
|
6217
6238
|
}
|
|
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:
|
|
6239
|
+
sn.type = "languageDetector";
|
|
6240
|
+
const Oa = { new_conversation: "New conversation", tooltip_new_conversation: "Start a new conversation", delete_conversation: "Delete", delete_confirm_title: "Delete conversation?", delete_confirm_description: "Are you sure you want to delete this chat? This action cannot be undone.", cancel: "Cancel", delete: "Delete", chat_deleted_success: "Chat deleted successfully", logout: "Logout", new_chat: "New Chat", rename_conversation: "Rename", rename_success: "Conversation renamed successfully", rename_failed: "Failed to rename conversation", search_conversations: "Search conversations...", save: "Save", no_conversations: "No conversations yet", loading_more: "Loading more...", pinned_success: "Conversation pinned", unpinned_success: "Conversation unpinned", pin_failed: "Failed to pin conversation", share_success: "Link copied", share_description: "The shareable link has been copied to your clipboard.", share_failed: "Failed to generate share link", pin_conversation: "Pin", unpin_conversation: "Unpin", share_conversation: "Share" }, Fa = { tools: "Tools", error: "Error:", input_placeholder: "Ask something...", insufficient_balance: "Insufficient balance. Please recharge your account to continue.", regenerate: "Regenerate", retry: "Retry", copy: "Copy", like: "Like", dislike: "Dislike", attach_file: "Attach file", remove_file: "Remove file", used_sources: "Used {{count}} sources", welcome: { title: "Hello! How can I help you today?", subtitle: "Ask me anything and I'll do my best to help.", suggestions: ["What can you help me with?", "Tell me something interesting", "Help me write an email", "Explain a concept to me"] }, disclaimer: "AI can make mistakes. Check important info." }, La = { pending: "Pending", running: "Running", completed: "Completed", error: "Error", parameters: "Parameters", result: "Result", view_error: "View Error", tool_error: "Tool Error", copied: "Copied!", copy_error: "Copy Error" }, Da = { login_tab: "Login", signup_tab: "Sign Up", phone: "Phone", phone_placeholder: "Phone number", password: "Password", name: "Name", name_placeholder: "First Name", surname: "Surname", surname_placeholder: "Last Name", loading: "Loading...", logging_in: "Logging in...", signing_up: "Signing up...", select_placeholder: "Select an option", login_button: "Login", signup_button: "Sign Up" }, Pa = { toggle: "Change theme", light: "Switch to light theme", dark: "Switch to dark theme", system: "Switch to system theme" }, Ma = { select_placeholder: "Select an option", loading: "Loading...", retry: "Retry", save: "Save", saving: "Saving...", cancel: "Cancel", delete: "Delete", edit: "Edit", search: "Search", search_placeholder: "Search...", no_data: "No data available", loading_more: "Loading more...", confirm_delete: "Are you sure you want to delete?", error_loading: "Error loading data", dashboard: { title: "Admin Panel", logout: "Logout", tabs: { analytics: "Analytics", chat_history: "Chats", users: "Users", admins: "Admins", settings: "Settings" } }, app_settings: { title: "System Settings", subtitle: "Manage global configuration for application appearance and behavior.", sections: { general: "Basic Information", chat: "Chat Experience", user_billing: "User & Billing" }, general: { app_name: "App Name", admin_title: "Admin Panel Title", language: "Default Language", language_help: "The language users see on their first visit (if not auto-detected)." }, chat: { welcome_greeting: "Welcome Greeting", welcome_subtitle: "Welcome Subtitle", disclaimer: "Disclaimer Text", show_tool_details: "Show technical tool details", show_tool_details_help: "Enable this to show professional technical details of AI tools to users.", show_settings: "Show settings icon for users", show_settings_help: "Show a settings gear icon in the chat interface for user customization.", composer_attachments: "Enable File Attachments", composer_attachments_help: "Allow users to upload and attach files to their messages.", thread_actions_feedback: "Enable Feedback Buttons", thread_actions_feedback_help: "Show like/dislike buttons on AI responses.", thread_actions_retry: "Enable Retry Button", thread_actions_retry_help: "Show a retry button to regenerate the last AI response.", history_enabled: "Enable Chat History Sidebar", history_enabled_help: "Show the sidebar containing previous conversations.", history_show_delete: "Allow Deleting Conversations", history_show_rename: "Allow Renaming Conversations", history_show_share: "Allow Sharing Conversations", history_show_pin: "Allow Pinning Conversations", sections_modes: "Settings Tab Modes", sections_modes_help: "Control visibility and interactability of settings tabs for users.", mode_editable: "Enable (Editable)", mode_faded: "Fade (Readonly)", mode_hidden: "Hide (Disable)", general_tab: "General Tab", profile_tab: "Profile Tab", account_tab: "Account Tab", inner_fields_modes: "Inner Fields Visibility", inner_fields_modes_help: "Configure visibility for individual fields within each tab." }, user_billing: { initial_balance_tokens: "Default Initial Tokens", initial_balance_requests: "Default Initial Requests", initial_balance_help: "These values will be assigned to new users by default if not specified during creation." }, save_success: "Settings saved successfully", save_error: "Failed to save settings", save: "Save Changes", translations_management: "Translations Management", editor_tips: "All changes are saved automatically to local state. Don't forget to push 'Save Changes' to persist.", sync_from_code: "Sync from Code", reset_button: "Reset to Defaults", reset_confirm_title: "Reset Settings?", reset_confirm_description: "This will reset all fields to their original default values from the code. Current unsaved changes will be lost.", preview: "Preview", tips_label: "TIPS" }, analytics: { title: "Analytics & Statistics", days: "{{count}} Days", total_users: "Total Users", total_threads: "Total Threads", total_messages: "Total Messages", total_token_usage: "Total Token Usage", threads_chart: "Threads", messages_chart: "Messages", token_usage_chart: "Token Usage", active_users: "Active Users", conversations: "conversations", threads: "threads", feedback: "User Feedback", total_feedback: "Total Feedback", positive: "Positive", negative: "Negative", loading_analytics: "Loading analytics...", error_loading: "Error loading data" }, chat_history: { title: "Chat History Management", search_placeholder: "Search by name, phone, thread title, or ID...", search_button: "Search", threads_list: "Threads List", thread_count: "{{count}}", no_thread_title: "Untitled conversation", messages: "Messages", messages_for: "Messages for: {{title}}", select_thread: "Select a conversation to view", no_threads: "No conversations found", empty_thread: "This conversation is empty", loading_threads: "Loading...", loading_messages: "Loading messages...", user_label: "User", assistant_label: "AI Assistant", input_tokens: "Input: {{value}}", output_tokens: "Output: {{value}}", total_tokens: "Total: {{value}}", all_feedbacks: "All Conversations", liked_feedbacks: "Liked 👍", disliked_feedbacks: "Disliked 👎", any_feedback: "With Feedback", output_available: "Output Available", running: "Running...", unnamed_file: "Unnamed File", download_file: "Download File" }, users: { title: "User Management", user_count: "User count: {{count}}", add_user: "Add New User", edit_user: "Edit User", phone: "Phone Number", phone_placeholder: "09123456789", name: "Name", surname: "Surname", initial_tokens: "Initial Tokens (optional)", initial_requests: "Initial Requests (optional)", balance: "Balance", requests_label: "Requests", tokens_label: "Tokens", token_limit: "Token Limit", request_limit: "Request Limit", tokens_usage: "Tokens Usage", requests_usage: "Requests Usage", actions: "Actions", copy_token: "Copy Token (auto-refresh)", token_copied: "Token copied successfully", no_token: "No token found for this user", recharge: "Recharge Balance", full_charge: "Full Charge", update_balance: "Update Balance", update_balance_for: "Update Balance for", token_count: "Token Count", request_count: "Request Count", updating: "Updating...", no_users: "No users found.", confirm_delete_user: "Are you sure you want to delete this user?", tokens_exceed_limit: "Tokens cannot exceed the specified limit", requests_exceed_limit: "Requests cannot exceed the specified limit", metadata: "Metadata (JSON)", initial_balance: "Initial Balance", custom_fields: "Additional Fields", metadata_raw: "Metadata (Raw JSON)", advanced_usage: "Advanced usage", invalid_json: "Invalid JSON format" }, admins: { title: "Admin Management", admin_count: "Admin count: {{count}}", add_admin: "Add New Admin", edit_admin: "Edit Admin", username: "Username", name: "Name", password: "Password", password_edit: "New Password (leave empty to keep current)", permissions: "Permissions", perm_chat_history: "Chat History", perm_admin_management: "Admin Management", perm_user_management: "User Management", perm_analytics: "Analytics", perm_settings: "Settings", no_admins: "No admins found.", confirm_delete_admin: "Are you sure you want to delete this admin?" }, errors: { access_denied_title: "Access Denied", access_denied_message: "You don't have the necessary permissions to access this page. You can contact the administrator!", back_to_dashboard: "Back to Dashboard" }, login: { title: "Admin Panel", setup_title: "Initial Setup", setup_description: "No admin account exists yet. Set a password for the default admin user to get started.", set_password: "Set Password", set_password_placeholder: "Choose a strong password", confirm_password: "Confirm Password", confirm_password_placeholder: "Re-enter the password", passwords_mismatch: "Passwords do not match", password_too_short: "Password must be at least 4 characters", create_admin: "Create Admin & Login", setting_up: "Setting up...", username: "Username", username_placeholder: "Username", password: "Password", password_placeholder: "••••••••", submit: "Login", logging_in: "Logging in...", error: "Login failed", copyright: "© 2026 AI Chatbot Platform" } }, za = { title: "Settings", sections: { profile: "Profile", general: "General", account: "Account" }, profile: { title: "Profile Information", subtitle: "Update your personal details below.", name: "First Name", surname: "Last Name", phone: "Phone Number", password: "New Password", password_placeholder: "Leave empty to keep current", save: "Save Changes", saving: "Saving...", success: "Profile updated successfully", error: "Failed to update profile", select_placeholder: "Select an option" }, general: { title: "General Settings", subtitle: "Configure look and feel and language.", theme: "Theme", language: "Language", themes: { light: "Light", dark: "Dark", system: "System" }, accent: "Accent Color", radius: "Rounded Corners", radius_levels: { sharp: "Sharp", round: "Round" }, languages: { en: "English", fa: "Persian" } }, account: { title: "Account & Usage", subtitle: "Monitor your quotas and manage your session.", balance: "Current Balance", tokens: "Tokens", requests: "Requests", logout: "Logout", logout_confirm: "Are you sure you want to logout?", last_recharge: "Last balance update on" } }, $a = { unauthorized: "Authentication required. Please login again.", invalid_credentials: "Invalid phone number or password.", phone_required: "Phone number is required.", password_required: "Password is required.", name_surname_required: "Name and surname are required.", phone_already_exists: "This phone number is already registered.", invalid_token: "Your session has expired. Please login again.", user_not_found: "User not found.", insufficient_balance: "Insufficient balance. Please recharge your account.", me_update_failed: "Failed to update profile information.", thread_not_found: "Conversation not found.", access_denied: "You do not have permission to perform this action.", feedback_save_failed: "Failed to save feedback.", thread_update_failed: "Failed to update conversation.", thread_delete_failed: "Failed to delete conversation.", attachment_not_found: "Attachment not found.", thread_share_failed: "Failed to share conversation.", admin_already_exists: "Admin with this username already exists.", admin_not_found: "Admin not found.", cannot_delete_self: "You cannot delete your own admin account.", admin_update_failed: "Failed to update admin information.", internal_error: "An internal server error occurred. Please try again later.", validation_error: "Invalid data provided. Please check your input.", not_found: "The requested resource was not found." }, Ua = {
|
|
6241
|
+
sidebar: Oa,
|
|
6242
|
+
chat: Fa,
|
|
6243
|
+
tools_ui: La,
|
|
6244
|
+
login: Da,
|
|
6245
|
+
theme: Pa,
|
|
6246
|
+
admin: Ma,
|
|
6247
|
+
settings: za,
|
|
6248
|
+
errors: $a
|
|
6249
|
+
}, Ba = { new_conversation: "گفتگوی جدید", tooltip_new_conversation: "شروع یک گفتگوی جدید", delete_conversation: "حذف", delete_confirm_title: "حذف گفتگو؟", delete_confirm_description: "آیا از حذف این گفتگو اطمینان دارید؟ این عمل قابل بازگشت نیست.", cancel: "انصراف", delete: "حذف", chat_deleted_success: "گفتگو با موفقیت حذف شد", logout: "خروج", new_chat: "گفتگوی جدید", rename_conversation: "تغییر نام", rename_success: "نام گفتگو با موفقیت تغییر کرد", rename_failed: "خطا در تغییر نام گفتگو", search_conversations: "جستجوی گفتگوها...", save: "ذخیره", no_conversations: "هنوز گفتگویی ندارید", loading_more: "در حال بارگذاری...", pinned_success: "گفتگو پین شد", unpinned_success: "گفتگو از حالت پین خارج شد", pin_failed: "خطا در پین کردن گفتگو", share_success: "لینک کپی شد", share_description: "لینک اشتراکگذاری در حافظه موقت کپی شد.", share_failed: "خطا در ایجاد لینک اشتراکگذاری", pin_conversation: "پین", unpin_conversation: "برداشتن پین", share_conversation: "اشتراکگذاری" }, Ha = { tools: "ابزارها", error: "خطا:", input_placeholder: "سوالتو اینجا بپرس...", insufficient_balance: "موجودی حساب شما کافی نیست. لطفا برای ادامه، حساب خود را شارژ کنید.", regenerate: "تولید مجدد", retry: "تلاش مجدد", copy: "کپی", like: "پسندیدم", dislike: "نپسندیدم", attach_file: "پیوست فایل", remove_file: "حذف فایل", used_sources: "از {{count}} منبع استفاده شد", welcome: { title: "سلام! چطور میتونم کمکت کنم؟", subtitle: "هر سوالی داری بپرس، تمام تلاشمو میکنم کمکت کنم.", suggestions: ["چه کارهایی میتونی انجام بدی؟", "یه چیز جالب بهم بگو", "کمکم کن یه ایمیل بنویسم", "یه مفهوم رو برام توضیح بده"] }, disclaimer: "هوش مصنوعی ممکن است اشتباه کند. اطلاعات مهم را بررسی کنید." }, qa = { pending: "در انتظار", running: "در حال اجرا", completed: "تکمیل شده", error: "خطا", parameters: "پارامترها", result: "نتیجه", view_error: "نمایش خطا", tool_error: "خطای ابزار", copied: "کپی شد!", copy_error: "کپی خطا" }, ja = { login_tab: "ورود", signup_tab: "ثبت نام", phone: "شماره تلفن", phone_placeholder: "شماره تلفن", password: "رمز عبور", name: "نام", name_placeholder: "نام", surname: "نام خانوادگی", surname_placeholder: "نام خانوادگی", logging_in: "در حال ورود...", signing_up: "در حال ثبت نام...", select_placeholder: "انتخاب کنید", login_button: "ورود", signup_button: "ثبت نام" }, Ga = { toggle: "تغییر تم", light: "تغییر به تم روشن", dark: "تغییر به تم تاریک", system: "تغییر به تم سیستم" }, Va = { select_placeholder: "انتخاب کنید", loading: "در حال بارگذاری...", retry: "تلاش مجدد", save: "ذخیره", saving: "در حال ذخیره...", cancel: "انصراف", delete: "حذف", edit: "ویرایش", search: "جستجو", search_placeholder: "جستجو...", no_data: "دادهای موجود نیست", loading_more: "در حال بارگذاری بیشتر...", confirm_delete: "آیا از حذف اطمینان دارید؟", error_loading: "خطا در بارگذاری دادهها", dashboard: { title: "پنل ادمین", logout: "خروج", tabs: { analytics: "تحلیل و آمار", chat_history: "گفتگوها", users: "کاربران", admins: "ادمینها", settings: "تنظیمات" } }, app_settings: { title: "تنظیمات سامانه", subtitle: "پیکربندی کلی ظاهر و رفتار سامانه را مدیریت کنید.", sections: { general: "اطلاعات پایه", chat: "تنظیمات گفتگو", user_billing: "کاربری و مالی" }, general: { app_name: "نام سامانه", admin_title: "عنوان پنل ادمین", language: "زبان پیشفرض", language_help: "زبانی که کاربر در اولین ورود مشاهده میکند (در صورت عدم تشخیص خودکار)." }, chat: { welcome_greeting: "پیام خوشآمدگویی", welcome_subtitle: "زیرعنوان خوشآمدگویی", disclaimer: "متن سلب مسئولیت", show_tool_details: "نمایش جزئیات فنی ابزارها (Tools)", show_tool_details_help: "برای نمایش جزئیات فنی و نحوه عملکرد ابزارهای هوش مصنوعی به کاربران، این گزینه را فعال کنید.", show_settings: "نمایش آیکون تنظیمات برای کاربران", show_settings_help: "نمایش چرخدنده تنظیمات در محیط چت برای شخصیسازی توسط کاربر.", composer_attachments: "فعالسازی پیوست فایل", composer_attachments_help: "اجازه به کاربران برای آپلود و پیوست فایل به پیامها.", thread_actions_feedback: "فعالسازی دکمههای بازخورد", thread_actions_feedback_help: "نمایش دکمههای پسندیدن/نپسندیدن در پاسخهای هوش مصنوعی.", thread_actions_retry: "فعالسازی دکمه تلاش مجدد", thread_actions_retry_help: "نمایش دکمه تلاش مجدد برای تولید دوباره آخرین پاسخ هوش مصنوعی.", history_enabled: "فعالسازی سایدبار تاریخچه", history_enabled_help: "نمایش منوی کناری شامل گفتگوهای قبلی.", history_show_delete: "اجازه حذف گفتگوها", history_show_rename: "اجازه تغییر نام گفتگوها", history_show_share: "اجازه اشتراکگذاری گفتگوها", history_show_pin: "اجازه پین کردن گفتگوها", sections_modes: "وضعیت نمایش تبهای تنظیمات", sections_modes_help: "کنترل نمایش یا غیرفعال بودن تبهای مختلف در بخش تنظیمات کاربر.", mode_editable: "فعال (قابل ویرایش)", mode_faded: "محو (فقط خواندنی)", mode_hidden: "مخفی (غیرفعال)", general_tab: "تب عمومی", profile_tab: "تب پروفایل", account_tab: "تب حساب کاربری", inner_fields_modes: "مشاهدهپذیری فیلدهای داخلی", inner_fields_modes_help: "وضعیت نمایش فیلدهای هر تب را بهصورت مجزا پیکربندی کنید." }, user_billing: { initial_balance_tokens: "توکن اولیه پیشفرض", initial_balance_requests: "تعداد درخواست اولیه پیشفرض", initial_balance_help: "این مقادیر بهصورت خودکار به کاربران جدید اختصاص داده میشوند، مگر اینکه هنگام ایجاد کاربر مقدار دیگری تعیین شود." }, save_success: "تنظیمات با موفقیت ذخیره شد", save_error: "خطا در ذخیرهسازی تنظیمات", save: "ذخیره تغییرات", translations_management: "مدیریت ترجمهها", editor_tips: "تمام تغییرات بهصورت خودکار در حالت محلی ذخیره میشوند. برای نهاییسازی، دکمه «ذخیره تغییرات» را بزنید.", sync_from_code: "همگامسازی از کد", reset_button: "بازنشانی به تنظیمات اولیه", reset_confirm_title: "بازنشانی تنظیمات؟", reset_confirm_description: "این عمل تمام فیلدها را به مقادیر پیشفرض در کد بازمیگرداند. تغییرات ذخیره نشده فعلی از بین خواهند رفت.", preview: "پیشنمایش", tips_label: "نکته" }, analytics: { title: "تحلیل و آمار", days: "{{count}} روز", total_users: "تعداد کاربران", total_threads: "تعداد گفتگوها", total_messages: "تعداد پیامها", total_token_usage: "مصرف کل توکن", threads_chart: "گفتگوها", messages_chart: "پیامها", token_usage_chart: "مصرف توکن", active_users: "کاربران فعال", conversations: "گفتگو", threads: "گفتگو", feedback: "نظرات کاربران", total_feedback: "کل نظرات", positive: "مثبت", negative: "منفی", loading_analytics: "در حال بارگذاری تحلیلها...", error_loading: "خطا در بارگذاری دادهها" }, chat_history: { title: "مدیریت تاریخچه گفتگوها", search_placeholder: "جستجو بر اساس نام، شماره تماس، عنوان گفتگو یا شناسه...", search_button: "جستجو", threads_list: "لیست گفتگوها", thread_count: "{{count}}", no_thread_title: "گفتگو بدون عنوان", messages: "پیامها", messages_for: "پیامهای گفتگو: {{title}}", select_thread: "یک گفتگو را برای مشاهده انتخاب کنید", no_threads: "هیچ گفتگویی یافت نشد", empty_thread: "این گفتگو خالی است", loading_threads: "در حال بارگذاری...", loading_messages: "در حال بارگذاری پیامها...", user_label: "کاربر", assistant_label: "دستیار هوشمند", input_tokens: "ورودی: {{value}}", output_tokens: "خروجی: {{value}}", total_tokens: "کل: {{value}}", all_feedbacks: "همه گفتگوها", liked_feedbacks: "پسندیده شده 👍", disliked_feedbacks: "نپسندیده شده 👎", any_feedback: "دارای بازخورد", output_available: "خروجی موجود است", running: "در حال اجرا...", unnamed_file: "فایل بدون نام", download_file: "دانلود فایل" }, users: { title: "مدیریت کاربران", user_count: "تعداد کاربران: {{count}}", add_user: "افزودن کاربر جدید", edit_user: "ویرایش کاربر", phone: "شماره تلفن", phone_placeholder: "۰۹۱۲۳۴۵۶۷۸۹", name: "نام", surname: "نام خانوادگی", initial_tokens: "تعداد توکن اولیه (اختیاری)", initial_requests: "تعداد درخواست اولیه (اختیاری)", balance: "موجودی", requests_label: "درخواستها", tokens_label: "توکنها", token_limit: "سقف توکن", request_limit: "سقف درخواست", tokens_usage: "میزان مصرف توکن", requests_usage: "میزان مصرف درخواست", actions: "عملیات", copy_token: "کپی توکن (با بروزرسانی خودکار)", token_copied: "توکن با موفقیت کپی شد", no_token: "توکنی برای این کاربر یافت نشد", recharge: "شارژ موجودی", full_charge: "شارژ کامل", update_balance: "بروزرسانی موجودی", update_balance_for: "بروزرسانی موجودی", token_count: "تعداد توکن", request_count: "تعداد درخواست", updating: "در حال بروزرسانی...", no_users: "هیچ کاربری یافت نشد.", confirm_delete_user: "آیا از حذف این کاربر اطمینان دارید؟", tokens_exceed_limit: "تعداد توکن نمیتواند بیشتر از سقف مجاز باشد", requests_exceed_limit: "تعداد درخواست نمیتواند بیشتر از سقف مجاز باشد", metadata: "متادیتا (JSON)", initial_balance: "موجودی اولیه", custom_fields: "فیلدهای اضافه", metadata_raw: "متادیتا (JSON خام)", advanced_usage: "استفاده پیشرفته", invalid_json: "فرمت JSON نامعتبر است" }, admins: { title: "مدیریت ادمینها", admin_count: "تعداد ادمینها: {{count}}", add_admin: "افزودن ادمین جدید", edit_admin: "ویرایش ادمین", username: "نام کاربری", name: "نام", password: "رمز عبور", password_edit: "رمز عبور جدید (خالی بگذارید تا تغییر نکند)", permissions: "دسترسیها", perm_chat_history: "تاریخچه گفتگوها", perm_admin_management: "مدیریت ادمینها", perm_user_management: "مدیریت کاربران", perm_analytics: "تحلیل و آمار", perm_settings: "تنظیمات", no_admins: "هیچ ادمینی یافت نشد.", confirm_delete_admin: "آیا از حذف این ادمین اطمینان دارید؟" }, errors: { access_denied_title: "عدم دسترسی", access_denied_message: "شما مجوزهای لازم برای دسترسی به این صفحه را ندارید. میتوانید با مدیر سیستم تماس بگیرید.", back_to_dashboard: "بازگشت به پیشخوان" }, login: { title: "پنل ادمین", setup_title: "راهاندازی اولیه", setup_description: "هنوز حساب ادمینی وجود ندارد. برای شروع، یک رمز عبور برای کاربر ادمین پیشفرض تنظیم کنید.", set_password: "تعیین رمز عبور", set_password_placeholder: "یک رمز عبور قوی انتخاب کنید", confirm_password: "تأیید رمز عبور", confirm_password_placeholder: "رمز عبور را دوباره وارد کنید", passwords_mismatch: "رمزهای عبور مطابقت ندارند", password_too_short: "رمز عبور باید حداقل ۴ کاراکتر باشد", create_admin: "ایجاد ادمین و ورود", setting_up: "در حال راهاندازی...", username: "نام کاربری", username_placeholder: "نام کاربری", password: "رمز عبور", password_placeholder: "••••••••", submit: "ورود به پنل", logging_in: "در حال ورود...", error: "خطا در ورود", copyright: "© ۲۰۲۶ پلتفرم چتبات هوشمند" } }, Wa = { title: "تنظیمات", sections: { profile: "پروفایل", general: "عمومی", account: "حساب کاربری" }, profile: { title: "اطلاعات پروفایل", subtitle: "اطلاعات شخصی خود را در زیر بروز کنید.", name: "نام", surname: "نام خانوادگی", phone: "شماره تلفن", password: "رمز عبور جدید", password_placeholder: "برای عدم تغییر خالی بگذارید", save: "ذخیره تغییرات", saving: "در حال ذخیره...", success: "پروفایل با موفقیت بروزرسانی شد", error: "خطا در بروزرسانی پروفایل", select_placeholder: "انتخاب کنید" }, general: { title: "تنظیمات عمومی", subtitle: "ظاهر و زبان برنامه را تنظیم کنید.", theme: "تم", language: "زبان", themes: { light: "روشن", dark: "تاریک", system: "سیستم" }, accent: "رنگ اصلی", radius: "میزان گردی لبهها", radius_levels: { sharp: "تیز", round: "گرد" }, languages: { en: "English", fa: "فارسی" } }, account: { title: "حساب و میزان مصرف", subtitle: "سهمیه مصرف و نشست خود را مدیریت کنید.", balance: "موجود فعلی", tokens: "توکنها", requests: "درخواستها", logout: "خروج از حساب", logout_confirm: "آیا از خروج اطمینان دارید؟", last_recharge: "آخرین بروزرسانی اعتبار در تاریخ" } }, Ya = { unauthorized: "دسترسی مجاز نیست. لطفاً دوباره وارد شوید.", invalid_credentials: "شماره تلفن یا رمز عبور اشتباه است.", phone_required: "شماره تلفن الزامی است.", password_required: "رمز عبور الزامی است.", name_surname_required: "نام و نام خانوادگی الزامی است.", phone_already_exists: "این شماره تلفن قبلاً ثبت شده است.", invalid_token: "نشست شما منقضی شده است. لطفاً دوباره وارد شوید.", user_not_found: "کاربر یافت نشد.", insufficient_balance: "موجودی کافی نیست. لطفاً حساب خود را شارژ کنید.", me_update_failed: "خطا در بروزرسانی اطلاعات پروفایل.", thread_not_found: "گفتگو یافت نشد.", access_denied: "شما اجازه انجام این عملیات را ندارید.", feedback_save_failed: "خطا در ثبت بازخورد.", thread_update_failed: "خطا در بروزرسانی گفتگو.", thread_delete_failed: "خطا در حذف گفتگو.", attachment_not_found: "فایل پیوست یافت نشد.", thread_share_failed: "خطا در اشتراکگذاری گفتگو.", admin_already_exists: "ادمین با این نام کاربری قبلاً ایجاد شده است.", admin_not_found: "ادمین یافت نشد.", cannot_delete_self: "شما نمیتوانید حساب مدیریت خود را حذف کنید.", admin_update_failed: "خطا در بروزرسانی اطلاعات ادمین.", internal_error: "یک خطای داخلی در سرور رخ داده است. لطفاً بعداً تلاش کنید.", validation_error: "دادههای ارسالی معتبر نیستند. لطفاً ورودیهای خود را بررسی کنید.", not_found: "منبع مورد نظر یافت نشد." }, Xa = {
|
|
6250
|
+
sidebar: Ba,
|
|
6251
|
+
chat: Ha,
|
|
6252
|
+
tools_ui: qa,
|
|
6253
|
+
login: ja,
|
|
6254
|
+
theme: Ga,
|
|
6255
|
+
admin: Va,
|
|
6256
|
+
settings: Wa,
|
|
6257
|
+
errors: Ya
|
|
6258
|
+
}, Ka = {
|
|
6259
|
+
en: Ua,
|
|
6260
|
+
fa: Xa
|
|
6261
|
+
}, Za = Fn.createInstance();
|
|
6262
|
+
Za.use(sn).use(un).init({
|
|
6263
|
+
resources: Ka,
|
|
6243
6264
|
fallbackLng: "en",
|
|
6244
6265
|
returnNull: !1,
|
|
6245
6266
|
returnEmptyString: !1,
|
|
@@ -6253,13 +6274,13 @@ Xa.use(rn).use(sn).init({
|
|
|
6253
6274
|
caches: ["localStorage"]
|
|
6254
6275
|
}
|
|
6255
6276
|
});
|
|
6256
|
-
function
|
|
6257
|
-
return /* @__PURE__ */
|
|
6277
|
+
function Ni({ className: e, type: t, ...n }) {
|
|
6278
|
+
return /* @__PURE__ */ i(
|
|
6258
6279
|
"input",
|
|
6259
6280
|
{
|
|
6260
6281
|
type: t,
|
|
6261
6282
|
"data-slot": "input",
|
|
6262
|
-
className:
|
|
6283
|
+
className: k(
|
|
6263
6284
|
"file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input flex h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
|
|
6264
6285
|
"focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
|
|
6265
6286
|
"aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
|
|
@@ -6269,27 +6290,27 @@ function Sl({ className: e, type: t, ...n }) {
|
|
|
6269
6290
|
}
|
|
6270
6291
|
);
|
|
6271
6292
|
}
|
|
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(
|
|
6293
|
+
const Ti = "data:image/svg+xml,%3csvg%20version='1.2'%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201280%201280'%20width='500'%20height='500'%3e%3cstyle%3e%20.s0%20{%20opacity:%201;fill:%20%2317535d%20}%20.s1%20{%20opacity:%20.99;fill:%20%23fab185%20}%20%3c/style%3e%3cg%20id='gentiq%20(7)'%3e%3cpath%20id='Path%201'%20fill-rule='evenodd'%20class='s0'%20d='m616.5%2012.22c19.25-0.09%2038.15%200.29%2042%200.84%203.85%200.54%2011.73%201.43%2017.5%201.98%205.77%200.55%2016.35%201.85%2023.5%202.91%207.15%201.05%2016.6%202.62%2021%203.49%204.4%200.88%209.8%202.02%2012%202.53%202.2%200.52%207.15%201.65%2011%202.5%203.85%200.86%208.58%202%2010.5%202.54%201.92%200.54%207.77%202.15%2013%203.6%205.23%201.44%2016.02%204.77%2024%207.4%207.98%202.63%2017.65%205.99%2021.5%207.48%203.85%201.48%2011.95%204.74%2018%207.24%206.05%202.5%2014.6%206.16%2019%208.14%204.4%201.98%2013.4%206.35%2020%209.72%206.6%203.36%2014.48%207.47%2017.5%209.11%203.02%201.65%2011.35%206.5%2018.5%2010.77%207.15%204.27%2018.17%2011.2%2024.49%2015.4%206.32%204.2%2012.17%208.16%2013%208.82%200.83%200.65%207.36%205.55%2014.51%2010.88%207.15%205.33%2013.23%209.97%2013.5%2010.31%200.27%200.34%202.73%202.42%205.45%204.62%202.72%202.2%205.43%204.45%206.02%205%200.59%200.55%204.89%204.35%209.55%208.45%204.67%204.1%2015.04%2014%2023.05%2022%208.02%208%2018.22%2018.6%2022.67%2023.55%204.46%204.95%2011.4%2013.07%2015.43%2018.04%204.03%204.97%2011.43%2014.42%2016.43%2021%205.01%206.58%2012.65%2017.36%2016.97%2023.96%204.33%206.6%208.56%2013.15%209.4%2014.57%200.84%201.41%204.08%206.81%207.19%2012%203.11%205.18%207.29%2012.36%209.29%2015.93%202%203.57%207.6%2014.6%2012.44%2024.5%204.84%209.9%2010.51%2022.05%2012.6%2027%202.08%204.95%204.36%2010.35%205.07%2012%200.71%201.65%202.26%205.48%203.44%208.5%201.19%203.02%204.44%2012.25%207.22%2020.5%202.79%208.25%205.42%2016.35%205.84%2018%200.43%201.65%201.72%206.15%202.87%2010%201.15%203.85%203.86%2014.43%206.03%2023.5%202.16%209.07%204.38%2019.2%204.94%2022.5%200.56%203.3%201.5%208.7%202.1%2012%200.59%203.3%201.68%2010.05%202.43%2015%200.74%204.95%201.85%2013.27%202.47%2018.5%200.61%205.23%201.56%2018.95%202.11%2030.5%200.55%2011.55%200.99%2034.61%200.99%2051.25%200%2019.16-0.37%2030.43-1%2030.75-0.55%200.27-1%202.64-1.01%205.25%200%202.61-0.43%207.45-0.96%2010.75-0.52%203.3-1.7%2011.17-2.62%2017.5-0.92%206.33-2.02%2013.52-2.44%2016-0.43%202.48-1.29%207.42-1.93%2011-0.63%203.58-2.7%2013.02-4.6%2021-1.9%207.98-3.93%2016.3-4.51%2018.5-0.58%202.2-2.41%208.5-4.05%2014-1.64%205.5-4.8%2015.4-7.01%2022-2.21%206.6-4.39%2012.9-4.85%2014-0.46%201.1-2.22%205.71-3.92%2010.25-1.71%204.54-3.44%208.24-3.85%208.22-0.41-0.02-2.55-1.5-4.75-3.29-2.2-1.8-6.25-4.85-9-6.79-2.75-1.94-9.95-6.45-16-10.03-6.05-3.58-14.83-8.34-19.5-10.57-4.67-2.23-10.64-5.01-13.25-6.18-2.61-1.16-8.91-3.51-14-5.21-5.09-1.71-10.71-3.51-12.5-4-1.79-0.5-4.94-1.38-7-1.96-2.06-0.58-6.9-1.73-10.75-2.54-3.85-0.82-9.47-1.94-12.5-2.48-3.02-0.54-10.9-1.64-17.5-2.44-6.6-0.81-18.52-1.46-26.5-1.45-7.98%200-20.13%200.68-27%201.5-6.88%200.81-13.85%201.75-15.5%202.08-1.65%200.32-7.27%201.43-12.5%202.47-5.23%201.04-12.65%202.83-16.5%203.98-3.85%201.16-9.02%202.67-11.5%203.38-2.48%200.7-9.45%203.31-15.5%205.8-6.05%202.49-14.6%206.3-19%208.46-4.4%202.17-12.05%206.39-17%209.38-4.95%203-13.5%208.66-19%2012.58-5.5%203.92-12.7%209.48-16%2012.36-3.3%202.88-8.88%207.99-12.41%2011.36-3.52%203.36-9.6%209.72-13.5%2014.12-3.9%204.4-7.32%208.23-7.59%208.5-0.27%200.27-2.09%202.52-4.04%205-1.94%202.48-4.39%205.85-5.43%207.5-1.04%201.65-2.38%203.47-2.96%204.05-0.59%200.58-3.12%204.4-5.63%208.5-2.5%204.1-5.89%209.7-7.53%2012.45-1.63%202.75-4.16%207.48-5.61%2010.5-1.45%203.02-4.03%208.42-5.73%2012-1.71%203.58-3.1%206.95-3.09%207.5%200%200.55-0.69%202.35-1.54%204-0.85%201.65-2.83%206.83-4.39%2011.5-1.56%204.67-4.24%2014.12-5.95%2021-1.71%206.87-4.01%2019.25-5.1%2027.5-1.42%2010.7-1.99%2020.73-1.99%2035%200%2014.2%200.58%2024.35%201.98%2035%201.09%208.25%203.53%2021.08%205.43%2028.5%201.9%207.42%204.63%2016.87%206.07%2021%201.44%204.12%203.03%208.4%203.54%209.5%200.5%201.1%201.87%204.47%203.03%207.5%201.16%203.03%204.23%209.78%206.82%2015%202.59%205.22%205.48%2010.62%206.42%2012%200.94%201.37%201.73%202.72%201.74%203%200.01%200.28-1.91%201.07-4.26%201.77-2.35%200.7-8.55%202.17-13.78%203.28-5.23%201.11-11.98%202.47-15%203.03-3.02%200.55-7.75%201.43-10.5%201.95-2.75%200.52-10.63%201.65-17.5%202.53-6.88%200.87-16.33%202-21%202.5-4.67%200.5-17.27%201.4-28%202.01-11.32%200.65-29.56%200.85-43.5%200.48-13.2-0.35-27.83-1.06-32.5-1.57-4.67-0.52-14.8-1.66-22.5-2.54-7.7-0.88-17.6-2.21-22-2.95-4.4-0.75-14.98-2.78-23.5-4.5-8.52-1.73-18.88-4.05-23-5.15-4.13-1.1-10.2-2.68-13.5-3.51-3.3-0.83-10.27-2.86-15.5-4.51-5.23-1.65-12.88-4.1-17-5.45-4.13-1.35-8.4-2.85-9.5-3.33-1.1-0.47-6.5-2.54-12-4.6-5.5-2.05-11.8-4.52-14-5.49-2.2-0.97-8.73-3.88-14.5-6.47-5.77-2.59-15.45-7.18-21.5-10.21-6.05-3.02-14.38-7.3-18.5-9.51-4.13-2.2-7.95-4.36-8.5-4.78-0.55-0.42-3.25-2.02-6-3.54-2.75-1.52-12.65-7.69-22-13.71-9.35-6.02-23.75-16.02-32-22.22-8.25-6.21-16.78-12.8-18.96-14.65-2.18-1.85-8.68-7.41-14.44-12.36-5.77-4.95-17.28-15.75-25.58-24-8.3-8.25-17.33-17.48-20.07-20.5-2.74-3.02-7.71-8.65-11.05-12.5-3.34-3.85-9.97-11.95-14.75-18-4.77-6.05-9.02-11.45-9.44-12-0.42-0.55-3.51-4.83-6.87-9.5-3.36-4.67-8.78-12.55-12.05-17.5-3.26-4.95-8.45-13.05-11.52-18-3.07-4.95-8.47-14.17-11.99-20.5-3.53-6.33-9.38-17.58-13-25-3.63-7.42-7.59-15.75-8.8-18.5-1.21-2.75-3.22-7.25-4.45-10-1.24-2.75-2.6-6.13-3.02-7.5-0.43-1.38-1.6-4.3-2.61-6.5-1.01-2.2-3.68-9.17-5.94-15.5-2.27-6.33-4.71-13.3-5.43-15.5-0.73-2.2-2.52-8.05-3.99-13-1.46-4.95-3.06-10.13-3.55-11.5-0.49-1.38-2.5-9.25-4.47-17.5-1.98-8.25-4.02-16.8-4.54-19-0.52-2.2-1.42-6.7-2-10-0.58-3.3-1.67-9.6-2.42-14-0.75-4.4-1.83-11.6-2.41-16-0.58-4.4-1.54-12.5-2.13-18-0.59-5.5-1.51-10.11-2.05-10.25-0.6-0.16-0.97-11.89-0.96-31%200-16.91%200.44-39.3%200.97-49.75%200.53-10.45%201.45-23.73%202.03-29.5%200.59-5.77%201.55-14.1%202.13-18.5%200.58-4.4%201.67-11.6%202.42-16%200.75-4.4%201.84-10.7%202.42-14%200.58-3.3%201.48-7.8%202-10%200.52-2.2%202.56-10.75%204.54-19%201.97-8.25%203.98-16.13%204.47-17.5%200.48-1.38%201.84-5.88%203.02-10%201.18-4.13%204.4-14.02%207.15-22%202.75-7.98%205.36-15.4%205.81-16.5%200.44-1.1%201.97-4.7%203.39-8%201.43-3.3%202.6-6.34%202.61-6.75%200.02-0.41%201.2-3.34%202.64-6.5%201.43-3.16%203.3-7.32%204.15-9.25%200.86-1.93%204.59-9.8%208.3-17.5%203.71-7.7%209.76-19.4%2013.45-26%203.68-6.6%209.22-16.05%2012.3-21%203.08-4.95%208.58-13.5%2012.22-19%203.64-5.5%207.72-11.57%209.05-13.5%201.34-1.93%204.43-6.2%206.87-9.5%202.43-3.3%207.79-10.28%2011.91-15.5%204.11-5.22%2010.67-13.1%2014.56-17.5%203.89-4.4%209.08-10.25%2011.53-13%202.44-2.75%2010.77-11.3%2018.5-19.01%207.73-7.7%2019.23-18.52%2025.55-24.04%206.32-5.51%2015.1-12.94%2019.5-16.49%204.4-3.56%2010.02-7.96%2012.5-9.77%202.48-1.82%207.43-5.45%2011-8.06%203.57-2.62%209.43-6.72%2013-9.11%203.57-2.39%208.3-5.57%2010.5-7.06%202.2-1.49%209.85-6.21%2017-10.48%207.15-4.28%2015.48-9.13%2018.5-10.78%203.02-1.66%2010.92-5.75%2017.53-9.1%206.62-3.36%2015.17-7.53%2019-9.27%203.84-1.75%2010.12-4.52%2013.97-6.17%203.85-1.66%2012.4-5.11%2019-7.67%206.6-2.56%2018.64-6.87%2026.75-9.58%208.11-2.7%2016.44-5.33%2018.5-5.85%202.06-0.52%207.12-1.9%2011.25-3.06%204.12-1.17%2010.43-2.8%2014-3.63%203.57-0.84%208.07-1.88%2010-2.32%201.93-0.45%207.1-1.54%2011.5-2.42%204.4-0.89%2010.25-2.05%2013-2.58%202.75-0.53%207.25-1.24%2010-1.57%202.75-0.34%207.25-1.02%2010-1.52%202.75-0.5%2010.4-1.45%2017-2.1%206.6-0.65%2016.95-1.48%2023-1.84%206.05-0.36%2026.75-0.72%2046-0.8zm-42.29%20288.46c-6.99%200.78-16.76%202.31-21.71%203.4-4.95%201.09-11.48%202.67-14.5%203.51-3.02%200.84-7.98%202.24-11%203.12-3.02%200.88-10.45%203.5-16.5%205.83-6.05%202.33-14.82%206-19.5%208.16-4.68%202.15-12.77%206.32-18%209.26-5.23%202.94-13.32%207.87-18%2010.95-4.68%203.09-11.2%207.62-14.5%2010.08-3.3%202.45-8.93%206.92-12.5%209.92-3.57%203.01-12.15%2011.12-19.05%2018.03-6.9%206.91-15.61%2016.38-19.34%2021.06-3.73%204.68-10.49%2014.13-15.01%2021-4.53%206.88-9.98%2015.65-12.11%2019.5-2.13%203.85-5.64%2010.6-7.79%2015-2.15%204.4-5.5%2011.82-7.43%2016.5-1.94%204.68-4.38%2011.2-5.43%2014.5-1.06%203.3-3.22%2010.5-4.81%2016-1.59%205.5-3.42%2012.7-4.06%2016-0.64%203.3-1.58%208.25-2.08%2011-0.5%202.75-1.58%209.95-2.39%2016-0.95%207.05-1.49%2019.36-1.49%2034.25-0.01%2012.79%200.45%2026.51%201.02%2030.5%200.56%203.99%201.5%2010.17%202.07%2013.75%200.58%203.58%201.73%209.88%202.57%2014%200.84%204.13%202.88%2012.23%204.53%2018%201.65%205.77%204.12%2013.88%205.5%2018%201.37%204.13%202.84%207.95%203.27%208.5%200.42%200.55%201.68%203.48%202.79%206.5%201.11%203.02%203.79%209.1%205.94%2013.5%202.15%204.4%205.66%2011.15%207.78%2015%202.13%203.85%207.59%2012.63%2012.14%2019.5%204.54%206.88%2011.3%2016.33%2015.02%2021%203.73%204.67%2012.09%2013.9%2018.58%2020.5%206.5%206.6%2014.62%2014.29%2018.05%2017.09%203.43%202.8%2010.05%207.98%2014.73%2011.51%204.68%203.53%2012.1%208.74%2016.5%2011.58%204.4%202.83%2010.02%206.3%2012.5%207.7%202.48%201.4%209.45%204.99%2015.5%207.97%206.05%202.98%2013.25%206.42%2016%207.65%202.75%201.23%2012.2%204.61%2021%207.5%208.8%202.9%2021.62%206.44%2028.5%207.89%206.87%201.44%2014.52%203.04%2017%203.55%202.48%200.51%2013.27%201.48%2024%202.15%2015.34%200.97%2023.66%200.97%2039%200.01%2010.73-0.67%2021.3-1.6%2023.5-2.08%202.2-0.47%206.7-1.37%2010-1.99%203.3-0.63%208.92-1.82%2012.5-2.66%203.58-0.84%2010.1-2.58%2014.5-3.87%204.4-1.29%2012.27-3.89%2017.5-5.78%205.23-1.89%2011.51-4.29%2013.96-5.33%202.46-1.04%2010.33-4.84%2017.5-8.44%207.17-3.61%2018.21-9.87%2024.54-13.92%206.33-4.04%2012.68-8.3%2014.12-9.44%201.45-1.15%203.87-2.99%205.39-4.09%201.53-1.1%203.56-2.67%204.52-3.5%200.97-0.83%204.51-3.75%207.88-6.5%203.37-2.75%2011.85-10.86%2018.86-18.02%207-7.16%2016.15-17.51%2020.34-23%204.19-5.49%2010.3-14.03%2013.6-18.98%203.29-4.95%207.48-11.7%209.3-15%201.83-3.3%205.43-10.27%208.02-15.5%202.58-5.23%205.41-11.08%206.28-13%200.88-1.92%202.57-5.98%203.75-9%201.18-3.02%203.02-8.2%204.08-11.5%201.07-3.3%203.22-10.5%204.78-16%201.56-5.5%203.34-12.02%203.96-14.5%200.61-2.48%201.6-7.42%202.18-11%200.59-3.58%201.51-9.65%202.04-13.5%200.54-3.85%201.34-13.98%201.79-22.5%200.44-8.52%200.44-22.25%200-30.5-0.45-8.25-1.25-18.15-1.79-22-0.53-3.85-1.46-9.92-2.05-13.5-0.59-3.58-2.01-10.33-3.14-15-1.14-4.67-2.44-9.62-2.89-11-0.45-1.37-1.84-5.87-3.08-10-1.24-4.12-3.56-10.87-5.15-15-1.59-4.12-3.6-9.07-4.47-11-0.87-1.93-3.71-7.77-6.31-13-2.59-5.23-5.55-11.07-6.56-13-1.01-1.93-3.99-6.87-6.62-11-2.63-4.12-7.45-11.32-10.7-16-3.25-4.68-9.5-12.77-13.89-18-4.39-5.23-13.1-14.45-19.36-20.5-6.26-6.05-15.21-14.06-19.88-17.8-4.68-3.74-10.92-8.47-13.88-10.5-2.96-2.04-9.26-6.13-14-9.1-4.74-2.97-13.12-7.77-18.62-10.66-5.5-2.89-14.5-7.13-20-9.42-5.5-2.28-10.9-4.56-12-5.06-1.1-0.49-6.05-2.24-11-3.88-4.95-1.65-11.02-3.49-13.5-4.09-2.48-0.6-9.23-2.16-15-3.47-5.77-1.3-15.9-3.11-22.5-4.02-6.81-0.93-20.87-1.79-32.5-1.97-11.27-0.17-22.66-0.08-25.29%200.21-2.63%200.29-10.51%201.16-17.5%201.94z'/%3e%3cpath%20id='Path%202'%20class='s1'%20d='m953.5%20831.1c-2.75%200.49-7.7%201.38-11%201.99-3.3%200.61-8.48%201.77-11.5%202.57-3.02%200.81-9.33%202.84-14%204.52-4.67%201.68-13%205.31-18.5%208.06-5.5%202.75-12.48%206.61-15.5%208.58-3.02%201.97-8.2%205.61-11.5%208.08-3.3%202.47-9.33%207.44-13.39%2011.05-4.07%203.6-10.64%2010.38-14.61%2015.05-3.96%204.67-10.02%2012.77-13.46%2018-3.44%205.22-7.84%2012.65-9.78%2016.5-1.94%203.85-5.1%2011.05-7.02%2016-1.92%204.95-4.35%2011.92-5.39%2015.5-1.04%203.58-2.57%209.65-3.39%2013.5-0.83%203.85-2%2013.3-2.61%2021-0.81%2010.28-0.8%2017.79%200.02%2028.25%200.62%207.84%202.22%2018.86%203.55%2024.5%201.33%205.64%203.42%2013.17%204.65%2016.75%201.22%203.58%204%2010.55%206.17%2015.5%202.17%204.95%206.32%2013.05%209.22%2018%202.91%204.95%207.71%2012.22%2010.66%2016.15%202.96%203.94%208.08%2010.19%2011.38%2013.89%203.3%203.7%2010.05%2010.13%2015%2014.28%204.95%204.15%2013.05%2010.21%2018%2013.47%204.95%203.25%2011.92%207.4%2015.5%209.2%203.58%201.81%2010.55%204.92%2015.5%206.91%204.95%201.99%2012.83%204.69%2017.5%206%204.67%201.3%209.85%202.69%2011.5%203.07%201.65%200.39%206.83%201.33%2011.5%202.1%205.11%200.84%2015.89%201.4%2027%201.4%2010.17%200%2020.08-0.41%2022-0.92%201.92-0.5%206.2-1.45%209.5-2.1%203.3-0.65%2010.27-2.42%2015.5-3.93%205.22-1.5%2013.55-4.41%2018.5-6.46%204.95-2.05%2013.05-5.96%2018-8.68%204.95-2.73%2013.5-8.3%2019-12.39%205.5-4.08%2013.97-11.38%2018.82-16.21%204.86-4.83%2012.1-13.06%2016.09-18.28%203.99-5.22%209.09-12.65%2011.32-16.5%202.23-3.85%205.93-10.83%208.21-15.5%202.28-4.67%205.68-13.22%207.55-19%201.87-5.78%203.86-12.3%204.41-14.5%200.55-2.2%201.7-8.39%202.55-13.75%200.98-6.14%201.55-16.31%201.54-27.5%200-12.91-0.53-20.88-1.94-29.25-1.06-6.33-3.1-15.33-4.52-20-1.43-4.67-3.03-9.29-3.56-10.25-0.53-0.96-0.97-2.2-0.97-2.75%200-0.55-0.86-2.91-1.92-5.25-1.06-2.34-2.98-6.5-4.28-9.25-1.29-2.75-4.32-8.38-6.72-12.5-2.41-4.13-5.99-9.75-7.98-12.5-1.98-2.75-4.5-6.1-5.6-7.45-1.1-1.35-4.03-4.71-6.5-7.48-2.47-2.76-5.63-6.17-7-7.56-1.38-1.39-5.65-5.28-9.5-8.64-3.85-3.36-11.5-9.16-17-12.89-5.5-3.73-14.3-8.85-19.55-11.38-5.26-2.53-10.88-5.15-12.5-5.82-1.62-0.68-6.33-2.39-10.45-3.8-4.13-1.42-10.65-3.26-14.5-4.09-3.85-0.84-10.83-2.16-15.5-2.94-5.29-0.88-15.11-1.38-26-1.32-9.63%200.05-19.75%200.49-22.5%200.97z'/%3e%3c/g%3e%3c/svg%3e", Ja = Pe(
|
|
6273
6294
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
|
|
6274
|
-
),
|
|
6295
|
+
), Qa = Ce.forwardRef(({ className: e, ...t }, n) => /* @__PURE__ */ i(
|
|
6275
6296
|
"label",
|
|
6276
6297
|
{
|
|
6277
6298
|
ref: n,
|
|
6278
|
-
className:
|
|
6299
|
+
className: k(Ja(), e),
|
|
6279
6300
|
...t
|
|
6280
6301
|
}
|
|
6281
6302
|
));
|
|
6282
|
-
|
|
6283
|
-
function
|
|
6284
|
-
return /* @__PURE__ */
|
|
6303
|
+
Qa.displayName = "Label";
|
|
6304
|
+
function Ci({ ...e }) {
|
|
6305
|
+
return /* @__PURE__ */ i(L.Root, { "data-slot": "select", ...e });
|
|
6285
6306
|
}
|
|
6286
|
-
function
|
|
6287
|
-
return /* @__PURE__ */
|
|
6307
|
+
function Ai({ ...e }) {
|
|
6308
|
+
return /* @__PURE__ */ i(L.Group, { "data-slot": "select-group", ...e });
|
|
6288
6309
|
}
|
|
6289
|
-
function
|
|
6290
|
-
return /* @__PURE__ */
|
|
6310
|
+
function Ii({ ...e }) {
|
|
6311
|
+
return /* @__PURE__ */ i(L.Value, { "data-slot": "select-value", ...e });
|
|
6291
6312
|
}
|
|
6292
|
-
function
|
|
6313
|
+
function Ri({
|
|
6293
6314
|
className: e,
|
|
6294
6315
|
size: t = "default",
|
|
6295
6316
|
children: n,
|
|
@@ -6300,29 +6321,29 @@ function Al({
|
|
|
6300
6321
|
{
|
|
6301
6322
|
"data-slot": "select-trigger",
|
|
6302
6323
|
"data-size": t,
|
|
6303
|
-
className:
|
|
6324
|
+
className: k(
|
|
6304
6325
|
"border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
6305
6326
|
e
|
|
6306
6327
|
),
|
|
6307
6328
|
...o,
|
|
6308
6329
|
children: [
|
|
6309
6330
|
n,
|
|
6310
|
-
/* @__PURE__ */
|
|
6331
|
+
/* @__PURE__ */ i(L.Icon, { asChild: !0, children: /* @__PURE__ */ i(ie, { className: "size-4 opacity-50" }) })
|
|
6311
6332
|
]
|
|
6312
6333
|
}
|
|
6313
6334
|
);
|
|
6314
6335
|
}
|
|
6315
|
-
function
|
|
6336
|
+
function Oi({
|
|
6316
6337
|
className: e,
|
|
6317
6338
|
children: t,
|
|
6318
6339
|
position: n = "popper",
|
|
6319
6340
|
...o
|
|
6320
6341
|
}) {
|
|
6321
|
-
return /* @__PURE__ */
|
|
6342
|
+
return /* @__PURE__ */ i(L.Portal, { children: /* @__PURE__ */ w(
|
|
6322
6343
|
L.Content,
|
|
6323
6344
|
{
|
|
6324
6345
|
"data-slot": "select-content",
|
|
6325
|
-
className:
|
|
6346
|
+
className: k(
|
|
6326
6347
|
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
|
|
6327
6348
|
n === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
|
|
6328
6349
|
e
|
|
@@ -6330,85 +6351,85 @@ function Il({
|
|
|
6330
6351
|
position: n,
|
|
6331
6352
|
...o,
|
|
6332
6353
|
children: [
|
|
6333
|
-
/* @__PURE__ */
|
|
6334
|
-
/* @__PURE__ */
|
|
6354
|
+
/* @__PURE__ */ i(ei, {}),
|
|
6355
|
+
/* @__PURE__ */ i(
|
|
6335
6356
|
L.Viewport,
|
|
6336
6357
|
{
|
|
6337
|
-
className:
|
|
6358
|
+
className: k(
|
|
6338
6359
|
"p-1",
|
|
6339
6360
|
n === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"
|
|
6340
6361
|
),
|
|
6341
6362
|
children: t
|
|
6342
6363
|
}
|
|
6343
6364
|
),
|
|
6344
|
-
/* @__PURE__ */
|
|
6365
|
+
/* @__PURE__ */ i(ti, {})
|
|
6345
6366
|
]
|
|
6346
6367
|
}
|
|
6347
6368
|
) });
|
|
6348
6369
|
}
|
|
6349
|
-
function
|
|
6350
|
-
return /* @__PURE__ */
|
|
6370
|
+
function Fi({ className: e, ...t }) {
|
|
6371
|
+
return /* @__PURE__ */ i(
|
|
6351
6372
|
L.Label,
|
|
6352
6373
|
{
|
|
6353
6374
|
"data-slot": "select-label",
|
|
6354
|
-
className:
|
|
6375
|
+
className: k("text-muted-foreground px-2 py-1.5 text-xs", e),
|
|
6355
6376
|
...t
|
|
6356
6377
|
}
|
|
6357
6378
|
);
|
|
6358
6379
|
}
|
|
6359
|
-
function
|
|
6380
|
+
function Li({ className: e, children: t, ...n }) {
|
|
6360
6381
|
return /* @__PURE__ */ w(
|
|
6361
6382
|
L.Item,
|
|
6362
6383
|
{
|
|
6363
6384
|
"data-slot": "select-item",
|
|
6364
|
-
className:
|
|
6385
|
+
className: k(
|
|
6365
6386
|
"focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pe-8 ps-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2 text-start",
|
|
6366
6387
|
e
|
|
6367
6388
|
),
|
|
6368
6389
|
...n,
|
|
6369
6390
|
children: [
|
|
6370
|
-
/* @__PURE__ */
|
|
6371
|
-
/* @__PURE__ */
|
|
6391
|
+
/* @__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" }) }) }),
|
|
6392
|
+
/* @__PURE__ */ i(L.ItemText, { children: t })
|
|
6372
6393
|
]
|
|
6373
6394
|
}
|
|
6374
6395
|
);
|
|
6375
6396
|
}
|
|
6376
|
-
function
|
|
6377
|
-
return /* @__PURE__ */
|
|
6397
|
+
function Di({ className: e, ...t }) {
|
|
6398
|
+
return /* @__PURE__ */ i(
|
|
6378
6399
|
L.Separator,
|
|
6379
6400
|
{
|
|
6380
6401
|
"data-slot": "select-separator",
|
|
6381
|
-
className:
|
|
6402
|
+
className: k("bg-border pointer-events-none -mx-1 my-1 h-px", e),
|
|
6382
6403
|
...t
|
|
6383
6404
|
}
|
|
6384
6405
|
);
|
|
6385
6406
|
}
|
|
6386
|
-
function
|
|
6387
|
-
return /* @__PURE__ */
|
|
6407
|
+
function ei({ className: e, ...t }) {
|
|
6408
|
+
return /* @__PURE__ */ i(
|
|
6388
6409
|
L.ScrollUpButton,
|
|
6389
6410
|
{
|
|
6390
6411
|
"data-slot": "select-scroll-up-button",
|
|
6391
|
-
className:
|
|
6412
|
+
className: k("flex cursor-default items-center justify-center py-1", e),
|
|
6392
6413
|
...t,
|
|
6393
|
-
children: /* @__PURE__ */
|
|
6414
|
+
children: /* @__PURE__ */ i(An, { className: "size-4" })
|
|
6394
6415
|
}
|
|
6395
6416
|
);
|
|
6396
6417
|
}
|
|
6397
|
-
function
|
|
6418
|
+
function ti({
|
|
6398
6419
|
className: e,
|
|
6399
6420
|
...t
|
|
6400
6421
|
}) {
|
|
6401
|
-
return /* @__PURE__ */
|
|
6422
|
+
return /* @__PURE__ */ i(
|
|
6402
6423
|
L.ScrollDownButton,
|
|
6403
6424
|
{
|
|
6404
6425
|
"data-slot": "select-scroll-down-button",
|
|
6405
|
-
className:
|
|
6426
|
+
className: k("flex cursor-default items-center justify-center py-1", e),
|
|
6406
6427
|
...t,
|
|
6407
|
-
children: /* @__PURE__ */
|
|
6428
|
+
children: /* @__PURE__ */ i(ie, { className: "size-4" })
|
|
6408
6429
|
}
|
|
6409
6430
|
);
|
|
6410
6431
|
}
|
|
6411
|
-
function
|
|
6432
|
+
function Pi(e, t) {
|
|
6412
6433
|
if (!e) return !0;
|
|
6413
6434
|
const { field: n, operator: o = "equals", value: r } = e, a = t[n];
|
|
6414
6435
|
switch (o) {
|
|
@@ -6424,23 +6445,23 @@ function Ll(e, t) {
|
|
|
6424
6445
|
return !0;
|
|
6425
6446
|
}
|
|
6426
6447
|
}
|
|
6427
|
-
function
|
|
6428
|
-
return /* @__PURE__ */
|
|
6448
|
+
function Mi({ ...e }) {
|
|
6449
|
+
return /* @__PURE__ */ i(re.Root, { "data-slot": "dropdown-menu", ...e });
|
|
6429
6450
|
}
|
|
6430
|
-
function
|
|
6431
|
-
return /* @__PURE__ */
|
|
6451
|
+
function zi({ ...e }) {
|
|
6452
|
+
return /* @__PURE__ */ i(re.Trigger, { "data-slot": "dropdown-menu-trigger", ...e });
|
|
6432
6453
|
}
|
|
6433
|
-
function
|
|
6454
|
+
function $i({
|
|
6434
6455
|
className: e,
|
|
6435
6456
|
sideOffset: t = 4,
|
|
6436
6457
|
...n
|
|
6437
6458
|
}) {
|
|
6438
|
-
return /* @__PURE__ */
|
|
6439
|
-
|
|
6459
|
+
return /* @__PURE__ */ i(re.Portal, { children: /* @__PURE__ */ i(
|
|
6460
|
+
re.Content,
|
|
6440
6461
|
{
|
|
6441
6462
|
"data-slot": "dropdown-menu-content",
|
|
6442
6463
|
sideOffset: t,
|
|
6443
|
-
className:
|
|
6464
|
+
className: k(
|
|
6444
6465
|
"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
|
|
6445
6466
|
e
|
|
6446
6467
|
),
|
|
@@ -6448,19 +6469,19 @@ function Ml({
|
|
|
6448
6469
|
}
|
|
6449
6470
|
) });
|
|
6450
6471
|
}
|
|
6451
|
-
function
|
|
6472
|
+
function Ui({
|
|
6452
6473
|
className: e,
|
|
6453
6474
|
inset: t,
|
|
6454
6475
|
variant: n = "default",
|
|
6455
6476
|
...o
|
|
6456
6477
|
}) {
|
|
6457
|
-
return /* @__PURE__ */
|
|
6458
|
-
|
|
6478
|
+
return /* @__PURE__ */ i(
|
|
6479
|
+
re.Item,
|
|
6459
6480
|
{
|
|
6460
6481
|
"data-slot": "dropdown-menu-item",
|
|
6461
6482
|
"data-inset": t,
|
|
6462
6483
|
"data-variant": n,
|
|
6463
|
-
className:
|
|
6484
|
+
className: k(
|
|
6464
6485
|
"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
6465
6486
|
e
|
|
6466
6487
|
),
|
|
@@ -6468,82 +6489,83 @@ function zl({
|
|
|
6468
6489
|
}
|
|
6469
6490
|
);
|
|
6470
6491
|
}
|
|
6471
|
-
function
|
|
6472
|
-
return /* @__PURE__ */
|
|
6473
|
-
|
|
6492
|
+
function Bi({ className: e, ...t }) {
|
|
6493
|
+
return /* @__PURE__ */ i(
|
|
6494
|
+
Ye.Root,
|
|
6474
6495
|
{
|
|
6475
6496
|
"data-slot": "checkbox",
|
|
6476
|
-
className:
|
|
6497
|
+
className: k(
|
|
6477
6498
|
"peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
|
|
6478
6499
|
e
|
|
6479
6500
|
),
|
|
6480
6501
|
...t,
|
|
6481
|
-
children: /* @__PURE__ */
|
|
6482
|
-
|
|
6502
|
+
children: /* @__PURE__ */ i(
|
|
6503
|
+
Ye.Indicator,
|
|
6483
6504
|
{
|
|
6484
6505
|
"data-slot": "checkbox-indicator",
|
|
6485
6506
|
className: "grid place-content-center text-current transition-none",
|
|
6486
|
-
children: /* @__PURE__ */
|
|
6507
|
+
children: /* @__PURE__ */ i(De, { className: "size-3.5" })
|
|
6487
6508
|
}
|
|
6488
6509
|
)
|
|
6489
6510
|
}
|
|
6490
6511
|
);
|
|
6491
6512
|
}
|
|
6492
6513
|
export {
|
|
6493
|
-
|
|
6494
|
-
|
|
6514
|
+
so as $,
|
|
6515
|
+
Ui as A,
|
|
6495
6516
|
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
|
-
|
|
6517
|
+
_i as C,
|
|
6518
|
+
Tr as D,
|
|
6519
|
+
Or as E,
|
|
6520
|
+
Fr as F,
|
|
6521
|
+
Xe as G,
|
|
6522
|
+
xi as H,
|
|
6523
|
+
Ni as I,
|
|
6524
|
+
wi as J,
|
|
6525
|
+
Bi as K,
|
|
6526
|
+
Qa as L,
|
|
6527
|
+
fe as M,
|
|
6528
|
+
ma as N,
|
|
6529
|
+
Zn as O,
|
|
6530
|
+
Un as P,
|
|
6531
|
+
io as Q,
|
|
6532
|
+
Sr as R,
|
|
6533
|
+
Ci as S,
|
|
6534
|
+
Si as T,
|
|
6535
|
+
Ai as U,
|
|
6536
|
+
Fi as V,
|
|
6537
|
+
ti as W,
|
|
6538
|
+
ei as X,
|
|
6539
|
+
Di as Y,
|
|
6540
|
+
vr as Z,
|
|
6541
|
+
ga as _,
|
|
6521
6542
|
W as a,
|
|
6522
|
-
|
|
6523
|
-
|
|
6524
|
-
|
|
6525
|
-
|
|
6526
|
-
|
|
6527
|
-
|
|
6528
|
-
|
|
6529
|
-
|
|
6530
|
-
|
|
6531
|
-
|
|
6532
|
-
|
|
6533
|
-
|
|
6534
|
-
|
|
6535
|
-
|
|
6536
|
-
|
|
6537
|
-
|
|
6538
|
-
|
|
6539
|
-
|
|
6540
|
-
|
|
6541
|
-
|
|
6542
|
-
|
|
6543
|
+
vi as a0,
|
|
6544
|
+
Jn as a1,
|
|
6545
|
+
sn as a2,
|
|
6546
|
+
$n as b,
|
|
6547
|
+
yi as c,
|
|
6548
|
+
Ka as d,
|
|
6549
|
+
k as e,
|
|
6550
|
+
ao as f,
|
|
6551
|
+
Za as g,
|
|
6552
|
+
It as h,
|
|
6553
|
+
Rt as i,
|
|
6554
|
+
ki as j,
|
|
6555
|
+
Ot as k,
|
|
6556
|
+
Ft as l,
|
|
6557
|
+
Ei as m,
|
|
6558
|
+
Pi as n,
|
|
6559
|
+
Cr as o,
|
|
6560
|
+
Rr as p,
|
|
6561
|
+
Ri as q,
|
|
6562
|
+
Ii as r,
|
|
6563
|
+
Oi as s,
|
|
6564
|
+
Li as t,
|
|
6543
6565
|
S as u,
|
|
6544
|
-
|
|
6545
|
-
|
|
6546
|
-
|
|
6547
|
-
|
|
6548
|
-
|
|
6566
|
+
Ti as v,
|
|
6567
|
+
ge as w,
|
|
6568
|
+
Mi as x,
|
|
6569
|
+
zi as y,
|
|
6570
|
+
$i as z
|
|
6549
6571
|
};
|