@ai-matrx/design-system 0.86.334 → 0.86.336

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 (79) hide show
  1. package/CHANGELOG.md +28 -68
  2. package/dist/carousel.cjs.map +1 -1
  3. package/dist/carousel.js +4 -4
  4. package/dist/{chunk-MFUNGDHO.js → chunk-B24DLFWR.js} +2 -2
  5. package/dist/{chunk-CSSD6NS4.js → chunk-DQUCOMAC.js} +2 -2
  6. package/dist/chunk-L5OACQXS.js +409 -0
  7. package/dist/chunk-L5OACQXS.js.map +1 -0
  8. package/dist/{chunk-6YZMGSQY.js → chunk-M34WPTPX.js} +2 -2
  9. package/dist/{chunk-7NEVJKDZ.js → chunk-MAMZGJJ3.js} +36 -7
  10. package/dist/chunk-MAMZGJJ3.js.map +1 -0
  11. package/dist/{chunk-VV6WZTH5.js → chunk-PBDQZPKV.js} +2 -2
  12. package/dist/{chunk-E4GS5QH7.js → chunk-Q2HWDJED.js} +2 -2
  13. package/dist/{chunk-ZOQ2XKXF.js → chunk-QOEKPR37.js} +5 -5
  14. package/dist/chunk-QOEKPR37.js.map +1 -0
  15. package/dist/{chunk-MEJVHDYJ.js → chunk-RGJPHRU3.js} +2 -2
  16. package/dist/{chunk-3MQMVPKO.js → chunk-VQ3G6AFN.js} +4 -4
  17. package/dist/{chunk-677JS6TX.js → chunk-WZC3K7SO.js} +75 -158
  18. package/dist/chunk-WZC3K7SO.js.map +1 -0
  19. package/dist/clipboard-fallback-dialog.cjs.map +1 -1
  20. package/dist/clipboard-fallback-dialog.js +1 -1
  21. package/dist/controls.cjs +4 -4
  22. package/dist/controls.cjs.map +1 -1
  23. package/dist/controls.css +6 -0
  24. package/dist/controls.js +4 -4
  25. package/dist/data-table/data-row-inspector.cjs.map +1 -1
  26. package/dist/data-table/data-row-inspector.js +4 -4
  27. package/dist/data-table/data-row-window.cjs.map +1 -1
  28. package/dist/data-table/data-row-window.js +5 -5
  29. package/dist/data-table/index.cjs +4 -4
  30. package/dist/data-table/index.cjs.map +1 -1
  31. package/dist/data-table/index.js +7 -7
  32. package/dist/data-table/pagination.cjs +4 -4
  33. package/dist/data-table/pagination.cjs.map +1 -1
  34. package/dist/data-table/pagination.js +2 -2
  35. package/dist/data-table/uuid-cell.cjs.map +1 -1
  36. package/dist/data-table/uuid-cell.js +2 -2
  37. package/dist/desktop.cjs.map +1 -1
  38. package/dist/desktop.js +9 -8
  39. package/dist/desktop.js.map +1 -1
  40. package/dist/index.cjs +1508 -1187
  41. package/dist/index.cjs.map +1 -1
  42. package/dist/index.d.cts +7 -3
  43. package/dist/index.d.ts +7 -3
  44. package/dist/index.js +24 -23
  45. package/dist/index.js.map +1 -1
  46. package/dist/item.cjs +646 -372
  47. package/dist/item.cjs.map +1 -1
  48. package/dist/item.d.cts +1 -3
  49. package/dist/item.d.ts +1 -3
  50. package/dist/item.js +26 -34
  51. package/dist/item.js.map +1 -1
  52. package/dist/lite-table.cjs.map +1 -1
  53. package/dist/lite-table.js +1 -1
  54. package/dist/menu-look.cjs +521 -36
  55. package/dist/menu-look.cjs.map +1 -1
  56. package/dist/menu-look.css +96 -1
  57. package/dist/menu-look.d.cts +320 -37
  58. package/dist/menu-look.d.ts +320 -37
  59. package/dist/menu-look.js +60 -121
  60. package/dist/menu-look.js.map +1 -1
  61. package/dist/record-list.cjs +533 -253
  62. package/dist/record-list.cjs.map +1 -1
  63. package/dist/record-list.js +4 -2
  64. package/dist/record-list.js.map +1 -1
  65. package/dist/settings.cjs.map +1 -1
  66. package/dist/settings.js +2 -2
  67. package/dist/writing-field.cjs.map +1 -1
  68. package/dist/writing-field.js +2 -2
  69. package/package.json +2 -2
  70. package/dist/chunk-677JS6TX.js.map +0 -1
  71. package/dist/chunk-7NEVJKDZ.js.map +0 -1
  72. package/dist/chunk-ZOQ2XKXF.js.map +0 -1
  73. /package/dist/{chunk-MFUNGDHO.js.map → chunk-B24DLFWR.js.map} +0 -0
  74. /package/dist/{chunk-CSSD6NS4.js.map → chunk-DQUCOMAC.js.map} +0 -0
  75. /package/dist/{chunk-6YZMGSQY.js.map → chunk-M34WPTPX.js.map} +0 -0
  76. /package/dist/{chunk-VV6WZTH5.js.map → chunk-PBDQZPKV.js.map} +0 -0
  77. /package/dist/{chunk-E4GS5QH7.js.map → chunk-Q2HWDJED.js.map} +0 -0
  78. /package/dist/{chunk-MEJVHDYJ.js.map → chunk-RGJPHRU3.js.map} +0 -0
  79. /package/dist/{chunk-3MQMVPKO.js.map → chunk-VQ3G6AFN.js.map} +0 -0
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-WFBPCMPF.js";
18
18
  import {
19
19
  Button
20
- } from "./chunk-ZOQ2XKXF.js";
20
+ } from "./chunk-QOEKPR37.js";
21
21
  import "./chunk-BD77DHUO.js";
