@nypl/design-system-react-components 0.25.13 → 0.27.0

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 (305) hide show
  1. package/CHANGELOG.md +85 -0
  2. package/README.md +10 -10
  3. package/dist/components/Accordion/Accordion.d.ts +1 -1
  4. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +1 -1
  5. package/dist/components/Button/Button.d.ts +2 -2
  6. package/dist/components/Card/Card.d.ts +11 -9
  7. package/dist/components/Checkbox/Checkbox.d.ts +2 -2
  8. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +5 -4
  9. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +1 -1
  10. package/dist/components/DatePicker/DatePicker.d.ts +5 -6
  11. package/dist/components/Fieldset/Fieldset.d.ts +5 -6
  12. package/dist/components/Form/Form.d.ts +6 -6
  13. package/dist/components/Grid/GridTypes.d.ts +7 -7
  14. package/dist/components/Grid/SimpleGrid.d.ts +1 -1
  15. package/dist/components/Heading/Heading.d.ts +1 -1
  16. package/dist/components/HelperErrorText/HelperErrorText.d.ts +9 -8
  17. package/dist/components/Hero/Hero.d.ts +2 -1
  18. package/dist/components/HorizontalRule/HorizontalRule.d.ts +2 -10
  19. package/dist/components/Icons/Icon.d.ts +2 -1
  20. package/dist/components/Image/Image.d.ts +2 -2
  21. package/dist/components/Label/Label.d.ts +7 -4
  22. package/dist/components/Link/Link.d.ts +1 -1
  23. package/dist/components/List/List.d.ts +11 -11
  24. package/dist/components/List/ListTypes.d.ts +1 -1
  25. package/dist/components/Logo/Logo.d.ts +2 -1
  26. package/dist/components/Logo/LogoSvgs.d.ts +2 -0
  27. package/dist/components/Logo/LogoTypes.d.ts +2 -0
  28. package/dist/components/Modal/Modal.d.ts +28 -8
  29. package/dist/components/Notification/Notification.d.ts +4 -4
  30. package/dist/components/Pagination/Pagination.d.ts +2 -2
  31. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +3 -3
  32. package/dist/components/Radio/Radio.d.ts +4 -6
  33. package/dist/components/RadioGroup/RadioGroup.d.ts +12 -6
  34. package/dist/components/SearchBar/SearchBar.d.ts +4 -4
  35. package/dist/components/Select/Select.d.ts +10 -6
  36. package/dist/components/Select/SelectTypes.d.ts +4 -0
  37. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +4 -3
  38. package/dist/components/Slider/Slider.d.ts +6 -4
  39. package/dist/components/StatusBadge/StatusBadge.d.ts +5 -1
  40. package/dist/components/StructuredContent/StructuredContent.d.ts +2 -2
  41. package/dist/components/Table/Table.d.ts +1 -1
  42. package/dist/components/Tabs/Tabs.d.ts +4 -3
  43. package/dist/components/Template/Template.d.ts +4 -3
  44. package/dist/components/Text/Text.d.ts +1 -1
  45. package/dist/components/TextInput/TextInput.d.ts +5 -5
  46. package/dist/components/Toggle/Toggle.d.ts +3 -4
  47. package/dist/components/VideoPlayer/VideoPlayer.d.ts +2 -1
  48. package/dist/design-system-react-components.cjs.development.js +1767 -1180
  49. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  50. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  51. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  52. package/dist/design-system-react-components.esm.js +1774 -1188
  53. package/dist/design-system-react-components.esm.js.map +1 -1
  54. package/dist/hooks/useCarouselStyles.d.ts +3 -2
  55. package/dist/hooks/useNYPLTheme.d.ts +12 -0
  56. package/dist/index.d.ts +5 -2
  57. package/dist/styles.css +1 -1
  58. package/dist/theme/components/button.d.ts +10 -2
  59. package/dist/theme/components/card.d.ts +42 -22
  60. package/dist/theme/components/checkbox.d.ts +5 -4
  61. package/dist/theme/components/checkboxGroup.d.ts +1 -1
  62. package/dist/theme/components/componentWrapper.d.ts +2 -2
  63. package/dist/theme/components/customTable.d.ts +84 -1
  64. package/dist/theme/components/fieldset.d.ts +4 -14
  65. package/dist/theme/components/global.d.ts +23 -17
  66. package/dist/theme/components/heading.d.ts +53 -0
  67. package/dist/theme/components/helperErrorText.d.ts +1 -0
  68. package/dist/theme/components/hero.d.ts +20 -14
  69. package/dist/theme/components/label.d.ts +9 -10
  70. package/dist/theme/components/list.d.ts +99 -9
  71. package/dist/theme/components/radio.d.ts +6 -4
  72. package/dist/theme/components/radioGroup.d.ts +1 -1
  73. package/dist/theme/components/select.d.ts +28 -5
  74. package/dist/theme/components/skeletonLoader.d.ts +2 -2
  75. package/dist/theme/components/slider.d.ts +6 -3
  76. package/dist/theme/components/structuredContent.d.ts +197 -0
  77. package/dist/theme/components/textInput.d.ts +18 -6
  78. package/dist/theme/components/toggle.d.ts +7 -4
  79. package/dist/theme/foundations/global.d.ts +2 -0
  80. package/dist/theme/foundations/radii.d.ts +1 -0
  81. package/dist/theme/foundations/spacing.d.ts +46 -43
  82. package/package.json +17 -19
  83. package/src/components/Accordion/Accordion.stories.mdx +9 -9
  84. package/src/components/Accordion/Accordion.test.tsx +21 -0
  85. package/src/components/Accordion/Accordion.tsx +13 -9
  86. package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +276 -27
  87. package/src/components/Autosuggest/Autosuggest.stories.mdx +4 -3
  88. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +21 -5
  89. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +52 -31
  90. package/src/components/Breadcrumbs/Breadcrumbs.tsx +8 -7
  91. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +211 -12
  92. package/src/components/Button/Button.stories.mdx +87 -23
  93. package/src/components/Button/Button.test.tsx +25 -0
  94. package/src/components/Button/Button.tsx +18 -7
  95. package/src/components/Button/__snapshots__/Button.test.tsx.snap +27 -7
  96. package/src/components/Card/Card.stories.mdx +287 -194
  97. package/src/components/Card/Card.test.tsx +102 -0
  98. package/src/components/Card/Card.tsx +73 -32
  99. package/src/components/Card/__snapshots__/Card.test.tsx.snap +196 -36
  100. package/src/components/Chakra/Grid.stories.mdx +4 -4
  101. package/src/components/Checkbox/Checkbox.stories.mdx +62 -10
  102. package/src/components/Checkbox/Checkbox.test.tsx +32 -9
  103. package/src/components/Checkbox/Checkbox.tsx +20 -15
  104. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +134 -7
  105. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +65 -17
  106. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +137 -81
  107. package/src/components/CheckboxGroup/CheckboxGroup.tsx +31 -21
  108. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +332 -97
  109. package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +12 -0
  110. package/src/components/ComponentWrapper/ComponentWrapper.tsx +39 -41
  111. package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +47 -34
  112. package/src/components/DatePicker/DatePicker.stories.mdx +63 -27
  113. package/src/components/DatePicker/DatePicker.test.tsx +89 -13
  114. package/src/components/DatePicker/DatePicker.tsx +62 -56
  115. package/src/components/DatePicker/_DatePicker.scss +71 -13
  116. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +250 -206
  117. package/src/components/Fieldset/Fieldset.stories.mdx +33 -3
  118. package/src/components/Fieldset/Fieldset.test.tsx +58 -28
  119. package/src/components/Fieldset/Fieldset.tsx +35 -30
  120. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +40 -19
  121. package/src/components/Form/Form.stories.mdx +72 -39
  122. package/src/components/Form/Form.test.tsx +58 -15
  123. package/src/components/Form/Form.tsx +89 -67
  124. package/src/components/Form/__snapshots__/Form.test.tsx.snap +83 -5
  125. package/src/components/Grid/GridTypes.tsx +7 -7
  126. package/src/components/Grid/SimpleGrid.stories.mdx +34 -6
  127. package/src/components/Grid/SimpleGrid.test.tsx +9 -0
  128. package/src/components/Grid/SimpleGrid.tsx +29 -20
  129. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +16 -1
  130. package/src/components/Heading/Heading.stories.mdx +36 -3
  131. package/src/components/Heading/Heading.test.tsx +10 -0
  132. package/src/components/Heading/Heading.tsx +56 -50
  133. package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +26 -7
  134. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +64 -42
  135. package/src/components/HelperErrorText/HelperErrorText.test.tsx +15 -0
  136. package/src/components/HelperErrorText/HelperErrorText.tsx +40 -35
  137. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +35 -4
  138. package/src/components/Hero/Hero.stories.mdx +125 -95
  139. package/src/components/Hero/Hero.test.tsx +33 -0
  140. package/src/components/Hero/Hero.tsx +135 -126
  141. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +89 -17
  142. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +26 -4
  143. package/src/components/HorizontalRule/HorizontalRule.test.tsx +9 -19
  144. package/src/components/HorizontalRule/HorizontalRule.tsx +9 -26
  145. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +18 -5
  146. package/src/components/Icons/Icon.stories.mdx +31 -6
  147. package/src/components/Icons/Icon.test.tsx +38 -0
  148. package/src/components/Icons/Icon.tsx +93 -76
  149. package/src/components/Icons/__snapshots__/Icon.test.tsx.snap +129 -0
  150. package/src/components/Image/Image.stories.mdx +29 -5
  151. package/src/components/Image/Image.test.tsx +8 -0
  152. package/src/components/Image/Image.tsx +38 -26
  153. package/src/components/Image/__snapshots__/Image.test.tsx.snap +24 -8
  154. package/src/components/Label/Label.stories.mdx +42 -20
  155. package/src/components/Label/Label.test.tsx +42 -17
  156. package/src/components/Label/Label.tsx +22 -13
  157. package/src/components/Label/__snapshots__/Label.test.tsx.snap +19 -15
  158. package/src/components/Link/Link.stories.mdx +25 -15
  159. package/src/components/Link/Link.test.tsx +21 -22
  160. package/src/components/Link/Link.tsx +8 -8
  161. package/src/components/Link/__snapshots__/Link.test.tsx.snap +37 -11
  162. package/src/components/List/List.stories.mdx +75 -40
  163. package/src/components/List/List.test.tsx +67 -19
  164. package/src/components/List/List.tsx +38 -25
  165. package/src/components/List/ListTypes.tsx +1 -1
  166. package/src/components/List/__snapshots__/List.test.tsx.snap +110 -8
  167. package/src/components/Logo/Logo.stories.mdx +30 -6
  168. package/src/components/Logo/Logo.test.tsx +17 -0
  169. package/src/components/Logo/Logo.tsx +18 -6
  170. package/src/components/Logo/LogoSvgs.tsx +4 -0
  171. package/src/components/Logo/LogoTypes.tsx +2 -0
  172. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +73 -2
  173. package/src/components/Modal/Modal.stories.mdx +256 -136
  174. package/src/components/Modal/Modal.test.tsx +151 -9
  175. package/src/components/Modal/Modal.tsx +140 -20
  176. package/src/components/Modal/__snapshots__/Modal.test.tsx.snap +25 -0
  177. package/src/components/Notification/Notification.stories.mdx +25 -1
  178. package/src/components/Notification/Notification.test.tsx +23 -0
  179. package/src/components/Notification/Notification.tsx +46 -44
  180. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +158 -29
  181. package/src/components/Pagination/Pagination.stories.mdx +25 -6
  182. package/src/components/Pagination/Pagination.test.tsx +25 -0
  183. package/src/components/Pagination/Pagination.tsx +6 -6
  184. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +244 -27
  185. package/src/components/Placeholder/Placeholder.tsx +3 -1
  186. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +76 -10
  187. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +81 -11
  188. package/src/components/ProgressIndicator/ProgressIndicator.tsx +17 -9
  189. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +101 -14
  190. package/src/components/Radio/Radio.stories.mdx +64 -12
  191. package/src/components/Radio/Radio.test.tsx +28 -8
  192. package/src/components/Radio/Radio.tsx +66 -63
  193. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +103 -6
  194. package/src/components/RadioGroup/RadioGroup.stories.mdx +224 -89
  195. package/src/components/RadioGroup/RadioGroup.test.tsx +122 -62
  196. package/src/components/RadioGroup/RadioGroup.tsx +106 -100
  197. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +1236 -1020
  198. package/src/components/SearchBar/SearchBar.stories.mdx +101 -36
  199. package/src/components/SearchBar/{SearchBar.Test.tsx → SearchBar.test.tsx} +46 -4
  200. package/src/components/SearchBar/SearchBar.tsx +17 -8
  201. package/src/components/SearchBar/__snapshots__/SearchBar.test.tsx.snap +1039 -0
  202. package/src/components/Select/Select.stories.mdx +128 -49
  203. package/src/components/Select/Select.test.tsx +63 -16
  204. package/src/components/Select/Select.tsx +131 -92
  205. package/src/components/Select/SelectTypes.tsx +5 -0
  206. package/src/components/Select/__snapshots__/Select.test.tsx.snap +765 -425
  207. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +42 -10
  208. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +8 -0
  209. package/src/components/SkeletonLoader/SkeletonLoader.tsx +76 -72
  210. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +169 -10
  211. package/src/components/Slider/Slider.stories.mdx +91 -42
  212. package/src/components/Slider/Slider.test.tsx +65 -17
  213. package/src/components/Slider/Slider.tsx +26 -19
  214. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +403 -226
  215. package/src/components/StatusBadge/StatusBadge.stories.mdx +19 -1
  216. package/src/components/StatusBadge/StatusBadge.test.tsx +16 -0
  217. package/src/components/StatusBadge/StatusBadge.tsx +25 -20
  218. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +22 -3
  219. package/src/components/StructuredContent/StructuredContent.stories.mdx +131 -12
  220. package/src/components/StructuredContent/StructuredContent.test.tsx +34 -0
  221. package/src/components/StructuredContent/StructuredContent.tsx +80 -75
  222. package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +102 -17
  223. package/src/components/StyleGuide/Bidirectionality.stories.mdx +5 -5
  224. package/src/components/StyleGuide/Breakpoints.stories.mdx +6 -6
  225. package/src/components/StyleGuide/Buttons.stories.mdx +2 -12
  226. package/src/components/StyleGuide/ColorCard.tsx +1 -1
  227. package/src/components/StyleGuide/Colors.stories.mdx +1 -2
  228. package/src/components/StyleGuide/DesignTokens.stories.mdx +56 -26
  229. package/src/components/StyleGuide/Forms.stories.mdx +27 -12
  230. package/src/components/StyleGuide/Iconography.stories.mdx +2 -12
  231. package/src/components/StyleGuide/Spacing.stories.mdx +80 -41
  232. package/src/components/StyleGuide/Typography.stories.mdx +30 -21
  233. package/src/components/Table/Table.stories.mdx +38 -11
  234. package/src/components/Table/Table.test.tsx +15 -0
  235. package/src/components/Table/Table.tsx +7 -7
  236. package/src/components/Table/__snapshots__/Table.test.tsx.snap +408 -5
  237. package/src/components/Tabs/Tabs.stories.mdx +52 -3
  238. package/src/components/Tabs/Tabs.test.tsx +16 -0
  239. package/src/components/Tabs/Tabs.tsx +10 -6
  240. package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +394 -5
  241. package/src/components/Template/Template.stories.mdx +47 -43
  242. package/src/components/Template/Template.test.tsx +33 -0
  243. package/src/components/Template/Template.tsx +65 -60
  244. package/src/components/Template/__snapshots__/Template.test.tsx.snap +191 -20
  245. package/src/components/Text/Text.stories.mdx +20 -1
  246. package/src/components/Text/Text.test.tsx +12 -0
  247. package/src/components/Text/Text.tsx +6 -4
  248. package/src/components/Text/__snapshots__/Text.test.tsx.snap +21 -4
  249. package/src/components/TextInput/TextInput.stories.mdx +65 -19
  250. package/src/components/TextInput/TextInput.test.tsx +42 -28
  251. package/src/components/TextInput/TextInput.tsx +121 -113
  252. package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +96 -73
  253. package/src/components/Toggle/Toggle.stories.mdx +80 -22
  254. package/src/components/Toggle/Toggle.test.tsx +27 -9
  255. package/src/components/Toggle/Toggle.tsx +22 -18
  256. package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +128 -5
  257. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +52 -4
  258. package/src/components/VideoPlayer/VideoPlayer.test.tsx +23 -0
  259. package/src/components/VideoPlayer/VideoPlayer.tsx +133 -126
  260. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +81 -39
  261. package/src/docs/Chakra.stories.mdx +50 -9
  262. package/src/docs/Welcome.stories.mdx +160 -41
  263. package/src/hooks/useCarouselStyles.stories.mdx +22 -2
  264. package/src/hooks/useCarouselStyles.ts +3 -2
  265. package/src/hooks/useNYPLTheme.stories.mdx +101 -0
  266. package/src/hooks/useNYPLTheme.ts +30 -6
  267. package/src/hooks/useWindowSize.stories.mdx +23 -0
  268. package/src/index.ts +5 -2
  269. package/src/styles/base/_place-holder.scss +1 -1
  270. package/src/styles.scss +0 -1
  271. package/src/theme/components/button.ts +15 -7
  272. package/src/theme/components/card.ts +30 -19
  273. package/src/theme/components/checkbox.ts +10 -8
  274. package/src/theme/components/checkboxGroup.ts +1 -1
  275. package/src/theme/components/componentWrapper.ts +2 -2
  276. package/src/theme/components/customTable.ts +39 -31
  277. package/src/theme/components/fieldset.ts +1 -2
  278. package/src/theme/components/global.ts +25 -20
  279. package/src/theme/components/heading.ts +1 -1
  280. package/src/theme/components/helperErrorText.ts +1 -0
  281. package/src/theme/components/hero.ts +13 -15
  282. package/src/theme/components/label.ts +4 -3
  283. package/src/theme/components/list.ts +73 -66
  284. package/src/theme/components/notification.ts +2 -2
  285. package/src/theme/components/radio.ts +9 -9
  286. package/src/theme/components/radioGroup.ts +1 -1
  287. package/src/theme/components/select.ts +31 -22
  288. package/src/theme/components/skeletonLoader.ts +3 -3
  289. package/src/theme/components/slider.ts +8 -7
  290. package/src/theme/components/statusBadge.ts +2 -2
  291. package/src/theme/components/structuredContent.ts +66 -1
  292. package/src/theme/components/tabs.ts +2 -2
  293. package/src/theme/components/template.ts +9 -9
  294. package/src/theme/components/textInput.ts +13 -12
  295. package/src/theme/components/toggle.ts +17 -10
  296. package/src/theme/components/videoPlayer.ts +1 -1
  297. package/src/theme/foundations/colors.ts +1 -1
  298. package/src/theme/foundations/radii.ts +1 -0
  299. package/src/theme/foundations/spacing.ts +70 -22
  300. package/src/theme/foundations/typography.ts +2 -2
  301. package/src/utils/componentCategories.ts +1 -2
  302. package/dist/components/SearchBar/SearchBar.Test.d.ts +0 -1
  303. package/dist/helpers/generateUUID.d.ts +0 -1
  304. package/src/components/Modal/_Modal.scss +0 -18
  305. package/src/helpers/generateUUID.tsx +0 -5
