@nypl/design-system-react-components 0.25.12 → 0.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (337) hide show
  1. package/CHANGELOG.md +131 -1
  2. package/README.md +10 -10
  3. package/dist/components/Accordion/Accordion.d.ts +6 -4
  4. package/dist/components/Accordion/AccordionTypes.d.ts +5 -0
  5. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +4 -4
  6. package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +1 -1
  7. package/dist/components/Button/Button.d.ts +2 -2
  8. package/dist/components/Card/Card.d.ts +22 -29
  9. package/dist/components/Checkbox/Checkbox.d.ts +3 -3
  10. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +9 -6
  11. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +1 -1
  12. package/dist/components/DatePicker/DatePicker.d.ts +5 -6
  13. package/dist/components/Fieldset/Fieldset.d.ts +5 -6
  14. package/dist/components/Form/Form.d.ts +6 -6
  15. package/dist/components/Grid/GridTypes.d.ts +7 -7
  16. package/dist/components/Grid/SimpleGrid.d.ts +1 -1
  17. package/dist/components/Heading/Heading.d.ts +5 -5
  18. package/dist/components/Heading/HeadingTypes.d.ts +1 -1
  19. package/dist/components/HelperErrorText/HelperErrorText.d.ts +9 -8
  20. package/dist/components/Hero/Hero.d.ts +9 -5
  21. package/dist/components/HorizontalRule/HorizontalRule.d.ts +2 -10
  22. package/dist/components/Icons/Icon.d.ts +2 -1
  23. package/dist/components/Icons/IconTypes.d.ts +1 -0
  24. package/dist/components/Image/Image.d.ts +27 -9
  25. package/dist/components/Image/ImageTypes.d.ts +4 -4
  26. package/dist/components/Label/Label.d.ts +7 -4
  27. package/dist/components/Link/Link.d.ts +1 -1
  28. package/dist/components/List/List.d.ts +11 -11
  29. package/dist/components/List/ListTypes.d.ts +1 -1
  30. package/dist/components/Logo/Logo.d.ts +2 -1
  31. package/dist/components/Logo/LogoSvgs.d.ts +2 -0
  32. package/dist/components/Logo/LogoTypes.d.ts +4 -2
  33. package/dist/components/Notification/Notification.d.ts +7 -7
  34. package/dist/components/Pagination/Pagination.d.ts +2 -2
  35. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +3 -3
  36. package/dist/components/Radio/Radio.d.ts +5 -7
  37. package/dist/components/RadioGroup/RadioGroup.d.ts +16 -8
  38. package/dist/components/SearchBar/SearchBar.d.ts +4 -4
  39. package/dist/components/Select/Select.d.ts +12 -8
  40. package/dist/components/Select/SelectTypes.d.ts +4 -0
  41. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +8 -6
  42. package/dist/components/SkeletonLoader/SkeletonLoaderTypes.d.ts +0 -4
  43. package/dist/components/Slider/Slider.d.ts +6 -4
  44. package/dist/components/StatusBadge/StatusBadge.d.ts +5 -1
  45. package/dist/components/StructuredContent/StructuredContent.d.ts +10 -23
  46. package/dist/components/Table/Table.d.ts +1 -1
  47. package/dist/components/Tabs/Tabs.d.ts +7 -6
  48. package/dist/components/Template/Template.d.ts +17 -8
  49. package/dist/components/Text/Text.d.ts +4 -4
  50. package/dist/components/Text/TextTypes.d.ts +1 -1
  51. package/dist/components/TextInput/TextInput.d.ts +7 -7
  52. package/dist/components/Toggle/Toggle.d.ts +8 -10
  53. package/dist/components/Toggle/{ToggleSizes.d.ts → ToggleTypes.d.ts} +1 -1
  54. package/dist/components/VideoPlayer/VideoPlayer.d.ts +2 -1
  55. package/dist/design-system-react-components.cjs.development.js +2075 -1468
  56. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  57. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  58. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  59. package/dist/design-system-react-components.esm.js +2086 -1483
  60. package/dist/design-system-react-components.esm.js.map +1 -1
  61. package/dist/helpers/enums.d.ts +4 -0
  62. package/dist/hooks/useCarouselStyles.d.ts +3 -2
  63. package/dist/hooks/useNYPLTheme.d.ts +12 -0
  64. package/dist/index.d.ts +11 -9
  65. package/dist/styles.css +1 -1
  66. package/dist/theme/components/accordion.d.ts +7 -12
  67. package/dist/theme/components/breadcrumb.d.ts +3 -0
  68. package/dist/theme/components/button.d.ts +10 -2
  69. package/dist/theme/components/card.d.ts +44 -24
  70. package/dist/theme/components/checkbox.d.ts +6 -4
  71. package/dist/theme/components/checkboxGroup.d.ts +4 -2
  72. package/dist/theme/components/componentWrapper.d.ts +2 -2
  73. package/dist/theme/components/customTable.d.ts +84 -1
  74. package/dist/theme/components/fieldset.d.ts +4 -14
  75. package/dist/theme/components/global.d.ts +25 -18
  76. package/dist/theme/components/heading.d.ts +53 -0
  77. package/dist/theme/components/helperErrorText.d.ts +1 -0
  78. package/dist/theme/components/hero.d.ts +21 -15
  79. package/dist/theme/components/image.d.ts +1 -1
  80. package/dist/theme/components/label.d.ts +9 -10
  81. package/dist/theme/components/list.d.ts +99 -9
  82. package/dist/theme/components/notification.d.ts +4 -4
  83. package/dist/theme/components/pagination.d.ts +2 -5
  84. package/dist/theme/components/radio.d.ts +7 -4
  85. package/dist/theme/components/radioGroup.d.ts +4 -2
  86. package/dist/theme/components/select.d.ts +37 -5
  87. package/dist/theme/components/skeletonLoader.d.ts +2 -2
  88. package/dist/theme/components/slider.d.ts +6 -3
  89. package/dist/theme/components/structuredContent.d.ts +197 -0
  90. package/dist/theme/components/textInput.d.ts +18 -6
  91. package/dist/theme/components/toggle.d.ts +20 -5
  92. package/dist/theme/foundations/global.d.ts +2 -0
  93. package/dist/theme/foundations/radii.d.ts +1 -0
  94. package/dist/theme/foundations/spacing.d.ts +46 -43
  95. package/package.json +5 -6
  96. package/src/components/AccessibilityGuide/SkipNavigation.stories.mdx +34 -0
  97. package/src/components/Accordion/Accordion.stories.mdx +150 -66
  98. package/src/components/Accordion/Accordion.test.tsx +65 -17
  99. package/src/components/Accordion/Accordion.tsx +61 -27
  100. package/src/components/Accordion/AccordionTypes.tsx +5 -0
  101. package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +505 -14
  102. package/src/components/Autosuggest/Autosuggest.stories.mdx +4 -3
  103. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +37 -19
  104. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +57 -36
  105. package/src/components/Breadcrumbs/Breadcrumbs.tsx +14 -13
  106. package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +1 -1
  107. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +211 -12
  108. package/src/components/Button/Button.stories.mdx +87 -23
  109. package/src/components/Button/Button.test.tsx +25 -0
  110. package/src/components/Button/Button.tsx +18 -7
  111. package/src/components/Button/__snapshots__/Button.test.tsx.snap +27 -7
  112. package/src/components/Card/Card.stories.mdx +493 -329
  113. package/src/components/Card/Card.test.tsx +138 -18
  114. package/src/components/Card/Card.tsx +151 -85
  115. package/src/components/Card/__snapshots__/Card.test.tsx.snap +221 -101
  116. package/src/components/Chakra/Center.stories.mdx +2 -2
  117. package/src/components/Chakra/Grid.stories.mdx +4 -4
  118. package/src/components/Checkbox/Checkbox.stories.mdx +73 -9
  119. package/src/components/Checkbox/Checkbox.test.tsx +89 -10
  120. package/src/components/Checkbox/Checkbox.tsx +26 -16
  121. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +209 -6
  122. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +135 -23
  123. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +216 -90
  124. package/src/components/CheckboxGroup/CheckboxGroup.tsx +39 -26
  125. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +493 -89
  126. package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +12 -0
  127. package/src/components/ComponentWrapper/ComponentWrapper.tsx +39 -41
  128. package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +47 -34
  129. package/src/components/DatePicker/DatePicker.stories.mdx +63 -27
  130. package/src/components/DatePicker/DatePicker.test.tsx +94 -15
  131. package/src/components/DatePicker/DatePicker.tsx +67 -58
  132. package/src/components/DatePicker/_DatePicker.scss +71 -13
  133. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +250 -206
  134. package/src/components/Fieldset/Fieldset.stories.mdx +33 -3
  135. package/src/components/Fieldset/Fieldset.test.tsx +58 -28
  136. package/src/components/Fieldset/Fieldset.tsx +35 -30
  137. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +40 -19
  138. package/src/components/Form/Form.stories.mdx +118 -47
  139. package/src/components/Form/Form.test.tsx +59 -16
  140. package/src/components/Form/Form.tsx +89 -65
  141. package/src/components/Form/__snapshots__/Form.test.tsx.snap +83 -5
  142. package/src/components/Grid/GridTypes.tsx +7 -7
  143. package/src/components/Grid/SimpleGrid.stories.mdx +87 -41
  144. package/src/components/Grid/SimpleGrid.test.tsx +24 -9
  145. package/src/components/Grid/SimpleGrid.tsx +29 -20
  146. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +16 -1
  147. package/src/components/Heading/Heading.stories.mdx +56 -25
  148. package/src/components/Heading/Heading.test.tsx +17 -7
  149. package/src/components/Heading/Heading.tsx +60 -58
  150. package/src/components/Heading/HeadingTypes.tsx +1 -1
  151. package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +27 -8
  152. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +64 -42
  153. package/src/components/HelperErrorText/HelperErrorText.test.tsx +15 -0
  154. package/src/components/HelperErrorText/HelperErrorText.tsx +40 -35
  155. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +35 -4
  156. package/src/components/Hero/Hero.stories.mdx +143 -113
  157. package/src/components/Hero/Hero.test.tsx +146 -58
  158. package/src/components/Hero/Hero.tsx +144 -112
  159. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +89 -17
  160. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +26 -4
  161. package/src/components/HorizontalRule/HorizontalRule.test.tsx +9 -17
  162. package/src/components/HorizontalRule/HorizontalRule.tsx +9 -25
  163. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +18 -5
  164. package/src/components/Icons/Icon.stories.mdx +80 -23
  165. package/src/components/Icons/Icon.test.tsx +51 -2
  166. package/src/components/Icons/Icon.tsx +93 -71
  167. package/src/components/Icons/IconTypes.tsx +1 -0
  168. package/src/components/Icons/__snapshots__/Icon.test.tsx.snap +129 -0
  169. package/src/components/Image/Image.stories.mdx +160 -71
  170. package/src/components/Image/Image.test.tsx +40 -48
  171. package/src/components/Image/Image.tsx +80 -48
  172. package/src/components/Image/ImageTypes.ts +4 -4
  173. package/src/components/Image/__snapshots__/Image.test.tsx.snap +84 -21
  174. package/src/components/Label/Label.stories.mdx +42 -20
  175. package/src/components/Label/Label.test.tsx +42 -17
  176. package/src/components/Label/Label.tsx +22 -13
  177. package/src/components/Label/__snapshots__/Label.test.tsx.snap +19 -15
  178. package/src/components/Link/Link.stories.mdx +25 -1
  179. package/src/components/Link/Link.test.tsx +21 -0
  180. package/src/components/Link/Link.tsx +16 -9
  181. package/src/components/Link/__snapshots__/Link.test.tsx.snap +37 -11
  182. package/src/components/List/List.stories.mdx +75 -40
  183. package/src/components/List/List.test.tsx +73 -22
  184. package/src/components/List/List.tsx +44 -28
  185. package/src/components/List/ListTypes.tsx +1 -1
  186. package/src/components/List/__snapshots__/List.test.tsx.snap +110 -8
  187. package/src/components/Logo/Logo.stories.mdx +40 -16
  188. package/src/components/Logo/Logo.test.tsx +29 -2
  189. package/src/components/Logo/Logo.tsx +28 -11
  190. package/src/components/Logo/LogoSvgs.tsx +4 -0
  191. package/src/components/Logo/LogoTypes.tsx +3 -1
  192. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +73 -2
  193. package/src/components/Modal/Modal.stories.mdx +13 -0
  194. package/src/components/Notification/Notification.stories.mdx +29 -5
  195. package/src/components/Notification/Notification.test.tsx +23 -0
  196. package/src/components/Notification/Notification.tsx +53 -51
  197. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +158 -29
  198. package/src/components/Pagination/Pagination.stories.mdx +27 -6
  199. package/src/components/Pagination/Pagination.test.tsx +55 -2
  200. package/src/components/Pagination/Pagination.tsx +12 -9
  201. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +244 -27
  202. package/src/components/Placeholder/Placeholder.tsx +3 -1
  203. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +76 -10
  204. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +87 -13
  205. package/src/components/ProgressIndicator/ProgressIndicator.tsx +20 -10
  206. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +101 -14
  207. package/src/components/Radio/Radio.stories.mdx +75 -11
  208. package/src/components/Radio/Radio.test.tsx +83 -9
  209. package/src/components/Radio/Radio.tsx +70 -62
  210. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +163 -5
  211. package/src/components/RadioGroup/RadioGroup.stories.mdx +293 -94
  212. package/src/components/RadioGroup/RadioGroup.test.tsx +193 -68
  213. package/src/components/RadioGroup/RadioGroup.tsx +110 -101
  214. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +1258 -902
  215. package/src/components/SearchBar/SearchBar.stories.mdx +101 -36
  216. package/src/components/SearchBar/{SearchBar.Test.tsx → SearchBar.test.tsx} +46 -4
  217. package/src/components/SearchBar/SearchBar.tsx +20 -11
  218. package/src/components/SearchBar/__snapshots__/SearchBar.test.tsx.snap +1039 -0
  219. package/src/components/Select/Select.stories.mdx +151 -62
  220. package/src/components/Select/Select.test.tsx +56 -44
  221. package/src/components/Select/Select.tsx +125 -104
  222. package/src/components/Select/SelectTypes.tsx +5 -0
  223. package/src/components/Select/__snapshots__/Select.test.tsx.snap +749 -409
  224. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +53 -23
  225. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +14 -8
  226. package/src/components/SkeletonLoader/SkeletonLoader.tsx +80 -78
  227. package/src/components/SkeletonLoader/SkeletonLoaderTypes.tsx +0 -5
  228. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +169 -10
  229. package/src/components/Slider/Slider.stories.mdx +123 -41
  230. package/src/components/Slider/Slider.test.tsx +65 -17
  231. package/src/components/Slider/Slider.tsx +30 -23
  232. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +403 -226
  233. package/src/components/StatusBadge/StatusBadge.stories.mdx +19 -1
  234. package/src/components/StatusBadge/StatusBadge.test.tsx +19 -1
  235. package/src/components/StatusBadge/StatusBadge.tsx +25 -20
  236. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +22 -3
  237. package/src/components/StructuredContent/StructuredContent.stories.mdx +229 -61
  238. package/src/components/StructuredContent/StructuredContent.test.tsx +162 -101
  239. package/src/components/StructuredContent/StructuredContent.tsx +98 -103
  240. package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +102 -17
  241. package/src/components/StyleGuide/Bidirectionality.stories.mdx +5 -5
  242. package/src/components/StyleGuide/Breakpoints.stories.mdx +6 -6
  243. package/src/components/StyleGuide/Buttons.stories.mdx +2 -12
  244. package/src/components/StyleGuide/ColorCard.tsx +4 -4
  245. package/src/components/StyleGuide/Colors.stories.mdx +1 -2
  246. package/src/components/StyleGuide/DesignTokens.stories.mdx +56 -26
  247. package/src/components/StyleGuide/Forms.stories.mdx +27 -12
  248. package/src/components/StyleGuide/Iconography.stories.mdx +2 -12
  249. package/src/components/StyleGuide/Spacing.stories.mdx +80 -41
  250. package/src/components/StyleGuide/Typography.stories.mdx +47 -33
  251. package/src/components/Table/Table.stories.mdx +38 -11
  252. package/src/components/Table/Table.test.tsx +16 -1
  253. package/src/components/Table/Table.tsx +10 -8
  254. package/src/components/Table/__snapshots__/Table.test.tsx.snap +408 -5
  255. package/src/components/Tabs/Tabs.stories.mdx +59 -10
  256. package/src/components/Tabs/Tabs.test.tsx +29 -11
  257. package/src/components/Tabs/Tabs.tsx +28 -21
  258. package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +394 -5
  259. package/src/components/Template/Template.stories.mdx +73 -32
  260. package/src/components/Template/Template.test.tsx +68 -5
  261. package/src/components/Template/Template.tsx +89 -71
  262. package/src/components/Template/__snapshots__/Template.test.tsx.snap +195 -22
  263. package/src/components/Text/Text.stories.mdx +32 -15
  264. package/src/components/Text/Text.test.tsx +14 -11
  265. package/src/components/Text/Text.tsx +13 -16
  266. package/src/components/Text/TextTypes.tsx +1 -1
  267. package/src/components/Text/__snapshots__/Text.test.tsx.snap +21 -4
  268. package/src/components/TextInput/TextInput.stories.mdx +73 -27
  269. package/src/components/TextInput/TextInput.test.tsx +65 -50
  270. package/src/components/TextInput/TextInput.tsx +123 -115
  271. package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +96 -73
  272. package/src/components/Toggle/Toggle.stories.mdx +74 -26
  273. package/src/components/Toggle/Toggle.test.tsx +41 -10
  274. package/src/components/Toggle/Toggle.tsx +29 -26
  275. package/src/components/Toggle/{ToggleSizes.tsx → ToggleTypes.tsx} +1 -1
  276. package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +191 -4
  277. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +52 -4
  278. package/src/components/VideoPlayer/VideoPlayer.test.tsx +41 -6
  279. package/src/components/VideoPlayer/VideoPlayer.tsx +134 -120
  280. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +81 -39
  281. package/src/docs/Chakra.stories.mdx +50 -9
  282. package/src/docs/Welcome.stories.mdx +168 -0
  283. package/src/{components/Card/CardTypes.tsx → helpers/enums.ts} +2 -2
  284. package/src/hooks/tests/useNYPLTheme.test.tsx +1 -1
  285. package/src/hooks/useCarouselStyles.stories.mdx +30 -0
  286. package/src/hooks/useCarouselStyles.ts +3 -2
  287. package/src/hooks/useNYPLTheme.stories.mdx +101 -0
  288. package/src/hooks/useNYPLTheme.ts +31 -7
  289. package/src/hooks/useWindowSize.stories.mdx +23 -0
  290. package/src/index.ts +11 -15
  291. package/src/styles/base/_place-holder.scss +1 -1
  292. package/src/theme/components/accordion.ts +7 -12
  293. package/src/theme/components/breadcrumb.ts +3 -0
  294. package/src/theme/components/button.ts +15 -7
  295. package/src/theme/components/card.ts +56 -36
  296. package/src/theme/components/checkbox.ts +10 -8
  297. package/src/theme/components/checkboxGroup.ts +4 -2
  298. package/src/theme/components/componentWrapper.ts +2 -2
  299. package/src/theme/components/customTable.ts +39 -31
  300. package/src/theme/components/fieldset.ts +1 -2
  301. package/src/theme/components/global.ts +29 -23
  302. package/src/theme/components/heading.ts +1 -1
  303. package/src/theme/components/helperErrorText.ts +1 -0
  304. package/src/theme/components/hero.ts +14 -16
  305. package/src/theme/components/icon.ts +5 -2
  306. package/src/theme/components/image.ts +1 -1
  307. package/src/theme/components/label.ts +4 -3
  308. package/src/theme/components/list.ts +73 -66
  309. package/src/theme/components/notification.ts +7 -7
  310. package/src/theme/components/pagination.ts +2 -5
  311. package/src/theme/components/progressIndicator.ts +3 -3
  312. package/src/theme/components/radio.ts +9 -9
  313. package/src/theme/components/radioGroup.ts +4 -2
  314. package/src/theme/components/select.ts +35 -16
  315. package/src/theme/components/skeletonLoader.ts +3 -3
  316. package/src/theme/components/slider.ts +8 -7
  317. package/src/theme/components/statusBadge.ts +2 -2
  318. package/src/theme/components/structuredContent.ts +66 -1
  319. package/src/theme/components/tabs.ts +2 -2
  320. package/src/theme/components/template.ts +9 -9
  321. package/src/theme/components/textInput.ts +13 -12
  322. package/src/theme/components/toggle.ts +43 -13
  323. package/src/theme/components/videoPlayer.ts +1 -1
  324. package/src/theme/foundations/colors.ts +1 -1
  325. package/src/theme/foundations/radii.ts +1 -0
  326. package/src/theme/foundations/spacing.ts +70 -22
  327. package/src/theme/foundations/typography.ts +2 -2
  328. package/src/utils/componentCategories.ts +28 -21
  329. package/dist/components/Card/CardTypes.d.ts +0 -4
  330. package/dist/components/CheckboxGroup/CheckboxGroupLayoutTypes.d.ts +0 -4
  331. package/dist/components/RadioGroup/RadioGroupLayoutTypes.d.ts +0 -4
  332. package/dist/components/SearchBar/SearchBar.Test.d.ts +0 -1
  333. package/dist/helpers/generateUUID.d.ts +0 -1
  334. package/src/components/CheckboxGroup/CheckboxGroupLayoutTypes.tsx +0 -4
  335. package/src/components/RadioGroup/RadioGroupLayoutTypes.tsx +0 -4
  336. package/src/docs/Intro.stories.mdx +0 -53
  337. package/src/helpers/generateUUID.tsx +0 -5
