@invana/ui 0.0.30 → 0.0.31
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 +1190 -337
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +603 -2
- package/dist/index.d.ts +603 -2
- package/dist/index.js +1174 -338
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { clsx } from 'clsx';
|
|
2
2
|
import { twMerge } from 'tailwind-merge';
|
|
3
|
-
import * as
|
|
4
|
-
import
|
|
3
|
+
import * as React25 from 'react';
|
|
4
|
+
import React25__default, { Component } from 'react';
|
|
5
5
|
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
6
|
-
import { ChevronDown, ArrowLeft, ArrowRight, X, Search, ChevronRight, Check, Circle, PanelLeft,
|
|
6
|
+
import { ChevronDown, ArrowLeft, ArrowRight, X, Search, ChevronRight, Check, Circle, PanelLeft, ChevronLeft, MoreHorizontal, Loader2Icon, OctagonXIcon, TriangleAlertIcon, InfoIcon, CircleCheckIcon, Frown, Lock, Construction } from 'lucide-react';
|
|
7
7
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
8
|
import { cva } from 'class-variance-authority';
|
|
9
9
|
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
@@ -32,7 +32,7 @@ function cn(...inputs) {
|
|
|
32
32
|
return twMerge(clsx(inputs));
|
|
33
33
|
}
|
|
34
34
|
var Accordion = AccordionPrimitive.Root;
|
|
35
|
-
var AccordionItem =
|
|
35
|
+
var AccordionItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
36
36
|
AccordionPrimitive.Item,
|
|
37
37
|
{
|
|
38
38
|
ref,
|
|
@@ -41,7 +41,7 @@ var AccordionItem = React24.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
41
41
|
}
|
|
42
42
|
));
|
|
43
43
|
AccordionItem.displayName = "AccordionItem";
|
|
44
|
-
var AccordionTrigger =
|
|
44
|
+
var AccordionTrigger = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
|
|
45
45
|
AccordionPrimitive.Trigger,
|
|
46
46
|
{
|
|
47
47
|
ref,
|
|
@@ -57,7 +57,7 @@ var AccordionTrigger = React24.forwardRef(({ className, children, ...props }, re
|
|
|
57
57
|
}
|
|
58
58
|
) }));
|
|
59
59
|
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
|
|
60
|
-
var AccordionContent =
|
|
60
|
+
var AccordionContent = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
61
61
|
AccordionPrimitive.Content,
|
|
62
62
|
{
|
|
63
63
|
ref,
|
|
@@ -81,7 +81,7 @@ var alertVariants = cva(
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
);
|
|
84
|
-
var Alert =
|
|
84
|
+
var Alert = React25.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
85
85
|
"div",
|
|
86
86
|
{
|
|
87
87
|
ref,
|
|
@@ -91,7 +91,7 @@ var Alert = React24.forwardRef(({ className, variant, ...props }, ref) => /* @__
|
|
|
91
91
|
}
|
|
92
92
|
));
|
|
93
93
|
Alert.displayName = "Alert";
|
|
94
|
-
var AlertTitle =
|
|
94
|
+
var AlertTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
95
95
|
"h5",
|
|
96
96
|
{
|
|
97
97
|
ref,
|
|
@@ -100,7 +100,7 @@ var AlertTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
100
100
|
}
|
|
101
101
|
));
|
|
102
102
|
AlertTitle.displayName = "AlertTitle";
|
|
103
|
-
var AlertDescription =
|
|
103
|
+
var AlertDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
104
104
|
"div",
|
|
105
105
|
{
|
|
106
106
|
ref,
|
|
@@ -145,7 +145,7 @@ var buttonVariants = cva(
|
|
|
145
145
|
}
|
|
146
146
|
}
|
|
147
147
|
);
|
|
148
|
-
var Button =
|
|
148
|
+
var Button = React25.forwardRef(
|
|
149
149
|
({ className, variant, size, asChild = false, ...props }, ref) => {
|
|
150
150
|
const Comp = asChild ? Slot : "button";
|
|
151
151
|
return /* @__PURE__ */ jsx(
|
|
@@ -162,7 +162,7 @@ Button.displayName = "Button";
|
|
|
162
162
|
var AlertDialog = AlertDialogPrimitive.Root;
|
|
163
163
|
var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
164
164
|
var AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
165
|
-
var AlertDialogOverlay =
|
|
165
|
+
var AlertDialogOverlay = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
166
166
|
AlertDialogPrimitive.Overlay,
|
|
167
167
|
{
|
|
168
168
|
className: cn(
|
|
@@ -174,7 +174,7 @@ var AlertDialogOverlay = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
174
174
|
}
|
|
175
175
|
));
|
|
176
176
|
AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
177
|
-
var AlertDialogContent =
|
|
177
|
+
var AlertDialogContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
|
|
178
178
|
/* @__PURE__ */ jsx(AlertDialogOverlay, {}),
|
|
179
179
|
/* @__PURE__ */ jsx(
|
|
180
180
|
AlertDialogPrimitive.Content,
|
|
@@ -217,7 +217,7 @@ var AlertDialogFooter = ({
|
|
|
217
217
|
}
|
|
218
218
|
);
|
|
219
219
|
AlertDialogFooter.displayName = "AlertDialogFooter";
|
|
220
|
-
var AlertDialogTitle =
|
|
220
|
+
var AlertDialogTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
221
221
|
AlertDialogPrimitive.Title,
|
|
222
222
|
{
|
|
223
223
|
ref,
|
|
@@ -226,7 +226,7 @@ var AlertDialogTitle = React24.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
226
226
|
}
|
|
227
227
|
));
|
|
228
228
|
AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
229
|
-
var AlertDialogDescription =
|
|
229
|
+
var AlertDialogDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
230
230
|
AlertDialogPrimitive.Description,
|
|
231
231
|
{
|
|
232
232
|
ref,
|
|
@@ -235,7 +235,7 @@ var AlertDialogDescription = React24.forwardRef(({ className, ...props }, ref) =
|
|
|
235
235
|
}
|
|
236
236
|
));
|
|
237
237
|
AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
238
|
-
var AlertDialogAction =
|
|
238
|
+
var AlertDialogAction = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
239
239
|
AlertDialogPrimitive.Action,
|
|
240
240
|
{
|
|
241
241
|
ref,
|
|
@@ -244,7 +244,7 @@ var AlertDialogAction = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
244
244
|
}
|
|
245
245
|
));
|
|
246
246
|
AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
|
|
247
|
-
var AlertDialogCancel =
|
|
247
|
+
var AlertDialogCancel = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
248
248
|
AlertDialogPrimitive.Cancel,
|
|
249
249
|
{
|
|
250
250
|
ref,
|
|
@@ -257,7 +257,7 @@ var AlertDialogCancel = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
257
257
|
}
|
|
258
258
|
));
|
|
259
259
|
AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
|
|
260
|
-
var Avatar =
|
|
260
|
+
var Avatar = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
261
261
|
AvatarPrimitive.Root,
|
|
262
262
|
{
|
|
263
263
|
ref,
|
|
@@ -270,7 +270,7 @@ var Avatar = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
|
|
|
270
270
|
}
|
|
271
271
|
));
|
|
272
272
|
Avatar.displayName = AvatarPrimitive.Root.displayName;
|
|
273
|
-
var AvatarImage =
|
|
273
|
+
var AvatarImage = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
274
274
|
AvatarPrimitive.Image,
|
|
275
275
|
{
|
|
276
276
|
ref,
|
|
@@ -279,7 +279,7 @@ var AvatarImage = React24.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
279
279
|
}
|
|
280
280
|
));
|
|
281
281
|
AvatarImage.displayName = AvatarPrimitive.Image.displayName;
|
|
282
|
-
var AvatarFallback =
|
|
282
|
+
var AvatarFallback = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
283
283
|
AvatarPrimitive.Fallback,
|
|
284
284
|
{
|
|
285
285
|
ref,
|
|
@@ -338,9 +338,9 @@ function Badge({ className, variant, tone, size, ...props }) {
|
|
|
338
338
|
}
|
|
339
339
|
);
|
|
340
340
|
}
|
|
341
|
-
var Breadcrumb =
|
|
341
|
+
var Breadcrumb = React25.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("nav", { ref, "aria-label": "breadcrumb", ...props }));
|
|
342
342
|
Breadcrumb.displayName = "Breadcrumb";
|
|
343
|
-
var BreadcrumbList =
|
|
343
|
+
var BreadcrumbList = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
344
344
|
"ol",
|
|
345
345
|
{
|
|
346
346
|
ref,
|
|
@@ -352,7 +352,7 @@ var BreadcrumbList = React24.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
352
352
|
}
|
|
353
353
|
));
|
|
354
354
|
BreadcrumbList.displayName = "BreadcrumbList";
|
|
355
|
-
var BreadcrumbItem =
|
|
355
|
+
var BreadcrumbItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
356
356
|
"li",
|
|
357
357
|
{
|
|
358
358
|
ref,
|
|
@@ -361,7 +361,7 @@ var BreadcrumbItem = React24.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
361
361
|
}
|
|
362
362
|
));
|
|
363
363
|
BreadcrumbItem.displayName = "BreadcrumbItem";
|
|
364
|
-
var BreadcrumbLink =
|
|
364
|
+
var BreadcrumbLink = React25.forwardRef(({ asChild, className, ...props }, ref) => {
|
|
365
365
|
const Comp = asChild ? Slot : "a";
|
|
366
366
|
return /* @__PURE__ */ jsx(
|
|
367
367
|
Comp,
|
|
@@ -373,7 +373,7 @@ var BreadcrumbLink = React24.forwardRef(({ asChild, className, ...props }, ref)
|
|
|
373
373
|
);
|
|
374
374
|
});
|
|
375
375
|
BreadcrumbLink.displayName = "BreadcrumbLink";
|
|
376
|
-
var BreadcrumbPage =
|
|
376
|
+
var BreadcrumbPage = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
377
377
|
"span",
|
|
378
378
|
{
|
|
379
379
|
ref,
|
|
@@ -417,7 +417,7 @@ var BreadcrumbEllipsis = ({
|
|
|
417
417
|
}
|
|
418
418
|
);
|
|
419
419
|
BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
|
|
420
|
-
var Separator =
|
|
420
|
+
var Separator = React25.forwardRef(
|
|
421
421
|
({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
422
422
|
SeparatorPrimitive.Root,
|
|
423
423
|
{
|
|
@@ -499,7 +499,7 @@ function ButtonGroupSeparator({
|
|
|
499
499
|
}
|
|
500
500
|
);
|
|
501
501
|
}
|
|
502
|
-
var Card =
|
|
502
|
+
var Card = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
503
503
|
"div",
|
|
504
504
|
{
|
|
505
505
|
ref,
|
|
@@ -511,7 +511,7 @@ var Card = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
|
|
|
511
511
|
}
|
|
512
512
|
));
|
|
513
513
|
Card.displayName = "Card";
|
|
514
|
-
var CardHeader =
|
|
514
|
+
var CardHeader = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
515
515
|
"div",
|
|
516
516
|
{
|
|
517
517
|
ref,
|
|
@@ -520,7 +520,7 @@ var CardHeader = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
520
520
|
}
|
|
521
521
|
));
|
|
522
522
|
CardHeader.displayName = "CardHeader";
|
|
523
|
-
var CardTitle =
|
|
523
|
+
var CardTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
524
524
|
"div",
|
|
525
525
|
{
|
|
526
526
|
ref,
|
|
@@ -529,7 +529,7 @@ var CardTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
529
529
|
}
|
|
530
530
|
));
|
|
531
531
|
CardTitle.displayName = "CardTitle";
|
|
532
|
-
var CardDescription =
|
|
532
|
+
var CardDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
533
533
|
"div",
|
|
534
534
|
{
|
|
535
535
|
ref,
|
|
@@ -538,9 +538,9 @@ var CardDescription = React24.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
538
538
|
}
|
|
539
539
|
));
|
|
540
540
|
CardDescription.displayName = "CardDescription";
|
|
541
|
-
var CardContent =
|
|
541
|
+
var CardContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("p-3 flex-1 overflow-y-auto", className), ...props }));
|
|
542
542
|
CardContent.displayName = "CardContent";
|
|
543
|
-
var CardFooter =
|
|
543
|
+
var CardFooter = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
544
544
|
"div",
|
|
545
545
|
{
|
|
546
546
|
ref,
|
|
@@ -549,7 +549,7 @@ var CardFooter = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
549
549
|
}
|
|
550
550
|
));
|
|
551
551
|
CardFooter.displayName = "CardFooter";
|
|
552
|
-
var CardWithHeader =
|
|
552
|
+
var CardWithHeader = React25.forwardRef(
|
|
553
553
|
({ className, title, description, headerClassName, contentClassName, footerClassName, footer, children, ...props }, ref) => /* @__PURE__ */ jsxs(Card, { ref, className, ...props, children: [
|
|
554
554
|
/* @__PURE__ */ jsxs(CardHeader, { className: `${headerClassName} rounded-t-md`, children: [
|
|
555
555
|
typeof title === "string" ? /* @__PURE__ */ jsx(CardTitle, { children: title }) : title,
|
|
@@ -560,15 +560,15 @@ var CardWithHeader = React24.forwardRef(
|
|
|
560
560
|
] })
|
|
561
561
|
);
|
|
562
562
|
CardWithHeader.displayName = "CardWithHeader";
|
|
563
|
-
var CarouselContext =
|
|
563
|
+
var CarouselContext = React25.createContext(null);
|
|
564
564
|
function useCarousel() {
|
|
565
|
-
const context =
|
|
565
|
+
const context = React25.useContext(CarouselContext);
|
|
566
566
|
if (!context) {
|
|
567
567
|
throw new Error("useCarousel must be used within a <Carousel />");
|
|
568
568
|
}
|
|
569
569
|
return context;
|
|
570
570
|
}
|
|
571
|
-
var Carousel =
|
|
571
|
+
var Carousel = React25.forwardRef(
|
|
572
572
|
({
|
|
573
573
|
orientation = "horizontal",
|
|
574
574
|
opts,
|
|
@@ -585,22 +585,22 @@ var Carousel = React24.forwardRef(
|
|
|
585
585
|
},
|
|
586
586
|
plugins
|
|
587
587
|
);
|
|
588
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
589
|
-
const [canScrollNext, setCanScrollNext] =
|
|
590
|
-
const onSelect =
|
|
588
|
+
const [canScrollPrev, setCanScrollPrev] = React25.useState(false);
|
|
589
|
+
const [canScrollNext, setCanScrollNext] = React25.useState(false);
|
|
590
|
+
const onSelect = React25.useCallback((api2) => {
|
|
591
591
|
if (!api2) {
|
|
592
592
|
return;
|
|
593
593
|
}
|
|
594
594
|
setCanScrollPrev(api2.canScrollPrev());
|
|
595
595
|
setCanScrollNext(api2.canScrollNext());
|
|
596
596
|
}, []);
|
|
597
|
-
const scrollPrev =
|
|
597
|
+
const scrollPrev = React25.useCallback(() => {
|
|
598
598
|
api?.scrollPrev();
|
|
599
599
|
}, [api]);
|
|
600
|
-
const scrollNext =
|
|
600
|
+
const scrollNext = React25.useCallback(() => {
|
|
601
601
|
api?.scrollNext();
|
|
602
602
|
}, [api]);
|
|
603
|
-
const handleKeyDown =
|
|
603
|
+
const handleKeyDown = React25.useCallback(
|
|
604
604
|
(event) => {
|
|
605
605
|
if (event.key === "ArrowLeft") {
|
|
606
606
|
event.preventDefault();
|
|
@@ -612,13 +612,13 @@ var Carousel = React24.forwardRef(
|
|
|
612
612
|
},
|
|
613
613
|
[scrollPrev, scrollNext]
|
|
614
614
|
);
|
|
615
|
-
|
|
615
|
+
React25.useEffect(() => {
|
|
616
616
|
if (!api || !setApi) {
|
|
617
617
|
return;
|
|
618
618
|
}
|
|
619
619
|
setApi(api);
|
|
620
620
|
}, [api, setApi]);
|
|
621
|
-
|
|
621
|
+
React25.useEffect(() => {
|
|
622
622
|
if (!api) {
|
|
623
623
|
return;
|
|
624
624
|
}
|
|
@@ -659,7 +659,7 @@ var Carousel = React24.forwardRef(
|
|
|
659
659
|
}
|
|
660
660
|
);
|
|
661
661
|
Carousel.displayName = "Carousel";
|
|
662
|
-
var CarouselContent =
|
|
662
|
+
var CarouselContent = React25.forwardRef(({ className, ...props }, ref) => {
|
|
663
663
|
const { carouselRef, orientation } = useCarousel();
|
|
664
664
|
return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
|
|
665
665
|
"div",
|
|
@@ -675,7 +675,7 @@ var CarouselContent = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
675
675
|
) });
|
|
676
676
|
});
|
|
677
677
|
CarouselContent.displayName = "CarouselContent";
|
|
678
|
-
var CarouselItem =
|
|
678
|
+
var CarouselItem = React25.forwardRef(({ className, ...props }, ref) => {
|
|
679
679
|
const { orientation } = useCarousel();
|
|
680
680
|
return /* @__PURE__ */ jsx(
|
|
681
681
|
"div",
|
|
@@ -693,7 +693,7 @@ var CarouselItem = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
693
693
|
);
|
|
694
694
|
});
|
|
695
695
|
CarouselItem.displayName = "CarouselItem";
|
|
696
|
-
var CarouselPrevious =
|
|
696
|
+
var CarouselPrevious = React25.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
|
|
697
697
|
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
698
698
|
return /* @__PURE__ */ jsxs(
|
|
699
699
|
Button,
|
|
@@ -717,7 +717,7 @@ var CarouselPrevious = React24.forwardRef(({ className, variant = "outline", siz
|
|
|
717
717
|
);
|
|
718
718
|
});
|
|
719
719
|
CarouselPrevious.displayName = "CarouselPrevious";
|
|
720
|
-
var CarouselNext =
|
|
720
|
+
var CarouselNext = React25.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
|
|
721
721
|
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
722
722
|
return /* @__PURE__ */ jsxs(
|
|
723
723
|
Button,
|
|
@@ -745,7 +745,7 @@ var Dialog = DialogPrimitive.Root;
|
|
|
745
745
|
var DialogTrigger = DialogPrimitive.Trigger;
|
|
746
746
|
var DialogPortal = DialogPrimitive.Portal;
|
|
747
747
|
var DialogClose = DialogPrimitive.Close;
|
|
748
|
-
var DialogOverlay =
|
|
748
|
+
var DialogOverlay = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
749
749
|
DialogPrimitive.Overlay,
|
|
750
750
|
{
|
|
751
751
|
ref,
|
|
@@ -757,7 +757,7 @@ var DialogOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__P
|
|
|
757
757
|
}
|
|
758
758
|
));
|
|
759
759
|
DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
|
|
760
|
-
var DialogContent =
|
|
760
|
+
var DialogContent = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [
|
|
761
761
|
/* @__PURE__ */ jsx(DialogOverlay, {}),
|
|
762
762
|
/* @__PURE__ */ jsxs(
|
|
763
763
|
DialogPrimitive.Content,
|
|
@@ -807,7 +807,7 @@ var DialogFooter = ({
|
|
|
807
807
|
}
|
|
808
808
|
);
|
|
809
809
|
DialogFooter.displayName = "DialogFooter";
|
|
810
|
-
var DialogTitle =
|
|
810
|
+
var DialogTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
811
811
|
DialogPrimitive.Title,
|
|
812
812
|
{
|
|
813
813
|
ref,
|
|
@@ -819,7 +819,7 @@ var DialogTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
819
819
|
}
|
|
820
820
|
));
|
|
821
821
|
DialogTitle.displayName = DialogPrimitive.Title.displayName;
|
|
822
|
-
var DialogDescription =
|
|
822
|
+
var DialogDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
823
823
|
DialogPrimitive.Description,
|
|
824
824
|
{
|
|
825
825
|
ref,
|
|
@@ -828,7 +828,7 @@ var DialogDescription = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
828
828
|
}
|
|
829
829
|
));
|
|
830
830
|
DialogDescription.displayName = DialogPrimitive.Description.displayName;
|
|
831
|
-
var Command =
|
|
831
|
+
var Command = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
832
832
|
Command$1,
|
|
833
833
|
{
|
|
834
834
|
ref,
|
|
@@ -843,7 +843,7 @@ Command.displayName = Command$1.displayName;
|
|
|
843
843
|
var CommandDialog = ({ children, ...props }) => {
|
|
844
844
|
return /* @__PURE__ */ jsx(Dialog, { ...props, children: /* @__PURE__ */ jsx(DialogContent, { className: "overflow-hidden p-0", children: /* @__PURE__ */ jsx(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children }) }) });
|
|
845
845
|
};
|
|
846
|
-
var CommandInput =
|
|
846
|
+
var CommandInput = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
|
|
847
847
|
/* @__PURE__ */ jsx(Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
|
|
848
848
|
/* @__PURE__ */ jsx(
|
|
849
849
|
Command$1.Input,
|
|
@@ -858,7 +858,7 @@ var CommandInput = React24.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
858
858
|
)
|
|
859
859
|
] }));
|
|
860
860
|
CommandInput.displayName = Command$1.Input.displayName;
|
|
861
|
-
var CommandList =
|
|
861
|
+
var CommandList = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
862
862
|
Command$1.List,
|
|
863
863
|
{
|
|
864
864
|
ref,
|
|
@@ -867,7 +867,7 @@ var CommandList = React24.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
867
867
|
}
|
|
868
868
|
));
|
|
869
869
|
CommandList.displayName = Command$1.List.displayName;
|
|
870
|
-
var CommandEmpty =
|
|
870
|
+
var CommandEmpty = React25.forwardRef((props, ref) => /* @__PURE__ */ jsx(
|
|
871
871
|
Command$1.Empty,
|
|
872
872
|
{
|
|
873
873
|
ref,
|
|
@@ -876,7 +876,7 @@ var CommandEmpty = React24.forwardRef((props, ref) => /* @__PURE__ */ jsx(
|
|
|
876
876
|
}
|
|
877
877
|
));
|
|
878
878
|
CommandEmpty.displayName = Command$1.Empty.displayName;
|
|
879
|
-
var CommandGroup =
|
|
879
|
+
var CommandGroup = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
880
880
|
Command$1.Group,
|
|
881
881
|
{
|
|
882
882
|
ref,
|
|
@@ -888,7 +888,7 @@ var CommandGroup = React24.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
888
888
|
}
|
|
889
889
|
));
|
|
890
890
|
CommandGroup.displayName = Command$1.Group.displayName;
|
|
891
|
-
var CommandSeparator =
|
|
891
|
+
var CommandSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
892
892
|
Command$1.Separator,
|
|
893
893
|
{
|
|
894
894
|
ref,
|
|
@@ -897,7 +897,7 @@ var CommandSeparator = React24.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
897
897
|
}
|
|
898
898
|
));
|
|
899
899
|
CommandSeparator.displayName = Command$1.Separator.displayName;
|
|
900
|
-
var CommandItem =
|
|
900
|
+
var CommandItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
901
901
|
Command$1.Item,
|
|
902
902
|
{
|
|
903
903
|
ref,
|
|
@@ -931,7 +931,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
|
931
931
|
var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
932
932
|
var DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
933
933
|
var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
934
|
-
var DropdownMenuSubTrigger =
|
|
934
|
+
var DropdownMenuSubTrigger = React25.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
935
935
|
DropdownMenuPrimitive.SubTrigger,
|
|
936
936
|
{
|
|
937
937
|
ref,
|
|
@@ -948,7 +948,7 @@ var DropdownMenuSubTrigger = React24.forwardRef(({ className, inset, children, .
|
|
|
948
948
|
}
|
|
949
949
|
));
|
|
950
950
|
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
951
|
-
var DropdownMenuSubContent =
|
|
951
|
+
var DropdownMenuSubContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
952
952
|
DropdownMenuPrimitive.SubContent,
|
|
953
953
|
{
|
|
954
954
|
ref,
|
|
@@ -960,7 +960,7 @@ var DropdownMenuSubContent = React24.forwardRef(({ className, ...props }, ref) =
|
|
|
960
960
|
}
|
|
961
961
|
));
|
|
962
962
|
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
963
|
-
var DropdownMenuContent =
|
|
963
|
+
var DropdownMenuContent = React25.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
964
964
|
DropdownMenuPrimitive.Content,
|
|
965
965
|
{
|
|
966
966
|
ref,
|
|
@@ -974,7 +974,7 @@ var DropdownMenuContent = React24.forwardRef(({ className, sideOffset = 4, ...pr
|
|
|
974
974
|
}
|
|
975
975
|
) }));
|
|
976
976
|
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
977
|
-
var DropdownMenuItem =
|
|
977
|
+
var DropdownMenuItem = React25.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
978
978
|
DropdownMenuPrimitive.Item,
|
|
979
979
|
{
|
|
980
980
|
ref,
|
|
@@ -987,7 +987,7 @@ var DropdownMenuItem = React24.forwardRef(({ className, inset, ...props }, ref)
|
|
|
987
987
|
}
|
|
988
988
|
));
|
|
989
989
|
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
990
|
-
var DropdownMenuCheckboxItem =
|
|
990
|
+
var DropdownMenuCheckboxItem = React25.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
991
991
|
DropdownMenuPrimitive.CheckboxItem,
|
|
992
992
|
{
|
|
993
993
|
ref,
|
|
@@ -1004,7 +1004,7 @@ var DropdownMenuCheckboxItem = React24.forwardRef(({ className, children, checke
|
|
|
1004
1004
|
}
|
|
1005
1005
|
));
|
|
1006
1006
|
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
1007
|
-
var DropdownMenuRadioItem =
|
|
1007
|
+
var DropdownMenuRadioItem = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1008
1008
|
DropdownMenuPrimitive.RadioItem,
|
|
1009
1009
|
{
|
|
1010
1010
|
ref,
|
|
@@ -1020,7 +1020,7 @@ var DropdownMenuRadioItem = React24.forwardRef(({ className, children, ...props
|
|
|
1020
1020
|
}
|
|
1021
1021
|
));
|
|
1022
1022
|
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
1023
|
-
var DropdownMenuLabel =
|
|
1023
|
+
var DropdownMenuLabel = React25.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1024
1024
|
DropdownMenuPrimitive.Label,
|
|
1025
1025
|
{
|
|
1026
1026
|
ref,
|
|
@@ -1033,7 +1033,7 @@ var DropdownMenuLabel = React24.forwardRef(({ className, inset, ...props }, ref)
|
|
|
1033
1033
|
}
|
|
1034
1034
|
));
|
|
1035
1035
|
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
1036
|
-
var DropdownMenuSeparator =
|
|
1036
|
+
var DropdownMenuSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1037
1037
|
DropdownMenuPrimitive.Separator,
|
|
1038
1038
|
{
|
|
1039
1039
|
ref,
|
|
@@ -1057,7 +1057,7 @@ var DropdownMenuShortcut = ({
|
|
|
1057
1057
|
DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
|
|
1058
1058
|
var HoverCard = HoverCardPrimitive.Root;
|
|
1059
1059
|
var HoverCardTrigger = HoverCardPrimitive.Trigger;
|
|
1060
|
-
var HoverCardContent =
|
|
1060
|
+
var HoverCardContent = React25.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1061
1061
|
HoverCardPrimitive.Content,
|
|
1062
1062
|
{
|
|
1063
1063
|
ref,
|
|
@@ -1300,7 +1300,7 @@ var linkVariants = cva(
|
|
|
1300
1300
|
defaultVariants: { variant: "default" }
|
|
1301
1301
|
}
|
|
1302
1302
|
);
|
|
1303
|
-
var Link =
|
|
1303
|
+
var Link = React25.forwardRef(
|
|
1304
1304
|
({ className, variant, external, target, rel, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1305
1305
|
"a",
|
|
1306
1306
|
{
|
|
@@ -1338,7 +1338,7 @@ function MenubarSub({
|
|
|
1338
1338
|
}) {
|
|
1339
1339
|
return /* @__PURE__ */ jsx(MenubarPrimitive.Sub, { "data-slot": "menubar-sub", ...props });
|
|
1340
1340
|
}
|
|
1341
|
-
var Menubar =
|
|
1341
|
+
var Menubar = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1342
1342
|
MenubarPrimitive.Root,
|
|
1343
1343
|
{
|
|
1344
1344
|
ref,
|
|
@@ -1350,7 +1350,7 @@ var Menubar = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
1350
1350
|
}
|
|
1351
1351
|
));
|
|
1352
1352
|
Menubar.displayName = MenubarPrimitive.Root.displayName;
|
|
1353
|
-
var MenubarTrigger =
|
|
1353
|
+
var MenubarTrigger = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1354
1354
|
MenubarPrimitive.Trigger,
|
|
1355
1355
|
{
|
|
1356
1356
|
ref,
|
|
@@ -1362,7 +1362,7 @@ var MenubarTrigger = React24.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
1362
1362
|
}
|
|
1363
1363
|
));
|
|
1364
1364
|
MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
|
|
1365
|
-
var MenubarSubTrigger =
|
|
1365
|
+
var MenubarSubTrigger = React25.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1366
1366
|
MenubarPrimitive.SubTrigger,
|
|
1367
1367
|
{
|
|
1368
1368
|
ref,
|
|
@@ -1379,7 +1379,7 @@ var MenubarSubTrigger = React24.forwardRef(({ className, inset, children, ...pro
|
|
|
1379
1379
|
}
|
|
1380
1380
|
));
|
|
1381
1381
|
MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
|
|
1382
|
-
var MenubarSubContent =
|
|
1382
|
+
var MenubarSubContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1383
1383
|
MenubarPrimitive.SubContent,
|
|
1384
1384
|
{
|
|
1385
1385
|
ref,
|
|
@@ -1391,7 +1391,7 @@ var MenubarSubContent = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
1391
1391
|
}
|
|
1392
1392
|
));
|
|
1393
1393
|
MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
|
|
1394
|
-
var MenubarContent =
|
|
1394
|
+
var MenubarContent = React25.forwardRef(
|
|
1395
1395
|
({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsx(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
1396
1396
|
MenubarPrimitive.Content,
|
|
1397
1397
|
{
|
|
@@ -1408,7 +1408,7 @@ var MenubarContent = React24.forwardRef(
|
|
|
1408
1408
|
) })
|
|
1409
1409
|
);
|
|
1410
1410
|
MenubarContent.displayName = MenubarPrimitive.Content.displayName;
|
|
1411
|
-
var MenubarItem =
|
|
1411
|
+
var MenubarItem = React25.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1412
1412
|
MenubarPrimitive.Item,
|
|
1413
1413
|
{
|
|
1414
1414
|
ref,
|
|
@@ -1421,7 +1421,7 @@ var MenubarItem = React24.forwardRef(({ className, inset, ...props }, ref) => /*
|
|
|
1421
1421
|
}
|
|
1422
1422
|
));
|
|
1423
1423
|
MenubarItem.displayName = MenubarPrimitive.Item.displayName;
|
|
1424
|
-
var MenubarCheckboxItem =
|
|
1424
|
+
var MenubarCheckboxItem = React25.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1425
1425
|
MenubarPrimitive.CheckboxItem,
|
|
1426
1426
|
{
|
|
1427
1427
|
ref,
|
|
@@ -1438,7 +1438,7 @@ var MenubarCheckboxItem = React24.forwardRef(({ className, children, checked, ..
|
|
|
1438
1438
|
}
|
|
1439
1439
|
));
|
|
1440
1440
|
MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
|
|
1441
|
-
var MenubarRadioItem =
|
|
1441
|
+
var MenubarRadioItem = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1442
1442
|
MenubarPrimitive.RadioItem,
|
|
1443
1443
|
{
|
|
1444
1444
|
ref,
|
|
@@ -1454,7 +1454,7 @@ var MenubarRadioItem = React24.forwardRef(({ className, children, ...props }, re
|
|
|
1454
1454
|
}
|
|
1455
1455
|
));
|
|
1456
1456
|
MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
|
|
1457
|
-
var MenubarLabel =
|
|
1457
|
+
var MenubarLabel = React25.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1458
1458
|
MenubarPrimitive.Label,
|
|
1459
1459
|
{
|
|
1460
1460
|
ref,
|
|
@@ -1467,7 +1467,7 @@ var MenubarLabel = React24.forwardRef(({ className, inset, ...props }, ref) => /
|
|
|
1467
1467
|
}
|
|
1468
1468
|
));
|
|
1469
1469
|
MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
|
|
1470
|
-
var MenubarSeparator =
|
|
1470
|
+
var MenubarSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1471
1471
|
MenubarPrimitive.Separator,
|
|
1472
1472
|
{
|
|
1473
1473
|
ref,
|
|
@@ -1492,7 +1492,7 @@ var MenubarShortcut = ({
|
|
|
1492
1492
|
);
|
|
1493
1493
|
};
|
|
1494
1494
|
MenubarShortcut.displayname = "MenubarShortcut";
|
|
1495
|
-
var NavigationMenu =
|
|
1495
|
+
var NavigationMenu = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1496
1496
|
NavigationMenuPrimitive.Root,
|
|
1497
1497
|
{
|
|
1498
1498
|
ref,
|
|
@@ -1508,7 +1508,7 @@ var NavigationMenu = React24.forwardRef(({ className, children, ...props }, ref)
|
|
|
1508
1508
|
}
|
|
1509
1509
|
));
|
|
1510
1510
|
NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
|
|
1511
|
-
var NavigationMenuList =
|
|
1511
|
+
var NavigationMenuList = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1512
1512
|
NavigationMenuPrimitive.List,
|
|
1513
1513
|
{
|
|
1514
1514
|
ref,
|
|
@@ -1524,7 +1524,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
|
|
|
1524
1524
|
var navigationMenuTriggerStyle = cva(
|
|
1525
1525
|
"group inline-flex h-10 w-max items-center justify-center rounded-control bg-background px-4 py-2 font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=open]:text-accent-foreground data-[state=open]:bg-accent/50 data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent"
|
|
1526
1526
|
);
|
|
1527
|
-
var NavigationMenuTrigger =
|
|
1527
|
+
var NavigationMenuTrigger = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1528
1528
|
NavigationMenuPrimitive.Trigger,
|
|
1529
1529
|
{
|
|
1530
1530
|
ref,
|
|
@@ -1544,7 +1544,7 @@ var NavigationMenuTrigger = React24.forwardRef(({ className, children, ...props
|
|
|
1544
1544
|
}
|
|
1545
1545
|
));
|
|
1546
1546
|
NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
|
|
1547
|
-
var NavigationMenuContent =
|
|
1547
|
+
var NavigationMenuContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1548
1548
|
NavigationMenuPrimitive.Content,
|
|
1549
1549
|
{
|
|
1550
1550
|
ref,
|
|
@@ -1557,7 +1557,7 @@ var NavigationMenuContent = React24.forwardRef(({ className, ...props }, ref) =>
|
|
|
1557
1557
|
));
|
|
1558
1558
|
NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
|
|
1559
1559
|
var NavigationMenuLink = NavigationMenuPrimitive.Link;
|
|
1560
|
-
var NavigationMenuViewport =
|
|
1560
|
+
var NavigationMenuViewport = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx(
|
|
1561
1561
|
NavigationMenuPrimitive.Viewport,
|
|
1562
1562
|
{
|
|
1563
1563
|
className: cn(
|
|
@@ -1569,7 +1569,7 @@ var NavigationMenuViewport = React24.forwardRef(({ className, ...props }, ref) =
|
|
|
1569
1569
|
}
|
|
1570
1570
|
) }));
|
|
1571
1571
|
NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
|
|
1572
|
-
var NavigationMenuIndicator =
|
|
1572
|
+
var NavigationMenuIndicator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1573
1573
|
NavigationMenuPrimitive.Indicator,
|
|
1574
1574
|
{
|
|
1575
1575
|
ref,
|
|
@@ -1592,7 +1592,7 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx(
|
|
|
1592
1592
|
}
|
|
1593
1593
|
);
|
|
1594
1594
|
Pagination.displayName = "Pagination";
|
|
1595
|
-
var PaginationContent =
|
|
1595
|
+
var PaginationContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1596
1596
|
"ul",
|
|
1597
1597
|
{
|
|
1598
1598
|
ref,
|
|
@@ -1601,7 +1601,7 @@ var PaginationContent = React24.forwardRef(({ className, ...props }, ref) => /*
|
|
|
1601
1601
|
}
|
|
1602
1602
|
));
|
|
1603
1603
|
PaginationContent.displayName = "PaginationContent";
|
|
1604
|
-
var PaginationItem =
|
|
1604
|
+
var PaginationItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, className: cn("", className), ...props }));
|
|
1605
1605
|
PaginationItem.displayName = "PaginationItem";
|
|
1606
1606
|
var PaginationLink = ({
|
|
1607
1607
|
className,
|
|
@@ -1675,7 +1675,7 @@ var PaginationEllipsis = ({
|
|
|
1675
1675
|
PaginationEllipsis.displayName = "PaginationEllipsis";
|
|
1676
1676
|
var Popover = PopoverPrimitive.Root;
|
|
1677
1677
|
var PopoverTrigger = PopoverPrimitive.Trigger;
|
|
1678
|
-
var PopoverContent =
|
|
1678
|
+
var PopoverContent = React25.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
|
|
1679
1679
|
PopoverPrimitive.Content,
|
|
1680
1680
|
{
|
|
1681
1681
|
ref,
|
|
@@ -1689,7 +1689,7 @@ var PopoverContent = React24.forwardRef(({ className, align = "center", sideOffs
|
|
|
1689
1689
|
}
|
|
1690
1690
|
) }));
|
|
1691
1691
|
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
|
|
1692
|
-
var Progress =
|
|
1692
|
+
var Progress = React25.forwardRef(({ className, value, size = "default", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1693
1693
|
ProgressPrimitive.Root,
|
|
1694
1694
|
{
|
|
1695
1695
|
ref,
|
|
@@ -1733,7 +1733,7 @@ var ResizableHandle = ({
|
|
|
1733
1733
|
/* @__PURE__ */ jsx("div", { className: "z-10 h-6 w-[3px] rounded-full bg-muted-foreground/40" })
|
|
1734
1734
|
}
|
|
1735
1735
|
);
|
|
1736
|
-
var ScrollArea =
|
|
1736
|
+
var ScrollArea = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
1737
1737
|
ScrollAreaPrimitive.Root,
|
|
1738
1738
|
{
|
|
1739
1739
|
ref,
|
|
@@ -1747,7 +1747,7 @@ var ScrollArea = React24.forwardRef(({ className, children, ...props }, ref) =>
|
|
|
1747
1747
|
}
|
|
1748
1748
|
));
|
|
1749
1749
|
ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
|
|
1750
|
-
var ScrollBar =
|
|
1750
|
+
var ScrollBar = React25.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1751
1751
|
ScrollAreaPrimitive.ScrollAreaScrollbar,
|
|
1752
1752
|
{
|
|
1753
1753
|
ref,
|
|
@@ -1763,11 +1763,90 @@ var ScrollBar = React24.forwardRef(({ className, orientation = "vertical", ...pr
|
|
|
1763
1763
|
}
|
|
1764
1764
|
));
|
|
1765
1765
|
ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
|
|
1766
|
+
var SegmentedControl = React25.forwardRef(
|
|
1767
|
+
({
|
|
1768
|
+
options,
|
|
1769
|
+
value,
|
|
1770
|
+
defaultValue,
|
|
1771
|
+
onValueChange,
|
|
1772
|
+
size = "xs",
|
|
1773
|
+
stretch,
|
|
1774
|
+
className,
|
|
1775
|
+
...props
|
|
1776
|
+
}, ref) => {
|
|
1777
|
+
const [internal, setInternal] = React25.useState(
|
|
1778
|
+
defaultValue ?? options[0]?.value
|
|
1779
|
+
);
|
|
1780
|
+
const active = value ?? internal;
|
|
1781
|
+
const refs = React25.useRef([]);
|
|
1782
|
+
const select = (next) => {
|
|
1783
|
+
if (value == null) setInternal(next);
|
|
1784
|
+
onValueChange?.(next);
|
|
1785
|
+
};
|
|
1786
|
+
const onKeyDown = (event, index) => {
|
|
1787
|
+
const forward = event.key === "ArrowRight" || event.key === "ArrowDown";
|
|
1788
|
+
const back = event.key === "ArrowLeft" || event.key === "ArrowUp";
|
|
1789
|
+
if (!forward && !back) return;
|
|
1790
|
+
event.preventDefault();
|
|
1791
|
+
const step = forward ? 1 : -1;
|
|
1792
|
+
for (let i = 1; i <= options.length; i += 1) {
|
|
1793
|
+
const next = options[(index + step * i + options.length * i) % options.length];
|
|
1794
|
+
if (next && !next.disabled) {
|
|
1795
|
+
select(next.value);
|
|
1796
|
+
refs.current[options.indexOf(next)]?.focus();
|
|
1797
|
+
return;
|
|
1798
|
+
}
|
|
1799
|
+
}
|
|
1800
|
+
};
|
|
1801
|
+
return /* @__PURE__ */ jsx(
|
|
1802
|
+
"div",
|
|
1803
|
+
{
|
|
1804
|
+
ref,
|
|
1805
|
+
role: "radiogroup",
|
|
1806
|
+
className: cn(
|
|
1807
|
+
"inline-flex overflow-hidden rounded-control border border-border",
|
|
1808
|
+
stretch && "flex w-full",
|
|
1809
|
+
className
|
|
1810
|
+
),
|
|
1811
|
+
...props,
|
|
1812
|
+
children: options.map((option, index) => {
|
|
1813
|
+
const on = option.value === active;
|
|
1814
|
+
return /* @__PURE__ */ jsx(
|
|
1815
|
+
"button",
|
|
1816
|
+
{
|
|
1817
|
+
ref: (node) => {
|
|
1818
|
+
refs.current[index] = node;
|
|
1819
|
+
},
|
|
1820
|
+
type: "button",
|
|
1821
|
+
role: "radio",
|
|
1822
|
+
"aria-checked": on,
|
|
1823
|
+
disabled: option.disabled,
|
|
1824
|
+
tabIndex: on ? 0 : -1,
|
|
1825
|
+
onClick: () => select(option.value),
|
|
1826
|
+
onKeyDown: (event) => onKeyDown(event, index),
|
|
1827
|
+
className: cn(
|
|
1828
|
+
"min-w-0 truncate px-2 text-center whitespace-nowrap",
|
|
1829
|
+
"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-ring",
|
|
1830
|
+
size === "xs" ? "h-[22px] text-sm" : "h-[26px]",
|
|
1831
|
+
stretch && "flex-1",
|
|
1832
|
+
on ? "bg-primary/12 font-medium text-primary" : "text-muted-foreground hover:bg-accent hover:text-foreground",
|
|
1833
|
+
option.disabled && "pointer-events-none opacity-50"
|
|
1834
|
+
),
|
|
1835
|
+
children: option.label
|
|
1836
|
+
},
|
|
1837
|
+
option.value
|
|
1838
|
+
);
|
|
1839
|
+
})
|
|
1840
|
+
}
|
|
1841
|
+
);
|
|
1842
|
+
}
|
|
1843
|
+
);
|
|
1844
|
+
SegmentedControl.displayName = "SegmentedControl";
|
|
1766
1845
|
var Sheet = DialogPrimitive.Root;
|
|
1767
1846
|
var SheetTrigger = DialogPrimitive.Trigger;
|
|
1768
1847
|
var SheetClose = DialogPrimitive.Close;
|
|
1769
1848
|
var SheetPortal = DialogPrimitive.Portal;
|
|
1770
|
-
var SheetOverlay =
|
|
1849
|
+
var SheetOverlay = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1771
1850
|
DialogPrimitive.Overlay,
|
|
1772
1851
|
{
|
|
1773
1852
|
className: cn(
|
|
@@ -1795,7 +1874,7 @@ var sheetVariants = cva(
|
|
|
1795
1874
|
}
|
|
1796
1875
|
}
|
|
1797
1876
|
);
|
|
1798
|
-
var SheetContent =
|
|
1877
|
+
var SheetContent = React25.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(SheetPortal, { children: [
|
|
1799
1878
|
/* @__PURE__ */ jsx(SheetOverlay, {}),
|
|
1800
1879
|
/* @__PURE__ */ jsxs(
|
|
1801
1880
|
DialogPrimitive.Content,
|
|
@@ -1842,7 +1921,7 @@ var SheetFooter = ({
|
|
|
1842
1921
|
}
|
|
1843
1922
|
);
|
|
1844
1923
|
SheetFooter.displayName = "SheetFooter";
|
|
1845
|
-
var SheetTitle =
|
|
1924
|
+
var SheetTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1846
1925
|
DialogPrimitive.Title,
|
|
1847
1926
|
{
|
|
1848
1927
|
ref,
|
|
@@ -1851,7 +1930,7 @@ var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
1851
1930
|
}
|
|
1852
1931
|
));
|
|
1853
1932
|
SheetTitle.displayName = DialogPrimitive.Title.displayName;
|
|
1854
|
-
var SheetDescription =
|
|
1933
|
+
var SheetDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1855
1934
|
DialogPrimitive.Description,
|
|
1856
1935
|
{
|
|
1857
1936
|
ref,
|
|
@@ -1862,8 +1941,8 @@ var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
1862
1941
|
SheetDescription.displayName = DialogPrimitive.Description.displayName;
|
|
1863
1942
|
var MOBILE_BREAKPOINT = 768;
|
|
1864
1943
|
function useIsMobile() {
|
|
1865
|
-
const [isMobile, setIsMobile] =
|
|
1866
|
-
|
|
1944
|
+
const [isMobile, setIsMobile] = React25.useState(void 0);
|
|
1945
|
+
React25.useEffect(() => {
|
|
1867
1946
|
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
|
|
1868
1947
|
const onChange = () => {
|
|
1869
1948
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
|
|
@@ -1889,7 +1968,7 @@ function Skeleton({
|
|
|
1889
1968
|
var TooltipProvider = TooltipPrimitive.Provider;
|
|
1890
1969
|
var Tooltip = TooltipPrimitive.Root;
|
|
1891
1970
|
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
1892
|
-
var TooltipContent =
|
|
1971
|
+
var TooltipContent = React25.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
1893
1972
|
TooltipPrimitive.Content,
|
|
1894
1973
|
{
|
|
1895
1974
|
ref,
|
|
@@ -1908,15 +1987,15 @@ var SIDEBAR_WIDTH = "16rem";
|
|
|
1908
1987
|
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
1909
1988
|
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
1910
1989
|
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
1911
|
-
var SidebarContext =
|
|
1990
|
+
var SidebarContext = React25.createContext(null);
|
|
1912
1991
|
function useSidebar() {
|
|
1913
|
-
const context =
|
|
1992
|
+
const context = React25.useContext(SidebarContext);
|
|
1914
1993
|
if (!context) {
|
|
1915
1994
|
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
1916
1995
|
}
|
|
1917
1996
|
return context;
|
|
1918
1997
|
}
|
|
1919
|
-
var SidebarProvider =
|
|
1998
|
+
var SidebarProvider = React25.forwardRef(
|
|
1920
1999
|
({
|
|
1921
2000
|
defaultOpen = true,
|
|
1922
2001
|
open: openProp,
|
|
@@ -1927,10 +2006,10 @@ var SidebarProvider = React24.forwardRef(
|
|
|
1927
2006
|
...props
|
|
1928
2007
|
}, ref) => {
|
|
1929
2008
|
const isMobile = useIsMobile();
|
|
1930
|
-
const [openMobile, setOpenMobile] =
|
|
1931
|
-
const [_open, _setOpen] =
|
|
2009
|
+
const [openMobile, setOpenMobile] = React25.useState(false);
|
|
2010
|
+
const [_open, _setOpen] = React25.useState(defaultOpen);
|
|
1932
2011
|
const open = openProp ?? _open;
|
|
1933
|
-
const setOpen =
|
|
2012
|
+
const setOpen = React25.useCallback(
|
|
1934
2013
|
(value) => {
|
|
1935
2014
|
const openState = typeof value === "function" ? value(open) : value;
|
|
1936
2015
|
if (setOpenProp) {
|
|
@@ -1942,10 +2021,10 @@ var SidebarProvider = React24.forwardRef(
|
|
|
1942
2021
|
},
|
|
1943
2022
|
[setOpenProp, open]
|
|
1944
2023
|
);
|
|
1945
|
-
const toggleSidebar =
|
|
2024
|
+
const toggleSidebar = React25.useCallback(() => {
|
|
1946
2025
|
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
1947
2026
|
}, [isMobile, setOpen, setOpenMobile]);
|
|
1948
|
-
|
|
2027
|
+
React25.useEffect(() => {
|
|
1949
2028
|
const handleKeyDown = (event) => {
|
|
1950
2029
|
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
1951
2030
|
event.preventDefault();
|
|
@@ -1956,7 +2035,7 @@ var SidebarProvider = React24.forwardRef(
|
|
|
1956
2035
|
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
1957
2036
|
}, [toggleSidebar]);
|
|
1958
2037
|
const state = open ? "expanded" : "collapsed";
|
|
1959
|
-
const contextValue =
|
|
2038
|
+
const contextValue = React25.useMemo(
|
|
1960
2039
|
() => ({
|
|
1961
2040
|
state,
|
|
1962
2041
|
open,
|
|
@@ -1988,7 +2067,7 @@ var SidebarProvider = React24.forwardRef(
|
|
|
1988
2067
|
}
|
|
1989
2068
|
);
|
|
1990
2069
|
SidebarProvider.displayName = "SidebarProvider";
|
|
1991
|
-
var Sidebar =
|
|
2070
|
+
var Sidebar = React25.forwardRef(
|
|
1992
2071
|
({
|
|
1993
2072
|
side = "left",
|
|
1994
2073
|
variant = "sidebar",
|
|
@@ -2081,7 +2160,7 @@ var Sidebar = React24.forwardRef(
|
|
|
2081
2160
|
}
|
|
2082
2161
|
);
|
|
2083
2162
|
Sidebar.displayName = "Sidebar";
|
|
2084
|
-
var SidebarTrigger =
|
|
2163
|
+
var SidebarTrigger = React25.forwardRef(({ className, onClick, ...props }, ref) => {
|
|
2085
2164
|
const { toggleSidebar } = useSidebar();
|
|
2086
2165
|
return /* @__PURE__ */ jsxs(
|
|
2087
2166
|
Button,
|
|
@@ -2104,7 +2183,7 @@ var SidebarTrigger = React24.forwardRef(({ className, onClick, ...props }, ref)
|
|
|
2104
2183
|
);
|
|
2105
2184
|
});
|
|
2106
2185
|
SidebarTrigger.displayName = "SidebarTrigger";
|
|
2107
|
-
var SidebarRail =
|
|
2186
|
+
var SidebarRail = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2108
2187
|
const { toggleSidebar } = useSidebar();
|
|
2109
2188
|
return /* @__PURE__ */ jsx(
|
|
2110
2189
|
"button",
|
|
@@ -2129,7 +2208,7 @@ var SidebarRail = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2129
2208
|
);
|
|
2130
2209
|
});
|
|
2131
2210
|
SidebarRail.displayName = "SidebarRail";
|
|
2132
|
-
var SidebarInset =
|
|
2211
|
+
var SidebarInset = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2133
2212
|
return /* @__PURE__ */ jsx(
|
|
2134
2213
|
"main",
|
|
2135
2214
|
{
|
|
@@ -2144,7 +2223,7 @@ var SidebarInset = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2144
2223
|
);
|
|
2145
2224
|
});
|
|
2146
2225
|
SidebarInset.displayName = "SidebarInset";
|
|
2147
|
-
var SidebarInput =
|
|
2226
|
+
var SidebarInput = React25.forwardRef(({ className, type, ...props }, ref) => {
|
|
2148
2227
|
return /* @__PURE__ */ jsx(
|
|
2149
2228
|
"input",
|
|
2150
2229
|
{
|
|
@@ -2162,7 +2241,7 @@ var SidebarInput = React24.forwardRef(({ className, type, ...props }, ref) => {
|
|
|
2162
2241
|
);
|
|
2163
2242
|
});
|
|
2164
2243
|
SidebarInput.displayName = "SidebarInput";
|
|
2165
|
-
var SidebarHeader =
|
|
2244
|
+
var SidebarHeader = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2166
2245
|
return /* @__PURE__ */ jsx(
|
|
2167
2246
|
"div",
|
|
2168
2247
|
{
|
|
@@ -2174,7 +2253,7 @@ var SidebarHeader = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2174
2253
|
);
|
|
2175
2254
|
});
|
|
2176
2255
|
SidebarHeader.displayName = "SidebarHeader";
|
|
2177
|
-
var SidebarFooter =
|
|
2256
|
+
var SidebarFooter = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2178
2257
|
return /* @__PURE__ */ jsx(
|
|
2179
2258
|
"div",
|
|
2180
2259
|
{
|
|
@@ -2186,7 +2265,7 @@ var SidebarFooter = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2186
2265
|
);
|
|
2187
2266
|
});
|
|
2188
2267
|
SidebarFooter.displayName = "SidebarFooter";
|
|
2189
|
-
var SidebarSeparator =
|
|
2268
|
+
var SidebarSeparator = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2190
2269
|
return /* @__PURE__ */ jsx(
|
|
2191
2270
|
Separator,
|
|
2192
2271
|
{
|
|
@@ -2198,7 +2277,7 @@ var SidebarSeparator = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2198
2277
|
);
|
|
2199
2278
|
});
|
|
2200
2279
|
SidebarSeparator.displayName = "SidebarSeparator";
|
|
2201
|
-
var SidebarContent =
|
|
2280
|
+
var SidebarContent = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2202
2281
|
return /* @__PURE__ */ jsx(
|
|
2203
2282
|
"div",
|
|
2204
2283
|
{
|
|
@@ -2213,7 +2292,7 @@ var SidebarContent = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2213
2292
|
);
|
|
2214
2293
|
});
|
|
2215
2294
|
SidebarContent.displayName = "SidebarContent";
|
|
2216
|
-
var SidebarGroup =
|
|
2295
|
+
var SidebarGroup = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2217
2296
|
return /* @__PURE__ */ jsx(
|
|
2218
2297
|
"div",
|
|
2219
2298
|
{
|
|
@@ -2225,7 +2304,7 @@ var SidebarGroup = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2225
2304
|
);
|
|
2226
2305
|
});
|
|
2227
2306
|
SidebarGroup.displayName = "SidebarGroup";
|
|
2228
|
-
var SidebarGroupLabel =
|
|
2307
|
+
var SidebarGroupLabel = React25.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
2229
2308
|
const Comp = asChild ? Slot : "div";
|
|
2230
2309
|
return /* @__PURE__ */ jsx(
|
|
2231
2310
|
Comp,
|
|
@@ -2242,7 +2321,7 @@ var SidebarGroupLabel = React24.forwardRef(({ className, asChild = false, ...pro
|
|
|
2242
2321
|
);
|
|
2243
2322
|
});
|
|
2244
2323
|
SidebarGroupLabel.displayName = "SidebarGroupLabel";
|
|
2245
|
-
var SidebarGroupAction =
|
|
2324
|
+
var SidebarGroupAction = React25.forwardRef(({ className, asChild = false, ...props }, ref) => {
|
|
2246
2325
|
const Comp = asChild ? Slot : "button";
|
|
2247
2326
|
return /* @__PURE__ */ jsx(
|
|
2248
2327
|
Comp,
|
|
@@ -2261,7 +2340,7 @@ var SidebarGroupAction = React24.forwardRef(({ className, asChild = false, ...pr
|
|
|
2261
2340
|
);
|
|
2262
2341
|
});
|
|
2263
2342
|
SidebarGroupAction.displayName = "SidebarGroupAction";
|
|
2264
|
-
var SidebarGroupContent =
|
|
2343
|
+
var SidebarGroupContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2265
2344
|
"div",
|
|
2266
2345
|
{
|
|
2267
2346
|
ref,
|
|
@@ -2271,7 +2350,7 @@ var SidebarGroupContent = React24.forwardRef(({ className, ...props }, ref) => /
|
|
|
2271
2350
|
}
|
|
2272
2351
|
));
|
|
2273
2352
|
SidebarGroupContent.displayName = "SidebarGroupContent";
|
|
2274
|
-
var SidebarMenu =
|
|
2353
|
+
var SidebarMenu = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2275
2354
|
"ul",
|
|
2276
2355
|
{
|
|
2277
2356
|
ref,
|
|
@@ -2281,7 +2360,7 @@ var SidebarMenu = React24.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
2281
2360
|
}
|
|
2282
2361
|
));
|
|
2283
2362
|
SidebarMenu.displayName = "SidebarMenu";
|
|
2284
|
-
var SidebarMenuItem =
|
|
2363
|
+
var SidebarMenuItem = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2285
2364
|
"li",
|
|
2286
2365
|
{
|
|
2287
2366
|
ref,
|
|
@@ -2311,7 +2390,7 @@ var sidebarMenuButtonVariants = cva(
|
|
|
2311
2390
|
}
|
|
2312
2391
|
}
|
|
2313
2392
|
);
|
|
2314
|
-
var SidebarMenuButton =
|
|
2393
|
+
var SidebarMenuButton = React25.forwardRef(
|
|
2315
2394
|
({
|
|
2316
2395
|
asChild = false,
|
|
2317
2396
|
isActive = false,
|
|
@@ -2357,7 +2436,7 @@ var SidebarMenuButton = React24.forwardRef(
|
|
|
2357
2436
|
}
|
|
2358
2437
|
);
|
|
2359
2438
|
SidebarMenuButton.displayName = "SidebarMenuButton";
|
|
2360
|
-
var SidebarMenuAction =
|
|
2439
|
+
var SidebarMenuAction = React25.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
|
|
2361
2440
|
const Comp = asChild ? Slot : "button";
|
|
2362
2441
|
return /* @__PURE__ */ jsx(
|
|
2363
2442
|
Comp,
|
|
@@ -2380,7 +2459,7 @@ var SidebarMenuAction = React24.forwardRef(({ className, asChild = false, showOn
|
|
|
2380
2459
|
);
|
|
2381
2460
|
});
|
|
2382
2461
|
SidebarMenuAction.displayName = "SidebarMenuAction";
|
|
2383
|
-
var SidebarMenuBadge =
|
|
2462
|
+
var SidebarMenuBadge = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2384
2463
|
"div",
|
|
2385
2464
|
{
|
|
2386
2465
|
ref,
|
|
@@ -2398,8 +2477,8 @@ var SidebarMenuBadge = React24.forwardRef(({ className, ...props }, ref) => /* @
|
|
|
2398
2477
|
}
|
|
2399
2478
|
));
|
|
2400
2479
|
SidebarMenuBadge.displayName = "SidebarMenuBadge";
|
|
2401
|
-
var SidebarMenuSkeleton =
|
|
2402
|
-
const width =
|
|
2480
|
+
var SidebarMenuSkeleton = React25.forwardRef(({ className, showIcon = false, ...props }, ref) => {
|
|
2481
|
+
const width = React25.useMemo(() => {
|
|
2403
2482
|
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
2404
2483
|
}, []);
|
|
2405
2484
|
return /* @__PURE__ */ jsxs(
|
|
@@ -2432,7 +2511,7 @@ var SidebarMenuSkeleton = React24.forwardRef(({ className, showIcon = false, ...
|
|
|
2432
2511
|
);
|
|
2433
2512
|
});
|
|
2434
2513
|
SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
|
|
2435
|
-
var SidebarMenuSub =
|
|
2514
|
+
var SidebarMenuSub = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2436
2515
|
"ul",
|
|
2437
2516
|
{
|
|
2438
2517
|
ref,
|
|
@@ -2446,9 +2525,9 @@ var SidebarMenuSub = React24.forwardRef(({ className, ...props }, ref) => /* @__
|
|
|
2446
2525
|
}
|
|
2447
2526
|
));
|
|
2448
2527
|
SidebarMenuSub.displayName = "SidebarMenuSub";
|
|
2449
|
-
var SidebarMenuSubItem =
|
|
2528
|
+
var SidebarMenuSubItem = React25.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, ...props }));
|
|
2450
2529
|
SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
|
|
2451
|
-
var SidebarMenuSubButton =
|
|
2530
|
+
var SidebarMenuSubButton = React25.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
|
|
2452
2531
|
const Comp = asChild ? Slot : "a";
|
|
2453
2532
|
return /* @__PURE__ */ jsx(
|
|
2454
2533
|
Comp,
|
|
@@ -2550,7 +2629,7 @@ var statusDotVariants = cva("inline-block shrink-0 rounded-full", {
|
|
|
2550
2629
|
size: "sm"
|
|
2551
2630
|
}
|
|
2552
2631
|
});
|
|
2553
|
-
var StatusDot =
|
|
2632
|
+
var StatusDot = React25.forwardRef(
|
|
2554
2633
|
({ className, tone, size, label, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2555
2634
|
"span",
|
|
2556
2635
|
{
|
|
@@ -2564,7 +2643,7 @@ var StatusDot = React24.forwardRef(
|
|
|
2564
2643
|
)
|
|
2565
2644
|
);
|
|
2566
2645
|
StatusDot.displayName = "StatusDot";
|
|
2567
|
-
var Table =
|
|
2646
|
+
var Table = React25.forwardRef(({ className, density = "default", ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2568
2647
|
"div",
|
|
2569
2648
|
{
|
|
2570
2649
|
"data-density": density,
|
|
@@ -2580,9 +2659,9 @@ var Table = React24.forwardRef(({ className, density = "default", ...props }, re
|
|
|
2580
2659
|
}
|
|
2581
2660
|
));
|
|
2582
2661
|
Table.displayName = "Table";
|
|
2583
|
-
var TableHeader =
|
|
2662
|
+
var TableHeader = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
|
|
2584
2663
|
TableHeader.displayName = "TableHeader";
|
|
2585
|
-
var TableBody =
|
|
2664
|
+
var TableBody = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2586
2665
|
"tbody",
|
|
2587
2666
|
{
|
|
2588
2667
|
ref,
|
|
@@ -2591,7 +2670,7 @@ var TableBody = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
2591
2670
|
}
|
|
2592
2671
|
));
|
|
2593
2672
|
TableBody.displayName = "TableBody";
|
|
2594
|
-
var TableFooter =
|
|
2673
|
+
var TableFooter = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2595
2674
|
"tfoot",
|
|
2596
2675
|
{
|
|
2597
2676
|
ref,
|
|
@@ -2603,7 +2682,7 @@ var TableFooter = React24.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
2603
2682
|
}
|
|
2604
2683
|
));
|
|
2605
2684
|
TableFooter.displayName = "TableFooter";
|
|
2606
|
-
var TableRow =
|
|
2685
|
+
var TableRow = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2607
2686
|
"tr",
|
|
2608
2687
|
{
|
|
2609
2688
|
ref,
|
|
@@ -2615,7 +2694,7 @@ var TableRow = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
2615
2694
|
}
|
|
2616
2695
|
));
|
|
2617
2696
|
TableRow.displayName = "TableRow";
|
|
2618
|
-
var TableHead =
|
|
2697
|
+
var TableHead = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2619
2698
|
"th",
|
|
2620
2699
|
{
|
|
2621
2700
|
ref,
|
|
@@ -2632,7 +2711,7 @@ var TableHead = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
2632
2711
|
}
|
|
2633
2712
|
));
|
|
2634
2713
|
TableHead.displayName = "TableHead";
|
|
2635
|
-
var TableCell =
|
|
2714
|
+
var TableCell = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2636
2715
|
"td",
|
|
2637
2716
|
{
|
|
2638
2717
|
ref,
|
|
@@ -2645,7 +2724,7 @@ var TableCell = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
2645
2724
|
}
|
|
2646
2725
|
));
|
|
2647
2726
|
TableCell.displayName = "TableCell";
|
|
2648
|
-
var TableCaption =
|
|
2727
|
+
var TableCaption = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2649
2728
|
"caption",
|
|
2650
2729
|
{
|
|
2651
2730
|
ref,
|
|
@@ -2654,11 +2733,11 @@ var TableCaption = React24.forwardRef(({ className, ...props }, ref) => /* @__PU
|
|
|
2654
2733
|
}
|
|
2655
2734
|
));
|
|
2656
2735
|
TableCaption.displayName = "TableCaption";
|
|
2657
|
-
var TabsSizeContext =
|
|
2658
|
-
var Tabs =
|
|
2736
|
+
var TabsSizeContext = React25.createContext("default");
|
|
2737
|
+
var Tabs = React25.forwardRef(({ size = "default", ...props }, ref) => /* @__PURE__ */ jsx(TabsSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx(TabsPrimitive.Root, { ref, ...props }) }));
|
|
2659
2738
|
Tabs.displayName = TabsPrimitive.Root.displayName;
|
|
2660
|
-
var TabsList =
|
|
2661
|
-
const size =
|
|
2739
|
+
var TabsList = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2740
|
+
const size = React25.useContext(TabsSizeContext);
|
|
2662
2741
|
return /* @__PURE__ */ jsx(
|
|
2663
2742
|
TabsPrimitive.List,
|
|
2664
2743
|
{
|
|
@@ -2673,8 +2752,8 @@ var TabsList = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2673
2752
|
);
|
|
2674
2753
|
});
|
|
2675
2754
|
TabsList.displayName = TabsPrimitive.List.displayName;
|
|
2676
|
-
var TabsTrigger =
|
|
2677
|
-
const size =
|
|
2755
|
+
var TabsTrigger = React25.forwardRef(({ className, ...props }, ref) => {
|
|
2756
|
+
const size = React25.useContext(TabsSizeContext);
|
|
2678
2757
|
return /* @__PURE__ */ jsx(
|
|
2679
2758
|
TabsPrimitive.Trigger,
|
|
2680
2759
|
{
|
|
@@ -2689,7 +2768,7 @@ var TabsTrigger = React24.forwardRef(({ className, ...props }, ref) => {
|
|
|
2689
2768
|
);
|
|
2690
2769
|
});
|
|
2691
2770
|
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
2692
|
-
var TabsContent =
|
|
2771
|
+
var TabsContent = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2693
2772
|
TabsPrimitive.Content,
|
|
2694
2773
|
{
|
|
2695
2774
|
ref,
|
|
@@ -2721,7 +2800,7 @@ var toggleVariants = cva(
|
|
|
2721
2800
|
}
|
|
2722
2801
|
}
|
|
2723
2802
|
);
|
|
2724
|
-
var Toggle =
|
|
2803
|
+
var Toggle = React25.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2725
2804
|
TogglePrimitive.Root,
|
|
2726
2805
|
{
|
|
2727
2806
|
ref,
|
|
@@ -2730,11 +2809,11 @@ var Toggle = React24.forwardRef(({ className, variant, size, ...props }, ref) =>
|
|
|
2730
2809
|
}
|
|
2731
2810
|
));
|
|
2732
2811
|
Toggle.displayName = TogglePrimitive.Root.displayName;
|
|
2733
|
-
var ToggleGroupContext =
|
|
2812
|
+
var ToggleGroupContext = React25.createContext({
|
|
2734
2813
|
size: "default",
|
|
2735
2814
|
variant: "default"
|
|
2736
2815
|
});
|
|
2737
|
-
var ToggleGroup =
|
|
2816
|
+
var ToggleGroup = React25.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
2738
2817
|
ToggleGroupPrimitive.Root,
|
|
2739
2818
|
{
|
|
2740
2819
|
ref,
|
|
@@ -2744,8 +2823,8 @@ var ToggleGroup = React24.forwardRef(({ className, variant, size, children, ...p
|
|
|
2744
2823
|
}
|
|
2745
2824
|
));
|
|
2746
2825
|
ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
|
|
2747
|
-
var ToggleGroupItem =
|
|
2748
|
-
const context =
|
|
2826
|
+
var ToggleGroupItem = React25.forwardRef(({ className, children, variant, size, ...props }, ref) => {
|
|
2827
|
+
const context = React25.useContext(ToggleGroupContext);
|
|
2749
2828
|
return /* @__PURE__ */ jsx(
|
|
2750
2829
|
ToggleGroupPrimitive.Item,
|
|
2751
2830
|
{
|
|
@@ -2763,6 +2842,26 @@ var ToggleGroupItem = React24.forwardRef(({ className, children, variant, size,
|
|
|
2763
2842
|
);
|
|
2764
2843
|
});
|
|
2765
2844
|
ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
|
|
2845
|
+
var WORD = {
|
|
2846
|
+
unrecorded: "nothing recorded",
|
|
2847
|
+
purged: "purged",
|
|
2848
|
+
"declared-none": "none declared"
|
|
2849
|
+
};
|
|
2850
|
+
var AbsenceNote = React25.forwardRef(
|
|
2851
|
+
({ reason, label, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
2852
|
+
"div",
|
|
2853
|
+
{
|
|
2854
|
+
ref,
|
|
2855
|
+
className: cn("flex flex-col gap-1 px-2.5 py-2", className),
|
|
2856
|
+
...props,
|
|
2857
|
+
children: [
|
|
2858
|
+
/* @__PURE__ */ jsx("span", { className: "font-mono text-xs tracking-wide text-muted-foreground", children: label ?? WORD[reason] }),
|
|
2859
|
+
/* @__PURE__ */ jsx("span", { className: "text-sm leading-relaxed text-muted-foreground", children })
|
|
2860
|
+
]
|
|
2861
|
+
}
|
|
2862
|
+
)
|
|
2863
|
+
);
|
|
2864
|
+
AbsenceNote.displayName = "AbsenceNote";
|
|
2766
2865
|
var TONE = {
|
|
2767
2866
|
allowed: "text-foreground",
|
|
2768
2867
|
denied: "text-destructive",
|
|
@@ -2774,7 +2873,7 @@ function split(address) {
|
|
|
2774
2873
|
if (cut < 0) return { head: "", tail: address };
|
|
2775
2874
|
return { head: address.slice(0, cut + 1), tail: address.slice(cut + 1) };
|
|
2776
2875
|
}
|
|
2777
|
-
var AddressChip =
|
|
2876
|
+
var AddressChip = React25.forwardRef(
|
|
2778
2877
|
({ address, tone = "allowed", onOpen, className, ...props }, ref) => {
|
|
2779
2878
|
const { head, tail } = split(address);
|
|
2780
2879
|
const body = /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -2841,7 +2940,7 @@ var agentChipVariants = cva(
|
|
|
2841
2940
|
defaultVariants: { kind: "agent", inactive: false }
|
|
2842
2941
|
}
|
|
2843
2942
|
);
|
|
2844
|
-
var AgentChip =
|
|
2943
|
+
var AgentChip = React25.forwardRef(
|
|
2845
2944
|
({ icon, name, kind, inactive, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
2846
2945
|
"span",
|
|
2847
2946
|
{
|
|
@@ -2868,7 +2967,7 @@ var stateVariants = cva("inline-flex shrink-0 items-center gap-1.5 font-medium",
|
|
|
2868
2967
|
},
|
|
2869
2968
|
defaultVariants: { tone: "active" }
|
|
2870
2969
|
});
|
|
2871
|
-
var AppStatusBar =
|
|
2970
|
+
var AppStatusBar = React25.forwardRef(
|
|
2872
2971
|
({ state, tone, end, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
2873
2972
|
"div",
|
|
2874
2973
|
{
|
|
@@ -2896,7 +2995,94 @@ var AppStatusBar = React24.forwardRef(
|
|
|
2896
2995
|
)
|
|
2897
2996
|
);
|
|
2898
2997
|
AppStatusBar.displayName = "AppStatusBar";
|
|
2899
|
-
var
|
|
2998
|
+
var ArtifactTable = React25.forwardRef(({ files, onOpen, onDownload, renderActions, className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("flex flex-col", className), ...props, children: /* @__PURE__ */ jsxs(Table, { density: "compact", children: [
|
|
2999
|
+
/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
3000
|
+
/* @__PURE__ */ jsx(TableHead, { children: "file" }),
|
|
3001
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[7rem]", children: "kind" }),
|
|
3002
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[5rem]", children: "size" }),
|
|
3003
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[7rem]", children: "digest" }),
|
|
3004
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[5.5rem]", children: "written" }),
|
|
3005
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[9.5rem]", children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "actions" }) })
|
|
3006
|
+
] }) }),
|
|
3007
|
+
/* @__PURE__ */ jsx(TableBody, { children: files.map((file, index) => /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
3008
|
+
/* @__PURE__ */ jsx(
|
|
3009
|
+
TableCell,
|
|
3010
|
+
{
|
|
3011
|
+
className: cn(
|
|
3012
|
+
"font-mono",
|
|
3013
|
+
file.gone && "text-muted-foreground line-through"
|
|
3014
|
+
),
|
|
3015
|
+
children: file.name
|
|
3016
|
+
}
|
|
3017
|
+
),
|
|
3018
|
+
/* @__PURE__ */ jsx(TableCell, { children: file.kind }),
|
|
3019
|
+
/* @__PURE__ */ jsx(TableCell, { className: "tabular-nums", children: file.size }),
|
|
3020
|
+
/* @__PURE__ */ jsx(TableCell, { className: "font-mono text-muted-foreground", children: file.digest }),
|
|
3021
|
+
/* @__PURE__ */ jsx(TableCell, { className: "font-mono tabular-nums", children: file.written }),
|
|
3022
|
+
/* @__PURE__ */ jsx(TableCell, { children: renderActions ? renderActions(file, index) : /* @__PURE__ */ jsxs("span", { className: "flex gap-1", children: [
|
|
3023
|
+
/* @__PURE__ */ jsx(
|
|
3024
|
+
Button,
|
|
3025
|
+
{
|
|
3026
|
+
type: "button",
|
|
3027
|
+
variant: "outline",
|
|
3028
|
+
size: "xs",
|
|
3029
|
+
disabled: file.gone || !onOpen,
|
|
3030
|
+
onClick: () => onOpen?.(file, index),
|
|
3031
|
+
children: "Open"
|
|
3032
|
+
}
|
|
3033
|
+
),
|
|
3034
|
+
/* @__PURE__ */ jsx(
|
|
3035
|
+
Button,
|
|
3036
|
+
{
|
|
3037
|
+
type: "button",
|
|
3038
|
+
variant: "outline",
|
|
3039
|
+
size: "xs",
|
|
3040
|
+
disabled: file.gone || !onDownload,
|
|
3041
|
+
onClick: () => onDownload?.(file, index),
|
|
3042
|
+
children: "Download"
|
|
3043
|
+
}
|
|
3044
|
+
)
|
|
3045
|
+
] }) })
|
|
3046
|
+
] }, index)) })
|
|
3047
|
+
] }) }));
|
|
3048
|
+
ArtifactTable.displayName = "ArtifactTable";
|
|
3049
|
+
var TONE2 = {
|
|
3050
|
+
muted: "text-muted-foreground",
|
|
3051
|
+
info: "text-info",
|
|
3052
|
+
success: "text-success",
|
|
3053
|
+
warning: "text-warning",
|
|
3054
|
+
destructive: "text-destructive"
|
|
3055
|
+
};
|
|
3056
|
+
var AttemptClock = React25.forwardRef(
|
|
3057
|
+
({ rows, summary, className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col", className), ...props, children: [
|
|
3058
|
+
/* @__PURE__ */ jsxs(Table, { density: "compact", children: [
|
|
3059
|
+
/* @__PURE__ */ jsx(TableHeader, { children: /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
3060
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[7rem]", children: /* @__PURE__ */ jsx("span", { className: "sr-only", children: "what" }) }),
|
|
3061
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[6rem]", children: "started" }),
|
|
3062
|
+
/* @__PURE__ */ jsx(TableHead, { className: "w-[5.5rem]", children: "took" }),
|
|
3063
|
+
/* @__PURE__ */ jsx(TableHead, { children: "what happened" })
|
|
3064
|
+
] }) }),
|
|
3065
|
+
/* @__PURE__ */ jsx(TableBody, { children: rows.map((row, index) => {
|
|
3066
|
+
const tone = row.tone ? TONE2[row.tone] : void 0;
|
|
3067
|
+
return /* @__PURE__ */ jsxs(TableRow, { children: [
|
|
3068
|
+
/* @__PURE__ */ jsx(TableCell, { className: cn(tone, row.struck && "line-through"), children: row.label }),
|
|
3069
|
+
/* @__PURE__ */ jsx(TableCell, { className: "font-mono tabular-nums text-muted-foreground", children: row.started }),
|
|
3070
|
+
/* @__PURE__ */ jsx(TableCell, { className: cn("font-mono tabular-nums", tone), children: row.took }),
|
|
3071
|
+
/* @__PURE__ */ jsx(
|
|
3072
|
+
TableCell,
|
|
3073
|
+
{
|
|
3074
|
+
className: cn(row.struck && ["line-through", tone]),
|
|
3075
|
+
children: row.what
|
|
3076
|
+
}
|
|
3077
|
+
)
|
|
3078
|
+
] }, index);
|
|
3079
|
+
}) })
|
|
3080
|
+
] }),
|
|
3081
|
+
summary != null ? /* @__PURE__ */ jsx("div", { className: "border-border border-t px-2.5 py-1.5 text-sm text-muted-foreground", children: summary }) : null
|
|
3082
|
+
] })
|
|
3083
|
+
);
|
|
3084
|
+
AttemptClock.displayName = "AttemptClock";
|
|
3085
|
+
var BarChartH = React25.forwardRef(
|
|
2900
3086
|
({
|
|
2901
3087
|
data,
|
|
2902
3088
|
max,
|
|
@@ -2937,7 +3123,7 @@ var BarChartH = React24.forwardRef(
|
|
|
2937
3123
|
}
|
|
2938
3124
|
);
|
|
2939
3125
|
BarChartH.displayName = "BarChartH";
|
|
2940
|
-
var BarChartV =
|
|
3126
|
+
var BarChartV = React25.forwardRef(
|
|
2941
3127
|
({
|
|
2942
3128
|
data,
|
|
2943
3129
|
max,
|
|
@@ -3002,7 +3188,7 @@ var BarChartV = React24.forwardRef(
|
|
|
3002
3188
|
);
|
|
3003
3189
|
BarChartV.displayName = "BarChartV";
|
|
3004
3190
|
var UNPAINTED = "bg-muted-foreground";
|
|
3005
|
-
var BoundChip =
|
|
3191
|
+
var BoundChip = React25.forwardRef(
|
|
3006
3192
|
({ bound, swatchOnly, label, swatch, palette, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
3007
3193
|
"span",
|
|
3008
3194
|
{
|
|
@@ -3033,7 +3219,7 @@ function ButtonWithTooltip(props) {
|
|
|
3033
3219
|
/* @__PURE__ */ jsx(TooltipContent, { children: props.tooltip })
|
|
3034
3220
|
] }) });
|
|
3035
3221
|
}
|
|
3036
|
-
var CannotAnswerCard =
|
|
3222
|
+
var CannotAnswerCard = React25.forwardRef(({ label = "cannot answer", remedy, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
3037
3223
|
"div",
|
|
3038
3224
|
{
|
|
3039
3225
|
ref,
|
|
@@ -3057,7 +3243,7 @@ var PURPOSE = {
|
|
|
3057
3243
|
judge: "scores an output \u2014 often local",
|
|
3058
3244
|
embed: "text in, vector out"
|
|
3059
3245
|
};
|
|
3060
|
-
var CastTable =
|
|
3246
|
+
var CastTable = React25.forwardRef(
|
|
3061
3247
|
({ cast = {}, resolved, readOnly, className, ...props }, ref) => {
|
|
3062
3248
|
const byRole = new Map((resolved ?? []).map((r) => [r.role, r]));
|
|
3063
3249
|
return /* @__PURE__ */ jsxs("div", { ref, className: cn("min-w-0", className), ...props, children: [
|
|
@@ -3106,20 +3292,20 @@ function ChatSession({
|
|
|
3106
3292
|
className,
|
|
3107
3293
|
bodyClassName
|
|
3108
3294
|
}) {
|
|
3109
|
-
const rootRef =
|
|
3110
|
-
const contentRef =
|
|
3111
|
-
const pinnedRef =
|
|
3112
|
-
const getViewport =
|
|
3295
|
+
const rootRef = React25.useRef(null);
|
|
3296
|
+
const contentRef = React25.useRef(null);
|
|
3297
|
+
const pinnedRef = React25.useRef(true);
|
|
3298
|
+
const getViewport = React25.useCallback(
|
|
3113
3299
|
() => rootRef.current?.querySelector(
|
|
3114
3300
|
"[data-radix-scroll-area-viewport]"
|
|
3115
3301
|
) ?? null,
|
|
3116
3302
|
[]
|
|
3117
3303
|
);
|
|
3118
|
-
const scrollToBottom =
|
|
3304
|
+
const scrollToBottom = React25.useCallback(() => {
|
|
3119
3305
|
const viewport = getViewport();
|
|
3120
3306
|
if (viewport) viewport.scrollTop = viewport.scrollHeight;
|
|
3121
3307
|
}, [getViewport]);
|
|
3122
|
-
|
|
3308
|
+
React25.useEffect(() => {
|
|
3123
3309
|
const viewport = getViewport();
|
|
3124
3310
|
if (!viewport) return;
|
|
3125
3311
|
const handleScroll = () => {
|
|
@@ -3129,7 +3315,7 @@ function ChatSession({
|
|
|
3129
3315
|
viewport.addEventListener("scroll", handleScroll, { passive: true });
|
|
3130
3316
|
return () => viewport.removeEventListener("scroll", handleScroll);
|
|
3131
3317
|
}, [getViewport, followThreshold]);
|
|
3132
|
-
|
|
3318
|
+
React25.useEffect(() => {
|
|
3133
3319
|
const content = contentRef.current;
|
|
3134
3320
|
if (!content || typeof ResizeObserver === "undefined") return;
|
|
3135
3321
|
const observer = new ResizeObserver(() => {
|
|
@@ -3138,11 +3324,11 @@ function ChatSession({
|
|
|
3138
3324
|
observer.observe(content);
|
|
3139
3325
|
return () => observer.disconnect();
|
|
3140
3326
|
}, [scrollToBottom]);
|
|
3141
|
-
|
|
3327
|
+
React25.useEffect(() => {
|
|
3142
3328
|
pinnedRef.current = true;
|
|
3143
3329
|
scrollToBottom();
|
|
3144
3330
|
}, [autoScrollKey, scrollToBottom]);
|
|
3145
|
-
const isEmpty =
|
|
3331
|
+
const isEmpty = React25.Children.count(children) === 0;
|
|
3146
3332
|
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col h-full min-h-0", className), children: [
|
|
3147
3333
|
/* @__PURE__ */ jsx(
|
|
3148
3334
|
ScrollArea,
|
|
@@ -3235,12 +3421,12 @@ function useOverflowItems({
|
|
|
3235
3421
|
pinnedIndex,
|
|
3236
3422
|
reserve = 32
|
|
3237
3423
|
}) {
|
|
3238
|
-
const containerEl =
|
|
3239
|
-
const itemEls =
|
|
3240
|
-
const widths =
|
|
3241
|
-
const itemRefs =
|
|
3242
|
-
const [hidden, setHidden] =
|
|
3243
|
-
const fit =
|
|
3424
|
+
const containerEl = React25.useRef(null);
|
|
3425
|
+
const itemEls = React25.useRef([]);
|
|
3426
|
+
const widths = React25.useRef([]);
|
|
3427
|
+
const itemRefs = React25.useRef([]);
|
|
3428
|
+
const [hidden, setHidden] = React25.useState(NONE);
|
|
3429
|
+
const fit = React25.useCallback(() => {
|
|
3244
3430
|
const el = containerEl.current;
|
|
3245
3431
|
if (!el || !enabled) {
|
|
3246
3432
|
setHidden((prev) => prev === NONE ? prev : NONE);
|
|
@@ -3269,12 +3455,12 @@ function useOverflowItems({
|
|
|
3269
3455
|
}
|
|
3270
3456
|
setHidden((prev) => same(prev, next) ? prev : next);
|
|
3271
3457
|
}, [count, enabled, pinnedIndex, reserve]);
|
|
3272
|
-
|
|
3458
|
+
React25.useLayoutEffect(() => {
|
|
3273
3459
|
widths.current = [];
|
|
3274
3460
|
itemEls.current.length = count;
|
|
3275
3461
|
setHidden((prev) => prev === NONE ? prev : NONE);
|
|
3276
3462
|
}, [count]);
|
|
3277
|
-
|
|
3463
|
+
React25.useLayoutEffect(() => {
|
|
3278
3464
|
fit();
|
|
3279
3465
|
if (!enabled || typeof ResizeObserver === "undefined") return;
|
|
3280
3466
|
const observer = new ResizeObserver(() => fit());
|
|
@@ -3282,10 +3468,10 @@ function useOverflowItems({
|
|
|
3282
3468
|
for (const item of itemEls.current) if (item) observer.observe(item);
|
|
3283
3469
|
return () => observer.disconnect();
|
|
3284
3470
|
}, [fit, enabled, hidden]);
|
|
3285
|
-
const containerRef =
|
|
3471
|
+
const containerRef = React25.useCallback((el) => {
|
|
3286
3472
|
containerEl.current = el;
|
|
3287
3473
|
}, []);
|
|
3288
|
-
const itemRef =
|
|
3474
|
+
const itemRef = React25.useCallback((index) => {
|
|
3289
3475
|
let fn = itemRefs.current[index];
|
|
3290
3476
|
if (!fn) {
|
|
3291
3477
|
fn = (el) => {
|
|
@@ -3295,7 +3481,7 @@ function useOverflowItems({
|
|
|
3295
3481
|
}
|
|
3296
3482
|
return fn;
|
|
3297
3483
|
}, []);
|
|
3298
|
-
const isHidden =
|
|
3484
|
+
const isHidden = React25.useCallback(
|
|
3299
3485
|
(index) => hidden.includes(index),
|
|
3300
3486
|
[hidden]
|
|
3301
3487
|
);
|
|
@@ -3348,15 +3534,15 @@ var NavItems = ({
|
|
|
3348
3534
|
const isVertical = orientation === "vertical";
|
|
3349
3535
|
const isTabs = selectionMode === "tabs";
|
|
3350
3536
|
const V = VARIANT[variant];
|
|
3351
|
-
const [internalActive, setInternalActive] =
|
|
3537
|
+
const [internalActive, setInternalActive] = React25__default.useState(
|
|
3352
3538
|
null
|
|
3353
3539
|
);
|
|
3354
3540
|
const isControlled = activeKey !== void 0;
|
|
3355
3541
|
const currentKey = isControlled ? activeKey : internalActive;
|
|
3356
3542
|
const activeIndex = items.findIndex((item) => keyOf(item) === currentKey);
|
|
3357
|
-
const nodes =
|
|
3358
|
-
const pendingFocus =
|
|
3359
|
-
|
|
3543
|
+
const nodes = React25__default.useRef({});
|
|
3544
|
+
const pendingFocus = React25__default.useRef(null);
|
|
3545
|
+
React25__default.useEffect(() => {
|
|
3360
3546
|
const key = pendingFocus.current;
|
|
3361
3547
|
if (!key) return;
|
|
3362
3548
|
const node = nodes.current[key];
|
|
@@ -3369,7 +3555,7 @@ var NavItems = ({
|
|
|
3369
3555
|
enabled: overflow && !isVertical,
|
|
3370
3556
|
pinnedIndex: activeIndex >= 0 ? activeIndex : void 0
|
|
3371
3557
|
});
|
|
3372
|
-
const select =
|
|
3558
|
+
const select = React25__default.useCallback(
|
|
3373
3559
|
(item) => {
|
|
3374
3560
|
if (item.disabled) return;
|
|
3375
3561
|
const key = keyOf(item);
|
|
@@ -3517,7 +3703,7 @@ var NavItems = ({
|
|
|
3517
3703
|
/* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: hasMenu && !asCaret ? /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: control }) : control }),
|
|
3518
3704
|
/* @__PURE__ */ jsx(TooltipContent, { side: item.tooltipSide || tooltipSide, children: item.tooltip || item.name })
|
|
3519
3705
|
] });
|
|
3520
|
-
return /* @__PURE__ */ jsxs(
|
|
3706
|
+
return /* @__PURE__ */ jsxs(React25__default.Fragment, { children: [
|
|
3521
3707
|
hasMenu ? /* @__PURE__ */ jsxs(DropdownMenu, { children: [
|
|
3522
3708
|
withTooltip,
|
|
3523
3709
|
/* @__PURE__ */ jsx(
|
|
@@ -3607,7 +3793,7 @@ function renderMenuRows(menuItems) {
|
|
|
3607
3793
|
const gutter = menuItems?.some((m) => m.icon);
|
|
3608
3794
|
return menuItems?.map((menuItem) => {
|
|
3609
3795
|
const MenuIcon = menuItem.icon;
|
|
3610
|
-
return /* @__PURE__ */ jsxs(
|
|
3796
|
+
return /* @__PURE__ */ jsxs(React25__default.Fragment, { children: [
|
|
3611
3797
|
menuItem.separatorBefore && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
|
|
3612
3798
|
/* @__PURE__ */ jsxs(
|
|
3613
3799
|
DropdownMenuItem,
|
|
@@ -3926,7 +4112,7 @@ function ChatSessionDisclosure({
|
|
|
3926
4112
|
className,
|
|
3927
4113
|
contentClassName
|
|
3928
4114
|
}) {
|
|
3929
|
-
const [uncontrolledOpen, setUncontrolledOpen] =
|
|
4115
|
+
const [uncontrolledOpen, setUncontrolledOpen] = React25.useState(defaultOpen);
|
|
3930
4116
|
const isOpen = open ?? uncontrolledOpen;
|
|
3931
4117
|
const toggle = () => {
|
|
3932
4118
|
const next = !isOpen;
|
|
@@ -4078,9 +4264,9 @@ function ChatSessionContextChip({
|
|
|
4078
4264
|
}
|
|
4079
4265
|
);
|
|
4080
4266
|
}
|
|
4081
|
-
var CitationList =
|
|
4267
|
+
var CitationList = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children }));
|
|
4082
4268
|
CitationList.displayName = "CitationList";
|
|
4083
|
-
var CitationRow =
|
|
4269
|
+
var CitationRow = React25.forwardRef(
|
|
4084
4270
|
({ kind, source, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4085
4271
|
"li",
|
|
4086
4272
|
{
|
|
@@ -4096,7 +4282,7 @@ var CitationRow = React24.forwardRef(
|
|
|
4096
4282
|
)
|
|
4097
4283
|
);
|
|
4098
4284
|
CitationRow.displayName = "CitationRow";
|
|
4099
|
-
var ClampedText =
|
|
4285
|
+
var ClampedText = React25.forwardRef(
|
|
4100
4286
|
({
|
|
4101
4287
|
lines = 3,
|
|
4102
4288
|
moreLabel = "Show more",
|
|
@@ -4105,10 +4291,10 @@ var ClampedText = React24.forwardRef(
|
|
|
4105
4291
|
children,
|
|
4106
4292
|
...props
|
|
4107
4293
|
}, ref) => {
|
|
4108
|
-
const [expanded, setExpanded] =
|
|
4109
|
-
const [clipped, setClipped] =
|
|
4110
|
-
const bodyRef =
|
|
4111
|
-
|
|
4294
|
+
const [expanded, setExpanded] = React25.useState(false);
|
|
4295
|
+
const [clipped, setClipped] = React25.useState(false);
|
|
4296
|
+
const bodyRef = React25.useRef(null);
|
|
4297
|
+
React25.useLayoutEffect(() => {
|
|
4112
4298
|
const el = bodyRef.current;
|
|
4113
4299
|
if (!el || expanded) return;
|
|
4114
4300
|
const measure = () => setClipped(el.scrollHeight - el.clientHeight > 1);
|
|
@@ -4146,7 +4332,7 @@ var ClampedText = React24.forwardRef(
|
|
|
4146
4332
|
}
|
|
4147
4333
|
);
|
|
4148
4334
|
ClampedText.displayName = "ClampedText";
|
|
4149
|
-
var ClarifyCard =
|
|
4335
|
+
var ClarifyCard = React25.forwardRef(
|
|
4150
4336
|
({
|
|
4151
4337
|
step,
|
|
4152
4338
|
waiting,
|
|
@@ -4159,7 +4345,7 @@ var ClarifyCard = React24.forwardRef(
|
|
|
4159
4345
|
className,
|
|
4160
4346
|
...props
|
|
4161
4347
|
}, ref) => {
|
|
4162
|
-
const name =
|
|
4348
|
+
const name = React25.useId();
|
|
4163
4349
|
return /* @__PURE__ */ jsxs(
|
|
4164
4350
|
"div",
|
|
4165
4351
|
{
|
|
@@ -4227,7 +4413,7 @@ var ClarifyCard = React24.forwardRef(
|
|
|
4227
4413
|
}
|
|
4228
4414
|
);
|
|
4229
4415
|
ClarifyCard.displayName = "ClarifyCard";
|
|
4230
|
-
var ContextBar =
|
|
4416
|
+
var ContextBar = React25.forwardRef(
|
|
4231
4417
|
({ counters, hint, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4232
4418
|
"div",
|
|
4233
4419
|
{
|
|
@@ -4246,7 +4432,7 @@ var ContextBar = React24.forwardRef(
|
|
|
4246
4432
|
)
|
|
4247
4433
|
);
|
|
4248
4434
|
ContextBar.displayName = "ContextBar";
|
|
4249
|
-
var DiagnosisCard =
|
|
4435
|
+
var DiagnosisCard = React25.forwardRef(({ code, attempted, target, actions, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4250
4436
|
"div",
|
|
4251
4437
|
{
|
|
4252
4438
|
ref,
|
|
@@ -4274,11 +4460,11 @@ var OP_CLASS = {
|
|
|
4274
4460
|
remove: "text-destructive",
|
|
4275
4461
|
change: "text-warning"
|
|
4276
4462
|
};
|
|
4277
|
-
var DiffList =
|
|
4463
|
+
var DiffList = React25.forwardRef(
|
|
4278
4464
|
({ className, children, ...props }, ref) => /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children })
|
|
4279
4465
|
);
|
|
4280
4466
|
DiffList.displayName = "DiffList";
|
|
4281
|
-
var DiffRow =
|
|
4467
|
+
var DiffRow = React25.forwardRef(
|
|
4282
4468
|
({ op = "add", kind, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4283
4469
|
"li",
|
|
4284
4470
|
{
|
|
@@ -4294,7 +4480,7 @@ var DiffRow = React24.forwardRef(
|
|
|
4294
4480
|
)
|
|
4295
4481
|
);
|
|
4296
4482
|
DiffRow.displayName = "DiffRow";
|
|
4297
|
-
var DivergingBar =
|
|
4483
|
+
var DivergingBar = React25.forwardRef(
|
|
4298
4484
|
({
|
|
4299
4485
|
data,
|
|
4300
4486
|
max,
|
|
@@ -4352,7 +4538,7 @@ var DivergingBar = React24.forwardRef(
|
|
|
4352
4538
|
}
|
|
4353
4539
|
);
|
|
4354
4540
|
DivergingBar.displayName = "DivergingBar";
|
|
4355
|
-
var EgressList =
|
|
4541
|
+
var EgressList = React25.forwardRef(
|
|
4356
4542
|
({ to, classes = [], cut = [], className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4357
4543
|
"div",
|
|
4358
4544
|
{
|
|
@@ -4390,7 +4576,7 @@ var EgressList = React24.forwardRef(
|
|
|
4390
4576
|
)
|
|
4391
4577
|
);
|
|
4392
4578
|
EgressList.displayName = "EgressList";
|
|
4393
|
-
var EmissionHeader =
|
|
4579
|
+
var EmissionHeader = React25.forwardRef(({ kind, template, citation, note, actions, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4394
4580
|
"div",
|
|
4395
4581
|
{
|
|
4396
4582
|
ref,
|
|
@@ -4410,7 +4596,7 @@ var EmissionHeader = React24.forwardRef(({ kind, template, citation, note, actio
|
|
|
4410
4596
|
}
|
|
4411
4597
|
));
|
|
4412
4598
|
EmissionHeader.displayName = "EmissionHeader";
|
|
4413
|
-
var EmissionCard =
|
|
4599
|
+
var EmissionCard = React25.forwardRef(
|
|
4414
4600
|
({
|
|
4415
4601
|
kind,
|
|
4416
4602
|
template,
|
|
@@ -4445,7 +4631,7 @@ var EmissionCard = React24.forwardRef(
|
|
|
4445
4631
|
)
|
|
4446
4632
|
);
|
|
4447
4633
|
EmissionCard.displayName = "EmissionCard";
|
|
4448
|
-
var CitationMarker =
|
|
4634
|
+
var CitationMarker = React25.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4449
4635
|
"sup",
|
|
4450
4636
|
{
|
|
4451
4637
|
ref,
|
|
@@ -4455,7 +4641,7 @@ var CitationMarker = React24.forwardRef(({ className, children, ...props }, ref)
|
|
|
4455
4641
|
}
|
|
4456
4642
|
));
|
|
4457
4643
|
CitationMarker.displayName = "CitationMarker";
|
|
4458
|
-
var EmptyState =
|
|
4644
|
+
var EmptyState = React25.forwardRef(
|
|
4459
4645
|
({ icon, title, description, actions, locks, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4460
4646
|
"div",
|
|
4461
4647
|
{
|
|
@@ -4476,7 +4662,7 @@ var EmptyState = React24.forwardRef(
|
|
|
4476
4662
|
)
|
|
4477
4663
|
);
|
|
4478
4664
|
EmptyState.displayName = "EmptyState";
|
|
4479
|
-
var EmptyStateLock =
|
|
4665
|
+
var EmptyStateLock = React25.forwardRef(({ icon, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4480
4666
|
"span",
|
|
4481
4667
|
{
|
|
4482
4668
|
ref,
|
|
@@ -4513,7 +4699,74 @@ var ErrorBoundary = class extends Component {
|
|
|
4513
4699
|
return this.props.children;
|
|
4514
4700
|
}
|
|
4515
4701
|
};
|
|
4516
|
-
|
|
4702
|
+
function Bubble({
|
|
4703
|
+
who,
|
|
4704
|
+
rail,
|
|
4705
|
+
children,
|
|
4706
|
+
note
|
|
4707
|
+
}) {
|
|
4708
|
+
return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-1 border-l-2 px-2.5 py-2", rail), children: [
|
|
4709
|
+
who != null ? /* @__PURE__ */ jsx("span", { className: "font-mono text-xs font-semibold", children: who }) : null,
|
|
4710
|
+
/* @__PURE__ */ jsx("span", { className: "leading-relaxed", children }),
|
|
4711
|
+
note != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: note }) : null
|
|
4712
|
+
] });
|
|
4713
|
+
}
|
|
4714
|
+
var ExchangeRecord = React25.forwardRef(
|
|
4715
|
+
({
|
|
4716
|
+
asker,
|
|
4717
|
+
question,
|
|
4718
|
+
why,
|
|
4719
|
+
options,
|
|
4720
|
+
answerer,
|
|
4721
|
+
answer,
|
|
4722
|
+
answerNote,
|
|
4723
|
+
className,
|
|
4724
|
+
...props
|
|
4725
|
+
}, ref) => /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col", className), ...props, children: [
|
|
4726
|
+
/* @__PURE__ */ jsx(Bubble, { who: asker, rail: "border-l-warning bg-warning/5", note: why, children: question }),
|
|
4727
|
+
options?.length ? /* @__PURE__ */ jsx("ul", { className: "flex flex-col", children: options.map((option, index) => /* @__PURE__ */ jsxs(
|
|
4728
|
+
"li",
|
|
4729
|
+
{
|
|
4730
|
+
className: "flex items-center gap-2 border-border/55 border-t px-2.5 py-1",
|
|
4731
|
+
children: [
|
|
4732
|
+
/* @__PURE__ */ jsx(
|
|
4733
|
+
"span",
|
|
4734
|
+
{
|
|
4735
|
+
"aria-hidden": true,
|
|
4736
|
+
className: cn(
|
|
4737
|
+
"size-2.5 shrink-0 rounded-full border-[1.5px]",
|
|
4738
|
+
option.chosen ? "border-primary bg-primary" : "border-border bg-transparent"
|
|
4739
|
+
)
|
|
4740
|
+
}
|
|
4741
|
+
),
|
|
4742
|
+
/* @__PURE__ */ jsx(
|
|
4743
|
+
"span",
|
|
4744
|
+
{
|
|
4745
|
+
className: cn(
|
|
4746
|
+
"min-w-0 flex-1 truncate font-mono text-sm",
|
|
4747
|
+
option.chosen ? "text-foreground" : "text-muted-foreground"
|
|
4748
|
+
),
|
|
4749
|
+
children: option.label
|
|
4750
|
+
}
|
|
4751
|
+
),
|
|
4752
|
+
option.chosen ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-xs text-primary", children: "chosen" }) : null
|
|
4753
|
+
]
|
|
4754
|
+
},
|
|
4755
|
+
index
|
|
4756
|
+
)) }) : null,
|
|
4757
|
+
answer != null ? /* @__PURE__ */ jsx(
|
|
4758
|
+
Bubble,
|
|
4759
|
+
{
|
|
4760
|
+
who: answerer,
|
|
4761
|
+
rail: "border-l-primary bg-primary/5 border-t border-t-border/55",
|
|
4762
|
+
note: answerNote,
|
|
4763
|
+
children: answer
|
|
4764
|
+
}
|
|
4765
|
+
) : null
|
|
4766
|
+
] })
|
|
4767
|
+
);
|
|
4768
|
+
ExchangeRecord.displayName = "ExchangeRecord";
|
|
4769
|
+
var Eyebrow = React25.forwardRef(
|
|
4517
4770
|
({ aside, tone = "muted", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4518
4771
|
"div",
|
|
4519
4772
|
{
|
|
@@ -4534,7 +4787,7 @@ var Eyebrow = React24.forwardRef(
|
|
|
4534
4787
|
)
|
|
4535
4788
|
);
|
|
4536
4789
|
Eyebrow.displayName = "Eyebrow";
|
|
4537
|
-
var FilterBar =
|
|
4790
|
+
var FilterBar = React25.forwardRef(
|
|
4538
4791
|
({ summary, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
4539
4792
|
"div",
|
|
4540
4793
|
{
|
|
@@ -4553,33 +4806,55 @@ var FilterBar = React24.forwardRef(
|
|
|
4553
4806
|
)
|
|
4554
4807
|
);
|
|
4555
4808
|
FilterBar.displayName = "FilterBar";
|
|
4556
|
-
var FilterChip =
|
|
4557
|
-
({ label, value, active, className, ...props }, ref) =>
|
|
4558
|
-
|
|
4559
|
-
|
|
4560
|
-
|
|
4561
|
-
|
|
4562
|
-
|
|
4563
|
-
|
|
4564
|
-
|
|
4565
|
-
|
|
4566
|
-
|
|
4567
|
-
|
|
4568
|
-
|
|
4569
|
-
|
|
4570
|
-
|
|
4571
|
-
|
|
4572
|
-
|
|
4573
|
-
|
|
4574
|
-
|
|
4575
|
-
|
|
4576
|
-
|
|
4577
|
-
|
|
4809
|
+
var FilterChip = React25.forwardRef(
|
|
4810
|
+
({ label, value, active, onRemove, removeLabel, className, ...props }, ref) => {
|
|
4811
|
+
const chip = /* @__PURE__ */ jsxs(
|
|
4812
|
+
Button,
|
|
4813
|
+
{
|
|
4814
|
+
ref,
|
|
4815
|
+
type: "button",
|
|
4816
|
+
variant: "outline",
|
|
4817
|
+
size: "xs",
|
|
4818
|
+
"data-active": active || void 0,
|
|
4819
|
+
className: cn(
|
|
4820
|
+
"h-[22px] gap-1 px-1.5 font-normal",
|
|
4821
|
+
active && "border-primary/40 text-primary",
|
|
4822
|
+
onRemove && "rounded-r-none border-r-0",
|
|
4823
|
+
className
|
|
4824
|
+
),
|
|
4825
|
+
...props,
|
|
4826
|
+
children: [
|
|
4827
|
+
/* @__PURE__ */ jsx("span", { className: cn(value != null && "text-muted-foreground"), children: label }),
|
|
4828
|
+
value != null ? /* @__PURE__ */ jsx("span", { className: "truncate", children: value }) : null,
|
|
4829
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "text-muted-foreground", children: "\u25BE" })
|
|
4830
|
+
]
|
|
4831
|
+
}
|
|
4832
|
+
);
|
|
4833
|
+
if (!onRemove) return chip;
|
|
4834
|
+
return /* @__PURE__ */ jsxs("span", { className: "inline-flex min-w-0 items-center", children: [
|
|
4835
|
+
chip,
|
|
4836
|
+
/* @__PURE__ */ jsx(
|
|
4837
|
+
Button,
|
|
4838
|
+
{
|
|
4839
|
+
type: "button",
|
|
4840
|
+
variant: "outline",
|
|
4841
|
+
size: "xs",
|
|
4842
|
+
onClick: onRemove,
|
|
4843
|
+
"aria-label": removeLabel ?? `Clear ${typeof label === "string" ? label : "filter"}`,
|
|
4844
|
+
className: cn(
|
|
4845
|
+
"h-[22px] rounded-l-none px-1 font-normal text-muted-foreground hover:text-foreground",
|
|
4846
|
+
active && "border-primary/40"
|
|
4847
|
+
),
|
|
4848
|
+
children: /* @__PURE__ */ jsx("span", { "aria-hidden": true, children: "\xD7" })
|
|
4849
|
+
}
|
|
4850
|
+
)
|
|
4851
|
+
] });
|
|
4852
|
+
}
|
|
4578
4853
|
);
|
|
4579
4854
|
FilterChip.displayName = "FilterChip";
|
|
4580
|
-
var HeatStrip =
|
|
4855
|
+
var HeatStrip = React25.forwardRef(
|
|
4581
4856
|
({ cells, states, ticks, cellSize = 14, className, ...props }, ref) => {
|
|
4582
|
-
const byKey =
|
|
4857
|
+
const byKey = React25.useMemo(
|
|
4583
4858
|
() => new Map(states.map((s) => [s.key, s])),
|
|
4584
4859
|
[states]
|
|
4585
4860
|
);
|
|
@@ -4631,6 +4906,23 @@ var HeatStrip = React24.forwardRef(
|
|
|
4631
4906
|
}
|
|
4632
4907
|
);
|
|
4633
4908
|
HeatStrip.displayName = "HeatStrip";
|
|
4909
|
+
var KindChip = React25.forwardRef(
|
|
4910
|
+
({ kind, dim, className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
4911
|
+
"span",
|
|
4912
|
+
{
|
|
4913
|
+
ref,
|
|
4914
|
+
className: cn(
|
|
4915
|
+
"inline-flex h-[17px] shrink-0 items-center rounded-control px-1.5",
|
|
4916
|
+
"bg-muted font-mono text-xs tracking-wide text-muted-foreground",
|
|
4917
|
+
dim && "opacity-60",
|
|
4918
|
+
className
|
|
4919
|
+
),
|
|
4920
|
+
...props,
|
|
4921
|
+
children: kind
|
|
4922
|
+
}
|
|
4923
|
+
)
|
|
4924
|
+
);
|
|
4925
|
+
KindChip.displayName = "KindChip";
|
|
4634
4926
|
var layerLabel = (layer) => layer.replace(/_/g, " ");
|
|
4635
4927
|
var UNPAINTED2 = {
|
|
4636
4928
|
swatch: "bg-muted-foreground",
|
|
@@ -4643,7 +4935,7 @@ var UNPAINTED2 = {
|
|
|
4643
4935
|
text: "text-foreground"
|
|
4644
4936
|
};
|
|
4645
4937
|
var layerPaint = (palette, layer) => ({ ...UNPAINTED2, ...palette?.[layer] });
|
|
4646
|
-
var LayerChip =
|
|
4938
|
+
var LayerChip = React25.forwardRef(
|
|
4647
4939
|
({ layer, count, label, dim, swatch, palette, className, ...props }, ref) => {
|
|
4648
4940
|
const paint = layerPaint(palette, layer);
|
|
4649
4941
|
return /* @__PURE__ */ jsxs(
|
|
@@ -4680,9 +4972,9 @@ var LayerChip = React24.forwardRef(
|
|
|
4680
4972
|
}
|
|
4681
4973
|
);
|
|
4682
4974
|
LayerChip.displayName = "LayerChip";
|
|
4683
|
-
var LayerSection =
|
|
4975
|
+
var LayerSection = React25.forwardRef(
|
|
4684
4976
|
({ layer, summary, count, dim, palette, className, children, ...props }, ref) => {
|
|
4685
|
-
const empty =
|
|
4977
|
+
const empty = React25.Children.count(children) === 0;
|
|
4686
4978
|
return /* @__PURE__ */ jsxs(
|
|
4687
4979
|
"section",
|
|
4688
4980
|
{
|
|
@@ -4722,7 +5014,7 @@ var formatElapsed = (ms) => {
|
|
|
4722
5014
|
const m = Math.floor(ms / 6e4);
|
|
4723
5015
|
return `${m}m ${Math.round(ms % 6e4 / 1e3)}s`;
|
|
4724
5016
|
};
|
|
4725
|
-
var LayerStrip =
|
|
5017
|
+
var LayerStrip = React25.forwardRef(
|
|
4726
5018
|
({
|
|
4727
5019
|
bands,
|
|
4728
5020
|
items,
|
|
@@ -4748,7 +5040,7 @@ var LayerStrip = React24.forwardRef(
|
|
|
4748
5040
|
className,
|
|
4749
5041
|
...props
|
|
4750
5042
|
}, ref) => {
|
|
4751
|
-
const [ownCollapsed, setOwnCollapsed] =
|
|
5043
|
+
const [ownCollapsed, setOwnCollapsed] = React25.useState(
|
|
4752
5044
|
defaultCollapsed ?? []
|
|
4753
5045
|
);
|
|
4754
5046
|
const shut = collapsed ?? ownCollapsed;
|
|
@@ -4860,6 +5152,13 @@ var LayerStrip = React24.forwardRef(
|
|
|
4860
5152
|
/* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "what it does" }),
|
|
4861
5153
|
/* @__PURE__ */ jsx("dd", { className: "min-w-0 font-mono", children: item.note })
|
|
4862
5154
|
] }) : null,
|
|
5155
|
+
item.forecast ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
5156
|
+
/* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "usually" }),
|
|
5157
|
+
/* @__PURE__ */ jsxs("dd", { className: "min-w-0 tabular-nums", children: [
|
|
5158
|
+
scale === "elapsed" ? formatElapsed(item.forecast.p50) : item.forecast.p50,
|
|
5159
|
+
item.forecast.note ? ` \xB7 ${item.forecast.note}` : ""
|
|
5160
|
+
] })
|
|
5161
|
+
] }) : null,
|
|
4863
5162
|
item.ruleMatched ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
4864
5163
|
/* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "refused by" }),
|
|
4865
5164
|
/* @__PURE__ */ jsx("dd", { className: "min-w-0 break-all font-mono text-destructive", children: item.ruleMatched })
|
|
@@ -4927,27 +5226,42 @@ var LayerStrip = React24.forwardRef(
|
|
|
4927
5226
|
children: item.label
|
|
4928
5227
|
}
|
|
4929
5228
|
),
|
|
4930
|
-
compact ? null : /* @__PURE__ */ jsx("span", { className: "truncate text-xs text-muted-foreground", children: item.note ?? (state === "declared" ? null : stateLabel(state)) })
|
|
5229
|
+
compact ? null : /* @__PURE__ */ jsx("span", { className: "truncate text-xs text-muted-foreground", children: item.note ?? (item.forecast ? `p50 ${scale === "elapsed" ? formatElapsed(item.forecast.p50) : item.forecast.p50}${item.forecast.note ? ` \xB7 ${item.forecast.note}` : ""}` : state === "declared" ? null : stateLabel(state)) })
|
|
4931
5230
|
] })
|
|
4932
5231
|
]
|
|
4933
5232
|
},
|
|
4934
5233
|
item.id
|
|
4935
5234
|
);
|
|
4936
|
-
|
|
4937
|
-
|
|
4938
|
-
|
|
4939
|
-
|
|
4940
|
-
|
|
4941
|
-
|
|
4942
|
-
|
|
4943
|
-
|
|
4944
|
-
|
|
4945
|
-
|
|
4946
|
-
|
|
4947
|
-
|
|
4948
|
-
] }, item.id);
|
|
5235
|
+
const forecastMark = item.forecast ? /* @__PURE__ */ jsx(
|
|
5236
|
+
"span",
|
|
5237
|
+
{
|
|
5238
|
+
"aria-hidden": true,
|
|
5239
|
+
style: { left: `${pct(item.start + item.forecast.p50)}%` },
|
|
5240
|
+
className: "-translate-y-1/2 pointer-events-none absolute top-1/2 h-5 border-muted-foreground/70 border-l border-dashed"
|
|
5241
|
+
},
|
|
5242
|
+
`${item.id}-p50`
|
|
5243
|
+
) : null;
|
|
5244
|
+
const withMark = (node) => forecastMark ? /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
5245
|
+
forecastMark,
|
|
5246
|
+
node
|
|
5247
|
+
] }, item.id) : node;
|
|
5248
|
+
if (!hoverDetail) return withMark(drawn);
|
|
5249
|
+
return withMark(
|
|
5250
|
+
/* @__PURE__ */ jsxs(HoverCard, { openDelay: 140, closeDelay: 80, children: [
|
|
5251
|
+
/* @__PURE__ */ jsx(HoverCardTrigger, { asChild: true, children: drawn }),
|
|
5252
|
+
/* @__PURE__ */ jsx(
|
|
5253
|
+
HoverCardContent,
|
|
5254
|
+
{
|
|
5255
|
+
align: "start",
|
|
5256
|
+
side: "top",
|
|
5257
|
+
className: "w-auto max-w-80 p-3",
|
|
5258
|
+
children: detail(item)
|
|
5259
|
+
}
|
|
5260
|
+
)
|
|
5261
|
+
] }, item.id)
|
|
5262
|
+
);
|
|
4949
5263
|
};
|
|
4950
|
-
const bracketLanes =
|
|
5264
|
+
const bracketLanes = React25.useMemo(() => {
|
|
4951
5265
|
const lanes = [];
|
|
4952
5266
|
const ordered = [...brackets ?? []].sort(
|
|
4953
5267
|
(a, b) => b.end - b.start - (a.end - a.start)
|
|
@@ -4963,7 +5277,7 @@ var LayerStrip = React24.forwardRef(
|
|
|
4963
5277
|
}
|
|
4964
5278
|
return lanes;
|
|
4965
5279
|
}, [brackets]);
|
|
4966
|
-
const seamLines =
|
|
5280
|
+
const seamLines = React25.useMemo(() => {
|
|
4967
5281
|
const placed = (seams ?? []).filter((seam) => seam.at != null);
|
|
4968
5282
|
const loose = (seams ?? []).filter((seam) => seam.at == null);
|
|
4969
5283
|
return [...placed.length ? [placed] : [], ...loose.map((s2) => [s2])];
|
|
@@ -4995,7 +5309,7 @@ var LayerStrip = React24.forwardRef(
|
|
|
4995
5309
|
style: { left: `${pct(seam.at)}%` },
|
|
4996
5310
|
className: cn(
|
|
4997
5311
|
"absolute inset-y-0 border-l",
|
|
4998
|
-
seam.conditional ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/60"
|
|
5312
|
+
seam.conditional || seam.noEstimate ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/60"
|
|
4999
5313
|
)
|
|
5000
5314
|
},
|
|
5001
5315
|
seam.id
|
|
@@ -5102,7 +5416,7 @@ var LayerStrip = React24.forwardRef(
|
|
|
5102
5416
|
// pass is already paid for.
|
|
5103
5417
|
"absolute inset-y-1.5 flex items-center bg-card px-1.5 text-muted-foreground",
|
|
5104
5418
|
after ? "border-r-2 text-right" : "border-l-2",
|
|
5105
|
-
seam.conditional ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/70"
|
|
5419
|
+
seam.conditional || seam.noEstimate ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/70"
|
|
5106
5420
|
),
|
|
5107
5421
|
children: named
|
|
5108
5422
|
},
|
|
@@ -5119,7 +5433,7 @@ var LayerStrip = React24.forwardRef(
|
|
|
5119
5433
|
const foldable = collapsible && parts.length > 0;
|
|
5120
5434
|
const isShut = foldable && shut.includes(band.layer);
|
|
5121
5435
|
const onLine = isShut ? allOf(band.layer) : own;
|
|
5122
|
-
return /* @__PURE__ */ jsxs(
|
|
5436
|
+
return /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
5123
5437
|
row(
|
|
5124
5438
|
band.layer,
|
|
5125
5439
|
label(
|
|
@@ -5274,6 +5588,26 @@ function Swatch({ kind = "dot", color }) {
|
|
|
5274
5588
|
);
|
|
5275
5589
|
if (kind === "line")
|
|
5276
5590
|
return /* @__PURE__ */ jsx("span", { "aria-hidden": true, style, className: "h-0.5 w-4 shrink-0 bg-current" });
|
|
5591
|
+
if (kind === "stripe")
|
|
5592
|
+
return /* @__PURE__ */ jsx("span", { "aria-hidden": true, style, className: "h-3 w-[3px] shrink-0 bg-current" });
|
|
5593
|
+
if (kind === "bracket")
|
|
5594
|
+
return /* @__PURE__ */ jsx(
|
|
5595
|
+
"span",
|
|
5596
|
+
{
|
|
5597
|
+
"aria-hidden": true,
|
|
5598
|
+
style,
|
|
5599
|
+
className: "h-3 w-3.5 shrink-0 border-l-2 border-current bg-current/10"
|
|
5600
|
+
}
|
|
5601
|
+
);
|
|
5602
|
+
if (kind === "rule")
|
|
5603
|
+
return /* @__PURE__ */ jsx(
|
|
5604
|
+
"span",
|
|
5605
|
+
{
|
|
5606
|
+
"aria-hidden": true,
|
|
5607
|
+
style,
|
|
5608
|
+
className: "relative h-3 w-4 shrink-0 before:absolute before:inset-x-0 before:top-1.5 before:border-t-2 before:border-current after:absolute after:left-0.5 after:top-[3px] after:size-1.5 after:bg-current"
|
|
5609
|
+
}
|
|
5610
|
+
);
|
|
5277
5611
|
if (kind === "dashed")
|
|
5278
5612
|
return /* @__PURE__ */ jsx(
|
|
5279
5613
|
"span",
|
|
@@ -5299,7 +5633,7 @@ function Swatch({ kind = "dot", color }) {
|
|
|
5299
5633
|
}
|
|
5300
5634
|
);
|
|
5301
5635
|
}
|
|
5302
|
-
var Legend =
|
|
5636
|
+
var Legend = React25.forwardRef(
|
|
5303
5637
|
({ orientation = "row", className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5304
5638
|
"div",
|
|
5305
5639
|
{
|
|
@@ -5316,7 +5650,7 @@ var Legend = React24.forwardRef(
|
|
|
5316
5650
|
)
|
|
5317
5651
|
);
|
|
5318
5652
|
Legend.displayName = "Legend";
|
|
5319
|
-
var LegendItem =
|
|
5653
|
+
var LegendItem = React25.forwardRef(
|
|
5320
5654
|
({ kind, color, label, count, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5321
5655
|
"div",
|
|
5322
5656
|
{
|
|
@@ -5333,7 +5667,7 @@ var LegendItem = React24.forwardRef(
|
|
|
5333
5667
|
)
|
|
5334
5668
|
);
|
|
5335
5669
|
LegendItem.displayName = "LegendItem";
|
|
5336
|
-
var LensChip =
|
|
5670
|
+
var LensChip = React25.forwardRef(
|
|
5337
5671
|
({ lens, onPick, className, ...props }, ref) => {
|
|
5338
5672
|
const label = lens?.name ?? "Everything";
|
|
5339
5673
|
const unset = lens == null;
|
|
@@ -5395,7 +5729,7 @@ function describe(n, palette) {
|
|
|
5395
5729
|
] });
|
|
5396
5730
|
}
|
|
5397
5731
|
}
|
|
5398
|
-
var LensRow =
|
|
5732
|
+
var LensRow = React25.forwardRef(
|
|
5399
5733
|
({ name, narrows = [], usage, selected, onSelect, palette, className, ...props }, ref) => {
|
|
5400
5734
|
const interactive = Boolean(onSelect);
|
|
5401
5735
|
return /* @__PURE__ */ jsxs(
|
|
@@ -5431,7 +5765,7 @@ var LensRow = React24.forwardRef(
|
|
|
5431
5765
|
usage.lastUsed ? ` \xB7 last ${usage.lastUsed}` : ""
|
|
5432
5766
|
] }) : null
|
|
5433
5767
|
] }),
|
|
5434
|
-
narrows.length ? /* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-sm text-muted-foreground", children: narrows.map((n, i) => /* @__PURE__ */ jsxs(
|
|
5768
|
+
narrows.length ? /* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-sm text-muted-foreground", children: narrows.map((n, i) => /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
5435
5769
|
i > 0 ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "opacity-40", children: "\xB7" }) : null,
|
|
5436
5770
|
/* @__PURE__ */ jsx("span", { className: "inline-flex items-center", children: describe(n, palette) })
|
|
5437
5771
|
] }, `${n.kind}-${i}`)) }) : /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground/70", children: "narrows nothing \u2014 the whole model, inside the guardrails" })
|
|
@@ -5441,7 +5775,31 @@ var LensRow = React24.forwardRef(
|
|
|
5441
5775
|
}
|
|
5442
5776
|
);
|
|
5443
5777
|
LensRow.displayName = "LensRow";
|
|
5444
|
-
var
|
|
5778
|
+
var TONE3 = {
|
|
5779
|
+
muted: "border-muted-foreground/50 text-muted-foreground",
|
|
5780
|
+
info: "border-info/60 text-info",
|
|
5781
|
+
success: "border-success/60 text-success",
|
|
5782
|
+
warning: "border-warning/60 text-warning",
|
|
5783
|
+
destructive: "border-destructive/60 text-destructive"
|
|
5784
|
+
};
|
|
5785
|
+
var MarkChip = React25.forwardRef(
|
|
5786
|
+
({ tone = "warning", className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5787
|
+
"span",
|
|
5788
|
+
{
|
|
5789
|
+
ref,
|
|
5790
|
+
className: cn(
|
|
5791
|
+
"inline-flex shrink-0 items-center rounded-control border px-1 py-px",
|
|
5792
|
+
"font-mono text-xs whitespace-nowrap",
|
|
5793
|
+
TONE3[tone],
|
|
5794
|
+
className
|
|
5795
|
+
),
|
|
5796
|
+
...props,
|
|
5797
|
+
children
|
|
5798
|
+
}
|
|
5799
|
+
)
|
|
5800
|
+
);
|
|
5801
|
+
MarkChip.displayName = "MarkChip";
|
|
5802
|
+
var MatchPreview = React25.forwardRef(
|
|
5445
5803
|
({ pattern, matches = [], loading, limit = 8, className, ...props }, ref) => {
|
|
5446
5804
|
const hits = matches.filter((m) => m.matched);
|
|
5447
5805
|
const misses = matches.filter((m) => !m.matched);
|
|
@@ -5550,14 +5908,14 @@ var MenuItem = ({
|
|
|
5550
5908
|
)
|
|
5551
5909
|
] });
|
|
5552
5910
|
};
|
|
5553
|
-
var
|
|
5911
|
+
var TONE4 = {
|
|
5554
5912
|
running: "text-info",
|
|
5555
5913
|
success: "text-success",
|
|
5556
5914
|
warning: "text-warning",
|
|
5557
5915
|
error: "text-destructive",
|
|
5558
5916
|
info: "text-info"
|
|
5559
5917
|
};
|
|
5560
|
-
var MetricTile =
|
|
5918
|
+
var MetricTile = React25.forwardRef(
|
|
5561
5919
|
({ label, value, caption, tone, meter, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5562
5920
|
"div",
|
|
5563
5921
|
{
|
|
@@ -5577,7 +5935,7 @@ var MetricTile = React24.forwardRef(
|
|
|
5577
5935
|
// `1,880` and `2 / 5` in adjacent tiles sit at different widths, and
|
|
5578
5936
|
// a strip of six stops reading as one row of numbers.
|
|
5579
5937
|
"font-mono text-lg font-semibold leading-tight",
|
|
5580
|
-
tone ?
|
|
5938
|
+
tone ? TONE4[tone] ?? "text-foreground" : void 0
|
|
5581
5939
|
),
|
|
5582
5940
|
children: value
|
|
5583
5941
|
}
|
|
@@ -5596,7 +5954,7 @@ var MetricTile = React24.forwardRef(
|
|
|
5596
5954
|
children: /* @__PURE__ */ jsx(
|
|
5597
5955
|
"div",
|
|
5598
5956
|
{
|
|
5599
|
-
className: cn("h-full", tone ?
|
|
5957
|
+
className: cn("h-full", tone ? TONE4[tone] ?? "text-foreground" : "text-primary", "bg-current"),
|
|
5600
5958
|
style: { width: `${Math.min(Math.max(meter, 0), 1) * 100}%` }
|
|
5601
5959
|
}
|
|
5602
5960
|
)
|
|
@@ -5609,7 +5967,7 @@ var MetricTile = React24.forwardRef(
|
|
|
5609
5967
|
)
|
|
5610
5968
|
);
|
|
5611
5969
|
MetricTile.displayName = "MetricTile";
|
|
5612
|
-
var MetricGrid =
|
|
5970
|
+
var MetricGrid = React25.forwardRef(
|
|
5613
5971
|
({ minTileWidth = 120, gap = 6, className, style, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5614
5972
|
"div",
|
|
5615
5973
|
{
|
|
@@ -5668,7 +6026,7 @@ var NestedMenu = (props) => {
|
|
|
5668
6026
|
}
|
|
5669
6027
|
);
|
|
5670
6028
|
};
|
|
5671
|
-
var PanelBox =
|
|
6029
|
+
var PanelBox = React25.forwardRef(
|
|
5672
6030
|
({ title, aside, flush, className, headerClassName, bodyClassName, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5673
6031
|
Card,
|
|
5674
6032
|
{
|
|
@@ -5759,13 +6117,13 @@ function PanelStack({
|
|
|
5759
6117
|
headerClassName,
|
|
5760
6118
|
bodyClassName
|
|
5761
6119
|
}) {
|
|
5762
|
-
const groupRef =
|
|
5763
|
-
const refs =
|
|
5764
|
-
const [collapsed, setCollapsed] =
|
|
6120
|
+
const groupRef = React25.useRef(null);
|
|
6121
|
+
const refs = React25.useRef({});
|
|
6122
|
+
const [collapsed, setCollapsed] = React25.useState(
|
|
5765
6123
|
() => Object.fromEntries(sections.map((s) => [s.id, !!s.defaultCollapsed]))
|
|
5766
6124
|
);
|
|
5767
|
-
const didInit =
|
|
5768
|
-
|
|
6125
|
+
const didInit = React25.useRef(false);
|
|
6126
|
+
React25.useLayoutEffect(() => {
|
|
5769
6127
|
if (didInit.current) return;
|
|
5770
6128
|
didInit.current = true;
|
|
5771
6129
|
const targets = sections.filter((s) => s.defaultCollapsed);
|
|
@@ -5797,18 +6155,18 @@ function PanelStack({
|
|
|
5797
6155
|
for (const s of targets) refs.current[s.id]?.collapse();
|
|
5798
6156
|
group.setLayout(next);
|
|
5799
6157
|
}, []);
|
|
5800
|
-
const notify =
|
|
5801
|
-
|
|
6158
|
+
const notify = React25.useRef(onCollapsedChange);
|
|
6159
|
+
React25.useEffect(() => {
|
|
5802
6160
|
notify.current = onCollapsedChange;
|
|
5803
6161
|
}, [onCollapsedChange]);
|
|
5804
|
-
const collapsedRef =
|
|
6162
|
+
const collapsedRef = React25.useRef(collapsed);
|
|
5805
6163
|
collapsedRef.current = collapsed;
|
|
5806
|
-
const collapsePanel =
|
|
6164
|
+
const collapsePanel = React25.useCallback((id) => {
|
|
5807
6165
|
const ref = refs.current[id];
|
|
5808
6166
|
if (!ref || ref.isCollapsed()) return;
|
|
5809
6167
|
ref.collapse();
|
|
5810
6168
|
}, []);
|
|
5811
|
-
const expandPanel =
|
|
6169
|
+
const expandPanel = React25.useCallback((id) => {
|
|
5812
6170
|
const ref = refs.current[id];
|
|
5813
6171
|
if (!ref || !ref.isCollapsed()) return;
|
|
5814
6172
|
ref.expand();
|
|
@@ -5826,7 +6184,7 @@ function PanelStack({
|
|
|
5826
6184
|
[donorId]: donorPct - share
|
|
5827
6185
|
});
|
|
5828
6186
|
}, []);
|
|
5829
|
-
const toggle =
|
|
6187
|
+
const toggle = React25.useCallback(
|
|
5830
6188
|
(id) => {
|
|
5831
6189
|
const ref = refs.current[id];
|
|
5832
6190
|
if (!ref) return;
|
|
@@ -5835,7 +6193,7 @@ function PanelStack({
|
|
|
5835
6193
|
},
|
|
5836
6194
|
[expandPanel, collapsePanel]
|
|
5837
6195
|
);
|
|
5838
|
-
|
|
6196
|
+
React25.useImperativeHandle(
|
|
5839
6197
|
stackRef,
|
|
5840
6198
|
() => ({
|
|
5841
6199
|
expand: expandPanel,
|
|
@@ -5859,7 +6217,7 @@ function PanelStack({
|
|
|
5859
6217
|
const Icon = section.icon;
|
|
5860
6218
|
const isCollapsed = collapsed[section.id];
|
|
5861
6219
|
const flush = index > 0 && (isCollapsed || collapsed[sections[index - 1].id]);
|
|
5862
|
-
return /* @__PURE__ */ jsxs(
|
|
6220
|
+
return /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
5863
6221
|
index > 0 && /* @__PURE__ */ jsx(
|
|
5864
6222
|
ResizableHandle,
|
|
5865
6223
|
{
|
|
@@ -5955,7 +6313,52 @@ function PanelStack({
|
|
|
5955
6313
|
) })
|
|
5956
6314
|
);
|
|
5957
6315
|
}
|
|
5958
|
-
var
|
|
6316
|
+
var TONE5 = {
|
|
6317
|
+
success: "text-success",
|
|
6318
|
+
muted: "text-muted-foreground",
|
|
6319
|
+
warning: "text-warning",
|
|
6320
|
+
destructive: "text-destructive"
|
|
6321
|
+
};
|
|
6322
|
+
var DEFAULT_TONE = {
|
|
6323
|
+
touched: "success",
|
|
6324
|
+
refused: "destructive",
|
|
6325
|
+
denied: "destructive"
|
|
6326
|
+
};
|
|
6327
|
+
var ADDRESS_TONE = {
|
|
6328
|
+
touched: "allowed",
|
|
6329
|
+
refused: "refused",
|
|
6330
|
+
denied: "denied",
|
|
6331
|
+
"never touched": "untouched",
|
|
6332
|
+
miss: "untouched"
|
|
6333
|
+
};
|
|
6334
|
+
var ParticipantRow = React25.forwardRef(({ address, verdict, note, tone, addressTone, className, ...props }, ref) => {
|
|
6335
|
+
const resolved = tone ?? DEFAULT_TONE[verdict] ?? "muted";
|
|
6336
|
+
return /* @__PURE__ */ jsxs(
|
|
6337
|
+
"div",
|
|
6338
|
+
{
|
|
6339
|
+
ref,
|
|
6340
|
+
className: cn(
|
|
6341
|
+
"flex min-w-0 items-baseline gap-2 border-border/55 border-t py-1 first:border-t-0",
|
|
6342
|
+
className
|
|
6343
|
+
),
|
|
6344
|
+
...props,
|
|
6345
|
+
children: [
|
|
6346
|
+
/* @__PURE__ */ jsx(
|
|
6347
|
+
AddressChip,
|
|
6348
|
+
{
|
|
6349
|
+
address,
|
|
6350
|
+
tone: addressTone ?? ADDRESS_TONE[verdict] ?? "allowed",
|
|
6351
|
+
className: "min-w-0 flex-1"
|
|
6352
|
+
}
|
|
6353
|
+
),
|
|
6354
|
+
/* @__PURE__ */ jsx("span", { className: cn("shrink-0 text-sm", TONE5[resolved]), children: verdict }),
|
|
6355
|
+
note != null ? /* @__PURE__ */ jsx("span", { className: "max-w-[18rem] shrink-0 truncate text-sm text-muted-foreground", children: note }) : null
|
|
6356
|
+
]
|
|
6357
|
+
}
|
|
6358
|
+
);
|
|
6359
|
+
});
|
|
6360
|
+
ParticipantRow.displayName = "ParticipantRow";
|
|
6361
|
+
var PropertyList = React25.forwardRef(
|
|
5959
6362
|
({ labelWidth = 78, className, style, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
5960
6363
|
"dl",
|
|
5961
6364
|
{
|
|
@@ -5971,7 +6374,7 @@ var PropertyList = React24.forwardRef(
|
|
|
5971
6374
|
)
|
|
5972
6375
|
);
|
|
5973
6376
|
PropertyList.displayName = "PropertyList";
|
|
5974
|
-
var PropertyRow =
|
|
6377
|
+
var PropertyRow = React25.forwardRef(
|
|
5975
6378
|
({ label, mono, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
5976
6379
|
"div",
|
|
5977
6380
|
{
|
|
@@ -5986,7 +6389,7 @@ var PropertyRow = React24.forwardRef(
|
|
|
5986
6389
|
)
|
|
5987
6390
|
);
|
|
5988
6391
|
PropertyRow.displayName = "PropertyRow";
|
|
5989
|
-
var ProposalCard =
|
|
6392
|
+
var ProposalCard = React25.forwardRef(
|
|
5990
6393
|
({
|
|
5991
6394
|
title,
|
|
5992
6395
|
source,
|
|
@@ -6018,7 +6421,7 @@ var ProposalCard = React24.forwardRef(
|
|
|
6018
6421
|
] })
|
|
6019
6422
|
);
|
|
6020
6423
|
ProposalCard.displayName = "ProposalCard";
|
|
6021
|
-
var DotRating =
|
|
6424
|
+
var DotRating = React25.forwardRef(
|
|
6022
6425
|
({ value, max = 3, onChange, readOnly, label, className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
6023
6426
|
"div",
|
|
6024
6427
|
{
|
|
@@ -6063,7 +6466,7 @@ var DotRating = React24.forwardRef(
|
|
|
6063
6466
|
)
|
|
6064
6467
|
);
|
|
6065
6468
|
DotRating.displayName = "DotRating";
|
|
6066
|
-
var RatingControl =
|
|
6469
|
+
var RatingControl = React25.forwardRef(
|
|
6067
6470
|
({
|
|
6068
6471
|
verdict,
|
|
6069
6472
|
onVerdictChange,
|
|
@@ -6120,7 +6523,7 @@ var RatingControl = React24.forwardRef(
|
|
|
6120
6523
|
)
|
|
6121
6524
|
);
|
|
6122
6525
|
RatingControl.displayName = "RatingControl";
|
|
6123
|
-
var RecordHeader =
|
|
6526
|
+
var RecordHeader = React25.forwardRef(
|
|
6124
6527
|
({ tone, crumbs, chips, actions, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
6125
6528
|
"div",
|
|
6126
6529
|
{
|
|
@@ -6134,7 +6537,7 @@ var RecordHeader = React24.forwardRef(
|
|
|
6134
6537
|
tone ? /* @__PURE__ */ jsx(StatusDot, { tone, size: "lg" }) : null,
|
|
6135
6538
|
/* @__PURE__ */ jsx("div", { className: "flex min-w-0 items-center gap-1.5", children: crumbs.map((crumb, i) => {
|
|
6136
6539
|
const last = i === crumbs.length - 1;
|
|
6137
|
-
return /* @__PURE__ */ jsxs(
|
|
6540
|
+
return /* @__PURE__ */ jsxs(React25.Fragment, { children: [
|
|
6138
6541
|
i > 0 ? /* @__PURE__ */ jsx(
|
|
6139
6542
|
ChevronRight,
|
|
6140
6543
|
{
|
|
@@ -6146,8 +6549,13 @@ var RecordHeader = React24.forwardRef(
|
|
|
6146
6549
|
"span",
|
|
6147
6550
|
{
|
|
6148
6551
|
className: cn(
|
|
6149
|
-
"
|
|
6150
|
-
last
|
|
6552
|
+
"truncate font-mono",
|
|
6553
|
+
// The **last** crumb gives way first. It is the record's own
|
|
6554
|
+
// name and the longest of them, and the reader is already on
|
|
6555
|
+
// it; the parents are what say *which dashboard this is*, and
|
|
6556
|
+
// at four characters `runs` truncated to `ru…` leaves the one
|
|
6557
|
+
// question a crumb trail exists to answer unanswered.
|
|
6558
|
+
last ? "min-w-[6ch] shrink-[999] text-base font-semibold text-foreground" : "min-w-[3ch] text-muted-foreground"
|
|
6151
6559
|
),
|
|
6152
6560
|
children: crumb
|
|
6153
6561
|
}
|
|
@@ -6161,7 +6569,55 @@ var RecordHeader = React24.forwardRef(
|
|
|
6161
6569
|
)
|
|
6162
6570
|
);
|
|
6163
6571
|
RecordHeader.displayName = "RecordHeader";
|
|
6164
|
-
var
|
|
6572
|
+
var RecordPager = React25.forwardRef(
|
|
6573
|
+
({
|
|
6574
|
+
position,
|
|
6575
|
+
onPrevious,
|
|
6576
|
+
onNext,
|
|
6577
|
+
previousLabel = "Previous",
|
|
6578
|
+
nextLabel = "Next",
|
|
6579
|
+
className,
|
|
6580
|
+
...props
|
|
6581
|
+
}, ref) => /* @__PURE__ */ jsxs(
|
|
6582
|
+
"div",
|
|
6583
|
+
{
|
|
6584
|
+
ref,
|
|
6585
|
+
className: cn("flex items-center gap-1.5", className),
|
|
6586
|
+
...props,
|
|
6587
|
+
children: [
|
|
6588
|
+
position != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm text-muted-foreground", children: position }) : null,
|
|
6589
|
+
/* @__PURE__ */ jsxs("span", { className: "flex items-center", children: [
|
|
6590
|
+
/* @__PURE__ */ jsx(
|
|
6591
|
+
Button,
|
|
6592
|
+
{
|
|
6593
|
+
type: "button",
|
|
6594
|
+
variant: "ghost",
|
|
6595
|
+
size: "icon-xs",
|
|
6596
|
+
"aria-label": previousLabel,
|
|
6597
|
+
disabled: !onPrevious,
|
|
6598
|
+
onClick: onPrevious,
|
|
6599
|
+
children: /* @__PURE__ */ jsx(ChevronLeft, { "aria-hidden": true })
|
|
6600
|
+
}
|
|
6601
|
+
),
|
|
6602
|
+
/* @__PURE__ */ jsx(
|
|
6603
|
+
Button,
|
|
6604
|
+
{
|
|
6605
|
+
type: "button",
|
|
6606
|
+
variant: "ghost",
|
|
6607
|
+
size: "icon-xs",
|
|
6608
|
+
"aria-label": nextLabel,
|
|
6609
|
+
disabled: !onNext,
|
|
6610
|
+
onClick: onNext,
|
|
6611
|
+
children: /* @__PURE__ */ jsx(ChevronRight, { "aria-hidden": true })
|
|
6612
|
+
}
|
|
6613
|
+
)
|
|
6614
|
+
] })
|
|
6615
|
+
]
|
|
6616
|
+
}
|
|
6617
|
+
)
|
|
6618
|
+
);
|
|
6619
|
+
RecordPager.displayName = "RecordPager";
|
|
6620
|
+
var RepairNote = React25.forwardRef(
|
|
6165
6621
|
({ from, to, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
6166
6622
|
"div",
|
|
6167
6623
|
{
|
|
@@ -6180,7 +6636,7 @@ var RepairNote = React24.forwardRef(
|
|
|
6180
6636
|
)
|
|
6181
6637
|
);
|
|
6182
6638
|
RepairNote.displayName = "RepairNote";
|
|
6183
|
-
var RetryNote =
|
|
6639
|
+
var RetryNote = React25.forwardRef(
|
|
6184
6640
|
({ attempt, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
6185
6641
|
"div",
|
|
6186
6642
|
{
|
|
@@ -6347,7 +6803,7 @@ function describeSlice(select, declared) {
|
|
|
6347
6803
|
}
|
|
6348
6804
|
return out;
|
|
6349
6805
|
}
|
|
6350
|
-
var SliceSummary =
|
|
6806
|
+
var SliceSummary = React25.forwardRef(
|
|
6351
6807
|
({ select, declaredAxes, modelLabel, variant = "line", className, ...props }, ref) => {
|
|
6352
6808
|
const lines = select ? describeSlice(select, declaredAxes) : [];
|
|
6353
6809
|
if (!lines.length) {
|
|
@@ -6394,7 +6850,7 @@ var SliceSummary = React24.forwardRef(
|
|
|
6394
6850
|
}
|
|
6395
6851
|
);
|
|
6396
6852
|
SliceSummary.displayName = "SliceSummary";
|
|
6397
|
-
var RuleRow =
|
|
6853
|
+
var RuleRow = React25.forwardRef(
|
|
6398
6854
|
({ match, allow, properties, select, egress, readOnly, className, ...props }, ref) => {
|
|
6399
6855
|
const excluded = properties?.exclude ?? [];
|
|
6400
6856
|
const sends = egress?.may_send ?? [];
|
|
@@ -6452,6 +6908,111 @@ var RuleRow = React24.forwardRef(
|
|
|
6452
6908
|
}
|
|
6453
6909
|
);
|
|
6454
6910
|
RuleRow.displayName = "RuleRow";
|
|
6911
|
+
var TONE6 = {
|
|
6912
|
+
queued: "queued",
|
|
6913
|
+
running: "running",
|
|
6914
|
+
succeeded: "success",
|
|
6915
|
+
failed: "error",
|
|
6916
|
+
cancelled: "muted",
|
|
6917
|
+
cannot_answer: "warning",
|
|
6918
|
+
awaiting_approval: "warning",
|
|
6919
|
+
skipped: "muted",
|
|
6920
|
+
held: "muted",
|
|
6921
|
+
purged: "muted"
|
|
6922
|
+
};
|
|
6923
|
+
var TEXT = {
|
|
6924
|
+
running: "text-info",
|
|
6925
|
+
success: "text-success",
|
|
6926
|
+
warning: "text-warning",
|
|
6927
|
+
error: "text-destructive",
|
|
6928
|
+
info: "text-info",
|
|
6929
|
+
queued: "text-muted-foreground",
|
|
6930
|
+
muted: "text-muted-foreground"
|
|
6931
|
+
};
|
|
6932
|
+
var RunStatusText = React25.forwardRef(({ status, tone, dot, label, className, ...props }, ref) => {
|
|
6933
|
+
const resolved = tone ?? TONE6[status] ?? "muted";
|
|
6934
|
+
return /* @__PURE__ */ jsxs(
|
|
6935
|
+
"span",
|
|
6936
|
+
{
|
|
6937
|
+
ref,
|
|
6938
|
+
className: cn(
|
|
6939
|
+
"inline-flex min-w-0 items-center gap-1.5",
|
|
6940
|
+
TEXT[resolved],
|
|
6941
|
+
className
|
|
6942
|
+
),
|
|
6943
|
+
...props,
|
|
6944
|
+
children: [
|
|
6945
|
+
dot ? /* @__PURE__ */ jsx(StatusDot, { tone: resolved }) : null,
|
|
6946
|
+
/* @__PURE__ */ jsx("span", { className: "truncate", children: label ?? status })
|
|
6947
|
+
]
|
|
6948
|
+
}
|
|
6949
|
+
);
|
|
6950
|
+
});
|
|
6951
|
+
RunStatusText.displayName = "RunStatusText";
|
|
6952
|
+
var RunRow = React25.forwardRef(
|
|
6953
|
+
({
|
|
6954
|
+
status,
|
|
6955
|
+
tone,
|
|
6956
|
+
kind,
|
|
6957
|
+
address,
|
|
6958
|
+
title,
|
|
6959
|
+
meta,
|
|
6960
|
+
aside,
|
|
6961
|
+
depth = 0,
|
|
6962
|
+
selected,
|
|
6963
|
+
onSelect,
|
|
6964
|
+
className,
|
|
6965
|
+
...props
|
|
6966
|
+
}, ref) => {
|
|
6967
|
+
const Row = onSelect ? "button" : "div";
|
|
6968
|
+
return /* @__PURE__ */ jsx(
|
|
6969
|
+
"div",
|
|
6970
|
+
{
|
|
6971
|
+
ref,
|
|
6972
|
+
className: cn(
|
|
6973
|
+
"border-b border-border/55",
|
|
6974
|
+
selected && "bg-accent shadow-[inset_2px_0_0_var(--color-primary)]",
|
|
6975
|
+
className
|
|
6976
|
+
),
|
|
6977
|
+
...props,
|
|
6978
|
+
children: /* @__PURE__ */ jsxs(
|
|
6979
|
+
Row,
|
|
6980
|
+
{
|
|
6981
|
+
type: onSelect ? "button" : void 0,
|
|
6982
|
+
onClick: onSelect,
|
|
6983
|
+
"aria-current": onSelect && selected ? "true" : void 0,
|
|
6984
|
+
style: { paddingLeft: 12 + depth * 18 },
|
|
6985
|
+
className: cn(
|
|
6986
|
+
"flex w-full items-start gap-2 py-1.5 pr-3 text-left",
|
|
6987
|
+
onSelect && "cursor-pointer hover:bg-accent/60 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-ring"
|
|
6988
|
+
),
|
|
6989
|
+
children: [
|
|
6990
|
+
/* @__PURE__ */ jsx(
|
|
6991
|
+
StatusDot,
|
|
6992
|
+
{
|
|
6993
|
+
tone: tone ?? TONE6[status] ?? "muted",
|
|
6994
|
+
size: "md",
|
|
6995
|
+
className: "mt-1.5",
|
|
6996
|
+
label: typeof status === "string" ? status : void 0
|
|
6997
|
+
}
|
|
6998
|
+
),
|
|
6999
|
+
/* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-1 flex-col", children: [
|
|
7000
|
+
/* @__PURE__ */ jsxs("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
7001
|
+
kind ? /* @__PURE__ */ jsx(KindChip, { kind }) : null,
|
|
7002
|
+
address != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 font-mono", children: address }) : null,
|
|
7003
|
+
/* @__PURE__ */ jsx("span", { className: "min-w-0 truncate", children: title })
|
|
7004
|
+
] }),
|
|
7005
|
+
meta != null ? /* @__PURE__ */ jsx("span", { className: "truncate text-sm text-muted-foreground", children: meta }) : null
|
|
7006
|
+
] }),
|
|
7007
|
+
aside != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 pt-0.5 text-sm text-muted-foreground", children: aside }) : null
|
|
7008
|
+
]
|
|
7009
|
+
}
|
|
7010
|
+
)
|
|
7011
|
+
}
|
|
7012
|
+
);
|
|
7013
|
+
}
|
|
7014
|
+
);
|
|
7015
|
+
RunRow.displayName = "RunRow";
|
|
6455
7016
|
var SearchInput = ({
|
|
6456
7017
|
value,
|
|
6457
7018
|
onChange,
|
|
@@ -6478,7 +7039,7 @@ var SearchInput = ({
|
|
|
6478
7039
|
}
|
|
6479
7040
|
);
|
|
6480
7041
|
};
|
|
6481
|
-
var SectionHeader =
|
|
7042
|
+
var SectionHeader = React25.forwardRef(({ icon, title, count, actions, bare, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
6482
7043
|
"div",
|
|
6483
7044
|
{
|
|
6484
7045
|
ref,
|
|
@@ -6497,7 +7058,7 @@ var SectionHeader = React24.forwardRef(({ icon, title, count, actions, bare, cla
|
|
|
6497
7058
|
}
|
|
6498
7059
|
));
|
|
6499
7060
|
SectionHeader.displayName = "SectionHeader";
|
|
6500
|
-
var Sparkline =
|
|
7061
|
+
var Sparkline = React25.forwardRef(
|
|
6501
7062
|
({
|
|
6502
7063
|
values,
|
|
6503
7064
|
width = 72,
|
|
@@ -6584,7 +7145,7 @@ function TabbedPanel({
|
|
|
6584
7145
|
footerClassName,
|
|
6585
7146
|
footerContent
|
|
6586
7147
|
}) {
|
|
6587
|
-
const [internalTab, setInternalTab] =
|
|
7148
|
+
const [internalTab, setInternalTab] = React25__default.useState(defaultTab || tabs[0]?.value);
|
|
6588
7149
|
const currentTab = activeTab !== void 0 ? activeTab : internalTab;
|
|
6589
7150
|
const handleTabChange = (value) => {
|
|
6590
7151
|
if (activeTab === void 0) {
|
|
@@ -6592,9 +7153,9 @@ function TabbedPanel({
|
|
|
6592
7153
|
}
|
|
6593
7154
|
onTabChange?.(value);
|
|
6594
7155
|
};
|
|
6595
|
-
const uid =
|
|
7156
|
+
const uid = React25__default.useId();
|
|
6596
7157
|
const panelId = (value) => `${uid}-panel-${value}`;
|
|
6597
|
-
const items =
|
|
7158
|
+
const items = React25__default.useMemo(
|
|
6598
7159
|
() => tabs.map((tab) => ({
|
|
6599
7160
|
key: tab.value,
|
|
6600
7161
|
name: tab.name ?? (typeof tab.label === "string" ? tab.label : tab.value),
|
|
@@ -6680,7 +7241,7 @@ var STATUS_LABEL = {
|
|
|
6680
7241
|
};
|
|
6681
7242
|
function renderResult(result) {
|
|
6682
7243
|
if (result == null) return null;
|
|
6683
|
-
if (
|
|
7244
|
+
if (React25.isValidElement(result)) return result;
|
|
6684
7245
|
if (typeof result !== "object") {
|
|
6685
7246
|
return /* @__PURE__ */ jsx("span", { className: "font-mono text-sm", children: String(result) });
|
|
6686
7247
|
}
|
|
@@ -6695,7 +7256,7 @@ function renderResult(result) {
|
|
|
6695
7256
|
] }, k))
|
|
6696
7257
|
] });
|
|
6697
7258
|
}
|
|
6698
|
-
var TaskGanttDetailCard =
|
|
7259
|
+
var TaskGanttDetailCard = React25.forwardRef(({ task, elapsedMs, formatDuration = defaultFormatDuration, className, ...props }, ref) => {
|
|
6699
7260
|
const status = task.status ?? "succeeded";
|
|
6700
7261
|
const ms = task.durationMs ?? elapsedMs;
|
|
6701
7262
|
const duration = task.duration ?? (ms != null ? formatDuration(ms) : "\u2014");
|
|
@@ -6761,7 +7322,7 @@ function place(seg, origin) {
|
|
|
6761
7322
|
}
|
|
6762
7323
|
return { start, duration: duration != null && duration > 0 ? duration : 0 };
|
|
6763
7324
|
}
|
|
6764
|
-
var TaskGantt =
|
|
7325
|
+
var TaskGantt = React25.forwardRef(
|
|
6765
7326
|
({
|
|
6766
7327
|
tasks,
|
|
6767
7328
|
origin,
|
|
@@ -6783,7 +7344,7 @@ var TaskGantt = React24.forwardRef(
|
|
|
6783
7344
|
}, ref) => {
|
|
6784
7345
|
const barHeight = density === "compact" ? 11 : 13;
|
|
6785
7346
|
const durationWidth = 40;
|
|
6786
|
-
const rows =
|
|
7347
|
+
const rows = React25.useMemo(() => {
|
|
6787
7348
|
const stamps = [];
|
|
6788
7349
|
for (const t of [...tasks, ...tasks.flatMap((t2) => t2.attempts ?? [])]) {
|
|
6789
7350
|
if (t.startedAt != null) stamps.push(toMs(t.startedAt));
|
|
@@ -6944,7 +7505,7 @@ var TaskGantt = React24.forwardRef(
|
|
|
6944
7505
|
}
|
|
6945
7506
|
);
|
|
6946
7507
|
TaskGantt.displayName = "TaskGantt";
|
|
6947
|
-
var TaskNode =
|
|
7508
|
+
var TaskNode = React25.forwardRef(
|
|
6948
7509
|
({
|
|
6949
7510
|
taskKey,
|
|
6950
7511
|
bound,
|
|
@@ -6954,6 +7515,7 @@ var TaskNode = React24.forwardRef(
|
|
|
6954
7515
|
tags,
|
|
6955
7516
|
meta,
|
|
6956
7517
|
selected,
|
|
7518
|
+
readOnly,
|
|
6957
7519
|
gate,
|
|
6958
7520
|
dim,
|
|
6959
7521
|
ghost,
|
|
@@ -6993,7 +7555,7 @@ var TaskNode = React24.forwardRef(
|
|
|
6993
7555
|
),
|
|
6994
7556
|
...props,
|
|
6995
7557
|
children: [
|
|
6996
|
-
selected ? ["-left-1 -top-1", "-right-1 -top-1", "-bottom-1 -left-1", "-bottom-1 -right-1"].map(
|
|
7558
|
+
selected && !readOnly ? ["-left-1 -top-1", "-right-1 -top-1", "-bottom-1 -left-1", "-bottom-1 -right-1"].map(
|
|
6997
7559
|
(pos) => /* @__PURE__ */ jsx(
|
|
6998
7560
|
"span",
|
|
6999
7561
|
{
|
|
@@ -7037,7 +7599,7 @@ var TaskNode = React24.forwardRef(
|
|
|
7037
7599
|
}
|
|
7038
7600
|
);
|
|
7039
7601
|
TaskNode.displayName = "TaskNode";
|
|
7040
|
-
var TemplatePicker =
|
|
7602
|
+
var TemplatePicker = React25.forwardRef(({ heading, options, value, onSelect, footnote, className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
7041
7603
|
"div",
|
|
7042
7604
|
{
|
|
7043
7605
|
ref,
|
|
@@ -7088,7 +7650,7 @@ var MARKER = {
|
|
|
7088
7650
|
output: "\u2192",
|
|
7089
7651
|
comment: "#"
|
|
7090
7652
|
};
|
|
7091
|
-
var Terminal =
|
|
7653
|
+
var Terminal = React25.forwardRef(
|
|
7092
7654
|
({ cursor, columnTemplate = "150px minmax(0,1fr) auto auto", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
7093
7655
|
"div",
|
|
7094
7656
|
{
|
|
@@ -7113,7 +7675,7 @@ var Terminal = React24.forwardRef(
|
|
|
7113
7675
|
)
|
|
7114
7676
|
);
|
|
7115
7677
|
Terminal.displayName = "Terminal";
|
|
7116
|
-
var TerminalLine =
|
|
7678
|
+
var TerminalLine = React25.forwardRef(
|
|
7117
7679
|
({ kind = "output", level, levelColumn = 1, columns, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
7118
7680
|
"div",
|
|
7119
7681
|
{
|
|
@@ -7155,10 +7717,10 @@ var TerminalLine = React24.forwardRef(
|
|
|
7155
7717
|
)
|
|
7156
7718
|
);
|
|
7157
7719
|
TerminalLine.displayName = "TerminalLine";
|
|
7158
|
-
var TimelineVariantContext =
|
|
7720
|
+
var TimelineVariantContext = React25.createContext("columns");
|
|
7159
7721
|
var RAIL_MARKER_OFFSET = "h-[0.692rem]";
|
|
7160
7722
|
var RAIL_FOOTER_TAIL = "h-[1.067rem]";
|
|
7161
|
-
var TimelineList =
|
|
7723
|
+
var TimelineList = React25.forwardRef(({ className, variant = "columns", children, ...props }, ref) => /* @__PURE__ */ jsx(TimelineVariantContext.Provider, { value: variant, children: /* @__PURE__ */ jsx("ol", { ref, className: cn("flex flex-col", className), ...props, children }) }));
|
|
7162
7724
|
TimelineList.displayName = "TimelineList";
|
|
7163
7725
|
function RailGutter({ marker }) {
|
|
7164
7726
|
return /* @__PURE__ */ jsxs("span", { className: "flex w-2.5 shrink-0 flex-col items-center", children: [
|
|
@@ -7182,8 +7744,8 @@ function RailGutter({ marker }) {
|
|
|
7182
7744
|
)
|
|
7183
7745
|
] });
|
|
7184
7746
|
}
|
|
7185
|
-
var TimelineEntry =
|
|
7186
|
-
const variant =
|
|
7747
|
+
var TimelineEntry = React25.forwardRef(({ when, title, marker, className, children, ...props }, ref) => {
|
|
7748
|
+
const variant = React25.useContext(TimelineVariantContext);
|
|
7187
7749
|
if (variant === "rail") {
|
|
7188
7750
|
return /* @__PURE__ */ jsxs(
|
|
7189
7751
|
"li",
|
|
@@ -7222,8 +7784,8 @@ var TimelineEntry = React24.forwardRef(({ when, title, marker, className, childr
|
|
|
7222
7784
|
);
|
|
7223
7785
|
});
|
|
7224
7786
|
TimelineEntry.displayName = "TimelineEntry";
|
|
7225
|
-
var TimelineFooter =
|
|
7226
|
-
const variant =
|
|
7787
|
+
var TimelineFooter = React25.forwardRef(({ className, children, ...props }, ref) => {
|
|
7788
|
+
const variant = React25.useContext(TimelineVariantContext);
|
|
7227
7789
|
if (variant === "rail") {
|
|
7228
7790
|
return /* @__PURE__ */ jsxs(
|
|
7229
7791
|
"li",
|
|
@@ -7260,6 +7822,66 @@ var Toolbar = () => {
|
|
|
7260
7822
|
/* @__PURE__ */ jsx("div", { children: "Source" })
|
|
7261
7823
|
] });
|
|
7262
7824
|
};
|
|
7825
|
+
var TouchStrip = React25.forwardRef(
|
|
7826
|
+
({ items, palette, className, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
7827
|
+
"div",
|
|
7828
|
+
{
|
|
7829
|
+
ref,
|
|
7830
|
+
role: "list",
|
|
7831
|
+
className: cn("flex flex-wrap gap-2", className),
|
|
7832
|
+
...props,
|
|
7833
|
+
children: items.map((item) => {
|
|
7834
|
+
const paint = layerPaint(palette, item.layer);
|
|
7835
|
+
return /* @__PURE__ */ jsxs(
|
|
7836
|
+
"div",
|
|
7837
|
+
{
|
|
7838
|
+
role: "listitem",
|
|
7839
|
+
className: cn(
|
|
7840
|
+
"flex min-w-0 flex-1 flex-col gap-px rounded-control border border-border bg-card px-2 py-1",
|
|
7841
|
+
item.dim && "opacity-55"
|
|
7842
|
+
),
|
|
7843
|
+
children: [
|
|
7844
|
+
/* @__PURE__ */ jsxs("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
7845
|
+
/* @__PURE__ */ jsx(
|
|
7846
|
+
"span",
|
|
7847
|
+
{
|
|
7848
|
+
"aria-hidden": true,
|
|
7849
|
+
className: cn(
|
|
7850
|
+
"size-1.5 shrink-0 rounded-full",
|
|
7851
|
+
item.dim ? "bg-muted-foreground" : paint.swatch
|
|
7852
|
+
)
|
|
7853
|
+
}
|
|
7854
|
+
),
|
|
7855
|
+
/* @__PURE__ */ jsx(
|
|
7856
|
+
"span",
|
|
7857
|
+
{
|
|
7858
|
+
className: cn(
|
|
7859
|
+
"min-w-0 truncate",
|
|
7860
|
+
item.dim && "text-muted-foreground"
|
|
7861
|
+
),
|
|
7862
|
+
children: item.label ?? layerLabel(item.layer)
|
|
7863
|
+
}
|
|
7864
|
+
)
|
|
7865
|
+
] }),
|
|
7866
|
+
item.note != null ? /* @__PURE__ */ jsx(
|
|
7867
|
+
"span",
|
|
7868
|
+
{
|
|
7869
|
+
className: cn(
|
|
7870
|
+
"truncate font-mono text-xs text-muted-foreground",
|
|
7871
|
+
item.refused && "line-through"
|
|
7872
|
+
),
|
|
7873
|
+
children: item.note
|
|
7874
|
+
}
|
|
7875
|
+
) : null
|
|
7876
|
+
]
|
|
7877
|
+
},
|
|
7878
|
+
String(item.layer)
|
|
7879
|
+
);
|
|
7880
|
+
})
|
|
7881
|
+
}
|
|
7882
|
+
)
|
|
7883
|
+
);
|
|
7884
|
+
TouchStrip.displayName = "TouchStrip";
|
|
7263
7885
|
function useTour(options) {
|
|
7264
7886
|
const {
|
|
7265
7887
|
steps,
|
|
@@ -7269,11 +7891,11 @@ function useTour(options) {
|
|
|
7269
7891
|
onComplete,
|
|
7270
7892
|
onExit
|
|
7271
7893
|
} = options;
|
|
7272
|
-
const [current, setCurrent] =
|
|
7894
|
+
const [current, setCurrent] = React25.useState(initialStep);
|
|
7273
7895
|
const total = steps.length;
|
|
7274
7896
|
const lastIndex = Math.max(total - 1, 0);
|
|
7275
7897
|
const clamped = Math.min(Math.max(current, 0), lastIndex);
|
|
7276
|
-
const goTo =
|
|
7898
|
+
const goTo = React25.useCallback(
|
|
7277
7899
|
(index) => {
|
|
7278
7900
|
setCurrent((prev2) => {
|
|
7279
7901
|
const next2 = Math.min(Math.max(index, 0), lastIndex);
|
|
@@ -7283,7 +7905,7 @@ function useTour(options) {
|
|
|
7283
7905
|
},
|
|
7284
7906
|
[lastIndex, onStepChange]
|
|
7285
7907
|
);
|
|
7286
|
-
const next =
|
|
7908
|
+
const next = React25.useCallback(() => {
|
|
7287
7909
|
setCurrent((prev2) => {
|
|
7288
7910
|
if (prev2 >= lastIndex) {
|
|
7289
7911
|
if (loop && total > 0) {
|
|
@@ -7297,7 +7919,7 @@ function useTour(options) {
|
|
|
7297
7919
|
return prev2 + 1;
|
|
7298
7920
|
});
|
|
7299
7921
|
}, [lastIndex, total, loop, onComplete, onStepChange]);
|
|
7300
|
-
const prev =
|
|
7922
|
+
const prev = React25.useCallback(() => {
|
|
7301
7923
|
setCurrent((p) => {
|
|
7302
7924
|
if (p <= 0) {
|
|
7303
7925
|
if (loop && total > 0) {
|
|
@@ -7310,10 +7932,10 @@ function useTour(options) {
|
|
|
7310
7932
|
return p - 1;
|
|
7311
7933
|
});
|
|
7312
7934
|
}, [lastIndex, total, loop, onStepChange]);
|
|
7313
|
-
const exit =
|
|
7935
|
+
const exit = React25.useCallback(() => {
|
|
7314
7936
|
onExit?.();
|
|
7315
7937
|
}, [onExit]);
|
|
7316
|
-
return
|
|
7938
|
+
return React25.useMemo(
|
|
7317
7939
|
() => ({
|
|
7318
7940
|
step: steps[clamped],
|
|
7319
7941
|
current: clamped,
|
|
@@ -7475,8 +8097,222 @@ function Tour({
|
|
|
7475
8097
|
}
|
|
7476
8098
|
) });
|
|
7477
8099
|
}
|
|
8100
|
+
var TraceList = React25.forwardRef(
|
|
8101
|
+
({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
|
|
8102
|
+
"div",
|
|
8103
|
+
{
|
|
8104
|
+
ref,
|
|
8105
|
+
role: "list",
|
|
8106
|
+
className: cn("flex flex-col [&>*:first-child]:border-t-0", className),
|
|
8107
|
+
...props,
|
|
8108
|
+
children
|
|
8109
|
+
}
|
|
8110
|
+
)
|
|
8111
|
+
);
|
|
8112
|
+
TraceList.displayName = "TraceList";
|
|
8113
|
+
var TraceStep = React25.forwardRef(
|
|
8114
|
+
({
|
|
8115
|
+
seq,
|
|
8116
|
+
name,
|
|
8117
|
+
description,
|
|
8118
|
+
layer,
|
|
8119
|
+
role,
|
|
8120
|
+
duration,
|
|
8121
|
+
note,
|
|
8122
|
+
mark,
|
|
8123
|
+
palette,
|
|
8124
|
+
depth = 0,
|
|
8125
|
+
dim,
|
|
8126
|
+
struck,
|
|
8127
|
+
selected,
|
|
8128
|
+
onSelect,
|
|
8129
|
+
className,
|
|
8130
|
+
...props
|
|
8131
|
+
}, ref) => {
|
|
8132
|
+
const paint = layer ? layerPaint(palette, layer) : void 0;
|
|
8133
|
+
const Row = onSelect ? "button" : "div";
|
|
8134
|
+
return /* @__PURE__ */ jsxs(
|
|
8135
|
+
"div",
|
|
8136
|
+
{
|
|
8137
|
+
ref,
|
|
8138
|
+
role: "listitem",
|
|
8139
|
+
className: cn(
|
|
8140
|
+
"flex min-h-[46px] items-stretch border-t border-border/55",
|
|
8141
|
+
selected && "bg-accent shadow-[inset_2px_0_0_var(--color-primary)]",
|
|
8142
|
+
dim && "opacity-50",
|
|
8143
|
+
className
|
|
8144
|
+
),
|
|
8145
|
+
...props,
|
|
8146
|
+
children: [
|
|
8147
|
+
/* @__PURE__ */ jsx(
|
|
8148
|
+
"span",
|
|
8149
|
+
{
|
|
8150
|
+
"aria-hidden": true,
|
|
8151
|
+
className: cn(
|
|
8152
|
+
"w-[3px] shrink-0",
|
|
8153
|
+
struck ? "bg-destructive" : paint?.swatch ?? "bg-muted-foreground"
|
|
8154
|
+
)
|
|
8155
|
+
}
|
|
8156
|
+
),
|
|
8157
|
+
/* @__PURE__ */ jsxs(
|
|
8158
|
+
Row,
|
|
8159
|
+
{
|
|
8160
|
+
type: onSelect ? "button" : void 0,
|
|
8161
|
+
onClick: onSelect,
|
|
8162
|
+
className: cn(
|
|
8163
|
+
"flex min-w-0 flex-1 items-center gap-2 pr-3 text-left",
|
|
8164
|
+
onSelect && "cursor-pointer hover:bg-accent/50 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-ring"
|
|
8165
|
+
),
|
|
8166
|
+
children: [
|
|
8167
|
+
/* @__PURE__ */ jsx(
|
|
8168
|
+
"span",
|
|
8169
|
+
{
|
|
8170
|
+
style: { width: 26 + depth * 18 },
|
|
8171
|
+
className: "shrink-0 text-right font-mono text-xs text-muted-foreground",
|
|
8172
|
+
children: seq
|
|
8173
|
+
}
|
|
8174
|
+
),
|
|
8175
|
+
/* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-1 flex-col gap-px py-1.5 pl-2", children: [
|
|
8176
|
+
/* @__PURE__ */ jsxs("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
8177
|
+
/* @__PURE__ */ jsx(
|
|
8178
|
+
"span",
|
|
8179
|
+
{
|
|
8180
|
+
className: cn(
|
|
8181
|
+
"min-w-0 truncate font-mono font-semibold",
|
|
8182
|
+
struck && "text-destructive line-through"
|
|
8183
|
+
),
|
|
8184
|
+
children: name
|
|
8185
|
+
}
|
|
8186
|
+
),
|
|
8187
|
+
mark
|
|
8188
|
+
] }),
|
|
8189
|
+
description != null ? /* @__PURE__ */ jsx("span", { className: "truncate text-sm text-muted-foreground", children: description }) : null
|
|
8190
|
+
] }),
|
|
8191
|
+
layer != null ? (
|
|
8192
|
+
// The layer is never the part that gives way: it is one of six short
|
|
8193
|
+
// words and it is what the row is *about*. The role is the longer,
|
|
8194
|
+
// subordinate string, so it truncates first.
|
|
8195
|
+
/* @__PURE__ */ jsxs("span", { className: "flex w-[10.5rem] shrink-0 items-center justify-end gap-1.5", children: [
|
|
8196
|
+
/* @__PURE__ */ jsx(
|
|
8197
|
+
"span",
|
|
8198
|
+
{
|
|
8199
|
+
"aria-hidden": true,
|
|
8200
|
+
className: cn(
|
|
8201
|
+
"size-1.5 shrink-0 rounded-full",
|
|
8202
|
+
dim ? "bg-muted-foreground" : paint?.swatch
|
|
8203
|
+
)
|
|
8204
|
+
}
|
|
8205
|
+
),
|
|
8206
|
+
/* @__PURE__ */ jsx(
|
|
8207
|
+
"span",
|
|
8208
|
+
{
|
|
8209
|
+
className: cn(
|
|
8210
|
+
"shrink-0 text-sm whitespace-nowrap",
|
|
8211
|
+
dim && "text-muted-foreground"
|
|
8212
|
+
),
|
|
8213
|
+
children: layerLabel(layer)
|
|
8214
|
+
}
|
|
8215
|
+
),
|
|
8216
|
+
role != null ? /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate font-mono text-xs text-muted-foreground", children: role }) : null
|
|
8217
|
+
] })
|
|
8218
|
+
) : null,
|
|
8219
|
+
/* @__PURE__ */ jsxs("span", { className: "flex w-[6rem] shrink-0 flex-col items-end", children: [
|
|
8220
|
+
/* @__PURE__ */ jsx("span", { className: "font-mono text-sm", children: duration }),
|
|
8221
|
+
note != null ? /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: note }) : null
|
|
8222
|
+
] })
|
|
8223
|
+
]
|
|
8224
|
+
}
|
|
8225
|
+
)
|
|
8226
|
+
]
|
|
8227
|
+
}
|
|
8228
|
+
);
|
|
8229
|
+
}
|
|
8230
|
+
);
|
|
8231
|
+
TraceStep.displayName = "TraceStep";
|
|
8232
|
+
var LOOP_TONE = {
|
|
8233
|
+
warning: { box: "border-l-warning bg-warning/5", label: "text-warning" },
|
|
8234
|
+
info: { box: "border-l-info bg-info/5", label: "text-info" },
|
|
8235
|
+
muted: { box: "border-l-muted-foreground bg-muted/40", label: "text-muted-foreground" }
|
|
8236
|
+
};
|
|
8237
|
+
var TraceLoop = React25.forwardRef(
|
|
8238
|
+
({ label, summary, tone = "warning", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
8239
|
+
"div",
|
|
8240
|
+
{
|
|
8241
|
+
ref,
|
|
8242
|
+
role: "group",
|
|
8243
|
+
"aria-label": typeof label === "string" ? label : void 0,
|
|
8244
|
+
className: cn("border-l-2", LOOP_TONE[tone].box, className),
|
|
8245
|
+
...props,
|
|
8246
|
+
children: [
|
|
8247
|
+
/* @__PURE__ */ jsxs("div", { className: "flex h-[25px] items-center gap-2 border-t border-border/55 px-3", children: [
|
|
8248
|
+
/* @__PURE__ */ jsx(
|
|
8249
|
+
"span",
|
|
8250
|
+
{
|
|
8251
|
+
className: cn(
|
|
8252
|
+
"truncate font-mono text-xs font-semibold",
|
|
8253
|
+
LOOP_TONE[tone].label
|
|
8254
|
+
),
|
|
8255
|
+
children: label
|
|
8256
|
+
}
|
|
8257
|
+
),
|
|
8258
|
+
/* @__PURE__ */ jsx("span", { className: "flex-1" }),
|
|
8259
|
+
summary != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-xs text-muted-foreground", children: summary }) : null
|
|
8260
|
+
] }),
|
|
8261
|
+
/* @__PURE__ */ jsx("div", { className: "[&>*:first-child]:border-t-0", children })
|
|
8262
|
+
]
|
|
8263
|
+
}
|
|
8264
|
+
)
|
|
8265
|
+
);
|
|
8266
|
+
TraceLoop.displayName = "TraceLoop";
|
|
8267
|
+
var GATE_TONE = {
|
|
8268
|
+
destructive: "border-destructive text-destructive",
|
|
8269
|
+
warning: "border-warning text-warning",
|
|
8270
|
+
muted: "border-muted-foreground text-muted-foreground"
|
|
8271
|
+
};
|
|
8272
|
+
var TraceGate = React25.forwardRef(
|
|
8273
|
+
({ label, note, tone = "destructive", edge = "before", className, ...props }, ref) => /* @__PURE__ */ jsxs(
|
|
8274
|
+
"div",
|
|
8275
|
+
{
|
|
8276
|
+
ref,
|
|
8277
|
+
role: "separator",
|
|
8278
|
+
"aria-label": typeof label === "string" ? label : void 0,
|
|
8279
|
+
className: cn("relative flex h-[38px] items-center", className),
|
|
8280
|
+
...props,
|
|
8281
|
+
children: [
|
|
8282
|
+
/* @__PURE__ */ jsx(
|
|
8283
|
+
"span",
|
|
8284
|
+
{
|
|
8285
|
+
"aria-hidden": true,
|
|
8286
|
+
className: cn(
|
|
8287
|
+
"absolute inset-x-0 border-t-2",
|
|
8288
|
+
GATE_TONE[tone],
|
|
8289
|
+
edge === "before" ? "top-[18px]" : "bottom-[18px]"
|
|
8290
|
+
)
|
|
8291
|
+
}
|
|
8292
|
+
),
|
|
8293
|
+
/* @__PURE__ */ jsxs(
|
|
8294
|
+
"span",
|
|
8295
|
+
{
|
|
8296
|
+
className: cn(
|
|
8297
|
+
"relative ml-8 flex items-center gap-2 rounded-control border bg-card px-2 py-0.5",
|
|
8298
|
+
GATE_TONE[tone]
|
|
8299
|
+
),
|
|
8300
|
+
children: [
|
|
8301
|
+
/* @__PURE__ */ jsxs("span", { className: "font-mono text-xs font-semibold whitespace-nowrap", children: [
|
|
8302
|
+
"\u25C8 ",
|
|
8303
|
+
label
|
|
8304
|
+
] }),
|
|
8305
|
+
note != null ? /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate text-xs text-muted-foreground", children: note }) : null
|
|
8306
|
+
]
|
|
8307
|
+
}
|
|
8308
|
+
)
|
|
8309
|
+
]
|
|
8310
|
+
}
|
|
8311
|
+
)
|
|
8312
|
+
);
|
|
8313
|
+
TraceGate.displayName = "TraceGate";
|
|
7478
8314
|
var TreeView = ({ searchable = false, ...props }) => {
|
|
7479
|
-
const [searchQuery, setSearchQuery] =
|
|
8315
|
+
const [searchQuery, setSearchQuery] = React25.useState("");
|
|
7480
8316
|
const filterItems = (items, query) => {
|
|
7481
8317
|
if (!query) return items;
|
|
7482
8318
|
return items.map((item) => ({
|
|
@@ -7499,7 +8335,7 @@ var TreeView = ({ searchable = false, ...props }) => {
|
|
|
7499
8335
|
);
|
|
7500
8336
|
};
|
|
7501
8337
|
var TreeItem = ({ item }) => {
|
|
7502
|
-
const [isExpanded, setIsExpanded] =
|
|
8338
|
+
const [isExpanded, setIsExpanded] = React25.useState(item.isExpanded || true);
|
|
7503
8339
|
const hasChildren = item.children && item.children.length > 0;
|
|
7504
8340
|
return /* @__PURE__ */ jsxs("div", { children: [
|
|
7505
8341
|
/* @__PURE__ */ jsxs(
|
|
@@ -7568,7 +8404,7 @@ function UnderDevelopment({
|
|
|
7568
8404
|
/* @__PURE__ */ jsx("span", { className: "mt-4 px-3 py-1 bg-yellow-100 text-yellow-800", children: "Coming Soon" })
|
|
7569
8405
|
] });
|
|
7570
8406
|
}
|
|
7571
|
-
var TypographyH1 =
|
|
8407
|
+
var TypographyH1 = React25.forwardRef(
|
|
7572
8408
|
({ className, ...props }, ref) => {
|
|
7573
8409
|
return /* @__PURE__ */ jsx(
|
|
7574
8410
|
"h1",
|
|
@@ -7584,7 +8420,7 @@ var TypographyH1 = React24.forwardRef(
|
|
|
7584
8420
|
}
|
|
7585
8421
|
);
|
|
7586
8422
|
TypographyH1.displayName = "TypographyH1";
|
|
7587
|
-
var TypographyH2 =
|
|
8423
|
+
var TypographyH2 = React25.forwardRef(
|
|
7588
8424
|
({ className, ...props }, ref) => {
|
|
7589
8425
|
return /* @__PURE__ */ jsx(
|
|
7590
8426
|
"h2",
|
|
@@ -7600,7 +8436,7 @@ var TypographyH2 = React24.forwardRef(
|
|
|
7600
8436
|
}
|
|
7601
8437
|
);
|
|
7602
8438
|
TypographyH2.displayName = "TypographyH2";
|
|
7603
|
-
var TypographyH3 =
|
|
8439
|
+
var TypographyH3 = React25.forwardRef(
|
|
7604
8440
|
({ className, ...props }, ref) => {
|
|
7605
8441
|
return /* @__PURE__ */ jsx(
|
|
7606
8442
|
"h3",
|
|
@@ -7616,7 +8452,7 @@ var TypographyH3 = React24.forwardRef(
|
|
|
7616
8452
|
}
|
|
7617
8453
|
);
|
|
7618
8454
|
TypographyH3.displayName = "TypographyH3";
|
|
7619
|
-
var TypographyH4 =
|
|
8455
|
+
var TypographyH4 = React25.forwardRef(
|
|
7620
8456
|
({ className, ...props }, ref) => {
|
|
7621
8457
|
return /* @__PURE__ */ jsx(
|
|
7622
8458
|
"h4",
|
|
@@ -7632,7 +8468,7 @@ var TypographyH4 = React24.forwardRef(
|
|
|
7632
8468
|
}
|
|
7633
8469
|
);
|
|
7634
8470
|
TypographyH4.displayName = "TypographyH4";
|
|
7635
|
-
var TypographyH5 =
|
|
8471
|
+
var TypographyH5 = React25.forwardRef(
|
|
7636
8472
|
({ className, ...props }, ref) => {
|
|
7637
8473
|
return /* @__PURE__ */ jsx(
|
|
7638
8474
|
"h5",
|
|
@@ -7648,7 +8484,7 @@ var TypographyH5 = React24.forwardRef(
|
|
|
7648
8484
|
}
|
|
7649
8485
|
);
|
|
7650
8486
|
TypographyH5.displayName = "TypographyH5";
|
|
7651
|
-
var TypographyH6 =
|
|
8487
|
+
var TypographyH6 = React25.forwardRef(
|
|
7652
8488
|
({ className, ...props }, ref) => {
|
|
7653
8489
|
return /* @__PURE__ */ jsx(
|
|
7654
8490
|
"h6",
|
|
@@ -7664,7 +8500,7 @@ var TypographyH6 = React24.forwardRef(
|
|
|
7664
8500
|
}
|
|
7665
8501
|
);
|
|
7666
8502
|
TypographyH6.displayName = "TypographyH6";
|
|
7667
|
-
var TypographyP =
|
|
8503
|
+
var TypographyP = React25.forwardRef(
|
|
7668
8504
|
({ className, ...props }, ref) => {
|
|
7669
8505
|
return /* @__PURE__ */ jsx(
|
|
7670
8506
|
"p",
|
|
@@ -7680,7 +8516,7 @@ var TypographyP = React24.forwardRef(
|
|
|
7680
8516
|
}
|
|
7681
8517
|
);
|
|
7682
8518
|
TypographyP.displayName = "TypographyP";
|
|
7683
|
-
var TypographyBlockquote =
|
|
8519
|
+
var TypographyBlockquote = React25.forwardRef(
|
|
7684
8520
|
({ className, ...props }, ref) => {
|
|
7685
8521
|
return /* @__PURE__ */ jsx(
|
|
7686
8522
|
"blockquote",
|
|
@@ -7696,7 +8532,7 @@ var TypographyBlockquote = React24.forwardRef(
|
|
|
7696
8532
|
}
|
|
7697
8533
|
);
|
|
7698
8534
|
TypographyBlockquote.displayName = "TypographyBlockquote";
|
|
7699
|
-
var TypographyInlineCode =
|
|
8535
|
+
var TypographyInlineCode = React25.forwardRef(
|
|
7700
8536
|
({ className, ...props }, ref) => {
|
|
7701
8537
|
return /* @__PURE__ */ jsx(
|
|
7702
8538
|
"code",
|
|
@@ -7712,7 +8548,7 @@ var TypographyInlineCode = React24.forwardRef(
|
|
|
7712
8548
|
}
|
|
7713
8549
|
);
|
|
7714
8550
|
TypographyInlineCode.displayName = "TypographyInlineCode";
|
|
7715
|
-
var TypographyLead =
|
|
8551
|
+
var TypographyLead = React25.forwardRef(
|
|
7716
8552
|
({ className, ...props }, ref) => {
|
|
7717
8553
|
return /* @__PURE__ */ jsx(
|
|
7718
8554
|
"p",
|
|
@@ -7728,7 +8564,7 @@ var TypographyLead = React24.forwardRef(
|
|
|
7728
8564
|
}
|
|
7729
8565
|
);
|
|
7730
8566
|
TypographyLead.displayName = "TypographyLead";
|
|
7731
|
-
var TypographyLarge =
|
|
8567
|
+
var TypographyLarge = React25.forwardRef(
|
|
7732
8568
|
({ className, ...props }, ref) => {
|
|
7733
8569
|
return /* @__PURE__ */ jsx(
|
|
7734
8570
|
"div",
|
|
@@ -7744,7 +8580,7 @@ var TypographyLarge = React24.forwardRef(
|
|
|
7744
8580
|
}
|
|
7745
8581
|
);
|
|
7746
8582
|
TypographyLarge.displayName = "TypographyLarge";
|
|
7747
|
-
var TypographySmall =
|
|
8583
|
+
var TypographySmall = React25.forwardRef(
|
|
7748
8584
|
({ className, ...props }, ref) => {
|
|
7749
8585
|
return /* @__PURE__ */ jsx(
|
|
7750
8586
|
"small",
|
|
@@ -7760,7 +8596,7 @@ var TypographySmall = React24.forwardRef(
|
|
|
7760
8596
|
}
|
|
7761
8597
|
);
|
|
7762
8598
|
TypographySmall.displayName = "TypographySmall";
|
|
7763
|
-
var TypographyMuted =
|
|
8599
|
+
var TypographyMuted = React25.forwardRef(
|
|
7764
8600
|
({ className, ...props }, ref) => {
|
|
7765
8601
|
return /* @__PURE__ */ jsx(
|
|
7766
8602
|
"p",
|
|
@@ -7776,7 +8612,7 @@ var TypographyMuted = React24.forwardRef(
|
|
|
7776
8612
|
}
|
|
7777
8613
|
);
|
|
7778
8614
|
TypographyMuted.displayName = "TypographyMuted";
|
|
7779
|
-
var TypographyList =
|
|
8615
|
+
var TypographyList = React25.forwardRef(
|
|
7780
8616
|
({ className, ...props }, ref) => {
|
|
7781
8617
|
return /* @__PURE__ */ jsx(
|
|
7782
8618
|
"ul",
|
|
@@ -7792,7 +8628,7 @@ var TypographyList = React24.forwardRef(
|
|
|
7792
8628
|
}
|
|
7793
8629
|
);
|
|
7794
8630
|
TypographyList.displayName = "TypographyList";
|
|
7795
|
-
var TypographyPre =
|
|
8631
|
+
var TypographyPre = React25.forwardRef(
|
|
7796
8632
|
({ className, ...props }, ref) => {
|
|
7797
8633
|
return /* @__PURE__ */ jsx(
|
|
7798
8634
|
"pre",
|
|
@@ -7828,6 +8664,6 @@ var Typography = {
|
|
|
7828
8664
|
Pre: TypographyPre
|
|
7829
8665
|
};
|
|
7830
8666
|
|
|
7831
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, AddressChip, AgentChip, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AppStatusBar, Avatar, AvatarFallback, AvatarImage, Badge, BarChartH, BarChartV, BoundChip, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, ButtonWithTooltip, CAST_ROLES, CannotAnswerCard, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CardWithHeader, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, CastTable, ChatSession, ChatSessionActivityRow, ChatSessionActivitySubLine, ChatSessionComposer, ChatSessionContextChip, ChatSessionDisclosure, ChatSessionMessage, ChatSessionMessageOptions, ChatSessionProgressLine, ChatSessionPromptRow, ChatSessionStatusBar, ChatSessionTaskGroup, ChatSessionTaskRow, CitationList, CitationMarker, CitationRow, ClampedText, ClarifyCard, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextBar, DiagnosisCard, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiffList, DiffRow, DivergingBar, DotRating, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EgressList, EmissionCard, EmissionHeader, EmptyState, EmptyStateLock, ErrorBoundary, Eyebrow, FilterBar, FilterChip, HeatStrip, HoverCard, HoverCardContent, HoverCardTrigger, Item3 as Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, LayerChip, LayerSection, LayerStrip, Legend, LegendItem, LensChip, LensRow, Link, MatchPreview, MenuItem, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MetricGrid, MetricTile, NavBase, NavHorizontal, NavHorizontalItems, NavItems, NavVertical, NavVerticalItems, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, NestedMenu, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelBox, PanelContent, PanelStack, Popover, PopoverContent, PopoverTrigger, Progress, PropertyList, PropertyRow, ProposalCard, RatingControl, RecordHeader, RepairNote, ResizableHandle, ResizablePanel, ResizablePanelGroup, RetryNote, RichSelect, RuleRow, ScrollArea, ScrollBar, SearchInput, SectionHeader, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SliceSummary, Sparkline, Spinner, StatusDot, TabbedPanel, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TaskGantt, TaskGanttDetailCard, TaskNode, TemplatePicker, Terminal, TerminalLine, TimelineEntry, TimelineFooter, TimelineList, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Tour, TreeItem, TreeView, Typography, TypographyBlockquote, TypographyH1, TypographyH2, TypographyH3, TypographyH4, TypographyH5, TypographyH6, TypographyInlineCode, TypographyLarge, TypographyLead, TypographyList, TypographyMuted, TypographyP, TypographyPre, TypographySmall, UnderDevelopment, agentChipVariants, badgeVariants, buttonGroupVariants, buttonVariants, chatSessionGutterClass, cn, describeSlice, stateLabel as layerItemLabel, layerLabel, layerPaint, linkVariants, navigationMenuTriggerStyle, split as splitAddress, statusDotVariants, toggleVariants, useOverflowItems, useSidebar, useTour };
|
|
8667
|
+
export { AbsenceNote, Accordion, AccordionContent, AccordionItem, AccordionTrigger, AddressChip, AgentChip, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AppStatusBar, ArtifactTable, AttemptClock, Avatar, AvatarFallback, AvatarImage, Badge, BarChartH, BarChartV, BoundChip, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, ButtonWithTooltip, CAST_ROLES, CannotAnswerCard, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CardWithHeader, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, CastTable, ChatSession, ChatSessionActivityRow, ChatSessionActivitySubLine, ChatSessionComposer, ChatSessionContextChip, ChatSessionDisclosure, ChatSessionMessage, ChatSessionMessageOptions, ChatSessionProgressLine, ChatSessionPromptRow, ChatSessionStatusBar, ChatSessionTaskGroup, ChatSessionTaskRow, CitationList, CitationMarker, CitationRow, ClampedText, ClarifyCard, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, ContextBar, DiagnosisCard, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DiffList, DiffRow, DivergingBar, DotRating, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EgressList, EmissionCard, EmissionHeader, EmptyState, EmptyStateLock, ErrorBoundary, ExchangeRecord, Eyebrow, FilterBar, FilterChip, HeatStrip, HoverCard, HoverCardContent, HoverCardTrigger, Item3 as Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, KindChip, LayerChip, LayerSection, LayerStrip, Legend, LegendItem, LensChip, LensRow, Link, MarkChip, MatchPreview, MenuItem, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MetricGrid, MetricTile, NavBase, NavHorizontal, NavHorizontalItems, NavItems, NavVertical, NavVerticalItems, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, NestedMenu, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PanelBox, PanelContent, PanelStack, ParticipantRow, Popover, PopoverContent, PopoverTrigger, Progress, PropertyList, PropertyRow, ProposalCard, RatingControl, RecordHeader, RecordPager, RepairNote, ResizableHandle, ResizablePanel, ResizablePanelGroup, RetryNote, RichSelect, RuleRow, RunRow, RunStatusText, ScrollArea, ScrollBar, SearchInput, SectionHeader, SegmentedControl, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SliceSummary, Sparkline, Spinner, StatusDot, TabbedPanel, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TaskGantt, TaskGanttDetailCard, TaskNode, TemplatePicker, Terminal, TerminalLine, TimelineEntry, TimelineFooter, TimelineList, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TouchStrip, Tour, TraceGate, TraceList, TraceLoop, TraceStep, TreeItem, TreeView, Typography, TypographyBlockquote, TypographyH1, TypographyH2, TypographyH3, TypographyH4, TypographyH5, TypographyH6, TypographyInlineCode, TypographyLarge, TypographyLead, TypographyList, TypographyMuted, TypographyP, TypographyPre, TypographySmall, UnderDevelopment, agentChipVariants, badgeVariants, buttonGroupVariants, buttonVariants, chatSessionGutterClass, cn, describeSlice, stateLabel as layerItemLabel, layerLabel, layerPaint, linkVariants, navigationMenuTriggerStyle, TONE6 as runStatusTones, split as splitAddress, statusDotVariants, toggleVariants, useOverflowItems, useSidebar, useTour };
|
|
7832
8668
|
//# sourceMappingURL=index.js.map
|
|
7833
8669
|
//# sourceMappingURL=index.js.map
|