@pingux/astro 2.221.6 → 2.234.1-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 +3 -3
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
5
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.OnyxUncheckedIcon = exports.OnyxIndeterminateCheckboxIcon = exports.OnyxDefaultCheckboxIcon = exports.OnyxCheckedIcon = exports.AstroIndeterminateCheckboxIcon = void 0;
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
10
|
+
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/objectWithoutProperties"));
|
|
11
|
+
var _react = _interopRequireDefault(require("react"));
|
|
12
|
+
var _lodash = require("lodash");
|
|
13
|
+
var _Box = _interopRequireDefault(require("../Box"));
|
|
14
|
+
var _react2 = require("@emotion/react");
|
|
15
|
+
var _excluded = ["children"];
|
|
16
|
+
/** Renders a Box component pre-configured as an `<svg>` element. */
|
|
17
|
+
var BoxAsSvg = function BoxAsSvg(_ref) {
|
|
18
|
+
var children = _ref.children,
|
|
19
|
+
props = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
|
|
20
|
+
return (0, _react2.jsx)(_Box["default"], (0, _extends2["default"])({
|
|
21
|
+
as: "svg"
|
|
22
|
+
}, props), children);
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
// These are valid DOM/SVG attributes that should not be inherited by icon elements
|
|
26
|
+
// when spread from a parent checkbox component's prop bag.
|
|
27
|
+
var OMITTED_PROPS = ['id', 'aria-checked', 'data-testid', 'onFocus'];
|
|
28
|
+
var AstroIndeterminateCheckboxIcon = exports.AstroIndeterminateCheckboxIcon = function AstroIndeterminateCheckboxIcon(props) {
|
|
29
|
+
return (0, _react2.jsx)(BoxAsSvg, (0, _extends2["default"])({
|
|
30
|
+
viewBox: "0 0 24 24",
|
|
31
|
+
fill: "none",
|
|
32
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
33
|
+
"aria-labelledby": "checkbox-icon-title",
|
|
34
|
+
"data-testid": "checkbox-icon-indeterminate"
|
|
35
|
+
}, (0, _lodash.omit)(props, OMITTED_PROPS)), (0, _react2.jsx)("title", {
|
|
36
|
+
id: "checkbox-icon-title"
|
|
37
|
+
}, "Indeterminate Checkbox Icon"), (0, _react2.jsx)("rect", {
|
|
38
|
+
x: "3.5",
|
|
39
|
+
y: "3.5",
|
|
40
|
+
width: "17",
|
|
41
|
+
height: "17",
|
|
42
|
+
rx: "1.5",
|
|
43
|
+
id: "indeterminate-checkbox-icon-wrapper"
|
|
44
|
+
}), (0, _react2.jsx)("rect", {
|
|
45
|
+
x: "6.5",
|
|
46
|
+
y: "11",
|
|
47
|
+
width: "11",
|
|
48
|
+
height: "2",
|
|
49
|
+
fill: "white"
|
|
50
|
+
}));
|
|
51
|
+
};
|
|
52
|
+
var OnyxCheckedIcon = exports.OnyxCheckedIcon = function OnyxCheckedIcon() {
|
|
53
|
+
return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)("rect", {
|
|
54
|
+
id: "checked-bg",
|
|
55
|
+
width: "16",
|
|
56
|
+
height: "16",
|
|
57
|
+
rx: "4",
|
|
58
|
+
fill: "currentColor"
|
|
59
|
+
}), (0, _react2.jsx)("path", {
|
|
60
|
+
d: "M7.10536 11.7932L7.08774 11.8108L2.6879 7.41096L4.12057 5.97829L7.10542 8.96313L11.8794 4.18912L13.3121 5.62179L7.12304 11.8109L7.10536 11.7932Z",
|
|
61
|
+
fill: "white"
|
|
62
|
+
}));
|
|
63
|
+
};
|
|
64
|
+
var OnyxUncheckedIcon = exports.OnyxUncheckedIcon = function OnyxUncheckedIcon() {
|
|
65
|
+
return (
|
|
66
|
+
// Dark mode overrides this fill via theme variant CSS on rect[id="unchecked-bg"]
|
|
67
|
+
(0, _react2.jsx)("rect", {
|
|
68
|
+
id: "unchecked-bg",
|
|
69
|
+
x: "0.5",
|
|
70
|
+
y: "0.5",
|
|
71
|
+
width: "15",
|
|
72
|
+
height: "15",
|
|
73
|
+
rx: "3.5",
|
|
74
|
+
fill: "white",
|
|
75
|
+
stroke: "currentColor"
|
|
76
|
+
})
|
|
77
|
+
);
|
|
78
|
+
};
|
|
79
|
+
var OnyxIndeterminateCheckboxIcon = exports.OnyxIndeterminateCheckboxIcon = function OnyxIndeterminateCheckboxIcon(props) {
|
|
80
|
+
return (0, _react2.jsx)(BoxAsSvg, (0, _extends2["default"])({
|
|
81
|
+
viewBox: "0 0 16 16",
|
|
82
|
+
fill: "none",
|
|
83
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
84
|
+
"aria-labelledby": "checkbox-icon-title",
|
|
85
|
+
"data-testid": "checkbox-icon-indeterminate"
|
|
86
|
+
}, (0, _lodash.omit)(props, OMITTED_PROPS)), (0, _react2.jsx)("title", {
|
|
87
|
+
id: "checkbox-icon-title"
|
|
88
|
+
}, "Indeterminate Checkbox Icon"), (0, _react2.jsx)("rect", {
|
|
89
|
+
id: "indeterminate-checkbox-icon-wrapper",
|
|
90
|
+
width: "16",
|
|
91
|
+
height: "16",
|
|
92
|
+
rx: "4",
|
|
93
|
+
fill: "currentColor",
|
|
94
|
+
stroke: "currentColor"
|
|
95
|
+
}), (0, _react2.jsx)("rect", {
|
|
96
|
+
x: "4",
|
|
97
|
+
y: "7",
|
|
98
|
+
width: "8",
|
|
99
|
+
height: "2",
|
|
100
|
+
fill: "white"
|
|
101
|
+
}));
|
|
102
|
+
};
|
|
103
|
+
var OnyxDefaultCheckboxIcon = exports.OnyxDefaultCheckboxIcon = function OnyxDefaultCheckboxIcon(_ref2) {
|
|
104
|
+
var isChecked = _ref2.isChecked,
|
|
105
|
+
variant = _ref2.variant,
|
|
106
|
+
sx = _ref2.sx;
|
|
107
|
+
return (0, _react2.jsx)(BoxAsSvg, {
|
|
108
|
+
viewBox: "0 0 16 16",
|
|
109
|
+
fill: "none",
|
|
110
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
111
|
+
"aria-hidden": "true",
|
|
112
|
+
__themeKey: "forms",
|
|
113
|
+
variant: variant || 'checkbox',
|
|
114
|
+
sx: sx,
|
|
115
|
+
__css: {
|
|
116
|
+
mr: 2,
|
|
117
|
+
borderRadius: 4,
|
|
118
|
+
flexShrink: 0
|
|
119
|
+
},
|
|
120
|
+
tabIndex: -1
|
|
121
|
+
}, isChecked ? (0, _react2.jsx)(OnyxCheckedIcon, null) : (0, _react2.jsx)(OnyxUncheckedIcon, null));
|
|
122
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default } from './Checkbox';
|
|
@@ -82,6 +82,8 @@ var CheckboxField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
82
82
|
}, [isIndeterminate]);
|
|
83
83
|
var _useCheckbox = (0, _reactAria.useCheckbox)(checkboxProps, state, checkboxRef),
|
|
84
84
|
inputProps = _useCheckbox.inputProps;
|
|
85
|
+
var _useGetTheme = (0, _hooks.useGetTheme)(),
|
|
86
|
+
isOnyx = _useGetTheme.themeState.isOnyx;
|
|
85
87
|
var _useField = (0, _hooks.useField)(_objectSpread(_objectSpread(_objectSpread({}, safeContainerPressProps), props), {}, {
|
|
86
88
|
statusClasses: {
|
|
87
89
|
isIndeterminate: isIndeterminate
|
|
@@ -94,7 +96,9 @@ var CheckboxField = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
94
96
|
var helperTextId = (0, _react.useMemo)(function () {
|
|
95
97
|
return (0, _uuid.v4)();
|
|
96
98
|
}, []);
|
|
97
|
-
return (0, _react2.jsx)(_.Box, (0, _extends2["default"])({}, (0, _pendoID.getPendoID)(displayName), fieldContainerProps
|
|
99
|
+
return (0, _react2.jsx)(_.Box, (0, _extends2["default"])({}, (0, _pendoID.getPendoID)(displayName), fieldContainerProps, {
|
|
100
|
+
variant: isOnyx && 'forms.checkboxField.container' || undefined
|
|
101
|
+
}), (0, _react2.jsx)(_.Box, {
|
|
98
102
|
isRow: true
|
|
99
103
|
}, (0, _react2.jsx)(_.Label, (0, _extends2["default"])({
|
|
100
104
|
variant: "forms.label.checkbox"
|
|
@@ -275,7 +275,7 @@ var Indeterminate = exports.Indeterminate = function Indeterminate() {
|
|
|
275
275
|
}, [isIndeterminate, subCheckboxes]);
|
|
276
276
|
return (0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)(_index.CheckboxField, {
|
|
277
277
|
label: "Fruit Salad Recipe",
|
|
278
|
-
isIndeterminate:
|
|
278
|
+
isIndeterminate: true,
|
|
279
279
|
isSelected: isCompleted,
|
|
280
280
|
onChange: handleParentCheckboxChange
|
|
281
281
|
}), (0, _react2.jsx)(_index.Box, {
|
|
@@ -17,6 +17,9 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs3/
|
|
|
17
17
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
18
18
|
var _react = _interopRequireDefault(require("react"));
|
|
19
19
|
var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
|
|
20
|
+
var _theme = _interopRequireDefault(require("../../styles/theme"));
|
|
21
|
+
var _nextGenDarkMode = _interopRequireDefault(require("../../styles/themeOverrides/nextGenDarkMode"));
|
|
22
|
+
var _nextGen = _interopRequireDefault(require("../../styles/themes/next-gen"));
|
|
20
23
|
var _statuses = _interopRequireDefault(require("../../utils/devUtils/constants/statuses"));
|
|
21
24
|
var _testWrapper = require("../../utils/testUtils/testWrapper");
|
|
22
25
|
var _universalComponentTest = require("../../utils/testUtils/universalComponentTest");
|
|
@@ -337,10 +340,43 @@ test('indeterminate checkbox, clicking svg', /*#__PURE__*/(0, _asyncToGenerator2
|
|
|
337
340
|
}
|
|
338
341
|
}, _callee8);
|
|
339
342
|
})));
|
|
340
|
-
test('
|
|
343
|
+
test.each([['Astro', _theme["default"]], ['Onyx', _nextGen["default"]], ['Onyx dark', _nextGenDarkMode["default"]]])('%s checkbox receives focus when tabbed to', /*#__PURE__*/function () {
|
|
344
|
+
var _ref0 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regeneratorRuntime().mark(function _callee9(_themeName, providerTheme) {
|
|
345
|
+
var input;
|
|
346
|
+
return _regeneratorRuntime().wrap(function _callee9$(_context9) {
|
|
347
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
348
|
+
case 0:
|
|
349
|
+
(0, _testWrapper.render)((0, _react2.jsx)(_react["default"].Fragment, null, (0, _react2.jsx)("button", {
|
|
350
|
+
type: "button"
|
|
351
|
+
}, "Before checkbox"), (0, _react2.jsx)(_["default"], defaultProps)), {
|
|
352
|
+
providerTheme: providerTheme
|
|
353
|
+
});
|
|
354
|
+
input = _testWrapper.screen.getByRole('checkbox');
|
|
355
|
+
_context9.next = 4;
|
|
356
|
+
return _userEvent["default"].tab();
|
|
357
|
+
case 4:
|
|
358
|
+
expect(_testWrapper.screen.getByRole('button', {
|
|
359
|
+
name: 'Before checkbox'
|
|
360
|
+
})).toHaveFocus();
|
|
361
|
+
_context9.next = 7;
|
|
362
|
+
return _userEvent["default"].tab();
|
|
363
|
+
case 7:
|
|
364
|
+
expect(input).toHaveFocus();
|
|
365
|
+
expect(input.closest('label')).toHaveClass('is-focused');
|
|
366
|
+
case 9:
|
|
367
|
+
case "end":
|
|
368
|
+
return _context9.stop();
|
|
369
|
+
}
|
|
370
|
+
}, _callee9);
|
|
371
|
+
}));
|
|
372
|
+
return function (_x, _x2) {
|
|
373
|
+
return _ref0.apply(this, arguments);
|
|
374
|
+
};
|
|
375
|
+
}());
|
|
376
|
+
test('controlled indeterminate checkbox retains focus and toggles correctly across keyboard Space presses', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regeneratorRuntime().mark(function _callee0() {
|
|
341
377
|
var onChange, IndeterminateParent, input, input2;
|
|
342
|
-
return _regeneratorRuntime().wrap(function
|
|
343
|
-
while (1) switch (
|
|
378
|
+
return _regeneratorRuntime().wrap(function _callee0$(_context0) {
|
|
379
|
+
while (1) switch (_context0.prev = _context0.next) {
|
|
344
380
|
case 0:
|
|
345
381
|
onChange = jest.fn();
|
|
346
382
|
IndeterminateParent = function IndeterminateParent() {
|
|
@@ -414,7 +450,7 @@ test('controlled indeterminate checkbox retains focus and toggles correctly acro
|
|
|
414
450
|
expect(_testWrapper.screen.getByRole('checkbox')).not.toBeChecked();
|
|
415
451
|
case 20:
|
|
416
452
|
case "end":
|
|
417
|
-
return
|
|
453
|
+
return _context0.stop();
|
|
418
454
|
}
|
|
419
|
-
},
|
|
455
|
+
}, _callee0);
|
|
420
456
|
})));
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
|
5
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
|
6
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
|
7
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
8
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
|
9
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
|
10
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
|
11
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
12
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
13
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
14
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
15
|
+
value: true
|
|
16
|
+
});
|
|
17
|
+
exports["default"] = void 0;
|
|
18
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
19
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
20
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
21
|
+
var _reactAria = require("react-aria");
|
|
22
|
+
var _reactStately = require("react-stately");
|
|
23
|
+
var _ = require("../..");
|
|
24
|
+
var _CheckboxFieldGroupContext = require("../../context/CheckboxFieldGroupContext");
|
|
25
|
+
var _hooks = require("../../hooks");
|
|
26
|
+
var _pendoID = require("../../utils/devUtils/constants/pendoID");
|
|
27
|
+
var _react2 = require("@emotion/react");
|
|
28
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
29
|
+
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; }
|
|
30
|
+
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) { (0, _defineProperty2["default"])(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; }
|
|
31
|
+
var displayName = 'CheckboxFieldGroup';
|
|
32
|
+
var CheckboxFieldGroup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
33
|
+
var children = props.children,
|
|
34
|
+
className = props.className,
|
|
35
|
+
errorMessage = props.errorMessage,
|
|
36
|
+
helperText = props.helperText,
|
|
37
|
+
hintText = props.hintText,
|
|
38
|
+
helpHintProps = props.helpHintProps,
|
|
39
|
+
isDisabled = props.isDisabled,
|
|
40
|
+
isRequired = props.isRequired,
|
|
41
|
+
label = props.label,
|
|
42
|
+
_props$orientation = props.orientation,
|
|
43
|
+
orientation = _props$orientation === void 0 ? 'vertical' : _props$orientation,
|
|
44
|
+
status = props.status;
|
|
45
|
+
var state = (0, _reactStately.useCheckboxGroupState)(props);
|
|
46
|
+
var checkboxGroupProps = _objectSpread(_objectSpread({}, props), {}, {
|
|
47
|
+
description: helperText
|
|
48
|
+
});
|
|
49
|
+
var _useCheckboxGroup = (0, _reactAria.useCheckboxGroup)(checkboxGroupProps, state),
|
|
50
|
+
groupProps = _useCheckboxGroup.groupProps,
|
|
51
|
+
labelProps = _useCheckboxGroup.labelProps,
|
|
52
|
+
descriptionProps = _useCheckboxGroup.descriptionProps,
|
|
53
|
+
errorMessageProps = _useCheckboxGroup.errorMessageProps,
|
|
54
|
+
isInvalid = _useCheckboxGroup.isInvalid;
|
|
55
|
+
var _useStatusClasses = (0, _hooks.useStatusClasses)(className, {
|
|
56
|
+
'is-horizontal': orientation === 'horizontal',
|
|
57
|
+
'is-invalid': isInvalid
|
|
58
|
+
}),
|
|
59
|
+
classNames = _useStatusClasses.classNames;
|
|
60
|
+
(0, _hooks.usePropWarning)(props, 'disabled', 'isDisabled');
|
|
61
|
+
var renderedErrorMessage = typeof errorMessage === 'function' ? errorMessage({
|
|
62
|
+
isInvalid: isInvalid,
|
|
63
|
+
validationErrors: state.displayValidation.validationErrors,
|
|
64
|
+
validationDetails: state.displayValidation.validationDetails
|
|
65
|
+
}) : errorMessage;
|
|
66
|
+
return (0, _react2.jsx)(_.Box, (0, _extends2["default"])({
|
|
67
|
+
ref: ref,
|
|
68
|
+
className: classNames,
|
|
69
|
+
variant: "forms.checkboxFieldGroup.container"
|
|
70
|
+
}, (0, _pendoID.getPendoID)(displayName), groupProps), label && (0, _react2.jsx)(_.Label, (0, _extends2["default"])({
|
|
71
|
+
as: "span",
|
|
72
|
+
variant: "forms.label.checkboxFieldGroup",
|
|
73
|
+
isDisabled: isDisabled,
|
|
74
|
+
isRequired: isRequired,
|
|
75
|
+
hintText: hintText,
|
|
76
|
+
helpHintProps: helpHintProps
|
|
77
|
+
}, labelProps), label), (0, _react2.jsx)(_.Box, {
|
|
78
|
+
variant: "forms.checkboxFieldGroup.items",
|
|
79
|
+
className: orientation === 'horizontal' ? 'is-horizontal' : undefined
|
|
80
|
+
}, (0, _react2.jsx)(_CheckboxFieldGroupContext.CheckboxFieldGroupContext.Provider, {
|
|
81
|
+
value: state
|
|
82
|
+
}, children)), helperText && (0, _react2.jsx)(_.FieldHelperText, (0, _extends2["default"])({
|
|
83
|
+
status: status
|
|
84
|
+
}, descriptionProps), helperText), renderedErrorMessage && (0, _react2.jsx)(_.FieldHelperText, (0, _extends2["default"])({
|
|
85
|
+
status: "error"
|
|
86
|
+
}, errorMessageProps), renderedErrorMessage));
|
|
87
|
+
});
|
|
88
|
+
CheckboxFieldGroup.displayName = displayName;
|
|
89
|
+
var _default = exports["default"] = CheckboxFieldGroup;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Meta } from '@storybook/addon-docs/blocks';
|
|
2
|
+
import * as CheckboxFieldGroupStories from './CheckboxFieldGroup.stories';
|
|
3
|
+
import AccessibilityTable from '../../utils/docUtils/AccessibilityTable';
|
|
4
|
+
import { KeyboardRows } from '../../utils/docUtils/accessibilityTableConstants';
|
|
5
|
+
|
|
6
|
+
<Meta of={CheckboxFieldGroupStories} isTemplate />
|
|
7
|
+
|
|
8
|
+
# CheckboxFieldGroup
|
|
9
|
+
|
|
10
|
+
`CheckboxFieldGroup` combines a labelled React Aria checkbox group with independently selectable `CheckboxFieldGroupItem` children. Use it when users can choose more than one value from a related set of options.
|
|
11
|
+
|
|
12
|
+
The group owns the selected string array. Use `defaultValue` for an uncontrolled group, or `value` with `onChange` for a controlled group.
|
|
13
|
+
|
|
14
|
+
```tsx
|
|
15
|
+
import { CheckboxFieldGroup, CheckboxFieldGroupItem } from '@pingux/astro';
|
|
16
|
+
|
|
17
|
+
<CheckboxFieldGroup label="Notification channels" defaultValue={['email']}>
|
|
18
|
+
<CheckboxFieldGroupItem value="email" label="Email" />
|
|
19
|
+
<CheckboxFieldGroupItem value="sms" label="SMS" />
|
|
20
|
+
<CheckboxFieldGroupItem value="push" label="Push notification" />
|
|
21
|
+
</CheckboxFieldGroup>;
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Required child API
|
|
25
|
+
|
|
26
|
+
Every option must be a `CheckboxFieldGroupItem` with a unique string `value` and an accessible `label`. Do not use raw `Checkbox` children: they do not consume the group's React Stately selection context.
|
|
27
|
+
|
|
28
|
+
### `CheckboxFieldGroup`
|
|
29
|
+
|
|
30
|
+
The group API includes:
|
|
31
|
+
|
|
32
|
+
- `label`, `helperText`, and `errorMessage` for field content and validation feedback.
|
|
33
|
+
- `value` / `defaultValue` and `onChange` for controlled or uncontrolled selected string arrays.
|
|
34
|
+
- `orientation` for vertical (default) or horizontal layout.
|
|
35
|
+
- `name` and `form` for native input metadata.
|
|
36
|
+
- `isRequired`, `isDisabled`, `isReadOnly`, and `isInvalid` for validation and interaction state.
|
|
37
|
+
|
|
38
|
+
### `CheckboxFieldGroupItem`
|
|
39
|
+
|
|
40
|
+
Each item accepts:
|
|
41
|
+
|
|
42
|
+
- `value` and `label` for group selection and accessible naming.
|
|
43
|
+
- `helperText` for item-specific description.
|
|
44
|
+
- `isDisabled` and `isReadOnly`, combined with the group state.
|
|
45
|
+
- `isIndeterminate` for a mixed visual presentation; the item value still participates in group selection when toggled.
|
|
46
|
+
- `controlProps` / `checkBoxProps` for the input or checkbox visual primitive.
|
|
47
|
+
- `hasAutoFocus` to focus the item on initial render.
|
|
48
|
+
|
|
49
|
+
## Accessibility and keyboard behavior
|
|
50
|
+
|
|
51
|
+
The group uses React Aria's [`useCheckboxGroup`](https://react-spectrum.adobe.com/react-aria/useCheckboxGroup.html) and each child uses [`useCheckboxGroupItem`](https://react-spectrum.adobe.com/react-aria/useCheckboxGroupItem). The wrapper has `role="group"`; its visible label supplies the accessible group name, and helper/error content is connected through generated description and error IDs. Each item remains an independently named checkbox, with group validation and descriptions propagated to its native input.
|
|
52
|
+
|
|
53
|
+
<AccessibilityTable keyboardRows={[
|
|
54
|
+
KeyboardRows.tabField,
|
|
55
|
+
KeyboardRows.shiftTabFocusPrevious,
|
|
56
|
+
{ key: 'Space', description: 'Toggles the focused checkbox item.' },
|
|
57
|
+
]} screenReaderRows={[
|
|
58
|
+
'The group uses **`role="group"`** and **`aria-labelledby`** to expose its visible label.',
|
|
59
|
+
'Each item is a checkbox with its own accessible label and checked state.',
|
|
60
|
+
'Helper and error content is referenced through **`aria-describedby`** and React Aria validation metadata.',
|
|
61
|
+
]} />
|
|
62
|
+
|
|
63
|
+
Tab and Shift+Tab move between checkbox items in normal page order. Space toggles the focused item. Disabled items cannot be focused or changed. Read-only items remain focusable so their selection can be inspected, but Space and pointer interaction do not change selection.
|
|
64
|
+
|
|
65
|
+
## Indeterminate presentation
|
|
66
|
+
|
|
67
|
+
`isIndeterminate` is a mixed visual/native presentation; it does not create a second selection model. The item's ordinary `value` still participates in the group's selected string array and `onChange` when the item is toggled, so callers should clear or update `isIndeterminate` as appropriate after handling the partial state.
|
|
68
|
+
|
|
69
|
+
The component inherits the active Astro, Onyx, or Onyx Dark theme's checkbox and field tokens.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
|
|
4
|
+
var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols");
|
|
5
|
+
var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
7
|
+
var _forEachInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/for-each");
|
|
8
|
+
var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors");
|
|
9
|
+
var _Object$defineProperties = require("@babel/runtime-corejs3/core-js-stable/object/define-properties");
|
|
10
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
11
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
12
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
13
|
+
value: true
|
|
14
|
+
});
|
|
15
|
+
exports["default"] = exports.Required = exports.ReadOnly = exports.Horizontal = exports.ErrorInvalid = exports.Disabled = exports.Default = exports.Controlled = void 0;
|
|
16
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
17
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
18
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
19
|
+
var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
|
|
20
|
+
var _react = require("react");
|
|
21
|
+
var _storybookDocsLayout = _interopRequireDefault(require("../../../.storybook/storybookDocsLayout"));
|
|
22
|
+
var _index = require("../../index");
|
|
23
|
+
var _CheckboxFieldGroup = _interopRequireDefault(require("./CheckboxFieldGroup.mdx"));
|
|
24
|
+
var _checkboxFieldGroupAttributes = require("./checkboxFieldGroupAttributes");
|
|
25
|
+
var _react2 = require("@emotion/react");
|
|
26
|
+
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; }
|
|
27
|
+
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) { (0, _defineProperty2["default"])(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; }
|
|
28
|
+
var items = [{
|
|
29
|
+
value: 'email',
|
|
30
|
+
label: 'Email'
|
|
31
|
+
}, {
|
|
32
|
+
value: 'sms',
|
|
33
|
+
label: 'SMS'
|
|
34
|
+
}, {
|
|
35
|
+
value: 'push',
|
|
36
|
+
label: 'Push notification'
|
|
37
|
+
}];
|
|
38
|
+
var GroupItems = function GroupItems(_ref) {
|
|
39
|
+
var _ref$isDisabled = _ref.isDisabled,
|
|
40
|
+
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
|
|
41
|
+
return (0, _react2.jsx)(React.Fragment, null, (0, _map["default"])(items).call(items, function (item) {
|
|
42
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroupItem, {
|
|
43
|
+
key: item.value,
|
|
44
|
+
value: item.value,
|
|
45
|
+
label: item.label,
|
|
46
|
+
isDisabled: isDisabled
|
|
47
|
+
});
|
|
48
|
+
}));
|
|
49
|
+
};
|
|
50
|
+
var _default = exports["default"] = {
|
|
51
|
+
title: 'Form/CheckboxFieldGroup',
|
|
52
|
+
component: _index.CheckboxFieldGroup,
|
|
53
|
+
parameters: {
|
|
54
|
+
docs: {
|
|
55
|
+
page: function page() {
|
|
56
|
+
return (0, _react2.jsx)(React.Fragment, null, (0, _react2.jsx)(_CheckboxFieldGroup["default"], null), (0, _react2.jsx)(_storybookDocsLayout["default"], null));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
argTypes: _objectSpread(_objectSpread({}, _checkboxFieldGroupAttributes.checkboxFieldGroupArgTypes), _checkboxFieldGroupAttributes.checkboxFieldGroupItemArgTypes),
|
|
61
|
+
args: {
|
|
62
|
+
label: 'Notification channels',
|
|
63
|
+
defaultValue: ['email']
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
var Default = exports.Default = function Default(args) {
|
|
67
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, args, (0, _react2.jsx)(GroupItems, null));
|
|
68
|
+
};
|
|
69
|
+
var Controlled = exports.Controlled = function Controlled() {
|
|
70
|
+
var _useState = (0, _react.useState)(['email']),
|
|
71
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
72
|
+
value = _useState2[0],
|
|
73
|
+
setValue = _useState2[1];
|
|
74
|
+
return (0, _react2.jsx)(_index.Box, null, (0, _react2.jsx)(_index.CheckboxFieldGroup, {
|
|
75
|
+
label: "Notification channels",
|
|
76
|
+
value: value,
|
|
77
|
+
onChange: setValue
|
|
78
|
+
}, (0, _react2.jsx)(GroupItems, null)), (0, _react2.jsx)(_index.Text, {
|
|
79
|
+
mt: "sm"
|
|
80
|
+
}, "Selected values:", ' ', value.join(', ') || 'none'));
|
|
81
|
+
};
|
|
82
|
+
var Disabled = exports.Disabled = function Disabled(args) {
|
|
83
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, (0, _extends2["default"])({}, args, {
|
|
84
|
+
label: "Notification channels",
|
|
85
|
+
isDisabled: true
|
|
86
|
+
}), (0, _react2.jsx)(GroupItems, {
|
|
87
|
+
isDisabled: true
|
|
88
|
+
}));
|
|
89
|
+
};
|
|
90
|
+
var Required = exports.Required = function Required(args) {
|
|
91
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, (0, _extends2["default"])({}, args, {
|
|
92
|
+
label: "Notification channels",
|
|
93
|
+
isRequired: true,
|
|
94
|
+
defaultValue: []
|
|
95
|
+
}), (0, _react2.jsx)(GroupItems, null));
|
|
96
|
+
};
|
|
97
|
+
var ErrorInvalid = exports.ErrorInvalid = function ErrorInvalid(args) {
|
|
98
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, (0, _extends2["default"])({}, args, {
|
|
99
|
+
label: "Notification channels",
|
|
100
|
+
isInvalid: true,
|
|
101
|
+
status: "error",
|
|
102
|
+
errorMessage: "Choose at least one notification channel.",
|
|
103
|
+
helperText: "Select every channel where you want to receive updates."
|
|
104
|
+
}), (0, _react2.jsx)(GroupItems, null));
|
|
105
|
+
};
|
|
106
|
+
var Horizontal = exports.Horizontal = function Horizontal(args) {
|
|
107
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, (0, _extends2["default"])({}, args, {
|
|
108
|
+
label: "Notification channels",
|
|
109
|
+
orientation: "horizontal"
|
|
110
|
+
}), (0, _react2.jsx)(GroupItems, null));
|
|
111
|
+
};
|
|
112
|
+
var ReadOnly = exports.ReadOnly = function ReadOnly(args) {
|
|
113
|
+
return (0, _react2.jsx)(_index.CheckboxFieldGroup, (0, _extends2["default"])({}, args, {
|
|
114
|
+
label: "Notification channels",
|
|
115
|
+
isReadOnly: true,
|
|
116
|
+
defaultValue: ['email', 'push']
|
|
117
|
+
}), (0, _react2.jsx)(GroupItems, null));
|
|
118
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ThemeUICSSObject } from 'theme-ui';
|
|
2
|
+
type CheckboxFieldGroupStyles = {
|
|
3
|
+
container: ThemeUICSSObject;
|
|
4
|
+
items: ThemeUICSSObject;
|
|
5
|
+
item: ThemeUICSSObject;
|
|
6
|
+
};
|
|
7
|
+
export declare const checkboxFieldGroup: CheckboxFieldGroupStyles;
|
|
8
|
+
export default checkboxFieldGroup;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property");
|
|
4
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = exports.checkboxFieldGroup = void 0;
|
|
8
|
+
var checkboxFieldGroup = exports.checkboxFieldGroup = {
|
|
9
|
+
container: {
|
|
10
|
+
display: 'flex',
|
|
11
|
+
flexDirection: 'column',
|
|
12
|
+
width: '100%'
|
|
13
|
+
},
|
|
14
|
+
items: {
|
|
15
|
+
display: 'flex',
|
|
16
|
+
flexDirection: 'column',
|
|
17
|
+
gap: 'xs',
|
|
18
|
+
width: '100%',
|
|
19
|
+
'&.is-horizontal': {
|
|
20
|
+
flexDirection: 'row',
|
|
21
|
+
flexWrap: 'wrap',
|
|
22
|
+
columnGap: 'lg',
|
|
23
|
+
rowGap: 'xs'
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
item: {
|
|
27
|
+
minWidth: 0,
|
|
28
|
+
flex: '0 1 auto',
|
|
29
|
+
'&.is-horizontal': {
|
|
30
|
+
flex: '0 1 auto'
|
|
31
|
+
},
|
|
32
|
+
'&.is-disabled': {
|
|
33
|
+
opacity: 0.65
|
|
34
|
+
},
|
|
35
|
+
'&.is-read-only': {
|
|
36
|
+
opacity: 0.65
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
var _default = exports["default"] = checkboxFieldGroup;
|