@@ -2,7 +2,7 @@
2
2
 
3
3
  exports[`Table renders the UI snapshot correctly 1`] = `
4
4
  <table
5
- className="chakra-table css-0"
5
+ className="chakra-table css-1xdhyk6"
6
6
  id="basic"
7
7
  role="table"
8
8
  >
@@ -203,7 +203,7 @@ exports[`Table renders the UI snapshot correctly 1`] = `
203
203
 
204
204
  exports[`Table renders the UI snapshot correctly 2`] = `
205
205
  <table
206
- className="chakra-table css-0"
206
+ className="chakra-table css-1xdhyk6"
207
207
  id="withCaption"
208
208
  role="table"
209
209
  >
@@ -409,7 +409,7 @@ exports[`Table renders the UI snapshot correctly 2`] = `
409
409
 
410
410
  exports[`Table renders the UI snapshot correctly 3`] = `
411
411
  <table
412
- className="chakra-table css-0"
412
+ className="chakra-table css-1xdhyk6"
413
413
  id="withHeaders"
414
414
  role="table"
415
415
  >
@@ -666,7 +666,7 @@ exports[`Table renders the UI snapshot correctly 3`] = `
666
666
 
667
667
  exports[`Table renders the UI snapshot correctly 4`] = `
668
668
  <table
669
- className="chakra-table css-0"
669
+ className="chakra-table css-1xdhyk6"
670
670
  id="withHeaders"
671
671
  role="table"
672
672
  >
@@ -923,7 +923,7 @@ exports[`Table renders the UI snapshot correctly 4`] = `
923
923
 