22
22
  import "./chunk-BKCJUFD3.js";
23
23
  import "./chunk-X6ZRHJQP.js";
@@ -35,19 +35,41 @@ __export(menu_look_exports, {
35
35
  MENU_LOOK_CLASS: () => MENU_LOOK_CLASS,
36
36
  MenuLookCheckboxItem: () => MenuLookCheckboxItem,
37
37
  MenuLookContent: () => MenuLookContent,
38
+ MenuLookContextCheckboxItem: () => MenuLookContextCheckboxItem,
39
+ MenuLookContextContent: () => MenuLookContextContent,
40
+ MenuLookContextItem: () => MenuLookContextItem,
41
+ MenuLookContextLabel: () => MenuLookContextLabel,
42
+ MenuLookContextRadioGroup: () => MenuLookContextRadioGroup,
43
+ MenuLookContextRadioItem: () => MenuLookContextRadioItem,
44
+ MenuLookContextSeparator: () => MenuLookContextSeparator,
45
+ MenuLookContextSub: () => MenuLookContextSub,
46
+ MenuLookContextSubContent: () => MenuLookContextSubContent,
47
+ MenuLookContextSubTrigger: () => MenuLookContextSubTrigger,
38
48
  MenuLookIconSlot: () => MenuLookIconSlot,
39
49
  MenuLookItem: () => MenuLookItem,
40
50
  MenuLookLabel: () => MenuLookLabel,
51
+ MenuLookPanel: () => MenuLookPanel,
52
+ MenuLookPanelControlRow: () => MenuLookPanelControlRow,
53
+ MenuLookPanelDisclosure: () => MenuLookPanelDisclosure,
54
+ MenuLookPanelHeader: () => MenuLookPanelHeader,
55
+ MenuLookPanelItem: () => MenuLookPanelItem,
56
+ MenuLookPanelLabel: () => MenuLookPanelLabel,
57
+ MenuLookPanelSeparator: () => MenuLookPanelSeparator,
58
+ MenuLookPopoverContent: () => MenuLookPopoverContent,
59
+ MenuLookRadioGroup: () => MenuLookRadioGroup,
60
+ MenuLookRadioItem: () => MenuLookRadioItem,
41
61
  MenuLookRowBody: () => MenuLookRowBody,
42
62
  MenuLookSearch: () => MenuLookSearch,
43
63
  MenuLookSeparator: () => MenuLookSeparator,
64
+ MenuLookSub: () => MenuLookSub,
44
65
  MenuLookSubContent: () => MenuLookSubContent,
45
66
  MenuLookSubTrigger: () => MenuLookSubTrigger,
46
67
  menuLookItemClass: () => menuLookItemClass
47
68
  });
48
69
  module.exports = __toCommonJS(menu_look_exports);
49
- var React6 = __toESM(require("react"), 1);
70
+ var React8 = __toESM(require("react"), 1);
50
71
  var DropdownMenuPrimitive2 = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
72
+ var ContextMenuPrimitive2 = __toESM(require("@radix-ui/react-context-menu"), 1);
51
73
 
52
74
  // src/dropdown-menu.tsx
