@flesler/cursor-canvas-web 0.0.0-stage → 1.0.0

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.
@@ -0,0 +1,1406 @@
1
+ import { jsx as i, jsxs as g } from "react/jsx-runtime";
2
+ import { useComputedColorScheme as xe, Button as ve, Alert as Ee, Card as be, Checkbox as ke, Divider as Ce, Title as W, ActionIcon as Se, Badge as Fe, Group as Ae, Select as Be, Stack as we, Text as H, Table as E, Textarea as Te, TextInput as Le, Switch as De } from "@mantine/core";
3
+ import { useState as z, createContext as Me, useCallback as G, useContext as ne } from "react";
4
+ import { useEffect as _t, useMemo as qt, useRef as Qt, useState as Kt } from "react";
5
+ import { BarChart as ze, AreaChart as Pe, LineChart as Re, DonutChart as $e, PieChart as He } from "@mantine/charts";
6
+ const oe = {
7
+ foreground: "#E4E4E4EB",
8
+ foregroundSecondary: "#E4E4E48D",
9
+ foregroundTertiary: "#E4E4E45E",
10
+ foregroundQuaternary: "#E4E4E442",
11
+ editor: "#181818",
12
+ chrome: "#141414",
13
+ sidebar: "#141414",
14
+ elevated: "#181818",
15
+ fillPrimary: "#E4E4E430",
16
+ fillSecondary: "#E4E4E41E",
17
+ fillTertiary: "#E4E4E411",
18
+ fillQuaternary: "#E4E4E40A",
19
+ strokePrimary: "#E4E4E433",
20
+ strokeSecondary: "#E4E4E41F",
21
+ strokeTertiary: "#E4E4E414",
22
+ strokeFocused: "#599CE7",
23
+ accent: "#599CE7",
24
+ buttonBackground: "#599CE7",
25
+ buttonForeground: "#191c22",
26
+ buttonHoverBackground: "#6AABE9",
27
+ link: "#87c3ff",
28
+ diffInsertedLine: "#3FA26633",
29
+ diffRemovedLine: "#B8004933",
30
+ diffStripAdded: "#3FA2668F",
31
+ diffStripRemoved: "#FC6B838F"
32
+ }, ae = {
33
+ foreground: "#141414F0",
34
+ foregroundSecondary: "#141414BD",
35
+ foregroundTertiary: "#1414148A",
36
+ foregroundQuaternary: "#1414145C",
37
+ editor: "#FCFCFC",
38
+ chrome: "#F8F8F8",
39
+ sidebar: "#F3F3F3",
40
+ elevated: "#FCFCFC",
41
+ fillPrimary: "#14141433",
42
+ fillSecondary: "#14141424",
43
+ fillTertiary: "#14141414",
44
+ fillQuaternary: "#1414140F",
45
+ strokePrimary: "#14141433",
46
+ strokeSecondary: "#1414141F",
47
+ strokeTertiary: "#14141414",
48
+ strokeFocused: "#3685BF",
49
+ accent: "#3685BF",
50
+ buttonBackground: "#3685BF",
51
+ buttonForeground: "#FCFCFC",
52
+ buttonHoverBackground: "#2E76AB",
53
+ link: "#3685BF",
54
+ diffInsertedLine: "#1F8A651F",
55
+ diffRemovedLine: "#CF2D5614",
56
+ diffStripAdded: "#1F8A65CC",
57
+ diffStripRemoved: "#CF2D56CC"
58
+ }, N = {
59
+ gray: "#8888A8E0",
60
+ purple: "#7B64B8F0",
61
+ green: "#1F8A65E8",
62
+ yellow: "#E8C030E0",
63
+ cyan: "#2A9A8AE0",
64
+ pink: "#C85898E0",
65
+ blue: "#2E79B5E0",
66
+ orange: "#F0A040E0",
67
+ red: "#C04848E0"
68
+ }, ie = {
69
+ gray: "#8888A8E0",
70
+ purple: "#7B64B8F0",
71
+ green: "#1F8A65E8",
72
+ yellow: "#E8C030E0",
73
+ cyan: "#2A9A8AE0",
74
+ pink: "#C85898E0",
75
+ blue: "#2E79B5E0",
76
+ orange: "#F0A088E0",
77
+ red: "#CF2D56E0"
78
+ };
79
+ function ce(e, t) {
80
+ return {
81
+ bg: {
82
+ editor: e.editor,
83
+ chrome: e.chrome,
84
+ elevated: e.elevated
85
+ },
86
+ text: {
87
+ primary: e.foreground,
88
+ secondary: e.foregroundSecondary,
89
+ tertiary: e.foregroundTertiary,
90
+ quaternary: e.foregroundQuaternary,
91
+ link: e.link,
92
+ onAccent: e.buttonForeground
93
+ },
94
+ stroke: {
95
+ primary: e.strokePrimary,
96
+ secondary: e.strokeSecondary,
97
+ tertiary: e.strokeTertiary,
98
+ focused: e.strokeFocused
99
+ },
100
+ fill: {
101
+ primary: e.fillPrimary,
102
+ secondary: e.fillSecondary,
103
+ tertiary: e.fillTertiary,
104
+ quaternary: e.fillQuaternary
105
+ },
106
+ accent: {
107
+ primary: e.accent,
108
+ control: e.buttonBackground,
109
+ controlHover: e.buttonHoverBackground
110
+ },
111
+ diff: {
112
+ insertedLine: e.diffInsertedLine,
113
+ removedLine: e.diffRemovedLine,
114
+ stripAdded: e.diffStripAdded,
115
+ stripRemoved: e.diffStripRemoved
116
+ },
117
+ category: t
118
+ };
119
+ }
120
+ const Ie = ce(
121
+ oe,
122
+ N
123
+ ), We = ce(
124
+ ae,
125
+ ie
126
+ ), nt = N, te = [
127
+ "blue",
128
+ "purple",
129
+ "green",
130
+ "yellow",
131
+ "cyan",
132
+ "pink",
133
+ "orange",
134
+ "red",
135
+ "gray"
136
+ ], Ge = {
137
+ green: "#1F8A65E8",
138
+ darkGreen: "#0D855AE0",
139
+ lightGreen: "#52B896E0",
140
+ mintGreen: "#7DCAB0E0",
141
+ blue: "#2E79B5E0",
142
+ lightBlue: "#70B0D8E0",
143
+ indigo: "#5A6CC0F0",
144
+ lightIndigo: "#9AAADCE0",
145
+ purple: "#7B64B8F0",
146
+ lightPurple: "#AA98D8E0",
147
+ warmPink: "#C85898E0",
148
+ lightPink: "#E8A0C4E0",
149
+ brightOrange: "#F0A040E0",
150
+ deepOrange: "#C06028E0",
151
+ goldenYellow: "#E8C030E0",
152
+ darkAmber: "#C04848E0",
153
+ warmPeach: "#F0A088E0",
154
+ vibrantTeal: "#2A9A8AE0",
155
+ muted: "#8888A8E0",
156
+ neutralLine: "#888899D0"
157
+ }, Ne = {
158
+ h1: { fontSize: "24px", lineHeight: "30px", fontWeight: 590 },
159
+ h2: { fontSize: "18px", lineHeight: "24px", fontWeight: 590 },
160
+ h3: { fontSize: "16px", lineHeight: "22px", fontWeight: 590 },
161
+ body: { fontSize: "14px", lineHeight: "20px", fontWeight: 400 },
162
+ small: { fontSize: "12px", lineHeight: "16px", fontWeight: 400 }
163
+ }, je = {
164
+ "0.5": 2,
165
+ 1: 4,
166
+ "1.5": 6,
167
+ 2: 8,
168
+ "2.5": 10,
169
+ 3: 12,
170
+ "3.5": 14,
171
+ 4: 16,
172
+ "4.5": 18,
173
+ 5: 20,
174
+ 6: 24,
175
+ 7: 28,
176
+ 8: 32,
177
+ 9: 36,
178
+ 10: 40
179
+ }, Oe = {
180
+ none: 0,
181
+ xs: 2,
182
+ sm: 4,
183
+ md: 6,
184
+ lg: 8,
185
+ xl: 12,
186
+ full: 9999
187
+ }, I = [
188
+ "#1F8A65E8",
189
+ "#70B0D8E0",
190
+ "#5A6CC0F0",
191
+ "#F0A040E0",
192
+ "#C06028E0",
193
+ "#E8C030E0",
194
+ "#C85898E0",
195
+ "#F0A088E0",
196
+ "#7B64B8F0",
197
+ "#7DCAB0E0",
198
+ "#8888A8E0",
199
+ "#2A9A8AE0"
200
+ ], b = {
201
+ success: "#1F8A65",
202
+ danger: "#CF2D56",
203
+ warning: "#E8A33D",
204
+ info: "#2E79B5",
205
+ neutral: "#8888A8",
206
+ added: "#1F8A65",
207
+ deleted: "#CF2D56",
208
+ renamed: "#5A6CC0"
209
+ }, j = {
210
+ success: "green",
211
+ danger: "red",
212
+ warning: "orange",
213
+ info: "blue",
214
+ neutral: "gray",
215
+ added: "green",
216
+ deleted: "red",
217
+ renamed: "indigo"
218
+ };
219
+ function _e(e) {
220
+ const t = e === "dark" ? Ie : We;
221
+ return {
222
+ ...t,
223
+ kind: e,
224
+ tokens: t,
225
+ palette: e === "dark" ? oe : ae,
226
+ category: e === "dark" ? N : ie,
227
+ // Back-compat: real IDE canvases read these on useHostTheme(); public hooks.d.ts
228
+ // is sometimes narrower — see COMPAT.md (not a second theme API version).
229
+ chart: { palette: Ge, sequence: I },
230
+ radius: Oe,
231
+ typography: Ne,
232
+ spacing: je
233
+ };
234
+ }
235
+ function S() {
236
+ const e = xe("light");
237
+ return _e(e === "dark" ? "dark" : "light");
238
+ }
239
+ function se(e, t) {
240
+ return e ? b[e] : I[t % I.length];
241
+ }
242
+ function le(e, t) {
243
+ return e.map((r, a) => {
244
+ const c = { category: r };
245
+ for (const n of t)
246
+ c[n.name] = n.data[a] ?? 0;
247
+ return c;
248
+ });
249
+ }
250
+ function de(e) {
251
+ return e.map((t, r) => ({
252
+ name: t.name,
253
+ color: se(t.tone, r)
254
+ }));
255
+ }
256
+ function ue(e, t) {
257
+ if (!(!e && !t))
258
+ return (r) => `${t ?? ""}${r}${e ?? ""}`;
259
+ }
260
+ function qe(e, t) {
261
+ if (e != null && e.length)
262
+ return e.map((r) => ({
263
+ ...t ? { x: r.value } : { y: r.value },
264
+ label: r.label,
265
+ color: r.tone ? b[r.tone] : b.neutral
266
+ }));
267
+ }
268
+ function fe(e) {
269
+ const t = qe(e.referenceLines, !!e.horizontal);
270
+ if (e.stacked || e.normalized)
271
+ return { referenceLines: t };
272
+ const r = e.beginAtZero !== !1, a = [
273
+ e.yMin ?? (r ? 0 : "auto"),
274
+ e.yMax ?? "auto"
275
+ ];
276
+ return e.horizontal ? { xAxisProps: { domain: a }, referenceLines: t } : { yAxisProps: { domain: a }, referenceLines: t };
277
+ }
278
+ function Qe(e, t, r) {
279
+ return e !== void 0 ? e : t.length === 1 && r.length <= 8;
280
+ }
281
+ function ot({
282
+ categories: e,
283
+ series: t,
284
+ height: r = 240,
285
+ fill: a,
286
+ valueSuffix: c,
287
+ valuePrefix: n,
288
+ showValues: l,
289
+ showHoverGuide: u = !0,
290
+ beginAtZero: d,
291
+ yMin: s,
292
+ yMax: f,
293
+ referenceLines: y,
294
+ style: x
295
+ }) {
296
+ const v = le(e, t), B = de(t), k = fe({
297
+ beginAtZero: d,
298
+ yMin: s,
299
+ yMax: f,
300
+ referenceLines: y,
301
+ horizontal: !1
302
+ }), C = {
303
+ h: r,
304
+ data: v,
305
+ dataKey: "category",
306
+ series: B,
307
+ curveType: "monotone",
308
+ withLegend: t.length > 1,
309
+ valueFormatter: ue(c, n),
310
+ withPointLabels: l ?? e.length <= 20,
311
+ tooltipProps: u ? void 0 : { cursor: !1 },
312
+ ...k,
313
+ style: x
314
+ };
315
+ return a ? /* @__PURE__ */ i(Pe, { ...C }) : /* @__PURE__ */ i(Re, { ...C });
316
+ }
317
+ function at({
318
+ categories: e,
319
+ series: t,
320
+ height: r = 240,
321
+ stacked: a,
322
+ horizontal: c,
323
+ normalized: n,
324
+ valueSuffix: l,
325
+ valuePrefix: u,
326
+ showValues: d,
327
+ beginAtZero: s,
328
+ yMin: f,
329
+ yMax: y,
330
+ referenceLines: x,
331
+ style: v
332
+ }) {
333
+ const B = le(e, t), k = n ? "percent" : a ? "stacked" : "default", C = fe({
334
+ beginAtZero: s,
335
+ yMin: f,
336
+ yMax: y,
337
+ referenceLines: x,
338
+ horizontal: c,
339
+ stacked: a,
340
+ normalized: n
341
+ }), w = !a && !n && Qe(d, t, e);
342
+ return /* @__PURE__ */ i(
343
+ ze,
344
+ {
345
+ h: r,
346
+ data: B,
347
+ dataKey: "category",
348
+ series: de(t),
349
+ type: k,
350
+ orientation: c ? "vertical" : "horizontal",
351
+ withLegend: t.length > 1,
352
+ valueFormatter: ue(l, u),
353
+ withBarValueLabel: w,
354
+ ...C,
355
+ style: v
356
+ }
357
+ );
358
+ }
359
+ function it({ data: e, size: t = 200, donut: r, style: a }) {
360
+ const n = {
361
+ data: e.map((l, u) => ({
362
+ name: l.label,
363
+ value: l.value,
364
+ color: se(l.tone, u)
365
+ })),
366
+ size: t,
367
+ withTooltip: !0,
368
+ style: a
369
+ };
370
+ return r ? /* @__PURE__ */ i($e, { ...n }) : /* @__PURE__ */ i(He, { ...n, withLabelsLine: !1 });
371
+ }
372
+ function ct(e) {
373
+ const {
374
+ nodes: t,
375
+ edges: r,
376
+ direction: a = "vertical",
377
+ nodeWidth: c = 160,
378
+ nodeHeight: n = 40,
379
+ rankGap: l = 64,
380
+ nodeGap: u = 48,
381
+ padding: d = 24
382
+ } = e, s = t.map((o) => o.id), f = new Set(s), y = /* @__PURE__ */ new Map();
383
+ for (const o of s) y.set(o, []);
384
+ for (const o of r)
385
+ f.has(o.from) && f.has(o.to) && y.get(o.from).push(o.to);
386
+ const x = 0, v = 1, B = 2, k = new Map(s.map((o) => [o, x])), C = /* @__PURE__ */ new Set(), w = (o, h) => `${o}\0${h}`, _ = (o) => {
387
+ k.set(o, v);
388
+ for (const h of y.get(o) ?? []) {
389
+ const p = k.get(h);
390
+ p === v ? C.add(w(o, h)) : p === x && _(h);
391
+ }
392
+ k.set(o, B);
393
+ };
394
+ for (const o of s) k.get(o) === x && _(o);
395
+ const ge = r.filter(
396
+ (o) => f.has(o.from) && f.has(o.to) && !C.has(w(o.from, o.to))
397
+ ), F = new Map(s.map((o) => [o, 0])), q = new Map(s.map((o) => [o, []]));
398
+ for (const o of ge)
399
+ q.get(o.from).push(o.to), F.set(o.to, (F.get(o.to) ?? 0) + 1);
400
+ const T = new Map(s.map((o) => [o, 0])), P = s.filter((o) => (F.get(o) ?? 0) === 0);
401
+ for (; P.length > 0; ) {
402
+ const o = P.shift(), h = T.get(o);
403
+ for (const p of q.get(o))
404
+ T.set(p, Math.max(T.get(p), h + 1)), F.set(p, F.get(p) - 1), F.get(p) === 0 && P.push(p);
405
+ }
406
+ const A = /* @__PURE__ */ new Map();
407
+ for (const o of s) {
408
+ const h = T.get(o);
409
+ A.has(h) || A.set(h, []), A.get(h).push(o);
410
+ }
411
+ const L = [...A.keys()].sort((o, h) => o - h), m = a === "vertical", Q = (o) => o * (m ? c : n) + Math.max(0, o - 1) * u, K = Math.max(
412
+ 0,
413
+ ...L.map((o) => Q(A.get(o).length))
414
+ ), D = /* @__PURE__ */ new Map(), X = [];
415
+ L.forEach((o, h) => {
416
+ const p = A.get(o), R = Q(p.length), $ = d + (K - R) / 2, M = d + h * ((m ? n : c) + l);
417
+ p.forEach((U, Z) => {
418
+ const ee = $ + Z * ((m ? c : n) + u), ye = m ? ee : M, me = m ? M : ee;
419
+ D.set(U, { id: U, x: ye, y: me, rank: o, order: Z });
420
+ }), X.push({
421
+ rank: o,
422
+ x: m ? $ : M,
423
+ y: m ? M : $,
424
+ width: m ? R : c,
425
+ height: m ? n : R,
426
+ nodeIds: p
427
+ });
428
+ });
429
+ const Y = (o, h) => o ? m ? {
430
+ x: o.x + c / 2,
431
+ y: h === "source" ? o.y + n : o.y
432
+ } : {
433
+ x: h === "source" ? o.x + c : o.x,
434
+ y: o.y + n / 2
435
+ } : { x: 0, y: 0 }, pe = r.filter((o) => f.has(o.from) && f.has(o.to)).map((o) => {
436
+ const h = Y(D.get(o.from), "source"), p = Y(D.get(o.to), "target");
437
+ return {
438
+ from: o.from,
439
+ to: o.to,
440
+ sourceX: h.x,
441
+ sourceY: h.y,
442
+ targetX: p.x,
443
+ targetY: p.y,
444
+ isBackEdge: C.has(w(o.from, o.to))
445
+ };
446
+ }), V = d * 2 + L.length * (m ? n : c) + Math.max(0, L.length - 1) * l, J = d * 2 + K;
447
+ return {
448
+ nodes: [...D.values()],
449
+ edges: pe,
450
+ ranks: X,
451
+ direction: a,
452
+ width: m ? J : V,
453
+ height: m ? V : J
454
+ };
455
+ }
456
+ function st({
457
+ additions: e = 0,
458
+ deletions: t = 0,
459
+ style: r
460
+ }) {
461
+ return e === 0 && t === 0 ? null : /* @__PURE__ */ g(
462
+ "span",
463
+ {
464
+ style: {
465
+ display: "inline-flex",
466
+ gap: 8,
467
+ fontVariantNumeric: "tabular-nums",
468
+ fontSize: 12,
469
+ fontWeight: 600,
470
+ ...r
471
+ },
472
+ children: [
473
+ e > 0 && /* @__PURE__ */ g("span", { style: { color: b.added }, children: [
474
+ "+",
475
+ e
476
+ ] }),
477
+ t > 0 && /* @__PURE__ */ g("span", { style: { color: b.deleted }, children: [
478
+ "-",
479
+ t
480
+ ] })
481
+ ]
482
+ }
483
+ );
484
+ }
485
+ const Ke = {
486
+ added: "+",
487
+ removed: "-",
488
+ unchanged: " "
489
+ };
490
+ function lt({
491
+ lines: e,
492
+ showLineNumbers: t = !0,
493
+ coloredLineNumbers: r = !0,
494
+ showAccentStrip: a = !0,
495
+ style: c
496
+ }) {
497
+ const n = S(), l = (s) => s === "added" ? n.diff.insertedLine : s === "removed" ? n.diff.removedLine : "transparent", u = (s) => s === "added" ? n.diff.stripAdded : s === "removed" ? n.diff.stripRemoved : "transparent", d = (s) => r && s === "added" ? b.added : r && s === "removed" ? b.deleted : n.text.tertiary;
498
+ return /* @__PURE__ */ i(
499
+ "div",
500
+ {
501
+ style: {
502
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Code", monospace',
503
+ fontSize: 12.5,
504
+ lineHeight: "18px",
505
+ color: n.text.primary,
506
+ overflowX: "auto",
507
+ ...c
508
+ },
509
+ children: e.map((s, f) => /* @__PURE__ */ g(
510
+ "div",
511
+ {
512
+ style: {
513
+ display: "flex",
514
+ alignItems: "stretch",
515
+ background: l(s.type),
516
+ borderLeft: a ? `3px solid ${u(s.type)}` : void 0
517
+ },
518
+ children: [
519
+ t && /* @__PURE__ */ i(
520
+ "span",
521
+ {
522
+ style: {
523
+ flex: "0 0 auto",
524
+ width: 40,
525
+ textAlign: "right",
526
+ paddingRight: 10,
527
+ userSelect: "none",
528
+ color: d(s.type)
529
+ },
530
+ children: s.lineNumber ?? ""
531
+ }
532
+ ),
533
+ /* @__PURE__ */ i(
534
+ "span",
535
+ {
536
+ style: {
537
+ flex: "0 0 auto",
538
+ width: 14,
539
+ textAlign: "center",
540
+ userSelect: "none",
541
+ color: d(s.type)
542
+ },
543
+ children: Ke[s.type]
544
+ }
545
+ ),
546
+ /* @__PURE__ */ i(
547
+ "pre",
548
+ {
549
+ style: {
550
+ margin: 0,
551
+ padding: "0 8px",
552
+ whiteSpace: "pre",
553
+ fontFamily: "inherit"
554
+ },
555
+ children: s.content
556
+ }
557
+ )
558
+ ]
559
+ },
560
+ f
561
+ ))
562
+ }
563
+ );
564
+ }
565
+ function Xe({ status: e }) {
566
+ const t = S(), r = e === "completed" ? b.success : e === "in_progress" ? t.accent.primary : e === "cancelled" ? b.danger : t.text.tertiary;
567
+ return /* @__PURE__ */ g(
568
+ "svg",
569
+ {
570
+ width: 14,
571
+ height: 14,
572
+ viewBox: "0 0 14 14",
573
+ fill: "none",
574
+ style: { flex: "0 0 auto", marginTop: 3 },
575
+ "aria-hidden": !0,
576
+ children: [
577
+ /* @__PURE__ */ i("circle", { cx: 7, cy: 7, r: 6, stroke: r, strokeWidth: 1.4 }),
578
+ e === "completed" && /* @__PURE__ */ i(
579
+ "path",
580
+ {
581
+ d: "M4 7.2l2 2 4-4.4",
582
+ stroke: r,
583
+ strokeWidth: 1.4,
584
+ strokeLinecap: "round",
585
+ strokeLinejoin: "round"
586
+ }
587
+ ),
588
+ e === "in_progress" && /* @__PURE__ */ i("circle", { cx: 7, cy: 7, r: 3, fill: r }),
589
+ e === "cancelled" && /* @__PURE__ */ i(
590
+ "path",
591
+ {
592
+ d: "M4.8 4.8l4.4 4.4M9.2 4.8l-4.4 4.4",
593
+ stroke: r,
594
+ strokeWidth: 1.4,
595
+ strokeLinecap: "round"
596
+ }
597
+ )
598
+ ]
599
+ }
600
+ );
601
+ }
602
+ function Ye({
603
+ todos: e,
604
+ dimmedTodoIds: t,
605
+ onTodoClick: r,
606
+ style: a
607
+ }) {
608
+ const c = S();
609
+ return e.length === 0 ? null : /* @__PURE__ */ i("div", { style: { display: "flex", flexDirection: "column", ...a }, children: e.map((n) => {
610
+ const l = t == null ? void 0 : t.has(n.id);
611
+ return /* @__PURE__ */ g(
612
+ "button",
613
+ {
614
+ type: "button",
615
+ onClick: () => r == null ? void 0 : r(n),
616
+ style: {
617
+ display: "flex",
618
+ gap: 8,
619
+ alignItems: "flex-start",
620
+ width: "100%",
621
+ textAlign: "left",
622
+ padding: "4px 6px",
623
+ background: "transparent",
624
+ border: "none",
625
+ cursor: r ? "pointer" : "default",
626
+ color: c.text.primary,
627
+ fontSize: 14,
628
+ lineHeight: "20px",
629
+ opacity: l ? 0.45 : 1
630
+ },
631
+ children: [
632
+ /* @__PURE__ */ i(Xe, { status: n.status }),
633
+ /* @__PURE__ */ i(
634
+ "span",
635
+ {
636
+ style: {
637
+ textDecoration: n.status === "cancelled" ? "line-through" : void 0,
638
+ color: n.status === "cancelled" ? c.text.tertiary : void 0
639
+ },
640
+ children: n.content
641
+ }
642
+ )
643
+ ]
644
+ },
645
+ n.id
646
+ );
647
+ }) });
648
+ }
649
+ function dt({
650
+ todos: e,
651
+ dimmedTodoIds: t,
652
+ defaultExpanded: r = !1,
653
+ onTodoClick: a,
654
+ style: c
655
+ }) {
656
+ const n = S(), [l, u] = z(r);
657
+ if (e.length === 0) return null;
658
+ const d = e.filter((s) => s.status === "completed").length;
659
+ return /* @__PURE__ */ g(
660
+ "div",
661
+ {
662
+ style: {
663
+ border: `1px solid ${n.stroke.primary}`,
664
+ borderRadius: 6,
665
+ overflow: "hidden",
666
+ ...c
667
+ },
668
+ children: [
669
+ /* @__PURE__ */ g(
670
+ "button",
671
+ {
672
+ type: "button",
673
+ onClick: () => u((s) => !s),
674
+ style: {
675
+ display: "flex",
676
+ alignItems: "center",
677
+ gap: 8,
678
+ width: "100%",
679
+ padding: "6px 10px",
680
+ background: "transparent",
681
+ border: "none",
682
+ cursor: "pointer",
683
+ color: n.text.secondary,
684
+ fontSize: 12,
685
+ fontWeight: 600
686
+ },
687
+ children: [
688
+ /* @__PURE__ */ i(
689
+ "svg",
690
+ {
691
+ width: 12,
692
+ height: 12,
693
+ viewBox: "0 0 12 12",
694
+ fill: "none",
695
+ style: {
696
+ transform: l ? "rotate(90deg)" : "none",
697
+ transition: "transform 120ms"
698
+ },
699
+ "aria-hidden": !0,
700
+ children: /* @__PURE__ */ i(
701
+ "path",
702
+ {
703
+ d: "M4 2.5L8 6l-4 3.5",
704
+ stroke: "currentColor",
705
+ strokeWidth: 1.4,
706
+ strokeLinecap: "round",
707
+ strokeLinejoin: "round"
708
+ }
709
+ )
710
+ }
711
+ ),
712
+ /* @__PURE__ */ i("span", { children: "Todos" }),
713
+ /* @__PURE__ */ i("span", { style: { flex: 1 } }),
714
+ /* @__PURE__ */ g("span", { children: [
715
+ d,
716
+ " of ",
717
+ e.length,
718
+ " Done"
719
+ ] })
720
+ ]
721
+ }
722
+ ),
723
+ l && /* @__PURE__ */ i("div", { style: { padding: 6 }, children: /* @__PURE__ */ i(
724
+ Ye,
725
+ {
726
+ todos: e,
727
+ dimmedTodoIds: t,
728
+ onTodoClick: a
729
+ }
730
+ ) })
731
+ ]
732
+ }
733
+ );
734
+ }
735
+ function ut(e, t) {
736
+ const r = `canvas:${e}`, [a, c] = z(() => {
737
+ if (typeof localStorage > "u") return t;
738
+ try {
739
+ const l = localStorage.getItem(r);
740
+ return l === null ? t : JSON.parse(l);
741
+ } catch {
742
+ return t;
743
+ }
744
+ }), n = G(
745
+ (l) => {
746
+ c((u) => {
747
+ const d = typeof l == "function" ? l(u) : l;
748
+ try {
749
+ localStorage == null || localStorage.setItem(r, JSON.stringify(d));
750
+ } catch {
751
+ }
752
+ return d;
753
+ });
754
+ },
755
+ [r]
756
+ );
757
+ return [a, n];
758
+ }
759
+ function ft() {
760
+ return G((e) => {
761
+ }, []);
762
+ }
763
+ function ht(e, t) {
764
+ return { ...e, ...t };
765
+ }
766
+ function gt({ children: e, style: t }) {
767
+ return /* @__PURE__ */ i(W, { order: 1, fz: 24, lh: "30px", style: t, children: e });
768
+ }
769
+ function pt({ children: e, style: t }) {
770
+ return /* @__PURE__ */ i(W, { order: 2, fz: 18, lh: "24px", style: t, children: e });
771
+ }
772
+ function yt({ children: e, style: t }) {
773
+ return /* @__PURE__ */ i(W, { order: 3, fz: 16, lh: "22px", style: t, children: e });
774
+ }
775
+ const Ve = {
776
+ normal: 400,
777
+ medium: 500,
778
+ semibold: 600,
779
+ bold: 700
780
+ };
781
+ function mt({
782
+ children: e,
783
+ tone: t = "primary",
784
+ size: r = "body",
785
+ as: a = "p",
786
+ weight: c = "normal",
787
+ italic: n,
788
+ truncate: l,
789
+ style: u
790
+ }) {
791
+ const d = S();
792
+ return /* @__PURE__ */ i(
793
+ H,
794
+ {
795
+ component: a,
796
+ size: r === "small" ? "xs" : "sm",
797
+ fw: Ve[c],
798
+ c: t === "primary" ? void 0 : d.text[t],
799
+ truncate: l,
800
+ style: { fontStyle: n ? "italic" : void 0, ...u },
801
+ children: e
802
+ }
803
+ );
804
+ }
805
+ function xt({ children: e, style: t }) {
806
+ return /* @__PURE__ */ i(
807
+ "code",
808
+ {
809
+ style: {
810
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Code", monospace',
811
+ fontSize: "0.92em",
812
+ background: "var(--mantine-color-default-hover)",
813
+ borderRadius: 4,
814
+ padding: "1px 4px",
815
+ ...t
816
+ },
817
+ children: e
818
+ }
819
+ );
820
+ }
821
+ function vt({ children: e, href: t, style: r }) {
822
+ return /* @__PURE__ */ i(
823
+ "a",
824
+ {
825
+ href: t,
826
+ target: "_blank",
827
+ rel: "noreferrer",
828
+ style: { color: "var(--mantine-color-anchor)", ...r },
829
+ children: e
830
+ }
831
+ );
832
+ }
833
+ function Et({ children: e, gap: t, style: r }) {
834
+ return /* @__PURE__ */ i(we, { gap: t, style: r, children: e });
835
+ }
836
+ const re = {
837
+ start: "flex-start",
838
+ center: "center",
839
+ end: "flex-end",
840
+ stretch: "stretch",
841
+ "space-between": "space-between"
842
+ };
843
+ function bt({
844
+ children: e,
845
+ gap: t,
846
+ align: r = "center",
847
+ justify: a = "start",
848
+ wrap: c = !1,
849
+ style: n
850
+ }) {
851
+ return /* @__PURE__ */ i(
852
+ Ae,
853
+ {
854
+ gap: t,
855
+ align: re[r],
856
+ justify: re[a],
857
+ wrap: c ? "wrap" : "nowrap",
858
+ style: n,
859
+ children: e
860
+ }
861
+ );
862
+ }
863
+ function kt() {
864
+ return /* @__PURE__ */ i("div", { style: { flex: 1 } });
865
+ }
866
+ function Ct({ children: e, columns: t, gap: r = 16, align: a, style: c }) {
867
+ const n = typeof t == "number" ? `repeat(${t}, minmax(0, 1fr))` : t;
868
+ return /* @__PURE__ */ i(
869
+ "div",
870
+ {
871
+ style: {
872
+ display: "grid",
873
+ gridTemplateColumns: n,
874
+ gap: r,
875
+ alignItems: a,
876
+ ...c
877
+ },
878
+ children: e
879
+ }
880
+ );
881
+ }
882
+ function St({ style: e }) {
883
+ return /* @__PURE__ */ i(Ce, { style: e });
884
+ }
885
+ const O = Me({
886
+ collapsible: !1,
887
+ open: !0,
888
+ toggle: () => {
889
+ }
890
+ });
891
+ function Ft({
892
+ children: e,
893
+ variant: t = "default",
894
+ collapsible: r = !1,
895
+ defaultOpen: a = !0,
896
+ open: c,
897
+ onOpenChange: n,
898
+ style: l
899
+ }) {
900
+ const [u, d] = z(a), s = c ?? u, f = G(() => {
901
+ const y = !s;
902
+ c === void 0 && d(y), n == null || n(y);
903
+ }, [s, c, n]);
904
+ return /* @__PURE__ */ i(
905
+ be,
906
+ {
907
+ withBorder: t !== "borderless",
908
+ radius: "md",
909
+ padding: 0,
910
+ style: l,
911
+ children: /* @__PURE__ */ i(O.Provider, { value: { collapsible: r, open: s, toggle: f }, children: e })
912
+ }
913
+ );
914
+ }
915
+ function At({ children: e, trailing: t, style: r }) {
916
+ const { collapsible: a, open: c, toggle: n } = ne(O);
917
+ return /* @__PURE__ */ g(
918
+ "div",
919
+ {
920
+ onClick: a ? n : void 0,
921
+ style: {
922
+ display: "flex",
923
+ alignItems: "center",
924
+ justifyContent: "space-between",
925
+ gap: 8,
926
+ padding: "8px 14px",
927
+ borderBottom: "1px solid var(--mantine-color-default-border)",
928
+ fontSize: 12,
929
+ fontWeight: 600,
930
+ color: "var(--mantine-color-dimmed)",
931
+ cursor: a ? "pointer" : void 0,
932
+ userSelect: a ? "none" : void 0,
933
+ ...r
934
+ },
935
+ children: [
936
+ /* @__PURE__ */ g("span", { style: { display: "inline-flex", alignItems: "center", gap: 6 }, children: [
937
+ a && /* @__PURE__ */ i(he, { expanded: c }),
938
+ e
939
+ ] }),
940
+ t != null && /* @__PURE__ */ i("span", { children: t })
941
+ ]
942
+ }
943
+ );
944
+ }
945
+ function Bt({ children: e, style: t }) {
946
+ const { collapsible: r, open: a } = ne(O);
947
+ return r && !a ? null : /* @__PURE__ */ i("div", { style: { padding: 14, ...t }, children: e });
948
+ }
949
+ function he({ expanded: e }) {
950
+ return /* @__PURE__ */ i(
951
+ "svg",
952
+ {
953
+ width: 12,
954
+ height: 12,
955
+ viewBox: "0 0 12 12",
956
+ fill: "none",
957
+ style: {
958
+ transform: e ? "rotate(90deg)" : "none",
959
+ transition: "transform 120ms"
960
+ },
961
+ "aria-hidden": !0,
962
+ children: /* @__PURE__ */ i(
963
+ "path",
964
+ {
965
+ d: "M4 2.5L8 6l-4 3.5",
966
+ stroke: "currentColor",
967
+ strokeWidth: 1.4,
968
+ strokeLinecap: "round",
969
+ strokeLinejoin: "round"
970
+ }
971
+ )
972
+ }
973
+ );
974
+ }
975
+ function wt({ value: e, label: t, tone: r, style: a }) {
976
+ return /* @__PURE__ */ g("div", { style: a, children: [
977
+ /* @__PURE__ */ i(
978
+ H,
979
+ {
980
+ fz: 22,
981
+ fw: 700,
982
+ lh: 1.2,
983
+ c: r ? `${j[r]}.6` : void 0,
984
+ children: e
985
+ }
986
+ ),
987
+ /* @__PURE__ */ i(H, { fz: 12, c: "dimmed", children: t })
988
+ ] });
989
+ }
990
+ function Tt({
991
+ children: e,
992
+ active: t,
993
+ tone: r = "neutral",
994
+ size: a = "md",
995
+ leadingContent: c,
996
+ keyboardHint: n,
997
+ title: l,
998
+ style: u,
999
+ onClick: d
1000
+ }) {
1001
+ return /* @__PURE__ */ i(
1002
+ Fe,
1003
+ {
1004
+ color: j[r],
1005
+ variant: t ? "filled" : "light",
1006
+ size: a === "sm" ? "sm" : "md",
1007
+ leftSection: c,
1008
+ rightSection: n,
1009
+ title: l,
1010
+ onClick: d,
1011
+ style: {
1012
+ cursor: d ? "pointer" : void 0,
1013
+ textTransform: "none",
1014
+ ...u
1015
+ },
1016
+ children: e
1017
+ }
1018
+ );
1019
+ }
1020
+ function Lt({
1021
+ children: e,
1022
+ tone: t = "neutral",
1023
+ title: r,
1024
+ icon: a,
1025
+ style: c
1026
+ }) {
1027
+ return /* @__PURE__ */ i(
1028
+ Ee,
1029
+ {
1030
+ color: j[t],
1031
+ title: r,
1032
+ icon: a,
1033
+ variant: "light",
1034
+ style: c,
1035
+ children: e
1036
+ }
1037
+ );
1038
+ }
1039
+ const Je = {
1040
+ success: "rgba(31,138,101,0.12)",
1041
+ danger: "rgba(207,45,86,0.12)",
1042
+ warning: "rgba(232,163,61,0.14)",
1043
+ info: "rgba(46,121,181,0.12)",
1044
+ neutral: "rgba(136,136,168,0.12)"
1045
+ };
1046
+ function Dt({
1047
+ headers: e,
1048
+ rows: t,
1049
+ columnAlign: r,
1050
+ rowTone: a,
1051
+ framed: c = !0,
1052
+ striped: n,
1053
+ stickyHeader: l,
1054
+ style: u,
1055
+ emptyMessage: d
1056
+ }) {
1057
+ return /* @__PURE__ */ g(
1058
+ E,
1059
+ {
1060
+ withTableBorder: c,
1061
+ withColumnBorders: !1,
1062
+ striped: n,
1063
+ stickyHeader: l,
1064
+ highlightOnHover: !0,
1065
+ style: u,
1066
+ children: [
1067
+ /* @__PURE__ */ i(E.Thead, { children: /* @__PURE__ */ i(E.Tr, { children: e.map((s, f) => /* @__PURE__ */ i(E.Th, { ta: (r == null ? void 0 : r[f]) ?? "left", children: s }, f)) }) }),
1068
+ /* @__PURE__ */ i(E.Tbody, { children: t.length === 0 ? /* @__PURE__ */ i(E.Tr, { children: /* @__PURE__ */ i(E.Td, { colSpan: e.length, ta: "center", c: "dimmed", children: d ?? "No data" }) }) : t.map((s, f) => {
1069
+ const y = a == null ? void 0 : a[f];
1070
+ return /* @__PURE__ */ i(
1071
+ E.Tr,
1072
+ {
1073
+ style: y ? { background: Je[y] } : void 0,
1074
+ children: e.map((x, v) => /* @__PURE__ */ i(
1075
+ E.Td,
1076
+ {
1077
+ ta: (r == null ? void 0 : r[v]) ?? "left",
1078
+ children: s[v]
1079
+ },
1080
+ v
1081
+ ))
1082
+ },
1083
+ f
1084
+ );
1085
+ }) })
1086
+ ]
1087
+ }
1088
+ );
1089
+ }
1090
+ const Ue = {
1091
+ primary: "filled",
1092
+ secondary: "default",
1093
+ ghost: "subtle"
1094
+ };
1095
+ function Mt({
1096
+ children: e,
1097
+ variant: t = "secondary",
1098
+ disabled: r,
1099
+ type: a = "button",
1100
+ style: c,
1101
+ onClick: n
1102
+ }) {
1103
+ return /* @__PURE__ */ i(
1104
+ ve,
1105
+ {
1106
+ variant: Ue[t],
1107
+ size: "xs",
1108
+ disabled: r,
1109
+ type: a,
1110
+ onClick: n,
1111
+ style: c,
1112
+ children: e
1113
+ }
1114
+ );
1115
+ }
1116
+ function zt({
1117
+ children: e,
1118
+ onClick: t,
1119
+ disabled: r,
1120
+ title: a,
1121
+ variant: c = "default",
1122
+ size: n = "md",
1123
+ style: l
1124
+ }) {
1125
+ return /* @__PURE__ */ i(
1126
+ Se,
1127
+ {
1128
+ variant: c === "circle" ? "light" : "subtle",
1129
+ radius: c === "circle" ? "xl" : "sm",
1130
+ size: n === "sm" ? "sm" : "md",
1131
+ color: "gray",
1132
+ disabled: r,
1133
+ title: a,
1134
+ "aria-label": a,
1135
+ onClick: t,
1136
+ style: l,
1137
+ children: e
1138
+ }
1139
+ );
1140
+ }
1141
+ function Pt({
1142
+ value: e,
1143
+ onChange: t,
1144
+ options: r,
1145
+ placeholder: a,
1146
+ disabled: c,
1147
+ style: n
1148
+ }) {
1149
+ return /* @__PURE__ */ i(
1150
+ Be,
1151
+ {
1152
+ value: e,
1153
+ data: r,
1154
+ placeholder: a,
1155
+ disabled: c,
1156
+ allowDeselect: !1,
1157
+ onChange: (l) => {
1158
+ l !== null && (t == null || t(l));
1159
+ },
1160
+ style: n
1161
+ }
1162
+ );
1163
+ }
1164
+ function Rt({
1165
+ checked: e,
1166
+ onChange: t,
1167
+ disabled: r,
1168
+ label: a,
1169
+ style: c
1170
+ }) {
1171
+ return /* @__PURE__ */ i(
1172
+ ke,
1173
+ {
1174
+ checked: e,
1175
+ disabled: r,
1176
+ label: a,
1177
+ onChange: (n) => t == null ? void 0 : t(n.currentTarget.checked),
1178
+ style: c
1179
+ }
1180
+ );
1181
+ }
1182
+ function $t({
1183
+ checked: e,
1184
+ onChange: t,
1185
+ disabled: r,
1186
+ size: a = "sm",
1187
+ style: c
1188
+ }) {
1189
+ return /* @__PURE__ */ i(
1190
+ De,
1191
+ {
1192
+ checked: e,
1193
+ disabled: r,
1194
+ size: a === "sm" ? "sm" : "md",
1195
+ onChange: (n) => t == null ? void 0 : t(n.currentTarget.checked),
1196
+ style: c
1197
+ }
1198
+ );
1199
+ }
1200
+ function Ht({
1201
+ value: e,
1202
+ onChange: t,
1203
+ placeholder: r,
1204
+ disabled: a,
1205
+ type: c,
1206
+ style: n
1207
+ }) {
1208
+ return /* @__PURE__ */ i(
1209
+ Le,
1210
+ {
1211
+ value: e,
1212
+ placeholder: r,
1213
+ disabled: a,
1214
+ type: c,
1215
+ onChange: (l) => t == null ? void 0 : t(l.currentTarget.value),
1216
+ style: n
1217
+ }
1218
+ );
1219
+ }
1220
+ function It({
1221
+ value: e,
1222
+ onChange: t,
1223
+ placeholder: r,
1224
+ disabled: a,
1225
+ rows: c = 3,
1226
+ style: n
1227
+ }) {
1228
+ return /* @__PURE__ */ i(
1229
+ Te,
1230
+ {
1231
+ value: e,
1232
+ placeholder: r,
1233
+ disabled: a,
1234
+ autosize: !0,
1235
+ minRows: c,
1236
+ onChange: (l) => t == null ? void 0 : t(l.currentTarget.value),
1237
+ style: n
1238
+ }
1239
+ );
1240
+ }
1241
+ function Wt({ color: e, style: t }) {
1242
+ const r = S();
1243
+ return /* @__PURE__ */ i(
1244
+ "span",
1245
+ {
1246
+ style: {
1247
+ display: "inline-block",
1248
+ width: 14,
1249
+ height: 14,
1250
+ borderRadius: 4,
1251
+ background: r.category[e],
1252
+ flex: "0 0 auto",
1253
+ ...t
1254
+ }
1255
+ }
1256
+ );
1257
+ }
1258
+ function Gt({
1259
+ segments: e,
1260
+ total: t,
1261
+ topLeftLabel: r,
1262
+ topRightLabel: a,
1263
+ style: c
1264
+ }) {
1265
+ const n = S(), l = t > 0 ? t : 1, u = e.reduce(
1266
+ (s, f) => s + (Number.isFinite(f.value) && f.value > 0 ? f.value : 0),
1267
+ 0
1268
+ ), d = Math.max(0, l - u);
1269
+ return /* @__PURE__ */ g("div", { style: c, children: [
1270
+ (r != null || a != null) && /* @__PURE__ */ g(
1271
+ "div",
1272
+ {
1273
+ style: {
1274
+ display: "flex",
1275
+ justifyContent: "space-between",
1276
+ fontSize: 12,
1277
+ color: n.text.secondary,
1278
+ marginBottom: 6
1279
+ },
1280
+ children: [
1281
+ /* @__PURE__ */ i("span", { children: r }),
1282
+ /* @__PURE__ */ i("span", { children: a })
1283
+ ]
1284
+ }
1285
+ ),
1286
+ /* @__PURE__ */ g("div", { style: { display: "flex", gap: 2, height: 8 }, children: [
1287
+ e.map((s, f) => {
1288
+ const y = Number.isFinite(s.value) && s.value > 0 ? s.value : 0, x = n.category[s.color ?? te[f % te.length]];
1289
+ return /* @__PURE__ */ i(
1290
+ "div",
1291
+ {
1292
+ style: {
1293
+ width: `${y / l * 100}%`,
1294
+ background: x,
1295
+ borderRadius: 3
1296
+ }
1297
+ },
1298
+ s.id
1299
+ );
1300
+ }),
1301
+ d > 0 && /* @__PURE__ */ i(
1302
+ "div",
1303
+ {
1304
+ style: {
1305
+ width: `${d / l * 100}%`,
1306
+ background: n.fill.tertiary,
1307
+ borderRadius: 3
1308
+ }
1309
+ }
1310
+ )
1311
+ ] })
1312
+ ] });
1313
+ }
1314
+ function Nt({
1315
+ title: e,
1316
+ leading: t,
1317
+ count: r,
1318
+ trailing: a,
1319
+ children: c,
1320
+ defaultOpen: n = !1,
1321
+ style: l
1322
+ }) {
1323
+ const u = S(), [d, s] = z(n);
1324
+ return /* @__PURE__ */ g("div", { style: l, children: [
1325
+ /* @__PURE__ */ g(
1326
+ "div",
1327
+ {
1328
+ onClick: () => s((f) => !f),
1329
+ style: {
1330
+ display: "flex",
1331
+ alignItems: "center",
1332
+ gap: 6,
1333
+ padding: "4px 0",
1334
+ cursor: "pointer",
1335
+ userSelect: "none",
1336
+ color: u.text.primary,
1337
+ fontSize: 14
1338
+ },
1339
+ children: [
1340
+ /* @__PURE__ */ i(he, { expanded: d }),
1341
+ t,
1342
+ /* @__PURE__ */ i("span", { style: { fontWeight: 500 }, children: e }),
1343
+ r != null && /* @__PURE__ */ i("span", { style: { color: u.text.tertiary, fontSize: 12 }, children: r }),
1344
+ /* @__PURE__ */ i("span", { style: { flex: 1 } }),
1345
+ a != null && /* @__PURE__ */ i("span", { style: { color: u.text.tertiary }, children: a })
1346
+ ]
1347
+ }
1348
+ ),
1349
+ d && /* @__PURE__ */ i("div", { style: { paddingLeft: 18, paddingBottom: 4 }, children: c })
1350
+ ] });
1351
+ }
1352
+ export {
1353
+ at as BarChart,
1354
+ Mt as Button,
1355
+ Lt as Callout,
1356
+ Ft as Card,
1357
+ Bt as CardBody,
1358
+ At as CardHeader,
1359
+ Rt as Checkbox,
1360
+ xt as Code,
1361
+ Nt as CollapsibleSection,
1362
+ st as DiffStats,
1363
+ lt as DiffView,
1364
+ St as Divider,
1365
+ Ct as Grid,
1366
+ gt as H1,
1367
+ pt as H2,
1368
+ yt as H3,
1369
+ zt as IconButton,
1370
+ ot as LineChart,
1371
+ vt as Link,
1372
+ it as PieChart,
1373
+ Tt as Pill,
1374
+ bt as Row,
1375
+ Pt as Select,
1376
+ kt as Spacer,
1377
+ Et as Stack,
1378
+ wt as Stat,
1379
+ Wt as Swatch,
1380
+ Dt as Table,
1381
+ mt as Text,
1382
+ It as TextArea,
1383
+ Ht as TextInput,
1384
+ Ye as TodoList,
1385
+ dt as TodoListCard,
1386
+ $t as Toggle,
1387
+ Gt as UsageBar,
1388
+ oe as canvasPaletteDark,
1389
+ ae as canvasPaletteLight,
1390
+ Ie as canvasTokens,
1391
+ We as canvasTokensLight,
1392
+ N as categoryPaletteDark,
1393
+ ie as categoryPaletteLight,
1394
+ nt as colorPalette,
1395
+ ct as computeDAGLayout,
1396
+ ht as mergeStyle,
1397
+ le as reshapeLineChartData,
1398
+ te as usageColorSequence,
1399
+ ft as useCanvasAction,
1400
+ ut as useCanvasState,
1401
+ _t as useEffect,
1402
+ S as useHostTheme,
1403
+ qt as useMemo,
1404
+ Qt as useRef,
1405
+ Kt as useState
1406
+ };