@@ -2,7 +2,7 @@
2
2
 
3
3
  exports[`Tabs renders the UI snapshot correctly 1`] = `
4
4
  <div
5
- className="chakra-tabs css-0"
5
+ className="chakra-tabs css-1xdhyk6"
6
6
  id="basic"
7
7
  >
8
8
  <div
@@ -10,7 +10,7 @@ exports[`Tabs renders the UI snapshot correctly 1`] = `
10
10
  >
11
11
  <button
12
12
  aria-label="Previous"
13
- className="chakra-button css-fg6w03"
13
+ className="chakra-button css-1fhylxi"
14
14
  data-testid="button"
15
15
  id="tabs-previous-basic"
16
16
  onClick={[Function]}
@@ -18,7 +18,7 @@ exports[`Tabs renders the UI snapshot correctly 1`] = `
18
18
  >
19
19
  <svg
20
20
  aria-hidden={true}
21
- className="chakra-icon css-onkibi"
21
+ className="chakra-icon css-1grhd2q"
22
22
  focusable={false}
23
23
  id="tabs-previous-icon-basic"
24
24
  role="img"
@@ -105,7 +105,7 @@ exports[`Tabs renders the UI snapshot correctly 1`] = `
105
105
  </div>
106
106
  <button
107
107
  aria-label="Next"
