@stackone/malachite 2.37.1 → 2.39.0

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 (102) hide show
  1. package/COMPONENTS.md +7 -2
  2. package/dist/ShadowRootWrapper.js +33 -59
  3. package/dist/ShadowRootWrapper.js.map +1 -1
  4. package/dist/assets/icons/account.svg.js +2 -2
  5. package/dist/assets/icons/account.svg.js.map +1 -1
  6. package/dist/assets/icons/building.svg.js +6 -0
  7. package/dist/assets/icons/building.svg.js.map +1 -0
  8. package/dist/assets/icons/chevrons_up_down.svg.js +6 -0
  9. package/dist/assets/icons/chevrons_up_down.svg.js.map +1 -0
  10. package/dist/assets/icons/connector.svg.js +6 -0
  11. package/dist/assets/icons/connector.svg.js.map +1 -0
  12. package/dist/assets/icons/external_link.svg.js +6 -0
  13. package/dist/assets/icons/external_link.svg.js.map +1 -0
  14. package/dist/assets/icons/field_coverage.svg.js +6 -0
  15. package/dist/assets/icons/field_coverage.svg.js.map +1 -0
  16. package/dist/assets/icons/layout.svg.js +6 -0
  17. package/dist/assets/icons/layout.svg.js.map +1 -0
  18. package/dist/assets/icons/link.svg.js +6 -0
  19. package/dist/assets/icons/link.svg.js.map +1 -0
  20. package/dist/assets/icons/playground.svg.js +6 -0
  21. package/dist/assets/icons/playground.svg.js.map +1 -0
  22. package/dist/components/ActionMenu.js +142 -171
  23. package/dist/components/ActionMenu.js.map +1 -1
  24. package/dist/components/ActionMenuTagHost.js +19 -0
  25. package/dist/components/ActionMenuTagHost.js.map +1 -0
  26. package/dist/components/Breadcrumbs.js +7 -7
  27. package/dist/components/Breadcrumbs.js.map +1 -1
  28. package/dist/components/Chat/ChatModelPicker.js +64 -60
  29. package/dist/components/Chat/ChatModelPicker.js.map +1 -1
  30. package/dist/components/CustomIcons/BuildingIcon.js +16 -0
  31. package/dist/components/CustomIcons/BuildingIcon.js.map +1 -0
  32. package/dist/components/CustomIcons/ChevronsUpDownIcon.js +16 -0
  33. package/dist/components/CustomIcons/ChevronsUpDownIcon.js.map +1 -0
  34. package/dist/components/CustomIcons/ConnectorIcon.js +16 -0
  35. package/dist/components/CustomIcons/ConnectorIcon.js.map +1 -0
  36. package/dist/components/CustomIcons/ExternalLinkIcon.js +16 -0
  37. package/dist/components/CustomIcons/ExternalLinkIcon.js.map +1 -0
  38. package/dist/components/CustomIcons/FieldCoverageIcon.js +16 -0
  39. package/dist/components/CustomIcons/FieldCoverageIcon.js.map +1 -0
  40. package/dist/components/CustomIcons/LayoutIcon.js +16 -0
  41. package/dist/components/CustomIcons/LayoutIcon.js.map +1 -0
  42. package/dist/components/CustomIcons/LinkIcon.js +16 -0
  43. package/dist/components/CustomIcons/LinkIcon.js.map +1 -0
  44. package/dist/components/CustomIcons/PlaygroundIcon.js +16 -0
  45. package/dist/components/CustomIcons/PlaygroundIcon.js.map +1 -0
  46. package/dist/components/CustomIcons/index.js +303 -279
  47. package/dist/components/CustomIcons/index.js.map +1 -1
  48. package/dist/components/NavItem.js +158 -0
  49. package/dist/components/NavItem.js.map +1 -0
  50. package/dist/components/Popover.js +262 -0
  51. package/dist/components/Popover.js.map +1 -0
  52. package/dist/components/PopoverParts.js +46 -0
  53. package/dist/components/PopoverParts.js.map +1 -0
  54. package/dist/components/QueryInput.js +103 -97
  55. package/dist/components/QueryInput.js.map +1 -1
  56. package/dist/components/SearchTrigger.js +37 -0
  57. package/dist/components/SearchTrigger.js.map +1 -0
  58. package/dist/components/Sidebar.js +174 -0
  59. package/dist/components/Sidebar.js.map +1 -0
  60. package/dist/components/Tooltip.js +97 -92
  61. package/dist/components/Tooltip.js.map +1 -1
  62. package/dist/components/UsageCard.js +44 -0
  63. package/dist/components/UsageCard.js.map +1 -0
  64. package/dist/components/actionMenuKeyboard.js +23 -0
  65. package/dist/components/actionMenuKeyboard.js.map +1 -0
  66. package/dist/components/actionMenuStyles.js +88 -0
  67. package/dist/components/actionMenuStyles.js.map +1 -0
  68. package/dist/components/ariaState.js +5 -0
  69. package/dist/components/ariaState.js.map +1 -0
  70. package/dist/components/chromeStyles.js +6 -0
  71. package/dist/components/chromeStyles.js.map +1 -0
  72. package/dist/components/composeRefs.js +27 -0
  73. package/dist/components/composeRefs.js.map +1 -0
  74. package/dist/components/floatingMenuGeometry.js +74 -35
  75. package/dist/components/floatingMenuGeometry.js.map +1 -1
  76. package/dist/components/overlayBehaviour.js +90 -84
  77. package/dist/components/overlayBehaviour.js.map +1 -1
  78. package/dist/components/popoverTree.js +14 -0
  79. package/dist/components/popoverTree.js.map +1 -0
  80. package/dist/components/portalOverlay.js +28 -22
  81. package/dist/components/portalOverlay.js.map +1 -1
  82. package/dist/components/sidebarContext.js +9 -0
  83. package/dist/components/sidebarContext.js.map +1 -0
  84. package/dist/components/topLayer.js +18 -18
  85. package/dist/components/topLayer.js.map +1 -1
  86. package/dist/components/useActionMenuPosition.js +80 -0
  87. package/dist/components/useActionMenuPosition.js.map +1 -0
  88. package/dist/components/useHoverClose.js +18 -0
  89. package/dist/components/useHoverClose.js.map +1 -0
  90. package/dist/components/useLatestRef.js +11 -0
  91. package/dist/components/useLatestRef.js.map +1 -0
  92. package/dist/components/usePopoverPosition.js +62 -0
  93. package/dist/components/usePopoverPosition.js.map +1 -0
  94. package/dist/components/usePopoverTree.js +34 -0
  95. package/dist/components/usePopoverTree.js.map +1 -0
  96. package/dist/index.d.ts +394 -100
  97. package/dist/index.js +365 -335
  98. package/dist/index.js.map +1 -1
  99. package/dist/tailwind.css.js +1 -1
  100. package/dist/tailwindSheet.js +35 -0
  101. package/dist/tailwindSheet.js.map +1 -0
  102. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/CustomIcons/index.ts"],"sourcesContent":["import { default as AccountIcon } from './AccountIcon';\nimport { default as AccountsIcon } from './AccountsIcon';\nimport { default as AddIcon } from './AddIcon';\nimport { default as AdvancedLogsIcon } from './AdvancedLogsIcon';\nimport { default as ApiKeysIcon } from './ApiKeysIcon';\nimport { default as ArchiveIcon } from './ArchiveIcon';\nimport { default as ArrowLeftIcon } from './ArrowLeftIcon';\nimport { default as ArrowUpIcon } from './ArrowUpIcon';\nimport { default as ArrowUpRightIcon } from './ArrowUpRightIcon';\nimport { default as AuthenticationIcon } from './AuthenticationIcon';\nimport { default as BellIcon } from './BellIcon';\nimport { default as BellSlashIcon } from './BellSlashIcon';\nimport { default as BiDirectionalArrowsIcon } from './BiDirectionalArrowsIcon';\nimport { default as CardIcon } from './CardIcon';\nimport { default as CaretDownIcon } from './CaretDownIcon';\nimport { default as CaretLeftIcon } from './CaretLeftIcon';\nimport { default as CaretRightIcon } from './CaretRightIcon';\nimport { default as CaretUpIcon } from './CaretUpIcon';\nimport { default as ChangePasswordIcon } from './ChangePasswordIcon';\nimport { default as CheckCircleFilled } from './CheckCircleFilled';\nimport { default as CheckIcon } from './CheckIcon';\nimport { default as CheckmarkIcon } from './CheckmarkIcon';\nimport { default as ClearIcon } from './ClearIcon';\nimport { default as CloseIcon } from './CloseIcon';\nimport { default as CodeIcon } from './CodeIcon';\nimport { default as CommandKeyIcon } from './CommandKeyIcon';\nimport { default as CopyIcon } from './CopyIcon';\nimport { default as CsvIcon } from './CsvIcon';\nimport { default as CustomFieldIcon } from './CustomFieldIcon';\nimport { default as DashboardIcon } from './DashboardIcon';\nimport { default as DateIcon } from './DateIcon';\nimport { default as DisableIcon } from './DisableIcon';\nimport { default as DisabledIcon } from './DisabledIcon';\nimport { default as DismissIcon } from './DismissIcon';\nimport { default as DocIcon } from './DocIcon';\nimport { default as DoubleCheckIcon } from './DoubleCheckIcon';\nimport { default as DownloadIcon } from './DownloadIcon';\nimport { default as EditIcon } from './EditIcon';\nimport { default as EnableIcon } from './EnableIcon';\nimport { default as EnumIcon } from './EnumIcon';\nimport { default as ErrorCircleFilled } from './ErrorCircleFilled';\nimport { default as ExpandIcon } from './ExpandIcon';\nimport { default as EyeClosedIcon } from './EyeClosedIcon';\nimport { default as EyeIcon } from './EyeIcon';\nimport { default as FieldMappingIcon } from './FieldMappingIcon';\nimport { default as FilledCaretDownIcon } from './FilledCaretDownIcon';\nimport { default as FilledCaretRightIcon } from './FilledCaretRightIcon';\nimport { default as FilterIcon } from './FilterIcon';\nimport { default as ForbiddenIcon } from './ForbiddenIcon';\nimport { default as ForwardArrowIcon } from './ForwardArrowIcon';\nimport { default as GlobeIcon } from './GlobeIcon';\nimport { default as InboxIcon } from './InboxIcon';\nimport { default as InfoCircleFilled } from './InfoCircleFilled';\nimport { default as InfoFilledIcon } from './InfoFilledIcon';\nimport { default as InfoIcon } from './InfoIcon';\nimport { default as IntegrationsIcon } from './IntegrationsIcon';\nimport { default as KeyIcon } from './KeyIcon';\nimport { default as LibraryIcon } from './LibraryIcon';\nimport { default as LogsIcon } from './LogsIcon';\nimport { default as MagicWandIcon } from './MagicWandIcon';\nimport { default as ManageTeamIcon } from './ManageTeamIcon';\nimport { default as ManualWebhookIcon } from './ManualWebhookIcon';\nimport { default as MarkReadIcon } from './MarkReadIcon';\nimport { default as MarkUnreadIcon } from './MarkUnreadIcon';\nimport { default as MembersIcon } from './MembersIcon';\nimport { default as ModalIcon } from './ModalIcon';\nimport { default as MoreHorizontalIcon } from './MoreHorizontalIcon';\nimport { default as MoreVerticalIcon } from './MoreVerticalIcon';\nimport { default as NavbarCollapseIcon } from './NavbarCollapseIcon';\nimport { default as NavbarExpandIcon } from './NavbarExpandIcon';\nimport { default as NotFoundIcon } from './NotFoundIcon';\nimport { default as OrganizationIcon } from './OrganizationIcon';\nimport { default as PinIcon } from './PinIcon';\nimport { default as PlusIcon } from './PlusIcon';\nimport { default as PreviewIcon } from './PreviewIcon';\nimport { default as ProgrammaticWebhookIcon } from './ProgrammaticWebhookIcon';\nimport { default as PulseIcon } from './PulseIcon';\nimport { default as RefreshIcon } from './RefreshIcon';\nimport { default as RejectIcon } from './RejectIcon';\nimport { default as ReloadIcon } from './ReloadIcon';\nimport { default as ReplyIcon } from './ReplyIcon';\nimport { default as RequiredFieldIndicatorIcon } from './RequiredFieldIndicatorIcon';\nimport { default as SearchIcon } from './SearchIcon';\nimport { default as SecurityIcon } from './SecurityIcon';\nimport { default as SendIcon } from './SendIcon';\nimport { default as SettingsIcon } from './SettingsIcon';\nimport { default as SignOutIcon } from './SignOutIcon';\nimport { default as SliderIcon } from './SliderIcon';\nimport { default as SortIcon } from './SortIcon';\nimport { default as SourceIcon } from './SourceIcon';\nimport { default as SparkleIcon } from './SparkleIcon';\nimport { default as StarIcon } from './StarIcon';\nimport { default as StepCurrentIcon } from './StepCurrentIcon';\nimport { default as StepUpcomingIcon } from './StepUpcomingIcon';\nimport { default as SyntheticWebhookIcon } from './SyntheticWebhookIcon';\nimport { default as ThumbsDownIcon } from './ThumbsDownIcon';\nimport { default as ThumbsUpIcon } from './ThumbsUpIcon';\nimport { default as TrashIcon } from './TrashIcon';\nimport { default as TriangleDownIcon } from './TriangleDownIcon';\nimport { default as TriangleRightIcon } from './TriangleRightIcon';\nimport { default as UnarchiveIcon } from './UnarchiveIcon';\nimport { default as UploadIcon } from './UploadIcon';\nimport { default as WarningCircleFilled } from './WarningCircleFilled';\nimport { default as WarningTriangleIcon } from './WarningTriangleIcon';\nimport { default as WebhookEventsIcon } from './WebhookEventsIcon';\nimport { default as WebhookIcon } from './WebhookIcon';\nimport { default as WebhookSigningSecretIcon } from './WebhookSigningSecretIcon';\n\n// Named exports so a consumer can pull one icon. The CustomIcons object below\n// references every icon, so reaching an icon through it costs the whole set.\nexport {\n AccountIcon,\n AccountsIcon,\n AddIcon,\n AdvancedLogsIcon,\n ApiKeysIcon,\n ArchiveIcon,\n ArrowLeftIcon,\n ArrowUpIcon,\n ArrowUpRightIcon,\n AuthenticationIcon,\n BellIcon,\n BellSlashIcon,\n BiDirectionalArrowsIcon,\n CardIcon,\n CaretDownIcon,\n CaretLeftIcon,\n CaretRightIcon,\n CaretUpIcon,\n ChangePasswordIcon,\n CheckCircleFilled,\n CheckIcon,\n CheckmarkIcon,\n ClearIcon,\n CloseIcon,\n CodeIcon,\n CommandKeyIcon,\n CopyIcon,\n CsvIcon,\n CustomFieldIcon,\n DashboardIcon,\n DateIcon,\n DisableIcon,\n DisabledIcon,\n DismissIcon,\n DocIcon,\n DoubleCheckIcon,\n DownloadIcon,\n EditIcon,\n EnableIcon,\n EnumIcon,\n ErrorCircleFilled,\n ExpandIcon,\n EyeClosedIcon,\n EyeIcon,\n FieldMappingIcon,\n FilledCaretDownIcon,\n FilledCaretRightIcon,\n FilterIcon,\n ForbiddenIcon,\n ForwardArrowIcon,\n GlobeIcon,\n InboxIcon,\n InfoCircleFilled,\n InfoFilledIcon,\n InfoIcon,\n IntegrationsIcon,\n KeyIcon,\n LibraryIcon,\n LogsIcon,\n MagicWandIcon,\n ManageTeamIcon,\n ManualWebhookIcon,\n MarkReadIcon,\n MarkUnreadIcon,\n MembersIcon,\n ModalIcon,\n MoreHorizontalIcon,\n MoreVerticalIcon,\n NavbarCollapseIcon,\n NavbarExpandIcon,\n NotFoundIcon,\n OrganizationIcon,\n PinIcon,\n PlusIcon,\n PreviewIcon,\n ProgrammaticWebhookIcon,\n PulseIcon,\n RefreshIcon,\n RejectIcon,\n ReloadIcon,\n ReplyIcon,\n RequiredFieldIndicatorIcon,\n SearchIcon,\n SecurityIcon,\n SendIcon,\n SettingsIcon,\n SignOutIcon,\n SliderIcon,\n SortIcon,\n SourceIcon,\n SparkleIcon,\n StarIcon,\n StepCurrentIcon,\n StepUpcomingIcon,\n SyntheticWebhookIcon,\n ThumbsDownIcon,\n ThumbsUpIcon,\n TrashIcon,\n TriangleDownIcon,\n TriangleRightIcon,\n UnarchiveIcon,\n UploadIcon,\n WarningCircleFilled,\n WarningTriangleIcon,\n WebhookEventsIcon,\n WebhookIcon,\n WebhookSigningSecretIcon,\n};\n\nexport const CustomIcons = {\n AccountIcon: AccountIcon,\n AccountsIcon: AccountsIcon,\n AddIcon: AddIcon,\n AdvancedLogsIcon: AdvancedLogsIcon,\n ApiKeysIcon: ApiKeysIcon,\n ArchiveIcon: ArchiveIcon,\n ArrowLeftIcon: ArrowLeftIcon,\n ArrowUpIcon: ArrowUpIcon,\n ArrowUpRightIcon: ArrowUpRightIcon,\n AuthenticationIcon: AuthenticationIcon,\n BellIcon: BellIcon,\n BellSlashIcon: BellSlashIcon,\n BiDirectionalArrowsIcon: BiDirectionalArrowsIcon,\n CardIcon: CardIcon,\n CaretDownIcon: CaretDownIcon,\n CaretLeftIcon: CaretLeftIcon,\n CaretRightIcon: CaretRightIcon,\n CaretUpIcon: CaretUpIcon,\n CodeIcon: CodeIcon,\n ChangePasswordIcon: ChangePasswordIcon,\n CheckCircleFilled: CheckCircleFilled,\n CheckIcon: CheckIcon,\n CheckmarkIcon: CheckmarkIcon,\n ClearIcon: ClearIcon,\n CloseIcon: CloseIcon,\n CommandKeyIcon: CommandKeyIcon,\n CopyIcon: CopyIcon,\n CsvIcon: CsvIcon,\n CustomFieldIcon: CustomFieldIcon,\n DashboardIcon: DashboardIcon,\n DateIcon: DateIcon,\n DisabledIcon: DisabledIcon,\n DisableIcon: DisableIcon,\n DismissIcon: DismissIcon,\n DocIcon: DocIcon,\n DoubleCheckIcon: DoubleCheckIcon,\n DownloadIcon: DownloadIcon,\n EditIcon: EditIcon,\n EnableIcon: EnableIcon,\n EnumIcon: EnumIcon,\n ErrorCircleFilled: ErrorCircleFilled,\n ExpandIcon: ExpandIcon,\n EyeClosedIcon: EyeClosedIcon,\n EyeIcon: EyeIcon,\n FieldMappingIcon: FieldMappingIcon,\n FilledCaretDownIcon: FilledCaretDownIcon,\n FilledCaretRightIcon: FilledCaretRightIcon,\n FilterIcon: FilterIcon,\n ForbiddenIcon: ForbiddenIcon,\n GlobeIcon: GlobeIcon,\n ForwardArrowIcon: ForwardArrowIcon,\n InboxIcon: InboxIcon,\n InfoIcon: InfoIcon,\n InfoFilledIcon: InfoFilledIcon,\n InfoCircleFilled: InfoCircleFilled,\n IntegrationsIcon: IntegrationsIcon,\n KeyIcon: KeyIcon,\n LibraryIcon: LibraryIcon,\n LogsIcon: LogsIcon,\n MagicWandIcon: MagicWandIcon,\n ManageTeamIcon: ManageTeamIcon,\n ManualWebhookIcon: ManualWebhookIcon,\n MarkReadIcon: MarkReadIcon,\n MarkUnreadIcon: MarkUnreadIcon,\n MembersIcon: MembersIcon,\n ModalIcon: ModalIcon,\n MoreHorizontalIcon: MoreHorizontalIcon,\n MoreVerticalIcon: MoreVerticalIcon,\n NavbarCollapseIcon: NavbarCollapseIcon,\n NavbarExpandIcon: NavbarExpandIcon,\n NotFoundIcon: NotFoundIcon,\n OrganizationIcon: OrganizationIcon,\n PinIcon: PinIcon,\n PlusIcon: PlusIcon,\n PreviewIcon: PreviewIcon,\n ProgrammaticWebhookIcon: ProgrammaticWebhookIcon,\n PulseIcon: PulseIcon,\n RefreshIcon: RefreshIcon,\n RejectIcon: RejectIcon,\n ReloadIcon: ReloadIcon,\n ReplyIcon: ReplyIcon,\n RequiredFieldIndicatorIcon: RequiredFieldIndicatorIcon,\n SearchIcon: SearchIcon,\n SecurityIcon: SecurityIcon,\n SendIcon: SendIcon,\n SettingsIcon: SettingsIcon,\n SignOutIcon: SignOutIcon,\n SliderIcon: SliderIcon,\n SortIcon: SortIcon,\n SourceIcon: SourceIcon,\n SparkleIcon: SparkleIcon,\n StarIcon: StarIcon,\n StepCurrentIcon: StepCurrentIcon,\n StepUpcomingIcon: StepUpcomingIcon,\n SyntheticWebhookIcon: SyntheticWebhookIcon,\n ThumbsDownIcon: ThumbsDownIcon,\n ThumbsUpIcon: ThumbsUpIcon,\n TrashIcon: TrashIcon,\n TriangleDownIcon: TriangleDownIcon,\n TriangleRightIcon: TriangleRightIcon,\n UnarchiveIcon: UnarchiveIcon,\n UploadIcon: UploadIcon,\n WarningCircleFilled: WarningCircleFilled,\n WarningTriangleIcon: WarningTriangleIcon,\n WebhookEventsIcon: WebhookEventsIcon,\n WebhookIcon: WebhookIcon,\n WebhookSigningSecretIcon: WebhookSigningSecretIcon,\n};\n\nexport default CustomIcons;\n"],"names":["CustomIcons","AccountIcon","AccountsIcon","AddIcon","AdvancedLogsIcon","ApiKeysIcon","ArchiveIcon","ArrowLeftIcon","ArrowUpIcon","ArrowUpRightIcon","AuthenticationIcon","BellIcon","BellSlashIcon","BiDirectionalArrowsIcon","CardIcon","CaretDownIcon","CaretLeftIcon","CaretRightIcon","CaretUpIcon","CodeIcon","ChangePasswordIcon","CheckCircleFilled","CheckIcon","CheckmarkIcon","ClearIcon","CloseIcon","CommandKeyIcon","CopyIcon","CsvIcon","CustomFieldIcon","DashboardIcon","DateIcon","DisabledIcon","DisableIcon","DismissIcon","DocIcon","DoubleCheckIcon","DownloadIcon","EditIcon","EnableIcon","EnumIcon","ErrorCircleFilled","ExpandIcon","EyeClosedIcon","EyeIcon","FieldMappingIcon","FilledCaretDownIcon","FilledCaretRightIcon","FilterIcon","ForbiddenIcon","GlobeIcon","ForwardArrowIcon","InboxIcon","InfoIcon","InfoFilledIcon","InfoCircleFilled","IntegrationsIcon","KeyIcon","LibraryIcon","LogsIcon","MagicWandIcon","ManageTeamIcon","ManualWebhookIcon","MarkReadIcon","MarkUnreadIcon","MembersIcon","ModalIcon","MoreHorizontalIcon","MoreVerticalIcon","NavbarCollapseIcon","NavbarExpandIcon","NotFoundIcon","OrganizationIcon","PinIcon","PlusIcon","PreviewIcon","ProgrammaticWebhookIcon","PulseIcon","RefreshIcon","RejectIcon","ReloadIcon","ReplyIcon","RequiredFieldIndicatorIcon","SearchIcon","SecurityIcon","SendIcon","SettingsIcon","SignOutIcon","SliderIcon","SortIcon","SourceIcon","SparkleIcon","StarIcon","StepCurrentIcon","StepUpcomingIcon","SyntheticWebhookIcon","ThumbsDownIcon","ThumbsUpIcon","TrashIcon","TriangleDownIcon","TriangleRightIcon","UnarchiveIcon","UploadIcon","WarningCircleFilled","WarningTriangleIcon","WebhookEventsIcon","WebhookIcon","WebhookSigningSecretIcon"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4NO,MAAMA,KAAc;AAAA,EACvB,aAAAC;AAAA,EACA,cAAAC;AAAA,EACA,SAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,eAAAC;AAAA,EACA,aAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,yBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,aAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,YAAAC;AAAA,EACA,eAAAC;AAAA,EACA,SAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,YAAAC;AAAA,EACA,eAAAC;AAAA,EACA,WAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,eAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AAAA,EACA,yBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAAC;AAAA,EACA,4BAAAC;AAAA,EACA,YAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,aAAAC;AAAA,EACA,UAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,WAAAC;AAAA,EACA,kBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,aAAAC;AAAA,EACA,0BAAAC;AACJ;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/CustomIcons/index.ts"],"sourcesContent":["import { default as AccountIcon } from './AccountIcon';\nimport { default as AccountsIcon } from './AccountsIcon';\nimport { default as AddIcon } from './AddIcon';\nimport { default as AdvancedLogsIcon } from './AdvancedLogsIcon';\nimport { default as ApiKeysIcon } from './ApiKeysIcon';\nimport { default as ArchiveIcon } from './ArchiveIcon';\nimport { default as ArrowLeftIcon } from './ArrowLeftIcon';\nimport { default as ArrowUpIcon } from './ArrowUpIcon';\nimport { default as ArrowUpRightIcon } from './ArrowUpRightIcon';\nimport { default as AuthenticationIcon } from './AuthenticationIcon';\nimport { default as BellIcon } from './BellIcon';\nimport { default as BellSlashIcon } from './BellSlashIcon';\nimport { default as BiDirectionalArrowsIcon } from './BiDirectionalArrowsIcon';\nimport { default as BuildingIcon } from './BuildingIcon';\nimport { default as CardIcon } from './CardIcon';\nimport { default as CaretDownIcon } from './CaretDownIcon';\nimport { default as CaretLeftIcon } from './CaretLeftIcon';\nimport { default as CaretRightIcon } from './CaretRightIcon';\nimport { default as CaretUpIcon } from './CaretUpIcon';\nimport { default as ChangePasswordIcon } from './ChangePasswordIcon';\nimport { default as CheckCircleFilled } from './CheckCircleFilled';\nimport { default as CheckIcon } from './CheckIcon';\nimport { default as CheckmarkIcon } from './CheckmarkIcon';\nimport { default as ChevronsUpDownIcon } from './ChevronsUpDownIcon';\nimport { default as ClearIcon } from './ClearIcon';\nimport { default as CloseIcon } from './CloseIcon';\nimport { default as CodeIcon } from './CodeIcon';\nimport { default as CommandKeyIcon } from './CommandKeyIcon';\nimport { default as ConnectorIcon } from './ConnectorIcon';\nimport { default as CopyIcon } from './CopyIcon';\nimport { default as CsvIcon } from './CsvIcon';\nimport { default as CustomFieldIcon } from './CustomFieldIcon';\nimport { default as DashboardIcon } from './DashboardIcon';\nimport { default as DateIcon } from './DateIcon';\nimport { default as DisableIcon } from './DisableIcon';\nimport { default as DisabledIcon } from './DisabledIcon';\nimport { default as DismissIcon } from './DismissIcon';\nimport { default as DocIcon } from './DocIcon';\nimport { default as DoubleCheckIcon } from './DoubleCheckIcon';\nimport { default as DownloadIcon } from './DownloadIcon';\nimport { default as EditIcon } from './EditIcon';\nimport { default as EnableIcon } from './EnableIcon';\nimport { default as EnumIcon } from './EnumIcon';\nimport { default as ErrorCircleFilled } from './ErrorCircleFilled';\nimport { default as ExpandIcon } from './ExpandIcon';\nimport { default as ExternalLinkIcon } from './ExternalLinkIcon';\nimport { default as EyeClosedIcon } from './EyeClosedIcon';\nimport { default as EyeIcon } from './EyeIcon';\nimport { default as FieldCoverageIcon } from './FieldCoverageIcon';\nimport { default as FieldMappingIcon } from './FieldMappingIcon';\nimport { default as FilledCaretDownIcon } from './FilledCaretDownIcon';\nimport { default as FilledCaretRightIcon } from './FilledCaretRightIcon';\nimport { default as FilterIcon } from './FilterIcon';\nimport { default as ForbiddenIcon } from './ForbiddenIcon';\nimport { default as ForwardArrowIcon } from './ForwardArrowIcon';\nimport { default as GlobeIcon } from './GlobeIcon';\nimport { default as InboxIcon } from './InboxIcon';\nimport { default as InfoCircleFilled } from './InfoCircleFilled';\nimport { default as InfoFilledIcon } from './InfoFilledIcon';\nimport { default as InfoIcon } from './InfoIcon';\nimport { default as IntegrationsIcon } from './IntegrationsIcon';\nimport { default as KeyIcon } from './KeyIcon';\nimport { default as LayoutIcon } from './LayoutIcon';\nimport { default as LibraryIcon } from './LibraryIcon';\nimport { default as LinkIcon } from './LinkIcon';\nimport { default as LogsIcon } from './LogsIcon';\nimport { default as MagicWandIcon } from './MagicWandIcon';\nimport { default as ManageTeamIcon } from './ManageTeamIcon';\nimport { default as ManualWebhookIcon } from './ManualWebhookIcon';\nimport { default as MarkReadIcon } from './MarkReadIcon';\nimport { default as MarkUnreadIcon } from './MarkUnreadIcon';\nimport { default as MembersIcon } from './MembersIcon';\nimport { default as ModalIcon } from './ModalIcon';\nimport { default as MoreHorizontalIcon } from './MoreHorizontalIcon';\nimport { default as MoreVerticalIcon } from './MoreVerticalIcon';\nimport { default as NavbarCollapseIcon } from './NavbarCollapseIcon';\nimport { default as NavbarExpandIcon } from './NavbarExpandIcon';\nimport { default as NotFoundIcon } from './NotFoundIcon';\nimport { default as OrganizationIcon } from './OrganizationIcon';\nimport { default as PinIcon } from './PinIcon';\nimport { default as PlaygroundIcon } from './PlaygroundIcon';\nimport { default as PlusIcon } from './PlusIcon';\nimport { default as PreviewIcon } from './PreviewIcon';\nimport { default as ProgrammaticWebhookIcon } from './ProgrammaticWebhookIcon';\nimport { default as PulseIcon } from './PulseIcon';\nimport { default as RefreshIcon } from './RefreshIcon';\nimport { default as RejectIcon } from './RejectIcon';\nimport { default as ReloadIcon } from './ReloadIcon';\nimport { default as ReplyIcon } from './ReplyIcon';\nimport { default as RequiredFieldIndicatorIcon } from './RequiredFieldIndicatorIcon';\nimport { default as SearchIcon } from './SearchIcon';\nimport { default as SecurityIcon } from './SecurityIcon';\nimport { default as SendIcon } from './SendIcon';\nimport { default as SettingsIcon } from './SettingsIcon';\nimport { default as SignOutIcon } from './SignOutIcon';\nimport { default as SliderIcon } from './SliderIcon';\nimport { default as SortIcon } from './SortIcon';\nimport { default as SourceIcon } from './SourceIcon';\nimport { default as SparkleIcon } from './SparkleIcon';\nimport { default as StarIcon } from './StarIcon';\nimport { default as StepCurrentIcon } from './StepCurrentIcon';\nimport { default as StepUpcomingIcon } from './StepUpcomingIcon';\nimport { default as SyntheticWebhookIcon } from './SyntheticWebhookIcon';\nimport { default as ThumbsDownIcon } from './ThumbsDownIcon';\nimport { default as ThumbsUpIcon } from './ThumbsUpIcon';\nimport { default as TrashIcon } from './TrashIcon';\nimport { default as TriangleDownIcon } from './TriangleDownIcon';\nimport { default as TriangleRightIcon } from './TriangleRightIcon';\nimport { default as UnarchiveIcon } from './UnarchiveIcon';\nimport { default as UploadIcon } from './UploadIcon';\nimport { default as WarningCircleFilled } from './WarningCircleFilled';\nimport { default as WarningTriangleIcon } from './WarningTriangleIcon';\nimport { default as WebhookEventsIcon } from './WebhookEventsIcon';\nimport { default as WebhookIcon } from './WebhookIcon';\nimport { default as WebhookSigningSecretIcon } from './WebhookSigningSecretIcon';\n\n// Named exports so a consumer can pull one icon. The CustomIcons object below\n// references every icon, so reaching an icon through it costs the whole set.\nexport {\n AccountIcon,\n AccountsIcon,\n AddIcon,\n AdvancedLogsIcon,\n ApiKeysIcon,\n ArchiveIcon,\n ArrowLeftIcon,\n ArrowUpIcon,\n ArrowUpRightIcon,\n AuthenticationIcon,\n BellIcon,\n BellSlashIcon,\n BiDirectionalArrowsIcon,\n BuildingIcon,\n CardIcon,\n CaretDownIcon,\n CaretLeftIcon,\n CaretRightIcon,\n CaretUpIcon,\n ChangePasswordIcon,\n CheckCircleFilled,\n CheckIcon,\n CheckmarkIcon,\n ChevronsUpDownIcon,\n ClearIcon,\n CloseIcon,\n CodeIcon,\n CommandKeyIcon,\n ConnectorIcon,\n CopyIcon,\n CsvIcon,\n CustomFieldIcon,\n DashboardIcon,\n DateIcon,\n DisableIcon,\n DisabledIcon,\n DismissIcon,\n DocIcon,\n DoubleCheckIcon,\n DownloadIcon,\n EditIcon,\n EnableIcon,\n EnumIcon,\n ErrorCircleFilled,\n ExpandIcon,\n ExternalLinkIcon,\n EyeClosedIcon,\n EyeIcon,\n FieldCoverageIcon,\n FieldMappingIcon,\n FilledCaretDownIcon,\n FilledCaretRightIcon,\n FilterIcon,\n ForbiddenIcon,\n ForwardArrowIcon,\n GlobeIcon,\n InboxIcon,\n InfoCircleFilled,\n InfoFilledIcon,\n InfoIcon,\n IntegrationsIcon,\n KeyIcon,\n LayoutIcon,\n LibraryIcon,\n LinkIcon,\n LogsIcon,\n MagicWandIcon,\n ManageTeamIcon,\n ManualWebhookIcon,\n MarkReadIcon,\n MarkUnreadIcon,\n MembersIcon,\n ModalIcon,\n MoreHorizontalIcon,\n MoreVerticalIcon,\n NavbarCollapseIcon,\n NavbarExpandIcon,\n NotFoundIcon,\n OrganizationIcon,\n PinIcon,\n PlaygroundIcon,\n PlusIcon,\n PreviewIcon,\n ProgrammaticWebhookIcon,\n PulseIcon,\n RefreshIcon,\n RejectIcon,\n ReloadIcon,\n ReplyIcon,\n RequiredFieldIndicatorIcon,\n SearchIcon,\n SecurityIcon,\n SendIcon,\n SettingsIcon,\n SignOutIcon,\n SliderIcon,\n SortIcon,\n SourceIcon,\n SparkleIcon,\n StarIcon,\n StepCurrentIcon,\n StepUpcomingIcon,\n SyntheticWebhookIcon,\n ThumbsDownIcon,\n ThumbsUpIcon,\n TrashIcon,\n TriangleDownIcon,\n TriangleRightIcon,\n UnarchiveIcon,\n UploadIcon,\n WarningCircleFilled,\n WarningTriangleIcon,\n WebhookEventsIcon,\n WebhookIcon,\n WebhookSigningSecretIcon,\n};\n\nexport const CustomIcons = {\n AccountIcon: AccountIcon,\n AccountsIcon: AccountsIcon,\n AddIcon: AddIcon,\n AdvancedLogsIcon: AdvancedLogsIcon,\n ApiKeysIcon: ApiKeysIcon,\n ArchiveIcon: ArchiveIcon,\n ArrowLeftIcon: ArrowLeftIcon,\n ArrowUpIcon: ArrowUpIcon,\n ArrowUpRightIcon: ArrowUpRightIcon,\n AuthenticationIcon: AuthenticationIcon,\n BellIcon: BellIcon,\n BellSlashIcon: BellSlashIcon,\n BiDirectionalArrowsIcon: BiDirectionalArrowsIcon,\n BuildingIcon: BuildingIcon,\n CardIcon: CardIcon,\n CaretDownIcon: CaretDownIcon,\n CaretLeftIcon: CaretLeftIcon,\n CaretRightIcon: CaretRightIcon,\n CaretUpIcon: CaretUpIcon,\n CodeIcon: CodeIcon,\n ChangePasswordIcon: ChangePasswordIcon,\n CheckCircleFilled: CheckCircleFilled,\n CheckIcon: CheckIcon,\n CheckmarkIcon: CheckmarkIcon,\n ChevronsUpDownIcon: ChevronsUpDownIcon,\n ClearIcon: ClearIcon,\n CloseIcon: CloseIcon,\n CommandKeyIcon: CommandKeyIcon,\n ConnectorIcon: ConnectorIcon,\n CopyIcon: CopyIcon,\n CsvIcon: CsvIcon,\n CustomFieldIcon: CustomFieldIcon,\n DashboardIcon: DashboardIcon,\n DateIcon: DateIcon,\n DisabledIcon: DisabledIcon,\n DisableIcon: DisableIcon,\n DismissIcon: DismissIcon,\n DocIcon: DocIcon,\n DoubleCheckIcon: DoubleCheckIcon,\n DownloadIcon: DownloadIcon,\n EditIcon: EditIcon,\n EnableIcon: EnableIcon,\n EnumIcon: EnumIcon,\n ErrorCircleFilled: ErrorCircleFilled,\n ExpandIcon: ExpandIcon,\n ExternalLinkIcon: ExternalLinkIcon,\n EyeClosedIcon: EyeClosedIcon,\n EyeIcon: EyeIcon,\n FieldCoverageIcon: FieldCoverageIcon,\n FieldMappingIcon: FieldMappingIcon,\n FilledCaretDownIcon: FilledCaretDownIcon,\n FilledCaretRightIcon: FilledCaretRightIcon,\n FilterIcon: FilterIcon,\n ForbiddenIcon: ForbiddenIcon,\n GlobeIcon: GlobeIcon,\n ForwardArrowIcon: ForwardArrowIcon,\n InboxIcon: InboxIcon,\n InfoIcon: InfoIcon,\n InfoFilledIcon: InfoFilledIcon,\n InfoCircleFilled: InfoCircleFilled,\n IntegrationsIcon: IntegrationsIcon,\n KeyIcon: KeyIcon,\n LayoutIcon: LayoutIcon,\n LibraryIcon: LibraryIcon,\n LinkIcon: LinkIcon,\n LogsIcon: LogsIcon,\n MagicWandIcon: MagicWandIcon,\n ManageTeamIcon: ManageTeamIcon,\n ManualWebhookIcon: ManualWebhookIcon,\n MarkReadIcon: MarkReadIcon,\n MarkUnreadIcon: MarkUnreadIcon,\n MembersIcon: MembersIcon,\n ModalIcon: ModalIcon,\n MoreHorizontalIcon: MoreHorizontalIcon,\n MoreVerticalIcon: MoreVerticalIcon,\n NavbarCollapseIcon: NavbarCollapseIcon,\n NavbarExpandIcon: NavbarExpandIcon,\n NotFoundIcon: NotFoundIcon,\n OrganizationIcon: OrganizationIcon,\n PinIcon: PinIcon,\n PlaygroundIcon: PlaygroundIcon,\n PlusIcon: PlusIcon,\n PreviewIcon: PreviewIcon,\n ProgrammaticWebhookIcon: ProgrammaticWebhookIcon,\n PulseIcon: PulseIcon,\n RefreshIcon: RefreshIcon,\n RejectIcon: RejectIcon,\n ReloadIcon: ReloadIcon,\n ReplyIcon: ReplyIcon,\n RequiredFieldIndicatorIcon: RequiredFieldIndicatorIcon,\n SearchIcon: SearchIcon,\n SecurityIcon: SecurityIcon,\n SendIcon: SendIcon,\n SettingsIcon: SettingsIcon,\n SignOutIcon: SignOutIcon,\n SliderIcon: SliderIcon,\n SortIcon: SortIcon,\n SourceIcon: SourceIcon,\n SparkleIcon: SparkleIcon,\n StarIcon: StarIcon,\n StepCurrentIcon: StepCurrentIcon,\n StepUpcomingIcon: StepUpcomingIcon,\n SyntheticWebhookIcon: SyntheticWebhookIcon,\n ThumbsDownIcon: ThumbsDownIcon,\n ThumbsUpIcon: ThumbsUpIcon,\n TrashIcon: TrashIcon,\n TriangleDownIcon: TriangleDownIcon,\n TriangleRightIcon: TriangleRightIcon,\n UnarchiveIcon: UnarchiveIcon,\n UploadIcon: UploadIcon,\n WarningCircleFilled: WarningCircleFilled,\n WarningTriangleIcon: WarningTriangleIcon,\n WebhookEventsIcon: WebhookEventsIcon,\n WebhookIcon: WebhookIcon,\n WebhookSigningSecretIcon: WebhookSigningSecretIcon,\n};\n\nexport default CustomIcons;\n"],"names":["CustomIcons","AccountIcon","AccountsIcon","AddIcon","AdvancedLogsIcon","ApiKeysIcon","ArchiveIcon","ArrowLeftIcon","ArrowUpIcon","ArrowUpRightIcon","AuthenticationIcon","BellIcon","BellSlashIcon","BiDirectionalArrowsIcon","BuildingIcon","CardIcon","CaretDownIcon","CaretLeftIcon","CaretRightIcon","CaretUpIcon","CodeIcon","ChangePasswordIcon","CheckCircleFilled","CheckIcon","CheckmarkIcon","ChevronsUpDownIcon","ClearIcon","CloseIcon","CommandKeyIcon","ConnectorIcon","CopyIcon","CsvIcon","CustomFieldIcon","DashboardIcon","DateIcon","DisabledIcon","DisableIcon","DismissIcon","DocIcon","DoubleCheckIcon","DownloadIcon","EditIcon","EnableIcon","EnumIcon","ErrorCircleFilled","ExpandIcon","ExternalLinkIcon","EyeClosedIcon","EyeIcon","FieldCoverageIcon","FieldMappingIcon","FilledCaretDownIcon","FilledCaretRightIcon","FilterIcon","ForbiddenIcon","GlobeIcon","ForwardArrowIcon","InboxIcon","InfoIcon","InfoFilledIcon","InfoCircleFilled","IntegrationsIcon","KeyIcon","LayoutIcon","LibraryIcon","LinkIcon","LogsIcon","MagicWandIcon","ManageTeamIcon","ManualWebhookIcon","MarkReadIcon","MarkUnreadIcon","MembersIcon","ModalIcon","MoreHorizontalIcon","MoreVerticalIcon","NavbarCollapseIcon","NavbarExpandIcon","NotFoundIcon","OrganizationIcon","PinIcon","PlaygroundIcon","PlusIcon","PreviewIcon","ProgrammaticWebhookIcon","PulseIcon","RefreshIcon","RejectIcon","ReloadIcon","ReplyIcon","RequiredFieldIndicatorIcon","SearchIcon","SecurityIcon","SendIcon","SettingsIcon","SignOutIcon","SliderIcon","SortIcon","SourceIcon","SparkleIcon","StarIcon","StepCurrentIcon","StepUpcomingIcon","SyntheticWebhookIcon","ThumbsDownIcon","ThumbsUpIcon","TrashIcon","TriangleDownIcon","TriangleRightIcon","UnarchiveIcon","UploadIcon","WarningCircleFilled","WarningTriangleIcon","WebhookEventsIcon","WebhookIcon","WebhookSigningSecretIcon"],"mappings":"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"}
