@amboss/design-system 4.8.2-canary.1 → 4.9.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/build/cjs/components/AIButton/AIButton.js +1 -1
- package/build/cjs/components/AccessCardItem/AccessCardItem.js +1 -1
- package/build/cjs/components/Avatar/Avatar.js +1 -1
- package/build/cjs/components/BulkActionsToolbar/BulkActionsToolbar.js +1 -1
- package/build/cjs/components/Button/Button.js +1 -1
- package/build/cjs/components/Card/CardHeader/CardHeader.js +1 -1
- package/build/cjs/components/CatalogCard/CatalogCard.d.ts +5 -1
- package/build/cjs/components/CatalogCard/CatalogCard.js +1 -1
- package/build/cjs/components/CheckboxCard/CheckboxCard.js +1 -1
- package/build/cjs/components/Collapsible/Collapsible.js +1 -1
- package/build/cjs/components/Container/Container.js +1 -1
- package/build/cjs/components/Content/ContentBadge/ContentBadge.js +1 -1
- package/build/cjs/components/Content/ContentBox/constants.js +1 -1
- package/build/cjs/components/Content/ContentBox/types.d.ts +1 -1
- package/build/cjs/components/Content/ContentCheckbox/ContentCheckbox.js +1 -1
- package/build/cjs/components/Content/ContentLink/ContentLink.js +1 -1
- package/build/cjs/components/Content/ContentPictogramButton/ContentPictogramButton.js +1 -1
- package/build/cjs/components/Content/ContentTableModal/ContentTableModal.js +2 -2
- package/build/cjs/components/Content/ContentText/ContentText.d.ts +1 -1
- package/build/cjs/components/Content/ContentText/ContentText.js +1 -1
- package/build/cjs/components/Content/DosageButton/DosageButton.d.ts +1 -1
- package/build/cjs/components/CountButton/CountButton.js +1 -1
- package/build/cjs/components/DataTable/header/SortableCellContent.js +1 -1
- package/build/cjs/components/DataTable/header/TableHeader.js +1 -1
- package/build/cjs/components/DataTable/useDataTableSelectRows.d.ts +2 -2
- package/build/cjs/components/DataTable/useDataTableSelectRows.js +1 -1
- package/build/cjs/components/DataTable/useDataTableSort.d.ts +3 -3
- package/build/cjs/components/Divider/Divider.js +1 -1
- package/build/cjs/components/DropdownMenu/DropdownMenu.d.ts +5 -1
- package/build/cjs/components/DropdownMenu/DropdownMenu.js +1 -1
- package/build/cjs/components/DropdownMenu/Menu.d.ts +1 -1
- package/build/cjs/components/DropdownMenu/Menu.js +1 -1
- package/build/cjs/components/EntityList/BaseEntityList.js +1 -1
- package/build/cjs/components/EntityList/EntityItemBody.d.ts +3 -1
- package/build/cjs/components/EntityList/EntityItemBody.js +1 -1
- package/build/cjs/components/EntityList/EntityListItem.js +1 -1
- package/build/cjs/components/EntityTree/BaseEntityTree.d.ts +3 -2
- package/build/cjs/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/cjs/components/EntityTree/EntityTreeItem.js +1 -1
- package/build/cjs/components/EntityTree/EntityTreeItemExpandButton.d.ts +3 -1
- package/build/cjs/components/EntityTree/EntityTreeItemExpandButton.js +1 -1
- package/build/cjs/components/EntityTree/tree.d.ts +1 -1
- package/build/cjs/components/EntityTree/tree.js +1 -1
- package/build/cjs/components/Form/Checkbox/Checkbox.js +1 -1
- package/build/cjs/components/Form/Combobox/Combobox.js +1 -1
- package/build/cjs/components/Form/Combobox/MultiSelect.d.ts +1 -1
- package/build/cjs/components/Form/Combobox/MultiSelect.js +1 -1
- package/build/cjs/components/Form/Combobox/MultiSelectReducer.d.ts +1 -1
- package/build/cjs/components/Form/Combobox/OptionsList.d.ts +6 -3
- package/build/cjs/components/Form/Combobox/OptionsList.js +1 -1
- package/build/cjs/components/Form/Combobox/SingleSelect.d.ts +1 -1
- package/build/cjs/components/Form/Combobox/SingleSelect.js +1 -1
- package/build/cjs/components/Form/Combobox/constants.js +1 -1
- package/build/cjs/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
- package/build/cjs/components/Form/Input/Input.js +1 -1
- package/build/cjs/components/Form/PasswordInput/PasswordInput.js +1 -1
- package/build/cjs/components/Form/PasswordInput/PasswordInputButton.d.ts +2 -2
- package/build/cjs/components/Form/PasswordInput/PasswordInputButton.js +1 -1
- package/build/cjs/components/Form/Radio/Radio.js +1 -1
- package/build/cjs/components/Form/RangeInput/RangeInput.js +1 -1
- package/build/cjs/components/Form/SearchInput/SearchInput.js +1 -1
- package/build/cjs/components/Form/SegmentedControl/-types.d.ts +2 -2
- package/build/cjs/components/Form/SegmentedControl/SegmentedControl.js +1 -1
- package/build/cjs/components/Form/SegmentedControl/SegmentedControlOption.js +1 -1
- package/build/cjs/components/Form/Select/Select.js +1 -1
- package/build/cjs/components/Form/Select/SelectWithCustomTrigger.js +1 -1
- package/build/cjs/components/Form/Select/useTypeAheadSearch.js +1 -1
- package/build/cjs/components/Form/Textarea/Textarea.js +1 -1
- package/build/cjs/components/Form/Toggle/Toggle.js +1 -1
- package/build/cjs/components/Form/ToggleButton/ToggleButton.js +1 -1
- package/build/cjs/components/Grid/Grid.js +1 -1
- package/build/cjs/components/Icon/Icon.js +1 -1
- package/build/cjs/components/Image/Image.js +1 -1
- package/build/cjs/components/Inline/Inline.js +1 -1
- package/build/cjs/components/Internal/BaseTag/BaseTag.d.ts +5 -1
- package/build/cjs/components/Internal/BaseTag/BaseTag.js +1 -1
- package/build/cjs/components/Internal/Float/Float.d.ts +1 -1
- package/build/cjs/components/Internal/Float/Float.js +1 -1
- package/build/cjs/components/Internal/LayoutFloat/LayoutFloatDragHandleGuard.d.ts +3 -1
- package/build/cjs/components/Internal/LayoutFloat/LayoutFloatDragHandleGuard.js +1 -1
- package/build/cjs/components/Internal/PanelHeader/PanelHeader.js +1 -1
- package/build/cjs/components/Internal/Sandwich/useSandwichContext.d.ts +1 -1
- package/build/cjs/components/Layout/-constants.d.ts +12 -0
- package/build/cjs/components/Layout/-constants.js +1 -1
- package/build/cjs/components/Layout/Layout.js +1 -1
- package/build/cjs/components/Layout/LayoutCssVars.d.ts +1 -1
- package/build/cjs/components/Layout/LeftPanel/LeftBarToggle.js +1 -1
- package/build/cjs/components/Layout/Split/MobileSplitView/useMobileSplitStack.d.ts +1 -1
- package/build/cjs/components/Layout/context.d.ts +1 -1
- package/build/cjs/components/Layout/registry.d.ts +4 -4
- package/build/cjs/components/Layout/usePanelDockedSlide.d.ts +10 -0
- package/build/cjs/components/Layout/usePanelDockedSlide.js +1 -1
- package/build/cjs/components/Lightbox/Lightbox.js +2 -2
- package/build/cjs/components/Link/Link.js +1 -1
- package/build/cjs/components/MediaItem/MediaItem.d.ts +1 -0
- package/build/cjs/components/MediaItem/MediaItem.js +1 -1
- package/build/cjs/components/MediaItem/MediaItemSkeleton.js +1 -1
- package/build/cjs/components/MediaViewerBar/MediaViewerBar.js +1 -1
- package/build/cjs/components/MediaViewerCarousel/CarouselThumbnail/CarouselThumbnail.js +1 -1
- package/build/cjs/components/MediaViewerCarousel/MediaCarousel/MediaCarousel.js +1 -1
- package/build/cjs/components/Notification/Notification.d.ts +1 -1
- package/build/cjs/components/Notification/Notification.js +1 -1
- package/build/cjs/components/Patterns/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/build/cjs/components/Patterns/EmptyState/EmptyState.js +1 -1
- package/build/cjs/components/Patterns/Modal/Modal.js +2 -2
- package/build/cjs/components/PictogramButton/PictogramButton.js +1 -1
- package/build/cjs/components/Portal/Portal.d.ts +2 -2
- package/build/cjs/components/PromptButton/PromptButton.js +1 -1
- package/build/cjs/components/PromptInput/AutocompleteList.d.ts +1 -1
- package/build/cjs/components/PromptInput/AutocompleteList.js +1 -1
- package/build/cjs/components/PromptInput/PromptInput.js +1 -1
- package/build/cjs/components/PromptInput/PromptTextArea.js +1 -1
- package/build/cjs/components/RadioCard/RadioCard.js +1 -1
- package/build/cjs/components/RoundButton/RoundButton.js +1 -1
- package/build/cjs/components/SearchResult/SearchResult.js +1 -1
- package/build/cjs/components/SegmentedProgressBar/-utils/getPercentagesForVariants.d.ts +4 -2
- package/build/cjs/components/SegmentedProgressBar/-utils/getPercentagesForVariants.js +1 -1
- package/build/cjs/components/SegmentedProgressBar/LegendPopover.d.ts +2 -1
- package/build/cjs/components/SegmentedProgressBar/LegendPopover.js +1 -1
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -1
- package/build/cjs/components/ShadowWebComponent/ShadowWebComponent.js +1 -1
- package/build/cjs/components/Sheet/Sheet.d.ts +1 -1
- package/build/cjs/components/Sheet/Sheet.js +1 -1
- package/build/cjs/components/SplashCard/SplashCard.js +1 -1
- package/build/cjs/components/SplashCardMedia/SplashCardMedia.js +1 -1
- package/build/cjs/components/Stack/Stack.js +1 -1
- package/build/cjs/components/SubThemeProvider/SubThemeContext.d.ts +1 -1
- package/build/cjs/components/SubThemeProvider/SubThemeProvider.d.ts +2 -1
- package/build/cjs/components/SubThemeProvider/SubThemeProvider.js +1 -1
- package/build/cjs/components/Tabs/Tabs.js +1 -1
- package/build/cjs/components/TagGroup/TagGroup.js +1 -1
- package/build/cjs/components/Toast/Toast.d.ts +2 -1
- package/build/cjs/components/Toast/Toast.js +1 -1
- package/build/cjs/components/Toast/ToastProvider.d.ts +5 -3
- package/build/cjs/components/Toggletip/BasePopover.js +1 -1
- package/build/cjs/components/Tooltip/BaseTooltip.js +1 -1
- package/build/cjs/components/Tooltip/TooltipContent.d.ts +13 -1
- package/build/cjs/components/Tooltip/TooltipContent.js +1 -1
- package/build/cjs/components/Tooltip/utils.d.ts +0 -1
- package/build/cjs/components/Tooltip/utils.js +1 -1
- package/build/cjs/components/Typography/StyledText/StyledText.d.ts +1 -1
- package/build/cjs/components/Typography/StyledText/StyledText.js +1 -1
- package/build/cjs/components/Typography/Text/Text.d.ts +1 -1
- package/build/cjs/components/Typography/Text/Text.js +1 -1
- package/build/cjs/components/Typography/Text/TextSkeleton.js +1 -1
- package/build/cjs/components/Typography/TextClamped/TextClamped.js +1 -1
- package/build/cjs/components/UserHighlightTooltip/UserHighlightTooltip.d.ts +1 -1
- package/build/cjs/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -1
- package/build/cjs/components/Utilities/ContainerQuery/ContainerQueryContext.d.ts +1 -1
- package/build/cjs/components/Utilities/Expandable/Expandable.js +1 -1
- package/build/cjs/components/Utilities/FloatingPosition/utils.d.ts +1 -1
- package/build/cjs/components/VirtualScrollList/VirtualScrollList.d.ts +1 -1
- package/build/cjs/components/VirtualScrollList/VirtualScrollList.js +1 -1
- package/build/cjs/components/VirtualScrollList/VirtualScrollListReducer.d.ts +2 -2
- package/build/cjs/components/VirtualScrollList/VirtualScrollListReducer.js +1 -1
- package/build/cjs/shared/appendId.d.ts +1 -1
- package/build/cjs/shared/forwardRefPolymorphic.d.ts +2 -0
- package/build/cjs/shared/forwardRefPolymorphic.js +1 -0
- package/build/cjs/shared/intl/translations/de.json +7 -1
- package/build/cjs/shared/intl/translations/en.json +7 -1
- package/build/cjs/shared/mediaQueries.d.ts +3 -3
- package/build/cjs/shared/mixins/Button/getPillStyles.js +1 -1
- package/build/cjs/shared/parseDurationMs.d.ts +2 -0
- package/build/cjs/shared/parseDurationMs.js +1 -0
- package/build/cjs/shared/useAutoPosition.js +1 -1
- package/build/cjs/shared/useHover.d.ts +1 -1
- package/build/cjs/shared/useHover.js +1 -1
- package/build/cjs/shared/useOutsideClickDeactivatesWithinPortal.d.ts +1 -1
- package/build/cjs/shared/useOutsideClickDeactivatesWithinPortal.js +1 -1
- package/build/cjs/web-tokens/_colors.json +12 -12
- package/build/cjs/web-tokens/_sizes.json +55 -55
- package/build/cjs/web-tokens/assets/icons.json +4 -5
- package/build/cjs/web-tokens/assets/icons16.json +4 -5
- package/build/cjs/web-tokens/visualConfig.d.ts +14 -0
- package/build/cjs/web-tokens/visualConfig.js +1 -1
- package/build/esm/components/AIButton/AIButton.js +1 -1
- package/build/esm/components/AccessCardItem/AccessCardItem.js +1 -1
- package/build/esm/components/Avatar/Avatar.js +1 -1
- package/build/esm/components/BulkActionsToolbar/BulkActionsToolbar.js +1 -1
- package/build/esm/components/Button/Button.js +1 -1
- package/build/esm/components/Card/CardHeader/CardHeader.js +1 -1
- package/build/esm/components/CatalogCard/CatalogCard.d.ts +5 -1
- package/build/esm/components/CatalogCard/CatalogCard.js +1 -1
- package/build/esm/components/CheckboxCard/CheckboxCard.js +1 -1
- package/build/esm/components/Collapsible/Collapsible.js +1 -1
- package/build/esm/components/Container/Container.js +1 -1
- package/build/esm/components/Content/ContentBadge/ContentBadge.js +1 -1
- package/build/esm/components/Content/ContentBox/constants.js +1 -1
- package/build/esm/components/Content/ContentBox/types.d.ts +1 -1
- package/build/esm/components/Content/ContentCheckbox/ContentCheckbox.js +1 -1
- package/build/esm/components/Content/ContentLink/ContentLink.js +1 -1
- package/build/esm/components/Content/ContentPictogramButton/ContentPictogramButton.js +1 -1
- package/build/esm/components/Content/ContentTableModal/ContentTableModal.js +2 -2
- package/build/esm/components/Content/ContentText/ContentText.d.ts +1 -1
- package/build/esm/components/Content/ContentText/ContentText.js +1 -1
- package/build/esm/components/Content/DosageButton/DosageButton.d.ts +1 -1
- package/build/esm/components/CountButton/CountButton.js +1 -1
- package/build/esm/components/DataTable/header/SortableCellContent.js +1 -1
- package/build/esm/components/DataTable/header/TableHeader.js +1 -1
- package/build/esm/components/DataTable/useDataTableSelectRows.d.ts +2 -2
- package/build/esm/components/DataTable/useDataTableSelectRows.js +1 -1
- package/build/esm/components/DataTable/useDataTableSort.d.ts +3 -3
- package/build/esm/components/Divider/Divider.js +1 -1
- package/build/esm/components/DropdownMenu/DropdownMenu.d.ts +5 -1
- package/build/esm/components/DropdownMenu/DropdownMenu.js +1 -1
- package/build/esm/components/DropdownMenu/Menu.d.ts +1 -1
- package/build/esm/components/DropdownMenu/Menu.js +1 -1
- package/build/esm/components/EntityList/BaseEntityList.js +1 -1
- package/build/esm/components/EntityList/EntityItemBody.d.ts +3 -1
- package/build/esm/components/EntityList/EntityItemBody.js +1 -1
- package/build/esm/components/EntityList/EntityListItem.js +1 -1
- package/build/esm/components/EntityTree/BaseEntityTree.d.ts +3 -2
- package/build/esm/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/esm/components/EntityTree/EntityTreeItem.js +1 -1
- package/build/esm/components/EntityTree/EntityTreeItemExpandButton.d.ts +3 -1
- package/build/esm/components/EntityTree/EntityTreeItemExpandButton.js +1 -1
- package/build/esm/components/EntityTree/tree.d.ts +1 -1
- package/build/esm/components/EntityTree/tree.js +1 -1
- package/build/esm/components/Form/Checkbox/Checkbox.js +1 -1
- package/build/esm/components/Form/Combobox/Combobox.js +1 -1
- package/build/esm/components/Form/Combobox/MultiSelect.d.ts +1 -1
- package/build/esm/components/Form/Combobox/MultiSelect.js +1 -1
- package/build/esm/components/Form/Combobox/MultiSelectReducer.d.ts +1 -1
- package/build/esm/components/Form/Combobox/OptionsList.d.ts +6 -3
- package/build/esm/components/Form/Combobox/OptionsList.js +1 -1
- package/build/esm/components/Form/Combobox/SingleSelect.d.ts +1 -1
- package/build/esm/components/Form/Combobox/SingleSelect.js +1 -1
- package/build/esm/components/Form/Combobox/constants.js +1 -1
- package/build/esm/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
- package/build/esm/components/Form/Input/Input.js +1 -1
- package/build/esm/components/Form/PasswordInput/PasswordInput.js +1 -1
- package/build/esm/components/Form/PasswordInput/PasswordInputButton.d.ts +2 -2
- package/build/esm/components/Form/PasswordInput/PasswordInputButton.js +1 -1
- package/build/esm/components/Form/Radio/Radio.js +1 -1
- package/build/esm/components/Form/RangeInput/RangeInput.js +1 -1
- package/build/esm/components/Form/SearchInput/SearchInput.js +1 -1
- package/build/esm/components/Form/SegmentedControl/-types.d.ts +2 -2
- package/build/esm/components/Form/SegmentedControl/SegmentedControl.js +1 -1
- package/build/esm/components/Form/SegmentedControl/SegmentedControlOption.js +1 -1
- package/build/esm/components/Form/Select/Select.js +1 -1
- package/build/esm/components/Form/Select/SelectWithCustomTrigger.js +1 -1
- package/build/esm/components/Form/Select/useTypeAheadSearch.js +1 -1
- package/build/esm/components/Form/Textarea/Textarea.js +1 -1
- package/build/esm/components/Form/Toggle/Toggle.js +1 -1
- package/build/esm/components/Form/ToggleButton/ToggleButton.js +1 -1
- package/build/esm/components/Grid/Grid.js +1 -1
- package/build/esm/components/Icon/Icon.js +1 -1
- package/build/esm/components/Image/Image.js +1 -1
- package/build/esm/components/Inline/Inline.js +1 -1
- package/build/esm/components/Internal/BaseTag/BaseTag.d.ts +5 -1
- package/build/esm/components/Internal/BaseTag/BaseTag.js +1 -1
- package/build/esm/components/Internal/Float/Float.d.ts +1 -1
- package/build/esm/components/Internal/Float/Float.js +1 -1
- package/build/esm/components/Internal/LayoutFloat/LayoutFloatDragHandleGuard.d.ts +3 -1
- package/build/esm/components/Internal/LayoutFloat/LayoutFloatDragHandleGuard.js +1 -1
- package/build/esm/components/Internal/PanelHeader/PanelHeader.js +1 -1
- package/build/esm/components/Internal/Sandwich/useSandwichContext.d.ts +1 -1
- package/build/esm/components/Layout/-constants.d.ts +12 -0
- package/build/esm/components/Layout/-constants.js +1 -1
- package/build/esm/components/Layout/Layout.js +1 -1
- package/build/esm/components/Layout/LayoutCssVars.d.ts +1 -1
- package/build/esm/components/Layout/LeftPanel/LeftBarToggle.js +1 -1
- package/build/esm/components/Layout/Split/MobileSplitView/useMobileSplitStack.d.ts +1 -1
- package/build/esm/components/Layout/context.d.ts +1 -1
- package/build/esm/components/Layout/registry.d.ts +4 -4
- package/build/esm/components/Layout/usePanelDockedSlide.d.ts +10 -0
- package/build/esm/components/Layout/usePanelDockedSlide.js +1 -1
- package/build/esm/components/Lightbox/Lightbox.js +2 -2
- package/build/esm/components/Link/Link.js +1 -1
- package/build/esm/components/MediaItem/MediaItem.d.ts +1 -0
- package/build/esm/components/MediaItem/MediaItem.js +1 -1
- package/build/esm/components/MediaItem/MediaItemSkeleton.js +1 -1
- package/build/esm/components/MediaViewerBar/MediaViewerBar.js +1 -1
- package/build/esm/components/MediaViewerCarousel/CarouselThumbnail/CarouselThumbnail.js +1 -1
- package/build/esm/components/MediaViewerCarousel/MediaCarousel/MediaCarousel.js +1 -1
- package/build/esm/components/Notification/Notification.d.ts +1 -1
- package/build/esm/components/Notification/Notification.js +1 -1
- package/build/esm/components/Patterns/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/build/esm/components/Patterns/EmptyState/EmptyState.js +1 -1
- package/build/esm/components/Patterns/Modal/Modal.js +2 -2
- package/build/esm/components/PictogramButton/PictogramButton.js +1 -1
- package/build/esm/components/Portal/Portal.d.ts +2 -2
- package/build/esm/components/PromptButton/PromptButton.js +1 -1
- package/build/esm/components/PromptInput/AutocompleteList.d.ts +1 -1
- package/build/esm/components/PromptInput/AutocompleteList.js +1 -1
- package/build/esm/components/PromptInput/PromptInput.js +1 -1
- package/build/esm/components/PromptInput/PromptTextArea.js +1 -1
- package/build/esm/components/RadioCard/RadioCard.js +1 -1
- package/build/esm/components/RoundButton/RoundButton.js +1 -1
- package/build/esm/components/SearchResult/SearchResult.js +1 -1
- package/build/esm/components/SegmentedProgressBar/-utils/getPercentagesForVariants.d.ts +4 -2
- package/build/esm/components/SegmentedProgressBar/-utils/getPercentagesForVariants.js +1 -1
- package/build/esm/components/SegmentedProgressBar/LegendPopover.d.ts +2 -1
- package/build/esm/components/SegmentedProgressBar/LegendPopover.js +1 -1
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -1
- package/build/esm/components/ShadowWebComponent/ShadowWebComponent.js +1 -1
- package/build/esm/components/Sheet/Sheet.d.ts +1 -1
- package/build/esm/components/Sheet/Sheet.js +1 -1
- package/build/esm/components/SplashCard/SplashCard.js +1 -1
- package/build/esm/components/SplashCardMedia/SplashCardMedia.js +1 -1
- package/build/esm/components/Stack/Stack.js +1 -1
- package/build/esm/components/SubThemeProvider/SubThemeContext.d.ts +1 -1
- package/build/esm/components/SubThemeProvider/SubThemeProvider.d.ts +2 -1
- package/build/esm/components/SubThemeProvider/SubThemeProvider.js +1 -1
- package/build/esm/components/Tabs/Tabs.js +1 -1
- package/build/esm/components/TagGroup/TagGroup.js +1 -1
- package/build/esm/components/Toast/Toast.d.ts +2 -1
- package/build/esm/components/Toast/Toast.js +1 -1
- package/build/esm/components/Toast/ToastProvider.d.ts +5 -3
- package/build/esm/components/Toggletip/BasePopover.js +1 -1
- package/build/esm/components/Tooltip/BaseTooltip.js +1 -1
- package/build/esm/components/Tooltip/TooltipContent.d.ts +13 -1
- package/build/esm/components/Tooltip/TooltipContent.js +1 -1
- package/build/esm/components/Tooltip/utils.d.ts +0 -1
- package/build/esm/components/Tooltip/utils.js +1 -1
- package/build/esm/components/Typography/StyledText/StyledText.d.ts +1 -1
- package/build/esm/components/Typography/StyledText/StyledText.js +1 -1
- package/build/esm/components/Typography/Text/Text.d.ts +1 -1
- package/build/esm/components/Typography/Text/Text.js +1 -1
- package/build/esm/components/Typography/Text/TextSkeleton.js +1 -1
- package/build/esm/components/Typography/TextClamped/TextClamped.js +1 -1
- package/build/esm/components/UserHighlightTooltip/UserHighlightTooltip.d.ts +1 -1
- package/build/esm/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -1
- package/build/esm/components/Utilities/ContainerQuery/ContainerQueryContext.d.ts +1 -1
- package/build/esm/components/Utilities/Expandable/Expandable.js +1 -1
- package/build/esm/components/Utilities/FloatingPosition/utils.d.ts +1 -1
- package/build/esm/components/VirtualScrollList/VirtualScrollList.d.ts +1 -1
- package/build/esm/components/VirtualScrollList/VirtualScrollList.js +1 -1
- package/build/esm/components/VirtualScrollList/VirtualScrollListReducer.d.ts +2 -2
- package/build/esm/components/VirtualScrollList/VirtualScrollListReducer.js +1 -1
- package/build/esm/shared/appendId.d.ts +1 -1
- package/build/esm/shared/forwardRefPolymorphic.d.ts +2 -0
- package/build/esm/shared/forwardRefPolymorphic.js +1 -0
- package/build/esm/shared/intl/translations/de.json +7 -1
- package/build/esm/shared/intl/translations/en.json +7 -1
- package/build/esm/shared/mediaQueries.d.ts +3 -3
- package/build/esm/shared/mixins/Button/getPillStyles.js +1 -1
- package/build/esm/shared/parseDurationMs.d.ts +2 -0
- package/build/esm/shared/parseDurationMs.js +1 -0
- package/build/esm/shared/useAutoPosition.js +1 -1
- package/build/esm/shared/useHover.d.ts +1 -1
- package/build/esm/shared/useHover.js +1 -1
- package/build/esm/shared/useOutsideClickDeactivatesWithinPortal.d.ts +1 -1
- package/build/esm/shared/useOutsideClickDeactivatesWithinPortal.js +1 -1
- package/build/esm/web-tokens/_colors.json +12 -12
- package/build/esm/web-tokens/_sizes.json +55 -55
- package/build/esm/web-tokens/assets/icons.json +4 -5
- package/build/esm/web-tokens/assets/icons16.json +4 -5
- package/build/esm/web-tokens/visualConfig.d.ts +14 -0
- package/build/esm/web-tokens/visualConfig.js +1 -1
- package/build/scss/_variables.scss +6 -0
- package/package.json +12 -6
|
@@ -2,7 +2,6 @@ import type { OffsetOptions } from "@floating-ui/react-dom";
|
|
|
2
2
|
import type { Middleware, Placement, VirtualElement } from "../Utilities/FloatingPosition/useFloatingPosition";
|
|
3
3
|
import type { TooltipContentProps, TooltipPlacement, TooltipPrivateProps, TooltipVerticalPlacement } from "./TooltipContent";
|
|
4
4
|
export declare const DISTANCE_FROM_TRIGGER = 4;
|
|
5
|
-
export declare const ANIMATION_DISTANCE = 8;
|
|
6
5
|
export declare const ARROW_SIZE = 6;
|
|
7
6
|
export declare const ARROW_SIZE_BIG = 8;
|
|
8
7
|
/** TODO: remove temporary side placement. Matches the gap top/bottom tooltips settle at. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const DISTANCE_FROM_TRIGGER=4;export const
|
|
1
|
+
export const DISTANCE_FROM_TRIGGER=4;export const ARROW_SIZE=6;export const ARROW_SIZE_BIG=8;export const sidePlacementOffset=10;export const getArrowOffset=size=>2*size;let START_SUFFIX="-start",END_SUFFIX="-end",SIDE_PLACEMENT="right-start",DS_TO_FLOATING_PLACEMENT={top:"top",bottom:"bottom","top-left":`top${END_SUFFIX}`,"top-right":`top${START_SUFFIX}`,"bottom-left":`bottom${END_SUFFIX}`,"bottom-right":`bottom${START_SUFFIX}`},OPPOSITE_SIDE={top:"bottom",bottom:"top"},sideWithAlignments=side=>[side,`${side}${START_SUFFIX}`,`${side}${END_SUFFIX}`];export const toFloatingPlacement=({placement,defaultVerticalPlacement,sidePlacement})=>{let isAutomatic=!placement||"auto"===placement,preferred=isAutomatic?defaultVerticalPlacement??"top":DS_TO_FLOATING_PLACEMENT[placement],[side,alignment]=preferred.split("-"),oppositeSide=OPPOSITE_SIDE[side],resolved=isAutomatic?{placement:preferred,fallbackPlacements:[...sideWithAlignments(side).slice(1),...sideWithAlignments(oppositeSide)]}:{placement:preferred,fallbackPlacements:[alignment?`${oppositeSide}-${alignment}`:oppositeSide]};return"right-top"===sidePlacement?{placement:SIDE_PLACEMENT,fallbackPlacements:[resolved.placement,...resolved.fallbackPlacements]}:resolved};export const SIDE_PLACEMENT_SIDE="right";export const getPlacementSide=placement=>placement.split("-")[0];export const getTooltipOffsetOptions=({arrowSize,sideOffset})=>({rects,placement})=>{if(placement===SIDE_PLACEMENT)return{mainAxis:sideOffset};let mainAxis=arrowSize+4;return(placement.endsWith(START_SUFFIX)||placement.endsWith(END_SUFFIX))&&0!==arrowSize?{mainAxis,alignmentAxis:rects.reference.width/2-getArrowOffset(arrowSize)-arrowSize}:{mainAxis}};export const createOverflowViewportReporter=onOverflowViewport=>({name:"reportOverflowViewport",fn({elements}){let triggerRect=elements.reference.getBoundingClientRect(),tooltipRect=elements.floating.getBoundingClientRect(),viewportHeight=elements.floating.ownerDocument.documentElement.clientHeight,canPlaceAboveTrigger=triggerRect.top>=tooltipRect.height,canPlaceBelowTrigger=triggerRect.bottom+tooltipRect.height<viewportHeight;return canPlaceAboveTrigger||canPlaceBelowTrigger||onOverflowViewport(triggerRect,tooltipRect,viewportHeight),{}}});export const toFloatingAnchor=trigger=>{if(!trigger)return null;if("undefined"!=typeof Range&&trigger instanceof Range){let container=trigger.commonAncestorContainer;return{getBoundingClientRect:()=>trigger.getBoundingClientRect(),getClientRects:()=>trigger.getClientRects(),contextElement:container instanceof Element?container:container.parentElement??void 0}}return trigger};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
export type FormattedElementProps = {
|
|
3
3
|
key: string;
|
|
4
|
-
children: string | React.ReactNode[];
|
|
4
|
+
children: string | React.ReactNode[] | null;
|
|
5
5
|
};
|
|
6
6
|
export declare const makeStyledJSX: (string: string) => React.ReactNode[] | string | null;
|
|
7
7
|
export type StyledTextProps = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React from"react";import styled from"@emotion/styled";import{Text}from"../Text/Text";let Italic=styled("i",{target:"
|
|
1
|
+
import React from"react";import styled from"@emotion/styled";import{Text}from"../Text/Text";let Italic=styled("i",{target:"e839vll0",label:"Italic"})({fontStyle:"italic"}),Bold=styled("b",{target:"e839vll1",label:"Bold"})({fontWeight:"bolder"}),Components={b:({key,children})=>React.createElement(Bold,{key:key},children),i:({key,children})=>React.createElement(Italic,{key:key},children),p:({key,children})=>React.createElement(Text,{key:key,as:"p",color:"primary"},children),small:({key,children})=>React.createElement(Text,{key:key,as:"span",color:"tertiary"},children),sup:({key,children})=>React.createElement("sup",{key:key},children),sub:({key,children})=>React.createElement("sub",{key:key},children)},getNodes=string=>{let closingTagStartIndex,closingTagEndIndex,elementNames=Object.keys(Components).join("|"),elementMatch=RegExp(`<(${elementNames})>.*</\\1>`).exec(string);if(!elementMatch)return null;let elementName=elementMatch[1],openingTagStartIndex=elementMatch.index,openingTagEndIndex=elementMatch.index+elementName.length+2,numberOpenTags=1,elementTagsRegex=RegExp(`(<${elementName}>)|(</${elementName}>)`,"g"),currentTagMatch=elementTagsRegex.exec(string);for(;currentTagMatch&&(currentTagMatch.index>openingTagStartIndex&&(currentTagMatch[1]?numberOpenTags+=1:currentTagMatch[2]&&(numberOpenTags-=1,closingTagEndIndex=(closingTagStartIndex=currentTagMatch.index)+currentTagMatch[2].length)),currentTagMatch=elementTagsRegex.exec(string),!(numberOpenTags<=0)););return{elementName,prev:string.slice(0,openingTagStartIndex),node:string.slice(openingTagEndIndex,closingTagStartIndex),next:string.slice(closingTagEndIndex)}};export const makeStyledJSX=string=>{if(!string||string.length<1)return null;let nodes=getNodes(string);if(!nodes)return string;let{elementName,prev,node,next}=nodes;return[prev,Components[elementName]({key:node,children:makeStyledJSX(node)}),makeStyledJSX(next)].filter(i=>null!==i&&""!==i&&!(Array.isArray(i)&&!i.length))};export function StyledText({children,"data-e2e-test-id":dataE2eTestId}){return"string"!=typeof children?children:React.createElement("span",{"data-e2e-test-id":dataE2eTestId,"data-ds-id":"StyledText"},makeStyledJSX(children))}
|
|
@@ -19,7 +19,7 @@ export type BaseTextProps = {
|
|
|
19
19
|
/** @ignore */
|
|
20
20
|
"data-ds-id"?: string;
|
|
21
21
|
};
|
|
22
|
-
export declare const TextContext: React.Context<Pick<BaseTextProps, "color" | "size" | "weight"
|
|
22
|
+
export declare const TextContext: React.Context<Pick<BaseTextProps, "color" | "size" | "weight"> | null>;
|
|
23
23
|
export declare const getTextLineHeight: ({ theme, size, }: {
|
|
24
24
|
theme: Theme;
|
|
25
25
|
size: TextSize;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{createContext,useMemo,forwardRef}from"react";import styled from"@emotion/styled";import isPropValid from"@emotion/is-prop-valid";import{useResponsiveStyles}from"../../../shared/mediaQueries";export const TextContext=createContext(null);export const getTextLineHeight=({theme,size})=>({xxs:theme.variables.size.lineHeight.m,xs:theme.variables.size.lineHeight.m,s:theme.variables.size.lineHeight.l,m:theme.variables.size.lineHeight.xl,l:theme.variables.size.lineHeight.xl})[size];export const getTextFontSize=({theme,size})=>theme.variables.size.font[size];let StyledText=styled("p",{shouldForwardProp:prop=>isPropValid(prop)&&"color"!==prop&&"transform"!==prop,target:"
|
|
1
|
+
import React,{createContext,useMemo,forwardRef}from"react";import styled from"@emotion/styled";import isPropValid from"@emotion/is-prop-valid";import{useResponsiveStyles}from"../../../shared/mediaQueries";export const TextContext=createContext(null);export const getTextLineHeight=({theme,size})=>({xxs:theme.variables.size.lineHeight.m,xs:theme.variables.size.lineHeight.m,s:theme.variables.size.lineHeight.l,m:theme.variables.size.lineHeight.xl,l:theme.variables.size.lineHeight.xl})[size];export const getTextFontSize=({theme,size})=>theme.variables.size.font[size];let StyledText=styled("p",{shouldForwardProp:prop=>isPropValid(prop)&&"color"!==prop&&"transform"!==prop,target:"enx0zg50",label:"StyledText"})(({theme,align,weight="normal",size="m",transform,hyphens,overflowWrap,color="primary",userSelect,variant})=>({fontFamily:theme.variables.fontFamily.lato,margin:0,textTransform:transform,textAlign:align,fontWeight:theme.variables.weight[weight],color:theme.values.color.text[color]?.default??theme.values.color.text.primary.default,...userSelect&&{userSelect},...variant&&{color:theme.values.color.text[variant].default,..."primary"===variant&&{color:theme.values.color.text.accent.default},..."secondary"===variant&&{color:theme.values.color.text.primary.default}},fontSize:getTextFontSize({theme,size}),lineHeight:getTextLineHeight({theme,size}),...useResponsiveStyles({hyphens:[hyphens,{none:"none",auto:"auto",manual:"manual"}]}),overflowWrap}));export const Text=forwardRef(({size="m",weight="normal",transform="none",as="p",color:colorProp="primary",align="left",hyphens="none",overflowWrap="normal",variant,userSelect,"data-e2e-test-id":dataE2eTestId,children,...rest},ref)=>{let color=colorProp;variant&&(color="primary"===variant?"accent":"secondary"===variant?"primary":variant);let contextValues=useMemo(()=>({color,size,weight}),[color,size,weight]);return React.createElement(StyledText,{ref:ref,variant:variant,size:size,weight:weight,transform:transform,as:as,color:color,align:align,hyphens:hyphens,overflowWrap:overflowWrap,userSelect:userSelect,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Text",...rest},React.createElement(TextContext.Provider,{value:contextValues},children))});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React from"react";import{useTheme}from"@emotion/react";import styled from"@emotion/styled";import{Skeleton}from"../../Skeleton/Skeleton";import{getTextLineHeight}from"./Text";import{Stack}from"../../Stack/Stack";import{useResponsiveValue}from"../../../shared/mediaQueries";let StyledSkeletonContainer=styled("div",{target:"
|
|
1
|
+
import React from"react";import{useTheme}from"@emotion/react";import styled from"@emotion/styled";import{Skeleton}from"../../Skeleton/Skeleton";import{getTextLineHeight}from"./Text";import{Stack}from"../../Stack/Stack";import{useResponsiveValue}from"../../../shared/mediaQueries";let StyledSkeletonContainer=styled("div",{target:"e1ipwacj0",label:"StyledSkeletonContainer"})(({height,width,inline})=>({display:"flex",alignItems:"center",...inline&&{display:"inline-block"},...useResponsiveValue({width,height})}));export function TextSkeleton({lines=1,size="m",width="100%",inline=!1,"data-e2e-test-id":dataE2eTestId}){let theme=useTheme(),containerHeight=`calc(${getTextLineHeight({theme,size})} * ${theme.variables.size.font[size]})`;return lines>1?React.createElement(Stack,{space:"zero",fullWidth:!0,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"TextSkeleton"},Array(lines).fill("").map((_elm,index)=>{let lineWidth=index===lines-1?`calc(${width} * 0.75)`:width;return React.createElement(StyledSkeletonContainer,{key:index,height:containerHeight,width:lineWidth},React.createElement(Skeleton,{height:"60%",borderRadius:"xs"}))})):React.createElement(StyledSkeletonContainer,{height:containerHeight,width:width,inline:inline,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"TextSkeleton"},React.createElement(Skeleton,{height:"60%",borderRadius:"xs"}))}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{forwardRef,useEffect,useRef}from"react";import styled from"@emotion/styled";import{ContentText}from"../../Content/ContentText/ContentText";let StyledContainer=styled("span",{target:"
|
|
1
|
+
import React,{forwardRef,useEffect,useRef}from"react";import styled from"@emotion/styled";import{ContentText}from"../../Content/ContentText/ContentText";let StyledContainer=styled("span",{target:"eyzubzy0",label:"StyledContainer"})(({lines,expanded,breakAll})=>({display:"-webkit-box",WebkitBoxOrient:"vertical",overflow:"hidden",WebkitLineClamp:expanded?"unset":lines,...breakAll&&{wordBreak:"break-all"}}));export const TextClamped=forwardRef((props,ref)=>{let{lines=1,expanded,children,onExceedsLines,"data-e2e-test-id":dataE2eTestId,privateProps,...textProps}=props,containerRef=useRef(null),lastExceedsStateRef=useRef(null),onExceedsLinesRef=useRef(onExceedsLines);useEffect(()=>{onExceedsLinesRef.current=onExceedsLines});let hasCallback=!!onExceedsLines;return useEffect(()=>{let containerElement=containerRef.current;if(!containerElement||!hasCallback)return;let textLinesRange=document.createRange(),countRenderedLines=element=>(textLinesRange.selectNodeContents(element),textLinesRange.getClientRects().length),resizeObserver=new ResizeObserver(()=>{let currentExceeds=countRenderedLines(containerElement)>lines;currentExceeds!==lastExceedsStateRef.current&&(lastExceedsStateRef.current=currentExceeds,onExceedsLinesRef.current?.(currentExceeds))});return resizeObserver.observe(containerElement),()=>resizeObserver.disconnect()},[containerRef,hasCallback,lines,expanded,children]),React.createElement(ContentText,{ref:ref,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"TextClamped",...textProps},React.createElement(StyledContainer,{ref:containerRef,lines:lines,expanded:expanded,breakAll:privateProps?.breakAll},children))});
|
|
@@ -7,4 +7,4 @@ export type UserHighlightTooltipProps = Pick<TooltipContentProps, "content" | "p
|
|
|
7
7
|
selectedRange?: Range;
|
|
8
8
|
positionAtStart?: boolean;
|
|
9
9
|
};
|
|
10
|
-
export declare function UserHighlightTooltip({ content, contentPadding, placement, maxWidth, portalContainer, "data-e2e-test-id": dataE2eTestId, triggerElements, selectedRange, onVisibilityChange, positionAtStart, ...ariaAttributes }: UserHighlightTooltipProps): React.ReactElement;
|
|
10
|
+
export declare function UserHighlightTooltip({ content, contentPadding, placement, maxWidth, portalContainer, "data-e2e-test-id": dataE2eTestId, triggerElements, selectedRange, onVisibilityChange, positionAtStart, ...ariaAttributes }: UserHighlightTooltipProps): React.ReactElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{useCallback,useEffect,useId,useMemo,useRef,useState}from"react";import{TooltipContent}from"../Tooltip/TooltipContent";import{findOverlappingTooltips}from"./-utils.ts/findOverlappingTooltips";import{getTopmostElement}from"./-utils.ts/getTopmostElement";import{TooltipRegistry}from"./-utils.ts/TooltipRegistry";let tooltipRegistry=new TooltipRegistry;export function UserHighlightTooltip({content,contentPadding="s",placement="auto",maxWidth,portalContainer,"data-e2e-test-id":dataE2eTestId,triggerElements,selectedRange,onVisibilityChange,positionAtStart,...ariaAttributes}){let tooltipId=useMemo(()=>`DSUserHighlightTooltip_${Math.floor(Date.now()*Math.random())}`,[]),instanceId=useId(),isTooltipHovered=useRef(!1),showTooltipTimeoutId=useRef(null),hideTooltipTimeoutId=useRef(null),triggerHovered=useRef(!1),rangeRef=useRef(null);useEffect(()=>{if(selectedRange)rangeRef.current=selectedRange;else{let range=document.createRange();if(positionAtStart){let text=triggerElements[0].childNodes[0];range.setStart(text,0),range.setEnd(text,1)}else range.setStart(triggerElements[0],0),range.setEnd(triggerElements[triggerElements.length-1],1);rangeRef.current=range}},[triggerElements,selectedRange,positionAtStart]);let[tooltipVisible,setTooltipVisible]=useState(!1),toggleVisibility=useCallback(status=>{setTooltipVisible(status),onVisibilityChange&&onVisibilityChange(status)},[onVisibilityChange]);useEffect(()=>(tooltipRegistry.set(instanceId,{id:instanceId,triggerElements,setVisible:visible=>{setTooltipVisible(visible),onVisibilityChange&&onVisibilityChange(visible)}}),()=>{tooltipRegistry.delete(instanceId)}),[instanceId,triggerElements,onVisibilityChange]),useEffect(()=>{selectedRange&&toggleVisibility(!0)},[]);let hideTooltipAfterDelay=useCallback(()=>{hideTooltipTimeoutId.current=setTimeout(()=>{triggerHovered.current||isTooltipHovered.current||!tooltipVisible||toggleVisibility(!1)},200)},[toggleVisibility,tooltipVisible]),handleTriggerPointerEnter=useCallback(event=>{triggerHovered.current=!0,clearTimeout(showTooltipTimeoutId.current),showTooltipTimeoutId.current=setTimeout(()=>{if(triggerHovered.current){let overlappingTooltips=findOverlappingTooltips(event?.target||triggerElements[0],instanceId,tooltipRegistry);if(overlappingTooltips.length>0){let allOverlappingElements=[...triggerElements];overlappingTooltips.forEach(tooltip=>{allOverlappingElements.push(...tooltip.triggerElements)});let topmostElement=getTopmostElement(allOverlappingElements,event);!topmostElement||triggerElements.includes(topmostElement)?(overlappingTooltips.forEach(tooltip=>{tooltip.setVisible(!1)}),tooltipVisible||toggleVisibility(!0)):tooltipVisible&&toggleVisibility(!1)}else tooltipVisible||toggleVisibility(!0)}},200)},[toggleVisibility,tooltipVisible,triggerElements,instanceId]),handleTriggerPointerLeave=useCallback(event=>{if(clearTimeout(hideTooltipTimeoutId.current),triggerHovered.current=!1,event&&"clientX"in event&&"clientY"in event)try{let elementUnderPointer=document.elementFromPoint(event.clientX,event.clientY);if(elementUnderPointer){let overlappingTooltips=findOverlappingTooltips(elementUnderPointer,instanceId,tooltipRegistry);if(overlappingTooltips.length>0){let allOverlappingElements=[];overlappingTooltips.forEach(tooltip=>{allOverlappingElements.push(...tooltip.triggerElements)});let topmostElement=getTopmostElement(allOverlappingElements,event);if(topmostElement&&!triggerElements.includes(topmostElement)){toggleVisibility(!1);let enterEvent=new PointerEvent("pointerenter",{bubbles:!0,cancelable:!0,clientX:event.clientX,clientY:event.clientY,pointerId:event.pointerId,pointerType:event.pointerType});topmostElement.dispatchEvent(enterEvent);return}}}}catch{}hideTooltipAfterDelay()},[hideTooltipAfterDelay,instanceId,toggleVisibility,triggerElements]);return(useEffect(()=>()=>{clearTimeout(showTooltipTimeoutId.current),clearTimeout(hideTooltipTimeoutId.current)},[]),useEffect(()=>{let wrappedHandleEnter=event=>{handleTriggerPointerEnter(event)};return triggerElements.forEach(node=>{node.addEventListener("pointerenter",wrappedHandleEnter),node.addEventListener("pointerleave",handleTriggerPointerLeave)}),()=>{triggerElements.forEach(node=>{node.removeEventListener("pointerenter",wrappedHandleEnter),node.removeEventListener("pointerleave",handleTriggerPointerLeave)})}},[handleTriggerPointerEnter,handleTriggerPointerLeave,triggerElements]),useEffect(()=>{triggerElements.forEach(node=>{tooltipVisible?node.setAttribute("aria-describedby",tooltipId):node.removeAttribute("aria-describedby")})},[tooltipId,tooltipVisible,triggerElements]),rangeRef.current)?React.createElement(TooltipContent,{dataDSId:"UserHighlightTooltip",content:content,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,isVisible:tooltipVisible,tooltipId:tooltipId,triggerRef:rangeRef,role:"tooltip",contentPadding:contentPadding,maxWidth:maxWidth,subTheme:"inverted",onTooltipPointerEnter:()=>{isTooltipHovered.current=!0},onTooltipPointerLeave:()=>{clearTimeout(hideTooltipTimeoutId.current),isTooltipHovered.current=!1,hideTooltipAfterDelay()},...ariaAttributes}):null}
|
|
1
|
+
import React,{useCallback,useEffect,useId,useMemo,useRef,useState}from"react";import{TooltipContent}from"../Tooltip/TooltipContent";import{findOverlappingTooltips}from"./-utils.ts/findOverlappingTooltips";import{getTopmostElement}from"./-utils.ts/getTopmostElement";import{TooltipRegistry}from"./-utils.ts/TooltipRegistry";let tooltipRegistry=new TooltipRegistry;export function UserHighlightTooltip({content,contentPadding="s",placement="auto",maxWidth,portalContainer,"data-e2e-test-id":dataE2eTestId,triggerElements,selectedRange,onVisibilityChange,positionAtStart,...ariaAttributes}){let tooltipId=useMemo(()=>`DSUserHighlightTooltip_${Math.floor(Date.now()*Math.random())}`,[]),instanceId=useId(),isTooltipHovered=useRef(!1),showTooltipTimeoutId=useRef(null),hideTooltipTimeoutId=useRef(null),triggerHovered=useRef(!1),rangeRef=useRef(null);useEffect(()=>{if(selectedRange)rangeRef.current=selectedRange;else{let range=document.createRange();if(positionAtStart){let text=triggerElements[0].childNodes[0];range.setStart(text,0),range.setEnd(text,1)}else range.setStart(triggerElements[0],0),range.setEnd(triggerElements[triggerElements.length-1],1);rangeRef.current=range}},[triggerElements,selectedRange,positionAtStart]);let[tooltipVisible,setTooltipVisible]=useState(!1),toggleVisibility=useCallback(status=>{setTooltipVisible(status),onVisibilityChange&&onVisibilityChange(status)},[onVisibilityChange]);useEffect(()=>(tooltipRegistry.set(instanceId,{id:instanceId,triggerElements,setVisible:visible=>{setTooltipVisible(visible),onVisibilityChange&&onVisibilityChange(visible)}}),()=>{tooltipRegistry.delete(instanceId)}),[instanceId,triggerElements,onVisibilityChange]),useEffect(()=>{selectedRange&&toggleVisibility(!0)},[]);let hideTooltipAfterDelay=useCallback(()=>{hideTooltipTimeoutId.current=setTimeout(()=>{triggerHovered.current||isTooltipHovered.current||!tooltipVisible||toggleVisibility(!1)},200)},[toggleVisibility,tooltipVisible]),handleTriggerPointerEnter=useCallback(event=>{triggerHovered.current=!0,clearTimeout(showTooltipTimeoutId.current??void 0),showTooltipTimeoutId.current=setTimeout(()=>{if(triggerHovered.current){let overlappingTooltips=findOverlappingTooltips(event?.target||triggerElements[0],instanceId,tooltipRegistry);if(overlappingTooltips.length>0){let allOverlappingElements=[...triggerElements];overlappingTooltips.forEach(tooltip=>{allOverlappingElements.push(...tooltip.triggerElements)});let topmostElement=getTopmostElement(allOverlappingElements,event);!topmostElement||triggerElements.includes(topmostElement)?(overlappingTooltips.forEach(tooltip=>{tooltip.setVisible(!1)}),tooltipVisible||toggleVisibility(!0)):tooltipVisible&&toggleVisibility(!1)}else tooltipVisible||toggleVisibility(!0)}},200)},[toggleVisibility,tooltipVisible,triggerElements,instanceId]),handleTriggerPointerLeave=useCallback(event=>{if(clearTimeout(hideTooltipTimeoutId.current??void 0),triggerHovered.current=!1,event&&"clientX"in event&&"clientY"in event)try{let elementUnderPointer=document.elementFromPoint(event.clientX,event.clientY);if(elementUnderPointer){let overlappingTooltips=findOverlappingTooltips(elementUnderPointer,instanceId,tooltipRegistry);if(overlappingTooltips.length>0){let allOverlappingElements=[];overlappingTooltips.forEach(tooltip=>{allOverlappingElements.push(...tooltip.triggerElements)});let topmostElement=getTopmostElement(allOverlappingElements,event);if(topmostElement&&!triggerElements.includes(topmostElement)){toggleVisibility(!1);let enterEvent=new PointerEvent("pointerenter",{bubbles:!0,cancelable:!0,clientX:event.clientX,clientY:event.clientY,pointerId:event.pointerId,pointerType:event.pointerType});topmostElement.dispatchEvent(enterEvent);return}}}}catch{}hideTooltipAfterDelay()},[hideTooltipAfterDelay,instanceId,toggleVisibility,triggerElements]);return(useEffect(()=>()=>{clearTimeout(showTooltipTimeoutId.current??void 0),clearTimeout(hideTooltipTimeoutId.current??void 0)},[]),useEffect(()=>{let wrappedHandleEnter=event=>{handleTriggerPointerEnter(event)};return triggerElements.forEach(node=>{node.addEventListener("pointerenter",wrappedHandleEnter),node.addEventListener("pointerleave",handleTriggerPointerLeave)}),()=>{triggerElements.forEach(node=>{node.removeEventListener("pointerenter",wrappedHandleEnter),node.removeEventListener("pointerleave",handleTriggerPointerLeave)})}},[handleTriggerPointerEnter,handleTriggerPointerLeave,triggerElements]),useEffect(()=>{triggerElements.forEach(node=>{tooltipVisible?node.setAttribute("aria-describedby",tooltipId):node.removeAttribute("aria-describedby")})},[tooltipId,tooltipVisible,triggerElements]),rangeRef.current)?React.createElement(TooltipContent,{dataDSId:"UserHighlightTooltip",content:content,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,isVisible:tooltipVisible,tooltipId:tooltipId,triggerRef:rangeRef,role:"tooltip",contentPadding:contentPadding,maxWidth:maxWidth,subTheme:"inverted",onTooltipPointerEnter:()=>{isTooltipHovered.current=!0},onTooltipPointerLeave:()=>{clearTimeout(hideTooltipTimeoutId.current??void 0),isTooltipHovered.current=!1,hideTooltipAfterDelay()},...ariaAttributes}):null}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type { ContainerQueryBreakpoints } from "../../../shared/mediaQueries";
|
|
2
|
-
export declare const ContainerQueryContext: React.Context<ContainerQueryBreakpoints>;
|
|
2
|
+
export declare const ContainerQueryContext: React.Context<ContainerQueryBreakpoints | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{useCallback,useEffect,useState}from"react";import styled from"@emotion/styled";import isPropValid from"@emotion/is-prop-valid";import{useWindow}from"../../../shared/useWindow";let StyledContainer=styled("div",{target:"
|
|
1
|
+
import React,{useCallback,useEffect,useState}from"react";import styled from"@emotion/styled";import isPropValid from"@emotion/is-prop-valid";import{useWindow}from"../../../shared/useWindow";let StyledContainer=styled("div",{target:"e10cpi5m0",label:"StyledContainer"})(({isExpanded,reduceMotion})=>({display:"grid",gridTemplateRows:"0fr",...!reduceMotion&&{transition:"200ms grid-template-rows cubic-bezier(0.0, 0.0, 0.25, 1.0)"},...isExpanded&&{gridTemplateRows:"1fr"}})),StyledContentContainer=styled("div",{shouldForwardProp:prop=>isPropValid(prop)&&"overflow"!==prop&&"isExpanded"!==prop,target:"e10cpi5m1",label:"StyledContentContainer"})(({isExpanded,overflow})=>({overflow:"hidden",...isExpanded&&{overflow}}));export function Expandable({id,isExpanded,children,overflow="visible",reduceMotion=!1,...ariaAttributes}){let[isContentContainerExpanded,setIsContentContainerExpanded]=useState(!!isExpanded),window=useWindow(),isMotionReduced=reduceMotion||window?.matchMedia("(prefers-reduced-motion: reduce)").matches,handleTransitionEnd=useCallback(()=>{isExpanded&&setIsContentContainerExpanded(!0)},[isExpanded]);return useEffect(()=>{if(isMotionReduced)return void setIsContentContainerExpanded(!!isExpanded);isExpanded||setIsContentContainerExpanded(!1)},[isExpanded,isMotionReduced]),React.createElement(StyledContainer,{onTransitionEnd:handleTransitionEnd,isExpanded:isExpanded,"data-ds-id":"Expandable",id:id,reduceMotion:isMotionReduced,...ariaAttributes},React.createElement(StyledContentContainer,{isExpanded:isContentContainerExpanded,overflow:overflow},children))}
|
|
@@ -24,7 +24,7 @@ export declare function viewportToFloatingPlacement(placement: ViewportPlacement
|
|
|
24
24
|
* Both axes → a corner (`top` + `left` → `"top-start"`); a single axis →
|
|
25
25
|
* centered on the other (`top` alone → `"top"`, `left` alone → `"left"`).
|
|
26
26
|
*/
|
|
27
|
-
export declare function axesToViewportPlacement(positionY: "top" | "bottom" | undefined, positionX: "left" | "right" | undefined): ViewportPlacement;
|
|
27
|
+
export declare function axesToViewportPlacement(positionY: "top" | "bottom" | undefined, positionX: "left" | "right" | undefined): ViewportPlacement | undefined;
|
|
28
28
|
/**
|
|
29
29
|
* Builds the (zero-size) reference rect for a viewport spot, in viewport
|
|
30
30
|
* coordinates — used by the virtual element under `strategy: "fixed"`.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
export type VirtualScrollListProps = {
|
|
3
3
|
"data-e2e-test-id"?: string;
|
|
4
|
-
id
|
|
4
|
+
id?: string;
|
|
5
5
|
maxHeight: number;
|
|
6
6
|
/** initial estimate for virtual scrolling calculations, helps estimate how many
|
|
7
7
|
* items fit in the viewport before real measurements.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import styled from"@emotion/styled";import React,{useRef,useReducer,useLayoutEffect,useEffect}from"react";import{VirtualScrollReducer}from"./VirtualScrollListReducer";let StyledContainer=styled("div",{target:"
|
|
1
|
+
import styled from"@emotion/styled";import React,{useRef,useReducer,useLayoutEffect,useEffect}from"react";import{VirtualScrollReducer}from"./VirtualScrollListReducer";let StyledContainer=styled("div",{target:"eyhrtu0",label:"StyledContainer"})(({maxHeight})=>({overflow:"auto",width:"100%",height:"100%",maxHeight})),StyledScrollableContent=styled("div",{target:"eyhrtu1",label:"StyledScrollableContent"})(({maxContentHeight})=>({overflow:"hidden",boxSizing:"border-box",height:maxContentHeight}));export function VirtualScrollList({id,maxHeight,itemHeight,itemAmount,emptyState=()=>null,itemInView,itemTemplate,containerStyle,"data-e2e-test-id":dataE2eTestId,onContentHeightChange,role,...ariaAttributes}){let scrollableContainerRef=useRef(null),viewportRef=useRef(null),adjustedForReflow=useRef(!1),[{scrolledItemCount=0,amountOfItemsInView=0,scrolledInPx,maxContentHeight=maxHeight,recommendedScrollPosition},dispatch]=useReducer(VirtualScrollReducer,{});useLayoutEffect(()=>{dispatch({type:"reset",itemHeight,maxHeight,overscan:10});let scrollableContainer=scrollableContainerRef.current;scrollableContainer&&(scrollableContainer.scrollTop=0)},[itemHeight,itemAmount,maxHeight]),useEffect(()=>{let scrollableContainer=scrollableContainerRef.current;scrollableContainer&&dispatch({type:"recommendScrollPosition",scrollTop:scrollableContainer.scrollTop,itemToBeInView:itemInView})},[itemInView]),useEffect(()=>{if(null==recommendedScrollPosition)return;let scrollableContainer=scrollableContainerRef.current;scrollableContainer&&(scrollableContainer.scrollTop=recommendedScrollPosition)},[recommendedScrollPosition]),useLayoutEffect(()=>{viewportRef.current&&dispatch({type:"updateViewport",viewportNode:viewportRef.current,itemAmount})},[itemAmount,scrolledItemCount,amountOfItemsInView]),useEffect(()=>{onContentHeightChange?.()},[maxContentHeight,onContentHeightChange]);let itemCountToBeRendered=Math.min(Math.max(0,itemAmount-scrolledItemCount),amountOfItemsInView);return maxContentHeight>maxHeight&&!adjustedForReflow.current&&viewportRef.current&&(setTimeout(()=>{let viewportNode=viewportRef.current;viewportNode&&dispatch({type:"updateViewport",viewportNode,itemAmount})}),adjustedForReflow.current=!0),React.createElement(StyledContainer,{ref:scrollableContainerRef,maxHeight:maxHeight,style:{maxHeight,...containerStyle},"data-e2e-test-id":dataE2eTestId,"data-ds-id":"VirtualScrollList",onScroll:e=>{dispatch({type:"scroll",scrollTop:e.currentTarget.scrollTop})}},0===itemAmount?emptyState():React.createElement(StyledScrollableContent,{maxContentHeight:maxContentHeight},React.createElement("div",{ref:viewportRef,style:{transform:`translateY(${scrolledInPx}px`},role:role,id:id,...ariaAttributes},!!itemCountToBeRendered&&Array(itemCountToBeRendered).fill(0).map((_,index)=>itemTemplate(scrolledItemCount+index)))))}
|
|
@@ -10,10 +10,10 @@ type State = {
|
|
|
10
10
|
renderFrom?: number;
|
|
11
11
|
scrolledItemCount?: number;
|
|
12
12
|
scrolledInPx?: number;
|
|
13
|
-
lastItemHeight?: number;
|
|
13
|
+
lastItemHeight?: number | null;
|
|
14
14
|
amountOfItemsInView?: number;
|
|
15
15
|
maxContentHeight?: number;
|
|
16
|
-
recommendedScrollPosition?: number;
|
|
16
|
+
recommendedScrollPosition?: number | null;
|
|
17
17
|
};
|
|
18
18
|
type Action = {
|
|
19
19
|
type: "scroll";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let findClosestOffsetIndex=(arr,val)=>{let start=0,end=arr.length-1,mid=Math.floor((start+end)/2);for(;start<=end&&arr[mid=Math.floor((start+end)/2)].amount!==val;)val<arr[mid].amount?end=mid-1:start=mid+1;return mid},getMaxHeight=(maxAmountOfItems,offsets,lastItemHeight
|
|
1
|
+
let findClosestOffsetIndex=(arr,val)=>{let start=0,end=arr.length-1,mid=Math.floor((start+end)/2);for(;start<=end&&arr[mid=Math.floor((start+end)/2)].amount!==val;)val<arr[mid].amount?end=mid-1:start=mid+1;return mid},getMaxHeight=(maxAmountOfItems,offsets,lastItemHeight)=>{let amountOfOffsets=Math.min(offsets.length,maxAmountOfItems);return(offsets[amountOfOffsets-1]?.amount||0)+(lastItemHeight??0)},reduceScroll=(prevState,scrollTop)=>{let{topOffsets=[],overscan:tolerance=0}=prevState,scrolledItemCount=Math.max(0,findClosestOffsetIndex(topOffsets,scrollTop)-tolerance/2),scrolledInPx=topOffsets[scrolledItemCount]?.amount||0;return{...prevState,scrolledItemCount,scrolledInPx}},reduceUpdateViewport=(prevState,viewportNode,itemAmount)=>{let{topOffsets=[],scrolledInPx=0,scrolledItemCount=0,avgItemHeight=0,lastItemHeight,maxHeight=0,overscan:tolerance=0}=prevState,newTopOffsets=[...topOffsets],updatedLastItemHeight=lastItemHeight;Array.from(viewportNode.children).forEach((child,i)=>{newTopOffsets[i+scrolledItemCount]={amount:scrolledInPx+child.offsetTop,isInterpolated:!1},i+scrolledItemCount!==itemAmount-1||lastItemHeight||(updatedLastItemHeight=child.getBoundingClientRect().height)});let newAvgItemHeight=Math.max(avgItemHeight,viewportNode.getBoundingClientRect().height/(viewportNode.childElementCount||1));for(let i=0;i<itemAmount;i+=1)(!newTopOffsets[i]||newTopOffsets[i].isInterpolated)&&(newTopOffsets[i]={amount:newTopOffsets[i-1].amount+newAvgItemHeight,isInterpolated:!0});let maxContentHeight=getMaxHeight(itemAmount,newTopOffsets,updatedLastItemHeight);return{...prevState,lastItemHeight:updatedLastItemHeight,avgItemHeight:newAvgItemHeight,topOffsets:newTopOffsets,amountOfItemsInView:Math.round(maxHeight/newAvgItemHeight)+tolerance,maxContentHeight}},reduceReset=(prevState,itemHeight,maxHeight,overscan)=>({...prevState,lastItemHeight:null,topOffsets:[{amount:0,isInterpolated:!1}],scrolledInPx:0,scrolledItemCount:0,maxHeight,avgItemHeight:itemHeight,overscan}),reduceRecommendScrollPosition=(prevState,scrollTop,itemToBeInView)=>{let{topOffsets,maxHeight}=prevState;if(!topOffsets||void 0===maxHeight)return prevState;let bottomOfTarget=topOffsets[itemToBeInView+1]?.amount,topOfTarget=topOffsets[itemToBeInView]?.amount,recommendedScrollPosition=null;return topOfTarget<scrollTop&&(recommendedScrollPosition=topOfTarget),bottomOfTarget>=scrollTop+maxHeight&&(recommendedScrollPosition=bottomOfTarget-maxHeight),itemToBeInView===topOffsets.length-1&&(recommendedScrollPosition=topOffsets[itemToBeInView].amount),{...prevState,recommendedScrollPosition}};export const VirtualScrollReducer=(prevState,action)=>{switch(action.type){case"reset":return reduceReset(prevState,action.itemHeight,action.maxHeight,action.overscan);case"scroll":return reduceScroll(prevState,action.scrollTop);case"updateViewport":return reduceUpdateViewport(prevState,action.viewportNode,action.itemAmount);case"recommendScrollPosition":return reduceRecommendScrollPosition(prevState,action.scrollTop,action.itemToBeInView);default:throw Error()}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function appendId(src: string, id: string): string;
|
|
1
|
+
export declare function appendId(src: string | undefined, id: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import React from"react";export const forwardRefPolymorphic=render=>React.forwardRef(render);
|
|
@@ -6,5 +6,11 @@
|
|
|
6
6
|
"InlineMessage.InfoIcon.AriaLabel": "Info",
|
|
7
7
|
"PromptButtonGroup.OverflowButton.Label": "Weitere",
|
|
8
8
|
"PromptButtonGroup.OverflowButton.AriaLabel": "Weitere Vorschläge anzeigen",
|
|
9
|
-
"PromptButtonGroup.Popover.AriaLabel": "Prompt-Vorschläge"
|
|
9
|
+
"PromptButtonGroup.Popover.AriaLabel": "Prompt-Vorschläge",
|
|
10
|
+
"CatalogCard.DropdownMenu.AriaLabel": "Weitere Optionen",
|
|
11
|
+
"DropdownMenu.Trigger.AriaLabel": "Weitere Optionen",
|
|
12
|
+
"EntityTree.ExpandButton.ExpandAriaLabel": "Aufklappen",
|
|
13
|
+
"EntityTree.ExpandButton.CollapseAriaLabel": "Zuklappen",
|
|
14
|
+
"SearchInput.ClearButton.AriaLabel": "Suche löschen",
|
|
15
|
+
"Tag.RemoveButton.AriaLabel": "Entfernen"
|
|
10
16
|
}
|
|
@@ -6,5 +6,11 @@
|
|
|
6
6
|
"InlineMessage.InfoIcon.AriaLabel": "Info",
|
|
7
7
|
"PromptButtonGroup.OverflowButton.Label": "More",
|
|
8
8
|
"PromptButtonGroup.OverflowButton.AriaLabel": "Show more suggestions",
|
|
9
|
-
"PromptButtonGroup.Popover.AriaLabel": "Prompt suggestions"
|
|
9
|
+
"PromptButtonGroup.Popover.AriaLabel": "Prompt suggestions",
|
|
10
|
+
"CatalogCard.DropdownMenu.AriaLabel": "More options",
|
|
11
|
+
"DropdownMenu.Trigger.AriaLabel": "More options",
|
|
12
|
+
"EntityTree.ExpandButton.ExpandAriaLabel": "Expand",
|
|
13
|
+
"EntityTree.ExpandButton.CollapseAriaLabel": "Collapse",
|
|
14
|
+
"SearchInput.ClearButton.AriaLabel": "Clear search",
|
|
15
|
+
"Tag.RemoveButton.AriaLabel": "Remove"
|
|
10
16
|
}
|
|
@@ -2,8 +2,8 @@ import type { ColumnSizes, HorizontalAlignment, MQ, SpaceSizes, IconSizes, TextA
|
|
|
2
2
|
export type Breakpoints = [string, string, string];
|
|
3
3
|
export type ContainerQueryBreakpoints = [string, string?, string?];
|
|
4
4
|
type MqProp<T> = [
|
|
5
|
-
T | MQ<T
|
|
6
|
-
(Record<T extends string ? T : never, string | number> | ((value: T) => string | number))
|
|
5
|
+
T | MQ<T> | undefined,
|
|
6
|
+
(Record<T extends string ? T : never, string | number | undefined> | ((value: T) => string | number))
|
|
7
7
|
];
|
|
8
8
|
type MqRules = Record<string, MqProp<TextAlignment> | MqProp<SpaceSizes> | MqProp<HorizontalAlignment> | MqProp<VerticalAlignment> | MqProp<StackHorizontalAlignment> | MqProp<StackVerticalAlignment> | MqProp<LightboxVerticalAlignment> | MqProp<ColumnSizes> | MqProp<Order> | MqProp<ColumnAlignment> | MqProp<Hyphens> | MqProp<BorderRadius> | MqProp<boolean> | MqProp<IconSizes> | MqProp<ButtonSize> | MqProp<InlineMessageSize>>;
|
|
9
9
|
type EmotionCssPropertyName = string;
|
|
@@ -13,7 +13,7 @@ type MqFunc = (rules: MqRules | {
|
|
|
13
13
|
mq: MqRules;
|
|
14
14
|
cq: MqRules;
|
|
15
15
|
}) => Record<string, EmotionCssValue | EmotionCssDescription>;
|
|
16
|
-
type ResponsiveValueRules = Record<EmotionCssPropertyName, EmotionCssValue[] | EmotionCssValue | MQ<EmotionCssValue
|
|
16
|
+
type ResponsiveValueRules = Record<EmotionCssPropertyName, EmotionCssValue[] | EmotionCssValue | MQ<EmotionCssValue> | undefined>;
|
|
17
17
|
type ResponsiveValueResult = Record<string, EmotionCssValue | EmotionCssDescription>;
|
|
18
18
|
export declare const mq: MqFunc;
|
|
19
19
|
export declare const useResponsiveStyles: MqFunc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getButtonAppearanceReset}from"./getButtonAppearanceReset";import{getDisabledStyles}from"./getDisabledStyles";export function getPillStyles({theme,disabled,leftIcon,variant}){let verticalPadding=theme.variables.size.spacing.xs;return{...getButtonAppearanceReset(),borderRadius:theme.variables.size.borderRadius.full,fontFamily:theme.variables.fontFamily.lato,fontSize:theme.variables.size.font.s,lineHeight:theme.variables.size.lineHeight.xs,fontWeight:theme.variables.weight.bold,cursor:"pointer",userSelect:"none",color:theme.values.color.text.secondary.default,backgroundColor:theme.values.color.background.primary.default,border:`2px solid ${theme.values.color.border.secondary.default}`,padding:`${verticalPadding} ${theme.variables.size.spacing.m}`,...!!leftIcon&&{padding:`${verticalPadding} ${theme.variables.size.spacing.m} ${verticalPadding} ${theme.variables.size.spacing.s}`},..."standalone"===variant&&{color:theme.values.color.text.ai.default},...!disabled&&{"&:hover, &:active":{backgroundColor:theme.values.color.background.
|
|
1
|
+
import{getButtonAppearanceReset}from"./getButtonAppearanceReset";import{getDisabledStyles}from"./getDisabledStyles";export function getPillStyles({theme,disabled,leftIcon,variant}){let verticalPadding=theme.variables.size.spacing.xs;return{...getButtonAppearanceReset(),borderRadius:theme.variables.size.borderRadius.full,fontFamily:theme.variables.fontFamily.lato,fontSize:theme.variables.size.font.s,lineHeight:theme.variables.size.lineHeight.xs,fontWeight:theme.variables.weight.bold,cursor:"pointer",userSelect:"none",color:theme.values.color.text.secondary.default,backgroundColor:theme.values.color.background.primary.default,border:`2px solid ${theme.values.color.border.secondary.default}`,padding:`${verticalPadding} ${theme.variables.size.spacing.m}`,...!!leftIcon&&{padding:`${verticalPadding} ${theme.variables.size.spacing.m} ${verticalPadding} ${theme.variables.size.spacing.s}`},..."standalone"===variant&&{color:theme.values.color.text.ai.default},...!disabled&&{"&:hover, &:active":{backgroundColor:theme.values.color.background.secondary.default,borderColor:theme.values.color.border.secondary.hover}},...disabled&&{...getDisabledStyles({theme})}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const parseDurationMs=duration=>{let trimmed=duration.trim();return trimmed.endsWith("ms")?parseFloat(trimmed):trimmed.endsWith("s")?1e3*parseFloat(trimmed):parseFloat(trimmed)||0};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useState,useLayoutEffect}from"react";import{useWindow}from"./useWindow";import{useDocument}from"./useDocument";export const useAutoPosition=({anchorRef,contentRef,isActive,forceVerticalPosition})=>{let[verticalPosition,setVerticalPosition]=useState("down"),[horizontalPosition,setHorizontalPosition]=useState("left"),document=useDocument(),window=useWindow();return useLayoutEffect(()=>{if(contentRef)if(isActive){let maxHeight=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0),
|
|
1
|
+
import{useState,useLayoutEffect}from"react";import{useWindow}from"./useWindow";import{useDocument}from"./useDocument";export const useAutoPosition=({anchorRef,contentRef,isActive,forceVerticalPosition})=>{let[verticalPosition,setVerticalPosition]=useState("down"),[horizontalPosition,setHorizontalPosition]=useState("left"),document=useDocument(),window=useWindow();return useLayoutEffect(()=>{if(contentRef)if(isActive){let maxHeight=Math.max(document.documentElement.clientHeight||0,window.innerHeight||0),contentElement=contentRef.current,anchorElement=anchorRef.current;if(!contentElement||!anchorElement)return;let rect=contentElement.getBoundingClientRect(),anchorHeight=anchorElement.getBoundingClientRect().height,anchorX=anchorElement.getBoundingClientRect().x,screenWidth=window.innerWidth,isUp=rect.top+rect.height>maxHeight,isDown=rect.top-anchorHeight<rect.height;forceVerticalPosition?setVerticalPosition(forceVerticalPosition):isUp?setVerticalPosition("up"):isDown&&setVerticalPosition("down"),anchorX>screenWidth/2?setHorizontalPosition("left"):anchorX<screenWidth/2&&setHorizontalPosition("right")}else setVerticalPosition("down"),setHorizontalPosition("left")},[anchorRef,contentRef,document.documentElement.clientHeight,isActive,window.innerHeight,window.innerWidth,forceVerticalPosition]),[verticalPosition,horizontalPosition]};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import type React from "react";
|
|
2
|
-
export declare function useHover(ref: React.MutableRefObject<any>): boolean;
|
|
2
|
+
export declare function useHover(ref: React.MutableRefObject<any> | false | null | undefined): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useCallback,useEffect,useState}from"react";export function useHover(ref){let[hovered,setHovered]=useState(!1),handleMouseEnter=useCallback(()=>setHovered(!0),[]),handleMouseLeave=useCallback(()=>setHovered(!1),[]);return
|
|
1
|
+
import{useCallback,useEffect,useState}from"react";export function useHover(ref){let[hovered,setHovered]=useState(!1),handleMouseEnter=useCallback(()=>setHovered(!0),[]),handleMouseLeave=useCallback(()=>setHovered(!1),[]);return useEffect(()=>{if(!ref)return;let node=ref.current;if(node)return node.addEventListener("mouseenter",handleMouseEnter),node.addEventListener("mouseleave",handleMouseLeave),()=>{node.removeEventListener("mouseenter",handleMouseEnter),node.removeEventListener("mouseleave",handleMouseLeave)}},[ref,handleMouseEnter,handleMouseLeave]),!!ref&&hovered}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useCallback}from"react";export const useOutsideClickDeactivatesWithinPortal=({portalContainerElement,outerRef,isDismissible})=>useCallback(evt=>(!portalContainerElement
|
|
1
|
+
import{useCallback}from"react";export const useOutsideClickDeactivatesWithinPortal=({portalContainerElement,outerRef,isDismissible})=>useCallback(evt=>(!portalContainerElement?.contains(evt.target)||evt.target===outerRef?.current)&&isDismissible,[portalContainerElement,outerRef,isDismissible]);
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
"name": "1",
|
|
5
5
|
"subState": "",
|
|
6
6
|
"darkValue": "0px 2px 5px 0px rgba(0, 0, 0, 0.07), 0px 0.3px 0.6px 0px rgba(0, 0, 0, 0.00), 0px 0px 0px 1px rgba(64, 69, 79, 0.40) inset",
|
|
7
|
-
"darkOriginalValue": "07), 0px 0.3px 0.6px 0px rgba(0, 0, 0, 0.00), 0px 0px 0px 1px rgba(64, 69, 79, 0",
|
|
7
|
+
"darkOriginalValue": "0px 2px 5px 0px rgba(0, 0, 0, 0.07), 0px 0.3px 0.6px 0px rgba(0, 0, 0, 0.00), 0px 0px 0px 1px rgba(64, 69, 79, 0.40) inset",
|
|
8
8
|
"lightValue": "0px 0.3px 0.6px rgba(0, 0, 0, 0.0035), 0px 2px 5px rgba(0, 0, 0, 0.07)",
|
|
9
|
-
"lightOriginalValue": "3px 0.6px rgba(0, 0, 0, 0.0035), 0px 2px 5px rgba(0, 0, 0, 0"
|
|
9
|
+
"lightOriginalValue": "0px 0.3px 0.6px rgba(0, 0, 0, 0.0035), 0px 2px 5px rgba(0, 0, 0, 0.07)"
|
|
10
10
|
}
|
|
11
11
|
},
|
|
12
12
|
"2": {
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"name": "2",
|
|
15
15
|
"subState": "",
|
|
16
16
|
"darkValue": "0px 2px 8px 0px rgba(0, 0, 0, 0.12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0.01), 0px 0px 0px 1px rgba(64, 69, 79, 0.40) inset",
|
|
17
|
-
"darkOriginalValue": "12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0.01), 0px 0px 0px 1px rgba(64, 69, 79, 0",
|
|
17
|
+
"darkOriginalValue": "0px 2px 8px 0px rgba(0, 0, 0, 0.12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0.01), 0px 0px 0px 1px rgba(64, 69, 79, 0.40) inset",
|
|
18
18
|
"lightValue": "0px 2px 8px 0px rgba(0, 0, 0, 0.12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0.01)",
|
|
19
|
-
"lightOriginalValue": "12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0"
|
|
19
|
+
"lightOriginalValue": "0px 2px 8px 0px rgba(0, 0, 0, 0.12), 0px 0.3px 1px 0px rgba(0, 0, 0, 0.01)"
|
|
20
20
|
}
|
|
21
21
|
},
|
|
22
22
|
"3": {
|
|
@@ -24,9 +24,9 @@
|
|
|
24
24
|
"name": "3",
|
|
25
25
|
"subState": "",
|
|
26
26
|
"darkValue": "0px 4px 20px 0px rgba(0, 0, 0, 0.20), 0px 0.5px 2.5px 0px rgba(0, 0, 0, 0.16), 0px 0px 0px 1px rgba(64, 69, 79, 0.50) inset",
|
|
27
|
-
"darkOriginalValue": "20), 0px 0.5px 2.5px 0px rgba(0, 0, 0, 0.16), 0px 0px 0px 1px rgba(64, 69, 79, 0",
|
|
27
|
+
"darkOriginalValue": "0px 4px 20px 0px rgba(0, 0, 0, 0.20), 0px 0.5px 2.5px 0px rgba(0, 0, 0, 0.16), 0px 0px 0px 1px rgba(64, 69, 79, 0.50) inset",
|
|
28
28
|
"lightValue": "0px 0.5px 2.5px rgba(0, 0, 0, 0.16), 0px 4px 20px rgba(0, 0, 0, 0.2)",
|
|
29
|
-
"lightOriginalValue": "5px 2.5px rgba(0, 0, 0, 0.16), 0px 4px 20px rgba(0, 0, 0, 0"
|
|
29
|
+
"lightOriginalValue": "0px 0.5px 2.5px rgba(0, 0, 0, 0.16), 0px 4px 20px rgba(0, 0, 0, 0.2)"
|
|
30
30
|
}
|
|
31
31
|
},
|
|
32
32
|
"4": {
|
|
@@ -34,9 +34,9 @@
|
|
|
34
34
|
"name": "4",
|
|
35
35
|
"subState": "",
|
|
36
36
|
"darkValue": "0px 32px 112px 0px rgba(0, 0, 0, 0.24), 0px 4px 14px 0px rgba(0, 0, 0, 0.12), 0px 0px 0px 1px rgba(64, 69, 79, 0.50) inset",
|
|
37
|
-
"darkOriginalValue": "24), 0px 4px 14px 0px rgba(0, 0, 0, 0.12), 0px 0px 0px 1px rgba(64, 69, 79, 0",
|
|
37
|
+
"darkOriginalValue": "0px 32px 112px 0px rgba(0, 0, 0, 0.24), 0px 4px 14px 0px rgba(0, 0, 0, 0.12), 0px 0px 0px 1px rgba(64, 69, 79, 0.50) inset",
|
|
38
38
|
"lightValue": "0px 4px 14px rgba(0, 0, 0, 0.12), 0px 32px 112px rgba(0, 0, 0, 0.24)",
|
|
39
|
-
"lightOriginalValue": "12), 0px 32px 112px rgba(0, 0, 0, 0"
|
|
39
|
+
"lightOriginalValue": "0px 4px 14px rgba(0, 0, 0, 0.12), 0px 32px 112px rgba(0, 0, 0, 0.24)"
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
"badge": {
|
|
@@ -2275,9 +2275,9 @@
|
|
|
2275
2275
|
"name": "default-ring",
|
|
2276
2276
|
"subState": "",
|
|
2277
2277
|
"darkValue": "0px 0px 0px 4px rgba(123, 142, 157, 0.10)",
|
|
2278
|
-
"darkOriginalValue": "",
|
|
2278
|
+
"darkOriginalValue": "0px 0px 0px 4px rgba(123, 142, 157, 0.10)",
|
|
2279
2279
|
"lightValue": "0px 0px 0px 4px rgba(123, 142, 157, 0.10)",
|
|
2280
|
-
"lightOriginalValue": ""
|
|
2280
|
+
"lightOriginalValue": "0px 0px 0px 4px rgba(123, 142, 157, 0.10)"
|
|
2281
2281
|
}
|
|
2282
2282
|
},
|
|
2283
2283
|
"focus-ring": {
|
|
@@ -2285,9 +2285,9 @@
|
|
|
2285
2285
|
"name": "focus-ring",
|
|
2286
2286
|
"subState": "",
|
|
2287
2287
|
"darkValue": "0px 0px 0px 4px rgba(4, 122, 136, 0.25)",
|
|
2288
|
-
"darkOriginalValue": "",
|
|
2288
|
+
"darkOriginalValue": "0px 0px 0px 4px rgba(4, 122, 136, 0.25)",
|
|
2289
2289
|
"lightValue": "0px 0px 0px 4px rgba(4, 122, 136, 0.25)",
|
|
2290
|
-
"lightOriginalValue": ""
|
|
2290
|
+
"lightOriginalValue": "0px 0px 0px 4px rgba(4, 122, 136, 0.25)"
|
|
2291
2291
|
}
|
|
2292
2292
|
}
|
|
2293
2293
|
}
|