@dxos/react-ui 0.8.4-main.c85a9c8dae → 0.8.4-main.d05673bc65

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.
Files changed (62) hide show
  1. package/dist/lib/browser/index.mjs +590 -603
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/lib/browser/testing/index.mjs +18 -0
  5. package/dist/lib/browser/testing/index.mjs.map +4 -4
  6. package/dist/lib/node-esm/index.mjs +590 -603
  7. package/dist/lib/node-esm/index.mjs.map +4 -4
  8. package/dist/lib/node-esm/meta.json +1 -1
  9. package/dist/lib/node-esm/testing/index.mjs +18 -0
  10. package/dist/lib/node-esm/testing/index.mjs.map +4 -4
  11. package/dist/types/src/components/Card/Card.d.ts +15 -29
  12. package/dist/types/src/components/Card/Card.d.ts.map +1 -1
  13. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts +4 -6
  14. package/dist/types/src/components/ScrollArea/ScrollArea.d.ts.map +1 -1
  15. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts +5 -7
  16. package/dist/types/src/components/ScrollArea/ScrollArea.stories.d.ts.map +1 -1
  17. package/dist/types/src/components/Splitter/Splitter.d.ts +7 -11
  18. package/dist/types/src/components/Splitter/Splitter.d.ts.map +1 -1
  19. package/dist/types/src/components/Toolbar/Toolbar.d.ts +1 -3
  20. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  21. package/dist/types/src/exemplars/slot.stories.d.ts.map +1 -1
  22. package/dist/types/src/primitives/Column/Column.d.ts +6 -12
  23. package/dist/types/src/primitives/Column/Column.d.ts.map +1 -1
  24. package/dist/types/src/primitives/Column/Column.stories.d.ts.map +1 -1
  25. package/dist/types/src/primitives/Container/Container.d.ts +8 -0
  26. package/dist/types/src/primitives/Container/Container.d.ts.map +1 -0
  27. package/dist/types/src/primitives/Container/Container.stories.d.ts +6 -0
  28. package/dist/types/src/primitives/Container/Container.stories.d.ts.map +1 -0
  29. package/dist/types/src/primitives/Container/index.d.ts +2 -0
  30. package/dist/types/src/primitives/Container/index.d.ts.map +1 -0
  31. package/dist/types/src/primitives/Flex/Flex.d.ts +9 -4
  32. package/dist/types/src/primitives/Flex/Flex.d.ts.map +1 -1
  33. package/dist/types/src/primitives/Grid/Grid.d.ts +10 -4
  34. package/dist/types/src/primitives/Grid/Grid.d.ts.map +1 -1
  35. package/dist/types/src/primitives/Panel/Panel.d.ts +6 -14
  36. package/dist/types/src/primitives/Panel/Panel.d.ts.map +1 -1
  37. package/dist/types/src/primitives/index.d.ts +1 -0
  38. package/dist/types/src/primitives/index.d.ts.map +1 -1
  39. package/dist/types/src/testing/Loading.d.ts +9 -0
  40. package/dist/types/src/testing/Loading.d.ts.map +1 -0
  41. package/dist/types/src/testing/index.d.ts +1 -0
  42. package/dist/types/src/testing/index.d.ts.map +1 -1
  43. package/dist/types/tsconfig.tsbuildinfo +1 -1
  44. package/package.json +16 -16
  45. package/src/components/Card/Card.tsx +49 -54
  46. package/src/components/List/List.stories.tsx +2 -2
  47. package/src/components/List/TreeDropIndicator.tsx +1 -1
  48. package/src/components/ScrollArea/ScrollArea.tsx +6 -6
  49. package/src/components/Splitter/Splitter.tsx +17 -29
  50. package/src/components/Toolbar/Toolbar.tsx +18 -17
  51. package/src/exemplars/slot.stories.tsx +11 -23
  52. package/src/primitives/Column/Column.stories.tsx +6 -0
  53. package/src/primitives/Column/Column.tsx +26 -48
  54. package/src/primitives/Container/Container.stories.tsx +30 -0
  55. package/src/primitives/Container/Container.tsx +22 -0
  56. package/src/primitives/Container/index.ts +5 -0
  57. package/src/primitives/Flex/Flex.tsx +21 -19
  58. package/src/primitives/Grid/Grid.tsx +27 -35
  59. package/src/primitives/Panel/Panel.tsx +54 -72
  60. package/src/primitives/index.ts +1 -0
  61. package/src/testing/Loading.tsx +26 -0
  62. package/src/testing/index.ts +2 -0
