@strapi/design-system 0.0.0-599b75fb-test → 0.0.0-622b91ef

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 (565) hide show
  1. package/README.md +47 -0
  2. package/dist/Accordion/Accordion.cjs +4 -4
  3. package/dist/Accordion/Accordion.js +13 -71
  4. package/dist/Accordion/AccordionContent.cjs +1 -1
  5. package/dist/Accordion/AccordionContent.js +3 -16
  6. package/dist/Accordion/AccordionContext.cjs +1 -1
  7. package/dist/Accordion/AccordionGroup.cjs +4 -4
  8. package/dist/Accordion/AccordionGroup.js +19 -89
  9. package/dist/Accordion/AccordionToggle.cjs +3 -3
  10. package/dist/Accordion/AccordionToggle.js +11 -101
  11. package/dist/Accordion/index.cjs +1 -1
  12. package/dist/Accordion/utils.cjs +1 -1
  13. package/dist/Alert/Alert.cjs +23 -29
  14. package/dist/Alert/Alert.js +33 -111
  15. package/dist/Alert/index.cjs +1 -1
  16. package/dist/Alert/utils.cjs +1 -1
  17. package/dist/Alert/utils.js +14 -3
  18. package/dist/Avatar/Avatar.cjs +5 -5
  19. package/dist/Avatar/Avatar.js +12 -56
  20. package/dist/Avatar/AvatarGroup.cjs +3 -3
  21. package/dist/Avatar/constants.cjs +1 -1
  22. package/dist/Avatar/index.cjs +1 -1
  23. package/dist/Badge/Badge.cjs +2 -2
  24. package/dist/Badge/Badge.js +4 -33
  25. package/dist/Badge/index.cjs +1 -1
  26. package/dist/BaseButton/BaseButton.cjs +4 -4
  27. package/dist/BaseButton/BaseButton.js +15 -38
  28. package/dist/BaseButton/index.cjs +1 -1
  29. package/dist/BaseCheckbox/BaseCheckbox.cjs +4 -4
  30. package/dist/BaseCheckbox/BaseCheckbox.js +19 -62
  31. package/dist/BaseCheckbox/index.cjs +1 -1
  32. package/dist/BaseCheckbox/utils.cjs +1 -1
  33. package/dist/BaseLink/BaseLink.cjs +1 -3
  34. package/dist/BaseLink/BaseLink.js +2 -18
  35. package/dist/BaseLink/index.cjs +1 -1
  36. package/dist/BaseRadio/BaseRadio.cjs +2 -2
  37. package/dist/BaseRadio/BaseRadio.js +12 -38
  38. package/dist/BaseRadio/RadioGroup.cjs +1 -1
  39. package/dist/BaseRadio/RadioGroup.js +3 -25
  40. package/dist/BaseRadio/context.cjs +1 -1
  41. package/dist/BaseRadio/index.cjs +1 -1
  42. package/dist/BaseRadio/utils.cjs +1 -1
  43. package/dist/Box/Box.cjs +3 -3
  44. package/dist/Box/Box.js +47 -173
  45. package/dist/Box/index.cjs +1 -1
  46. package/dist/Breadcrumbs/Breadcrumbs.cjs +4 -4
  47. package/dist/Breadcrumbs/Breadcrumbs.js +10 -43
  48. package/dist/Breadcrumbs/index.cjs +1 -1
  49. package/dist/Button/Button.cjs +10 -5
  50. package/dist/Button/Button.js +27 -69
  51. package/dist/Button/constants.cjs +1 -1
  52. package/dist/Button/index.cjs +1 -1
  53. package/dist/Button/utils.cjs +1 -1
  54. package/dist/Card/Card.cjs +1 -1
  55. package/dist/Card/Card.js +5 -25
  56. package/dist/Card/CardAction.cjs +2 -2
  57. package/dist/Card/CardAsset.cjs +3 -3
  58. package/dist/Card/CardAsset.js +5 -25
  59. package/dist/Card/CardBadge.cjs +2 -2
  60. package/dist/Card/CardBadge.js +2 -8
  61. package/dist/Card/CardBody.cjs +1 -1
  62. package/dist/Card/CardBody.js +1 -10
  63. package/dist/Card/CardCheckbox.cjs +1 -1
  64. package/dist/Card/CardCheckbox.js +5 -10
  65. package/dist/Card/CardContent.cjs +2 -2
  66. package/dist/Card/CardContent.js +1 -7
  67. package/dist/Card/CardContext.cjs +1 -1
  68. package/dist/Card/CardContext.js +1 -3
  69. package/dist/Card/CardHeader.cjs +2 -2
  70. package/dist/Card/CardHeader.js +2 -8
  71. package/dist/Card/CardTimer.cjs +1 -1
  72. package/dist/Card/CardTimer.js +1 -19
  73. package/dist/Card/CardTitle.cjs +1 -1
  74. package/dist/Card/CardTitle.js +3 -17
  75. package/dist/Card/index.cjs +1 -1
  76. package/dist/CarouselInput/Carousel.cjs +6 -7
  77. package/dist/CarouselInput/Carousel.js +24 -69
  78. package/dist/CarouselInput/CarouselActions.cjs +1 -1
  79. package/dist/CarouselInput/CarouselActions.js +4 -16
  80. package/dist/CarouselInput/CarouselImage.cjs +3 -4
  81. package/dist/CarouselInput/CarouselImage.js +13 -22
  82. package/dist/CarouselInput/CarouselInput.cjs +1 -1
  83. package/dist/CarouselInput/CarouselInput.js +12 -72
  84. package/dist/CarouselInput/CarouselSlide.cjs +1 -3
  85. package/dist/CarouselInput/CarouselSlide.js +4 -28
  86. package/dist/CarouselInput/index.cjs +1 -1
  87. package/dist/Checkbox/Checkbox.cjs +2 -2
  88. package/dist/Checkbox/Checkbox.js +21 -38
  89. package/dist/Checkbox/index.cjs +1 -1
  90. package/dist/Combobox/Combobox.cjs +107 -1
  91. package/dist/Combobox/Combobox.js +168 -280
  92. package/dist/Combobox/ComboboxList.cjs +5 -1
  93. package/dist/Combobox/ComboboxList.js +8 -6
  94. package/dist/Combobox/ComboboxOption.cjs +1 -1
  95. package/dist/Combobox/ComboboxOption.js +3 -29
  96. package/dist/Combobox/index.cjs +1 -1
  97. package/dist/DatePicker/DatePicker.cjs +85 -5
  98. package/dist/DatePicker/DatePicker.js +423 -76
  99. package/dist/DatePicker/index.cjs +1 -1
  100. package/dist/DateTimePicker/DateTimePicker.cjs +7 -1
  101. package/dist/DateTimePicker/DateTimePicker.js +96 -103
  102. package/dist/DateTimePicker/index.cjs +1 -1
  103. package/dist/DateTimePicker/index.js +3 -2
  104. package/dist/DesignSystemProvider.cjs +1 -0
  105. package/dist/DesignSystemProvider.js +10 -0
  106. package/dist/Dialog/Dialog.cjs +4 -4
  107. package/dist/Dialog/Dialog.js +20 -45
  108. package/dist/Dialog/DialogBody.cjs +2 -2
  109. package/dist/Dialog/DialogBody.js +9 -18
  110. package/dist/Dialog/DialogFooter.cjs +2 -2
  111. package/dist/Dialog/DialogFooter.js +7 -17
  112. package/dist/Dialog/index.cjs +1 -1
  113. package/dist/DismissibleLayer/index.cjs +1 -1
  114. package/dist/DismissibleLayer/index.js +3 -2
  115. package/dist/Divider/Divider.cjs +2 -2
  116. package/dist/Divider/Divider.js +6 -15
  117. package/dist/Divider/index.cjs +1 -1
  118. package/dist/EmptyStateLayout/EmptyStateLayout.cjs +2 -7
  119. package/dist/EmptyStateLayout/EmptyStateLayout.js +8 -25
  120. package/dist/EmptyStateLayout/index.cjs +1 -1
  121. package/dist/EmptyStateLayout/story-assets/Illo.cjs +1 -1
  122. package/dist/EmptyStateLayout/story-assets/Illo.js +3 -62
  123. package/dist/Field/Field.cjs +1 -1
  124. package/dist/Field/Field.js +5 -26
  125. package/dist/Field/FieldAction.cjs +2 -2
  126. package/dist/Field/FieldAction.js +5 -20
  127. package/dist/Field/FieldContext.cjs +1 -1
  128. package/dist/Field/FieldError.cjs +1 -1
  129. package/dist/Field/FieldError.js +2 -12
  130. package/dist/Field/FieldHint.cjs +1 -1
  131. package/dist/Field/FieldHint.js +4 -14
  132. package/dist/Field/FieldInput.cjs +4 -4
  133. package/dist/Field/FieldInput.js +19 -86
  134. package/dist/Field/FieldLabel.cjs +4 -4
  135. package/dist/Field/FieldLabel.js +7 -32
  136. package/dist/Field/index.cjs +1 -1
  137. package/dist/Flex/Flex.cjs +4 -4
  138. package/dist/Flex/Flex.js +10 -25
  139. package/dist/Flex/index.cjs +1 -1
  140. package/dist/FocusTrap/FocusTrap.cjs +1 -1
  141. package/dist/FocusTrap/FocusTrap.js +14 -22
  142. package/dist/FocusTrap/index.cjs +1 -1
  143. package/dist/Grid/Grid.cjs +3 -3
  144. package/dist/Grid/Grid.js +10 -20
  145. package/dist/Grid/GridItem.cjs +2 -2
  146. package/dist/Grid/GridItem.js +10 -26
  147. package/dist/Grid/index.cjs +1 -1
  148. package/dist/Icon/Icon.cjs +3 -3
  149. package/dist/Icon/Icon.js +6 -21
  150. package/dist/Icon/index.cjs +1 -1
  151. package/dist/IconButton/IconButton.cjs +4 -4
  152. package/dist/IconButton/IconButton.js +34 -85
  153. package/dist/IconButton/index.cjs +1 -1
  154. package/dist/JSONInput/JSONInput.cjs +1 -1
  155. package/dist/JSONInput/JSONInput.js +11 -56
  156. package/dist/JSONInput/JSONInputContainer.cjs +3 -3
  157. package/dist/JSONInput/JSONInputContainer.js +7 -14
  158. package/dist/JSONInput/index.cjs +1 -1
  159. package/dist/JSONInput/utils/decorationExtension.cjs +1 -1
  160. package/dist/JSONInput/utils/decorationExtension.js +3 -0
  161. package/dist/KeyboardNavigable/KeyboardNavigable.cjs +1 -1
  162. package/dist/KeyboardNavigable/KeyboardNavigable.js +32 -39
  163. package/dist/KeyboardNavigable/index.cjs +1 -1
  164. package/dist/Layout/ActionLayout.cjs +1 -9
  165. package/dist/Layout/ActionLayout.js +4 -23
  166. package/dist/Layout/ContentLayout.cjs +1 -1
  167. package/dist/Layout/ContentLayout.js +3 -7
  168. package/dist/Layout/GridLayout.cjs +3 -3
  169. package/dist/Layout/GridLayout.js +4 -8
  170. package/dist/Layout/HeaderLayout.cjs +4 -3
  171. package/dist/Layout/HeaderLayout.js +25 -96
  172. package/dist/Layout/Layout.cjs +4 -4
  173. package/dist/Layout/Layout.js +8 -16
  174. package/dist/Layout/TwoColsLayout.cjs +1 -1
  175. package/dist/Layout/TwoColsLayout.js +6 -11
  176. package/dist/Layout/index.cjs +1 -1
  177. package/dist/Link/Link.cjs +4 -4
  178. package/dist/Link/Link.js +9 -53
  179. package/dist/Link/index.cjs +1 -1
  180. package/dist/LinkButton/LinkButton.cjs +2 -2
  181. package/dist/LinkButton/LinkButton.js +8 -51
  182. package/dist/LinkButton/index.cjs +1 -1
  183. package/dist/LiveRegions/LiveRegions.cjs +1 -1
  184. package/dist/LiveRegions/LiveRegions.js +1 -18
  185. package/dist/LiveRegions/constants.cjs +1 -1
  186. package/dist/LiveRegions/index.cjs +1 -1
  187. package/dist/LiveRegions/useNotifyAT.cjs +1 -1
  188. package/dist/Loader/Loader.cjs +2 -2
  189. package/dist/Loader/Loader.js +3 -22
  190. package/dist/Loader/index.cjs +1 -1
  191. package/dist/Main/Main.cjs +2 -2
  192. package/dist/Main/Main.js +6 -15
  193. package/dist/Main/SkipToContent.cjs +4 -7
  194. package/dist/Main/SkipToContent.js +5 -24
  195. package/dist/Main/index.cjs +1 -1
  196. package/dist/MainNav/MainNav.cjs +2 -2
  197. package/dist/MainNav/MainNav.js +9 -30
  198. package/dist/MainNav/MainNavContext.cjs +1 -1
  199. package/dist/MainNav/MainNavContext.js +1 -1
  200. package/dist/MainNav/NavBrand.cjs +3 -3
  201. package/dist/MainNav/NavBrand.js +14 -24
  202. package/dist/MainNav/NavCondense.cjs +2 -2
  203. package/dist/MainNav/NavCondense.js +10 -14
  204. package/dist/MainNav/NavFooter.cjs +1 -1
  205. package/dist/MainNav/NavFooter.js +4 -9
  206. package/dist/MainNav/NavLink.cjs +6 -6
  207. package/dist/MainNav/NavLink.js +39 -51
  208. package/dist/MainNav/NavSection.cjs +1 -1
  209. package/dist/MainNav/NavSection.js +9 -33
  210. package/dist/MainNav/NavSections.cjs +2 -2
  211. package/dist/MainNav/NavSections.js +8 -21
  212. package/dist/MainNav/NavUser.cjs +2 -2
  213. package/dist/MainNav/NavUser.js +14 -25
  214. package/dist/MainNav/index.cjs +1 -1
  215. package/dist/ModalLayout/ModalBody.cjs +2 -2
  216. package/dist/ModalLayout/ModalBody.js +6 -6
  217. package/dist/ModalLayout/ModalContext.cjs +1 -1
  218. package/dist/ModalLayout/ModalContext.js +2 -1
  219. package/dist/ModalLayout/ModalFooter.cjs +2 -6
  220. package/dist/ModalLayout/ModalFooter.js +8 -21
  221. package/dist/ModalLayout/ModalHeader.cjs +2 -2
  222. package/dist/ModalLayout/ModalHeader.js +13 -21
  223. package/dist/ModalLayout/ModalLayout.cjs +3 -5
  224. package/dist/ModalLayout/ModalLayout.js +12 -31
  225. package/dist/ModalLayout/index.cjs +1 -1
  226. package/dist/NumberInput/NumberInput.cjs +2 -2
  227. package/dist/NumberInput/NumberInput.js +69 -162
  228. package/dist/NumberInput/index.cjs +1 -1
  229. package/dist/Pagination/Pagination.cjs +1 -5
  230. package/dist/Pagination/Pagination.js +8 -21
  231. package/dist/Pagination/PaginationContext.cjs +1 -1
  232. package/dist/Pagination/components.cjs +10 -13
  233. package/dist/Pagination/components.js +33 -69
  234. package/dist/Pagination/index.cjs +1 -1
  235. package/dist/Popover/Popover.cjs +4 -5
  236. package/dist/Popover/Popover.js +105 -110
  237. package/dist/Popover/index.cjs +1 -1
  238. package/dist/Popover/index.js +5 -9
  239. package/dist/Popover/primitives.cjs +1 -0
  240. package/dist/Popover/primitives.js +5 -0
  241. package/dist/Portal/Portal.cjs +1 -1
  242. package/dist/Portal/Portal.js +7 -11
  243. package/dist/Portal/index.cjs +1 -1
  244. package/dist/ProgressBar/ProgressBar.cjs +5 -5
  245. package/dist/ProgressBar/ProgressBar.js +6 -36
  246. package/dist/ProgressBar/index.cjs +1 -1
  247. package/dist/Radio/Radio.cjs +1 -4
  248. package/dist/Radio/Radio.js +6 -15
  249. package/dist/Radio/index.cjs +1 -1
  250. package/dist/RawTable/RawCell.cjs +1 -1
  251. package/dist/RawTable/RawCell.js +6 -29
  252. package/dist/RawTable/RawTable.cjs +1 -1
  253. package/dist/RawTable/RawTable.js +4 -28
  254. package/dist/RawTable/RawTableContext.cjs +1 -1
  255. package/dist/RawTable/RawTbody.cjs +1 -1
  256. package/dist/RawTable/RawTbody.js +3 -11
  257. package/dist/RawTable/RawThead.cjs +1 -1
  258. package/dist/RawTable/RawThead.js +3 -11
  259. package/dist/RawTable/RawTr.cjs +1 -1
  260. package/dist/RawTable/RawTr.js +3 -13
  261. package/dist/RawTable/focusFocusable.cjs +1 -1
  262. package/dist/RawTable/index.cjs +1 -1
  263. package/dist/Searchbar/SearchForm.cjs +1 -1
  264. package/dist/Searchbar/SearchForm.js +3 -3
  265. package/dist/Searchbar/Searchbar.cjs +10 -11
  266. package/dist/Searchbar/Searchbar.js +31 -59
  267. package/dist/Searchbar/index.cjs +1 -1
  268. package/dist/Select/MultiSelect.cjs +30 -0
  269. package/dist/Select/MultiSelect.js +75 -0
  270. package/dist/Select/MultiSelectNested.cjs +3 -1
  271. package/dist/Select/MultiSelectNested.js +7 -12
  272. package/dist/Select/OptGroup.cjs +5 -1
  273. package/dist/Select/OptGroup.js +8 -22
  274. package/dist/Select/Option.cjs +5 -45
  275. package/dist/Select/Option.js +13 -99
  276. package/dist/Select/Select.cjs +6 -3
  277. package/dist/Select/Select.js +16 -206
  278. package/dist/Select/SelectList.cjs +5 -1
  279. package/dist/Select/SelectList.js +67 -69
  280. package/dist/Select/SelectParts.cjs +83 -0
  281. package/dist/Select/SelectParts.js +110 -0
  282. package/dist/Select/SingleSelect.cjs +1 -0
  283. package/dist/Select/SingleSelect.js +44 -0
  284. package/dist/Select/index.cjs +1 -1
  285. package/dist/Select/index.js +17 -10
  286. package/dist/SimpleMenu/SimpleMenu.cjs +9 -9
  287. package/dist/SimpleMenu/SimpleMenu.js +73 -143
  288. package/dist/SimpleMenu/index.cjs +1 -1
  289. package/dist/SimpleMenu/utils.cjs +1 -1
  290. package/dist/Stack/Stack.cjs +5 -5
  291. package/dist/Stack/Stack.js +7 -28
  292. package/dist/Stack/index.cjs +1 -1
  293. package/dist/Status/Status.cjs +7 -7
  294. package/dist/Status/Status.js +12 -38
  295. package/dist/Status/index.cjs +1 -1
  296. package/dist/SubNav/SubNav.cjs +5 -5
  297. package/dist/SubNav/SubNav.js +8 -13
  298. package/dist/SubNav/SubNavHeader.cjs +3 -3
  299. package/dist/SubNav/SubNavHeader.js +32 -69
  300. package/dist/SubNav/SubNavLink.cjs +13 -13
  301. package/dist/SubNav/SubNavLink.js +18 -44
  302. package/dist/SubNav/SubNavLinkSection.cjs +4 -4
  303. package/dist/SubNav/SubNavLinkSection.js +15 -24
  304. package/dist/SubNav/SubNavSection.cjs +2 -2
  305. package/dist/SubNav/SubNavSection.js +16 -49
  306. package/dist/SubNav/SubNavSectionLabel.cjs +3 -3
  307. package/dist/SubNav/SubNavSectionLabel.js +11 -36
  308. package/dist/SubNav/SubNavSections.cjs +1 -1
  309. package/dist/SubNav/SubNavSections.js +5 -18
  310. package/dist/SubNav/index.cjs +1 -1
  311. package/dist/Switch/Switch.cjs +3 -3
  312. package/dist/Switch/Switch.js +15 -44
  313. package/dist/Switch/index.cjs +1 -1
  314. package/dist/Table/Cell.cjs +3 -3
  315. package/dist/Table/Cell.js +9 -18
  316. package/dist/Table/TFooter.cjs +3 -3
  317. package/dist/Table/TFooter.js +11 -16
  318. package/dist/Table/Table.cjs +12 -12
  319. package/dist/Table/Table.js +16 -24
  320. package/dist/Table/Tbody.cjs +2 -2
  321. package/dist/Table/Tbody.js +6 -6
  322. package/dist/Table/Thead.cjs +2 -2
  323. package/dist/Table/Thead.js +6 -6
  324. package/dist/Table/Tr.cjs +2 -2
  325. package/dist/Table/Tr.js +6 -6
  326. package/dist/Table/index.cjs +1 -1
  327. package/dist/Tabs/TabGroup.cjs +1 -1
  328. package/dist/Tabs/TabGroup.js +13 -36
  329. package/dist/Tabs/TabPanels.cjs +1 -1
  330. package/dist/Tabs/TabPanels.js +11 -21
  331. package/dist/Tabs/Tabs.cjs +2 -2
  332. package/dist/Tabs/Tabs.js +56 -106
  333. package/dist/Tabs/TabsContext.cjs +1 -1
  334. package/dist/Tabs/TabsContext.js +11 -4
  335. package/dist/Tabs/components.cjs +17 -17
  336. package/dist/Tabs/index.cjs +1 -1
  337. package/dist/Tag/Tag.cjs +4 -4
  338. package/dist/Tag/Tag.js +6 -43
  339. package/dist/Tag/index.cjs +1 -1
  340. package/dist/TextButton/TextButton.cjs +6 -12
  341. package/dist/TextButton/TextButton.js +17 -60
  342. package/dist/TextButton/index.cjs +1 -1
  343. package/dist/TextInput/TextInput.cjs +1 -1
  344. package/dist/TextInput/TextInput.js +10 -41
  345. package/dist/TextInput/index.cjs +1 -1
  346. package/dist/Textarea/Textarea.cjs +14 -12
  347. package/dist/Textarea/Textarea.js +33 -52
  348. package/dist/Textarea/index.cjs +1 -1
  349. package/dist/ThemeProvider/ThemeProvider.cjs +2 -2
  350. package/dist/ThemeProvider/ThemeProvider.js +5 -12
  351. package/dist/ThemeProvider/hooks.cjs +1 -1
  352. package/dist/ThemeProvider/index.cjs +1 -1
  353. package/dist/TimePicker/TimePicker.cjs +5 -7
  354. package/dist/TimePicker/TimePicker.js +79 -53
  355. package/dist/TimePicker/index.cjs +1 -1
  356. package/dist/TimePicker/index.js +3 -2
  357. package/dist/ToggleCheckbox/ToggleCheckbox.cjs +8 -8
  358. package/dist/ToggleCheckbox/ToggleCheckbox.js +27 -122
  359. package/dist/ToggleCheckbox/index.cjs +1 -1
  360. package/dist/ToggleInput/ToggleInput.cjs +3 -3
  361. package/dist/ToggleInput/ToggleInput.js +15 -62
  362. package/dist/ToggleInput/index.cjs +1 -1
  363. package/dist/Tooltip/Tooltip.cjs +2 -2
  364. package/dist/Tooltip/Tooltip.js +9 -52
  365. package/dist/Tooltip/hooks/useTooltipHandlers.cjs +1 -1
  366. package/dist/Tooltip/hooks/useTooltipLayout.cjs +1 -1
  367. package/dist/Tooltip/index.cjs +1 -1
  368. package/dist/Tooltip/utils/positionTooltip.cjs +1 -1
  369. package/dist/Typography/Typography.cjs +2 -2
  370. package/dist/Typography/Typography.js +11 -26
  371. package/dist/Typography/constants.cjs +1 -1
  372. package/dist/Typography/index.cjs +1 -1
  373. package/dist/Typography/utils.cjs +9 -9
  374. package/dist/VisuallyHidden/VisuallyHidden.cjs +1 -1
  375. package/dist/VisuallyHidden/index.cjs +1 -1
  376. package/dist/helpers/context.cjs +1 -0
  377. package/dist/helpers/context.js +21 -0
  378. package/dist/helpers/deprecations.cjs +1 -1
  379. package/dist/helpers/getDefaultLocale.cjs +4 -1
  380. package/dist/helpers/getDefaultLocale.js +7 -2
  381. package/dist/helpers/getFocusableNodes.cjs +1 -1
  382. package/dist/helpers/keyboardKeys.cjs +1 -1
  383. package/dist/helpers/objects.cjs +1 -1
  384. package/dist/helpers/objects.js +6 -22
  385. package/dist/helpers/setOpacity.cjs +1 -1
  386. package/dist/helpers/setTabIndexOnFirstItem.cjs +1 -1
  387. package/dist/helpers/strings.cjs +1 -0
  388. package/dist/helpers/strings.js +4 -0
  389. package/dist/helpers/theme.cjs +1 -1
  390. package/dist/helpers/useElementOnScreen.cjs +4 -1
  391. package/dist/helpers/useElementOnScreen.js +6 -1
  392. package/dist/helpers/useId.cjs +4 -1
  393. package/dist/helpers/useId.js +6 -1
  394. package/dist/helpers/useIntersection.cjs +4 -1
  395. package/dist/helpers/useIntersection.js +6 -1
  396. package/dist/helpers/useLockScroll.cjs +4 -1
  397. package/dist/helpers/useLockScroll.js +6 -1
  398. package/dist/helpers/usePrevious.cjs +4 -1
  399. package/dist/helpers/usePrevious.js +6 -1
  400. package/dist/helpers/useResizeObserver.cjs +4 -1
  401. package/dist/helpers/useResizeObserver.js +6 -1
  402. package/dist/hooks/useComposeRefs.cjs +1 -0
  403. package/dist/hooks/useComposeRefs.js +14 -0
  404. package/dist/hooks/useControllableState.cjs +1 -1
  405. package/dist/hooks/useControllableState.js +7 -7
  406. package/dist/hooks/useDateFormatter.cjs +1 -0
  407. package/dist/hooks/useDateFormatter.js +20 -0
  408. package/dist/hooks/useElementOnScreen.cjs +1 -1
  409. package/dist/hooks/useId.cjs +1 -1
  410. package/dist/hooks/useIntersection.cjs +1 -1
  411. package/dist/hooks/useIntersection.js +8 -8
  412. package/dist/hooks/useLockScroll.cjs +1 -1
  413. package/dist/hooks/usePrevious.cjs +1 -1
  414. package/dist/hooks/useResizeObserver.cjs +1 -1
  415. package/dist/hooks/useResizeObserver.js +1 -1
  416. package/dist/index.cjs +1 -1
  417. package/dist/index.js +305 -293
  418. package/dist/themes/common-theme.cjs +1 -1
  419. package/dist/themes/darkTheme/dark-colors.cjs +1 -1
  420. package/dist/themes/darkTheme/dark-shadows.cjs +1 -1
  421. package/dist/themes/darkTheme/index.cjs +1 -1
  422. package/dist/themes/extendTheme.cjs +4 -4
  423. package/dist/themes/extendTheme.js +21 -13
  424. package/dist/themes/index.cjs +1 -1
  425. package/dist/themes/lightTheme/index.cjs +1 -1
  426. package/dist/themes/lightTheme/light-colors.cjs +1 -1
  427. package/dist/themes/lightTheme/light-shadows.cjs +1 -1
  428. package/dist/themes/sizes.cjs +1 -1
  429. package/dist/themes/sizes.js +4 -4
  430. package/dist/themes/utils.cjs +4 -4
  431. package/dist/themes/utils.js +7 -6
  432. package/dist/v2/Breadcrumbs/Breadcrumbs.cjs +2 -2
  433. package/dist/v2/Breadcrumbs/Breadcrumbs.js +15 -19
  434. package/dist/v2/Breadcrumbs/Crumb.cjs +1 -1
  435. package/dist/v2/Breadcrumbs/Crumb.js +5 -23
  436. package/dist/v2/Breadcrumbs/CrumbLink.cjs +2 -2
  437. package/dist/v2/Breadcrumbs/CrumbLink.js +6 -14
  438. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.cjs +4 -3
  439. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.js +11 -16
  440. package/dist/v2/Breadcrumbs/Divider.cjs +1 -1
  441. package/dist/v2/Breadcrumbs/Divider.js +5 -5
  442. package/dist/v2/Breadcrumbs/index.cjs +1 -1
  443. package/dist/v2/Link/Link.cjs +13 -11
  444. package/dist/v2/Link/Link.js +23 -37
  445. package/dist/v2/Link/index.cjs +1 -1
  446. package/dist/v2/LinkButton/LinkButton.cjs +2 -2
  447. package/dist/v2/LinkButton/LinkButton.js +11 -49
  448. package/dist/v2/LinkButton/index.cjs +1 -1
  449. package/dist/v2/MainNav/MainNav.cjs +2 -2
  450. package/dist/v2/MainNav/MainNav.js +9 -30
  451. package/dist/v2/MainNav/MainNavContext.cjs +1 -1
  452. package/dist/v2/MainNav/MainNavContext.js +1 -1
  453. package/dist/v2/MainNav/NavBrand.cjs +3 -3
  454. package/dist/v2/MainNav/NavBrand.js +16 -23
  455. package/dist/v2/MainNav/NavCondense.cjs +2 -5
  456. package/dist/v2/MainNav/NavCondense.js +19 -22
  457. package/dist/v2/MainNav/NavFooter.cjs +1 -1
  458. package/dist/v2/MainNav/NavFooter.js +4 -9
  459. package/dist/v2/MainNav/NavLink.cjs +10 -10
  460. package/dist/v2/MainNav/NavLink.js +39 -50
  461. package/dist/v2/MainNav/NavSection.cjs +1 -1
  462. package/dist/v2/MainNav/NavSection.js +9 -33
  463. package/dist/v2/MainNav/NavSections.cjs +2 -2
  464. package/dist/v2/MainNav/NavSections.js +7 -20
  465. package/dist/v2/MainNav/NavUser.cjs +2 -2
  466. package/dist/v2/MainNav/NavUser.js +15 -26
  467. package/dist/v2/MainNav/index.cjs +1 -1
  468. package/dist/v2/Pagination/Pagination.cjs +1 -5
  469. package/dist/v2/Pagination/Pagination.js +8 -21
  470. package/dist/v2/Pagination/PaginationContext.cjs +1 -1
  471. package/dist/v2/Pagination/components.cjs +10 -13
  472. package/dist/v2/Pagination/components.js +31 -51
  473. package/dist/v2/Pagination/index.cjs +1 -1
  474. package/dist/v2/SimpleMenu/Menu.cjs +65 -0
  475. package/dist/v2/SimpleMenu/Menu.js +89 -0
  476. package/dist/v2/SimpleMenu/SimpleMenu.cjs +1 -33
  477. package/dist/v2/SimpleMenu/SimpleMenu.js +25 -177
  478. package/dist/v2/SimpleMenu/index.cjs +1 -1
  479. package/dist/v2/SimpleMenu/index.js +5 -3
  480. package/dist/v2/SubNav/SubNav.cjs +5 -5
  481. package/dist/v2/SubNav/SubNav.js +8 -13
  482. package/dist/v2/SubNav/SubNavHeader.cjs +3 -3
  483. package/dist/v2/SubNav/SubNavHeader.js +33 -70
  484. package/dist/v2/SubNav/SubNavLink.cjs +5 -5
  485. package/dist/v2/SubNav/SubNavLink.js +21 -49
  486. package/dist/v2/SubNav/SubNavLinkSection.cjs +4 -4
  487. package/dist/v2/SubNav/SubNavLinkSection.js +16 -24
  488. package/dist/v2/SubNav/SubNavSection.cjs +2 -2
  489. package/dist/v2/SubNav/SubNavSection.js +14 -46
  490. package/dist/v2/SubNav/SubNavSectionLabel.cjs +3 -3
  491. package/dist/v2/SubNav/SubNavSectionLabel.js +11 -36
  492. package/dist/v2/SubNav/SubNavSections.cjs +1 -1
  493. package/dist/v2/SubNav/SubNavSections.js +5 -18
  494. package/dist/v2/SubNav/index.cjs +1 -1
  495. package/dist/v2/index.cjs +1 -1
  496. package/dist/v2/index.js +53 -51
  497. package/package.json +23 -35
  498. package/dist/Combobox/components.cjs +0 -53
  499. package/dist/Combobox/components.js +0 -64
  500. package/dist/Combobox/utils.cjs +0 -1
  501. package/dist/Combobox/utils.js +0 -78
  502. package/dist/DatePicker/DatePickerCalendar.cjs +0 -1
  503. package/dist/DatePicker/DatePickerCalendar.js +0 -142
  504. package/dist/DatePicker/DatePickerTd.cjs +0 -19
  505. package/dist/DatePicker/DatePickerTd.js +0 -61
  506. package/dist/DatePicker/DatePickerTh.cjs +0 -9
  507. package/dist/DatePicker/DatePickerTh.js +0 -42
  508. package/dist/DatePicker/compareDates.cjs +0 -1
  509. package/dist/DatePicker/compareDates.js +0 -4
  510. package/dist/DatePicker/components.cjs +0 -33
  511. package/dist/DatePicker/components.js +0 -43
  512. package/dist/DatePicker/utils/formatDate.cjs +0 -1
  513. package/dist/DatePicker/utils/formatDate.js +0 -4
  514. package/dist/DatePicker/utils/generateWeeks.cjs +0 -1
  515. package/dist/DatePicker/utils/generateWeeks.js +0 -17
  516. package/dist/DatePicker/utils/getDayOfWeek.cjs +0 -1
  517. package/dist/DatePicker/utils/getDayOfWeek.js +0 -15
  518. package/dist/DatePicker/utils/getMonths.cjs +0 -1
  519. package/dist/DatePicker/utils/getMonths.js +0 -7
  520. package/dist/DatePicker/utils/getYears.cjs +0 -1
  521. package/dist/DatePicker/utils/getYears.js +0 -9
  522. package/dist/DatePicker/utils/index.cjs +0 -1
  523. package/dist/DatePicker/utils/index.js +0 -12
  524. package/dist/DismissibleLayer/DismissibleLayer.cjs +0 -1
  525. package/dist/DismissibleLayer/DismissibleLayer.js +0 -30
  526. package/dist/Grid/GridContext.cjs +0 -1
  527. package/dist/Grid/GridContext.js +0 -6
  528. package/dist/Select/SelectButton.cjs +0 -19
  529. package/dist/Select/SelectButton.js +0 -69
  530. package/dist/Select/SelectTags.cjs +0 -6
  531. package/dist/Select/SelectTags.js +0 -38
  532. package/dist/Select/components.cjs +0 -39
  533. package/dist/Select/components.js +0 -48
  534. package/dist/Select/constants.cjs +0 -1
  535. package/dist/Select/constants.js +0 -8
  536. package/dist/Select/hooks/useButtonRef.cjs +0 -1
  537. package/dist/Select/hooks/useButtonRef.js +0 -13
  538. package/dist/Select/hooks/useListRef.cjs +0 -1
  539. package/dist/Select/hooks/useListRef.js +0 -18
  540. package/dist/Select/utils.cjs +0 -1
  541. package/dist/Select/utils.js +0 -17
  542. package/dist/Tabs/useTabsFocus.cjs +0 -1
  543. package/dist/Tabs/useTabsFocus.js +0 -17
  544. package/dist/Textarea/TextareaInput.cjs +0 -30
  545. package/dist/Textarea/TextareaInput.js +0 -70
  546. package/dist/helpers/arrays.cjs +0 -1
  547. package/dist/helpers/arrays.js +0 -6
  548. package/dist/helpers/escapeSelector.cjs +0 -1
  549. package/dist/helpers/escapeSelector.js +0 -4
  550. package/dist/v2/SimpleMenu/utils.cjs +0 -12
  551. package/dist/v2/SimpleMenu/utils.js +0 -15
  552. /package/dist/BaseCheckbox/assets/{checkmark-black.cjs → checkmark-black.svg.cjs} +0 -0
  553. /package/dist/BaseCheckbox/assets/{checkmark-black.js → checkmark-black.svg.js} +0 -0
  554. /package/dist/BaseCheckbox/assets/{checkmark.cjs → checkmark.svg.cjs} +0 -0
  555. /package/dist/BaseCheckbox/assets/{checkmark.js → checkmark.svg.js} +0 -0
  556. /package/dist/Loader/assets/{loader.cjs → loader.svg.cjs} +0 -0
  557. /package/dist/Loader/assets/{loader.js → loader.svg.js} +0 -0
  558. /package/dist/Pagination/assets/{next.cjs → next.svg.cjs} +0 -0
  559. /package/dist/Pagination/assets/{next.js → next.svg.js} +0 -0
  560. /package/dist/Pagination/assets/{previous.cjs → previous.svg.cjs} +0 -0
  561. /package/dist/Pagination/assets/{previous.js → previous.svg.js} +0 -0
  562. /package/dist/v2/Pagination/assets/{next.cjs → next.svg.cjs} +0 -0
  563. /package/dist/v2/Pagination/assets/{next.js → next.svg.js} +0 -0
  564. /package/dist/v2/Pagination/assets/{previous.cjs → previous.svg.cjs} +0 -0
  565. /package/dist/v2/Pagination/assets/{previous.js → previous.svg.js} +0 -0
