@strapi/design-system 1.6.3 → 1.6.5

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 (317) hide show
  1. package/dist/Accordion/Accordion.cjs +5 -5
  2. package/dist/Accordion/Accordion.js +45 -44
  3. package/dist/Accordion/AccordionContent.cjs +1 -1
  4. package/dist/Accordion/AccordionContent.js +4 -4
  5. package/dist/Accordion/AccordionGroup.cjs +4 -4
  6. package/dist/Accordion/AccordionGroup.js +18 -18
  7. package/dist/Accordion/AccordionToggle.cjs +6 -6
  8. package/dist/Accordion/AccordionToggle.js +50 -53
  9. package/dist/Alert/Alert.cjs +1 -1
  10. package/dist/Alert/Alert.js +8 -8
  11. package/dist/Avatar/Avatar.cjs +5 -5
  12. package/dist/Avatar/Avatar.js +11 -11
  13. package/dist/Avatar/AvatarGroup.cjs +2 -2
  14. package/dist/Avatar/AvatarGroup.js +4 -4
  15. package/dist/BaseButton/BaseButton.cjs +5 -11
  16. package/dist/BaseButton/BaseButton.js +31 -38
  17. package/dist/BaseCheckbox/BaseCheckbox.cjs +3 -3
  18. package/dist/BaseCheckbox/BaseCheckbox.js +22 -22
  19. package/dist/BaseRadio/BaseRadio.cjs +2 -2
  20. package/dist/BaseRadio/BaseRadio.js +4 -4
  21. package/dist/BaseRadio/RadioGroup.cjs +1 -1
  22. package/dist/BaseRadio/RadioGroup.js +28 -26
  23. package/dist/Box/Box.cjs +3 -3
  24. package/dist/Box/Box.js +27 -27
  25. package/dist/Breadcrumbs/Breadcrumbs.cjs +4 -4
  26. package/dist/Breadcrumbs/Breadcrumbs.js +12 -12
  27. package/dist/Button/Button.cjs +10 -27
  28. package/dist/Button/Button.js +65 -85
  29. package/dist/Button/utils.cjs +22 -22
  30. package/dist/Button/utils.js +2 -2
  31. package/dist/Card/Card.cjs +1 -1
  32. package/dist/Card/Card.js +15 -14
  33. package/dist/Card/CardAsset.js +4 -4
  34. package/dist/Card/CardBody.cjs +1 -1
  35. package/dist/Card/CardBody.js +4 -4
  36. package/dist/Card/CardCheckbox.cjs +1 -1
  37. package/dist/Card/CardCheckbox.js +6 -6
  38. package/dist/Card/CardTitle.cjs +1 -1
  39. package/dist/Card/CardTitle.js +1 -1
  40. package/dist/CarouselInput/Carousel.cjs +2 -2
  41. package/dist/CarouselInput/Carousel.js +19 -64
  42. package/dist/CarouselInput/CarouselActions.cjs +1 -1
  43. package/dist/CarouselInput/CarouselActions.js +16 -12
  44. package/dist/CarouselInput/CarouselImage.js +1 -10
  45. package/dist/CarouselInput/CarouselInput.cjs +1 -1
  46. package/dist/CarouselInput/CarouselInput.js +23 -28
  47. package/dist/CarouselInput/CarouselSlide.js +13 -9
  48. package/dist/Checkbox/Checkbox.cjs +2 -2
  49. package/dist/Checkbox/Checkbox.js +15 -34
  50. package/dist/Combobox/Combobox.cjs +1 -1
  51. package/dist/Combobox/Combobox.js +144 -159
  52. package/dist/Combobox/ComboboxOption.cjs +1 -1
  53. package/dist/Combobox/ComboboxOption.js +18 -17
  54. package/dist/DatePicker/DatePicker.cjs +1 -1
  55. package/dist/DatePicker/DatePicker.js +47 -46
  56. package/dist/DatePicker/DatePickerCalendar.cjs +1 -1
  57. package/dist/DatePicker/DatePickerCalendar.js +30 -62
  58. package/dist/DatePicker/DatePickerTd.cjs +3 -3
  59. package/dist/DatePicker/DatePickerTd.js +8 -20
  60. package/dist/DatePicker/DatePickerTh.cjs +3 -3
  61. package/dist/DatePicker/DatePickerTh.js +10 -20
  62. package/dist/DatePicker/components.cjs +3 -3
  63. package/dist/DatePicker/components.js +6 -6
  64. package/dist/DateTimePicker/DateTimePicker.cjs +1 -1
  65. package/dist/DateTimePicker/DateTimePicker.js +70 -67
  66. package/dist/DateTimePicker/DateTimePickerProps.js +1 -3
  67. package/dist/Dialog/Dialog.cjs +5 -5
  68. package/dist/Dialog/Dialog.js +26 -37
  69. package/dist/Dialog/DialogBody.cjs +1 -1
  70. package/dist/Dialog/DialogBody.js +2 -11
  71. package/dist/Dialog/DialogFooter.cjs +3 -3
  72. package/dist/Dialog/DialogFooter.js +3 -8
  73. package/dist/DismissibleLayer/DismissibleLayer.js +1 -4
  74. package/dist/Divider/Divider.js +1 -5
  75. package/dist/EmptyStateLayout/EmptyStateLayout.cjs +1 -1
  76. package/dist/EmptyStateLayout/EmptyStateLayout.js +2 -16
  77. package/dist/EmptyStateLayout/story-assets/Illo.js +60 -45
  78. package/dist/Field/Field.cjs +1 -1
  79. package/dist/Field/Field.js +31 -28
  80. package/dist/Field/FieldAction.cjs +2 -8
  81. package/dist/Field/FieldAction.js +26 -19
  82. package/dist/Field/FieldContext.cjs +1 -1
  83. package/dist/Field/FieldContext.js +2 -2
  84. package/dist/Field/FieldError.cjs +1 -1
  85. package/dist/Field/FieldError.js +11 -7
  86. package/dist/Field/FieldHint.cjs +1 -1
  87. package/dist/Field/FieldHint.js +15 -10
  88. package/dist/Field/FieldInput.cjs +14 -16
  89. package/dist/Field/FieldInput.js +105 -81
  90. package/dist/Field/FieldLabel.cjs +3 -3
  91. package/dist/Field/FieldLabel.js +43 -38
  92. package/dist/FocusTrap/FocusTrap.cjs +1 -1
  93. package/dist/FocusTrap/FocusTrap.js +33 -41
  94. package/dist/Grid/Grid.cjs +3 -3
  95. package/dist/Grid/Grid.js +12 -15
  96. package/dist/Grid/GridItem.cjs +2 -2
  97. package/dist/Grid/GridItem.js +5 -13
  98. package/dist/IconButton/IconButton.cjs +7 -12
  99. package/dist/IconButton/IconButton.js +88 -84
  100. package/dist/JSONInput/JSONInput.cjs +1 -1
  101. package/dist/JSONInput/JSONInput.js +88 -79
  102. package/dist/JSONInput/JSONInputContainer.cjs +10 -10
  103. package/dist/JSONInput/JSONInputContainer.js +22 -15
  104. package/dist/Layout/ActionLayout.js +1 -13
  105. package/dist/Layout/ContentLayout.js +1 -4
  106. package/dist/Layout/HeaderLayout.cjs +2 -2
  107. package/dist/Layout/HeaderLayout.js +37 -66
  108. package/dist/Layout/Layout.js +1 -5
  109. package/dist/Layout/TwoColsLayout.js +1 -17
  110. package/dist/Link/Link.cjs +5 -5
  111. package/dist/Link/Link.js +55 -57
  112. package/dist/LinkButton/LinkButton.cjs +7 -24
  113. package/dist/LinkButton/LinkButton.js +60 -87
  114. package/dist/LiveRegions/LiveRegions.cjs +1 -1
  115. package/dist/LiveRegions/LiveRegions.js +1 -1
  116. package/dist/Loader/Loader.cjs +4 -4
  117. package/dist/Loader/Loader.js +26 -24
  118. package/dist/Main/Main.js +1 -6
  119. package/dist/Main/SkipToContent.cjs +2 -2
  120. package/dist/Main/SkipToContent.js +17 -13
  121. package/dist/MainNav/MainNav.cjs +2 -2
  122. package/dist/MainNav/MainNav.js +21 -20
  123. package/dist/MainNav/NavBrand.cjs +2 -2
  124. package/dist/MainNav/NavBrand.js +4 -38
  125. package/dist/MainNav/NavCondense.cjs +2 -2
  126. package/dist/MainNav/NavCondense.js +10 -18
  127. package/dist/MainNav/NavFooter.js +1 -3
  128. package/dist/MainNav/NavLink.cjs +4 -4
  129. package/dist/MainNav/NavLink.js +8 -34
  130. package/dist/MainNav/NavSection.cjs +1 -1
  131. package/dist/MainNav/NavSection.js +31 -44
  132. package/dist/MainNav/NavSections.cjs +2 -2
  133. package/dist/MainNav/NavSections.js +20 -21
  134. package/dist/MainNav/NavUser.cjs +2 -2
  135. package/dist/MainNav/NavUser.js +6 -27
  136. package/dist/ModalLayout/ModalBody.js +1 -4
  137. package/dist/ModalLayout/ModalFooter.cjs +1 -1
  138. package/dist/ModalLayout/ModalFooter.js +2 -10
  139. package/dist/ModalLayout/ModalHeader.cjs +2 -2
  140. package/dist/ModalLayout/ModalHeader.js +8 -20
  141. package/dist/ModalLayout/ModalLayout.cjs +3 -3
  142. package/dist/ModalLayout/ModalLayout.js +23 -31
  143. package/dist/NumberInput/NumberInput.cjs +2 -2
  144. package/dist/NumberInput/NumberInput.js +75 -80
  145. package/dist/Pagination/Pagination.cjs +2 -2
  146. package/dist/Pagination/Pagination.js +11 -16
  147. package/dist/Pagination/components.cjs +3 -3
  148. package/dist/Pagination/components.js +31 -38
  149. package/dist/Popover/Popover.cjs +1 -1
  150. package/dist/Popover/Popover.js +5 -5
  151. package/dist/Portal/Portal.cjs +1 -1
  152. package/dist/Portal/Portal.js +10 -12
  153. package/dist/ProgressBar/ProgressBar.js +17 -14
  154. package/dist/Radio/Radio.cjs +2 -2
  155. package/dist/Radio/Radio.js +4 -11
  156. package/dist/RawTable/RawCell.cjs +1 -1
  157. package/dist/RawTable/RawCell.js +57 -72
  158. package/dist/RawTable/RawTable.cjs +1 -1
  159. package/dist/RawTable/RawTable.js +45 -42
  160. package/dist/RawTable/RawTbody.cjs +1 -1
  161. package/dist/RawTable/RawTbody.js +14 -13
  162. package/dist/RawTable/RawThead.cjs +1 -1
  163. package/dist/RawTable/RawThead.js +13 -10
  164. package/dist/RawTable/RawTr.cjs +1 -1
  165. package/dist/RawTable/RawTr.js +19 -15
  166. package/dist/Searchbar/SearchForm.js +1 -4
  167. package/dist/Searchbar/Searchbar.cjs +3 -3
  168. package/dist/Searchbar/Searchbar.js +25 -28
  169. package/dist/Select/MultiSelectNested.js +2 -14
  170. package/dist/Select/OptGroup.cjs +1 -1
  171. package/dist/Select/OptGroup.js +14 -10
  172. package/dist/Select/Option.cjs +3 -3
  173. package/dist/Select/Option.js +31 -33
  174. package/dist/Select/Select.cjs +2 -2
  175. package/dist/Select/Select.js +98 -119
  176. package/dist/Select/SelectButton.cjs +1 -1
  177. package/dist/Select/SelectButton.js +14 -11
  178. package/dist/Select/SelectList.cjs +1 -1
  179. package/dist/Select/SelectList.js +24 -18
  180. package/dist/Select/SelectTags.cjs +3 -3
  181. package/dist/Select/SelectTags.js +17 -15
  182. package/dist/SimpleMenu/SimpleMenu.cjs +3 -3
  183. package/dist/SimpleMenu/SimpleMenu.js +43 -67
  184. package/dist/Status/Status.js +15 -13
  185. package/dist/SubNav/SubNav.cjs +2 -2
  186. package/dist/SubNav/SubNav.js +5 -9
  187. package/dist/SubNav/SubNavHeader.cjs +2 -2
  188. package/dist/SubNav/SubNavHeader.js +31 -53
  189. package/dist/SubNav/SubNavLink.cjs +3 -3
  190. package/dist/SubNav/SubNavLink.js +18 -22
  191. package/dist/SubNav/SubNavLinkSection.cjs +3 -3
  192. package/dist/SubNav/SubNavLinkSection.js +5 -30
  193. package/dist/SubNav/SubNavSection.cjs +2 -2
  194. package/dist/SubNav/SubNavSection.js +27 -34
  195. package/dist/SubNav/SubNavSectionLabel.cjs +2 -2
  196. package/dist/SubNav/SubNavSectionLabel.js +15 -24
  197. package/dist/SubNav/SubNavSections.cjs +1 -1
  198. package/dist/SubNav/SubNavSections.js +17 -16
  199. package/dist/Switch/Switch.cjs +2 -2
  200. package/dist/Switch/Switch.js +16 -17
  201. package/dist/Table/Cell.cjs +1 -1
  202. package/dist/Table/Cell.js +3 -8
  203. package/dist/Table/TFooter.cjs +2 -2
  204. package/dist/Table/TFooter.js +3 -17
  205. package/dist/Table/Table.cjs +1 -1
  206. package/dist/Table/Table.js +2 -18
  207. package/dist/Table/Tbody.js +1 -3
  208. package/dist/Table/Thead.js +1 -3
  209. package/dist/Table/Tr.js +1 -3
  210. package/dist/Tabs/TabGroup.cjs +1 -1
  211. package/dist/Tabs/TabGroup.js +30 -27
  212. package/dist/Tabs/TabPanels.js +2 -10
  213. package/dist/Tabs/Tabs.cjs +1 -1
  214. package/dist/Tabs/Tabs.js +43 -51
  215. package/dist/Tag/Tag.cjs +8 -8
  216. package/dist/Tag/Tag.js +52 -52
  217. package/dist/TextButton/TextButton.cjs +6 -6
  218. package/dist/TextButton/TextButton.js +15 -15
  219. package/dist/TextInput/TextInput.cjs +1 -1
  220. package/dist/TextInput/TextInput.js +13 -31
  221. package/dist/Textarea/Textarea.cjs +2 -2
  222. package/dist/Textarea/Textarea.js +12 -28
  223. package/dist/Textarea/TextareaInput.cjs +4 -4
  224. package/dist/Textarea/TextareaInput.js +22 -21
  225. package/dist/TimePicker/TimePicker.cjs +2 -2
  226. package/dist/TimePicker/TimePicker.js +26 -25
  227. package/dist/ToggleCheckbox/ToggleCheckbox.cjs +5 -5
  228. package/dist/ToggleCheckbox/ToggleCheckbox.js +86 -60
  229. package/dist/ToggleInput/ToggleInput.cjs +3 -3
  230. package/dist/ToggleInput/ToggleInput.js +28 -47
  231. package/dist/Tooltip/Tooltip.cjs +2 -2
  232. package/dist/Tooltip/Tooltip.js +62 -53
  233. package/dist/Tooltip/hooks/useTooltipHandlers.cjs +1 -1
  234. package/dist/Tooltip/hooks/useTooltipHandlers.js +7 -7
  235. package/dist/Tooltip/hooks/useTooltipLayout.cjs +1 -1
  236. package/dist/Tooltip/hooks/useTooltipLayout.js +8 -5
  237. package/dist/Typography/Typography.cjs +3 -2
  238. package/dist/Typography/Typography.js +17 -14
  239. package/dist/helpers/deprecations.cjs +1 -1
  240. package/dist/helpers/deprecations.js +7 -7
  241. package/dist/helpers/objects.cjs +1 -1
  242. package/dist/helpers/objects.js +1 -1
  243. package/dist/helpers/useElementOnScreen.cjs +1 -1
  244. package/dist/helpers/useElementOnScreen.js +4 -13
  245. package/dist/helpers/useId.cjs +1 -1
  246. package/dist/helpers/useId.js +4 -11
  247. package/dist/helpers/useIntersection.cjs +1 -1
  248. package/dist/helpers/useIntersection.js +4 -21
  249. package/dist/helpers/useLockScroll.cjs +1 -1
  250. package/dist/helpers/useLockScroll.js +4 -7
  251. package/dist/helpers/usePrevious.cjs +1 -1
  252. package/dist/helpers/usePrevious.js +4 -8
  253. package/dist/helpers/useResizeObserver.cjs +1 -1
  254. package/dist/helpers/useResizeObserver.js +4 -14
  255. package/dist/hooks/useElementOnScreen.cjs +1 -0
  256. package/dist/hooks/useElementOnScreen.js +15 -0
  257. package/dist/hooks/useId.cjs +1 -0
  258. package/dist/hooks/useId.js +13 -0
  259. package/dist/hooks/useIntersection.cjs +1 -1
  260. package/dist/hooks/useIntersection.js +3 -3
  261. package/dist/hooks/useLockScroll.cjs +1 -0
  262. package/dist/hooks/useLockScroll.js +9 -0
  263. package/dist/hooks/usePrevious.cjs +1 -0
  264. package/dist/hooks/usePrevious.js +10 -0
  265. package/dist/hooks/useResizeObserver.cjs +1 -0
  266. package/dist/hooks/useResizeObserver.js +16 -0
  267. package/dist/themes/extendTheme.cjs +1 -1
  268. package/dist/themes/extendTheme.js +4 -4
  269. package/dist/v2/Breadcrumbs/Breadcrumbs.cjs +2 -2
  270. package/dist/v2/Breadcrumbs/Breadcrumbs.js +4 -13
  271. package/dist/v2/Breadcrumbs/Crumb.js +11 -12
  272. package/dist/v2/Breadcrumbs/CrumbLink.js +1 -3
  273. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.cjs +2 -2
  274. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.js +5 -11
  275. package/dist/v2/Breadcrumbs/Divider.js +1 -8
  276. package/dist/v2/Link/Link.cjs +2 -2
  277. package/dist/v2/Link/Link.js +5 -24
  278. package/dist/v2/LinkButton/LinkButton.cjs +11 -24
  279. package/dist/v2/LinkButton/LinkButton.js +62 -84
  280. package/dist/v2/MainNav/MainNav.cjs +2 -2
  281. package/dist/v2/MainNav/MainNav.js +21 -20
  282. package/dist/v2/MainNav/NavBrand.cjs +2 -2
  283. package/dist/v2/MainNav/NavBrand.js +4 -38
  284. package/dist/v2/MainNav/NavCondense.cjs +2 -2
  285. package/dist/v2/MainNav/NavCondense.js +10 -18
  286. package/dist/v2/MainNav/NavFooter.js +1 -3
  287. package/dist/v2/MainNav/NavLink.cjs +4 -4
  288. package/dist/v2/MainNav/NavLink.js +10 -39
  289. package/dist/v2/MainNav/NavSection.cjs +1 -1
  290. package/dist/v2/MainNav/NavSection.js +31 -44
  291. package/dist/v2/MainNav/NavSections.cjs +2 -2
  292. package/dist/v2/MainNav/NavSections.js +20 -21
  293. package/dist/v2/MainNav/NavUser.cjs +2 -2
  294. package/dist/v2/MainNav/NavUser.js +6 -27
  295. package/dist/v2/Pagination/Pagination.cjs +2 -2
  296. package/dist/v2/Pagination/Pagination.js +11 -16
  297. package/dist/v2/Pagination/components.cjs +2 -2
  298. package/dist/v2/Pagination/components.js +11 -39
  299. package/dist/v2/SimpleMenu/SimpleMenu.cjs +4 -4
  300. package/dist/v2/SimpleMenu/SimpleMenu.js +42 -65
  301. package/dist/v2/SubNav/SubNav.cjs +2 -2
  302. package/dist/v2/SubNav/SubNav.js +5 -9
  303. package/dist/v2/SubNav/SubNavHeader.cjs +2 -2
  304. package/dist/v2/SubNav/SubNavHeader.js +31 -53
  305. package/dist/v2/SubNav/SubNavLink.cjs +2 -2
  306. package/dist/v2/SubNav/SubNavLink.js +18 -22
  307. package/dist/v2/SubNav/SubNavLinkSection.cjs +3 -3
  308. package/dist/v2/SubNav/SubNavLinkSection.js +5 -30
  309. package/dist/v2/SubNav/SubNavSection.cjs +2 -2
  310. package/dist/v2/SubNav/SubNavSection.js +29 -36
  311. package/dist/v2/SubNav/SubNavSectionLabel.cjs +2 -2
  312. package/dist/v2/SubNav/SubNavSectionLabel.js +15 -24
  313. package/dist/v2/SubNav/SubNavSections.cjs +1 -1
  314. package/dist/v2/SubNav/SubNavSections.js +17 -16
  315. package/package.json +8 -4
  316. package/dist/Select/SingleSelect.cjs +0 -82
  317. package/dist/Select/SingleSelect.js +0 -285
