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

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 (275) hide show
  1. package/CHANGELOG.md +91 -1
  2. package/README.md +1 -1
  3. package/dist/components/Breadcrumbs/BreadcrumbsTypes.d.ts +1 -0
  4. package/dist/components/Button/Button.d.ts +6 -6
  5. package/dist/components/Button/ButtonTypes.d.ts +0 -1
  6. package/dist/components/Card/Card.d.ts +6 -4
  7. package/dist/components/Checkbox/Checkbox.d.ts +3 -2
  8. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +3 -2
  9. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +8 -2
  10. package/dist/components/DatePicker/DatePicker.d.ts +3 -2
  11. package/dist/components/Form/Form.d.ts +2 -2
  12. package/dist/components/Heading/Heading.d.ts +7 -3
  13. package/dist/components/Heading/HeadingTypes.d.ts +6 -6
  14. package/dist/components/HelperErrorText/HelperErrorText.d.ts +5 -2
  15. package/dist/components/HorizontalRule/HorizontalRule.d.ts +2 -2
  16. package/dist/components/Icons/Icon.d.ts +4 -4
  17. package/dist/components/Icons/IconSvgs.d.ts +1 -21
  18. package/dist/components/Icons/IconTypes.d.ts +1 -23
  19. package/dist/components/Image/Image.d.ts +11 -3
  20. package/dist/components/Image/ImageTypes.d.ts +3 -1
  21. package/dist/components/Link/LinkTypes.d.ts +1 -0
  22. package/dist/components/Logo/Logo.d.ts +28 -0
  23. package/dist/components/Logo/LogoSvgs.d.ts +18 -0
  24. package/dist/components/Logo/LogoTypes.d.ts +30 -0
  25. package/dist/components/Modal/Modal.d.ts +0 -4
  26. package/dist/components/Notification/Notification.d.ts +4 -2
  27. package/dist/components/Placeholder/Placeholder.d.ts +3 -5
  28. package/dist/components/Radio/Radio.d.ts +6 -5
  29. package/dist/components/RadioGroup/RadioGroup.d.ts +3 -2
  30. package/dist/components/SearchBar/SearchBar.d.ts +10 -2
  31. package/dist/components/Select/Select.d.ts +5 -2
  32. package/dist/components/SkeletonLoader/SkeletonLoader.d.ts +8 -4
  33. package/dist/components/Slider/Slider.d.ts +3 -2
  34. package/dist/components/StatusBadge/StatusBadge.d.ts +2 -1
  35. package/dist/components/StructuredContent/StructuredContent.d.ts +41 -0
  36. package/dist/components/StructuredContent/StructuredContentTypes.d.ts +5 -0
  37. package/dist/components/Table/Table.d.ts +23 -0
  38. package/dist/components/Template/Template.d.ts +8 -3
  39. package/dist/components/Text/Text.d.ts +2 -2
  40. package/dist/components/TextInput/TextInput.d.ts +4 -3
  41. package/dist/components/Toggle/Toggle.d.ts +48 -0
  42. package/dist/components/Toggle/ToggleSizes.d.ts +4 -0
  43. package/dist/components/VideoPlayer/VideoPlayer.d.ts +17 -6
  44. package/dist/design-system-react-components.cjs.development.js +5989 -5490
  45. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  46. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  47. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  48. package/dist/design-system-react-components.esm.js +6057 -5551
  49. package/dist/design-system-react-components.esm.js.map +1 -1
  50. package/dist/index.d.ts +11 -4
  51. package/dist/styles.css +2 -2
  52. package/dist/theme/components/breadcrumb.d.ts +9 -0
  53. package/dist/theme/components/button.d.ts +0 -12
  54. package/dist/theme/components/card.d.ts +14 -2
  55. package/dist/theme/components/customTable.d.ts +47 -0
  56. package/dist/theme/components/fieldset.d.ts +2 -2
  57. package/dist/theme/components/global.d.ts +1 -1
  58. package/dist/theme/components/heading.d.ts +4 -0
  59. package/dist/theme/components/label.d.ts +1 -1
  60. package/dist/theme/components/link.d.ts +14 -1
  61. package/dist/theme/components/list.d.ts +0 -2
  62. package/dist/theme/components/logo.d.ts +4 -0
  63. package/dist/theme/components/notification.d.ts +8 -4
  64. package/dist/theme/components/searchBar.d.ts +7 -13
  65. package/dist/theme/components/select.d.ts +1 -0
  66. package/dist/theme/components/structuredContent.d.ts +33 -0
  67. package/dist/theme/components/template.d.ts +10 -10
  68. package/dist/theme/components/textInput.d.ts +2 -0
  69. package/dist/theme/components/toggle.d.ts +71 -0
  70. package/dist/theme/foundations/spacing.d.ts +2 -0
  71. package/dist/utils/utils.d.ts +10 -0
  72. package/package.json +2 -3
  73. package/src/__tests__/utils/utils.test.ts +23 -1
  74. package/src/components/Accordion/Accordion.stories.mdx +15 -14
  75. package/src/components/Autosuggest/Autosuggest.stories.mdx +2 -1
  76. package/src/components/Autosuggest/Autosuggest.stories.tsx +24 -48
  77. package/src/components/Autosuggest/_Autosuggest.scss +2 -6
  78. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +50 -14
  79. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +20 -0
  80. package/src/components/Breadcrumbs/BreadcrumbsTypes.tsx +1 -0
  81. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +198 -0
  82. package/src/components/Button/Button.stories.mdx +93 -48
  83. package/src/components/Button/Button.test.tsx +0 -12
  84. package/src/components/Button/Button.tsx +7 -8
  85. package/src/components/Button/ButtonTypes.tsx +0 -1
  86. package/src/components/Button/__snapshots__/Button.test.tsx.snap +0 -12
  87. package/src/components/Card/Card.stories.mdx +246 -64
  88. package/src/components/Card/Card.test.tsx +45 -22
  89. package/src/components/Card/Card.tsx +26 -13
  90. package/src/components/Card/__snapshots__/Card.test.tsx.snap +75 -37
  91. package/src/components/Chakra/Box.stories.mdx +3 -3
  92. package/src/components/Chakra/Center.stories.mdx +5 -5
  93. package/src/components/Chakra/Grid.stories.mdx +14 -17
  94. package/src/components/Chakra/Stack.stories.mdx +2 -2
  95. package/src/components/Checkbox/Checkbox.stories.mdx +37 -15
  96. package/src/components/Checkbox/Checkbox.tsx +13 -8
  97. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +48 -16
  98. package/src/components/CheckboxGroup/CheckboxGroup.tsx +14 -10
  99. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +6 -3
  100. package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +151 -0
  101. package/src/components/ComponentWrapper/ComponentWrapper.tsx +36 -23
  102. package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +85 -0
  103. package/src/components/DatePicker/DatePicker.stories.mdx +63 -18
  104. package/src/components/DatePicker/DatePicker.test.tsx +8 -6
  105. package/src/components/DatePicker/DatePicker.tsx +10 -6
  106. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +41 -22
  107. package/src/components/Fieldset/Fieldset.stories.mdx +19 -8
  108. package/src/components/Form/Form.stories.mdx +49 -41
  109. package/src/components/Form/Form.tsx +5 -4
  110. package/src/components/Grid/SimpleGrid.stories.mdx +26 -26
  111. package/src/components/Heading/Heading.stories.mdx +59 -23
  112. package/src/components/Heading/Heading.test.tsx +82 -18
  113. package/src/components/Heading/Heading.tsx +31 -31
  114. package/src/components/Heading/HeadingTypes.tsx +6 -6
  115. package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +71 -0
  116. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +55 -27
  117. package/src/components/HelperErrorText/HelperErrorText.test.tsx +42 -15
  118. package/src/components/HelperErrorText/HelperErrorText.tsx +24 -24
  119. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +41 -4
  120. package/src/components/Hero/Hero.stories.mdx +72 -53
  121. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +9 -8
  122. package/src/components/HorizontalRule/HorizontalRule.tsx +2 -4
  123. package/src/components/Icons/Icon.stories.mdx +77 -75
  124. package/src/components/Icons/Icon.tsx +4 -5
  125. package/src/components/Icons/IconSvgs.tsx +2 -42
  126. package/src/components/Icons/IconTypes.tsx +1 -24
  127. package/src/components/Image/Image.stories.mdx +214 -104
  128. package/src/components/Image/Image.test.tsx +10 -0
  129. package/src/components/Image/Image.tsx +21 -10
  130. package/src/components/Image/ImageTypes.ts +2 -0
  131. package/src/components/Image/__snapshots__/Image.test.tsx.snap +24 -8
  132. package/src/components/Label/Label.stories.mdx +21 -20
  133. package/src/components/Link/Link.stories.mdx +103 -53
  134. package/src/components/Link/Link.test.tsx +108 -7
  135. package/src/components/Link/Link.tsx +58 -19
  136. package/src/components/Link/LinkTypes.tsx +1 -0
  137. package/src/components/Link/__snapshots__/Link.test.tsx.snap +261 -0
  138. package/src/components/List/List.stories.mdx +36 -24
  139. package/src/components/Logo/Logo.stories.mdx +220 -0
  140. package/src/components/Logo/Logo.test.tsx +98 -0
  141. package/src/components/Logo/Logo.tsx +97 -0
  142. package/src/components/Logo/LogoSvgs.tsx +34 -0
  143. package/src/components/Logo/LogoTypes.tsx +32 -0
  144. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +71 -0
  145. package/src/components/Modal/Modal.stories.mdx +20 -5
  146. package/src/components/Modal/Modal.tsx +2 -8
  147. package/src/components/Notification/Notification.stories.mdx +96 -40
  148. package/src/components/Notification/Notification.test.tsx +62 -16
  149. package/src/components/Notification/Notification.tsx +26 -9
  150. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +121 -0
  151. package/src/components/Pagination/Pagination.stories.mdx +18 -8
  152. package/src/components/Pagination/Pagination.tsx +1 -1
  153. package/src/components/Pagination/__snapshots__/Pagination.test.tsx.snap +42 -0
  154. package/src/components/Placeholder/Placeholder.tsx +7 -14
  155. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +74 -46
  156. package/src/components/Radio/Radio.stories.mdx +39 -19
  157. package/src/components/Radio/Radio.tsx +13 -9
  158. package/src/components/RadioGroup/RadioGroup.stories.mdx +50 -16
  159. package/src/components/RadioGroup/RadioGroup.tsx +15 -11
  160. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +6 -3
  161. package/src/components/SearchBar/SearchBar.Test.tsx +114 -22
  162. package/src/components/SearchBar/SearchBar.stories.mdx +111 -33
  163. package/src/components/SearchBar/SearchBar.tsx +57 -33
  164. package/src/components/Select/Select.stories.mdx +177 -66
  165. package/src/components/Select/Select.test.tsx +2 -2
  166. package/src/components/Select/Select.tsx +22 -12
  167. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +50 -16
  168. package/src/components/SkeletonLoader/SkeletonLoader.tsx +8 -4
  169. package/src/components/Slider/Slider.stories.mdx +74 -23
  170. package/src/components/Slider/Slider.test.tsx +35 -0
  171. package/src/components/Slider/Slider.tsx +22 -11
  172. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +60 -30
  173. package/src/components/StatusBadge/StatusBadge.stories.mdx +33 -18
  174. package/src/components/StatusBadge/StatusBadge.tsx +2 -1
  175. package/src/components/StructuredContent/StructuredContent.stories.mdx +427 -0
  176. package/src/components/StructuredContent/StructuredContent.test.tsx +376 -0
  177. package/src/components/StructuredContent/StructuredContent.tsx +153 -0
  178. package/src/components/StructuredContent/StructuredContentTypes.tsx +5 -0
  179. package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +283 -0
  180. package/src/components/StyleGuide/Bidirectionality.stories.mdx +32 -83
  181. package/src/components/StyleGuide/Breakpoints.stories.mdx +1 -11
  182. package/src/components/StyleGuide/Buttons.stories.mdx +3 -18
  183. package/src/components/StyleGuide/ColorCard.tsx +1 -2
  184. package/src/components/StyleGuide/Colors.stories.mdx +3 -11
  185. package/src/components/StyleGuide/DesignTokens.stories.mdx +3 -8
  186. package/src/components/StyleGuide/Forms.stories.mdx +2 -10
  187. package/src/components/StyleGuide/Iconography.stories.mdx +8 -34
  188. package/src/components/StyleGuide/Spacing.stories.mdx +3 -14
  189. package/src/components/StyleGuide/Typography.stories.mdx +64 -76
  190. package/src/components/Table/Table.stories.mdx +66 -0
  191. package/src/components/Table/Table.test.tsx +60 -0
  192. package/src/components/Table/Table.tsx +116 -0
  193. package/src/components/Tabs/Tabs.stories.mdx +19 -13
  194. package/src/components/Tabs/Tabs.test.tsx +1 -1
  195. package/src/components/Template/Template.stories.mdx +57 -49
  196. package/src/components/Template/Template.test.tsx +65 -5
  197. package/src/components/Template/Template.tsx +35 -5
  198. package/src/components/Template/__snapshots__/Template.test.tsx.snap +76 -0
  199. package/src/components/Text/Text.stories.mdx +33 -11
  200. package/src/components/Text/Text.tsx +2 -2
  201. package/src/components/TextInput/TextInput.stories.mdx +84 -17
  202. package/src/components/TextInput/TextInput.test.tsx +96 -0
  203. package/src/components/TextInput/TextInput.tsx +12 -8
  204. package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +240 -0
  205. package/src/components/Toggle/Toggle.stories.mdx +200 -0
  206. package/src/components/Toggle/Toggle.test.tsx +140 -0
  207. package/src/components/Toggle/Toggle.tsx +123 -0
  208. package/src/components/Toggle/ToggleSizes.tsx +4 -0
  209. package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +255 -0
  210. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +96 -25
  211. package/src/components/VideoPlayer/VideoPlayer.test.tsx +103 -1
  212. package/src/components/VideoPlayer/VideoPlayer.tsx +72 -22
  213. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +57 -3
  214. package/src/docs/Chakra.stories.mdx +5 -8
  215. package/src/docs/Intro.stories.mdx +2 -2
  216. package/src/index.ts +13 -4
  217. package/src/styles/base/_03-base.scss +1 -1
  218. package/src/styles/base/_place-holder.scss +7 -7
  219. package/src/styles.scss +1 -5
  220. package/src/theme/components/breadcrumb.ts +14 -4
  221. package/src/theme/components/button.ts +5 -12
  222. package/src/theme/components/card.ts +9 -7
  223. package/src/theme/components/checkbox.ts +1 -1
  224. package/src/theme/components/customTable.ts +50 -0
  225. package/src/theme/components/datePicker.ts +1 -1
  226. package/src/theme/components/global.ts +7 -7
  227. package/src/theme/components/heading.ts +13 -11
  228. package/src/theme/components/helperErrorText.ts +1 -1
  229. package/src/theme/components/icon.ts +2 -2
  230. package/src/theme/components/image.ts +9 -1
  231. package/src/theme/components/link.ts +17 -5
  232. package/src/theme/components/list.ts +1 -3
  233. package/src/theme/components/logo.ts +54 -0
  234. package/src/theme/components/notification.ts +9 -7
  235. package/src/theme/components/searchBar.ts +7 -13
  236. package/src/theme/components/select.ts +1 -0
  237. package/src/theme/components/statusBadge.ts +1 -1
  238. package/src/theme/components/structuredContent.ts +54 -0
  239. package/src/theme/components/template.ts +10 -10
  240. package/src/theme/components/text.ts +6 -6
  241. package/src/theme/components/textInput.ts +1 -0
  242. package/src/theme/components/toggle.ts +69 -0
  243. package/src/theme/components/videoPlayer.ts +0 -2
  244. package/src/theme/foundations/global.ts +2 -2
  245. package/src/theme/foundations/spacing.ts +3 -0
  246. package/src/theme/foundations/typography.ts +84 -12
  247. package/src/theme/index.ts +8 -0
  248. package/src/utils/componentCategories.ts +4 -2
  249. package/src/utils/utils.ts +17 -0
  250. package/dist/__tests__/utils/bem.test.d.ts +0 -1
  251. package/dist/components/CardEdition/CardEdition.d.ts +0 -21
  252. package/dist/components/CardEdition/CardEdition.stories.d.ts +0 -27
  253. package/dist/components/Input/Input.d.ts +0 -36
  254. package/dist/components/Input/Input.stories.d.ts +0 -29
  255. package/dist/components/Input/InputTypes.d.ts +0 -6
  256. package/dist/components/StyleGuide/UIDocCard.d.ts +0 -11
  257. package/dist/helpers/CSSVariablesHelper.d.ts +0 -3
  258. package/dist/helpers/getCSSVariable.d.ts +0 -1
  259. package/dist/interfaces.d.ts +0 -3
  260. package/dist/utils/bem.d.ts +0 -1
  261. package/src/__tests__/utils/bem.test.ts +0 -37
  262. package/src/components/CardEdition/CardEdition.stories.tsx +0 -122
  263. package/src/components/CardEdition/CardEdition.test.tsx +0 -395
  264. package/src/components/CardEdition/CardEdition.tsx +0 -60
  265. package/src/components/CardEdition/_CardEdition.scss +0 -137
  266. package/src/components/Input/Input.stories.tsx +0 -133
  267. package/src/components/Input/Input.test.tsx +0 -266
  268. package/src/components/Input/Input.tsx +0 -81
  269. package/src/components/Input/InputTypes.tsx +0 -8
  270. package/src/components/Input/_Input.scss +0 -78
  271. package/src/components/StyleGuide/UIDocCard.tsx +0 -36
  272. package/src/helpers/CSSVariablesHelper.tsx +0 -34
  273. package/src/helpers/getCSSVariable.tsx +0 -5
  274. package/src/interfaces.ts +0 -3
  275. package/src/utils/bem.ts +0 -44
