@nypl/design-system-react-components 0.25.8 → 0.25.11

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 (282) hide show
  1. package/CHANGELOG.md +110 -1
  2. package/README.md +1 -1
  3. package/dist/components/Button/Button.d.ts +6 -6
  4. package/dist/components/Button/ButtonTypes.d.ts +0 -1
  5. package/dist/components/Card/Card.d.ts +6 -4
  6. package/dist/components/Checkbox/Checkbox.d.ts +3 -2
  7. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +3 -2
  8. package/dist/components/ComponentWrapper/ComponentWrapper.d.ts +8 -2
  9. package/dist/components/DatePicker/DatePicker.d.ts +4 -3
  10. package/dist/components/Fieldset/Fieldset.d.ts +1 -3
  11. package/dist/components/Form/Form.d.ts +15 -14
  12. package/dist/components/Form/FormTypes.d.ts +2 -2
  13. package/dist/components/Heading/Heading.d.ts +7 -3
  14. package/dist/components/Heading/HeadingTypes.d.ts +6 -6
  15. package/dist/components/HelperErrorText/HelperErrorText.d.ts +5 -2
  16. package/dist/components/HorizontalRule/HorizontalRule.d.ts +3 -3
  17. package/dist/components/Icons/Icon.d.ts +4 -4
  18. package/dist/components/Icons/IconSvgs.d.ts +0 -21
  19. package/dist/components/Icons/IconTypes.d.ts +0 -23
  20. package/dist/components/Image/Image.d.ts +11 -3
  21. package/dist/components/List/List.d.ts +1 -1
  22. package/dist/components/Logo/Logo.d.ts +28 -0
  23. package/dist/components/Logo/LogoSvgs.d.ts +34 -0
  24. package/dist/components/Logo/LogoTypes.d.ts +46 -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 +6 -5
  30. package/dist/components/SearchBar/SearchBar.d.ts +15 -7
  31. package/dist/components/Select/Select.d.ts +7 -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 +29 -0
  38. package/dist/components/Template/Template.d.ts +30 -6
  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 +3 -2
  42. package/dist/components/VideoPlayer/VideoPlayer.d.ts +14 -5
  43. package/dist/design-system-react-components.cjs.development.js +6721 -5777
  44. package/dist/design-system-react-components.cjs.development.js.map +1 -1
  45. package/dist/design-system-react-components.cjs.production.min.js +1 -1
  46. package/dist/design-system-react-components.cjs.production.min.js.map +1 -1
  47. package/dist/design-system-react-components.esm.js +6774 -5839
  48. package/dist/design-system-react-components.esm.js.map +1 -1
  49. package/dist/index.d.ts +10 -8
  50. package/dist/resources.scss +0 -2
  51. package/dist/styles.css +2 -2
  52. package/dist/theme/components/breadcrumb.d.ts +1 -1
  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 +56 -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 +13 -4
  64. package/dist/theme/components/searchBar.d.ts +9 -11
  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 +4 -0
  69. package/dist/theme/components/toggle.d.ts +8 -5
  70. package/dist/utils/utils.d.ts +10 -0
  71. package/package.json +40 -37
  72. package/src/__tests__/utils/utils.test.ts +23 -1
  73. package/src/components/Accordion/Accordion.stories.mdx +15 -13
  74. package/src/components/Accordion/Accordion.test.tsx +45 -1
  75. package/src/components/Accordion/Accordion.tsx +20 -8
  76. package/src/components/Accordion/__snapshots__/Accordion.test.tsx.snap +243 -0
  77. package/src/components/Autosuggest/Autosuggest.stories.mdx +2 -1
  78. package/src/components/Autosuggest/Autosuggest.stories.tsx +24 -48
  79. package/src/components/Autosuggest/_Autosuggest.scss +2 -6
  80. package/src/components/Breadcrumbs/Breadcrumbs.stories.mdx +43 -13
  81. package/src/components/Breadcrumbs/Breadcrumbs.test.tsx +15 -0
  82. package/src/components/Breadcrumbs/Breadcrumbs.tsx +9 -3
  83. package/src/components/Breadcrumbs/__snapshots__/Breadcrumbs.test.tsx.snap +5 -5
  84. package/src/components/Button/Button.stories.mdx +93 -48
  85. package/src/components/Button/Button.test.tsx +0 -12
  86. package/src/components/Button/Button.tsx +7 -7
  87. package/src/components/Button/ButtonTypes.tsx +0 -1
  88. package/src/components/Button/__snapshots__/Button.test.tsx.snap +0 -12
  89. package/src/components/Card/Card.stories.mdx +186 -71
  90. package/src/components/Card/Card.test.tsx +45 -22
  91. package/src/components/Card/Card.tsx +21 -6
  92. package/src/components/Card/__snapshots__/Card.test.tsx.snap +9 -3
  93. package/src/components/Chakra/Box.stories.mdx +3 -3
  94. package/src/components/Chakra/Center.stories.mdx +5 -5
  95. package/src/components/Chakra/Flex.stories.mdx +113 -0
  96. package/src/components/Chakra/Grid.stories.mdx +3 -3
  97. package/src/components/Chakra/Stack.stories.mdx +2 -2
  98. package/src/components/Checkbox/Checkbox.stories.mdx +37 -15
  99. package/src/components/Checkbox/Checkbox.tsx +13 -8
  100. package/src/components/CheckboxGroup/CheckboxGroup.stories.mdx +48 -16
  101. package/src/components/CheckboxGroup/CheckboxGroup.tsx +14 -10
  102. package/src/components/CheckboxGroup/__snapshots__/CheckboxGroup.test.tsx.snap +6 -3
  103. package/src/components/ComponentWrapper/ComponentWrapper.test.tsx +151 -0
  104. package/src/components/ComponentWrapper/ComponentWrapper.tsx +36 -23
  105. package/src/components/ComponentWrapper/__snapshots__/ComponentWrapper.test.tsx.snap +85 -0
  106. package/src/components/DatePicker/DatePicker.stories.mdx +63 -18
  107. package/src/components/DatePicker/DatePicker.test.tsx +6 -6
  108. package/src/components/DatePicker/DatePicker.tsx +17 -11
  109. package/src/components/DatePicker/__snapshots__/DatePicker.test.tsx.snap +50 -24
  110. package/src/components/Fieldset/Fieldset.stories.mdx +20 -9
  111. package/src/components/Fieldset/Fieldset.tsx +2 -4
  112. package/src/components/Form/Form.stories.mdx +75 -49
  113. package/src/components/Form/Form.test.tsx +92 -3
  114. package/src/components/Form/Form.tsx +28 -23
  115. package/src/components/Form/FormTypes.tsx +2 -2
  116. package/src/components/Form/__snapshots__/Form.test.tsx.snap +0 -1
  117. package/src/components/Grid/SimpleGrid.stories.mdx +26 -26
  118. package/src/components/Heading/Heading.stories.mdx +59 -23
  119. package/src/components/Heading/Heading.test.tsx +82 -18
  120. package/src/components/Heading/Heading.tsx +31 -31
  121. package/src/components/Heading/HeadingTypes.tsx +6 -6
  122. package/src/components/Heading/__snapshots__/Heading.test.tsx.snap +71 -0
  123. package/src/components/HelperErrorText/HelperErrorText.stories.mdx +55 -27
  124. package/src/components/HelperErrorText/HelperErrorText.test.tsx +42 -15
  125. package/src/components/HelperErrorText/HelperErrorText.tsx +24 -24
  126. package/src/components/HelperErrorText/__snapshots__/HelperErrorText.test.tsx.snap +41 -4
  127. package/src/components/Hero/Hero.stories.mdx +72 -53
  128. package/src/components/HorizontalRule/HorizontalRule.stories.mdx +11 -9
  129. package/src/components/HorizontalRule/HorizontalRule.tsx +4 -6
  130. package/src/components/HorizontalRule/__snapshots__/HorizontalRule.test.tsx.snap +4 -4
  131. package/src/components/Icons/Icon.stories.mdx +78 -77
  132. package/src/components/Icons/Icon.test.tsx +1 -1
  133. package/src/components/Icons/Icon.tsx +5 -6
  134. package/src/components/Icons/IconSvgs.tsx +0 -42
  135. package/src/components/Icons/IconTypes.tsx +0 -24
  136. package/src/components/Image/Image.stories.mdx +66 -18
  137. package/src/components/Image/Image.tsx +21 -10
  138. package/src/components/Label/Label.stories.mdx +20 -19
  139. package/src/components/Link/Link.stories.mdx +102 -51
  140. package/src/components/Link/Link.test.tsx +38 -8
  141. package/src/components/Link/Link.tsx +19 -12
  142. package/src/components/Link/__snapshots__/Link.test.tsx.snap +60 -0
  143. package/src/components/List/List.stories.mdx +60 -29
  144. package/src/components/List/List.test.tsx +1 -1
  145. package/src/components/List/List.tsx +2 -2
  146. package/src/components/List/__snapshots__/List.test.tsx.snap +3 -1
  147. package/src/components/Logo/Logo.stories.mdx +222 -0
  148. package/src/components/Logo/Logo.test.tsx +98 -0
  149. package/src/components/Logo/Logo.tsx +97 -0
  150. package/src/components/Logo/LogoSvgs.tsx +66 -0
  151. package/src/components/Logo/LogoTypes.tsx +48 -0
  152. package/src/components/Logo/__snapshots__/Logo.test.tsx.snap +71 -0
  153. package/src/components/Modal/Modal.stories.mdx +20 -5
  154. package/src/components/Modal/Modal.tsx +2 -8
  155. package/src/components/Notification/Notification.stories.mdx +128 -38
  156. package/src/components/Notification/Notification.test.tsx +49 -1
  157. package/src/components/Notification/Notification.tsx +25 -12
  158. package/src/components/Notification/__snapshots__/Notification.test.tsx.snap +4 -0
  159. package/src/components/Pagination/Pagination.stories.mdx +18 -7
  160. package/src/components/Pagination/Pagination.tsx +3 -3
  161. package/src/components/Placeholder/Placeholder.tsx +7 -14
  162. package/src/components/ProgressIndicator/ProgressIndicator.stories.mdx +72 -43
  163. package/src/components/Radio/Radio.stories.mdx +39 -19
  164. package/src/components/Radio/Radio.tsx +13 -9
  165. package/src/components/Radio/__snapshots__/Radio.test.tsx.snap +5 -5
  166. package/src/components/RadioGroup/RadioGroup.stories.mdx +50 -16
  167. package/src/components/RadioGroup/RadioGroup.test.tsx +13 -11
  168. package/src/components/RadioGroup/RadioGroup.tsx +97 -94
  169. package/src/components/RadioGroup/__snapshots__/RadioGroup.test.tsx.snap +24 -21
  170. package/src/components/SearchBar/SearchBar.Test.tsx +160 -34
  171. package/src/components/SearchBar/SearchBar.stories.mdx +115 -33
  172. package/src/components/SearchBar/SearchBar.tsx +72 -51
  173. package/src/components/Select/Select.stories.mdx +48 -14
  174. package/src/components/Select/Select.test.tsx +89 -0
  175. package/src/components/Select/Select.tsx +27 -12
  176. package/src/components/Select/__snapshots__/Select.test.tsx.snap +545 -0
  177. package/src/components/SkeletonLoader/SkeletonLoader.stories.mdx +50 -16
  178. package/src/components/SkeletonLoader/SkeletonLoader.tsx +8 -4
  179. package/src/components/Slider/Slider.stories.mdx +72 -22
  180. package/src/components/Slider/Slider.tsx +15 -10
  181. package/src/components/Slider/__snapshots__/Slider.test.tsx.snap +67 -30
  182. package/src/components/StatusBadge/StatusBadge.stories.mdx +33 -18
  183. package/src/components/StatusBadge/StatusBadge.tsx +2 -1
  184. package/src/components/StructuredContent/StructuredContent.stories.mdx +427 -0
  185. package/src/components/StructuredContent/StructuredContent.test.tsx +376 -0
  186. package/src/components/StructuredContent/StructuredContent.tsx +153 -0
  187. package/src/components/StructuredContent/StructuredContentTypes.tsx +5 -0
  188. package/src/components/StructuredContent/__snapshots__/StructuredContent.test.tsx.snap +283 -0
  189. package/src/components/StyleGuide/Bidirectionality.stories.mdx +32 -83
  190. package/src/components/StyleGuide/Breakpoints.stories.mdx +1 -11
  191. package/src/components/StyleGuide/Buttons.stories.mdx +3 -18
  192. package/src/components/StyleGuide/ColorCard.tsx +1 -2
  193. package/src/components/StyleGuide/Colors.stories.mdx +3 -11
  194. package/src/components/StyleGuide/DesignTokens.stories.mdx +3 -8
  195. package/src/components/StyleGuide/Forms.stories.mdx +2 -10
  196. package/src/components/StyleGuide/Iconography.stories.mdx +8 -34
  197. package/src/components/StyleGuide/Spacing.stories.mdx +3 -14
  198. package/src/components/StyleGuide/Typography.stories.mdx +64 -76
  199. package/src/components/Table/Table.stories.mdx +165 -0
  200. package/src/components/Table/Table.test.tsx +137 -0
  201. package/src/components/Table/Table.tsx +126 -0
  202. package/src/components/Table/__snapshots__/Table.test.tsx.snap +1179 -0
  203. package/src/components/Tabs/Tabs.stories.mdx +20 -14
  204. package/src/components/Tabs/Tabs.test.tsx +21 -5
  205. package/src/components/Tabs/Tabs.tsx +35 -20
  206. package/src/components/Tabs/__snapshots__/Tabs.test.tsx.snap +195 -0
  207. package/src/components/Template/Template.stories.mdx +132 -48
  208. package/src/components/Template/Template.test.tsx +128 -6
  209. package/src/components/Template/Template.tsx +93 -13
  210. package/src/components/Template/__snapshots__/Template.test.tsx.snap +169 -0
  211. package/src/components/Text/Text.stories.mdx +33 -11
  212. package/src/components/Text/Text.tsx +2 -2
  213. package/src/components/TextInput/TextInput.stories.mdx +84 -17
  214. package/src/components/TextInput/TextInput.test.tsx +96 -0
  215. package/src/components/TextInput/TextInput.tsx +12 -8
  216. package/src/components/TextInput/__snapshots__/TextInput.test.tsx.snap +240 -0
  217. package/src/components/Toggle/Toggle.stories.mdx +33 -9
  218. package/src/components/Toggle/Toggle.tsx +14 -9
  219. package/src/components/Toggle/__snapshots__/Toggle.test.tsx.snap +4 -4
  220. package/src/components/VideoPlayer/VideoPlayer.stories.mdx +64 -14
  221. package/src/components/VideoPlayer/VideoPlayer.tsx +17 -7
  222. package/src/components/VideoPlayer/__snapshots__/VideoPlayer.test.tsx.snap +12 -6
  223. package/src/docs/Chakra.stories.mdx +5 -8
  224. package/src/docs/Intro.stories.mdx +2 -2
  225. package/src/index.ts +13 -6
  226. package/src/styles/base/_03-base.scss +1 -1
  227. package/src/styles/base/_place-holder.scss +7 -7
  228. package/src/styles.scss +1 -5
  229. package/src/theme/components/breadcrumb.ts +4 -4
  230. package/src/theme/components/button.ts +5 -12
  231. package/src/theme/components/card.ts +5 -2
  232. package/src/theme/components/checkbox.ts +1 -1
  233. package/src/theme/components/customTable.ts +63 -0
  234. package/src/theme/components/datePicker.ts +1 -1
  235. package/src/theme/components/global.ts +7 -7
  236. package/src/theme/components/heading.ts +13 -11
  237. package/src/theme/components/helperErrorText.ts +1 -1
  238. package/src/theme/components/image.ts +1 -1
  239. package/src/theme/components/link.ts +17 -5
  240. package/src/theme/components/list.ts +3 -5
  241. package/src/theme/components/logo.ts +54 -0
  242. package/src/theme/components/notification.ts +19 -9
  243. package/src/theme/components/searchBar.ts +11 -13
  244. package/src/theme/components/select.ts +1 -0
  245. package/src/theme/components/statusBadge.ts +1 -1
  246. package/src/theme/components/structuredContent.ts +74 -0
  247. package/src/theme/components/template.ts +10 -10
  248. package/src/theme/components/text.ts +6 -6
  249. package/src/theme/components/textInput.ts +2 -0
  250. package/src/theme/components/toggle.ts +10 -6
  251. package/src/theme/components/videoPlayer.ts +0 -2
  252. package/src/theme/foundations/global.ts +2 -2
  253. package/src/theme/foundations/typography.ts +84 -12
  254. package/src/theme/index.ts +6 -0
  255. package/src/utils/componentCategories.ts +2 -1
  256. package/src/utils/utils.ts +17 -0
  257. package/dist/__tests__/utils/bem.test.d.ts +0 -1
  258. package/dist/components/CardEdition/CardEdition.d.ts +0 -21
  259. package/dist/components/CardEdition/CardEdition.stories.d.ts +0 -27
  260. package/dist/components/Input/Input.d.ts +0 -36
  261. package/dist/components/Input/Input.stories.d.ts +0 -29
  262. package/dist/components/Input/InputTypes.d.ts +0 -6
  263. package/dist/components/StyleGuide/UIDocCard.d.ts +0 -11
  264. package/dist/helpers/CSSVariablesHelper.d.ts +0 -3
  265. package/dist/helpers/getCSSVariable.d.ts +0 -1
  266. package/dist/interfaces.d.ts +0 -3
  267. package/dist/utils/bem.d.ts +0 -1
  268. package/src/__tests__/utils/bem.test.ts +0 -37
  269. package/src/components/CardEdition/CardEdition.stories.tsx +0 -122
  270. package/src/components/CardEdition/CardEdition.test.tsx +0 -395
  271. package/src/components/CardEdition/CardEdition.tsx +0 -60
  272. package/src/components/CardEdition/_CardEdition.scss +0 -137
  273. package/src/components/Input/Input.stories.tsx +0 -133
  274. package/src/components/Input/Input.test.tsx +0 -266
  275. package/src/components/Input/Input.tsx +0 -81
  276. package/src/components/Input/InputTypes.tsx +0 -8
  277. package/src/components/Input/_Input.scss +0 -78
  278. package/src/components/StyleGuide/UIDocCard.tsx +0 -36
  279. package/src/helpers/CSSVariablesHelper.tsx +0 -34
  280. package/src/helpers/getCSSVariable.tsx +0 -5
  281. package/src/interfaces.ts +0 -3
  282. package/src/utils/bem.ts +0 -44