@@ -1,23 +1,24 @@
1
1
  import r, { forwardRef as y, useRef as $ } from "react";
2
+ import { Search as S, Cross as v } from "@strapi/icons";
2
3
  import t from "prop-types";
3
4
  import o from "styled-components";
4
- import { Search as S, Cross as v } from "@strapi/icons";
5
- import { sizes as C } from "../themes/sizes.js";
6
- import { Field as F } from "../Field/Field.js";
7
- import { FieldLabel as w } from "../Field/FieldLabel.js";
8
- import { InputWrapper as a, FieldInput as z } from "../Field/FieldInput.js";
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
9
  import "../Field/FieldContext.js";
10
10
  import "../Typography/Typography.js";
11
- import { FieldAction as q } from "../Field/FieldAction.js";
12
- import { VisuallyHidden as x } from "../VisuallyHidden/VisuallyHidden.js";
13
- import { inputFocusStyle as I } from "../themes/utils.js";
11
+ import { FieldAction as z } from "../Field/FieldAction.js";
14
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";
15
16
  const W = o(s)`
16
17
  font-size: 0.5rem;
17
18
  svg path {
18
19
  fill: ${({ theme: e }) => e.colors.neutral400};
19
20
  }
20
- `, c = o(s)`
21
+ `, m = o(s)`
21
22
  font-size: 0.8rem;
22
23
 
23
24
  svg path {
@@ -28,7 +29,7 @@ const W = o(s)`
28
29
  box-shadow: ${({ theme: e }) => e.shadows.filterShadow};
