@nypl/design-system-react-components 1.0.1 → 1.0.2

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 (396) hide show
  1. package/CHANGELOG.md +1428 -3
  2. package/README.md +391 -3
  3. package/dist/__tests__/fileMock.d.ts +4 -0
  4. package/dist/__tests__/setup.d.ts +2 -0
  5. package/{lib/stories/0-Welcome.stories.d.ts → dist/__tests__/utils/utils.test.d.ts} +1 -1
  6. package/dist/components/Accordion/Accordion.d.ts +21 -0
  7. package/dist/components/Autosuggest/Autosuggest.stories.d.ts +4 -0
  8. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +18 -0
  9. package/dist/components/Button/Button.d.ts +25 -0
  10. package/dist/components/ButtonGroup/ButtonGroup.d.ts +22 -0
  11. package/dist/components/Card/Card.d.ts +49 -0
  12. package/dist/components/Checkbox/Checkbox.d.ts +47 -0
  13. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +49 -0
  14. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +29 -0
  15. package/dist/components/DatePicker/DatePicker.d.ts +81 -0
  16. package/dist/components/Fieldset/Fieldset.d.ts +22 -0
  17. package/dist/components/Form/Form.d.ts +29 -0
  18. package/dist/components/Grid/SimpleGrid.d.ts +17 -0
  19. package/dist/components/Heading/Heading.d.ts +27 -0
  20. package/dist/components/HelperErrorText/HelperErrorText.d.ts +29 -0
  21. package/dist/components/Hero/Hero.d.ts +40 -0
  22. package/dist/components/HorizontalRule/HorizontalRule.d.ts +11 -0
  23. package/dist/components/Icons/Icon.d.ts +37 -0
  24. package/dist/components/Icons/IconSvgs.d.ts +33 -0
  25. package/dist/components/Image/Image.d.ts +61 -0
  26. package/dist/components/Label/Label.d.ts +20 -0
  27. package/dist/components/Link/Link.d.ts +20 -0
  28. package/dist/components/List/List.d.ts +35 -0
  29. package/dist/components/Logo/Logo.d.ts +26 -0
  30. package/dist/components/Logo/LogoSvgs.d.ts +46 -0
  31. package/dist/components/Modal/Modal.d.ts +33 -0
  32. package/dist/components/Notification/Notification.d.ts +50 -0
  33. package/dist/components/Pagination/Pagination.d.ts +27 -0
  34. package/dist/components/Placeholder/Placeholder.d.ts +10 -0
  35. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +30 -0
  36. package/dist/components/Radio/Radio.d.ts +43 -0
  37. package/dist/components/RadioGroup/RadioGroup.d.ts +51 -0
  38. package/dist/components/SearchBar/SearchBar.d.ts +61 -0
  39. package/dist/components/Select/Select.d.ts +57 -0
  40. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +39 -0
  41. package/dist/components/SkipNavigation/SkipNavigation.d.ts +17 -0
  42. package/dist/components/Slider/Slider.d.ts +60 -0
  43. package/dist/components/StatusBadge/StatusBadge.d.ts +16 -0
  44. package/dist/components/StructuredContent/StructuredContent.d.ts +28 -0
  45. package/dist/components/StyleGuide/ColorCard.d.ts +12 -0
  46. package/dist/components/Table/Table.d.ts +29 -0
  47. package/dist/components/Tabs/Tabs.d.ts +26 -0
  48. package/dist/components/Template/Template.d.ts +126 -0
  49. package/dist/components/Text/Text.d.ts +16 -0
  50. package/dist/components/TextInput/TextInput.d.ts +78 -0
  51. package/dist/components/Toggle/Toggle.d.ts +42 -0
  52. package/dist/components/VideoPlayer/VideoPlayer.d.ts +38 -0
  53. package/dist/design-system-react-components.cjs.development.js +11305 -0
  54. package/dist/design-system-react-components.cjs.development.js.map +1 -0
  55. package/dist/design-system-react-components.cjs.production.min.js +2 -0
  56. package/dist/design-system-react-components.cjs.production.min.js.map +1 -0
  57. package/dist/design-system-react-components.esm.js +11150 -0
  58. package/dist/design-system-react-components.esm.js.map +1 -0
  59. package/dist/helpers/types.d.ts +1 -0
  60. package/dist/hooks/tests/useCarouselStyles.test.d.ts +1 -0
  61. package/dist/hooks/useCarouselStyles.d.ts +17 -0
  62. package/dist/hooks/useNYPLTheme.d.ts +66 -0
  63. package/dist/hooks/useWindowSize.d.ts +10 -0
  64. package/dist/index.d.ts +48 -0
  65. package/dist/index.js +8 -0
  66. package/dist/resources.scss +386 -0
  67. package/dist/styles.css +3 -0
  68. package/dist/theme/components/accordion.d.ts +20 -0
  69. package/dist/theme/components/breadcrumb.d.ts +105 -0
  70. package/dist/theme/components/button.d.ts +120 -0
  71. package/dist/theme/components/buttonGroup.d.ts +11 -0
  72. package/dist/theme/components/card.d.ts +381 -0
  73. package/dist/theme/components/checkbox.d.ts +95 -0
  74. package/dist/theme/components/checkboxGroup.d.ts +14 -0
  75. package/dist/theme/components/componentWrapper.d.ts +12 -0
  76. package/dist/theme/components/customTable.d.ts +136 -0
  77. package/dist/theme/components/datePicker.d.ts +16 -0
  78. package/dist/theme/components/fieldset.d.ts +20 -0
  79. package/dist/theme/components/global.d.ts +73 -0
  80. package/dist/theme/components/globalMixins.d.ts +23 -0
  81. package/dist/theme/components/heading.d.ts +160 -0
  82. package/dist/theme/components/helperErrorText.d.ts +12 -0
  83. package/dist/theme/components/hero.d.ts +499 -0
  84. package/dist/theme/components/horizontalRule.d.ts +15 -0
  85. package/dist/theme/components/icon.d.ts +47755 -0
  86. package/dist/theme/components/image.d.ts +590 -0
  87. package/dist/theme/components/label.d.ts +18 -0
  88. package/dist/theme/components/link.d.ts +62 -0
  89. package/dist/theme/components/list.d.ts +182 -0
  90. package/dist/theme/components/logo.d.ts +477 -0
  91. package/dist/theme/components/notification.d.ts +95 -0
  92. package/dist/theme/components/pagination.d.ts +16 -0
  93. package/dist/theme/components/progressIndicator.d.ts +52 -0
  94. package/dist/theme/components/radio.d.ts +99 -0
  95. package/dist/theme/components/radioGroup.d.ts +14 -0
  96. package/dist/theme/components/searchBar.d.ts +18 -0
  97. package/dist/theme/components/select.d.ts +87 -0
  98. package/dist/theme/components/skeletonLoader.d.ts +102 -0
  99. package/dist/theme/components/skipNavigation.d.ts +25 -0
  100. package/dist/theme/components/slider.d.ts +59 -0
  101. package/dist/theme/components/statusBadge.d.ts +25 -0
  102. package/dist/theme/components/structuredContent.d.ts +226 -0
  103. package/dist/theme/components/tabs.d.ts +136 -0
  104. package/dist/theme/components/template.d.ts +105 -0
  105. package/dist/theme/components/text.d.ts +26 -0
  106. package/dist/theme/components/textInput.d.ts +124 -0
  107. package/dist/theme/components/toggle.d.ts +92 -0
  108. package/dist/theme/components/videoPlayer.d.ts +40 -0
  109. package/dist/theme/foundations/breakpoints.d.ts +23 -0
  110. package/dist/theme/foundations/colors.d.ts +3 -0
  111. package/dist/theme/foundations/global.d.ts +58 -0
  112. package/dist/theme/foundations/radii.d.ts +6 -0
  113. package/dist/theme/foundations/shadows.d.ts +4 -0
  114. package/dist/theme/foundations/spacing.d.ts +82 -0
  115. package/dist/theme/foundations/typography.d.ts +8 -0
  116. package/dist/theme/index.d.ts +20 -0
  117. package/dist/theme/provider.d.ts +3 -0
  118. package/dist/theme/types.d.ts +1 -0
  119. package/dist/utils/componentCategories.d.ts +1 -0
  120. package/dist/utils/interfaces.d.ts +5 -0
  121. package/dist/utils/utils.d.ts +31 -0
  122. package/package.json +133 -20
  123. package/src/__tests__/fileMock.ts +6 -0
  124. package/src/__tests__/setup.ts +27 -0
  125. package/src/__tests__/utils/utils.test.ts +18 -0
  126. package/src/components/AccessibilityGuide/SkipNavigation.stories.mdx +42 -0
  127. package/src/components/Accordion/Accordion.stories.mdx +333 -0
  128. package/src/components/Accordion/Accordion.test.tsx +237 -0
  129. package/src/components/Accordion/Accordion.tsx +137 -0
  130. package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +734 -0
  131. package/src/components/Autosuggest/Autosuggest.stories.mdx +75 -0
  132. package/src/components/Autosuggest/Autosuggest.stories.tsx +211 -0
  133. package/src/components/Autosuggest/_Autosuggest.scss +51 -0
  134. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +231 -0
  135. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +144 -0
  136. package/src/components/Breadcrumbs/Breadcrumbs.tsx +98 -0
  137. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +695 -0
  138. package/src/components/Button/Button.stories.mdx +320 -0
  139. package/src/components/Button/Button.test.tsx +184 -0
  140. package/src/components/Button/Button.tsx +95 -0
  141. package/src/components/Button/__snapshots__/Button.test.tsx.snap +106 -0
  142. package/src/components/ButtonGroup/ButtonGroup.stories.mdx +178 -0
  143. package/src/components/ButtonGroup/ButtonGroup.test.tsx +141 -0
  144. package/src/components/ButtonGroup/ButtonGroup.tsx +100 -0
  145. package/src/components/ButtonGroup/__snapshots__/ButtonGroup.test.tsx.snap +117 -0
  146. package/src/components/Card/Card.stories.mdx +1041 -0
  147. package/src/components/Card/Card.test.tsx +388 -0
  148. package/src/components/Card/Card.tsx +346 -0
  149. package/src/components/Card/__snapshots__/Card.test.tsx.snap +568 -0
  150. package/src/components/Chakra/Box.stories.mdx +52 -0
  151. package/src/components/Chakra/Center.stories.mdx +96 -0
  152. package/src/components/Chakra/Flex.stories.mdx +111 -0
  153. package/src/components/Chakra/Grid.stories.mdx +89 -0
  154. package/src/components/Chakra/Stack.stories.mdx +109 -0
  155. package/src/components/Checkbox/Checkbox.stories.mdx +243 -0
  156. package/src/components/Checkbox/Checkbox.test.tsx +350 -0
  157. package/src/components/Checkbox/Checkbox.tsx +152 -0
  158. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +661 -0
  159. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +462 -0
  160. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +492 -0
  161. package/src/components/CheckboxGroup/CheckboxGroup.tsx +173 -0
  162. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +1842 -0
  163. package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +163 -0
  164. package/src/components/ComponentWrapper/ComponentWrapper.tsx +76 -0
  165. package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +103 -0
  166. package/src/components/DatePicker/DatePicker.stories.mdx +452 -0
  167. package/src/components/DatePicker/DatePicker.test.tsx +940 -0
  168. package/src/components/DatePicker/DatePicker.tsx +450 -0
  169. package/src/components/DatePicker/_DatePicker.scss +100 -0
  170. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +908 -0
  171. package/src/components/Fieldset/Fieldset.stories.mdx +96 -0
  172. package/src/components/Fieldset/Fieldset.test.tsx +155 -0
  173. package/src/components/Fieldset/Fieldset.tsx +55 -0
  174. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +89 -0
  175. package/src/components/Form/Form.stories.mdx +426 -0
  176. package/src/components/Form/Form.test.tsx +234 -0
  177. package/src/components/Form/Form.tsx +124 -0
  178. package/src/components/Form/__snapshots__/Form.test.tsx.snap +115 -0
  179. package/src/components/Grid/SimpleGrid.stories.mdx +336 -0
  180. package/src/components/Grid/SimpleGrid.test.tsx +79 -0
  181. package/src/components/Grid/SimpleGrid.tsx +49 -0
  182. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +23 -0
  183. package/src/components/Heading/Heading.stories.mdx +187 -0
  184. package/src/components/Heading/Heading.test.tsx +171 -0
  185. package/src/components/Heading/Heading.tsx +104 -0
  186. package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +90 -0
  187. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +172 -0
  188. package/src/components/HelperErrorText/HelperErrorText.test.tsx +114 -0
  189. package/src/components/HelperErrorText/HelperErrorText.tsx +62 -0
  190. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +93 -0
  191. package/src/components/Hero/Hero.stories.mdx +378 -0
  192. package/src/components/Hero/Hero.test.tsx +611 -0
  193. package/src/components/Hero/Hero.tsx +203 -0
  194. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +379 -0
  195. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +73 -0
  196. package/src/components/HorizontalRule/HorizontalRule.test.tsx +54 -0
  197. package/src/components/HorizontalRule/HorizontalRule.tsx +27 -0
  198. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +44 -0
  199. package/src/components/Icons/Icon.stories.mdx +413 -0
  200. package/src/components/Icons/Icon.test.tsx +120 -0
  201. package/src/components/Icons/Icon.tsx +187 -0
  202. package/src/components/Icons/IconSvgs.tsx +64 -0
  203. package/src/components/Icons/__snapshots__/Icon.test.tsx.snap +129 -0
  204. package/src/components/Image/Image.stories.mdx +332 -0
  205. package/src/components/Image/Image.test.tsx +155 -0
  206. package/src/components/Image/Image.tsx +171 -0
  207. package/src/components/Image/__snapshots__/Image.test.tsx.snap +269 -0
  208. package/src/components/Label/Label.stories.mdx +100 -0
  209. package/src/components/Label/Label.test.tsx +116 -0
  210. package/src/components/Label/Label.tsx +55 -0
  211. package/src/components/Label/__snapshots__/Label.test.tsx.snap +45 -0
  212. package/src/components/Link/Link.stories.mdx +249 -0
  213. package/src/components/Link/Link.test.tsx +224 -0
  214. package/src/components/Link/Link.tsx +178 -0
  215. package/src/components/Link/__snapshots__/Link.test.tsx.snap +286 -0
  216. package/src/components/List/List.stories.mdx +393 -0
  217. package/src/components/List/List.test.tsx +265 -0
  218. package/src/components/List/List.tsx +156 -0
  219. package/src/components/List/__snapshots__/List.test.tsx.snap +213 -0
  220. package/src/components/Logo/Logo.stories.mdx +295 -0
  221. package/src/components/Logo/Logo.test.tsx +116 -0
  222. package/src/components/Logo/Logo.tsx +151 -0
  223. package/src/components/Logo/LogoSvgs.tsx +90 -0
  224. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +142 -0
  225. package/src/components/Modal/Modal.stories.mdx +294 -0
  226. package/src/components/Modal/Modal.test.tsx +157 -0
  227. package/src/components/Modal/Modal.tsx +154 -0
  228. package/src/components/Modal/__snapshots__/Modal.test.tsx.snap +25 -0
  229. package/src/components/Notification/Notification.stories.mdx +358 -0
  230. package/src/components/Notification/Notification.test.tsx +279 -0
  231. package/src/components/Notification/Notification.tsx +224 -0
  232. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +525 -0
  233. package/src/components/Pagination/Pagination.stories.mdx +184 -0
  234. package/src/components/Pagination/Pagination.test.tsx +419 -0
  235. package/src/components/Pagination/Pagination.tsx +269 -0
  236. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +544 -0
  237. package/src/components/Placeholder/Placeholder.tsx +19 -0
  238. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +360 -0
  239. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +298 -0
  240. package/src/components/ProgressIndicator/ProgressIndicator.tsx +132 -0
  241. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +434 -0
  242. package/src/components/Radio/Radio.stories.mdx +216 -0
  243. package/src/components/Radio/Radio.test.tsx +247 -0
  244. package/src/components/Radio/Radio.tsx +119 -0
  245. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +451 -0
  246. package/src/components/RadioGroup/RadioGroup.stories.mdx +479 -0
  247. package/src/components/RadioGroup/RadioGroup.test.tsx +471 -0
  248. package/src/components/RadioGroup/RadioGroup.tsx +171 -0
  249. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +1550 -0
  250. package/src/components/SearchBar/SearchBar.stories.mdx +518 -0
  251. package/src/components/SearchBar/SearchBar.test.tsx +435 -0
  252. package/src/components/SearchBar/SearchBar.tsx +210 -0
  253. package/src/components/SearchBar/__snapshots__/SearchBar.test.tsx.snap +1049 -0
  254. package/src/components/Select/Select.stories.mdx +439 -0
  255. package/src/components/Select/Select.test.tsx +358 -0
  256. package/src/components/Select/Select.tsx +183 -0
  257. package/src/components/Select/__snapshots__/Select.test.tsx.snap +895 -0
  258. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +142 -0
  259. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +116 -0
  260. package/src/components/SkeletonLoader/SkeletonLoader.tsx +123 -0
  261. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +898 -0
  262. package/src/components/SkipNavigation/SkipNavigation.stories.mdx +90 -0
  263. package/src/components/SkipNavigation/SkipNavigation.test.tsx +63 -0
  264. package/src/components/SkipNavigation/SkipNavigation.tsx +51 -0
  265. package/src/components/SkipNavigation/__snapshots__/SkipNavigation.test.tsx.snap +130 -0
  266. package/src/components/Slider/Slider.stories.mdx +628 -0
  267. package/src/components/Slider/Slider.test.tsx +736 -0
  268. package/src/components/Slider/Slider.tsx +322 -0
  269. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +2186 -0
  270. package/src/components/StatusBadge/StatusBadge.stories.mdx +109 -0
  271. package/src/components/StatusBadge/StatusBadge.test.tsx +70 -0
  272. package/src/components/StatusBadge/StatusBadge.tsx +35 -0
  273. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +47 -0
  274. package/src/components/StructuredContent/StructuredContent.stories.mdx +567 -0
  275. package/src/components/StructuredContent/StructuredContent.test.tsx +435 -0
  276. package/src/components/StructuredContent/StructuredContent.tsx +139 -0
  277. package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +368 -0
  278. package/src/components/StyleGuide/Bidirectionality.stories.mdx +206 -0
  279. package/src/components/StyleGuide/Breakpoints.stories.mdx +55 -0
  280. package/src/components/StyleGuide/Buttons.stories.mdx +194 -0
  281. package/src/components/StyleGuide/ColorCard.tsx +43 -0
  282. package/src/components/StyleGuide/Colors.stories.mdx +201 -0
  283. package/src/components/StyleGuide/DesignTokens.stories.mdx +193 -0
  284. package/src/components/StyleGuide/Forms.stories.mdx +94 -0
  285. package/src/components/StyleGuide/Iconography.stories.mdx +142 -0
  286. package/src/components/StyleGuide/Spacing.stories.mdx +116 -0
  287. package/src/components/StyleGuide/Typography.stories.mdx +419 -0
  288. package/src/components/Table/Table.stories.mdx +272 -0
  289. package/src/components/Table/Table.test.tsx +241 -0
  290. package/src/components/Table/Table.tsx +152 -0
  291. package/src/components/Table/__snapshots__/Table.test.tsx.snap +1703 -0
  292. package/src/components/Tabs/Tabs.stories.mdx +338 -0
  293. package/src/components/Tabs/Tabs.test.tsx +298 -0
  294. package/src/components/Tabs/Tabs.tsx +264 -0
  295. package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +584 -0
  296. package/src/components/Template/Template.stories.mdx +695 -0
  297. package/src/components/Template/Template.test.tsx +309 -0
  298. package/src/components/Template/Template.tsx +326 -0
  299. package/src/components/Template/__snapshots__/Template.test.tsx.snap +342 -0
  300. package/src/components/Text/Text.stories.mdx +103 -0
  301. package/src/components/Text/Text.test.tsx +63 -0
  302. package/src/components/Text/Text.tsx +50 -0
  303. package/src/components/Text/__snapshots__/Text.test.tsx.snap +50 -0
  304. package/src/components/TextInput/TextInput.stories.mdx +268 -0
  305. package/src/components/TextInput/TextInput.test.tsx +451 -0
  306. package/src/components/TextInput/TextInput.tsx +240 -0
  307. package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +274 -0
  308. package/src/components/Toggle/Toggle.stories.mdx +237 -0
  309. package/src/components/Toggle/Toggle.test.tsx +170 -0
  310. package/src/components/Toggle/Toggle.tsx +128 -0
  311. package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +470 -0
  312. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +212 -0
  313. package/src/components/VideoPlayer/VideoPlayer.test.tsx +308 -0
  314. package/src/components/VideoPlayer/VideoPlayer.tsx +188 -0
  315. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +192 -0
  316. package/src/docs/Chakra.stories.mdx +563 -0
  317. package/src/docs/Welcome.stories.mdx +148 -0
  318. package/src/helpers/types.ts +1 -0
  319. package/src/hooks/tests/useCarouselStyles.test.ts +140 -0
  320. package/src/hooks/tests/useNYPLTheme.test.tsx +36 -0
  321. package/src/hooks/useCarouselStyles.stories.mdx +30 -0
  322. package/src/hooks/useCarouselStyles.ts +35 -0
  323. package/src/hooks/useNYPLTheme.stories.mdx +98 -0
  324. package/src/hooks/useNYPLTheme.ts +91 -0
  325. package/src/hooks/useWindowSize.stories.mdx +23 -0
  326. package/src/hooks/useWindowSize.ts +40 -0
  327. package/src/index.ts +136 -0
  328. package/src/resources.scss +6 -0
  329. package/src/styles/base/_01-breakpoints.scss +27 -0
  330. package/src/styles/base/_02-mixins.scss +103 -0
  331. package/src/styles/base/_place-holder.scss +33 -0
  332. package/src/styles/space/_space-inline.scss +79 -0
  333. package/src/styles/space/_space-inset.scss +57 -0
  334. package/src/styles/space/_space-stack.scss +116 -0
  335. package/src/styles.scss +23 -0
  336. package/src/theme/components/accordion.ts +25 -0
  337. package/src/theme/components/breadcrumb.ts +94 -0
  338. package/src/theme/components/button.ts +133 -0
  339. package/src/theme/components/buttonGroup.ts +10 -0
  340. package/src/theme/components/card.ts +237 -0
  341. package/src/theme/components/checkbox.ts +110 -0
  342. package/src/theme/components/checkboxGroup.ts +10 -0
  343. package/src/theme/components/componentWrapper.ts +14 -0
  344. package/src/theme/components/customTable.ts +77 -0
  345. package/src/theme/components/datePicker.ts +17 -0
  346. package/src/theme/components/fieldset.ts +23 -0
  347. package/src/theme/components/global.ts +91 -0
  348. package/src/theme/components/globalMixins.ts +24 -0
  349. package/src/theme/components/heading.ts +79 -0
  350. package/src/theme/components/helperErrorText.ts +14 -0
  351. package/src/theme/components/hero.ts +238 -0
  352. package/src/theme/components/horizontalRule.ts +17 -0
  353. package/src/theme/components/icon.ts +88 -0
  354. package/src/theme/components/image.ts +136 -0
  355. package/src/theme/components/label.ts +15 -0
  356. package/src/theme/components/link.ts +63 -0
  357. package/src/theme/components/list.ts +88 -0
  358. package/src/theme/components/logo.ts +58 -0
  359. package/src/theme/components/notification.ts +132 -0
  360. package/src/theme/components/pagination.ts +17 -0
  361. package/src/theme/components/progressIndicator.ts +67 -0
  362. package/src/theme/components/radio.ts +103 -0
  363. package/src/theme/components/radioGroup.ts +10 -0
  364. package/src/theme/components/searchBar.ts +19 -0
  365. package/src/theme/components/select.ts +72 -0
  366. package/src/theme/components/skeletonLoader.ts +113 -0
  367. package/src/theme/components/skipNavigation.ts +29 -0
  368. package/src/theme/components/slider.ts +95 -0
  369. package/src/theme/components/statusBadge.ts +26 -0
  370. package/src/theme/components/structuredContent.ts +149 -0
  371. package/src/theme/components/tabs.ts +109 -0
  372. package/src/theme/components/template.ts +114 -0
  373. package/src/theme/components/text.ts +38 -0
  374. package/src/theme/components/textInput.ts +65 -0
  375. package/src/theme/components/toggle.ts +109 -0
  376. package/src/theme/components/videoPlayer.ts +47 -0
  377. package/src/theme/foundations/breakpoints.ts +24 -0
  378. package/src/theme/foundations/colors.ts +212 -0
  379. package/src/theme/foundations/global.ts +43 -0
  380. package/src/theme/foundations/radii.ts +7 -0
  381. package/src/theme/foundations/shadows.ts +5 -0
  382. package/src/theme/foundations/spacing.ts +136 -0
  383. package/src/theme/foundations/typography.ts +107 -0
  384. package/src/theme/index.ts +131 -0
  385. package/src/theme/provider.tsx +9 -0
  386. package/src/theme/types.ts +1 -0
  387. package/src/utils/componentCategories.ts +152 -0
  388. package/src/utils/interfaces.ts +5 -0
  389. package/src/utils/utils.ts +84 -0
  390. package/lib/components/Button/Button.d.ts +0 -17
  391. package/lib/components/Button/Button.js +0 -42
  392. package/lib/index.d.ts +0 -1
  393. package/lib/index.js +0 -6
  394. package/lib/stories/0-Welcome.stories.js +0 -19
  395. package/lib/stories/1-Button.stories.d.ts +0 -6
  396. package/lib/stories/1-Button.stories.js +0 -20