@@ -434,15 +434,16 @@ var ToggleGroupIconItem = /* @__PURE__ */ forwardRef8(({ variant, label, icon, s
434
434
  });
435
435
 
436
436
  // src/components/Card/Card.tsx
437
- import { Primitive as Primitive10 } from "@radix-ui/react-primitive";
438
- import { Slot as Slot10 } from "@radix-ui/react-slot";
439
- import React18, { createContext as createContext3, forwardRef as forwardRef15, useContext as useContext3 } from "react";
440
- import { mx as mx5 } from "@dxos/ui-theme";
437
+ import { Primitive as Primitive11 } from "@radix-ui/react-primitive";
438
+ import { Slot as Slot11 } from "@radix-ui/react-slot";
439
+ import React19, { createContext as createContext3, forwardRef as forwardRef18, useContext as useContext3 } from "react";
440
+ import { composableProps as composableProps7, mx as mx6 } from "@dxos/ui-theme";
441
441
 
442
442
  // src/primitives/Column/Column.tsx
443
443
  import { Primitive as Primitive5 } from "@radix-ui/react-primitive";
444
444
  import { Slot as Slot5 } from "@radix-ui/react-slot";
445
445
  import React9, { forwardRef as forwardRef9 } from "react";
446
+ import { composableProps } from "@dxos/ui-theme";
446
447
  var COLUMN_ROOT_NAME = "Column.Root";
447
448
  var gutterSizes = {
448
449
  sm: "var(--dx-gutter-sm)",
@@ -450,12 +451,13 @@ var gutterSizes = {
450
451
  lg: "var(--dx-gutter-lg)",
451
452
  rail: "var(--dx-rail-item)"
452
453
  };
453
- var Root = /* @__PURE__ */ forwardRef9(({ classNames, className, asChild, role, children, gutter = "md", ...props }, forwardedRef) => {
454
+ var Root = /* @__PURE__ */ forwardRef9(({ children, asChild, role, gutter = "md", ...props }, forwardedRef) => {
455
+ const { className, ...rest } = composableProps(props);
456
+ const Comp = asChild ? Slot5 : Primitive5.div;
454
457
  const { tx } = useThemeContext();
455
- const Component = asChild ? Slot5 : Primitive5.div;
456
458
  const gutterSize = gutterSizes[gutter];
457
- return /* @__PURE__ */ React9.createElement(Component, {
458
- ...props,
459
+ return /* @__PURE__ */ React9.createElement(Comp, {
460
+ ...rest,
459
461
  role: role ?? "none",
460
462
  style: {
461
463
  "--gutter": gutterSize,
@@ -467,53 +469,35 @@ var Root = /* @__PURE__ */ forwardRef9(({ classNames, className, asChild, role,
467
469
  },
468
470
  className: tx("column.root", {
469
471
  gutter
470
- }, [
471
- className,
472
- classNames
473
- ]),
472
+ }, className),
474
473
  ref: forwardedRef
475
474
  }, children);
476
475
  });
477
476
  Root.displayName = COLUMN_ROOT_NAME;
478
477
  var COLUMN_ROW_NAME = "Column.Row";
479
- var Row = /* @__PURE__ */ forwardRef9(({ classNames, className, asChild, role, children, ...props }, forwardedRef) => {
478
+ var Row = /* @__PURE__ */ forwardRef9(({ children, asChild, role, ...props }, forwardedRef) => {
479
+ const { className, ...rest } = composableProps(props);
480
+ const Comp = asChild ? Slot5 : Primitive5.div;
480
481
  const { tx } = useThemeContext();
481
- const Component = asChild ? Slot5 : Primitive5.div;
482
- return /* @__PURE__ */ React9.createElement(Component, {
483
- ...props,
484
- className: tx("column.row", {}, [
485
- className,
486
- classNames
487
- ]),
482
+ return /* @__PURE__ */ React9.createElement(Comp, {
483
+ ...rest,
488
484
  role: role ?? "none",
485
+ className: tx("column.row", {}, className),
489
486
  ref: forwardedRef
490
487
  }, children);
491
488
  });
492
489
  Row.displayName = COLUMN_ROW_NAME;
493
490
  var COLUMN_SEGMENT_NAME = "Column.Segment";
494
- var Segment = /* @__PURE__ */ forwardRef9(({ classNames, className, asChild, role, children, ...props }, forwardedRef) => {
491
+ var Segment = /* @__PURE__ */ forwardRef9(({ children, asChild, role, ...props }, forwardedRef) => {
492
+ const { className, ...rest } = composableProps(props);
493
+ const Comp = asChild ? Slot5 : Primitive5.div;
495
494
  const { tx } = useThemeContext();
496
- const Component = asChild ? Slot5 : Primitive5.div;
497
- if (asChild) {
498
- return /* @__PURE__ */ React9.createElement(Component, {
499
- ...props,
500
- role: role ?? "none",
501
- className: tx("column.segment", {}, [
502
- className,
503
- classNames
504
- ]),
505
- ref: forwardedRef
506
- }, children);
507
- }
508
- return /* @__PURE__ */ React9.createElement(Component, {
509
- ...props,
510
- className: tx("column.segment", {}, [
511
- className,
512
- classNames
513
- ]),
514
- role,
495
+ return /* @__PURE__ */ React9.createElement(Comp, {
496
+ ...rest,
497
+ role: role ?? "none",
498
+ className: tx("column.segment", {}, className),
515
499
  ref: forwardedRef
516
- }, /* @__PURE__ */ React9.createElement("div", {
500
+ }, asChild ? children : /* @__PURE__ */ React9.createElement("div", {
517
501
  className: "contents"
518
502
  }, children));
519
503
  });
@@ -524,97 +508,111 @@ var Column = {
524
508
  Segment
525
509
  };
526
510
 
511
+ // src/primitives/Container/Container.tsx
512
+ import React10, { forwardRef as forwardRef10 } from "react";
513
+ import { composableProps as composableProps2, mx as mx2 } from "@dxos/ui-theme";
514
+ import { Slot as Slot6 } from "@radix-ui/react-slot";
515
+ import { Primitive as Primitive6 } from "@radix-ui/react-primitive";
516
+ var Container = /* @__PURE__ */ forwardRef10(({ children, asChild, ...props }, forwardedRef) => {
517
+ const { className, ...rest } = composableProps2(props, {
518
+ role: "none"
519
+ });
520
+ const Comp = asChild ? Slot6 : Primitive6.div;
521
+ return /* @__PURE__ */ React10.createElement(Comp, {
522
+ ...rest,
523
+ className: mx2("dx-container", className),
524
+ ref: forwardedRef
525
+ }, children);
526
+ });
527
+
527
528
  // src/primitives/Flex/Flex.tsx
528
- import React10 from "react";
529
- import { mx as mx2 } from "@dxos/ui-theme";
530
- var Flex = ({ children, classNames, className, role, column, grow, ...props }) => {
531
- return /* @__PURE__ */ React10.createElement("div", {
532
- ...props,
529
+ import React11, { forwardRef as forwardRef11 } from "react";
530
+ import { composableProps as composableProps3, mx as mx3 } from "@dxos/ui-theme";
531
+ var Flex = /* @__PURE__ */ forwardRef11(({ children, role, column, grow, ...props }, forwardedRef) => {
532
+ const { className, ...rest } = composableProps3(props);
533
+ return /* @__PURE__ */ React11.createElement("div", {
534
+ ref: forwardedRef,
535
+ ...rest,
533
536
  role: role ?? "none",
534
- className: mx2("flex", column && "flex-col", grow && "flex-1 overflow-hidden", className, classNames)
537
+ className: mx3("flex", column && "flex-col", grow && "flex-1 overflow-hidden", className)
535
538
  }, children);
536
- };
539
+ });
537
540
 
538
541
  // src/primitives/Grid/Grid.tsx
539
- import React11 from "react";
540
- import { mx as mx3 } from "@dxos/ui-theme";
541
- var Grid = ({ children, classNames, className, style, role, cols, rows, grow = true, ...props }) => {
542
- return /* @__PURE__ */ React11.createElement("div", {
543
- ...props,
542
+ import React12, { forwardRef as forwardRef12 } from "react";
543
+ import { composableProps as composableProps4, mx as mx4 } from "@dxos/ui-theme";
544
+ var Grid = /* @__PURE__ */ forwardRef12(({ children, style, role, cols, rows, grow = true, ...props }, forwardedRef) => {
545
+ const { className, ...rest } = composableProps4(props);
546
+ return /* @__PURE__ */ React12.createElement("div", {
547
+ ref: forwardedRef,
548
+ ...rest,
544
549
  role: role ?? "none",
550
+ className: mx4("grid overflow-hidden", grow && "dx-container", className),
545
551
  style: {
546
552
  gridTemplateColumns: cols ? `repeat(${cols}, 1fr)` : void 0,
547
553
  gridTemplateRows: rows ? `repeat(${rows}, 1fr)` : void 0,
548
554
  ...style
549
- },
550
- className: mx3("grid overflow-hidden", grow && "dx-container", className, classNames)
555
+ }
551
556
  }, children);
552
- };
557
+ });
553
558
 
554
559
  // src/primitives/Panel/Panel.tsx
555
- import { Primitive as Primitive6 } from "@radix-ui/react-primitive";
556
- import { Slot as Slot6 } from "@radix-ui/react-slot";
557
- import React12, { forwardRef as forwardRef10 } from "react";
560
+ import { Primitive as Primitive7 } from "@radix-ui/react-primitive";
561
+ import { Slot as Slot7 } from "@radix-ui/react-slot";
562
+ import React13, { forwardRef as forwardRef13 } from "react";
563
+ import { composableProps as composableProps5 } from "@dxos/ui-theme";
558
564
  var GRID_TEMPLATE_ROWS = "auto 1fr auto";
559
565
  var GRID_TEMPLATE_AREAS = '"toolbar" "content" "statusbar"';
560
- var Root2 = /* @__PURE__ */ forwardRef10(({ classNames, className, asChild, children, role, ...props }, forwardedRef) => {
566
+ var Root2 = /* @__PURE__ */ forwardRef13(({ children, asChild, role, style, ...props }, forwardedRef) => {
567
+ const { className, ...rest } = composableProps5(props);
568
+ const Comp = asChild ? Slot7 : Primitive7.div;
561
569
  const { tx } = useThemeContext();
562
- const Comp = asChild ? Slot6 : Primitive6.div;
563
- return /* @__PURE__ */ React12.createElement(Comp, {
564
- ref: forwardedRef,
570
+ return /* @__PURE__ */ React13.createElement(Comp, {
571
+ ...rest,
565
572
  role: role ?? "none",
566
- ...props,
567
573
  style: {
568
574
  gridTemplateRows: GRID_TEMPLATE_ROWS,
569
575
  gridTemplateAreas: GRID_TEMPLATE_AREAS,
570
- ...props.style
576
+ ...style
571
577
  },
572
- className: tx("panel.root", {}, [
573
- className,
574
- classNames
575
- ])
578
+ className: tx("panel.root", {}, className),
579
+ ref: forwardedRef
576
580
  }, children);
577
581
  });
578
582
  Root2.displayName = "Panel.Root";
579
- var Toolbar = /* @__PURE__ */ forwardRef10(({ classNames, className, asChild, children, ...props }, forwardedRef) => {
583
+ var Toolbar = /* @__PURE__ */ forwardRef13(({ children, asChild, ...props }, forwardedRef) => {
584
+ const { className, ...rest } = composableProps5(props);
585
+ const Comp = asChild ? Slot7 : Primitive7.div;
580
586
  const { tx } = useThemeContext();
581
- const Comp = asChild ? Slot6 : Primitive6.div;
582
- return /* @__PURE__ */ React12.createElement(Comp, {
583
- ref: forwardedRef,
587
+ return /* @__PURE__ */ React13.createElement(Comp, {
588
+ ...rest,
584
589
  "data-slot": "toolbar",
585
- ...props,
586
- className: tx("panel.toolbar", {}, [
587
- className,
588
- classNames
589
- ])
590
+ className: tx("panel.toolbar", {}, className),
591
+ ref: forwardedRef
590
592
  }, children);
591
593
  });
592
594
  Toolbar.displayName = "Panel.Toolbar";
593
- var Content = /* @__PURE__ */ forwardRef10(({ classNames, className, asChild, children, ...props }, forwardedRef) => {
595
+ var Content = /* @__PURE__ */ forwardRef13(({ children, asChild, ...props }, forwardedRef) => {
596
+ const { className, ...rest } = composableProps5(props);
597
+ const Comp = asChild ? Slot7 : Primitive7.div;
594
598
  const { tx } = useThemeContext();
595
- const Comp = asChild ? Slot6 : Primitive6.div;
596
- return /* @__PURE__ */ React12.createElement(Comp, {
597
- ref: forwardedRef,
599
+ return /* @__PURE__ */ React13.createElement(Comp, {
600
+ ...rest,
598
601
  "data-slot": "content",
599
- ...props,
600
- className: tx("panel.content", {}, [
601
- className,
602
- classNames
603
- ])
602
+ className: tx("panel.content", {}, className),
603
+ ref: forwardedRef
604
604
  }, children);
605
605
  });
606
606
  Content.displayName = "Panel.Content";
607
- var Statusbar = /* @__PURE__ */ forwardRef10(({ classNames, className, asChild, children, ...props }, forwardedRef) => {
607
+ var Statusbar = /* @__PURE__ */ forwardRef13(({ children, asChild, ...props }, forwardedRef) => {
608
+ const { className, ...rest } = composableProps5(props);
609
+ const Comp = asChild ? Slot7 : Primitive7.div;
608
610
  const { tx } = useThemeContext();
609
- const Comp = asChild ? Slot6 : Primitive6.div;
610
- return /* @__PURE__ */ React12.createElement(Comp, {
611
- ref: forwardedRef,
611
+ return /* @__PURE__ */ React13.createElement(Comp, {
612
+ ...rest,
612
613
  "data-slot": "statusbar",
613
- ...props,
614
- className: tx("panel.statusbar", {}, [
615
- className,
616
- classNames
617
- ])
614
+ className: tx("panel.statusbar", {}, className),
615
+ ref: forwardedRef
618
616
  }, children);
619
617
  });
620
618
  Statusbar.displayName = "Panel.Statusbar";
@@ -626,8 +624,8 @@ var Panel = {
626
624
  };
627
625
 
628
626
  // src/components/Image/Image.tsx
629
- import React13, { useCallback as useCallback3, useRef, useState as useState3 } from "react";
630
- import { mx as mx4 } from "@dxos/ui-theme";
627
+ import React14, { useCallback as useCallback3, useRef, useState as useState3 } from "react";
628
+ import { mx as mx5 } from "@dxos/ui-theme";
631
629
  var cache = /* @__PURE__ */ new Map();
632
630
  var Image = ({ classNames, src, alt = "", crossOrigin = "anonymous", sampleSize = 64, contrast = 0.9 }) => {
633
631
  const [crossOriginState, setCrossOriginState] = useState3(crossOrigin);
@@ -667,25 +665,25 @@ var Image = ({ classNames, src, alt = "", crossOrigin = "anonymous", sampleSize
667
665
  contrast,
668
666
  src
669
667
  ]);
670
- return /* @__PURE__ */ React13.createElement("div", {
671
- className: mx4(`relative flex w-full justify-center overflow-hidden transition-all duration-700`, classNames),
668
+ return /* @__PURE__ */ React14.createElement("div", {
669
+ className: mx5(`relative flex w-full justify-center overflow-hidden transition-all duration-700`, classNames),
672
670
  style: {
673
671
  backgroundColor: dominantColor
674
672
  }
675
- }, /* @__PURE__ */ React13.createElement("canvas", {
673
+ }, /* @__PURE__ */ React14.createElement("canvas", {
676
674
  ref: canvasRef,
677
675
  style: {
678
676
  display: "none"
679
677
  },
680
678
  "aria-hidden": "true"
681
- }), /* @__PURE__ */ React13.createElement("div", {
679
+ }), /* @__PURE__ */ React14.createElement("div", {
682
680
  className: "absolute inset-0 pointer-events-none",
683
681
  style: {
684
682
  background: dominantColor ? `radial-gradient(circle at center, transparent 30%, ${dominantColor} 100%)` : void 0,
685
683
  transition: "opacity 0.7s ease-in-out",
686
684
  opacity: 0.5
687
685
  }
688
- }), /* @__PURE__ */ React13.createElement("img", {
686
+ }), /* @__PURE__ */ React14.createElement("img", {
689
687
  src,
690
688
  alt,
691
689
  crossOrigin: crossOriginState,
@@ -771,11 +769,12 @@ var isTransparent = (pixels, sampleSize, threshold = 0.5) => {
771
769
  };
772
770
 
773
771
  // src/components/Toolbar/Toolbar.tsx
774
- import { Primitive as Primitive9 } from "@radix-ui/react-primitive";
775
- import { Slot as Slot9 } from "@radix-ui/react-slot";
772
+ import { Primitive as Primitive10 } from "@radix-ui/react-primitive";
773
+ import { Slot as Slot10 } from "@radix-ui/react-slot";
776
774
  import * as ToolbarPrimitive from "@radix-ui/react-toolbar";
777
- import React17, { Fragment, forwardRef as forwardRef14 } from "react";
775
+ import React18, { Fragment, forwardRef as forwardRef17 } from "react";
778
776
  import { useTranslation as useTranslation2 } from "react-i18next";
777
+ import { composableProps as composableProps6 } from "@dxos/ui-theme";
779
778
 
780
779
  // src/translations.ts
781
780
  var translationKey = "@dxos/react-ui";
@@ -793,9 +792,9 @@ var translations = [
793
792
 
794
793
  // src/components/Menu/ContextMenu.tsx
795
794
  import * as ContextMenuPrimitive from "@radix-ui/react-context-menu";
796
- import { Primitive as Primitive7 } from "@radix-ui/react-primitive";
797
- import { Slot as Slot7 } from "@radix-ui/react-slot";
798
- import React14, { forwardRef as forwardRef11 } from "react";
795
+ import { Primitive as Primitive8 } from "@radix-ui/react-primitive";
796
+ import { Slot as Slot8 } from "@radix-ui/react-slot";
797
+ import React15, { forwardRef as forwardRef14 } from "react";
799
798
 
800
799
  // src/hooks/useSafeCollisionPadding.ts
801
800
  import { useMemo as useMemo2 } from "react";
@@ -821,11 +820,11 @@ var useSafeCollisionPadding = (collisionPadding) => {
821
820
  var ContextMenuRoot = ContextMenuPrimitive.ContextMenu;
822
821
  var ContextMenuTrigger = ContextMenuPrimitive.Trigger;
823
822
  var ContextMenuPortal = ContextMenuPrimitive.Portal;
824
- var ContextMenuContent = /* @__PURE__ */ forwardRef11(({ classNames, children, collisionPadding = 8, ...props }, forwardedRef) => {
823
+ var ContextMenuContent = /* @__PURE__ */ forwardRef14(({ classNames, children, collisionPadding = 8, ...props }, forwardedRef) => {
825
824
  const { tx } = useThemeContext();
826
825
  const elevation = useElevationContext();
827
826
  const safeCollisionPadding = useSafeCollisionPadding(collisionPadding);
828
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.Content, {
827
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.Content, {
829
828
  ...props,
830
829
  "data-arrow-keys": "up down",
831
830
  collisionPadding: safeCollisionPadding,
@@ -835,18 +834,18 @@ var ContextMenuContent = /* @__PURE__ */ forwardRef11(({ classNames, children, c
835
834
  ref: forwardedRef
836
835
  }, children);
837
836
  });
838
- var ContextMenuViewport = /* @__PURE__ */ forwardRef11(({ classNames, asChild, children, ...props }, forwardedRef) => {
837
+ var ContextMenuViewport = /* @__PURE__ */ forwardRef14(({ classNames, asChild, children, ...props }, forwardedRef) => {
839
838
  const { tx } = useThemeContext();
840
- const Comp = asChild ? Slot7 : Primitive7.div;
841
- return /* @__PURE__ */ React14.createElement(Comp, {
839
+ const Comp = asChild ? Slot8 : Primitive8.div;
840
+ return /* @__PURE__ */ React15.createElement(Comp, {
842
841
  ...props,
843
842
  className: tx("menu.viewport", {}, classNames),
844
843
  ref: forwardedRef
845
844
  }, children);
846
845
  });
847
- var ContextMenuArrow = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, forwardedRef) => {
846
+ var ContextMenuArrow = /* @__PURE__ */ forwardRef14(({ classNames, ...props }, forwardedRef) => {
848
847
  const { tx } = useThemeContext();
849
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.Arrow, {
848
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.Arrow, {
850
849
  ...props,
851
850
  className: tx("menu.arrow", {}, classNames),
852
851
  ref: forwardedRef
@@ -854,33 +853,33 @@ var ContextMenuArrow = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, f
854
853
  });
855
854
  var ContextMenuGroup = ContextMenuPrimitive.Group;
856
855
  var ContextMenuItemIndicator = ContextMenuPrimitive.ItemIndicator;
857
- var ContextMenuItem = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, forwardedRef) => {
856
+ var ContextMenuItem = /* @__PURE__ */ forwardRef14(({ classNames, ...props }, forwardedRef) => {
858
857
  const { tx } = useThemeContext();
859
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.Item, {
858
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.Item, {
860
859
  ...props,
861
860
  className: tx("menu.item", {}, classNames),
862
861
  ref: forwardedRef
863
862
  });
864
863
  });
865
- var ContextMenuCheckboxItem = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, forwardedRef) => {
864
+ var ContextMenuCheckboxItem = /* @__PURE__ */ forwardRef14(({ classNames, ...props }, forwardedRef) => {
866
865
  const { tx } = useThemeContext();
867
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.CheckboxItem, {
866
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.CheckboxItem, {
868
867
  ...props,
869
868
  className: tx("menu.item", {}, classNames),
870
869
  ref: forwardedRef
871
870
  });
872
871
  });
873
- var ContextMenuSeparator = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, forwardedRef) => {
872
+ var ContextMenuSeparator = /* @__PURE__ */ forwardRef14(({ classNames, ...props }, forwardedRef) => {
874
873
  const { tx } = useThemeContext();
875
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.Separator, {
874
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.Separator, {
876
875
  ...props,
877
876
  className: tx("menu.separator", {}, classNames),
878
877
  ref: forwardedRef
879
878
  });
880
879
  });
881
- var ContextMenuGroupLabel = /* @__PURE__ */ forwardRef11(({ classNames, ...props }, forwardedRef) => {
880
+ var ContextMenuGroupLabel = /* @__PURE__ */ forwardRef14(({ classNames, ...props }, forwardedRef) => {
882
881
  const { tx } = useThemeContext();
883
- return /* @__PURE__ */ React14.createElement(ContextMenuPrimitive.Label, {
882
+ return /* @__PURE__ */ React15.createElement(ContextMenuPrimitive.Label, {
884
883
  ...props,
885
884
  className: tx("menu.groupLabel", {}, classNames),
886
885
  ref: forwardedRef
@@ -908,10 +907,10 @@ import { createContextScope } from "@radix-ui/react-context";
908
907
  import { useId as useId2 } from "@radix-ui/react-id";
909
908
  import * as MenuPrimitive from "@radix-ui/react-menu";
910
909
  import { createMenuScope } from "@radix-ui/react-menu";
911
- import { Primitive as Primitive8 } from "@radix-ui/react-primitive";
912
- import { Slot as Slot8 } from "@radix-ui/react-slot";
910
+ import { Primitive as Primitive9 } from "@radix-ui/react-primitive";
911
+ import { Slot as Slot9 } from "@radix-ui/react-slot";
913
912
  import { useControllableState } from "@radix-ui/react-use-controllable-state";
914
- import React15, { forwardRef as forwardRef12, useCallback as useCallback4, useEffect as useEffect2, useMemo as useMemo3, useRef as useRef2 } from "react";
913
+ import React16, { forwardRef as forwardRef15, useCallback as useCallback4, useEffect as useEffect2, useMemo as useMemo3, useRef as useRef2 } from "react";
915
914
  var DROPDOWN_MENU_NAME = "DropdownMenu";
916
915
  var [createDropdownMenuContext, createDropdownMenuScope] = createContextScope(DROPDOWN_MENU_NAME, [
917
916
  createMenuScope
@@ -927,7 +926,7 @@ var DropdownMenuRoot = (props) => {
927
926
  defaultProp: defaultOpen,
928
927
  onChange: onOpenChange
929
928
  });
930
- return /* @__PURE__ */ React15.createElement(DropdownMenuProvider, {
929
+ return /* @__PURE__ */ React16.createElement(DropdownMenuProvider, {
931
930
  scope: __scopeDropdownMenu,
932
931
  triggerId: useId2(),
933
932
  triggerRef,
@@ -938,7 +937,7 @@ var DropdownMenuRoot = (props) => {
938
937
  setOpen
939
938
  ]),
940
939
  modal
941
- }, /* @__PURE__ */ React15.createElement(MenuPrimitive.Root, {
940
+ }, /* @__PURE__ */ React16.createElement(MenuPrimitive.Root, {
942
941
  ...menuScope,
943
942
  open,
944
943
  onOpenChange: setOpen,
@@ -948,14 +947,14 @@ var DropdownMenuRoot = (props) => {
948
947
  };
949
948
  DropdownMenuRoot.displayName = DROPDOWN_MENU_NAME;
950
949
  var TRIGGER_NAME = "DropdownMenuTrigger";
951
- var DropdownMenuTrigger = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
950
+ var DropdownMenuTrigger = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
952
951
  const { __scopeDropdownMenu, disabled = false, ...triggerProps } = props;
953
952
  const context = useDropdownMenuContext(TRIGGER_NAME, __scopeDropdownMenu);
954
953
  const menuScope = useMenuScope(__scopeDropdownMenu);
955
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Anchor, {
954
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Anchor, {
956
955
  asChild: true,
957
956
  ...menuScope
958
- }, /* @__PURE__ */ React15.createElement(Primitive8.button, {
957
+ }, /* @__PURE__ */ React16.createElement(Primitive9.button, {
959
958
  type: "button",
960
959
  id: context.triggerId,
961
960
  "aria-haspopup": "menu",
@@ -1009,7 +1008,7 @@ var DropdownMenuVirtualTrigger = (props) => {
1009
1008
  context.triggerRef.current = virtualRef.current;
1010
1009
  }
1011
1010
  });
1012
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Anchor, {
1011
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Anchor, {
1013
1012
  ...menuScope,
1014
1013
  virtualRef
1015
1014
  });
@@ -1019,23 +1018,23 @@ var PORTAL_NAME = "DropdownMenuPortal";
1019
1018
  var DropdownMenuPortal = (props) => {
1020
1019
  const { __scopeDropdownMenu, ...portalProps } = props;
1021
1020
  const menuScope = useMenuScope(__scopeDropdownMenu);
1022
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Portal, {
1021
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Portal, {
1023
1022
  ...menuScope,
1024
1023
  ...portalProps
1025
1024
  });
1026
1025
  };
1027
1026
  DropdownMenuPortal.displayName = PORTAL_NAME;
1028
- var DropdownMenuViewport = /* @__PURE__ */ forwardRef12(({ classNames, asChild, children, ...props }, forwardedRef) => {
1027
+ var DropdownMenuViewport = /* @__PURE__ */ forwardRef15(({ classNames, asChild, children, ...props }, forwardedRef) => {
1029
1028
  const { tx } = useThemeContext();
1030
- const Comp = asChild ? Slot8 : Primitive8.div;
1031
- return /* @__PURE__ */ React15.createElement(Comp, {
1029
+ const Comp = asChild ? Slot9 : Primitive9.div;
1030
+ return /* @__PURE__ */ React16.createElement(Comp, {
1032
1031
  ...props,
1033
1032
  className: tx("menu.viewport", {}, classNames),
1034
1033
  ref: forwardedRef
1035
1034
  }, children);
1036
1035
  });
1037
1036
  var CONTENT_NAME = "DropdownMenuContent";
1038
- var DropdownMenuContent = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1037
+ var DropdownMenuContent = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1039
1038
  const { __scopeDropdownMenu, classNames, collisionPadding = 8, collisionBoundary, ...contentProps } = props;
1040
1039
  const { tx } = useThemeContext();
1041
1040
  const context = useDropdownMenuContext(CONTENT_NAME, __scopeDropdownMenu);
@@ -1059,7 +1058,7 @@ var DropdownMenuContent = /* @__PURE__ */ forwardRef12((props, forwardedRef) =>
1059
1058
  collisionBoundary,
1060
1059
  context.triggerRef.current
1061
1060
  ]);
1062
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Content, {
1061
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Content, {
1063
1062
  id: context.contentId,
1064
1063
  "aria-labelledby": context.triggerId,
1065
1064
  ...menuScope,
@@ -1101,10 +1100,10 @@ var DropdownMenuContent = /* @__PURE__ */ forwardRef12((props, forwardedRef) =>
1101
1100
  });
1102
1101
  DropdownMenuContent.displayName = CONTENT_NAME;
1103
1102
  var GROUP_NAME = "DropdownMenuGroup";
1104
- var DropdownMenuGroup = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1103
+ var DropdownMenuGroup = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1105
1104
  const { __scopeDropdownMenu, ...groupProps } = props;
1106
1105
  const menuScope = useMenuScope(__scopeDropdownMenu);
1107
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Group, {
1106
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Group, {
1108
1107
  ...menuScope,
1109
1108
  ...groupProps,
1110
1109
  ref: forwardedRef
@@ -1112,11 +1111,11 @@ var DropdownMenuGroup = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1112
1111
  });
1113
1112
  DropdownMenuGroup.displayName = GROUP_NAME;
1114
1113
  var LABEL_NAME = "DropdownMenuLabel";
1115
- var DropdownMenuGroupLabel = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1114
+ var DropdownMenuGroupLabel = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1116
1115
  const { __scopeDropdownMenu, classNames, ...labelProps } = props;
1117
1116
  const menuScope = useMenuScope(__scopeDropdownMenu);
1118
1117
  const { tx } = useThemeContext();
1119
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Label, {
1118
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Label, {
1120
1119
  ...menuScope,
1121
1120
  ...labelProps,
1122
1121
  className: tx("menu.groupLabel", {}, classNames),
@@ -1125,11 +1124,11 @@ var DropdownMenuGroupLabel = /* @__PURE__ */ forwardRef12((props, forwardedRef)
1125
1124
  });
1126
1125
  DropdownMenuGroupLabel.displayName = LABEL_NAME;
1127
1126
  var ITEM_NAME = "DropdownMenuItem";
1128
- var DropdownMenuItem = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1127
+ var DropdownMenuItem = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1129
1128
  const { __scopeDropdownMenu, classNames, ...itemProps } = props;
1130
1129
  const menuScope = useMenuScope(__scopeDropdownMenu);
1131
1130
  const { tx } = useThemeContext();
1132
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Item, {
1131
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Item, {
1133
1132
  ...menuScope,
1134
1133
  ...itemProps,
1135
1134
  className: tx("menu.item", {}, classNames),
@@ -1138,11 +1137,11 @@ var DropdownMenuItem = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1138
1137
  });
1139
1138
  DropdownMenuItem.displayName = ITEM_NAME;
1140
1139
  var CHECKBOX_ITEM_NAME = "DropdownMenuCheckboxItem";
1141
- var DropdownMenuCheckboxItem = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1140
+ var DropdownMenuCheckboxItem = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1142
1141
  const { __scopeDropdownMenu, classNames, ...checkboxItemProps } = props;
1143
1142
  const menuScope = useMenuScope(__scopeDropdownMenu);
1144
1143
  const { tx } = useThemeContext();
1145
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.CheckboxItem, {
1144
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.CheckboxItem, {
1146
1145
  ...menuScope,
1147
1146
  ...checkboxItemProps,
1148
1147
  className: tx("menu.item", {}, classNames),
@@ -1151,10 +1150,10 @@ var DropdownMenuCheckboxItem = /* @__PURE__ */ forwardRef12((props, forwardedRef
1151
1150
  });
1152
1151
  DropdownMenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
1153
1152
  var RADIO_GROUP_NAME = "DropdownMenuRadioGroup";
1154
- var DropdownMenuRadioGroup = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1153
+ var DropdownMenuRadioGroup = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1155
1154
  const { __scopeDropdownMenu, ...radioGroupProps } = props;
1156
1155
  const menuScope = useMenuScope(__scopeDropdownMenu);
1157
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.RadioGroup, {
1156
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.RadioGroup, {
1158
1157
  ...menuScope,
1159
1158
  ...radioGroupProps,
1160
1159
  ref: forwardedRef
@@ -1162,11 +1161,11 @@ var DropdownMenuRadioGroup = /* @__PURE__ */ forwardRef12((props, forwardedRef)
1162
1161
  });
1163
1162
  DropdownMenuRadioGroup.displayName = RADIO_GROUP_NAME;
1164
1163
  var RADIO_ITEM_NAME = "DropdownMenuRadioItem";
1165
- var DropdownMenuRadioItem = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1164
+ var DropdownMenuRadioItem = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1166
1165
  const { __scopeDropdownMenu, classNames, ...itemProps } = props;
1167
1166
  const menuScope = useMenuScope(__scopeDropdownMenu);
1168
1167
  const { tx } = useThemeContext();
1169
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Item, {
1168
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Item, {
1170
1169
  ...menuScope,
1171
1170
  ...itemProps,
1172
1171
  className: tx("menu.item", {}, classNames),
@@ -1175,10 +1174,10 @@ var DropdownMenuRadioItem = /* @__PURE__ */ forwardRef12((props, forwardedRef) =
1175
1174
  });
1176
1175
  DropdownMenuRadioItem.displayName = RADIO_ITEM_NAME;
1177
1176
  var INDICATOR_NAME = "DropdownMenuItemIndicator";
1178
- var DropdownMenuItemIndicator = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1177
+ var DropdownMenuItemIndicator = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1179
1178
  const { __scopeDropdownMenu, ...itemIndicatorProps } = props;
1180
1179
  const menuScope = useMenuScope(__scopeDropdownMenu);
1181
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.ItemIndicator, {
1180
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.ItemIndicator, {
1182
1181
  ...menuScope,
1183
1182
  ...itemIndicatorProps,
1184
1183
  ref: forwardedRef
@@ -1186,11 +1185,11 @@ var DropdownMenuItemIndicator = /* @__PURE__ */ forwardRef12((props, forwardedRe
1186
1185
  });
1187
1186
  DropdownMenuItemIndicator.displayName = INDICATOR_NAME;
1188
1187
  var SEPARATOR_NAME = "DropdownMenuSeparator";
1189
- var DropdownMenuSeparator = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1188
+ var DropdownMenuSeparator = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1190
1189
  const { __scopeDropdownMenu, classNames, ...separatorProps } = props;
1191
1190
  const menuScope = useMenuScope(__scopeDropdownMenu);
1192
1191
  const { tx } = useThemeContext();
1193
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Separator, {
1192
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Separator, {
1194
1193
  ...menuScope,
1195
1194
  ...separatorProps,
1196
1195
  className: tx("menu.separator", {}, classNames),
@@ -1199,11 +1198,11 @@ var DropdownMenuSeparator = /* @__PURE__ */ forwardRef12((props, forwardedRef) =
1199
1198
  });
1200
1199
  DropdownMenuSeparator.displayName = SEPARATOR_NAME;
1201
1200
  var ARROW_NAME = "DropdownMenuArrow";
1202
- var DropdownMenuArrow = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1201
+ var DropdownMenuArrow = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1203
1202
  const { __scopeDropdownMenu, classNames, ...arrowProps } = props;
1204
1203
  const menuScope = useMenuScope(__scopeDropdownMenu);
1205
1204
  const { tx } = useThemeContext();
1206
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Arrow, {
1205
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Arrow, {
1207
1206
  ...menuScope,
1208
1207
  ...arrowProps,
1209
1208
  className: tx("menu.arrow", {}, classNames),
@@ -1219,17 +1218,17 @@ var DropdownMenuSub = (props) => {
1219
1218
  defaultProp: defaultOpen,
1220
1219
  onChange: onOpenChange
1221
1220
  });
1222
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.Sub, {
1221
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.Sub, {
1223
1222
  ...menuScope,
1224
1223
  open,
1225
1224
  onOpenChange: setOpen
1226
1225
  }, children);
1227
1226
  };
1228
1227
  var SUB_TRIGGER_NAME = "DropdownMenuSubTrigger";
1229
- var DropdownMenuSubTrigger = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1228
+ var DropdownMenuSubTrigger = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1230
1229
  const { __scopeDropdownMenu, ...subTriggerProps } = props;
1231
1230
  const menuScope = useMenuScope(__scopeDropdownMenu);
1232
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.SubTrigger, {
1231
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.SubTrigger, {
1233
1232
  ...menuScope,
1234
1233
  ...subTriggerProps,
1235
1234
  ref: forwardedRef
@@ -1237,10 +1236,10 @@ var DropdownMenuSubTrigger = /* @__PURE__ */ forwardRef12((props, forwardedRef)
1237
1236
  });
1238
1237
  DropdownMenuSubTrigger.displayName = SUB_TRIGGER_NAME;
1239
1238
  var SUB_CONTENT_NAME = "DropdownMenuSubContent";
1240
- var DropdownMenuSubContent = /* @__PURE__ */ forwardRef12((props, forwardedRef) => {
1239
+ var DropdownMenuSubContent = /* @__PURE__ */ forwardRef15((props, forwardedRef) => {
1241
1240
  const { __scopeDropdownMenu, ...subContentProps } = props;
1242
1241
  const menuScope = useMenuScope(__scopeDropdownMenu);
1243
- return /* @__PURE__ */ React15.createElement(MenuPrimitive.SubContent, {
1242
+ return /* @__PURE__ */ React16.createElement(MenuPrimitive.SubContent, {
1244
1243
  ...menuScope,
1245
1244
  ...subContentProps,
1246
1245
  ref: forwardedRef,
@@ -1282,10 +1281,10 @@ var useDropdownMenuMenuScope = useMenuScope;
1282
1281
 
1283
1282
  // src/components/Separator/Separator.tsx
1284
1283
  import { Separator as SeparatorPrimitive } from "@radix-ui/react-separator";
1285
- import React16, { forwardRef as forwardRef13 } from "react";
1286
- var Separator3 = /* @__PURE__ */ forwardRef13(({ classNames, orientation = "horizontal", subdued, ...props }, forwardedRef) => {
1284
+ import React17, { forwardRef as forwardRef16 } from "react";
1285
+ var Separator3 = /* @__PURE__ */ forwardRef16(({ classNames, orientation = "horizontal", subdued, ...props }, forwardedRef) => {
1287
1286
  const { tx } = useThemeContext();
1288
- return /* @__PURE__ */ React16.createElement(SeparatorPrimitive, {
1287
+ return /* @__PURE__ */ React17.createElement(SeparatorPrimitive, {
1289
1288
  orientation,
1290
1289
  ...props,
1291
1290
  className: tx("separator.root", {
@@ -1297,87 +1296,87 @@ var Separator3 = /* @__PURE__ */ forwardRef13(({ classNames, orientation = "hori
1297
1296
  });
1298
1297
 
1299
1298
  // src/components/Toolbar/Toolbar.tsx
1300
- var ToolbarRoot = /* @__PURE__ */ forwardRef14(({ classNames, children, density, disabled, layoutManaged, textBlockWidth: textBlockWidthProp, ...props }, forwardedRef) => {
1299
+ var ToolbarRoot = /* @__PURE__ */ forwardRef17(({ children, density, disabled, layoutManaged, textBlockWidth: textBlockWidthProp, orientation, ...props }, forwardedRef) => {
1300
+ const { className, dir: _, ...rest } = composableProps6(props);
1301
1301
  const { tx } = useThemeContext();
1302
1302
  const InnerRoot = textBlockWidthProp ? "div" : Fragment;
1303
1303
  const innerRootProps = textBlockWidthProp ? {
1304
1304
  role: "none",
1305
1305
  className: tx("toolbar.inner", {
1306
1306
  layoutManaged
1307
- }, classNames)
1307
+ }, className)
1308
1308
  } : {};
1309
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Root, {
1310
- ...props,
1311
- "data-arrow-keys": props.orientation === "vertical" ? "up down" : "left right",
1309
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Root, {
1310
+ ...rest,
1311
+ orientation,
1312
+ "data-arrow-keys": orientation === "vertical" ? "up down" : "left right",
1312
1313
  className: tx("toolbar.root", {
1313
1314
  density,
1314
1315
  disabled,
1315
1316
  layoutManaged
1316
- }, classNames),
1317
+ }, className),
1317
1318
  ref: forwardedRef
1318
- }, /* @__PURE__ */ React17.createElement(InnerRoot, innerRootProps, children));
1319
+ }, /* @__PURE__ */ React18.createElement(InnerRoot, innerRootProps, children));
1319
1320
  });
1320
- var ToolbarText = /* @__PURE__ */ forwardRef14(({ classNames, className, asChild, children, ...props }, forwardedRef) => {
1321
+ var ToolbarText = /* @__PURE__ */ forwardRef17(({ children, asChild, ...props }, forwardedRef) => {
1322
+ const { className, ...rest } = composableProps6(props);
1323
+ const Comp = asChild ? Slot10 : Primitive10.div;
1321
1324
  const { tx } = useThemeContext();
1322
- const Comp = asChild ? Slot9 : Primitive9.div;
1323
- return /* @__PURE__ */ React17.createElement(Comp, {
1324
- ...props,
1325
- className: tx("toolbar.text", {}, [
1326
- className,
1327
- classNames
1328
- ]),
1325
+ return /* @__PURE__ */ React18.createElement(Comp, {
1326
+ ...rest,
1327
+ className: tx("toolbar.text", {}, className),
1329
1328
  ref: forwardedRef
1330
1329
  }, children);
1331
1330
  });
1332
- var ToolbarButton = /* @__PURE__ */ forwardRef14((props, forwardedRef) => {
1333
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Button, {
1331
+ var ToolbarButton = /* @__PURE__ */ forwardRef17((props, forwardedRef) => {
1332
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Button, {
1334
1333
  asChild: true
1335
- }, /* @__PURE__ */ React17.createElement(Button, {
1334
+ }, /* @__PURE__ */ React18.createElement(Button, {
1336
1335
  ...props,
1337
1336
  ref: forwardedRef
1338
1337
  }));
1339
1338
  });
1340
- var ToolbarIconButton = /* @__PURE__ */ forwardRef14((props, forwardedRef) => {
1341
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Button, {
1339
+ var ToolbarIconButton = /* @__PURE__ */ forwardRef17((props, forwardedRef) => {
1340
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Button, {
1342
1341
  asChild: true
1343
- }, /* @__PURE__ */ React17.createElement(IconButton, {
1342
+ }, /* @__PURE__ */ React18.createElement(IconButton, {
1344
1343
  ...props,
1345
1344
  noTooltip: true,
1346
1345
  ref: forwardedRef
1347
1346
  }));
1348
1347
  });
1349
- var ToolbarToggle = /* @__PURE__ */ forwardRef14((props, forwardedRef) => {
1350
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Button, {
1348
+ var ToolbarToggle = /* @__PURE__ */ forwardRef17((props, forwardedRef) => {
1349
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Button, {
1351
1350
  asChild: true
1352
- }, /* @__PURE__ */ React17.createElement(Toggle, {
1351
+ }, /* @__PURE__ */ React18.createElement(Toggle, {
1353
1352
  ...props,
1354
1353
  ref: forwardedRef
1355
1354
  }));
1356
1355
  });
1357
- var ToolbarLink = /* @__PURE__ */ forwardRef14((props, forwardedRef) => {
1358
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Link, {
1356
+ var ToolbarLink = /* @__PURE__ */ forwardRef17((props, forwardedRef) => {
1357
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Link, {
1359
1358
  asChild: true
1360
- }, /* @__PURE__ */ React17.createElement(Link, {
1359
+ }, /* @__PURE__ */ React18.createElement(Link, {
1361
1360
  ...props,
1362
1361
  ref: forwardedRef
1363
1362
  }));
1364
1363
  });
1365
- var ToolbarToggleGroup2 = /* @__PURE__ */ forwardRef14(({ classNames, children, elevation, ...props }, forwardedRef) => {
1366
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.ToolbarToggleGroup, {
1364
+ var ToolbarToggleGroup2 = /* @__PURE__ */ forwardRef17(({ classNames, children, elevation, ...props }, forwardedRef) => {
1365
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.ToolbarToggleGroup, {
1367
1366
  ...props,
1368
1367
  asChild: true
1369
- }, /* @__PURE__ */ React17.createElement(ButtonGroup, {
1368
+ }, /* @__PURE__ */ React18.createElement(ButtonGroup, {
1370
1369
  classNames,
1371
1370
  children,
1372
1371
  elevation,
1373
1372
  ref: forwardedRef
1374
1373
  }));
1375
1374
  });
1376
- var ToolbarToggleGroupItem = /* @__PURE__ */ forwardRef14(({ variant, density, elevation, classNames, children, ...props }, forwardedRef) => {
1377
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.ToolbarToggleItem, {
1375
+ var ToolbarToggleGroupItem = /* @__PURE__ */ forwardRef17(({ variant, density, elevation, classNames, children, ...props }, forwardedRef) => {
1376
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.ToolbarToggleItem, {
1378
1377
  ...props,
1379
1378
  asChild: true
1380
- }, /* @__PURE__ */ React17.createElement(Button, {
1379
+ }, /* @__PURE__ */ React18.createElement(Button, {
1381
1380
  variant,
1382
1381
  density,
1383
1382
  elevation,
@@ -1386,11 +1385,11 @@ var ToolbarToggleGroupItem = /* @__PURE__ */ forwardRef14(({ variant, density, e
1386
1385
  ref: forwardedRef
1387
1386
  }));
1388
1387
  });
1389
- var ToolbarToggleGroupIconItem = /* @__PURE__ */ forwardRef14(({ variant, density, elevation, classNames, icon, label, iconOnly, ...props }, forwardedRef) => {
1390
- return /* @__PURE__ */ React17.createElement(ToolbarPrimitive.ToolbarToggleItem, {
1388
+ var ToolbarToggleGroupIconItem = /* @__PURE__ */ forwardRef17(({ variant, density, elevation, classNames, icon, label, iconOnly, ...props }, forwardedRef) => {
1389
+ return /* @__PURE__ */ React18.createElement(ToolbarPrimitive.ToolbarToggleItem, {
1391
1390
  ...props,
1392
1391
  asChild: true
1393
- }, /* @__PURE__ */ React17.createElement(IconButton, {
1392
+ }, /* @__PURE__ */ React18.createElement(IconButton, {
1394
1393
  variant,
1395
1394
  density,
1396
1395
  elevation,
@@ -1401,20 +1400,20 @@ var ToolbarToggleGroupIconItem = /* @__PURE__ */ forwardRef14(({ variant, densit
1401
1400
  ref: forwardedRef
1402
1401
  }));
1403
1402
  });
1404
- var ToolbarSeparator = /* @__PURE__ */ forwardRef14(({ variant = "gap", ...props }, forwardedRef) => {
1405
- return variant === "line" ? /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Separator, {
1403
+ var ToolbarSeparator = /* @__PURE__ */ forwardRef17(({ variant = "gap", ...props }, forwardedRef) => {
1404
+ return variant === "line" ? /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Separator, {
1406
1405
  asChild: true
1407
- }, /* @__PURE__ */ React17.createElement(Separator3, {
1406
+ }, /* @__PURE__ */ React18.createElement(Separator3, {
1408
1407
  ...props,
1409
1408
  ref: forwardedRef
1410
- })) : /* @__PURE__ */ React17.createElement(ToolbarPrimitive.Separator, {
1409
+ })) : /* @__PURE__ */ React18.createElement(ToolbarPrimitive.Separator, {
1411
1410
  className: "grow",
1412
1411
  ref: forwardedRef
1413
1412
  });
1414
1413
  });
1415
- var ToolbarDragHandle = /* @__PURE__ */ forwardRef14(({ testId = "drag-handle", label }, forwardedRef) => {
1414
+ var ToolbarDragHandle = /* @__PURE__ */ forwardRef17(({ testId = "drag-handle", label }, forwardedRef) => {
1416
1415
  const { t } = useTranslation2(translationKey);
1417
- return /* @__PURE__ */ React17.createElement(ToolbarIconButton, {
1416
+ return /* @__PURE__ */ React18.createElement(ToolbarIconButton, {
1418
1417
  "data-testid": testId,
1419
1418
  noTooltip: true,
1420
1419
  iconOnly: true,
@@ -1427,9 +1426,9 @@ var ToolbarDragHandle = /* @__PURE__ */ forwardRef14(({ testId = "drag-handle",
1427
1426
  ref: forwardedRef
1428
1427
  });
1429
1428
  });
1430
- var ToolbarCloseIconButton = /* @__PURE__ */ forwardRef14(({ onClick, label }, forwardedRef) => {
1429
+ var ToolbarCloseIconButton = /* @__PURE__ */ forwardRef17(({ onClick, label }, forwardedRef) => {
1431
1430
  const { t } = useTranslation2(translationKey);
1432
- return /* @__PURE__ */ React17.createElement(ToolbarIconButton, {
1431
+ return /* @__PURE__ */ React18.createElement(ToolbarIconButton, {
1433
1432
  iconOnly: true,
1434
1433
  icon: "ph--x--regular",
1435
1434
  variant: "ghost",
@@ -1442,18 +1441,18 @@ var ToolbarCloseIconButton = /* @__PURE__ */ forwardRef14(({ onClick, label }, f
1442
1441
  });
1443
1442
  var ToolbarMenu = ({ context, items }) => {
1444
1443
  const { t } = useTranslation2(translationKey);
1445
- return /* @__PURE__ */ React17.createElement(DropdownMenu.Root, null, /* @__PURE__ */ React17.createElement(DropdownMenu.Trigger, {
1444
+ return /* @__PURE__ */ React18.createElement(DropdownMenu.Root, null, /* @__PURE__ */ React18.createElement(DropdownMenu.Trigger, {
1446
1445
  disabled: !items?.length,
1447
1446
  asChild: true
1448
- }, /* @__PURE__ */ React17.createElement(ToolbarIconButton, {
1447
+ }, /* @__PURE__ */ React18.createElement(ToolbarIconButton, {
1449
1448
  iconOnly: true,
1450
1449
  variant: "ghost",
1451
1450
  icon: "ph--dots-three-vertical--regular",
1452
1451
  label: t("toolbar menu label")
1453
- })), (items?.length ?? 0) > 0 && /* @__PURE__ */ React17.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React17.createElement(DropdownMenu.Content, null, /* @__PURE__ */ React17.createElement(DropdownMenu.Viewport, null, items?.map(({ label, onClick: onSelect }, index) => /* @__PURE__ */ React17.createElement(DropdownMenu.Item, {
1452
+ })), (items?.length ?? 0) > 0 && /* @__PURE__ */ React18.createElement(DropdownMenu.Portal, null, /* @__PURE__ */ React18.createElement(DropdownMenu.Content, null, /* @__PURE__ */ React18.createElement(DropdownMenu.Viewport, null, items?.map(({ label, onClick: onSelect }, index) => /* @__PURE__ */ React18.createElement(DropdownMenu.Item, {
1454
1453
  key: index,
1455
1454
  onSelect: () => onSelect(context)
1456
- }, label))), /* @__PURE__ */ React17.createElement(DropdownMenu.Arrow, null))));
1455
+ }, label))), /* @__PURE__ */ React18.createElement(DropdownMenu.Arrow, null))));
1457
1456
  };
1458
1457
  var Toolbar2 = {
1459
1458
  Root: ToolbarRoot,
@@ -1473,11 +1472,12 @@ var Toolbar2 = {
1473
1472
 
1474
1473
  // src/components/Card/Card.tsx
1475
1474
  var CardContext = /* @__PURE__ */ createContext3({});
1476
- var CardRoot = /* @__PURE__ */ forwardRef15(({ children, classNames, className, id, asChild, role, border = true, fullWidth, ...props }, forwardedRef) => {
1475
+ var CardRoot = /* @__PURE__ */ forwardRef18(({ children, id, asChild, role, border = true, fullWidth, ...props }, forwardedRef) => {
1476
+ const { className, ...rest } = composableProps7(props);
1477
+ const Comp = asChild ? Slot11 : Primitive11.div;
1477
1478
  const { tx } = useThemeContext();
1478
- const Comp = asChild ? Slot10 : Primitive10.div;
1479
- return /* @__PURE__ */ React18.createElement(Comp, {
1480
- ...props,
1479
+ return /* @__PURE__ */ React19.createElement(Comp, {
1480
+ ...rest,
1481
1481
  ...id && {
1482
1482
  "data-object-id": id
1483
1483
  },
@@ -1485,18 +1485,15 @@ var CardRoot = /* @__PURE__ */ forwardRef15(({ children, classNames, className,
1485
1485
  className: tx("card.root", {
1486
1486
  border,
1487
1487
  fullWidth
1488
- }, [
1489
- className,
1490
- classNames
1491
- ]),
1488
+ }, className),
1492
1489
  ref: forwardedRef
1493
- }, /* @__PURE__ */ React18.createElement(Column.Root, {
1490
+ }, /* @__PURE__ */ React19.createElement(Column.Root, {
1494
1491
  gutter: "rail"
1495
1492
  }, children));
1496
1493
  });
1497
- var CardToolbar = /* @__PURE__ */ forwardRef15(({ children, classNames, density = "fine", ...props }, forwardedRef) => {
1494
+ var CardToolbar = /* @__PURE__ */ forwardRef18(({ children, classNames, density = "fine", ...props }, forwardedRef) => {
1498
1495
  const { tx } = useThemeContext();
1499
- return /* @__PURE__ */ React18.createElement(Toolbar2.Root, {
1496
+ return /* @__PURE__ */ React19.createElement(Toolbar2.Root, {
1500
1497
  ...props,
1501
1498
  classNames: [
1502
1499
  tx("card.toolbar", {
@@ -1513,85 +1510,78 @@ var CardMenu = ({ context, items }) => {
1513
1510
  ...items ?? [],
1514
1511
  ...menuItems ?? []
1515
1512
  ];
1516
- return /* @__PURE__ */ React18.createElement(Toolbar2.Menu, {
1513
+ return /* @__PURE__ */ React19.createElement(Toolbar2.Menu, {
1517
1514
  context,
1518
1515
  items: combinedItems
1519
1516
  });
1520
1517
  };
1521
- var CardTitle = /* @__PURE__ */ forwardRef15(({ children, classNames, className, asChild, role, ...props }, forwardedRef) => {
1518
+ var CardTitle = /* @__PURE__ */ forwardRef18(({ children, asChild, role, ...props }, forwardedRef) => {
1519
+ const { className, ...rest } = composableProps7(props);
1520
+ const Comp = asChild ? Slot11 : Primitive11.div;
1522
1521
  const { tx } = useThemeContext();
1523
- const Comp = asChild ? Slot10 : Primitive10.div;
1524
- return /* @__PURE__ */ React18.createElement(Comp, {
1525
- ...props,
1522
+ return /* @__PURE__ */ React19.createElement(Comp, {
1523
+ ...rest,
1526
1524
  role: role ?? "heading",
1527
- className: tx("card.title", {}, [
1528
- className,
1529
- classNames
1530
- ]),
1525
+ className: tx("card.title", {}, className),
1531
1526
  ref: forwardedRef
1532
1527
  }, children);
1533
1528
  });
1534
- var CardContent = /* @__PURE__ */ forwardRef15(({ children, role, ...props }, forwardedRef) => {
1529
+ var CardContent = /* @__PURE__ */ forwardRef18(({ children, role, ...props }, forwardedRef) => {
1535
1530
  const { tx } = useThemeContext();
1536
- return /* @__PURE__ */ React18.createElement("div", {
1531
+ return /* @__PURE__ */ React19.createElement("div", {
1537
1532
  ...props,
1538
1533
  role: role ?? "none",
1539
1534
  className: tx("card.content", {}),
1540
1535
  ref: forwardedRef
1541
1536
  }, children);
1542
1537
  });
1543
- var CardRow = /* @__PURE__ */ forwardRef15(({ children, classNames, className, role, icon, ...props }, forwardedRef) => {
1544
- return /* @__PURE__ */ React18.createElement(Column.Row, {
1545
- ...props,
1538
+ var CardRow = /* @__PURE__ */ forwardRef18(({ children, role, icon, ...props }, forwardedRef) => {
1539
+ const { className, ...rest } = composableProps7(props);
1540
+ return /* @__PURE__ */ React19.createElement(Column.Row, {
1541
+ ...rest,
1546
1542
  role: role ?? "none",
1547
- classNames: [
1548
- classNames,
1549
- className
1550
- ],
1543
+ classNames: className,
1551
1544
  ref: forwardedRef
1552
- }, icon && /* @__PURE__ */ React18.createElement(CardIcon, {
1545
+ }, icon && /* @__PURE__ */ React19.createElement(CardIcon, {
1553
1546
  classNames: "text-subdued",
1554
1547
  icon
1555
- }) || /* @__PURE__ */ React18.createElement("div", null), children, /* @__PURE__ */ React18.createElement("div", null));
1548
+ }) || /* @__PURE__ */ React19.createElement("div", null), children, /* @__PURE__ */ React19.createElement("div", null));
1556
1549
  });
1557
- var CardSection = /* @__PURE__ */ forwardRef15(({ children, classNames, className, asChild, role, ...props }, forwardedRef) => {
1558
- const Comp = asChild ? Slot10 : Primitive10.div;
1559
- return /* @__PURE__ */ React18.createElement(Comp, {
1560
- ...props,
1550
+ var CardSection = /* @__PURE__ */ forwardRef18(({ children, asChild, role, ...props }, forwardedRef) => {
1551
+ const { className, ...rest } = composableProps7(props);
1552
+ const Comp = asChild ? Slot11 : Primitive11.div;
1553
+ return /* @__PURE__ */ React19.createElement(Comp, {
1554
+ ...rest,
1561
1555
  role: role ?? "none",
1562
- className: mx5(classNames, className, "col-span-full"),
1556
+ className: mx6("col-span-full", className),
1563
1557
  ref: forwardedRef
1564
1558
  }, children);
1565
1559
  });
1566
- var CardHeading = /* @__PURE__ */ forwardRef15(({ children, classNames, className, asChild, role, variant = "default", ...props }, forwardedRef) => {
1560
+ var CardHeading = /* @__PURE__ */ forwardRef18(({ children, asChild, role, variant = "default", ...props }, forwardedRef) => {
1561
+ const { className, ...rest } = composableProps7(props);
1562
+ const Comp = asChild ? Slot11 : Primitive11.div;
1567
1563
  const { tx } = useThemeContext();
1568
- const Comp = asChild ? Slot10 : Primitive10.div;
1569
- return /* @__PURE__ */ React18.createElement(Comp, {
1570
- ...props,
1564
+ return /* @__PURE__ */ React19.createElement(Comp, {
1565
+ ...rest,
1571
1566
  role: role ?? "heading",
1572
1567
  className: tx("card.heading", {
1573
1568
  variant
1574
- }, [
1575
- classNames,
1576
- className
1577
- ]),
1569
+ }, className),
1578
1570
  ref: forwardedRef
1579
1571
  }, children);
1580
1572
  });
1581
- var CardText = /* @__PURE__ */ forwardRef15(({ children, classNames, className, asChild, role, truncate, variant = "default", ...props }, forwardedRef) => {
1573
+ var CardText = /* @__PURE__ */ forwardRef18(({ children, asChild, role, truncate, variant = "default", ...props }, forwardedRef) => {
1574
+ const { className, ...rest } = composableProps7(props);
1575
+ const Comp = asChild ? Slot11 : Primitive11.div;
1582
1576
  const { tx } = useThemeContext();
1583
- const Comp = asChild ? Slot10 : Primitive10.div;
1584
- return /* @__PURE__ */ React18.createElement(Comp, {
1585
- ...props,
1577
+ return /* @__PURE__ */ React19.createElement(Comp, {
1578
+ ...rest,
1586
1579
  role: role ?? "none",
1587
1580
  className: tx("card.text", {
1588
1581
  variant
1589
- }, [
1590
- classNames,
1591
- className
1592
- ]),
1582
+ }, className),
1593
1583
  ref: forwardedRef
1594
- }, /* @__PURE__ */ React18.createElement("span", {
1584
+ }, /* @__PURE__ */ React19.createElement("span", {
1595
1585
  className: tx("card.text-span", {
1596
1586
  variant,
1597
1587
  truncate
@@ -1602,10 +1592,10 @@ var CardPoster = (props) => {
1602
1592
  const { tx } = useThemeContext();
1603
1593
  const aspect = props.aspect === "auto" ? "aspect-auto" : "aspect-video";
1604
1594
  if (props.image) {
1605
- return /* @__PURE__ */ React18.createElement("div", {
1595
+ return /* @__PURE__ */ React19.createElement("div", {
1606
1596
  role: "none",
1607
1597
  className: "col-span-full mb-1"
1608
- }, /* @__PURE__ */ React18.createElement(Image, {
1598
+ }, /* @__PURE__ */ React19.createElement(Image, {
1609
1599
  classNames: [
1610
1600
  tx("card.poster", {}),
1611
1601
  aspect,
@@ -1616,14 +1606,14 @@ var CardPoster = (props) => {
1616
1606
  }));
1617
1607
  }
1618
1608
  if (props.icon) {
1619
- return /* @__PURE__ */ React18.createElement("div", {
1609
+ return /* @__PURE__ */ React19.createElement("div", {
1620
1610
  role: "image",
1621
1611
  className: tx("card.poster-icon", {}, [
1622
1612
  aspect,
1623
1613
  props.classNames
1624
1614
  ]),
1625
1615
  "aria-label": props.alt
1626
- }, /* @__PURE__ */ React18.createElement(Icon, {
1616
+ }, /* @__PURE__ */ React19.createElement(Icon, {
1627
1617
  icon: props.icon,
1628
1618
  size: 10
1629
1619
  }));
@@ -1631,46 +1621,46 @@ var CardPoster = (props) => {
1631
1621
  };
1632
1622
  var CardAction = ({ icon, actionIcon = "ph--arrow-right--regular", label, onClick }) => {
1633
1623
  const { tx } = useThemeContext();
1634
- return /* @__PURE__ */ React18.createElement(Button, {
1624
+ return /* @__PURE__ */ React19.createElement(Button, {
1635
1625
  variant: "ghost",
1636
1626
  classNames: tx("card.action", {}),
1637
1627
  onClick
1638
- }, icon ? /* @__PURE__ */ React18.createElement(CardIcon, {
1628
+ }, icon ? /* @__PURE__ */ React19.createElement(CardIcon, {
1639
1629
  classNames: "text-subdued",
1640
1630
  icon
1641
- }) : /* @__PURE__ */ React18.createElement("div", null), /* @__PURE__ */ React18.createElement("span", {
1631
+ }) : /* @__PURE__ */ React19.createElement("div", null), /* @__PURE__ */ React19.createElement("span", {
1642
1632
  className: tx("card.action-label", {}, !actionIcon ? "col-span-2" : void 0)
1643
- }, label), actionIcon && /* @__PURE__ */ React18.createElement(CardIcon, {
1633
+ }, label), actionIcon && /* @__PURE__ */ React19.createElement(CardIcon, {
1644
1634
  icon: actionIcon
1645
1635
  }));
1646
1636
  };
1647
1637
  var CardLink = ({ label, href }) => {
1648
1638
  const { tx } = useThemeContext();
1649
- return /* @__PURE__ */ React18.createElement("a", {
1639
+ return /* @__PURE__ */ React19.createElement("a", {
1650
1640
  className: tx("card.link", {}),
1651
1641
  "data-variant": "ghost",
1652
1642
  href,
1653
1643
  target: "_blank",
1654
1644
  rel: "noreferrer"
1655
- }, /* @__PURE__ */ React18.createElement(CardIcon, {
1645
+ }, /* @__PURE__ */ React19.createElement(CardIcon, {
1656
1646
  classNames: "text-subdued",
1657
1647
  icon: "ph--link--regular"
1658
- }), /* @__PURE__ */ React18.createElement("span", {
1648
+ }), /* @__PURE__ */ React19.createElement("span", {
1659
1649
  className: tx("card.link-label", {})
1660
- }, label), /* @__PURE__ */ React18.createElement(CardIcon, {
1650
+ }, label), /* @__PURE__ */ React19.createElement(CardIcon, {
1661
1651
  classNames: "invisible group-hover:visible",
1662
1652
  icon: "ph--arrow-square-out--regular"
1663
1653
  }));
1664
1654
  };
1665
1655
  var CardIcon = ({ toolbar, ...props }) => {
1666
- return /* @__PURE__ */ React18.createElement(CardIconBlock, null, /* @__PURE__ */ React18.createElement(Icon, {
1656
+ return /* @__PURE__ */ React19.createElement(CardIconBlock, null, /* @__PURE__ */ React19.createElement(Icon, {
1667
1657
  ...props,
1668
1658
  size: toolbar ? 5 : 4
1669
1659
  }));
1670
1660
  };
1671
1661
  var CardIconBlock = ({ classNames, children, role, ...props }) => {
1672
1662
  const { tx } = useThemeContext();
1673
- return /* @__PURE__ */ React18.createElement("div", {
1663
+ return /* @__PURE__ */ React19.createElement("div", {
1674
1664
  ...props,
1675
1665
  role: role ?? "none",
1676
1666
  className: tx("card.icon-block", {}, classNames)
@@ -1682,7 +1672,7 @@ var Card = {
1682
1672
  Toolbar: CardToolbar,
1683
1673
  ToolbarIconButton: Toolbar2.IconButton,
1684
1674
  ToolbarSeparator: Toolbar2.Separator,
1685
- DragHandle: /* @__PURE__ */ forwardRef15((props, ref) => /* @__PURE__ */ React18.createElement(Toolbar2.DragHandle, {
1675
+ DragHandle: /* @__PURE__ */ forwardRef18((props, ref) => /* @__PURE__ */ React19.createElement(Toolbar2.DragHandle, {
1686
1676
  testId: "card-drag-handle",
1687
1677
  ...props,
1688
1678
  ref
@@ -1704,7 +1694,7 @@ var Card = {
1704
1694
  };
1705
1695
 
1706
1696
  // src/components/Clipboard/ClipboardProvider.tsx
1707
- import React19, { createContext as createContext4, useCallback as useCallback5, useContext as useContext4, useState as useState4 } from "react";
1697
+ import React20, { createContext as createContext4, useCallback as useCallback5, useContext as useContext4, useState as useState4 } from "react";
1708
1698
  var ClipboardContext = /* @__PURE__ */ createContext4({
1709
1699
  textValue: "",
1710
1700
  setTextValue: async (_) => {
@@ -1717,7 +1707,7 @@ var ClipboardProvider = ({ children }) => {
1717
1707
  await navigator.clipboard.writeText(nextValue);
1718
1708
  return setInternalTextValue(nextValue);
1719
1709
  }, []);
1720
- return /* @__PURE__ */ React19.createElement(ClipboardContext.Provider, {
1710
+ return /* @__PURE__ */ React20.createElement(ClipboardContext.Provider, {
1721
1711
  value: {
1722
1712
  textValue,
1723
1713
  setTextValue
@@ -1726,14 +1716,14 @@ var ClipboardProvider = ({ children }) => {
1726
1716
  };
1727
1717
 
1728
1718
  // src/components/Clipboard/CopyButton.tsx
1729
- import React20 from "react";
1730
- import { mx as mx6, osTranslations } from "@dxos/ui-theme";
1719
+ import React21 from "react";
1720
+ import { mx as mx7, osTranslations } from "@dxos/ui-theme";
1731
1721
  var inactiveLabelStyles = "invisible h-px -mb-px overflow-hidden";
1732
1722
  var CopyButton = ({ classNames, value, size = 5, ...props }) => {
1733
1723
  const { t } = useTranslation(osTranslations);
1734
1724
  const { textValue, setTextValue } = useClipboard();
1735
1725
  const isCopied = textValue === value;
1736
- return /* @__PURE__ */ React20.createElement(Button, {
1726
+ return /* @__PURE__ */ React21.createElement(Button, {
1737
1727
  ...props,
1738
1728
  classNames: [
1739
1729
  "inline-flex flex-col justify-center",
@@ -1741,20 +1731,20 @@ var CopyButton = ({ classNames, value, size = 5, ...props }) => {
1741
1731
  ],
1742
1732
  onClick: () => setTextValue(value),
1743
1733
  "data-testid": "copy-invitation"
1744
- }, /* @__PURE__ */ React20.createElement("div", {
1734
+ }, /* @__PURE__ */ React21.createElement("div", {
1745
1735
  role: "none",
1746
- className: mx6("flex gap-1 items-center", isCopied && inactiveLabelStyles)
1747
- }, /* @__PURE__ */ React20.createElement("span", {
1736
+ className: mx7("flex gap-1 items-center", isCopied && inactiveLabelStyles)
1737
+ }, /* @__PURE__ */ React21.createElement("span", {
1748
1738
  className: "px-1"
1749
- }, t("copy label")), /* @__PURE__ */ React20.createElement(Icon, {
1739
+ }, t("copy label")), /* @__PURE__ */ React21.createElement(Icon, {
1750
1740
  icon: "ph--copy--regular",
1751
1741
  size
1752
- })), /* @__PURE__ */ React20.createElement("div", {
1742
+ })), /* @__PURE__ */ React21.createElement("div", {
1753
1743
  role: "none",
1754
- className: mx6("flex gap-1 items-center", !isCopied && inactiveLabelStyles)
1755
- }, /* @__PURE__ */ React20.createElement("span", {
1744
+ className: mx7("flex gap-1 items-center", !isCopied && inactiveLabelStyles)
1745
+ }, /* @__PURE__ */ React21.createElement("span", {
1756
1746
  className: "px-1"
1757
- }, t("copy success label")), /* @__PURE__ */ React20.createElement(Icon, {
1747
+ }, t("copy success label")), /* @__PURE__ */ React21.createElement(Icon, {
1758
1748
  icon: "ph--check--regular",
1759
1749
  size
1760
1750
  })));
@@ -1765,7 +1755,7 @@ var CopyButtonIconOnly = ({ __scopeTooltip, value, classNames, size, variant, ..
1765
1755
  const isCopied = textValue === value;
1766
1756
  const label = isCopied ? t("copy success label") : props.label ?? t("copy label");
1767
1757
  const { onOpen } = useTooltipContext("CopyButton", __scopeTooltip);
1768
- return /* @__PURE__ */ React20.createElement(IconButton, {
1758
+ return /* @__PURE__ */ React21.createElement(IconButton, {
1769
1759
  iconOnly: true,
1770
1760
  label,
1771
1761
  icon: "ph--copy--regular",
@@ -1790,33 +1780,33 @@ var Clipboard = {
1790
1780
  // src/components/Dialog/Dialog.tsx
1791
1781
  import { createContext as createContext5 } from "@radix-ui/react-context";
1792
1782
  import { DialogClose as DialogClosePrimitive, DialogContent as DialogContentPrimitive, DialogDescription as DialogDescriptionPrimitive, DialogOverlay as DialogOverlayPrimitive, DialogPortal as DialogPortalPrimitive, Root as DialogRootPrimitive, DialogTitle as DialogTitlePrimitive, DialogTrigger as DialogTriggerPrimitive } from "@radix-ui/react-dialog";
1793
- import React21, { forwardRef as forwardRef16 } from "react";
1783
+ import React22, { forwardRef as forwardRef19 } from "react";
1794
1784
  import { useTranslation as useTranslation3 } from "react-i18next";
1795
1785
  import { osTranslations as osTranslations2 } from "@dxos/ui-theme";
1796
- var DialogRoot = (props) => /* @__PURE__ */ React21.createElement(ElevationProvider, {
1786
+ var DialogRoot = (props) => /* @__PURE__ */ React22.createElement(ElevationProvider, {
1797
1787
  elevation: "dialog"
1798
- }, /* @__PURE__ */ React21.createElement(DialogRootPrimitive, props));
1788
+ }, /* @__PURE__ */ React22.createElement(DialogRootPrimitive, props));
1799
1789
  var DialogTrigger = DialogTriggerPrimitive;
1800
1790
  var DialogPortal = DialogPortalPrimitive;
1801
1791
  var DIALOG_OVERLAY_NAME = "DialogOverlay";
1802
1792
  var [OverlayLayoutProvider, useOverlayLayoutContext] = createContext5(DIALOG_OVERLAY_NAME, {});
1803
- var DialogOverlay = /* @__PURE__ */ forwardRef16(({ classNames, children, blockAlign, ...props }, forwardedRef) => {
1793
+ var DialogOverlay = /* @__PURE__ */ forwardRef19(({ classNames, children, blockAlign, ...props }, forwardedRef) => {
1804
1794
  const { tx } = useThemeContext();
1805
- return /* @__PURE__ */ React21.createElement(DialogOverlayPrimitive, {
1795
+ return /* @__PURE__ */ React22.createElement(DialogOverlayPrimitive, {
1806
1796
  ...props,
1807
1797
  "data-block-align": blockAlign,
1808
1798
  className: tx("dialog.overlay", {}, classNames),
1809
1799
  ref: forwardedRef
1810
- }, /* @__PURE__ */ React21.createElement(OverlayLayoutProvider, {
1800
+ }, /* @__PURE__ */ React22.createElement(OverlayLayoutProvider, {
1811
1801
  inOverlayLayout: true
1812
1802
  }, children));
1813
1803
  });
1814
1804
  DialogOverlay.displayName = DIALOG_OVERLAY_NAME;
1815
1805
  var DIALOG_CONTENT_NAME = "DialogContent";
1816
- var DialogContent = /* @__PURE__ */ forwardRef16(({ classNames, children, size = "md", inOverlayLayout: propsInOverlayLayout, ...props }, forwardedRef) => {
1806
+ var DialogContent = /* @__PURE__ */ forwardRef19(({ classNames, children, size = "md", inOverlayLayout: propsInOverlayLayout, ...props }, forwardedRef) => {
1817
1807
  const { tx } = useThemeContext();
1818
1808
  const { inOverlayLayout } = useOverlayLayoutContext(DIALOG_CONTENT_NAME);
1819
- return /* @__PURE__ */ React21.createElement(DialogContentPrimitive, {
1809
+ return /* @__PURE__ */ React22.createElement(DialogContentPrimitive, {
1820
1810
  ...props,
1821
1811
  // NOTE: Radix warning unless set to undefined.
1822
1812
  // https://www.radix-ui.com/primitives/docs/components/dialog#description
@@ -1826,14 +1816,14 @@ var DialogContent = /* @__PURE__ */ forwardRef16(({ classNames, children, size =
1826
1816
  size
1827
1817
  }, classNames),
1828
1818
  ref: forwardedRef
1829
- }, /* @__PURE__ */ React21.createElement(Column.Root, null, children));
1819
+ }, /* @__PURE__ */ React22.createElement(Column.Root, null, children));
1830
1820
  });
1831
1821
  DialogContent.displayName = DIALOG_CONTENT_NAME;
1832
- var DialogHeader = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...props }, forwardedRef) => {
1822
+ var DialogHeader = /* @__PURE__ */ forwardRef19(({ classNames, srOnly, ...props }, forwardedRef) => {
1833
1823
  const { tx } = useThemeContext();
1834
- return /* @__PURE__ */ React21.createElement(Column.Segment, {
1824
+ return /* @__PURE__ */ React22.createElement(Column.Segment, {
1835
1825
  asChild: true
1836
- }, /* @__PURE__ */ React21.createElement("div", {
1826
+ }, /* @__PURE__ */ React22.createElement("div", {
1837
1827
  role: "heading",
1838
1828
  ...props,
1839
1829
  className: tx("dialog.header", {
@@ -1844,9 +1834,9 @@ var DialogHeader = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...props
1844
1834
  ref: forwardedRef
1845
1835
  }));
1846
1836
  });
1847
- var DialogCloseIconButton = /* @__PURE__ */ forwardRef16(({ label, ...props }, forwardedRef) => {
1837
+ var DialogCloseIconButton = /* @__PURE__ */ forwardRef19(({ label, ...props }, forwardedRef) => {
1848
1838
  const { t } = useTranslation3(osTranslations2);
1849
- return /* @__PURE__ */ React21.createElement(IconButton, {
1839
+ return /* @__PURE__ */ React22.createElement(IconButton, {
1850
1840
  ...props,
1851
1841
  label: label ?? t("close dialog label"),
1852
1842
  icon: "ph--x--regular",
@@ -1857,20 +1847,20 @@ var DialogCloseIconButton = /* @__PURE__ */ forwardRef16(({ label, ...props }, f
1857
1847
  ref: forwardedRef
1858
1848
  });
1859
1849
  });
1860
- var DialogBody = /* @__PURE__ */ forwardRef16(({ children, ...props }, forwardedRef) => {
1850
+ var DialogBody = /* @__PURE__ */ forwardRef19(({ children, ...props }, forwardedRef) => {
1861
1851
  const { tx } = useThemeContext();
1862
- return /* @__PURE__ */ React21.createElement(Column.Segment, {
1852
+ return /* @__PURE__ */ React22.createElement(Column.Segment, {
1863
1853
  asChild: true
1864
- }, /* @__PURE__ */ React21.createElement("div", {
1854
+ }, /* @__PURE__ */ React22.createElement("div", {
1865
1855
  role: "none",
1866
1856
  ...props,
1867
1857
  className: tx("dialog.body"),
1868
1858
  ref: forwardedRef
1869
1859
  }, children));
1870
1860
  });
1871
- var DialogTitle = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...props }, forwardedRef) => {
1861
+ var DialogTitle = /* @__PURE__ */ forwardRef19(({ classNames, srOnly, ...props }, forwardedRef) => {
1872
1862
  const { tx } = useThemeContext();
1873
- return /* @__PURE__ */ React21.createElement(DialogTitlePrimitive, {
1863
+ return /* @__PURE__ */ React22.createElement(DialogTitlePrimitive, {
1874
1864
  ...props,
1875
1865
  className: tx("dialog.title", {
1876
1866
  srOnly
@@ -1878,9 +1868,9 @@ var DialogTitle = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...props }
1878
1868
  ref: forwardedRef
1879
1869
  });
1880
1870
  });
1881
- var DialogDescription = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...props }, forwardedRef) => {
1871
+ var DialogDescription = /* @__PURE__ */ forwardRef19(({ classNames, srOnly, ...props }, forwardedRef) => {
1882
1872
  const { tx } = useThemeContext();
1883
- return /* @__PURE__ */ React21.createElement(DialogDescriptionPrimitive, {
1873
+ return /* @__PURE__ */ React22.createElement(DialogDescriptionPrimitive, {
1884
1874
  ...props,
1885
1875
  className: tx("dialog.description", {
1886
1876
  srOnly
@@ -1888,11 +1878,11 @@ var DialogDescription = /* @__PURE__ */ forwardRef16(({ classNames, srOnly, ...p
1888
1878
  ref: forwardedRef
1889
1879
  });
1890
1880
  });
1891
- var DialogActionBar = /* @__PURE__ */ forwardRef16(({ children, classNames, ...props }, forwardedRef) => {
1881
+ var DialogActionBar = /* @__PURE__ */ forwardRef19(({ children, classNames, ...props }, forwardedRef) => {
1892
1882
  const { tx } = useThemeContext();
1893
- return /* @__PURE__ */ React21.createElement(Column.Segment, {
1883
+ return /* @__PURE__ */ React22.createElement(Column.Segment, {
1894
1884
  asChild: true
1895
- }, /* @__PURE__ */ React21.createElement("div", {
1885
+ }, /* @__PURE__ */ React22.createElement("div", {
1896
1886
  ...props,
1897
1887
  className: tx("dialog.actionbar", {}, classNames),
1898
1888
  ref: forwardedRef
@@ -1917,17 +1907,17 @@ var Dialog = {
1917
1907
  // src/components/Dialog/AlertDialog.tsx
1918
1908
  import { AlertDialogAction as AlertDialogActionPrimitive, AlertDialogCancel as AlertDialogCancelPrimitive, AlertDialogContent as AlertDialogContentPrimitive, AlertDialogDescription as AlertDialogDescriptionPrimitive, AlertDialogOverlay as AlertDialogOverlayPrimitive, AlertDialogPortal as AlertDialogPortalPrimitive, Root as AlertDialogRootPrimitive, AlertDialogTitle as AlertDialogTitlePrimitive, AlertDialogTrigger as AlertDialogTriggerPrimitive } from "@radix-ui/react-alert-dialog";
1919
1909
  import { createContext as createContext6 } from "@radix-ui/react-context";
1920
- import React22, { forwardRef as forwardRef17 } from "react";
1921
- var AlertDialogRoot = (props) => /* @__PURE__ */ React22.createElement(ElevationProvider, {
1910
+ import React23, { forwardRef as forwardRef20 } from "react";
1911
+ var AlertDialogRoot = (props) => /* @__PURE__ */ React23.createElement(ElevationProvider, {
1922
1912
  elevation: "dialog"
1923
- }, /* @__PURE__ */ React22.createElement(AlertDialogRootPrimitive, props));
1913
+ }, /* @__PURE__ */ React23.createElement(AlertDialogRootPrimitive, props));
1924
1914
  var AlertDialogTrigger = AlertDialogTriggerPrimitive;
1925
1915
  var AlertDialogPortal = AlertDialogPortalPrimitive;
1926
1916
  var AlertDialogCancel = AlertDialogCancelPrimitive;
1927
1917
  var AlertDialogAction = AlertDialogActionPrimitive;
1928
- var AlertDialogTitle = /* @__PURE__ */ forwardRef17(({ classNames, srOnly, ...props }, forwardedRef) => {
1918
+ var AlertDialogTitle = /* @__PURE__ */ forwardRef20(({ classNames, srOnly, ...props }, forwardedRef) => {
1929
1919
  const { tx } = useThemeContext();
1930
- return /* @__PURE__ */ React22.createElement(AlertDialogTitlePrimitive, {
1920
+ return /* @__PURE__ */ React23.createElement(AlertDialogTitlePrimitive, {
1931
1921
  ...props,
1932
1922
  className: tx("dialog.title", {
1933
1923
  srOnly
@@ -1935,9 +1925,9 @@ var AlertDialogTitle = /* @__PURE__ */ forwardRef17(({ classNames, srOnly, ...pr
1935
1925
  ref: forwardedRef
1936
1926
  });
1937
1927
  });
1938
- var AlertDialogDescription = /* @__PURE__ */ forwardRef17(({ classNames, srOnly, ...props }, forwardedRef) => {
1928
+ var AlertDialogDescription = /* @__PURE__ */ forwardRef20(({ classNames, srOnly, ...props }, forwardedRef) => {
1939
1929
  const { tx } = useThemeContext();
1940
- return /* @__PURE__ */ React22.createElement(AlertDialogDescriptionPrimitive, {
1930
+ return /* @__PURE__ */ React23.createElement(AlertDialogDescriptionPrimitive, {
1941
1931
  ...props,
1942
1932
  className: tx("dialog.description", {
1943
1933
  srOnly
@@ -1952,9 +1942,9 @@ var ALERT_DIALOG_ACTIONBAR_NAME = "AlertDialogActionBar";
1952
1942
  var [OverlayLayoutProvider2, useOverlayLayoutContext2] = createContext6(ALERT_DIALOG_OVERLAY_NAME, {
1953
1943
  inOverlayLayout: false
1954
1944
  });
1955
- var AlertDialogOverlay = /* @__PURE__ */ forwardRef17(({ classNames, children, blockAlign, ...props }, forwardedRef) => {
1945
+ var AlertDialogOverlay = /* @__PURE__ */ forwardRef20(({ classNames, children, blockAlign, ...props }, forwardedRef) => {
1956
1946
  const { tx } = useThemeContext();
1957
- return /* @__PURE__ */ React22.createElement(AlertDialogOverlayPrimitive, {
1947
+ return /* @__PURE__ */ React23.createElement(AlertDialogOverlayPrimitive, {
1958
1948
  ...props,
1959
1949
  "data-block-align": blockAlign,
1960
1950
  className: tx(
@@ -1967,29 +1957,29 @@ var AlertDialogOverlay = /* @__PURE__ */ forwardRef17(({ classNames, children, b
1967
1957
  "data-[h-align=center]:place-content-center"
1968
1958
  ),
1969
1959
  ref: forwardedRef
1970
- }, /* @__PURE__ */ React22.createElement(OverlayLayoutProvider2, {
1960
+ }, /* @__PURE__ */ React23.createElement(OverlayLayoutProvider2, {
1971
1961
  inOverlayLayout: true
1972
1962
  }, children));
1973
1963
  });
1974
1964
  AlertDialogOverlay.displayName = ALERT_DIALOG_OVERLAY_NAME;
1975
- var AlertDialogContent = /* @__PURE__ */ forwardRef17(({ classNames, children, size = "md", ...props }, forwardedRef) => {
1965
+ var AlertDialogContent = /* @__PURE__ */ forwardRef20(({ classNames, children, size = "md", ...props }, forwardedRef) => {
1976
1966
  const { tx } = useThemeContext();
1977
1967
  const { inOverlayLayout } = useOverlayLayoutContext2(ALERT_DIALOG_CONTENT_NAME);
1978
- return /* @__PURE__ */ React22.createElement(AlertDialogContentPrimitive, {
1968
+ return /* @__PURE__ */ React23.createElement(AlertDialogContentPrimitive, {
1979
1969
  ...props,
1980
1970
  className: tx("dialog.content", {
1981
1971
  inOverlayLayout,
1982
1972
  size
1983
1973
  }, classNames),
1984
1974
  ref: forwardedRef
1985
- }, /* @__PURE__ */ React22.createElement(Column.Root, null, children));
1975
+ }, /* @__PURE__ */ React23.createElement(Column.Root, null, children));
1986
1976
  });
1987
1977
  AlertDialogContent.displayName = ALERT_DIALOG_CONTENT_NAME;
1988
- var AlertDialogBody = /* @__PURE__ */ forwardRef17(({ children, ...props }, forwardedRef) => {
1978
+ var AlertDialogBody = /* @__PURE__ */ forwardRef20(({ children, ...props }, forwardedRef) => {
1989
1979
  const { tx } = useThemeContext();
1990
- return /* @__PURE__ */ React22.createElement(Column.Segment, {
1980
+ return /* @__PURE__ */ React23.createElement(Column.Segment, {
1991
1981
  asChild: true
1992
- }, /* @__PURE__ */ React22.createElement("div", {
1982
+ }, /* @__PURE__ */ React23.createElement("div", {
1993
1983
  role: "none",
1994
1984
  ...props,
1995
1985
  className: tx("dialog.body"),
@@ -1997,11 +1987,11 @@ var AlertDialogBody = /* @__PURE__ */ forwardRef17(({ children, ...props }, forw
1997
1987
  }, children));
1998
1988
  });
1999
1989
  AlertDialogBody.displayName = ALERT_DIALOG_BODY_NAME;
2000
- var AlertDialogActionBar = /* @__PURE__ */ forwardRef17(({ children, classNames, ...props }, forwardedRef) => {
1990
+ var AlertDialogActionBar = /* @__PURE__ */ forwardRef20(({ children, classNames, ...props }, forwardedRef) => {
2001
1991
  const { tx } = useThemeContext();
2002
- return /* @__PURE__ */ React22.createElement(Column.Segment, {
1992
+ return /* @__PURE__ */ React23.createElement(Column.Segment, {
2003
1993
  asChild: true
2004
- }, /* @__PURE__ */ React22.createElement("div", {
1994
+ }, /* @__PURE__ */ React23.createElement("div", {
2005
1995
  ...props,
2006
1996
  className: tx("dialog.actionbar", {}, classNames),
2007
1997
  ref: forwardedRef
@@ -2026,38 +2016,38 @@ var AlertDialog = {
2026
2016
  import { ErrorBoundary } from "@dxos/react-error-boundary";
2027
2017
 
2028
2018
  // src/components/ErrorFallback/ErrorFallback.tsx
2029
- import React24 from "react";
2019
+ import React25 from "react";
2030
2020
  import { safeStringify } from "@dxos/util";
2031
2021
 
2032
2022
  // src/components/ErrorFallback/ErrorStack.tsx
2033
2023
  import ErrorStackParser from "error-stack-parser";
2034
- import React23 from "react";
2035
- import { mx as mx7 } from "@dxos/ui-theme";
2024
+ import React24 from "react";
2025
+ import { mx as mx8 } from "@dxos/ui-theme";
2036
2026
  var ErrorStack = ({ error }) => {
2037
2027
  const frames = ErrorStackParser.parse(error);
2038
- return /* @__PURE__ */ React23.createElement("div", {
2028
+ return /* @__PURE__ */ React24.createElement("div", {
2039
2029
  className: "font-mono text-sm"
2040
2030
  }, frames.map((frame, i) => {
2041
2031
  const isLast = i === frames.length - 1;
2042
2032
  const local = frame.fileName ? parseLocalFrame(frame.fileName, frame.lineNumber, frame.columnNumber) : void 0;
2043
2033
  const name = frame.functionName ?? "<anonymous>";
2044
- return /* @__PURE__ */ React23.createElement("div", {
2034
+ return /* @__PURE__ */ React24.createElement("div", {
2045
2035
  key: i,
2046
- className: mx7("grid grid-cols-[16px_1fr_auto_auto] items-stretch gap-x-2", local && "cursor-pointer hover:bg-hover-surface")
2047
- }, /* @__PURE__ */ React23.createElement("div", {
2036
+ className: mx8("grid grid-cols-[16px_1fr_auto_auto] items-stretch gap-x-2", local && "cursor-pointer hover:bg-hover-surface")
2037
+ }, /* @__PURE__ */ React24.createElement("div", {
2048
2038
  className: "relative"
2049
- }, /* @__PURE__ */ React23.createElement("div", {
2050
- className: mx7("absolute left-1/2 -translate-x-1/2 w-px bg-neutral-500", isLast ? "top-0 h-1/2" : "inset-y-0")
2051
- }), /* @__PURE__ */ React23.createElement("div", {
2039
+ }, /* @__PURE__ */ React24.createElement("div", {
2040
+ className: mx8("absolute left-1/2 -translate-x-1/2 w-px bg-neutral-500", isLast ? "top-0 h-1/2" : "inset-y-0")
2041
+ }), /* @__PURE__ */ React24.createElement("div", {
2052
2042
  className: "absolute top-1/2 -translate-y-1/2 left-1/2 right-0 h-px bg-neutral-500"
2053
- })), local ? /* @__PURE__ */ React23.createElement("a", {
2043
+ })), local ? /* @__PURE__ */ React24.createElement("a", {
2054
2044
  href: local.href,
2055
2045
  className: "truncate self-center"
2056
- }, name) : /* @__PURE__ */ React23.createElement("span", {
2046
+ }, name) : /* @__PURE__ */ React24.createElement("span", {
2057
2047
  className: "text-subdued truncate self-center"
2058
- }, name), /* @__PURE__ */ React23.createElement("span", {
2048
+ }, name), /* @__PURE__ */ React24.createElement("span", {
2059
2049
  className: "text-xs text-subdued truncate self-center"
2060
- }, local?.fileName ?? ""), /* @__PURE__ */ React23.createElement("span", {
2050
+ }, local?.fileName ?? ""), /* @__PURE__ */ React24.createElement("span", {
2061
2051
  className: "text-xs text-subdued text-right self-center"
2062
2052
  }, local ? `${frame.lineNumber}:${frame.columnNumber}` : ""));
2063
2053
  }));
@@ -2082,38 +2072,38 @@ var parseLocalFrame = (fileUrl, line, col) => {
2082
2072
  var ErrorFallback = ({ children, error, title, data }) => {
2083
2073
  const isDev = process.env.NODE_ENV === "development";
2084
2074
  const message = error instanceof Error ? error.message : String(error);
2085
- return /* @__PURE__ */ React24.createElement("div", {
2075
+ return /* @__PURE__ */ React25.createElement("div", {
2086
2076
  role: "alert",
2087
2077
  "data-testid": "error-boundary-fallback",
2088
2078
  className: "flex flex-col p-4 gap-4 overflow-auto"
2089
- }, /* @__PURE__ */ React24.createElement("h1", {
2079
+ }, /* @__PURE__ */ React25.createElement("h1", {
2090
2080
  className: "text-lg text-info-text"
2091
- }, title ?? "Runtime Error"), /* @__PURE__ */ React24.createElement("p", null, message), isDev && error instanceof Error && /* @__PURE__ */ React24.createElement(Section, {
2081
+ }, title ?? "Runtime Error"), /* @__PURE__ */ React25.createElement("p", null, message), isDev && error instanceof Error && /* @__PURE__ */ React25.createElement(Section, {
2092
2082
  title: "Stack",
2093
2083
  onClick: () => {
2094
2084
  const text = error instanceof Error ? error.stack ?? error.message : String(error);
2095
2085
  void navigator.clipboard.writeText(text);
2096
2086
  }
2097
- }, /* @__PURE__ */ React24.createElement(ErrorStack, {
2087
+ }, /* @__PURE__ */ React25.createElement(ErrorStack, {
2098
2088
  error
2099
- })), data && /* @__PURE__ */ React24.createElement(Section, {
2089
+ })), data && /* @__PURE__ */ React25.createElement(Section, {
2100
2090
  title: "Data",
2101
2091
  onClick: () => {
2102
2092
  void navigator.clipboard.writeText(JSON.stringify(data, void 0, 2));
2103
2093
  }
2104
- }, /* @__PURE__ */ React24.createElement("pre", {
2094
+ }, /* @__PURE__ */ React25.createElement("pre", {
2105
2095
  className: "overflow-x-auto text-xs"
2106
2096
  }, safeStringify(data, void 0, 2))), children);
2107
2097
  };
2108
2098
  var Section = ({ children, title, onClick }) => {
2109
- return /* @__PURE__ */ React24.createElement("div", {
2099
+ return /* @__PURE__ */ React25.createElement("div", {
2110
2100
  className: "flex flex-col gap-1"
2111
- }, onClick && /* @__PURE__ */ React24.createElement("button", {
2101
+ }, onClick && /* @__PURE__ */ React25.createElement("button", {
2112
2102
  type: "button",
2113
2103
  onClick,
2114
2104
  className: "flex items-center gap-1 text-xs text-subdued hover:text-primary-500 transition-colors",
2115
2105
  title: `Copy ${title}`
2116
- }, /* @__PURE__ */ React24.createElement("h2", {
2106
+ }, /* @__PURE__ */ React25.createElement("h2", {
2117
2107
  className: "text-xs uppercase text-subdued"
2118
2108
  }, title)), children);
2119
2109
  };
@@ -2149,12 +2139,12 @@ var generator = ({ error, delay }) => {
2149
2139
  // src/components/Input/Input.tsx
2150
2140
  import { Root as CheckboxPrimitive } from "@radix-ui/react-checkbox";
2151
2141
  import { useControllableState as useControllableState2 } from "@radix-ui/react-use-controllable-state";
2152
- import React25, { forwardRef as forwardRef18 } from "react";
2142
+ import React26, { forwardRef as forwardRef21 } from "react";
2153
2143
  import { DescriptionAndValidation as DescriptionAndValidationPrimitive, Description as DescriptionPrimitive, INPUT_NAME, InputRoot, Label as LabelPrimitive, PinInput as PinInputPrimitive, TextArea as TextAreaPrimitive, TextInput as TextInputPrimitive, Validation as ValidationPrimitive, useInputContext } from "@dxos/react-input";
2154
- import { mx as mx8 } from "@dxos/ui-theme";
2155
- var Label3 = /* @__PURE__ */ forwardRef18(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2144
+ import { mx as mx9 } from "@dxos/ui-theme";
2145
+ var Label3 = /* @__PURE__ */ forwardRef21(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2156
2146
  const { tx } = useThemeContext();
2157
- return /* @__PURE__ */ React25.createElement(LabelPrimitive, {
2147
+ return /* @__PURE__ */ React26.createElement(LabelPrimitive, {
2158
2148
  ...props,
2159
2149
  className: tx("input.label", {
2160
2150
  srOnly
@@ -2162,9 +2152,9 @@ var Label3 = /* @__PURE__ */ forwardRef18(({ classNames, children, srOnly, ...pr
2162
2152
  ref: forwardedRef
2163
2153
  }, children);
2164
2154
  });
2165
- var Description = /* @__PURE__ */ forwardRef18(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2155
+ var Description = /* @__PURE__ */ forwardRef21(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2166
2156
  const { tx } = useThemeContext();
2167
- return /* @__PURE__ */ React25.createElement(DescriptionPrimitive, {
2157
+ return /* @__PURE__ */ React26.createElement(DescriptionPrimitive, {
2168
2158
  ...props,
2169
2159
  className: tx("input.description", {
2170
2160
  srOnly
@@ -2172,10 +2162,10 @@ var Description = /* @__PURE__ */ forwardRef18(({ classNames, children, srOnly,
2172
2162
  ref: forwardedRef
2173
2163
  }, children);
2174
2164
  });
2175
- var Validation = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, children, srOnly, ...props }, forwardedRef) => {
2165
+ var Validation = /* @__PURE__ */ forwardRef21(({ __inputScope, classNames, children, srOnly, ...props }, forwardedRef) => {
2176
2166
  const { tx } = useThemeContext();
2177
2167
  const { validationValence } = useInputContext(INPUT_NAME, __inputScope);
2178
- return /* @__PURE__ */ React25.createElement(ValidationPrimitive, {
2168
+ return /* @__PURE__ */ React26.createElement(ValidationPrimitive, {
2179
2169
  ...props,
2180
2170
  className: tx("input.validation", {
2181
2171
  srOnly,
@@ -2184,9 +2174,9 @@ var Validation = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, child
2184
2174
  ref: forwardedRef
2185
2175
  }, children);
2186
2176
  });
2187
- var DescriptionAndValidation = /* @__PURE__ */ forwardRef18(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2177
+ var DescriptionAndValidation = /* @__PURE__ */ forwardRef21(({ classNames, children, srOnly, ...props }, forwardedRef) => {
2188
2178
  const { tx } = useThemeContext();
2189
- return /* @__PURE__ */ React25.createElement(DescriptionAndValidationPrimitive, {
2179
+ return /* @__PURE__ */ React26.createElement(DescriptionAndValidationPrimitive, {
2190
2180
  ...props,
2191
2181
  className: tx("input.descriptionAndValidation", {
2192
2182
  srOnly
@@ -2194,12 +2184,12 @@ var DescriptionAndValidation = /* @__PURE__ */ forwardRef18(({ classNames, child
2194
2184
  ref: forwardedRef
2195
2185
  }, children);
2196
2186
  });
2197
- var PinInput = /* @__PURE__ */ forwardRef18(({ classNames, density: propsDensity, elevation: propsElevation, ...props }, forwardedRef) => {
2187
+ var PinInput = /* @__PURE__ */ forwardRef21(({ classNames, density: propsDensity, elevation: propsElevation, ...props }, forwardedRef) => {
2198
2188
  const { hasIosKeyboard: hasIosKeyboard2 } = useThemeContext();
2199
2189
  const { tx } = useThemeContext();
2200
2190
  const density = useDensityContext(propsDensity);
2201
2191
  const elevation = useElevationContext(propsElevation);
2202
- return /* @__PURE__ */ React25.createElement(PinInputPrimitive, {
2192
+ return /* @__PURE__ */ React26.createElement(PinInputPrimitive, {
2203
2193
  ...props,
2204
2194
  ...props.autoFocus && !hasIosKeyboard2 && {
2205
2195
  autoFocus: true
@@ -2215,13 +2205,13 @@ var PinInput = /* @__PURE__ */ forwardRef18(({ classNames, density: propsDensity
2215
2205
  ref: forwardedRef
2216
2206
  });
2217
2207
  });
2218
- var TextInput = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, noAutoFill, ...props }, forwardedRef) => {
2208
+ var TextInput = /* @__PURE__ */ forwardRef21(({ __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, noAutoFill, ...props }, forwardedRef) => {
2219
2209
  const { hasIosKeyboard: hasIosKeyboard2 } = useThemeContext();
2220
2210
  const { tx } = useThemeContext();
2221
2211
  const density = useDensityContext(propsDensity);
2222
2212
  const elevation = useElevationContext(propsElevation);
2223
2213
  const { validationValence } = useInputContext(INPUT_NAME, __inputScope);
2224
- return /* @__PURE__ */ React25.createElement(TextInputPrimitive, {
2214
+ return /* @__PURE__ */ React26.createElement(TextInputPrimitive, {
2225
2215
  ...props,
2226
2216
  "data-1p-ignore": noAutoFill,
2227
2217
  className: tx("input.input", {
@@ -2237,13 +2227,13 @@ var TextInput = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, densit
2237
2227
  ref: forwardedRef
2238
2228
  });
2239
2229
  });
2240
- var TextArea = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, ...props }, forwardedRef) => {
2230
+ var TextArea = /* @__PURE__ */ forwardRef21(({ __inputScope, classNames, density: propsDensity, elevation: propsElevation, variant, ...props }, forwardedRef) => {
2241
2231
  const { hasIosKeyboard: hasIosKeyboard2 } = useThemeContext();
2242
2232
  const { tx } = useThemeContext();
2243
2233
  const density = useDensityContext(propsDensity);
2244
2234
  const elevation = useElevationContext(propsElevation);
2245
2235
  const { validationValence } = useInputContext(INPUT_NAME, __inputScope);
2246
- return /* @__PURE__ */ React25.createElement(TextAreaPrimitive, {
2236
+ return /* @__PURE__ */ React26.createElement(TextAreaPrimitive, {
2247
2237
  ...props,
2248
2238
  className: tx("input.textArea", {
2249
2239
  variant,
@@ -2258,7 +2248,7 @@ var TextArea = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, density
2258
2248
  ref: forwardedRef
2259
2249
  });
2260
2250
  });
2261
- var Checkbox = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, checked: propsChecked, defaultChecked: propsDefaultChecked, onCheckedChange: propsOnCheckedChange, size, ...props }, forwardedRef) => {
2251
+ var Checkbox = /* @__PURE__ */ forwardRef21(({ __inputScope, classNames, checked: propsChecked, defaultChecked: propsDefaultChecked, onCheckedChange: propsOnCheckedChange, size, ...props }, forwardedRef) => {
2262
2252
  const [checked, onCheckedChange] = useControllableState2({
2263
2253
  prop: propsChecked,
2264
2254
  defaultProp: propsDefaultChecked,
@@ -2266,7 +2256,7 @@ var Checkbox = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, checked
2266
2256
  });
2267
2257
  const { id, validationValence, descriptionId, errorMessageId } = useInputContext(INPUT_NAME, __inputScope);
2268
2258
  const { tx } = useThemeContext();
2269
- return /* @__PURE__ */ React25.createElement(CheckboxPrimitive, {
2259
+ return /* @__PURE__ */ React26.createElement(CheckboxPrimitive, {
2270
2260
  ...props,
2271
2261
  checked,
2272
2262
  onCheckedChange,
@@ -2280,7 +2270,7 @@ var Checkbox = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, checked
2280
2270
  size
2281
2271
  }, "shrink-0", classNames),
2282
2272
  ref: forwardedRef
2283
- }, /* @__PURE__ */ React25.createElement(Icon, {
2273
+ }, /* @__PURE__ */ React26.createElement(Icon, {
2284
2274
  icon: checked === "indeterminate" ? "ph--minus--regular" : "ph--check--regular",
2285
2275
  classNames: tx("input.checkboxIndicator", {
2286
2276
  size,
@@ -2288,16 +2278,16 @@ var Checkbox = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, checked
2288
2278
  })
2289
2279
  }));
2290
2280
  });
2291
- var Switch = /* @__PURE__ */ forwardRef18(({ __inputScope, classNames, checked: propsChecked, defaultChecked: propsDefaultChecked, onCheckedChange: propsOnCheckedChange, ...props }, forwardedRef) => {
2281
+ var Switch = /* @__PURE__ */ forwardRef21(({ __inputScope, classNames, checked: propsChecked, defaultChecked: propsDefaultChecked, onCheckedChange: propsOnCheckedChange, ...props }, forwardedRef) => {
2292
2282
  const [checked, onCheckedChange] = useControllableState2({
2293
2283
  prop: propsChecked,
2294
2284
  defaultProp: propsDefaultChecked ?? false,
2295
2285
  onChange: propsOnCheckedChange
2296
2286
  });
2297
2287
  const { id, validationValence, descriptionId, errorMessageId } = useInputContext(INPUT_NAME, __inputScope);
2298
- return /* @__PURE__ */ React25.createElement("input", {
2288
+ return /* @__PURE__ */ React26.createElement("input", {
2299
2289
  type: "checkbox",
2300
- className: mx8("dx-checkbox--switch dx-focus-ring", classNames),
2290
+ className: mx9("dx-checkbox--switch dx-focus-ring", classNames),
2301
2291
  checked,
2302
2292
  onChange: (event) => {
2303
2293
  onCheckedChange(event.target.checked);
@@ -2326,13 +2316,13 @@ var Input = {
2326
2316
  };
2327
2317
 
2328
2318
  // src/components/List/List.tsx
2329
- import { Primitive as Primitive11 } from "@radix-ui/react-primitive";
2330
- import { Slot as Slot11 } from "@radix-ui/react-slot";
2331
- import React27, { forwardRef as forwardRef19 } from "react";
2319
+ import { Primitive as Primitive12 } from "@radix-ui/react-primitive";
2320
+ import { Slot as Slot12 } from "@radix-ui/react-slot";
2321
+ import React28, { forwardRef as forwardRef22 } from "react";
2332
2322
  import { LIST_ITEM_NAME, LIST_NAME, ListItemCollapsibleContent, List as ListPrimitive, ListItem as ListPrimitiveItem, ListItemHeading as ListPrimitiveItemHeading, ListItemOpenTrigger as ListPrimitiveItemOpenTrigger, useListContext, useListItemContext } from "@dxos/react-list";
2333
2323
 
2334
2324
  // src/components/List/ListDropIndicator.tsx
2335
- import React26 from "react";
2325
+ import React27 from "react";
2336
2326
  var edgeToOrientationMap = {
2337
2327
  top: "horizontal",
2338
2328
  bottom: "horizontal",
@@ -2354,7 +2344,7 @@ var terminalSize = 8;
2354
2344
  var offsetToAlignTerminalWithLine = (strokeSize - terminalSize) / 2;
2355
2345
  var ListDropIndicator = ({ edge, gap = 0, lineInset = 0, terminalInset = lineInset - terminalSize }) => {
2356
2346
  const orientation = edgeToOrientationMap[edge];
2357
- return /* @__PURE__ */ React26.createElement("div", {
2347
+ return /* @__PURE__ */ React27.createElement("div", {
2358
2348
  role: "none",
2359
2349
  style: {
2360
2350
  "--line-thickness": `${strokeSize}px`,
@@ -2370,22 +2360,22 @@ var ListDropIndicator = ({ edge, gap = 0, lineInset = 0, terminalInset = lineIns
2370
2360
  };
2371
2361
 
2372
2362
  // src/components/List/List.tsx
2373
- var List = /* @__PURE__ */ forwardRef19(({ classNames, children, ...props }, forwardedRef) => {
2363
+ var List = /* @__PURE__ */ forwardRef22(({ classNames, children, ...props }, forwardedRef) => {
2374
2364
  const { tx } = useThemeContext();
2375
2365
  const density = useDensityContext(props.density);
2376
- return /* @__PURE__ */ React27.createElement(DensityProvider, {
2366
+ return /* @__PURE__ */ React28.createElement(DensityProvider, {
2377
2367
  density
2378
- }, /* @__PURE__ */ React27.createElement(ListPrimitive, {
2368
+ }, /* @__PURE__ */ React28.createElement(ListPrimitive, {
2379
2369
  ...props,
2380
2370
  className: tx("list.root", {}, classNames),
2381
2371
  ref: forwardedRef
2382
2372
  }, children));
2383
2373
  });
2384
- var ListItemEndcap = /* @__PURE__ */ forwardRef19(({ children, classNames, asChild, ...props }, forwardedRef) => {
2385
- const Comp = asChild ? Slot11 : Primitive11.div;
2374
+ var ListItemEndcap = /* @__PURE__ */ forwardRef22(({ children, classNames, asChild, ...props }, forwardedRef) => {
2375
+ const Comp = asChild ? Slot12 : Primitive12.div;
2386
2376
  const density = useDensityContext();
2387
2377
  const { tx } = useThemeContext();
2388
- return /* @__PURE__ */ React27.createElement(Comp, {
2378
+ return /* @__PURE__ */ React28.createElement(Comp, {
2389
2379
  ...!asChild && {
2390
2380
  role: "none"
2391
2381
  },
@@ -2399,7 +2389,7 @@ var ListItemEndcap = /* @__PURE__ */ forwardRef19(({ children, classNames, asChi
2399
2389
  var MockListItemOpenTrigger = ({ classNames, ...props }) => {
2400
2390
  const density = useDensityContext();
2401
2391
  const { tx } = useThemeContext();
2402
- return /* @__PURE__ */ React27.createElement("div", {
2392
+ return /* @__PURE__ */ React28.createElement("div", {
2403
2393
  role: "none",
2404
2394
  ...props,
2405
2395
  className: tx("list.item.openTrigger", {
@@ -2407,10 +2397,10 @@ var MockListItemOpenTrigger = ({ classNames, ...props }) => {
2407
2397
  }, classNames)
2408
2398
  });
2409
2399
  };
2410
- var ListItemHeading = /* @__PURE__ */ forwardRef19(({ children, classNames, ...props }, forwardedRef) => {
2400
+ var ListItemHeading = /* @__PURE__ */ forwardRef22(({ children, classNames, ...props }, forwardedRef) => {
2411
2401
  const { tx } = useThemeContext();
2412
2402
  const density = useDensityContext();
2413
- return /* @__PURE__ */ React27.createElement(ListPrimitiveItemHeading, {
2403
+ return /* @__PURE__ */ React28.createElement(ListPrimitiveItemHeading, {
2414
2404
  ...props,
2415
2405
  className: tx("list.item.heading", {
2416
2406
  density
@@ -2418,26 +2408,26 @@ var ListItemHeading = /* @__PURE__ */ forwardRef19(({ children, classNames, ...p
2418
2408
  ref: forwardedRef
2419
2409
  }, children);
2420
2410
  });
2421
- var ListItemOpenTrigger = /* @__PURE__ */ forwardRef19(({ __listItemScope, classNames, children, ...props }, forwardedRef) => {
2411
+ var ListItemOpenTrigger = /* @__PURE__ */ forwardRef22(({ __listItemScope, classNames, children, ...props }, forwardedRef) => {
2422
2412
  const { tx } = useThemeContext();
2423
2413
  const density = useDensityContext();
2424
2414
  const { open } = useListItemContext(LIST_ITEM_NAME, __listItemScope);
2425
- return /* @__PURE__ */ React27.createElement(ListPrimitiveItemOpenTrigger, {
2415
+ return /* @__PURE__ */ React28.createElement(ListPrimitiveItemOpenTrigger, {
2426
2416
  ...props,
2427
2417
  className: tx("list.item.openTrigger", {
2428
2418
  density
2429
2419
  }, classNames),
2430
2420
  ref: forwardedRef
2431
- }, children || /* @__PURE__ */ React27.createElement(Icon, {
2421
+ }, children || /* @__PURE__ */ React28.createElement(Icon, {
2432
2422
  size: 3,
2433
2423
  icon: open ? "ph--caret-down--bold" : "ph--caret-right--bold",
2434
2424
  classNames: tx("list.item.openTriggerIcon", {})
2435
2425
  }));
2436
2426
  });
2437
- var ListItemRoot = /* @__PURE__ */ forwardRef19(({ classNames, children, ...props }, forwardedRef) => {
2427
+ var ListItemRoot = /* @__PURE__ */ forwardRef22(({ classNames, children, ...props }, forwardedRef) => {
2438
2428
  const { tx } = useThemeContext();
2439
2429
  const density = useDensityContext();
2440
- return /* @__PURE__ */ React27.createElement(ListPrimitiveItem, {
2430
+ return /* @__PURE__ */ React28.createElement(ListPrimitiveItem, {
2441
2431
  ...props,
2442
2432
  className: tx("list.item.root", {
2443
2433
  density,
@@ -2457,10 +2447,10 @@ var ListItem = {
2457
2447
  };
2458
2448
 
2459
2449
  // src/components/List/Tree.tsx
2460
- import React29, { forwardRef as forwardRef20 } from "react";
2450
+ import React30, { forwardRef as forwardRef23 } from "react";
2461
2451
 
2462
2452
  // src/components/List/TreeDropIndicator.tsx
2463
- import React28 from "react";
2453
+ import React29 from "react";
2464
2454
  var edgeToOrientationMap2 = {
2465
2455
  "reorder-above": "sibling",
2466
2456
  "reorder-below": "sibling",
@@ -2470,7 +2460,7 @@ var edgeToOrientationMap2 = {
2470
2460
  var orientationStyles2 = {
2471
2461
  // TODO(wittjosiah): Stop using left/right here.
2472
2462
  sibling: "h-(--line-thickness) left-(--horizontal-indent) right-0 bg-accent-surface before:left-(--negative-terminal-size)",
2473
- child: "w-full top-0 bottom-0 border-[length:--line-thickness] before:invisible"
2463
+ child: "inset-0 border-[length:var(--line-thickness)] before:invisible"
2474
2464
  };
2475
2465
  var instructionStyles = {
2476
2466
  "reorder-above": "top-(--line-offset) before:top-(--offset-terminal)",
@@ -2490,7 +2480,7 @@ var TreeDropIndicator = ({ instruction, gap = 0 }) => {
2490
2480
  if (isBlocked) {
2491
2481
  return null;
2492
2482
  }
2493
- return /* @__PURE__ */ React28.createElement("div", {
2483
+ return /* @__PURE__ */ React29.createElement("div", {
2494
2484
  style: {
2495
2485
  "--line-thickness": `${strokeSize2}px`,
2496
2486
  "--line-offset": `${lineOffset}`,
@@ -2505,22 +2495,22 @@ var TreeDropIndicator = ({ instruction, gap = 0 }) => {
2505
2495
  };
2506
2496
 
2507
2497
  // src/components/List/Tree.tsx
2508
- var TreeRoot = /* @__PURE__ */ forwardRef20((props, forwardedRef) => {
2509
- return /* @__PURE__ */ React29.createElement(List, {
2498
+ var TreeRoot = /* @__PURE__ */ forwardRef23((props, forwardedRef) => {
2499
+ return /* @__PURE__ */ React30.createElement(List, {
2510
2500
  ...props,
2511
2501
  ref: forwardedRef
2512
2502
  });
2513
2503
  });
2514
- var TreeBranch = /* @__PURE__ */ forwardRef20(({ __listScope, ...props }, forwardedRef) => {
2504
+ var TreeBranch = /* @__PURE__ */ forwardRef23(({ __listScope, ...props }, forwardedRef) => {
2515
2505
  const { headingId } = useListItemContext(LIST_ITEM_NAME, __listScope);
2516
- return /* @__PURE__ */ React29.createElement(List, {
2506
+ return /* @__PURE__ */ React30.createElement(List, {
2517
2507
  ...props,
2518
2508
  "aria-labelledby": headingId,
2519
2509
  ref: forwardedRef
2520
2510
  });
2521
2511
  });
2522
- var TreeItemRoot = /* @__PURE__ */ forwardRef20((props, forwardedRef) => {
2523
- return /* @__PURE__ */ React29.createElement(ListItem.Root, {
2512
+ var TreeItemRoot = /* @__PURE__ */ forwardRef23((props, forwardedRef) => {
2513
+ return /* @__PURE__ */ React30.createElement(ListItem.Root, {
2524
2514
  role: "treeitem",
2525
2515
  ...props,
2526
2516
  ref: forwardedRef
@@ -2546,18 +2536,18 @@ var TreeItem = {
2546
2536
  // src/components/List/Treegrid.tsx
2547
2537
  import { useFocusFinders } from "@fluentui/react-tabster";
2548
2538
  import { createContextScope as createContextScope2 } from "@radix-ui/react-context";
2549
- import { Primitive as Primitive12 } from "@radix-ui/react-primitive";
2550
- import { Slot as Slot12 } from "@radix-ui/react-slot";
2539
+ import { Primitive as Primitive13 } from "@radix-ui/react-primitive";
2540
+ import { Slot as Slot13 } from "@radix-ui/react-slot";
2551
2541
  import { useControllableState as useControllableState3 } from "@radix-ui/react-use-controllable-state";
2552
- import React30, { forwardRef as forwardRef21, useCallback as useCallback6 } from "react";
2542
+ import React31, { forwardRef as forwardRef24, useCallback as useCallback6 } from "react";
2553
2543
  var TREEGRID_ROW_NAME = "TreegridRow";
2554
2544
  var [createTreegridRowContext, createTreegridRowScope] = createContextScope2(TREEGRID_ROW_NAME, []);
2555
2545
  var [TreegridRowProvider, useTreegridRowContext] = createTreegridRowContext(TREEGRID_ROW_NAME);
2556
2546
  var PATH_SEPARATOR = "~";
2557
2547
  var PARENT_OF_SEPARATOR = " ";
2558
- var TreegridRoot = /* @__PURE__ */ forwardRef21(({ asChild, classNames, children, style, gridTemplateColumns, ...props }, forwardedRef) => {
2548
+ var TreegridRoot = /* @__PURE__ */ forwardRef24(({ asChild, classNames, children, style, gridTemplateColumns, ...props }, forwardedRef) => {
2559
2549
  const { tx } = useThemeContext();
2560
- const Comp = asChild ? Slot12 : Primitive12.div;
2550
+ const Comp = asChild ? Slot13 : Primitive13.div;
2561
2551
  const { findFirstFocusable } = useFocusFinders();
2562
2552
  const handleKeyDown = useCallback6((event) => {
2563
2553
  switch (event.key) {
@@ -2592,7 +2582,7 @@ var TreegridRoot = /* @__PURE__ */ forwardRef21(({ asChild, classNames, children
2592
2582
  }, [
2593
2583
  findFirstFocusable
2594
2584
  ]);
2595
- return /* @__PURE__ */ React30.createElement(Comp, {
2585
+ return /* @__PURE__ */ React31.createElement(Comp, {
2596
2586
  role: "treegrid",
2597
2587
  ...props,
2598
2588
  className: tx("treegrid.root", {}, classNames),
@@ -2604,9 +2594,9 @@ var TreegridRoot = /* @__PURE__ */ forwardRef21(({ asChild, classNames, children
2604
2594
  ref: forwardedRef
2605
2595
  }, children);
2606
2596
  });
2607
- var TreegridRow = /* @__PURE__ */ forwardRef21(({ __treegridRowScope, asChild, classNames, children, id, parentOf, open: propsOpen, defaultOpen, onOpenChange: propsOnOpenChange, ...props }, forwardedRef) => {
2597
+ var TreegridRow = /* @__PURE__ */ forwardRef24(({ __treegridRowScope, asChild, classNames, children, id, parentOf, open: propsOpen, defaultOpen, onOpenChange: propsOnOpenChange, ...props }, forwardedRef) => {
2608
2598
  const { tx } = useThemeContext();
2609
- const Comp = asChild ? Slot12 : Primitive12.div;
2599
+ const Comp = asChild ? Slot13 : Primitive13.div;
2610
2600
  const pathParts = id.split(PATH_SEPARATOR);
2611
2601
  const level = pathParts.length - 1;
2612
2602
  const [open, onOpenChange] = useControllableState3({
@@ -2614,11 +2604,11 @@ var TreegridRow = /* @__PURE__ */ forwardRef21(({ __treegridRowScope, asChild, c
2614
2604
  onChange: propsOnOpenChange,
2615
2605
  defaultProp: defaultOpen
2616
2606
  });
2617
- return /* @__PURE__ */ React30.createElement(TreegridRowProvider, {
2607
+ return /* @__PURE__ */ React31.createElement(TreegridRowProvider, {
2618
2608
  open,
2619
2609
  onOpenChange,
2620
2610
  scope: __treegridRowScope
2621
- }, /* @__PURE__ */ React30.createElement(Comp, {
2611
+ }, /* @__PURE__ */ React31.createElement(Comp, {
2622
2612
  role: "row",
2623
2613
  "aria-level": level,
2624
2614
  className: tx("treegrid.row", {
@@ -2633,9 +2623,9 @@ var TreegridRow = /* @__PURE__ */ forwardRef21(({ __treegridRowScope, asChild, c
2633
2623
  ref: forwardedRef
2634
2624
  }, children));
2635
2625
  });
2636
- var TreegridCell = /* @__PURE__ */ forwardRef21(({ classNames, children, indent, ...props }, forwardedRef) => {
2626
+ var TreegridCell = /* @__PURE__ */ forwardRef24(({ classNames, children, indent, ...props }, forwardedRef) => {
2637
2627
  const { tx } = useThemeContext();
2638
- return /* @__PURE__ */ React30.createElement("div", {
2628
+ return /* @__PURE__ */ React31.createElement("div", {
2639
2629
  role: "gridcell",
2640
2630
  className: tx("treegrid.cell", {
2641
2631
  indent
@@ -2658,10 +2648,10 @@ var Treegrid = {
2658
2648
  import { useFocusableGroup } from "@fluentui/react-tabster";
2659
2649
  import { createContext as createContext7 } from "@radix-ui/react-context";
2660
2650
  import { DialogContent as DialogContent2, Root as DialogRoot2, DialogTitle as DialogTitle2 } from "@radix-ui/react-dialog";
2661
- import { Primitive as Primitive13 } from "@radix-ui/react-primitive";
2662
- import { Slot as Slot13 } from "@radix-ui/react-slot";
2651
+ import { Primitive as Primitive14 } from "@radix-ui/react-primitive";
2652
+ import { Slot as Slot14 } from "@radix-ui/react-slot";
2663
2653
  import { useControllableState as useControllableState4 } from "@radix-ui/react-use-controllable-state";
2664
- import React31, { forwardRef as forwardRef22, useCallback as useCallback8, useEffect as useEffect5, useRef as useRef3, useState as useState7 } from "react";
2654
+ import React32, { forwardRef as forwardRef25, useCallback as useCallback8, useEffect as useEffect5, useRef as useRef3, useState as useState7 } from "react";
2665
2655
  import { addEventListener } from "@dxos/async";
2666
2656
  import { log } from "@dxos/log";
2667
2657
  import { useForwardedRef, useMediaQuery } from "@dxos/react-hooks";
@@ -2865,7 +2855,7 @@ var MainRoot = ({ navigationSidebarState: propsNavigationSidebarState, defaultNa
2865
2855
  resizeInterval.current = null;
2866
2856
  }, 3e3);
2867
2857
  }), []);
2868
- return /* @__PURE__ */ React31.createElement(MainProvider, {
2858
+ return /* @__PURE__ */ React32.createElement(MainProvider, {
2869
2859
  ...props,
2870
2860
  navigationSidebarState,
2871
2861
  setNavigationSidebarState,
@@ -2875,11 +2865,11 @@ var MainRoot = ({ navigationSidebarState: propsNavigationSidebarState, defaultNa
2875
2865
  }, children);
2876
2866
  };
2877
2867
  MainRoot.displayName = MAIN_ROOT_NAME;
2878
- var MainOverlay = /* @__PURE__ */ forwardRef22(({ classNames, ...props }, forwardedRef) => {
2868
+ var MainOverlay = /* @__PURE__ */ forwardRef25(({ classNames, ...props }, forwardedRef) => {
2879
2869
  const [isLg] = useMediaQuery("lg");
2880
2870
  const { navigationSidebarState, setNavigationSidebarState, complementarySidebarState, setComplementarySidebarState } = useMainContext(MAIN_OVERLAY_NAME);
2881
2871
  const { tx } = useThemeContext();
2882
- return /* @__PURE__ */ React31.createElement("div", {
2872
+ return /* @__PURE__ */ React32.createElement("div", {
2883
2873
  ...props,
2884
2874
  onClick: () => {
2885
2875
  setNavigationSidebarState("collapsed");
@@ -2896,7 +2886,7 @@ var MainOverlay = /* @__PURE__ */ forwardRef22(({ classNames, ...props }, forwar
2896
2886
  });
2897
2887
  });
2898
2888
  MainOverlay.displayName = MAIN_OVERLAY_NAME;
2899
- var MainSidebar = /* @__PURE__ */ forwardRef22(({ classNames, children, swipeToDismiss, onOpenAutoFocus, state, resizing, onStateChange, side, label, ...props }, forwardedRef) => {
2889
+ var MainSidebar = /* @__PURE__ */ forwardRef25(({ classNames, children, swipeToDismiss, onOpenAutoFocus, state, resizing, onStateChange, side, label, ...props }, forwardedRef) => {
2900
2890
  const [isLg] = useMediaQuery("lg");
2901
2891
  const { tx } = useThemeContext();
2902
2892
  const { t } = useTranslation(osTranslations3);
@@ -2916,14 +2906,14 @@ var MainSidebar = /* @__PURE__ */ forwardRef22(({ classNames, children, swipeToD
2916
2906
  }, [
2917
2907
  props.onKeyDown
2918
2908
  ]);
2919
- const Root9 = isLg ? Primitive13.div : DialogContent2;
2920
- return /* @__PURE__ */ React31.createElement(DialogRoot2, {
2909
+ const Root9 = isLg ? Primitive14.div : DialogContent2;
2910
+ return /* @__PURE__ */ React32.createElement(DialogRoot2, {
2921
2911
  open: state !== "closed",
2922
2912
  "aria-label": toLocalizedString(label, t),
2923
2913
  modal: false
2924
- }, !isLg && /* @__PURE__ */ React31.createElement(DialogTitle2, {
2914
+ }, !isLg && /* @__PURE__ */ React32.createElement(DialogTitle2, {
2925
2915
  className: "sr-only"
2926
- }, toLocalizedString(label, t)), /* @__PURE__ */ React31.createElement(Root9, {
2916
+ }, toLocalizedString(label, t)), /* @__PURE__ */ React32.createElement(Root9, {
2927
2917
  ...!isLg && {
2928
2918
  forceMount: true,
2929
2919
  tabIndex: -1,
@@ -2941,10 +2931,10 @@ var MainSidebar = /* @__PURE__ */ forwardRef22(({ classNames, children, swipeToD
2941
2931
  ref
2942
2932
  }, children));
2943
2933
  });
2944
- var MainNavigationSidebar = /* @__PURE__ */ forwardRef22((props, forwardedRef) => {
2934
+ var MainNavigationSidebar = /* @__PURE__ */ forwardRef25((props, forwardedRef) => {
2945
2935
  const { navigationSidebarState, setNavigationSidebarState, resizing } = useMainContext(NAVIGATION_SIDEBAR_NAME);
2946
2936
  const mover = useLandmarkMover(props.onKeyDown, "0");
2947
- return /* @__PURE__ */ React31.createElement(MainSidebar, {
2937
+ return /* @__PURE__ */ React32.createElement(MainSidebar, {
2948
2938
  ...mover,
2949
2939
  ...props,
2950
2940
  state: navigationSidebarState,
@@ -2955,10 +2945,10 @@ var MainNavigationSidebar = /* @__PURE__ */ forwardRef22((props, forwardedRef) =
2955
2945
  });
2956
2946
  });
2957
2947
  MainNavigationSidebar.displayName = NAVIGATION_SIDEBAR_NAME;
2958
- var MainComplementarySidebar = /* @__PURE__ */ forwardRef22((props, forwardedRef) => {
2948
+ var MainComplementarySidebar = /* @__PURE__ */ forwardRef25((props, forwardedRef) => {
2959
2949
  const { complementarySidebarState, setComplementarySidebarState, resizing } = useMainContext(COMPLEMENTARY_SIDEBAR_NAME);
2960
2950
  const mover = useLandmarkMover(props.onKeyDown, "2");
2961
- return /* @__PURE__ */ React31.createElement(MainSidebar, {
2951
+ return /* @__PURE__ */ React32.createElement(MainSidebar, {
2962
2952
  ...mover,
2963
2953
  ...props,
2964
2954
  state: complementarySidebarState,
@@ -2969,12 +2959,12 @@ var MainComplementarySidebar = /* @__PURE__ */ forwardRef22((props, forwardedRef
2969
2959
  });
2970
2960
  });
2971
2961
  MainComplementarySidebar.displayName = COMPLEMENTARY_SIDEBAR_NAME;
2972
- var MainContent = /* @__PURE__ */ forwardRef22(({ asChild, classNames, bounce, handlesFocus, children, role, ...props }, forwardedRef) => {
2962
+ var MainContent = /* @__PURE__ */ forwardRef25(({ asChild, classNames, bounce, handlesFocus, children, role, ...props }, forwardedRef) => {
2973
2963
  const { navigationSidebarState, complementarySidebarState } = useMainContext(MAIN_NAME);
2974
2964
  const { tx } = useThemeContext();
2975
- const Comp = asChild ? Slot13 : role ? Primitive13.div : "main";
2965
+ const Comp = asChild ? Slot14 : role ? Primitive14.div : "main";
2976
2966
  const mover = useLandmarkMover(props.onKeyDown, "1");
2977
- return /* @__PURE__ */ React31.createElement(Comp, {
2967
+ return /* @__PURE__ */ React32.createElement(Comp, {
2978
2968
  role,
2979
2969
  ...handlesFocus && {
2980
2970
  ...mover
@@ -3001,9 +2991,9 @@ var Main = {
3001
2991
 
3002
2992
  // src/components/Message/Message.tsx
3003
2993
  import { createContext as createContext8 } from "@radix-ui/react-context";
3004
- import { Primitive as Primitive14 } from "@radix-ui/react-primitive";
3005
- import { Slot as Slot14 } from "@radix-ui/react-slot";
3006
- import React32, { forwardRef as forwardRef23 } from "react";
2994
+ import { Primitive as Primitive15 } from "@radix-ui/react-primitive";
2995
+ import { Slot as Slot15 } from "@radix-ui/react-slot";
2996
+ import React33, { forwardRef as forwardRef26 } from "react";
3007
2997
  import { useId as useId3 } from "@dxos/react-hooks";
3008
2998
  var messageIcons = {
3009
2999
  success: "ph--check-circle--duotone",
@@ -3014,17 +3004,17 @@ var messageIcons = {
3014
3004
  };
3015
3005
  var MESSAGE_NAME = "Message";
3016
3006
  var [MessageProvider, useMessageContext] = createContext8(MESSAGE_NAME);
3017
- var MessageRoot = /* @__PURE__ */ forwardRef23(({ asChild, valence = "neutral", elevation: propsElevation, classNames, titleId: propsTitleId, descriptionId: propsDescriptionId, children, ...props }, forwardedRef) => {
3007
+ var MessageRoot = /* @__PURE__ */ forwardRef26(({ asChild, valence = "neutral", elevation: propsElevation, classNames, titleId: propsTitleId, descriptionId: propsDescriptionId, children, ...props }, forwardedRef) => {
3018
3008
  const { tx } = useThemeContext();
3019
3009
  const titleId = useId3("message__title", propsTitleId);
3020
3010
  const descriptionId = useId3("message__description", propsDescriptionId);
3021
3011
  const elevation = useElevationContext(propsElevation);
3022
- const Comp = asChild ? Slot14 : Primitive14.div;
3023
- return /* @__PURE__ */ React32.createElement(MessageProvider, {
3012
+ const Comp = asChild ? Slot15 : Primitive15.div;
3013
+ return /* @__PURE__ */ React33.createElement(MessageProvider, {
3024
3014
  titleId,
3025
3015
  descriptionId,
3026
3016
  valence
3027
- }, /* @__PURE__ */ React32.createElement(Comp, {
3017
+ }, /* @__PURE__ */ React33.createElement(Comp, {
3028
3018
  role: valence === "neutral" ? "paragraph" : "alert",
3029
3019
  ...props,
3030
3020
  className: tx("message.root", {
@@ -3038,33 +3028,33 @@ var MessageRoot = /* @__PURE__ */ forwardRef23(({ asChild, valence = "neutral",
3038
3028
  });
3039
3029
  MessageRoot.displayName = MESSAGE_NAME;
3040
3030
  var MESSAGE_TITLE_NAME = "MessageTitle";
3041
- var MessageTitle = /* @__PURE__ */ forwardRef23(({ asChild, classNames, children, icon: iconProp, ...props }, forwardedRef) => {
3031
+ var MessageTitle = /* @__PURE__ */ forwardRef26(({ asChild, classNames, children, icon: iconProp, ...props }, forwardedRef) => {
3042
3032
  const { tx } = useThemeContext();
3043
3033
  const { titleId, valence } = useMessageContext(MESSAGE_TITLE_NAME);
3044
- const Comp = asChild ? Slot14 : Primitive14.h2;
3034
+ const Comp = asChild ? Slot15 : Primitive15.h2;
3045
3035
  const icon = iconProp ?? messageIcons[valence];
3046
- return /* @__PURE__ */ React32.createElement(Comp, {
3036
+ return /* @__PURE__ */ React33.createElement(Comp, {
3047
3037
  ...props,
3048
3038
  className: tx("message.header", {}, classNames),
3049
3039
  id: titleId,
3050
3040
  ref: forwardedRef
3051
- }, !icon && valence === "neutral" ? /* @__PURE__ */ React32.createElement("div", null) : /* @__PURE__ */ React32.createElement(Icon, {
3041
+ }, !icon && valence === "neutral" ? /* @__PURE__ */ React33.createElement("div", null) : /* @__PURE__ */ React33.createElement(Icon, {
3052
3042
  size: 5,
3053
3043
  icon,
3054
3044
  classNames: tx("message.icon", {
3055
3045
  valence
3056
3046
  })
3057
- }), /* @__PURE__ */ React32.createElement("span", {
3047
+ }), /* @__PURE__ */ React33.createElement("span", {
3058
3048
  className: tx("message.title", {}, classNames)
3059
3049
  }, children));
3060
3050
  });
3061
3051
  MessageTitle.displayName = MESSAGE_TITLE_NAME;
3062
3052
  var MESSAGE_CONTENT_NAME = "MessageContent";
3063
- var MessageContent = /* @__PURE__ */ forwardRef23(({ asChild, classNames, children, ...props }, forwardedRef) => {
3053
+ var MessageContent = /* @__PURE__ */ forwardRef26(({ asChild, classNames, children, ...props }, forwardedRef) => {
3064
3054
  const { tx } = useThemeContext();
3065
3055
  const { descriptionId } = useMessageContext(MESSAGE_CONTENT_NAME);
3066
- const Comp = asChild ? Slot14 : Primitive14.p;
3067
- return /* @__PURE__ */ React32.createElement(Comp, {
3056
+ const Comp = asChild ? Slot15 : Primitive15.p;
3057
+ return /* @__PURE__ */ React33.createElement(Comp, {
3068
3058
  ...props,
3069
3059
  className: tx("message.content", {}, classNames),
3070
3060
  id: descriptionId,
@@ -3091,11 +3081,11 @@ import * as PopperPrimitive from "@radix-ui/react-popper";
3091
3081
  import { createPopperScope } from "@radix-ui/react-popper";
3092
3082
  import { Portal as PortalPrimitive } from "@radix-ui/react-portal";
3093
3083
  import { Presence } from "@radix-ui/react-presence";
3094
- import { Primitive as Primitive15 } from "@radix-ui/react-primitive";
3095
- import { Slot as Slot15 } from "@radix-ui/react-slot";
3084
+ import { Primitive as Primitive16 } from "@radix-ui/react-primitive";
3085
+ import { Slot as Slot16 } from "@radix-ui/react-slot";
3096
3086
  import { useControllableState as useControllableState5 } from "@radix-ui/react-use-controllable-state";
3097
3087
  import { hideOthers } from "aria-hidden";
3098
- import React33, { forwardRef as forwardRef24, useCallback as useCallback9, useEffect as useEffect6, useMemo as useMemo4, useRef as useRef4, useState as useState8 } from "react";
3088
+ import React34, { forwardRef as forwardRef27, useCallback as useCallback9, useEffect as useEffect6, useMemo as useMemo4, useRef as useRef4, useState as useState8 } from "react";
3099
3089
  import { RemoveScroll } from "react-remove-scroll";
3100
3090
  var POPOVER_NAME = "Popover";
3101
3091
  var [createPopoverContext, createPopoverScope] = createContextScope3(POPOVER_NAME, [
@@ -3113,7 +3103,7 @@ var PopoverRoot = (props) => {
3113
3103
  defaultProp: defaultOpen,
3114
3104
  onChange: onOpenChange
3115
3105
  });
3116
- return /* @__PURE__ */ React33.createElement(PopperPrimitive.Root, popperScope, /* @__PURE__ */ React33.createElement(PopoverProvider, {
3106
+ return /* @__PURE__ */ React34.createElement(PopperPrimitive.Root, popperScope, /* @__PURE__ */ React34.createElement(PopoverProvider, {
3117
3107
  scope: __scopePopover,
3118
3108
  contentId: useId4(),
3119
3109
  triggerRef,
@@ -3130,7 +3120,7 @@ var PopoverRoot = (props) => {
3130
3120
  };
3131
3121
  PopoverRoot.displayName = POPOVER_NAME;
3132
3122
  var ANCHOR_NAME = "PopoverAnchor";
3133
- var PopoverAnchor = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3123
+ var PopoverAnchor = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3134
3124
  const { __scopePopover, ...anchorProps } = props;
3135
3125
  const context = usePopoverContext(ANCHOR_NAME, __scopePopover);
3136
3126
  const popperScope = usePopperScope(__scopePopover);
@@ -3142,7 +3132,7 @@ var PopoverAnchor = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3142
3132
  onCustomAnchorAdd,
3143
3133
  onCustomAnchorRemove
3144
3134
  ]);
3145
- return /* @__PURE__ */ React33.createElement(PopperPrimitive.Anchor, {
3135
+ return /* @__PURE__ */ React34.createElement(PopperPrimitive.Anchor, {
3146
3136
  ...popperScope,
3147
3137
  ...anchorProps,
3148
3138
  ref: forwardedRef
@@ -3150,13 +3140,13 @@ var PopoverAnchor = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3150
3140
  });
3151
3141
  PopoverAnchor.displayName = ANCHOR_NAME;
3152
3142
  var TRIGGER_NAME2 = "PopoverTrigger";
3153
- var PopoverTrigger = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3143
+ var PopoverTrigger = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3154
3144
  const { __scopePopover, asChild, ...triggerProps } = props;
3155
3145
  const context = usePopoverContext(TRIGGER_NAME2, __scopePopover);
3156
3146
  const popperScope = usePopperScope(__scopePopover);
3157
3147
  const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);
3158
- const Comp = asChild ? Slot15 : Primitive15.button;
3159
- const trigger = /* @__PURE__ */ React33.createElement(Comp, {
3148
+ const Comp = asChild ? Slot16 : Primitive16.button;
3149
+ const trigger = /* @__PURE__ */ React34.createElement(Comp, {
3160
3150
  type: "button",
3161
3151
  "aria-haspopup": "dialog",
3162
3152
  "aria-expanded": context.open,
@@ -3166,7 +3156,7 @@ var PopoverTrigger = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3166
3156
  ref: composedTriggerRef,
3167
3157
  onClick: composeEventHandlers2(props.onClick, context.onOpenToggle)
3168
3158
  });
3169
- return context.hasCustomAnchor ? trigger : /* @__PURE__ */ React33.createElement(PopperPrimitive.Anchor, {
3159
+ return context.hasCustomAnchor ? trigger : /* @__PURE__ */ React34.createElement(PopperPrimitive.Anchor, {
3170
3160
  asChild: true,
3171
3161
  ...popperScope
3172
3162
  }, trigger);
@@ -3182,7 +3172,7 @@ var PopoverVirtualTrigger = (props) => {
3182
3172
  context.triggerRef.current = virtualRef.current;
3183
3173
  }
3184
3174
  });
3185
- return /* @__PURE__ */ React33.createElement(PopperPrimitive.Anchor, {
3175
+ return /* @__PURE__ */ React34.createElement(PopperPrimitive.Anchor, {
3186
3176
  ...popperScope,
3187
3177
  virtualRef
3188
3178
  });
@@ -3195,34 +3185,34 @@ var [PortalProvider, usePortalContext] = createPopoverContext(PORTAL_NAME2, {
3195
3185
  var PopoverPortal = (props) => {
3196
3186
  const { __scopePopover, forceMount, children, container } = props;
3197
3187
  const context = usePopoverContext(PORTAL_NAME2, __scopePopover);
3198
- return /* @__PURE__ */ React33.createElement(PortalProvider, {
3188
+ return /* @__PURE__ */ React34.createElement(PortalProvider, {
3199
3189
  scope: __scopePopover,
3200
3190
  forceMount
3201
- }, /* @__PURE__ */ React33.createElement(Presence, {
3191
+ }, /* @__PURE__ */ React34.createElement(Presence, {
3202
3192
  present: forceMount || context.open
3203
- }, /* @__PURE__ */ React33.createElement(PortalPrimitive, {
3193
+ }, /* @__PURE__ */ React34.createElement(PortalPrimitive, {
3204
3194
  asChild: true,
3205
3195
  container
3206
3196
  }, children)));
3207
3197
  };
3208
3198
  PopoverPortal.displayName = PORTAL_NAME2;
3209
3199
  var CONTENT_NAME2 = "PopoverContent";
3210
- var PopoverContent = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3200
+ var PopoverContent = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3211
3201
  const portalContext = usePortalContext(CONTENT_NAME2, props.__scopePopover);
3212
3202
  const { forceMount = portalContext.forceMount, ...contentProps } = props;
3213
3203
  const context = usePopoverContext(CONTENT_NAME2, props.__scopePopover);
3214
- return /* @__PURE__ */ React33.createElement(Presence, {
3204
+ return /* @__PURE__ */ React34.createElement(Presence, {
3215
3205
  present: forceMount || context.open
3216
- }, context.modal ? /* @__PURE__ */ React33.createElement(PopoverContentModal, {
3206
+ }, context.modal ? /* @__PURE__ */ React34.createElement(PopoverContentModal, {
3217
3207
  ...contentProps,
3218
3208
  ref: forwardedRef
3219
- }) : /* @__PURE__ */ React33.createElement(PopoverContentNonModal, {
3209
+ }) : /* @__PURE__ */ React34.createElement(PopoverContentNonModal, {
3220
3210
  ...contentProps,
3221
3211
  ref: forwardedRef
3222
3212
  }));
3223
3213
  });
3224
3214
  PopoverContent.displayName = CONTENT_NAME2;
3225
- var PopoverContentModal = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3215
+ var PopoverContentModal = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3226
3216
  const context = usePopoverContext(CONTENT_NAME2, props.__scopePopover);
3227
3217
  const contentRef = useRef4(null);
3228
3218
  const composedRefs = useComposedRefs(forwardedRef, contentRef);
@@ -3233,10 +3223,10 @@ var PopoverContentModal = /* @__PURE__ */ forwardRef24((props, forwardedRef) =>
3233
3223
  return hideOthers(content);
3234
3224
  }
3235
3225
  }, []);
3236
- return /* @__PURE__ */ React33.createElement(RemoveScroll, {
3237
- as: Slot15,
3226
+ return /* @__PURE__ */ React34.createElement(RemoveScroll, {
3227
+ as: Slot16,
3238
3228
  allowPinchZoom: true
3239
- }, /* @__PURE__ */ React33.createElement(PopoverContentImpl, {
3229
+ }, /* @__PURE__ */ React34.createElement(PopoverContentImpl, {
3240
3230
  ...props,
3241
3231
  ref: composedRefs,
3242
3232
  // Make sure we're not trapping once it's been closed (closed !== unmounted when animating out).
@@ -3263,11 +3253,11 @@ var PopoverContentModal = /* @__PURE__ */ forwardRef24((props, forwardedRef) =>
3263
3253
  })
3264
3254
  }));
3265
3255
  });
3266
- var PopoverContentNonModal = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3256
+ var PopoverContentNonModal = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3267
3257
  const context = usePopoverContext(CONTENT_NAME2, props.__scopePopover);
3268
3258
  const hasInteractedOutsideRef = useRef4(false);
3269
3259
  const hasPointerDownOutsideRef = useRef4(false);
3270
- return /* @__PURE__ */ React33.createElement(PopoverContentImpl, {
3260
+ return /* @__PURE__ */ React34.createElement(PopoverContentImpl, {
3271
3261
  ...props,
3272
3262
  ref: forwardedRef,
3273
3263
  trapFocus: false,
@@ -3302,7 +3292,7 @@ var PopoverContentNonModal = /* @__PURE__ */ forwardRef24((props, forwardedRef)
3302
3292
  }
3303
3293
  });
3304
3294
  });
3305
- var PopoverContentImpl = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3295
+ var PopoverContentImpl = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3306
3296
  const { __scopePopover, trapFocus, onOpenAutoFocus, onCloseAutoFocus, disableOutsidePointerEvents, onEscapeKeyDown, onPointerDownOutside, onFocusOutside, onInteractOutside, collisionPadding = 8, collisionBoundary, classNames, ...contentProps } = props;
3307
3297
  const context = usePopoverContext(CONTENT_NAME2, __scopePopover);
3308
3298
  const popperScope = usePopperScope(__scopePopover);
@@ -3326,13 +3316,13 @@ var PopoverContentImpl = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3326
3316
  collisionBoundary,
3327
3317
  context.triggerRef.current
3328
3318
  ]);
3329
- return /* @__PURE__ */ React33.createElement(FocusScope, {
3319
+ return /* @__PURE__ */ React34.createElement(FocusScope, {
3330
3320
  asChild: true,
3331
3321
  loop: true,
3332
3322
  trapped: trapFocus,
3333
3323
  onMountAutoFocus: onOpenAutoFocus,
3334
3324
  onUnmountAutoFocus: onCloseAutoFocus
3335
- }, /* @__PURE__ */ React33.createElement(DismissableLayer, {
3325
+ }, /* @__PURE__ */ React34.createElement(DismissableLayer, {
3336
3326
  asChild: true,
3337
3327
  disableOutsidePointerEvents,
3338
3328
  onInteractOutside,
@@ -3340,7 +3330,7 @@ var PopoverContentImpl = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3340
3330
  onPointerDownOutside,
3341
3331
  onFocusOutside,
3342
3332
  onDismiss: () => context.onOpenChange(false)
3343
- }, /* @__PURE__ */ React33.createElement(PopperPrimitive.Content, {
3333
+ }, /* @__PURE__ */ React34.createElement(PopperPrimitive.Content, {
3344
3334
  "data-state": getState(context.open),
3345
3335
  role: "dialog",
3346
3336
  id: context.contentId,
@@ -3366,10 +3356,10 @@ var PopoverContentImpl = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3366
3356
  })));
3367
3357
  });
3368
3358
  var CLOSE_NAME = "PopoverClose";
3369
- var PopoverClose = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3359
+ var PopoverClose = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3370
3360
  const { __scopePopover, ...closeProps } = props;
3371
3361
  const context = usePopoverContext(CLOSE_NAME, __scopePopover);
3372
- return /* @__PURE__ */ React33.createElement(Primitive15.button, {
3362
+ return /* @__PURE__ */ React34.createElement(Primitive16.button, {
3373
3363
  type: "button",
3374
3364
  ...closeProps,
3375
3365
  ref: forwardedRef,
@@ -3378,11 +3368,11 @@ var PopoverClose = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3378
3368
  });
3379
3369
  PopoverClose.displayName = CLOSE_NAME;
3380
3370
  var ARROW_NAME2 = "PopoverArrow";
3381
- var PopoverArrow = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3371
+ var PopoverArrow = /* @__PURE__ */ forwardRef27((props, forwardedRef) => {
3382
3372
  const { __scopePopover, classNames, ...arrowProps } = props;
3383
3373
  const popperScope = usePopperScope(__scopePopover);
3384
3374
  const { tx } = useThemeContext();
3385
- return /* @__PURE__ */ React33.createElement(PopperPrimitive.Arrow, {
3375
+ return /* @__PURE__ */ React34.createElement(PopperPrimitive.Arrow, {
3386
3376
  ...popperScope,
3387
3377
  ...arrowProps,
3388
3378
  className: tx("popover.arrow", {}, classNames),
@@ -3390,10 +3380,10 @@ var PopoverArrow = /* @__PURE__ */ forwardRef24((props, forwardedRef) => {
3390
3380
  });
3391
3381
  });
3392
3382
  PopoverArrow.displayName = ARROW_NAME2;
3393
- var PopoverViewport = /* @__PURE__ */ forwardRef24(({ classNames, asChild, constrainInline = true, constrainBlock = true, children, ...props }, forwardedRef) => {
3383
+ var PopoverViewport = /* @__PURE__ */ forwardRef27(({ classNames, asChild, constrainInline = true, constrainBlock = true, children, ...props }, forwardedRef) => {
3394
3384
  const { tx } = useThemeContext();
3395
- const Comp = asChild ? Slot15 : Primitive15.div;
3396
- return /* @__PURE__ */ React33.createElement(Comp, {
3385
+ const Comp = asChild ? Slot16 : Primitive16.div;
3386
+ return /* @__PURE__ */ React34.createElement(Comp, {
3397
3387
  ...props,
3398
3388
  className: tx("popover.viewport", {
3399
3389
  constrainInline,
@@ -3416,10 +3406,10 @@ var Popover = {
3416
3406
  };
3417
3407
 
3418
3408
  // src/components/Status/Status.tsx
3419
- import React34, { forwardRef as forwardRef25 } from "react";
3420
- var Status = /* @__PURE__ */ forwardRef25(({ classNames, children, progress = 0, indeterminate, variant, ...props }, forwardedRef) => {
3409
+ import React35, { forwardRef as forwardRef28 } from "react";
3410
+ var Status = /* @__PURE__ */ forwardRef28(({ classNames, children, progress = 0, indeterminate, variant, ...props }, forwardedRef) => {
3421
3411
  const { tx } = useThemeContext();
3422
- return /* @__PURE__ */ React34.createElement("span", {
3412
+ return /* @__PURE__ */ React35.createElement("span", {
3423
3413
  role: "status",
3424
3414
  ...props,
3425
3415
  className: tx("status.root", {
@@ -3427,7 +3417,7 @@ var Status = /* @__PURE__ */ forwardRef25(({ classNames, children, progress = 0,
3427
3417
  variant
3428
3418
  }, classNames),
3429
3419
  ref: forwardedRef
3430
- }, /* @__PURE__ */ React34.createElement("span", {
3420
+ }, /* @__PURE__ */ React35.createElement("span", {
3431
3421
  role: "none",
3432
3422
  className: tx("status.bar", {
3433
3423
  indeterminate,
@@ -3443,15 +3433,17 @@ var Status = /* @__PURE__ */ forwardRef25(({ classNames, children, progress = 0,
3443
3433
 
3444
3434
  // src/components/ScrollArea/ScrollArea.tsx
3445
3435
  import { createContext as createContext9 } from "@radix-ui/react-context";
3446
- import { Primitive as Primitive16 } from "@radix-ui/react-primitive";
3447
- import { Slot as Slot16 } from "@radix-ui/react-slot";
3448
- import React35, { forwardRef as forwardRef26 } from "react";
3436
+ import { Primitive as Primitive17 } from "@radix-ui/react-primitive";
3437
+ import { Slot as Slot17 } from "@radix-ui/react-slot";
3438
+ import React36, { forwardRef as forwardRef29 } from "react";
3439
+ import { composableProps as composableProps8 } from "@dxos/ui-theme";
3449
3440
  var SCROLLAREA_NAME = "ScrollArea";
3450
3441
  var [ScrollAreaProvider, useScrollAreaContext] = createContext9(SCROLLAREA_NAME);
3451
3442
  var SCROLLAREA_ROOT_NAME = "ScrollArea.Root";
3452
- var ScrollAreaRoot = /* @__PURE__ */ forwardRef26(({ classNames, className, asChild, children, orientation = "vertical", autoHide = true, margin = false, padding = false, thin = false, snap = false, ...props }, forwardedRef) => {
3443
+ var ScrollAreaRoot = /* @__PURE__ */ forwardRef29(({ children, asChild, orientation = "vertical", autoHide = true, margin = false, padding = false, thin = false, snap = false, ...props }, forwardedRef) => {
3444
+ const { className, ...rest } = composableProps8(props);
3445
+ const Comp = asChild ? Slot17 : Primitive17.div;
3453
3446
  const { tx } = useThemeContext();
3454
- const Comp = asChild ? Slot16 : Primitive16.div;
3455
3447
  const options = {
3456
3448
  orientation,
3457
3449
  autoHide,
@@ -3460,21 +3452,18 @@ var ScrollAreaRoot = /* @__PURE__ */ forwardRef26(({ classNames, className, asCh
3460
3452
  thin,
3461
3453
  snap
3462
3454
  };
3463
- return /* @__PURE__ */ React35.createElement(ScrollAreaProvider, options, /* @__PURE__ */ React35.createElement(Comp, {
3464
- ...props,
3465
- className: tx("scrollArea.root", options, [
3466
- className,
3467
- classNames
3468
- ]),
3455
+ return /* @__PURE__ */ React36.createElement(ScrollAreaProvider, options, /* @__PURE__ */ React36.createElement(Comp, {
3456
+ ...rest,
3457
+ className: tx("scrollArea.root", options, className),
3469
3458
  ref: forwardedRef
3470
3459
  }, children));
3471
3460
  });
3472
3461
  ScrollAreaRoot.displayName = SCROLLAREA_ROOT_NAME;
3473
3462
  var SCROLLAREA_VIEWPORT_NAME = "ScrollArea.Viewport";
3474
- var ScrollAreaViewport = /* @__PURE__ */ forwardRef26(({ classNames, children, ...props }, forwardedRef) => {
3463
+ var ScrollAreaViewport = /* @__PURE__ */ forwardRef29(({ classNames, children, ...props }, forwardedRef) => {
3475
3464
  const { tx } = useThemeContext();
3476
3465
  const options = useScrollAreaContext(SCROLLAREA_VIEWPORT_NAME);
3477
- return /* @__PURE__ */ React35.createElement("div", {
3466
+ return /* @__PURE__ */ React36.createElement("div", {
3478
3467
  ...props,
3479
3468
  className: tx("scrollArea.viewport", options, classNames),
3480
3469
  ref: forwardedRef
@@ -3488,17 +3477,17 @@ var ScrollArea = {
3488
3477
 
3489
3478
  // src/components/ScrollContainer/ScrollContainer.tsx
3490
3479
  import { createContext as createContext10 } from "@radix-ui/react-context";
3491
- import React36, { forwardRef as forwardRef27, useCallback as useCallback10, useEffect as useEffect7, useImperativeHandle, useMemo as useMemo5, useRef as useRef5, useState as useState9 } from "react";
3480
+ import React37, { forwardRef as forwardRef30, useCallback as useCallback10, useEffect as useEffect7, useImperativeHandle, useMemo as useMemo5, useRef as useRef5, useState as useState9 } from "react";
3492
3481
  import { addEventListener as addEventListener2, combine } from "@dxos/async";
3493
3482
  import { invariant } from "@dxos/invariant";
3494
3483
  import { useForwardedRef as useForwardedRef2 } from "@dxos/react-hooks";
3495
- import { mx as mx9 } from "@dxos/ui-theme";
3484
+ import { mx as mx10 } from "@dxos/ui-theme";
3496
3485
  var __dxlog_file2 = "/__w/dxos/dxos/packages/ui/react-ui/src/components/ScrollContainer/ScrollContainer.tsx";
3497
3486
  var isBottom = (el) => {
3498
3487
  return !!(el && el.scrollHeight - el.scrollTop === el.clientHeight);
3499
3488
  };
3500
3489
  var [ScrollContainerProvider, useScrollContainerContext] = createContext10("ScrollContainer");
3501
- var Root6 = /* @__PURE__ */ forwardRef27(({ children, classNames, pin, fade, behavior: behaviorProp = "smooth" }, forwardedRef) => {
3490
+ var Root6 = /* @__PURE__ */ forwardRef30(({ children, classNames, pin, fade, behavior: behaviorProp = "smooth" }, forwardedRef) => {
3502
3491
  const scrollerRef = useRef5(null);
3503
3492
  const autoScrollRef = useRef5(false);
3504
3493
  const [overflow, setOverflow] = useState9(false);
@@ -3565,31 +3554,31 @@ var Root6 = /* @__PURE__ */ forwardRef27(({ children, classNames, pin, fade, beh
3565
3554
  })
3566
3555
  );
3567
3556
  }, []);
3568
- return /* @__PURE__ */ React36.createElement(ScrollContainerProvider, {
3557
+ return /* @__PURE__ */ React37.createElement(ScrollContainerProvider, {
3569
3558
  pinned,
3570
3559
  controller,
3571
3560
  scrollToBottom
3572
- }, /* @__PURE__ */ React36.createElement("div", {
3561
+ }, /* @__PURE__ */ React37.createElement("div", {
3573
3562
  className: "relative grid dx-container overflow-hidden"
3574
- }, fade && /* @__PURE__ */ React36.createElement("div", {
3563
+ }, fade && /* @__PURE__ */ React37.createElement("div", {
3575
3564
  role: "none",
3576
3565
  "data-visible": overflow,
3577
- className: mx9(
3566
+ className: mx10(
3578
3567
  // NOTE: Gradients may not be visible with dark reader extensions.
3579
3568
  "z-10 absolute top-0 inset-x-0 h-24 w-full",
3580
3569
  'opacity-0 duration-200 transition-opacity data-[visible="true"]:opacity-100',
3581
3570
  "bg-gradient-to-b from-(--surface-bg) to-transparent pointer-events-none"
3582
3571
  )
3583
- }), /* @__PURE__ */ React36.createElement(ScrollArea.Root, {
3584
- classNames: mx9("min-h-0", classNames),
3572
+ }), /* @__PURE__ */ React37.createElement(ScrollArea.Root, {
3573
+ classNames: mx10("min-h-0", classNames),
3585
3574
  thin: true
3586
- }, /* @__PURE__ */ React36.createElement(ScrollArea.Viewport, {
3575
+ }, /* @__PURE__ */ React37.createElement(ScrollArea.Viewport, {
3587
3576
  ref: scrollerRef
3588
3577
  }, children))));
3589
3578
  });
3590
3579
  Root6.displayName = "ScrollContainer.Root";
3591
3580
  var VIEWPORT_NAME = "ScrollContainer.Viewport";
3592
- var Viewport = /* @__PURE__ */ forwardRef27(({ classNames, children, ...props }, forwardedRef) => {
3581
+ var Viewport = /* @__PURE__ */ forwardRef30(({ classNames, children, ...props }, forwardedRef) => {
3593
3582
  const contentRef = useForwardedRef2(forwardedRef);
3594
3583
  const { pinned, scrollToBottom } = useScrollContainerContext(VIEWPORT_NAME);
3595
3584
  useEffect7(() => {
@@ -3604,8 +3593,8 @@ var Viewport = /* @__PURE__ */ forwardRef27(({ classNames, children, ...props },
3604
3593
  pinned,
3605
3594
  scrollToBottom
3606
3595
  ]);
3607
- return /* @__PURE__ */ React36.createElement("div", {
3608
- className: mx9("w-full", classNames),
3596
+ return /* @__PURE__ */ React37.createElement("div", {
3597
+ className: mx10("w-full", classNames),
3609
3598
  ...props,
3610
3599
  ref: contentRef
3611
3600
  }, children);
@@ -3614,10 +3603,10 @@ Viewport.displayName = VIEWPORT_NAME;
3614
3603
  var SCROLL_DOWN_BUTTON_NAME = "ScrollContainer.ScrollDownButton";
3615
3604
  var ScrollDownButton = ({ classNames }) => {
3616
3605
  const { pinned, scrollToBottom } = useScrollContainerContext(SCROLL_DOWN_BUTTON_NAME);
3617
- return /* @__PURE__ */ React36.createElement("div", {
3606
+ return /* @__PURE__ */ React37.createElement("div", {
3618
3607
  role: "none",
3619
- className: mx9("absolute bottom-2 right-4 opacity-100 transition-opacity duration-300", pinned && "opacity-0", classNames)
3620
- }, /* @__PURE__ */ React36.createElement(IconButton, {
3608
+ className: mx10("absolute bottom-2 right-4 opacity-100 transition-opacity duration-300", pinned && "opacity-0", classNames)
3609
+ }, /* @__PURE__ */ React37.createElement(IconButton, {
3621
3610
  variant: "primary",
3622
3611
  icon: "ph--arrow-down--regular",
3623
3612
  iconOnly: true,
@@ -3635,32 +3624,32 @@ var ScrollContainer = {
3635
3624
 
3636
3625
  // src/components/Select/Select.tsx
3637
3626
  import * as SelectPrimitive from "@radix-ui/react-select";
3638
- import React37, { forwardRef as forwardRef28 } from "react";
3627
+ import React38, { forwardRef as forwardRef31 } from "react";
3639
3628
  var SelectRoot = SelectPrimitive.Root;
3640
3629
  var SelectTrigger = SelectPrimitive.Trigger;
3641
3630
  var SelectValue = SelectPrimitive.Value;
3642
3631
  var SelectIcon = SelectPrimitive.Icon;
3643
3632
  var SelectPortal = SelectPrimitive.Portal;
3644
- var SelectTriggerButton = /* @__PURE__ */ forwardRef28(({ children, placeholder, ...props }, forwardedRef) => {
3645
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Trigger, {
3633
+ var SelectTriggerButton = /* @__PURE__ */ forwardRef31(({ children, placeholder, ...props }, forwardedRef) => {
3634
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Trigger, {
3646
3635
  asChild: true,
3647
3636
  ref: forwardedRef
3648
- }, /* @__PURE__ */ React37.createElement(Button, props, /* @__PURE__ */ React37.createElement(SelectPrimitive.Value, {
3637
+ }, /* @__PURE__ */ React38.createElement(Button, props, /* @__PURE__ */ React38.createElement(SelectPrimitive.Value, {
3649
3638
  placeholder
3650
- }, children), /* @__PURE__ */ React37.createElement("span", {
3639
+ }, children), /* @__PURE__ */ React38.createElement("span", {
3651
3640
  className: "w-1 flex-1"
3652
- }), /* @__PURE__ */ React37.createElement(SelectPrimitive.Icon, {
3641
+ }), /* @__PURE__ */ React38.createElement(SelectPrimitive.Icon, {
3653
3642
  asChild: true
3654
- }, /* @__PURE__ */ React37.createElement(Icon, {
3643
+ }, /* @__PURE__ */ React38.createElement(Icon, {
3655
3644
  size: 3,
3656
3645
  icon: "ph--caret-down--bold"
3657
3646
  }))));
3658
3647
  });
3659
- var SelectContent = /* @__PURE__ */ forwardRef28(({ classNames, children, collisionPadding = 8, ...props }, forwardedRef) => {
3648
+ var SelectContent = /* @__PURE__ */ forwardRef31(({ classNames, children, collisionPadding = 8, ...props }, forwardedRef) => {
3660
3649
  const { tx } = useThemeContext();
3661
3650
  const elevation = useElevationContext();
3662
3651
  const safeCollisionPadding = useSafeCollisionPadding(collisionPadding);
3663
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Content, {
3652
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Content, {
3664
3653
  ...props,
3665
3654
  "data-arrow-keys": "up down",
3666
3655
  collisionPadding: safeCollisionPadding,
@@ -3671,78 +3660,78 @@ var SelectContent = /* @__PURE__ */ forwardRef28(({ classNames, children, collis
3671
3660
  ref: forwardedRef
3672
3661
  }, children);
3673
3662
  });
3674
- var SelectScrollUpButton2 = /* @__PURE__ */ forwardRef28(({ classNames, children, ...props }, forwardedRef) => {
3663
+ var SelectScrollUpButton2 = /* @__PURE__ */ forwardRef31(({ classNames, children, ...props }, forwardedRef) => {
3675
3664
  const { tx } = useThemeContext();
3676
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.SelectScrollUpButton, {
3665
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.SelectScrollUpButton, {
3677
3666
  ...props,
3678
3667
  className: tx("select.scrollButton", {}, classNames),
3679
3668
  ref: forwardedRef
3680
- }, children ?? /* @__PURE__ */ React37.createElement(Icon, {
3669
+ }, children ?? /* @__PURE__ */ React38.createElement(Icon, {
3681
3670
  size: 3,
3682
3671
  icon: "ph--caret-up--bold"
3683
3672
  }));
3684
3673
  });
3685
- var SelectScrollDownButton2 = /* @__PURE__ */ forwardRef28(({ classNames, children, ...props }, forwardedRef) => {
3674
+ var SelectScrollDownButton2 = /* @__PURE__ */ forwardRef31(({ classNames, children, ...props }, forwardedRef) => {
3686
3675
  const { tx } = useThemeContext();
3687
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.SelectScrollDownButton, {
3676
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.SelectScrollDownButton, {
3688
3677
  ...props,
3689
3678
  className: tx("select.scrollButton", {}, classNames),
3690
3679
  ref: forwardedRef
3691
- }, children ?? /* @__PURE__ */ React37.createElement(Icon, {
3680
+ }, children ?? /* @__PURE__ */ React38.createElement(Icon, {
3692
3681
  size: 3,
3693
3682
  icon: "ph--caret-down--bold"
3694
3683
  }));
3695
3684
  });
3696
- var SelectViewport2 = /* @__PURE__ */ forwardRef28(({ classNames, children, ...props }, forwardedRef) => {
3685
+ var SelectViewport2 = /* @__PURE__ */ forwardRef31(({ classNames, children, ...props }, forwardedRef) => {
3697
3686
  const { tx } = useThemeContext();
3698
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.SelectViewport, {
3687
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.SelectViewport, {
3699
3688
  ...props,
3700
3689
  className: tx("select.viewport", {}, classNames),
3701
3690
  ref: forwardedRef
3702
3691
  }, children);
3703
3692
  });
3704
- var SelectItem = /* @__PURE__ */ forwardRef28(({ classNames, ...props }, forwardedRef) => {
3693
+ var SelectItem = /* @__PURE__ */ forwardRef31(({ classNames, ...props }, forwardedRef) => {
3705
3694
  const { tx } = useThemeContext();
3706
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Item, {
3695
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Item, {
3707
3696
  ...props,
3708
3697
  className: tx("select.item", {}, classNames),
3709
3698
  ref: forwardedRef
3710
3699
  });
3711
3700
  });
3712
3701
  var SelectItemText = SelectPrimitive.ItemText;
3713
- var SelectItemIndicator = /* @__PURE__ */ forwardRef28(({ classNames, children, ...props }, forwardedRef) => {
3702
+ var SelectItemIndicator = /* @__PURE__ */ forwardRef31(({ classNames, children, ...props }, forwardedRef) => {
3714
3703
  const { tx } = useThemeContext();
3715
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.ItemIndicator, {
3704
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.ItemIndicator, {
3716
3705
  ...props,
3717
3706
  className: tx("select.itemIndicator", {}, classNames),
3718
3707
  ref: forwardedRef
3719
3708
  }, children);
3720
3709
  });
3721
- var SelectOption = /* @__PURE__ */ forwardRef28(({ children, classNames, ...props }, forwardedRef) => {
3710
+ var SelectOption = /* @__PURE__ */ forwardRef31(({ children, classNames, ...props }, forwardedRef) => {
3722
3711
  const { tx } = useThemeContext();
3723
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Item, {
3712
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Item, {
3724
3713
  ...props,
3725
3714
  className: tx("select.item", {}, classNames),
3726
3715
  ref: forwardedRef
3727
- }, /* @__PURE__ */ React37.createElement(SelectPrimitive.ItemText, null, children), /* @__PURE__ */ React37.createElement("span", {
3716
+ }, /* @__PURE__ */ React38.createElement(SelectPrimitive.ItemText, null, children), /* @__PURE__ */ React38.createElement("span", {
3728
3717
  className: "grow w-1"
3729
- }), /* @__PURE__ */ React37.createElement(Icon, {
3718
+ }), /* @__PURE__ */ React38.createElement(Icon, {
3730
3719
  icon: "ph--check--regular"
3731
3720
  }));
3732
3721
  });
3733
3722
  var SelectGroup = SelectPrimitive.Group;
3734
3723
  var SelectLabel = SelectPrimitive.Label;
3735
- var SelectSeparator = /* @__PURE__ */ forwardRef28(({ classNames, ...props }, forwardedRef) => {
3724
+ var SelectSeparator = /* @__PURE__ */ forwardRef31(({ classNames, ...props }, forwardedRef) => {
3736
3725
  const { tx } = useThemeContext();
3737
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Separator, {
3726
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Separator, {
3738
3727
  ...props,
3739
3728
  className: tx("select.separator", {}, classNames),
3740
3729
  ref: forwardedRef
3741
3730
  });
3742
3731
  });
3743
- var SelectArrow = /* @__PURE__ */ forwardRef28(({ classNames, ...props }, forwardedRef) => {
3732
+ var SelectArrow = /* @__PURE__ */ forwardRef31(({ classNames, ...props }, forwardedRef) => {
3744
3733
  const { tx } = useThemeContext();
3745
- return /* @__PURE__ */ React37.createElement(SelectPrimitive.Arrow, {
3734
+ return /* @__PURE__ */ React38.createElement(SelectPrimitive.Arrow, {
3746
3735
  ...props,
3747
3736
  className: tx("select.arrow", {}, classNames),
3748
3737
  ref: forwardedRef
@@ -3770,10 +3759,10 @@ var Select = {
3770
3759
  };
3771
3760
 
3772
3761
  // src/components/Skeleton/Skeleton.tsx
3773
- import React38, { forwardRef as forwardRef29 } from "react";
3774
- var Skeleton = /* @__PURE__ */ forwardRef29(({ classNames, variant = "default", ...props }, forwardedRef) => {
3762
+ import React39, { forwardRef as forwardRef32 } from "react";
3763
+ var Skeleton = /* @__PURE__ */ forwardRef32(({ classNames, variant = "default", ...props }, forwardedRef) => {
3775
3764
  const { tx } = useThemeContext();
3776
- return /* @__PURE__ */ React38.createElement("div", {
3765
+ return /* @__PURE__ */ React39.createElement("div", {
3777
3766
  ...props,
3778
3767
  className: tx("skeleton.root", {
3779
3768
  variant
@@ -3784,48 +3773,45 @@ var Skeleton = /* @__PURE__ */ forwardRef29(({ classNames, variant = "default",
3784
3773
 
3785
3774
  // src/components/Splitter/Splitter.tsx
3786
3775
  import { createContextScope as createContextScope4 } from "@radix-ui/react-context";
3787
- import { Primitive as Primitive17 } from "@radix-ui/react-primitive";
3788
- import { Slot as Slot17 } from "@radix-ui/react-slot";
3789
- import React39, { forwardRef as forwardRef30 } from "react";
3776
+ import { Primitive as Primitive18 } from "@radix-ui/react-primitive";
3777
+ import { Slot as Slot18 } from "@radix-ui/react-slot";
3778
+ import React40, { forwardRef as forwardRef33 } from "react";
3779
+ import { composableProps as composableProps9 } from "@dxos/ui-theme";
3790
3780
  var SPLITTER_NAME = "Splitter";
3791
3781
  var [createSplitterContext, createSplitterScope] = createContextScope4(SPLITTER_NAME);
3792
3782
  var [SplitterProvider, useSplitterContext] = createSplitterContext(SPLITTER_NAME);
3793
3783
  var ROOT_NAME = "Splitter.Root";
3794
- var Root8 = /* @__PURE__ */ forwardRef30(({ __scopeSplitter, classNames, className, asChild, mode = "upper", ratio = 0.5, transition = 250, children, ...rootProps }, forwardedRef) => {
3784
+ var Root8 = /* @__PURE__ */ forwardRef33(({ __scopeSplitter, asChild, mode = "upper", ratio = 0.5, transition = 250, children, ...props }, forwardedRef) => {
3785
+ const { className, ...rest } = composableProps9(props);
3786
+ const Comp = asChild ? Slot18 : Primitive18.div;
3795
3787
  const { tx } = useThemeContext();
3796
- const Comp = asChild ? Slot17 : Primitive17.div;
3797
- return /* @__PURE__ */ React39.createElement(SplitterProvider, {
3788
+ return /* @__PURE__ */ React40.createElement(SplitterProvider, {
3798
3789
  scope: __scopeSplitter,
3799
3790
  mode,
3800
3791
  ratio,
3801
3792
  transition
3802
- }, /* @__PURE__ */ React39.createElement(Comp, {
3793
+ }, /* @__PURE__ */ React40.createElement(Comp, {
3803
3794
  role: "none",
3804
- ...rootProps,
3795
+ ...rest,
3805
3796
  ref: forwardedRef,
3806
- className: tx("splitter.root", {}, [
3807
- className,
3808
- classNames
3809
- ])
3797
+ className: tx("splitter.root", {}, className)
3810
3798
  }, children));
3811
3799
  });
3812
3800
  Root8.displayName = ROOT_NAME;
3813
3801
  var PANEL_NAME = "Splitter.Panel";
3814
- var Panel2 = /* @__PURE__ */ forwardRef30(({ __scopeSplitter, classNames, className, asChild, children, position, style, ...props }, forwardedRef) => {
3802
+ var Panel2 = /* @__PURE__ */ forwardRef33(({ __scopeSplitter, asChild, children, position, style, ...props }, forwardedRef) => {
3803
+ const { className, ...rest } = composableProps9(props);
3804
+ const Comp = asChild ? Slot18 : Primitive18.div;
3815
3805
  const { mode, ratio, transition } = useSplitterContext(PANEL_NAME, __scopeSplitter);
3816
3806
  const { tx } = useThemeContext();
3817
- const Comp = asChild ? Slot17 : Primitive17.div;
3818
3807
  const isUpper = position === "upper";
3819
3808
  const top = isUpper ? "0%" : mode === "upper" ? "100%" : mode === "lower" ? "0%" : `${ratio * 100}%`;
3820
3809
  const height = isUpper ? mode === "upper" ? "100%" : mode === "lower" ? "0%" : `${ratio * 100}%` : mode === "lower" ? "100%" : mode === "upper" ? "0%" : `${(1 - ratio) * 100}%`;
3821
- return /* @__PURE__ */ React39.createElement(Comp, {
3810
+ return /* @__PURE__ */ React40.createElement(Comp, {
3822
3811
  role: "none",
3823
- ...props,
3812
+ ...rest,
3824
3813
  ref: forwardedRef,
3825
- className: tx("splitter.panel", {}, [
3826
- className,
3827
- classNames
3828
- ]),
3814
+ className: tx("splitter.panel", {}, className),
3829
3815
  style: {
3830
3816
  top,
3831
3817
  height,
@@ -3841,13 +3827,13 @@ var Splitter = {
3841
3827
  };
3842
3828
 
3843
3829
  // src/components/Tag/Tag.tsx
3844
- import { Primitive as Primitive18 } from "@radix-ui/react-primitive";
3845
- import { Slot as Slot18 } from "@radix-ui/react-slot";
3846
- import React40, { forwardRef as forwardRef31 } from "react";
3847
- var Tag = /* @__PURE__ */ forwardRef31(({ asChild, palette = "neutral", classNames, ...props }, forwardedRef) => {
3830
+ import { Primitive as Primitive19 } from "@radix-ui/react-primitive";
3831
+ import { Slot as Slot19 } from "@radix-ui/react-slot";
3832
+ import React41, { forwardRef as forwardRef34 } from "react";
3833
+ var Tag = /* @__PURE__ */ forwardRef34(({ asChild, palette = "neutral", classNames, ...props }, forwardedRef) => {
3848
3834
  const { tx } = useThemeContext();
3849
- const Comp = asChild ? Slot18 : Primitive18.span;
3850
- return /* @__PURE__ */ React40.createElement(Comp, {
3835
+ const Comp = asChild ? Slot19 : Primitive19.span;
3836
+ return /* @__PURE__ */ React41.createElement(Comp, {
3851
3837
  ...props,
3852
3838
  className: tx("tag.root", {
3853
3839
  palette
@@ -3858,59 +3844,59 @@ var Tag = /* @__PURE__ */ forwardRef31(({ asChild, palette = "neutral", classNam
3858
3844
  });
3859
3845
 
3860
3846
  // src/components/Toast/Toast.tsx
3861
- import { Primitive as Primitive19 } from "@radix-ui/react-primitive";
3862
- import { Slot as Slot19 } from "@radix-ui/react-slot";
3847
+ import { Primitive as Primitive20 } from "@radix-ui/react-primitive";
3848
+ import { Slot as Slot20 } from "@radix-ui/react-slot";
3863
3849
  import { ToastAction as ToastActionPrimitive, ToastClose as ToastClosePrimitive, ToastDescription as ToastDescriptionPrimitive, ToastProvider as ToastProviderPrimitive, Root as ToastRootPrimitive, ToastTitle as ToastTitlePrimitive, ToastViewport as ToastViewportPrimitive } from "@radix-ui/react-toast";
3864
- import React41, { forwardRef as forwardRef32 } from "react";
3850
+ import React42, { forwardRef as forwardRef35 } from "react";
3865
3851
  var ToastProvider = ToastProviderPrimitive;
3866
- var ToastViewport = /* @__PURE__ */ forwardRef32(({ classNames, ...props }, forwardedRef) => {
3852
+ var ToastViewport = /* @__PURE__ */ forwardRef35(({ classNames, ...props }, forwardedRef) => {
3867
3853
  const { tx } = useThemeContext();
3868
- return /* @__PURE__ */ React41.createElement(ToastViewportPrimitive, {
3854
+ return /* @__PURE__ */ React42.createElement(ToastViewportPrimitive, {
3869
3855
  className: tx("toast.viewport", {}, classNames),
3870
3856
  ref: forwardedRef
3871
3857
  });
3872
3858
  });
3873
- var ToastRoot = /* @__PURE__ */ forwardRef32(({ classNames, children, ...props }, forwardedRef) => {
3859
+ var ToastRoot = /* @__PURE__ */ forwardRef35(({ classNames, children, ...props }, forwardedRef) => {
3874
3860
  const { tx } = useThemeContext();
3875
- return /* @__PURE__ */ React41.createElement(ToastRootPrimitive, {
3861
+ return /* @__PURE__ */ React42.createElement(ToastRootPrimitive, {
3876
3862
  ...props,
3877
3863
  className: tx("toast.root", {}, classNames),
3878
3864
  ref: forwardedRef
3879
- }, /* @__PURE__ */ React41.createElement(ElevationProvider, {
3865
+ }, /* @__PURE__ */ React42.createElement(ElevationProvider, {
3880
3866
  elevation: "toast"
3881
3867
  }, children));
3882
3868
  });
3883
- var ToastBody = /* @__PURE__ */ forwardRef32(({ asChild, classNames, ...props }, forwardedRef) => {
3869
+ var ToastBody = /* @__PURE__ */ forwardRef35(({ asChild, classNames, ...props }, forwardedRef) => {
3884
3870
  const { tx } = useThemeContext();
3885
- const Comp = asChild ? Slot19 : Primitive19.div;
3886
- return /* @__PURE__ */ React41.createElement(Comp, {
3871
+ const Comp = asChild ? Slot20 : Primitive20.div;
3872
+ return /* @__PURE__ */ React42.createElement(Comp, {
3887
3873
  ...props,
3888
3874
  className: tx("toast.body", {}, classNames),
3889
3875
  ref: forwardedRef
3890
3876
  });
3891
3877
  });
3892
- var ToastTitle = /* @__PURE__ */ forwardRef32(({ asChild, classNames, ...props }, forwardedRef) => {
3878
+ var ToastTitle = /* @__PURE__ */ forwardRef35(({ asChild, classNames, ...props }, forwardedRef) => {
3893
3879
  const { tx } = useThemeContext();
3894
- const Comp = asChild ? Slot19 : ToastTitlePrimitive;
3895
- return /* @__PURE__ */ React41.createElement(Comp, {
3880
+ const Comp = asChild ? Slot20 : ToastTitlePrimitive;
3881
+ return /* @__PURE__ */ React42.createElement(Comp, {
3896
3882
  ...props,
3897
3883
  className: tx("toast.title", {}, classNames),
3898
3884
  ref: forwardedRef
3899
3885
  });
3900
3886
  });
3901
- var ToastDescription = /* @__PURE__ */ forwardRef32(({ asChild, classNames, ...props }, forwardedRef) => {
3887
+ var ToastDescription = /* @__PURE__ */ forwardRef35(({ asChild, classNames, ...props }, forwardedRef) => {
3902
3888
  const { tx } = useThemeContext();
3903
- const Comp = asChild ? Slot19 : ToastDescriptionPrimitive;
3904
- return /* @__PURE__ */ React41.createElement(Comp, {
3889
+ const Comp = asChild ? Slot20 : ToastDescriptionPrimitive;
3890
+ return /* @__PURE__ */ React42.createElement(Comp, {
3905
3891
  ...props,
3906
3892
  className: tx("toast.description", {}, classNames),
3907
3893
  ref: forwardedRef
3908
3894
  });
3909
3895
  });
3910
- var ToastActions = /* @__PURE__ */ forwardRef32(({ asChild, classNames, ...props }, forwardedRef) => {
3896
+ var ToastActions = /* @__PURE__ */ forwardRef35(({ asChild, classNames, ...props }, forwardedRef) => {
3911
3897
  const { tx } = useThemeContext();
3912
- const Comp = asChild ? Slot19 : Primitive19.div;
3913
- return /* @__PURE__ */ React41.createElement(Comp, {
3898
+ const Comp = asChild ? Slot20 : Primitive20.div;
3899
+ return /* @__PURE__ */ React42.createElement(Comp, {
3914
3900
  ...props,
3915
3901
  className: tx("toast.actions", {}, classNames),
3916
3902
  ref: forwardedRef
@@ -3940,6 +3926,7 @@ export {
3940
3926
  Card,
3941
3927
  Clipboard,
3942
3928
  Column,
3929
+ Container,
3943
3930
  ContextMenu2 as ContextMenu,
3944
3931
  DensityContext,
3945
3932
  DensityProvider,