@nypl/design-system-react-components 0.25.0 → 0.25.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/CHANGELOG.md +142 -1
  2. package/README.md +98 -50
  3. package/dist/components/Accordion/Accordion.d.ts +14 -14
  4. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +15 -14
  5. package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +6 -0
  6. package/dist/components/Button/Button.d.ts +13 -8
  7. package/dist/components/Button/ButtonTypes.d.ts +3 -1
  8. package/dist/components/Card/Card.d.ts +36 -52
  9. package/dist/components/Card/CardTypes.d.ts +2 -17
  10. package/dist/components/Checkbox/Checkbox.d.ts +17 -13
  11. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +45 -0
  12. package/dist/components/CheckboxGroup/CheckboxGroupLayoutTypes.d.ts +4 -0
  13. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +15 -0
  14. package/dist/components/DatePicker/DatePicker.d.ts +37 -35
  15. package/dist/components/Fieldset/Fieldset.d.ts +25 -0
  16. package/dist/components/Form/Form.d.ts +13 -8
  17. package/dist/components/Form/FormTypes.d.ts +2 -8
  18. package/dist/components/Grid/GridTypes.d.ts +9 -0
  19. package/dist/components/Grid/SimpleGrid.d.ts +14 -0
  20. package/dist/components/Heading/Heading.d.ts +4 -4
  21. package/dist/components/HelperErrorText/HelperErrorText.d.ts +17 -14
  22. package/dist/components/Hero/Hero.d.ts +19 -14
  23. package/dist/components/Hero/HeroTypes.d.ts +10 -5
  24. package/dist/components/HorizontalRule/HorizontalRule.d.ts +10 -9
  25. package/dist/components/Icons/Icon.d.ts +19 -14
  26. package/dist/components/Icons/IconSvgs.d.ts +11 -0
  27. package/dist/components/Icons/IconTypes.d.ts +89 -64
  28. package/dist/components/Image/Image.d.ts +19 -9
  29. package/dist/components/Image/ImageTypes.d.ts +20 -0
  30. package/dist/components/Label/Label.d.ts +5 -17
  31. package/dist/components/Link/Link.d.ts +12 -12
  32. package/dist/components/List/List.d.ts +19 -14
  33. package/dist/components/Notification/Notification.d.ts +37 -16
  34. package/dist/components/Pagination/Pagination.d.ts +16 -13
  35. package/dist/components/Pagination/Pagination.stories.d.ts +2 -0
  36. package/dist/components/ProgressIndicator/ProgressIndicator.d.ts +29 -0
  37. package/dist/components/ProgressIndicator/ProgressIndicatorTypes.d.ts +8 -0
  38. package/dist/components/Radio/Radio.d.ts +2 -0
  39. package/dist/components/RadioGroup/RadioGroup.d.ts +4 -2
  40. package/dist/components/SearchBar/SearchBar.d.ts +45 -27
  41. package/dist/components/Select/Select.d.ts +34 -35
  42. package/dist/components/Select/SelectTypes.d.ts +4 -0
  43. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +18 -14
  44. package/dist/components/SkeletonLoader/SkeletonLoaderTypes.d.ts +2 -2
  45. package/dist/components/Slider/Slider.d.ts +57 -0
  46. package/dist/components/StatusBadge/StatusBadge.d.ts +8 -6
  47. package/dist/components/StatusBadge/StatusBadgeTypes.d.ts +5 -0
  48. package/dist/components/StyleGuide/ColorCard.d.ts +12 -0
  49. package/dist/components/Tabs/Tabs.d.ts +1 -1
  50. package/dist/components/Template/Template.d.ts +91 -0
  51. package/dist/components/Text/Text.d.ts +16 -0
  52. package/dist/components/Text/TextTypes.d.ts +6 -0
  53. package/dist/components/TextInput/TextInput.d.ts +44 -31
  54. package/dist/components/TextInput/TextInputTypes.d.ts +5 -0
  55. package/dist/components/VideoPlayer/VideoPlayer.d.ts +6 -8
  56. package/dist/components/VideoPlayer/VideoPlayerTypes.d.ts +2 -2
  57. package/dist/design-system-react-components.cjs.development.js +6473 -2630
  58. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  59. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  60. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  61. package/dist/design-system-react-components.esm.js +6463 -2631
  62. package/dist/design-system-react-components.esm.js.map +1 -1
  63. package/dist/hooks/tests/useCarouselStyles.test.d.ts +1 -0
  64. package/dist/hooks/useCarouselStyles.d.ts +16 -0
  65. package/dist/hooks/useNYPLTheme.d.ts +54 -0
  66. package/dist/hooks/useWindowSize.d.ts +10 -0
  67. package/dist/index.d.ts +19 -7
  68. package/dist/resources.scss +180 -170
  69. package/dist/styles.css +1 -1
  70. package/dist/theme/components/accordion.d.ts +25 -0
  71. package/dist/theme/components/breadcrumb.d.ts +90 -0
  72. package/dist/theme/components/button.d.ts +39 -15
  73. package/dist/theme/components/card.d.ts +168 -0
  74. package/dist/theme/components/checkbox.d.ts +12 -8
  75. package/dist/theme/components/checkboxGroup.d.ts +12 -0
  76. package/dist/theme/components/componentWrapper.d.ts +11 -0
  77. package/dist/theme/components/datePicker.d.ts +16 -0
  78. package/dist/theme/components/fieldset.d.ts +27 -0
  79. package/dist/theme/components/global.d.ts +65 -0
  80. package/dist/theme/components/globalMixins.d.ts +23 -0
  81. package/dist/theme/components/heading.d.ts +55 -20
  82. package/dist/theme/components/helperErrorText.d.ts +10 -0
  83. package/dist/theme/components/hero.d.ts +493 -0
  84. package/dist/theme/components/horizontalRule.d.ts +14 -0
  85. package/dist/theme/components/icon.d.ts +13 -0
  86. package/dist/theme/components/image.d.ts +31 -0
  87. package/dist/theme/components/label.d.ts +18 -0
  88. package/dist/theme/components/link.d.ts +49 -0
  89. package/dist/theme/components/list.d.ts +89 -0
  90. package/dist/theme/components/notification.d.ts +75 -0
  91. package/dist/theme/components/pagination.d.ts +19 -0
  92. package/dist/theme/components/progressIndicator.d.ts +50 -0
  93. package/dist/theme/components/radio.d.ts +8 -7
  94. package/dist/theme/components/radioGroup.d.ts +12 -0
  95. package/dist/theme/components/searchBar.d.ts +20 -0
  96. package/dist/theme/components/select.d.ts +67 -0
  97. package/dist/theme/components/skeletonLoader.d.ts +98 -0
  98. package/dist/theme/components/slider.d.ts +51 -0
  99. package/dist/theme/components/statusBadge.d.ts +25 -0
  100. package/dist/theme/components/tabs.d.ts +63 -12
  101. package/dist/theme/components/template.d.ts +105 -0
  102. package/dist/theme/components/text.d.ts +20 -0
  103. package/dist/theme/components/textInput.d.ts +112 -0
  104. package/dist/theme/components/videoPlayer.d.ts +40 -0
  105. package/dist/theme/foundations/breakpoints.d.ts +8 -8
  106. package/dist/theme/foundations/global.d.ts +8 -0
  107. package/dist/theme/foundations/radii.d.ts +5 -0
  108. package/dist/theme/foundations/shadows.d.ts +4 -0
  109. package/dist/theme/foundations/spacing.d.ts +16 -16
  110. package/dist/utils/utils.d.ts +6 -0
  111. package/package.json +72 -82
  112. package/src/__tests__/setup.ts +2 -2
  113. package/src/components/Accordion/Accordion.stories.mdx +223 -34
  114. package/src/components/Accordion/Accordion.test.tsx +135 -19
  115. package/src/components/Accordion/Accordion.tsx +81 -56
  116. package/src/components/Autosuggest/Autosuggest.stories.mdx +4 -4
  117. package/src/components/Autosuggest/Autosuggest.stories.tsx +3 -2
  118. package/src/components/Autosuggest/_Autosuggest.scss +5 -5
  119. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +48 -50
  120. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +54 -25
  121. package/src/components/Breadcrumbs/Breadcrumbs.tsx +75 -73
  122. package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +6 -0
  123. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +298 -0
  124. package/src/components/Button/Button.stories.mdx +45 -36
  125. package/src/components/Button/Button.test.tsx +37 -11
  126. package/src/components/Button/Button.tsx +22 -34
  127. package/src/components/Button/ButtonTypes.tsx +2 -0
  128. package/src/components/Button/__snapshots__/Button.test.tsx.snap +50 -8
  129. package/src/components/Card/Card.stories.mdx +314 -273
  130. package/src/components/Card/Card.test.tsx +157 -91
  131. package/src/components/Card/Card.tsx +195 -145
  132. package/src/components/Card/CardTypes.tsx +2 -19
  133. package/src/components/Card/__snapshots__/Card.test.tsx.snap +410 -0
  134. package/src/components/CardEdition/CardEdition.stories.tsx +26 -53
  135. package/src/components/CardEdition/CardEdition.test.tsx +23 -31
  136. package/src/components/CardEdition/_CardEdition.scss +22 -23
  137. package/src/components/Chakra/Box.stories.mdx +15 -16
  138. package/src/components/Chakra/Center.stories.mdx +56 -24
  139. package/src/components/Chakra/Grid.stories.mdx +92 -0
  140. package/src/components/Chakra/Stack.stories.mdx +38 -21
  141. package/src/components/Checkbox/Checkbox.stories.mdx +33 -11
  142. package/src/components/Checkbox/Checkbox.test.tsx +47 -2
  143. package/src/components/Checkbox/Checkbox.tsx +44 -41
  144. package/src/components/Checkbox/__snapshots__/Checkbox.test.tsx.snap +92 -7
  145. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +329 -0
  146. package/src/components/CheckboxGroup/CheckboxGroup.test.tsx +372 -0
  147. package/src/components/CheckboxGroup/CheckboxGroup.tsx +152 -0
  148. package/src/components/CheckboxGroup/CheckboxGroupLayoutTypes.tsx +4 -0
  149. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +1326 -0
  150. package/src/components/ComponentWrapper/ComponentWrapper.tsx +63 -0
  151. package/src/components/DatePicker/DatePicker.stories.mdx +163 -62
  152. package/src/components/DatePicker/DatePicker.test.tsx +264 -64
  153. package/src/components/DatePicker/DatePicker.tsx +165 -134
  154. package/src/components/DatePicker/_DatePicker.scss +33 -66
  155. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +818 -0
  156. package/src/components/Fieldset/Fieldset.stories.mdx +55 -0
  157. package/src/components/Fieldset/Fieldset.test.tsx +125 -0
  158. package/src/components/Fieldset/Fieldset.tsx +52 -0
  159. package/src/components/Fieldset/__snapshots__/Fieldset.test.tsx.snap +68 -0
  160. package/src/components/Form/Form.stories.mdx +70 -27
  161. package/src/components/Form/Form.test.tsx +58 -45
  162. package/src/components/Form/Form.tsx +50 -21
  163. package/src/components/Form/FormTypes.tsx +3 -8
  164. package/src/components/Form/__snapshots__/Form.test.tsx.snap +24 -14
  165. package/src/components/Grid/GridTypes.tsx +9 -0
  166. package/src/components/Grid/SimpleGrid.stories.mdx +268 -0
  167. package/src/components/Grid/SimpleGrid.test.tsx +66 -0
  168. package/src/components/Grid/SimpleGrid.tsx +37 -0
  169. package/src/components/Grid/__snapshots__/SimpleGrid.test.tsx.snap +8 -0
  170. package/src/components/Heading/Heading.stories.mdx +3 -3
  171. package/src/components/Heading/Heading.tsx +12 -6
  172. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +124 -0
  173. package/src/components/HelperErrorText/HelperErrorText.test.tsx +39 -44
  174. package/src/components/HelperErrorText/HelperErrorText.tsx +37 -39
  175. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +25 -0
  176. package/src/components/Hero/Hero.stories.mdx +198 -121
  177. package/src/components/Hero/Hero.test.tsx +537 -107
  178. package/src/components/Hero/Hero.tsx +79 -92
  179. package/src/components/Hero/HeroTypes.tsx +18 -5
  180. package/src/components/Hero/__snapshots__/Hero.test.tsx.snap +307 -0
  181. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +8 -6
  182. package/src/components/HorizontalRule/HorizontalRule.test.tsx +33 -28
  183. package/src/components/HorizontalRule/HorizontalRule.tsx +27 -29
  184. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +27 -9
  185. package/src/components/Icons/Icon.stories.mdx +94 -77
  186. package/src/components/Icons/Icon.test.tsx +48 -22
  187. package/src/components/Icons/Icon.tsx +78 -61
  188. package/src/components/Icons/IconSvgs.tsx +22 -0
  189. package/src/components/Icons/IconTypes.tsx +91 -64
  190. package/src/components/Image/Image.stories.mdx +220 -0
  191. package/src/components/Image/Image.test.tsx +131 -29
  192. package/src/components/Image/Image.tsx +84 -56
  193. package/src/components/Image/ImageTypes.ts +22 -0
  194. package/src/components/Image/__snapshots__/Image.test.tsx.snap +190 -0
  195. package/src/components/Input/Input.stories.tsx +23 -67
  196. package/src/components/Input/Input.test.tsx +4 -4
  197. package/src/components/Input/_Input.scss +23 -14
  198. package/src/components/Label/Label.stories.mdx +28 -7
  199. package/src/components/Label/Label.test.tsx +43 -12
  200. package/src/components/Label/Label.tsx +21 -34
  201. package/src/components/Label/__snapshots__/Label.test.tsx.snap +41 -0
  202. package/src/components/Link/Link.stories.mdx +41 -41
  203. package/src/components/Link/Link.test.tsx +33 -44
  204. package/src/components/Link/Link.tsx +117 -100
  205. package/src/components/List/List.stories.mdx +124 -51
  206. package/src/components/List/List.test.tsx +142 -63
  207. package/src/components/List/List.tsx +89 -93
  208. package/src/components/List/__snapshots__/List.test.tsx.snap +109 -0
  209. package/src/components/Modal/Modal.stories.mdx +3 -3
  210. package/src/components/Modal/_Modal.scss +2 -2
  211. package/src/components/Notification/Notification.stories.mdx +119 -111
  212. package/src/components/Notification/Notification.test.tsx +102 -126
  213. package/src/components/Notification/Notification.tsx +157 -161
  214. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +159 -8
  215. package/src/components/Pagination/Pagination.stories.mdx +26 -27
  216. package/src/components/Pagination/Pagination.stories.tsx +11 -16
  217. package/src/components/Pagination/Pagination.test.tsx +276 -140
  218. package/src/components/Pagination/Pagination.tsx +174 -154
  219. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +285 -0
  220. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +292 -0
  221. package/src/components/ProgressIndicator/ProgressIndicator.test.tsx +225 -0
  222. package/src/components/ProgressIndicator/ProgressIndicator.tsx +126 -0
  223. package/src/components/ProgressIndicator/ProgressIndicatorTypes.ts +8 -0
  224. package/src/components/ProgressIndicator/__snapshots__/ProgressIndicator.test.tsx.snap +357 -0
  225. package/src/components/Radio/Radio.test.tsx +20 -4
  226. package/src/components/Radio/Radio.tsx +6 -3
  227. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +3 -0
  228. package/src/components/RadioGroup/RadioGroup.stories.mdx +4 -5
  229. package/src/components/RadioGroup/RadioGroup.test.tsx +24 -1
  230. package/src/components/RadioGroup/RadioGroup.tsx +21 -29
  231. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +42 -72
  232. package/src/components/SearchBar/SearchBar.Test.tsx +170 -16
  233. package/src/components/SearchBar/SearchBar.stories.mdx +294 -219
  234. package/src/components/SearchBar/SearchBar.tsx +161 -46
  235. package/src/components/Select/Select.stories.mdx +188 -170
  236. package/src/components/Select/Select.test.tsx +132 -375
  237. package/src/components/Select/Select.tsx +121 -165
  238. package/src/components/Select/SelectTypes.tsx +5 -0
  239. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +33 -76
  240. package/src/components/SkeletonLoader/SkeletonLoader.test.tsx +97 -177
  241. package/src/components/SkeletonLoader/SkeletonLoader.tsx +75 -70
  242. package/src/components/SkeletonLoader/SkeletonLoaderTypes.tsx +2 -2
  243. package/src/components/SkeletonLoader/__snapshots__/SkeletonLoader.test.tsx.snap +739 -0
  244. package/src/components/Slider/Slider.stories.mdx +529 -0
  245. package/src/components/Slider/Slider.test.tsx +653 -0
  246. package/src/components/Slider/Slider.tsx +303 -0
  247. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +1946 -0
  248. package/src/components/StatusBadge/StatusBadge.stories.mdx +91 -0
  249. package/src/components/StatusBadge/StatusBadge.test.tsx +35 -7
  250. package/src/components/StatusBadge/StatusBadge.tsx +24 -25
  251. package/src/components/StatusBadge/StatusBadgeTypes.tsx +5 -0
  252. package/src/components/StatusBadge/__snapshots__/StatusBadge.test.tsx.snap +28 -0
  253. package/src/components/StyleGuide/Bidirectionality.stories.mdx +17 -17
  254. package/src/components/StyleGuide/Breakpoints.stories.mdx +34 -10
  255. package/src/components/StyleGuide/Buttons.stories.mdx +102 -86
  256. package/src/components/StyleGuide/ColorCard.tsx +46 -0
  257. package/src/components/StyleGuide/Colors.stories.mdx +196 -0
  258. package/src/components/StyleGuide/DesignTokens.stories.mdx +170 -0
  259. package/src/components/StyleGuide/Forms.stories.mdx +9 -7
  260. package/src/components/StyleGuide/Iconography.stories.mdx +119 -127
  261. package/src/components/StyleGuide/Spacing.stories.mdx +31 -23
  262. package/src/components/StyleGuide/Typography.stories.mdx +202 -189
  263. package/src/components/StyleGuide/UIDocCard.tsx +1 -1
  264. package/src/components/Tabs/Tabs.stories.mdx +73 -11
  265. package/src/components/Tabs/Tabs.tsx +88 -67
  266. package/src/components/Template/Template.stories.mdx +572 -0
  267. package/src/components/Template/Template.test.tsx +124 -0
  268. package/src/components/Template/Template.tsx +226 -0
  269. package/src/components/Text/Text.stories.mdx +70 -0
  270. package/src/components/Text/Text.test.tsx +63 -0
  271. package/src/components/Text/Text.tsx +55 -0
  272. package/src/components/Text/TextTypes.tsx +6 -0
  273. package/src/components/Text/__snapshots__/Text.test.tsx.snap +33 -0
  274. package/src/components/TextInput/TextInput.stories.mdx +89 -90
  275. package/src/components/TextInput/TextInput.test.tsx +84 -85
  276. package/src/components/TextInput/TextInput.tsx +121 -95
  277. package/src/components/TextInput/TextInputTypes.tsx +8 -0
  278. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +17 -4
  279. package/src/components/VideoPlayer/VideoPlayer.test.tsx +54 -53
  280. package/src/components/VideoPlayer/VideoPlayer.tsx +50 -51
  281. package/src/components/VideoPlayer/VideoPlayerTypes.tsx +2 -2
  282. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +91 -0
  283. package/src/docs/Chakra.stories.mdx +246 -65
  284. package/src/docs/Intro.stories.mdx +18 -13
  285. package/src/hooks/tests/useCarouselStyles.test.ts +140 -0
  286. package/src/hooks/tests/useNYPLTheme.test.tsx +36 -0
  287. package/src/hooks/useCarouselStyles.ts +34 -0
  288. package/src/hooks/useNYPLTheme.ts +67 -0
  289. package/src/hooks/useWindowSize.ts +40 -0
  290. package/src/index.ts +39 -16
  291. package/src/resources.scss +5 -5
  292. package/src/styles/base/{_02-breakpoints.scss → _01-breakpoints.scss} +9 -10
  293. package/src/styles/base/{_03-mixins.scss → _02-mixins.scss} +16 -5
  294. package/src/styles/base/_03-base.scss +25 -0
  295. package/src/styles/base/{_05-focus.scss → _04-focus.scss} +0 -15
  296. package/src/styles/base/_place-holder.scss +14 -3
  297. package/src/styles/{03-space → space}/_space-inline.scss +14 -14
  298. package/src/styles/{03-space → space}/_space-inset.scss +10 -10
  299. package/src/styles/space/_space-stack.scss +116 -0
  300. package/src/styles.scss +13 -62
  301. package/src/theme/components/accordion.ts +30 -0
  302. package/src/theme/components/breadcrumb.ts +77 -0
  303. package/src/theme/components/button.ts +91 -71
  304. package/src/theme/components/card.ts +174 -0
  305. package/src/theme/components/checkbox.ts +22 -29
  306. package/src/theme/components/checkboxGroup.ts +8 -0
  307. package/src/theme/components/componentWrapper.ts +10 -0
  308. package/src/theme/components/datePicker.ts +17 -0
  309. package/src/theme/components/fieldset.ts +18 -0
  310. package/src/theme/components/global.ts +82 -0
  311. package/src/theme/components/globalMixins.ts +24 -0
  312. package/src/theme/components/heading.ts +25 -13
  313. package/src/theme/components/helperErrorText.ts +9 -0
  314. package/src/theme/components/hero.ts +240 -0
  315. package/src/theme/components/horizontalRule.ts +13 -0
  316. package/src/theme/components/icon.ts +79 -0
  317. package/src/theme/components/image.ts +116 -0
  318. package/src/theme/components/label.ts +10 -0
  319. package/src/theme/components/link.ts +51 -0
  320. package/src/theme/components/list.ts +73 -0
  321. package/src/theme/components/notification.ts +93 -0
  322. package/src/theme/components/pagination.ts +20 -0
  323. package/src/theme/components/progressIndicator.ts +62 -0
  324. package/src/theme/components/radio.ts +22 -33
  325. package/src/theme/components/radioGroup.ts +8 -0
  326. package/src/theme/components/searchBar.ts +21 -0
  327. package/src/theme/components/select.ts +53 -0
  328. package/src/theme/components/skeletonLoader.ts +107 -0
  329. package/src/theme/components/slider.ts +79 -0
  330. package/src/theme/components/statusBadge.ts +26 -0
  331. package/src/theme/components/tabs.ts +102 -69
  332. package/src/theme/components/template.ts +114 -0
  333. package/src/theme/components/text.ts +31 -0
  334. package/src/theme/components/textInput.ts +62 -0
  335. package/src/theme/components/videoPlayer.ts +49 -0
  336. package/src/theme/foundations/breakpoints.ts +8 -8
  337. package/src/theme/foundations/colors.ts +29 -13
  338. package/src/theme/foundations/global.ts +8 -0
  339. package/src/theme/foundations/radii.ts +6 -0
  340. package/src/theme/foundations/shadows.ts +5 -0
  341. package/src/theme/foundations/spacing.ts +24 -24
  342. package/src/theme/index.ts +74 -13
  343. package/src/utils/componentCategories.ts +12 -5
  344. package/src/utils/utils.ts +13 -0
  345. package/dist/components/Accordion/Accordion.stories.d.ts +0 -6
  346. package/dist/components/HelperErrorText/HelperErrorText.stories.d.ts +0 -16
  347. package/dist/components/Image/Image.stories.d.ts +0 -18
  348. package/dist/components/List/List.stories.d.ts +0 -7
  349. package/dist/components/StatusBadge/StatusBadge.stories.d.ts +0 -8
  350. package/dist/components/StyleGuide/Colors.stories.d.ts +0 -25
  351. package/dist/components/Template/Template.stories.d.ts +0 -30
  352. package/dist/theme/components/customRadioGroup.d.ts +0 -17
  353. package/src/components/Accordion/Accordion.stories.tsx +0 -66
  354. package/src/components/Accordion/_Accordion.scss +0 -81
  355. package/src/components/Breadcrumbs/_Breadcrumbs.scss +0 -97
  356. package/src/components/Button/_Button.scss +0 -56
  357. package/src/components/Card/_Card.scss +0 -308
  358. package/src/components/Form/_Form.scss +0 -67
  359. package/src/components/HelperErrorText/HelperErrorText.stories.tsx +0 -48
  360. package/src/components/HelperErrorText/_HelperErrorText.scss +0 -9
  361. package/src/components/Hero/_Hero.scss +0 -256
  362. package/src/components/HorizontalRule/_HorizontalRule.scss +0 -15
  363. package/src/components/Icons/_Icons.scss +0 -116
  364. package/src/components/Image/Image.stories.tsx +0 -54
  365. package/src/components/Image/_Image.scss +0 -38
  366. package/src/components/Label/_Label.scss +0 -22
  367. package/src/components/Link/_Link.scss +0 -73
  368. package/src/components/List/List.stories.tsx +0 -139
  369. package/src/components/List/_List.scss +0 -76
  370. package/src/components/Notification/_Notification.scss +0 -110
  371. package/src/components/Pagination/_Pagination.scss +0 -40
  372. package/src/components/SearchBar/_SearchBar.scss +0 -16
  373. package/src/components/Select/_Select.scss +0 -82
  374. package/src/components/SkeletonLoader/_SkeletonLoader.scss +0 -142
  375. package/src/components/StatusBadge/StatusBadge.stories.tsx +0 -34
  376. package/src/components/StatusBadge/_StatusBadge.scss +0 -23
  377. package/src/components/StyleGuide/Colors.stories.tsx +0 -289
  378. package/src/components/Template/Template.stories.tsx +0 -86
  379. package/src/components/Template/_Template.scss +0 -63
  380. package/src/components/TextInput/_TextInput.scss +0 -59
  381. package/src/components/VideoPlayer/_VideoPlayer.scss +0 -38
  382. package/src/styles/01-colors/_colors-brand.scss +0 -56
  383. package/src/styles/01-colors/_colors-utility.scss +0 -65
  384. package/src/styles/02-typography/_type-scale.css +0 -11
  385. package/src/styles/02-typography/_type-weight.css +0 -7
  386. package/src/styles/02-typography/_typefaces.css +0 -4
  387. package/src/styles/03-space/_space-stack.scss +0 -116
  388. package/src/styles/03-space/_space.css +0 -30
  389. package/src/styles/base/_04-base.scss +0 -19
  390. package/src/styles/base/_card-grid.scss +0 -78
  391. package/src/styles/base/_typography.scss +0 -11
  392. package/src/theme/components/customRadioGroup.ts +0 -18
