@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
@@ -5,17 +5,13 @@ exports[`Radio Button renders the UI snapshot correctly 1`] = `
5
5
  className=" css-0"
6
6
  id="radio-group-column"
7
7
  >
8
- <legend
9
- className=""
10
- >
11
- <span>
12
- column
13
- </span>
14
- <span
8
+ <legend>
9
+ column
10
+ <div
15
11
  className="css-0"
16
12
  >
17
13
  Optional
18
- </span>
14
+ </div>
19
15
  </legend>
20
16
  <div
21
17
  aria-label={null}
@@ -125,17 +121,13 @@ exports[`Radio Button renders the UI snapshot correctly 2`] = `
125
121
  className=" css-0"
126
122
  id="radio-group-row"
127
123
  >
128
- <legend
129
- className=""
130
- >
131
- <span>
132
- row
133
- </span>
134
- <span
124
+ <legend>
125
+ row
126
+ <div
135
127
  className="css-0"
136
128
  >
137
129
  Optional
138
- </span>
130
+ </div>
139
131
  </legend>
140
132
  <div
141
133
  aria-label={null}
@@ -245,17 +237,13 @@ exports[`Radio Button renders the UI snapshot correctly 3`] = `
245
237
  className=" css-0"
246
238
  id="radio-group-noLabel"
247
239
  >
248
- <legend
249
- className="sr-only"
250
- >
251
- <span>
252
- no label
253
- </span>
254
- <span
240
+ <legend>
241
+ no label
242
+ <div
255
243
  className="css-0"
256
244
  >
257
245
  Optional
258
- </span>
246
+ </div>
259
247
  </legend>
260
248
  <div
261
249
  aria-label="no label"
@@ -365,17 +353,13 @@ exports[`Radio Button renders the UI snapshot correctly 4`] = `
365
353
  className=" css-0"
366
354
  id="radio-group-helperText"
367
355
  >
368
- <legend
369
- className=""
370
- >
371
- <span>
372
- helperText
373
- </span>
374
- <span
356
+ <legend>
357
+ helperText
358
+ <div
375
359
  className="css-0"
376
360
  >
377
361
  Optional
378
- </span>
362
+ </div>
379
363
  </legend>
380
364
  <div
381
365
  aria-label={null}
@@ -483,7 +467,9 @@ exports[`Radio Button renders the UI snapshot correctly 4`] = `
483
467
  <div
484
468
  aria-atomic={true}
485
469
  aria-live="off"
486
- className="helper-text"
470
+ className=" css-0"
471
+ data-isinvalid={false}
472
+ id="helperText-helperErrorText"
487
473
  >
488
474
  helper text
489
475
  </div>
@@ -496,17 +482,13 @@ exports[`Radio Button renders the UI snapshot correctly 5`] = `
496
482
  className=" css-0"
497
483
  id="radio-group-invalidText"
498
484
  >
499
- <legend
500
- className=""
501
- >
502
- <span>
503
- invalidText
504
- </span>
505
- <span
485
+ <legend>
486
+ invalidText
487
+ <div
506
488
  className="css-0"
507
489
  >
508
490
  Optional
509
- </span>
491
+ </div>
510
492
  </legend>
511
493
  <div
512
494
  aria-label={null}
@@ -616,12 +598,8 @@ exports[`Radio Button renders the UI snapshot correctly 6`] = `
616
598
  className=" css-0"
617
599
  id="radio-group-optReq"
618
600
  >
619
- <legend
620
- className=""
621
- >
622
- <span>
623
- no optional or required label
624
- </span>
601
+ <legend>
602
+ no optional or required label
625
603
  </legend>
626
604
  <div
627
605
  aria-label={null}
@@ -731,17 +709,13 @@ exports[`Radio Button renders the UI snapshot correctly 7`] = `
731
709
  className=" css-0"
732
710
  id="radio-group-required"
733
711
  >
734
- <legend
735
- className=""
736
- >
737
- <span>
738
- required
739
- </span>
740
- <span
712
+ <legend>
713
+ required
714
+ <div
741
715
  className="css-0"
742
716
  >
743
- Required
744
- </span>
717
+ Optional
718
+ </div>
745
719
  </legend>
746
720
  <div
747
721
  aria-label={null}
@@ -853,17 +827,13 @@ exports[`Radio Button renders the UI snapshot correctly 8`] = `
853
827
  className=" css-0"
854
828
  id="radio-group-invalid"
855
829
  >
856
- <legend
857
- className=""
858
- >
859
- <span>
860
- invalid
861
- </span>
862
- <span
830
+ <legend>
831
+ invalid
832
+ <div
863
833
  className="css-0"
864
834
  >
865
835
  Optional
866
- </span>
836
+ </div>
867
837
  </legend>
868
838
  <div
869
839
  aria-label={null}
@@ -872,6 +842,7 @@ exports[`Radio Button renders the UI snapshot correctly 8`] = `
872
842
  >
