@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,191 +0,0 @@
1
- <!--- Combobox.stories.mdx --->
2
-
3
- import { useState } from 'react';
4
- import { Meta, Story, Canvas, ArgsTable } from '@storybook/addon-docs';
5
- import { Combobox, CreatableCombobox } from './Combobox';
6
- import { ComboboxOption } from './ComboboxOption';
7
-
8
- <Meta title="Design System/Components/Combobox" component={Combobox} />
9
-
10
- # Combobox
11
-
12
- [View source](https://github.com/strapi/design-system/tree/main/packages/strapi-design-system/src/Combobox)
13
-
14
- ## Imports
15
-
16
- ```js
17
- import { Combobox } from '@strapi/design-system/Combobox';
18
- ```
19
-
20
- This is the doc of the `Combobox` component
21
-
22
- <Canvas>
23
- <Story name="base">
24
- {() => {
25
- const [value, setValue] = useState('');
26
- return (
27
- <Combobox label="Food" value={value} onChange={setValue}>
28
- <ComboboxOption value="hamburger">Hamburger</ComboboxOption>
29
- <ComboboxOption value="bagel">Bagel</ComboboxOption>
30
- <ComboboxOption value="tartuffo">Tartuffo</ComboboxOption>
31
- <ComboboxOption value="carbonara">Carbonara</ComboboxOption>
32
- </Combobox>
33
- );
34
- }}
35
- </Story>
36
- </Canvas>
37
-
38
- ## Disabled
39
-
40
- This is the doc of the `Combobox` component
41
-
42
- <Canvas>
43
- <Story name="disabled">
44
- {() => {
45
- const [value, setValue] = useState('');
46
- return (
47
- <Combobox label="Food" disabled value={value} onChange={setValue}>
48
- <ComboboxOption value="hamburger">Hamburger</ComboboxOption>
49
- <ComboboxOption value="bagel">Bagel</ComboboxOption>
50
- <ComboboxOption value="tartuffo">Tartuffo</ComboboxOption>
51
- <ComboboxOption value="carbonara">Carbonara</ComboboxOption>
52
- </Combobox>
53
- );
54
- }}
55
- </Story>
56
- </Canvas>
57
-
58
- ## Without label
59
-
60
- This is the doc of the `Combobox` component
61
-
62
- <Canvas>
63
- <Story name="withoutLabel">
64
- {() => {
65
- const [value, setValue] = useState('');
66
- return (
67
- <Combobox aria-label="Food" value={value} onChange={setValue}>
68
- <ComboboxOption value="hamburger">Hamburger</ComboboxOption>
69
- <ComboboxOption value="bagel">Bagel</ComboboxOption>
70
- <ComboboxOption value="tartuffo">Tartuffo</ComboboxOption>
71
- <ComboboxOption value="carbonara">Carbonara</ComboboxOption>
72
- </Combobox>
73
- );
74
- }}
75
- </Story>
76
- </Canvas>
77
-
78
- ## Error
79
-
80
- This is the doc of the `Combobox` component
81
-
82
- <Canvas>
83
- <Story name="error">
84
- {() => {
85
- const [value, setValue] = useState('');
86
- return (
87
- <Combobox label="Food" value={value} error="An error occured" onChange={setValue}>
88
- <ComboboxOption value="hamburger">Hamburger</ComboboxOption>
89
- <ComboboxOption value="bagel">Bagel</ComboboxOption>
90
- <ComboboxOption value="tartuffo">Tartuffo</ComboboxOption>
91
- <ComboboxOption value="carbonara">Carbonara</ComboboxOption>
92
- </Combobox>
93
- );
94
- }}
95
- </Story>
96
- </Canvas>
97
-
98
- ## Initial data
99
-
100
- This is the doc of the `Combobox` component
101
-
102
- <Canvas>
103
- <Story name="initial-data">
104
- {() => {
105
- const [value, setValue] = useState('tartuffo');
106
- return (
107
- <Combobox label="Food" value={value} onChange={setValue}>
108
- <ComboboxOption value="hamburger">Hamburger</ComboboxOption>
109
- <ComboboxOption value="bagel">Bagel</ComboboxOption>
110
- <ComboboxOption value="tartuffo">Tartuffo</ComboboxOption>
111
- <ComboboxOption value="carbonara">Carbonara</ComboboxOption>
112
- </Combobox>
113
- );
114
- }}
115
- </Story>
116
- </Canvas>
117
-
118
- ## Creatable
119
-
120
- This is the doc of the `Combobox` component
121
-
122
- <Canvas>
123
- <Story name="creatable">
124
- {() => {
125
- const [value, setValue] = useState('');
126
- const [options, setOptions] = useState([
127
- {
128
- name: 'Hamburger',
129
- value: 'hamburger',
130
- },
131
- {
132
- name: 'Hambu',
133
- value: 'hambu',
134
- },
135
- {
136
- name: 'Ham',
137
- value: 'ham',
138
- },
139
- {
140
- name: 'Sandwich',
141
- value: 'sandwich',
142
- },
143
- {
144
- name: 'Peperroni',
145
- value: 'peperroni',
146
- },
147
- {
148
- name: 'Asparagus',
149
- value: 'asparagus',
150
- },
151
- {
152
- name: 'Lettuce',
153
- value: 'lettuce',
154
- },
155
- {
156
- name: 'Tomato',
157
- value: 'tomato',
158
- },
159
- {
160
- name: 'Bagel',
161
- value: 'bagel',
162
- },
163
- {
164
- name: 'Tartuffo',
165
- value: 'tartuffo',
166
- },
167
- {
168
- name: 'Carbonara',
169
- value: 'carbonara',
170
- },
171
- ]);
172
- const onCreateOption = (value) => {
173
- setOptions((opt) => [...opt, { name: value, value }]);
174
- setValue(value);
175
- };
176
- return (
177
- <CreatableCombobox label="Food" value={value} onChange={setValue} onCreateOption={onCreateOption}>
178
- {options.map(({ name, value }) => (
179
- <ComboboxOption key={value} value={value}>
180
- {name}
181
- </ComboboxOption>
182
- ))}
183
- </CreatableCombobox>
184
- );
185
- }}
186
- </Story>
187
- </Canvas>
188
-
189
- ## Props
190
-
191
- <ArgsTable of={Combobox} />
@@ -1,22 +0,0 @@
1
- import { useEffect } from 'react';
2
- import PropTypes from 'prop-types';
3
-
4
- import { maintainScrollVisibility } from './utils';
5
-
6
- export const ComboboxList = ({ options, activeOptionRef }) => {
7
- useEffect(() => {
8
- if (activeOptionRef.current) {
9
- maintainScrollVisibility(activeOptionRef.current);
10
- }
11
- }, []);
12
-
13
- return options;
14
- };
15
-
16
- ComboboxList.defaultProps = {
17
- activeOptionRef: undefined,
18
- };
19
-
20
- ComboboxList.propTypes = {
21
- options: PropTypes.array.isRequired,
22
- };
@@ -1,36 +0,0 @@
1
- import React, { forwardRef } from 'react';
2
- import PropTypes from 'prop-types';
3
- import { Typography } from '../Typography';
4
- import { OptionBox } from './components';
5
-
6
- export const ComboboxOption = forwardRef(({ isSelected, children, ...props }, ref) => {
7
- return (
8
- <OptionBox
9
- hasRadius
10
- paddingLeft={4}
11
- paddingRight={4}
12
- paddingTop={2}
13
- paddingBottom={2}
14
- role="option"
15
- background={'neutral0'}
16
- isSelected={isSelected}
17
- ref={ref}
18
- {...props}
19
- >
20
- <Typography textColor={isSelected ? 'primary600' : 'neutral800'} fontWeight={isSelected ? 'bold' : null}>
21
- {children}
22
- </Typography>
23
- </OptionBox>
24
- );
25
- });
26
-
27
- ComboboxOption.defaultProps = {
28
- isSelected: false,
29
- };
30
-
31
- ComboboxOption.propTypes = {
32
- children: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired,
33
- isSelected: PropTypes.bool,
34
- };
35
-
36
- ComboboxOption.displayName = 'ComboboxOption';
@@ -1,133 +0,0 @@
1
- import { injectAxe, checkA11y } from 'axe-playwright';
2
-
3
- import { test, expect } from '@playwright/test';
4
-
5
- test.describe.parallel('Combobox', () => {
6
- test.describe('light mode', () => {
7
- test.beforeEach(async ({ page }) => {
8
- // This is the URL of the Storybook Iframe
9
- await page.goto('/iframe.html?id=design-system-components-combobox--base&globals=&viewMode=story');
10
- await injectAxe(page);
11
- });
12
-
13
- test('triggers axe on the document', async ({ page }) => {
14
- await checkA11y(page);
15
- });
16
-
17
- test('Focus and select a value then close the combobox', async ({ page }) => {
18
- await page.click('input');
19
- await expect(page.locator('[role="listbox"]')).toBeVisible({ timeout: 300 });
20
-
21
- await page.click('text="Tartuffo"');
22
-
23
- const selectedValue = await page.textContent('#combobox-1-selected-value');
24
- await expect(selectedValue).toBe('Tartuffo');
25
- await expect(page.locator('[role="listbox"]')).not.toBeVisible({ timeout: 300 });
26
- });
27
-
28
- test('Select a value', async ({ page }) => {
29
- await page.click('input');
30
- await expect(page.locator('[role="listbox"]')).toBeVisible({ timeout: 300 });
31
-
32
- await page.click('text="Tartuffo"');
33
-
34
- const selectedValue = await page.textContent('#combobox-1-selected-value');
35
- await expect(selectedValue).toBe('Tartuffo');
36
- await expect(page.locator('[role="listbox"]')).not.toBeVisible({ timeout: 300 });
37
- });
38
-
39
- test('Displays no results', async ({ page }) => {
40
- await page.fill('input', 'Apple Pie');
41
- const content = await page.textContent('text="No results found"');
42
- await expect(content).toBe('No results found');
43
- });
44
-
45
- test('Type a value', async ({ page }) => {
46
- await page.fill('input', 'Hamburger');
47
- let options = await page.$$('[role="option"]');
48
- expect(options.length).toEqual(1);
49
-
50
- await page.fill('input', '');
51
- options = await page.$$('[role="option"]');
52
- expect(options.length).toEqual(4);
53
- });
54
-
55
- test('Select with keyboard', async ({ page }) => {
56
- await page.focus('input');
57
- await page.keyboard.press('ArrowDown');
58
- await page.keyboard.press('ArrowDown');
59
- await page.keyboard.press('ArrowDown');
60
-
61
- const ariaDescendantValue = await page.getAttribute('input', 'aria-activedescendant');
62
- expect(ariaDescendantValue).toBe('combobox-1-2');
63
-
64
- await page.keyboard.press('Enter');
65
-
66
- const selectedValue = await page.textContent('#combobox-1-selected-value');
67
- await expect(selectedValue).toBe('Tartuffo');
68
- });
69
- });
70
-
71
- test.describe.parallel('Combobox - initial data', () => {
72
- test.beforeEach(async ({ page }) => {
73
- // This is the URL of the Storybook Iframe
74
- await page.goto('/iframe.html?id=design-system-components-combobox--initial-data&args=&viewMode=story');
75
- await injectAxe(page);
76
- });
77
-
78
- test('triggers axe on the document', async ({ page }) => {
79
- await checkA11y(page);
80
- });
81
-
82
- test('initialize the value', async ({ page }) => {
83
- const selectedValue = await page.textContent('#combobox-1-selected-value');
84
- await expect(selectedValue).toBe('Tartuffo');
85
- });
86
- });
87
-
88
- test.describe.parallel('Combobox - creatable', () => {
89
- test.beforeEach(async ({ page }) => {
90
- // This is the URL of the Storybook Iframe
91
- await page.goto('/iframe.html?id=design-system-components-combobox--creatable&globals=&viewMode=story');
92
- await injectAxe(page);
93
- });
94
-
95
- test('triggers axe on the document', async ({ page }) => {
96
- await checkA11y(page);
97
- });
98
-
99
- test('Create a new item', async ({ page }) => {
100
- await page.fill('input', 'Apple Pie');
101
- const content = await page.textContent('[role="option"]');
102
- await expect(content).toBe('Create "Apple Pie"');
103
-
104
- await page.click('[role="option"]');
105
-
106
- const selectedValue = await page.textContent('#combobox-1-selected-value');
107
- await expect(selectedValue).toBe('Apple Pie');
108
- });
109
- });
110
-
111
- test.describe('dark mode', () => {
112
- test('base A11y', async ({ page }) => {
113
- // This is the URL of the Storybook Iframe
114
- await page.goto('/iframe.html?id=design-system-components-combobox--base&globals=&viewMode=story&theme=dark');
115
- await injectAxe(page);
116
- await checkA11y(page);
117
- });
118
-
119
- test('disabled A11y', async ({ page }) => {
120
- // This is the URL of the Storybook Iframe
121
- await page.goto('/iframe.html?id=design-system-components-combobox--disabled&globals=&viewMode=story&theme=dark');
122
- await injectAxe(page);
123
- await checkA11y(page);
124
- });
125
-
126
- test('error A11y', async ({ page }) => {
127
- // This is the URL of the Storybook Iframe
128
- await page.goto('/iframe.html?id=design-system-components-combobox--error&globals=&viewMode=story&theme=dark');
129
- await injectAxe(page);
130
- await checkA11y(page);
131
- });
132
- });
133
- });
@@ -1,94 +0,0 @@
1
- import { filterOptions } from '../utils';
2
-
3
- describe('Combobox | utils', () => {
4
- describe('filterOptions', () => {
5
- const options = [{ props: { children: 'Hamburger' } }, { props: { children: 'Bagel' } }];
6
-
7
- it('should filter the options correctly', () => {
8
- const actual = filterOptions(options, 'ham');
9
- const expected = [options[0]];
10
-
11
- expect(actual).toEqual(expected);
12
- });
13
-
14
- it('empty array, without any param', () => {
15
- const expected = [];
16
- const result = filterOptions();
17
-
18
- expect(result).toEqual(expected);
19
- });
20
-
21
- it('all items, without filter param', () => {
22
- const expected = options;
23
- const result = filterOptions(options);
24
-
25
- expect(result).toEqual(expected);
26
- });
27
-
28
- it('all items, with empty filter param', () => {
29
- const expected = options;
30
- const result = filterOptions(options, '');
31
-
32
- expect(result).toEqual(expected);
33
- });
34
-
35
- it('all items, with null as filter param', () => {
36
- const expected = options;
37
- const result = filterOptions(options, null);
38
-
39
- expect(result).toEqual(expected);
40
- });
41
-
42
- it('no items, with 0 as filter param', () => {
43
- const expected = [];
44
- const result = filterOptions(options, 0);
45
-
46
- expect(result).toEqual(expected);
47
- });
48
-
49
- it('should filter the options if the search is a number', () => {
50
- const optionsNumeric = [{ props: { children: 421 } }, { props: { children: 1285 } }];
51
- const expected = [optionsNumeric[1]];
52
-
53
- expect(filterOptions(optionsNumeric, 12)).toEqual(expected);
54
- });
55
-
56
- describe('should filter the options correctly, with partial term', () => {
57
- const optionsPartial = [
58
- { props: { children: 'some-gh-user/project-super-cms' } },
59
- { props: { children: 'other-gh-user/project-awesome-cms' } },
60
- { props: { children: 'one-more-gh-user/cool-cms' } },
61
- { props: { children: 'strapi/strapi' } },
62
- { props: { children: 'strapi/design-system' } },
63
- ];
64
-
65
- it('3 of 5 items', () => {
66
- const result = filterOptions(optionsPartial, 'cms');
67
- const expected = [optionsPartial[0], optionsPartial[1], optionsPartial[2]];
68
-
69
- expect(result).toEqual(expected);
70
- });
71
-
72
- it('2 of 5 items', () => {
73
- const result = filterOptions(optionsPartial, 'project');
74
- const expected = [optionsPartial[0], optionsPartial[1]];
75
-
76
- expect(result).toEqual(expected);
77
- });
78
-
79
- it('2 last of 5 items', () => {
80
- const result = filterOptions(optionsPartial, 'strapi');
81
- const expected = [optionsPartial[3], optionsPartial[4]];
82
-
83
- expect(result).toEqual(expected);
84
- });
85
-
86
- it('1 item', () => {
87
- const result = filterOptions(optionsPartial, 'awesome');
88
- const expected = [optionsPartial[1]];
89
-
90
- expect(result).toEqual(expected);
91
- });
92
- });
93
- });
94
- });
@@ -1,69 +0,0 @@
1
- import { Box } from '../Box';
2
- import { Flex } from '../Flex';
3
- import styled from 'styled-components';
4
- import { inputFocusStyle } from '../themes/utils';
5
-
6
- export const MainRow = styled(Flex)`
7
- position: relative;
8
- border: 1px solid ${({ theme, hasError }) => (hasError ? theme.colors.danger600 : theme.colors.neutral200)};
9
- padding-right: ${({ theme }) => theme.spaces[3]};
10
- padding-left: ${({ theme }) => theme.spaces[3]};
11
- border-radius: ${({ theme }) => theme.borderRadius};
12
- background: ${({ theme }) => theme.colors.neutral0};
13
-
14
- ${({ theme, $disabled }) =>
15
- $disabled
16
- ? `
17
- color: ${theme.colors.neutral600};
18
- background: ${theme.colors.neutral150};
19
- `
20
- : undefined}
21
-
22
- ${inputFocusStyle()}
23
- `;
24
-
25
- export const ValueContainer = styled.div`
26
- padding: 1px 2px;
27
- grid-area: 1 / 1 / 2 / 3;
28
- `;
29
-
30
- export const InputContainer = styled(Flex)`
31
- display: grid;
32
- flex: 1 1 0%;
33
- position: relative;
34
- `;
35
-
36
- export const Input = styled.input`
37
- display: inline-grid;
38
- grid-area: 1 / 1 / 2 / 3;
39
- grid-template-columns: 0px min-content;
40
- background: transparent;
41
- min-height: ${40 / 16}rem;
42
- border: none;
43
- flex: 1;
44
- font-size: ${14 / 16}rem;
45
- color: ${({ theme }) => theme.colors.neutral800};
46
- outline: none;
47
- &:focus-visible {
48
- outline: none;
49
- box-shadow: none;
50
- outline-offset: 0;
51
- }
52
- &[aria-disabled='true'] {
53
- background: inherit;
54
- color: inherit;
55
- cursor: not-allowed;
56
- }
57
- `;
58
-
59
- export const OptionBox = styled(Box)`
60
- width: 100%;
61
- border: none;
62
- text-align: left;
63
- outline-offset: -3px;
64
- ${({ isSelected, theme }) => isSelected && `background: ${theme.colors.primary100};`}
65
-
66
- &:hover {
67
- background: ${({ theme }) => theme.colors.primary100};
68
- }
69
- `;
@@ -1,2 +0,0 @@
1
- export * from './Combobox';
2
- export * from './ComboboxOption';
@@ -1,97 +0,0 @@
1
- import computeScrollIntoView from 'compute-scroll-into-view';
2
- import { KeyboardKeys } from '../helpers/keyboardKeys';
3
-
4
- export const MenuActions = {
5
- Close: 'Close',
6
- CloseSelect: 'CloseSelect',
7
- First: 'First',
8
- Last: 'Last',
9
- Next: 'Next',
10
- Open: 'Open',
11
- PageDown: 'PageDown',
12
- PageUp: 'PageUp',
13
- Previous: 'Previous',
14
- Select: 'Select',
15
- Space: 'Space',
16
- Type: 'Type',
17
- };
18
-
19
- export const TreeActions = {
20
- Close: 'Close',
21
- First: 'First',
22
- Last: 'Last',
23
- Next: 'Next',
24
- Open: 'Open',
25
- Previous: 'Previous',
26
- Select: 'Select',
27
- UpLevel: 'UpLevel',
28
- };
29
-
30
- // filter an array of options against an input string
31
- // returns an array of options that contains the filter string, case-independent
32
- export function filterOptions(options = [], filter, exclude = []) {
33
- const equalizedTerm = String(filter ?? '').toLowerCase();
34
-
35
- return equalizedTerm
36
- ? options.filter((option) => {
37
- const equalizedOptionChildren = option.props.children.toString().toLowerCase();
38
- const matches = equalizedOptionChildren.includes(equalizedTerm);
39
-
40
- return matches && exclude.indexOf(option) < 0;
41
- })
42
- : options;
43
- }
44
-
45
- // return combobox action from key press
46
- export function getActionFromKey(key, menuOpen) {
47
- // handle opening when closed
48
- if (!menuOpen && key === KeyboardKeys.DOWN) {
49
- return MenuActions.Open;
50
- }
51
- // handle keys when open
52
- if (key === KeyboardKeys.DOWN) {
53
- return MenuActions.Next;
54
- } else if (key === KeyboardKeys.UP) {
55
- return MenuActions.Previous;
56
- } else if (key === KeyboardKeys.HOME) {
57
- return MenuActions.First;
58
- } else if (key === KeyboardKeys.END) {
59
- return MenuActions.Last;
60
- } else if (key === KeyboardKeys.ESCAPE) {
61
- return MenuActions.Close;
62
- } else if (key === KeyboardKeys.ENTER) {
63
- return MenuActions.CloseSelect;
64
- } else if (key === KeyboardKeys.BACKSPACE || key === KeyboardKeys.CLEAR || key.length === 1) {
65
- return MenuActions.Type;
66
- }
67
- }
68
-
69
- // get updated option index
70
- export function getUpdatedIndex(current, max, action) {
71
- switch (action) {
72
- case MenuActions.First:
73
- return 0;
74
- case MenuActions.Last:
75
- return max;
76
- case MenuActions.Previous:
77
- return Math.max(0, current - 1);
78
- case MenuActions.Next:
79
- return Math.min(max, current + 1);
80
- default:
81
- return current;
82
- }
83
- }
84
-
85
- // ensure given child element is within the parent's visible scroll area
86
- export function maintainScrollVisibility(activeElement) {
87
- const actions = computeScrollIntoView(activeElement, {
88
- scrollMode: 'if-needed',
89
- block: 'nearest',
90
- inline: 'nearest',
91
- });
92
-
93
- actions.forEach(({ el, top, left }) => {
94
- el.scrollTop = top;
95
- el.scrollLeft = left;
96
- });
97
- }