@pingux/astro 2.221.6-alpha.0 → 2.234.0-alpha.0
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/lib/cjs/components/AccordionGridGroup/AccordionGrid.styles.d.ts +50 -0
- package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.d.ts +14 -0
- package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.js +6 -56
- package/lib/cjs/components/AccordionGridGroup/AccordionGridGroup.stories.js +2 -1
- package/lib/cjs/components/AccordionGridGroup/index.d.ts +1 -0
- package/lib/cjs/components/AccordionGridItem/AccordionGridItem.d.ts +3 -0
- package/lib/cjs/components/AccordionGridItem/AccordionGridItem.js +12 -20
- package/lib/cjs/components/AccordionGridItem/AccordionGridItemBody.d.ts +4 -0
- package/lib/cjs/components/AccordionGridItem/AccordionGridItemBody.js +9 -15
- package/lib/cjs/components/AccordionGridItem/AccordionGridItemHeader.d.ts +4 -0
- package/lib/cjs/components/AccordionGridItem/AccordionGridItemHeader.js +10 -23
- package/lib/cjs/components/AccordionGridItem/index.d.ts +1 -0
- package/lib/cjs/components/AccordionGroup/AccordionGroup.stories.js +12 -1
- package/lib/cjs/components/AccordionGroup/AccordionGroup.test.js +43 -1
- package/lib/cjs/components/AccordionItem/AccordionItem.d.ts +3 -0
- package/lib/cjs/components/AccordionItem/AccordionItem.js +4 -2
- package/lib/cjs/components/ArrayField/ArrayField.js +30 -13
- package/lib/cjs/components/ArrayField/ArrayField.mdx +5 -1
- package/lib/cjs/components/ArrayField/ArrayField.stories.js +127 -90
- package/lib/cjs/components/ArrayField/ArrayField.styles.d.ts +9 -0
- package/lib/cjs/components/ArrayField/ArrayField.styles.js +41 -0
- package/lib/cjs/components/ArrayField/ArrayField.test.js +202 -30
- package/lib/cjs/components/ArrayField/ArrayFieldDeleteButton.js +21 -8
- package/lib/cjs/components/ArrayField/ArrayFieldDeleteButton.styles.d.ts +5 -0
- package/lib/cjs/components/ArrayField/ArrayFieldDeleteButton.styles.js +21 -0
- package/lib/cjs/components/ArrayField/arrayFieldAttributes.d.ts +1 -99
- package/lib/cjs/components/ArrayField/arrayFieldAttributes.js +3 -2
- package/lib/cjs/components/AstroProvider/AstroProvider.d.ts +16 -0
- package/lib/cjs/components/AstroProvider/AstroProvider.js +10 -34
- package/lib/cjs/components/AstroProvider/PageWrapper.test.js +49 -4
- package/lib/cjs/components/AstroProvider/index.d.ts +2 -0
- package/lib/cjs/components/Badge/Badge.js +20 -11
- package/lib/cjs/components/Badge/Badge.mdx +6 -0
- package/lib/cjs/components/Badge/Badge.stories.js +64 -19
- package/lib/cjs/components/Badge/Badge.styles.d.ts +266 -0
- package/lib/cjs/components/Badge/Badge.styles.js +24 -4
- package/lib/cjs/components/Badge/Badge.test.js +165 -1
- package/lib/cjs/components/Badge/BadgeHelpHint.d.ts +8 -0
- package/lib/cjs/components/Badge/BadgeHelpHint.js +84 -0
- package/lib/cjs/components/Badge/Convenience/DefaultBadge.js +5 -2
- package/lib/cjs/components/Badge/Convenience/ErrorCalloutBadge.js +5 -4
- package/lib/cjs/components/Badge/Convenience/InfoCalloutBadge.js +5 -4
- package/lib/cjs/components/Badge/Convenience/SuccessCalloutBadge.js +5 -4
- package/lib/cjs/components/Badge/Convenience/WarningCalloutBadge.js +5 -4
- package/lib/cjs/components/Checkbox/Checkbox.d.ts +9 -0
- package/lib/cjs/components/Checkbox/Checkbox.styles.d.ts +15 -0
- package/lib/cjs/components/Checkbox/CheckboxBase.d.ts +4 -0
- package/lib/cjs/components/Checkbox/CheckboxBase.js +100 -49
- package/lib/cjs/components/Checkbox/CheckboxIcons.d.ts +15 -0
- package/lib/cjs/components/Checkbox/CheckboxIcons.js +122 -0
- package/lib/cjs/components/Checkbox/index.d.ts +1 -0
- package/lib/cjs/components/CheckboxField/CheckboxField.js +5 -1
- package/lib/cjs/components/CheckboxField/CheckboxField.stories.js +1 -1
- package/lib/cjs/components/CheckboxField/CheckboxField.test.js +41 -5
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.d.ts +4 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.js +89 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.mdx +69 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.stories.js +118 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.styles.d.ts +8 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.styles.js +40 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroup.test.js +485 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroupItem.d.ts +4 -0
- package/lib/cjs/components/CheckboxFieldGroup/CheckboxFieldGroupItem.js +112 -0
- package/lib/cjs/components/CheckboxFieldGroup/checkboxFieldGroupAttributes.d.ts +2 -0
- package/lib/cjs/components/CheckboxFieldGroup/checkboxFieldGroupAttributes.js +108 -0
- package/lib/cjs/components/CheckboxFieldGroup/index.d.ts +3 -0
- package/lib/cjs/components/CheckboxFieldGroup/index.js +27 -0
- package/lib/cjs/components/CodeView/CodeView.js +3 -2
- package/lib/cjs/components/CodeView/CodeView.stories.js +44 -1
- package/lib/cjs/components/CodeView/CodeView.test.js +84 -0
- package/lib/cjs/components/ComboBoxField/ComboBoxField.stories.js +18 -1
- package/lib/cjs/components/CopyText/CopyButton.js +1 -2
- package/lib/cjs/components/DatePicker/DatePicker.test.js +1 -1
- package/lib/cjs/components/EmptyState/EmptyState.d.ts +4 -0
- package/lib/cjs/components/EmptyState/EmptyState.js +66 -0
- package/lib/cjs/components/EmptyState/EmptyState.mdx +44 -0
- package/lib/cjs/components/EmptyState/EmptyState.stories.js +88 -0
- package/lib/cjs/components/EmptyState/EmptyState.styles.d.ts +13 -0
- package/lib/cjs/components/EmptyState/EmptyState.styles.js +22 -0
- package/lib/cjs/components/EmptyState/EmptyState.test.js +223 -0
- package/lib/cjs/components/EmptyState/emptyStateAttributes.d.ts +99 -0
- package/lib/cjs/components/EmptyState/emptyStateAttributes.js +49 -0
- package/lib/cjs/components/EmptyState/index.d.ts +1 -0
- package/lib/cjs/components/EmptyState/index.js +14 -0
- package/lib/cjs/components/HelpHint/HelpHint.js +38 -83
- package/lib/cjs/components/IconBadge/IconBadge.d.ts +2 -0
- package/lib/cjs/components/IconBadge/IconBadge.js +39 -20
- package/lib/cjs/components/IconBadge/IconBadge.mdx +5 -1
- package/lib/cjs/components/IconBadge/IconBadge.stories.js +50 -7
- package/lib/cjs/components/IconBadge/IconBadge.styles.d.ts +19 -0
- package/lib/cjs/components/IconBadge/IconBadge.styles.js +27 -0
- package/lib/cjs/components/IconBadge/IconBadge.test.js +67 -14
- package/lib/cjs/components/IconButton/IconButton.styles.d.ts +3 -0
- package/lib/cjs/components/IconButton/IconButton.styles.js +4 -0
- package/lib/cjs/components/LabelValuePairs/LabelValuePairs.stories.js +1 -0
- package/lib/cjs/components/LabelValuePairs/LabelValuePairs.test.js +18 -1
- package/lib/cjs/components/LabelValuePairs/LabelValuePairsLabel.js +1 -2
- package/lib/cjs/components/ListView/ListView.js +28 -4
- package/lib/cjs/components/ListView/ListView.stories.js +110 -62
- package/lib/cjs/components/ListView/ListView.test.js +80 -0
- package/lib/cjs/components/ListView/ListViewTypes.d.ts +5 -0
- package/lib/cjs/components/ListViewItem/ListViewItem.js +28 -7
- package/lib/cjs/components/ListViewItem/ListViewItem.stories.js +2 -5
- package/lib/cjs/components/ListViewItem/ListViewItem.styles.js +7 -0
- package/lib/cjs/components/ListViewItem/ListViewItem.test.js +36 -5
- package/lib/cjs/components/ListViewItem/listViewItemAttributes.js +9 -1
- package/lib/cjs/components/MultivaluesField/DefaultMultivaluesField.js +8 -0
- package/lib/cjs/components/MultivaluesField/MultivaluesField.stories.js +23 -1
- package/lib/cjs/components/NavBar/NavBar.styles.d.ts +11 -1
- package/lib/cjs/components/PageHeader/PageHeader.js +9 -4
- package/lib/cjs/components/PageHeader/PageHeader.mdx +3 -0
- package/lib/cjs/components/PageHeader/PageHeader.stories.js +14 -4
- package/lib/cjs/components/PageHeader/PageHeader.test.js +57 -3
- package/lib/cjs/components/PanelHeader/PanelHeader.js +36 -8
- package/lib/cjs/components/PanelHeader/PanelHeader.stories.js +2 -5
- package/lib/cjs/components/PanelHeader/PanelHeader.test.js +46 -4
- package/lib/cjs/components/RangeCalendar/RangeCalendar.js +1 -1
- package/lib/cjs/components/RangeCalendar/RangeCalendar.mdx +4 -0
- package/lib/cjs/components/RangeCalendar/RangeCalendar.test.js +30 -0
- package/lib/cjs/components/RangeCalendar/RangeCalendarGrid.js +1 -0
- package/lib/cjs/components/SelectField/SelectField.stories.js +14 -1
- package/lib/cjs/components/Tab/Tab.js +38 -6
- package/lib/cjs/components/Tab/getSlotText.d.ts +6 -0
- package/lib/cjs/components/Tab/getSlotText.js +21 -0
- package/lib/cjs/components/Tab/getSlotText.test.js +23 -0
- package/lib/cjs/components/TabPicker/TabPicker.js +9 -4
- package/lib/cjs/components/Tabs/Tabs.stories.js +63 -14
- package/lib/cjs/components/Tabs/Tabs.storyData.d.ts +1 -0
- package/lib/cjs/components/Tabs/Tabs.storyData.js +8 -0
- package/lib/cjs/components/Tabs/Tabs.style.d.ts +5 -0
- package/lib/cjs/components/Tabs/Tabs.style.js +7 -2
- package/lib/cjs/components/Tabs/Tabs.test.js +85 -37
- package/lib/cjs/context/CheckboxFieldGroupContext/index.d.ts +10 -0
- package/lib/cjs/context/CheckboxFieldGroupContext/index.js +17 -0
- package/lib/cjs/hooks/index.d.ts +1 -0
- package/lib/cjs/hooks/index.js +7 -0
- package/lib/cjs/hooks/useField/useField.d.ts +78 -78
- package/lib/cjs/hooks/useGetTheme/useGetTheme.d.ts +14 -0
- package/lib/cjs/hooks/useHelpHintPopover/index.d.ts +2 -0
- package/lib/cjs/hooks/useHelpHintPopover/index.js +32 -0
- package/lib/cjs/hooks/useHelpHintPopover/useHelpHintPopover.d.ts +25 -0
- package/lib/cjs/hooks/useHelpHintPopover/useHelpHintPopover.js +137 -0
- package/lib/cjs/hooks/usePagination/usePagination.d.ts +94 -94
- package/lib/cjs/index.d.ts +4 -0
- package/lib/cjs/index.js +114 -69
- package/lib/cjs/styles/forms/index.js +23 -2
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.d.ts +17 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/colors.js +18 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/customProperties/icons.d.ts +6 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/customProperties/index.d.ts +7 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/badges.d.ts +90 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/badges.js +76 -29
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/box.d.ts +14 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/box.js +22 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.d.ts +20 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +20 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/comboBox.d.ts +3 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/comboBox.js +4 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/forms.d.ts +45 -8
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/forms.js +34 -10
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/listview.d.ts +29 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/listview.js +30 -0
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/text.d.ts +5 -2
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/text.js +5 -2
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/variants.d.ts +52 -1
- package/lib/cjs/styles/themeOverrides/nextGenDarkMode/variants/variants.js +12 -1
- package/lib/cjs/styles/themeOverrides/onyxSideNav.d.ts +6 -0
- package/lib/cjs/styles/themes/astro/customProperties/icons.d.ts +6 -0
- package/lib/cjs/styles/themes/astro/customProperties/icons.js +3 -1
- package/lib/cjs/styles/themes/astro/customProperties/index.d.ts +7 -0
- package/lib/cjs/styles/themes/astro/customProperties/index.js +3 -0
- package/lib/cjs/styles/themes/next-gen/codeView/codeView.d.ts +9 -0
- package/lib/cjs/styles/themes/next-gen/codeView/codeView.js +5 -2
- package/lib/cjs/styles/themes/next-gen/colors/colors.d.ts +17 -0
- package/lib/cjs/styles/themes/next-gen/colors/twoTone.d.ts +18 -0
- package/lib/cjs/styles/themes/next-gen/colors/twoTone.js +21 -1
- package/lib/cjs/styles/themes/next-gen/convertedComponentList.d.ts +2 -0
- package/lib/cjs/styles/themes/next-gen/convertedComponentList.js +5 -3
- package/lib/cjs/styles/themes/next-gen/customProperties/icons.d.ts +6 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/icons.js +5 -1
- package/lib/cjs/styles/themes/next-gen/customProperties/index.d.ts +7 -0
- package/lib/cjs/styles/themes/next-gen/customProperties/index.js +3 -1
- package/lib/cjs/styles/themes/next-gen/forms.d.ts +83 -4
- package/lib/cjs/styles/themes/next-gen/forms.js +51 -8
- package/lib/cjs/styles/themes/next-gen/next-gen.d.ts +472 -72
- package/lib/cjs/styles/themes/next-gen/spacing.d.ts +1 -0
- package/lib/cjs/styles/themes/next-gen/spacing.js +2 -1
- package/lib/cjs/styles/themes/next-gen/variants/arrayField.d.ts +9 -0
- package/lib/cjs/styles/themes/next-gen/variants/arrayField.js +71 -0
- package/lib/cjs/styles/themes/next-gen/variants/arrayFieldDeleteButton.d.ts +5 -0
- package/lib/cjs/styles/themes/next-gen/variants/arrayFieldDeleteButton.js +44 -0
- package/lib/cjs/styles/themes/next-gen/variants/badges.d.ts +243 -33
- package/lib/cjs/styles/themes/next-gen/variants/badges.js +77 -28
- package/lib/cjs/styles/themes/next-gen/variants/box.d.ts +2 -0
- package/lib/cjs/styles/themes/next-gen/variants/box.js +7 -4
- package/lib/cjs/styles/themes/next-gen/variants/button.d.ts +41 -29
- package/lib/cjs/styles/themes/next-gen/variants/button.js +25 -2
- package/lib/cjs/styles/themes/next-gen/variants/images.d.ts +6 -1
- package/lib/cjs/styles/themes/next-gen/variants/images.js +8 -1
- package/lib/cjs/styles/themes/next-gen/variants/label.js +33 -1
- package/lib/cjs/styles/themes/next-gen/variants/listview.d.ts +33 -0
- package/lib/cjs/styles/themes/next-gen/variants/listview.js +36 -1
- package/lib/cjs/styles/themes/next-gen/variants/rangeCalendar.d.ts +10 -0
- package/lib/cjs/styles/themes/next-gen/variants/rangeCalendar.js +15 -4
- package/lib/cjs/styles/themes/next-gen/variants/tabs.d.ts +9 -0
- package/lib/cjs/styles/themes/next-gen/variants/tabs.js +12 -3
- package/lib/cjs/styles/themes/next-gen/variants/text.d.ts +5 -1
- package/lib/cjs/styles/themes/next-gen/variants/text.js +6 -2
- package/lib/cjs/styles/themes/next-gen/variants/variants.d.ts +103 -6
- package/lib/cjs/styles/themes/next-gen/variants/variants.js +30 -4
- package/lib/cjs/styles/variants/variants.js +8 -0
- package/lib/cjs/types/AccordionGridGroup.d.ts +36 -0
- package/lib/cjs/types/AccordionGridGroup.js +6 -0
- package/lib/cjs/types/AccordionGridItem.d.ts +52 -0
- package/lib/cjs/types/AccordionGridItem.js +6 -0
- package/lib/cjs/types/AstroProvider.d.ts +32 -0
- package/lib/cjs/types/AstroProvider.js +6 -0
- package/lib/cjs/types/Checkbox.d.ts +44 -0
- package/lib/cjs/types/Checkbox.js +6 -0
- package/lib/cjs/types/badge.d.ts +6 -0
- package/lib/cjs/types/checkboxFieldGroup.d.ts +48 -0
- package/lib/cjs/types/checkboxFieldGroup.js +6 -0
- package/lib/cjs/types/codeView.d.ts +3 -0
- package/lib/cjs/types/emptyState.d.ts +27 -0
- package/lib/cjs/types/emptyState.js +6 -0
- package/lib/cjs/types/iconBadge.d.ts +6 -0
- package/lib/cjs/types/index.d.ts +7 -0
- package/lib/cjs/types/index.js +147 -70
- package/lib/cjs/types/item.d.ts +5 -0
- package/lib/cjs/types/listView.d.ts +3 -0
- package/lib/cjs/types/table.d.ts +2 -0
- package/lib/cjs/utils/designUtils/figmaLinks.d.ts +3 -0
- package/lib/cjs/utils/designUtils/figmaLinks.js +4 -1
- package/lib/components/AccordionGridGroup/AccordionGridGroup.js +6 -56
- package/lib/components/AccordionGridGroup/AccordionGridGroup.stories.js +2 -1
- package/lib/components/AccordionGridItem/AccordionGridItem.js +12 -20
- package/lib/components/AccordionGridItem/AccordionGridItemBody.js +9 -15
- package/lib/components/AccordionGridItem/AccordionGridItemHeader.js +10 -23
- package/lib/components/AccordionGroup/AccordionGroup.stories.js +11 -0
- package/lib/components/AccordionGroup/AccordionGroup.test.js +43 -1
- package/lib/components/AccordionItem/AccordionItem.js +5 -3
- package/lib/components/ArrayField/ArrayField.js +30 -13
- package/lib/components/ArrayField/ArrayField.mdx +5 -1
- package/lib/components/ArrayField/ArrayField.stories.js +126 -89
- package/lib/components/ArrayField/ArrayField.styles.js +34 -0
- package/lib/components/ArrayField/ArrayField.test.js +202 -30
- package/lib/components/ArrayField/ArrayFieldDeleteButton.js +21 -8
- package/lib/components/ArrayField/ArrayFieldDeleteButton.styles.js +14 -0
- package/lib/components/ArrayField/arrayFieldAttributes.js +3 -2
- package/lib/components/AstroProvider/AstroProvider.js +10 -34
- package/lib/components/AstroProvider/PageWrapper.test.js +46 -0
- package/lib/components/Badge/Badge.js +20 -11
- package/lib/components/Badge/Badge.mdx +6 -0
- package/lib/components/Badge/Badge.stories.js +64 -19
- package/lib/components/Badge/Badge.styles.js +25 -5
- package/lib/components/Badge/Badge.test.js +166 -2
- package/lib/components/Badge/BadgeHelpHint.js +74 -0
- package/lib/components/Badge/Convenience/DefaultBadge.js +5 -2
- package/lib/components/Badge/Convenience/ErrorCalloutBadge.js +5 -4
- package/lib/components/Badge/Convenience/InfoCalloutBadge.js +5 -4
- package/lib/components/Badge/Convenience/SuccessCalloutBadge.js +5 -4
- package/lib/components/Badge/Convenience/WarningCalloutBadge.js +5 -4
- package/lib/components/Checkbox/CheckboxBase.js +99 -48
- package/lib/components/Checkbox/CheckboxIcons.js +114 -0
- package/lib/components/CheckboxField/CheckboxField.js +6 -2
- package/lib/components/CheckboxField/CheckboxField.stories.js +1 -1
- package/lib/components/CheckboxField/CheckboxField.test.js +41 -5
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroup.js +79 -0
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroup.mdx +69 -0
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroup.stories.js +111 -0
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroup.styles.js +33 -0
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroup.test.js +481 -0
- package/lib/components/CheckboxFieldGroup/CheckboxFieldGroupItem.js +101 -0
- package/lib/components/CheckboxFieldGroup/checkboxFieldGroupAttributes.js +101 -0
- package/lib/components/CheckboxFieldGroup/index.js +3 -0
- package/lib/components/CodeView/CodeView.js +3 -2
- package/lib/components/CodeView/CodeView.stories.js +44 -1
- package/lib/components/CodeView/CodeView.test.js +85 -1
- package/lib/components/ComboBoxField/ComboBoxField.stories.js +18 -1
- package/lib/components/CopyText/CopyButton.js +1 -2
- package/lib/components/DatePicker/DatePicker.test.js +1 -1
- package/lib/components/EmptyState/EmptyState.js +54 -0
- package/lib/components/EmptyState/EmptyState.mdx +44 -0
- package/lib/components/EmptyState/EmptyState.stories.js +81 -0
- package/lib/components/EmptyState/EmptyState.styles.js +15 -0
- package/lib/components/EmptyState/EmptyState.test.js +220 -0
- package/lib/components/EmptyState/emptyStateAttributes.js +42 -0
- package/lib/components/EmptyState/index.js +1 -0
- package/lib/components/HelpHint/HelpHint.js +41 -86
- package/lib/components/IconBadge/IconBadge.js +43 -24
- package/lib/components/IconBadge/IconBadge.mdx +5 -1
- package/lib/components/IconBadge/IconBadge.stories.js +50 -7
- package/lib/components/IconBadge/IconBadge.styles.js +20 -0
- package/lib/components/IconBadge/IconBadge.test.js +54 -1
- package/lib/components/IconButton/IconButton.styles.js +4 -0
- package/lib/components/LabelValuePairs/LabelValuePairs.stories.js +1 -0
- package/lib/components/LabelValuePairs/LabelValuePairs.test.js +19 -2
- package/lib/components/LabelValuePairs/LabelValuePairsLabel.js +1 -2
- package/lib/components/ListView/ListView.js +28 -4
- package/lib/components/ListView/ListView.stories.js +106 -58
- package/lib/components/ListView/ListView.test.js +80 -0
- package/lib/components/ListViewItem/ListViewItem.js +28 -5
- package/lib/components/ListViewItem/ListViewItem.stories.js +3 -6
- package/lib/components/ListViewItem/ListViewItem.styles.js +7 -0
- package/lib/components/ListViewItem/ListViewItem.test.js +33 -2
- package/lib/components/ListViewItem/listViewItemAttributes.js +9 -1
- package/lib/components/MultivaluesField/DefaultMultivaluesField.js +8 -0
- package/lib/components/MultivaluesField/MultivaluesField.stories.js +23 -1
- package/lib/components/PageHeader/PageHeader.js +9 -4
- package/lib/components/PageHeader/PageHeader.mdx +3 -0
- package/lib/components/PageHeader/PageHeader.stories.js +15 -5
- package/lib/components/PageHeader/PageHeader.test.js +58 -4
- package/lib/components/PanelHeader/PanelHeader.js +37 -9
- package/lib/components/PanelHeader/PanelHeader.stories.js +3 -6
- package/lib/components/PanelHeader/PanelHeader.test.js +47 -5
- package/lib/components/RangeCalendar/RangeCalendar.js +1 -1
- package/lib/components/RangeCalendar/RangeCalendar.mdx +4 -0
- package/lib/components/RangeCalendar/RangeCalendar.test.js +30 -0
- package/lib/components/RangeCalendar/RangeCalendarGrid.js +1 -0
- package/lib/components/SelectField/SelectField.stories.js +13 -0
- package/lib/components/Tab/Tab.js +39 -3
- package/lib/components/Tab/getSlotText.js +15 -0
- package/lib/components/Tab/getSlotText.test.js +21 -0
- package/lib/components/TabPicker/TabPicker.js +10 -5
- package/lib/components/Tabs/Tabs.stories.js +62 -11
- package/lib/components/Tabs/Tabs.storyData.js +1 -0
- package/lib/components/Tabs/Tabs.style.js +6 -1
- package/lib/components/Tabs/Tabs.test.js +85 -37
- package/lib/context/CheckboxFieldGroupContext/index.js +10 -0
- package/lib/hooks/index.js +1 -0
- package/lib/hooks/useHelpHintPopover/index.js +2 -0
- package/lib/hooks/useHelpHintPopover/useHelpHintPopover.js +130 -0
- package/lib/index.js +4 -0
- package/lib/styles/forms/index.js +22 -2
- package/lib/styles/themeOverrides/nextGenDarkMode/colors.js +18 -1
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/badges.js +76 -29
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/box.js +15 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/buttons.js +20 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/comboBox.js +4 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/forms.js +33 -9
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/listview.js +30 -0
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/text.js +5 -2
- package/lib/styles/themeOverrides/nextGenDarkMode/variants/variants.js +12 -1
- package/lib/styles/themes/astro/customProperties/icons.js +3 -1
- package/lib/styles/themes/astro/customProperties/index.js +3 -0
- package/lib/styles/themes/next-gen/codeView/codeView.js +5 -2
- package/lib/styles/themes/next-gen/colors/twoTone.js +19 -0
- package/lib/styles/themes/next-gen/convertedComponentList.js +5 -3
- package/lib/styles/themes/next-gen/customProperties/icons.js +5 -1
- package/lib/styles/themes/next-gen/customProperties/index.js +3 -1
- package/lib/styles/themes/next-gen/forms.js +50 -7
- package/lib/styles/themes/next-gen/spacing.js +2 -1
- package/lib/styles/themes/next-gen/variants/arrayField.js +64 -0
- package/lib/styles/themes/next-gen/variants/arrayFieldDeleteButton.js +37 -0
- package/lib/styles/themes/next-gen/variants/badges.js +77 -28
- package/lib/styles/themes/next-gen/variants/box.js +7 -4
- package/lib/styles/themes/next-gen/variants/button.js +25 -2
- package/lib/styles/themes/next-gen/variants/images.js +7 -1
- package/lib/styles/themes/next-gen/variants/label.js +33 -1
- package/lib/styles/themes/next-gen/variants/listview.js +35 -1
- package/lib/styles/themes/next-gen/variants/rangeCalendar.js +15 -4
- package/lib/styles/themes/next-gen/variants/tabs.js +11 -2
- package/lib/styles/themes/next-gen/variants/text.js +6 -2
- package/lib/styles/themes/next-gen/variants/variants.js +31 -5
- package/lib/styles/variants/variants.js +8 -0
- package/lib/types/AccordionGridGroup.js +1 -0
- package/lib/types/AccordionGridItem.js +1 -0
- package/lib/types/AstroProvider.js +1 -0
- package/lib/types/Checkbox.js +1 -0
- package/lib/types/checkboxFieldGroup.js +1 -0
- package/lib/types/emptyState.js +1 -0
- package/lib/types/index.js +7 -0
- package/lib/utils/designUtils/figmaLinks.js +4 -1
- package/package.json +2 -2
|
@@ -1,14 +1,26 @@
|
|
|
1
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
2
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
3
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
4
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
|
5
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
|
6
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
|
7
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
|
8
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
|
1
9
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
|
10
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
11
|
+
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
2
13
|
import React, { forwardRef, useContext } from 'react';
|
|
3
14
|
import { mergeProps, useFocusRing, useTab } from 'react-aria';
|
|
4
15
|
import { Item as Tab } from 'react-stately';
|
|
5
16
|
import { Pressable, useHover } from '@react-aria/interactions';
|
|
6
17
|
import { Box, Text, Tooltip, TooltipTrigger } from '../..';
|
|
7
|
-
import { useLocalOrForwardRef, usePropWarning, useStatusClasses } from '../../hooks';
|
|
18
|
+
import { useGetTheme, useLocalOrForwardRef, usePropWarning, useStatusClasses } from '../../hooks';
|
|
8
19
|
import ORIENTATION from '../../utils/devUtils/constants/orientation';
|
|
9
20
|
import { getPendoID } from '../../utils/devUtils/constants/pendoID';
|
|
10
21
|
import TabPicker from '../TabPicker';
|
|
11
22
|
import { TabsContext } from '../Tabs';
|
|
23
|
+
import { getSlotText } from './getSlotText';
|
|
12
24
|
|
|
13
25
|
/**
|
|
14
26
|
* Tab control for dividing up closely-related content.
|
|
@@ -23,6 +35,8 @@ export var CollectionTab = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
23
35
|
orientation = props.orientation,
|
|
24
36
|
mode = props.mode,
|
|
25
37
|
slots = props.slots;
|
|
38
|
+
var _useGetTheme = useGetTheme(),
|
|
39
|
+
isOnyx = _useGetTheme.themeState.isOnyx;
|
|
26
40
|
var key = item.key,
|
|
27
41
|
rendered = item.rendered,
|
|
28
42
|
itemProps = item.props;
|
|
@@ -54,9 +68,27 @@ export var CollectionTab = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
54
68
|
var defaultIndicator = ___EmotionJSX(Box, {
|
|
55
69
|
variant: "forms.label.indicator"
|
|
56
70
|
}, "*");
|
|
71
|
+
var onyxSlot = function onyxSlot(slot) {
|
|
72
|
+
var _slot$props$children;
|
|
73
|
+
var isCount = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
74
|
+
if (! /*#__PURE__*/React.isValidElement(slot)) return slot;
|
|
75
|
+
var count = getSlotText((_slot$props$children = slot.props.children) !== null && _slot$props$children !== void 0 ? _slot$props$children : slot.props.label);
|
|
76
|
+
var ariaLabel = slot.props['aria-label'] || (isCount && count ? "Count ".concat(count) : undefined);
|
|
77
|
+
return /*#__PURE__*/React.cloneElement(slot, _objectSpread(_objectSpread({}, isCount && ariaLabel ? {
|
|
78
|
+
'aria-label': ariaLabel
|
|
79
|
+
} : {}), isCount ? {} : {
|
|
80
|
+
size: 24,
|
|
81
|
+
sx: _objectSpread({
|
|
82
|
+
alignSelf: 'center'
|
|
83
|
+
}, slot.props.sx),
|
|
84
|
+
style: _objectSpread({
|
|
85
|
+
alignSelf: 'center'
|
|
86
|
+
}, slot.props.style)
|
|
87
|
+
}));
|
|
88
|
+
};
|
|
57
89
|
var tab = ___EmotionJSX(Box, {
|
|
58
90
|
isRow: true
|
|
59
|
-
}, slots === null || slots === void 0 ? void 0 : slots.beforeTab, ___EmotionJSX(Box, _extends({
|
|
91
|
+
}, !isOnyx && (slots === null || slots === void 0 ? void 0 : slots.beforeTab), ___EmotionJSX(Box, _extends({
|
|
60
92
|
className: classNames,
|
|
61
93
|
variant: "tab"
|
|
62
94
|
}, mergeProps(focusProps, hoverProps, tabProps), getPendoID('Tab'), {
|
|
@@ -67,7 +99,11 @@ export var CollectionTab = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
67
99
|
}), ___EmotionJSX(React.Fragment, null, itemProps === null || itemProps === void 0 ? void 0 : itemProps.icon, ___EmotionJSX(Text, _extends({
|
|
68
100
|
variant: "tabLabel",
|
|
69
101
|
display: "flex"
|
|
70
|
-
}, itemProps === null || itemProps === void 0 ? void 0 : itemProps.tabLabelProps
|
|
102
|
+
}, itemProps === null || itemProps === void 0 ? void 0 : itemProps.tabLabelProps, {
|
|
103
|
+
sx: {
|
|
104
|
+
gap: isOnyx ? 'sm' : undefined
|
|
105
|
+
}
|
|
106
|
+
}), isOnyx && (slots === null || slots === void 0 ? void 0 : slots.beforeTab) && onyxSlot(slots.beforeTab), rendered, isRequired && defaultIndicator, isOnyx && (slots === null || slots === void 0 ? void 0 : slots.afterTab) && onyxSlot(slots.afterTab, true)), isSelected && !isDisabled && ___EmotionJSX(TabLine, itemProps === null || itemProps === void 0 ? void 0 : itemProps.tabLineProps))), !isOnyx && (slots === null || slots === void 0 ? void 0 : slots.afterTab));
|
|
71
107
|
if (mode === 'list' && itemProps !== null && itemProps !== void 0 && itemProps.list) {
|
|
72
108
|
return ___EmotionJSX(TabPicker, _extends({
|
|
73
109
|
ref: tabRef,
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Extracts the concatenated text of a slot's children, falling back to the
|
|
6
|
+
* `label` prop on nested elements (e.g. Badge) when there are no children.
|
|
7
|
+
*/
|
|
8
|
+
var _getSlotText = function getSlotText(node) {
|
|
9
|
+
var _context;
|
|
10
|
+
return _mapInstanceProperty(_context = React.Children.toArray(node)).call(_context, function (child) {
|
|
11
|
+
var _child$props$children;
|
|
12
|
+
return /*#__PURE__*/React.isValidElement(child) ? _getSlotText((_child$props$children = child.props.children) !== null && _child$props$children !== void 0 ? _child$props$children : child.props.label) : String(child);
|
|
13
|
+
}).join('');
|
|
14
|
+
};
|
|
15
|
+
export { _getSlotText as getSlotText };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { getSlotText } from './getSlotText';
|
|
2
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
3
|
+
test('concatenates plain string children', function () {
|
|
4
|
+
expect(getSlotText('14')).toBe('14');
|
|
5
|
+
});
|
|
6
|
+
test('reads the label prop of nested elements when there are no children', function () {
|
|
7
|
+
var badge = ___EmotionJSX("span", {
|
|
8
|
+
label: "14"
|
|
9
|
+
});
|
|
10
|
+
expect(getSlotText(badge)).toBe('14');
|
|
11
|
+
});
|
|
12
|
+
test('prefers children over the label prop', function () {
|
|
13
|
+
var node = ___EmotionJSX("span", {
|
|
14
|
+
label: "ignored"
|
|
15
|
+
}, "child text");
|
|
16
|
+
expect(getSlotText(node)).toBe('child text');
|
|
17
|
+
});
|
|
18
|
+
test('traverses nested elements and mixes primitives', function () {
|
|
19
|
+
var node = ___EmotionJSX("div", null, ___EmotionJSX("span", null, "Count "), ___EmotionJSX("span", null, ___EmotionJSX("b", null, "1"), "4"));
|
|
20
|
+
expect(getSlotText(node)).toBe('Count 14');
|
|
21
|
+
});
|
|
@@ -11,12 +11,10 @@ import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/ins
|
|
|
11
11
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
12
12
|
import React, { forwardRef, useEffect, useMemo, useRef, useState } from 'react';
|
|
13
13
|
import { Item as Tab } from 'react-stately';
|
|
14
|
-
import ArrowDropDownIcon from '@pingux/mdi-react/ArrowDropDownIcon';
|
|
15
|
-
import ArrowDropUpIcon from '@pingux/mdi-react/ArrowDropUpIcon';
|
|
16
14
|
import { Pressable } from '@react-aria/interactions';
|
|
17
15
|
import PropTypes from 'prop-types';
|
|
18
16
|
import { Box, Icon, Menu, PopoverMenu, Text } from '../..';
|
|
19
|
-
import { useStatusClasses } from '../../hooks';
|
|
17
|
+
import { useGetTheme, useStatusClasses } from '../../hooks';
|
|
20
18
|
import { TabLine } from '../Tab';
|
|
21
19
|
|
|
22
20
|
/* istanbul ignore next */
|
|
@@ -35,6 +33,11 @@ var TabPicker = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
35
33
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
36
34
|
selectedItem = _useState4[0],
|
|
37
35
|
setSelectedItem = _useState4[1];
|
|
36
|
+
var _useGetTheme = useGetTheme(),
|
|
37
|
+
_useGetTheme$icons = _useGetTheme.icons,
|
|
38
|
+
tabPickerDown = _useGetTheme$icons.tabPickerDown,
|
|
39
|
+
tabPickerUp = _useGetTheme$icons.tabPickerUp,
|
|
40
|
+
isOnyx = _useGetTheme.themeState.isOnyx;
|
|
38
41
|
var selectionManager = state.selectionManager;
|
|
39
42
|
var _useState5 = useState(selectionManager.focusedKey),
|
|
40
43
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
@@ -167,11 +170,13 @@ var TabPicker = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
167
170
|
variant: "tabLabel"
|
|
168
171
|
}, item.props.name), selectedItem && ___EmotionJSX(TabLine, null)), ___EmotionJSX(Icon, {
|
|
169
172
|
color: isTabFocused || _includesInstanceProperty(classNames).call(classNames, 'is-hovered') ? 'active' : 'neutral.40',
|
|
170
|
-
icon: isOpen ?
|
|
173
|
+
icon: isOpen ? tabPickerUp : tabPickerDown,
|
|
174
|
+
variant: isOnyx ? 'tabPickerExpandIcon' : undefined,
|
|
171
175
|
title: {
|
|
172
176
|
name: ''
|
|
173
177
|
},
|
|
174
|
-
"aria-hidden": "true"
|
|
178
|
+
"aria-hidden": "true",
|
|
179
|
+
size: isOnyx ? 16 : undefined
|
|
175
180
|
}))), ___EmotionJSX(Menu, {
|
|
176
181
|
onAction: setSelectedItem,
|
|
177
182
|
selectionMode: "single",
|
|
@@ -1,12 +1,26 @@
|
|
|
1
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
2
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
3
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
4
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
|
5
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
|
6
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
|
7
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
|
8
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
|
9
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
1
10
|
import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
|
|
2
11
|
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
|
12
|
+
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
|
+
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
3
15
|
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
4
16
|
import React, { useState } from 'react';
|
|
5
17
|
import LockIcon from '@pingux/mdi-react/LockIcon';
|
|
18
|
+
import LockOutlineIcon from '@pingux/mdi-react/LockOutlineIcon';
|
|
6
19
|
import DocsLayout from '../../../.storybook/storybookDocsLayout';
|
|
7
20
|
import { useGetTheme } from '../../hooks';
|
|
8
21
|
import { Badge, Box, Icon, Tab, Tabs, Text } from '../../index';
|
|
9
22
|
import TabsReadme from './Tabs.mdx';
|
|
23
|
+
import { disabledSingleTabKey } from './Tabs.storyData';
|
|
10
24
|
import { tabsArgTypes } from './tabsAttributes';
|
|
11
25
|
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
12
26
|
export default {
|
|
@@ -76,6 +90,11 @@ export var Controlled = function Controlled() {
|
|
|
76
90
|
_useState2 = _slicedToArray(_useState, 2),
|
|
77
91
|
currentTab = _useState2[0],
|
|
78
92
|
setCurrentTab = _useState2[1];
|
|
93
|
+
var controlledTabs = _mapInstanceProperty(tabs).call(tabs, function (tab, index) {
|
|
94
|
+
return index === 1 ? _objectSpread(_objectSpread({}, tab), {}, {
|
|
95
|
+
name: 'Configuration with a deliberately long label that wraps'
|
|
96
|
+
}) : tab;
|
|
97
|
+
});
|
|
79
98
|
return ___EmotionJSX(Box, {
|
|
80
99
|
sx: {
|
|
81
100
|
maxWidth: '500px'
|
|
@@ -83,7 +102,37 @@ export var Controlled = function Controlled() {
|
|
|
83
102
|
}, ___EmotionJSX(Tabs, {
|
|
84
103
|
selectedKey: currentTab,
|
|
85
104
|
onSelectionChange: setCurrentTab,
|
|
86
|
-
items:
|
|
105
|
+
items: controlledTabs
|
|
106
|
+
}, function (item) {
|
|
107
|
+
return ___EmotionJSX(Tab, {
|
|
108
|
+
key: item.name,
|
|
109
|
+
title: item.name,
|
|
110
|
+
textValue: item.name
|
|
111
|
+
}, item.children);
|
|
112
|
+
}));
|
|
113
|
+
};
|
|
114
|
+
export var ScrollableContent = function ScrollableContent() {
|
|
115
|
+
var scrollableTabs = _mapInstanceProperty(tabs).call(tabs, function (tab) {
|
|
116
|
+
return _objectSpread(_objectSpread({}, tab), {}, {
|
|
117
|
+
children: ___EmotionJSX(Box, null, ___EmotionJSX(Text, null, tab.name, ' content'), ___EmotionJSX(Text, null, "This panel contains additional content to demonstrate scrolling within the tab body."), ___EmotionJSX(Box, {
|
|
118
|
+
sx: {
|
|
119
|
+
height: '300px'
|
|
120
|
+
}
|
|
121
|
+
}))
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
return ___EmotionJSX(Box, {
|
|
125
|
+
sx: {
|
|
126
|
+
maxWidth: '500px'
|
|
127
|
+
}
|
|
128
|
+
}, ___EmotionJSX(Tabs, {
|
|
129
|
+
items: scrollableTabs,
|
|
130
|
+
tabPanelProps: {
|
|
131
|
+
sx: {
|
|
132
|
+
maxHeight: '200px',
|
|
133
|
+
overflowY: 'auto'
|
|
134
|
+
}
|
|
135
|
+
}
|
|
87
136
|
}, function (item) {
|
|
88
137
|
return ___EmotionJSX(Tab, {
|
|
89
138
|
key: item.name,
|
|
@@ -108,7 +157,7 @@ export var Centered = function Centered() {
|
|
|
108
157
|
export var DisabledSingleTab = function DisabledSingleTab() {
|
|
109
158
|
return ___EmotionJSX(Tabs, {
|
|
110
159
|
items: tabs,
|
|
111
|
-
disabledKeys: [
|
|
160
|
+
disabledKeys: [disabledSingleTabKey]
|
|
112
161
|
}, function (item) {
|
|
113
162
|
return ___EmotionJSX(Tab, {
|
|
114
163
|
key: item.name,
|
|
@@ -131,23 +180,25 @@ export var ContentSlots = function ContentSlots() {
|
|
|
131
180
|
var _useGetTheme = useGetTheme(),
|
|
132
181
|
isOnyx = _useGetTheme.themeState.isOnyx;
|
|
133
182
|
var beforeTabNode = ___EmotionJSX(Icon, {
|
|
134
|
-
icon: LockIcon,
|
|
183
|
+
icon: isOnyx ? LockOutlineIcon : LockIcon,
|
|
184
|
+
size: isOnyx ? 24 : undefined,
|
|
135
185
|
sx: {
|
|
136
|
-
|
|
137
|
-
|
|
186
|
+
// alignSelf: 'center',
|
|
187
|
+
marginTop: isOnyx ? undefined : 'sm',
|
|
188
|
+
marginRight: isOnyx ? undefined : 'xs'
|
|
138
189
|
},
|
|
139
190
|
title: {
|
|
140
191
|
name: 'Lock Icon'
|
|
141
192
|
}
|
|
142
193
|
});
|
|
143
|
-
var nodeSx = {
|
|
144
|
-
marginLeft: 5,
|
|
145
|
-
marginTop: 10
|
|
146
|
-
};
|
|
147
194
|
var afterTabNode = ___EmotionJSX(Box, null, ___EmotionJSX(Badge, {
|
|
148
195
|
variant: "countNeutral",
|
|
149
|
-
sx:
|
|
150
|
-
|
|
196
|
+
sx: {
|
|
197
|
+
marginTop: isOnyx ? undefined : 'sm',
|
|
198
|
+
marginLeft: isOnyx ? undefined : 'xs'
|
|
199
|
+
},
|
|
200
|
+
label: "14",
|
|
201
|
+
"aria-label": "Count 14"
|
|
151
202
|
}));
|
|
152
203
|
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(Tabs, {
|
|
153
204
|
items: tabs,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export var disabledSingleTabKey = 'Configuration';
|
|
@@ -90,10 +90,15 @@ export var tabs = {
|
|
|
90
90
|
'&.is-horizontal': {
|
|
91
91
|
borderBottomWidth: 1,
|
|
92
92
|
borderBottomStyle: 'solid',
|
|
93
|
-
borderBottomColor: '
|
|
93
|
+
borderBottomColor: 'border.hairline',
|
|
94
94
|
gap: 'lg'
|
|
95
95
|
}
|
|
96
96
|
};
|
|
97
|
+
export var tabPickerExpandIcon = {
|
|
98
|
+
ml: '8px',
|
|
99
|
+
width: '16px',
|
|
100
|
+
height: '16px'
|
|
101
|
+
};
|
|
97
102
|
export var menuTab = _objectSpread(_objectSpread({}, quiet), {}, {
|
|
98
103
|
color: 'neutral.40',
|
|
99
104
|
alignItems: 'center',
|
|
@@ -37,6 +37,7 @@ import { fireEvent, render, screen, waitFor } from '../../utils/testUtils/testWr
|
|
|
37
37
|
import { universalComponentTests } from '../../utils/testUtils/universalComponentTest';
|
|
38
38
|
import Tab from '../Tab';
|
|
39
39
|
import Tabs from './Tabs';
|
|
40
|
+
import { disabledSingleTabKey } from './Tabs.storyData';
|
|
40
41
|
|
|
41
42
|
// Emotion Cache added as test fails otherwise, root cause of this failure is unknown.
|
|
42
43
|
// Failure occurred with ThemeUI refactor.
|
|
@@ -591,24 +592,6 @@ test('tabs without selected keys show null tab panel content', function () {
|
|
|
591
592
|
});
|
|
592
593
|
expect(screen.queryByRole('tabpanel')).not.toHaveTextContent('');
|
|
593
594
|
});
|
|
594
|
-
test('hover tab style', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee1() {
|
|
595
|
-
var _getTabs1, tab0;
|
|
596
|
-
return _regeneratorRuntime().wrap(function _callee1$(_context1) {
|
|
597
|
-
while (1) switch (_context1.prev = _context1.next) {
|
|
598
|
-
case 0:
|
|
599
|
-
getComponent();
|
|
600
|
-
_getTabs1 = getTabs(), tab0 = _getTabs1.tab0;
|
|
601
|
-
expect(tab0).not.toHaveClass('is-hovered');
|
|
602
|
-
_context1.next = 5;
|
|
603
|
-
return userEvent.hover(tab0);
|
|
604
|
-
case 5:
|
|
605
|
-
expect(tab0).toHaveClass('is-hovered');
|
|
606
|
-
case 6:
|
|
607
|
-
case "end":
|
|
608
|
-
return _context1.stop();
|
|
609
|
-
}
|
|
610
|
-
}, _callee1);
|
|
611
|
-
})));
|
|
612
595
|
test('will render slots.beforeTab if provided', function () {
|
|
613
596
|
var testText = 'test-text';
|
|
614
597
|
var testComponent = ___EmotionJSX("div", null, testText);
|
|
@@ -643,28 +626,28 @@ test('will render slots.afterTab if provided', function () {
|
|
|
643
626
|
});
|
|
644
627
|
expect(screen.getByText(testText)).toBeInTheDocument();
|
|
645
628
|
});
|
|
646
|
-
test('will render tab with list if provided', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function
|
|
647
|
-
var
|
|
648
|
-
return _regeneratorRuntime().wrap(function
|
|
649
|
-
while (1) switch (
|
|
629
|
+
test('will render tab with list if provided', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee1() {
|
|
630
|
+
var _getTabs1, menuBtn, menuItems, firstListItemContent;
|
|
631
|
+
return _regeneratorRuntime().wrap(function _callee1$(_context1) {
|
|
632
|
+
while (1) switch (_context1.prev = _context1.next) {
|
|
650
633
|
case 0:
|
|
651
634
|
getComponentWithDynamicItems({
|
|
652
635
|
items: tabsWithList,
|
|
653
636
|
mode: 'list'
|
|
654
637
|
});
|
|
655
|
-
|
|
638
|
+
_context1.next = 3;
|
|
656
639
|
return testTabPanel(0);
|
|
657
640
|
case 3:
|
|
658
|
-
|
|
641
|
+
_getTabs1 = getTabs(), menuBtn = _getTabs1.tab1.parentElement;
|
|
659
642
|
if (!menuBtn) {
|
|
660
|
-
|
|
643
|
+
_context1.next = 7;
|
|
661
644
|
break;
|
|
662
645
|
}
|
|
663
|
-
|
|
646
|
+
_context1.next = 7;
|
|
664
647
|
return userEvent.click(menuBtn);
|
|
665
648
|
case 7:
|
|
666
649
|
expect(screen.queryByRole('menu')).toBeInTheDocument();
|
|
667
|
-
|
|
650
|
+
_context1.next = 10;
|
|
668
651
|
return testTabPanel(0);
|
|
669
652
|
case 10:
|
|
670
653
|
menuItems = screen.queryAllByRole('menuitemradio');
|
|
@@ -672,7 +655,7 @@ test('will render tab with list if provided', /*#__PURE__*/_asyncToGenerator(/*#
|
|
|
672
655
|
expect(menuItems).toHaveLength(tabsWithList[1].list.length);
|
|
673
656
|
}
|
|
674
657
|
expect(menuItems[0]).not.toHaveFocus();
|
|
675
|
-
|
|
658
|
+
_context1.next = 15;
|
|
676
659
|
return userEvent.click(menuItems[0]);
|
|
677
660
|
case 15:
|
|
678
661
|
if (tabsWithList[1].list) {
|
|
@@ -681,15 +664,80 @@ test('will render tab with list if provided', /*#__PURE__*/_asyncToGenerator(/*#
|
|
|
681
664
|
}
|
|
682
665
|
expect(screen.queryByRole('menu')).not.toBeInTheDocument();
|
|
683
666
|
case 17:
|
|
667
|
+
case "end":
|
|
668
|
+
return _context1.stop();
|
|
669
|
+
}
|
|
670
|
+
}, _callee1);
|
|
671
|
+
})));
|
|
672
|
+
test('list mode renders the caret for Onyx tabs', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee10() {
|
|
673
|
+
var listTab;
|
|
674
|
+
return _regeneratorRuntime().wrap(function _callee10$(_context10) {
|
|
675
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
676
|
+
case 0:
|
|
677
|
+
getComponentWithDynamicItems({
|
|
678
|
+
items: tabsWithList,
|
|
679
|
+
mode: 'list'
|
|
680
|
+
});
|
|
681
|
+
listTab = screen.getByRole('tab', {
|
|
682
|
+
name: 'Tab 2'
|
|
683
|
+
});
|
|
684
|
+
expect(listTab).toBeInTheDocument();
|
|
685
|
+
_context10.next = 5;
|
|
686
|
+
return userEvent.click(listTab.parentElement);
|
|
687
|
+
case 5:
|
|
688
|
+
expect(screen.getByRole('menu')).toBeInTheDocument();
|
|
689
|
+
case 6:
|
|
684
690
|
case "end":
|
|
685
691
|
return _context10.stop();
|
|
686
692
|
}
|
|
687
693
|
}, _callee10);
|
|
688
694
|
})));
|
|
689
|
-
test('tab
|
|
690
|
-
var
|
|
695
|
+
test('single disabled tab remains unavailable with its collection key', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee11() {
|
|
696
|
+
var storyTabs, _getTabs10, tabs, tab0, tab1, tab2;
|
|
691
697
|
return _regeneratorRuntime().wrap(function _callee11$(_context11) {
|
|
692
698
|
while (1) switch (_context11.prev = _context11.next) {
|
|
699
|
+
case 0:
|
|
700
|
+
expect(disabledSingleTabKey).toBe('Configuration');
|
|
701
|
+
storyTabs = [{
|
|
702
|
+
name: 'Overview',
|
|
703
|
+
children: 'Overview body',
|
|
704
|
+
props: {}
|
|
705
|
+
}, {
|
|
706
|
+
name: 'Configuration',
|
|
707
|
+
children: 'Configuration body',
|
|
708
|
+
props: {}
|
|
709
|
+
}, {
|
|
710
|
+
name: 'Resources',
|
|
711
|
+
children: 'Resources body',
|
|
712
|
+
props: {}
|
|
713
|
+
}];
|
|
714
|
+
getComponentWithDynamicItems({
|
|
715
|
+
items: storyTabs,
|
|
716
|
+
disabledKeys: [disabledSingleTabKey],
|
|
717
|
+
keyboardActivation: 'automatic'
|
|
718
|
+
});
|
|
719
|
+
_getTabs10 = getTabs(), tabs = _getTabs10.tabs, tab0 = _getTabs10.tab0, tab1 = _getTabs10.tab1, tab2 = _getTabs10.tab2;
|
|
720
|
+
expect(tab1).toHaveAttribute('aria-disabled', 'true');
|
|
721
|
+
_context11.next = 7;
|
|
722
|
+
return userEvent.tab();
|
|
723
|
+
case 7:
|
|
724
|
+
expect(tab0).toHaveFocus();
|
|
725
|
+
fireEvent.keyDown(tab0, {
|
|
726
|
+
key: 'ArrowRight',
|
|
727
|
+
code: 'ArrowRight'
|
|
728
|
+
});
|
|
729
|
+
expect(tab2).toHaveFocus();
|
|
730
|
+
expect(tabs[1]).toHaveAttribute('aria-disabled', 'true');
|
|
731
|
+
case 11:
|
|
732
|
+
case "end":
|
|
733
|
+
return _context11.stop();
|
|
734
|
+
}
|
|
735
|
+
}, _callee11);
|
|
736
|
+
})));
|
|
737
|
+
test('tab list is accessible via keyboard', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee12() {
|
|
738
|
+
var _getTabs11, tabs, tab0, tab1, menuTrigger, menuItems, firstListItemContent;
|
|
739
|
+
return _regeneratorRuntime().wrap(function _callee12$(_context12) {
|
|
740
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
693
741
|
case 0:
|
|
694
742
|
getComponentWithDynamicItems({
|
|
695
743
|
items: tabsWithList,
|
|
@@ -699,10 +747,10 @@ test('tab list is accessible via keyboard', /*#__PURE__*/_asyncToGenerator(/*#__
|
|
|
699
747
|
_forEachInstanceProperty(tabs).call(tabs, function (tab) {
|
|
700
748
|
return expect(tab).not.toHaveFocus();
|
|
701
749
|
});
|
|
702
|
-
|
|
750
|
+
_context12.next = 5;
|
|
703
751
|
return userEvent.tab();
|
|
704
752
|
case 5:
|
|
705
|
-
|
|
753
|
+
_context12.next = 7;
|
|
706
754
|
return testTabPanel(0);
|
|
707
755
|
case 7:
|
|
708
756
|
fireEvent.keyDown(tab0, {
|
|
@@ -714,15 +762,15 @@ test('tab list is accessible via keyboard', /*#__PURE__*/_asyncToGenerator(/*#__
|
|
|
714
762
|
// In newer React Aria, the PopoverMenu trigger wraps the tab,
|
|
715
763
|
// so we need to click the parent menu trigger element
|
|
716
764
|
menuTrigger = tab1.closest('[aria-haspopup="true"]') || tab1;
|
|
717
|
-
|
|
765
|
+
_context12.next = 12;
|
|
718
766
|
return userEvent.click(menuTrigger);
|
|
719
767
|
case 12:
|
|
720
|
-
|
|
768
|
+
_context12.next = 14;
|
|
721
769
|
return waitFor(function () {
|
|
722
770
|
expect(screen.queryByRole('menu')).toBeInTheDocument();
|
|
723
771
|
});
|
|
724
772
|
case 14:
|
|
725
|
-
|
|
773
|
+
_context12.next = 16;
|
|
726
774
|
return testTabPanel(0);
|
|
727
775
|
case 16:
|
|
728
776
|
menuItems = screen.queryAllByRole('menuitemradio');
|
|
@@ -741,7 +789,7 @@ test('tab list is accessible via keyboard', /*#__PURE__*/_asyncToGenerator(/*#__
|
|
|
741
789
|
expect(screen.queryByRole('menu')).not.toBeInTheDocument();
|
|
742
790
|
case 22:
|
|
743
791
|
case "end":
|
|
744
|
-
return
|
|
792
|
+
return _context12.stop();
|
|
745
793
|
}
|
|
746
|
-
},
|
|
794
|
+
}, _callee12);
|
|
747
795
|
})));
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Selection state shared by the context-aware checkbox group items.
|
|
4
|
+
*
|
|
5
|
+
* This context is intentionally private to the compound component. Consumers
|
|
6
|
+
* should render `CheckboxFieldGroupItem` inside `CheckboxFieldGroup` instead of
|
|
7
|
+
* providing a state object themselves.
|
|
8
|
+
*/
|
|
9
|
+
export var CheckboxFieldGroupContext = /*#__PURE__*/createContext(null);
|
|
10
|
+
export default CheckboxFieldGroupContext;
|
package/lib/hooks/index.js
CHANGED
|
@@ -10,6 +10,7 @@ export { default as useField } from './useField';
|
|
|
10
10
|
export { default as useGetTheme } from './useGetTheme';
|
|
11
11
|
export { default as useGridList } from './useGridList';
|
|
12
12
|
export { default as useGridListItem } from './useGridListItem';
|
|
13
|
+
export { default as useHelpHintPopover } from './useHelpHintPopover';
|
|
13
14
|
export { default as useInputLoader } from './useInputLoader';
|
|
14
15
|
export { default as useLabelHeight } from './useLabelHeight';
|
|
15
16
|
export { default as useLocalOrForwardRef } from './useLocalOrForwardRef';
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
|
3
|
+
import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
|
|
4
|
+
var _excluded = ["onPress"];
|
|
5
|
+
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
6
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context2, _context3; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context2 = ownKeys(Object(t), !0)).call(_context2, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context3 = ownKeys(Object(t))).call(_context3, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
7
|
+
import _setTimeout from "@babel/runtime-corejs3/core-js-stable/set-timeout";
|
|
8
|
+
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
9
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
10
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
11
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
12
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
|
13
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
|
14
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
|
15
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
|
16
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
|
17
|
+
import { useEffect, useRef, useState } from 'react';
|
|
18
|
+
import { mergeProps, useFocusRing, useFocusWithin, useOverlayPosition, useOverlayTrigger } from 'react-aria';
|
|
19
|
+
import { useOverlayTriggerState } from 'react-stately';
|
|
20
|
+
import { useHover } from '@react-aria/interactions';
|
|
21
|
+
import useStatusClasses from '../useStatusClasses';
|
|
22
|
+
var useHelpHintPopover = function useHelpHintPopover(triggerRef) {
|
|
23
|
+
var _context;
|
|
24
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
25
|
+
var _options$align = options.align,
|
|
26
|
+
align = _options$align === void 0 ? 'middle' : _options$align,
|
|
27
|
+
className = options.className,
|
|
28
|
+
closeDelay = options.closeDelay,
|
|
29
|
+
crossOffset = options.crossOffset,
|
|
30
|
+
_options$direction = options.direction,
|
|
31
|
+
direction = _options$direction === void 0 ? 'top' : _options$direction,
|
|
32
|
+
_options$isDarkMode = options.isDarkMode,
|
|
33
|
+
isDarkMode = _options$isDarkMode === void 0 ? true : _options$isDarkMode,
|
|
34
|
+
_options$isNotFlippab = options.isNotFlippable,
|
|
35
|
+
isNotFlippable = _options$isNotFlippab === void 0 ? false : _options$isNotFlippab,
|
|
36
|
+
_options$isTriggerPre = options.isTriggerPressable,
|
|
37
|
+
isTriggerPressable = _options$isTriggerPre === void 0 ? true : _options$isTriggerPre,
|
|
38
|
+
_options$offset = options.offset,
|
|
39
|
+
offset = _options$offset === void 0 ? 15 : _options$offset,
|
|
40
|
+
_options$shouldOpenOn = options.shouldOpenOnTriggerFocus,
|
|
41
|
+
shouldOpenOnTriggerFocus = _options$shouldOpenOn === void 0 ? false : _options$shouldOpenOn;
|
|
42
|
+
var _useState = useState(false),
|
|
43
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
44
|
+
isFocusWithinOverlay = _useState2[0],
|
|
45
|
+
setIsFocusWithinOverlay = _useState2[1];
|
|
46
|
+
var escapeDismissedRef = useRef(false);
|
|
47
|
+
var _useFocusWithin = useFocusWithin({
|
|
48
|
+
onFocusWithinChange: function onFocusWithinChange(isFocusWithin) {
|
|
49
|
+
return setIsFocusWithinOverlay(isFocusWithin);
|
|
50
|
+
}
|
|
51
|
+
}),
|
|
52
|
+
focusWithinProps = _useFocusWithin.focusWithinProps;
|
|
53
|
+
var overlayRef = useRef(null);
|
|
54
|
+
var _useFocusRing = useFocusRing(),
|
|
55
|
+
focusProps = _useFocusRing.focusProps,
|
|
56
|
+
isFocusVisible = _useFocusRing.isFocusVisible;
|
|
57
|
+
var _useHover = useHover({}),
|
|
58
|
+
overlayHoverProps = _useHover.hoverProps,
|
|
59
|
+
isOverlayHovered = _useHover.isHovered;
|
|
60
|
+
var _useHover2 = useHover({}),
|
|
61
|
+
hoverProps = _useHover2.hoverProps,
|
|
62
|
+
isTriggerHovered = _useHover2.isHovered;
|
|
63
|
+
var popoverState = useOverlayTriggerState({});
|
|
64
|
+
var open = popoverState.open,
|
|
65
|
+
close = popoverState.close,
|
|
66
|
+
isOpen = popoverState.isOpen;
|
|
67
|
+
var _useOverlayTrigger = useOverlayTrigger({
|
|
68
|
+
type: 'dialog'
|
|
69
|
+
}, popoverState, triggerRef),
|
|
70
|
+
triggerProps = _useOverlayTrigger.triggerProps,
|
|
71
|
+
overlayProps = _useOverlayTrigger.overlayProps;
|
|
72
|
+
useEffect(function () {
|
|
73
|
+
var timeout;
|
|
74
|
+
var isHovered = isTriggerHovered || isOverlayHovered;
|
|
75
|
+
if (isHovered || isFocusWithinOverlay || shouldOpenOnTriggerFocus && isFocusVisible && !escapeDismissedRef.current) {
|
|
76
|
+
open();
|
|
77
|
+
} else if (!isFocusWithinOverlay && !isFocusVisible && !isHovered) {
|
|
78
|
+
escapeDismissedRef.current = false;
|
|
79
|
+
timeout = _setTimeout(close, closeDelay || 1000);
|
|
80
|
+
}
|
|
81
|
+
return function () {
|
|
82
|
+
clearTimeout(timeout);
|
|
83
|
+
};
|
|
84
|
+
}, [isFocusWithinOverlay, isFocusVisible, isOverlayHovered, isTriggerHovered, close, closeDelay, open, shouldOpenOnTriggerFocus]);
|
|
85
|
+
var _useOverlayPosition = useOverlayPosition({
|
|
86
|
+
targetRef: triggerRef,
|
|
87
|
+
overlayRef: overlayRef,
|
|
88
|
+
placement: _concatInstanceProperty(_context = "".concat(direction, " ")).call(_context, align),
|
|
89
|
+
offset: offset,
|
|
90
|
+
crossOffset: crossOffset,
|
|
91
|
+
isOpen: isOpen,
|
|
92
|
+
onClose: close,
|
|
93
|
+
shouldUpdatePosition: true,
|
|
94
|
+
shouldFlip: !isNotFlippable
|
|
95
|
+
}),
|
|
96
|
+
positionProps = _useOverlayPosition.overlayProps,
|
|
97
|
+
placement = _useOverlayPosition.placement;
|
|
98
|
+
var _useStatusClasses = useStatusClasses(className, {
|
|
99
|
+
isDarkMode: isDarkMode
|
|
100
|
+
}),
|
|
101
|
+
classNames = _useStatusClasses.classNames;
|
|
102
|
+
var onPress = triggerProps.onPress,
|
|
103
|
+
pressFreeTriggerProps = _objectWithoutProperties(triggerProps, _excluded);
|
|
104
|
+
var dismissOnEscape = function dismissOnEscape(event) {
|
|
105
|
+
if (event.key === 'Escape') {
|
|
106
|
+
escapeDismissedRef.current = true;
|
|
107
|
+
close();
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
return {
|
|
111
|
+
close: close,
|
|
112
|
+
isFocusVisible: isFocusVisible,
|
|
113
|
+
isOpen: isOpen,
|
|
114
|
+
open: open,
|
|
115
|
+
overlayRef: overlayRef,
|
|
116
|
+
triggerProps: mergeProps(isTriggerPressable ? triggerProps : pressFreeTriggerProps, focusProps, hoverProps, {
|
|
117
|
+
onKeyUp: dismissOnEscape
|
|
118
|
+
}),
|
|
119
|
+
popoverContainerProps: _objectSpread({
|
|
120
|
+
className: classNames,
|
|
121
|
+
direction: direction,
|
|
122
|
+
isDismissable: isFocusWithinOverlay ? !isOpen : true,
|
|
123
|
+
isNonModal: true,
|
|
124
|
+
isOpen: isOpen,
|
|
125
|
+
onClose: close,
|
|
126
|
+
placement: placement !== null && placement !== void 0 ? placement : undefined
|
|
127
|
+
}, mergeProps(overlayProps, positionProps, overlayHoverProps, focusWithinProps))
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
export default useHelpHintPopover;
|