53
75
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
@@ -547,15 +569,244 @@ var DropdownMenuShortcut = ({
547
569
  );
548
570
  DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
549
571
 
550
- // src/menu-look.tsx
572
+ // src/context-menu.tsx
573
+ var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"), 1);
574
+ var React6 = __toESM(require("react"), 1);
551
575
  var import_jsx_runtime6 = require("react/jsx-runtime");
576
+ var SURFACE_CLASS = "z-[10001] min-w-[8rem] max-h-[var(--radix-context-menu-content-available-height)] overflow-y-auto overflow-x-hidden overscroll-contain rounded-md border bg-popover p-1 text-popover-foreground";
577
+ var ITEM_CLASS = "relative flex select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:text-disabled-foreground";
578
+ var INDICATOR_ITEM_CLASS = "relative flex select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:text-disabled-foreground";
579
+ var ContextMenuSubTrigger = React6.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
580
+ ContextMenuPrimitive.SubTrigger,
581
+ {
582
+ ref,
583
+ "data-slot": "context-menu-sub-trigger",
584
+ className: cn(
585
+ "flex select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",
586
+ inset && "pl-8",
587
+ className
588
+ ),
589
+ ...props,
590
+ children: [
591
+ children,
592
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
593
+ ]
594
+ }
595
+ ));
596
+ ContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;
597
+ var ContextMenuSubContent = React6.forwardRef(({ className, container, onFocusOutside, collisionPadding, children, ...props }, ref) => {
598
+ const portalContainer = usePortalContainer(container);
599
+ const nested = useNestedSubmenuPlacement(ref, collisionPadding);
600
+ const keep = useSubmenuSurvivesParentPanelFocus(nested.ref, onFocusOutside);
601
+ const edges = useMenuScrollEdges(keep.ref);
602
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
603
+ ContextMenuPrimitive.SubContent,
604
+ {
605
+ ref: edges.ref,
606
+ onFocusOutside: keep.onFocusOutside,
607
+ ...nested.padding === void 0 ? {} : { collisionPadding: nested.padding },
608
+ "data-slot": "context-menu-sub-content",
609
+ className: cn(SURFACE_CLASS, edges.surfaceClassName, "shadow-lg", MOTION_POPPER, className),
610
+ ...props,
611
+ children: nested.wrap(edges.wrap(children))
612
+ }
613
+ ) });
614
+ });
615
+ ContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;
616
+ function OpenStamp({ at }) {
617
+ React6.useLayoutEffect(() => {
618
+ at.current = Date.now();
619
+ }, [at]);
620
+ return null;
621
+ }
622
+ var ContextMenuContent = React6.forwardRef(({ className, container, children, onCloseAutoFocus, onPointerDownCapture, onPointerUpCapture, ...props }, ref) => {
623
+ const portalContainer = usePortalContainer(container);
624
+ const edges = useMenuScrollEdges(ref);
625
+ const openedAt = React6.useRef(0);
626
+ const pressedHere = React6.useRef(false);
627
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
628
+ ContextMenuPrimitive.Content,
629
+ {
630
+ ref: edges.ref,
631
+ onPointerDownCapture: (event) => {
632
+ pressedHere.current = true;
633
+ onPointerDownCapture?.(event);
634
+ },
635
+ onPointerUpCapture: (event) => {
636
+ if (!pressedHere.current && Date.now() - openedAt.current < 350) event.preventDefault();
637
+ pressedHere.current = false;
638
+ onPointerUpCapture?.(event);
639
+ },
640
+ "data-slot": "context-menu-content",
641
+ className: cn(SURFACE_CLASS, edges.surfaceClassName, "shadow-md", MOTION_POPPER, className),
642
+ ...props,
643
+ onCloseAutoFocus: keepMovedFocus(onCloseAutoFocus),
644
+ children: [
645
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(OpenStamp, { at: openedAt }),
646
+ edges.wrap(children)
647
+ ]
648
+ }
649
+ ) });
650
+ });
651
+ ContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;
652
+ var ContextMenuItem = React6.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
653
+ ContextMenuPrimitive.Item,
654
+ {
655
+ ref,
656
+ "data-slot": "context-menu-item",
657
+ className: cn(
658
+ ITEM_CLASS,
659
+ "gap-2 [&>svg]:size-4 [&>svg]:shrink-0",
660
+ inset && "pl-8",
661
+ className
662
+ ),
663
+ ...props
664
+ }
665
+ ));
666
+ ContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;
667
+ var ContextMenuCheckboxItem = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
668
+ ContextMenuPrimitive.CheckboxItem,
669
+ {
670
+ ref,
671
+ "data-slot": "context-menu-checkbox-item",
672
+ className: cn(INDICATOR_ITEM_CLASS, className),
673
+ ...props,
674
+ children: [
675
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RadixCheckIcon, { className: "h-4 w-4" }) }) }),
676
+ children
677
+ ]
678
+ }
679
+ ));
680
+ ContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;
681
+ var ContextMenuRadioItem = React6.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
682
+ ContextMenuPrimitive.RadioItem,
683
+ {
684
+ ref,
685
+ "data-slot": "context-menu-radio-item",
686
+ className: cn(INDICATOR_ITEM_CLASS, className),
687
+ ...props,
688
+ children: [
689
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
690
+ children
691
+ ]
692
+ }
693
+ ));
694
+ ContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;
695
+ var ContextMenuLabel = React6.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
696
+ ContextMenuPrimitive.Label,
697
+ {
698
+ ref,
699
+ "data-slot": "context-menu-label",
700
+ className: cn(
701
+ "type-label px-2 pb-1 pt-2 text-muted-foreground",
702
+ inset && "pl-8",
703
+ className
704
+ ),
705
+ ...props
706
+ }
707
+ ));
708
+ ContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;
709
+ var ContextMenuSeparator = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
710
+ ContextMenuPrimitive.Separator,
711
+ {
712
+ ref,
713
+ "data-slot": "context-menu-separator",
714
+ className: cn("-mx-1 my-1 h-px bg-border", className),
715
+ ...props
716
+ }
717
+ ));
718
+ ContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;
719
+ var ContextMenuShortcut = ({
720
+ className,
721
+ ...props
722
+ }) => /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
723
+ "span",
724
+ {
725
+ "data-slot": "context-menu-shortcut",
726
+ className: cn("ml-auto text-xs tracking-widest text-muted-foreground", className),
727
+ ...props
728
+ }
729
+ );
730
+ ContextMenuShortcut.displayName = "ContextMenuShortcut";
731
+
732
+ // src/popover.tsx
733
+ var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"), 1);
734
+ var React7 = __toESM(require("react"), 1);
735
+ var import_jsx_runtime7 = require("react/jsx-runtime");
736
+ var POPOVER_WIDTH_CLASS = {
737
+ xs: "w-48",
738
+ sm: "w-60",
739
+ md: "w-72",
740
+ lg: "w-80",
741
+ xl: "w-[26rem]",
742
+ "2xl": "w-[34rem]"
743
+ };
744
+ var POPOVER_PADDING_CLASS = {
745
+ none: "p-0",
746
+ xs: "p-1",
747
+ sm: "p-2",
748
+ md: "p-3",
749
+ default: "p-4"
750
+ };
751
+ var PopoverContent = React7.forwardRef(
752
+ ({
753
+ className,
754
+ align = "center",
755
+ sideOffset = 4,
756
+ container,
757
+ animated = true,
758
+ sizing = "fixed",
759
+ surface = "default",
760
+ width = "md",
761
+ padding = "default",
762
+ collisionPadding = 16,
763
+ onCloseAutoFocus,
764
+ ...props
765
+ }, ref) => {
766
+ const portalContainer = usePortalContainer(container);
767
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(PopoverPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
768
+ PopoverPrimitive.Content,
769
+ {
770
+ ref,
771
+ align,
772
+ sideOffset,
773
+ collisionPadding,
774
+ "data-surface": surface === "solid" ? "solid" : void 0,
775
+ "data-width": sizing === "content" ? void 0 : width,
776
+ "data-padding": padding,
777
+ className: cn(
778
+ // Cap to the viewport space Radix measured and scroll — a popover taller
779
+ // than the screen must never trap the user with unreachable content.
780
+ // z must EQUAL the dialog layer (z-[10000]), never exceed it: with equal
781
+ // z, DOM portal order decides, so a dialog opened FROM a popover stacks
782
+ // above it, and a popover opened from a dialog still stacks above the
783
+ // dialog. z-[10001] buried dialogs behind fullscreen popovers.
784
+ "z-[10000] max-h-[var(--radix-popover-content-available-height)] overflow-y-auto overscroll-contain rounded-md border bg-popover text-popover-foreground shadow-md outline-none",
785
+ POPOVER_PADDING_CLASS[padding],
786
+ sizing === "content" ? "w-auto min-w-[min(max(var(--radix-popover-trigger-width),20rem),calc(100vw-2rem))] max-w-[min(28rem,calc(100vw-2rem))]" : cn(POPOVER_WIDTH_CLASS[width], "max-w-[calc(100vw-2rem)]"),
787
+ surface === "solid" && SOLID_SURFACE_CLASS,
788
+ animated && MOTION_POPPER,
789
+ className
790
+ ),
791
+ ...props,
792
+ onCloseAutoFocus: keepMovedFocus(onCloseAutoFocus)
793
+ }
794
+ ) });
795
+ }
796
+ );
797
+ PopoverContent.displayName = PopoverPrimitive.Content.displayName;
798
+
799
+ // src/menu-look.tsx
800
+ var import_jsx_runtime8 = require("react/jsx-runtime");
552
801
  var MENU_LOOK = {
553
802
  width: 280,
554
803
  largeWidth: 360,
555
804
  rowHeight: 30,
805
+ sheetRowHeight: 44,
556
806
  fontSize: 13,
557
807
  lineHeight: 1.25,
558
808
  icon: 16,
809
+ headerMark: 28,
559
810
  rowPaddingY: 4,
560
811
  rowPaddingX: 8,
561
812
  radius: 10
@@ -569,83 +820,317 @@ var MENU_LOOK_CLASS = {
569
820
  label: "cm-label",
570
821
  hint: "cm-hint",
571
822
  current: "cm-current",
823
+ chevron: "cm-chevron",
572
824
  search: "cm-search",
573
825
  trail: "cm-trail",
826
+ badge: "cm-badge",
574
827
  shortcut: "cm-shortcut",
828
+ control: "cm-control",
575
829
  divider: "cm-divider",
576
830
  sectionLabel: "cm-section-label",
831
+ header: "cm-header",
832
+ headerMark: "cm-header-mark",
833
+ headerText: "cm-header-text",
834
+ headerTitle: "cm-header-title",
835
+ headerSubtitle: "cm-header-subtitle",
577
836
  danger: "cm-danger",
578
837
  dimmed: "cm-dimmed"
579
838
  };
580
839
  function MenuLookIconSlot({ children }) {
581
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: MENU_LOOK_CLASS.iconSlot, children });
582
- }
583
- function MenuLookRowBody({ icon, label, description, trail, current }) {
584
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
585
- icon ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuLookIconSlot, { children: icon }) : null,
586
- /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { className: MENU_LOOK_CLASS.text, children: [
587
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: MENU_LOOK_CLASS.label, children: label }),
588
- description ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: MENU_LOOK_CLASS.hint, children: description }) : null
840
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.iconSlot, children });
841
+ }
842
+ function MenuLookRowBody({ icon, label, labelTitle, description, trail, badge, shortcut, current }) {
843
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
844
+ icon ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookIconSlot, { children: icon }) : null,
845
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("span", { className: MENU_LOOK_CLASS.text, children: [
846
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.label, title: labelTitle, children: label }),
847
+ description ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.hint, children: description }) : null
589
848
  ] }),