@@ -1,22 +1,12 @@
1
1
  import { jsx as i } from "react/jsx-runtime";
2
2
  import { Children as a, isValidElement as m, cloneElement as l } from "react";
3
3
  import { Box as c } from "../Box/Box.js";
4
- const x = ({
5
- children: n,
6
- ...o
7
- }) => {
4
+ const x = ({ children: n, ...o }) => {
8
5
  const t = a.toArray(n).map((r, e) => m(r) ? l(r, {
9
6
  "aria-colindex": e + 1,
10
- coords: {
11
- col: e + 1,
12
- row: o["aria-rowindex"]
13
- }
7
+ coords: { col: e + 1, row: o["aria-rowindex"] }
14
8
  }) : r);
15
- return i(c, {
16
- as: "tr",
17
- ...o,
18
- children: t
19
- });
9
+ return i(c, { as: "tr", ...o, children: t });
20
10
  };
21
11
  export {
22
12
  x as RawTr
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=o=>{const e=o.querySelector('[tabindex="0"]');e&&e.focus()};exports.focusFocusable=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=o=>{const e=o.querySelector('[tabindex="0"]');e&&e.focus()};exports.focusFocusable=t;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./RawTable.cjs"),a=require("./RawCell.cjs"),w=require("./RawThead.cjs"),R=require("./RawTbody.cjs"),T=require("./RawTr.cjs");exports.RawTable=e.RawTable;exports.RawTd=a.RawTd;exports.RawTh=a.RawTh;exports.RawThead=w.RawThead;exports.RawTbody=R.RawTbody;exports.RawTr=T.RawTr;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./RawTable.cjs"),a=require("./RawCell.cjs"),r=require("./RawThead.cjs"),w=require("./RawTbody.cjs"),R=require("./RawTr.cjs");exports.RawTable=e.RawTable;exports.RawTd=a.RawTd;exports.RawTh=a.RawTh;exports.RawThead=r.RawThead;exports.RawTbody=w.RawTbody;exports.RawTr=R.RawTr;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),r=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=r(t),o=e=>a.default.createElement("form",{...e,role:"search"});exports.SearchForm=o;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),o=e=>r.jsx("form",{...e,role:"search"});exports.SearchForm=o;
@@ -1,5 +1,5 @@
1
- import r from "react";
2
- const t = (e) => /* @__PURE__ */ r.createElement("form", { ...e, role: "search" });
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ const m = (r) => o("form", { ...r, role: "search" });
3
3
  export {
4
- t as SearchForm
4
+ m as SearchForm
5
5
  };
