@nypl/design-system-react-components 0.25.1 → 0.25.5

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 (307) hide show
  1. package/CHANGELOG.md +118 -1
  2. package/README.md +98 -50
  3. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +4 -0
  4. package/dist/components/Button/Button.d.ts +13 -8
  5. package/dist/components/Button/ButtonTypes.d.ts +2 -1
  6. package/dist/components/Card/Card.d.ts +36 -52
  7. package/dist/components/Card/CardTypes.d.ts +0 -15
  8. package/dist/components/Checkbox/Checkbox.d.ts +17 -13
  9. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +4 -2
  10. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +15 -0
  11. package/dist/components/DatePicker/DatePicker.d.ts +36 -34
  12. package/dist/components/Fieldset/Fieldset.d.ts +25 -0
  13. package/dist/components/Heading/Heading.d.ts +4 -4
  14. package/dist/components/HelperErrorText/HelperErrorText.d.ts +17 -14
  15. package/dist/components/HorizontalRule/HorizontalRule.d.ts +10 -9
  16. package/dist/components/Icons/Icon.d.ts +8 -0
  17. package/dist/components/Icons/IconSvgs.d.ts +11 -0
  18. package/dist/components/Icons/IconTypes.d.ts +11 -0
  19. package/dist/components/Image/Image.d.ts +19 -9
  20. package/dist/components/Image/ImageTypes.d.ts +20 -0
  21. package/dist/components/Link/Link.d.ts +4 -0
  22. package/dist/components/List/List.d.ts +19 -14
  23. package/dist/components/Notification/Notification.d.ts +37 -16
  24. package/dist/components/Pagination/Pagination.d.ts +16 -13
  25. package/dist/components/Pagination/Pagination.stories.d.ts +2 -0
  26. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +29 -0
  27. package/dist/components/ProgressIndicator/ProgressIndicatorTypes.d.ts +8 -0
  28. package/dist/components/Radio/Radio.d.ts +2 -0
  29. package/dist/components/RadioGroup/RadioGroup.d.ts +4 -2
  30. package/dist/components/SearchBar/SearchBar.d.ts +3 -3
  31. package/dist/components/Select/Select.d.ts +2 -0
  32. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +18 -14
  33. package/dist/components/Slider/Slider.d.ts +57 -0
  34. package/dist/components/StyleGuide/ColorCard.d.ts +12 -0
  35. package/dist/components/Tabs/Tabs.d.ts +1 -1
  36. package/dist/components/TextInput/TextInput.d.ts +12 -0
  37. package/dist/components/VideoPlayer/VideoPlayer.d.ts +6 -8
  38. package/dist/components/VideoPlayer/VideoPlayerTypes.d.ts +2 -2
  39. package/dist/design-system-react-components.cjs.development.js +6131 -3715
  40. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  41. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  42. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  43. package/dist/design-system-react-components.esm.js +6124 -3699
  44. package/dist/design-system-react-components.esm.js.map +1 -1
  45. package/dist/hooks/tests/useCarouselStyles.test.d.ts +1 -0
  46. package/dist/hooks/useCarouselStyles.d.ts +16 -0
  47. package/dist/hooks/useNYPLTheme.d.ts +54 -0
  48. package/dist/hooks/useWindowSize.d.ts +10 -0
  49. package/dist/index.d.ts +13 -8
  50. package/dist/resources.scss +180 -170
  51. package/dist/styles.css +1 -1
  52. package/dist/theme/components/button.d.ts +22 -8
  53. package/dist/theme/components/card.d.ts +168 -0
  54. package/dist/theme/components/checkbox.d.ts +5 -1
  55. package/dist/theme/components/checkboxGroup.d.ts +12 -0
  56. package/dist/theme/components/componentWrapper.d.ts +11 -0
  57. package/dist/theme/components/datePicker.d.ts +16 -0
  58. package/dist/theme/components/fieldset.d.ts +27 -0
  59. package/dist/theme/components/global.d.ts +23 -13
  60. package/dist/theme/components/globalMixins.d.ts +9 -1
  61. package/dist/theme/components/heading.d.ts +5 -0
  62. package/dist/theme/components/helperErrorText.d.ts +10 -0
  63. package/dist/theme/components/hero.d.ts +1 -0
  64. package/dist/theme/components/horizontalRule.d.ts +14 -0
  65. package/dist/theme/components/image.d.ts +31 -0
  66. package/dist/theme/components/label.d.ts +5 -3
  67. package/dist/theme/components/link.d.ts +4 -0
  68. package/dist/theme/components/list.d.ts +89 -0
  69. package/dist/theme/components/notification.d.ts +75 -0
  70. package/dist/theme/components/pagination.d.ts +19 -0
  71. package/dist/theme/components/progressIndicator.d.ts +50 -0
  72. package/dist/theme/components/radioGroup.d.ts +12 -0
  73. package/dist/theme/components/select.d.ts +11 -2
  74. package/dist/theme/components/skeletonLoader.d.ts +98 -0
  75. package/dist/theme/components/slider.d.ts +51 -0
  76. package/dist/theme/components/tabs.d.ts +54 -3
  77. package/dist/theme/components/textInput.d.ts +8 -1
  78. package/dist/theme/components/videoPlayer.d.ts +40 -0
  79. package/dist/theme/foundations/breakpoints.d.ts +8 -8
  80. package/dist/theme/foundations/global.d.ts +6 -1
  81. package/dist/theme/foundations/radii.d.ts +5 -0
  82. package/dist/theme/foundations/spacing.d.ts +16 -16
  83. package/package.json +72 -83
  84. package/src/__tests__/setup.ts +2 -2
  85. package/src/components/Accordion/Accordion.stories.mdx +39 -44
  86. package/src/components/Autosuggest/Autosuggest.stories.mdx +3 -3
  87. package/src/components/Autosuggest/Autosuggest.stories.tsx +2 -1
  88. package/src/components/Autosuggest/_Autosuggest.scss +5 -5
  89. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +14 -10
  90. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +23 -0
  91. package/src/components/Breadcrumbs/Breadcrumbs.tsx +5 -1
  92. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +199 -1
  93. package/src/components/Button/Button.stories.mdx +15 -10
  94. package/src/components/Button/Button.test.tsx +21 -7
  95. package/src/components/Button/Button.tsx +22 -34
  96. package/src/components/Button/ButtonTypes.tsx +1 -0
  97. package/src/components/Button/__snapshots__/Button.test.tsx.snap +41 -10
  98. package/src/components/Card/Card.stories.mdx +296 -259
  99. package/src/components/Card/Card.test.tsx +156 -84
  100. package/src/components/Card/Card.tsx +195 -145
  101. package/src/components/Card/CardTypes.tsx +0 -17
  102. package/src/components/Card/__snapshots__/Card.test.tsx.snap +410 -0
  103. package/src/components/CardEdition/CardEdition.stories.tsx +15 -47
  104. package/src/components/CardEdition/_CardEdition.scss +22 -23
  105. package/src/components/Chakra/Box.stories.mdx +15 -16
  106. package/src/components/Chakra/Center.stories.mdx +31 -16
  107. package/src/components/Chakra/Grid.stories.mdx +28 -15
  108. package/src/components/Chakra/Stack.stories.mdx +35 -18
  109. package/src/components/Checkbox/Checkbox.stories.mdx +33 -11
  110. package/src/components/Checkbox/Checkbox.test.tsx +47 -2
  111. package/src/components/Checkbox/Checkbox.tsx +39 -33
  112. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +90 -2
  113. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +82 -2
  114. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +29 -2
  115. package/src/components/CheckboxGroup/CheckboxGroup.tsx +22 -18
  116. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +47 -81
  117. package/src/components/ComponentWrapper/ComponentWrapper.tsx +63 -0
  118. package/src/components/DatePicker/DatePicker.stories.mdx +163 -62
  119. package/src/components/DatePicker/DatePicker.test.tsx +264 -64
  120. package/src/components/DatePicker/DatePicker.tsx +159 -128
  121. package/src/components/DatePicker/_DatePicker.scss +33 -67
  122. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +818 -0
  123. package/src/components/Fieldset/Fieldset.stories.mdx +55 -0
  124. package/src/components/Fieldset/Fieldset.test.tsx +125 -0
  125. package/src/components/Fieldset/Fieldset.tsx +52 -0
  126. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +68 -0
  127. package/src/components/Form/Form.stories.mdx +24 -6
  128. package/src/components/Form/Form.test.tsx +1 -1
  129. package/src/components/Form/Form.tsx +1 -0
  130. package/src/components/Grid/SimpleGrid.stories.mdx +32 -39
  131. package/src/components/Grid/SimpleGrid.test.tsx +4 -4
  132. package/src/components/Heading/Heading.stories.mdx +3 -4
  133. package/src/components/Heading/Heading.tsx +5 -5
  134. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +124 -0
  135. package/src/components/HelperErrorText/HelperErrorText.test.tsx +39 -44
  136. package/src/components/HelperErrorText/HelperErrorText.tsx +37 -39
  137. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +25 -0
  138. package/src/components/Hero/Hero.stories.mdx +12 -2
  139. package/src/components/Hero/Hero.tsx +1 -1
  140. package/src/components/Hero/HeroTypes.tsx +1 -0
  141. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +7 -7
  142. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +8 -6
  143. package/src/components/HorizontalRule/HorizontalRule.test.tsx +33 -28
  144. package/src/components/HorizontalRule/HorizontalRule.tsx +27 -29
  145. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +27 -9
  146. package/src/components/Icons/Icon.stories.mdx +12 -4
  147. package/src/components/Icons/Icon.test.tsx +18 -0
  148. package/src/components/Icons/Icon.tsx +16 -1
  149. package/src/components/Icons/IconSvgs.tsx +22 -0
  150. package/src/components/Icons/IconTypes.tsx +11 -0
  151. package/src/components/Image/Image.stories.mdx +220 -0
  152. package/src/components/Image/Image.test.tsx +131 -29
  153. package/src/components/Image/Image.tsx +84 -56
  154. package/src/components/Image/ImageTypes.ts +22 -0
  155. package/src/components/Image/__snapshots__/Image.test.tsx.snap +190 -0
  156. package/src/components/Input/Input.stories.tsx +23 -67
  157. package/src/components/Input/Input.test.tsx +4 -4
  158. package/src/components/Input/_Input.scss +23 -14
  159. package/src/components/Link/Link.tsx +4 -1
  160. package/src/components/List/List.stories.mdx +124 -49
  161. package/src/components/List/List.test.tsx +142 -63
  162. package/src/components/List/List.tsx +89 -93
  163. package/src/components/List/__snapshots__/List.test.tsx.snap +109 -0
  164. package/src/components/Modal/Modal.stories.mdx +3 -3
  165. package/src/components/Modal/_Modal.scss +2 -2
  166. package/src/components/Notification/Notification.stories.mdx +109 -112
  167. package/src/components/Notification/Notification.test.tsx +99 -110
  168. package/src/components/Notification/Notification.tsx +156 -159
  169. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +159 -8
  170. package/src/components/Pagination/Pagination.stories.mdx +26 -27
  171. package/src/components/Pagination/Pagination.stories.tsx +11 -16
  172. package/src/components/Pagination/Pagination.test.tsx +276 -146
  173. package/src/components/Pagination/Pagination.tsx +174 -154
  174. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +285 -0
  175. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +292 -0
  176. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +225 -0
  177. package/src/components/ProgressIndicator/ProgressIndicator.tsx +126 -0
  178. package/src/components/ProgressIndicator/ProgressIndicatorTypes.ts +8 -0
  179. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +357 -0
  180. package/src/components/Radio/Radio.test.tsx +20 -4
  181. package/src/components/Radio/Radio.tsx +6 -3
  182. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +3 -0
  183. package/src/components/RadioGroup/RadioGroup.stories.mdx +3 -4
  184. package/src/components/RadioGroup/RadioGroup.test.tsx +24 -1
  185. package/src/components/RadioGroup/RadioGroup.tsx +19 -19
  186. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +42 -72
  187. package/src/components/SearchBar/SearchBar.Test.tsx +20 -1
  188. package/src/components/SearchBar/SearchBar.stories.mdx +113 -8
  189. package/src/components/SearchBar/SearchBar.tsx +20 -10
  190. package/src/components/Select/Select.test.tsx +12 -0
  191. package/src/components/Select/Select.tsx +5 -2
  192. package/src/components/Select/SelectTypes.tsx +1 -0
  193. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +28 -59
  194. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +97 -177
  195. package/src/components/SkeletonLoader/SkeletonLoader.tsx +74 -71
  196. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +739 -0
  197. package/src/components/Slider/Slider.stories.mdx +529 -0
  198. package/src/components/Slider/Slider.test.tsx +653 -0
  199. package/src/components/Slider/Slider.tsx +303 -0
  200. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +1946 -0
  201. package/src/components/StyleGuide/Bidirectionality.stories.mdx +1 -1
  202. package/src/components/StyleGuide/Breakpoints.stories.mdx +34 -10
  203. package/src/components/StyleGuide/Buttons.stories.mdx +89 -73
  204. package/src/components/StyleGuide/ColorCard.tsx +46 -0
  205. package/src/components/StyleGuide/Colors.stories.mdx +171 -311
  206. package/src/components/StyleGuide/DesignTokens.stories.mdx +170 -0
  207. package/src/components/StyleGuide/Forms.stories.mdx +9 -7
  208. package/src/components/StyleGuide/Iconography.stories.mdx +85 -91
  209. package/src/components/StyleGuide/Spacing.stories.mdx +31 -23
  210. package/src/components/StyleGuide/Typography.stories.mdx +202 -189
  211. package/src/components/StyleGuide/UIDocCard.tsx +1 -1
  212. package/src/components/Tabs/Tabs.stories.mdx +73 -11
  213. package/src/components/Tabs/Tabs.tsx +87 -64
  214. package/src/components/Template/Template.stories.mdx +25 -27
  215. package/src/components/TextInput/TextInput.stories.mdx +1 -1
  216. package/src/components/TextInput/TextInput.test.tsx +22 -2
  217. package/src/components/TextInput/TextInput.tsx +28 -8
  218. package/src/components/TextInput/TextInputTypes.tsx +2 -0
  219. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +17 -4
  220. package/src/components/VideoPlayer/VideoPlayer.test.tsx +54 -53
  221. package/src/components/VideoPlayer/VideoPlayer.tsx +50 -51
  222. package/src/components/VideoPlayer/VideoPlayerTypes.tsx +2 -2
  223. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +91 -0
  224. package/src/docs/Chakra.stories.mdx +244 -63
  225. package/src/docs/Intro.stories.mdx +5 -2
  226. package/src/hooks/tests/useCarouselStyles.test.ts +140 -0
  227. package/src/hooks/tests/useNYPLTheme.test.tsx +36 -0
  228. package/src/hooks/useCarouselStyles.ts +34 -0
  229. package/src/hooks/useNYPLTheme.ts +67 -0
  230. package/src/hooks/useWindowSize.ts +40 -0
  231. package/src/index.ts +22 -19
  232. package/src/resources.scss +5 -5
  233. package/src/styles/base/{_02-breakpoints.scss → _01-breakpoints.scss} +9 -10
  234. package/src/styles/base/{_03-mixins.scss → _02-mixins.scss} +16 -5
  235. package/src/styles/base/{_04-base.scss → _03-base.scss} +7 -2
  236. package/src/styles/base/{_05-focus.scss → _04-focus.scss} +0 -15
  237. package/src/styles/base/_place-holder.scss +14 -3
  238. package/src/styles/{03-space → space}/_space-inline.scss +14 -14
  239. package/src/styles/{03-space → space}/_space-inset.scss +10 -10
  240. package/src/styles/space/_space-stack.scss +116 -0
  241. package/src/styles.scss +13 -60
  242. package/src/theme/components/button.ts +21 -15
  243. package/src/theme/components/card.ts +174 -0
  244. package/src/theme/components/checkbox.ts +8 -3
  245. package/src/theme/components/checkboxGroup.ts +8 -0
  246. package/src/theme/components/componentWrapper.ts +10 -0
  247. package/src/theme/components/datePicker.ts +17 -0
  248. package/src/theme/components/fieldset.ts +18 -0
  249. package/src/theme/components/global.ts +26 -15
  250. package/src/theme/components/globalMixins.ts +9 -1
  251. package/src/theme/components/heading.ts +10 -5
  252. package/src/theme/components/helperErrorText.ts +9 -0
  253. package/src/theme/components/hero.ts +4 -3
  254. package/src/theme/components/horizontalRule.ts +13 -0
  255. package/src/theme/components/icon.ts +9 -9
  256. package/src/theme/components/image.ts +116 -0
  257. package/src/theme/components/label.ts +3 -10
  258. package/src/theme/components/link.ts +5 -1
  259. package/src/theme/components/list.ts +73 -0
  260. package/src/theme/components/notification.ts +93 -0
  261. package/src/theme/components/pagination.ts +20 -0
  262. package/src/theme/components/progressIndicator.ts +62 -0
  263. package/src/theme/components/radio.ts +2 -2
  264. package/src/theme/components/radioGroup.ts +8 -0
  265. package/src/theme/components/select.ts +6 -3
  266. package/src/theme/components/skeletonLoader.ts +107 -0
  267. package/src/theme/components/slider.ts +79 -0
  268. package/src/theme/components/statusBadge.ts +1 -2
  269. package/src/theme/components/tabs.ts +49 -19
  270. package/src/theme/components/template.ts +8 -8
  271. package/src/theme/components/textInput.ts +5 -4
  272. package/src/theme/components/videoPlayer.ts +49 -0
  273. package/src/theme/foundations/breakpoints.ts +8 -8
  274. package/src/theme/foundations/global.ts +6 -1
  275. package/src/theme/foundations/radii.ts +6 -0
  276. package/src/theme/foundations/spacing.ts +24 -24
  277. package/src/theme/index.ts +41 -10
  278. package/src/utils/componentCategories.ts +4 -3
  279. package/dist/components/HelperErrorText/HelperErrorText.stories.d.ts +0 -16
  280. package/dist/components/Image/Image.stories.d.ts +0 -18
  281. package/dist/components/List/List.stories.d.ts +0 -7
  282. package/dist/theme/components/customCheckboxGroup.d.ts +0 -18
  283. package/dist/theme/components/customRadioGroup.d.ts +0 -18
  284. package/src/components/Button/_Button.scss +0 -32
  285. package/src/components/Card/_Card.scss +0 -308
  286. package/src/components/HelperErrorText/HelperErrorText.stories.tsx +0 -48
  287. package/src/components/HelperErrorText/_HelperErrorText.scss +0 -9
  288. package/src/components/HorizontalRule/_HorizontalRule.scss +0 -15
  289. package/src/components/Image/Image.stories.tsx +0 -54
  290. package/src/components/Image/_Image.scss +0 -38
  291. package/src/components/List/List.stories.tsx +0 -139
  292. package/src/components/List/_List.scss +0 -76
  293. package/src/components/Notification/_Notification.scss +0 -110
  294. package/src/components/Pagination/_Pagination.scss +0 -40
  295. package/src/components/SkeletonLoader/_SkeletonLoader.scss +0 -142
  296. package/src/components/VideoPlayer/_VideoPlayer.scss +0 -38
  297. package/src/styles/01-colors/_colors-brand.scss +0 -62
  298. package/src/styles/01-colors/_colors-utility.scss +0 -67
  299. package/src/styles/02-typography/_type-scale.css +0 -11
  300. package/src/styles/02-typography/_type-weight.css +0 -7
  301. package/src/styles/02-typography/_typefaces.css +0 -4
  302. package/src/styles/03-space/_space-stack.scss +0 -116
  303. package/src/styles/03-space/_space.css +0 -30
  304. package/src/styles/base/_card-grid.scss +0 -78
  305. package/src/styles/base/_typography.scss +0 -11
  306. package/src/theme/components/customCheckboxGroup.ts +0 -12
  307. package/src/theme/components/customRadioGroup.ts +0 -12