@@ -1,12 +1,13 @@
1
1
  import {
2
- Meta,
3
- Story,
4
2
  ArgsTable,
5
3
  Canvas,
6
4
  Description,
7
- } from "@storybook/addon-docs/blocks";
5
+ Meta,
6
+ Story,
7
+ } from "@storybook/addon-docs";
8
8
  import { withDesign } from "storybook-addon-designs";
9
9
  import { withQuery } from "@storybook/addon-queryparams";
10
+
10
11
  import Pagination from "./Pagination";
11
12
  import * as stories from "./Pagination.stories.tsx";
12
13
  import { getCategory } from "../../utils/componentCategories";
@@ -18,15 +19,16 @@ import { getCategory } from "../../utils/componentCategories";
18
19
  parameters={{
19
20
  design: {
20
21
  type: "figma",
21
- url:
22
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=17226%3A932",
22
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=17226%3A932",
23
23
  },
24
24
  jest: ["Pagination.test.tsx"],
25
25
  }}
26
26
  argTypes={{
27
- id: { table: { disable: true } },
28
- getPageHref: { table: { disable: true } },
29
- onPageChange: { table: { disable: true } },
27
+ className: { control: false },
28
+ getPageHref: { control: false },
29
+ id: { control: false },
30
+ initialPage: { table: { defaultValue: { summary: 1 } } },
31
+ onPageChange: { control: false },
30
32
  }}
