@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
package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlEditableTextInput.js","sources":["../../../../../../src/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport { InputStates, MrlFormInputError } from '../../constants';\nimport { edit, error as errorIcon } from '@muraldevkit/ds-icons';\nimport styles from './MrlEditableTextInput.module.scss';\nimport './MrlEditableTextInput.global.scss';\nimport { useActiveColor } from '../../hooks/useActiveColor';\nimport { useIsEditable } from '../../hooks/useIsEditable';\nimport { MrlEditableTextInputRightButton } from './MrlEditableTextInputRightIcon';\nimport { MrlSvg } from '../../..';\n\ninterface MrlEditableTextInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n\t/** Id of the text input */\n\tinputId: string;\n\t/**\n\t * \tValue of the label text assigned to the input.\n\t * This is used to describe to the user what field they will be editing when interacting with the edit buton.\n\t */\n\tinputLabelText: string;\n\t/** The value of the text input used to make it a controlled input */\n\tvalue?: string;\n\t/**\n\t * The maximum number of characters that the user can enter.\n\t * If undefined or set to \"0\", removes the character counter from the textarea\n\t */\n\tmaxLength?: number;\n\t/** Text placeholder for the text input */\n\tplaceholder?: string;\n\t/**\n\t * Changes the state of the input based on user permissions or actions.\n\t */\n\tstate?: InputStates;\n\terror?: MrlFormInputError;\n\t'data-qa': string;\n\t/* Expost isEditable and setIsEditable as optionally controlled state */\n\tisEditable?: boolean;\n\tsetIsEditable?: (isEditableUpdate: boolean) => void;\n\n\t/**\n\t * Show icon on hover, if true the icon will be hidden and show on hover and focus\n\t * @default false\n\t */\n\tshowIconOnHover?: boolean;\n}\n\nexport const MrlEditableTextInput = React.forwardRef<HTMLButtonElement, MrlEditableTextInputProps>(\n\tfunction MrlEditiableTextInput(\n\t\tprops: MrlEditableTextInputProps,\n\t\tref: React.Ref<HTMLButtonElement>\n\t): JSX.Element {\n\t\tconst {\n\t\t\tinputId,\n\t\t\tmaxLength,\n\t\t\tplaceholder,\n\t\t\tstate,\n\t\t\tvalue,\n\t\t\terror,\n\t\t\tisEditable: controlledIsEditable,\n\t\t\tsetIsEditable: controlledIsEditableUpdate,\n\t\t\tshowIconOnHover = false,\n\t\t\tinputLabelText,\n\t\t\t...attrs\n\t\t} = props;\n\t\t// html id to be reference by input and error description to relay the error for a specific input\n\t\tconst describedById = `${inputId}-description`;\n\t\tconst textInputRef = React.useRef<HTMLInputElement>(null);\n\t\tconst iconRef = React.useRef<HTMLButtonElement>(null);\n\n\t\tconst { hasActiveColor, setHasActiveColor } = useActiveColor(state);\n\t\tconst { isEditable, isEditing, setIsEditable, setIsEditing } = useIsEditable({\n\t\t\tchangeHandler: controlledIsEditableUpdate,\n\t\t\tinitialValue: false,\n\t\t\tstate,\n\t\t\tvalue: controlledIsEditable\n\t\t});\n\n\t\tReact.useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n\t\t\tref,\n\t\t\t() => iconRef.current\n\t\t);\n\n\t\tconst unlockInput = React.useCallback(() => {\n\t\t\tsetIsEditable(true);\n\t\t\tsetIsEditing(true);\n\t\t}, [setIsEditable, setIsEditing]);\n\n\t\tconst lockInput = React.useCallback(() => {\n\t\t\tsetIsEditable(false);\n\t\t\tsetIsEditing(false);\n\t\t}, [setIsEditable, setIsEditing]);\n\t\tconst handleOnClick = (e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\tif (!isEditable && !isEditing) {\n\t\t\t\tunlockInput();\n\t\t\t}\n\n\t\t\t/*\n\t\t\t * Only to be executed if onClick is provided as a prop\n\t\t\t */\n\t\t\tif (typeof attrs.onClick === 'function') {\n\t\t\t\tattrs.onClick(e);\n\t\t\t}\n\t\t};\n\n\t\tconst handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n\t\t\tconst { key } = event;\n\n\t\t\t// Selects the item on enter or spacebar and closes the select\n\t\t\tif (key === 'Escape') {\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tlockInput();\n\t\t\t\ticonRef.current?.focus();\n\t\t\t}\n\n\t\t\tif (typeof attrs.onKeyDown === 'function') {\n\t\t\t\tattrs.onKeyDown(event);\n\t\t\t}\n\t\t};\n\n\t\tconst handleOnBlur = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tlockInput();\n\t\t\t\tif (typeof attrs.onBlur === 'function') {\n\t\t\t\t\tattrs.onBlur(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor, lockInput]\n\t\t);\n\n\t\tconst handleOnFocus = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof attrs.onFocus === 'function') {\n\t\t\t\t\tattrs.onFocus(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseEnter = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof attrs.onMouseEnter === 'function') {\n\t\t\t\t\tattrs.onMouseEnter(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseLeave = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof attrs.onMouseLeave === 'function') {\n\t\t\t\t\tattrs.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tReact.useEffect(() => {\n\t\t\tif (iconRef.current) {\n\t\t\t\tif (attrs.autoFocus) {\n\t\t\t\t\ticonRef.current.focus();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// it should only run on the first render\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, []);\n\n\t\tReact.useEffect(() => {\n\t\t\t// when editiable changes focus to current thingy\n\t\t\tif (isEditable && textInputRef.current) {\n\t\t\t\ttextInputRef.current.focus();\n\t\t\t}\n\t\t}, [isEditable, isEditing]);\n\n\t\tconst inputClasses = classnames(\n\t\t\t'MrlEditableTextInput',\n\t\t\tstyles['MrlEditableTextInput'],\n\t\t\tstyles['mrl-textInput'],\n\t\t\t{\n\t\t\t\t[styles['MrlEditableTextInput-errorMessage']]: state === 'error',\n\t\t\t\t[styles['MrlEditableTextInput-errorIcon']]: state === 'error',\n\t\t\t\t[styles['MrlEditableTextInput--dynamicIcon']]: state !== 'read-only',\n\t\t\t\t[styles['MrlEditableTextInput--readOnly']]: state === 'read-only',\n\t\t\t\t[styles['MrlEditableTextInput--active']]: hasActiveColor,\n\t\t\t\t// if an onClick property is provided, we need to apply the class that allows pointer events\n\t\t\t\t[styles['MrlEditableTextInput--allowOnClick']]: typeof attrs.onClick === 'function'\n\t\t\t},\n\t\t\tattrs.className\n\t\t);\n\n\t\tconst hasCounter = typeof maxLength !== 'undefined' && Number(maxLength) > 0;\n\t\tif (hasCounter && isNaN(Number(maxLength))) {\n\t\t\tthrow new Error('maxLength should have type number');\n\t\t}\n\n\t\tconst hasErrorMessage = state === 'error' && error?.message;\n\n\t\t// do not pass class info to child elements/components\n\t\tdelete attrs.className;\n\n\t\tconst iconClasses = classnames(\n\t\t\t'MrlEditableTextInput-right-button',\n\t\t\tstyles['MrlEditableTextInput-right-button'],\n\t\t\t{\n\t\t\t\t[styles['MrlEditableTextInput-hover-button']]: showIconOnHover\n\t\t\t}\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div\n\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\tstyles['MrlEditableTextInput--wrapper'],\n\t\t\t\t\t\t'MrlEditableTextInput--wrapper'\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t{...attrs}\n\t\t\t\t\t\tonClick={handleOnClick}\n\t\t\t\t\t\taria-invalid={state === 'error'}\n\t\t\t\t\t\taria-describedby={hasErrorMessage ? describedById : undefined}\n\t\t\t\t\t\tclassName={inputClasses}\n\t\t\t\t\t\tdisabled={state === 'disabled'}\n\t\t\t\t\t\tmaxLength={hasCounter ? maxLength : undefined}\n\t\t\t\t\t\tonBlur={handleOnBlur}\n\t\t\t\t\t\tonFocus={handleOnFocus}\n\t\t\t\t\t\tonMouseEnter={handleOnMouseEnter}\n\t\t\t\t\t\tonMouseLeave={handleOnMouseLeave}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\tid={inputId}\n\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\treadOnly={state === 'read-only' || !isEditable}\n\t\t\t\t\t\ttabIndex={!isEditable ? -1 : 0}\n\t\t\t\t\t\tref={textInputRef}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t/>\n\t\t\t\t\t{state !== 'read-only' && state !== 'disabled' && (\n\t\t\t\t\t\t<span className={iconClasses}>\n\t\t\t\t\t\t\t<MrlEditableTextInputRightButton\n\t\t\t\t\t\t\t\taction={unlockInput}\n\t\t\t\t\t\t\t\ticon={edit}\n\t\t\t\t\t\t\t\tlabel={`Edit: ${inputLabelText || inputId}`}\n\t\t\t\t\t\t\t\tdataQa={attrs['data-qa'] && `${attrs['data-qa']}-edit`}\n\t\t\t\t\t\t\t\thasActiveColor={hasActiveColor || isEditable}\n\t\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\t\tref={iconRef}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasCounter && (\n\t\t\t\t\t<span className={styles['MrlForm-counter']}>\n\t\t\t\t\t\t<span aria-hidden=\"true\">\n\t\t\t\t\t\t\t{value?.length || 0}/{maxLength}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<p style={{ display: 'none' }} id={`${inputId}-counter`}>\n\t\t\t\t\t\t\t{`${maxLength - (value?.length || 0)} of ${maxLength} characters remaining`}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t{hasErrorMessage && (\n\t\t\t\t\t<span className={styles['MrlEditableTextInput-errorMessage']}>\n\t\t\t\t\t\t<MrlSvg\n\t\t\t\t\t\t\tclassName={styles['MrlEditableTextInput-errorIcon']}\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tsvg={errorIcon}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span id={describedById}>{`${error?.message}`}</span>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n);\n"],"names":["MrlEditableTextInput","React","forwardRef","MrlEditiableTextInput","props","ref","inputId","maxLength","placeholder","state","value","error","controlledIsEditable","isEditable","controlledIsEditableUpdate","setIsEditable","_props$showIconOnHove","showIconOnHover","inputLabelText","attrs","_objectWithoutProperties","_excluded","describedById","concat","textInputRef","useRef","iconRef","_useActiveColor","useActiveColor","hasActiveColor","setHasActiveColor","_useIsEditable","useIsEditable","changeHandler","initialValue","isEditing","setIsEditing","useImperativeHandle","current","unlockInput","useCallback","lockInput","handleOnClick","e","onClick","handleKeyDown","event","key","_iconRef$current","stopPropagation","preventDefault","focus","onKeyDown","handleOnBlur","onBlur","handleOnFocus","onFocus","handleOnMouseEnter","onMouseEnter","handleOnMouseLeave","onMouseLeave","useEffect","autoFocus","inputClasses","classnames","styles","_defineProperty","className","hasCounter","Number","isNaN","Error","hasErrorMessage","message","iconClasses","createElement","Fragment","_extends","type","undefined","disabled","id","readOnly","tabIndex","MrlEditableTextInputRightButton","action","icon","edit","label","dataQa","length","style","display","MrlSvg","svg","errorIcon","size"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MrlEditableTextInput.js","sources":["../../../../../../src/components/form/text-input/MrlEditableTextInput/MrlEditableTextInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport { InputStates, MrlFormInputError } from '../../constants';\nimport { edit, error as errorIcon } from '@muraldevkit/ds-icons';\nimport styles from './MrlEditableTextInput.module.scss';\nimport './MrlEditableTextInput.global.scss';\nimport { useActiveColor } from '../../hooks/useActiveColor';\nimport { useIsEditable } from '../../hooks/useIsEditable';\nimport { MrlEditableTextInputRightButton } from './MrlEditableTextInputRightIcon';\nimport { MrlSvg } from '../../..';\n\ninterface MrlEditableTextInputProps extends React.InputHTMLAttributes<HTMLInputElement> {\n\t/** Id of the text input */\n\tinputId: string;\n\t/**\n\t * \tValue of the label text assigned to the input.\n\t * This is used to describe to the user what field they will be editing when interacting with the edit buton.\n\t */\n\tinputLabelText: string;\n\t/** The value of the text input used to make it a controlled input */\n\tvalue?: string;\n\t/**\n\t * The maximum number of characters that the user can enter.\n\t * If undefined or set to \"0\", removes the character counter from the textarea\n\t */\n\tmaxLength?: number;\n\t/** Text placeholder for the text input */\n\tplaceholder?: string;\n\t/**\n\t * Changes the state of the input based on user permissions or actions.\n\t */\n\tstate?: InputStates;\n\terror?: MrlFormInputError;\n\t'data-qa': string;\n\t/* Expost isEditable and setIsEditable as optionally controlled state */\n\tisEditable?: boolean;\n\tsetIsEditable?: (isEditableUpdate: boolean) => void;\n\n\t/**\n\t * Show icon on hover, if true the icon will be hidden and show on hover and focus\n\t * @default false\n\t */\n\tshowIconOnHover?: boolean;\n}\n\nexport const MrlEditableTextInput = React.forwardRef<HTMLButtonElement, MrlEditableTextInputProps>(\n\tfunction MrlEditiableTextInput(\n\t\tprops: MrlEditableTextInputProps,\n\t\tref: React.Ref<HTMLButtonElement>\n\t): JSX.Element {\n\t\tconst {\n\t\t\tinputId,\n\t\t\tmaxLength,\n\t\t\tplaceholder,\n\t\t\tstate,\n\t\t\tvalue,\n\t\t\terror,\n\t\t\tisEditable: controlledIsEditable,\n\t\t\tsetIsEditable: controlledIsEditableUpdate,\n\t\t\tshowIconOnHover = false,\n\t\t\tinputLabelText,\n\t\t\t...attrs\n\t\t} = props;\n\t\t// html id to be reference by input and error description to relay the error for a specific input\n\t\tconst describedById = `${inputId}-description`;\n\t\tconst textInputRef = React.useRef<HTMLInputElement>(null);\n\t\tconst iconRef = React.useRef<HTMLButtonElement>(null);\n\n\t\tconst { hasActiveColor, setHasActiveColor } = useActiveColor(state);\n\t\tconst { isEditable, isEditing, setIsEditable, setIsEditing } = useIsEditable({\n\t\t\tchangeHandler: controlledIsEditableUpdate,\n\t\t\tinitialValue: false,\n\t\t\tstate,\n\t\t\tvalue: controlledIsEditable\n\t\t});\n\n\t\tReact.useImperativeHandle<HTMLButtonElement | null, HTMLButtonElement | null>(\n\t\t\tref,\n\t\t\t() => iconRef.current\n\t\t);\n\n\t\tconst unlockInput = React.useCallback(() => {\n\t\t\tsetIsEditable(true);\n\t\t\tsetIsEditing(true);\n\t\t}, [setIsEditable, setIsEditing]);\n\n\t\tconst lockInput = React.useCallback(() => {\n\t\t\tsetIsEditable(false);\n\t\t\tsetIsEditing(false);\n\t\t}, [setIsEditable, setIsEditing]);\n\t\tconst handleOnClick = (e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\tif (!isEditable && !isEditing) {\n\t\t\t\tunlockInput();\n\t\t\t}\n\n\t\t\t/*\n\t\t\t * Only to be executed if onClick is provided as a prop\n\t\t\t */\n\t\t\tif (typeof attrs.onClick === 'function') {\n\t\t\t\tattrs.onClick(e);\n\t\t\t}\n\t\t};\n\n\t\tconst handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n\t\t\tconst { key } = event;\n\n\t\t\t// Selects the item on enter or spacebar and closes the select\n\t\t\tif (key === 'Escape') {\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tevent.preventDefault();\n\t\t\t\tlockInput();\n\t\t\t\ticonRef.current?.focus();\n\t\t\t}\n\n\t\t\tif (typeof attrs.onKeyDown === 'function') {\n\t\t\t\tattrs.onKeyDown(event);\n\t\t\t}\n\t\t};\n\n\t\tconst handleOnBlur = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tlockInput();\n\t\t\t\tif (typeof attrs.onBlur === 'function') {\n\t\t\t\t\tattrs.onBlur(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor, lockInput]\n\t\t);\n\n\t\tconst handleOnFocus = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof attrs.onFocus === 'function') {\n\t\t\t\t\tattrs.onFocus(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseEnter = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof attrs.onMouseEnter === 'function') {\n\t\t\t\t\tattrs.onMouseEnter(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseLeave = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof attrs.onMouseLeave === 'function') {\n\t\t\t\t\tattrs.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attrs, setHasActiveColor]\n\t\t);\n\n\t\tReact.useEffect(() => {\n\t\t\tif (iconRef.current) {\n\t\t\t\tif (attrs.autoFocus) {\n\t\t\t\t\ticonRef.current.focus();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// it should only run on the first render\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, []);\n\n\t\tReact.useEffect(() => {\n\t\t\t// when editiable changes focus to current thingy\n\t\t\tif (isEditable && textInputRef.current) {\n\t\t\t\ttextInputRef.current.focus();\n\t\t\t}\n\t\t}, [isEditable, isEditing]);\n\n\t\tconst inputClasses = classnames(\n\t\t\t'MrlEditableTextInput',\n\t\t\tstyles['MrlEditableTextInput'],\n\t\t\tstyles['mrl-textInput'],\n\t\t\t{\n\t\t\t\t[styles['MrlEditableTextInput-errorMessage']]: state === 'error',\n\t\t\t\t[styles['MrlEditableTextInput-errorIcon']]: state === 'error',\n\t\t\t\t[styles['MrlEditableTextInput--dynamicIcon']]: state !== 'read-only',\n\t\t\t\t[styles['MrlEditableTextInput--readOnly']]: state === 'read-only',\n\t\t\t\t[styles['MrlEditableTextInput--active']]: hasActiveColor,\n\t\t\t\t// if an onClick property is provided, we need to apply the class that allows pointer events\n\t\t\t\t[styles['MrlEditableTextInput--allowOnClick']]: typeof attrs.onClick === 'function'\n\t\t\t},\n\t\t\tattrs.className\n\t\t);\n\n\t\tconst hasCounter = typeof maxLength !== 'undefined' && Number(maxLength) > 0;\n\t\tif (hasCounter && isNaN(Number(maxLength))) {\n\t\t\tthrow new Error('maxLength should have type number');\n\t\t}\n\n\t\tconst hasErrorMessage = state === 'error' && error?.message;\n\n\t\t// do not pass class info to child elements/components\n\t\tdelete attrs.className;\n\n\t\tconst iconClasses = classnames(\n\t\t\t'MrlEditableTextInput-right-button',\n\t\t\tstyles['MrlEditableTextInput-right-button'],\n\t\t\t{\n\t\t\t\t[styles['MrlEditableTextInput-hover-button']]: showIconOnHover\n\t\t\t}\n\t\t);\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div\n\t\t\t\t\tclassName={classnames(\n\t\t\t\t\t\tstyles['MrlEditableTextInput--wrapper'],\n\t\t\t\t\t\t'MrlEditableTextInput--wrapper'\n\t\t\t\t\t)}\n\t\t\t\t>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t{...attrs}\n\t\t\t\t\t\tonClick={handleOnClick}\n\t\t\t\t\t\taria-invalid={state === 'error'}\n\t\t\t\t\t\taria-describedby={hasErrorMessage ? describedById : undefined}\n\t\t\t\t\t\tclassName={inputClasses}\n\t\t\t\t\t\tdisabled={state === 'disabled'}\n\t\t\t\t\t\tmaxLength={hasCounter ? maxLength : undefined}\n\t\t\t\t\t\tonBlur={handleOnBlur}\n\t\t\t\t\t\tonFocus={handleOnFocus}\n\t\t\t\t\t\tonMouseEnter={handleOnMouseEnter}\n\t\t\t\t\t\tonMouseLeave={handleOnMouseLeave}\n\t\t\t\t\t\tonKeyDown={handleKeyDown}\n\t\t\t\t\t\tid={inputId}\n\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\treadOnly={state === 'read-only' || !isEditable}\n\t\t\t\t\t\ttabIndex={!isEditable ? -1 : 0}\n\t\t\t\t\t\tref={textInputRef}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t/>\n\t\t\t\t\t{state !== 'read-only' && state !== 'disabled' && (\n\t\t\t\t\t\t<span className={iconClasses}>\n\t\t\t\t\t\t\t<MrlEditableTextInputRightButton\n\t\t\t\t\t\t\t\taction={unlockInput}\n\t\t\t\t\t\t\t\ticon={edit}\n\t\t\t\t\t\t\t\tlabel={`Edit: ${inputLabelText || inputId}`}\n\t\t\t\t\t\t\t\tdataQa={attrs['data-qa'] && `${attrs['data-qa']}-edit`}\n\t\t\t\t\t\t\t\thasActiveColor={hasActiveColor || isEditable}\n\t\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\t\tref={iconRef}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{hasCounter && (\n\t\t\t\t\t<span className={styles['MrlForm-counter']}>\n\t\t\t\t\t\t<span aria-hidden=\"true\">\n\t\t\t\t\t\t\t{value?.length || 0}/{maxLength}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<p style={{ display: 'none' }} id={`${inputId}-counter`}>\n\t\t\t\t\t\t\t{`${maxLength - (value?.length || 0)} of ${maxLength} characters remaining`}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t\t{hasErrorMessage && (\n\t\t\t\t\t<span className={styles['MrlEditableTextInput-errorMessage']}>\n\t\t\t\t\t\t<MrlSvg\n\t\t\t\t\t\t\tclassName={styles['MrlEditableTextInput-errorIcon']}\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tsvg={errorIcon}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<span id={describedById}>{`${error?.message}`}</span>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n);\n"],"names":["MrlEditableTextInput","React","forwardRef","MrlEditiableTextInput","props","ref","inputId","maxLength","placeholder","state","value","error","controlledIsEditable","isEditable","controlledIsEditableUpdate","setIsEditable","_props$showIconOnHove","showIconOnHover","inputLabelText","attrs","_objectWithoutProperties","_excluded","describedById","concat","textInputRef","useRef","iconRef","_useActiveColor","useActiveColor","hasActiveColor","setHasActiveColor","_useIsEditable","useIsEditable","changeHandler","initialValue","isEditing","setIsEditing","useImperativeHandle","current","unlockInput","useCallback","lockInput","handleOnClick","e","onClick","handleKeyDown","event","key","_iconRef$current","stopPropagation","preventDefault","focus","onKeyDown","handleOnBlur","onBlur","handleOnFocus","onFocus","handleOnMouseEnter","onMouseEnter","handleOnMouseLeave","onMouseLeave","useEffect","autoFocus","inputClasses","classnames","styles","className","hasCounter","Number","isNaN","Error","hasErrorMessage","message","iconClasses","createElement","Fragment","_extends","type","undefined","disabled","id","readOnly","tabIndex","MrlEditableTextInputRightButton","action","icon","edit","label","dataQa","length","style","display","MrlSvg","svg","errorIcon","size"],"mappings":"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"}
|
package/dist/esm/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { defineProperty as _defineProperty } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
1
|
import * as React from 'react';
|
|
3
2
|
import classnames from 'classnames';
|
|
4
3
|
import styles from './MrlEditableTextInput.module.scss.js';
|
|
@@ -17,31 +16,25 @@ var MrlEditableTextInputRightButton = /*#__PURE__*/React.forwardRef(function Mrl
|
|
|
17
16
|
icon = _ref.icon,
|
|
18
17
|
label = _ref.label,
|
|
19
18
|
setHasActiveColor = _ref.setHasActiveColor;
|
|
20
|
-
var handleKeyUp = React.useCallback(
|
|
19
|
+
var handleKeyUp = React.useCallback(e => {
|
|
21
20
|
if (e.key === ' ' || e.key === 'Enter') {
|
|
22
21
|
action(e);
|
|
23
22
|
}
|
|
24
23
|
}, [action]);
|
|
25
24
|
return /*#__PURE__*/React.createElement("span", {
|
|
26
|
-
className: classnames(styles['MrlEditableTextInput-dynamicIcon'],
|
|
25
|
+
className: classnames(styles['MrlEditableTextInput-dynamicIcon'], {
|
|
26
|
+
[styles['MrlEditableTextInput-dynamicIcon--active']]: hasActiveColor
|
|
27
|
+
})
|
|
27
28
|
}, /*#__PURE__*/React.createElement("button", {
|
|
28
29
|
type: "button",
|
|
29
30
|
"aria-label": label,
|
|
30
31
|
onMouseUp: action,
|
|
31
32
|
onKeyUp: handleKeyUp,
|
|
32
33
|
"data-qa": dataQa,
|
|
33
|
-
onMouseEnter:
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
return setHasActiveColor(false);
|
|
38
|
-
},
|
|
39
|
-
onFocus: function onFocus() {
|
|
40
|
-
return setHasActiveColor(true);
|
|
41
|
-
},
|
|
42
|
-
onBlur: function onBlur() {
|
|
43
|
-
return setHasActiveColor(false);
|
|
44
|
-
},
|
|
34
|
+
onMouseEnter: () => setHasActiveColor(true),
|
|
35
|
+
onMouseLeave: () => setHasActiveColor(false),
|
|
36
|
+
onFocus: () => setHasActiveColor(true),
|
|
37
|
+
onBlur: () => setHasActiveColor(false),
|
|
45
38
|
ref: ref
|
|
46
39
|
}, /*#__PURE__*/React.createElement(MrlSvg, {
|
|
47
40
|
"aria-hidden": "true",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlEditableTextInputRightIcon.js","sources":["../../../../../../src/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DSIconType, MrlSvg } from '../../..';\nimport classnames from 'classnames';\n\nimport styles from './MrlEditableTextInput.module.scss';\n\nexport interface MrlEditableInputRightButtonProps {\n\t/** the action that should be executed when interacting with the icon */\n\taction: (event: React.MouseEvent | React.KeyboardEvent) => void;\n\t/** the icon that will be rendered */\n\ticon: DSIconType;\n\t/** data-qa attribute for the icon */\n\tdataQa?: string;\n\t/** describes the purpouse of the icon button */\n\tlabel: string;\n\t/** determines if the icon has active color or not */\n\thasActiveColor: boolean;\n\tsetHasActiveColor: (hasActiveColor: boolean) => void;\n\t/** the text input value used to calculate the active style */\n\tvalue?: string;\n\tref?: HTMLButtonElement;\n}\n\n/**\n * Renders the right icon in the text input\n *\n * @param {MrlEditableInputRightButtonProps} props - the component props\n * @returns a button element with an icon\n */\nexport const MrlEditableTextInputRightButton = React.forwardRef<\n\tHTMLButtonElement,\n\tMrlEditableInputRightButtonProps\n>(function MrlEditableTextInputRightButton(\n\t{\n\t\taction,\n\t\tdataQa,\n\t\thasActiveColor,\n\t\ticon,\n\t\tlabel,\n\t\tsetHasActiveColor\n\t}: MrlEditableInputRightButtonProps,\n\tref\n): JSX.Element {\n\tconst handleKeyUp = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === ' ' || e.key === 'Enter') {\n\t\t\t\taction(e);\n\t\t\t}\n\t\t},\n\t\t[action]\n\t);\n\n\treturn (\n\t\t<span\n\t\t\tclassName={classnames(styles['MrlEditableTextInput-dynamicIcon'], {\n\t\t\t\t[styles['MrlEditableTextInput-dynamicIcon--active']]: hasActiveColor\n\t\t\t})}\n\t\t>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={label}\n\t\t\t\tonMouseUp={action}\n\t\t\t\tonKeyUp={handleKeyUp}\n\t\t\t\tdata-qa={dataQa}\n\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\tonFocus={() => setHasActiveColor(true)}\n\t\t\t\tonBlur={() => setHasActiveColor(false)}\n\t\t\t\tref={ref}\n\t\t\t>\n\t\t\t\t<MrlSvg aria-hidden=\"true\" svg={icon} size=\"small\" />\n\t\t\t</button>\n\t\t</span>\n\t);\n});\n"],"names":["MrlEditableTextInputRightButton","React","forwardRef","_ref","ref","action","dataQa","hasActiveColor","icon","label","setHasActiveColor","handleKeyUp","useCallback","e","key","createElement","className","classnames","styles","
|
|
1
|
+
{"version":3,"file":"MrlEditableTextInputRightIcon.js","sources":["../../../../../../src/components/form/text-input/MrlEditableTextInput/MrlEditableTextInputRightIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DSIconType, MrlSvg } from '../../..';\nimport classnames from 'classnames';\n\nimport styles from './MrlEditableTextInput.module.scss';\n\nexport interface MrlEditableInputRightButtonProps {\n\t/** the action that should be executed when interacting with the icon */\n\taction: (event: React.MouseEvent | React.KeyboardEvent) => void;\n\t/** the icon that will be rendered */\n\ticon: DSIconType;\n\t/** data-qa attribute for the icon */\n\tdataQa?: string;\n\t/** describes the purpouse of the icon button */\n\tlabel: string;\n\t/** determines if the icon has active color or not */\n\thasActiveColor: boolean;\n\tsetHasActiveColor: (hasActiveColor: boolean) => void;\n\t/** the text input value used to calculate the active style */\n\tvalue?: string;\n\tref?: HTMLButtonElement;\n}\n\n/**\n * Renders the right icon in the text input\n *\n * @param {MrlEditableInputRightButtonProps} props - the component props\n * @returns a button element with an icon\n */\nexport const MrlEditableTextInputRightButton = React.forwardRef<\n\tHTMLButtonElement,\n\tMrlEditableInputRightButtonProps\n>(function MrlEditableTextInputRightButton(\n\t{\n\t\taction,\n\t\tdataQa,\n\t\thasActiveColor,\n\t\ticon,\n\t\tlabel,\n\t\tsetHasActiveColor\n\t}: MrlEditableInputRightButtonProps,\n\tref\n): JSX.Element {\n\tconst handleKeyUp = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === ' ' || e.key === 'Enter') {\n\t\t\t\taction(e);\n\t\t\t}\n\t\t},\n\t\t[action]\n\t);\n\n\treturn (\n\t\t<span\n\t\t\tclassName={classnames(styles['MrlEditableTextInput-dynamicIcon'], {\n\t\t\t\t[styles['MrlEditableTextInput-dynamicIcon--active']]: hasActiveColor\n\t\t\t})}\n\t\t>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={label}\n\t\t\t\tonMouseUp={action}\n\t\t\t\tonKeyUp={handleKeyUp}\n\t\t\t\tdata-qa={dataQa}\n\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\tonFocus={() => setHasActiveColor(true)}\n\t\t\t\tonBlur={() => setHasActiveColor(false)}\n\t\t\t\tref={ref}\n\t\t\t>\n\t\t\t\t<MrlSvg aria-hidden=\"true\" svg={icon} size=\"small\" />\n\t\t\t</button>\n\t\t</span>\n\t);\n});\n"],"names":["MrlEditableTextInputRightButton","React","forwardRef","_ref","ref","action","dataQa","hasActiveColor","icon","label","setHasActiveColor","handleKeyUp","useCallback","e","key","createElement","className","classnames","styles","type","onMouseUp","onKeyUp","onMouseEnter","onMouseLeave","onFocus","onBlur","MrlSvg","svg","size"],"mappings":";;;;;AAuBA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,+BAA+B,gBAAGC,KAAK,CAACC,UAAU,CAG7D,SAASF,+BAA+BA,CAAAG,IAAA,EASzCC,GAAG,EACW;AAAA,EAAA,IARbC,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNC,MAAM,GAAAH,IAAA,CAANG,MAAM;IACNC,cAAc,GAAAJ,IAAA,CAAdI,cAAc;IACdC,IAAI,GAAAL,IAAA,CAAJK,IAAI;IACJC,KAAK,GAAAN,IAAA,CAALM,KAAK;IACLC,iBAAiB,GAAAP,IAAA,CAAjBO,iBAAiB;AAIlB,EAAA,IAAMC,WAAW,GAAGV,KAAK,CAACW,WAAW,CACnCC,CAAyC,IAAK;IAC9C,IAAIA,CAAC,CAACC,GAAG,KAAK,GAAG,IAAID,CAAC,CAACC,GAAG,KAAK,OAAO,EAAE;MACvCT,MAAM,CAACQ,CAAC,CAAC;AACV,IAAA;AACD,EAAA,CAAC,EACD,CAACR,MAAM,CACR,CAAC;EAED,oBACCJ,KAAA,CAAAc,aAAA,CAAA,MAAA,EAAA;AACCC,IAAAA,SAAS,EAAEC,UAAU,CAACC,MAAM,CAAC,kCAAkC,CAAC,EAAE;AACjE,MAAA,CAACA,MAAM,CAAC,0CAA0C,CAAC,GAAGX;KACtD;GAAE,eAEHN,KAAA,CAAAc,aAAA,CAAA,QAAA,EAAA;AACCI,IAAAA,IAAI,EAAC,QAAQ;AACb,IAAA,YAAA,EAAYV,KAAM;AAClBW,IAAAA,SAAS,EAAEf,MAAO;AAClBgB,IAAAA,OAAO,EAAEV,WAAY;AACrB,IAAA,SAAA,EAASL,MAAO;AAChBgB,IAAAA,YAAY,EAAEA,MAAMZ,iBAAiB,CAAC,IAAI,CAAE;AAC5Ca,IAAAA,YAAY,EAAEA,MAAMb,iBAAiB,CAAC,KAAK,CAAE;AAC7Cc,IAAAA,OAAO,EAAEA,MAAMd,iBAAiB,CAAC,IAAI,CAAE;AACvCe,IAAAA,MAAM,EAAEA,MAAMf,iBAAiB,CAAC,KAAK,CAAE;AACvCN,IAAAA,GAAG,EAAEA;AAAI,GAAA,eAETH,KAAA,CAAAc,aAAA,CAACW,MAAM,EAAA;AAAC,IAAA,aAAA,EAAY,MAAM;AAACC,IAAAA,GAAG,EAAEnB,IAAK;AAACoB,IAAAA,IAAI,EAAC;GAAS,CAC7C,CACH,CAAC;AAET,CAAC;;;;"}
|
|
@@ -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 { MrlTextInputRightIcon } from './MrlTextInputRightIcon.js';
|
|
@@ -38,10 +38,8 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
38
38
|
var _useActiveColor = useActiveColor(state),
|
|
39
39
|
hasActiveColor = _useActiveColor.hasActiveColor,
|
|
40
40
|
setHasActiveColor = _useActiveColor.setHasActiveColor;
|
|
41
|
-
React.useImperativeHandle(ref,
|
|
42
|
-
|
|
43
|
-
});
|
|
44
|
-
var clearInput = React.useCallback(function () {
|
|
41
|
+
React.useImperativeHandle(ref, () => textInputRef.current);
|
|
42
|
+
var clearInput = React.useCallback(() => {
|
|
45
43
|
if (textInputRef.current) {
|
|
46
44
|
textInputRef.current.value = '';
|
|
47
45
|
textInputRef.current.focus();
|
|
@@ -50,7 +48,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
50
48
|
hookClear();
|
|
51
49
|
}
|
|
52
50
|
}, [hookClear]);
|
|
53
|
-
var hasValue =
|
|
51
|
+
var hasValue = () => {
|
|
54
52
|
var _textInputRef$current;
|
|
55
53
|
return ((_textInputRef$current = textInputRef.current) === null || _textInputRef$current === void 0 ? void 0 : _textInputRef$current.value) !== '' || value !== '';
|
|
56
54
|
};
|
|
@@ -58,7 +56,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
58
56
|
var ariaDescribedByAttrs = initialAttributes['aria-describedby'],
|
|
59
57
|
attributes = _objectWithoutProperties(initialAttributes, _excluded2);
|
|
60
58
|
var ariaDescribedBy = ariaDescribedByProp || ariaDescribedByAttrs;
|
|
61
|
-
var handleOnBlur = React.useCallback(
|
|
59
|
+
var handleOnBlur = React.useCallback(e => {
|
|
62
60
|
setHasActiveColor(false);
|
|
63
61
|
if (typeof rest.onBlur === 'function') {
|
|
64
62
|
rest.onBlur(e);
|
|
@@ -67,7 +65,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
67
65
|
attributes.onBlur(e);
|
|
68
66
|
}
|
|
69
67
|
}, [attributes, rest, setHasActiveColor]);
|
|
70
|
-
var handleOnFocus = React.useCallback(
|
|
68
|
+
var handleOnFocus = React.useCallback(e => {
|
|
71
69
|
setHasActiveColor(true);
|
|
72
70
|
if (typeof rest.onFocus === 'function') {
|
|
73
71
|
rest.onFocus(e);
|
|
@@ -76,7 +74,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
76
74
|
attributes.onFocus(e);
|
|
77
75
|
}
|
|
78
76
|
}, [attributes, rest, setHasActiveColor]);
|
|
79
|
-
var handleOnMouseEnter = React.useCallback(
|
|
77
|
+
var handleOnMouseEnter = React.useCallback(e => {
|
|
80
78
|
setHasActiveColor(true);
|
|
81
79
|
if (typeof rest.onMouseEnter === 'function') {
|
|
82
80
|
rest.onMouseEnter(e);
|
|
@@ -85,7 +83,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
85
83
|
attributes.onMouseEnter(e);
|
|
86
84
|
}
|
|
87
85
|
}, [attributes, rest, setHasActiveColor]);
|
|
88
|
-
var handleOnMouseLeave = React.useCallback(
|
|
86
|
+
var handleOnMouseLeave = React.useCallback(e => {
|
|
89
87
|
setHasActiveColor(false);
|
|
90
88
|
if (typeof rest.onMouseLeave === 'function') {
|
|
91
89
|
rest.onMouseLeave(e);
|
|
@@ -94,7 +92,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
94
92
|
attributes.onMouseLeave(e);
|
|
95
93
|
}
|
|
96
94
|
}, [attributes, rest, setHasActiveColor]);
|
|
97
|
-
React.useEffect(
|
|
95
|
+
React.useEffect(() => {
|
|
98
96
|
if (textInputRef.current) {
|
|
99
97
|
if (attributes.autofocus) {
|
|
100
98
|
textInputRef.current.focus();
|
|
@@ -104,7 +102,11 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
104
102
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
105
103
|
}, []);
|
|
106
104
|
var stateAllowsClearing = state !== 'disabled' && state !== 'read-only';
|
|
107
|
-
var inputClasses = classnames('MrlTextInput', styles['MrlTextInput'], styles['mrl-textInput'],
|
|
105
|
+
var inputClasses = classnames('MrlTextInput', styles['MrlTextInput'], styles['mrl-textInput'], {
|
|
106
|
+
[styles['MrlTextInput--dynamicIcon']]: isClearable && stateAllowsClearing,
|
|
107
|
+
[styles['MrlTextInput--persistIcon']]: persistIcon !== undefined,
|
|
108
|
+
[styles['MrlTextInput--active']]: hasActiveColor
|
|
109
|
+
}, attributes.class, attributes.className);
|
|
108
110
|
var hasDynamicIcon = stateAllowsClearing && !isClearable && typeof dynamicIcon !== 'undefined';
|
|
109
111
|
var dataMaxLength = attrs['data-maxlength'];
|
|
110
112
|
var hasMaxLength = typeof maxLength !== 'undefined' && Number(maxLength) > 0;
|
|
@@ -123,7 +125,7 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
123
125
|
var valueExceedsDataMaxLength = dataMaxLength && value ? value.length > dataMaxLength : false;
|
|
124
126
|
|
|
125
127
|
// @todo - 2563 - move to setAttributes
|
|
126
|
-
delete attributes
|
|
128
|
+
delete attributes.class;
|
|
127
129
|
delete attributes.className;
|
|
128
130
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
129
131
|
className: styles['mrl-u-focus-wrapper']
|
|
@@ -148,15 +150,14 @@ var MrlTextInput = /*#__PURE__*/React.forwardRef(function MrlTextInput(_ref, ref
|
|
|
148
150
|
className: styles['mrl-u-focus-indicator']
|
|
149
151
|
}), persistIcon && /*#__PURE__*/React.createElement(MrlSvg, {
|
|
150
152
|
"aria-hidden": "true",
|
|
151
|
-
className: classnames(styles['MrlTextInput-persistIcon'],
|
|
153
|
+
className: classnames(styles['MrlTextInput-persistIcon'], {
|
|
154
|
+
[styles['MrlTextInput-persistIcon--active']]: hasActiveColor,
|
|
155
|
+
[styles['MrlTextInput-persistIcon--disabled']]: state === 'disabled'
|
|
156
|
+
}),
|
|
152
157
|
svg: persistIcon,
|
|
153
158
|
size: "small",
|
|
154
|
-
onMouseEnter:
|
|
155
|
-
|
|
156
|
-
},
|
|
157
|
-
onMouseLeave: function onMouseLeave() {
|
|
158
|
-
return setHasActiveColor(false);
|
|
159
|
-
}
|
|
159
|
+
onMouseEnter: () => setHasActiveColor(true),
|
|
160
|
+
onMouseLeave: () => setHasActiveColor(false)
|
|
160
161
|
}), stateAllowsClearing && hasValue() && isClearable && /*#__PURE__*/React.createElement(MrlTextInputRightIcon, {
|
|
161
162
|
action: clearInput,
|
|
162
163
|
icon: closeAlt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlTextInput.js","sources":["../../../../../../src/components/form/text-input/MrlTextInput/MrlTextInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport { DSIconType, MrlSvg } from '../../../';\nimport { MrlTextInputRightIcon } from './MrlTextInputRightIcon';\nimport { AttrsObject, setAttributes, MrlComponentProps } from '../../../../utils';\nimport { closeAlt } from '@muraldevkit/ds-icons';\nimport { RightActionConfig, InputStates } from '../../constants';\nimport { useActiveColor } from '../../hooks/useActiveColor';\n\nimport styles from './MrlTextInput.module.scss';\n/**\n * @todo - we need to add static icon support for right\n */\n\ninterface MrlTextInputProps\n\textends Omit<MrlComponentProps, 'style'>,\n\t\tReact.ComponentProps<'input'> {\n\t/** Applies additional HTML attributes to the text input element */\n\tattrs?: AttrsObject;\n\t/** Additional function to be run when the input's value is cleared */\n\thookClear?: () => void;\n\t/** Id of the text input */\n\tinputId: string;\n\t/** The value of the text input used to make it a controlled input */\n\tvalue?: string;\n\t/**\n\t * The maximum number of characters that the user can enter.\n\t *\n\t * If undefined or set to \"0\", removes the character counter from the input\n\t */\n\tmaxLength?: number;\n\t/** Text placeholder for the text input */\n\tplaceholder?: string;\n\t/**\n\t * Changes the state of the input based on user permissions or actions.\n\t */\n\tstate?: InputStates;\n\t/** Configures a static icon to persistently display on the left side of the input */\n\tpersistIcon?: DSIconType;\n\t/** Configures an icon to the right side of the input */\n\tdynamicIcon?: RightActionConfig;\n\t/** Preset for setting up a clearable input via a right icon */\n\tisClearable?: boolean;\n}\n\n/**\n * Allows the user to input plain text\n * @param {MrlTextInputProps} props - the component props\n * @param {HTMLInputElement} ref - a ref to the input element in the DOM\n * @returns a text input element\n */\nexport const MrlTextInput = React.forwardRef<HTMLInputElement, MrlTextInputProps>(\n\tfunction MrlTextInput(\n\t\t{\n\t\t\tattrs = {},\n\t\t\tinputId,\n\t\t\tisClearable,\n\t\t\tdynamicIcon,\n\t\t\thookClear,\n\t\t\tmaxLength,\n\t\t\tpersistIcon,\n\t\t\tplaceholder,\n\t\t\tstate,\n\t\t\tvalue,\n\t\t\t'aria-describedby': ariaDescribedByProp,\n\t\t\t...rest\n\t\t},\n\t\tref\n\t): JSX.Element {\n\t\tconst textInputRef = React.useRef<HTMLInputElement>(null);\n\n\t\tconst { hasActiveColor, setHasActiveColor } = useActiveColor(state);\n\n\t\tReact.useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(\n\t\t\tref,\n\t\t\t() => textInputRef.current\n\t\t);\n\n\t\tconst clearInput = React.useCallback(() => {\n\t\t\tif (textInputRef.current) {\n\t\t\t\ttextInputRef.current.value = '';\n\t\t\t\ttextInputRef.current.focus();\n\t\t\t}\n\n\t\t\tif (hookClear && typeof hookClear === 'function') {\n\t\t\t\thookClear();\n\t\t\t}\n\t\t}, [hookClear]);\n\n\t\tconst hasValue = () => {\n\t\t\treturn textInputRef.current?.value !== '' || value !== '';\n\t\t};\n\n\t\tconst initialAttributes = setAttributes(attrs);\n\n\t\tconst { 'aria-describedby': ariaDescribedByAttrs, ...attributes } = initialAttributes;\n\t\tconst ariaDescribedBy = ariaDescribedByProp || ariaDescribedByAttrs;\n\n\t\tconst handleOnBlur = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof rest.onBlur === 'function') {\n\t\t\t\t\trest.onBlur(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onBlur === 'function') {\n\t\t\t\t\tattributes.onBlur(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnFocus = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof rest.onFocus === 'function') {\n\t\t\t\t\trest.onFocus(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onFocus === 'function') {\n\t\t\t\t\tattributes.onFocus(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseEnter = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof rest.onMouseEnter === 'function') {\n\t\t\t\t\trest.onMouseEnter(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onMouseEnter === 'function') {\n\t\t\t\t\tattributes.onMouseEnter(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseLeave = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof rest.onMouseLeave === 'function') {\n\t\t\t\t\trest.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t\tif (typeof attributes.onMouseLeave === 'function') {\n\t\t\t\t\tattributes.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tReact.useEffect(() => {\n\t\t\tif (textInputRef.current) {\n\t\t\t\tif (attributes.autofocus) {\n\t\t\t\t\ttextInputRef.current.focus();\n\t\t\t\t}\n\t\t\t}\n\t\t\t// it should only run on the first render\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, []);\n\n\t\tconst stateAllowsClearing = state !== 'disabled' && state !== 'read-only';\n\n\t\tconst inputClasses = classnames(\n\t\t\t'MrlTextInput',\n\t\t\tstyles['MrlTextInput'],\n\t\t\tstyles['mrl-textInput'],\n\t\t\t{\n\t\t\t\t[styles['MrlTextInput--dynamicIcon']]: isClearable && stateAllowsClearing,\n\t\t\t\t[styles['MrlTextInput--persistIcon']]: persistIcon !== undefined,\n\t\t\t\t[styles['MrlTextInput--active']]: hasActiveColor\n\t\t\t},\n\t\t\tattributes.class,\n\t\t\tattributes.className\n\t\t);\n\n\t\tconst hasDynamicIcon =\n\t\t\tstateAllowsClearing && !isClearable && typeof dynamicIcon !== 'undefined';\n\n\t\tconst dataMaxLength = attrs['data-maxlength'];\n\n\t\tconst hasMaxLength = typeof maxLength !== 'undefined' && Number(maxLength) > 0;\n\t\tconst hasDataMaxLength = typeof dataMaxLength !== 'undefined' && Number(dataMaxLength) > 0;\n\n\t\tif (hasMaxLength && isNaN(Number(maxLength))) {\n\t\t\tthrow new Error('maxLength should have type number');\n\t\t}\n\t\tif (hasDataMaxLength && isNaN(Number(dataMaxLength))) {\n\t\t\tthrow new Error('data-maxlength should have type number');\n\t\t}\n\n\t\tif (hasMaxLength && hasDataMaxLength) {\n\t\t\tthrow new Error('maxLength and data-maxlength should not be used at the same time');\n\t\t}\n\n\t\tconst displayCounter = hasMaxLength || hasDataMaxLength;\n\t\tconst counterDisplayValue = hasDataMaxLength ? dataMaxLength : maxLength;\n\t\tconst valueExceedsDataMaxLength = dataMaxLength && value ? value.length > dataMaxLength : false;\n\n\t\t// @todo - 2563 - move to setAttributes\n\t\tdelete attributes.class;\n\t\tdelete attributes.className;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className={styles['mrl-u-focus-wrapper']}>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t{...attributes}\n\t\t\t\t\t\taria-describedby={ariaDescribedBy}\n\t\t\t\t\t\taria-invalid={state === 'error'}\n\t\t\t\t\t\tclassName={inputClasses}\n\t\t\t\t\t\tdisabled={state === 'disabled'}\n\t\t\t\t\t\tmaxLength={hasMaxLength ? maxLength : undefined}\n\t\t\t\t\t\tonBlur={handleOnBlur}\n\t\t\t\t\t\tonFocus={handleOnFocus}\n\t\t\t\t\t\tonMouseEnter={handleOnMouseEnter}\n\t\t\t\t\t\tonMouseLeave={handleOnMouseLeave}\n\t\t\t\t\t\tid={inputId}\n\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\treadOnly={state === 'read-only'}\n\t\t\t\t\t\tref={textInputRef}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t/>\n\t\t\t\t\t<span className={styles['mrl-u-focus-indicator']}></span>\n\t\t\t\t\t{persistIcon && (\n\t\t\t\t\t\t<MrlSvg\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclassName={classnames(styles['MrlTextInput-persistIcon'], {\n\t\t\t\t\t\t\t\t[styles['MrlTextInput-persistIcon--active']]: hasActiveColor,\n\t\t\t\t\t\t\t\t[styles['MrlTextInput-persistIcon--disabled']]: state === 'disabled'\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tsvg={persistIcon}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{/* the clear icon should not be displayed when the input is disabled */}\n\t\t\t\t\t{stateAllowsClearing && hasValue() && isClearable && (\n\t\t\t\t\t\t<MrlTextInputRightIcon\n\t\t\t\t\t\t\taction={clearInput}\n\t\t\t\t\t\t\ticon={closeAlt}\n\t\t\t\t\t\t\tlabel=\"Clear input\"\n\t\t\t\t\t\t\tdataQa={attributes['data-qa'] && `${attributes['data-qa']}-clear`}\n\t\t\t\t\t\t\thasActiveColor={hasActiveColor}\n\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{hasDynamicIcon && (\n\t\t\t\t\t\t<MrlTextInputRightIcon\n\t\t\t\t\t\t\thasActiveColor={hasActiveColor}\n\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t\t{...dynamicIcon}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{displayCounter && (\n\t\t\t\t\t<span className={classnames(styles['MrlForm-counter'], 'MrlForm-counter')}>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={classnames('MrlCounter', {\n\t\t\t\t\t\t\t\t'MrlCounter-overMaxLength': valueExceedsDataMaxLength\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tid={`${inputId}-visible-counter`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{value?.length || 0}/{counterDisplayValue}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<p style={{ display: 'none' }} id={`${inputId}-counter`}>\n\t\t\t\t\t\t\t{`${\n\t\t\t\t\t\t\t\tcounterDisplayValue - (value?.length || 0)\n\t\t\t\t\t\t\t} of ${counterDisplayValue} characters remaining`}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n);\n"],"names":["MrlTextInput","React","forwardRef","_ref","ref","_ref$attrs","attrs","inputId","isClearable","dynamicIcon","hookClear","maxLength","persistIcon","placeholder","state","value","ariaDescribedByProp","rest","_objectWithoutProperties","_excluded","textInputRef","useRef","_useActiveColor","useActiveColor","hasActiveColor","setHasActiveColor","useImperativeHandle","current","clearInput","useCallback","focus","hasValue","_textInputRef$current","initialAttributes","setAttributes","ariaDescribedByAttrs","attributes","_excluded2","ariaDescribedBy","handleOnBlur","e","onBlur","handleOnFocus","onFocus","handleOnMouseEnter","onMouseEnter","handleOnMouseLeave","onMouseLeave","useEffect","autofocus","stateAllowsClearing","inputClasses","classnames","styles","_defineProperty","undefined","className","hasDynamicIcon","dataMaxLength","hasMaxLength","Number","hasDataMaxLength","isNaN","Error","displayCounter","counterDisplayValue","valueExceedsDataMaxLength","length","createElement","Fragment","_extends","type","disabled","id","readOnly","MrlSvg","svg","size","MrlTextInputRightIcon","action","icon","closeAlt","label","dataQa","concat","style","display"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MrlTextInput.js","sources":["../../../../../../src/components/form/text-input/MrlTextInput/MrlTextInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport classnames from 'classnames';\nimport { DSIconType, MrlSvg } from '../../../';\nimport { MrlTextInputRightIcon } from './MrlTextInputRightIcon';\nimport { AttrsObject, setAttributes, MrlComponentProps } from '../../../../utils';\nimport { closeAlt } from '@muraldevkit/ds-icons';\nimport { RightActionConfig, InputStates } from '../../constants';\nimport { useActiveColor } from '../../hooks/useActiveColor';\n\nimport styles from './MrlTextInput.module.scss';\n/**\n * @todo - we need to add static icon support for right\n */\n\ninterface MrlTextInputProps\n\textends Omit<MrlComponentProps, 'style'>,\n\t\tReact.ComponentProps<'input'> {\n\t/** Applies additional HTML attributes to the text input element */\n\tattrs?: AttrsObject;\n\t/** Additional function to be run when the input's value is cleared */\n\thookClear?: () => void;\n\t/** Id of the text input */\n\tinputId: string;\n\t/** The value of the text input used to make it a controlled input */\n\tvalue?: string;\n\t/**\n\t * The maximum number of characters that the user can enter.\n\t *\n\t * If undefined or set to \"0\", removes the character counter from the input\n\t */\n\tmaxLength?: number;\n\t/** Text placeholder for the text input */\n\tplaceholder?: string;\n\t/**\n\t * Changes the state of the input based on user permissions or actions.\n\t */\n\tstate?: InputStates;\n\t/** Configures a static icon to persistently display on the left side of the input */\n\tpersistIcon?: DSIconType;\n\t/** Configures an icon to the right side of the input */\n\tdynamicIcon?: RightActionConfig;\n\t/** Preset for setting up a clearable input via a right icon */\n\tisClearable?: boolean;\n}\n\n/**\n * Allows the user to input plain text\n * @param {MrlTextInputProps} props - the component props\n * @param {HTMLInputElement} ref - a ref to the input element in the DOM\n * @returns a text input element\n */\nexport const MrlTextInput = React.forwardRef<HTMLInputElement, MrlTextInputProps>(\n\tfunction MrlTextInput(\n\t\t{\n\t\t\tattrs = {},\n\t\t\tinputId,\n\t\t\tisClearable,\n\t\t\tdynamicIcon,\n\t\t\thookClear,\n\t\t\tmaxLength,\n\t\t\tpersistIcon,\n\t\t\tplaceholder,\n\t\t\tstate,\n\t\t\tvalue,\n\t\t\t'aria-describedby': ariaDescribedByProp,\n\t\t\t...rest\n\t\t},\n\t\tref\n\t): JSX.Element {\n\t\tconst textInputRef = React.useRef<HTMLInputElement>(null);\n\n\t\tconst { hasActiveColor, setHasActiveColor } = useActiveColor(state);\n\n\t\tReact.useImperativeHandle<HTMLInputElement | null, HTMLInputElement | null>(\n\t\t\tref,\n\t\t\t() => textInputRef.current\n\t\t);\n\n\t\tconst clearInput = React.useCallback(() => {\n\t\t\tif (textInputRef.current) {\n\t\t\t\ttextInputRef.current.value = '';\n\t\t\t\ttextInputRef.current.focus();\n\t\t\t}\n\n\t\t\tif (hookClear && typeof hookClear === 'function') {\n\t\t\t\thookClear();\n\t\t\t}\n\t\t}, [hookClear]);\n\n\t\tconst hasValue = () => {\n\t\t\treturn textInputRef.current?.value !== '' || value !== '';\n\t\t};\n\n\t\tconst initialAttributes = setAttributes(attrs);\n\n\t\tconst { 'aria-describedby': ariaDescribedByAttrs, ...attributes } = initialAttributes;\n\t\tconst ariaDescribedBy = ariaDescribedByProp || ariaDescribedByAttrs;\n\n\t\tconst handleOnBlur = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof rest.onBlur === 'function') {\n\t\t\t\t\trest.onBlur(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onBlur === 'function') {\n\t\t\t\t\tattributes.onBlur(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnFocus = React.useCallback(\n\t\t\t(e: React.FocusEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof rest.onFocus === 'function') {\n\t\t\t\t\trest.onFocus(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onFocus === 'function') {\n\t\t\t\t\tattributes.onFocus(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseEnter = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(true);\n\t\t\t\tif (typeof rest.onMouseEnter === 'function') {\n\t\t\t\t\trest.onMouseEnter(e);\n\t\t\t\t}\n\n\t\t\t\tif (typeof attributes.onMouseEnter === 'function') {\n\t\t\t\t\tattributes.onMouseEnter(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tconst handleOnMouseLeave = React.useCallback(\n\t\t\t(e: React.MouseEvent<HTMLInputElement>) => {\n\t\t\t\tsetHasActiveColor(false);\n\t\t\t\tif (typeof rest.onMouseLeave === 'function') {\n\t\t\t\t\trest.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t\tif (typeof attributes.onMouseLeave === 'function') {\n\t\t\t\t\tattributes.onMouseLeave(e);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[attributes, rest, setHasActiveColor]\n\t\t);\n\n\t\tReact.useEffect(() => {\n\t\t\tif (textInputRef.current) {\n\t\t\t\tif (attributes.autofocus) {\n\t\t\t\t\ttextInputRef.current.focus();\n\t\t\t\t}\n\t\t\t}\n\t\t\t// it should only run on the first render\n\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t}, []);\n\n\t\tconst stateAllowsClearing = state !== 'disabled' && state !== 'read-only';\n\n\t\tconst inputClasses = classnames(\n\t\t\t'MrlTextInput',\n\t\t\tstyles['MrlTextInput'],\n\t\t\tstyles['mrl-textInput'],\n\t\t\t{\n\t\t\t\t[styles['MrlTextInput--dynamicIcon']]: isClearable && stateAllowsClearing,\n\t\t\t\t[styles['MrlTextInput--persistIcon']]: persistIcon !== undefined,\n\t\t\t\t[styles['MrlTextInput--active']]: hasActiveColor\n\t\t\t},\n\t\t\tattributes.class,\n\t\t\tattributes.className\n\t\t);\n\n\t\tconst hasDynamicIcon =\n\t\t\tstateAllowsClearing && !isClearable && typeof dynamicIcon !== 'undefined';\n\n\t\tconst dataMaxLength = attrs['data-maxlength'];\n\n\t\tconst hasMaxLength = typeof maxLength !== 'undefined' && Number(maxLength) > 0;\n\t\tconst hasDataMaxLength = typeof dataMaxLength !== 'undefined' && Number(dataMaxLength) > 0;\n\n\t\tif (hasMaxLength && isNaN(Number(maxLength))) {\n\t\t\tthrow new Error('maxLength should have type number');\n\t\t}\n\t\tif (hasDataMaxLength && isNaN(Number(dataMaxLength))) {\n\t\t\tthrow new Error('data-maxlength should have type number');\n\t\t}\n\n\t\tif (hasMaxLength && hasDataMaxLength) {\n\t\t\tthrow new Error('maxLength and data-maxlength should not be used at the same time');\n\t\t}\n\n\t\tconst displayCounter = hasMaxLength || hasDataMaxLength;\n\t\tconst counterDisplayValue = hasDataMaxLength ? dataMaxLength : maxLength;\n\t\tconst valueExceedsDataMaxLength = dataMaxLength && value ? value.length > dataMaxLength : false;\n\n\t\t// @todo - 2563 - move to setAttributes\n\t\tdelete attributes.class;\n\t\tdelete attributes.className;\n\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<div className={styles['mrl-u-focus-wrapper']}>\n\t\t\t\t\t<input\n\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t{...attributes}\n\t\t\t\t\t\taria-describedby={ariaDescribedBy}\n\t\t\t\t\t\taria-invalid={state === 'error'}\n\t\t\t\t\t\tclassName={inputClasses}\n\t\t\t\t\t\tdisabled={state === 'disabled'}\n\t\t\t\t\t\tmaxLength={hasMaxLength ? maxLength : undefined}\n\t\t\t\t\t\tonBlur={handleOnBlur}\n\t\t\t\t\t\tonFocus={handleOnFocus}\n\t\t\t\t\t\tonMouseEnter={handleOnMouseEnter}\n\t\t\t\t\t\tonMouseLeave={handleOnMouseLeave}\n\t\t\t\t\t\tid={inputId}\n\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\treadOnly={state === 'read-only'}\n\t\t\t\t\t\tref={textInputRef}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t/>\n\t\t\t\t\t<span className={styles['mrl-u-focus-indicator']}></span>\n\t\t\t\t\t{persistIcon && (\n\t\t\t\t\t\t<MrlSvg\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tclassName={classnames(styles['MrlTextInput-persistIcon'], {\n\t\t\t\t\t\t\t\t[styles['MrlTextInput-persistIcon--active']]: hasActiveColor,\n\t\t\t\t\t\t\t\t[styles['MrlTextInput-persistIcon--disabled']]: state === 'disabled'\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tsvg={persistIcon}\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{/* the clear icon should not be displayed when the input is disabled */}\n\t\t\t\t\t{stateAllowsClearing && hasValue() && isClearable && (\n\t\t\t\t\t\t<MrlTextInputRightIcon\n\t\t\t\t\t\t\taction={clearInput}\n\t\t\t\t\t\t\ticon={closeAlt}\n\t\t\t\t\t\t\tlabel=\"Clear input\"\n\t\t\t\t\t\t\tdataQa={attributes['data-qa'] && `${attributes['data-qa']}-clear`}\n\t\t\t\t\t\t\thasActiveColor={hasActiveColor}\n\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{hasDynamicIcon && (\n\t\t\t\t\t\t<MrlTextInputRightIcon\n\t\t\t\t\t\t\thasActiveColor={hasActiveColor}\n\t\t\t\t\t\t\tsetHasActiveColor={setHasActiveColor}\n\t\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\t\t{...dynamicIcon}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t\t{displayCounter && (\n\t\t\t\t\t<span className={classnames(styles['MrlForm-counter'], 'MrlForm-counter')}>\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={classnames('MrlCounter', {\n\t\t\t\t\t\t\t\t'MrlCounter-overMaxLength': valueExceedsDataMaxLength\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\tid={`${inputId}-visible-counter`}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{value?.length || 0}/{counterDisplayValue}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<p style={{ display: 'none' }} id={`${inputId}-counter`}>\n\t\t\t\t\t\t\t{`${\n\t\t\t\t\t\t\t\tcounterDisplayValue - (value?.length || 0)\n\t\t\t\t\t\t\t} of ${counterDisplayValue} characters remaining`}\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</span>\n\t\t\t\t)}\n\t\t\t</>\n\t\t);\n\t}\n);\n"],"names":["MrlTextInput","React","forwardRef","_ref","ref","_ref$attrs","attrs","inputId","isClearable","dynamicIcon","hookClear","maxLength","persistIcon","placeholder","state","value","ariaDescribedByProp","rest","_objectWithoutProperties","_excluded","textInputRef","useRef","_useActiveColor","useActiveColor","hasActiveColor","setHasActiveColor","useImperativeHandle","current","clearInput","useCallback","focus","hasValue","_textInputRef$current","initialAttributes","setAttributes","ariaDescribedByAttrs","attributes","_excluded2","ariaDescribedBy","handleOnBlur","e","onBlur","handleOnFocus","onFocus","handleOnMouseEnter","onMouseEnter","handleOnMouseLeave","onMouseLeave","useEffect","autofocus","stateAllowsClearing","inputClasses","classnames","styles","undefined","class","className","hasDynamicIcon","dataMaxLength","hasMaxLength","Number","hasDataMaxLength","isNaN","Error","displayCounter","counterDisplayValue","valueExceedsDataMaxLength","length","createElement","Fragment","_extends","type","disabled","id","readOnly","MrlSvg","svg","size","MrlTextInputRightIcon","action","icon","closeAlt","label","dataQa","concat","style","display"],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { defineProperty as _defineProperty } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
1
|
import * as React from 'react';
|
|
3
2
|
import classnames from 'classnames';
|
|
4
3
|
import styles from './MrlTextInput.module.scss.js';
|
|
@@ -18,31 +17,25 @@ function MrlTextInputRightIcon(_ref) {
|
|
|
18
17
|
label = _ref.label,
|
|
19
18
|
setHasActiveColor = _ref.setHasActiveColor,
|
|
20
19
|
value = _ref.value;
|
|
21
|
-
var handleKeyUp = React.useCallback(
|
|
20
|
+
var handleKeyUp = React.useCallback(e => {
|
|
22
21
|
if (e.key === ' ' || e.key === 'Enter') {
|
|
23
22
|
action(e);
|
|
24
23
|
}
|
|
25
24
|
}, [action]);
|
|
26
25
|
return /*#__PURE__*/React.createElement("span", {
|
|
27
|
-
className: classnames(styles['MrlTextInput-dynamicIcon'],
|
|
26
|
+
className: classnames(styles['MrlTextInput-dynamicIcon'], {
|
|
27
|
+
[styles['MrlTextInput-dynamicIcon--active']]: hasActiveColor || value !== ''
|
|
28
|
+
})
|
|
28
29
|
}, /*#__PURE__*/React.createElement("button", {
|
|
29
30
|
type: "button",
|
|
30
31
|
"aria-label": label,
|
|
31
32
|
onMouseUp: action,
|
|
32
33
|
onKeyUp: handleKeyUp,
|
|
33
34
|
"data-qa": dataQa,
|
|
34
|
-
onMouseEnter:
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return setHasActiveColor(false);
|
|
39
|
-
},
|
|
40
|
-
onFocus: function onFocus() {
|
|
41
|
-
return setHasActiveColor(true);
|
|
42
|
-
},
|
|
43
|
-
onBlur: function onBlur() {
|
|
44
|
-
return setHasActiveColor(false);
|
|
45
|
-
}
|
|
35
|
+
onMouseEnter: () => setHasActiveColor(true),
|
|
36
|
+
onMouseLeave: () => setHasActiveColor(false),
|
|
37
|
+
onFocus: () => setHasActiveColor(true),
|
|
38
|
+
onBlur: () => setHasActiveColor(false)
|
|
46
39
|
}, /*#__PURE__*/React.createElement(MrlSvg, {
|
|
47
40
|
"aria-hidden": "true",
|
|
48
41
|
svg: icon,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MrlTextInputRightIcon.js","sources":["../../../../../../src/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DSIconType, MrlSvg } from '../../../';\nimport classnames from 'classnames';\n\nimport styles from './MrlTextInput.module.scss';\n\nexport interface MrlTextInputRightIconProps {\n\t/** the action that should be executed when interacting with the icon */\n\taction: (event: React.MouseEvent | React.KeyboardEvent) => void;\n\t/** the icon that will be rendered */\n\ticon: DSIconType;\n\t/** data-qa attribute for the icon */\n\tdataQa?: string;\n\t/** describes the purpouse of the icon button */\n\tlabel: string;\n\t/** determines if the icon has active color or not */\n\thasActiveColor: boolean;\n\tsetHasActiveColor: (hasActiveColor: boolean) => void;\n\t/** the text input value used to calculate the active style */\n\tvalue?: string;\n}\n\n/**\n * Renders the right icon in the text input\n *\n * @param {MrlTextInputRightIconProps} props - the component props\n * @returns a button element with an icon\n */\nexport function MrlTextInputRightIcon({\n\taction,\n\tdataQa,\n\thasActiveColor,\n\ticon,\n\tlabel,\n\tsetHasActiveColor,\n\tvalue\n}: MrlTextInputRightIconProps): JSX.Element {\n\tconst handleKeyUp = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === ' ' || e.key === 'Enter') {\n\t\t\t\taction(e);\n\t\t\t}\n\t\t},\n\t\t[action]\n\t);\n\n\treturn (\n\t\t<span\n\t\t\tclassName={classnames(styles['MrlTextInput-dynamicIcon'], {\n\t\t\t\t[styles['MrlTextInput-dynamicIcon--active']]: hasActiveColor || value !== ''\n\t\t\t})}\n\t\t>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={label}\n\t\t\t\tonMouseUp={action}\n\t\t\t\tonKeyUp={handleKeyUp}\n\t\t\t\tdata-qa={dataQa}\n\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\tonFocus={() => setHasActiveColor(true)}\n\t\t\t\tonBlur={() => setHasActiveColor(false)}\n\t\t\t>\n\t\t\t\t<MrlSvg aria-hidden=\"true\" svg={icon} size=\"small\" />\n\t\t\t</button>\n\t\t</span>\n\t);\n}\n"],"names":["MrlTextInputRightIcon","_ref","action","dataQa","hasActiveColor","icon","label","setHasActiveColor","value","handleKeyUp","React","useCallback","e","key","createElement","className","classnames","styles","
|
|
1
|
+
{"version":3,"file":"MrlTextInputRightIcon.js","sources":["../../../../../../src/components/form/text-input/MrlTextInput/MrlTextInputRightIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport { DSIconType, MrlSvg } from '../../../';\nimport classnames from 'classnames';\n\nimport styles from './MrlTextInput.module.scss';\n\nexport interface MrlTextInputRightIconProps {\n\t/** the action that should be executed when interacting with the icon */\n\taction: (event: React.MouseEvent | React.KeyboardEvent) => void;\n\t/** the icon that will be rendered */\n\ticon: DSIconType;\n\t/** data-qa attribute for the icon */\n\tdataQa?: string;\n\t/** describes the purpouse of the icon button */\n\tlabel: string;\n\t/** determines if the icon has active color or not */\n\thasActiveColor: boolean;\n\tsetHasActiveColor: (hasActiveColor: boolean) => void;\n\t/** the text input value used to calculate the active style */\n\tvalue?: string;\n}\n\n/**\n * Renders the right icon in the text input\n *\n * @param {MrlTextInputRightIconProps} props - the component props\n * @returns a button element with an icon\n */\nexport function MrlTextInputRightIcon({\n\taction,\n\tdataQa,\n\thasActiveColor,\n\ticon,\n\tlabel,\n\tsetHasActiveColor,\n\tvalue\n}: MrlTextInputRightIconProps): JSX.Element {\n\tconst handleKeyUp = React.useCallback(\n\t\t(e: React.KeyboardEvent<HTMLButtonElement>) => {\n\t\t\tif (e.key === ' ' || e.key === 'Enter') {\n\t\t\t\taction(e);\n\t\t\t}\n\t\t},\n\t\t[action]\n\t);\n\n\treturn (\n\t\t<span\n\t\t\tclassName={classnames(styles['MrlTextInput-dynamicIcon'], {\n\t\t\t\t[styles['MrlTextInput-dynamicIcon--active']]: hasActiveColor || value !== ''\n\t\t\t})}\n\t\t>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={label}\n\t\t\t\tonMouseUp={action}\n\t\t\t\tonKeyUp={handleKeyUp}\n\t\t\t\tdata-qa={dataQa}\n\t\t\t\tonMouseEnter={() => setHasActiveColor(true)}\n\t\t\t\tonMouseLeave={() => setHasActiveColor(false)}\n\t\t\t\tonFocus={() => setHasActiveColor(true)}\n\t\t\t\tonBlur={() => setHasActiveColor(false)}\n\t\t\t>\n\t\t\t\t<MrlSvg aria-hidden=\"true\" svg={icon} size=\"small\" />\n\t\t\t</button>\n\t\t</span>\n\t);\n}\n"],"names":["MrlTextInputRightIcon","_ref","action","dataQa","hasActiveColor","icon","label","setHasActiveColor","value","handleKeyUp","React","useCallback","e","key","createElement","className","classnames","styles","type","onMouseUp","onKeyUp","onMouseEnter","onMouseLeave","onFocus","onBlur","MrlSvg","svg","size"],"mappings":";;;;;AAsBA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,qBAAqBA,CAAAC,IAAA,EAQO;AAAA,EAAA,IAP3CC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNC,MAAM,GAAAF,IAAA,CAANE,MAAM;IACNC,cAAc,GAAAH,IAAA,CAAdG,cAAc;IACdC,IAAI,GAAAJ,IAAA,CAAJI,IAAI;IACJC,KAAK,GAAAL,IAAA,CAALK,KAAK;IACLC,iBAAiB,GAAAN,IAAA,CAAjBM,iBAAiB;IACjBC,KAAK,GAAAP,IAAA,CAALO,KAAK;AAEL,EAAA,IAAMC,WAAW,GAAGC,KAAK,CAACC,WAAW,CACnCC,CAAyC,IAAK;IAC9C,IAAIA,CAAC,CAACC,GAAG,KAAK,GAAG,IAAID,CAAC,CAACC,GAAG,KAAK,OAAO,EAAE;MACvCX,MAAM,CAACU,CAAC,CAAC;AACV,IAAA;AACD,EAAA,CAAC,EACD,CAACV,MAAM,CACR,CAAC;EAED,oBACCQ,KAAA,CAAAI,aAAA,CAAA,MAAA,EAAA;AACCC,IAAAA,SAAS,EAAEC,UAAU,CAACC,MAAM,CAAC,0BAA0B,CAAC,EAAE;MACzD,CAACA,MAAM,CAAC,kCAAkC,CAAC,GAAGb,cAAc,IAAII,KAAK,KAAK;KAC1E;GAAE,eAEHE,KAAA,CAAAI,aAAA,CAAA,QAAA,EAAA;AACCI,IAAAA,IAAI,EAAC,QAAQ;AACb,IAAA,YAAA,EAAYZ,KAAM;AAClBa,IAAAA,SAAS,EAAEjB,MAAO;AAClBkB,IAAAA,OAAO,EAAEX,WAAY;AACrB,IAAA,SAAA,EAASN,MAAO;AAChBkB,IAAAA,YAAY,EAAEA,MAAMd,iBAAiB,CAAC,IAAI,CAAE;AAC5Ce,IAAAA,YAAY,EAAEA,MAAMf,iBAAiB,CAAC,KAAK,CAAE;AAC7CgB,IAAAA,OAAO,EAAEA,MAAMhB,iBAAiB,CAAC,IAAI,CAAE;AACvCiB,IAAAA,MAAM,EAAEA,MAAMjB,iBAAiB,CAAC,KAAK;AAAE,GAAA,eAEvCG,KAAA,CAAAI,aAAA,CAACW,MAAM,EAAA;AAAC,IAAA,aAAA,EAAY,MAAM;AAACC,IAAAA,GAAG,EAAErB,IAAK;AAACsB,IAAAA,IAAI,EAAC;GAAS,CAC7C,CACH,CAAC;AAET;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray,
|
|
1
|
+
import { objectWithoutProperties as _objectWithoutProperties, slicedToArray as _slicedToArray, extends as _extends } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { edit, error } from '@muraldevkit/ds-icons';
|
|
@@ -39,7 +39,7 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
39
39
|
var _useIsEditable = useIsEditable({
|
|
40
40
|
changeHandler: controlledIsEditableUpdate,
|
|
41
41
|
initialValue: false,
|
|
42
|
-
state
|
|
42
|
+
state,
|
|
43
43
|
value: controlledIsEditable
|
|
44
44
|
}),
|
|
45
45
|
isEditable = _useIsEditable.isEditable,
|
|
@@ -52,15 +52,13 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
52
52
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
53
53
|
hasEdited = _React$useState2[0],
|
|
54
54
|
setHasEdited = _React$useState2[1];
|
|
55
|
-
React.useImperativeHandle(ref,
|
|
56
|
-
|
|
57
|
-
});
|
|
58
|
-
React.useEffect(function () {
|
|
55
|
+
React.useImperativeHandle(ref, () => iconRef.current);
|
|
56
|
+
React.useEffect(() => {
|
|
59
57
|
if (iconRef.current && (attrs.autoFocus || hasEdited)) {
|
|
60
58
|
iconRef.current.focus();
|
|
61
59
|
}
|
|
62
60
|
}, [attrs, iconRef, hasEdited]);
|
|
63
|
-
React.useEffect(
|
|
61
|
+
React.useEffect(() => {
|
|
64
62
|
if (textareaRef.current) {
|
|
65
63
|
if (isEditable) {
|
|
66
64
|
textareaRef.current.focus();
|
|
@@ -74,7 +72,7 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
74
72
|
}
|
|
75
73
|
}
|
|
76
74
|
}, [isEditable, isEditing]);
|
|
77
|
-
React.useEffect(
|
|
75
|
+
React.useEffect(() => {
|
|
78
76
|
if (!autoExpand || !textareaRef.current) return;
|
|
79
77
|
textareaRef.current.style.height = 'auto';
|
|
80
78
|
if (!textareaRef.current.value || textareaRef.current.value === '') {
|
|
@@ -83,7 +81,7 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
83
81
|
textareaRef.current.style.height = "".concat(textareaRef.current.scrollHeight, "px");
|
|
84
82
|
}
|
|
85
83
|
}, [autoExpand, value]);
|
|
86
|
-
var onKeyDown =
|
|
84
|
+
var onKeyDown = event => {
|
|
87
85
|
var key = event.key;
|
|
88
86
|
if (key === 'Escape') {
|
|
89
87
|
event.stopPropagation();
|
|
@@ -92,7 +90,7 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
92
90
|
setIsEditing(false);
|
|
93
91
|
}
|
|
94
92
|
};
|
|
95
|
-
var handleOnBlur = React.useCallback(
|
|
93
|
+
var handleOnBlur = React.useCallback(e => {
|
|
96
94
|
setHasActiveColor(false);
|
|
97
95
|
setIsEditable(false);
|
|
98
96
|
setIsEditing(false);
|
|
@@ -101,7 +99,7 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
101
99
|
attrs.onBlur(e);
|
|
102
100
|
}
|
|
103
101
|
}, [attrs, setHasActiveColor, setIsEditable, setIsEditing]);
|
|
104
|
-
var handleOnFocus = React.useCallback(
|
|
102
|
+
var handleOnFocus = React.useCallback(e => {
|
|
105
103
|
setHasActiveColor(true);
|
|
106
104
|
setIsEditable(true);
|
|
107
105
|
setIsEditing(true);
|
|
@@ -110,19 +108,19 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
110
108
|
attrs.onFocus(e);
|
|
111
109
|
}
|
|
112
110
|
}, [attrs, setHasActiveColor, setIsEditable, setIsEditing]);
|
|
113
|
-
var handleOnMouseEnter = React.useCallback(
|
|
111
|
+
var handleOnMouseEnter = React.useCallback(e => {
|
|
114
112
|
setHasActiveColor(true);
|
|
115
113
|
if (typeof attrs.onMouseEnter === 'function') {
|
|
116
114
|
attrs.onMouseEnter(e);
|
|
117
115
|
}
|
|
118
116
|
}, [attrs, setHasActiveColor]);
|
|
119
|
-
var handleOnMouseLeave = React.useCallback(
|
|
117
|
+
var handleOnMouseLeave = React.useCallback(e => {
|
|
120
118
|
setHasActiveColor(false);
|
|
121
119
|
if (typeof attrs.onMouseLeave === 'function') {
|
|
122
120
|
attrs.onMouseLeave(e);
|
|
123
121
|
}
|
|
124
122
|
}, [attrs, setHasActiveColor]);
|
|
125
|
-
var onClickEdit = React.useCallback(
|
|
123
|
+
var onClickEdit = React.useCallback(() => {
|
|
126
124
|
setIsEditable(true);
|
|
127
125
|
setIsEditing(true);
|
|
128
126
|
setHasEdited(true);
|
|
@@ -132,7 +130,9 @@ var MrlEditableTextarea = /*#__PURE__*/React.forwardRef(function MrlEditableText
|
|
|
132
130
|
throw new Error('maxLength should have type number');
|
|
133
131
|
}
|
|
134
132
|
var hasErrorMessage = state === 'error' && (error$1 === null || error$1 === void 0 ? void 0 : error$1.message);
|
|
135
|
-
var inputClasses = classnames(className, styles['MrlEditableTextarea'],
|
|
133
|
+
var inputClasses = classnames(className, styles['MrlEditableTextarea'], {
|
|
134
|
+
[styles['MrlEditableTextarea--readOnly']]: state === 'read-only'
|
|
135
|
+
}, 'MrlEditableTextarea', 'mrl-textarea');
|
|
136
136
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
137
137
|
className: "".concat(styles['MrlEditableTextarea--wrapper'], " MrlEditableTextarea--wrapper")
|
|
138
138
|
}, /*#__PURE__*/React.createElement("textarea", _extends({}, attrs, {
|