@@ -7,14 +7,14 @@
7
7
  * That'll give you 10. Then use it in your component.
8
8
  *
9
9
  * The DS uses eight CSS variables/values found in "src/styles/03-space/_space.css":
10
- * --space-xxs = 4px or 0.25rem
11
- * --space-xs = 8px or 0.5rem
12
- * --space-s = 16px or 1rem
13
- * --space-m = 24px or 1.5rem
14
- * --space-l = 32px or 2rem
15
- * --space-xl = 48px or 3rem
16
- * --space-xxl = 64px or 4rem
17
- * --space-xxxl = 96px or 6rem
10
+ * --nypl-space-xxs = 4px or 0.25rem
11
+ * --nypl-space-xs = 8px or 0.5rem
12
+ * --nypl-space-s = 16px or 1rem
13
+ * --nypl-space-m = 24px or 1.5rem
14
+ * --nypl-space-l = 32px or 2rem
15
+ * --nypl-space-xl = 48px or 3rem
16
+ * --nypl-space-xxl = 64px or 4rem
17
+ * --nypl-space-xxxl = 96px or 6rem
18
18
  *
19
19
  * @note Even though all the following values are available through Chakra,
20
20
  * we recommend to only use the spacing values that map to the DS values
@@ -22,14 +22,14 @@
22
22
  *
