@nypl/design-system-react-components 0.25.0 → 0.25.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.
Files changed (236) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/dist/components/Accordion/Accordion.d.ts +14 -14
  3. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +11 -14
  4. package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +6 -0
  5. package/dist/components/Button/ButtonTypes.d.ts +2 -1
  6. package/dist/components/Card/Card.d.ts +1 -1
  7. package/dist/components/Card/CardTypes.d.ts +2 -2
  8. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +43 -0
  9. package/dist/components/CheckboxGroup/CheckboxGroupLayoutTypes.d.ts +4 -0
  10. package/dist/components/DatePicker/DatePicker.d.ts +3 -3
  11. package/dist/components/Form/Form.d.ts +13 -8
  12. package/dist/components/Form/FormTypes.d.ts +2 -8
  13. package/dist/components/Grid/GridTypes.d.ts +9 -0
  14. package/dist/components/Grid/SimpleGrid.d.ts +14 -0
  15. package/dist/components/Heading/Heading.d.ts +4 -4
  16. package/dist/components/Hero/Hero.d.ts +19 -14
  17. package/dist/components/Hero/HeroTypes.d.ts +10 -5
  18. package/dist/components/Icons/Icon.d.ts +13 -16
  19. package/dist/components/Icons/IconTypes.d.ts +78 -64
  20. package/dist/components/Label/Label.d.ts +5 -17
  21. package/dist/components/Link/Link.d.ts +8 -12
  22. package/dist/components/SearchBar/SearchBar.d.ts +45 -27
  23. package/dist/components/Select/Select.d.ts +32 -35
  24. package/dist/components/Select/SelectTypes.d.ts +4 -0
  25. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +1 -1
  26. package/dist/components/SkeletonLoader/SkeletonLoaderTypes.d.ts +2 -2
  27. package/dist/components/StatusBadge/StatusBadge.d.ts +8 -6
  28. package/dist/components/StatusBadge/StatusBadgeTypes.d.ts +5 -0
  29. package/dist/components/Template/Template.d.ts +91 -0
  30. package/dist/components/Text/Text.d.ts +16 -0
  31. package/dist/components/Text/TextTypes.d.ts +6 -0
  32. package/dist/components/TextInput/TextInput.d.ts +32 -31
  33. package/dist/components/TextInput/TextInputTypes.d.ts +5 -0
  34. package/dist/design-system-react-components.cjs.development.js +2597 -1170
  35. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  36. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  37. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  38. package/dist/design-system-react-components.esm.js +2580 -1173
  39. package/dist/design-system-react-components.esm.js.map +1 -1
  40. package/dist/index.d.ts +8 -1
  41. package/dist/styles.css +1 -1
  42. package/dist/theme/components/accordion.d.ts +25 -0
  43. package/dist/theme/components/breadcrumb.d.ts +90 -0
  44. package/dist/theme/components/button.d.ts +17 -7
  45. package/dist/theme/components/checkbox.d.ts +7 -7
  46. package/dist/theme/components/customCheckboxGroup.d.ts +18 -0
  47. package/dist/theme/components/customRadioGroup.d.ts +4 -3
  48. package/dist/theme/components/global.d.ts +55 -0
  49. package/dist/theme/components/globalMixins.d.ts +15 -0
  50. package/dist/theme/components/heading.d.ts +50 -20
  51. package/dist/theme/components/hero.d.ts +492 -0
  52. package/dist/theme/components/icon.d.ts +13 -0
  53. package/dist/theme/components/label.d.ts +16 -0
  54. package/dist/theme/components/link.d.ts +45 -0
  55. package/dist/theme/components/radio.d.ts +8 -7
  56. package/dist/theme/components/searchBar.d.ts +20 -0
  57. package/dist/theme/components/select.d.ts +58 -0
  58. package/dist/theme/components/statusBadge.d.ts +25 -0
  59. package/dist/theme/components/tabs.d.ts +9 -9
  60. package/dist/theme/components/template.d.ts +105 -0
  61. package/dist/theme/components/text.d.ts +20 -0
  62. package/dist/theme/components/textInput.d.ts +105 -0
  63. package/dist/theme/foundations/global.d.ts +3 -0
  64. package/dist/theme/foundations/shadows.d.ts +4 -0
  65. package/dist/utils/utils.d.ts +6 -0
  66. package/package.json +3 -2
  67. package/src/components/Accordion/Accordion.stories.mdx +227 -33
  68. package/src/components/Accordion/Accordion.test.tsx +135 -19
  69. package/src/components/Accordion/Accordion.tsx +81 -56
  70. package/src/components/Autosuggest/Autosuggest.stories.mdx +1 -1
  71. package/src/components/Autosuggest/Autosuggest.stories.tsx +1 -1
  72. package/src/components/Autosuggest/_Autosuggest.scss +2 -2
  73. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +46 -52
  74. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +31 -25
  75. package/src/components/Breadcrumbs/Breadcrumbs.tsx +71 -73
  76. package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +6 -0
  77. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +100 -0
  78. package/src/components/Button/Button.stories.mdx +31 -27
  79. package/src/components/Button/Button.test.tsx +17 -5
  80. package/src/components/Button/ButtonTypes.tsx +1 -0
  81. package/src/components/Button/_Button.scss +3 -27
  82. package/src/components/Button/__snapshots__/Button.test.tsx.snap +11 -0
  83. package/src/components/Card/Card.stories.mdx +24 -20
  84. package/src/components/Card/Card.test.tsx +13 -19
  85. package/src/components/Card/Card.tsx +1 -1
  86. package/src/components/Card/CardTypes.tsx +2 -2
  87. package/src/components/Card/_Card.scss +1 -1
  88. package/src/components/CardEdition/CardEdition.stories.tsx +11 -6
  89. package/src/components/CardEdition/CardEdition.test.tsx +23 -31
  90. package/src/components/CardEdition/_CardEdition.scss +2 -2
  91. package/src/components/Chakra/Center.stories.mdx +31 -14
  92. package/src/components/Chakra/Grid.stories.mdx +79 -0
  93. package/src/components/Chakra/Stack.stories.mdx +4 -4
  94. package/src/components/Checkbox/Checkbox.tsx +9 -12
  95. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +2 -5
  96. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +249 -0
  97. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +345 -0
  98. package/src/components/CheckboxGroup/CheckboxGroup.tsx +148 -0
  99. package/src/components/CheckboxGroup/CheckboxGroupLayoutTypes.tsx +4 -0
  100. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +1360 -0
  101. package/src/components/DatePicker/DatePicker.test.tsx +4 -4
  102. package/src/components/DatePicker/DatePicker.tsx +13 -13
  103. package/src/components/DatePicker/_DatePicker.scss +1 -0
  104. package/src/components/Form/Form.stories.mdx +46 -21
  105. package/src/components/Form/Form.test.tsx +58 -45
  106. package/src/components/Form/Form.tsx +49 -21
  107. package/src/components/Form/FormTypes.tsx +3 -8
  108. package/src/components/Form/__snapshots__/Form.test.tsx.snap +24 -14
  109. package/src/components/Grid/GridTypes.tsx +9 -0
  110. package/src/components/Grid/SimpleGrid.stories.mdx +275 -0
  111. package/src/components/Grid/SimpleGrid.test.tsx +66 -0
  112. package/src/components/Grid/SimpleGrid.tsx +37 -0
  113. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +8 -0
  114. package/src/components/Heading/Heading.stories.mdx +1 -0
  115. package/src/components/Heading/Heading.tsx +12 -6
  116. package/src/components/HelperErrorText/_HelperErrorText.scss +1 -1
  117. package/src/components/Hero/Hero.stories.mdx +188 -121
  118. package/src/components/Hero/Hero.test.tsx +537 -107
  119. package/src/components/Hero/Hero.tsx +79 -92
  120. package/src/components/Hero/HeroTypes.tsx +17 -5
  121. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +307 -0
  122. package/src/components/HorizontalRule/_HorizontalRule.scss +1 -1
  123. package/src/components/Icons/Icon.stories.mdx +83 -74
  124. package/src/components/Icons/Icon.test.tsx +30 -22
  125. package/src/components/Icons/Icon.tsx +63 -61
  126. package/src/components/Icons/IconTypes.tsx +80 -64
  127. package/src/components/Input/_Input.scss +2 -2
  128. package/src/components/Label/Label.stories.mdx +28 -7
  129. package/src/components/Label/Label.test.tsx +43 -12
  130. package/src/components/Label/Label.tsx +21 -34
  131. package/src/components/Label/__snapshots__/Label.test.tsx.snap +41 -0
  132. package/src/components/Link/Link.stories.mdx +41 -41
  133. package/src/components/Link/Link.test.tsx +33 -44
  134. package/src/components/Link/Link.tsx +114 -100
  135. package/src/components/List/List.stories.mdx +0 -2
  136. package/src/components/List/List.stories.tsx +5 -5
  137. package/src/components/List/_List.scss +3 -3
  138. package/src/components/Modal/_Modal.scss +1 -1
  139. package/src/components/Notification/Notification.stories.mdx +12 -1
  140. package/src/components/Notification/Notification.test.tsx +3 -16
  141. package/src/components/Notification/Notification.tsx +9 -10
  142. package/src/components/Notification/_Notification.scss +4 -4
  143. package/src/components/Pagination/Pagination.test.tsx +16 -10
  144. package/src/components/RadioGroup/RadioGroup.stories.mdx +1 -1
  145. package/src/components/RadioGroup/RadioGroup.tsx +2 -10
  146. package/src/components/SearchBar/SearchBar.Test.tsx +151 -16
  147. package/src/components/SearchBar/SearchBar.stories.mdx +189 -219
  148. package/src/components/SearchBar/SearchBar.tsx +151 -46
  149. package/src/components/Select/Select.stories.mdx +188 -170
  150. package/src/components/Select/Select.test.tsx +125 -380
  151. package/src/components/Select/Select.tsx +118 -165
  152. package/src/components/Select/SelectTypes.tsx +4 -0
  153. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +13 -25
  154. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +7 -7
  155. package/src/components/SkeletonLoader/SkeletonLoader.tsx +4 -2
  156. package/src/components/SkeletonLoader/SkeletonLoaderTypes.tsx +2 -2
  157. package/src/components/SkeletonLoader/_SkeletonLoader.scss +3 -3
  158. package/src/components/StatusBadge/StatusBadge.stories.mdx +91 -0
  159. package/src/components/StatusBadge/StatusBadge.test.tsx +35 -7
  160. package/src/components/StatusBadge/StatusBadge.tsx +24 -25
  161. package/src/components/StatusBadge/StatusBadgeTypes.tsx +5 -0
  162. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +28 -0
  163. package/src/components/StyleGuide/Bidirectionality.stories.mdx +16 -16
  164. package/src/components/StyleGuide/Buttons.stories.mdx +15 -15
  165. package/src/components/StyleGuide/Colors.stories.mdx +336 -0
  166. package/src/components/StyleGuide/Iconography.stories.mdx +88 -90
  167. package/src/components/StyleGuide/UIDocCard.tsx +1 -1
  168. package/src/components/Tabs/Tabs.tsx +7 -9
  169. package/src/components/Template/Template.stories.mdx +574 -0
  170. package/src/components/Template/Template.test.tsx +124 -0
  171. package/src/components/Template/Template.tsx +226 -0
  172. package/src/components/Text/Text.stories.mdx +70 -0
  173. package/src/components/Text/Text.test.tsx +63 -0
  174. package/src/components/Text/Text.tsx +55 -0
  175. package/src/components/Text/TextTypes.tsx +6 -0
  176. package/src/components/Text/__snapshots__/Text.test.tsx.snap +33 -0
  177. package/src/components/TextInput/TextInput.stories.mdx +89 -90
  178. package/src/components/TextInput/TextInput.test.tsx +65 -86
  179. package/src/components/TextInput/TextInput.tsx +101 -95
  180. package/src/components/TextInput/TextInputTypes.tsx +6 -0
  181. package/src/components/VideoPlayer/_VideoPlayer.scss +1 -1
  182. package/src/docs/Chakra.stories.mdx +4 -4
  183. package/src/docs/Intro.stories.mdx +15 -13
  184. package/src/index.ts +20 -0
  185. package/src/styles/01-colors/_colors-brand.scss +6 -0
  186. package/src/styles/01-colors/_colors-utility.scss +14 -12
  187. package/src/styles/base/_04-base.scss +2 -1
  188. package/src/styles/base/_place-holder.scss +1 -1
  189. package/src/styles.scss +10 -12
  190. package/src/theme/components/accordion.ts +30 -0
  191. package/src/theme/components/breadcrumb.ts +77 -0
  192. package/src/theme/components/button.ts +77 -63
  193. package/src/theme/components/checkbox.ts +15 -27
  194. package/src/theme/components/customCheckboxGroup.ts +12 -0
  195. package/src/theme/components/customRadioGroup.ts +4 -10
  196. package/src/theme/components/global.ts +71 -0
  197. package/src/theme/components/globalMixins.ts +16 -0
  198. package/src/theme/components/heading.ts +15 -8
  199. package/src/theme/components/hero.ts +239 -0
  200. package/src/theme/components/icon.ts +79 -0
  201. package/src/theme/components/label.ts +17 -0
  202. package/src/theme/components/link.ts +47 -0
  203. package/src/theme/components/radio.ts +20 -31
  204. package/src/theme/components/searchBar.ts +21 -0
  205. package/src/theme/components/select.ts +50 -0
  206. package/src/theme/components/statusBadge.ts +27 -0
  207. package/src/theme/components/tabs.ts +72 -69
  208. package/src/theme/components/template.ts +114 -0
  209. package/src/theme/components/text.ts +31 -0
  210. package/src/theme/components/textInput.ts +61 -0
  211. package/src/theme/foundations/colors.ts +29 -13
  212. package/src/theme/foundations/global.ts +3 -0
  213. package/src/theme/foundations/shadows.ts +5 -0
  214. package/src/theme/index.ts +37 -7
  215. package/src/utils/componentCategories.ts +8 -2
  216. package/src/utils/utils.ts +13 -0
  217. package/dist/components/Accordion/Accordion.stories.d.ts +0 -6
  218. package/dist/components/StatusBadge/StatusBadge.stories.d.ts +0 -8
  219. package/dist/components/StyleGuide/Colors.stories.d.ts +0 -25
  220. package/dist/components/Template/Template.stories.d.ts +0 -30
  221. package/src/components/Accordion/Accordion.stories.tsx +0 -66
  222. package/src/components/Accordion/_Accordion.scss +0 -81
  223. package/src/components/Breadcrumbs/_Breadcrumbs.scss +0 -97
  224. package/src/components/Form/_Form.scss +0 -67
  225. package/src/components/Hero/_Hero.scss +0 -256
  226. package/src/components/Icons/_Icons.scss +0 -116
  227. package/src/components/Label/_Label.scss +0 -22
  228. package/src/components/Link/_Link.scss +0 -73
  229. package/src/components/SearchBar/_SearchBar.scss +0 -16
  230. package/src/components/Select/_Select.scss +0 -82
  231. package/src/components/StatusBadge/StatusBadge.stories.tsx +0 -34
  232. package/src/components/StatusBadge/_StatusBadge.scss +0 -23
  233. package/src/components/StyleGuide/Colors.stories.tsx +0 -289
  234. package/src/components/Template/Template.stories.tsx +0 -86
  235. package/src/components/Template/_Template.scss +0 -63
  236. package/src/components/TextInput/_TextInput.scss +0 -59