873
843
  <label
874
844
  className="chakra-radio css-78joka"
845
+ data-invalid=""
875
846
  >
876
847
  <input
877
848
  aria-invalid={true}
@@ -922,6 +893,7 @@ exports[`Radio Button renders the UI snapshot correctly 8`] = `
922
893
  </label>
923
894
  <label
924
895
  className="chakra-radio css-78joka"
896
+ data-invalid=""
925
897
  >
926
898
  <input
927
899
  aria-invalid={true}
@@ -979,17 +951,13 @@ exports[`Radio Button renders the UI snapshot correctly 9`] = `
979
951
  className=" css-0"
980
952
  id="radio-group-disabled"
981
953
  >
982
- <legend
983
- className=""
984
- >
985
- <span>
986
- disabled
987
- </span>
988
- <span
954
+ <legend>
955
+ disabled
956
+ <div
989
957
  className="css-0"
990
958
  >
991
959
  Optional
992
- </span>
960
+ </div>
993
961
  </legend>
994
962
  <div
995
963
  aria-label={null}
@@ -998,6 +966,7 @@ exports[`Radio Button renders the UI snapshot correctly 9`] = `
998
966
  >
999
967
  <label
1000
968
  className="chakra-radio css-78joka"
969
+ data-disabled=""
1001
970
  >
1002
971
  <input
1003
972
  aria-disabled={true}
@@ -1048,6 +1017,7 @@ exports[`Radio Button renders the UI snapshot correctly 9`] = `
1048
1017
  </label>
1049
1018
  <label
1050
1019
  className="chakra-radio css-78joka"
1020
+ data-disabled=""
1051
1021
  >
1052
1022
  <input
1053
1023
  aria-disabled={true}
@@ -2,15 +2,47 @@ import * as React from "react";
2
2
  import { render, screen } from "@testing-library/react";
3
3
  import { axe } from "jest-axe";
4
4
  import userEvent from "@testing-library/user-event";
5
+ import renderer from "react-test-renderer";
5
6
 
6
- import Button from "../Button/Button";
7
- import { ButtonTypes } from "../Button/ButtonTypes";
8
7
  import SearchBar from "./SearchBar";
9
8
 