23
23
  * Chakra Number Value | Chakra Name value | DS Variable
24
24
  * ------------------- | ----------------- | -----------------
25
- * 1 | xxs | --space-xxs
26
- * 2 | xs | --space-xs
27
- * 4 | s | --space-s
28
- * 6 | m | --space-m
29
- * 8 | l | --space-l
30
- * 12 | xl | --space-xl
31
- * 16 | xxl | --space-xxl
32
- * 24 | xxxl | --space-xxxl
25
+ * 1 | xxs | --nypl-space-xxs
26
+ * 2 | xs | --nypl-space-xs
27
+ * 4 | s | --nypl-space-s
28
+ * 6 | m | --nypl-space-m
29
+ * 8 | l | --nypl-space-l
30
+ * 12 | xl | --nypl-space-xl
31
+ * 16 | xxl | --nypl-space-xxl
32
+ * 24 | xxxl | --nypl-space-xxxl
33
33
  */
34
34
  export declare const spacing: {
35
35
  px: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nypl/design-system-react-components",
3
- "version": "0.25.1",
3
+ "version": "0.25.5",
4
4
  "description": "Design System React Components",
5
5
  "repository": {
6
6
  "type": "git",
@@ -14,7 +14,7 @@
14
14
  "src"
15
15
  ],
16
16
  "engines": {
17
- "node": ">10"
17
+ "node": ">10 <=12.22"
18
18
  },
19
19
  "author": "NYPL",
20
20
  "license": "Apache-2.0",
@@ -34,23 +34,19 @@
34
34
  "generate-sass-resources": "gulp",
35
35
  "storybook": "start-storybook -p 6006",
36
36
  "build-storybook": "npm run prebuild:storybook && build-storybook -c .storybook -o ./storybook-static",
37
- "prebuild:storybook": "npm run test:generate-output",
38
- "stylelint": "stylelint \"**/*.scss\""
37
+ "prebuild:storybook": "npm run test:generate-output"
39
38
  },