590
- trail ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: MENU_LOOK_CLASS.trail, children: trail }) : null,
591
- current ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RadixCheckIcon, { className: MENU_LOOK_CLASS.current, "aria-hidden": "true", "data-menu-current-mark": "" }) : null
849
+ trail ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.trail, children: trail }) : null,
850
+ badge ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.badge, children: badge }) : null,
851
+ shortcut ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("kbd", { className: MENU_LOOK_CLASS.shortcut, children: shortcut }) : null,
852
+ current ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixCheckIcon, { className: MENU_LOOK_CLASS.current, "aria-hidden": "true", "data-menu-current-mark": "" }) : null
592
853
  ] });
593
854
  }
594
855
  function menuLookItemClass({ destructive, dimmed } = {}) {
595
856
  return `${MENU_LOOK_CLASS.item}${destructive ? ` ${MENU_LOOK_CLASS.danger}` : ""}${dimmed ? ` ${MENU_LOOK_CLASS.dimmed}` : ""}`;
596
857
  }
597
- var MenuLookContent = React6.forwardRef(function MenuLookContent2({ size = "standard", density = "comfortable", ...props }, ref) {
598
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
858
+ function DeclaredOverflow({ label, children }) {
859
+ const fade = useScrollFade();
860
+ const viewport = React8.useRef(null);
861
+ const setViewport = React8.useCallback(
862
+ (node) => {
863
+ viewport.current = node;
864
+ fade.ref(node);
865
+ },
866
+ [fade.ref]
867
+ );
868
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
869
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { ref: setViewport, className: "cm-viewport", "data-slot": "menu-look-viewport", children }),
870
+ fade.state.bottom ? /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
871
+ "button",
872
+ {
873
+ type: "button",
874
+ className: "cm-more-below",
875
+ "data-slot": "menu-look-more-below",
876
+ tabIndex: -1,
877
+ "aria-hidden": "true",
878
+ onPointerDown: (event) => event.preventDefault(),
879
+ onClick: () => viewport.current?.scrollTo({ top: viewport.current.scrollHeight, behavior: "smooth" }),
880
+ children: [
881
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixChevronDownIcon, { "aria-hidden": "true" }),
882
+ label
883
+ ]
884
+ }
885
+ ) : null
886
+ ] });
887
+ }
888
+ var MenuLookContent = React8.forwardRef(function MenuLookContent2({ size = "standard", density = "comfortable", moreBelowLabel, children, ...props }, ref) {
889
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
599
890
  DropdownMenuContent,
600
891
  {
601
892
  ref,
602
893
  surface: "solid",
603
894
  "data-menu-look": "",
895
+ "data-menu-family": "dropdown",
604
896
  "data-size": size,
605
897
  "data-density": density,
898
+ ...moreBelowLabel ? { "data-overflow": "declared" } : {},
606
899
  ...props,
607
- className: MENU_LOOK_CLASS.panel
900
+ className: MENU_LOOK_CLASS.panel,
901
+ children: moreBelowLabel ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(DeclaredOverflow, { label: moreBelowLabel, children }) : children
608
902
  }
609
903
  );
610
904
  });