@@ -3,19 +3,18 @@ import {
3
3
  Story,
4
4
  Canvas,
5
5
  ArgsTable,
6
- Preview,
7
6
  Description,
8
7
  } from "@storybook/addon-docs/blocks";
9
8
  import { withDesign } from "storybook-addon-designs";
9
+ import { Box, VStack } from "@chakra-ui/react";
10
10
 
11
11
  import Hero from "./Hero";
12
- import { HeroTypes } from "./HeroTypes";
12
+ import { HeroTypes, HeroSecondaryTypes } from "./HeroTypes";
13
13
  import Image from "../Image/Image";
14
14
  import Heading from "../Heading/Heading";
15
15
  import { HeadingLevels } from "../Heading/HeadingTypes";
16
- import sections from "../../utils/siteSections";
17
- import { action } from "@storybook/addon-actions";
18
16
  import { getCategory } from "../../utils/componentCategories";
17
+ import DSProvider from "../../theme/provider";
19
18
 
20
19
  <Meta
21
20
  title={getCategory("Hero")}
@@ -30,32 +29,27 @@ import { getCategory } from "../../utils/componentCategories";
30
29
  jest: ["Hero.test.tsx"],
31
30
  }}
32
31
  argTypes={{
33
- attributes: { table: { disable: true } },
34
- blockName: { table: { disable: true } },
35
- className: { table: { disable: true } },
32
+ backgroundColor: { table: { disable: true } },
33
+ foregroundColor: { table: { disable: true } },
36
34
  heading: { table: { disable: true } },
37
- modifiers: { table: { disable: true } },
38
- subHeaderText: { table: { disable: true } },
39
35
  image: { table: { disable: true } },
36
+ locationDetails: { table: { disable: true } },
37
+ subHeaderText: { table: { disable: true } },
40
38
  }}
