@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,197 +0,0 @@
1
- <!--- MainNav.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 Write from '@strapi/icons/Write';
7
- import Layer from '@strapi/icons/Layer';
8
- import Landscape from '@strapi/icons/Landscape';
9
- import Information from '@strapi/icons/Information';
10
- import Puzzle from '@strapi/icons/Puzzle';
11
- import ShoppingCart from '@strapi/icons/ShoppingCart';
12
- import Cog from '@strapi/icons/Cog';
13
- import { MainNav } from './MainNav';
14
- import { NavSection } from './NavSection';
15
- import { NavSections } from './NavSections';
16
- import { NavCondense } from './NavCondense';
17
- import { NavLink } from './NavLink';
18
- import { NavUser } from './NavUser';
19
- import { NavBrand } from './NavBrand';
20
- import { Box } from '../Box';
21
- import { Divider } from '../Divider';
22
- import strapiImage from './strapi-img.png';
23
-
24
- <Meta title="Design System/Components/MainNav" component={MainNav} />
25
-
26
- # MainNav
27
-
28
- The Main Navigation is consistenly available and displayed on all the different pages of the admin panel to access the different main sections. Thanks to it the users can easily navigation from a section to another. The Main Navigation can be whether collapsed or extended depending on the user's choice.
29
-
30
- **Best practices**
31
-
32
- - It is not possible to have more than 2 navigation bars next to each others.
33
- - Each section has its own icon and is associated with a Tooltip.
34
- - Do not use icons for headers
35
- - Use sentence case for section names and all caps for header labels.
36
- - Logo asset on the top-left of the Main Navigation can be customized.
37
- [View source](https://github.com/strapi/design-system/tree/main/packages/strapi-design-system/src/MainNav)
38
-
39
- ## Imports
40
-
41
- ```js
42
- import {
43
- MainNav,
44
- NavSection,
45
- NavSections,
46
- NavCondense,
47
- NavBrand,
48
- NavUser,
49
- NavLink,
50
- } from '@strapi/design-system/MainNav';
51
- ```
52
-
53
- ## Usage
54
-
55
- The Main Navigation can be whether collapsed or extended depending on the user's choice with the Arrow icon at the bottom.
56
-
57
- The user profile can be accessed by clicking on the user name at the bottom of the Main Navigation, as much as the possibility to log out the admin panel.
58
-
59
- According to permissions, certain sections of the Main Navigation might not be visible nor accessible by specific users.
60
-
61
- ## Hierarchy
62
-
63
- Related sections are gathered under specific headers within the Main Navigation. These headers are helpful to understand the global product hierarchy.
64
-
65
- Exception made for core plugins (i.e. Content Manager, Content-types Builder, Media Library) but a plugin should not take place in the Main Navigation. The Main Navigation remains are concise as possible to quickly reach the most important actions.
66
-
67
- ### MainNav
68
-
69
- <Canvas>
70
- <Story name="base">
71
- {() => {
72
- const [condensed, setCondensed] = useState(false);
73
- return (
74
- <Box background="neutral100" padding={10} style={{ height: '100vh' }}>
75
- <MainNav condensed={condensed}>
76
- <NavBrand workplace="Workplace" title="Strapi Dashboard" icon={<img src={strapiImage} alt="" />} />
77
- <Divider />
78
- <NavSections>
79
- <NavLink to="/cm" icon={<Write />} className="active">
80
- Content-type-builder
81
- </NavLink>
82
- <NavSection label="Plugins">
83
- <NavLink to="/builder" icon={<Layer />}>
84
- Builder
85
- </NavLink>
86
- <NavLink to="/content" icon={<Landscape />}>
87
- Media library
88
- </NavLink>
89
- <NavLink to="/content" icon={<Information />}>
90
- Documentation
91
- </NavLink>
92
- </NavSection>
93
- <NavSection label="General">
94
- <NavLink to="/builder" icon={<Puzzle />}>
95
- Plugins
96
- </NavLink>
97
- <NavLink to="/content" icon={<ShoppingCart />}>
98
- Marketplace
99
- </NavLink>
100
- <NavLink to="/content" icon={<Cog />}>
101
- Settings
102
- </NavLink>
103
- </NavSection>
104
- </NavSections>
105
- <NavUser src="https://avatars.githubusercontent.com/u/3874873?v=4" to="/somewhere-i-belong">
106
- John Duff
107
- </NavUser>
108
- <NavCondense onClick={() => setCondensed((s) => !s)}>
109
- {condensed ? 'Expanded the navbar' : 'Collapse the navbar'}
110
- </NavCondense>
111
- </MainNav>
112
- </Box>
113
- );
114
- }}
115
- </Story>
116
- <Story name="notifications">
117
- {() => {
118
- const [condensed, setCondensed] = useState(false);
119
- const numberOfNotifications = 2;
120
- return (
121
- <Box background="neutral100" padding={10} style={{ height: '100vh' }}>
122
- <MainNav condensed={condensed}>
123
- <NavBrand workplace="Workplace" title="Strapi Dashboard" icon={<img src={strapiImage} alt="" />} />
124
- <Divider />
125
- <NavSections>
126
- <NavLink to="/cm" icon={<Write />} className="active">
127
- Content
128
- </NavLink>
129
- <NavSection label="Plugins">
130
- <NavLink to="/builder" icon={<Layer />}>
131
- Builder
132
- </NavLink>
133
- <NavLink to="/content" icon={<Landscape />}>
134
- Media library
135
- </NavLink>
136
- <NavLink to="/content" icon={<Information />}>
137
- Documentation
138
- </NavLink>
139
- </NavSection>
140
- <NavSection label="General">
141
- <NavLink to="/builder" icon={<Puzzle />}>
142
- Plugins
143
- </NavLink>
144
- <NavLink to="/content" badgeContent={'new'} icon={<ShoppingCart />} badgeAriaLabel="new content">
145
- Marketplace
146
- </NavLink>
147
- <NavLink
148
- to="/content"
149
- badgeContent={numberOfNotifications}
150
- icon={<Cog />}
151
- badgeAriaLabel={`${numberOfNotifications} notifications`}
152
- >
153
- Settings
154
- </NavLink>
155
- </NavSection>
156
- </NavSections>
157
- <NavUser initials="MD">Michka des Ronronscelestes</NavUser>
158
- <NavCondense onClick={() => setCondensed((s) => !s)}>
159
- {condensed ? 'Expanded the navbar' : 'Collapse the navbar'}
160
- </NavCondense>
161
- </MainNav>
162
- </Box>
163
- );
164
- }}
165
- </Story>
166
- </Canvas>
167
-
168
- ### Usage with other routing libraries
169
-
170
- To use the Strapi design system NavLink/NavBrand component with a routing library (e.g. react-router-dom), you'll need to pass the react-router-dom `NavLink` component to the `as` prop in order to replace the default HTML anchor `<a />`.
171
- You'll now be able to pass all the react-router-dom `NavLink` props.
172
-
173
- ```jsx
174
- import { NavLink } from '@strapi/design-system/NavLink';
175
- import { NavLink as RouterNavLink } from 'react-router-dom';
176
-
177
- <NavLink as={RouterNavLink} to="/home">
178
- Home
179
- </NavLink>;
180
- ```
181
-
182
- #### (⚠️ Only for Strapi Design System v1.0.0) NextJS usage
183
-
184
- For NextJS, you'll need to wrap the `NavLink` with the `NextLink` component
185
-
186
- ```jsx
187
- import { NavLink } from '@strapi/design-system/NavLink';
188
- import NextLink from 'next/link';
189
-
190
- <NextLink href="/home" passHref>
191
- <NavLink>Home</NavLink>
192
- </NextLink>;
193
- ```
194
-
195
- ## Props
196
-
197
- <ArgsTable of={MainNav} />
@@ -1,5 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
-
3
- export const MainNavContext = createContext();
4
-
5
- export const useMainNav = () => useContext(MainNavContext);
@@ -1,76 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import { NavLink } from 'react-router-dom';
5
- import { Box } from '../Box';
6
- import { Typography } from '../Typography';
7
- import { Flex } from '../Flex';
8
- import { useMainNav } from './MainNavContext';
9
- import { VisuallyHidden } from '../VisuallyHidden';
10
-
11
- const BrandIconWrapper = styled.div`
12
- svg,
13
- img {
14
- border-radius: ${({ theme }) => theme.borderRadius};
15
- object-fit: contain;
16
- height: ${({ condensed }) => (condensed ? `${40 / 16}rem` : `${32 / 16}rem`)};
17
- width: ${({ condensed }) => (condensed ? `${40 / 16}rem` : `${32 / 16}rem`)};
18
- }
19
- `;
20
-
21
- const NavLinkWrapper = styled(NavLink)`
22
- text-decoration: unset;
23
- color: inherit;
24
- `;
25
-
26
- export const NavBrand = ({ workplace, title, icon, to }) => {
27
- const condensed = useMainNav();
28
-
29
- if (condensed) {
30
- return (
31
- <Box paddingLeft={3} paddingRight={3} paddingTop={4} paddingBottom={4}>
32
- <BrandIconWrapper condensed={true}>
33
- <NavLink to={to}>
34
- {icon}
35
- <VisuallyHidden>
36
- <span>{title}</span>
37
- <span>{workplace}</span>
38
- </VisuallyHidden>
39
- </NavLink>
40
- </BrandIconWrapper>
41
- </Box>
42
- );
43
- }
44
-
45
- return (
46
- <Box paddingLeft={3} paddingRight={3} paddingTop={4} paddingBottom={4}>
47
- <Flex>
48
- <BrandIconWrapper as={NavLink} to={to} aria-hidden tabIndex={-1}>
49
- {icon}
50
- </BrandIconWrapper>
51
-
52
- <Box paddingLeft={2}>
53
- <Typography fontWeight="bold" textColor="neutral800" as="span">
54
- <NavLinkWrapper to={to}>
55
- {title}
56
- <VisuallyHidden as="span">{workplace}</VisuallyHidden>
57
- </NavLinkWrapper>
58
- </Typography>
59
- <Typography variant="pi" as="p" textColor="neutral600" aria-hidden>
60
- {workplace}
61
- </Typography>
62
- </Box>
63
- </Flex>
64
- </Box>
65
- );
66
- };
67
-
68
- NavBrand.defaultProps = {
69
- to: '/',
70
- };
71
- NavBrand.propTypes = {
72
- icon: PropTypes.node.isRequired,
73
- title: PropTypes.string.isRequired,
74
- to: PropTypes.string,
75
- workplace: PropTypes.string.isRequired,
76
- };
@@ -1,44 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import ChevronRight from '@strapi/icons/ChevronRight';
5
- import ChevronLeft from '@strapi/icons/ChevronLeft';
6
- import { Icon } from '../Icon';
7
- import { VisuallyHidden } from '../VisuallyHidden';
8
- import { useMainNav } from './MainNavContext';
9
-
10
- const NavCondenseWrapper = styled.button`
11
- background: ${({ theme }) => theme.colors.neutral0};
12
- border: 1px solid ${({ theme }) => theme.colors.neutral150};
13
- border-radius: ${({ theme }) => theme.borderRadius};
14
- display: flex;
15
- align-items: center;
16
- justify-content: center;
17
- position: absolute;
18
- bottom: ${(9 + 4) / 16}rem; // 9 is the height of the svg and 4 is the padding below
19
- right: ${({ theme, condensed }) => (condensed ? 0 : theme.spaces[5])};
20
- transform: ${({ condensed }) => (condensed ? `translateX(50%)` : undefined)};
21
- z-index: 2;
22
- width: ${18 / 16}rem;
23
- height: ${25 / 16}rem;
24
-
25
- svg {
26
- width: ${6 / 16}rem;
27
- height: ${9 / 16}rem;
28
- }
29
- `;
30
-
31
- export const NavCondense = ({ children, ...props }) => {
32
- const condensed = useMainNav();
33
-
34
- return (
35
- <NavCondenseWrapper as="button" condensed={condensed} {...props}>
36
- <Icon as={condensed ? ChevronRight : ChevronLeft} aria-hidden color="neutral600" />
37
- <VisuallyHidden>{children}</VisuallyHidden>
38
- </NavCondenseWrapper>
39
- );
40
- };
41
-
42
- NavCondense.propTypes = {
43
- children: PropTypes.string.isRequired,
44
- };
@@ -1,143 +0,0 @@
1
- import React from 'react';
2
- import styled from 'styled-components';
3
- import PropTypes from 'prop-types';
4
- import { NavLink as RouterLink } from 'react-router-dom';
5
- import { Box } from '../Box';
6
- import { Flex } from '../Flex';
7
- import { Typography } from '../Typography';
8
- import { useMainNav } from './MainNavContext';
9
- import { Tooltip } from '../Tooltip';
10
- import { Badge } from '../Badge';
11
-
12
- const IconBox = styled(Box)`
13
- svg {
14
- width: 1rem;
15
- height: 1rem;
16
- }
17
- `;
18
-
19
- const MainNavLinkWrapper = styled(RouterLink)`
20
- position: relative;
21
- text-decoration: none;
22
- display: block;
23
- border-radius: ${({ theme }) => theme.borderRadius};
24
- background: ${({ theme }) => theme.colors.neutral0};
25
-
26
- ${Typography} {
27
- color: ${({ theme }) => theme.colors.neutral600};
28
- }
29
-
30
- svg path {
31
- fill: ${({ theme }) => theme.colors.neutral500};
32
- }
33
-
34
- &:hover {
35
- background: ${({ theme }) => theme.colors.neutral100};
36
-
37
- ${Typography} {
38
- color: ${({ theme }) => theme.colors.neutral700};
39
- }
40
-
41
- svg path {
42
- fill: ${({ theme }) => theme.colors.neutral600};
43
- }
44
- }
45
-
46
- &.active {
47
- background: ${({ theme }) => theme.colors.primary100};
48
-
49
- svg path {
50
- fill: ${({ theme }) => theme.colors.primary600};
51
- }
52
-
53
- ${Typography} {
54
- color: ${({ theme }) => theme.colors.primary600};
55
- font-weight: 500;
56
- }
57
- }
58
- `;
59
-
60
- const MainNavRow = styled(Flex)`
61
- padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[3]}`};
62
- `;
63
-
64
- const CustomBadge = styled(Badge)`
65
- ${({ condensed }) =>
66
- condensed &&
67
- `
68
- position: absolute;
69
- transform: translate(35%, -50%);
70
- top: 0;
71
- right: 0;
72
- `}
73
-
74
- ${Typography} {
75
- //find a solution to remove !important
76
- color: ${({ theme }) => theme.colors.neutral0} !important;
77
- line-height: 0;
78
- }
79
-
80
- display: flex;
81
- justify-content: center;
82
- align-items: center;
83
- min-width: ${({ theme }) => theme.spaces[6]};
84
- height: ${({ theme }) => theme.spaces[5]};
85
- padding: ${({ theme }) => `0 ${theme.spaces[2]}`};
86
- border-radius: ${({ theme }) => theme.spaces[10]};
87
- background: ${({ theme }) => theme.colors.primary600};
88
- `;
89
-
90
- export const NavLink = ({ children, icon, badgeContent, badgeAriaLabel, ...props }) => {
91
- const condensed = useMainNav();
92
-
93
- if (condensed) {
94
- return (
95
- <Tooltip position="right" label={children}>
96
- <MainNavLinkWrapper {...props}>
97
- <MainNavRow as="span">
98
- <IconBox aria-hidden paddingRight={0} as="span">
99
- {icon}
100
- </IconBox>
101
- {badgeContent && (
102
- <CustomBadge condensed aria-label={badgeAriaLabel}>
103
- {badgeContent}
104
- </CustomBadge>
105
- )}
106
- </MainNavRow>
107
- </MainNavLinkWrapper>
108
- </Tooltip>
109
- );
110
- }
111
-
112
- return (
113
- <MainNavLinkWrapper {...props}>
114
- <MainNavRow as="span" justifyContent="space-between">
115
- <Flex>
116
- <IconBox aria-hidden paddingRight={3} as="span">
117
- {icon}
118
- </IconBox>
119
- <Typography>{children}</Typography>
120
- </Flex>
121
- {badgeContent && (
122
- <CustomBadge justifyContent="center" aria-label={badgeAriaLabel}>
123
- {badgeContent}
124
- </CustomBadge>
125
- )}
126
- </MainNavRow>
127
- </MainNavLinkWrapper>
128
- );
129
- };
130
-
131
- NavLink.displayName = 'NavLink';
132
-
133
- NavLink.defaultProps = {
134
- badgeContent: undefined,
135
- badgeAriaLabel: undefined,
136
- };
137
-
138
- NavLink.propTypes = {
139
- badgeAriaLabel: PropTypes.string,
140
- badgeContent: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
141
- children: PropTypes.node.isRequired,
142
- icon: PropTypes.node.isRequired,
143
- };
@@ -1,53 +0,0 @@
1
- import React, { Children } from 'react';
2
- import PropTypes from 'prop-types';
3
- import { Box } from '../Box';
4
- import { Typography } from '../Typography';
5
- import { Stack } from '../Stack';
6
- import { useMainNav } from './MainNavContext';
7
- import { VisuallyHidden } from '../VisuallyHidden';
8
- import { Divider } from '../Divider';
9
-
10
- export const NavSection = ({ label, children, ...props }) => {
11
- const condensed = useMainNav();
12
-
13
- if (condensed) {
14
- return (
15
- <Stack spacing={2}>
16
- <Box paddingTop={1} paddingBottom={1} background="neutral0" hasRadius as="span">
17
- <Divider />
18
-
19
- <VisuallyHidden>
20
- <span>{label}</span>
21
- </VisuallyHidden>
22
- </Box>
23
-
24
- <Stack as="ul" spacing={2} {...props}>
25
- {Children.map(children, (child, index) => {
26
- return <li key={index}>{child}</li>;
27
- })}
28
- </Stack>
29
- </Stack>
30
- );
31
- }
32
-
33
- return (
34
- <Stack spacing={2}>
35
- <Box paddingTop={1} paddingBottom={1} background="neutral0" paddingRight={3} paddingLeft={3} hasRadius as="span">
36
- <Typography variant="sigma" textColor="neutral600">
37
- {label}
38
- </Typography>
39
- </Box>
40
-
41
- <Stack as="ul" spacing={2} {...props}>
42
- {Children.map(children, (child, index) => {
43
- return <li key={index}>{child}</li>;
44
- })}
45
- </Stack>
46
- </Stack>
47
- );
48
- };
49
-
50
- NavSection.propTypes = {
51
- children: PropTypes.node.isRequired,
52
- label: PropTypes.string.isRequired,
53
- };
@@ -1,20 +0,0 @@
1
- import React, { Children } from 'react';
2
- import PropTypes from 'prop-types';
3
- import { Stack } from '../Stack';
4
- import { Box } from '../Box';
5
-
6
- export const NavSections = ({ children, ...props }) => {
7
- return (
8
- <Box paddingLeft={3} paddingRight={2} paddingTop={3}>
9
- <Stack as="ul" spacing={4} {...props}>
10
- {Children.map(children, (child, index) => {
11
- return <li key={index}>{child}</li>;
12
- })}
13
- </Stack>
14
- </Box>
15
- );
16
- };
17
-
18
- NavSections.propTypes = {
19
- children: PropTypes.node.isRequired,
20
- };
@@ -1,53 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import styled from 'styled-components';
4
- import { Avatar, Initials } from '../Avatar';
5
- import { Typography } from '../Typography';
6
- import { Flex } from '../Flex';
7
- import { Box } from '../Box';
8
- import { useMainNav } from './MainNavContext';
9
- import { VisuallyHidden } from '../VisuallyHidden';
10
-
11
- const NavUserBox = styled(Box)`
12
- text-decoration: none;
13
- position: absolute;
14
- bottom: 0;
15
- width: 100%;
16
- border-top: 1px solid ${({ theme }) => theme.colors.neutral150};
17
- `;
18
-
19
- export const NavUser = React.forwardRef(({ src, children, initials, ...props }, ref) => {
20
- const condensed = useMainNav();
21
-
22
- return (
23
- <NavUserBox paddingTop={3} paddingBottom={3} paddingLeft={5} paddingRight={5} {...props}>
24
- <Flex as="button" justifyContent={condensed ? 'center' : undefined} ref={ref}>
25
- {src ? <Avatar src={src} alt="" aria-hidden /> : <Initials>{initials}</Initials>}
26
- {condensed ? (
27
- <VisuallyHidden>
28
- <span>{children}</span>
29
- </VisuallyHidden>
30
- ) : (
31
- <Box width={`${130 / 16}rem`} paddingLeft={2} as="span">
32
- <Typography ellipsis textColor="neutral600">
33
- {children}
34
- </Typography>
35
- </Box>
36
- )}
37
- </Flex>
38
- </NavUserBox>
39
- );
40
- });
41
-
42
- NavUser.displayName = 'NavUser';
43
-
44
- NavUser.defaultProps = {
45
- src: undefined,
46
- initials: undefined,
47
- };
48
-
49
- NavUser.propTypes = {
50
- children: PropTypes.node.isRequired,
51
- initials: PropTypes.node,
52
- src: PropTypes.string,
53
- };
@@ -1,23 +0,0 @@
1
- import { injectAxe, checkA11y } from 'axe-playwright';
2
-
3
- import { test } from '@playwright/test';
4
-
5
- test.describe.parallel('MainNav', () => {
6
- test.describe('light mode', () => {
7
- test('triggers axe on the document', async ({ page }) => {
8
- // This is the URL of the Storybook Iframe
9
- await page.goto('/iframe.html?id=design-system-components-mainnav--base&viewMode=story');
10
- await injectAxe(page);
11
- await checkA11y(page);
12
- });
13
- });
14
-
15
- test.describe('dark mode', () => {
16
- test('triggers axe on the document', async ({ page }) => {
17
- // This is the URL of the Storybook Iframe
18
- await page.goto('/iframe.html?id=design-system-components-mainnav--base&viewMode=story&theme=dark');
19
- await injectAxe(page);
20
- await checkA11y(page);
21
- });
22
- });
23
- });
@@ -1,7 +0,0 @@
1
- export * from './MainNav';
2
- export * from './NavBrand';
3
- export * from './NavLink';
4
- export * from './NavSection';
5
- export * from './NavSections';
6
- export * from './NavUser';
7
- export * from './NavCondense';
Binary file
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- import styled from 'styled-components';
3
- import { Box } from '../Box';
4
-
5
- const ModalBodyWrapper = styled(Box)`
6
- overflow: auto;
7
- max-height: 60vh;
8
- `;
9
-
10
- export const ModalBody = (props) => {
11
- return <ModalBodyWrapper padding={7} {...props} />;
12
- };
@@ -1,4 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
-
3
- export const ModalContext = createContext();
4
- export const useModal = () => useContext(ModalContext);
@@ -1,37 +0,0 @@
1
- import React from 'react';
2
- import styled from 'styled-components';
3
- import PropTypes from 'prop-types';
4
- import { Box } from '../Box';
5
- import { Flex } from '../Flex';
6
-
7
- const ModalFooterWrapper = styled(Box)`
8
- border-radius: 0 0 ${({ theme }) => theme.borderRadius} ${({ theme }) => theme.borderRadius};
9
- border-top: 1px solid ${({ theme }) => theme.colors.neutral150};
10
- `;
11
-
12
- const ActionWrapper = styled(Flex)`
13
- & > * + * {
14
- margin-left: ${({ theme }) => theme.spaces[2]};
15
- }
16
- `;
17
-
18
- export const ModalFooter = ({ startActions, endActions }) => {
19
- return (
20
- <ModalFooterWrapper paddingTop={4} paddingBottom={4} paddingLeft={5} paddingRight={5} background="neutral100">
21
- <Flex justifyContent="space-between">
22
- <ActionWrapper>{startActions}</ActionWrapper>
23
- <ActionWrapper>{endActions}</ActionWrapper>
24
- </Flex>
25
- </ModalFooterWrapper>
26
- );
27
- };
28
-
29
- ModalFooter.defaultProps = {
30
- endActions: undefined,
31
- startActions: undefined,
32
- };
33
-
34
- ModalFooter.propTypes = {
35
- endActions: PropTypes.node,
36
- startActions: PropTypes.node,
37
- };