@strapi/design-system 1.3.0-beta.1 → 1.3.0-beta.3

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 (733) hide show
  1. package/Accordion.development.js +775 -0
  2. package/Accordion.js +9 -0
  3. package/Accordion.production.js +1 -0
  4. package/Alert.development.js +562 -0
  5. package/Alert.js +9 -0
  6. package/Alert.production.js +1 -0
  7. package/Avatar.development.js +485 -0
  8. package/Avatar.js +9 -0
  9. package/Avatar.production.js +1 -0
  10. package/Badge.development.js +494 -0
  11. package/Badge.js +9 -0
  12. package/Badge.production.js +1 -0
  13. package/BaseButton.development.js +285 -0
  14. package/BaseButton.js +9 -0
  15. package/BaseButton.production.js +1 -0
  16. package/BaseCheckbox.development.js +434 -0
  17. package/BaseCheckbox.js +9 -0
  18. package/BaseCheckbox.production.js +1 -0
  19. package/BaseLink.development.js +273 -0
  20. package/BaseLink.js +9 -0
  21. package/BaseLink.production.js +1 -0
  22. package/BaseRadio.development.js +321 -0
  23. package/BaseRadio.js +9 -0
  24. package/BaseRadio.production.js +1 -0
  25. package/Box.development.js +341 -0
  26. package/Box.js +9 -0
  27. package/Box.production.js +1 -0
  28. package/Breadcrumbs.development.js +518 -0
  29. package/Breadcrumbs.js +9 -0
  30. package/Breadcrumbs.production.js +1 -0
  31. package/Button.development.js +573 -0
  32. package/Button.js +9 -0
  33. package/Button.production.js +1 -0
  34. package/Card.development.js +746 -0
  35. package/Card.js +9 -0
  36. package/Card.production.js +1 -0
  37. package/CarouselInput.development.js +898 -0
  38. package/CarouselInput.js +9 -0
  39. package/CarouselInput.production.js +1 -0
  40. package/Checkbox.development.js +722 -0
  41. package/Checkbox.js +9 -0
  42. package/Checkbox.production.js +1 -0
  43. package/Combobox.development.js +934 -0
  44. package/Combobox.js +9 -0
  45. package/Combobox.production.js +1 -0
  46. package/DatePicker.development.js +1323 -0
  47. package/DatePicker.js +9 -0
  48. package/DatePicker.production.js +1 -0
  49. package/DateTimePicker.development.js +1622 -0
  50. package/DateTimePicker.js +9 -0
  51. package/DateTimePicker.production.js +1 -0
  52. package/Dialog.development.js +741 -0
  53. package/Dialog.js +9 -0
  54. package/Dialog.production.js +1 -0
  55. package/DismissibleLayer.development.js +218 -0
  56. package/DismissibleLayer.js +9 -0
  57. package/DismissibleLayer.production.js +1 -0
  58. package/Divider.development.js +398 -0
  59. package/Divider.js +9 -0
  60. package/Divider.production.js +1 -0
  61. package/EmptyStateLayout.development.js +425 -0
  62. package/EmptyStateLayout.js +9 -0
  63. package/EmptyStateLayout.production.js +1 -0
  64. package/Field.development.js +614 -0
  65. package/Field.js +9 -0
  66. package/Field.production.js +1 -0
  67. package/Flex.development.js +377 -0
  68. package/Flex.js +9 -0
  69. package/Flex.production.js +1 -0
  70. package/FocusTrap.development.js +341 -0
  71. package/FocusTrap.js +9 -0
  72. package/FocusTrap.production.js +1 -0
  73. package/Grid.development.js +422 -0
  74. package/Grid.js +9 -0
  75. package/Grid.production.js +1 -0
  76. package/Icon.development.js +376 -0
  77. package/Icon.js +9 -0
  78. package/Icon.production.js +1 -0
  79. package/IconButton.development.js +684 -0
  80. package/IconButton.js +9 -0
  81. package/IconButton.production.js +1 -0
  82. package/KeyboardNavigable.development.js +454 -0
  83. package/KeyboardNavigable.js +9 -0
  84. package/KeyboardNavigable.production.js +1 -0
  85. package/Layout.development.js +626 -0
  86. package/Layout.js +9 -0
  87. package/Layout.production.js +1 -0
  88. package/Link.development.js +492 -0
  89. package/Link.js +9 -0
  90. package/Link.production.js +1 -0
  91. package/LinkButton.development.js +573 -0
  92. package/LinkButton.js +9 -0
  93. package/LinkButton.production.js +1 -0
  94. package/LiveRegions.development.js +147 -0
  95. package/LiveRegions.js +9 -0
  96. package/LiveRegions.production.js +1 -0
  97. package/Loader.development.js +309 -0
  98. package/Loader.js +9 -0
  99. package/Loader.production.js +1 -0
  100. package/Main.development.js +410 -0
  101. package/Main.js +9 -0
  102. package/Main.production.js +1 -0
  103. package/MainNav.development.js +957 -0
  104. package/MainNav.js +9 -0
  105. package/MainNav.production.js +1 -0
  106. package/ModalLayout.development.js +895 -0
  107. package/ModalLayout.js +9 -0
  108. package/ModalLayout.production.js +1 -0
  109. package/NumberInput.development.js +733 -0
  110. package/NumberInput.js +9 -0
  111. package/NumberInput.production.js +1 -0
  112. package/Pagination.development.js +587 -0
  113. package/Pagination.js +9 -0
  114. package/Pagination.production.js +1 -0
  115. package/Popover.development.js +481 -0
  116. package/Popover.js +9 -0
  117. package/Popover.production.js +1 -0
  118. package/Portal.development.js +212 -0
  119. package/Portal.js +9 -0
  120. package/Portal.production.js +1 -0
  121. package/ProgressBar.development.js +273 -0
  122. package/ProgressBar.js +9 -0
  123. package/ProgressBar.production.js +1 -0
  124. package/Radio.development.js +518 -0
  125. package/Radio.js +9 -0
  126. package/Radio.production.js +1 -0
  127. package/RawTable.development.js +549 -0
  128. package/RawTable.js +9 -0
  129. package/RawTable.production.js +1 -0
  130. package/Searchbar.development.js +696 -0
  131. package/Searchbar.js +9 -0
  132. package/Searchbar.production.js +1 -0
  133. package/Select.development.js +1063 -0
  134. package/Select.js +9 -0
  135. package/Select.production.js +1 -0
  136. package/SimpleMenu.development.js +821 -0
  137. package/SimpleMenu.js +9 -0
  138. package/SimpleMenu.production.js +1 -0
  139. package/Stack.development.js +434 -0
  140. package/Stack.js +9 -0
  141. package/Stack.production.js +1 -0
  142. package/Status.development.js +494 -0
  143. package/Status.js +9 -0
  144. package/Status.production.js +1 -0
  145. package/SubNav.development.js +1123 -0
  146. package/SubNav.js +9 -0
  147. package/SubNav.production.js +1 -0
  148. package/Switch.development.js +434 -0
  149. package/Switch.js +9 -0
  150. package/Switch.production.js +1 -0
  151. package/Table.development.js +741 -0
  152. package/Table.js +9 -0
  153. package/Table.production.js +1 -0
  154. package/Tabs.development.js +590 -0
  155. package/Tabs.js +9 -0
  156. package/Tabs.production.js +1 -0
  157. package/Tag.development.js +494 -0
  158. package/Tag.js +9 -0
  159. package/Tag.production.js +1 -0
  160. package/TextButton.development.js +517 -0
  161. package/TextButton.js +9 -0
  162. package/TextButton.production.js +1 -0
  163. package/TextInput.development.js +662 -0
  164. package/TextInput.js +9 -0
  165. package/TextInput.production.js +1 -0
  166. package/Textarea.development.js +674 -0
  167. package/Textarea.js +9 -0
  168. package/Textarea.production.js +1 -0
  169. package/ThemeProvider.development.js +300 -0
  170. package/ThemeProvider.js +9 -0
  171. package/ThemeProvider.production.js +1 -0
  172. package/TimePicker.development.js +1098 -0
  173. package/TimePicker.js +9 -0
  174. package/TimePicker.production.js +1 -0
  175. package/ToggleCheckbox.development.js +542 -0
  176. package/ToggleCheckbox.js +9 -0
  177. package/ToggleCheckbox.production.js +1 -0
  178. package/ToggleInput.development.js +745 -0
  179. package/ToggleInput.js +9 -0
  180. package/ToggleInput.production.js +1 -0
  181. package/Tooltip.development.js +588 -0
  182. package/Tooltip.js +9 -0
  183. package/Tooltip.production.js +1 -0
  184. package/Typography.development.js +276 -0
  185. package/Typography.js +9 -0
  186. package/Typography.production.js +1 -0
  187. package/VisuallyHidden.development.js +146 -0
  188. package/VisuallyHidden.js +9 -0
  189. package/VisuallyHidden.production.js +1 -0
  190. package/index.development.js +4338 -0
  191. package/index.js +9 -0
  192. package/index.production.js +1 -0
  193. package/package.json +2 -2
  194. package/themes.development.js +254 -0
  195. package/themes.js +9 -0
  196. package/themes.production.js +1 -0
  197. package/v2/Breadcrumbs.development.js +906 -0
  198. package/v2/Breadcrumbs.js +9 -0
  199. package/v2/Breadcrumbs.production.js +1 -0
  200. package/v2/Link.development.js +505 -0
  201. package/v2/Link.js +9 -0
  202. package/v2/Link.production.js +1 -0
  203. package/v2/LinkButton.development.js +586 -0
  204. package/v2/LinkButton.js +9 -0
  205. package/v2/LinkButton.production.js +1 -0
  206. package/v2/MainNav.development.js +970 -0
  207. package/v2/MainNav.js +9 -0
  208. package/v2/MainNav.production.js +1 -0
  209. package/v2/Pagination.development.js +600 -0
  210. package/v2/Pagination.js +9 -0
  211. package/v2/Pagination.production.js +1 -0
  212. package/v2/SimpleMenu.development.js +834 -0
  213. package/v2/SimpleMenu.js +9 -0
  214. package/v2/SimpleMenu.production.js +1 -0
  215. package/v2/SubNav.development.js +1136 -0
  216. package/v2/SubNav.js +9 -0
  217. package/v2/SubNav.production.js +1 -0
  218. package/v2/index.development.js +1740 -0
  219. package/v2/index.js +9 -0
  220. package/v2/index.production.js +1 -0
  221. package/v2/package.json +81 -0
  222. package/.eslintignore +0 -3
  223. package/.eslintrc.js +0 -38
  224. package/.prettierrc.js +0 -7
  225. package/.storybook/components/Theme.js +0 -28
  226. package/.storybook/main.js +0 -13
  227. package/.storybook/manager.js +0 -12
  228. package/.storybook/preview.js +0 -42
  229. package/.storybook/utils/createCustomTheme.js +0 -26
  230. package/LICENSE +0 -20
  231. package/__mocks__/fileMock.js +0 -1
  232. package/__mocks__/styleMock.js +0 -1
  233. package/babel.config.js +0 -5
  234. package/createIndexFiles.js +0 -34
  235. package/global-setup.js +0 -4
  236. package/jest.config.js +0 -17
  237. package/playwright.config.js +0 -39
  238. package/src/Accordion/Accordion.js +0 -148
  239. package/src/Accordion/Accordion.stories.mdx +0 -327
  240. package/src/Accordion/AccordionContent.js +0 -26
  241. package/src/Accordion/AccordionContext.js +0 -5
  242. package/src/Accordion/AccordionGroup.js +0 -114
  243. package/src/Accordion/AccordionToggle.js +0 -192
  244. package/src/Accordion/__tests__/Accordion.e2e.js +0 -32
  245. package/src/Accordion/__tests__/AccordionKeyboard.e2e.js +0 -73
  246. package/src/Accordion/index.js +0 -4
  247. package/src/Accordion/utils.js +0 -15
  248. package/src/Alert/Alert.js +0 -144
  249. package/src/Alert/Alert.stories.mdx +0 -135
  250. package/src/Alert/__tests__/Alert.e2e.js +0 -39
  251. package/src/Alert/index.js +0 -1
  252. package/src/Alert/utils.js +0 -35
  253. package/src/Avatar/Avatar.js +0 -110
  254. package/src/Avatar/Avatar.stories.mdx +0 -67
  255. package/src/Avatar/AvatarGroup.js +0 -9
  256. package/src/Avatar/__tests__/Avatar.e2e.js +0 -23
  257. package/src/Avatar/__tests__/Avatar.spec.js +0 -153
  258. package/src/Avatar/constants.js +0 -2
  259. package/src/Avatar/index.js +0 -2
  260. package/src/Badge/Badge.js +0 -41
  261. package/src/Badge/Badge.stories.mdx +0 -57
  262. package/src/Badge/__tests__/Badge.e2e.js +0 -23
  263. package/src/Badge/index.js +0 -1
  264. package/src/BaseButton/BaseButton.js +0 -46
  265. package/src/BaseButton/BaseButton.stories.mdx +0 -32
  266. package/src/BaseButton/__tests__/BaseButton.e2e.js +0 -23
  267. package/src/BaseButton/index.js +0 -1
  268. package/src/BaseCheckbox/BaseCheckbox.js +0 -133
  269. package/src/BaseCheckbox/BaseCheckbox.stories.mdx +0 -107
  270. package/src/BaseCheckbox/__tests__/BaseCheckbox.e2e.js +0 -94
  271. package/src/BaseCheckbox/assets/checkmark-black.svg +0 -6
  272. package/src/BaseCheckbox/assets/checkmark.svg +0 -6
  273. package/src/BaseCheckbox/index.js +0 -1
  274. package/src/BaseCheckbox/utils.js +0 -7
  275. package/src/BaseLink/BaseLink.js +0 -38
  276. package/src/BaseLink/BaseLink.stories.mdx +0 -34
  277. package/src/BaseLink/__tests__/BaseLink.e2e.js +0 -23
  278. package/src/BaseLink/__tests__/BaseLink.spec.js +0 -26
  279. package/src/BaseLink/index.js +0 -1
  280. package/src/BaseRadio/BaseRadio.js +0 -69
  281. package/src/BaseRadio/BaseRadio.stories.mdx +0 -110
  282. package/src/BaseRadio/RadioGroup.js +0 -36
  283. package/src/BaseRadio/__tests__/BaseRadio.e2e.js +0 -90
  284. package/src/BaseRadio/context.js +0 -3
  285. package/src/BaseRadio/index.js +0 -2
  286. package/src/BaseRadio/utils.js +0 -30
  287. package/src/Box/Box.js +0 -104
  288. package/src/Box/Box.stories.mdx +0 -57
  289. package/src/Box/BoxProps.js +0 -99
  290. package/src/Box/__tests__/Box.e2e.js +0 -23
  291. package/src/Box/__tests__/Box.spec.js +0 -36
  292. package/src/Box/index.js +0 -1
  293. package/src/Breadcrumbs/Breadcrumbs.js +0 -58
  294. package/src/Breadcrumbs/Breadcrumbs.stories.mdx +0 -47
  295. package/src/Breadcrumbs/__tests__/Breadcrumbs.e2e.js +0 -23
  296. package/src/Breadcrumbs/index.js +0 -1
  297. package/src/Button/Button.js +0 -138
  298. package/src/Button/Button.stories.mdx +0 -216
  299. package/src/Button/__tests__/Button.e2e.js +0 -89
  300. package/src/Button/__tests__/utils.spec.js +0 -19
  301. package/src/Button/constants.js +0 -12
  302. package/src/Button/index.js +0 -1
  303. package/src/Button/utils.js +0 -170
  304. package/src/Card/Card.js +0 -35
  305. package/src/Card/Card.stories.mdx +0 -202
  306. package/src/Card/CardAction.js +0 -13
  307. package/src/Card/CardAsset.js +0 -49
  308. package/src/Card/CardBadge.js +0 -18
  309. package/src/Card/CardBody.js +0 -11
  310. package/src/Card/CardCheckbox.js +0 -14
  311. package/src/Card/CardContent.js +0 -16
  312. package/src/Card/CardContext.js +0 -5
  313. package/src/Card/CardHeader.js +0 -12
  314. package/src/Card/CardTimer.js +0 -23
  315. package/src/Card/CardTitle.js +0 -12
  316. package/src/Card/__tests__/Card.e2e.js +0 -164
  317. package/src/Card/index.js +0 -10
  318. package/src/Card/story-assets/first.jpg +0 -0
  319. package/src/CarouselInput/Carousel.js +0 -138
  320. package/src/CarouselInput/Carousel.stories.mdx +0 -149
  321. package/src/CarouselInput/CarouselActions.js +0 -6
  322. package/src/CarouselInput/CarouselImage.js +0 -39
  323. package/src/CarouselInput/CarouselInput.js +0 -80
  324. package/src/CarouselInput/CarouselSlide.js +0 -32
  325. package/src/CarouselInput/__tests__/CarouselImage.e2e.js +0 -15
  326. package/src/CarouselInput/__tests__/CarouselInput.e2e.js +0 -48
  327. package/src/CarouselInput/index.js +0 -5
  328. package/src/CarouselInput/story-assets/first.jpg +0 -0
  329. package/src/Checkbox/Checkbox.js +0 -63
  330. package/src/Checkbox/Checkbox.stories.mdx +0 -190
  331. package/src/Checkbox/__tests__/Checkbox.e2e.js +0 -96
  332. package/src/Checkbox/index.js +0 -1
  333. package/src/Combobox/Combobox.js +0 -421
  334. package/src/Combobox/Combobox.stories.mdx +0 -191
  335. package/src/Combobox/ComboboxList.js +0 -22
  336. package/src/Combobox/ComboboxOption.js +0 -36
  337. package/src/Combobox/__tests__/Combobox.e2e.js +0 -133
  338. package/src/Combobox/__tests__/utils.spec.js +0 -94
  339. package/src/Combobox/components.js +0 -69
  340. package/src/Combobox/index.js +0 -2
  341. package/src/Combobox/utils.js +0 -97
  342. package/src/DatePicker/DatePicker.js +0 -132
  343. package/src/DatePicker/DatePicker.stories.mdx +0 -172
  344. package/src/DatePicker/DatePickerCalendar.js +0 -134
  345. package/src/DatePicker/DatePickerTd.js +0 -51
  346. package/src/DatePicker/DatePickerTh.js +0 -39
  347. package/src/DatePicker/__tests__/DatePicker.e2e.js +0 -94
  348. package/src/DatePicker/__tests__/DatePicker.spec.js +0 -40
  349. package/src/DatePicker/compareDates.js +0 -9
  350. package/src/DatePicker/components.js +0 -45
  351. package/src/DatePicker/index.js +0 -1
  352. package/src/DatePicker/utils/formatDate.js +0 -5
  353. package/src/DatePicker/utils/generateWeeks.js +0 -58
  354. package/src/DatePicker/utils/getDayOfWeek.js +0 -24
  355. package/src/DatePicker/utils/getMonths.js +0 -10
  356. package/src/DatePicker/utils/getYears.js +0 -19
  357. package/src/DatePicker/utils/index.js +0 -5
  358. package/src/DatePicker/utils/tests/generateWeeks.spec.js +0 -136
  359. package/src/DatePicker/utils/tests/getMonths.spec.js +0 -21
  360. package/src/DatePicker/utils/tests/getYears.spec.js +0 -21
  361. package/src/DateTimePicker/DateTimePicker.js +0 -151
  362. package/src/DateTimePicker/DateTimePicker.stories.mdx +0 -114
  363. package/src/DateTimePicker/DateTimePickerProps.js +0 -85
  364. package/src/DateTimePicker/__tests__/DateTimePicker.e2e.js +0 -103
  365. package/src/DateTimePicker/__tests__/DateTimePicker.spec.js +0 -89
  366. package/src/DateTimePicker/__tests__/__snapshots__/DateTimePicker.spec.js.snap +0 -448
  367. package/src/DateTimePicker/__tests__/parseDate.test.js +0 -10
  368. package/src/DateTimePicker/index.js +0 -1
  369. package/src/DateTimePicker/parseDate.js +0 -11
  370. package/src/Dialog/Dialog.js +0 -86
  371. package/src/Dialog/Dialog.stories.mdx +0 -78
  372. package/src/Dialog/DialogBody.js +0 -36
  373. package/src/Dialog/DialogFooter.js +0 -38
  374. package/src/Dialog/__tests__/Dialog.e2e.js +0 -20
  375. package/src/Dialog/__tests__/Dialog.spec.js +0 -28
  376. package/src/Dialog/index.js +0 -3
  377. package/src/DismissibleLayer/DismissibleLayer.js +0 -87
  378. package/src/DismissibleLayer/DismissibleLayer.stories.mdx +0 -50
  379. package/src/DismissibleLayer/__test__/DimissibleLayer.spec.js +0 -44
  380. package/src/DismissibleLayer/index.js +0 -1
  381. package/src/Divider/Divider.js +0 -26
  382. package/src/Divider/Divider.stories.mdx +0 -55
  383. package/src/Divider/__tests__/Divider.e2e.js +0 -23
  384. package/src/Divider/index.js +0 -1
  385. package/src/EmptyStateLayout/EmptyStateLayout.js +0 -48
  386. package/src/EmptyStateLayout/EmptyStateLayout.stories.mdx +0 -87
  387. package/src/EmptyStateLayout/__tests__/EmptyStateLayout.e2e.js +0 -31
  388. package/src/EmptyStateLayout/index.js +0 -1
  389. package/src/EmptyStateLayout/story-assets/Illo.js +0 -51
  390. package/src/Field/Field.js +0 -29
  391. package/src/Field/Field.stories.mdx +0 -237
  392. package/src/Field/FieldAction.js +0 -25
  393. package/src/Field/FieldContext.js +0 -4
  394. package/src/Field/FieldError.js +0 -17
  395. package/src/Field/FieldHint.js +0 -17
  396. package/src/Field/FieldInput.js +0 -129
  397. package/src/Field/FieldLabel.js +0 -50
  398. package/src/Field/__tests__/Field.e2e.js +0 -61
  399. package/src/Field/index.js +0 -7
  400. package/src/Flex/Flex.js +0 -26
  401. package/src/Flex/Flex.stories.mdx +0 -45
  402. package/src/Flex/FlexProps.js +0 -41
  403. package/src/Flex/__tests__/Flex.e2e.js +0 -23
  404. package/src/Flex/index.js +0 -1
  405. package/src/FocusTrap/ExampleComponent.js +0 -71
  406. package/src/FocusTrap/FocusTrap.js +0 -83
  407. package/src/FocusTrap/FocusTrap.stories.mdx +0 -32
  408. package/src/FocusTrap/__tests__/FocusTrap.e2e.js +0 -126
  409. package/src/FocusTrap/index.js +0 -1
  410. package/src/Grid/Grid.js +0 -30
  411. package/src/Grid/Grid.stories.mdx +0 -112
  412. package/src/Grid/GridContext.js +0 -5
  413. package/src/Grid/GridItem.js +0 -40
  414. package/src/Grid/__tests__/Grid.e2e.js +0 -23
  415. package/src/Grid/index.js +0 -2
  416. package/src/Icon/Icon.js +0 -27
  417. package/src/Icon/Icon.stories.mdx +0 -41
  418. package/src/Icon/__tests__/Icon.e2e.js +0 -21
  419. package/src/Icon/index.js +0 -1
  420. package/src/IconButton/IconButton.js +0 -175
  421. package/src/IconButton/IconButton.stories.mdx +0 -153
  422. package/src/IconButton/__tests__/IconButton.e2e.js +0 -57
  423. package/src/IconButton/index.js +0 -1
  424. package/src/KeyboardNavigable/KeyboardNavigable.js +0 -96
  425. package/src/KeyboardNavigable/index.js +0 -1
  426. package/src/Layout/ActionLayout.js +0 -40
  427. package/src/Layout/ContentLayout.js +0 -15
  428. package/src/Layout/GridLayout.js +0 -12
  429. package/src/Layout/GridLayout.stories.mdx +0 -36
  430. package/src/Layout/HeaderLayout.js +0 -170
  431. package/src/Layout/HeaderLayout.stories.mdx +0 -175
  432. package/src/Layout/Layout.js +0 -31
  433. package/src/Layout/Layout.stories.mdx +0 -240
  434. package/src/Layout/TwoColsLayout.js +0 -26
  435. package/src/Layout/TwoColsLayout.stories.mdx +0 -46
  436. package/src/Layout/__tests__/GridLayout.e2e.js +0 -23
  437. package/src/Layout/__tests__/HeaderLayout.e2e.js +0 -83
  438. package/src/Layout/__tests__/Layout.e2e.js +0 -23
  439. package/src/Layout/__tests__/TwoColsLayout.e2e.js +0 -23
  440. package/src/Layout/index.js +0 -6
  441. package/src/Link/Link.js +0 -105
  442. package/src/Link/Link.stories.mdx +0 -57
  443. package/src/Link/__tests__/Link.e2e.js +0 -23
  444. package/src/Link/index.js +0 -1
  445. package/src/LinkButton/LinkButton.js +0 -113
  446. package/src/LinkButton/LinkButton.stories.mdx +0 -153
  447. package/src/LinkButton/__tests__/LinkButton.e2e.js +0 -89
  448. package/src/LinkButton/index.js +0 -1
  449. package/src/LiveRegions/LiveRegions.js +0 -13
  450. package/src/LiveRegions/LiveRegions.stories.mdx +0 -76
  451. package/src/LiveRegions/StoryComponent.js +0 -26
  452. package/src/LiveRegions/__tests__/LiveRegions.spec.js +0 -200
  453. package/src/LiveRegions/constants.js +0 -5
  454. package/src/LiveRegions/index.js +0 -1
  455. package/src/LiveRegions/useNotifyAT.js +0 -39
  456. package/src/Loader/Loader.js +0 -40
  457. package/src/Loader/Loader.stories.mdx +0 -48
  458. package/src/Loader/__tests__/Loader.e2e.js +0 -23
  459. package/src/Loader/assets/loader.svg +0 -3
  460. package/src/Loader/index.js +0 -1
  461. package/src/Main/Main.js +0 -24
  462. package/src/Main/SkipToContent.js +0 -29
  463. package/src/Main/index.js +0 -2
  464. package/src/MainNav/MainNav.js +0 -31
  465. package/src/MainNav/MainNav.stories.mdx +0 -197
  466. package/src/MainNav/MainNavContext.js +0 -5
  467. package/src/MainNav/NavBrand.js +0 -76
  468. package/src/MainNav/NavCondense.js +0 -44
  469. package/src/MainNav/NavLink.js +0 -143
  470. package/src/MainNav/NavSection.js +0 -53
  471. package/src/MainNav/NavSections.js +0 -20
  472. package/src/MainNav/NavUser.js +0 -53
  473. package/src/MainNav/__tests__/MainNav.e2e.js +0 -23
  474. package/src/MainNav/index.js +0 -7
  475. package/src/MainNav/strapi-img.png +0 -0
  476. package/src/ModalLayout/ModalBody.js +0 -12
  477. package/src/ModalLayout/ModalContext.js +0 -4
  478. package/src/ModalLayout/ModalFooter.js +0 -37
  479. package/src/ModalLayout/ModalHeader.js +0 -35
  480. package/src/ModalLayout/ModalLayout.js +0 -58
  481. package/src/ModalLayout/ModalLayout.stories.mdx +0 -100
  482. package/src/ModalLayout/__tests__/ModalLayout.e2e.js +0 -19
  483. package/src/ModalLayout/__tests__/ModalLayout.spec.js +0 -596
  484. package/src/ModalLayout/index.js +0 -4
  485. package/src/NumberInput/NumberInput.js +0 -253
  486. package/src/NumberInput/NumberInput.stories.mdx +0 -319
  487. package/src/NumberInput/__tests__/NumberInput.e2e.js +0 -194
  488. package/src/NumberInput/index.js +0 -1
  489. package/src/Pagination/Pagination.js +0 -37
  490. package/src/Pagination/Pagination.stories.mdx +0 -97
  491. package/src/Pagination/PaginationContext.js +0 -4
  492. package/src/Pagination/__tests__/Pagination.e2e.js +0 -23
  493. package/src/Pagination/assets/next.svg +0 -3
  494. package/src/Pagination/assets/previous.svg +0 -3
  495. package/src/Pagination/components.js +0 -147
  496. package/src/Pagination/index.js +0 -2
  497. package/src/Popover/Popover.js +0 -167
  498. package/src/Popover/Popover.stories.mdx +0 -167
  499. package/src/Popover/__tests__/Popover.e2e.js +0 -48
  500. package/src/Popover/__tests__/Popover.spec.js +0 -153
  501. package/src/Popover/index.js +0 -1
  502. package/src/Portal/Portal.js +0 -25
  503. package/src/Portal/Portal.stories.mdx +0 -33
  504. package/src/Portal/__tests__/Portal.e2e.js +0 -23
  505. package/src/Portal/index.js +0 -1
  506. package/src/ProgressBar/ProgressBar.js +0 -57
  507. package/src/ProgressBar/ProgressBar.stories.mdx +0 -47
  508. package/src/ProgressBar/__tests__/ProgressBar.e2e.js +0 -41
  509. package/src/ProgressBar/index.js +0 -1
  510. package/src/Radio/Radio.js +0 -25
  511. package/src/Radio/Radio.stories.mdx +0 -66
  512. package/src/Radio/__tests__/Radio.e2e.js +0 -66
  513. package/src/Radio/__tests__/Radio.spec.js +0 -56
  514. package/src/Radio/index.js +0 -2
  515. package/src/RawTable/RawCell.js +0 -182
  516. package/src/RawTable/RawTable.js +0 -123
  517. package/src/RawTable/RawTable.stories.mdx +0 -258
  518. package/src/RawTable/RawTableContext.js +0 -10
  519. package/src/RawTable/RawTbody.js +0 -18
  520. package/src/RawTable/RawThead.js +0 -15
  521. package/src/RawTable/RawTr.js +0 -20
  522. package/src/RawTable/__tests__/RawTable.e2e.js +0 -344
  523. package/src/RawTable/focusFocusable.js +0 -7
  524. package/src/RawTable/index.js +0 -5
  525. package/src/Searchbar/SearchForm.js +0 -3
  526. package/src/Searchbar/Searchbar.js +0 -103
  527. package/src/Searchbar/Searchbar.stories.mdx +0 -115
  528. package/src/Searchbar/__tests__/Searchbar.e2e.js +0 -52
  529. package/src/Searchbar/index.js +0 -2
  530. package/src/Select/MultiSelectNested.js +0 -31
  531. package/src/Select/OptGroup.js +0 -27
  532. package/src/Select/Option.js +0 -123
  533. package/src/Select/Select.js +0 -318
  534. package/src/Select/Select.stories.mdx +0 -362
  535. package/src/Select/SelectButton.js +0 -77
  536. package/src/Select/SelectList.js +0 -113
  537. package/src/Select/SelectTags.js +0 -50
  538. package/src/Select/__tests__/Select.e2e.js +0 -238
  539. package/src/Select/__tests__/Select.spec.js +0 -1020
  540. package/src/Select/components.js +0 -51
  541. package/src/Select/constants.js +0 -6
  542. package/src/Select/hooks/useButtonRef.js +0 -31
  543. package/src/Select/hooks/useListRef.js +0 -35
  544. package/src/Select/index.js +0 -5
  545. package/src/Select/utils.js +0 -27
  546. package/src/SimpleMenu/SimpleMenu.js +0 -252
  547. package/src/SimpleMenu/SimpleMenu.stories.mdx +0 -220
  548. package/src/SimpleMenu/__tests__/SimpleMenu.e2e.js +0 -98
  549. package/src/SimpleMenu/__tests__/SimpleMenu.spec.js +0 -48
  550. package/src/SimpleMenu/index.js +0 -1
  551. package/src/SimpleMenu/utils.js +0 -12
  552. package/src/Stack/Stack.js +0 -75
  553. package/src/Stack/Stack.stories.mdx +0 -66
  554. package/src/Stack/__tests__/Stack.e2e.js +0 -43
  555. package/src/Stack/index.js +0 -1
  556. package/src/Status/Status.js +0 -76
  557. package/src/Status/Status.stories.mdx +0 -80
  558. package/src/Status/__tests__/Status.e2e.js +0 -23
  559. package/src/Status/__tests__/Status.spec.js +0 -48
  560. package/src/Status/index.js +0 -1
  561. package/src/SubNav/SubNav.js +0 -25
  562. package/src/SubNav/SubNav.stories.mdx +0 -234
  563. package/src/SubNav/SubNavHeader.js +0 -122
  564. package/src/SubNav/SubNavLink.js +0 -92
  565. package/src/SubNav/SubNavLinkSection.js +0 -75
  566. package/src/SubNav/SubNavSection.js +0 -75
  567. package/src/SubNav/SubNavSectionLabel.js +0 -67
  568. package/src/SubNav/SubNavSections.js +0 -20
  569. package/src/SubNav/__tests__/SubNav.e2e.js +0 -23
  570. package/src/SubNav/index.js +0 -6
  571. package/src/Switch/Switch.js +0 -97
  572. package/src/Switch/Switch.stories.mdx +0 -76
  573. package/src/Switch/__tests__/Switch.e2e.js +0 -33
  574. package/src/Switch/index.js +0 -1
  575. package/src/Table/Cell.js +0 -49
  576. package/src/Table/TFooter.js +0 -58
  577. package/src/Table/Table.js +0 -96
  578. package/src/Table/Table.stories.mdx +0 -330
  579. package/src/Table/Tbody.js +0 -13
  580. package/src/Table/Thead.js +0 -11
  581. package/src/Table/Tr.js +0 -28
  582. package/src/Table/__tests__/Table.e2e.js +0 -41
  583. package/src/Table/index.js +0 -6
  584. package/src/Tabs/TabGroup.js +0 -46
  585. package/src/Tabs/TabPanels.js +0 -32
  586. package/src/Tabs/Tabs.js +0 -227
  587. package/src/Tabs/Tabs.stories.mdx +0 -211
  588. package/src/Tabs/TabsContext.js +0 -5
  589. package/src/Tabs/__tests__/Tabs.e2e.js +0 -253
  590. package/src/Tabs/components.js +0 -66
  591. package/src/Tabs/index.js +0 -3
  592. package/src/Tabs/useTabsFocus.js +0 -28
  593. package/src/Tag/Tag.js +0 -72
  594. package/src/Tag/Tag.stories.mdx +0 -47
  595. package/src/Tag/__tests__/Tag.e2e.js +0 -37
  596. package/src/Tag/index.js +0 -1
  597. package/src/TextButton/TextButton.js +0 -102
  598. package/src/TextButton/TextButton.stories.mdx +0 -71
  599. package/src/TextButton/__tests__/TextButton.e2e.js +0 -23
  600. package/src/TextButton/index.js +0 -1
  601. package/src/TextInput/TextInput.js +0 -67
  602. package/src/TextInput/TextInput.stories.mdx +0 -228
  603. package/src/TextInput/__tests__/TextInput.e2e.js +0 -73
  604. package/src/TextInput/index.js +0 -1
  605. package/src/Textarea/Textarea.js +0 -74
  606. package/src/Textarea/Textarea.stories.mdx +0 -105
  607. package/src/Textarea/TextareaInput.js +0 -77
  608. package/src/Textarea/__tests__/Textarea.e2e.js +0 -37
  609. package/src/Textarea/index.js +0 -1
  610. package/src/ThemeProvider/ThemeProvider.js +0 -193
  611. package/src/ThemeProvider/hooks.js +0 -5
  612. package/src/ThemeProvider/index.js +0 -2
  613. package/src/TimePicker/TimePicker.js +0 -128
  614. package/src/TimePicker/TimePicker.stories.mdx +0 -171
  615. package/src/TimePicker/__tests__/TimePicker.e2e.js +0 -37
  616. package/src/TimePicker/__tests__/TimePicker.spec.js +0 -2099
  617. package/src/TimePicker/index.js +0 -1
  618. package/src/ToggleCheckbox/ToggleCheckbox.js +0 -169
  619. package/src/ToggleCheckbox/ToggleCheckbox.stories.mdx +0 -96
  620. package/src/ToggleCheckbox/__tests__/ToggleCheckbox.e2e.js +0 -59
  621. package/src/ToggleCheckbox/index.js +0 -1
  622. package/src/ToggleInput/ToggleInput.js +0 -89
  623. package/src/ToggleInput/ToggleInput.stories.mdx +0 -171
  624. package/src/ToggleInput/__tests__/ToggleInput.e2e.js +0 -109
  625. package/src/ToggleInput/index.js +0 -1
  626. package/src/Tooltip/Tooltip.js +0 -72
  627. package/src/Tooltip/Tooltip.stories.mdx +0 -127
  628. package/src/Tooltip/__tests__/Tooltip.e2e.js +0 -33
  629. package/src/Tooltip/__tests__/Tooltip.spec.js +0 -306
  630. package/src/Tooltip/hooks/useTooltipHandlers.js +0 -39
  631. package/src/Tooltip/hooks/useTooltipLayout.js +0 -21
  632. package/src/Tooltip/index.js +0 -1
  633. package/src/Tooltip/utils/__tests__/positionTooltip.spec.js +0 -114
  634. package/src/Tooltip/utils/positionTooltip.js +0 -83
  635. package/src/Typography/Typography.js +0 -24
  636. package/src/Typography/Typography.stories.mdx +0 -86
  637. package/src/Typography/TypographyProps.js +0 -30
  638. package/src/Typography/__tests__/Typography.e2e.js +0 -25
  639. package/src/Typography/__tests__/Typography.spec.js +0 -32
  640. package/src/Typography/__tests__/__snapshots__/Typography.spec.js.snap +0 -103
  641. package/src/Typography/constants.js +0 -9
  642. package/src/Typography/index.js +0 -1
  643. package/src/Typography/utils.js +0 -69
  644. package/src/VisuallyHidden/VisuallyHidden.js +0 -12
  645. package/src/VisuallyHidden/index.js +0 -1
  646. package/src/helpers/__tests__/useId.spec.js +0 -39
  647. package/src/helpers/escapeSelector.js +0 -1
  648. package/src/helpers/genId.js +0 -2
  649. package/src/helpers/getDefaultLocale.js +0 -33
  650. package/src/helpers/getFocusableNodes.js +0 -35
  651. package/src/helpers/handleResponsiveValues.js +0 -34
  652. package/src/helpers/keyboardKeys.js +0 -17
  653. package/src/helpers/setOpacity.js +0 -4
  654. package/src/helpers/setTabIndexOnFirstItem.js +0 -7
  655. package/src/helpers/useElementOnScreen.js +0 -27
  656. package/src/helpers/useId.js +0 -8
  657. package/src/helpers/useIntersection.js +0 -31
  658. package/src/helpers/useLockScroll.js +0 -14
  659. package/src/helpers/usePrevious.js +0 -9
  660. package/src/helpers/useResizeObserver.js +0 -22
  661. package/src/index.js +0 -65
  662. package/src/themes/ColorButton.js +0 -24
  663. package/src/themes/Theme.stories.mdx +0 -227
  664. package/src/themes/__tests__/extendTheme.spec.js +0 -119
  665. package/src/themes/colors.js +0 -46
  666. package/src/themes/common-theme.js +0 -19
  667. package/src/themes/darkTheme/dark-colors.js +0 -49
  668. package/src/themes/darkTheme/dark-shadows.js +0 -10
  669. package/src/themes/darkTheme/index.js +0 -9
  670. package/src/themes/extendTheme.js +0 -60
  671. package/src/themes/index.js +0 -4
  672. package/src/themes/lightTheme/index.js +0 -9
  673. package/src/themes/lightTheme/light-colors.js +0 -49
  674. package/src/themes/lightTheme/light-shadows.js +0 -10
  675. package/src/themes/sizes.js +0 -10
  676. package/src/themes/utils.js +0 -50
  677. package/src/v2/Breadcrumbs/Breadcrumbs.js +0 -45
  678. package/src/v2/Breadcrumbs/Breadcrumbs.stories.mdx +0 -129
  679. package/src/v2/Breadcrumbs/Crumb.js +0 -30
  680. package/src/v2/Breadcrumbs/CrumbLink.js +0 -33
  681. package/src/v2/Breadcrumbs/CrumbSimpleMenu.js +0 -30
  682. package/src/v2/Breadcrumbs/Divider.js +0 -16
  683. package/src/v2/Breadcrumbs/__tests__/Breadcrumbs.e2e.js +0 -47
  684. package/src/v2/Breadcrumbs/__tests__/Breadcrumbs.spec.js +0 -47
  685. package/src/v2/Breadcrumbs/index.js +0 -4
  686. package/src/v2/Link/Link.js +0 -79
  687. package/src/v2/Link/Link.stories.mdx +0 -113
  688. package/src/v2/Link/__tests__/Link.e2e.js +0 -23
  689. package/src/v2/Link/index.js +0 -1
  690. package/src/v2/LinkButton/LinkButton.js +0 -105
  691. package/src/v2/LinkButton/LinkButton.stories.mdx +0 -153
  692. package/src/v2/LinkButton/__tests__/LinkButton.e2e.js +0 -89
  693. package/src/v2/LinkButton/index.js +0 -1
  694. package/src/v2/MainNav/MainNav.js +0 -31
  695. package/src/v2/MainNav/MainNav.stories.mdx +0 -197
  696. package/src/v2/MainNav/MainNavContext.js +0 -5
  697. package/src/v2/MainNav/NavBrand.js +0 -79
  698. package/src/v2/MainNav/NavCondense.js +0 -44
  699. package/src/v2/MainNav/NavLink.js +0 -143
  700. package/src/v2/MainNav/NavSection.js +0 -53
  701. package/src/v2/MainNav/NavSections.js +0 -20
  702. package/src/v2/MainNav/NavUser.js +0 -53
  703. package/src/v2/MainNav/__tests__/MainNav.e2e.js +0 -23
  704. package/src/v2/MainNav/index.js +0 -7
  705. package/src/v2/MainNav/strapi-img.png +0 -0
  706. package/src/v2/Pagination/Pagination.js +0 -37
  707. package/src/v2/Pagination/Pagination.stories.mdx +0 -97
  708. package/src/v2/Pagination/PaginationContext.js +0 -4
  709. package/src/v2/Pagination/__tests__/Pagination.e2e.js +0 -23
  710. package/src/v2/Pagination/assets/next.svg +0 -3
  711. package/src/v2/Pagination/assets/previous.svg +0 -3
  712. package/src/v2/Pagination/components.js +0 -136
  713. package/src/v2/Pagination/index.js +0 -2
  714. package/src/v2/SimpleMenu/SimpleMenu.js +0 -252
  715. package/src/v2/SimpleMenu/SimpleMenu.stories.mdx +0 -220
  716. package/src/v2/SimpleMenu/__tests__/SimpleMenu.e2e.js +0 -100
  717. package/src/v2/SimpleMenu/__tests__/SimpleMenu.spec.js +0 -48
  718. package/src/v2/SimpleMenu/index.js +0 -1
  719. package/src/v2/SimpleMenu/utils.js +0 -12
  720. package/src/v2/SubNav/SubNav.js +0 -25
  721. package/src/v2/SubNav/SubNav.stories.mdx +0 -234
  722. package/src/v2/SubNav/SubNavHeader.js +0 -122
  723. package/src/v2/SubNav/SubNavLink.js +0 -95
  724. package/src/v2/SubNav/SubNavLinkSection.js +0 -75
  725. package/src/v2/SubNav/SubNavSection.js +0 -75
  726. package/src/v2/SubNav/SubNavSectionLabel.js +0 -67
  727. package/src/v2/SubNav/SubNavSections.js +0 -20
  728. package/src/v2/SubNav/__tests__/SubNav.e2e.js +0 -23
  729. package/src/v2/SubNav/index.js +0 -6
  730. package/src/v2/index.js +0 -7
  731. package/test-bundler.js +0 -35
  732. package/tests/check-exports.spec.js +0 -36
  733. package/webpack.config.js +0 -84
