@invana/ui 0.0.29 → 0.0.30

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.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { clsx } from 'clsx';
2
- import { extendTailwindMerge } from 'tailwind-merge';
3
- import * as React23 from 'react';
4
- import React23__default, { Component } from 'react';
2
+ import { twMerge } from 'tailwind-merge';
3
+ import * as React24 from 'react';
4
+ import React24__default, { Component } from 'react';
5
5
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
6
6
  import { ChevronDown, ArrowLeft, ArrowRight, X, Search, ChevronRight, Check, Circle, PanelLeft, MoreHorizontal, ChevronLeft, Loader2Icon, OctagonXIcon, TriangleAlertIcon, InfoIcon, CircleCheckIcon, Frown, Lock, Construction } from 'lucide-react';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -28,18 +28,11 @@ import * as TogglePrimitive from '@radix-ui/react-toggle';
28
28
  import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
29
29
 
30
30
  // src/lib/utils.ts
31
- var twMerge = extendTailwindMerge({
32
- extend: {
33
- classGroups: {
34
- "font-size": [{ text: ["meta"] }]
35
- }
36
- }
37
- });
38
31
  function cn(...inputs) {
39
32
  return twMerge(clsx(inputs));
40
33
  }
41
34
  var Accordion = AccordionPrimitive.Root;
42
- var AccordionItem = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
35
+ var AccordionItem = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
43
36
  AccordionPrimitive.Item,
44
37
  {
45
38
  ref,
@@ -48,7 +41,7 @@ var AccordionItem = React23.forwardRef(({ className, ...props }, ref) => /* @__P
48
41
  }
49
42
  ));
50
43
  AccordionItem.displayName = "AccordionItem";
51
- var AccordionTrigger = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
44
+ var AccordionTrigger = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(AccordionPrimitive.Header, { className: "flex", children: /* @__PURE__ */ jsxs(
52
45
  AccordionPrimitive.Trigger,
53
46
  {
54
47
  ref,
@@ -64,7 +57,7 @@ var AccordionTrigger = React23.forwardRef(({ className, children, ...props }, re
64
57
  }
65
58
  ) }));
66
59
  AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
67
- var AccordionContent = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
60
+ var AccordionContent = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
68
61
  AccordionPrimitive.Content,
69
62
  {
70
63
  ref,
@@ -88,7 +81,7 @@ var alertVariants = cva(
88
81
  }
89
82
  }
90
83
  );