924
924
  exports[`Table renders the UI snapshot correctly 5`] = `
925
925
  <table
926
- className="chakra-table css-0"
926
+ className="chakra-table css-1xdhyk6"
927
927
  id="withHeaders"
928
928
  role="table"
929
929
  >
@@ -1177,3 +1177,406 @@ exports[`Table renders the UI snapshot correctly 5`] = `
1177
1177
  </tbody>
1178
1178
  </table>
1179
1179
  `;
1180
+
1181
+ exports[`Table renders the UI snapshot correctly 6`] = `
1182
+ <table
1183
+ className="chakra-table css-kle7zy"
1184
+ id="chakra"
1185
+ role="table"
1186
+ >
1187
+ <tbody
1188
+ className="css-0"
1189
+ >
1190
+ <tr
1191
+ className="css-0"
1192
+ role="row"
1193
+ >
1194
+ <td
1195
+ className="css-0"
1196
+ role="gridcell"
1197
+ >
1198
+ Tom
1199
+ </td>
1200
+ <td
1201
+ className="css-0"
1202
+ role="gridcell"
1203
+ >
1204
+ Nook
1205
+ </td>
1206
+ <td
1207
+ className="css-0"
1208
+ role="gridcell"
1209
+ >
1210
+ Tanukichi
1211
+ </td>
1212
+ <td
1213
+ className="css-0"
1214
+ role="gridcell"
1215
+ >
1216
+ Main Street
1217
+ </td>
1218
+ <td
1219
+ className="css-0"
1220
+ role="gridcell"
1221
+ >
1222
+ New York
1223
+ </td>
1224
+ <td
1225
+ className="css-0"
1226
+ role="gridcell"
1227
+ >
1228
+ 23458
1229
+ </td>
1230
+ <td
1231
+ className="css-0"
1232
+ role="gridcell"
1233
+ >
1234
+ NY
1235
+ </td>
1236
+ </tr>
1237
+ <tr
1238
+ className="css-0"
1239
+ role="row"
1240
+ >
1241
+ <td
1242
+ className="css-0"
1243
+ role="gridcell"
1244
+ >
1245
+ Isabelle
1246
+ </td>
1247
+ <td
1248
+ className="css-0"
1249
+ role="gridcell"
1250
+ >
1251
+ -
1252
+ </td>
1253
+ <td
1254
+ className="css-0"
1255
+ role="gridcell"
1256
+ >
1257
+ Shizue
1258
+ </td>
1259
+ <td
1260
+ className="css-0"
1261
+ role="gridcell"
1262
+ >
1263
+ Walnut Street
1264
+ </td>
1265
+ <td
1266
+ className="css-0"
1267
+ role="gridcell"
1268
+ >
1269
+ New York
1270
+ </td>
1271
+ <td
1272
+ className="css-0"
1273
+ role="gridcell"
1274
+ >
1275
+ 23458
1276
+ </td>
1277
+ <td
1278
+ className="css-0"
1279
+ role="gridcell"
1280
+ >
1281
+ NY
1282
+ </td>
1283
+ </tr>
1284
+ <tr
1285
+ className="css-0"
1286
+ role="row"
1287
+ >
1288
+ <td
1289
+ className="css-0"
1290
+ role="gridcell"
1291
+ >
1292
+ K.K.
1293
+ </td>
1294
+ <td
1295
+ className="css-0"
1296
+ role="gridcell"
1297
+ >
1298
+ Slider
1299
+ </td>
1300
+ <td
1301
+ className="css-0"
1302
+ role="gridcell"
1303
+ >
1304
+ Totakeke
1305
+ </td>
1306
+ <td
1307
+ className="css-0"
1308
+ role="gridcell"
1309
+ >
1310
+ Niper Place
1311
+ </td>
1312
+ <td
1313
+ className="css-0"
1314
+ role="gridcell"
1315
+ >
1316
+ New York
1317
+ </td>
1318
+ <td
1319
+ className="css-0"
1320
+ role="gridcell"
1321
+ >
1322
+ 98765
1323
+ </td>
1324
+ <td
1325
+ className="css-0"
1326
+ role="gridcell"
1327
+ >
1328
+ NY
1329
+ </td>
1330
+ </tr>
1331
+ <tr
1332
+ className="css-0"
1333
+ role="row"
1334
+ >
1335
+ <td
1336
+ className="css-0"
1337
+ role="gridcell"
1338
+ >
1339
+ Sonny
1340
+ </td>
1341
+ <td
1342
+ className="css-0"
1343
+ role="gridcell"
1344
+ >
1345
+ Resetti
1346
+ </td>
1347
+ <td
1348
+ className="css-0"
1349
+ role="gridcell"
1350
+ >
1351
+ Risetto san
1352
+ </td>
1353
+ <td
1354
+ className="css-0"
1355
+ role="gridcell"
1356
+ >
1357
+ Village Road
1358
+ </td>
1359
+ <td
1360
+ className="css-0"
1361
+ role="gridcell"
1362
+ >
1363
+ New York
1364
+ </td>
1365
+ <td
1366
+ className="css-0"
1367
+ role="gridcell"
1368
+ >
1369
+ 09873
1370
+ </td>
1371
+ <td
1372
+ className="css-0"
1373
+ role="gridcell"
1374
+ >
1375
+ NY
1376
+ </td>
1377
+ </tr>
1378
+ </tbody>
1379
+ </table>
1380
+ `;
1381
+
1382
+ exports[`Table renders the UI snapshot correctly 7`] = `
1383
+ <table
1384
+ className="chakra-table css-1xdhyk6"
1385
+ data-testid="props"
1386
+ id="props"
1387
+ role="table"
1388
+ >
1389
+ <tbody
1390
+ className="css-0"
1391
+ >
1392
+ <tr
1393
+ className="css-0"
1394
+ role="row"
1395
+ >
1396
+ <td
1397
+ className="css-0"
1398
+ role="gridcell"
1399
+ >
1400
+ Tom
1401
+ </td>
1402
+ <td
1403
+ className="css-0"
1404
+ role="gridcell"
1405
+ >
1406
+ Nook
1407
+ </td>
1408
+ <td
1409
+ className="css-0"
1410
+ role="gridcell"
1411
+ >
1412
+ Tanukichi
1413
+ </td>
1414
+ <td
1415
+ className="css-0"
1416
+ role="gridcell"
1417
+ >
1418
+ Main Street
1419
+ </td>
1420
+ <td
1421
+ className="css-0"
1422
+ role="gridcell"
1423
+ >
1424
+ New York
1425
+ </td>
1426
+ <td
1427
+ className="css-0"
1428
+ role="gridcell"
1429
+ >
1430
+ 23458
1431
+ </td>
1432
+ <td
1433
+ className="css-0"
1434
+ role="gridcell"
1435
+ >
1436
+ NY
1437
+ </td>
1438
+ </tr>
1439
+ <tr
1440
+ className="css-0"
1441
+ role="row"
1442
+ >
1443
+ <td
1444
+ className="css-0"
1445
+ role="gridcell"
1446
+ >
1447
+ Isabelle
1448
+ </td>
1449
+ <td
1450
+ className="css-0"
1451
+ role="gridcell"
1452
+ >
1453
+ -
1454
+ </td>
1455
+ <td
1456
+ className="css-0"
1457
+ role="gridcell"
1458
+ >
1459
+ Shizue
1460
+ </td>
1461
+ <td
1462
+ className="css-0"
1463
+ role="gridcell"
1464
+ >
1465
+ Walnut Street
1466
+ </td>
1467
+ <td
1468
+ className="css-0"
1469
+ role="gridcell"
1470
+ >
1471
+ New York
1472
+ </td>
1473
+ <td
1474
+ className="css-0"
1475
+ role="gridcell"
1476
+ >
1477
+ 23458
1478
+ </td>
1479
+ <td
1480
+ className="css-0"
1481
+ role="gridcell"
1482
+ >
1483
+ NY
1484
+ </td>
1485
+ </tr>
1486
+ <tr
1487
+ className="css-0"
1488
+ role="row"
1489
+ >
1490
+ <td
1491
+ className="css-0"
1492
+ role="gridcell"
1493
+ >
1494
+ K.K.
1495
+ </td>
1496
+ <td
1497
+ className="css-0"
1498
+ role="gridcell"
1499
+ >
1500
+ Slider
1501
+ </td>
1502
+ <td
1503
+ className="css-0"
1504
+ role="gridcell"
1505
+ >
1506
+ Totakeke
1507
+ </td>
1508
+ <td
1509
+ className="css-0"
1510
+ role="gridcell"
1511
+ >
1512
+ Niper Place
1513
+ </td>
1514
+ <td
1515
+ className="css-0"
1516
+ role="gridcell"
1517
+ >
1518
+ New York
1519
+ </td>
1520
+ <td
1521
+ className="css-0"
1522
+ role="gridcell"
1523
+ >
1524
+ 98765
1525
+ </td>
1526
+ <td
1527
+ className="css-0"
1528
+ role="gridcell"
1529
+ >
1530
+ NY
1531
+ </td>
1532
+ </tr>
1533
+ <tr
1534
+ className="css-0"
1535
+ role="row"
1536
+ >
1537
+ <td
1538
+ className="css-0"
1539
+ role="gridcell"
1540
+ >
1541
+ Sonny
1542
+ </td>
1543
+ <td
1544
+ className="css-0"
1545
+ role="gridcell"
1546
+ >
1547
+ Resetti
1548
+ </td>
1549
+ <td
1550
+ className="css-0"
1551
+ role="gridcell"
1552
+ >
1553
+ Risetto san
1554
+ </td>
1555
+ <td
1556
+ className="css-0"
1557
+ role="gridcell"
1558
+ >
1559
+ Village Road
1560
+ </td>
1561
+ <td
1562
+ className="css-0"
1563
+ role="gridcell"
1564
+ >
1565
+ New York
1566
+ </td>
1567
+ <td
1568
+ className="css-0"
1569
+ role="gridcell"
1570
+ >
1571
+ 09873
1572
+ </td>
1573
+ <td
1574
+ className="css-0"
1575
+ role="gridcell"
1576
+ >
1577
+ NY
1578
+ </td>
1579
+ </tr>
1580
+ </tbody>
1581
+ </table>
1582
+ `;
@@ -7,7 +7,7 @@ import {
7
7
  } from "@storybook/addon-docs";
8
8
  import { withDesign } from "storybook-addon-designs";
9
9
 
10
- import { Tabs, TabList, Tab, TabPanels, TabPanel } from "./Tabs";
10
+ import Tabs, { TabList, Tab, TabPanels, TabPanel } from "./Tabs";
11
11
  import { getCategory } from "../../utils/componentCategories";
12
12
  import DSProvider from "../../theme/provider";
13
13
 
@@ -24,12 +24,12 @@ import DSProvider from "../../theme/provider";
24
24
  }}
25
25
  argTypes={{
26
26
  children: { table: { disable: true } },
27
- contentData: { control: false },
28
27
  defaultIndex: {
29
28
  table: { defaultValue: { summary: 0 } },
30
29
  },
31
30
  id: { control: false },
32
31
  onChange: { control: false },
32
+ tabsData: { control: false },
33
33
  useHash: {
34
34
  table: { defaultValue: { summary: false } },
35
35
  },
@@ -41,7 +41,20 @@ import DSProvider from "../../theme/provider";
41
41
  | Component Version | DS Version |
42
42
  | ----------------- | ---------- |
43
43
  | Added | `0.24.0` |
44
- | Latest | `0.25.11` |
44
+ | Latest | `0.26.0` |
45
+
46
+ ## Table of Contents
47
+
48
+ - [Overview](#overview)
49
+ - [Component Props](#component-props)
50
+ - [Accessibility](#accessibility)
51
+ - [Composing with a Data Object](#composing-with-a-data-object)
52
+ - [Responsive Mobile Carousel](#responsive-mobile-carousel)
53
+ - [With Callback Event Function](#with-callback-event-function)
54
+ - [With URL Hash Option](#with-url-hash-option)
55
+ - [With Children Components](#with-children-components)
56
+
57
+ ## Overview
45
58
 
46
59
  <Description of={Tabs} />
47
60
 
@@ -91,11 +104,13 @@ export const animalCrossing = [
91
104
  },
92
105
  ];
93
106
 
107
+ ## Component Props
108
+
94
109
  <Canvas withToolbar>
95
110
  <Story
96
111
  name="Tabs with Controls"
97
112
  args={{
98
- contentData: animalCrossing,
113
+ tabsData: animalCrossing,
99
114
  defaultIndex: 0,
100
115
  id: "tabs-id",
101
116
  onChange: undefined,
@@ -108,6 +123,40 @@ export const animalCrossing = [
108
123
 
109
124
  <ArgsTable story="Tabs with Controls" />
110
125
 
126
+ ## Accessibility
127
+
128
+ Using the DS `Tabs` component renders HTML for button tabs and panels that are
129
+ associated with each other. In order to simplify the content and reduce cognitive
130
+ load for a user, we recommend to not use more than a six (6) button tabs and
131
+ panels. Likewise, button tab labels should be clear and concise. Do not use
132
+ icons for tab labels.
133
+
134
+ The `Tabs` component is fully accessible through keyboard usage. The initial focus
135
+ on the UI is set on the first tab. To move between tabs, use the left and right
136
+ key arrows. The `home` key can be used to navigate to the first tab and the `end`
137
+ key can be used to navigate to the last tab. To move from a tab to its panel,
138
+ use the `tab` key. Likewise, use the `tab + shift` key combination to move from
139
+ the panel to its tab. A user cannot navigate between panels; they must navigate
140
+ through the tabs.
141
+
142
+ This `Tabs` component is implemented with Chakra UI and this library handles the
143
+ appropriate `aria-selected` and `aria-controls` attributes for the tabs, the
144
+ related `aria-labelledby` and `id` attributes for the panels, and the `tablist`,
145
+ `tab`, and `tabpanel` roles for the relevant HTML elements.
146
+
147
+ ### Mobile Carousel
148
+
149
+ When viewing the `Tabs` component on a narrow screen, an additional carousel
150
+ interface is wrapped around the button tabs. "Next" and "Previous" arrow buttons
151
+ slide the view of the tabs to the left and right, but all initial functionality
152
+ for the `Tabs` component doesn't change.
153
+
154
+ Resources:
155
+
156
+ - [Inclusive Design Tabbed Interfaces](https://inclusive-components.design/tabbed-interfaces/)
157
+ - [W3C WAI Example of Tabs with Automatic Activation](https://www.w3.org/TR/wai-aria-practices/examples/tabs/tabs-1/tabs.html)
158
+ - [Chakra UI Tabs](https://chakra-ui.com/docs/components/disclosure/tabs)
159
+
111
160
  ## Composing with a Data Object
112
161
 
113
162
  _Note: this is the recommended approach._
@@ -116,7 +165,7 @@ We recommended passing in the data for the `Tabs` component through the `data`
116
165
  prop. This allows the consumer to pass in well-formed data and always generate
117
166
  the correct DOM.
118
167
 
119
- Internally in the DS `Tabs` component:
168
+ Internally in the Reservoir Design System (DS) `Tabs` component:
120
169
 
121
170
  - we map through the data array and generate the appropriate components needed
122
171
  for the layout.
@@ -154,12 +203,12 @@ const animalCrossing = [
154
203
  ];
155
204
 
156
205
  // ...
157
- <Tabs contentData={animalCrossing} />;
206
+ <Tabs tabsData={animalCrossing} />;
158
207
  ```
