@nypl/design-system-react-components 0.25.0 → 0.25.4

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 (392) hide show
  1. package/CHANGELOG.md +142 -1
  2. package/README.md +98 -50
  3. package/dist/components/Accordion/Accordion.d.ts +14 -14
  4. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +15 -14
  5. package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +6 -0
  6. package/dist/components/Button/Button.d.ts +13 -8
  7. package/dist/components/Button/ButtonTypes.d.ts +3 -1
  8. package/dist/components/Card/Card.d.ts +36 -52
  9. package/dist/components/Card/CardTypes.d.ts +2 -17
  10. package/dist/components/Checkbox/Checkbox.d.ts +17 -13
  11. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +45 -0
  12. package/dist/components/CheckboxGroup/CheckboxGroupLayoutTypes.d.ts +4 -0
  13. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +15 -0
  14. package/dist/components/DatePicker/DatePicker.d.ts +37 -35
  15. package/dist/components/Fieldset/Fieldset.d.ts +25 -0
  16. package/dist/components/Form/Form.d.ts +13 -8
  17. package/dist/components/Form/FormTypes.d.ts +2 -8
  18. package/dist/components/Grid/GridTypes.d.ts +9 -0
  19. package/dist/components/Grid/SimpleGrid.d.ts +14 -0
  20. package/dist/components/Heading/Heading.d.ts +4 -4
  21. package/dist/components/HelperErrorText/HelperErrorText.d.ts +17 -14
  22. package/dist/components/Hero/Hero.d.ts +19 -14
  23. package/dist/components/Hero/HeroTypes.d.ts +10 -5
  24. package/dist/components/HorizontalRule/HorizontalRule.d.ts +10 -9
  25. package/dist/components/Icons/Icon.d.ts +19 -14
  26. package/dist/components/Icons/IconSvgs.d.ts +11 -0
  27. package/dist/components/Icons/IconTypes.d.ts +89 -64
  28. package/dist/components/Image/Image.d.ts +19 -9
  29. package/dist/components/Image/ImageTypes.d.ts +20 -0
  30. package/dist/components/Label/Label.d.ts +5 -17
  31. package/dist/components/Link/Link.d.ts +12 -12
  32. package/dist/components/List/List.d.ts +19 -14
  33. package/dist/components/Notification/Notification.d.ts +37 -16
  34. package/dist/components/Pagination/Pagination.d.ts +16 -13
  35. package/dist/components/Pagination/Pagination.stories.d.ts +2 -0
  36. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +29 -0
  37. package/dist/components/ProgressIndicator/ProgressIndicatorTypes.d.ts +8 -0
  38. package/dist/components/Radio/Radio.d.ts +2 -0
  39. package/dist/components/RadioGroup/RadioGroup.d.ts +4 -2
  40. package/dist/components/SearchBar/SearchBar.d.ts +45 -27
  41. package/dist/components/Select/Select.d.ts +34 -35
  42. package/dist/components/Select/SelectTypes.d.ts +4 -0
  43. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +18 -14
  44. package/dist/components/SkeletonLoader/SkeletonLoaderTypes.d.ts +2 -2
  45. package/dist/components/Slider/Slider.d.ts +57 -0
  46. package/dist/components/StatusBadge/StatusBadge.d.ts +8 -6
  47. package/dist/components/StatusBadge/StatusBadgeTypes.d.ts +5 -0
  48. package/dist/components/StyleGuide/ColorCard.d.ts +12 -0
  49. package/dist/components/Tabs/Tabs.d.ts +1 -1
  50. package/dist/components/Template/Template.d.ts +91 -0
  51. package/dist/components/Text/Text.d.ts +16 -0
  52. package/dist/components/Text/TextTypes.d.ts +6 -0
  53. package/dist/components/TextInput/TextInput.d.ts +44 -31
  54. package/dist/components/TextInput/TextInputTypes.d.ts +5 -0
  55. package/dist/components/VideoPlayer/VideoPlayer.d.ts +6 -8
  56. package/dist/components/VideoPlayer/VideoPlayerTypes.d.ts +2 -2
  57. package/dist/design-system-react-components.cjs.development.js +6473 -2630
  58. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  59. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  60. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  61. package/dist/design-system-react-components.esm.js +6463 -2631
  62. package/dist/design-system-react-components.esm.js.map +1 -1
  63. package/dist/hooks/tests/useCarouselStyles.test.d.ts +1 -0
  64. package/dist/hooks/useCarouselStyles.d.ts +16 -0
  65. package/dist/hooks/useNYPLTheme.d.ts +54 -0
  66. package/dist/hooks/useWindowSize.d.ts +10 -0
  67. package/dist/index.d.ts +19 -7
  68. package/dist/resources.scss +180 -170
  69. package/dist/styles.css +1 -1
  70. package/dist/theme/components/accordion.d.ts +25 -0
  71. package/dist/theme/components/breadcrumb.d.ts +90 -0
  72. package/dist/theme/components/button.d.ts +39 -15
  73. package/dist/theme/components/card.d.ts +168 -0
  74. package/dist/theme/components/checkbox.d.ts +12 -8
  75. package/dist/theme/components/checkboxGroup.d.ts +12 -0
  76. package/dist/theme/components/componentWrapper.d.ts +11 -0
  77. package/dist/theme/components/datePicker.d.ts +16 -0
  78. package/dist/theme/components/fieldset.d.ts +27 -0
  79. package/dist/theme/components/global.d.ts +65 -0
  80. package/dist/theme/components/globalMixins.d.ts +23 -0
  81. package/dist/theme/components/heading.d.ts +55 -20
  82. package/dist/theme/components/helperErrorText.d.ts +10 -0
  83. package/dist/theme/components/hero.d.ts +493 -0
  84. package/dist/theme/components/horizontalRule.d.ts +14 -0
  85. package/dist/theme/components/icon.d.ts +13 -0
  86. package/dist/theme/components/image.d.ts +31 -0
  87. package/dist/theme/components/label.d.ts +18 -0
  88. package/dist/theme/components/link.d.ts +49 -0
  89. package/dist/theme/components/list.d.ts +89 -0
  90. package/dist/theme/components/notification.d.ts +75 -0
  91. package/dist/theme/components/pagination.d.ts +19 -0
  92. package/dist/theme/components/progressIndicator.d.ts +50 -0
  93. package/dist/theme/components/radio.d.ts +8 -7
  94. package/dist/theme/components/radioGroup.d.ts +12 -0
  95. package/dist/theme/components/searchBar.d.ts +20 -0
  96. package/dist/theme/components/select.d.ts +67 -0
  97. package/dist/theme/components/skeletonLoader.d.ts +98 -0
  98. package/dist/theme/components/slider.d.ts +51 -0
  99. package/dist/theme/components/statusBadge.d.ts +25 -0
  100. package/dist/theme/components/tabs.d.ts +63 -12
  101. package/dist/theme/components/template.d.ts +105 -0
  102. package/dist/theme/components/text.d.ts +20 -0
  103. package/dist/theme/components/textInput.d.ts +112 -0
  104. package/dist/theme/components/videoPlayer.d.ts +40 -0
  105. package/dist/theme/foundations/breakpoints.d.ts +8 -8
  106. package/dist/theme/foundations/global.d.ts +8 -0
  107. package/dist/theme/foundations/radii.d.ts +5 -0
  108. package/dist/theme/foundations/shadows.d.ts +4 -0
  109. package/dist/theme/foundations/spacing.d.ts +16 -16
  110. package/dist/utils/utils.d.ts +6 -0
  111. package/package.json +72 -82
  112. package/src/__tests__/setup.ts +2 -2
  113. package/src/components/Accordion/Accordion.stories.mdx +223 -34
  114. package/src/components/Accordion/Accordion.test.tsx +135 -19
  115. package/src/components/Accordion/Accordion.tsx +81 -56
  116. package/src/components/Autosuggest/Autosuggest.stories.mdx +4 -4
  117. package/src/components/Autosuggest/Autosuggest.stories.tsx +3 -2
  118. package/src/components/Autosuggest/_Autosuggest.scss +5 -5
  119. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +48 -50
  120. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +54 -25
  121. package/src/components/Breadcrumbs/Breadcrumbs.tsx +75 -73
  122. package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +6 -0
  123. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +298 -0
  124. package/src/components/Button/Button.stories.mdx +45 -36
  125. package/src/components/Button/Button.test.tsx +37 -11
  126. package/src/components/Button/Button.tsx +22 -34
  127. package/src/components/Button/ButtonTypes.tsx +2 -0
  128. package/src/components/Button/__snapshots__/Button.test.tsx.snap +50 -8
  129. package/src/components/Card/Card.stories.mdx +314 -273
  130. package/src/components/Card/Card.test.tsx +157 -91
  131. package/src/components/Card/Card.tsx +195 -145
  132. package/src/components/Card/CardTypes.tsx +2 -19
  133. package/src/components/Card/__snapshots__/Card.test.tsx.snap +410 -0
  134. package/src/components/CardEdition/CardEdition.stories.tsx +26 -53
  135. package/src/components/CardEdition/CardEdition.test.tsx +23 -31
  136. package/src/components/CardEdition/_CardEdition.scss +22 -23
  137. package/src/components/Chakra/Box.stories.mdx +15 -16
  138. package/src/components/Chakra/Center.stories.mdx +56 -24
  139. package/src/components/Chakra/Grid.stories.mdx +92 -0
  140. package/src/components/Chakra/Stack.stories.mdx +38 -21
  141. package/src/components/Checkbox/Checkbox.stories.mdx +33 -11
  142. package/src/components/Checkbox/Checkbox.test.tsx +47 -2
  143. package/src/components/Checkbox/Checkbox.tsx +44 -41
  144. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +92 -7
  145. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +329 -0
  146. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +372 -0
  147. package/src/components/CheckboxGroup/CheckboxGroup.tsx +152 -0
  148. package/src/components/CheckboxGroup/CheckboxGroupLayoutTypes.tsx +4 -0
  149. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +1326 -0
  150. package/src/components/ComponentWrapper/ComponentWrapper.tsx +63 -0
  151. package/src/components/DatePicker/DatePicker.stories.mdx +163 -62
  152. package/src/components/DatePicker/DatePicker.test.tsx +264 -64
  153. package/src/components/DatePicker/DatePicker.tsx +165 -134
  154. package/src/components/DatePicker/_DatePicker.scss +33 -66
  155. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +818 -0
  156. package/src/components/Fieldset/Fieldset.stories.mdx +55 -0
  157. package/src/components/Fieldset/Fieldset.test.tsx +125 -0
  158. package/src/components/Fieldset/Fieldset.tsx +52 -0
  159. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +68 -0
  160. package/src/components/Form/Form.stories.mdx +70 -27
  161. package/src/components/Form/Form.test.tsx +58 -45
  162. package/src/components/Form/Form.tsx +50 -21
  163. package/src/components/Form/FormTypes.tsx +3 -8
  164. package/src/components/Form/__snapshots__/Form.test.tsx.snap +24 -14
  165. package/src/components/Grid/GridTypes.tsx +9 -0
  166. package/src/components/Grid/SimpleGrid.stories.mdx +268 -0
  167. package/src/components/Grid/SimpleGrid.test.tsx +66 -0
  168. package/src/components/Grid/SimpleGrid.tsx +37 -0
  169. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +8 -0
  170. package/src/components/Heading/Heading.stories.mdx +3 -3
  171. package/src/components/Heading/Heading.tsx +12 -6
  172. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +124 -0
  173. package/src/components/HelperErrorText/HelperErrorText.test.tsx +39 -44
  174. package/src/components/HelperErrorText/HelperErrorText.tsx +37 -39
  175. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +25 -0
  176. package/src/components/Hero/Hero.stories.mdx +198 -121
  177. package/src/components/Hero/Hero.test.tsx +537 -107
  178. package/src/components/Hero/Hero.tsx +79 -92
  179. package/src/components/Hero/HeroTypes.tsx +18 -5
  180. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +307 -0
  181. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +8 -6
  182. package/src/components/HorizontalRule/HorizontalRule.test.tsx +33 -28
  183. package/src/components/HorizontalRule/HorizontalRule.tsx +27 -29
  184. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +27 -9
  185. package/src/components/Icons/Icon.stories.mdx +94 -77
  186. package/src/components/Icons/Icon.test.tsx +48 -22
  187. package/src/components/Icons/Icon.tsx +78 -61
  188. package/src/components/Icons/IconSvgs.tsx +22 -0
  189. package/src/components/Icons/IconTypes.tsx +91 -64
  190. package/src/components/Image/Image.stories.mdx +220 -0
  191. package/src/components/Image/Image.test.tsx +131 -29
  192. package/src/components/Image/Image.tsx +84 -56
  193. package/src/components/Image/ImageTypes.ts +22 -0
  194. package/src/components/Image/__snapshots__/Image.test.tsx.snap +190 -0
  195. package/src/components/Input/Input.stories.tsx +23 -67
  196. package/src/components/Input/Input.test.tsx +4 -4
  197. package/src/components/Input/_Input.scss +23 -14
  198. package/src/components/Label/Label.stories.mdx +28 -7
  199. package/src/components/Label/Label.test.tsx +43 -12
  200. package/src/components/Label/Label.tsx +21 -34
  201. package/src/components/Label/__snapshots__/Label.test.tsx.snap +41 -0
  202. package/src/components/Link/Link.stories.mdx +41 -41
  203. package/src/components/Link/Link.test.tsx +33 -44
  204. package/src/components/Link/Link.tsx +117 -100
  205. package/src/components/List/List.stories.mdx +124 -51
  206. package/src/components/List/List.test.tsx +142 -63
  207. package/src/components/List/List.tsx +89 -93
  208. package/src/components/List/__snapshots__/List.test.tsx.snap +109 -0
  209. package/src/components/Modal/Modal.stories.mdx +3 -3
  210. package/src/components/Modal/_Modal.scss +2 -2
  211. package/src/components/Notification/Notification.stories.mdx +119 -111
  212. package/src/components/Notification/Notification.test.tsx +102 -126
  213. package/src/components/Notification/Notification.tsx +157 -161
  214. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +159 -8
  215. package/src/components/Pagination/Pagination.stories.mdx +26 -27
  216. package/src/components/Pagination/Pagination.stories.tsx +11 -16
  217. package/src/components/Pagination/Pagination.test.tsx +276 -140
  218. package/src/components/Pagination/Pagination.tsx +174 -154
  219. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +285 -0
  220. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +292 -0
  221. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +225 -0
  222. package/src/components/ProgressIndicator/ProgressIndicator.tsx +126 -0
  223. package/src/components/ProgressIndicator/ProgressIndicatorTypes.ts +8 -0
  224. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +357 -0
  225. package/src/components/Radio/Radio.test.tsx +20 -4
  226. package/src/components/Radio/Radio.tsx +6 -3
  227. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +3 -0
  228. package/src/components/RadioGroup/RadioGroup.stories.mdx +4 -5
  229. package/src/components/RadioGroup/RadioGroup.test.tsx +24 -1
  230. package/src/components/RadioGroup/RadioGroup.tsx +21 -29
  231. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +42 -72
  232. package/src/components/SearchBar/SearchBar.Test.tsx +170 -16
  233. package/src/components/SearchBar/SearchBar.stories.mdx +294 -219
  234. package/src/components/SearchBar/SearchBar.tsx +161 -46
  235. package/src/components/Select/Select.stories.mdx +188 -170
  236. package/src/components/Select/Select.test.tsx +132 -375
  237. package/src/components/Select/Select.tsx +121 -165
  238. package/src/components/Select/SelectTypes.tsx +5 -0
  239. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +33 -76
  240. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +97 -177
  241. package/src/components/SkeletonLoader/SkeletonLoader.tsx +75 -70
  242. package/src/components/SkeletonLoader/SkeletonLoaderTypes.tsx +2 -2
  243. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +739 -0
  244. package/src/components/Slider/Slider.stories.mdx +529 -0
  245. package/src/components/Slider/Slider.test.tsx +653 -0
  246. package/src/components/Slider/Slider.tsx +303 -0
  247. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +1946 -0
  248. package/src/components/StatusBadge/StatusBadge.stories.mdx +91 -0
  249. package/src/components/StatusBadge/StatusBadge.test.tsx +35 -7
  250. package/src/components/StatusBadge/StatusBadge.tsx +24 -25
  251. package/src/components/StatusBadge/StatusBadgeTypes.tsx +5 -0
  252. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +28 -0
  253. package/src/components/StyleGuide/Bidirectionality.stories.mdx +17 -17
  254. package/src/components/StyleGuide/Breakpoints.stories.mdx +34 -10
  255. package/src/components/StyleGuide/Buttons.stories.mdx +102 -86
  256. package/src/components/StyleGuide/ColorCard.tsx +46 -0
  257. package/src/components/StyleGuide/Colors.stories.mdx +196 -0
  258. package/src/components/StyleGuide/DesignTokens.stories.mdx +170 -0
  259. package/src/components/StyleGuide/Forms.stories.mdx +9 -7
  260. package/src/components/StyleGuide/Iconography.stories.mdx +119 -127
  261. package/src/components/StyleGuide/Spacing.stories.mdx +31 -23
  262. package/src/components/StyleGuide/Typography.stories.mdx +202 -189
  263. package/src/components/StyleGuide/UIDocCard.tsx +1 -1
  264. package/src/components/Tabs/Tabs.stories.mdx +73 -11
  265. package/src/components/Tabs/Tabs.tsx +88 -67
  266. package/src/components/Template/Template.stories.mdx +572 -0
  267. package/src/components/Template/Template.test.tsx +124 -0
  268. package/src/components/Template/Template.tsx +226 -0
  269. package/src/components/Text/Text.stories.mdx +70 -0
  270. package/src/components/Text/Text.test.tsx +63 -0
  271. package/src/components/Text/Text.tsx +55 -0
  272. package/src/components/Text/TextTypes.tsx +6 -0
  273. package/src/components/Text/__snapshots__/Text.test.tsx.snap +33 -0
  274. package/src/components/TextInput/TextInput.stories.mdx +89 -90
  275. package/src/components/TextInput/TextInput.test.tsx +84 -85
  276. package/src/components/TextInput/TextInput.tsx +121 -95
  277. package/src/components/TextInput/TextInputTypes.tsx +8 -0
  278. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +17 -4
  279. package/src/components/VideoPlayer/VideoPlayer.test.tsx +54 -53
  280. package/src/components/VideoPlayer/VideoPlayer.tsx +50 -51
  281. package/src/components/VideoPlayer/VideoPlayerTypes.tsx +2 -2
  282. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +91 -0
  283. package/src/docs/Chakra.stories.mdx +246 -65
  284. package/src/docs/Intro.stories.mdx +18 -13
  285. package/src/hooks/tests/useCarouselStyles.test.ts +140 -0
  286. package/src/hooks/tests/useNYPLTheme.test.tsx +36 -0
  287. package/src/hooks/useCarouselStyles.ts +34 -0
  288. package/src/hooks/useNYPLTheme.ts +67 -0
  289. package/src/hooks/useWindowSize.ts +40 -0
  290. package/src/index.ts +39 -16
  291. package/src/resources.scss +5 -5
  292. package/src/styles/base/{_02-breakpoints.scss → _01-breakpoints.scss} +9 -10
  293. package/src/styles/base/{_03-mixins.scss → _02-mixins.scss} +16 -5
  294. package/src/styles/base/_03-base.scss +25 -0
  295. package/src/styles/base/{_05-focus.scss → _04-focus.scss} +0 -15
  296. package/src/styles/base/_place-holder.scss +14 -3
  297. package/src/styles/{03-space → space}/_space-inline.scss +14 -14
  298. package/src/styles/{03-space → space}/_space-inset.scss +10 -10
  299. package/src/styles/space/_space-stack.scss +116 -0
  300. package/src/styles.scss +13 -62
  301. package/src/theme/components/accordion.ts +30 -0
  302. package/src/theme/components/breadcrumb.ts +77 -0
  303. package/src/theme/components/button.ts +91 -71
  304. package/src/theme/components/card.ts +174 -0
  305. package/src/theme/components/checkbox.ts +22 -29
  306. package/src/theme/components/checkboxGroup.ts +8 -0
  307. package/src/theme/components/componentWrapper.ts +10 -0
  308. package/src/theme/components/datePicker.ts +17 -0
  309. package/src/theme/components/fieldset.ts +18 -0
  310. package/src/theme/components/global.ts +82 -0
  311. package/src/theme/components/globalMixins.ts +24 -0
  312. package/src/theme/components/heading.ts +25 -13
  313. package/src/theme/components/helperErrorText.ts +9 -0
  314. package/src/theme/components/hero.ts +240 -0
  315. package/src/theme/components/horizontalRule.ts +13 -0
  316. package/src/theme/components/icon.ts +79 -0
  317. package/src/theme/components/image.ts +116 -0
  318. package/src/theme/components/label.ts +10 -0
  319. package/src/theme/components/link.ts +51 -0
  320. package/src/theme/components/list.ts +73 -0
  321. package/src/theme/components/notification.ts +93 -0
  322. package/src/theme/components/pagination.ts +20 -0
  323. package/src/theme/components/progressIndicator.ts +62 -0
  324. package/src/theme/components/radio.ts +22 -33
  325. package/src/theme/components/radioGroup.ts +8 -0
  326. package/src/theme/components/searchBar.ts +21 -0
  327. package/src/theme/components/select.ts +53 -0
  328. package/src/theme/components/skeletonLoader.ts +107 -0
  329. package/src/theme/components/slider.ts +79 -0
  330. package/src/theme/components/statusBadge.ts +26 -0
  331. package/src/theme/components/tabs.ts +102 -69
  332. package/src/theme/components/template.ts +114 -0
  333. package/src/theme/components/text.ts +31 -0
  334. package/src/theme/components/textInput.ts +62 -0
  335. package/src/theme/components/videoPlayer.ts +49 -0
  336. package/src/theme/foundations/breakpoints.ts +8 -8
  337. package/src/theme/foundations/colors.ts +29 -13
  338. package/src/theme/foundations/global.ts +8 -0
  339. package/src/theme/foundations/radii.ts +6 -0
  340. package/src/theme/foundations/shadows.ts +5 -0
  341. package/src/theme/foundations/spacing.ts +24 -24
  342. package/src/theme/index.ts +74 -13
  343. package/src/utils/componentCategories.ts +12 -5
  344. package/src/utils/utils.ts +13 -0
  345. package/dist/components/Accordion/Accordion.stories.d.ts +0 -6
  346. package/dist/components/HelperErrorText/HelperErrorText.stories.d.ts +0 -16
  347. package/dist/components/Image/Image.stories.d.ts +0 -18
  348. package/dist/components/List/List.stories.d.ts +0 -7
  349. package/dist/components/StatusBadge/StatusBadge.stories.d.ts +0 -8
  350. package/dist/components/StyleGuide/Colors.stories.d.ts +0 -25
  351. package/dist/components/Template/Template.stories.d.ts +0 -30
  352. package/dist/theme/components/customRadioGroup.d.ts +0 -17
  353. package/src/components/Accordion/Accordion.stories.tsx +0 -66
  354. package/src/components/Accordion/_Accordion.scss +0 -81
  355. package/src/components/Breadcrumbs/_Breadcrumbs.scss +0 -97
  356. package/src/components/Button/_Button.scss +0 -56
  357. package/src/components/Card/_Card.scss +0 -308
  358. package/src/components/Form/_Form.scss +0 -67
  359. package/src/components/HelperErrorText/HelperErrorText.stories.tsx +0 -48
  360. package/src/components/HelperErrorText/_HelperErrorText.scss +0 -9
  361. package/src/components/Hero/_Hero.scss +0 -256
  362. package/src/components/HorizontalRule/_HorizontalRule.scss +0 -15
  363. package/src/components/Icons/_Icons.scss +0 -116
  364. package/src/components/Image/Image.stories.tsx +0 -54
  365. package/src/components/Image/_Image.scss +0 -38
  366. package/src/components/Label/_Label.scss +0 -22
  367. package/src/components/Link/_Link.scss +0 -73
  368. package/src/components/List/List.stories.tsx +0 -139
  369. package/src/components/List/_List.scss +0 -76
  370. package/src/components/Notification/_Notification.scss +0 -110
  371. package/src/components/Pagination/_Pagination.scss +0 -40
  372. package/src/components/SearchBar/_SearchBar.scss +0 -16
  373. package/src/components/Select/_Select.scss +0 -82
  374. package/src/components/SkeletonLoader/_SkeletonLoader.scss +0 -142
  375. package/src/components/StatusBadge/StatusBadge.stories.tsx +0 -34
  376. package/src/components/StatusBadge/_StatusBadge.scss +0 -23
  377. package/src/components/StyleGuide/Colors.stories.tsx +0 -289
  378. package/src/components/Template/Template.stories.tsx +0 -86
  379. package/src/components/Template/_Template.scss +0 -63
  380. package/src/components/TextInput/_TextInput.scss +0 -59
  381. package/src/components/VideoPlayer/_VideoPlayer.scss +0 -38
  382. package/src/styles/01-colors/_colors-brand.scss +0 -56
  383. package/src/styles/01-colors/_colors-utility.scss +0 -65
  384. package/src/styles/02-typography/_type-scale.css +0 -11
  385. package/src/styles/02-typography/_type-weight.css +0 -7
  386. package/src/styles/02-typography/_typefaces.css +0 -4
  387. package/src/styles/03-space/_space-stack.scss +0 -116
  388. package/src/styles/03-space/_space.css +0 -30
  389. package/src/styles/base/_04-base.scss +0 -19
  390. package/src/styles/base/_card-grid.scss +0 -78
  391. package/src/styles/base/_typography.scss +0 -11
  392. package/src/theme/components/customRadioGroup.ts +0 -18
