@nypl/design-system-react-components 0.25.12 → 0.26.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 +131 -1
- package/README.md +10 -10
- package/dist/components/Accordion/Accordion.d.ts +6 -4
- package/dist/components/Accordion/AccordionTypes.d.ts +5 -0
- package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +4 -4
- package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +1 -1
- package/dist/components/Button/Button.d.ts +2 -2
- package/dist/components/Card/Card.d.ts +22 -29
- package/dist/components/Checkbox/Checkbox.d.ts +3 -3
- package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +9 -6
- package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts +5 -6
- package/dist/components/Fieldset/Fieldset.d.ts +5 -6
- package/dist/components/Form/Form.d.ts +6 -6
- package/dist/components/Grid/GridTypes.d.ts +7 -7
- package/dist/components/Grid/SimpleGrid.d.ts +1 -1
- package/dist/components/Heading/Heading.d.ts +5 -5
- package/dist/components/Heading/HeadingTypes.d.ts +1 -1
- package/dist/components/HelperErrorText/HelperErrorText.d.ts +9 -8
- package/dist/components/Hero/Hero.d.ts +9 -5
- package/dist/components/HorizontalRule/HorizontalRule.d.ts +2 -10
- package/dist/components/Icons/Icon.d.ts +2 -1
- package/dist/components/Icons/IconTypes.d.ts +1 -0
- package/dist/components/Image/Image.d.ts +27 -9
- package/dist/components/Image/ImageTypes.d.ts +4 -4
- package/dist/components/Label/Label.d.ts +7 -4
- package/dist/components/Link/Link.d.ts +1 -1
- package/dist/components/List/List.d.ts +11 -11
- package/dist/components/List/ListTypes.d.ts +1 -1
- package/dist/components/Logo/Logo.d.ts +2 -1
- package/dist/components/Logo/LogoSvgs.d.ts +2 -0
- package/dist/components/Logo/LogoTypes.d.ts +4 -2
- package/dist/components/Notification/Notification.d.ts +7 -7
- package/dist/components/Pagination/Pagination.d.ts +2 -2
- package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +3 -3
- package/dist/components/Radio/Radio.d.ts +5 -7
- package/dist/components/RadioGroup/RadioGroup.d.ts +16 -8
- package/dist/components/SearchBar/SearchBar.d.ts +4 -4
- package/dist/components/Select/Select.d.ts +12 -8
- package/dist/components/Select/SelectTypes.d.ts +4 -0
- package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +8 -6
- package/dist/components/SkeletonLoader/SkeletonLoaderTypes.d.ts +0 -4
- package/dist/components/Slider/Slider.d.ts +6 -4
- package/dist/components/StatusBadge/StatusBadge.d.ts +5 -1
- package/dist/components/StructuredContent/StructuredContent.d.ts +10 -23
- package/dist/components/Table/Table.d.ts +1 -1
- package/dist/components/Tabs/Tabs.d.ts +7 -6
- package/dist/components/Template/Template.d.ts +17 -8
- package/dist/components/Text/Text.d.ts +4 -4
- package/dist/components/Text/TextTypes.d.ts +1 -1
- package/dist/components/TextInput/TextInput.d.ts +7 -7
- package/dist/components/Toggle/Toggle.d.ts +8 -10
- package/dist/components/Toggle/{ToggleSizes.d.ts → ToggleTypes.d.ts} +1 -1
- package/dist/components/VideoPlayer/VideoPlayer.d.ts +2 -1
- package/dist/design-system-react-components.cjs.development.js +2075 -1468
- package/dist/design-system-react-components.cjs.development.js.map +1 -1
- package/dist/design-system-react-components.cjs.production.min.js +1 -1
- package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
- package/dist/design-system-react-components.esm.js +2086 -1483
- package/dist/design-system-react-components.esm.js.map +1 -1
- package/dist/helpers/enums.d.ts +4 -0
- package/dist/hooks/useCarouselStyles.d.ts +3 -2
- package/dist/hooks/useNYPLTheme.d.ts +12 -0
- package/dist/index.d.ts +11 -9
- package/dist/styles.css +1 -1
- package/dist/theme/components/accordion.d.ts +7 -12
- package/dist/theme/components/breadcrumb.d.ts +3 -0
- package/dist/theme/components/button.d.ts +10 -2
- package/dist/theme/components/card.d.ts +44 -24
- package/dist/theme/components/checkbox.d.ts +6 -4
- package/dist/theme/components/checkboxGroup.d.ts +4 -2
- package/dist/theme/components/componentWrapper.d.ts +2 -2
- package/dist/theme/components/customTable.d.ts +84 -1
- package/dist/theme/components/fieldset.d.ts +4 -14
- package/dist/theme/components/global.d.ts +25 -18
- package/dist/theme/components/heading.d.ts +53 -0
- package/dist/theme/components/helperErrorText.d.ts +1 -0
- package/dist/theme/components/hero.d.ts +21 -15
- package/dist/theme/components/image.d.ts +1 -1
- package/dist/theme/components/label.d.ts +9 -10
- package/dist/theme/components/list.d.ts +99 -9
- package/dist/theme/components/notification.d.ts +4 -4
- package/dist/theme/components/pagination.d.ts +2 -5
- package/dist/theme/components/radio.d.ts +7 -4
- package/dist/theme/components/radioGroup.d.ts +4 -2
- package/dist/theme/components/select.d.ts +37 -5
- package/dist/theme/components/skeletonLoader.d.ts +2 -2
- package/dist/theme/components/slider.d.ts +6 -3
- package/dist/theme/components/structuredContent.d.ts +197 -0
- package/dist/theme/components/textInput.d.ts +18 -6
- package/dist/theme/components/toggle.d.ts +20 -5
- package/dist/theme/foundations/global.d.ts +2 -0
- package/dist/theme/foundations/radii.d.ts +1 -0
- package/dist/theme/foundations/spacing.d.ts +46 -43
- package/package.json +5 -6
- package/src/components/AccessibilityGuide/SkipNavigation.stories.mdx +34 -0
- package/src/components/Accordion/Accordion.stories.mdx +150 -66
- package/src/components/Accordion/Accordion.test.tsx +65 -17
- package/src/components/Accordion/Accordion.tsx +61 -27
- package/src/components/Accordion/AccordionTypes.tsx +5 -0
- package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +505 -14
- package/src/components/Autosuggest/Autosuggest.stories.mdx +4 -3
- package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +37 -19
- package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +57 -36
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +14 -13
- package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +1 -1
- package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +211 -12
- package/src/components/Button/Button.stories.mdx +87 -23
- package/src/components/Button/Button.test.tsx +25 -0
- package/src/components/Button/Button.tsx +18 -7
- package/src/components/Button/__snapshots__/Button.test.tsx.snap +27 -7
- package/src/components/Card/Card.stories.mdx +493 -329
- package/src/components/Card/Card.test.tsx +138 -18
- package/src/components/Card/Card.tsx +151 -85
- package/src/components/Card/__snapshots__/Card.test.tsx.snap +221 -101
- package/src/components/Chakra/Center.stories.mdx +2 -2
- package/src/components/Chakra/Grid.stories.mdx +4 -4
- package/src/components/Checkbox/Checkbox.stories.mdx +73 -9
- package/src/components/Checkbox/Checkbox.test.tsx +89 -10
- package/src/components/Checkbox/Checkbox.tsx +26 -16
- package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +209 -6
- package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +135 -23
- package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +216 -90
- package/src/components/CheckboxGroup/CheckboxGroup.tsx +39 -26
- package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +493 -89
- package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +12 -0
- package/src/components/ComponentWrapper/ComponentWrapper.tsx +39 -41
- package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +47 -34
- package/src/components/DatePicker/DatePicker.stories.mdx +63 -27
- package/src/components/DatePicker/DatePicker.test.tsx +94 -15
- package/src/components/DatePicker/DatePicker.tsx +67 -58
- package/src/components/DatePicker/_DatePicker.scss +71 -13
- package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +250 -206
- package/src/components/Fieldset/Fieldset.stories.mdx +33 -3
- package/src/components/Fieldset/Fieldset.test.tsx +58 -28
- package/src/components/Fieldset/Fieldset.tsx +35 -30
- package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +40 -19
- package/src/components/Form/Form.stories.mdx +118 -47
- package/src/components/Form/Form.test.tsx +59 -16
- package/src/components/Form/Form.tsx +89 -65
- package/src/components/Form/__snapshots__/Form.test.tsx.snap +83 -5
- package/src/components/Grid/GridTypes.tsx +7 -7
- package/src/components/Grid/SimpleGrid.stories.mdx +87 -41
- package/src/components/Grid/SimpleGrid.test.tsx +24 -9
- package/src/components/Grid/SimpleGrid.tsx +29 -20
- package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +16 -1
- package/src/components/Heading/Heading.stories.mdx +56 -25
- package/src/components/Heading/Heading.test.tsx +17 -7
- package/src/components/Heading/Heading.tsx +60 -58
- package/src/components/Heading/HeadingTypes.tsx +1 -1
- package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +27 -8
- package/src/components/HelperErrorText/HelperErrorText.stories.mdx +64 -42
- package/src/components/HelperErrorText/HelperErrorText.test.tsx +15 -0
- package/src/components/HelperErrorText/HelperErrorText.tsx +40 -35
- package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +35 -4
- package/src/components/Hero/Hero.stories.mdx +143 -113
- package/src/components/Hero/Hero.test.tsx +146 -58
- package/src/components/Hero/Hero.tsx +144 -112
- package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +89 -17
- package/src/components/HorizontalRule/HorizontalRule.stories.mdx +26 -4
- package/src/components/HorizontalRule/HorizontalRule.test.tsx +9 -17
- package/src/components/HorizontalRule/HorizontalRule.tsx +9 -25
- package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +18 -5
- package/src/components/Icons/Icon.stories.mdx +80 -23
- package/src/components/Icons/Icon.test.tsx +51 -2
- package/src/components/Icons/Icon.tsx +93 -71
- package/src/components/Icons/IconTypes.tsx +1 -0
- package/src/components/Icons/__snapshots__/Icon.test.tsx.snap +129 -0
- package/src/components/Image/Image.stories.mdx +160 -71
- package/src/components/Image/Image.test.tsx +40 -48
- package/src/components/Image/Image.tsx +80 -48
- package/src/components/Image/ImageTypes.ts +4 -4
- package/src/components/Image/__snapshots__/Image.test.tsx.snap +84 -21
- package/src/components/Label/Label.stories.mdx +42 -20
- package/src/components/Label/Label.test.tsx +42 -17
- package/src/components/Label/Label.tsx +22 -13
- package/src/components/Label/__snapshots__/Label.test.tsx.snap +19 -15
- package/src/components/Link/Link.stories.mdx +25 -1
- package/src/components/Link/Link.test.tsx +21 -0
- package/src/components/Link/Link.tsx +16 -9
- package/src/components/Link/__snapshots__/Link.test.tsx.snap +37 -11
- package/src/components/List/List.stories.mdx +75 -40
- package/src/components/List/List.test.tsx +73 -22
- package/src/components/List/List.tsx +44 -28
- package/src/components/List/ListTypes.tsx +1 -1
- package/src/components/List/__snapshots__/List.test.tsx.snap +110 -8
- package/src/components/Logo/Logo.stories.mdx +40 -16
- package/src/components/Logo/Logo.test.tsx +29 -2
- package/src/components/Logo/Logo.tsx +28 -11
- package/src/components/Logo/LogoSvgs.tsx +4 -0
- package/src/components/Logo/LogoTypes.tsx +3 -1
- package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +73 -2
- package/src/components/Modal/Modal.stories.mdx +13 -0
- package/src/components/Notification/Notification.stories.mdx +29 -5
- package/src/components/Notification/Notification.test.tsx +23 -0
- package/src/components/Notification/Notification.tsx +53 -51
- package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +158 -29
- package/src/components/Pagination/Pagination.stories.mdx +27 -6
- package/src/components/Pagination/Pagination.test.tsx +55 -2
- package/src/components/Pagination/Pagination.tsx +12 -9
- package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +244 -27
- package/src/components/Placeholder/Placeholder.tsx +3 -1
- package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +76 -10
- package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +87 -13
- package/src/components/ProgressIndicator/ProgressIndicator.tsx +20 -10
- package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +101 -14
- package/src/components/Radio/Radio.stories.mdx +75 -11
- package/src/components/Radio/Radio.test.tsx +83 -9
- package/src/components/Radio/Radio.tsx +70 -62
- package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +163 -5
- package/src/components/RadioGroup/RadioGroup.stories.mdx +293 -94
- package/src/components/RadioGroup/RadioGroup.test.tsx +193 -68
- package/src/components/RadioGroup/RadioGroup.tsx +110 -101
- package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +1258 -902
- package/src/components/SearchBar/SearchBar.stories.mdx +101 -36
- package/src/components/SearchBar/{SearchBar.Test.tsx → SearchBar.test.tsx} +46 -4
- package/src/components/SearchBar/SearchBar.tsx +20 -11
- package/src/components/SearchBar/__snapshots__/SearchBar.test.tsx.snap +1039 -0
- package/src/components/Select/Select.stories.mdx +151 -62
- package/src/components/Select/Select.test.tsx +56 -44
- package/src/components/Select/Select.tsx +125 -104
- package/src/components/Select/SelectTypes.tsx +5 -0
- package/src/components/Select/__snapshots__/Select.test.tsx.snap +749 -409
- package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +53 -23
- package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +14 -8
- package/src/components/SkeletonLoader/SkeletonLoader.tsx +80 -78
- package/src/components/SkeletonLoader/SkeletonLoaderTypes.tsx +0 -5
- package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +169 -10
- package/src/components/Slider/Slider.stories.mdx +123 -41
- package/src/components/Slider/Slider.test.tsx +65 -17
- package/src/components/Slider/Slider.tsx +30 -23
- package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +403 -226
- package/src/components/StatusBadge/StatusBadge.stories.mdx +19 -1
- package/src/components/StatusBadge/StatusBadge.test.tsx +19 -1
- package/src/components/StatusBadge/StatusBadge.tsx +25 -20
- package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +22 -3
- package/src/components/StructuredContent/StructuredContent.stories.mdx +229 -61
- package/src/components/StructuredContent/StructuredContent.test.tsx +162 -101
- package/src/components/StructuredContent/StructuredContent.tsx +98 -103
- package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +102 -17
- package/src/components/StyleGuide/Bidirectionality.stories.mdx +5 -5
- package/src/components/StyleGuide/Breakpoints.stories.mdx +6 -6
- package/src/components/StyleGuide/Buttons.stories.mdx +2 -12
- package/src/components/StyleGuide/ColorCard.tsx +4 -4
- package/src/components/StyleGuide/Colors.stories.mdx +1 -2
- package/src/components/StyleGuide/DesignTokens.stories.mdx +56 -26
- package/src/components/StyleGuide/Forms.stories.mdx +27 -12
- package/src/components/StyleGuide/Iconography.stories.mdx +2 -12
- package/src/components/StyleGuide/Spacing.stories.mdx +80 -41
- package/src/components/StyleGuide/Typography.stories.mdx +47 -33
- package/src/components/Table/Table.stories.mdx +38 -11
- package/src/components/Table/Table.test.tsx +16 -1
- package/src/components/Table/Table.tsx +10 -8
- package/src/components/Table/__snapshots__/Table.test.tsx.snap +408 -5
- package/src/components/Tabs/Tabs.stories.mdx +59 -10
- package/src/components/Tabs/Tabs.test.tsx +29 -11
- package/src/components/Tabs/Tabs.tsx +28 -21
- package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +394 -5
- package/src/components/Template/Template.stories.mdx +73 -32
- package/src/components/Template/Template.test.tsx +68 -5
- package/src/components/Template/Template.tsx +89 -71
- package/src/components/Template/__snapshots__/Template.test.tsx.snap +195 -22
- package/src/components/Text/Text.stories.mdx +32 -15
- package/src/components/Text/Text.test.tsx +14 -11
- package/src/components/Text/Text.tsx +13 -16
- package/src/components/Text/TextTypes.tsx +1 -1
- package/src/components/Text/__snapshots__/Text.test.tsx.snap +21 -4
- package/src/components/TextInput/TextInput.stories.mdx +73 -27
- package/src/components/TextInput/TextInput.test.tsx +65 -50
- package/src/components/TextInput/TextInput.tsx +123 -115
- package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +96 -73
- package/src/components/Toggle/Toggle.stories.mdx +74 -26
- package/src/components/Toggle/Toggle.test.tsx +41 -10
- package/src/components/Toggle/Toggle.tsx +29 -26
- package/src/components/Toggle/{ToggleSizes.tsx → ToggleTypes.tsx} +1 -1
- package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +191 -4
- package/src/components/VideoPlayer/VideoPlayer.stories.mdx +52 -4
- package/src/components/VideoPlayer/VideoPlayer.test.tsx +41 -6
- package/src/components/VideoPlayer/VideoPlayer.tsx +134 -120
- package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +81 -39
- package/src/docs/Chakra.stories.mdx +50 -9
- package/src/docs/Welcome.stories.mdx +168 -0
- package/src/{components/Card/CardTypes.tsx → helpers/enums.ts} +2 -2
- package/src/hooks/tests/useNYPLTheme.test.tsx +1 -1
- package/src/hooks/useCarouselStyles.stories.mdx +30 -0
- package/src/hooks/useCarouselStyles.ts +3 -2
- package/src/hooks/useNYPLTheme.stories.mdx +101 -0
- package/src/hooks/useNYPLTheme.ts +31 -7
- package/src/hooks/useWindowSize.stories.mdx +23 -0
- package/src/index.ts +11 -15
- package/src/styles/base/_place-holder.scss +1 -1
- package/src/theme/components/accordion.ts +7 -12
- package/src/theme/components/breadcrumb.ts +3 -0
- package/src/theme/components/button.ts +15 -7
- package/src/theme/components/card.ts +56 -36
- package/src/theme/components/checkbox.ts +10 -8
- package/src/theme/components/checkboxGroup.ts +4 -2
- package/src/theme/components/componentWrapper.ts +2 -2
- package/src/theme/components/customTable.ts +39 -31
- package/src/theme/components/fieldset.ts +1 -2
- package/src/theme/components/global.ts +29 -23
- package/src/theme/components/heading.ts +1 -1
- package/src/theme/components/helperErrorText.ts +1 -0
- package/src/theme/components/hero.ts +14 -16
- package/src/theme/components/icon.ts +5 -2
- package/src/theme/components/image.ts +1 -1
- package/src/theme/components/label.ts +4 -3
- package/src/theme/components/list.ts +73 -66
- package/src/theme/components/notification.ts +7 -7
- package/src/theme/components/pagination.ts +2 -5
- package/src/theme/components/progressIndicator.ts +3 -3
- package/src/theme/components/radio.ts +9 -9
- package/src/theme/components/radioGroup.ts +4 -2
- package/src/theme/components/select.ts +35 -16
- package/src/theme/components/skeletonLoader.ts +3 -3
- package/src/theme/components/slider.ts +8 -7
- package/src/theme/components/statusBadge.ts +2 -2
- package/src/theme/components/structuredContent.ts +66 -1
- package/src/theme/components/tabs.ts +2 -2
- package/src/theme/components/template.ts +9 -9
- package/src/theme/components/textInput.ts +13 -12
- package/src/theme/components/toggle.ts +43 -13
- package/src/theme/components/videoPlayer.ts +1 -1
- package/src/theme/foundations/colors.ts +1 -1
- package/src/theme/foundations/radii.ts +1 -0
- package/src/theme/foundations/spacing.ts +70 -22
- package/src/theme/foundations/typography.ts +2 -2
- package/src/utils/componentCategories.ts +28 -21
- package/dist/components/Card/CardTypes.d.ts +0 -4
- package/dist/components/CheckboxGroup/CheckboxGroupLayoutTypes.d.ts +0 -4
- package/dist/components/RadioGroup/RadioGroupLayoutTypes.d.ts +0 -4
- package/dist/components/SearchBar/SearchBar.Test.d.ts +0 -1
- package/dist/helpers/generateUUID.d.ts +0 -1
- package/src/components/CheckboxGroup/CheckboxGroupLayoutTypes.tsx +0 -4
- package/src/components/RadioGroup/RadioGroupLayoutTypes.tsx +0 -4
- package/src/docs/Intro.stories.mdx +0 -53
- package/src/helpers/generateUUID.tsx +0 -5
|
@@ -57,12 +57,31 @@ import DSProvider from "../../theme/provider";
|
|
|
57
57
|
| Component Version | DS Version |
|
|
58
58
|
| ----------------- | ---------- |
|
|
59
59
|
| Added | `0.1.0` |
|
|
60
|
-
| Latest | `0.
|
|
60
|
+
| Latest | `0.26.0` |
|
|
61
|
+
|
|
62
|
+
## Table of Contents
|
|
63
|
+
|
|
64
|
+
- [Overview](#overview)
|
|
65
|
+
- [Component Props](#component-props)
|
|
66
|
+
- [Accessibility](#accessibility)
|
|
67
|
+
- [Checked](#checked)
|
|
68
|
+
- [Indeterminate](#indeterminate)
|
|
69
|
+
- [Focused](#focused)
|
|
70
|
+
- [Errored](#errored)
|
|
71
|
+
- [Disabled](#disabled)
|
|
72
|
+
- [Helper Text](#helper-text)
|
|
73
|
+
- [Error Text](#error-text)
|
|
74
|
+
- [With JSX Element Label](#with-jsx-element-label)
|
|
75
|
+
|
|
76
|
+
## Overview
|
|
61
77
|
|
|
62
78
|
<Description of={Checkbox} />
|
|
63
79
|
|
|
64
|
-
This component renders a Checkbox button form element. See below for configuration
|
|
65
|
-
|
|
80
|
+
This component renders a Checkbox button form element. See below for configuration
|
|
81
|
+
information. Note that the `id` property, while optional, will cause an
|
|
82
|
+
accessibility violation if none is present.
|
|
83
|
+
|
|
84
|
+
## Component Props
|
|
66
85
|
|
|
67
86
|
<Canvas withToolbar>
|
|
68
87
|
<Story
|
|
@@ -91,6 +110,24 @@ cause an accessibility violation if none is present.
|
|
|
91
110
|
|
|
92
111
|
<ArgsTable story="Checkbox" />
|
|
93
112
|
|
|
113
|
+
## Accessibility
|
|
114
|
+
|
|
115
|
+
The `Checkbox` component renders `<label>` and `<input type="checkbox" />`
|
|
116
|
+
elements that are associated with each other; the label has a `for` attribute
|
|
117
|
+
with the value of the `input`'s `id` element. If there is helper or invalid text,
|
|
118
|
+
the `<input>` element will have a `aria-describedby` attribute with the value of
|
|
119
|
+
the helper or invalid text.
|
|
120
|
+
|
|
121
|
+
When `showLabel` is set to false, the `labelText` value will be set to the
|
|
122
|
+
`<input>`'s `aria-label` attribute.
|
|
123
|
+
|
|
124
|
+
Resources:
|
|
125
|
+
|
|
126
|
+
- [W3C WAI ARIA Checkbox Example](https://www.w3.org/TR/wai-aria-practices-1.1/examples/checkbox/checkbox-1/checkbox-1.html)
|
|
127
|
+
- [a11ymatters Accessible Checkbox](https://www.a11ymatters.com/pattern/checkbox/)
|
|
128
|
+
- [MDN ARIA: checkbox role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/checkbox_role)
|
|
129
|
+
- [Chakra UI Checkbox](https://chakra-ui.com/docs/components/form/checkbox)
|
|
130
|
+
|
|
94
131
|
## Checked
|
|
95
132
|
|
|
96
133
|
Note that the `isChecked` property in this example is set to `true` and clicking
|
|
@@ -123,7 +160,10 @@ now be controlled and removed by the parent component in order to remove this st
|
|
|
123
160
|
|
|
124
161
|
<Canvas>
|
|
125
162
|
<DSProvider>
|
|
126
|
-
<Checkbox
|
|
163
|
+
<Checkbox
|
|
164
|
+
id="focused"
|
|
165
|
+
labelText="Click or tab to the Checkbox to see its focus state"
|
|
166
|
+
/>
|
|
127
167
|
</DSProvider>
|
|
128
168
|
</Canvas>
|
|
129
169
|
|
|
@@ -132,8 +172,9 @@ now be controlled and removed by the parent component in order to remove this st
|
|
|
132
172
|
<Canvas>
|
|
133
173
|
<DSProvider>
|
|
134
174
|
<HStack>
|
|
135
|
-
<Checkbox isInvalid labelText="I am in an error state" />
|
|
175
|
+
<Checkbox id="invalid" isInvalid labelText="I am in an error state" />
|
|
136
176
|
<Checkbox
|
|
177
|
+
id="invalid-checked"
|
|
137
178
|
isInvalid
|
|
138
179
|
isChecked
|
|
139
180
|
labelText="I am checked in an error state"
|
|
@@ -147,8 +188,13 @@ now be controlled and removed by the parent component in order to remove this st
|
|
|
147
188
|
<Canvas>
|
|
148
189
|
<DSProvider>
|
|
149
190
|
<HStack>
|
|
150
|
-
<Checkbox isDisabled labelText="I am disabled" />
|
|
151
|
-
<Checkbox
|
|
191
|
+
<Checkbox id="disabled" isDisabled labelText="I am disabled" />
|
|
192
|
+
<Checkbox
|
|
193
|
+
id="disabled-checked"
|
|
194
|
+
isDisabled
|
|
195
|
+
isChecked
|
|
196
|
+
labelText="I am checked and disabled"
|
|
197
|
+
/>
|
|
152
198
|
</HStack>
|
|
153
199
|
</DSProvider>
|
|
154
200
|
</Canvas>
|
|
@@ -158,6 +204,7 @@ now be controlled and removed by the parent component in order to remove this st
|
|
|
158
204
|
<Canvas>
|
|
159
205
|
<DSProvider>
|
|
160
206
|
<Checkbox
|
|
207
|
+
id="helpertext"
|
|
161
208
|
name="testHelperText"
|
|
162
209
|
labelText="I have helper text"
|
|
163
210
|
helperText="I am the helper text for this Checkbox"
|
|
@@ -170,10 +217,27 @@ now be controlled and removed by the parent component in order to remove this st
|
|
|
170
217
|
<Canvas>
|
|
171
218
|
<DSProvider>
|
|
172
219
|
<Checkbox
|
|
173
|
-
|
|
174
|
-
labelText="I have error text"
|
|
220
|
+
id="invalid-text"
|
|
175
221
|
invalidText="I am the error text for this Checkbox"
|
|
176
222
|
isInvalid
|
|
223
|
+
name="testinvalidText"
|
|
224
|
+
labelText="I have error text"
|
|
225
|
+
/>
|
|
226
|
+
</DSProvider>
|
|
227
|
+
</Canvas>
|
|
228
|
+
|
|
229
|
+
## With JSX Element Label
|
|
230
|
+
|
|
231
|
+
This is useful when you want to add dynamic content to the label or add
|
|
232
|
+
a layout to the label. View the `CheckboxGroup` documentation for this
|
|
233
|
+
usage.
|
|
234
|
+
|
|
235
|
+
<Canvas>
|
|
236
|
+
<DSProvider>
|
|
237
|
+
<Checkbox
|
|
238
|
+
id="jsx-label"
|
|
239
|
+
labelText={<span>Arts</span>}
|
|
240
|
+
name="jsxElementLabel"
|
|
177
241
|
/>
|
|
178
242
|
</DSProvider>
|
|
179
243
|
</Canvas>
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
+
import { Flex, Spacer } from "@chakra-ui/react";
|
|
1
2
|
import * as React from "react";
|
|
2
3
|
import { render, screen } from "@testing-library/react";
|
|
3
4
|
import userEvent from "@testing-library/user-event";
|
|
4
5
|
import { axe } from "jest-axe";
|
|
5
6
|
import renderer from "react-test-renderer";
|
|
6
|
-
|
|
7
|
+
|
|
7
8
|
import Checkbox from "./Checkbox";
|
|
8
9
|
|
|
9
10
|
describe("Checkbox Accessibility", () => {
|
|
10
|
-
it("
|
|
11
|
+
it("passes axe accessibility test with string label", async () => {
|
|
11
12
|
const { container } = render(
|
|
12
13
|
<Checkbox
|
|
13
14
|
id="inputID"
|
|
@@ -18,15 +19,30 @@ describe("Checkbox Accessibility", () => {
|
|
|
18
19
|
);
|
|
19
20
|
expect(await axe(container)).toHaveNoViolations();
|
|
20
21
|
});
|
|
22
|
+
|
|
23
|
+
it("passes axe accessibility test with jsx label", async () => {
|
|
24
|
+
const { container } = render(
|
|
25
|
+
<Checkbox
|
|
26
|
+
id="jsxLabel"
|
|
27
|
+
labelText={
|
|
28
|
+
<Flex>
|
|
29
|
+
<span>Arts</span>
|
|
30
|
+
<Spacer />
|
|
31
|
+
<span>4</span>
|
|
32
|
+
</Flex>
|
|
33
|
+
}
|
|
34
|
+
value="arts"
|
|
35
|
+
/>
|
|
36
|
+
);
|
|
37
|
+
expect(await axe(container)).toHaveNoViolations();
|
|
38
|
+
});
|
|
21
39
|
});
|
|
22
40
|
|
|
23
41
|
describe("Checkbox", () => {
|
|
24
42
|
let changeHandler;
|
|
25
|
-
let generateUUIDSpy;
|
|
26
43
|
|
|
27
44
|
beforeEach(() => {
|
|
28
45
|
changeHandler = jest.fn();
|
|
29
|
-
generateUUIDSpy = jest.spyOn(generateUUID, "default");
|
|
30
46
|
});
|
|
31
47
|
|
|
32
48
|
it("Renders with a checkbox input and label", () => {
|
|
@@ -91,12 +107,6 @@ describe("Checkbox", () => {
|
|
|
91
107
|
expect(screen.getByRole("checkbox")).toHaveAttribute("id", "inputID");
|
|
92
108
|
});
|
|
93
109
|
|
|
94
|
-
it("Calls the UUID generation function if no id prop value is passed", () => {
|
|
95
|
-
expect(generateUUIDSpy).toHaveBeenCalledTimes(0);
|
|
96
|
-
render(<Checkbox labelText="Test Label" />);
|
|
97
|
-
expect(generateUUIDSpy).toHaveBeenCalledTimes(1);
|
|
98
|
-
});
|
|
99
|
-
|
|
100
110
|
it("Sets the 'checked' attribute", () => {
|
|
101
111
|
render(
|
|
102
112
|
<Checkbox
|
|
@@ -195,6 +205,38 @@ describe("Checkbox", () => {
|
|
|
195
205
|
expect(changeHandler).toHaveBeenCalledTimes(1);
|
|
196
206
|
});
|
|
197
207
|
|
|
208
|
+
it("logs a warning if `labelText` is not a string and `showLabel` is false", () => {
|
|
209
|
+
const warn = jest.spyOn(console, "warn");
|
|
210
|
+
render(
|
|
211
|
+
<Checkbox
|
|
212
|
+
id="checkbox"
|
|
213
|
+
value="arts"
|
|
214
|
+
labelText={
|
|
215
|
+
<Flex>
|
|
216
|
+
<span>Arts</span>
|
|
217
|
+
<Spacer />
|
|
218
|
+
<span>4</span>
|
|
219
|
+
</Flex>
|
|
220
|
+
}
|
|
221
|
+
showLabel={false}
|
|
222
|
+
/>
|
|
223
|
+
);
|
|
224
|
+
|
|
225
|
+
expect(warn).toHaveBeenCalledWith(
|
|
226
|
+
"NYPL Reservoir Checkbox: `labelText` must be a string when `showLabel` is false."
|
|
227
|
+
);
|
|
228
|
+
});
|
|
229
|
+
|
|
230
|
+
it("Logs a warning when there is no `id` passed", () => {
|
|
231
|
+
const warn = jest.spyOn(console, "warn");
|
|
232
|
+
// @ts-ignore: Typescript complains when a required prop is not passed, but
|
|
233
|
+
// here we don't want to pass the required prop to make sure the warning appears.
|
|
234
|
+
render(<Checkbox labelText="checkbox" />);
|
|
235
|
+
expect(warn).toHaveBeenCalledWith(
|
|
236
|
+
"NYPL Reservoir Checkbox: This component's required `id` prop was not passed."
|
|
237
|
+
);
|
|
238
|
+
});
|
|
239
|
+
|
|
198
240
|
it("Renders the UI snapshot correctly", () => {
|
|
199
241
|
const primary = renderer
|
|
200
242
|
.create(<Checkbox id="inputID" labelText="Test Label" />)
|
|
@@ -229,6 +271,40 @@ describe("Checkbox", () => {
|
|
|
229
271
|
<Checkbox id="checkbox-disabled" labelText="Test Label" isDisabled />
|
|
230
272
|
)
|
|
231
273
|
.toJSON();
|
|
274
|
+
const withJSXLabel = renderer
|
|
275
|
+
.create(
|
|
276
|
+
<Checkbox
|
|
277
|
+
id="jsxLabel"
|
|
278
|
+
labelText={
|
|
279
|
+
<Flex>
|
|
280
|
+
<span>Arts</span>
|
|
281
|
+
<Spacer />
|
|
282
|
+
<span>4</span>
|
|
283
|
+
</Flex>
|
|
284
|
+
}
|
|
285
|
+
value="arts"
|
|
286
|
+
/>
|
|
287
|
+
)
|
|
288
|
+
.toJSON();
|
|
289
|
+
const withChakraProps = renderer
|
|
290
|
+
.create(
|
|
291
|
+
<Checkbox
|
|
292
|
+
id="checkbox-chakra"
|
|
293
|
+
labelText="Test Label"
|
|
294
|
+
p="s"
|
|
295
|
+
color="ui.error.primary"
|
|
296
|
+
/>
|
|
297
|
+
)
|
|
298
|
+
.toJSON();
|
|
299
|
+
const withOtherProps = renderer
|
|
300
|
+
.create(
|
|
301
|
+
<Checkbox
|
|
302
|
+
id="checkbox-props"
|
|
303
|
+
labelText="Test Label"
|
|
304
|
+
data-testid="testid"
|
|
305
|
+
/>
|
|
306
|
+
)
|
|
307
|
+
.toJSON();
|
|
232
308
|
|
|
233
309
|
expect(primary).toMatchSnapshot();
|
|
234
310
|
expect(isChecked).toMatchSnapshot();
|
|
@@ -236,5 +312,8 @@ describe("Checkbox", () => {
|
|
|
236
312
|
expect(isRequired).toMatchSnapshot();
|
|
237
313
|
expect(isInvalid).toMatchSnapshot();
|
|
238
314
|
expect(isDisabled).toMatchSnapshot();
|
|
315
|
+
expect(withJSXLabel).toMatchSnapshot();
|
|
316
|
+
expect(withChakraProps).toMatchSnapshot();
|
|
317
|
+
expect(withOtherProps).toMatchSnapshot();
|
|
239
318
|
});
|
|
240
319
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
2
|
+
chakra,
|
|
3
3
|
Checkbox as ChakraCheckbox,
|
|
4
4
|
Icon,
|
|
5
5
|
useMultiStyleConfig,
|
|
@@ -9,15 +9,13 @@ import * as React from "react";
|
|
|
9
9
|
import HelperErrorText, {
|
|
10
10
|
HelperErrorTextType,
|
|
11
11
|
} from "../HelperErrorText/HelperErrorText";
|
|
12
|
-
import generateUUID from "../../helpers/generateUUID";
|
|
13
|
-
|
|
14
12
|
export interface CheckboxProps {
|
|
15
13
|
/** className you can add in addition to 'input' */
|
|
16
14
|
className?: string;
|
|
17
15
|
/** Optional string to populate the HelperErrorText for standard state */
|
|
18
16
|
helperText?: HelperErrorTextType;
|
|
19
17
|
/** ID that other components can cross reference for accessibility purposes */
|
|
20
|
-
id
|
|
18
|
+
id: string;
|
|
21
19
|
/** Optional string to populate the HelperErrorText for the error state
|
|
22
20
|
* when `isInvalid` is true. */
|
|
23
21
|
invalidText?: HelperErrorTextType;
|
|
@@ -38,7 +36,7 @@ export interface CheckboxProps {
|
|
|
38
36
|
isRequired?: boolean;
|
|
39
37
|
/** The checkbox's label. This will serve as the text content for a `<label>`
|
|
40
38
|
* element if `showlabel` is true, or an "aria-label" if `showLabel` is false. */
|
|
41
|
-
labelText: string;
|
|
39
|
+
labelText: string | JSX.Element;
|
|
42
40
|
/** The name prop indicates into which group of checkboxes this checkbox
|
|
43
41
|
* belongs. If none is specified, 'default' will be used */
|
|
44
42
|
name?: string;
|
|
@@ -73,13 +71,13 @@ function CheckboxIcon(props) {
|
|
|
73
71
|
);
|
|
74
72
|
}
|
|
75
73
|
|
|
76
|
-
const Checkbox =
|
|
77
|
-
(props, ref?) => {
|
|
74
|
+
export const Checkbox = chakra(
|
|
75
|
+
React.forwardRef<HTMLInputElement, CheckboxProps>((props, ref?) => {
|
|
78
76
|
const {
|
|
79
77
|
className,
|
|
80
78
|
invalidText,
|
|
81
79
|
helperText,
|
|
82
|
-
id
|
|
80
|
+
id,
|
|
83
81
|
isChecked,
|
|
84
82
|
isDisabled = false,
|
|
85
83
|
isIndeterminate = false,
|
|
@@ -90,6 +88,7 @@ const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(
|
|
|
90
88
|
showHelperInvalidText = true,
|
|
91
89
|
showLabel = true,
|
|
92
90
|
value,
|
|
91
|
+
...rest
|
|
93
92
|
} = props;
|
|
94
93
|
const styles = useMultiStyleConfig("Checkbox", {});
|
|
95
94
|
const footnote: HelperErrorTextType = isInvalid ? invalidText : helperText;
|
|
@@ -98,7 +97,18 @@ const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(
|
|
|
98
97
|
// Use Chakra's default indeterminate icon.
|
|
99
98
|
const icon = !isIndeterminate ? <CheckboxIcon /> : undefined;
|
|
100
99
|
|
|
100
|
+
if (!id) {
|
|
101
|
+
console.warn(
|
|
102
|
+
"NYPL Reservoir Checkbox: This component's required `id` prop was not passed."
|
|
103
|
+
);
|
|
104
|
+
}
|
|
105
|
+
|
|
101
106
|
if (!showLabel) {
|
|
107
|
+
if (typeof labelText !== "string") {
|
|
108
|
+
console.warn(
|
|
109
|
+
"NYPL Reservoir Checkbox: `labelText` must be a string when `showLabel` is false."
|
|
110
|
+
);
|
|
111
|
+
}
|
|
102
112
|
ariaAttributes["aria-label"] =
|
|
103
113
|
labelText && footnote ? `${labelText} - ${footnote}` : labelText;
|
|
104
114
|
} else {
|
|
@@ -129,21 +139,21 @@ const Checkbox = React.forwardRef<HTMLInputElement, CheckboxProps>(
|
|
|
129
139
|
alignItems="flex-start"
|
|
130
140
|
__css={styles}
|
|
131
141
|
{...ariaAttributes}
|
|
142
|
+
{...rest}
|
|
132
143
|
>
|
|
133
144
|
{showLabel && labelText}
|
|
134
145
|
</ChakraCheckbox>
|
|
135
146
|
{footnote && showHelperInvalidText && (
|
|
136
|
-
<
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
</Box>
|
|
147
|
+
<HelperErrorText
|
|
148
|
+
additionalStyles={styles.helperErrorText}
|
|
149
|
+
id={`${id}-helperText`}
|
|
150
|
+
isInvalid={isInvalid}
|
|
151
|
+
text={footnote}
|
|
152
|
+
/>
|
|
143
153
|
)}
|
|
144
154
|
</>
|
|
145
155
|
);
|
|
146
|
-
}
|
|
156
|
+
})
|
|
147
157
|
);
|
|
148
158
|
|
|
149
159
|
export default Checkbox;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
exports[`Checkbox Renders the UI snapshot correctly 1`] = `
|
|
4
4
|
<label
|
|
5
|
-
className="chakra-checkbox css-
|
|
5
|
+
className="chakra-checkbox css-scawxr"
|
|
6
6
|
onClick={[Function]}
|
|
7
7
|
>
|
|
8
8
|
<input
|
|
@@ -65,7 +65,7 @@ exports[`Checkbox Renders the UI snapshot correctly 1`] = `
|
|
|
65
65
|
|
|
66
66
|
exports[`Checkbox Renders the UI snapshot correctly 2`] = `
|
|
67
67
|
<label
|
|
68
|
-
className="chakra-checkbox css-
|
|
68
|
+
className="chakra-checkbox css-scawxr"
|
|
69
69
|
data-checked=""
|
|
70
70
|
onClick={[Function]}
|
|
71
71
|
>
|
|
@@ -131,7 +131,7 @@ exports[`Checkbox Renders the UI snapshot correctly 2`] = `
|
|
|
131
131
|
|
|
132
132
|
exports[`Checkbox Renders the UI snapshot correctly 3`] = `
|
|
133
133
|
<label
|
|
134
|
-
className="chakra-checkbox css-
|
|
134
|
+
className="chakra-checkbox css-scawxr"
|
|
135
135
|
data-checked=""
|
|
136
136
|
onClick={[Function]}
|
|
137
137
|
>
|
|
@@ -219,7 +219,7 @@ exports[`Checkbox Renders the UI snapshot correctly 3`] = `
|
|
|
219
219
|
|
|
220
220
|
exports[`Checkbox Renders the UI snapshot correctly 4`] = `
|
|
221
221
|
<label
|
|
222
|
-
className="chakra-checkbox css-
|
|
222
|
+
className="chakra-checkbox css-scawxr"
|
|
223
223
|
onClick={[Function]}
|
|
224
224
|
>
|
|
225
225
|
<input
|
|
@@ -282,7 +282,7 @@ exports[`Checkbox Renders the UI snapshot correctly 4`] = `
|
|
|
282
282
|
|
|
283
283
|
exports[`Checkbox Renders the UI snapshot correctly 5`] = `
|
|
284
284
|
<label
|
|
285
|
-
className="chakra-checkbox css-
|
|
285
|
+
className="chakra-checkbox css-scawxr"
|
|
286
286
|
data-invalid=""
|
|
287
287
|
onClick={[Function]}
|
|
288
288
|
>
|
|
@@ -348,7 +348,7 @@ exports[`Checkbox Renders the UI snapshot correctly 5`] = `
|
|
|
348
348
|
|
|
349
349
|
exports[`Checkbox Renders the UI snapshot correctly 6`] = `
|
|
350
350
|
<label
|
|
351
|
-
className="chakra-checkbox css-
|
|
351
|
+
className="chakra-checkbox css-scawxr"
|
|
352
352
|
data-disabled=""
|
|
353
353
|
onClick={[Function]}
|
|
354
354
|
>
|
|
@@ -411,3 +411,206 @@ exports[`Checkbox Renders the UI snapshot correctly 6`] = `
|
|
|
411
411
|
</span>
|
|
412
412
|
</label>
|
|
413
413
|
`;
|
|
414
|
+
|
|
415
|
+
exports[`Checkbox Renders the UI snapshot correctly 7`] = `
|
|
416
|
+
<label
|
|
417
|
+
className="chakra-checkbox css-scawxr"
|
|
418
|
+
onClick={[Function]}
|
|
419
|
+
>
|
|
420
|
+
<input
|
|
421
|
+
aria-disabled={false}
|
|
422
|
+
aria-invalid={false}
|
|
423
|
+
checked={false}
|
|
424
|
+
className="chakra-checkbox__input"
|
|
425
|
+
disabled={false}
|
|
426
|
+
id="jsxLabel"
|
|
427
|
+
name="default"
|
|
428
|
+
onBlur={[Function]}
|
|
429
|
+
onChange={[Function]}
|
|
430
|
+
onFocus={[Function]}
|
|
431
|
+
onKeyDown={[Function]}
|
|
432
|
+
onKeyUp={[Function]}
|
|
433
|
+
required={false}
|
|
434
|
+
style={
|
|
435
|
+
Object {
|
|
436
|
+
"border": "0px",
|
|
437
|
+
"clip": "rect(0px, 0px, 0px, 0px)",
|
|
438
|
+
"height": "1px",
|
|
439
|
+
"margin": "-1px",
|
|
440
|
+
"overflow": "hidden",
|
|
441
|
+
"padding": "0px",
|
|
442
|
+
"position": "absolute",
|
|
443
|
+
"whiteSpace": "nowrap",
|
|
444
|
+
"width": "1px",
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
type="checkbox"
|
|
448
|
+
value="arts"
|
|
449
|
+
/>
|
|
450
|
+
<span
|
|
451
|
+
aria-hidden={true}
|
|
452
|
+
className="chakra-checkbox__control css-dnty2r"
|
|
453
|
+
onMouseDown={[Function]}
|
|
454
|
+
onMouseEnter={[Function]}
|
|
455
|
+
onMouseLeave={[Function]}
|
|
456
|
+
onMouseUp={[Function]}
|
|
457
|
+
>
|
|
458
|
+
<svg
|
|
459
|
+
className="chakra-icon css-1vfv7ic"
|
|
460
|
+
focusable={false}
|
|
461
|
+
viewBox="0 0 24 24"
|
|
462
|
+
>
|
|
463
|
+
<path
|
|
464
|
+
d="M8.795 15.875l-4.17-4.17-1.42 1.41 5.59 5.59 12-12-1.41-1.41-10.59 10.58z"
|
|
465
|
+
fill="currentColor"
|
|
466
|
+
/>
|
|
467
|
+
</svg>
|
|
468
|
+
</span>
|
|
469
|
+
<span
|
|
470
|
+
className="chakra-checkbox__label css-1oeb2oe"
|
|
471
|
+
onMouseDown={[Function]}
|
|
472
|
+
onTouchStart={[Function]}
|
|
473
|
+
>
|
|
474
|
+
<div
|
|
475
|
+
className="css-k008qs"
|
|
476
|
+
>
|
|
477
|
+
<span>
|
|
478
|
+
Arts
|
|
479
|
+
</span>
|
|
480
|
+
<div
|
|
481
|
+
className="css-17xejub"
|
|
482
|
+
/>
|
|
483
|
+
<span>
|
|
484
|
+
4
|
|
485
|
+
</span>
|
|
486
|
+
</div>
|
|
487
|
+
</span>
|
|
488
|
+
</label>
|
|
489
|
+
`;
|
|
490
|
+
|
|
491
|
+
exports[`Checkbox Renders the UI snapshot correctly 8`] = `
|
|
492
|
+
<label
|
|
493
|
+
className="chakra-checkbox css-wkfjn4"
|
|
494
|
+
onClick={[Function]}
|
|
495
|
+
>
|
|
496
|
+
<input
|
|
497
|
+
aria-disabled={false}
|
|
498
|
+
aria-invalid={false}
|
|
499
|
+
checked={false}
|
|
500
|
+
className="chakra-checkbox__input"
|
|
501
|
+
disabled={false}
|
|
502
|
+
id="checkbox-chakra"
|
|
503
|
+
name="default"
|
|
504
|
+
onBlur={[Function]}
|
|
505
|
+
onChange={[Function]}
|
|
506
|
+
onFocus={[Function]}
|
|
507
|
+
onKeyDown={[Function]}
|
|
508
|
+
onKeyUp={[Function]}
|
|
509
|
+
required={false}
|
|
510
|
+
style={
|
|
511
|
+
Object {
|
|
512
|
+
"border": "0px",
|
|
513
|
+
"clip": "rect(0px, 0px, 0px, 0px)",
|
|
514
|
+
"height": "1px",
|
|
515
|
+
"margin": "-1px",
|
|
516
|
+
"overflow": "hidden",
|
|
517
|
+
"padding": "0px",
|
|
518
|
+
"position": "absolute",
|
|
519
|
+
"whiteSpace": "nowrap",
|
|
520
|
+
"width": "1px",
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
type="checkbox"
|
|
524
|
+
/>
|
|
525
|
+
<span
|
|
526
|
+
aria-hidden={true}
|
|
527
|
+
className="chakra-checkbox__control css-dnty2r"
|
|
528
|
+
onMouseDown={[Function]}
|
|
529
|
+
onMouseEnter={[Function]}
|
|
530
|
+
onMouseLeave={[Function]}
|
|
531
|
+
onMouseUp={[Function]}
|
|
532
|
+
>
|
|
533
|
+
<svg
|
|
534
|
+
className="chakra-icon css-1vfv7ic"
|
|
535
|
+
focusable={false}
|
|
536
|
+
viewBox="0 0 24 24"
|
|
537
|
+
>
|
|
538
|
+
<path
|
|
539
|
+
d="M8.795 15.875l-4.17-4.17-1.42 1.41 5.59 5.59 12-12-1.41-1.41-10.59 10.58z"
|
|
540
|
+
fill="currentColor"
|
|
541
|
+
/>
|
|
542
|
+
</svg>
|
|
543
|
+
</span>
|
|
544
|
+
<span
|
|
545
|
+
className="chakra-checkbox__label css-1oeb2oe"
|
|
546
|
+
onMouseDown={[Function]}
|
|
547
|
+
onTouchStart={[Function]}
|
|
548
|
+
>
|
|
549
|
+
Test Label
|
|
550
|
+
</span>
|
|
551
|
+
</label>
|
|
552
|
+
`;
|
|
553
|
+
|
|
554
|
+
exports[`Checkbox Renders the UI snapshot correctly 9`] = `
|
|
555
|
+
<label
|
|
556
|
+
className="chakra-checkbox css-scawxr"
|
|
557
|
+
data-testid="testid"
|
|
558
|
+
onClick={[Function]}
|
|
559
|
+
>
|
|
560
|
+
<input
|
|
561
|
+
aria-disabled={false}
|
|
562
|
+
aria-invalid={false}
|
|
563
|
+
checked={false}
|
|
564
|
+
className="chakra-checkbox__input"
|
|
565
|
+
disabled={false}
|
|
566
|
+
id="checkbox-props"
|
|
567
|
+
name="default"
|
|
568
|
+
onBlur={[Function]}
|
|
569
|
+
onChange={[Function]}
|
|
570
|
+
onFocus={[Function]}
|
|
571
|
+
onKeyDown={[Function]}
|
|
572
|
+
onKeyUp={[Function]}
|
|
573
|
+
required={false}
|
|
574
|
+
style={
|
|
575
|
+
Object {
|
|
576
|
+
"border": "0px",
|
|
577
|
+
"clip": "rect(0px, 0px, 0px, 0px)",
|
|
578
|
+
"height": "1px",
|
|
579
|
+
"margin": "-1px",
|
|
580
|
+
"overflow": "hidden",
|
|
581
|
+
"padding": "0px",
|
|
582
|
+
"position": "absolute",
|
|
583
|
+
"whiteSpace": "nowrap",
|
|
584
|
+
"width": "1px",
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
type="checkbox"
|
|
588
|
+
/>
|
|
589
|
+
<span
|
|
590
|
+
aria-hidden={true}
|
|
591
|
+
className="chakra-checkbox__control css-dnty2r"
|
|
592
|
+
onMouseDown={[Function]}
|
|
593
|
+
onMouseEnter={[Function]}
|
|
594
|
+
onMouseLeave={[Function]}
|
|
595
|
+
onMouseUp={[Function]}
|
|
596
|
+
>
|
|
597
|
+
<svg
|
|
598
|
+
className="chakra-icon css-1vfv7ic"
|
|
599
|
+
focusable={false}
|
|
600
|
+
viewBox="0 0 24 24"
|
|
601
|
+
>
|
|
602
|
+
<path
|
|
603
|
+
d="M8.795 15.875l-4.17-4.17-1.42 1.41 5.59 5.59 12-12-1.41-1.41-10.59 10.58z"
|
|
604
|
+
fill="currentColor"
|
|
605
|
+
/>
|
|
606
|
+
</svg>
|
|
607
|
+
</span>
|
|
608
|
+
<span
|
|
609
|
+
className="chakra-checkbox__label css-1oeb2oe"
|
|
610
|
+
onMouseDown={[Function]}
|
|
611
|
+
onTouchStart={[Function]}
|
|
612
|
+
>
|
|
613
|
+
Test Label
|
|
614
|
+
</span>
|
|
615
|
+
</label>
|
|
616
|
+
`;
|