41
39
  />
42
40
 
43
41
  export const secondarySubHeaderText = (
44
- <div className="hero__body-text">
42
+ <>
45
43
  Explore our collection of hundreds of online resources and databases. Use
46
44
  our free online content to help with your research, whether it's finding a
47
45
  single article, tracing a family tree, learning a new language, or anything
48
46
  in between.
49
- </div>
47
+ </>
50
48
  );
51
49
  export const otherSubHeaderText =
52
50
  "With 92 locations across the Bronx, Manhattan, and Staten Island, The New York Public Library is an essential part of neighborhoods across the city. Visit us today.";
53
- export const secondaryImage = (
54
- <Image
55
- src="https://placeimg.com/800/400/animals"
56
- blockName="hero"
57
- alt="Image example"
58
- />
51
+ export const image = (
52
+ <Image src="https://placeimg.com/800/400/animals" alt="Image example" />
59
53
  );
60
54
 
61
55
  # Hero
@@ -63,17 +57,19 @@ export const secondaryImage = (
63
57
  | Component Version | DS Version |
64
58
  | ----------------- | ---------- |
65
59
  | Added | `0.2.0` |
66
- | Latest | `0.23.4` |
60
+ | Latest | `0.25.1` |
67
61
 
68
62
  <Description of={Hero} />
69
63
 
70
- The `Hero` component is used to display a full width banner at the top of a page. The `Hero` will contain a required `h1` page title and may also include optional descriptive text and images.
64
+ The `Hero` component is used to display a full width banner at the top of a page.
65
+ The `Hero` will contain a required `h1` page title and may also include optional
66
+ descriptive text and images.
71
67
 
72
- <Preview withToolbar>
68
+ <Canvas withToolbar>
73
69
  <Story
74
70
  name="Hero Props"
75
71
  args={{
76
- heroType: HeroTypes.Primary,
72
+ heroType: HeroTypes.Campaign,
77
73
  }}
78
74
  >
79
75
  {(args) =>
@@ -81,37 +77,21 @@ The `Hero` component is used to display a full width banner at the top of a page
81
77
  <Hero
82
78
  {...args}
83
79
  heading={
84
- <Heading
85
- level={HeadingLevels.One}
86
- id="1"
87
- text="Hero Primary"
88
- blockName="hero"
89
- />
80
+ <Heading level={HeadingLevels.One} id="1" text="Hero Primary" />
90
81
  }
91
82
  subHeaderText="Example Subtitle"
92
83
  backgroundImageSrc="https://placeimg.com/2400/800/nature"
93
84
  />
94
85
  )) ||
95
- (args.heroType === HeroTypes.Secondary && (
96
- <div className={"nypl-ds nypl--books-and-more"}>
86
+ (HeroSecondaryTypes.includes(args.heroType) && (
87
+ <div className="nypl--books-and-more">
97
88
  <Hero
98
89
  {...args}
99
90
  heading={
100
- <Heading
101
- level={HeadingLevels.One}
102
- id="1"
103
- text="Hero Secondary"
104
- blockName="hero"
105
- />
91
+ <Heading level={HeadingLevels.One} id="1" text="Hero Secondary" />
106
92
  }
107
93
  subHeaderText={secondarySubHeaderText}
108
- image={
109
- <Image
110
- src="https://placeimg.com/800/400/animals"
111
- blockName="hero"
112
- alt="Image example"
113
- />
114
- }
94
+ image={image}
115
95
  />
116
96
  </div>
117
97
  )) ||
@@ -119,46 +99,34 @@ The `Hero` component is used to display a full width banner at the top of a page
119
99
  <Hero
120
100
  {...args}
121
101
  heading={
122
- <Heading
123
- level={HeadingLevels.One}
124
- id="1"
125
- text="Hero Tertiary"
126
- blockName="hero"
127
- />
102
+ <Heading level={HeadingLevels.One} id="1" text="Hero Tertiary" />
128
103
  }
129
104
  subHeaderText={otherSubHeaderText}
130
105
  />
131
106
  )) ||
132
- (args.heroType === HeroTypes.FiftyFifty && (
107
+ (args.heroType === HeroTypes.Campaign && (
133
108
  <Hero
134
109
  {...args}
110
+ heading={
111
+ <Heading level={HeadingLevels.One} id="1" text="Hero Campaign" />
112
+ }
135
113
  subHeaderText={otherSubHeaderText}
114
+ backgroundImageSrc="https://placeimg.com/2400/800/nature"
136
115
  image={
137
116
  <Image
138
- src="https://placeimg.com/600/200/animals"
139
- blockName="hero"
117
+ src="https://placeimg.com/800/400/animals"
140
118
  alt="Image example"
141
119
  />
142
120
  }
143
121
  />
144
122
  )) ||
145
- (args.heroType === HeroTypes.Campaign && (
123
+ (args.heroType === HeroTypes.FiftyFifty && (
146
124
  <Hero
147
125
  {...args}
148
- heading={
149
- <Heading
150
- level={HeadingLevels.One}
151
- id="1"
152
- text="Hero Campaign"
153
- blockName="hero"
154
- />
155
- }
156
126
  subHeaderText={otherSubHeaderText}
157
- backgroundImageSrc="https://placeimg.com/2400/800/nature/grayscale"
158
127
  image={
159
128
  <Image
160
- src="https://placeimg.com/800/400/animals"
161
- blockName="hero"
129
+ src="https://placeimg.com/600/200/animals"
162
130
  alt="Image example"
163
131
  />
164
132
  }
@@ -166,84 +134,183 @@ The `Hero` component is used to display a full width banner at the top of a page
166
134
  ))
167
135
  }
168
136
  </Story>
169
- </Preview>
137
+ </Canvas>
170
138
 
171
139
  <ArgsTable story="Hero Props" />
172
140
 
173
141
  ## Color Variations for Secondary Hero
174
142
 
175
- The background color for the title bar in `HeroTypes.Secondary` is determined by the placement of the `Hero` component within a comsuming app. The CSS for `Hero` is constructued to use classes of the `Hero` component's parent elements as a determinant for the title bar background color. Below are the four color variations available based on the consuming React app.
143
+ The background color for the title bar in "Secondary" types changes based on
144
+ variants for the `Secondary` main variant. Before, components relied on the
145
+ parent wrapper's CSS class name for background color updates. Now, the proper
146
+ `HeroType` must be passed in.
147
+
148
+ ```jsx
149
+ // Before
150
+ <div className="nypl--books-and-more">
151
+ <Hero {...props} />
152
+ </div>
153
+
154
+ // Now
155
+ <Hero heroType={HeroTypes.SecondaryBooksAndMore} {...props} />
156
+ ```
176
157
 
177
158
  <Canvas>
178
159
  <Story name="Color Variations for Secondary Hero">
179
- <div className={"nypl-ds nypl--books-and-more"}>
160
+ <VStack spacing={10} align="stretch">
161
+ <Heading
162
+ level={HeadingLevels.Two}
163
+ text="HeroTypes.SecondaryBooksAndMore"
164
+ id="books-heading"
165
+ />
166
+ <Hero
167
+ heroType={HeroTypes.SecondaryBooksAndMore}
168
+ heading={
169
+ <Heading
170
+ level={HeadingLevels.One}
171
+ id="books-hero"
172
+ text="Books and More"
173
+ />
174
+ }
175
+ subHeaderText={secondarySubHeaderText}
176
+ image={image}
177
+ />
178
+ <Heading
179
+ level={HeadingLevels.Two}
180
+ text="HeroTypes.SecondaryLocations"
181
+ id="location-heading"
182
+ />
183
+ <Hero
184
+ heroType={HeroTypes.SecondaryLocations}
185
+ heading={
186
+ <Heading
187
+ level={HeadingLevels.One}
188
+ id="locations-hero"
189
+ text="Locations"
190
+ />
191
+ }
192
+ subHeaderText={secondarySubHeaderText}
193
+ image={image}
194
+ />
195
+ <Heading
196
+ level={HeadingLevels.Two}
197
+ text="HeroTypes.SecondaryResearch"
198
+ id="research-heading"
199
+ />
200
+ <Hero
201
+ heroType={HeroTypes.SecondaryResearch}
202
+ heading={
203
+ <Heading
204
+ level={HeadingLevels.One}
205
+ id="research-hero"
206
+ text="Research"
207
+ />
208
+ }
209
+ subHeaderText={secondarySubHeaderText}
210
+ image={image}
211
+ />
212
+ <Heading
213
+ level={HeadingLevels.Two}
214
+ text="HeroTypes.SecondaryWhatsOn"
215
+ id="whats-on-heading"
216
+ />
180
217
  <Hero
181
- heroType={HeroTypes.Secondary}
218
+ heroType={HeroTypes.SecondaryWhatsOn}
182
219
  heading={
183
220
  <Heading
184
221
  level={HeadingLevels.One}
185
- id="1"
186
- text={"Books and More"}
187
- blockName="hero"
222
+ id="whats-on-hero"
223
+ text="What's On"
188
224
  />
189
225
  }
190
226
  subHeaderText={secondarySubHeaderText}
191
- image={secondaryImage}
227
+ image={image}
192
228
  />
193
- </div>
229
+ </VStack>
194
230
  </Story>
195
231
  </Canvas>
196
232
 
197
- <Canvas>
198
- <div className={"nypl-ds nypl--locations"}>
199
- <Hero
200
- heroType={HeroTypes.Secondary}
201
- heading={
202
- <Heading
203
- level={HeadingLevels.One}
204
- id="1"
205
- text={"Locations"}
206
- blockName="hero"
207
- />
208
- }
209
- subHeaderText={secondarySubHeaderText}
210
- image={secondaryImage}
211
- />
212
- </div>
213
- </Canvas>
214
-
215
- <Canvas>
216
- <div className={"nypl-ds nypl--research"}>
217
- <Hero
218
- heroType={HeroTypes.Secondary}
219
- heading={
220
- <Heading
221
- level={HeadingLevels.One}
222
- id="1"
223
- text={"Research"}
224
- blockName="hero"
225
- />
226
- }
227
- subHeaderText={secondarySubHeaderText}
228
- image={secondaryImage}
229
- />
230
- </div>
231
- </Canvas>
233
+ ## All Variations
232
234
 
233
235
  <Canvas>
234
- <div className={"nypl-ds nypl--whats-on"}>
235
- <Hero
236
- heroType={HeroTypes.Secondary}
237
- heading={
238
- <Heading
239
- level={HeadingLevels.One}
240
- id="1"
241
- text={"What's On"}
242
- blockName="hero"
236
+ <DSProvider>
237
+ <VStack spacing={10} align="stretch">
238
+ <Heading level={HeadingLevels.Two} text="Primary" id="primary-heading" />
239
+ <Hero
240
+ heroType={HeroTypes.Primary}
241
+ heading={
242
+ <Heading
243
+ level={HeadingLevels.One}
244
+ id="primary-hero"
245
+ text="Hero Primary"
246
+ />
247
+ }
248
+ backgroundImageSrc="https://placeimg.com/1600/800/arch"
249
+ />
250
+ <Heading
251
+ level={HeadingLevels.Two}
252
+ text="Secondary"
253
+ id="secondary-heading"
254
+ />
255
+ <div className="nypl--locations">
256
+ <Hero
257
+ heroType={HeroTypes.Secondary}
258
+ heading={
259
+ <Heading
260
+ level={HeadingLevels.One}
261
+ id="secondary-hero"
262
+ text="Hero Secondary"
263
+ />
264
+ }
265
+ subHeaderText={secondarySubHeaderText}
266
+ image={image}
243
267
  />
244
- }
245
- subHeaderText={secondarySubHeaderText}
246
- image={secondaryImage}
247
- />
248
- </div>
268
+ </div>
269
+ <Heading
270
+ level={HeadingLevels.Two}
271
+ text="Tertiary"
272
+ id="tertiary-heading"
273
+ />
274
+ <Hero
275
+ heroType={HeroTypes.Tertiary}
276
+ heading={
277
+ <Heading
278
+ level={HeadingLevels.One}
279
+ id="tertiary-hero"
280
+ text="Hero Tertiary"
281
+ />
282
+ }
283
+ subHeaderText={otherSubHeaderText}
284
+ />
285
+ <Heading
286
+ level={HeadingLevels.Two}
287
+ text="Campaign"
288
+ id="campaign-heading"
289
+ />
290
+ <Hero
291
+ heroType={HeroTypes.Campaign}
292
+ heading={
293
+ <Heading
294
+ level={HeadingLevels.One}
295
+ id="campaign-hero"
296
+ text="Hero Campaign"
297
+ />
298
+ }
299
+ subHeaderText={otherSubHeaderText}
300
+ backgroundImageSrc="https://placeimg.com/2400/800/nature/grayscale"
301
+ image={image}
302
+ />
303
+ <Box marginTop="30px" />
304
+ <Heading
305
+ level={HeadingLevels.Two}
306
+ text="FiftyFifty"
307
+ id="fiftyfifty-heading"
308
+ />
309
+ <Hero
310
+ heroType={HeroTypes.FiftyFifty}
311
+ subHeaderText={otherSubHeaderText}
312
+ image={image}
313
+ />
314
+ </VStack>
315
+ </DSProvider>
249
316
  </Canvas>