9
+ const optionsGroup = [
10
+ "Art",
11
+ "Bushes",
12
+ "Clothing",
13
+ "Flowers",
14
+ "Fossils",
15
+ "Fruits",
16
+ "Furniture",
17
+ "Songs",
18
+ "Tools",
19
+ "Villagers",
20
+ ];
21
+ const selectProps = {
22
+ name: "selectName",
23
+ labelText: "Select a category",
24
+ optionsData: optionsGroup,
25
+ };
26
+ const textInputProps = {
27
+ labelText: "Item Search",
28
+ name: "textInputName",
29
+ placeholder: "Item Search",
30
+ };
31
+ const helperErrorText = "Search for items in Animal Crossing New Horizons";
32
+ const invalidText = "Could not find the item :(";
33
+
10
34
  describe("SearchBar Accessibility", () => {
11
35
  it("passes axe accessibility test", async () => {
12
36
  const { container } = render(
13
- <SearchBar id="id" ariaLabel="searchbar" onSubmit={jest.fn()} />
37
+ <SearchBar
38
+ id="id"
39
+ labelText="Searchbar"
40
+ onSubmit={jest.fn()}
41
+ selectProps={selectProps}
42
+ textInputProps={textInputProps}
43
+ helperErrorText={helperErrorText}
44
+ invalidText={invalidText}
45
+ />
14
46
  );
15
47
  expect(await axe(container)).toHaveNoViolations();
16
48
  });
@@ -20,32 +52,154 @@ describe("SearchBar", () => {
20
52
  const searchBarSubmit = jest.fn();
21
53
  const buttonCallback = jest.fn();
22
54
 
23
- it("Renders SearchBar", () => {
55
+ it("renders the basic form", () => {
24
56
  render(
25
- <SearchBar id="id" ariaLabel="searchbar" onSubmit={searchBarSubmit} />
57
+ <SearchBar
58
+ id="id"
59
+ labelText="searchbar"
60
+ onSubmit={searchBarSubmit}
61
+ textInputProps={textInputProps}
62
+ helperErrorText={helperErrorText}
63
+ />
26
64
  );
27
65
  expect(screen.getByRole("search")).toBeInTheDocument();
28
66
  expect(screen.getByRole("search")).toHaveAttribute(
29
67
  "aria-label",
30
68
  "searchbar"
31
69
  );
70
+ expect(screen.getByPlaceholderText("Item Search")).toBeInTheDocument();
71
+ expect(screen.getByRole("button")).toBeInTheDocument();
72
+ });
73
+
74
+ it("renders an optional Select component", () => {
75
+ render(
76
+ <SearchBar
77
+ id="id"
78
+ labelText="searchbar"
79
+ onSubmit={searchBarSubmit}
80
+ selectProps={selectProps}
81
+ textInputProps={textInputProps}
82
+ helperErrorText={helperErrorText}
83
+ />
84
+ );
85
+ expect(screen.getByRole("combobox")).toBeInTheDocument();
86
+ expect(screen.getByLabelText("Select a category")).toBeInTheDocument();
87
+ });
88
+
89
+ it("renders the invalid text in the invalid state", () => {
90
+ render(
91
+ <SearchBar
92
+ id="id"
93
+ labelText="searchbar"
94
+ onSubmit={searchBarSubmit}
95
+ selectProps={selectProps}
96
+ textInputProps={textInputProps}
97
+ helperErrorText={helperErrorText}
98
+ invalidText={invalidText}
99
+ isInvalid
100
+ />
101
+ );
102
+ expect(screen.getByText(invalidText)).toBeInTheDocument();
103
+ expect(screen.queryByText(helperErrorText)).not.toBeInTheDocument();
104
+ });
105
+
106
+ it("does not render the default invalid text from the Select or TextInput components", () => {
107
+ render(
108
+ <SearchBar
109
+ id="id"
110
+ labelText="searchbar"
111
+ onSubmit={searchBarSubmit}
112
+ selectProps={selectProps}
113
+ textInputProps={textInputProps}
114
+ helperErrorText={helperErrorText}
115
+ invalidText={invalidText}
116
+ isInvalid
117
+ />
118
+ );
119
+ expect(
120
+ screen.queryByText("There is an error related to this field.")
121
+ ).not.toBeInTheDocument();
32
122
  });
33
123
 
34
- it("Search Bar calls call back on Submit ", () => {
124
+ it("calls the callback function on submit ", () => {
35
125
  render(
36
- <SearchBar ariaLabel="searchBar" id="id" onSubmit={searchBarSubmit}>
37
- <Button
38
- buttonType={ButtonTypes.Primary}
39
- id="button"
40
- onClick={buttonCallback}
41
- type="submit"
42
- >
43
- Search
44
- </Button>
45
- </SearchBar>
126
+ <SearchBar
127
+ labelText="searchBar"
128
+ id="id"
129
+ onSubmit={searchBarSubmit}
130
+ selectProps={selectProps}
131
+ textInputProps={textInputProps}
132
+ helperErrorText={helperErrorText}
133
+ />
46
134
  );
47
135
  expect(searchBarSubmit).toHaveBeenCalledTimes(0);
136
+ expect(buttonCallback).toHaveBeenCalledTimes(0);
48
137
  userEvent.click(screen.getByRole("button"));
49
138
  expect(searchBarSubmit).toHaveBeenCalledTimes(1);
139
+ expect(buttonCallback).toHaveBeenCalledTimes(1);
140
+ });
141
+
142
+ it("Renders the UI snapshot correctly", () => {
143
+ const basic = renderer
144
+ .create(
145
+ <SearchBar
146
+ id="id"
147
+ labelText="searchbar"
148
+ onSubmit={jest.fn()}
149
+ textInputProps={textInputProps}
150
+ helperErrorText={helperErrorText}
151
+ />
152
+ )
153
+ .toJSON();
154
+ const withSelect = renderer
155
+ .create(
156
+ <SearchBar
157
+ id="id"
158
+ labelText="searchbar"
159
+ onSubmit={jest.fn()}
160
+ selectProps={selectProps}
161
+ textInputProps={textInputProps}
162
+ helperErrorText={helperErrorText}
163
+ />
164
+ )
165
+ .toJSON();
166
+ const withoutHelperText = renderer
167
+ .create(
168
+ <SearchBar
169
+ id="id"
170
+ labelText="searchbar"
171
+ onSubmit={jest.fn()}
172
+ textInputProps={textInputProps}
173
+ />
174
+ )
175
+ .toJSON();
176
+ const invalidState = renderer
177
+ .create(
178
+ <SearchBar
179
+ id="id"
180
+ labelText="searchbar"
181
+ onSubmit={jest.fn()}
182
+ textInputProps={textInputProps}
183
+ isInvalid
184
+ />
185
+ )
186
+ .toJSON();
187
+ const disabledState = renderer
188
+ .create(
189
+ <SearchBar
190
+ id="id"
191
+ labelText="searchbar"
192
+ onSubmit={jest.fn()}
193
+ textInputProps={textInputProps}
194
+ isDisabled
195
+ />
196
+ )
197
+ .toJSON();
198
+
199
+ expect(basic).toMatchSnapshot();
200
+ expect(withSelect).toMatchSnapshot();
201
+ expect(withoutHelperText).toMatchSnapshot();
202
+ expect(invalidState).toMatchSnapshot();
203
+ expect(disabledState).toMatchSnapshot();
50
204
  });
51
205
  });