@amboss/design-system 1.21.3 → 1.23.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -18
- package/build/{esm/src → cjs}/components/Badge/Badge.d.ts +1 -1
- package/build/cjs/components/Badge/Badge.js +1 -0
- package/build/{esm/src → cjs}/components/Box/Box.d.ts +3 -2
- package/build/cjs/components/Box/Box.js +1 -0
- package/build/{esm/src → cjs}/components/Button/Button.d.ts +4 -3
- package/build/cjs/components/Button/Button.js +1 -0
- package/build/{esm/src → cjs}/components/Callout/Callout.d.ts +4 -3
- package/build/cjs/components/Callout/Callout.js +1 -0
- package/build/{esm/src → cjs}/components/Card/Card.d.ts +2 -4
- package/build/cjs/components/Card/Card.js +1 -0
- package/build/cjs/components/Card/CardBox.js +1 -0
- package/build/cjs/components/Card/CardHeader/CardHeader.d.ts +10 -0
- package/build/cjs/components/Card/CardHeader/CardHeader.js +1 -0
- package/build/cjs/components/Collapsible/Collapsible.js +1 -0
- package/build/{esm/src → cjs}/components/Column/Columns.d.ts +2 -2
- package/build/cjs/components/Column/Columns.js +1 -0
- package/build/{esm/src → cjs}/components/Container/Container.d.ts +1 -1
- package/build/cjs/components/Container/Container.js +1 -0
- package/build/{esm/src → cjs}/components/DataTable/DataTable.d.ts +1 -1
- package/build/cjs/components/DataTable/DataTable.js +1 -0
- package/build/cjs/components/DataTable/TableBody.js +1 -0
- package/build/cjs/components/DataTable/TableCell.js +1 -0
- package/build/cjs/components/DataTable/TableHeader.js +1 -0
- package/build/cjs/components/DataTable/index.js +1 -0
- package/build/{esm/src → cjs}/components/DataTable/types.d.ts +1 -1
- package/build/cjs/components/DataTable/types.js +1 -0
- package/build/{esm/src → cjs}/components/DataTable/useDataTableSort.d.ts +1 -1
- package/build/cjs/components/DataTable/useDataTableSort.js +1 -0
- package/build/cjs/components/Divider/Divider.js +1 -0
- package/build/{esm/src → cjs}/components/DropdownMenu/DropdownMenu.d.ts +4 -4
- package/build/cjs/components/DropdownMenu/DropdownMenu.js +1 -0
- package/build/{esm/src → cjs}/components/DropdownMenu/MenuItem.d.ts +2 -3
- package/build/cjs/components/DropdownMenu/MenuItem.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Checkbox/Checkbox.d.ts +1 -1
- package/build/cjs/components/Form/Checkbox/Checkbox.js +1 -0
- package/build/cjs/components/Form/FormErrorMessages/FormErrorMessages.js +1 -0
- package/build/cjs/components/Form/FormField/FormField.js +3 -0
- package/build/cjs/components/Form/FormFieldGroup/FormFieldGroup.js +1 -0
- package/build/cjs/components/Form/FormLabelText/FormLabelText.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Input/Input.d.ts +2 -2
- package/build/cjs/components/Form/Input/Input.js +1 -0
- package/build/cjs/components/Form/Input/index.js +1 -0
- package/build/{esm/src → cjs}/components/Form/PasswordInput/PasswordInput.d.ts +1 -4
- package/build/cjs/components/Form/PasswordInput/PasswordInput.js +1 -0
- package/build/cjs/components/Form/PasswordInput/index.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Radio/Radio.d.ts +1 -1
- package/build/cjs/components/Form/Radio/Radio.js +1 -0
- package/build/{esm/src → cjs}/components/Form/RadioButton/RadioButton.d.ts +2 -2
- package/build/cjs/components/Form/RadioButton/RadioButton.js +1 -0
- package/build/{esm/src/components/Form/SegmentedControl/SegmentedControl.d.ts → cjs/components/Form/SegmentedControl/-types.d.ts} +11 -7
- package/build/cjs/components/Form/SegmentedControl/-types.js +1 -0
- package/build/cjs/components/Form/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/build/cjs/components/Form/SegmentedControl/SegmentedControl.js +1 -0
- package/build/cjs/components/Form/SegmentedControl/SegmentedControlOption.d.ts +3 -0
- package/build/cjs/components/Form/SegmentedControl/SegmentedControlOption.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Select/Select.d.ts +1 -1
- package/build/cjs/components/Form/Select/Select.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Textarea/Textarea.d.ts +1 -1
- package/build/cjs/components/Form/Textarea/Textarea.js +1 -0
- package/build/{esm/src → cjs}/components/Form/Toggle/Toggle.d.ts +3 -3
- package/build/cjs/components/Form/Toggle/Toggle.js +1 -0
- package/build/{esm/src → cjs}/components/Form/ToggleButton/ToggleButton.d.ts +1 -1
- package/build/cjs/components/Form/ToggleButton/ToggleButton.js +1 -0
- package/build/{esm/src → cjs}/components/Icon/Icon.d.ts +3 -3
- package/build/cjs/components/Icon/Icon.js +1 -0
- package/build/cjs/components/Image/Image.d.ts +36 -0
- package/build/cjs/components/Image/Image.js +1 -0
- package/build/{esm/src → cjs}/components/Inline/Inline.d.ts +1 -1
- package/build/cjs/components/Inline/Inline.js +1 -0
- package/build/{esm/src → cjs}/components/Link/Link.d.ts +1 -1
- package/build/cjs/components/Link/Link.js +1 -0
- package/build/cjs/components/LoadingSpinner/LoadingSpinner.js +1 -0
- package/build/cjs/components/Logo/Logo.js +1 -0
- package/build/cjs/components/MediaItem/MediaItem.js +1 -0
- package/build/{esm/src → cjs}/components/MediaViewerBar/MediaViewerBar.d.ts +1 -1
- package/build/cjs/components/MediaViewerBar/MediaViewerBar.js +1 -0
- package/build/cjs/components/Notification/ExpandedContent.js +1 -0
- package/build/{esm/src → cjs}/components/Notification/Notification.d.ts +1 -1
- package/build/cjs/components/Notification/Notification.js +1 -0
- package/build/cjs/components/Pagination/Pagination.js +1 -0
- package/build/{esm/src → cjs}/components/Patterns/ButtonGroup/ButtonGroup.d.ts +2 -2
- package/build/cjs/components/Patterns/ButtonGroup/ButtonGroup.js +1 -0
- package/build/{esm/src → cjs}/components/Patterns/Modal/Modal.d.ts +3 -3
- package/build/cjs/components/Patterns/Modal/Modal.js +1 -0
- package/build/{esm/src → cjs}/components/PictogramButton/PictogramButton.d.ts +3 -3
- package/build/cjs/components/PictogramButton/PictogramButton.js +1 -0
- package/build/{esm/src → cjs}/components/Popover/Popover.d.ts +2 -2
- package/build/cjs/components/Popover/Popover.js +1 -0
- package/build/{esm/src → cjs}/components/Portal/Portal.d.ts +1 -1
- package/build/cjs/components/Portal/Portal.js +1 -0
- package/build/{esm/src → cjs}/components/ProgressBar/ProgressBar.d.ts +1 -1
- package/build/cjs/components/ProgressBar/ProgressBar.js +1 -0
- package/build/{esm/src → cjs}/components/RoundButton/RoundButton.d.ts +4 -7
- package/build/cjs/components/RoundButton/RoundButton.js +1 -0
- package/build/{esm/src → cjs}/components/SearchResult/SearchResult.d.ts +1 -1
- package/build/cjs/components/SearchResult/SearchResult.js +1 -0
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -0
- package/build/{esm/src → cjs}/components/SegmentedProgressBar/SegmentedProgressBarUtil.d.ts +1 -1
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +1 -0
- package/build/cjs/components/ShadowWebComponent/ShadowWebComponent.js +1 -0
- package/build/{esm/src → cjs}/components/Sheet/Sheet.d.ts +2 -1
- package/build/cjs/components/Sheet/Sheet.js +1 -0
- package/build/{esm/src → cjs}/components/Stack/Stack.d.ts +1 -1
- package/build/cjs/components/Stack/Stack.js +1 -0
- package/build/{esm/src → cjs}/components/SubThemeProvider/SubThemeProvider.d.ts +1 -1
- package/build/cjs/components/SubThemeProvider/SubThemeProvider.js +1 -0
- package/build/{esm/src → cjs}/components/Tabs/Tabs.d.ts +2 -2
- package/build/cjs/components/Tabs/Tabs.js +1 -0
- package/build/cjs/components/Tag/Tag.js +1 -0
- package/build/{esm/src → cjs}/components/TagGroup/TagGroup.d.ts +1 -1
- package/build/cjs/components/TagGroup/TagGroup.js +1 -0
- package/build/{esm/src → cjs}/components/Toggletip/BasePopover.d.ts +3 -2
- package/build/cjs/components/Toggletip/BasePopover.js +1 -0
- package/build/{esm/src → cjs}/components/Toggletip/Toggletip.d.ts +2 -2
- package/build/cjs/components/Toggletip/Toggletip.js +1 -0
- package/build/{esm/src → cjs}/components/Tooltip/BaseTooltip.d.ts +1 -1
- package/build/cjs/components/Tooltip/BaseTooltip.js +1 -0
- package/build/{esm/src → cjs}/components/Tooltip/Tooltip.d.ts +1 -1
- package/build/cjs/components/Tooltip/Tooltip.js +1 -0
- package/build/{esm/src → cjs}/components/Tooltip/TooltipContent.d.ts +2 -1
- package/build/cjs/components/Tooltip/TooltipContent.js +1 -0
- package/build/{esm/src → cjs}/components/Tooltip/types.d.ts +1 -1
- package/build/cjs/components/Tooltip/types.js +1 -0
- package/build/{esm/src → cjs}/components/Tooltip/utils.d.ts +1 -1
- package/build/cjs/components/Tooltip/utils.js +1 -0
- package/build/{esm/src → cjs}/components/Typography/Header/Header.d.ts +3 -3
- package/build/cjs/components/Typography/Header/Header.js +1 -0
- package/build/cjs/components/Typography/StyledText/StyledText.js +1 -0
- package/build/{esm/src → cjs}/components/Typography/Text/Text.d.ts +1 -1
- package/build/cjs/components/Typography/Text/Text.js +1 -0
- package/build/{esm/src → cjs}/components/Typography/TextClamped/TextClamped.d.ts +1 -1
- package/build/cjs/components/Typography/TextClamped/TextClamped.js +1 -0
- package/build/cjs/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -0
- package/build/cjs/components/VirtualScrollList/VirtualScrollList.js +1 -0
- package/build/cjs/components/VirtualScrollList/VirtualScrollListReducer.js +1 -0
- package/build/{esm/src → cjs}/index.d.ts +2 -1
- package/build/cjs/index.js +1 -0
- package/build/cjs/shared/FocusTrapWrapper.js +1 -0
- package/build/cjs/shared/ScreenReaderText.js +1 -0
- package/build/{esm/src → cjs}/shared/flattenChildren.d.ts +1 -1
- package/build/cjs/shared/flattenChildren.js +1 -0
- package/build/cjs/shared/informDeprecation.js +2 -0
- package/build/{esm/src → cjs}/shared/mediaQueries.d.ts +1 -1
- package/build/cjs/shared/mediaQueries.js +1 -0
- package/build/cjs/shared/replaceDeprecated.js +2 -0
- package/build/{esm/src → cjs}/shared/useAutoPosition.d.ts +1 -1
- package/build/cjs/shared/useAutoPosition.js +1 -0
- package/build/cjs/shared/useDocument.js +1 -0
- package/build/{esm/src → cjs}/shared/useDragDown.d.ts +1 -1
- package/build/cjs/shared/useDragDown.js +1 -0
- package/build/{esm/src → cjs}/shared/useHover.d.ts +1 -1
- package/build/cjs/shared/useHover.js +1 -0
- package/build/{esm/src → cjs}/shared/useKeyboard.d.ts +1 -1
- package/build/cjs/shared/useKeyboard.js +1 -0
- package/build/cjs/shared/useOnEscapePress.js +1 -0
- package/build/{esm/src → cjs}/shared/useOutsideClick.d.ts +1 -1
- package/build/cjs/shared/useOutsideClick.js +1 -0
- package/build/cjs/shared/useWindow.js +1 -0
- package/build/{esm/src → cjs}/types/index.d.ts +2 -1
- package/build/cjs/types/index.js +1 -0
- package/build/{esm/build-tokens → cjs/web-tokens}/_colors.json +16 -8
- package/build/{esm/build-tokens → cjs/web-tokens}/_sizes.json +236 -496
- package/build/cjs/web-tokens/_subThemeType.js +1 -0
- package/build/{esm/build-tokens → cjs/web-tokens}/visualConfig.d.ts +45 -109
- package/build/cjs/web-tokens/visualConfig.js +1 -0
- package/build/esm/components/Badge/Badge.d.ts +11 -0
- package/build/esm/components/Badge/Badge.js +1 -0
- package/build/esm/components/Box/Box.d.ts +36 -0
- package/build/esm/components/Box/Box.js +1 -0
- package/build/esm/components/Button/Button.d.ts +34 -0
- package/build/esm/components/Button/Button.js +1 -0
- package/build/esm/components/Callout/Callout.d.ts +15 -0
- package/build/esm/components/Callout/Callout.js +1 -0
- package/build/esm/components/Card/Card.d.ts +14 -0
- package/build/esm/components/Card/Card.js +1 -0
- package/build/esm/components/Card/CardBox.d.ts +6 -0
- package/build/esm/components/Card/CardBox.js +1 -0
- package/build/esm/components/Card/CardHeader/CardHeader.d.ts +10 -0
- package/build/esm/components/Card/CardHeader/CardHeader.js +1 -0
- package/build/esm/components/Collapsible/Collapsible.d.ts +15 -0
- package/build/esm/components/Collapsible/Collapsible.js +1 -0
- package/build/esm/components/Column/Columns.d.ts +45 -0
- package/build/esm/components/Column/Columns.js +1 -0
- package/build/esm/components/Container/Container.d.ts +14 -0
- package/build/esm/components/Container/Container.js +1 -0
- package/build/esm/components/DataTable/DataTable.d.ts +58 -0
- package/build/esm/components/DataTable/DataTable.js +1 -0
- package/build/esm/components/DataTable/TableBody.d.ts +9 -0
- package/build/esm/components/DataTable/TableBody.js +1 -0
- package/build/esm/components/DataTable/TableCell.d.ts +15 -0
- package/build/esm/components/DataTable/TableCell.js +1 -0
- package/build/esm/components/DataTable/TableHeader.d.ts +9 -0
- package/build/esm/components/DataTable/TableHeader.js +1 -0
- package/build/esm/components/DataTable/index.d.ts +4 -0
- package/build/esm/components/DataTable/index.js +1 -0
- package/build/esm/components/DataTable/types.d.ts +15 -0
- package/build/esm/components/DataTable/types.js +1 -0
- package/build/esm/components/DataTable/useDataTableSort.d.ts +14 -0
- package/build/esm/components/DataTable/useDataTableSort.js +1 -0
- package/build/esm/components/Divider/Divider.d.ts +6 -0
- package/build/esm/components/Divider/Divider.js +1 -0
- package/build/esm/components/DropdownMenu/DropdownMenu.d.ts +35 -0
- package/build/esm/components/DropdownMenu/DropdownMenu.js +1 -0
- package/build/esm/components/DropdownMenu/MenuItem.d.ts +18 -0
- package/build/esm/components/DropdownMenu/MenuItem.js +1 -0
- package/build/esm/components/Form/Checkbox/Checkbox.d.ts +26 -0
- package/build/esm/components/Form/Checkbox/Checkbox.js +1 -0
- package/build/esm/components/Form/FormErrorMessages/FormErrorMessages.d.ts +6 -0
- package/build/esm/components/Form/FormErrorMessages/FormErrorMessages.js +1 -0
- package/build/esm/components/Form/FormField/FormField.d.ts +15 -0
- package/build/esm/components/Form/FormField/FormField.js +3 -0
- package/build/esm/components/Form/FormFieldGroup/FormFieldGroup.d.ts +11 -0
- package/build/esm/components/Form/FormFieldGroup/FormFieldGroup.js +1 -0
- package/build/esm/components/Form/FormLabelText/FormLabelText.d.ts +7 -0
- package/build/esm/components/Form/FormLabelText/FormLabelText.js +1 -0
- package/build/esm/components/Form/Input/Input.d.ts +78 -0
- package/build/esm/components/Form/Input/Input.js +1 -0
- package/build/esm/components/Form/Input/index.d.ts +2 -0
- package/build/esm/components/Form/Input/index.js +1 -0
- package/build/esm/components/Form/PasswordInput/PasswordInput.d.ts +73 -0
- package/build/esm/components/Form/PasswordInput/PasswordInput.js +1 -0
- package/build/esm/components/Form/PasswordInput/index.d.ts +2 -0
- package/build/esm/components/Form/PasswordInput/index.js +1 -0
- package/build/esm/components/Form/Radio/Radio.d.ts +24 -0
- package/build/esm/components/Form/Radio/Radio.js +1 -0
- package/build/esm/components/Form/RadioButton/RadioButton.d.ts +17 -0
- package/build/esm/components/Form/RadioButton/RadioButton.js +1 -0
- package/build/esm/components/Form/SegmentedControl/-types.d.ts +48 -0
- package/build/esm/components/Form/SegmentedControl/-types.js +1 -0
- package/build/esm/components/Form/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/build/esm/components/Form/SegmentedControl/SegmentedControl.js +1 -0
- package/build/esm/components/Form/SegmentedControl/SegmentedControlOption.d.ts +3 -0
- package/build/esm/components/Form/SegmentedControl/SegmentedControlOption.js +1 -0
- package/build/esm/components/Form/Select/Select.d.ts +23 -0
- package/build/esm/components/Form/Select/Select.js +1 -0
- package/build/esm/components/Form/Textarea/Textarea.d.ts +48 -0
- package/build/esm/components/Form/Textarea/Textarea.js +1 -0
- package/build/esm/components/Form/Toggle/Toggle.d.ts +32 -0
- package/build/esm/components/Form/Toggle/Toggle.js +1 -0
- package/build/esm/components/Form/ToggleButton/ToggleButton.d.ts +26 -0
- package/build/esm/components/Form/ToggleButton/ToggleButton.js +1 -0
- package/build/esm/components/Icon/Icon.d.ts +22 -0
- package/build/esm/components/Icon/Icon.js +1 -0
- package/build/esm/components/Image/Image.d.ts +36 -0
- package/build/esm/components/Image/Image.js +1 -0
- package/build/esm/components/Inline/Inline.d.ts +30 -0
- package/build/esm/components/Inline/Inline.js +1 -0
- package/build/esm/components/Link/Link.d.ts +24 -0
- package/build/esm/components/Link/Link.js +1 -0
- package/build/esm/components/LoadingSpinner/LoadingSpinner.d.ts +11 -0
- package/build/esm/components/LoadingSpinner/LoadingSpinner.js +1 -0
- package/build/esm/components/Logo/Logo.d.ts +8 -0
- package/build/esm/components/Logo/Logo.js +1 -0
- package/build/esm/components/MediaItem/MediaItem.d.ts +14 -0
- package/build/esm/components/MediaItem/MediaItem.js +1 -0
- package/build/esm/components/MediaViewerBar/MediaViewerBar.d.ts +7 -0
- package/build/esm/components/MediaViewerBar/MediaViewerBar.js +1 -0
- package/build/esm/components/Notification/ExpandedContent.d.ts +2 -0
- package/build/esm/components/Notification/ExpandedContent.js +1 -0
- package/build/esm/components/Notification/Notification.d.ts +16 -0
- package/build/esm/components/Notification/Notification.js +1 -0
- package/build/esm/components/Pagination/Pagination.d.ts +17 -0
- package/build/esm/components/Pagination/Pagination.js +1 -0
- package/build/esm/components/Patterns/ButtonGroup/ButtonGroup.d.ts +14 -0
- package/build/esm/components/Patterns/ButtonGroup/ButtonGroup.js +1 -0
- package/build/esm/components/Patterns/Modal/Modal.d.ts +37 -0
- package/build/esm/components/Patterns/Modal/Modal.js +1 -0
- package/build/esm/components/PictogramButton/PictogramButton.d.ts +15 -0
- package/build/esm/components/PictogramButton/PictogramButton.js +1 -0
- package/build/esm/components/Popover/Popover.d.ts +5 -0
- package/build/esm/components/Popover/Popover.js +1 -0
- package/build/esm/components/Portal/Portal.d.ts +7 -0
- package/build/esm/components/Portal/Portal.js +1 -0
- package/build/esm/components/ProgressBar/ProgressBar.d.ts +15 -0
- package/build/esm/components/ProgressBar/ProgressBar.js +1 -0
- package/build/esm/components/RoundButton/RoundButton.d.ts +9 -0
- package/build/esm/components/RoundButton/RoundButton.js +1 -0
- package/build/esm/components/SearchResult/SearchResult.d.ts +39 -0
- package/build/esm/components/SearchResult/SearchResult.js +1 -0
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBar.d.ts +28 -0
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -0
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBarUtil.d.ts +10 -0
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +1 -0
- package/build/esm/components/ShadowWebComponent/ShadowWebComponent.d.ts +13 -0
- package/build/esm/components/ShadowWebComponent/ShadowWebComponent.js +1 -0
- package/build/esm/components/Sheet/Sheet.d.ts +16 -0
- package/build/esm/components/Sheet/Sheet.js +1 -0
- package/build/esm/components/Stack/Stack.d.ts +20 -0
- package/build/esm/components/Stack/Stack.js +1 -0
- package/build/esm/components/SubThemeProvider/SubThemeProvider.d.ts +8 -0
- package/build/esm/components/SubThemeProvider/SubThemeProvider.js +1 -0
- package/build/esm/components/Tabs/Tabs.d.ts +30 -0
- package/build/esm/components/Tabs/Tabs.js +1 -0
- package/build/esm/components/Tag/Tag.d.ts +19 -0
- package/build/esm/components/Tag/Tag.js +1 -0
- package/build/esm/components/TagGroup/TagGroup.d.ts +17 -0
- package/build/esm/components/TagGroup/TagGroup.js +1 -0
- package/build/esm/components/Toggletip/BasePopover.d.ts +18 -0
- package/build/esm/components/Toggletip/BasePopover.js +1 -0
- package/build/esm/components/Toggletip/Toggletip.d.ts +5 -0
- package/build/esm/components/Toggletip/Toggletip.js +1 -0
- package/build/esm/components/Tooltip/BaseTooltip.d.ts +11 -0
- package/build/esm/components/Tooltip/BaseTooltip.js +1 -0
- package/build/esm/components/Tooltip/Tooltip.d.ts +7 -0
- package/build/esm/components/Tooltip/Tooltip.js +1 -0
- package/build/esm/components/Tooltip/TooltipContent.d.ts +30 -0
- package/build/esm/components/Tooltip/TooltipContent.js +1 -0
- package/build/esm/components/Tooltip/types.d.ts +8 -0
- package/build/esm/components/Tooltip/types.js +1 -0
- package/build/esm/components/Tooltip/utils.d.ts +12 -0
- package/build/esm/components/Tooltip/utils.js +1 -0
- package/build/esm/components/Typography/Header/Header.d.ts +36 -0
- package/build/esm/components/Typography/Header/Header.js +1 -0
- package/build/esm/components/Typography/StyledText/StyledText.d.ts +11 -0
- package/build/esm/components/Typography/StyledText/StyledText.js +1 -0
- package/build/esm/components/Typography/Text/Text.d.ts +19 -0
- package/build/esm/components/Typography/Text/Text.js +1 -0
- package/build/esm/components/Typography/TextClamped/TextClamped.d.ts +10 -0
- package/build/esm/components/Typography/TextClamped/TextClamped.js +1 -0
- package/build/esm/components/UserHighlightTooltip/UserHighlightTooltip.d.ts +9 -0
- package/build/esm/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -0
- package/build/esm/components/VirtualScrollList/VirtualScrollList.d.ts +11 -0
- package/build/esm/components/VirtualScrollList/VirtualScrollList.js +1 -0
- package/build/esm/components/VirtualScrollList/VirtualScrollListReducer.d.ts +36 -0
- package/build/esm/components/VirtualScrollList/VirtualScrollListReducer.js +1 -0
- package/build/esm/index.d.ts +59 -0
- package/build/esm/index.js +1 -0
- package/build/esm/shared/FocusTrapWrapper.d.ts +10 -0
- package/build/esm/shared/FocusTrapWrapper.js +1 -0
- package/build/esm/shared/ScreenReaderText.d.ts +5 -0
- package/build/esm/shared/ScreenReaderText.js +1 -0
- package/build/esm/shared/flattenChildren.d.ts +11 -0
- package/build/esm/shared/flattenChildren.js +1 -0
- package/build/esm/shared/informDeprecation.d.ts +1 -0
- package/build/esm/shared/informDeprecation.js +2 -0
- package/build/esm/shared/mediaQueries.d.ts +14 -0
- package/build/esm/shared/mediaQueries.js +1 -0
- package/build/esm/shared/replaceDeprecated.d.ts +1 -0
- package/build/esm/shared/replaceDeprecated.js +2 -0
- package/build/esm/shared/useAutoPosition.d.ts +5 -0
- package/build/esm/shared/useAutoPosition.js +1 -0
- package/build/esm/shared/useDocument.d.ts +1 -0
- package/build/esm/shared/useDocument.js +1 -0
- package/build/esm/shared/useDragDown.d.ts +13 -0
- package/build/esm/shared/useDragDown.js +1 -0
- package/build/esm/shared/useHover.d.ts +2 -0
- package/build/esm/shared/useHover.js +1 -0
- package/build/esm/shared/useKeyboard.d.ts +17 -0
- package/build/esm/shared/useKeyboard.js +1 -0
- package/build/esm/shared/useOnEscapePress.d.ts +2 -0
- package/build/esm/shared/useOnEscapePress.js +1 -0
- package/build/esm/shared/useOutsideClick.d.ts +11 -0
- package/build/esm/shared/useOutsideClick.js +1 -0
- package/build/esm/shared/useWindow.d.ts +1 -0
- package/build/esm/shared/useWindow.js +1 -0
- package/build/esm/types/index.d.ts +60 -0
- package/build/esm/types/index.js +1 -0
- package/build/esm/web-tokens/_breakpoints.json +17 -0
- package/build/esm/web-tokens/_colors.json +1073 -0
- package/build/esm/web-tokens/_icon_sizes_map.json +7 -0
- package/build/esm/web-tokens/_sizes.json +472 -0
- package/build/esm/web-tokens/_subThemeType.d.ts +1 -0
- package/build/esm/web-tokens/_subThemeType.js +1 -0
- package/build/esm/web-tokens/_zindex.json +17 -0
- package/build/esm/web-tokens/assets/icons.json +144 -0
- package/build/esm/web-tokens/assets/icons16.json +155 -0
- package/build/esm/web-tokens/assets/logo.json +3 -0
- package/build/esm/web-tokens/visualConfig.d.ts +751 -0
- package/build/esm/web-tokens/visualConfig.js +1 -0
- package/build/scss/_theming.scss +4 -2
- package/build/scss/_variables.scss +2 -1
- package/package.json +53 -32
- package/build/cjs/build-tokens/_breakpoints.json.js +0 -10
- package/build/cjs/build-tokens/_icon_sizes_map.json.js +0 -5
- package/build/cjs/build-tokens/_zindex.json.js +0 -10
- package/build/cjs/build-tokens/assets/icons.json.js +0 -83
- package/build/cjs/build-tokens/assets/icons16.json.js +0 -88
- package/build/cjs/build-tokens/assets/logo.json.js +0 -7
- package/build/cjs/build-tokens/visualConfig.js +0 -1443
- package/build/cjs/src/components/Badge/Badge.js +0 -63
- package/build/cjs/src/components/Box/Box.js +0 -89
- package/build/cjs/src/components/Button/Button.js +0 -290
- package/build/cjs/src/components/Callout/Callout.js +0 -86
- package/build/cjs/src/components/Card/Card.js +0 -39
- package/build/cjs/src/components/Card/CardBox.js +0 -23
- package/build/cjs/src/components/Card/CardHeader/CardHeader.js +0 -59
- package/build/cjs/src/components/Collapsible/Collapsible.js +0 -117
- package/build/cjs/src/components/Column/Columns.js +0 -147
- package/build/cjs/src/components/Container/Container.js +0 -79
- package/build/cjs/src/components/DataTable/DataTable.js +0 -187
- package/build/cjs/src/components/DataTable/TableBody.js +0 -161
- package/build/cjs/src/components/DataTable/TableCell.js +0 -45
- package/build/cjs/src/components/DataTable/TableHeader.js +0 -194
- package/build/cjs/src/components/DataTable/useDataTableSort.js +0 -42
- package/build/cjs/src/components/Divider/Divider.js +0 -68
- package/build/cjs/src/components/DropdownMenu/DropdownMenu.js +0 -227
- package/build/cjs/src/components/DropdownMenu/MenuItem.js +0 -103
- package/build/cjs/src/components/Form/Checkbox/Checkbox.js +0 -148
- package/build/cjs/src/components/Form/FormErrorMessages/FormErrorMessages.js +0 -27
- package/build/cjs/src/components/Form/FormField/FormField.js +0 -58
- package/build/cjs/src/components/Form/FormFieldGroup/FormFieldGroup.js +0 -55
- package/build/cjs/src/components/Form/FormLabelText/FormLabelText.js +0 -42
- package/build/cjs/src/components/Form/Input/Input.js +0 -187
- package/build/cjs/src/components/Form/PasswordInput/PasswordInput.js +0 -227
- package/build/cjs/src/components/Form/Radio/Radio.js +0 -139
- package/build/cjs/src/components/Form/RadioButton/RadioButton.js +0 -124
- package/build/cjs/src/components/Form/SegmentedControl/SegmentedControl.js +0 -131
- package/build/cjs/src/components/Form/SegmentedControl/SegmentedControlOption.js +0 -259
- package/build/cjs/src/components/Form/Select/Select.js +0 -291
- package/build/cjs/src/components/Form/Textarea/Textarea.js +0 -94
- package/build/cjs/src/components/Form/Toggle/Toggle.js +0 -180
- package/build/cjs/src/components/Form/ToggleButton/ToggleButton.js +0 -144
- package/build/cjs/src/components/Icon/Icon.js +0 -110
- package/build/cjs/src/components/Inline/Inline.js +0 -113
- package/build/cjs/src/components/Link/Link.js +0 -86
- package/build/cjs/src/components/LoadingSpinner/LoadingSpinner.js +0 -84
- package/build/cjs/src/components/Logo/Logo.js +0 -44
- package/build/cjs/src/components/MediaItem/MediaItem.js +0 -122
- package/build/cjs/src/components/MediaViewerBar/MediaViewerBar.js +0 -73
- package/build/cjs/src/components/Notification/Notification.js +0 -108
- package/build/cjs/src/components/Pagination/Pagination.js +0 -91
- package/build/cjs/src/components/Patterns/ButtonGroup/ButtonGroup.js +0 -52
- package/build/cjs/src/components/Patterns/Modal/Modal.js +0 -223
- package/build/cjs/src/components/PictogramButton/PictogramButton.js +0 -151
- package/build/cjs/src/components/Popover/Popover.js +0 -26
- package/build/cjs/src/components/Portal/Portal.js +0 -22
- package/build/cjs/src/components/ProgressBar/ProgressBar.js +0 -38
- package/build/cjs/src/components/RoundButton/RoundButton.js +0 -141
- package/build/cjs/src/components/SearchResult/SearchResult.js +0 -233
- package/build/cjs/src/components/SegmentedProgressBar/SegmentedProgressBar.js +0 -110
- package/build/cjs/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +0 -42
- package/build/cjs/src/components/Sheet/Sheet.js +0 -315
- package/build/cjs/src/components/Stack/Stack.js +0 -80
- package/build/cjs/src/components/SubThemeProvider/SubThemeProvider.js +0 -55
- package/build/cjs/src/components/Tabs/Tabs.js +0 -147
- package/build/cjs/src/components/Tag/Tag.js +0 -92
- package/build/cjs/src/components/TagGroup/TagGroup.js +0 -118
- package/build/cjs/src/components/Toggletip/BasePopover.js +0 -183
- package/build/cjs/src/components/Toggletip/Toggletip.js +0 -18
- package/build/cjs/src/components/Tooltip/BaseTooltip.js +0 -163
- package/build/cjs/src/components/Tooltip/Tooltip.js +0 -27
- package/build/cjs/src/components/Tooltip/TooltipContent.js +0 -255
- package/build/cjs/src/components/Tooltip/utils.js +0 -99
- package/build/cjs/src/components/Typography/Header/Header.js +0 -140
- package/build/cjs/src/components/Typography/StyledText/StyledText.js +0 -168
- package/build/cjs/src/components/Typography/Text/Text.js +0 -111
- package/build/cjs/src/components/Typography/TextClamped/TextClamped.js +0 -54
- package/build/cjs/src/components/UserHighlightTooltip/UserHighlightTooltip.js +0 -132
- package/build/cjs/src/components/VirtualScrollList/VirtualScrollList.js +0 -116
- package/build/cjs/src/components/VirtualScrollList/VirtualScrollListReducer.js +0 -131
- package/build/cjs/src/index.js +0 -148
- package/build/cjs/src/shared/FocusTrapWrapper.js +0 -41
- package/build/cjs/src/shared/ScreenReaderText.js +0 -26
- package/build/cjs/src/shared/flattenChildren.js +0 -33
- package/build/cjs/src/shared/informDeprecation.js +0 -12
- package/build/cjs/src/shared/mediaQueries.js +0 -70
- package/build/cjs/src/shared/useAutoPosition.js +0 -42
- package/build/cjs/src/shared/useDocument.js +0 -7
- package/build/cjs/src/shared/useDragDown.js +0 -84
- package/build/cjs/src/shared/useHover.js +0 -26
- package/build/cjs/src/shared/useKeyboard.js +0 -43
- package/build/cjs/src/shared/useOnEscapePress.js +0 -52
- package/build/cjs/src/shared/useOutsideClick.js +0 -33
- package/build/cjs/src/shared/useWindow.js +0 -7
- package/build/esm/build-tokens/_breakpoints.json.js +0 -4
- package/build/esm/build-tokens/_breakpoints.json.js.map +0 -1
- package/build/esm/build-tokens/_icon_sizes_map.json.js +0 -4
- package/build/esm/build-tokens/_icon_sizes_map.json.js.map +0 -1
- package/build/esm/build-tokens/_zindex.json.js +0 -4
- package/build/esm/build-tokens/_zindex.json.js.map +0 -1
- package/build/esm/build-tokens/assets/icons.json.js +0 -4
- package/build/esm/build-tokens/assets/icons.json.js.map +0 -1
- package/build/esm/build-tokens/assets/icons16.json.js +0 -4
- package/build/esm/build-tokens/assets/icons16.json.js.map +0 -1
- package/build/esm/build-tokens/assets/logo.json.js +0 -4
- package/build/esm/build-tokens/assets/logo.json.js.map +0 -1
- package/build/esm/build-tokens/visualConfig.js +0 -1442
- package/build/esm/build-tokens/visualConfig.js.map +0 -1
- package/build/esm/src/components/Badge/Badge.js +0 -57
- package/build/esm/src/components/Badge/Badge.js.map +0 -1
- package/build/esm/src/components/Box/Box.js +0 -82
- package/build/esm/src/components/Box/Box.js.map +0 -1
- package/build/esm/src/components/Button/Button.js +0 -282
- package/build/esm/src/components/Button/Button.js.map +0 -1
- package/build/esm/src/components/Callout/Callout.js +0 -80
- package/build/esm/src/components/Callout/Callout.js.map +0 -1
- package/build/esm/src/components/Card/Card.js +0 -34
- package/build/esm/src/components/Card/Card.js.map +0 -1
- package/build/esm/src/components/Card/CardBox.js +0 -18
- package/build/esm/src/components/Card/CardBox.js.map +0 -1
- package/build/esm/src/components/Card/CardHeader/CardHeader.d.ts +0 -12
- package/build/esm/src/components/Card/CardHeader/CardHeader.js +0 -52
- package/build/esm/src/components/Card/CardHeader/CardHeader.js.map +0 -1
- package/build/esm/src/components/Collapsible/Collapsible.js +0 -110
- package/build/esm/src/components/Collapsible/Collapsible.js.map +0 -1
- package/build/esm/src/components/Column/Columns.js +0 -141
- package/build/esm/src/components/Column/Columns.js.map +0 -1
- package/build/esm/src/components/Container/Container.js +0 -73
- package/build/esm/src/components/Container/Container.js.map +0 -1
- package/build/esm/src/components/DataTable/DataTable.js +0 -180
- package/build/esm/src/components/DataTable/DataTable.js.map +0 -1
- package/build/esm/src/components/DataTable/TableBody.js +0 -153
- package/build/esm/src/components/DataTable/TableBody.js.map +0 -1
- package/build/esm/src/components/DataTable/TableCell.js +0 -38
- package/build/esm/src/components/DataTable/TableCell.js.map +0 -1
- package/build/esm/src/components/DataTable/TableHeader.js +0 -185
- package/build/esm/src/components/DataTable/TableHeader.js.map +0 -1
- package/build/esm/src/components/DataTable/useDataTableSort.js +0 -41
- package/build/esm/src/components/DataTable/useDataTableSort.js.map +0 -1
- package/build/esm/src/components/Divider/Divider.js +0 -62
- package/build/esm/src/components/Divider/Divider.js.map +0 -1
- package/build/esm/src/components/DropdownMenu/DropdownMenu.js +0 -221
- package/build/esm/src/components/DropdownMenu/DropdownMenu.js.map +0 -1
- package/build/esm/src/components/DropdownMenu/MenuItem.js +0 -97
- package/build/esm/src/components/DropdownMenu/MenuItem.js.map +0 -1
- package/build/esm/src/components/Form/Checkbox/Checkbox.js +0 -141
- package/build/esm/src/components/Form/Checkbox/Checkbox.js.map +0 -1
- package/build/esm/src/components/Form/FormErrorMessages/FormErrorMessages.js +0 -22
- package/build/esm/src/components/Form/FormErrorMessages/FormErrorMessages.js.map +0 -1
- package/build/esm/src/components/Form/FormField/FormField.js +0 -52
- package/build/esm/src/components/Form/FormField/FormField.js.map +0 -1
- package/build/esm/src/components/Form/FormFieldGroup/FormFieldGroup.js +0 -49
- package/build/esm/src/components/Form/FormFieldGroup/FormFieldGroup.js.map +0 -1
- package/build/esm/src/components/Form/FormLabelText/FormLabelText.js +0 -36
- package/build/esm/src/components/Form/FormLabelText/FormLabelText.js.map +0 -1
- package/build/esm/src/components/Form/Input/Input.js +0 -179
- package/build/esm/src/components/Form/Input/Input.js.map +0 -1
- package/build/esm/src/components/Form/PasswordInput/PasswordInput.js +0 -219
- package/build/esm/src/components/Form/PasswordInput/PasswordInput.js.map +0 -1
- package/build/esm/src/components/Form/Radio/Radio.js +0 -132
- package/build/esm/src/components/Form/Radio/Radio.js.map +0 -1
- package/build/esm/src/components/Form/RadioButton/RadioButton.js +0 -117
- package/build/esm/src/components/Form/RadioButton/RadioButton.js.map +0 -1
- package/build/esm/src/components/Form/SegmentedControl/SegmentedControl.js +0 -124
- package/build/esm/src/components/Form/SegmentedControl/SegmentedControl.js.map +0 -1
- package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.d.ts +0 -8
- package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.js +0 -253
- package/build/esm/src/components/Form/SegmentedControl/SegmentedControlOption.js.map +0 -1
- package/build/esm/src/components/Form/Select/Select.js +0 -284
- package/build/esm/src/components/Form/Select/Select.js.map +0 -1
- package/build/esm/src/components/Form/Textarea/Textarea.js +0 -87
- package/build/esm/src/components/Form/Textarea/Textarea.js.map +0 -1
- package/build/esm/src/components/Form/Toggle/Toggle.js +0 -173
- package/build/esm/src/components/Form/Toggle/Toggle.js.map +0 -1
- package/build/esm/src/components/Form/ToggleButton/ToggleButton.js +0 -137
- package/build/esm/src/components/Form/ToggleButton/ToggleButton.js.map +0 -1
- package/build/esm/src/components/Icon/Icon.js +0 -104
- package/build/esm/src/components/Icon/Icon.js.map +0 -1
- package/build/esm/src/components/Inline/Inline.js +0 -107
- package/build/esm/src/components/Inline/Inline.js.map +0 -1
- package/build/esm/src/components/Link/Link.js +0 -79
- package/build/esm/src/components/Link/Link.js.map +0 -1
- package/build/esm/src/components/LoadingSpinner/LoadingSpinner.js +0 -78
- package/build/esm/src/components/LoadingSpinner/LoadingSpinner.js.map +0 -1
- package/build/esm/src/components/Logo/Logo.js +0 -38
- package/build/esm/src/components/Logo/Logo.js.map +0 -1
- package/build/esm/src/components/MediaItem/MediaItem.js +0 -116
- package/build/esm/src/components/MediaItem/MediaItem.js.map +0 -1
- package/build/esm/src/components/MediaViewerBar/MediaViewerBar.js +0 -67
- package/build/esm/src/components/MediaViewerBar/MediaViewerBar.js.map +0 -1
- package/build/esm/src/components/Notification/Notification.js +0 -102
- package/build/esm/src/components/Notification/Notification.js.map +0 -1
- package/build/esm/src/components/Pagination/Pagination.js +0 -86
- package/build/esm/src/components/Pagination/Pagination.js.map +0 -1
- package/build/esm/src/components/Patterns/ButtonGroup/ButtonGroup.js +0 -46
- package/build/esm/src/components/Patterns/ButtonGroup/ButtonGroup.js.map +0 -1
- package/build/esm/src/components/Patterns/Modal/Modal.js +0 -216
- package/build/esm/src/components/Patterns/Modal/Modal.js.map +0 -1
- package/build/esm/src/components/PictogramButton/PictogramButton.js +0 -144
- package/build/esm/src/components/PictogramButton/PictogramButton.js.map +0 -1
- package/build/esm/src/components/Popover/Popover.js +0 -20
- package/build/esm/src/components/Popover/Popover.js.map +0 -1
- package/build/esm/src/components/Portal/Portal.js +0 -16
- package/build/esm/src/components/Portal/Portal.js.map +0 -1
- package/build/esm/src/components/ProgressBar/ProgressBar.js +0 -33
- package/build/esm/src/components/ProgressBar/ProgressBar.js.map +0 -1
- package/build/esm/src/components/RoundButton/RoundButton.js +0 -134
- package/build/esm/src/components/RoundButton/RoundButton.js.map +0 -1
- package/build/esm/src/components/SearchResult/SearchResult.js +0 -227
- package/build/esm/src/components/SearchResult/SearchResult.js.map +0 -1
- package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBar.js +0 -104
- package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBar.js.map +0 -1
- package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +0 -40
- package/build/esm/src/components/SegmentedProgressBar/SegmentedProgressBarUtil.js.map +0 -1
- package/build/esm/src/components/Sheet/Sheet.js +0 -308
- package/build/esm/src/components/Sheet/Sheet.js.map +0 -1
- package/build/esm/src/components/Stack/Stack.js +0 -74
- package/build/esm/src/components/Stack/Stack.js.map +0 -1
- package/build/esm/src/components/SubThemeProvider/SubThemeProvider.js +0 -50
- package/build/esm/src/components/SubThemeProvider/SubThemeProvider.js.map +0 -1
- package/build/esm/src/components/Tabs/Tabs.js +0 -140
- package/build/esm/src/components/Tabs/Tabs.js.map +0 -1
- package/build/esm/src/components/Tag/Tag.js +0 -85
- package/build/esm/src/components/Tag/Tag.js.map +0 -1
- package/build/esm/src/components/TagGroup/TagGroup.js +0 -112
- package/build/esm/src/components/TagGroup/TagGroup.js.map +0 -1
- package/build/esm/src/components/Toggletip/BasePopover.js +0 -177
- package/build/esm/src/components/Toggletip/BasePopover.js.map +0 -1
- package/build/esm/src/components/Toggletip/Toggletip.js +0 -12
- package/build/esm/src/components/Toggletip/Toggletip.js.map +0 -1
- package/build/esm/src/components/Tooltip/BaseTooltip.js +0 -158
- package/build/esm/src/components/Tooltip/BaseTooltip.js.map +0 -1
- package/build/esm/src/components/Tooltip/Tooltip.js +0 -21
- package/build/esm/src/components/Tooltip/Tooltip.js.map +0 -1
- package/build/esm/src/components/Tooltip/TooltipContent.js +0 -249
- package/build/esm/src/components/Tooltip/TooltipContent.js.map +0 -1
- package/build/esm/src/components/Tooltip/utils.js +0 -93
- package/build/esm/src/components/Tooltip/utils.js.map +0 -1
- package/build/esm/src/components/Typography/Header/Header.js +0 -130
- package/build/esm/src/components/Typography/Header/Header.js.map +0 -1
- package/build/esm/src/components/Typography/StyledText/StyledText.js +0 -161
- package/build/esm/src/components/Typography/StyledText/StyledText.js.map +0 -1
- package/build/esm/src/components/Typography/Text/Text.js +0 -102
- package/build/esm/src/components/Typography/Text/Text.js.map +0 -1
- package/build/esm/src/components/Typography/TextClamped/TextClamped.js +0 -47
- package/build/esm/src/components/Typography/TextClamped/TextClamped.js.map +0 -1
- package/build/esm/src/components/UserHighlightTooltip/UserHighlightTooltip.js +0 -127
- package/build/esm/src/components/UserHighlightTooltip/UserHighlightTooltip.js.map +0 -1
- package/build/esm/src/components/VirtualScrollList/VirtualScrollList.js +0 -110
- package/build/esm/src/components/VirtualScrollList/VirtualScrollList.js.map +0 -1
- package/build/esm/src/components/VirtualScrollList/VirtualScrollListReducer.js +0 -130
- package/build/esm/src/components/VirtualScrollList/VirtualScrollListReducer.js.map +0 -1
- package/build/esm/src/index.js +0 -65
- package/build/esm/src/index.js.map +0 -1
- package/build/esm/src/shared/FocusTrapWrapper.js +0 -35
- package/build/esm/src/shared/FocusTrapWrapper.js.map +0 -1
- package/build/esm/src/shared/ScreenReaderText.js +0 -21
- package/build/esm/src/shared/ScreenReaderText.js.map +0 -1
- package/build/esm/src/shared/flattenChildren.js +0 -32
- package/build/esm/src/shared/flattenChildren.js.map +0 -1
- package/build/esm/src/shared/informDeprecation.js +0 -11
- package/build/esm/src/shared/informDeprecation.js.map +0 -1
- package/build/esm/src/shared/mediaQueries.js +0 -68
- package/build/esm/src/shared/mediaQueries.js.map +0 -1
- package/build/esm/src/shared/useAutoPosition.js +0 -41
- package/build/esm/src/shared/useAutoPosition.js.map +0 -1
- package/build/esm/src/shared/useDocument.js +0 -6
- package/build/esm/src/shared/useDocument.js.map +0 -1
- package/build/esm/src/shared/useDragDown.js +0 -83
- package/build/esm/src/shared/useDragDown.js.map +0 -1
- package/build/esm/src/shared/useHover.js +0 -25
- package/build/esm/src/shared/useHover.js.map +0 -1
- package/build/esm/src/shared/useKeyboard.js +0 -42
- package/build/esm/src/shared/useKeyboard.js.map +0 -1
- package/build/esm/src/shared/useOnEscapePress.js +0 -51
- package/build/esm/src/shared/useOnEscapePress.js.map +0 -1
- package/build/esm/src/shared/useOutsideClick.js +0 -32
- package/build/esm/src/shared/useOutsideClick.js.map +0 -1
- package/build/esm/src/shared/useWindow.js +0 -6
- package/build/esm/src/shared/useWindow.js.map +0 -1
- /package/build/{esm/src → cjs}/components/Card/CardBox.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Collapsible/Collapsible.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/DataTable/TableBody.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/DataTable/TableCell.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/DataTable/TableHeader.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/DataTable/index.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Divider/Divider.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/FormErrorMessages/FormErrorMessages.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/FormField/FormField.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/FormFieldGroup/FormFieldGroup.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/FormLabelText/FormLabelText.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/Input/index.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Form/PasswordInput/index.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/LoadingSpinner/LoadingSpinner.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Logo/Logo.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/MediaItem/MediaItem.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Notification/ExpandedContent.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Pagination/Pagination.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/SegmentedProgressBar/SegmentedProgressBar.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/ShadowWebComponent/ShadowWebComponent.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Tag/Tag.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/Typography/StyledText/StyledText.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/UserHighlightTooltip/UserHighlightTooltip.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/VirtualScrollList/VirtualScrollList.d.ts +0 -0
- /package/build/{esm/src → cjs}/components/VirtualScrollList/VirtualScrollListReducer.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/FocusTrapWrapper.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/ScreenReaderText.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/informDeprecation.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/replaceDeprecated.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/useDocument.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/useOnEscapePress.d.ts +0 -0
- /package/build/{esm/src → cjs}/shared/useWindow.d.ts +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/_breakpoints.json +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/_icon_sizes_map.json +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/_subThemeType.d.ts +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/_zindex.json +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/assets/icons.json +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/assets/icons16.json +0 -0
- /package/build/{esm/build-tokens → cjs/web-tokens}/assets/logo.json +0 -0
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var React = require('react');
|
|
4
|
-
var TooltipContent = require('./TooltipContent.js');
|
|
5
|
-
|
|
6
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
7
|
-
|
|
8
|
-
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
9
|
-
|
|
10
|
-
const SHOW_HIDE_DELAY = 200;
|
|
11
|
-
function BaseTooltip(_ref) {
|
|
12
|
-
let {
|
|
13
|
-
placement = "auto",
|
|
14
|
-
content,
|
|
15
|
-
children,
|
|
16
|
-
externalTriggerRef,
|
|
17
|
-
portalContainer,
|
|
18
|
-
contentPadding,
|
|
19
|
-
maxWidth,
|
|
20
|
-
"data-e2e-test-id": dataE2eTestId,
|
|
21
|
-
onVisibilityChange
|
|
22
|
-
} = _ref;
|
|
23
|
-
const tooltipId = React.useMemo(() => `DSTooltip_${Math.floor(Date.now() * Math.random())}`, []);
|
|
24
|
-
const [isVisible, setVisible] = React.useState(false);
|
|
25
|
-
const triggeredByEvent = React.useRef(null); // indicates if triggered by hover or focus
|
|
26
|
-
const isTooltipHovered = React.useRef(false);
|
|
27
|
-
const isTriggerHovered = React.useRef(false);
|
|
28
|
-
const hideTooltipTimeoutId = React.useRef(null);
|
|
29
|
-
const showTooltipTimeoutId = React.useRef(null);
|
|
30
|
-
const internalTriggerRef = React.useRef(null);
|
|
31
|
-
const triggerRef = externalTriggerRef || internalTriggerRef;
|
|
32
|
-
const toggleVisibility = React.useCallback(status => {
|
|
33
|
-
setVisible(status);
|
|
34
|
-
if (onVisibilityChange) {
|
|
35
|
-
onVisibilityChange(status);
|
|
36
|
-
}
|
|
37
|
-
}, [onVisibilityChange]);
|
|
38
|
-
const handleTriggerPointerEnter = React.useCallback(() => {
|
|
39
|
-
isTriggerHovered.current = true;
|
|
40
|
-
if (!isTooltipHovered.current) {
|
|
41
|
-
clearTimeout(showTooltipTimeoutId.current);
|
|
42
|
-
// Delay show tooltip to prevent flickering when mouse moves quickly over trigger
|
|
43
|
-
showTooltipTimeoutId.current = setTimeout(() => {
|
|
44
|
-
if (isTriggerHovered.current) {
|
|
45
|
-
triggeredByEvent.current = "hover";
|
|
46
|
-
toggleVisibility(true);
|
|
47
|
-
}
|
|
48
|
-
}, SHOW_HIDE_DELAY);
|
|
49
|
-
}
|
|
50
|
-
}, [toggleVisibility]);
|
|
51
|
-
const handleTriggerPointerLeave = React.useCallback(() => {
|
|
52
|
-
isTriggerHovered.current = false;
|
|
53
|
-
clearTimeout(hideTooltipTimeoutId.current);
|
|
54
|
-
// Delay removing tooltip from DOM to allow hover over tooltip element
|
|
55
|
-
hideTooltipTimeoutId.current = setTimeout(() => {
|
|
56
|
-
if (!isTooltipHovered.current && triggeredByEvent.current === "hover" && !isTriggerHovered.current) {
|
|
57
|
-
toggleVisibility(false);
|
|
58
|
-
}
|
|
59
|
-
}, SHOW_HIDE_DELAY);
|
|
60
|
-
}, [toggleVisibility]);
|
|
61
|
-
const handleTriggerFocus = React.useCallback(() => {
|
|
62
|
-
triggeredByEvent.current = "focus";
|
|
63
|
-
toggleVisibility(true);
|
|
64
|
-
}, [toggleVisibility]);
|
|
65
|
-
const handleTriggerBlur = React.useCallback(() => {
|
|
66
|
-
if (triggeredByEvent.current === "focus") {
|
|
67
|
-
toggleVisibility(false);
|
|
68
|
-
}
|
|
69
|
-
}, [toggleVisibility]);
|
|
70
|
-
const handleTriggerKeyDown = React.useCallback(evt => {
|
|
71
|
-
if (evt.key === "Escape") {
|
|
72
|
-
toggleVisibility(false);
|
|
73
|
-
}
|
|
74
|
-
}, [toggleVisibility]);
|
|
75
|
-
const handleTooltipPointerEnter = () => {
|
|
76
|
-
isTooltipHovered.current = true;
|
|
77
|
-
};
|
|
78
|
-
const handleTooltipPointerLeave = () => {
|
|
79
|
-
isTooltipHovered.current = false;
|
|
80
|
-
if (triggeredByEvent.current === "hover") {
|
|
81
|
-
toggleVisibility(false);
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
React.useEffect(() => () => {
|
|
85
|
-
// clear timers
|
|
86
|
-
clearTimeout(showTooltipTimeoutId.current);
|
|
87
|
-
clearTimeout(hideTooltipTimeoutId.current);
|
|
88
|
-
}, []);
|
|
89
|
-
React.useEffect(() => {
|
|
90
|
-
let trigger;
|
|
91
|
-
if (externalTriggerRef?.current && !children) {
|
|
92
|
-
trigger = externalTriggerRef.current;
|
|
93
|
-
trigger.setAttribute("tabindex", "0");
|
|
94
|
-
trigger.addEventListener("pointerenter", handleTriggerPointerEnter);
|
|
95
|
-
trigger.addEventListener("pointerleave", handleTriggerPointerLeave);
|
|
96
|
-
trigger.addEventListener("focus", handleTriggerFocus);
|
|
97
|
-
trigger.addEventListener("blur", handleTriggerBlur);
|
|
98
|
-
trigger.addEventListener("keydown", handleTriggerKeyDown);
|
|
99
|
-
}
|
|
100
|
-
return () => {
|
|
101
|
-
if (trigger) {
|
|
102
|
-
trigger.removeEventListener("pointerenter", handleTriggerPointerEnter);
|
|
103
|
-
trigger.removeEventListener("pointerleave", handleTriggerPointerLeave);
|
|
104
|
-
trigger.removeEventListener("focus", handleTriggerFocus);
|
|
105
|
-
trigger.removeEventListener("blur", handleTriggerBlur);
|
|
106
|
-
trigger.removeEventListener("keydown", handleTriggerKeyDown);
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
}, [externalTriggerRef, children, handleTriggerPointerEnter, handleTriggerPointerLeave, handleTriggerFocus, handleTriggerBlur, handleTriggerKeyDown]);
|
|
110
|
-
React.useEffect(() => {
|
|
111
|
-
if (externalTriggerRef?.current && !children) {
|
|
112
|
-
const trigger = externalTriggerRef.current;
|
|
113
|
-
if (isVisible) {
|
|
114
|
-
trigger.setAttribute("aria-describedby", tooltipId);
|
|
115
|
-
} else {
|
|
116
|
-
trigger.removeAttribute("aria-describedby");
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}, [externalTriggerRef, children, tooltipId, isVisible]);
|
|
120
|
-
const triggerElm = children ? /*#__PURE__*/React__default.default.cloneElement(children, {
|
|
121
|
-
ref: triggerRef,
|
|
122
|
-
...(isVisible && {
|
|
123
|
-
"aria-describedby": tooltipId
|
|
124
|
-
}),
|
|
125
|
-
tabIndex: 0,
|
|
126
|
-
onPointerEnter: handleTriggerPointerEnter,
|
|
127
|
-
onPointerLeave: handleTriggerPointerLeave,
|
|
128
|
-
onFocus: evt => {
|
|
129
|
-
handleTriggerFocus();
|
|
130
|
-
if (children.props.onFocus) {
|
|
131
|
-
children.props.onFocus(evt);
|
|
132
|
-
}
|
|
133
|
-
},
|
|
134
|
-
onBlur: evt => {
|
|
135
|
-
handleTriggerBlur();
|
|
136
|
-
if (children.props.onBlur) {
|
|
137
|
-
if (children.props.onBlur) {
|
|
138
|
-
children.props.onBlur(evt);
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
},
|
|
142
|
-
onKeyDown: handleTriggerKeyDown
|
|
143
|
-
}) : null;
|
|
144
|
-
const tooltipElm = /*#__PURE__*/React__default.default.createElement(TooltipContent.TooltipContent, {
|
|
145
|
-
dataDSId: "Tooltip",
|
|
146
|
-
content: content,
|
|
147
|
-
placement: placement,
|
|
148
|
-
portalContainer: portalContainer,
|
|
149
|
-
dataE2eTestId: dataE2eTestId,
|
|
150
|
-
isVisible: isVisible,
|
|
151
|
-
tooltipId: tooltipId,
|
|
152
|
-
triggerRef: triggerRef,
|
|
153
|
-
"aria-hidden": true,
|
|
154
|
-
role: "tooltip",
|
|
155
|
-
contentPadding: contentPadding,
|
|
156
|
-
maxWidth: maxWidth,
|
|
157
|
-
onTooltipPointerEnter: handleTooltipPointerEnter,
|
|
158
|
-
onTooltipPointerLeave: handleTooltipPointerLeave
|
|
159
|
-
});
|
|
160
|
-
return /*#__PURE__*/React__default.default.createElement(React__default.default.Fragment, null, triggerElm, tooltipElm);
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
exports.BaseTooltip = BaseTooltip;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var _extends = require('@babel/runtime/helpers/extends');
|
|
4
|
-
var React = require('react');
|
|
5
|
-
var Text = require('../Typography/Text/Text.js');
|
|
6
|
-
var BaseTooltip = require('./BaseTooltip.js');
|
|
7
|
-
|
|
8
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
|
|
10
|
-
var _extends__default = /*#__PURE__*/_interopDefault(_extends);
|
|
11
|
-
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
12
|
-
|
|
13
|
-
function Tooltip(_ref) {
|
|
14
|
-
let {
|
|
15
|
-
content,
|
|
16
|
-
...rest
|
|
17
|
-
} = _ref;
|
|
18
|
-
const contentElm = /*#__PURE__*/React__default.default.createElement(Text.Text, {
|
|
19
|
-
size: "s"
|
|
20
|
-
}, content);
|
|
21
|
-
/* eslint-disable-next-line react/jsx-props-no-spreading */
|
|
22
|
-
return /*#__PURE__*/React__default.default.createElement(BaseTooltip.BaseTooltip, _extends__default.default({
|
|
23
|
-
content: contentElm
|
|
24
|
-
}, rest));
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
exports.Tooltip = Tooltip;
|
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var _styled = require('@emotion/styled/base');
|
|
4
|
-
var React = require('react');
|
|
5
|
-
var react = require('@emotion/react');
|
|
6
|
-
var ReactDOM = require('react-dom');
|
|
7
|
-
var useDocument = require('../../shared/useDocument.js');
|
|
8
|
-
var useWindow = require('../../shared/useWindow.js');
|
|
9
|
-
var SubThemeProvider = require('../SubThemeProvider/SubThemeProvider.js');
|
|
10
|
-
var _zindex = require('../../../build-tokens/_zindex.json.js');
|
|
11
|
-
var utils = require('./utils.js');
|
|
12
|
-
|
|
13
|
-
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
|
|
15
|
-
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
16
|
-
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
17
|
-
|
|
18
|
-
const ANIMATION_DURATION = 200;
|
|
19
|
-
const SHOW_HIDE_DELAY = 200;
|
|
20
|
-
const MAX_CONTENT_WIDTH = 224;
|
|
21
|
-
const StyledContainer = /*#__PURE__*/_styled__default.default("div", process.env.NODE_ENV === "production" ? {
|
|
22
|
-
target: "e1k814k41"
|
|
23
|
-
} : {
|
|
24
|
-
target: "e1k814k41",
|
|
25
|
-
label: "StyledContainer"
|
|
26
|
-
})(_ref => {
|
|
27
|
-
let {
|
|
28
|
-
theme,
|
|
29
|
-
horizontalPlacement,
|
|
30
|
-
verticalPlacement,
|
|
31
|
-
maxWidth,
|
|
32
|
-
contentPadding,
|
|
33
|
-
hasInvertedSubTheme = true
|
|
34
|
-
} = _ref;
|
|
35
|
-
const animationDistance = verticalPlacement === "top" ? `${utils.ANIMATION_DISTANCE}px` : `-${utils.ANIMATION_DISTANCE}px`;
|
|
36
|
-
const animation = react.keyframes({
|
|
37
|
-
to: {
|
|
38
|
-
opacity: 1,
|
|
39
|
-
transform: horizontalPlacement === "center" ? `translate(-50%, ${animationDistance})` : `translateY(${animationDistance})`
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
const contentPaddingMap = {
|
|
43
|
-
s: theme.variables.size.spacing.xxs,
|
|
44
|
-
m: theme.variables.size.spacing.s
|
|
45
|
-
};
|
|
46
|
-
const invertedSubThemeStyles = {
|
|
47
|
-
padding: `${theme.variables.size.spacing.xs} ${theme.variables.size.spacing.s}`,
|
|
48
|
-
...(contentPadding && {
|
|
49
|
-
padding: contentPaddingMap[contentPadding]
|
|
50
|
-
})
|
|
51
|
-
};
|
|
52
|
-
return {
|
|
53
|
-
position: "absolute",
|
|
54
|
-
zIndex: _zindex.default.tooltip.value,
|
|
55
|
-
opacity: 0,
|
|
56
|
-
animation: `${ANIMATION_DURATION}ms ease-out forwards ${animation}`,
|
|
57
|
-
maxWidth,
|
|
58
|
-
width: "max-content",
|
|
59
|
-
boxSizing: "border-box",
|
|
60
|
-
backgroundColor: hasInvertedSubTheme ? theme.values.color.background.primary.default : theme.values.color.background.elevated.default,
|
|
61
|
-
borderRadius: hasInvertedSubTheme ? theme.variables.size.borderRadius.xs : theme.variables.size.borderRadius.s,
|
|
62
|
-
...(hasInvertedSubTheme && invertedSubThemeStyles),
|
|
63
|
-
...(horizontalPlacement === "center" && {
|
|
64
|
-
transform: "translate(-50%)"
|
|
65
|
-
}),
|
|
66
|
-
...(!hasInvertedSubTheme && {
|
|
67
|
-
boxShadow: theme.values.elevation.c
|
|
68
|
-
})
|
|
69
|
-
};
|
|
70
|
-
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXBDb250ZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2RXdCIiwiZmlsZSI6IlRvb2x0aXBDb250ZW50LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBNdXRhYmxlUmVmT2JqZWN0LFxuICBSZWFjdEVsZW1lbnQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IGtleWZyYW1lcyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsIH0gZnJvbSBcInJlYWN0LWRvbVwiO1xuaW1wb3J0IHsgdXNlRG9jdW1lbnQgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL3VzZURvY3VtZW50XCI7XG5pbXBvcnQgeyB1c2VXaW5kb3cgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL3VzZVdpbmRvd1wiO1xuaW1wb3J0IHsgU3ViVGhlbWVQcm92aWRlciB9IGZyb20gXCIuLi9TdWJUaGVtZVByb3ZpZGVyL1N1YlRoZW1lUHJvdmlkZXJcIjtcbmltcG9ydCB6SW5kaWNlcyBmcm9tIFwiLi4vLi4vLi4vYnVpbGQtdG9rZW5zL196aW5kZXguanNvblwiO1xuXG5pbXBvcnQge1xuICBBTklNQVRJT05fRElTVEFOQ0UsXG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX1NJWkVfQklHLFxuICBESVNUQU5DRV9GUk9NX1RSSUdHRVIsXG4gIGdldEFycm93T2Zmc2V0LFxuICBnZXRUb29sdGlwU3R5bGUsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIFRvb2x0aXBDb250ZW50UHJvcHMgPSB7XG4gIGNvbnRlbnQ6IFJlYWN0RWxlbWVudDtcbiAgdHJpZ2dlclJlZjogTXV0YWJsZVJlZk9iamVjdDxhbnk+O1xuICAvKiBQbGFjZW1lbnQgKi9cbiAgcGxhY2VtZW50PzpcbiAgICB8IFwiYXV0b1wiXG4gICAgfCBcInRvcFwiXG4gICAgfCBcImJvdHRvbVwiXG4gICAgfCBcInRvcC1sZWZ0XCJcbiAgICB8IFwidG9wLXJpZ2h0XCJcbiAgICB8IFwiYm90dG9tLWxlZnRcIlxuICAgIHwgXCJib3R0b20tcmlnaHRcIjtcbiAgLyogQ3VzdG9tIHBvcnRhbCBjb250YWluZXIgdG8gcmVuZGVyIHRvb2x0aXAgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgZGF0YUUyZVRlc3RJZD86IHN0cmluZztcbiAgZGF0YURTSWQ6IHN0cmluZztcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgdG9vbHRpcElkPzogc3RyaW5nO1xuICBcImFyaWEtaGlkZGVuXCI/OiBib29sZWFuO1xuICByb2xlPzogc3RyaW5nO1xuICB0YWJJbmRleD86IG51bWJlcjtcbiAgLy8gQ29udGVudCBwYWRkaW5nXG4gIGNvbnRlbnRQYWRkaW5nPzogXCJzXCIgfCBcIm1cIjtcbiAgaGFzSW52ZXJ0ZWRTdWJUaGVtZT86IGJvb2xlYW47XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQ/OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyPzogUmVhY3QuUG9pbnRlckV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG4gIG9uVG9vbHRpcFBvaW50ZXJMZWF2ZT86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBoaWRlQXJyb3c/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVG9vbHRpcFN0eWxlID0ge1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBcImxlZnRcIiB8IFwicmlnaHRcIiB8IFwiY2VudGVyXCI7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBcInRvcFwiIHwgXCJib3R0b21cIjtcbn07XG5cbnR5cGUgU3R5bGVkQ29udGFpbmVyUHJvcHMgPSBQaWNrPFxuICBUb29sdGlwQ29udGVudFByb3BzLFxuICBcImNvbnRlbnRQYWRkaW5nXCIgfCBcIm1heFdpZHRoXCIgfCBcImhhc0ludmVydGVkU3ViVGhlbWVcIlxuPiAmIHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuY29uc3QgTUFYX0NPTlRFTlRfV0lEVEggPSAyMjQ7XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgbWF4V2lkdGgsXG4gICAgY29udGVudFBhZGRpbmcsXG4gICAgaGFzSW52ZXJ0ZWRTdWJUaGVtZSA9IHRydWUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGVudFBhZGRpbmdNYXAgPSB7XG4gICAgICBzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICAgIG06IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcucyxcbiAgICB9O1xuXG4gICAgY29uc3QgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyA9IHtcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG4gICAgICAuLi4oY29udGVudFBhZGRpbmcgJiYge1xuICAgICAgICBwYWRkaW5nOiBjb250ZW50UGFkZGluZ01hcFtjb250ZW50UGFkZGluZ10sXG4gICAgICB9KSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIG1heFdpZHRoLFxuICAgICAgd2lkdGg6IFwibWF4LWNvbnRlbnRcIixcbiAgICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IGhhc0ludmVydGVkU3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgYm9yZGVyUmFkaXVzOiBoYXNJbnZlcnRlZFN1YlRoZW1lXG4gICAgICAgID8gdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzXG4gICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnMsXG5cbiAgICAgIC4uLihoYXNJbnZlcnRlZFN1YlRoZW1lICYmIGludmVydGVkU3ViVGhlbWVTdHlsZXMpLFxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCIgJiYge1xuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgICB9KSxcbiAgICAgIC4uLighaGFzSW52ZXJ0ZWRTdWJUaGVtZSAmJiB7XG4gICAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5jLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0gUGljazxUb29sdGlwQ29udGVudFByb3BzLCBcImhhc0ludmVydGVkU3ViVGhlbWVcIj4gJiB7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgc2l6ZT86IDAgfCB0eXBlb2YgQVJST1dfU0laRSB8IHR5cGVvZiBBUlJPV19TSVpFX0JJRztcbn07XG5cbi8vIFRoaXMgY29udGFpbmVyIGlzIGxhcmdlIGVub3VnaCB0byBjb250YWluIHRoZSBhcnJvdyBzaGFkb3cgYmx1clxuY29uc3QgQVJST1dfQ09OVEFJTkVSX1dJRFRIID0gNDA7XG5cbmNvbnN0IFN0eWxlZEFycm93ID0gc3R5bGVkLmRpdjxTdHlsZWRBcnJvd1Byb3BzPihcbiAgKHtcbiAgICB0aGVtZSxcbiAgICBoYXNJbnZlcnRlZFN1YlRoZW1lLFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgc2l6ZSA9IEFSUk9XX1NJWkUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBvZmZzZXQgPSBnZXRBcnJvd09mZnNldChzaXplKTtcbiAgICBjb25zdCBhZGp1c3RtZW50Rm9yU2hhZG93ID0gaGFzSW52ZXJ0ZWRTdWJUaGVtZSA/IDAgOiAxO1xuICAgIGNvbnN0IGFycm93Q29udGFpbmVySGVpZ2h0ID0gc2l6ZSArIERJU1RBTkNFX0ZST01fVFJJR0dFUjtcbiAgICAvLyBHZXQgYXJyb3cgd2lkdGggYW5kIGhlaWdodCB1c2luZyBweXRob2dvcmFzIHRoZW9yZW0gYW5kIGFkZCAxIHRvIGhlaWdodCB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgc2hhZG93LlxuICAgIGNvbnN0IGFycm93U2lkZUxlbmd0aCA9IE1hdGguc3FydChcbiAgICAgIHNpemUgKiogMiArIChzaXplICsgYWRqdXN0bWVudEZvclNoYWRvdykgKiogMlxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgIHdpZHRoOiBBUlJPV19DT05UQUlORVJfV0lEVEgsXG4gICAgICBoZWlnaHQ6IGFycm93Q29udGFpbmVySGVpZ2h0LFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG5cbiAgICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICAgIC8vIHBsYWNlIHRoZSBhcnJvdyBjb250YWluZXIgMXB4IGluc2lkZSB0b29sdGlwIGNvbnRhaW5lciB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgYm94LXNoYWRvd1xuICAgICAgICB0b3A6IGBjYWxjKDEwMCUgLSAke2FkanVzdG1lbnRGb3JTaGFkb3d9cHgpYCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgLSR7YXJyb3dDb250YWluZXJIZWlnaHQgLSBhZGp1c3RtZW50Rm9yU2hhZG93fXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgICAgbGVmdDogYCR7b2Zmc2V0IC0gKEFSUk9XX0NPTlRBSU5FUl9XSURUSCAvIDIgLSBzaXplKX1weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwibGVmdFwiICYmIHtcbiAgICAgICAgcmlnaHQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIFwiJjo6YWZ0ZXJcIjoge1xuICAgICAgICBjb250ZW50OiAnXCIgXCInLFxuICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICB0b3A6IHZlcnRpY2FsUGxhY2VtZW50ID09PSBcInRvcFwiID8gMCA6IFwiMTAwJVwiLFxuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB3aWR0aDogYXJyb3dTaWRlTGVuZ3RoLFxuICAgICAgICBoZWlnaHQ6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBoYXNJbnZlcnRlZFN1YlRoZW1lXG4gICAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKVwiLFxuXG4gICAgICAgIC4uLighaGFzSW52ZXJ0ZWRTdWJUaGVtZSAmJiB7XG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uLmMsXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBpbml0aWFsU3R5bGU6IFRvb2x0aXBTdHlsZSA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuLyoqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgb3ZlcmxheSBmb3IgYm90aCBUb2dnbGV0aXAgYW5kIFRvb2x0aXAgY29tcG9uZW50cyAqL1xuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXBDb250ZW50KHtcbiAgcGxhY2VtZW50ID0gXCJhdXRvXCIsXG4gIGNvbnRlbnQsXG4gIHRvb2x0aXBJZCxcbiAgdHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBkYXRhRTJlVGVzdElkLFxuICBkYXRhRFNJZCxcbiAgaXNWaXNpYmxlLFxuICBcImFyaWEtaGlkZGVuXCI6IGFyaWFIaWRkZW4sXG4gIHJvbGUsXG4gIHRhYkluZGV4LFxuICBjb250ZW50UGFkZGluZyxcbiAgbWF4V2lkdGggPSBNQVhfQ09OVEVOVF9XSURUSCxcbiAgaGFzSW52ZXJ0ZWRTdWJUaGVtZSA9IHRydWUsXG4gIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyLFxuICBvblRvb2x0aXBQb2ludGVyTGVhdmUsXG4gIGhpZGVBcnJvdyA9IGZhbHNlLFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIGhhc0ludmVydGVkU3ViVGhlbWUgPyBBUlJPV19TSVpFIDogQVJST1dfU0laRV9CSUc7XG4gIH0sIFtoYXNJbnZlcnRlZFN1YlRoZW1lLCBoaWRlQXJyb3ddKTtcblxuICBjb25zdCBjYWxjdWxhdGVTdHlsZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIHRvb2x0aXBSZWYuY3VycmVudCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHRvb2x0aXAgc3R5bGVcbiAgICAgIHNldFN0eWxlKFxuICAgICAgICBnZXRUb29sdGlwU3R5bGUoXG4gICAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICAgIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgICAgICAgICB0cmlnZ2VyUmVmLFxuICAgICAgICAgIHRvb2x0aXBSZWYsXG4gICAgICAgICAgZG9jdW1lbnQsXG4gICAgICAgICAgd2luZG93LFxuICAgICAgICAgIGFycm93U2l6ZVxuICAgICAgICApXG4gICAgICApO1xuICAgIH1cbiAgfSwgW1xuICAgIHRyaWdnZXJSZWYsXG4gICAgdG9vbHRpcFJlZixcbiAgICBkb2N1bWVudCxcbiAgICB3aW5kb3csXG4gICAgcGxhY2VtZW50LFxuICAgIGFycm93U2l6ZSxcbiAgICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gIF0pO1xuXG4gIC8vIFRoaXMgbGF5b3V0IGVmZmVjdCB0byByZS1yZW5kZXIgd2l0aCB1cGRhdGVkIHBvc2l0aW9uIGFmdGVyIGRldGVybWluaW5nIGNvbnRlbnQgd2lkdGhcbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICBjYWxjdWxhdGVTdHlsZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIGNvbnRlbnRQYWRkaW5nLCBjb250ZW50XSk7XG5cbiAgLy8gUmUtcG9zaXRpb24gdG9vbHRpcCBpZiBpdCBtb3ZlcyBvdXQgb2YgdGhlIHZpZXdwb3J0IGJ5IDEwJSBhbmQgb24gd2luZG93IHJlc2l6ZVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBvYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXI7XG5cbiAgICBpZiAoXG4gICAgICB0eXBlb2YgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgIT09IFwidW5kZWZpbmVkXCIgJiZcbiAgICAgIGlzVmlzaWJsZSAmJlxuICAgICAgdG9vbHRpcFJlZi5jdXJyZW50XG4gICAgKSB7XG4gICAgICBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihcbiAgICAgICAgKGVudHJpZXMpID0+IHtcbiAgICAgICAgICBlbnRyaWVzLmZvckVhY2goKCkgPT4ge1xuICAgICAgICAgICAgY2FsY3VsYXRlU3R5bGUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICBvYnNlcnZlci5vYnNlcnZlKHRvb2x0aXBSZWYuY3VycmVudCk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7IC8vIHVzZSBjYXB0dXJlIGhlcmUgdG8gZGV0ZWN0IHNjcm9sbCBvbiBhbnkgcGFyZW50XG4gICAgfSBlbHNlIGlmICghaXNWaXNpYmxlKSB7XG4gICAgICAvLyBsb2cgdGltZSB3aGVuIHRvb2x0aXAgY2xvc2VzXG4gICAgICBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAob2JzZXJ2ZXIpIHtcbiAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgfVxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIiwgY2FsY3VsYXRlU3R5bGUpO1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgY2FsY3VsYXRlU3R5bGUpO1xuICAgIH07XG4gIH0sIFtpc1Zpc2libGUsIGNhbGN1bGF0ZVN0eWxlLCB3aW5kb3csIHRvb2x0aXBSZWZdKTtcblxuICBpZiAoIWlzVmlzaWJsZSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgdG9vbHRpcEVsbSA9IChcbiAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD17ZGF0YURTSWR9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB0b3A6IHN0eWxlLnRvcCxcbiAgICAgICAgbGVmdDogc3R5bGUubGVmdCxcbiAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICB9fVxuICAgICAgcmVmPXt0b29sdGlwUmVmfVxuICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgIHJvbGU9e3JvbGV9XG4gICAgICBhcmlhLWhpZGRlbj17YXJpYUhpZGRlbn1cbiAgICAgIGhhc0ludmVydGVkU3ViVGhlbWU9e2hhc0ludmVydGVkU3ViVGhlbWV9XG4gICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtzdHlsZS5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgbWF4V2lkdGg9e21heFdpZHRofVxuICAgICAgY29udGVudFBhZGRpbmc9e2NvbnRlbnRQYWRkaW5nfVxuICAgICAgb25Qb2ludGVyRW50ZXI9e29uVG9vbHRpcFBvaW50ZXJFbnRlcn1cbiAgICAgIG9uUG9pbnRlckxlYXZlPXtvblRvb2x0aXBQb2ludGVyTGVhdmV9XG4gICAgPlxuICAgICAge2NvbnRlbnR9XG4gICAgICB7IWhpZGVBcnJvdyAmJiAoXG4gICAgICAgIDxTdHlsZWRBcnJvd1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2Ake2RhdGFFMmVUZXN0SWR9X2Fycm93YH1cbiAgICAgICAgICBoYXNJbnZlcnRlZFN1YlRoZW1lPXtoYXNJbnZlcnRlZFN1YlRoZW1lfVxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgICAgIHNpemU9e2Fycm93U2l6ZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG5cbiAgY29uc3Qgd3JhcHBlckVsbSA9IGhhc0ludmVydGVkU3ViVGhlbWUgPyAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT1cImludmVydGVkXCI+e3Rvb2x0aXBFbG19PC9TdWJUaGVtZVByb3ZpZGVyPlxuICApIDogKFxuICAgIHRvb2x0aXBFbG1cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHdyYXBwZXJFbG0sIHBvcnRhbENvbnRhaW5lciB8fCBkb2N1bWVudC5ib2R5KTtcbn1cbiJdfQ== */");
|
|
71
|
-
// This container is large enough to contain the arrow shadow blur
|
|
72
|
-
const ARROW_CONTAINER_WIDTH = 40;
|
|
73
|
-
const StyledArrow = /*#__PURE__*/_styled__default.default("div", process.env.NODE_ENV === "production" ? {
|
|
74
|
-
target: "e1k814k40"
|
|
75
|
-
} : {
|
|
76
|
-
target: "e1k814k40",
|
|
77
|
-
label: "StyledArrow"
|
|
78
|
-
})(_ref2 => {
|
|
79
|
-
let {
|
|
80
|
-
theme,
|
|
81
|
-
hasInvertedSubTheme,
|
|
82
|
-
verticalPlacement,
|
|
83
|
-
horizontalPlacement,
|
|
84
|
-
size = utils.ARROW_SIZE
|
|
85
|
-
} = _ref2;
|
|
86
|
-
const offset = utils.getArrowOffset(size);
|
|
87
|
-
const adjustmentForShadow = hasInvertedSubTheme ? 0 : 1;
|
|
88
|
-
const arrowContainerHeight = size + utils.DISTANCE_FROM_TRIGGER;
|
|
89
|
-
// Get arrow width and height using pythogoras theorem and add 1 to height to account for dark mode shadow.
|
|
90
|
-
const arrowSideLength = Math.sqrt(size ** 2 + (size + adjustmentForShadow) ** 2);
|
|
91
|
-
return {
|
|
92
|
-
position: "absolute",
|
|
93
|
-
width: ARROW_CONTAINER_WIDTH,
|
|
94
|
-
height: arrowContainerHeight,
|
|
95
|
-
overflow: "hidden",
|
|
96
|
-
...(verticalPlacement === "top" && {
|
|
97
|
-
// place the arrow container 1px inside tooltip container to account for dark mode box-shadow
|
|
98
|
-
top: `calc(100% - ${adjustmentForShadow}px)`
|
|
99
|
-
}),
|
|
100
|
-
...(verticalPlacement === "bottom" && {
|
|
101
|
-
// place the arrow container 1px inside tooltip container to account for dark mode box-shadow
|
|
102
|
-
top: `-${arrowContainerHeight - adjustmentForShadow}px`
|
|
103
|
-
}),
|
|
104
|
-
...(horizontalPlacement === "center" && {
|
|
105
|
-
left: "50%",
|
|
106
|
-
transform: "translate(-50%)"
|
|
107
|
-
}),
|
|
108
|
-
...(horizontalPlacement === "right" && {
|
|
109
|
-
left: `${offset - (ARROW_CONTAINER_WIDTH / 2 - size)}px`
|
|
110
|
-
}),
|
|
111
|
-
...(horizontalPlacement === "left" && {
|
|
112
|
-
right: `${offset - (ARROW_CONTAINER_WIDTH / 2 - size)}px`
|
|
113
|
-
}),
|
|
114
|
-
"&::after": {
|
|
115
|
-
content: '" "',
|
|
116
|
-
position: "absolute",
|
|
117
|
-
top: verticalPlacement === "top" ? 0 : "100%",
|
|
118
|
-
left: "50%",
|
|
119
|
-
width: arrowSideLength,
|
|
120
|
-
height: arrowSideLength,
|
|
121
|
-
backgroundColor: hasInvertedSubTheme ? theme.values.color.background.primary.default : theme.values.color.background.elevated.default,
|
|
122
|
-
transform: "translate(-50%, -50%) rotate(45deg)",
|
|
123
|
-
...(!hasInvertedSubTheme && {
|
|
124
|
-
boxShadow: theme.values.elevation.c
|
|
125
|
-
})
|
|
126
|
-
}
|
|
127
|
-
};
|
|
128
|
-
}, process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlRvb2x0aXBDb250ZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtSm9CIiwiZmlsZSI6IlRvb2x0aXBDb250ZW50LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBNdXRhYmxlUmVmT2JqZWN0LFxuICBSZWFjdEVsZW1lbnQsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VFZmZlY3QsXG4gIHVzZUxheW91dEVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcbmltcG9ydCB7IGtleWZyYW1lcyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdFwiO1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsIH0gZnJvbSBcInJlYWN0LWRvbVwiO1xuaW1wb3J0IHsgdXNlRG9jdW1lbnQgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL3VzZURvY3VtZW50XCI7XG5pbXBvcnQgeyB1c2VXaW5kb3cgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL3VzZVdpbmRvd1wiO1xuaW1wb3J0IHsgU3ViVGhlbWVQcm92aWRlciB9IGZyb20gXCIuLi9TdWJUaGVtZVByb3ZpZGVyL1N1YlRoZW1lUHJvdmlkZXJcIjtcbmltcG9ydCB6SW5kaWNlcyBmcm9tIFwiLi4vLi4vLi4vYnVpbGQtdG9rZW5zL196aW5kZXguanNvblwiO1xuXG5pbXBvcnQge1xuICBBTklNQVRJT05fRElTVEFOQ0UsXG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX1NJWkVfQklHLFxuICBESVNUQU5DRV9GUk9NX1RSSUdHRVIsXG4gIGdldEFycm93T2Zmc2V0LFxuICBnZXRUb29sdGlwU3R5bGUsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIFRvb2x0aXBDb250ZW50UHJvcHMgPSB7XG4gIGNvbnRlbnQ6IFJlYWN0RWxlbWVudDtcbiAgdHJpZ2dlclJlZjogTXV0YWJsZVJlZk9iamVjdDxhbnk+O1xuICAvKiBQbGFjZW1lbnQgKi9cbiAgcGxhY2VtZW50PzpcbiAgICB8IFwiYXV0b1wiXG4gICAgfCBcInRvcFwiXG4gICAgfCBcImJvdHRvbVwiXG4gICAgfCBcInRvcC1sZWZ0XCJcbiAgICB8IFwidG9wLXJpZ2h0XCJcbiAgICB8IFwiYm90dG9tLWxlZnRcIlxuICAgIHwgXCJib3R0b20tcmlnaHRcIjtcbiAgLyogQ3VzdG9tIHBvcnRhbCBjb250YWluZXIgdG8gcmVuZGVyIHRvb2x0aXAgaW50byAqL1xuICBwb3J0YWxDb250YWluZXI/OiBIVE1MRWxlbWVudDtcbiAgZGF0YUUyZVRlc3RJZD86IHN0cmluZztcbiAgZGF0YURTSWQ6IHN0cmluZztcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgdG9vbHRpcElkPzogc3RyaW5nO1xuICBcImFyaWEtaGlkZGVuXCI/OiBib29sZWFuO1xuICByb2xlPzogc3RyaW5nO1xuICB0YWJJbmRleD86IG51bWJlcjtcbiAgLy8gQ29udGVudCBwYWRkaW5nXG4gIGNvbnRlbnRQYWRkaW5nPzogXCJzXCIgfCBcIm1cIjtcbiAgaGFzSW52ZXJ0ZWRTdWJUaGVtZT86IGJvb2xlYW47XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQ/OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyPzogUmVhY3QuUG9pbnRlckV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG4gIG9uVG9vbHRpcFBvaW50ZXJMZWF2ZT86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBoaWRlQXJyb3c/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgVG9vbHRpcFN0eWxlID0ge1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBcImxlZnRcIiB8IFwicmlnaHRcIiB8IFwiY2VudGVyXCI7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBcInRvcFwiIHwgXCJib3R0b21cIjtcbn07XG5cbnR5cGUgU3R5bGVkQ29udGFpbmVyUHJvcHMgPSBQaWNrPFxuICBUb29sdGlwQ29udGVudFByb3BzLFxuICBcImNvbnRlbnRQYWRkaW5nXCIgfCBcIm1heFdpZHRoXCIgfCBcImhhc0ludmVydGVkU3ViVGhlbWVcIlxuPiAmIHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuY29uc3QgTUFYX0NPTlRFTlRfV0lEVEggPSAyMjQ7XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgbWF4V2lkdGgsXG4gICAgY29udGVudFBhZGRpbmcsXG4gICAgaGFzSW52ZXJ0ZWRTdWJUaGVtZSA9IHRydWUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGVudFBhZGRpbmdNYXAgPSB7XG4gICAgICBzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICAgIG06IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcucyxcbiAgICB9O1xuXG4gICAgY29uc3QgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyA9IHtcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG4gICAgICAuLi4oY29udGVudFBhZGRpbmcgJiYge1xuICAgICAgICBwYWRkaW5nOiBjb250ZW50UGFkZGluZ01hcFtjb250ZW50UGFkZGluZ10sXG4gICAgICB9KSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiAwLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIG1heFdpZHRoLFxuICAgICAgd2lkdGg6IFwibWF4LWNvbnRlbnRcIixcbiAgICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IGhhc0ludmVydGVkU3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgYm9yZGVyUmFkaXVzOiBoYXNJbnZlcnRlZFN1YlRoZW1lXG4gICAgICAgID8gdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnhzXG4gICAgICAgIDogdGhlbWUudmFyaWFibGVzLnNpemUuYm9yZGVyUmFkaXVzLnMsXG5cbiAgICAgIC4uLihoYXNJbnZlcnRlZFN1YlRoZW1lICYmIGludmVydGVkU3ViVGhlbWVTdHlsZXMpLFxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCIgJiYge1xuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgICB9KSxcbiAgICAgIC4uLighaGFzSW52ZXJ0ZWRTdWJUaGVtZSAmJiB7XG4gICAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvbi5jLFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0gUGljazxUb29sdGlwQ29udGVudFByb3BzLCBcImhhc0ludmVydGVkU3ViVGhlbWVcIj4gJiB7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgc2l6ZT86IDAgfCB0eXBlb2YgQVJST1dfU0laRSB8IHR5cGVvZiBBUlJPV19TSVpFX0JJRztcbn07XG5cbi8vIFRoaXMgY29udGFpbmVyIGlzIGxhcmdlIGVub3VnaCB0byBjb250YWluIHRoZSBhcnJvdyBzaGFkb3cgYmx1clxuY29uc3QgQVJST1dfQ09OVEFJTkVSX1dJRFRIID0gNDA7XG5cbmNvbnN0IFN0eWxlZEFycm93ID0gc3R5bGVkLmRpdjxTdHlsZWRBcnJvd1Byb3BzPihcbiAgKHtcbiAgICB0aGVtZSxcbiAgICBoYXNJbnZlcnRlZFN1YlRoZW1lLFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgc2l6ZSA9IEFSUk9XX1NJWkUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBvZmZzZXQgPSBnZXRBcnJvd09mZnNldChzaXplKTtcbiAgICBjb25zdCBhZGp1c3RtZW50Rm9yU2hhZG93ID0gaGFzSW52ZXJ0ZWRTdWJUaGVtZSA/IDAgOiAxO1xuICAgIGNvbnN0IGFycm93Q29udGFpbmVySGVpZ2h0ID0gc2l6ZSArIERJU1RBTkNFX0ZST01fVFJJR0dFUjtcbiAgICAvLyBHZXQgYXJyb3cgd2lkdGggYW5kIGhlaWdodCB1c2luZyBweXRob2dvcmFzIHRoZW9yZW0gYW5kIGFkZCAxIHRvIGhlaWdodCB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgc2hhZG93LlxuICAgIGNvbnN0IGFycm93U2lkZUxlbmd0aCA9IE1hdGguc3FydChcbiAgICAgIHNpemUgKiogMiArIChzaXplICsgYWRqdXN0bWVudEZvclNoYWRvdykgKiogMlxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgIHdpZHRoOiBBUlJPV19DT05UQUlORVJfV0lEVEgsXG4gICAgICBoZWlnaHQ6IGFycm93Q29udGFpbmVySGVpZ2h0LFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG5cbiAgICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICAgIC8vIHBsYWNlIHRoZSBhcnJvdyBjb250YWluZXIgMXB4IGluc2lkZSB0b29sdGlwIGNvbnRhaW5lciB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgYm94LXNoYWRvd1xuICAgICAgICB0b3A6IGBjYWxjKDEwMCUgLSAke2FkanVzdG1lbnRGb3JTaGFkb3d9cHgpYCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgLSR7YXJyb3dDb250YWluZXJIZWlnaHQgLSBhZGp1c3RtZW50Rm9yU2hhZG93fXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgICAgbGVmdDogYCR7b2Zmc2V0IC0gKEFSUk9XX0NPTlRBSU5FUl9XSURUSCAvIDIgLSBzaXplKX1weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwibGVmdFwiICYmIHtcbiAgICAgICAgcmlnaHQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIFwiJjo6YWZ0ZXJcIjoge1xuICAgICAgICBjb250ZW50OiAnXCIgXCInLFxuICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICB0b3A6IHZlcnRpY2FsUGxhY2VtZW50ID09PSBcInRvcFwiID8gMCA6IFwiMTAwJVwiLFxuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB3aWR0aDogYXJyb3dTaWRlTGVuZ3RoLFxuICAgICAgICBoZWlnaHQ6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBoYXNJbnZlcnRlZFN1YlRoZW1lXG4gICAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLmVsZXZhdGVkLmRlZmF1bHQsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKVwiLFxuXG4gICAgICAgIC4uLighaGFzSW52ZXJ0ZWRTdWJUaGVtZSAmJiB7XG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uLmMsXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBpbml0aWFsU3R5bGU6IFRvb2x0aXBTdHlsZSA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuLyoqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgb3ZlcmxheSBmb3IgYm90aCBUb2dnbGV0aXAgYW5kIFRvb2x0aXAgY29tcG9uZW50cyAqL1xuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXBDb250ZW50KHtcbiAgcGxhY2VtZW50ID0gXCJhdXRvXCIsXG4gIGNvbnRlbnQsXG4gIHRvb2x0aXBJZCxcbiAgdHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBkYXRhRTJlVGVzdElkLFxuICBkYXRhRFNJZCxcbiAgaXNWaXNpYmxlLFxuICBcImFyaWEtaGlkZGVuXCI6IGFyaWFIaWRkZW4sXG4gIHJvbGUsXG4gIHRhYkluZGV4LFxuICBjb250ZW50UGFkZGluZyxcbiAgbWF4V2lkdGggPSBNQVhfQ09OVEVOVF9XSURUSCxcbiAgaGFzSW52ZXJ0ZWRTdWJUaGVtZSA9IHRydWUsXG4gIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyLFxuICBvblRvb2x0aXBQb2ludGVyTGVhdmUsXG4gIGhpZGVBcnJvdyA9IGZhbHNlLFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIGhhc0ludmVydGVkU3ViVGhlbWUgPyBBUlJPV19TSVpFIDogQVJST1dfU0laRV9CSUc7XG4gIH0sIFtoYXNJbnZlcnRlZFN1YlRoZW1lLCBoaWRlQXJyb3ddKTtcblxuICBjb25zdCBjYWxjdWxhdGVTdHlsZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIHRvb2x0aXBSZWYuY3VycmVudCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHRvb2x0aXAgc3R5bGVcbiAgICAgIHNldFN0eWxlKFxuICAgICAgICBnZXRUb29sdGlwU3R5bGUoXG4gICAgICAgICAgcGxhY2VtZW50LFxuICAgICAgICAgIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgICAgICAgICB0cmlnZ2VyUmVmLFxuICAgICAgICAgIHRvb2x0aXBSZWYsXG4gICAgICAgICAgZG9jdW1lbnQsXG4gICAgICAgICAgd2luZG93LFxuICAgICAgICAgIGFycm93U2l6ZVxuICAgICAgICApXG4gICAgICApO1xuICAgIH1cbiAgfSwgW1xuICAgIHRyaWdnZXJSZWYsXG4gICAgdG9vbHRpcFJlZixcbiAgICBkb2N1bWVudCxcbiAgICB3aW5kb3csXG4gICAgcGxhY2VtZW50LFxuICAgIGFycm93U2l6ZSxcbiAgICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gIF0pO1xuXG4gIC8vIFRoaXMgbGF5b3V0IGVmZmVjdCB0byByZS1yZW5kZXIgd2l0aCB1cGRhdGVkIHBvc2l0aW9uIGFmdGVyIGRldGVybWluaW5nIGNvbnRlbnQgd2lkdGhcbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICBjYWxjdWxhdGVTdHlsZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIGNvbnRlbnRQYWRkaW5nLCBjb250ZW50XSk7XG5cbiAgLy8gUmUtcG9zaXRpb24gdG9vbHRpcCBpZiBpdCBtb3ZlcyBvdXQgb2YgdGhlIHZpZXdwb3J0IGJ5IDEwJSBhbmQgb24gd2luZG93IHJlc2l6ZVxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBvYnNlcnZlcjogSW50ZXJzZWN0aW9uT2JzZXJ2ZXI7XG5cbiAgICBpZiAoXG4gICAgICB0eXBlb2YgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgIT09IFwidW5kZWZpbmVkXCIgJiZcbiAgICAgIGlzVmlzaWJsZSAmJlxuICAgICAgdG9vbHRpcFJlZi5jdXJyZW50XG4gICAgKSB7XG4gICAgICBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihcbiAgICAgICAgKGVudHJpZXMpID0+IHtcbiAgICAgICAgICBlbnRyaWVzLmZvckVhY2goKCkgPT4ge1xuICAgICAgICAgICAgY2FsY3VsYXRlU3R5bGUoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHRocmVzaG9sZDogMC45LFxuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgICBvYnNlcnZlci5vYnNlcnZlKHRvb2x0aXBSZWYuY3VycmVudCk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7IC8vIHVzZSBjYXB0dXJlIGhlcmUgdG8gZGV0ZWN0IHNjcm9sbCBvbiBhbnkgcGFyZW50XG4gICAgfSBlbHNlIGlmICghaXNWaXNpYmxlKSB7XG4gICAgICAvLyBsb2cgdGltZSB3aGVuIHRvb2x0aXAgY2xvc2VzXG4gICAgICBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAob2JzZXJ2ZXIpIHtcbiAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAgICAgfVxuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIiwgY2FsY3VsYXRlU3R5bGUpO1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIiwgY2FsY3VsYXRlU3R5bGUpO1xuICAgIH07XG4gIH0sIFtpc1Zpc2libGUsIGNhbGN1bGF0ZVN0eWxlLCB3aW5kb3csIHRvb2x0aXBSZWZdKTtcblxuICBpZiAoIWlzVmlzaWJsZSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgdG9vbHRpcEVsbSA9IChcbiAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD17ZGF0YURTSWR9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB0b3A6IHN0eWxlLnRvcCxcbiAgICAgICAgbGVmdDogc3R5bGUubGVmdCxcbiAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICB9fVxuICAgICAgcmVmPXt0b29sdGlwUmVmfVxuICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgIHJvbGU9e3JvbGV9XG4gICAgICBhcmlhLWhpZGRlbj17YXJpYUhpZGRlbn1cbiAgICAgIGhhc0ludmVydGVkU3ViVGhlbWU9e2hhc0ludmVydGVkU3ViVGhlbWV9XG4gICAgICB0YWJJbmRleD17dGFiSW5kZXh9XG4gICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtzdHlsZS5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgbWF4V2lkdGg9e21heFdpZHRofVxuICAgICAgY29udGVudFBhZGRpbmc9e2NvbnRlbnRQYWRkaW5nfVxuICAgICAgb25Qb2ludGVyRW50ZXI9e29uVG9vbHRpcFBvaW50ZXJFbnRlcn1cbiAgICAgIG9uUG9pbnRlckxlYXZlPXtvblRvb2x0aXBQb2ludGVyTGVhdmV9XG4gICAgPlxuICAgICAge2NvbnRlbnR9XG4gICAgICB7IWhpZGVBcnJvdyAmJiAoXG4gICAgICAgIDxTdHlsZWRBcnJvd1xuICAgICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2Ake2RhdGFFMmVUZXN0SWR9X2Fycm93YH1cbiAgICAgICAgICBoYXNJbnZlcnRlZFN1YlRoZW1lPXtoYXNJbnZlcnRlZFN1YlRoZW1lfVxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgICAgIHNpemU9e2Fycm93U2l6ZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG5cbiAgY29uc3Qgd3JhcHBlckVsbSA9IGhhc0ludmVydGVkU3ViVGhlbWUgPyAoXG4gICAgPFN1YlRoZW1lUHJvdmlkZXIgbmFtZT1cImludmVydGVkXCI+e3Rvb2x0aXBFbG19PC9TdWJUaGVtZVByb3ZpZGVyPlxuICApIDogKFxuICAgIHRvb2x0aXBFbG1cbiAgKTtcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKHdyYXBwZXJFbG0sIHBvcnRhbENvbnRhaW5lciB8fCBkb2N1bWVudC5ib2R5KTtcbn1cbiJdfQ== */");
|
|
129
|
-
const initialStyle = {
|
|
130
|
-
top: 0,
|
|
131
|
-
left: 0,
|
|
132
|
-
verticalPlacement: "top",
|
|
133
|
-
horizontalPlacement: "center"
|
|
134
|
-
};
|
|
135
|
-
let lastTooltipHideTimestamp = 0;
|
|
136
|
-
|
|
137
|
-
/* Disable animation if time between last close and new open is less than 500ms + SHOW_HIDE_DELAY */
|
|
138
|
-
function getAnimationDuration() {
|
|
139
|
-
let animationDuration = `${ANIMATION_DURATION}ms`;
|
|
140
|
-
if (lastTooltipHideTimestamp) {
|
|
141
|
-
const timeSinceLastTooltip = Date.now() - lastTooltipHideTimestamp;
|
|
142
|
-
if (timeSinceLastTooltip < 500 + SHOW_HIDE_DELAY) {
|
|
143
|
-
animationDuration = "0ms";
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
return animationDuration;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
/** This component is used to display the overlay for both Toggletip and Tooltip components */
|
|
150
|
-
function TooltipContent(_ref3) {
|
|
151
|
-
let {
|
|
152
|
-
placement = "auto",
|
|
153
|
-
content,
|
|
154
|
-
tooltipId,
|
|
155
|
-
triggerRef,
|
|
156
|
-
portalContainer,
|
|
157
|
-
dataE2eTestId,
|
|
158
|
-
dataDSId,
|
|
159
|
-
isVisible,
|
|
160
|
-
"aria-hidden": ariaHidden,
|
|
161
|
-
role,
|
|
162
|
-
tabIndex,
|
|
163
|
-
contentPadding,
|
|
164
|
-
maxWidth = MAX_CONTENT_WIDTH,
|
|
165
|
-
hasInvertedSubTheme = true,
|
|
166
|
-
defaultVerticalPlacement,
|
|
167
|
-
onTooltipPointerEnter,
|
|
168
|
-
onTooltipPointerLeave,
|
|
169
|
-
hideArrow = false
|
|
170
|
-
} = _ref3;
|
|
171
|
-
const [style, setStyle] = React.useState(initialStyle);
|
|
172
|
-
const tooltipRef = React.useRef(null);
|
|
173
|
-
const document = useDocument.useDocument();
|
|
174
|
-
const window = useWindow.useWindow();
|
|
175
|
-
const arrowSize = React.useMemo(() => {
|
|
176
|
-
if (hideArrow) {
|
|
177
|
-
return 0;
|
|
178
|
-
}
|
|
179
|
-
return hasInvertedSubTheme ? utils.ARROW_SIZE : utils.ARROW_SIZE_BIG;
|
|
180
|
-
}, [hasInvertedSubTheme, hideArrow]);
|
|
181
|
-
const calculateStyle = React.useCallback(() => {
|
|
182
|
-
if (triggerRef.current && tooltipRef.current) {
|
|
183
|
-
// calculate tooltip style
|
|
184
|
-
setStyle(utils.getTooltipStyle(placement, defaultVerticalPlacement, triggerRef, tooltipRef, document, window, arrowSize));
|
|
185
|
-
}
|
|
186
|
-
}, [triggerRef, tooltipRef, document, window, placement, arrowSize, defaultVerticalPlacement]);
|
|
187
|
-
|
|
188
|
-
// This layout effect to re-render with updated position after determining content width
|
|
189
|
-
React.useLayoutEffect(() => {
|
|
190
|
-
if (isVisible) {
|
|
191
|
-
calculateStyle();
|
|
192
|
-
}
|
|
193
|
-
}, [isVisible, calculateStyle, contentPadding, content]);
|
|
194
|
-
|
|
195
|
-
// Re-position tooltip if it moves out of the viewport by 10% and on window resize
|
|
196
|
-
React.useEffect(() => {
|
|
197
|
-
let observer;
|
|
198
|
-
if (typeof IntersectionObserver !== "undefined" && isVisible && tooltipRef.current) {
|
|
199
|
-
observer = new IntersectionObserver(entries => {
|
|
200
|
-
entries.forEach(() => {
|
|
201
|
-
calculateStyle();
|
|
202
|
-
});
|
|
203
|
-
}, {
|
|
204
|
-
threshold: 0.9
|
|
205
|
-
});
|
|
206
|
-
observer.observe(tooltipRef.current);
|
|
207
|
-
window.addEventListener("resize", calculateStyle);
|
|
208
|
-
window.addEventListener("scroll", calculateStyle, true); // use capture here to detect scroll on any parent
|
|
209
|
-
} else if (!isVisible) {
|
|
210
|
-
// log time when tooltip closes
|
|
211
|
-
lastTooltipHideTimestamp = Date.now();
|
|
212
|
-
}
|
|
213
|
-
return () => {
|
|
214
|
-
if (observer) {
|
|
215
|
-
observer.disconnect();
|
|
216
|
-
}
|
|
217
|
-
window.removeEventListener("resize", calculateStyle);
|
|
218
|
-
window.removeEventListener("scroll", calculateStyle);
|
|
219
|
-
};
|
|
220
|
-
}, [isVisible, calculateStyle, window, tooltipRef]);
|
|
221
|
-
if (!isVisible) return null;
|
|
222
|
-
const tooltipElm = /*#__PURE__*/React__default.default.createElement(StyledContainer, {
|
|
223
|
-
"data-e2e-test-id": dataE2eTestId,
|
|
224
|
-
"data-ds-id": dataDSId,
|
|
225
|
-
style: {
|
|
226
|
-
top: style.top,
|
|
227
|
-
left: style.left,
|
|
228
|
-
animationDuration: getAnimationDuration()
|
|
229
|
-
},
|
|
230
|
-
ref: tooltipRef,
|
|
231
|
-
id: tooltipId,
|
|
232
|
-
role: role,
|
|
233
|
-
"aria-hidden": ariaHidden,
|
|
234
|
-
hasInvertedSubTheme: hasInvertedSubTheme,
|
|
235
|
-
tabIndex: tabIndex,
|
|
236
|
-
horizontalPlacement: style.horizontalPlacement,
|
|
237
|
-
verticalPlacement: style.verticalPlacement,
|
|
238
|
-
maxWidth: maxWidth,
|
|
239
|
-
contentPadding: contentPadding,
|
|
240
|
-
onPointerEnter: onTooltipPointerEnter,
|
|
241
|
-
onPointerLeave: onTooltipPointerLeave
|
|
242
|
-
}, content, !hideArrow && /*#__PURE__*/React__default.default.createElement(StyledArrow, {
|
|
243
|
-
"data-e2e-test-id": `${dataE2eTestId}_arrow`,
|
|
244
|
-
hasInvertedSubTheme: hasInvertedSubTheme,
|
|
245
|
-
horizontalPlacement: style.horizontalPlacement,
|
|
246
|
-
verticalPlacement: style.verticalPlacement,
|
|
247
|
-
size: arrowSize
|
|
248
|
-
}));
|
|
249
|
-
const wrapperElm = hasInvertedSubTheme ? /*#__PURE__*/React__default.default.createElement(SubThemeProvider.SubThemeProvider, {
|
|
250
|
-
name: "inverted"
|
|
251
|
-
}, tooltipElm) : tooltipElm;
|
|
252
|
-
return /*#__PURE__*/ReactDOM.createPortal(wrapperElm, portalContainer || document.body);
|
|
253
|
-
}
|
|
254
|
-
|
|
255
|
-
exports.TooltipContent = TooltipContent;
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
const DISTANCE_FROM_TRIGGER = 4;
|
|
4
|
-
const ANIMATION_DISTANCE = 8;
|
|
5
|
-
const ARROW_SIZE = 6;
|
|
6
|
-
const ARROW_SIZE_BIG = 8;
|
|
7
|
-
const getArrowOffset = size => size * 2;
|
|
8
|
-
/**
|
|
9
|
-
* Get tooltip position and width
|
|
10
|
-
*/
|
|
11
|
-
function getTooltipStyle(placement) {
|
|
12
|
-
let defaultVerticalPlacement = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "top";
|
|
13
|
-
let triggerRef = arguments.length > 2 ? arguments[2] : undefined;
|
|
14
|
-
let tooltipRef = arguments.length > 3 ? arguments[3] : undefined;
|
|
15
|
-
let document = arguments.length > 4 ? arguments[4] : undefined;
|
|
16
|
-
let window = arguments.length > 5 ? arguments[5] : undefined;
|
|
17
|
-
let arrowSize = arguments.length > 6 ? arguments[6] : undefined;
|
|
18
|
-
const triggerRect = triggerRef.current.getBoundingClientRect();
|
|
19
|
-
const tooltipRect = tooltipRef.current.getBoundingClientRect();
|
|
20
|
-
const viewportWidth = document.documentElement.clientWidth;
|
|
21
|
-
const viewportHeight = document.documentElement.clientHeight;
|
|
22
|
-
let top = 0;
|
|
23
|
-
let left = 0;
|
|
24
|
-
let verticalPlacement = defaultVerticalPlacement;
|
|
25
|
-
let horizontalPlacement = "center";
|
|
26
|
-
const arrowOffset = getArrowOffset(arrowSize);
|
|
27
|
-
const tooltipMargin = arrowSize + ANIMATION_DISTANCE + DISTANCE_FROM_TRIGGER;
|
|
28
|
-
switch (placement) {
|
|
29
|
-
case "top":
|
|
30
|
-
case "bottom":
|
|
31
|
-
verticalPlacement = placement;
|
|
32
|
-
break;
|
|
33
|
-
case "top-left":
|
|
34
|
-
case "top-right":
|
|
35
|
-
case "bottom-left":
|
|
36
|
-
case "bottom-right":
|
|
37
|
-
{
|
|
38
|
-
const placements = placement.split("-");
|
|
39
|
-
verticalPlacement = placements[0];
|
|
40
|
-
horizontalPlacement = placements[1];
|
|
41
|
-
break;
|
|
42
|
-
}
|
|
43
|
-
default:
|
|
44
|
-
// If there is no space for the default vertical position of the trigger place it on the opposite side
|
|
45
|
-
if (verticalPlacement === "top") {
|
|
46
|
-
if (triggerRect.top < tooltipRect.height) {
|
|
47
|
-
verticalPlacement = "bottom";
|
|
48
|
-
}
|
|
49
|
-
} else if (verticalPlacement === "bottom") {
|
|
50
|
-
// Check if there is no space at the bottom
|
|
51
|
-
if (triggerRect.bottom + tooltipRect.height > viewportHeight) {
|
|
52
|
-
// Check if there is space at the top
|
|
53
|
-
if (triggerRect.top > tooltipRect.height) {
|
|
54
|
-
verticalPlacement = "top";
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// Check if we have space on the left for half of the tooltip width
|
|
60
|
-
if (triggerRect.left >= tooltipRect.width / 2) {
|
|
61
|
-
// Check if we have space on the right for half of the tooltip width
|
|
62
|
-
if (triggerRect.left + triggerRect.width / 2 + tooltipRect.width / 2 > viewportWidth) {
|
|
63
|
-
// no space on the right
|
|
64
|
-
horizontalPlacement = "left";
|
|
65
|
-
}
|
|
66
|
-
} else {
|
|
67
|
-
// We don't have space on the left
|
|
68
|
-
horizontalPlacement = "right";
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
if (verticalPlacement === "top") {
|
|
72
|
-
top = triggerRect.top - tooltipRect.height - tooltipMargin;
|
|
73
|
-
} else {
|
|
74
|
-
top = triggerRect.bottom + tooltipMargin;
|
|
75
|
-
}
|
|
76
|
-
switch (horizontalPlacement) {
|
|
77
|
-
case "left":
|
|
78
|
-
left = triggerRect.left + triggerRect.width / 2 - tooltipRect.width + arrowOffset + arrowSize;
|
|
79
|
-
break;
|
|
80
|
-
case "right":
|
|
81
|
-
left = triggerRect.left + triggerRect.width / 2 - arrowOffset - arrowSize;
|
|
82
|
-
break;
|
|
83
|
-
default:
|
|
84
|
-
left = triggerRect.left + triggerRect.width / 2;
|
|
85
|
-
}
|
|
86
|
-
return {
|
|
87
|
-
top: top + window.scrollY,
|
|
88
|
-
left: left + window.scrollX,
|
|
89
|
-
horizontalPlacement,
|
|
90
|
-
verticalPlacement
|
|
91
|
-
};
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
exports.ANIMATION_DISTANCE = ANIMATION_DISTANCE;
|
|
95
|
-
exports.ARROW_SIZE = ARROW_SIZE;
|
|
96
|
-
exports.ARROW_SIZE_BIG = ARROW_SIZE_BIG;
|
|
97
|
-
exports.DISTANCE_FROM_TRIGGER = DISTANCE_FROM_TRIGGER;
|
|
98
|
-
exports.getArrowOffset = getArrowOffset;
|
|
99
|
-
exports.getTooltipStyle = getTooltipStyle;
|