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