@lumx/react 4.17.1-alpha.2 → 4.17.1-alpha.3
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/_internal/_virtual/_rolldown/runtime.js +34 -0
- package/_internal/components/alert-dialog/AlertDialog.d.ts +30 -0
- package/_internal/components/alert-dialog/AlertDialog.js +49 -0
- package/_internal/components/alert-dialog/index.d.ts +1 -0
- package/_internal/components/autocomplete/Autocomplete.d.ts +181 -0
- package/_internal/components/autocomplete/Autocomplete.js +92 -0
- package/_internal/components/autocomplete/AutocompleteMultiple.d.ts +28 -0
- package/_internal/components/autocomplete/AutocompleteMultiple.js +95 -0
- package/_internal/components/autocomplete/index.d.ts +2 -0
- package/_internal/components/avatar/Avatar.d.ts +39 -0
- package/_internal/components/avatar/Avatar.js +46 -0
- package/_internal/components/avatar/index.d.ts +2 -0
- package/_internal/components/badge/Badge.d.ts +24 -0
- package/_internal/components/badge/Badge.js +21 -0
- package/_internal/components/badge/BadgeWrapper.d.ts +16 -0
- package/_internal/components/badge/BadgeWrapper.js +13 -0
- package/_internal/components/badge/index.d.ts +2 -0
- package/_internal/components/button/Button.d.ts +22 -0
- package/_internal/components/button/Button.js +49 -0
- package/_internal/components/button/ButtonGroup.d.ts +17 -0
- package/_internal/components/button/ButtonGroup.js +21 -0
- package/_internal/components/button/ButtonRoot.d.ts +1 -0
- package/_internal/components/button/IconButton.d.ts +30 -0
- package/_internal/components/button/IconButton.js +40 -0
- package/_internal/components/button/index.d.ts +5 -0
- package/_internal/components/checkbox/Checkbox.d.ts +24 -0
- package/_internal/components/checkbox/Checkbox.js +58 -0
- package/_internal/components/checkbox/index.d.ts +1 -0
- package/_internal/components/chip/Chip.d.ts +34 -0
- package/_internal/components/chip/Chip.js +43 -0
- package/_internal/components/chip/ChipGroup.d.ts +20 -0
- package/_internal/components/chip/ChipGroup.js +25 -0
- package/_internal/components/chip/SelectionChipGroup.d.ts +43 -0
- package/_internal/components/chip/SelectionChipGroup.js +78 -0
- package/_internal/components/chip/index.d.ts +3 -0
- package/_internal/components/combobox/ComboboxButton.d.ts +17 -0
- package/_internal/components/combobox/ComboboxButton.js +59 -0
- package/_internal/components/combobox/ComboboxInput.d.ts +19 -0
- package/_internal/components/combobox/ComboboxInput.js +79 -0
- package/_internal/components/combobox/ComboboxList.d.ts +8 -0
- package/_internal/components/combobox/ComboboxList.js +64 -0
- package/_internal/components/combobox/ComboboxOption.d.ts +36 -0
- package/_internal/components/combobox/ComboboxOption.js +76 -0
- package/_internal/components/combobox/ComboboxOptionAction.d.ts +18 -0
- package/_internal/components/combobox/ComboboxOptionAction.js +38 -0
- package/_internal/components/combobox/ComboboxOptionMoreInfo.d.ts +19 -0
- package/_internal/components/combobox/ComboboxOptionMoreInfo.js +49 -0
- package/_internal/components/combobox/ComboboxOptionSkeleton.d.ts +19 -0
- package/_internal/components/combobox/ComboboxOptionSkeleton.js +38 -0
- package/_internal/components/combobox/ComboboxPopover.d.ts +18 -0
- package/_internal/components/combobox/ComboboxPopover.js +32 -0
- package/_internal/components/combobox/ComboboxProvider.d.ts +27 -0
- package/_internal/components/combobox/ComboboxProvider.js +41 -0
- package/_internal/components/combobox/ComboboxSection.d.ts +15 -0
- package/_internal/components/combobox/ComboboxSection.js +47 -0
- package/_internal/components/combobox/ComboboxState.d.ts +14 -0
- package/_internal/components/combobox/ComboboxState.js +70 -0
- package/_internal/components/combobox/context/ComboboxContext.js +15 -0
- package/_internal/components/combobox/context/ComboboxListContext.js +12 -0
- package/_internal/components/combobox/context/ComboboxOptionContext.js +16 -0
- package/_internal/components/combobox/context/useComboboxEvent.d.ts +10 -0
- package/_internal/components/combobox/context/useComboboxEvent.js +17 -0
- package/_internal/components/combobox/context/useComboboxOpen.js +13 -0
- package/_internal/components/combobox/index.d.ts +73 -0
- package/_internal/components/combobox/index.js +47 -0
- package/_internal/components/combobox/wrapRenderOption.js +38 -0
- package/_internal/components/comment-block/CommentBlock.d.ts +68 -0
- package/_internal/components/comment-block/CommentBlock.js +109 -0
- package/_internal/components/comment-block/index.d.ts +1 -0
- package/_internal/components/date-picker/DatePicker.d.ts +14 -0
- package/_internal/components/date-picker/DatePicker.js +45 -0
- package/_internal/components/date-picker/DatePickerControlled.d.ts +26 -0
- package/_internal/components/date-picker/DatePickerControlled.js +177 -0
- package/_internal/components/date-picker/DatePickerField.d.ts +38 -0
- package/_internal/components/date-picker/DatePickerField.js +83 -0
- package/_internal/components/date-picker/constants.js +11 -0
- package/_internal/components/date-picker/index.d.ts +4 -0
- package/_internal/components/date-picker/types.d.ts +30 -0
- package/_internal/components/dialog/Dialog.d.ts +47 -0
- package/_internal/components/dialog/Dialog.js +110 -0
- package/_internal/components/dialog/index.d.ts +2 -0
- package/_internal/components/divider/Divider.d.ts +20 -0
- package/_internal/components/divider/Divider.js +30 -0
- package/_internal/components/divider/index.d.ts +1 -0
- package/_internal/components/drag-handle/DragHandle.d.ts +20 -0
- package/_internal/components/drag-handle/DragHandle.js +29 -0
- package/_internal/components/drag-handle/index.d.ts +1 -0
- package/_internal/components/dropdown/Dropdown.d.ts +89 -0
- package/_internal/components/dropdown/Dropdown.js +89 -0
- package/_internal/components/dropdown/index.d.ts +1 -0
- package/_internal/components/expansion-panel/ExpansionPanel.d.ts +31 -0
- package/_internal/components/expansion-panel/ExpansionPanel.js +80 -0
- package/_internal/components/expansion-panel/index.d.ts +1 -0
- package/_internal/components/flag/Flag.d.ts +20 -0
- package/_internal/components/flag/Flag.js +28 -0
- package/_internal/components/flag/index.d.ts +1 -0
- package/_internal/components/flex-box/FlexBox.d.ts +25 -0
- package/_internal/components/flex-box/FlexBox.js +24 -0
- package/_internal/components/flex-box/index.d.ts +2 -0
- package/_internal/components/generic-block/GenericBlock.d.ts +51 -0
- package/_internal/components/generic-block/GenericBlock.js +90 -0
- package/_internal/components/generic-block/index.d.ts +2 -0
- package/_internal/components/grid/Grid.d.ts +33 -0
- package/_internal/components/grid/Grid.js +48 -0
- package/_internal/components/grid/GridItem.d.ts +29 -0
- package/_internal/components/grid/GridItem.js +37 -0
- package/_internal/components/grid/index.d.ts +2 -0
- package/_internal/components/grid-column/GridColumn.d.ts +24 -0
- package/_internal/components/grid-column/GridColumn.js +27 -0
- package/_internal/components/grid-column/index.d.ts +2 -0
- package/_internal/components/heading/Heading.d.ts +14 -0
- package/_internal/components/heading/Heading.js +25 -0
- package/_internal/components/heading/HeadingLevelProvider.d.ts +15 -0
- package/_internal/components/heading/HeadingLevelProvider.js +22 -0
- package/_internal/components/heading/context.js +6 -0
- package/_internal/components/heading/index.d.ts +3 -0
- package/_internal/components/heading/useHeadingLevel.d.ts +7 -0
- package/_internal/components/heading/useHeadingLevel.js +12 -0
- package/_internal/components/icon/Icon.d.ts +17 -0
- package/_internal/components/icon/Icon.js +24 -0
- package/_internal/components/icon/index.d.ts +2 -0
- package/_internal/components/image-block/ImageBlock.d.ts +29 -0
- package/_internal/components/image-block/ImageBlock.js +30 -0
- package/_internal/components/image-block/ImageCaption.d.ts +13 -0
- package/_internal/components/image-block/ImageCaption.js +18 -0
- package/_internal/components/image-block/index.d.ts +2 -0
- package/_internal/components/image-lightbox/ImageLightbox.d.ts +17 -0
- package/_internal/components/image-lightbox/ImageLightbox.js +66 -0
- package/_internal/components/image-lightbox/constants.js +11 -0
- package/_internal/components/image-lightbox/index.d.ts +2 -0
- package/_internal/components/image-lightbox/internal/ImageSlide.js +81 -0
- package/_internal/components/image-lightbox/internal/ImageSlideshow.js +112 -0
- package/_internal/components/image-lightbox/internal/useAnimateScroll.js +40 -0
- package/_internal/components/image-lightbox/internal/usePointerZoom.js +98 -0
- package/_internal/components/image-lightbox/types.d.ts +33 -0
- package/_internal/components/image-lightbox/useImageLightbox.d.ts +29 -0
- package/_internal/components/image-lightbox/useImageLightbox.js +102 -0
- package/_internal/components/inline-list/InlineList.d.ts +25 -0
- package/_internal/components/inline-list/InlineList.js +24 -0
- package/_internal/components/inline-list/index.d.ts +1 -0
- package/_internal/components/input-helper/InputHelper.d.ts +17 -0
- package/_internal/components/input-helper/InputHelper.js +25 -0
- package/_internal/components/input-helper/index.d.ts +1 -0
- package/_internal/components/input-label/InputLabel.d.ts +17 -0
- package/_internal/components/input-label/InputLabel.js +25 -0
- package/_internal/components/input-label/index.d.ts +1 -0
- package/_internal/components/lightbox/Lightbox.d.ts +33 -0
- package/_internal/components/lightbox/Lightbox.js +69 -0
- package/_internal/components/lightbox/index.d.ts +1 -0
- package/_internal/components/link/Link.d.ts +35 -0
- package/_internal/components/link/Link.js +45 -0
- package/_internal/components/link/index.d.ts +1 -0
- package/_internal/components/link-preview/LinkPreview.d.ts +25 -0
- package/_internal/components/link-preview/LinkPreview.js +31 -0
- package/_internal/components/link-preview/index.d.ts +1 -0
- package/_internal/components/list/List.d.ts +27 -0
- package/_internal/components/list/List.js +28 -0
- package/_internal/components/list/ListDivider.d.ts +21 -0
- package/_internal/components/list/ListDivider.js +22 -0
- package/_internal/components/list/ListItem.d.ts +47 -0
- package/_internal/components/list/ListItem.js +39 -0
- package/_internal/components/list/ListItemAction.js +30 -0
- package/_internal/components/list/ListSection.d.ts +24 -0
- package/_internal/components/list/ListSection.js +26 -0
- package/_internal/components/list/ListSubheader.d.ts +23 -0
- package/_internal/components/list/ListSubheader.js +33 -0
- package/_internal/components/list/index.d.ts +6 -0
- package/_internal/components/menu-button/MenuButton.d.ts +34 -0
- package/_internal/components/menu-button/MenuButton.js +48 -0
- package/_internal/components/menu-button/MenuItem.d.ts +46 -0
- package/_internal/components/menu-button/MenuItem.js +62 -0
- package/_internal/components/menu-button/MenuList.js +39 -0
- package/_internal/components/menu-button/MenuPopover.d.ts +13 -0
- package/_internal/components/menu-button/MenuPopover.js +31 -0
- package/_internal/components/menu-button/MenuProvider.js +45 -0
- package/_internal/components/menu-button/MenuTrigger.js +40 -0
- package/_internal/components/menu-button/context/MenuContext.js +11 -0
- package/_internal/components/menu-button/context/useMenuEvent.js +21 -0
- package/_internal/components/menu-button/context/useMenuOpen.js +15 -0
- package/_internal/components/menu-button/index.d.ts +3 -0
- package/_internal/components/message/Message.d.ts +17 -0
- package/_internal/components/message/Message.js +20 -0
- package/_internal/components/message/index.d.ts +1 -0
- package/_internal/components/mosaic/Mosaic.d.ts +25 -0
- package/_internal/components/mosaic/Mosaic.js +29 -0
- package/_internal/components/mosaic/index.d.ts +1 -0
- package/_internal/components/navigation/Navigation.d.ts +18 -0
- package/_internal/components/navigation/Navigation.js +51 -0
- package/_internal/components/navigation/NavigationItem.d.ts +23 -0
- package/_internal/components/navigation/NavigationItem.js +52 -0
- package/_internal/components/navigation/NavigationSection.d.ts +15 -0
- package/_internal/components/navigation/NavigationSection.js +100 -0
- package/_internal/components/navigation/constants.js +11 -0
- package/_internal/components/navigation/context.js +6 -0
- package/_internal/components/navigation/index.d.ts +1 -0
- package/_internal/components/notification/Notification.d.ts +36 -0
- package/_internal/components/notification/Notification.js +97 -0
- package/_internal/components/notification/constants.js +28 -0
- package/_internal/components/notification/index.d.ts +1 -0
- package/_internal/components/popover/Popover.d.ts +43 -0
- package/_internal/components/popover/Popover.js +86 -0
- package/_internal/components/popover/index.d.ts +3 -0
- package/_internal/components/popover/usePopoverStyle.js +82 -0
- package/_internal/components/popover-dialog/PopoverDialog.d.ts +22 -0
- package/_internal/components/popover-dialog/PopoverDialog.js +42 -0
- package/_internal/components/popover-dialog/index.d.ts +1 -0
- package/_internal/components/post-block/PostBlock.d.ts +44 -0
- package/_internal/components/post-block/PostBlock.js +92 -0
- package/_internal/components/post-block/index.d.ts +1 -0
- package/_internal/components/progress/Progress.d.ts +30 -0
- package/_internal/components/progress/Progress.js +54 -0
- package/_internal/components/progress/ProgressCircular.d.ts +20 -0
- package/_internal/components/progress/ProgressCircular.js +31 -0
- package/_internal/components/progress/ProgressLinear.d.ts +20 -0
- package/_internal/components/progress/ProgressLinear.js +26 -0
- package/_internal/components/progress/index.d.ts +4 -0
- package/_internal/components/progress-tracker/ProgressTracker.d.ts +26 -0
- package/_internal/components/progress-tracker/ProgressTracker.js +75 -0
- package/_internal/components/progress-tracker/ProgressTrackerProvider.d.ts +29 -0
- package/_internal/components/progress-tracker/ProgressTrackerProvider.js +45 -0
- package/_internal/components/progress-tracker/ProgressTrackerStep.d.ts +37 -0
- package/_internal/components/progress-tracker/ProgressTrackerStep.js +107 -0
- package/_internal/components/progress-tracker/ProgressTrackerStepPanel.d.ts +27 -0
- package/_internal/components/progress-tracker/ProgressTrackerStepPanel.js +47 -0
- package/_internal/components/progress-tracker/index.d.ts +4 -0
- package/_internal/components/radio-button/RadioButton.d.ts +23 -0
- package/_internal/components/radio-button/RadioButton.js +50 -0
- package/_internal/components/radio-button/RadioGroup.d.ts +20 -0
- package/_internal/components/radio-button/RadioGroup.js +23 -0
- package/_internal/components/radio-button/index.d.ts +2 -0
- package/_internal/components/select/Select.d.ts +20 -0
- package/_internal/components/select/Select.js +130 -0
- package/_internal/components/select/SelectMultiple.d.ts +24 -0
- package/_internal/components/select/SelectMultiple.js +128 -0
- package/_internal/components/select/WithSelectContext.js +96 -0
- package/_internal/components/select/constants.d.ts +59 -0
- package/_internal/components/select/constants.js +10 -0
- package/_internal/components/select/index.d.ts +3 -0
- package/_internal/components/select-button/SelectButton.d.ts +93 -0
- package/_internal/components/select-button/SelectButton.js +73 -0
- package/_internal/components/select-button/index.d.ts +18 -0
- package/_internal/components/select-button/index.js +11 -0
- package/_internal/components/select-text-field/SelectTextField.d.ts +80 -0
- package/_internal/components/select-text-field/SelectTextField.js +167 -0
- package/_internal/components/select-text-field/index.d.ts +33 -0
- package/_internal/components/select-text-field/index.js +24 -0
- package/_internal/components/side-navigation/SideNavigation.d.ts +22 -0
- package/_internal/components/side-navigation/SideNavigation.js +39 -0
- package/_internal/components/side-navigation/SideNavigationItem.d.ts +44 -0
- package/_internal/components/side-navigation/SideNavigationItem.js +111 -0
- package/_internal/components/side-navigation/index.d.ts +2 -0
- package/_internal/components/skeleton/SkeletonCircle.d.ts +19 -0
- package/_internal/components/skeleton/SkeletonCircle.js +30 -0
- package/_internal/components/skeleton/SkeletonRectangle.d.ts +19 -0
- package/_internal/components/skeleton/SkeletonRectangle.js +33 -0
- package/_internal/components/skeleton/SkeletonTypography.d.ts +19 -0
- package/_internal/components/skeleton/SkeletonTypography.js +31 -0
- package/_internal/components/skeleton/index.d.ts +4 -0
- package/_internal/components/slider/Slider.d.ts +44 -0
- package/_internal/components/slider/Slider.js +232 -0
- package/_internal/components/slider/index.d.ts +2 -0
- package/_internal/components/slideshow/Slides.d.ts +49 -0
- package/_internal/components/slideshow/Slides.js +86 -0
- package/_internal/components/slideshow/Slideshow.d.ts +35 -0
- package/_internal/components/slideshow/Slideshow.js +104 -0
- package/_internal/components/slideshow/SlideshowControls.d.ts +65 -0
- package/_internal/components/slideshow/SlideshowControls.js +139 -0
- package/_internal/components/slideshow/SlideshowItem.d.ts +23 -0
- package/_internal/components/slideshow/SlideshowItem.js +32 -0
- package/_internal/components/slideshow/SlideshowItemGroup.js +44 -0
- package/_internal/components/slideshow/constants.d.ts +13 -0
- package/_internal/components/slideshow/constants.js +16 -0
- package/_internal/components/slideshow/index.d.ts +4 -0
- package/_internal/components/slideshow/usePaginationVisibleRange.js +41 -0
- package/_internal/components/slideshow/useSlideFocusManagement.js +64 -0
- package/_internal/components/slideshow/useSlideScroll.js +57 -0
- package/_internal/components/slideshow/useSwipeNavigate.js +21 -0
- package/_internal/components/switch/Switch.d.ts +24 -0
- package/_internal/components/switch/Switch.js +54 -0
- package/_internal/components/switch/index.d.ts +1 -0
- package/_internal/components/table/Table.d.ts +20 -0
- package/_internal/components/table/Table.js +28 -0
- package/_internal/components/table/TableBody.d.ts +20 -0
- package/_internal/components/table/TableBody.js +22 -0
- package/_internal/components/table/TableCell.d.ts +23 -0
- package/_internal/components/table/TableCell.js +23 -0
- package/_internal/components/table/TableHeader.d.ts +20 -0
- package/_internal/components/table/TableHeader.js +23 -0
- package/_internal/components/table/TableRow.d.ts +23 -0
- package/_internal/components/table/TableRow.js +28 -0
- package/_internal/components/table/index.d.ts +6 -0
- package/_internal/components/tabs/Tab.d.ts +39 -0
- package/_internal/components/tabs/Tab.js +39 -0
- package/_internal/components/tabs/TabList.d.ts +22 -0
- package/_internal/components/tabs/TabList.js +37 -0
- package/_internal/components/tabs/TabPanel.d.ts +25 -0
- package/_internal/components/tabs/TabPanel.js +30 -0
- package/_internal/components/tabs/TabProvider.d.ts +27 -0
- package/_internal/components/tabs/TabProvider.js +51 -0
- package/_internal/components/tabs/index.d.ts +5 -0
- package/_internal/components/tabs/state.js +55 -0
- package/_internal/components/text/Text.d.ts +17 -0
- package/_internal/components/text/Text.js +33 -0
- package/_internal/components/text/index.d.ts +1 -0
- package/_internal/components/text-field/RawInputText.d.ts +20 -0
- package/_internal/components/text-field/RawInputText.js +23 -0
- package/_internal/components/text-field/RawInputTextarea.d.ts +21 -0
- package/_internal/components/text-field/RawInputTextarea.js +34 -0
- package/_internal/components/text-field/TextField.d.ts +46 -0
- package/_internal/components/text-field/TextField.js +122 -0
- package/_internal/components/text-field/index.d.ts +3 -0
- package/_internal/components/text-field/useFitRowsToContent.js +27 -0
- package/_internal/components/thumbnail/Thumbnail.d.ts +31 -0
- package/_internal/components/thumbnail/Thumbnail.js +45 -0
- package/_internal/components/thumbnail/index.d.ts +3 -0
- package/_internal/components/thumbnail/types.d.ts +49 -0
- package/_internal/components/thumbnail/types.js +23 -0
- package/_internal/components/thumbnail/useFocusPointStyle.d.ts +15 -0
- package/_internal/components/thumbnail/useFocusPointStyle.js +53 -0
- package/_internal/components/thumbnail/useImageLoad.js +23 -0
- package/_internal/components/time-picker-field/TimePickerField.d.ts +38 -0
- package/_internal/components/time-picker-field/TimePickerField.js +103 -0
- package/_internal/components/time-picker-field/index.d.ts +2 -0
- package/_internal/components/toolbar/Toolbar.d.ts +28 -0
- package/_internal/components/toolbar/Toolbar.js +21 -0
- package/_internal/components/toolbar/index.d.ts +1 -0
- package/_internal/components/tooltip/Tooltip.d.ts +23 -0
- package/_internal/components/tooltip/Tooltip.js +69 -0
- package/_internal/components/tooltip/context.js +15 -0
- package/_internal/components/tooltip/index.d.ts +2 -0
- package/_internal/components/tooltip/useInjectTooltipRef.js +43 -0
- package/_internal/components/tooltip/useTooltipOpen.js +36 -0
- package/_internal/components/uploader/Uploader.d.ts +29 -0
- package/_internal/components/uploader/Uploader.js +71 -0
- package/_internal/components/uploader/index.d.ts +2 -0
- package/_internal/components/user-block/UserBlock.d.ts +33 -0
- package/_internal/components/user-block/UserBlock.js +88 -0
- package/_internal/components/user-block/index.d.ts +2 -0
- package/_internal/constants.js +2 -0
- package/_internal/hooks/useBooleanState.js +13 -0
- package/_internal/hooks/useCallbackOnEscape.js +30 -0
- package/_internal/hooks/useChipGroupNavigation.d.ts +12 -0
- package/_internal/hooks/useChipGroupNavigation.js +49 -0
- package/_internal/hooks/useClickAway.d.ts +16 -0
- package/_internal/hooks/useClickAway.js +20 -0
- package/_internal/hooks/useDisableBodyScroll.js +25 -0
- package/_internal/hooks/useEventCallback.js +21 -0
- package/_internal/hooks/useFocus.js +19 -0
- package/_internal/hooks/useFocusTrap.js +28 -0
- package/_internal/hooks/useFocusWithin.js +27 -0
- package/_internal/hooks/useId.js +16 -0
- package/_internal/hooks/useImageSize.js +19 -0
- package/_internal/hooks/useInfiniteScroll.js +36 -0
- package/_internal/hooks/useIntersectionObserver.js +24 -0
- package/_internal/hooks/useInterval.js +26 -0
- package/_internal/hooks/useIsomorphicLayoutEffect.js +9 -0
- package/_internal/hooks/useKeyboardListNavigation.d.ts +17 -0
- package/_internal/hooks/useKeyboardListNavigation.js +136 -0
- package/_internal/hooks/useListenFocus.js +23 -0
- package/_internal/hooks/useOverflowTooltipLabel.js +27 -0
- package/_internal/hooks/usePreviousValue.js +15 -0
- package/_internal/hooks/useRestoreFocusOnClose.js +47 -0
- package/_internal/hooks/useRovingTabIndexContainer.js +31 -0
- package/_internal/hooks/useSizeOnWindowResize.js +26 -0
- package/_internal/hooks/useSlideshowControls.d.ts +63 -0
- package/_internal/hooks/useSlideshowControls.js +105 -0
- package/_internal/hooks/useStopPropagation.js +18 -0
- package/_internal/hooks/useTransitionVisibility.js +41 -0
- package/_internal/node_modules/@floating-ui/core/dist/floating-ui.core.js +536 -0
- package/_internal/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +528 -0
- package/_internal/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +209 -0
- package/_internal/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +144 -0
- package/_internal/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +135 -0
- package/_internal/node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js +114 -0
- package/_internal/node_modules/classnames/index.js +45 -0
- package/_internal/packages/lumx-core/src/js/components/AlertDialog/index.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/AlertDialog/index.js +116 -0
- package/_internal/packages/lumx-core/src/js/components/Avatar/index.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/Avatar/index.js +49 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/BadgeWrapper.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/BadgeWrapper.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/index.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Badge/index.js +38 -0
- package/_internal/packages/lumx-core/src/js/components/Button/Button.d.ts +41 -0
- package/_internal/packages/lumx-core/src/js/components/Button/Button.js +46 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonGroup.d.ts +17 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonGroup.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonRoot.d.ts +46 -0
- package/_internal/packages/lumx-core/src/js/components/Button/ButtonRoot.js +75 -0
- package/_internal/packages/lumx-core/src/js/components/Button/IconButton.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Button/IconButton.js +46 -0
- package/_internal/packages/lumx-core/src/js/components/Checkbox/index.d.ts +35 -0
- package/_internal/packages/lumx-core/src/js/components/Checkbox/index.js +83 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/ChipGroup.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/ChipGroup.js +32 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/SelectionChipGroup.d.ts +29 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/SelectionChipGroup.js +66 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/index.d.ts +63 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/index.js +78 -0
- package/_internal/packages/lumx-core/src/js/components/Chip/setupSelectionChipGroupEvents.js +97 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxButton.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxButton.js +51 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxInput.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxInput.js +56 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxList.d.ts +36 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxList.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOption.d.ts +53 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOption.js +73 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionAction.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionMoreInfo.d.ts +29 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionMoreInfo.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionSkeleton.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxOptionSkeleton.js +44 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxPopover.js +47 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxSection.d.ts +36 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxSection.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxState.d.ts +64 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/ComboboxState.js +86 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/constants.js +4 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupCombobox.js +350 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupComboboxButton.js +84 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupComboboxInput.js +95 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/setupListbox.js +84 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/subscribeComboboxState.js +43 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/types.d.ts +59 -0
- package/_internal/packages/lumx-core/src/js/components/Combobox/utils.js +63 -0
- package/_internal/packages/lumx-core/src/js/components/Dialog/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/Dialog/index.js +93 -0
- package/_internal/packages/lumx-core/src/js/components/Divider/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/Divider/index.js +29 -0
- package/_internal/packages/lumx-core/src/js/components/DragHandle/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/DragHandle/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/ExpansionPanel/index.d.ts +51 -0
- package/_internal/packages/lumx-core/src/js/components/ExpansionPanel/index.js +92 -0
- package/_internal/packages/lumx-core/src/js/components/Flag/index.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Flag/index.js +41 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/index.js +39 -0
- package/_internal/packages/lumx-core/src/js/components/FlexBox/types.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/constants.d.ts +22 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/constants.js +15 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/index.d.ts +66 -0
- package/_internal/packages/lumx-core/src/js/components/GenericBlock/index.js +63 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/GridColumn.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/GridColumn.js +44 -0
- package/_internal/packages/lumx-core/src/js/components/GridColumn/index.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/constants.js +19 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/index.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/index.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/Heading/utils.js +14 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/constants.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Icon/index.js +66 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/ImageCaption.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/ImageCaption.js +61 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/index.d.ts +52 -0
- package/_internal/packages/lumx-core/src/js/components/ImageBlock/index.js +80 -0
- package/_internal/packages/lumx-core/src/js/components/InlineList/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/InlineList/index.js +48 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/constants.js +9 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/index.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/InputHelper/index.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/InputLabel/index.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/InputLabel/index.js +31 -0
- package/_internal/packages/lumx-core/src/js/components/Lightbox/index.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/components/Lightbox/index.js +70 -0
- package/_internal/packages/lumx-core/src/js/components/Link/index.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Link/index.js +40 -0
- package/_internal/packages/lumx-core/src/js/components/LinkPreview/index.d.ts +36 -0
- package/_internal/packages/lumx-core/src/js/components/LinkPreview/index.js +94 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListDivider.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListDivider.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItem.d.ts +41 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItem.js +66 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItemAction.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListItemAction.js +36 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListSection.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/List/ListSection.js +51 -0
- package/_internal/packages/lumx-core/src/js/components/List/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/List/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuButton.d.ts +28 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuButton.js +29 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuItem.d.ts +30 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuItem.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuList.js +20 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuPopover.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuPopover.js +32 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/MenuTrigger.js +20 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/setupMenu.js +256 -0
- package/_internal/packages/lumx-core/src/js/components/Menu/utils.js +16 -0
- package/_internal/packages/lumx-core/src/js/components/Message/index.d.ts +31 -0
- package/_internal/packages/lumx-core/src/js/components/Message/index.js +85 -0
- package/_internal/packages/lumx-core/src/js/components/Mosaic/index.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Mosaic/index.js +70 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/constants.d.ts +39 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/constants.js +37 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/index.d.ts +65 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/index.js +74 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/types.d.ts +39 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/buildPopoverMiddleware.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/computeArrowStyles.js +13 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/getFloatingPlacement.js +10 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/parseAutoPlacement.js +21 -0
- package/_internal/packages/lumx-core/src/js/components/Popover/utils/parseFitWidth.js +12 -0
- package/_internal/packages/lumx-core/src/js/components/PopoverDialog/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/PopoverDialog/index.js +15 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressCircular/index.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressCircular/index.js +57 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressLinear/index.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/components/ProgressLinear/index.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/RadioButton/index.d.ts +35 -0
- package/_internal/packages/lumx-core/src/js/components/RadioButton/index.js +71 -0
- package/_internal/packages/lumx-core/src/js/components/RadioGroup/index.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/RadioGroup/index.js +35 -0
- package/_internal/packages/lumx-core/src/js/components/RawClickable/index.d.ts +17 -0
- package/_internal/packages/lumx-core/src/js/components/RawClickable/index.js +34 -0
- package/_internal/packages/lumx-core/src/js/components/SelectButton/index.d.ts +58 -0
- package/_internal/packages/lumx-core/src/js/components/SelectButton/index.js +85 -0
- package/_internal/packages/lumx-core/src/js/components/SelectTextField/index.js +78 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonCircle.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonCircle.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonRectangle.d.ts +34 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonRectangle.js +49 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonTypography.d.ts +24 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/SkeletonTypography.js +38 -0
- package/_internal/packages/lumx-core/src/js/components/Skeleton/index.d.ts +3 -0
- package/_internal/packages/lumx-core/src/js/components/Switch/index.d.ts +37 -0
- package/_internal/packages/lumx-core/src/js/components/Switch/index.js +78 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableBody.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableBody.js +29 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableCell.d.ts +42 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableCell.js +101 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableHeader.d.ts +15 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableHeader.js +33 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableRow.d.ts +22 -0
- package/_internal/packages/lumx-core/src/js/components/Table/TableRow.js +42 -0
- package/_internal/packages/lumx-core/src/js/components/Table/constants.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Table/constants.js +11 -0
- package/_internal/packages/lumx-core/src/js/components/Table/index.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/components/Table/index.js +31 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/Tab.d.ts +54 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/Tab.js +69 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabList.d.ts +27 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabList.js +52 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabPanel.d.ts +26 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/TabPanel.js +41 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/constants.js +7 -0
- package/_internal/packages/lumx-core/src/js/components/Tabs/state.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Text/index.d.ts +55 -0
- package/_internal/packages/lumx-core/src/js/components/Text/index.js +50 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputText.d.ts +21 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputText.js +40 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputTextarea.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/RawInputTextarea.js +40 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/TextField.d.ts +70 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/TextField.js +143 -0
- package/_internal/packages/lumx-core/src/js/components/TextField/constants.js +15 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/index.d.ts +60 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/index.js +114 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/types.d.ts +39 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/utils.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/components/Thumbnail/utils.js +76 -0
- package/_internal/packages/lumx-core/src/js/components/TimePickerField/index.d.ts +70 -0
- package/_internal/packages/lumx-core/src/js/components/TimePickerField/index.js +53 -0
- package/_internal/packages/lumx-core/src/js/components/Toolbar/index.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/components/Toolbar/index.js +51 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/constants.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/constants.js +8 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/index.d.ts +25 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/index.js +55 -0
- package/_internal/packages/lumx-core/src/js/components/Tooltip/tooltipOpenManager.js +93 -0
- package/_internal/packages/lumx-core/src/js/components/Uploader/index.d.ts +59 -0
- package/_internal/packages/lumx-core/src/js/components/Uploader/index.js +79 -0
- package/_internal/packages/lumx-core/src/js/components/UserBlock/index.d.ts +124 -0
- package/_internal/packages/lumx-core/src/js/components/UserBlock/index.js +101 -0
- package/_internal/packages/lumx-core/src/js/constants/browser/index.js +7 -0
- package/_internal/packages/lumx-core/src/js/constants/components/index.js +19 -0
- package/_internal/packages/lumx-core/src/js/constants/enums/index.d.ts +184 -0
- package/_internal/packages/lumx-core/src/js/constants/enums/index.js +140 -0
- package/_internal/packages/lumx-core/src/js/constants/index.d.ts +1 -0
- package/_internal/packages/lumx-core/src/js/types/AriaAttributes.d.ts +32 -0
- package/_internal/packages/lumx-core/src/js/types/Booleanish.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/types/CommonRef.d.ts +4 -0
- package/_internal/packages/lumx-core/src/js/types/GenericProps.d.ts +14 -0
- package/_internal/packages/lumx-core/src/js/types/HasAriaDisabled.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasAriaLabelOrLabelledBy.d.ts +19 -0
- package/_internal/packages/lumx-core/src/js/types/HasChecked.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasClassName.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasCloseMode.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/types/HasDisabled.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/types/HasPolymorphicAs.d.ts +12 -0
- package/_internal/packages/lumx-core/src/js/types/HasRequiredLinkHref.d.ts +6 -0
- package/_internal/packages/lumx-core/src/js/types/HasTheme.d.ts +10 -0
- package/_internal/packages/lumx-core/src/js/types/HeadingElement.d.ts +5 -0
- package/_internal/packages/lumx-core/src/js/types/JSXElement.d.ts +13 -0
- package/_internal/packages/lumx-core/src/js/types/KebabCase.d.ts +5 -0
- package/_internal/packages/lumx-core/src/js/types/LumxClassName.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/types/Selector.d.ts +11 -0
- package/_internal/packages/lumx-core/src/js/types/TextElement.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/types/ValueOf.d.ts +5 -0
- package/_internal/packages/lumx-core/src/js/types/index.d.ts +18 -0
- package/_internal/packages/lumx-core/src/js/utils/ClickAway/index.js +37 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/index.d.ts +9 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/index.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/setupInfiniteScrollObserver.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/Portal/index.d.ts +28 -0
- package/_internal/packages/lumx-core/src/js/utils/_internal/color/resolveColorWithVariants.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/createSelectorTreeWalker.js +20 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/combineSize.js +14 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/resolveCssSize.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/css/types.d.ts +7 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isFocusVisible.js +11 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isHoverNotSupported.js +5 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/isPrintableKey.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/lastDescendant.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/querySelectorInclusive.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/browser/trackContainerFocus.js +28 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/action-area/index.js +22 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/block.js +18 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/element.js +7 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/index.js +22 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/bem/modifier.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/color/index.js +38 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/index.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/spacing/index.js +31 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/typography/index.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/classNames/visually-hidden/index.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/disabledState/index.js +13 -0
- package/_internal/packages/lumx-core/src/js/utils/events/keyboard.js +15 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/constants.js +13 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/getFirstAndLastFocusable.js +20 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/getFocusableElements.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/focus/setupFocusTrap.js +83 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createActiveItemState.js +38 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createGridFocusNavigation.js +182 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createListFocusNavigation.js +151 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/createPendingNavigation.js +23 -0
- package/_internal/packages/lumx-core/src/js/utils/focusNavigation/setupRovingTabIndex.js +167 -0
- package/_internal/packages/lumx-core/src/js/utils/function/listenerTower.js +25 -0
- package/_internal/packages/lumx-core/src/js/utils/iterable/first.js +8 -0
- package/_internal/packages/lumx-core/src/js/utils/locale/getCurrentLocale.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/select/findOptionById.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/select/getOptionDisplayName.js +19 -0
- package/_internal/packages/lumx-core/src/js/utils/select/renderSelectOptions.js +51 -0
- package/_internal/packages/lumx-core/src/js/utils/select/toggleSelection.js +39 -0
- package/_internal/packages/lumx-core/src/js/utils/select/types.d.ts +203 -0
- package/_internal/packages/lumx-core/src/js/utils/selectors/getWithSelector.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/selectors/groupBySelector.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/time/buildTimeList.d.ts +20 -0
- package/_internal/packages/lumx-core/src/js/utils/time/buildTimeList.js +36 -0
- package/_internal/packages/lumx-core/src/js/utils/time/formatTime.js +14 -0
- package/_internal/packages/lumx-core/src/js/utils/time/getDateAtTime.js +12 -0
- package/_internal/packages/lumx-core/src/js/utils/time/isDateOnTime.js +10 -0
- package/_internal/packages/lumx-core/src/js/utils/time/parseTimeInput.js +46 -0
- package/_internal/packages/lumx-core/src/js/utils/time/snapTimeToBounds.js +21 -0
- package/_internal/packages/lumx-core/src/js/utils/time/timeOfDayMinutes.js +9 -0
- package/_internal/packages/lumx-core/src/js/utils/typeahead/index.js +77 -0
- package/_internal/utils/A11YLiveMessage/index.d.ts +50 -0
- package/_internal/utils/A11YLiveMessage/index.js +28 -0
- package/_internal/utils/ClickAwayProvider/ClickAwayProvider.d.ts +23 -0
- package/_internal/utils/ClickAwayProvider/ClickAwayProvider.js +46 -0
- package/_internal/utils/ClickAwayProvider/index.d.ts +1 -0
- package/_internal/utils/InfiniteScroll/InfiniteScroll.d.ts +10 -0
- package/_internal/utils/InfiniteScroll/InfiniteScroll.js +18 -0
- package/_internal/utils/InfiniteScroll/index.d.ts +2 -0
- package/_internal/utils/Portal/Portal.d.ts +15 -0
- package/_internal/utils/Portal/Portal.js +23 -0
- package/_internal/utils/Portal/PortalProvider.d.ts +14 -0
- package/_internal/utils/Portal/PortalProvider.js +9 -0
- package/_internal/utils/Portal/index.d.ts +3 -0
- package/_internal/utils/browser/DOM/findImage.js +5 -0
- package/_internal/utils/browser/DOM/startViewTransition.js +47 -0
- package/_internal/utils/browser/isReducedMotion.js +8 -0
- package/_internal/utils/browser/isScrollSnapSupported.js +8 -0
- package/_internal/utils/browser/onScrollEnd.js +25 -0
- package/_internal/utils/date/addMonthResetDay.js +12 -0
- package/_internal/utils/date/formatDayNumber.js +8 -0
- package/_internal/utils/date/getFirstDayOfWeek.js +42 -0
- package/_internal/utils/date/getMonthCalendar.js +43 -0
- package/_internal/utils/date/getWeekDays.js +25 -0
- package/_internal/utils/date/getYearDisplayName.js +12 -0
- package/_internal/utils/date/isDateValid.js +7 -0
- package/_internal/utils/date/isSameDay.js +8 -0
- package/_internal/utils/disabled/DisabledStateContext.d.ts +21 -0
- package/_internal/utils/disabled/DisabledStateContext.js +22 -0
- package/_internal/utils/disabled/index.d.ts +1 -0
- package/_internal/utils/disabled/useDisableStateProps.d.ts +1 -0
- package/_internal/utils/disabled/useDisableStateProps.js +29 -0
- package/_internal/utils/locale/parseLocale.js +26 -0
- package/_internal/utils/moving-focus/components/MovingFocusProvider/context.d.ts +14 -0
- package/_internal/utils/moving-focus/components/MovingFocusProvider/context.js +10 -0
- package/_internal/utils/moving-focus/components/MovingFocusProvider/index.d.ts +21 -0
- package/_internal/utils/moving-focus/components/MovingFocusProvider/index.js +58 -0
- package/_internal/utils/moving-focus/constants.d.ts +19 -0
- package/_internal/utils/moving-focus/constants.js +25 -0
- package/_internal/utils/moving-focus/ducks/keyboard-navigation.js +453 -0
- package/_internal/utils/moving-focus/ducks/slice.js +50 -0
- package/_internal/utils/moving-focus/ducks/tab-stop.js +109 -0
- package/_internal/utils/moving-focus/hooks/useRovingTabIndex/index.d.ts +1 -0
- package/_internal/utils/moving-focus/hooks/useRovingTabIndex/useRovingTabIndex.d.ts +19 -0
- package/_internal/utils/moving-focus/hooks/useRovingTabIndex/useRovingTabIndex.js +81 -0
- package/_internal/utils/moving-focus/hooks/useVirtualFocus/index.d.ts +2 -0
- package/_internal/utils/moving-focus/hooks/useVirtualFocus/useVirtualFocus.d.ts +15 -0
- package/_internal/utils/moving-focus/hooks/useVirtualFocus/useVirtualFocus.js +83 -0
- package/_internal/utils/moving-focus/hooks/useVirtualFocus/useVirtualFocusParent.d.ts +10 -0
- package/_internal/utils/moving-focus/hooks/useVirtualFocus/useVirtualFocusParent.js +47 -0
- package/_internal/utils/moving-focus/index.d.ts +5 -0
- package/_internal/utils/moving-focus/types.d.ts +177 -0
- package/_internal/utils/moving-focus/utils/buildLoopAroundObject.js +22 -0
- package/_internal/utils/moving-focus/utils/createGridMap.js +17 -0
- package/_internal/utils/moving-focus/utils/getCell.js +94 -0
- package/_internal/utils/moving-focus/utils/getCellCoordinates.js +16 -0
- package/_internal/utils/moving-focus/utils/getPointerTypeFromEvent.js +11 -0
- package/_internal/utils/moving-focus/utils/shouldLoopListHorizontally.js +7 -0
- package/_internal/utils/moving-focus/utils/shouldLoopListVertically.js +7 -0
- package/_internal/utils/moving-focus/utils/tabStopIsEnabled.js +5 -0
- package/_internal/utils/number/clamp.d.ts +12 -0
- package/_internal/utils/number/clamp.js +16 -0
- package/_internal/utils/object/isEqual.js +14 -0
- package/_internal/utils/partitionMulti.js +24 -0
- package/_internal/utils/react/OnBeforeUnmount.js +17 -0
- package/_internal/utils/react/forwardRef.js +8 -0
- package/_internal/utils/react/forwardRefPolymorphic.js +6 -0
- package/_internal/utils/react/mergeRefs.js +22 -0
- package/_internal/utils/react/skipRender.js +19 -0
- package/_internal/utils/react/unref.js +8 -0
- package/_internal/utils/react/wrapChildrenIconWithSpaces.js +19 -0
- package/_internal/utils/theme/ThemeContext.d.ts +14 -0
- package/_internal/utils/theme/ThemeContext.js +11 -0
- package/_internal/utils/type/Comp.d.ts +15 -0
- package/_internal/utils/type/ComponentRef.d.ts +15 -0
- package/_internal/utils/type/HasPolymorphicAs.d.ts +9 -0
- package/_internal/utils/type/MaybeElementOrRef.d.ts +9 -0
- package/_internal/utils/type/ReactToJSX.d.ts +13 -0
- package/_internal/utils/type/index.d.ts +15 -0
- package/_internal/utils/type/isComponent.d.ts +13 -0
- package/_internal/utils/type/isComponent.js +27 -0
- package/_internal/utils/type/isComponentType.d.ts +9 -0
- package/_internal/utils/type/isComponentType.js +8 -0
- package/index.d.ts +150 -5788
- package/index.js +247 -22493
- package/package.json +8 -21
- package/utils/index.d.ts +14 -413
- package/utils/index.js +12 -1440
- package/_internal/BvaFEHZn.js +0 -262
- package/_internal/BvaFEHZn.js.map +0 -1
- package/index.js.map +0 -1
- package/utils/index.js.map +0 -1
package/_internal/packages/lumx-core/src/js/utils/InfiniteScroll/setupInfiniteScrollObserver.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/InfiniteScroll/setupInfiniteScrollObserver.ts
|
|
2
|
+
/**
|
|
3
|
+
* Sets up an IntersectionObserver on the given element.
|
|
4
|
+
* Calls `callback` when at least one observed entry is intersecting.
|
|
5
|
+
* Returns a cleanup function that unobserves the element.
|
|
6
|
+
*/
|
|
7
|
+
function setupInfiniteScrollObserver(element, callback, options) {
|
|
8
|
+
const observer = new IntersectionObserver((entries = []) => {
|
|
9
|
+
if (!entries.some((entry) => entry.isIntersecting)) return;
|
|
10
|
+
callback();
|
|
11
|
+
}, options);
|
|
12
|
+
observer.observe(element);
|
|
13
|
+
return () => {
|
|
14
|
+
observer.unobserve(element);
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
export { setupInfiniteScrollObserver };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/Portal/index.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Shared types for Portal and PortalProvider.
|
|
4
|
+
*
|
|
5
|
+
* Portal renders children in a subtree outside the current DOM hierarchy.
|
|
6
|
+
* PortalProvider customizes where Portal children render.
|
|
7
|
+
*
|
|
8
|
+
* Unlike other core components, Portal has no shared render function
|
|
9
|
+
* since the implementation is entirely framework-specific
|
|
10
|
+
* (React's createPortal vs Vue's Teleport).
|
|
11
|
+
*/
|
|
12
|
+
type Container = DocumentFragment | Element | string;
|
|
13
|
+
/**
|
|
14
|
+
* Portal initializing function.
|
|
15
|
+
* If it does not provide a container, the Portal children will render in the standard component tree and not in a portal.
|
|
16
|
+
*/
|
|
17
|
+
type PortalInit = () => {
|
|
18
|
+
container?: Container;
|
|
19
|
+
teardown?: () => void;
|
|
20
|
+
};
|
|
21
|
+
interface PortalProps {
|
|
22
|
+
enabled?: boolean;
|
|
23
|
+
}
|
|
24
|
+
interface PortalProviderProps {
|
|
25
|
+
value: PortalInit;
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { PortalInit, PortalProps, PortalProviderProps };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/_internal/color/resolveColorWithVariants.ts
|
|
2
|
+
/** Resolve color & color variant from a `ColorWithVariants` and optionally a `ColorVariant`. */
|
|
3
|
+
function resolveColorWithVariants(colorWithVariants, colorVariant) {
|
|
4
|
+
if (!colorWithVariants) return [void 0, colorVariant];
|
|
5
|
+
const [color, baseColorVariant] = colorWithVariants.split("-");
|
|
6
|
+
return [color, colorVariant || baseColorVariant];
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { resolveColorWithVariants };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/createSelectorTreeWalker.ts
|
|
2
|
+
/**
|
|
3
|
+
* Create a TreeWalker that iterates over elements matching a CSS selector
|
|
4
|
+
* within a container.
|
|
5
|
+
*
|
|
6
|
+
* Uses `NodeFilter.SHOW_ELEMENT` and accepts nodes that match the given
|
|
7
|
+
* selector, skipping everything else. The returned walker can be used with
|
|
8
|
+
* `nextNode()` / `previousNode()` for lazy, sequential DOM traversal.
|
|
9
|
+
*
|
|
10
|
+
* @param container The root element to walk within.
|
|
11
|
+
* @param selector CSS selector that items must match.
|
|
12
|
+
* @returns A TreeWalker scoped to the container and filtered by the selector.
|
|
13
|
+
*/
|
|
14
|
+
function createSelectorTreeWalker(container, selector) {
|
|
15
|
+
return document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, { acceptNode(node) {
|
|
16
|
+
return node.matches(selector) ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;
|
|
17
|
+
} });
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { createSelectorTreeWalker };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/css/combineSize.ts
|
|
2
|
+
/** Create a CSS min()/max() combiner function. */
|
|
3
|
+
function combineSize(combinator) {
|
|
4
|
+
return (size1, size2) => {
|
|
5
|
+
if (size1 && size2) return `${combinator}(${size1}, ${size2})`;
|
|
6
|
+
return size1 || size2 || "";
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
/** Combine two CSS values with `min()`. */
|
|
10
|
+
var cssMin = combineSize("min");
|
|
11
|
+
/** Combine two CSS values with `max()`. */
|
|
12
|
+
var cssMax = combineSize("max");
|
|
13
|
+
//#endregion
|
|
14
|
+
export { cssMax, cssMin };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Size } from "../../../constants/enums/index.js";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/browser/css/resolveCssSize.ts
|
|
3
|
+
function resolveCssSize(value) {
|
|
4
|
+
if (value && value in Size) return `var(--lumx-size-${value})`;
|
|
5
|
+
return value;
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { resolveCssSize };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/isFocusVisible.ts
|
|
2
|
+
/** Check if the focus is visible on the given element */
|
|
3
|
+
var isFocusVisible = (element) => {
|
|
4
|
+
try {
|
|
5
|
+
return element?.matches?.(":focus-visible, [data-focus-visible-added]");
|
|
6
|
+
} catch (_ignored) {
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
};
|
|
10
|
+
//#endregion
|
|
11
|
+
export { isFocusVisible };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/isPrintableKey.ts
|
|
2
|
+
/**
|
|
3
|
+
* Is the key a single printable character (not Space, no modifier keys)?
|
|
4
|
+
*
|
|
5
|
+
* Used by typeahead-style keyboard handlers (menu, combobox) to detect when a
|
|
6
|
+
* keypress should start/continue a type-to-search rather than trigger navigation.
|
|
7
|
+
*/
|
|
8
|
+
function isPrintableKey({ key, altKey, ctrlKey, metaKey }) {
|
|
9
|
+
return key.length === 1 && key !== " " && !altKey && !ctrlKey && !metaKey;
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { isPrintableKey };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/lastDescendant.ts
|
|
2
|
+
/** Deepest last-child descendant of `el` (or `el` itself if it has no children). */
|
|
3
|
+
function lastDescendant(element) {
|
|
4
|
+
let node = element;
|
|
5
|
+
while (node.lastElementChild) node = node.lastElementChild;
|
|
6
|
+
return node;
|
|
7
|
+
}
|
|
8
|
+
//#endregion
|
|
9
|
+
export { lastDescendant };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/querySelectorInclusive.ts
|
|
2
|
+
/**
|
|
3
|
+
* Like `querySelectorAll`, but also tests the root node itself.
|
|
4
|
+
*
|
|
5
|
+
* Yields the root element first (if it matches), then all matching descendants
|
|
6
|
+
* in document order. Being a generator, callers that only need the first match
|
|
7
|
+
* can break early without collecting the full list.
|
|
8
|
+
*
|
|
9
|
+
* @param node The starting DOM node.
|
|
10
|
+
* @param selector CSS selector to match against.
|
|
11
|
+
*/
|
|
12
|
+
function* querySelectorInclusive(node, selector) {
|
|
13
|
+
if (!(node instanceof HTMLElement)) return;
|
|
14
|
+
if (node.matches(selector)) yield node;
|
|
15
|
+
yield* node.querySelectorAll(selector);
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
export { querySelectorInclusive };
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/browser/trackContainerFocus.ts
|
|
2
|
+
/**
|
|
3
|
+
* Track whether the container currently has focus.
|
|
4
|
+
*
|
|
5
|
+
* We can't rely on `document.activeElement` inside MutationObserver callbacks because
|
|
6
|
+
* the browser moves focus to `<body>` before they fire. focusout with `relatedTarget === null`
|
|
7
|
+
* (element removed from DOM) keeps the flag true so the observer can move focus to a fallback.
|
|
8
|
+
*/
|
|
9
|
+
function trackContainerFocus(container, signal) {
|
|
10
|
+
let hasFocus = container.contains(document.activeElement);
|
|
11
|
+
container.addEventListener("focusin", () => {
|
|
12
|
+
hasFocus = true;
|
|
13
|
+
}, { signal });
|
|
14
|
+
container.addEventListener("focusout", (evt) => {
|
|
15
|
+
const newTarget = evt.relatedTarget;
|
|
16
|
+
if (newTarget && !container.contains(newTarget)) hasFocus = false;
|
|
17
|
+
}, { signal });
|
|
18
|
+
return {
|
|
19
|
+
get hasFocus() {
|
|
20
|
+
return hasFocus;
|
|
21
|
+
},
|
|
22
|
+
reset() {
|
|
23
|
+
hasFocus = false;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//#endregion
|
|
28
|
+
export { trackContainerFocus };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { block } from "../bem/block.js";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/classNames/action-area/index.ts
|
|
3
|
+
var PREFIX = "lumx-action-area";
|
|
4
|
+
var ACTION_ELEMENT = `${PREFIX}__action`;
|
|
5
|
+
/**
|
|
6
|
+
* Action area CSS utility.
|
|
7
|
+
*
|
|
8
|
+
* Apply `actionArea()` to the container element to make it a positioning context
|
|
9
|
+
* for the action's expanded click area.
|
|
10
|
+
*
|
|
11
|
+
* Apply `actionArea.action()` to the primary interactive element (link or button)
|
|
12
|
+
* whose click area should expand to fill the entire container.
|
|
13
|
+
*/
|
|
14
|
+
var actionArea = Object.assign(
|
|
15
|
+
/** Action area container class. Sets `position: relative`. */
|
|
16
|
+
() => PREFIX,
|
|
17
|
+
{
|
|
18
|
+
/** Action element class. Adds a `::before` pseudo-element with `position: absolute; inset: 0` to expand the click area. */
|
|
19
|
+
action: (modifiers) => block(ACTION_ELEMENT, modifiers) }
|
|
20
|
+
);
|
|
21
|
+
//#endregion
|
|
22
|
+
export { actionArea };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { __toESM } from "../../../../../../../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { require_classnames } from "../../../../../../../node_modules/classnames/index.js";
|
|
3
|
+
import { modifier } from "./modifier.js";
|
|
4
|
+
//#region ../lumx-core/src/js/utils/classNames/bem/block.ts
|
|
5
|
+
var import_classnames = /* @__PURE__ */ __toESM(require_classnames(), 1);
|
|
6
|
+
function block(baseName, modifiersOrAdditionalClasses, additionalClasses) {
|
|
7
|
+
let modifiers;
|
|
8
|
+
let classes;
|
|
9
|
+
if (typeof modifiersOrAdditionalClasses === "string" || Array.isArray(modifiersOrAdditionalClasses)) classes = modifiersOrAdditionalClasses;
|
|
10
|
+
else {
|
|
11
|
+
modifiers = modifiersOrAdditionalClasses;
|
|
12
|
+
classes = additionalClasses;
|
|
13
|
+
}
|
|
14
|
+
if (!modifiers && !classes) return baseName;
|
|
15
|
+
return (0, import_classnames.default)(classes, baseName, modifiers ? modifier(baseName, modifiers) : null);
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
export { block };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { block } from "./block.js";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/classNames/bem/element.ts
|
|
3
|
+
function element(baseClass, elem, modifiersOrAdditionalClasses, additionalClasses) {
|
|
4
|
+
return block(`${baseClass}__${elem}`, modifiersOrAdditionalClasses, additionalClasses);
|
|
5
|
+
}
|
|
6
|
+
//#endregion
|
|
7
|
+
export { element };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { modifier } from "./modifier.js";
|
|
2
|
+
import { block } from "./block.js";
|
|
3
|
+
import { element } from "./element.js";
|
|
4
|
+
//#region ../lumx-core/src/js/utils/classNames/bem/index.ts
|
|
5
|
+
/**
|
|
6
|
+
* Setup BEM block & element generation for a given base name.
|
|
7
|
+
*/
|
|
8
|
+
function bem(baseName) {
|
|
9
|
+
function blockFn(modifiersOrAdditionalClasses, additionalClasses) {
|
|
10
|
+
return block(baseName, modifiersOrAdditionalClasses, additionalClasses);
|
|
11
|
+
}
|
|
12
|
+
function elementFn(elem, modifiersOrAdditionalClasses, additionalClasses) {
|
|
13
|
+
return element(baseName, elem, modifiersOrAdditionalClasses, additionalClasses);
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
block: blockFn,
|
|
17
|
+
element: elementFn,
|
|
18
|
+
modifier: (modifiers) => modifier(baseName, modifiers)
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
export { bem };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/classNames/bem/modifier.ts
|
|
2
|
+
/**
|
|
3
|
+
* Generates BEM modifier class names.
|
|
4
|
+
*
|
|
5
|
+
* @param baseName The base BEM class to attach modifiers to.
|
|
6
|
+
* @param modifiers Map of modifier names to boolean values.
|
|
7
|
+
* @returns Combined modifier class names string.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* modifier('button', { active: true }); // 'button--active'
|
|
11
|
+
* modifier('button', { active: true, disabled: false }); // 'button--active'
|
|
12
|
+
*/
|
|
13
|
+
function modifier(baseName, modifiers) {
|
|
14
|
+
const modifierClasses = [];
|
|
15
|
+
for (const [key, value] of Object.entries(modifiers)) if (value) modifierClasses.push(`${baseName}--${key}`);
|
|
16
|
+
return modifierClasses.join(" ");
|
|
17
|
+
}
|
|
18
|
+
//#endregion
|
|
19
|
+
export { modifier };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { resolveColorWithVariants } from "../../_internal/color/resolveColorWithVariants.js";
|
|
2
|
+
import { ColorVariant } from "@lumx/core/js/constants";
|
|
3
|
+
//#region ../lumx-core/src/js/utils/classNames/color/index.ts
|
|
4
|
+
/**
|
|
5
|
+
* Generates a Lumx color class name for the given type, color and variant.
|
|
6
|
+
* This is the base function used by font() and background() utilities.
|
|
7
|
+
*
|
|
8
|
+
* @param type - The color class type ('font' or 'background')
|
|
9
|
+
* @param propColor - The color palette name (e.g., 'primary', 'dark') with optional variant suffix (e.g., 'primary-L2')
|
|
10
|
+
* @param propColorVariant - Optional color variant override (e.g., 'L1', 'L2', 'D1', 'N')
|
|
11
|
+
* @returns The Lumx color class name or undefined if no color is provided
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* color('font', 'dark', 'L2'); // 'lumx-color-font-dark-L2'
|
|
15
|
+
* color('background', 'primary'); // 'lumx-color-background-primary-N'
|
|
16
|
+
* color('font', 'primary-L2'); // 'lumx-color-font-primary-L2'
|
|
17
|
+
* color('font', undefined); // undefined
|
|
18
|
+
*/
|
|
19
|
+
function color(type, propColor, propColorVariant) {
|
|
20
|
+
const [cColor, cColorVariant = ColorVariant.N] = resolveColorWithVariants(propColor, propColorVariant);
|
|
21
|
+
return `lumx-color-${type}-${cColor}-${cColorVariant}`;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Generates a Lumx font color class name for the given color and variant.
|
|
25
|
+
*
|
|
26
|
+
* @param propColor - The color palette name (e.g., 'primary', 'dark') with optional variant suffix (e.g., 'primary-L2')
|
|
27
|
+
* @param propColorVariant - Optional color variant override (e.g., 'L1', 'L2', 'D1', 'N')
|
|
28
|
+
* @returns The Lumx font color class name or undefined if no color is provided
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* font('dark', 'L2'); // 'lumx-color-font-dark-L2'
|
|
32
|
+
* font('primary-L2'); // 'lumx-color-font-primary-L2'
|
|
33
|
+
* font('primary'); // 'lumx-color-font-primary-N'
|
|
34
|
+
* font(undefined); // undefined
|
|
35
|
+
*/
|
|
36
|
+
var font = (propColor, propColorVariant) => color("font", propColor, propColorVariant);
|
|
37
|
+
//#endregion
|
|
38
|
+
export { color, font };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { __toESM } from "../../../../../../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { require_classnames } from "../../../../../../node_modules/classnames/index.js";
|
|
3
|
+
import "./action-area/index.js";
|
|
4
|
+
import "./color/index.js";
|
|
5
|
+
import "./typography/index.js";
|
|
6
|
+
import "./spacing/index.js";
|
|
7
|
+
import "./visually-hidden/index.js";
|
|
8
|
+
import "./bem/index.js";
|
|
9
|
+
//#region ../lumx-core/src/js/utils/classNames/index.ts
|
|
10
|
+
var import_classnames = /* @__PURE__ */ __toESM(require_classnames(), 1);
|
|
11
|
+
//#endregion
|
|
12
|
+
export { import_classnames };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import "../../../../../../../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { require_classnames } from "../../../../../../../node_modules/classnames/index.js";
|
|
3
|
+
import { Size } from "@lumx/core/js/constants";
|
|
4
|
+
require_classnames();
|
|
5
|
+
/** Set of valid AbstractSize values for runtime detection. */
|
|
6
|
+
var ABSTRACT_SIZES = new Set([
|
|
7
|
+
Size.tiny,
|
|
8
|
+
Size.regular,
|
|
9
|
+
Size.medium,
|
|
10
|
+
Size.big,
|
|
11
|
+
Size.huge
|
|
12
|
+
]);
|
|
13
|
+
function isAbstractSize(value) {
|
|
14
|
+
return typeof value === "string" && ABSTRACT_SIZES.has(value);
|
|
15
|
+
}
|
|
16
|
+
function spacing(type, directionOrSize, size) {
|
|
17
|
+
const isShorthand = isAbstractSize(directionOrSize) || directionOrSize === null && size === void 0;
|
|
18
|
+
const direction = isShorthand ? void 0 : directionOrSize ?? void 0;
|
|
19
|
+
const resolvedSize = isShorthand ? directionOrSize : size;
|
|
20
|
+
let baseClass = `lumx-spacing-${type}`;
|
|
21
|
+
if (direction && direction !== "all") baseClass = `${baseClass}-${direction}`;
|
|
22
|
+
if (resolvedSize) baseClass = `${baseClass}-${resolvedSize}`;
|
|
23
|
+
else if (resolvedSize === null) baseClass = `${baseClass}-none`;
|
|
24
|
+
return baseClass;
|
|
25
|
+
}
|
|
26
|
+
function padding(directionOrSize, size) {
|
|
27
|
+
if (isAbstractSize(directionOrSize) || directionOrSize === null && size === void 0) return spacing("padding", directionOrSize);
|
|
28
|
+
return spacing("padding", directionOrSize ?? void 0, size);
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { padding, spacing };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/classNames/typography/index.ts
|
|
2
|
+
/**
|
|
3
|
+
* Returns the classname associated to the given typography. For example, for Typography.title it returns
|
|
4
|
+
* lumx-typography-title
|
|
5
|
+
*/
|
|
6
|
+
function typography(typo) {
|
|
7
|
+
return `lumx-typography-${typo}`;
|
|
8
|
+
}
|
|
9
|
+
//#endregion
|
|
10
|
+
export { typography };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { VISUALLY_HIDDEN } from "@lumx/core/js/constants";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/classNames/visually-hidden/index.ts
|
|
3
|
+
/**
|
|
4
|
+
* Visually hidden class name.
|
|
5
|
+
* Used to hide elements from view but keep them readable from screen readers
|
|
6
|
+
*/
|
|
7
|
+
var visuallyHidden = () => VISUALLY_HIDDEN;
|
|
8
|
+
//#endregion
|
|
9
|
+
export { visuallyHidden };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/disabledState/index.ts
|
|
2
|
+
/**
|
|
3
|
+
* Calculate the disabled state based on context and props.
|
|
4
|
+
*/
|
|
5
|
+
function getDisabledState(context, props) {
|
|
6
|
+
const { disabled, isDisabled = disabled, "aria-disabled": ariaDisabled } = props;
|
|
7
|
+
return {
|
|
8
|
+
disabled: context?.state === "disabled" || !!isDisabled,
|
|
9
|
+
"aria-disabled": ariaDisabled === true || ariaDisabled === "true"
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//#endregion
|
|
13
|
+
export { getDisabledState };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/events/keyboard.ts
|
|
2
|
+
/**
|
|
3
|
+
* Make sure the pressed key is the enter key before calling the callback.
|
|
4
|
+
*
|
|
5
|
+
* @param handler The handler to call on enter/return press.
|
|
6
|
+
* @return The decorated function.
|
|
7
|
+
*/
|
|
8
|
+
function onEnterPressed(handler) {
|
|
9
|
+
return (evt) => {
|
|
10
|
+
if (evt.key !== "Enter") return;
|
|
11
|
+
handler(evt);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { onEnterPressed };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/focus/constants.ts
|
|
2
|
+
/** CSS selector listing all tabbable elements. */
|
|
3
|
+
var TABBABLE_ELEMENTS_SELECTOR = "a[href], button, textarea, input:not([type=\"hidden\"]):not([hidden]), [tabindex]";
|
|
4
|
+
/**
|
|
5
|
+
* CSS selector matching elements that should be excluded from focus traversal.
|
|
6
|
+
*
|
|
7
|
+
* Note: `aria-disabled` is intentionally NOT in this list — per ARIA semantics, an `aria-disabled` element
|
|
8
|
+
* remains focusable (and discoverable by assistive tech). To remove an element from the tab order, use
|
|
9
|
+
* `tabindex="-1"` instead.
|
|
10
|
+
*/
|
|
11
|
+
var DISABLED_SELECTOR = "[hidden], [tabindex=\"-1\"], [disabled]:not([disabled=\"false\"])";
|
|
12
|
+
//#endregion
|
|
13
|
+
export { DISABLED_SELECTOR, TABBABLE_ELEMENTS_SELECTOR };
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { getFocusableElements } from "./getFocusableElements.js";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/focus/getFirstAndLastFocusable.ts
|
|
3
|
+
/**
|
|
4
|
+
* Get first and last elements focusable in an element.
|
|
5
|
+
*
|
|
6
|
+
* @param parentElement The element in which to search focusable elements.
|
|
7
|
+
* @return first and last focusable elements
|
|
8
|
+
*/
|
|
9
|
+
function getFirstAndLastFocusable(parentElement) {
|
|
10
|
+
const focusableElements = getFocusableElements(parentElement);
|
|
11
|
+
const first = focusableElements[0];
|
|
12
|
+
const last = focusableElements[focusableElements.length - 1];
|
|
13
|
+
if (last && first) return {
|
|
14
|
+
first,
|
|
15
|
+
last
|
|
16
|
+
};
|
|
17
|
+
return {};
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { getFirstAndLastFocusable };
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DISABLED_SELECTOR, TABBABLE_ELEMENTS_SELECTOR } from "./constants.js";
|
|
2
|
+
//#region ../lumx-core/src/js/utils/focus/getFocusableElements.ts
|
|
3
|
+
var isNotDisabled = (element) => !element.matches(DISABLED_SELECTOR);
|
|
4
|
+
function getFocusableElements(element) {
|
|
5
|
+
return Array.from(element.querySelectorAll(TABBABLE_ELEMENTS_SELECTOR)).filter(isNotDisabled);
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { getFocusableElements };
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { makeListenerTowerContext } from "../function/listenerTower.js";
|
|
2
|
+
import { getFirstAndLastFocusable } from "./getFirstAndLastFocusable.js";
|
|
3
|
+
//#region ../lumx-core/src/js/utils/focus/setupFocusTrap.ts
|
|
4
|
+
/**
|
|
5
|
+
* Shared listener tower for focus traps.
|
|
6
|
+
*
|
|
7
|
+
* When multiple traps are activated, only the last registered one is active. When it tears down, the previously
|
|
8
|
+
* registered trap is re-enabled.
|
|
9
|
+
*/
|
|
10
|
+
var FOCUS_TRAPS = makeListenerTowerContext();
|
|
11
|
+
/**
|
|
12
|
+
* Trap 'Tab' focus switch inside the `focusZoneElement`.
|
|
13
|
+
*
|
|
14
|
+
* Setup behavior:
|
|
15
|
+
* 1. Focus `focusElement` if provided and contained in the zone.
|
|
16
|
+
* 2. Otherwise focus the first focusable descendant.
|
|
17
|
+
* 3. Otherwise focus the zone element itself (falling back to setting `tabindex="-1"` if needed) so that
|
|
18
|
+
* keyboard users (especially screen reader users) land inside the trapped region (e.g. an empty dialog).
|
|
19
|
+
*
|
|
20
|
+
* Tab key behavior:
|
|
21
|
+
* - With at least one focusable descendant: focus cycles between the first and last focusable in the zone.
|
|
22
|
+
* - With no focusable descendant: Tab is swallowed and focus is restored to the zone element itself.
|
|
23
|
+
*
|
|
24
|
+
* Multiple traps stack — only the latest one is active; previous traps re-enable when the latest is torn down.
|
|
25
|
+
*
|
|
26
|
+
* @param options Trap configuration.
|
|
27
|
+
* @param signal AbortSignal used to tear down the trap.
|
|
28
|
+
*/
|
|
29
|
+
function setupFocusTrap(options, signal) {
|
|
30
|
+
const { focusZoneElement, focusElement } = options;
|
|
31
|
+
if (!focusZoneElement || signal.aborted) return;
|
|
32
|
+
const rootNode = focusZoneElement.getRootNode();
|
|
33
|
+
let addedTabIndex = false;
|
|
34
|
+
/** Make the zone element programmatically focusable (so we can fall back to it). */
|
|
35
|
+
const ensureZoneIsFocusable = () => {
|
|
36
|
+
if (!focusZoneElement.hasAttribute("tabindex")) {
|
|
37
|
+
focusZoneElement.setAttribute("tabindex", "-1");
|
|
38
|
+
addedTabIndex = true;
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
/** Focus the zone element itself as a last-resort fallback. */
|
|
42
|
+
const focusZoneFallback = () => {
|
|
43
|
+
ensureZoneIsFocusable();
|
|
44
|
+
focusZoneElement.focus({ preventScroll: true });
|
|
45
|
+
};
|
|
46
|
+
const trapTabFocusInFocusZone = (evt) => {
|
|
47
|
+
if (evt.key !== "Tab") return;
|
|
48
|
+
const focusable = getFirstAndLastFocusable(focusZoneElement);
|
|
49
|
+
if (!focusable.first) {
|
|
50
|
+
evt.preventDefault();
|
|
51
|
+
focusZoneFallback();
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const { activeElement } = rootNode;
|
|
55
|
+
if (!activeElement || !evt.shiftKey && activeElement === focusable.last || !focusZoneElement.contains(activeElement)) {
|
|
56
|
+
focusable.first.focus();
|
|
57
|
+
evt.preventDefault();
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (evt.shiftKey && activeElement === focusable.first) {
|
|
61
|
+
focusable.last.focus();
|
|
62
|
+
evt.preventDefault();
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
const keydownHandler = trapTabFocusInFocusZone;
|
|
66
|
+
const focusTrap = {
|
|
67
|
+
enable: () => rootNode.addEventListener("keydown", keydownHandler),
|
|
68
|
+
disable: () => rootNode.removeEventListener("keydown", keydownHandler)
|
|
69
|
+
};
|
|
70
|
+
if (focusElement && focusZoneElement.contains(focusElement)) focusElement.focus({ preventScroll: true });
|
|
71
|
+
else {
|
|
72
|
+
const firstFocusable = getFirstAndLastFocusable(focusZoneElement).first;
|
|
73
|
+
if (firstFocusable) firstFocusable.focus({ preventScroll: true });
|
|
74
|
+
else focusZoneFallback();
|
|
75
|
+
}
|
|
76
|
+
FOCUS_TRAPS.register(focusTrap);
|
|
77
|
+
signal.addEventListener("abort", () => {
|
|
78
|
+
FOCUS_TRAPS.unregister(focusTrap);
|
|
79
|
+
if (addedTabIndex) focusZoneElement.removeAttribute("tabindex");
|
|
80
|
+
}, { once: true });
|
|
81
|
+
}
|
|
82
|
+
//#endregion
|
|
83
|
+
export { setupFocusTrap };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
//#region ../lumx-core/src/js/utils/focusNavigation/createActiveItemState.ts
|
|
2
|
+
/**
|
|
3
|
+
* Create shared active item state with cleanup on abort.
|
|
4
|
+
*
|
|
5
|
+
* Callback invocation:
|
|
6
|
+
* - `setActive(item)`: calls `onDeactivate(previous)` then `onActivate(item)`.
|
|
7
|
+
* - `clear()`: calls `onDeactivate(current)` then `onClear()`.
|
|
8
|
+
* - On `signal.abort()`: same as `clear()`.
|
|
9
|
+
*
|
|
10
|
+
* @param callbacks Focus state change callbacks.
|
|
11
|
+
* @param signal AbortSignal for cleanup.
|
|
12
|
+
* @param initialItem Optional item to silently pre-select on creation (no callbacks fired).
|
|
13
|
+
*/
|
|
14
|
+
function createActiveItemState(callbacks, signal, initialItem) {
|
|
15
|
+
let activeItem = initialItem ?? null;
|
|
16
|
+
function clear() {
|
|
17
|
+
if (activeItem) {
|
|
18
|
+
callbacks.onDeactivate(activeItem);
|
|
19
|
+
activeItem = null;
|
|
20
|
+
}
|
|
21
|
+
callbacks.onClear?.();
|
|
22
|
+
}
|
|
23
|
+
signal.addEventListener("abort", clear);
|
|
24
|
+
return {
|
|
25
|
+
get active() {
|
|
26
|
+
return activeItem;
|
|
27
|
+
},
|
|
28
|
+
setActive(item) {
|
|
29
|
+
if (activeItem === item) return;
|
|
30
|
+
if (activeItem) callbacks.onDeactivate(activeItem);
|
|
31
|
+
activeItem = item;
|
|
32
|
+
if (item) callbacks.onActivate(item);
|
|
33
|
+
},
|
|
34
|
+
clear
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//#endregion
|
|
38
|
+
export { createActiveItemState };
|