@@ -1,29 +1,28 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),d=require("@strapi/icons"),E=require("prop-types"),S=require("styled-components"),x=require("../Field/Field.cjs"),_=require("../Field/FieldLabel.cjs"),a=require("../Field/FieldInput.cjs");require("react/jsx-runtime");require("../Field/FieldContext.cjs");require("../Typography/Typography.cjs");const v=require("../Field/FieldAction.cjs"),o=require("../Flex/Flex.cjs"),$=require("../themes/sizes.cjs"),z=require("../themes/utils.cjs"),C=require("../VisuallyHidden/VisuallyHidden.cjs"),i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=i(s),l=i(E),n=i(S),I=n.default(o.Flex)`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),i=require("react"),l=require("@strapi/icons"),m=require("styled-components"),F=require("../hooks/useComposeRefs.cjs"),R=require("../themes/utils.cjs"),t=require("../Field/FieldInput.cjs"),S=require("../Field/FieldAction.cjs"),y=require("../Field/Field.cjs"),$=require("../VisuallyHidden/VisuallyHidden.cjs"),C=require("../Field/FieldLabel.cjs"),I=e=>e&&e.__esModule?e:{default:e},s=I(m),w=s.default(l.Cross)`
2
2
  font-size: 0.5rem;
3
- svg path {
3
+ path {
4
4
  fill: ${({theme:e})=>e.colors.neutral400};
5
5
  }
6
- `,p=n.default(o.Flex)`
6
+ `,c=s.default(l.Search)`
7
7
  font-size: 0.8rem;
8
-
9
- svg path {
8
+ path {
10
9
  fill: ${({theme:e})=>e.colors.neutral800};
11
10
  }
12
- `,T=n.default.div`
11
+ `,_=s.default.div`
13
12
  border-radius: ${({theme:e})=>e.borderRadius};
14
13
  box-shadow: ${({theme:e})=>e.shadows.filterShadow};
15
14
 
16
15
  &:focus-within {
17
- ${p} {
18
- svg path {
16
+ ${c} {
17
+ path {
19
18
  fill: ${({theme:e})=>e.colors.primary600};
20
19
  }
21
20
  }
22
21
  }
23
22
 
24
- ${a.InputWrapper} {
23
+ ${t.InputWrapper} {
25
24
  border: 1px solid transparent;
26
25
  }
27
26
 
28
- ${z.inputFocusStyle(a.InputWrapper)}
29
- `,r=s.forwardRef(({name:e,size:f,children:F,value:u,onClear:y,clearLabel:h,...m},q)=>{const c=s.useRef(null),b=u.length>0,j=R=>{y(R),c.current.focus()},g=q||c;return t.default.createElement(T,null,t.default.createElement(x.Field,{name:e},t.default.createElement(C.VisuallyHidden,null,t.default.createElement(_.FieldLabel,null,F)),t.default.createElement(a.FieldInput,{ref:g,value:u,startAction:t.default.createElement(p,null,t.default.createElement(d.Search,{"aria-hidden":!0})),size:f,endAction:b?t.default.createElement(v.FieldAction,{label:h,onClick:j},t.default.createElement(I,null,t.default.createElement(d.Cross,null))):void 0,...m})))});r.displayName="Searchbar";r.defaultProps={value:"",size:"M"};r.propTypes={children:l.default.node.isRequired,clearLabel:l.default.string.isRequired,name:l.default.string.isRequired,onClear:l.default.func.isRequired,size:l.default.oneOf(Object.keys($.sizes.input)),value:l.default.string};exports.Searchbar=r;
27
+ ${R.inputFocusStyle(t.InputWrapper)}
28
+ `,g=i.forwardRef(({name:e,size:a="M",children:u,value:n="",onClear:d,clearLabel:f,...p},h)=>{const o=i.useRef(null),b=n.length>0,q=j=>{d(j),o.current.focus()},x=F.composeRefs(h,o);return r.jsx(_,{children:r.jsxs(y.Field,{name:e,children:[r.jsx($.VisuallyHidden,{children:r.jsx(C.FieldLabel,{children:u})}),r.jsx(t.FieldInput,{ref:x,value:n,startAction:r.jsx(c,{"aria-hidden":!0}),size:a,endAction:b?r.jsx(S.FieldAction,{label:f,onClick:q,children:r.jsx(w,{})}):void 0,...p})]})})});exports.Searchbar=g;
@@ -1,75 +1,47 @@
1
- import r, { forwardRef as y, useRef as $ } from "react";
2
- import { Search as S, Cross as v } from "@strapi/icons";
3
- import t from "prop-types";
4
- import o from "styled-components";
5
- import { Field as C } from "../Field/Field.js";
6
- import { FieldLabel as F } from "../Field/FieldLabel.js";
7
- import { InputWrapper as a, FieldInput as w } from "../Field/FieldInput.js";
8
- import "react/jsx-runtime";
9
- import "../Field/FieldContext.js";
10
- import "../Typography/Typography.js";
11
- import { FieldAction as z } from "../Field/FieldAction.js";
12
- import { Flex as s } from "../Flex/Flex.js";
13
- import { sizes as q } from "../themes/sizes.js";
14
- import { inputFocusStyle as x } from "../themes/utils.js";
15
- import { VisuallyHidden as I } from "../VisuallyHidden/VisuallyHidden.js";
16
- const W = o(s)`
1
+ import { jsx as o, jsxs as $ } from "react/jsx-runtime";
2
+ import { forwardRef as R, useRef as S } from "react";
3
+ import { Cross as w, Search as x } from "@strapi/icons";
4
+ import e from "styled-components";
5
+ import { composeRefs as C } from "../hooks/useComposeRefs.js";
6
+ import { inputFocusStyle as F } from "../themes/utils.js";
7
+ import { InputWrapper as n, FieldInput as y } from "../Field/FieldInput.js";
8
+ import { FieldAction as I } from "../Field/FieldAction.js";
9
+ import { Field as z } from "../Field/Field.js";
10
+ import { VisuallyHidden as A } from "../VisuallyHidden/VisuallyHidden.js";
11
+ import { FieldLabel as g } from "../Field/FieldLabel.js";
12
+ const j = e(w)`
17
13
  font-size: 0.5rem;
18
- svg path {
19
- fill: ${({ theme: e }) => e.colors.neutral400};
14
+ path {
15
+ fill: ${({ theme: r }) => r.colors.neutral400};
20
16
  }
21
- `, m = o(s)`
17
+ `, l = e(x)`
22
18
  font-size: 0.8rem;
23
-
24
- svg path {
25
- fill: ${({ theme: e }) => e.colors.neutral800};
19
+ path {
20
+ fill: ${({ theme: r }) => r.colors.neutral800};
26
21
  }
27
- `, A = o.div`
28
- border-radius: ${({ theme: e }) => e.borderRadius};
29
- box-shadow: ${({ theme: e }) => e.shadows.filterShadow};
22
+ `, W = e.div`
23
+ border-radius: ${({ theme: r }) => r.borderRadius};
24
+ box-shadow: ${({ theme: r }) => r.shadows.filterShadow};
30
25
 
31
26
  &:focus-within {
32
- ${m} {
33
- svg path {
34
- fill: ${({ theme: e }) => e.colors.primary600};
27
+ ${l} {
28
+ path {
29
+ fill: ${({ theme: r }) => r.colors.primary600};
35
30
  }
36
31
  }
37
32
  }
38
33
 
39
- ${a} {
34
+ ${n} {
40
35
  border: 1px solid transparent;
41
36
  }
42
37
 
43
- ${x(a)}
44
- `, l = y(({ name: e, size: p, children: c, value: i, onClear: u, clearLabel: d, ...f }, h) => {
45
- const n = $(null), b = i.length > 0, E = (g) => {
46
- u(g), n.current.focus();
47
- }, R = h || n;
48
- return /* @__PURE__ */ r.createElement(A, null, /* @__PURE__ */ r.createElement(C, { name: e }, /* @__PURE__ */ r.createElement(I, null, /* @__PURE__ */ r.createElement(F, null, c)), /* @__PURE__ */ r.createElement(
49
- w,
50
- {
51
- ref: R,
52
- value: i,
53
- startAction: /* @__PURE__ */ r.createElement(m, null, /* @__PURE__ */ r.createElement(S, { "aria-hidden": !0 })),
54
- size: p,
55
- endAction: b ? /* @__PURE__ */ r.createElement(z, { label: d, onClick: E }, /* @__PURE__ */ r.createElement(W, null, /* @__PURE__ */ r.createElement(v, null))) : void 0,
56
- ...f
57
- }
58
- )));
38
+ ${F(n)}
39
+ `, J = R(({ name: r, size: s = "M", children: a, value: t = "", onClear: c, clearLabel: d, ...m }, p) => {
40
+ const i = S(null), f = t.length > 0, h = (b) => {
41
+ c(b), i.current.focus();
42
+ }, u = C(p, i);
43
+ return o(W, { children: $(z, { name: r, children: [o(A, { children: o(g, { children: a }) }), o(y, { ref: u, value: t, startAction: o(l, { "aria-hidden": !0 }), size: s, endAction: f ? o(I, { label: d, onClick: h, children: o(j, {}) }) : void 0, ...m })] }) });
59
44
  });
60
- l.displayName = "Searchbar";
61
- l.defaultProps = {
62
- value: "",
63
- size: "M"
64
- };
65
- l.propTypes = {
66
- children: t.node.isRequired,
67
- clearLabel: t.string.isRequired,
68
- name: t.string.isRequired,
69
- onClear: t.func.isRequired,
70
- size: t.oneOf(Object.keys(q.input)),
71
- value: t.string
72
- };
73
45
  export {
74
- l as Searchbar
46
+ J as Searchbar
75
47
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("./Searchbar.cjs"),e=require("./SearchForm.cjs");exports.Searchbar=r.Searchbar;exports.SearchForm=e.SearchForm;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./Searchbar.cjs"),e=require("./SearchForm.cjs");exports.Searchbar=r.Searchbar;exports.SearchForm=e.SearchForm;
@@ -0,0 +1,30 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),J=require("react"),K=require("@strapi/icons"),b=require("styled-components"),o=require("./SelectParts.cjs"),Q=require("../BaseCheckbox/assets/checkmark.svg.cjs"),U=require("../helpers/strings.cjs"),C=require("../hooks/useId.cjs"),Z=require("../hooks/useIntersection.cjs"),ee=require("../Tag/Tag.cjs"),x=require("../Box/Box.cjs"),R=require("../Typography/Typography.cjs"),te=require("../Field/Field.cjs"),re=require("../Flex/Flex.cjs"),ne=require("../Field/FieldLabel.cjs"),ie=require("../Field/FieldHint.cjs"),oe=require("../Field/FieldError.cjs"),le=e=>e&&e.__esModule?e:{default:e};function se(e){if(e&&e.__esModule)return e;const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const l=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(i,r,l.get?l:{enumerable:!0,get:()=>e[r]})}}return i.default=e,Object.freeze(i)}const d=se(J),ce=le(b),ae=({"aria-label":e,children:i,clearLabel:r="Clear",customizeContent:l,disabled:s,error:c,hint:u,id:j,label:g,labelAction:M,onChange:p,onClear:F,onReachEnd:y,placeholder:_,required:q,selectButtonTitle:he,startIcon:B,size:L="M",value:h,withTags:m,...P})=>{const $=d.useRef(null),[S,k]=d.useState(),[V,z]=d.useState(!1),f=C.useId(j),E=`${f}-hint`,G=`${f}-error`,A=n=>{p?p(n):k(n)},D=n=>()=>{const w=Array.isArray(h)?h.filter(I=>I!==n):(S??[]).filter(I=>I!==n);p?p(w):k(w)},H=n=>{z(n)},v=d.useRef(null),W=()=>{v.current.focus()},N=C.useId(),O=`intersection-${U.stripReactIdOfColon(N)}`,X=n=>{y&&y(n)};Z.useIntersection($,X,{selectorToWatch:`#${O}`,skipWhen:!V});const a=typeof h<"u"&&h!==null?h:S,Y=n=>n&&typeof n=="object"&&n.value?t.jsx(ee.Tag,{tabIndex:-1,disabled:s,icon:t.jsx(K.Cross,{}),onClick:D(n.value),children:n.textValue},n.value):null;return t.jsx(te.Field,{hint:u,error:c,id:f,required:q,children:t.jsxs(re.Flex,{direction:"column",alignItems:"stretch",gap:1,children:[g?t.jsx(ne.FieldLabel,{onClick:W,action:M,children:g}):null,t.jsxs(o.Root,{onOpenChange:H,disabled:s,required:q,onValueChange:A,value:a,...P,multi:!0,children:[t.jsx(o.Trigger,{ref:v,"aria-label":g??e,"aria-describedby":`${E} ${G}`,id:f,startIcon:B,size:L,hasError:!!c,disabled:s,clearLabel:r,onClear:a?.length?F:void 0,paddingLeft:m&&a?.length?1:3,children:t.jsx(o.Value,{placeholder:_,textColor:a?.length?"neutral800":"neutral600",children:a?.length?m?Y:l?l(a):void 0:void 0})}),t.jsx(o.Portal,{children:t.jsx(o.Content,{position:"popper",sideOffset:4,children:t.jsxs(o.Viewport,{ref:$,children:[i,t.jsx(x.Box,{id:O,width:"100%",height:"1px"})]})})})]}),t.jsx(ie.FieldHint,{}),t.jsx(oe.FieldError,{})]})})},de=d.forwardRef(({value:e,children:i,startIcon:r,...l},s)=>t.jsxs(o.Item,{ref:s,value:e.toString(),...l,children:[r&&t.jsx(x.Box,{as:"span","aria-hidden":!0,children:r}),t.jsx(o.ItemIndicator,{children:({isSelected:c,isIntermediate:u})=>t.jsx(T,{hasRadius:!0,overflow:"hidden",position:"relative",$indeterminate:u,$selected:c,zIndex:1,height:"18px",width:"18px"})}),t.jsx(R.Typography,{textColor:"neutral800",children:t.jsx(o.ItemText,{children:i})})]})),T=ce.default(x.Box)`
2
+ border: 1px solid
3
+ ${({theme:e,$selected:i,$indeterminate:r})=>i||r?e.colors.primary600:e.colors.neutral300};
4
+ background-color: ${({theme:e,$selected:i,$indeterminate:r})=>i||r?e.colors.primary600:e.colors.neutral0};
5
+
6
+ ${({theme:e,$indeterminate:i})=>i&&b.css`
7
+ &::after {
8
+ content: '';
9
+ display: block;
10
+ position: relative;
11
+ color: white;
12
+ height: 2px;
13
+ width: 10px;
14
+ background-color: ${e.colors.neutral0};
15
+ left: 50%;
16
+ top: 50%;
17
+ transform: translateX(-50%) translateY(-50%);
18
+ }
19
+ `}
20
+
21
+ ${({$selected:e})=>e&&b.css`
22
+ &::after {
23
+ content: '';
24
+ background: url(${Q}) no-repeat no-repeat center center;
25
+ width: 100%;
26
+ height: 100%;
27
+ position: absolute;
28
+ }
29
+ `}
30
+ `,ue=d.forwardRef(({children:e,label:i,startIcon:r,values:l=[],...s},c)=>t.jsxs(o.Group,{ref:c,children:[t.jsxs(o.Item,{value:l,...s,children:[r&&t.jsx(x.Box,{as:"span","aria-hidden":!0,children:r}),t.jsx(o.ItemIndicator,{children:({isSelected:u,isIntermediate:j})=>t.jsx(T,{hasRadius:!0,overflow:"hidden",position:"relative",$indeterminate:j,$selected:u,zIndex:1,height:"18px",width:"18px"})}),t.jsx(R.Typography,{textColor:"neutral800",children:i})]}),e]}));exports.MultiSelect=ae;exports.MultiSelectGroup=ue;exports.MultiSelectOption=de;
@@ -0,0 +1,75 @@
1
+ import { jsxs as s, jsx as e } from "react/jsx-runtime";
2
+ import * as d from "react";
3
+ import { Cross as N } from "@strapi/icons";
4
+ import Q, { css as O } from "styled-components";
5
+ import { Item as F, ItemIndicator as M, ItemText as U, Group as Z, Root as ee, Trigger as re, Value as te, Portal as ne, Content as oe, Viewport as ie } from "./SelectParts.js";
6
+ import le from "../BaseCheckbox/assets/checkmark.svg.js";
7
+ import { stripReactIdOfColon as ae } from "../helpers/strings.js";
8
+ import { useId as S } from "../hooks/useId.js";
9
+ import { useIntersection as ce } from "../hooks/useIntersection.js";
10
+ import { Tag as de } from "../Tag/Tag.js";
11
+ import { Box as m } from "../Box/Box.js";
12
+ import { Typography as B } from "../Typography/Typography.js";
13
+ import { Field as se } from "../Field/Field.js";
14
+ import { Flex as he } from "../Flex/Flex.js";
15
+ import { FieldLabel as ue } from "../Field/FieldLabel.js";
16
+ import { FieldHint as pe } from "../Field/FieldHint.js";
17
+ import { FieldError as fe } from "../Field/FieldError.js";
18
+ const Le = ({ "aria-label": t, children: n, clearLabel: o = "Clear", customizeContent: l, disabled: i, error: a, hint: h, id: g, label: x, labelAction: V, onChange: p, onClear: j, onReachEnd: $, placeholder: E, required: b, selectButtonTitle: me, startIcon: z, size: A = "M", value: u, withTags: k, ...G }) => {
19
+ const C = d.useRef(null), [v, w] = d.useState(), [W, q] = d.useState(!1), f = S(g), H = `${f}-hint`, P = `${f}-error`, X = (r) => {
20
+ p ? p(r) : w(r);
21
+ }, Y = (r) => () => {
22
+ const T = Array.isArray(u) ? u.filter((I) => I !== r) : (v ?? []).filter((I) => I !== r);
23
+ p ? p(T) : w(T);
24
+ }, _ = (r) => {
25
+ q(r);
26
+ }, R = d.useRef(null), D = () => {
27
+ R.current.focus();
28
+ }, J = S(), y = `intersection-${ae(J)}`;
29
+ ce(C, (r) => {
30
+ $ && $(r);
31
+ }, {
32
+ selectorToWatch: `#${y}`,
33
+ /**
34
+ * We need to know when the select is open because only then will viewportRef
35
+ * not be null. Because it uses a portal that (sensibly) is not mounted 24/7.
36
+ */
37
+ skipWhen: !W
38
+ });
39
+ const c = typeof u < "u" && u !== null ? u : v, K = (r) => r && typeof r == "object" && r.value ? e(de, { tabIndex: -1, disabled: i, icon: e(N, {}), onClick: Y(r.value), children: r.textValue }, r.value) : null;
40
+ return e(se, { hint: h, error: a, id: f, required: b, children: s(he, { direction: "column", alignItems: "stretch", gap: 1, children: [x ? e(ue, { onClick: D, action: V, children: x }) : null, s(ee, { onOpenChange: _, disabled: i, required: b, onValueChange: X, value: c, ...G, multi: !0, children: [e(re, { ref: R, "aria-label": x ?? t, "aria-describedby": `${H} ${P}`, id: f, startIcon: z, size: A, hasError: !!a, disabled: i, clearLabel: o, onClear: c?.length ? j : void 0, paddingLeft: k && c?.length ? 1 : 3, children: e(te, { placeholder: E, textColor: c?.length ? "neutral800" : "neutral600", children: c?.length ? k ? K : l ? l(c) : void 0 : void 0 }) }), e(ne, { children: e(oe, { position: "popper", sideOffset: 4, children: s(ie, { ref: C, children: [n, e(m, { id: y, width: "100%", height: "1px" })] }) }) })] }), e(pe, {}), e(fe, {})] }) });
41
+ }, Ve = d.forwardRef(({ value: t, children: n, startIcon: o, ...l }, i) => s(F, { ref: i, value: t.toString(), ...l, children: [o && e(m, { as: "span", "aria-hidden": !0, children: o }), e(M, { children: ({ isSelected: a, isIntermediate: h }) => e(L, { hasRadius: !0, overflow: "hidden", position: "relative", $indeterminate: h, $selected: a, zIndex: 1, height: "18px", width: "18px" }) }), e(B, { textColor: "neutral800", children: e(U, { children: n }) })] })), L = Q(m)`
42
+ border: 1px solid
43
+ ${({ theme: t, $selected: n, $indeterminate: o }) => n || o ? t.colors.primary600 : t.colors.neutral300};
44
+ background-color: ${({ theme: t, $selected: n, $indeterminate: o }) => n || o ? t.colors.primary600 : t.colors.neutral0};
45
+
46
+ ${({ theme: t, $indeterminate: n }) => n && O`
47
+ &::after {
48
+ content: '';
49
+ display: block;
50
+ position: relative;
51
+ color: white;
52
+ height: 2px;
53
+ width: 10px;
54
+ background-color: ${t.colors.neutral0};
55
+ left: 50%;
56
+ top: 50%;
57
+ transform: translateX(-50%) translateY(-50%);
58
+ }
59
+ `}
60
+
61
+ ${({ $selected: t }) => t && O`
62
+ &::after {
63
+ content: '';
64
+ background: url(${le}) no-repeat no-repeat center center;
65
+ width: 100%;
66
+ height: 100%;
67
+ position: absolute;
68
+ }
69
+ `}
70
+ `, je = d.forwardRef(({ children: t, label: n, startIcon: o, values: l = [], ...i }, a) => s(Z, { ref: a, children: [s(F, { value: l, ...i, children: [o && e(m, { as: "span", "aria-hidden": !0, children: o }), e(M, { children: ({ isSelected: h, isIntermediate: g }) => e(L, { hasRadius: !0, overflow: "hidden", position: "relative", $indeterminate: g, $selected: h, zIndex: 1, height: "18px", width: "18px" }) }), e(B, { textColor: "neutral800", children: n })] }), t] }));
71
+ export {
72
+ Le as MultiSelect,
73
+ je as MultiSelectGroup,
74
+ Ve as MultiSelectOption
75
+ };
@@ -1 +1,3 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react"),f=require("prop-types"),d=require("./OptGroup.cjs"),c=require("./Option.cjs"),y=require("./Select.cjs"),l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=l(i),p=l(f),s=({options:e,...n})=>t.default.createElement(y.Select,{multi:!0,...n},e.map(({label:r,value:o,children:a})=>a?t.default.createElement(d.OptGroup,{key:r,label:r},a?.map(u=>t.default.createElement(c.Option,{key:u.value,value:u.value},u.label))):t.default.createElement(c.Option,{key:o,value:o},r)));s.propTypes={options:p.default.arrayOf(p.default.object).isRequired};exports.MultiSelectNested=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("react/jsx-runtime"),r=require("styled-components"),i=require("./MultiSelect.cjs"),a=e=>e&&e.__esModule?e:{default:e},s=a(r),c=({options:e,...n})=>u.jsx(i.MultiSelect,{...n,children:e.map(l=>"children"in l?u.jsx(i.MultiSelectGroup,{label:l.label,values:l.children.map(t=>t.value.toString()),children:l.children.map(t=>u.jsx(d,{value:t.value,children:t.label},t.value))},l.label):u.jsx(i.MultiSelectOption,{value:l.value,children:l.label},l.value))}),d=s.default(i.MultiSelectOption)`
2
+ padding-left: ${({theme:e})=>e.spaces[7]};
3
+ `;exports.MultiSelectNested=c;
@@ -1,14 +1,9 @@
1
- import e from "react";
2
- import p from "prop-types";
3
- import { OptGroup as f } from "./OptGroup.js";
4
- import { Option as a } from "./Option.js";
5
- import { Select as n } from "./Select.js";
6
- const c = ({ options: u, ...i }) => /* @__PURE__ */ e.createElement(n, { multi: !0, ...i }, u.map(
7
- ({ label: t, value: o, children: m }) => m ? /* @__PURE__ */ e.createElement(f, { key: t, label: t }, m?.map((r) => /* @__PURE__ */ e.createElement(a, { key: r.value, value: r.value }, r.label))) : /* @__PURE__ */ e.createElement(a, { key: o, value: o }, t)
8
- ));
9
- c.propTypes = {
10
- options: p.arrayOf(p.object).isRequired
11
- };
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import n from "styled-components";
3
+ import { MultiSelectOption as i, MultiSelect as u, MultiSelectGroup as c } from "./MultiSelect.js";
4
+ const o = ({ options: a, ...t }) => r(u, { ...t, children: a.map((e) => "children" in e ? r(c, { label: e.label, values: e.children.map((l) => l.value.toString()), children: e.children.map((l) => r(d, { value: l.value, children: l.label }, l.value)) }, e.label) : r(i, { value: e.value, children: e.label }, e.value)) }), d = n(i)`
5
+ padding-left: ${({ theme: a }) => a.spaces[7]};
6
+ `;
12
7
  export {
13
- c as MultiSelectNested
8
+ o as MultiSelectNested
14
9
  };
@@ -1 +1,5 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),i=require("prop-types"),d=require("./Option.cjs"),u=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=u(s),r=u(i),a=({children:e,label:o,...p})=>{const l=e.map(n=>n.props.value);return t.default.createElement(t.default.Fragment,null,t.default.createElement(d.Option,{"data-opt-group":!0,"data-opt-group-children":l,"aria-label":`${o}, ${e.length} items`,...p},o),e)};a.propTypes={children:r.default.arrayOf(r.default.node).isRequired,label:r.default.string.isRequired};a.displayName="OptGroup";exports.OptGroup=a;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./MultiSelect.cjs");/**
2
+ * @preserve
3
+ * @deprecated This component is only fit for the MultiSelect component.
4
+ * Therefore, you should import the MultiSelectGroup component instead.
5
+ */const e=t.MultiSelectGroup;exports.OptGroup=e;
@@ -1,24 +1,10 @@
1
- import r from "react";
2
- import t from "prop-types";
3
- import { Option as m } from "./Option.js";
4
- const o = ({ children: e, label: p, ...a }) => {
5
- const i = e.map((l) => l.props.value);
6
- return /* @__PURE__ */ r.createElement(r.Fragment, null, /* @__PURE__ */ r.createElement(
7
- m,
8
- {
9
- "data-opt-group": !0,
10
- "data-opt-group-children": i,
11
- "aria-label": `${p}, ${e.length} items`,
12
- ...a
13
- },
14
- p
15
- ), e);
16
- };
17
- o.propTypes = {
18
- children: t.arrayOf(t.node).isRequired,
19
- label: t.string.isRequired
20
- };
21
- o.displayName = "OptGroup";
1
+ import { MultiSelectGroup as o } from "./MultiSelect.js";
2
+ /**
3
+ * @preserve
4
+ * @deprecated This component is only fit for the MultiSelect component.
5
+ * Therefore, you should import the MultiSelectGroup component instead.
6
+ */
7
+ const p = o;
22
8
  export {
23
- o as OptGroup
9
+ p as OptGroup
24
10
  };
@@ -1,45 +1,5 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),y=require("prop-types"),m=require("styled-components"),x=require("../BaseCheckbox/assets/checkmark.cjs"),l=require("../Box/Box.cjs"),b=require("../Flex/Flex.cjs"),k=require("../Typography/Typography.cjs"),i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},r=i(s),t=i(y),u=i(m),R=u.default(l.Box)`
2
- border: 1px solid
3
- ${({theme:e,selected:o,indeterminate:a})=>o||a?e.colors.primary600:e.colors.neutral300};
4
- height: 18px;
5
- width: 18px;
6
- background-color: ${({theme:e,selected:o,indeterminate:a})=>o||a?e.colors.primary600:e.colors.neutral0};
7
-
8
- ${({theme:e,indeterminate:o})=>o&&`&::after {
9
- content: '';
10
- display: block;
11
- position: relative;
12
- color: white;
13
- height: 2px;
14
- width: 10px;
15
- background-color: ${e.colors.neutral0};
16
- left: 50%;
17
- top: 50%;
18
- transform: translateX(-50%) translateY(-50%);
19
- }
20
-
21
- `}
22
-
23
- ${({selected:e})=>e&&`
24
- &::after {
25
- content: '';
26
- background: url(${x}) no-repeat no-repeat center center;
27
- width: 100%;
28
- height: 100%;
29
- position: absolute;
30
- }
31
-
32
- `}
33
- `,T=u.default(l.Box)`
34
- width: 100%;
35
- border: none;
36
- text-align: left;
37
- outline-offset: -3px;
38
- &.is-focused {
39
- background: ${({theme:e})=>e.colors.primary100};
40
- }
41
-
42
- &:hover {
43
- background: ${({theme:e})=>e.colors.primary100};
44
- }
45
- `,n=({selected:e,indeterminate:o,children:a,value:c,multi:p,isChild:f,startIcon:d,...h})=>{const g=s.useRef(null);return r.default.createElement(T,{as:"li",hasRadius:!0,paddingLeft:f?7:4,paddingRight:4,paddingTop:2,paddingBottom:2,ref:g,role:"option","aria-selected":e,background:"neutral0","data-strapi-value":c,...h},r.default.createElement(b.Flex,null,d&&r.default.createElement(l.Box,{paddingRight:2,"aria-hidden":!0},d),p&&r.default.createElement(l.Box,{paddingRight:2,"aria-hidden":!0},r.default.createElement(R,{hasRadius:!0,overflow:"hidden",position:"relative",indeterminate:o,selected:e,zIndex:1})),r.default.createElement(k.Typography,{textColor:e?"primary600":"neutral800",fontWeight:e?"bold":null},a)))};n.defaultProps={isChild:!1,multi:!1,selected:!1,startIcon:void 0,indeterminate:!1};n.propTypes={children:t.default.oneOfType([t.default.string,t.default.number]).isRequired,indeterminate:t.default.bool,isChild:t.default.bool,multi:t.default.bool,selected:t.default.bool,startIcon:t.default.node,value:t.default.oneOfType([t.default.string,t.default.number]).isRequired};n.displayName="Option";exports.Option=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),c=require("./MultiSelect.cjs"),o=require("./Select.cjs"),l=require("./SingleSelect.cjs");/**
2
+ * @preserve
3
+ * @deprecated You should import the specific type of option you want to render,
4
+ * e.g. `import { MultiSelectOption } from '@strapi/design-system';`
5
+ */const u=({multi:n,...e})=>{const i=o.useSelectContext();return n||i.multi?t.jsx(c.MultiSelectOption,{...e}):t.jsx(l.SingleSelectOption,{...e})};exports.Option=u;
@@ -1,102 +1,16 @@
1
- import t, { useRef as f } from "react";
2
- import o from "prop-types";
3
- import d from "styled-components";
4
- import h from "../BaseCheckbox/assets/checkmark.js";
5
- import { Box as a } from "../Box/Box.js";
6
- import { Flex as g } from "../Flex/Flex.js";
7
- import { Typography as b } from "../Typography/Typography.js";
8
- const y = d(a)`
9
- border: 1px solid
10
- ${({ theme: e, selected: r, indeterminate: i }) => r || i ? e.colors.primary600 : e.colors.neutral300};
11
- height: 18px;
12
- width: 18px;
13
- background-color: ${({ theme: e, selected: r, indeterminate: i }) => r || i ? e.colors.primary600 : e.colors.neutral0};
14
-
15
- ${({ theme: e, indeterminate: r }) => r && `&::after {
16
- content: '';
17
- display: block;
18
- position: relative;
19
- color: white;
20
- height: 2px;
21
- width: 10px;
22
- background-color: ${e.colors.neutral0};
23
- left: 50%;
24
- top: 50%;
25
- transform: translateX(-50%) translateY(-50%);
26
- }
27
-
28
- `}
29
-
30
- ${({ selected: e }) => e && `
31
- &::after {
32
- content: '';
33
- background: url(${h}) no-repeat no-repeat center center;
34
- width: 100%;
35
- height: 100%;
36
- position: absolute;
37
- }
38
-
39
- `}
40
- `, x = d(a)`
41
- width: 100%;
42
- border: none;
43
- text-align: left;
44
- outline-offset: -3px;
45
- &.is-focused {
46
- background: ${({ theme: e }) => e.colors.primary100};
47
- }
48
-
49
- &:hover {
50
- background: ${({ theme: e }) => e.colors.primary100};
51
- }
52
- `, n = ({ selected: e, indeterminate: r, children: i, value: p, multi: s, isChild: c, startIcon: l, ...u }) => {
53
- const m = f(null);
54
- return /* @__PURE__ */ t.createElement(
55
- x,
56
- {
57
- as: "li",
58
- hasRadius: !0,
59
- paddingLeft: c ? 7 : 4,
60
- paddingRight: 4,
61
- paddingTop: 2,
62
- paddingBottom: 2,
63
- ref: m,
64
- role: "option",
65
- "aria-selected": e,
66
- background: "neutral0",
67
- "data-strapi-value": p,
68
- ...u
69
- },
70
- /* @__PURE__ */ t.createElement(g, null, l && /* @__PURE__ */ t.createElement(a, { paddingRight: 2, "aria-hidden": !0 }, l), s && /* @__PURE__ */ t.createElement(a, { paddingRight: 2, "aria-hidden": !0 }, /* @__PURE__ */ t.createElement(
71
- y,
72
- {
73
- hasRadius: !0,
74
- overflow: "hidden",
75
- position: "relative",
76
- indeterminate: r,
77
- selected: e,
78
- zIndex: 1
79
- }
80
- )), /* @__PURE__ */ t.createElement(b, { textColor: e ? "primary600" : "neutral800", fontWeight: e ? "bold" : null }, i))
81
- );
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { MultiSelectOption as m } from "./MultiSelect.js";
3
+ import { useSelectContext as n } from "./Select.js";
4
+ import { SingleSelectOption as r } from "./SingleSelect.js";
5
+ /**
6
+ * @preserve
7
+ * @deprecated You should import the specific type of option you want to render,
8
+ * e.g. `import { MultiSelectOption } from '@strapi/design-system';`
9
+ */
10
+ const u = ({ multi: e, ...t }) => {
11
+ const i = n();
12
+ return e || i.multi ? o(m, { ...t }) : o(r, { ...t });
82
13
  };
83
- n.defaultProps = {
84
- isChild: !1,
85
- multi: !1,
86
- selected: !1,
87
- startIcon: void 0,
88
- indeterminate: !1
89
- };
90
- n.propTypes = {
91
- children: o.oneOfType([o.string, o.number]).isRequired,
92
- indeterminate: o.bool,
93
- isChild: o.bool,
94
- multi: o.bool,
95
- selected: o.bool,
96
- startIcon: o.node,
97
- value: o.oneOfType([o.string, o.number]).isRequired
98
- };
99
- n.displayName = "Option";
100
14
  export {
101
- n as Option
15
+ u as Option
102
16
  };
@@ -1,3 +1,6 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react"),k=require("@strapi/icons"),le=require("prop-types"),ne=require("styled-components"),x=require("./components.cjs"),re=require("./constants.cjs"),oe=require("./hooks/useButtonRef.cjs"),ae=require("./SelectButton.cjs"),se=require("./SelectList.cjs"),ie=require("./SelectTags.cjs"),A=require("../Box/Box.cjs"),ce=require("../Field/Field.cjs"),de=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const ue=require("../Field/FieldHint.cjs"),fe=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const b=require("../Flex/Flex.cjs"),z=require("../helpers/escapeSelector.cjs"),pe=require("../hooks/useId.cjs"),ye=require("../Popover/Popover.cjs"),he=require("../themes/sizes.cjs"),G=require("../Typography/Typography.cjs"),W=require("../VisuallyHidden/VisuallyHidden.cjs"),v=o=>o&&typeof o=="object"&&"default"in o?o:{default:o},l=v(u),e=v(le),me=v(ne),Ee=me.default(b.Flex)`
2
- width: 100%;
3
- `,I=({label:o,labelAction:N,id:J,children:K,customizeContent:y,placeholder:F,onChange:j,value:n,hint:q,error:p,disabled:i,clearLabel:C,onClear:O,onReachEnd:Q,multi:a,required:R,selectButtonTitle:U,size:V,startIcon:L,withTags:h,...X})=>{const r=pe.useId(J),[m,E]=u.useState(void 0),$=oe.useButtonRef(m),_=u.useRef(null),D=`${r}-label`,g=`${r}-content`,Y=typeof p=="string";let S;if(p?S=`${r}-error`:q&&(S=`${r}-hint`),h&&!a)throw new Error('The "withTags" props can only be used when the "multi" prop is present');const Z=()=>{E(void 0)},ee=()=>{i||(O(),$.current.focus())},w=t=>{t.preventDefault(),!i&&(t.nativeEvent.which===3||t.nativeEvent.button===2||E(re.DownState.Mouse))},B=(t,s=!0)=>{a?j(n.includes(t)?n.filter(c=>c!==t):[...n,t]):(j(t),s&&E(void 0))},H=t=>{j(n.includes(t[0])?n.filter((s,c,f)=>f.indexOf(s)<0,t):[...n,...t])};let T,M=[];const P=(t,s)=>{const c=`${r}-option-${t.props.value}`,f=a?n.includes(t.props.value):t.props.value===n;return f&&(h?M.push({label:t.props.children,value:t.props.value}):T=t.props.children),u.cloneElement(t,{id:z.escapeSelector(c),onClick:()=>B(t.props.value),selected:f,multi:a,isChild:s})},te=u.Children.toArray(K).map(t=>{if(t.type.displayName==="OptGroup"){const s=`${r}-option-${t.props.label}`,c=t.props.children.every(d=>n.includes(d.props.value)),f=!c&&t.props.children.some(d=>n.includes(d.props.value));return u.cloneElement(t,{id:z.escapeSelector(s),onClick:()=>H(t.props.children.map(d=>d.props.value)),selected:c,indeterminate:f,multi:a,children:u.Children.toArray(t.props.children).map(d=>P(d,!0)),value:t.props.label})}return P(t)});return l.default.createElement(ce.Field,{hint:q,error:p,id:r,required:R},l.default.createElement(b.Flex,{direction:"column",alignItems:"stretch",gap:o||q||Y?1:0},o&&l.default.createElement(de.FieldLabel,{action:N},o),l.default.createElement(x.SelectButtonWrapper,{size:V,hasError:Boolean(p),disabled:i,ref:_},l.default.createElement(ae.SelectButton,{ref:$,labelledBy:`${r} ${D} ${g}`,"aria-describedby":S,"aria-required":R,expanded:Boolean(m),onTrigger:E,id:r,hasError:Boolean(p),disabled:i,onMouseDown:w,value:a?n.join(","):n,...X}),l.default.createElement(Ee,{justifyContent:"space-between"},l.default.createElement(b.Flex,null,L&&l.default.createElement(A.Box,{paddingLeft:3,"aria-hidden":!0},L),h&&l.default.createElement(ie.SelectTags,{tags:M,onRemoveTag:B,disabled:i}),l.default.createElement(A.Box,{paddingLeft:4,paddingRight:4},h?l.default.createElement(l.default.Fragment,null,!n||n.length===0?l.default.createElement(G.Typography,{ellipsis:!0,id:g,textColor:"neutral600"},F):null,l.default.createElement(W.VisuallyHidden,{as:"span",id:g},y?y(n):T||F,n.join(", "))):l.default.createElement(G.Typography,{ellipsis:!0,id:g,textColor:n?"neutral800":"neutral600"},y?y(n):T||F,a&&l.default.createElement(W.VisuallyHidden,{as:"span"},n.join(", "))))),l.default.createElement(b.Flex,null,(a&&n&&n.length||!a&&n)&&O&&l.default.createElement(x.IconBox,{as:"button",type:"button",onClick:ee,"aria-label":C,"aria-disabled":i,title:C},l.default.createElement(k.Cross,null)),l.default.createElement(x.CaretBox,{paddingLeft:3,"aria-hidden":!0,as:"button",type:"button",onMouseDown:w,tabIndex:-1,disabled:i,title:U},l.default.createElement(k.CarretDown,null))))),l.default.createElement(ue.FieldHint,null),l.default.createElement(fe.FieldError,null)),m&&l.default.createElement(ye.Popover,{source:_,spacing:4,fullWidth:!0,intersectionId:`select-list-intersection-${r}`,onReachEnd:Q},l.default.createElement(se.SelectList,{selectId:r,labelledBy:o?D:void 0,onEscape:Z,expanded:m,onSelectItem:(t,s)=>s?H(t):B(t,!1),multi:a},te)))};I.defaultProps={"aria-label":void 0,children:[],clearLabel:"Clear",customizeContent:void 0,disabled:!1,id:void 0,label:void 0,labelAction:void 0,multi:!1,onChange(){},onClear:void 0,onReachEnd:void 0,value:void 0,hint:void 0,error:void 0,placeholder:"Select...",required:!1,selectButtonTitle:"Carret Down Button",size:"M",startIcon:void 0,withTags:!1};I.propTypes={"aria-label":e.default.string,children:e.default.oneOfType([e.default.arrayOf(e.default.node),e.default.node]),clearLabel:e.default.string,customizeContent:e.default.func,disabled:e.default.bool,error:e.default.oneOfType([e.default.string,e.default.bool]),hint:e.default.oneOfType([e.default.string,e.default.bool,e.default.node,e.default.arrayOf(e.default.node)]),id:e.default.oneOfType([e.default.string,e.default.number]),label:e.default.string,labelAction:e.default.element,multi:e.default.bool,onChange:e.default.func,onClear:e.default.func,onReachEnd:e.default.func,placeholder:e.default.string,required:e.default.bool,selectButtonTitle:e.default.string,size:e.default.oneOf(Object.keys(he.sizes.input)),startIcon:e.default.element,value:e.default.oneOfType([e.default.arrayOf(e.default.oneOfType([e.default.string,e.default.number])),e.default.string,e.default.number]),withTags:e.default.bool};exports.Select=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("react/jsx-runtime"),o=require("react"),r=require("./MultiSelect.cjs"),s=require("./SingleSelect.cjs");function a(e){if(e&&e.__esModule)return e;const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const u=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,u.get?u:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const l=a(o),i=l.createContext({multi:!1}),S=()=>l.useContext(i);/**
2
+ * @preserve
3
+ * @deprecated You should import the specific type of select you want to render
4
+ *
5
+ * e.g. `import { MultiSelect } from '@strapi/design-system';`
6
+ */const g=e=>{const t=l.useMemo(()=>({multi:!!(e.multi||e.withTags)}),[e.multi,e.withTags]);return c.jsx(i.Provider,{value:t,children:e.multi||e.withTags?c.jsx(r.MultiSelect,{...e}):c.jsx(s.SingleSelect,{...e})})};exports.Select=g;exports.useSelectContext=S;