@@ -1,39 +0,0 @@
1
- const { devices } = require('@playwright/test');
2
-
3
- const config = {
4
- testMatch: '**/__tests__/*.e2e.js',
5
- // Forbid test.only on CI
6
- forbidOnly: !!process.env.CI,
7
- /* Retry on CI only */
8
- retries: process.env.CI ? 2 : 0,
9
- use: {
10
- baseURL: 'http://localhost:6006',
11
- headless: true,
12
- contextOptions: {
13
- locale: 'en-US', // set the locale
14
- },
15
- actionTimeout: 0,
16
- },
17
- projects: [
18
- {
19
- name: 'chromium',
20
- use: {
21
- ...devices['Desktop Chrome'],
22
- },
23
- },
24
- {
25
- name: 'firefox',
26
- use: {
27
- ...devices['Desktop Firefox'],
28
- },
29
- },
30
- {
31
- name: 'webkit',
32
- use: {
33
- ...devices['Desktop Safari'],
34
- },
35
- },
36
- ],
37
- };
38
-
39
- module.exports = config;
@@ -1,148 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import { Typography } from '../Typography';
5
- import { AccordionContext } from './AccordionContext';
6
- import { useId } from '../helpers/useId';
7
- import { Box } from '../Box';
8
- import { Flex } from '../Flex';
9
-
10
- const getBorder = ({ theme, expanded, variant, disabled, error }) => {
11
- if (error) {
12
- return `1px solid ${theme.colors.danger600} !important`;
13
- }
14
-
15
- if (disabled) {
16
- return `1px solid ${theme.colors.neutral150}`;
17
- }
18
-
19
- if (expanded) {
20
- return `1px solid ${theme.colors.primary600}`;
21
- }
22
-
23
- if (variant === 'primary') {
24
- return `1px solid ${theme.colors.neutral0}`;
25
- }
26
-
27
- return `1px solid ${theme.colors.neutral100}`;
28
- };
29
-
30
- export const AccordionTypography = styled(Typography)``;
31
-
32
- const AccordionWrapper = styled(Box)`
33
- border: ${getBorder};
34
-
35
- &:hover:not([aria-disabled='true']) {
36
- border: 1px solid ${({ theme }) => theme.colors.primary600};
37
-
38
- ${AccordionTypography} {
39
- color: ${({ theme, expanded }) => (expanded ? undefined : theme.colors.primary700)};
40
- }
41
-
42
- ${Typography} {
43
- color: ${({ theme, expanded }) => (expanded ? undefined : theme.colors.primary600)};
44
- }
45
-
46
- & > ${Flex} {
47
- background: ${({ theme }) => theme.colors.primary100};
48
- }
49
-
50
- [data-strapi-dropdown='true'] {
51
- background: ${({ theme }) => theme.colors.primary200};
52
- }
53
- }
54
- `;
55
-
56
- export const Accordion = ({
57
- children,
58
- expanded,
59
- id,
60
- size,
61
- variant,
62
- disabled,
63
- error,
64
- hasErrorMessage,
65
- onToggle,
66
- toggle,
67
- }) => {
68
- const generatedId = useId('accordion', id);
69
-
70
- return (
71
- <AccordionContext.Provider value={{ expanded, onToggle, toggle, id: generatedId, size, variant, disabled }}>
72
- <AccordionWrapper
73
- data-strapi-expanded={expanded}
74
- disabled={disabled}
75
- aria-disabled={disabled}
76
- expanded={expanded}
77
- hasRadius
78
- variant={variant}
79
- error={error}
80
- >
81
- {children}
82
- </AccordionWrapper>
83
- {error && hasErrorMessage && (
84
- <Box paddingTop={1}>
85
- <Typography variant="pi" textColor="danger600">
86
- {error}
87
- </Typography>
88
- </Box>
89
- )}
90
- </AccordionContext.Provider>
91
- );
92
- };
93
-
94
- Accordion.defaultProps = {
95
- disabled: false,
96
- error: undefined,
97
- expanded: false,
98
- hasErrorMessage: true,
99
- id: undefined,
100
- toggle: false,
101
- size: 'M',
102
- variant: 'primary',
103
- onToggle: undefined,
104
- toggle: undefined,
105
- };
106
-
107
- Accordion.propTypes = {
108
- children: PropTypes.node.isRequired,
109
- /**
110
- * If `true`, the accordion will be disabled.
111
- */
112
- disabled: PropTypes.bool,
113
- /**
114
- * If defined, will add a border (borderColor: `danger600`) and display the error message below the component.
115
- */
116
- error: PropTypes.string,
117
- /**
118
- * If `true`, an expanded Accordion will be rendered.
119
- */
120
- expanded: PropTypes.bool,
121
- /**
122
- * If `false`, the error message won't show.
123
- * If the `Accordion` is as child of an `AccordionGroup`, this prop will be set to `false` automatically.
124
- * The error message of the `AccordionGroup` will be shown below the group instead of the Accordion itself.
125
- */
126
- hasErrorMessage: PropTypes.bool,
127
- /**
128
- * The id of the component.
129
- */
130
- id: PropTypes.string,
131
- /**
132
- * The callback invoked after a click event on the `AccordionToggle`.
133
- */
134
- onToggle: PropTypes.func,
135
- /**
136
- * Size of the Accordion.
137
- */
138
- size: PropTypes.oneOf(['S', 'M']),
139
- /**
140
- * DEPRECATED: The callback invoked after a click event on the `AccordionToggle`.
141
- */
142
- toggle: PropTypes.func,
143
- /**
144
- * Color variant for `Accordion`. The "secondary" variant reverses the background colors.
145
- * This is useful when you want to display a list and alternate the colors of the accordions.
146
- */
147
- variant: PropTypes.oneOf(['primary', 'secondary']),
148
- };
@@ -1,327 +0,0 @@
1
- <!--- Accordion.stories.mdx --->
2
-
3
- import { useState } from 'react';
4
- import { Meta, Story, Canvas } from '@storybook/addon-docs';
5
- import { ArgsTable } from '@storybook/addon-docs';
6
- import Pencil from '@strapi/icons/Pencil';
7
- import Information from '@strapi/icons/Information';
8
- import Trash from '@strapi/icons/Trash';
9
- import User from '@strapi/icons/User';
10
- import Plus from '@strapi/icons/Plus';
11
-
12
- import { Accordion } from './Accordion';
13
- import { AccordionToggle } from './AccordionToggle';
14
- import { AccordionContent } from './AccordionContent';
15
- import { AccordionGroup } from './AccordionGroup';
16
-
17
- import { KeyboardNavigable } from '../KeyboardNavigable';
18
- import { Box } from '../Box';
19
- import { Flex } from '../Flex';
20
- import { Typography } from '../Typography';
21
- import { IconButton } from '../IconButton';
22
- import { TextButton } from '../TextButton';
23
- import { TextInput } from '../TextInput';
24
- import { Stack } from '../Stack';
25
- import { Tooltip } from '../Tooltip';
26
-
27
- <Meta title="Design System/Components/Accordion" component={Accordion} />
28
-
29
- # Accordion
30
-
31
- Accordions are collapsable blocks that vertically hide a stack of content. Clicking on the block reveals the associated content.
32
-
33
- **Best practices**
34
-
35
- - Use accordion when you need big and/or related chunks of content to be organized in a same place.
36
- - Use accordion for lower priority information.
37
- - Use to shorten pages and increase readability.
38
- - The chevron icon pointing down indicates a collapsed state and pointing up indicates an expanded state.
39
- - Hover and active states should be used anytime it's possible.
40
- - Content should not scroll within an accordion.
41
- - Use chevron icon on the left side if call-to-actions are available on the right side.
42
-
43
- [View source](https://github.com/strapi/design-system/tree/main/packages/strapi-design-system/src/Accordion)
44
-
45
- ## Imports
46
-
47
- ```js
48
- import { Accordion, AccordionToggle, AccordionContent, AccordionGroup } from '@strapi/design-system/Accordion';
49
- ```
50
-
51
- ## Usage
52
-
53
- <Canvas>
54
- <Story name="base">
55
- {() => {
56
- const [expanded, setExpanded] = useState(false);
57
- return (
58
- <div>
59
- <Box padding={8} background="neutral100">
60
- <Accordion
61
- error="The component contain error(s)"
62
- expanded={expanded}
63
- onToggle={() => setExpanded((s) => !s)}
64
- id="acc-1"
65
- size="S"
66
- >
67
- <AccordionToggle title="User informations" />
68
- <AccordionContent>
69
- <Box padding={3}>
70
- <Typography>My name is John Duff</Typography>
71
- </Box>
72
- </AccordionContent>
73
- </Accordion>
74
- </Box>
75
- <Box padding={8} background="neutral0">
76
- <Accordion expanded={expanded} onToggle={() => setExpanded((s) => !s)} id="acc-2" variant="secondary">
77
- <AccordionToggle
78
- title="User informations 2"
79
- description="The following contains information about the current user 2"
80
- action={<IconButton onClick={() => console.log('edit')} label="Edit" icon={<Pencil />} />}
81
- />
82
- <AccordionContent>
83
- <Box padding={3}>
84
- <Typography>My name is John Duff</Typography>
85
- </Box>
86
- </AccordionContent>
87
- </Accordion>
88
- </Box>
89
- <Box padding={8} background="neutral100">
90
- <Accordion expanded={expanded} onToggle={() => setExpanded((s) => !s)} id="acc-3">
91
- <AccordionToggle
92
- togglePosition="left"
93
- title="User informations 3"
94
- description="The following contains information about the current user 3"
95
- />
96
- <AccordionContent>
97
- <Box padding={3}>
98
- <Typography>My name is John Duff</Typography>
99
- </Box>
100
- </AccordionContent>
101
- </Accordion>
102
- </Box>
103
- <Box padding={8} background="neutral0">
104
- <Accordion expanded={expanded} onToggle={() => setExpanded((s) => !s)} id="acc-4" variant="secondary">
105
- <AccordionToggle
106
- togglePosition="left"
107
- title="User informations 4"
108
- action={<IconButton onClick={() => console.log('edit')} label="Edit" icon={<Pencil />} />}
109
- />
110
- <AccordionContent>
111
- <Box padding={3}>
112
- <Typography>My name is John Duff</Typography>
113
- </Box>
114
- </AccordionContent>
115
- </Accordion>
116
- </Box>
117
- </div>
118
- );
119
- }}
120
- </Story>
121
- </Canvas>
122
-
123
- ## AccordionGroup
124
-
125
- <Canvas>
126
- <Story name="accordion-group">
127
- {() => {
128
- const [expandedID, setExpandedID] = useState(null);
129
- const handleToggle = (id) => () => {
130
- setExpandedID((s) => (s === id ? null : id));
131
- };
132
- return (
133
- <div>
134
- <Box padding={8} background="neutral0">
135
- <AccordionGroup
136
- error="The components contain error(s)"
137
- footer={
138
- <Flex justifyContent="center" height="48px" background="neutral150">
139
- <TextButton disabled={true} startIcon={<Plus />}>
140
- Add an entry
141
- </TextButton>
142
- </Flex>
143
- }
144
- label="Label"
145
- labelAction={
146
- <Tooltip description="Content of the tooltip">
147
- <button
148
- aria-label="Information about the email"
149
- style={{
150
- border: 'none',
151
- padding: 0,
152
- background: 'transparent',
153
- }}
154
- >
155
- <Information aria-hidden={true} />
156
- </button>
157
- </Tooltip>
158
- }
159
- >
160
- <Accordion
161
- error="The components contain error(s)"
162
- expanded={expandedID === 'acc-1'}
163
- onToggle={handleToggle('acc-1')}
164
- id="acc-1"
165
- size="S"
166
- >
167
- <AccordionToggle
168
- startIcon={<User aria-hidden={true} />}
169
- action={
170
- <Stack horizontal spacing={0}>
171
- <IconButton noBorder onClick={() => console.log('edit')} label="Edit" icon={<Pencil />} />
172
- <IconButton noBorder onClick={() => console.log('delete')} label="Delete" icon={<Trash />} />
173
- </Stack>
174
- }
175
- title="User informations"
176
- togglePosition="left"
177
- />
178
- <AccordionContent>
179
- <Box padding={3}>
180
- <TextInput label="Name" />
181
- </Box>
182
- </AccordionContent>
183
- </Accordion>
184
- <Accordion
185
- error="The component contain error(s)"
186
- expanded={expandedID === 'acc-2'}
187
- onToggle={handleToggle('acc-2')}
188
- id="acc-2"
189
- size="S"
190
- >
191
- <AccordionToggle title="User informations" togglePosition="left" />
192
- <AccordionContent>
193
- <Box padding={3}>
194
- <Typography>My name is John Duff</Typography>
195
- </Box>
196
- </AccordionContent>
197
- </Accordion>
198
- <Accordion expanded={expandedID === 'acc-3'} onToggle={handleToggle('acc-3')} id="acc-3" size="S">
199
- <AccordionToggle title="User informations" togglePosition="left" />
200
- <AccordionContent>
201
- <Box padding={3}>
202
- <Typography>My name is Michka</Typography>
203
- </Box>
204
- </AccordionContent>
205
- </Accordion>
206
- <Accordion expanded={expandedID === 'acc-4'} onToggle={handleToggle('acc-4')} id="acc-4" size="S">
207
- <AccordionToggle
208
- startIcon={<User aria-hidden={true} />}
209
- title="User informations"
210
- togglePosition="left"
211
- />
212
- <AccordionContent>
213
- <Box padding={3}>
214
- <Typography>My name is John Duff</Typography>
215
- </Box>
216
- </AccordionContent>
217
- </Accordion>
218
- </AccordionGroup>
219
- </Box>
220
- </div>
221
- );
222
- }}
223
- </Story>
224
- </Canvas>
225
-
226
- ## Accordion keyboard navigable
227
-
228
- The accordion component has two main states: collapsed and expanded. By default it has a collapsed state. If Call-to-actions are required, use them on the right side and use chevron icon on the left one.
229
-
230
- <Canvas>
231
- <Story name="keyboard navigable">
232
- {() => {
233
- return (
234
- <KeyboardNavigable attributeName="data-strapi-accordion-toggle">
235
- <Box padding={8} background="neutral100">
236
- <Accordion expanded={false} onToggle={() => {}} id="acc-1">
237
- <AccordionToggle
238
- title="User informations"
239
- description="The following contains information about the current user"
240
- />
241
- <AccordionContent>
242
- <Box padding={3}>
243
- <Typography>My name is John Duff</Typography>
244
- </Box>
245
- </AccordionContent>
246
- </Accordion>
247
- </Box>
248
- <Box padding={8} background="neutral0">
249
- <Accordion expanded={false} onToggle={() => {}} id="acc-2">
250
- <AccordionToggle
251
- variant="secondary"
252
- title="User informations 2"
253
- description="The following contains information about the current user 2"
254
- />
255
- <AccordionContent>
256
- <Box padding={3}>
257
- <Typography>My name is John Duff</Typography>
258
- </Box>
259
- </AccordionContent>
260
- </Accordion>
261
- </Box>
262
- <Box padding={8} background="neutral100">
263
- <Accordion expanded={false} onToggle={() => {}} id="acc-3">
264
- <AccordionToggle
265
- togglePosition="left"
266
- title="User informations 3"
267
- description="The following contains information about the current user 3"
268
- />
269
- <AccordionContent>
270
- <Box padding={3}>
271
- <Typography>My name is John Duff</Typography>
272
- </Box>
273
- </AccordionContent>
274
- </Accordion>
275
- </Box>
276
- <Box padding={8} background="neutral0">
277
- <Accordion expanded={false} onToggle={() => {}} id="acc-4">
278
- <AccordionToggle
279
- variant="secondary"
280
- togglePosition="left"
281
- title="User informations 4"
282
- action={<IconButton onClick={() => console.log('edit')} label="Edit" icon={<Pencil />} />}
283
- />
284
- <AccordionContent>
285
- <Box padding={3}>
286
- <Typography>My name is John Duff</Typography>
287
- </Box>
288
- </AccordionContent>
289
- </Accordion>
290
- </Box>
291
- </KeyboardNavigable>
292
- );
293
- }}
294
- </Story>
295
- </Canvas>
296
-
297
- ## Accordion expanded
298
-
299
- The Accordion component can also be open by default using the parameter `expanded={true}`.
300
-
301
- <Canvas>
302
- <Story name="expanded">
303
- <Accordion expanded={true} onToggle={() => {}} id="acc-1">
304
- <AccordionToggle
305
- title="User informations"
306
- description="The following contains information about the current user"
307
- />
308
- <AccordionContent>
309
- <Box padding={3}>
310
- <Typography>My name is John Duff</Typography>
311
- </Box>
312
- </AccordionContent>
313
- </Accordion>
314
- </Story>
315
- </Canvas>
316
-
317
- ## Accordion props
318
-
319
- <ArgsTable of={Accordion} />
320
-
321
- ## AccordionGroup props
322
-
323
- <ArgsTable of={AccordionGroup} />
324
-
325
- ## AccordionToggle props
326
-
327
- <ArgsTable of={AccordionToggle} />
@@ -1,26 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { useAccordion } from './AccordionContext';
4
- import { Box } from '../Box';
5
-
6
- export const AccordionContent = ({ children, ...props }) => {
7
- const { expanded, id } = useAccordion();
8
-
9
- if (!expanded) {
10
- return null;
11
- }
12
-
13
- const idContent = `accordion-content-${id}`;
14
- const ariaLabelId = `accordion-label-${id}`;
15
- const ariaDescriptionId = `accordion-desc-${id}`;
16
-
17
- return (
18
- <Box role="region" id={idContent} aria-labelledby={ariaLabelId} aria-describedby={ariaDescriptionId} {...props}>
19
- {children}
20
- </Box>
21
- );
22
- };
23
-
24
- AccordionContent.propTypes = {
25
- children: PropTypes.node.isRequired,
26
- };
@@ -1,5 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
-
3
- export const AccordionContext = createContext();
4
-
5
- export const useAccordion = () => useContext(AccordionContext);
@@ -1,114 +0,0 @@
1
- import React, { Children, cloneElement } from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import { Box } from '../Box';
5
- import { Typography } from '../Typography';
6
- import { Flex } from '../Flex';
7
- import { KeyboardNavigable } from '../KeyboardNavigable';
8
-
9
- const AccordionFooter = styled(Box)`
10
- border-bottom: 1px solid ${({ theme }) => theme.colors.neutral200};
11
- border-right: 1px solid ${({ theme }) => theme.colors.neutral200};
12
- border-left: 1px solid ${({ theme }) => theme.colors.neutral200};
13
- border-radius: 0 0 ${({ theme }) => theme.borderRadius} ${({ theme }) => theme.borderRadius};
14
- `;
15
-
16
- const EnhancedGroup = styled(Box)`
17
- & > * {
18
- & > * {
19
- border-radius: unset;
20
- }
21
- }
22
-
23
- & > * {
24
- border-radius: unset;
25
- border-right: 1px solid ${({ theme }) => theme.colors.neutral200};
26
- border-left: 1px solid ${({ theme }) => theme.colors.neutral200};
27
- border-bottom: 1px solid ${({ theme }) => theme.colors.neutral200};
28
- }
29
-
30
- & > *:first-of-type {
31
- border-top: 1px solid ${({ theme }) => theme.colors.neutral200};
32
- border-radius: ${({ theme }) => theme.borderRadius} ${({ theme }) => theme.borderRadius} 0 0;
33
- & > * {
34
- border-radius: ${({ theme }) => theme.borderRadius} ${({ theme }) => theme.borderRadius} 0 0;
35
- }
36
-
37
- &:hover {
38
- border-top: 1px solid ${({ theme }) => theme.colors.primary600};
39
- }
40
- }
41
-
42
- & [data-strapi-expanded='true'] {
43
- border: 1px solid ${({ theme }) => theme.colors.primary600};
44
- }
45
-
46
- ${({ theme, footer }) => `
47
- &:not(${footer}) {
48
- & > *:last-of-type {
49
- border-radius: 0 0 ${theme.borderRadius} ${theme.borderRadius};
50
- }
51
- }
52
- `}
53
- `;
54
-
55
- const LabelAction = styled(Box)`
56
- svg path {
57
- fill: ${({ theme }) => theme.colors.neutral500};
58
- }
59
- `;
60
-
61
- export const AccordionGroup = ({ children, footer, label, labelAction, error }) => {
62
- const childrenArray = Children.toArray(children).map((child) => {
63
- return cloneElement(child, { hasErrorMessage: false });
64
- });
65
-
66
- return (
67
- <KeyboardNavigable attributeName="data-strapi-accordion-toggle">
68
- {label && (
69
- <Flex paddingBottom={1}>
70
- <Typography variant="pi" as="label" textColor="neutral800" fontWeight="bold">
71
- {label}
72
- </Typography>
73
- {labelAction && <LabelAction paddingLeft={1}>{labelAction}</LabelAction>}
74
- </Flex>
75
- )}
76
- <EnhancedGroup footer={footer}>{childrenArray}</EnhancedGroup>
77
- {footer && <AccordionFooter>{footer}</AccordionFooter>}
78
- {error && (
79
- <Box paddingTop={1}>
80
- <Typography variant="pi" textColor="danger600">
81
- {error}
82
- </Typography>
83
- </Box>
84
- )}
85
- </KeyboardNavigable>
86
- );
87
- };
88
-
89
- AccordionGroup.defaultProps = {
90
- footer: null,
91
- error: undefined,
92
- label: null,
93
- labelAction: undefined,
94
- };
95
-
96
- AccordionGroup.propTypes = {
97
- children: PropTypes.node.isRequired,
98
- /**
99
- * If defined, the component will show the error message at the bottom of the `AccordionGroup` and will hide all Accordion error messages children (in order to display only one error).
100
- */
101
- error: PropTypes.string,
102
- /**
103
- * Render a node a last child. Mainly used for an "Add new accordion" button
104
- */
105
- footer: PropTypes.node,
106
- /**
107
- * The label of the AccordionGroup
108
- */
109
- label: PropTypes.string,
110
- /**
111
- * Will render a node to the right of the label
112
- */
113
- labelAction: PropTypes.node,
114
- };