108
- className="chakra-button css-1whvqek"
108
+ className="chakra-button css-12jygyh"
109
109
  data-testid="button"
110
110
  id="tabs-next-basic"
111
111
  onClick={[Function]}
@@ -113,7 +113,7 @@ exports[`Tabs renders the UI snapshot correctly 1`] = `
113
113
  >
114
114
  <svg
115
115
  aria-hidden={true}
116
- className="chakra-icon css-onkibi"
116
+ className="chakra-icon css-1grhd2q"
117
117
  focusable={false}
118
118
  id="tabs-next-icon-basic"
119
119
  role="img"
@@ -193,3 +193,392 @@ exports[`Tabs renders the UI snapshot correctly 1`] = `
193
193
  </div>
194
194
  </div>
195
195
  `;
196
+
197
+ exports[`Tabs renders the UI snapshot correctly 2`] = `
198
+ <div
199
+ className="chakra-tabs css-kle7zy"
200
+ id="chakra"
201
+ >
202
+ <div
203
+ className="css-l3f8vc"
204
+ >
205
+ <button
206
+ aria-label="Previous"
207
+ className="chakra-button css-1fhylxi"
208
+ data-testid="button"
209
+ id="tabs-previous-chakra"
210
+ onClick={[Function]}
211
+ type="button"
212
+ >
213
+ <svg
214
+ aria-hidden={true}
215
+ className="chakra-icon css-1grhd2q"
216
+ focusable={false}
217
+ id="tabs-previous-icon-chakra"
218
+ role="img"
219
+ title="arrow icon"
220
+ viewBox="0 0 24 24"
221
+ >
222
+ <g
223
+ stroke="currentColor"
224
+ strokeWidth="1.5"
225
+ >
226
+ <path
227
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
228
+ fill="none"
229
+ strokeLinecap="round"
230
+ />
231
+ <path
232
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
233
+ fill="currentColor"
234
+ strokeLinecap="round"
235
+ />
236
+ <circle
237
+ cx="12"
238
+ cy="12"
239
+ fill="none"
240
+ r="11.25"
241
+ strokeMiterlimit="10"
242
+ />
243
+ </g>
244
+ </svg>
245
+ </button>
246
+ <div
247
+ className="css-0"
248
+ >
249
+ <div
250
+ className="css-16fuzwj"
251
+ >
252
+ <div
253
+ aria-orientation="horizontal"
254
+ className="chakra-tabs__tablist css-k008qs"
255
+ onKeyDown={[Function]}
256
+ role="tablist"
257
+ >
258
+ <button
259
+ aria-controls="chakra--tabpanel--1"
260
+ aria-selected={false}
261
+ className="chakra-tabs__tab css-abpfcx"
262
+ id="chakra--tab--1"
263
+ onClick={[Function]}
264
+ onFocus={[Function]}
265
+ role="tab"
266
+ tabIndex={-1}
267
+ type="button"
268
+ >
269
+ Tom Nook
270
+ </button>
271
+ <button
272
+ aria-controls="chakra--tabpanel--1"
273
+ aria-selected={false}
274
+ className="chakra-tabs__tab css-abpfcx"
275
+ id="chakra--tab--1"
276
+ onClick={[Function]}
277
+ onFocus={[Function]}
278
+ role="tab"
279
+ tabIndex={-1}
280
+ type="button"
281
+ >
282
+ Isabelle
283
+ </button>
284
+ <button
285
+ aria-controls="chakra--tabpanel--1"
286
+ aria-selected={false}
287
+ className="chakra-tabs__tab css-abpfcx"
288
+ id="chakra--tab--1"
289
+ onClick={[Function]}
290
+ onFocus={[Function]}
291
+ role="tab"
292
+ tabIndex={-1}
293
+ type="button"
294
+ >
295
+ K.K. Slider
296
+ </button>
297
+ </div>
298
+ </div>
299
+ </div>
300
+ <button
301
+ aria-label="Next"
302
+ className="chakra-button css-12jygyh"
303
+ data-testid="button"
304
+ id="tabs-next-chakra"
305
+ onClick={[Function]}
306
+ type="button"
307
+ >
308
+ <svg
309
+ aria-hidden={true}
310
+ className="chakra-icon css-1grhd2q"
311
+ focusable={false}
312
+ id="tabs-next-icon-chakra"
313
+ role="img"
314
+ title="arrow icon"
315
+ viewBox="0 0 24 24"
316
+ >
317
+ <g
318
+ stroke="currentColor"
319
+ strokeWidth="1.5"
320
+ >
321
+ <path
322
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
323
+ fill="none"
324
+ strokeLinecap="round"
325
+ />
326
+ <path
327
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
328
+ fill="currentColor"
329
+ strokeLinecap="round"
330
+ />
331
+ <circle
332
+ cx="12"
333
+ cy="12"
334
+ fill="none"
335
+ r="11.25"
336
+ strokeMiterlimit="10"
337
+ />
338
+ </g>
339
+ </svg>
340
+ </button>
341
+ </div>
342
+ <div
343
+ className="chakra-tabs__tab-panels css-8atqhb"
344
+ >
345
+ <div
346
+ aria-labelledby="chakra--tab-0"
347
+ className="chakra-tabs__tab-panel css-sjt5nk"
348
+ hidden={false}
349
+ id="chakra--tabpanel-0"
350
+ role="tabpanel"
351
+ tabIndex={0}
352
+ >
353
+ <p>
354
+ Tom Nook,
355
+ <b>
356
+ known in Japan as Tanukichi
357
+ </b>
358
+ , is a fictional character in the Animal Crossing series who operates the village store.
359
+ </p>
360
+ </div>
361
+ <div
362
+ aria-labelledby="chakra--tab-1"
363
+ className="chakra-tabs__tab-panel css-sjt5nk"
364
+ dangerouslySetInnerHTML={
365
+ Object {
366
+ "__html": "Isabelle, known as Shizue in Japan, is a fictional character from the Animal Crossing series of video games. She is a kindly Shih Tzu that debuted in the 2012 release Animal Crossing: New Leaf, where she serves as the secretary to the player character.",
367
+ }
368
+ }
369
+ hidden={true}
370
+ id="chakra--tabpanel-1"
371
+ role="tabpanel"
372
+ tabIndex={0}
373
+ />
374
+ <div
375
+ aria-labelledby="chakra--tab-2"
376
+ className="chakra-tabs__tab-panel css-sjt5nk"
377
+ dangerouslySetInnerHTML={
378
+ Object {
379
+ "__html": "<p>Totakeke, more commonly known as <b>K.K. Slider or K.K.</b>, is a fictional character within the Animal Crossing franchise. One of the franchise's most popular characters, he debuted in the title Animal Crossing, and has appeared in every installment since.</p>",
380
+ }
381
+ }
382
+ hidden={true}
383
+ id="chakra--tabpanel-2"
384
+ role="tabpanel"
385
+ tabIndex={0}
386
+ />
387
+ </div>
388
+ </div>
389
+ `;
390
+
391
+ exports[`Tabs renders the UI snapshot correctly 3`] = `
392
+ <div
393
+ className="chakra-tabs css-1xdhyk6"
394
+ data-testid="props"
395
+ id="props"
396
+ >
397
+ <div
398
+ className="css-l3f8vc"
399
+ >
400
+ <button
401
+ aria-label="Previous"
402
+ className="chakra-button css-1fhylxi"
403
+ data-testid="button"
404
+ id="tabs-previous-props"
405
+ onClick={[Function]}
406
+ type="button"
407
+ >
408
+ <svg
409
+ aria-hidden={true}
410
+ className="chakra-icon css-1grhd2q"
411
+ focusable={false}
412
+ id="tabs-previous-icon-props"
413
+ role="img"
414
+ title="arrow icon"
415
+ viewBox="0 0 24 24"
416
+ >
417
+ <g
418
+ stroke="currentColor"
419
+ strokeWidth="1.5"
420
+ >
421
+ <path
422
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
423
+ fill="none"
424
+ strokeLinecap="round"
425
+ />
426
+ <path
427
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
428
+ fill="currentColor"
429
+ strokeLinecap="round"
430
+ />
431
+ <circle
432
+ cx="12"
433
+ cy="12"
434
+ fill="none"
435
+ r="11.25"
436
+ strokeMiterlimit="10"
437
+ />
438
+ </g>
439
+ </svg>
440
+ </button>
441
+ <div
442
+ className="css-0"
443
+ >
444
+ <div
445
+ className="css-16fuzwj"
446
+ >
447
+ <div
448
+ aria-orientation="horizontal"
449
+ className="chakra-tabs__tablist css-k008qs"
450
+ onKeyDown={[Function]}
451
+ role="tablist"
452
+ >
453
+ <button
454
+ aria-controls="props--tabpanel--1"
455
+ aria-selected={false}
456
+ className="chakra-tabs__tab css-abpfcx"
457
+ id="props--tab--1"
458
+ onClick={[Function]}
459
+ onFocus={[Function]}
460
+ role="tab"
461
+ tabIndex={-1}
462
+ type="button"
463
+ >
464
+ Tom Nook
465
+ </button>
466
+ <button
467
+ aria-controls="props--tabpanel--1"
468
+ aria-selected={false}
469
+ className="chakra-tabs__tab css-abpfcx"
470
+ id="props--tab--1"
471
+ onClick={[Function]}
472
+ onFocus={[Function]}
473
+ role="tab"
474
+ tabIndex={-1}
475
+ type="button"
476
+ >
477
+ Isabelle
478
+ </button>
479
+ <button
480
+ aria-controls="props--tabpanel--1"
481
+ aria-selected={false}
482
+ className="chakra-tabs__tab css-abpfcx"
483
+ id="props--tab--1"
484
+ onClick={[Function]}
485
+ onFocus={[Function]}
486
+ role="tab"
487
+ tabIndex={-1}
488
+ type="button"
489
+ >
490
+ K.K. Slider
491
+ </button>
492
+ </div>
493
+ </div>
494
+ </div>
495
+ <button
496
+ aria-label="Next"
497
+ className="chakra-button css-12jygyh"
498
+ data-testid="button"
499
+ id="tabs-next-props"
500
+ onClick={[Function]}
501
+ type="button"
502
+ >
503
+ <svg
504
+ aria-hidden={true}
505
+ className="chakra-icon css-1grhd2q"
506
+ focusable={false}
507
+ id="tabs-next-icon-props"
508
+ role="img"
509
+ title="arrow icon"
510
+ viewBox="0 0 24 24"
511
+ >
512
+ <g
513
+ stroke="currentColor"
514
+ strokeWidth="1.5"
515
+ >
516
+ <path
517
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
518
+ fill="none"
519
+ strokeLinecap="round"
520
+ />
521
+ <path
522
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
523
+ fill="currentColor"
524
+ strokeLinecap="round"
525
+ />
526
+ <circle
527
+ cx="12"
528
+ cy="12"
529
+ fill="none"
530
+ r="11.25"
531
+ strokeMiterlimit="10"
532
+ />
533
+ </g>
534
+ </svg>
535
+ </button>
536
+ </div>
537
+ <div
538
+ className="chakra-tabs__tab-panels css-8atqhb"
539
+ >
540
+ <div
541
+ aria-labelledby="props--tab-0"
542
+ className="chakra-tabs__tab-panel css-sjt5nk"
543
+ hidden={false}
544
+ id="props--tabpanel-0"
545
+ role="tabpanel"
546
+ tabIndex={0}
547
+ >
548
+ <p>
549
+ Tom Nook,
550
+ <b>
551
+ known in Japan as Tanukichi
552
+ </b>
553
+ , is a fictional character in the Animal Crossing series who operates the village store.
554
+ </p>
555
+ </div>
556
+ <div
557
+ aria-labelledby="props--tab-1"
558
+ className="chakra-tabs__tab-panel css-sjt5nk"
559
+ dangerouslySetInnerHTML={
560
+ Object {
561
+ "__html": "Isabelle, known as Shizue in Japan, is a fictional character from the Animal Crossing series of video games. She is a kindly Shih Tzu that debuted in the 2012 release Animal Crossing: New Leaf, where she serves as the secretary to the player character.",
562
+ }
563
+ }
564
+ hidden={true}
565
+ id="props--tabpanel-1"
566
+ role="tabpanel"
567
+ tabIndex={0}
568
+ />
569
+ <div
570
+ aria-labelledby="props--tab-2"
571
+ className="chakra-tabs__tab-panel css-sjt5nk"
572
+ dangerouslySetInnerHTML={
573
+ Object {
574
+ "__html": "<p>Totakeke, more commonly known as <b>K.K. Slider or K.K.</b>, is a fictional character within the Animal Crossing franchise. One of the franchise's most popular characters, he debuted in the title Animal Crossing, and has appeared in every installment since.</p>",
575
+ }
576
+ }
577
+ hidden={true}
578
+ id="props--tabpanel-2"
579
+ role="tabpanel"
580
+ tabIndex={0}
581
+ />
582
+ </div>
583
+ </div>
584
+ `;
@@ -60,46 +60,18 @@ import { getCategory } from "../../utils/componentCategories";
60
60
  | Component Version | DS Version |
61
61
  | ----------------- | ---------- |
62
62
  | Added | `0.3.6` |
63
- | Latest | `0.25.13` |
63
+ | Latest | `0.26.0` |
64
64
 
65
65
  ## Table of Contents
66
66
 
67
- - [Accessibility for TemplateAppContainer](#accessibility-for-templateappcontainer)
68
- - [TemplateAppContainer Component](#templateappcontainer-component)
69
- - [TemplateAppContainer Props](#templateappcontainer-props)
70
- - [Template Children Components](#template-children-components)
71
- - [Template Children Props](#template-children-props)
67
+ - [TemplateAppContainer Overview](#templateappcontainer-overview)
68
+ - [TemplateAppContainer Component Props](#templateappcontainer-component-props)
69
+ - [TemplateAppContainer Accessibility](#templateappcontainer-accessibility)
70
+ - [Template Children Overview](#template-children-overview)
71
+ - [Template Children Component Props](#template-children-component-props)
72
72
  - [Full Example with Template Children Components](#full-example-with-template-children-components)
73
73
 
74
- ## Accessibility
75
-
76
- **The `TemplateAppContainer` component is the recommended way to render the entire
77
- application.** Therefore, this accessibility section is specifically for the
78
- `TemplateAppContainer` but the same rules apply to the individual "Template"
79
- components.
80
-
81
- If you need to render an alert or notification at the top of the page with an
82
- `aside` HTML element or HTML element with the `role="complementary"` attribute,
83
- then pass that alert or notification component to the `aboveHeader` prop. These
84
- elements should _not_ be rendered in the `header` HTML section since that's an
85
- accessibility violation.
86
-
87
- The `TemplateAppContainer` component renders a full DOM and one of the children
88
- is the `main` HTML element with a default "id" of `"mainContent"`. This should
89
- be used as the anchor element that the skip navigation link points to. As of
90
- v0.25.13, the consuming application is responsible for adding the skip
91
- navigation feature to the application. If your application is using the current
92
- NYPL Header, it already contains the skip navigation feature but make sure it is
93
- pointing to the correct anchor element.
94
-
95
- Resources
96
-
97
- - [W3C Aria Landmarks Example](https://www.w3.org/TR/wai-aria-practices/examples/landmarks/complementary.html)
98
- - [Digital A11y Role=Complementary](https://www.digitala11y.com/complementary-role/)
99
- - [WebAim Skip Navigation Link](https://webaim.org/techniques/skipnav/)
100
- - [A11ymatters Skip Navigation Link](https://www.a11ymatters.com/pattern/skip-link/)
101
-
102
- ## TemplateAppContainer Component
74
+ ## TemplateAppContainer Overview
103
75
 
104
76
  <Description of={TemplateAppContainer} />
105
77
 
@@ -138,7 +110,7 @@ import { TemplateAppContainer } from "@nypl/design-system-react-components";
138
110
  />;
139
111
  ```