29
30
 
30
31
  &:focus-within {
31
- ${c} {
32
+ ${m} {
32
33
  svg path {
33
34
  fill: ${({ theme: e }) => e.colors.primary600};
34
35
  }
@@ -39,26 +40,22 @@ const W = o(s)`
39
40
  border: 1px solid transparent;
40
41
  }
41
42
 
42
- ${I(a)}
43
- `, l = y(({ name: e, size: m, children: p, value: i, onClear: u, clearLabel: d, ...f }, h) => {
43
+ ${x(a)}
44
+ `, l = y(({ name: e, size: p, children: c, value: i, onClear: u, clearLabel: d, ...f }, h) => {
44
45
  const n = $(null), b = i.length > 0, E = (g) => {
45
46
  u(g), n.current.focus();
46
47
  }, R = h || n;
47
- return /* @__PURE__ */ r.createElement(A, null, /* @__PURE__ */ r.createElement(F, {
48
- name: e
49
- }, /* @__PURE__ */ r.createElement(x, null, /* @__PURE__ */ r.createElement(w, null, p)), /* @__PURE__ */ r.createElement(z, {
50
- ref: R,
51
- value: i,
52
- startAction: /* @__PURE__ */ r.createElement(c, null, /* @__PURE__ */ r.createElement(S, {
53
- "aria-hidden": !0
54
- })),
55
- size: m,
56
- endAction: b ? /* @__PURE__ */ r.createElement(q, {
57
- label: d,
58
- onClick: E
59
- }, /* @__PURE__ */ r.createElement(W, null, /* @__PURE__ */ r.createElement(v, null))) : void 0,
60
- ...f
61
- })));
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
+ )));
62
59
  });
63
60
  l.displayName = "Searchbar";
64
61
  l.defaultProps = {
@@ -70,7 +67,7 @@ l.propTypes = {
70
67
  clearLabel: t.string.isRequired,
71
68
  name: t.string.isRequired,
72
69
  onClear: t.func.isRequired,
73
- size: t.oneOf(Object.keys(C.input)),
70
+ size: t.oneOf(Object.keys(q.input)),
74
71
  value: t.string
75
72
  };
76
73
  export {
@@ -3,20 +3,8 @@ import p from "prop-types";
3
3
  import { OptGroup as f } from "./OptGroup.js";
4
4
  import { Option as a } from "./Option.js";
5
5
  import { Select as n } from "./Select.js";
6
- const c = ({ options: u, ...i }) => /* @__PURE__ */ e.createElement(n, {
7
- multi: !0,
8
- ...i
9
- }, u.map(
10
- ({ label: t, value: o, children: m }) => m ? /* @__PURE__ */ e.createElement(f, {
11
- key: t,
12
- label: t
13
- }, m?.map((r) => /* @__PURE__ */ e.createElement(a, {
14
- key: r.value,
15
- value: r.value
16
- }, r.label))) : /* @__PURE__ */ e.createElement(a, {
17
- key: o,
18
- value: o
19
- }, t)
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)
20
8
  ));
21
9
  c.propTypes = {
22
10
  options: p.arrayOf(p.object).isRequired
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("prop-types"),i=require("react"),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 r.default.createElement(r.default.Fragment,null,r.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:t.default.arrayOf(t.default.node).isRequired,label:t.default.string.isRequired};a.displayName="OptGroup";exports.OptGroup=a;
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,18 +1,22 @@
1
- import r from "prop-types";
2
- import t from "react";
1
+ import r from "react";
2
+ import t from "prop-types";
3
3
  import { Option as m } from "./Option.js";
4
4
  const o = ({ children: e, label: p, ...a }) => {
5
5
  const i = e.map((l) => l.props.value);
6
- return /* @__PURE__ */ t.createElement(t.Fragment, null, /* @__PURE__ */ t.createElement(m, {
7
- "data-opt-group": !0,
8
- "data-opt-group-children": i,
9
- "aria-label": `${p}, ${e.length} items`,
10
- ...a
11
- }, p), e);
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);
12
16
  };
13
17
  o.propTypes = {
14
- children: r.arrayOf(r.node).isRequired,
15
- label: r.string.isRequired
18
+ children: t.arrayOf(t.node).isRequired,
19
+ label: t.string.isRequired
16
20
  };
17
21
  o.displayName = "OptGroup";
18
22
  export {
@@ -1,4 +1,4 @@
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"),l=require("../Box/Box.cjs"),x=require("../Typography/Typography.cjs"),b=require("../Flex/Flex.cjs"),k=require("../BaseCheckbox/assets/checkmark.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)`
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
2
  border: 1px solid
3
3
  ${({theme:e,selected:o,indeterminate:a})=>o||a?e.colors.primary600:e.colors.neutral300};
4
4
  height: 18px;
@@ -23,7 +23,7 @@
23
23
  ${({selected:e})=>e&&`
24
24
  &::after {
25
25
  content: '';
26
- background: url(${k}) no-repeat no-repeat center center;
26
+ background: url(${x}) no-repeat no-repeat center center;
27
27
  width: 100%;
28
28
  height: 100%;
29
29
  position: absolute;
@@ -42,4 +42,4 @@
42
42
  &:hover {
43
43
  background: ${({theme:e})=>e.colors.primary100};
44
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(x.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;
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,10 +1,10 @@
1
1
  import t, { useRef as f } from "react";
2
2
  import o from "prop-types";
3
3
  import d from "styled-components";
4
+ import h from "../BaseCheckbox/assets/checkmark.js";
4
5
  import { Box as a } from "../Box/Box.js";
5
- import { Typography as h } from "../Typography/Typography.js";
6
6
  import { Flex as g } from "../Flex/Flex.js";
7
- import b from "../BaseCheckbox/assets/checkmark.js";
7
+ import { Typography as b } from "../Typography/Typography.js";
8
8
  const y = d(a)`
9
9
  border: 1px solid
10
10
  ${({ theme: e, selected: r, indeterminate: i }) => r || i ? e.colors.primary600 : e.colors.neutral300};
@@ -30,7 +30,7 @@ const y = d(a)`
30
30
  ${({ selected: e }) => e && `
31
31
  &::after {
32
32
  content: '';
33
- background: url(${b}) no-repeat no-repeat center center;
33
+ background: url(${h}) no-repeat no-repeat center center;
34
34
  width: 100%;
35
35
  height: 100%;
36
36
  position: absolute;
@@ -51,36 +51,34 @@ const y = d(a)`
51
51
  }
52
52
  `, n = ({ selected: e, indeterminate: r, children: i, value: p, multi: s, isChild: c, startIcon: l, ...u }) => {
53
53
  const m = f(null);
54
- return /* @__PURE__ */ t.createElement(x, {
55
- as: "li",
56
- hasRadius: !0,
57
- paddingLeft: c ? 7 : 4,
58
- paddingRight: 4,
59
- paddingTop: 2,
60
- paddingBottom: 2,
61
- ref: m,
62
- role: "option",
63
- "aria-selected": e,
64
- background: "neutral0",
65
- "data-strapi-value": p,
66
- ...u
67
- }, /* @__PURE__ */ t.createElement(g, null, l && /* @__PURE__ */ t.createElement(a, {
68
- paddingRight: 2,
69
- "aria-hidden": !0
70
- }, l), s && /* @__PURE__ */ t.createElement(a, {
71
- paddingRight: 2,
72
- "aria-hidden": !0
73
- }, /* @__PURE__ */ t.createElement(y, {
74
- hasRadius: !0,
75
- overflow: "hidden",
76
- position: "relative",
77
- indeterminate: r,
78
- selected: e,
79
- zIndex: 1
80
- })), /* @__PURE__ */ t.createElement(h, {
81
- textColor: e ? "primary600" : "neutral800",
82
- fontWeight: e ? "bold" : null
83
- }, i)));
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
+ );
84
82
  };
85
83
  n.defaultProps = {
86
84
  isChild: !1,
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react"),le=require("prop-types"),ne=require("styled-components"),M=require("@strapi/icons"),re=require("../themes/sizes.cjs"),oe=require("./SelectButton.cjs"),ae=require("../Field/Field.cjs"),se=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const ie=require("../Field/FieldHint.cjs"),ce=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const de=require("../Popover/Popover.cjs"),ue=require("../Stack/Stack.cjs"),P=require("../Typography/Typography.cjs"),x=require("../Flex/Flex.cjs"),A=require("../Box/Box.cjs"),fe=require("../helpers/useId.cjs"),pe=require("./SelectList.cjs"),T=require("./components.cjs"),ye=require("./hooks/useButtonRef.cjs"),z=require("../VisuallyHidden/VisuallyHidden.cjs"),he=require("./constants.cjs"),G=require("../helpers/escapeSelector.cjs"),me=require("./SelectTags.cjs"),v=o=>o&&typeof o=="object"&&"default"in o?o:{default:o},l=v(u),e=v(le),Ee=v(ne),be=Ee.default(x.Flex)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react"),P=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"),k=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"),A=require("../helpers/escapeSelector.cjs"),pe=require("../hooks/useId.cjs"),ye=require("../Popover/Popover.cjs"),he=require("../themes/sizes.cjs"),z=require("../Typography/Typography.cjs"),G=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
2
  width: 100%;
3
- `,I=({label:o,labelAction:W,id:N,children:J,customizeContent:y,placeholder:g,onChange:F,value:n,hint:S,error:p,disabled:i,clearLabel:C,onClear:O,onReachEnd:K,multi:a,required:Q,selectButtonTitle:U,size:V,startIcon:R,withTags:h,...X})=>{const r=fe.useId(N),[m,E]=u.useState(void 0),L=ye.useButtonRef(m),$=u.useRef(null),_=`${r}-label`,b=`${r}-content`,Y=typeof p=="string";let j;if(p?j=`${r}-error`:S&&(j=`${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(),L.current.focus())},k=t=>{t.preventDefault(),!i&&(t.nativeEvent.which===3||t.nativeEvent.button===2||E(he.DownState.Mouse))},q=(t,s=!0)=>{a?F(n.includes(t)?n.filter(c=>c!==t):[...n,t]):(F(t),s&&E(void 0))},D=t=>{F(n.includes(t[0])?n.filter((s,c,f)=>f.indexOf(s)<0,t):[...n,...t])};let B,w=[];const H=(t,s)=>{const c=`${r}-option-${t.props.value}`,f=a?n.includes(t.props.value):t.props.value===n;return f&&(h?w.push({label:t.props.children,value:t.props.value}):B=t.props.children),u.cloneElement(t,{id:G.escapeSelector(c),onClick:()=>q(t.props.value),selected:f,multi:a,isChild:s})},te=u.Children.toArray(J).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:G.escapeSelector(s),onClick:()=>D(t.props.children.map(d=>d.props.value)),selected:c,indeterminate:f,multi:a,children:u.Children.toArray(t.props.children).map(d=>H(d,!0)),value:t.props.label})}return H(t)});return l.default.createElement(ae.Field,{hint:S,error:p,id:r,required:Q},l.default.createElement(ue.Stack,{spacing:o||S||Y?1:0},o&&l.default.createElement(se.FieldLabel,{action:W},o),l.default.createElement(T.SelectButtonWrapper,{size:V,hasError:Boolean(p),disabled:i,ref:$},l.default.createElement(oe.SelectButton,{ref:L,labelledBy:`${r} ${_} ${b}`,"aria-describedby":j,expanded:Boolean(m),onTrigger:E,id:r,hasError:Boolean(p),disabled:i,onMouseDown:k,...X}),l.default.createElement(be,{justifyContent:"space-between"},l.default.createElement(x.Flex,null,R&&l.default.createElement(A.Box,{paddingLeft:3,"aria-hidden":!0},R),h&&l.default.createElement(me.SelectTags,{tags:w,onRemoveTag:q,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(P.Typography,{ellipsis:!0,id:b,textColor:"neutral600"},g):null,l.default.createElement(z.VisuallyHidden,{as:"span",id:b},y?y(n):B||g,n.join(", "))):l.default.createElement(P.Typography,{ellipsis:!0,id:b,textColor:n?"neutral800":"neutral600"},y?y(n):B||g,a&&l.default.createElement(z.VisuallyHidden,{as:"span"},n.join(", "))))),l.default.createElement(x.Flex,null,(a&&n&&n.length||!a&&n)&&O&&l.default.createElement(T.IconBox,{as:"button",type:"button",onClick:ee,"aria-label":C,"aria-disabled":i,title:C},l.default.createElement(M.Cross,null)),l.default.createElement(T.CaretBox,{paddingLeft:3,"aria-hidden":!0,as:"button",type:"button",onMouseDown:k,tabIndex:-1,disabled:i,title:U},l.default.createElement(M.CarretDown,null))))),l.default.createElement(ie.FieldHint,null),l.default.createElement(ce.FieldError,null)),m&&l.default.createElement(de.Popover,{source:$,spacing:4,fullWidth:!0,intersectionId:`select-list-intersection-${r}`,onReachEnd:K},l.default.createElement(pe.SelectList,{selectId:r,labelledBy:o?_:void 0,onEscape:Z,expanded:m,onSelectItem:(t,s)=>s?D(t):q(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(re.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;
3
+ `,I=({label:o,labelAction:W,id:N,children:J,customizeContent:y,placeholder:F,onChange:j,value:n,hint:q,error:p,disabled:i,clearLabel:C,onClear:O,onReachEnd:K,multi:a,required:Q,selectButtonTitle:U,size:V,startIcon:R,withTags:h,...X})=>{const r=pe.useId(N),[m,E]=u.useState(void 0),L=oe.useButtonRef(m),$=u.useRef(null),_=`${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(),L.current.focus())},D=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))},w=t=>{j(n.includes(t[0])?n.filter((s,c,f)=>f.indexOf(s)<0,t):[...n,...t])};let T,H=[];const M=(t,s)=>{const c=`${r}-option-${t.props.value}`,f=a?n.includes(t.props.value):t.props.value===n;return f&&(h?H.push({label:t.props.children,value:t.props.value}):T=t.props.children),u.cloneElement(t,{id:A.escapeSelector(c),onClick:()=>B(t.props.value),selected:f,multi:a,isChild:s})},te=u.Children.toArray(J).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:A.escapeSelector(s),onClick:()=>w(t.props.children.map(d=>d.props.value)),selected:c,indeterminate:f,multi:a,children:u.Children.toArray(t.props.children).map(d=>M(d,!0)),value:t.props.label})}return M(t)});return l.default.createElement(ce.Field,{hint:q,error:p,id:r,required:Q},l.default.createElement(b.Flex,{direction:"column",alignItems:"stretch",gap:o||q||Y?1:0},o&&l.default.createElement(de.FieldLabel,{action:W},o),l.default.createElement(x.SelectButtonWrapper,{size:V,hasError:Boolean(p),disabled:i,ref:$},l.default.createElement(ae.SelectButton,{ref:L,labelledBy:`${r} ${_} ${g}`,"aria-describedby":S,expanded:Boolean(m),onTrigger:E,id:r,hasError:Boolean(p),disabled:i,onMouseDown:D,...X}),l.default.createElement(Ee,{justifyContent:"space-between"},l.default.createElement(b.Flex,null,R&&l.default.createElement(k.Box,{paddingLeft:3,"aria-hidden":!0},R),h&&l.default.createElement(ie.SelectTags,{tags:H,onRemoveTag:B,disabled:i}),l.default.createElement(k.Box,{paddingLeft:4,paddingRight:4},h?l.default.createElement(l.default.Fragment,null,!n||n.length===0?l.default.createElement(z.Typography,{ellipsis:!0,id:g,textColor:"neutral600"},F):null,l.default.createElement(G.VisuallyHidden,{as:"span",id:g},y?y(n):T||F,n.join(", "))):l.default.createElement(z.Typography,{ellipsis:!0,id:g,textColor:n?"neutral800":"neutral600"},y?y(n):T||F,a&&l.default.createElement(G.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(P.Cross,null)),l.default.createElement(x.CaretBox,{paddingLeft:3,"aria-hidden":!0,as:"button",type:"button",onMouseDown:D,tabIndex:-1,disabled:i,title:U},l.default.createElement(P.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:K},l.default.createElement(se.SelectList,{selectId:r,labelledBy:o?_:void 0,onEscape:Z,expanded:m,onSelectItem:(t,s)=>s?w(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,30 +1,29 @@
1
- import r, { useState as ee, useRef as te, Children as k, cloneElement as j } from "react";
1
+ import r, { useState as ee, useRef as te, Children as j, cloneElement as k } from "react";
2
+ import { Cross as re, CarretDown as oe } from "@strapi/icons";
2
3
  import e from "prop-types";
3
- import re from "styled-components";
4
- import { Cross as oe, CarretDown as ne } from "@strapi/icons";
5
- import { sizes as ie } from "../themes/sizes.js";
6
- import { SelectButton as le } from "./SelectButton.js";
7
- import { Field as se } from "../Field/Field.js";
8
- import { FieldLabel as ae } from "../Field/FieldLabel.js";
4
+ import ne from "styled-components";
5
+ import { SelectButtonWrapper as ie, IconBox as le, CaretBox as se } from "./components.js";
6
+ import { DownState as ae } from "./constants.js";
7
+ import { useButtonRef as pe } from "./hooks/useButtonRef.js";
8
+ import { SelectButton as ce } from "./SelectButton.js";
9
+ import { SelectList as me } from "./SelectList.js";
10
+ import { SelectTags as de } from "./SelectTags.js";
11
+ import { Box as A } from "../Box/Box.js";
12
+ import { Field as fe } from "../Field/Field.js";
13
+ import { FieldLabel as ue } from "../Field/FieldLabel.js";
9
14
  import "../Field/FieldInput.js";
10
- import { FieldHint as pe } from "../Field/FieldHint.js";
11
- import { FieldError as ce } from "../Field/FieldError.js";
15
+ import { FieldHint as he } from "../Field/FieldHint.js";
16
+ import { FieldError as Ee } from "../Field/FieldError.js";
12
17
  import "../Field/FieldContext.js";
13
18
  import "../Field/FieldAction.js";
14
- import { Popover as me } from "../Popover/Popover.js";
15
- import { Stack as de } from "../Stack/Stack.js";
16
- import { Typography as A } from "../Typography/Typography.js";
17
- import { Flex as C } from "../Flex/Flex.js";
18
- import { Box as P } from "../Box/Box.js";
19
- import { useId as fe } from "../helpers/useId.js";
20
- import { SelectList as ue } from "./SelectList.js";
21
- import { SelectButtonWrapper as he, IconBox as Ee, CaretBox as be } from "./components.js";
22
- import { useButtonRef as ye } from "./hooks/useButtonRef.js";
23
- import { VisuallyHidden as _ } from "../VisuallyHidden/VisuallyHidden.js";
24
- import { DownState as ge } from "./constants.js";
25
- import { escapeSelector as q } from "../helpers/escapeSelector.js";
26
- import { SelectTags as ve } from "./SelectTags.js";
27
- const Be = re(C)`
19
+ import { Flex as g } from "../Flex/Flex.js";
20
+ import { escapeSelector as P } from "../helpers/escapeSelector.js";
21
+ import { useId as be } from "../hooks/useId.js";
22
+ import { Popover as ge } from "../Popover/Popover.js";
23
+ import { sizes as ye } from "../themes/sizes.js";
24
+ import { Typography as _ } from "../Typography/Typography.js";
25
+ import { VisuallyHidden as q } from "../VisuallyHidden/VisuallyHidden.js";
26
+ const ve = ne(g)`
28
27
  width: 100%;
29
28
  `, z = ({
30
29
  label: d,
@@ -33,12 +32,12 @@ const Be = re(C)`
33
32
  children: W,
34
33
  customizeContent: f,
35
34
  placeholder: y,
36
- onChange: g,
35
+ onChange: v,
37
36
  value: o,
38
- hint: v,
37
+ hint: B,
39
38
  error: m,
40
39
  disabled: s,
41
- clearLabel: I,
40
+ clearLabel: C,
42
41
  onClear: S,
43
42
  onReachEnd: N,
44
43
  multi: i,
@@ -49,128 +48,108 @@ const Be = re(C)`
49
48
  withTags: u,
50
49
  ...U
51
50
  }) => {
52
- const n = fe(H), [h, E] = ee(void 0), $ = ye(h), R = te(null), w = `${n}-label`, b = `${n}-content`, X = typeof m == "string";
53
- let B;
54
- if (m ? B = `${n}-error` : v && (B = `${n}-hint`), u && !i)
51
+ const n = be(H), [h, E] = ee(void 0), $ = pe(h), R = te(null), w = `${n}-label`, b = `${n}-content`, X = typeof m == "string";
52
+ let I;
53
+ if (m ? I = `${n}-error` : B && (I = `${n}-hint`), u && !i)
55
54
  throw new Error('The "withTags" props can only be used when the "multi" prop is present');
56
55
  const Y = () => {
57
56
  E(void 0);
58
57
  }, Z = () => {
59
58
  s || (S(), $.current.focus());
60
59
  }, D = (t) => {
61
- t.preventDefault(), !s && (t.nativeEvent.which === 3 || t.nativeEvent.button === 2 || E(ge.Mouse));
60
+ t.preventDefault(), !s && (t.nativeEvent.which === 3 || t.nativeEvent.button === 2 || E(ae.Mouse));
62
61
  }, O = (t, l = !0) => {
63
- i ? g(o.includes(t) ? o.filter((a) => a !== t) : [...o, t]) : (g(t), l && E(void 0));
62
+ i ? v(o.includes(t) ? o.filter((a) => a !== t) : [...o, t]) : (v(t), l && E(void 0));
64
63
  }, L = (t) => {
65
- g(
64
+ v(
66
65
  o.includes(t[0]) ? o.filter((l, a, c) => c.indexOf(l) < 0, t) : [...o, ...t]
67
66
  );
68
67
  };
69
68
  let T, F = [];
70
69
  const M = (t, l) => {
71
70
  const a = `${n}-option-${t.props.value}`, c = i ? o.includes(t.props.value) : t.props.value === o;
72
- return c && (u ? F.push({ label: t.props.children, value: t.props.value }) : T = t.props.children), j(t, {
73
- id: q(a),
71
+ return c && (u ? F.push({ label: t.props.children, value: t.props.value }) : T = t.props.children), k(t, {
72
+ id: P(a),
74
73
  onClick: () => O(t.props.value),
75
74
  selected: c,
76
75
  multi: i,
77
76
  isChild: l
78
77
  });
79
- }, V = k.toArray(W).map((t) => {
78
+ }, V = j.toArray(W).map((t) => {
80
79
  if (t.type.displayName === "OptGroup") {
81
80
  const l = `${n}-option-${t.props.label}`, a = t.props.children.every((p) => o.includes(p.props.value)), c = !a && t.props.children.some((p) => o.includes(p.props.value));
82
- return j(t, {
83
- id: q(l),
81
+ return k(t, {
82
+ id: P(l),
84
83
  onClick: () => L(t.props.children.map((p) => p.props.value)),
85
84
  selected: a,
86
85
  indeterminate: c,
87
86
  multi: i,
88
- children: k.toArray(t.props.children).map((p) => M(p, !0)),
87
+ children: j.toArray(t.props.children).map((p) => M(p, !0)),
89
88
  value: t.props.label
90
89
  });
91
90
  }
92
91
  return M(t);
93
92
  });
94
- return /* @__PURE__ */ r.createElement(se, {
95
- hint: v,
96
- error: m,
97
- id: n,
98
- required: J
99
- }, /* @__PURE__ */ r.createElement(de, {
100
- spacing: d || v || X ? 1 : 0
101
- }, d && /* @__PURE__ */ r.createElement(ae, {
102
- action: G
103
- }, d), /* @__PURE__ */ r.createElement(he, {
104
- size: Q,
105
- hasError: Boolean(m),
106
- disabled: s,
107
- ref: R
108
- }, /* @__PURE__ */ r.createElement(le, {
109
- ref: $,
110
- labelledBy: `${n} ${w} ${b}`,
111
- "aria-describedby": B,
112
- expanded: Boolean(h),
113
- onTrigger: E,
114
- id: n,
115
- hasError: Boolean(m),
116
- disabled: s,
117
- onMouseDown: D,
118
- ...U
119
- }), /* @__PURE__ */ r.createElement(Be, {
120
- justifyContent: "space-between"
121
- }, /* @__PURE__ */ r.createElement(C, null, x && /* @__PURE__ */ r.createElement(P, {
122
- paddingLeft: 3,
123
- "aria-hidden": !0
124
- }, x), u && /* @__PURE__ */ r.createElement(ve, {
125
- tags: F,
126
- onRemoveTag: O,
127
- disabled: s
128
- }), /* @__PURE__ */ r.createElement(P, {
129
- paddingLeft: 4,
130
- paddingRight: 4
131
- }, u ? /* @__PURE__ */ r.createElement(r.Fragment, null, !o || o.length === 0 ? /* @__PURE__ */ r.createElement(A, {
132
- ellipsis: !0,
133
- id: b,
134
- textColor: "neutral600"
135
- }, y) : null, /* @__PURE__ */ r.createElement(_, {
136
- as: "span",
137
- id: b
138
- }, f ? f(o) : T || y, o.join(", "))) : /* @__PURE__ */ r.createElement(A, {
139
- ellipsis: !0,
140
- id: b,
141
- textColor: o ? "neutral800" : "neutral600"
142
- }, f ? f(o) : T || y, i && /* @__PURE__ */ r.createElement(_, {
143
- as: "span"
144
- }, o.join(", "))))), /* @__PURE__ */ r.createElement(C, null, (i && o && o.length || !i && o) && S && /* @__PURE__ */ r.createElement(Ee, {
145
- as: "button",
146
- type: "button",
147
- onClick: Z,
148
- "aria-label": I,
149
- "aria-disabled": s,
150
- title: I
151
- }, /* @__PURE__ */ r.createElement(oe, null)), /* @__PURE__ */ r.createElement(be, {
152
- paddingLeft: 3,
153
- "aria-hidden": !0,
154
- as: "button",
155
- type: "button",
156
- onMouseDown: D,
157
- tabIndex: -1,
158
- disabled: s,
159
- title: K
160
- }, /* @__PURE__ */ r.createElement(ne, null))))), /* @__PURE__ */ r.createElement(pe, null), /* @__PURE__ */ r.createElement(ce, null)), h && /* @__PURE__ */ r.createElement(me, {
161
- source: R,
162
- spacing: 4,
163
- fullWidth: !0,
164
- intersectionId: `select-list-intersection-${n}`,
165
- onReachEnd: N
166
- }, /* @__PURE__ */ r.createElement(ue, {
167
- selectId: n,
168
- labelledBy: d ? w : void 0,
169
- onEscape: Y,
170
- expanded: h,
171
- onSelectItem: (t, l) => l ? L(t) : O(t, !1),
172
- multi: i
173
- }, V)));
93
+ return /* @__PURE__ */ r.createElement(fe, { hint: B, error: m, id: n, required: J }, /* @__PURE__ */ r.createElement(g, { direction: "column", alignItems: "stretch", gap: d || B || X ? 1 : 0 }, d && /* @__PURE__ */ r.createElement(ue, { action: G }, d), /* @__PURE__ */ r.createElement(ie, { size: Q, hasError: Boolean(m), disabled: s, ref: R }, /* @__PURE__ */ r.createElement(
94
+ ce,
95
+ {
96
+ ref: $,
97
+ labelledBy: `${n} ${w} ${b}`,
98
+ "aria-describedby": I,
99
+ expanded: Boolean(h),
100
+ onTrigger: E,
101
+ id: n,
102
+ hasError: Boolean(m),
103
+ disabled: s,
104
+ onMouseDown: D,
105
+ ...U
106
+ }
107
+ ), /* @__PURE__ */ r.createElement(ve, { justifyContent: "space-between" }, /* @__PURE__ */ r.createElement(g, null, x && /* @__PURE__ */ r.createElement(A, { paddingLeft: 3, "aria-hidden": !0 }, x), u && /* @__PURE__ */ r.createElement(de, { tags: F, onRemoveTag: O, disabled: s }), /* @__PURE__ */ r.createElement(A, { paddingLeft: 4, paddingRight: 4 }, u ? /* @__PURE__ */ r.createElement(r.Fragment, null, !o || o.length === 0 ? /* @__PURE__ */ r.createElement(_, { ellipsis: !0, id: b, textColor: "neutral600" }, y) : null, /* @__PURE__ */ r.createElement(q, { as: "span", id: b }, f ? f(o) : T || y, o.join(", "))) : /* @__PURE__ */ r.createElement(_, { ellipsis: !0, id: b, textColor: o ? "neutral800" : "neutral600" }, f ? f(o) : T || y, i && /* @__PURE__ */ r.createElement(q, { as: "span" }, o.join(", "))))), /* @__PURE__ */ r.createElement(g, null, (i && o && o.length || !i && o) && S && /* @__PURE__ */ r.createElement(
108
+ le,
109
+ {
110
+ as: "button",
111
+ type: "button",
112
+ onClick: Z,
113
+ "aria-label": C,
114
+ "aria-disabled": s,
115
+ title: C
116
+ },
117
+ /* @__PURE__ */ r.createElement(re, null)
118
+ ), /* @__PURE__ */ r.createElement(
119
+ se,
120
+ {
121
+ paddingLeft: 3,
122
+ "aria-hidden": !0,
123
+ as: "button",
124
+ type: "button",
125
+ onMouseDown: D,
126
+ tabIndex: -1,
127
+ disabled: s,
128
+ title: K
129
+ },
130
+ /* @__PURE__ */ r.createElement(oe, null)
131
+ )))), /* @__PURE__ */ r.createElement(he, null), /* @__PURE__ */ r.createElement(Ee, null)), h && /* @__PURE__ */ r.createElement(
132
+ ge,
133
+ {
134
+ source: R,
135
+ spacing: 4,
136
+ fullWidth: !0,
137
+ intersectionId: `select-list-intersection-${n}`,
138
+ onReachEnd: N
139
+ },
140
+ /* @__PURE__ */ r.createElement(
141
+ me,
142
+ {
143
+ selectId: n,
144
+ labelledBy: d ? w : void 0,
145
+ onEscape: Y,
146
+ expanded: h,
147
+ onSelectItem: (t, l) => l ? L(t) : O(t, !1),
148
+ multi: i
149
+ },
150
+ V
151
+ )
152
+ ));
174
153
  };
175
154
  z.defaultProps = {
176
155
  "aria-label": void 0,
@@ -214,7 +193,7 @@ z.propTypes = {
214
193
  placeholder: e.string,
215
194
  required: e.bool,
216
195
  selectButtonTitle: e.string,
217
- size: e.oneOf(Object.keys(ie.input)),
196
+ size: e.oneOf(Object.keys(ye.input)),
218
197
  startIcon: e.element,
219
198
  value: e.oneOfType([
220
199
  e.arrayOf(e.oneOfType([e.string, e.number])),
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react"),b=require("prop-types"),f=require("styled-components"),t=require("../helpers/keyboardKeys.cjs"),l=require("./constants.cjs"),r=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},K=r(u),a=r(b),h=r(f),S=h.default.button`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const u=require("react"),b=require("prop-types"),f=require("styled-components"),l=require("./constants.cjs"),t=require("../helpers/keyboardKeys.cjs"),r=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},K=r(u),a=r(b),h=r(f),S=h.default.button`
2
2
  position: absolute;
3
3
  left: 0;
4
4
  right: 0;
@@ -1,8 +1,8 @@
1
1
  import u, { forwardRef as b } from "react";
2
2
  import e from "prop-types";
3
3
  import c from "styled-components";
4
- import { KeyboardKeys as t } from "../helpers/keyboardKeys.js";
5
4
  import { UpState as f, DownState as y } from "./constants.js";
5
+ import { KeyboardKeys as t } from "../helpers/keyboardKeys.js";
6
6
  const m = c.button`
7
7
  position: absolute;
8
8
  left: 0;
@@ -37,16 +37,19 @@ const m = c.button`
37
37
  }
38
38
  }
39
39
  };
40
- return /* @__PURE__ */ u.createElement(m, {
41
- ref: i,
42
- "aria-labelledby": s,
43
- "aria-haspopup": "listbox",
44
- "aria-expanded": d,
45
- onKeyDown: p,
46
- "aria-disabled": n,
47
- type: "button",
48
- ...l
49
- });
40
+ return /* @__PURE__ */ u.createElement(
41
+ m,
42
+ {
43
+ ref: i,
44
+ "aria-labelledby": s,
45
+ "aria-haspopup": "listbox",
46
+ "aria-expanded": d,
47
+ onKeyDown: p,
48
+ "aria-disabled": n,
49
+ type: "button",
50
+ ...l
51
+ }
52
+ );
50
53
  });
51
54
  a.displayName = "SelectButton";
52
55
  a.defaultProps = {