@astryxdesign/core 0.4.7 → 0.5.0-canary.07f6c33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +161 -1
- package/dist/AppShell/AppShell.d.ts.map +1 -1
- package/dist/AppShell/AppShell.js +3 -2
- package/dist/AspectRatio/AspectRatio.d.ts +24 -0
- package/dist/AspectRatio/AspectRatio.d.ts.map +1 -1
- package/dist/AspectRatio/AspectRatio.js +23 -4
- package/dist/Avatar/Avatar.d.ts.map +1 -1
- package/dist/Avatar/Avatar.js +15 -10
- package/dist/AvatarGroup/AvatarGroup.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroup.js +3 -2
- package/dist/Banner/Banner.d.ts +40 -15
- package/dist/Banner/Banner.d.ts.map +1 -1
- package/dist/Banner/Banner.js +51 -18
- package/dist/BottomSheet/BottomSheet.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheet.js +17 -4
- package/dist/BottomSheet/BottomSheetSwitcher.d.ts.map +1 -1
- package/dist/BottomSheet/BottomSheetSwitcher.js +3 -2
- package/dist/Breadcrumbs/BreadcrumbItem.d.ts.map +1 -1
- package/dist/Breadcrumbs/BreadcrumbItem.js +11 -10
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +5 -4
- package/dist/ButtonGroup/ButtonGroup.d.ts +5 -1
- package/dist/ButtonGroup/ButtonGroup.d.ts.map +1 -1
- package/dist/ButtonGroup/ButtonGroup.js +26 -7
- package/dist/Calendar/Calendar.d.ts +3 -1
- package/dist/Calendar/Calendar.d.ts.map +1 -1
- package/dist/Calendar/Calendar.js +13 -14
- package/dist/Calendar/getInitialFocusDate.d.ts +46 -0
- package/dist/Calendar/getInitialFocusDate.d.ts.map +1 -0
- package/dist/Calendar/getInitialFocusDate.js +62 -0
- package/dist/Carousel/Carousel.d.ts.map +1 -1
- package/dist/Carousel/Carousel.js +3 -3
- package/dist/Chat/ChatComposerInput.d.ts.map +1 -1
- package/dist/Chat/ChatComposerInput.js +2 -3
- package/dist/Chat/ChatLayout.d.ts.map +1 -1
- package/dist/Chat/ChatLayout.js +3 -3
- package/dist/Chat/ChatMessageList.d.ts +22 -3
- package/dist/Chat/ChatMessageList.d.ts.map +1 -1
- package/dist/Chat/ChatMessageList.js +6 -3
- package/dist/Chat/ChatTokenizedText.d.ts +2 -0
- package/dist/Chat/ChatTokenizedText.d.ts.map +1 -1
- package/dist/Chat/ChatTokenizedText.js +11 -6
- package/dist/Chat/useChatComposerTokens.js +1 -1
- package/dist/CheckboxInput/CheckboxInput.d.ts.map +1 -1
- package/dist/CheckboxInput/CheckboxInput.js +3 -2
- package/dist/ClickableCard/ClickableCard.d.ts.map +1 -1
- package/dist/ClickableCard/ClickableCard.js +3 -3
- package/dist/CommandPalette/CommandPaletteInput.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteInput.js +3 -2
- package/dist/CommandPalette/CommandPaletteItem.d.ts.map +1 -1
- package/dist/CommandPalette/CommandPaletteItem.js +3 -2
- package/dist/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/ContextMenu/ContextMenu.js +4 -3
- package/dist/DateInput/DateInput.d.ts.map +1 -1
- package/dist/DateInput/DateInput.js +3 -2
- package/dist/DateInput/TouchDateField.d.ts.map +1 -1
- package/dist/DateInput/TouchDateField.js +38 -4
- package/dist/DateTimeInput/DateTimeInput.d.ts +21 -1
- package/dist/DateTimeInput/DateTimeInput.d.ts.map +1 -1
- package/dist/DateTimeInput/DateTimeInput.js +406 -12
- package/dist/DateTimeInput/index.d.ts +1 -1
- package/dist/DateTimeInput/index.d.ts.map +1 -1
- package/dist/Dialog/Dialog.d.ts +7 -1
- package/dist/Dialog/Dialog.d.ts.map +1 -1
- package/dist/Dialog/Dialog.js +89 -58
- package/dist/DropdownMenu/DropdownMenuSubMenu.d.ts.map +1 -1
- package/dist/DropdownMenu/DropdownMenuSubMenu.js +6 -5
- package/dist/FileInput/FileInput.d.ts.map +1 -1
- package/dist/FileInput/FileInput.js +3 -2
- package/dist/Heading/Heading.d.ts.map +1 -1
- package/dist/Heading/Heading.js +6 -2
- package/dist/HoverCard/HoverCard.d.ts +6 -0
- package/dist/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.d.ts +5 -0
- package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.js +67 -25
- package/dist/Item/Item.d.ts.map +1 -1
- package/dist/Item/Item.js +4 -2
- package/dist/Kbd/Kbd.d.ts.map +1 -1
- package/dist/Kbd/Kbd.js +10 -3
- package/dist/Layer/LayerDepthContext.d.ts +52 -0
- package/dist/Layer/LayerDepthContext.d.ts.map +1 -0
- package/dist/Layer/LayerDepthContext.js +66 -0
- package/dist/Layer/index.d.ts +3 -0
- package/dist/Layer/index.d.ts.map +1 -1
- package/dist/Layer/index.js +4 -0
- package/dist/Layer/layerStack.d.ts +98 -0
- package/dist/Layer/layerStack.d.ts.map +1 -0
- package/dist/Layer/layerStack.js +306 -0
- package/dist/Layer/useLayerDismissal.d.ts +93 -0
- package/dist/Layer/useLayerDismissal.d.ts.map +1 -0
- package/dist/Layer/useLayerDismissal.js +91 -0
- package/dist/Lightbox/Lightbox.d.ts +1 -0
- package/dist/Lightbox/Lightbox.d.ts.map +1 -1
- package/dist/Lightbox/Lightbox.js +103 -81
- package/dist/Markdown/index.d.ts +1 -1
- package/dist/Markdown/index.d.ts.map +1 -1
- package/dist/Markdown/parser.d.ts +38 -1
- package/dist/Markdown/parser.d.ts.map +1 -1
- package/dist/Markdown/parser.js +177 -29
- package/dist/MobileNav/MobileNav.d.ts +6 -1
- package/dist/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/MobileNav/MobileNav.js +61 -36
- package/dist/MultiSelector/MultiSelector.d.ts +15 -1
- package/dist/MultiSelector/MultiSelector.d.ts.map +1 -1
- package/dist/MultiSelector/MultiSelector.js +17 -6
- package/dist/MultiSelector/index.d.ts +1 -1
- package/dist/MultiSelector/index.d.ts.map +1 -1
- package/dist/NavMenu/NavHeadingMenu.d.ts.map +1 -1
- package/dist/NavMenu/NavHeadingMenu.js +3 -2
- package/dist/Outline/Outline.d.ts.map +1 -1
- package/dist/Outline/Outline.js +3 -2
- package/dist/OverflowList/OverflowList.d.ts.map +1 -1
- package/dist/OverflowList/OverflowList.js +3 -2
- package/dist/Overlay/Overlay.d.ts.map +1 -1
- package/dist/Overlay/Overlay.js +3 -2
- package/dist/Popover/usePopover.d.ts.map +1 -1
- package/dist/Popover/usePopover.js +20 -17
- package/dist/PowerSearch/PowerSearch.d.ts +8 -2
- package/dist/PowerSearch/PowerSearch.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearch.js +19 -6
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts +3 -1
- package/dist/PowerSearch/PowerSearchEditPopover.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchEditPopover.js +28 -6
- package/dist/PowerSearch/PowerSearchValueEditor.d.ts +3 -1
- package/dist/PowerSearch/PowerSearchValueEditor.d.ts.map +1 -1
- package/dist/PowerSearch/PowerSearchValueEditor.js +19 -9
- package/dist/PowerSearch/types.d.ts +2 -0
- package/dist/PowerSearch/types.d.ts.map +1 -1
- package/dist/PowerSearch/usePowerSearchSource.d.ts +6 -1
- package/dist/PowerSearch/usePowerSearchSource.d.ts.map +1 -1
- package/dist/PowerSearch/usePowerSearchSource.js +14 -5
- package/dist/Resizable/ResizeHandle.d.ts.map +1 -1
- package/dist/Resizable/ResizeHandle.js +3 -2
- package/dist/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/SegmentedControl/SegmentedControl.js +3 -2
- package/dist/SelectableCard/SelectableCard.d.ts.map +1 -1
- package/dist/SelectableCard/SelectableCard.js +3 -3
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +5 -0
- package/dist/SideNav/SideNav.d.ts.map +1 -1
- package/dist/SideNav/SideNav.js +4 -3
- package/dist/SideNav/SideNavHeading.d.ts.map +1 -1
- package/dist/SideNav/SideNavHeading.js +6 -5
- package/dist/SideNav/SideNavItem.d.ts.map +1 -1
- package/dist/SideNav/SideNavItem.js +4 -3
- package/dist/Slider/Slider.d.ts.map +1 -1
- package/dist/Slider/Slider.js +3 -3
- package/dist/Spinner/Spinner.d.ts +3 -3
- package/dist/Spinner/Spinner.d.ts.map +1 -1
- package/dist/Spinner/Spinner.js +130 -78
- package/dist/Stepper/Step.d.ts +140 -0
- package/dist/Stepper/Step.d.ts.map +1 -0
- package/dist/Stepper/Step.js +1045 -0
- package/dist/Stepper/StepStatus.d.ts +24 -0
- package/dist/Stepper/StepStatus.d.ts.map +1 -0
- package/dist/Stepper/StepStatus.js +1 -0
- package/dist/Stepper/Stepper.d.ts +93 -0
- package/dist/Stepper/Stepper.d.ts.map +1 -0
- package/dist/Stepper/Stepper.js +184 -0
- package/dist/Stepper/StepperContext.d.ts +41 -0
- package/dist/Stepper/StepperContext.d.ts.map +1 -0
- package/dist/Stepper/StepperContext.js +34 -0
- package/dist/Stepper/index.d.ts +8 -0
- package/dist/Stepper/index.d.ts.map +1 -0
- package/dist/Stepper/index.js +7 -0
- package/dist/Stepper/stepper.stylex.d.ts +15 -0
- package/dist/Stepper/stepper.stylex.d.ts.map +1 -0
- package/dist/Stepper/stepper.stylex.js +20 -0
- package/dist/Switch/Switch.d.ts.map +1 -1
- package/dist/Switch/Switch.js +3 -2
- package/dist/TabList/Tab.d.ts +15 -2
- package/dist/TabList/Tab.d.ts.map +1 -1
- package/dist/TabList/Tab.js +32 -7
- package/dist/TabList/TabList.d.ts +46 -7
- package/dist/TabList/TabList.d.ts.map +1 -1
- package/dist/TabList/TabList.js +353 -23
- package/dist/TabList/TabListContext.d.ts +11 -1
- package/dist/TabList/TabListContext.d.ts.map +1 -1
- package/dist/TabList/TabListContext.js +11 -2
- package/dist/TabList/TabMenu.d.ts.map +1 -1
- package/dist/TabList/TabMenu.js +3 -2
- package/dist/TabList/index.d.ts +2 -2
- package/dist/TabList/index.d.ts.map +1 -1
- package/dist/Table/BaseTable.d.ts.map +1 -1
- package/dist/Table/BaseTable.js +4 -1
- package/dist/Table/TableRow.d.ts +16 -5
- package/dist/Table/TableRow.d.ts.map +1 -1
- package/dist/Table/TableRow.js +16 -5
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.d.ts.map +1 -1
- package/dist/Table/plugins/groupedRows/useTableGroupedRows.js +20 -8
- package/dist/Table/plugins/pagination/useTablePagination.d.ts +3 -0
- package/dist/Table/plugins/pagination/useTablePagination.d.ts.map +1 -1
- package/dist/Table/plugins/pagination/useTablePagination.js +21 -4
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.d.ts.map +1 -1
- package/dist/Table/plugins/rowExpansion/useTableRowExpansion.js +7 -2
- package/dist/Table/plugins/rowStatus/useTableRowStatus.d.ts.map +1 -1
- package/dist/Table/plugins/rowStatus/useTableRowStatus.js +10 -3
- package/dist/Table/plugins/selection/useTableSelection.d.ts +16 -0
- package/dist/Table/plugins/selection/useTableSelection.d.ts.map +1 -1
- package/dist/Table/plugins/selection/useTableSelection.js +19 -5
- package/dist/Table/types.d.ts +22 -4
- package/dist/Table/types.d.ts.map +1 -1
- package/dist/Table/useBaseTablePlugins.d.ts.map +1 -1
- package/dist/Table/useBaseTablePlugins.js +5 -0
- package/dist/Text/Text.d.ts.map +1 -1
- package/dist/Text/Text.js +6 -2
- package/dist/TextArea/TextArea.d.ts.map +1 -1
- package/dist/TextArea/TextArea.js +3 -2
- package/dist/TextInput/TextInput.d.ts.map +1 -1
- package/dist/TextInput/TextInput.js +3 -2
- package/dist/TimeInput/TimeInput.d.ts.map +1 -1
- package/dist/TimeInput/TimeInput.js +3 -2
- package/dist/Timestamp/Timestamp.d.ts.map +1 -1
- package/dist/Timestamp/Timestamp.js +5 -3
- package/dist/Token/TokenLink.d.ts.map +1 -1
- package/dist/Token/TokenLink.js +2 -2
- package/dist/Tokenizer/Tokenizer.d.ts +3 -1
- package/dist/Tokenizer/Tokenizer.d.ts.map +1 -1
- package/dist/Tokenizer/Tokenizer.js +2 -0
- package/dist/Tooltip/Tooltip.d.ts +5 -0
- package/dist/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.d.ts +5 -0
- package/dist/Tooltip/useTooltip.d.ts.map +1 -1
- package/dist/Tooltip/useTooltip.js +39 -24
- package/dist/TopNav/TopNavHeading.d.ts.map +1 -1
- package/dist/TopNav/TopNavHeading.js +3 -2
- package/dist/TopNav/TopNavMegaMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMegaMenu.js +3 -3
- package/dist/TopNav/TopNavMenu.d.ts.map +1 -1
- package/dist/TopNav/TopNavMenu.js +4 -3
- package/dist/Typeahead/BaseTypeahead.d.ts +2 -0
- package/dist/Typeahead/BaseTypeahead.d.ts.map +1 -1
- package/dist/Typeahead/BaseTypeahead.js +68 -29
- package/dist/Typeahead/Typeahead.d.ts.map +1 -1
- package/dist/Typeahead/Typeahead.js +3 -2
- package/dist/astryx.css +68 -2
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/useFocusTrap.d.ts +7 -4
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap.js +60 -95
- package/dist/hooks/useHotkeys.d.ts.map +1 -1
- package/dist/hooks/useHotkeys.js +10 -3
- package/dist/hooks/useMergedRefs.d.ts +18 -0
- package/dist/hooks/useMergedRefs.d.ts.map +1 -0
- package/dist/hooks/useMergedRefs.js +25 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/utils/groupItems.d.ts +5 -1
- package/dist/utils/groupItems.d.ts.map +1 -1
- package/dist/utils/groupItems.js +9 -9
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/sharedResizeObserver.d.ts.map +1 -1
- package/dist/utils/sharedResizeObserver.js +10 -1
- package/dist/utils/timeParser.d.ts +1 -1
- package/dist/utils/timeParser.d.ts.map +1 -1
- package/dist/utils/timeParser.js +26 -12
- package/locales/en.json +31 -7
- package/locales/pseudo.json +18 -0
- package/package.json +8 -3
- package/src/AppShell/AppShell.tsx +3 -2
- package/src/AspectRatio/AspectRatio.doc.mjs +6 -3
- package/src/AspectRatio/AspectRatio.test.tsx +57 -10
- package/src/AspectRatio/AspectRatio.tsx +40 -1
- package/src/Avatar/Avatar.doc.mjs +2 -1
- package/src/Avatar/Avatar.test.tsx +17 -0
- package/src/Avatar/Avatar.tsx +61 -38
- package/src/AvatarGroup/AvatarGroup.tsx +3 -2
- package/src/Banner/Banner.doc.mjs +13 -11
- package/src/Banner/Banner.test.tsx +102 -15
- package/src/Banner/Banner.tsx +72 -25
- package/src/BottomSheet/BottomSheet.test.tsx +123 -0
- package/src/BottomSheet/BottomSheet.tsx +17 -4
- package/src/BottomSheet/BottomSheetSwitcher.tsx +3 -2
- package/src/Breadcrumbs/BreadcrumbItem.tsx +9 -5
- package/src/Button/Button.doc.mjs +22 -0
- package/src/Button/Button.test.tsx +13 -0
- package/src/Button/Button.tsx +5 -4
- package/src/ButtonGroup/ButtonGroup.doc.mjs +10 -1
- package/src/ButtonGroup/ButtonGroup.test.tsx +391 -1
- package/src/ButtonGroup/ButtonGroup.tsx +23 -5
- package/src/Calendar/Calendar.doc.mjs +4 -3
- package/src/Calendar/Calendar.test.tsx +52 -0
- package/src/Calendar/Calendar.tsx +18 -15
- package/src/Calendar/getInitialFocusDate.test.ts +94 -0
- package/src/Calendar/getInitialFocusDate.ts +93 -0
- package/src/Carousel/Carousel.tsx +3 -2
- package/src/Chat/ChatComposerInput.tsx +5 -1
- package/src/Chat/ChatLayout.tsx +3 -2
- package/src/Chat/ChatMessageList.doc.mjs +9 -1
- package/src/Chat/ChatMessageList.test.tsx +46 -0
- package/src/Chat/ChatMessageList.tsx +28 -4
- package/src/Chat/ChatTokenizedText.tsx +17 -10
- package/src/Chat/useChatComposerTokens.ts +1 -1
- package/src/CheckboxInput/CheckboxInput.tsx +3 -2
- package/src/ClickableCard/ClickableCard.tsx +3 -2
- package/src/CodeBlock/CodeBlock.doc.mjs +6 -0
- package/src/CommandPalette/CommandPaletteInput.tsx +3 -2
- package/src/CommandPalette/CommandPaletteItem.tsx +3 -2
- package/src/ContextMenu/ContextMenu.doc.mjs +5 -0
- package/src/ContextMenu/ContextMenu.tsx +4 -3
- package/src/DateInput/DateInput.tsx +3 -2
- package/src/DateInput/DateInputTouch.test.tsx +36 -0
- package/src/DateInput/TouchDateField.tsx +38 -4
- package/src/DateTimeInput/DateTimeInput.doc.mjs +18 -0
- package/src/DateTimeInput/DateTimeInput.test.tsx +1088 -0
- package/src/DateTimeInput/DateTimeInput.tsx +556 -24
- package/src/DateTimeInput/index.ts +1 -0
- package/src/Dialog/Dialog.doc.mjs +8 -3
- package/src/Dialog/Dialog.test.tsx +261 -1
- package/src/Dialog/Dialog.tsx +109 -58
- package/src/DropdownMenu/DropdownMenu.doc.mjs +6 -0
- package/src/DropdownMenu/DropdownMenuSubMenu.test.tsx +8 -5
- package/src/DropdownMenu/DropdownMenuSubMenu.tsx +8 -11
- package/src/Field/Field.doc.mjs +13 -2
- package/src/FileInput/FileInput.tsx +3 -2
- package/src/Heading/Heading.test.tsx +23 -1
- package/src/Heading/Heading.tsx +6 -2
- package/src/HoverCard/HoverCard.doc.mjs +5 -0
- package/src/HoverCard/HoverCard.tsx +6 -0
- package/src/HoverCard/useHoverCard.tsx +81 -30
- package/src/Item/Item.tsx +5 -4
- package/src/Kbd/Kbd.test.tsx +17 -0
- package/src/Kbd/Kbd.tsx +10 -3
- package/src/Layer/LayerDepthContext.tsx +62 -0
- package/src/Layer/index.ts +9 -0
- package/src/Layer/layerDismissalFamilies.test.tsx +359 -0
- package/src/Layer/layerDismissalInvariants.test.tsx +417 -0
- package/src/Layer/layerStack.ts +362 -0
- package/src/Layer/useLayerDismissal.test.tsx +469 -0
- package/src/Layer/useLayerDismissal.ts +173 -0
- package/src/Layout/Layout.doc.mjs +2 -2
- package/src/Lightbox/Lightbox.doc.mjs +12 -0
- package/src/Lightbox/Lightbox.tsx +124 -102
- package/src/Link/Link.doc.mjs +39 -0
- package/src/Markdown/Markdown.doc.mjs +5 -0
- package/src/Markdown/incremental.test.ts +16 -2
- package/src/Markdown/index.ts +1 -0
- package/src/Markdown/parser.perf.test.ts +96 -1
- package/src/Markdown/parser.test.ts +145 -2
- package/src/Markdown/parser.ts +244 -29
- package/src/MobileNav/MobileNav.tsx +62 -36
- package/src/MoreMenu/MoreMenu.doc.mjs +7 -1
- package/src/MultiSelector/MultiSelector.doc.mjs +27 -0
- package/src/MultiSelector/MultiSelector.test.tsx +106 -0
- package/src/MultiSelector/MultiSelector.tsx +50 -6
- package/src/MultiSelector/index.ts +1 -0
- package/src/NavMenu/NavHeadingMenu.tsx +3 -2
- package/src/NumberInput/NumberInput.doc.mjs +5 -0
- package/src/Outline/Outline.tsx +3 -2
- package/src/OverflowList/OverflowList.tsx +3 -2
- package/src/Overlay/Overlay.tsx +3 -2
- package/src/Popover/usePopover.tsx +31 -28
- package/src/PowerSearch/PowerSearch.doc.mjs +160 -28
- package/src/PowerSearch/PowerSearch.test.tsx +240 -1
- package/src/PowerSearch/PowerSearch.tsx +34 -5
- package/src/PowerSearch/PowerSearchEditPopover.test.tsx +201 -0
- package/src/PowerSearch/PowerSearchEditPopover.tsx +29 -2
- package/src/PowerSearch/PowerSearchValueEditor.test.tsx +47 -1
- package/src/PowerSearch/PowerSearchValueEditor.tsx +15 -0
- package/src/PowerSearch/types.ts +2 -0
- package/src/PowerSearch/usePowerSearchSource.test.ts +82 -2
- package/src/PowerSearch/usePowerSearchSource.ts +13 -3
- package/src/Resizable/ResizeHandle.tsx +3 -2
- package/src/SegmentedControl/SegmentedControl.tsx +3 -2
- package/src/SelectableCard/SelectableCard.tsx +3 -2
- package/src/Selector/Selector.doc.mjs +12 -1
- package/src/Selector/Selector.test.tsx +45 -1
- package/src/Selector/Selector.tsx +11 -1
- package/src/SideNav/SideNav.doc.mjs +6 -6
- package/src/SideNav/SideNav.tsx +4 -2
- package/src/SideNav/SideNavHeading.tsx +10 -10
- package/src/SideNav/SideNavItem.tsx +4 -2
- package/src/Slider/Slider.tsx +3 -2
- package/src/Spinner/Spinner.test.tsx +147 -1
- package/src/Spinner/Spinner.tsx +120 -101
- package/src/Stepper/Step.doc.mjs +98 -0
- package/src/Stepper/Step.tsx +1638 -0
- package/src/Stepper/StepStatus.ts +26 -0
- package/src/Stepper/Stepper.doc.mjs +370 -0
- package/src/Stepper/Stepper.test.tsx +1024 -0
- package/src/Stepper/Stepper.tsx +258 -0
- package/src/Stepper/StepperContext.ts +71 -0
- package/src/Stepper/index.ts +18 -0
- package/src/Stepper/stepper.stylex.ts +19 -0
- package/src/Switch/Switch.tsx +3 -2
- package/src/TabList/Tab.doc.mjs +13 -1
- package/src/TabList/Tab.tsx +67 -7
- package/src/TabList/TabList.doc.mjs +22 -6
- package/src/TabList/TabList.test.tsx +559 -0
- package/src/TabList/TabList.tsx +490 -22
- package/src/TabList/TabListContext.ts +13 -2
- package/src/TabList/TabMenu.tsx +3 -2
- package/src/TabList/index.ts +6 -2
- package/src/Table/BaseTable.tsx +6 -3
- package/src/Table/Table.doc.mjs +6 -1
- package/src/Table/Table.test.tsx +132 -14
- package/src/Table/TableBody.doc.mjs +40 -0
- package/src/Table/TableFooter.doc.mjs +40 -0
- package/src/Table/TableHeader.doc.mjs +40 -0
- package/src/Table/TableRow.tsx +16 -5
- package/src/Table/plugins/groupedRows/useTableGroupedRows-perf.test.tsx +112 -0
- package/src/Table/plugins/groupedRows/useTableGroupedRows.test.tsx +100 -0
- package/src/Table/plugins/groupedRows/useTableGroupedRows.tsx +17 -8
- package/src/Table/plugins/pagination/useTablePagination.test.tsx +34 -4
- package/src/Table/plugins/pagination/useTablePagination.tsx +35 -3
- package/src/Table/plugins/rowExpansion/useTableRowExpansion.tsx +9 -2
- package/src/Table/plugins/rowStatus/useTableRowStatus.test.tsx +13 -7
- package/src/Table/plugins/rowStatus/useTableRowStatus.tsx +12 -3
- package/src/Table/plugins/selection/useTableSelection.test.tsx +76 -0
- package/src/Table/plugins/selection/useTableSelection.tsx +40 -7
- package/src/Table/types.ts +22 -4
- package/src/Table/useBaseTablePlugins.ts +5 -0
- package/src/Table/useTableGroupedRows.doc.mjs +5 -4
- package/src/Table/useTablePagination.doc.mjs +7 -0
- package/src/Table/useTableRowStatus.doc.mjs +1 -1
- package/src/Table/useTableSelection.doc.mjs +31 -0
- package/src/Text/Text.test.tsx +23 -1
- package/src/Text/Text.tsx +6 -2
- package/src/TextArea/TextArea.tsx +3 -2
- package/src/TextInput/TextInput.doc.mjs +10 -0
- package/src/TextInput/TextInput.tsx +3 -2
- package/src/Thumbnail/Thumbnail.doc.mjs +1 -1
- package/src/TimeInput/TimeInput.tsx +2 -2
- package/src/Timestamp/Timestamp.tsx +4 -2
- package/src/Toast/Toast.doc.mjs +6 -0
- package/src/Token/TokenLink.tsx +2 -2
- package/src/Tokenizer/Tokenizer.doc.mjs +27 -0
- package/src/Tokenizer/Tokenizer.tsx +4 -0
- package/src/Toolbar/Toolbar.doc.mjs +5 -0
- package/src/Tooltip/Tooltip.doc.mjs +5 -0
- package/src/Tooltip/Tooltip.test.tsx +32 -0
- package/src/Tooltip/Tooltip.tsx +5 -0
- package/src/Tooltip/useTooltip.tsx +47 -24
- package/src/TopNav/TopNavHeading.tsx +3 -2
- package/src/TopNav/TopNavMegaMenu.tsx +3 -2
- package/src/TopNav/TopNavMenu.tsx +4 -3
- package/src/Typeahead/BaseTypeahead.doc.mjs +11 -0
- package/src/Typeahead/BaseTypeahead.tsx +85 -33
- package/src/Typeahead/Typeahead.doc.mjs +5 -0
- package/src/Typeahead/Typeahead.test.tsx +49 -0
- package/src/Typeahead/Typeahead.tsx +3 -2
- package/src/hooks/index.ts +2 -0
- package/src/hooks/useContainerReveal.doc.mjs +2 -2
- package/src/hooks/useFocusTrap.test.tsx +14 -0
- package/src/hooks/useFocusTrap.ts +62 -111
- package/src/hooks/useFocusTrapEscapeShim.test.tsx +165 -0
- package/src/hooks/useHotkeys.test.ts +18 -0
- package/src/hooks/useHotkeys.ts +10 -3
- package/src/hooks/useMergedRefs.doc.mjs +79 -0
- package/src/hooks/useMergedRefs.test.tsx +62 -0
- package/src/hooks/useMergedRefs.ts +36 -0
- package/src/index.ts +1 -0
- package/src/theme/MediaTheme.doc.mjs +5 -5
- package/src/utils/groupItems.ts +12 -6
- package/src/utils/index.ts +1 -1
- package/src/utils/sharedResizeObserver.ts +10 -2
- package/src/utils/timeParser.test.ts +6 -1
- package/src/utils/timeParser.ts +35 -13
- package/src/__tests__/inputWidthContract.test.tsx +0 -69
|
@@ -276,6 +276,7 @@ export function MultiSelector({
|
|
|
276
276
|
hasSearch = false,
|
|
277
277
|
searchPlaceholder: searchPlaceholderFromProps,
|
|
278
278
|
triggerDisplay = 'count',
|
|
279
|
+
formatValue,
|
|
279
280
|
maxBadges = 3,
|
|
280
281
|
renderOption,
|
|
281
282
|
indicatorPosition = 'start',
|
|
@@ -576,12 +577,16 @@ export function MultiSelector({
|
|
|
576
577
|
}, [popover.isOpen, highlightedIndex, getItemId]);
|
|
577
578
|
|
|
578
579
|
// Build trigger display content
|
|
579
|
-
const
|
|
580
|
+
const selectedItems = useMemo(() => {
|
|
580
581
|
return optimisticValue.map(v => {
|
|
581
582
|
const item = selectableItems.find(i => i.value === v);
|
|
582
|
-
return
|
|
583
|
+
return {
|
|
584
|
+
value: v,
|
|
585
|
+
label: item?.label ?? v
|
|
586
|
+
};
|
|
583
587
|
});
|
|
584
588
|
}, [optimisticValue, selectableItems]);
|
|
589
|
+
const selectedLabels = useMemo(() => selectedItems.map(item => item.label), [selectedItems]);
|
|
585
590
|
const renderTriggerContent = useCallback(() => {
|
|
586
591
|
if (optimisticValue.length === 0) {
|
|
587
592
|
return /*#__PURE__*/_jsx("span", {
|
|
@@ -593,11 +598,11 @@ export function MultiSelector({
|
|
|
593
598
|
}
|
|
594
599
|
switch (triggerDisplay) {
|
|
595
600
|
case 'count':
|
|
596
|
-
return /*#__PURE__*/
|
|
601
|
+
return /*#__PURE__*/_jsx("span", {
|
|
597
602
|
...{
|
|
598
603
|
className: "xb3r6kr xlyipyv xuxw1ft"
|
|
599
604
|
},
|
|
600
|
-
children:
|
|
605
|
+
children: formatValue?.(selectedItems) ?? `${optimisticValue.length} selected`
|
|
601
606
|
});
|
|
602
607
|
case 'labels':
|
|
603
608
|
{
|
|
@@ -608,7 +613,7 @@ export function MultiSelector({
|
|
|
608
613
|
...{
|
|
609
614
|
className: "xb3r6kr xlyipyv xuxw1ft"
|
|
610
615
|
},
|
|
611
|
-
children: text
|
|
616
|
+
children: formatValue?.(selectedItems) ?? text
|
|
612
617
|
});
|
|
613
618
|
}
|
|
614
619
|
case 'badges':
|
|
@@ -631,7 +636,7 @@ export function MultiSelector({
|
|
|
631
636
|
});
|
|
632
637
|
}
|
|
633
638
|
}
|
|
634
|
-
}, [optimisticValue, triggerDisplay, selectedLabels, placeholder, maxBadges]);
|
|
639
|
+
}, [optimisticValue, triggerDisplay, selectedItems, selectedLabels, placeholder, formatValue, maxBadges]);
|
|
635
640
|
|
|
636
641
|
// Render search input
|
|
637
642
|
const renderSearch = useCallback(() => {
|
|
@@ -827,7 +832,13 @@ export function MultiSelector({
|
|
|
827
832
|
// A standalone divider between groups would orphan itself once its
|
|
828
833
|
// neighbors are filtered out, so skip it while searching.
|
|
829
834
|
if (!isSearching) {
|
|
835
|
+
// role="listbox" only permits option/group children; the divider
|
|
836
|
+
// carries no information the options don't, so it's hidden from
|
|
837
|
+
// the accessibility tree entirely rather than exposing
|
|
838
|
+
// role="separator" as a disallowed listbox child (axe
|
|
839
|
+
// aria-required-children).
|
|
830
840
|
elements.push(/*#__PURE__*/_jsx(Divider, {
|
|
841
|
+
"aria-hidden": "true",
|
|
831
842
|
xstyle: styles.divider
|
|
832
843
|
}, `divider-${i}`));
|
|
833
844
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* @output Exports MultiSelector and types
|
|
4
4
|
* @position Public API entry point
|
|
5
5
|
*/
|
|
6
|
-
export { MultiSelector, type MultiSelectorProps, type MultiSelectorSize, type MultiSelectorStatusType, } from './MultiSelector';
|
|
6
|
+
export { MultiSelector, type MultiSelectorProps, type MultiSelectorSize, type MultiSelectorStatusType, type MultiSelectorSelectedItem, } from './MultiSelector';
|
|
7
7
|
export type { MultiSelectorOptionType, MultiSelectorOptionData, MultiSelectorDivider, MultiSelectorSection, MultiSelectorStatus, } from './types';
|
|
8
8
|
export { useMultiCombobox } from './hooks';
|
|
9
9
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/MultiSelector/index.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/MultiSelector/index.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,OAAO,EACL,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,GAC/B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavHeadingMenu.d.ts","sourceRoot":"","sources":["../../src/NavMenu/NavHeadingMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIlE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"NavHeadingMenu.d.ts","sourceRoot":"","sources":["../../src/NavMenu/NavHeadingMenu.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,EAAuB,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAIlE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAI5C,OAAO,EAGL,KAAK,kBAAkB,EACxB,MAAM,kBAAkB,CAAC;AAuB1B,MAAM,WAAW,mBAAoB,SAAQ,SAAS,CAAC,cAAc,CAAC;IACpE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAChC,iEAAiE;IACjE,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;OAGG;IACH,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,GAAG,EACH,QAAQ,EACR,IAAW,EACX,QAAQ,EACR,MAAM,EACN,SAAS,EACT,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,MAAM,GACtB,EAAE,mBAAmB,qBAiFrB;yBA1Fe,cAAc"}
|
|
@@ -15,11 +15,12 @@ import React, { useCallback, useMemo } from 'react';
|
|
|
15
15
|
import * as stylex from '@stylexjs/stylex';
|
|
16
16
|
import "../theme/tokens.stylex.js";
|
|
17
17
|
import { spacingVars } from "../theme/tokens.stylex.js";
|
|
18
|
-
import { mergeProps
|
|
18
|
+
import { mergeProps } from "../utils/index.js";
|
|
19
19
|
import { useListFocus } from "../hooks/useListFocus.js";
|
|
20
20
|
import { useTypeahead } from "../hooks/useTypeahead.js";
|
|
21
21
|
import { themeProps } from "../utils/themeProps.js";
|
|
22
22
|
import { NavHeadingMenuContext, useNavHeadingCloseContext } from "./NavMenuContext.js";
|
|
23
|
+
import { useMergedRefs } from "../hooks/useMergedRefs.js";
|
|
23
24
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
25
|
const styles = {
|
|
25
26
|
root: {
|
|
@@ -125,7 +126,7 @@ export function NavHeadingMenu({
|
|
|
125
126
|
return /*#__PURE__*/_jsx(NavHeadingMenuContext, {
|
|
126
127
|
value: ctx,
|
|
127
128
|
children: /*#__PURE__*/_jsx("div", {
|
|
128
|
-
ref:
|
|
129
|
+
ref: useMergedRefs(ref, listRef),
|
|
129
130
|
role: "menu",
|
|
130
131
|
onKeyDown: listKeyDown,
|
|
131
132
|
"data-testid": testId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Outline.d.ts","sourceRoot":"","sources":["../../src/Outline/Outline.tsx"],"names":[],"mappings":"AAwCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Outline.d.ts","sourceRoot":"","sources":["../../src/Outline/Outline.tsx"],"names":[],"mappings":"AAwCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,SAAS,CAAC;AAMzC,YAAY,EAAC,WAAW,EAAC,MAAM,SAAS,CAAC;AAEzC,MAAM,WAAW,YAAa,SAAQ,SAAS,CAAC,WAAW,CAAC;IAC1D,6CAA6C;IAC7C,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE7B,+CAA+C;IAC/C,KAAK,EAAE,WAAW,EAAE,CAAC;IAErB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oEAAoE;IACpE,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAExC,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAEhC;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAEvC;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAErC;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAEzD;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA+ID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAgB,OAAO,CAAC,EACtB,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,KAAK,EAAE,cAAc,EACrB,OAAmB,EACnB,eAAe,EACf,aAAa,EACb,MAAU,EACV,kBAAkB,EAClB,gBAAuB,EACvB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,aAAa,EAAE,MAAM,EACrB,GAAG,KAAK,EACT,EAAE,YAAY,+BAiLd;yBAlMe,OAAO"}
|
package/dist/Outline/Outline.js
CHANGED
|
@@ -29,11 +29,12 @@ import { colorVars, durationVars, easeVars, radiusVars, spacingVars, typeScaleVa
|
|
|
29
29
|
import { useLinkComponent } from "../Link/useLinkComponent.js";
|
|
30
30
|
import { useListFocus } from "../hooks/useListFocus.js";
|
|
31
31
|
import { useIsomorphicLayoutEffect } from "../hooks/useIsomorphicLayoutEffect.js";
|
|
32
|
-
import { mergeProps
|
|
32
|
+
import { mergeProps } from "../utils/index.js";
|
|
33
33
|
import { useScrollSpy } from "./useScrollSpy.js";
|
|
34
34
|
import { themeProps } from "../utils/themeProps.js";
|
|
35
35
|
import { focusOutlineProps } from "../utils/focusOutline.stylex.js";
|
|
36
36
|
import { useTranslator } from "../i18n/index.js";
|
|
37
|
+
import { useMergedRefs } from "../hooks/useMergedRefs.js";
|
|
37
38
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
38
39
|
// =============================================================================
|
|
39
40
|
// Styles
|
|
@@ -302,7 +303,7 @@ export function Outline({
|
|
|
302
303
|
};
|
|
303
304
|
return /*#__PURE__*/_jsxs("nav", {
|
|
304
305
|
...props,
|
|
305
|
-
ref:
|
|
306
|
+
ref: useMergedRefs(rootRef, ref),
|
|
306
307
|
"aria-label": label,
|
|
307
308
|
"data-testid": testId,
|
|
308
309
|
...mergeProps(themeProps('outline', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OverflowList.d.ts","sourceRoot":"","sources":["../../src/OverflowList/OverflowList.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAC,KAAK,SAAS,EAAE,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"OverflowList.d.ts","sourceRoot":"","sources":["../../src/OverflowList/OverflowList.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAC,KAAK,SAAS,EAAE,KAAK,YAAY,EAAW,MAAM,OAAO,CAAC;AAClE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAC;AA+EhD,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,KAAK,EAAE,YAAY,CAAC;IACpB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS,CAAC,cAAc,CAAC;IAClE,qDAAqD;IACrD,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEhC;;OAEG;IACH,QAAQ,EAAE,SAAS,CAAC;IAEpB;;;;OAIG;IACH,GAAG,CAAC,EAAE,WAAW,CAAC;IAElB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAE/B;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,eAAe,GAAG,aAAa,CAAC;IAE3C;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,gBAAgB,CAAC,EAAE,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,SAAS,CAAC;CACjE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,GAAO,EACP,eAAmB,EACnB,eAAe,EACf,OAAO,EACP,YAAoB,EACpB,QAAwB,EACxB,gBAAgB,EAChB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,EACH,GAAG,KAAK,EACT,EAAE,iBAAiB,+BAoFnB;yBAlGe,YAAY"}
|
|
@@ -19,11 +19,12 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { Children } from 'react';
|
|
21
21
|
import * as stylex from '@stylexjs/stylex';
|
|
22
|
-
import { mergeProps
|
|
22
|
+
import { mergeProps } from "../utils/index.js";
|
|
23
23
|
import { useOverflow } from "../hooks/useOverflow.js";
|
|
24
24
|
import "../theme/tokens.stylex.js";
|
|
25
25
|
import { spacingVars } from "../theme/tokens.stylex.js";
|
|
26
26
|
import { themeProps } from "../utils/themeProps.js";
|
|
27
|
+
import { useMergedRefs } from "../hooks/useMergedRefs.js";
|
|
27
28
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
28
29
|
const styles = {
|
|
29
30
|
container: {
|
|
@@ -216,7 +217,7 @@ export function OverflowList({
|
|
|
216
217
|
children: measureIndicator
|
|
217
218
|
})]
|
|
218
219
|
}), /*#__PURE__*/_jsxs("div", {
|
|
219
|
-
ref:
|
|
220
|
+
ref: useMergedRefs(ref, containerRef),
|
|
220
221
|
...mergeProps(themeProps('overflow-list'), stylex.props(isMultiRow ? styles.containerMultiRow : styles.container, gapStyles[gap], isMultiRow && rowHeight > 0 && maxRows != null && multiRowHeight.height(maxRows, rowHeight, gapPx), observeParent && hasOverflow && styles.fillParent, xstyle), className, style),
|
|
221
222
|
...props,
|
|
222
223
|
children: [collapseFrom === 'start' && hasOverflow && overflowRenderer?.(overflowItems), visibleItems.map(({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../src/Overlay/Overlay.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAE,GAAG,EAAC,MAAM,OAAO,CAAC;AAO1C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,EACd,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"Overlay.d.ts","sourceRoot":"","sources":["../../src/Overlay/Overlay.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAC,SAAS,EAAE,GAAG,EAAC,MAAM,OAAO,CAAC;AAO1C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,MAAM,WAAW,YAAa,SAAQ,IAAI,CACxC,SAAS,CAAC,cAAc,CAAC,EACzB,QAAQ,GAAG,WAAW,GAAG,OAAO,CACjC;IACC,8CAA8C;IAC9C,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC;IAC1B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,iDAAiD;IACjD,OAAO,EAAE,SAAS,CAAC;IACnB,wBAAwB;IACxB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,yCAAyC;IACzC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sBAAsB;IACtB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,qBAAqB;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,OAAO,CAAC,EACtB,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,GACJ,EAAE,YAAY,+BA2Cd;yBAvDe,OAAO"}
|
package/dist/Overlay/Overlay.js
CHANGED
|
@@ -15,11 +15,12 @@
|
|
|
15
15
|
* use the useOverlay hook directly.
|
|
16
16
|
*/
|
|
17
17
|
import * as stylex from '@stylexjs/stylex';
|
|
18
|
-
import { mergeProps
|
|
18
|
+
import { mergeProps } from "../utils/index.js";
|
|
19
19
|
import { useOverlay } from "./useOverlay.js";
|
|
20
20
|
import { useIsomorphicLayoutEffect } from "../hooks/useIsomorphicLayoutEffect.js";
|
|
21
21
|
import { overlayScope, overlayContainerStyles } from "./overlay.markers.stylex.js";
|
|
22
22
|
import { themeProps } from "../utils/themeProps.js";
|
|
23
|
+
import { useMergedRefs } from "../hooks/useMergedRefs.js";
|
|
23
24
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
25
|
/**
|
|
25
26
|
* Overlay — renders content on top of media with a scrim background
|
|
@@ -80,7 +81,7 @@ export function Overlay({
|
|
|
80
81
|
}
|
|
81
82
|
}, []);
|
|
82
83
|
return /*#__PURE__*/_jsxs("div", {
|
|
83
|
-
ref:
|
|
84
|
+
ref: useMergedRefs(ref, overlay.containerRef),
|
|
84
85
|
...mergeProps(themeProps('overlay'), stylex.props(overlayScope, overlayContainerStyles.root, xstyle), className, style),
|
|
85
86
|
onClick: overlay.containerProps.onClick,
|
|
86
87
|
onMouseUp: overlay.containerProps.onMouseUp,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePopover.d.ts","sourceRoot":"","sources":["../../src/Popover/usePopover.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAiC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE5E,OAAO,EAAW,KAAK,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"usePopover.d.ts","sourceRoot":"","sources":["../../src/Popover/usePopover.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,EAAiC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE5E,OAAO,EAAW,KAAK,kBAAkB,EAAC,MAAM,mBAAmB,CAAC;AAGpE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAgEnD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IAEpB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;;;;;;;;OAYG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAEzB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;;;;;;OAaG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,UAAU,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAE7C;;;;OAIG;IACH,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAEnD;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;QAAC,aAAa,CAAC,EAAE,OAAO,CAAA;KAAC,KAAK,IAAI,CAAC;IAEpD;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAC;IAEjB;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,OAAO,CAAC;IAEhB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;;;;;;;;;;OAWG;IACH,MAAM,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE,kBAAkB,KAAK,SAAS,CAAC;IAEvE;;OAEG;IACH,YAAY,EAAE;QACZ,eAAe,EAAE,QAAQ,GAAG,MAAM,CAAC;QACnC,eAAe,EAAE,OAAO,CAAC;QACzB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,gBAAgB,CA6K5E"}
|
|
@@ -18,6 +18,7 @@ import React, { useCallback, useEffect, useRef } from 'react';
|
|
|
18
18
|
import * as stylex from '@stylexjs/stylex';
|
|
19
19
|
import { useLayer } from "../Layer/useLayer.js";
|
|
20
20
|
import { useFocusTrap } from "../hooks/useFocusTrap.js";
|
|
21
|
+
import { LayerDepthProvider } from "../Layer/LayerDepthContext.js";
|
|
21
22
|
import "../theme/tokens.stylex.js";
|
|
22
23
|
import { colorVars, spacingVars, radiusVars, shadowVars } from "../theme/tokens.stylex.js";
|
|
23
24
|
import { Button } from "../Button/index.js";
|
|
@@ -197,23 +198,25 @@ export function usePopover(options = {}) {
|
|
|
197
198
|
// into one props object before merging with the StyleX result.
|
|
198
199
|
const surfaceProps = themeProps('popover-surface');
|
|
199
200
|
const surfaceClassName = surfaceTarget != null ? `${surfaceProps.className} ${stableClassName(surfaceTarget)}` : surfaceProps.className;
|
|
200
|
-
return layer.render(/*#__PURE__*/
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
...
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
201
|
+
return layer.render(/*#__PURE__*/_jsx(LayerDepthProvider, {
|
|
202
|
+
children: /*#__PURE__*/_jsxs("div", {
|
|
203
|
+
ref: contentRef,
|
|
204
|
+
role: role === 'dialog' ? 'dialog' : undefined,
|
|
205
|
+
"aria-modal": role === 'dialog' && isModal ? true : undefined,
|
|
206
|
+
"aria-label": role === 'dialog' ? dialogLabel : undefined,
|
|
207
|
+
...mergeProps({
|
|
208
|
+
...surfaceProps,
|
|
209
|
+
className: surfaceClassName
|
|
210
|
+
}, stylex.props(styles.contentWrapper, hasSurface && styles.surface, xstyle)),
|
|
211
|
+
children: [children, hasCloseButton && /*#__PURE__*/_jsx("div", {
|
|
212
|
+
...stylex.props(styles.closeButtonWrapper, rtlStyles.centerInline('100%')),
|
|
213
|
+
children: /*#__PURE__*/_jsx(Button, {
|
|
214
|
+
variant: "secondary",
|
|
215
|
+
label: closeButtonLabel,
|
|
216
|
+
onClick: layer.hide
|
|
217
|
+
})
|
|
218
|
+
})]
|
|
219
|
+
})
|
|
217
220
|
}), {
|
|
218
221
|
...props,
|
|
219
222
|
xstyle: props?.xstyle
|
|
@@ -69,8 +69,14 @@ export interface PowerSearchProps extends Omit<BaseProps<HTMLElement>, 'onChange
|
|
|
69
69
|
menuWidth?: number;
|
|
70
70
|
/** Max display length for filter token values. @default 40 */
|
|
71
71
|
maxTokenLength?: number;
|
|
72
|
-
/** Max
|
|
72
|
+
/** Max suggestions in string and entity value typeaheads. @default 10 */
|
|
73
73
|
maxOperatorMenuItems?: number;
|
|
74
|
+
/**
|
|
75
|
+
* Max ranked results shown for a non-empty query. This does not affect the
|
|
76
|
+
* value editor shown after selecting a field. Browsing the field list with
|
|
77
|
+
* an empty query shows up to 1,000 fields. @default 10
|
|
78
|
+
*/
|
|
79
|
+
maxSearchResults?: number;
|
|
74
80
|
/** Label for the save button in edit popover. @default 'Apply' */
|
|
75
81
|
popoverSaveButtonLabel?: string;
|
|
76
82
|
/** Timezone ID for date formatting. */
|
|
@@ -172,7 +178,7 @@ export interface PowerSearchProps extends Omit<BaseProps<HTMLElement>, 'onChange
|
|
|
172
178
|
* };
|
|
173
179
|
* ```
|
|
174
180
|
*/
|
|
175
|
-
export declare function PowerSearch({ config: configProp, filters, onChange, label: labelFromProps, isLabelHidden, placeholder: placeholderFromProps, hasAutoFocus, hasClear, isReadOnly, isDisabled, disabledMessage, startIcon, onFocus, onBlur, status, statusVariant, maxTokenLength, popoverSaveButtonLabel: popoverSaveButtonLabelFromProps, timezoneID, tokenOverflowBehavior, endContent, resultCount, ref, handleRef, size: sizeProp, 'data-testid': testId, xstyle, className, style, components: componentOverrides, }: PowerSearchProps): React.JSX.Element;
|
|
181
|
+
export declare function PowerSearch({ config: configProp, filters, onChange, label: labelFromProps, isLabelHidden, placeholder: placeholderFromProps, hasAutoFocus, hasClear, isReadOnly, isDisabled, disabledMessage, startIcon, onFocus, onBlur, status, statusVariant, menuWidth, maxTokenLength, maxOperatorMenuItems, maxSearchResults, popoverSaveButtonLabel: popoverSaveButtonLabelFromProps, timezoneID, tokenOverflowBehavior, endContent, resultCount, ref, handleRef, size: sizeProp, 'data-testid': testId, xstyle, className, style, components: componentOverrides, }: PowerSearchProps): React.JSX.Element;
|
|
176
182
|
export declare namespace PowerSearch {
|
|
177
183
|
var displayName: string;
|
|
178
184
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PowerSearch.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearch.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,EAOZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,EAGL,KAAK,yBAAyB,EAC/B,MAAM,cAAc,CAAC;AAMtB,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AAEtC,OAAO,KAAK,EAAC,WAAW,EAAE,kBAAkB,EAAC,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"PowerSearch.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearch.tsx"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,6 @@ import { usePopover } from "../Popover/usePopover.js";
|
|
|
25
25
|
import { useAnnounce } from "../hooks/useAnnounce.js";
|
|
26
26
|
import "../theme/tokens.stylex.js";
|
|
27
27
|
import { spacingVars, colorVars, typeScaleVars, fontWeightVars } from "../theme/tokens.stylex.js";
|
|
28
|
-
import { mergeRefs } from "../utils/index.js";
|
|
29
28
|
import { useSize } from "../SizeContext/SizeContext.js";
|
|
30
29
|
import { useInternalConfig } from "./useInternalConfig.js";
|
|
31
30
|
import { usePowerSearchSource } from "./usePowerSearchSource.js";
|
|
@@ -36,11 +35,19 @@ import { themeProps } from "../utils/themeProps.js";
|
|
|
36
35
|
import { truncateCharacters } from "../utils/characters.js";
|
|
37
36
|
import { useTranslator } from "../i18n/index.js";
|
|
38
37
|
import { useLocale } from "../i18n/useLocale.js";
|
|
39
|
-
import {
|
|
38
|
+
import { useMergedRefs } from "../hooks/useMergedRefs.js";
|
|
40
39
|
// =============================================================================
|
|
41
40
|
// Icon mapping for typeahead entries
|
|
42
41
|
// =============================================================================
|
|
43
42
|
|
|
43
|
+
// Ranked suggestions shown for a non-empty query. The field list itself is
|
|
44
|
+
// never capped -- see the maxSearchResults prop.
|
|
45
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
46
|
+
const DEFAULT_MAX_SEARCH_RESULTS = 10;
|
|
47
|
+
|
|
48
|
+
// Empty-query browsing gets a high safety ceiling, matching XDS. This shows
|
|
49
|
+
// every practical field list without allowing an accidental unbounded DOM.
|
|
50
|
+
const MAX_BROWSE_MENU_ITEMS = 1000;
|
|
44
51
|
const OPERATOR_VALUE_TYPE_TO_ICON = {
|
|
45
52
|
string: 'search',
|
|
46
53
|
string_list: 'search',
|
|
@@ -65,7 +72,7 @@ const OPERATOR_VALUE_TYPE_TO_ICON = {
|
|
|
65
72
|
const popoverLayerStyles = {
|
|
66
73
|
layer: {
|
|
67
74
|
kzqmXN: "x1xgy17j",
|
|
68
|
-
k7Eaqz: "
|
|
75
|
+
k7Eaqz: "x15mybvi",
|
|
69
76
|
$$css: true
|
|
70
77
|
}
|
|
71
78
|
};
|
|
@@ -379,7 +386,10 @@ export function PowerSearch({
|
|
|
379
386
|
onBlur,
|
|
380
387
|
status,
|
|
381
388
|
statusVariant = 'attached',
|
|
389
|
+
menuWidth,
|
|
382
390
|
maxTokenLength = 40,
|
|
391
|
+
maxOperatorMenuItems,
|
|
392
|
+
maxSearchResults = DEFAULT_MAX_SEARCH_RESULTS,
|
|
383
393
|
popoverSaveButtonLabel: popoverSaveButtonLabelFromProps,
|
|
384
394
|
timezoneID,
|
|
385
395
|
tokenOverflowBehavior,
|
|
@@ -396,7 +406,7 @@ export function PowerSearch({
|
|
|
396
406
|
}) {
|
|
397
407
|
const size = useSize(sizeProp, 'md');
|
|
398
408
|
const config = useInternalConfig(configProp);
|
|
399
|
-
const searchSource = usePowerSearchSource(config);
|
|
409
|
+
const searchSource = usePowerSearchSource(config, maxSearchResults);
|
|
400
410
|
const t = useTranslator();
|
|
401
411
|
const locale = useLocale();
|
|
402
412
|
const label = labelFromProps ?? t('@astryx.powersearch.label');
|
|
@@ -703,9 +713,10 @@ export function PowerSearch({
|
|
|
703
713
|
onSave: handlePopoverSave,
|
|
704
714
|
onCancel: handlePopoverCancel,
|
|
705
715
|
saveButtonLabel: popoverSaveButtonLabel,
|
|
716
|
+
maxMenuItems: maxOperatorMenuItems,
|
|
706
717
|
isReadOnly: isReadOnly
|
|
707
718
|
}, popoverKey);
|
|
708
|
-
}, [popoverPartialFilter, popoverState, EditorOverride, configProp, config, handlePopoverSave, handlePopoverCancel, popoverSaveButtonLabel, isReadOnly]);
|
|
719
|
+
}, [popoverPartialFilter, popoverState, EditorOverride, configProp, config, handlePopoverSave, handlePopoverCancel, popoverSaveButtonLabel, maxOperatorMenuItems, isReadOnly]);
|
|
709
720
|
|
|
710
721
|
// Plain-text form of the result count, shared by the visible label and the
|
|
711
722
|
// screen-reader announcement so the two never drift. The ICU plural handles
|
|
@@ -757,7 +768,7 @@ export function PowerSearch({
|
|
|
757
768
|
}, [resultCountText, endContent]);
|
|
758
769
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
759
770
|
children: [/*#__PURE__*/_jsx("div", {
|
|
760
|
-
ref:
|
|
771
|
+
ref: useMergedRefs(ref, popover.triggerRef),
|
|
761
772
|
...themeProps('power-search'),
|
|
762
773
|
children: /*#__PURE__*/_jsx(Tokenizer, {
|
|
763
774
|
handleRef: tokenizerRef,
|
|
@@ -768,6 +779,8 @@ export function PowerSearch({
|
|
|
768
779
|
onChange: handleTokenizerChange,
|
|
769
780
|
renderToken: renderToken,
|
|
770
781
|
renderItem: renderItem,
|
|
782
|
+
maxMenuItems: MAX_BROWSE_MENU_ITEMS,
|
|
783
|
+
menuWidth: menuWidth,
|
|
771
784
|
placeholder: filters.length === 0 ? placeholder : '',
|
|
772
785
|
hasAutoFocus: hasAutoFocus,
|
|
773
786
|
hasClear: hasClear && !isReadOnly,
|
|
@@ -22,8 +22,10 @@ export interface PowerSearchEditPopoverProps {
|
|
|
22
22
|
onCancel: () => void;
|
|
23
23
|
/** Label for the save button. @default 'Apply' */
|
|
24
24
|
saveButtonLabel?: string;
|
|
25
|
+
/** Max suggestions in string and entity value typeaheads. */
|
|
26
|
+
maxMenuItems?: number;
|
|
25
27
|
/** Whether the filter is read-only. */
|
|
26
28
|
isReadOnly?: boolean;
|
|
27
29
|
}
|
|
28
|
-
export declare function PowerSearchEditPopover({ config, filter: initialFilter, mode, onSave, onCancel, saveButtonLabel: saveButtonLabelFromProps, isReadOnly, }: PowerSearchEditPopoverProps): React.JSX.Element;
|
|
30
|
+
export declare function PowerSearchEditPopover({ config, filter: initialFilter, mode, onSave, onCancel, saveButtonLabel: saveButtonLabelFromProps, maxMenuItems, isReadOnly, }: PowerSearchEditPopoverProps): React.JSX.Element;
|
|
29
31
|
//# sourceMappingURL=PowerSearchEditPopover.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PowerSearchEditPopover.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearchEditPopover.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAA0D,MAAM,OAAO,CAAC;AAY/E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EAGd,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"PowerSearchEditPopover.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearchEditPopover.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAA0D,MAAM,OAAO,CAAC;AAY/E,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EAGd,MAAM,SAAS,CAAC;AA+DjB,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,cAAc,CAAC;IACvB,uCAAuC;IACvC,MAAM,EAAE,aAAa,CAAC;IACtB,qDAAqD;IACrD,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,6EAA6E;IAC7E,MAAM,EAAE,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAC;IACnD,wDAAwD;IACxD,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,kDAAkD;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uCAAuC;IACvC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAqfD,wBAAgB,sBAAsB,CAAC,EACrC,MAAM,EACN,MAAM,EAAE,aAAa,EACrB,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,eAAe,EAAE,wBAAwB,EACzC,YAAY,EACZ,UAAkB,GACnB,EAAE,2BAA2B,qBA0R7B"}
|
|
@@ -25,6 +25,18 @@ import { spacingVars, typeScaleVars } from "../theme/tokens.stylex.js";
|
|
|
25
25
|
import { PowerSearchValueEditor } from "./PowerSearchValueEditor.js";
|
|
26
26
|
import { resolveOperatorLabel } from "./resolveOperatorLabel.js";
|
|
27
27
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
28
|
+
// Below the popover layer's 400px floor (see popoverLayerStyles in
|
|
29
|
+
// PowerSearch.tsx) the chip rows collapse from one line to wrapped lines.
|
|
30
|
+
// A container query, not a viewport one, so the rows track the width the
|
|
31
|
+
// popover actually got (#4761).
|
|
32
|
+
const CHIP_ROW_COLLAPSE = '@container (max-width: 399px)';
|
|
33
|
+
const styles = {
|
|
34
|
+
chipRow: {
|
|
35
|
+
kwnvtZ: "xozqiw3 x1alyx8p",
|
|
36
|
+
$$css: true
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
|
|
28
40
|
// =============================================================================
|
|
29
41
|
// Editable filter state for recursive nesting
|
|
30
42
|
// =============================================================================
|
|
@@ -130,6 +142,7 @@ function NestedSubFilterRow({
|
|
|
130
142
|
config,
|
|
131
143
|
subFilter,
|
|
132
144
|
onChange,
|
|
145
|
+
maxMenuItems,
|
|
133
146
|
isReadOnly
|
|
134
147
|
}) {
|
|
135
148
|
const t = useTranslator();
|
|
@@ -178,9 +191,10 @@ function NestedSubFilterRow({
|
|
|
178
191
|
return /*#__PURE__*/_jsxs(HStack, {
|
|
179
192
|
gap: 2,
|
|
180
193
|
vAlign: "center",
|
|
194
|
+
xstyle: styles.chipRow,
|
|
181
195
|
children: [/*#__PURE__*/_jsx("div", {
|
|
182
196
|
...{
|
|
183
|
-
className: "x2lah0s x1oysuqx"
|
|
197
|
+
className: "x2lah0s x1oysuqx x193iq5w"
|
|
184
198
|
},
|
|
185
199
|
children: /*#__PURE__*/_jsx(Selector, {
|
|
186
200
|
label: t('@astryx.powersearch.editor.field'),
|
|
@@ -193,7 +207,7 @@ function NestedSubFilterRow({
|
|
|
193
207
|
})
|
|
194
208
|
}), operatorOptions.length > 0 && /*#__PURE__*/_jsx("div", {
|
|
195
209
|
...{
|
|
196
|
-
className: "x2lah0s xzjbwwf"
|
|
210
|
+
className: "x2lah0s xzjbwwf x193iq5w"
|
|
197
211
|
},
|
|
198
212
|
children: /*#__PURE__*/_jsx(Selector, {
|
|
199
213
|
label: t('@astryx.powersearch.editor.operator'),
|
|
@@ -213,6 +227,7 @@ function NestedSubFilterRow({
|
|
|
213
227
|
filterValue: subFilter.value,
|
|
214
228
|
onChange: handleValueChange,
|
|
215
229
|
config: config,
|
|
230
|
+
maxMenuItems: maxMenuItems,
|
|
216
231
|
isDisabled: isReadOnly
|
|
217
232
|
})
|
|
218
233
|
})]
|
|
@@ -229,6 +244,7 @@ function NestedEditor({
|
|
|
229
244
|
operatorOptions,
|
|
230
245
|
onOperatorChange,
|
|
231
246
|
onPartialFilterChange,
|
|
247
|
+
maxMenuItems,
|
|
232
248
|
isReadOnly
|
|
233
249
|
}) {
|
|
234
250
|
const t = useTranslator();
|
|
@@ -312,6 +328,7 @@ function NestedEditor({
|
|
|
312
328
|
config: config,
|
|
313
329
|
subFilter: sf,
|
|
314
330
|
onChange: updated => handleUpdate(itemPath, updated),
|
|
331
|
+
maxMenuItems: maxMenuItems,
|
|
315
332
|
isReadOnly: isReadOnly
|
|
316
333
|
}),
|
|
317
334
|
isExpanded: true,
|
|
@@ -336,6 +353,7 @@ function NestedEditor({
|
|
|
336
353
|
config: config,
|
|
337
354
|
subFilter: sf,
|
|
338
355
|
onChange: updated => handleUpdate(itemPath, updated),
|
|
356
|
+
maxMenuItems: maxMenuItems,
|
|
339
357
|
isReadOnly: isReadOnly
|
|
340
358
|
}),
|
|
341
359
|
endContent: !isReadOnly ? /*#__PURE__*/_jsx(Button, {
|
|
@@ -371,7 +389,7 @@ function NestedEditor({
|
|
|
371
389
|
},
|
|
372
390
|
children: operatorOptions.length > 1 ? /*#__PURE__*/_jsx("div", {
|
|
373
391
|
...{
|
|
374
|
-
className: "x1iyjqo2 x2lah0s"
|
|
392
|
+
className: "x1iyjqo2 x2lah0s x193iq5w"
|
|
375
393
|
},
|
|
376
394
|
children: /*#__PURE__*/_jsx(Selector, {
|
|
377
395
|
label: t('@astryx.powersearch.editor.groupOperator'),
|
|
@@ -407,6 +425,7 @@ export function PowerSearchEditPopover({
|
|
|
407
425
|
onSave,
|
|
408
426
|
onCancel,
|
|
409
427
|
saveButtonLabel: saveButtonLabelFromProps,
|
|
428
|
+
maxMenuItems,
|
|
410
429
|
isReadOnly = false
|
|
411
430
|
}) {
|
|
412
431
|
const t = useTranslator();
|
|
@@ -528,7 +547,7 @@ export function PowerSearchEditPopover({
|
|
|
528
547
|
if (isNestedType) {
|
|
529
548
|
return /*#__PURE__*/_jsxs("div", {
|
|
530
549
|
...{
|
|
531
|
-
className: "xb3r6kr"
|
|
550
|
+
className: "xb3r6kr x12h1iku"
|
|
532
551
|
},
|
|
533
552
|
onKeyDown: handleKeyDown,
|
|
534
553
|
children: [/*#__PURE__*/_jsx("div", {
|
|
@@ -559,6 +578,7 @@ export function PowerSearchEditPopover({
|
|
|
559
578
|
operatorOptions: operatorOptions,
|
|
560
579
|
onOperatorChange: handleOperatorChange,
|
|
561
580
|
onPartialFilterChange: setPartialFilter,
|
|
581
|
+
maxMenuItems: maxMenuItems,
|
|
562
582
|
isReadOnly: isReadOnly
|
|
563
583
|
})]
|
|
564
584
|
})
|
|
@@ -595,7 +615,7 @@ export function PowerSearchEditPopover({
|
|
|
595
615
|
}
|
|
596
616
|
return /*#__PURE__*/_jsxs("div", {
|
|
597
617
|
...{
|
|
598
|
-
className: "xb3r6kr"
|
|
618
|
+
className: "xb3r6kr x12h1iku"
|
|
599
619
|
},
|
|
600
620
|
onKeyDown: handleKeyDown,
|
|
601
621
|
children: [/*#__PURE__*/_jsx("div", {
|
|
@@ -604,6 +624,7 @@ export function PowerSearchEditPopover({
|
|
|
604
624
|
},
|
|
605
625
|
children: /*#__PURE__*/_jsxs(HStack, {
|
|
606
626
|
gap: 2,
|
|
627
|
+
xstyle: styles.chipRow,
|
|
607
628
|
children: [/*#__PURE__*/_jsx("div", {
|
|
608
629
|
...{
|
|
609
630
|
className: "x1iyjqo2 xs83m0k xeuugli"
|
|
@@ -619,7 +640,7 @@ export function PowerSearchEditPopover({
|
|
|
619
640
|
})
|
|
620
641
|
}), showOperatorSelector && operatorOptions.length > 0 && /*#__PURE__*/_jsx("div", {
|
|
621
642
|
...{
|
|
622
|
-
className: "x1iyjqo2 x2lah0s"
|
|
643
|
+
className: "x1iyjqo2 x2lah0s x193iq5w"
|
|
623
644
|
},
|
|
624
645
|
children: /*#__PURE__*/_jsx(Selector, {
|
|
625
646
|
label: t('@astryx.powersearch.editor.operator'),
|
|
@@ -641,6 +662,7 @@ export function PowerSearchEditPopover({
|
|
|
641
662
|
onChange: handleValueChange,
|
|
642
663
|
onEnter: handleSave,
|
|
643
664
|
config: config,
|
|
665
|
+
maxMenuItems: maxMenuItems,
|
|
644
666
|
isDisabled: isReadOnly
|
|
645
667
|
})
|
|
646
668
|
})]
|
|
@@ -16,8 +16,10 @@ export interface PowerSearchValueEditorProps {
|
|
|
16
16
|
onChange: (value: FilterValue, shouldSave?: boolean) => void;
|
|
17
17
|
onEnter?: () => void;
|
|
18
18
|
config: InternalConfig;
|
|
19
|
+
/** Max suggestions in string and entity value typeaheads. */
|
|
20
|
+
maxMenuItems?: number;
|
|
19
21
|
isDisabled?: boolean;
|
|
20
22
|
timezoneID?: string;
|
|
21
23
|
}
|
|
22
|
-
export declare function PowerSearchValueEditor({ operatorValue, filterValue, onChange, onEnter, isDisabled, }: PowerSearchValueEditorProps): React.JSX.Element | null;
|
|
24
|
+
export declare function PowerSearchValueEditor({ operatorValue, filterValue, onChange, onEnter, maxMenuItems, isDisabled, }: PowerSearchValueEditorProps): React.JSX.Element | null;
|
|
23
25
|
//# sourceMappingURL=PowerSearchValueEditor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PowerSearchValueEditor.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearchValueEditor.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAA6B,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EAGZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAexD,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"PowerSearchValueEditor.d.ts","sourceRoot":"","sources":["../../src/PowerSearch/PowerSearchValueEditor.tsx"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,OAAO,KAA6B,MAAM,OAAO,CAAC;AAClD,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EAGZ,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAexD,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,6DAA6D;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAilBD,wBAAgB,sBAAsB,CAAC,EACrC,aAAa,EACb,WAAW,EACX,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,UAAU,GACX,EAAE,2BAA2B,4BA6H7B"}
|