@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
@@ -0,0 +1,298 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Breadcrumbs Snapshot Renders the UI snapshot correctly 1`] = `
4
+ <nav
5
+ aria-label="breadcrumb"
6
+ className="chakra-breadcrumb css-0"
7
+ id="breadcrumbs-test"
8
+ >
9
+ <ol
10
+ className="chakra-breadcrumb__list css-0"
11
+ >
12
+ <li
13
+ className="chakra-breadcrumb__list-item css-18biwo"
14
+ >
15
+ <a
16
+ className="chakra-breadcrumb__link css-0"
17
+ href="#string1"
18
+ >
19
+ <span
20
+ className="breadcrumb-label"
21
+ >
22
+ string1
23
+ </span>
24
+ </a>
25
+ <span
26
+ className="css-t4q1nq"
27
+ role="presentation"
28
+ >
29
+ /
30
+ </span>
31
+ </li>
32
+ <li
33
+ className="chakra-breadcrumb__list-item css-18biwo"
34
+ >
35
+ <a
36
+ className="chakra-breadcrumb__link css-0"
37
+ href="#string2"
38
+ >
39
+ <svg
40
+ aria-hidden={true}
41
+ className="chakra-icon breadcrumbs-icon css-onkibi"
42
+ focusable={false}
43
+ id="breadcrumbs-test__backarrow"
44
+ role="img"
45
+ title="arrow icon"
46
+ viewBox="0 0 24 24"
47
+ >
48
+ <g
49
+ stroke="currentColor"
50
+ strokeWidth="1.5"
51
+ >
52
+ <path
53
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
54
+ fill="none"
55
+ strokeLinecap="round"
56
+ />
57
+ <path
58
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
59
+ fill="currentColor"
60
+ strokeLinecap="round"
61
+ />
62
+ <circle
63
+ cx="12"
64
+ cy="12"
65
+ fill="none"
66
+ r="11.25"
67
+ strokeMiterlimit="10"
68
+ />
69
+ </g>
70
+ </svg>
71
+ <span
72
+ className="breadcrumb-label"
73
+ >
74
+ string2
75
+ </span>
76
+ </a>
77
+ <span
78
+ className="css-t4q1nq"
79
+ role="presentation"
80
+ >
81
+ /
82
+ </span>
83
+ </li>
84
+ <li
85
+ className="chakra-breadcrumb__list-item css-18biwo"
86
+ >
87
+ <span
88
+ aria-current="page"
89
+ className="chakra-breadcrumb__link css-0"
90
+ >
91
+ <span
92
+ className="breadcrumb-label"
93
+ >
94
+ string3
95
+ </span>
96
+ </span>
97
+ </li>
98
+ </ol>
99
+ </nav>
100
+ `;
101
+
102
+ exports[`Breadcrumbs Snapshot Renders the UI snapshot correctly 2`] = `
103
+ <nav
104
+ aria-label="breadcrumb"
105
+ className="chakra-breadcrumb css-0"
106
+ id="breadcrumbs-test"
107
+ >
108
+ <ol
109
+ className="chakra-breadcrumb__list css-0"
110
+ >
111
+ <li
112
+ className="chakra-breadcrumb__list-item css-18biwo"
113
+ >
114
+ <a
115
+ className="chakra-breadcrumb__link css-0"
116
+ href="#string1"
117
+ >
118
+ <span
119
+ className="breadcrumb-label"
120
+ >
121
+ string1
122
+ </span>
123
+ </a>
124
+ <span
125
+ className="css-t4q1nq"
126
+ role="presentation"
127
+ >
128
+ /
129
+ </span>
130
+ </li>
131
+ <li
132
+ className="chakra-breadcrumb__list-item css-18biwo"
133
+ >
134
+ <a
135
+ className="chakra-breadcrumb__link css-0"
136
+ href="#string2"
137
+ >
138
+ <svg
139
+ aria-hidden={true}
140
+ className="chakra-icon breadcrumbs-icon css-onkibi"
141
+ focusable={false}
142
+ id="breadcrumbs-test__backarrow"
143
+ role="img"
144
+ title="arrow icon"
145
+ viewBox="0 0 24 24"
146
+ >
147
+ <g
148
+ stroke="currentColor"
149
+ strokeWidth="1.5"
150
+ >
151
+ <path
152
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
153
+ fill="none"
154
+ strokeLinecap="round"
155
+ />
156
+ <path
157
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
158
+ fill="currentColor"
159
+ strokeLinecap="round"
160
+ />
161
+ <circle
162
+ cx="12"
163
+ cy="12"
164
+ fill="none"
165
+ r="11.25"
166
+ strokeMiterlimit="10"
167
+ />
168
+ </g>
169
+ </svg>
170
+ <span
171
+ className="breadcrumb-label"
172
+ >
173
+ string2
174
+ </span>
175
+ </a>
176
+ <span
177
+ className="css-t4q1nq"
178
+ role="presentation"
179
+ >
180
+ /
181
+ </span>
182
+ </li>
183
+ <li
184
+ className="chakra-breadcrumb__list-item css-18biwo"
185
+ >
186
+ <span
187
+ aria-current="page"
188
+ className="chakra-breadcrumb__link css-0"
189
+ >
190
+ <span
191
+ className="breadcrumb-label"
192
+ >
193
+ string3
194
+ </span>
195
+ </span>
196
+ </li>
197
+ </ol>
198
+ </nav>
199
+ `;
200
+
201
+ exports[`Breadcrumbs Snapshot Renders the UI snapshot correctly 3`] = `
202
+ <nav
203
+ aria-label="breadcrumb"
204
+ className="chakra-breadcrumb css-1f2fw9u"
205
+ id="breadcrumbs-test"
206
+ >
207
+ <ol
208
+ className="chakra-breadcrumb__list css-0"
209
+ >
210
+ <li
211
+ className="chakra-breadcrumb__list-item css-18biwo"
212
+ >
213
+ <a
214
+ className="chakra-breadcrumb__link css-0"
215
+ href="#string1"
216
+ >
217
+ <span
218
+ className="breadcrumb-label"
219
+ >
220
+ string1
221
+ </span>
222
+ </a>
223
+ <span
224
+ className="css-t4q1nq"
225
+ role="presentation"
226
+ >
227
+ /
228
+ </span>
229
+ </li>
230
+ <li
231
+ className="chakra-breadcrumb__list-item css-18biwo"
232
+ >
233
+ <a
234
+ className="chakra-breadcrumb__link css-0"
235
+ href="#string2"
236
+ >
237
+ <svg
238
+ aria-hidden={true}
239
+ className="chakra-icon breadcrumbs-icon css-onkibi"
240
+ focusable={false}
241
+ id="breadcrumbs-test__backarrow"
242
+ role="img"
243
+ title="arrow icon"
244
+ viewBox="0 0 24 24"
245
+ >
246
+ <g
247
+ stroke="currentColor"
248
+ strokeWidth="1.5"
249
+ >
250
+ <path
251
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
252
+ fill="none"
253
+ strokeLinecap="round"
254
+ />
255
+ <path
256
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
257
+ fill="currentColor"
258
+ strokeLinecap="round"
259
+ />
260
+ <circle
261
+ cx="12"
262
+ cy="12"
263
+ fill="none"
264
+ r="11.25"
265
+ strokeMiterlimit="10"
266
+ />
267
+ </g>
268
+ </svg>
269
+ <span
270
+ className="breadcrumb-label"
271
+ >
272
+ string2
273
+ </span>
274
+ </a>
275
+ <span
276
+ className="css-t4q1nq"
277
+ role="presentation"
278
+ >
279
+ /
280
+ </span>
281
+ </li>
282
+ <li
283
+ className="chakra-breadcrumb__list-item css-18biwo"
284
+ >
285
+ <span
286
+ aria-current="page"
287
+ className="chakra-breadcrumb__link css-0"
288
+ >
289
+ <span
290
+ className="breadcrumb-label"
291
+ >
292
+ string3
293
+ </span>
294
+ </span>
295
+ </li>
296
+ </ol>
297
+ </nav>
298
+ `;
@@ -6,11 +6,17 @@ import {
6
6
  Description,
7
7
  } from "@storybook/addon-docs/blocks";
8
8
  import { withDesign } from "storybook-addon-designs";
9
+ import { ButtonGroup } from "@chakra-ui/react";
9
10
 
10
- import Button, { ButtonGroup } from "./Button";
11
+ import Button from "./Button";
11
12
  import { ButtonTypes } from "./ButtonTypes";
12
13
  import Icon from "../Icons/Icon";
13
- import { IconNames, IconRotationTypes } from "../Icons/IconTypes";
14
+ import {
15
+ IconAlign,
16
+ IconNames,
17
+ IconRotationTypes,
18
+ IconSizes,
19
+ } from "../Icons/IconTypes";
14
20
  import getCSSVariable from "../../helpers/getCSSVariable";
15
21
  import { getCategory } from "../../utils/componentCategories";
16
22
  import DSProvider from "../../theme/provider";
@@ -22,8 +28,7 @@ import DSProvider from "../../theme/provider";
22
28
  parameters={{
23
29
  design: {
24
30
  type: "figma",
25
- url:
26
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11477%3A2298",
31
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11477%3A2298",
27
32
  },
28
33
  jest: ["Button.test.tsx"],
29
34
  }}
@@ -34,7 +39,7 @@ import DSProvider from "../../theme/provider";
34
39
  | Component Version | DS Version |
35
40
  | ----------------- | ---------- |
36
41
  | Added | `0.0.4` |
37
- | Latest | `0.25.0` |
42
+ | Latest | `0.25.4` |
38
43
 
39
44
  <Description of={Button} />
40
45
 
@@ -43,11 +48,15 @@ that can be rendered.
43
48
 
44
49
  - `ButtonTypes.Primary` is used for actions that move the user forward.
45
50
  - `ButtonTypes.Secondary` is used for actions that move the user back, such as cancellations.
51
+ - `ButtonTypes.Callout` is used for call to action text such as "Donate".
46
52
  - `ButtonTypes.Pill` is used for equally weighted actions within cards and always in a set.
47
53
  - `ButtonTypes.Link` is used for equally weighted actions in a text based list.
54
+ - `ButtonTypes.SearchBar` is a variant only used in the `SearchBar` component.
55
+ - `ButtonTypes.NoBrand` is a variant used when there is no brand and will display
56
+ the background color as black.
48
57
 
49
- When one and only one `Icon` component is passed inside a `Button` component,
50
- it will automatically be configured to use the `"icon-only"` type.
58
+ When one and only one `Icon` component is passed inside a `Button` component with
59
+ no text, it will automatically be configured to use the `"iconOnly"` type.
51
60
 
52
61
  <Canvas withToolbar>
53
62
  <Story name="Basic">{(args) => <Button {...args}>Button Text</Button>}</Story>
@@ -83,7 +92,7 @@ Controls for this Story section to preview a `Button` with the selected icon.
83
92
  args={{
84
93
  displayLeft: true,
85
94
  buttonText: "Button Text",
86
- iconType: IconNames.search,
95
+ iconType: IconNames.Search,
87
96
  }}
88
97
  argTypes={{
89
98
  iconType: {
@@ -99,16 +108,16 @@ Controls for this Story section to preview a `Button` with the selected icon.
99
108
  {args.displayLeft && (
100
109
  <Icon
101
110
  name={args.iconType}
102
- decorative={true}
103
- modifiers={["small", "icon-left"]}
111
+ align={IconAlign.Left}
112
+ size={IconSizes.Small}
104
113
  />
105
114
  )}
106
115
  {args.buttonText}
107
116
  {!args.displayLeft && (
108
117
  <Icon
109
118
  name={args.iconType}
110
- decorative={true}
111
- modifiers={["small", "icon-right"]}
119
+ align={IconAlign.Right}
120
+ size={IconSizes.Small}
112
121
  />
113
122
  )}
114
123
  </Button>
@@ -123,20 +132,20 @@ The icon can be placed to the left or the right of the button text.
123
132
  <ButtonGroup>
124
133
  <Button buttonType={ButtonTypes.Secondary}>
125
134
  <Icon
126
- name={IconNames.arrow}
127
- decorative={true}
128
- iconRotation={IconRotationTypes.rotate90}
129
- modifiers={["small", "icon-left"]}
135
+ name={IconNames.Arrow}
136
+ iconRotation={IconRotationTypes.Rotate90}
137
+ align={IconAlign.Left}
138
+ size={IconSizes.Small}
130
139
  />
131
140
  Previous
132
141
  </Button>
133
142
  <Button buttonType={ButtonTypes.Secondary}>
134
143
  Next
135
144
  <Icon
136
- name={IconNames.arrow}
137
- decorative={true}
138
- iconRotation={IconRotationTypes.rotate270}
139
- modifiers={["small", "icon-right"]}
145
+ name={IconNames.Arrow}
146
+ iconRotation={IconRotationTypes.Rotate270}
147
+ align={IconAlign.Right}
148
+ size={IconSizes.Small}
140
149
  />
141
150
  </Button>
142
151
  </ButtonGroup>
@@ -157,10 +166,9 @@ is an `aria-label` passed to the `Button` component through the `attributes` pro
157
166
  }}
158
167
  >
159
168
  <Icon
160
- name={IconNames.arrow}
161
- decorative={true}
162
- iconRotation={IconRotationTypes.rotate90}
163
- modifiers={["small"]}
169
+ name={IconNames.Arrow}
170
+ iconRotation={IconRotationTypes.Rotate90}
171
+ size={IconSizes.Small}
164
172
  />
165
173
  </Button>
166
174
  <Button
@@ -170,10 +178,9 @@ is an `aria-label` passed to the `Button` component through the `attributes` pro
170
178
  }}
171
179
  >
172
180
  <Icon
173
- name={IconNames.arrow}
174
- decorative={true}
175
- iconRotation={IconRotationTypes.rotate270}
176
- modifiers={["small"]}
181
+ name={IconNames.Arrow}
182
+ iconRotation={IconRotationTypes.Rotate270}
183
+ size={IconSizes.Small}
177
184
  />
178
185
  </Button>
179
186
  <Button
@@ -182,7 +189,7 @@ is an `aria-label` passed to the `Button` component through the `attributes` pro
182
189
  "aria-label": "Close",
183
190
  }}
184
191
  >
185
- <Icon name={IconNames.close} decorative={true} modifiers={["small"]} />
192
+ <Icon name={IconNames.Close} size={IconSizes.Small} />
186
193
  </Button>
187
194
  </ButtonGroup>
188
195
  </DSProvider>
@@ -201,10 +208,11 @@ must include an up arrow icon on the right side.
201
208
  <Button buttonType={ButtonTypes.Secondary}>
202
209
  Back to Top
203
210
  <Icon
204
- name={IconNames.arrow}
205
- decorative={true}
206
- iconRotation={IconRotationTypes.rotate180}
207
- modifiers={["small", "icon-right"]}
211
+ name={IconNames.Arrow}
212
+ iconRotation={IconRotationTypes.Rotate180}
213
+ size={IconSizes.Small}
214
+ className="right"
215
+ align={IconAlign.Right}
208
216
  />
209
217
  </Button>
210
218
  </ButtonGroup>
@@ -223,17 +231,18 @@ The different `ButtonTypes` modified by the `buttonType` prop:
223
231
  <Button buttonType={ButtonTypes.Callout}>Callout</Button>
224
232
  <Button buttonType={ButtonTypes.Pill}>Pill</Button>
225
233
  <Button buttonType={ButtonTypes.Link}>Link</Button>
234
+ <Button buttonType={ButtonTypes.NoBrand}>NoBrand</Button>
226
235
  </ButtonGroup>
227
236
  </DSProvider>
228
237
  </Canvas>
229
238
 
230
- Modifying the `disabled` prop:
239
+ Modifying the `isDisabled` prop:
231
240
 
232
241
  <Canvas>
233
242
  <DSProvider>
234
243
  <ButtonGroup>
235
- <Button disabled={false}>Enabled</Button>
236
- <Button disabled={true}>Disabled</Button>
244
+ <Button isDisabled={false}>Enabled</Button>
245
+ <Button isDisabled>isDisabled</Button>
237
246
  </ButtonGroup>
238
247
  </DSProvider>
239
248
  </Canvas>
@@ -6,7 +6,7 @@ import renderer from "react-test-renderer";
6
6
 
7
7
  import Button from "./Button";
8
8
  import Icon from "../Icons/Icon";
9
- import { IconNames } from "../Icons/IconTypes";
9
+ import { IconAlign, IconNames, IconSizes } from "../Icons/IconTypes";
10
10
  import { ButtonTypes } from "./ButtonTypes";
11
11
 
12
12
  describe("Button Accessibility", () => {
@@ -23,7 +23,6 @@ describe("Button Accessibility", () => {
23
23
 
24
24
  describe("Button", () => {
25
25
  let onClick;
26
- let container;
27
26
  let rerender;
28
27
 
29
28
  beforeEach(() => {
@@ -33,7 +32,6 @@ describe("Button", () => {
33
32
  Submit
34
33
  </Button>
35
34
  );
36
- container = utils.container;
37
35
  rerender = utils.rerender;
38
36
  });
39
37
 
@@ -47,10 +45,6 @@ describe("Button", () => {
47
45
  expect(screen.getByText("Submit")).toBeInTheDocument();
48
46
  });
49
47
 
50
- it("has 'button' class", () => {
51
- expect(container.querySelector(".button")).toBeInTheDocument();
52
- });
53
-
54
48
  it("optionally calls the onClick on mouseDown instead of on click", () => {
55
49
  expect(onClick).toHaveBeenCalledTimes(0);
56
50
  rerender(
@@ -94,13 +88,13 @@ describe("padding for icon only button", () => {
94
88
  const { container } = render(
95
89
  <Button id="button" onClick={onClick} type="button">
96
90
  <Icon
97
- name={IconNames.check}
98
- decorative={true}
99
- modifiers={["small", "icon-left"]}
91
+ align={IconAlign.Left}
92
+ name={IconNames.Check}
93
+ size={IconSizes.Small}
100
94
  />
101
95
  </Button>
102
96
  );
103
- expect(container.querySelector(".button .icon")).toBeInTheDocument();
97
+ expect(container.querySelector("button svg")).toBeInTheDocument();
104
98
  });
105
99
  });
106
100
 
@@ -113,6 +107,13 @@ describe("Button Snapshot", () => {
113
107
  </Button>
114
108
  )
115
109
  .toJSON();
110
+ const disabled = renderer
111
+ .create(
112
+ <Button id="button" onClick={jest.fn()} isDisabled>
113
+ Disabled
114
+ </Button>
115
+ )
116
+ .toJSON();
116
117
  const secondary = renderer
117
118
  .create(
118
119
  <Button
@@ -149,11 +150,36 @@ describe("Button Snapshot", () => {
149
150
  </Button>
150
151
  )
151
152
  .toJSON();
153
+ const searchBar = renderer
154
+ .create(
155
+ <Button
156
+ id="button"
157
+ onClick={jest.fn()}
158
+ buttonType={ButtonTypes.SearchBar}
159
+ >
160
+ SearchBar
161
+ </Button>
162
+ )
163
+ .toJSON();
164
+ const noBrand = renderer
165
+ .create(
166
+ <Button
167
+ id="button"
168
+ onClick={jest.fn()}
169
+ buttonType={ButtonTypes.NoBrand}
170
+ >
171
+ NoBrand
172
+ </Button>
173
+ )
174
+ .toJSON();
152
175
 
153
176
  expect(primary).toMatchSnapshot();
177
+ expect(disabled).toMatchSnapshot();
154
178
  expect(secondary).toMatchSnapshot();
155
179
  expect(callout).toMatchSnapshot();
156
180
  expect(pill).toMatchSnapshot();
157
181
  expect(link).toMatchSnapshot();
182
+ expect(searchBar).toMatchSnapshot();
183
+ expect(noBrand).toMatchSnapshot();
158
184
  });
159
185
  });