@vibe/core 3.70.2-alpha-96f20.0 → 3.70.2
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/components/AlertBanner/AlertBannerButton/AlertBannerButton.d.ts +1 -1
- package/dist/components/AttentionBox/AttentionBox.d.ts +3 -3
- package/dist/components/AttentionBox/AttentionBoxConstants.d.ts +8 -0
- package/dist/components/Avatar/Avatar.d.ts +2 -1
- package/dist/components/Avatar/AvatarBadge.d.ts +2 -1
- package/dist/components/Avatar/AvatarContent.d.ts +2 -1
- package/dist/components/BaseListItem/BaseListItem.types.d.ts +2 -1
- package/dist/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.d.ts +2 -1
- package/dist/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.d.ts +2 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +4 -4
- package/dist/components/ButtonGroup/ButtonGroupConstants.d.ts +8 -0
- package/dist/components/ButtonGroup/ButtonWrapper.d.ts +1 -1
- package/dist/components/Chips/Chips.d.ts +2 -1
- package/dist/components/ColorPicker/ColorPicker.d.ts +2 -1
- package/dist/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.d.ts +2 -1
- package/dist/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.d.ts +2 -1
- package/dist/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.d.ts +2 -1
- package/dist/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.d.ts +2 -1
- package/dist/components/Combobox/Combobox.d.ts +2 -1
- package/dist/components/Combobox/components/ComboboxConstants.d.ts +1 -1
- package/dist/components/EmptyState/EmptyState.types.d.ts +1 -1
- package/dist/components/IconButton/IconButton.d.ts +5 -4
- package/dist/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.d.ts +2 -1
- package/dist/components/Link/Link.d.ts +2 -1
- package/dist/components/ListItemIcon/ListItemIcon.d.ts +2 -1
- package/dist/components/Menu/MenuItem/MenuItem.d.ts +3 -3
- package/dist/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.types.d.ts +1 -2
- package/dist/components/Menu/MenuItemButton/MenuItemButton.d.ts +4 -3
- package/dist/components/Modal/Modal/Modal.types.d.ts +6 -28
- package/dist/components/Modal/ModalHeader/ModalHeader.types.d.ts +2 -1
- package/dist/components/Modal/ModalTopActions/ModalTopActions.types.d.ts +1 -1
- package/dist/components/Modal/footers/ModalFooterBase/ModalFooterBase.types.d.ts +1 -1
- package/dist/components/Modal/footers/utils/getPropsForButton.d.ts +6 -6
- package/dist/components/MultiStepIndicator/MultiStepIndicator.d.ts +2 -1
- package/dist/components/MultiStepIndicator/components/StepIndicator/StepIndicator.d.ts +2 -1
- package/dist/components/NumberField/NumberField.types.d.ts +1 -1
- package/dist/components/Search/Search.types.d.ts +2 -1
- package/dist/components/Slider/Slider.d.ts +1 -1
- package/dist/components/Slider/SliderConstants.d.ts +1 -1
- package/dist/components/Slider/SliderContext.d.ts +1 -1
- package/dist/components/SplitButton/SplitButton.d.ts +4 -4
- package/dist/components/Steps/Steps.d.ts +1 -1
- package/dist/components/Steps/StepsCommand.d.ts +1 -1
- package/dist/components/Steps/StepsHeader.d.ts +1 -1
- package/dist/components/Table/Table/Table.d.ts +2 -1
- package/dist/components/Table/TableHeaderCell/TableHeaderCell.d.ts +2 -1
- package/dist/components/Tabs/Tab/Tab.d.ts +1 -2
- package/dist/components/Tipseen/TipseenContent.d.ts +1 -1
- package/dist/components/Toast/Toast.d.ts +1 -1
- package/dist/components/Toast/ToastButton/ToastButton.d.ts +1 -1
- package/dist/components/Toast/ToastHelpers.d.ts +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/components/button/dist/Button/Button.js +2 -0
- package/dist/components/button/dist/Button/Button.js.map +1 -0
- package/dist/components/button/dist/Button/Button.module.scss.js +2 -0
- package/dist/components/button/dist/Button/ButtonConstants.js +2 -0
- package/dist/components/button/dist/Button/ButtonConstants.js.map +1 -0
- package/dist/components/button/dist/Button/helper/dom-helpers.js.map +1 -0
- package/dist/components/button/dist/Button/helper/useButtonLoading.js +2 -0
- package/dist/components/button/dist/Button/helper/useButtonLoading.js.map +1 -0
- package/dist/components/icon/dist/Icon/CustomSvgIcon/CustomSvgIcon.js +2 -0
- package/dist/components/icon/dist/Icon/CustomSvgIcon/CustomSvgIcon.js.map +1 -0
- package/dist/components/icon/dist/Icon/FontIcon/FontIcon.js +2 -0
- package/dist/components/icon/dist/Icon/FontIcon/FontIcon.js.map +1 -0
- package/dist/components/icon/dist/Icon/Icon.js +2 -0
- package/dist/components/icon/dist/Icon/Icon.js.map +1 -0
- package/dist/components/icon/dist/Icon/Icon.module.scss.js +2 -0
- package/dist/components/icon/dist/Icon/constants.js +2 -0
- package/dist/components/icon/dist/Icon/constants.js.map +1 -0
- package/dist/components/icon/dist/Icon/hooks/useIconProps.js +2 -0
- package/dist/components/icon/dist/Icon/hooks/useIconProps.js.map +1 -0
- package/dist/components/icon/dist/Icon/hooks/useIconScreenReaderAccessProps.js +2 -0
- package/dist/components/icon/dist/Icon/hooks/useIconScreenReaderAccessProps.js.map +1 -0
- package/dist/components/index.d.ts +3 -3
- package/dist/components/loader/dist/Loader/Loader.js +2 -0
- package/dist/components/loader/dist/Loader/Loader.js.map +1 -0
- package/dist/components/loader/dist/Loader/Loader.module.scss.js +2 -0
- package/dist/components/loader/dist/Loader/LoaderConstants.js.map +1 -0
- package/dist/components/next/AttentionBox/AttentionBox.types.d.ts +2 -2
- package/dist/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.d.ts +1 -1
- package/dist/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.d.ts +1 -2
- package/dist/components/next/AttentionBox/consts/icons.d.ts +1 -1
- package/dist/components/next/AttentionBox/utils/iconUtils.d.ts +1 -1
- package/dist/metadata.json +119 -1012
- package/dist/mocked_classnames/components/AlertBanner/AlertBannerButton/AlertBannerButton.d.ts +1 -1
- package/dist/mocked_classnames/components/AttentionBox/AttentionBox.d.ts +3 -3
- package/dist/mocked_classnames/components/AttentionBox/AttentionBoxConstants.d.ts +8 -0
- package/dist/mocked_classnames/components/Avatar/Avatar.d.ts +2 -1
- package/dist/mocked_classnames/components/Avatar/AvatarBadge.d.ts +2 -1
- package/dist/mocked_classnames/components/Avatar/AvatarContent.d.ts +2 -1
- package/dist/mocked_classnames/components/BaseListItem/BaseListItem.types.d.ts +2 -1
- package/dist/mocked_classnames/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.d.ts +2 -1
- package/dist/mocked_classnames/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.d.ts +2 -1
- package/dist/mocked_classnames/components/ButtonGroup/ButtonGroup.d.ts +4 -4
- package/dist/mocked_classnames/components/ButtonGroup/ButtonGroupConstants.d.ts +8 -0
- package/dist/mocked_classnames/components/ButtonGroup/ButtonWrapper.d.ts +1 -1
- package/dist/mocked_classnames/components/Chips/Chips.d.ts +2 -1
- package/dist/mocked_classnames/components/ColorPicker/ColorPicker.d.ts +2 -1
- package/dist/mocked_classnames/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.d.ts +2 -1
- package/dist/mocked_classnames/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.d.ts +2 -1
- package/dist/mocked_classnames/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.d.ts +2 -1
- package/dist/mocked_classnames/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.d.ts +2 -1
- package/dist/mocked_classnames/components/Combobox/Combobox.d.ts +2 -1
- package/dist/mocked_classnames/components/Combobox/components/ComboboxConstants.d.ts +1 -1
- package/dist/mocked_classnames/components/EmptyState/EmptyState.types.d.ts +1 -1
- package/dist/mocked_classnames/components/IconButton/IconButton.d.ts +5 -4
- package/dist/mocked_classnames/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.d.ts +2 -1
- package/dist/mocked_classnames/components/Link/Link.d.ts +2 -1
- package/dist/mocked_classnames/components/ListItemIcon/ListItemIcon.d.ts +2 -1
- package/dist/mocked_classnames/components/Menu/MenuItem/MenuItem.d.ts +3 -3
- package/dist/mocked_classnames/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.types.d.ts +1 -2
- package/dist/mocked_classnames/components/Menu/MenuItemButton/MenuItemButton.d.ts +4 -3
- package/dist/mocked_classnames/components/Modal/Modal/Modal.types.d.ts +6 -28
- package/dist/mocked_classnames/components/Modal/ModalHeader/ModalHeader.types.d.ts +2 -1
- package/dist/mocked_classnames/components/Modal/ModalTopActions/ModalTopActions.types.d.ts +1 -1
- package/dist/mocked_classnames/components/Modal/footers/ModalFooterBase/ModalFooterBase.types.d.ts +1 -1
- package/dist/mocked_classnames/components/Modal/footers/utils/getPropsForButton.d.ts +6 -6
- package/dist/mocked_classnames/components/MultiStepIndicator/MultiStepIndicator.d.ts +2 -1
- package/dist/mocked_classnames/components/MultiStepIndicator/components/StepIndicator/StepIndicator.d.ts +2 -1
- package/dist/mocked_classnames/components/NumberField/NumberField.types.d.ts +1 -1
- package/dist/mocked_classnames/components/Search/Search.types.d.ts +2 -1
- package/dist/mocked_classnames/components/Slider/Slider.d.ts +1 -1
- package/dist/mocked_classnames/components/Slider/SliderConstants.d.ts +1 -1
- package/dist/mocked_classnames/components/Slider/SliderContext.d.ts +1 -1
- package/dist/mocked_classnames/components/SplitButton/SplitButton.d.ts +4 -4
- package/dist/mocked_classnames/components/Steps/Steps.d.ts +1 -1
- package/dist/mocked_classnames/components/Steps/StepsCommand.d.ts +1 -1
- package/dist/mocked_classnames/components/Steps/StepsHeader.d.ts +1 -1
- package/dist/mocked_classnames/components/Table/Table/Table.d.ts +2 -1
- package/dist/mocked_classnames/components/Table/TableHeaderCell/TableHeaderCell.d.ts +2 -1
- package/dist/mocked_classnames/components/Tabs/Tab/Tab.d.ts +1 -2
- package/dist/mocked_classnames/components/Tipseen/TipseenContent.d.ts +1 -1
- package/dist/mocked_classnames/components/Toast/Toast.d.ts +1 -1
- package/dist/mocked_classnames/components/Toast/ToastButton/ToastButton.d.ts +1 -1
- package/dist/mocked_classnames/components/Toast/ToastHelpers.d.ts +1 -1
- package/dist/mocked_classnames/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/mocked_classnames/components/button/dist/Button/Button.js +2 -0
- package/dist/mocked_classnames/components/button/dist/Button/Button.js.map +1 -0
- package/dist/mocked_classnames/components/button/dist/Button/Button.module.scss.js +2 -0
- package/dist/mocked_classnames/components/button/dist/Button/ButtonConstants.js +2 -0
- package/dist/mocked_classnames/components/button/dist/Button/ButtonConstants.js.map +1 -0
- package/dist/mocked_classnames/components/button/dist/Button/helper/dom-helpers.js.map +1 -0
- package/dist/mocked_classnames/components/button/dist/Button/helper/useButtonLoading.js +2 -0
- package/dist/mocked_classnames/components/button/dist/Button/helper/useButtonLoading.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/CustomSvgIcon/CustomSvgIcon.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/CustomSvgIcon/CustomSvgIcon.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/FontIcon/FontIcon.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/FontIcon/FontIcon.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/Icon.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/Icon.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/Icon.module.scss.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/constants.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/constants.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/hooks/useIconProps.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/hooks/useIconProps.js.map +1 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/hooks/useIconScreenReaderAccessProps.js +2 -0
- package/dist/mocked_classnames/components/icon/dist/Icon/hooks/useIconScreenReaderAccessProps.js.map +1 -0
- package/dist/mocked_classnames/components/index.d.ts +3 -3
- package/dist/mocked_classnames/components/loader/dist/Loader/Loader.js +2 -0
- package/dist/mocked_classnames/components/loader/dist/Loader/Loader.js.map +1 -0
- package/dist/mocked_classnames/components/loader/dist/Loader/Loader.module.scss.js +2 -0
- package/dist/mocked_classnames/components/loader/dist/Loader/LoaderConstants.js.map +1 -0
- package/dist/mocked_classnames/components/next/AttentionBox/AttentionBox.types.d.ts +2 -2
- package/dist/mocked_classnames/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.d.ts +1 -1
- package/dist/mocked_classnames/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.d.ts +1 -2
- package/dist/mocked_classnames/components/next/AttentionBox/consts/icons.d.ts +1 -1
- package/dist/mocked_classnames/components/next/AttentionBox/utils/iconUtils.d.ts +1 -1
- package/dist/mocked_classnames/packages/icons/dist/_virtual/_tslib.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/AddSmall.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Alert.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Check.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/CloseMedium.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/CloseSmall.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/DropdownChevronDown.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/DropdownChevronRight.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/DropdownChevronUp.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Favorite.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Info.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Menu.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/MoveArrowLeft.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/MoveArrowRight.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/NavigationChevronLeft.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/NavigationChevronRight.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/NoColor.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Remove.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Search.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Sort.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/SortAscending.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/SortDescending.js.map +1 -0
- package/dist/mocked_classnames/packages/icons/dist/react/Warning.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/constants/keyCodes.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/constants/keyCodes.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/constants/sizes.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/constants/sizes.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/ssr/useIsMounted.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/ssr/useIsMounted.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/ssr/useIsomorphicLayoutEffect.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/ssr/useIsomorphicLayoutEffect.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useEventListener.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useEventListener.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useKeyEvent.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useKeyEvent.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useMergeRef.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/hooks/useMergeRef.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/tests/constants.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/tests/constants.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/tests/test-ids-utils.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/tests/test-ids-utils.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/types/withStaticProps.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/types/withStaticProps.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/function-utils.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/function-utils.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/screenReaderAccessHelper.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/screenReaderAccessHelper.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/ssr-utils.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/ssr-utils.js.map +1 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/typesciptCssModulesHelper.js +2 -0
- package/dist/mocked_classnames/packages/shared/dist/utils/typesciptCssModulesHelper.js.map +1 -0
- package/dist/mocked_classnames/src/components/AlertBanner/AlertBanner.js +1 -1
- package/dist/mocked_classnames/src/components/AlertBanner/AlertBanner.js.map +1 -1
- package/dist/mocked_classnames/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.js +1 -1
- package/dist/mocked_classnames/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/AttentionBox/AttentionBox.js +1 -1
- package/dist/mocked_classnames/src/components/AttentionBox/AttentionBox.js.map +1 -1
- package/dist/mocked_classnames/src/components/AttentionBox/AttentionBoxConstants.js +1 -1
- package/dist/mocked_classnames/src/components/AttentionBox/AttentionBoxConstants.js.map +1 -1
- package/dist/mocked_classnames/src/components/Avatar/Avatar.js.map +1 -1
- package/dist/mocked_classnames/src/components/Avatar/AvatarBadge.js +1 -1
- package/dist/mocked_classnames/src/components/Avatar/AvatarBadge.js.map +1 -1
- package/dist/mocked_classnames/src/components/Avatar/AvatarContent.js +1 -1
- package/dist/mocked_classnames/src/components/Avatar/AvatarContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/BaseListItem/utils.js +1 -1
- package/dist/mocked_classnames/src/components/BaseListItem/utils.js.map +1 -1
- package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
- package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbsBar.js +1 -1
- package/dist/mocked_classnames/src/components/BreadcrumbsBar/BreadcrumbsBar.js.map +1 -1
- package/dist/mocked_classnames/src/components/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/mocked_classnames/src/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/mocked_classnames/src/components/ButtonGroup/ButtonWrapper.js +1 -1
- package/dist/mocked_classnames/src/components/ButtonGroup/ButtonWrapper.js.map +1 -1
- package/dist/mocked_classnames/src/components/Checkbox/Checkbox.js +1 -1
- package/dist/mocked_classnames/src/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/mocked_classnames/src/components/Chips/Chips.js +1 -1
- package/dist/mocked_classnames/src/components/Chips/Chips.js.map +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/ColorPicker.js +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/ColorPicker.js.map +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.js +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.js.map +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.js +1 -1
- package/dist/mocked_classnames/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.js.map +1 -1
- package/dist/mocked_classnames/src/components/Combobox/Combobox.js +1 -1
- package/dist/mocked_classnames/src/components/Combobox/Combobox.js.map +1 -1
- package/dist/mocked_classnames/src/components/Combobox/components/ComboboxConstants.js.map +1 -1
- package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.js +1 -1
- package/dist/mocked_classnames/src/components/Combobox/components/ComboboxOption/ComboboxOption.js.map +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/DateNavigationItem/DateNavigationItem.js +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/DateNavigationItem/DateNavigationItem.js.map +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/DatePickerHeader/DatePickerHeader.js +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/DatePickerHeader/DatePickerHeader.js.map +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/YearPicker/YearsList.js +1 -1
- package/dist/mocked_classnames/src/components/DatePicker/YearPicker/YearsList.js.map +1 -1
- package/dist/mocked_classnames/src/components/Dialog/DialogContent/DialogContent.js +1 -1
- package/dist/mocked_classnames/src/components/Dialog/DialogContent/DialogContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/ChildrenContent/ChildrenContent.js +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/ChildrenContent/ChildrenContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/ClearIndicator/ClearIndicator.js +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/ClearIndicator/ClearIndicator.js.map +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/DropdownIndicator/DropdownIndicator.js +1 -1
- package/dist/mocked_classnames/src/components/Dropdown/components/DropdownIndicator/DropdownIndicator.js.map +1 -1
- package/dist/mocked_classnames/src/components/EmptyState/EmptyState.js +1 -1
- package/dist/mocked_classnames/src/components/EmptyState/EmptyState.js.map +1 -1
- package/dist/mocked_classnames/src/components/ExpandCollapse/ExpandCollapse.js +1 -1
- package/dist/mocked_classnames/src/components/ExpandCollapse/ExpandCollapse.js.map +1 -1
- package/dist/mocked_classnames/src/components/FieldLabel/FieldLabel.js +1 -1
- package/dist/mocked_classnames/src/components/FieldLabel/FieldLabel.js.map +1 -1
- package/dist/mocked_classnames/src/components/IconButton/IconButton.js +1 -1
- package/dist/mocked_classnames/src/components/IconButton/IconButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/Info/Info.js +1 -1
- package/dist/mocked_classnames/src/components/Info/Info.js.map +1 -1
- package/dist/mocked_classnames/src/components/LegacyModal/LegacyModalFooter/LegacyModalFooterButtons/LegacyModalFooterButtons.js +1 -1
- package/dist/mocked_classnames/src/components/LegacyModal/LegacyModalFooter/LegacyModalFooterButtons/LegacyModalFooterButtons.js.map +1 -1
- package/dist/mocked_classnames/src/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.js +1 -1
- package/dist/mocked_classnames/src/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.js.map +1 -1
- package/dist/mocked_classnames/src/components/Link/Link.js +1 -1
- package/dist/mocked_classnames/src/components/Link/Link.js.map +1 -1
- package/dist/mocked_classnames/src/components/ListItemIcon/ListItemIcon.js +1 -1
- package/dist/mocked_classnames/src/components/ListItemIcon/ListItemIcon.js.map +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/MenuItem.js +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/MenuItem.js.map +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.js +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.js.map +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.js +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.js.map +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItemButton/MenuItemButton.js +1 -1
- package/dist/mocked_classnames/src/components/Menu/MenuItemButton/MenuItemButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/MenuButton/MenuButton.js +1 -1
- package/dist/mocked_classnames/src/components/MenuButton/MenuButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/Modal/Modal/Modal.js +1 -1
- package/dist/mocked_classnames/src/components/Modal/Modal/Modal.js.map +1 -1
- package/dist/mocked_classnames/src/components/Modal/ModalHeader/ModalHeader.js +1 -1
- package/dist/mocked_classnames/src/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/dist/mocked_classnames/src/components/Modal/ModalTopActions/ModalTopActions.js +1 -1
- package/dist/mocked_classnames/src/components/Modal/ModalTopActions/ModalTopActions.js.map +1 -1
- package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js +1 -1
- package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js.map +1 -1
- package/dist/mocked_classnames/src/components/MultiStepIndicator/MultiStepIndicator.js +1 -1
- package/dist/mocked_classnames/src/components/MultiStepIndicator/MultiStepIndicator.js.map +1 -1
- package/dist/mocked_classnames/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.js +1 -1
- package/dist/mocked_classnames/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.js.map +1 -1
- package/dist/mocked_classnames/src/components/NumberField/NumberField.js +1 -1
- package/dist/mocked_classnames/src/components/NumberField/NumberField.js.map +1 -1
- package/dist/mocked_classnames/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.js +1 -1
- package/dist/mocked_classnames/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/Search/Search.js +1 -1
- package/dist/mocked_classnames/src/components/Search/Search.js.map +1 -1
- package/dist/mocked_classnames/src/components/Slider/Slider.js.map +1 -1
- package/dist/mocked_classnames/src/components/Slider/SliderConstants.js.map +1 -1
- package/dist/mocked_classnames/src/components/Slider/SliderContext.js.map +1 -1
- package/dist/mocked_classnames/src/components/Slider/SliderInfixHooks.js +1 -1
- package/dist/mocked_classnames/src/components/Slider/SliderInfixHooks.js.map +1 -1
- package/dist/mocked_classnames/src/components/SplitButton/SplitButton.js +1 -1
- package/dist/mocked_classnames/src/components/SplitButton/SplitButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/Steps/Steps.js.map +1 -1
- package/dist/mocked_classnames/src/components/Steps/StepsCommand.js +1 -1
- package/dist/mocked_classnames/src/components/Steps/StepsCommand.js.map +1 -1
- package/dist/mocked_classnames/src/components/Steps/StepsHeader.js +1 -1
- package/dist/mocked_classnames/src/components/Steps/StepsHeader.js.map +1 -1
- package/dist/mocked_classnames/src/components/Table/Table/Table.js.map +1 -1
- package/dist/mocked_classnames/src/components/Table/Table/tableHelpers.js +1 -1
- package/dist/mocked_classnames/src/components/Table/Table/tableHelpers.js.map +1 -1
- package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.js +1 -1
- package/dist/mocked_classnames/src/components/Table/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/dist/mocked_classnames/src/components/Tabs/Tab/Tab.js +1 -1
- package/dist/mocked_classnames/src/components/Tabs/Tab/Tab.js.map +1 -1
- package/dist/mocked_classnames/src/components/TextField/TextField.js +1 -1
- package/dist/mocked_classnames/src/components/TextField/TextField.js.map +1 -1
- package/dist/mocked_classnames/src/components/Tipseen/Tipseen.js +1 -1
- package/dist/mocked_classnames/src/components/Tipseen/Tipseen.js.map +1 -1
- package/dist/mocked_classnames/src/components/Tipseen/TipseenContent.js +1 -1
- package/dist/mocked_classnames/src/components/Tipseen/TipseenContent.js.map +1 -1
- package/dist/mocked_classnames/src/components/Tipseen/TipseenWizard.js.map +1 -1
- package/dist/mocked_classnames/src/components/Toast/Toast.js +1 -1
- package/dist/mocked_classnames/src/components/Toast/Toast.js.map +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastButton/ToastButton.js +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastButton/ToastButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastConstants.js +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastConstants.js.map +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastHelpers.js +1 -1
- package/dist/mocked_classnames/src/components/Toast/ToastHelpers.js.map +1 -1
- package/dist/mocked_classnames/src/components/Tooltip/Tooltip.js +1 -1
- package/dist/mocked_classnames/src/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.js +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.js +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.js +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/consts/icons.js +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/consts/icons.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/AttentionBox/utils/iconUtils.js.map +1 -1
- package/dist/mocked_classnames/src/components/next/Dropdown/components/Trigger/TriggerActions.js +1 -1
- package/dist/mocked_classnames/src/components/next/Dropdown/components/Trigger/TriggerActions.js.map +1 -1
- package/dist/mocked_classnames/src/index.js +1 -1
- package/dist/mocked_classnames/types/index.d.ts +0 -1
- package/dist/packages/shared/dist/constants/keyCodes.js +2 -0
- package/dist/packages/shared/dist/constants/keyCodes.js.map +1 -0
- package/dist/packages/shared/dist/constants/sizes.js +2 -0
- package/dist/packages/shared/dist/constants/sizes.js.map +1 -0
- package/dist/packages/shared/dist/hooks/ssr/useIsMounted.js +2 -0
- package/dist/packages/shared/dist/hooks/ssr/useIsMounted.js.map +1 -0
- package/dist/packages/shared/dist/hooks/ssr/useIsomorphicLayoutEffect.js +2 -0
- package/dist/packages/shared/dist/hooks/ssr/useIsomorphicLayoutEffect.js.map +1 -0
- package/dist/packages/shared/dist/hooks/useEventListener.js +2 -0
- package/dist/packages/shared/dist/hooks/useEventListener.js.map +1 -0
- package/dist/packages/shared/dist/hooks/useKeyEvent.js +2 -0
- package/dist/packages/shared/dist/hooks/useKeyEvent.js.map +1 -0
- package/dist/packages/shared/dist/hooks/useMergeRef.js +2 -0
- package/dist/packages/shared/dist/hooks/useMergeRef.js.map +1 -0
- package/dist/packages/shared/dist/tests/constants.js +2 -0
- package/dist/packages/shared/dist/tests/constants.js.map +1 -0
- package/dist/packages/shared/dist/tests/test-ids-utils.js +2 -0
- package/dist/packages/shared/dist/tests/test-ids-utils.js.map +1 -0
- package/dist/packages/shared/dist/types/withStaticProps.js +2 -0
- package/dist/packages/shared/dist/types/withStaticProps.js.map +1 -0
- package/dist/packages/shared/dist/utils/function-utils.js +2 -0
- package/dist/packages/shared/dist/utils/function-utils.js.map +1 -0
- package/dist/packages/shared/dist/utils/screenReaderAccessHelper.js +2 -0
- package/dist/packages/shared/dist/utils/screenReaderAccessHelper.js.map +1 -0
- package/dist/packages/shared/dist/utils/ssr-utils.js +2 -0
- package/dist/packages/shared/dist/utils/ssr-utils.js.map +1 -0
- package/dist/packages/shared/dist/utils/typesciptCssModulesHelper.js +2 -0
- package/dist/packages/shared/dist/utils/typesciptCssModulesHelper.js.map +1 -0
- package/dist/src/components/AlertBanner/AlertBanner.js +1 -1
- package/dist/src/components/AlertBanner/AlertBanner.js.map +1 -1
- package/dist/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.js +1 -1
- package/dist/src/components/AlertBanner/AlertBannerButton/AlertBannerButton.js.map +1 -1
- package/dist/src/components/AttentionBox/AttentionBox.js +1 -1
- package/dist/src/components/AttentionBox/AttentionBox.js.map +1 -1
- package/dist/src/components/AttentionBox/AttentionBoxConstants.js +1 -1
- package/dist/src/components/AttentionBox/AttentionBoxConstants.js.map +1 -1
- package/dist/src/components/Avatar/Avatar.js.map +1 -1
- package/dist/src/components/Avatar/AvatarBadge.js +1 -1
- package/dist/src/components/Avatar/AvatarBadge.js.map +1 -1
- package/dist/src/components/Avatar/AvatarContent.js +1 -1
- package/dist/src/components/Avatar/AvatarContent.js.map +1 -1
- package/dist/src/components/BaseListItem/utils.js +1 -1
- package/dist/src/components/BaseListItem/utils.js.map +1 -1
- package/dist/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbContent/BreadcrumbContent.js.map +1 -1
- package/dist/src/components/BreadcrumbsBar/BreadcrumbItem/BreadcrumbItem.js.map +1 -1
- package/dist/src/components/BreadcrumbsBar/BreadcrumbsBar.js +1 -1
- package/dist/src/components/BreadcrumbsBar/BreadcrumbsBar.js.map +1 -1
- package/dist/src/components/ButtonGroup/ButtonGroup.js +1 -1
- package/dist/src/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/src/components/ButtonGroup/ButtonWrapper.js +1 -1
- package/dist/src/components/ButtonGroup/ButtonWrapper.js.map +1 -1
- package/dist/src/components/Checkbox/Checkbox.js +1 -1
- package/dist/src/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/src/components/Chips/Chips.js +1 -1
- package/dist/src/components/Chips/Chips.js.map +1 -1
- package/dist/src/components/ColorPicker/ColorPicker.js +1 -1
- package/dist/src/components/ColorPicker/ColorPicker.js.map +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.js +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerClearButton.js.map +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerColorsGrid.js.map +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerContent/ColorPickerContent.js.map +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.js +1 -1
- package/dist/src/components/ColorPicker/components/ColorPickerItemComponent/ColorPickerItemComponent.js.map +1 -1
- package/dist/src/components/Combobox/Combobox.js +1 -1
- package/dist/src/components/Combobox/Combobox.js.map +1 -1
- package/dist/src/components/Combobox/components/ComboboxConstants.js.map +1 -1
- package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.js +1 -1
- package/dist/src/components/Combobox/components/ComboboxOption/ComboboxOption.js.map +1 -1
- package/dist/src/components/DatePicker/DateNavigationItem/DateNavigationItem.js +1 -1
- package/dist/src/components/DatePicker/DateNavigationItem/DateNavigationItem.js.map +1 -1
- package/dist/src/components/DatePicker/DatePickerHeader/DatePickerHeader.js +1 -1
- package/dist/src/components/DatePicker/DatePickerHeader/DatePickerHeader.js.map +1 -1
- package/dist/src/components/DatePicker/YearPicker/YearsList.js +1 -1
- package/dist/src/components/DatePicker/YearPicker/YearsList.js.map +1 -1
- package/dist/src/components/Dialog/DialogContent/DialogContent.js +1 -1
- package/dist/src/components/Dialog/DialogContent/DialogContent.js.map +1 -1
- package/dist/src/components/Dropdown/components/ChildrenContent/ChildrenContent.js +1 -1
- package/dist/src/components/Dropdown/components/ChildrenContent/ChildrenContent.js.map +1 -1
- package/dist/src/components/Dropdown/components/ClearIndicator/ClearIndicator.js +1 -1
- package/dist/src/components/Dropdown/components/ClearIndicator/ClearIndicator.js.map +1 -1
- package/dist/src/components/Dropdown/components/DropdownIndicator/DropdownIndicator.js +1 -1
- package/dist/src/components/Dropdown/components/DropdownIndicator/DropdownIndicator.js.map +1 -1
- package/dist/src/components/EmptyState/EmptyState.js +1 -1
- package/dist/src/components/EmptyState/EmptyState.js.map +1 -1
- package/dist/src/components/ExpandCollapse/ExpandCollapse.js +1 -1
- package/dist/src/components/ExpandCollapse/ExpandCollapse.js.map +1 -1
- package/dist/src/components/FieldLabel/FieldLabel.js +1 -1
- package/dist/src/components/FieldLabel/FieldLabel.js.map +1 -1
- package/dist/src/components/IconButton/IconButton.js +1 -1
- package/dist/src/components/IconButton/IconButton.js.map +1 -1
- package/dist/src/components/Info/Info.js +1 -1
- package/dist/src/components/Info/Info.js.map +1 -1
- package/dist/src/components/LegacyModal/LegacyModalFooter/LegacyModalFooterButtons/LegacyModalFooterButtons.js +1 -1
- package/dist/src/components/LegacyModal/LegacyModalFooter/LegacyModalFooterButtons/LegacyModalFooterButtons.js.map +1 -1
- package/dist/src/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.js +1 -1
- package/dist/src/components/LegacyModal/LegacyModalHeader/LegacyModalHeader.js.map +1 -1
- package/dist/src/components/Link/Link.js +1 -1
- package/dist/src/components/Link/Link.js.map +1 -1
- package/dist/src/components/ListItemIcon/ListItemIcon.js +1 -1
- package/dist/src/components/ListItemIcon/ListItemIcon.js.map +1 -1
- package/dist/src/components/Menu/MenuItem/MenuItem.js +1 -1
- package/dist/src/components/Menu/MenuItem/MenuItem.js.map +1 -1
- package/dist/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.js +1 -1
- package/dist/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.js.map +1 -1
- package/dist/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.js +1 -1
- package/dist/src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.js.map +1 -1
- package/dist/src/components/Menu/MenuItemButton/MenuItemButton.js +1 -1
- package/dist/src/components/Menu/MenuItemButton/MenuItemButton.js.map +1 -1
- package/dist/src/components/MenuButton/MenuButton.js +1 -1
- package/dist/src/components/MenuButton/MenuButton.js.map +1 -1
- package/dist/src/components/Modal/Modal/Modal.js +1 -1
- package/dist/src/components/Modal/Modal/Modal.js.map +1 -1
- package/dist/src/components/Modal/ModalHeader/ModalHeader.js +1 -1
- package/dist/src/components/Modal/ModalHeader/ModalHeader.js.map +1 -1
- package/dist/src/components/Modal/ModalTopActions/ModalTopActions.js +1 -1
- package/dist/src/components/Modal/ModalTopActions/ModalTopActions.js.map +1 -1
- package/dist/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js +1 -1
- package/dist/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js.map +1 -1
- package/dist/src/components/MultiStepIndicator/MultiStepIndicator.js +1 -1
- package/dist/src/components/MultiStepIndicator/MultiStepIndicator.js.map +1 -1
- package/dist/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.js +1 -1
- package/dist/src/components/MultiStepIndicator/components/StepIndicator/StepIndicator.js.map +1 -1
- package/dist/src/components/NumberField/NumberField.js +1 -1
- package/dist/src/components/NumberField/NumberField.js.map +1 -1
- package/dist/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.js +1 -1
- package/dist/src/components/NumberField/components/NumberFieldSpinButton/NumberFieldSpinButton.js.map +1 -1
- package/dist/src/components/Search/Search.js +1 -1
- package/dist/src/components/Search/Search.js.map +1 -1
- package/dist/src/components/Slider/Slider.js.map +1 -1
- package/dist/src/components/Slider/SliderConstants.js.map +1 -1
- package/dist/src/components/Slider/SliderContext.js.map +1 -1
- package/dist/src/components/Slider/SliderInfixHooks.js +1 -1
- package/dist/src/components/Slider/SliderInfixHooks.js.map +1 -1
- package/dist/src/components/SplitButton/SplitButton.js +1 -1
- package/dist/src/components/SplitButton/SplitButton.js.map +1 -1
- package/dist/src/components/Steps/Steps.js.map +1 -1
- package/dist/src/components/Steps/StepsCommand.js +1 -1
- package/dist/src/components/Steps/StepsCommand.js.map +1 -1
- package/dist/src/components/Steps/StepsHeader.js +1 -1
- package/dist/src/components/Steps/StepsHeader.js.map +1 -1
- package/dist/src/components/Table/Table/Table.js.map +1 -1
- package/dist/src/components/Table/Table/tableHelpers.js +1 -1
- package/dist/src/components/Table/Table/tableHelpers.js.map +1 -1
- package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.js +1 -1
- package/dist/src/components/Table/TableHeaderCell/TableHeaderCell.js.map +1 -1
- package/dist/src/components/Tabs/Tab/Tab.js +1 -1
- package/dist/src/components/Tabs/Tab/Tab.js.map +1 -1
- package/dist/src/components/TextField/TextField.js +1 -1
- package/dist/src/components/TextField/TextField.js.map +1 -1
- package/dist/src/components/Tipseen/Tipseen.js +1 -1
- package/dist/src/components/Tipseen/Tipseen.js.map +1 -1
- package/dist/src/components/Tipseen/TipseenContent.js +1 -1
- package/dist/src/components/Tipseen/TipseenContent.js.map +1 -1
- package/dist/src/components/Tipseen/TipseenWizard.js.map +1 -1
- package/dist/src/components/Toast/Toast.js +1 -1
- package/dist/src/components/Toast/Toast.js.map +1 -1
- package/dist/src/components/Toast/ToastButton/ToastButton.js +1 -1
- package/dist/src/components/Toast/ToastButton/ToastButton.js.map +1 -1
- package/dist/src/components/Toast/ToastConstants.js +1 -1
- package/dist/src/components/Toast/ToastConstants.js.map +1 -1
- package/dist/src/components/Toast/ToastHelpers.js +1 -1
- package/dist/src/components/Toast/ToastHelpers.js.map +1 -1
- package/dist/src/components/Tooltip/Tooltip.js +1 -1
- package/dist/src/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.js +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxButton/AttentionBoxButton.js.map +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.js +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxCloseButton/AttentionBoxCloseButton.js.map +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.js +1 -1
- package/dist/src/components/next/AttentionBox/components/AttentionBoxLeadingIcon/AttentionBoxLeadingIcon.js.map +1 -1
- package/dist/src/components/next/AttentionBox/consts/icons.js +1 -1
- package/dist/src/components/next/AttentionBox/consts/icons.js.map +1 -1
- package/dist/src/components/next/AttentionBox/utils/iconUtils.js.map +1 -1
- package/dist/src/components/next/Dropdown/components/Trigger/TriggerActions.js +1 -1
- package/dist/src/components/next/Dropdown/components/Trigger/TriggerActions.js.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/types/index.d.ts +0 -1
- package/package.json +8 -4
- package/dist/components/Button/Button.d.ts +0 -98
- package/dist/components/Button/Button.types.d.ts +0 -4
- package/dist/components/Button/ButtonConstants.d.ts +0 -37
- package/dist/components/Button/helper/useButtonLoading.d.ts +0 -5
- package/dist/components/Button/index.d.ts +0 -2
- package/dist/components/Icon/CustomSvgIcon/CustomSvgIcon.d.ts +0 -46
- package/dist/components/Icon/FontIcon/FontIcon.d.ts +0 -30
- package/dist/components/Icon/Icon.d.ts +0 -76
- package/dist/components/Icon/Icon.types.d.ts +0 -1
- package/dist/components/Icon/IconConstants.d.ts +0 -8
- package/dist/components/Icon/hooks/useIconProps.d.ts +0 -21
- package/dist/components/Icon/index.d.ts +0 -3
- package/dist/components/Loader/Loader.d.ts +0 -27
- package/dist/components/Loader/Loader.types.d.ts +0 -3
- package/dist/components/Loader/LoaderConstants.d.ts +0 -18
- package/dist/components/Loader/index.d.ts +0 -2
- package/dist/components/Modal/hooks/useFocusEscapeTargets/index.d.ts +0 -2
- package/dist/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.d.ts +0 -10
- package/dist/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.types.d.ts +0 -2
- package/dist/hooks/useIconScreenReaderAccessProps.d.ts +0 -10
- package/dist/icons/dist/_virtual/_tslib.js.map +0 -1
- package/dist/icons/dist/react/AddSmall.js.map +0 -1
- package/dist/icons/dist/react/Alert.js.map +0 -1
- package/dist/icons/dist/react/Check.js.map +0 -1
- package/dist/icons/dist/react/CloseMedium.js.map +0 -1
- package/dist/icons/dist/react/CloseSmall.js.map +0 -1
- package/dist/icons/dist/react/DropdownChevronDown.js.map +0 -1
- package/dist/icons/dist/react/DropdownChevronRight.js.map +0 -1
- package/dist/icons/dist/react/DropdownChevronUp.js.map +0 -1
- package/dist/icons/dist/react/Favorite.js.map +0 -1
- package/dist/icons/dist/react/Info.js.map +0 -1
- package/dist/icons/dist/react/Menu.js.map +0 -1
- package/dist/icons/dist/react/MoveArrowLeft.js.map +0 -1
- package/dist/icons/dist/react/MoveArrowRight.js.map +0 -1
- package/dist/icons/dist/react/NavigationChevronLeft.js.map +0 -1
- package/dist/icons/dist/react/NavigationChevronRight.js.map +0 -1
- package/dist/icons/dist/react/NoColor.js.map +0 -1
- package/dist/icons/dist/react/Remove.js.map +0 -1
- package/dist/icons/dist/react/Search.js.map +0 -1
- package/dist/icons/dist/react/Sort.js.map +0 -1
- package/dist/icons/dist/react/SortAscending.js.map +0 -1
- package/dist/icons/dist/react/SortDescending.js.map +0 -1
- package/dist/icons/dist/react/Warning.js.map +0 -1
- package/dist/mocked_classnames/components/Button/Button.d.ts +0 -98
- package/dist/mocked_classnames/components/Button/Button.types.d.ts +0 -4
- package/dist/mocked_classnames/components/Button/ButtonConstants.d.ts +0 -37
- package/dist/mocked_classnames/components/Button/helper/useButtonLoading.d.ts +0 -5
- package/dist/mocked_classnames/components/Button/index.d.ts +0 -2
- package/dist/mocked_classnames/components/Icon/CustomSvgIcon/CustomSvgIcon.d.ts +0 -46
- package/dist/mocked_classnames/components/Icon/FontIcon/FontIcon.d.ts +0 -30
- package/dist/mocked_classnames/components/Icon/Icon.d.ts +0 -76
- package/dist/mocked_classnames/components/Icon/Icon.types.d.ts +0 -1
- package/dist/mocked_classnames/components/Icon/IconConstants.d.ts +0 -8
- package/dist/mocked_classnames/components/Icon/hooks/useIconProps.d.ts +0 -21
- package/dist/mocked_classnames/components/Icon/index.d.ts +0 -3
- package/dist/mocked_classnames/components/Loader/Loader.d.ts +0 -27
- package/dist/mocked_classnames/components/Loader/Loader.types.d.ts +0 -3
- package/dist/mocked_classnames/components/Loader/LoaderConstants.d.ts +0 -18
- package/dist/mocked_classnames/components/Loader/index.d.ts +0 -2
- package/dist/mocked_classnames/components/Modal/hooks/useFocusEscapeTargets/index.d.ts +0 -2
- package/dist/mocked_classnames/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.d.ts +0 -10
- package/dist/mocked_classnames/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.types.d.ts +0 -2
- package/dist/mocked_classnames/hooks/useIconScreenReaderAccessProps.d.ts +0 -10
- package/dist/mocked_classnames/src/components/Button/Button.js +0 -2
- package/dist/mocked_classnames/src/components/Button/Button.js.map +0 -1
- package/dist/mocked_classnames/src/components/Button/Button.module.scss.js +0 -2
- package/dist/mocked_classnames/src/components/Button/ButtonConstants.js +0 -2
- package/dist/mocked_classnames/src/components/Button/ButtonConstants.js.map +0 -1
- package/dist/mocked_classnames/src/components/Button/helper/dom-helpers.js.map +0 -1
- package/dist/mocked_classnames/src/components/Button/helper/useButtonLoading.js +0 -2
- package/dist/mocked_classnames/src/components/Button/helper/useButtonLoading.js.map +0 -1
- package/dist/mocked_classnames/src/components/Icon/CustomSvgIcon/CustomSvgIcon.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/CustomSvgIcon/CustomSvgIcon.js.map +0 -1
- package/dist/mocked_classnames/src/components/Icon/FontIcon/FontIcon.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/FontIcon/FontIcon.js.map +0 -1
- package/dist/mocked_classnames/src/components/Icon/Icon.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/Icon.js.map +0 -1
- package/dist/mocked_classnames/src/components/Icon/Icon.module.scss.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/IconConstants.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/IconConstants.js.map +0 -1
- package/dist/mocked_classnames/src/components/Icon/hooks/useIconProps.js +0 -2
- package/dist/mocked_classnames/src/components/Icon/hooks/useIconProps.js.map +0 -1
- package/dist/mocked_classnames/src/components/Loader/Loader.js +0 -2
- package/dist/mocked_classnames/src/components/Loader/Loader.js.map +0 -1
- package/dist/mocked_classnames/src/components/Loader/Loader.module.scss.js +0 -2
- package/dist/mocked_classnames/src/components/Loader/LoaderConstants.js.map +0 -1
- package/dist/mocked_classnames/src/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.js +0 -2
- package/dist/mocked_classnames/src/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.js.map +0 -1
- package/dist/mocked_classnames/src/helpers/screenReaderAccessHelper.js +0 -2
- package/dist/mocked_classnames/src/helpers/screenReaderAccessHelper.js.map +0 -1
- package/dist/mocked_classnames/src/hooks/ssr/useIsMounted.js +0 -2
- package/dist/mocked_classnames/src/hooks/ssr/useIsMounted.js.map +0 -1
- package/dist/mocked_classnames/src/hooks/useIconScreenReaderAccessProps.js +0 -2
- package/dist/mocked_classnames/src/hooks/useIconScreenReaderAccessProps.js.map +0 -1
- package/dist/mocked_classnames/types/SubIcon.d.ts +0 -3
- package/dist/src/components/Button/Button.js +0 -2
- package/dist/src/components/Button/Button.js.map +0 -1
- package/dist/src/components/Button/Button.module.scss.js +0 -2
- package/dist/src/components/Button/ButtonConstants.js +0 -2
- package/dist/src/components/Button/ButtonConstants.js.map +0 -1
- package/dist/src/components/Button/helper/dom-helpers.js.map +0 -1
- package/dist/src/components/Button/helper/useButtonLoading.js +0 -2
- package/dist/src/components/Button/helper/useButtonLoading.js.map +0 -1
- package/dist/src/components/Icon/CustomSvgIcon/CustomSvgIcon.js +0 -2
- package/dist/src/components/Icon/CustomSvgIcon/CustomSvgIcon.js.map +0 -1
- package/dist/src/components/Icon/FontIcon/FontIcon.js +0 -2
- package/dist/src/components/Icon/FontIcon/FontIcon.js.map +0 -1
- package/dist/src/components/Icon/Icon.js +0 -2
- package/dist/src/components/Icon/Icon.js.map +0 -1
- package/dist/src/components/Icon/Icon.module.scss.js +0 -2
- package/dist/src/components/Icon/IconConstants.js +0 -2
- package/dist/src/components/Icon/IconConstants.js.map +0 -1
- package/dist/src/components/Icon/hooks/useIconProps.js +0 -2
- package/dist/src/components/Icon/hooks/useIconProps.js.map +0 -1
- package/dist/src/components/Loader/Loader.js +0 -2
- package/dist/src/components/Loader/Loader.js.map +0 -1
- package/dist/src/components/Loader/Loader.module.scss.js +0 -2
- package/dist/src/components/Loader/LoaderConstants.js.map +0 -1
- package/dist/src/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.js +0 -2
- package/dist/src/components/Modal/hooks/useFocusEscapeTargets/useFocusEscapeTargets.js.map +0 -1
- package/dist/src/helpers/screenReaderAccessHelper.js +0 -2
- package/dist/src/helpers/screenReaderAccessHelper.js.map +0 -1
- package/dist/src/hooks/ssr/useIsMounted.js +0 -2
- package/dist/src/hooks/ssr/useIsMounted.js.map +0 -1
- package/dist/src/hooks/useIconScreenReaderAccessProps.js +0 -2
- package/dist/src/hooks/useIconScreenReaderAccessProps.js.map +0 -1
- package/dist/types/SubIcon.d.ts +0 -3
- /package/dist/{mocked_classnames/src/components → components/button/dist}/Button/Button.module.scss.js.map +0 -0
- /package/dist/{mocked_classnames/src/components → components/button/dist}/Button/helper/dom-helpers.js +0 -0
- /package/dist/{mocked_classnames/src/components → components/icon/dist}/Icon/Icon.module.scss.js.map +0 -0
- /package/dist/{mocked_classnames/src/components → components/loader/dist}/Loader/Loader.module.scss.js.map +0 -0
- /package/dist/{mocked_classnames/src/components → components/loader/dist}/Loader/LoaderConstants.js +0 -0
- /package/dist/{src/components → mocked_classnames/components/button/dist}/Button/Button.module.scss.js.map +0 -0
- /package/dist/{src/components → mocked_classnames/components/button/dist}/Button/helper/dom-helpers.js +0 -0
- /package/dist/{src/components → mocked_classnames/components/icon/dist}/Icon/Icon.module.scss.js.map +0 -0
- /package/dist/{src/components → mocked_classnames/components/loader/dist}/Loader/Loader.module.scss.js.map +0 -0
- /package/dist/{src/components → mocked_classnames/components/loader/dist}/Loader/LoaderConstants.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/_virtual/_tslib.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/AddSmall.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Alert.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Check.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/CloseMedium.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/CloseSmall.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/DropdownChevronDown.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/DropdownChevronRight.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/DropdownChevronUp.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Favorite.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Info.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Menu.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/MoveArrowLeft.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/MoveArrowRight.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/NavigationChevronLeft.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/NavigationChevronRight.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/NoColor.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Remove.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Search.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Sort.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/SortAscending.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/SortDescending.js +0 -0
- /package/dist/{icons → mocked_classnames/packages/icons}/dist/react/Warning.js +0 -0
- /package/dist/mocked_classnames/{style → packages/style}/dist/index.min.css.js +0 -0
- /package/dist/mocked_classnames/{style → packages/style}/dist/index.min.css.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/_virtual/_tslib.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/_virtual/_tslib.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/AddSmall.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/AddSmall.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Alert.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Alert.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Check.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Check.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/CloseMedium.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/CloseMedium.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/CloseSmall.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/CloseSmall.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronDown.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronDown.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronRight.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronRight.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronUp.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/DropdownChevronUp.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Favorite.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Favorite.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Info.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Info.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Menu.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Menu.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/MoveArrowLeft.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/MoveArrowLeft.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/MoveArrowRight.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/MoveArrowRight.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NavigationChevronLeft.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NavigationChevronLeft.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NavigationChevronRight.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NavigationChevronRight.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NoColor.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/NoColor.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Remove.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Remove.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Search.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Search.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Sort.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Sort.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/SortAscending.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/SortAscending.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/SortDescending.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/SortDescending.js.map +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Warning.js +0 -0
- /package/dist/{mocked_classnames → packages}/icons/dist/react/Warning.js.map +0 -0
- /package/dist/{style → packages/style}/dist/index.min.css.js +0 -0
- /package/dist/{style → packages/style}/dist/index.min.css.js.map +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItem.js","sources":["../../../../../../src/components/Menu/MenuItem/MenuItem.tsx"],"sourcesContent":["import React, { type AriaAttributes, type ForwardedRef, type ReactElement, forwardRef, useMemo, useRef } from \"react\";\nimport Tooltip, { type TooltipProps } from \"../../../components/Tooltip/Tooltip\";\nimport Icon from \"../../../components/Icon/Icon\";\nimport useIsOverflowing from \"../../../hooks/useIsOverflowing/useIsOverflowing\";\nimport { type SubIcon, type VibeComponentProps, withStaticProps } from \"../../../types\";\nimport { type IconType } from \"../../Icon\";\nimport { type CloseMenuOption, type MenuChild } from \"../Menu/MenuConstants\";\nimport Label from \"../../Label/Label\";\nimport styles from \"./MenuItem.module.scss\";\nimport BaseMenuItem from \"./components/BaseMenuItem/BaseMenuItem\";\nimport MenuItemIcon from \"./components/MenuItemIcon/MenuItemIcon\";\nimport { type TooltipPositions } from \"../../Tooltip/Tooltip.types\";\nimport { TooltipPositions as TooltipPositionsEnum } from \"../../Tooltip/TooltipConstants\";\nimport { type SubmenuPosition } from \"./MenuItem.types\";\n\nexport interface MenuItemProps extends VibeComponentProps {\n /**\n * The title of the menu item.\n */\n title?: string;\n /**\n * The label displayed alongside the title.\n */\n label?: string | React.ReactElement<typeof Label>;\n /**\n * The icon displayed in the menu item.\n */\n icon?: SubIcon;\n /**\n * The type of icon.\n */\n iconType?: IconType;\n /**\n * The background color of the icon.\n */\n iconBackgroundColor?: string;\n /**\n * If true, the menu item is disabled.\n */\n disabled?: boolean;\n /**\n * The reason for disabling the item, shown in a tooltip.\n */\n disableReason?: string;\n /**\n * If true, the menu item is selected.\n */\n selected?: boolean;\n /**\n * Callback fired when the menu item is clicked.\n */\n onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;\n /**\n * The active item index in the menu.\n */\n activeItemIndex?: number;\n /**\n * Callback to set the active item index.\n */\n setActiveItemIndex?: (index: number) => void;\n /**\n * The index of the menu item.\n */\n index?: number;\n /**\n * The key of the menu item.\n */\n key?: string;\n /**\n * If true, the parent menu is visible.\n */\n isParentMenuVisible?: boolean;\n /**\n * Callback to reset the open submenu index.\n */\n resetOpenSubMenuIndex?: () => void;\n /**\n * If true, a submenu is open.\n */\n hasOpenSubMenu?: boolean;\n /**\n * Callback to open or close a submenu by index.\n */\n setSubMenuIsOpenByIndex?: (index: number, isOpen: boolean) => void;\n /**\n * If true, document event listeners are used for handling interactions.\n */\n useDocumentEventListeners?: boolean;\n /**\n * The tooltip content for the menu item.\n */\n tooltipContent?: string;\n /**\n * The position of the tooltip.\n */\n tooltipPosition?: TooltipPositions;\n /**\n * The delay in milliseconds before the tooltip shows.\n */\n tooltipShowDelay?: number;\n /**\n * Additional props for customizing the tooltip.\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * Callback fired when the mouse leaves the item.\n */\n onMouseLeave?: (event: React.MouseEvent) => void;\n /**\n * Callback fired when the mouse enters the item.\n */\n onMouseEnter?: (event: React.MouseEvent) => void;\n /**\n * Class name applied to the icon wrapper.\n */\n iconWrapperClassName?: string;\n /**\n * If true, the menu item starts as selected.\n */\n isInitialSelectedState?: boolean;\n /**\n * If true, the menu scrolls to ensure visibility.\n */\n shouldScrollMenu?: boolean;\n /**\n * Function to close the menu with a given option.\n */\n closeMenu?: (option: CloseMenuOption) => void;\n /**\n * Reference to the menu container.\n */\n menuRef?: React.RefObject<HTMLElement>;\n /**\n * The submenu items, if applicable.\n */\n children?: MenuChild | MenuChild[];\n /**\n * If true, enables a split menu item interaction where the main area triggers an action,\n * while the icon button opens the submenu.\n */\n splitMenuItem?: boolean;\n /**\n * The label of the menu item for accessibility.\n */\n \"aria-label\"?: AriaAttributes[\"aria-label\"];\n /**\n * The position of a submenu relative to the menu item.\n */\n submenuPosition?: SubmenuPosition;\n /**\n * If true, automatically repositions the submenu when its content changes.\n */\n autoAdjustOnSubMenuContentResize?: boolean;\n}\n\nexport interface MenuItemTitleComponentProps extends Omit<MenuItemProps, \"title\"> {\n title: ReactElement;\n \"aria-label\": NonNullable<AriaAttributes[\"aria-label\"]>;\n}\n\nconst MenuItem = forwardRef(\n (\n {\n className,\n iconWrapperClassName,\n title = \"\",\n label = \"\",\n icon = \"\",\n iconType,\n iconBackgroundColor,\n disabled = false,\n disableReason,\n selected = false,\n key,\n children,\n tooltipContent,\n tooltipPosition = \"right\",\n tooltipShowDelay = 300,\n tooltipProps,\n \"aria-label\": ariaLabel,\n ...baseMenuProps\n }: MenuItemProps | MenuItemTitleComponentProps,\n ref: ForwardedRef<HTMLElement>\n ) => {\n const titleRef = useRef();\n\n // if \"title\" is a component ariaLabel is mandatory\n const iconLabel = ariaLabel ?? (title as string);\n\n const isTitleHoveredAndOverflowing = useIsOverflowing({ ref: titleRef });\n const shouldShowTooltip = isTitleHoveredAndOverflowing || disabled || tooltipContent;\n\n const finalTooltipContent = useMemo(() => {\n if (disabled) return disableReason;\n if (tooltipContent) return tooltipContent;\n return title;\n }, [disableReason, disabled, title, tooltipContent]);\n\n const renderLabel = useMemo(() => {\n if (!label) return;\n if (typeof label === \"string\") {\n return <Label kind=\"line\" text={label} />;\n }\n if (React.isValidElement(label) && label.type === Label) {\n return label;\n }\n }, [label]);\n\n return (\n <Tooltip\n content={shouldShowTooltip ? finalTooltipContent : null}\n position={tooltipPosition}\n showDelay={tooltipShowDelay}\n {...tooltipProps}\n >\n <BaseMenuItem\n key={key}\n ref={ref}\n subMenu={children}\n className={className}\n disabled={disabled}\n selected={selected}\n {...baseMenuProps}\n >\n {Boolean(icon) && (\n <MenuItemIcon\n icon={icon}\n type={iconType}\n label={iconLabel}\n disabled={disabled}\n selected={selected}\n backgroundColor={iconBackgroundColor}\n wrapperClassName={iconWrapperClassName}\n />\n )}\n <div ref={titleRef} className={styles.title}>\n {title}\n </div>\n {renderLabel}\n </BaseMenuItem>\n </Tooltip>\n );\n }\n);\n\nObject.assign(MenuItem, {\n isSelectable: true,\n isMenuChild: true\n});\n\ninterface MenuItemStaticProps {\n iconType: typeof Icon.type;\n tooltipPositions: typeof TooltipPositionsEnum;\n}\n\nexport default withStaticProps<MenuItemProps | MenuItemTitleComponentProps, MenuItemStaticProps>(MenuItem, {\n iconType: Icon.type,\n tooltipPositions: TooltipPositionsEnum\n});\n"],"names":["MenuItem","forwardRef","_a","ref","className","iconWrapperClassName","_a$title","title","_a$label","label","_a$icon","icon","iconType","iconBackgroundColor","_a$disabled","disabled","disableReason","_a$selected","selected","key","children","tooltipContent","_a$tooltipPosition","tooltipPosition","_a$tooltipShowDelay","tooltipShowDelay","tooltipProps","ariaLabel","baseMenuProps","__rest","titleRef","useRef","iconLabel","shouldShowTooltip","useIsOverflowing","finalTooltipContent","useMemo","renderLabel","React","createElement","Label","kind","text","isValidElement","type","Tooltip","Object","assign","content","position","showDelay","BaseMenuItem","subMenu","MenuItemIcon","backgroundColor","wrapperClassName","styles","isSelectable","isMenuChild","withStaticProps","Icon","tooltipPositions","TooltipPositionsEnum"],"mappings":"snBAgKA,IAAMA,EAAWC,GACf,SACEC,EAoBAC,OAnBEC,EAgBuBF,EAhBvBE,UACAC,EAeuBH,EAfvBG,qBAAoBC,EAeGJ,EAdvBK,MAAAA,OAAQ,IAAHD,EAAG,GAAEA,EAAAE,EAcaN,EAbvBO,MAAAA,OAAQ,IAAHD,EAAG,GAAEA,EAAAE,EAaaR,EAZvBS,KAAAA,OAAO,IAAHD,EAAG,GAAEA,EACTE,EAWuBV,EAXvBU,SACAC,EAUuBX,EAVvBW,oBAAmBC,EAUIZ,EATvBa,SAAAA,OAAW,IAAHD,GAAQA,EAChBE,EAQuBd,EARvBc,cAAaC,EAQUf,EAPvBgB,SAAAA,OAAW,IAAHD,GAAQA,EAChBE,EAMuBjB,EANvBiB,IACAC,EAKuBlB,EALvBkB,SACAC,EAIuBnB,EAJvBmB,eAAcC,EAISpB,EAHvBqB,gBAAAA,OAAkB,IAAHD,EAAG,QAAOA,EAAAE,EAGFtB,EAFvBuB,iBAAAA,OAAmB,IAAHD,EAAG,IAAGA,EACtBE,EACuBxB,EADvBwB,aACcC,EAASzB,EAAvB,cACG0B,EAlBLC,EAAA3B,EAAA,CAAA,YAAA,uBAAA,QAAA,QAAA,OAAA,WAAA,sBAAA,WAAA,gBAAA,WAAA,MAAA,WAAA,iBAAA,kBAAA,mBAAA,eAAA,eAsBM4B,EAAWC,IAGXC,EAAYL,QAAAA,EAAcpB,EAG1B0B,EAD+BC,EAAiB,CAAE/B,IAAK2B,KACHf,GAAYM,EAEhEc,EAAsBC,GAAQ,WAClC,OAAIrB,EAAiBC,EACjBK,GACGd,CACR,GAAE,CAACS,EAAeD,EAAUR,EAAOc,IAE9BgB,EAAcD,GAAQ,WAC1B,GAAK3B,EACL,MAAqB,iBAAVA,EACF6B,EAAAC,cAACC,EAAK,CAACC,KAAK,OAAOC,KAAMjC,IAE9B6B,EAAMK,eAAelC,IAAUA,EAAMmC,OAASJ,EACzC/B,OADT,CAGF,GAAG,CAACA,IAEJ,OACE6B,EAACC,cAAAM,EACCC,OAAAC,OAAA,CAAAC,QAASf,EAAoBE,EAAsB,KACnDc,SAAU1B,EACV2B,UAAWzB,GACPC,GAEJY,EAACC,cAAAY,EACCL,OAAAC,OAAA,CAAA5B,IAAKA,EACLhB,IAAKA,EACLiD,QAAShC,EACThB,UAAWA,EACXW,SAAUA,EACVG,SAAUA,GACNU,KAEKjB,GACP2B,gBAACe,EAAY,CACX1C,KAAMA,EACNiC,KAAMhC,EACNH,MAAOuB,EACPjB,SAAUA,EACVG,SAAUA,EACVoC,gBAAiBzC,EACjB0C,iBAAkBlD,IAGtBiC,EAAKC,cAAA,MAAA,CAAApC,IAAK2B,EAAU1B,UAAWoD,EAAOjD,OACnCA,GAEF8B,GAIT,IAGFS,OAAOC,OAAO/C,EAAU,CACtByD,cAAc,EACdC,aAAa,IAQf,IAAeC,EAAAA,EAAkF3D,EAAU,CACzGY,SAAUgD,EAAKhB,KACfiB,iBAAkBC"}
|
|
1
|
+
{"version":3,"file":"MenuItem.js","sources":["../../../../../../src/components/Menu/MenuItem/MenuItem.tsx"],"sourcesContent":["import React, { type AriaAttributes, type ForwardedRef, type ReactElement, forwardRef, useMemo, useRef } from \"react\";\nimport Tooltip, { type TooltipProps } from \"../../../components/Tooltip/Tooltip\";\nimport { type IconType, Icon, type SubIcon } from \"@vibe/icon\";\nimport useIsOverflowing from \"../../../hooks/useIsOverflowing/useIsOverflowing\";\nimport { type VibeComponentProps, withStaticProps } from \"../../../types\";\nimport { type CloseMenuOption, type MenuChild } from \"../Menu/MenuConstants\";\nimport Label from \"../../Label/Label\";\nimport styles from \"./MenuItem.module.scss\";\nimport BaseMenuItem from \"./components/BaseMenuItem/BaseMenuItem\";\nimport MenuItemIcon from \"./components/MenuItemIcon/MenuItemIcon\";\nimport { type TooltipPositions } from \"../../Tooltip/Tooltip.types\";\nimport { TooltipPositions as TooltipPositionsEnum } from \"../../Tooltip/TooltipConstants\";\nimport { type SubmenuPosition } from \"./MenuItem.types\";\n\nexport interface MenuItemProps extends VibeComponentProps {\n /**\n * The title of the menu item.\n */\n title?: string;\n /**\n * The label displayed alongside the title.\n */\n label?: string | React.ReactElement<typeof Label>;\n /**\n * The icon displayed in the menu item.\n */\n icon?: SubIcon;\n /**\n * The type of icon.\n */\n iconType?: IconType;\n /**\n * The background color of the icon.\n */\n iconBackgroundColor?: string;\n /**\n * If true, the menu item is disabled.\n */\n disabled?: boolean;\n /**\n * The reason for disabling the item, shown in a tooltip.\n */\n disableReason?: string;\n /**\n * If true, the menu item is selected.\n */\n selected?: boolean;\n /**\n * Callback fired when the menu item is clicked.\n */\n onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;\n /**\n * The active item index in the menu.\n */\n activeItemIndex?: number;\n /**\n * Callback to set the active item index.\n */\n setActiveItemIndex?: (index: number) => void;\n /**\n * The index of the menu item.\n */\n index?: number;\n /**\n * The key of the menu item.\n */\n key?: string;\n /**\n * If true, the parent menu is visible.\n */\n isParentMenuVisible?: boolean;\n /**\n * Callback to reset the open submenu index.\n */\n resetOpenSubMenuIndex?: () => void;\n /**\n * If true, a submenu is open.\n */\n hasOpenSubMenu?: boolean;\n /**\n * Callback to open or close a submenu by index.\n */\n setSubMenuIsOpenByIndex?: (index: number, isOpen: boolean) => void;\n /**\n * If true, document event listeners are used for handling interactions.\n */\n useDocumentEventListeners?: boolean;\n /**\n * The tooltip content for the menu item.\n */\n tooltipContent?: string;\n /**\n * The position of the tooltip.\n */\n tooltipPosition?: TooltipPositions;\n /**\n * The delay in milliseconds before the tooltip shows.\n */\n tooltipShowDelay?: number;\n /**\n * Additional props for customizing the tooltip.\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * Callback fired when the mouse leaves the item.\n */\n onMouseLeave?: (event: React.MouseEvent) => void;\n /**\n * Callback fired when the mouse enters the item.\n */\n onMouseEnter?: (event: React.MouseEvent) => void;\n /**\n * Class name applied to the icon wrapper.\n */\n iconWrapperClassName?: string;\n /**\n * If true, the menu item starts as selected.\n */\n isInitialSelectedState?: boolean;\n /**\n * If true, the menu scrolls to ensure visibility.\n */\n shouldScrollMenu?: boolean;\n /**\n * Function to close the menu with a given option.\n */\n closeMenu?: (option: CloseMenuOption) => void;\n /**\n * Reference to the menu container.\n */\n menuRef?: React.RefObject<HTMLElement>;\n /**\n * The submenu items, if applicable.\n */\n children?: MenuChild | MenuChild[];\n /**\n * If true, enables a split menu item interaction where the main area triggers an action,\n * while the icon button opens the submenu.\n */\n splitMenuItem?: boolean;\n /**\n * The label of the menu item for accessibility.\n */\n \"aria-label\"?: AriaAttributes[\"aria-label\"];\n /**\n * The position of a submenu relative to the menu item.\n */\n submenuPosition?: SubmenuPosition;\n /**\n * If true, automatically repositions the submenu when its content changes.\n */\n autoAdjustOnSubMenuContentResize?: boolean;\n}\n\nexport interface MenuItemTitleComponentProps extends Omit<MenuItemProps, \"title\"> {\n title: ReactElement;\n \"aria-label\": NonNullable<AriaAttributes[\"aria-label\"]>;\n}\n\nconst MenuItem = forwardRef(\n (\n {\n className,\n iconWrapperClassName,\n title = \"\",\n label = \"\",\n icon = \"\",\n iconType,\n iconBackgroundColor,\n disabled = false,\n disableReason,\n selected = false,\n key,\n children,\n tooltipContent,\n tooltipPosition = \"right\",\n tooltipShowDelay = 300,\n tooltipProps,\n \"aria-label\": ariaLabel,\n ...baseMenuProps\n }: MenuItemProps | MenuItemTitleComponentProps,\n ref: ForwardedRef<HTMLElement>\n ) => {\n const titleRef = useRef();\n\n // if \"title\" is a component ariaLabel is mandatory\n const iconLabel = ariaLabel ?? (title as string);\n\n const isTitleHoveredAndOverflowing = useIsOverflowing({ ref: titleRef });\n const shouldShowTooltip = isTitleHoveredAndOverflowing || disabled || tooltipContent;\n\n const finalTooltipContent = useMemo(() => {\n if (disabled) return disableReason;\n if (tooltipContent) return tooltipContent;\n return title;\n }, [disableReason, disabled, title, tooltipContent]);\n\n const renderLabel = useMemo(() => {\n if (!label) return;\n if (typeof label === \"string\") {\n return <Label kind=\"line\" text={label} />;\n }\n if (React.isValidElement(label) && label.type === Label) {\n return label;\n }\n }, [label]);\n\n return (\n <Tooltip\n content={shouldShowTooltip ? finalTooltipContent : null}\n position={tooltipPosition}\n showDelay={tooltipShowDelay}\n {...tooltipProps}\n >\n <BaseMenuItem\n key={key}\n ref={ref}\n subMenu={children}\n className={className}\n disabled={disabled}\n selected={selected}\n {...baseMenuProps}\n >\n {Boolean(icon) && (\n <MenuItemIcon\n icon={icon}\n type={iconType}\n label={iconLabel}\n disabled={disabled}\n selected={selected}\n backgroundColor={iconBackgroundColor}\n wrapperClassName={iconWrapperClassName}\n />\n )}\n <div ref={titleRef} className={styles.title}>\n {title}\n </div>\n {renderLabel}\n </BaseMenuItem>\n </Tooltip>\n );\n }\n);\n\nObject.assign(MenuItem, {\n isSelectable: true,\n isMenuChild: true\n});\n\ninterface MenuItemStaticProps {\n iconType: typeof Icon.type;\n tooltipPositions: typeof TooltipPositionsEnum;\n}\n\nexport default withStaticProps<MenuItemProps | MenuItemTitleComponentProps, MenuItemStaticProps>(MenuItem, {\n iconType: Icon.type,\n tooltipPositions: TooltipPositionsEnum\n});\n"],"names":["MenuItem","forwardRef","_a","ref","className","iconWrapperClassName","_a$title","title","_a$label","label","_a$icon","icon","iconType","iconBackgroundColor","_a$disabled","disabled","disableReason","_a$selected","selected","key","children","tooltipContent","_a$tooltipPosition","tooltipPosition","_a$tooltipShowDelay","tooltipShowDelay","tooltipProps","ariaLabel","baseMenuProps","__rest","titleRef","useRef","iconLabel","shouldShowTooltip","useIsOverflowing","finalTooltipContent","useMemo","renderLabel","React","createElement","Label","kind","text","isValidElement","type","Tooltip","Object","assign","content","position","showDelay","BaseMenuItem","subMenu","MenuItemIcon","backgroundColor","wrapperClassName","styles","isSelectable","isMenuChild","withStaticProps","Icon","tooltipPositions","TooltipPositionsEnum"],"mappings":"ipBA+JA,IAAMA,EAAWC,GACf,SACEC,EAoBAC,OAnBEC,EAgBuBF,EAhBvBE,UACAC,EAeuBH,EAfvBG,qBAAoBC,EAeGJ,EAdvBK,MAAAA,OAAQ,IAAHD,EAAG,GAAEA,EAAAE,EAcaN,EAbvBO,MAAAA,OAAQ,IAAHD,EAAG,GAAEA,EAAAE,EAaaR,EAZvBS,KAAAA,OAAO,IAAHD,EAAG,GAAEA,EACTE,EAWuBV,EAXvBU,SACAC,EAUuBX,EAVvBW,oBAAmBC,EAUIZ,EATvBa,SAAAA,OAAW,IAAHD,GAAQA,EAChBE,EAQuBd,EARvBc,cAAaC,EAQUf,EAPvBgB,SAAAA,OAAW,IAAHD,GAAQA,EAChBE,EAMuBjB,EANvBiB,IACAC,EAKuBlB,EALvBkB,SACAC,EAIuBnB,EAJvBmB,eAAcC,EAISpB,EAHvBqB,gBAAAA,OAAkB,IAAHD,EAAG,QAAOA,EAAAE,EAGFtB,EAFvBuB,iBAAAA,OAAmB,IAAHD,EAAG,IAAGA,EACtBE,EACuBxB,EADvBwB,aACcC,EAASzB,EAAvB,cACG0B,EAlBLC,EAAA3B,EAAA,CAAA,YAAA,uBAAA,QAAA,QAAA,OAAA,WAAA,sBAAA,WAAA,gBAAA,WAAA,MAAA,WAAA,iBAAA,kBAAA,mBAAA,eAAA,eAsBM4B,EAAWC,IAGXC,EAAYL,QAAAA,EAAcpB,EAG1B0B,EAD+BC,EAAiB,CAAE/B,IAAK2B,KACHf,GAAYM,EAEhEc,EAAsBC,GAAQ,WAClC,OAAIrB,EAAiBC,EACjBK,GACGd,CACR,GAAE,CAACS,EAAeD,EAAUR,EAAOc,IAE9BgB,EAAcD,GAAQ,WAC1B,GAAK3B,EACL,MAAqB,iBAAVA,EACF6B,EAAAC,cAACC,EAAK,CAACC,KAAK,OAAOC,KAAMjC,IAE9B6B,EAAMK,eAAelC,IAAUA,EAAMmC,OAASJ,EACzC/B,OADT,CAGF,GAAG,CAACA,IAEJ,OACE6B,EAACC,cAAAM,EACCC,OAAAC,OAAA,CAAAC,QAASf,EAAoBE,EAAsB,KACnDc,SAAU1B,EACV2B,UAAWzB,GACPC,GAEJY,EAACC,cAAAY,EACCL,OAAAC,OAAA,CAAA5B,IAAKA,EACLhB,IAAKA,EACLiD,QAAShC,EACThB,UAAWA,EACXW,SAAUA,EACVG,SAAUA,GACNU,KAEKjB,GACP2B,gBAACe,EAAY,CACX1C,KAAMA,EACNiC,KAAMhC,EACNH,MAAOuB,EACPjB,SAAUA,EACVG,SAAUA,EACVoC,gBAAiBzC,EACjB0C,iBAAkBlD,IAGtBiC,EAAKC,cAAA,MAAA,CAAApC,IAAK2B,EAAU1B,UAAWoD,EAAOjD,OACnCA,GAEF8B,GAIT,IAGFS,OAAOC,OAAO/C,EAAU,CACtByD,cAAc,EACdC,aAAa,IAQf,IAAeC,EAAAA,EAAkF3D,EAAU,CACzGY,SAAUgD,EAAKhB,KACfiB,iBAAkBC"}
|
package/dist/mocked_classnames/src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{defineProperty as e}from"../../../../../../_virtual/_rollupPluginBabelHelpers.js";import o from"react";import r from"../../../../
|
|
1
|
+
import{defineProperty as e}from"../../../../../../_virtual/_rollupPluginBabelHelpers.js";import o from"react";import r from"../../../../Flex/Flex.js";import t from"classnames";import s from"./MenuItemIcon.module.scss.js";import n from"../../../../../../components/icon/dist/Icon/Icon.js";var c=function(c){var a=c.icon,i=c.type,l=c.disabled,m=c.selected,p=c.backgroundColor,u=c.wrapperClassName;return o.createElement(r,{justify:"center",className:t(s.iconWrapper,e(e({},s.disabled,l),s.withBackgroundColor,!!p),u),style:Object.assign({},p&&{backgroundColor:p})},o.createElement(n,{iconType:i||("function"==typeof a?"svg":"font"),icon:a,className:t(s.icon,e({},s.selected,!l&&m)),ignoreFocusStyle:!0,iconSize:18}))};export{c as default};
|
|
2
2
|
//# sourceMappingURL=MenuItemIcon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemIcon.js","sources":["../../../../../../../../src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.tsx"],"sourcesContent":["import React from \"react\";\nimport Icon from \"
|
|
1
|
+
{"version":3,"file":"MenuItemIcon.js","sources":["../../../../../../../../src/components/Menu/MenuItem/components/MenuItemIcon/MenuItemIcon.tsx"],"sourcesContent":["import React from \"react\";\nimport { Icon } from \"@vibe/icon\";\nimport Flex from \"../../../../Flex/Flex\";\nimport cx from \"classnames\";\nimport styles from \"./MenuItemIcon.module.scss\";\nimport { type MenuItemIconProps } from \"./MenuItemIcon.types\";\n\nconst MenuItemIcon = ({\n icon,\n type,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n label,\n disabled,\n selected,\n backgroundColor,\n wrapperClassName\n}: MenuItemIconProps) => (\n <Flex\n justify=\"center\"\n className={cx(\n styles.iconWrapper,\n {\n [styles.disabled]: disabled,\n [styles.withBackgroundColor]: !!backgroundColor\n },\n wrapperClassName\n )}\n style={{ ...(backgroundColor && { backgroundColor }) }}\n >\n <Icon\n iconType={type || (typeof icon === \"function\" ? \"svg\" : \"font\")}\n icon={icon}\n className={cx(styles.icon, { [styles.selected]: !disabled && selected })}\n ignoreFocusStyle\n iconSize={18}\n />\n </Flex>\n);\n\nexport default MenuItemIcon;\n"],"names":["MenuItemIcon","_ref","icon","type","disabled","selected","backgroundColor","wrapperClassName","React","createElement","Flex","justify","className","cx","styles","iconWrapper","_defineProperty","withBackgroundColor","style","Object","assign","Icon","iconType","ignoreFocusStyle","iconSize"],"mappings":"gSAOA,IAAMA,EAAe,SAAHC,GAAA,IAChBC,EAAID,EAAJC,KACAC,EAAIF,EAAJE,KAGAC,EAAQH,EAARG,SACAC,EAAQJ,EAARI,SACAC,EAAeL,EAAfK,gBACAC,EAAgBN,EAAhBM,iBAAgB,OAEhBC,EAACC,cAAAC,EACC,CAAAC,QAAQ,SACRC,UAAWC,EACTC,EAAOC,YAAWC,EAAAA,EAAA,GAEfF,EAAOV,SAAWA,GAClBU,EAAOG,sBAAwBX,GAElCC,GAEFW,MAAKC,OAAAC,OAAA,CAAA,EAAQd,GAAmB,CAAEA,gBAAAA,KAElCE,EAACC,cAAAY,EACC,CAAAC,SAAUnB,IAAyB,mBAATD,EAAsB,MAAQ,QACxDA,KAAMA,EACNU,UAAWC,EAAGC,EAAOZ,KAAIc,EAAA,GAAKF,EAAOT,UAAYD,GAAYC,IAC7DkB,kBAAgB,EAChBC,SAAU,KAEP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{defineProperty as e}from"../../../../../../_virtual/_rollupPluginBabelHelpers.js";import t,{forwardRef as
|
|
1
|
+
import{defineProperty as e}from"../../../../../../_virtual/_rollupPluginBabelHelpers.js";import t,{forwardRef as i}from"react";import o from"classnames";import r from"../../../../Divider/Divider.js";import n from"../../../../Flex/Flex.js";import s from"../../../../IconButton/IconButton.js";import a from"./MenuItemSubMenuIcon.module.scss.js";import l from"../../../../../../packages/icons/dist/react/DropdownChevronRight.js";import c from"../../../../../../components/icon/dist/Icon/Icon.js";var m=i((function(i,m){return t.createElement(n,{justify:"center",className:a.subMenuIconWrapper},!0===i.isSplit?t.createElement(t.Fragment,null,t.createElement(r,{direction:"vertical",className:a.divider}),t.createElement(s,{icon:l,className:a.splitMenuItemIconButton,kind:"tertiary",size:null,iconClassName:o(a.splitSubMenuIcon,e({},a.disabled,i.disabled)),tabIndex:-1,ref:m,active:i.active,disabled:i.disabled})):t.createElement(c,{icon:l,iconLabel:i.label,className:o(a.subMenuIcon,e({},a.disabled,i.disabled)),ignoreFocusStyle:!0,iconSize:18}))}));export{m as default};
|
|
2
2
|
//# sourceMappingURL=MenuItemSubMenuIcon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemSubMenuIcon.js","sources":["../../../../../../../../src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport cx from \"classnames\";\nimport Divider from \"../../../../Divider/Divider\";\nimport Icon from \"
|
|
1
|
+
{"version":3,"file":"MenuItemSubMenuIcon.js","sources":["../../../../../../../../src/components/Menu/MenuItem/components/MenuItemSubMenuIcon/MenuItemSubMenuIcon.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport cx from \"classnames\";\nimport Divider from \"../../../../Divider/Divider\";\nimport { Icon } from \"@vibe/icon\";\nimport Flex from \"../../../../Flex/Flex\";\nimport IconButton from \"../../../../IconButton/IconButton\";\nimport { DropdownChevronRight } from \"@vibe/icons\";\nimport styles from \"./MenuItemSubMenuIcon.module.scss\";\nimport { type MenuItemSubMenuIconProps } from \"./MenuItemSubMenuIcon.types\";\n\nconst MenuItemSubMenuIcon = forwardRef((props: MenuItemSubMenuIconProps, ref: React.ForwardedRef<HTMLDivElement>) => (\n <Flex justify=\"center\" className={styles.subMenuIconWrapper}>\n {props.isSplit === true ? (\n <>\n <Divider direction=\"vertical\" className={styles.divider} />\n <IconButton\n icon={DropdownChevronRight}\n className={styles.splitMenuItemIconButton}\n kind=\"tertiary\"\n size={null} // Customizing size via className\n iconClassName={cx(styles.splitSubMenuIcon, { [styles.disabled]: props.disabled })}\n tabIndex={-1}\n ref={ref}\n active={props.active}\n disabled={props.disabled}\n />\n </>\n ) : (\n <Icon\n icon={DropdownChevronRight}\n iconLabel={props.label}\n className={cx(styles.subMenuIcon, { [styles.disabled]: props.disabled })}\n ignoreFocusStyle\n iconSize={18}\n />\n )}\n </Flex>\n));\n\nexport default MenuItemSubMenuIcon;\n"],"names":["MenuItemSubMenuIcon","forwardRef","props","ref","React","createElement","Flex","justify","className","styles","subMenuIconWrapper","isSplit","Fragment","Divider","direction","divider","IconButton","icon","DropdownChevronRight","splitMenuItemIconButton","kind","size","iconClassName","cx","splitSubMenuIcon","_defineProperty","disabled","tabIndex","active","Icon","iconLabel","label","subMenuIcon","ignoreFocusStyle","iconSize"],"mappings":"6eAUA,IAAMA,EAAsBC,GAAW,SAACC,EAAiCC,GAAuC,OAC9GC,EAAAC,cAACC,EAAK,CAAAC,QAAQ,SAASC,UAAWC,EAAOC,qBACpB,IAAlBR,EAAMS,QACLP,EAAAC,cAAAD,EAAAQ,SAAA,KACER,EAACC,cAAAQ,EAAQ,CAAAC,UAAU,WAAWN,UAAWC,EAAOM,UAChDX,EAACC,cAAAW,EACC,CAAAC,KAAMC,EACNV,UAAWC,EAAOU,wBAClBC,KAAK,WACLC,KAAM,KACNC,cAAeC,EAAGd,EAAOe,iBAAgBC,EAAKhB,GAAAA,EAAOiB,SAAWxB,EAAMwB,WACtEC,UAAW,EACXxB,IAAKA,EACLyB,OAAQ1B,EAAM0B,OACdF,SAAUxB,EAAMwB,YAIpBtB,EAACC,cAAAwB,GACCZ,KAAMC,EACNY,UAAW5B,EAAM6B,MACjBvB,UAAWe,EAAGd,EAAOuB,YAAWP,EAAKhB,GAAAA,EAAOiB,SAAWxB,EAAMwB,WAC7DO,kBAAgB,EAChBC,SAAU,KAGT"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import e from"classnames";import t,{useRef as o}from"react";import{getTestId as
|
|
1
|
+
import e from"classnames";import t,{useRef as o}from"react";import{getTestId as n,ComponentDefaultTestId as s}from"../../../tests/testIds.js";import i from"../../Tooltip/Tooltip.js";import r from"../../../hooks/useMergeRef.js";import l from"../MenuItem/hooks/useMenuItemMouseEvents.js";import m from"../MenuItem/hooks/useMenuItemKeyboardEvents.js";import{withStaticPropsWithoutForwardRef as u}from"../../../types/withStaticProps.js";import"../../../utils/colors-vars-map.js";import a from"../../Text/Text.js";import d from"./MenuItemButton.module.scss.js";import{TooltipPositions as c}from"../../Tooltip/TooltipConstants.js";import p from"../../../../components/button/dist/Button/Button.js";var I=function(u){var c=u.className,I=u.kind,v=void 0===I?"primary":I,f=u.leftIcon,M=void 0===f?null:f,b=u.rightIcon,h=void 0===b?null:b,x=u.disabled,j=void 0!==x&&x,k=u.disableReason,E=u.index,C=u.activeItemIndex,S=void 0===C?-1:C,y=u.onClick,T=u.tooltipPosition,B=void 0===T?"right":T,O=u.tooltipShowDelay,N=void 0===O?300:O,g=u.children,A=u.resetOpenSubMenuIndex,w=u.setSubMenuIsOpenByIndex,D=u.setActiveItemIndex,R=u.menuRef,P=u.closeMenu,U=u.useDocumentEventListeners,L=u.id,_=u["data-testid"],z=o(null),K=o(null),q=r(z,K),F=j&&k,G=k,H=S===E,J=l({ref:z,resetOpenSubMenuIndex:A,setSubMenuIsOpenByIndex:w,isActive:H,setActiveItemIndex:D,index:E,hasChildren:!1}),Q=m({onClick:y,disabled:j,isActive:H,index:E,setActiveItemIndex:D,hasChildren:!1,shouldShowSubMenu:!1,setSubMenuIsOpenByIndex:w,menuRef:R,isMouseEnter:J,closeMenu:P,useDocumentEventListeners:U}).onClickCallback;return t.createElement(i,{content:F?G:null,position:B,showDelay:N},t.createElement(a,{type:"text2",element:"li","data-testid":_||n(s.MENU_ITEM_BUTTON,L),id:L,className:e(d.itemButton,c),ref:q,role:"menuitem","aria-current":H},t.createElement(p,{className:d.buttonComponent,active:H,disabled:j,leftIcon:M,rightIcon:h,onClick:Q,kind:v,size:"small",blurOnMouseUp:!1},t.createElement("div",{className:d.content},g))))};Object.assign(I,{isSelectable:!0,isMenuChild:!0});var v=u(I,{kinds:p.kinds,tooltipPositions:c});export{v as default};
|
|
2
2
|
//# sourceMappingURL=MenuItemButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuItemButton.js","sources":["../../../../../../src/components/Menu/MenuItemButton/MenuItemButton.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport React, { useRef } from \"react\";\nimport { ComponentDefaultTestId, getTestId } from \"../../../tests/test-ids-utils\";\nimport Button from \"
|
|
1
|
+
{"version":3,"file":"MenuItemButton.js","sources":["../../../../../../src/components/Menu/MenuItemButton/MenuItemButton.tsx"],"sourcesContent":["import cx from \"classnames\";\nimport React, { useRef } from \"react\";\nimport { ComponentDefaultTestId, getTestId } from \"../../../tests/test-ids-utils\";\nimport { Button, type ButtonType } from \"@vibe/button\";\nimport Tooltip from \"../../Tooltip/Tooltip\";\nimport useMergeRef from \"../../../hooks/useMergeRef\";\nimport useMenuItemMouseEvents from \"../MenuItem/hooks/useMenuItemMouseEvents\";\nimport useMenuItemKeyboardEvents from \"../MenuItem/hooks/useMenuItemKeyboardEvents\";\nimport { type VibeComponentProps, type ElementContent, withStaticPropsWithoutForwardRef } from \"../../../types\";\nimport { type SubIcon } from \"@vibe/icon\";\nimport Text from \"../../Text/Text\";\nimport styles from \"./MenuItemButton.module.scss\";\nimport { type TooltipPositions } from \"../../Tooltip\";\nimport { TooltipPositions as TooltipPositionsEnum } from \"../../Tooltip/TooltipConstants\";\n\nexport interface MenuItemButtonProps extends VibeComponentProps {\n /**\n * The style variant of the button.\n */\n kind?: ButtonType;\n /**\n * Icon displayed on the left side of the button.\n */\n leftIcon?: SubIcon;\n /**\n * Icon displayed on the right side of the button.\n */\n rightIcon?: SubIcon;\n /**\n * The index of the menu item in the menu.\n */\n index?: number;\n /**\n * The index of the currently active menu item.\n */\n activeItemIndex?: number;\n /**\n * If true, the button is disabled.\n */\n disabled?: boolean;\n /**\n * The reason why the button is disabled, displayed as a tooltip.\n */\n disableReason?: string;\n /**\n * Callback fired when the button is clicked.\n */\n onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;\n /**\n * The position of the tooltip.\n */\n tooltipPosition?: TooltipPositions;\n /**\n * The delay in milliseconds before the tooltip appears.\n */\n tooltipShowDelay?: number;\n /**\n * Callback to reset the open submenu index.\n */\n resetOpenSubMenuIndex?: () => void;\n /**\n * Callback to open or close a submenu by index.\n */\n setSubMenuIsOpenByIndex?: (index: number, isOpen: boolean) => void;\n /**\n * Callback to set the active item index.\n */\n setActiveItemIndex?: (index: number) => void;\n /**\n * Reference to the menu container.\n */\n menuRef?: React.RefObject<HTMLElement>;\n /**\n * Function to close the menu.\n */\n closeMenu?: () => void;\n /**\n * If true, event listeners are added at the document level.\n */\n useDocumentEventListeners?: boolean;\n /**\n * The content of the button.\n */\n children?: ElementContent | ElementContent[];\n}\n\nconst MenuItemButton = ({\n className,\n kind = \"primary\",\n leftIcon = null,\n rightIcon = null,\n disabled = false,\n disableReason,\n index,\n activeItemIndex = -1,\n onClick,\n tooltipPosition = \"right\",\n tooltipShowDelay = 300,\n children,\n resetOpenSubMenuIndex,\n setSubMenuIsOpenByIndex,\n setActiveItemIndex,\n menuRef,\n closeMenu,\n useDocumentEventListeners,\n id,\n \"data-testid\": dataTestId\n}: MenuItemButtonProps) => {\n const ref = useRef(null);\n const referenceElementRef = useRef(null);\n const mergedRef = useMergeRef(ref, referenceElementRef);\n\n const shouldShowTooltip = disabled && disableReason;\n const tooltipContent = disableReason;\n\n const isActive = activeItemIndex === index;\n\n const isMouseEnter = useMenuItemMouseEvents({\n ref,\n resetOpenSubMenuIndex,\n setSubMenuIsOpenByIndex,\n isActive,\n setActiveItemIndex,\n index,\n hasChildren: false\n });\n\n const { onClickCallback } = useMenuItemKeyboardEvents({\n onClick,\n disabled,\n isActive,\n index,\n setActiveItemIndex,\n hasChildren: false,\n shouldShowSubMenu: false,\n setSubMenuIsOpenByIndex,\n menuRef,\n isMouseEnter,\n closeMenu,\n useDocumentEventListeners\n });\n\n return (\n <Tooltip\n content={shouldShowTooltip ? tooltipContent : null}\n position={tooltipPosition}\n showDelay={tooltipShowDelay}\n >\n <Text\n type=\"text2\"\n element=\"li\"\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MENU_ITEM_BUTTON, id)}\n id={id}\n className={cx(styles.itemButton, className)}\n ref={mergedRef}\n role=\"menuitem\"\n aria-current={isActive}\n >\n <Button\n className={styles.buttonComponent}\n active={isActive}\n disabled={disabled}\n leftIcon={leftIcon}\n rightIcon={rightIcon}\n onClick={onClickCallback}\n kind={kind}\n size=\"small\"\n blurOnMouseUp={false}\n >\n <div className={styles.content}>{children}</div>\n </Button>\n </Text>\n </Tooltip>\n );\n};\n\nObject.assign(MenuItemButton, {\n isSelectable: true,\n isMenuChild: true\n});\n\ninterface MenuItemButtonStaticProps {\n kinds: typeof Button.kinds;\n tooltipPositions: typeof TooltipPositionsEnum;\n}\n\nexport default withStaticPropsWithoutForwardRef<MenuItemButtonProps, MenuItemButtonStaticProps>(MenuItemButton, {\n kinds: Button.kinds,\n tooltipPositions: TooltipPositionsEnum\n});\n"],"names":["MenuItemButton","_ref","className","_ref$kind","kind","_ref$leftIcon","leftIcon","_ref$rightIcon","rightIcon","_ref$disabled","disabled","disableReason","index","_ref$activeItemIndex","activeItemIndex","onClick","_ref$tooltipPosition","tooltipPosition","_ref$tooltipShowDelay","tooltipShowDelay","children","resetOpenSubMenuIndex","setSubMenuIsOpenByIndex","setActiveItemIndex","menuRef","closeMenu","useDocumentEventListeners","id","dataTestId","ref","useRef","referenceElementRef","mergedRef","useMergeRef","shouldShowTooltip","tooltipContent","isActive","isMouseEnter","useMenuItemMouseEvents","hasChildren","onClickCallback","useMenuItemKeyboardEvents","shouldShowSubMenu","React","Tooltip","content","position","showDelay","createElement","Text","type","element","getTestId","ComponentDefaultTestId","MENU_ITEM_BUTTON","cx","styles","itemButton","role","Button","buttonComponent","active","size","blurOnMouseUp","Object","assign","isSelectable","isMenuChild","withStaticPropsWithoutForwardRef","kinds","tooltipPositions","TooltipPositionsEnum"],"mappings":"orBAsFA,IAAMA,EAAiB,SAAHC,GAqBM,IApBxBC,EAASD,EAATC,UAASC,EAAAF,EACTG,KAAAA,OAAO,IAAHD,EAAG,UAASA,EAAAE,EAAAJ,EAChBK,SAAAA,OAAW,IAAHD,EAAG,KAAIA,EAAAE,EAAAN,EACfO,UAAAA,OAAY,IAAHD,EAAG,KAAIA,EAAAE,EAAAR,EAChBS,SAAAA,OAAW,IAAHD,GAAQA,EAChBE,EAAaV,EAAbU,cACAC,EAAKX,EAALW,MAAKC,EAAAZ,EACLa,gBAAAA,OAAe,IAAAD,GAAI,EAACA,EACpBE,EAAOd,EAAPc,QAAOC,EAAAf,EACPgB,gBAAAA,OAAkB,IAAHD,EAAG,QAAOA,EAAAE,EAAAjB,EACzBkB,iBAAAA,OAAmB,IAAHD,EAAG,IAAGA,EACtBE,EAAQnB,EAARmB,SACAC,EAAqBpB,EAArBoB,sBACAC,EAAuBrB,EAAvBqB,wBACAC,EAAkBtB,EAAlBsB,mBACAC,EAAOvB,EAAPuB,QACAC,EAASxB,EAATwB,UACAC,EAAyBzB,EAAzByB,0BACAC,EAAE1B,EAAF0B,GACeC,EAAU3B,EAAzB,eAEM4B,EAAMC,EAAO,MACbC,EAAsBD,EAAO,MAC7BE,EAAYC,EAAYJ,EAAKE,GAE7BG,EAAoBxB,GAAYC,EAChCwB,EAAiBxB,EAEjByB,EAAWtB,IAAoBF,EAE/ByB,EAAeC,EAAuB,CAC1CT,IAAAA,EACAR,sBAAAA,EACAC,wBAAAA,EACAc,SAAAA,EACAb,mBAAAA,EACAX,MAAAA,EACA2B,aAAa,IAGPC,EAAoBC,EAA0B,CACpD1B,QAAAA,EACAL,SAAAA,EACA0B,SAAAA,EACAxB,MAAAA,EACAW,mBAAAA,EACAgB,aAAa,EACbG,mBAAmB,EACnBpB,wBAAAA,EACAE,QAAAA,EACAa,aAAAA,EACAZ,UAAAA,EACAC,0BAAAA,IAZMc,gBAeR,OACEG,gBAACC,EAAO,CACNC,QAASX,EAAoBC,EAAiB,KAC9CW,SAAU7B,EACV8B,UAAW5B,GAEXwB,EAACK,cAAAC,GACCC,KAAK,QACLC,QAAQ,KAAI,cACCvB,GAAcwB,EAAUC,EAAuBC,iBAAkB3B,GAC9EA,GAAIA,EACJzB,UAAWqD,EAAGC,EAAOC,WAAYvD,GACjC2B,IAAKG,EACL0B,KAAK,0BACStB,GAEdO,EAAAK,cAACW,EACC,CAAAzD,UAAWsD,EAAOI,gBAClBC,OAAQzB,EACR1B,SAAUA,EACVJ,SAAUA,EACVE,UAAWA,EACXO,QAASyB,EACTpC,KAAMA,EACN0D,KAAK,QACLC,eAAe,GAEfpB,EAAAK,cAAA,MAAA,CAAK9C,UAAWsD,EAAOX,SAAUzB,KAK3C,EAEA4C,OAAOC,OAAOjE,EAAgB,CAC5BkE,cAAc,EACdC,aAAa,IAQf,IAAeC,EAAAA,EAAiFpE,EAAgB,CAC9GqE,MAAOV,EAAOU,MACdC,iBAAkBC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{slicedToArray as e,defineProperty as o}from"../../../_virtual/_rollupPluginBabelHelpers.js";import i,{forwardRef as t,useRef as r,useState as n,useCallback as s,useMemo as a}from"react";import l from"classnames";import{camelCase as d}from"es-toolkit";import{isForwardRef as
|
|
1
|
+
import{slicedToArray as e,defineProperty as o}from"../../../_virtual/_rollupPluginBabelHelpers.js";import i,{forwardRef as t,useRef as r,useState as n,useCallback as s,useMemo as a}from"react";import l from"classnames";import{camelCase as d}from"es-toolkit";import{isForwardRef as c}from"react-is";import g from"../Dialog/Dialog.js";import m from"../DialogContentContainer/DialogContentContainer.js";import p from"../Tooltip/Tooltip.js";import u from"../../hooks/ssr/useIsomorphicLayoutEffect.js";import f from"../../hooks/useMergeRef.js";import{withStaticProps as h}from"../../types/withStaticProps.js";import"../../utils/colors-vars-map.js";import{MenuButtonSize as T,MenuButtonComponentPosition as v}from"./MenuButtonConstants.js";import{DialogSize as C,DialogPosition as E,HideShowEvent as S}from"../Dialog/DialogConstants.js";import{NOOP as w}from"../../utils/function-utils.js";import{getStyle as j}from"../../helpers/typesciptCssModulesHelper.js";import{getTestId as O,ComponentDefaultTestId as y}from"../../tests/testIds.js";import b from"./MenuButton.module.scss.js";import{ComponentVibeId as M}from"../../tests/constants.js";import P from"../../../packages/icons/dist/react/Menu.js";var N={main:8,secondary:0},D=[g.hideShowTriggers.ESCAPE_KEY,g.hideShowTriggers.TAB_KEY],_=h(t((function(t,h){var T=t.id,v=t.className,C=t.openDialogComponentClassName,E=t.children,S=t.component,_=void 0===S?P:S,A=t.componentPosition,I=void 0===A?"start":A,x=t.size,z=void 0===x?"small":x,B=t.open,k=void 0!==B&&B,H=t.onClick,K=void 0===H?w:H,R=t.zIndex,L=void 0===R?null:R,U=t.ariaLabel,Y=void 0===U?"Menu":U,W=t.closeMenuOnItemClick,F=t.dialogOffset,V=void 0===F?N:F,q=t.dialogPosition,G=void 0===q?g.positions.BOTTOM_START:q,J=t.dialogClassName,Q=t.dialogPaddingSize,X=void 0===Q?m.sizes.SMALL:Q,Z=t.dialogShowTriggerIgnoreClass,$=t.dialogHideTriggerIgnoreClass,ee=t.onMenuHide,oe=void 0===ee?w:ee,ie=t.onMenuShow,te=void 0===ie?w:ie,re=t.disabled,ne=void 0!==re&&re,se=t.text,ae=t.tooltipContent,le=t.tooltipProps,de=t.tooltipTriggers,ce=void 0===de?["mouseleave"]:de,ge=t.tooltipPosition,me=void 0===ge?"right":ge,pe=t.startingEdge,ue=void 0===pe?"bottom":pe,fe=t.removeTabCloseTrigger,he=void 0!==fe&&fe,Te=t.tooltipReferenceClassName,ve=t.hideWhenReferenceHidden,Ce=void 0===ve||ve,Ee=t.dialogContainerSelector,Se=t.active,we=t.triggerElement,je=void 0===we?"button":we,Oe=t.showTooltipOnlyOnTriggerElement,ye=t["data-testid"],be=t.closeDialogOnContentClick,Me=void 0!==be&&be,Pe=t.ariaControls,Ne=r(null),De=f(h,Ne),_e=n(k),Ae=e(_e,2),Ie=Ae[0],xe=Ae[1],ze=null!=Se?Se:Ie,Be=s((function(e){oe(),xe(!1);var o=Ne.current;o&&e&&window.requestAnimationFrame((function(){o.focus()}))}),[oe]),ke=s((function(e){var o=D.includes(e.key);(o||W)&&e.propagate&&Be(o)}),[W,Be]),He=s((function(e,o){Be(Ie&&D.includes(o))}),[Be,Ie]),Ke=s((function(){xe(!0),te()}),[xe,te]),Re=a((function(){var e=new Set([g.hideShowTriggers.CLICK_OUTSIDE,g.hideShowTriggers.TAB_KEY,g.hideShowTriggers.ESCAPE_KEY]);return Me&&(e.add(g.hideShowTriggers.CONTENT_CLICK),e.add(g.hideShowTriggers.ENTER)),he&&e.delete(g.hideShowTriggers.TAB_KEY),[i.Children.toArray(E).map((function(o){if(!i.isValidElement(o))return null;var t={};return o.type&&o.type.supportFocusOnMount&&(t.focusOnMount=!0,e.delete(g.hideShowTriggers.ESCAPE_KEY)),o.type&&o.type.isMenu&&(t.onClose=ke),i.cloneElement(o,t)})),Array.from(e)]}),[E,ke,Me,he]),Le=e(Re,2),Ue=Le[0],Ye=Le[1],We=a((function(){return 0===Ue.length?null:i.createElement(m,{size:X,type:m.types.POPOVER,role:null},Ue)}),[Ue,X]),Fe=a((function(){return Object.assign(Object.assign({},N),V)}),[V]),Ve=_,qe=a((function(){switch(z){case"xxs":case"xs":return 16;case"small":case"medium":case"large":return 20;default:return 24}}),[z]),Ge=Ve?i.createElement(Ve,{size:""+qe,role:"img","aria-hidden":"true"}):null;u((function(){xe(k)}),[k,xe]);var Je="button"===je?{ref:De}:{active:ze,disabled:ne,ref:c(je)?De:void 0},Qe=i.createElement(je,Object.assign({id:T,"data-testid":ye||O(y.MENU_BUTTON,T),"data-vibe":M.MENU_BUTTON,type:"button",className:l(b.wrapper,v,j(b,d("size-".concat(z))),o(o(o(o({},b.active,ze),j(b,C),Ie&&C),b.disabled,ne),b.text,se)),"aria-haspopup":"true","aria-expanded":Ie,"aria-controls":Pe,"aria-label":!se&&Y,onMouseUp:function(e){ne?e.currentTarget.blur():K(e)},"aria-disabled":ne},Je),"start"===I&&Ge,se&&i.createElement("span",{className:b.innerText},se),"end"===I&&Ge),Xe=function(e){return i.createElement(g,{wrapperClassName:J,position:G,containerSelector:Ee,startingEdge:ue,animationType:"expand",content:We,moveBy:Fe,showTrigger:ne?[]:["click","enter"],hideTrigger:Ye,showTriggerIgnoreClass:Z,hideTriggerIgnoreClass:$,useDerivedStateFromProps:!0,onDialogDidShow:Ke,onDialogDidHide:He,zIndex:L,isOpen:Ie,hideWhenReferenceHidden:Ce},e)},Ze=function(e){return i.createElement(p,Object.assign({content:ae,position:me,showTrigger:"mouseenter",hideTrigger:ce,referenceWrapperClassName:Te,hideWhenReferenceHidden:Ce},le),e)};return Oe?Xe(Ze(Qe)):Ze(Xe(Qe))})),{sizes:T,paddingSizes:C,dialogPositions:E,hideTriggers:S,componentPositions:v});export{_ as default};
|
|
2
2
|
//# sourceMappingURL=MenuButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MenuButton.js","sources":["../../../../../src/components/MenuButton/MenuButton.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport cx from \"classnames\";\nimport { camelCase } from \"es-toolkit\";\nimport { isForwardRef } from \"react-is\";\nimport Dialog, { type DialogEvent } from \"../Dialog/Dialog\";\nimport DialogContentContainer from \"../DialogContentContainer/DialogContentContainer\";\nimport Tooltip, { type TooltipProps } from \"../Tooltip/Tooltip\";\nimport useIsomorphicLayoutEffect from \"../../hooks/ssr/useIsomorphicLayoutEffect\";\nimport useMergeRef from \"../../hooks/useMergeRef\";\nimport { BUTTON_ICON_SIZE, SMALL_BUTTON_ICON_SIZE } from \"../Button/ButtonConstants\";\nimport { type ElementContent, type VibeComponentProps, withStaticProps } from \"../../types\";\nimport {\n MenuButtonComponentPosition as MenuButtonComponentPositionEnum,\n MenuButtonSize as MenuButtonSizeEnum\n} from \"./MenuButtonConstants\";\nimport {\n DialogPosition as DialogPositionEnum,\n HideShowEvent as DialogTriggerEventEnum,\n DialogSize as DialogSizeEnum\n} from \"../Dialog/DialogConstants\";\nimport { type MenuButtonComponentPosition, type MenuButtonSize } from \"./MenuButton.types\";\nimport {\n type DialogOffset,\n type DialogPosition,\n type DialogSize,\n type DialogTriggerEvent\n} from \"../Dialog/Dialog.types\";\nimport { NOOP } from \"../../utils/function-utils\";\nimport { Menu } from \"@vibe/icons\";\nimport { getStyle } from \"../../helpers/typesciptCssModulesHelper\";\nimport { ComponentDefaultTestId, getTestId } from \"../../tests/test-ids-utils\";\nimport { type MenuChild } from \"../Menu/Menu/MenuConstants\";\nimport styles from \"./MenuButton.module.scss\";\nimport { type TooltipPositions } from \"../Tooltip\";\nimport { ComponentVibeId } from \"../../tests/constants\";\n\nconst MOVE_BY = { main: 8, secondary: 0 };\nconst CLOSE_KEYS: DialogTriggerEventEnum[] = [Dialog.hideShowTriggers.ESCAPE_KEY, Dialog.hideShowTriggers.TAB_KEY];\n\nexport interface MenuButtonProps extends VibeComponentProps {\n /**\n * If true, the button is in an active state.\n */\n active?: boolean;\n /**\n * Class name applied to the button when the dialog is open.\n */\n openDialogComponentClassName?: string;\n /**\n * The component used as the button icon.\n */\n component?: (() => JSX.Element) | React.ElementType;\n /**\n * The size of the button.\n */\n size?: MenuButtonSize;\n /**\n * If true, the menu is open.\n */\n open?: boolean;\n /**\n * Callback fired when the button is clicked.\n */\n onClick?: (event: React.MouseEvent) => void;\n /**\n * The z-index of the menu.\n */\n zIndex?: number;\n /**\n * The label of the button for accessibility.\n */\n ariaLabel?: string;\n /**\n * Class name applied to the menu dialog wrapper.\n */\n dialogClassName?: string;\n /**\n * The offset of the menu relative to the button.\n */\n dialogOffset?: DialogOffset;\n /**\n * The padding size inside the menu dialog.\n */\n dialogPaddingSize?: DialogSize;\n /**\n * The position of the menu dialog relative to the button.\n */\n dialogPosition?: DialogPosition;\n /**\n * Classes that prevent showing the dialog when present.\n */\n dialogShowTriggerIgnoreClass?: string | Array<string>;\n /**\n * Classes that prevent hiding the dialog when present.\n */\n dialogHideTriggerIgnoreClass?: string | Array<string>;\n /**\n * The container selector in which to append the dialog.\n */\n dialogContainerSelector?: string;\n /**\n * The starting edge alignment of the menu.\n */\n startingEdge?: string;\n /**\n * Callback fired when the menu is shown.\n */\n onMenuShow?: () => void;\n /**\n * Callback fired when the menu is hidden.\n */\n onMenuHide?: () => void;\n /**\n * The text displayed inside the button.\n */\n text?: string;\n /**\n * If true, the button is disabled.\n */\n disabled?: boolean;\n /**\n * The tooltip content displayed when hovering over the button.\n */\n tooltipContent?: string;\n /**\n * If true, removes the tab key from the hide trigger.\n */\n removeTabCloseTrigger?: boolean;\n /**\n * The triggers that cause the tooltip to show or hide.\n */\n tooltipTriggers?: DialogTriggerEvent | DialogTriggerEvent[];\n /**\n * The position of the tooltip.\n */\n tooltipPosition?: TooltipPositions;\n /**\n * Class name applied to the tooltip reference wrapper.\n */\n tooltipReferenceClassName?: string;\n /**\n * Additional props for customizing the tooltip.\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * If true, hides the menu and tooltip when the button is not visible.\n */\n hideWhenReferenceHidden?: boolean;\n /**\n * The content inside the menu button.\n */\n children?: ElementContent;\n /**\n * The position of the component relative to the text.\n */\n componentPosition?: MenuButtonComponentPosition;\n /**\n * The element used as the trigger for the menu.\n */\n triggerElement?: React.ElementType;\n /**\n * If true, closes the menu when a menu item is clicked.\n */\n closeMenuOnItemClick?: boolean;\n /**\n * If true, the tooltip appears only when hovering over the trigger element, not the menu dialog.\n */\n showTooltipOnlyOnTriggerElement?: boolean;\n /**\n * If true, closes the menu when clicking inside the dialog.\n */\n closeDialogOnContentClick?: boolean;\n /**\n * The ARIA control of the menu button for accessibility.\n */\n ariaControls?: string;\n}\n\nconst MenuButton = forwardRef(\n (\n {\n id,\n className,\n openDialogComponentClassName,\n children,\n component = Menu,\n componentPosition = \"start\",\n size = \"small\",\n open = false,\n onClick = NOOP,\n zIndex = null,\n ariaLabel = \"Menu\",\n closeMenuOnItemClick,\n dialogOffset = MOVE_BY,\n dialogPosition = Dialog.positions.BOTTOM_START,\n dialogClassName,\n dialogPaddingSize = DialogContentContainer.sizes.SMALL,\n dialogShowTriggerIgnoreClass,\n dialogHideTriggerIgnoreClass,\n onMenuHide = NOOP,\n onMenuShow = NOOP,\n disabled = false,\n text,\n tooltipContent,\n tooltipProps,\n tooltipTriggers = [\"mouseleave\"],\n tooltipPosition = \"right\",\n startingEdge = \"bottom\",\n removeTabCloseTrigger = false,\n tooltipReferenceClassName,\n hideWhenReferenceHidden = true,\n dialogContainerSelector,\n active,\n triggerElement: TriggerElement = \"button\",\n showTooltipOnlyOnTriggerElement,\n \"data-testid\": dataTestId,\n closeDialogOnContentClick = false,\n ariaControls\n }: MenuButtonProps,\n ref: React.ForwardedRef<HTMLElement>\n ) => {\n const componentRef = useRef(null);\n const mergedRef = useMergeRef(ref, componentRef);\n\n const [isOpen, setIsOpen] = useState(open);\n const isActive = active ?? isOpen;\n\n const handleMenuClose = useCallback(\n (focusOnMenuButtonAfterClose: boolean) => {\n onMenuHide();\n setIsOpen(false);\n const button = componentRef.current;\n if (!button || !focusOnMenuButtonAfterClose) {\n return;\n }\n window.requestAnimationFrame(() => {\n button.focus();\n });\n },\n [onMenuHide]\n );\n\n const onMenuDidClose = useCallback(\n (event: React.KeyboardEvent) => {\n // TODO: check the functionality of the isEscapeKey since the event is not an actual KeyboardEVent but an object with propagate property only\n const isCloseKey = CLOSE_KEYS.includes(event.key as DialogTriggerEventEnum);\n if (isCloseKey || closeMenuOnItemClick) {\n // @ts-ignore\n if (event.propagate) {\n handleMenuClose(isCloseKey);\n }\n }\n },\n [closeMenuOnItemClick, handleMenuClose]\n );\n\n const onDialogDidHide = useCallback(\n (event: DialogEvent, hideEvent: string) => {\n handleMenuClose(isOpen && CLOSE_KEYS.includes(hideEvent as DialogTriggerEventEnum));\n },\n [handleMenuClose, isOpen]\n );\n\n const onDialogDidShow = useCallback(() => {\n setIsOpen(true);\n onMenuShow();\n }, [setIsOpen, onMenuShow]);\n\n const [clonedChildren, hideTrigger] = useMemo(() => {\n const triggers = new Set([\n Dialog.hideShowTriggers.CLICK_OUTSIDE,\n Dialog.hideShowTriggers.TAB_KEY,\n Dialog.hideShowTriggers.ESCAPE_KEY\n ]);\n\n if (closeDialogOnContentClick) {\n triggers.add(Dialog.hideShowTriggers.CONTENT_CLICK);\n triggers.add(Dialog.hideShowTriggers.ENTER);\n }\n\n if (removeTabCloseTrigger) {\n triggers.delete(Dialog.hideShowTriggers.TAB_KEY);\n }\n const childrenArr = React.Children.toArray(children) as MenuChild[];\n const cloned = childrenArr.map(child => {\n if (!React.isValidElement(child)) return null;\n\n const newProps: { focusOnMount?: boolean; onClose?: (event: React.KeyboardEvent) => void } = {};\n if (child.type && child.type.supportFocusOnMount) {\n newProps.focusOnMount = true;\n triggers.delete(Dialog.hideShowTriggers.ESCAPE_KEY);\n }\n\n if (child.type && child.type.isMenu) {\n newProps.onClose = onMenuDidClose;\n }\n\n return React.cloneElement(child, newProps);\n });\n return [cloned, Array.from(triggers)];\n }, [children, onMenuDidClose, closeDialogOnContentClick, removeTabCloseTrigger]);\n\n const content = useMemo(() => {\n if (clonedChildren.length === 0) return null;\n return (\n <DialogContentContainer size={dialogPaddingSize} type={DialogContentContainer.types.POPOVER} role={null}>\n {clonedChildren}\n </DialogContentContainer>\n );\n }, [clonedChildren, dialogPaddingSize]);\n\n const computedDialogOffset = useMemo(\n () => ({\n ...MOVE_BY,\n ...dialogOffset\n }),\n [dialogOffset]\n );\n\n const onMouseUp = (event: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n event.currentTarget.blur();\n return;\n }\n onClick(event);\n };\n\n const Icon = component;\n const iconSize = useMemo(() => {\n switch (size) {\n case \"xxs\":\n case \"xs\":\n return SMALL_BUTTON_ICON_SIZE;\n case \"small\":\n case \"medium\":\n case \"large\":\n return BUTTON_ICON_SIZE;\n default:\n return 24;\n }\n }, [size]);\n const icon = Icon ? <Icon size={iconSize.toString()} role=\"img\" aria-hidden=\"true\" /> : null;\n\n useIsomorphicLayoutEffect(() => {\n setIsOpen(open);\n }, [open, setIsOpen]);\n\n // Trigger element props, which are only relevant for \"button\" element, but might be needed for other elements e.g. Button\n const triggerElementProps =\n TriggerElement === \"button\"\n ? {\n ref: mergedRef\n }\n : {\n active: isActive,\n disabled: disabled,\n ref: isForwardRef(TriggerElement) ? mergedRef : undefined\n };\n\n const triggerElementNode = (\n <TriggerElement\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MENU_BUTTON, id)}\n data-vibe={ComponentVibeId.MENU_BUTTON}\n type=\"button\"\n className={cx(styles.wrapper, className, getStyle(styles, camelCase(`size-${size}`)), {\n [styles.active]: isActive,\n [getStyle(styles, openDialogComponentClassName)]: isOpen && openDialogComponentClassName,\n [styles.disabled]: disabled,\n [styles.text]: text\n })}\n aria-haspopup=\"true\"\n aria-expanded={isOpen}\n aria-controls={ariaControls}\n aria-label={!text && ariaLabel}\n onMouseUp={onMouseUp}\n aria-disabled={disabled}\n {...triggerElementProps}\n >\n {componentPosition === \"start\" && icon}\n {text && <span className={styles.innerText}>{text}</span>}\n {componentPosition === \"end\" && icon}\n </TriggerElement>\n );\n\n const dialogNode = (dialogChildren: React.ReactElement) => (\n <Dialog\n wrapperClassName={dialogClassName}\n position={dialogPosition}\n containerSelector={dialogContainerSelector}\n startingEdge={startingEdge}\n animationType=\"expand\"\n content={content}\n moveBy={computedDialogOffset}\n showTrigger={disabled ? [] : [\"click\", \"enter\"]}\n hideTrigger={hideTrigger}\n showTriggerIgnoreClass={dialogShowTriggerIgnoreClass}\n hideTriggerIgnoreClass={dialogHideTriggerIgnoreClass}\n useDerivedStateFromProps={true}\n onDialogDidShow={onDialogDidShow}\n onDialogDidHide={onDialogDidHide}\n zIndex={zIndex}\n isOpen={isOpen}\n hideWhenReferenceHidden={hideWhenReferenceHidden}\n >\n {dialogChildren}\n </Dialog>\n );\n\n const tooltipNode = (tooltipChildren: React.ReactElement) => (\n <Tooltip\n content={tooltipContent}\n position={tooltipPosition}\n showTrigger=\"mouseenter\"\n hideTrigger={tooltipTriggers}\n referenceWrapperClassName={tooltipReferenceClassName}\n hideWhenReferenceHidden={hideWhenReferenceHidden}\n {...tooltipProps}\n >\n {tooltipChildren}\n </Tooltip>\n );\n\n if (showTooltipOnlyOnTriggerElement) {\n return dialogNode(tooltipNode(triggerElementNode));\n }\n return tooltipNode(dialogNode(triggerElementNode));\n }\n);\n\ninterface MenuButtonStaticProps {\n sizes: typeof MenuButtonSizeEnum;\n paddingSizes: typeof DialogContentContainer.sizes;\n dialogPositions: typeof DialogPositionEnum;\n hideTriggers: typeof Dialog.hideShowTriggers;\n componentPositions: typeof MenuButtonComponentPositionEnum;\n}\n\nexport default withStaticProps<MenuButtonProps, MenuButtonStaticProps>(MenuButton, {\n sizes: MenuButtonSizeEnum,\n paddingSizes: DialogSizeEnum,\n dialogPositions: DialogPositionEnum,\n hideTriggers: DialogTriggerEventEnum,\n componentPositions: MenuButtonComponentPositionEnum\n});\n"],"names":["MOVE_BY","main","secondary","CLOSE_KEYS","Dialog","hideShowTriggers","ESCAPE_KEY","TAB_KEY","withStaticProps","forwardRef","_ref","ref","id","className","openDialogComponentClassName","children","_ref$component","component","Menu","_ref$componentPositio","componentPosition","_ref$size","size","_ref$open","open","_ref$onClick","onClick","NOOP","_ref$zIndex","zIndex","_ref$ariaLabel","ariaLabel","closeMenuOnItemClick","_ref$dialogOffset","dialogOffset","_ref$dialogPosition","dialogPosition","positions","BOTTOM_START","dialogClassName","_ref$dialogPaddingSiz","dialogPaddingSize","DialogContentContainer","sizes","SMALL","dialogShowTriggerIgnoreClass","dialogHideTriggerIgnoreClass","_ref$onMenuHide","onMenuHide","_ref$onMenuShow","onMenuShow","_ref$disabled","disabled","text","tooltipContent","tooltipProps","_ref$tooltipTriggers","tooltipTriggers","_ref$tooltipPosition","tooltipPosition","_ref$startingEdge","startingEdge","_ref$removeTabCloseTr","removeTabCloseTrigger","tooltipReferenceClassName","_ref$hideWhenReferenc","hideWhenReferenceHidden","dialogContainerSelector","active","_ref$triggerElement","triggerElement","TriggerElement","showTooltipOnlyOnTriggerElement","dataTestId","_ref$closeDialogOnCon","closeDialogOnContentClick","ariaControls","componentRef","useRef","mergedRef","useMergeRef","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","isActive","handleMenuClose","useCallback","focusOnMenuButtonAfterClose","button","current","window","requestAnimationFrame","focus","onMenuDidClose","event","isCloseKey","includes","key","propagate","onDialogDidHide","hideEvent","onDialogDidShow","_useMemo","useMemo","triggers","Set","CLICK_OUTSIDE","add","CONTENT_CLICK","ENTER","delete","React","Children","toArray","map","child","isValidElement","newProps","type","supportFocusOnMount","focusOnMount","isMenu","onClose","cloneElement","Array","from","_useMemo2","clonedChildren","hideTrigger","content","length","types","POPOVER","role","computedDialogOffset","Object","assign","Icon","iconSize","SMALL_BUTTON_ICON_SIZE","BUTTON_ICON_SIZE","icon","createElement","useIsomorphicLayoutEffect","triggerElementProps","isForwardRef","undefined","triggerElementNode","getTestId","ComponentDefaultTestId","MENU_BUTTON","ComponentVibeId","cx","styles","wrapper","getStyle","camelCase","concat","_defineProperty","onMouseUp","currentTarget","blur","innerText","dialogNode","dialogChildren","wrapperClassName","position","containerSelector","animationType","moveBy","showTrigger","showTriggerIgnoreClass","hideTriggerIgnoreClass","useDerivedStateFromProps","tooltipNode","tooltipChildren","Tooltip","referenceWrapperClassName","MenuButtonSizeEnum","paddingSizes","DialogSizeEnum","dialogPositions","DialogPositionEnum","hideTriggers","DialogTriggerEventEnum","componentPositions","MenuButtonComponentPositionEnum"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MenuButton.js","sources":["../../../../../src/components/MenuButton/MenuButton.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport cx from \"classnames\";\nimport { camelCase } from \"es-toolkit\";\nimport { isForwardRef } from \"react-is\";\nimport Dialog, { type DialogEvent } from \"../Dialog/Dialog\";\nimport DialogContentContainer from \"../DialogContentContainer/DialogContentContainer\";\nimport Tooltip, { type TooltipProps } from \"../Tooltip/Tooltip\";\nimport useIsomorphicLayoutEffect from \"../../hooks/ssr/useIsomorphicLayoutEffect\";\nimport useMergeRef from \"../../hooks/useMergeRef\";\nimport { type ElementContent, type VibeComponentProps, withStaticProps } from \"../../types\";\nimport {\n MenuButtonComponentPosition as MenuButtonComponentPositionEnum,\n MenuButtonSize as MenuButtonSizeEnum\n} from \"./MenuButtonConstants\";\nimport {\n DialogPosition as DialogPositionEnum,\n HideShowEvent as DialogTriggerEventEnum,\n DialogSize as DialogSizeEnum\n} from \"../Dialog/DialogConstants\";\nimport { type MenuButtonComponentPosition, type MenuButtonSize } from \"./MenuButton.types\";\nimport {\n type DialogOffset,\n type DialogPosition,\n type DialogSize,\n type DialogTriggerEvent\n} from \"../Dialog/Dialog.types\";\nimport { NOOP } from \"../../utils/function-utils\";\nimport { Menu } from \"@vibe/icons\";\nimport { getStyle } from \"../../helpers/typesciptCssModulesHelper\";\nimport { ComponentDefaultTestId, getTestId } from \"../../tests/test-ids-utils\";\nimport { type MenuChild } from \"../Menu/Menu/MenuConstants\";\nimport styles from \"./MenuButton.module.scss\";\nimport { type TooltipPositions } from \"../Tooltip\";\nimport { ComponentVibeId } from \"../../tests/constants\";\n\nconst MOVE_BY = { main: 8, secondary: 0 };\nconst CLOSE_KEYS: DialogTriggerEventEnum[] = [Dialog.hideShowTriggers.ESCAPE_KEY, Dialog.hideShowTriggers.TAB_KEY];\n\nexport interface MenuButtonProps extends VibeComponentProps {\n /**\n * If true, the button is in an active state.\n */\n active?: boolean;\n /**\n * Class name applied to the button when the dialog is open.\n */\n openDialogComponentClassName?: string;\n /**\n * The component used as the button icon.\n */\n component?: (() => JSX.Element) | React.ElementType;\n /**\n * The size of the button.\n */\n size?: MenuButtonSize;\n /**\n * If true, the menu is open.\n */\n open?: boolean;\n /**\n * Callback fired when the button is clicked.\n */\n onClick?: (event: React.MouseEvent) => void;\n /**\n * The z-index of the menu.\n */\n zIndex?: number;\n /**\n * The label of the button for accessibility.\n */\n ariaLabel?: string;\n /**\n * Class name applied to the menu dialog wrapper.\n */\n dialogClassName?: string;\n /**\n * The offset of the menu relative to the button.\n */\n dialogOffset?: DialogOffset;\n /**\n * The padding size inside the menu dialog.\n */\n dialogPaddingSize?: DialogSize;\n /**\n * The position of the menu dialog relative to the button.\n */\n dialogPosition?: DialogPosition;\n /**\n * Classes that prevent showing the dialog when present.\n */\n dialogShowTriggerIgnoreClass?: string | Array<string>;\n /**\n * Classes that prevent hiding the dialog when present.\n */\n dialogHideTriggerIgnoreClass?: string | Array<string>;\n /**\n * The container selector in which to append the dialog.\n */\n dialogContainerSelector?: string;\n /**\n * The starting edge alignment of the menu.\n */\n startingEdge?: string;\n /**\n * Callback fired when the menu is shown.\n */\n onMenuShow?: () => void;\n /**\n * Callback fired when the menu is hidden.\n */\n onMenuHide?: () => void;\n /**\n * The text displayed inside the button.\n */\n text?: string;\n /**\n * If true, the button is disabled.\n */\n disabled?: boolean;\n /**\n * The tooltip content displayed when hovering over the button.\n */\n tooltipContent?: string;\n /**\n * If true, removes the tab key from the hide trigger.\n */\n removeTabCloseTrigger?: boolean;\n /**\n * The triggers that cause the tooltip to show or hide.\n */\n tooltipTriggers?: DialogTriggerEvent | DialogTriggerEvent[];\n /**\n * The position of the tooltip.\n */\n tooltipPosition?: TooltipPositions;\n /**\n * Class name applied to the tooltip reference wrapper.\n */\n tooltipReferenceClassName?: string;\n /**\n * Additional props for customizing the tooltip.\n */\n tooltipProps?: Partial<TooltipProps>;\n /**\n * If true, hides the menu and tooltip when the button is not visible.\n */\n hideWhenReferenceHidden?: boolean;\n /**\n * The content inside the menu button.\n */\n children?: ElementContent;\n /**\n * The position of the component relative to the text.\n */\n componentPosition?: MenuButtonComponentPosition;\n /**\n * The element used as the trigger for the menu.\n */\n triggerElement?: React.ElementType;\n /**\n * If true, closes the menu when a menu item is clicked.\n */\n closeMenuOnItemClick?: boolean;\n /**\n * If true, the tooltip appears only when hovering over the trigger element, not the menu dialog.\n */\n showTooltipOnlyOnTriggerElement?: boolean;\n /**\n * If true, closes the menu when clicking inside the dialog.\n */\n closeDialogOnContentClick?: boolean;\n /**\n * The ARIA control of the menu button for accessibility.\n */\n ariaControls?: string;\n}\n\nconst MenuButton = forwardRef(\n (\n {\n id,\n className,\n openDialogComponentClassName,\n children,\n component = Menu,\n componentPosition = \"start\",\n size = \"small\",\n open = false,\n onClick = NOOP,\n zIndex = null,\n ariaLabel = \"Menu\",\n closeMenuOnItemClick,\n dialogOffset = MOVE_BY,\n dialogPosition = Dialog.positions.BOTTOM_START,\n dialogClassName,\n dialogPaddingSize = DialogContentContainer.sizes.SMALL,\n dialogShowTriggerIgnoreClass,\n dialogHideTriggerIgnoreClass,\n onMenuHide = NOOP,\n onMenuShow = NOOP,\n disabled = false,\n text,\n tooltipContent,\n tooltipProps,\n tooltipTriggers = [\"mouseleave\"],\n tooltipPosition = \"right\",\n startingEdge = \"bottom\",\n removeTabCloseTrigger = false,\n tooltipReferenceClassName,\n hideWhenReferenceHidden = true,\n dialogContainerSelector,\n active,\n triggerElement: TriggerElement = \"button\",\n showTooltipOnlyOnTriggerElement,\n \"data-testid\": dataTestId,\n closeDialogOnContentClick = false,\n ariaControls\n }: MenuButtonProps,\n ref: React.ForwardedRef<HTMLElement>\n ) => {\n const componentRef = useRef(null);\n const mergedRef = useMergeRef(ref, componentRef);\n\n const [isOpen, setIsOpen] = useState(open);\n const isActive = active ?? isOpen;\n\n const handleMenuClose = useCallback(\n (focusOnMenuButtonAfterClose: boolean) => {\n onMenuHide();\n setIsOpen(false);\n const button = componentRef.current;\n if (!button || !focusOnMenuButtonAfterClose) {\n return;\n }\n window.requestAnimationFrame(() => {\n button.focus();\n });\n },\n [onMenuHide]\n );\n\n const onMenuDidClose = useCallback(\n (event: React.KeyboardEvent) => {\n // TODO: check the functionality of the isEscapeKey since the event is not an actual KeyboardEVent but an object with propagate property only\n const isCloseKey = CLOSE_KEYS.includes(event.key as DialogTriggerEventEnum);\n if (isCloseKey || closeMenuOnItemClick) {\n // @ts-ignore\n if (event.propagate) {\n handleMenuClose(isCloseKey);\n }\n }\n },\n [closeMenuOnItemClick, handleMenuClose]\n );\n\n const onDialogDidHide = useCallback(\n (event: DialogEvent, hideEvent: string) => {\n handleMenuClose(isOpen && CLOSE_KEYS.includes(hideEvent as DialogTriggerEventEnum));\n },\n [handleMenuClose, isOpen]\n );\n\n const onDialogDidShow = useCallback(() => {\n setIsOpen(true);\n onMenuShow();\n }, [setIsOpen, onMenuShow]);\n\n const [clonedChildren, hideTrigger] = useMemo(() => {\n const triggers = new Set([\n Dialog.hideShowTriggers.CLICK_OUTSIDE,\n Dialog.hideShowTriggers.TAB_KEY,\n Dialog.hideShowTriggers.ESCAPE_KEY\n ]);\n\n if (closeDialogOnContentClick) {\n triggers.add(Dialog.hideShowTriggers.CONTENT_CLICK);\n triggers.add(Dialog.hideShowTriggers.ENTER);\n }\n\n if (removeTabCloseTrigger) {\n triggers.delete(Dialog.hideShowTriggers.TAB_KEY);\n }\n const childrenArr = React.Children.toArray(children) as MenuChild[];\n const cloned = childrenArr.map(child => {\n if (!React.isValidElement(child)) return null;\n\n const newProps: { focusOnMount?: boolean; onClose?: (event: React.KeyboardEvent) => void } = {};\n if (child.type && child.type.supportFocusOnMount) {\n newProps.focusOnMount = true;\n triggers.delete(Dialog.hideShowTriggers.ESCAPE_KEY);\n }\n\n if (child.type && child.type.isMenu) {\n newProps.onClose = onMenuDidClose;\n }\n\n return React.cloneElement(child, newProps);\n });\n return [cloned, Array.from(triggers)];\n }, [children, onMenuDidClose, closeDialogOnContentClick, removeTabCloseTrigger]);\n\n const content = useMemo(() => {\n if (clonedChildren.length === 0) return null;\n return (\n <DialogContentContainer size={dialogPaddingSize} type={DialogContentContainer.types.POPOVER} role={null}>\n {clonedChildren}\n </DialogContentContainer>\n );\n }, [clonedChildren, dialogPaddingSize]);\n\n const computedDialogOffset = useMemo(\n () => ({\n ...MOVE_BY,\n ...dialogOffset\n }),\n [dialogOffset]\n );\n\n const onMouseUp = (event: React.MouseEvent<HTMLElement>) => {\n if (disabled) {\n event.currentTarget.blur();\n return;\n }\n onClick(event);\n };\n\n const Icon = component;\n const iconSize = useMemo(() => {\n switch (size) {\n case \"xxs\":\n case \"xs\":\n return 16;\n case \"small\":\n case \"medium\":\n case \"large\":\n return 20;\n default:\n return 24;\n }\n }, [size]);\n const icon = Icon ? <Icon size={iconSize.toString()} role=\"img\" aria-hidden=\"true\" /> : null;\n\n useIsomorphicLayoutEffect(() => {\n setIsOpen(open);\n }, [open, setIsOpen]);\n\n // Trigger element props, which are only relevant for \"button\" element, but might be needed for other elements e.g. Button\n const triggerElementProps =\n TriggerElement === \"button\"\n ? {\n ref: mergedRef\n }\n : {\n active: isActive,\n disabled: disabled,\n ref: isForwardRef(TriggerElement) ? mergedRef : undefined\n };\n\n const triggerElementNode = (\n <TriggerElement\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MENU_BUTTON, id)}\n data-vibe={ComponentVibeId.MENU_BUTTON}\n type=\"button\"\n className={cx(styles.wrapper, className, getStyle(styles, camelCase(`size-${size}`)), {\n [styles.active]: isActive,\n [getStyle(styles, openDialogComponentClassName)]: isOpen && openDialogComponentClassName,\n [styles.disabled]: disabled,\n [styles.text]: text\n })}\n aria-haspopup=\"true\"\n aria-expanded={isOpen}\n aria-controls={ariaControls}\n aria-label={!text && ariaLabel}\n onMouseUp={onMouseUp}\n aria-disabled={disabled}\n {...triggerElementProps}\n >\n {componentPosition === \"start\" && icon}\n {text && <span className={styles.innerText}>{text}</span>}\n {componentPosition === \"end\" && icon}\n </TriggerElement>\n );\n\n const dialogNode = (dialogChildren: React.ReactElement) => (\n <Dialog\n wrapperClassName={dialogClassName}\n position={dialogPosition}\n containerSelector={dialogContainerSelector}\n startingEdge={startingEdge}\n animationType=\"expand\"\n content={content}\n moveBy={computedDialogOffset}\n showTrigger={disabled ? [] : [\"click\", \"enter\"]}\n hideTrigger={hideTrigger}\n showTriggerIgnoreClass={dialogShowTriggerIgnoreClass}\n hideTriggerIgnoreClass={dialogHideTriggerIgnoreClass}\n useDerivedStateFromProps={true}\n onDialogDidShow={onDialogDidShow}\n onDialogDidHide={onDialogDidHide}\n zIndex={zIndex}\n isOpen={isOpen}\n hideWhenReferenceHidden={hideWhenReferenceHidden}\n >\n {dialogChildren}\n </Dialog>\n );\n\n const tooltipNode = (tooltipChildren: React.ReactElement) => (\n <Tooltip\n content={tooltipContent}\n position={tooltipPosition}\n showTrigger=\"mouseenter\"\n hideTrigger={tooltipTriggers}\n referenceWrapperClassName={tooltipReferenceClassName}\n hideWhenReferenceHidden={hideWhenReferenceHidden}\n {...tooltipProps}\n >\n {tooltipChildren}\n </Tooltip>\n );\n\n if (showTooltipOnlyOnTriggerElement) {\n return dialogNode(tooltipNode(triggerElementNode));\n }\n return tooltipNode(dialogNode(triggerElementNode));\n }\n);\n\ninterface MenuButtonStaticProps {\n sizes: typeof MenuButtonSizeEnum;\n paddingSizes: typeof DialogContentContainer.sizes;\n dialogPositions: typeof DialogPositionEnum;\n hideTriggers: typeof Dialog.hideShowTriggers;\n componentPositions: typeof MenuButtonComponentPositionEnum;\n}\n\nexport default withStaticProps<MenuButtonProps, MenuButtonStaticProps>(MenuButton, {\n sizes: MenuButtonSizeEnum,\n paddingSizes: DialogSizeEnum,\n dialogPositions: DialogPositionEnum,\n hideTriggers: DialogTriggerEventEnum,\n componentPositions: MenuButtonComponentPositionEnum\n});\n"],"names":["MOVE_BY","main","secondary","CLOSE_KEYS","Dialog","hideShowTriggers","ESCAPE_KEY","TAB_KEY","withStaticProps","forwardRef","_ref","ref","id","className","openDialogComponentClassName","children","_ref$component","component","Menu","_ref$componentPositio","componentPosition","_ref$size","size","_ref$open","open","_ref$onClick","onClick","NOOP","_ref$zIndex","zIndex","_ref$ariaLabel","ariaLabel","closeMenuOnItemClick","_ref$dialogOffset","dialogOffset","_ref$dialogPosition","dialogPosition","positions","BOTTOM_START","dialogClassName","_ref$dialogPaddingSiz","dialogPaddingSize","DialogContentContainer","sizes","SMALL","dialogShowTriggerIgnoreClass","dialogHideTriggerIgnoreClass","_ref$onMenuHide","onMenuHide","_ref$onMenuShow","onMenuShow","_ref$disabled","disabled","text","tooltipContent","tooltipProps","_ref$tooltipTriggers","tooltipTriggers","_ref$tooltipPosition","tooltipPosition","_ref$startingEdge","startingEdge","_ref$removeTabCloseTr","removeTabCloseTrigger","tooltipReferenceClassName","_ref$hideWhenReferenc","hideWhenReferenceHidden","dialogContainerSelector","active","_ref$triggerElement","triggerElement","TriggerElement","showTooltipOnlyOnTriggerElement","dataTestId","_ref$closeDialogOnCon","closeDialogOnContentClick","ariaControls","componentRef","useRef","mergedRef","useMergeRef","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","isActive","handleMenuClose","useCallback","focusOnMenuButtonAfterClose","button","current","window","requestAnimationFrame","focus","onMenuDidClose","event","isCloseKey","includes","key","propagate","onDialogDidHide","hideEvent","onDialogDidShow","_useMemo","useMemo","triggers","Set","CLICK_OUTSIDE","add","CONTENT_CLICK","ENTER","delete","React","Children","toArray","map","child","isValidElement","newProps","type","supportFocusOnMount","focusOnMount","isMenu","onClose","cloneElement","Array","from","_useMemo2","clonedChildren","hideTrigger","content","length","types","POPOVER","role","computedDialogOffset","Object","assign","Icon","iconSize","icon","createElement","useIsomorphicLayoutEffect","triggerElementProps","isForwardRef","undefined","triggerElementNode","getTestId","ComponentDefaultTestId","MENU_BUTTON","ComponentVibeId","cx","styles","wrapper","getStyle","camelCase","concat","_defineProperty","onMouseUp","currentTarget","blur","innerText","dialogNode","dialogChildren","wrapperClassName","position","containerSelector","animationType","moveBy","showTrigger","showTriggerIgnoreClass","hideTriggerIgnoreClass","useDerivedStateFromProps","tooltipNode","tooltipChildren","Tooltip","referenceWrapperClassName","MenuButtonSizeEnum","paddingSizes","DialogSizeEnum","dialogPositions","DialogPositionEnum","hideTriggers","DialogTriggerEventEnum","componentPositions","MenuButtonComponentPositionEnum"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{slicedToArray as e,defineProperty as t}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import o,{forwardRef as r,useRef as a,useState as i,useCallback as s,useMemo as n}from"react";import l from"classnames";import{RemoveScroll as m}from"react-remove-scroll";import c from"react-focus-lock";import{AnimatePresence as d,motion as u}from"framer-motion";import{getTestId as f}from"../../../tests/testIds.js";import{ComponentDefaultTestId as p,ComponentVibeId as v}from"../../../tests/constants.js";import y from"./Modal.module.scss.js";import E from"../ModalTopActions/ModalTopActions.js";import{getStyle as b}from"../../../helpers/typesciptCssModulesHelper.js";import{camelCase as
|
|
1
|
+
import{slicedToArray as e,defineProperty as t}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import o,{forwardRef as r,useRef as a,useState as i,useCallback as s,useMemo as n}from"react";import l from"classnames";import{RemoveScroll as m}from"react-remove-scroll";import c from"react-focus-lock";import{AnimatePresence as d,motion as u}from"framer-motion";import{getTestId as f}from"../../../tests/testIds.js";import{ComponentDefaultTestId as p,ComponentVibeId as v}from"../../../tests/constants.js";import y from"./Modal.module.scss.js";import E from"../ModalTopActions/ModalTopActions.js";import{getStyle as b}from"../../../helpers/typesciptCssModulesHelper.js";import{camelCase as A}from"es-toolkit";import{ModalProvider as j}from"../context/ModalContext.js";import{keyCodes as h}from"../../../constants/keyCodes.js";import"../../../constants/sizes.js";import{modalAnimationFullViewVariants as x,modalAnimationAnchorPopVariants as M,modalAnimationCenterPopVariants as L,modalAnimationOverlayVariants as T}from"../utils/animationVariants.js";import{createPortal as P}from"react-dom";import k from"../hooks/usePortalTarget/usePortalTarget.js";import C from"../../LayerProvider/LayerProvider.js";import w from"../../../hooks/useMergeRef.js";var I=c.default||c,N=r((function(r,c){var N=r.id,g=r.show,z=r.size,D=void 0===z?"medium":z,F=r.renderHeaderAction,H=r.closeButtonTheme,_=r.closeButtonAriaLabel,B=r.onClose,O=void 0===B?function(){}:B,R=r.autoFocus,V=void 0===R||R,X=r.onFocusAttempt,K=r.anchorElementRef,S=r.alertModal,Y=r.container,q=void 0===Y?document.body:Y,G=r.children,J=r.style,Q=r.zIndex,U=r.className,W=r["data-testid"],Z=r["aria-labelledby"],$=r["aria-describedby"],ee=k(q),te=a(null),oe=w(c,te),re=a(null),ae=i(),ie=e(ae,2),se=ie[0],ne=ie[1],le=i(),me=e(le,2),ce=me[0],de=me[1],ue=s((function(e){Z||ne(e)}),[Z]),fe=s((function(e){$||de(e)}),[$]),pe=n((function(){return{modalId:N,setTitleId:ue,setDescriptionId:fe,autoFocus:V}}),[N,ue,fe,V]),ve=s((function(e){g&&!S&&O(e)}),[g,S,O]),ye=s((function(e){e.key===h.ESCAPE&&g&&!S&&O(e)}),[S,O,g]),Ee="full-view"===D?x:(null==K?void 0:K.current)?M:L,be=Q?{"--monday-modal-z-index":Q}:{},Ae=s((function(e){if(!X)return!0;var t=X(e);return!0===t||t instanceof HTMLElement&&(t.focus(),!1)}),[X]);return o.createElement(d,null,g&&o.createElement(C,{layerRef:re},o.createElement(j,{value:pe},P(o.createElement(I,{returnFocus:!0,autoFocus:V,whiteList:Ae},o.createElement("div",{ref:re,className:y.container,style:be},o.createElement(u.div,{variants:T,initial:"initial",animate:"enter",exit:"exit","data-testid":f(p.MODAL_NEXT_OVERLAY,N),className:y.overlay,onClick:ve,"aria-hidden":!0}),o.createElement(m,{forwardProps:!0,ref:oe},o.createElement(u.div,{variants:Ee,initial:"exit",animate:"enter",exit:"exit",custom:K,className:l(y.modal,b(y,A("size-"+D)),t({},y.withHeaderAction,!!F),U),id:N,"data-testid":W||f(p.MODAL_NEXT,N),"data-vibe":v.MODAL,role:"dialog","aria-modal":!0,"aria-labelledby":Z||se,"aria-describedby":$||ce,style:J,onKeyDown:ye,tabIndex:-1},G,o.createElement(E,{renderAction:F,theme:H,closeButtonAriaLabel:_,onClose:O}))))),ee))))}));export{N as default};
|
|
2
2
|
//# sourceMappingURL=Modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../../../../../../src/components/Modal/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport cx from \"classnames\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport FocusLock from \"react-focus-lock\";\nimport { motion, AnimatePresence } from \"framer-motion\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId, ComponentVibeId } from \"../../../tests/constants\";\nimport styles from \"./Modal.module.scss\";\nimport { type ModalProps } from \"./Modal.types\";\nimport ModalTopActions from \"../ModalTopActions/ModalTopActions\";\nimport { getStyle } from \"../../../helpers/typesciptCssModulesHelper\";\nimport { camelCase } from \"es-toolkit\";\nimport { ModalProvider } from \"../context/ModalContext\";\nimport { type ModalProviderValue } from \"../context/ModalContext.types\";\nimport { keyCodes } from \"../../../constants\";\nimport {\n modalAnimationAnchorPopVariants,\n modalAnimationCenterPopVariants,\n modalAnimationFullViewVariants,\n modalAnimationOverlayVariants\n} from \"../utils/animationVariants\";\nimport { createPortal } from \"react-dom\";\nimport usePortalTarget from \"../hooks/usePortalTarget/usePortalTarget\";\nimport useFocusEscapeTargets from \"../hooks/useFocusEscapeTargets/useFocusEscapeTargets\";\nimport { LayerProvider } from \"../../LayerProvider\";\nimport useMergeRef from \"../../../hooks/useMergeRef\";\n\n// @ts-expect-error This is a precaution to support all possible module systems (ESM/CJS)\nconst FocusLockComponent = (FocusLock.default || FocusLock) as typeof FocusLock;\n\nconst Modal = forwardRef(\n (\n {\n id,\n show,\n size = \"medium\",\n renderHeaderAction,\n closeButtonTheme,\n closeButtonAriaLabel,\n onClose = () => {},\n autoFocus = true,\n allowFocusEscapeTo,\n onFocusAttempt,\n anchorElementRef,\n alertModal,\n container = document.body,\n children,\n style,\n zIndex,\n className,\n \"data-testid\": dataTestId,\n \"aria-labelledby\": ariaLabelledby,\n \"aria-describedby\": ariaDescribedby\n }: ModalProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const portalTargetElement = usePortalTarget(container);\n\n const modalRef = useRef<HTMLDivElement>(null);\n const modalMergedRef = useMergeRef<HTMLDivElement>(ref, modalRef);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const [titleId, setTitleId] = useState<string>();\n const [descriptionId, setDescriptionId] = useState<string>();\n\n const setTitleIdCallback = useCallback(\n (newId: string) => {\n if (ariaLabelledby) return;\n setTitleId(newId);\n },\n [ariaLabelledby]\n );\n const setDescriptionIdCallback = useCallback(\n (newId: string) => {\n if (ariaDescribedby) return;\n setDescriptionId(newId);\n },\n [ariaDescribedby]\n );\n\n const contextValue = useMemo<ModalProviderValue>(\n () => ({\n modalId: id,\n setTitleId: setTitleIdCallback,\n setDescriptionId: setDescriptionIdCallback,\n autoFocus\n }),\n [id, setTitleIdCallback, setDescriptionIdCallback, autoFocus]\n );\n\n const onBackdropClick = useCallback<React.MouseEventHandler<HTMLDivElement>>(\n e => {\n if (!show || alertModal) return;\n onClose(e);\n },\n [show, alertModal, onClose]\n );\n\n const onModalKeyDown = useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n e => {\n if (e.key !== keyCodes.ESCAPE || !show || alertModal) return;\n onClose(e);\n },\n [alertModal, onClose, show]\n );\n\n const modalAnimationVariants =\n size === \"full-view\"\n ? modalAnimationFullViewVariants\n : anchorElementRef?.current\n ? modalAnimationAnchorPopVariants\n : modalAnimationCenterPopVariants;\n\n const zIndexStyle = zIndex ? ({ \"--monday-modal-z-index\": zIndex } as React.CSSProperties) : {};\n\n const shouldAllowFocusEscape = useFocusEscapeTargets(allowFocusEscapeTo);\n\n const handleFocusLockWhiteList = useCallback(\n (nextFocusedElement?: HTMLElement) => {\n if (onFocusAttempt) {\n const outcome = onFocusAttempt(nextFocusedElement);\n\n if (outcome === true) return true;\n\n if (outcome instanceof HTMLElement) {\n outcome.focus();\n return false;\n }\n\n return false;\n }\n\n // Check if element should be allowed to escape focus lock\n if (shouldAllowFocusEscape(nextFocusedElement)) {\n return false; // Tell focus-lock to ignore it\n }\n\n // Element doesn't match any exception - let focus-lock manage it\n return true;\n },\n [onFocusAttempt, shouldAllowFocusEscape]\n );\n\n return (\n <AnimatePresence>\n {show && (\n <LayerProvider layerRef={containerRef}>\n <ModalProvider value={contextValue}>\n {createPortal(\n <FocusLockComponent returnFocus autoFocus={autoFocus} whiteList={handleFocusLockWhiteList}>\n <div ref={containerRef} className={styles.container} style={zIndexStyle}>\n <motion.div\n variants={modalAnimationOverlayVariants}\n initial=\"initial\"\n animate=\"enter\"\n exit=\"exit\"\n data-testid={getTestId(ComponentDefaultTestId.MODAL_NEXT_OVERLAY, id)}\n className={styles.overlay}\n onClick={onBackdropClick}\n aria-hidden\n />\n <RemoveScroll forwardProps ref={modalMergedRef}>\n <motion.div\n variants={modalAnimationVariants}\n initial=\"exit\"\n animate=\"enter\"\n exit=\"exit\"\n custom={anchorElementRef}\n className={cx(\n styles.modal,\n getStyle(styles, camelCase(\"size-\" + size)),\n { [styles.withHeaderAction]: !!renderHeaderAction },\n className\n )}\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MODAL_NEXT, id)}\n data-vibe={ComponentVibeId.MODAL}\n role=\"dialog\"\n aria-modal\n aria-labelledby={ariaLabelledby || titleId}\n aria-describedby={ariaDescribedby || descriptionId}\n style={style}\n onKeyDown={onModalKeyDown}\n tabIndex={-1}\n >\n {children}\n <ModalTopActions\n renderAction={renderHeaderAction}\n theme={closeButtonTheme}\n closeButtonAriaLabel={closeButtonAriaLabel}\n onClose={onClose}\n />\n </motion.div>\n </RemoveScroll>\n </div>\n </FocusLockComponent>,\n portalTargetElement\n )}\n </ModalProvider>\n </LayerProvider>\n )}\n </AnimatePresence>\n );\n }\n);\n\nexport default Modal;\n"],"names":["FocusLockComponent","FocusLock","default","Modal","forwardRef","_ref","ref","id","show","_ref$size","size","renderHeaderAction","closeButtonTheme","closeButtonAriaLabel","_ref$onClose","onClose","_ref$autoFocus","autoFocus","allowFocusEscapeTo","onFocusAttempt","anchorElementRef","alertModal","_ref$container","container","document","body","children","style","zIndex","className","dataTestId","ariaLabelledby","ariaDescribedby","portalTargetElement","usePortalTarget","modalRef","useRef","modalMergedRef","useMergeRef","containerRef","_useState","useState","_useState2","_slicedToArray","titleId","setTitleId","_useState3","_useState4","descriptionId","setDescriptionId","setTitleIdCallback","useCallback","newId","setDescriptionIdCallback","contextValue","useMemo","modalId","onBackdropClick","e","onModalKeyDown","key","keyCodes","ESCAPE","modalAnimationVariants","modalAnimationFullViewVariants","current","modalAnimationAnchorPopVariants","modalAnimationCenterPopVariants","zIndexStyle","shouldAllowFocusEscape","useFocusEscapeTargets","handleFocusLockWhiteList","nextFocusedElement","outcome","HTMLElement","focus","React","createElement","AnimatePresence","LayerProvider","layerRef","ModalProvider","value","createPortal","returnFocus","whiteList","styles","motion","div","variants","modalAnimationOverlayVariants","initial","animate","exit","getTestId","ComponentDefaultTestId","MODAL_NEXT_OVERLAY","overlay","onClick","RemoveScroll","forwardProps","custom","cx","modal","getStyle","camelCase","_defineProperty","withHeaderAction","MODAL_NEXT","ComponentVibeId","MODAL","role","onKeyDown","tabIndex","ModalTopActions","renderAction","theme"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../../../../../../src/components/Modal/Modal/Modal.tsx"],"sourcesContent":["import React, { forwardRef, useCallback, useMemo, useRef, useState } from \"react\";\nimport cx from \"classnames\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport FocusLock from \"react-focus-lock\";\nimport { motion, AnimatePresence } from \"framer-motion\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId, ComponentVibeId } from \"../../../tests/constants\";\nimport styles from \"./Modal.module.scss\";\nimport { type ModalProps } from \"./Modal.types\";\nimport ModalTopActions from \"../ModalTopActions/ModalTopActions\";\nimport { getStyle } from \"../../../helpers/typesciptCssModulesHelper\";\nimport { camelCase } from \"es-toolkit\";\nimport { ModalProvider } from \"../context/ModalContext\";\nimport { type ModalProviderValue } from \"../context/ModalContext.types\";\nimport { keyCodes } from \"../../../constants\";\nimport {\n modalAnimationAnchorPopVariants,\n modalAnimationCenterPopVariants,\n modalAnimationFullViewVariants,\n modalAnimationOverlayVariants\n} from \"../utils/animationVariants\";\nimport { createPortal } from \"react-dom\";\nimport usePortalTarget from \"../hooks/usePortalTarget/usePortalTarget\";\nimport { LayerProvider } from \"../../LayerProvider\";\nimport useMergeRef from \"../../../hooks/useMergeRef\";\n\n// @ts-expect-error This is a precaution to support all possible module systems (ESM/CJS)\nconst FocusLockComponent = (FocusLock.default || FocusLock) as typeof FocusLock;\n\nconst Modal = forwardRef(\n (\n {\n id,\n show,\n size = \"medium\",\n renderHeaderAction,\n closeButtonTheme,\n closeButtonAriaLabel,\n onClose = () => {},\n autoFocus = true,\n onFocusAttempt,\n anchorElementRef,\n alertModal,\n container = document.body,\n children,\n style,\n zIndex,\n className,\n \"data-testid\": dataTestId,\n \"aria-labelledby\": ariaLabelledby,\n \"aria-describedby\": ariaDescribedby\n }: ModalProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const portalTargetElement = usePortalTarget(container);\n\n const modalRef = useRef<HTMLDivElement>(null);\n const modalMergedRef = useMergeRef<HTMLDivElement>(ref, modalRef);\n const containerRef = useRef<HTMLDivElement>(null);\n\n const [titleId, setTitleId] = useState<string>();\n const [descriptionId, setDescriptionId] = useState<string>();\n\n const setTitleIdCallback = useCallback(\n (newId: string) => {\n if (ariaLabelledby) return;\n setTitleId(newId);\n },\n [ariaLabelledby]\n );\n const setDescriptionIdCallback = useCallback(\n (newId: string) => {\n if (ariaDescribedby) return;\n setDescriptionId(newId);\n },\n [ariaDescribedby]\n );\n\n const contextValue = useMemo<ModalProviderValue>(\n () => ({\n modalId: id,\n setTitleId: setTitleIdCallback,\n setDescriptionId: setDescriptionIdCallback,\n autoFocus\n }),\n [id, setTitleIdCallback, setDescriptionIdCallback, autoFocus]\n );\n\n const onBackdropClick = useCallback<React.MouseEventHandler<HTMLDivElement>>(\n e => {\n if (!show || alertModal) return;\n onClose(e);\n },\n [show, alertModal, onClose]\n );\n\n const onModalKeyDown = useCallback<React.KeyboardEventHandler<HTMLDivElement>>(\n e => {\n if (e.key !== keyCodes.ESCAPE || !show || alertModal) return;\n onClose(e);\n },\n [alertModal, onClose, show]\n );\n\n const modalAnimationVariants =\n size === \"full-view\"\n ? modalAnimationFullViewVariants\n : anchorElementRef?.current\n ? modalAnimationAnchorPopVariants\n : modalAnimationCenterPopVariants;\n\n const zIndexStyle = zIndex ? ({ \"--monday-modal-z-index\": zIndex } as React.CSSProperties) : {};\n\n const handleFocusLockWhiteList = useCallback(\n (nextFocusedElement?: HTMLElement) => {\n if (!onFocusAttempt) return true;\n\n const outcome = onFocusAttempt(nextFocusedElement);\n\n if (outcome === true) return true;\n\n if (outcome instanceof HTMLElement) {\n outcome.focus();\n return false;\n }\n\n return false;\n },\n [onFocusAttempt]\n );\n\n return (\n <AnimatePresence>\n {show && (\n <LayerProvider layerRef={containerRef}>\n <ModalProvider value={contextValue}>\n {createPortal(\n <FocusLockComponent returnFocus autoFocus={autoFocus} whiteList={handleFocusLockWhiteList}>\n <div ref={containerRef} className={styles.container} style={zIndexStyle}>\n <motion.div\n variants={modalAnimationOverlayVariants}\n initial=\"initial\"\n animate=\"enter\"\n exit=\"exit\"\n data-testid={getTestId(ComponentDefaultTestId.MODAL_NEXT_OVERLAY, id)}\n className={styles.overlay}\n onClick={onBackdropClick}\n aria-hidden\n />\n <RemoveScroll forwardProps ref={modalMergedRef}>\n <motion.div\n variants={modalAnimationVariants}\n initial=\"exit\"\n animate=\"enter\"\n exit=\"exit\"\n custom={anchorElementRef}\n className={cx(\n styles.modal,\n getStyle(styles, camelCase(\"size-\" + size)),\n { [styles.withHeaderAction]: !!renderHeaderAction },\n className\n )}\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MODAL_NEXT, id)}\n data-vibe={ComponentVibeId.MODAL}\n role=\"dialog\"\n aria-modal\n aria-labelledby={ariaLabelledby || titleId}\n aria-describedby={ariaDescribedby || descriptionId}\n style={style}\n onKeyDown={onModalKeyDown}\n tabIndex={-1}\n >\n {children}\n <ModalTopActions\n renderAction={renderHeaderAction}\n theme={closeButtonTheme}\n closeButtonAriaLabel={closeButtonAriaLabel}\n onClose={onClose}\n />\n </motion.div>\n </RemoveScroll>\n </div>\n </FocusLockComponent>,\n portalTargetElement\n )}\n </ModalProvider>\n </LayerProvider>\n )}\n </AnimatePresence>\n );\n }\n);\n\nexport default Modal;\n"],"names":["FocusLockComponent","FocusLock","default","Modal","forwardRef","_ref","ref","id","show","_ref$size","size","renderHeaderAction","closeButtonTheme","closeButtonAriaLabel","_ref$onClose","onClose","_ref$autoFocus","autoFocus","onFocusAttempt","anchorElementRef","alertModal","_ref$container","container","document","body","children","style","zIndex","className","dataTestId","ariaLabelledby","ariaDescribedby","portalTargetElement","usePortalTarget","modalRef","useRef","modalMergedRef","useMergeRef","containerRef","_useState","useState","_useState2","_slicedToArray","titleId","setTitleId","_useState3","_useState4","descriptionId","setDescriptionId","setTitleIdCallback","useCallback","newId","setDescriptionIdCallback","contextValue","useMemo","modalId","onBackdropClick","e","onModalKeyDown","key","keyCodes","ESCAPE","modalAnimationVariants","modalAnimationFullViewVariants","current","modalAnimationAnchorPopVariants","modalAnimationCenterPopVariants","zIndexStyle","handleFocusLockWhiteList","nextFocusedElement","outcome","HTMLElement","focus","React","createElement","AnimatePresence","LayerProvider","layerRef","ModalProvider","value","createPortal","returnFocus","whiteList","styles","motion","div","variants","modalAnimationOverlayVariants","initial","animate","exit","getTestId","ComponentDefaultTestId","MODAL_NEXT_OVERLAY","overlay","onClick","RemoveScroll","forwardProps","custom","cx","modal","getStyle","camelCase","_defineProperty","withHeaderAction","MODAL_NEXT","ComponentVibeId","MODAL","role","onKeyDown","tabIndex","ModalTopActions","renderAction","theme"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{typeof as
|
|
1
|
+
import{typeof as t}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import e,{forwardRef as o,useEffect as s}from"react";import a from"classnames";import{getTestId as i}from"../../../tests/testIds.js";import{ComponentDefaultTestId as n}from"../../../tests/constants.js";import r from"./ModalHeader.module.scss.js";import c from"../../Flex/Flex.js";import m from"../../Heading/Heading.js";import l from"../../Text/Text.js";import{useModal as d}from"../context/ModalContext.js";import p from"../../../../components/icon/dist/Icon/Icon.js";var f=o((function(o,f){var j=o.title,g=o.description,u=o.descriptionIcon,x=o.className,_=o.id,E=o["data-testid"],I=d(),N=I.modalId,b=I.setDescriptionId,h=I.setTitleId,y=_?"".concat(N,"_").concat(_,"_label"):"".concat(N,"_label"),H=_?"".concat(N,"_").concat(_,"_desc"):"".concat(N,"_desc");return s((function(){N&&(h(y),g&&b(H))}),[N,h,y,g,b,H]),e.createElement(c,{gap:"xs",direction:"column",align:"start",ref:f,className:a(r.header,x),id:_,"data-testid":E||i(n.MODAL_NEXT_HEADER,_)},"string"==typeof j?e.createElement(m,{id:y,align:"inherit",type:"h2",weight:"medium",maxLines:2,className:r.title},j):j,g&&e.createElement(c,{id:H},u&&e.createElement(p,{icon:"object"===t(u)?u.name:u,className:a(r.descriptionIcon,"object"===t(u)&&u.className)}),"string"==typeof g?e.createElement(l,{element:"span",align:"inherit",type:"text1"},g):g))}));export{f as default};
|
|
2
2
|
//# sourceMappingURL=ModalHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalHeader.js","sources":["../../../../../../src/components/Modal/ModalHeader/ModalHeader.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from \"react\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport styles from \"./ModalHeader.module.scss\";\nimport { type ModalHeaderProps } from \"./ModalHeader.types\";\nimport Flex from \"../../Flex/Flex\";\nimport Heading from \"../../Heading/Heading\";\nimport Text from \"../../Text/Text\";\nimport Icon from \"
|
|
1
|
+
{"version":3,"file":"ModalHeader.js","sources":["../../../../../../src/components/Modal/ModalHeader/ModalHeader.tsx"],"sourcesContent":["import React, { forwardRef, useEffect } from \"react\";\nimport cx from \"classnames\";\nimport { getTestId } from \"../../../tests/test-ids-utils\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\nimport styles from \"./ModalHeader.module.scss\";\nimport { type ModalHeaderProps } from \"./ModalHeader.types\";\nimport Flex from \"../../Flex/Flex\";\nimport Heading from \"../../Heading/Heading\";\nimport Text from \"../../Text/Text\";\nimport { Icon } from \"@vibe/icon\";\nimport { useModal } from \"../context/ModalContext\";\n\nconst ModalHeader = forwardRef(\n (\n { title, description, descriptionIcon, className, id, \"data-testid\": dataTestId }: ModalHeaderProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const { modalId, setDescriptionId, setTitleId } = useModal();\n const titleId = id ? `${modalId}_${id}_label` : `${modalId}_label`;\n const descriptionId = id ? `${modalId}_${id}_desc` : `${modalId}_desc`;\n\n useEffect(() => {\n if (!modalId) return;\n setTitleId(titleId);\n if (!description) return;\n setDescriptionId(descriptionId);\n }, [modalId, setTitleId, titleId, description, setDescriptionId, descriptionId]);\n\n return (\n <Flex\n gap=\"xs\"\n direction=\"column\"\n align=\"start\"\n ref={ref}\n className={cx(styles.header, className)}\n id={id}\n data-testid={dataTestId || getTestId(ComponentDefaultTestId.MODAL_NEXT_HEADER, id)}\n >\n {typeof title === \"string\" ? (\n <Heading id={titleId} align=\"inherit\" type=\"h2\" weight=\"medium\" maxLines={2} className={styles.title}>\n {title}\n </Heading>\n ) : (\n title\n )}\n\n {description && (\n <Flex id={descriptionId}>\n {descriptionIcon && (\n <Icon\n icon={typeof descriptionIcon === \"object\" ? descriptionIcon.name : descriptionIcon}\n className={cx(styles.descriptionIcon, typeof descriptionIcon === \"object\" && descriptionIcon.className)}\n />\n )}\n {typeof description === \"string\" ? (\n <Text element=\"span\" align=\"inherit\" type=\"text1\">\n {description}\n </Text>\n ) : (\n description\n )}\n </Flex>\n )}\n </Flex>\n );\n }\n);\n\nexport default ModalHeader;\n"],"names":["ModalHeader","forwardRef","_ref","ref","title","description","descriptionIcon","className","id","dataTestId","_useModal","useModal","modalId","setDescriptionId","setTitleId","titleId","concat","descriptionId","useEffect","React","Flex","gap","direction","align","cx","styles","header","getTestId","ComponentDefaultTestId","MODAL_NEXT_HEADER","Heading","type","weight","maxLines","createElement","Icon","icon","_typeof","name","Text","element"],"mappings":"giBAYMA,IAAAA,EAAcC,GAClB,SAAAC,EAEEC,GACE,IAFAC,EAAKF,EAALE,MAAOC,EAAWH,EAAXG,YAAaC,EAAeJ,EAAfI,gBAAiBC,EAASL,EAATK,UAAWC,EAAEN,EAAFM,GAAmBC,EAAUP,EAAzB,eAGtDQ,EAAkDC,IAA1CC,EAAOF,EAAPE,QAASC,EAAgBH,EAAhBG,iBAAkBC,EAAUJ,EAAVI,WAC7BC,EAAUP,EAAE,GAAAQ,OAAMJ,EAAOI,KAAAA,OAAIR,EAAE,UAAA,GAAAQ,OAAcJ,EAAe,UAC5DK,EAAgBT,EAAE,GAAAQ,OAAMJ,EAAOI,KAAAA,OAAIR,EAAE,SAAA,GAAAQ,OAAaJ,EAAc,SAStE,OAPAM,GAAU,WACHN,IACLE,EAAWC,GACNV,GACLQ,EAAiBI,GACnB,GAAG,CAACL,EAASE,EAAYC,EAASV,EAAaQ,EAAkBI,IAG/DE,gBAACC,EAAI,CACHC,IAAI,KACJC,UAAU,SACVC,MAAM,QACNpB,IAAKA,EACLI,UAAWiB,EAAGC,EAAOC,OAAQnB,GAC7BC,GAAIA,gBACSC,GAAckB,EAAUC,EAAuBC,kBAAmBrB,IAE7D,iBAAVJ,EACNe,gBAACW,EAAO,CAACtB,GAAIO,EAASQ,MAAM,UAAUQ,KAAK,KAAKC,OAAO,SAASC,SAAU,EAAG1B,UAAWkB,EAAOrB,OAC5FA,GAGHA,EAGDC,GACCc,EAAAe,cAACd,EAAK,CAAAZ,GAAIS,GACPX,GACCa,EAAAe,cAACC,EACC,CAAAC,KAAiC,WAA3BC,EAAO/B,GAA+BA,EAAgBgC,KAAOhC,EACnEC,UAAWiB,EAAGC,EAAOnB,gBAA4C,WAA3B+B,EAAO/B,IAAgCA,EAAgBC,aAGzE,iBAAhBF,EACNc,EAACe,cAAAK,GAAKC,QAAQ,OAAOjB,MAAM,UAAUQ,KAAK,SACvC1B,GAGHA,GAMZ"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import t from"react";import o from"./ModalTopActions.module.scss.js";import e from"../../IconButton/IconButton.js";import{ComponentDefaultTestId as
|
|
1
|
+
import t from"react";import o from"./ModalTopActions.module.scss.js";import e from"../../IconButton/IconButton.js";import{ComponentDefaultTestId as a}from"../../../tests/constants.js";import r from"../../../../packages/icons/dist/react/CloseMedium.js";var i={dark:"fixed-dark",light:"fixed-light"},s=function(s){var n=s.renderAction,c=s.closeButtonAriaLabel,m=s.onClose,l=i[s.theme]||"primary";return t.createElement("div",{className:o.actions,"data-no-autofocus":!0},"function"==typeof n?n(l):n,t.createElement(e,{"data-testid":a.MODAL_NEXT_CLOSE_BUTTON,icon:r,onClick:m,size:"small",kind:"tertiary",color:l,ariaLabel:c}))};export{s as default};
|
|
2
2
|
//# sourceMappingURL=ModalTopActions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalTopActions.js","sources":["../../../../../../src/components/Modal/ModalTopActions/ModalTopActions.tsx"],"sourcesContent":["import React from \"react\";\nimport styles from \"./ModalTopActions.module.scss\";\nimport {\n type ModalTopActionsButtonColor,\n type ModalTopActionsTheme,\n type ModalTopActionsProps\n} from \"./ModalTopActions.types\";\nimport IconButton from \"../../IconButton/IconButton\";\nimport { CloseMedium } from \"@vibe/icons\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\n\nconst colorToButtonColor: Record<ModalTopActionsTheme, ModalTopActionsButtonColor> = {\n dark: \"fixed-dark\",\n light: \"fixed-light\"\n};\n\nconst ModalTopActions = ({ renderAction, theme, closeButtonAriaLabel, onClose }: ModalTopActionsProps) => {\n const buttonColor = colorToButtonColor[theme] || \"primary\";\n\n return (\n <div className={styles.actions} data-no-autofocus={true}>\n {typeof renderAction === \"function\" ? renderAction(buttonColor) : renderAction}\n <IconButton\n data-testid={ComponentDefaultTestId.MODAL_NEXT_CLOSE_BUTTON}\n icon={CloseMedium}\n onClick={onClose}\n size=\"small\"\n kind=\"tertiary\"\n color={buttonColor}\n ariaLabel={closeButtonAriaLabel}\n />\n </div>\n );\n};\n\nexport default ModalTopActions;\n"],"names":["colorToButtonColor","dark","light","ModalTopActions","_ref","renderAction","closeButtonAriaLabel","onClose","buttonColor","theme","React","className","styles","actions","createElement","IconButton","ComponentDefaultTestId","MODAL_NEXT_CLOSE_BUTTON","icon","CloseMedium","onClick","size","kind","color","ariaLabel"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ModalTopActions.js","sources":["../../../../../../src/components/Modal/ModalTopActions/ModalTopActions.tsx"],"sourcesContent":["import React from \"react\";\nimport styles from \"./ModalTopActions.module.scss\";\nimport {\n type ModalTopActionsButtonColor,\n type ModalTopActionsTheme,\n type ModalTopActionsProps\n} from \"./ModalTopActions.types\";\nimport IconButton from \"../../IconButton/IconButton\";\nimport { CloseMedium } from \"@vibe/icons\";\nimport { ComponentDefaultTestId } from \"../../../tests/constants\";\n\nconst colorToButtonColor: Record<ModalTopActionsTheme, ModalTopActionsButtonColor> = {\n dark: \"fixed-dark\",\n light: \"fixed-light\"\n};\n\nconst ModalTopActions = ({ renderAction, theme, closeButtonAriaLabel, onClose }: ModalTopActionsProps) => {\n const buttonColor = colorToButtonColor[theme] || \"primary\";\n\n return (\n <div className={styles.actions} data-no-autofocus={true}>\n {typeof renderAction === \"function\" ? renderAction(buttonColor) : renderAction}\n <IconButton\n data-testid={ComponentDefaultTestId.MODAL_NEXT_CLOSE_BUTTON}\n icon={CloseMedium}\n onClick={onClose}\n size=\"small\"\n kind=\"tertiary\"\n color={buttonColor}\n ariaLabel={closeButtonAriaLabel}\n />\n </div>\n );\n};\n\nexport default ModalTopActions;\n"],"names":["colorToButtonColor","dark","light","ModalTopActions","_ref","renderAction","closeButtonAriaLabel","onClose","buttonColor","theme","React","className","styles","actions","createElement","IconButton","ComponentDefaultTestId","MODAL_NEXT_CLOSE_BUTTON","icon","CloseMedium","onClick","size","kind","color","ariaLabel"],"mappings":"4PAWA,IAAMA,EAA+E,CACnFC,KAAM,aACNC,MAAO,eAGHC,EAAkB,SAAHC,GAAoF,IAA9EC,EAAYD,EAAZC,aAAqBC,EAAoBF,EAApBE,qBAAsBC,EAAOH,EAAPG,QAC9DC,EAAcR,EADwBI,EAALK,QACU,UAEjD,OACEC,uBAAKC,UAAWC,EAAOC,6BAA4B,GACxB,mBAAjBR,EAA8BA,EAAaG,GAAeH,EAClEK,EAAAI,cAACC,EAAU,CAAA,cACIC,EAAuBC,wBACpCC,KAAMC,EACNC,QAASb,EACTc,KAAK,QACLC,KAAK,WACLC,MAAOf,EACPgB,UAAWlB,IAInB"}
|
package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__rest as t}from"../../../../../_virtual/_tslib.js";import e,{forwardRef as o}from"react";import r from"./ModalFooterBase.module.scss.js";import s from"../../../
|
|
1
|
+
import{__rest as t}from"../../../../../_virtual/_tslib.js";import e,{forwardRef as o}from"react";import r from"./ModalFooterBase.module.scss.js";import s from"../../../Flex/Flex.js";import a from"classnames";import n from"../../../Tooltip/Tooltip.js";import i from"../../../../../components/button/dist/Button/Button.js";var m=o((function(o,m){var c=o.primaryButton,l=o.secondaryButton,p=o.renderAction,d=o.id,f=o.className,u=o["data-testid"],j=c.text,b=c.tooltipProps,x=void 0===b?{}:b,g=t(c,["text","tooltipProps"]),v=l||{},B=v.text,E=v.tooltipProps,y=void 0===E?{}:E,O=t(v,["text","tooltipProps"]);return e.createElement(s,{ref:m,id:d,justify:"space-between",gap:"small",className:a(r.footer,f),"data-testid":u},e.createElement(n,Object.assign({},x,{content:x.content}),e.createElement(i,Object.assign({},g),j)),l&&e.createElement(n,Object.assign({},y,{content:y.content}),e.createElement(i,Object.assign({},O,{kind:"tertiary"}),B)),p)}));export{m as default};
|
|
2
2
|
//# sourceMappingURL=ModalFooterBase.js.map
|
package/dist/mocked_classnames/src/components/Modal/footers/ModalFooterBase/ModalFooterBase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModalFooterBase.js","sources":["../../../../../../../src/components/Modal/footers/ModalFooterBase/ModalFooterBase.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport styles from \"./ModalFooterBase.module.scss\";\nimport Button from \"
|
|
1
|
+
{"version":3,"file":"ModalFooterBase.js","sources":["../../../../../../../src/components/Modal/footers/ModalFooterBase/ModalFooterBase.tsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\nimport styles from \"./ModalFooterBase.module.scss\";\nimport { Button } from \"@vibe/button\";\nimport Flex from \"../../../Flex/Flex\";\nimport { type ModalFooterBaseProps } from \"./ModalFooterBase.types\";\nimport cx from \"classnames\";\nimport { Tooltip } from \"../../../Tooltip\";\n\nconst ModalFooterBase = forwardRef(\n (\n { primaryButton, secondaryButton, renderAction, id, className, \"data-testid\": dataTestId }: ModalFooterBaseProps,\n ref: React.ForwardedRef<HTMLDivElement>\n ) => {\n const {\n text: primaryButtonText,\n tooltipProps: primaryButtonTooltipProps = {},\n ...primaryButtonProps\n } = primaryButton;\n const {\n text: secondaryButtonText,\n tooltipProps: secondaryButtonTooltipProps = {},\n ...secondaryButtonProps\n } = secondaryButton || {};\n\n return (\n <Flex\n ref={ref}\n id={id}\n justify=\"space-between\"\n gap=\"small\"\n className={cx(styles.footer, className)}\n data-testid={dataTestId}\n >\n <Tooltip {...primaryButtonTooltipProps} content={primaryButtonTooltipProps.content}>\n <Button {...primaryButtonProps}>{primaryButtonText}</Button>\n </Tooltip>\n {secondaryButton && (\n <Tooltip {...secondaryButtonTooltipProps} content={secondaryButtonTooltipProps.content}>\n <Button {...secondaryButtonProps} kind=\"tertiary\">\n {secondaryButtonText}\n </Button>\n </Tooltip>\n )}\n {renderAction}\n </Flex>\n );\n }\n);\n\nexport default ModalFooterBase;\n"],"names":["ModalFooterBase","forwardRef","_ref","ref","primaryButton","secondaryButton","renderAction","id","className","dataTestId","primaryButtonText","text","_primaryButton$toolti","tooltipProps","primaryButtonTooltipProps","primaryButtonProps","__rest","_a","secondaryButtonText","_a$tooltipProps","secondaryButtonTooltipProps","secondaryButtonProps","React","createElement","Flex","justify","gap","cx","styles","footer","Tooltip","content","Button","Object","assign","kind"],"mappings":"iUAQMA,IAAAA,EAAkBC,GACtB,SAAAC,EAEEC,GACE,IAFAC,EAAaF,EAAbE,cAAeC,EAAeH,EAAfG,gBAAiBC,EAAYJ,EAAZI,aAAcC,EAAEL,EAAFK,GAAIC,EAASN,EAATM,UAA0BC,EAAUP,EAAzB,eAIvDQ,EAGJN,EAHFO,KAAIC,EAGFR,EAFFS,aAAcC,OAAyB,IAAAF,EAAG,CAAE,EAAAA,EACzCG,EAAkBC,EACnBZ,EAJE,CAAA,OAAA,iBAKAa,EAIFZ,GAAmB,CAAE,EAHjBa,EACwCD,EAD9CN,KAAIQ,EAC0CF,EAA9CJ,aAAcO,OAA2B,IAAAD,EAAG,CAAE,EAAAA,EAC3CE,EAAoBL,EAAAC,EAHnB,CAIL,OAAA,iBAED,OACEK,EAAAC,cAACC,EAAI,CACHrB,IAAKA,EACLI,GAAIA,EACJkB,QAAQ,gBACRC,IAAI,QACJlB,UAAWmB,EAAGC,EAAOC,OAAQrB,iBAChBC,GAEba,EAACC,cAAAO,mBAAYhB,EAAyB,CAAEiB,QAASjB,EAA0BiB,UACzET,EAAAC,cAACS,EAAWC,OAAAC,OAAA,CAAA,EAAAnB,GAAqBL,IAElCL,GACCiB,EAAAC,cAACO,EAAOG,OAAAC,OAAA,CAAA,EAAKd,EAA2B,CAAEW,QAASX,EAA4BW,UAC7ET,EAACC,cAAAS,EAAWC,OAAAC,OAAA,CAAA,EAAAb,EAAsB,CAAAc,KAAK,aACpCjB,IAINZ,EAGP"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{defineProperty as e}from"../../../_virtual/_rollupPluginBabelHelpers.js";import t from"classnames";import i,{forwardRef as s,useCallback as o,useMemo as r}from"react";import l from"../Divider/Divider.js";import{NOOP as a}from"../../utils/function-utils.js";import n from"./components/StepIndicator/StepIndicator.js";import{MultiStepType as p,StepStatus as m,TextPlacement as c,Size as d}from"./MultiStepConstants.js";import{getTestId as f}from"../../tests/testIds.js";import{ComponentDefaultTestId as u}from"../../tests/constants.js";import{withStaticProps as v}from"../../types/withStaticProps.js";import"../../utils/colors-vars-map.js";import y from"./MultiStepIndicator.module.scss.js";import S from"../../../icons/dist/react/Check.js";var C=v(s((function(s,p){var m=s.className,c=s.steps,d=void 0===c?[]:c,v=s.type,C=void 0===v?"primary":v,N=s.stepComponentClassName,j=s.dividerComponentClassName,I=s.fulfilledStepIcon,g=void 0===I?S:I,b=s.fulfilledStepIconType,D=void 0===b?"svg":b,T=s.isFulfilledStepDisplayNumber,h=void 0!==T&&T,k=s.onClick,E=void 0===k?a:k,P=s.textPlacement,_=void 0===P?"horizontal":P,x=s.id,F=s["data-testid"],z="vertical"===_?"regular":s.size,w=o((function(s,o){return i.createElement(i.Fragment,{key:"".concat(s.titleText,"_").concat(o)},i.createElement(n,Object.assign({},s,{stepNumber:o+1,type:C,stepComponentClassName:N,fulfilledStepIcon:g,fulfilledStepIconType:D,onClick:E,isFulfilledStepDisplayNumber:h,size:z})),o!==d.length-1&&i.createElement(l,{className:t(y.divider,j,e({},y.compact,"compact"===z))}))}),[E,h,C,N,g,D,j,d.length,z]),M=o((function(e,s){return i.createElement(n,Object.assign({},e,{key:"".concat(e.titleText,"_").concat(s),stepNumber:s+1,type:C,stepComponentClassName:N,fulfilledStepIcon:g,fulfilledStepIconType:D,onClick:E,isFollowedByDivider:s!==d.length-1,stepDividerClassName:t(y.divider,j),isVertical:!0,isFulfilledStepDisplayNumber:h}))}),[E,h,C,N,g,D,j,d.length]),O=r((function(){return"vertical"===_?M:w}),[_,M,w]);return i.createElement("ol",{ref:p,id:x,"data-testid":F||f(u.MULTI_STEP_INDICATOR,x),className:t(y.wrapper,m)},d.map(O))})),{types:p,stepStatuses:m,textPlacements:c,sizes:d});export{C as default};
|
|
1
|
+
import{defineProperty as e}from"../../../_virtual/_rollupPluginBabelHelpers.js";import t from"classnames";import i,{forwardRef as s,useCallback as o,useMemo as r}from"react";import l from"../Divider/Divider.js";import{NOOP as a}from"../../utils/function-utils.js";import n from"./components/StepIndicator/StepIndicator.js";import{MultiStepType as p,StepStatus as m,TextPlacement as c,Size as d}from"./MultiStepConstants.js";import{getTestId as f}from"../../tests/testIds.js";import{ComponentDefaultTestId as u}from"../../tests/constants.js";import{withStaticProps as v}from"../../types/withStaticProps.js";import"../../utils/colors-vars-map.js";import y from"./MultiStepIndicator.module.scss.js";import S from"../../../packages/icons/dist/react/Check.js";var C=v(s((function(s,p){var m=s.className,c=s.steps,d=void 0===c?[]:c,v=s.type,C=void 0===v?"primary":v,N=s.stepComponentClassName,j=s.dividerComponentClassName,I=s.fulfilledStepIcon,g=void 0===I?S:I,b=s.fulfilledStepIconType,D=void 0===b?"svg":b,T=s.isFulfilledStepDisplayNumber,h=void 0!==T&&T,k=s.onClick,E=void 0===k?a:k,P=s.textPlacement,_=void 0===P?"horizontal":P,x=s.id,F=s["data-testid"],z="vertical"===_?"regular":s.size,w=o((function(s,o){return i.createElement(i.Fragment,{key:"".concat(s.titleText,"_").concat(o)},i.createElement(n,Object.assign({},s,{stepNumber:o+1,type:C,stepComponentClassName:N,fulfilledStepIcon:g,fulfilledStepIconType:D,onClick:E,isFulfilledStepDisplayNumber:h,size:z})),o!==d.length-1&&i.createElement(l,{className:t(y.divider,j,e({},y.compact,"compact"===z))}))}),[E,h,C,N,g,D,j,d.length,z]),M=o((function(e,s){return i.createElement(n,Object.assign({},e,{key:"".concat(e.titleText,"_").concat(s),stepNumber:s+1,type:C,stepComponentClassName:N,fulfilledStepIcon:g,fulfilledStepIconType:D,onClick:E,isFollowedByDivider:s!==d.length-1,stepDividerClassName:t(y.divider,j),isVertical:!0,isFulfilledStepDisplayNumber:h}))}),[E,h,C,N,g,D,j,d.length]),O=r((function(){return"vertical"===_?M:w}),[_,M,w]);return i.createElement("ol",{ref:p,id:x,"data-testid":F||f(u.MULTI_STEP_INDICATOR,x),className:t(y.wrapper,m)},d.map(O))})),{types:p,stepStatuses:m,textPlacements:c,sizes:d});export{C as default};
|
|
2
2
|
//# sourceMappingURL=MultiStepIndicator.js.map
|