611
- var MenuLookSubContent = React6.forwardRef(function MenuLookSubContent2({ size = "standard", density = "comfortable", ...props }, ref) {
612
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
905
+ var MenuLookSubContent = React8.forwardRef(function MenuLookSubContent2({ size = "standard", density = "comfortable", fit = "menu", ...props }, ref) {
906
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
613
907
  DropdownMenuSubContent,
614
908
  {
615
909
  ref,
616
910
  surface: "solid",
617
911
  "data-menu-look": "",
912
+ "data-menu-family": "dropdown",
618
913
  "data-size": size,
619
914
  "data-density": density,
915
+ "data-fit": fit,
620
916
  ...props,
621
917
  className: MENU_LOOK_CLASS.panel
622
918
  }
623
919
  );
624
920
  });
625
- var MenuLookItem = React6.forwardRef(function MenuLookItem2({ icon, label, description, trail, current, destructive, dimmed, href, target, linkProps, ...props }, ref) {
626
- const className = menuLookItemClass({ destructive, dimmed });
627
- const body = /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuLookRowBody, { icon, label, description, trail, current });
628
- const mark = current ? { "data-current": "" } : {};
629
- if (href) {
630
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuPrimitive2.Item, { ref, asChild: true, ...props, ...mark, className, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("a", { href, target, rel: target === "_blank" ? "noopener noreferrer" : void 0, ...linkProps, children: body }) });
631
- }
632
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuPrimitive2.Item, { ref, ...props, ...mark, className, children: body });
921
+ var MenuLookContextContent = React8.forwardRef(function MenuLookContextContent2({ size = "standard", density = "comfortable", ...props }, ref) {
922
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
923
+ ContextMenuContent,
924
+ {
925
+ ref,
926
+ "data-menu-look": "",
927
+ "data-menu-family": "context",
928
+ "data-size": size,
929
+ "data-density": density,
930
+ ...props,
931
+ className: MENU_LOOK_CLASS.panel
932
+ }
933
+ );
633
934
  });
