@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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlBadgeNotification.js","sources":["../../../../../src/components/badge/MrlBadgeNotification/MrlBadgeNotification.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\n\nimport { MrlComponentProps } from '../../../utils';\nimport styles from './MrlBadgeNotification.module.scss';\n\nexport type MrlBadgeNotificationKinds = 'general' | 'info';\n\nexport interface MrlBadgeNotificationProps\n\textends Omit<MrlComponentProps, 'style' | 'attrs'>,\n\t\tReact.ComponentProps<'div'> {\n\tclassName?: string;\n\tkind?: MrlBadgeNotificationKinds;\n\t/**\n\t * A string of text to tell screen reader users what type of notification this is.\n\t * Defaults to 'notification'.\n\t */\n\tnotificationText?: string;\n\t/**\n\t * Used to turn a notification from a hint to numeric.\n\t * NOTE: Must pass a `number`, not a `string`.\n\t */\n\tnumber?: number;\n}\n\n/**\n * Badge notifications are a common user interface element that can be used to\n * draw attention to new or unread content, alerts, or updates.\n * @param props - component props\n * @returns a MrlBadgeNotification React component.\n */\nexport const MrlBadgeNotification = ({\n\tclassName = '',\n\tkind = 'general',\n\tnotificationText = 'notification',\n\tnumber,\n\t...remainingProps\n}: MrlBadgeNotificationProps): JSX.Element => {\n\tconst allClasses = classnames(\n\t\t'MrlBadgeNotification',\n\t\t{\n\t\t\t[styles['MrlBadgeNotification']]: true,\n\t\t\t[styles[`MrlBadgeNotification--${kind}`]]: kind !== 'general',\n\t\t\t[styles['MrlBadgeNotification--numeric']]: Boolean(number)\n\t\t},\n\t\tclassName\n\t);\n\n\treturn (\n\t\t<div {...remainingProps} className={allClasses} aria-label={`New ${notificationText}`}>\n\t\t\t{number ? number : ''}\n\t\t</div>\n\t);\n};\n"],"names":["MrlBadgeNotification","_ref","_ref$className","className","_ref$kind","kind","_ref$notificationText","notificationText","number","remainingProps","_objectWithoutProperties","_excluded","allClasses","classnames","
|
|
1
|
+
{"version":3,"file":"MrlBadgeNotification.js","sources":["../../../../../src/components/badge/MrlBadgeNotification/MrlBadgeNotification.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\n\nimport { MrlComponentProps } from '../../../utils';\nimport styles from './MrlBadgeNotification.module.scss';\n\nexport type MrlBadgeNotificationKinds = 'general' | 'info';\n\nexport interface MrlBadgeNotificationProps\n\textends Omit<MrlComponentProps, 'style' | 'attrs'>,\n\t\tReact.ComponentProps<'div'> {\n\tclassName?: string;\n\tkind?: MrlBadgeNotificationKinds;\n\t/**\n\t * A string of text to tell screen reader users what type of notification this is.\n\t * Defaults to 'notification'.\n\t */\n\tnotificationText?: string;\n\t/**\n\t * Used to turn a notification from a hint to numeric.\n\t * NOTE: Must pass a `number`, not a `string`.\n\t */\n\tnumber?: number;\n}\n\n/**\n * Badge notifications are a common user interface element that can be used to\n * draw attention to new or unread content, alerts, or updates.\n * @param props - component props\n * @returns a MrlBadgeNotification React component.\n */\nexport const MrlBadgeNotification = ({\n\tclassName = '',\n\tkind = 'general',\n\tnotificationText = 'notification',\n\tnumber,\n\t...remainingProps\n}: MrlBadgeNotificationProps): JSX.Element => {\n\tconst allClasses = classnames(\n\t\t'MrlBadgeNotification',\n\t\t{\n\t\t\t[styles['MrlBadgeNotification']]: true,\n\t\t\t[styles[`MrlBadgeNotification--${kind}`]]: kind !== 'general',\n\t\t\t[styles['MrlBadgeNotification--numeric']]: Boolean(number)\n\t\t},\n\t\tclassName\n\t);\n\n\treturn (\n\t\t<div {...remainingProps} className={allClasses} aria-label={`New ${notificationText}`}>\n\t\t\t{number ? number : ''}\n\t\t</div>\n\t);\n};\n"],"names":["MrlBadgeNotification","_ref","_ref$className","className","_ref$kind","kind","_ref$notificationText","notificationText","number","remainingProps","_objectWithoutProperties","_excluded","allClasses","classnames","styles","concat","Boolean","React","createElement","_extends"],"mappings":";;;;;;AAyBA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,oBAAoB,GAAGC,IAAA,IAMU;AAAA,EAAA,IAAAC,cAAA,GAAAD,IAAA,CAL7CE,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,cAAA;IAAAE,SAAA,GAAAH,IAAA,CACdI,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,SAAA;IAAAE,qBAAA,GAAAL,IAAA,CAChBM,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,cAAc,GAAAA,qBAAA;IACjCE,MAAM,GAAAP,IAAA,CAANO,MAAM;AACHC,IAAAA,cAAc,GAAAC,wBAAA,CAAAT,IAAA,EAAAU,SAAA,CAAA;AAEjB,EAAA,IAAMC,UAAU,GAAGC,UAAU,CAC5B,sBAAsB,EACtB;AACC,IAAA,CAACC,MAAM,CAAC,sBAAsB,CAAC,GAAG,IAAI;IACtC,CAACA,MAAM,0BAAAC,MAAA,CAA0BV,IAAI,CAAA,CAAG,GAAGA,IAAI,KAAK,SAAS;AAC7D,IAAA,CAACS,MAAM,CAAC,+BAA+B,CAAC,GAAGE,OAAO,CAACR,MAAM;GACzD,EACDL,SACD,CAAC;AAED,EAAA,oBACCc,KAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,QAAA,KAASV,cAAc,EAAA;AAAEN,IAAAA,SAAS,EAAES,UAAW;IAAC,YAAA,EAAA,MAAA,CAAAG,MAAA,CAAmBR,gBAAgB;AAAG,GAAA,CAAA,EACpFC,MAAM,GAAGA,MAAM,GAAG,EACf,CAAC;AAER;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { Link } from 'react-router-dom';
|
|
@@ -22,7 +22,7 @@ function MrlBreadcrumbItem(props) {
|
|
|
22
22
|
_props$isTruncated = props.isTruncated,
|
|
23
23
|
isTruncated = _props$isTruncated === void 0 ? false : _props$isTruncated,
|
|
24
24
|
rest = _objectWithoutProperties(props, _excluded);
|
|
25
|
-
var breadcrumbItem = React.useMemo(
|
|
25
|
+
var breadcrumbItem = React.useMemo(() => {
|
|
26
26
|
if (isSelected) {
|
|
27
27
|
// eslint-disable-next-line jsx-a11y/anchor-is-valid
|
|
28
28
|
return /*#__PURE__*/React.createElement("a", {
|
|
@@ -33,12 +33,15 @@ function MrlBreadcrumbItem(props) {
|
|
|
33
33
|
return /*#__PURE__*/React.createElement("a", {
|
|
34
34
|
href: link
|
|
35
35
|
}, text);
|
|
36
|
-
} else if (
|
|
36
|
+
} else if (typeof link === 'object') {
|
|
37
37
|
return /*#__PURE__*/React.createElement(Link, link, text);
|
|
38
38
|
}
|
|
39
39
|
}, [link, text, isSelected]);
|
|
40
40
|
return /*#__PURE__*/React.createElement("li", _extends({}, rest, {
|
|
41
|
-
className: classnames(styles['MrlBreadcrumbItem'], 'MrlBreadcrumbItem',
|
|
41
|
+
className: classnames(styles['MrlBreadcrumbItem'], 'MrlBreadcrumbItem', {
|
|
42
|
+
[styles['MrlBreadcrumbItem--selected']]: isSelected,
|
|
43
|
+
['MrlBreadcrumbItem--selected']: isSelected
|
|
44
|
+
})
|
|
42
45
|
}), isTruncated && /*#__PURE__*/React.createElement("span", {
|
|
43
46
|
className: classnames(styles['MrlBreadcrumbItem--icon'])
|
|
44
47
|
}, /*#__PURE__*/React.createElement(MrlSvg, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlBreadcrumbItem.js","sources":["../../../../../src/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.tsx"],"sourcesContent":["/* eslint-disable no-mixed-spaces-and-tabs */\nimport * as React from 'react';\nimport classnames from 'classnames';\nimport { Link } from 'react-router-dom';\nimport styles from './MrlBreadcrumbItem.module.scss';\nimport { MrlSvg } from '../../svg';\nimport { more } from '@muraldevkit/ds-icons';\nimport { MrlBreadcrumbSeparator } from '../MrlBreadcrumbSeparator';\n\nexport type BreadcrumbItemLink =\n\t| {\n\t\t\ttext: string;\n\t\t\tlink: string;\n\t }\n\t| {\n\t\t\ttext: string;\n\t\t\tlink: React.ComponentPropsWithoutRef<typeof Link>;\n\t };\n\nexport type BreadcrumbItem = {\n\tisSelected?: boolean;\n\thasSeparator?: boolean;\n\tisTruncated?: boolean;\n} & BreadcrumbItemLink;\n\nexport interface MrlBreadcrumbItemProps extends React.ComponentPropsWithRef<'li'> {\n\t/**\n\t * Children to be rendered within the component\n\t */\n\tchildren?: React.ReactNode;\n\n\t/**\n\t * Determines whether a separator should be displayed after this breadcrumb item.\n\t */\n\thasSeparator?: BreadcrumbItem['hasSeparator'];\n\n\t/**\n\t * Indicates whether this breadcrumb item represents the currently selected or\n\t * active page.\n\t */\n\tisSelected?: BreadcrumbItem['isSelected'];\n\n\t/**\n\t * Specifies whether the text content of this breadcrumb item should be truncated\n\t * if it exceeds a certain width. This is useful for handling long page titles\n\t * or labels within the breadcrumb.\n\t */\n\tisTruncated?: boolean;\n\n\tlink?: BreadcrumbItem['link'];\n\ttext?: BreadcrumbItem['text'];\n}\n\n/**\n * MrlBreadcrumbItem component.\n * @param props The MrlBreadcrumbItem component properties.\n * @returns The MrlBreadcrumbItem component.\n */\nexport function MrlBreadcrumbItem(props: MrlBreadcrumbItemProps): JSX.Element {\n\tconst { link, text, isSelected, hasSeparator = true, isTruncated = false, ...rest } = props;\n\n\tconst breadcrumbItem = React.useMemo(() => {\n\t\tif (isSelected) {\n\t\t\t// eslint-disable-next-line jsx-a11y/anchor-is-valid\n\t\t\treturn <a aria-current=\"page\">{text}</a>;\n\t\t}\n\n\t\tif (typeof link === 'string') {\n\t\t\treturn <a href={link}>{text}</a>;\n\t\t} else if (typeof link === 'object') {\n\t\t\treturn <Link {...link}>{text}</Link>;\n\t\t}\n\t}, [link, text, isSelected]);\n\n\treturn (\n\t\t<li\n\t\t\t{...rest}\n\t\t\tclassName={classnames(styles['MrlBreadcrumbItem'], 'MrlBreadcrumbItem', {\n\t\t\t\t[styles['MrlBreadcrumbItem--selected']]: isSelected,\n\t\t\t\t['MrlBreadcrumbItem--selected']: isSelected\n\t\t\t})}\n\t\t>\n\t\t\t{isTruncated && (\n\t\t\t\t<span className={classnames(styles['MrlBreadcrumbItem--icon'])}>\n\t\t\t\t\t<MrlSvg size=\"auto\" svg={more} />\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t{!isTruncated && breadcrumbItem}\n\t\t\t{hasSeparator && <MrlBreadcrumbSeparator />}\n\t\t</li>\n\t);\n}\n"],"names":["MrlBreadcrumbItem","props","link","text","isSelected","_props$hasSeparator","hasSeparator","_props$isTruncated","isTruncated","rest","_objectWithoutProperties","_excluded","breadcrumbItem","React","useMemo","createElement","href","
|
|
1
|
+
{"version":3,"file":"MrlBreadcrumbItem.js","sources":["../../../../../src/components/breadcrumb/MrlBreadcrumbItem/MrlBreadcrumbItem.tsx"],"sourcesContent":["/* eslint-disable no-mixed-spaces-and-tabs */\nimport * as React from 'react';\nimport classnames from 'classnames';\nimport { Link } from 'react-router-dom';\nimport styles from './MrlBreadcrumbItem.module.scss';\nimport { MrlSvg } from '../../svg';\nimport { more } from '@muraldevkit/ds-icons';\nimport { MrlBreadcrumbSeparator } from '../MrlBreadcrumbSeparator';\n\nexport type BreadcrumbItemLink =\n\t| {\n\t\t\ttext: string;\n\t\t\tlink: string;\n\t }\n\t| {\n\t\t\ttext: string;\n\t\t\tlink: React.ComponentPropsWithoutRef<typeof Link>;\n\t };\n\nexport type BreadcrumbItem = {\n\tisSelected?: boolean;\n\thasSeparator?: boolean;\n\tisTruncated?: boolean;\n} & BreadcrumbItemLink;\n\nexport interface MrlBreadcrumbItemProps extends React.ComponentPropsWithRef<'li'> {\n\t/**\n\t * Children to be rendered within the component\n\t */\n\tchildren?: React.ReactNode;\n\n\t/**\n\t * Determines whether a separator should be displayed after this breadcrumb item.\n\t */\n\thasSeparator?: BreadcrumbItem['hasSeparator'];\n\n\t/**\n\t * Indicates whether this breadcrumb item represents the currently selected or\n\t * active page.\n\t */\n\tisSelected?: BreadcrumbItem['isSelected'];\n\n\t/**\n\t * Specifies whether the text content of this breadcrumb item should be truncated\n\t * if it exceeds a certain width. This is useful for handling long page titles\n\t * or labels within the breadcrumb.\n\t */\n\tisTruncated?: boolean;\n\n\tlink?: BreadcrumbItem['link'];\n\ttext?: BreadcrumbItem['text'];\n}\n\n/**\n * MrlBreadcrumbItem component.\n * @param props The MrlBreadcrumbItem component properties.\n * @returns The MrlBreadcrumbItem component.\n */\nexport function MrlBreadcrumbItem(props: MrlBreadcrumbItemProps): JSX.Element {\n\tconst { link, text, isSelected, hasSeparator = true, isTruncated = false, ...rest } = props;\n\n\tconst breadcrumbItem = React.useMemo(() => {\n\t\tif (isSelected) {\n\t\t\t// eslint-disable-next-line jsx-a11y/anchor-is-valid\n\t\t\treturn <a aria-current=\"page\">{text}</a>;\n\t\t}\n\n\t\tif (typeof link === 'string') {\n\t\t\treturn <a href={link}>{text}</a>;\n\t\t} else if (typeof link === 'object') {\n\t\t\treturn <Link {...link}>{text}</Link>;\n\t\t}\n\t}, [link, text, isSelected]);\n\n\treturn (\n\t\t<li\n\t\t\t{...rest}\n\t\t\tclassName={classnames(styles['MrlBreadcrumbItem'], 'MrlBreadcrumbItem', {\n\t\t\t\t[styles['MrlBreadcrumbItem--selected']]: isSelected,\n\t\t\t\t['MrlBreadcrumbItem--selected']: isSelected\n\t\t\t})}\n\t\t>\n\t\t\t{isTruncated && (\n\t\t\t\t<span className={classnames(styles['MrlBreadcrumbItem--icon'])}>\n\t\t\t\t\t<MrlSvg size=\"auto\" svg={more} />\n\t\t\t\t</span>\n\t\t\t)}\n\t\t\t{!isTruncated && breadcrumbItem}\n\t\t\t{hasSeparator && <MrlBreadcrumbSeparator />}\n\t\t</li>\n\t);\n}\n"],"names":["MrlBreadcrumbItem","props","link","text","isSelected","_props$hasSeparator","hasSeparator","_props$isTruncated","isTruncated","rest","_objectWithoutProperties","_excluded","breadcrumbItem","React","useMemo","createElement","href","Link","_extends","className","classnames","styles","MrlSvg","size","svg","more","MrlBreadcrumbSeparator"],"mappings":";;;;;;;;;;AAqDA;AACA;AACA;AACA;AACA;AACO,SAASA,iBAAiBA,CAACC,KAA6B,EAAe;AAC7E,EAAA,IAAQC,IAAI,GAA0ED,KAAK,CAAnFC,IAAI;IAAEC,IAAI,GAAoEF,KAAK,CAA7EE,IAAI;IAAEC,UAAU,GAAwDH,KAAK,CAAvEG,UAAU;IAAAC,mBAAA,GAAwDJ,KAAK,CAA3DK,YAAY;AAAZA,IAAAA,YAAY,GAAAD,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IAAAE,kBAAA,GAAmCN,KAAK,CAAtCO,WAAW;AAAXA,IAAAA,WAAW,GAAAD,kBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,kBAAA;AAAKE,IAAAA,IAAI,GAAAC,wBAAA,CAAKT,KAAK,EAAAU,SAAA,CAAA;AAE3F,EAAA,IAAMC,cAAc,GAAGC,KAAK,CAACC,OAAO,CAAC,MAAM;AAC1C,IAAA,IAAIV,UAAU,EAAE;AACf;MACA,oBAAOS,KAAA,CAAAE,aAAA,CAAA,GAAA,EAAA;QAAG,cAAA,EAAa;AAAM,OAAA,EAAEZ,IAAQ,CAAC;AACzC,IAAA;AAEA,IAAA,IAAI,OAAOD,IAAI,KAAK,QAAQ,EAAE;MAC7B,oBAAOW,KAAA,CAAAE,aAAA,CAAA,GAAA,EAAA;AAAGC,QAAAA,IAAI,EAAEd;AAAK,OAAA,EAAEC,IAAQ,CAAC;AACjC,IAAA,CAAC,MAAM,IAAI,OAAOD,IAAI,KAAK,QAAQ,EAAE;MACpC,oBAAOW,KAAA,CAAAE,aAAA,CAACE,IAAI,EAAKf,IAAI,EAAGC,IAAW,CAAC;AACrC,IAAA;EACD,CAAC,EAAE,CAACD,IAAI,EAAEC,IAAI,EAAEC,UAAU,CAAC,CAAC;AAE5B,EAAA,oBACCS,KAAA,CAAAE,aAAA,CAAA,IAAA,EAAAG,QAAA,KACKT,IAAI,EAAA;IACRU,SAAS,EAAEC,UAAU,CAACC,MAAM,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,EAAE;AACvE,MAAA,CAACA,MAAM,CAAC,6BAA6B,CAAC,GAAGjB,UAAU;AACnD,MAAA,CAAC,6BAA6B,GAAGA;KACjC;AAAE,GAAA,CAAA,EAEFI,WAAW,iBACXK,KAAA,CAAAE,aAAA,CAAA,MAAA,EAAA;AAAMI,IAAAA,SAAS,EAAEC,UAAU,CAACC,MAAM,CAAC,yBAAyB,CAAC;AAAE,GAAA,eAC9DR,KAAA,CAAAE,aAAA,CAACO,MAAM,EAAA;AAACC,IAAAA,IAAI,EAAC,MAAM;AAACC,IAAAA,GAAG,EAAEC;AAAK,GAAE,CAC3B,CACN,EACA,CAACjB,WAAW,IAAII,cAAc,EAC9BN,YAAY,iBAAIO,KAAA,CAAAE,aAAA,CAACW,sBAAsB,EAAA,IAAE,CACvC,CAAC;AAEP;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import styles from './MrlBreadcrumbs.module.scss.js';
|
|
@@ -19,35 +19,27 @@ function MrlBreadcrumbs(props) {
|
|
|
19
19
|
var items = props.items,
|
|
20
20
|
className = props.className,
|
|
21
21
|
rest = _objectWithoutProperties(props, _excluded);
|
|
22
|
-
var breadcrumbsData = React.useMemo(
|
|
22
|
+
var breadcrumbsData = React.useMemo(() => {
|
|
23
23
|
var arr = [];
|
|
24
24
|
var isTruncated = false;
|
|
25
|
-
var
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}));
|
|
40
|
-
} else {
|
|
41
|
-
arr.push(item);
|
|
42
|
-
}
|
|
25
|
+
for (var _ref3 of items.entries()) {
|
|
26
|
+
var _ref2 = _slicedToArray(_ref3, 2);
|
|
27
|
+
var i = _ref2[0];
|
|
28
|
+
var item = _ref2[1];
|
|
29
|
+
if (item.isTruncated) {
|
|
30
|
+
isTruncated = true;
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
if (i === items.length - 1) {
|
|
34
|
+
arr.push(_objectSpread2(_objectSpread2({}, item), {}, {
|
|
35
|
+
hasSeparator: false
|
|
36
|
+
}));
|
|
37
|
+
} else {
|
|
38
|
+
arr.push(item);
|
|
43
39
|
}
|
|
44
|
-
} catch (err) {
|
|
45
|
-
_iterator.e(err);
|
|
46
|
-
} finally {
|
|
47
|
-
_iterator.f();
|
|
48
40
|
}
|
|
49
41
|
return {
|
|
50
|
-
isTruncated
|
|
42
|
+
isTruncated,
|
|
51
43
|
items: arr
|
|
52
44
|
};
|
|
53
45
|
}, [items]);
|
|
@@ -56,7 +48,7 @@ function MrlBreadcrumbs(props) {
|
|
|
56
48
|
}, breadcrumbsData.isTruncated && /*#__PURE__*/React.createElement(MrlBreadcrumbItem, {
|
|
57
49
|
hasSeparator: true,
|
|
58
50
|
isTruncated: true
|
|
59
|
-
}), breadcrumbsData.items.map(
|
|
51
|
+
}), breadcrumbsData.items.map((item, i) => {
|
|
60
52
|
return /*#__PURE__*/React.createElement(MrlBreadcrumbItem, _extends({
|
|
61
53
|
key: "".concat(i).concat(item.text)
|
|
62
54
|
}, item));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlBreadcrumbs.js","sources":["../../../../../src/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport styles from './MrlBreadcrumbs.module.scss';\nimport { BreadcrumbItem, MrlBreadcrumbItem } from '../MrlBreadcrumbItem';\n\n/**\n * Props for the MrlBreadcrumbs component.\n */\nexport interface MrlBreadcrumbsProps extends React.ComponentPropsWithRef<'nav'> {\n\t/**\n\t * A string value used for data-qa attribute.\n\t */\n\t['data-qa']?: string;\n\n\t/**\n\t * The aria-label of the nav element\n\t */\n\t['aria-label']: string;\n\n\t/**\n\t * This prop accepts an array of objects, where each object represents a single breadcrumb item.\n\t * It's used to define the structure, content, and behavior of the breadcrumbs displayed in the component.\n\t * The `link` prop could be either the props of a react-router-dom link or a string. If a string is provided it will\n\t * render a regular link.\n\t */\n\titems: BreadcrumbItem[];\n}\n\n/**\n * MrlBreadcrumbs component.\n * @param props The MrlBreadcrumbs component properties.\n * @returns The MrlBreadcrumbs component.\n */\nexport function MrlBreadcrumbs(props: MrlBreadcrumbsProps): JSX.Element {\n\tconst { items, className, ...rest } = props;\n\n\tconst breadcrumbsData = React.useMemo(() => {\n\t\tconst arr = [];\n\t\tlet isTruncated = false;\n\n\t\tfor (const [i, item] of items.entries()) {\n\t\t\tif (item.isTruncated) {\n\t\t\t\tisTruncated = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (i === items.length - 1) {\n\t\t\t\tarr.push({\n\t\t\t\t\t...item,\n\t\t\t\t\thasSeparator: false\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tarr.push(item);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tisTruncated,\n\t\t\titems: arr\n\t\t};\n\t}, [items]);\n\n\treturn (\n\t\t<nav {...rest}>\n\t\t\t<ol className={classnames(styles['MrlBreadcrumbs--list'], 'MrlBreadcrumbs--list', className)}>\n\t\t\t\t{breadcrumbsData.isTruncated && <MrlBreadcrumbItem hasSeparator isTruncated />}\n\t\t\t\t{breadcrumbsData.items.map((item, i) => {\n\t\t\t\t\treturn <MrlBreadcrumbItem key={`${i}${item.text}`} {...item} />;\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</nav>\n\t);\n}\n"],"names":["MrlBreadcrumbs","props","items","className","rest","_objectWithoutProperties","_excluded","breadcrumbsData","React","useMemo","arr","isTruncated","
|
|
1
|
+
{"version":3,"file":"MrlBreadcrumbs.js","sources":["../../../../../src/components/breadcrumb/MrlBreadcrumbs/MrlBreadcrumbs.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport styles from './MrlBreadcrumbs.module.scss';\nimport { BreadcrumbItem, MrlBreadcrumbItem } from '../MrlBreadcrumbItem';\n\n/**\n * Props for the MrlBreadcrumbs component.\n */\nexport interface MrlBreadcrumbsProps extends React.ComponentPropsWithRef<'nav'> {\n\t/**\n\t * A string value used for data-qa attribute.\n\t */\n\t['data-qa']?: string;\n\n\t/**\n\t * The aria-label of the nav element\n\t */\n\t['aria-label']: string;\n\n\t/**\n\t * This prop accepts an array of objects, where each object represents a single breadcrumb item.\n\t * It's used to define the structure, content, and behavior of the breadcrumbs displayed in the component.\n\t * The `link` prop could be either the props of a react-router-dom link or a string. If a string is provided it will\n\t * render a regular link.\n\t */\n\titems: BreadcrumbItem[];\n}\n\n/**\n * MrlBreadcrumbs component.\n * @param props The MrlBreadcrumbs component properties.\n * @returns The MrlBreadcrumbs component.\n */\nexport function MrlBreadcrumbs(props: MrlBreadcrumbsProps): JSX.Element {\n\tconst { items, className, ...rest } = props;\n\n\tconst breadcrumbsData = React.useMemo(() => {\n\t\tconst arr = [];\n\t\tlet isTruncated = false;\n\n\t\tfor (const [i, item] of items.entries()) {\n\t\t\tif (item.isTruncated) {\n\t\t\t\tisTruncated = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (i === items.length - 1) {\n\t\t\t\tarr.push({\n\t\t\t\t\t...item,\n\t\t\t\t\thasSeparator: false\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tarr.push(item);\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tisTruncated,\n\t\t\titems: arr\n\t\t};\n\t}, [items]);\n\n\treturn (\n\t\t<nav {...rest}>\n\t\t\t<ol className={classnames(styles['MrlBreadcrumbs--list'], 'MrlBreadcrumbs--list', className)}>\n\t\t\t\t{breadcrumbsData.isTruncated && <MrlBreadcrumbItem hasSeparator isTruncated />}\n\t\t\t\t{breadcrumbsData.items.map((item, i) => {\n\t\t\t\t\treturn <MrlBreadcrumbItem key={`${i}${item.text}`} {...item} />;\n\t\t\t\t})}\n\t\t\t</ol>\n\t\t</nav>\n\t);\n}\n"],"names":["MrlBreadcrumbs","props","items","className","rest","_objectWithoutProperties","_excluded","breadcrumbsData","React","useMemo","arr","isTruncated","_ref3","entries","_ref2","_slicedToArray","i","item","length","push","_objectSpread","hasSeparator","createElement","classnames","styles","MrlBreadcrumbItem","map","_extends","key","concat","text"],"mappings":";;;;;;;;AAKA;AACA;AACA;;AAqBA;AACA;AACA;AACA;AACA;AACO,SAASA,cAAcA,CAACC,KAA0B,EAAe;AACvE,EAAA,IAAQC,KAAK,GAAyBD,KAAK,CAAnCC,KAAK;IAAEC,SAAS,GAAcF,KAAK,CAA5BE,SAAS;AAAKC,IAAAA,IAAI,GAAAC,wBAAA,CAAKJ,KAAK,EAAAK,SAAA,CAAA;AAE3C,EAAA,IAAMC,eAAe,GAAGC,KAAK,CAACC,OAAO,CAAC,MAAM;IAC3C,IAAMC,GAAG,GAAG,EAAE;IACd,IAAIC,WAAW,GAAG,KAAK;AAEvB,IAAA,KAAA,IAAAC,KAAA,IAAwBV,KAAK,CAACW,OAAO,EAAE,EAAE;AAAA,MAAA,IAAAC,KAAA,GAAAC,cAAA,CAAAH,KAAA,EAAA,CAAA,CAAA;MAAA,IAA7BI,CAAC,GAAAF,KAAA,CAAA,CAAA,CAAA;MAAA,IAAEG,IAAI,GAAAH,KAAA,CAAA,CAAA,CAAA;MAClB,IAAIG,IAAI,CAACN,WAAW,EAAE;AACrBA,QAAAA,WAAW,GAAG,IAAI;AAClB,QAAA;AACD,MAAA;AAEA,MAAA,IAAIK,CAAC,KAAKd,KAAK,CAACgB,MAAM,GAAG,CAAC,EAAE;AAC3BR,QAAAA,GAAG,CAACS,IAAI,CAAAC,cAAA,CAAAA,cAAA,KACJH,IAAI,CAAA,EAAA,EAAA,EAAA;AACPI,UAAAA,YAAY,EAAE;AAAK,SAAA,CACnB,CAAC;AACH,MAAA,CAAC,MAAM;AACNX,QAAAA,GAAG,CAACS,IAAI,CAACF,IAAI,CAAC;AACf,MAAA;AACD,IAAA;IAEA,OAAO;MACNN,WAAW;AACXT,MAAAA,KAAK,EAAEQ;KACP;AACF,EAAA,CAAC,EAAE,CAACR,KAAK,CAAC,CAAC;EAEX,oBACCM,KAAA,CAAAc,aAAA,CAAA,KAAA,EAASlB,IAAI,eACZI,KAAA,CAAAc,aAAA,CAAA,IAAA,EAAA;IAAInB,SAAS,EAAEoB,UAAU,CAACC,MAAM,CAAC,sBAAsB,CAAC,EAAE,sBAAsB,EAAErB,SAAS;GAAE,EAC3FI,eAAe,CAACI,WAAW,iBAAIH,KAAA,CAAAc,aAAA,CAACG,iBAAiB,EAAA;IAACJ,YAAY,EAAA,IAAA;IAACV,WAAW,EAAA;AAAA,GAAE,CAAC,EAC7EJ,eAAe,CAACL,KAAK,CAACwB,GAAG,CAAC,CAACT,IAAI,EAAED,CAAC,KAAK;AACvC,IAAA,oBAAOR,KAAA,CAAAc,aAAA,CAACG,iBAAiB,EAAAE,QAAA,CAAA;MAACC,GAAG,EAAA,EAAA,CAAAC,MAAA,CAAKb,CAAC,EAAAa,MAAA,CAAGZ,IAAI,CAACa,IAAI;KAAG,EAAKb,IAAI,CAAG,CAAC;EAChE,CAAC,CACE,CACA,CAAC;AAER;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import classnames from 'classnames';
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { MrlSvgAnimate } from '../../svg/MrlSvgAnimate/MrlSvgAnimate.js';
|
|
@@ -45,9 +45,7 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
45
45
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
46
46
|
isHovered = _React$useState4[0],
|
|
47
47
|
setHover = _React$useState4[1];
|
|
48
|
-
var _React$useState5 = React.useState(
|
|
49
|
-
return _isSelected(state);
|
|
50
|
-
}),
|
|
48
|
+
var _React$useState5 = React.useState(() => _isSelected(state)),
|
|
51
49
|
_React$useState6 = _slicedToArray(_React$useState5, 2),
|
|
52
50
|
isSelected = _React$useState6[0],
|
|
53
51
|
setIsSelected = _React$useState6[1];
|
|
@@ -56,9 +54,7 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
56
54
|
* `useImperativeHandle` customizes the instance value
|
|
57
55
|
* that is exposed to parent components when using ref.
|
|
58
56
|
*/
|
|
59
|
-
React.useImperativeHandle(ref,
|
|
60
|
-
return buttonRef.current;
|
|
61
|
-
});
|
|
57
|
+
React.useImperativeHandle(ref, () => buttonRef.current);
|
|
62
58
|
|
|
63
59
|
/**
|
|
64
60
|
* MrlAnimatedIconButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'
|
|
@@ -70,7 +66,7 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
70
66
|
* the value of state passed as props and the internal
|
|
71
67
|
* isSelected piece of state.
|
|
72
68
|
*/
|
|
73
|
-
React.useEffect(
|
|
69
|
+
React.useEffect(() => {
|
|
74
70
|
// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.
|
|
75
71
|
setIsSelected(_isSelected(state));
|
|
76
72
|
}, [state]);
|
|
@@ -79,15 +75,13 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
79
75
|
* Handle onClick events
|
|
80
76
|
* @param {React.MouseEvent<HTMLButtonElement>} e - mouse event
|
|
81
77
|
*/
|
|
82
|
-
var handleOnClick =
|
|
78
|
+
var handleOnClick = e => {
|
|
83
79
|
e.stopPropagation();
|
|
84
80
|
if (_isDisabled(state, loading) || disableEvents) {
|
|
85
81
|
return;
|
|
86
82
|
}
|
|
87
83
|
if (isToggleButton) {
|
|
88
|
-
setIsSelected(
|
|
89
|
-
return !prevIsSelected;
|
|
90
|
-
});
|
|
84
|
+
setIsSelected(prevIsSelected => !prevIsSelected);
|
|
91
85
|
}
|
|
92
86
|
if (onClick && typeof onClick === 'function') {
|
|
93
87
|
onClick(e);
|
|
@@ -99,7 +93,7 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
99
93
|
* @param {boolean} mouseEnter - Determines if this is a mouseEnter event
|
|
100
94
|
* @returns {void}
|
|
101
95
|
*/
|
|
102
|
-
var handleMouseInteraction =
|
|
96
|
+
var handleMouseInteraction = mouseEnter => {
|
|
103
97
|
/** Set hover status of button */
|
|
104
98
|
setHover(mouseEnter);
|
|
105
99
|
|
|
@@ -159,23 +153,25 @@ var MrlAnimatedIconButton = /*#__PURE__*/React.forwardRef(function MrlAnimatedIc
|
|
|
159
153
|
}
|
|
160
154
|
setAnimation('play');
|
|
161
155
|
};
|
|
162
|
-
var handleBlur =
|
|
156
|
+
var handleBlur = () => {
|
|
163
157
|
handleAnimation('blur');
|
|
164
158
|
};
|
|
165
|
-
var handleFocus =
|
|
159
|
+
var handleFocus = () => {
|
|
166
160
|
handleAnimation('focus');
|
|
167
161
|
};
|
|
168
|
-
var handleMouseEnter =
|
|
162
|
+
var handleMouseEnter = () => {
|
|
169
163
|
handleAnimation('hover', true);
|
|
170
164
|
};
|
|
171
|
-
var handleMouseLeave =
|
|
165
|
+
var handleMouseLeave = () => {
|
|
172
166
|
handleAnimation('hover');
|
|
173
167
|
};
|
|
174
168
|
var classNames = classnames('mrlIconButton', "mrlIconButton--".concat(size), "mrlIconButton--".concat(kind), 'mrlAnimatedIconButton', "toggleStyle--".concat(toggleStyle));
|
|
175
169
|
var attributes = setAttributes(attrs, _objectSpread2(_objectSpread2({
|
|
176
170
|
'aria-disabled': _isDisabled(state, loading),
|
|
177
171
|
'aria-label': text
|
|
178
|
-
}, isToggleButton &&
|
|
172
|
+
}, isToggleButton && {
|
|
173
|
+
["aria-".concat(toggleAria)]: isSelected || false
|
|
174
|
+
}), {}, {
|
|
179
175
|
type: 'button'
|
|
180
176
|
}));
|
|
181
177
|
return /*#__PURE__*/React.createElement(MrlTooltip, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlAnimatedIconButton.js","sources":["../../../../../src/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport * as React from 'react';\nimport { setAttributes } from '../../../utils';\nimport { MrlSvgAnimate, MrlSvgAnimateProps } from '../../svg/MrlSvgAnimate/MrlSvgAnimate';\nimport { AnimatedState } from '../../svg/constants';\nimport { MrlTooltip } from '../../tooltip';\nimport { MrlTooltipDefaults } from '../../tooltip/constants';\nimport { MrlIconButtonProps } from '../MrlIconButton/MrlIconButton';\nimport { buttonDefaults } from '../constants';\nimport { _isDisabled, _isSelected, _isToggleButton } from '../helpers';\n\nimport './MrlAnimatedIconButton.scss';\n\ninterface MrlAnimatedIconButtonProps extends Omit<MrlIconButtonProps, 'icon'> {\n\ticon: MrlSvgAnimateProps;\n}\n\ntype animationEvent = 'hover' | 'blur' | 'focus';\n\nexport const MrlAnimatedIconButton = React.forwardRef<\n\tHTMLButtonElement,\n\tMrlAnimatedIconButtonProps\n>(function MrlAnimatedIconButton(\n\t{\n\t\tattrs = {},\n\t\tbadge,\n\t\tdisableEvents = false,\n\t\ticon,\n\t\t// We intentionally deviate from the basic button for icon-buttons since the vast\n\t\t// majority of icon buttons are ghost buttons. The proptype remains\n\t\t// consistent with the basic button however to keep our code DRY.\n\t\tkind = 'ghost-inverse',\n\t\tloading = false,\n\t\tonClick,\n\t\tposition = MrlTooltipDefaults.position,\n\t\ttoggleAria = buttonDefaults.toggleAria,\n\t\ttoggleStyle,\n\t\ttext,\n\t\ttipAnchor = MrlTooltipDefaults.anchor,\n\t\tsize = buttonDefaults.size,\n\t\tstate = buttonDefaults.state,\n\t\t...remainingProps\n\t}: MrlAnimatedIconButtonProps,\n\tref\n) {\n\t/**\n\t * State value to determine if the icon should be animating\n\t */\n\tconst [isAnimating, setAnimation] = React.useState<AnimatedState>('stop');\n\n\tconst [isHovered, setHover] = React.useState(false);\n\n\tconst [isSelected, setIsSelected] = React.useState(() => _isSelected(state));\n\n\tconst buttonRef = React.useRef<HTMLButtonElement>(null);\n\t/**\n\t * `useImperativeHandle` customizes the instance value\n\t * that is exposed to parent components when using ref.\n\t */\n\tReact.useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n\t\tref,\n\t\t() => buttonRef.current\n\t);\n\n\t/**\n\t * MrlAnimatedIconButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'\n\t */\n\tconst isToggleButton = toggleStyle && _isToggleButton(toggleStyle);\n\n\t/**\n\t * We need to watch the value of state to keep in sync\n\t * the value of state passed as props and the internal\n\t * isSelected piece of state.\n\t */\n\tReact.useEffect(() => {\n\t\t// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.\n\t\tsetIsSelected(_isSelected(state));\n\t}, [state]);\n\n\t/**\n\t * Handle onClick events\n\t * @param {React.MouseEvent<HTMLButtonElement>} e - mouse event\n\t */\n\tconst handleOnClick = (e: React.MouseEvent<HTMLButtonElement>): void => {\n\t\te.stopPropagation();\n\n\t\tif (_isDisabled(state, loading) || disableEvents) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isToggleButton) {\n\t\t\tsetIsSelected((prevIsSelected) => !prevIsSelected);\n\t\t}\n\n\t\tif (onClick && typeof onClick === 'function') {\n\t\t\tonClick(e);\n\t\t}\n\t};\n\n\t/**\n\t * Handle animation status for mouse events exclusively\n\t * @param {boolean} mouseEnter - Determines if this is a mouseEnter event\n\t * @returns {void}\n\t */\n\tconst handleMouseInteraction = (mouseEnter: boolean): void => {\n\t\t/** Set hover status of button */\n\t\tsetHover(mouseEnter);\n\n\t\t/**\n\t\t * If the button is in focus and we trigger a mouse event\n\t\t * we don't need to change the animation state.\n\t\t */\n\t\tif (document.activeElement === buttonRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isAnimating === 'play') {\n\t\t\tsetAnimation('stop');\n\t\t} else {\n\t\t\tsetAnimation('play');\n\t\t}\n\t};\n\n\t/**\n\t * Handle animation status for mouse and keyboard events\n\t * @param {animationEvent} eventType - The type of interaction that is triggering the animation update.\n\t * @param {boolean} startEvent - Whether or not this event should start an animation\n\t * @returns {void}\n\t */\n\tconst handleAnimation = (eventType: animationEvent, startEvent = false): void => {\n\t\t/** If the button is diabled or selected, the animation must be stopped */\n\t\tif (isSelected || _isDisabled(state, loading)) {\n\t\t\tsetAnimation('stop');\n\t\t\t/** We still need to track the hover state */\n\t\t\tsetHover(startEvent);\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * If the event is a hover interaction, handle them appropriately.\n\t\t * We do this to ensure you can hover and focus without restarting\n\t\t * or stopping the animation incorrectly.\n\t\t */\n\t\tif (eventType === 'hover') {\n\t\t\thandleMouseInteraction(startEvent);\n\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * Keyboard events\n\t\t */\n\t\tif (isAnimating === 'play') {\n\t\t\t/**\n\t\t\t * If a button is hovered and focused, do not stop the\n\t\t\t * animation on blur.\n\t\t\t */\n\t\t\tif (isHovered) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetAnimation('stop');\n\t\t\treturn;\n\t\t}\n\n\t\tsetAnimation('play');\n\t};\n\n\tconst handleBlur = () => {\n\t\thandleAnimation('blur');\n\t};\n\n\tconst handleFocus = () => {\n\t\thandleAnimation('focus');\n\t};\n\n\tconst handleMouseEnter = () => {\n\t\thandleAnimation('hover', true);\n\t};\n\n\tconst handleMouseLeave = () => {\n\t\thandleAnimation('hover');\n\t};\n\n\tconst classNames = classnames(\n\t\t'mrlIconButton',\n\t\t`mrlIconButton--${size}`,\n\t\t`mrlIconButton--${kind}`,\n\t\t'mrlAnimatedIconButton',\n\t\t`toggleStyle--${toggleStyle}`\n\t);\n\n\tconst attributes = setAttributes(attrs, {\n\t\t'aria-disabled': _isDisabled(state, loading),\n\t\t'aria-label': text,\n\t\t...(isToggleButton && { [`aria-${toggleAria}`]: isSelected || false }),\n\t\ttype: 'button'\n\t});\n\n\treturn (\n\t\t<MrlTooltip anchor={tipAnchor} position={position} text={text}>\n\t\t\t<button\n\t\t\t\t{...attributes}\n\t\t\t\t{...remainingProps}\n\t\t\t\tclassName={classNames}\n\t\t\t\tref={buttonRef}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tonClick={handleOnClick}\n\t\t\t\tonFocus={handleFocus}\n\t\t\t\tonMouseEnter={handleMouseEnter}\n\t\t\t\tonMouseLeave={handleMouseLeave}\n\t\t\t>\n\t\t\t\t<div className=\"mrlAnimatedIconButton-iconContainer\">\n\t\t\t\t\t<MrlSvgAnimate {...icon} state={isAnimating} />\n\t\t\t\t</div>\n\t\t\t\t{badge}\n\t\t\t</button>\n\t\t</MrlTooltip>\n\t);\n});\n"],"names":["MrlAnimatedIconButton","React","forwardRef","_ref","ref","_ref$attrs","attrs","badge","_ref$disableEvents","disableEvents","icon","_ref$kind","kind","_ref$loading","loading","onClick","_ref$position","position","MrlTooltipDefaults","_ref$toggleAria","toggleAria","buttonDefaults","toggleStyle","text","_ref$tipAnchor","tipAnchor","anchor","_ref$size","size","_ref$state","state","remainingProps","_objectWithoutProperties","_excluded","_React$useState","useState","_React$useState2","_slicedToArray","isAnimating","setAnimation","_React$useState3","_React$useState4","isHovered","setHover","_React$useState5","_isSelected","_React$useState6","isSelected","setIsSelected","buttonRef","useRef","useImperativeHandle","current","isToggleButton","_isToggleButton","useEffect","handleOnClick","e","stopPropagation","_isDisabled","prevIsSelected","handleMouseInteraction","mouseEnter","document","activeElement","handleAnimation","eventType","startEvent","arguments","length","undefined","handleBlur","handleFocus","handleMouseEnter","handleMouseLeave","classNames","classnames","concat","attributes","setAttributes","_objectSpread","_defineProperty","type","createElement","MrlTooltip","_extends","className","onBlur","onFocus","onMouseEnter","onMouseLeave","MrlSvgAnimate"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MrlAnimatedIconButton.js","sources":["../../../../../src/components/button/MrlAnimatedIconButton/MrlAnimatedIconButton.tsx"],"sourcesContent":["import classnames from 'classnames';\nimport * as React from 'react';\nimport { setAttributes } from '../../../utils';\nimport { MrlSvgAnimate, MrlSvgAnimateProps } from '../../svg/MrlSvgAnimate/MrlSvgAnimate';\nimport { AnimatedState } from '../../svg/constants';\nimport { MrlTooltip } from '../../tooltip';\nimport { MrlTooltipDefaults } from '../../tooltip/constants';\nimport { MrlIconButtonProps } from '../MrlIconButton/MrlIconButton';\nimport { buttonDefaults } from '../constants';\nimport { _isDisabled, _isSelected, _isToggleButton } from '../helpers';\n\nimport './MrlAnimatedIconButton.scss';\n\ninterface MrlAnimatedIconButtonProps extends Omit<MrlIconButtonProps, 'icon'> {\n\ticon: MrlSvgAnimateProps;\n}\n\ntype animationEvent = 'hover' | 'blur' | 'focus';\n\nexport const MrlAnimatedIconButton = React.forwardRef<\n\tHTMLButtonElement,\n\tMrlAnimatedIconButtonProps\n>(function MrlAnimatedIconButton(\n\t{\n\t\tattrs = {},\n\t\tbadge,\n\t\tdisableEvents = false,\n\t\ticon,\n\t\t// We intentionally deviate from the basic button for icon-buttons since the vast\n\t\t// majority of icon buttons are ghost buttons. The proptype remains\n\t\t// consistent with the basic button however to keep our code DRY.\n\t\tkind = 'ghost-inverse',\n\t\tloading = false,\n\t\tonClick,\n\t\tposition = MrlTooltipDefaults.position,\n\t\ttoggleAria = buttonDefaults.toggleAria,\n\t\ttoggleStyle,\n\t\ttext,\n\t\ttipAnchor = MrlTooltipDefaults.anchor,\n\t\tsize = buttonDefaults.size,\n\t\tstate = buttonDefaults.state,\n\t\t...remainingProps\n\t}: MrlAnimatedIconButtonProps,\n\tref\n) {\n\t/**\n\t * State value to determine if the icon should be animating\n\t */\n\tconst [isAnimating, setAnimation] = React.useState<AnimatedState>('stop');\n\n\tconst [isHovered, setHover] = React.useState(false);\n\n\tconst [isSelected, setIsSelected] = React.useState(() => _isSelected(state));\n\n\tconst buttonRef = React.useRef<HTMLButtonElement>(null);\n\t/**\n\t * `useImperativeHandle` customizes the instance value\n\t * that is exposed to parent components when using ref.\n\t */\n\tReact.useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n\t\tref,\n\t\t() => buttonRef.current\n\t);\n\n\t/**\n\t * MrlAnimatedIconButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'\n\t */\n\tconst isToggleButton = toggleStyle && _isToggleButton(toggleStyle);\n\n\t/**\n\t * We need to watch the value of state to keep in sync\n\t * the value of state passed as props and the internal\n\t * isSelected piece of state.\n\t */\n\tReact.useEffect(() => {\n\t\t// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.\n\t\tsetIsSelected(_isSelected(state));\n\t}, [state]);\n\n\t/**\n\t * Handle onClick events\n\t * @param {React.MouseEvent<HTMLButtonElement>} e - mouse event\n\t */\n\tconst handleOnClick = (e: React.MouseEvent<HTMLButtonElement>): void => {\n\t\te.stopPropagation();\n\n\t\tif (_isDisabled(state, loading) || disableEvents) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isToggleButton) {\n\t\t\tsetIsSelected((prevIsSelected) => !prevIsSelected);\n\t\t}\n\n\t\tif (onClick && typeof onClick === 'function') {\n\t\t\tonClick(e);\n\t\t}\n\t};\n\n\t/**\n\t * Handle animation status for mouse events exclusively\n\t * @param {boolean} mouseEnter - Determines if this is a mouseEnter event\n\t * @returns {void}\n\t */\n\tconst handleMouseInteraction = (mouseEnter: boolean): void => {\n\t\t/** Set hover status of button */\n\t\tsetHover(mouseEnter);\n\n\t\t/**\n\t\t * If the button is in focus and we trigger a mouse event\n\t\t * we don't need to change the animation state.\n\t\t */\n\t\tif (document.activeElement === buttonRef.current) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isAnimating === 'play') {\n\t\t\tsetAnimation('stop');\n\t\t} else {\n\t\t\tsetAnimation('play');\n\t\t}\n\t};\n\n\t/**\n\t * Handle animation status for mouse and keyboard events\n\t * @param {animationEvent} eventType - The type of interaction that is triggering the animation update.\n\t * @param {boolean} startEvent - Whether or not this event should start an animation\n\t * @returns {void}\n\t */\n\tconst handleAnimation = (eventType: animationEvent, startEvent = false): void => {\n\t\t/** If the button is diabled or selected, the animation must be stopped */\n\t\tif (isSelected || _isDisabled(state, loading)) {\n\t\t\tsetAnimation('stop');\n\t\t\t/** We still need to track the hover state */\n\t\t\tsetHover(startEvent);\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * If the event is a hover interaction, handle them appropriately.\n\t\t * We do this to ensure you can hover and focus without restarting\n\t\t * or stopping the animation incorrectly.\n\t\t */\n\t\tif (eventType === 'hover') {\n\t\t\thandleMouseInteraction(startEvent);\n\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * Keyboard events\n\t\t */\n\t\tif (isAnimating === 'play') {\n\t\t\t/**\n\t\t\t * If a button is hovered and focused, do not stop the\n\t\t\t * animation on blur.\n\t\t\t */\n\t\t\tif (isHovered) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetAnimation('stop');\n\t\t\treturn;\n\t\t}\n\n\t\tsetAnimation('play');\n\t};\n\n\tconst handleBlur = () => {\n\t\thandleAnimation('blur');\n\t};\n\n\tconst handleFocus = () => {\n\t\thandleAnimation('focus');\n\t};\n\n\tconst handleMouseEnter = () => {\n\t\thandleAnimation('hover', true);\n\t};\n\n\tconst handleMouseLeave = () => {\n\t\thandleAnimation('hover');\n\t};\n\n\tconst classNames = classnames(\n\t\t'mrlIconButton',\n\t\t`mrlIconButton--${size}`,\n\t\t`mrlIconButton--${kind}`,\n\t\t'mrlAnimatedIconButton',\n\t\t`toggleStyle--${toggleStyle}`\n\t);\n\n\tconst attributes = setAttributes(attrs, {\n\t\t'aria-disabled': _isDisabled(state, loading),\n\t\t'aria-label': text,\n\t\t...(isToggleButton && { [`aria-${toggleAria}`]: isSelected || false }),\n\t\ttype: 'button'\n\t});\n\n\treturn (\n\t\t<MrlTooltip anchor={tipAnchor} position={position} text={text}>\n\t\t\t<button\n\t\t\t\t{...attributes}\n\t\t\t\t{...remainingProps}\n\t\t\t\tclassName={classNames}\n\t\t\t\tref={buttonRef}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tonClick={handleOnClick}\n\t\t\t\tonFocus={handleFocus}\n\t\t\t\tonMouseEnter={handleMouseEnter}\n\t\t\t\tonMouseLeave={handleMouseLeave}\n\t\t\t>\n\t\t\t\t<div className=\"mrlAnimatedIconButton-iconContainer\">\n\t\t\t\t\t<MrlSvgAnimate {...icon} state={isAnimating} />\n\t\t\t\t</div>\n\t\t\t\t{badge}\n\t\t\t</button>\n\t\t</MrlTooltip>\n\t);\n});\n"],"names":["MrlAnimatedIconButton","React","forwardRef","_ref","ref","_ref$attrs","attrs","badge","_ref$disableEvents","disableEvents","icon","_ref$kind","kind","_ref$loading","loading","onClick","_ref$position","position","MrlTooltipDefaults","_ref$toggleAria","toggleAria","buttonDefaults","toggleStyle","text","_ref$tipAnchor","tipAnchor","anchor","_ref$size","size","_ref$state","state","remainingProps","_objectWithoutProperties","_excluded","_React$useState","useState","_React$useState2","_slicedToArray","isAnimating","setAnimation","_React$useState3","_React$useState4","isHovered","setHover","_React$useState5","_isSelected","_React$useState6","isSelected","setIsSelected","buttonRef","useRef","useImperativeHandle","current","isToggleButton","_isToggleButton","useEffect","handleOnClick","e","stopPropagation","_isDisabled","prevIsSelected","handleMouseInteraction","mouseEnter","document","activeElement","handleAnimation","eventType","startEvent","arguments","length","undefined","handleBlur","handleFocus","handleMouseEnter","handleMouseLeave","classNames","classnames","concat","attributes","setAttributes","_objectSpread","type","createElement","MrlTooltip","_extends","className","onBlur","onFocus","onMouseEnter","onMouseLeave","MrlSvgAnimate"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { buttonDefaults, allowedButtonValues } from '../constants.js';
|
|
@@ -37,9 +37,7 @@ var MrlButton = /*#__PURE__*/React.forwardRef(function MrlButton(_ref, ref) {
|
|
|
37
37
|
state = _ref$state === void 0 ? buttonDefaults.state : _ref$state,
|
|
38
38
|
tooltip = _ref.tooltip,
|
|
39
39
|
remainingProps = _objectWithoutProperties(_ref, _excluded);
|
|
40
|
-
var _React$useState = React.useState(
|
|
41
|
-
return _isSelected(state);
|
|
42
|
-
}),
|
|
40
|
+
var _React$useState = React.useState(() => _isSelected(state)),
|
|
43
41
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
44
42
|
isSelected = _React$useState2[0],
|
|
45
43
|
setIsSelected = _React$useState2[1];
|
|
@@ -54,7 +52,7 @@ var MrlButton = /*#__PURE__*/React.forwardRef(function MrlButton(_ref, ref) {
|
|
|
54
52
|
* the value of state passed as props and the internal
|
|
55
53
|
* isSelected piece of state.
|
|
56
54
|
*/
|
|
57
|
-
React.useEffect(
|
|
55
|
+
React.useEffect(() => {
|
|
58
56
|
// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.
|
|
59
57
|
setIsSelected(_isSelected(state));
|
|
60
58
|
}, [state]);
|
|
@@ -70,16 +68,14 @@ var MrlButton = /*#__PURE__*/React.forwardRef(function MrlButton(_ref, ref) {
|
|
|
70
68
|
return;
|
|
71
69
|
}
|
|
72
70
|
if (isToggleButton) {
|
|
73
|
-
setIsSelected(
|
|
74
|
-
return !prevIsSelected;
|
|
75
|
-
});
|
|
71
|
+
setIsSelected(prevIsSelected => !prevIsSelected);
|
|
76
72
|
}
|
|
77
73
|
if (onClick && typeof onClick === 'function') {
|
|
78
74
|
onClick(e);
|
|
79
75
|
}
|
|
80
76
|
}
|
|
81
|
-
var classNames = classnames('mrlButton', "mrlButton--".concat(size), "mrlButton--".concat(kind), state === 'skeleton' && "mrlButton--skeleton", !icon && loading && "mrlButton--loading", isToggleButton && "toggleStyle--".concat(toggleStyle), icon && "mrlButton--icon-".concat(iconPos), className, (attrs === null || attrs === void 0 ? void 0 : attrs
|
|
82
|
-
if (attrs && attrs
|
|
77
|
+
var classNames = classnames('mrlButton', "mrlButton--".concat(size), "mrlButton--".concat(kind), state === 'skeleton' && "mrlButton--skeleton", !icon && loading && "mrlButton--loading", isToggleButton && "toggleStyle--".concat(toggleStyle), icon && "mrlButton--icon-".concat(iconPos), className, (attrs === null || attrs === void 0 ? void 0 : attrs.class) || (attrs === null || attrs === void 0 ? void 0 : attrs.className));
|
|
78
|
+
if (attrs && attrs.class) delete attrs.class;
|
|
83
79
|
if (attrs && attrs.className) delete attrs.className;
|
|
84
80
|
var spinnerProps = _spinnerProps(kind, size);
|
|
85
81
|
var spinner = /*#__PURE__*/React.createElement(MrlSpinner, {
|
|
@@ -90,19 +86,19 @@ var MrlButton = /*#__PURE__*/React.forwardRef(function MrlButton(_ref, ref) {
|
|
|
90
86
|
});
|
|
91
87
|
var attributes = setAttributes(attrs || {}, _objectSpread2(_objectSpread2({
|
|
92
88
|
'aria-disabled': _isDisabled(state, loading) || disabled
|
|
93
|
-
}, isToggleButton &&
|
|
89
|
+
}, isToggleButton && {
|
|
90
|
+
["aria-".concat(toggleAria)]: isSelected || false
|
|
91
|
+
}), {}, {
|
|
94
92
|
role: 'button',
|
|
95
93
|
type: 'button'
|
|
96
94
|
}));
|
|
97
|
-
var renderButton =
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}, text), badge);
|
|
105
|
-
};
|
|
95
|
+
var renderButton = () => /*#__PURE__*/React.createElement("button", _extends({}, attributes, remainingProps, {
|
|
96
|
+
className: classNames,
|
|
97
|
+
ref: ref,
|
|
98
|
+
onClick: handleOnClick
|
|
99
|
+
}), loading ? spinner : icon, /*#__PURE__*/React.createElement("span", {
|
|
100
|
+
className: "mrlButton-text"
|
|
101
|
+
}, text), badge);
|
|
106
102
|
return !tooltip ? renderButton() : /*#__PURE__*/React.createElement(MrlTooltip, {
|
|
107
103
|
position: tooltip.position || 'bottom',
|
|
108
104
|
anchor: tooltip.anchor || 'center',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlButton.js","sources":["../../../../../src/components/button/MrlButton/MrlButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport {\n\tallowedButtonValues,\n\tbuttonDefaults,\n\tMrlButtonKind,\n\tMrlButtonSize,\n\tToggleAria,\n\tIconPosition\n} from '../constants';\nimport { _isDisabled, _isSelected, _spinnerProps } from '../helpers';\nimport { MrlSpinner, MrlTooltipAnchor, MrlTooltipPosition, MrlTooltip } from '../../';\nimport { spinnerDefaults } from '../../loader/constants';\nimport { AttrsObject, MrlComponentProps, setAttributes } from '../../../utils';\n\nimport './MrlButton.global.scss';\n\nexport type MrlButtonState = (typeof allowedButtonValues.states)[number];\nexport type ToggleStyle = (typeof allowedButtonValues.toggleStyles)[number];\n\nexport interface TooltipConfig {\n\t/**\n\t * The text to display in the tooltip\n\t */\n\ttext: string;\n\t/**\n\t * The position of the tooltip relative to the button\n\t */\n\tposition?: MrlTooltipPosition;\n\n\t/**\n\t * The anchor of the tooltip relative to the button\n\t */\n\tanchor?: MrlTooltipAnchor;\n\n\t/**\n\t * The data-qa attribute for the tooltip\n\t */\n\tdataQa?: string;\n}\n\nexport interface MrlButtonProps\n\textends Omit<MrlComponentProps, 'style'>,\n\t\tReact.ComponentProps<'button'> {\n\t/**\n\t * Applies additional HTML attributes to the button element.\n\t *\n\t * @deprecated\n\t */\n\tattrs?: AttrsObject;\n\t/**\n\t * Allow developers to add badge to buttons.\n\t */\n\tbadge?: React.ReactElement;\n\n\t/**\n\t * @deprecated - Use state=\"disabled\" or \"selected-disabled\" or \"skeleton\" instead.\n\t * Allow developers to change the disabled state based on user interactions.\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * Allows developers the ability to disable built in event listeners so they can manage user\n\t * interactions from the application.\n\t */\n\tdisableEvents?: boolean;\n\t/**\n\t * Allow developers to add icon to buttons.\n\t */\n\ticon?: React.ReactElement;\n\t/**\n\t * Allows developers to right-align an icon within a button.\n\t */\n\ticonPos?: IconPosition;\n\t/**\n\t * Changes the visual emphasis of the button.\n\t */\n\tkind?: MrlButtonKind;\n\t/**\n\t * Displays a spinner in the button to indicate some action is in progress.\n\t */\n\tloading?: boolean;\n\t/**\n\t * Text for the spinner when the button is in a loading state.\n\t */\n\tloadingText?: string;\n\t/**\n\t * onClick event for the button.\n\t */\n\tonClick?: (e: React.SyntheticEvent<HTMLButtonElement>) => void;\n\t/**\n\t * Changes the size of the button so it can scale with its surrounding context.\n\t */\n\tsize?: MrlButtonSize;\n\t/**\n\t * Changes the state of the button based on user permissions or actions.\n\t */\n\tstate?: MrlButtonState;\n\t/**\n\t * The textual label describing the button's purpose/action.\n\t * Icon buttons require a text label to ensure accessibility.\n\t */\n\ttext: string;\n\t/**\n\t * Determines which aria setup to use for various toggle/selected styles.\n\t * pressed - use for an traditional “toggle button”\n\t * selected - use for tabs and custom select options\n\t * expanded - use for menus, panels, and popovers\n\t * checked - use for custom [radiobutton](https://www.w3.org/WAI/ARIA/apg/patterns/radiobutton/#wai-aria-roles-states-and-properties-16)\n\t * \t\tor [checkbox](https://www.w3.org/WAI/ARIA/apg/patterns/checkbox/#wai-aria-roles-states-and-properties-5) inputs\n\t */\n\ttoggleAria?: ToggleAria;\n\n\t/**\n\t * Tooltip configuration for the button\n\t */\n\ttooltip?: TooltipConfig;\n\n\t/**\n\t * Selected state variant when the button is a Toggle Button. The visual styles\n\t * are also impacted by the \"kind\" prop. Toggle buttons are only supported\n\t * when \"kind\" is set to either \"ghost\" or \"ghost-inverse\". Setting this prop\n\t * informs the component that this is a toggle button and to add that functionality\n\t */\n\ttoggleStyle?: ToggleStyle;\n}\n\nexport const MrlButton = React.forwardRef<HTMLButtonElement, MrlButtonProps>(function MrlButton(\n\t{\n\t\tattrs,\n\t\tbadge,\n\t\tclassName,\n\t\tdisabled = buttonDefaults.disabled,\n\t\tdisableEvents = false,\n\t\ticon,\n\t\ticonPos = buttonDefaults.iconPos,\n\t\tkind = buttonDefaults.kind,\n\t\tloading = false,\n\t\tloadingText = spinnerDefaults.text,\n\t\tonClick,\n\t\ttoggleAria = buttonDefaults.toggleAria,\n\t\ttoggleStyle,\n\t\ttext,\n\t\tsize = buttonDefaults.size,\n\t\tstate = buttonDefaults.state,\n\t\ttooltip,\n\t\t...remainingProps\n\t}: MrlButtonProps,\n\tref\n) {\n\tconst [isSelected, setIsSelected] = React.useState(() => _isSelected(state));\n\n\t/**\n\t * MrlButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'\n\t */\n\tconst isToggleButton = toggleStyle && allowedButtonValues.toggleStyles.includes(toggleStyle);\n\n\t/**\n\t * We need to watch the value of state to keep in sync\n\t * the value of state passed as props and the internal\n\t * isSelected piece of state.\n\t */\n\tReact.useEffect(() => {\n\t\t// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.\n\t\tsetIsSelected(_isSelected(state));\n\t}, [state]);\n\n\t/**\n\t * Handle onClick events\n\t *\n\t * @param {React.MouseEvent<HTMLButtonElement>} e - mouse event\n\t */\n\tfunction handleOnClick(e: React.MouseEvent<HTMLButtonElement>) {\n\t\te.stopPropagation();\n\n\t\tif (_isDisabled(state, loading) || disabled || disableEvents) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isToggleButton) {\n\t\t\tsetIsSelected((prevIsSelected) => !prevIsSelected);\n\t\t}\n\n\t\tif (onClick && typeof onClick === 'function') {\n\t\t\tonClick(e);\n\t\t}\n\t}\n\n\tconst classNames = classnames(\n\t\t'mrlButton',\n\t\t`mrlButton--${size}`,\n\t\t`mrlButton--${kind}`,\n\t\tstate === 'skeleton' && `mrlButton--skeleton`,\n\t\t!icon && loading && `mrlButton--loading`,\n\t\tisToggleButton && `toggleStyle--${toggleStyle}`,\n\t\ticon && `mrlButton--icon-${iconPos}`,\n\t\tclassName,\n\t\tattrs?.class || attrs?.className\n\t);\n\n\tif (attrs && attrs.class) delete attrs.class;\n\tif (attrs && attrs.className) delete attrs.className;\n\n\tconst spinnerProps = _spinnerProps(kind, size);\n\tconst spinner = (\n\t\t<MrlSpinner kind={spinnerProps.kind} role=\"none\" size={spinnerProps.size} text={loadingText} />\n\t);\n\n\tconst attributes = setAttributes(attrs || {}, {\n\t\t'aria-disabled': _isDisabled(state, loading) || disabled,\n\t\t...(isToggleButton && { [`aria-${toggleAria}`]: isSelected || false }),\n\t\trole: 'button',\n\t\ttype: 'button'\n\t});\n\n\tconst renderButton = () => (\n\t\t<button\n\t\t\t{...attributes}\n\t\t\t{...remainingProps}\n\t\t\tclassName={classNames}\n\t\t\tref={ref}\n\t\t\tonClick={handleOnClick}\n\t\t>\n\t\t\t{loading ? spinner : icon}\n\t\t\t<span className=\"mrlButton-text\">{text}</span>\n\t\t\t{badge}\n\t\t</button>\n\t);\n\n\treturn !tooltip ? (\n\t\trenderButton()\n\t) : (\n\t\t<MrlTooltip\n\t\t\tposition={tooltip.position || 'bottom'}\n\t\t\tanchor={tooltip.anchor || 'center'}\n\t\t\ttext={tooltip.text}\n\t\t\tdataQa={tooltip.dataQa}\n\t\t>\n\t\t\t{renderButton()}\n\t\t</MrlTooltip>\n\t);\n});\n"],"names":["MrlButton","React","forwardRef","_ref","ref","attrs","badge","className","_ref$disabled","disabled","buttonDefaults","_ref$disableEvents","disableEvents","icon","_ref$iconPos","iconPos","_ref$kind","kind","_ref$loading","loading","_ref$loadingText","loadingText","spinnerDefaults","text","onClick","_ref$toggleAria","toggleAria","toggleStyle","_ref$size","size","_ref$state","state","tooltip","remainingProps","_objectWithoutProperties","_excluded","_React$useState","useState","_isSelected","_React$useState2","_slicedToArray","isSelected","setIsSelected","isToggleButton","allowedButtonValues","toggleStyles","includes","useEffect","handleOnClick","e","stopPropagation","_isDisabled","prevIsSelected","classNames","classnames","concat","spinnerProps","_spinnerProps","spinner","createElement","MrlSpinner","role","attributes","setAttributes","_objectSpread","_defineProperty","type","renderButton","_extends","MrlTooltip","position","anchor","dataQa"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MrlButton.js","sources":["../../../../../src/components/button/MrlButton/MrlButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport {\n\tallowedButtonValues,\n\tbuttonDefaults,\n\tMrlButtonKind,\n\tMrlButtonSize,\n\tToggleAria,\n\tIconPosition\n} from '../constants';\nimport { _isDisabled, _isSelected, _spinnerProps } from '../helpers';\nimport { MrlSpinner, MrlTooltipAnchor, MrlTooltipPosition, MrlTooltip } from '../../';\nimport { spinnerDefaults } from '../../loader/constants';\nimport { AttrsObject, MrlComponentProps, setAttributes } from '../../../utils';\n\nimport './MrlButton.global.scss';\n\nexport type MrlButtonState = (typeof allowedButtonValues.states)[number];\nexport type ToggleStyle = (typeof allowedButtonValues.toggleStyles)[number];\n\nexport interface TooltipConfig {\n\t/**\n\t * The text to display in the tooltip\n\t */\n\ttext: string;\n\t/**\n\t * The position of the tooltip relative to the button\n\t */\n\tposition?: MrlTooltipPosition;\n\n\t/**\n\t * The anchor of the tooltip relative to the button\n\t */\n\tanchor?: MrlTooltipAnchor;\n\n\t/**\n\t * The data-qa attribute for the tooltip\n\t */\n\tdataQa?: string;\n}\n\nexport interface MrlButtonProps\n\textends Omit<MrlComponentProps, 'style'>,\n\t\tReact.ComponentProps<'button'> {\n\t/**\n\t * Applies additional HTML attributes to the button element.\n\t *\n\t * @deprecated\n\t */\n\tattrs?: AttrsObject;\n\t/**\n\t * Allow developers to add badge to buttons.\n\t */\n\tbadge?: React.ReactElement;\n\n\t/**\n\t * @deprecated - Use state=\"disabled\" or \"selected-disabled\" or \"skeleton\" instead.\n\t * Allow developers to change the disabled state based on user interactions.\n\t */\n\tdisabled?: boolean;\n\t/**\n\t * Allows developers the ability to disable built in event listeners so they can manage user\n\t * interactions from the application.\n\t */\n\tdisableEvents?: boolean;\n\t/**\n\t * Allow developers to add icon to buttons.\n\t */\n\ticon?: React.ReactElement;\n\t/**\n\t * Allows developers to right-align an icon within a button.\n\t */\n\ticonPos?: IconPosition;\n\t/**\n\t * Changes the visual emphasis of the button.\n\t */\n\tkind?: MrlButtonKind;\n\t/**\n\t * Displays a spinner in the button to indicate some action is in progress.\n\t */\n\tloading?: boolean;\n\t/**\n\t * Text for the spinner when the button is in a loading state.\n\t */\n\tloadingText?: string;\n\t/**\n\t * onClick event for the button.\n\t */\n\tonClick?: (e: React.SyntheticEvent<HTMLButtonElement>) => void;\n\t/**\n\t * Changes the size of the button so it can scale with its surrounding context.\n\t */\n\tsize?: MrlButtonSize;\n\t/**\n\t * Changes the state of the button based on user permissions or actions.\n\t */\n\tstate?: MrlButtonState;\n\t/**\n\t * The textual label describing the button's purpose/action.\n\t * Icon buttons require a text label to ensure accessibility.\n\t */\n\ttext: string;\n\t/**\n\t * Determines which aria setup to use for various toggle/selected styles.\n\t * pressed - use for an traditional “toggle button”\n\t * selected - use for tabs and custom select options\n\t * expanded - use for menus, panels, and popovers\n\t * checked - use for custom [radiobutton](https://www.w3.org/WAI/ARIA/apg/patterns/radiobutton/#wai-aria-roles-states-and-properties-16)\n\t * \t\tor [checkbox](https://www.w3.org/WAI/ARIA/apg/patterns/checkbox/#wai-aria-roles-states-and-properties-5) inputs\n\t */\n\ttoggleAria?: ToggleAria;\n\n\t/**\n\t * Tooltip configuration for the button\n\t */\n\ttooltip?: TooltipConfig;\n\n\t/**\n\t * Selected state variant when the button is a Toggle Button. The visual styles\n\t * are also impacted by the \"kind\" prop. Toggle buttons are only supported\n\t * when \"kind\" is set to either \"ghost\" or \"ghost-inverse\". Setting this prop\n\t * informs the component that this is a toggle button and to add that functionality\n\t */\n\ttoggleStyle?: ToggleStyle;\n}\n\nexport const MrlButton = React.forwardRef<HTMLButtonElement, MrlButtonProps>(function MrlButton(\n\t{\n\t\tattrs,\n\t\tbadge,\n\t\tclassName,\n\t\tdisabled = buttonDefaults.disabled,\n\t\tdisableEvents = false,\n\t\ticon,\n\t\ticonPos = buttonDefaults.iconPos,\n\t\tkind = buttonDefaults.kind,\n\t\tloading = false,\n\t\tloadingText = spinnerDefaults.text,\n\t\tonClick,\n\t\ttoggleAria = buttonDefaults.toggleAria,\n\t\ttoggleStyle,\n\t\ttext,\n\t\tsize = buttonDefaults.size,\n\t\tstate = buttonDefaults.state,\n\t\ttooltip,\n\t\t...remainingProps\n\t}: MrlButtonProps,\n\tref\n) {\n\tconst [isSelected, setIsSelected] = React.useState(() => _isSelected(state));\n\n\t/**\n\t * MrlButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'\n\t */\n\tconst isToggleButton = toggleStyle && allowedButtonValues.toggleStyles.includes(toggleStyle);\n\n\t/**\n\t * We need to watch the value of state to keep in sync\n\t * the value of state passed as props and the internal\n\t * isSelected piece of state.\n\t */\n\tReact.useEffect(() => {\n\t\t// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.\n\t\tsetIsSelected(_isSelected(state));\n\t}, [state]);\n\n\t/**\n\t * Handle onClick events\n\t *\n\t * @param {React.MouseEvent<HTMLButtonElement>} e - mouse event\n\t */\n\tfunction handleOnClick(e: React.MouseEvent<HTMLButtonElement>) {\n\t\te.stopPropagation();\n\n\t\tif (_isDisabled(state, loading) || disabled || disableEvents) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (isToggleButton) {\n\t\t\tsetIsSelected((prevIsSelected) => !prevIsSelected);\n\t\t}\n\n\t\tif (onClick && typeof onClick === 'function') {\n\t\t\tonClick(e);\n\t\t}\n\t}\n\n\tconst classNames = classnames(\n\t\t'mrlButton',\n\t\t`mrlButton--${size}`,\n\t\t`mrlButton--${kind}`,\n\t\tstate === 'skeleton' && `mrlButton--skeleton`,\n\t\t!icon && loading && `mrlButton--loading`,\n\t\tisToggleButton && `toggleStyle--${toggleStyle}`,\n\t\ticon && `mrlButton--icon-${iconPos}`,\n\t\tclassName,\n\t\tattrs?.class || attrs?.className\n\t);\n\n\tif (attrs && attrs.class) delete attrs.class;\n\tif (attrs && attrs.className) delete attrs.className;\n\n\tconst spinnerProps = _spinnerProps(kind, size);\n\tconst spinner = (\n\t\t<MrlSpinner kind={spinnerProps.kind} role=\"none\" size={spinnerProps.size} text={loadingText} />\n\t);\n\n\tconst attributes = setAttributes(attrs || {}, {\n\t\t'aria-disabled': _isDisabled(state, loading) || disabled,\n\t\t...(isToggleButton && { [`aria-${toggleAria}`]: isSelected || false }),\n\t\trole: 'button',\n\t\ttype: 'button'\n\t});\n\n\tconst renderButton = () => (\n\t\t<button\n\t\t\t{...attributes}\n\t\t\t{...remainingProps}\n\t\t\tclassName={classNames}\n\t\t\tref={ref}\n\t\t\tonClick={handleOnClick}\n\t\t>\n\t\t\t{loading ? spinner : icon}\n\t\t\t<span className=\"mrlButton-text\">{text}</span>\n\t\t\t{badge}\n\t\t</button>\n\t);\n\n\treturn !tooltip ? (\n\t\trenderButton()\n\t) : (\n\t\t<MrlTooltip\n\t\t\tposition={tooltip.position || 'bottom'}\n\t\t\tanchor={tooltip.anchor || 'center'}\n\t\t\ttext={tooltip.text}\n\t\t\tdataQa={tooltip.dataQa}\n\t\t>\n\t\t\t{renderButton()}\n\t\t</MrlTooltip>\n\t);\n});\n"],"names":["MrlButton","React","forwardRef","_ref","ref","attrs","badge","className","_ref$disabled","disabled","buttonDefaults","_ref$disableEvents","disableEvents","icon","_ref$iconPos","iconPos","_ref$kind","kind","_ref$loading","loading","_ref$loadingText","loadingText","spinnerDefaults","text","onClick","_ref$toggleAria","toggleAria","toggleStyle","_ref$size","size","_ref$state","state","tooltip","remainingProps","_objectWithoutProperties","_excluded","_React$useState","useState","_isSelected","_React$useState2","_slicedToArray","isSelected","setIsSelected","isToggleButton","allowedButtonValues","toggleStyles","includes","useEffect","handleOnClick","e","stopPropagation","_isDisabled","prevIsSelected","classNames","classnames","concat","class","spinnerProps","_spinnerProps","spinner","createElement","MrlSpinner","role","attributes","setAttributes","_objectSpread","type","renderButton","_extends","MrlTooltip","position","anchor","dataQa"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, objectSpread2 as _objectSpread2, extends as _extends } from '../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { buttonDefaults } from '../constants.js';
|
|
@@ -54,16 +54,12 @@ var MrlIconButton = /*#__PURE__*/React.forwardRef(function MrlIconButton(_ref, r
|
|
|
54
54
|
* This allows the component to work in both controlled and uncontrolled scenarios.
|
|
55
55
|
*/
|
|
56
56
|
var effectiveButtonState = controlledState !== null && controlledState !== void 0 ? controlledState : state;
|
|
57
|
-
var _React$useState = React.useState(
|
|
58
|
-
return _isSelected(effectiveButtonState);
|
|
59
|
-
}),
|
|
57
|
+
var _React$useState = React.useState(() => _isSelected(effectiveButtonState)),
|
|
60
58
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
61
59
|
isSelected = _React$useState2[0],
|
|
62
60
|
setIsSelected = _React$useState2[1];
|
|
63
61
|
var buttonRef = React.useRef(null);
|
|
64
|
-
React.useImperativeHandle(ref,
|
|
65
|
-
return buttonRef.current;
|
|
66
|
-
});
|
|
62
|
+
React.useImperativeHandle(ref, () => buttonRef.current);
|
|
67
63
|
|
|
68
64
|
/**
|
|
69
65
|
* MrlIconButton could behave as a toggle button if toggleStyle is 'default' or 'secondary'
|
|
@@ -75,7 +71,7 @@ var MrlIconButton = /*#__PURE__*/React.forwardRef(function MrlIconButton(_ref, r
|
|
|
75
71
|
* the value of state passed as props and the internal
|
|
76
72
|
* isSelected piece of state.
|
|
77
73
|
*/
|
|
78
|
-
React.useEffect(
|
|
74
|
+
React.useEffect(() => {
|
|
79
75
|
// allows consumers to set the 'selected' or 'selected-disabled' state from a parent component.
|
|
80
76
|
setIsSelected(_isSelected(effectiveButtonState));
|
|
81
77
|
}, [effectiveButtonState]);
|
|
@@ -90,18 +86,16 @@ var MrlIconButton = /*#__PURE__*/React.forwardRef(function MrlIconButton(_ref, r
|
|
|
90
86
|
return;
|
|
91
87
|
}
|
|
92
88
|
if (isToggleButton && !controlledState) {
|
|
93
|
-
setIsSelected(
|
|
94
|
-
return !prevIsSelected;
|
|
95
|
-
});
|
|
89
|
+
setIsSelected(prevIsSelected => !prevIsSelected);
|
|
96
90
|
}
|
|
97
91
|
if (onClick && typeof onClick === 'function') {
|
|
98
92
|
onClick(e);
|
|
99
93
|
}
|
|
100
94
|
}
|
|
101
|
-
var classNames = classnames('mrlIconButton', "mrlIconButton--".concat(size), "mrlIconButton--".concat(kind), isToggleButton && toggleStyle && "toggleStyle--".concat(toggleStyle), attrs
|
|
102
|
-
delete attrs
|
|
95
|
+
var classNames = classnames('mrlIconButton', "mrlIconButton--".concat(size), "mrlIconButton--".concat(kind), isToggleButton && toggleStyle && "toggleStyle--".concat(toggleStyle), attrs.class || attrs.className, className);
|
|
96
|
+
delete attrs.class;
|
|
103
97
|
delete attrs.className;
|
|
104
|
-
var getAriaLabel =
|
|
98
|
+
var getAriaLabel = () => {
|
|
105
99
|
// Set loading text if loading
|
|
106
100
|
if (loading) return "".concat(loadingText, " ").concat(text);
|
|
107
101
|
|
|
@@ -118,16 +112,16 @@ var MrlIconButton = /*#__PURE__*/React.forwardRef(function MrlIconButton(_ref, r
|
|
|
118
112
|
var attributes = setAttributes(attrs, _objectSpread2(_objectSpread2({
|
|
119
113
|
'aria-disabled': _isDisabled(effectiveButtonState, loading),
|
|
120
114
|
'aria-label': ariaLabelValue
|
|
121
|
-
}, isToggleButton &&
|
|
115
|
+
}, isToggleButton && {
|
|
116
|
+
["aria-".concat(toggleAria)]: isSelected || false
|
|
117
|
+
}), {}, {
|
|
122
118
|
type: 'button'
|
|
123
119
|
}));
|
|
124
120
|
|
|
125
121
|
// MrlSvg should always have size="auto"
|
|
126
|
-
var iconWithSizeAuto = React.useMemo(
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
});
|
|
130
|
-
}, [icon]);
|
|
122
|
+
var iconWithSizeAuto = React.useMemo(() => /*#__PURE__*/React.cloneElement(icon, {
|
|
123
|
+
size: 'auto'
|
|
124
|
+
}), [icon]);
|
|
131
125
|
var spinnerProps = _spinnerProps(kind, size);
|
|
132
126
|
var spinner = /*#__PURE__*/React.createElement(MrlSpinner, {
|
|
133
127
|
kind: spinnerProps.kind,
|