@@ -0,0 +1,545 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`Select Renders the UI snapshot correctly 1`] = `
4
+ <div
5
+ className="css-0"
6
+ >
7
+ <label
8
+ className="css-0"
9
+ htmlFor="select"
10
+ id="select-label"
11
+ >
12
+ Which Succession sibling are you?
13
+ <div
14
+ className="css-0"
15
+ >
16
+ Optional
17
+ </div>
18
+ </label>
19
+ <div
20
+ className="chakra-select__wrapper css-42b2qy"
21
+ >
22
+ <select
23
+ className="chakra-select css-1ik61og"
24
+ disabled={false}
25
+ id="select"
26
+ name="succession-sibling"
27
+ onBlur={[Function]}
28
+ onFocus={[Function]}
29
+ required={false}
30
+ >
31
+ <option>
32
+ Kendall
33
+ </option>
34
+ <option>
35
+ Shiv
36
+ </option>
37
+ <option>
38
+ Connor
39
+ </option>
40
+ <option>
41
+ Roman
42
+ </option>
43
+ <option>
44
+ Tom
45
+ </option>
46
+ </select>
47
+ <div
48
+ className="chakra-select__icon-wrapper css-162mkon"
49
+ >
50
+ <svg
51
+ aria-hidden={true}
52
+ className="chakra-icon chakra-select__icon css-onkibi"
53
+ focusable={false}
54
+ id="select-icon"
55
+ role="img"
56
+ title="arrow icon"
57
+ viewBox="0 0 24 24"
58
+ >
59
+ <g
60
+ stroke="currentColor"
61
+ strokeWidth="1.5"
62
+ >
63
+ <path
64
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
65
+ fill="none"
66
+ strokeLinecap="round"
67
+ />
68
+ <path
69
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
70
+ fill="currentColor"
71
+ strokeLinecap="round"
72
+ />
73
+ <circle
74
+ cx="12"
75
+ cy="12"
76
+ fill="none"
77
+ r="11.25"
78
+ strokeMiterlimit="10"
79
+ />
80
+ </g>
81
+ </svg>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ `;
86
+
87
+ exports[`Select Renders the UI snapshot correctly 2`] = `
88
+ <div
89
+ className="css-0"
90
+ >
91
+ <label
92
+ className="css-0"
93
+ htmlFor="select"
94
+ id="select-label"
95
+ >
96
+ Which Succession sibling are you?
97
+ <div
98
+ className="css-0"
99
+ >
100
+ Optional
101
+ </div>
102
+ </label>
103
+ <div
104
+ className="chakra-select__wrapper css-42b2qy"
105
+ >
106
+ <select
107
+ className="chakra-select css-1ik61og"
108
+ disabled={true}
109
+ id="select"
110
+ name="succession-sibling"
111
+ onBlur={[Function]}
112
+ onFocus={[Function]}
113
+ required={false}
114
+ >
115
+ <option>
116
+ Kendall
117
+ </option>
118
+ <option>
119
+ Shiv
120
+ </option>
121
+ <option>
122
+ Connor
123
+ </option>
124
+ <option>
125
+ Roman
126
+ </option>
127
+ <option>
128
+ Tom
129
+ </option>
130
+ </select>
131
+ <div
132
+ className="chakra-select__icon-wrapper css-162mkon"
133
+ data-disabled=""
134
+ >
135
+ <svg
136
+ aria-hidden={true}
137
+ className="chakra-icon chakra-select__icon css-onkibi"
138
+ focusable={false}
139
+ id="select-icon"
140
+ role="img"
141
+ title="arrow icon"
142
+ viewBox="0 0 24 24"
143
+ >
144
+ <g
145
+ stroke="currentColor"
146
+ strokeWidth="1.5"
147
+ >
148
+ <path
149
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
150
+ fill="none"
151
+ strokeLinecap="round"
152
+ />
153
+ <path
154
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
155
+ fill="currentColor"
156
+ strokeLinecap="round"
157
+ />
158
+ <circle
159
+ cx="12"
160
+ cy="12"
161
+ fill="none"
162
+ r="11.25"
163
+ strokeMiterlimit="10"
164
+ />
165
+ </g>
166
+ </svg>
167
+ </div>
168
+ </div>
169
+ </div>
170
+ `;
171
+
172
+ exports[`Select Renders the UI snapshot correctly 3`] = `
173
+ <div
174
+ className="css-0"
175
+ >
176
+ <label
177
+ className="css-0"
178
+ htmlFor="select"
179
+ id="select-label"
180
+ >
181
+ Which Succession sibling are you?
182
+ <div
183
+ className="css-0"
184
+ >
185
+ Optional
186
+ </div>
187
+ </label>
188
+ <div
189
+ className="chakra-select__wrapper css-42b2qy"
190
+ >
191
+ <select
192
+ aria-invalid={true}
193
+ className="chakra-select css-1ik61og"
194
+ disabled={false}
195
+ id="select"
196
+ name="succession-sibling"
197
+ onBlur={[Function]}
198
+ onFocus={[Function]}
199
+ required={false}
200
+ >
201
+ <option>
202
+ Kendall
203
+ </option>
204
+ <option>
205
+ Shiv
206
+ </option>
207
+ <option>
208
+ Connor
209
+ </option>
210
+ <option>
211
+ Roman
212
+ </option>
213
+ <option>
214
+ Tom
215
+ </option>
216
+ </select>
217
+ <div
218
+ className="chakra-select__icon-wrapper css-162mkon"
219
+ >
220
+ <svg
221
+ aria-hidden={true}
222
+ className="chakra-icon chakra-select__icon css-onkibi"
223
+ focusable={false}
224
+ id="select-icon"
225
+ role="img"
226
+ title="arrow icon"
227
+ viewBox="0 0 24 24"
228
+ >
229
+ <g
230
+ stroke="currentColor"
231
+ strokeWidth="1.5"
232
+ >
233
+ <path
234
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
235
+ fill="none"
236
+ strokeLinecap="round"
237
+ />
238
+ <path
239
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
240
+ fill="currentColor"
241
+ strokeLinecap="round"
242
+ />
243
+ <circle
244
+ cx="12"
245
+ cy="12"
246
+ fill="none"
247
+ r="11.25"
248
+ strokeMiterlimit="10"
249
+ />
250
+ </g>
251
+ </svg>
252
+ </div>
253
+ </div>
254
+ <div
255
+ aria-disabled={false}
256
+ className="css-0"
257
+ >
258
+ <div
259
+ aria-atomic={true}
260
+ aria-live="polite"
261
+ className=" css-0"
262
+ dangerouslySetInnerHTML={
263
+ Object {
264
+ "__html": "Tom doesn't count as a sibling :(.",
265
+ }
266
+ }
267
+ data-isinvalid={true}
268
+ id="select-helperText"
269
+ />
270
+ </div>
271
+ </div>
272
+ `;
273
+
274
+ exports[`Select Renders the UI snapshot correctly 4`] = `
275
+ <div
276
+ className="css-0"
277
+ >
278
+ <label
279
+ className="css-0"
280
+ htmlFor="select"
281
+ id="select-label"
282
+ >
283
+ Which Succession sibling are you?
284
+ <div
285
+ className="css-0"
286
+ >
287
+ Optional
288
+ </div>
289
+ </label>
290
+ <div
291
+ className="chakra-select__wrapper css-42b2qy"
292
+ >
293
+ <select
294
+ aria-describedby="select-helperText"
295
+ className="chakra-select css-1ik61og"
296
+ disabled={false}
297
+ id="select"
298
+ name="succession-sibling"
299
+ onBlur={[Function]}
300
+ onFocus={[Function]}
301
+ required={false}
302
+ >
303
+ <option>
304
+ Kendall
305
+ </option>
306
+ <option>
307
+ Shiv
308
+ </option>
309
+ <option>
310
+ Connor
311
+ </option>
312
+ <option>
313
+ Roman
314
+ </option>
315
+ <option>
316
+ Tom
317
+ </option>
318
+ </select>
319
+ <div
320
+ className="chakra-select__icon-wrapper css-162mkon"
321
+ >
322
+ <svg
323
+ aria-hidden={true}
324
+ className="chakra-icon chakra-select__icon css-onkibi"
325
+ focusable={false}
326
+ id="select-icon"
327
+ role="img"
328
+ title="arrow icon"
329
+ viewBox="0 0 24 24"
330
+ >
331
+ <g
332
+ stroke="currentColor"
333
+ strokeWidth="1.5"
334
+ >
335
+ <path
336
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
337
+ fill="none"
338
+ strokeLinecap="round"
339
+ />
340
+ <path
341
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
342
+ fill="currentColor"
343
+ strokeLinecap="round"
344
+ />
345
+ <circle
346
+ cx="12"
347
+ cy="12"
348
+ fill="none"
349
+ r="11.25"
350
+ strokeMiterlimit="10"
351
+ />
352
+ </g>
353
+ </svg>
354
+ </div>
355
+ </div>
356
+ <div
357
+ aria-disabled={false}
358
+ className="css-0"
359
+ >
360
+ <div
361
+ aria-atomic={true}
362
+ aria-live="off"
363
+ className=" css-0"
364
+ dangerouslySetInnerHTML={
365
+ Object {
366
+ "__html": "Remember, Logan will judge you no matter who you pick.",
367
+ }
368
+ }
369
+ data-isinvalid={false}
370
+ id="select-helperText"
371
+ />
372
+ </div>
373
+ </div>
374
+ `;
375
+
376
+ exports[`Select Renders the UI snapshot correctly 5`] = `
377
+ <div
378
+ className="css-0"
379
+ >
380
+ <label
381
+ className="css-0"
382
+ htmlFor="select"
383
+ id="select-label"
384
+ >
385
+ Which Succession sibling are you?
386
+ <div
387
+ className="css-0"
388
+ >
389
+ Required
390
+ </div>
391
+ </label>
392
+ <div
393
+ className="chakra-select__wrapper css-42b2qy"
394
+ >
395
+ <select
396
+ aria-required={true}
397
+ className="chakra-select css-1ik61og"
398
+ disabled={false}
399
+ id="select"
400
+ name="succession-sibling"
401
+ onBlur={[Function]}
402
+ onFocus={[Function]}
403
+ required={true}
404
+ >
405
+ <option>
406
+ Kendall
407
+ </option>
408
+ <option>
409
+ Shiv
410
+ </option>
411
+ <option>
412
+ Connor
413
+ </option>
414
+ <option>
415
+ Roman
416
+ </option>
417
+ <option>
418
+ Tom
419
+ </option>
420
+ </select>
421
+ <div
422
+ className="chakra-select__icon-wrapper css-162mkon"
423
+ >
424
+ <svg
425
+ aria-hidden={true}
426
+ className="chakra-icon chakra-select__icon css-onkibi"
427
+ focusable={false}
428
+ id="select-icon"
429
+ role="img"
430
+ title="arrow icon"
431
+ viewBox="0 0 24 24"
432
+ >
433
+ <g
434
+ stroke="currentColor"
435
+ strokeWidth="1.5"
436
+ >
437
+ <path
438
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
439
+ fill="none"
440
+ strokeLinecap="round"
441
+ />
442
+ <path
443
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
444
+ fill="currentColor"
445
+ strokeLinecap="round"
446
+ />
447
+ <circle
448
+ cx="12"
449
+ cy="12"
450
+ fill="none"
451
+ r="11.25"
452
+ strokeMiterlimit="10"
453
+ />
454
+ </g>
455
+ </svg>
456
+ </div>
457
+ </div>
458
+ </div>
459
+ `;
460
+
461
+ exports[`Select Renders the UI snapshot correctly 6`] = `
462
+ <div
463
+ className="css-0"
464
+ >
465
+ <label
466
+ className="css-0"
467
+ htmlFor="select"
468
+ id="select-label"
469
+ >
470
+ Which Succession sibling are you?
471
+ <div
472
+ className="css-0"
473
+ >
474
+ Optional
475
+ </div>
476
+ </label>
477
+ <div
478
+ className="chakra-select__wrapper css-42b2qy"
479
+ >
480
+ <select
481
+ className="chakra-select css-1ik61og"
482
+ disabled={false}
483
+ id="select"
484
+ name="succession-sibling"
485
+ onBlur={[Function]}
486
+ onChange={[MockFunction]}
487
+ onFocus={[Function]}
488
+ required={false}
489
+ value=""
490
+ >
491
+ <option>
492
+ Kendall
493
+ </option>
494
+ <option>
495
+ Shiv
496
+ </option>
497
+ <option>
498
+ Connor
499
+ </option>
500
+ <option>
501
+ Roman
502
+ </option>
503
+ <option>
504
+ Tom
505
+ </option>
506
+ </select>
507
+ <div
508
+ className="chakra-select__icon-wrapper css-162mkon"
509
+ >
510
+ <svg
511
+ aria-hidden={true}
512
+ className="chakra-icon chakra-select__icon css-onkibi"
513
+ focusable={false}
514
+ id="select-icon"
515
+ role="img"
516
+ title="arrow icon"
517
+ viewBox="0 0 24 24"
518
+ >
519
+ <g
520
+ stroke="currentColor"
521
+ strokeWidth="1.5"
522
+ >
523
+ <path
524
+ d="M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"
525
+ fill="none"
526
+ strokeLinecap="round"
527
+ />
528
+ <path
529
+ d="M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"
530
+ fill="currentColor"
531
+ strokeLinecap="round"
532
+ />
533
+ <circle
534
+ cx="12"
535
+ cy="12"
536
+ fill="none"
537
+ r="11.25"
538
+ strokeMiterlimit="10"
539
+ />
540
+ </g>
541
+ </svg>
542
+ </div>
543
+ </div>
544
+ </div>
545
+ `;
@@ -1,20 +1,30 @@
1
+ import { action } from "@storybook/addon-actions";
1
2
  import {
2
- Meta,
3
- Story,
4
- Canvas,
5
3
  ArgsTable,
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 { action } from "@storybook/addon-actions";
10
10
 
11
- import { getCategory } from "../../utils/componentCategories";
11
+ import SimpleGrid from "../Grid/SimpleGrid";
12
12
  import SkeletonLoader from "./SkeletonLoader";
13
13
  import {
14
- SkeletonLoaderLayouts,
15
14
  SkeletonLoaderImageRatios,
15
+ SkeletonLoaderLayouts,
16
16
  } from "./SkeletonLoaderTypes";
17
- import SimpleGrid from "../Grid/SimpleGrid";
17
+ import { getCategory } from "../../utils/componentCategories";
18
+ import { getStorybookEnumValues } from "../../utils/utils";
19
+
20
+ export const imageRatiosEnumValues = getStorybookEnumValues(
21
+ SkeletonLoaderImageRatios,
22
+ "SkeletonLoaderImageRatios"
23
+ );
24
+ export const layoutsEnumValues = getStorybookEnumValues(
25
+ SkeletonLoaderLayouts,
26
+ "SkeletonLoaderLayouts"
27
+ );
18
28
 
19
29
  <Meta
20
30
  title={getCategory("SkeletonLoader")}
@@ -23,17 +33,25 @@ import SimpleGrid from "../Grid/SimpleGrid";
23
33
  parameters={{
24
34
  design: {
25
35
  type: "figma",
26
- url:
27
- "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=17219%3A7",
36
+ url: "https://www.figma.com/file/qShodlfNCJHb8n03IFyApM/Master?node-id=17219%3A7",
28
37
  },
29
38
  jest: ["SkeletonLoader.test.tsx"],
30
39
  }}
31
40
  argTypes={{
32
- className: { table: { disable: true } },
41
+ className: { control: false },
33
42
  contentSize: { table: { defaultValue: { summary: "3" } } },
34
43
  headingSize: { table: { defaultValue: { summary: "1" } } },
35
- imageAspectRatio: { table: { defaultValue: { summary: "square" } } },
36
- layout: { table: { defaultValue: { summary: "column" } } },
44
+ imageAspectRatio: {
45
+ control: { type: "select" },
46
+ table: {
47
+ defaultValue: { summary: "SkeletonLoaderImageRatios.Square" },
48
+ },
49
+ options: imageRatiosEnumValues.options,
50
+ },
51
+ layout: {
52
+ table: { defaultValue: { summary: "SkeletonLoaderLayouts.Column" } },
53
+ options: layoutsEnumValues.options,
54
+ },
37
55
  showButton: { table: { defaultValue: { summary: "false" } } },
38
56
  showContent: { table: { defaultValue: { summary: "true" } } },
39
57
  showHeading: { table: { defaultValue: { summary: "true" } } },
@@ -58,16 +76,32 @@ to better view the example. The default value is `100%`.
58
76
 
59
77
  <Canvas withToolbar>
60
78
  <Story
61
- name="Basic with Props"
79
+ name="SkeletonLoader with Controls"
62
80
  args={{
81
+ border: false,
82
+ className: undefined,
83
+ contentSize: 3,
84
+ headingSize: 1,
85
+ imageAspectRatio: "SkeletonLoaderImageRatios.Square",
86
+ layout: "SkeletonLoaderLayouts.Column",
87
+ showButton: false,
88
+ showContent: true,
89
+ showHeading: true,
90
+ showImage: true,
63
91
  width: "300px",
64
92
  }}
65
93
  >
66
- {(args) => <SkeletonLoader {...args} />}
94
+ {(args) => (
95
+ <SkeletonLoader
96
+ {...args}
97
+ imageAspectRatio={imageRatiosEnumValues.getValue(args.imageAspectRatio)}
98
+ layout={layoutsEnumValues.getValue(args.layout)}
99
+ />
100
+ )}
67
101
  </Story>
68
102
  </Canvas>
69
103
 
70
- <ArgsTable story="Basic with Props" />
104
+ <ArgsTable story="SkeletonLoader with Controls" />
71
105
 
72
106
  # Card Placeholders in a Grid
73
107
 
@@ -15,13 +15,17 @@ export interface SkeletonLoaderProps {
15
15
  border?: boolean;
16
16
  /** Additional class name for the Skeleton component. */
17
17
  className?: string;
18
- /** Optional numeric value to control the number of lines for content placeholder; default value is `3`. */
18
+ /** Optional numeric value to control the number of lines for content
19
+ * placeholder; default value is `3`. */
19
20
  contentSize?: number;
20
- /** Optional numeric value to control the number of lines for heading placeholder; default value is `1`. */
21
+ /** Optional numeric value to control the number of lines for heading
22
+ * placeholder; default value is `1`. */
21
23
  headingSize?: number;
22
- /** Optional value to control the aspect ratio of the image placeholder; default value is `square`. */
24
+ /** Optional value to control the aspect ratio of the image placeholder;
25
+ * default value is `SkeletonLoaderImageRatios.Square`. */
23
26
  imageAspectRatio?: SkeletonLoaderImageRatios;
24
- /** Optional value to control the position of the image placeholder; default value is `column`. */
27
+ /** Optional value to control the position of the image placeholder;
28
+ * default value is `SkeletonLoaderLayouts.Column`. */
25
29
  layout?: SkeletonLoaderLayouts;
26
30
  /** Optional boolean value to control visibility of button placeholder. */
27
31
  showButton?: boolean;