634
- var MenuLookSubTrigger = React6.forwardRef(function MenuLookSubTrigger2({ icon, label, description, trail, ...props }, ref) {
635
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuSubTrigger, { ref, ...props, className: MENU_LOOK_CLASS.item, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuLookRowBody, { icon, label, description, trail }) });
935
+ var MenuLookContextSubContent = React8.forwardRef(function MenuLookContextSubContent2({ size = "standard", density = "comfortable", fit = "menu", ...props }, ref) {
936
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
937
+ ContextMenuSubContent,
938
+ {
939
+ ref,
940
+ "data-menu-look": "",
941
+ "data-menu-family": "context",
942
+ "data-size": size,
943
+ "data-density": density,
944
+ "data-fit": fit,
945
+ ...props,
946
+ className: MENU_LOOK_CLASS.panel
947
+ }
948
+ );
949
+ });
950
+ function menuLookRows(P, family) {
951
+ const Item3 = React8.forwardRef(function MenuLookItem2({ icon, label, labelTitle, description, trail, badge, shortcut, current, destructive, dimmed, href, target, linkProps, ...props }, ref) {
952
+ const className = menuLookItemClass({ destructive, dimmed });
953
+ const body = /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label, labelTitle, description, trail, badge, shortcut, current });
954
+ const mark = current ? { "data-current": "" } : {};
955
+ if (href) {
956
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.Item, { ref, asChild: true, "data-slot": `${family}-item`, ...props, ...mark, className, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("a", { href, target, rel: target === "_blank" ? "noopener noreferrer" : void 0, ...linkProps, children: body }) });
957
+ }
958
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.Item, { ref, "data-slot": `${family}-item`, ...props, ...mark, className, children: body });
959
+ });
960
+ const SubTrigger3 = React8.forwardRef(function MenuLookSubTrigger2({ icon, label, labelTitle, description, trail, badge, shortcut, current, ...props }, ref) {
961
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(P.SubTrigger, { ref, "data-slot": `${family}-sub-trigger`, ...props, ...current ? { "data-current": "" } : {}, className: MENU_LOOK_CLASS.item, children: [
962
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label, labelTitle, description, trail, badge, shortcut }),
963
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixChevronRightIcon, { className: MENU_LOOK_CLASS.chevron, "aria-hidden": "true" })
964
+ ] });
965
+ });
966
+ const CheckboxItem3 = React8.forwardRef(function MenuLookCheckboxItem2({ icon, label, labelTitle, description, trail, badge, shortcut, checked, ...props }, ref) {
967
+ const on = checked === true;
968
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.CheckboxItem, { ref, ...checked === void 0 ? {} : { checked }, ...props, className: MENU_LOOK_CLASS.item, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon: on ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixCheckIcon, { className: MENU_LOOK_CLASS.icon }) : icon ?? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.icon, "aria-hidden": "true" }), label, labelTitle, description, trail, badge, shortcut }) });
969
+ });
970
+ const RadioItem3 = React8.forwardRef(function MenuLookRadioItem2({ icon, label, labelTitle, description, trail, badge, shortcut, ...props }, ref) {
971
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(P.RadioItem, { ref, ...props, className: MENU_LOOK_CLASS.item, children: [
972
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label, labelTitle, description, trail, badge, shortcut }),
973
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.ItemIndicator, { className: MENU_LOOK_CLASS.current, "data-menu-current-mark": "", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixCheckIcon, { "aria-hidden": "true" }) })
974
+ ] });
975
+ });
976
+ const Label3 = React8.forwardRef(function MenuLookLabel2({ description, children, ...props }, ref) {
977
+ if (!description) return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.Label, { ref, ...props, className: MENU_LOOK_CLASS.sectionLabel, children });
978
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(P.Label, { ref, ...props, "data-has-hint": "", className: MENU_LOOK_CLASS.sectionLabel, children: [
979
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { children }),
980
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.hint, children: description })
981
+ ] });
982
+ });
983
+ const Separator3 = React8.forwardRef(function MenuLookSeparator2(props, ref) {
984
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(P.Separator, { ref, ...props, className: MENU_LOOK_CLASS.divider });
985
+ });
986
+ return { Item: Item3, SubTrigger: SubTrigger3, CheckboxItem: CheckboxItem3, RadioItem: RadioItem3, Label: Label3, Separator: Separator3 };
987
+ }
988
+ var dropdownRows = menuLookRows(DropdownMenuPrimitive2, "dropdown-menu");
989
+ var contextRows = menuLookRows(ContextMenuPrimitive2, "context-menu");
990
+ var MenuLookItem = dropdownRows.Item;
991
+ var MenuLookSub = DropdownMenuPrimitive2.Sub;
992
+ var MenuLookSubTrigger = dropdownRows.SubTrigger;
993
+ var MenuLookCheckboxItem = dropdownRows.CheckboxItem;
994
+ var MenuLookRadioGroup = DropdownMenuPrimitive2.RadioGroup;
995
+ var MenuLookRadioItem = dropdownRows.RadioItem;
996
+ var MenuLookLabel = dropdownRows.Label;
997
+ var MenuLookSeparator = dropdownRows.Separator;
998
+ var MenuLookContextItem = contextRows.Item;
999
+ var MenuLookContextSub = ContextMenuPrimitive2.Sub;
1000
+ var MenuLookContextSubTrigger = contextRows.SubTrigger;
1001
+ var MenuLookContextCheckboxItem = contextRows.CheckboxItem;
1002
+ var MenuLookContextRadioGroup = ContextMenuPrimitive2.RadioGroup;
1003
+ var MenuLookContextRadioItem = contextRows.RadioItem;
1004
+ var MenuLookContextLabel = contextRows.Label;
1005
+ var MenuLookContextSeparator = contextRows.Separator;
1006
+ var MenuLookPanel = React8.forwardRef(function MenuLookPanel2({ size = "standard", density = "comfortable", surface = "floating", fillBelow, role = "menu", ...props }, ref) {
1007
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1008
+ "div",
1009
+ {
1010
+ ref,
1011
+ role,
1012
+ "data-menu-look": "",
1013
+ "data-menu-family": "panel",
1014
+ "data-surface": surface,
1015
+ ...fillBelow ? { "data-fill-below": fillBelow } : {},
1016
+ "data-size": size,
1017
+ "data-density": density,
1018
+ ...props,
1019
+ className: MENU_LOOK_CLASS.panel
1020
+ }
1021
+ );
636
1022
  });