31
33
  />
32
34
 
@@ -70,7 +72,11 @@ const getPageHref = (selectedPage: number) => {
70
72
  <Story
71
73
  name="Pagination with URL Updates"
72
74
  args={{
75
+ className: undefined,
76
+ getPageHref: undefined,
77
+ id: "pagination-id",
73
78
  initialPage: 1,
79
+ onPageChange: undefined,
74
80
  pageCount: 10,
75
81
  }}
76
82
  >
@@ -103,7 +109,11 @@ const onPageChange = (currentPage: number) => {
103
109
  <Story
104
110
  name="Pagination with Unchanging URL"
105
111
  args={{
112
+ className: undefined,
113
+ getPageHref: undefined,
114
+ id: "pagination-id-2",
106
115
  initialPage: 7,
116
+ onPageChange: undefined,
107
117
  pageCount: 100,
108
118
  }}
109
119
  >
@@ -31,9 +31,9 @@ export interface PaginationProps {
31
31
  const Pagination: React.FC<PaginationProps> = (props: PaginationProps) => {
32
32
  const {
33
33
  className,
34
- initialPage = 1,
35
34
  getPageHref,
36
35
  id = generateUUID(),
36
+ initialPage = 1,
37
37
  onPageChange = () => {},
38
38
  pageCount,
39
39
  } = props;
@@ -18,6 +18,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
18
18
  className="css-1858g8z"
19
19
  href="page=1"
20
20
  id="firstPage-1"
21
+ rel={null}
22
+ target={null}
21
23
  >
22
24
  1
23
25
  </a>
@@ -29,6 +31,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
29
31
  className="css-0"
30
32
  href="page=2"
31
33
  id="firstPage-2"
34
+ rel={null}
35
+ target={null}
32
36
  >
33
37
  2
34
38
  </a>
@@ -40,6 +44,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
40
44
  className="css-0"
41
45
  href="page=3"
42
46
  id="firstPage-3"
47
+ rel={null}
48
+ target={null}
43
49
  >
44
50
  3
45
51
  </a>
@@ -51,6 +57,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
51
57
  className="css-0"
52
58
  href="page=4"
53
59
  id="firstPage-4"
60
+ rel={null}
61
+ target={null}
54
62
  >
55
63
  4
56
64
  </a>
@@ -62,6 +70,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
62
70
  className="css-0"
63
71
  href="page=5"
64
72
  id="firstPage-5"
73
+ rel={null}
74
+ target={null}
65
75
  >
66
76
  5
67
77
  </a>
@@ -76,6 +86,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
76
86
  className="css-0"
77
87
  href="page=10"
78
88
  id="firstPage-10"
89
+ rel={null}
90
+ target={null}
79
91
  >
80
92
  10
81
93
  </a>
@@ -86,6 +98,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 1`] = `
86
98
  className="css-0"
87
99
  href="page=2"
88
100
  id="firstPage-Next"
101
+ rel={null}
102
+ target={null}
89
103
  >
90
104
  Next
91
105
  </a>
@@ -111,6 +125,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
111
125
  className="css-0"
112
126
  href="page=9"
113
127
  id="lastPage-Previous"
128
+ rel={null}
129
+ target={null}
114
130
  >
115
131
  Previous
116
132
  </a>
@@ -122,6 +138,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
122
138
  className="css-0"
123
139
  href="page=1"
124
140
  id="lastPage-1"
141
+ rel={null}
142
+ target={null}
125
143
  >
126
144
  1
127
145
  </a>
@@ -136,6 +154,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
136
154
  className="css-0"
137
155
  href="page=6"
138
156
  id="lastPage-6"
157
+ rel={null}
158
+ target={null}
139
159
  >
140
160
  6
141
161
  </a>
@@ -147,6 +167,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
147
167
  className="css-0"
148
168
  href="page=7"
149
169
  id="lastPage-7"
170
+ rel={null}
171
+ target={null}
150
172
  >
151
173
  7
152
174
  </a>
@@ -158,6 +180,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
158
180
  className="css-0"
159
181
  href="page=8"
160
182
  id="lastPage-8"
183
+ rel={null}
184
+ target={null}
161
185
  >
162
186
  8
163
187
  </a>
@@ -169,6 +193,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
169
193
  className="css-0"
170
194
  href="page=9"
171
195
  id="lastPage-9"
196
+ rel={null}
197
+ target={null}
172
198
  >
173
199
  9
174
200
  </a>
@@ -180,6 +206,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 2`] = `
180
206
  className="css-1858g8z"
181
207
  href="page=10"
182
208
  id="lastPage-10"
209
+ rel={null}
210
+ target={null}
183
211
  >
184
212
  10
185
213
  </a>
@@ -205,6 +233,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
205
233
  className="css-0"
206
234
  href="page=4"
207
235
  id="middlePage-Previous"
236
+ rel={null}
237
+ target={null}
208
238
  >
209
239
  Previous
210
240
  </a>
@@ -216,6 +246,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
216
246
  className="css-0"
217
247
  href="page=1"
218
248
  id="middlePage-1"
249
+ rel={null}
250
+ target={null}
219
251
  >
220
252
  1
221
253
  </a>
@@ -230,6 +262,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
230
262
  className="css-0"
231
263
  href="page=4"
232
264
  id="middlePage-4"
265
+ rel={null}
266
+ target={null}
233
267
  >
234
268
  4
235
269
  </a>
@@ -241,6 +275,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
241
275
  className="css-1858g8z"
242
276
  href="page=5"
243
277
  id="middlePage-5"
278
+ rel={null}
279
+ target={null}
244
280
  >
245
281
  5
246
282
  </a>
@@ -252,6 +288,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
252
288
  className="css-0"
253
289
  href="page=6"
254
290
  id="middlePage-6"
291
+ rel={null}
292
+ target={null}
255
293
  >
256
294
  6
257
295
  </a>
@@ -266,6 +304,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
266
304
  className="css-0"
267
305
  href="page=10"
268
306
  id="middlePage-10"
307
+ rel={null}
308
+ target={null}
269
309
  >
270
310
  10
271
311
  </a>
@@ -276,6 +316,8 @@ exports[`Pagination Rendering Renders the UI snapshot correctly 3`] = `
276
316
  className="css-0"
277
317
  href="page=6"
278
318
  id="middlePage-Next"
319
+ rel={null}
320
+ target={null}
279
321
  >
280
322
  Next
281
323
  </a>
@@ -1,24 +1,17 @@
1
1
  import * as React from "react";
2
- import bem from "../../utils/bem";
3
2
 
4
3
  export interface PlaceholderProps {
5
- /** BlockName for use with BEM. See how to work with blockNames and BEM here: http://getbem.com/introduction/ */
6
- blockName?: string;
7
- /** Modifiers array for use with BEM. See how to work with modifiers and BEM here: http://getbem.com/introduction/ */
8
- modifiers?: string[];
4
+ /** Modifier string for the classname. */
5
+ variant?: string;
9
6
  }
10
7
 
11
8
  /** Creates a gray box with an editable string for dropping in spaces
12
9
  * within components or on templates where a component will be but
13
10
  * that hasn't been created yet
14
11
  */
15
- export default function Placeholder(
16
- props: React.PropsWithChildren<PlaceholderProps>
17
- ) {
18
- const { modifiers = [], blockName } = props;
19
- return (
20
- <div className={bem("placeholder", modifiers, blockName)}>
21
- {props.children}
22
- </div>
23
- );
12
+ export default function Placeholder({
13
+ children,
14
+ variant,
15
+ }: React.PropsWithChildren<PlaceholderProps>) {
16
+ return <div className={`placeholder placeholder-${variant}`}>{children}</div>;
24
17
  }
@@ -1,22 +1,32 @@
1
+ import { Box } from "@chakra-ui/react";
1
2
  import {
2
- Meta,
3
- Story,
4
3
  ArgsTable,
5
4
  Canvas,
6
5
  Description,
7
- } from "@storybook/addon-docs/blocks";
6
+ Meta,
7
+ Story,
8
+ } from "@storybook/addon-docs";
8
9
  import { withDesign } from "storybook-addon-designs";
9
- import { Box } from "@chakra-ui/react";
10
10
 
11
+ import { GridGaps } from "../Grid/GridTypes";
11
12
  import ProgressIndicator from "./ProgressIndicator";
12
13
  import {
13
14
  ProgressIndicatorSizes,
14
15
  ProgressIndicatorTypes,
15
16
  } from "./ProgressIndicatorTypes";
17
+ import SimpleGrid from "../Grid/SimpleGrid";
16
18
  import { getCategory } from "../../utils/componentCategories";
17
19
  import DSProvider from "../../theme/provider";
18
- import SimpleGrid from "../Grid/SimpleGrid";
19
- import { GridGaps } from "../Grid/GridTypes";
20
+ import { getStorybookEnumValues } from "../../utils/utils";
21
+
22
+ export const sizesEnumValues = getStorybookEnumValues(
23
+ ProgressIndicatorSizes,
24
+ "ProgressIndicatorSizes"
25
+ );
26
+ export const typesEnumValues = getStorybookEnumValues(
27
+ ProgressIndicatorTypes,
28
+ "ProgressIndicatorTypes"
29
+ );
20
30
 
21
31
  <Meta
22
32
  title={getCategory("ProgressIndicator")}
@@ -25,13 +35,34 @@ import { GridGaps } from "../Grid/GridTypes";
25
35
  parameters={{
26
36
  design: {
27
37
  type: "figma",
28
- url:
29
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=37638%3A23842",
38
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Main?node-id=37638%3A23842",
30
39
  },
31
40
  jest: ["ProgressIndicator.test.tsx"],
32
41
  }}
33
42
  argTypes={{
34
- id: { table: { disable: true } },
43
+ darkMode: {
44
+ table: { defaultValue: { summary: false } },
45
+ },
46
+ id: { control: false },
47
+ indicatorType: {
48
+ control: { type: "radio" },
49
+ table: { defaultValue: { summary: "ProgressIndicatorTypes.Linear" } },
50
+ options: typesEnumValues.options,
51
+ },
52
+ isIndeterminate: {
53
+ table: { defaultValue: { summary: false } },
54
+ },
55
+ showLabel: {
56
+ table: { defaultValue: { summary: true } },
57
+ },
58
+ size: {
59
+ control: { type: "radio" },
60
+ table: { defaultValue: { summary: "ProgressIndicatorSizes.Default" } },
61
+ options: sizesEnumValues.options,
62
+ },
63
+ value: {
64
+ table: { defaultValue: { summary: 0 } },
65
+ },
35
66
  }}
36
67
  />
37
68
 
@@ -40,28 +71,35 @@ import { GridGaps } from "../Grid/GridTypes";
40
71
  | Component Version | DS Version |
41
72
  | ----------------- | ---------- |
42
73
  | Added | `0.25.4` |
43
- | Latest | `0.25.4` |
74
+ | Latest | `0.25.8` |
44
75
 
45
76
  <Description of={ProgressIndicator} />
46
77
 
47
78
  <Canvas withToolbar>
48
79
  <Story
49
- name="Basic with props"
80
+ name="ProgressIndicator with Controls"
50
81
  args={{
51
82
  darkMode: false,
52
- indicatorType: ProgressIndicatorTypes.Linear,
83
+ id: "progressIndicator-id",
84
+ indicatorType: "ProgressIndicatorTypes.Linear",
53
85
  isIndeterminate: false,
54
86
  labelText: "Progress",
55
87
  showLabel: true,
56
- size: ProgressIndicatorSizes.Default,
88
+ size: "ProgressIndicatorSizes.Default",
57
89
  value: 50,
58
90
  }}
59
91
  >
60
- {(args) => <ProgressIndicator {...args} />}
92
+ {(args) => (
93
+ <ProgressIndicator
94
+ {...args}
95
+ indicatorType={typesEnumValues.getValue(args.indicatorType)}
96
+ size={sizesEnumValues.getValue(args.size)}
97
+ />
98
+ )}
61
99
  </Story>
62
100
  </Canvas>
63
101
 
64
- <ArgsTable story="Basic with props" />
102
+ <ArgsTable story="ProgressIndicator with Controls" />
65
103
 
66
104
  ## Linear Type
67
105
 
@@ -71,20 +109,15 @@ dialogs, etc.
71
109
  <Canvas>
72
110
  <Story
73
111
  name="Linear Type"
74
- args={{
75
- darkMode: false,
76
- indicatorType: ProgressIndicatorTypes.Linear,
77
- isIndeterminate: false,
78
- labelText: "Linear Progress Type",
79
- showLabel: true,
80
- size: ProgressIndicatorSizes.Default,
81
- value: 50,
82
- }}
83
112
  argTypes={{
84
113
  indicatorType: { table: { disable: true } },
85
114
  }}
86
115
  >
87
- {(args) => <ProgressIndicator {...args} />}
116
+ <ProgressIndicator
117
+ indicatorType={ProgressIndicatorTypes.Linear}
118
+ labelText="Linear Progress Type"
119
+ value={50}
120
+ />
88
121
  </Story>
89
122
  </Canvas>
90
123
 
@@ -97,20 +130,15 @@ full-screen loading. Set the `indicatorType` prop to
97
130
  <Canvas>
98
131
  <Story
99
132
  name="Circular Type"
100
- args={{
101
- darkMode: false,
102
- indicatorType: ProgressIndicatorTypes.Circular,
103
- isIndeterminate: false,
104
- labelText: "Circular Progress Type",
105
- showLabel: true,
106
- size: ProgressIndicatorSizes.Default,
107
- value: 50,
108
- }}
109
133
  argTypes={{
110
134
  indicatorType: { table: { disable: true } },
111
135
  }}
112
136
  >
113
- {(args) => <ProgressIndicator {...args} />}
137
+ <ProgressIndicator
138
+ indicatorType={ProgressIndicatorTypes.Circular}
139
+ labelText="Linear Progress Type"
140
+ value={50}
141
+ />
114
142
  </Story>
115
143
  </Canvas>
116
144
 
@@ -146,13 +174,13 @@ percentage will not displayed.
146
174
  <DSProvider>
147
175
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
148
176
  <ProgressIndicator
149
- labelText="Default 48px size"
150
177
  indicatorType={ProgressIndicatorTypes.Circular}
178
+ labelText="Default 48px size"
151
179
  value={50}
152
180
  />
153
181
  <ProgressIndicator
154
- labelText="Small 24px size"
155
182
  indicatorType={ProgressIndicatorTypes.Circular}
183
+ labelText="Small 24px size"
156
184
  size={ProgressIndicatorSizes.Small}
157
185
  value={50}
158
186
  />
@@ -175,14 +203,14 @@ the progress element to provide a description of the progress for screen readers
175
203
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
176
204
  <ProgressIndicator
177
205
  labelText="This label will be added through aria-label"
178
- value={50}
179
206
  showLabel={false}
207
+ value={50}
180
208
  />
181
209
  <ProgressIndicator
182
- labelText="This label will be added through aria-label"
183
210
  indicatorType={ProgressIndicatorTypes.Circular}
184
- value={50}
211
+ labelText="This label will be added through aria-label"
185
212
  showLabel={false}
213
+ value={50}
186
214
  />
187
215
  </SimpleGrid>
188
216
  </DSProvider>
@@ -198,14 +226,14 @@ exact value or progress of the task is unknown.
198
226
  <DSProvider>
199
227
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
200
228
  <ProgressIndicator
201
- labelText="Indeterminate state"
202
229
  isIndeterminate
230
+ labelText="Indeterminate state"
203
231
  value={50}
204
232
  />
205
233
  <ProgressIndicator
206
- labelText="Indeterminate state"
207
234
  indicatorType={ProgressIndicatorTypes.Circular}
208
235
  isIndeterminate
236
+ labelText="Indeterminate state"
209
237
  value={50}
210
238
  />
211
239
  </SimpleGrid>
@@ -225,10 +253,10 @@ Note: the background is manually set to better showcase the `darkMode` prop.
225
253
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
226
254
  <ProgressIndicator labelText="Dark Mode" value={50} darkMode />
227
255
  <ProgressIndicator
228
- labelText="Dark Mode"
256
+ darkMode
229
257
  indicatorType={ProgressIndicatorTypes.Circular}
258
+ labelText="Dark Mode"
230
259
  value={50}
231
- darkMode
232
260
  />
233
261
  </SimpleGrid>
234
262
  </Box>
@@ -256,8 +284,8 @@ function ProgressIndicatorExample() {
256
284
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
257
285
  <ProgressIndicator labelText="Progress example" value={value} />
258
286
  <ProgressIndicator
259
- labelText="Progress example"
260
287
  indicatorType={ProgressIndicatorTypes.Circular}
288
+ labelText="Progress example"
261
289
  value={value}
262
290
  />
263
291
  </SimpleGrid>
@@ -277,8 +305,8 @@ export function ProgressIndicatorExample() {
277
305
  <SimpleGrid columns={1} gap={GridGaps.Medium}>
278
306
  <ProgressIndicator labelText="Progress example" value={value} />
279
307
  <ProgressIndicator
280
- labelText="Progress example"
281
308
  indicatorType={ProgressIndicatorTypes.Circular}
309
+ labelText="Progress example"
282
310
  value={value}
283
311
  />
284
312
  </SimpleGrid>
@@ -1,16 +1,16 @@
1
+ import { HStack } from "@chakra-ui/react";
1
2
  import {
2
- Meta,
3
- Story,
4
- Canvas,
5
3
  ArgsTable,
4
+ Canvas,
6
5
  Description,
6
+ Meta,
7
+ Story,
7
8
  } from "@storybook/addon-docs";
8
9
  import { withDesign } from "storybook-addon-designs";
9
- import { HStack } from "@chakra-ui/react";
10
10
 
11
+ import Radio from "./Radio";
11
12
  import { getCategory } from "../../utils/componentCategories";
12
13
  import DSProvider from "../../theme/provider";
13
- import Radio from "./Radio";
14
14
 
15
15
  <Meta
16
16
  title={getCategory("Radio")}
@@ -19,16 +19,32 @@ import Radio from "./Radio";
19
19
  parameters={{
20
20
  design: {
21
21
  type: "figma",
22
- url:
23
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11895%3A742",
22
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=11895%3A742",
24
23
  },
25
24
  jest: ["Radio.test.tsx"],
26
25
  }}
27
26
  argTypes={{
28
- className: { table: { disable: true } },
29
- id: { table: { disable: true } },
30
- isChecked: { table: { disable: true } },
31
- onChange: { table: { disable: true } },
27
+ className: { control: false },
28
+ id: { control: false },
29
+ isChecked: { control: false },
30
+ isDisabled: {
31
+ table: { defaultValue: { summary: false } },
32
+ },
33
+ isInvalid: {
34
+ table: { defaultValue: { summary: false } },
35
+ },
36
+ isRequired: {
37
+ table: { defaultValue: { summary: false } },
38
+ },
39
+ key: { table: { disable: true } },
40
+ onChange: { control: false },
41
+ ref: { table: { disable: true } },
42
+ showHelperInvalidText: {
43
+ table: { defaultValue: { summary: true } },
44
+ },
45
+ showLabel: {
46
+ table: { defaultValue: { summary: true } },
47
+ },
32
48
  }}
33
49
  />
34
50
 
@@ -37,7 +53,7 @@ import Radio from "./Radio";
37
53
  | Component Version | DS Version |
38
54
  | ----------------- | ---------- |
39
55
  | Added | `0.22.0` |
40
- | Latest | `0.25.0` |
56
+ | Latest | `0.25.9` |
41
57
 
42
58
  <Description of={Radio} />
43
59
 
@@ -50,16 +66,20 @@ component will handle all the states and data management.
50
66
  <Story
51
67
  name="Radio"
52
68
  args={{
69
+ className: undefined,
70
+ helperText: "This is the helper text!",
71
+ id: "radio-id",
72
+ invalidText: "This is the error text :(",
73
+ isChecked: undefined,
74
+ isDisabled: false,
75
+ isInvalid: false,
76
+ isRequired: false,
53
77
  labelText: "Test Label",
54
- showLabel: true,
55
- id: "test_id",
56
78
  name: "test_name",
79
+ onChange: undefined,
80
+ showHelperInvalidText: true,
81
+ showLabel: true,
57
82
  value: "1",
58
- isDisabled: false,
59
- isRequired: false,
60
- isInvalid: false,
61
- helperText: "This is the helper text!",
62
- invalidText: "This is the error text :(",
63
83
  }}
64
84
  >
65
85
  {(args) => <Radio {...args} />}
@@ -5,20 +5,22 @@ import {
5
5
  useMultiStyleConfig,
6
6
  } from "@chakra-ui/react";
7
7
 
8
+ import HelperErrorText, {
9
+ HelperErrorTextType,
10
+ } from "../HelperErrorText/HelperErrorText";
8
11
  import generateUUID from "../../helpers/generateUUID";
9
- import HelperErrorText from "../HelperErrorText/HelperErrorText";
10
12
 
11
13
  export interface RadioProps {
12
14
  /** Additional class name. */
13
15
  className?: string;
14
- /** Optional string to populate the HelperErrorText for the error state
15
- * when `isInvalid` is true.
16
- */
17
- invalidText?: string;
18
16
  /** Optional string to populate the HelperErrorText for the standard state. */
19
- helperText?: string;
17
+ helperText?: HelperErrorTextType;
20
18
  /** ID that other components can cross reference for accessibility purposes */
21
19
  id?: string;
20
+ /** Optional string to populate the HelperErrorText for the error state
21
+ * when `isInvalid` is true.
22
+ */
23
+ invalidText?: HelperErrorTextType;
22
24
  /** When using the Radio as a "controlled" form element, you can specify the
23
25
  * `Radio`'s checked state using this prop. You must also pass an onChange prop.
24
26
  * Learn more about controlled and uncontrolled form fields: https://goshakkk.name/controlled-vs-uncontrolled-inputs-react/ */
@@ -100,9 +102,11 @@ const Radio = React.forwardRef<HTMLInputElement, RadioProps>((props, ref?) => {
100
102
  </ChakraRadio>
101
103
  {footnote && showHelperInvalidText && (
102
104
  <Box __css={styles.helper} aria-disabled={isDisabled}>
103
- <HelperErrorText isInvalid={isInvalid} id={`${id}-helperText`}>
104
- {footnote}
105
- </HelperErrorText>
105
+ <HelperErrorText
106
+ id={`${id}-helperText`}
107
+ isInvalid={isInvalid}
108
+ text={footnote}
109
+ />
106
110
  </Box>
107
111
  )}
108
112
  </>