140
112
 
141
- ## TemplateAppContainer Props
113
+ ## TemplateAppContainer Component Props
142
114
 
143
115
  <Canvas>
144
116
  <Story
@@ -186,13 +158,45 @@ import { TemplateAppContainer } from "@nypl/design-system-react-components";
186
158
 
187
159
  <ArgsTable story="TemplateAppContainer Component" />
188
160
 
189
- ## Template Children Components
161
+ ## TemplateAppContainer Accessibility
162
+
163
+ **The `TemplateAppContainer` component is the recommended way to render the entire
164
+ application.** Therefore, this accessibility section is specifically for the
165
+ `TemplateAppContainer` but the same rules apply to the individual "Template"
166
+ components.
167
+
168
+ The `TemplateAppContainer` component renders the header as a `<header>` element,
169
+ the content as a `<main>` element, and the footer as a `<footer>` element.
170
+
171
+ If you need to render an alert or notification at the top of the page with an
172
+ `aside` HTML element or HTML element with the `role="complementary"` attribute,
173
+ then pass that alert or notification component to the `aboveHeader` prop. These
174
+ elements should _not_ be rendered in the `header` HTML section since that's an
175
+ accessibility violation.
176
+
177
+ The `TemplateAppContainer` component renders a full DOM and one of the children
178
+ is the `main` HTML element with a default "id" of `"mainContent"`. This should
179
+ be used as the anchor element that the skip navigation link points to. As of
180
+ v0.25.13, the consuming application is responsible for adding the skip
181
+ navigation feature to the application. If your application is using the current
182
+ NYPL Header, it already contains the skip navigation feature but make sure it is
183
+ pointing to the correct anchor element.
184
+
185
+ Resources
186
+
187
+ - [W3C Aria Landmarks Example](https://www.w3.org/TR/wai-aria-practices/examples/landmarks/complementary.html)
188
+ - [Digital A11y Role=Complementary](https://www.digitala11y.com/complementary-role/)
189
+ - [WebAim Skip Navigation Link](https://webaim.org/techniques/skipnav/)
190
+ - [A11ymatters Skip Navigation Link](https://www.a11ymatters.com/pattern/skip-link/)
191
+
192
+ ## Template Children Overview
190
193
 
191
- The DS also provides a set of "template" components that work together to
192
- render a consistent mobile and desktop layout. More information on individual
193
- components and how they should be composed can be found below. Even though these
194
- component are available for use, we recommend using the `TemplateAppContainer`
195
- component and passing down children component as props as needed.
194
+ The Reservoir Design System (DS) also provides a set of "template" components
195
+ that work together to render a consistent mobile and desktop layout. More
196
+ information on individual components and how they should be composed can be
197
+ found below. Even though these component are available for use, we recommend
198
+ using the `TemplateAppContainer` component and passing down children component
199
+ as props as needed.
196
200
 
197
201
  Basic "template" components structure:
198
202
 
@@ -237,7 +241,7 @@ import {
237
241
  </Template>
238
242
  ```
239
243
 
240
- ## Template Children Props
244
+ ## Template Children Component Props
241
245
 
242
246
  <Canvas>
243
247
  <Story
@@ -269,8 +269,41 @@ describe("Template components", () => {
269
269
  />
270
270
  )
271
271
  .toJSON();
272
+ const withChakraProps = renderer
273
+ .create(
274
+ <TemplateAppContainer
275
+ aboveHeader={aboveHeader}
276
+ header={header}
277
+ breakout={breakout}
278
+ sidebar={sidebar}
279
+ contentTop={contentTop}
280
+ contentSidebar={contentSidebar}
281
+ contentPrimary={contentPrimary}
282
+ footer={footer}
283
+ p="20px"
284
+ color="ui.error.primary"
285
+ />
286
+ )
287
+ .toJSON();
288
+ const withOtherProps = renderer
289
+ .create(
290
+ <TemplateAppContainer
291
+ aboveHeader={aboveHeader}
292
+ header={header}
293
+ breakout={breakout}
294
+ sidebar={sidebar}
295
+ contentTop={contentTop}
296
+ contentSidebar={contentSidebar}
297
+ contentPrimary={contentPrimary}
298
+ footer={footer}
299
+ data-testid="props"
300
+ />
301
+ )
302
+ .toJSON();
272
303
 
273
304
  expect(templateComponents).toMatchSnapshot();
274
305
  expect(singleComponent).toMatchSnapshot();
306
+ expect(withChakraProps).toMatchSnapshot();
307
+ expect(withOtherProps).toMatchSnapshot();
275
308
  });
276
309
  });