637
- var MenuLookCheckboxItem = React6.forwardRef(function MenuLookCheckboxItem2({ icon, label, description, trail, checked, ...props }, ref) {
638
- const on = checked === true;
639
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuPrimitive2.CheckboxItem, { ref, ...checked === void 0 ? {} : { checked }, ...props, className: MENU_LOOK_CLASS.item, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(MenuLookRowBody, { icon: on ? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(RadixCheckIcon, { className: MENU_LOOK_CLASS.icon }) : icon ?? /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: MENU_LOOK_CLASS.icon, "aria-hidden": "true" }), label, description, trail }) });
1023
+ var MenuLookPopoverContent = React8.forwardRef(function MenuLookPopoverContent2({ size = "standard", density = "comfortable", role = "menu", ...props }, ref) {
1024
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1025
+ PopoverContent,
1026
+ {
1027
+ ref,
1028
+ role,
1029
+ surface: "solid",
1030
+ padding: "none",
1031
+ animated: true,
1032
+ "data-menu-look": "",
1033
+ "data-menu-family": "panel",
1034
+ "data-in-popover": "",
1035
+ "data-surface": "floating",
1036
+ "data-size": size,
1037
+ "data-density": density,
1038
+ ...props,
1039
+ className: MENU_LOOK_CLASS.panel
1040
+ }
1041
+ );
640
1042
  });