159
208
 
160
209
  ## Responsive Mobile Carousel
161
210
 
162
- For both, the `contentData` prop approach and the children component approach
211
+ For both, the `tabsData` prop approach and the children component approach
163
212
  (described below in this document), the mobile carousel feature is built. This
164
213
  adds "previous" and "next" arrows in the tab list for users to scroll through
165
214
  all the tabs while the panel stays static.
@@ -183,7 +232,7 @@ export const onChange = (value) => {
183
232
  };
184
233
 
185
234
  // ...
186
- <Tabs contentData={animalCrossing} onChange={onChange} />;
235
+ <Tabs tabsData={animalCrossing} onChange={onChange} />;
187
236
  ```
188
237
 
189
238
  export const onChange = (value) => {
@@ -192,7 +241,7 @@ export const onChange = (value) => {
192
241
 
193
242
  <Canvas>
194
243
  <Story name="With Callback Event Function">
195
- <Tabs contentData={animalCrossing} onChange={onChange} />
244
+ <Tabs tabsData={animalCrossing} onChange={onChange} />
196
245
  </Story>
197
246
  </Canvas>
198
247
 
@@ -203,7 +252,7 @@ To enable this, set the `useHash` prop to true.
203
252
 
204
253
  <Canvas>
205
254
  <Story name="With URL Hash Option">
206
- <Tabs contentData={animalCrossing} useHash={true} />
255
+ <Tabs tabsData={animalCrossing} useHash={true} />
207
256
  </Story>
208
257
  </Canvas>
209
258
 
@@ -36,7 +36,7 @@ export const animalCrossing = [
36
36
 
37
37
  describe("Tabs Accessibility", () => {
38
38
  it("passes axe accessibility test with the data prop", async () => {
39
- const { container } = render(<Tabs contentData={animalCrossing} />);
39
+ const { container } = render(<Tabs tabsData={animalCrossing} />);
40
40
  expect(await axe(container)).toHaveNoViolations();
41
41
  });
42
42
 
@@ -121,7 +121,7 @@ describe("Tabs", () => {
121
121
  });
122
122
 
123
123
  it("renders all tabs but only one visible panel at a time with data prop", () => {
124
- render(<Tabs contentData={animalCrossing} />);
124
+ render(<Tabs tabsData={animalCrossing} />);
125
125
  expect(getTabByName("Tom Nook")).toBeInTheDocument();
126
126
  expect(getTabByName("Isabelle")).toBeInTheDocument();
127
127
  expect(getTabByName("K.K. Slider")).toBeInTheDocument();
@@ -137,7 +137,7 @@ describe("Tabs", () => {
137
137
  });
138
138
 
139
139
  it("switches between tabs", () => {
140
- render(<Tabs contentData={animalCrossing} />);
140
+ render(<Tabs tabsData={animalCrossing} />);
141
141
  const isabelleTab = getTabByName("Isabelle");
142
142
  const kkSliderTab = getTabByName("K.K. Slider");
143
143
 
@@ -179,7 +179,7 @@ describe("Tabs", () => {
179
179
  });
180
180
 
181
181
  it("renders the specified initial index value", () => {
182
- render(<Tabs contentData={animalCrossing} defaultIndex={2} />);
182
+ render(<Tabs tabsData={animalCrossing} defaultIndex={2} />);
183
183
  let tomTab = getTabByName("Tom Nook");
184
184
  let isabelleTab = getTabByName("Isabelle");
185
185
  let kkSliderTab = getTabByName("K.K. Slider");
@@ -193,7 +193,7 @@ describe("Tabs", () => {
193
193
  let selectedIndex = 0;
194
194
  const onChange = (index) => (selectedIndex = index);
195
195
 
196
- render(<Tabs contentData={animalCrossing} onChange={onChange} />);
196
+ render(<Tabs tabsData={animalCrossing} onChange={onChange} />);
197
197
 
198
198
  const tomTab = getTabByName("Tom Nook");
199
199
  const isabelleTab = getTabByName("Isabelle");
@@ -213,14 +213,14 @@ describe("Tabs", () => {
213
213
  const warn = jest.spyOn(console, "warn");
214
214
  render(<Tabs />);
215
215
  expect(warn).toHaveBeenCalledWith(
216
- "Tabs: Pass data in the `data` props or as children."
216
+ "NYPL Reservoir Tabs: Pass data in the `contentData` props or as children."
217
217
  );
218
218
  });
219
219
 
220
220
  it("should throw a warning when both the 'data' prop and children are passed", () => {
221
221
  const warn = jest.spyOn(console, "warn");
222
222
  render(
223
- <Tabs contentData={animalCrossing}>
223
+ <Tabs tabsData={animalCrossing}>
224
224
  <TabList>
225
225
  <Tab>Tom Nook</Tab>
226
226
  <Tab>Isabelle</Tab>
@@ -247,7 +247,8 @@ describe("Tabs", () => {
247
247
  </Tabs>
248
248
  );
249
249
  expect(warn).toHaveBeenCalledWith(
250
- "Tabs: Only pass children or data in the `data` props but not both."
250
+ "NYPL Reservoir Tabs: Only pass children or data in the `contentData` " +
251
+ "prop. Do not pass both."
251
252
  );
252
253
  });
253
254
 
@@ -255,7 +256,7 @@ describe("Tabs", () => {
255
256
  const warn = jest.spyOn(console, "warn");
256
257
  render(
257
258
  <Tabs
258
- contentData={[
259
+ tabsData={[
259
260
  ...animalCrossing,
260
261
  ...[
261
262
  { label: "Another character 1", content: "Text" },
@@ -267,14 +268,31 @@ describe("Tabs", () => {
267
268
  />
268
269
  );
269
270
  expect(warn).toHaveBeenCalledWith(
270
- "Tabs: We recommend to use no more than six tabs. If more than six tabs are needed, consider other navigational patterns."
271
+ "NYPL Reservoir Tabs: it is recommended to use no more than six tabs. If " +
272
+ "more than six tabs are needed, consider other navigational patterns."
271
273
  );
272
274
  });
273
275
 
274
276
  it("renders the UI snapshot correctly", () => {
275
277
  const basic = renderer
276
- .create(<Tabs contentData={animalCrossing} id="basic" />)
278
+ .create(<Tabs tabsData={animalCrossing} id="basic" />)
277
279
  .toJSON();
280
+ const withChakraProps = renderer
281
+ .create(
282
+ <Tabs
283
+ tabsData={animalCrossing}
284
+ id="chakra"
285
+ p="20px"
286
+ color="ui.error.primary"
287
+ />
288
+ )
289
+ .toJSON();
290
+ const withOtherProps = renderer
291
+ .create(<Tabs tabsData={animalCrossing} id="props" data-testid="props" />)
292
+ .toJSON();
293
+
278
294
  expect(basic).toMatchSnapshot();
295
+ expect(withChakraProps).toMatchSnapshot();
296
+ expect(withOtherProps).toMatchSnapshot();
279
297
  });
280
298
  });