40
39
  "dependencies": {
41
- "@chakra-ui/react": "1.6.8",
42
- "@chakra-ui/system": "1.7.3",
43
- "@emotion/react": "^11.4.1",
44
- "@emotion/styled": "^11.3.0",
45
- "@mdx-js/react": "^1.6.22",
46
- "cpy-cli": "^3.1.1",
47
- "framer-motion": "^4.1.17",
48
- "he": "^1.2.0",
40
+ "@chakra-ui/react": "1.7.1",
41
+ "@chakra-ui/system": "1.8.1",
42
+ "@emotion/react": "11.4.1",
43
+ "@emotion/styled": "11.3.0",
44
+ "framer-motion": "4.1.17",
45
+ "he": "1.2.0",
49
46
  "react-datepicker": "4.1.1",
50
- "react-uid": "^2.3.0",
51
- "system-font-css": "^2.0.2",
52
- "typescript": "^4.3.5",
53
- "uuid": "^8.3.2"
47
+ "system-font-css": "2.0.2",
48
+ "typescript": "4.3.5",
49
+ "uuid": "8.3.2"
54
50
  },
55
51
  "peerDependencies": {
56
52
  "react": ">=16.13.0",
@@ -78,77 +74,70 @@
78
74
  }
79
75
  ],
80
76
  "devDependencies": {
81
- "@babel/core": "^7.14.6",
82
- "@size-limit/preset-small-lib": "^5.0.1",
83
- "@storybook/addon-a11y": "^6.2.9",
84
- "@storybook/addon-actions": "^6.2.9",
85
- "@storybook/addon-docs": "^6.2.9",
86
- "@storybook/addon-essentials": "^6.3.2",
87
- "@storybook/addon-info": "^5.3.21",
88
- "@storybook/addon-jest": "^6.3.6",
89
- "@storybook/addon-knobs": "^6.2.9",
90
- "@storybook/addon-links": "^6.2.9",
77
+ "@babel/core": "7.14.6",
78
+ "@mdx-js/react": "1.6.22",
79
+ "@size-limit/preset-small-lib": "5.0.1",
80
+ "@storybook/addon-a11y": "6.4.8",
81
+ "@storybook/addon-actions": "6.4.8",
82
+ "@storybook/addon-docs": "6.4.8",
83
+ "@storybook/addon-essentials": "6.4.8",
84
+ "@storybook/addon-jest": "6.4.8",
85
+ "@storybook/addon-links": "6.4.8",
91
86
  "@storybook/addon-queryparams": "6.2.9",
92
- "@storybook/addons": "^6.3.2",
93
- "@storybook/react": "^6.3.2",
94
- "@svgr/rollup": "^5.5.0",
95
- "@svgr/webpack": "^5.5.0",
96
- "@testing-library/jest-dom": "^5.14.1",
97
- "@testing-library/react": "^12.0.0",
98
- "@testing-library/user-event": "^13.2.1",
87
+ "@storybook/addons": "6.4.8",
88
+ "@storybook/react": "6.4.8",
89
+ "@svgr/rollup": "5.5.0",
90
+ "@svgr/webpack": "5.5.0",
91
+ "@testing-library/jest-dom": "5.14.1",
92
+ "@testing-library/react": "12.0.0",
93
+ "@testing-library/react-hooks": "7.0.2",
94
+ "@testing-library/user-event": "13.2.1",
99
95
  "@types/jest": "26.0.20",
100
- "@types/jest-axe": "3.5.1",
101
- "@types/jsdom": "^12.2.4",
102
- "@types/node": "^12.7.12",
103
- "@types/react": "^16.9.5",
104
- "@types/testing-library__jest-dom": "^5.14.1",
105
- "@typescript-eslint/eslint-plugin": "^4.12.0",
106
- "@typescript-eslint/parser": "^4.12.0",
107
- "autoprefixer": "^9.8.6",
108
- "babel-loader": "^8.2.2",
109
- "breakpoint-sass": "^2.7.1",
110
- "css-loader": "^5.2.7",
111
- "cssnano": "^5.0.7",
112
- "eslint": "^7.31.0",
113
- "eslint-config-react-app": "^6.0.0",
114
- "eslint-plugin-flowtype": "^5.8.2",
115
- "eslint-plugin-react-hooks": "^4.2.0",
116
- "gulp": "^4.0.2",
117
- "gulp-scss-combine": "^1.0.0",
118
- "husky": "^4.2.5",
119
- "import-glob-loader": "^1.1.0",
120
- "jest": "^27.0.6",
121
- "jest-axe": "4.1.0",
122
- "jsdom": "^15.2.1",
123
- "node-sass": "^4.14.1",
124
- "node-sass-glob-importer": "^5.3.2",
125
- "normalize.css": "^8.0.1",
96
+ "@types/jest-axe": "3.5.3",
97
+ "@types/jsdom": "12.2.4",
98
+ "@types/node": "12.7.12",
99
+ "@types/react": "16.14.21",
100
+ "@types/testing-library__jest-dom": "5.14.1",
101
+ "@typescript-eslint/eslint-plugin": "4.33.0",
102
+ "@typescript-eslint/parser": "4.33.0",
103
+ "autoprefixer": "9.8.6",
104
+ "babel-loader": "8.2.2",
105
+ "breakpoint-sass": "2.7.1",
106
+ "css-loader": "5.2.7",
107
+ "cssnano": "5.0.7",
108
+ "eslint": "7.31.0",
109
+ "eslint-config-react-app": "6.0.0",
110
+ "eslint-plugin-flowtype": "5.8.2",
111
+ "eslint-plugin-react-hooks": "4.2.0",
112
+ "gulp": "4.0.2",
113
+ "gulp-scss-combine": "1.0.0",
114
+ "husky": "4.2.5",
115
+ "import-glob-loader": "1.1.0",
116
+ "jest": "27.3.1",
117
+ "jest-axe": "5.0.1",
118
+ "jsdom": "15.2.1",
119
+ "node-sass": "4.14.1",
120
+ "node-sass-glob-importer": "5.3.2",
121
+ "normalize.css": "8.0.1",
126
122
  "postcss": "8.3.6",
127
- "prettier": "2.1.1",
128
- "pretty-quick": "^3.1.1",
123
+ "prettier": "2.4.1",
124
+ "pretty-quick": "3.1.1",
129
125
  "react": "16.14.0",
130
- "react-autosuggest": "^10.0.2",
131
- "react-docgen-typescript-loader": "^3.1.0",
126
+ "react-autosuggest": "10.0.2",
127
+ "react-docgen-typescript-loader": "3.1.0",
132
128
  "react-dom": "16.14.0",
133
- "react-is": "^16.13.1",
134
- "react-router-dom": "^5.2.0",
135
- "react-test-renderer": "^16.14.0",
136
- "rollup-plugin-postcss": "^4.0.0",
137
- "rollup-plugin-svg": "^2.0.0",
138
- "sass": "^1.35.1",
139
- "sass-loader": "^8.0.2",
140
- "semantic-release-slack-bot": "^2.1.0",
141
- "size-limit": "^5.0.1",
142
- "storybook-addon-designs": "^5.4.2",
143
- "style-loader": "^2.0.0",
144
- "stylelint": "^13.13.1",
145
- "stylelint-config-recommended": "^3.0.0",
146
- "stylelint-order": "^4.1.0",
147
- "stylelint-prettier": "^1.1.2",
148
- "stylelint-scss": "^3.18.0",
149
- "ts-jest": "^27.0.4",
150
- "ts-loader": "^6.2.0",
151
- "tsdx": "^0.14.1",
152
- "tslib": "^2.3.0"
129
+ "react-router-dom": "5.2.0",
130
+ "react-test-renderer": "16.14.0",
131
+ "rollup-plugin-postcss": "4.0.0",
132
+ "rollup-plugin-svg": "2.0.0",
133
+ "sass": "1.35.1",
134
+ "sass-loader": "10.0.0",
135
+ "semantic-release-slack-bot": "2.1.0",
136
+ "size-limit": "5.0.1",
137
+ "storybook-addon-designs": "6.2.0",
138
+ "style-loader": "2.0.0",
139
+ "ts-jest": "27.0.4",
140
+ "tsdx": "0.14.1",
141
+ "tslib": "2.3.0"
153
142
  }