@@ -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.2` |
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,193 @@ 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
+ />
180
200
  <Hero
181
- heroType={HeroTypes.Secondary}
201
+ heroType={HeroTypes.SecondaryResearch}
182
202
  heading={
183
203
  <Heading
184
204
  level={HeadingLevels.One}
185
- id="1"
186
- text={"Books and More"}
187
- blockName="hero"
205
+ id="research-hero"
206
+ text="Research"
188
207
  />
189
208
  }
190
209
  subHeaderText={secondarySubHeaderText}
191
- image={secondaryImage}
210
+ image={image}
211
+ />
212
+ <Heading
213
+ level={HeadingLevels.Two}
214
+ text="HeroTypes.SecondaryWhatsOn"
215
+ id="whats-on-heading"
192
216
  />
193
- </div>
217
+ <Hero
218
+ heroType={HeroTypes.SecondaryWhatsOn}
219
+ heading={
220
+ <Heading
221
+ level={HeadingLevels.One}
222
+ id="whats-on-hero"
223
+ text="What's On"
224
+ />
225
+ }
226
+ subHeaderText={secondarySubHeaderText}
227
+ image={image}
228
+ />
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>
233
+ ## All Variations
214
234
 
215
235
  <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>
232
-
233
- <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 with Sub-Header"
281
+ />
282
+ }
283
+ subHeaderText={otherSubHeaderText}
284
+ />
285
+ <Hero
286
+ heroType={HeroTypes.Tertiary}
287
+ heading={
288
+ <Heading
289
+ level={HeadingLevels.One}
290
+ id="tertiary-hero"
291
+ text="Hero Tertiary without Sub-Header"
292
+ />
293
+ }
294
+ />
295
+ <Heading
296
+ level={HeadingLevels.Two}
297
+ text="Campaign"
298
+ id="campaign-heading"
299
+ />
300
+ <Hero
301
+ heroType={HeroTypes.Campaign}
302
+ heading={
303
+ <Heading
304
+ level={HeadingLevels.One}
305
+ id="campaign-hero"
306
+ text="Hero Campaign"
307
+ />
308
+ }
309
+ subHeaderText={otherSubHeaderText}
310
+ backgroundImageSrc="https://placeimg.com/2400/800/nature/grayscale"
311
+ image={image}
312
+ />
313
+ <Box marginTop="30px" />
314
+ <Heading
315
+ level={HeadingLevels.Two}
316
+ text="FiftyFifty"
317
+ id="fiftyfifty-heading"
318
+ />
319
+ <Hero
320
+ heroType={HeroTypes.FiftyFifty}
321
+ subHeaderText={otherSubHeaderText}
322
+ image={image}
323
+ />
324
+ </VStack>
325
+ </DSProvider>
249
326
  </Canvas>