641
- var MenuLookLabel = React6.forwardRef(function MenuLookLabel2(props, ref) {
642
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuPrimitive2.Label, { ref, ...props, className: MENU_LOOK_CLASS.sectionLabel });
1043
+ var MenuLookPanelItem = React8.forwardRef(function MenuLookPanelItem2({ icon, label, labelTitle, description, trail, badge, shortcut, current, pressed, destructive, dimmed, href, target, rel, as, linkProps, onClick, role = "menuitem", ...props }, ref) {
1044
+ const marked = Boolean(current || pressed);
1045
+ const body = /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label, labelTitle, description, trail, badge, shortcut, current: marked });
1046
+ const className = menuLookItemClass({ destructive, dimmed });
1047
+ const mark = marked ? { "data-current": "" } : {};
1048
+ if (href) {
1049
+ const Link = as ?? "a";
1050
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1051
+ Link,
1052
+ {
1053
+ ref,
1054
+ href,
1055
+ target,
1056
+ rel: rel ?? (target === "_blank" ? "noopener noreferrer" : void 0),
1057
+ role,
1058
+ onClick,
1059
+ ...props,
1060
+ ...linkProps,
1061
+ ...mark,
1062
+ className,
1063
+ children: body
1064
+ }
1065
+ );
1066
+ }
1067
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1068
+ "button",
1069
+ {
1070
+ ref,
1071
+ type: "button",
1072
+ role,
1073
+ onClick,
1074
+ ...pressed === void 0 ? {} : { "aria-pressed": pressed },
1075
+ ...props,
1076
+ ...mark,
1077
+ className,
1078
+ children: body
1079
+ }
1080
+ );
643
1081
  });
644
- var MenuLookSeparator = React6.forwardRef(function MenuLookSeparator2(props, ref) {
645
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(DropdownMenuPrimitive2.Separator, { ref, ...props, className: MENU_LOOK_CLASS.divider });
1082
+ var MenuLookPanelControlRow = React8.forwardRef(function MenuLookPanelControlRow2({ icon, label, description, control, as = "div", ...props }, ref) {
1083
+ const Row = as;
1084
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(Row, { ref, "data-control-row": "", ...props, className: MENU_LOOK_CLASS.item, children: [
1085
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label, description }),
1086
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.control, children: control })
1087
+ ] });
646
1088
  });
647
- var MenuLookSearch = React6.forwardRef(function MenuLookSearch2({ placeholder = "Search", ...props }, ref) {
648
- return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: MENU_LOOK_CLASS.search, "data-menu-look-search": "", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
1089
+ function MenuLookPanelHeader({ mark, title, subtitle, href, as, linkProps, onClick, ...data }) {
1090
+ const body = /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
1091
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.headerMark, children: mark }),
1092
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("span", { className: MENU_LOOK_CLASS.headerText, children: [
1093
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.headerTitle, children: title }),
1094
+ subtitle ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("span", { className: MENU_LOOK_CLASS.headerSubtitle, children: subtitle }) : null
1095
+ ] })
1096
+ ] });
1097
+ if (href) {
1098
+ const Link = as ?? "a";
1099
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Link, { href, onClick, "data-menu-look-header": "", ...data, ...linkProps, className: MENU_LOOK_CLASS.header, children: body });
1100
+ }
1101
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { "data-menu-look-header": "", ...data, className: MENU_LOOK_CLASS.header, children: body });
1102
+ }
1103
+ function MenuLookPanelDisclosure({ icon, label, children, pending, defaultOpen = false, open: openProp, onOpenChange, ...data }) {
1104
+ const [ownOpen, setOwnOpen] = React8.useState(defaultOpen);
1105
+ const open = openProp ?? ownOpen;
1106
+ const id = React8.useId();
1107
+ const toggle = () => {
1108
+ const next = !open;
1109
+ if (openProp === void 0) setOwnOpen(next);
1110
+ onOpenChange?.(next);
1111
+ };
1112
+ if (pending) {
1113
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { "data-menu-look-disclosure": "", "data-pending": "", "aria-hidden": "true", ...data, children: /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { className: MENU_LOOK_CLASS.item, children: [
1114
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label }),
1115
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixChevronDownIcon, { className: MENU_LOOK_CLASS.chevron, "aria-hidden": "true", "data-disclosure-chevron": "" })
1116
+ ] }) });
1117
+ }
1118
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { "data-menu-look-disclosure": "", ...data, children: [
1119
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("button", { type: "button", className: MENU_LOOK_CLASS.item, "aria-expanded": open, "aria-controls": id, onClick: toggle, children: [
1120
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(MenuLookRowBody, { icon, label }),
1121
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(RadixChevronDownIcon, { className: MENU_LOOK_CLASS.chevron, "aria-hidden": "true", "data-disclosure-chevron": "" })
1122
+ ] }),
1123
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { id, role: "group", hidden: !open, children })
1124
+ ] });
1125
+ }
1126
+ function MenuLookPanelLabel({ children, ...data }) {
1127
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { ...data, className: MENU_LOOK_CLASS.sectionLabel, children });
1128
+ }
1129
+ function MenuLookPanelSeparator() {
1130
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { role: "separator", className: MENU_LOOK_CLASS.divider });
1131
+ }
1132
+ var MenuLookSearch = React8.forwardRef(function MenuLookSearch2({ placeholder = "Search", ...props }, ref) {
1133
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: MENU_LOOK_CLASS.search, "data-menu-look-search": "", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
649
1134
  "input",
650
1135
  {
651
1136
  ref,