@donkit-ai/design-system 1.4.51 → 1.4.52
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/index.cjs.js +4 -4
- package/dist/index.es.js +662 -656
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import U, { useState as
|
|
2
|
-
import { Check as we, X as te, ChevronDown as xe, Minus as Ye, Plus as qe, XCircle as ge, AlertTriangle as ye, CheckCircle as ke, Info as Ee, ChevronUp as He, ChevronsUpDown as Ke, ChevronLeft as Xe, ChevronRight as Ge, Copy as Je, Brain as Ze, Loader as Qe, Paperclip as Se, Square as es, ArrowUp as ss, Zap as ts, Cpu as De, FileText as
|
|
1
|
+
import U, { useState as I, useRef as T, useEffect as L, useLayoutEffect as Ve } from "react";
|
|
2
|
+
import { Check as we, X as te, ChevronDown as xe, Minus as Ye, Plus as qe, XCircle as ge, AlertTriangle as ye, CheckCircle as ke, Info as Ee, ChevronUp as He, ChevronsUpDown as Ke, ChevronLeft as Xe, ChevronRight as Ge, Copy as Je, Brain as Ze, Loader as Qe, Paperclip as Se, Square as es, ArrowUp as ss, Zap as ts, Cpu as De, FileText as ns, ThumbsUp as rs, ThumbsDown as as } from "lucide-react";
|
|
3
3
|
import pe from "react-dom";
|
|
4
|
-
const
|
|
4
|
+
const A = {
|
|
5
5
|
1: 16,
|
|
6
6
|
2: 20,
|
|
7
7
|
3: 24,
|
|
@@ -23,22 +23,22 @@ function os() {
|
|
|
23
23
|
if (Ie) return fe;
|
|
24
24
|
Ie = 1;
|
|
25
25
|
var s = Symbol.for("react.transitional.element"), t = Symbol.for("react.fragment");
|
|
26
|
-
function
|
|
26
|
+
function n(o, a, r) {
|
|
27
27
|
var i = null;
|
|
28
|
-
if (
|
|
29
|
-
|
|
28
|
+
if (r !== void 0 && (i = "" + r), a.key !== void 0 && (i = "" + a.key), "key" in a) {
|
|
29
|
+
r = {};
|
|
30
30
|
for (var l in a)
|
|
31
|
-
l !== "key" && (
|
|
32
|
-
} else
|
|
33
|
-
return a =
|
|
31
|
+
l !== "key" && (r[l] = a[l]);
|
|
32
|
+
} else r = a;
|
|
33
|
+
return a = r.ref, {
|
|
34
34
|
$$typeof: s,
|
|
35
35
|
type: o,
|
|
36
36
|
key: i,
|
|
37
37
|
ref: a !== void 0 ? a : null,
|
|
38
|
-
props:
|
|
38
|
+
props: r
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
|
-
return fe.Fragment = t, fe.jsx =
|
|
41
|
+
return fe.Fragment = t, fe.jsx = n, fe.jsxs = n, fe;
|
|
42
42
|
}
|
|
43
43
|
var me = {};
|
|
44
44
|
/**
|
|
@@ -59,13 +59,13 @@ function is() {
|
|
|
59
59
|
return c.$$typeof === C ? null : c.displayName || c.name || null;
|
|
60
60
|
if (typeof c == "string") return c;
|
|
61
61
|
switch (c) {
|
|
62
|
-
case
|
|
62
|
+
case y:
|
|
63
63
|
return "Fragment";
|
|
64
|
-
case
|
|
64
|
+
case R:
|
|
65
65
|
return "Profiler";
|
|
66
|
-
case
|
|
66
|
+
case g:
|
|
67
67
|
return "StrictMode";
|
|
68
|
-
case
|
|
68
|
+
case B:
|
|
69
69
|
return "Suspense";
|
|
70
70
|
case q:
|
|
71
71
|
return "SuspenseList";
|
|
@@ -78,19 +78,19 @@ function is() {
|
|
|
78
78
|
), c.$$typeof) {
|
|
79
79
|
case _:
|
|
80
80
|
return "Portal";
|
|
81
|
-
case
|
|
81
|
+
case $:
|
|
82
82
|
return c.displayName || "Context";
|
|
83
|
-
case
|
|
83
|
+
case N:
|
|
84
84
|
return (c._context.displayName || "Context") + ".Consumer";
|
|
85
|
-
case
|
|
86
|
-
var
|
|
87
|
-
return c = c.displayName, c || (c =
|
|
85
|
+
case P:
|
|
86
|
+
var k = c.render;
|
|
87
|
+
return c = c.displayName, c || (c = k.displayName || k.name || "", c = c !== "" ? "ForwardRef(" + c + ")" : "ForwardRef"), c;
|
|
88
88
|
case H:
|
|
89
|
-
return
|
|
89
|
+
return k = c.displayName || null, k !== null ? k : s(c.type) || "Memo";
|
|
90
90
|
case F:
|
|
91
|
-
|
|
91
|
+
k = c._payload, c = c._init;
|
|
92
92
|
try {
|
|
93
|
-
return s(c(
|
|
93
|
+
return s(c(k));
|
|
94
94
|
} catch {
|
|
95
95
|
}
|
|
96
96
|
}
|
|
@@ -99,30 +99,30 @@ function is() {
|
|
|
99
99
|
function t(c) {
|
|
100
100
|
return "" + c;
|
|
101
101
|
}
|
|
102
|
-
function
|
|
102
|
+
function n(c) {
|
|
103
103
|
try {
|
|
104
104
|
t(c);
|
|
105
|
-
var
|
|
105
|
+
var k = !1;
|
|
106
106
|
} catch {
|
|
107
|
-
|
|
107
|
+
k = !0;
|
|
108
108
|
}
|
|
109
|
-
if (
|
|
110
|
-
|
|
111
|
-
var
|
|
112
|
-
return
|
|
113
|
-
|
|
109
|
+
if (k) {
|
|
110
|
+
k = console;
|
|
111
|
+
var z = k.error, O = typeof Symbol == "function" && Symbol.toStringTag && c[Symbol.toStringTag] || c.constructor.name || "Object";
|
|
112
|
+
return z.call(
|
|
113
|
+
k,
|
|
114
114
|
"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
|
|
115
115
|
O
|
|
116
116
|
), t(c);
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
function o(c) {
|
|
120
|
-
if (c ===
|
|
120
|
+
if (c === y) return "<>";
|
|
121
121
|
if (typeof c == "object" && c !== null && c.$$typeof === F)
|
|
122
122
|
return "<...>";
|
|
123
123
|
try {
|
|
124
|
-
var
|
|
125
|
-
return
|
|
124
|
+
var k = s(c);
|
|
125
|
+
return k ? "<" + k + ">" : "<...>";
|
|
126
126
|
} catch {
|
|
127
127
|
return "<...>";
|
|
128
128
|
}
|
|
@@ -131,25 +131,25 @@ function is() {
|
|
|
131
131
|
var c = X.A;
|
|
132
132
|
return c === null ? null : c.getOwner();
|
|
133
133
|
}
|
|
134
|
-
function
|
|
134
|
+
function r() {
|
|
135
135
|
return Error("react-stack-top-frame");
|
|
136
136
|
}
|
|
137
137
|
function i(c) {
|
|
138
138
|
if (V.call(c, "key")) {
|
|
139
|
-
var
|
|
140
|
-
if (
|
|
139
|
+
var k = Object.getOwnPropertyDescriptor(c, "key").get;
|
|
140
|
+
if (k && k.isReactWarning) return !1;
|
|
141
141
|
}
|
|
142
142
|
return c.key !== void 0;
|
|
143
143
|
}
|
|
144
|
-
function l(c,
|
|
145
|
-
function
|
|
146
|
-
|
|
144
|
+
function l(c, k) {
|
|
145
|
+
function z() {
|
|
146
|
+
S || (S = !0, console.error(
|
|
147
147
|
"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
|
|
148
|
-
|
|
148
|
+
k
|
|
149
149
|
));
|
|
150
150
|
}
|
|
151
|
-
|
|
152
|
-
get:
|
|
151
|
+
z.isReactWarning = !0, Object.defineProperty(c, "key", {
|
|
152
|
+
get: z,
|
|
153
153
|
configurable: !0
|
|
154
154
|
});
|
|
155
155
|
}
|
|
@@ -159,13 +159,13 @@ function is() {
|
|
|
159
159
|
"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
|
|
160
160
|
)), c = this.props.ref, c !== void 0 ? c : null;
|
|
161
161
|
}
|
|
162
|
-
function d(c,
|
|
163
|
-
var W =
|
|
162
|
+
function d(c, k, z, O, ne, ae) {
|
|
163
|
+
var W = z.ref;
|
|
164
164
|
return c = {
|
|
165
165
|
$$typeof: b,
|
|
166
166
|
type: c,
|
|
167
|
-
key:
|
|
168
|
-
props:
|
|
167
|
+
key: k,
|
|
168
|
+
props: z,
|
|
169
169
|
_owner: O
|
|
170
170
|
}, (W !== void 0 ? W : null) !== null ? Object.defineProperty(c, "ref", {
|
|
171
171
|
enumerable: !1,
|
|
@@ -184,7 +184,7 @@ function is() {
|
|
|
184
184
|
configurable: !1,
|
|
185
185
|
enumerable: !1,
|
|
186
186
|
writable: !0,
|
|
187
|
-
value:
|
|
187
|
+
value: ne
|
|
188
188
|
}), Object.defineProperty(c, "_debugTask", {
|
|
189
189
|
configurable: !1,
|
|
190
190
|
enumerable: !1,
|
|
@@ -192,8 +192,8 @@ function is() {
|
|
|
192
192
|
value: ae
|
|
193
193
|
}), Object.freeze && (Object.freeze(c.props), Object.freeze(c)), c;
|
|
194
194
|
}
|
|
195
|
-
function f(c,
|
|
196
|
-
var W =
|
|
195
|
+
function f(c, k, z, O, ne, ae) {
|
|
196
|
+
var W = k.children;
|
|
197
197
|
if (W !== void 0)
|
|
198
198
|
if (O)
|
|
199
199
|
if (x(W)) {
|
|
@@ -205,12 +205,12 @@ function is() {
|
|
|
205
205
|
"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
|
|
206
206
|
);
|
|
207
207
|
else p(W);
|
|
208
|
-
if (V.call(
|
|
208
|
+
if (V.call(k, "key")) {
|
|
209
209
|
W = s(c);
|
|
210
|
-
var Q = Object.keys(
|
|
210
|
+
var Q = Object.keys(k).filter(function(be) {
|
|
211
211
|
return be !== "key";
|
|
212
212
|
});
|
|
213
|
-
O = 0 < Q.length ? "{key: someKey, " + Q.join(": ..., ") + ": ...}" : "{key: someKey}",
|
|
213
|
+
O = 0 < Q.length ? "{key: someKey, " + Q.join(": ..., ") + ": ...}" : "{key: someKey}", E[W + O] || (Q = 0 < Q.length ? "{" + Q.join(": ..., ") + ": ...}" : "{}", console.error(
|
|
214
214
|
`A props object containing a "key" prop is being spread into JSX:
|
|
215
215
|
let props = %s;
|
|
216
216
|
<%s {...props} />
|
|
@@ -221,22 +221,22 @@ React keys must be passed directly to JSX without using spread:
|
|
|
221
221
|
W,
|
|
222
222
|
Q,
|
|
223
223
|
W
|
|
224
|
-
),
|
|
224
|
+
), E[W + O] = !0);
|
|
225
225
|
}
|
|
226
|
-
if (W = null,
|
|
227
|
-
|
|
228
|
-
for (var oe in
|
|
229
|
-
oe !== "key" && (
|
|
230
|
-
} else
|
|
226
|
+
if (W = null, z !== void 0 && (n(z), W = "" + z), i(k) && (n(k.key), W = "" + k.key), "key" in k) {
|
|
227
|
+
z = {};
|
|
228
|
+
for (var oe in k)
|
|
229
|
+
oe !== "key" && (z[oe] = k[oe]);
|
|
230
|
+
} else z = k;
|
|
231
231
|
return W && l(
|
|
232
|
-
|
|
232
|
+
z,
|
|
233
233
|
typeof c == "function" ? c.displayName || c.name || "Unknown" : c
|
|
234
234
|
), d(
|
|
235
235
|
c,
|
|
236
236
|
W,
|
|
237
|
-
|
|
237
|
+
z,
|
|
238
238
|
a(),
|
|
239
|
-
|
|
239
|
+
ne,
|
|
240
240
|
ae
|
|
241
241
|
);
|
|
242
242
|
}
|
|
@@ -246,7 +246,7 @@ React keys must be passed directly to JSX without using spread:
|
|
|
246
246
|
function h(c) {
|
|
247
247
|
return typeof c == "object" && c !== null && c.$$typeof === b;
|
|
248
248
|
}
|
|
249
|
-
var u = U, b = Symbol.for("react.transitional.element"), _ = Symbol.for("react.portal"),
|
|
249
|
+
var u = U, b = Symbol.for("react.transitional.element"), _ = Symbol.for("react.portal"), y = Symbol.for("react.fragment"), g = Symbol.for("react.strict_mode"), R = Symbol.for("react.profiler"), N = Symbol.for("react.consumer"), $ = Symbol.for("react.context"), P = Symbol.for("react.forward_ref"), B = Symbol.for("react.suspense"), q = Symbol.for("react.suspense_list"), H = Symbol.for("react.memo"), F = Symbol.for("react.lazy"), v = Symbol.for("react.activity"), C = Symbol.for("react.client.reference"), X = u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, V = Object.prototype.hasOwnProperty, x = Array.isArray, w = console.createTask ? console.createTask : function() {
|
|
250
250
|
return null;
|
|
251
251
|
};
|
|
252
252
|
u = {
|
|
@@ -254,40 +254,40 @@ React keys must be passed directly to JSX without using spread:
|
|
|
254
254
|
return c();
|
|
255
255
|
}
|
|
256
256
|
};
|
|
257
|
-
var
|
|
257
|
+
var S, M = {}, K = u.react_stack_bottom_frame.bind(
|
|
258
258
|
u,
|
|
259
|
-
|
|
260
|
-
)(), G =
|
|
261
|
-
me.Fragment =
|
|
259
|
+
r
|
|
260
|
+
)(), G = w(o(r)), E = {};
|
|
261
|
+
me.Fragment = y, me.jsx = function(c, k, z) {
|
|
262
262
|
var O = 1e4 > X.recentlyCreatedOwnerStacks++;
|
|
263
263
|
return f(
|
|
264
264
|
c,
|
|
265
|
-
|
|
266
|
-
|
|
265
|
+
k,
|
|
266
|
+
z,
|
|
267
267
|
!1,
|
|
268
268
|
O ? Error("react-stack-top-frame") : K,
|
|
269
|
-
O ?
|
|
269
|
+
O ? w(o(c)) : G
|
|
270
270
|
);
|
|
271
|
-
}, me.jsxs = function(c,
|
|
271
|
+
}, me.jsxs = function(c, k, z) {
|
|
272
272
|
var O = 1e4 > X.recentlyCreatedOwnerStacks++;
|
|
273
273
|
return f(
|
|
274
274
|
c,
|
|
275
|
-
|
|
276
|
-
|
|
275
|
+
k,
|
|
276
|
+
z,
|
|
277
277
|
!0,
|
|
278
278
|
O ? Error("react-stack-top-frame") : K,
|
|
279
|
-
O ?
|
|
279
|
+
O ? w(o(c)) : G
|
|
280
280
|
);
|
|
281
281
|
};
|
|
282
282
|
}()), me;
|
|
283
283
|
}
|
|
284
284
|
process.env.NODE_ENV === "production" ? je.exports = os() : je.exports = is();
|
|
285
285
|
var e = je.exports;
|
|
286
|
-
function ls({ size: s = "m", color: t = "default", className:
|
|
286
|
+
function ls({ size: s = "m", color: t = "default", className: n = "", ...o }) {
|
|
287
287
|
return /* @__PURE__ */ e.jsx(
|
|
288
288
|
"span",
|
|
289
289
|
{
|
|
290
|
-
className: ["ds-spinner", `ds-spinner--${s}`, `ds-spinner--${t}`,
|
|
290
|
+
className: ["ds-spinner", `ds-spinner--${s}`, `ds-spinner--${t}`, n].filter(Boolean).join(" "),
|
|
291
291
|
role: "status",
|
|
292
292
|
"aria-label": "Loading",
|
|
293
293
|
...o
|
|
@@ -298,10 +298,10 @@ const cs = { xs: 12, s: 14, m: 16, l: 20 };
|
|
|
298
298
|
function ce({
|
|
299
299
|
children: s,
|
|
300
300
|
variant: t = "primary",
|
|
301
|
-
size:
|
|
301
|
+
size: n = "m",
|
|
302
302
|
fullWidth: o = !1,
|
|
303
303
|
icon: a,
|
|
304
|
-
disabled:
|
|
304
|
+
disabled: r = !1,
|
|
305
305
|
state: i = "idle",
|
|
306
306
|
onClick: l,
|
|
307
307
|
type: m = "button",
|
|
@@ -310,20 +310,20 @@ function ce({
|
|
|
310
310
|
className: p = "",
|
|
311
311
|
...h
|
|
312
312
|
}) {
|
|
313
|
-
const u = a && !s, b = i === "loading", _ = i === "success",
|
|
313
|
+
const u = a && !s, b = i === "loading", _ = i === "success", y = i === "error", g = b || _ || y, R = n === "xs" ? "s" : "m", N = t === "danger" ? "on-accent" : "default", $ = cs[n] ?? 16, P = b ? /* @__PURE__ */ e.jsx(ls, { size: R, color: N }) : _ ? /* @__PURE__ */ e.jsx("span", { className: "ds-button__icon", "aria-hidden": "true", children: /* @__PURE__ */ e.jsx(we, { size: $, strokeWidth: 2.5 }) }) : y ? /* @__PURE__ */ e.jsx("span", { className: "ds-button__icon", "aria-hidden": "true", children: /* @__PURE__ */ e.jsx(te, { size: $, strokeWidth: 2.5 }) }) : null, B = [
|
|
314
314
|
"ds-button",
|
|
315
315
|
`ds-button--${t}`,
|
|
316
|
-
`ds-button--${
|
|
316
|
+
`ds-button--${n}`,
|
|
317
317
|
o && "ds-button--full",
|
|
318
318
|
u && "ds-button--icon-only",
|
|
319
319
|
p
|
|
320
320
|
].filter(Boolean).join(" "), q = i !== "idle" ? i : void 0, H = /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
321
|
-
|
|
321
|
+
g ? P : a && /* @__PURE__ */ e.jsx("span", { className: "ds-button__icon", "aria-hidden": "true", children: a }),
|
|
322
322
|
s
|
|
323
323
|
] });
|
|
324
324
|
if (d) {
|
|
325
325
|
const F = (v) => {
|
|
326
|
-
if (
|
|
326
|
+
if (r || b) {
|
|
327
327
|
v.preventDefault();
|
|
328
328
|
return;
|
|
329
329
|
}
|
|
@@ -332,11 +332,11 @@ function ce({
|
|
|
332
332
|
return /* @__PURE__ */ e.jsx(
|
|
333
333
|
"a",
|
|
334
334
|
{
|
|
335
|
-
className:
|
|
336
|
-
href:
|
|
335
|
+
className: B,
|
|
336
|
+
href: r || b ? void 0 : d,
|
|
337
337
|
onClick: F,
|
|
338
338
|
"aria-label": f,
|
|
339
|
-
"aria-disabled":
|
|
339
|
+
"aria-disabled": r || b ? "true" : void 0,
|
|
340
340
|
"aria-busy": b ? "true" : void 0,
|
|
341
341
|
"data-state": q,
|
|
342
342
|
...h,
|
|
@@ -348,8 +348,8 @@ function ce({
|
|
|
348
348
|
"button",
|
|
349
349
|
{
|
|
350
350
|
type: m,
|
|
351
|
-
className:
|
|
352
|
-
disabled:
|
|
351
|
+
className: B,
|
|
352
|
+
disabled: r,
|
|
353
353
|
onClick: b ? void 0 : l,
|
|
354
354
|
"aria-label": f,
|
|
355
355
|
"aria-busy": b ? "true" : void 0,
|
|
@@ -362,17 +362,17 @@ function ce({
|
|
|
362
362
|
function Vs({
|
|
363
363
|
label: s,
|
|
364
364
|
error: t,
|
|
365
|
-
hint:
|
|
365
|
+
hint: n,
|
|
366
366
|
fullWidth: o = !0,
|
|
367
367
|
icon: a,
|
|
368
|
-
iconRight:
|
|
368
|
+
iconRight: r,
|
|
369
369
|
onIconRightClick: i,
|
|
370
370
|
size: l = "m",
|
|
371
371
|
disabled: m,
|
|
372
372
|
id: d,
|
|
373
373
|
...f
|
|
374
374
|
}) {
|
|
375
|
-
const p = d || `input-${U.useId()}`, h =
|
|
375
|
+
const p = d || `input-${U.useId()}`, h = n ? `${p}-hint` : void 0, u = t ? `${p}-error` : void 0, b = u || h;
|
|
376
376
|
return /* @__PURE__ */ e.jsxs("div", { className: `ds-input-wrapper ${o ? "ds-input-wrapper--full" : ""} ${m ? "ds-input-wrapper--disabled" : ""} ${t ? "ds-input-wrapper--error" : ""}`, children: [
|
|
377
377
|
s && /* @__PURE__ */ e.jsx("label", { className: "ds-input-label", htmlFor: p, children: s }),
|
|
378
378
|
/* @__PURE__ */ e.jsxs("div", { className: "ds-input-container", children: [
|
|
@@ -381,14 +381,14 @@ function Vs({
|
|
|
381
381
|
"input",
|
|
382
382
|
{
|
|
383
383
|
id: p,
|
|
384
|
-
className: `ds-input ds-input--${l} ${a ? "ds-input--with-icon" : ""} ${
|
|
384
|
+
className: `ds-input ds-input--${l} ${a ? "ds-input--with-icon" : ""} ${r ? "ds-input--with-icon-right" : ""} ${t ? "ds-input--error" : ""}`,
|
|
385
385
|
disabled: m,
|
|
386
386
|
"aria-invalid": t ? "true" : "false",
|
|
387
387
|
"aria-describedby": b,
|
|
388
388
|
...f
|
|
389
389
|
}
|
|
390
390
|
),
|
|
391
|
-
|
|
391
|
+
r && /* @__PURE__ */ e.jsx(
|
|
392
392
|
"button",
|
|
393
393
|
{
|
|
394
394
|
type: "button",
|
|
@@ -396,122 +396,122 @@ function Vs({
|
|
|
396
396
|
onClick: i,
|
|
397
397
|
tabIndex: -1,
|
|
398
398
|
"aria-label": "Toggle visibility",
|
|
399
|
-
children:
|
|
399
|
+
children: r
|
|
400
400
|
}
|
|
401
401
|
)
|
|
402
402
|
] }),
|
|
403
|
-
|
|
403
|
+
n && !t && /* @__PURE__ */ e.jsx("span", { id: h, className: "ds-input-hint", children: n }),
|
|
404
404
|
/* @__PURE__ */ e.jsx("div", { className: "ds-input-error-wrap", children: /* @__PURE__ */ e.jsx("div", { className: "ds-input-error-inner", children: t && /* @__PURE__ */ e.jsx("span", { id: u, className: "ds-input-error", role: "alert", children: t }) }) })
|
|
405
405
|
] });
|
|
406
406
|
}
|
|
407
407
|
function Ys({
|
|
408
408
|
label: s,
|
|
409
409
|
error: t,
|
|
410
|
-
hint:
|
|
410
|
+
hint: n,
|
|
411
411
|
fullWidth: o = !0,
|
|
412
412
|
size: a = "m",
|
|
413
|
-
disabled:
|
|
413
|
+
disabled: r,
|
|
414
414
|
id: i,
|
|
415
415
|
resize: l = !0,
|
|
416
416
|
rows: m = 3,
|
|
417
417
|
...d
|
|
418
418
|
}) {
|
|
419
|
-
const f = i || `textarea-${U.useId()}`, p =
|
|
420
|
-
return /* @__PURE__ */ e.jsxs("div", { className: `ds-textarea-wrapper ${o ? "ds-textarea-wrapper--full" : ""} ${
|
|
419
|
+
const f = i || `textarea-${U.useId()}`, p = n ? `${f}-hint` : void 0, h = t ? `${f}-error` : void 0, u = h || p;
|
|
420
|
+
return /* @__PURE__ */ e.jsxs("div", { className: `ds-textarea-wrapper ${o ? "ds-textarea-wrapper--full" : ""} ${r ? "ds-textarea-wrapper--disabled" : ""}`, children: [
|
|
421
421
|
s && /* @__PURE__ */ e.jsx("label", { className: "ds-textarea-label", htmlFor: f, children: s }),
|
|
422
422
|
/* @__PURE__ */ e.jsx(
|
|
423
423
|
"textarea",
|
|
424
424
|
{
|
|
425
425
|
id: f,
|
|
426
426
|
className: `ds-textarea ds-textarea--${a} ${t ? "ds-textarea--error" : ""} ${l ? "" : "ds-textarea--no-resize"}`,
|
|
427
|
-
disabled:
|
|
427
|
+
disabled: r,
|
|
428
428
|
"aria-invalid": t ? "true" : "false",
|
|
429
429
|
"aria-describedby": u,
|
|
430
430
|
rows: m,
|
|
431
431
|
...d
|
|
432
432
|
}
|
|
433
433
|
),
|
|
434
|
-
|
|
434
|
+
n && !t && /* @__PURE__ */ e.jsx("span", { id: p, className: "ds-textarea-hint", children: n }),
|
|
435
435
|
t && /* @__PURE__ */ e.jsx("span", { id: h, className: "ds-textarea-error", role: "alert", children: t })
|
|
436
436
|
] });
|
|
437
437
|
}
|
|
438
438
|
function qs({
|
|
439
439
|
label: s,
|
|
440
440
|
value: t,
|
|
441
|
-
onChange:
|
|
441
|
+
onChange: n,
|
|
442
442
|
options: o = [],
|
|
443
443
|
placeholder: a = "Select option",
|
|
444
|
-
error:
|
|
444
|
+
error: r,
|
|
445
445
|
fullWidth: i = !0,
|
|
446
446
|
size: l = "m",
|
|
447
447
|
disabled: m = !1,
|
|
448
448
|
id: d,
|
|
449
449
|
...f
|
|
450
450
|
}) {
|
|
451
|
-
const [p, h] =
|
|
452
|
-
u || (b(!0),
|
|
451
|
+
const [p, h] = I(!1), [u, b] = I(!1), [_, y] = I({}), [g, R] = I("down"), [N, $] = I(-1), P = T(null), B = T(null), q = T(null), H = T(null), F = d || `select-${U.useId()}`, v = `${F}-label`, C = r ? `${F}-error` : void 0, X = 150, V = (E = !1) => {
|
|
452
|
+
u || (b(!0), $(-1), H.current = setTimeout(() => {
|
|
453
453
|
var c;
|
|
454
|
-
h(!1), b(!1),
|
|
454
|
+
h(!1), b(!1), E && ((c = q.current) == null || c.focus());
|
|
455
455
|
}, X));
|
|
456
|
-
}, x = (
|
|
456
|
+
}, x = (E) => {
|
|
457
457
|
clearTimeout(H.current), b(!1);
|
|
458
|
-
const c =
|
|
459
|
-
|
|
458
|
+
const c = E !== void 0 ? E : Math.max(o.findIndex((k) => k.value === t), 0);
|
|
459
|
+
$(c), h(!0);
|
|
460
460
|
};
|
|
461
|
-
|
|
462
|
-
const
|
|
461
|
+
L(() => () => clearTimeout(H.current), []);
|
|
462
|
+
const w = () => {
|
|
463
463
|
var ae;
|
|
464
|
-
const
|
|
465
|
-
if (!
|
|
466
|
-
const c = window.innerHeight,
|
|
467
|
-
|
|
468
|
-
|
|
464
|
+
const E = (ae = P.current) == null ? void 0 : ae.getBoundingClientRect();
|
|
465
|
+
if (!E) return;
|
|
466
|
+
const c = window.innerHeight, k = c - E.bottom, z = E.top, ne = k < 300 && z > k;
|
|
467
|
+
R(ne ? "up" : "down"), y(
|
|
468
|
+
ne ? { bottom: c - E.top + 4, left: E.left, width: E.width } : { top: E.bottom + 4, left: E.left, width: E.width }
|
|
469
469
|
);
|
|
470
470
|
};
|
|
471
|
-
|
|
471
|
+
L(() => {
|
|
472
472
|
if (p)
|
|
473
|
-
return
|
|
474
|
-
window.removeEventListener("scroll",
|
|
473
|
+
return w(), window.addEventListener("scroll", w, !0), window.addEventListener("resize", w), () => {
|
|
474
|
+
window.removeEventListener("scroll", w, !0), window.removeEventListener("resize", w);
|
|
475
475
|
};
|
|
476
|
-
}, [p]),
|
|
477
|
-
const
|
|
478
|
-
|
|
476
|
+
}, [p]), L(() => {
|
|
477
|
+
const E = (c) => {
|
|
478
|
+
P.current && !P.current.contains(c.target) && B.current && !B.current.contains(c.target) && V();
|
|
479
479
|
};
|
|
480
|
-
return document.addEventListener("mousedown",
|
|
481
|
-
}, [u]),
|
|
480
|
+
return document.addEventListener("mousedown", E), () => document.removeEventListener("mousedown", E);
|
|
481
|
+
}, [u]), L(() => {
|
|
482
482
|
var c;
|
|
483
|
-
if (!p ||
|
|
484
|
-
(c =
|
|
485
|
-
}, [
|
|
486
|
-
const
|
|
487
|
-
switch (
|
|
483
|
+
if (!p || N < 0 || !B.current) return;
|
|
484
|
+
(c = B.current.querySelectorAll(".ds-select-option")[N]) == null || c.scrollIntoView({ block: "nearest" });
|
|
485
|
+
}, [N, p]);
|
|
486
|
+
const S = (E) => {
|
|
487
|
+
switch (E.key) {
|
|
488
488
|
case "ArrowDown":
|
|
489
|
-
|
|
489
|
+
E.preventDefault(), p ? $((c) => Math.min(c + 1, o.length - 1)) : x();
|
|
490
490
|
break;
|
|
491
491
|
case "ArrowUp":
|
|
492
|
-
|
|
492
|
+
E.preventDefault(), p ? $((c) => Math.max(c - 1, 0)) : x(o.length - 1);
|
|
493
493
|
break;
|
|
494
494
|
case "Home":
|
|
495
|
-
p && (
|
|
495
|
+
p && (E.preventDefault(), $(0));
|
|
496
496
|
break;
|
|
497
497
|
case "End":
|
|
498
|
-
p && (
|
|
498
|
+
p && (E.preventDefault(), $(o.length - 1));
|
|
499
499
|
break;
|
|
500
500
|
case "Enter":
|
|
501
501
|
case " ":
|
|
502
|
-
|
|
502
|
+
E.preventDefault(), p ? N >= 0 && (n == null || n(o[N].value), V(!0)) : x();
|
|
503
503
|
break;
|
|
504
504
|
case "Escape":
|
|
505
|
-
p && (
|
|
505
|
+
p && (E.preventDefault(), V(!0));
|
|
506
506
|
break;
|
|
507
507
|
case "Tab":
|
|
508
508
|
p && V(!1);
|
|
509
509
|
break;
|
|
510
510
|
}
|
|
511
|
-
}, M = o.find((
|
|
511
|
+
}, M = o.find((E) => E.value === t), K = l === "xs" ? A[1] : l === "small" ? A[2] : A[3], G = p && /* @__PURE__ */ e.jsx(
|
|
512
512
|
"div",
|
|
513
513
|
{
|
|
514
|
-
ref:
|
|
514
|
+
ref: B,
|
|
515
515
|
"data-ds-portal": "",
|
|
516
516
|
role: "listbox",
|
|
517
517
|
"aria-labelledby": s ? v : void 0,
|
|
@@ -519,36 +519,36 @@ function qs({
|
|
|
519
519
|
className: [
|
|
520
520
|
"ds-select-dropdown ds-scrollable",
|
|
521
521
|
`ds-select-dropdown--${l}`,
|
|
522
|
-
`ds-select-dropdown--${
|
|
522
|
+
`ds-select-dropdown--${g}`,
|
|
523
523
|
u && "ds-select-dropdown--closing"
|
|
524
524
|
].filter(Boolean).join(" "),
|
|
525
525
|
style: _,
|
|
526
|
-
children: o.map((
|
|
526
|
+
children: o.map((E, c) => /* @__PURE__ */ e.jsx(
|
|
527
527
|
"button",
|
|
528
528
|
{
|
|
529
529
|
id: `${F}-opt-${c}`,
|
|
530
530
|
type: "button",
|
|
531
531
|
role: "option",
|
|
532
532
|
tabIndex: -1,
|
|
533
|
-
"aria-selected": t ===
|
|
533
|
+
"aria-selected": t === E.value,
|
|
534
534
|
className: [
|
|
535
535
|
"ds-select-option",
|
|
536
536
|
`ds-select-option--${l}`,
|
|
537
|
-
t ===
|
|
538
|
-
c ===
|
|
537
|
+
t === E.value && "ds-select-option--selected",
|
|
538
|
+
c === N && "ds-select-option--active"
|
|
539
539
|
].filter(Boolean).join(" "),
|
|
540
540
|
onClick: () => {
|
|
541
|
-
|
|
541
|
+
n == null || n(E.value), V(!0);
|
|
542
542
|
},
|
|
543
|
-
children:
|
|
543
|
+
children: E.label
|
|
544
544
|
},
|
|
545
|
-
|
|
545
|
+
E.value
|
|
546
546
|
))
|
|
547
547
|
}
|
|
548
548
|
);
|
|
549
549
|
return /* @__PURE__ */ e.jsxs("div", { className: `ds-select-wrapper ${i ? "ds-select-wrapper--full" : ""} ${m ? "ds-select-wrapper--disabled" : ""}`, children: [
|
|
550
550
|
s && /* @__PURE__ */ e.jsx("label", { id: v, className: "ds-select-label", children: s }),
|
|
551
|
-
/* @__PURE__ */ e.jsx("div", { className: "ds-select-container", ref:
|
|
551
|
+
/* @__PURE__ */ e.jsx("div", { className: "ds-select-container", ref: P, children: /* @__PURE__ */ e.jsxs(
|
|
552
552
|
"button",
|
|
553
553
|
{
|
|
554
554
|
ref: q,
|
|
@@ -557,15 +557,15 @@ function qs({
|
|
|
557
557
|
role: "combobox",
|
|
558
558
|
"aria-haspopup": "listbox",
|
|
559
559
|
"aria-expanded": p,
|
|
560
|
-
"aria-activedescendant": p &&
|
|
560
|
+
"aria-activedescendant": p && N >= 0 ? `${F}-opt-${N}` : void 0,
|
|
561
561
|
"aria-labelledby": s ? v : void 0,
|
|
562
|
-
"aria-invalid":
|
|
562
|
+
"aria-invalid": r ? "true" : "false",
|
|
563
563
|
"aria-describedby": C,
|
|
564
|
-
className: `ds-select-trigger ds-select-trigger--${l} ${
|
|
564
|
+
className: `ds-select-trigger ds-select-trigger--${l} ${r ? "ds-select-trigger--error" : ""}`,
|
|
565
565
|
onClick: () => {
|
|
566
566
|
m || (p ? V() : x());
|
|
567
567
|
},
|
|
568
|
-
onKeyDown:
|
|
568
|
+
onKeyDown: S,
|
|
569
569
|
disabled: m,
|
|
570
570
|
...f,
|
|
571
571
|
children: [
|
|
@@ -575,24 +575,24 @@ function qs({
|
|
|
575
575
|
{
|
|
576
576
|
size: K,
|
|
577
577
|
strokeWidth: 1.5,
|
|
578
|
-
className: `ds-select-icon ${p &&
|
|
578
|
+
className: `ds-select-icon ${p && g === "down" ? "ds-select-icon--open" : ""} ${p && g === "up" ? "ds-select-icon--up" : ""}`,
|
|
579
579
|
"aria-hidden": "true"
|
|
580
580
|
}
|
|
581
581
|
)
|
|
582
582
|
]
|
|
583
583
|
}
|
|
584
584
|
) }),
|
|
585
|
-
|
|
585
|
+
r && /* @__PURE__ */ e.jsx("span", { id: C, className: "ds-select-error", role: "alert", children: r }),
|
|
586
586
|
typeof document < "u" && pe.createPortal(G, document.body)
|
|
587
587
|
] });
|
|
588
588
|
}
|
|
589
589
|
function Hs({
|
|
590
590
|
label: s,
|
|
591
591
|
value: t = 0,
|
|
592
|
-
onChange:
|
|
592
|
+
onChange: n,
|
|
593
593
|
min: o = 0,
|
|
594
594
|
max: a = 100,
|
|
595
|
-
step:
|
|
595
|
+
step: r = 1,
|
|
596
596
|
size: i = "m",
|
|
597
597
|
disabled: l = !1,
|
|
598
598
|
hint: m,
|
|
@@ -601,23 +601,23 @@ function Hs({
|
|
|
601
601
|
}) {
|
|
602
602
|
const p = () => {
|
|
603
603
|
if (l) return;
|
|
604
|
-
const
|
|
605
|
-
|
|
604
|
+
const g = Math.min(Number(t) + r, a);
|
|
605
|
+
n == null || n(g);
|
|
606
606
|
}, h = () => {
|
|
607
607
|
if (l) return;
|
|
608
|
-
const
|
|
609
|
-
|
|
610
|
-
}, u = (
|
|
608
|
+
const g = Math.max(Number(t) - r, o);
|
|
609
|
+
n == null || n(g);
|
|
610
|
+
}, u = (g) => {
|
|
611
611
|
if (l) return;
|
|
612
|
-
const
|
|
613
|
-
if (
|
|
614
|
-
|
|
612
|
+
const R = g.target.value;
|
|
613
|
+
if (R === "") {
|
|
614
|
+
n == null || n(o);
|
|
615
615
|
return;
|
|
616
616
|
}
|
|
617
|
-
const
|
|
618
|
-
if (!isNaN(
|
|
619
|
-
const
|
|
620
|
-
|
|
617
|
+
const N = Number(R);
|
|
618
|
+
if (!isNaN(N)) {
|
|
619
|
+
const $ = Math.min(Math.max(N, o), a);
|
|
620
|
+
n == null || n($);
|
|
621
621
|
}
|
|
622
622
|
}, b = [
|
|
623
623
|
"ds-stepper-wrapper",
|
|
@@ -627,7 +627,7 @@ function Hs({
|
|
|
627
627
|
"ds-stepper",
|
|
628
628
|
`ds-stepper--${i}`,
|
|
629
629
|
l && "ds-stepper--disabled"
|
|
630
|
-
].filter(Boolean).join(" "),
|
|
630
|
+
].filter(Boolean).join(" "), y = i === "xs" ? A[1] : i === "small" ? A[2] : A[3];
|
|
631
631
|
return /* @__PURE__ */ e.jsxs("div", { className: b, children: [
|
|
632
632
|
s && /* @__PURE__ */ e.jsx("label", { className: "ds-stepper-label", children: s }),
|
|
633
633
|
/* @__PURE__ */ e.jsxs("div", { className: _, children: [
|
|
@@ -639,7 +639,7 @@ function Hs({
|
|
|
639
639
|
onClick: h,
|
|
640
640
|
disabled: l || t <= o,
|
|
641
641
|
"aria-label": "Decrease",
|
|
642
|
-
children: /* @__PURE__ */ e.jsx(Ye, { size:
|
|
642
|
+
children: /* @__PURE__ */ e.jsx(Ye, { size: y, strokeWidth: 1.5 })
|
|
643
643
|
}
|
|
644
644
|
),
|
|
645
645
|
/* @__PURE__ */ e.jsx(
|
|
@@ -651,7 +651,7 @@ function Hs({
|
|
|
651
651
|
onChange: u,
|
|
652
652
|
min: o,
|
|
653
653
|
max: a,
|
|
654
|
-
step:
|
|
654
|
+
step: r,
|
|
655
655
|
disabled: l,
|
|
656
656
|
...f
|
|
657
657
|
}
|
|
@@ -664,7 +664,7 @@ function Hs({
|
|
|
664
664
|
onClick: p,
|
|
665
665
|
disabled: l || t >= a,
|
|
666
666
|
"aria-label": "Increase",
|
|
667
|
-
children: /* @__PURE__ */ e.jsx(qe, { size:
|
|
667
|
+
children: /* @__PURE__ */ e.jsx(qe, { size: y, strokeWidth: 1.5 })
|
|
668
668
|
}
|
|
669
669
|
)
|
|
670
670
|
] }),
|
|
@@ -675,20 +675,20 @@ function Hs({
|
|
|
675
675
|
function Ks({
|
|
676
676
|
children: s,
|
|
677
677
|
padding: t = "m",
|
|
678
|
-
variant:
|
|
678
|
+
variant: n = "info",
|
|
679
679
|
hover: o = !1,
|
|
680
680
|
// deprecated, use variant="interactive"
|
|
681
681
|
onClick: a,
|
|
682
|
-
href:
|
|
682
|
+
href: r,
|
|
683
683
|
disabled: i = !1,
|
|
684
684
|
...l
|
|
685
685
|
}) {
|
|
686
|
-
const d = (o ? "interactive" :
|
|
686
|
+
const d = (o ? "interactive" : n) === "interactive" || a || r, f = [
|
|
687
687
|
"ds-card",
|
|
688
688
|
`ds-card--${t}`,
|
|
689
689
|
d && "ds-card--interactive"
|
|
690
690
|
].filter(Boolean).join(" ");
|
|
691
|
-
if (
|
|
691
|
+
if (r) {
|
|
692
692
|
const u = (b) => {
|
|
693
693
|
if (i) {
|
|
694
694
|
b.preventDefault();
|
|
@@ -700,7 +700,7 @@ function Ks({
|
|
|
700
700
|
"a",
|
|
701
701
|
{
|
|
702
702
|
className: f,
|
|
703
|
-
href: i ? void 0 :
|
|
703
|
+
href: i ? void 0 : r,
|
|
704
704
|
onClick: u,
|
|
705
705
|
"aria-disabled": i ? "true" : void 0,
|
|
706
706
|
...l,
|
|
@@ -736,28 +736,28 @@ function Js({ children: s, ...t }) {
|
|
|
736
736
|
function Zs({ children: s, ...t }) {
|
|
737
737
|
return /* @__PURE__ */ e.jsx("h4", { className: "ds-h4", ...t, children: s });
|
|
738
738
|
}
|
|
739
|
-
function Qs({ children: s, secondary: t = !1, ...
|
|
740
|
-
return /* @__PURE__ */ e.jsx("p", { className: `ds-p1 ${t ? "ds-p1--secondary" : ""}`, ...
|
|
739
|
+
function Qs({ children: s, secondary: t = !1, ...n }) {
|
|
740
|
+
return /* @__PURE__ */ e.jsx("p", { className: `ds-p1 ${t ? "ds-p1--secondary" : ""}`, ...n, children: s });
|
|
741
741
|
}
|
|
742
|
-
function ds({ children: s, secondary: t = !1, ...
|
|
743
|
-
return /* @__PURE__ */ e.jsx("p", { className: `ds-p2 ${t ? "ds-p2--secondary" : ""}`, ...
|
|
742
|
+
function ds({ children: s, secondary: t = !1, ...n }) {
|
|
743
|
+
return /* @__PURE__ */ e.jsx("p", { className: `ds-p2 ${t ? "ds-p2--secondary" : ""}`, ...n, children: s });
|
|
744
744
|
}
|
|
745
|
-
function Fe({ children: s, secondary: t = !1, ...
|
|
746
|
-
return /* @__PURE__ */ e.jsx("p", { className: `ds-p3 ${t ? "ds-p3--secondary" : ""}`, ...
|
|
745
|
+
function Fe({ children: s, secondary: t = !1, ...n }) {
|
|
746
|
+
return /* @__PURE__ */ e.jsx("p", { className: `ds-p3 ${t ? "ds-p3--secondary" : ""}`, ...n, children: s });
|
|
747
747
|
}
|
|
748
748
|
function de({
|
|
749
749
|
children: s,
|
|
750
750
|
variant: t = "default",
|
|
751
|
-
size:
|
|
751
|
+
size: n = "m",
|
|
752
752
|
role: o,
|
|
753
753
|
...a
|
|
754
754
|
}) {
|
|
755
|
-
const
|
|
755
|
+
const r = [
|
|
756
756
|
"ds-badge",
|
|
757
757
|
`ds-badge--${t}`,
|
|
758
|
-
`ds-badge--${
|
|
758
|
+
`ds-badge--${n}`
|
|
759
759
|
].filter(Boolean).join(" "), i = o || (["info", "success", "warning", "error"].includes(t) ? "status" : void 0);
|
|
760
|
-
return /* @__PURE__ */ e.jsx("span", { className:
|
|
760
|
+
return /* @__PURE__ */ e.jsx("span", { className: r, role: i, ...a, children: s });
|
|
761
761
|
}
|
|
762
762
|
const us = {
|
|
763
763
|
info: Ee,
|
|
@@ -768,16 +768,16 @@ const us = {
|
|
|
768
768
|
function et({
|
|
769
769
|
children: s,
|
|
770
770
|
variant: t = "info",
|
|
771
|
-
title:
|
|
771
|
+
title: n,
|
|
772
772
|
onClose: o,
|
|
773
773
|
role: a,
|
|
774
|
-
...
|
|
774
|
+
...r
|
|
775
775
|
}) {
|
|
776
776
|
const i = us[t], l = a || (t === "error" ? "alert" : "status");
|
|
777
|
-
return /* @__PURE__ */ e.jsxs("div", { className: `ds-alert ds-alert--${t} ${
|
|
778
|
-
i && /* @__PURE__ */ e.jsx("div", { className: "ds-alert__icon", children: /* @__PURE__ */ e.jsx(i, { size:
|
|
777
|
+
return /* @__PURE__ */ e.jsxs("div", { className: `ds-alert ds-alert--${t} ${n ? "" : "ds-alert--no-title"}`, role: l, ...r, children: [
|
|
778
|
+
i && /* @__PURE__ */ e.jsx("div", { className: "ds-alert__icon", children: /* @__PURE__ */ e.jsx(i, { size: A[3], strokeWidth: 1.5 }) }),
|
|
779
779
|
/* @__PURE__ */ e.jsxs("div", { className: "ds-alert__content", children: [
|
|
780
|
-
|
|
780
|
+
n && /* @__PURE__ */ e.jsx("div", { className: "ds-alert__title", children: n }),
|
|
781
781
|
s && /* @__PURE__ */ e.jsx("div", { className: "ds-alert__message", children: s })
|
|
782
782
|
] }),
|
|
783
783
|
o && /* @__PURE__ */ e.jsx(
|
|
@@ -787,7 +787,7 @@ function et({
|
|
|
787
787
|
className: "ds-alert__close",
|
|
788
788
|
onClick: o,
|
|
789
789
|
"aria-label": "Close alert",
|
|
790
|
-
children: /* @__PURE__ */ e.jsx(te, { size:
|
|
790
|
+
children: /* @__PURE__ */ e.jsx(te, { size: A[3], strokeWidth: 1.5 })
|
|
791
791
|
}
|
|
792
792
|
)
|
|
793
793
|
] });
|
|
@@ -796,27 +796,29 @@ const fs = 200;
|
|
|
796
796
|
function st({
|
|
797
797
|
children: s,
|
|
798
798
|
title: t,
|
|
799
|
-
onClose:
|
|
799
|
+
onClose: n,
|
|
800
800
|
size: o = "m",
|
|
801
801
|
scrollable: a = !1,
|
|
802
|
-
subHeader:
|
|
802
|
+
subHeader: r,
|
|
803
803
|
...i
|
|
804
804
|
}) {
|
|
805
|
-
const l =
|
|
806
|
-
!
|
|
807
|
-
f(!1),
|
|
805
|
+
const l = T(null), m = U.useId(), [d, f] = I(!1), p = () => {
|
|
806
|
+
!n || d || (f(!0), setTimeout(() => {
|
|
807
|
+
f(!1), n();
|
|
808
808
|
}, fs));
|
|
809
809
|
};
|
|
810
|
-
|
|
811
|
-
const _ = (
|
|
812
|
-
|
|
813
|
-
},
|
|
814
|
-
|
|
810
|
+
L(() => {
|
|
811
|
+
const _ = (g) => {
|
|
812
|
+
g.key === "Escape" && p();
|
|
813
|
+
}, y = (g) => {
|
|
814
|
+
var N, $, P;
|
|
815
|
+
const R = (($ = (N = g.composedPath) == null ? void 0 : N.call(g)) == null ? void 0 : $[0]) ?? g.target;
|
|
816
|
+
l.current && !l.current.contains(R) && !((P = R.closest) != null && P.call(R, "[data-ds-portal]")) && p();
|
|
815
817
|
};
|
|
816
|
-
return document.addEventListener("keydown", _), document.addEventListener("mousedown",
|
|
817
|
-
document.removeEventListener("keydown", _), document.removeEventListener("mousedown",
|
|
818
|
+
return document.addEventListener("keydown", _), document.addEventListener("mousedown", y), () => {
|
|
819
|
+
document.removeEventListener("keydown", _), document.removeEventListener("mousedown", y);
|
|
818
820
|
};
|
|
819
|
-
}, [
|
|
821
|
+
}, [n, d]);
|
|
820
822
|
const h = U.Children.toArray(s), u = h.find((_) => (_ == null ? void 0 : _.type) === he), b = h.filter((_) => (_ == null ? void 0 : _.type) !== he);
|
|
821
823
|
return /* @__PURE__ */ e.jsx("div", { className: ["ds-modal-overlay", d && "ds-modal-overlay--closing"].filter(Boolean).join(" "), ...i, children: /* @__PURE__ */ e.jsxs(
|
|
822
824
|
"div",
|
|
@@ -827,20 +829,20 @@ function st({
|
|
|
827
829
|
"aria-modal": "true",
|
|
828
830
|
"aria-labelledby": t ? m : void 0,
|
|
829
831
|
children: [
|
|
830
|
-
|
|
832
|
+
n && /* @__PURE__ */ e.jsx(
|
|
831
833
|
ce,
|
|
832
834
|
{
|
|
833
835
|
className: "ds-modal__close",
|
|
834
836
|
variant: "ghost",
|
|
835
837
|
size: "small",
|
|
836
|
-
icon: /* @__PURE__ */ e.jsx(te, { size:
|
|
838
|
+
icon: /* @__PURE__ */ e.jsx(te, { size: A[2], strokeWidth: 1.5 }),
|
|
837
839
|
onClick: p,
|
|
838
840
|
"aria-label": "Close modal"
|
|
839
841
|
}
|
|
840
842
|
),
|
|
841
|
-
(t ||
|
|
843
|
+
(t || r) && /* @__PURE__ */ e.jsxs("div", { className: "ds-modal__header", children: [
|
|
842
844
|
t && /* @__PURE__ */ e.jsx("h3", { id: m, className: "ds-modal__title", children: t }),
|
|
843
|
-
|
|
845
|
+
r && /* @__PURE__ */ e.jsx("div", { className: "ds-modal__subheader", children: r })
|
|
844
846
|
] }),
|
|
845
847
|
/* @__PURE__ */ e.jsx("div", { className: "ds-modal__body ds-scrollable", children: b }),
|
|
846
848
|
u
|
|
@@ -855,25 +857,27 @@ const ms = 320;
|
|
|
855
857
|
function tt({
|
|
856
858
|
children: s,
|
|
857
859
|
title: t,
|
|
858
|
-
onClose:
|
|
860
|
+
onClose: n,
|
|
859
861
|
subHeader: o,
|
|
860
862
|
...a
|
|
861
863
|
}) {
|
|
862
|
-
const
|
|
863
|
-
!
|
|
864
|
-
m(!1),
|
|
864
|
+
const r = T(null), i = U.useId(), [l, m] = I(!1), d = () => {
|
|
865
|
+
!n || l || (m(!0), setTimeout(() => {
|
|
866
|
+
m(!1), n();
|
|
865
867
|
}, ms));
|
|
866
868
|
};
|
|
867
|
-
|
|
869
|
+
L(() => {
|
|
868
870
|
const u = (_) => {
|
|
869
871
|
_.key === "Escape" && d();
|
|
870
872
|
}, b = (_) => {
|
|
871
|
-
|
|
873
|
+
var g, R, N;
|
|
874
|
+
const y = ((R = (g = _.composedPath) == null ? void 0 : g.call(_)) == null ? void 0 : R[0]) ?? _.target;
|
|
875
|
+
r.current && !r.current.contains(y) && !((N = y.closest) != null && N.call(y, "[data-ds-portal]")) && d();
|
|
872
876
|
};
|
|
873
877
|
return document.addEventListener("keydown", u), document.addEventListener("mousedown", b), () => {
|
|
874
878
|
document.removeEventListener("keydown", u), document.removeEventListener("mousedown", b);
|
|
875
879
|
};
|
|
876
|
-
}, [
|
|
880
|
+
}, [n, l]);
|
|
877
881
|
const f = U.Children.toArray(s), p = f.find((u) => (u == null ? void 0 : u.type) === he), h = f.filter((u) => (u == null ? void 0 : u.type) !== he);
|
|
878
882
|
return /* @__PURE__ */ e.jsx(
|
|
879
883
|
"div",
|
|
@@ -883,20 +887,20 @@ function tt({
|
|
|
883
887
|
children: /* @__PURE__ */ e.jsxs(
|
|
884
888
|
"div",
|
|
885
889
|
{
|
|
886
|
-
ref:
|
|
890
|
+
ref: r,
|
|
887
891
|
className: ["ds-bottom-sheet", l && "ds-bottom-sheet--closing"].filter(Boolean).join(" "),
|
|
888
892
|
role: "dialog",
|
|
889
893
|
"aria-modal": "true",
|
|
890
894
|
"aria-labelledby": t ? i : void 0,
|
|
891
895
|
children: [
|
|
892
896
|
/* @__PURE__ */ e.jsx("div", { className: "ds-bottom-sheet__handle", "aria-hidden": "true" }),
|
|
893
|
-
|
|
897
|
+
n && /* @__PURE__ */ e.jsx(
|
|
894
898
|
ce,
|
|
895
899
|
{
|
|
896
900
|
className: "ds-bottom-sheet__close",
|
|
897
901
|
variant: "ghost",
|
|
898
902
|
size: "small",
|
|
899
|
-
icon: /* @__PURE__ */ e.jsx(te, { size:
|
|
903
|
+
icon: /* @__PURE__ */ e.jsx(te, { size: A[2], strokeWidth: 1.5 }),
|
|
900
904
|
onClick: d,
|
|
901
905
|
"aria-label": "Close"
|
|
902
906
|
}
|
|
@@ -916,18 +920,18 @@ function tt({
|
|
|
916
920
|
function ps({
|
|
917
921
|
children: s,
|
|
918
922
|
title: t = "Code",
|
|
919
|
-
defaultExpanded:
|
|
923
|
+
defaultExpanded: n = !1,
|
|
920
924
|
expanded: o,
|
|
921
925
|
onToggle: a,
|
|
922
|
-
padding:
|
|
926
|
+
padding: r = "s",
|
|
923
927
|
className: i = "",
|
|
924
928
|
...l
|
|
925
929
|
}) {
|
|
926
|
-
const [m, d] =
|
|
930
|
+
const [m, d] = I(n), f = o !== void 0, p = f ? o : m, h = () => {
|
|
927
931
|
f ? a == null || a(!o) : d((b) => !b);
|
|
928
932
|
}, u = [
|
|
929
933
|
"ds-code-accordion",
|
|
930
|
-
`ds-code-accordion--${
|
|
934
|
+
`ds-code-accordion--${r}`,
|
|
931
935
|
p && "ds-code-accordion--expanded",
|
|
932
936
|
i
|
|
933
937
|
].filter(Boolean).join(" ");
|
|
@@ -944,7 +948,7 @@ function ps({
|
|
|
944
948
|
/* @__PURE__ */ e.jsx(
|
|
945
949
|
xe,
|
|
946
950
|
{
|
|
947
|
-
size:
|
|
951
|
+
size: A[2],
|
|
948
952
|
strokeWidth: 1.5,
|
|
949
953
|
className: `ds-code-accordion__icon ${p ? "ds-code-accordion__icon--expanded" : ""}`
|
|
950
954
|
}
|
|
@@ -955,28 +959,28 @@ function ps({
|
|
|
955
959
|
/* @__PURE__ */ e.jsx("div", { className: "ds-code-accordion__content", children: /* @__PURE__ */ e.jsx("div", { className: "ds-code-accordion__inner", children: /* @__PURE__ */ e.jsx("pre", { className: "ds-code-accordion__pre ds-scrollable", children: /* @__PURE__ */ e.jsx("code", { children: s }) }) }) })
|
|
956
960
|
] });
|
|
957
961
|
}
|
|
958
|
-
function
|
|
959
|
-
return t ?
|
|
962
|
+
function nt({ children: s, block: t = !1, collapsible: n = !1, title: o = "Code", defaultExpanded: a = !1, ...r }) {
|
|
963
|
+
return t ? n ? /* @__PURE__ */ e.jsx(ps, { title: o, defaultExpanded: a, ...r, children: s }) : /* @__PURE__ */ e.jsx("pre", { className: "ds-code-block ds-scrollable", ...r, children: /* @__PURE__ */ e.jsx("code", { children: s }) }) : /* @__PURE__ */ e.jsx("code", { className: "ds-code-inline", ...r, children: s });
|
|
960
964
|
}
|
|
961
|
-
function
|
|
965
|
+
function rt({ href: s, children: t, onClick: n, target: o, rel: a, ...r }) {
|
|
962
966
|
const l = o === "_blank" ? a ? `${a} noopener noreferrer` : "noopener noreferrer" : a;
|
|
963
967
|
return /* @__PURE__ */ e.jsx(
|
|
964
968
|
"a",
|
|
965
969
|
{
|
|
966
970
|
href: s,
|
|
967
971
|
className: "ds-link",
|
|
968
|
-
onClick:
|
|
972
|
+
onClick: n,
|
|
969
973
|
target: o,
|
|
970
974
|
rel: l,
|
|
971
|
-
...
|
|
975
|
+
...r,
|
|
972
976
|
children: t
|
|
973
977
|
}
|
|
974
978
|
);
|
|
975
979
|
}
|
|
976
|
-
function at({ children: s, size: t = "m", variant:
|
|
977
|
-
return /* @__PURE__ */ e.jsx("div", { className: "ds-tabs", role: "tablist", ...o, children: U.Children.map(s, (a) => U.isValidElement(a) ? U.cloneElement(a, { size: t, variant:
|
|
980
|
+
function at({ children: s, size: t = "m", variant: n = "ghost", ...o }) {
|
|
981
|
+
return /* @__PURE__ */ e.jsx("div", { className: "ds-tabs", role: "tablist", ...o, children: U.Children.map(s, (a) => U.isValidElement(a) ? U.cloneElement(a, { size: t, variant: n }) : a) });
|
|
978
982
|
}
|
|
979
|
-
function ot({ children: s, selected: t = !1, onClick:
|
|
983
|
+
function ot({ children: s, selected: t = !1, onClick: n, size: o = "m", variant: a = "ghost", disabled: r = !1, icon: i, href: l, ...m }) {
|
|
980
984
|
const d = i && !s, f = [
|
|
981
985
|
"ds-tab",
|
|
982
986
|
`ds-tab--${o}`,
|
|
@@ -989,20 +993,20 @@ function ot({ children: s, selected: t = !1, onClick: r, size: o = "m", variant:
|
|
|
989
993
|
] });
|
|
990
994
|
if (l) {
|
|
991
995
|
const h = (u) => {
|
|
992
|
-
if (
|
|
996
|
+
if (r) {
|
|
993
997
|
u.preventDefault();
|
|
994
998
|
return;
|
|
995
999
|
}
|
|
996
|
-
u.metaKey || u.ctrlKey || u.button === 1 || (u.preventDefault(),
|
|
1000
|
+
u.metaKey || u.ctrlKey || u.button === 1 || (u.preventDefault(), n == null || n(u));
|
|
997
1001
|
};
|
|
998
1002
|
return /* @__PURE__ */ e.jsx(
|
|
999
1003
|
"a",
|
|
1000
1004
|
{
|
|
1001
1005
|
role: "tab",
|
|
1002
1006
|
"aria-current": t ? "page" : void 0,
|
|
1003
|
-
"aria-disabled":
|
|
1007
|
+
"aria-disabled": r ? "true" : void 0,
|
|
1004
1008
|
className: f,
|
|
1005
|
-
href:
|
|
1009
|
+
href: r ? void 0 : l,
|
|
1006
1010
|
onClick: h,
|
|
1007
1011
|
...m,
|
|
1008
1012
|
children: p
|
|
@@ -1015,36 +1019,36 @@ function ot({ children: s, selected: t = !1, onClick: r, size: o = "m", variant:
|
|
|
1015
1019
|
role: "tab",
|
|
1016
1020
|
"aria-selected": t,
|
|
1017
1021
|
className: f,
|
|
1018
|
-
onClick:
|
|
1019
|
-
disabled:
|
|
1022
|
+
onClick: n,
|
|
1023
|
+
disabled: r,
|
|
1020
1024
|
...m,
|
|
1021
1025
|
children: p
|
|
1022
1026
|
}
|
|
1023
1027
|
);
|
|
1024
1028
|
}
|
|
1025
|
-
function it({ options: s, value: t, onChange:
|
|
1026
|
-
const
|
|
1027
|
-
if (!
|
|
1028
|
-
const u =
|
|
1029
|
+
function it({ options: s, value: t, onChange: n, size: o = "m", disabled: a = !1 }) {
|
|
1030
|
+
const r = T(null), i = T(null), [l, m] = I(!1), d = T(!1), f = T(null), p = T(null), h = () => {
|
|
1031
|
+
if (!r.current) return;
|
|
1032
|
+
const u = r.current.querySelector(`[data-value="${t}"]`);
|
|
1029
1033
|
if (!u) return;
|
|
1030
|
-
const b =
|
|
1031
|
-
i.current ? (i.current.style.transition = d.current ? "left var(--transition-normal), width var(--transition-normal)" : "none", i.current.style.left =
|
|
1032
|
-
if (!i.current || !
|
|
1033
|
-
const
|
|
1034
|
-
if (!
|
|
1035
|
-
const
|
|
1036
|
-
i.current.style.transition = "none", i.current.style.left =
|
|
1034
|
+
const b = r.current.getBoundingClientRect(), _ = u.getBoundingClientRect(), y = _.left - b.left, g = _.width;
|
|
1035
|
+
i.current ? (i.current.style.transition = d.current ? "left var(--transition-normal), width var(--transition-normal)" : "none", i.current.style.left = y + "px", i.current.style.width = g + "px", d.current = !1) : (m(!0), requestAnimationFrame(() => {
|
|
1036
|
+
if (!i.current || !r.current) return;
|
|
1037
|
+
const R = r.current.querySelector(`[data-value="${t}"]`);
|
|
1038
|
+
if (!R) return;
|
|
1039
|
+
const N = r.current.getBoundingClientRect(), $ = R.getBoundingClientRect();
|
|
1040
|
+
i.current.style.transition = "none", i.current.style.left = $.left - N.left + "px", i.current.style.width = $.width + "px";
|
|
1037
1041
|
}));
|
|
1038
1042
|
};
|
|
1039
1043
|
return p.current = h, Ve(() => {
|
|
1040
1044
|
const u = f.current !== t;
|
|
1041
1045
|
f.current = t, d.current = l && u, h();
|
|
1042
|
-
}),
|
|
1043
|
-
if (!
|
|
1046
|
+
}), L(() => {
|
|
1047
|
+
if (!r.current) return;
|
|
1044
1048
|
const u = new ResizeObserver(() => {
|
|
1045
1049
|
d.current = !1, p.current();
|
|
1046
1050
|
});
|
|
1047
|
-
return u.observe(
|
|
1051
|
+
return u.observe(r.current), () => u.disconnect();
|
|
1048
1052
|
}, []), /* @__PURE__ */ e.jsxs(
|
|
1049
1053
|
"div",
|
|
1050
1054
|
{
|
|
@@ -1053,7 +1057,7 @@ function it({ options: s, value: t, onChange: r, size: o = "m", disabled: a = !1
|
|
|
1053
1057
|
`ds-seg--${o}`,
|
|
1054
1058
|
a && "ds-seg--disabled"
|
|
1055
1059
|
].filter(Boolean).join(" "),
|
|
1056
|
-
ref:
|
|
1060
|
+
ref: r,
|
|
1057
1061
|
role: "group",
|
|
1058
1062
|
children: [
|
|
1059
1063
|
l && /* @__PURE__ */ e.jsx(
|
|
@@ -1070,7 +1074,7 @@ function it({ options: s, value: t, onChange: r, size: o = "m", disabled: a = !1
|
|
|
1070
1074
|
type: "button",
|
|
1071
1075
|
"data-value": u.value,
|
|
1072
1076
|
className: ["ds-seg__btn", t === u.value && "ds-seg__btn--active"].filter(Boolean).join(" "),
|
|
1073
|
-
onClick: () => !a &&
|
|
1077
|
+
onClick: () => !a && n(u.value),
|
|
1074
1078
|
"aria-pressed": t === u.value,
|
|
1075
1079
|
disabled: a,
|
|
1076
1080
|
children: [
|
|
@@ -1087,17 +1091,17 @@ function it({ options: s, value: t, onChange: r, size: o = "m", disabled: a = !1
|
|
|
1087
1091
|
function $e({
|
|
1088
1092
|
children: s,
|
|
1089
1093
|
title: t,
|
|
1090
|
-
defaultExpanded:
|
|
1094
|
+
defaultExpanded: n = !1,
|
|
1091
1095
|
expanded: o,
|
|
1092
1096
|
onToggle: a,
|
|
1093
|
-
padding:
|
|
1097
|
+
padding: r = "m",
|
|
1094
1098
|
...i
|
|
1095
1099
|
}) {
|
|
1096
|
-
const [l, m] =
|
|
1100
|
+
const [l, m] = I(n), d = o !== void 0, f = d ? o : l, p = () => {
|
|
1097
1101
|
d ? a == null || a(!o) : m((u) => !u);
|
|
1098
1102
|
}, h = [
|
|
1099
1103
|
"ds-accordion",
|
|
1100
|
-
`ds-accordion--${
|
|
1104
|
+
`ds-accordion--${r}`,
|
|
1101
1105
|
f && "ds-accordion--expanded"
|
|
1102
1106
|
].filter(Boolean).join(" ");
|
|
1103
1107
|
return /* @__PURE__ */ e.jsxs("div", { className: h, ...i, children: [
|
|
@@ -1113,7 +1117,7 @@ function $e({
|
|
|
1113
1117
|
/* @__PURE__ */ e.jsx(
|
|
1114
1118
|
xe,
|
|
1115
1119
|
{
|
|
1116
|
-
size:
|
|
1120
|
+
size: A[2],
|
|
1117
1121
|
strokeWidth: 1.5,
|
|
1118
1122
|
className: `ds-accordion__icon ${f ? "ds-accordion__icon--expanded" : ""}`
|
|
1119
1123
|
}
|
|
@@ -1124,61 +1128,61 @@ function $e({
|
|
|
1124
1128
|
/* @__PURE__ */ e.jsx("div", { className: "ds-accordion__content", children: /* @__PURE__ */ e.jsx("div", { className: "ds-accordion__content-inner", children: /* @__PURE__ */ e.jsx("div", { className: "ds-accordion__content-body", children: s }) }) })
|
|
1125
1129
|
] });
|
|
1126
1130
|
}
|
|
1127
|
-
const
|
|
1128
|
-
function hs(s, t,
|
|
1131
|
+
const re = 8, le = 8;
|
|
1132
|
+
function hs(s, t, n) {
|
|
1129
1133
|
const o = window.innerWidth;
|
|
1130
|
-
let a,
|
|
1134
|
+
let a, r;
|
|
1131
1135
|
switch (s) {
|
|
1132
1136
|
case "top":
|
|
1133
|
-
a = t.top -
|
|
1137
|
+
a = t.top - n.height - re, r = t.left + t.width / 2 - n.width / 2;
|
|
1134
1138
|
break;
|
|
1135
1139
|
case "bottom":
|
|
1136
|
-
a = t.bottom +
|
|
1140
|
+
a = t.bottom + re, r = t.left + t.width / 2 - n.width / 2;
|
|
1137
1141
|
break;
|
|
1138
1142
|
case "left":
|
|
1139
|
-
a = t.top + t.height / 2 -
|
|
1143
|
+
a = t.top + t.height / 2 - n.height / 2, r = t.left - n.width - re;
|
|
1140
1144
|
break;
|
|
1141
1145
|
case "right":
|
|
1142
|
-
a = t.top + t.height / 2 -
|
|
1146
|
+
a = t.top + t.height / 2 - n.height / 2, r = t.right + re;
|
|
1143
1147
|
break;
|
|
1144
1148
|
default:
|
|
1145
|
-
a = t.bottom +
|
|
1149
|
+
a = t.bottom + re, r = t.left;
|
|
1146
1150
|
}
|
|
1147
|
-
const i = Math.max(le, Math.min(o -
|
|
1151
|
+
const i = Math.max(le, Math.min(o - n.width - le, r)), l = r - i;
|
|
1148
1152
|
return { top: a, left: i, arrowOffset: l };
|
|
1149
1153
|
}
|
|
1150
|
-
function xs(s, t,
|
|
1154
|
+
function xs(s, t, n) {
|
|
1151
1155
|
const o = window.innerWidth, a = window.innerHeight;
|
|
1152
|
-
if (s.top >= t +
|
|
1153
|
-
if (a - s.bottom >= t +
|
|
1154
|
-
if (o - s.right >=
|
|
1155
|
-
if (s.left >=
|
|
1156
|
-
const
|
|
1157
|
-
return
|
|
1158
|
-
}
|
|
1159
|
-
function lt({ children: s, content: t, position:
|
|
1160
|
-
const [a,
|
|
1156
|
+
if (s.top >= t + re + le) return "top";
|
|
1157
|
+
if (a - s.bottom >= t + re + le) return "bottom";
|
|
1158
|
+
if (o - s.right >= n + re + le) return "right";
|
|
1159
|
+
if (s.left >= n + re + le) return "left";
|
|
1160
|
+
const r = Math.max(s.top, a - s.bottom, s.left, o - s.right);
|
|
1161
|
+
return r === s.top ? "top" : r === a - s.bottom ? "bottom" : r === o - s.right ? "right" : "left";
|
|
1162
|
+
}
|
|
1163
|
+
function lt({ children: s, content: t, position: n, ...o }) {
|
|
1164
|
+
const [a, r] = I(!1), [i, l] = I({ visibility: "hidden" }), [m, d] = I(n || "top"), f = T(null), p = T(null), h = T(!1), u = () => {
|
|
1161
1165
|
if (!f.current || !p.current) return;
|
|
1162
|
-
const _ = f.current.getBoundingClientRect(),
|
|
1163
|
-
d(
|
|
1166
|
+
const _ = f.current.getBoundingClientRect(), y = p.current.getBoundingClientRect(), g = n || xs(_, y.height, y.width), { top: R, left: N, arrowOffset: $ } = hs(g, _, y);
|
|
1167
|
+
d(g), l({
|
|
1164
1168
|
position: "fixed",
|
|
1165
|
-
top:
|
|
1166
|
-
left:
|
|
1169
|
+
top: R,
|
|
1170
|
+
left: N,
|
|
1167
1171
|
visibility: "visible",
|
|
1168
|
-
"--arrow-offset": `${
|
|
1172
|
+
"--arrow-offset": `${$}px`
|
|
1169
1173
|
});
|
|
1170
1174
|
};
|
|
1171
|
-
if (
|
|
1175
|
+
if (L(() => {
|
|
1172
1176
|
if (!a) return;
|
|
1173
1177
|
l({ position: "fixed", visibility: "hidden" });
|
|
1174
1178
|
const _ = requestAnimationFrame(u);
|
|
1175
1179
|
return window.addEventListener("scroll", u, !0), window.addEventListener("resize", u), () => {
|
|
1176
1180
|
cancelAnimationFrame(_), window.removeEventListener("scroll", u, !0), window.removeEventListener("resize", u);
|
|
1177
1181
|
};
|
|
1178
|
-
}, [a,
|
|
1182
|
+
}, [a, n]), L(() => {
|
|
1179
1183
|
if (!a) return;
|
|
1180
|
-
const _ = (
|
|
1181
|
-
f.current && !f.current.contains(
|
|
1184
|
+
const _ = (y) => {
|
|
1185
|
+
f.current && !f.current.contains(y.target) && r(!1);
|
|
1182
1186
|
};
|
|
1183
1187
|
return document.addEventListener("touchstart", _), () => document.removeEventListener("touchstart", _);
|
|
1184
1188
|
}, [a]), !t) return s;
|
|
@@ -1199,13 +1203,13 @@ function lt({ children: s, content: t, position: r, ...o }) {
|
|
|
1199
1203
|
ref: f,
|
|
1200
1204
|
className: "ds-tooltip-wrapper",
|
|
1201
1205
|
onMouseEnter: () => {
|
|
1202
|
-
h.current ||
|
|
1206
|
+
h.current || r(!0);
|
|
1203
1207
|
},
|
|
1204
1208
|
onMouseLeave: () => {
|
|
1205
|
-
h.current ||
|
|
1209
|
+
h.current || r(!1);
|
|
1206
1210
|
},
|
|
1207
1211
|
onTouchStart: () => {
|
|
1208
|
-
h.current = !0,
|
|
1212
|
+
h.current = !0, r((_) => !_);
|
|
1209
1213
|
},
|
|
1210
1214
|
...o,
|
|
1211
1215
|
children: [
|
|
@@ -1218,15 +1222,15 @@ function lt({ children: s, content: t, position: r, ...o }) {
|
|
|
1218
1222
|
function ct({
|
|
1219
1223
|
checked: s = !1,
|
|
1220
1224
|
onChange: t,
|
|
1221
|
-
size:
|
|
1225
|
+
size: n = "m",
|
|
1222
1226
|
disabled: o = !1,
|
|
1223
1227
|
label: a,
|
|
1224
|
-
id:
|
|
1228
|
+
id: r,
|
|
1225
1229
|
...i
|
|
1226
1230
|
}) {
|
|
1227
|
-
const l =
|
|
1231
|
+
const l = r || `toggle-${U.useId()}`, m = [
|
|
1228
1232
|
"ds-toggle",
|
|
1229
|
-
`ds-toggle--${
|
|
1233
|
+
`ds-toggle--${n}`,
|
|
1230
1234
|
o && "ds-toggle--disabled"
|
|
1231
1235
|
].filter(Boolean).join(" ");
|
|
1232
1236
|
return /* @__PURE__ */ e.jsxs("label", { className: m, htmlFor: l, children: [
|
|
@@ -1249,17 +1253,17 @@ function ct({
|
|
|
1249
1253
|
function dt({
|
|
1250
1254
|
checked: s = !1,
|
|
1251
1255
|
onChange: t,
|
|
1252
|
-
size:
|
|
1256
|
+
size: n = "m",
|
|
1253
1257
|
disabled: o = !1,
|
|
1254
1258
|
label: a,
|
|
1255
|
-
id:
|
|
1259
|
+
id: r,
|
|
1256
1260
|
...i
|
|
1257
1261
|
}) {
|
|
1258
|
-
const l =
|
|
1262
|
+
const l = r || `checkbox-${U.useId()}`, m = [
|
|
1259
1263
|
"ds-checkbox",
|
|
1260
|
-
`ds-checkbox--${
|
|
1264
|
+
`ds-checkbox--${n}`,
|
|
1261
1265
|
o && "ds-checkbox--disabled"
|
|
1262
|
-
].filter(Boolean).join(" "), d =
|
|
1266
|
+
].filter(Boolean).join(" "), d = n === "xs" ? 10 : n === "small" ? 14 : n === "large" ? 20 : 16;
|
|
1263
1267
|
return /* @__PURE__ */ e.jsxs("label", { className: m, htmlFor: l, children: [
|
|
1264
1268
|
/* @__PURE__ */ e.jsx(
|
|
1265
1269
|
"input",
|
|
@@ -1287,17 +1291,17 @@ function dt({
|
|
|
1287
1291
|
function ut({
|
|
1288
1292
|
checked: s = !1,
|
|
1289
1293
|
onChange: t,
|
|
1290
|
-
size:
|
|
1294
|
+
size: n = "m",
|
|
1291
1295
|
disabled: o = !1,
|
|
1292
1296
|
label: a,
|
|
1293
|
-
name:
|
|
1297
|
+
name: r,
|
|
1294
1298
|
value: i,
|
|
1295
1299
|
id: l,
|
|
1296
1300
|
...m
|
|
1297
1301
|
}) {
|
|
1298
1302
|
const d = l || `radio-${U.useId()}`, f = [
|
|
1299
1303
|
"ds-radio",
|
|
1300
|
-
`ds-radio--${
|
|
1304
|
+
`ds-radio--${n}`,
|
|
1301
1305
|
o && "ds-radio--disabled"
|
|
1302
1306
|
].filter(Boolean).join(" ");
|
|
1303
1307
|
return /* @__PURE__ */ e.jsxs("label", { className: f, htmlFor: d, children: [
|
|
@@ -1310,7 +1314,7 @@ function ut({
|
|
|
1310
1314
|
checked: s,
|
|
1311
1315
|
onChange: (p) => t == null ? void 0 : t(p.target.checked),
|
|
1312
1316
|
disabled: o,
|
|
1313
|
-
name:
|
|
1317
|
+
name: r,
|
|
1314
1318
|
value: i,
|
|
1315
1319
|
...m
|
|
1316
1320
|
}
|
|
@@ -1319,25 +1323,25 @@ function ut({
|
|
|
1319
1323
|
a && /* @__PURE__ */ e.jsx("span", { className: "ds-radio__label", children: a })
|
|
1320
1324
|
] });
|
|
1321
1325
|
}
|
|
1322
|
-
function bs({ width: s, height: t, shape:
|
|
1326
|
+
function bs({ width: s, height: t, shape: n = "rect", aspectRatio: o, className: a = "", style: r = {}, ...i }) {
|
|
1323
1327
|
return /* @__PURE__ */ e.jsx(
|
|
1324
1328
|
"span",
|
|
1325
1329
|
{
|
|
1326
|
-
className: ["ds-skeleton", `ds-skeleton--${
|
|
1327
|
-
style: { width: s, height: t, aspectRatio: o, ...
|
|
1330
|
+
className: ["ds-skeleton", `ds-skeleton--${n}`, a].filter(Boolean).join(" "),
|
|
1331
|
+
style: { width: s, height: t, aspectRatio: o, ...r },
|
|
1328
1332
|
"aria-hidden": "true",
|
|
1329
1333
|
...i
|
|
1330
1334
|
}
|
|
1331
1335
|
);
|
|
1332
1336
|
}
|
|
1333
|
-
function _s({ lines: s = 1, lastLineWidth: t = "70%", gap:
|
|
1337
|
+
function _s({ lines: s = 1, lastLineWidth: t = "70%", gap: n, className: o = "", style: a = {}, ...r }) {
|
|
1334
1338
|
return /* @__PURE__ */ e.jsx(
|
|
1335
1339
|
"span",
|
|
1336
1340
|
{
|
|
1337
1341
|
className: ["ds-skeleton-text", o].filter(Boolean).join(" "),
|
|
1338
|
-
style: { gap:
|
|
1342
|
+
style: { gap: n, ...a },
|
|
1339
1343
|
"aria-hidden": "true",
|
|
1340
|
-
...
|
|
1344
|
+
...r,
|
|
1341
1345
|
children: Array.from({ length: s }, (i, l) => /* @__PURE__ */ e.jsx(
|
|
1342
1346
|
"span",
|
|
1343
1347
|
{
|
|
@@ -1352,8 +1356,8 @@ function _s({ lines: s = 1, lastLineWidth: t = "70%", gap: r, className: o = "",
|
|
|
1352
1356
|
bs.Text = _s;
|
|
1353
1357
|
function js(s) {
|
|
1354
1358
|
let t = 2166136261;
|
|
1355
|
-
for (let
|
|
1356
|
-
t ^= s.charCodeAt(
|
|
1359
|
+
for (let n = 0; n < s.length; n++)
|
|
1360
|
+
t ^= s.charCodeAt(n), t = Math.imul(t, 16777619) >>> 0;
|
|
1357
1361
|
return t % 360;
|
|
1358
1362
|
}
|
|
1359
1363
|
function vs(s) {
|
|
@@ -1361,32 +1365,32 @@ function vs(s) {
|
|
|
1361
1365
|
const t = s.trim().split(/\s+/);
|
|
1362
1366
|
return t.length >= 2 ? (t[0][0] + t[1][0]).toUpperCase() : s[0].toUpperCase();
|
|
1363
1367
|
}
|
|
1364
|
-
function ft({ seed: s, icon: t, src:
|
|
1365
|
-
const l = js(s ?? ""), [m, d] =
|
|
1368
|
+
function ft({ seed: s, icon: t, src: n, size: o = 32, className: a = "", style: r = {}, ...i }) {
|
|
1369
|
+
const l = js(s ?? ""), [m, d] = I(!1), f = t ?? /* @__PURE__ */ e.jsx("span", { className: "ds-avatar__initials", children: vs(s) });
|
|
1366
1370
|
return /* @__PURE__ */ e.jsx(
|
|
1367
1371
|
"div",
|
|
1368
1372
|
{
|
|
1369
1373
|
className: ["ds-avatar", a].filter(Boolean).join(" "),
|
|
1370
|
-
style: { width: o, height: o, "--ds-avatar-h": l, ...
|
|
1374
|
+
style: { width: o, height: o, "--ds-avatar-h": l, ...r },
|
|
1371
1375
|
"aria-hidden": "true",
|
|
1372
1376
|
...i,
|
|
1373
|
-
children:
|
|
1377
|
+
children: n && !m ? /* @__PURE__ */ e.jsx("img", { src: n, alt: "", onError: () => d(!0) }) : f
|
|
1374
1378
|
}
|
|
1375
1379
|
);
|
|
1376
1380
|
}
|
|
1377
1381
|
function mt({
|
|
1378
1382
|
children: s,
|
|
1379
1383
|
size: t = "compact",
|
|
1380
|
-
stickyTop:
|
|
1384
|
+
stickyTop: n,
|
|
1381
1385
|
maxHeight: o,
|
|
1382
1386
|
className: a = "",
|
|
1383
|
-
style:
|
|
1387
|
+
style: r = {},
|
|
1384
1388
|
...i
|
|
1385
1389
|
}) {
|
|
1386
1390
|
const l = {
|
|
1387
1391
|
...o ? { maxHeight: o } : {},
|
|
1388
|
-
...
|
|
1389
|
-
...
|
|
1392
|
+
...n !== void 0 ? { "--ds-table-sticky-top": typeof n == "number" ? `${n}px` : n } : {},
|
|
1393
|
+
...r
|
|
1390
1394
|
};
|
|
1391
1395
|
return /* @__PURE__ */ e.jsx(
|
|
1392
1396
|
"div",
|
|
@@ -1410,17 +1414,17 @@ function pt({ children: s, ...t }) {
|
|
|
1410
1414
|
function ht({ children: s, ...t }) {
|
|
1411
1415
|
return /* @__PURE__ */ e.jsx("tbody", { ...t, children: s });
|
|
1412
1416
|
}
|
|
1413
|
-
function xt({ children: s, interactive: t, selected:
|
|
1417
|
+
function xt({ children: s, interactive: t, selected: n, subheader: o, exiting: a, updated: r, className: i = "", onClick: l, ...m }) {
|
|
1414
1418
|
return /* @__PURE__ */ e.jsx(
|
|
1415
1419
|
"tr",
|
|
1416
1420
|
{
|
|
1417
1421
|
className: [
|
|
1418
1422
|
"ds-table-row",
|
|
1419
1423
|
t || l ? "ds-table-row--interactive" : "",
|
|
1420
|
-
|
|
1424
|
+
n ? "ds-table-row--selected" : "",
|
|
1421
1425
|
o ? "ds-table-row--subheader" : "",
|
|
1422
1426
|
a ? "ds-table-row--exiting" : "",
|
|
1423
|
-
|
|
1427
|
+
r ? "ds-table-row--updated" : "",
|
|
1424
1428
|
i
|
|
1425
1429
|
].filter(Boolean).join(" "),
|
|
1426
1430
|
onClick: l,
|
|
@@ -1429,20 +1433,20 @@ function xt({ children: s, interactive: t, selected: r, subheader: o, exiting: a
|
|
|
1429
1433
|
}
|
|
1430
1434
|
);
|
|
1431
1435
|
}
|
|
1432
|
-
function bt({ children: s, colSpan: t = 999, ...
|
|
1433
|
-
return /* @__PURE__ */ e.jsx("tr", { className: "ds-table-row ds-table-row--subheader", ...
|
|
1436
|
+
function bt({ children: s, colSpan: t = 999, ...n }) {
|
|
1437
|
+
return /* @__PURE__ */ e.jsx("tr", { className: "ds-table-row ds-table-row--subheader", ...n, children: /* @__PURE__ */ e.jsx("td", { colSpan: t, children: s }) });
|
|
1434
1438
|
}
|
|
1435
|
-
function _t({ children: s, align: t = "left", sortDir:
|
|
1436
|
-
const m = !!o ||
|
|
1439
|
+
function _t({ children: s, align: t = "left", sortDir: n, onSort: o, width: a, className: r = "", style: i = {}, ...l }) {
|
|
1440
|
+
const m = !!o || n !== void 0, d = n === "asc" ? He : n === "desc" ? xe : Ke;
|
|
1437
1441
|
return /* @__PURE__ */ e.jsx(
|
|
1438
1442
|
"th",
|
|
1439
1443
|
{
|
|
1440
1444
|
className: [
|
|
1441
1445
|
"ds-th",
|
|
1442
1446
|
m ? "ds-th--sortable" : "",
|
|
1443
|
-
|
|
1447
|
+
n ? "ds-th--sorted" : "",
|
|
1444
1448
|
t !== "left" ? `ds-table-cell--${t}` : "",
|
|
1445
|
-
|
|
1449
|
+
r
|
|
1446
1450
|
].filter(Boolean).join(" "),
|
|
1447
1451
|
onClick: o,
|
|
1448
1452
|
style: { width: a, ...i },
|
|
@@ -1454,17 +1458,17 @@ function _t({ children: s, align: t = "left", sortDir: r, onSort: o, width: a, c
|
|
|
1454
1458
|
}
|
|
1455
1459
|
);
|
|
1456
1460
|
}
|
|
1457
|
-
function jt({ children: s, align: t = "left", secondary:
|
|
1461
|
+
function jt({ children: s, align: t = "left", secondary: n, muted: o, truncate: a, nowrap: r, className: i = "", ...l }) {
|
|
1458
1462
|
return /* @__PURE__ */ e.jsx(
|
|
1459
1463
|
"td",
|
|
1460
1464
|
{
|
|
1461
1465
|
className: [
|
|
1462
1466
|
"ds-td",
|
|
1463
1467
|
t !== "left" ? `ds-table-cell--${t}` : "",
|
|
1464
|
-
|
|
1468
|
+
n ? "ds-table-cell--secondary" : "",
|
|
1465
1469
|
o ? "ds-table-cell--muted" : "",
|
|
1466
1470
|
a ? "ds-table-cell--truncate" : "",
|
|
1467
|
-
|
|
1471
|
+
r ? "ds-table-cell--nowrap" : "",
|
|
1468
1472
|
i
|
|
1469
1473
|
].filter(Boolean).join(" "),
|
|
1470
1474
|
...l,
|
|
@@ -1475,21 +1479,21 @@ function jt({ children: s, align: t = "left", secondary: r, muted: o, truncate:
|
|
|
1475
1479
|
function vt({
|
|
1476
1480
|
icon: s,
|
|
1477
1481
|
title: t,
|
|
1478
|
-
description:
|
|
1482
|
+
description: n,
|
|
1479
1483
|
action: o,
|
|
1480
1484
|
size: a = "m",
|
|
1481
|
-
className:
|
|
1485
|
+
className: r = "",
|
|
1482
1486
|
...i
|
|
1483
1487
|
}) {
|
|
1484
1488
|
return /* @__PURE__ */ e.jsxs(
|
|
1485
1489
|
"div",
|
|
1486
1490
|
{
|
|
1487
|
-
className: ["ds-empty-state", `ds-empty-state--${a}`,
|
|
1491
|
+
className: ["ds-empty-state", `ds-empty-state--${a}`, r].filter(Boolean).join(" "),
|
|
1488
1492
|
...i,
|
|
1489
1493
|
children: [
|
|
1490
1494
|
s && /* @__PURE__ */ e.jsx("div", { className: "ds-empty-state__icon", children: s }),
|
|
1491
1495
|
/* @__PURE__ */ e.jsx("div", { className: "ds-empty-state__title", children: t }),
|
|
1492
|
-
|
|
1496
|
+
n && /* @__PURE__ */ e.jsx("div", { className: "ds-empty-state__description", children: n }),
|
|
1493
1497
|
o && /* @__PURE__ */ e.jsx("div", { className: "ds-empty-state__action", children: o })
|
|
1494
1498
|
]
|
|
1495
1499
|
}
|
|
@@ -1498,21 +1502,21 @@ function vt({
|
|
|
1498
1502
|
function Nt({
|
|
1499
1503
|
label: s,
|
|
1500
1504
|
hint: t,
|
|
1501
|
-
error:
|
|
1505
|
+
error: n,
|
|
1502
1506
|
required: o = !1,
|
|
1503
1507
|
disabled: a = !1,
|
|
1504
|
-
htmlFor:
|
|
1508
|
+
htmlFor: r,
|
|
1505
1509
|
children: i,
|
|
1506
1510
|
className: l = "",
|
|
1507
1511
|
style: m,
|
|
1508
1512
|
...d
|
|
1509
1513
|
}) {
|
|
1510
|
-
const f = U.useId(), p =
|
|
1514
|
+
const f = U.useId(), p = r ?? f, h = `${p}-hint`, u = `${p}-error`;
|
|
1511
1515
|
return /* @__PURE__ */ e.jsxs(
|
|
1512
1516
|
"div",
|
|
1513
1517
|
{
|
|
1514
1518
|
className: `ds-field${l ? ` ${l}` : ""}`,
|
|
1515
|
-
"data-state":
|
|
1519
|
+
"data-state": n ? "error" : void 0,
|
|
1516
1520
|
"data-required": o ? "" : void 0,
|
|
1517
1521
|
"data-disabled": a ? "" : void 0,
|
|
1518
1522
|
style: m,
|
|
@@ -1520,14 +1524,14 @@ function Nt({
|
|
|
1520
1524
|
children: [
|
|
1521
1525
|
s && /* @__PURE__ */ e.jsx("label", { className: "ds-field-label", htmlFor: p, children: s }),
|
|
1522
1526
|
/* @__PURE__ */ e.jsx("div", { className: "ds-field-control", children: i }),
|
|
1523
|
-
t && !
|
|
1524
|
-
|
|
1527
|
+
t && !n && /* @__PURE__ */ e.jsx("p", { className: "ds-field-hint", id: h, children: t }),
|
|
1528
|
+
n && /* @__PURE__ */ e.jsx("p", { className: "ds-field-error", id: u, role: "alert", children: n })
|
|
1525
1529
|
]
|
|
1526
1530
|
}
|
|
1527
1531
|
);
|
|
1528
1532
|
}
|
|
1529
|
-
function wt({ label: s, value: t, delta:
|
|
1530
|
-
const m =
|
|
1533
|
+
function wt({ label: s, value: t, delta: n, size: o = "m", inline: a = !1, className: r = "", style: i, ...l }) {
|
|
1534
|
+
const m = n != null && n.startsWith("+") ? "up" : n != null && n.startsWith("-") ? "down" : "neutral";
|
|
1531
1535
|
return /* @__PURE__ */ e.jsxs(
|
|
1532
1536
|
"div",
|
|
1533
1537
|
{
|
|
@@ -1535,14 +1539,14 @@ function wt({ label: s, value: t, delta: r, size: o = "m", inline: a = !1, class
|
|
|
1535
1539
|
"ds-stat",
|
|
1536
1540
|
`ds-stat--${o}`,
|
|
1537
1541
|
a && "ds-stat--inline",
|
|
1538
|
-
|
|
1542
|
+
r
|
|
1539
1543
|
].filter(Boolean).join(" "),
|
|
1540
1544
|
style: i,
|
|
1541
1545
|
...l,
|
|
1542
1546
|
children: [
|
|
1543
1547
|
s && /* @__PURE__ */ e.jsx("span", { className: "ds-stat-label", children: s }),
|
|
1544
1548
|
t != null && /* @__PURE__ */ e.jsx("span", { className: "ds-stat-value", children: t }),
|
|
1545
|
-
|
|
1549
|
+
n != null && /* @__PURE__ */ e.jsx("span", { className: `ds-stat-delta ds-stat-delta--${m}`, children: n })
|
|
1546
1550
|
]
|
|
1547
1551
|
}
|
|
1548
1552
|
);
|
|
@@ -1550,19 +1554,19 @@ function wt({ label: s, value: t, delta: r, size: o = "m", inline: a = !1, class
|
|
|
1550
1554
|
function gt({
|
|
1551
1555
|
children: s,
|
|
1552
1556
|
separator: t = "/",
|
|
1553
|
-
"aria-label":
|
|
1557
|
+
"aria-label": n = "Breadcrumb",
|
|
1554
1558
|
className: o = "",
|
|
1555
1559
|
style: a,
|
|
1556
|
-
...
|
|
1560
|
+
...r
|
|
1557
1561
|
}) {
|
|
1558
1562
|
const i = U.Children.toArray(s).filter(Boolean);
|
|
1559
1563
|
return /* @__PURE__ */ e.jsx(
|
|
1560
1564
|
"nav",
|
|
1561
1565
|
{
|
|
1562
1566
|
className: `ds-breadcrumb${o ? ` ${o}` : ""}`,
|
|
1563
|
-
"aria-label":
|
|
1567
|
+
"aria-label": n,
|
|
1564
1568
|
style: a,
|
|
1565
|
-
...
|
|
1569
|
+
...r,
|
|
1566
1570
|
children: /* @__PURE__ */ e.jsx("ol", { className: "ds-breadcrumb-list", children: i.map((l, m) => /* @__PURE__ */ e.jsxs("li", { className: "ds-breadcrumb-item", children: [
|
|
1567
1571
|
l,
|
|
1568
1572
|
m < i.length - 1 && /* @__PURE__ */ e.jsx("span", { className: "ds-breadcrumb-sep", "aria-hidden": "true", children: t })
|
|
@@ -1573,10 +1577,10 @@ function gt({
|
|
|
1573
1577
|
function yt({
|
|
1574
1578
|
page: s,
|
|
1575
1579
|
total: t,
|
|
1576
|
-
onChange:
|
|
1580
|
+
onChange: n,
|
|
1577
1581
|
siblings: o = 1,
|
|
1578
1582
|
"aria-label": a = "Pagination",
|
|
1579
|
-
className:
|
|
1583
|
+
className: r = "",
|
|
1580
1584
|
style: i,
|
|
1581
1585
|
...l
|
|
1582
1586
|
}) {
|
|
@@ -1584,7 +1588,7 @@ function yt({
|
|
|
1584
1588
|
return /* @__PURE__ */ e.jsxs(
|
|
1585
1589
|
"nav",
|
|
1586
1590
|
{
|
|
1587
|
-
className: `ds-pagination${
|
|
1591
|
+
className: `ds-pagination${r ? ` ${r}` : ""}`,
|
|
1588
1592
|
"aria-label": a,
|
|
1589
1593
|
style: i,
|
|
1590
1594
|
...l,
|
|
@@ -1593,7 +1597,7 @@ function yt({
|
|
|
1593
1597
|
"button",
|
|
1594
1598
|
{
|
|
1595
1599
|
className: "ds-pagination-arrow",
|
|
1596
|
-
onClick: () =>
|
|
1600
|
+
onClick: () => n == null ? void 0 : n(s - 1),
|
|
1597
1601
|
disabled: s <= 1,
|
|
1598
1602
|
"aria-label": "Previous page",
|
|
1599
1603
|
children: /* @__PURE__ */ e.jsx(Xe, { size: 16 })
|
|
@@ -1604,7 +1608,7 @@ function yt({
|
|
|
1604
1608
|
"button",
|
|
1605
1609
|
{
|
|
1606
1610
|
className: `ds-pagination-page${d === s ? " ds-pagination-page--current" : ""}`,
|
|
1607
|
-
onClick: () => d !== s && (
|
|
1611
|
+
onClick: () => d !== s && (n == null ? void 0 : n(d)),
|
|
1608
1612
|
"aria-current": d === s ? "page" : void 0,
|
|
1609
1613
|
"aria-label": `Page ${d}`,
|
|
1610
1614
|
children: d
|
|
@@ -1616,7 +1620,7 @@ function yt({
|
|
|
1616
1620
|
"button",
|
|
1617
1621
|
{
|
|
1618
1622
|
className: "ds-pagination-arrow",
|
|
1619
|
-
onClick: () =>
|
|
1623
|
+
onClick: () => n == null ? void 0 : n(s + 1),
|
|
1620
1624
|
disabled: s >= t,
|
|
1621
1625
|
"aria-label": "Next page",
|
|
1622
1626
|
children: /* @__PURE__ */ e.jsx(Ge, { size: 16 })
|
|
@@ -1626,36 +1630,38 @@ function yt({
|
|
|
1626
1630
|
}
|
|
1627
1631
|
);
|
|
1628
1632
|
}
|
|
1629
|
-
function Ns(s, t,
|
|
1633
|
+
function Ns(s, t, n) {
|
|
1630
1634
|
if (t <= 7) return Array.from({ length: t }, (i, l) => l + 1);
|
|
1631
|
-
const o = Math.max(2, s -
|
|
1632
|
-
o > 2 &&
|
|
1633
|
-
for (let i = o; i <= a; i++)
|
|
1634
|
-
return a < t - 1 &&
|
|
1635
|
+
const o = Math.max(2, s - n), a = Math.min(t - 1, s + n), r = [1];
|
|
1636
|
+
o > 2 && r.push("…");
|
|
1637
|
+
for (let i = o; i <= a; i++) r.push(i);
|
|
1638
|
+
return a < t - 1 && r.push("…"), r.push(t), r;
|
|
1635
1639
|
}
|
|
1636
1640
|
const ws = 200;
|
|
1637
1641
|
function kt({
|
|
1638
1642
|
children: s,
|
|
1639
1643
|
title: t,
|
|
1640
|
-
onClose:
|
|
1644
|
+
onClose: n,
|
|
1641
1645
|
side: o = "right",
|
|
1642
1646
|
...a
|
|
1643
1647
|
}) {
|
|
1644
|
-
const
|
|
1645
|
-
!
|
|
1646
|
-
m(!1),
|
|
1648
|
+
const r = T(null), i = U.useId(), [l, m] = I(!1), d = () => {
|
|
1649
|
+
!n || l || (m(!0), setTimeout(() => {
|
|
1650
|
+
m(!1), n();
|
|
1647
1651
|
}, ws));
|
|
1648
1652
|
};
|
|
1649
|
-
|
|
1653
|
+
L(() => {
|
|
1650
1654
|
const u = (_) => {
|
|
1651
1655
|
_.key === "Escape" && d();
|
|
1652
1656
|
}, b = (_) => {
|
|
1653
|
-
|
|
1657
|
+
var g, R, N;
|
|
1658
|
+
const y = ((R = (g = _.composedPath) == null ? void 0 : g.call(_)) == null ? void 0 : R[0]) ?? _.target;
|
|
1659
|
+
r.current && !r.current.contains(y) && !((N = y.closest) != null && N.call(y, "[data-ds-portal]")) && d();
|
|
1654
1660
|
};
|
|
1655
1661
|
return document.addEventListener("keydown", u), document.addEventListener("mousedown", b), () => {
|
|
1656
1662
|
document.removeEventListener("keydown", u), document.removeEventListener("mousedown", b);
|
|
1657
1663
|
};
|
|
1658
|
-
}, [
|
|
1664
|
+
}, [n, l]);
|
|
1659
1665
|
const f = U.Children.toArray(s), p = f.find((u) => (u == null ? void 0 : u.type) === Be), h = f.filter((u) => (u == null ? void 0 : u.type) !== Be);
|
|
1660
1666
|
return /* @__PURE__ */ e.jsx(
|
|
1661
1667
|
"div",
|
|
@@ -1667,14 +1673,14 @@ function kt({
|
|
|
1667
1673
|
{
|
|
1668
1674
|
className: ["ds-drawer", l && "ds-drawer--closing"].filter(Boolean).join(" "),
|
|
1669
1675
|
"data-side": o,
|
|
1670
|
-
ref:
|
|
1676
|
+
ref: r,
|
|
1671
1677
|
role: "dialog",
|
|
1672
1678
|
"aria-modal": "true",
|
|
1673
1679
|
"aria-labelledby": t ? i : void 0,
|
|
1674
1680
|
children: [
|
|
1675
1681
|
/* @__PURE__ */ e.jsxs("header", { className: "ds-drawer-header", children: [
|
|
1676
1682
|
t && /* @__PURE__ */ e.jsx("h3", { id: i, className: "ds-drawer-title", children: t }),
|
|
1677
|
-
|
|
1683
|
+
n && /* @__PURE__ */ e.jsx("button", { className: "ds-drawer-close", onClick: d, "aria-label": "Close drawer", children: /* @__PURE__ */ e.jsx(te, { size: A[2], strokeWidth: 1.5 }) })
|
|
1678
1684
|
] }),
|
|
1679
1685
|
/* @__PURE__ */ e.jsx("div", { className: "ds-drawer-body ds-scrollable", children: h }),
|
|
1680
1686
|
p
|
|
@@ -1696,13 +1702,13 @@ const gs = {
|
|
|
1696
1702
|
function Et({
|
|
1697
1703
|
children: s,
|
|
1698
1704
|
variant: t = "info",
|
|
1699
|
-
action:
|
|
1705
|
+
action: n,
|
|
1700
1706
|
onAction: o,
|
|
1701
1707
|
onDismiss: a,
|
|
1702
|
-
role:
|
|
1708
|
+
role: r,
|
|
1703
1709
|
...i
|
|
1704
1710
|
}) {
|
|
1705
|
-
const l = gs[t], m =
|
|
1711
|
+
const l = gs[t], m = r || (t === "error" ? "alert" : "status");
|
|
1706
1712
|
return /* @__PURE__ */ e.jsxs(
|
|
1707
1713
|
"div",
|
|
1708
1714
|
{
|
|
@@ -1710,15 +1716,15 @@ function Et({
|
|
|
1710
1716
|
role: m,
|
|
1711
1717
|
...i,
|
|
1712
1718
|
children: [
|
|
1713
|
-
l && /* @__PURE__ */ e.jsx("span", { className: "ds-banner-icon", "aria-hidden": "true", children: /* @__PURE__ */ e.jsx(l, { size:
|
|
1719
|
+
l && /* @__PURE__ */ e.jsx("span", { className: "ds-banner-icon", "aria-hidden": "true", children: /* @__PURE__ */ e.jsx(l, { size: A[2], strokeWidth: 1.5 }) }),
|
|
1714
1720
|
/* @__PURE__ */ e.jsx("span", { className: "ds-banner-text", children: s }),
|
|
1715
|
-
|
|
1721
|
+
n && /* @__PURE__ */ e.jsx(
|
|
1716
1722
|
"button",
|
|
1717
1723
|
{
|
|
1718
1724
|
type: "button",
|
|
1719
1725
|
className: "ds-banner-action",
|
|
1720
1726
|
onClick: o,
|
|
1721
|
-
children:
|
|
1727
|
+
children: n
|
|
1722
1728
|
}
|
|
1723
1729
|
),
|
|
1724
1730
|
a && /* @__PURE__ */ e.jsx(
|
|
@@ -1728,7 +1734,7 @@ function Et({
|
|
|
1728
1734
|
className: "ds-banner-dismiss",
|
|
1729
1735
|
onClick: a,
|
|
1730
1736
|
"aria-label": "Dismiss",
|
|
1731
|
-
children: /* @__PURE__ */ e.jsx(te, { size:
|
|
1737
|
+
children: /* @__PURE__ */ e.jsx(te, { size: A[2], strokeWidth: 1.5 })
|
|
1732
1738
|
}
|
|
1733
1739
|
)
|
|
1734
1740
|
]
|
|
@@ -1738,97 +1744,97 @@ function Et({
|
|
|
1738
1744
|
function $t({
|
|
1739
1745
|
trigger: s,
|
|
1740
1746
|
items: t = [],
|
|
1741
|
-
open:
|
|
1747
|
+
open: n,
|
|
1742
1748
|
onOpenChange: o,
|
|
1743
1749
|
align: a = "left",
|
|
1744
|
-
className:
|
|
1750
|
+
className: r = "",
|
|
1745
1751
|
style: i,
|
|
1746
1752
|
...l
|
|
1747
1753
|
}) {
|
|
1748
|
-
const [m, d] =
|
|
1754
|
+
const [m, d] = I(!1), [f, p] = I(!1), h = n !== void 0, u = h ? n : m, b = T(null), _ = T(null), y = T(null), g = T(null), [R, N] = I({}), $ = T(null), P = 150, B = () => {
|
|
1749
1755
|
if (h)
|
|
1750
1756
|
o == null || o(!1);
|
|
1751
1757
|
else {
|
|
1752
1758
|
if (f) return;
|
|
1753
|
-
p(!0),
|
|
1759
|
+
p(!0), $.current = setTimeout(() => {
|
|
1754
1760
|
d(!1), p(!1);
|
|
1755
|
-
},
|
|
1761
|
+
}, P);
|
|
1756
1762
|
}
|
|
1757
1763
|
}, q = () => {
|
|
1758
1764
|
const x = !u;
|
|
1759
|
-
h ? o == null || o(x) : x ? (clearTimeout(
|
|
1765
|
+
h ? o == null || o(x) : x ? (clearTimeout($.current), p(!1), d(!0)) : B();
|
|
1760
1766
|
}, H = () => {
|
|
1761
|
-
u || (h ? o == null || o(!0) : (clearTimeout(
|
|
1767
|
+
u || (h ? o == null || o(!0) : (clearTimeout($.current), p(!1), d(!0)));
|
|
1762
1768
|
};
|
|
1763
|
-
|
|
1769
|
+
L(() => () => clearTimeout($.current), []), L(() => {
|
|
1764
1770
|
if (!u) return;
|
|
1765
|
-
const x = 300,
|
|
1771
|
+
const x = 300, w = () => {
|
|
1766
1772
|
var G;
|
|
1767
|
-
const
|
|
1768
|
-
if (
|
|
1769
|
-
const M = window.innerHeight -
|
|
1770
|
-
|
|
1771
|
-
a === "right" ? K ? { bottom: window.innerHeight -
|
|
1773
|
+
const S = (G = b.current) == null ? void 0 : G.getBoundingClientRect();
|
|
1774
|
+
if (!S) return;
|
|
1775
|
+
const M = window.innerHeight - S.bottom, K = M < x + 8 && S.top > M;
|
|
1776
|
+
N(
|
|
1777
|
+
a === "right" ? K ? { bottom: window.innerHeight - S.top + 4, top: "auto", right: window.innerWidth - S.right } : { top: S.bottom + 4, bottom: "auto", right: window.innerWidth - S.right } : K ? { bottom: window.innerHeight - S.top + 4, top: "auto", left: S.left } : { top: S.bottom + 4, bottom: "auto", left: S.left }
|
|
1772
1778
|
);
|
|
1773
1779
|
};
|
|
1774
|
-
return
|
|
1775
|
-
window.removeEventListener("scroll",
|
|
1780
|
+
return w(), window.addEventListener("scroll", w, !0), window.addEventListener("resize", w), () => {
|
|
1781
|
+
window.removeEventListener("scroll", w, !0), window.removeEventListener("resize", w);
|
|
1776
1782
|
};
|
|
1777
1783
|
}, [u, a]);
|
|
1778
1784
|
const F = () => {
|
|
1779
|
-
var
|
|
1780
|
-
const x = (
|
|
1785
|
+
var w;
|
|
1786
|
+
const x = (w = y.current) == null ? void 0 : w.querySelector(
|
|
1781
1787
|
'button:not([disabled]), [href], [tabindex]:not([tabindex="-1"]), input, select, textarea'
|
|
1782
1788
|
);
|
|
1783
1789
|
x == null || x.focus();
|
|
1784
1790
|
};
|
|
1785
|
-
|
|
1791
|
+
L(() => {
|
|
1786
1792
|
if (!u) return;
|
|
1787
|
-
const x = (
|
|
1793
|
+
const x = (S) => {
|
|
1788
1794
|
var M, K;
|
|
1789
|
-
!((M = b.current) != null && M.contains(
|
|
1790
|
-
},
|
|
1791
|
-
|
|
1795
|
+
!((M = b.current) != null && M.contains(S.target)) && !((K = _.current) != null && K.contains(S.target)) && B();
|
|
1796
|
+
}, w = (S) => {
|
|
1797
|
+
S.key === "Escape" && (B(), F());
|
|
1792
1798
|
};
|
|
1793
|
-
return document.addEventListener("mousedown", x), document.addEventListener("keydown",
|
|
1794
|
-
document.removeEventListener("mousedown", x), document.removeEventListener("keydown",
|
|
1799
|
+
return document.addEventListener("mousedown", x), document.addEventListener("keydown", w), () => {
|
|
1800
|
+
document.removeEventListener("mousedown", x), document.removeEventListener("keydown", w);
|
|
1795
1801
|
};
|
|
1796
|
-
}, [u]),
|
|
1797
|
-
if (!u || !
|
|
1798
|
-
const x = v(),
|
|
1799
|
-
|
|
1802
|
+
}, [u]), L(() => {
|
|
1803
|
+
if (!u || !g.current || !_.current) return;
|
|
1804
|
+
const x = v(), w = g.current === "last" ? x[x.length - 1] : x[0];
|
|
1805
|
+
w == null || w.focus(), g.current = null;
|
|
1800
1806
|
}, [u]);
|
|
1801
1807
|
const v = () => _.current ? [..._.current.querySelectorAll(
|
|
1802
1808
|
'button:not([disabled]), a[href]:not([aria-disabled="true"]), [tabindex]:not([tabindex="-1"])'
|
|
1803
1809
|
)] : [], C = (x) => {
|
|
1804
|
-
var
|
|
1810
|
+
var w, S;
|
|
1805
1811
|
if (x.key === "ArrowDown")
|
|
1806
|
-
x.preventDefault(), u ? (
|
|
1812
|
+
x.preventDefault(), u ? (w = v()[0]) == null || w.focus() : (g.current = "first", H());
|
|
1807
1813
|
else if (x.key === "ArrowUp")
|
|
1808
1814
|
if (x.preventDefault(), !u)
|
|
1809
|
-
|
|
1815
|
+
g.current = "last", H();
|
|
1810
1816
|
else {
|
|
1811
1817
|
const M = v();
|
|
1812
|
-
(
|
|
1818
|
+
(S = M[M.length - 1]) == null || S.focus();
|
|
1813
1819
|
}
|
|
1814
1820
|
}, X = (x) => {
|
|
1815
|
-
var M, K, G,
|
|
1816
|
-
const
|
|
1821
|
+
var M, K, G, E;
|
|
1822
|
+
const w = v(), S = w.findIndex((c) => c === document.activeElement);
|
|
1817
1823
|
switch (x.key) {
|
|
1818
1824
|
case "ArrowDown":
|
|
1819
|
-
x.preventDefault(), (M =
|
|
1825
|
+
x.preventDefault(), (M = w[Math.min(S + 1, w.length - 1)]) == null || M.focus();
|
|
1820
1826
|
break;
|
|
1821
1827
|
case "ArrowUp":
|
|
1822
|
-
x.preventDefault(),
|
|
1828
|
+
x.preventDefault(), S <= 0 ? F() : (K = w[S - 1]) == null || K.focus();
|
|
1823
1829
|
break;
|
|
1824
1830
|
case "Home":
|
|
1825
|
-
x.preventDefault(), (G =
|
|
1831
|
+
x.preventDefault(), (G = w[0]) == null || G.focus();
|
|
1826
1832
|
break;
|
|
1827
1833
|
case "End":
|
|
1828
|
-
x.preventDefault(), (
|
|
1834
|
+
x.preventDefault(), (E = w[w.length - 1]) == null || E.focus();
|
|
1829
1835
|
break;
|
|
1830
1836
|
case "Tab":
|
|
1831
|
-
|
|
1837
|
+
B();
|
|
1832
1838
|
break;
|
|
1833
1839
|
}
|
|
1834
1840
|
}, V = u && /* @__PURE__ */ e.jsx(
|
|
@@ -1842,17 +1848,17 @@ function $t({
|
|
|
1842
1848
|
`ds-dropdown__menu--${a}`,
|
|
1843
1849
|
f && "ds-dropdown__menu--closing"
|
|
1844
1850
|
].filter(Boolean).join(" "),
|
|
1845
|
-
style:
|
|
1851
|
+
style: R,
|
|
1846
1852
|
onKeyDown: X,
|
|
1847
|
-
children: t.map((x,
|
|
1853
|
+
children: t.map((x, w) => {
|
|
1848
1854
|
if (x.separator)
|
|
1849
|
-
return /* @__PURE__ */ e.jsx("div", { className: "ds-dropdown__separator" },
|
|
1855
|
+
return /* @__PURE__ */ e.jsx("div", { className: "ds-dropdown__separator" }, w);
|
|
1850
1856
|
if (x.type === "section")
|
|
1851
1857
|
return /* @__PURE__ */ e.jsxs("div", { className: "ds-dropdown__section", children: [
|
|
1852
1858
|
x.label && /* @__PURE__ */ e.jsx("div", { className: "ds-dropdown__section-label", children: x.label }),
|
|
1853
1859
|
/* @__PURE__ */ e.jsx("div", { className: "ds-dropdown__section-content", children: x.content })
|
|
1854
|
-
] },
|
|
1855
|
-
const
|
|
1860
|
+
] }, w);
|
|
1861
|
+
const S = !!x.href, M = S ? "a" : "button", K = S ? { href: x.disabled ? void 0 : x.href, "aria-disabled": x.disabled ? "true" : void 0 } : { type: "button", disabled: x.disabled };
|
|
1856
1862
|
return /* @__PURE__ */ e.jsxs(
|
|
1857
1863
|
M,
|
|
1858
1864
|
{
|
|
@@ -1864,7 +1870,7 @@ function $t({
|
|
|
1864
1870
|
...K,
|
|
1865
1871
|
onClick: () => {
|
|
1866
1872
|
var G;
|
|
1867
|
-
(G = x.onClick) == null || G.call(x),
|
|
1873
|
+
(G = x.onClick) == null || G.call(x), B();
|
|
1868
1874
|
},
|
|
1869
1875
|
children: [
|
|
1870
1876
|
x.icon && /* @__PURE__ */ e.jsx("span", { className: "ds-dropdown__item-icon", children: x.icon }),
|
|
@@ -1872,7 +1878,7 @@ function $t({
|
|
|
1872
1878
|
x.shortcut && /* @__PURE__ */ e.jsx("span", { className: "ds-dropdown__item-shortcut", children: x.shortcut })
|
|
1873
1879
|
]
|
|
1874
1880
|
},
|
|
1875
|
-
|
|
1881
|
+
w
|
|
1876
1882
|
);
|
|
1877
1883
|
})
|
|
1878
1884
|
}
|
|
@@ -1881,14 +1887,14 @@ function $t({
|
|
|
1881
1887
|
"div",
|
|
1882
1888
|
{
|
|
1883
1889
|
ref: b,
|
|
1884
|
-
className: ["ds-dropdown",
|
|
1890
|
+
className: ["ds-dropdown", r].filter(Boolean).join(" "),
|
|
1885
1891
|
style: i,
|
|
1886
1892
|
...l,
|
|
1887
1893
|
children: [
|
|
1888
1894
|
/* @__PURE__ */ e.jsx(
|
|
1889
1895
|
"div",
|
|
1890
1896
|
{
|
|
1891
|
-
ref:
|
|
1897
|
+
ref: y,
|
|
1892
1898
|
className: "ds-dropdown__trigger",
|
|
1893
1899
|
onClick: q,
|
|
1894
1900
|
onKeyDown: C,
|
|
@@ -1903,19 +1909,19 @@ function $t({
|
|
|
1903
1909
|
function Tt({
|
|
1904
1910
|
value: s = 0,
|
|
1905
1911
|
size: t = "m",
|
|
1906
|
-
variant:
|
|
1912
|
+
variant: n = "default",
|
|
1907
1913
|
showValue: o = !1,
|
|
1908
1914
|
min: a = 2,
|
|
1909
|
-
animate:
|
|
1915
|
+
animate: r = !0
|
|
1910
1916
|
}) {
|
|
1911
|
-
const i = Math.min(100, Math.max(0, s)), l = Math.max(a, i), m =
|
|
1917
|
+
const i = Math.min(100, Math.max(0, s)), l = Math.max(a, i), m = n === "auto" ? i >= 70 ? "success" : i >= 50 ? "warning" : "danger" : n;
|
|
1912
1918
|
return /* @__PURE__ */ e.jsxs(
|
|
1913
1919
|
"div",
|
|
1914
1920
|
{
|
|
1915
1921
|
className: [
|
|
1916
1922
|
"ds-progress",
|
|
1917
1923
|
`ds-progress--${t}`,
|
|
1918
|
-
!
|
|
1924
|
+
!r && "ds-progress--instant"
|
|
1919
1925
|
].filter(Boolean).join(" "),
|
|
1920
1926
|
role: "progressbar",
|
|
1921
1927
|
"aria-valuenow": i,
|
|
@@ -1939,8 +1945,8 @@ function Tt({
|
|
|
1939
1945
|
}
|
|
1940
1946
|
const ys = (s) => 1 - Math.pow(1 - s, 3), ks = () => typeof window < "u" && window.matchMedia("(prefers-reduced-motion: reduce)").matches;
|
|
1941
1947
|
function Es(s, { duration: t = 600 } = {}) {
|
|
1942
|
-
const [
|
|
1943
|
-
return
|
|
1948
|
+
const [n, o] = I(s), a = T(s), r = T(null);
|
|
1949
|
+
return L(() => {
|
|
1944
1950
|
if (ks()) {
|
|
1945
1951
|
o(s), a.current = s;
|
|
1946
1952
|
return;
|
|
@@ -1951,48 +1957,48 @@ function Es(s, { duration: t = 600 } = {}) {
|
|
|
1951
1957
|
const d = (f) => {
|
|
1952
1958
|
m || (m = f);
|
|
1953
1959
|
const p = Math.min((f - m) / t, 1);
|
|
1954
|
-
o(i + l * ys(p)), p < 1 ?
|
|
1960
|
+
o(i + l * ys(p)), p < 1 ? r.current = requestAnimationFrame(d) : a.current = s;
|
|
1955
1961
|
};
|
|
1956
|
-
return
|
|
1957
|
-
}, [s, t]),
|
|
1962
|
+
return r.current = requestAnimationFrame(d), () => cancelAnimationFrame(r.current);
|
|
1963
|
+
}, [s, t]), n;
|
|
1958
1964
|
}
|
|
1959
1965
|
function Rt({
|
|
1960
1966
|
value: s,
|
|
1961
1967
|
duration: t = 600,
|
|
1962
|
-
decimals:
|
|
1968
|
+
decimals: n = 0,
|
|
1963
1969
|
prefix: o = "",
|
|
1964
1970
|
suffix: a = ""
|
|
1965
1971
|
}) {
|
|
1966
|
-
const i = Es(s, { duration: t }).toFixed(
|
|
1972
|
+
const i = Es(s, { duration: t }).toFixed(n);
|
|
1967
1973
|
return `${o}${i}${a}`;
|
|
1968
1974
|
}
|
|
1969
|
-
function $s({ threshold: s = 0.1, rootMargin: t = "0px", once:
|
|
1970
|
-
const o =
|
|
1971
|
-
return
|
|
1975
|
+
function $s({ threshold: s = 0.1, rootMargin: t = "0px", once: n = !1 } = {}) {
|
|
1976
|
+
const o = T(null), [a, r] = I(!1);
|
|
1977
|
+
return L(() => {
|
|
1972
1978
|
const i = o.current;
|
|
1973
1979
|
if (!i) return;
|
|
1974
1980
|
const l = new IntersectionObserver(
|
|
1975
1981
|
([m]) => {
|
|
1976
|
-
m.isIntersecting ? (
|
|
1982
|
+
m.isIntersecting ? (r(!0), n && l.disconnect()) : n || r(!1);
|
|
1977
1983
|
},
|
|
1978
1984
|
{ threshold: s, rootMargin: t }
|
|
1979
1985
|
);
|
|
1980
1986
|
return l.observe(i), () => l.disconnect();
|
|
1981
|
-
}, [s, t,
|
|
1987
|
+
}, [s, t, n]), { ref: o, inView: a };
|
|
1982
1988
|
}
|
|
1983
1989
|
function St({
|
|
1984
1990
|
children: s,
|
|
1985
1991
|
as: t = "div",
|
|
1986
|
-
once:
|
|
1992
|
+
once: n = !1,
|
|
1987
1993
|
threshold: o = 0.1,
|
|
1988
1994
|
rootMargin: a = "0px",
|
|
1989
|
-
onEnter:
|
|
1995
|
+
onEnter: r,
|
|
1990
1996
|
onLeave: i,
|
|
1991
1997
|
...l
|
|
1992
1998
|
}) {
|
|
1993
|
-
const { ref: m, inView: d } = $s({ threshold: o, rootMargin: a, once:
|
|
1994
|
-
return
|
|
1995
|
-
d && !f.current && (
|
|
1999
|
+
const { ref: m, inView: d } = $s({ threshold: o, rootMargin: a, once: n }), f = T(!1);
|
|
2000
|
+
return L(() => {
|
|
2001
|
+
d && !f.current && (r == null || r()), !d && f.current && (i == null || i()), f.current = d;
|
|
1996
2002
|
}, [d]), /* @__PURE__ */ e.jsx(t, { ref: m, ...l, children: typeof s == "function" ? s(d) : s });
|
|
1997
2003
|
}
|
|
1998
2004
|
const Le = {
|
|
@@ -2013,21 +2019,21 @@ function Rs(s) {
|
|
|
2013
2019
|
ue = ue.filter((t) => t.id !== s), We();
|
|
2014
2020
|
}
|
|
2015
2021
|
function Dt() {
|
|
2016
|
-
const s = (t,
|
|
2022
|
+
const s = (t, n = {}) => {
|
|
2017
2023
|
Ts({
|
|
2018
2024
|
id: `${Date.now()}-${Math.random()}`,
|
|
2019
2025
|
message: t,
|
|
2020
2026
|
type: "default",
|
|
2021
2027
|
duration: 4e3,
|
|
2022
|
-
...
|
|
2028
|
+
...n
|
|
2023
2029
|
});
|
|
2024
2030
|
};
|
|
2025
|
-
return s.success = (t,
|
|
2031
|
+
return s.success = (t, n) => s(t, { ...n, type: "success" }), s.error = (t, n) => s(t, { ...n, type: "error" }), s.warning = (t, n) => s(t, { ...n, type: "warning" }), { toast: s };
|
|
2026
2032
|
}
|
|
2027
2033
|
function Ss({ data: s, onDismiss: t }) {
|
|
2028
|
-
const [
|
|
2029
|
-
|
|
2030
|
-
function
|
|
2034
|
+
const [n, o] = I(!1), a = T(null);
|
|
2035
|
+
L(() => (requestAnimationFrame(() => o(!0)), s.duration > 0 && (a.current = setTimeout(() => r(), s.duration)), () => clearTimeout(a.current)), []);
|
|
2036
|
+
function r() {
|
|
2031
2037
|
o(!1), setTimeout(() => t(s.id), 250);
|
|
2032
2038
|
}
|
|
2033
2039
|
const i = Le[s.type] ?? Le.default;
|
|
@@ -2037,20 +2043,20 @@ function Ss({ data: s, onDismiss: t }) {
|
|
|
2037
2043
|
className: [
|
|
2038
2044
|
"ds-toast",
|
|
2039
2045
|
`ds-toast--${s.type}`,
|
|
2040
|
-
|
|
2046
|
+
n && "ds-toast--visible"
|
|
2041
2047
|
].filter(Boolean).join(" "),
|
|
2042
2048
|
role: s.type === "error" ? "alert" : "status",
|
|
2043
2049
|
"aria-live": "polite",
|
|
2044
2050
|
children: [
|
|
2045
|
-
/* @__PURE__ */ e.jsx("div", { className: "ds-toast__icon", children: /* @__PURE__ */ e.jsx(i, { size:
|
|
2051
|
+
/* @__PURE__ */ e.jsx("div", { className: "ds-toast__icon", children: /* @__PURE__ */ e.jsx(i, { size: A[3], strokeWidth: 1.5 }) }),
|
|
2046
2052
|
/* @__PURE__ */ e.jsx("span", { className: "ds-toast__message", children: s.message }),
|
|
2047
2053
|
/* @__PURE__ */ e.jsx(
|
|
2048
2054
|
"button",
|
|
2049
2055
|
{
|
|
2050
2056
|
className: "ds-toast__close",
|
|
2051
|
-
onClick:
|
|
2057
|
+
onClick: r,
|
|
2052
2058
|
"aria-label": "Закрыть",
|
|
2053
|
-
children: /* @__PURE__ */ e.jsx(te, { size:
|
|
2059
|
+
children: /* @__PURE__ */ e.jsx(te, { size: A[3], strokeWidth: 1.5 })
|
|
2054
2060
|
}
|
|
2055
2061
|
)
|
|
2056
2062
|
]
|
|
@@ -2058,8 +2064,8 @@ function Ss({ data: s, onDismiss: t }) {
|
|
|
2058
2064
|
);
|
|
2059
2065
|
}
|
|
2060
2066
|
function It({ position: s = "bottom-right" }) {
|
|
2061
|
-
const [t,
|
|
2062
|
-
return
|
|
2067
|
+
const [t, n] = I(() => [...ue]);
|
|
2068
|
+
return L(() => (ve.add(n), () => ve.delete(n)), []), !t.length || typeof document > "u" ? null : pe.createPortal(
|
|
2063
2069
|
/* @__PURE__ */ e.jsx("div", { "data-ds-portal": "", className: ["ds-toast-container", `ds-toast-container--${s}`].join(" "), children: t.map((o) => /* @__PURE__ */ e.jsx(Ss, { data: o, onDismiss: Rs }, o.id)) }),
|
|
2064
2070
|
document.body
|
|
2065
2071
|
);
|
|
@@ -2072,17 +2078,17 @@ const Ds = {
|
|
|
2072
2078
|
function At({
|
|
2073
2079
|
label: s,
|
|
2074
2080
|
status: t = "idle",
|
|
2075
|
-
icon:
|
|
2081
|
+
icon: n,
|
|
2076
2082
|
badge: o,
|
|
2077
2083
|
defaultExpanded: a = !1,
|
|
2078
|
-
expanded:
|
|
2084
|
+
expanded: r,
|
|
2079
2085
|
onToggle: i,
|
|
2080
2086
|
children: l,
|
|
2081
2087
|
className: m = "",
|
|
2082
2088
|
...d
|
|
2083
2089
|
}) {
|
|
2084
2090
|
const f = t === "running", p = /* @__PURE__ */ e.jsxs("span", { className: "ds-tool-card__title-row", children: [
|
|
2085
|
-
|
|
2091
|
+
n && /* @__PURE__ */ e.jsx("span", { className: "ds-tool-card__icon", children: n }),
|
|
2086
2092
|
/* @__PURE__ */ e.jsx("span", { className: "ds-tool-card__label", children: s }),
|
|
2087
2093
|
Ds[t],
|
|
2088
2094
|
o
|
|
@@ -2098,7 +2104,7 @@ function At({
|
|
|
2098
2104
|
title: p,
|
|
2099
2105
|
padding: "s",
|
|
2100
2106
|
defaultExpanded: a,
|
|
2101
|
-
expanded: f ? !1 :
|
|
2107
|
+
expanded: f ? !1 : r,
|
|
2102
2108
|
onToggle: f ? void 0 : i,
|
|
2103
2109
|
children: /* @__PURE__ */ e.jsx("div", { className: "ds-tool-card__body", children: l })
|
|
2104
2110
|
}
|
|
@@ -2116,13 +2122,13 @@ function At({
|
|
|
2116
2122
|
function Is({
|
|
2117
2123
|
text: s,
|
|
2118
2124
|
size: t = "xs",
|
|
2119
|
-
timeout:
|
|
2125
|
+
timeout: n = 800,
|
|
2120
2126
|
"aria-label": o = "Copy to clipboard",
|
|
2121
2127
|
...a
|
|
2122
2128
|
}) {
|
|
2123
|
-
const [
|
|
2129
|
+
const [r, i] = I(!1), l = (m) => {
|
|
2124
2130
|
m.currentTarget.blur(), navigator.clipboard.writeText(s).then(() => {
|
|
2125
|
-
i(!0), setTimeout(() => i(!1),
|
|
2131
|
+
i(!0), setTimeout(() => i(!1), n);
|
|
2126
2132
|
});
|
|
2127
2133
|
};
|
|
2128
2134
|
return /* @__PURE__ */ e.jsx(
|
|
@@ -2130,17 +2136,17 @@ function Is({
|
|
|
2130
2136
|
{
|
|
2131
2137
|
variant: "ghost",
|
|
2132
2138
|
size: t,
|
|
2133
|
-
state:
|
|
2134
|
-
icon: /* @__PURE__ */ e.jsx(Je, { size:
|
|
2139
|
+
state: r ? "success" : "idle",
|
|
2140
|
+
icon: /* @__PURE__ */ e.jsx(Je, { size: A[1], strokeWidth: 1.5 }),
|
|
2135
2141
|
"aria-label": o,
|
|
2136
2142
|
onClick: l,
|
|
2137
2143
|
...a
|
|
2138
2144
|
}
|
|
2139
2145
|
);
|
|
2140
2146
|
}
|
|
2141
|
-
function Bt({ content: s, streaming: t = !1, ...
|
|
2142
|
-
const [o, a] =
|
|
2143
|
-
return
|
|
2147
|
+
function Bt({ content: s, streaming: t = !1, ...n }) {
|
|
2148
|
+
const [o, a] = I(t);
|
|
2149
|
+
return L(() => {
|
|
2144
2150
|
a(!!t);
|
|
2145
2151
|
}, [t]), /* @__PURE__ */ e.jsx(
|
|
2146
2152
|
$e,
|
|
@@ -2149,10 +2155,10 @@ function Bt({ content: s, streaming: t = !1, ...r }) {
|
|
|
2149
2155
|
onToggle: a,
|
|
2150
2156
|
padding: "s",
|
|
2151
2157
|
title: /* @__PURE__ */ e.jsxs("div", { className: "ds-reasoning__title", children: [
|
|
2152
|
-
/* @__PURE__ */ e.jsx(Ze, { size:
|
|
2158
|
+
/* @__PURE__ */ e.jsx(Ze, { size: A[1], strokeWidth: 1.5, className: "ds-reasoning__icon" }),
|
|
2153
2159
|
/* @__PURE__ */ e.jsx(ds, { secondary: !0, children: "Thinking" })
|
|
2154
2160
|
] }),
|
|
2155
|
-
...
|
|
2161
|
+
...n,
|
|
2156
2162
|
children: /* @__PURE__ */ e.jsxs(Fe, { secondary: !0, style: { whiteSpace: "pre-wrap" }, children: [
|
|
2157
2163
|
s,
|
|
2158
2164
|
t && /* @__PURE__ */ e.jsx("span", { className: "ds-cursor ds-cursor--line" })
|
|
@@ -2163,16 +2169,16 @@ function Bt({ content: s, streaming: t = !1, ...r }) {
|
|
|
2163
2169
|
function Lt({
|
|
2164
2170
|
count: s,
|
|
2165
2171
|
current: t = 0,
|
|
2166
|
-
done:
|
|
2172
|
+
done: n = [],
|
|
2167
2173
|
onChange: o,
|
|
2168
2174
|
showCounter: a = !0,
|
|
2169
|
-
className:
|
|
2175
|
+
className: r = "",
|
|
2170
2176
|
"aria-label": i = "Steps",
|
|
2171
2177
|
...l
|
|
2172
2178
|
}) {
|
|
2173
|
-
return /* @__PURE__ */ e.jsxs("div", { className: ["ds-step-indicator",
|
|
2179
|
+
return /* @__PURE__ */ e.jsxs("div", { className: ["ds-step-indicator", r].filter(Boolean).join(" "), ...l, children: [
|
|
2174
2180
|
/* @__PURE__ */ e.jsx("div", { className: "ds-step-indicator__dots", role: "tablist", "aria-label": i, children: Array.from({ length: s }, (m, d) => {
|
|
2175
|
-
const f = d === t, p =
|
|
2181
|
+
const f = d === t, p = n.includes(d) && !f, h = o && (d <= t || n.includes(d)), u = [
|
|
2176
2182
|
"ds-step-indicator__dot",
|
|
2177
2183
|
f && "ds-step-indicator__dot--active",
|
|
2178
2184
|
p && "ds-step-indicator__dot--done"
|
|
@@ -2199,29 +2205,29 @@ function Lt({
|
|
|
2199
2205
|
] })
|
|
2200
2206
|
] });
|
|
2201
2207
|
}
|
|
2202
|
-
function
|
|
2208
|
+
function Pt({
|
|
2203
2209
|
content: s,
|
|
2204
2210
|
isStreaming: t = !1,
|
|
2205
|
-
cursor:
|
|
2211
|
+
cursor: n = "line",
|
|
2206
2212
|
onChunk: o,
|
|
2207
2213
|
className: a = "",
|
|
2208
|
-
...
|
|
2214
|
+
...r
|
|
2209
2215
|
}) {
|
|
2210
|
-
const i =
|
|
2211
|
-
return
|
|
2216
|
+
const i = T(s);
|
|
2217
|
+
return L(() => {
|
|
2212
2218
|
s !== i.current && (o == null || o(s), i.current = s);
|
|
2213
|
-
}, [s, o]), /* @__PURE__ */ e.jsxs("span", { className: ["ds-streaming-text", a].filter(Boolean).join(" "), ...
|
|
2219
|
+
}, [s, o]), /* @__PURE__ */ e.jsxs("span", { className: ["ds-streaming-text", a].filter(Boolean).join(" "), ...r, children: [
|
|
2214
2220
|
s,
|
|
2215
|
-
t &&
|
|
2221
|
+
t && n !== "none" && /* @__PURE__ */ e.jsx("span", { className: `ds-cursor ds-cursor--${n}`, "aria-hidden": "true" })
|
|
2216
2222
|
] });
|
|
2217
2223
|
}
|
|
2218
|
-
function
|
|
2224
|
+
function Mt({
|
|
2219
2225
|
role: s = "assistant",
|
|
2220
2226
|
header: t,
|
|
2221
|
-
footer:
|
|
2227
|
+
footer: n,
|
|
2222
2228
|
attachments: o,
|
|
2223
2229
|
isStreaming: a = !1,
|
|
2224
|
-
children:
|
|
2230
|
+
children: r,
|
|
2225
2231
|
className: i = "",
|
|
2226
2232
|
...l
|
|
2227
2233
|
}) {
|
|
@@ -2231,77 +2237,77 @@ function Pt({
|
|
|
2231
2237
|
a && "ds-chat-message--streaming",
|
|
2232
2238
|
i
|
|
2233
2239
|
].filter(Boolean).join(" ");
|
|
2234
|
-
return s === "system" ? /* @__PURE__ */ e.jsx("div", { className: m, ...l, children: /* @__PURE__ */ e.jsx("span", { className: "ds-chat-message__system-label", children:
|
|
2240
|
+
return s === "system" ? /* @__PURE__ */ e.jsx("div", { className: m, ...l, children: /* @__PURE__ */ e.jsx("span", { className: "ds-chat-message__system-label", children: r }) }) : s === "user" ? /* @__PURE__ */ e.jsxs("div", { className: m, ...l, children: [
|
|
2235
2241
|
o && /* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__attachments", children: o }),
|
|
2236
|
-
/* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__bubble", children:
|
|
2237
|
-
|
|
2242
|
+
/* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__bubble", children: r }),
|
|
2243
|
+
n && /* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__footer", children: n })
|
|
2238
2244
|
] }) : /* @__PURE__ */ e.jsxs("div", { className: m, ...l, children: [
|
|
2239
2245
|
t && /* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__header", children: t }),
|
|
2240
2246
|
o && /* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__attachments", children: o }),
|
|
2241
|
-
/* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__body", children:
|
|
2242
|
-
|
|
2247
|
+
/* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__body", children: r }),
|
|
2248
|
+
n && /* @__PURE__ */ e.jsx("div", { className: "ds-chat-message__footer", children: n })
|
|
2243
2249
|
] });
|
|
2244
2250
|
}
|
|
2245
|
-
function zt(s, { containerRef: t, smartPause:
|
|
2246
|
-
const o =
|
|
2247
|
-
|
|
2248
|
-
const
|
|
2249
|
-
if (!
|
|
2251
|
+
function zt(s, { containerRef: t, smartPause: n = !0 } = {}) {
|
|
2252
|
+
const o = T(!1), a = T(0);
|
|
2253
|
+
L(() => {
|
|
2254
|
+
const r = t == null ? void 0 : t.current;
|
|
2255
|
+
if (!r) return;
|
|
2250
2256
|
const i = () => {
|
|
2251
|
-
const l =
|
|
2252
|
-
!l &&
|
|
2257
|
+
const l = r.scrollHeight - r.scrollTop - r.clientHeight < 64;
|
|
2258
|
+
!l && r.scrollTop < a.current && (o.current = !0), l && (o.current = !1), a.current = r.scrollTop;
|
|
2253
2259
|
};
|
|
2254
|
-
return
|
|
2255
|
-
}, [t]),
|
|
2256
|
-
const
|
|
2257
|
-
|
|
2260
|
+
return r.addEventListener("scroll", i, { passive: !0 }), () => r.removeEventListener("scroll", i);
|
|
2261
|
+
}, [t]), L(() => {
|
|
2262
|
+
const r = t == null ? void 0 : t.current;
|
|
2263
|
+
r && (n && o.current || (r.scrollTop = r.scrollHeight));
|
|
2258
2264
|
}, s);
|
|
2259
2265
|
}
|
|
2260
2266
|
function As({
|
|
2261
2267
|
prompts: s,
|
|
2262
2268
|
enabled: t,
|
|
2263
|
-
typingSpeed:
|
|
2269
|
+
typingSpeed: n = 38,
|
|
2264
2270
|
erasingSpeed: o = 18,
|
|
2265
2271
|
holdTime: a = 2200,
|
|
2266
|
-
betweenTime:
|
|
2272
|
+
betweenTime: r = 380,
|
|
2267
2273
|
manualPauseMs: i = 5e3
|
|
2268
2274
|
}) {
|
|
2269
|
-
const [l, m] =
|
|
2270
|
-
|
|
2275
|
+
const [l, m] = I(0), [d, f] = I(""), p = T("typing"), h = T(0), u = T(0), b = T(null), _ = T(0);
|
|
2276
|
+
L(() => {
|
|
2271
2277
|
u.current = l;
|
|
2272
|
-
}, [l]),
|
|
2278
|
+
}, [l]), L(() => {
|
|
2273
2279
|
if (b.current && (clearTimeout(b.current), b.current = null), !t || s.length === 0) {
|
|
2274
2280
|
f(""), h.current = 0, p.current = "typing";
|
|
2275
2281
|
return;
|
|
2276
2282
|
}
|
|
2277
|
-
const
|
|
2278
|
-
const
|
|
2279
|
-
if (_.current >
|
|
2280
|
-
b.current = setTimeout(
|
|
2283
|
+
const $ = () => {
|
|
2284
|
+
const P = Date.now();
|
|
2285
|
+
if (_.current > P) {
|
|
2286
|
+
b.current = setTimeout($, _.current - P);
|
|
2281
2287
|
return;
|
|
2282
2288
|
}
|
|
2283
|
-
const
|
|
2284
|
-
p.current === "typing" ? (h.current += 1, f(
|
|
2289
|
+
const B = s[u.current % s.length] ?? "";
|
|
2290
|
+
p.current === "typing" ? (h.current += 1, f(B.slice(0, h.current)), h.current >= B.length ? (p.current = "holding", b.current = setTimeout($, a)) : b.current = setTimeout($, n + Math.random() * 28)) : p.current === "holding" ? (p.current = "erasing", b.current = setTimeout($, o)) : (h.current = Math.max(0, h.current - 1), f(B.slice(0, h.current)), h.current <= 0 ? (p.current = "typing", u.current = (u.current + 1) % s.length, m(u.current), b.current = setTimeout($, r)) : b.current = setTimeout($, o));
|
|
2285
2291
|
};
|
|
2286
|
-
return b.current = setTimeout(
|
|
2292
|
+
return b.current = setTimeout($, 260), () => {
|
|
2287
2293
|
b.current && clearTimeout(b.current);
|
|
2288
2294
|
};
|
|
2289
|
-
}, [t, s,
|
|
2290
|
-
const
|
|
2295
|
+
}, [t, s, n, o, a, r]);
|
|
2296
|
+
const y = ($) => {
|
|
2291
2297
|
if (s.length === 0) return;
|
|
2292
|
-
const
|
|
2293
|
-
u.current =
|
|
2294
|
-
},
|
|
2295
|
-
return { displayed: d, currentPrompt:
|
|
2298
|
+
const P = ($ % s.length + s.length) % s.length, B = s[P];
|
|
2299
|
+
u.current = P, h.current = B.length, p.current = "holding", _.current = Date.now() + i, m(P), f(B);
|
|
2300
|
+
}, g = () => y(u.current + 1), R = () => y(u.current - 1), N = s[l % s.length] ?? "";
|
|
2301
|
+
return { displayed: d, currentPrompt: N, index: l, next: g, prev: R };
|
|
2296
2302
|
}
|
|
2297
2303
|
let Bs = 0;
|
|
2298
2304
|
function Ot({
|
|
2299
2305
|
value: s = "",
|
|
2300
2306
|
onChange: t,
|
|
2301
|
-
onSubmit:
|
|
2307
|
+
onSubmit: n,
|
|
2302
2308
|
onStop: o,
|
|
2303
2309
|
onKeyDown: a,
|
|
2304
|
-
loading:
|
|
2310
|
+
loading: r = !1,
|
|
2305
2311
|
disabled: i = !1,
|
|
2306
2312
|
placeholder: l = "Let's get things done...",
|
|
2307
2313
|
animatedPlaceholders: m,
|
|
@@ -2312,66 +2318,66 @@ function Ot({
|
|
|
2312
2318
|
onRemoveAttachment: u,
|
|
2313
2319
|
onRemoveImage: b,
|
|
2314
2320
|
acceptImage: _,
|
|
2315
|
-
acceptFile:
|
|
2316
|
-
maxImages:
|
|
2317
|
-
maxImageSize:
|
|
2318
|
-
leftSlot:
|
|
2319
|
-
rightSlot:
|
|
2320
|
-
className:
|
|
2321
|
-
...
|
|
2321
|
+
acceptFile: y,
|
|
2322
|
+
maxImages: g,
|
|
2323
|
+
maxImageSize: R,
|
|
2324
|
+
leftSlot: N,
|
|
2325
|
+
rightSlot: $,
|
|
2326
|
+
className: P = "",
|
|
2327
|
+
...B
|
|
2322
2328
|
}) {
|
|
2323
|
-
const q =
|
|
2324
|
-
const
|
|
2325
|
-
V((Y) => [...Y, { id:
|
|
2326
|
-
},
|
|
2327
|
-
const
|
|
2328
|
-
let ee = 0, ie =
|
|
2329
|
+
const q = T(null), H = T(null), F = T(0), [v, C] = I(!1), [X, V] = I([]), x = (j) => {
|
|
2330
|
+
const D = ++Bs;
|
|
2331
|
+
V((Y) => [...Y, { id: D, msg: j }]), setTimeout(() => V((Y) => Y.filter((J) => J.id !== D)), 6e3);
|
|
2332
|
+
}, w = (j) => V((D) => D.filter((Y) => Y.id !== j)), S = (j) => j.type.startsWith("image/"), M = () => !0, K = _ ?? S, G = y ?? M, E = (j) => {
|
|
2333
|
+
const D = [], Y = [], J = [], Z = [];
|
|
2334
|
+
let ee = 0, ie = g != null ? g - ((f == null ? void 0 : f.length) ?? 0) : 1 / 0;
|
|
2329
2335
|
for (const se of j)
|
|
2330
|
-
K(se) ?
|
|
2331
|
-
return { imageFiles:
|
|
2336
|
+
K(se) ? R && se.size > R ? J.push(se.name) : ie > 0 ? (D.push(se), ie--) : ee++ : G(se) ? Y.push(se) : Z.push(se.name);
|
|
2337
|
+
return { imageFiles: D, docFiles: Y, tooLarge: J, skipped: Z, limitExceeded: ee };
|
|
2332
2338
|
}, c = (j) => {
|
|
2333
|
-
const { imageFiles:
|
|
2334
|
-
J.length && x(`File${J.length > 1 ? "s" : ""} too large${
|
|
2335
|
-
const ie = Y.concat(h ? [] :
|
|
2339
|
+
const { imageFiles: D, docFiles: Y, tooLarge: J, skipped: Z, limitExceeded: ee } = E(j);
|
|
2340
|
+
J.length && x(`File${J.length > 1 ? "s" : ""} too large${R ? ` (max ${R / 1024 / 1024}MB)` : ""}: ${J.join(", ")}`), Z.length && x(`Skipped unsupported file${Z.length > 1 ? "s" : ""}: ${Z.join(", ")}`), ee && x(`Max ${g} images per message`), h && D.length && h(D);
|
|
2341
|
+
const ie = Y.concat(h ? [] : D);
|
|
2336
2342
|
p && ie.length && p(ie);
|
|
2337
2343
|
};
|
|
2338
|
-
|
|
2344
|
+
L(() => {
|
|
2339
2345
|
const j = H.current;
|
|
2340
2346
|
j && (j.style.height = "auto", j.style.height = `${Math.min(j.scrollHeight, 200)}px`);
|
|
2341
|
-
}, [s]),
|
|
2342
|
-
const j = (
|
|
2347
|
+
}, [s]), L(() => {
|
|
2348
|
+
const j = (D) => {
|
|
2343
2349
|
var J, Z, ee;
|
|
2344
|
-
if (
|
|
2345
|
-
const Y = (J =
|
|
2346
|
-
Y === "INPUT" || Y === "TEXTAREA" || Y === "SELECT" || (Z =
|
|
2350
|
+
if (r || i) return;
|
|
2351
|
+
const Y = (J = D.target) == null ? void 0 : J.tagName;
|
|
2352
|
+
Y === "INPUT" || Y === "TEXTAREA" || Y === "SELECT" || (Z = D.target) != null && Z.isContentEditable || D.ctrlKey || D.metaKey || D.altKey || D.key.length !== 1 && D.key !== "Backspace" && D.key !== "Delete" || (ee = H.current) == null || ee.focus();
|
|
2347
2353
|
};
|
|
2348
2354
|
return document.addEventListener("keydown", j), () => document.removeEventListener("keydown", j);
|
|
2349
|
-
}, [
|
|
2350
|
-
const
|
|
2355
|
+
}, [r, i]);
|
|
2356
|
+
const k = (j) => {
|
|
2351
2357
|
j.preventDefault(), F.current++, j.dataTransfer.types.includes("Files") && C(!0);
|
|
2352
|
-
},
|
|
2358
|
+
}, z = (j) => {
|
|
2353
2359
|
j.preventDefault(), F.current--, F.current === 0 && C(!1);
|
|
2354
|
-
}, O = (j) => j.preventDefault(),
|
|
2360
|
+
}, O = (j) => j.preventDefault(), ne = (j) => {
|
|
2355
2361
|
j.preventDefault(), F.current = 0, C(!1);
|
|
2356
|
-
const
|
|
2357
|
-
|
|
2362
|
+
const D = Array.from(j.dataTransfer.files);
|
|
2363
|
+
D.length && c(D);
|
|
2358
2364
|
}, ae = (j) => {
|
|
2359
|
-
const
|
|
2360
|
-
q.current && (q.current.value = ""),
|
|
2365
|
+
const D = Array.from(j.target.files || []);
|
|
2366
|
+
q.current && (q.current.value = ""), D.length && c(D);
|
|
2361
2367
|
}, W = (j) => {
|
|
2362
2368
|
var se;
|
|
2363
2369
|
if (!h) return;
|
|
2364
|
-
const
|
|
2365
|
-
if (!
|
|
2370
|
+
const D = (se = j.clipboardData) == null ? void 0 : se.items;
|
|
2371
|
+
if (!D) return;
|
|
2366
2372
|
const Y = [];
|
|
2367
|
-
for (const Ue of
|
|
2373
|
+
for (const Ue of D) {
|
|
2368
2374
|
const Re = Ue.getAsFile();
|
|
2369
2375
|
Re && Y.push(Re);
|
|
2370
2376
|
}
|
|
2371
2377
|
if (Y.length === 0) return;
|
|
2372
|
-
const { imageFiles: J, tooLarge: Z, skipped: ee, limitExceeded: ie } =
|
|
2373
|
-
Z.length && x(`File${Z.length > 1 ? "s" : ""} too large: ${Z.join(", ")}`), ee.length && x(`Skipped unsupported file${ee.length > 1 ? "s" : ""}: ${ee.join(", ")}`), ie && x(`Max ${
|
|
2374
|
-
}, Q = !
|
|
2378
|
+
const { imageFiles: J, tooLarge: Z, skipped: ee, limitExceeded: ie } = E(Y);
|
|
2379
|
+
Z.length && x(`File${Z.length > 1 ? "s" : ""} too large: ${Z.join(", ")}`), ee.length && x(`Skipped unsupported file${ee.length > 1 ? "s" : ""}: ${ee.join(", ")}`), ie && x(`Max ${g} images per message`), J.length && (j.preventDefault(), h(J));
|
|
2380
|
+
}, Q = !r && !i && !!(m != null && m.length) && s.length === 0, oe = As({
|
|
2375
2381
|
prompts: m ?? [],
|
|
2376
2382
|
enabled: Q
|
|
2377
2383
|
}), be = (j) => {
|
|
@@ -2391,7 +2397,7 @@ function Ot({
|
|
|
2391
2397
|
}
|
|
2392
2398
|
a == null || a(j);
|
|
2393
2399
|
}, Ce = (s.trim() || (f == null ? void 0 : f.length) > 0 || (d == null ? void 0 : d.length) > 0) && !i, Te = p || h;
|
|
2394
|
-
return /* @__PURE__ */ e.jsxs("div", { className: ["ds-prompt-input",
|
|
2400
|
+
return /* @__PURE__ */ e.jsxs("div", { className: ["ds-prompt-input", P].filter(Boolean).join(" "), ...B, children: [
|
|
2395
2401
|
Te && /* @__PURE__ */ e.jsx(
|
|
2396
2402
|
"input",
|
|
2397
2403
|
{
|
|
@@ -2407,10 +2413,10 @@ function Ot({
|
|
|
2407
2413
|
"div",
|
|
2408
2414
|
{
|
|
2409
2415
|
className: ["ds-prompt-input__box", v && "ds-prompt-input__box--dragging"].filter(Boolean).join(" "),
|
|
2410
|
-
onDragEnter:
|
|
2411
|
-
onDragLeave:
|
|
2416
|
+
onDragEnter: k,
|
|
2417
|
+
onDragLeave: z,
|
|
2412
2418
|
onDragOver: O,
|
|
2413
|
-
onDrop:
|
|
2419
|
+
onDrop: ne,
|
|
2414
2420
|
children: [
|
|
2415
2421
|
v && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__drag-overlay", children: "Drop files here" }),
|
|
2416
2422
|
/* @__PURE__ */ e.jsx(
|
|
@@ -2422,7 +2428,7 @@ function Ot({
|
|
|
2422
2428
|
onKeyDown: be,
|
|
2423
2429
|
onPaste: W,
|
|
2424
2430
|
placeholder: Q ? "" : l,
|
|
2425
|
-
disabled:
|
|
2431
|
+
disabled: r || i,
|
|
2426
2432
|
rows: 1,
|
|
2427
2433
|
className: ["ds-prompt-input__textarea", Q && "ds-prompt-input__textarea--anim"].filter(Boolean).join(" ")
|
|
2428
2434
|
}
|
|
@@ -2431,19 +2437,19 @@ function Ot({
|
|
|
2431
2437
|
/* @__PURE__ */ e.jsx("span", { className: "ds-prompt-input__anim-text", children: oe.displayed }),
|
|
2432
2438
|
/* @__PURE__ */ e.jsx("span", { className: "ds-prompt-input__anim-cursor" })
|
|
2433
2439
|
] }),
|
|
2434
|
-
f && f.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__images", children: f.map((j,
|
|
2440
|
+
f && f.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__images", children: f.map((j, D) => /* @__PURE__ */ e.jsxs("div", { className: "ds-prompt-input__image-thumb", children: [
|
|
2435
2441
|
/* @__PURE__ */ e.jsx("img", { src: j.preview, alt: "" }),
|
|
2436
2442
|
/* @__PURE__ */ e.jsx(
|
|
2437
2443
|
"button",
|
|
2438
2444
|
{
|
|
2439
2445
|
className: "ds-prompt-input__image-remove",
|
|
2440
|
-
onClick: () => b == null ? void 0 : b(
|
|
2446
|
+
onClick: () => b == null ? void 0 : b(D),
|
|
2441
2447
|
"aria-label": "Remove image",
|
|
2442
2448
|
type: "button",
|
|
2443
2449
|
children: /* @__PURE__ */ e.jsx(te, { size: 12, strokeWidth: 2 })
|
|
2444
2450
|
}
|
|
2445
2451
|
)
|
|
2446
|
-
] },
|
|
2452
|
+
] }, D)) }),
|
|
2447
2453
|
X.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__warnings", children: X.map((j) => /* @__PURE__ */ e.jsxs("div", { className: "ds-prompt-input__warning", role: "alert", children: [
|
|
2448
2454
|
/* @__PURE__ */ e.jsx("span", { children: j.msg }),
|
|
2449
2455
|
/* @__PURE__ */ e.jsx(
|
|
@@ -2451,32 +2457,32 @@ function Ot({
|
|
|
2451
2457
|
{
|
|
2452
2458
|
type: "button",
|
|
2453
2459
|
className: "ds-prompt-input__warning-close",
|
|
2454
|
-
onClick: () =>
|
|
2460
|
+
onClick: () => w(j.id),
|
|
2455
2461
|
"aria-label": "Dismiss",
|
|
2456
|
-
children: /* @__PURE__ */ e.jsx(te, { size:
|
|
2462
|
+
children: /* @__PURE__ */ e.jsx(te, { size: A[1], strokeWidth: 1.5 })
|
|
2457
2463
|
}
|
|
2458
2464
|
)
|
|
2459
2465
|
] }, j.id)) }),
|
|
2460
|
-
d && d.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__attachments", children: d.map((j,
|
|
2461
|
-
j.uploading ? /* @__PURE__ */ e.jsx(Qe, { size:
|
|
2466
|
+
d && d.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__attachments", children: d.map((j, D) => /* @__PURE__ */ e.jsx(de, { size: "xs", children: /* @__PURE__ */ e.jsxs("span", { className: "ds-prompt-input__badge-content", children: [
|
|
2467
|
+
j.uploading ? /* @__PURE__ */ e.jsx(Qe, { size: A[1], strokeWidth: 1.5, className: "spin" }) : /* @__PURE__ */ e.jsx(Se, { size: A[1], strokeWidth: 1.5 }),
|
|
2462
2468
|
j.filename,
|
|
2463
2469
|
j.uploading ? /* @__PURE__ */ e.jsx("span", { className: "ds-prompt-input__uploading", children: "Uploading..." }) : /* @__PURE__ */ e.jsx(
|
|
2464
2470
|
"button",
|
|
2465
2471
|
{
|
|
2466
2472
|
type: "button",
|
|
2467
2473
|
className: "ds-prompt-input__remove-btn",
|
|
2468
|
-
onClick: () => u == null ? void 0 : u(
|
|
2469
|
-
children: /* @__PURE__ */ e.jsx(te, { size:
|
|
2474
|
+
onClick: () => u == null ? void 0 : u(D),
|
|
2475
|
+
children: /* @__PURE__ */ e.jsx(te, { size: A[1], strokeWidth: 1.5 })
|
|
2470
2476
|
}
|
|
2471
2477
|
)
|
|
2472
|
-
] }) },
|
|
2478
|
+
] }) }, D)) }),
|
|
2473
2479
|
/* @__PURE__ */ e.jsxs("div", { className: "ds-prompt-input__toolbar", children: [
|
|
2474
2480
|
Te && /* @__PURE__ */ e.jsx(
|
|
2475
2481
|
ce,
|
|
2476
2482
|
{
|
|
2477
2483
|
variant: "ghost",
|
|
2478
2484
|
size: "xs",
|
|
2479
|
-
icon: /* @__PURE__ */ e.jsx(Se, { size:
|
|
2485
|
+
icon: /* @__PURE__ */ e.jsx(Se, { size: A[2], strokeWidth: 1.5 }),
|
|
2480
2486
|
"aria-label": "Attach files",
|
|
2481
2487
|
onClick: () => {
|
|
2482
2488
|
var j;
|
|
@@ -2484,15 +2490,15 @@ function Ot({
|
|
|
2484
2490
|
}
|
|
2485
2491
|
}
|
|
2486
2492
|
),
|
|
2487
|
-
|
|
2488
|
-
|
|
2493
|
+
N,
|
|
2494
|
+
$,
|
|
2489
2495
|
/* @__PURE__ */ e.jsx("div", { className: "ds-prompt-input__spacer" }),
|
|
2490
|
-
|
|
2496
|
+
r ? /* @__PURE__ */ e.jsx(
|
|
2491
2497
|
ce,
|
|
2492
2498
|
{
|
|
2493
2499
|
variant: "primary",
|
|
2494
2500
|
size: "xs",
|
|
2495
|
-
icon: /* @__PURE__ */ e.jsx(es, { size:
|
|
2501
|
+
icon: /* @__PURE__ */ e.jsx(es, { size: A[2], strokeWidth: 1.5 }),
|
|
2496
2502
|
onClick: o,
|
|
2497
2503
|
"aria-label": "Stop"
|
|
2498
2504
|
}
|
|
@@ -2501,8 +2507,8 @@ function Ot({
|
|
|
2501
2507
|
{
|
|
2502
2508
|
variant: "primary",
|
|
2503
2509
|
size: "xs",
|
|
2504
|
-
icon: /* @__PURE__ */ e.jsx(ss, { size:
|
|
2505
|
-
onClick:
|
|
2510
|
+
icon: /* @__PURE__ */ e.jsx(ss, { size: A[2], strokeWidth: 1.5 }),
|
|
2511
|
+
onClick: n,
|
|
2506
2512
|
disabled: !Ce,
|
|
2507
2513
|
"aria-label": "Send"
|
|
2508
2514
|
}
|
|
@@ -2513,37 +2519,37 @@ function Ot({
|
|
|
2513
2519
|
)
|
|
2514
2520
|
] });
|
|
2515
2521
|
}
|
|
2516
|
-
const
|
|
2522
|
+
const Pe = { fast: 0, standard: 1, premium: 2 }, Me = { fast: "data-5", standard: "data-3", premium: "data-6" };
|
|
2517
2523
|
function Ft({
|
|
2518
2524
|
models: s = [],
|
|
2519
2525
|
value: t,
|
|
2520
|
-
onChange:
|
|
2526
|
+
onChange: n,
|
|
2521
2527
|
size: o = "xs",
|
|
2522
2528
|
minTier: a,
|
|
2523
|
-
showAutoOption:
|
|
2529
|
+
showAutoOption: r = !1,
|
|
2524
2530
|
groupByTier: i = !0,
|
|
2525
2531
|
className: l = "",
|
|
2526
2532
|
...m
|
|
2527
2533
|
}) {
|
|
2528
|
-
const [d, f] =
|
|
2529
|
-
|
|
2534
|
+
const [d, f] = I(!1), p = T(null), h = T(null), u = T(null), [b, _] = I({}), y = s.filter((v) => !a || v.name === "auto" ? !0 : (Pe[v.tier] ?? 1) >= (Pe[a] ?? 1)), g = y.find((v) => v.name === "auto"), R = y.filter((v) => v.name !== "auto"), N = s.find((v) => v.name === t), P = new Set(R.map((v) => v.tier).filter(Boolean)).size > 1;
|
|
2535
|
+
L(() => {
|
|
2530
2536
|
if (!d) return;
|
|
2531
2537
|
const v = 320, C = () => {
|
|
2532
2538
|
var M;
|
|
2533
2539
|
const x = (M = h.current) == null ? void 0 : M.getBoundingClientRect();
|
|
2534
2540
|
if (!x) return;
|
|
2535
|
-
const
|
|
2541
|
+
const w = window.innerHeight - x.bottom, S = w < v + 8 && x.top > w;
|
|
2536
2542
|
_({
|
|
2537
2543
|
position: "fixed",
|
|
2538
2544
|
zIndex: "var(--z-dropdown, 500)",
|
|
2539
2545
|
left: x.left,
|
|
2540
|
-
|
|
2546
|
+
...S ? { bottom: window.innerHeight - x.top + 4, top: "auto" } : { top: x.bottom + 4, bottom: "auto" }
|
|
2541
2547
|
});
|
|
2542
2548
|
};
|
|
2543
2549
|
C(), window.addEventListener("scroll", C, !0), window.addEventListener("resize", C);
|
|
2544
2550
|
const X = (x) => {
|
|
2545
|
-
var
|
|
2546
|
-
!((
|
|
2551
|
+
var w, S;
|
|
2552
|
+
!((w = p.current) != null && w.contains(x.target)) && !((S = u.current) != null && S.contains(x.target)) && f(!1);
|
|
2547
2553
|
}, V = (x) => {
|
|
2548
2554
|
x.key === "Escape" && f(!1);
|
|
2549
2555
|
};
|
|
@@ -2551,8 +2557,8 @@ function Ft({
|
|
|
2551
2557
|
window.removeEventListener("scroll", C, !0), window.removeEventListener("resize", C), document.removeEventListener("mousedown", X), document.removeEventListener("keydown", V);
|
|
2552
2558
|
};
|
|
2553
2559
|
}, [d]);
|
|
2554
|
-
const
|
|
2555
|
-
|
|
2560
|
+
const B = (v) => {
|
|
2561
|
+
n == null || n(v), f(!1);
|
|
2556
2562
|
}, q = (v) => /* @__PURE__ */ e.jsxs(
|
|
2557
2563
|
"button",
|
|
2558
2564
|
{
|
|
@@ -2561,22 +2567,22 @@ function Ft({
|
|
|
2561
2567
|
"ds-model-picker__item",
|
|
2562
2568
|
v.name === t && "ds-model-picker__item--active"
|
|
2563
2569
|
].filter(Boolean).join(" "),
|
|
2564
|
-
onClick: () =>
|
|
2570
|
+
onClick: () => B(v.name),
|
|
2565
2571
|
children: [
|
|
2566
2572
|
v.icon ? /* @__PURE__ */ e.jsx("span", { className: "ds-model-picker__item-icon", children: v.icon }) : /* @__PURE__ */ e.jsx(De, { size: 12, strokeWidth: 1.5, className: "ds-model-picker__item-icon" }),
|
|
2567
2573
|
/* @__PURE__ */ e.jsx("span", { className: "ds-model-picker__item-name", children: v.displayName || v.name }),
|
|
2568
|
-
|
|
2574
|
+
P && v.tier && /* @__PURE__ */ e.jsx(de, { size: "xs", variant: Me[v.tier] || "default", children: v.tier })
|
|
2569
2575
|
]
|
|
2570
2576
|
},
|
|
2571
2577
|
v.name
|
|
2572
|
-
), H = () => !i || !
|
|
2573
|
-
const C =
|
|
2578
|
+
), H = () => !i || !P ? R.map(q) : ["fast", "standard", "premium"].flatMap((v) => {
|
|
2579
|
+
const C = R.filter((X) => X.tier === v);
|
|
2574
2580
|
return C.length ? [
|
|
2575
2581
|
/* @__PURE__ */ e.jsx("div", { className: "ds-model-picker__group-label", "data-tier": v, children: v.charAt(0).toUpperCase() + v.slice(1) }, `lbl-${v}`),
|
|
2576
2582
|
...C.map(q)
|
|
2577
2583
|
] : [];
|
|
2578
2584
|
}), F = d && /* @__PURE__ */ e.jsxs("div", { ref: u, className: "ds-model-picker__menu ds-scrollable", "data-ds-portal": "", style: b, children: [
|
|
2579
|
-
|
|
2585
|
+
r && g && /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
2580
2586
|
/* @__PURE__ */ e.jsxs(
|
|
2581
2587
|
"button",
|
|
2582
2588
|
{
|
|
@@ -2586,14 +2592,14 @@ function Ft({
|
|
|
2586
2592
|
"ds-model-picker__item--auto",
|
|
2587
2593
|
t === "auto" && "ds-model-picker__item--active"
|
|
2588
2594
|
].filter(Boolean).join(" "),
|
|
2589
|
-
onClick: () =>
|
|
2595
|
+
onClick: () => B("auto"),
|
|
2590
2596
|
children: [
|
|
2591
2597
|
/* @__PURE__ */ e.jsx(ts, { size: 12, strokeWidth: 1.5, className: "ds-model-picker__item-icon" }),
|
|
2592
2598
|
/* @__PURE__ */ e.jsx("span", { className: "ds-model-picker__item-name", children: "Auto (smart routing)" })
|
|
2593
2599
|
]
|
|
2594
2600
|
}
|
|
2595
2601
|
),
|
|
2596
|
-
|
|
2602
|
+
R.length > 0 && /* @__PURE__ */ e.jsx("div", { className: "ds-model-picker__separator" })
|
|
2597
2603
|
] }),
|
|
2598
2604
|
H()
|
|
2599
2605
|
] });
|
|
@@ -2614,9 +2620,9 @@ function Ft({
|
|
|
2614
2620
|
"aria-haspopup": "listbox",
|
|
2615
2621
|
"aria-expanded": d,
|
|
2616
2622
|
children: [
|
|
2617
|
-
|
|
2618
|
-
/* @__PURE__ */ e.jsx("span", { className: "ds-model-picker__trigger-name", children: (
|
|
2619
|
-
|
|
2623
|
+
N != null && N.icon ? /* @__PURE__ */ e.jsx("span", { children: N.icon }) : /* @__PURE__ */ e.jsx(De, { size: 12, strokeWidth: 1.5 }),
|
|
2624
|
+
/* @__PURE__ */ e.jsx("span", { className: "ds-model-picker__trigger-name", children: (N == null ? void 0 : N.displayName) || (N == null ? void 0 : N.name) || t }),
|
|
2625
|
+
P && (N == null ? void 0 : N.tier) && /* @__PURE__ */ e.jsx(de, { size: "xs", variant: Me[N.tier] || "default", children: N.tier })
|
|
2620
2626
|
]
|
|
2621
2627
|
}
|
|
2622
2628
|
),
|
|
@@ -2632,20 +2638,20 @@ const Ls = ({ filename: s, pages: t }) => /* @__PURE__ */ e.jsxs("span", { style
|
|
|
2632
2638
|
function Ne(s) {
|
|
2633
2639
|
return s != null && s.length ? "p. " + s.join(", ") : null;
|
|
2634
2640
|
}
|
|
2635
|
-
function
|
|
2641
|
+
function Ps(s) {
|
|
2636
2642
|
const t = /* @__PURE__ */ new Map();
|
|
2637
|
-
for (const
|
|
2638
|
-
t.has(
|
|
2643
|
+
for (const n of s)
|
|
2644
|
+
t.has(n.filename) || t.set(n.filename, { filename: n.filename, url: n.url, items: [] }), t.get(n.filename).items.push(n);
|
|
2639
2645
|
return [...t.values()];
|
|
2640
2646
|
}
|
|
2641
2647
|
function Wt({
|
|
2642
2648
|
sources: s = [],
|
|
2643
2649
|
layout: t = "list",
|
|
2644
|
-
title:
|
|
2650
|
+
title: n = "Sources",
|
|
2645
2651
|
maxVisible: o = 5,
|
|
2646
2652
|
onSourceClick: a
|
|
2647
2653
|
}) {
|
|
2648
|
-
const [
|
|
2654
|
+
const [r, i] = I(!1), l = Ps(s), m = l.length > o, d = r ? l : l.slice(0, o), f = s.some((h) => h.snippet), p = ["ds-sources-panel", t === "compact" && "ds-sources-panel--compact"].filter(Boolean).join(" ");
|
|
2649
2655
|
return t === "compact" ? /* @__PURE__ */ e.jsxs("div", { className: p, children: [
|
|
2650
2656
|
d.map((h) => {
|
|
2651
2657
|
const u = h.items.map((_) => _.page).filter(Boolean), b = !!a;
|
|
@@ -2655,7 +2661,7 @@ function Wt({
|
|
|
2655
2661
|
className: `ds-sources-panel__compact-row${b ? " ds-sources-panel__compact-row--clickable" : ""}`,
|
|
2656
2662
|
onClick: b ? () => a(h.items[0]) : void 0,
|
|
2657
2663
|
children: [
|
|
2658
|
-
/* @__PURE__ */ e.jsx(
|
|
2664
|
+
/* @__PURE__ */ e.jsx(ns, { size: A[1], strokeWidth: 1.5, className: "ds-sources-panel__compact-icon" }),
|
|
2659
2665
|
/* @__PURE__ */ e.jsx("span", { className: "ds-sources-panel__filename", children: h.filename }),
|
|
2660
2666
|
u.length > 0 && /* @__PURE__ */ e.jsx("span", { className: "ds-sources-panel__pages", children: Ne(u) })
|
|
2661
2667
|
]
|
|
@@ -2663,13 +2669,13 @@ function Wt({
|
|
|
2663
2669
|
h.filename
|
|
2664
2670
|
);
|
|
2665
2671
|
}),
|
|
2666
|
-
m && !
|
|
2672
|
+
m && !r && /* @__PURE__ */ e.jsxs("button", { className: "ds-sources-panel__more", onClick: () => i(!0), children: [
|
|
2667
2673
|
"+",
|
|
2668
2674
|
l.length - o,
|
|
2669
2675
|
" more sources"
|
|
2670
2676
|
] })
|
|
2671
2677
|
] }) : /* @__PURE__ */ e.jsxs("div", { className: p, children: [
|
|
2672
|
-
|
|
2678
|
+
n && /* @__PURE__ */ e.jsx("div", { className: "ds-sources-panel__title", children: n }),
|
|
2673
2679
|
d.map((h) => {
|
|
2674
2680
|
const u = h.items.map((_) => _.page).filter(Boolean), b = !!a;
|
|
2675
2681
|
return f ? /* @__PURE__ */ e.jsx(
|
|
@@ -2677,14 +2683,14 @@ function Wt({
|
|
|
2677
2683
|
{
|
|
2678
2684
|
title: /* @__PURE__ */ e.jsx(Ls, { filename: h.filename, pages: u }),
|
|
2679
2685
|
padding: "s",
|
|
2680
|
-
children: h.items.map((_,
|
|
2686
|
+
children: h.items.map((_, y) => /* @__PURE__ */ e.jsx(
|
|
2681
2687
|
"div",
|
|
2682
2688
|
{
|
|
2683
2689
|
className: `ds-sources-panel__snippet${b ? " ds-sources-panel__snippet--clickable" : ""}`,
|
|
2684
2690
|
onClick: b ? () => a(_) : void 0,
|
|
2685
2691
|
children: _.snippet ?? `p. ${_.page}`
|
|
2686
2692
|
},
|
|
2687
|
-
|
|
2693
|
+
y
|
|
2688
2694
|
))
|
|
2689
2695
|
},
|
|
2690
2696
|
h.filename
|
|
@@ -2701,7 +2707,7 @@ function Wt({
|
|
|
2701
2707
|
h.filename
|
|
2702
2708
|
);
|
|
2703
2709
|
}),
|
|
2704
|
-
m && !
|
|
2710
|
+
m && !r && /* @__PURE__ */ e.jsxs("button", { className: "ds-sources-panel__more", onClick: () => i(!0), children: [
|
|
2705
2711
|
"+",
|
|
2706
2712
|
l.length - o,
|
|
2707
2713
|
" more sources"
|
|
@@ -2714,17 +2720,17 @@ function ze(s) {
|
|
|
2714
2720
|
function Ct({
|
|
2715
2721
|
used: s,
|
|
2716
2722
|
limit: t,
|
|
2717
|
-
size:
|
|
2723
|
+
size: n = "s",
|
|
2718
2724
|
showCount: o = !0,
|
|
2719
2725
|
showPercent: a = !1,
|
|
2720
|
-
warningThreshold:
|
|
2726
|
+
warningThreshold: r = 0.8,
|
|
2721
2727
|
errorThreshold: i = 1
|
|
2722
2728
|
}) {
|
|
2723
|
-
const l = t > 0 ? s / t : 0, m = Math.min(l * 100, 100), d = l >= i ? "error" : l >=
|
|
2729
|
+
const l = t > 0 ? s / t : 0, m = Math.min(l * 100, 100), d = l >= i ? "error" : l >= r ? "warning" : "normal";
|
|
2724
2730
|
return /* @__PURE__ */ e.jsxs(
|
|
2725
2731
|
"div",
|
|
2726
2732
|
{
|
|
2727
|
-
className: `ds-token-counter ds-token-counter--${
|
|
2733
|
+
className: `ds-token-counter ds-token-counter--${n}`,
|
|
2728
2734
|
role: "meter",
|
|
2729
2735
|
"aria-valuenow": s,
|
|
2730
2736
|
"aria-valuemax": t,
|
|
@@ -2753,16 +2759,16 @@ function Ct({
|
|
|
2753
2759
|
);
|
|
2754
2760
|
}
|
|
2755
2761
|
const Oe = 5;
|
|
2756
|
-
function
|
|
2762
|
+
function Ms(s) {
|
|
2757
2763
|
return s < 0.34 ? "low" : s < 0.67 ? "medium" : "high";
|
|
2758
2764
|
}
|
|
2759
2765
|
function Ut({
|
|
2760
2766
|
value: s = 0,
|
|
2761
2767
|
size: t = "xs",
|
|
2762
|
-
showLabel:
|
|
2768
|
+
showLabel: n = "none",
|
|
2763
2769
|
layout: o = "inline"
|
|
2764
2770
|
}) {
|
|
2765
|
-
const a = Math.max(0, Math.min(1, s)),
|
|
2771
|
+
const a = Math.max(0, Math.min(1, s)), r = Math.round(a * Oe), i = Ms(a);
|
|
2766
2772
|
return /* @__PURE__ */ e.jsxs("div", { className: [
|
|
2767
2773
|
"ds-confidence-bar",
|
|
2768
2774
|
`ds-confidence-bar--${t}`,
|
|
@@ -2772,11 +2778,11 @@ function Ut({
|
|
|
2772
2778
|
/* @__PURE__ */ e.jsx("div", { className: "ds-confidence-bar__segments", "aria-hidden": "true", children: Array.from({ length: Oe }, (l, m) => /* @__PURE__ */ e.jsx(
|
|
2773
2779
|
"div",
|
|
2774
2780
|
{
|
|
2775
|
-
className: `ds-confidence-bar__seg${m <
|
|
2781
|
+
className: `ds-confidence-bar__seg${m < r ? " ds-confidence-bar__seg--filled" : ""}`
|
|
2776
2782
|
},
|
|
2777
2783
|
m
|
|
2778
2784
|
)) }),
|
|
2779
|
-
|
|
2785
|
+
n === "text" && /* @__PURE__ */ e.jsx("span", { className: "ds-confidence-bar__label", children: i })
|
|
2780
2786
|
] });
|
|
2781
2787
|
}
|
|
2782
2788
|
const zs = { add: "+", remove: "-", context: " " };
|
|
@@ -2790,20 +2796,20 @@ function _e({ line: s, lineNumbers: t }) {
|
|
|
2790
2796
|
function Vt({
|
|
2791
2797
|
lines: s = [],
|
|
2792
2798
|
layout: t = "inline",
|
|
2793
|
-
wordWrap:
|
|
2799
|
+
wordWrap: n = !1,
|
|
2794
2800
|
lineNumbers: o = !0,
|
|
2795
2801
|
maxHeight: a,
|
|
2796
|
-
title:
|
|
2802
|
+
title: r
|
|
2797
2803
|
}) {
|
|
2798
2804
|
const i = [
|
|
2799
2805
|
"ds-diff-view",
|
|
2800
2806
|
`ds-diff-view--${t}`,
|
|
2801
|
-
|
|
2807
|
+
n && "ds-diff-view--wrap"
|
|
2802
2808
|
].filter(Boolean).join(" "), l = a ? { maxHeight: a, overflowY: "auto" } : void 0;
|
|
2803
2809
|
if (t === "split") {
|
|
2804
2810
|
const m = s.filter((f) => f.type === "remove" || f.type === "context"), d = s.filter((f) => f.type === "add" || f.type === "context");
|
|
2805
2811
|
return /* @__PURE__ */ e.jsxs("div", { className: i, children: [
|
|
2806
|
-
|
|
2812
|
+
r && /* @__PURE__ */ e.jsx("div", { className: "ds-diff-view__title", children: r }),
|
|
2807
2813
|
/* @__PURE__ */ e.jsxs("div", { className: "ds-diff-view__body ds-scrollable", style: l, children: [
|
|
2808
2814
|
/* @__PURE__ */ e.jsx("div", { className: "ds-diff-view__split-col ds-scrollable", children: m.map((f, p) => /* @__PURE__ */ e.jsx(_e, { line: f, lineNumbers: o }, p)) }),
|
|
2809
2815
|
/* @__PURE__ */ e.jsx("div", { className: "ds-diff-view__split-col ds-scrollable", children: d.map((f, p) => /* @__PURE__ */ e.jsx(_e, { line: f, lineNumbers: o }, p)) })
|
|
@@ -2811,29 +2817,29 @@ function Vt({
|
|
|
2811
2817
|
] });
|
|
2812
2818
|
}
|
|
2813
2819
|
return /* @__PURE__ */ e.jsxs("div", { className: i, children: [
|
|
2814
|
-
|
|
2820
|
+
r && /* @__PURE__ */ e.jsx("div", { className: "ds-diff-view__title", children: r }),
|
|
2815
2821
|
/* @__PURE__ */ e.jsx("div", { className: "ds-diff-view__body ds-scrollable", style: l, children: s.map((m, d) => /* @__PURE__ */ e.jsx(_e, { line: m, lineNumbers: o }, d)) })
|
|
2816
2822
|
] });
|
|
2817
2823
|
}
|
|
2818
2824
|
function Os({
|
|
2819
2825
|
value: s = "idle",
|
|
2820
2826
|
onLike: t,
|
|
2821
|
-
onDislike:
|
|
2827
|
+
onDislike: n,
|
|
2822
2828
|
className: o = "",
|
|
2823
2829
|
...a
|
|
2824
2830
|
}) {
|
|
2825
|
-
const
|
|
2831
|
+
const r = s !== "idle";
|
|
2826
2832
|
return /* @__PURE__ */ e.jsxs(
|
|
2827
2833
|
"div",
|
|
2828
2834
|
{
|
|
2829
2835
|
className: [
|
|
2830
2836
|
"ds-message-feedback",
|
|
2831
|
-
|
|
2837
|
+
r && "ds-message-feedback--voted",
|
|
2832
2838
|
o
|
|
2833
2839
|
].filter(Boolean).join(" "),
|
|
2834
2840
|
...a,
|
|
2835
2841
|
children: [
|
|
2836
|
-
(!
|
|
2842
|
+
(!r || s === "liked") && /* @__PURE__ */ e.jsx(
|
|
2837
2843
|
"button",
|
|
2838
2844
|
{
|
|
2839
2845
|
className: [
|
|
@@ -2841,34 +2847,34 @@ function Os({
|
|
|
2841
2847
|
s === "liked" && "ds-message-feedback__btn--liked"
|
|
2842
2848
|
].filter(Boolean).join(" "),
|
|
2843
2849
|
onClick: t,
|
|
2844
|
-
disabled:
|
|
2850
|
+
disabled: r,
|
|
2845
2851
|
"aria-label": "Like",
|
|
2846
2852
|
"aria-pressed": s === "liked",
|
|
2847
2853
|
children: /* @__PURE__ */ e.jsx(
|
|
2848
|
-
|
|
2854
|
+
rs,
|
|
2849
2855
|
{
|
|
2850
|
-
size:
|
|
2856
|
+
size: A[1],
|
|
2851
2857
|
strokeWidth: 1.5,
|
|
2852
2858
|
fill: s === "liked" ? "currentColor" : "none"
|
|
2853
2859
|
}
|
|
2854
2860
|
)
|
|
2855
2861
|
}
|
|
2856
2862
|
),
|
|
2857
|
-
(!
|
|
2863
|
+
(!r || s === "disliked") && /* @__PURE__ */ e.jsx(
|
|
2858
2864
|
"button",
|
|
2859
2865
|
{
|
|
2860
2866
|
className: [
|
|
2861
2867
|
"ds-message-feedback__btn",
|
|
2862
2868
|
s === "disliked" && "ds-message-feedback__btn--disliked"
|
|
2863
2869
|
].filter(Boolean).join(" "),
|
|
2864
|
-
onClick:
|
|
2865
|
-
disabled:
|
|
2870
|
+
onClick: n,
|
|
2871
|
+
disabled: r,
|
|
2866
2872
|
"aria-label": "Dislike",
|
|
2867
2873
|
"aria-pressed": s === "disliked",
|
|
2868
2874
|
children: /* @__PURE__ */ e.jsx(
|
|
2869
2875
|
as,
|
|
2870
2876
|
{
|
|
2871
|
-
size:
|
|
2877
|
+
size: A[1],
|
|
2872
2878
|
strokeWidth: 1.5,
|
|
2873
2879
|
fill: s === "disliked" ? "currentColor" : "none"
|
|
2874
2880
|
}
|
|
@@ -2882,23 +2888,23 @@ function Os({
|
|
|
2882
2888
|
function Fs(s) {
|
|
2883
2889
|
const t = s instanceof Date ? s : new Date(s);
|
|
2884
2890
|
if (isNaN(t)) return null;
|
|
2885
|
-
const
|
|
2891
|
+
const n = /* @__PURE__ */ new Date(), o = t.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit", hour12: !1 }), a = new Date(n.getFullYear(), n.getMonth(), n.getDate()), r = new Date(a - 864e5);
|
|
2886
2892
|
if (t >= a) return o;
|
|
2887
|
-
if (t >=
|
|
2893
|
+
if (t >= r) return `Yesterday ${o}`;
|
|
2888
2894
|
const i = t.getDate(), l = t.toLocaleString([], { month: "short" });
|
|
2889
2895
|
return `${i} ${l} ${o}`;
|
|
2890
2896
|
}
|
|
2891
2897
|
function Yt({
|
|
2892
2898
|
role: s = "assistant",
|
|
2893
2899
|
text: t,
|
|
2894
|
-
timestamp:
|
|
2900
|
+
timestamp: n,
|
|
2895
2901
|
feedbackValue: o = "idle",
|
|
2896
2902
|
onLike: a,
|
|
2897
|
-
onDislike:
|
|
2903
|
+
onDislike: r,
|
|
2898
2904
|
className: i = "",
|
|
2899
2905
|
...l
|
|
2900
2906
|
}) {
|
|
2901
|
-
const m = s === "assistant" && (a ||
|
|
2907
|
+
const m = s === "assistant" && (a || r), d = !!t, f = n ? Fs(n) : null;
|
|
2902
2908
|
return !m && !d && !f ? null : /* @__PURE__ */ e.jsxs(
|
|
2903
2909
|
"div",
|
|
2904
2910
|
{
|
|
@@ -2906,21 +2912,21 @@ function Yt({
|
|
|
2906
2912
|
...l,
|
|
2907
2913
|
children: [
|
|
2908
2914
|
s === "user" && f && /* @__PURE__ */ e.jsx("span", { className: "ds-message-footer__timestamp ds-message-action", children: f }),
|
|
2909
|
-
m && /* @__PURE__ */ e.jsx(Os, { className: "ds-message-action", value: o, onLike: a, onDislike:
|
|
2915
|
+
m && /* @__PURE__ */ e.jsx(Os, { className: "ds-message-action", value: o, onLike: a, onDislike: r }),
|
|
2910
2916
|
d && /* @__PURE__ */ e.jsx(Is, { className: "ds-message-action", text: t }),
|
|
2911
2917
|
s === "assistant" && f && /* @__PURE__ */ e.jsx("span", { className: "ds-message-footer__timestamp ds-message-action", children: f })
|
|
2912
2918
|
]
|
|
2913
2919
|
}
|
|
2914
2920
|
);
|
|
2915
2921
|
}
|
|
2916
|
-
function qt({ label: s, className: t = "", ...
|
|
2917
|
-
return /* @__PURE__ */ e.jsxs("span", { className: ["ds-thinking-dot", t].filter(Boolean).join(" "), ...
|
|
2922
|
+
function qt({ label: s, className: t = "", ...n }) {
|
|
2923
|
+
return /* @__PURE__ */ e.jsxs("span", { className: ["ds-thinking-dot", t].filter(Boolean).join(" "), ...n, children: [
|
|
2918
2924
|
/* @__PURE__ */ e.jsx("span", { className: "ds-thinking-dot__pulse" }),
|
|
2919
2925
|
s && /* @__PURE__ */ e.jsx("span", { className: "ds-thinking-dot__label", children: s })
|
|
2920
2926
|
] });
|
|
2921
2927
|
}
|
|
2922
|
-
function Ht({ variant: s = "light", glow: t, mask:
|
|
2923
|
-
const
|
|
2928
|
+
function Ht({ variant: s = "light", glow: t, mask: n = !0, style: o, ...a }) {
|
|
2929
|
+
const r = s === "dark", i = t ?? r, l = r ? "rgba(255,250,250,0.05)" : "var(--color-border-light)", m = r ? "rgba(255,250,250,0.025)" : "color-mix(in srgb, var(--color-border-light) 50%, transparent)";
|
|
2924
2930
|
return /* @__PURE__ */ e.jsx(
|
|
2925
2931
|
"div",
|
|
2926
2932
|
{
|
|
@@ -2950,7 +2956,7 @@ function Ht({ variant: s = "light", glow: t, mask: r = !0, style: o, ...a }) {
|
|
|
2950
2956
|
].join(", "),
|
|
2951
2957
|
backgroundSize: "80px 80px, 80px 80px, 16px 16px, 16px 16px",
|
|
2952
2958
|
backgroundPosition: "-1px -1px, -1px -1px, -1px -1px, -1px -1px",
|
|
2953
|
-
...
|
|
2959
|
+
...n && {
|
|
2954
2960
|
WebkitMaskImage: "radial-gradient(ellipse at center, #000 30%, transparent 85%)",
|
|
2955
2961
|
maskImage: "radial-gradient(ellipse at center, #000 30%, transparent 85%)"
|
|
2956
2962
|
}
|
|
@@ -2960,13 +2966,13 @@ function Ht({ variant: s = "light", glow: t, mask: r = !0, style: o, ...a }) {
|
|
|
2960
2966
|
}
|
|
2961
2967
|
);
|
|
2962
2968
|
}
|
|
2963
|
-
function Kt({ children: s, axis: t = "y", style:
|
|
2964
|
-
const
|
|
2969
|
+
function Kt({ children: s, axis: t = "y", style: n, className: o = "", ...a }) {
|
|
2970
|
+
const r = t === "x" ? { overflowX: "auto", overflowY: "hidden" } : t === "both" ? { overflow: "auto" } : { overflowY: "auto", overflowX: "hidden" };
|
|
2965
2971
|
return /* @__PURE__ */ e.jsx(
|
|
2966
2972
|
"div",
|
|
2967
2973
|
{
|
|
2968
2974
|
className: `ds-scrollable ${o}`,
|
|
2969
|
-
style: { ...
|
|
2975
|
+
style: { ...r, ...n },
|
|
2970
2976
|
...a,
|
|
2971
2977
|
children: s
|
|
2972
2978
|
}
|
|
@@ -2983,9 +2989,9 @@ export {
|
|
|
2983
2989
|
gt as Breadcrumb,
|
|
2984
2990
|
ce as Button,
|
|
2985
2991
|
Ks as Card,
|
|
2986
|
-
|
|
2992
|
+
Mt as ChatMessage,
|
|
2987
2993
|
dt as Checkbox,
|
|
2988
|
-
|
|
2994
|
+
nt as Code,
|
|
2989
2995
|
ps as CodeAccordion,
|
|
2990
2996
|
Ut as ConfidenceBar,
|
|
2991
2997
|
Is as CopyButton,
|
|
@@ -3002,7 +3008,7 @@ export {
|
|
|
3002
3008
|
Zs as H4,
|
|
3003
3009
|
St as InView,
|
|
3004
3010
|
Vs as Input,
|
|
3005
|
-
|
|
3011
|
+
rt as Link,
|
|
3006
3012
|
Os as MessageFeedback,
|
|
3007
3013
|
Yt as MessageFooter,
|
|
3008
3014
|
st as Modal,
|
|
@@ -3025,7 +3031,7 @@ export {
|
|
|
3025
3031
|
wt as Stat,
|
|
3026
3032
|
Lt as StepIndicator,
|
|
3027
3033
|
Hs as Stepper,
|
|
3028
|
-
|
|
3034
|
+
Pt as StreamingText,
|
|
3029
3035
|
ot as Tab,
|
|
3030
3036
|
mt as Table,
|
|
3031
3037
|
ht as TableBody,
|
|
@@ -3043,7 +3049,7 @@ export {
|
|
|
3043
3049
|
At as ToolCallBubble,
|
|
3044
3050
|
At as ToolCallCard,
|
|
3045
3051
|
lt as Tooltip,
|
|
3046
|
-
|
|
3052
|
+
A as iconSizes,
|
|
3047
3053
|
Es as useAnimatedNumber,
|
|
3048
3054
|
As as useAnimatedPlaceholder,
|
|
3049
3055
|
$s as useInView,
|