@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
|
@@ -0,0 +1,111 @@
|
|
|
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 _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
|
10
|
+
import _slicedToArray from "@babel/runtime-corejs3/helpers/esm/slicedToArray";
|
|
11
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
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 _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; }
|
|
14
|
+
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
15
|
+
import { useState } from 'react';
|
|
16
|
+
import DocsLayout from '../../../.storybook/storybookDocsLayout';
|
|
17
|
+
import { Box, CheckboxFieldGroup, CheckboxFieldGroupItem, Text } from '../../index';
|
|
18
|
+
import CheckboxFieldGroupReadme from './CheckboxFieldGroup.mdx';
|
|
19
|
+
import { checkboxFieldGroupArgTypes, checkboxFieldGroupItemArgTypes } from './checkboxFieldGroupAttributes';
|
|
20
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
21
|
+
var items = [{
|
|
22
|
+
value: 'email',
|
|
23
|
+
label: 'Email'
|
|
24
|
+
}, {
|
|
25
|
+
value: 'sms',
|
|
26
|
+
label: 'SMS'
|
|
27
|
+
}, {
|
|
28
|
+
value: 'push',
|
|
29
|
+
label: 'Push notification'
|
|
30
|
+
}];
|
|
31
|
+
var GroupItems = function GroupItems(_ref) {
|
|
32
|
+
var _ref$isDisabled = _ref.isDisabled,
|
|
33
|
+
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
|
|
34
|
+
return ___EmotionJSX(React.Fragment, null, _mapInstanceProperty(items).call(items, function (item) {
|
|
35
|
+
return ___EmotionJSX(CheckboxFieldGroupItem, {
|
|
36
|
+
key: item.value,
|
|
37
|
+
value: item.value,
|
|
38
|
+
label: item.label,
|
|
39
|
+
isDisabled: isDisabled
|
|
40
|
+
});
|
|
41
|
+
}));
|
|
42
|
+
};
|
|
43
|
+
export default {
|
|
44
|
+
title: 'Form/CheckboxFieldGroup',
|
|
45
|
+
component: CheckboxFieldGroup,
|
|
46
|
+
parameters: {
|
|
47
|
+
docs: {
|
|
48
|
+
page: function page() {
|
|
49
|
+
return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(CheckboxFieldGroupReadme, null), ___EmotionJSX(DocsLayout, null));
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
argTypes: _objectSpread(_objectSpread({}, checkboxFieldGroupArgTypes), checkboxFieldGroupItemArgTypes),
|
|
54
|
+
args: {
|
|
55
|
+
label: 'Notification channels',
|
|
56
|
+
defaultValue: ['email']
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
export var Default = function Default(args) {
|
|
60
|
+
return ___EmotionJSX(CheckboxFieldGroup, args, ___EmotionJSX(GroupItems, null));
|
|
61
|
+
};
|
|
62
|
+
export var Controlled = function Controlled() {
|
|
63
|
+
var _useState = useState(['email']),
|
|
64
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
65
|
+
value = _useState2[0],
|
|
66
|
+
setValue = _useState2[1];
|
|
67
|
+
return ___EmotionJSX(Box, null, ___EmotionJSX(CheckboxFieldGroup, {
|
|
68
|
+
label: "Notification channels",
|
|
69
|
+
value: value,
|
|
70
|
+
onChange: setValue
|
|
71
|
+
}, ___EmotionJSX(GroupItems, null)), ___EmotionJSX(Text, {
|
|
72
|
+
mt: "sm"
|
|
73
|
+
}, "Selected values:", ' ', value.join(', ') || 'none'));
|
|
74
|
+
};
|
|
75
|
+
export var Disabled = function Disabled(args) {
|
|
76
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({}, args, {
|
|
77
|
+
label: "Notification channels",
|
|
78
|
+
isDisabled: true
|
|
79
|
+
}), ___EmotionJSX(GroupItems, {
|
|
80
|
+
isDisabled: true
|
|
81
|
+
}));
|
|
82
|
+
};
|
|
83
|
+
export var Required = function Required(args) {
|
|
84
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({}, args, {
|
|
85
|
+
label: "Notification channels",
|
|
86
|
+
isRequired: true,
|
|
87
|
+
defaultValue: []
|
|
88
|
+
}), ___EmotionJSX(GroupItems, null));
|
|
89
|
+
};
|
|
90
|
+
export var ErrorInvalid = function ErrorInvalid(args) {
|
|
91
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({}, args, {
|
|
92
|
+
label: "Notification channels",
|
|
93
|
+
isInvalid: true,
|
|
94
|
+
status: "error",
|
|
95
|
+
errorMessage: "Choose at least one notification channel.",
|
|
96
|
+
helperText: "Select every channel where you want to receive updates."
|
|
97
|
+
}), ___EmotionJSX(GroupItems, null));
|
|
98
|
+
};
|
|
99
|
+
export var Horizontal = function Horizontal(args) {
|
|
100
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({}, args, {
|
|
101
|
+
label: "Notification channels",
|
|
102
|
+
orientation: "horizontal"
|
|
103
|
+
}), ___EmotionJSX(GroupItems, null));
|
|
104
|
+
};
|
|
105
|
+
export var ReadOnly = function ReadOnly(args) {
|
|
106
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({}, args, {
|
|
107
|
+
label: "Notification channels",
|
|
108
|
+
isReadOnly: true,
|
|
109
|
+
defaultValue: ['email', 'push']
|
|
110
|
+
}), ___EmotionJSX(GroupItems, null));
|
|
111
|
+
};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export var checkboxFieldGroup = {
|
|
2
|
+
container: {
|
|
3
|
+
display: 'flex',
|
|
4
|
+
flexDirection: 'column',
|
|
5
|
+
width: '100%'
|
|
6
|
+
},
|
|
7
|
+
items: {
|
|
8
|
+
display: 'flex',
|
|
9
|
+
flexDirection: 'column',
|
|
10
|
+
gap: 'xs',
|
|
11
|
+
width: '100%',
|
|
12
|
+
'&.is-horizontal': {
|
|
13
|
+
flexDirection: 'row',
|
|
14
|
+
flexWrap: 'wrap',
|
|
15
|
+
columnGap: 'lg',
|
|
16
|
+
rowGap: 'xs'
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
item: {
|
|
20
|
+
minWidth: 0,
|
|
21
|
+
flex: '0 1 auto',
|
|
22
|
+
'&.is-horizontal': {
|
|
23
|
+
flex: '0 1 auto'
|
|
24
|
+
},
|
|
25
|
+
'&.is-disabled': {
|
|
26
|
+
opacity: 0.65
|
|
27
|
+
},
|
|
28
|
+
'&.is-read-only': {
|
|
29
|
+
opacity: 0.65
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
export default checkboxFieldGroup;
|
|
@@ -0,0 +1,481 @@
|
|
|
1
|
+
import _typeof from "@babel/runtime-corejs3/helpers/esm/typeof";
|
|
2
|
+
import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
|
|
3
|
+
import _asyncToGenerator from "@babel/runtime-corejs3/helpers/esm/asyncToGenerator";
|
|
4
|
+
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
|
|
5
|
+
import _objectWithoutProperties from "@babel/runtime-corejs3/helpers/esm/objectWithoutProperties";
|
|
6
|
+
var _excluded = ["value", "label"];
|
|
7
|
+
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; }
|
|
8
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context9, _context0; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context9 = ownKeys(Object(t), !0)).call(_context9, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context0 = ownKeys(Object(t))).call(_context0, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
9
|
+
function _regeneratorRuntime() { "use strict"; var r = _regenerator(), e = r.m(_regeneratorRuntime), t = (_Object$getPrototypeOf ? _Object$getPrototypeOf(e) : e.__proto__).constructor; function n(r) { var e = "function" == typeof r && r.constructor; return !!e && (e === t || "GeneratorFunction" === (e.displayName || e.name)); } var o = { "throw": 1, "return": 2, "break": 3, "continue": 3 }; function a(r) { var e, t; return function (n) { e || (e = { stop: function stop() { return t(n.a, 2); }, "catch": function _catch() { return n.v; }, abrupt: function abrupt(r, e) { return t(n.a, o[r], e); }, delegateYield: function delegateYield(r, o, a) { return e.resultName = o, t(n.d, _regeneratorValues(r), a); }, finish: function finish(r) { return t(n.f, r); } }, t = function t(r, _t, o) { n.p = e.prev, n.n = e.next; try { return r(_t, o); } finally { e.next = n.n; } }), e.resultName && (e[e.resultName] = n.v, e.resultName = void 0), e.sent = n.v, e.next = n.n; try { return r.call(this, e); } finally { n.p = e.prev, n.n = e.next; } }; } return (_regeneratorRuntime = function _regeneratorRuntime() { return { wrap: function wrap(e, t, n, o) { return r.w(a(e), t, n, o && _reverseInstanceProperty(o).call(o)); }, isGeneratorFunction: n, mark: r.m, awrap: function awrap(r, e) { return new _OverloadYield(r, e); }, AsyncIterator: _regeneratorAsyncIterator, async: function async(r, e, t, o, u) { return (n(e) ? _regeneratorAsyncGen : _regeneratorAsync)(a(r), e, t, o, u); }, keys: _regeneratorKeys, values: _regeneratorValues }; })(); }
|
|
10
|
+
function _regeneratorValues(e) { if (null != e) { var t = e["function" == typeof _Symbol && _Symbol$iterator || "@@iterator"], r = 0; if (t) return t.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) return { next: function next() { return e && r >= e.length && (e = void 0), { value: e && e[r++], done: !e }; } }; } throw new TypeError(_typeof(e) + " is not iterable"); }
|
|
11
|
+
function _regeneratorKeys(e) { var n = Object(e), r = []; for (var t in n) r.unshift(t); return function e() { for (; r.length;) if ((t = r.pop()) in n) return e.value = t, e.done = !1, e; return e.done = !0, e; }; }
|
|
12
|
+
function _regeneratorAsync(n, e, r, t, o) { var a = _regeneratorAsyncGen(n, e, r, t, o); return a.next().then(function (n) { return n.done ? n.value : a.next(); }); }
|
|
13
|
+
function _regeneratorAsyncGen(r, e, t, o, n) { return new _regeneratorAsyncIterator(_regenerator().w(r, e, t, o), n || _Promise); }
|
|
14
|
+
function _regeneratorAsyncIterator(t, e) { function n(r, o, i, f) { try { var c = t[r](o), u = c.value; return u instanceof _OverloadYield ? e.resolve(u.v).then(function (t) { n("next", t, i, f); }, function (t) { n("throw", t, i, f); }) : e.resolve(u).then(function (t) { c.value = t, i(c); }, function (t) { return n("throw", t, i, f); }); } catch (t) { f(t); } } var r; this.next || (_regeneratorDefine2(_regeneratorAsyncIterator.prototype), _regeneratorDefine2(_regeneratorAsyncIterator.prototype, "function" == typeof _Symbol && _Symbol$asyncIterator || "@asyncIterator", function () { return this; })), _regeneratorDefine2(this, "_invoke", function (t, o, i) { function f() { return new e(function (e, r) { n(t, i, e, r); }); } return r = r ? r.then(f, f) : f(); }, !0); }
|
|
15
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof _Symbol ? _Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = _Object$create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: _bindInstanceProperty(d).call(d, e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = _Object$getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = _Object$create(c); function f(e) { return _Object$setPrototypeOf ? _Object$setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = _Object$create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
16
|
+
function _regeneratorDefine2(e, r, n, t) { var i = _Object$defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
17
|
+
function _OverloadYield(e, d) { this.v = e, this.k = d; }
|
|
18
|
+
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
19
|
+
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
|
20
|
+
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
|
21
|
+
import _Symbol from "@babel/runtime-corejs3/core-js-stable/symbol";
|
|
22
|
+
import _Object$create from "@babel/runtime-corejs3/core-js-stable/object/create";
|
|
23
|
+
import _bindInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/bind";
|
|
24
|
+
import _Object$getPrototypeOf from "@babel/runtime-corejs3/core-js-stable/object/get-prototype-of";
|
|
25
|
+
import _Object$setPrototypeOf from "@babel/runtime-corejs3/core-js-stable/object/set-prototype-of";
|
|
26
|
+
import _Symbol$asyncIterator from "@babel/runtime-corejs3/core-js-stable/symbol/async-iterator";
|
|
27
|
+
import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
|
|
28
|
+
import _Symbol$iterator from "@babel/runtime-corejs3/core-js-stable/symbol/iterator";
|
|
29
|
+
import _reverseInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/reverse";
|
|
30
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
31
|
+
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
32
|
+
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
33
|
+
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
|
34
|
+
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
|
35
|
+
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
|
36
|
+
import React from 'react';
|
|
37
|
+
import userEvent from '@testing-library/user-event';
|
|
38
|
+
import { axe } from 'jest-axe';
|
|
39
|
+
import { Box } from '../../index';
|
|
40
|
+
import { act, fireEvent, render, screen, within } from '../../utils/testUtils/testWrapper';
|
|
41
|
+
import { universalComponentTests } from '../../utils/testUtils/universalComponentTest';
|
|
42
|
+
import { CheckboxFieldGroup, CheckboxFieldGroupItem } from '.';
|
|
43
|
+
import { jsx as ___EmotionJSX } from "@emotion/react";
|
|
44
|
+
var groupLabel = 'Pets';
|
|
45
|
+
var values = ['dogs', 'cats', 'dragons'];
|
|
46
|
+
var longLabel = 'A very long label that wraps within the available group width';
|
|
47
|
+
var defaultItems = _mapInstanceProperty(values).call(values, function (value) {
|
|
48
|
+
return {
|
|
49
|
+
value: value,
|
|
50
|
+
label: value
|
|
51
|
+
};
|
|
52
|
+
});
|
|
53
|
+
beforeEach(function () {
|
|
54
|
+
jest.useRealTimers();
|
|
55
|
+
});
|
|
56
|
+
afterEach(function () {
|
|
57
|
+
jest.useRealTimers();
|
|
58
|
+
});
|
|
59
|
+
var renderGroup = function renderGroup() {
|
|
60
|
+
var groupProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
61
|
+
var itemConfigs = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultItems;
|
|
62
|
+
var options = arguments.length > 2 ? arguments[2] : undefined;
|
|
63
|
+
return render(___EmotionJSX(CheckboxFieldGroup, _extends({
|
|
64
|
+
label: groupLabel
|
|
65
|
+
}, groupProps), _mapInstanceProperty(itemConfigs).call(itemConfigs, function (_ref) {
|
|
66
|
+
var value = _ref.value,
|
|
67
|
+
label = _ref.label,
|
|
68
|
+
itemProps = _objectWithoutProperties(_ref, _excluded);
|
|
69
|
+
return ___EmotionJSX(CheckboxFieldGroupItem, _extends({
|
|
70
|
+
key: value,
|
|
71
|
+
value: value,
|
|
72
|
+
label: label
|
|
73
|
+
}, itemProps));
|
|
74
|
+
})), options);
|
|
75
|
+
};
|
|
76
|
+
universalComponentTests({
|
|
77
|
+
renderComponent: function renderComponent(props) {
|
|
78
|
+
return ___EmotionJSX(CheckboxFieldGroup, _extends({
|
|
79
|
+
label: groupLabel
|
|
80
|
+
}, props), ___EmotionJSX(CheckboxFieldGroupItem, {
|
|
81
|
+
value: values[0],
|
|
82
|
+
label: "Dogs"
|
|
83
|
+
}));
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
test.each([['default', {}], ['required', {
|
|
87
|
+
isRequired: true
|
|
88
|
+
}], ['helper and error', {
|
|
89
|
+
helperText: 'Select at least one pet',
|
|
90
|
+
errorMessage: 'A pet selection is required',
|
|
91
|
+
isInvalid: true
|
|
92
|
+
}], ['disabled', {
|
|
93
|
+
isDisabled: true
|
|
94
|
+
}], ['read-only', {
|
|
95
|
+
isReadOnly: true
|
|
96
|
+
}], ['horizontal', {
|
|
97
|
+
orientation: 'horizontal'
|
|
98
|
+
}]])('has no accessibility violations for the %s state', /*#__PURE__*/function () {
|
|
99
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(_state, groupProps) {
|
|
100
|
+
var _renderGroup, container;
|
|
101
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
102
|
+
while (1) switch (_context.prev = _context.next) {
|
|
103
|
+
case 0:
|
|
104
|
+
_renderGroup = renderGroup(groupProps), container = _renderGroup.container;
|
|
105
|
+
_context.t0 = expect;
|
|
106
|
+
_context.next = 4;
|
|
107
|
+
return axe(container);
|
|
108
|
+
case 4:
|
|
109
|
+
_context.t1 = _context.sent;
|
|
110
|
+
(0, _context.t0)(_context.t1).toHaveNoViolations();
|
|
111
|
+
case 6:
|
|
112
|
+
case "end":
|
|
113
|
+
return _context.stop();
|
|
114
|
+
}
|
|
115
|
+
}, _callee);
|
|
116
|
+
}));
|
|
117
|
+
return function (_x, _x2) {
|
|
118
|
+
return _ref2.apply(this, arguments);
|
|
119
|
+
};
|
|
120
|
+
}());
|
|
121
|
+
test('renders a labelled group and individually labelled checkbox items', function () {
|
|
122
|
+
renderGroup();
|
|
123
|
+
var group = screen.getByRole('group', {
|
|
124
|
+
name: groupLabel
|
|
125
|
+
});
|
|
126
|
+
var groupLabelElement = screen.getByText(groupLabel);
|
|
127
|
+
expect(group).toHaveAttribute('aria-labelledby', groupLabelElement.id);
|
|
128
|
+
expect(screen.getByRole('checkbox', {
|
|
129
|
+
name: 'dogs'
|
|
130
|
+
})).toBeInTheDocument();
|
|
131
|
+
expect(screen.getByRole('checkbox', {
|
|
132
|
+
name: 'cats'
|
|
133
|
+
})).toBeInTheDocument();
|
|
134
|
+
});
|
|
135
|
+
test('toggles multiple items and reports the next selected array', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
|
|
136
|
+
var onChange, checkboxes;
|
|
137
|
+
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
138
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
139
|
+
case 0:
|
|
140
|
+
onChange = jest.fn();
|
|
141
|
+
renderGroup({
|
|
142
|
+
onChange: onChange
|
|
143
|
+
});
|
|
144
|
+
checkboxes = screen.getAllByRole('checkbox');
|
|
145
|
+
_context2.next = 5;
|
|
146
|
+
return userEvent.click(checkboxes[0]);
|
|
147
|
+
case 5:
|
|
148
|
+
_context2.next = 7;
|
|
149
|
+
return userEvent.click(checkboxes[1]);
|
|
150
|
+
case 7:
|
|
151
|
+
_context2.next = 9;
|
|
152
|
+
return userEvent.click(checkboxes[0]);
|
|
153
|
+
case 9:
|
|
154
|
+
expect(onChange).toHaveBeenNthCalledWith(1, [values[0]]);
|
|
155
|
+
expect(onChange).toHaveBeenNthCalledWith(2, [values[0], values[1]]);
|
|
156
|
+
expect(onChange).toHaveBeenNthCalledWith(3, [values[1]]);
|
|
157
|
+
expect(checkboxes[0]).not.toBeChecked();
|
|
158
|
+
expect(checkboxes[1]).toBeChecked();
|
|
159
|
+
case 14:
|
|
160
|
+
case "end":
|
|
161
|
+
return _context2.stop();
|
|
162
|
+
}
|
|
163
|
+
}, _callee2);
|
|
164
|
+
})));
|
|
165
|
+
test('supports controlled selection without changing until the value prop changes', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
|
|
166
|
+
var onChange, checkboxes;
|
|
167
|
+
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
168
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
169
|
+
case 0:
|
|
170
|
+
onChange = jest.fn();
|
|
171
|
+
renderGroup({
|
|
172
|
+
value: [values[0]],
|
|
173
|
+
onChange: onChange
|
|
174
|
+
});
|
|
175
|
+
checkboxes = screen.getAllByRole('checkbox');
|
|
176
|
+
expect(checkboxes[0]).toBeChecked();
|
|
177
|
+
_context3.next = 6;
|
|
178
|
+
return userEvent.click(checkboxes[1]);
|
|
179
|
+
case 6:
|
|
180
|
+
expect(onChange).toHaveBeenCalledWith([values[0], values[1]]);
|
|
181
|
+
expect(checkboxes[0]).toBeChecked();
|
|
182
|
+
expect(checkboxes[1]).not.toBeChecked();
|
|
183
|
+
case 9:
|
|
184
|
+
case "end":
|
|
185
|
+
return _context3.stop();
|
|
186
|
+
}
|
|
187
|
+
}, _callee3);
|
|
188
|
+
})));
|
|
189
|
+
test('supports an uncontrolled default selection', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
|
|
190
|
+
var checkboxes;
|
|
191
|
+
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
192
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
193
|
+
case 0:
|
|
194
|
+
renderGroup({
|
|
195
|
+
defaultValue: [values[0]]
|
|
196
|
+
});
|
|
197
|
+
checkboxes = screen.getAllByRole('checkbox');
|
|
198
|
+
expect(checkboxes[0]).toBeChecked();
|
|
199
|
+
_context4.next = 5;
|
|
200
|
+
return userEvent.click(checkboxes[1]);
|
|
201
|
+
case 5:
|
|
202
|
+
expect(checkboxes[0]).toBeChecked();
|
|
203
|
+
expect(checkboxes[1]).toBeChecked();
|
|
204
|
+
case 7:
|
|
205
|
+
case "end":
|
|
206
|
+
return _context4.stop();
|
|
207
|
+
}
|
|
208
|
+
}, _callee4);
|
|
209
|
+
})));
|
|
210
|
+
test('disabled group and items ignore clicks and Space without changing selection', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
|
|
211
|
+
var groupOnChange, _renderGroup2, unmount, groupCheckboxes, groupItem, itemOnChange, _renderGroup3, container, itemCheckboxes, itemContainer;
|
|
212
|
+
return _regeneratorRuntime().wrap(function _callee5$(_context5) {
|
|
213
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
214
|
+
case 0:
|
|
215
|
+
groupOnChange = jest.fn();
|
|
216
|
+
_renderGroup2 = renderGroup({
|
|
217
|
+
defaultValue: [values[0]],
|
|
218
|
+
isDisabled: true,
|
|
219
|
+
onChange: groupOnChange
|
|
220
|
+
}), unmount = _renderGroup2.unmount;
|
|
221
|
+
groupCheckboxes = screen.getAllByRole('checkbox');
|
|
222
|
+
_forEachInstanceProperty(groupCheckboxes).call(groupCheckboxes, function (checkbox) {
|
|
223
|
+
return expect(checkbox).toBeDisabled();
|
|
224
|
+
});
|
|
225
|
+
groupItem = groupCheckboxes[0].closest('[data-pendo-id="CheckboxFieldGroupItem"]');
|
|
226
|
+
expect(groupItem).toHaveStyleRule('opacity', '0.65', {
|
|
227
|
+
target: '.is-disabled'
|
|
228
|
+
});
|
|
229
|
+
_context5.next = 8;
|
|
230
|
+
return userEvent.click(groupCheckboxes[0]);
|
|
231
|
+
case 8:
|
|
232
|
+
_context5.next = 10;
|
|
233
|
+
return userEvent.type(groupCheckboxes[0], '{space}');
|
|
234
|
+
case 10:
|
|
235
|
+
expect(groupCheckboxes[0]).toBeChecked();
|
|
236
|
+
expect(groupOnChange).not.toHaveBeenCalled();
|
|
237
|
+
unmount();
|
|
238
|
+
itemOnChange = jest.fn();
|
|
239
|
+
_renderGroup3 = renderGroup({
|
|
240
|
+
defaultValue: [values[1]],
|
|
241
|
+
onChange: itemOnChange
|
|
242
|
+
}, [defaultItems[0], _objectSpread(_objectSpread({}, defaultItems[1]), {}, {
|
|
243
|
+
isDisabled: true
|
|
244
|
+
})]), container = _renderGroup3.container;
|
|
245
|
+
itemCheckboxes = within(container).getAllByRole('checkbox');
|
|
246
|
+
expect(itemCheckboxes[0]).toBeEnabled();
|
|
247
|
+
expect(itemCheckboxes[1]).toBeDisabled();
|
|
248
|
+
itemContainer = itemCheckboxes[1].closest('[data-pendo-id="CheckboxFieldGroupItem"]');
|
|
249
|
+
expect(itemContainer).toHaveStyleRule('opacity', '0.65', {
|
|
250
|
+
target: '.is-disabled'
|
|
251
|
+
});
|
|
252
|
+
// The base Astro theme resolves space.md to 15px; the rule is serialized on
|
|
253
|
+
// the label's emotion class as a `div` descendant rule.
|
|
254
|
+
expect(itemContainer.querySelector('label')).toHaveStyleRule('margin-right', '15px', {
|
|
255
|
+
target: 'div'
|
|
256
|
+
});
|
|
257
|
+
expect(itemCheckboxes[1]).toBeChecked();
|
|
258
|
+
_context5.next = 24;
|
|
259
|
+
return userEvent.click(itemCheckboxes[1]);
|
|
260
|
+
case 24:
|
|
261
|
+
_context5.next = 26;
|
|
262
|
+
return userEvent.type(itemCheckboxes[1], '{space}');
|
|
263
|
+
case 26:
|
|
264
|
+
expect(itemCheckboxes[1]).toBeChecked();
|
|
265
|
+
expect(itemOnChange).not.toHaveBeenCalled();
|
|
266
|
+
case 28:
|
|
267
|
+
case "end":
|
|
268
|
+
return _context5.stop();
|
|
269
|
+
}
|
|
270
|
+
}, _callee5);
|
|
271
|
+
})));
|
|
272
|
+
test('keeps a read-only group focusable without changing selection or invoking onChange', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee6() {
|
|
273
|
+
var onChange, checkboxes, readOnlyItem;
|
|
274
|
+
return _regeneratorRuntime().wrap(function _callee6$(_context6) {
|
|
275
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
276
|
+
case 0:
|
|
277
|
+
onChange = jest.fn();
|
|
278
|
+
renderGroup({
|
|
279
|
+
isReadOnly: true,
|
|
280
|
+
onChange: onChange
|
|
281
|
+
});
|
|
282
|
+
checkboxes = screen.getAllByRole('checkbox');
|
|
283
|
+
expect(screen.getByRole('group', {
|
|
284
|
+
name: groupLabel
|
|
285
|
+
})).toBeInTheDocument();
|
|
286
|
+
expect(checkboxes[0]).toHaveAttribute('aria-readonly', 'true');
|
|
287
|
+
readOnlyItem = checkboxes[0].closest('[data-pendo-id="CheckboxFieldGroupItem"]');
|
|
288
|
+
expect(readOnlyItem).toHaveStyleRule('opacity', '0.65', {
|
|
289
|
+
target: '.is-read-only'
|
|
290
|
+
});
|
|
291
|
+
_context6.next = 9;
|
|
292
|
+
return userEvent.tab();
|
|
293
|
+
case 9:
|
|
294
|
+
expect(checkboxes[0]).toHaveFocus();
|
|
295
|
+
_context6.next = 12;
|
|
296
|
+
return userEvent.click(checkboxes[0]);
|
|
297
|
+
case 12:
|
|
298
|
+
_context6.next = 14;
|
|
299
|
+
return userEvent.type(checkboxes[0], '{space}');
|
|
300
|
+
case 14:
|
|
301
|
+
expect(checkboxes[0]).not.toBeChecked();
|
|
302
|
+
expect(onChange).not.toHaveBeenCalled();
|
|
303
|
+
_context6.next = 18;
|
|
304
|
+
return userEvent.tab();
|
|
305
|
+
case 18:
|
|
306
|
+
expect(checkboxes[1]).toHaveFocus();
|
|
307
|
+
_context6.next = 21;
|
|
308
|
+
return userEvent.tab({
|
|
309
|
+
shift: true
|
|
310
|
+
});
|
|
311
|
+
case 21:
|
|
312
|
+
expect(checkboxes[0]).toHaveFocus();
|
|
313
|
+
case 22:
|
|
314
|
+
case "end":
|
|
315
|
+
return _context6.stop();
|
|
316
|
+
}
|
|
317
|
+
}, _callee6);
|
|
318
|
+
})));
|
|
319
|
+
test('exposes required and invalid semantics and associates helper and error messages', function () {
|
|
320
|
+
var _group$getAttribute;
|
|
321
|
+
var helperText = 'Select at least one pet';
|
|
322
|
+
var errorMessage = 'A pet selection is required';
|
|
323
|
+
renderGroup({
|
|
324
|
+
helperText: helperText,
|
|
325
|
+
errorMessage: errorMessage,
|
|
326
|
+
isInvalid: true,
|
|
327
|
+
isRequired: true
|
|
328
|
+
});
|
|
329
|
+
var group = screen.getByRole('group', {
|
|
330
|
+
name: new RegExp(groupLabel)
|
|
331
|
+
});
|
|
332
|
+
var helper = screen.getByText(helperText);
|
|
333
|
+
var error = screen.getByText(errorMessage);
|
|
334
|
+
var describedBy = ((_group$getAttribute = group.getAttribute('aria-describedby')) === null || _group$getAttribute === void 0 ? void 0 : _group$getAttribute.split(' ')) || [];
|
|
335
|
+
var checkboxes = screen.getAllByRole('checkbox');
|
|
336
|
+
expect(checkboxes).toHaveLength(defaultItems.length);
|
|
337
|
+
_forEachInstanceProperty(checkboxes).call(checkboxes, function (checkbox) {
|
|
338
|
+
var _checkbox$getAttribut;
|
|
339
|
+
expect(checkbox).toBeRequired();
|
|
340
|
+
expect(checkbox).toHaveAttribute('aria-invalid', 'true');
|
|
341
|
+
expect((_checkbox$getAttribut = checkbox.getAttribute('aria-describedby')) === null || _checkbox$getAttribut === void 0 ? void 0 : _checkbox$getAttribut.split(' ')).toEqual(expect.arrayContaining([helper.id, error.id]));
|
|
342
|
+
});
|
|
343
|
+
expect(describedBy).toEqual(expect.arrayContaining([helper.id, error.id]));
|
|
344
|
+
});
|
|
345
|
+
test('associates item helper text with its checkbox', function () {
|
|
346
|
+
var _checkbox$getAttribut2;
|
|
347
|
+
var itemHelper = 'Dogs are friendly';
|
|
348
|
+
renderGroup({}, [_objectSpread(_objectSpread({}, defaultItems[0]), {}, {
|
|
349
|
+
helperText: itemHelper
|
|
350
|
+
})]);
|
|
351
|
+
var checkbox = screen.getByRole('checkbox', {
|
|
352
|
+
name: values[0]
|
|
353
|
+
});
|
|
354
|
+
var helper = screen.getByText(itemHelper);
|
|
355
|
+
expect((_checkbox$getAttribut2 = checkbox.getAttribute('aria-describedby')) === null || _checkbox$getAttribut2 === void 0 ? void 0 : _checkbox$getAttribut2.split(' ')).toContain(helper.id);
|
|
356
|
+
});
|
|
357
|
+
test('uses native validity for an empty required group and selected checkbox', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee7() {
|
|
358
|
+
var form, checkboxes, initialFormValidity;
|
|
359
|
+
return _regeneratorRuntime().wrap(function _callee7$(_context7) {
|
|
360
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
361
|
+
case 0:
|
|
362
|
+
render(___EmotionJSX("form", {
|
|
363
|
+
"aria-label": "Pet form"
|
|
364
|
+
}, ___EmotionJSX(CheckboxFieldGroup, {
|
|
365
|
+
label: groupLabel,
|
|
366
|
+
isRequired: true,
|
|
367
|
+
validationBehavior: "native"
|
|
368
|
+
}, _mapInstanceProperty(defaultItems).call(defaultItems, function (_ref9) {
|
|
369
|
+
var value = _ref9.value,
|
|
370
|
+
label = _ref9.label;
|
|
371
|
+
return ___EmotionJSX(CheckboxFieldGroupItem, {
|
|
372
|
+
key: value,
|
|
373
|
+
value: value,
|
|
374
|
+
label: label
|
|
375
|
+
});
|
|
376
|
+
}))));
|
|
377
|
+
form = screen.getByRole('form', {
|
|
378
|
+
name: 'Pet form'
|
|
379
|
+
});
|
|
380
|
+
checkboxes = screen.getAllByRole('checkbox'); // checkValidity dispatches native invalid events that update React Aria validation state.
|
|
381
|
+
initialFormValidity = false;
|
|
382
|
+
act(function () {
|
|
383
|
+
initialFormValidity = form.checkValidity();
|
|
384
|
+
});
|
|
385
|
+
expect(initialFormValidity).toBe(false);
|
|
386
|
+
expect(checkboxes[0].validity.valid).toBe(false);
|
|
387
|
+
|
|
388
|
+
/* eslint-disable-next-line testing-library/no-unnecessary-act */
|
|
389
|
+
act(function () {
|
|
390
|
+
fireEvent.click(checkboxes[0]);
|
|
391
|
+
});
|
|
392
|
+
expect(checkboxes[0]).toBeChecked();
|
|
393
|
+
// React Aria applies native required to each item; only the selected input is valid.
|
|
394
|
+
expect(checkboxes[0].validity.valid).toBe(true);
|
|
395
|
+
case 10:
|
|
396
|
+
case "end":
|
|
397
|
+
return _context7.stop();
|
|
398
|
+
}
|
|
399
|
+
}, _callee7);
|
|
400
|
+
})));
|
|
401
|
+
test('supports horizontal and vertical layout classes and long labels', function () {
|
|
402
|
+
var _renderGroup4 = renderGroup({
|
|
403
|
+
orientation: 'vertical'
|
|
404
|
+
}),
|
|
405
|
+
container = _renderGroup4.container;
|
|
406
|
+
var verticalGroup = within(container).getByRole('group', {
|
|
407
|
+
name: groupLabel
|
|
408
|
+
});
|
|
409
|
+
var verticalItems = verticalGroup.children[1];
|
|
410
|
+
expect(verticalGroup).not.toHaveClass('is-horizontal');
|
|
411
|
+
expect(verticalItems).not.toHaveClass('is-horizontal');
|
|
412
|
+
expect(verticalItems).toHaveStyleRule('flex-direction', 'column');
|
|
413
|
+
expect(verticalItems).toHaveStyleRule('gap', '5px');
|
|
414
|
+
var _render = render(___EmotionJSX(Box, {
|
|
415
|
+
"data-testid": "constrained-group-container",
|
|
416
|
+
sx: {
|
|
417
|
+
width: '100%',
|
|
418
|
+
maxWidth: '240px',
|
|
419
|
+
overflowX: 'hidden'
|
|
420
|
+
}
|
|
421
|
+
}, ___EmotionJSX(CheckboxFieldGroup, {
|
|
422
|
+
label: groupLabel,
|
|
423
|
+
orientation: "horizontal"
|
|
424
|
+
}, ___EmotionJSX(CheckboxFieldGroupItem, {
|
|
425
|
+
value: values[0],
|
|
426
|
+
label: longLabel
|
|
427
|
+
}), ___EmotionJSX(CheckboxFieldGroupItem, {
|
|
428
|
+
value: values[1],
|
|
429
|
+
label: values[1]
|
|
430
|
+
})))),
|
|
431
|
+
horizontalContainer = _render.container;
|
|
432
|
+
var horizontalGroup = within(horizontalContainer).getByRole('group', {
|
|
433
|
+
name: groupLabel
|
|
434
|
+
});
|
|
435
|
+
var constrainedContainer = horizontalGroup.parentElement;
|
|
436
|
+
var horizontalItems = horizontalGroup.children[1];
|
|
437
|
+
var longLabelElement = within(horizontalGroup).getByText(longLabel);
|
|
438
|
+
expect(constrainedContainer).toHaveStyleRule('width', '100%');
|
|
439
|
+
expect(constrainedContainer).toHaveStyleRule('max-width', '240px');
|
|
440
|
+
expect(constrainedContainer).toHaveStyleRule('overflow-x', 'hidden');
|
|
441
|
+
expect(horizontalGroup).toHaveClass('is-horizontal');
|
|
442
|
+
expect(horizontalGroup).toHaveStyleRule('width', '100%');
|
|
443
|
+
expect(horizontalItems).toBeInTheDocument();
|
|
444
|
+
expect(horizontalItems).toHaveClass('is-horizontal');
|
|
445
|
+
expect(horizontalItems).toHaveStyleRule('width', '100%');
|
|
446
|
+
expect(horizontalItems).toHaveStyleRule('flex-wrap', 'wrap', {
|
|
447
|
+
target: '.is-horizontal'
|
|
448
|
+
});
|
|
449
|
+
expect(longLabelElement).toHaveStyleRule('max-width', '100%');
|
|
450
|
+
expect(longLabelElement).toHaveStyleRule('flex-wrap', 'wrap');
|
|
451
|
+
expect(horizontalItems.scrollWidth).toBeLessThanOrEqual(horizontalItems.clientWidth);
|
|
452
|
+
});
|
|
453
|
+
test('supports keyboard Space toggling through the real checkbox input', /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee8() {
|
|
454
|
+
var checkbox;
|
|
455
|
+
return _regeneratorRuntime().wrap(function _callee8$(_context8) {
|
|
456
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
457
|
+
case 0:
|
|
458
|
+
renderGroup();
|
|
459
|
+
checkbox = screen.getAllByRole('checkbox')[0];
|
|
460
|
+
_context8.next = 4;
|
|
461
|
+
return userEvent.tab();
|
|
462
|
+
case 4:
|
|
463
|
+
expect(checkbox).toHaveFocus();
|
|
464
|
+
_context8.next = 7;
|
|
465
|
+
return userEvent.type(checkbox, '{space}');
|
|
466
|
+
case 7:
|
|
467
|
+
expect(checkbox).toBeChecked();
|
|
468
|
+
case 8:
|
|
469
|
+
case "end":
|
|
470
|
+
return _context8.stop();
|
|
471
|
+
}
|
|
472
|
+
}, _callee8);
|
|
473
|
+
})));
|
|
474
|
+
test('renders group and item contents inside the expected group subtree', function () {
|
|
475
|
+
var _renderGroup5 = renderGroup(),
|
|
476
|
+
container = _renderGroup5.container;
|
|
477
|
+
var group = within(container).getByRole('group', {
|
|
478
|
+
name: groupLabel
|
|
479
|
+
});
|
|
480
|
+
expect(within(group).getAllByRole('checkbox')).toHaveLength(defaultItems.length);
|
|
481
|
+
});
|