91
- var Alert = React23.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx(
84
+ var Alert = React24.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx(
92
85
  "div",
93
86
  {
94
87
  ref,
@@ -98,7 +91,7 @@ var Alert = React23.forwardRef(({ className, variant, ...props }, ref) => /* @__
98
91
  }
99
92
  ));
100
93
  Alert.displayName = "Alert";
101
- var AlertTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
94
+ var AlertTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
102
95
  "h5",
103
96
  {
104
97
  ref,
@@ -107,7 +100,7 @@ var AlertTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE
107
100
  }
108
101
  ));
109
102
  AlertTitle.displayName = "AlertTitle";
110
- var AlertDescription = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
103
+ var AlertDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
111
104
  "div",
112
105
  {
113
106
  ref,
@@ -137,7 +130,7 @@ var buttonVariants = cva(
137
130
  * size-5, which at h-6 leaves no padding at all.
138
131
  */
139
132
  size: {
140
- xs: "h-6 rounded-control px-2 text-meta gap-1 [&_svg]:size-4",
133
+ xs: "h-6 rounded-control px-2 text-sm gap-1 [&_svg]:size-4",
141
134
  default: "h-9 px-4 py-2",
142
135
  sm: "h-8 rounded-control px-3 py-2",
143
136
  lg: "h-12 rounded-control px-8 py-3",
@@ -152,7 +145,7 @@ var buttonVariants = cva(
152
145
  }
153
146
  }
154
147
  );
155
- var Button = React23.forwardRef(
148
+ var Button = React24.forwardRef(
156
149
  ({ className, variant, size, asChild = false, ...props }, ref) => {
157
150
  const Comp = asChild ? Slot : "button";
158
151
  return /* @__PURE__ */ jsx(
@@ -169,7 +162,7 @@ Button.displayName = "Button";
169
162
  var AlertDialog = AlertDialogPrimitive.Root;
170
163
  var AlertDialogTrigger = AlertDialogPrimitive.Trigger;
171
164
  var AlertDialogPortal = AlertDialogPrimitive.Portal;
172
- var AlertDialogOverlay = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
165
+ var AlertDialogOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
173
166
  AlertDialogPrimitive.Overlay,
174
167
  {
175
168
  className: cn(
@@ -181,7 +174,7 @@ var AlertDialogOverlay = React23.forwardRef(({ className, ...props }, ref) => /*
181
174
  }
182
175
  ));
183
176
  AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
184
- var AlertDialogContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
177
+ var AlertDialogContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [
185
178
  /* @__PURE__ */ jsx(AlertDialogOverlay, {}),
186
179
  /* @__PURE__ */ jsx(
187
180
  AlertDialogPrimitive.Content,
@@ -224,7 +217,7 @@ var AlertDialogFooter = ({
224
217
  }
225
218
  );
226
219
  AlertDialogFooter.displayName = "AlertDialogFooter";
227
- var AlertDialogTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
220
+ var AlertDialogTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
228
221
  AlertDialogPrimitive.Title,
229
222
  {
230
223
  ref,
@@ -233,7 +226,7 @@ var AlertDialogTitle = React23.forwardRef(({ className, ...props }, ref) => /* @
233
226
  }
234
227
  ));
235
228
  AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
236
- var AlertDialogDescription = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
229
+ var AlertDialogDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
237
230
  AlertDialogPrimitive.Description,
238
231
  {
239
232
  ref,
@@ -242,7 +235,7 @@ var AlertDialogDescription = React23.forwardRef(({ className, ...props }, ref) =
242
235
  }
243
236
  ));
244
237
  AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
245
- var AlertDialogAction = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
238
+ var AlertDialogAction = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
246
239
  AlertDialogPrimitive.Action,
247
240
  {
248
241
  ref,
@@ -251,7 +244,7 @@ var AlertDialogAction = React23.forwardRef(({ className, ...props }, ref) => /*
251
244
  }
252
245
  ));
253
246
  AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
254
- var AlertDialogCancel = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
247
+ var AlertDialogCancel = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
255
248
  AlertDialogPrimitive.Cancel,
256
249
  {
257
250
  ref,
@@ -264,7 +257,7 @@ var AlertDialogCancel = React23.forwardRef(({ className, ...props }, ref) => /*
264
257
  }
265
258
  ));
266
259
  AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
267
- var Avatar = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
260
+ var Avatar = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
268
261
  AvatarPrimitive.Root,
269
262
  {
270
263
  ref,
@@ -277,7 +270,7 @@ var Avatar = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
277
270
  }
278
271
  ));
279
272
  Avatar.displayName = AvatarPrimitive.Root.displayName;
280
- var AvatarImage = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
273
+ var AvatarImage = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
281
274
  AvatarPrimitive.Image,
282
275
  {
283
276
  ref,
@@ -286,7 +279,7 @@ var AvatarImage = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
286
279
  }
287
280
  ));
288
281
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
289
- var AvatarFallback = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
282
+ var AvatarFallback = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
290
283
  AvatarPrimitive.Fallback,
291
284
  {
292
285
  ref,
@@ -318,15 +311,15 @@ var badgeVariants = cva(
318
311
  },
319
312
  size: {
320
313
  /** 18px — inline in a title, or a count against a label. */
321
- xs: "h-[18px] px-1.5 text-meta",
314
+ xs: "h-[18px] px-1.5 text-sm",
322
315
  /** 22px — the row chip: a status beside an entity name. */
323
- sm: "h-[22px] px-2 text-meta",
316
+ sm: "h-[22px] px-2 text-sm",
324
317
  /**
325
318
  * Unchanged from before `size` existed: no explicit height, so it sizes
326
319
  * from its text. Every badge already written keeps rendering exactly as
327
320
  * it did — the two tiers above are additions, not a re-baseline.
328
321
  */
329
- default: "px-2.5 py-0.5 text-meta"
322
+ default: "px-2.5 py-0.5 text-sm"
330
323
  }
331
324
  },
332
325
  defaultVariants: {
@@ -345,9 +338,9 @@ function Badge({ className, variant, tone, size, ...props }) {
345
338
  }
346
339
  );
347
340
  }
348
- var Breadcrumb = React23.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("nav", { ref, "aria-label": "breadcrumb", ...props }));
341
+ var Breadcrumb = React24.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("nav", { ref, "aria-label": "breadcrumb", ...props }));
349
342
  Breadcrumb.displayName = "Breadcrumb";
350
- var BreadcrumbList = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
343
+ var BreadcrumbList = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
351
344
  "ol",
352
345
  {
353
346
  ref,
@@ -359,7 +352,7 @@ var BreadcrumbList = React23.forwardRef(({ className, ...props }, ref) => /* @__
359
352
  }
360
353
  ));
361
354
  BreadcrumbList.displayName = "BreadcrumbList";
362
- var BreadcrumbItem = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
355
+ var BreadcrumbItem = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
363
356
  "li",
364
357
  {
365
358
  ref,
@@ -368,7 +361,7 @@ var BreadcrumbItem = React23.forwardRef(({ className, ...props }, ref) => /* @__
368
361
  }
369
362
  ));
370
363
  BreadcrumbItem.displayName = "BreadcrumbItem";
371
- var BreadcrumbLink = React23.forwardRef(({ asChild, className, ...props }, ref) => {
364
+ var BreadcrumbLink = React24.forwardRef(({ asChild, className, ...props }, ref) => {
372
365
  const Comp = asChild ? Slot : "a";
373
366
  return /* @__PURE__ */ jsx(
374
367
  Comp,
@@ -380,7 +373,7 @@ var BreadcrumbLink = React23.forwardRef(({ asChild, className, ...props }, ref)
380
373
  );
381
374
  });
382
375
  BreadcrumbLink.displayName = "BreadcrumbLink";
383
- var BreadcrumbPage = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
376
+ var BreadcrumbPage = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
384
377
  "span",
385
378
  {
386
379
  ref,
@@ -424,7 +417,7 @@ var BreadcrumbEllipsis = ({
424
417
  }
425
418
  );
426
419
  BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
427
- var Separator = React23.forwardRef(
420
+ var Separator = React24.forwardRef(
428
421
  ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx(
429
422
  SeparatorPrimitive.Root,
430
423
  {
@@ -506,7 +499,7 @@ function ButtonGroupSeparator({
506
499
  }
507
500
  );
508
501
  }
509
- var Card = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
502
+ var Card = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
510
503
  "div",
511
504
  {
512
505
  ref,
@@ -518,7 +511,7 @@ var Card = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
518
511
  }
519
512
  ));
520
513
  Card.displayName = "Card";
521
- var CardHeader = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
514
+ var CardHeader = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
522
515
  "div",
523
516
  {
524
517
  ref,
@@ -527,7 +520,7 @@ var CardHeader = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE
527
520
  }
528
521
  ));
529
522
  CardHeader.displayName = "CardHeader";
530
- var CardTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
523
+ var CardTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
531
524
  "div",
532
525
  {
533
526
  ref,
@@ -536,7 +529,7 @@ var CardTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE_
536
529
  }
537
530
  ));
538
531
  CardTitle.displayName = "CardTitle";
539
- var CardDescription = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
532
+ var CardDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
540
533
  "div",
541
534
  {
542
535
  ref,
@@ -545,9 +538,9 @@ var CardDescription = React23.forwardRef(({ className, ...props }, ref) => /* @_
545
538
  }
546
539
  ));
547
540
  CardDescription.displayName = "CardDescription";
548
- var CardContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("p-3 flex-1 overflow-y-auto", className), ...props }));
541
+ var CardContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: cn("p-3 flex-1 overflow-y-auto", className), ...props }));
549
542
  CardContent.displayName = "CardContent";
550
- var CardFooter = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
543
+ var CardFooter = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
551
544
  "div",
552
545
  {
553
546
  ref,
@@ -556,7 +549,7 @@ var CardFooter = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE
556
549
  }
557
550
  ));
558
551
  CardFooter.displayName = "CardFooter";
559
- var CardWithHeader = React23.forwardRef(
552
+ var CardWithHeader = React24.forwardRef(
560
553
  ({ className, title, description, headerClassName, contentClassName, footerClassName, footer, children, ...props }, ref) => /* @__PURE__ */ jsxs(Card, { ref, className, ...props, children: [
561
554
  /* @__PURE__ */ jsxs(CardHeader, { className: `${headerClassName} rounded-t-md`, children: [
562
555
  typeof title === "string" ? /* @__PURE__ */ jsx(CardTitle, { children: title }) : title,
@@ -567,15 +560,15 @@ var CardWithHeader = React23.forwardRef(
567
560
  ] })
568
561
  );
569
562
  CardWithHeader.displayName = "CardWithHeader";
570
- var CarouselContext = React23.createContext(null);
563
+ var CarouselContext = React24.createContext(null);
571
564
  function useCarousel() {
572
- const context = React23.useContext(CarouselContext);
565
+ const context = React24.useContext(CarouselContext);
573
566
  if (!context) {
574
567
  throw new Error("useCarousel must be used within a <Carousel />");
575
568
  }
576
569
  return context;
577
570
  }
578
- var Carousel = React23.forwardRef(
571
+ var Carousel = React24.forwardRef(
579
572
  ({
580
573
  orientation = "horizontal",
581
574
  opts,
@@ -592,22 +585,22 @@ var Carousel = React23.forwardRef(
592
585
  },
593
586
  plugins
594
587
  );
595
- const [canScrollPrev, setCanScrollPrev] = React23.useState(false);
596
- const [canScrollNext, setCanScrollNext] = React23.useState(false);
597
- const onSelect = React23.useCallback((api2) => {
588
+ const [canScrollPrev, setCanScrollPrev] = React24.useState(false);
589
+ const [canScrollNext, setCanScrollNext] = React24.useState(false);
590
+ const onSelect = React24.useCallback((api2) => {
598
591
  if (!api2) {
599
592
  return;
600
593
  }
601
594
  setCanScrollPrev(api2.canScrollPrev());
602
595
  setCanScrollNext(api2.canScrollNext());
603
596
  }, []);
604
- const scrollPrev = React23.useCallback(() => {
597
+ const scrollPrev = React24.useCallback(() => {
605
598
  api?.scrollPrev();
606
599
  }, [api]);
607
- const scrollNext = React23.useCallback(() => {
600
+ const scrollNext = React24.useCallback(() => {
608
601
  api?.scrollNext();
609
602
  }, [api]);
610
- const handleKeyDown = React23.useCallback(
603
+ const handleKeyDown = React24.useCallback(
611
604
  (event) => {
612
605
  if (event.key === "ArrowLeft") {
613
606
  event.preventDefault();
@@ -619,13 +612,13 @@ var Carousel = React23.forwardRef(
619
612
  },
620
613
  [scrollPrev, scrollNext]
621
614
  );
622
- React23.useEffect(() => {
615
+ React24.useEffect(() => {
623
616
  if (!api || !setApi) {
624
617
  return;
625
618
  }
626
619
  setApi(api);
627
620
  }, [api, setApi]);
628
- React23.useEffect(() => {
621
+ React24.useEffect(() => {
629
622
  if (!api) {
630
623
  return;
631
624
  }
@@ -666,7 +659,7 @@ var Carousel = React23.forwardRef(
666
659
  }
667
660
  );
668
661
  Carousel.displayName = "Carousel";
669
- var CarouselContent = React23.forwardRef(({ className, ...props }, ref) => {
662
+ var CarouselContent = React24.forwardRef(({ className, ...props }, ref) => {
670
663
  const { carouselRef, orientation } = useCarousel();
671
664
  return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
672
665
  "div",
@@ -682,7 +675,7 @@ var CarouselContent = React23.forwardRef(({ className, ...props }, ref) => {
682
675
  ) });
683
676
  });
684
677
  CarouselContent.displayName = "CarouselContent";
685
- var CarouselItem = React23.forwardRef(({ className, ...props }, ref) => {
678
+ var CarouselItem = React24.forwardRef(({ className, ...props }, ref) => {
686
679
  const { orientation } = useCarousel();
687
680
  return /* @__PURE__ */ jsx(
688
681
  "div",
@@ -700,7 +693,7 @@ var CarouselItem = React23.forwardRef(({ className, ...props }, ref) => {
700
693
  );
701
694
  });
702
695
  CarouselItem.displayName = "CarouselItem";
703
- var CarouselPrevious = React23.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
696
+ var CarouselPrevious = React24.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
704
697
  const { orientation, scrollPrev, canScrollPrev } = useCarousel();
705
698
  return /* @__PURE__ */ jsxs(
706
699
  Button,
@@ -724,7 +717,7 @@ var CarouselPrevious = React23.forwardRef(({ className, variant = "outline", siz
724
717
  );
725
718
  });
726
719
  CarouselPrevious.displayName = "CarouselPrevious";
727
- var CarouselNext = React23.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
720
+ var CarouselNext = React24.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
728
721
  const { orientation, scrollNext, canScrollNext } = useCarousel();
729
722
  return /* @__PURE__ */ jsxs(
730
723
  Button,
@@ -752,7 +745,7 @@ var Dialog = DialogPrimitive.Root;
752
745
  var DialogTrigger = DialogPrimitive.Trigger;
753
746
  var DialogPortal = DialogPrimitive.Portal;
754
747
  var DialogClose = DialogPrimitive.Close;
755
- var DialogOverlay = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
748
+ var DialogOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
756
749
  DialogPrimitive.Overlay,
757
750
  {
758
751
  ref,
@@ -764,7 +757,7 @@ var DialogOverlay = React23.forwardRef(({ className, ...props }, ref) => /* @__P
764
757
  }
765
758
  ));
766
759
  DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
767
- var DialogContent = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [
760
+ var DialogContent = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [
768
761
  /* @__PURE__ */ jsx(DialogOverlay, {}),
769
762
  /* @__PURE__ */ jsxs(
770
763
  DialogPrimitive.Content,
@@ -814,7 +807,7 @@ var DialogFooter = ({
814
807
  }
815
808
  );
816
809
  DialogFooter.displayName = "DialogFooter";
817
- var DialogTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
810
+ var DialogTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
818
811
  DialogPrimitive.Title,
819
812
  {
820
813
  ref,
@@ -826,7 +819,7 @@ var DialogTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
826
819
  }
827
820
  ));
828
821
  DialogTitle.displayName = DialogPrimitive.Title.displayName;
829
- var DialogDescription = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
822
+ var DialogDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
830
823
  DialogPrimitive.Description,
831
824
  {
832
825
  ref,
@@ -835,7 +828,7 @@ var DialogDescription = React23.forwardRef(({ className, ...props }, ref) => /*
835
828
  }
836
829
  ));
837
830
  DialogDescription.displayName = DialogPrimitive.Description.displayName;
838
- var Command = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
831
+ var Command = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
839
832
  Command$1,
840
833
  {
841
834
  ref,
@@ -850,7 +843,7 @@ Command.displayName = Command$1.displayName;
850
843
  var CommandDialog = ({ children, ...props }) => {
851
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 }) }) });
852
845
  };
853
- var CommandInput = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
846
+ var CommandInput = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
854
847
  /* @__PURE__ */ jsx(Search, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
855
848
  /* @__PURE__ */ jsx(
856
849
  Command$1.Input,
@@ -865,7 +858,7 @@ var CommandInput = React23.forwardRef(({ className, ...props }, ref) => /* @__PU
865
858
  )
866
859
  ] }));
867
860
  CommandInput.displayName = Command$1.Input.displayName;
868
- var CommandList = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
861
+ var CommandList = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
869
862
  Command$1.List,
870
863
  {
871
864
  ref,
@@ -874,7 +867,7 @@ var CommandList = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
874
867
  }
875
868
  ));
876
869
  CommandList.displayName = Command$1.List.displayName;
877
- var CommandEmpty = React23.forwardRef((props, ref) => /* @__PURE__ */ jsx(
870
+ var CommandEmpty = React24.forwardRef((props, ref) => /* @__PURE__ */ jsx(
878
871
  Command$1.Empty,
879
872
  {
880
873
  ref,
@@ -883,19 +876,19 @@ var CommandEmpty = React23.forwardRef((props, ref) => /* @__PURE__ */ jsx(
883
876
  }
884
877
  ));
885
878
  CommandEmpty.displayName = Command$1.Empty.displayName;
886
- var CommandGroup = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
879
+ var CommandGroup = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
887
880
  Command$1.Group,
888
881
  {
889
882
  ref,
890
883
  className: cn(
891
- "overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-meta [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
884
+ "overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-sm [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",
892
885
  className
893
886
  ),
894
887
  ...props
895
888
  }
896
889
  ));
897
890
  CommandGroup.displayName = Command$1.Group.displayName;
898
- var CommandSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
891
+ var CommandSeparator = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
899
892
  Command$1.Separator,
900
893
  {
901
894
  ref,
@@ -904,7 +897,7 @@ var CommandSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @
904
897
  }
905
898
  ));
906
899
  CommandSeparator.displayName = Command$1.Separator.displayName;
907
- var CommandItem = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
900
+ var CommandItem = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
908
901
  Command$1.Item,
909
902
  {
910
903
  ref,
@@ -924,7 +917,7 @@ var CommandShortcut = ({
924
917
  "span",
925
918
  {
926
919
  className: cn(
927
- "ml-auto text-meta tracking-widest text-muted-foreground",
920
+ "ml-auto text-sm tracking-widest text-muted-foreground",
928
921
  className
929
922
  ),
930
923
  ...props
@@ -938,7 +931,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive.Group;
938
931
  var DropdownMenuPortal = DropdownMenuPrimitive.Portal;
939
932
  var DropdownMenuSub = DropdownMenuPrimitive.Sub;
940
933
  var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
941
- var DropdownMenuSubTrigger = React23.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
934
+ var DropdownMenuSubTrigger = React24.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
942
935
  DropdownMenuPrimitive.SubTrigger,
943
936
  {
944
937
  ref,
@@ -955,7 +948,7 @@ var DropdownMenuSubTrigger = React23.forwardRef(({ className, inset, children, .
955
948
  }
956
949
  ));
957
950
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
958
- var DropdownMenuSubContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
951
+ var DropdownMenuSubContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
959
952
  DropdownMenuPrimitive.SubContent,
960
953
  {
961
954
  ref,
@@ -967,7 +960,7 @@ var DropdownMenuSubContent = React23.forwardRef(({ className, ...props }, ref) =
967
960
  }
968
961
  ));
969
962
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
970
- var DropdownMenuContent = React23.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
963
+ var DropdownMenuContent = React24.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
971
964
  DropdownMenuPrimitive.Content,
972
965
  {
973
966
  ref,
@@ -981,7 +974,7 @@ var DropdownMenuContent = React23.forwardRef(({ className, sideOffset = 4, ...pr
981
974
  }
982
975
  ) }));
983
976
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
984
- var DropdownMenuItem = React23.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
977
+ var DropdownMenuItem = React24.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
985
978
  DropdownMenuPrimitive.Item,
986
979
  {
987
980
  ref,
@@ -994,7 +987,7 @@ var DropdownMenuItem = React23.forwardRef(({ className, inset, ...props }, ref)
994
987
  }
995
988
  ));
996
989
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
997
- var DropdownMenuCheckboxItem = React23.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
990
+ var DropdownMenuCheckboxItem = React24.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
998
991
  DropdownMenuPrimitive.CheckboxItem,
999
992
  {
1000
993
  ref,
@@ -1011,7 +1004,7 @@ var DropdownMenuCheckboxItem = React23.forwardRef(({ className, children, checke
1011
1004
  }
1012
1005
  ));
1013
1006
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
1014
- var DropdownMenuRadioItem = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1007
+ var DropdownMenuRadioItem = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1015
1008
  DropdownMenuPrimitive.RadioItem,
1016
1009
  {
1017
1010
  ref,
@@ -1027,7 +1020,7 @@ var DropdownMenuRadioItem = React23.forwardRef(({ className, children, ...props
1027
1020
  }
1028
1021
  ));
1029
1022
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
1030
- var DropdownMenuLabel = React23.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1023
+ var DropdownMenuLabel = React24.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1031
1024
  DropdownMenuPrimitive.Label,
1032
1025
  {
1033
1026
  ref,
@@ -1040,7 +1033,7 @@ var DropdownMenuLabel = React23.forwardRef(({ className, inset, ...props }, ref)
1040
1033
  }
1041
1034
  ));
1042
1035
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
1043
- var DropdownMenuSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1036
+ var DropdownMenuSeparator = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1044
1037
  DropdownMenuPrimitive.Separator,
1045
1038
  {
1046
1039
  ref,
@@ -1056,7 +1049,7 @@ var DropdownMenuShortcut = ({
1056
1049
  return /* @__PURE__ */ jsx(
1057
1050
  "span",
1058
1051
  {
1059
- className: cn("ml-auto text-meta tracking-widest opacity-60", className),
1052
+ className: cn("ml-auto text-sm tracking-widest opacity-60", className),
1060
1053
  ...props
1061
1054
  }
1062
1055
  );
@@ -1064,7 +1057,7 @@ var DropdownMenuShortcut = ({
1064
1057
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
1065
1058
  var HoverCard = HoverCardPrimitive.Root;
1066
1059
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
1067
- var HoverCardContent = React23.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
1060
+ var HoverCardContent = React24.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
1068
1061
  HoverCardPrimitive.Content,
1069
1062
  {
1070
1063
  ref,
@@ -1225,7 +1218,7 @@ function ItemDescription({ className, ...props }) {
1225
1218
  className: cn(
1226
1219
  "text-muted-foreground line-clamp-2 text-balance font-normal leading-normal",
1227
1220
  // A dense row's subtitle is one line of meta, not a wrapped paragraph.
1228
- "group-data-[size=xs]/item:line-clamp-1 group-data-[size=xs]/item:text-meta",
1221
+ "group-data-[size=xs]/item:line-clamp-1 group-data-[size=xs]/item:text-sm",
1229
1222
  "[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",
1230
1223
  className
1231
1224
  ),
@@ -1275,7 +1268,7 @@ function Kbd({ className, ...props }) {
1275
1268
  {
1276
1269
  "data-slot": "kbd",
1277
1270
  className: cn(
1278
- "bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 select-none items-center justify-center gap-1 rounded-control px-1 font-sans text-meta font-medium",
1271
+ "bg-muted text-muted-foreground pointer-events-none inline-flex h-5 w-fit min-w-5 select-none items-center justify-center gap-1 rounded-control px-1 font-sans text-sm font-medium",
1279
1272
  "[&_svg:not([class*='size-'])]:size-3",
1280
1273
  "[[data-slot=tooltip-content]_&]:bg-background/20 [[data-slot=tooltip-content]_&]:text-background dark:[[data-slot=tooltip-content]_&]:bg-background/10",
1281
1274
  className
@@ -1294,6 +1287,32 @@ function KbdGroup({ className, ...props }) {
1294
1287
  }
1295
1288
  );
1296
1289
  }
1290
+ var linkVariants = cva(
1291
+ "underline-offset-4 transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 rounded-[2px]",
1292
+ {
1293
+ variants: {
1294
+ variant: {
1295
+ default: "text-primary hover:underline",
1296
+ underlined: "text-primary underline",
1297
+ quiet: "text-muted-foreground hover:text-foreground hover:underline"
1298
+ }
1299
+ },
1300
+ defaultVariants: { variant: "default" }
1301
+ }
1302
+ );
1303
+ var Link = React24.forwardRef(
1304
+ ({ className, variant, external, target, rel, ...props }, ref) => /* @__PURE__ */ jsx(
1305
+ "a",
1306
+ {
1307
+ ref,
1308
+ className: cn(linkVariants({ variant }), className),
1309
+ target: external ? "_blank" : target,
1310
+ rel: external ? "noreferrer noopener" : rel,
1311
+ ...props
1312
+ }
1313
+ )
1314
+ );
1315
+ Link.displayName = "Link";
1297
1316
  function MenubarMenu({
1298
1317
  ...props
1299
1318
  }) {
@@ -1319,7 +1338,7 @@ function MenubarSub({
1319
1338
  }) {
1320
1339
  return /* @__PURE__ */ jsx(MenubarPrimitive.Sub, { "data-slot": "menubar-sub", ...props });
1321
1340
  }
1322
- var Menubar = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1341
+ var Menubar = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1323
1342
  MenubarPrimitive.Root,
1324
1343
  {
1325
1344
  ref,
@@ -1331,7 +1350,7 @@ var Menubar = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__
1331
1350
  }
1332
1351
  ));
1333
1352
  Menubar.displayName = MenubarPrimitive.Root.displayName;
1334
- var MenubarTrigger = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1353
+ var MenubarTrigger = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1335
1354
  MenubarPrimitive.Trigger,
1336
1355
  {
1337
1356
  ref,
@@ -1343,7 +1362,7 @@ var MenubarTrigger = React23.forwardRef(({ className, ...props }, ref) => /* @__
1343
1362
  }
1344
1363
  ));
1345
1364
  MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
1346
- var MenubarSubTrigger = React23.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1365
+ var MenubarSubTrigger = React24.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1347
1366
  MenubarPrimitive.SubTrigger,
1348
1367
  {
1349
1368
  ref,
@@ -1360,7 +1379,7 @@ var MenubarSubTrigger = React23.forwardRef(({ className, inset, children, ...pro
1360
1379
  }
1361
1380
  ));
1362
1381
  MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
1363
- var MenubarSubContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1382
+ var MenubarSubContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1364
1383
  MenubarPrimitive.SubContent,
1365
1384
  {
1366
1385
  ref,
@@ -1372,7 +1391,7 @@ var MenubarSubContent = React23.forwardRef(({ className, ...props }, ref) => /*
1372
1391
  }
1373
1392
  ));
1374
1393
  MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
1375
- var MenubarContent = React23.forwardRef(
1394
+ var MenubarContent = React24.forwardRef(
1376
1395
  ({ className, align = "start", alignOffset = -4, sideOffset = 8, ...props }, ref) => /* @__PURE__ */ jsx(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx(
1377
1396
  MenubarPrimitive.Content,
1378
1397
  {
@@ -1389,7 +1408,7 @@ var MenubarContent = React23.forwardRef(
1389
1408
  ) })
1390
1409
  );
1391
1410
  MenubarContent.displayName = MenubarPrimitive.Content.displayName;
1392
- var MenubarItem = React23.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1411
+ var MenubarItem = React24.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1393
1412
  MenubarPrimitive.Item,
1394
1413
  {
1395
1414
  ref,
@@ -1402,7 +1421,7 @@ var MenubarItem = React23.forwardRef(({ className, inset, ...props }, ref) => /*
1402
1421
  }
1403
1422
  ));
1404
1423
  MenubarItem.displayName = MenubarPrimitive.Item.displayName;
1405
- var MenubarCheckboxItem = React23.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
1424
+ var MenubarCheckboxItem = React24.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
1406
1425
  MenubarPrimitive.CheckboxItem,
1407
1426
  {
1408
1427
  ref,
@@ -1419,7 +1438,7 @@ var MenubarCheckboxItem = React23.forwardRef(({ className, children, checked, ..
1419
1438
  }
1420
1439
  ));
1421
1440
  MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
1422
- var MenubarRadioItem = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1441
+ var MenubarRadioItem = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1423
1442
  MenubarPrimitive.RadioItem,
1424
1443
  {
1425
1444
  ref,
@@ -1435,7 +1454,7 @@ var MenubarRadioItem = React23.forwardRef(({ className, children, ...props }, re
1435
1454
  }
1436
1455
  ));
1437
1456
  MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
1438
- var MenubarLabel = React23.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1457
+ var MenubarLabel = React24.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
1439
1458
  MenubarPrimitive.Label,
1440
1459
  {
1441
1460
  ref,
@@ -1448,7 +1467,7 @@ var MenubarLabel = React23.forwardRef(({ className, inset, ...props }, ref) => /
1448
1467
  }
1449
1468
  ));
1450
1469
  MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
1451
- var MenubarSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1470
+ var MenubarSeparator = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1452
1471
  MenubarPrimitive.Separator,
1453
1472
  {
1454
1473
  ref,
@@ -1465,7 +1484,7 @@ var MenubarShortcut = ({
1465
1484
  "span",
1466
1485
  {
1467
1486
  className: cn(
1468
- "ml-auto text-meta tracking-widest text-muted-foreground",
1487
+ "ml-auto text-sm tracking-widest text-muted-foreground",
1469
1488
  className
1470
1489
  ),
1471
1490
  ...props
@@ -1473,7 +1492,7 @@ var MenubarShortcut = ({
1473
1492
  );
1474
1493
  };
1475
1494
  MenubarShortcut.displayname = "MenubarShortcut";
1476
- var NavigationMenu = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1495
+ var NavigationMenu = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1477
1496
  NavigationMenuPrimitive.Root,
1478
1497
  {
1479
1498
  ref,
@@ -1489,7 +1508,7 @@ var NavigationMenu = React23.forwardRef(({ className, children, ...props }, ref)
1489
1508
  }
1490
1509
  ));
1491
1510
  NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
1492
- var NavigationMenuList = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1511
+ var NavigationMenuList = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1493
1512
  NavigationMenuPrimitive.List,
1494
1513
  {
1495
1514
  ref,
@@ -1505,7 +1524,7 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
1505
1524
  var navigationMenuTriggerStyle = cva(
1506
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"
1507
1526
  );
1508
- var NavigationMenuTrigger = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1527
+ var NavigationMenuTrigger = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1509
1528
  NavigationMenuPrimitive.Trigger,
1510
1529
  {
1511
1530
  ref,
@@ -1525,7 +1544,7 @@ var NavigationMenuTrigger = React23.forwardRef(({ className, children, ...props
1525
1544
  }
1526
1545
  ));
1527
1546
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
1528
- var NavigationMenuContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1547
+ var NavigationMenuContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1529
1548
  NavigationMenuPrimitive.Content,
1530
1549
  {
1531
1550
  ref,
@@ -1538,7 +1557,7 @@ var NavigationMenuContent = React23.forwardRef(({ className, ...props }, ref) =>
1538
1557
  ));
1539
1558
  NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
1540
1559
  var NavigationMenuLink = NavigationMenuPrimitive.Link;
1541
- var NavigationMenuViewport = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx(
1560
+ var NavigationMenuViewport = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx(
1542
1561
  NavigationMenuPrimitive.Viewport,
1543
1562
  {
1544
1563
  className: cn(
@@ -1550,7 +1569,7 @@ var NavigationMenuViewport = React23.forwardRef(({ className, ...props }, ref) =
1550
1569
  }
1551
1570
  ) }));
1552
1571
  NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
1553
- var NavigationMenuIndicator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1572
+ var NavigationMenuIndicator = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1554
1573
  NavigationMenuPrimitive.Indicator,
1555
1574
  {
1556
1575
  ref,
@@ -1573,7 +1592,7 @@ var Pagination = ({ className, ...props }) => /* @__PURE__ */ jsx(
1573
1592
  }
1574
1593
  );
1575
1594
  Pagination.displayName = "Pagination";
1576
- var PaginationContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1595
+ var PaginationContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1577
1596
  "ul",
1578
1597
  {
1579
1598
  ref,
@@ -1582,7 +1601,7 @@ var PaginationContent = React23.forwardRef(({ className, ...props }, ref) => /*
1582
1601
  }
1583
1602
  ));
1584
1603
  PaginationContent.displayName = "PaginationContent";
1585
- var PaginationItem = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, className: cn("", className), ...props }));
1604
+ var PaginationItem = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, className: cn("", className), ...props }));
1586
1605
  PaginationItem.displayName = "PaginationItem";
1587
1606
  var PaginationLink = ({
1588
1607
  className,
@@ -1656,7 +1675,7 @@ var PaginationEllipsis = ({
1656
1675
  PaginationEllipsis.displayName = "PaginationEllipsis";
1657
1676
  var Popover = PopoverPrimitive.Root;
1658
1677
  var PopoverTrigger = PopoverPrimitive.Trigger;
1659
- var PopoverContent = React23.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
1678
+ var PopoverContent = React24.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx(
1660
1679
  PopoverPrimitive.Content,
1661
1680
  {
1662
1681
  ref,
@@ -1670,7 +1689,7 @@ var PopoverContent = React23.forwardRef(({ className, align = "center", sideOffs
1670
1689
  }
1671
1690
  ) }));
1672
1691
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
1673
- var Progress = React23.forwardRef(({ className, value, size = "default", ...props }, ref) => /* @__PURE__ */ jsx(
1692
+ var Progress = React24.forwardRef(({ className, value, size = "default", ...props }, ref) => /* @__PURE__ */ jsx(
1674
1693
  ProgressPrimitive.Root,
1675
1694
  {
1676
1695
  ref,
@@ -1714,7 +1733,7 @@ var ResizableHandle = ({
1714
1733
  /* @__PURE__ */ jsx("div", { className: "z-10 h-6 w-[3px] rounded-full bg-muted-foreground/40" })
1715
1734
  }
1716
1735
  );
1717
- var ScrollArea = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1736
+ var ScrollArea = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
1718
1737
  ScrollAreaPrimitive.Root,
1719
1738
  {
1720
1739
  ref,
@@ -1728,7 +1747,7 @@ var ScrollArea = React23.forwardRef(({ className, children, ...props }, ref) =>
1728
1747
  }
1729
1748
  ));
1730
1749
  ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
1731
- var ScrollBar = React23.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(
1750
+ var ScrollBar = React24.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(
1732
1751
  ScrollAreaPrimitive.ScrollAreaScrollbar,
1733
1752
  {
1734
1753
  ref,
@@ -1748,7 +1767,7 @@ var Sheet = DialogPrimitive.Root;
1748
1767
  var SheetTrigger = DialogPrimitive.Trigger;
1749
1768
  var SheetClose = DialogPrimitive.Close;
1750
1769
  var SheetPortal = DialogPrimitive.Portal;
1751
- var SheetOverlay = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1770
+ var SheetOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1752
1771
  DialogPrimitive.Overlay,
1753
1772
  {
1754
1773
  className: cn(
@@ -1776,7 +1795,7 @@ var sheetVariants = cva(
1776
1795
  }
1777
1796
  }
1778
1797
  );
1779
- var SheetContent = React23.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(SheetPortal, { children: [
1798
+ var SheetContent = React24.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(SheetPortal, { children: [
1780
1799
  /* @__PURE__ */ jsx(SheetOverlay, {}),
1781
1800
  /* @__PURE__ */ jsxs(
1782
1801
  DialogPrimitive.Content,
@@ -1823,7 +1842,7 @@ var SheetFooter = ({
1823
1842
  }
1824
1843
  );
1825
1844
  SheetFooter.displayName = "SheetFooter";
1826
- var SheetTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1845
+ var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1827
1846
  DialogPrimitive.Title,
1828
1847
  {
1829
1848
  ref,
@@ -1832,7 +1851,7 @@ var SheetTitle = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE
1832
1851
  }
1833
1852
  ));
1834
1853
  SheetTitle.displayName = DialogPrimitive.Title.displayName;
1835
- var SheetDescription = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1854
+ var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
1836
1855
  DialogPrimitive.Description,
1837
1856
  {
1838
1857
  ref,
@@ -1843,8 +1862,8 @@ var SheetDescription = React23.forwardRef(({ className, ...props }, ref) => /* @
1843
1862
  SheetDescription.displayName = DialogPrimitive.Description.displayName;
1844
1863
  var MOBILE_BREAKPOINT = 768;
1845
1864
  function useIsMobile() {
1846
- const [isMobile, setIsMobile] = React23.useState(void 0);
1847
- React23.useEffect(() => {
1865
+ const [isMobile, setIsMobile] = React24.useState(void 0);
1866
+ React24.useEffect(() => {
1848
1867
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
1849
1868
  const onChange = () => {
1850
1869
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -1870,7 +1889,7 @@ function Skeleton({
1870
1889
  var TooltipProvider = TooltipPrimitive.Provider;
1871
1890
  var Tooltip = TooltipPrimitive.Root;
1872
1891
  var TooltipTrigger = TooltipPrimitive.Trigger;
1873
- var TooltipContent = React23.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
1892
+ var TooltipContent = React24.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(
1874
1893
  TooltipPrimitive.Content,
1875
1894
  {
1876
1895
  ref,
@@ -1889,15 +1908,15 @@ var SIDEBAR_WIDTH = "16rem";
1889
1908
  var SIDEBAR_WIDTH_MOBILE = "18rem";
1890
1909
  var SIDEBAR_WIDTH_ICON = "3rem";
1891
1910
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
1892
- var SidebarContext = React23.createContext(null);
1911
+ var SidebarContext = React24.createContext(null);
1893
1912
  function useSidebar() {
1894
- const context = React23.useContext(SidebarContext);
1913
+ const context = React24.useContext(SidebarContext);
1895
1914
  if (!context) {
1896
1915
  throw new Error("useSidebar must be used within a SidebarProvider.");
1897
1916
  }
1898
1917
  return context;
1899
1918
  }
1900
- var SidebarProvider = React23.forwardRef(
1919
+ var SidebarProvider = React24.forwardRef(
1901
1920
  ({
1902
1921
  defaultOpen = true,
1903
1922
  open: openProp,
@@ -1908,10 +1927,10 @@ var SidebarProvider = React23.forwardRef(
1908
1927
  ...props
1909
1928
  }, ref) => {
1910
1929
  const isMobile = useIsMobile();
1911
- const [openMobile, setOpenMobile] = React23.useState(false);
1912
- const [_open, _setOpen] = React23.useState(defaultOpen);
1930
+ const [openMobile, setOpenMobile] = React24.useState(false);
1931
+ const [_open, _setOpen] = React24.useState(defaultOpen);
1913
1932
  const open = openProp ?? _open;
1914
- const setOpen = React23.useCallback(
1933
+ const setOpen = React24.useCallback(
1915
1934
  (value) => {
1916
1935
  const openState = typeof value === "function" ? value(open) : value;
1917
1936
  if (setOpenProp) {
@@ -1923,10 +1942,10 @@ var SidebarProvider = React23.forwardRef(
1923
1942
  },
1924
1943
  [setOpenProp, open]
1925
1944
  );
1926
- const toggleSidebar = React23.useCallback(() => {
1945
+ const toggleSidebar = React24.useCallback(() => {
1927
1946
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
1928
1947
  }, [isMobile, setOpen, setOpenMobile]);
1929
- React23.useEffect(() => {
1948
+ React24.useEffect(() => {
1930
1949
  const handleKeyDown = (event) => {
1931
1950
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
1932
1951
  event.preventDefault();
@@ -1937,7 +1956,7 @@ var SidebarProvider = React23.forwardRef(
1937
1956
  return () => window.removeEventListener("keydown", handleKeyDown);
1938
1957
  }, [toggleSidebar]);
1939
1958
  const state = open ? "expanded" : "collapsed";
1940
- const contextValue = React23.useMemo(
1959
+ const contextValue = React24.useMemo(
1941
1960
  () => ({
1942
1961
  state,
1943
1962
  open,
@@ -1969,7 +1988,7 @@ var SidebarProvider = React23.forwardRef(
1969
1988
  }
1970
1989
  );
1971
1990
  SidebarProvider.displayName = "SidebarProvider";
1972
- var Sidebar = React23.forwardRef(
1991
+ var Sidebar = React24.forwardRef(
1973
1992
  ({
1974
1993
  side = "left",
1975
1994
  variant = "sidebar",
@@ -2062,7 +2081,7 @@ var Sidebar = React23.forwardRef(
2062
2081
  }
2063
2082
  );
2064
2083
  Sidebar.displayName = "Sidebar";
2065
- var SidebarTrigger = React23.forwardRef(({ className, onClick, ...props }, ref) => {
2084
+ var SidebarTrigger = React24.forwardRef(({ className, onClick, ...props }, ref) => {
2066
2085
  const { toggleSidebar } = useSidebar();
2067
2086
  return /* @__PURE__ */ jsxs(
2068
2087
  Button,
@@ -2085,7 +2104,7 @@ var SidebarTrigger = React23.forwardRef(({ className, onClick, ...props }, ref)
2085
2104
  );
2086
2105
  });
2087
2106
  SidebarTrigger.displayName = "SidebarTrigger";
2088
- var SidebarRail = React23.forwardRef(({ className, ...props }, ref) => {
2107
+ var SidebarRail = React24.forwardRef(({ className, ...props }, ref) => {
2089
2108
  const { toggleSidebar } = useSidebar();
2090
2109
  return /* @__PURE__ */ jsx(
2091
2110
  "button",
@@ -2110,7 +2129,7 @@ var SidebarRail = React23.forwardRef(({ className, ...props }, ref) => {
2110
2129
  );
2111
2130
  });
2112
2131
  SidebarRail.displayName = "SidebarRail";
2113
- var SidebarInset = React23.forwardRef(({ className, ...props }, ref) => {
2132
+ var SidebarInset = React24.forwardRef(({ className, ...props }, ref) => {
2114
2133
  return /* @__PURE__ */ jsx(
2115
2134
  "main",
2116
2135
  {
@@ -2125,7 +2144,7 @@ var SidebarInset = React23.forwardRef(({ className, ...props }, ref) => {
2125
2144
  );
2126
2145
  });
2127
2146
  SidebarInset.displayName = "SidebarInset";
2128
- var SidebarInput = React23.forwardRef(({ className, type, ...props }, ref) => {
2147
+ var SidebarInput = React24.forwardRef(({ className, type, ...props }, ref) => {
2129
2148
  return /* @__PURE__ */ jsx(
2130
2149
  "input",
2131
2150
  {
@@ -2143,7 +2162,7 @@ var SidebarInput = React23.forwardRef(({ className, type, ...props }, ref) => {
2143
2162
  );
2144
2163
  });
2145
2164
  SidebarInput.displayName = "SidebarInput";
2146
- var SidebarHeader = React23.forwardRef(({ className, ...props }, ref) => {
2165
+ var SidebarHeader = React24.forwardRef(({ className, ...props }, ref) => {
2147
2166
  return /* @__PURE__ */ jsx(
2148
2167
  "div",
2149
2168
  {
@@ -2155,7 +2174,7 @@ var SidebarHeader = React23.forwardRef(({ className, ...props }, ref) => {
2155
2174
  );
2156
2175
  });
2157
2176
  SidebarHeader.displayName = "SidebarHeader";
2158
- var SidebarFooter = React23.forwardRef(({ className, ...props }, ref) => {
2177
+ var SidebarFooter = React24.forwardRef(({ className, ...props }, ref) => {
2159
2178
  return /* @__PURE__ */ jsx(
2160
2179
  "div",
2161
2180
  {
@@ -2167,7 +2186,7 @@ var SidebarFooter = React23.forwardRef(({ className, ...props }, ref) => {
2167
2186
  );
2168
2187
  });
2169
2188
  SidebarFooter.displayName = "SidebarFooter";
2170
- var SidebarSeparator = React23.forwardRef(({ className, ...props }, ref) => {
2189
+ var SidebarSeparator = React24.forwardRef(({ className, ...props }, ref) => {
2171
2190
  return /* @__PURE__ */ jsx(
2172
2191
  Separator,
2173
2192
  {
@@ -2179,7 +2198,7 @@ var SidebarSeparator = React23.forwardRef(({ className, ...props }, ref) => {
2179
2198
  );
2180
2199
  });
2181
2200
  SidebarSeparator.displayName = "SidebarSeparator";
2182
- var SidebarContent = React23.forwardRef(({ className, ...props }, ref) => {
2201
+ var SidebarContent = React24.forwardRef(({ className, ...props }, ref) => {
2183
2202
  return /* @__PURE__ */ jsx(
2184
2203
  "div",
2185
2204
  {
@@ -2194,7 +2213,7 @@ var SidebarContent = React23.forwardRef(({ className, ...props }, ref) => {
2194
2213
  );
2195
2214
  });
2196
2215
  SidebarContent.displayName = "SidebarContent";
2197
- var SidebarGroup = React23.forwardRef(({ className, ...props }, ref) => {
2216
+ var SidebarGroup = React24.forwardRef(({ className, ...props }, ref) => {
2198
2217
  return /* @__PURE__ */ jsx(
2199
2218
  "div",
2200
2219
  {
@@ -2206,7 +2225,7 @@ var SidebarGroup = React23.forwardRef(({ className, ...props }, ref) => {
2206
2225
  );
2207
2226
  });
2208
2227
  SidebarGroup.displayName = "SidebarGroup";
2209
- var SidebarGroupLabel = React23.forwardRef(({ className, asChild = false, ...props }, ref) => {
2228
+ var SidebarGroupLabel = React24.forwardRef(({ className, asChild = false, ...props }, ref) => {
2210
2229
  const Comp = asChild ? Slot : "div";
2211
2230
  return /* @__PURE__ */ jsx(
2212
2231
  Comp,
@@ -2214,7 +2233,7 @@ var SidebarGroupLabel = React23.forwardRef(({ className, asChild = false, ...pro
2214
2233
  ref,
2215
2234
  "data-sidebar": "group-label",
2216
2235
  className: cn(
2217
- "flex h-8 shrink-0 items-center rounded-md px-2 text-meta font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
2236
+ "flex h-8 shrink-0 items-center rounded-md px-2 text-sm font-medium text-sidebar-foreground/70 outline-none ring-sidebar-ring transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
2218
2237
  "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",
2219
2238
  className
2220
2239
  ),
@@ -2223,7 +2242,7 @@ var SidebarGroupLabel = React23.forwardRef(({ className, asChild = false, ...pro
2223
2242
  );
2224
2243
  });
2225
2244
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
2226
- var SidebarGroupAction = React23.forwardRef(({ className, asChild = false, ...props }, ref) => {
2245
+ var SidebarGroupAction = React24.forwardRef(({ className, asChild = false, ...props }, ref) => {
2227
2246
  const Comp = asChild ? Slot : "button";
2228
2247
  return /* @__PURE__ */ jsx(
2229
2248
  Comp,
@@ -2242,7 +2261,7 @@ var SidebarGroupAction = React23.forwardRef(({ className, asChild = false, ...pr
2242
2261
  );
2243
2262
  });
2244
2263
  SidebarGroupAction.displayName = "SidebarGroupAction";
2245
- var SidebarGroupContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2264
+ var SidebarGroupContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2246
2265
  "div",
2247
2266
  {
2248
2267
  ref,
@@ -2252,7 +2271,7 @@ var SidebarGroupContent = React23.forwardRef(({ className, ...props }, ref) => /
2252
2271
  }
2253
2272
  ));
2254
2273
  SidebarGroupContent.displayName = "SidebarGroupContent";
2255
- var SidebarMenu = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2274
+ var SidebarMenu = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2256
2275
  "ul",
2257
2276
  {
2258
2277
  ref,
@@ -2262,7 +2281,7 @@ var SidebarMenu = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
2262
2281
  }
2263
2282
  ));
2264
2283
  SidebarMenu.displayName = "SidebarMenu";
2265
- var SidebarMenuItem = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2284
+ var SidebarMenuItem = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2266
2285
  "li",
2267
2286
  {
2268
2287
  ref,
@@ -2292,7 +2311,7 @@ var sidebarMenuButtonVariants = cva(
2292
2311
  }
2293
2312
  }
2294
2313
  );
2295
- var SidebarMenuButton = React23.forwardRef(
2314
+ var SidebarMenuButton = React24.forwardRef(
2296
2315
  ({
2297
2316
  asChild = false,
2298
2317
  isActive = false,
@@ -2338,7 +2357,7 @@ var SidebarMenuButton = React23.forwardRef(
2338
2357
  }
2339
2358
  );
2340
2359
  SidebarMenuButton.displayName = "SidebarMenuButton";
2341
- var SidebarMenuAction = React23.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
2360
+ var SidebarMenuAction = React24.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
2342
2361
  const Comp = asChild ? Slot : "button";
2343
2362
  return /* @__PURE__ */ jsx(
2344
2363
  Comp,
@@ -2361,13 +2380,13 @@ var SidebarMenuAction = React23.forwardRef(({ className, asChild = false, showOn
2361
2380
  );
2362
2381
  });
2363
2382
  SidebarMenuAction.displayName = "SidebarMenuAction";
2364
- var SidebarMenuBadge = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2383
+ var SidebarMenuBadge = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2365
2384
  "div",
2366
2385
  {
2367
2386
  ref,
2368
2387
  "data-sidebar": "menu-badge",
2369
2388
  className: cn(
2370
- "pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-meta font-medium tabular-nums text-sidebar-foreground",
2389
+ "pointer-events-none absolute right-1 flex h-5 min-w-5 select-none items-center justify-center rounded-md px-1 text-sm font-medium tabular-nums text-sidebar-foreground",
2371
2390
  "peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground",
2372
2391
  "peer-data-[size=sm]/menu-button:top-1",
2373
2392
  "peer-data-[size=default]/menu-button:top-1.5",
@@ -2379,8 +2398,8 @@ var SidebarMenuBadge = React23.forwardRef(({ className, ...props }, ref) => /* @
2379
2398
  }
2380
2399
  ));
2381
2400
  SidebarMenuBadge.displayName = "SidebarMenuBadge";
2382
- var SidebarMenuSkeleton = React23.forwardRef(({ className, showIcon = false, ...props }, ref) => {
2383
- const width = React23.useMemo(() => {
2401
+ var SidebarMenuSkeleton = React24.forwardRef(({ className, showIcon = false, ...props }, ref) => {
2402
+ const width = React24.useMemo(() => {
2384
2403
  return `${Math.floor(Math.random() * 40) + 50}%`;
2385
2404
  }, []);
2386
2405
  return /* @__PURE__ */ jsxs(
@@ -2413,7 +2432,7 @@ var SidebarMenuSkeleton = React23.forwardRef(({ className, showIcon = false, ...
2413
2432
  );
2414
2433
  });
2415
2434
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
2416
- var SidebarMenuSub = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2435
+ var SidebarMenuSub = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2417
2436
  "ul",
2418
2437
  {
2419
2438
  ref,
@@ -2427,9 +2446,9 @@ var SidebarMenuSub = React23.forwardRef(({ className, ...props }, ref) => /* @__
2427
2446
  }
2428
2447
  ));
2429
2448
  SidebarMenuSub.displayName = "SidebarMenuSub";
2430
- var SidebarMenuSubItem = React23.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, ...props }));
2449
+ var SidebarMenuSubItem = React24.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx("li", { ref, ...props }));
2431
2450
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
2432
- var SidebarMenuSubButton = React23.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
2451
+ var SidebarMenuSubButton = React24.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
2433
2452
  const Comp = asChild ? Slot : "a";
2434
2453
  return /* @__PURE__ */ jsx(
2435
2454
  Comp,
@@ -2531,7 +2550,7 @@ var statusDotVariants = cva("inline-block shrink-0 rounded-full", {
2531
2550
  size: "sm"
2532
2551
  }
2533
2552
  });
2534
- var StatusDot = React23.forwardRef(
2553
+ var StatusDot = React24.forwardRef(
2535
2554
  ({ className, tone, size, label, ...props }, ref) => /* @__PURE__ */ jsx(
2536
2555
  "span",
2537
2556
  {
@@ -2545,7 +2564,7 @@ var StatusDot = React23.forwardRef(
2545
2564
  )
2546
2565
  );
2547
2566
  StatusDot.displayName = "StatusDot";
2548
- var Table = React23.forwardRef(({ className, density = "default", ...props }, ref) => /* @__PURE__ */ jsx(
2567
+ var Table = React24.forwardRef(({ className, density = "default", ...props }, ref) => /* @__PURE__ */ jsx(
2549
2568
  "div",
2550
2569
  {
2551
2570
  "data-density": density,
@@ -2561,9 +2580,9 @@ var Table = React23.forwardRef(({ className, density = "default", ...props }, re
2561
2580
  }
2562
2581
  ));
2563
2582
  Table.displayName = "Table";
2564
- var TableHeader = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
2583
+ var TableHeader = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
2565
2584
  TableHeader.displayName = "TableHeader";
2566
- var TableBody = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2585
+ var TableBody = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2567
2586
  "tbody",
2568
2587
  {
2569
2588
  ref,
@@ -2572,7 +2591,7 @@ var TableBody = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2572
2591
  }
2573
2592
  ));
2574
2593
  TableBody.displayName = "TableBody";
2575
- var TableFooter = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2594
+ var TableFooter = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2576
2595
  "tfoot",
2577
2596
  {
2578
2597
  ref,
@@ -2584,7 +2603,7 @@ var TableFooter = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
2584
2603
  }
2585
2604
  ));
2586
2605
  TableFooter.displayName = "TableFooter";
2587
- var TableRow = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2606
+ var TableRow = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2588
2607
  "tr",
2589
2608
  {
2590
2609
  ref,
@@ -2596,7 +2615,7 @@ var TableRow = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__
2596
2615
  }
2597
2616
  ));
2598
2617
  TableRow.displayName = "TableRow";
2599
- var TableHead = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2618
+ var TableHead = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2600
2619
  "th",
2601
2620
  {
2602
2621
  ref,
@@ -2606,14 +2625,14 @@ var TableHead = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2606
2625
  // every cell follows from there. One prop on the table rather than a
2607
2626
  // size on <TableHead> and <TableCell> individually — four places to
2608
2627
  // forget, and a table with two densities in it is always a mistake.
2609
- "group-data-[density=compact]/table:h-[26px] group-data-[density=compact]/table:text-meta",
2628
+ "group-data-[density=compact]/table:h-[26px] group-data-[density=compact]/table:text-sm",
2610
2629
  className
2611
2630
  ),
2612
2631
  ...props
2613
2632
  }
2614
2633
  ));
2615
2634
  TableHead.displayName = "TableHead";
2616
- var TableCell = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2635
+ var TableCell = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2617
2636
  "td",
2618
2637
  {
2619
2638
  ref,
@@ -2626,7 +2645,7 @@ var TableCell = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE_
2626
2645
  }
2627
2646
  ));
2628
2647
  TableCell.displayName = "TableCell";
2629
- var TableCaption = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2648
+ var TableCaption = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2630
2649
  "caption",
2631
2650
  {
2632
2651
  ref,
@@ -2635,11 +2654,11 @@ var TableCaption = React23.forwardRef(({ className, ...props }, ref) => /* @__PU
2635
2654
  }
2636
2655
  ));
2637
2656
  TableCaption.displayName = "TableCaption";
2638
- var TabsSizeContext = React23.createContext("default");
2639
- var Tabs = React23.forwardRef(({ size = "default", ...props }, ref) => /* @__PURE__ */ jsx(TabsSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx(TabsPrimitive.Root, { ref, ...props }) }));
2657
+ var TabsSizeContext = React24.createContext("default");
2658
+ var Tabs = React24.forwardRef(({ size = "default", ...props }, ref) => /* @__PURE__ */ jsx(TabsSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx(TabsPrimitive.Root, { ref, ...props }) }));
2640
2659
  Tabs.displayName = TabsPrimitive.Root.displayName;
2641
- var TabsList = React23.forwardRef(({ className, ...props }, ref) => {
2642
- const size = React23.useContext(TabsSizeContext);
2660
+ var TabsList = React24.forwardRef(({ className, ...props }, ref) => {
2661
+ const size = React24.useContext(TabsSizeContext);
2643
2662
  return /* @__PURE__ */ jsx(
2644
2663
  TabsPrimitive.List,
2645
2664
  {
@@ -2654,14 +2673,14 @@ var TabsList = React23.forwardRef(({ className, ...props }, ref) => {
2654
2673
  );
2655
2674
  });
2656
2675
  TabsList.displayName = TabsPrimitive.List.displayName;
2657
- var TabsTrigger = React23.forwardRef(({ className, ...props }, ref) => {
2658
- const size = React23.useContext(TabsSizeContext);
2676
+ var TabsTrigger = React24.forwardRef(({ className, ...props }, ref) => {
2677
+ const size = React24.useContext(TabsSizeContext);
2659
2678
  return /* @__PURE__ */ jsx(
2660
2679
  TabsPrimitive.Trigger,
2661
2680
  {
2662
2681
  ref,
2663
2682
  className: cn(
2664
- size === "sm" ? "h-[26px] px-2 text-meta" : "px-3 py-1",
2683
+ size === "sm" ? "h-[26px] px-2 text-sm" : "px-3 py-1",
2665
2684
  "inline-flex items-center justify-center whitespace-nowrap rounded-control font-medium ring-offset-background transition-colors text-muted-foreground hover:text-foreground hover:bg-background/60 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-primary/15 data-[state=active]:text-primary data-[state=active]:ring-1 data-[state=active]:ring-primary/25 data-[state=active]:shadow-sm",
2666
2685
  className
2667
2686
  ),
@@ -2670,7 +2689,7 @@ var TabsTrigger = React23.forwardRef(({ className, ...props }, ref) => {
2670
2689
  );
2671
2690
  });
2672
2691
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
2673
- var TabsContent = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2692
+ var TabsContent = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
2674
2693
  TabsPrimitive.Content,
2675
2694
  {
2676
2695
  ref,
@@ -2702,7 +2721,7 @@ var toggleVariants = cva(
2702
2721
  }
2703
2722
  }
2704
2723
  );
2705
- var Toggle = React23.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
2724
+ var Toggle = React24.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx(
2706
2725
  TogglePrimitive.Root,
2707
2726
  {
2708
2727
  ref,
@@ -2711,11 +2730,11 @@ var Toggle = React23.forwardRef(({ className, variant, size, ...props }, ref) =>
2711
2730
  }
2712
2731
  ));
2713
2732
  Toggle.displayName = TogglePrimitive.Root.displayName;
2714
- var ToggleGroupContext = React23.createContext({
2733
+ var ToggleGroupContext = React24.createContext({
2715
2734
  size: "default",
2716
2735
  variant: "default"
2717
2736
  });
2718
- var ToggleGroup = React23.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx(
2737
+ var ToggleGroup = React24.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx(
2719
2738
  ToggleGroupPrimitive.Root,
2720
2739
  {
2721
2740
  ref,
@@ -2725,8 +2744,8 @@ var ToggleGroup = React23.forwardRef(({ className, variant, size, children, ...p
2725
2744
  }
2726
2745
  ));
2727
2746
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
2728
- var ToggleGroupItem = React23.forwardRef(({ className, children, variant, size, ...props }, ref) => {
2729
- const context = React23.useContext(ToggleGroupContext);
2747
+ var ToggleGroupItem = React24.forwardRef(({ className, children, variant, size, ...props }, ref) => {
2748
+ const context = React24.useContext(ToggleGroupContext);
2730
2749
  return /* @__PURE__ */ jsx(
2731
2750
  ToggleGroupPrimitive.Item,
2732
2751
  {
@@ -2755,7 +2774,7 @@ function split(address) {
2755
2774
  if (cut < 0) return { head: "", tail: address };
2756
2775
  return { head: address.slice(0, cut + 1), tail: address.slice(cut + 1) };
2757
2776
  }
2758
- var AddressChip = React23.forwardRef(
2777
+ var AddressChip = React24.forwardRef(
2759
2778
  ({ address, tone = "allowed", onOpen, className, ...props }, ref) => {
2760
2779
  const { head, tail } = split(address);
2761
2780
  const body = /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -2777,8 +2796,8 @@ var AddressChip = React23.forwardRef(
2777
2796
  /* @__PURE__ */ jsx("span", { className: "min-w-0 shrink truncate", children: tail })
2778
2797
  ] });
2779
2798
  const shell = cn(
2780
- "inline-flex min-w-0 max-w-full items-baseline font-mono text-meta",
2781
- TONE[tone],
2799
+ "inline-flex min-w-0 max-w-full items-baseline font-mono text-sm",
2800
+ TONE[tone] ?? "text-foreground",
2782
2801
  className
2783
2802
  );
2784
2803
  if (onOpen) {
@@ -2801,7 +2820,7 @@ var AddressChip = React23.forwardRef(
2801
2820
  );
2802
2821
  AddressChip.displayName = "AddressChip";
2803
2822
  var agentChipVariants = cva(
2804
- "inline-flex max-w-full shrink-0 items-center gap-1 rounded-control border px-1.5 text-meta [&_svg]:size-3 [&_svg]:shrink-0",
2823
+ "inline-flex max-w-full shrink-0 items-center gap-1 rounded-control border px-1.5 text-sm [&_svg]:size-3 [&_svg]:shrink-0",
2805
2824
  {
2806
2825
  variants: {
2807
2826
  /**
@@ -2822,7 +2841,7 @@ var agentChipVariants = cva(
2822
2841
  defaultVariants: { kind: "agent", inactive: false }
2823
2842
  }
2824
2843
  );
2825
- var AgentChip = React23.forwardRef(
2844
+ var AgentChip = React24.forwardRef(
2826
2845
  ({ icon, name, kind, inactive, className, ...props }, ref) => /* @__PURE__ */ jsxs(
2827
2846
  "span",
2828
2847
  {
@@ -2849,13 +2868,13 @@ var stateVariants = cva("inline-flex shrink-0 items-center gap-1.5 font-medium",
2849
2868
  },
2850
2869
  defaultVariants: { tone: "active" }
2851
2870
  });
2852
- var AppStatusBar = React23.forwardRef(
2871
+ var AppStatusBar = React24.forwardRef(
2853
2872
  ({ state, tone, end, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
2854
2873
  "div",
2855
2874
  {
2856
2875
  ref,
2857
2876
  className: cn(
2858
- "flex h-[25px] shrink-0 items-center gap-2 border-t border-border px-2 text-meta text-muted-foreground",
2877
+ "flex h-[25px] shrink-0 items-center gap-2 border-t border-border px-2 text-sm text-muted-foreground",
2859
2878
  className
2860
2879
  ),
2861
2880
  ...props,
@@ -2877,7 +2896,7 @@ var AppStatusBar = React23.forwardRef(
2877
2896
  )
2878
2897
  );
2879
2898
  AppStatusBar.displayName = "AppStatusBar";
2880
- var BarChartH = React23.forwardRef(
2899
+ var BarChartH = React24.forwardRef(
2881
2900
  ({
2882
2901
  data,
2883
2902
  max,
@@ -2889,12 +2908,12 @@ var BarChartH = React23.forwardRef(
2889
2908
  }, ref) => {
2890
2909
  const ceiling = max ?? (Math.max(...data.map((d) => d.value), 0) || 1);
2891
2910
  return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col gap-1", className), ...props, children: [
2892
- caption != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: caption }) : null,
2911
+ caption != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: caption }) : null,
2893
2912
  data.map((d, i) => /* @__PURE__ */ jsxs("div", { className: "flex h-4 items-center gap-2", children: [
2894
2913
  /* @__PURE__ */ jsx(
2895
2914
  "span",
2896
2915
  {
2897
- className: "shrink-0 truncate text-meta text-muted-foreground",
2916
+ className: "shrink-0 truncate text-sm text-muted-foreground",
2898
2917
  style: { width: labelWidth },
2899
2918
  children: d.label
2900
2919
  }
@@ -2911,14 +2930,14 @@ var BarChartH = React23.forwardRef(
2911
2930
  }
2912
2931
  }
2913
2932
  ),
2914
- /* @__PURE__ */ jsx("span", { className: "shrink-0 text-meta tabular-nums", children: d.display ?? d.value })
2933
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm tabular-nums", children: d.display ?? d.value })
2915
2934
  ] })
2916
2935
  ] }, i))
2917
2936
  ] });
2918
2937
  }
2919
2938
  );
2920
2939
  BarChartH.displayName = "BarChartH";
2921
- var BarChartV = React23.forwardRef(
2940
+ var BarChartV = React24.forwardRef(
2922
2941
  ({
2923
2942
  data,
2924
2943
  max,
@@ -2936,7 +2955,7 @@ var BarChartV = React23.forwardRef(
2936
2955
  const emphasis = highlightIndex ?? data.length - 1;
2937
2956
  const labelled = (i) => labelMode === "all" || labelMode === "last" && i === emphasis;
2938
2957
  return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col gap-1", className), ...props, children: [
2939
- caption != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: caption }) : null,
2958
+ caption != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: caption }) : null,
2940
2959
  /* @__PURE__ */ jsxs("div", { className: "relative mt-2", style: { height }, children: [
2941
2960
  gridlines.map((g) => /* @__PURE__ */ jsxs(
2942
2961
  "div",
@@ -2946,7 +2965,7 @@ var BarChartV = React23.forwardRef(
2946
2965
  style: { bottom: `${g / ceiling * 100}%` },
2947
2966
  children: [
2948
2967
  /* @__PURE__ */ jsx("span", { className: "h-px flex-1 bg-border" }),
2949
- /* @__PURE__ */ jsx("span", { className: "pl-1 text-meta tabular-nums text-muted-foreground", children: g })
2968
+ /* @__PURE__ */ jsx("span", { className: "pl-1 text-sm tabular-nums text-muted-foreground", children: g })
2950
2969
  ]
2951
2970
  },
2952
2971
  g
@@ -2956,7 +2975,7 @@ var BarChartV = React23.forwardRef(
2956
2975
  {
2957
2976
  className: "flex h-full min-w-0 flex-1 flex-col items-center justify-end gap-1",
2958
2977
  children: [
2959
- labelled(i) ? /* @__PURE__ */ jsx("span", { className: "text-meta tabular-nums", children: d.display ?? d.value }) : null,
2978
+ labelled(i) ? /* @__PURE__ */ jsx("span", { className: "text-sm tabular-nums", children: d.display ?? d.value }) : null,
2960
2979
  /* @__PURE__ */ jsx(
2961
2980
  "span",
2962
2981
  {
@@ -2975,38 +2994,34 @@ var BarChartV = React23.forwardRef(
2975
2994
  )) })
2976
2995
  ] }),
2977
2996
  /* @__PURE__ */ jsx("div", { className: "flex justify-between gap-2", children: data.map((d, i) => /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col items-center", children: [
2978
- /* @__PURE__ */ jsx("span", { className: "truncate text-meta text-muted-foreground", children: d.label }),
2979
- d.sublabel != null ? /* @__PURE__ */ jsx("span", { className: "truncate text-meta text-muted-foreground/70", children: d.sublabel }) : null
2997
+ /* @__PURE__ */ jsx("span", { className: "truncate text-sm text-muted-foreground", children: d.label }),
2998
+ d.sublabel != null ? /* @__PURE__ */ jsx("span", { className: "truncate text-sm text-muted-foreground/70", children: d.sublabel }) : null
2980
2999
  ] }, i)) })
2981
3000
  ] });
2982
3001
  }
2983
3002
  );
2984
3003
  BarChartV.displayName = "BarChartV";
2985
- var SWATCH = {
2986
- none: "bg-muted-foreground",
2987
- network: "bg-warning",
2988
- graph_read: "bg-success",
2989
- graph_write: "bg-data-2",
2990
- schema_write: "bg-data-4",
2991
- ingest: "bg-info",
2992
- llm: "bg-data-7",
2993
- plan_write: "bg-data-5",
2994
- work_write: "bg-destructive"
2995
- };
2996
- var BoundChip = React23.forwardRef(
2997
- ({ bound, swatchOnly, className, ...props }, ref) => /* @__PURE__ */ jsxs(
3004
+ var UNPAINTED = "bg-muted-foreground";
3005
+ var BoundChip = React24.forwardRef(
3006
+ ({ bound, swatchOnly, label, swatch, palette, className, ...props }, ref) => /* @__PURE__ */ jsxs(
2998
3007
  "span",
2999
3008
  {
3000
3009
  ref,
3001
3010
  className: cn(
3002
- "inline-flex max-w-full shrink-0 items-center gap-1.5 font-mono text-meta text-muted-foreground",
3011
+ "inline-flex max-w-full shrink-0 items-center gap-1.5 font-mono text-sm text-muted-foreground",
3003
3012
  className
3004
3013
  ),
3005
3014
  "aria-label": swatchOnly ? `bound: ${bound}` : void 0,
3006
3015
  ...props,
3007
3016
  children: [
3008
- /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: cn("size-1.5 shrink-0", SWATCH[bound]) }),
3009
- swatchOnly ? null : /* @__PURE__ */ jsx("span", { className: "truncate", children: bound })
3017
+ /* @__PURE__ */ jsx(
3018
+ "span",
3019
+ {
3020
+ "aria-hidden": true,
3021
+ className: cn("size-1.5 shrink-0", swatch ?? palette?.[bound] ?? UNPAINTED)
3022
+ }
3023
+ ),
3024
+ swatchOnly ? null : /* @__PURE__ */ jsx("span", { className: "truncate", children: label ?? bound })
3010
3025
  ]
3011
3026
  }
3012
3027
  )
@@ -3018,7 +3033,7 @@ function ButtonWithTooltip(props) {
3018
3033
  /* @__PURE__ */ jsx(TooltipContent, { children: props.tooltip })
3019
3034
  ] }) });
3020
3035
  }
3021
- var CannotAnswerCard = React23.forwardRef(({ label = "cannot answer", remedy, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
3036
+ var CannotAnswerCard = React24.forwardRef(({ label = "cannot answer", remedy, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
3022
3037
  "div",
3023
3038
  {
3024
3039
  ref,
@@ -3028,9 +3043,9 @@ var CannotAnswerCard = React23.forwardRef(({ label = "cannot answer", remedy, cl
3028
3043
  ),
3029
3044
  ...props,
3030
3045
  children: [
3031
- /* @__PURE__ */ jsx("span", { className: "text-meta font-medium text-muted-foreground", children: label }),
3046
+ /* @__PURE__ */ jsx("span", { className: "text-sm font-medium text-muted-foreground", children: label }),
3032
3047
  /* @__PURE__ */ jsx("span", { children }),
3033
- remedy != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: remedy }) : null
3048
+ remedy != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: remedy }) : null
3034
3049
  ]
3035
3050
  }
3036
3051
  ));
@@ -3042,7 +3057,7 @@ var PURPOSE = {
3042
3057
  judge: "scores an output \u2014 often local",
3043
3058
  embed: "text in, vector out"
3044
3059
  };
3045
- var CastTable = React23.forwardRef(
3060
+ var CastTable = React24.forwardRef(
3046
3061
  ({ cast = {}, resolved, readOnly, className, ...props }, ref) => {
3047
3062
  const byRole = new Map((resolved ?? []).map((r) => [r.role, r]));
3048
3063
  return /* @__PURE__ */ jsxs("div", { ref, className: cn("min-w-0", className), ...props, children: [
@@ -3057,15 +3072,15 @@ var CastTable = React23.forwardRef(
3057
3072
  const address = hit ? hit.address : cast[role] ?? null;
3058
3073
  const denied = hit ? !hit.allowed : false;
3059
3074
  return /* @__PURE__ */ jsxs(TableRow, { "data-role": role, children: [
3060
- /* @__PURE__ */ jsx(TableCell, { className: "font-mono text-meta text-muted-foreground", children: role }),
3075
+ /* @__PURE__ */ jsx(TableCell, { className: "font-mono text-sm text-muted-foreground", children: role }),
3061
3076
  /* @__PURE__ */ jsx(TableCell, { className: "min-w-0", children: address ? /* @__PURE__ */ jsx(
3062
3077
  AddressChip,
3063
3078
  {
3064
3079
  address,
3065
3080
  tone: denied ? "denied" : "allowed"
3066
3081
  }
3067
- ) : /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground/70", children: "nothing casts it" }) }),
3068
- /* @__PURE__ */ jsx(TableCell, { className: "text-meta text-muted-foreground", children: denied ? /* @__PURE__ */ jsxs("span", { className: "text-destructive", children: [
3082
+ ) : /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground/70", children: "nothing casts it" }) }),
3083
+ /* @__PURE__ */ jsx(TableCell, { className: "text-sm text-muted-foreground", children: denied ? /* @__PURE__ */ jsxs("span", { className: "text-destructive", children: [
3069
3084
  "denied by ",
3070
3085
  hit?.ruleMatched ?? "this world"
3071
3086
  ] }) : hit?.source ? /* @__PURE__ */ jsx("span", { children: hit.source !== "shipped" ? `set on the ${hit.source}` : address ? "shipped default" : (
@@ -3077,7 +3092,7 @@ var CastTable = React23.forwardRef(
3077
3092
  ] }, role);
3078
3093
  }) })
3079
3094
  ] }),
3080
- readOnly ? null : /* @__PURE__ */ jsx("p", { className: "px-2 pt-1 text-meta text-muted-foreground/70", children: "A cast picks within the rules \u2014 it never widens them." })
3095
+ readOnly ? null : /* @__PURE__ */ jsx("p", { className: "px-2 pt-1 text-sm text-muted-foreground/70", children: "A cast picks within the rules \u2014 it never widens them." })
3081
3096
  ] });
3082
3097
  }
3083
3098
  );
@@ -3091,20 +3106,20 @@ function ChatSession({
3091
3106
  className,
3092
3107
  bodyClassName
3093
3108
  }) {
3094
- const rootRef = React23.useRef(null);
3095
- const contentRef = React23.useRef(null);
3096
- const pinnedRef = React23.useRef(true);
3097
- const getViewport = React23.useCallback(
3109
+ const rootRef = React24.useRef(null);
3110
+ const contentRef = React24.useRef(null);
3111
+ const pinnedRef = React24.useRef(true);
3112
+ const getViewport = React24.useCallback(
3098
3113
  () => rootRef.current?.querySelector(
3099
3114
  "[data-radix-scroll-area-viewport]"
3100
3115
  ) ?? null,
3101
3116
  []
3102
3117
  );
3103
- const scrollToBottom = React23.useCallback(() => {
3118
+ const scrollToBottom = React24.useCallback(() => {
3104
3119
  const viewport = getViewport();
3105
3120
  if (viewport) viewport.scrollTop = viewport.scrollHeight;
3106
3121
  }, [getViewport]);
3107
- React23.useEffect(() => {
3122
+ React24.useEffect(() => {
3108
3123
  const viewport = getViewport();
3109
3124
  if (!viewport) return;
3110
3125
  const handleScroll = () => {
@@ -3114,7 +3129,7 @@ function ChatSession({
3114
3129
  viewport.addEventListener("scroll", handleScroll, { passive: true });
3115
3130
  return () => viewport.removeEventListener("scroll", handleScroll);
3116
3131
  }, [getViewport, followThreshold]);
3117
- React23.useEffect(() => {
3132
+ React24.useEffect(() => {
3118
3133
  const content = contentRef.current;
3119
3134
  if (!content || typeof ResizeObserver === "undefined") return;
3120
3135
  const observer = new ResizeObserver(() => {
@@ -3123,11 +3138,11 @@ function ChatSession({
3123
3138
  observer.observe(content);
3124
3139
  return () => observer.disconnect();
3125
3140
  }, [scrollToBottom]);
3126
- React23.useEffect(() => {
3141
+ React24.useEffect(() => {
3127
3142
  pinnedRef.current = true;
3128
3143
  scrollToBottom();
3129
3144
  }, [autoScrollKey, scrollToBottom]);
3130
- const isEmpty = React23.Children.count(children) === 0;
3145
+ const isEmpty = React24.Children.count(children) === 0;
3131
3146
  return /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col h-full min-h-0", className), children: [
3132
3147
  /* @__PURE__ */ jsx(
3133
3148
  ScrollArea,
@@ -3220,12 +3235,12 @@ function useOverflowItems({
3220
3235
  pinnedIndex,
3221
3236
  reserve = 32
3222
3237
  }) {
3223
- const containerEl = React23.useRef(null);
3224
- const itemEls = React23.useRef([]);
3225
- const widths = React23.useRef([]);
3226
- const itemRefs = React23.useRef([]);
3227
- const [hidden, setHidden] = React23.useState(NONE);
3228
- const fit = React23.useCallback(() => {
3238
+ const containerEl = React24.useRef(null);
3239
+ const itemEls = React24.useRef([]);
3240
+ const widths = React24.useRef([]);
3241
+ const itemRefs = React24.useRef([]);
3242
+ const [hidden, setHidden] = React24.useState(NONE);
3243
+ const fit = React24.useCallback(() => {
3229
3244
  const el = containerEl.current;
3230
3245
  if (!el || !enabled) {
3231
3246
  setHidden((prev) => prev === NONE ? prev : NONE);
@@ -3254,12 +3269,12 @@ function useOverflowItems({
3254
3269
  }
3255
3270
  setHidden((prev) => same(prev, next) ? prev : next);
3256
3271
  }, [count, enabled, pinnedIndex, reserve]);
3257
- React23.useLayoutEffect(() => {
3272
+ React24.useLayoutEffect(() => {
3258
3273
  widths.current = [];
3259
3274
  itemEls.current.length = count;
3260
3275
  setHidden((prev) => prev === NONE ? prev : NONE);
3261
3276
  }, [count]);
3262
- React23.useLayoutEffect(() => {
3277
+ React24.useLayoutEffect(() => {
3263
3278
  fit();
3264
3279
  if (!enabled || typeof ResizeObserver === "undefined") return;
3265
3280
  const observer = new ResizeObserver(() => fit());
@@ -3267,10 +3282,10 @@ function useOverflowItems({
3267
3282
  for (const item of itemEls.current) if (item) observer.observe(item);
3268
3283
  return () => observer.disconnect();
3269
3284
  }, [fit, enabled, hidden]);
3270
- const containerRef = React23.useCallback((el) => {
3285
+ const containerRef = React24.useCallback((el) => {
3271
3286
  containerEl.current = el;
3272
3287
  }, []);
3273
- const itemRef = React23.useCallback((index) => {
3288
+ const itemRef = React24.useCallback((index) => {
3274
3289
  let fn = itemRefs.current[index];
3275
3290
  if (!fn) {
3276
3291
  fn = (el) => {
@@ -3280,7 +3295,7 @@ function useOverflowItems({
3280
3295
  }
3281
3296
  return fn;
3282
3297
  }, []);
3283
- const isHidden = React23.useCallback(
3298
+ const isHidden = React24.useCallback(
3284
3299
  (index) => hidden.includes(index),
3285
3300
  [hidden]
3286
3301
  );
@@ -3333,15 +3348,15 @@ var NavItems = ({
3333
3348
  const isVertical = orientation === "vertical";
3334
3349
  const isTabs = selectionMode === "tabs";
3335
3350
  const V = VARIANT[variant];
3336
- const [internalActive, setInternalActive] = React23__default.useState(
3351
+ const [internalActive, setInternalActive] = React24__default.useState(
3337
3352
  null
3338
3353
  );
3339
3354
  const isControlled = activeKey !== void 0;
3340
3355
  const currentKey = isControlled ? activeKey : internalActive;
3341
3356
  const activeIndex = items.findIndex((item) => keyOf(item) === currentKey);
3342
- const nodes = React23__default.useRef({});
3343
- const pendingFocus = React23__default.useRef(null);
3344
- React23__default.useEffect(() => {
3357
+ const nodes = React24__default.useRef({});
3358
+ const pendingFocus = React24__default.useRef(null);
3359
+ React24__default.useEffect(() => {
3345
3360
  const key = pendingFocus.current;
3346
3361
  if (!key) return;
3347
3362
  const node = nodes.current[key];
@@ -3354,7 +3369,7 @@ var NavItems = ({
3354
3369
  enabled: overflow && !isVertical,
3355
3370
  pinnedIndex: activeIndex >= 0 ? activeIndex : void 0
3356
3371
  });
3357
- const select = React23__default.useCallback(
3372
+ const select = React24__default.useCallback(
3358
3373
  (item) => {
3359
3374
  if (item.disabled) return;
3360
3375
  const key = keyOf(item);
@@ -3424,6 +3439,7 @@ var NavItems = ({
3424
3439
  }
3425
3440
  );
3426
3441
  const label = item.label && /* @__PURE__ */ jsx("span", { className: item.labelClassName, children: item.label });
3442
+ const a11y = label ? {} : { "aria-label": item.name };
3427
3443
  const badge = item.badge != null && /* @__PURE__ */ jsx(
3428
3444
  "span",
3429
3445
  {
@@ -3463,6 +3479,7 @@ var NavItems = ({
3463
3479
  {
3464
3480
  ref: setNode,
3465
3481
  ...tabProps,
3482
+ ...a11y,
3466
3483
  style: item.style,
3467
3484
  onClick: () => select(item),
3468
3485
  className: itemClass,
@@ -3473,6 +3490,7 @@ var NavItems = ({
3473
3490
  {
3474
3491
  ref: setNode,
3475
3492
  href: item.href,
3493
+ ...a11y,
3476
3494
  style: item.style,
3477
3495
  onClick: () => select(item),
3478
3496
  className: itemClass,
@@ -3485,6 +3503,7 @@ var NavItems = ({
3485
3503
  type: "button",
3486
3504
  disabled: item.disabled,
3487
3505
  ...tabProps,
3506
+ ...a11y,
3488
3507
  style: item.style,
3489
3508
  onClick: () => {
3490
3509
  if (hasMenu) item.onClick?.();
@@ -3498,7 +3517,7 @@ var NavItems = ({
3498
3517
  /* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: hasMenu && !asCaret ? /* @__PURE__ */ jsx(DropdownMenuTrigger, { asChild: true, children: control }) : control }),
3499
3518
  /* @__PURE__ */ jsx(TooltipContent, { side: item.tooltipSide || tooltipSide, children: item.tooltip || item.name })
3500
3519
  ] });
3501
- return /* @__PURE__ */ jsxs(React23__default.Fragment, { children: [
3520
+ return /* @__PURE__ */ jsxs(React24__default.Fragment, { children: [
3502
3521
  hasMenu ? /* @__PURE__ */ jsxs(DropdownMenu, { children: [
3503
3522
  withTooltip,
3504
3523
  /* @__PURE__ */ jsx(
@@ -3588,7 +3607,7 @@ function renderMenuRows(menuItems) {
3588
3607
  const gutter = menuItems?.some((m) => m.icon);
3589
3608
  return menuItems?.map((menuItem) => {
3590
3609
  const MenuIcon = menuItem.icon;
3591
- return /* @__PURE__ */ jsxs(React23__default.Fragment, { children: [
3610
+ return /* @__PURE__ */ jsxs(React24__default.Fragment, { children: [
3592
3611
  menuItem.separatorBefore && /* @__PURE__ */ jsx(DropdownMenuSeparator, {}),
3593
3612
  /* @__PURE__ */ jsxs(
3594
3613
  DropdownMenuItem,
@@ -3907,7 +3926,7 @@ function ChatSessionDisclosure({
3907
3926
  className,
3908
3927
  contentClassName
3909
3928
  }) {
3910
- const [uncontrolledOpen, setUncontrolledOpen] = React23.useState(defaultOpen);
3929
+ const [uncontrolledOpen, setUncontrolledOpen] = React24.useState(defaultOpen);
3911
3930
  const isOpen = open ?? uncontrolledOpen;
3912
3931
  const toggle = () => {
3913
3932
  const next = !isOpen;
@@ -4038,7 +4057,7 @@ function ChatSessionContextChip({
4038
4057
  "div",
4039
4058
  {
4040
4059
  className: cn(
4041
- "flex min-h-[26px] items-center gap-1.5 border border-border bg-muted/40 px-1.5 text-meta",
4060
+ "flex min-h-[26px] items-center gap-1.5 border border-border bg-muted/40 px-1.5 text-sm",
4042
4061
  className
4043
4062
  ),
4044
4063
  ...props,
@@ -4059,9 +4078,9 @@ function ChatSessionContextChip({
4059
4078
  }
4060
4079
  );
4061
4080
  }
4062
- var CitationList = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children }));
4081
+ var CitationList = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children }));
4063
4082
  CitationList.displayName = "CitationList";
4064
- var CitationRow = React23.forwardRef(
4083
+ var CitationRow = React24.forwardRef(
4065
4084
  ({ kind, source, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4066
4085
  "li",
4067
4086
  {
@@ -4069,15 +4088,15 @@ var CitationRow = React23.forwardRef(
4069
4088
  className: cn("flex min-h-[26px] items-center gap-2 py-0.5", className),
4070
4089
  ...props,
4071
4090
  children: [
4072
- /* @__PURE__ */ jsx("span", { className: "shrink-0 border border-border px-1 text-meta text-muted-foreground", children: kind }),
4091
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 border border-border px-1 text-sm text-muted-foreground", children: kind }),
4073
4092
  /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 truncate", children }),
4074
- source != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-meta text-muted-foreground", children: source }) : null
4093
+ source != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm text-muted-foreground", children: source }) : null
4075
4094
  ]
4076
4095
  }
4077
4096
  )
4078
4097
  );
4079
4098
  CitationRow.displayName = "CitationRow";
4080
- var ClampedText = React23.forwardRef(
4099
+ var ClampedText = React24.forwardRef(
4081
4100
  ({
4082
4101
  lines = 3,
4083
4102
  moreLabel = "Show more",
@@ -4086,10 +4105,10 @@ var ClampedText = React23.forwardRef(
4086
4105
  children,
4087
4106
  ...props
4088
4107
  }, ref) => {
4089
- const [expanded, setExpanded] = React23.useState(false);
4090
- const [clipped, setClipped] = React23.useState(false);
4091
- const bodyRef = React23.useRef(null);
4092
- React23.useLayoutEffect(() => {
4108
+ const [expanded, setExpanded] = React24.useState(false);
4109
+ const [clipped, setClipped] = React24.useState(false);
4110
+ const bodyRef = React24.useRef(null);
4111
+ React24.useLayoutEffect(() => {
4093
4112
  const el = bodyRef.current;
4094
4113
  if (!el || expanded) return;
4095
4114
  const measure = () => setClipped(el.scrollHeight - el.clientHeight > 1);
@@ -4127,7 +4146,7 @@ var ClampedText = React23.forwardRef(
4127
4146
  }
4128
4147
  );
4129
4148
  ClampedText.displayName = "ClampedText";
4130
- var ClarifyCard = React23.forwardRef(
4149
+ var ClarifyCard = React24.forwardRef(
4131
4150
  ({
4132
4151
  step,
4133
4152
  waiting,
@@ -4140,7 +4159,7 @@ var ClarifyCard = React23.forwardRef(
4140
4159
  className,
4141
4160
  ...props
4142
4161
  }, ref) => {
4143
- const name = React23.useId();
4162
+ const name = React24.useId();
4144
4163
  return /* @__PURE__ */ jsxs(
4145
4164
  "div",
4146
4165
  {
@@ -4148,7 +4167,7 @@ var ClarifyCard = React23.forwardRef(
4148
4167
  className: cn("flex flex-col overflow-hidden border border-border bg-card", className),
4149
4168
  ...props,
4150
4169
  children: [
4151
- /* @__PURE__ */ jsxs("div", { className: "flex h-6 shrink-0 items-center gap-2 border-b border-border bg-muted/40 px-2 text-meta", children: [
4170
+ /* @__PURE__ */ jsxs("div", { className: "flex h-6 shrink-0 items-center gap-2 border-b border-border bg-muted/40 px-2 text-sm", children: [
4152
4171
  /* @__PURE__ */ jsx("span", { className: "shrink-0 font-medium", children: "question" }),
4153
4172
  step != null ? /* @__PURE__ */ jsx("span", { className: "truncate text-muted-foreground", children: step }) : null,
4154
4173
  /* @__PURE__ */ jsx("span", { className: "flex-1" }),
@@ -4191,7 +4210,7 @@ var ClarifyCard = React23.forwardRef(
4191
4210
  }
4192
4211
  ),
4193
4212
  /* @__PURE__ */ jsx("span", { className: "flex-1 truncate", children: o.label }),
4194
- o.detail != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 font-mono text-meta text-muted-foreground", children: o.detail }) : null
4213
+ o.detail != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 font-mono text-sm text-muted-foreground", children: o.detail }) : null
4195
4214
  ]
4196
4215
  },
4197
4216
  o.value
@@ -4199,7 +4218,7 @@ var ClarifyCard = React23.forwardRef(
4199
4218
  }) }),
4200
4219
  actions || footnote != null ? /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [
4201
4220
  actions,
4202
- footnote != null ? /* @__PURE__ */ jsx("span", { className: "flex-1 text-meta text-muted-foreground", children: footnote }) : null
4221
+ footnote != null ? /* @__PURE__ */ jsx("span", { className: "flex-1 text-sm text-muted-foreground", children: footnote }) : null
4203
4222
  ] }) : null
4204
4223
  ] })
4205
4224
  ]
@@ -4208,13 +4227,13 @@ var ClarifyCard = React23.forwardRef(
4208
4227
  }
4209
4228
  );
4210
4229
  ClarifyCard.displayName = "ClarifyCard";
4211
- var ContextBar = React23.forwardRef(
4230
+ var ContextBar = React24.forwardRef(
4212
4231
  ({ counters, hint, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4213
4232
  "div",
4214
4233
  {
4215
4234
  ref,
4216
4235
  className: cn(
4217
- "flex h-7 shrink-0 items-center gap-3 border-t border-border px-2 text-meta",
4236
+ "flex h-7 shrink-0 items-center gap-3 border-t border-border px-2 text-sm",
4218
4237
  className
4219
4238
  ),
4220
4239
  ...props,
@@ -4227,22 +4246,22 @@ var ContextBar = React23.forwardRef(
4227
4246
  )
4228
4247
  );
4229
4248
  ContextBar.displayName = "ContextBar";
4230
- var DiagnosisCard = React23.forwardRef(({ code, attempted, target, actions, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4249
+ var DiagnosisCard = React24.forwardRef(({ code, attempted, target, actions, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4231
4250
  "div",
4232
4251
  {
4233
4252
  ref,
4234
4253
  className: cn("flex flex-col gap-2 border border-destructive/40 bg-card p-2", className),
4235
4254
  ...props,
4236
4255
  children: [
4237
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-meta", children: [
4256
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-sm", children: [
4238
4257
  /* @__PURE__ */ jsx("span", { className: "shrink-0 font-medium text-destructive", children: "diagnosis" }),
4239
4258
  /* @__PURE__ */ jsx("span", { className: "truncate font-mono text-muted-foreground", children: code })
4240
4259
  ] }),
4241
4260
  children != null ? /* @__PURE__ */ jsx("div", { children }) : null,
4242
4261
  attempted != null || target != null ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1 border border-border bg-muted/40 p-1.5", children: [
4243
- /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: "what was tried" }),
4244
- attempted != null ? /* @__PURE__ */ jsx("code", { className: "whitespace-pre-wrap break-all font-mono text-meta", children: attempted }) : null,
4245
- target != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: target }) : null
4262
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: "what was tried" }),
4263
+ attempted != null ? /* @__PURE__ */ jsx("code", { className: "whitespace-pre-wrap break-all font-mono text-sm", children: attempted }) : null,
4264
+ target != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: target }) : null
4246
4265
  ] }) : null,
4247
4266
  actions ? /* @__PURE__ */ jsx("div", { className: "flex items-center gap-1.5", children: actions }) : null
4248
4267
  ]
@@ -4255,19 +4274,19 @@ var OP_CLASS = {
4255
4274
  remove: "text-destructive",
4256
4275
  change: "text-warning"
4257
4276
  };
4258
- var DiffList = React23.forwardRef(
4277
+ var DiffList = React24.forwardRef(
4259
4278
  ({ className, children, ...props }, ref) => /* @__PURE__ */ jsx("ul", { ref, className: cn("flex flex-col", className), ...props, children })
4260
4279
  );
4261
4280
  DiffList.displayName = "DiffList";
4262
- var DiffRow = React23.forwardRef(
4281
+ var DiffRow = React24.forwardRef(
4263
4282
  ({ op = "add", kind, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4264
4283
  "li",
4265
4284
  {
4266
4285
  ref,
4267
- className: cn("flex items-baseline gap-2 py-0.5 text-meta", className),
4286
+ className: cn("flex items-baseline gap-2 py-0.5 text-sm", className),
4268
4287
  ...props,
4269
4288
  children: [
4270
- /* @__PURE__ */ jsx("span", { className: cn("w-3 shrink-0 text-center font-mono", OP_CLASS[op]), children: OP_SIGN[op] }),
4289
+ /* @__PURE__ */ jsx("span", { className: cn("w-3 shrink-0 text-center font-mono", OP_CLASS[op] ?? "text-muted-foreground"), children: OP_SIGN[op] }),
4271
4290
  kind != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-muted-foreground", children: kind }) : null,
4272
4291
  /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1", children })
4273
4292
  ]
@@ -4275,7 +4294,7 @@ var DiffRow = React23.forwardRef(
4275
4294
  )
4276
4295
  );
4277
4296
  DiffRow.displayName = "DiffRow";
4278
- var DivergingBar = React23.forwardRef(
4297
+ var DivergingBar = React24.forwardRef(
4279
4298
  ({
4280
4299
  data,
4281
4300
  max,
@@ -4288,7 +4307,7 @@ var DivergingBar = React23.forwardRef(
4288
4307
  }, ref) => {
4289
4308
  const ceiling = max ?? (Math.max(...data.map((d) => Math.abs(d.value)), 0) || 1);
4290
4309
  return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col gap-1", className), ...props, children: [
4291
- caption != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: caption }) : null,
4310
+ caption != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: caption }) : null,
4292
4311
  data.map((d, i) => {
4293
4312
  const positive = d.value >= 0;
4294
4313
  const width = `${Math.abs(d.value) / ceiling * 50}%`;
@@ -4296,7 +4315,7 @@ var DivergingBar = React23.forwardRef(
4296
4315
  /* @__PURE__ */ jsx(
4297
4316
  "span",
4298
4317
  {
4299
- className: "shrink-0 truncate text-meta text-muted-foreground",
4318
+ className: "shrink-0 truncate text-sm text-muted-foreground",
4300
4319
  style: { width: labelWidth },
4301
4320
  children: d.label
4302
4321
  }
@@ -4326,14 +4345,14 @@ var DivergingBar = React23.forwardRef(
4326
4345
  }
4327
4346
  ) : null })
4328
4347
  ] }),
4329
- /* @__PURE__ */ jsx("span", { className: "w-8 shrink-0 text-right text-meta tabular-nums", children: d.display ?? (d.value > 0 ? `+${d.value}` : d.value) })
4348
+ /* @__PURE__ */ jsx("span", { className: "w-8 shrink-0 text-right text-sm tabular-nums", children: d.display ?? (d.value > 0 ? `+${d.value}` : d.value) })
4330
4349
  ] }, i);
4331
4350
  })
4332
4351
  ] });
4333
4352
  }
4334
4353
  );
4335
4354
  DivergingBar.displayName = "DivergingBar";
4336
- var EgressList = React23.forwardRef(
4355
+ var EgressList = React24.forwardRef(
4337
4356
  ({ to, classes = [], cut = [], className, ...props }, ref) => /* @__PURE__ */ jsxs(
4338
4357
  "div",
4339
4358
  {
@@ -4343,7 +4362,7 @@ var EgressList = React23.forwardRef(
4343
4362
  children: [
4344
4363
  /* @__PURE__ */ jsx(AddressChip, { address: to }),
4345
4364
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-0.5 pl-3", children: [
4346
- classes.length === 0 ? /* @__PURE__ */ jsx("span", { className: "text-meta text-destructive", children: "nothing may be sent" }) : /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-wrap items-center gap-1 text-meta text-muted-foreground", children: [
4365
+ classes.length === 0 ? /* @__PURE__ */ jsx("span", { className: "text-sm text-destructive", children: "nothing may be sent" }) : /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-wrap items-center gap-1 text-sm text-muted-foreground", children: [
4347
4366
  /* @__PURE__ */ jsx("span", { className: "shrink-0", children: "may send" }),
4348
4367
  classes.map((c) => /* @__PURE__ */ jsx(
4349
4368
  "span",
@@ -4354,7 +4373,7 @@ var EgressList = React23.forwardRef(
4354
4373
  c
4355
4374
  ))
4356
4375
  ] }),
4357
- cut.length ? /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-wrap items-center gap-1 text-meta text-muted-foreground", children: [
4376
+ cut.length ? /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-wrap items-center gap-1 text-sm text-muted-foreground", children: [
4358
4377
  /* @__PURE__ */ jsx("span", { className: "shrink-0", children: "cut" }),
4359
4378
  cut.map((c) => /* @__PURE__ */ jsx(
4360
4379
  "span",
@@ -4371,12 +4390,12 @@ var EgressList = React23.forwardRef(
4371
4390
  )
4372
4391
  );
4373
4392
  EgressList.displayName = "EgressList";
4374
- var EmissionHeader = React23.forwardRef(({ kind, template, citation, note, actions, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4393
+ var EmissionHeader = React24.forwardRef(({ kind, template, citation, note, actions, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4375
4394
  "div",
4376
4395
  {
4377
4396
  ref,
4378
4397
  className: cn(
4379
- "flex h-6 shrink-0 items-center gap-2 border-b border-border bg-muted/40 px-2 text-meta",
4398
+ "flex h-6 shrink-0 items-center gap-2 border-b border-border bg-muted/40 px-2 text-sm",
4380
4399
  className
4381
4400
  ),
4382
4401
  ...props,
@@ -4391,7 +4410,7 @@ var EmissionHeader = React23.forwardRef(({ kind, template, citation, note, actio
4391
4410
  }
4392
4411
  ));
4393
4412
  EmissionHeader.displayName = "EmissionHeader";
4394
- var EmissionCard = React23.forwardRef(
4413
+ var EmissionCard = React24.forwardRef(
4395
4414
  ({
4396
4415
  kind,
4397
4416
  template,
@@ -4426,7 +4445,7 @@ var EmissionCard = React23.forwardRef(
4426
4445
  )
4427
4446
  );
4428
4447
  EmissionCard.displayName = "EmissionCard";
4429
- var CitationMarker = React23.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
4448
+ var CitationMarker = React24.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(
4430
4449
  "sup",
4431
4450
  {
4432
4451
  ref,
@@ -4436,7 +4455,7 @@ var CitationMarker = React23.forwardRef(({ className, children, ...props }, ref)
4436
4455
  }
4437
4456
  ));
4438
4457
  CitationMarker.displayName = "CitationMarker";
4439
- var EmptyState = React23.forwardRef(
4458
+ var EmptyState = React24.forwardRef(
4440
4459
  ({ icon, title, description, actions, locks, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4441
4460
  "div",
4442
4461
  {
@@ -4457,12 +4476,12 @@ var EmptyState = React23.forwardRef(
4457
4476
  )
4458
4477
  );
4459
4478
  EmptyState.displayName = "EmptyState";
4460
- var EmptyStateLock = React23.forwardRef(({ icon, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4479
+ var EmptyStateLock = React24.forwardRef(({ icon, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4461
4480
  "span",
4462
4481
  {
4463
4482
  ref,
4464
4483
  className: cn(
4465
- "inline-flex h-6 items-center gap-1.5 border border-dashed border-border px-2 text-meta text-muted-foreground [&_svg]:size-3",
4484
+ "inline-flex h-6 items-center gap-1.5 border border-dashed border-border px-2 text-sm text-muted-foreground [&_svg]:size-3",
4466
4485
  className
4467
4486
  ),
4468
4487
  ...props,
@@ -4494,13 +4513,13 @@ var ErrorBoundary = class extends Component {
4494
4513
  return this.props.children;
4495
4514
  }
4496
4515
  };
4497
- var Eyebrow = React23.forwardRef(
4516
+ var Eyebrow = React24.forwardRef(
4498
4517
  ({ aside, tone = "muted", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4499
4518
  "div",
4500
4519
  {
4501
4520
  ref,
4502
4521
  className: cn(
4503
- "flex items-baseline gap-2 text-meta font-semibold uppercase tracking-wide",
4522
+ "flex items-baseline gap-2 text-sm font-semibold uppercase tracking-wide",
4504
4523
  tone === "muted" && "text-muted-foreground",
4505
4524
  tone === "foreground" && "text-foreground",
4506
4525
  tone === "accent" && "text-primary",
@@ -4515,7 +4534,7 @@ var Eyebrow = React23.forwardRef(
4515
4534
  )
4516
4535
  );
4517
4536
  Eyebrow.displayName = "Eyebrow";
4518
- var FilterBar = React23.forwardRef(
4537
+ var FilterBar = React24.forwardRef(
4519
4538
  ({ summary, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
4520
4539
  "div",
4521
4540
  {
@@ -4528,13 +4547,13 @@ var FilterBar = React23.forwardRef(
4528
4547
  children: [
4529
4548
  children,
4530
4549
  /* @__PURE__ */ jsx("span", { className: "flex-1" }),
4531
- summary != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-meta text-muted-foreground", children: summary }) : null
4550
+ summary != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm text-muted-foreground", children: summary }) : null
4532
4551
  ]
4533
4552
  }
4534
4553
  )
4535
4554
  );
4536
4555
  FilterBar.displayName = "FilterBar";
4537
- var FilterChip = React23.forwardRef(
4556
+ var FilterChip = React24.forwardRef(
4538
4557
  ({ label, value, active, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4539
4558
  Button,
4540
4559
  {
@@ -4558,9 +4577,9 @@ var FilterChip = React23.forwardRef(
4558
4577
  )
4559
4578
  );
4560
4579
  FilterChip.displayName = "FilterChip";
4561
- var HeatStrip = React23.forwardRef(
4580
+ var HeatStrip = React24.forwardRef(
4562
4581
  ({ cells, states, ticks, cellSize = 14, className, ...props }, ref) => {
4563
- const byKey = React23.useMemo(
4582
+ const byKey = React24.useMemo(
4564
4583
  () => new Map(states.map((s) => [s.key, s])),
4565
4584
  [states]
4566
4585
  );
@@ -4587,14 +4606,14 @@ var HeatStrip = React23.forwardRef(
4587
4606
  return /* @__PURE__ */ jsx(
4588
4607
  "span",
4589
4608
  {
4590
- className: "shrink-0 text-meta tabular-nums text-muted-foreground",
4609
+ className: "shrink-0 text-sm tabular-nums text-muted-foreground",
4591
4610
  style: { width: cellSize },
4592
4611
  children: tick ? tick.label : ""
4593
4612
  },
4594
4613
  i
4595
4614
  );
4596
4615
  }) }) : null,
4597
- /* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1 text-meta", children: states.map((s) => /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1.5", children: [
4616
+ /* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center gap-x-3 gap-y-1 text-sm", children: states.map((s) => /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1.5", children: [
4598
4617
  /* @__PURE__ */ jsx(
4599
4618
  "span",
4600
4619
  {
@@ -4612,54 +4631,58 @@ var HeatStrip = React23.forwardRef(
4612
4631
  }
4613
4632
  );
4614
4633
  HeatStrip.displayName = "HeatStrip";
4615
- var LABEL = {
4616
- graph_data: "graph data",
4617
- llm: "llm",
4618
- third_party: "third party",
4619
- cache: "cache",
4620
- human: "human",
4621
- agent: "agent"
4622
- };
4623
- var SWATCH2 = {
4624
- graph_data: "bg-data-1",
4625
- llm: "bg-data-7",
4626
- third_party: "bg-data-8",
4627
- cache: "bg-data-3",
4628
- human: "bg-data-6",
4629
- agent: "bg-muted-foreground"
4634
+ var layerLabel = (layer) => layer.replace(/_/g, " ");
4635
+ var UNPAINTED2 = {
4636
+ swatch: "bg-muted-foreground",
4637
+ // Edge only, no ground: a bar's identity is its rail and its address, and a
4638
+ // wash under every bar turns a track into a stack of coloured blocks. A
4639
+ // consumer that wants the ground says so in its own `tint`.
4640
+ tint: "border-border",
4641
+ // Unpainted type is ordinary type. A muted address would say *subordinate*,
4642
+ // which is not what "nobody gave this layer a colour" means.
4643
+ text: "text-foreground"
4630
4644
  };
4631
- var LayerChip = React23.forwardRef(
4632
- ({ layer, count, dim, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4633
- "span",
4634
- {
4635
- ref,
4636
- className: cn(
4637
- "inline-flex max-w-full shrink-0 items-center gap-1.5 font-mono text-meta",
4638
- dim ? "text-muted-foreground/70" : "text-muted-foreground",
4639
- className
4640
- ),
4641
- ...props,
4642
- children: [
4643
- /* @__PURE__ */ jsx(
4644
- "span",
4645
- {
4646
- "aria-hidden": true,
4647
- className: cn(
4648
- "size-1.5 shrink-0",
4649
- dim ? "bg-muted-foreground/50" : SWATCH2[layer]
4650
- )
4651
- }
4645
+ var layerPaint = (palette, layer) => ({ ...UNPAINTED2, ...palette?.[layer] });
4646
+ var LayerChip = React24.forwardRef(
4647
+ ({ layer, count, label, dim, swatch, palette, className, ...props }, ref) => {
4648
+ const paint = layerPaint(palette, layer);
4649
+ return /* @__PURE__ */ jsxs(
4650
+ "span",
4651
+ {
4652
+ ref,
4653
+ className: cn(
4654
+ // A layer is a **name**, not an address. `graph data` has a space in
4655
+ // it — it is already prose — so it takes the body face at the root
4656
+ // size, and mono is reserved for the thing that really is an address
4657
+ // (`model/Orders@v2` on the row below it). Small muted bold mono made
4658
+ // a row heading look like a technical footnote.
4659
+ "inline-flex max-w-full shrink-0 items-center gap-1.5",
4660
+ dim ? "text-muted-foreground/70" : "text-foreground",
4661
+ className
4652
4662
  ),
4653
- /* @__PURE__ */ jsx("span", { className: "truncate", children: LABEL[layer] }),
4654
- count != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 tabular-nums opacity-70", children: count }) : null
4655
- ]
4656
- }
4657
- )
4663
+ ...props,
4664
+ children: [
4665
+ /* @__PURE__ */ jsx(
4666
+ "span",
4667
+ {
4668
+ "aria-hidden": true,
4669
+ className: cn(
4670
+ "size-1.5 shrink-0",
4671
+ dim ? "bg-muted-foreground/50" : swatch ?? paint.swatch
4672
+ )
4673
+ }
4674
+ ),
4675
+ /* @__PURE__ */ jsx("span", { className: "truncate", children: label ?? layerLabel(layer) }),
4676
+ count != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm tabular-nums text-muted-foreground", children: count }) : null
4677
+ ]
4678
+ }
4679
+ );
4680
+ }
4658
4681
  );
4659
4682
  LayerChip.displayName = "LayerChip";
4660
- var LayerSection = React23.forwardRef(
4661
- ({ layer, summary, count, dim, className, children, ...props }, ref) => {
4662
- const empty = React23.Children.count(children) === 0;
4683
+ var LayerSection = React24.forwardRef(
4684
+ ({ layer, summary, count, dim, palette, className, children, ...props }, ref) => {
4685
+ const empty = React24.Children.count(children) === 0;
4663
4686
  return /* @__PURE__ */ jsxs(
4664
4687
  "section",
4665
4688
  {
@@ -4668,125 +4691,562 @@ var LayerSection = React23.forwardRef(
4668
4691
  ...props,
4669
4692
  children: [
4670
4693
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-baseline gap-2 border-b border-border pb-1", children: [
4671
- /* @__PURE__ */ jsx(LayerChip, { layer, count, dim }),
4672
- summary != null ? /* @__PURE__ */ jsx("span", { className: "ml-auto min-w-0 shrink truncate text-meta text-muted-foreground", children: summary }) : null
4694
+ /* @__PURE__ */ jsx(LayerChip, { layer, count, dim, palette }),
4695
+ summary != null ? /* @__PURE__ */ jsx("span", { className: "ml-auto min-w-0 shrink truncate text-sm text-muted-foreground", children: summary }) : null
4673
4696
  ] }),
4674
- empty ? /* @__PURE__ */ jsx("p", { className: "px-1 py-1 text-meta text-muted-foreground/70", children: "no rules in this layer" }) : /* @__PURE__ */ jsx("div", { className: cn("flex min-w-0 flex-col", dim && "opacity-60"), children })
4697
+ empty ? /* @__PURE__ */ jsx("p", { className: "px-1 py-1 text-sm text-muted-foreground/70", children: "no rules in this layer" }) : /* @__PURE__ */ jsx("div", { className: cn("flex min-w-0 flex-col", dim && "opacity-60"), children })
4675
4698
  ]
4676
4699
  }
4677
4700
  );
4678
4701
  }
4679
4702
  );
4680
4703
  LayerSection.displayName = "LayerSection";
4681
- var MARK = {
4682
- out: "bg-primary",
4683
- in: "bg-data-1",
4684
- refused: "bg-destructive",
4685
- skipped: "bg-muted-foreground/30"
4686
- };
4687
- var MARK_LABEL = {
4704
+ var STATE_LABEL = {
4705
+ declared: "declared",
4688
4706
  out: "sent",
4689
4707
  in: "read",
4690
4708
  refused: "refused",
4691
4709
  skipped: "skipped"
4692
4710
  };
4693
- var LayerStrip = React23.forwardRef(
4711
+ var STATE_BAR = {
4712
+ declared: "border-dashed",
4713
+ out: "",
4714
+ in: "",
4715
+ refused: "border-destructive bg-background",
4716
+ skipped: "border-dashed opacity-60"
4717
+ };
4718
+ var stateLabel = (state) => STATE_LABEL[state] ?? state;
4719
+ var formatElapsed = (ms) => {
4720
+ if (ms < 1e3) return `${Math.round(ms)}ms`;
4721
+ if (ms < 6e4) return `${(ms / 1e3).toFixed(ms < 1e4 ? 1 : 0)}s`;
4722
+ const m = Math.floor(ms / 6e4);
4723
+ return `${m}m ${Math.round(ms % 6e4 / 1e3)}s`;
4724
+ };
4725
+ var LayerStrip = React24.forwardRef(
4694
4726
  ({
4695
4727
  bands,
4696
- steps,
4697
- onSelectStep,
4698
- selectedStep,
4728
+ items,
4729
+ scale = "seq",
4730
+ domain,
4731
+ ticks,
4732
+ formatTick,
4733
+ brackets,
4734
+ seams,
4735
+ onSelectItem,
4736
+ selectedItem,
4737
+ hoverDetail = true,
4738
+ itemDetail,
4739
+ defaultCollapsed,
4740
+ collapsed,
4741
+ onCollapsedChange,
4742
+ collapsible = true,
4699
4743
  frozenLabels = true,
4744
+ labelWidth = 15.5,
4745
+ minTrackWidth = 26,
4746
+ minSlotWidth = 6,
4747
+ palette,
4700
4748
  className,
4701
4749
  ...props
4702
4750
  }, ref) => {
4703
- const byBand = (layer) => steps.map((step) => ({
4704
- step,
4705
- touch: step.touches.find((t) => t.layer === layer)
4706
- }));
4707
- return /* @__PURE__ */ jsx(
4751
+ const [ownCollapsed, setOwnCollapsed] = React24.useState(
4752
+ defaultCollapsed ?? []
4753
+ );
4754
+ const shut = collapsed ?? ownCollapsed;
4755
+ const setShut = (next) => {
4756
+ if (collapsed == null) setOwnCollapsed(next);
4757
+ onCollapsedChange?.(next);
4758
+ };
4759
+ const withParts = bands.filter((b) => (b.parts?.length ?? 0) > 0);
4760
+ const allShut = withParts.length > 0 && withParts.every((b) => shut.includes(b.layer));
4761
+ const ends = items.map((i) => i.end ?? i.start + (scale === "seq" ? 1 : 0));
4762
+ const starts = items.map((i) => i.start);
4763
+ const d0 = domain?.[0] ?? (starts.length ? Math.min(...starts) : 0);
4764
+ const d1 = domain?.[1] ?? (ends.length ? Math.max(...ends) : d0 + 1);
4765
+ const span = d1 - d0 || 1;
4766
+ const pct = (value) => (value - d0) / span * 100;
4767
+ const axisTicks = ticks ?? (scale === "seq" ? Array.from({ length: Math.ceil(span) }, (_, n) => d0 + n) : Array.from({ length: 5 }, (_, n) => d0 + span / 4 * n));
4768
+ const tickLabel = formatTick ?? ((value) => scale === "seq" ? `${Math.round(value)}` : formatElapsed(value - d0));
4769
+ const label = (content, extra, indent, dim) => /* @__PURE__ */ jsx(
4708
4770
  "div",
4709
4771
  {
4710
- ref,
4772
+ style: { width: `${labelWidth}rem` },
4711
4773
  className: cn(
4712
- "min-w-0 overflow-x-auto rounded-control border border-border",
4713
- className
4774
+ "flex shrink-0 items-center gap-2 border-border border-r px-2.5 py-1.5",
4775
+ // A frozen label is normally opaque, or the bars it is parked over
4776
+ // would scroll through it. A dim row has no bars — that is what dim
4777
+ // means — so it can go transparent and let the row's own muted ground
4778
+ // run the full width. Without this the label column paints `bg-card`
4779
+ // straight over the tint and only the empty track reads as unspent,
4780
+ // which is the half a reader is least likely to look at.
4781
+ dim ? "bg-transparent" : "bg-card",
4782
+ indent && "pl-5",
4783
+ frozenLabels && "sticky left-0 z-10",
4784
+ extra
4714
4785
  ),
4715
- ...props,
4716
- children: /* @__PURE__ */ jsxs(
4717
- "div",
4718
- {
4719
- className: "grid min-w-max",
4720
- style: {
4721
- gridTemplateColumns: `9rem repeat(${steps.length}, minmax(2.5rem, 1fr))`
4722
- },
4723
- children: [
4786
+ children: content
4787
+ }
4788
+ );
4789
+ const trackFloor = Math.max(minTrackWidth, axisTicks.length * minSlotWidth);
4790
+ const row = (key, head, track, dim) => /* @__PURE__ */ jsxs(
4791
+ "div",
4792
+ {
4793
+ className: cn(
4794
+ "flex min-h-12 border-border border-b last:border-b-0",
4795
+ // Muting the text alone said *this row is quiet*; the row has to say
4796
+ // *nothing spends this layer*, which is a band, not a weight.
4797
+ dim && "bg-muted/60"
4798
+ ),
4799
+ children: [
4800
+ head,
4801
+ /* @__PURE__ */ jsx(
4802
+ "div",
4803
+ {
4804
+ style: { minWidth: `${trackFloor}rem` },
4805
+ className: "relative min-w-0 flex-1",
4806
+ children: track
4807
+ }
4808
+ )
4809
+ ]
4810
+ },
4811
+ key
4812
+ );
4813
+ const partOf = (item) => item.part ? bands.find((b) => b.layer === item.layer)?.parts?.find((p) => p.id === item.part) : void 0;
4814
+ const spanLabel = (item) => {
4815
+ const end = item.end ?? item.start + (scale === "seq" ? 1 : 0);
4816
+ if (scale === "seq") {
4817
+ return end - item.start <= 1 ? `step ${item.start}` : `steps ${item.start}\u2013${end - 1}`;
4818
+ }
4819
+ return `${formatElapsed(item.start - d0)} \u2192 ${formatElapsed(
4820
+ end - d0
4821
+ )} \xB7 ${formatElapsed(end - item.start)}`;
4822
+ };
4823
+ const detail = (item) => {
4824
+ if (itemDetail) return itemDetail(item);
4825
+ const state = item.state ?? "declared";
4826
+ const part = partOf(item);
4827
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1.5", children: [
4828
+ /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
4829
+ /* @__PURE__ */ jsx(
4830
+ "span",
4831
+ {
4832
+ className: cn(
4833
+ "min-w-0 flex-1 truncate font-mono text-base",
4834
+ state === "refused" && "text-destructive line-through"
4835
+ ),
4836
+ children: item.label
4837
+ }
4838
+ ),
4839
+ /* @__PURE__ */ jsx(
4840
+ "span",
4841
+ {
4842
+ className: cn(
4843
+ "shrink-0 text-sm",
4844
+ state === "refused" ? "text-destructive" : "text-muted-foreground"
4845
+ ),
4846
+ children: stateLabel(state)
4847
+ }
4848
+ )
4849
+ ] }),
4850
+ /* @__PURE__ */ jsxs("dl", { className: "grid grid-cols-[auto_1fr] gap-x-2 gap-y-1 text-sm", children: [
4851
+ /* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "layer" }),
4852
+ /* @__PURE__ */ jsx("dd", { className: "min-w-0", children: /* @__PURE__ */ jsx(LayerChip, { layer: item.layer, palette }) }),
4853
+ part ? /* @__PURE__ */ jsxs(Fragment, { children: [
4854
+ /* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "participant" }),
4855
+ /* @__PURE__ */ jsx("dd", { className: "min-w-0 break-all font-mono", children: part.label })
4856
+ ] }) : null,
4857
+ /* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "when" }),
4858
+ /* @__PURE__ */ jsx("dd", { className: "min-w-0 tabular-nums", children: spanLabel(item) }),
4859
+ item.note ? /* @__PURE__ */ jsxs(Fragment, { children: [
4860
+ /* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "what it does" }),
4861
+ /* @__PURE__ */ jsx("dd", { className: "min-w-0 font-mono", children: item.note })
4862
+ ] }) : null,
4863
+ item.ruleMatched ? /* @__PURE__ */ jsxs(Fragment, { children: [
4864
+ /* @__PURE__ */ jsx("dt", { className: "text-muted-foreground", children: "refused by" }),
4865
+ /* @__PURE__ */ jsx("dd", { className: "min-w-0 break-all font-mono text-destructive", children: item.ruleMatched })
4866
+ ] }) : null
4867
+ ] })
4868
+ ] });
4869
+ };
4870
+ const bar = (item, compact = false) => {
4871
+ const state = item.state ?? "declared";
4872
+ const end = item.end ?? item.start + (scale === "seq" ? 1 : 0);
4873
+ const min = compact ? "0.75rem" : "4.5rem";
4874
+ const Tag = onSelectItem ? "button" : "div";
4875
+ const drawn = /* @__PURE__ */ jsxs(
4876
+ Tag,
4877
+ {
4878
+ ...onSelectItem ? { type: "button", onClick: () => onSelectItem(item.id) } : {},
4879
+ title: hoverDetail ? void 0 : [item.label, stateLabel(state), item.note, item.ruleMatched].filter(Boolean).join(" \xB7 "),
4880
+ style: (
4881
+ // A bar is at least readable-wide, and one near the end grows
4882
+ // inwards rather than off the track: anchor whichever edge is
4883
+ // nearer its own end of the axis, so the moment it names stays
4884
+ // true where the reader is looking.
4885
+ pct(item.start) > 50 ? {
4886
+ right: `${100 - pct(end)}%`,
4887
+ width: `max(${min}, calc(${pct(end) - pct(item.start)}% - 3px))`
4888
+ } : {
4889
+ left: `${pct(item.start)}%`,
4890
+ width: `max(${min}, calc(${pct(end) - pct(item.start)}% - 3px))`
4891
+ }
4892
+ ),
4893
+ className: cn(
4894
+ "-translate-y-1/2 absolute top-1/2 flex min-w-0 items-stretch overflow-hidden rounded-xs border py-0.5 text-left",
4895
+ compact ? "gap-1 pr-1" : "gap-1.5 pr-1.5",
4896
+ // Chosen, not merged. `twMerge` would resolve the kit's own tints
4897
+ // against `border-destructive` correctly, but the tint is a
4898
+ // consumer's string now: a project that paints a layer with its own
4899
+ // utility class (`layer-llm`, a plugin's output) hands `cn` two
4900
+ // classes it cannot see a conflict between, and stylesheet order
4901
+ // would decide whether a refusal reads as refused.
4902
+ state === "refused" ? null : layerPaint(palette, item.layer).tint,
4903
+ STATE_BAR[state] ?? "",
4904
+ onSelectItem && "cursor-pointer hover:bg-accent",
4905
+ selectedItem === item.id && "ring-1 ring-ring",
4906
+ "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"
4907
+ ),
4908
+ children: [
4909
+ /* @__PURE__ */ jsx(
4910
+ "span",
4911
+ {
4912
+ "aria-hidden": true,
4913
+ className: cn(
4914
+ "w-1 shrink-0",
4915
+ layerPaint(palette, item.layer).swatch
4916
+ )
4917
+ }
4918
+ ),
4919
+ /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-col justify-center", children: [
4724
4920
  /* @__PURE__ */ jsx(
4725
- "div",
4921
+ "span",
4726
4922
  {
4727
4923
  className: cn(
4728
- "border-b border-border bg-background px-2 py-1",
4729
- frozenLabels && "sticky left-0 z-20"
4924
+ "truncate font-mono text-sm",
4925
+ state === "refused" && "text-destructive line-through"
4730
4926
  ),
4731
- children: /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: "layer" })
4927
+ children: item.label
4732
4928
  }
4733
4929
  ),
4734
- steps.map((step) => /* @__PURE__ */ jsx(
4735
- "button",
4930
+ compact ? null : /* @__PURE__ */ jsx("span", { className: "truncate text-xs text-muted-foreground", children: item.note ?? (state === "declared" ? null : stateLabel(state)) })
4931
+ ] })
4932
+ ]
4933
+ },
4934
+ item.id
4935
+ );
4936
+ if (!hoverDetail) return drawn;
4937
+ return /* @__PURE__ */ jsxs(HoverCard, { openDelay: 140, closeDelay: 80, children: [
4938
+ /* @__PURE__ */ jsx(HoverCardTrigger, { asChild: true, children: drawn }),
4939
+ /* @__PURE__ */ jsx(
4940
+ HoverCardContent,
4941
+ {
4942
+ align: "start",
4943
+ side: "top",
4944
+ className: "w-auto max-w-80 p-3",
4945
+ children: detail(item)
4946
+ }
4947
+ )
4948
+ ] }, item.id);
4949
+ };
4950
+ const bracketLanes = React24.useMemo(() => {
4951
+ const lanes = [];
4952
+ const ordered = [...brackets ?? []].sort(
4953
+ (a, b) => b.end - b.start - (a.end - a.start)
4954
+ );
4955
+ for (const bracket of ordered) {
4956
+ const lane = lanes.find(
4957
+ (existing) => existing.every(
4958
+ (other) => bracket.end <= other.start || bracket.start >= other.end
4959
+ )
4960
+ );
4961
+ if (lane) lane.push(bracket);
4962
+ else lanes.push([bracket]);
4963
+ }
4964
+ return lanes;
4965
+ }, [brackets]);
4966
+ const seamLines = React24.useMemo(() => {
4967
+ const placed = (seams ?? []).filter((seam) => seam.at != null);
4968
+ const loose = (seams ?? []).filter((seam) => seam.at == null);
4969
+ return [...placed.length ? [placed] : [], ...loose.map((s2) => [s2])];
4970
+ }, [seams]);
4971
+ const itemsOf = (layer, part) => items.filter(
4972
+ (i) => i.layer === layer && (part ? i.part === part : !i.part)
4973
+ );
4974
+ const allOf = (layer) => items.filter((i) => i.layer === layer);
4975
+ return /* @__PURE__ */ jsx(
4976
+ "div",
4977
+ {
4978
+ ref,
4979
+ className: cn(
4980
+ "min-w-0 overflow-x-auto rounded-control border border-border bg-card",
4981
+ className
4982
+ ),
4983
+ ...props,
4984
+ children: /* @__PURE__ */ jsxs("div", { className: "relative min-w-max", children: [
4985
+ seams?.length ? /* @__PURE__ */ jsx(
4986
+ "div",
4987
+ {
4988
+ "aria-hidden": true,
4989
+ style: { left: `${labelWidth}rem` },
4990
+ className: "pointer-events-none absolute inset-y-0 right-0",
4991
+ children: seams.map(
4992
+ (seam) => seam.at == null ? null : /* @__PURE__ */ jsx(
4993
+ "span",
4994
+ {
4995
+ style: { left: `${pct(seam.at)}%` },
4996
+ className: cn(
4997
+ "absolute inset-y-0 border-l",
4998
+ seam.conditional ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/60"
4999
+ )
5000
+ },
5001
+ seam.id
5002
+ )
5003
+ )
5004
+ }
5005
+ ) : null,
5006
+ row(
5007
+ "axis",
5008
+ label(
5009
+ /* @__PURE__ */ jsxs(Fragment, { children: [
5010
+ collapsible && withParts.length > 0 ? /* @__PURE__ */ jsxs(
5011
+ "button",
5012
+ {
5013
+ type: "button",
5014
+ onClick: () => setShut(allShut ? [] : withParts.map((b) => b.layer)),
5015
+ className: "-ml-1 flex items-center gap-0.5 rounded-xs px-1 text-sm text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
5016
+ children: [
5017
+ allShut ? /* @__PURE__ */ jsx(ChevronRight, { "aria-hidden": true, className: "size-3 shrink-0" }) : /* @__PURE__ */ jsx(ChevronDown, { "aria-hidden": true, className: "size-3 shrink-0" }),
5018
+ allShut ? "expand all" : "collapse all"
5019
+ ]
5020
+ }
5021
+ ) : /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: "layer" }),
5022
+ /* @__PURE__ */ jsx("span", { className: "ml-auto text-sm text-muted-foreground/70", children: scale === "seq" ? "step" : "elapsed" })
5023
+ ] }),
5024
+ "min-h-0 py-1"
5025
+ ),
5026
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-0", children: axisTicks.map((value) => {
5027
+ const atEnd = pct(value) > 99;
5028
+ return /* @__PURE__ */ jsx(
5029
+ "span",
4736
5030
  {
4737
- type: "button",
4738
- onClick: () => onSelectStep?.(step.id),
4739
- title: step.seq != null ? `${step.label} \xB7 seq ${step.seq}` : step.label,
5031
+ style: atEnd ? { right: 0 } : { left: `${pct(value)}%` },
4740
5032
  className: cn(
4741
- "border-b border-l border-border px-1 py-1 text-meta",
4742
- "truncate text-muted-foreground",
4743
- onSelectStep && "cursor-pointer hover:bg-accent",
4744
- selectedStep === step.id && "bg-accent text-foreground",
4745
- "focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring"
5033
+ "absolute inset-y-0 text-sm text-muted-foreground",
5034
+ atEnd ? "border-border/60 border-r pr-1" : "border-border/60 border-l pl-1"
4746
5035
  ),
4747
- children: step.label
5036
+ children: tickLabel(value)
4748
5037
  },
4749
- step.id
4750
- )),
4751
- bands.map((band) => /* @__PURE__ */ jsxs(React23.Fragment, { children: [
4752
- /* @__PURE__ */ jsx(
4753
- "div",
4754
- {
4755
- className: cn(
4756
- "flex items-center border-b border-border bg-background px-2 py-1",
4757
- frozenLabels && "sticky left-0 z-10"
4758
- ),
4759
- children: band.label ?? /* @__PURE__ */ jsx(LayerChip, { layer: band.layer })
4760
- }
4761
- ),
4762
- byBand(band.layer).map(({ step, touch }) => /* @__PURE__ */ jsx(
4763
- "div",
5038
+ value
5039
+ );
5040
+ }) })
5041
+ ),
5042
+ bracketLanes.map(
5043
+ (lane, laneIndex) => row(
5044
+ `brackets-${laneIndex}`,
5045
+ label(
5046
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: laneIndex === 0 ? "its bound" : "" }),
5047
+ "min-h-0 py-1"
5048
+ ),
5049
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-0 py-1", children: lane.map((bracket) => /* @__PURE__ */ jsx(
5050
+ "span",
5051
+ {
5052
+ style: {
5053
+ left: `${pct(bracket.start)}%`,
5054
+ width: `${pct(bracket.end) - pct(bracket.start)}%`
5055
+ },
5056
+ className: "absolute inset-y-1 flex items-center justify-center truncate rounded-xs border border-border border-dashed px-1 text-sm text-muted-foreground",
5057
+ children: bracket.label
5058
+ },
5059
+ bracket.id
5060
+ )) })
5061
+ )
5062
+ ),
5063
+ seamLines.map(
5064
+ (line, lineIndex) => row(
5065
+ `seams-${lineIndex}`,
5066
+ label(
5067
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: lineIndex === 0 ? "its gates" : "" })
5068
+ ),
5069
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-0", children: line.map((seam) => {
5070
+ const named = /* @__PURE__ */ jsxs("span", { className: "flex min-w-0 flex-col justify-center", children: [
5071
+ /* @__PURE__ */ jsx("span", { className: "truncate text-sm", children: seam.label }),
5072
+ seam.note ? /* @__PURE__ */ jsx("span", { className: "truncate text-xs text-muted-foreground", children: seam.note }) : null
5073
+ ] });
5074
+ if (seam.at == null)
5075
+ return /* @__PURE__ */ jsx(
5076
+ "span",
5077
+ {
5078
+ className: "absolute inset-x-0 inset-y-1.5 flex items-center justify-center rounded-xs border border-dotted border-muted-foreground/45 px-1.5 text-muted-foreground",
5079
+ children: named
5080
+ },
5081
+ seam.id
5082
+ );
5083
+ const after = seam.edge === "after";
5084
+ const neighbours = line.map((other) => other.at).filter((value) => value != null);
5085
+ const bound = after ? pct(seam.at) - Math.max(
5086
+ ...neighbours.filter((v) => v < (seam.at ?? 0)).map(pct),
5087
+ 0
5088
+ ) : Math.min(
5089
+ ...neighbours.filter((v) => v > (seam.at ?? 0)).map(pct),
5090
+ 100
5091
+ ) - pct(seam.at);
5092
+ return /* @__PURE__ */ jsx(
5093
+ "span",
4764
5094
  {
4765
- title: touch ? `${step.label} \xB7 ${MARK_LABEL[touch.direction]}${touch.address ? ` \xB7 ${touch.address}` : ""}${touch.ruleMatched ? ` \xB7 ${touch.ruleMatched}` : ""}` : void 0,
5095
+ style: {
5096
+ maxWidth: `${Math.max(bound, 12)}%`,
5097
+ ...after ? { right: `${100 - pct(seam.at)}%` } : { left: `${pct(seam.at)}%` }
5098
+ },
4766
5099
  className: cn(
4767
- "flex items-center justify-center border-b border-l border-border px-1 py-1",
4768
- selectedStep === step.id && "bg-accent"
5100
+ // The label hangs off the side the cost falls on:
5101
+ // before the line, nothing is spent; after it, the
5102
+ // pass is already paid for.
5103
+ "absolute inset-y-1.5 flex items-center bg-card px-1.5 text-muted-foreground",
5104
+ after ? "border-r-2 text-right" : "border-l-2",
5105
+ seam.conditional ? "border-dashed border-muted-foreground/45" : "border-muted-foreground/70"
4769
5106
  ),
4770
- children: touch ? /* @__PURE__ */ jsx(
5107
+ children: named
5108
+ },
5109
+ seam.id
5110
+ );
5111
+ }) })
5112
+ )
5113
+ ),
5114
+ bands.map((band) => {
5115
+ const own = itemsOf(band.layer);
5116
+ const parts = band.parts ?? [];
5117
+ const dim = allOf(band.layer).length === 0;
5118
+ const spine = band.spine ?? false;
5119
+ const foldable = collapsible && parts.length > 0;
5120
+ const isShut = foldable && shut.includes(band.layer);
5121
+ const onLine = isShut ? allOf(band.layer) : own;
5122
+ return /* @__PURE__ */ jsxs(React24.Fragment, { children: [
5123
+ row(
5124
+ band.layer,
5125
+ label(
5126
+ /* @__PURE__ */ jsxs(Fragment, { children: [
5127
+ foldable ? /* @__PURE__ */ jsxs(
5128
+ "button",
5129
+ {
5130
+ type: "button",
5131
+ "aria-expanded": !isShut,
5132
+ "aria-label": `${isShut ? "Show" : "Hide"} the ${parts.length} participants under ${band.layer}`,
5133
+ onClick: () => setShut(
5134
+ isShut ? shut.filter((l) => l !== band.layer) : [...shut, band.layer]
5135
+ ),
5136
+ className: "-ml-1 flex shrink-0 items-center gap-1 rounded-xs px-1 hover:bg-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
5137
+ children: [
5138
+ isShut ? /* @__PURE__ */ jsx(
5139
+ ChevronRight,
5140
+ {
5141
+ "aria-hidden": true,
5142
+ className: "size-3 shrink-0 text-muted-foreground"
5143
+ }
5144
+ ) : /* @__PURE__ */ jsx(
5145
+ ChevronDown,
5146
+ {
5147
+ "aria-hidden": true,
5148
+ className: "size-3 shrink-0 text-muted-foreground"
5149
+ }
5150
+ ),
5151
+ band.label ?? /* @__PURE__ */ jsx(
5152
+ LayerChip,
5153
+ {
5154
+ layer: band.layer,
5155
+ dim,
5156
+ palette
5157
+ }
5158
+ )
5159
+ ]
5160
+ }
5161
+ ) : /* @__PURE__ */ jsx("span", { className: "shrink-0 pl-4", children: band.label ?? /* @__PURE__ */ jsx(
5162
+ LayerChip,
5163
+ {
5164
+ layer: band.layer,
5165
+ dim,
5166
+ palette
5167
+ }
5168
+ ) }),
5169
+ band.note ? /* @__PURE__ */ jsx(
4771
5170
  "span",
4772
5171
  {
4773
- "aria-label": MARK_LABEL[touch.direction],
5172
+ title: band.note,
4774
5173
  className: cn(
4775
- "h-1.5 w-full max-w-6 rounded-full",
4776
- MARK[touch.direction],
4777
- // Struck in place: the mark stays so the cell is not
4778
- // mistaken for a step that never reached here.
4779
- touch.direction === "refused" && "relative after:absolute after:inset-x-0 after:top-1/2 after:h-px after:-translate-y-1/2 after:bg-destructive-foreground/70"
4780
- )
5174
+ "ml-auto min-w-0 truncate text-sm",
5175
+ dim ? "text-muted-foreground/70" : "text-muted-foreground"
5176
+ ),
5177
+ children: band.note
4781
5178
  }
4782
- ) : /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "text-muted-foreground/25", children: "\xB7" })
4783
- },
4784
- `${band.layer}-${step.id}`
4785
- ))
4786
- ] }, band.layer))
4787
- ]
4788
- }
4789
- )
5179
+ ) : null
5180
+ ] }),
5181
+ void 0,
5182
+ false,
5183
+ dim
5184
+ ),
5185
+ /* @__PURE__ */ jsxs(Fragment, { children: [
5186
+ spine ? /* @__PURE__ */ jsx(
5187
+ "span",
5188
+ {
5189
+ "aria-hidden": true,
5190
+ className: "-translate-y-1/2 absolute inset-x-0 top-1/2 border-border border-t"
5191
+ }
5192
+ ) : null,
5193
+ onLine.map((item) => bar(item, isShut))
5194
+ ] }),
5195
+ dim
5196
+ ),
5197
+ (isShut ? [] : parts).map((part) => {
5198
+ const spent = itemsOf(band.layer, part.id);
5199
+ const unspent = spent.length === 0;
5200
+ return row(
5201
+ `${band.layer}-${part.id}`,
5202
+ label(
5203
+ /* @__PURE__ */ jsxs(
5204
+ "span",
5205
+ {
5206
+ className: "flex min-w-0 flex-col",
5207
+ title: part.label,
5208
+ children: [
5209
+ /* @__PURE__ */ jsx(
5210
+ "span",
5211
+ {
5212
+ className: cn(
5213
+ "truncate font-mono text-sm",
5214
+ // The address wears its layer, so the row and the
5215
+ // band's dot are visibly one thing. Unspent
5216
+ // overrides it: *this was never reached* outranks
5217
+ // *this is graph data*.
5218
+ unspent ? "text-muted-foreground/70" : layerPaint(palette, band.layer).text
5219
+ ),
5220
+ children: part.label
5221
+ }
5222
+ ),
5223
+ part.note ? /* @__PURE__ */ jsx(
5224
+ "span",
5225
+ {
5226
+ className: cn(
5227
+ // What the participant owes sits a rung under the
5228
+ // address that owes it. At the same size the two
5229
+ // lines read as one wrapped label.
5230
+ "truncate text-xs",
5231
+ unspent ? "text-muted-foreground/70" : "text-muted-foreground"
5232
+ ),
5233
+ children: part.note
5234
+ }
5235
+ ) : null
5236
+ ]
5237
+ }
5238
+ ),
5239
+ void 0,
5240
+ true,
5241
+ unspent
5242
+ ),
5243
+ spent.map((item) => bar(item)),
5244
+ unspent
5245
+ );
5246
+ })
5247
+ ] }, band.layer);
5248
+ })
5249
+ ] })
4790
5250
  }
4791
5251
  );
4792
5252
  }
@@ -4839,14 +5299,14 @@ function Swatch({ kind = "dot", color }) {
4839
5299
  }
4840
5300
  );
4841
5301
  }
4842
- var Legend = React23.forwardRef(
5302
+ var Legend = React24.forwardRef(
4843
5303
  ({ orientation = "row", className, children, ...props }, ref) => /* @__PURE__ */ jsx(
4844
5304
  "div",
4845
5305
  {
4846
5306
  ref,
4847
5307
  role: "list",
4848
5308
  className: cn(
4849
- "flex gap-x-3 gap-y-1 text-meta",
5309
+ "flex gap-x-3 gap-y-1 text-sm",
4850
5310
  orientation === "row" ? "flex-wrap items-center" : "flex-col",
4851
5311
  className
4852
5312
  ),
@@ -4856,7 +5316,7 @@ var Legend = React23.forwardRef(
4856
5316
  )
4857
5317
  );
4858
5318
  Legend.displayName = "Legend";
4859
- var LegendItem = React23.forwardRef(
5319
+ var LegendItem = React24.forwardRef(
4860
5320
  ({ kind, color, label, count, className, ...props }, ref) => /* @__PURE__ */ jsxs(
4861
5321
  "div",
4862
5322
  {
@@ -4873,7 +5333,7 @@ var LegendItem = React23.forwardRef(
4873
5333
  )
4874
5334
  );
4875
5335
  LegendItem.displayName = "LegendItem";
4876
- var LensChip = React23.forwardRef(
5336
+ var LensChip = React24.forwardRef(
4877
5337
  ({ lens, onPick, className, ...props }, ref) => {
4878
5338
  const label = lens?.name ?? "Everything";
4879
5339
  const unset = lens == null;
@@ -4892,7 +5352,7 @@ var LensChip = React23.forwardRef(
4892
5352
  ] });
4893
5353
  const shell = cn(
4894
5354
  "inline-flex min-w-0 max-w-full items-center gap-1.5 rounded-control",
4895
- "border border-border px-1.5 py-0.5 text-meta",
5355
+ "border border-border px-1.5 py-0.5 text-sm",
4896
5356
  unset ? "text-muted-foreground" : "text-foreground",
4897
5357
  className
4898
5358
  );
@@ -4916,7 +5376,7 @@ var LensChip = React23.forwardRef(
4916
5376
  }
4917
5377
  );
4918
5378
  LensChip.displayName = "LensChip";
4919
- function describe(n) {
5379
+ function describe(n, palette) {
4920
5380
  switch (n.kind) {
4921
5381
  case "allow":
4922
5382
  return `${n.count} allow`;
@@ -4931,12 +5391,12 @@ function describe(n) {
4931
5391
  case "closes":
4932
5392
  return /* @__PURE__ */ jsxs("span", { className: "inline-flex items-center gap-1", children: [
4933
5393
  "closes",
4934
- n.layers.map((layer) => /* @__PURE__ */ jsx(LayerChip, { layer }, layer))
5394
+ n.layers.map((layer) => /* @__PURE__ */ jsx(LayerChip, { layer, palette }, layer))
4935
5395
  ] });
4936
5396
  }
4937
5397
  }
4938
- var LensRow = React23.forwardRef(
4939
- ({ name, narrows = [], usage, selected, onSelect, className, ...props }, ref) => {
5398
+ var LensRow = React24.forwardRef(
5399
+ ({ name, narrows = [], usage, selected, onSelect, palette, className, ...props }, ref) => {
4940
5400
  const interactive = Boolean(onSelect);
4941
5401
  return /* @__PURE__ */ jsxs(
4942
5402
  "div",
@@ -4962,8 +5422,8 @@ var LensRow = React23.forwardRef(
4962
5422
  ...props,
4963
5423
  children: [
4964
5424
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-baseline gap-2", children: [
4965
- /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate text-sm font-medium text-foreground", children: name }),
4966
- usage ? /* @__PURE__ */ jsxs("span", { className: "ml-auto shrink-0 text-meta text-muted-foreground", children: [
5425
+ /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate text-base font-medium text-foreground", children: name }),
5426
+ usage ? /* @__PURE__ */ jsxs("span", { className: "ml-auto shrink-0 text-sm text-muted-foreground", children: [
4967
5427
  "used in ",
4968
5428
  usage.runs,
4969
5429
  " run",
@@ -4971,17 +5431,17 @@ var LensRow = React23.forwardRef(
4971
5431
  usage.lastUsed ? ` \xB7 last ${usage.lastUsed}` : ""
4972
5432
  ] }) : null
4973
5433
  ] }),
4974
- narrows.length ? /* @__PURE__ */ jsx("div", { className: "flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 text-meta text-muted-foreground", children: narrows.map((n, i) => /* @__PURE__ */ jsxs(React23.Fragment, { children: [
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(React24.Fragment, { children: [
4975
5435
  i > 0 ? /* @__PURE__ */ jsx("span", { "aria-hidden": true, className: "opacity-40", children: "\xB7" }) : null,
4976
- /* @__PURE__ */ jsx("span", { className: "inline-flex items-center", children: describe(n) })
4977
- ] }, `${n.kind}-${i}`)) }) : /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground/70", children: "narrows nothing \u2014 the whole model, inside the guardrails" })
5436
+ /* @__PURE__ */ jsx("span", { className: "inline-flex items-center", children: describe(n, palette) })
5437
+ ] }, `${n.kind}-${i}`)) }) : /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground/70", children: "narrows nothing \u2014 the whole model, inside the guardrails" })
4978
5438
  ]
4979
5439
  }
4980
5440
  );
4981
5441
  }
4982
5442
  );
4983
5443
  LensRow.displayName = "LensRow";
4984
- var MatchPreview = React23.forwardRef(
5444
+ var MatchPreview = React24.forwardRef(
4985
5445
  ({ pattern, matches = [], loading, limit = 8, className, ...props }, ref) => {
4986
5446
  const hits = matches.filter((m) => m.matched);
4987
5447
  const misses = matches.filter((m) => !m.matched);
@@ -4998,14 +5458,14 @@ var MatchPreview = React23.forwardRef(
4998
5458
  ...props,
4999
5459
  children: [
5000
5460
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-baseline gap-2", children: [
5001
- /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: "what this matches" }),
5002
- /* @__PURE__ */ jsx("span", { className: "ml-auto shrink-0 text-meta tabular-nums text-muted-foreground", children: loading ? "\u2026" : `${hits.length} of ${matches.length}` })
5461
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: "what this matches" }),
5462
+ /* @__PURE__ */ jsx("span", { className: "ml-auto shrink-0 text-sm tabular-nums text-muted-foreground", children: loading ? "\u2026" : `${hits.length} of ${matches.length}` })
5003
5463
  ] }),
5004
5464
  loading ? /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1 py-0.5", children: [
5005
5465
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-3/5" }),
5006
5466
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-2/5" }),
5007
5467
  /* @__PURE__ */ jsx(Skeleton, { className: "h-3 w-1/2" })
5008
- ] }) : matches.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-meta text-muted-foreground/70", children: "nothing in this Graph to match \u2014 the layer has no participants yet" }) : hits.length === 0 ? /* @__PURE__ */ jsxs("p", { className: "text-meta text-destructive", children: [
5468
+ ] }) : matches.length === 0 ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground/70", children: "nothing in this Graph to match \u2014 the layer has no participants yet" }) : hits.length === 0 ? /* @__PURE__ */ jsxs("p", { className: "text-sm text-destructive", children: [
5009
5469
  /* @__PURE__ */ jsx("span", { className: "font-mono", children: pattern }),
5010
5470
  " matches nothing here"
5011
5471
  ] }) : null,
@@ -5018,7 +5478,7 @@ var MatchPreview = React23.forwardRef(
5018
5478
  },
5019
5479
  m.address
5020
5480
  )),
5021
- hidden > 0 ? /* @__PURE__ */ jsxs("span", { className: "pt-0.5 text-meta text-muted-foreground/70", children: [
5481
+ hidden > 0 ? /* @__PURE__ */ jsxs("span", { className: "pt-0.5 text-sm text-muted-foreground/70", children: [
5022
5482
  "and ",
5023
5483
  hidden,
5024
5484
  " more"
@@ -5097,7 +5557,7 @@ var TONE2 = {
5097
5557
  error: "text-destructive",
5098
5558
  info: "text-info"
5099
5559
  };
5100
- var MetricTile = React23.forwardRef(
5560
+ var MetricTile = React24.forwardRef(
5101
5561
  ({ label, value, caption, tone, meter, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
5102
5562
  "div",
5103
5563
  {
@@ -5108,7 +5568,7 @@ var MetricTile = React23.forwardRef(
5108
5568
  ),
5109
5569
  ...props,
5110
5570
  children: [
5111
- /* @__PURE__ */ jsx("span", { className: "truncate text-meta font-semibold uppercase tracking-wide text-muted-foreground", children: label }),
5571
+ /* @__PURE__ */ jsx("span", { className: "truncate text-sm font-semibold uppercase tracking-wide text-muted-foreground", children: label }),
5112
5572
  /* @__PURE__ */ jsx(
5113
5573
  "span",
5114
5574
  {
@@ -5117,12 +5577,12 @@ var MetricTile = React23.forwardRef(
5117
5577
  // `1,880` and `2 / 5` in adjacent tiles sit at different widths, and
5118
5578
  // a strip of six stops reading as one row of numbers.
5119
5579
  "font-mono text-lg font-semibold leading-tight",
5120
- tone ? TONE2[tone] : void 0
5580
+ tone ? TONE2[tone] ?? "text-foreground" : void 0
5121
5581
  ),
5122
5582
  children: value
5123
5583
  }
5124
5584
  ),
5125
- caption != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: caption }) : null,
5585
+ caption != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: caption }) : null,
5126
5586
  meter != null ? (
5127
5587
  // Not a <Progress>: that is a control-sized, rounded, animated bar for
5128
5588
  // work in flight. This is a 4px rule that says how much of a ceiling is
@@ -5136,7 +5596,7 @@ var MetricTile = React23.forwardRef(
5136
5596
  children: /* @__PURE__ */ jsx(
5137
5597
  "div",
5138
5598
  {
5139
- className: cn("h-full", tone ? TONE2[tone] : "text-primary", "bg-current"),
5599
+ className: cn("h-full", tone ? TONE2[tone] ?? "text-foreground" : "text-primary", "bg-current"),
5140
5600
  style: { width: `${Math.min(Math.max(meter, 0), 1) * 100}%` }
5141
5601
  }
5142
5602
  )
@@ -5149,7 +5609,7 @@ var MetricTile = React23.forwardRef(
5149
5609
  )
5150
5610
  );
5151
5611
  MetricTile.displayName = "MetricTile";
5152
- var MetricGrid = React23.forwardRef(
5612
+ var MetricGrid = React24.forwardRef(
5153
5613
  ({ minTileWidth = 120, gap = 6, className, style, children, ...props }, ref) => /* @__PURE__ */ jsx(
5154
5614
  "div",
5155
5615
  {
@@ -5208,7 +5668,7 @@ var NestedMenu = (props) => {
5208
5668
  }
5209
5669
  );
5210
5670
  };
5211
- var PanelBox = React23.forwardRef(
5671
+ var PanelBox = React24.forwardRef(
5212
5672
  ({ title, aside, flush, className, headerClassName, bodyClassName, children, ...props }, ref) => /* @__PURE__ */ jsxs(
5213
5673
  Card,
5214
5674
  {
@@ -5299,13 +5759,13 @@ function PanelStack({
5299
5759
  headerClassName,
5300
5760
  bodyClassName
5301
5761
  }) {
5302
- const groupRef = React23.useRef(null);
5303
- const refs = React23.useRef({});
5304
- const [collapsed, setCollapsed] = React23.useState(
5762
+ const groupRef = React24.useRef(null);
5763
+ const refs = React24.useRef({});
5764
+ const [collapsed, setCollapsed] = React24.useState(
5305
5765
  () => Object.fromEntries(sections.map((s) => [s.id, !!s.defaultCollapsed]))
5306
5766
  );
5307
- const didInit = React23.useRef(false);
5308
- React23.useLayoutEffect(() => {
5767
+ const didInit = React24.useRef(false);
5768
+ React24.useLayoutEffect(() => {
5309
5769
  if (didInit.current) return;
5310
5770
  didInit.current = true;
5311
5771
  const targets = sections.filter((s) => s.defaultCollapsed);
@@ -5337,18 +5797,18 @@ function PanelStack({
5337
5797
  for (const s of targets) refs.current[s.id]?.collapse();
5338
5798
  group.setLayout(next);
5339
5799
  }, []);
5340
- const notify = React23.useRef(onCollapsedChange);
5341
- React23.useEffect(() => {
5800
+ const notify = React24.useRef(onCollapsedChange);
5801
+ React24.useEffect(() => {
5342
5802
  notify.current = onCollapsedChange;
5343
5803
  }, [onCollapsedChange]);
5344
- const collapsedRef = React23.useRef(collapsed);
5804
+ const collapsedRef = React24.useRef(collapsed);
5345
5805
  collapsedRef.current = collapsed;
5346
- const collapsePanel = React23.useCallback((id) => {
5806
+ const collapsePanel = React24.useCallback((id) => {
5347
5807
  const ref = refs.current[id];
5348
5808
  if (!ref || ref.isCollapsed()) return;
5349
5809
  ref.collapse();
5350
5810
  }, []);
5351
- const expandPanel = React23.useCallback((id) => {
5811
+ const expandPanel = React24.useCallback((id) => {
5352
5812
  const ref = refs.current[id];
5353
5813
  if (!ref || !ref.isCollapsed()) return;
5354
5814
  ref.expand();
@@ -5366,7 +5826,7 @@ function PanelStack({
5366
5826
  [donorId]: donorPct - share
5367
5827
  });
5368
5828
  }, []);
5369
- const toggle = React23.useCallback(
5829
+ const toggle = React24.useCallback(
5370
5830
  (id) => {
5371
5831
  const ref = refs.current[id];
5372
5832
  if (!ref) return;
@@ -5375,7 +5835,7 @@ function PanelStack({
5375
5835
  },
5376
5836
  [expandPanel, collapsePanel]
5377
5837
  );
5378
- React23.useImperativeHandle(
5838
+ React24.useImperativeHandle(
5379
5839
  stackRef,
5380
5840
  () => ({
5381
5841
  expand: expandPanel,
@@ -5399,7 +5859,7 @@ function PanelStack({
5399
5859
  const Icon = section.icon;
5400
5860
  const isCollapsed = collapsed[section.id];
5401
5861
  const flush = index > 0 && (isCollapsed || collapsed[sections[index - 1].id]);
5402
- return /* @__PURE__ */ jsxs(React23.Fragment, { children: [
5862
+ return /* @__PURE__ */ jsxs(React24.Fragment, { children: [
5403
5863
  index > 0 && /* @__PURE__ */ jsx(
5404
5864
  ResizableHandle,
5405
5865
  {
@@ -5453,7 +5913,7 @@ function PanelStack({
5453
5913
  children: [
5454
5914
  isCollapsed ? /* @__PURE__ */ jsx(ChevronRight, { className: "h-5 w-5 shrink-0" }) : /* @__PURE__ */ jsx(ChevronDown, { className: "h-5 w-5 shrink-0" }),
5455
5915
  Icon && /* @__PURE__ */ jsx(Icon, { className: "h-3.5 w-3.5 shrink-0" }),
5456
- typeof section.title === "string" ? /* @__PURE__ */ jsx("span", { className: "truncate text-meta font-semibold uppercase tracking-wide", children: section.title }) : (
5916
+ typeof section.title === "string" ? /* @__PURE__ */ jsx("span", { className: "truncate text-sm font-semibold uppercase tracking-wide", children: section.title }) : (
5457
5917
  // Custom node: rendered as-is so the consumer owns the
5458
5918
  // styling (icon, casing, colour, badges…).
5459
5919
  /* @__PURE__ */ jsx("span", { className: "flex min-w-0 flex-1 items-center", children: section.title })
@@ -5495,7 +5955,7 @@ function PanelStack({
5495
5955
  ) })
5496
5956
  );
5497
5957
  }
5498
- var PropertyList = React23.forwardRef(
5958
+ var PropertyList = React24.forwardRef(
5499
5959
  ({ labelWidth = 78, className, style, children, ...props }, ref) => /* @__PURE__ */ jsx(
5500
5960
  "dl",
5501
5961
  {
@@ -5511,7 +5971,7 @@ var PropertyList = React23.forwardRef(
5511
5971
  )
5512
5972
  );
5513
5973
  PropertyList.displayName = "PropertyList";
5514
- var PropertyRow = React23.forwardRef(
5974
+ var PropertyRow = React24.forwardRef(
5515
5975
  ({ label, mono, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
5516
5976
  "div",
5517
5977
  {
@@ -5519,14 +5979,14 @@ var PropertyRow = React23.forwardRef(
5519
5979
  className: cn("flex items-baseline gap-2 py-1", className),
5520
5980
  ...props,
5521
5981
  children: [
5522
- /* @__PURE__ */ jsx("dt", { className: "shrink-0 truncate text-meta text-muted-foreground [width:var(--property-label-width,78px)]", children: label }),
5523
- /* @__PURE__ */ jsx("dd", { className: cn("min-w-0 flex-1", mono && "font-mono text-meta"), children })
5982
+ /* @__PURE__ */ jsx("dt", { className: "shrink-0 truncate text-sm text-muted-foreground [width:var(--property-label-width,78px)]", children: label }),
5983
+ /* @__PURE__ */ jsx("dd", { className: cn("min-w-0 flex-1", mono && "font-mono text-sm"), children })
5524
5984
  ]
5525
5985
  }
5526
5986
  )
5527
5987
  );
5528
5988
  PropertyRow.displayName = "PropertyRow";
5529
- var ProposalCard = React23.forwardRef(
5989
+ var ProposalCard = React24.forwardRef(
5530
5990
  ({
5531
5991
  title,
5532
5992
  source,
@@ -5542,23 +6002,23 @@ var ProposalCard = React23.forwardRef(
5542
6002
  /* @__PURE__ */ jsxs("section", { className: "flex flex-col gap-1", children: [
5543
6003
  /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
5544
6004
  /* @__PURE__ */ jsx("h4", { className: "font-medium", children: title }),
5545
- source != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: source }) : null
6005
+ source != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: source }) : null
5546
6006
  ] }),
5547
6007
  /* @__PURE__ */ jsx("div", { className: "border border-border bg-muted/30 p-2", children })
5548
6008
  ] }),
5549
6009
  evidence ? /* @__PURE__ */ jsxs("section", { className: "flex flex-col gap-1", children: [
5550
6010
  /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
5551
6011
  /* @__PURE__ */ jsx("h4", { className: "font-medium", children: evidenceTitle }),
5552
- evidenceMeta != null ? /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: evidenceMeta }) : null
6012
+ evidenceMeta != null ? /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: evidenceMeta }) : null
5553
6013
  ] }),
5554
6014
  /* @__PURE__ */ jsx("div", { className: "overflow-hidden border border-border", children: evidence })
5555
6015
  ] }) : null,
5556
- consequence != null ? /* @__PURE__ */ jsx("p", { className: "text-meta text-muted-foreground", children: consequence }) : null,
6016
+ consequence != null ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: consequence }) : null,
5557
6017
  actions ? /* @__PURE__ */ jsx("div", { className: "flex flex-wrap items-center gap-1.5", children: actions }) : null
5558
6018
  ] })
5559
6019
  );
5560
6020
  ProposalCard.displayName = "ProposalCard";
5561
- var DotRating = React23.forwardRef(
6021
+ var DotRating = React24.forwardRef(
5562
6022
  ({ value, max = 3, onChange, readOnly, label, className, ...props }, ref) => /* @__PURE__ */ jsx(
5563
6023
  "div",
5564
6024
  {
@@ -5603,7 +6063,7 @@ var DotRating = React23.forwardRef(
5603
6063
  )
5604
6064
  );
5605
6065
  DotRating.displayName = "DotRating";
5606
- var RatingControl = React23.forwardRef(
6066
+ var RatingControl = React24.forwardRef(
5607
6067
  ({
5608
6068
  verdict,
5609
6069
  onVerdictChange,
@@ -5622,7 +6082,7 @@ var RatingControl = React23.forwardRef(
5622
6082
  className: cn("flex flex-col gap-2 border border-border bg-card p-2", className),
5623
6083
  ...props,
5624
6084
  children: [
5625
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-meta", children: [
6085
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 text-sm", children: [
5626
6086
  /* @__PURE__ */ jsx("span", { className: "font-medium", children: "Your verdict" }),
5627
6087
  /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: "becomes a Learning" }),
5628
6088
  /* @__PURE__ */ jsx("span", { className: "flex-1" }),
@@ -5637,7 +6097,7 @@ var RatingControl = React23.forwardRef(
5637
6097
  "aria-checked": verdict === v,
5638
6098
  onClick: () => onVerdictChange?.(v),
5639
6099
  className: cn(
5640
- "h-[22px] px-2 text-meta capitalize",
6100
+ "h-[22px] px-2 text-sm capitalize",
5641
6101
  verdict === v ? v === "appreciate" ? "bg-success text-success-foreground" : "bg-warning text-warning-foreground" : "text-muted-foreground hover:bg-accent"
5642
6102
  ),
5643
6103
  children: v
@@ -5645,11 +6105,11 @@ var RatingControl = React23.forwardRef(
5645
6105
  v
5646
6106
  )) }),
5647
6107
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5", children: [
5648
- /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: "weight" }),
6108
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: "weight" }),
5649
6109
  /* @__PURE__ */ jsx(DotRating, { value: weight, max: maxWeight, onChange: onWeightChange }),
5650
- /* @__PURE__ */ jsx("span", { className: "text-meta tabular-nums", children: weight })
6110
+ /* @__PURE__ */ jsx("span", { className: "text-sm tabular-nums", children: weight })
5651
6111
  ] }),
5652
- refines != null ? /* @__PURE__ */ jsxs("span", { className: "text-meta text-muted-foreground", children: [
6112
+ refines != null ? /* @__PURE__ */ jsxs("span", { className: "text-sm text-muted-foreground", children: [
5653
6113
  "refines ",
5654
6114
  /* @__PURE__ */ jsx("span", { className: "text-foreground", children: refines })
5655
6115
  ] }) : null
@@ -5660,7 +6120,7 @@ var RatingControl = React23.forwardRef(
5660
6120
  )
5661
6121
  );
5662
6122
  RatingControl.displayName = "RatingControl";
5663
- var RecordHeader = React23.forwardRef(
6123
+ var RecordHeader = React24.forwardRef(
5664
6124
  ({ tone, crumbs, chips, actions, className, ...props }, ref) => /* @__PURE__ */ jsxs(
5665
6125
  "div",
5666
6126
  {
@@ -5674,7 +6134,7 @@ var RecordHeader = React23.forwardRef(
5674
6134
  tone ? /* @__PURE__ */ jsx(StatusDot, { tone, size: "lg" }) : null,
5675
6135
  /* @__PURE__ */ jsx("div", { className: "flex min-w-0 items-center gap-1.5", children: crumbs.map((crumb, i) => {
5676
6136
  const last = i === crumbs.length - 1;
5677
- return /* @__PURE__ */ jsxs(React23.Fragment, { children: [
6137
+ return /* @__PURE__ */ jsxs(React24.Fragment, { children: [
5678
6138
  i > 0 ? /* @__PURE__ */ jsx(
5679
6139
  ChevronRight,
5680
6140
  {
@@ -5701,13 +6161,13 @@ var RecordHeader = React23.forwardRef(
5701
6161
  )
5702
6162
  );
5703
6163
  RecordHeader.displayName = "RecordHeader";
5704
- var RepairNote = React23.forwardRef(
6164
+ var RepairNote = React24.forwardRef(
5705
6165
  ({ from, to, className, ...props }, ref) => /* @__PURE__ */ jsxs(
5706
6166
  "div",
5707
6167
  {
5708
6168
  ref,
5709
6169
  className: cn(
5710
- "flex flex-wrap items-center gap-1 py-0.5 pl-4 text-meta text-muted-foreground",
6170
+ "flex flex-wrap items-center gap-1 py-0.5 pl-4 text-sm text-muted-foreground",
5711
6171
  className
5712
6172
  ),
5713
6173
  ...props,
@@ -5720,13 +6180,13 @@ var RepairNote = React23.forwardRef(
5720
6180
  )
5721
6181
  );
5722
6182
  RepairNote.displayName = "RepairNote";
5723
- var RetryNote = React23.forwardRef(
6183
+ var RetryNote = React24.forwardRef(
5724
6184
  ({ attempt, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
5725
6185
  "div",
5726
6186
  {
5727
6187
  ref,
5728
6188
  className: cn(
5729
- "flex flex-wrap items-baseline gap-1.5 py-0.5 pl-4 text-meta text-muted-foreground",
6189
+ "flex flex-wrap items-baseline gap-1.5 py-0.5 pl-4 text-sm text-muted-foreground",
5730
6190
  className
5731
6191
  ),
5732
6192
  ...props,
@@ -5746,7 +6206,7 @@ function OptionRow({ option }) {
5746
6206
  /* @__PURE__ */ jsx("span", { className: "truncate", children: option.label }),
5747
6207
  option.badge != null && /* @__PURE__ */ jsx("span", { className: "ml-auto pl-2", children: option.badge })
5748
6208
  ] }),
5749
- option.description != null && /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: option.description })
6209
+ option.description != null && /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: option.description })
5750
6210
  ] });
5751
6211
  }
5752
6212
  function RichSelect({
@@ -5887,7 +6347,7 @@ function describeSlice(select, declared) {
5887
6347
  }
5888
6348
  return out;
5889
6349
  }
5890
- var SliceSummary = React23.forwardRef(
6350
+ var SliceSummary = React24.forwardRef(
5891
6351
  ({ select, declaredAxes, modelLabel, variant = "line", className, ...props }, ref) => {
5892
6352
  const lines = select ? describeSlice(select, declaredAxes) : [];
5893
6353
  if (!lines.length) {
@@ -5895,7 +6355,7 @@ var SliceSummary = React23.forwardRef(
5895
6355
  "div",
5896
6356
  {
5897
6357
  ref,
5898
- className: cn("text-meta text-muted-foreground/70", className),
6358
+ className: cn("text-sm text-muted-foreground/70", className),
5899
6359
  ...props,
5900
6360
  children: "not sliced \u2014 the whole model"
5901
6361
  }
@@ -5916,13 +6376,13 @@ var SliceSummary = React23.forwardRef(
5916
6376
  "span",
5917
6377
  {
5918
6378
  className: cn(
5919
- "truncate text-meta",
6379
+ "truncate text-sm",
5920
6380
  line.undeclared ? "text-destructive line-through decoration-destructive/50" : "text-muted-foreground"
5921
6381
  ),
5922
6382
  children: line.text
5923
6383
  }
5924
6384
  ),
5925
- line.undeclared ? /* @__PURE__ */ jsxs("span", { className: "text-meta text-destructive", children: [
6385
+ line.undeclared ? /* @__PURE__ */ jsxs("span", { className: "text-sm text-destructive", children: [
5926
6386
  modelLabel ?? "this model",
5927
6387
  " declares no ",
5928
6388
  line.axisKind,
@@ -5934,7 +6394,7 @@ var SliceSummary = React23.forwardRef(
5934
6394
  }
5935
6395
  );
5936
6396
  SliceSummary.displayName = "SliceSummary";
5937
- var RuleRow = React23.forwardRef(
6397
+ var RuleRow = React24.forwardRef(
5938
6398
  ({ match, allow, properties, select, egress, readOnly, className, ...props }, ref) => {
5939
6399
  const excluded = properties?.exclude ?? [];
5940
6400
  const sends = egress?.may_send ?? [];
@@ -5961,7 +6421,7 @@ var RuleRow = React23.forwardRef(
5961
6421
  "span",
5962
6422
  {
5963
6423
  className: cn(
5964
- "font-mono text-meta",
6424
+ "font-mono text-sm",
5965
6425
  allow ? "text-muted-foreground" : "font-semibold text-destructive"
5966
6426
  ),
5967
6427
  children: allow ? "allow" : "deny"
@@ -5976,12 +6436,12 @@ var RuleRow = React23.forwardRef(
5976
6436
  }
5977
6437
  ),
5978
6438
  excluded.length || sliced || sends.length ? /* @__PURE__ */ jsxs("div", { className: "col-start-2 flex min-w-0 flex-col gap-0.5", children: [
5979
- excluded.length ? /* @__PURE__ */ jsxs("span", { className: "truncate text-meta text-muted-foreground", children: [
6439
+ excluded.length ? /* @__PURE__ */ jsxs("span", { className: "truncate text-sm text-muted-foreground", children: [
5980
6440
  "excludes ",
5981
6441
  excluded.join(", ")
5982
6442
  ] }) : null,
5983
6443
  sliced ? /* @__PURE__ */ jsx(SliceSummary, { select, variant: "line" }) : null,
5984
- sends.length ? /* @__PURE__ */ jsxs("span", { className: "truncate text-meta text-muted-foreground", children: [
6444
+ sends.length ? /* @__PURE__ */ jsxs("span", { className: "truncate text-sm text-muted-foreground", children: [
5985
6445
  "may send ",
5986
6446
  sends.join(", ")
5987
6447
  ] }) : null
@@ -6011,14 +6471,14 @@ var SearchInput = ({
6011
6471
  "flex w-full rounded-control border border-input bg-background ring-offset-background",
6012
6472
  "placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2",
6013
6473
  "focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
6014
- inputSize === "sm" ? "h-[26px] px-2 py-0 text-meta" : "h-10 px-3 py-2 text-base",
6474
+ inputSize === "sm" ? "h-[26px] px-2 py-0 text-sm" : "h-10 px-3 py-2 text-base",
6015
6475
  className
6016
6476
  ),
6017
6477
  ...props
6018
6478
  }
6019
6479
  );
6020
6480
  };
6021
- var SectionHeader = React23.forwardRef(({ icon, title, count, actions, bare, className, ...props }, ref) => /* @__PURE__ */ jsxs(
6481
+ var SectionHeader = React24.forwardRef(({ icon, title, count, actions, bare, className, ...props }, ref) => /* @__PURE__ */ jsxs(
6022
6482
  "div",
6023
6483
  {
6024
6484
  ref,
@@ -6031,13 +6491,13 @@ var SectionHeader = React23.forwardRef(({ icon, title, count, actions, bare, cla
6031
6491
  children: [
6032
6492
  icon ? /* @__PURE__ */ jsx("span", { className: "flex shrink-0 items-center text-muted-foreground [&_svg]:size-3.5", children: icon }) : null,
6033
6493
  /* @__PURE__ */ jsx("span", { className: "flex-1 truncate font-medium", children: title }),
6034
- count != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-meta text-muted-foreground", children: count }) : null,
6494
+ count != null ? /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm text-muted-foreground", children: count }) : null,
6035
6495
  actions ? /* @__PURE__ */ jsx("span", { className: "flex shrink-0 items-center gap-1", children: actions }) : null
6036
6496
  ]
6037
6497
  }
6038
6498
  ));
6039
6499
  SectionHeader.displayName = "SectionHeader";
6040
- var Sparkline = React23.forwardRef(
6500
+ var Sparkline = React24.forwardRef(
6041
6501
  ({
6042
6502
  values,
6043
6503
  width = 72,
@@ -6124,7 +6584,7 @@ function TabbedPanel({
6124
6584
  footerClassName,
6125
6585
  footerContent
6126
6586
  }) {
6127
- const [internalTab, setInternalTab] = React23__default.useState(defaultTab || tabs[0]?.value);
6587
+ const [internalTab, setInternalTab] = React24__default.useState(defaultTab || tabs[0]?.value);
6128
6588
  const currentTab = activeTab !== void 0 ? activeTab : internalTab;
6129
6589
  const handleTabChange = (value) => {
6130
6590
  if (activeTab === void 0) {
@@ -6132,9 +6592,9 @@ function TabbedPanel({
6132
6592
  }
6133
6593
  onTabChange?.(value);
6134
6594
  };
6135
- const uid = React23__default.useId();
6595
+ const uid = React24__default.useId();
6136
6596
  const panelId = (value) => `${uid}-panel-${value}`;
6137
- const items = React23__default.useMemo(
6597
+ const items = React24__default.useMemo(
6138
6598
  () => tabs.map((tab) => ({
6139
6599
  key: tab.value,
6140
6600
  name: tab.name ?? (typeof tab.label === "string" ? tab.label : tab.value),
@@ -6220,9 +6680,9 @@ var STATUS_LABEL = {
6220
6680
  };
6221
6681
  function renderResult(result) {
6222
6682
  if (result == null) return null;
6223
- if (React23.isValidElement(result)) return result;
6683
+ if (React24.isValidElement(result)) return result;
6224
6684
  if (typeof result !== "object") {
6225
- return /* @__PURE__ */ jsx("span", { className: "font-mono text-meta", children: String(result) });
6685
+ return /* @__PURE__ */ jsx("span", { className: "font-mono text-sm", children: String(result) });
6226
6686
  }
6227
6687
  const entries = Object.entries(result);
6228
6688
  const scalars = entries.filter(([, v]) => v == null || typeof v !== "object");
@@ -6230,12 +6690,12 @@ function renderResult(result) {
6230
6690
  return /* @__PURE__ */ jsxs(Fragment, { children: [
6231
6691
  scalars.length ? /* @__PURE__ */ jsx(PropertyList, { labelWidth: 96, children: scalars.map(([k, v]) => /* @__PURE__ */ jsx(PropertyRow, { label: k, mono: true, className: "py-0.5", children: v == null ? "\u2014" : String(v) }, k)) }) : null,
6232
6692
  nested.map(([k, v]) => /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-0.5", children: [
6233
- /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: k }),
6234
- /* @__PURE__ */ jsx("pre", { className: "max-h-40 overflow-auto border border-border bg-muted/40 p-1.5 font-mono text-meta", children: JSON.stringify(v, null, 2) })
6693
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: k }),
6694
+ /* @__PURE__ */ jsx("pre", { className: "max-h-40 overflow-auto border border-border bg-muted/40 p-1.5 font-mono text-sm", children: JSON.stringify(v, null, 2) })
6235
6695
  ] }, k))
6236
6696
  ] });
6237
6697
  }
6238
- var TaskGanttDetailCard = React23.forwardRef(({ task, elapsedMs, formatDuration = defaultFormatDuration, className, ...props }, ref) => {
6698
+ var TaskGanttDetailCard = React24.forwardRef(({ task, elapsedMs, formatDuration = defaultFormatDuration, className, ...props }, ref) => {
6239
6699
  const status = task.status ?? "succeeded";
6240
6700
  const ms = task.durationMs ?? elapsedMs;
6241
6701
  const duration = task.duration ?? (ms != null ? formatDuration(ms) : "\u2014");
@@ -6243,17 +6703,17 @@ var TaskGanttDetailCard = React23.forwardRef(({ task, elapsedMs, formatDuration
6243
6703
  return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex flex-col gap-2", className), ...props, children: [
6244
6704
  /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
6245
6705
  /* @__PURE__ */ jsx(StatusDot, { tone: DOT[status], size: "md", className: "translate-y-px" }),
6246
- /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 truncate font-mono text-meta font-medium", children: task.key }),
6247
- /* @__PURE__ */ jsx("span", { className: "shrink-0 font-mono text-meta text-muted-foreground tabular-nums", children: duration })
6706
+ /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 truncate font-mono text-sm font-medium", children: task.key }),
6707
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 font-mono text-sm text-muted-foreground tabular-nums", children: duration })
6248
6708
  ] }),
6249
- /* @__PURE__ */ jsxs("div", { className: "text-meta text-muted-foreground", children: [
6709
+ /* @__PURE__ */ jsxs("div", { className: "text-sm text-muted-foreground", children: [
6250
6710
  STATUS_LABEL[status],
6251
6711
  task.summary != null ? /* @__PURE__ */ jsxs(Fragment, { children: [
6252
6712
  " \xB7 ",
6253
6713
  task.summary
6254
6714
  ] }) : null
6255
6715
  ] }),
6256
- attempts.length ? /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-0.5", children: attempts.map((a, i) => /* @__PURE__ */ jsxs("span", { className: "text-meta text-muted-foreground", children: [
6716
+ attempts.length ? /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-0.5", children: attempts.map((a, i) => /* @__PURE__ */ jsxs("span", { className: "text-sm text-muted-foreground", children: [
6257
6717
  /* @__PURE__ */ jsxs("span", { className: "font-medium text-warning", children: [
6258
6718
  "attempt ",
6259
6719
  i + 1
@@ -6267,14 +6727,14 @@ var TaskGanttDetailCard = React23.forwardRef(({ task, elapsedMs, formatDuration
6267
6727
  style: { borderColor: "var(--color-destructive)" },
6268
6728
  className: "border-l-2 bg-destructive/10 px-2 py-1.5",
6269
6729
  children: [
6270
- task.error.code != null ? /* @__PURE__ */ jsx("div", { className: "font-mono text-meta font-medium text-destructive", children: task.error.code }) : null,
6271
- task.error.message != null ? /* @__PURE__ */ jsx("div", { className: "text-meta", children: task.error.message }) : null,
6272
- task.error.detail != null ? /* @__PURE__ */ jsx("pre", { className: "mt-1 max-h-32 overflow-auto whitespace-pre-wrap font-mono text-meta text-muted-foreground", children: task.error.detail }) : null
6730
+ task.error.code != null ? /* @__PURE__ */ jsx("div", { className: "font-mono text-sm font-medium text-destructive", children: task.error.code }) : null,
6731
+ task.error.message != null ? /* @__PURE__ */ jsx("div", { className: "text-sm", children: task.error.message }) : null,
6732
+ task.error.detail != null ? /* @__PURE__ */ jsx("pre", { className: "mt-1 max-h-32 overflow-auto whitespace-pre-wrap font-mono text-sm text-muted-foreground", children: task.error.detail }) : null
6273
6733
  ]
6274
6734
  }
6275
6735
  ) : null,
6276
6736
  task.result != null ? renderResult(task.result) : null,
6277
- task.log != null ? /* @__PURE__ */ jsx("div", { className: "border-t border-border pt-1.5 font-mono text-meta text-muted-foreground", children: task.log }) : null
6737
+ task.log != null ? /* @__PURE__ */ jsx("div", { className: "border-t border-border pt-1.5 font-mono text-sm text-muted-foreground", children: task.log }) : null
6278
6738
  ] });
6279
6739
  });
6280
6740
  TaskGanttDetailCard.displayName = "TaskGanttDetailCard";
@@ -6301,7 +6761,7 @@ function place(seg, origin) {
6301
6761
  }
6302
6762
  return { start, duration: duration != null && duration > 0 ? duration : 0 };
6303
6763
  }
6304
- var TaskGantt = React23.forwardRef(
6764
+ var TaskGantt = React24.forwardRef(
6305
6765
  ({
6306
6766
  tasks,
6307
6767
  origin,
@@ -6323,7 +6783,7 @@ var TaskGantt = React23.forwardRef(
6323
6783
  }, ref) => {
6324
6784
  const barHeight = density === "compact" ? 11 : 13;
6325
6785
  const durationWidth = 40;
6326
- const rows = React23.useMemo(() => {
6786
+ const rows = React24.useMemo(() => {
6327
6787
  const stamps = [];
6328
6788
  for (const t of [...tasks, ...tasks.flatMap((t2) => t2.attempts ?? [])]) {
6329
6789
  if (t.startedAt != null) stamps.push(toMs(t.startedAt));
@@ -6369,7 +6829,7 @@ var TaskGantt = React23.forwardRef(
6369
6829
  /* @__PURE__ */ jsx("span", { className: "flex flex-1", children: axis.slice(0, -1).map((label, i) => /* @__PURE__ */ jsx(
6370
6830
  "span",
6371
6831
  {
6372
- className: "flex-1 border-l border-border pl-1 text-meta text-muted-foreground tabular-nums",
6832
+ className: "flex-1 border-l border-border pl-1 text-sm text-muted-foreground tabular-nums",
6373
6833
  children: label
6374
6834
  },
6375
6835
  i
@@ -6377,7 +6837,7 @@ var TaskGantt = React23.forwardRef(
6377
6837
  /* @__PURE__ */ jsx(
6378
6838
  "span",
6379
6839
  {
6380
- className: "shrink-0 text-right text-meta text-muted-foreground tabular-nums",
6840
+ className: "shrink-0 text-right text-sm text-muted-foreground tabular-nums",
6381
6841
  style: { width: durationWidth },
6382
6842
  children: lastLabel
6383
6843
  }
@@ -6395,7 +6855,7 @@ var TaskGantt = React23.forwardRef(
6395
6855
  "span",
6396
6856
  {
6397
6857
  className: cn(
6398
- "shrink-0 truncate font-mono text-meta",
6858
+ "shrink-0 truncate font-mono text-sm",
6399
6859
  neverRan && "text-muted-foreground"
6400
6860
  ),
6401
6861
  style: { width: labelWidth },
@@ -6436,7 +6896,7 @@ var TaskGantt = React23.forwardRef(
6436
6896
  /* @__PURE__ */ jsx(
6437
6897
  "span",
6438
6898
  {
6439
- className: "shrink-0 text-right font-mono text-meta text-muted-foreground tabular-nums",
6899
+ className: "shrink-0 text-right font-mono text-sm text-muted-foreground tabular-nums",
6440
6900
  style: { width: durationWidth },
6441
6901
  children: duration
6442
6902
  }
@@ -6484,8 +6944,22 @@ var TaskGantt = React23.forwardRef(
6484
6944
  }
6485
6945
  );
6486
6946
  TaskGantt.displayName = "TaskGantt";
6487
- var TaskNode = React23.forwardRef(
6488
- ({ taskKey, bound, status, tags, meta, selected, gate, dim, ghost, className, ...props }, ref) => {
6947
+ var TaskNode = React24.forwardRef(
6948
+ ({
6949
+ taskKey,
6950
+ bound,
6951
+ boundSwatch,
6952
+ boundPalette,
6953
+ status,
6954
+ tags,
6955
+ meta,
6956
+ selected,
6957
+ gate,
6958
+ dim,
6959
+ ghost,
6960
+ className,
6961
+ ...props
6962
+ }, ref) => {
6489
6963
  if (ghost) {
6490
6964
  return /* @__PURE__ */ jsxs(
6491
6965
  "div",
@@ -6493,7 +6967,7 @@ var TaskNode = React23.forwardRef(
6493
6967
  ref,
6494
6968
  className: cn(
6495
6969
  "flex w-[146px] flex-col gap-1 border border-dashed border-border p-2",
6496
- "text-meta text-muted-foreground",
6970
+ "text-sm text-muted-foreground",
6497
6971
  className
6498
6972
  ),
6499
6973
  ...props,
@@ -6534,12 +7008,12 @@ var TaskNode = React23.forwardRef(
6534
7008
  /* @__PURE__ */ jsx("span", { className: "min-w-0 truncate font-mono", children: taskKey })
6535
7009
  ] }),
6536
7010
  /* @__PURE__ */ jsxs("div", { className: "flex flex-wrap items-center gap-1.5", children: [
6537
- /* @__PURE__ */ jsx(BoundChip, { bound }),
7011
+ /* @__PURE__ */ jsx(BoundChip, { bound, swatch: boundSwatch, palette: boundPalette }),
6538
7012
  tags?.map((tag, i) => /* @__PURE__ */ jsx(
6539
7013
  "span",
6540
7014
  {
6541
7015
  className: cn(
6542
- "shrink-0 border px-1 text-meta",
7016
+ "shrink-0 border px-1 text-sm",
6543
7017
  tag.tone === "warning" ? "border-warning/40 text-warning" : "border-border text-muted-foreground"
6544
7018
  ),
6545
7019
  children: tag.label
@@ -6551,7 +7025,7 @@ var TaskNode = React23.forwardRef(
6551
7025
  "div",
6552
7026
  {
6553
7027
  className: cn(
6554
- "truncate text-meta",
7028
+ "truncate text-sm",
6555
7029
  gate ? "text-warning" : "text-muted-foreground"
6556
7030
  ),
6557
7031
  children: meta
@@ -6563,14 +7037,14 @@ var TaskNode = React23.forwardRef(
6563
7037
  }
6564
7038
  );
6565
7039
  TaskNode.displayName = "TaskNode";
6566
- var TemplatePicker = React23.forwardRef(({ heading, options, value, onSelect, footnote, className, ...props }, ref) => /* @__PURE__ */ jsxs(
7040
+ var TemplatePicker = React24.forwardRef(({ heading, options, value, onSelect, footnote, className, ...props }, ref) => /* @__PURE__ */ jsxs(
6567
7041
  "div",
6568
7042
  {
6569
7043
  ref,
6570
7044
  className: cn("flex w-full flex-col border border-border bg-card", className),
6571
7045
  ...props,
6572
7046
  children: [
6573
- heading != null ? /* @__PURE__ */ jsx("div", { className: "flex h-6 shrink-0 items-center border-b border-border px-2 text-meta text-muted-foreground", children: heading }) : null,
7047
+ heading != null ? /* @__PURE__ */ jsx("div", { className: "flex h-6 shrink-0 items-center border-b border-border px-2 text-sm text-muted-foreground", children: heading }) : null,
6574
7048
  /* @__PURE__ */ jsx("div", { role: "listbox", className: "flex flex-col", children: options.map((o) => {
6575
7049
  const disabled = o.unavailable != null;
6576
7050
  const selected = value === o.id;
@@ -6589,16 +7063,16 @@ var TemplatePicker = React23.forwardRef(({ heading, options, value, onSelect, fo
6589
7063
  ),
6590
7064
  children: [
6591
7065
  /* @__PURE__ */ jsx("span", { className: "w-3 shrink-0 text-primary", children: selected ? "\u2022" : "" }),
6592
- /* @__PURE__ */ jsx("span", { className: "truncate font-mono text-meta", children: o.id }),
6593
- /* @__PURE__ */ jsx("span", { className: "shrink-0 text-meta text-muted-foreground", children: o.kind }),
7066
+ /* @__PURE__ */ jsx("span", { className: "truncate font-mono text-sm", children: o.id }),
7067
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 text-sm text-muted-foreground", children: o.kind }),
6594
7068
  /* @__PURE__ */ jsx("span", { className: "flex-1" }),
6595
- /* @__PURE__ */ jsx("span", { className: "shrink-0 truncate text-meta text-muted-foreground", children: o.unavailable ?? o.note })
7069
+ /* @__PURE__ */ jsx("span", { className: "shrink-0 truncate text-sm text-muted-foreground", children: o.unavailable ?? o.note })
6596
7070
  ]
6597
7071
  },
6598
7072
  o.id
6599
7073
  );
6600
7074
  }) }),
6601
- footnote != null ? /* @__PURE__ */ jsx("div", { className: "border-t border-border px-2 py-1 text-meta text-muted-foreground", children: footnote }) : null
7075
+ footnote != null ? /* @__PURE__ */ jsx("div", { className: "border-t border-border px-2 py-1 text-sm text-muted-foreground", children: footnote }) : null
6602
7076
  ]
6603
7077
  }
6604
7078
  ));
@@ -6614,14 +7088,14 @@ var MARKER = {
6614
7088
  output: "\u2192",
6615
7089
  comment: "#"
6616
7090
  };
6617
- var Terminal = React23.forwardRef(
7091
+ var Terminal = React24.forwardRef(
6618
7092
  ({ cursor, columnTemplate = "150px minmax(0,1fr) auto auto", className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
6619
7093
  "div",
6620
7094
  {
6621
7095
  ref,
6622
7096
  style: { "--terminal-cols": columnTemplate },
6623
7097
  className: cn(
6624
- "overflow-x-auto border border-border bg-muted/40 p-2 font-mono text-meta",
7098
+ "overflow-x-auto border border-border bg-muted/40 p-2 font-mono text-sm",
6625
7099
  className
6626
7100
  ),
6627
7101
  ...props,
@@ -6639,7 +7113,7 @@ var Terminal = React23.forwardRef(
6639
7113
  )
6640
7114
  );
6641
7115
  Terminal.displayName = "Terminal";
6642
- var TerminalLine = React23.forwardRef(
7116
+ var TerminalLine = React24.forwardRef(
6643
7117
  ({ kind = "output", level, levelColumn = 1, columns, className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
6644
7118
  "div",
6645
7119
  {
@@ -6670,7 +7144,7 @@ var TerminalLine = React23.forwardRef(
6670
7144
  "min-w-0 truncate",
6671
7145
  // A log tints its level cell and greys everything that is not the
6672
7146
  // message; a transcript greys only its trailing cell.
6673
- level ? i === levelColumn ? LEVEL[level] : i === columns.length - 1 ? void 0 : "text-muted-foreground" : i === columns.length - 1 && "text-muted-foreground"
7147
+ level ? i === levelColumn ? LEVEL[level] ?? "text-muted-foreground" : i === columns.length - 1 ? void 0 : "text-muted-foreground" : i === columns.length - 1 && "text-muted-foreground"
6674
7148
  ),
6675
7149
  children: c
6676
7150
  },
@@ -6681,10 +7155,10 @@ var TerminalLine = React23.forwardRef(
6681
7155
  )
6682
7156
  );
6683
7157
  TerminalLine.displayName = "TerminalLine";
6684
- var TimelineVariantContext = React23.createContext("columns");
7158
+ var TimelineVariantContext = React24.createContext("columns");
6685
7159
  var RAIL_MARKER_OFFSET = "h-[0.692rem]";
6686
7160
  var RAIL_FOOTER_TAIL = "h-[1.067rem]";
6687
- var TimelineList = React23.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 }) }));
7161
+ var TimelineList = React24.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 }) }));
6688
7162
  TimelineList.displayName = "TimelineList";
6689
7163
  function RailGutter({ marker }) {
6690
7164
  return /* @__PURE__ */ jsxs("span", { className: "flex w-2.5 shrink-0 flex-col items-center", children: [
@@ -6708,8 +7182,8 @@ function RailGutter({ marker }) {
6708
7182
  )
6709
7183
  ] });
6710
7184
  }
6711
- var TimelineEntry = React23.forwardRef(({ when, title, marker, className, children, ...props }, ref) => {
6712
- const variant = React23.useContext(TimelineVariantContext);
7185
+ var TimelineEntry = React24.forwardRef(({ when, title, marker, className, children, ...props }, ref) => {
7186
+ const variant = React24.useContext(TimelineVariantContext);
6713
7187
  if (variant === "rail") {
6714
7188
  return /* @__PURE__ */ jsxs(
6715
7189
  "li",
@@ -6720,7 +7194,7 @@ var TimelineEntry = React23.forwardRef(({ when, title, marker, className, childr
6720
7194
  children: [
6721
7195
  /* @__PURE__ */ jsx(RailGutter, { marker }),
6722
7196
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5 pb-4 group-last/entry:pb-0", children: [
6723
- /* @__PURE__ */ jsx("span", { className: "text-meta text-muted-foreground", children: when }),
7197
+ /* @__PURE__ */ jsx("span", { className: "text-sm text-muted-foreground", children: when }),
6724
7198
  title != null ? /* @__PURE__ */ jsx("span", { className: "font-medium", children: title }) : null,
6725
7199
  children
6726
7200
  ] })
@@ -6735,7 +7209,7 @@ var TimelineEntry = React23.forwardRef(({ when, title, marker, className, childr
6735
7209
  className: cn("flex gap-2 border-b border-border py-1.5 last:border-b-0", className),
6736
7210
  ...props,
6737
7211
  children: [
6738
- /* @__PURE__ */ jsxs("span", { className: "flex w-[72px] shrink-0 items-baseline gap-1.5 text-meta text-muted-foreground", children: [
7212
+ /* @__PURE__ */ jsxs("span", { className: "flex w-[72px] shrink-0 items-baseline gap-1.5 text-sm text-muted-foreground", children: [
6739
7213
  marker ? /* @__PURE__ */ jsx("span", { className: "translate-y-1", children: marker }) : null,
6740
7214
  /* @__PURE__ */ jsx("span", { className: "truncate", children: when })
6741
7215
  ] }),
@@ -6748,8 +7222,8 @@ var TimelineEntry = React23.forwardRef(({ when, title, marker, className, childr
6748
7222
  );
6749
7223
  });
6750
7224
  TimelineEntry.displayName = "TimelineEntry";
6751
- var TimelineFooter = React23.forwardRef(({ className, children, ...props }, ref) => {
6752
- const variant = React23.useContext(TimelineVariantContext);
7225
+ var TimelineFooter = React24.forwardRef(({ className, children, ...props }, ref) => {
7226
+ const variant = React24.useContext(TimelineVariantContext);
6753
7227
  if (variant === "rail") {
6754
7228
  return /* @__PURE__ */ jsxs(
6755
7229
  "li",
@@ -6795,11 +7269,11 @@ function useTour(options) {
6795
7269
  onComplete,
6796
7270
  onExit
6797
7271
  } = options;
6798
- const [current, setCurrent] = React23.useState(initialStep);
7272
+ const [current, setCurrent] = React24.useState(initialStep);
6799
7273
  const total = steps.length;
6800
7274
  const lastIndex = Math.max(total - 1, 0);
6801
7275
  const clamped = Math.min(Math.max(current, 0), lastIndex);
6802
- const goTo = React23.useCallback(
7276
+ const goTo = React24.useCallback(
6803
7277
  (index) => {
6804
7278
  setCurrent((prev2) => {
6805
7279
  const next2 = Math.min(Math.max(index, 0), lastIndex);
@@ -6809,7 +7283,7 @@ function useTour(options) {
6809
7283
  },
6810
7284
  [lastIndex, onStepChange]
6811
7285
  );
6812
- const next = React23.useCallback(() => {
7286
+ const next = React24.useCallback(() => {
6813
7287
  setCurrent((prev2) => {
6814
7288
  if (prev2 >= lastIndex) {
6815
7289
  if (loop && total > 0) {
@@ -6823,7 +7297,7 @@ function useTour(options) {
6823
7297
  return prev2 + 1;
6824
7298
  });
6825
7299
  }, [lastIndex, total, loop, onComplete, onStepChange]);
6826
- const prev = React23.useCallback(() => {
7300
+ const prev = React24.useCallback(() => {
6827
7301
  setCurrent((p) => {
6828
7302
  if (p <= 0) {
6829
7303
  if (loop && total > 0) {
@@ -6836,10 +7310,10 @@ function useTour(options) {
6836
7310
  return p - 1;
6837
7311
  });
6838
7312
  }, [lastIndex, total, loop, onStepChange]);
6839
- const exit = React23.useCallback(() => {
7313
+ const exit = React24.useCallback(() => {
6840
7314
  onExit?.();
6841
7315
  }, [onExit]);
6842
- return React23.useMemo(
7316
+ return React24.useMemo(
6843
7317
  () => ({
6844
7318
  step: steps[clamped],
6845
7319
  current: clamped,
@@ -6897,7 +7371,7 @@ function Tour({
6897
7371
  /* @__PURE__ */ jsxs(CardHeader, { className: "flex flex-row items-center justify-between space-y-0 p-3", children: [
6898
7372
  /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
6899
7373
  /* @__PURE__ */ jsx(Badge, { variant: "soft", className: "tracking-wider", children: badgeLabel }),
6900
- showCounter && /* @__PURE__ */ jsxs("span", { className: "text-meta text-muted-foreground", children: [
7374
+ showCounter && /* @__PURE__ */ jsxs("span", { className: "text-sm text-muted-foreground", children: [
6901
7375
  current + 1,
6902
7376
  " / ",
6903
7377
  total
@@ -6908,7 +7382,7 @@ function Tour({
6908
7382
  {
6909
7383
  variant: "ghost",
6910
7384
  size: "sm",
6911
- className: "-mr-1 h-7 gap-1 px-2 text-meta text-muted-foreground [&_svg]:size-3.5",
7385
+ className: "-mr-1 h-7 gap-1 px-2 text-sm text-muted-foreground [&_svg]:size-3.5",
6912
7386
  onClick: ctrl.exit,
6913
7387
  children: [
6914
7388
  /* @__PURE__ */ jsx(X, {}),
@@ -7002,7 +7476,7 @@ function Tour({
7002
7476
  ) });
7003
7477
  }
7004
7478
  var TreeView = ({ searchable = false, ...props }) => {
7005
- const [searchQuery, setSearchQuery] = React23.useState("");
7479
+ const [searchQuery, setSearchQuery] = React24.useState("");
7006
7480
  const filterItems = (items, query) => {
7007
7481
  if (!query) return items;
7008
7482
  return items.map((item) => ({
@@ -7025,7 +7499,7 @@ var TreeView = ({ searchable = false, ...props }) => {
7025
7499
  );
7026
7500
  };
7027
7501
  var TreeItem = ({ item }) => {
7028
- const [isExpanded, setIsExpanded] = React23.useState(item.isExpanded || true);
7502
+ const [isExpanded, setIsExpanded] = React24.useState(item.isExpanded || true);
7029
7503
  const hasChildren = item.children && item.children.length > 0;
7030
7504
  return /* @__PURE__ */ jsxs("div", { children: [
7031
7505
  /* @__PURE__ */ jsxs(
@@ -7094,7 +7568,7 @@ function UnderDevelopment({
7094
7568
  /* @__PURE__ */ jsx("span", { className: "mt-4 px-3 py-1 bg-yellow-100 text-yellow-800", children: "Coming Soon" })
7095
7569
  ] });
7096
7570
  }
7097
- var TypographyH1 = React23.forwardRef(
7571
+ var TypographyH1 = React24.forwardRef(
7098
7572
  ({ className, ...props }, ref) => {
7099
7573
  return /* @__PURE__ */ jsx(
7100
7574
  "h1",
@@ -7110,7 +7584,7 @@ var TypographyH1 = React23.forwardRef(
7110
7584
  }
7111
7585
  );
7112
7586
  TypographyH1.displayName = "TypographyH1";
7113
- var TypographyH2 = React23.forwardRef(
7587
+ var TypographyH2 = React24.forwardRef(
7114
7588
  ({ className, ...props }, ref) => {
7115
7589
  return /* @__PURE__ */ jsx(
7116
7590
  "h2",
@@ -7126,7 +7600,7 @@ var TypographyH2 = React23.forwardRef(
7126
7600
  }
7127
7601
  );
7128
7602
  TypographyH2.displayName = "TypographyH2";
7129
- var TypographyH3 = React23.forwardRef(
7603
+ var TypographyH3 = React24.forwardRef(
7130
7604
  ({ className, ...props }, ref) => {
7131
7605
  return /* @__PURE__ */ jsx(
7132
7606
  "h3",
@@ -7142,7 +7616,7 @@ var TypographyH3 = React23.forwardRef(
7142
7616
  }
7143
7617
  );
7144
7618
  TypographyH3.displayName = "TypographyH3";
7145
- var TypographyH4 = React23.forwardRef(
7619
+ var TypographyH4 = React24.forwardRef(
7146
7620
  ({ className, ...props }, ref) => {
7147
7621
  return /* @__PURE__ */ jsx(
7148
7622
  "h4",
@@ -7158,7 +7632,7 @@ var TypographyH4 = React23.forwardRef(
7158
7632
  }
7159
7633
  );
7160
7634
  TypographyH4.displayName = "TypographyH4";
7161
- var TypographyH5 = React23.forwardRef(
7635
+ var TypographyH5 = React24.forwardRef(
7162
7636
  ({ className, ...props }, ref) => {
7163
7637
  return /* @__PURE__ */ jsx(
7164
7638
  "h5",
@@ -7174,7 +7648,7 @@ var TypographyH5 = React23.forwardRef(
7174
7648
  }
7175
7649
  );
7176
7650
  TypographyH5.displayName = "TypographyH5";
7177
- var TypographyH6 = React23.forwardRef(
7651
+ var TypographyH6 = React24.forwardRef(
7178
7652
  ({ className, ...props }, ref) => {
7179
7653
  return /* @__PURE__ */ jsx(
7180
7654
  "h6",
@@ -7190,7 +7664,7 @@ var TypographyH6 = React23.forwardRef(
7190
7664
  }
7191
7665
  );
7192
7666
  TypographyH6.displayName = "TypographyH6";
7193
- var TypographyP = React23.forwardRef(
7667
+ var TypographyP = React24.forwardRef(
7194
7668
  ({ className, ...props }, ref) => {
7195
7669
  return /* @__PURE__ */ jsx(
7196
7670
  "p",
@@ -7206,7 +7680,7 @@ var TypographyP = React23.forwardRef(
7206
7680
  }
7207
7681
  );
7208
7682
  TypographyP.displayName = "TypographyP";
7209
- var TypographyBlockquote = React23.forwardRef(
7683
+ var TypographyBlockquote = React24.forwardRef(
7210
7684
  ({ className, ...props }, ref) => {
7211
7685
  return /* @__PURE__ */ jsx(
7212
7686
  "blockquote",
@@ -7222,14 +7696,14 @@ var TypographyBlockquote = React23.forwardRef(
7222
7696
  }
7223
7697
  );
7224
7698
  TypographyBlockquote.displayName = "TypographyBlockquote";
7225
- var TypographyInlineCode = React23.forwardRef(
7699
+ var TypographyInlineCode = React24.forwardRef(
7226
7700
  ({ className, ...props }, ref) => {
7227
7701
  return /* @__PURE__ */ jsx(
7228
7702
  "code",
7229
7703
  {
7230
7704
  ref,
7231
7705
  className: cn(
7232
- "relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-meta font-semibold",
7706
+ "relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold",
7233
7707
  className
7234
7708
  ),
7235
7709
  ...props
@@ -7238,7 +7712,7 @@ var TypographyInlineCode = React23.forwardRef(
7238
7712
  }
7239
7713
  );
7240
7714
  TypographyInlineCode.displayName = "TypographyInlineCode";
7241
- var TypographyLead = React23.forwardRef(
7715
+ var TypographyLead = React24.forwardRef(
7242
7716
  ({ className, ...props }, ref) => {
7243
7717
  return /* @__PURE__ */ jsx(
7244
7718
  "p",
@@ -7254,7 +7728,7 @@ var TypographyLead = React23.forwardRef(
7254
7728
  }
7255
7729
  );
7256
7730
  TypographyLead.displayName = "TypographyLead";
7257
- var TypographyLarge = React23.forwardRef(
7731
+ var TypographyLarge = React24.forwardRef(
7258
7732
  ({ className, ...props }, ref) => {
7259
7733
  return /* @__PURE__ */ jsx(
7260
7734
  "div",
@@ -7270,14 +7744,14 @@ var TypographyLarge = React23.forwardRef(
7270
7744
  }
7271
7745
  );
7272
7746
  TypographyLarge.displayName = "TypographyLarge";
7273
- var TypographySmall = React23.forwardRef(
7747
+ var TypographySmall = React24.forwardRef(
7274
7748
  ({ className, ...props }, ref) => {
7275
7749
  return /* @__PURE__ */ jsx(
7276
7750
  "small",
7277
7751
  {
7278
7752
  ref,
7279
7753
  className: cn(
7280
- "text-meta font-medium leading-none",
7754
+ "text-sm font-medium leading-none",
7281
7755
  className
7282
7756
  ),
7283
7757
  ...props
@@ -7286,7 +7760,7 @@ var TypographySmall = React23.forwardRef(
7286
7760
  }
7287
7761
  );
7288
7762
  TypographySmall.displayName = "TypographySmall";
7289
- var TypographyMuted = React23.forwardRef(
7763
+ var TypographyMuted = React24.forwardRef(
7290
7764
  ({ className, ...props }, ref) => {
7291
7765
  return /* @__PURE__ */ jsx(
7292
7766
  "p",
@@ -7302,7 +7776,7 @@ var TypographyMuted = React23.forwardRef(
7302
7776
  }
7303
7777
  );
7304
7778
  TypographyMuted.displayName = "TypographyMuted";
7305
- var TypographyList = React23.forwardRef(
7779
+ var TypographyList = React24.forwardRef(
7306
7780
  ({ className, ...props }, ref) => {
7307
7781
  return /* @__PURE__ */ jsx(
7308
7782
  "ul",
@@ -7318,7 +7792,7 @@ var TypographyList = React23.forwardRef(
7318
7792
  }
7319
7793
  );
7320
7794
  TypographyList.displayName = "TypographyList";
7321
- var TypographyPre = React23.forwardRef(
7795
+ var TypographyPre = React24.forwardRef(
7322
7796
  ({ className, ...props }, ref) => {
7323
7797
  return /* @__PURE__ */ jsx(
7324
7798
  "pre",
@@ -7354,6 +7828,6 @@ var Typography = {
7354
7828
  Pre: TypographyPre
7355
7829
  };
7356
7830
 
7357
- 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, 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, SWATCH as boundSwatch, buttonGroupVariants, buttonVariants, chatSessionGutterClass, cn, describeSlice, LABEL as layerLabel, SWATCH2 as layerSwatch, navigationMenuTriggerStyle, split as splitAddress, statusDotVariants, toggleVariants, MARK_LABEL as touchLabel, useOverflowItems, useSidebar, useTour };
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 };
7358
7832
  //# sourceMappingURL=index.js.map
7359
7833
  //# sourceMappingURL=index.js.map