@@ -0,0 +1,158 @@
1
+ import { jsx as e, jsxs as b, Fragment as R } from "react/jsx-runtime";
2
+ import U, { forwardRef as W } from "react";
3
+ import V from "./CustomIcons/CaretRightIcon.js";
4
+ import Y from "./Tooltip.js";
5
+ import { isExpanded as q } from "./ariaState.js";
6
+ import { paintOnChild as J } from "./asChild.js";
7
+ import { chainHandler as M, composeRefs as Q, elementRef as X } from "./composeRefs.js";
8
+ import { FOCUS_RING_INSET as Z } from "./focusRing.js";
9
+ import { resolveRel as ee } from "./linkRel.js";
10
+ import { safeHref as ae } from "./safeHref.js";
11
+ const re = 0.2, te = "group relative flex items-center box-border no-underline border-0 m-0 cursor-pointer select-none text-left font-sans font-medium text-[length:var(--malachite-font-size-small,13px)] leading-[17px] rounded-[var(--malachite-radius-xl,12px)] transition-[background-color,color] duration-200", I = {
12
+ item: "w-full min-h-[37px] gap-3 py-[10px] px-3",
13
+ compact: "w-full min-h-9 gap-3 py-2 px-3",
14
+ subitem: "w-full gap-3 py-2 pr-3 pl-9",
15
+ collapsed: "w-9 h-[37px] shrink-0 justify-center p-0"
16
+ }, ie = "bg-[var(--malachite-accent-background-glass,rgba(0,175,102,0.08))] supports-[color:color-mix(in_srgb,red,red)]:bg-[color-mix(in_srgb,var(--malachite-accent-background,rgb(0,175,102))_12%,transparent)]", ne = {
17
+ idle: "bg-transparent text-[var(--malachite-text-secondary,rgb(123,123,123))] hover:bg-[var(--malachite-buttonlist-hover-background,rgb(245,245,245))] hover:text-[var(--malachite-text-primary,rgb(10,10,10))]",
18
+ active: `${ie} text-[var(--malachite-accent-foreground,rgb(2,122,66))] hover:text-[var(--malachite-accent-foreground,rgb(2,122,66))]`,
19
+ activeChild: "bg-transparent text-[var(--malachite-accent-foreground,rgb(2,122,66))] hover:bg-[var(--malachite-buttonlist-hover-background,rgb(245,245,245))] hover:text-[var(--malachite-accent-foreground,rgb(2,122,66))]",
20
+ danger: "bg-transparent text-[var(--malachite-text-destructive,rgb(237,53,54))] hover:bg-[var(--malachite-error-background-glass,rgba(197,63,63,0.08))] hover:text-[var(--malachite-text-destructive,rgb(237,53,54))]"
21
+ }, se = {
22
+ idle: "bg-[var(--malachite-text-placeholder,rgb(187,187,187))] group-hover:bg-[var(--malachite-text-primary,rgb(10,10,10))]",
23
+ active: "bg-[var(--malachite-accent-foreground,rgb(2,122,66))]",
24
+ activeChild: "bg-[var(--malachite-accent-foreground,rgb(2,122,66))]",
25
+ danger: "bg-[var(--malachite-text-destructive,rgb(237,53,54))]"
26
+ }, $ = "inline-flex shrink-0 items-center justify-center size-4 [&_svg]:size-4!", oe = W((j, f) => {
27
+ const {
28
+ label: l,
29
+ icon: c,
30
+ active: O = !1,
31
+ hasActiveChild: z = !1,
32
+ collapsed: d = !1,
33
+ variant: u = "item",
34
+ size: A = "medium",
35
+ danger: L = !1,
36
+ trailing: _,
37
+ badge: t,
38
+ badgeLabel: r,
39
+ tag: T,
40
+ disclosure: m,
41
+ tooltip: S,
42
+ accessibleLabel: H,
43
+ className: D = "",
44
+ asChild: K,
45
+ ...v
46
+ } = j, k = L ? "danger" : O ? "active" : z ? "activeChild" : "idle", P = u === "subitem", B = d ? I.collapsed : I[u === "item" && A === "small" ? "compact" : u], x = `${te} ${B} ${ne[k]} ${Z} ${D}`.trim(), p = d ? S ?? (typeof l == "string" ? l : void 0) : void 0, F = p ? [p, r].filter(Boolean).join(", ") : void 0, i = H ?? (d ? F : void 0), w = v, E = O ? "page" : w["aria-current"], N = d ? /* @__PURE__ */ b(R, { children: [
47
+ c && /* @__PURE__ */ e("span", { "aria-hidden": "true", className: $, children: c }),
48
+ !i && /* @__PURE__ */ b("span", { className: "sr-only", children: [
49
+ l,
50
+ r && `, ${r}`
51
+ ] }),
52
+ t && /* @__PURE__ */ e(
53
+ "span",
54
+ {
55
+ "aria-hidden": "true",
56
+ className: "pointer-events-none absolute top-1 right-1 flex",
57
+ children: t
58
+ }
59
+ )
60
+ ] }) : /* @__PURE__ */ b(R, { children: [
61
+ P ? /* @__PURE__ */ e(
62
+ "span",
63
+ {
64
+ "aria-hidden": "true",
65
+ className: `absolute left-[14px] top-1/2 -mt-[2px] size-1 rounded-full transition-colors duration-200 ${se[k]}`
66
+ }
67
+ ) : c && /* @__PURE__ */ e("span", { "aria-hidden": "true", className: $, children: c }),
68
+ /* @__PURE__ */ b("span", { className: "flex min-w-0 flex-1 items-center gap-2", children: [
69
+ /* @__PURE__ */ e("span", { className: "min-w-0 truncate", children: l }),
70
+ T && /* @__PURE__ */ e("span", { className: "flex shrink-0", children: T })
71
+ ] }),
72
+ t && /* @__PURE__ */ e("span", { "aria-hidden": r ? !0 : void 0, className: "flex shrink-0", children: t }),
73
+ t && r && !i && /* @__PURE__ */ e("span", { className: "sr-only", children: r }),
74
+ _ && /* @__PURE__ */ e("span", { className: "flex shrink-0 items-center", children: _ }),
75
+ m && /* @__PURE__ */ e(
76
+ "span",
77
+ {
78
+ "aria-hidden": "true",
79
+ className: "flex shrink-0 items-center",
80
+ style: {
81
+ transform: m === "expanded" ? "rotate(90deg)" : void 0,
82
+ transition: "transform 0.2s"
83
+ },
84
+ children: /* @__PURE__ */ e(V, { size: 14 })
85
+ }
86
+ )
87
+ ] });
88
+ let h;
89
+ if (K) {
90
+ const { children: n, ...s } = v, y = J(n, x, void 0, N), a = n.props, g = Object.fromEntries(
91
+ Object.entries(s).map(
92
+ ([o, C]) => o.startsWith("on") && typeof C == "function" && typeof a[o] == "function" ? [
93
+ o,
94
+ M(
95
+ a[o],
96
+ C
97
+ )
98
+ ] : [o, C]
99
+ )
100
+ );
101
+ h = U.cloneElement(y, {
102
+ ...g,
103
+ ref: Q(X(n), f),
104
+ "aria-current": E ?? a["aria-current"],
105
+ "aria-label": i ?? s["aria-label"] ?? a["aria-label"]
106
+ });
107
+ } else {
108
+ const {
109
+ href: n,
110
+ target: s,
111
+ rel: y,
112
+ ...a
113
+ } = v, g = ae(n);
114
+ h = g !== void 0 ? /* @__PURE__ */ e(
115
+ "a",
116
+ {
117
+ ...a,
118
+ ref: f,
119
+ href: g,
120
+ target: s,
121
+ rel: ee(y, s),
122
+ "aria-current": E,
123
+ "aria-label": i ?? a["aria-label"],
124
+ className: x,
125
+ children: N
126
+ }
127
+ ) : /* @__PURE__ */ e(
128
+ "button",
129
+ {
130
+ ...a,
131
+ ref: f,
132
+ type: "button",
133
+ "aria-expanded": a["aria-expanded"] ?? (m ? m === "expanded" : void 0),
134
+ "aria-label": i ?? a["aria-label"],
135
+ className: x,
136
+ children: N
137
+ }
138
+ );
139
+ }
140
+ const G = q(w["aria-expanded"]);
141
+ return p ? /* @__PURE__ */ e(
142
+ Y,
143
+ {
144
+ text: p,
145
+ placement: "right",
146
+ delay: re,
147
+ describesTrigger: !1,
148
+ suppressed: G,
149
+ children: h
150
+ }
151
+ ) : h;
152
+ });
153
+ oe.displayName = "NavItem";
154
+ export {
155
+ oe as NavItem,
156
+ oe as default
157
+ };
158
+ //# sourceMappingURL=NavItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NavItem.js","sources":["../../src/components/NavItem.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport CaretRightIcon from './CustomIcons/CaretRightIcon';\nimport Tooltip from './Tooltip';\nimport { isExpanded } from './ariaState';\nimport { paintOnChild } from './asChild';\nimport { chainHandler, composeRefs, elementRef } from './composeRefs';\nimport { FOCUS_RING_INSET } from './focusRing';\nimport { resolveRel } from './linkRel';\nimport { safeHref } from './safeHref';\n\ntype NativeProps = Omit<\n React.HTMLAttributes<HTMLElement>,\n 'children' | 'className' | 'style' | 'color' | 'title'\n>;\n\ninterface NavItemBaseProps extends NativeProps {\n label: React.ReactNode;\n icon?: React.ReactNode;\n active?: boolean;\n hasActiveChild?: boolean;\n collapsed?: boolean;\n variant?: 'item' | 'subitem';\n size?: 'medium' | 'small';\n danger?: boolean;\n trailing?: React.ReactNode;\n badge?: React.ReactNode;\n badgeLabel?: string;\n tag?: React.ReactNode;\n disclosure?: 'expanded' | 'collapsed';\n tooltip?: string;\n accessibleLabel?: string;\n className?: string;\n}\n\nexport interface NavItemLinkProps extends NavItemBaseProps {\n asChild?: false;\n href?: string;\n target?: string;\n rel?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void;\n}\n\nexport interface NavItemAsChildProps extends NavItemBaseProps {\n asChild: true;\n children: React.ReactElement;\n href?: never;\n target?: never;\n rel?: never;\n disclosure?: never;\n}\n\nexport type NavItemProps = NavItemLinkProps | NavItemAsChildProps;\n\nconst TOOLTIP_DELAY_S = 0.2;\n\nconst ROW =\n 'group relative flex items-center box-border no-underline border-0 m-0 cursor-pointer select-none text-left font-sans font-medium text-[length:var(--malachite-font-size-small,13px)] leading-[17px] rounded-[var(--malachite-radius-xl,12px)] transition-[background-color,color] duration-200';\n\nconst SHAPE = {\n item: 'w-full min-h-[37px] gap-3 py-[10px] px-3',\n compact: 'w-full min-h-9 gap-3 py-2 px-3',\n subitem: 'w-full gap-3 py-2 pr-3 pl-9',\n collapsed: 'w-9 h-[37px] shrink-0 justify-center p-0',\n} as const;\n\nconst ACTIVE_BACKGROUND =\n 'bg-[var(--malachite-accent-background-glass,rgba(0,175,102,0.08))] supports-[color:color-mix(in_srgb,red,red)]:bg-[color-mix(in_srgb,var(--malachite-accent-background,rgb(0,175,102))_12%,transparent)]';\n\nconst TONE = {\n idle: 'bg-transparent text-[var(--malachite-text-secondary,rgb(123,123,123))] hover:bg-[var(--malachite-buttonlist-hover-background,rgb(245,245,245))] hover:text-[var(--malachite-text-primary,rgb(10,10,10))]',\n active: `${ACTIVE_BACKGROUND} text-[var(--malachite-accent-foreground,rgb(2,122,66))] hover:text-[var(--malachite-accent-foreground,rgb(2,122,66))]`,\n activeChild:\n 'bg-transparent text-[var(--malachite-accent-foreground,rgb(2,122,66))] hover:bg-[var(--malachite-buttonlist-hover-background,rgb(245,245,245))] hover:text-[var(--malachite-accent-foreground,rgb(2,122,66))]',\n danger: 'bg-transparent text-[var(--malachite-text-destructive,rgb(237,53,54))] hover:bg-[var(--malachite-error-background-glass,rgba(197,63,63,0.08))] hover:text-[var(--malachite-text-destructive,rgb(237,53,54))]',\n} as const;\n\nconst DOT_TONE = {\n idle: 'bg-[var(--malachite-text-placeholder,rgb(187,187,187))] group-hover:bg-[var(--malachite-text-primary,rgb(10,10,10))]',\n active: 'bg-[var(--malachite-accent-foreground,rgb(2,122,66))]',\n activeChild: 'bg-[var(--malachite-accent-foreground,rgb(2,122,66))]',\n danger: 'bg-[var(--malachite-text-destructive,rgb(237,53,54))]',\n} as const;\n\nconst ICON = 'inline-flex shrink-0 items-center justify-center size-4 [&_svg]:size-4!';\n\nconst NavItem = forwardRef<HTMLElement, NavItemProps>((props, ref) => {\n const {\n label,\n icon,\n active = false,\n hasActiveChild = false,\n collapsed = false,\n variant = 'item',\n size = 'medium',\n danger = false,\n trailing,\n badge,\n badgeLabel,\n tag,\n disclosure,\n tooltip,\n accessibleLabel,\n className = '',\n asChild,\n ...rest\n } = props;\n\n const tone = danger ? 'danger' : active ? 'active' : hasActiveChild ? 'activeChild' : 'idle';\n const isSubitem = variant === 'subitem';\n const shapeKey = variant === 'item' && size === 'small' ? 'compact' : variant;\n const shape = collapsed ? SHAPE.collapsed : SHAPE[shapeKey];\n const rowClass = `${ROW} ${shape} ${TONE[tone]} ${FOCUS_RING_INSET} ${className}`.trim();\n\n const tooltipText = collapsed\n ? (tooltip ?? (typeof label === 'string' ? label : undefined))\n : undefined;\n const collapsedName = tooltipText\n ? [tooltipText, badgeLabel].filter(Boolean).join(', ')\n : undefined;\n const ariaLabel = accessibleLabel ?? (collapsed ? collapsedName : undefined);\n const native = rest as NativeProps;\n const ariaCurrent = active ? 'page' : native['aria-current'];\n\n const content = collapsed ? (\n <>\n {icon && (\n <span aria-hidden=\"true\" className={ICON}>\n {icon}\n </span>\n )}\n {!ariaLabel && (\n <span className=\"sr-only\">\n {label}\n {badgeLabel && `, ${badgeLabel}`}\n </span>\n )}\n {badge && (\n <span\n aria-hidden=\"true\"\n className=\"pointer-events-none absolute top-1 right-1 flex\"\n >\n {badge}\n </span>\n )}\n </>\n ) : (\n <>\n {isSubitem ? (\n <span\n aria-hidden=\"true\"\n className={`absolute left-[14px] top-1/2 -mt-[2px] size-1 rounded-full transition-colors duration-200 ${DOT_TONE[tone]}`}\n />\n ) : (\n icon && (\n <span aria-hidden=\"true\" className={ICON}>\n {icon}\n </span>\n )\n )}\n <span className=\"flex min-w-0 flex-1 items-center gap-2\">\n <span className=\"min-w-0 truncate\">{label}</span>\n {tag && <span className=\"flex shrink-0\">{tag}</span>}\n </span>\n {badge && (\n <span aria-hidden={badgeLabel ? true : undefined} className=\"flex shrink-0\">\n {badge}\n </span>\n )}\n {badge && badgeLabel && !ariaLabel && <span className=\"sr-only\">{badgeLabel}</span>}\n {trailing && <span className=\"flex shrink-0 items-center\">{trailing}</span>}\n {disclosure && (\n <span\n aria-hidden=\"true\"\n className=\"flex shrink-0 items-center\"\n style={{\n transform: disclosure === 'expanded' ? 'rotate(90deg)' : undefined,\n transition: 'transform 0.2s',\n }}\n >\n <CaretRightIcon size={14} />\n </span>\n )}\n </>\n );\n\n let element: React.ReactElement;\n if (asChild) {\n const { children, ...childNative } = rest as NativeProps & {\n children: React.ReactElement<Record<string, unknown>>;\n };\n const painted = paintOnChild(children, rowClass, undefined, content);\n const childProps = children.props;\n const chained = Object.fromEntries(\n Object.entries(childNative).map(([key, value]) =>\n key.startsWith('on') &&\n typeof value === 'function' &&\n typeof childProps[key] === 'function'\n ? [\n key,\n chainHandler(\n childProps[key] as (event: React.SyntheticEvent) => void,\n value as (event: React.SyntheticEvent) => void,\n ),\n ]\n : [key, value],\n ),\n );\n element = React.cloneElement(painted, {\n ...chained,\n ref: composeRefs(elementRef<HTMLElement>(children), ref),\n 'aria-current': ariaCurrent ?? childProps['aria-current'],\n 'aria-label': ariaLabel ?? childNative['aria-label'] ?? childProps['aria-label'],\n } as Record<string, unknown>);\n } else {\n const {\n href: rawHref,\n target,\n rel,\n ...linkNative\n } = rest as NativeProps & Pick<NavItemLinkProps, 'href' | 'target' | 'rel'>;\n const href = safeHref(rawHref);\n element =\n href !== undefined ? (\n <a\n {...linkNative}\n ref={ref as React.Ref<HTMLAnchorElement>}\n href={href}\n target={target}\n rel={resolveRel(rel, target)}\n aria-current={ariaCurrent}\n aria-label={ariaLabel ?? linkNative['aria-label']}\n className={rowClass}\n >\n {content}\n </a>\n ) : (\n <button\n {...linkNative}\n ref={ref as React.Ref<HTMLButtonElement>}\n type=\"button\"\n aria-expanded={\n linkNative['aria-expanded'] ??\n (disclosure ? disclosure === 'expanded' : undefined)\n }\n aria-label={ariaLabel ?? linkNative['aria-label']}\n className={rowClass}\n >\n {content}\n </button>\n );\n }\n\n const popupOpen = isExpanded(native['aria-expanded']);\n\n return tooltipText ? (\n <Tooltip\n text={tooltipText}\n placement=\"right\"\n delay={TOOLTIP_DELAY_S}\n describesTrigger={false}\n suppressed={popupOpen}\n >\n {element}\n </Tooltip>\n ) : (\n element\n );\n});\n\nNavItem.displayName = 'NavItem';\n\nexport { NavItem };\nexport default NavItem;\n"],"names":["TOOLTIP_DELAY_S","ROW","SHAPE","ACTIVE_BACKGROUND","TONE","DOT_TONE","ICON","NavItem","forwardRef","props","ref","label","icon","active","hasActiveChild","collapsed","variant","size","danger","trailing","badge","badgeLabel","tag","disclosure","tooltip","accessibleLabel","className","asChild","rest","tone","isSubitem","shape","rowClass","FOCUS_RING_INSET","tooltipText","collapsedName","ariaLabel","native","ariaCurrent","content","jsxs","Fragment","jsx","CaretRightIcon","element","children","childNative","painted","paintOnChild","childProps","chained","key","value","chainHandler","React","composeRefs","elementRef","rawHref","target","rel","linkNative","href","safeHref","resolveRel","popupOpen","isExpanded","Tooltip"],"mappings":"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"}
@@ -0,0 +1,262 @@
1
+ import { jsxs as me, Fragment as ve, jsx as C } from "react/jsx-runtime";
2
+ import he, { useContext as be, useState as U, useSyncExternalStore as Ee, useRef as h, useCallback as Pe, useEffect as W, useMemo as ge } from "react";
3
+ import { createPortal as xe } from "react-dom";
4
+ import { ShadowRootWrapper as we } from "../ShadowRootWrapper.js";
5
+ import { PopoverEmpty as Le, PopoverSection as ye, PopoverList as Me, PopoverAction as Se, PopoverHeader as Te } from "./PopoverParts.js";
6
+ import { getDeepActiveElement as j } from "./activeElement.js";
7
+ import { elementRef as _e, composeRefs as Ae, chainHandler as m } from "./composeRefs.js";
8
+ import { pushEscapeLayer as Ce } from "./escapeLayers.js";
9
+ import { MENU_VIEWPORT_PADDING_PX as De } from "./floatingMenuGeometry.js";
10
+ import { FOCUSABLE_SELECTOR as Ie } from "./overlayBehaviour.js";
11
+ import { PopoverTreeContext as q } from "./popoverTree.js";
12
+ import { overlayIdentity as Ne } from "./portalOverlay.js";
13
+ import { useHoverClose as Oe } from "./useHoverClose.js";
14
+ import { useLatestRef as D } from "./useLatestRef.js";
15
+ import { usePopoverPosition as ke } from "./usePopoverPosition.js";
16
+ import { usePopoverTree as Re } from "./usePopoverTree.js";
17
+ const Ke = "font-sans box-border overflow-auto outline-none rounded-[var(--malachite-radius-xl,12px)] border border-solid border-[var(--malachite-card-border,rgb(232,232,232))] bg-[var(--malachite-card-background,rgb(255,255,255))] text-[var(--malachite-text-primary,rgb(10,10,10))]", Be = {
18
+ default: "[box-shadow:0px_4px_10px_0px_var(--malachite-card-shadow,rgba(0,0,0,0.1))]",
19
+ raised: "[box-shadow:0px_8px_24px_0px_var(--malachite-card-shadow,rgba(0,0,0,0.1))]"
20
+ }, $e = {
21
+ none: "p-0",
22
+ small: "p-1",
23
+ medium: "p-2"
24
+ }, He = (o, c) => {
25
+ for (const b of c)
26
+ if (b && o.includes(b))
27
+ return !0;
28
+ return !1;
29
+ }, Ue = {
30
+ bottom: "ArrowDown",
31
+ top: "ArrowUp",
32
+ right: "ArrowRight",
33
+ left: "ArrowLeft"
34
+ }, V = (o) => {
35
+ if (!(o instanceof Node))
36
+ return [];
37
+ const c = o.getRootNode();
38
+ return [o, ...c instanceof ShadowRoot ? V(c.host) : []];
39
+ }, We = () => () => {
40
+ }, je = () => !0, qe = () => !1, G = (o, c) => c ?? o.querySelector(Ie) ?? o, Ge = ({
41
+ trigger: o,
42
+ children: c,
43
+ open: b,
44
+ defaultOpen: Y = !1,
45
+ onOpenChange: X,
46
+ placement: I = "bottom-start",
47
+ openOn: i = "click",
48
+ width: z = "content",
49
+ padding: F = "small",
50
+ anchorRef: J,
51
+ offset: Q = "small",
52
+ elevation: Z = "default",
53
+ initialFocusRef: d,
54
+ role: N = "dialog",
55
+ "aria-label": ee,
56
+ "aria-labelledby": re,
57
+ className: oe = ""
58
+ }) => {
59
+ const te = be(q), [ne, se] = U(Y), t = b ?? ne, ce = Ee(We, je, qe), E = h(null), g = h(null), [u, ue] = U(null), O = h(0), _ = h(!1), x = h(!1), w = h(!1), L = D(t), k = D(b), y = D(X), n = Pe(
60
+ (e) => {
61
+ var p;
62
+ e !== L.current && (k.current === void 0 && se(e), (p = y.current) == null || p.call(y, e));
63
+ },
64
+ [L, k, y]
65
+ ), { pointerInside: M, focusInside: P, triggerFocused: R, cancelClose: v, scheduleClose: S } = Oe({
66
+ isOpenRef: L,
67
+ heldByChildren: O,
68
+ setOpen: n
69
+ }), { tree: ae, ownedSources: A } = Re({
70
+ parent: te,
71
+ isOpen: t,
72
+ openOn: i,
73
+ isOpenRef: L,
74
+ heldByChildren: O,
75
+ cancelClose: v,
76
+ scheduleClose: S
77
+ }), r = ke({
78
+ isOpen: t,
79
+ panel: u,
80
+ hostRef: g,
81
+ triggerRef: E,
82
+ anchorRef: J,
83
+ placement: I,
84
+ width: z,
85
+ offset: Q
86
+ });
87
+ W(() => {
88
+ if (!t)
89
+ return;
90
+ const e = (a) => {
91
+ const l = a.composedPath();
92
+ He(l, [
93
+ E.current,
94
+ g.current,
95
+ ...[...A.current].map((pe) => pe())
96
+ ]) || n(!1);
97
+ };
98
+ document.addEventListener("mousedown", e, !0);
99
+ const p = Ce(() => n(!1));
100
+ return () => {
101
+ var l;
102
+ document.removeEventListener("mousedown", e, !0), p(), M.current = !1;
103
+ const a = j();
104
+ P.current && (!a || a === document.body) && (x.current = !0, (l = E.current) == null || l.focus({ preventScroll: !0 }), x.current = !1), P.current = !1;
105
+ };
106
+ }, [t, n, A, M, P]);
107
+ const K = t && u !== null && r !== null;
108
+ W(() => {
109
+ const e = i === "click" || _.current;
110
+ !K || !u || !e || (_.current = !1, G(u, d == null ? void 0 : d.current).focus({ preventScroll: !0 }));
111
+ }, [K, u, i, d]);
112
+ const B = () => {
113
+ if (v(), t && u) {
114
+ G(u, d == null ? void 0 : d.current).focus({ preventScroll: !0 });
115
+ return;
116
+ }
117
+ _.current = !0, n(!0);
118
+ }, T = (e) => {
119
+ const p = [
120
+ E.current,
121
+ g.current,
122
+ u,
123
+ ...[...A.current].map((a) => a())
124
+ ];
125
+ return V(e).some(
126
+ (a) => p.some((l) => l == null ? void 0 : l.contains(a))
127
+ );
128
+ }, $ = (e) => {
129
+ e && queueMicrotask(() => {
130
+ !T(e) && !T(j()) && n(!1);
131
+ });
132
+ }, s = i === "hover" ? {
133
+ onMouseEnter: () => {
134
+ M.current = !0, v(), n(!0);
135
+ },
136
+ onMouseLeave: () => {
137
+ M.current = !1, S();
138
+ }
139
+ } : null, f = o.props, H = _e(o), le = ge(
140
+ () => Ae(H, E),
141
+ [H]
142
+ ), ie = Ue[I.split("-")[0]], de = he.cloneElement(o, {
143
+ ref: le,
144
+ "aria-haspopup": N,
145
+ "aria-expanded": t,
146
+ onClick: m(
147
+ f.onClick,
148
+ (e) => {
149
+ if (i !== "hover") {
150
+ n(!t);
151
+ return;
152
+ }
153
+ if (e.detail === 0) {
154
+ B();
155
+ return;
156
+ }
157
+ v(), n(!0);
158
+ }
159
+ ),
160
+ ...s ? {
161
+ onMouseEnter: m(
162
+ f.onMouseEnter,
163
+ s.onMouseEnter
164
+ ),
165
+ onMouseLeave: m(
166
+ f.onMouseLeave,
167
+ s.onMouseLeave
168
+ ),
169
+ onMouseDown: m(
170
+ f.onMouseDown,
171
+ () => {
172
+ w.current = !0, setTimeout(() => {
173
+ w.current = !1;
174
+ });
175
+ }
176
+ ),
177
+ onFocus: m(f.onFocus, () => {
178
+ const e = w.current;
179
+ w.current = !1, R.current = !e && !x.current, !x.current && (v(), n(!0));
180
+ }),
181
+ onKeyDown: m(
182
+ f.onKeyDown,
183
+ (e) => {
184
+ e.key === ie && (e.preventDefault(), B());
185
+ }
186
+ )
187
+ } : {},
188
+ onBlur: m(
189
+ f.onBlur,
190
+ (e) => {
191
+ if (R.current = !1, !(!t || T(e.relatedTarget))) {
192
+ if (i === "hover") {
193
+ S();
194
+ return;
195
+ }
196
+ $(e.relatedTarget);
197
+ }
198
+ }
199
+ )
200
+ }), fe = {
201
+ maxHeight: r == null ? void 0 : r.maxHeight,
202
+ maxWidth: `calc(100vw - ${De * 2}px)`,
203
+ visibility: r ? "visible" : "hidden"
204
+ };
205
+ return /* @__PURE__ */ me(ve, { children: [
206
+ de,
207
+ t && ce && xe(
208
+ /* @__PURE__ */ C(q.Provider, { value: ae, children: /* @__PURE__ */ C(
209
+ we,
210
+ {
211
+ hostRef: g,
212
+ hostProps: Ne("popover"),
213
+ hostStyle: {
214
+ position: "fixed",
215
+ top: (r == null ? void 0 : r.top) ?? 0,
216
+ left: (r == null ? void 0 : r.left) ?? 0
217
+ },
218
+ children: /* @__PURE__ */ C(
219
+ "div",
220
+ {
221
+ ref: ue,
222
+ role: N,
223
+ "aria-label": ee,
224
+ "aria-labelledby": re,
225
+ "data-side": r == null ? void 0 : r.side,
226
+ tabIndex: -1,
227
+ className: `${Ke} ${Be[Z]} ${$e[F]} ${oe}`.trim(),
228
+ style: fe,
229
+ onMouseEnter: s == null ? void 0 : s.onMouseEnter,
230
+ onMouseLeave: s == null ? void 0 : s.onMouseLeave,
231
+ onFocus: () => {
232
+ P.current = !0, v();
233
+ },
234
+ onBlur: (e) => {
235
+ if (!T(e.relatedTarget)) {
236
+ if (P.current = !1, i === "hover") {
237
+ S();
238
+ return;
239
+ }
240
+ $(e.relatedTarget);
241
+ }
242
+ },
243
+ children: c
244
+ }
245
+ )
246
+ }
247
+ ) }),
248
+ document.body
249
+ )
250
+ ] });
251
+ }, lr = Object.assign(Ge, {
252
+ Header: Te,
253
+ Action: Se,
254
+ List: Me,
255
+ Section: ye,
256
+ Empty: Le
257
+ });
258
+ export {
259
+ lr as Popover,
260
+ lr as default
261
+ };
262
+ //# sourceMappingURL=Popover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.js","sources":["../../src/components/Popover.tsx"],"sourcesContent":["import React, {\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n useSyncExternalStore,\n} from 'react';\nimport { createPortal } from 'react-dom';\nimport { ShadowRootWrapper } from '../ShadowRootWrapper';\nimport {\n PopoverAction,\n PopoverEmpty,\n PopoverHeader,\n PopoverList,\n PopoverSection,\n} from './PopoverParts';\nimport { getDeepActiveElement } from './activeElement';\nimport { chainHandler, composeRefs, elementRef } from './composeRefs';\nimport { pushEscapeLayer } from './escapeLayers';\nimport {\n type FloatingOffset,\n type FloatingPlacement,\n MENU_VIEWPORT_PADDING_PX,\n} from './floatingMenuGeometry';\nimport { FOCUSABLE_SELECTOR } from './overlayBehaviour';\nimport { PopoverTreeContext } from './popoverTree';\nimport { overlayIdentity } from './portalOverlay';\nimport { useHoverClose } from './useHoverClose';\nimport { useLatestRef } from './useLatestRef';\nimport { usePopoverPosition } from './usePopoverPosition';\nimport { usePopoverTree } from './usePopoverTree';\n\nexport type PopoverPlacement = FloatingPlacement;\n\ninterface PopoverBaseProps {\n trigger: React.ReactElement;\n children?: React.ReactNode;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n placement?: PopoverPlacement;\n openOn?: 'click' | 'hover';\n width?: 'content' | 'trigger';\n padding?: 'none' | 'small' | 'medium';\n anchorRef?: React.RefObject<HTMLElement | null>;\n offset?: FloatingOffset;\n elevation?: 'default' | 'raised';\n initialFocusRef?: React.RefObject<HTMLElement | null>;\n role?: 'dialog' | 'menu' | 'listbox';\n className?: string;\n}\n\ntype PopoverName =\n | { 'aria-label': string; 'aria-labelledby'?: string }\n | { 'aria-label'?: string; 'aria-labelledby': string };\n\nexport type PopoverProps = PopoverBaseProps & PopoverName;\n\nconst PANEL =\n 'font-sans box-border overflow-auto outline-none rounded-[var(--malachite-radius-xl,12px)] border border-solid border-[var(--malachite-card-border,rgb(232,232,232))] bg-[var(--malachite-card-background,rgb(255,255,255))] text-[var(--malachite-text-primary,rgb(10,10,10))]';\n\nconst ELEVATION: Record<NonNullable<PopoverBaseProps['elevation']>, string> = {\n default: '[box-shadow:0px_4px_10px_0px_var(--malachite-card-shadow,rgba(0,0,0,0.1))]',\n raised: '[box-shadow:0px_8px_24px_0px_var(--malachite-card-shadow,rgba(0,0,0,0.1))]',\n};\n\nconst PADDING: Record<NonNullable<PopoverBaseProps['padding']>, string> = {\n none: 'p-0',\n small: 'p-1',\n medium: 'p-2',\n};\n\nconst pathHits = (path: EventTarget[], nodes: Iterable<Element | null | undefined>): boolean => {\n for (const node of nodes) {\n if (node && path.includes(node)) {\n return true;\n }\n }\n return false;\n};\n\nconst KEYBOARD_OPEN_KEY: Record<string, string> = {\n bottom: 'ArrowDown',\n top: 'ArrowUp',\n right: 'ArrowRight',\n left: 'ArrowLeft',\n};\n\nconst composedPathOf = (node: EventTarget | null): Node[] => {\n if (!(node instanceof Node)) {\n return [];\n }\n const root = node.getRootNode();\n return [node, ...(root instanceof ShadowRoot ? composedPathOf(root.host) : [])];\n};\n\nconst subscribeToNothing = () => () => undefined;\nconst onClient = () => true;\nconst onServer = () => false;\n\nconst focusTarget = (panel: HTMLElement, initial: HTMLElement | null | undefined): HTMLElement =>\n initial ?? panel.querySelector<HTMLElement>(FOCUSABLE_SELECTOR) ?? panel;\n\n/** An anchored, non-modal panel; nested Popovers count as inside their parent. */\nconst PopoverRoot: React.FC<PopoverProps> = ({\n trigger,\n children,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n placement = 'bottom-start',\n openOn = 'click',\n width = 'content',\n padding = 'small',\n anchorRef,\n offset = 'small',\n elevation = 'default',\n initialFocusRef,\n role = 'dialog',\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n className = '',\n}) => {\n const parent = useContext(PopoverTreeContext);\n const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);\n const isOpen = controlledOpen ?? uncontrolledOpen;\n const isClient = useSyncExternalStore(subscribeToNothing, onClient, onServer);\n\n const triggerRef = useRef<HTMLElement | null>(null);\n const hostRef = useRef<HTMLDivElement | null>(null);\n const [panel, setPanel] = useState<HTMLDivElement | null>(null);\n const heldByChildren = useRef(0);\n const focusOnOpen = useRef(false);\n const returningFocus = useRef(false);\n const pointerPressedTrigger = useRef(false);\n\n const isOpenRef = useLatestRef(isOpen);\n const controlledRef = useLatestRef(controlledOpen);\n const onOpenChangeRef = useLatestRef(onOpenChange);\n\n const setOpen = useCallback(\n (next: boolean) => {\n if (next === isOpenRef.current) {\n return;\n }\n if (controlledRef.current === undefined) {\n setUncontrolledOpen(next);\n }\n onOpenChangeRef.current?.(next);\n },\n [isOpenRef, controlledRef, onOpenChangeRef],\n );\n\n const { pointerInside, focusInside, triggerFocused, cancelClose, scheduleClose } =\n useHoverClose({\n isOpenRef,\n heldByChildren,\n setOpen,\n });\n\n const { tree, ownedSources } = usePopoverTree({\n parent,\n isOpen,\n openOn,\n isOpenRef,\n heldByChildren,\n cancelClose,\n scheduleClose,\n });\n\n const geometry = usePopoverPosition({\n isOpen,\n panel,\n hostRef,\n triggerRef,\n anchorRef,\n placement,\n width,\n offset,\n });\n\n useEffect(() => {\n if (!isOpen) {\n return;\n }\n const closeOnOutsidePress = (event: MouseEvent) => {\n const path = event.composedPath();\n const inside = pathHits(path, [\n triggerRef.current,\n hostRef.current,\n ...[...ownedSources.current].map((source) => source()),\n ]);\n if (!inside) {\n setOpen(false);\n }\n };\n document.addEventListener('mousedown', closeOnOutsidePress, true);\n const popEscapeLayer = pushEscapeLayer(() => setOpen(false));\n return () => {\n document.removeEventListener('mousedown', closeOnOutsidePress, true);\n popEscapeLayer();\n pointerInside.current = false;\n const active = getDeepActiveElement();\n if (focusInside.current && (!active || active === document.body)) {\n returningFocus.current = true;\n triggerRef.current?.focus({ preventScroll: true });\n returningFocus.current = false;\n }\n focusInside.current = false;\n };\n }, [isOpen, setOpen, ownedSources, pointerInside, focusInside]);\n\n const shown = isOpen && panel !== null && geometry !== null;\n\n useEffect(() => {\n const shouldFocus = openOn === 'click' || focusOnOpen.current;\n if (!shown || !panel || !shouldFocus) {\n return;\n }\n focusOnOpen.current = false;\n focusTarget(panel, initialFocusRef?.current).focus({ preventScroll: true });\n }, [shown, panel, openOn, initialFocusRef]);\n\n const openWithFocus = () => {\n cancelClose();\n if (isOpen && panel) {\n focusTarget(panel, initialFocusRef?.current).focus({ preventScroll: true });\n return;\n }\n focusOnOpen.current = true;\n setOpen(true);\n };\n\n const isInside = (node: EventTarget | null): boolean => {\n const containers = [\n triggerRef.current,\n hostRef.current,\n panel,\n ...[...ownedSources.current].map((source) => source()),\n ];\n return composedPathOf(node).some((step) =>\n containers.some((container) => container?.contains(step)),\n );\n };\n\n const closeIfFocusLeft = (next: EventTarget | null) => {\n if (!next) {\n return;\n }\n queueMicrotask(() => {\n if (!isInside(next) && !isInside(getDeepActiveElement())) {\n setOpen(false);\n }\n });\n };\n\n const hoverHandlers =\n openOn === 'hover'\n ? {\n onMouseEnter: () => {\n pointerInside.current = true;\n cancelClose();\n setOpen(true);\n },\n onMouseLeave: () => {\n pointerInside.current = false;\n scheduleClose();\n },\n }\n : null;\n\n const triggerProps = trigger.props as Record<string, unknown>;\n type Handler<E extends React.SyntheticEvent> = ((event: E) => void) | undefined;\n\n const ownTriggerRef = elementRef<HTMLElement>(trigger);\n const composedTriggerRef = useMemo(\n () => composeRefs(ownTriggerRef, triggerRef),\n [ownTriggerRef],\n );\n const openKey = KEYBOARD_OPEN_KEY[placement.split('-')[0]];\n\n const clonedTrigger = React.cloneElement(trigger, {\n ref: composedTriggerRef,\n 'aria-haspopup': role,\n 'aria-expanded': isOpen,\n onClick: chainHandler(\n triggerProps.onClick as Handler<React.MouseEvent>,\n (event: React.MouseEvent) => {\n if (openOn !== 'hover') {\n setOpen(!isOpen);\n return;\n }\n const fromKeyboard = event.detail === 0;\n if (fromKeyboard) {\n openWithFocus();\n return;\n }\n cancelClose();\n setOpen(true);\n },\n ),\n ...(hoverHandlers\n ? {\n onMouseEnter: chainHandler(\n triggerProps.onMouseEnter as Handler<React.MouseEvent>,\n hoverHandlers.onMouseEnter,\n ),\n onMouseLeave: chainHandler(\n triggerProps.onMouseLeave as Handler<React.MouseEvent>,\n hoverHandlers.onMouseLeave,\n ),\n onMouseDown: chainHandler(\n triggerProps.onMouseDown as Handler<React.MouseEvent>,\n () => {\n pointerPressedTrigger.current = true;\n setTimeout(() => {\n pointerPressedTrigger.current = false;\n });\n },\n ),\n onFocus: chainHandler(triggerProps.onFocus as Handler<React.FocusEvent>, () => {\n const fromPointer = pointerPressedTrigger.current;\n pointerPressedTrigger.current = false;\n triggerFocused.current = !fromPointer && !returningFocus.current;\n if (returningFocus.current) {\n return;\n }\n cancelClose();\n setOpen(true);\n }),\n onKeyDown: chainHandler(\n triggerProps.onKeyDown as Handler<React.KeyboardEvent>,\n (event: React.KeyboardEvent) => {\n if (event.key !== openKey) {\n return;\n }\n event.preventDefault();\n openWithFocus();\n },\n ),\n }\n : {}),\n onBlur: chainHandler(\n triggerProps.onBlur as Handler<React.FocusEvent>,\n (event: React.FocusEvent) => {\n triggerFocused.current = false;\n if (!isOpen || isInside(event.relatedTarget)) {\n return;\n }\n if (openOn === 'hover') {\n scheduleClose();\n return;\n }\n closeIfFocusLeft(event.relatedTarget);\n },\n ),\n } as Record<string, unknown>);\n\n const panelStyle: React.CSSProperties = {\n maxHeight: geometry?.maxHeight,\n maxWidth: `calc(100vw - ${MENU_VIEWPORT_PADDING_PX * 2}px)`,\n visibility: geometry ? 'visible' : 'hidden',\n };\n\n return (\n <>\n {clonedTrigger}\n {isOpen &&\n isClient &&\n createPortal(\n <PopoverTreeContext.Provider value={tree}>\n <ShadowRootWrapper\n hostRef={hostRef}\n hostProps={overlayIdentity('popover')}\n hostStyle={{\n position: 'fixed',\n top: geometry?.top ?? 0,\n left: geometry?.left ?? 0,\n }}\n >\n <div\n ref={setPanel}\n role={role}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n data-side={geometry?.side}\n tabIndex={-1}\n className={`${PANEL} ${ELEVATION[elevation]} ${PADDING[padding]} ${className}`.trim()}\n style={panelStyle}\n onMouseEnter={hoverHandlers?.onMouseEnter}\n onMouseLeave={hoverHandlers?.onMouseLeave}\n onFocus={() => {\n focusInside.current = true;\n cancelClose();\n }}\n onBlur={(event) => {\n if (isInside(event.relatedTarget)) {\n return;\n }\n focusInside.current = false;\n if (openOn === 'hover') {\n scheduleClose();\n return;\n }\n closeIfFocusLeft(event.relatedTarget);\n }}\n >\n {children}\n </div>\n </ShadowRootWrapper>\n </PopoverTreeContext.Provider>,\n document.body,\n )}\n </>\n );\n};\n\nexport const Popover = Object.assign(PopoverRoot, {\n Header: PopoverHeader,\n Action: PopoverAction,\n List: PopoverList,\n Section: PopoverSection,\n Empty: PopoverEmpty,\n});\n\nexport default Popover;\n"],"names":["PANEL","ELEVATION","PADDING","pathHits","path","nodes","node","KEYBOARD_OPEN_KEY","composedPathOf","root","subscribeToNothing","onClient","onServer","focusTarget","panel","initial","FOCUSABLE_SELECTOR","PopoverRoot","trigger","children","controlledOpen","defaultOpen","onOpenChange","placement","openOn","width","padding","anchorRef","offset","elevation","initialFocusRef","role","ariaLabel","ariaLabelledBy","className","parent","useContext","PopoverTreeContext","uncontrolledOpen","setUncontrolledOpen","useState","isOpen","isClient","useSyncExternalStore","triggerRef","useRef","hostRef","setPanel","heldByChildren","focusOnOpen","returningFocus","pointerPressedTrigger","isOpenRef","useLatestRef","controlledRef","onOpenChangeRef","setOpen","useCallback","next","_a","pointerInside","focusInside","triggerFocused","cancelClose","scheduleClose","useHoverClose","tree","ownedSources","usePopoverTree","geometry","usePopoverPosition","useEffect","closeOnOutsidePress","event","source","popEscapeLayer","pushEscapeLayer","active","getDeepActiveElement","shown","shouldFocus","openWithFocus","isInside","containers","step","container","closeIfFocusLeft","hoverHandlers","triggerProps","ownTriggerRef","elementRef","composedTriggerRef","useMemo","composeRefs","openKey","clonedTrigger","React","chainHandler","fromPointer","panelStyle","MENU_VIEWPORT_PADDING_PX","jsxs","Fragment","createPortal","jsx","ShadowRootWrapper","overlayIdentity","Popover","PopoverHeader","PopoverAction","PopoverList","PopoverSection","PopoverEmpty"],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { jsx as t, jsxs as s } from "react/jsx-runtime";
2
+ import { forwardRef as c } from "react";
3
+ import m from "./Tooltip.js";
4
+ import { BORDER as l, NO_SCROLLBAR as p } from "./chromeStyles.js";
5
+ import { FOCUS_RING_INSET as d } from "./focusRing.js";
6
+ const g = ({ title: e, action: r }) => /* @__PURE__ */ s(
7
+ "div",
8
+ {
9
+ className: `flex items-center justify-between border-0 border-b border-solid ${l} px-5 py-4 text-[12px] leading-[15px] font-normal text-[var(--malachite-text-dimmed,rgb(161,161,161))]`,
10
+ children: [
11
+ /* @__PURE__ */ t("span", { children: e }),
12
+ r
13
+ ]
14
+ }
15
+ ), y = ({ children: e }) => /* @__PURE__ */ t("div", { className: `flex max-h-80 flex-col gap-[2px] overflow-y-auto p-2 ${p}`, children: e }), x = c(
16
+ ({ children: e }, r) => /* @__PURE__ */ t("div", { ref: r, className: `border-0 border-t border-solid ${l} p-2`, children: e })
17
+ );
18
+ x.displayName = "Popover.Section";
19
+ const N = ({ children: e }) => /* @__PURE__ */ t("div", { className: "px-3 py-2 text-[length:var(--malachite-font-size-small,13px)] text-[var(--malachite-text-dimmed,rgb(161,161,161))] select-none", children: e }), P = ({
20
+ icon: e,
21
+ "aria-label": r,
22
+ onClick: n,
23
+ disabled: o = !1,
24
+ tooltip: a
25
+ }) => {
26
+ const i = /* @__PURE__ */ t(
27
+ "button",
28
+ {
29
+ type: "button",
30
+ "aria-label": r,
31
+ "aria-disabled": o || void 0,
32
+ onClick: o ? void 0 : n,
33
+ className: `m-0 inline-flex size-5 items-center justify-center rounded-[var(--malachite-radius-sm,4px)] border-0 bg-transparent p-0 transition-colors duration-150 [&_svg]:size-3! ${o ? "cursor-not-allowed text-[var(--malachite-text-placeholder,rgb(187,187,187))] opacity-50" : "cursor-pointer text-[var(--malachite-text-placeholder,rgb(187,187,187))] hover:bg-[var(--malachite-pillbutton-background,rgb(241,241,241))] hover:text-[var(--malachite-text-secondary,rgb(123,123,123))]"} ${d}`,
34
+ children: e
35
+ }
36
+ );
37
+ return a ? /* @__PURE__ */ t(m, { text: a, children: i }) : i;
38
+ };
39
+ export {
40
+ P as PopoverAction,
41
+ N as PopoverEmpty,
42
+ g as PopoverHeader,
43
+ y as PopoverList,
44
+ x as PopoverSection
45
+ };
46
+ //# sourceMappingURL=PopoverParts.js.map