@muraldevkit/ui-toolkit 4.68.0-dev-NFbt.1 → 4.68.0-dev-nPeA.1
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/dist/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -250
- package/dist/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/dist/cjs/components/avatar/MrlAvatar/MrlAvatar.js +17 -11
- package/dist/cjs/components/avatar/MrlAvatar/MrlAvatar.js.map +1 -1
- package/dist/cjs/components/avatar/MrlAvatarButton/MrlAvatarButton.js +27 -25
- package/dist/cjs/components/avatar/MrlAvatarButton/MrlAvatarButton.js.map +1 -1
- package/dist/cjs/components/badge/MrlBadge/MrlBadge.js +11 -5
- package/dist/cjs/components/badge/MrlBadge/MrlBadge.js.map +1 -1
- package/dist/cjs/components/badge/MrlBadgeNotification/MrlBadgeNotification.js +12 -4
- package/dist/cjs/components/badge/MrlBadgeNotification/MrlBadgeNotification.js.map +1 -1
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.js +13 -6
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.js.map +1 -1
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbSeparator/MrlBreadcrumbSeparator.js +7 -3
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbSeparator/MrlBreadcrumbSeparator.js.map +1 -1
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.js +24 -28
- package/dist/cjs/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.js.map +1 -1
- package/dist/cjs/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.js +20 -20
- package/dist/cjs/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.js.map +1 -1
- package/dist/cjs/components/button/MrlButton/MrlButton.js +21 -21
- package/dist/cjs/components/button/MrlButton/MrlButton.js.map +1 -1
- package/dist/cjs/components/button/MrlIconButton/MrlIconButton.js +20 -22
- package/dist/cjs/components/button/MrlIconButton/MrlIconButton.js.map +1 -1
- package/dist/cjs/components/button/MrlProcessingButton/MrlProcessingButton.js +14 -10
- package/dist/cjs/components/button/MrlProcessingButton/MrlProcessingButton.js.map +1 -1
- package/dist/cjs/components/button/MrlProcessingButton/actions.js +11 -16
- package/dist/cjs/components/button/MrlProcessingButton/actions.js.map +1 -1
- package/dist/cjs/components/button/helpers.js +4 -6
- package/dist/cjs/components/button/helpers.js.map +1 -1
- package/dist/cjs/components/callout/MrlCallout/MrlCallout.js +8 -9
- package/dist/cjs/components/callout/MrlCallout/MrlCallout.js.map +1 -1
- package/dist/cjs/components/container/MrlContainer/MrlContainer.js +14 -7
- package/dist/cjs/components/container/MrlContainer/MrlContainer.js.map +1 -1
- package/dist/cjs/components/divider/MrlDivider/MrlDivider.js +18 -6
- package/dist/cjs/components/divider/MrlDivider/MrlDivider.js.map +1 -1
- package/dist/cjs/components/empty/default/MrlEmpty.js +8 -4
- package/dist/cjs/components/empty/default/MrlEmpty.js.map +1 -1
- package/dist/cjs/components/empty/large/MrlEmptyLarge.js +8 -4
- package/dist/cjs/components/empty/large/MrlEmptyLarge.js.map +1 -1
- package/dist/cjs/components/error-boundary/MrlErrorBoundary.js +30 -38
- package/dist/cjs/components/error-boundary/MrlErrorBoundary.js.map +1 -1
- package/dist/cjs/components/filter/MrlFilter/MrlFilter.js +7 -3
- package/dist/cjs/components/filter/MrlFilter/MrlFilter.js.map +1 -1
- package/dist/cjs/components/filter/MrlFilterContext/MrlFilterContext.js +8 -7
- package/dist/cjs/components/filter/MrlFilterContext/MrlFilterContext.js.map +1 -1
- package/dist/cjs/components/filter/MrlFilterItem/MrlFilterItem.js +9 -3
- package/dist/cjs/components/filter/MrlFilterItem/MrlFilterItem.js.map +1 -1
- package/dist/cjs/components/focus-trap/MrlFocusTrap/MrlFocusTrap.js +6 -5
- package/dist/cjs/components/focus-trap/MrlFocusTrap/MrlFocusTrap.js.map +1 -1
- package/dist/cjs/components/form/checkbox/MrlCheckbox/MrlCheckbox.js +13 -4
- package/dist/cjs/components/form/checkbox/MrlCheckbox/MrlCheckbox.js.map +1 -1
- package/dist/cjs/components/form/checkbox/MrlCheckboxStandalone/MrlCheckboxStandalone.js +11 -7
- package/dist/cjs/components/form/checkbox/MrlCheckboxStandalone/MrlCheckboxStandalone.js.map +1 -1
- package/dist/cjs/components/form/date-picker/MrlDatePicker.js +21 -14
- package/dist/cjs/components/form/date-picker/MrlDatePicker.js.map +1 -1
- package/dist/cjs/components/form/fieldset/MrlFieldset/MrlFieldset.js +8 -4
- package/dist/cjs/components/form/fieldset/MrlFieldset/MrlFieldset.js.map +1 -1
- package/dist/cjs/components/form/hooks/useActiveColor.js +2 -2
- package/dist/cjs/components/form/hooks/useActiveColor.js.map +1 -1
- package/dist/cjs/components/form/hooks/useIsEditable.js +3 -3
- package/dist/cjs/components/form/hooks/useIsEditable.js.map +1 -1
- package/dist/cjs/components/form/label/MrlLabel/MrlLabel.js +12 -5
- package/dist/cjs/components/form/label/MrlLabel/MrlLabel.js.map +1 -1
- package/dist/cjs/components/form/label/MrlLabelWithDescription/MrlLabelWithDescription.js +19 -5
- package/dist/cjs/components/form/label/MrlLabelWithDescription/MrlLabelWithDescription.js.map +1 -1
- package/dist/cjs/components/form/legacy-select/MrlLegacySelect/MrlLegacySelect.js +42 -31
- package/dist/cjs/components/form/legacy-select/MrlLegacySelect/MrlLegacySelect.js.map +1 -1
- package/dist/cjs/components/form/legacy-select/MrlLegacySelectItem/MrlLegacySelectItem.js +21 -12
- package/dist/cjs/components/form/legacy-select/MrlLegacySelectItem/MrlLegacySelectItem.js.map +1 -1
- package/dist/cjs/components/form/legacy-select/MrlLegacySelectMenu/MrlLegacySelectMenu.js +19 -11
- package/dist/cjs/components/form/legacy-select/MrlLegacySelectMenu/MrlLegacySelectMenu.js.map +1 -1
- package/dist/cjs/components/form/legacy-select/context/SelectContext.js +8 -7
- package/dist/cjs/components/form/legacy-select/context/SelectContext.js.map +1 -1
- package/dist/cjs/components/form/legacy-select/index.js +4 -3
- package/dist/cjs/components/form/legacy-select/index.js.map +1 -1
- package/dist/cjs/components/form/radio/MrlRadioButton/MrlRadioButton.js +7 -3
- package/dist/cjs/components/form/radio/MrlRadioButton/MrlRadioButton.js.map +1 -1
- package/dist/cjs/components/form/radio/MrlRadioButtonStandalone/MrlRadioButtonStandalone.js +11 -5
- package/dist/cjs/components/form/radio/MrlRadioButtonStandalone/MrlRadioButtonStandalone.js.map +1 -1
- package/dist/cjs/components/form/radio/MrlRadioGroup/MrlRadioGroup.js +3 -2
- package/dist/cjs/components/form/radio/MrlRadioGroup/MrlRadioGroup.js.map +1 -1
- package/dist/cjs/components/form/select/MrlCreatableSelect/MrlCreatableSelect.js +10 -8
- package/dist/cjs/components/form/select/MrlCreatableSelect/MrlCreatableSelect.js.map +1 -1
- package/dist/cjs/components/form/select/MrlMultiCreatableSelect/MrlMultiCreatableSelect.js +10 -8
- package/dist/cjs/components/form/select/MrlMultiCreatableSelect/MrlMultiCreatableSelect.js.map +1 -1
- package/dist/cjs/components/form/select/MrlMultiSelect/MrlMultiSelect.js +9 -5
- package/dist/cjs/components/form/select/MrlMultiSelect/MrlMultiSelect.js.map +1 -1
- package/dist/cjs/components/form/select/MrlSelect/MrlSelect.js +9 -5
- package/dist/cjs/components/form/select/MrlSelect/MrlSelect.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectClearIndicator.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectClearIndicator.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectContainer.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectContainer.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectDropdownIndicator.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectDropdownIndicator.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectMultiValue.js +9 -3
- package/dist/cjs/components/form/select/components/MrlSelectMultiValue.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectMultiValueRemove.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectMultiValueRemove.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectOption.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectOption.js.map +1 -1
- package/dist/cjs/components/form/select/components/MrlSelectValueContainer.js +3 -2
- package/dist/cjs/components/form/select/components/MrlSelectValueContainer.js.map +1 -1
- package/dist/cjs/components/form/select/styles/default.js +18 -18
- package/dist/cjs/components/form/select/styles/default.js.map +1 -1
- package/dist/cjs/components/form/select/styles/inline.js +2 -2
- package/dist/cjs/components/form/select/styles/inline.js.map +1 -1
- package/dist/cjs/components/form/select/styles/inlineNoLabel.js +3 -3
- package/dist/cjs/components/form/select/styles/inlineNoLabel.js.map +1 -1
- package/dist/cjs/components/form/select/styles/inlineStacked.js +2 -2
- package/dist/cjs/components/form/select/styles/inlineStacked.js.map +1 -1
- package/dist/cjs/components/form/switch/MrlSwitch/MrlSwitch.js +14 -7
- package/dist/cjs/components/form/switch/MrlSwitch/MrlSwitch.js.map +1 -1
- package/dist/cjs/components/form/switch/MrlSwitchStandalone/MrlSwitchStandalone.js +13 -9
- package/dist/cjs/components/form/switch/MrlSwitchStandalone/MrlSwitchStandalone.js.map +1 -1
- package/dist/cjs/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.js +31 -19
- package/dist/cjs/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.js.map +1 -1
- package/dist/cjs/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.js +14 -17
- package/dist/cjs/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.js.map +1 -1
- package/dist/cjs/components/form/text-input/MrlTextInput/MrlTextInput.js +28 -23
- package/dist/cjs/components/form/text-input/MrlTextInput/MrlTextInput.js.map +1 -1
- package/dist/cjs/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.js +14 -17
- package/dist/cjs/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.js.map +1 -1
- package/dist/cjs/components/form/textarea/MrlEditableTextarea/MrlEditableTextarea.js +20 -16
- package/dist/cjs/components/form/textarea/MrlEditableTextarea/MrlEditableTextarea.js.map +1 -1
- package/dist/cjs/components/form/textarea/MrlEditableTextarea/MrlEditableTextareaRightButton.js +14 -17
- package/dist/cjs/components/form/textarea/MrlEditableTextarea/MrlEditableTextareaRightButton.js.map +1 -1
- package/dist/cjs/components/form/textarea/MrlTextarea/MrlTextarea.js +16 -9
- package/dist/cjs/components/form/textarea/MrlTextarea/MrlTextarea.js.map +1 -1
- package/dist/cjs/components/form/utils.js +2 -4
- package/dist/cjs/components/form/utils.js.map +1 -1
- package/dist/cjs/components/grid/MrlCol/MrlCol.js +37 -46
- package/dist/cjs/components/grid/MrlCol/MrlCol.js.map +1 -1
- package/dist/cjs/components/grid/MrlGrid/MrlGrid.js +7 -3
- package/dist/cjs/components/grid/MrlGrid/MrlGrid.js.map +1 -1
- package/dist/cjs/components/grid/MrlRow/MrlRow.js +7 -3
- package/dist/cjs/components/grid/MrlRow/MrlRow.js.map +1 -1
- package/dist/cjs/components/keystroke/MrlKeystroke/MrlKeystroke.js +7 -3
- package/dist/cjs/components/keystroke/MrlKeystroke/MrlKeystroke.js.map +1 -1
- package/dist/cjs/components/keystroke/MrlKeystrokes/MrlKeystrokes.js +7 -3
- package/dist/cjs/components/keystroke/MrlKeystrokes/MrlKeystrokes.js.map +1 -1
- package/dist/cjs/components/layout/MrlMain/MrlMain.js +9 -3
- package/dist/cjs/components/layout/MrlMain/MrlMain.js.map +1 -1
- package/dist/cjs/components/layout/MrlPage/MrlPage.js +9 -3
- package/dist/cjs/components/layout/MrlPage/MrlPage.js.map +1 -1
- package/dist/cjs/components/layout/MrlPage/index.js +3 -2
- package/dist/cjs/components/layout/MrlPage/index.js.map +1 -1
- package/dist/cjs/components/layout/MrlSidebar/MrlSidebar.js +27 -15
- package/dist/cjs/components/layout/MrlSidebar/MrlSidebar.js.map +1 -1
- package/dist/cjs/components/layout/MrlTopbar/MrlTopbar.js +10 -3
- package/dist/cjs/components/layout/MrlTopbar/MrlTopbar.js.map +1 -1
- package/dist/cjs/components/layout/context/LayoutContext.js +7 -6
- package/dist/cjs/components/layout/context/LayoutContext.js.map +1 -1
- package/dist/cjs/components/layout/error-page/MrlBrandColors/MrlBrandColors.js +18 -14
- package/dist/cjs/components/layout/error-page/MrlBrandColors/MrlBrandColors.js.map +1 -1
- package/dist/cjs/components/layout/error-page/MrlErrorPage/MrlErrorPage.js +13 -9
- package/dist/cjs/components/layout/error-page/MrlErrorPage/MrlErrorPage.js.map +1 -1
- package/dist/cjs/components/layout/utils.js +2 -2
- package/dist/cjs/components/layout/utils.js.map +1 -1
- package/dist/cjs/components/link/MrlLink/MrlLink.js +13 -4
- package/dist/cjs/components/link/MrlLink/MrlLink.js.map +1 -1
- package/dist/cjs/components/link/MrlLinkButton/MrlLinkButton.js +16 -14
- package/dist/cjs/components/link/MrlLinkButton/MrlLinkButton.js.map +1 -1
- package/dist/cjs/components/live-region/MrlLiveRegion/MrlLiveRegion.js +13 -12
- package/dist/cjs/components/live-region/MrlLiveRegion/MrlLiveRegion.js.map +1 -1
- package/dist/cjs/components/loader/MrlProgressBar/MrlProgressBar.js +16 -6
- package/dist/cjs/components/loader/MrlProgressBar/MrlProgressBar.js.map +1 -1
- package/dist/cjs/components/loader/MrlSpinner/MrlSpinner.js +16 -4
- package/dist/cjs/components/loader/MrlSpinner/MrlSpinner.js.map +1 -1
- package/dist/cjs/components/menu/MrlMenu/MrlMenu.js +61 -63
- package/dist/cjs/components/menu/MrlMenu/MrlMenu.js.map +1 -1
- package/dist/cjs/components/menu/MrlMenu/utilities.js +4 -6
- package/dist/cjs/components/menu/MrlMenu/utilities.js.map +1 -1
- package/dist/cjs/components/menu/MrlMenuGroup/MrlMenuGroup.js +4 -3
- package/dist/cjs/components/menu/MrlMenuGroup/MrlMenuGroup.js.map +1 -1
- package/dist/cjs/components/menu/MrlMenuItem/MrlMenuItem.js +24 -19
- package/dist/cjs/components/menu/MrlMenuItem/MrlMenuItem.js.map +1 -1
- package/dist/cjs/components/menu/MrlMenuItemLink/MrlMenuItemLink.js +10 -6
- package/dist/cjs/components/menu/MrlMenuItemLink/MrlMenuItemLink.js.map +1 -1
- package/dist/cjs/components/menu/context/MrlMenuContext.js +3 -2
- package/dist/cjs/components/menu/context/MrlMenuContext.js.map +1 -1
- package/dist/cjs/components/menu/hooks/useBrowserEdgeScroll.js +19 -15
- package/dist/cjs/components/menu/hooks/useBrowserEdgeScroll.js.map +1 -1
- package/dist/cjs/components/menu/hooks/useMenuScroll.js +8 -8
- package/dist/cjs/components/menu/hooks/useMenuScroll.js.map +1 -1
- package/dist/cjs/components/menu/hooks/useSubMenuElementPosition.js +3 -3
- package/dist/cjs/components/menu/hooks/useSubMenuElementPosition.js.map +1 -1
- package/dist/cjs/components/menu/utilities/flip-position.js +1 -1
- package/dist/cjs/components/menu/utilities/flip-position.js.map +1 -1
- package/dist/cjs/components/modal/MrlModal/MrlModal.js +29 -25
- package/dist/cjs/components/modal/MrlModal/MrlModal.js.map +1 -1
- package/dist/cjs/components/modal/MrlModalContent/MrlModalContent.js +12 -8
- package/dist/cjs/components/modal/MrlModalContent/MrlModalContent.js.map +1 -1
- package/dist/cjs/components/modal/MrlModalContext/MrlModalContext.js +4 -3
- package/dist/cjs/components/modal/MrlModalContext/MrlModalContext.js.map +1 -1
- package/dist/cjs/components/modal/MrlModalFooter/MrlModalFooter.js +13 -6
- package/dist/cjs/components/modal/MrlModalFooter/MrlModalFooter.js.map +1 -1
- package/dist/cjs/components/modal/MrlModalHeader/MrlModalHeader.js +12 -6
- package/dist/cjs/components/modal/MrlModalHeader/MrlModalHeader.js.map +1 -1
- package/dist/cjs/components/navigation-sidebar/MrlSidebarNavGroup/MrlSidebarNavGroup.js +7 -3
- package/dist/cjs/components/navigation-sidebar/MrlSidebarNavGroup/MrlSidebarNavGroup.js.map +1 -1
- package/dist/cjs/components/navigation-sidebar/MrlSidebarNavItem/MrlSidebarNavItem.js +11 -3
- package/dist/cjs/components/navigation-sidebar/MrlSidebarNavItem/MrlSidebarNavItem.js.map +1 -1
- package/dist/cjs/components/notification/MrlBlockNotification/MrlBlockNotification.js +26 -19
- package/dist/cjs/components/notification/MrlBlockNotification/MrlBlockNotification.js.map +1 -1
- package/dist/cjs/components/notification/MrlInlineMessage/MrlInlineMessage.js +17 -7
- package/dist/cjs/components/notification/MrlInlineMessage/MrlInlineMessage.js.map +1 -1
- package/dist/cjs/components/notification/MrlToast/MrlToast.js +18 -9
- package/dist/cjs/components/notification/MrlToast/MrlToast.js.map +1 -1
- package/dist/cjs/components/pagination/MrlPagination/MrlPagination.js +7 -3
- package/dist/cjs/components/pagination/MrlPagination/MrlPagination.js.map +1 -1
- package/dist/cjs/components/pagination/MrlPaginationButton/MrlPaginationButton.js +7 -3
- package/dist/cjs/components/pagination/MrlPaginationButton/MrlPaginationButton.js.map +1 -1
- package/dist/cjs/components/pagination/MrlPaginationText/MrlPaginationText.js +8 -4
- package/dist/cjs/components/pagination/MrlPaginationText/MrlPaginationText.js.map +1 -1
- package/dist/cjs/components/panel/MrlPanel/MrlPanel.js +25 -17
- package/dist/cjs/components/panel/MrlPanel/MrlPanel.js.map +1 -1
- package/dist/cjs/components/panel/MrlPanelContext/MrlPanelContext.js +3 -2
- package/dist/cjs/components/panel/MrlPanelContext/MrlPanelContext.js.map +1 -1
- package/dist/cjs/components/panel/MrlPanelFooter/MrlPanelFooter.js +9 -5
- package/dist/cjs/components/panel/MrlPanelFooter/MrlPanelFooter.js.map +1 -1
- package/dist/cjs/components/panel/MrlPanelStickyHeader/MrlPanelStickyHeader.js +8 -4
- package/dist/cjs/components/panel/MrlPanelStickyHeader/MrlPanelStickyHeader.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/MrlPopover.js +77 -73
- package/dist/cjs/components/popover/MrlPopover/MrlPopover.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/MrlPopoverScrollContainer.js +3 -2
- package/dist/cjs/components/popover/MrlPopover/MrlPopoverScrollContainer.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/context/MrlPopoverContext.js +3 -2
- package/dist/cjs/components/popover/MrlPopover/context/MrlPopoverContext.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.js +22 -23
- package/dist/cjs/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/utilities/get-data-point.js +1 -1
- package/dist/cjs/components/popover/MrlPopover/utilities/get-data-point.js.map +1 -1
- package/dist/cjs/components/popover/MrlPopover/utilities/get-offset.js +1 -1
- package/dist/cjs/components/popover/MrlPopover/utilities/get-offset.js.map +1 -1
- package/dist/cjs/components/portal/MrlPortal.js +5 -4
- package/dist/cjs/components/portal/MrlPortal.js.map +1 -1
- package/dist/cjs/components/rovingTabindex/MrlRovingTabindex/MrlRovingTabindex.js +237 -263
- package/dist/cjs/components/rovingTabindex/MrlRovingTabindex/MrlRovingTabindex.js.map +1 -1
- package/dist/cjs/components/skeleton/MrlSkeleton/MrlSkeleton.js +11 -5
- package/dist/cjs/components/skeleton/MrlSkeleton/MrlSkeleton.js.map +1 -1
- package/dist/cjs/components/skeleton/MrlSkeletonText/MrlSkeletonText.js +12 -6
- package/dist/cjs/components/skeleton/MrlSkeletonText/MrlSkeletonText.js.map +1 -1
- package/dist/cjs/components/svg/MrlSvg/MrlSvg.js +17 -17
- package/dist/cjs/components/svg/MrlSvg/MrlSvg.js.map +1 -1
- package/dist/cjs/components/svg/MrlSvgAnimate/MrlSvgAnimate.js +20 -15
- package/dist/cjs/components/svg/MrlSvgAnimate/MrlSvgAnimate.js.map +1 -1
- package/dist/cjs/components/table/MrlSmartTable/MrlSmartTable.js +78 -96
- package/dist/cjs/components/table/MrlSmartTable/MrlSmartTable.js.map +1 -1
- package/dist/cjs/components/table/MrlSmartTable/components/DefaultCellContent.js +5 -4
- package/dist/cjs/components/table/MrlSmartTable/components/DefaultCellContent.js.map +1 -1
- package/dist/cjs/components/table/MrlTable/MrlTable.js +7 -3
- package/dist/cjs/components/table/MrlTable/MrlTable.js.map +1 -1
- package/dist/cjs/components/table/MrlTableBody/MrlTableBody.js +7 -3
- package/dist/cjs/components/table/MrlTableBody/MrlTableBody.js.map +1 -1
- package/dist/cjs/components/table/MrlTableCell/MrlTableCell.js +12 -3
- package/dist/cjs/components/table/MrlTableCell/MrlTableCell.js.map +1 -1
- package/dist/cjs/components/table/MrlTableColumn/MrlTableColumn.js +13 -3
- package/dist/cjs/components/table/MrlTableColumn/MrlTableColumn.js.map +1 -1
- package/dist/cjs/components/table/MrlTableEmptyState/MrlTableEmptyState.js +7 -3
- package/dist/cjs/components/table/MrlTableEmptyState/MrlTableEmptyState.js.map +1 -1
- package/dist/cjs/components/table/MrlTableHeader/MrlTableHeader.js +7 -3
- package/dist/cjs/components/table/MrlTableHeader/MrlTableHeader.js.map +1 -1
- package/dist/cjs/components/table/MrlTableRow/MrlTableRow.js +13 -7
- package/dist/cjs/components/table/MrlTableRow/MrlTableRow.js.map +1 -1
- package/dist/cjs/components/table/utils.js +4 -10
- package/dist/cjs/components/table/utils.js.map +1 -1
- package/dist/cjs/components/tabs/MrlTab/MrlTab.js +16 -9
- package/dist/cjs/components/tabs/MrlTab/MrlTab.js.map +1 -1
- package/dist/cjs/components/tabs/MrlTabContent/MrlTabContent.js +12 -5
- package/dist/cjs/components/tabs/MrlTabContent/MrlTabContent.js.map +1 -1
- package/dist/cjs/components/tabs/MrlTabGroup/MrlTabGroup.js +15 -13
- package/dist/cjs/components/tabs/MrlTabGroup/MrlTabGroup.js.map +1 -1
- package/dist/cjs/components/tabs/MrlTabLink/MrlTabLink.js +16 -9
- package/dist/cjs/components/tabs/MrlTabLink/MrlTabLink.js.map +1 -1
- package/dist/cjs/components/tabs/MrlTabs/MrlTabs.js +16 -10
- package/dist/cjs/components/tabs/MrlTabs/MrlTabs.js.map +1 -1
- package/dist/cjs/components/text/MrlText/MrlText.js +14 -5
- package/dist/cjs/components/text/MrlText/MrlText.js.map +1 -1
- package/dist/cjs/components/text/MrlTextHeading/MrlTextHeading.js +14 -4
- package/dist/cjs/components/text/MrlTextHeading/MrlTextHeading.js.map +1 -1
- package/dist/cjs/components/toolbar/MrlToolbar/MrlToolbar.js +17 -8
- package/dist/cjs/components/toolbar/MrlToolbar/MrlToolbar.js.map +1 -1
- package/dist/cjs/components/toolbar/MrlToolbarButton/MrlToolbarButton.js +7 -3
- package/dist/cjs/components/toolbar/MrlToolbarButton/MrlToolbarButton.js.map +1 -1
- package/dist/cjs/components/toolbar/MrlToolbarItem/MrlToolbarItem.js +1 -1
- package/dist/cjs/components/toolbar/MrlToolbarItem/MrlToolbarItem.js.map +1 -1
- package/dist/cjs/components/tooltip/MrlTooltip/MrlTooltip.js +37 -36
- package/dist/cjs/components/tooltip/MrlTooltip/MrlTooltip.js.map +1 -1
- package/dist/cjs/components/tooltip/MrlTooltipContent/MrlTooltipContent.js +13 -4
- package/dist/cjs/components/tooltip/MrlTooltipContent/MrlTooltipContent.js.map +1 -1
- package/dist/cjs/components/tooltip/useTooltipPosition/index.js +21 -19
- package/dist/cjs/components/tooltip/useTooltipPosition/index.js.map +1 -1
- package/dist/cjs/components/tooltip/useTooltipPosition/utilities.js +4 -4
- package/dist/cjs/components/tooltip/useTooltipPosition/utilities.js.map +1 -1
- package/dist/cjs/components/tooltip/utils.js +3 -3
- package/dist/cjs/components/tooltip/utils.js.map +1 -1
- package/dist/cjs/hooks/useAutoClose/useAutoClose.js +7 -6
- package/dist/cjs/hooks/useAutoClose/useAutoClose.js.map +1 -1
- package/dist/cjs/hooks/useBreakpoint/index.js +5 -5
- package/dist/cjs/hooks/useBreakpoint/index.js.map +1 -1
- package/dist/cjs/hooks/useClickOutside/index.js +4 -4
- package/dist/cjs/hooks/useClickOutside/index.js.map +1 -1
- package/dist/cjs/hooks/useCoordinate/index.js +19 -28
- package/dist/cjs/hooks/useCoordinate/index.js.map +1 -1
- package/dist/cjs/hooks/useElementDimensions/index.js +21 -33
- package/dist/cjs/hooks/useElementDimensions/index.js.map +1 -1
- package/dist/cjs/hooks/useHasFocusableDescendant/index.js +7 -8
- package/dist/cjs/hooks/useHasFocusableDescendant/index.js.map +1 -1
- package/dist/cjs/hooks/useScrollbarInfo/index.js +11 -10
- package/dist/cjs/hooks/useScrollbarInfo/index.js.map +1 -1
- package/dist/cjs/hooks/useTriggerPosition/index.js +20 -22
- package/dist/cjs/hooks/useTriggerPosition/index.js.map +1 -1
- package/dist/cjs/hooks/useTriggerPosition/utilities.js +15 -23
- package/dist/cjs/hooks/useTriggerPosition/utilities.js.map +1 -1
- package/dist/cjs/utils/checkInvalidAttributes/index.js +2 -4
- package/dist/cjs/utils/checkInvalidAttributes/index.js.map +1 -1
- package/dist/cjs/utils/frameDebounce/index.js +27 -28
- package/dist/cjs/utils/frameDebounce/index.js.map +1 -1
- package/dist/cjs/utils/getCamelCase/getCamelCase.js +2 -2
- package/dist/cjs/utils/getCamelCase/getCamelCase.js.map +1 -1
- package/dist/cjs/utils/getScrollableContainer/getScrollableContainer.js +1 -1
- package/dist/cjs/utils/getScrollableContainer/getScrollableContainer.js.map +1 -1
- package/dist/cjs/utils/hasHorizontalScroll/hasHorizontalScroll.js +1 -1
- package/dist/cjs/utils/hasHorizontalScroll/hasHorizontalScroll.js.map +1 -1
- package/dist/cjs/utils/hasScrollContent/hasScrollContent.js +1 -1
- package/dist/cjs/utils/hasScrollContent/hasScrollContent.js.map +1 -1
- package/dist/cjs/utils/isElementAriaDisabled/isElementAriaDisabled.js +1 -1
- package/dist/cjs/utils/isElementAriaDisabled/isElementAriaDisabled.js.map +1 -1
- package/dist/cjs/utils/isElementScrollable/index.js +1 -1
- package/dist/cjs/utils/isElementScrollable/index.js.map +1 -1
- package/dist/cjs/utils/isImagePath/index.js +4 -3
- package/dist/cjs/utils/isImagePath/index.js.map +1 -1
- package/dist/cjs/utils/isImageUri/index.js +1 -1
- package/dist/cjs/utils/isImageUri/index.js.map +1 -1
- package/dist/cjs/utils/isObject/isObject.js +1 -1
- package/dist/cjs/utils/isObject/isObject.js.map +1 -1
- package/dist/cjs/utils/isTouch/index.js +1 -1
- package/dist/cjs/utils/isTouch/index.js.map +1 -1
- package/dist/cjs/utils/layers/index.js +1 -1
- package/dist/cjs/utils/layers/index.js.map +1 -1
- package/dist/cjs/utils/noop/index.js +1 -1
- package/dist/cjs/utils/noop/index.js.map +1 -1
- package/dist/cjs/utils/preventDefault/preventDefault.js +1 -1
- package/dist/cjs/utils/preventDefault/preventDefault.js.map +1 -1
- package/dist/cjs/utils/setAttributes/setAttributes.js +11 -5
- package/dist/cjs/utils/setAttributes/setAttributes.js.map +1 -1
- package/dist/cjs/utils/trapFocus/index.js +9 -11
- package/dist/cjs/utils/trapFocus/index.js.map +1 -1
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +1 -234
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/dist/esm/components/avatar/MrlAvatar/MrlAvatar.js +12 -10
- package/dist/esm/components/avatar/MrlAvatar/MrlAvatar.js.map +1 -1
- package/dist/esm/components/avatar/MrlAvatarButton/MrlAvatarButton.js +22 -24
- package/dist/esm/components/avatar/MrlAvatarButton/MrlAvatarButton.js.map +1 -1
- package/dist/esm/components/badge/MrlBadge/MrlBadge.js +6 -4
- package/dist/esm/components/badge/MrlBadge/MrlBadge.js.map +1 -1
- package/dist/esm/components/badge/MrlBadgeNotification/MrlBadgeNotification.js +7 -3
- package/dist/esm/components/badge/MrlBadgeNotification/MrlBadgeNotification.js.map +1 -1
- package/dist/esm/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.js +7 -4
- package/dist/esm/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.js.map +1 -1
- package/dist/esm/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.js +18 -26
- package/dist/esm/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.js.map +1 -1
- package/dist/esm/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.js +14 -18
- package/dist/esm/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.js.map +1 -1
- package/dist/esm/components/button/MrlButton/MrlButton.js +16 -20
- package/dist/esm/components/button/MrlButton/MrlButton.js.map +1 -1
- package/dist/esm/components/button/MrlIconButton/MrlIconButton.js +14 -20
- package/dist/esm/components/button/MrlIconButton/MrlIconButton.js.map +1 -1
- package/dist/esm/components/button/MrlProcessingButton/MrlProcessingButton.js +7 -7
- package/dist/esm/components/button/MrlProcessingButton/MrlProcessingButton.js.map +1 -1
- package/dist/esm/components/button/MrlProcessingButton/actions.js +12 -17
- package/dist/esm/components/button/MrlProcessingButton/actions.js.map +1 -1
- package/dist/esm/components/button/helpers.js +4 -6
- package/dist/esm/components/button/helpers.js.map +1 -1
- package/dist/esm/components/callout/MrlCallout/MrlCallout.js +5 -7
- package/dist/esm/components/callout/MrlCallout/MrlCallout.js.map +1 -1
- package/dist/esm/components/container/MrlContainer/MrlContainer.js +7 -4
- package/dist/esm/components/container/MrlContainer/MrlContainer.js.map +1 -1
- package/dist/esm/components/divider/MrlDivider/MrlDivider.js +13 -5
- package/dist/esm/components/divider/MrlDivider/MrlDivider.js.map +1 -1
- package/dist/esm/components/empty/default/MrlEmpty.js +1 -1
- package/dist/esm/components/empty/default/MrlEmpty.js.map +1 -1
- package/dist/esm/components/empty/large/MrlEmptyLarge.js +1 -1
- package/dist/esm/components/empty/large/MrlEmptyLarge.js.map +1 -1
- package/dist/esm/components/error-boundary/MrlErrorBoundary.js +28 -37
- package/dist/esm/components/error-boundary/MrlErrorBoundary.js.map +1 -1
- package/dist/esm/components/filter/MrlFilterContext/MrlFilterContext.js +5 -5
- package/dist/esm/components/filter/MrlFilterContext/MrlFilterContext.js.map +1 -1
- package/dist/esm/components/filter/MrlFilterItem/MrlFilterItem.js +4 -2
- package/dist/esm/components/filter/MrlFilterItem/MrlFilterItem.js.map +1 -1
- package/dist/esm/components/focus-trap/MrlFocusTrap/MrlFocusTrap.js +3 -3
- package/dist/esm/components/focus-trap/MrlFocusTrap/MrlFocusTrap.js.map +1 -1
- package/dist/esm/components/form/checkbox/MrlCheckbox/MrlCheckbox.js +8 -3
- package/dist/esm/components/form/checkbox/MrlCheckbox/MrlCheckbox.js.map +1 -1
- package/dist/esm/components/form/checkbox/MrlCheckboxStandalone/MrlCheckboxStandalone.js +2 -2
- package/dist/esm/components/form/checkbox/MrlCheckboxStandalone/MrlCheckboxStandalone.js.map +1 -1
- package/dist/esm/components/form/date-picker/MrlDatePicker.js +15 -12
- package/dist/esm/components/form/date-picker/MrlDatePicker.js.map +1 -1
- package/dist/esm/components/form/fieldset/MrlFieldset/MrlFieldset.js +2 -2
- package/dist/esm/components/form/fieldset/MrlFieldset/MrlFieldset.js.map +1 -1
- package/dist/esm/components/form/hooks/useActiveColor.js +2 -2
- package/dist/esm/components/form/hooks/useActiveColor.js.map +1 -1
- package/dist/esm/components/form/hooks/useIsEditable.js +3 -3
- package/dist/esm/components/form/hooks/useIsEditable.js.map +1 -1
- package/dist/esm/components/form/label/MrlLabel/MrlLabel.js +6 -3
- package/dist/esm/components/form/label/MrlLabel/MrlLabel.js.map +1 -1
- package/dist/esm/components/form/label/MrlLabelWithDescription/MrlLabelWithDescription.js +14 -4
- package/dist/esm/components/form/label/MrlLabelWithDescription/MrlLabelWithDescription.js.map +1 -1
- package/dist/esm/components/form/legacy-select/MrlLegacySelect/MrlLegacySelect.js +37 -30
- package/dist/esm/components/form/legacy-select/MrlLegacySelect/MrlLegacySelect.js.map +1 -1
- package/dist/esm/components/form/legacy-select/MrlLegacySelectItem/MrlLegacySelectItem.js +16 -11
- package/dist/esm/components/form/legacy-select/MrlLegacySelectItem/MrlLegacySelectItem.js.map +1 -1
- package/dist/esm/components/form/legacy-select/MrlLegacySelectMenu/MrlLegacySelectMenu.js +14 -10
- package/dist/esm/components/form/legacy-select/MrlLegacySelectMenu/MrlLegacySelectMenu.js.map +1 -1
- package/dist/esm/components/form/legacy-select/context/SelectContext.js +5 -5
- package/dist/esm/components/form/legacy-select/context/SelectContext.js.map +1 -1
- package/dist/esm/components/form/legacy-select/index.js +1 -1
- package/dist/esm/components/form/legacy-select/index.js.map +1 -1
- package/dist/esm/components/form/radio/MrlRadioButtonStandalone/MrlRadioButtonStandalone.js +4 -2
- package/dist/esm/components/form/radio/MrlRadioButtonStandalone/MrlRadioButtonStandalone.js.map +1 -1
- package/dist/esm/components/form/select/MrlCreatableSelect/MrlCreatableSelect.js +3 -5
- package/dist/esm/components/form/select/MrlCreatableSelect/MrlCreatableSelect.js.map +1 -1
- package/dist/esm/components/form/select/MrlMultiCreatableSelect/MrlMultiCreatableSelect.js +3 -5
- package/dist/esm/components/form/select/MrlMultiCreatableSelect/MrlMultiCreatableSelect.js.map +1 -1
- package/dist/esm/components/form/select/MrlMultiSelect/MrlMultiSelect.js +2 -2
- package/dist/esm/components/form/select/MrlMultiSelect/MrlMultiSelect.js.map +1 -1
- package/dist/esm/components/form/select/MrlSelect/MrlSelect.js +2 -2
- package/dist/esm/components/form/select/MrlSelect/MrlSelect.js.map +1 -1
- package/dist/esm/components/form/select/components/MrlSelectMultiValue.js +4 -2
- package/dist/esm/components/form/select/components/MrlSelectMultiValue.js.map +1 -1
- package/dist/esm/components/form/select/styles/default.js +18 -18
- package/dist/esm/components/form/select/styles/default.js.map +1 -1
- package/dist/esm/components/form/select/styles/inline.js +2 -2
- package/dist/esm/components/form/select/styles/inline.js.map +1 -1
- package/dist/esm/components/form/select/styles/inlineNoLabel.js +3 -3
- package/dist/esm/components/form/select/styles/inlineNoLabel.js.map +1 -1
- package/dist/esm/components/form/select/styles/inlineStacked.js +2 -2
- package/dist/esm/components/form/select/styles/inlineStacked.js.map +1 -1
- package/dist/esm/components/form/switch/MrlSwitch/MrlSwitch.js +9 -6
- package/dist/esm/components/form/switch/MrlSwitch/MrlSwitch.js.map +1 -1
- package/dist/esm/components/form/switch/MrlSwitchStandalone/MrlSwitchStandalone.js +3 -3
- package/dist/esm/components/form/switch/MrlSwitchStandalone/MrlSwitchStandalone.js.map +1 -1
- package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.js +25 -17
- package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.js.map +1 -1
- package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.js +8 -15
- package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.js.map +1 -1
- package/dist/esm/components/form/text-input/MrlTextInput/MrlTextInput.js +21 -20
- package/dist/esm/components/form/text-input/MrlTextInput/MrlTextInput.js.map +1 -1
- package/dist/esm/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.js +8 -15
- package/dist/esm/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.js.map +1 -1
- package/dist/esm/components/form/textarea/MrlEditableTextarea/MrlEditableTextarea.js +15 -15
- package/dist/esm/components/form/textarea/MrlEditableTextarea/MrlEditableTextarea.js.map +1 -1
- package/dist/esm/components/form/textarea/MrlEditableTextarea/MrlEditableTextareaRightButton.js +8 -15
- package/dist/esm/components/form/textarea/MrlEditableTextarea/MrlEditableTextareaRightButton.js.map +1 -1
- package/dist/esm/components/form/textarea/MrlTextarea/MrlTextarea.js +9 -6
- package/dist/esm/components/form/textarea/MrlTextarea/MrlTextarea.js.map +1 -1
- package/dist/esm/components/form/utils.js +2 -4
- package/dist/esm/components/form/utils.js.map +1 -1
- package/dist/esm/components/grid/MrlCol/MrlCol.js +31 -44
- package/dist/esm/components/grid/MrlCol/MrlCol.js.map +1 -1
- package/dist/esm/components/layout/MrlMain/MrlMain.js +4 -2
- package/dist/esm/components/layout/MrlMain/MrlMain.js.map +1 -1
- package/dist/esm/components/layout/MrlPage/MrlPage.js +4 -2
- package/dist/esm/components/layout/MrlPage/MrlPage.js.map +1 -1
- package/dist/esm/components/layout/MrlSidebar/MrlSidebar.js +19 -11
- package/dist/esm/components/layout/MrlSidebar/MrlSidebar.js.map +1 -1
- package/dist/esm/components/layout/MrlTopbar/MrlTopbar.js +5 -2
- package/dist/esm/components/layout/MrlTopbar/MrlTopbar.js.map +1 -1
- package/dist/esm/components/layout/context/LayoutContext.js +4 -4
- package/dist/esm/components/layout/context/LayoutContext.js.map +1 -1
- package/dist/esm/components/layout/error-page/MrlBrandColors/MrlBrandColors.js +1 -1
- package/dist/esm/components/layout/error-page/MrlBrandColors/MrlBrandColors.js.map +1 -1
- package/dist/esm/components/layout/error-page/MrlErrorPage/MrlErrorPage.js +1 -1
- package/dist/esm/components/layout/error-page/MrlErrorPage/MrlErrorPage.js.map +1 -1
- package/dist/esm/components/layout/utils.js +2 -2
- package/dist/esm/components/layout/utils.js.map +1 -1
- package/dist/esm/components/link/MrlLink/MrlLink.js +8 -3
- package/dist/esm/components/link/MrlLink/MrlLink.js.map +1 -1
- package/dist/esm/components/link/MrlLinkButton/MrlLinkButton.js +9 -11
- package/dist/esm/components/link/MrlLinkButton/MrlLinkButton.js.map +1 -1
- package/dist/esm/components/live-region/MrlLiveRegion/MrlLiveRegion.js +5 -9
- package/dist/esm/components/live-region/MrlLiveRegion/MrlLiveRegion.js.map +1 -1
- package/dist/esm/components/loader/MrlProgressBar/MrlProgressBar.js +9 -3
- package/dist/esm/components/loader/MrlProgressBar/MrlProgressBar.js.map +1 -1
- package/dist/esm/components/loader/MrlSpinner/MrlSpinner.js +11 -3
- package/dist/esm/components/loader/MrlSpinner/MrlSpinner.js.map +1 -1
- package/dist/esm/components/menu/MrlMenu/MrlMenu.js +56 -62
- package/dist/esm/components/menu/MrlMenu/MrlMenu.js.map +1 -1
- package/dist/esm/components/menu/MrlMenu/utilities.js +4 -6
- package/dist/esm/components/menu/MrlMenu/utilities.js.map +1 -1
- package/dist/esm/components/menu/MrlMenuGroup/MrlMenuGroup.js +1 -1
- package/dist/esm/components/menu/MrlMenuGroup/MrlMenuGroup.js.map +1 -1
- package/dist/esm/components/menu/MrlMenuItem/MrlMenuItem.js +18 -17
- package/dist/esm/components/menu/MrlMenuItem/MrlMenuItem.js.map +1 -1
- package/dist/esm/components/menu/MrlMenuItemLink/MrlMenuItemLink.js +2 -2
- package/dist/esm/components/menu/MrlMenuItemLink/MrlMenuItemLink.js.map +1 -1
- package/dist/esm/components/menu/hooks/useBrowserEdgeScroll.js +14 -14
- package/dist/esm/components/menu/hooks/useBrowserEdgeScroll.js.map +1 -1
- package/dist/esm/components/menu/hooks/useMenuScroll.js +8 -8
- package/dist/esm/components/menu/hooks/useMenuScroll.js.map +1 -1
- package/dist/esm/components/menu/hooks/useSubMenuElementPosition.js +3 -3
- package/dist/esm/components/menu/hooks/useSubMenuElementPosition.js.map +1 -1
- package/dist/esm/components/menu/utilities/flip-position.js +1 -1
- package/dist/esm/components/menu/utilities/flip-position.js.map +1 -1
- package/dist/esm/components/modal/MrlModal/MrlModal.js +22 -22
- package/dist/esm/components/modal/MrlModal/MrlModal.js.map +1 -1
- package/dist/esm/components/modal/MrlModalContent/MrlModalContent.js +5 -5
- package/dist/esm/components/modal/MrlModalContent/MrlModalContent.js.map +1 -1
- package/dist/esm/components/modal/MrlModalContext/MrlModalContext.js +1 -1
- package/dist/esm/components/modal/MrlModalContext/MrlModalContext.js.map +1 -1
- package/dist/esm/components/modal/MrlModalFooter/MrlModalFooter.js +7 -4
- package/dist/esm/components/modal/MrlModalFooter/MrlModalFooter.js.map +1 -1
- package/dist/esm/components/modal/MrlModalHeader/MrlModalHeader.js +7 -5
- package/dist/esm/components/modal/MrlModalHeader/MrlModalHeader.js.map +1 -1
- package/dist/esm/components/navigation-sidebar/MrlSidebarNavItem/MrlSidebarNavItem.js +6 -2
- package/dist/esm/components/navigation-sidebar/MrlSidebarNavItem/MrlSidebarNavItem.js.map +1 -1
- package/dist/esm/components/notification/MrlBlockNotification/MrlBlockNotification.js +18 -15
- package/dist/esm/components/notification/MrlBlockNotification/MrlBlockNotification.js.map +1 -1
- package/dist/esm/components/notification/MrlInlineMessage/MrlInlineMessage.js +11 -5
- package/dist/esm/components/notification/MrlInlineMessage/MrlInlineMessage.js.map +1 -1
- package/dist/esm/components/notification/MrlToast/MrlToast.js +14 -9
- package/dist/esm/components/notification/MrlToast/MrlToast.js.map +1 -1
- package/dist/esm/components/panel/MrlPanel/MrlPanel.js +14 -10
- package/dist/esm/components/panel/MrlPanel/MrlPanel.js.map +1 -1
- package/dist/esm/components/panel/MrlPanelFooter/MrlPanelFooter.js +2 -2
- package/dist/esm/components/panel/MrlPanelFooter/MrlPanelFooter.js.map +1 -1
- package/dist/esm/components/panel/MrlPanelStickyHeader/MrlPanelStickyHeader.js +1 -1
- package/dist/esm/components/panel/MrlPanelStickyHeader/MrlPanelStickyHeader.js.map +1 -1
- package/dist/esm/components/popover/MrlPopover/MrlPopover.js +71 -71
- package/dist/esm/components/popover/MrlPopover/MrlPopover.js.map +1 -1
- package/dist/esm/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.js +19 -21
- package/dist/esm/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.js.map +1 -1
- package/dist/esm/components/popover/MrlPopover/utilities/get-data-point.js +1 -1
- package/dist/esm/components/popover/MrlPopover/utilities/get-data-point.js.map +1 -1
- package/dist/esm/components/popover/MrlPopover/utilities/get-offset.js +1 -1
- package/dist/esm/components/popover/MrlPopover/utilities/get-offset.js.map +1 -1
- package/dist/esm/components/portal/MrlPortal.js +2 -2
- package/dist/esm/components/portal/MrlPortal.js.map +1 -1
- package/dist/esm/components/rovingTabindex/MrlRovingTabindex/MrlRovingTabindex.js +235 -262
- package/dist/esm/components/rovingTabindex/MrlRovingTabindex/MrlRovingTabindex.js.map +1 -1
- package/dist/esm/components/skeleton/MrlSkeleton/MrlSkeleton.js +6 -4
- package/dist/esm/components/skeleton/MrlSkeleton/MrlSkeleton.js.map +1 -1
- package/dist/esm/components/skeleton/MrlSkeletonText/MrlSkeletonText.js +7 -5
- package/dist/esm/components/skeleton/MrlSkeletonText/MrlSkeletonText.js.map +1 -1
- package/dist/esm/components/svg/MrlSvg/MrlSvg.js +7 -11
- package/dist/esm/components/svg/MrlSvg/MrlSvg.js.map +1 -1
- package/dist/esm/components/svg/MrlSvgAnimate/MrlSvgAnimate.js +8 -8
- package/dist/esm/components/svg/MrlSvgAnimate/MrlSvgAnimate.js.map +1 -1
- package/dist/esm/components/table/MrlSmartTable/MrlSmartTable.js +71 -94
- package/dist/esm/components/table/MrlSmartTable/MrlSmartTable.js.map +1 -1
- package/dist/esm/components/table/MrlSmartTable/components/DefaultCellContent.js +2 -2
- package/dist/esm/components/table/MrlSmartTable/components/DefaultCellContent.js.map +1 -1
- package/dist/esm/components/table/MrlTableCell/MrlTableCell.js +7 -2
- package/dist/esm/components/table/MrlTableCell/MrlTableCell.js.map +1 -1
- package/dist/esm/components/table/MrlTableColumn/MrlTableColumn.js +8 -2
- package/dist/esm/components/table/MrlTableColumn/MrlTableColumn.js.map +1 -1
- package/dist/esm/components/table/MrlTableRow/MrlTableRow.js +7 -5
- package/dist/esm/components/table/MrlTableRow/MrlTableRow.js.map +1 -1
- package/dist/esm/components/table/utils.js +4 -10
- package/dist/esm/components/table/utils.js.map +1 -1
- package/dist/esm/components/tabs/MrlTab/MrlTab.js +11 -8
- package/dist/esm/components/tabs/MrlTab/MrlTab.js.map +1 -1
- package/dist/esm/components/tabs/MrlTabContent/MrlTabContent.js +7 -4
- package/dist/esm/components/tabs/MrlTabContent/MrlTabContent.js.map +1 -1
- package/dist/esm/components/tabs/MrlTabGroup/MrlTabGroup.js +8 -10
- package/dist/esm/components/tabs/MrlTabGroup/MrlTabGroup.js.map +1 -1
- package/dist/esm/components/tabs/MrlTabLink/MrlTabLink.js +11 -8
- package/dist/esm/components/tabs/MrlTabLink/MrlTabLink.js.map +1 -1
- package/dist/esm/components/tabs/MrlTabs/MrlTabs.js +11 -9
- package/dist/esm/components/tabs/MrlTabs/MrlTabs.js.map +1 -1
- package/dist/esm/components/text/MrlText/MrlText.js +8 -3
- package/dist/esm/components/text/MrlText/MrlText.js.map +1 -1
- package/dist/esm/components/text/MrlTextHeading/MrlTextHeading.js +9 -3
- package/dist/esm/components/text/MrlTextHeading/MrlTextHeading.js.map +1 -1
- package/dist/esm/components/toolbar/MrlToolbar/MrlToolbar.js +12 -7
- package/dist/esm/components/toolbar/MrlToolbar/MrlToolbar.js.map +1 -1
- package/dist/esm/components/toolbar/MrlToolbarItem/MrlToolbarItem.js +1 -1
- package/dist/esm/components/toolbar/MrlToolbarItem/MrlToolbarItem.js.map +1 -1
- package/dist/esm/components/tooltip/MrlTooltip/MrlTooltip.js +31 -34
- package/dist/esm/components/tooltip/MrlTooltip/MrlTooltip.js.map +1 -1
- package/dist/esm/components/tooltip/MrlTooltipContent/MrlTooltipContent.js +8 -3
- package/dist/esm/components/tooltip/MrlTooltipContent/MrlTooltipContent.js.map +1 -1
- package/dist/esm/components/tooltip/useTooltipPosition/index.js +15 -17
- package/dist/esm/components/tooltip/useTooltipPosition/index.js.map +1 -1
- package/dist/esm/components/tooltip/useTooltipPosition/utilities.js +4 -4
- package/dist/esm/components/tooltip/useTooltipPosition/utilities.js.map +1 -1
- package/dist/esm/components/tooltip/utils.js +3 -3
- package/dist/esm/components/tooltip/utils.js.map +1 -1
- package/dist/esm/hooks/useAutoClose/useAutoClose.js +4 -4
- package/dist/esm/hooks/useAutoClose/useAutoClose.js.map +1 -1
- package/dist/esm/hooks/useBreakpoint/index.js +5 -5
- package/dist/esm/hooks/useBreakpoint/index.js.map +1 -1
- package/dist/esm/hooks/useClickOutside/index.js +4 -4
- package/dist/esm/hooks/useClickOutside/index.js.map +1 -1
- package/dist/esm/hooks/useCoordinate/index.js +20 -29
- package/dist/esm/hooks/useCoordinate/index.js.map +1 -1
- package/dist/esm/hooks/useElementDimensions/index.js +19 -32
- package/dist/esm/hooks/useElementDimensions/index.js.map +1 -1
- package/dist/esm/hooks/useHasFocusableDescendant/index.js +4 -6
- package/dist/esm/hooks/useHasFocusableDescendant/index.js.map +1 -1
- package/dist/esm/hooks/useScrollbarInfo/index.js +8 -8
- package/dist/esm/hooks/useScrollbarInfo/index.js.map +1 -1
- package/dist/esm/hooks/useTriggerPosition/index.js +14 -20
- package/dist/esm/hooks/useTriggerPosition/index.js.map +1 -1
- package/dist/esm/hooks/useTriggerPosition/utilities.js +15 -23
- package/dist/esm/hooks/useTriggerPosition/utilities.js.map +1 -1
- package/dist/esm/utils/checkInvalidAttributes/index.js +2 -4
- package/dist/esm/utils/checkInvalidAttributes/index.js.map +1 -1
- package/dist/esm/utils/frameDebounce/index.js +28 -29
- package/dist/esm/utils/frameDebounce/index.js.map +1 -1
- package/dist/esm/utils/getCamelCase/getCamelCase.js +2 -2
- package/dist/esm/utils/getCamelCase/getCamelCase.js.map +1 -1
- package/dist/esm/utils/getScrollableContainer/getScrollableContainer.js +1 -1
- package/dist/esm/utils/getScrollableContainer/getScrollableContainer.js.map +1 -1
- package/dist/esm/utils/hasHorizontalScroll/hasHorizontalScroll.js +1 -1
- package/dist/esm/utils/hasHorizontalScroll/hasHorizontalScroll.js.map +1 -1
- package/dist/esm/utils/hasScrollContent/hasScrollContent.js +1 -1
- package/dist/esm/utils/hasScrollContent/hasScrollContent.js.map +1 -1
- package/dist/esm/utils/isElementAriaDisabled/isElementAriaDisabled.js +1 -1
- package/dist/esm/utils/isElementAriaDisabled/isElementAriaDisabled.js.map +1 -1
- package/dist/esm/utils/isElementScrollable/index.js +1 -1
- package/dist/esm/utils/isElementScrollable/index.js.map +1 -1
- package/dist/esm/utils/isImagePath/index.js +1 -1
- package/dist/esm/utils/isImagePath/index.js.map +1 -1
- package/dist/esm/utils/isImageUri/index.js +1 -1
- package/dist/esm/utils/isImageUri/index.js.map +1 -1
- package/dist/esm/utils/isObject/isObject.js +1 -1
- package/dist/esm/utils/isObject/isObject.js.map +1 -1
- package/dist/esm/utils/isTouch/index.js +1 -1
- package/dist/esm/utils/isTouch/index.js.map +1 -1
- package/dist/esm/utils/layers/index.js +1 -1
- package/dist/esm/utils/layers/index.js.map +1 -1
- package/dist/esm/utils/noop/index.js +1 -1
- package/dist/esm/utils/noop/index.js.map +1 -1
- package/dist/esm/utils/preventDefault/preventDefault.js +1 -1
- package/dist/esm/utils/preventDefault/preventDefault.js.map +1 -1
- package/dist/esm/utils/setAttributes/setAttributes.js +7 -5
- package/dist/esm/utils/setAttributes/setAttributes.js.map +1 -1
- package/dist/esm/utils/trapFocus/index.js +9 -11
- package/dist/esm/utils/trapFocus/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,8 @@ var React = require('react');
|
|
|
4
4
|
var preventDefault = require('../../../../utils/preventDefault/preventDefault.js');
|
|
5
5
|
var findAdjacentInteractiveElement = require('../../../../utils/findAdjacentInteractiveElement/findAdjacentInteractiveElement.js');
|
|
6
6
|
|
|
7
|
-
function
|
|
7
|
+
function _interopNamespace(e) {
|
|
8
|
+
if (e && e.__esModule) return e;
|
|
8
9
|
var n = Object.create(null);
|
|
9
10
|
if (e) {
|
|
10
11
|
Object.keys(e).forEach(function (k) {
|
|
@@ -21,7 +22,7 @@ function _interopNamespaceDefault(e) {
|
|
|
21
22
|
return Object.freeze(n);
|
|
22
23
|
}
|
|
23
24
|
|
|
24
|
-
var React__namespace = /*#__PURE__*/
|
|
25
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* Creates all of the required event handlers for the MrlPopover component
|
|
@@ -29,7 +30,7 @@ var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
|
29
30
|
* @param options configuration options
|
|
30
31
|
* @returns all of the required event handlers
|
|
31
32
|
*/
|
|
32
|
-
var useMrlPopoverEventHandlers =
|
|
33
|
+
var useMrlPopoverEventHandlers = _ref => {
|
|
33
34
|
var closeMenu = _ref.closeMenu,
|
|
34
35
|
isSubMenu = _ref.isSubMenu,
|
|
35
36
|
disableFocusTrap = _ref.disableFocusTrap,
|
|
@@ -44,7 +45,7 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
44
45
|
/**
|
|
45
46
|
* Sets up trigger event listeners to open and close the menu with a keyboard
|
|
46
47
|
*/
|
|
47
|
-
var toggleMenuKey = React__namespace.useCallback(
|
|
48
|
+
var toggleMenuKey = React__namespace.useCallback(e => {
|
|
48
49
|
if (!state.isOpen) {
|
|
49
50
|
switch (e.key) {
|
|
50
51
|
case 'ArrowRight':
|
|
@@ -98,26 +99,24 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
98
99
|
* Sets up trigger event listeners to open and close the menu
|
|
99
100
|
*
|
|
100
101
|
*/
|
|
101
|
-
var toggleMenuTrigger = React__namespace.useCallback(
|
|
102
|
+
var toggleMenuTrigger = React__namespace.useCallback(() => {
|
|
102
103
|
if (disableClickToOpen || isTriggerDisabled()) return;
|
|
103
|
-
setState(
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
};
|
|
108
|
-
});
|
|
104
|
+
setState(prevState => ({
|
|
105
|
+
actionType: 'click',
|
|
106
|
+
isOpen: !prevState.isOpen
|
|
107
|
+
}));
|
|
109
108
|
}, [disableClickToOpen, isTriggerDisabled, setState]);
|
|
110
109
|
|
|
111
110
|
/**
|
|
112
111
|
* Used to display the menu when hovering over a menu item that has a submenu
|
|
113
112
|
*/
|
|
114
|
-
var showMenuHover = React__namespace.useCallback(
|
|
113
|
+
var showMenuHover = React__namespace.useCallback(() => {
|
|
115
114
|
setState({
|
|
116
115
|
actionType: 'click',
|
|
117
116
|
isOpen: true
|
|
118
117
|
});
|
|
119
118
|
}, [setState]);
|
|
120
|
-
var hideMenuHover = React__namespace.useCallback(
|
|
119
|
+
var hideMenuHover = React__namespace.useCallback(event => {
|
|
121
120
|
// event.relatedTarget is a property utilized in mouse-related events such as `mouseover` and `mouseout`
|
|
122
121
|
// It signifies the element that was previously targeted before the current event occurred.
|
|
123
122
|
//
|
|
@@ -140,7 +139,7 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
140
139
|
*
|
|
141
140
|
* @param e - keyboard event
|
|
142
141
|
*/
|
|
143
|
-
var handleMenuKey =
|
|
142
|
+
var handleMenuKey = e => {
|
|
144
143
|
var _triggerRef$current;
|
|
145
144
|
if (state.isOpen) {
|
|
146
145
|
switch (e.key) {
|
|
@@ -197,7 +196,7 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
197
196
|
*
|
|
198
197
|
* @param e - keyboard event
|
|
199
198
|
*/
|
|
200
|
-
var handleTriggerSiblingKey =
|
|
199
|
+
var handleTriggerSiblingKey = e => {
|
|
201
200
|
if (state.isOpen && disableFocusTrap) {
|
|
202
201
|
switch (e.key) {
|
|
203
202
|
case 'Tab':
|
|
@@ -209,7 +208,7 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
209
208
|
}
|
|
210
209
|
}
|
|
211
210
|
};
|
|
212
|
-
var handleClose = React__namespace.useCallback(
|
|
211
|
+
var handleClose = React__namespace.useCallback(e => {
|
|
213
212
|
if (e.key === 'Enter' || e.key === ' ') {
|
|
214
213
|
var _triggerRef$current3;
|
|
215
214
|
closeMenu();
|
|
@@ -219,13 +218,13 @@ var useMrlPopoverEventHandlers = function useMrlPopoverEventHandlers(_ref) {
|
|
|
219
218
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
220
219
|
[closeMenu, disableFocusTrap]);
|
|
221
220
|
return {
|
|
222
|
-
handleClose
|
|
223
|
-
handleMenuKey
|
|
224
|
-
handleTriggerSiblingKey
|
|
225
|
-
hideMenuHover
|
|
226
|
-
showMenuHover
|
|
227
|
-
toggleMenuKey
|
|
228
|
-
toggleMenuTrigger
|
|
221
|
+
handleClose,
|
|
222
|
+
handleMenuKey,
|
|
223
|
+
handleTriggerSiblingKey,
|
|
224
|
+
hideMenuHover,
|
|
225
|
+
showMenuHover,
|
|
226
|
+
toggleMenuKey,
|
|
227
|
+
toggleMenuTrigger
|
|
229
228
|
};
|
|
230
229
|
};
|
|
231
230
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-mrl-popover-event-handlers.js","sources":["../../../../../../src/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.ts"],"sourcesContent":["import * as React from 'react';\nimport { ActionState, ActionType } from '../../../menu';\nimport { MrlPopoverProps } from '../MrlPopover';\nimport { findAdjacentInteractiveElement, preventDefault } from '../../../../utils';\n\ntype UseMrlPopoverEventHandlersOptions = {\n\tcloseMenu: () => void;\n\tisSubMenu: MrlPopoverProps['isSubMenu'];\n\tdisableFocusTrap: MrlPopoverProps['disableFocusTrap'];\n\tdisableClickToOpen: MrlPopoverProps['disableClickToOpen'];\n\thasCloseButton: MrlPopoverProps['hasCloseButton'];\n\tinteractiveElements: HTMLElement[];\n\tmenuRef: React.RefObject<HTMLDivElement>;\n\tstate: ActionState;\n\tsetState: React.Dispatch<React.SetStateAction<ActionState>>;\n\ttriggerRef: MrlPopoverProps['triggerRef'];\n\tisTriggerDisabled: () => boolean;\n};\n\ntype UseMrlPopoverEventHandlersReturn = {\n\thandleClose: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n\thandleMenuKey: (e: React.KeyboardEvent) => void;\n\thandleTriggerSiblingKey: (e: KeyboardEvent) => void;\n\thideMenuHover: (e: MouseEvent) => void;\n\tshowMenuHover: () => void;\n\ttoggleMenuKey: (e: KeyboardEvent) => void;\n\ttoggleMenuTrigger: () => void;\n};\n\n/**\n * Creates all of the required event handlers for the MrlPopover component\n *\n * @param options configuration options\n * @returns all of the required event handlers\n */\nexport const useMrlPopoverEventHandlers = ({\n\tcloseMenu,\n\tisSubMenu,\n\tdisableFocusTrap,\n\tdisableClickToOpen,\n\thasCloseButton,\n\tinteractiveElements,\n\tmenuRef,\n\tstate,\n\tsetState,\n\ttriggerRef,\n\tisTriggerDisabled\n}: UseMrlPopoverEventHandlersOptions): UseMrlPopoverEventHandlersReturn => {\n\t/**\n\t * Sets up trigger event listeners to open and close the menu with a keyboard\n\t */\n\tconst toggleMenuKey = React.useCallback(\n\t\t(e: KeyboardEvent) => {\n\t\t\tif (!state.isOpen) {\n\t\t\t\tswitch (e.key) {\n\t\t\t\t\tcase 'ArrowRight':\n\t\t\t\t\t\tif (isSubMenu) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: 'click', isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'Enter':\n\t\t\t\t\tcase ' ':\n\t\t\t\t\t\tif (!disableClickToOpen && !isTriggerDisabled()) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: e.key as ActionType, isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'ArrowDown':\n\t\t\t\t\t\tif (!isSubMenu && !disableClickToOpen && !isTriggerDisabled()) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: e.key as ActionType, isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (state.isOpen) {\n\t\t\t\t// When focus is on the trigger and the popover is open, if a user presses \"tab\"\n\t\t\t\t// we want to move focus to the first interactive element of the popover\n\t\t\t\t// so that the tab order of the DOM follows the visual order of the page\n\t\t\t\tswitch (e.key) {\n\t\t\t\t\tcase 'Tab':\n\t\t\t\t\t\tif (!e.shiftKey && disableFocusTrap) {\n\t\t\t\t\t\t\tif (document.activeElement === triggerRef?.current) {\n\t\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\t\tinteractiveElements[0].focus();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[disableFocusTrap, state.isOpen, interactiveElements]\n\t);\n\n\t/**\n\t * Sets up trigger event listeners to open and close the menu\n\t *\n\t */\n\tconst toggleMenuTrigger = React.useCallback(() => {\n\t\tif (disableClickToOpen || isTriggerDisabled()) return;\n\t\tsetState((prevState) => ({ actionType: 'click', isOpen: !prevState.isOpen }));\n\t}, [disableClickToOpen, isTriggerDisabled, setState]);\n\n\t/**\n\t * Used to display the menu when hovering over a menu item that has a submenu\n\t */\n\tconst showMenuHover = React.useCallback(() => {\n\t\tsetState({ actionType: 'click', isOpen: true });\n\t}, [setState]);\n\n\tconst hideMenuHover = React.useCallback(\n\t\t(event: MouseEvent) => {\n\t\t\t// event.relatedTarget is a property utilized in mouse-related events such as `mouseover` and `mouseout`\n\t\t\t// It signifies the element that was previously targeted before the current event occurred.\n\t\t\t//\n\t\t\t// For instance, in a `mouseover` event, `event.relatedTarget` refers to the\n\t\t\t// element the cursor was over before moving to the current element.\n\t\t\tconst relatedTarget = event.relatedTarget as Node;\n\n\t\t\t// If the related target is not a child of the menu, close the menu\n\t\t\t// This prevents the menu from closing when hovering over a submenu item or trigger\n\t\t\tif (\n\t\t\t\tmenuRef.current &&\n\t\t\t\t!menuRef.current.contains(relatedTarget) &&\n\t\t\t\ttriggerRef?.current &&\n\t\t\t\t!triggerRef?.current.contains(relatedTarget)\n\t\t\t) {\n\t\t\t\tsetState({ actionType: null, isOpen: false });\n\t\t\t}\n\t\t},\n\t\t[triggerRef, menuRef, setState]\n\t);\n\n\t/**\n\t * Focus management when someone is using a keyboard to navigate the menu\n\t *\n\t * @param e - keyboard event\n\t */\n\tconst handleMenuKey = (e: React.KeyboardEvent) => {\n\t\tif (state.isOpen) {\n\t\t\tswitch (e.key) {\n\t\t\t\tcase 'Escape':\n\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\ttriggerRef?.current?.focus();\n\t\t\t\t\tcloseMenu();\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Tab':\n\t\t\t\t\te.stopPropagation();\n\n\t\t\t\t\tif (disableFocusTrap) {\n\t\t\t\t\t\tconst first = interactiveElements[0];\n\t\t\t\t\t\tconst last = interactiveElements[interactiveElements.length - 1];\n\t\t\t\t\t\tconst isShiftKey = e.shiftKey;\n\n\t\t\t\t\t\t// If the first or last interactive element is focused, we want to move focus to the trigger\n\t\t\t\t\t\t// and close the menu. If the last iteractive element is focused, we are checking that the shift\n\t\t\t\t\t\t// key is not held down. Otherwise the popover will close when you press shift+tab on an element\n\t\t\t\t\t\t// that is not the first one.\n\t\t\t\t\t\tif (isShiftKey && document.activeElement === first) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\ttriggerRef?.current?.focus();\n\t\t\t\t\t\t\tif (!hasCloseButton) setState({ actionType: null, isOpen: false });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!isShiftKey && document.activeElement === last) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tfindAdjacentInteractiveElement(triggerRef, 'next')?.focus();\n\t\t\t\t\t\t\tif (!hasCloseButton) setState({ actionType: null, isOpen: false });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ArrowUp':\n\t\t\t\tcase 'ArrowDown':\n\t\t\t\tcase 'ArrowLeft':\n\t\t\t\tcase 'ArrowRight':\n\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * When focus trap is disabled, we need to handle moving focus back to the popover when you\n\t * shift+tab from the interactive element immediately after the trigger. This will allow us\n\t * to maintain a tab order that matches the visual order on the page.\n\t *\n\t * @param e - keyboard event\n\t */\n\tconst handleTriggerSiblingKey = (e: KeyboardEvent) => {\n\t\tif (state.isOpen && disableFocusTrap) {\n\t\t\tswitch (e.key) {\n\t\t\t\tcase 'Tab':\n\t\t\t\t\tif (e.shiftKey) {\n\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\tinteractiveElements[interactiveElements.length - 1].focus();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\tconst handleClose = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === 'Enter' || e.key === ' ') {\n\t\t\t\tcloseMenu();\n\t\t\t\tif (disableFocusTrap) triggerRef?.current?.focus();\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[closeMenu, disableFocusTrap]\n\t);\n\n\treturn {\n\t\thandleClose,\n\t\thandleMenuKey,\n\t\thandleTriggerSiblingKey,\n\t\thideMenuHover,\n\t\tshowMenuHover,\n\t\ttoggleMenuKey,\n\t\ttoggleMenuTrigger\n\t};\n};\n"],"names":["useMrlPopoverEventHandlers","_ref","closeMenu","isSubMenu","disableFocusTrap","disableClickToOpen","hasCloseButton","interactiveElements","menuRef","state","setState","triggerRef","isTriggerDisabled","toggleMenuKey","React","useCallback","e","isOpen","key","preventDefault","actionType","shiftKey","document","activeElement","current","focus","toggleMenuTrigger","prevState","showMenuHover","hideMenuHover","event","relatedTarget","contains","handleMenuKey","_triggerRef$current","stopPropagation","first","last","length","isShiftKey","_triggerRef$current2","_findAdjacentInteract","findAdjacentInteractiveElement","handleTriggerSiblingKey","handleClose","_triggerRef$current3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"use-mrl-popover-event-handlers.js","sources":["../../../../../../src/components/popover/MrlPopover/hooks/use-mrl-popover-event-handlers.ts"],"sourcesContent":["import * as React from 'react';\nimport { ActionState, ActionType } from '../../../menu';\nimport { MrlPopoverProps } from '../MrlPopover';\nimport { findAdjacentInteractiveElement, preventDefault } from '../../../../utils';\n\ntype UseMrlPopoverEventHandlersOptions = {\n\tcloseMenu: () => void;\n\tisSubMenu: MrlPopoverProps['isSubMenu'];\n\tdisableFocusTrap: MrlPopoverProps['disableFocusTrap'];\n\tdisableClickToOpen: MrlPopoverProps['disableClickToOpen'];\n\thasCloseButton: MrlPopoverProps['hasCloseButton'];\n\tinteractiveElements: HTMLElement[];\n\tmenuRef: React.RefObject<HTMLDivElement>;\n\tstate: ActionState;\n\tsetState: React.Dispatch<React.SetStateAction<ActionState>>;\n\ttriggerRef: MrlPopoverProps['triggerRef'];\n\tisTriggerDisabled: () => boolean;\n};\n\ntype UseMrlPopoverEventHandlersReturn = {\n\thandleClose: (e: React.KeyboardEvent<HTMLButtonElement>) => void;\n\thandleMenuKey: (e: React.KeyboardEvent) => void;\n\thandleTriggerSiblingKey: (e: KeyboardEvent) => void;\n\thideMenuHover: (e: MouseEvent) => void;\n\tshowMenuHover: () => void;\n\ttoggleMenuKey: (e: KeyboardEvent) => void;\n\ttoggleMenuTrigger: () => void;\n};\n\n/**\n * Creates all of the required event handlers for the MrlPopover component\n *\n * @param options configuration options\n * @returns all of the required event handlers\n */\nexport const useMrlPopoverEventHandlers = ({\n\tcloseMenu,\n\tisSubMenu,\n\tdisableFocusTrap,\n\tdisableClickToOpen,\n\thasCloseButton,\n\tinteractiveElements,\n\tmenuRef,\n\tstate,\n\tsetState,\n\ttriggerRef,\n\tisTriggerDisabled\n}: UseMrlPopoverEventHandlersOptions): UseMrlPopoverEventHandlersReturn => {\n\t/**\n\t * Sets up trigger event listeners to open and close the menu with a keyboard\n\t */\n\tconst toggleMenuKey = React.useCallback(\n\t\t(e: KeyboardEvent) => {\n\t\t\tif (!state.isOpen) {\n\t\t\t\tswitch (e.key) {\n\t\t\t\t\tcase 'ArrowRight':\n\t\t\t\t\t\tif (isSubMenu) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: 'click', isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'Enter':\n\t\t\t\t\tcase ' ':\n\t\t\t\t\t\tif (!disableClickToOpen && !isTriggerDisabled()) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: e.key as ActionType, isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'ArrowDown':\n\t\t\t\t\t\tif (!isSubMenu && !disableClickToOpen && !isTriggerDisabled()) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tsetState({ actionType: e.key as ActionType, isOpen: true });\n\t\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (state.isOpen) {\n\t\t\t\t// When focus is on the trigger and the popover is open, if a user presses \"tab\"\n\t\t\t\t// we want to move focus to the first interactive element of the popover\n\t\t\t\t// so that the tab order of the DOM follows the visual order of the page\n\t\t\t\tswitch (e.key) {\n\t\t\t\t\tcase 'Tab':\n\t\t\t\t\t\tif (!e.shiftKey && disableFocusTrap) {\n\t\t\t\t\t\t\tif (document.activeElement === triggerRef?.current) {\n\t\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\t\tinteractiveElements[0].focus();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[disableFocusTrap, state.isOpen, interactiveElements]\n\t);\n\n\t/**\n\t * Sets up trigger event listeners to open and close the menu\n\t *\n\t */\n\tconst toggleMenuTrigger = React.useCallback(() => {\n\t\tif (disableClickToOpen || isTriggerDisabled()) return;\n\t\tsetState((prevState) => ({ actionType: 'click', isOpen: !prevState.isOpen }));\n\t}, [disableClickToOpen, isTriggerDisabled, setState]);\n\n\t/**\n\t * Used to display the menu when hovering over a menu item that has a submenu\n\t */\n\tconst showMenuHover = React.useCallback(() => {\n\t\tsetState({ actionType: 'click', isOpen: true });\n\t}, [setState]);\n\n\tconst hideMenuHover = React.useCallback(\n\t\t(event: MouseEvent) => {\n\t\t\t// event.relatedTarget is a property utilized in mouse-related events such as `mouseover` and `mouseout`\n\t\t\t// It signifies the element that was previously targeted before the current event occurred.\n\t\t\t//\n\t\t\t// For instance, in a `mouseover` event, `event.relatedTarget` refers to the\n\t\t\t// element the cursor was over before moving to the current element.\n\t\t\tconst relatedTarget = event.relatedTarget as Node;\n\n\t\t\t// If the related target is not a child of the menu, close the menu\n\t\t\t// This prevents the menu from closing when hovering over a submenu item or trigger\n\t\t\tif (\n\t\t\t\tmenuRef.current &&\n\t\t\t\t!menuRef.current.contains(relatedTarget) &&\n\t\t\t\ttriggerRef?.current &&\n\t\t\t\t!triggerRef?.current.contains(relatedTarget)\n\t\t\t) {\n\t\t\t\tsetState({ actionType: null, isOpen: false });\n\t\t\t}\n\t\t},\n\t\t[triggerRef, menuRef, setState]\n\t);\n\n\t/**\n\t * Focus management when someone is using a keyboard to navigate the menu\n\t *\n\t * @param e - keyboard event\n\t */\n\tconst handleMenuKey = (e: React.KeyboardEvent) => {\n\t\tif (state.isOpen) {\n\t\t\tswitch (e.key) {\n\t\t\t\tcase 'Escape':\n\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\ttriggerRef?.current?.focus();\n\t\t\t\t\tcloseMenu();\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'Tab':\n\t\t\t\t\te.stopPropagation();\n\n\t\t\t\t\tif (disableFocusTrap) {\n\t\t\t\t\t\tconst first = interactiveElements[0];\n\t\t\t\t\t\tconst last = interactiveElements[interactiveElements.length - 1];\n\t\t\t\t\t\tconst isShiftKey = e.shiftKey;\n\n\t\t\t\t\t\t// If the first or last interactive element is focused, we want to move focus to the trigger\n\t\t\t\t\t\t// and close the menu. If the last iteractive element is focused, we are checking that the shift\n\t\t\t\t\t\t// key is not held down. Otherwise the popover will close when you press shift+tab on an element\n\t\t\t\t\t\t// that is not the first one.\n\t\t\t\t\t\tif (isShiftKey && document.activeElement === first) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\ttriggerRef?.current?.focus();\n\t\t\t\t\t\t\tif (!hasCloseButton) setState({ actionType: null, isOpen: false });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!isShiftKey && document.activeElement === last) {\n\t\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\t\tfindAdjacentInteractiveElement(triggerRef, 'next')?.focus();\n\t\t\t\t\t\t\tif (!hasCloseButton) setState({ actionType: null, isOpen: false });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'ArrowUp':\n\t\t\t\tcase 'ArrowDown':\n\t\t\t\tcase 'ArrowLeft':\n\t\t\t\tcase 'ArrowRight':\n\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * When focus trap is disabled, we need to handle moving focus back to the popover when you\n\t * shift+tab from the interactive element immediately after the trigger. This will allow us\n\t * to maintain a tab order that matches the visual order on the page.\n\t *\n\t * @param e - keyboard event\n\t */\n\tconst handleTriggerSiblingKey = (e: KeyboardEvent) => {\n\t\tif (state.isOpen && disableFocusTrap) {\n\t\t\tswitch (e.key) {\n\t\t\t\tcase 'Tab':\n\t\t\t\t\tif (e.shiftKey) {\n\t\t\t\t\t\tpreventDefault(e);\n\t\t\t\t\t\tinteractiveElements[interactiveElements.length - 1].focus();\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\n\tconst handleClose = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === 'Enter' || e.key === ' ') {\n\t\t\t\tcloseMenu();\n\t\t\t\tif (disableFocusTrap) triggerRef?.current?.focus();\n\t\t\t}\n\t\t},\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t[closeMenu, disableFocusTrap]\n\t);\n\n\treturn {\n\t\thandleClose,\n\t\thandleMenuKey,\n\t\thandleTriggerSiblingKey,\n\t\thideMenuHover,\n\t\tshowMenuHover,\n\t\ttoggleMenuKey,\n\t\ttoggleMenuTrigger\n\t};\n};\n"],"names":["useMrlPopoverEventHandlers","_ref","closeMenu","isSubMenu","disableFocusTrap","disableClickToOpen","hasCloseButton","interactiveElements","menuRef","state","setState","triggerRef","isTriggerDisabled","toggleMenuKey","React","useCallback","e","isOpen","key","preventDefault","actionType","shiftKey","document","activeElement","current","focus","toggleMenuTrigger","prevState","showMenuHover","hideMenuHover","event","relatedTarget","contains","handleMenuKey","_triggerRef$current","stopPropagation","first","last","length","isShiftKey","_triggerRef$current2","_findAdjacentInteract","findAdjacentInteractiveElement","handleTriggerSiblingKey","handleClose","_triggerRef$current3"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* @param alignment - alignment of the menu
|
|
8
8
|
* @returns - data-point attribute value
|
|
9
9
|
*/
|
|
10
|
-
var getDataPoint =
|
|
10
|
+
var getDataPoint = (position, alignment) => {
|
|
11
11
|
return "".concat(position, "-").concat(alignment);
|
|
12
12
|
};
|
|
13
13
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-data-point.js","sources":["../../../../../../src/components/popover/MrlPopover/utilities/get-data-point.ts"],"sourcesContent":["import { MenuAlignment, MenuPosition } from '../../../menu';\n\n/**\n * Returns the data-point attribute for the popover pointer\n *\n * @param position - position of the menu\n * @param alignment - alignment of the menu\n * @returns - data-point attribute value\n */\nexport const getDataPoint = (position: MenuPosition, alignment: MenuAlignment): string => {\n\treturn `${position}-${alignment}`;\n};\n"],"names":["getDataPoint","position","alignment","concat"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":"get-data-point.js","sources":["../../../../../../src/components/popover/MrlPopover/utilities/get-data-point.ts"],"sourcesContent":["import { MenuAlignment, MenuPosition } from '../../../menu';\n\n/**\n * Returns the data-point attribute for the popover pointer\n *\n * @param position - position of the menu\n * @param alignment - alignment of the menu\n * @returns - data-point attribute value\n */\nexport const getDataPoint = (position: MenuPosition, alignment: MenuAlignment): string => {\n\treturn `${position}-${alignment}`;\n};\n"],"names":["getDataPoint","position","alignment","concat"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,YAAY,GAAGA,CAACC,QAAsB,EAAEC,SAAwB,KAAa;AACzF,EAAA,OAAA,EAAA,CAAAC,MAAA,CAAUF,QAAQ,EAAA,GAAA,CAAA,CAAAE,MAAA,CAAID,SAAS,CAAA;AAChC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-offset.js","sources":["../../../../../../src/components/popover/MrlPopover/utilities/get-offset.ts"],"sourcesContent":["import { MenuPosition } from '../../../menu';\n\n/**\n * Returns a value in PX for the offset of the popover from the menu at different positions\n *\n * @param position - position of the menu\n * @param point - if the menu has a pointer\n * @returns - offset in PX\n */\nexport const getOffset = (position: MenuPosition, point: boolean): number => {\n\tif (point) {\n\t\tif (position === 'top' || position === 'bottom') {\n\t\t\treturn 7;\n\t\t} else if (position === 'left' || position === 'right') {\n\t\t\treturn 7;\n\t\t}\n\t}\n\n\treturn 10;\n};\n"],"names":["getOffset","position","point"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":"get-offset.js","sources":["../../../../../../src/components/popover/MrlPopover/utilities/get-offset.ts"],"sourcesContent":["import { MenuPosition } from '../../../menu';\n\n/**\n * Returns a value in PX for the offset of the popover from the menu at different positions\n *\n * @param position - position of the menu\n * @param point - if the menu has a pointer\n * @returns - offset in PX\n */\nexport const getOffset = (position: MenuPosition, point: boolean): number => {\n\tif (point) {\n\t\tif (position === 'top' || position === 'bottom') {\n\t\t\treturn 7;\n\t\t} else if (position === 'left' || position === 'right') {\n\t\t\treturn 7;\n\t\t}\n\t}\n\n\treturn 10;\n};\n"],"names":["getOffset","position","point"],"mappings":";;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;IACaA,SAAS,GAAGA,CAACC,QAAsB,EAAEC,KAAc,KAAa;AAC5E,EAAA,IAAIA,KAAK,EAAE;AACV,IAAA,IAAID,QAAQ,KAAK,KAAK,IAAIA,QAAQ,KAAK,QAAQ,EAAE;AAChD,MAAA,OAAO,CAAC;IACT,CAAC,MAAM,IAAIA,QAAQ,KAAK,MAAM,IAAIA,QAAQ,KAAK,OAAO,EAAE;AACvD,MAAA,OAAO,CAAC;AACT,IAAA;AACD,EAAA;AAEA,EAAA,OAAO,EAAE;AACV;;;;"}
|
|
@@ -5,7 +5,8 @@ var React = require('react');
|
|
|
5
5
|
var reactDom = require('react-dom');
|
|
6
6
|
var index = require('../../utils/layers/index.js');
|
|
7
7
|
|
|
8
|
-
function
|
|
8
|
+
function _interopNamespace(e) {
|
|
9
|
+
if (e && e.__esModule) return e;
|
|
9
10
|
var n = Object.create(null);
|
|
10
11
|
if (e) {
|
|
11
12
|
Object.keys(e).forEach(function (k) {
|
|
@@ -22,7 +23,7 @@ function _interopNamespaceDefault(e) {
|
|
|
22
23
|
return Object.freeze(n);
|
|
23
24
|
}
|
|
24
25
|
|
|
25
|
-
var React__namespace = /*#__PURE__*/
|
|
26
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
26
27
|
|
|
27
28
|
var _excluded = ["children", "className", "id", "layer"];
|
|
28
29
|
var MRL_PORTAL_ID = index.PORTAL_LAYERS.ROOT.name;
|
|
@@ -34,7 +35,7 @@ var MRL_PORTAL_ID = index.PORTAL_LAYERS.ROOT.name;
|
|
|
34
35
|
* @param PortalProps Portal only takes children. Contact the platform team if you need to extend this.
|
|
35
36
|
* @returns MrlPortal component
|
|
36
37
|
*/
|
|
37
|
-
var MrlPortal =
|
|
38
|
+
var MrlPortal = _ref => {
|
|
38
39
|
var children = _ref.children,
|
|
39
40
|
className = _ref.className,
|
|
40
41
|
id = _ref.id,
|
|
@@ -47,7 +48,7 @@ var MrlPortal = function MrlPortal(_ref) {
|
|
|
47
48
|
var element = 'div';
|
|
48
49
|
var portalId = (layer === null || layer === void 0 ? void 0 : layer.name) || id || MRL_PORTAL_ID;
|
|
49
50
|
var portalLayer = layer || index.PORTAL_LAYERS.ROOT;
|
|
50
|
-
React__namespace.useLayoutEffect(
|
|
51
|
+
React__namespace.useLayoutEffect(() => {
|
|
51
52
|
var portal = document.getElementById(portalId);
|
|
52
53
|
var dataQa = remainingProps['data-qa'] || id || index.PORTAL_LAYERS.ROOT.name;
|
|
53
54
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlPortal.js","sources":["../../../../src/components/portal/MrlPortal.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport { PORTAL_LAYERS } from '../../utils/layers';\n\ntype PortalLayer = (typeof PORTAL_LAYERS)[keyof typeof PORTAL_LAYERS];\nexport interface PortalProps extends React.HTMLAttributes<HTMLDivElement> {\n\tchildren: React.ReactNode;\n\tclassName?: string;\n\t['data-qa']?: string;\n\tid?: string;\n\tlayer?: PortalLayer;\n}\n\nexport const MRL_PORTAL_ID = PORTAL_LAYERS.ROOT.name;\n\n/**\n * Dynamically creates a single portal and send your children to the portal.\n * Where they will live outside of the normal document flow\n *\n * @param PortalProps Portal only takes children. Contact the platform team if you need to extend this.\n * @returns MrlPortal component\n */\nexport const MrlPortal = ({\n\tchildren,\n\tclassName,\n\tid,\n\tlayer,\n\t...remainingProps\n}: PortalProps): React.ReactElement | null => {\n\tconst [portalElement, setPortalElement] = React.useState<HTMLElement | null>(null);\n\tconst element = 'div';\n\tconst portalId = layer?.name || id || MRL_PORTAL_ID;\n\tconst portalLayer = layer || PORTAL_LAYERS.ROOT;\n\n\tReact.useLayoutEffect(() => {\n\t\tlet portal = document.getElementById(portalId);\n\t\tconst dataQa = remainingProps['data-qa'] || id || PORTAL_LAYERS.ROOT.name;\n\n\t\t// create the portal on the fly and reuse the same one each time.\n\t\tif (!portal) {\n\t\t\tportal = document.createElement(element);\n\t\t\tportal.setAttribute('id', portalId);\n\t\t\tportal.setAttribute('data-qa', dataQa);\n\t\t\tportal.setAttribute('data-testid', dataQa);\n\t\t\tif (className) portal.setAttribute('class', className);\n\t\t\tdocument.body.appendChild(portal);\n\t\t}\n\n\t\tsetPortalElement(portal);\n\t}, [\n\t\tportalId,\n\t\tremainingProps,\n\t\tid,\n\t\tclassName\n\t]);\n\n\t/**\n\t * Sets z-index of the first child element of the portal to the layer's z-index\n\t *\n\t * TODO: update to also accept a 'layerId' that will override the default layer\n\t * with the provided layerId\n\t */\n\tif (!portalElement) return null;\n\n\tconst childrenArray = React.Children.toArray(children);\n\tif (childrenArray.length > 0 && portalElement) {\n\t\tconst firstChildElement = portalElement.firstElementChild as HTMLElement | null;\n\t\tif (firstChildElement) {\n\t\t\tfirstChildElement.style.zIndex = `${portalLayer.zIndex}`;\n\t\t}\n\t}\n\n\t// state will be null on the very first render.\n\tif (!portalElement) return null;\n\n\treturn createPortal(children, portalElement);\n};\n"],"names":["MRL_PORTAL_ID","PORTAL_LAYERS","ROOT","name","MrlPortal","_ref","children","className","id","layer","remainingProps","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","portalElement","setPortalElement","element","portalId","portalLayer","useLayoutEffect","portal","document","getElementById","dataQa","createElement","setAttribute","body","appendChild","childrenArray","Children","toArray","length","firstChildElement","firstElementChild","style","zIndex","concat","createPortal"],"mappings":"
|
|
1
|
+
{"version":3,"file":"MrlPortal.js","sources":["../../../../src/components/portal/MrlPortal.tsx"],"sourcesContent":["import * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport { PORTAL_LAYERS } from '../../utils/layers';\n\ntype PortalLayer = (typeof PORTAL_LAYERS)[keyof typeof PORTAL_LAYERS];\nexport interface PortalProps extends React.HTMLAttributes<HTMLDivElement> {\n\tchildren: React.ReactNode;\n\tclassName?: string;\n\t['data-qa']?: string;\n\tid?: string;\n\tlayer?: PortalLayer;\n}\n\nexport const MRL_PORTAL_ID = PORTAL_LAYERS.ROOT.name;\n\n/**\n * Dynamically creates a single portal and send your children to the portal.\n * Where they will live outside of the normal document flow\n *\n * @param PortalProps Portal only takes children. Contact the platform team if you need to extend this.\n * @returns MrlPortal component\n */\nexport const MrlPortal = ({\n\tchildren,\n\tclassName,\n\tid,\n\tlayer,\n\t...remainingProps\n}: PortalProps): React.ReactElement | null => {\n\tconst [portalElement, setPortalElement] = React.useState<HTMLElement | null>(null);\n\tconst element = 'div';\n\tconst portalId = layer?.name || id || MRL_PORTAL_ID;\n\tconst portalLayer = layer || PORTAL_LAYERS.ROOT;\n\n\tReact.useLayoutEffect(() => {\n\t\tlet portal = document.getElementById(portalId);\n\t\tconst dataQa = remainingProps['data-qa'] || id || PORTAL_LAYERS.ROOT.name;\n\n\t\t// create the portal on the fly and reuse the same one each time.\n\t\tif (!portal) {\n\t\t\tportal = document.createElement(element);\n\t\t\tportal.setAttribute('id', portalId);\n\t\t\tportal.setAttribute('data-qa', dataQa);\n\t\t\tportal.setAttribute('data-testid', dataQa);\n\t\t\tif (className) portal.setAttribute('class', className);\n\t\t\tdocument.body.appendChild(portal);\n\t\t}\n\n\t\tsetPortalElement(portal);\n\t}, [\n\t\tportalId,\n\t\tremainingProps,\n\t\tid,\n\t\tclassName\n\t]);\n\n\t/**\n\t * Sets z-index of the first child element of the portal to the layer's z-index\n\t *\n\t * TODO: update to also accept a 'layerId' that will override the default layer\n\t * with the provided layerId\n\t */\n\tif (!portalElement) return null;\n\n\tconst childrenArray = React.Children.toArray(children);\n\tif (childrenArray.length > 0 && portalElement) {\n\t\tconst firstChildElement = portalElement.firstElementChild as HTMLElement | null;\n\t\tif (firstChildElement) {\n\t\t\tfirstChildElement.style.zIndex = `${portalLayer.zIndex}`;\n\t\t}\n\t}\n\n\t// state will be null on the very first render.\n\tif (!portalElement) return null;\n\n\treturn createPortal(children, portalElement);\n};\n"],"names":["MRL_PORTAL_ID","PORTAL_LAYERS","ROOT","name","MrlPortal","_ref","children","className","id","layer","remainingProps","_objectWithoutProperties","_excluded","_React$useState","React","useState","_React$useState2","_slicedToArray","portalElement","setPortalElement","element","portalId","portalLayer","useLayoutEffect","portal","document","getElementById","dataQa","createElement","setAttribute","body","appendChild","childrenArray","Children","toArray","length","firstChildElement","firstElementChild","style","zIndex","concat","createPortal"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;IAaaA,aAAa,GAAGC,mBAAa,CAACC,IAAI,CAACC;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMC,SAAS,GAAGC,IAAA,IAMqB;AAAA,EAAA,IAL7CC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRC,SAAS,GAAAF,IAAA,CAATE,SAAS;IACTC,EAAE,GAAAH,IAAA,CAAFG,EAAE;IACFC,KAAK,GAAAJ,IAAA,CAALI,KAAK;AACFC,IAAAA,cAAc,GAAAC,iDAAA,CAAAN,IAAA,EAAAO,SAAA,CAAA;AAEjB,EAAA,IAAAC,eAAA,GAA0CC,gBAAK,CAACC,QAAQ,CAAqB,IAAI,CAAC;IAAAC,gBAAA,GAAAC,uCAAA,CAAAJ,eAAA,EAAA,CAAA,CAAA;AAA3EK,IAAAA,aAAa,GAAAF,gBAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,gBAAgB,GAAAH,gBAAA,CAAA,CAAA,CAAA;EACtC,IAAMI,OAAO,GAAG,KAAK;AACrB,EAAA,IAAMC,QAAQ,GAAG,CAAAZ,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEN,IAAI,KAAIK,EAAE,IAAIR,aAAa;AACnD,EAAA,IAAMsB,WAAW,GAAGb,KAAK,IAAIR,mBAAa,CAACC,IAAI;EAE/CY,gBAAK,CAACS,eAAe,CAAC,MAAM;AAC3B,IAAA,IAAIC,MAAM,GAAGC,QAAQ,CAACC,cAAc,CAACL,QAAQ,CAAC;AAC9C,IAAA,IAAMM,MAAM,GAAGjB,cAAc,CAAC,SAAS,CAAC,IAAIF,EAAE,IAAIP,mBAAa,CAACC,IAAI,CAACC,IAAI;;AAEzE;IACA,IAAI,CAACqB,MAAM,EAAE;AACZA,MAAAA,MAAM,GAAGC,QAAQ,CAACG,aAAa,CAACR,OAAO,CAAC;AACxCI,MAAAA,MAAM,CAACK,YAAY,CAAC,IAAI,EAAER,QAAQ,CAAC;AACnCG,MAAAA,MAAM,CAACK,YAAY,CAAC,SAAS,EAAEF,MAAM,CAAC;AACtCH,MAAAA,MAAM,CAACK,YAAY,CAAC,aAAa,EAAEF,MAAM,CAAC;MAC1C,IAAIpB,SAAS,EAAEiB,MAAM,CAACK,YAAY,CAAC,OAAO,EAAEtB,SAAS,CAAC;AACtDkB,MAAAA,QAAQ,CAACK,IAAI,CAACC,WAAW,CAACP,MAAM,CAAC;AAClC,IAAA;IAEAL,gBAAgB,CAACK,MAAM,CAAC;EACzB,CAAC,EAAE,CACFH,QAAQ,EACRX,cAAc,EACdF,EAAE,EACFD,SAAS,CACT,CAAC;;AAEF;AACD;AACA;AACA;AACA;AACA;AACC,EAAA,IAAI,CAACW,aAAa,EAAE,OAAO,IAAI;EAE/B,IAAMc,aAAa,GAAGlB,gBAAK,CAACmB,QAAQ,CAACC,OAAO,CAAC5B,QAAQ,CAAC;AACtD,EAAA,IAAI0B,aAAa,CAACG,MAAM,GAAG,CAAC,IAAIjB,aAAa,EAAE;AAC9C,IAAA,IAAMkB,iBAAiB,GAAGlB,aAAa,CAACmB,iBAAuC;AAC/E,IAAA,IAAID,iBAAiB,EAAE;MACtBA,iBAAiB,CAACE,KAAK,CAACC,MAAM,GAAA,EAAA,CAAAC,MAAA,CAAMlB,WAAW,CAACiB,MAAM,CAAE;AACzD,IAAA;AACD,EAAA;;AAEA;AACA,EAAA,IAAI,CAACrB,aAAa,EAAE,OAAO,IAAI;AAE/B,EAAA,oBAAOuB,qBAAY,CAACnC,QAAQ,EAAEY,aAAa,CAAC;AAC7C;;;;;"}
|