@@ -1,71 +1,96 @@
1
- export declare enum IconRotationTypes {
2
- rotate0 = "rotate-0",
3
- rotate90 = "rotate-90",
4
- rotate180 = "rotate-180",
5
- rotate270 = "rotate-270"
1
+ export declare enum IconAlign {
2
+ Left = "left",
3
+ Right = "right",
4
+ None = "none"
6
5
  }
7
- export declare enum IconNames {
8
- accessibility_full = "accessibility_full",
9
- accessibility_partial = "accessibility_partial",
10
- arrow = "arrow",
11
- check = "check",
12
- clock = "clock",
13
- close = "close",
14
- download = "download",
15
- error_filled = "error_filled",
16
- error_outline = "error_outline",
17
- headset = "headset",
18
- minus = "minus",
19
- plus = "plus",
20
- search = "search",
21
- speaker_notes = "speaker_notes",
22
- utility_account_filled = "utility_account_filled",
23
- utility_account_unfilled = "utility_account_unfilled",
24
- utility_hamburger = "utility_hamburger",
25
- utility_search = "utility_search"
6
+ export declare enum IconTypes {
7
+ Default = "default",
8
+ Breadcrumbs = "breadcrumbs"
26
9
  }
27
- export declare enum LogoNames {
28
- brooklyn = "brooklyn",
29
- logo_brooklyn = "logo_brooklyn",
30
- logo_nypl = "logo_nypl",
31
- logo_nypl_negative = "logo_nypl_negative",
32
- logo_queens = "logo_queens",
33
- lpa_negative = "lpa_negative",
34
- lpa_positive = "lpa_positive",
35
- nypl_circle_negative = "nypl_circle_negative",
36
- nypl_circle_positive = "nypl_circle_positive",
37
- nypl_full_lock_up_negative = "nypl_full_lock_up_negative",
38
- nypl_full_lock_up = "nypl_full_lock_up",
39
- nypl_no_lion_negative = "nypl_no_lion_negative",
40
- nypl_no_lion_positive = "nypl_no_lion_positive",
41
- queens_long = "queens_long",
42
- queens_stacked = "queens_stacked",
43
- schomburg_circle = "schomburg_circle",
44
- schomburg_positive = "schomburg_positive",
45
- simplye_black = "simplye_black",
46
- simplye_color = "simplye_color",
47
- snfl_negative = "snfl_negative",
48
- snfl_positive = "snfl_positive"
10
+ export declare enum IconRotationTypes {
11
+ Rotate0 = "rotate0",
12
+ Rotate90 = "rotate90",
13
+ Rotate180 = "rotate180",
14
+ Rotate270 = "rotate270"
49
15
  }
50
16
  export declare enum IconColors {
51
- ui_black = "ui-black",
52
- ui_white = "ui-white",
53
- brand_primary = "brand-primary",
54
- brand_secondary = "brand-secondary",
55
- section_whats_on_primary = "section-whats-on-primary",
56
- section_books_and_more_primary = "section-books-and-more-primary",
57
- section_research_primary = "section-research-primary",
58
- section_research_secondary = "section-research-secondary",
59
- section_locations_primary = "section-locations-primary",
60
- section_research_library_lpa = "section-research-library-lpa",
61
- section_research_library_schomburg = "section-research-library-schomburg",
62
- section_research_library_schwartzman = "section-research-library-schwartzman"
17
+ UiBlack = "ui.black",
18
+ UiWhite = "ui.white",
19
+ BrandPrimary = "brand.primary",
20
+ BrandSecondary = "brand.secondary",
21
+ SectionWhatsOnPrimary = "section.whats-on.primary",
22
+ SectionWhatsOnSecondary = "section.whats-on.secondary",
23
+ SectionBooksAndMorePrimary = "section.books-and-more.primary",
24
+ SectionBooksAndMoreSecondary = "section.books-and-more.secondary",
25
+ SectionResearchPrimary = "section.research.primary",
26
+ SectionResearchSecondary = "section.research.secondary",
27
+ SectionLocationsPrimary = "section.locations.primary",
28
+ SectionLocationsSecondary = "section.locations.secondary",
29
+ SectionBlogsPrimary = "section.blogs.primary",
30
+ SectionBlogsSecondary = "section.blogs.secondary",
31
+ SectionResearchLibraryLpa = "section.research-library.lpa",
32
+ SectionResearchLibrarySchomburg = "section.research-library.schomburg",
33
+ SectionResearchLibrarySchwartzman = "section.research-library.schwartzman"
63
34
  }
64
35
  export declare enum IconSizes {
65
- small = "small",
66
- medium = "medium",
67
- large = "large",
68
- xlarge = "xlarge",
69
- xxlarge = "xxlarge",
70
- xxxlarge = "xxxlarge"
36
+ Small = "small",
37
+ Medium = "medium",
38
+ Large = "large",
39
+ ExtraLarge = "xlarge",
40
+ ExtraExtraLarge = "xxlarge",
41
+ ExtraExtraExtraLarge = "xxxlarge"
42
+ }
43
+ export declare enum IconNames {
44
+ AccessibilityFull = "accessibility_full",
45
+ AccessibilityPartial = "accessibility_partial",
46
+ ActionCheckCircle = "action_check_circle",
47
+ ActionHelpDefault = "action_help_default",
48
+ ActionHelpOutline = "action_help_outline",
49
+ ActionLaunch = "action_launch",
50
+ Arrow = "arrow",
51
+ Check = "check",
52
+ Clock = "clock",
53
+ Close = "close",
54
+ Download = "download",
55
+ ErrorFilled = "error_filled",
56
+ ErrorOutline = "error_outline",
57
+ FileTypeAudio = "file_type_audio",
58
+ FileTypeDoc = "file_type_doc",
59
+ FileTypeGenericDoc = "file_type_generic_doc",
60
+ FileTypeImage = "file_type_image",
61
+ FileTypePdf = "file_type_pdf",
62
+ FileTypeSpreadsheet = "file_type_spreadsheet",
63
+ FileTypeVideo = "file_type_video",
64
+ Headset = "headset",
65
+ Minus = "minus",
66
+ Plus = "plus",
67
+ Search = "search",
68
+ SpeakerNotes = "speaker_notes",
69
+ UtilityAccountFilled = "utility_account_filled",
70
+ UtilityAccountUnfilled = "utility_account_unfilled",
71
+ UtilityHamburger = "utility_hamburger",
72
+ UtilitySearch = "utility_search"
73
+ }
74
+ export declare enum LogoNames {
75
+ Brooklyn = "brooklyn",
76
+ LogoBrooklyn = "logo_brooklyn",
77
+ LogoNypl = "logo_nypl",
78
+ LogoNyplNegative = "logo_nypl_negative",
79
+ LogoQueens = "logo_queens",
80
+ LpaNegative = "lpa_negative",
81
+ LpaPositive = "lpa_positive",
82
+ NyplCircleNegative = "nypl_circle_negative",
83
+ NyplCirclePositive = "nypl_circle_positive",
84
+ NyplFullLockUpNegative = "nypl_full_lock_up_negative",
85
+ NyplFullLockUp = "nypl_full_lock_up",
86
+ NyplNoLionNegative = "nypl_no_lion_negative",
87
+ NyplNoLionPositive = "nypl_no_lion_positive",
88
+ QueensLong = "queens_long",
89
+ QueensStacked = "queens_stacked",
90
+ SchomburgCircle = "schomburg_circle",
91
+ SchomburgPositive = "schomburg_positive",
92
+ SimplyeBlack = "simplye_black",
93
+ SimplyeColor = "simplye_color",
94
+ SnflNegative = "snfl_negative",
95
+ SnflPositive = "snfl_positive"
71
96
  }
@@ -1,22 +1,32 @@
1
1
  import * as React from "react";
2
- export interface ImageProps {
3
- /** Text description of the image */
4
- alt: string;
5
- /** Additional attributes passed to the image */
6
- attributes?: {
2
+ import { ImageRatios, ImageSizes, ImageTypes } from "./ImageTypes";
3
+ interface ImageWrapperProps {
4
+ /** Optionally pass in additional Chakra-based styles. */
5
+ additionalStyles?: {
7
6
  [key: string]: any;
8
7
  };
9
- /** BlockName for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
10
- blockName?: string;
11
8
  /** ClassName you can add in addition to 'image' */
12
9
  className?: string;
10
+ /** Optional value to control the aspect ratio of the cartd image; default value is `square` */
11
+ imageAspectRatio?: ImageRatios;
12
+ /** Optional value to control the size of the image */
13
+ imageSize?: ImageSizes;
14
+ }
15
+ export interface ImageProps extends ImageWrapperProps {
16
+ /** Alternate text description of the image */
17
+ alt: string;
18
+ /** Custom image component */
19
+ component?: JSX.Element | null;
13
20
  /** Adding will wrap the image in a <figure> */
14
21
  imageCaption?: string;
15
22
  /** Adding will wrap the image in a <figure> */
16
23
  imageCredit?: string;
17
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
18
- modifiers?: string[];
24
+ /** Optional value to control the size of the image */
25
+ imageSize?: ImageSizes;
26
+ /** Optional value for the image type */
27
+ imageType?: ImageTypes;
19
28
  /** The src attribute is required, and contains the path to the image you want to embed. */
20
29
  src: string;
21
30
  }
22
31
  export default function Image(props: React.ComponentProps<"img"> & ImageProps): JSX.Element;
32
+ export {};
@@ -0,0 +1,20 @@
1
+ export declare enum ImageRatios {
2
+ FourByThree = "fourByThree",
3
+ OneByTwo = "oneByTwo",
4
+ Original = "original",
5
+ SixteenByNine = "sixteenByNine",
6
+ Square = "square",
7
+ ThreeByFour = "threeByFour",
8
+ ThreeByTwo = "threeByTwo",
9
+ TwoByOne = "twoByOne"
10
+ }
11
+ export declare enum ImageSizes {
12
+ Default = "default",
13
+ Large = "large",
14
+ Medium = "medium",
15
+ Small = "small"
16
+ }
17
+ export declare enum ImageTypes {
18
+ Default = "default",
19
+ Circle = "circle"
20
+ }
@@ -1,29 +1,17 @@
1
1
  import * as React from "react";
2
2
  declare type optReqFlagType = "Required" | "Optional" | "" | undefined;
3
3
  interface LabelProps {
4
- /** Additional attributes to pass to the <label> tag */
5
- attributes?: {
6
- [key: string]: any;
7
- };
8
- /** BlockName for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
9
- blockName?: string;
10
- /** className that appears in addition to "label" */
4
+ /** Additional CSS class name to render in the `label` element. */
11
5
  className?: string;
12
- /** The id of the html element that this `Label` is describing */
13
- htmlFor?: string;
6
+ /** The id of the html element that this `Label` is describing. */
7
+ htmlFor: string;
14
8
  /** ID that other components can cross reference for accessibility purposes */
15
9
  id?: string;
16
- /** Modifiers for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
17
- modifiers?: string[];
18
10
  /** Displays "Required" or "Optional" string alongside the label */
19
11
  optReqFlag?: optReqFlagType;
20
12
  }
21
13
  /**
22
14
  * A label for form inputs. It should never be used alone.
23
15
  */
24
- export default function Label(props: React.PropsWithChildren<LabelProps>): React.DetailedReactHTMLElement<{
25
- className: string;
26
- htmlFor: string;
27
- id: string;
28
- }, HTMLElement>;
29
- export {};
16
+ declare function Label(props: React.PropsWithChildren<LabelProps>): JSX.Element;
17
+ export default Label;
@@ -1,28 +1,28 @@
1
1
  import * as React from "react";
2
2
  import { LinkTypes } from "./LinkTypes";
3
3
  export interface LinkProps {
4
+ /** Optionally pass in additional Chakra-based styles. */
5
+ additionalStyles?: {
6
+ [key: string]: any;
7
+ };
4
8
  /** Additional attributes, such as `rel=nofollow`, to pass to the `<a>` tag. */
5
9
  attributes?: {
6
10
  [key: string]: any;
7
11
  };
8
- /** BlockName for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
9
- blockName?: string;
10
- /** className that appears in addition to "link" */
12
+ /** Any child node passed to the component. */
13
+ children: React.ReactNode;
14
+ /** Additional class name to render in the `Link` component. */
11
15
  className?: string;
12
- /** Href attribute */
16
+ /** The `href` attribute for the anchor element. */
13
17
  href?: string;
14
- /** ID */
18
+ /** ID used for accessibility purposes. */
15
19
  id?: string;
16
- /** Controls the link visualsaction, button, or default. */
20
+ /** Controls the link visuals: action, button, backwards, forwards, or default. */
17
21
  type?: LinkTypes;
18
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
19
- modifiers?: string[];
20
- /** Any child node passed to the component. */
21
- children: React.ReactNode;
22
22
  }
23
23
  /**
24
- * A component that uses an `href` prop or a child anchor element, to create an
25
- * anchor element with added styling and conventions.
24
+ * A component that uses an `href` prop or a child anchor element, to create
25
+ * an anchor element with added styling and conventions.
26
26
  */
27
27
  declare const Link: React.ForwardRefExoticComponent<LinkProps & React.RefAttributes<HTMLAnchorElement>>;
28
28
  export default Link;
@@ -5,30 +5,35 @@ interface DefinitionProps {
5
5
  definition: string;
6
6
  }
7
7
  export interface ListProps {
8
- /** BlockName for use with BEM. See how to work with blockNames and
9
- * BEM here: http://getbem.com/introduction/ */
10
- blockName?: string;
8
+ /** Optionally pass in additional Chakra-based styles. */
9
+ additionalStyles?: {
10
+ [key: string]: any;
11
+ };
11
12
  /** ClassName you can add in addition to 'list' */
12
13
  className?: string;
13
14
  /** ID that other components can cross reference for accessibility purposes */
14
15
  id?: string;
15
- /** Modifiers array for use with BEM. See how to work with modifiers and
16
- * BEM here: http://getbem.com/introduction/ */
17
- modifiers?: any[];
18
- /** An optional title that will appear over the list. This prop only applies
19
- * to Definition Lists. */
20
- title?: string;
21
- /** Ordered, Unordered, or Definition */
22
- type: ListTypes;
16
+ /** Display the list in a row. */
17
+ inline?: boolean;
23
18
  /** Data to render if children are not passed. For `ListTypes.Ordered` and
24
19
  * `ListTypes.Unordered` `List` types, the data structure is an array of
25
20
  * strings to renders as `li` items. For `ListTypes.Definition` `List` types,
26
21
  * the data structure is an array of objects with `term` and `definition`
27
22
  * properties to render `dt` and `dd` elements, respectively.
28
23
  */
29
- listItems?: (string | DefinitionProps)[];
24
+ listItems?: (string | JSX.Element | DefinitionProps)[];
25
+ /** Remove list styling. */
26
+ noStyling?: boolean;
27
+ /** An optional title that will appear over the list. This prop only applies
28
+ * to Definition Lists. */
29
+ title?: string;
30
+ /** The type of list: Ordered, Unordered, or Definition. Unordered by default. */
31
+ type: ListTypes;
30
32
  }
31
- /** A component that renders list item `li` elements or definition item `dt`
32
- * and `dd` elements based on the `type` prop. */
33
+ /**
34
+ * A component that renders list item `li` elements or definition item `dt`
35
+ * and `dd` elements based on the `type` prop. Note that the `title` prop will
36
+ * only display for the `Definition` list type.
37
+ */
33
38
  export default function List(props: React.PropsWithChildren<ListProps>): any;
34
39
  export {};
@@ -1,25 +1,46 @@
1
1
  import React from "react";
2
2
  import { NotificationTypes } from "./NotificationTypes";
3
- export interface NotificationProps {
4
- /** BlockName for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
5
- blockName?: string;
3
+ interface BaseProps {
4
+ /** Optional prop to control text alignment in `NotificationContent` */
5
+ alignText?: boolean;
6
6
  /** Optional prop to control horizontal alignment of the `Notification` content */
7
7
  centered?: boolean;
8
- /** Optional `className` that appears in addition to "notification" */
8
+ /** Optional custom `Icon` that will override the default `Icon`. */
9
+ icon?: JSX.Element;
10
+ /** Optional prop to control the coloring of the `Notification` text and the
11
+ * visibility of an applicable icon. */
12
+ notificationType?: NotificationTypes;
13
+ }
14
+ declare type BasePropsWithoutAlignText = Omit<BaseProps, "alignText">;
15
+ declare type BasePropsWithoutCentered = Omit<BaseProps, "centered">;
16
+ export interface NotificationProps extends BasePropsWithoutAlignText {
17
+ /** Additional `className` to add. */
9
18
  className?: string;
10
- /** Optional prop to control whether a `Notification` can be dismissed (closed) by a user */
19
+ /** Optional prop to control whether a `Notification` can be dismissed
20
+ * (closed) by a user. */
11
21
  dismissible?: boolean;
12
- /** Optional custom `Icon` that will override the default `Icon` */
13
- icon?: React.ReactNode;
14
- /** ID that other components can cross reference for accessibility purposes */
22
+ /** Optional custom `Icon` that will override the default `Icon`. */
23
+ icon?: JSX.Element;
24
+ /** ID that other components can cross reference for accessibility purposes. */
15
25
  id?: string;
16
- /** Optional prop to control the margin around the `Notification` component */
26
+ /** Optional prop to control the margin around the `Notification` component. */
17
27
  noMargin?: boolean;
18
- /** Optional prop to control the coloring of notification text and the visibility of an applicable icon */
19
- notificationType?: NotificationTypes;
20
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
21
- modifiers?: string[];
28
+ /** Content to be rendered in a `NotificationContent` component. */
29
+ notificationContent: string | JSX.Element;
30
+ /** Content to be rendered in a `NotificationHeading` component. */
31
+ notificationHeading?: string;
22
32
  }
23
- export declare function NotificationHeading(props: any): JSX.Element;
24
- export declare function NotificationContent(props: any): JSX.Element;
25
- export default function Notification(props: React.PropsWithChildren<NotificationProps>): JSX.Element;
33
+ /**
34
+ * NotificationHeading child-component.
35
+ */
36
+ export declare function NotificationHeading(props: React.PropsWithChildren<BasePropsWithoutAlignText>): JSX.Element;
37
+ /**
38
+ * NotificationContent child-component.
39
+ */
40
+ export declare function NotificationContent(props: React.PropsWithChildren<BasePropsWithoutCentered>): JSX.Element;
41
+ /**
42
+ * Component used to present users with three different levels of notifications:
43
+ * standard, announcement, and warning.
44
+ */
45
+ export default function Notification(props: NotificationProps): JSX.Element;
46
+ export {};
@@ -1,20 +1,23 @@
1
- import * as React from "react";
1
+ import React from "react";
2
2
  export interface PaginationProps {
3
- /** BlockName for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
4
- blockName?: string;
5
- /** Additional className for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
3
+ /** Additional className. */
6
4
  className?: string;
7
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
8
- modifiers?: string[];
9
- /** The total number of pages. */
10
- pageCount: number;
5
+ /** The callback function that takes a page number and returns a string
6
+ * to use for a link's `href` attribute. This is used when the current
7
+ * page should refresh when navigating. */
8
+ getPageHref?: undefined | ((pageNumber: number) => string);
9
+ /** ID that other components can cross reference for accessibility purposes. */
10
+ id?: string;
11
11
  /** The current page selected. */
12
- currentPage: number;
13
- /** A method that returns a Link component given the target page */
14
- getPageHref?: (pageNumber: number) => string;
15
- /** The method to callback when an item is selected. Passes the selected page to the consuming app as an argument. */
12
+ initialPage: number;
13
+ /** The callback function called when an item is selected and the current
14
+ * page should not refresh. */
16
15
  onPageChange?: (selected: number) => void;
16
+ /** The total number of pages. */
17
+ pageCount: number;
17
18
  }
18
- /** A component that provides a navigational list of page items. */
19
+ /**
20
+ * A component that provides a navigational list of page items.
21
+ */
19
22
  declare const Pagination: React.FC<PaginationProps>;
20
23
  export default Pagination;
@@ -2,6 +2,8 @@ import { Story } from "@storybook/react/types-6-0";
2
2
  import { PaginationProps } from "./Pagination";
3
3
  /**
4
4
  * PaginationGetPageHref will refresh the browser as a new page is selected.
5
+ * In this example, `getPageHref` creates the `href` attribute for each
6
+ * page URL.
5
7
  */
6
8
  export declare const PaginationGetPageHref: Story<PaginationProps>;
7
9
  /**
@@ -0,0 +1,29 @@
1
+ import React from "react";
2
+ import { ProgressIndicatorSizes, ProgressIndicatorTypes } from "./ProgressIndicatorTypes";
3
+ export interface ProgressIndicatorProps {
4
+ /** Flag to render the component in a dark background. */
5
+ darkMode?: boolean;
6
+ /** ID that other components can cross reference for accessibility purposes. */
7
+ id?: string;
8
+ /** Whether the `ProgressIndicator` should be linear or circular. */
9
+ indicatorType?: ProgressIndicatorTypes;
10
+ /** Whether the progress animation should display because the `value` prop is
11
+ * not known. When this is set to `true`, the `value` prop will be ignored. */
12
+ isIndeterminate?: boolean;
13
+ /** The text to display in an HTML `label` element. */
14
+ labelText: string;
15
+ /** Visually show or hide the label text. When set to `false`, then the label
16
+ * text will be added to the parent component as its `aria-label` attribute. */
17
+ showLabel?: boolean;
18
+ /** The size of the linear or circular progress. */
19
+ size?: ProgressIndicatorSizes;
20
+ /** A number between 0 to 100 that defines the progress' value. */
21
+ value?: number;
22
+ }
23
+ /**
24
+ * A component that displays a progress status for any task that takes a long
25
+ * time to complete or consists of multiple steps. Examples include downloading,
26
+ * uploading, or processing.
27
+ */
28
+ declare const ProgressIndicator: React.FC<ProgressIndicatorProps>;
29
+ export default ProgressIndicator;
@@ -0,0 +1,8 @@
1
+ export declare enum ProgressIndicatorSizes {
2
+ Default = "default",
3
+ Small = "small"
4
+ }
5
+ export declare enum ProgressIndicatorTypes {
6
+ Circular = "circular",
7
+ Linear = "linear"
8
+ }
@@ -32,6 +32,8 @@ export interface RadioProps {
32
32
  name?: string;
33
33
  /** Should be passed along with `isChecked` for controlled components. */
34
34
  onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
35
+ /** Offers the ability to hide the helper/invalid text. */
36
+ showHelperInvalidText?: boolean;
35
37
  /** Offers the ability to show the radio's label onscreen or hide it. Refer
36
38
  * to the `labelText` property for more information. */
37
39
  showLabel?: boolean;
@@ -7,12 +7,12 @@ export interface RadioGroupProps {
7
7
  className?: string;
8
8
  /** Populates the initial value of the input */
9
9
  defaultValue?: string;
10
- /** Optional string to populate the HelperErrorText for error state */
11
- invalidText?: string;
12
10
  /** Optional string to populate the HelperErrorText for standard state */
13
11
  helperText?: string;
14
12
  /** ID that other components can cross reference for accessibility purposes */
15
13
  id?: string;
14
+ /** Optional string to populate the HelperErrorText for error state */
15
+ invalidText?: string;
16
16
  /** Adds the 'disabled' prop to the input when true. */
17
17
  isDisabled?: boolean;
18
18
  /** Adds the 'aria-invalid' attribute to the input and
@@ -31,6 +31,8 @@ export interface RadioGroupProps {
31
31
  onChange?: (value: string) => void;
32
32
  /** Whether or not to display "Required"/"Optional" in the label text. */
33
33
  optReqFlag?: boolean;
34
+ /** Offers the ability to hide the helper/invalid text. */
35
+ showHelperInvalidText?: boolean;
34
36
  /** Offers the ability to show the group's legend onscreen or hide it. Refer
35
37
  * to the `labelText` property for more information. */
36
38
  showLabel?: boolean;
@@ -1,34 +1,52 @@
1
1
  import * as React from "react";
2
+ interface SelectProps {
3
+ labelText: string;
4
+ name: string;
5
+ optionsData: string[];
6
+ }
7
+ interface TextInputProps {
8
+ labelText: string;
9
+ name: string;
10
+ onChange?: (event: React.ChangeEvent<HTMLInputElement> | React.ChangeEvent<HTMLTextAreaElement>) => void;
11
+ placeholder: string;
12
+ value?: string;
13
+ }
2
14
  export interface SearchBarProps {
3
- /** Populates aria-label on the form;
4
- * defines a hidden string that labels
5
- * the SearchBar
6
- */
7
- ariaLabel?: string;
8
- /** Populates aria-labelledby on the form;
9
- * defines a visible string that labels
10
- * the SearchBar
11
- */
12
- ariaLabelledBy?: string;
13
- /** Additional attributes passed to the form */
14
- attributes?: {
15
- [key: string]: any;
16
- };
17
- /** BlockName for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
18
- blockName?: string;
19
- /** ClassName that appears in addition to "search-bar" */
20
- className?: string;
21
- /** Adds 'method' property to the form */
22
- method?: string;
23
- /** Adds 'action' property to the form */
15
+ /** Adds 'action' property to the `form` element. */
24
16
  action?: string;
17
+ /** The onClick callback function for the `Button` component. */
18
+ buttonOnClick?: (event: React.MouseEvent | React.KeyboardEvent) => void;
19
+ /** A class name for the `form` element. */
20
+ className?: string;
21
+ /** The text to display below the form in a `HelperErrorText` component. */
22
+ helperErrorText?: string;
25
23
  /** ID that other components can cross reference for accessibility purposes */
26
24
  id?: string;
27
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
28
- modifiers?: string[];
29
- /** Handler on form submit */
25
+ /** Optional string to populate the `HelperErrorText` for the error state
26
+ * when `isInvalid` is true. */
27
+ invalidText?: string;
28
+ /** Sets children form components in the disabled state. */
29
+ isDisabled?: boolean;
30
+ /** Sets children form components in the error state. */
31
+ isInvalid?: boolean;
32
+ /** Sets children form components in the required state. */
33
+ isRequired?: boolean;
34
+ /** Populates the `aria-label` attribute on the form element. */
35
+ labelText: string;
36
+ /** Adds 'method' property to the `form` element. */
37
+ method?: string;
38
+ /** Handler function when the form is submitted. */
30
39
  onSubmit: (event: React.FormEvent) => void;
40
+ /** Required props to render a `Select` element. */
41
+ selectProps?: SelectProps | undefined;
42
+ /** Custom input element to render instead of a `TextInput` element. */
43
+ textInputElement?: JSX.Element;
44
+ /** Required props to render a `TextInput` element. */
45
+ textInputProps?: TextInputProps | undefined;
31
46
  }
32
- /** Renders a wrapper `form` element to be used with `Select` (optional),
33
- * `Input`, and `Button` components together. */
34
- export default function SearchBar(props: React.PropsWithChildren<SearchBarProps>): JSX.Element;
47
+ /**
48
+ * Renders a wrapper `form` element to be used with `Select` (optional),
49
+ * `Input`, and `Button` components together.
50
+ */
51
+ export default function SearchBar(props: SearchBarProps): JSX.Element;
52
+ export {};