@nypl/design-system-react-components 1.0.2 → 1.0.3-beta
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/README.md +0 -2
- package/dist/components/Slider/Slider.d.ts +1 -2
- package/dist/components/TextInput/TextInput.d.ts +2 -1
- package/dist/design-system-react-components.cjs.development.js +33 -10
- 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 +33 -10
- package/dist/design-system-react-components.esm.js.map +1 -1
- package/dist/hooks/{tests → __tests__}/useCarouselStyles.test.d.ts +0 -0
- package/dist/theme/components/global.d.ts +1 -1
- package/dist/theme/components/radio.d.ts +8 -0
- package/dist/theme/components/template.d.ts +4 -1
- package/package.json +2 -3
- package/CHANGELOG.md +0 -1430
- package/src/__tests__/fileMock.ts +0 -6
- package/src/__tests__/setup.ts +0 -27
- package/src/__tests__/utils/utils.test.ts +0 -18
- package/src/components/AccessibilityGuide/SkipNavigation.stories.mdx +0 -42
- package/src/components/Accordion/Accordion.stories.mdx +0 -333
- package/src/components/Accordion/Accordion.test.tsx +0 -237
- package/src/components/Accordion/Accordion.tsx +0 -137
- package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +0 -734
- package/src/components/Autosuggest/Autosuggest.stories.mdx +0 -75
- package/src/components/Autosuggest/Autosuggest.stories.tsx +0 -211
- package/src/components/Autosuggest/_Autosuggest.scss +0 -51
- package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +0 -231
- package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +0 -144
- package/src/components/Breadcrumbs/Breadcrumbs.tsx +0 -98
- package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +0 -695
- package/src/components/Button/Button.stories.mdx +0 -320
- package/src/components/Button/Button.test.tsx +0 -184
- package/src/components/Button/Button.tsx +0 -95
- package/src/components/Button/__snapshots__/Button.test.tsx.snap +0 -106
- package/src/components/ButtonGroup/ButtonGroup.stories.mdx +0 -178
- package/src/components/ButtonGroup/ButtonGroup.test.tsx +0 -141
- package/src/components/ButtonGroup/ButtonGroup.tsx +0 -100
- package/src/components/ButtonGroup/__snapshots__/ButtonGroup.test.tsx.snap +0 -117
- package/src/components/Card/Card.stories.mdx +0 -1041
- package/src/components/Card/Card.test.tsx +0 -388
- package/src/components/Card/Card.tsx +0 -346
- package/src/components/Card/__snapshots__/Card.test.tsx.snap +0 -568
- package/src/components/Chakra/Box.stories.mdx +0 -52
- package/src/components/Chakra/Center.stories.mdx +0 -96
- package/src/components/Chakra/Flex.stories.mdx +0 -111
- package/src/components/Chakra/Grid.stories.mdx +0 -89
- package/src/components/Chakra/Stack.stories.mdx +0 -109
- package/src/components/Checkbox/Checkbox.stories.mdx +0 -243
- package/src/components/Checkbox/Checkbox.test.tsx +0 -350
- package/src/components/Checkbox/Checkbox.tsx +0 -152
- package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +0 -661
- package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +0 -462
- package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +0 -492
- package/src/components/CheckboxGroup/CheckboxGroup.tsx +0 -173
- package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +0 -1842
- package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +0 -163
- package/src/components/ComponentWrapper/ComponentWrapper.tsx +0 -76
- package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +0 -103
- package/src/components/DatePicker/DatePicker.stories.mdx +0 -452
- package/src/components/DatePicker/DatePicker.test.tsx +0 -940
- package/src/components/DatePicker/DatePicker.tsx +0 -450
- package/src/components/DatePicker/_DatePicker.scss +0 -100
- package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +0 -908
- package/src/components/Fieldset/Fieldset.stories.mdx +0 -96
- package/src/components/Fieldset/Fieldset.test.tsx +0 -155
- package/src/components/Fieldset/Fieldset.tsx +0 -55
- package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +0 -89
- package/src/components/Form/Form.stories.mdx +0 -426
- package/src/components/Form/Form.test.tsx +0 -234
- package/src/components/Form/Form.tsx +0 -124
- package/src/components/Form/__snapshots__/Form.test.tsx.snap +0 -115
- package/src/components/Grid/SimpleGrid.stories.mdx +0 -336
- package/src/components/Grid/SimpleGrid.test.tsx +0 -79
- package/src/components/Grid/SimpleGrid.tsx +0 -49
- package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +0 -23
- package/src/components/Heading/Heading.stories.mdx +0 -187
- package/src/components/Heading/Heading.test.tsx +0 -171
- package/src/components/Heading/Heading.tsx +0 -104
- package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +0 -90
- package/src/components/HelperErrorText/HelperErrorText.stories.mdx +0 -172
- package/src/components/HelperErrorText/HelperErrorText.test.tsx +0 -114
- package/src/components/HelperErrorText/HelperErrorText.tsx +0 -62
- package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +0 -93
- package/src/components/Hero/Hero.stories.mdx +0 -378
- package/src/components/Hero/Hero.test.tsx +0 -611
- package/src/components/Hero/Hero.tsx +0 -203
- package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +0 -379
- package/src/components/HorizontalRule/HorizontalRule.stories.mdx +0 -73
- package/src/components/HorizontalRule/HorizontalRule.test.tsx +0 -54
- package/src/components/HorizontalRule/HorizontalRule.tsx +0 -27
- package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +0 -44
- package/src/components/Icons/Icon.stories.mdx +0 -413
- package/src/components/Icons/Icon.test.tsx +0 -120
- package/src/components/Icons/Icon.tsx +0 -187
- package/src/components/Icons/IconSvgs.tsx +0 -64
- package/src/components/Icons/__snapshots__/Icon.test.tsx.snap +0 -129
- package/src/components/Image/Image.stories.mdx +0 -332
- package/src/components/Image/Image.test.tsx +0 -155
- package/src/components/Image/Image.tsx +0 -171
- package/src/components/Image/__snapshots__/Image.test.tsx.snap +0 -269
- package/src/components/Label/Label.stories.mdx +0 -100
- package/src/components/Label/Label.test.tsx +0 -116
- package/src/components/Label/Label.tsx +0 -55
- package/src/components/Label/__snapshots__/Label.test.tsx.snap +0 -45
- package/src/components/Link/Link.stories.mdx +0 -249
- package/src/components/Link/Link.test.tsx +0 -224
- package/src/components/Link/Link.tsx +0 -178
- package/src/components/Link/__snapshots__/Link.test.tsx.snap +0 -286
- package/src/components/List/List.stories.mdx +0 -393
- package/src/components/List/List.test.tsx +0 -265
- package/src/components/List/List.tsx +0 -156
- package/src/components/List/__snapshots__/List.test.tsx.snap +0 -213
- package/src/components/Logo/Logo.stories.mdx +0 -295
- package/src/components/Logo/Logo.test.tsx +0 -116
- package/src/components/Logo/Logo.tsx +0 -151
- package/src/components/Logo/LogoSvgs.tsx +0 -90
- package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +0 -142
- package/src/components/Modal/Modal.stories.mdx +0 -294
- package/src/components/Modal/Modal.test.tsx +0 -157
- package/src/components/Modal/Modal.tsx +0 -154
- package/src/components/Modal/__snapshots__/Modal.test.tsx.snap +0 -25
- package/src/components/Notification/Notification.stories.mdx +0 -358
- package/src/components/Notification/Notification.test.tsx +0 -279
- package/src/components/Notification/Notification.tsx +0 -224
- package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +0 -525
- package/src/components/Pagination/Pagination.stories.mdx +0 -184
- package/src/components/Pagination/Pagination.test.tsx +0 -419
- package/src/components/Pagination/Pagination.tsx +0 -269
- package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +0 -544
- package/src/components/Placeholder/Placeholder.tsx +0 -19
- package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +0 -360
- package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +0 -298
- package/src/components/ProgressIndicator/ProgressIndicator.tsx +0 -132
- package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +0 -434
- package/src/components/Radio/Radio.stories.mdx +0 -216
- package/src/components/Radio/Radio.test.tsx +0 -247
- package/src/components/Radio/Radio.tsx +0 -119
- package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +0 -451
- package/src/components/RadioGroup/RadioGroup.stories.mdx +0 -479
- package/src/components/RadioGroup/RadioGroup.test.tsx +0 -471
- package/src/components/RadioGroup/RadioGroup.tsx +0 -171
- package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +0 -1550
- package/src/components/SearchBar/SearchBar.stories.mdx +0 -518
- package/src/components/SearchBar/SearchBar.test.tsx +0 -435
- package/src/components/SearchBar/SearchBar.tsx +0 -210
- package/src/components/SearchBar/__snapshots__/SearchBar.test.tsx.snap +0 -1049
- package/src/components/Select/Select.stories.mdx +0 -439
- package/src/components/Select/Select.test.tsx +0 -358
- package/src/components/Select/Select.tsx +0 -183
- package/src/components/Select/__snapshots__/Select.test.tsx.snap +0 -895
- package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +0 -142
- package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +0 -116
- package/src/components/SkeletonLoader/SkeletonLoader.tsx +0 -123
- package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +0 -898
- package/src/components/SkipNavigation/SkipNavigation.stories.mdx +0 -90
- package/src/components/SkipNavigation/SkipNavigation.test.tsx +0 -63
- package/src/components/SkipNavigation/SkipNavigation.tsx +0 -51
- package/src/components/SkipNavigation/__snapshots__/SkipNavigation.test.tsx.snap +0 -130
- package/src/components/Slider/Slider.stories.mdx +0 -628
- package/src/components/Slider/Slider.test.tsx +0 -736
- package/src/components/Slider/Slider.tsx +0 -322
- package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +0 -2186
- package/src/components/StatusBadge/StatusBadge.stories.mdx +0 -109
- package/src/components/StatusBadge/StatusBadge.test.tsx +0 -70
- package/src/components/StatusBadge/StatusBadge.tsx +0 -35
- package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +0 -47
- package/src/components/StructuredContent/StructuredContent.stories.mdx +0 -567
- package/src/components/StructuredContent/StructuredContent.test.tsx +0 -435
- package/src/components/StructuredContent/StructuredContent.tsx +0 -139
- package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +0 -368
- package/src/components/StyleGuide/Bidirectionality.stories.mdx +0 -206
- package/src/components/StyleGuide/Breakpoints.stories.mdx +0 -55
- package/src/components/StyleGuide/Buttons.stories.mdx +0 -194
- package/src/components/StyleGuide/ColorCard.tsx +0 -43
- package/src/components/StyleGuide/Colors.stories.mdx +0 -201
- package/src/components/StyleGuide/DesignTokens.stories.mdx +0 -193
- package/src/components/StyleGuide/Forms.stories.mdx +0 -94
- package/src/components/StyleGuide/Iconography.stories.mdx +0 -142
- package/src/components/StyleGuide/Spacing.stories.mdx +0 -116
- package/src/components/StyleGuide/Typography.stories.mdx +0 -419
- package/src/components/Table/Table.stories.mdx +0 -272
- package/src/components/Table/Table.test.tsx +0 -241
- package/src/components/Table/Table.tsx +0 -152
- package/src/components/Table/__snapshots__/Table.test.tsx.snap +0 -1703
- package/src/components/Tabs/Tabs.stories.mdx +0 -338
- package/src/components/Tabs/Tabs.test.tsx +0 -298
- package/src/components/Tabs/Tabs.tsx +0 -264
- package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +0 -584
- package/src/components/Template/Template.stories.mdx +0 -695
- package/src/components/Template/Template.test.tsx +0 -309
- package/src/components/Template/Template.tsx +0 -326
- package/src/components/Template/__snapshots__/Template.test.tsx.snap +0 -342
- package/src/components/Text/Text.stories.mdx +0 -103
- package/src/components/Text/Text.test.tsx +0 -63
- package/src/components/Text/Text.tsx +0 -50
- package/src/components/Text/__snapshots__/Text.test.tsx.snap +0 -50
- package/src/components/TextInput/TextInput.stories.mdx +0 -268
- package/src/components/TextInput/TextInput.test.tsx +0 -451
- package/src/components/TextInput/TextInput.tsx +0 -240
- package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +0 -274
- package/src/components/Toggle/Toggle.stories.mdx +0 -237
- package/src/components/Toggle/Toggle.test.tsx +0 -170
- package/src/components/Toggle/Toggle.tsx +0 -128
- package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +0 -470
- package/src/components/VideoPlayer/VideoPlayer.stories.mdx +0 -212
- package/src/components/VideoPlayer/VideoPlayer.test.tsx +0 -308
- package/src/components/VideoPlayer/VideoPlayer.tsx +0 -188
- package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +0 -192
- package/src/docs/Chakra.stories.mdx +0 -563
- package/src/docs/Welcome.stories.mdx +0 -148
- package/src/helpers/types.ts +0 -1
- package/src/hooks/tests/useCarouselStyles.test.ts +0 -140
- package/src/hooks/tests/useNYPLTheme.test.tsx +0 -36
- package/src/hooks/useCarouselStyles.stories.mdx +0 -30
- package/src/hooks/useCarouselStyles.ts +0 -35
- package/src/hooks/useNYPLTheme.stories.mdx +0 -98
- package/src/hooks/useNYPLTheme.ts +0 -91
- package/src/hooks/useWindowSize.stories.mdx +0 -23
- package/src/hooks/useWindowSize.ts +0 -40
- package/src/index.ts +0 -136
- package/src/resources.scss +0 -6
- package/src/styles/base/_01-breakpoints.scss +0 -27
- package/src/styles/base/_02-mixins.scss +0 -103
- package/src/styles/base/_place-holder.scss +0 -33
- package/src/styles/space/_space-inline.scss +0 -79
- package/src/styles/space/_space-inset.scss +0 -57
- package/src/styles/space/_space-stack.scss +0 -116
- package/src/styles.scss +0 -23
- package/src/theme/components/accordion.ts +0 -25
- package/src/theme/components/breadcrumb.ts +0 -94
- package/src/theme/components/button.ts +0 -133
- package/src/theme/components/buttonGroup.ts +0 -10
- package/src/theme/components/card.ts +0 -237
- package/src/theme/components/checkbox.ts +0 -110
- package/src/theme/components/checkboxGroup.ts +0 -10
- package/src/theme/components/componentWrapper.ts +0 -14
- package/src/theme/components/customTable.ts +0 -77
- package/src/theme/components/datePicker.ts +0 -17
- package/src/theme/components/fieldset.ts +0 -23
- package/src/theme/components/global.ts +0 -91
- package/src/theme/components/globalMixins.ts +0 -24
- package/src/theme/components/heading.ts +0 -79
- package/src/theme/components/helperErrorText.ts +0 -14
- package/src/theme/components/hero.ts +0 -238
- package/src/theme/components/horizontalRule.ts +0 -17
- package/src/theme/components/icon.ts +0 -88
- package/src/theme/components/image.ts +0 -136
- package/src/theme/components/label.ts +0 -15
- package/src/theme/components/link.ts +0 -63
- package/src/theme/components/list.ts +0 -88
- package/src/theme/components/logo.ts +0 -58
- package/src/theme/components/notification.ts +0 -132
- package/src/theme/components/pagination.ts +0 -17
- package/src/theme/components/progressIndicator.ts +0 -67
- package/src/theme/components/radio.ts +0 -103
- package/src/theme/components/radioGroup.ts +0 -10
- package/src/theme/components/searchBar.ts +0 -19
- package/src/theme/components/select.ts +0 -72
- package/src/theme/components/skeletonLoader.ts +0 -113
- package/src/theme/components/skipNavigation.ts +0 -29
- package/src/theme/components/slider.ts +0 -95
- package/src/theme/components/statusBadge.ts +0 -26
- package/src/theme/components/structuredContent.ts +0 -149
- package/src/theme/components/tabs.ts +0 -109
- package/src/theme/components/template.ts +0 -114
- package/src/theme/components/text.ts +0 -38
- package/src/theme/components/textInput.ts +0 -65
- package/src/theme/components/toggle.ts +0 -109
- package/src/theme/components/videoPlayer.ts +0 -47
- package/src/theme/foundations/breakpoints.ts +0 -24
- package/src/theme/foundations/colors.ts +0 -212
- package/src/theme/foundations/global.ts +0 -43
- package/src/theme/foundations/radii.ts +0 -7
- package/src/theme/foundations/shadows.ts +0 -5
- package/src/theme/foundations/spacing.ts +0 -136
- package/src/theme/foundations/typography.ts +0 -107
- package/src/theme/index.ts +0 -131
- package/src/theme/provider.tsx +0 -9
- package/src/theme/types.ts +0 -1
- package/src/utils/componentCategories.ts +0 -152
- package/src/utils/interfaces.ts +0 -5
- package/src/utils/utils.ts +0 -84
|
@@ -1,320 +0,0 @@
|
|
|
1
|
-
import { VStack } from "@chakra-ui/react";
|
|
2
|
-
import {
|
|
3
|
-
ArgsTable,
|
|
4
|
-
Canvas,
|
|
5
|
-
Description,
|
|
6
|
-
Meta,
|
|
7
|
-
Story,
|
|
8
|
-
} from "@storybook/addon-docs";
|
|
9
|
-
import { withDesign } from "storybook-addon-designs";
|
|
10
|
-
|
|
11
|
-
import Button, { ButtonElementType } from "./Button";
|
|
12
|
-
import ButtonGroup from "../ButtonGroup/ButtonGroup";
|
|
13
|
-
import Icon from "../Icons/Icon";
|
|
14
|
-
import { getCategory } from "../../utils/componentCategories";
|
|
15
|
-
import DSProvider from "../../theme/provider";
|
|
16
|
-
|
|
17
|
-
export const iconNames = [
|
|
18
|
-
"accessibilityFull",
|
|
19
|
-
"accessibilityPartial",
|
|
20
|
-
"actionCheckCircle",
|
|
21
|
-
"actionHelpDefault",
|
|
22
|
-
"actionHelpOutline",
|
|
23
|
-
"alertNotificationImportant",
|
|
24
|
-
"actionLaunch",
|
|
25
|
-
"arrow",
|
|
26
|
-
"check",
|
|
27
|
-
"clock",
|
|
28
|
-
"close",
|
|
29
|
-
"download",
|
|
30
|
-
"errorFilled",
|
|
31
|
-
"errorOutline",
|
|
32
|
-
"fileTypeAudio",
|
|
33
|
-
"fileTypeDoc",
|
|
34
|
-
"fileTypeGenericDoc",
|
|
35
|
-
"fileTypeImage",
|
|
36
|
-
"fileTypePdf",
|
|
37
|
-
"fileTypeSpreadsheet",
|
|
38
|
-
"fileTypeVideo",
|
|
39
|
-
"headset",
|
|
40
|
-
"minus",
|
|
41
|
-
"plus",
|
|
42
|
-
"search",
|
|
43
|
-
"speakerNotes",
|
|
44
|
-
"utilityAccountFilled",
|
|
45
|
-
"utilityAccountUnfilled",
|
|
46
|
-
"utilityHamburger",
|
|
47
|
-
"utilitySearch",
|
|
48
|
-
];
|
|
49
|
-
|
|
50
|
-
<Meta
|
|
51
|
-
title={getCategory("Button")}
|
|
52
|
-
component={Button}
|
|
53
|
-
decorators={[withDesign]}
|
|
54
|
-
parameters={{
|
|
55
|
-
design: {
|
|
56
|
-
type: "figma",
|
|
57
|
-
url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11477%3A2298",
|
|
58
|
-
},
|
|
59
|
-
jest: ["Button.test.tsx"],
|
|
60
|
-
}}
|
|
61
|
-
argTypes={{
|
|
62
|
-
buttonText: { description: "Only used for Storybook" },
|
|
63
|
-
buttonType: {
|
|
64
|
-
table: { defaultValue: { summary: "primary" } },
|
|
65
|
-
},
|
|
66
|
-
className: { control: false },
|
|
67
|
-
displayIcon: { description: "Only used for Storybook." },
|
|
68
|
-
displayIconLeft: {
|
|
69
|
-
description: "Move the icon left or right. Only used for Storybook.",
|
|
70
|
-
},
|
|
71
|
-
iconType: {
|
|
72
|
-
control: { type: "select" },
|
|
73
|
-
options: iconNames,
|
|
74
|
-
description: "Select the icon. Only used for Storybook.",
|
|
75
|
-
},
|
|
76
|
-
id: { control: false },
|
|
77
|
-
isDisabled: { table: { defaultValue: { summary: false } } },
|
|
78
|
-
mouseDown: { table: { defaultValue: { summary: false } } },
|
|
79
|
-
onClick: { control: false },
|
|
80
|
-
}}
|
|
81
|
-
/>
|
|
82
|
-
|
|
83
|
-
# Button
|
|
84
|
-
|
|
85
|
-
| Component Version | DS Version |
|
|
86
|
-
| ----------------- | ---------- |
|
|
87
|
-
| Added | `0.0.4` |
|
|
88
|
-
| Latest | `1.0.2` |
|
|
89
|
-
|
|
90
|
-
## Table of Contents
|
|
91
|
-
|
|
92
|
-
- [Overview](#overview)
|
|
93
|
-
- [Component Props](#component-props)
|
|
94
|
-
- [Accessibility](#accessibility)
|
|
95
|
-
- [Button Groups](#button-groups)
|
|
96
|
-
- [With Icons](#with-icons)
|
|
97
|
-
- [Patterns](#patterns)
|
|
98
|
-
- [Other Examples](#other-examples)
|
|
99
|
-
|
|
100
|
-
## Overview
|
|
101
|
-
|
|
102
|
-
<Description of={Button} />
|
|
103
|
-
|
|
104
|
-
Update the `buttonType` in the Controls section to see the types of buttons
|
|
105
|
-
that can be rendered.
|
|
106
|
-
|
|
107
|
-
- `"primary"` is used for actions that move the user forward. This is the default.
|
|
108
|
-
- `"secondary"` is used for actions that move the user back, such as cancellations.
|
|
109
|
-
- `"callout"` is used for call to action text such as "Donate".
|
|
110
|
-
- `"pill"` is used for equally weighted actions within cards and always in a set.
|
|
111
|
-
- `"link"` is used for equally weighted actions in a text based list.
|
|
112
|
-
- `"noBrand"` is a variant used when there is no brand and will display the
|
|
113
|
-
background color as black.
|
|
114
|
-
|
|
115
|
-
When one and only one `Icon` component is passed inside a `Button` component with
|
|
116
|
-
no text, it will automatically be configured to use the `"iconOnly"` type.
|
|
117
|
-
|
|
118
|
-
## Component Props
|
|
119
|
-
|
|
120
|
-
<Canvas withToolbar>
|
|
121
|
-
<Story
|
|
122
|
-
name="Button with Controls"
|
|
123
|
-
args={{
|
|
124
|
-
buttonText: "Button Text",
|
|
125
|
-
buttonType: "primary",
|
|
126
|
-
className: undefined,
|
|
127
|
-
displayIcon: false,
|
|
128
|
-
displayIconLeft: true,
|
|
129
|
-
iconType: "search",
|
|
130
|
-
id: "button-id",
|
|
131
|
-
isDisabled: false,
|
|
132
|
-
mouseDown: undefined,
|
|
133
|
-
onClick: undefined,
|
|
134
|
-
type: "button",
|
|
135
|
-
}}
|
|
136
|
-
>
|
|
137
|
-
{(args) => (
|
|
138
|
-
<Button
|
|
139
|
-
buttonType={args.buttonType}
|
|
140
|
-
className={args.className}
|
|
141
|
-
id={args.id}
|
|
142
|
-
isDisabled={args.isDisabled}
|
|
143
|
-
mouseDown={args.mouseDown}
|
|
144
|
-
onClick={args.onClick}
|
|
145
|
-
type={args.type}
|
|
146
|
-
>
|
|
147
|
-
{args.displayIcon && args.displayIconLeft && (
|
|
148
|
-
<Icon name={args.iconType} align="left" size="small" />
|
|
149
|
-
)}
|
|
150
|
-
{args.buttonText}
|
|
151
|
-
{args.displayIcon && !args.displayIconLeft && (
|
|
152
|
-
<Icon name={args.iconType} align="right" size="small" />
|
|
153
|
-
)}
|
|
154
|
-
</Button>
|
|
155
|
-
)}
|
|
156
|
-
</Story>
|
|
157
|
-
</Canvas>
|
|
158
|
-
|
|
159
|
-
<ArgsTable story="Button with Controls" />
|
|
160
|
-
|
|
161
|
-
## Accessibility
|
|
162
|
-
|
|
163
|
-
The Reservoir `Button` component renders an HTML `<button>` element that is
|
|
164
|
-
accessible. `Button`s should be used to perform user actions or submit forms,
|
|
165
|
-
never to link and go to another page. For `Button`s without text and only an
|
|
166
|
-
icon, make sure to pass an `aria-label` value to the `Button`. `Button`s cannot
|
|
167
|
-
have images of text.
|
|
168
|
-
|
|
169
|
-
Resources:
|
|
170
|
-
|
|
171
|
-
- [W3C WAI ARIA Button](https://www.w3.org/TR/wai-aria-practices-1.1/#button)
|
|
172
|
-
- [W3C WAI ARIA Button Examples](https://www.w3.org/TR/wai-aria-practices-1.1/examples/button/button.html)
|
|
173
|
-
- [MDN ARIA: button role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/button_role)
|
|
174
|
-
- [Chakra UI Button](https://chakra-ui.com/docs/components/form/button)
|
|
175
|
-
|
|
176
|
-
## Button Groups
|
|
177
|
-
|
|
178
|
-
Primary and secondary buttons should be grouped like in the following example.
|
|
179
|
-
The `ButtonGroup` component should be used to wrap the `Button` component.
|
|
180
|
-
|
|
181
|
-
<Canvas>
|
|
182
|
-
<Story name="Button Groups">
|
|
183
|
-
<ButtonGroup>
|
|
184
|
-
<Button buttonType="secondary" id="group-1">
|
|
185
|
-
Button
|
|
186
|
-
</Button>
|
|
187
|
-
<Button id="group-2">Submit</Button>
|
|
188
|
-
</ButtonGroup>
|
|
189
|
-
</Story>
|
|
190
|
-
</Canvas>
|
|
191
|
-
|
|
192
|
-
## With Icons
|
|
193
|
-
|
|
194
|
-
The `Icon` component collaborates great with the `Button` component. Check out
|
|
195
|
-
[`src/components/Icons/Icon.tsx`](https://github.com/NYPL/nypl-design-system/blob/development/src/components/Icons/Icon.tsx)
|
|
196
|
-
to see the full list of icon names that can be rendered.
|
|
197
|
-
|
|
198
|
-
<Canvas>
|
|
199
|
-
<Story name="With Icon">
|
|
200
|
-
<VStack align="left" spacing="input.group.button.vstack" width="150px">
|
|
201
|
-
<Button id="icon-1">
|
|
202
|
-
<Icon name="search" align="left" size="small" />
|
|
203
|
-
Button Text
|
|
204
|
-
</Button>
|
|
205
|
-
<Button id="icon-2">
|
|
206
|
-
Button Text
|
|
207
|
-
<Icon name="search" align="right" size="small" />
|
|
208
|
-
</Button>
|
|
209
|
-
</VStack>
|
|
210
|
-
</Story>
|
|
211
|
-
</Canvas>
|
|
212
|
-
|
|
213
|
-
The icon can be placed to the left or the right of the button text.
|
|
214
|
-
|
|
215
|
-
<Canvas>
|
|
216
|
-
<DSProvider>
|
|
217
|
-
<ButtonGroup>
|
|
218
|
-
<Button buttonType="secondary" id="icon-left">
|
|
219
|
-
<Icon name="arrow" iconRotation="rotate90" align="left" size="small" />
|
|
220
|
-
Previous
|
|
221
|
-
</Button>
|
|
222
|
-
<Button buttonType="secondary" id="icon-right">
|
|
223
|
-
Next
|
|
224
|
-
<Icon
|
|
225
|
-
name="arrow"
|
|
226
|
-
iconRotation="rotate270"
|
|
227
|
-
align="right"
|
|
228
|
-
size="small"
|
|
229
|
-
/>
|
|
230
|
-
</Button>
|
|
231
|
-
</ButtonGroup>
|
|
232
|
-
</DSProvider>
|
|
233
|
-
</Canvas>
|
|
234
|
-
|
|
235
|
-
Text in a button is optional if an icon is rendered, but make sure that there
|
|
236
|
-
is an `aria-label` passed to the `Button` component `aria-label="Previous"`.
|
|
237
|
-
|
|
238
|
-
<Canvas>
|
|
239
|
-
<DSProvider>
|
|
240
|
-
<ButtonGroup>
|
|
241
|
-
<Button aria-label="Previous" buttonType="secondary" id="prev-btn">
|
|
242
|
-
<Icon name="arrow" iconRotation="rotate90" size="small" />
|
|
243
|
-
</Button>
|
|
244
|
-
<Button aria-label="Next" buttonType="secondary" id="next-btn">
|
|
245
|
-
<Icon name="arrow" iconRotation="rotate270" size="small" />
|
|
246
|
-
</Button>
|
|
247
|
-
<Button aria-label="Close" buttonType="secondary" id="close-btn">
|
|
248
|
-
<Icon name="close" size="small" />
|
|
249
|
-
</Button>
|
|
250
|
-
</ButtonGroup>
|
|
251
|
-
</DSProvider>
|
|
252
|
-
</Canvas>
|
|
253
|
-
|
|
254
|
-
## Patterns
|
|
255
|
-
|
|
256
|
-
Buttons are blue by default but should be red when it is intended to be used as
|
|
257
|
-
a call out. The "Back to Top" button must be of `buttonType="secondary"` and
|
|
258
|
-
must include an up arrow icon on the right side.
|
|
259
|
-
|
|
260
|
-
<Canvas>
|
|
261
|
-
<Story name="Patterns">
|
|
262
|
-
<ButtonGroup>
|
|
263
|
-
<Button buttonType="callout" id="donate-btn">
|
|
264
|
-
Donate to this library
|
|
265
|
-
</Button>
|
|
266
|
-
<Button buttonType="secondary" id="top-btn">
|
|
267
|
-
Back to Top
|
|
268
|
-
<Icon
|
|
269
|
-
name="arrow"
|
|
270
|
-
iconRotation="rotate180"
|
|
271
|
-
size="small"
|
|
272
|
-
className="right"
|
|
273
|
-
align="right"
|
|
274
|
-
/>
|
|
275
|
-
</Button>
|
|
276
|
-
</ButtonGroup>
|
|
277
|
-
</Story>
|
|
278
|
-
</Canvas>
|
|
279
|
-
|
|
280
|
-
## Other Examples
|
|
281
|
-
|
|
282
|
-
The variations modified by the `buttonType` prop:
|
|
283
|
-
|
|
284
|
-
<Canvas>
|
|
285
|
-
<DSProvider>
|
|
286
|
-
<ButtonGroup>
|
|
287
|
-
<Button id="primary-btn">primary</Button>
|
|
288
|
-
<Button buttonType="secondary" id="secondary-btn">
|
|
289
|
-
secondary
|
|
290
|
-
</Button>
|
|
291
|
-
<Button buttonType="callout" id="callout-btn">
|
|
292
|
-
callout
|
|
293
|
-
</Button>
|
|
294
|
-
<Button buttonType="pill" id="pill-btn">
|
|
295
|
-
pill
|
|
296
|
-
</Button>
|
|
297
|
-
<Button buttonType="link" id="link-btn">
|
|
298
|
-
link
|
|
299
|
-
</Button>
|
|
300
|
-
<Button buttonType="noBrand" id="nobrand-btn">
|
|
301
|
-
noBrand
|
|
302
|
-
</Button>
|
|
303
|
-
</ButtonGroup>
|
|
304
|
-
</DSProvider>
|
|
305
|
-
</Canvas>
|
|
306
|
-
|
|
307
|
-
Modifying the `isDisabled` prop:
|
|
308
|
-
|
|
309
|
-
<Canvas>
|
|
310
|
-
<DSProvider>
|
|
311
|
-
<ButtonGroup>
|
|
312
|
-
<Button id="enabled-btn" isDisabled={false}>
|
|
313
|
-
Enabled
|
|
314
|
-
</Button>
|
|
315
|
-
<Button id="disabled-btn" isDisabled>
|
|
316
|
-
isDisabled
|
|
317
|
-
</Button>
|
|
318
|
-
</ButtonGroup>
|
|
319
|
-
</DSProvider>
|
|
320
|
-
</Canvas>
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import {
|
|
3
|
-
render,
|
|
4
|
-
RenderResult,
|
|
5
|
-
screen,
|
|
6
|
-
fireEvent,
|
|
7
|
-
} from "@testing-library/react";
|
|
8
|
-
import { axe } from "jest-axe";
|
|
9
|
-
import userEvent from "@testing-library/user-event";
|
|
10
|
-
import renderer from "react-test-renderer";
|
|
11
|
-
|
|
12
|
-
import Button from "./Button";
|
|
13
|
-
import Icon from "../Icons/Icon";
|
|
14
|
-
|
|
15
|
-
describe("Button Accessibility", () => {
|
|
16
|
-
it("passes axe accessibility test", async () => {
|
|
17
|
-
const onClick = jest.fn();
|
|
18
|
-
const { container } = render(
|
|
19
|
-
<Button id="button" onClick={onClick}>
|
|
20
|
-
Submit
|
|
21
|
-
</Button>
|
|
22
|
-
);
|
|
23
|
-
expect(await axe(container)).toHaveNoViolations();
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
describe("Button", () => {
|
|
28
|
-
let onClick: jest.MockedFunction<() => void>;
|
|
29
|
-
let utils: RenderResult;
|
|
30
|
-
|
|
31
|
-
beforeEach(() => {
|
|
32
|
-
onClick = jest.fn();
|
|
33
|
-
utils = render(
|
|
34
|
-
<Button id="button" onClick={onClick}>
|
|
35
|
-
Submit
|
|
36
|
-
</Button>
|
|
37
|
-
);
|
|
38
|
-
});
|
|
39
|
-
|
|
40
|
-
it("calls the onClick", () => {
|
|
41
|
-
expect(onClick).toHaveBeenCalledTimes(0);
|
|
42
|
-
userEvent.click(screen.getByText("Submit"));
|
|
43
|
-
expect(onClick).toHaveBeenCalledTimes(1);
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
it("optionally renders a component", () => {
|
|
47
|
-
expect(screen.getByText("Submit")).toBeInTheDocument();
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
it("optionally calls the onClick on mouseDown instead of on click", () => {
|
|
51
|
-
expect(onClick).toHaveBeenCalledTimes(0);
|
|
52
|
-
utils.rerender(
|
|
53
|
-
<Button id="button5" mouseDown={true}>
|
|
54
|
-
Submit
|
|
55
|
-
</Button>
|
|
56
|
-
);
|
|
57
|
-
userEvent.click(screen.getByText("Submit"));
|
|
58
|
-
expect(onClick).toHaveBeenCalledTimes(0);
|
|
59
|
-
fireEvent.mouseDown(screen.getByText("Submit"));
|
|
60
|
-
// TODO:
|
|
61
|
-
// expect(onClick).toHaveBeenCalledTimes(1);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
|
|
65
|
-
describe("rendering content from its children prop", () => {
|
|
66
|
-
const onClick = jest.fn();
|
|
67
|
-
it("should render string children", () => {
|
|
68
|
-
render(
|
|
69
|
-
<Button id="button2" onClick={onClick}>
|
|
70
|
-
Submit
|
|
71
|
-
</Button>
|
|
72
|
-
);
|
|
73
|
-
expect(screen.getByText("Submit")).toBeInTheDocument();
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
it("should render element children", () => {
|
|
77
|
-
const { container } = render(
|
|
78
|
-
<Button id="button3" onClick={onClick}>
|
|
79
|
-
<em>I'm an em element</em>
|
|
80
|
-
</Button>
|
|
81
|
-
);
|
|
82
|
-
expect(screen.getByText(/an em element/i)).toBeInTheDocument();
|
|
83
|
-
expect(container.querySelector("em")).toBeInTheDocument();
|
|
84
|
-
});
|
|
85
|
-
});
|
|
86
|
-
|
|
87
|
-
describe("padding for icon only button", () => {
|
|
88
|
-
it("button has proper child svg for the icon only button", () => {
|
|
89
|
-
const onClick = jest.fn();
|
|
90
|
-
const { container } = render(
|
|
91
|
-
<Button id="button" onClick={onClick} type="button">
|
|
92
|
-
<Icon align="left" name="check" size="small" />
|
|
93
|
-
</Button>
|
|
94
|
-
);
|
|
95
|
-
expect(container.querySelector("button svg")).toBeInTheDocument();
|
|
96
|
-
});
|
|
97
|
-
|
|
98
|
-
it("logs a warning when there is no `id` passed", () => {
|
|
99
|
-
const warn = jest.spyOn(console, "warn");
|
|
100
|
-
// @ts-ignore: Typescript complains when a required prop is not passed, but
|
|
101
|
-
// here we don't want to pass the required prop to make sure the warning appears.
|
|
102
|
-
render(<Button>Submit</Button>);
|
|
103
|
-
expect(warn).toHaveBeenCalledWith(
|
|
104
|
-
"NYPL Reservoir Button: This component's required `id` prop was not passed."
|
|
105
|
-
);
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
describe("Button Snapshot", () => {
|
|
110
|
-
it("Renders the UI snapshot correctly", () => {
|
|
111
|
-
const primary = renderer
|
|
112
|
-
.create(
|
|
113
|
-
<Button id="button" onClick={jest.fn()}>
|
|
114
|
-
Primary
|
|
115
|
-
</Button>
|
|
116
|
-
)
|
|
117
|
-
.toJSON();
|
|
118
|
-
const disabled = renderer
|
|
119
|
-
.create(
|
|
120
|
-
<Button id="button" onClick={jest.fn()} isDisabled>
|
|
121
|
-
Disabled
|
|
122
|
-
</Button>
|
|
123
|
-
)
|
|
124
|
-
.toJSON();
|
|
125
|
-
const secondary = renderer
|
|
126
|
-
.create(
|
|
127
|
-
<Button id="button" onClick={jest.fn()} buttonType="secondary">
|
|
128
|
-
Seconday
|
|
129
|
-
</Button>
|
|
130
|
-
)
|
|
131
|
-
.toJSON();
|
|
132
|
-
const callout = renderer
|
|
133
|
-
.create(
|
|
134
|
-
<Button id="button" onClick={jest.fn()} buttonType="callout">
|
|
135
|
-
Callout
|
|
136
|
-
</Button>
|
|
137
|
-
)
|
|
138
|
-
.toJSON();
|
|
139
|
-
const pill = renderer
|
|
140
|
-
.create(
|
|
141
|
-
<Button id="button" onClick={jest.fn()} buttonType="pill">
|
|
142
|
-
Pill
|
|
143
|
-
</Button>
|
|
144
|
-
)
|
|
145
|
-
.toJSON();
|
|
146
|
-
const link = renderer
|
|
147
|
-
.create(
|
|
148
|
-
<Button id="button" onClick={jest.fn()} buttonType="link">
|
|
149
|
-
Link
|
|
150
|
-
</Button>
|
|
151
|
-
)
|
|
152
|
-
.toJSON();
|
|
153
|
-
const noBrand = renderer
|
|
154
|
-
.create(
|
|
155
|
-
<Button id="button" onClick={jest.fn()} buttonType="noBrand">
|
|
156
|
-
NoBrand
|
|
157
|
-
</Button>
|
|
158
|
-
)
|
|
159
|
-
.toJSON();
|
|
160
|
-
const withChakraProps = renderer
|
|
161
|
-
.create(
|
|
162
|
-
<Button
|
|
163
|
-
id="button"
|
|
164
|
-
onClick={jest.fn()}
|
|
165
|
-
p="s"
|
|
166
|
-
color="ui.error.primary"
|
|
167
|
-
/>
|
|
168
|
-
)
|
|
169
|
-
.toJSON();
|
|
170
|
-
const withOtherProps = renderer
|
|
171
|
-
.create(<Button id="button" onClick={jest.fn()} data-testid="testid" />)
|
|
172
|
-
.toJSON();
|
|
173
|
-
|
|
174
|
-
expect(primary).toMatchSnapshot();
|
|
175
|
-
expect(disabled).toMatchSnapshot();
|
|
176
|
-
expect(secondary).toMatchSnapshot();
|
|
177
|
-
expect(callout).toMatchSnapshot();
|
|
178
|
-
expect(pill).toMatchSnapshot();
|
|
179
|
-
expect(link).toMatchSnapshot();
|
|
180
|
-
expect(noBrand).toMatchSnapshot();
|
|
181
|
-
expect(withChakraProps).toMatchSnapshot();
|
|
182
|
-
expect(withOtherProps).toMatchSnapshot();
|
|
183
|
-
});
|
|
184
|
-
});
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Button as ChakraButton,
|
|
3
|
-
chakra,
|
|
4
|
-
useStyleConfig,
|
|
5
|
-
} from "@chakra-ui/react";
|
|
6
|
-
import * as React from "react";
|
|
7
|
-
|
|
8
|
-
import Icon from "../Icons/Icon";
|
|
9
|
-
|
|
10
|
-
export type ButtonElementType = "submit" | "button" | "reset";
|
|
11
|
-
export type ButtonTypes =
|
|
12
|
-
| "primary"
|
|
13
|
-
| "secondary"
|
|
14
|
-
| "callout"
|
|
15
|
-
| "pill"
|
|
16
|
-
| "link"
|
|
17
|
-
| "noBrand";
|
|
18
|
-
|
|
19
|
-
interface ButtonProps {
|
|
20
|
-
/** The button variation to render based on the `ButtonTypes` type.*/
|
|
21
|
-
buttonType?: ButtonTypes;
|
|
22
|
-
/** Additional className to use. */
|
|
23
|
-
className?: string;
|
|
24
|
-
/** ID that other components can cross reference for accessibility purposes. */
|
|
25
|
-
id: string;
|
|
26
|
-
/** Adds 'disabled' property to the button. */
|
|
27
|
-
isDisabled?: boolean;
|
|
28
|
-
/** Trigger the Button's action through the `mouseDown` event handler instead
|
|
29
|
-
* of `onClick`. `false` by default. */
|
|
30
|
-
mouseDown?: boolean;
|
|
31
|
-
/** The action to perform on the `<button>`'s onClick function. */
|
|
32
|
-
onClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;
|
|
33
|
-
/** The HTML button type attribute. */
|
|
34
|
-
type?: ButtonElementType;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Renders a simple `button` element with custom variant styles.
|
|
39
|
-
*/
|
|
40
|
-
export const Button = chakra((props: React.PropsWithChildren<ButtonProps>) => {
|
|
41
|
-
const {
|
|
42
|
-
buttonType = "primary",
|
|
43
|
-
children,
|
|
44
|
-
className = "",
|
|
45
|
-
id,
|
|
46
|
-
isDisabled = false,
|
|
47
|
-
mouseDown = false,
|
|
48
|
-
onClick,
|
|
49
|
-
type = "button",
|
|
50
|
-
...rest
|
|
51
|
-
} = props;
|
|
52
|
-
const btnCallback = mouseDown ? { onMouseDown: onClick } : { onClick };
|
|
53
|
-
let childCount = 0;
|
|
54
|
-
let hasIcon = false;
|
|
55
|
-
let variant: string | ButtonTypes = buttonType;
|
|
56
|
-
let styles = {};
|
|
57
|
-
|
|
58
|
-
if (!id) {
|
|
59
|
-
console.warn(
|
|
60
|
-
"NYPL Reservoir Button: This component's required `id` prop was not passed."
|
|
61
|
-
);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
React.Children.map(children as JSX.Element, (child: React.ReactElement) => {
|
|
65
|
-
childCount++;
|
|
66
|
-
if (child !== undefined && child !== null) {
|
|
67
|
-
if (child.type === Icon || child?.props?.mdxType === "Icon") {
|
|
68
|
-
hasIcon = true;
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
if (childCount === 1 && hasIcon) {
|
|
74
|
-
variant = "iconOnly";
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
styles = useStyleConfig("Button", { variant });
|
|
78
|
-
|
|
79
|
-
return (
|
|
80
|
-
<ChakraButton
|
|
81
|
-
id={id}
|
|
82
|
-
data-testid="button"
|
|
83
|
-
className={className}
|
|
84
|
-
type={type}
|
|
85
|
-
isDisabled={isDisabled}
|
|
86
|
-
{...btnCallback}
|
|
87
|
-
__css={styles}
|
|
88
|
-
{...rest}
|
|
89
|
-
>
|
|
90
|
-
{children}
|
|
91
|
-
</ChakraButton>
|
|
92
|
-
);
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
export default Button;
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 1`] = `
|
|
4
|
-
<button
|
|
5
|
-
className="chakra-button css-1xdhyk6"
|
|
6
|
-
data-testid="button"
|
|
7
|
-
id="button"
|
|
8
|
-
onClick={[MockFunction]}
|
|
9
|
-
type="button"
|
|
10
|
-
>
|
|
11
|
-
Primary
|
|
12
|
-
</button>
|
|
13
|
-
`;
|
|
14
|
-
|
|
15
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 2`] = `
|
|
16
|
-
<button
|
|
17
|
-
className="chakra-button css-1xdhyk6"
|
|
18
|
-
data-testid="button"
|
|
19
|
-
disabled={true}
|
|
20
|
-
id="button"
|
|
21
|
-
onClick={[MockFunction]}
|
|
22
|
-
type="button"
|
|
23
|
-
>
|
|
24
|
-
Disabled
|
|
25
|
-
</button>
|
|
26
|
-
`;
|
|
27
|
-
|
|
28
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 3`] = `
|
|
29
|
-
<button
|
|
30
|
-
className="chakra-button css-1xdhyk6"
|
|
31
|
-
data-testid="button"
|
|
32
|
-
id="button"
|
|
33
|
-
onClick={[MockFunction]}
|
|
34
|
-
type="button"
|
|
35
|
-
>
|
|
36
|
-
Seconday
|
|
37
|
-
</button>
|
|
38
|
-
`;
|
|
39
|
-
|
|
40
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 4`] = `
|
|
41
|
-
<button
|
|
42
|
-
className="chakra-button css-1xdhyk6"
|
|
43
|
-
data-testid="button"
|
|
44
|
-
id="button"
|
|
45
|
-
onClick={[MockFunction]}
|
|
46
|
-
type="button"
|
|
47
|
-
>
|
|
48
|
-
Callout
|
|
49
|
-
</button>
|
|
50
|
-
`;
|
|
51
|
-
|
|
52
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 5`] = `
|
|
53
|
-
<button
|
|
54
|
-
className="chakra-button css-1xdhyk6"
|
|
55
|
-
data-testid="button"
|
|
56
|
-
id="button"
|
|
57
|
-
onClick={[MockFunction]}
|
|
58
|
-
type="button"
|
|
59
|
-
>
|
|
60
|
-
Pill
|
|
61
|
-
</button>
|
|
62
|
-
`;
|
|
63
|
-
|
|
64
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 6`] = `
|
|
65
|
-
<button
|
|
66
|
-
className="chakra-button css-1xdhyk6"
|
|
67
|
-
data-testid="button"
|
|
68
|
-
id="button"
|
|
69
|
-
onClick={[MockFunction]}
|
|
70
|
-
type="button"
|
|
71
|
-
>
|
|
72
|
-
Link
|
|
73
|
-
</button>
|
|
74
|
-
`;
|
|
75
|
-
|
|
76
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 7`] = `
|
|
77
|
-
<button
|
|
78
|
-
className="chakra-button css-1xdhyk6"
|
|
79
|
-
data-testid="button"
|
|
80
|
-
id="button"
|
|
81
|
-
onClick={[MockFunction]}
|
|
82
|
-
type="button"
|
|
83
|
-
>
|
|
84
|
-
NoBrand
|
|
85
|
-
</button>
|
|
86
|
-
`;
|
|
87
|
-
|
|
88
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 8`] = `
|
|
89
|
-
<button
|
|
90
|
-
className="chakra-button css-1t0bvx9"
|
|
91
|
-
data-testid="button"
|
|
92
|
-
id="button"
|
|
93
|
-
onClick={[MockFunction]}
|
|
94
|
-
type="button"
|
|
95
|
-
/>
|
|
96
|
-
`;
|
|
97
|
-
|
|
98
|
-
exports[`Button Snapshot Renders the UI snapshot correctly 9`] = `
|
|
99
|
-
<button
|
|
100
|
-
className="chakra-button css-1xdhyk6"
|
|
101
|
-
data-testid="testid"
|
|
102
|
-
id="button"
|
|
103
|
-
onClick={[MockFunction]}
|
|
104
|
-
type="button"
|
|
105
|
-
/>
|
|
106
|
-
`;
|