@sproutsocial/racine 12.20.0 → 12.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -0
- package/README.md +46 -44
- package/__flow__/Avatar/index.js +26 -26
- package/__flow__/Avatar/index.stories.js +8 -8
- package/__flow__/Avatar/index.test.js +13 -13
- package/__flow__/Badge/constants.js +14 -14
- package/__flow__/Badge/index.js +18 -18
- package/__flow__/Badge/index.stories.js +8 -8
- package/__flow__/Badge/index.test.js +43 -43
- package/__flow__/Badge/styles.js +13 -9
- package/__flow__/Banner/index.js +21 -21
- package/__flow__/Banner/index.stories.js +56 -68
- package/__flow__/Banner/index.test.js +32 -34
- package/__flow__/Banner/styles.js +4 -4
- package/__flow__/Box/index.js +4 -4
- package/__flow__/Box/index.stories.js +58 -51
- package/__flow__/Box/index.test.js +7 -7
- package/__flow__/Box/styles.js +6 -6
- package/__flow__/Breadcrumb/index.js +9 -13
- package/__flow__/Breadcrumb/index.stories.js +14 -14
- package/__flow__/Breadcrumb/index.test.js +20 -20
- package/__flow__/Breadcrumb/styles.js +5 -5
- package/__flow__/Button/index.js +23 -23
- package/__flow__/Button/index.stories.js +34 -34
- package/__flow__/Button/styles.js +11 -11
- package/__flow__/Card/index.js +7 -7
- package/__flow__/Card/index.stories.js +14 -14
- package/__flow__/Card/styles.js +7 -7
- package/__flow__/CharacterCounter/index.js +7 -7
- package/__flow__/CharacterCounter/index.stories.js +25 -26
- package/__flow__/CharacterCounter/index.test.js +11 -11
- package/__flow__/CharacterCounter/styles.js +3 -3
- package/__flow__/ChartLegend/index.js +7 -7
- package/__flow__/ChartLegend/index.stories.js +22 -22
- package/__flow__/ChartLegend/index.test.js +27 -27
- package/__flow__/ChartLegend/styles.js +7 -7
- package/__flow__/Checkbox/index.js +10 -10
- package/__flow__/Checkbox/index.stories.js +24 -24
- package/__flow__/Checkbox/index.test.js +25 -25
- package/__flow__/Checkbox/styles.js +27 -28
- package/__flow__/Collapsible/index.js +15 -15
- package/__flow__/Collapsible/index.stories.js +13 -13
- package/__flow__/Collapsible/index.test.js +27 -27
- package/__flow__/Collapsible/styles.js +5 -5
- package/__flow__/DatePicker/DateRangePicker.js +5 -8
- package/__flow__/DatePicker/DateRangePicker.stories.js +19 -19
- package/__flow__/DatePicker/DateRangePicker.test.js +21 -21
- package/__flow__/DatePicker/SingleDatePicker.js +6 -9
- package/__flow__/DatePicker/SingleDatePicker.stories.js +10 -10
- package/__flow__/DatePicker/SingleDatePicker.test.js +21 -23
- package/__flow__/DatePicker/StatefulDateRangePicker.js +6 -6
- package/__flow__/DatePicker/StatefulSingleDatePicker.js +3 -3
- package/__flow__/DatePicker/common.js +13 -13
- package/__flow__/DatePicker/index.js +3 -3
- package/__flow__/DatePicker/styles.js +42 -42
- package/__flow__/Drawer/SlideTransition.js +10 -10
- package/__flow__/Drawer/index.js +29 -29
- package/__flow__/Drawer/index.stories.js +58 -141
- package/__flow__/Drawer/index.test.js +28 -28
- package/__flow__/Drawer/styles.js +4 -4
- package/__flow__/EmptyState/index.js +5 -5
- package/__flow__/EmptyState/index.stories.js +10 -10
- package/__flow__/EmptyState/index.test.js +27 -27
- package/__flow__/EnumIllustrationNames.js +1 -1
- package/__flow__/Fieldset/index.js +14 -14
- package/__flow__/Fieldset/index.stories.js +19 -20
- package/__flow__/Fieldset/index.test.js +14 -14
- package/__flow__/Fieldset/styles.js +5 -5
- package/__flow__/FormField/index.js +14 -14
- package/__flow__/FormField/index.stories.js +31 -21
- package/__flow__/FormField/index.test.js +19 -19
- package/__flow__/Icon/deprecatedIcons.js +36 -36
- package/__flow__/Icon/index.js +17 -17
- package/__flow__/Icon/index.stories.js +30 -30
- package/__flow__/Icon/index.test.js +15 -15
- package/__flow__/Icon/styles.js +12 -12
- package/__flow__/IllustrationViewBoxes.js +1 -1
- package/__flow__/Image/index.js +6 -7
- package/__flow__/Image/index.stories.js +5 -5
- package/__flow__/Image/index.test.js +24 -24
- package/__flow__/Image/styles.js +6 -5
- package/__flow__/Indicator/index.js +7 -7
- package/__flow__/Indicator/index.stories.js +8 -14
- package/__flow__/Indicator/index.test.js +6 -6
- package/__flow__/Indicator/styles.js +6 -6
- package/__flow__/Input/index.js +37 -37
- package/__flow__/Input/index.stories.js +96 -189
- package/__flow__/Input/index.test.js +117 -117
- package/__flow__/Input/styles.js +13 -13
- package/__flow__/KeyboardKey/index.js +5 -5
- package/__flow__/KeyboardKey/index.stories.js +9 -12
- package/__flow__/KeyboardKey/index.test.js +7 -7
- package/__flow__/KeyboardKey/styles.js +4 -4
- package/__flow__/Label/index.js +6 -6
- package/__flow__/Label/index.stories.js +5 -7
- package/__flow__/Label/index.test.js +8 -8
- package/__flow__/Link/constants.js +4 -4
- package/__flow__/Link/index.js +11 -11
- package/__flow__/Link/index.stories.js +61 -102
- package/__flow__/Link/index.test.js +40 -40
- package/__flow__/Link/styles.js +6 -6
- package/__flow__/Listbox/index.js +16 -16
- package/__flow__/Listbox/index.stories.js +35 -35
- package/__flow__/Listbox/index.test.js +63 -65
- package/__flow__/Loader/index.js +12 -12
- package/__flow__/Loader/index.stories.js +10 -10
- package/__flow__/Loader/index.test.js +17 -17
- package/__flow__/Loader/styles.js +9 -13
- package/__flow__/LoaderButton/index.js +25 -25
- package/__flow__/LoaderButton/index.stories.js +7 -7
- package/__flow__/LoaderButton/index.test.js +15 -15
- package/__flow__/Menu/constants.js +8 -8
- package/__flow__/Menu/descendants.js +89 -80
- package/__flow__/Menu/hooks.js +22 -22
- package/__flow__/Menu/index.flow.js +13 -13
- package/__flow__/Menu/index.js +56 -60
- package/__flow__/Menu/index.stories.js +19 -19
- package/__flow__/Menu/index.test.js +22 -22
- package/__flow__/Menu/names.js +4945 -4945
- package/__flow__/Menu/styles.js +5 -5
- package/__flow__/Message/index.js +33 -33
- package/__flow__/Message/index.stories.js +18 -13
- package/__flow__/Message/index.test.js +6 -6
- package/__flow__/Message/styles.js +15 -15
- package/__flow__/Modal/index.js +19 -19
- package/__flow__/Modal/index.stories.js +43 -43
- package/__flow__/Modal/index.test.js +29 -29
- package/__flow__/Modal/styles.js +27 -32
- package/__flow__/Numeral/index.js +22 -22
- package/__flow__/Numeral/index.stories.js +74 -74
- package/__flow__/Numeral/styles.js +3 -3
- package/__flow__/Numeral/tests/A11y.test.js +7 -7
- package/__flow__/Numeral/tests/abbreviate.test.js +40 -40
- package/__flow__/Numeral/tests/currency.test.js +24 -24
- package/__flow__/Numeral/tests/defaults.test.js +20 -20
- package/__flow__/Numeral/tests/invalid.test.js +9 -9
- package/__flow__/Numeral/tests/locale.test.js +38 -38
- package/__flow__/Numeral/tests/precision.test.js +76 -76
- package/__flow__/Numeral/tests/testNumeral.js +11 -11
- package/__flow__/Numeral/tests/zero.test.js +8 -8
- package/__flow__/OverflowList/index.flow.js +2 -2
- package/__flow__/OverflowList/index.js +12 -12
- package/__flow__/OverflowList/index.stories.js +10 -10
- package/__flow__/OverflowList/index.test.js +25 -25
- package/__flow__/OverflowList/styles.js +5 -5
- package/__flow__/PartnerLogo/TypePartnerNames.js +37 -37
- package/__flow__/PartnerLogo/index.js +20 -20
- package/__flow__/PartnerLogo/index.stories.js +52 -52
- package/__flow__/PartnerLogo/styles.js +12 -12
- package/__flow__/Popout/index.js +66 -67
- package/__flow__/Popout/index.stories.js +101 -82
- package/__flow__/Popout/index.test.js +43 -43
- package/__flow__/Popout/styles.js +4 -5
- package/__flow__/Portal/index.js +9 -9
- package/__flow__/Portal/index.stories.js +12 -12
- package/__flow__/Radio/index.js +4 -4
- package/__flow__/Radio/index.stories.js +11 -11
- package/__flow__/Radio/index.test.js +12 -12
- package/__flow__/Radio/styles.js +15 -16
- package/__flow__/SegmentedControl/index.js +7 -7
- package/__flow__/SegmentedControl/index.stories.js +7 -7
- package/__flow__/SegmentedControl/index.test.js +29 -29
- package/__flow__/SegmentedControl/styles.js +10 -9
- package/__flow__/Select/index.js +10 -10
- package/__flow__/Select/index.stories.js +33 -69
- package/__flow__/Select/index.test.js +14 -14
- package/__flow__/Select/styles.js +16 -16
- package/__flow__/Skeleton/index.js +4 -4
- package/__flow__/Skeleton/index.stories.js +5 -5
- package/__flow__/SpotIllustration/illustrationNames.js +118 -117
- package/__flow__/SpotIllustration/index.js +15 -11
- package/__flow__/SpotIllustration/index.stories.js +18 -18
- package/__flow__/SpotIllustration/spotIllustrations/molecule.svg +14 -0
- package/__flow__/Stack/index.js +43 -33
- package/__flow__/Stack/index.stories.js +41 -91
- package/__flow__/Stack/index.test.js +16 -7
- package/__flow__/Switch/index.js +8 -8
- package/__flow__/Switch/index.stories.js +5 -5
- package/__flow__/Switch/index.test.js +25 -29
- package/__flow__/Switch/styles.js +13 -9
- package/__flow__/Table/index.js +17 -17
- package/__flow__/Table/index.stories.js +99 -99
- package/__flow__/Table/index.test.js +32 -32
- package/__flow__/Table/styles.js +4 -4
- package/__flow__/TableCell/index.js +8 -7
- package/__flow__/TableCell/index.stories.js +20 -23
- package/__flow__/TableCell/index.test.js +11 -11
- package/__flow__/TableCell/styles.js +4 -5
- package/__flow__/TableHeaderCell/index.js +14 -14
- package/__flow__/TableHeaderCell/index.stories.js +35 -30
- package/__flow__/TableHeaderCell/index.test.js +11 -11
- package/__flow__/TableHeaderCell/styles.js +4 -4
- package/__flow__/TableRowAccordion/index.js +8 -8
- package/__flow__/TableRowAccordion/index.stories.js +36 -36
- package/__flow__/TableRowAccordion/index.test.js +28 -30
- package/__flow__/TableRowAccordion/styles.js +11 -7
- package/__flow__/Tabs/index.js +11 -11
- package/__flow__/Tabs/index.stories.js +28 -54
- package/__flow__/Tabs/index.test.js +54 -54
- package/__flow__/Tabs/styles.js +6 -7
- package/__flow__/Text/index.js +14 -14
- package/__flow__/Text/index.stories.js +84 -86
- package/__flow__/Text/index.test.js +29 -33
- package/__flow__/Text/styles.js +4 -4
- package/__flow__/Textarea/index.js +5 -5
- package/__flow__/Textarea/index.stories.js +54 -93
- package/__flow__/Textarea/index.test.js +30 -30
- package/__flow__/Textarea/styles.js +6 -6
- package/__flow__/ThemeProvider/index.js +4 -4
- package/__flow__/Toast/index.js +23 -23
- package/__flow__/Toast/index.stories.js +21 -21
- package/__flow__/Toast/styles.js +6 -6
- package/__flow__/ToggleHint/index.js +8 -8
- package/__flow__/ToggleHint/index.test.js +8 -8
- package/__flow__/ToggleHint/styles.js +8 -8
- package/__flow__/Token/index.js +10 -10
- package/__flow__/Token/index.stories.js +49 -54
- package/__flow__/Token/index.test.js +28 -28
- package/__flow__/Token/styles.js +11 -11
- package/__flow__/TokenInput/index.flow.js +1 -1
- package/__flow__/TokenInput/index.js +39 -39
- package/__flow__/TokenInput/index.stories.js +121 -128
- package/__flow__/TokenInput/styles.js +5 -5
- package/__flow__/TokenInput/tests/default/clicking.test.js +13 -13
- package/__flow__/TokenInput/tests/default/deleting.test.js +39 -39
- package/__flow__/TokenInput/tests/default/focusing.test.js +18 -18
- package/__flow__/TokenInput/tests/default/inputting.test.js +23 -23
- package/__flow__/TokenInput/tests/default/pasting.test.js +52 -52
- package/__flow__/TokenInput/tests/default/rendering.test.js +54 -54
- package/__flow__/TokenInput/util.js +4 -4
- package/__flow__/Tooltip/index.js +21 -21
- package/__flow__/Tooltip/index.stories.js +18 -18
- package/__flow__/Tooltip/index.test.js +54 -54
- package/__flow__/Tooltip/styles.js +4 -5
- package/__flow__/VisuallyHidden/index.js +3 -3
- package/__flow__/building-stories.stories.mdx +121 -0
- package/__flow__/dataviz/dataviz.stories.js +4 -4
- package/__flow__/dataviz/index.js +3 -3
- package/__flow__/index.js +72 -72
- package/__flow__/overview.stories.js +60 -0
- package/__flow__/setupTests.js +5 -5
- package/__flow__/systemProps/background.js +3 -3
- package/__flow__/systemProps/border.js +3 -3
- package/__flow__/systemProps/color.js +3 -3
- package/__flow__/systemProps/custom.js +3 -3
- package/__flow__/systemProps/flexbox.js +3 -3
- package/__flow__/systemProps/grid.js +3 -3
- package/__flow__/systemProps/index.js +14 -14
- package/__flow__/systemProps/layout.js +3 -3
- package/__flow__/systemProps/position.js +3 -3
- package/__flow__/systemProps/shadow.js +3 -3
- package/__flow__/systemProps/space.js +3 -7
- package/__flow__/systemProps/systemProps.js +14 -14
- package/__flow__/systemProps/tests/background.test.js +17 -17
- package/__flow__/systemProps/tests/border.test.js +61 -61
- package/__flow__/systemProps/tests/color.test.js +15 -15
- package/__flow__/systemProps/tests/custom.test.js +12 -12
- package/__flow__/systemProps/tests/flexbox.test.js +33 -33
- package/__flow__/systemProps/tests/grid.test.js +31 -31
- package/__flow__/systemProps/tests/layout.test.js +29 -29
- package/__flow__/systemProps/tests/position.test.js +19 -19
- package/__flow__/systemProps/tests/shadow.test.js +11 -11
- package/__flow__/systemProps/tests/space.test.js +11 -11
- package/__flow__/systemProps/tests/types.flow.js +18 -18
- package/__flow__/systemProps/tests/typography.test.js +21 -21
- package/__flow__/systemProps/tests/variant.test.js +9 -9
- package/__flow__/systemProps/types.flow.js +2 -2
- package/__flow__/systemProps/typography.js +4 -4
- package/__flow__/systemProps/variant.js +5 -5
- package/__flow__/themes/dark/dataviz-palette.js +21 -21
- package/__flow__/themes/dark/decorative-palettes.js +1 -1
- package/__flow__/themes/dark/theme.js +16 -16
- package/__flow__/themes/extendedThemes/README.md +1 -1
- package/__flow__/themes/extendedThemes/sproutTheme/dark/theme.js +4 -4
- package/__flow__/themes/extendedThemes/sproutTheme/index.js +2 -2
- package/__flow__/themes/extendedThemes/sproutTheme/light/theme.js +4 -4
- package/__flow__/themes/light/dataviz-palette.js +21 -21
- package/__flow__/themes/light/decorative-palettes.js +1 -1
- package/__flow__/themes/light/literal-colors.js +133 -133
- package/__flow__/themes/light/theme.js +51 -51
- package/__flow__/types/system-props.flow.js +5 -5
- package/__flow__/types/theme.colors.flow.js +2 -2
- package/__flow__/types/theme.flow.js +5 -5
- package/__flow__/utils/a11yTest.js +1 -1
- package/__flow__/utils/chartColors.js +1 -1
- package/__flow__/utils/constants.js +1 -1
- package/__flow__/utils/dataQaLabelQueries.js +2 -2
- package/__flow__/utils/hooks.js +17 -17
- package/__flow__/utils/index.js +4 -4
- package/__flow__/utils/innerText.js +9 -9
- package/__flow__/utils/mixins.js +6 -6
- package/__flow__/utils/react-testing-library.js +6 -6
- package/__flow__/utils/responsiveProps/index.js +3 -3
- package/__flow__/utils/responsiveProps/index.test.js +8 -8
- package/__flow__/utils/system-props.js +3 -3
- package/__flow__/utils/useInteractiveColor.js +5 -5
- package/__flow__/writing-good-stories.stories.mdx +3 -0
- package/bin/racine-codemod.js +12 -12
- package/codemods/__tests__/migrate-2.x-to-3.x.test.js +2 -2
- package/codemods/migrate-2.x-to-3.x.js +29 -30
- package/commonjs/Avatar/index.js +33 -53
- package/commonjs/Badge/constants.js +18 -15
- package/commonjs/Badge/index.js +14 -28
- package/commonjs/Badge/styles.js +3 -9
- package/commonjs/Banner/index.js +16 -37
- package/commonjs/Banner/styles.js +0 -5
- package/commonjs/Box/index.js +2 -9
- package/commonjs/Box/styles.js +0 -4
- package/commonjs/Breadcrumb/index.js +13 -29
- package/commonjs/Breadcrumb/styles.js +1 -4
- package/commonjs/Button/index.js +29 -43
- package/commonjs/Button/styles.js +6 -15
- package/commonjs/Card/index.js +16 -26
- package/commonjs/Card/styles.js +1 -5
- package/commonjs/CharacterCounter/index.js +6 -23
- package/commonjs/CharacterCounter/styles.js +0 -5
- package/commonjs/ChartLegend/index.js +5 -20
- package/commonjs/ChartLegend/styles.js +2 -11
- package/commonjs/Checkbox/index.js +30 -53
- package/commonjs/Checkbox/styles.js +14 -35
- package/commonjs/Collapsible/index.js +31 -54
- package/commonjs/Collapsible/styles.js +3 -6
- package/commonjs/DatePicker/DateRangePicker.js +4 -17
- package/commonjs/DatePicker/SingleDatePicker.js +3 -17
- package/commonjs/DatePicker/StatefulDateRangePicker.js +16 -31
- package/commonjs/DatePicker/StatefulSingleDatePicker.js +7 -20
- package/commonjs/DatePicker/common.js +8 -22
- package/commonjs/DatePicker/index.js +0 -5
- package/commonjs/DatePicker/styles.js +8 -25
- package/commonjs/Drawer/SlideTransition.js +8 -18
- package/commonjs/Drawer/index.js +51 -90
- package/commonjs/Drawer/styles.js +0 -8
- package/commonjs/EmptyState/index.js +8 -20
- package/commonjs/Fieldset/index.js +15 -32
- package/commonjs/Fieldset/styles.js +2 -7
- package/commonjs/FormField/index.js +19 -36
- package/commonjs/Icon/deprecatedIcons.js +36 -36
- package/commonjs/Icon/index.js +19 -37
- package/commonjs/Icon/styles.js +7 -16
- package/commonjs/IllustrationViewBoxes.js +1 -0
- package/commonjs/Image/index.js +13 -41
- package/commonjs/Image/styles.js +1 -7
- package/commonjs/Indicator/index.js +8 -26
- package/commonjs/Indicator/styles.js +1 -7
- package/commonjs/Input/index.js +80 -119
- package/commonjs/Input/styles.js +9 -19
- package/commonjs/KeyboardKey/index.js +3 -20
- package/commonjs/KeyboardKey/styles.js +0 -4
- package/commonjs/Label/index.js +7 -27
- package/commonjs/Link/constants.js +3 -4
- package/commonjs/Link/index.js +16 -28
- package/commonjs/Link/styles.js +1 -8
- package/commonjs/Listbox/index.js +15 -36
- package/commonjs/Loader/index.js +15 -31
- package/commonjs/Loader/styles.js +2 -13
- package/commonjs/LoaderButton/index.js +26 -55
- package/commonjs/Menu/constants.js +9 -8
- package/commonjs/Menu/descendants.js +70 -105
- package/commonjs/Menu/hooks.js +23 -41
- package/commonjs/Menu/index.flow.js +0 -7
- package/commonjs/Menu/index.js +94 -164
- package/commonjs/Menu/names.js +1 -1
- package/commonjs/Menu/styles.js +0 -6
- package/commonjs/Message/index.js +37 -70
- package/commonjs/Message/styles.js +9 -24
- package/commonjs/Modal/index.js +31 -54
- package/commonjs/Modal/styles.js +17 -36
- package/commonjs/Numeral/index.js +39 -67
- package/commonjs/Numeral/styles.js +0 -3
- package/commonjs/Numeral/tests/testNumeral.js +13 -31
- package/commonjs/OverflowList/index.flow.js +0 -2
- package/commonjs/OverflowList/index.js +27 -41
- package/commonjs/OverflowList/styles.js +0 -7
- package/commonjs/PartnerLogo/index.js +19 -33
- package/commonjs/PartnerLogo/styles.js +7 -15
- package/commonjs/Popout/index.js +95 -127
- package/commonjs/Popout/styles.js +0 -5
- package/commonjs/Portal/index.js +8 -31
- package/commonjs/Radio/index.js +18 -42
- package/commonjs/Radio/styles.js +9 -21
- package/commonjs/SegmentedControl/index.js +17 -37
- package/commonjs/SegmentedControl/styles.js +2 -12
- package/commonjs/Select/index.js +24 -47
- package/commonjs/Select/styles.js +12 -24
- package/commonjs/Skeleton/index.js +0 -5
- package/commonjs/SpotIllustration/illustrationNames.js +1 -1
- package/commonjs/SpotIllustration/index.js +5 -11
- package/commonjs/Stack/index.js +27 -42
- package/commonjs/Switch/index.js +17 -42
- package/commonjs/Switch/styles.js +3 -11
- package/commonjs/Table/index.js +26 -50
- package/commonjs/Table/styles.js +0 -4
- package/commonjs/TableCell/index.js +12 -30
- package/commonjs/TableCell/styles.js +0 -5
- package/commonjs/TableHeaderCell/index.js +27 -56
- package/commonjs/TableHeaderCell/styles.js +0 -6
- package/commonjs/TableRowAccordion/index.js +12 -37
- package/commonjs/TableRowAccordion/styles.js +2 -9
- package/commonjs/Tabs/index.js +16 -66
- package/commonjs/Tabs/styles.js +2 -11
- package/commonjs/Text/index.js +12 -25
- package/commonjs/Text/styles.js +1 -6
- package/commonjs/Textarea/index.js +31 -55
- package/commonjs/Textarea/styles.js +2 -9
- package/commonjs/ThemeProvider/index.js +1 -10
- package/commonjs/Toast/index.js +19 -42
- package/commonjs/Toast/styles.js +1 -7
- package/commonjs/ToggleHint/index.js +15 -39
- package/commonjs/ToggleHint/styles.js +2 -9
- package/commonjs/Token/index.js +15 -29
- package/commonjs/Token/styles.js +5 -12
- package/commonjs/TokenInput/index.js +70 -122
- package/commonjs/TokenInput/styles.js +1 -7
- package/commonjs/TokenInput/util.js +2 -7
- package/commonjs/Tooltip/index.js +40 -63
- package/commonjs/Tooltip/styles.js +1 -5
- package/commonjs/VisuallyHidden/index.js +0 -4
- package/commonjs/dataviz/index.js +0 -4
- package/commonjs/index.js +0 -129
- package/commonjs/systemProps/background.js +0 -1
- package/commonjs/systemProps/border.js +0 -1
- package/commonjs/systemProps/color.js +0 -1
- package/commonjs/systemProps/custom.js +0 -1
- package/commonjs/systemProps/flexbox.js +0 -1
- package/commonjs/systemProps/grid.js +0 -1
- package/commonjs/systemProps/index.js +0 -28
- package/commonjs/systemProps/layout.js +0 -1
- package/commonjs/systemProps/position.js +0 -1
- package/commonjs/systemProps/shadow.js +0 -1
- package/commonjs/systemProps/space.js +1 -2
- package/commonjs/systemProps/systemProps.js +0 -13
- package/commonjs/systemProps/tests/types.flow.js +25 -22
- package/commonjs/systemProps/typography.js +0 -1
- package/commonjs/systemProps/variant.js +2 -3
- package/commonjs/themes/dark/dataviz-palette.js +20 -22
- package/commonjs/themes/dark/decorative-palettes.js +0 -2
- package/commonjs/themes/dark/theme.js +13 -27
- package/commonjs/themes/extendedThemes/sproutTheme/dark/theme.js +2 -9
- package/commonjs/themes/extendedThemes/sproutTheme/index.js +0 -5
- package/commonjs/themes/extendedThemes/sproutTheme/light/theme.js +2 -9
- package/commonjs/themes/light/dataviz-palette.js +20 -22
- package/commonjs/themes/light/decorative-palettes.js +0 -2
- package/commonjs/themes/light/literal-colors.js +132 -134
- package/commonjs/themes/light/theme.js +43 -59
- package/commonjs/types/system-props.flow.js +1 -1
- package/commonjs/types/theme.colors.flow.js +0 -2
- package/commonjs/types/theme.flow.js +0 -1
- package/commonjs/utils/a11yTest.js +3 -10
- package/commonjs/utils/chartColors.js +0 -1
- package/commonjs/utils/constants.js +1 -1
- package/commonjs/utils/dataQaLabelQueries.js +12 -21
- package/commonjs/utils/hooks.js +39 -70
- package/commonjs/utils/index.js +2 -9
- package/commonjs/utils/innerText.js +10 -14
- package/commonjs/utils/mixins.js +2 -7
- package/commonjs/utils/react-testing-library.js +4 -26
- package/commonjs/utils/responsiveProps/index.js +1 -11
- package/commonjs/utils/system-props.js +2 -5
- package/commonjs/utils/useInteractiveColor.js +6 -8
- package/dist/illustration.svg +1 -1
- package/dist/illustrationList.js +1 -1
- package/lib/Avatar/index.js +40 -47
- package/lib/Badge/constants.js +19 -15
- package/lib/Badge/index.js +18 -25
- package/lib/Badge/styles.js +8 -6
- package/lib/Banner/index.js +20 -32
- package/lib/Banner/styles.js +3 -2
- package/lib/Box/index.js +4 -5
- package/lib/Box/styles.js +3 -2
- package/lib/Breadcrumb/index.js +19 -27
- package/lib/Breadcrumb/styles.js +3 -2
- package/lib/Button/index.js +31 -38
- package/lib/Button/styles.js +14 -11
- package/lib/Card/index.js +18 -24
- package/lib/Card/styles.js +5 -4
- package/lib/CharacterCounter/index.js +8 -20
- package/lib/CharacterCounter/styles.js +3 -2
- package/lib/ChartLegend/index.js +9 -17
- package/lib/ChartLegend/styles.js +5 -4
- package/lib/Checkbox/index.js +32 -51
- package/lib/Checkbox/styles.js +21 -26
- package/lib/Collapsible/index.js +36 -51
- package/lib/Collapsible/styles.js +6 -5
- package/lib/DatePicker/DateRangePicker.js +8 -14
- package/lib/DatePicker/SingleDatePicker.js +7 -13
- package/lib/DatePicker/StatefulDateRangePicker.js +19 -26
- package/lib/DatePicker/StatefulSingleDatePicker.js +9 -15
- package/lib/DatePicker/common.js +14 -13
- package/lib/DatePicker/index.js +2 -2
- package/lib/DatePicker/styles.js +12 -22
- package/lib/Drawer/SlideTransition.js +11 -14
- package/lib/Drawer/index.js +64 -88
- package/lib/Drawer/styles.js +4 -3
- package/lib/EmptyState/index.js +11 -17
- package/lib/Fieldset/index.js +19 -29
- package/lib/Fieldset/styles.js +5 -4
- package/lib/FormField/index.js +27 -33
- package/lib/Icon/deprecatedIcons.js +36 -36
- package/lib/Icon/index.js +25 -34
- package/lib/Icon/styles.js +11 -13
- package/lib/IllustrationViewBoxes.js +1 -0
- package/lib/Image/index.js +15 -38
- package/lib/Image/styles.js +4 -4
- package/lib/Indicator/index.js +11 -23
- package/lib/Indicator/styles.js +5 -5
- package/lib/Input/index.js +87 -115
- package/lib/Input/styles.js +13 -15
- package/lib/KeyboardKey/index.js +6 -17
- package/lib/KeyboardKey/styles.js +3 -2
- package/lib/Label/index.js +10 -24
- package/lib/Link/constants.js +5 -4
- package/lib/Link/index.js +18 -25
- package/lib/Link/styles.js +6 -5
- package/lib/Listbox/index.js +21 -29
- package/lib/Loader/index.js +17 -29
- package/lib/Loader/styles.js +6 -8
- package/lib/LoaderButton/index.js +34 -51
- package/lib/Menu/constants.js +10 -8
- package/lib/Menu/descendants.js +73 -94
- package/lib/Menu/hooks.js +28 -39
- package/lib/Menu/index.flow.js +6 -5
- package/lib/Menu/index.js +113 -150
- package/lib/Menu/names.js +1 -1
- package/lib/Menu/styles.js +4 -3
- package/lib/Message/index.js +42 -66
- package/lib/Message/styles.js +15 -23
- package/lib/Modal/index.js +38 -51
- package/lib/Modal/styles.js +23 -32
- package/lib/Numeral/index.js +45 -64
- package/lib/Numeral/styles.js +3 -2
- package/lib/Numeral/tests/testNumeral.js +17 -27
- package/lib/OverflowList/index.flow.js +2 -1
- package/lib/OverflowList/index.js +31 -38
- package/lib/OverflowList/styles.js +5 -4
- package/lib/PartnerLogo/index.js +23 -31
- package/lib/PartnerLogo/styles.js +11 -12
- package/lib/Popout/index.js +105 -121
- package/lib/Popout/styles.js +3 -3
- package/lib/Portal/index.js +11 -29
- package/lib/Radio/index.js +20 -40
- package/lib/Radio/styles.js +14 -14
- package/lib/SegmentedControl/index.js +21 -34
- package/lib/SegmentedControl/styles.js +7 -9
- package/lib/Select/index.js +27 -44
- package/lib/Select/styles.js +16 -20
- package/lib/Skeleton/index.js +7 -4
- package/lib/SpotIllustration/illustrationNames.js +2 -1
- package/lib/SpotIllustration/index.js +9 -10
- package/lib/Stack/index.js +31 -39
- package/lib/Switch/index.js +21 -39
- package/lib/Switch/styles.js +8 -7
- package/lib/Table/index.js +30 -40
- package/lib/Table/styles.js +3 -2
- package/lib/TableCell/index.js +14 -27
- package/lib/TableCell/styles.js +3 -3
- package/lib/TableHeaderCell/index.js +30 -52
- package/lib/TableHeaderCell/styles.js +3 -2
- package/lib/TableRowAccordion/index.js +16 -34
- package/lib/TableRowAccordion/styles.js +5 -3
- package/lib/Tabs/index.js +18 -63
- package/lib/Tabs/styles.js +6 -6
- package/lib/Text/index.js +15 -21
- package/lib/Text/styles.js +4 -3
- package/lib/Textarea/index.js +33 -53
- package/lib/Textarea/styles.js +6 -5
- package/lib/ThemeProvider/index.js +4 -7
- package/lib/Toast/index.js +26 -37
- package/lib/Toast/styles.js +5 -4
- package/lib/ToggleHint/index.js +18 -36
- package/lib/ToggleHint/styles.js +6 -5
- package/lib/Token/index.js +20 -26
- package/lib/Token/styles.js +10 -9
- package/lib/TokenInput/index.js +78 -118
- package/lib/TokenInput/styles.js +5 -4
- package/lib/TokenInput/util.js +5 -3
- package/lib/Tooltip/index.js +45 -60
- package/lib/Tooltip/styles.js +4 -4
- package/lib/VisuallyHidden/index.js +3 -2
- package/lib/dataviz/index.js +4 -3
- package/lib/index.js +66 -64
- package/lib/systemProps/background.js +3 -1
- package/lib/systemProps/border.js +3 -1
- package/lib/systemProps/color.js +3 -1
- package/lib/systemProps/custom.js +3 -1
- package/lib/systemProps/flexbox.js +3 -1
- package/lib/systemProps/grid.js +3 -1
- package/lib/systemProps/index.js +16 -14
- package/lib/systemProps/layout.js +3 -1
- package/lib/systemProps/position.js +3 -1
- package/lib/systemProps/shadow.js +3 -1
- package/lib/systemProps/space.js +2 -1
- package/lib/systemProps/systemProps.js +14 -13
- package/lib/systemProps/tests/types.flow.js +27 -22
- package/lib/systemProps/typography.js +3 -1
- package/lib/systemProps/variant.js +4 -3
- package/lib/themes/dark/dataviz-palette.js +23 -21
- package/lib/themes/dark/decorative-palettes.js +3 -1
- package/lib/themes/dark/theme.js +20 -23
- package/lib/themes/extendedThemes/sproutTheme/dark/theme.js +4 -7
- package/lib/themes/extendedThemes/sproutTheme/index.js +3 -2
- package/lib/themes/extendedThemes/sproutTheme/light/theme.js +4 -7
- package/lib/themes/light/dataviz-palette.js +23 -21
- package/lib/themes/light/decorative-palettes.js +3 -1
- package/lib/themes/light/literal-colors.js +135 -133
- package/lib/themes/light/theme.js +54 -55
- package/lib/types/system-props.flow.js +1 -1
- package/lib/types/theme.colors.flow.js +4 -2
- package/lib/types/theme.flow.js +3 -2
- package/lib/utils/a11yTest.js +5 -8
- package/lib/utils/chartColors.js +3 -1
- package/lib/utils/constants.js +3 -1
- package/lib/utils/dataQaLabelQueries.js +13 -21
- package/lib/utils/hooks.js +41 -64
- package/lib/utils/index.js +2 -5
- package/lib/utils/innerText.js +12 -14
- package/lib/utils/mixins.js +6 -5
- package/lib/utils/react-testing-library.js +10 -20
- package/lib/utils/responsiveProps/index.js +3 -8
- package/lib/utils/system-props.js +4 -3
- package/lib/utils/useInteractiveColor.js +10 -9
- package/package.json +6 -13
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import React, {
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import Text from "../Text";
|
|
10
|
-
import Tabs from "../Tabs";
|
|
11
|
-
|
|
12
|
-
const GlobalStyle = createGlobalStyle`
|
|
13
|
-
body {
|
|
14
|
-
margin: 0;
|
|
15
|
-
}
|
|
16
|
-
`;
|
|
2
|
+
import React, {useState} from 'react';
|
|
3
|
+
import Drawer, {type TypeDrawerProps} from './index';
|
|
4
|
+
import Button from '../Button';
|
|
5
|
+
import Icon from '../Icon';
|
|
6
|
+
import Box from '../Box';
|
|
7
|
+
import Text from '../Text';
|
|
8
|
+
import Tabs from '../Tabs';
|
|
17
9
|
|
|
18
10
|
const StatefulDrawer = ({
|
|
19
11
|
isOpen = true,
|
|
@@ -42,7 +34,7 @@ const StatefulDrawer = ({
|
|
|
42
34
|
);
|
|
43
35
|
};
|
|
44
36
|
|
|
45
|
-
const DrawerComponent = ({
|
|
37
|
+
const DrawerComponent = ({direction, offset}: $Shape<TypeDrawerProps>) => {
|
|
46
38
|
const [isOpen, setIsOpen] = useState(false);
|
|
47
39
|
const onOpen = () => setIsOpen(true);
|
|
48
40
|
const onClose = () => setIsOpen(false);
|
|
@@ -77,82 +69,8 @@ const DrawerComponent = ({ direction, offset }: $Shape<TypeDrawerProps>) => {
|
|
|
77
69
|
);
|
|
78
70
|
};
|
|
79
71
|
|
|
80
|
-
const NectarDrawerComponent = ({
|
|
81
|
-
direction,
|
|
82
|
-
offset,
|
|
83
|
-
}: $Shape<TypeDrawerProps>) => {
|
|
84
|
-
const [isNotificationsOpen, setIsNotificationsOpen] = useState(false);
|
|
85
|
-
const [isPoplarOpen, setIsPoplarOpen] = useState(false);
|
|
86
|
-
const openNotifications = () => {
|
|
87
|
-
setIsNotificationsOpen(true);
|
|
88
|
-
setIsPoplarOpen(false);
|
|
89
|
-
};
|
|
90
|
-
const closeNotifications = () => {
|
|
91
|
-
setIsNotificationsOpen(false);
|
|
92
|
-
};
|
|
93
|
-
const openPoplar = () => {
|
|
94
|
-
setIsNotificationsOpen(false);
|
|
95
|
-
setIsPoplarOpen(true);
|
|
96
|
-
};
|
|
97
|
-
const closePoplar = () => {
|
|
98
|
-
setIsPoplarOpen(false);
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
return (
|
|
102
|
-
<Box display="flex" justifyContent="flex-end" width="100vw" height="100vh">
|
|
103
|
-
<Box
|
|
104
|
-
position="relative"
|
|
105
|
-
borderLeft="2px solid black"
|
|
106
|
-
width="64px"
|
|
107
|
-
height="100%"
|
|
108
|
-
bg="neutral.0"
|
|
109
|
-
display="flex"
|
|
110
|
-
flexDirection="column"
|
|
111
|
-
padding={300}
|
|
112
|
-
zIndex={8}
|
|
113
|
-
>
|
|
114
|
-
<Button
|
|
115
|
-
onClick={isNotificationsOpen ? closeNotifications : openNotifications}
|
|
116
|
-
>
|
|
117
|
-
<Icon color="icon.base" name="notifications" />
|
|
118
|
-
</Button>
|
|
119
|
-
<Button onClick={isPoplarOpen ? closePoplar : openPoplar} mt={400}>
|
|
120
|
-
<Icon color="icon.base" name="link" />
|
|
121
|
-
</Button>
|
|
122
|
-
</Box>
|
|
123
|
-
<Drawer
|
|
124
|
-
onClose={closeNotifications}
|
|
125
|
-
isOpen={isNotificationsOpen}
|
|
126
|
-
direction={direction}
|
|
127
|
-
offset={offset}
|
|
128
|
-
id="notifications-drawer"
|
|
129
|
-
closeButtonLabel="close drawer"
|
|
130
|
-
>
|
|
131
|
-
<Drawer.Header title="Notifications Header" />
|
|
132
|
-
<Drawer.Content>
|
|
133
|
-
<Text>Notifications Content</Text>
|
|
134
|
-
</Drawer.Content>
|
|
135
|
-
</Drawer>
|
|
136
|
-
<Drawer
|
|
137
|
-
onClose={closePoplar}
|
|
138
|
-
isOpen={isPoplarOpen}
|
|
139
|
-
direction={direction}
|
|
140
|
-
offset={offset}
|
|
141
|
-
id="poplar-drawer"
|
|
142
|
-
closeButtonLabel="close drawer"
|
|
143
|
-
>
|
|
144
|
-
<Drawer.Header title="Poplar Header" />
|
|
145
|
-
<Drawer.Content>
|
|
146
|
-
<Text>Poplar Content</Text>
|
|
147
|
-
</Drawer.Content>
|
|
148
|
-
</Drawer>
|
|
149
|
-
<GlobalStyle />
|
|
150
|
-
</Box>
|
|
151
|
-
);
|
|
152
|
-
};
|
|
153
|
-
|
|
154
72
|
const BigDrawerContent = () => (
|
|
155
|
-
<Text as="
|
|
73
|
+
<Text.BodyCopy as="p">
|
|
156
74
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ac consectetur
|
|
157
75
|
tortor. Fusce ac rutrum nibh. Phasellus rhoncus sed neque vitae dictum. Nunc
|
|
158
76
|
viverra venenatis pellentesque. Proin lorem massa, ornare in mauris eget,
|
|
@@ -219,23 +137,29 @@ const BigDrawerContent = () => (
|
|
|
219
137
|
odio. Morbi vitae ante sed tellus molestie blandit. Morbi porttitor mi quis
|
|
220
138
|
laoreet commodo. Donec vel rutrum ipsum. Nunc sollicitudin lacinia eros quis
|
|
221
139
|
mollis.
|
|
222
|
-
</Text>
|
|
140
|
+
</Text.BodyCopy>
|
|
223
141
|
);
|
|
224
142
|
|
|
225
143
|
export default {
|
|
226
|
-
title:
|
|
144
|
+
title: 'Components/Drawer',
|
|
145
|
+
component: Drawer,
|
|
146
|
+
args: {
|
|
147
|
+
direction: 'right',
|
|
148
|
+
offset: 0,
|
|
149
|
+
isOpen: true,
|
|
150
|
+
},
|
|
227
151
|
};
|
|
228
152
|
|
|
229
|
-
export const DrawerWithDefaults = () => (
|
|
153
|
+
export const DrawerWithDefaults = (args: TypeDrawerProps) => (
|
|
230
154
|
<StatefulDrawer
|
|
231
|
-
direction={
|
|
232
|
-
offset={
|
|
233
|
-
isOpen={
|
|
155
|
+
direction={args.direction}
|
|
156
|
+
offset={args.offset}
|
|
157
|
+
isOpen={args.isOpen}
|
|
234
158
|
onClose={() => {}}
|
|
235
159
|
id="drawer"
|
|
236
160
|
closeButtonLabel="close drawer"
|
|
237
161
|
>
|
|
238
|
-
<Drawer.Header title=
|
|
162
|
+
<Drawer.Header title="Drawer" />
|
|
239
163
|
<Drawer.Content>
|
|
240
164
|
<BigDrawerContent />
|
|
241
165
|
</Drawer.Content>
|
|
@@ -243,21 +167,21 @@ export const DrawerWithDefaults = () => (
|
|
|
243
167
|
);
|
|
244
168
|
|
|
245
169
|
DrawerWithDefaults.story = {
|
|
246
|
-
name:
|
|
170
|
+
name: 'Drawer With Defaults',
|
|
247
171
|
};
|
|
248
172
|
|
|
249
|
-
export const DrawerWithHeaderChildren = () => (
|
|
173
|
+
export const DrawerWithHeaderChildren = (args: TypeDrawerProps) => (
|
|
250
174
|
<StatefulDrawer
|
|
251
|
-
direction={
|
|
252
|
-
offset={
|
|
253
|
-
isOpen={
|
|
175
|
+
direction={args.direction}
|
|
176
|
+
offset={args.offset}
|
|
177
|
+
isOpen={args.isOpen}
|
|
254
178
|
onClose={() => {}}
|
|
255
179
|
id="drawer"
|
|
256
180
|
closeButtonLabel="close drawer"
|
|
257
181
|
>
|
|
258
182
|
<Drawer.Header>
|
|
259
183
|
<Box flexGrow={1}>
|
|
260
|
-
<Tabs fullWidth selectedId={
|
|
184
|
+
<Tabs fullWidth selectedId={'1'} onSelect={() => {}}>
|
|
261
185
|
<Tabs.Button id="1">
|
|
262
186
|
<Box display="flex" justifyContent="center" alignItems="center">
|
|
263
187
|
<Icon name="notifications" mr={350} />
|
|
@@ -293,20 +217,20 @@ export const DrawerWithHeaderChildren = () => (
|
|
|
293
217
|
);
|
|
294
218
|
|
|
295
219
|
DrawerWithHeaderChildren.story = {
|
|
296
|
-
name:
|
|
220
|
+
name: 'Drawer With Header Children',
|
|
297
221
|
};
|
|
298
222
|
|
|
299
|
-
export const DrawerWithHeaderRender = () => (
|
|
223
|
+
export const DrawerWithHeaderRender = (args: TypeDrawerProps) => (
|
|
300
224
|
<StatefulDrawer
|
|
301
|
-
direction={
|
|
302
|
-
offset={
|
|
303
|
-
isOpen={
|
|
225
|
+
direction={args.direction}
|
|
226
|
+
offset={args.offset}
|
|
227
|
+
isOpen={args.isOpen}
|
|
304
228
|
onClose={() => {}}
|
|
305
229
|
id="drawer"
|
|
306
230
|
closeButtonLabel="close drawer"
|
|
307
231
|
>
|
|
308
232
|
<Drawer.Header
|
|
309
|
-
render={({
|
|
233
|
+
render={({onClose}) => (
|
|
310
234
|
<Box
|
|
311
235
|
display="flex"
|
|
312
236
|
justifyContent="space-between"
|
|
@@ -315,7 +239,7 @@ export const DrawerWithHeaderRender = () => (
|
|
|
315
239
|
>
|
|
316
240
|
<Text>Type "close" to close drawer</Text>
|
|
317
241
|
<input
|
|
318
|
-
onChange={(event) => event.target.value ===
|
|
242
|
+
onChange={(event) => event.target.value === 'close' && onClose()}
|
|
319
243
|
/>
|
|
320
244
|
</Box>
|
|
321
245
|
)}
|
|
@@ -327,20 +251,20 @@ export const DrawerWithHeaderRender = () => (
|
|
|
327
251
|
);
|
|
328
252
|
|
|
329
253
|
DrawerWithHeaderRender.story = {
|
|
330
|
-
name:
|
|
254
|
+
name: 'Drawer With Header Render',
|
|
331
255
|
};
|
|
332
256
|
|
|
333
|
-
export const DrawerWithCloseButtonChildren = () => (
|
|
257
|
+
export const DrawerWithCloseButtonChildren = (args: TypeDrawerProps) => (
|
|
334
258
|
<StatefulDrawer
|
|
335
|
-
direction={
|
|
336
|
-
offset={
|
|
337
|
-
isOpen={
|
|
259
|
+
direction={args.direction}
|
|
260
|
+
offset={args.offset}
|
|
261
|
+
isOpen={args.isOpen}
|
|
338
262
|
onClose={() => {}}
|
|
339
263
|
id="drawer"
|
|
340
264
|
closeButtonLabel="close drawer"
|
|
341
265
|
>
|
|
342
266
|
<Drawer.Header alignItems="center">
|
|
343
|
-
<Text>Hello</Text>
|
|
267
|
+
<Text.Headline>Hello</Text.Headline>
|
|
344
268
|
<Drawer.CloseButton appearance="primary">Close Me</Drawer.CloseButton>
|
|
345
269
|
</Drawer.Header>
|
|
346
270
|
<Drawer.Content>
|
|
@@ -350,25 +274,27 @@ export const DrawerWithCloseButtonChildren = () => (
|
|
|
350
274
|
);
|
|
351
275
|
|
|
352
276
|
DrawerWithCloseButtonChildren.story = {
|
|
353
|
-
name:
|
|
277
|
+
name: 'Drawer With Close Button Children',
|
|
354
278
|
};
|
|
355
279
|
|
|
356
|
-
export const DrawerWithCloseButtonRender = () => (
|
|
280
|
+
export const DrawerWithCloseButtonRender = (args: TypeDrawerProps) => (
|
|
357
281
|
<StatefulDrawer
|
|
358
|
-
direction={
|
|
359
|
-
offset={
|
|
360
|
-
isOpen={
|
|
282
|
+
direction={args.direction}
|
|
283
|
+
offset={args.offset}
|
|
284
|
+
isOpen={args.isOpen}
|
|
361
285
|
onClose={() => {}}
|
|
362
286
|
id="drawer"
|
|
363
287
|
closeButtonLabel="close drawer"
|
|
364
288
|
>
|
|
365
289
|
<Drawer.Header alignItems="center">
|
|
366
|
-
<Text>
|
|
290
|
+
<Text.BodyCopy>
|
|
291
|
+
This Drawer Will Close three seconds after clicking the "X"
|
|
292
|
+
</Text.BodyCopy>
|
|
367
293
|
<Drawer.CloseButton
|
|
368
|
-
render={({
|
|
294
|
+
render={({onClose, closeButtonLabel}) => {
|
|
369
295
|
const newOnClose = () => {
|
|
370
296
|
setTimeout(() => {
|
|
371
|
-
console.log(
|
|
297
|
+
console.log('close');
|
|
372
298
|
onClose();
|
|
373
299
|
}, 3000);
|
|
374
300
|
};
|
|
@@ -392,27 +318,18 @@ export const DrawerWithCloseButtonRender = () => (
|
|
|
392
318
|
);
|
|
393
319
|
|
|
394
320
|
DrawerWithCloseButtonChildren.story = {
|
|
395
|
-
name:
|
|
321
|
+
name: 'Drawer With Close Button Children',
|
|
396
322
|
};
|
|
397
323
|
|
|
398
|
-
export const
|
|
399
|
-
<
|
|
400
|
-
direction={text("direction", "right")}
|
|
401
|
-
offset={number("offset", 64)}
|
|
402
|
-
/>
|
|
324
|
+
export const fromLeft = (args: TypeDrawerProps) => (
|
|
325
|
+
<DrawerComponent {...args} />
|
|
403
326
|
);
|
|
404
327
|
|
|
405
|
-
|
|
406
|
-
|
|
328
|
+
fromLeft.args = {
|
|
329
|
+
direction: 'left',
|
|
330
|
+
offset: 0,
|
|
407
331
|
};
|
|
408
332
|
|
|
409
|
-
export const fromLeft = () => (
|
|
410
|
-
<DrawerComponent
|
|
411
|
-
direction={text("direction", "left")}
|
|
412
|
-
offset={number("offset", 0)}
|
|
413
|
-
/>
|
|
414
|
-
);
|
|
415
|
-
|
|
416
333
|
fromLeft.story = {
|
|
417
|
-
name:
|
|
334
|
+
name: 'From left',
|
|
418
335
|
};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import React, {
|
|
3
|
-
import Drawer, {
|
|
2
|
+
import React, {useState} from 'react';
|
|
3
|
+
import Drawer, {type TypeDrawerProps} from './';
|
|
4
4
|
import {
|
|
5
5
|
render as testRender,
|
|
6
6
|
fireEvent,
|
|
7
7
|
wait,
|
|
8
|
-
} from
|
|
8
|
+
} from '../utils/react-testing-library';
|
|
9
9
|
|
|
10
|
-
const StatefulDrawer = ({
|
|
10
|
+
const StatefulDrawer = ({isOpen, onClose, children, ...rest}) => {
|
|
11
11
|
const [isDrawerOpen, setIsDrawerOpen] = useState(isOpen || false);
|
|
12
12
|
const onDrawerClose = () => {
|
|
13
13
|
setIsDrawerOpen(false);
|
|
@@ -35,11 +35,11 @@ const render = ({
|
|
|
35
35
|
),
|
|
36
36
|
offset,
|
|
37
37
|
onClose = () => {},
|
|
38
|
-
id =
|
|
39
|
-
closeButtonLabel =
|
|
38
|
+
id = 'drawer',
|
|
39
|
+
closeButtonLabel = 'close',
|
|
40
40
|
}: $Shape<TypeDrawerProps> = {}) => {
|
|
41
|
-
const {
|
|
42
|
-
const mainContentRef = baseElement.querySelector(
|
|
41
|
+
const {baseElement} = testRender(<div id="main-content" />);
|
|
42
|
+
const mainContentRef = baseElement.querySelector('#main-content');
|
|
43
43
|
|
|
44
44
|
return testRender(
|
|
45
45
|
<div>
|
|
@@ -60,35 +60,35 @@ const render = ({
|
|
|
60
60
|
);
|
|
61
61
|
};
|
|
62
62
|
|
|
63
|
-
describe(
|
|
64
|
-
it(
|
|
65
|
-
const {
|
|
63
|
+
describe('Drawer', () => {
|
|
64
|
+
it('should not be in the document by default', () => {
|
|
65
|
+
const {queryByText} = render();
|
|
66
66
|
|
|
67
67
|
expect(queryByText(/drawer content/i)).not.toBeInTheDocument();
|
|
68
68
|
});
|
|
69
69
|
|
|
70
|
-
it(
|
|
71
|
-
const {
|
|
70
|
+
it('should render drawer', () => {
|
|
71
|
+
const {getByText} = render({isOpen: true});
|
|
72
72
|
|
|
73
73
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
74
74
|
});
|
|
75
75
|
|
|
76
|
-
it(
|
|
77
|
-
const {
|
|
76
|
+
it('should close drawer on header click', async () => {
|
|
77
|
+
const {queryByText, getByText, getByLabelText} = render({
|
|
78
78
|
isOpen: true,
|
|
79
79
|
});
|
|
80
80
|
|
|
81
81
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
82
82
|
|
|
83
|
-
fireEvent.click(getByLabelText(
|
|
83
|
+
fireEvent.click(getByLabelText('close'));
|
|
84
84
|
|
|
85
85
|
await wait(() => {
|
|
86
86
|
expect(queryByText(/drawer content/i)).not.toBeInTheDocument();
|
|
87
87
|
});
|
|
88
88
|
});
|
|
89
89
|
|
|
90
|
-
it(
|
|
91
|
-
const {
|
|
90
|
+
it('should close drawer on header click when using custom header', async () => {
|
|
91
|
+
const {queryByText, getByText, getByLabelText} = render({
|
|
92
92
|
isOpen: true,
|
|
93
93
|
children: (
|
|
94
94
|
<React.Fragment>
|
|
@@ -105,51 +105,51 @@ describe("Drawer", () => {
|
|
|
105
105
|
|
|
106
106
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
107
107
|
|
|
108
|
-
fireEvent.click(getByLabelText(
|
|
108
|
+
fireEvent.click(getByLabelText('close'));
|
|
109
109
|
|
|
110
110
|
await wait(() => {
|
|
111
111
|
expect(queryByText(/drawer content/i)).not.toBeInTheDocument();
|
|
112
112
|
});
|
|
113
113
|
});
|
|
114
114
|
|
|
115
|
-
it(
|
|
116
|
-
const {
|
|
115
|
+
it('should close drawer on outside click', async () => {
|
|
116
|
+
const {baseElement, queryByText, getByText} = render({
|
|
117
117
|
isOpen: true,
|
|
118
118
|
});
|
|
119
119
|
|
|
120
120
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
121
121
|
|
|
122
|
-
fireEvent.click(baseElement.querySelector(
|
|
122
|
+
fireEvent.click(baseElement.querySelector('#main-content'));
|
|
123
123
|
|
|
124
124
|
await wait(() => {
|
|
125
125
|
expect(queryByText(/drawer content/i)).not.toBeInTheDocument();
|
|
126
126
|
});
|
|
127
127
|
});
|
|
128
128
|
|
|
129
|
-
it(
|
|
130
|
-
const {
|
|
129
|
+
it('should not close drawer on outside click when disabled', async () => {
|
|
130
|
+
const {baseElement, queryByText, getByText} = render({
|
|
131
131
|
isOpen: true,
|
|
132
132
|
disableCloseOnClickOutside: true,
|
|
133
133
|
});
|
|
134
134
|
|
|
135
135
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
136
136
|
|
|
137
|
-
fireEvent.click(baseElement.querySelector(
|
|
137
|
+
fireEvent.click(baseElement.querySelector('#main-content'));
|
|
138
138
|
|
|
139
139
|
await wait(() => {
|
|
140
140
|
expect(queryByText(/drawer content/i)).toBeInTheDocument();
|
|
141
141
|
});
|
|
142
142
|
});
|
|
143
143
|
|
|
144
|
-
it(
|
|
145
|
-
const {
|
|
144
|
+
it('should close drawer on esc key', async () => {
|
|
145
|
+
const {baseElement, queryByText, getByText} = render({
|
|
146
146
|
isOpen: true,
|
|
147
147
|
disableCloseOnClickOutside: true,
|
|
148
148
|
});
|
|
149
149
|
|
|
150
150
|
expect(getByText(/drawer content/i)).toBeInTheDocument();
|
|
151
151
|
|
|
152
|
-
fireEvent.keyDown(baseElement, {
|
|
152
|
+
fireEvent.keyDown(baseElement, {key: 'Escape'});
|
|
153
153
|
|
|
154
154
|
await wait(() => {
|
|
155
155
|
expect(queryByText(/drawer content/i)).not.toBeInTheDocument();
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import styled, {
|
|
3
|
-
import {
|
|
4
|
-
import Box from
|
|
2
|
+
import styled, {css, type StyledComponent} from 'styled-components';
|
|
3
|
+
import {COMMON} from '../utils/system-props';
|
|
4
|
+
import Box from '../Box';
|
|
5
5
|
|
|
6
|
-
import type {
|
|
6
|
+
import type {TypeTheme} from '../types/theme.flow';
|
|
7
7
|
|
|
8
8
|
export const Content = styled<typeof Box, TypeTheme>(Box)`
|
|
9
9
|
overflow-y: auto;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import * as React from
|
|
3
|
-
import Box from
|
|
4
|
-
import Text from
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import Box from '../Box';
|
|
4
|
+
import Text from '../Text';
|
|
5
5
|
|
|
6
6
|
type TypeProps = {
|
|
7
7
|
/** An image in (preferably in SVG format) */
|
|
@@ -57,11 +57,11 @@ const EmptyState = ({
|
|
|
57
57
|
|
|
58
58
|
<Box mt={primaryAction || secondaryAction ? 450 : 0}>
|
|
59
59
|
{primaryAction &&
|
|
60
|
-
React.cloneElement(primaryAction, {
|
|
60
|
+
React.cloneElement(primaryAction, {appearance: 'primary'})}
|
|
61
61
|
|
|
62
62
|
{secondaryAction && (
|
|
63
63
|
<Box mt={400}>
|
|
64
|
-
{React.cloneElement(secondaryAction, {
|
|
64
|
+
{React.cloneElement(secondaryAction, {appearance: 'default'})}
|
|
65
65
|
</Box>
|
|
66
66
|
)}
|
|
67
67
|
</Box>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import React from
|
|
3
|
-
import EmptyState from
|
|
4
|
-
import Button from
|
|
5
|
-
import Image from
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import EmptyState from './index';
|
|
4
|
+
import Button from '../Button';
|
|
5
|
+
import Image from '../Image';
|
|
6
6
|
|
|
7
7
|
export default {
|
|
8
|
-
title:
|
|
8
|
+
title: 'Components/EmptyState',
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export const defaultStory = () => (
|
|
@@ -24,7 +24,7 @@ export const defaultStory = () => (
|
|
|
24
24
|
);
|
|
25
25
|
|
|
26
26
|
defaultStory.story = {
|
|
27
|
-
name:
|
|
27
|
+
name: 'Default',
|
|
28
28
|
};
|
|
29
29
|
|
|
30
30
|
export const withSubtext = () => (
|
|
@@ -44,7 +44,7 @@ sidebar to see content."
|
|
|
44
44
|
);
|
|
45
45
|
|
|
46
46
|
withSubtext.story = {
|
|
47
|
-
name:
|
|
47
|
+
name: 'With Subtext',
|
|
48
48
|
};
|
|
49
49
|
|
|
50
50
|
export const withPrimaryAction = () => (
|
|
@@ -63,7 +63,7 @@ export const withPrimaryAction = () => (
|
|
|
63
63
|
);
|
|
64
64
|
|
|
65
65
|
withPrimaryAction.story = {
|
|
66
|
-
name:
|
|
66
|
+
name: 'With Primary Action',
|
|
67
67
|
};
|
|
68
68
|
|
|
69
69
|
export const withSubtextAndPrimaryAction = () => (
|
|
@@ -83,7 +83,7 @@ export const withSubtextAndPrimaryAction = () => (
|
|
|
83
83
|
);
|
|
84
84
|
|
|
85
85
|
withSubtextAndPrimaryAction.story = {
|
|
86
|
-
name:
|
|
86
|
+
name: 'With Subtext and Primary Action',
|
|
87
87
|
};
|
|
88
88
|
|
|
89
89
|
export const withSubtextPrimaryActionAndSecondaryAction = () => (
|
|
@@ -104,5 +104,5 @@ export const withSubtextPrimaryActionAndSecondaryAction = () => (
|
|
|
104
104
|
);
|
|
105
105
|
|
|
106
106
|
withSubtextPrimaryActionAndSecondaryAction.story = {
|
|
107
|
-
name:
|
|
107
|
+
name: 'With Subtext, Primary Action, and Secondary Action',
|
|
108
108
|
};
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
// @flow
|
|
2
|
-
import React from
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import EmptyState from
|
|
6
|
-
import Image from
|
|
7
|
-
import Button from
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import {render} from '../utils/react-testing-library';
|
|
4
|
+
import 'jest-styled-components';
|
|
5
|
+
import EmptyState from './';
|
|
6
|
+
import Image from '../Image';
|
|
7
|
+
import Button from '../Button';
|
|
8
8
|
|
|
9
|
-
describe(
|
|
10
|
-
it(
|
|
11
|
-
const {
|
|
9
|
+
describe('EmptyState', () => {
|
|
10
|
+
it('should render', () => {
|
|
11
|
+
const {getByDataQaLabel} = render(
|
|
12
12
|
<EmptyState
|
|
13
13
|
media={
|
|
14
14
|
<Image
|
|
@@ -20,11 +20,11 @@ describe("EmptyState", () => {
|
|
|
20
20
|
headline="No content found"
|
|
21
21
|
/>
|
|
22
22
|
);
|
|
23
|
-
expect(getByDataQaLabel({
|
|
23
|
+
expect(getByDataQaLabel({emptystate: 'No content found'})).toBeTruthy();
|
|
24
24
|
});
|
|
25
25
|
|
|
26
|
-
it(
|
|
27
|
-
const {
|
|
26
|
+
it('should render a media', async () => {
|
|
27
|
+
const {getByDataQaLabel} = render(
|
|
28
28
|
<EmptyState
|
|
29
29
|
media={
|
|
30
30
|
<Image
|
|
@@ -37,17 +37,17 @@ describe("EmptyState", () => {
|
|
|
37
37
|
/>
|
|
38
38
|
);
|
|
39
39
|
expect(
|
|
40
|
-
getByDataQaLabel({
|
|
40
|
+
getByDataQaLabel({image: 'No assets matching your search or filters'})
|
|
41
41
|
).toBeTruthy();
|
|
42
42
|
expect(
|
|
43
43
|
getByDataQaLabel({
|
|
44
|
-
|
|
44
|
+
'image-src': 'https://cl.ly/c878e80ca537/telescope.svg',
|
|
45
45
|
})
|
|
46
46
|
).toBeTruthy();
|
|
47
47
|
});
|
|
48
48
|
|
|
49
|
-
it(
|
|
50
|
-
const {
|
|
49
|
+
it('should render a headline', async () => {
|
|
50
|
+
const {getByText} = render(
|
|
51
51
|
<EmptyState
|
|
52
52
|
media={
|
|
53
53
|
<Image
|
|
@@ -59,11 +59,11 @@ describe("EmptyState", () => {
|
|
|
59
59
|
headline="No assets matching your search or filters"
|
|
60
60
|
/>
|
|
61
61
|
);
|
|
62
|
-
expect(getByText(
|
|
62
|
+
expect(getByText('No assets matching your search or filters')).toBeTruthy();
|
|
63
63
|
});
|
|
64
64
|
|
|
65
|
-
it(
|
|
66
|
-
const {
|
|
65
|
+
it('should render a subtext', async () => {
|
|
66
|
+
const {getByText} = render(
|
|
67
67
|
<EmptyState
|
|
68
68
|
media={
|
|
69
69
|
<Image
|
|
@@ -78,12 +78,12 @@ describe("EmptyState", () => {
|
|
|
78
78
|
/>
|
|
79
79
|
);
|
|
80
80
|
expect(
|
|
81
|
-
getByText(
|
|
81
|
+
getByText('There is no content for the date range you’ve selected.')
|
|
82
82
|
).toBeTruthy();
|
|
83
83
|
});
|
|
84
84
|
|
|
85
|
-
it(
|
|
86
|
-
const {
|
|
85
|
+
it('should render a primary button', async () => {
|
|
86
|
+
const {getByText} = render(
|
|
87
87
|
<EmptyState
|
|
88
88
|
media={
|
|
89
89
|
<Image
|
|
@@ -96,13 +96,13 @@ describe("EmptyState", () => {
|
|
|
96
96
|
primaryAction={<Button>Reload Page</Button>}
|
|
97
97
|
/>
|
|
98
98
|
);
|
|
99
|
-
const element = getByText(
|
|
99
|
+
const element = getByText('Reload Page');
|
|
100
100
|
expect(element).toBeTruthy();
|
|
101
|
-
expect(element).toHaveStyleRule(
|
|
101
|
+
expect(element).toHaveStyleRule('color', '#FFFFFF');
|
|
102
102
|
});
|
|
103
103
|
|
|
104
|
-
it(
|
|
105
|
-
const {
|
|
104
|
+
it('should render a secondary button', async () => {
|
|
105
|
+
const {getByText} = render(
|
|
106
106
|
<EmptyState
|
|
107
107
|
media={
|
|
108
108
|
<Image
|
|
@@ -119,6 +119,6 @@ describe("EmptyState", () => {
|
|
|
119
119
|
);
|
|
120
120
|
const element = getByText("I'll do this later");
|
|
121
121
|
expect(element).toBeTruthy();
|
|
122
|
-
expect(element).toHaveStyleRule(
|
|
122
|
+
expect(element).toHaveStyleRule('color', '#515e5f');
|
|
123
123
|
});
|
|
124
124
|
});
|