@@ -0,0 +1,342 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Template components renders the UI snapshot correctly 1`] = `
4
+ <div
5
+ className="css-1xdhyk6"
6
+ >
7
+ <div
8
+ className="css-0"
9
+ >
10
+ <div
11
+ className="placeholder placeholder--short"
12
+ >
13
+ Above Header
14
+ </div>
15
+ </div>
16
+ <header
17
+ className="css-0"
18
+ >
19
+ <div
20
+ className="placeholder placeholder--short"
21
+ >
22
+ NYPL Header
23
+ </div>
24
+ <div
25
+ className="css-0"
26
+ >
27
+ <div
28
+ className="placeholder placeholder--short"
29
+ >
30
+ Breadcrumbs
31
+ </div>
32
+ <div
33
+ className="placeholder placeholder--short"
34
+ >
35
+ Hero
36
+ </div>
37
+ </div>
38
+ </header>
39
+ <main
40
+ className="css-0"
41
+ id="mainContent"
42
+ >
43
+ <div
44
+ className="css-0"
45
+ >
46
+ <div
47
+ className="placeholder placeholder--undefined"
48
+ >
49
+ Content Top
50
+ </div>
51
+ </div>
52
+ <div
53
+ className="css-0"
54
+ >
55
+ <div
56
+ className="placeholder placeholder--undefined"
57
+ >
58
+ Left Sidebar
59
+ </div>
60
+ </div>
61
+ <div
62
+ className="css-0"
63
+ >
64
+ <div
65
+ className="placeholder placeholder--undefined"
66
+ >
67
+ Main Content
68
+ </div>
69
+ <div
70
+ className="placeholder placeholder--short"
71
+ >
72
+ More Content
73
+ </div>
74
+ </div>
75
+ </main>
76
+ <footer
77
+ className="css-0"
78
+ >
79
+ <div
80
+ className="placeholder placeholder--short"
81
+ >
82
+ Footer
83
+ </div>
84
+ </footer>
85
+ </div>
86
+ `;
87
+
88
+ exports[`Template components renders the UI snapshot correctly 2`] = `
89
+ <div
90
+ className="css-1u8qly9"
91
+ >
92
+ <div
93
+ className="css-0"
94
+ >
95
+ <div
96
+ className="placeholder placeholder--short"
97
+ >
98
+ Above Header
99
+ </div>
100
+ </div>
101
+ <header
102
+ className="css-0"
103
+ >
104
+ <div
105
+ className="placeholder placeholder--short"
106
+ >
107
+ NYPL Header
108
+ </div>
109
+ <div
110
+ className="css-0"
111
+ >
112
+ <div
113
+ className="placeholder placeholder--short"
114
+ >
115
+ Breadcrumbs
116
+ </div>
117
+ <div
118
+ className="placeholder placeholder--short"
119
+ >
120
+ Hero
121
+ </div>
122
+ </div>
123
+ </header>
124
+ <main
125
+ className="css-0"
126
+ id="mainContent"
127
+ >
128
+ <div
129
+ className="css-0"
130
+ >
131
+ <div
132
+ className="placeholder placeholder--undefined"
133
+ >
134
+ Content Top
135
+ </div>
136
+ </div>
137
+ <div
138
+ className="css-0"
139
+ >
140
+ <div
141
+ className="placeholder placeholder--undefined"
142
+ >
143
+ Left Sidebar
144
+ </div>
145
+ </div>
146
+ <div
147
+ className="css-0"
148
+ >
149
+ <div
150
+ className="placeholder placeholder--undefined"
151
+ >
152
+ Main Content
153
+ </div>
154
+ <div
155
+ className="placeholder placeholder--short"
156
+ >
157
+ More Content
158
+ </div>
159
+ </div>
160
+ </main>
161
+ <footer
162
+ className="css-0"
163
+ >
164
+ <div
165
+ className="placeholder placeholder--short"
166
+ >
167
+ Footer
168
+ </div>
169
+ </footer>
170
+ </div>
171
+ `;
172
+
173
+ exports[`Template components renders the UI snapshot correctly 3`] = `
174
+ <div
175
+ className="css-1y4kn3e"
176
+ >
177
+ <div
178
+ className="css-0"
179
+ >
180
+ <div
181
+ className="placeholder placeholder--short"
182
+ >
183
+ Above Header
184
+ </div>
185
+ </div>
186
+ <header
187
+ className="css-0"
188
+ >
189
+ <div
190
+ className="placeholder placeholder--short"
191
+ >
192
+ NYPL Header
193
+ </div>
194
+ <div
195
+ className="css-0"
196
+ >
197
+ <div
198
+ className="placeholder placeholder--short"
199
+ >
200
+ Breadcrumbs
201
+ </div>
202
+ <div
203
+ className="placeholder placeholder--short"
204
+ >
205
+ Hero
206
+ </div>
207
+ </div>
208
+ </header>
209
+ <main
210
+ className="css-0"
211
+ id="mainContent"
212
+ >
213
+ <div
214
+ className="css-0"
215
+ >
216
+ <div
217
+ className="placeholder placeholder--undefined"
218
+ >
219
+ Content Top
220
+ </div>
221
+ </div>
222
+ <div
223
+ className="css-0"
224
+ >
225
+ <div
226
+ className="placeholder placeholder--undefined"
227
+ >
228
+ Left Sidebar
229
+ </div>
230
+ </div>
231
+ <div
232
+ className="css-0"
233
+ >
234
+ <div
235
+ className="placeholder placeholder--undefined"
236
+ >
237
+ Main Content
238
+ </div>
239
+ <div
240
+ className="placeholder placeholder--short"
241
+ >
242
+ More Content
243
+ </div>
244
+ </div>
245
+ </main>
246
+ <footer
247
+ className="css-0"
248
+ >
249
+ <div
250
+ className="placeholder placeholder--short"
251
+ >
252
+ Footer
253
+ </div>
254
+ </footer>
255
+ </div>
256
+ `;
257
+
258
+ exports[`Template components renders the UI snapshot correctly 4`] = `
259
+ <div
260
+ className="css-1u8qly9"
261
+ data-testid="props"
262
+ >
263
+ <div
264
+ className="css-0"
265
+ >
266
+ <div
267
+ className="placeholder placeholder--short"
268
+ >
269
+ Above Header
270
+ </div>
271
+ </div>
272
+ <header
273
+ className="css-0"
274
+ >
275
+ <div
276
+ className="placeholder placeholder--short"
277
+ >
278
+ NYPL Header
279
+ </div>
280
+ <div
281
+ className="css-0"
282
+ >
283
+ <div
284
+ className="placeholder placeholder--short"
285
+ >
286
+ Breadcrumbs
287
+ </div>
288
+ <div
289
+ className="placeholder placeholder--short"
290
+ >
291
+ Hero
292
+ </div>
293
+ </div>
294
+ </header>
295
+ <main
296
+ className="css-0"
297
+ id="mainContent"
298
+ >
299
+ <div
300
+ className="css-0"
301
+ >
302
+ <div
303
+ className="placeholder placeholder--undefined"
304
+ >
305
+ Content Top
306
+ </div>
307
+ </div>
308
+ <div
309
+ className="css-0"
310
+ >
311
+ <div
312
+ className="placeholder placeholder--undefined"
313
+ >
314
+ Left Sidebar
315
+ </div>
316
+ </div>
317
+ <div
318
+ className="css-0"
319
+ >
320
+ <div
321
+ className="placeholder placeholder--undefined"
322
+ >
323
+ Main Content
324
+ </div>
325
+ <div
326
+ className="placeholder placeholder--short"
327
+ >
328
+ More Content
329
+ </div>
330
+ </div>
331
+ </main>
332
+ <footer
333
+ className="css-0"
334
+ >
335
+ <div
336
+ className="placeholder placeholder--short"
337
+ >
338
+ Footer
339
+ </div>
340
+ </footer>
341
+ </div>
342
+ `;
@@ -0,0 +1,103 @@
1
+ import {
2
+ ArgsTable,
3
+ Canvas,
4
+ Description,
5
+ Meta,
6
+ Story,
7
+ } from "@storybook/addon-docs";
8
+ import { withDesign } from "storybook-addon-designs";
9
+
10
+ import Text from "./Text";
11
+ import { getCategory } from "../../utils/componentCategories";
12
+
13
+ <Meta
14
+ title={getCategory("Text")}
15
+ component={Text}
16
+ decorators={[withDesign]}
17
+ parameters={{
18
+ design: {
19
+ type: "figma",
20
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/?node-id=10733%3A56919",
21
+ },
22
+ }}
23
+ argTypes={{
24
+ className: { control: false },
25
+ isBold: { table: { defaultValue: { summary: false } } },
26
+ isItalic: { table: { defaultValue: { summary: false } } },
27
+ noSpace: { table: { defaultValue: { summary: false } } },
28
+ size: {
29
+ table: { defaultValue: { summary: "default" } },
30
+ },
31
+ }}
32
+ />
33
+
34
+ # Text
35
+
36
+ | Component Version | DS Version |
37
+ | ----------------- | ---------- |
38
+ | Added | `0.25.1` |
39
+ | Latest | `0.28.0` |
40
+
41
+ ## Table of Contents
42
+
43
+ - [Overview](#overview)
44
+ - [Component Props](#component-props)
45
+ - [Accessibility](#accessibility)
46
+
47
+ ## Overview
48
+
49
+ <Description of={Text} />
50
+
51
+ The `Text` component renders a basic `<p>` element. As its name indicates, the
52
+ `size` prop controls the size of the text rendered in the component.
53
+
54
+ ## Component Props
55
+
56
+ <Canvas withToolbar>
57
+ <Story
58
+ name="Text"
59
+ args={{
60
+ className: undefined,
61
+ size: "default",
62
+ isBold: false,
63
+ isItalic: false,
64
+ noSpace: false,
65
+ }}
66
+ >
67
+ {(args) => (
68
+ <>
69
+ <Text {...args}>
70
+ Animal Crossing[a] is a social simulation video game series developed
71
+ and published by Nintendo. The series was conceptualized and created
72
+ by Katsuya Eguchi and Hisashi Nogami. In Animal Crossing, the player
73
+ character is a human who lives in a village inhabited by various
74
+ anthropomorphic animals and can do various activities like fishing,
75
+ bug catching, and fossil hunting. The series is notable for its
76
+ open-ended gameplay and use of the video game console's internal clock
77
+ and calendar to simulate real passage of time.
78
+ </Text>
79
+ <Text {...args}>
80
+ Since its initial release in 2001, five Animal Crossing games have
81
+ been released worldwide, one each for the Nintendo 64/iQue Player
82
+ (enhanced and reissued for the GameCube), Nintendo DS, Wii, Nintendo
83
+ 3DS and Nintendo Switch. The series has been both critically and
84
+ commercially successful and has sold over 60 million units worldwide.
85
+ Three spin-off games have also been released: Animal Crossing: Happy
86
+ Home Designer for Nintendo 3DS, Animal Crossing: Amiibo Festival for
87
+ Wii U, and Animal Crossing: Pocket Camp for mobile devices.
88
+ </Text>
89
+ </>
90
+ )}
91
+ </Story>
92
+ </Canvas>
93
+
94
+ <ArgsTable story="Text" />
95
+
96
+ ## Accessibility
97
+
98
+ The `Text` component renders paragraph `p` HTML elements which are inherently
99
+ accessible and will be read by screen readers.
100
+
101
+ Resources:
102
+
103
+ - [Chakra UI Text](https://chakra-ui.com/docs/components/typography/text)
@@ -0,0 +1,63 @@
1
+ import * as React from "react";
2
+ import { render, screen } from "@testing-library/react";
3
+ import { axe } from "jest-axe";
4
+ import renderer from "react-test-renderer";
5
+
6
+ import Text from "./Text";
7
+
8
+ describe("Text Accessibility", () => {
9
+ it("passes axe accessibility test", async () => {
10
+ const { container } = render(<Text>Animal Crossing is all that!</Text>);
11
+ expect(await axe(container)).toHaveNoViolations();
12
+ });
13
+ });
14
+
15
+ describe("Text", () => {
16
+ it("renders a <p> tag and text", () => {
17
+ render(<Text>Animal Crossing is all that!</Text>);
18
+ expect(
19
+ screen.getByText("Animal Crossing is all that!")
20
+ ).toBeInTheDocument();
21
+ });
22
+
23
+ it("throws a warning when no children are passed", () => {
24
+ const warn = jest.spyOn(console, "warn");
25
+ render(<Text></Text>);
26
+ expect(warn).toHaveBeenCalledWith(
27
+ "NYPL Reservoir Text: No children were passed and the `Text` component " +
28
+ "will not render correctly."
29
+ );
30
+ });
31
+
32
+ it("renders the UI snapshot correctly", () => {
33
+ const defaultText = renderer
34
+ .create(<Text>Animal Crossing is all that!</Text>)
35
+ .toJSON();
36
+ const caption = renderer
37
+ .create(<Text size="caption">Animal Crossing is all that!</Text>)
38
+ .toJSON();
39
+ const tag = renderer
40
+ .create(<Text size="tag">Animal Crossing is all that!</Text>)
41
+ .toJSON();
42
+ const mini = renderer
43
+ .create(<Text size="mini">Animal Crossing is all that!</Text>)
44
+ .toJSON();
45
+ const withChakraProps = renderer
46
+ .create(
47
+ <Text p="20px" color="ui.error.primary">
48
+ Animal Crossing is all that!
49
+ </Text>
50
+ )
51
+ .toJSON();
52
+ const withOtherProps = renderer
53
+ .create(<Text data-testid="props">Animal Crossing is all that!</Text>)
54
+ .toJSON();
55
+
56
+ expect(defaultText).toMatchSnapshot();
57
+ expect(caption).toMatchSnapshot();
58
+ expect(tag).toMatchSnapshot();
59
+ expect(mini).toMatchSnapshot();
60
+ expect(withChakraProps).toMatchSnapshot();
61
+ expect(withOtherProps).toMatchSnapshot();
62
+ });
63
+ });
@@ -0,0 +1,50 @@
1
+ import { Text as ChakraText, chakra, useStyleConfig } from "@chakra-ui/react";
2
+ import * as React from "react";
3
+
4
+ export type TextSizes = "default" | "caption" | "tag" | "mini";
5
+
6
+ export interface TextProps {
7
+ /** Additional class name to render in the `Text` component. */
8
+ className?: string;
9
+ /** Optional prop used to show bolded text */
10
+ isBold?: boolean;
11
+ /** Optional prop used to show itlicized text */
12
+ isItalic?: boolean;
13
+ /** Optional prop used to remove default spacing */
14
+ noSpace?: boolean;
15
+ /** Optional prop to control the text styling */
16
+ size?: TextSizes;
17
+ }
18
+
19
+ export const Text = chakra((props: React.PropsWithChildren<TextProps>) => {
20
+ const {
21
+ children,
22
+ className = "",
23
+ isBold,
24
+ isItalic,
25
+ noSpace,
26
+ size = "default",
27
+ ...rest
28
+ } = props;
29
+ const styles = useStyleConfig("Text", {
30
+ variant: size,
31
+ isBold,
32
+ isItalic,
33
+ noSpace,
34
+ });
35
+
36
+ if (!children) {
37
+ console.warn(
38
+ "NYPL Reservoir Text: No children were passed and the `Text` component " +
39
+ "will not render correctly."
40
+ );
41
+ }
42
+
43
+ return (
44
+ <ChakraText className={className} sx={styles} {...rest}>
45
+ {children}
46
+ </ChakraText>
47
+ );
48
+ });
49
+
50
+ export default Text;
@@ -0,0 +1,50 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Text renders the UI snapshot correctly 1`] = `
4
+ <p
5
+ className="chakra-text css-1xdhyk6"
6
+ >
7
+ Animal Crossing is all that!
8
+ </p>
9
+ `;
10
+
11
+ exports[`Text renders the UI snapshot correctly 2`] = `
12
+ <p
13
+ className="chakra-text css-1xdhyk6"
14
+ >
15
+ Animal Crossing is all that!
16
+ </p>
17
+ `;
18
+
19
+ exports[`Text renders the UI snapshot correctly 3`] = `
20
+ <p
21
+ className="chakra-text css-1xdhyk6"
22
+ >
23
+ Animal Crossing is all that!
24
+ </p>
25
+ `;
26
+
27
+ exports[`Text renders the UI snapshot correctly 4`] = `
28
+ <p
29
+ className="chakra-text css-1xdhyk6"
30
+ >
31
+ Animal Crossing is all that!
32
+ </p>
33
+ `;
34
+
35
+ exports[`Text renders the UI snapshot correctly 5`] = `
36
+ <p
37
+ className="chakra-text css-kle7zy"
38
+ >
39
+ Animal Crossing is all that!
40
+ </p>
41
+ `;
42
+
43
+ exports[`Text renders the UI snapshot correctly 6`] = `
44
+ <p
45
+ className="chakra-text css-1xdhyk6"
46
+ data-testid="props"
47
+ >
48
+ Animal Crossing is all that!
49
+ </p>
50
+ `;