154
143
  }
@@ -12,8 +12,8 @@ const jsdom = new JSDOM("<!doctype html><html><body></body></html>", {
12
12
  const { window } = jsdom;
13
13
  const exposedProperties = ["window", "navigator", "document"];
14
14
 
15
- global.window = window;
16
- global.document = window.document;
15
+ (global as any).window = window;
16
+ (global as any).document = window.document;
17
17
  Object.keys(document.defaultView).forEach((property) => {
18
18
  if (typeof global[property] === "undefined") {
19
19
  exposedProperties.push(property);
@@ -7,10 +7,9 @@ import {
7
7
  } from "@storybook/addon-docs/blocks";
8
8
  import Accordion from "./Accordion";
9
9
  import { withDesign } from "storybook-addon-designs";
10
- import { listRenderer as ListStory } from "../List/List.stories.tsx";
11
- import { ListTypes } from "../List/ListTypes";
12
10
  import Card, { CardHeading, CardContent } from "../Card/Card";
13
- import { CardImageRatios, CardLayouts } from "../Card/CardTypes";
11
+ import { CardLayouts } from "../Card/CardTypes";
12
+ import { ImageRatios } from "../Image/ImageTypes";
14
13
  import { HeadingLevels } from "../Heading/HeadingTypes";
15
14
  import { Source } from "@storybook/addon-docs/blocks";
16
15
  import ReactDOMServer from "react-dom/server";
@@ -61,36 +60,32 @@ necessary icon, Chakra components, and styles.
61
60
  name="Basic"
62
61
  args={{
63
62
  isDefaultOpen: false,
63
+ contentData: [
64
+ {
65
+ label: "Tom Nook",
66
+ panel: (
67
+ <Card
68
+ layout={CardLayouts.Row}
69
+ center
70
+ imageSrc="https://play.nintendo.com/images/AC_Tom_FRYtwIN.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
71
+ imageAlt="Alt text"
72
+ imageAspectRatio={ImageRatios.TwoByOne}
73
+ >
74
+ <CardHeading level={HeadingLevels.Four} id="heading1">
75
+ Tom Nook
76
+ </CardHeading>
77
+ <CardContent>
78
+ Tom Nook, <b>known in Japan as Tanukichi</b>, is a fictional
79
+ character in the Animal Crossing series who operates the village
80
+ store.
81
+ </CardContent>
82
+ </Card>
83
+ ),
84
+ },
85
+ ],
64
86
  }}
65
87
  >
66
- {(args) => (
67
- <Accordion
68
- {...args}
69
- contentData={[
70
- {
71
- label: "Tom Nook",
72
- panel: (
73
- <Card
74
- layout={CardLayouts.Row}
75
- center
76
- imageSrc="https://play.nintendo.com/images/AC_Tom_FRYtwIN.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
77
- imageAlt="Alt text"
78
- imageAspectRatio={CardImageRatios.TwoByOne}
79
- >
80
- <CardHeading level={HeadingLevels.Four} id="heading1">
81
- Tom Nook
82
- </CardHeading>
83
- <CardContent>
84
- Tom Nook, <b>known in Japan as Tanukichi</b>, is a fictional
85
- character in the Animal Crossing series who operates the
86
- village store.
87
- </CardContent>
88
- </Card>
89
- ),
90
- },
91
- ]}
92
- />
93
- )}
88
+ {(args) => <Accordion {...args} />}
94
89
  </Story>
95
90
  </Canvas>
96
91
 
@@ -104,7 +99,7 @@ const contentData = [
104
99
  center
105
100
  imageSrc="https://play.nintendo.com/images/AC_Tom_FRYtwIN.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
106
101
  imageAlt="Alt text"
107
- imageAspectRatio={CardImageRatios.TwoByOne}
102
+ imageAspectRatio={ImageRatios.TwoByOne}
108
103
  >
109
104
  <CardHeading level={HeadingLevels.Four} id="heading1">
110
105
  Tom Nook
@@ -137,9 +132,9 @@ export const faqContent = [
137
132
  center
138
133
  imageSrc="https://play.nintendo.com/images/AC_Tom_FRYtwIN.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
139
134
  imageAlt="Alt text"
140
- imageAspectRatio={CardImageRatios.TwoByOne}
135
+ imageAspectRatio={ImageRatios.TwoByOne}
141
136
  >
142
- <CardHeading level={HeadingLevels.Four} id="heading1">
137
+ <CardHeading level={HeadingLevels.Four} id="heading1-tom">
143
138
  Tom Nook
144
139
  </CardHeading>
145
140
  <CardContent>
@@ -157,9 +152,9 @@ export const faqContent = [
157
152
  center
158
153
  imageSrc="https://play.nintendo.com/images/AC_Isabelle_7XU6aGu.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
159
154
  imageAlt="Alt text"
160
- imageAspectRatio={CardImageRatios.TwoByOne}
155
+ imageAspectRatio={ImageRatios.TwoByOne}
161
156
  >
162
- <CardHeading level={HeadingLevels.Four} id="heading1">
157
+ <CardHeading level={HeadingLevels.Four} id="heading1-isabelle">
163
158
  Isabelle
164
159
  </CardHeading>
165
160
  <CardContent>
@@ -179,9 +174,9 @@ export const faqContent = [
179
174
  center
180
175
  imageSrc="https://play.nintendo.com/images/AC_KK_jh4yj5t.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
181
176
  imageAlt="Alt text"
182
- imageAspectRatio={CardImageRatios.TwoByOne}
177
+ imageAspectRatio={ImageRatios.TwoByOne}
183
178
  >
184
- <CardHeading level={HeadingLevels.Four} id="heading1">
179
+ <CardHeading level={HeadingLevels.Four} id="heading1-kkslider">
185
180
  K.K. Slider
186
181
  </CardHeading>
187
182
  <CardContent>
@@ -216,9 +211,9 @@ export const faqContent = [
216
211
  center
217
212
  imageSrc="https://play.nintendo.com/images/AC_Tom_FRYtwIN.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
218
213
  imageAlt="Alt text"
219
- imageAspectRatio={CardImageRatios.TwoByOne}
214
+ imageAspectRatio={ImageRatios.TwoByOne}
220
215
  >
221
- <CardHeading level={HeadingLevels.Four} id="heading1">
216
+ <CardHeading level={HeadingLevels.Four} id="heading1-tom">
222
217
  Tom Nook
223
218
  </CardHeading>
224
219
  <CardContent>
@@ -236,9 +231,9 @@ export const faqContent = [
236
231
  center
237
232
  imageSrc="https://play.nintendo.com/images/AC_Isabelle_7XU6aGu.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
238
233
  imageAlt="Alt text"
239
- imageAspectRatio={CardImageRatios.TwoByOne}
234
+ imageAspectRatio={ImageRatios.TwoByOne}
240
235
  >
241
- <CardHeading level={HeadingLevels.Four} id="heading1">
236
+ <CardHeading level={HeadingLevels.Four} id="heading1-isabelle">
242
237
  Isabelle
243
238
  </CardHeading>
244
239
  <CardContent>
@@ -258,9 +253,9 @@ export const faqContent = [
258
253
  center
259
254
  imageSrc="https://play.nintendo.com/images/AC_KK_jh4yj5t.17345b1513ac044897cfc243542899dce541e8dc.9afde10b.png"
260
255
  imageAlt="Alt text"
261
- imageAspectRatio={CardImageRatios.TwoByOne}
256
+ imageAspectRatio={ImageRatios.TwoByOne}
262
257
  >
263
- <CardHeading level={HeadingLevels.Four} id="heading1">
258
+ <CardHeading level={HeadingLevels.Four} id="heading1-kkslider">
264
259
  K.K. Slider
265
260
  </CardHeading>
266
261
  <CardContent>
@@ -1,4 +1,4 @@
1
- import { Meta, Story, Preview } from "@storybook/addon-docs/blocks";
1
+ import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2
2
  import Autosuggest from "react-autosuggest";
3
3
  import * as stories from "./Autosuggest.stories.tsx";
4
4
  import { getCategory } from "../../utils/componentCategories";
@@ -19,9 +19,9 @@ every input element. Since the suggestion dropdown will appear on top of page co
19
19
  we've added a min-height to make it easier to see the dropdown. This is for demonstration
20
20
  purposes only and you will not need to do this in your application.
21
21
 
22
- <Preview withToolbar>
22
+ <Canvas withToolbar>
23
23
  <Story name="Basic" story={stories.AutosuggestLibrary} />
24
- </Preview>
24
+ </Canvas>
25
25
 
26
26
  ## With custom icons
27
27
 
@@ -29,7 +29,7 @@ const libraryRenderInputComponent = (
29
29
  >
30
30
  Home Library
31
31
  </Label>
32
- <HelperErrorText id="id-helperText" isError={false}>
32
+ <HelperErrorText id="id-helperText" isInvalid={false}>
33
33
  Select your home library. Start by typing the name of the library. Try{" "}
34
34
  {'"'}ba{'"'}.
35
35
  </HelperErrorText>
@@ -99,6 +99,7 @@ const LibraryExample = ({ renderInputComponent }) => {
99
99
  const renderSuggestion = (suggestion) => <span>{suggestion.label}</span>;
100
100
  // Autosuggest will pass through all these props to the Input component.
101
101
  const inputProps = {
102
+ "aria-label": "Home Library",
102
103
  placeholder: "Type a library name",
103
104
  value,
104
105
  onChange,
@@ -25,11 +25,11 @@
25
25
  }
26
26
 
27
27
  .react-autosuggest__suggestions-container--open {
28
- background-color: var(--ui-white);
28
+ background-color: var(--nypl-colors-ui-white);
29
29
  display: block;
30
30
  font-weight: 300;
31
31
  margin-top: -6px; // accounts for the focus ring on the input
32
- outline: 1px solid var(--ui-gray-light-cool);
32
+ outline: 1px solid var(--nypl-colors-ui-gray-light-cool);
33
33
  position: absolute;
34
34
  width: 100%;
35
35
  z-index: 2;
@@ -43,13 +43,13 @@
43
43
 
44
44
  .react-autosuggest__suggestion {
45
45
  cursor: pointer;
46
- padding: var(--space-xs);
46
+ padding: var(--nypl-space-xs);
47
47
  }
48
48
 
49
49
  .react-autosuggest__suggestion--highlighted {
50
- background-color: var(--ui-gray-light-cool);
50
+ background-color: var(--nypl-colors-ui-gray-light-cool);
51
51
  }
52
52
 
53
53
  .auto-suggest-bottom {
54
- padding: var(--space-xs);
54
+ padding: var(--nypl-space-xs);
55
55
  }
@@ -22,14 +22,14 @@ import { getCategory } from "../../utils/componentCategories";
22
22
  parameters={{
23
23
  design: {
24
24
  type: "figma",
25
- url:
26
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=10766%3A1031",
25
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=10766%3A1031",
27
26
  },
28
27
  jest: ["Breadcrumbs.test.tsx"],
29
28
  }}
30
29
  argTypes={{
31
- id: { table: { disable: true } },
30
+ additionalStyles: { control: false },
32
31
  className: { table: { disable: true } },
32
+ id: { table: { disable: true } },
33
33
  }}
34
34
  />
35
35
 
@@ -38,7 +38,7 @@ import { getCategory } from "../../utils/componentCategories";
38
38
  | Component Version | DS Version |
39
39
  | ----------------- | ---------- |
40
40
  | Added | `0.0.3` |
41
- | Latest | `0.25.1` |
41
+ | Latest | `0.25.4` |
42
42
 
43
43
  <Description of={Breadcrumbs} />
44
44
 
@@ -76,8 +76,7 @@ The `Breadcrumbs` component is a navigation element that provides a breadcrumb p
76
76
  },
77
77
  {
78
78
  url: "#",
79
- text:
80
- "Great-Grandchild with the Longest Name That Will Wrap onto the Second Line of the Breadcrumb Component Under the Right Circumstances",
79
+ text: "Great-Grandchild with the Longest Name That Will Wrap onto the Second Line of the Breadcrumb Component Under the Right Circumstances",
81
80
  },
82
81
  ]}
83
82
  />
@@ -89,9 +88,14 @@ The `Breadcrumbs` component is a navigation element that provides a breadcrumb p
89
88
  The `Breadcrumbs` component background color can be set using the `colorVariant` prop and the `ColorVariants` enum. If the `colorVariant` prop is omitted, the default background color is `black`.
90
89
 
91
90
  <Canvas>
92
- <Story name="Color Variations" args={{}}>
91
+ <Story
92
+ name="Color Variations"
93
+ args={{
94
+ colorVariant: ColorVariants.BooksAndMore,
95
+ }}
96
+ >
93
97
  {(args) => (
94
- <div className="nypl--books-and-more">
98
+ <>
95
99
  <Heading level={HeadingLevels.Three}>Books and More</Heading>
96
100
  <Breadcrumbs
97
101
  breadcrumbsData={[
@@ -102,9 +106,9 @@ The `Breadcrumbs` component background color can be set using the `colorVariant`
102
106
  text: "Grandchild",
103
107
  },
104
108
  ]}
105
- colorVariant={ColorVariants.BooksAndMore}
109
+ colorVariant={args.colorVariant}
106
110
  />
107
- </div>
111
+ </>
108
112
  )}
109
113
  </Story>
110
114
  </Canvas>
@@ -4,6 +4,7 @@ import renderer from "react-test-renderer";
4
4
  import { axe } from "jest-axe";
5
5
 
6
6
  import Breadcrumbs from "./Breadcrumbs";
7
+ import { ColorVariants } from "./BreadcrumbsTypes";
7
8
 
8
9
  describe("Breadcrumbs Accessibility", () => {
9
10
  const breadcrumbsData = [
@@ -31,8 +32,30 @@ describe("Breadcrumbs Snapshot", () => {
31
32
  <Breadcrumbs id="breadcrumbs-test" breadcrumbsData={breadcrumbsData} />
32
33
  )
33
34
  .toJSON();
35
+ const breadcrumbsVariantColor = renderer
36
+ .create(
37
+ <Breadcrumbs
38
+ breadcrumbsData={breadcrumbsData}
39
+ colorVariant={ColorVariants.BooksAndMore}
40
+ id="breadcrumbs-test"
41
+ />
42
+ )
43
+ .toJSON();
44
+ const breadcrumbsAdditionalStyles = renderer
45
+ .create(
46
+ <Breadcrumbs
47
+ additionalStyles={{
48
+ bg: "var(--nypl-colors-ui-error-primary)",
49
+ }}
50
+ breadcrumbsData={breadcrumbsData}
51
+ id="breadcrumbs-test"
52
+ />
53
+ )
54
+ .toJSON();
34
55
 
35
56
  expect(breadcrumbsSnapshot).toMatchSnapshot();
57
+ expect(breadcrumbsVariantColor).toMatchSnapshot();
58
+ expect(breadcrumbsAdditionalStyles).toMatchSnapshot();
36
59
  });
37
60
  });
38
61
 
@@ -23,6 +23,8 @@ export interface BreadcrumbsDataProps {
23
23
  }
24
24
 
25
25
  export interface BreadcrumbProps {
26
+ /** Optionally pass in additional Chakra-based styles. */
27
+ additionalStyles?: { [key: string]: any };
26
28
  /** Breadcrumb links as an array */
27
29
  breadcrumbsData: BreadcrumbsDataProps[];
28
30
  /** className you can add in addition to 'input' */
@@ -64,6 +66,7 @@ const getElementsFromData = (data, breadcrumbsID) => {
64
66
 
65
67
  function Breadcrumbs(props: React.PropsWithChildren<BreadcrumbProps>) {
66
68
  const {
69
+ additionalStyles = {},
67
70
  breadcrumbsData,
68
71
  className,
69
72
  colorVariant,
@@ -78,10 +81,11 @@ function Breadcrumbs(props: React.PropsWithChildren<BreadcrumbProps>) {
78
81
  }
79
82
 
80
83
  const styles = useStyleConfig("Breadcrumb", { variant });
84
+ const finalStyles = { ...styles, ...additionalStyles };
81
85
  const breadcrumbItems = getElementsFromData(breadcrumbsData, id);
82
86
 
83
87
  return (
84
- <ChakraBreadcrumb className={className} __css={styles} id={id}>
88
+ <ChakraBreadcrumb className={className} __css={finalStyles} id={id}>
85
89
  {breadcrumbItems}
86
90
  </ChakraBreadcrumb>
87
91
  );