@strapi/design-system 1.5.0 → 1.6.0

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 (181) hide show
  1. package/dist/Accordion/Accordion.cjs +8 -8
  2. package/dist/Accordion/Accordion.js +73 -67
  3. package/dist/Accordion/AccordionContent.cjs +1 -1
  4. package/dist/Accordion/AccordionContent.js +20 -17
  5. package/dist/Accordion/AccordionContext.cjs +1 -1
  6. package/dist/Accordion/AccordionContext.js +10 -4
  7. package/dist/Accordion/AccordionGroup.cjs +20 -20
  8. package/dist/Accordion/AccordionGroup.js +98 -59
  9. package/dist/Accordion/AccordionToggle.cjs +3 -3
  10. package/dist/Accordion/AccordionToggle.js +108 -89
  11. package/dist/Accordion/utils.cjs +1 -1
  12. package/dist/Accordion/utils.js +4 -4
  13. package/dist/Alert/Alert.cjs +7 -7
  14. package/dist/Alert/Alert.js +92 -85
  15. package/dist/Avatar/Avatar.cjs +6 -6
  16. package/dist/Avatar/Avatar.js +68 -67
  17. package/dist/Avatar/constants.cjs +1 -1
  18. package/dist/Avatar/constants.js +1 -1
  19. package/dist/Badge/Badge.cjs +4 -4
  20. package/dist/Badge/Badge.js +37 -37
  21. package/dist/BaseButton/BaseButton.cjs +3 -3
  22. package/dist/BaseButton/BaseButton.js +39 -27
  23. package/dist/BaseCheckbox/BaseCheckbox.cjs +6 -6
  24. package/dist/BaseCheckbox/BaseCheckbox.js +77 -59
  25. package/dist/BaseLink/BaseLink.cjs +2 -2
  26. package/dist/BaseLink/BaseLink.js +20 -27
  27. package/dist/BaseRadio/BaseRadio.cjs +7 -7
  28. package/dist/BaseRadio/BaseRadio.js +55 -35
  29. package/dist/BaseRadio/RadioGroup.cjs +1 -1
  30. package/dist/BaseRadio/RadioGroup.js +31 -28
  31. package/dist/BaseRadio/context.cjs +1 -1
  32. package/dist/BaseRadio/context.js +8 -4
  33. package/dist/BaseRadio/utils.cjs +1 -1
  34. package/dist/BaseRadio/utils.js +1 -1
  35. package/dist/Box/Box.cjs +31 -32
  36. package/dist/Box/Box.js +182 -59
  37. package/dist/Breadcrumbs/Breadcrumbs.cjs +3 -3
  38. package/dist/Breadcrumbs/Breadcrumbs.js +50 -39
  39. package/dist/Button/Button.cjs +20 -20
  40. package/dist/Button/Button.js +83 -74
  41. package/dist/Button/utils.cjs +23 -23
  42. package/dist/Button/utils.js +15 -15
  43. package/dist/Card/Card.cjs +1 -1
  44. package/dist/Card/Card.js +28 -29
  45. package/dist/Card/CardAction.cjs +4 -4
  46. package/dist/Card/CardAction.js +12 -6
  47. package/dist/Card/CardAsset.cjs +4 -4
  48. package/dist/Card/CardAsset.js +32 -26
  49. package/dist/Card/CardBadge.cjs +3 -3
  50. package/dist/Card/CardBadge.js +14 -10
  51. package/dist/Card/CardBody.cjs +1 -1
  52. package/dist/Card/CardBody.js +11 -10
  53. package/dist/Card/CardCheckbox.cjs +1 -1
  54. package/dist/Card/CardCheckbox.js +16 -13
  55. package/dist/Card/CardContent.cjs +2 -2
  56. package/dist/Card/CardContent.js +11 -11
  57. package/dist/Card/CardContext.cjs +1 -1
  58. package/dist/Card/CardContext.js +3 -1
  59. package/dist/Card/CardHeader.cjs +2 -2
  60. package/dist/Card/CardHeader.js +9 -7
  61. package/dist/Card/CardTimer.cjs +2 -2
  62. package/dist/Card/CardTimer.js +21 -16
  63. package/dist/Card/CardTitle.cjs +1 -1
  64. package/dist/Card/CardTitle.js +11 -9
  65. package/dist/CarouselInput/Carousel.cjs +4 -4
  66. package/dist/CarouselInput/Carousel.js +8 -9
  67. package/dist/Combobox/Combobox.cjs +1 -1
  68. package/dist/Combobox/Combobox.js +32 -33
  69. package/dist/DatePicker/DatePicker.cjs +1 -1
  70. package/dist/DatePicker/DatePicker.js +26 -29
  71. package/dist/Flex/Flex.cjs +5 -5
  72. package/dist/Flex/Flex.js +29 -17
  73. package/dist/Icon/Icon.cjs +3 -3
  74. package/dist/Icon/Icon.js +23 -19
  75. package/dist/JSONInput/JSONInput.cjs +1 -0
  76. package/dist/JSONInput/JSONInput.js +97 -0
  77. package/dist/JSONInput/JSONInputContainer.cjs +30 -0
  78. package/dist/JSONInput/JSONInputContainer.js +36 -0
  79. package/dist/JSONInput/index.cjs +1 -0
  80. package/dist/JSONInput/index.js +4 -0
  81. package/dist/JSONInput/utils/decorationExtension.cjs +1 -0
  82. package/dist/JSONInput/utils/decorationExtension.js +24 -0
  83. package/dist/KeyboardNavigable/KeyboardNavigable.cjs +1 -1
  84. package/dist/KeyboardNavigable/KeyboardNavigable.js +44 -49
  85. package/dist/Link/Link.cjs +5 -5
  86. package/dist/Link/Link.js +1 -1
  87. package/dist/LiveRegions/LiveRegions.cjs +1 -1
  88. package/dist/LiveRegions/LiveRegions.js +22 -20
  89. package/dist/LiveRegions/index.cjs +1 -1
  90. package/dist/LiveRegions/index.js +4 -2
  91. package/dist/MainNav/NavCondense.cjs +3 -3
  92. package/dist/MainNav/NavCondense.js +1 -2
  93. package/dist/MainNav/NavSections.cjs +3 -3
  94. package/dist/MainNav/NavSections.js +5 -5
  95. package/dist/ModalLayout/ModalHeader.cjs +2 -2
  96. package/dist/ModalLayout/ModalHeader.js +1 -1
  97. package/dist/NumberInput/NumberInput.cjs +2 -2
  98. package/dist/NumberInput/NumberInput.js +1 -1
  99. package/dist/Pagination/components.cjs +6 -6
  100. package/dist/Pagination/components.js +16 -17
  101. package/dist/Searchbar/Searchbar.cjs +7 -7
  102. package/dist/Searchbar/Searchbar.js +7 -8
  103. package/dist/Select/Select.cjs +2 -2
  104. package/dist/Select/Select.js +4 -5
  105. package/dist/Select/SelectTags.cjs +3 -3
  106. package/dist/Select/SelectTags.js +1 -1
  107. package/dist/SimpleMenu/SimpleMenu.cjs +9 -9
  108. package/dist/SimpleMenu/SimpleMenu.js +1 -1
  109. package/dist/Stack/Stack.cjs +5 -5
  110. package/dist/Stack/Stack.js +33 -33
  111. package/dist/SubNav/SubNavHeader.cjs +2 -2
  112. package/dist/SubNav/SubNavHeader.js +1 -1
  113. package/dist/SubNav/SubNavLink.cjs +4 -4
  114. package/dist/SubNav/SubNavLink.js +4 -4
  115. package/dist/SubNav/SubNavLinkSection.cjs +2 -2
  116. package/dist/SubNav/SubNavLinkSection.js +1 -1
  117. package/dist/SubNav/SubNavSectionLabel.cjs +3 -3
  118. package/dist/SubNav/SubNavSectionLabel.js +1 -1
  119. package/dist/TextButton/TextButton.cjs +6 -6
  120. package/dist/TextButton/TextButton.js +51 -50
  121. package/dist/ThemeProvider/ThemeProvider.cjs +2 -2
  122. package/dist/ThemeProvider/ThemeProvider.js +12 -11
  123. package/dist/TimePicker/TimePicker.cjs +2 -2
  124. package/dist/TimePicker/TimePicker.js +1 -1
  125. package/dist/Typography/Typography.cjs +7 -7
  126. package/dist/Typography/Typography.js +28 -17
  127. package/dist/Typography/utils.cjs +2 -2
  128. package/dist/Typography/utils.js +6 -6
  129. package/dist/helpers/arrays.cjs +1 -0
  130. package/dist/helpers/arrays.js +6 -0
  131. package/dist/helpers/handleResponsiveValues.cjs +1 -5
  132. package/dist/helpers/handleResponsiveValues.js +21 -15
  133. package/dist/helpers/objects.cjs +1 -0
  134. package/dist/helpers/objects.js +26 -0
  135. package/dist/helpers/setOpacity.cjs +1 -1
  136. package/dist/helpers/setOpacity.js +1 -1
  137. package/dist/helpers/theme.cjs +1 -0
  138. package/dist/helpers/theme.js +7 -0
  139. package/dist/helpers/useIntersection.cjs +1 -1
  140. package/dist/helpers/useIntersection.js +8 -8
  141. package/dist/hooks/useControllableState.cjs +1 -1
  142. package/dist/hooks/useControllableState.js +13 -16
  143. package/dist/index.cjs +1 -1
  144. package/dist/index.js +205 -201
  145. package/dist/themes/extendTheme.cjs +4 -4
  146. package/dist/themes/extendTheme.js +13 -21
  147. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.cjs +2 -2
  148. package/dist/v2/Breadcrumbs/CrumbSimpleMenu.js +1 -1
  149. package/dist/v2/Link/Link.cjs +4 -4
  150. package/dist/v2/Link/Link.js +1 -1
  151. package/dist/v2/MainNav/NavCondense.cjs +3 -3
  152. package/dist/v2/MainNav/NavCondense.js +1 -2
  153. package/dist/v2/MainNav/NavSections.cjs +3 -3
  154. package/dist/v2/MainNav/NavSections.js +5 -5
  155. package/dist/v2/Pagination/components.cjs +7 -7
  156. package/dist/v2/Pagination/components.js +18 -19
  157. package/dist/v2/SimpleMenu/SimpleMenu.cjs +9 -9
  158. package/dist/v2/SimpleMenu/SimpleMenu.js +96 -89
  159. package/dist/v2/SubNav/SubNavHeader.cjs +2 -2
  160. package/dist/v2/SubNav/SubNavHeader.js +1 -1
  161. package/dist/v2/SubNav/SubNavLink.cjs +4 -4
  162. package/dist/v2/SubNav/SubNavLink.js +1 -1
  163. package/dist/v2/SubNav/SubNavLinkSection.cjs +4 -4
  164. package/dist/v2/SubNav/SubNavLinkSection.js +1 -1
  165. package/dist/v2/SubNav/SubNavSectionLabel.cjs +3 -3
  166. package/dist/v2/SubNav/SubNavSectionLabel.js +1 -1
  167. package/package.json +18 -15
  168. package/dist/Box/BoxProps.cjs +0 -1
  169. package/dist/Box/BoxProps.js +0 -51
  170. package/dist/Flex/FlexProps.cjs +0 -1
  171. package/dist/Flex/FlexProps.js +0 -41
  172. package/dist/FocusTrap/ExampleComponent.cjs +0 -1
  173. package/dist/FocusTrap/ExampleComponent.js +0 -71
  174. package/dist/LiveRegions/StoryComponent.cjs +0 -1
  175. package/dist/LiveRegions/StoryComponent.js +0 -18
  176. package/dist/Typography/TypographyProps.cjs +0 -1
  177. package/dist/Typography/TypographyProps.js +0 -31
  178. package/dist/themes/ColorButton.cjs +0 -3
  179. package/dist/themes/ColorButton.js +0 -25
  180. package/dist/themes/colors.cjs +0 -1
  181. package/dist/themes/colors.js +0 -49
@@ -1,14 +1,20 @@
1
- import s from "styled-components";
2
- import { Stack as r } from "../Stack/Stack.js";
3
- const e = s(r).attrs({
1
+ import e from "styled-components";
2
+ import { Stack as n } from "../Stack/Stack.js";
3
+ const i = e(n).attrs({
4
4
  horizontal: !0,
5
5
  spacing: 2
6
6
  })`
7
7
  position: absolute;
8
8
  top: ${({ theme: t }) => t.spaces[3]};
9
- right: ${({ position: t, theme: o }) => t === "end" ? o.spaces[3] : void 0};
10
- left: ${({ position: t, theme: o }) => t === "start" ? o.spaces[3] : void 0};
9
+ right: ${({ position: t, theme: r }) => {
10
+ if (t === "end")
11
+ return r.spaces[3];
12
+ }};
13
+ left: ${({ position: t, theme: r }) => {
14
+ if (t === "start")
15
+ return r.spaces[3];
16
+ }};
11
17
  `;
12
18
  export {
13
- e as CardAction
19
+ i as CardAction
14
20
  };
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react"),l=require("styled-components"),c=require("prop-types"),u=require("../Flex/Flex.cjs"),a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=a(n),i=a(l),o=a(c),p=i.default.img`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),a=require("styled-components"),o=require("../Flex/Flex.cjs"),n=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},i=n(a),d=i.default.img`
2
2
  // inline flows is based on typography and displays an extra white space below the image
3
3
  // switch to block is required in order to make the img stick the bottom of the container
4
4
  // addition infos: https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image
@@ -7,13 +7,13 @@
7
7
  max-height: 100%;
8
8
  max-width: 100%;
9
9
  object-fit: contain;
10
- `,f={S:88,M:164},h=i.default.div`
10
+ `,c={S:88,M:164},l=i.default.div`
11
11
  display: flex;
12
12
  justify-content: center;
13
- height: ${({size:e})=>f[e]/16}rem;
13
+ height: ${({size:e})=>c[e]/16}rem;
14
14
  width: 100%;
15
15
  background: repeating-conic-gradient(${({theme:e})=>e.colors.neutral100} 0% 25%, transparent 0% 50%) 50% / 20px
16
16
  20px;
17
17
  border-top-left-radius: ${({theme:e})=>e.borderRadius};
18
18
  border-top-right-radius: ${({theme:e})=>e.borderRadius};
19
- `,r=({size:e,children:s,...d})=>t.default.createElement(h,{size:e},s?t.default.createElement(u.Flex,null,s):t.default.createElement(p,{...d,"aria-hidden":!0}));r.defaultProps={children:void 0,size:"M"};r.propTypes={children:o.default.node,size:o.default.oneOf(["S","M"])};exports.CardAsset=r;
19
+ `,u=({size:e="M",children:s,...r})=>t.jsx(l,{size:e,children:s?t.jsx(o.Flex,{children:s}):t.jsx(d,{...r,"aria-hidden":!0})});exports.CardAsset=u;
@@ -1,8 +1,7 @@
1
- import t from "react";
2
- import o from "styled-components";
3
- import i from "prop-types";
4
- import { Flex as n } from "../Flex/Flex.js";
5
- const d = o.img`
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import r from "styled-components";
3
+ import { Flex as s } from "../Flex/Flex.js";
4
+ const a = r.img`
6
5
  // inline flows is based on typography and displays an extra white space below the image
7
6
  // switch to block is required in order to make the img stick the bottom of the container
8
7
  // addition infos: https://stackoverflow.com/questions/5804256/image-inside-div-has-extra-space-below-the-image
@@ -11,32 +10,39 @@ const d = o.img`
11
10
  max-height: 100%;
12
11
  max-width: 100%;
13
12
  object-fit: contain;
14
- `, p = {
13
+ `, d = {
15
14
  S: 88,
16
15
  M: 164
17
- }, c = o.div`
16
+ }, n = r.div`
18
17
  display: flex;
19
18
  justify-content: center;
20
- height: ${({ size: e }) => p[e] / 16}rem;
19
+ height: ${({
20
+ size: e
21
+ }) => d[e] / 16}rem;
21
22
  width: 100%;
22
- background: repeating-conic-gradient(${({ theme: e }) => e.colors.neutral100} 0% 25%, transparent 0% 50%) 50% / 20px
23
+ background: repeating-conic-gradient(${({
24
+ theme: e
25
+ }) => e.colors.neutral100} 0% 25%, transparent 0% 50%) 50% / 20px
23
26
  20px;
24
- border-top-left-radius: ${({ theme: e }) => e.borderRadius};
25
- border-top-right-radius: ${({ theme: e }) => e.borderRadius};
26
- `, a = ({ size: e, children: r, ...s }) => /* @__PURE__ */ t.createElement(c, {
27
- size: e
28
- }, r ? /* @__PURE__ */ t.createElement(n, null, r) : /* @__PURE__ */ t.createElement(d, {
29
- ...s,
30
- "aria-hidden": !0
31
- }));
32
- a.defaultProps = {
33
- children: void 0,
34
- size: "M"
35
- };
36
- a.propTypes = {
37
- children: i.node,
38
- size: i.oneOf(["S", "M"])
39
- };
27
+ border-top-left-radius: ${({
28
+ theme: e
29
+ }) => e.borderRadius};
30
+ border-top-right-radius: ${({
31
+ theme: e
32
+ }) => e.borderRadius};
33
+ `, m = ({
34
+ size: e = "M",
35
+ children: i,
36
+ ...o
37
+ }) => t(n, {
38
+ size: e,
39
+ children: i ? t(s, {
40
+ children: i
41
+ }) : t(a, {
42
+ ...o,
43
+ "aria-hidden": !0
44
+ })
45
+ });
40
46
  export {
41
- a as CardAsset
47
+ m as CardAsset
42
48
  };
@@ -1,6 +1,6 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react"),r=require("styled-components"),n=require("../Badge/Badge.cjs"),a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=a(l),d=a(r),o=d.default.div`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),s=require("styled-components"),d=require("../Badge/Badge.cjs"),r=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=r(s),n=a.default.div`
2
2
  margin-left: auto;
3
3
  flex-shrink: 0;
4
- `,s=d.default(n.Badge)`
4
+ `,o=a.default(d.Badge)`
5
5
  margin-left: ${({theme:e})=>e.spaces[1]};
6
- `,c=e=>t.default.createElement(o,null,t.default.createElement(s,{...e}));exports.CardBadge=c;
6
+ `,i=e=>t.jsx(n,{children:t.jsx(o,{...e})});exports.CardBadge=i;
@@ -1,14 +1,18 @@
1
- import t from "react";
2
- import r from "styled-components";
3
- import { Badge as a } from "../Badge/Badge.js";
4
- const o = r.div`
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import e from "styled-components";
3
+ import { Badge as t } from "../Badge/Badge.js";
4
+ const a = e.div`
5
5
  margin-left: auto;
6
6
  flex-shrink: 0;
7
- `, m = r(a)`
8
- margin-left: ${({ theme: e }) => e.spaces[1]};
9
- `, l = (e) => /* @__PURE__ */ t.createElement(o, null, /* @__PURE__ */ t.createElement(m, {
10
- ...e
11
- }));
7
+ `, i = e(t)`
8
+ margin-left: ${({
9
+ theme: r
10
+ }) => r.spaces[1]};
11
+ `, n = (r) => o(a, {
12
+ children: o(i, {
13
+ ...r
14
+ })
15
+ });
12
16
  export {
13
- l as CardBadge
17
+ n as CardBadge
14
18
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react"),o=require("../Flex/Flex.cjs"),d=require("../Box/Box.cjs"),r=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=r(a),l=e=>t.default.createElement(d.Box,{paddingLeft:3,paddingRight:3,paddingTop:2,paddingBottom:2},t.default.createElement(o.Flex,{...e,alignItems:"flex-start"}));exports.CardBody=l;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("../Flex/Flex.cjs"),o=require("../Box/Box.cjs"),d=t=>e.jsx(o.Box,{paddingLeft:3,paddingRight:3,paddingTop:2,paddingBottom:2,children:e.jsx(r.Flex,{...t,alignItems:"flex-start"})});exports.CardBody=d;
@@ -1,15 +1,16 @@
1
- import t from "react";
2
- import { Flex as o } from "../Flex/Flex.js";
3
- import { Box as r } from "../Box/Box.js";
4
- const i = (e) => /* @__PURE__ */ t.createElement(r, {
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { Flex as r } from "../Flex/Flex.js";
3
+ import { Box as d } from "../Box/Box.js";
4
+ const n = (t) => o(d, {
5
5
  paddingLeft: 3,
6
6
  paddingRight: 3,
7
7
  paddingTop: 2,
8
- paddingBottom: 2
9
- }, /* @__PURE__ */ t.createElement(o, {
10
- ...e,
11
- alignItems: "flex-start"
12
- }));
8
+ paddingBottom: 2,
9
+ children: o(r, {
10
+ ...t,
11
+ alignItems: "flex-start"
12
+ })
13
+ });
13
14
  export {
14
- i as CardBody
15
+ n as CardBody
15
16
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react"),o=require("./CardAction.cjs"),r=require("../BaseCheckbox/BaseCheckbox.cjs"),s=require("./CardContext.cjs"),n=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=n(c),d=e=>{const{id:a}=s.useCard();return t.default.createElement(o.CardAction,{position:"start"},t.default.createElement(r.BaseCheckbox,{"aria-labelledby":`${a}-title`,...e}))};exports.CardCheckbox=d;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),o=require("../BaseCheckbox/BaseCheckbox.cjs"),s=require("./CardAction.cjs"),c=require("./CardContext.cjs"),a=t=>{const{id:r}=c.useCard();return e.jsx(s.CardAction,{position:"start",children:e.jsx(o.BaseCheckbox,{"aria-labelledby":`${r}-title`,...t})})};exports.CardCheckbox=a;
@@ -1,16 +1,19 @@
1
- import t from "react";
2
- import { CardAction as o } from "./CardAction.js";
3
- import { BaseCheckbox as a } from "../BaseCheckbox/BaseCheckbox.js";
4
- import { useCard as i } from "./CardContext.js";
5
- const d = (e) => {
6
- const { id: r } = i();
7
- return /* @__PURE__ */ t.createElement(o, {
8
- position: "start"
9
- }, /* @__PURE__ */ t.createElement(a, {
10
- "aria-labelledby": `${r}-title`,
11
- ...e
12
- }));
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { BaseCheckbox as i } from "../BaseCheckbox/BaseCheckbox.js";
3
+ import { CardAction as e } from "./CardAction.js";
4
+ import { useCard as a } from "./CardContext.js";
5
+ const n = (o) => {
6
+ const {
7
+ id: t
8
+ } = a();
9
+ return r(e, {
10
+ position: "start",
11
+ children: r(i, {
12
+ "aria-labelledby": `${t}-title`,
13
+ ...o
14
+ })
15
+ });
13
16
  };
14
17
  export {
15
- d as CardCheckbox
18
+ n as CardCheckbox
16
19
  };
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react"),s=require("prop-types"),a=require("styled-components"),c=require("../Box/Box.cjs"),t=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=t(n),u=t(s),d=t(a),p=d.default(c.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),r=require("styled-components"),n=require("../Box/Box.cjs"),s=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},u=s(r),a=u.default(n.Box)`
2
2
  word-break: break-all;
3
- `,o=({children:e,...r})=>l.default.createElement(p,{...r},e);o.propTypes={children:u.default.node.isRequired};exports.CardContent=o;
3
+ `,l=({children:e,...t})=>o.jsx(a,{...t,children:e});exports.CardContent=l;
@@ -1,15 +1,15 @@
1
- import o from "react";
2
- import t from "prop-types";
3
- import p from "styled-components";
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import e from "styled-components";
4
3
  import { Box as m } from "../Box/Box.js";
5
- const a = p(m)`
4
+ const n = e(m)`
6
5
  word-break: break-all;
7
- `, n = ({ children: r, ...e }) => /* @__PURE__ */ o.createElement(a, {
8
- ...e
9
- }, r);
10
- n.propTypes = {
11
- children: t.node.isRequired
12
- };
6
+ `, l = ({
7
+ children: r,
8
+ ...o
9
+ }) => t(n, {
10
+ ...o,
11
+ children: r
12
+ });
13
13
  export {
14
- n as CardContent
14
+ l as CardContent
15
15
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),t=e.createContext(),r=()=>e.useContext(t);exports.CardContext=t;exports.useCard=r;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),t=e.createContext({id:""}),r=()=>e.useContext(t);exports.CardContext=t;exports.useCard=r;
@@ -1,5 +1,7 @@
1
1
  import { createContext as t, useContext as e } from "react";
2
- const o = t(), n = () => e(o);
2
+ const o = t({
3
+ id: ""
4
+ }), n = () => e(o);
3
5
  export {
4
6
  o as CardContext,
5
7
  n as useCard
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("react"),o=require("styled-components"),a=require("../Flex/Flex.cjs"),t=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=t(r),n=t(o),s=n.default(a.Flex)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),r=require("styled-components"),o=require("../Flex/Flex.cjs"),s=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=s(r),n=l.default(o.Flex)`
2
2
  position: relative;
3
3
  border-bottom: 1px solid ${({theme:e})=>e.colors.neutral150};
4
- `,c=e=>l.default.createElement(s,{justifyContent:"center",...e});exports.CardHeader=c;
4
+ `,a=e=>t.jsx(n,{justifyContent:"center",...e});exports.CardHeader=a;
@@ -1,13 +1,15 @@
1
- import r from "react";
1
+ import { jsx as o } from "react/jsx-runtime";
2
2
  import t from "styled-components";
3
- import { Flex as o } from "../Flex/Flex.js";
4
- const a = t(o)`
3
+ import { Flex as e } from "../Flex/Flex.js";
4
+ const i = t(e)`
5
5
  position: relative;
6
- border-bottom: 1px solid ${({ theme: e }) => e.colors.neutral150};
7
- `, l = (e) => /* @__PURE__ */ r.createElement(a, {
6
+ border-bottom: 1px solid ${({
7
+ theme: r
8
+ }) => r.colors.neutral150};
9
+ `, a = (r) => o(i, {
8
10
  justifyContent: "center",
9
- ...e
11
+ ...r
10
12
  });
11
13
  export {
12
- l as CardHeader
14
+ a as CardHeader
13
15
  };
@@ -1,5 +1,5 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),p=require("prop-types"),u=require("styled-components"),c=require("../Box/Box.cjs"),n=require("../Typography/Typography.cjs"),t=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},r=t(s),l=t(p),d=t(u),i=d.default(c.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),o=require("styled-components"),a=require("../Box/Box.cjs"),s=require("../Typography/Typography.cjs"),i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=i(o),u=n.default(a.Box)`
2
2
  position: absolute;
3
3
  bottom: ${({theme:e})=>e.spaces[1]};
4
4
  right: ${({theme:e})=>e.spaces[1]};
5
- `,o=({children:e,...a})=>r.default.createElement(i,{padding:1,background:"neutral800",color:"neutral0",as:"time",hasRadius:!0,...a},r.default.createElement(n.Typography,{variant:"pi",textColor:"neutral0"},e));o.propTypes={children:l.default.node.isRequired};exports.CardTimer=o;
5
+ `,c=({children:e,...r})=>t.jsx(u,{padding:1,background:"neutral800",color:"neutral0",as:"time",hasRadius:!0,...r,children:t.jsx(s.Typography,{variant:"pi",textColor:"neutral0",children:e})});exports.CardTimer=c;
@@ -1,26 +1,31 @@
1
- import e from "react";
2
- import t from "prop-types";
1
+ import { jsx as o } from "react/jsx-runtime";
3
2
  import a from "styled-components";
4
- import { Box as p } from "../Box/Box.js";
3
+ import { Box as e } from "../Box/Box.js";
5
4
  import { Typography as i } from "../Typography/Typography.js";
6
- const m = a(p)`
5
+ const p = a(e)`
7
6
  position: absolute;
8
- bottom: ${({ theme: r }) => r.spaces[1]};
9
- right: ${({ theme: r }) => r.spaces[1]};
10
- `, s = ({ children: r, ...o }) => /* @__PURE__ */ e.createElement(m, {
7
+ bottom: ${({
8
+ theme: r
9
+ }) => r.spaces[1]};
10
+ right: ${({
11
+ theme: r
12
+ }) => r.spaces[1]};
13
+ `, l = ({
14
+ children: r,
15
+ ...t
16
+ }) => o(p, {
11
17
  padding: 1,
12
18
  background: "neutral800",
13
19
  color: "neutral0",
14
20
  as: "time",
15
21
  hasRadius: !0,
16
- ...o
17
- }, /* @__PURE__ */ e.createElement(i, {
18
- variant: "pi",
19
- textColor: "neutral0"
20
- }, r));
21
- s.propTypes = {
22
- children: t.node.isRequired
23
- };
22
+ ...t,
23
+ children: o(i, {
24
+ variant: "pi",
25
+ textColor: "neutral0",
26
+ children: r
27
+ })
28
+ });
24
29
  export {
25
- s as CardTimer
30
+ l as CardTimer
26
31
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),e=require("../Typography/Typography.cjs"),i=require("./CardContext.cjs"),l=t=>t&&typeof t=="object"&&"default"in t?t:{default:t},r=l(o),n=t=>{const{id:a}=i.useCard();return r.default.createElement(e.Typography,{variant:"pi",id:`${a}-title`,textColor:"neutral800",fontWeight:"bold",as:"div",...t})},u=t=>r.default.createElement(e.Typography,{variant:"pi",...t,textColor:"neutral600",as:"div"});exports.CardSubtitle=u;exports.CardTitle=n;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react/jsx-runtime"),r=require("../Typography/Typography.cjs"),o=require("./CardContext.cjs"),i=t=>{const{id:a}=o.useCard();return e.jsx(r.Typography,{variant:"pi",id:`${a}-title`,textColor:"neutral800",fontWeight:"bold",as:"div",...t})},n=t=>e.jsx(r.Typography,{variant:"pi",...t,textColor:"neutral600",as:"div"});exports.CardSubtitle=n;exports.CardTitle=i;
@@ -1,23 +1,25 @@
1
- import r from "react";
2
- import { Typography as e } from "../Typography/Typography.js";
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import { Typography as o } from "../Typography/Typography.js";
3
3
  import { useCard as a } from "./CardContext.js";
4
- const d = (t) => {
5
- const { id: o } = a();
6
- return /* @__PURE__ */ r.createElement(e, {
4
+ const l = (t) => {
5
+ const {
6
+ id: i
7
+ } = a();
8
+ return r(o, {
7
9
  variant: "pi",
8
- id: `${o}-title`,
10
+ id: `${i}-title`,
9
11
  textColor: "neutral800",
10
12
  fontWeight: "bold",
11
13
  as: "div",
12
14
  ...t
13
15
  });
14
- }, m = (t) => /* @__PURE__ */ r.createElement(e, {
16
+ }, p = (t) => r(o, {
15
17
  variant: "pi",
16
18
  ...t,
17
19
  textColor: "neutral600",
18
20
  as: "div"
19
21
  });
20
22
  export {
21
- m as CardSubtitle,
22
- d as CardTitle
23
+ p as CardSubtitle,
24
+ l as CardTitle
23
25
  };
@@ -1,14 +1,14 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),j=require("prop-types"),A=require("styled-components"),L=require("@strapi/icons/ChevronRight"),k=require("@strapi/icons/ChevronLeft"),g=require("../Icon/Icon.cjs"),l=require("../Box/Box.cjs"),B=require("../Typography/Typography.cjs"),K=require("../Flex/Flex.cjs"),w=require("../Tooltip/Tooltip.cjs"),b=require("../helpers/keyboardKeys.cjs"),n=r=>r&&typeof r=="object"&&"default"in r?r:{default:r},t=n(o),e=n(j),d=n(A),I=n(L),D=n(k),F=d.default(l.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),_=require("prop-types"),k=require("styled-components"),g=require("@strapi/icons"),b=require("../Icon/Icon.cjs"),l=require("../Box/Box.cjs"),B=require("../Typography/Typography.cjs"),K=require("../Flex/Flex.cjs"),w=require("../Tooltip/Tooltip.cjs"),m=require("../helpers/keyboardKeys.cjs"),i=r=>r&&typeof r=="object"&&"default"in r?r:{default:r},t=i(o),e=i(_),d=i(k),L=d.default(l.Box)`
2
2
  display: grid;
3
3
  grid-template-columns: auto 1fr auto;
4
4
  grid-template-areas: 'startAction slides endAction';
5
- `,P=d.default(l.Box)`
5
+ `,I=d.default(l.Box)`
6
6
  grid-area: slides;
7
- `,v=d.default.button`
7
+ `,q=d.default.button`
8
8
  grid-area: ${({area:r})=>r};
9
9
 
10
10
  &:focus svg path,
11
11
  &:hover svg path {
12
12
  fill: ${({theme:r})=>r.colors.neutral900};
13
13
  }
14
- `,s=({actions:r,children:m,label:q,nextLabel:R,onNext:u,onPrevious:c,previousLabel:x,secondaryLabel:i,selectedSlide:C,...T})=>{const f=o.useRef(null),p=o.useRef(null),h=o.Children.toArray(m).map((a,_)=>o.cloneElement(a,{selected:_===C})),E=a=>{switch(a.key){case b.KeyboardKeys.RIGHT:{a.preventDefault(),p.current.focus(),u();break}case b.KeyboardKeys.LEFT:{a.preventDefault(),f.current.focus(),c();break}}},y=h.length>1;return t.default.createElement(l.Box,{...T,onKeyDown:E},t.default.createElement(l.Box,{padding:2,borderColor:"neutral200",hasRadius:!0,background:"neutral100"},t.default.createElement(F,{as:"section","aria-roledescription":"carousel","aria-label":q,position:"relative"},y&&t.default.createElement(v,{onClick:c,area:"startAction",ref:f,"aria-label":x,type:"button"},t.default.createElement(g.Icon,{as:D.default,"aria-hidden":!0,width:"6px",height:"10px",color:"neutral600"})),y&&t.default.createElement(v,{onClick:u,area:"endAction",ref:p,"aria-label":R,type:"button"},t.default.createElement(g.Icon,{as:I.default,"aria-hidden":!0,width:"6px",height:"10px",color:"neutral600"})),t.default.createElement(P,{"aria-live":"polite",paddingLeft:2,paddingRight:2,width:"100%",overflow:"hidden"},h),r),i&&t.default.createElement(l.Box,{paddingTop:2,paddingLeft:4,paddingRight:4},t.default.createElement(w.Tooltip,{label:i},t.default.createElement(K.Flex,{justifyContent:"center"},t.default.createElement(B.Typography,{variant:"pi",textColor:"neutral600",ellipsis:!0},i))))))};s.defaultProps={actions:void 0,error:void 0,hint:void 0,required:!1,secondaryLabel:void 0};s.propTypes={actions:e.default.node,children:e.default.node.isRequired,error:e.default.string,hint:e.default.oneOfType([e.default.string,e.default.node,e.default.arrayOf(e.default.node)]),label:e.default.string.isRequired,nextLabel:e.default.string.isRequired,onNext:e.default.func.isRequired,onPrevious:e.default.func.isRequired,previousLabel:e.default.string.isRequired,required:e.default.bool,secondaryLabel:e.default.string,selectedSlide:e.default.number.isRequired};exports.Carousel=s;
14
+ `,s=({actions:r,children:v,label:x,nextLabel:R,onNext:u,onPrevious:c,previousLabel:T,secondaryLabel:n,selectedSlide:C,...E})=>{const f=o.useRef(null),p=o.useRef(null),y=o.Children.toArray(v).map((a,A)=>o.cloneElement(a,{selected:A===C})),j=a=>{switch(a.key){case m.KeyboardKeys.RIGHT:{a.preventDefault(),p.current.focus(),u();break}case m.KeyboardKeys.LEFT:{a.preventDefault(),f.current.focus(),c();break}}},h=y.length>1;return t.default.createElement(l.Box,{...E,onKeyDown:j},t.default.createElement(l.Box,{padding:2,borderColor:"neutral200",hasRadius:!0,background:"neutral100"},t.default.createElement(L,{as:"section","aria-roledescription":"carousel","aria-label":x,position:"relative"},h&&t.default.createElement(q,{onClick:c,area:"startAction",ref:f,"aria-label":T,type:"button"},t.default.createElement(b.Icon,{as:g.ChevronLeft,"aria-hidden":!0,width:"6px",height:"10px",color:"neutral600"})),h&&t.default.createElement(q,{onClick:u,area:"endAction",ref:p,"aria-label":R,type:"button"},t.default.createElement(b.Icon,{as:g.ChevronRight,"aria-hidden":!0,width:"6px",height:"10px",color:"neutral600"})),t.default.createElement(I,{"aria-live":"polite",paddingLeft:2,paddingRight:2,width:"100%",overflow:"hidden"},y),r),n&&t.default.createElement(l.Box,{paddingTop:2,paddingLeft:4,paddingRight:4},t.default.createElement(w.Tooltip,{label:n},t.default.createElement(K.Flex,{justifyContent:"center"},t.default.createElement(B.Typography,{variant:"pi",textColor:"neutral600",ellipsis:!0},n))))))};s.defaultProps={actions:void 0,error:void 0,hint:void 0,required:!1,secondaryLabel:void 0};s.propTypes={actions:e.default.node,children:e.default.node.isRequired,error:e.default.string,hint:e.default.oneOfType([e.default.string,e.default.node,e.default.arrayOf(e.default.node)]),label:e.default.string.isRequired,nextLabel:e.default.string.isRequired,onNext:e.default.func.isRequired,onPrevious:e.default.func.isRequired,previousLabel:e.default.string.isRequired,required:e.default.bool,secondaryLabel:e.default.string,selectedSlide:e.default.number.isRequired};exports.Carousel=s;
@@ -1,8 +1,7 @@
1
1
  import r, { useRef as m, Children as T, cloneElement as w } from "react";
2
2
  import e from "prop-types";
3
3
  import a from "styled-components";
4
- import k from "@strapi/icons/ChevronRight";
5
- import L from "@strapi/icons/ChevronLeft";
4
+ import { ChevronLeft as k, ChevronRight as L } from "@strapi/icons";
6
5
  import { Icon as f } from "../Icon/Icon.js";
7
6
  import { Box as i } from "../Box/Box.js";
8
7
  import { Typography as D } from "../Typography/Typography.js";
@@ -34,7 +33,7 @@ const G = a(i)`
34
33
  selectedSlide: C,
35
34
  ...x
36
35
  }) => {
37
- const d = m(null), c = m(null), p = T.toArray(b).map(
36
+ const d = m(null), c = m(null), u = T.toArray(b).map(
38
37
  (o, A) => w(o, { selected: A === C })
39
38
  ), q = (o) => {
40
39
  switch (o.key) {
@@ -47,7 +46,7 @@ const G = a(i)`
47
46
  break;
48
47
  }
49
48
  }
50
- }, u = p.length > 1;
49
+ }, p = u.length > 1;
51
50
  return /* @__PURE__ */ r.createElement(i, {
52
51
  ...x,
53
52
  onKeyDown: q
@@ -61,26 +60,26 @@ const G = a(i)`
61
60
  "aria-roledescription": "carousel",
62
61
  "aria-label": v,
63
62
  position: "relative"
64
- }, u && /* @__PURE__ */ r.createElement(g, {
63
+ }, p && /* @__PURE__ */ r.createElement(g, {
65
64
  onClick: s,
66
65
  area: "startAction",
67
66
  ref: d,
68
67
  "aria-label": E,
69
68
  type: "button"
70
69
  }, /* @__PURE__ */ r.createElement(f, {
71
- as: L,
70
+ as: k,
72
71
  "aria-hidden": !0,
73
72
  width: "6px",
74
73
  height: "10px",
75
74
  color: "neutral600"
76
- })), u && /* @__PURE__ */ r.createElement(g, {
75
+ })), p && /* @__PURE__ */ r.createElement(g, {
77
76
  onClick: l,
78
77
  area: "endAction",
79
78
  ref: c,
80
79
  "aria-label": R,
81
80
  type: "button"
82
81
  }, /* @__PURE__ */ r.createElement(f, {
83
- as: k,
82
+ as: L,
84
83
  "aria-hidden": !0,
85
84
  width: "6px",
86
85
  height: "10px",
@@ -91,7 +90,7 @@ const G = a(i)`
91
90
  paddingRight: 2,
92
91
  width: "100%",
93
92
  overflow: "hidden"
94
- }, p), t), n && /* @__PURE__ */ r.createElement(i, {
93
+ }, u), t), n && /* @__PURE__ */ r.createElement(i, {
95
94
  paddingTop: 2,
96
95
  paddingLeft: 4,
97
96
  paddingRight: 4
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react"),ge=require("prop-types"),xe=require("@strapi/icons/CarretDown"),ye=require("@strapi/icons/Cross"),he=require("../helpers/useId.cjs"),l=require("./utils.cjs"),H=require("../Flex/Flex.cjs"),N=require("../Select/components.cjs"),ve=require("../Popover/Popover.cjs"),Ee=require("../Box/Box.cjs"),U=require("../Typography/Typography.cjs"),Fe=require("../Loader/Loader.cjs"),q=require("./components.cjs"),Ie=require("./ComboboxOption.cjs"),qe=require("./ComboboxList.cjs"),ke=require("../Field/Field.cjs"),je=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const Me=require("../Field/FieldHint.cjs"),Oe=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const Le=require("../Stack/Stack.cjs"),Se=require("../helpers/keyboardKeys.cjs"),Re=require("../VisuallyHidden/VisuallyHidden.cjs"),k=r=>r&&typeof r=="object"&&"default"in r?r:{default:r},o=k(a),e=k(ge),we=k(xe),Ae=k(ye),h=({children:r,clearLabel:z,creatable:v,createMessage:W,disabled:d,error:j,hasMoreItems:G,hint:S,label:g,labelAction:J,loading:M,loadingMessage:Q,noOptionsMessage:X,onChange:R,onClear:w,onCreateOption:Y,onInputChange:A,onLoadMore:Z,placeholder:ee,required:T,value:p,...te})=>{const oe=()=>r.find(t=>t.props?.value.toLowerCase()===p.toLowerCase()).props?.children,[i,$]=a.useState(0),[ne,ae]=a.useState(null),[u,B]=a.useState(r),[m,re]=a.useState(!1),[s,F]=a.useState(""),x=a.useRef(),I=a.useRef(!1),E=a.useRef(),D=a.useRef(),le=a.useRef(),P=a.useRef(!0),c=he.useId("combobox"),_=`${c}-label`;if(!g&&!te["aria-label"])throw new Error('The Combobox component needs a "label" or an "aria-label" props');a.useEffect(()=>{B(l.filterOptions(r,s))},[s,r]),a.useEffect(()=>{m&&x.current&&l.maintainScrollVisibility(x.current)},[i,m]),a.useLayoutEffect(()=>{P.current&&(P.current=!1)},[p]);const se=m?`${c}-${i}`:"",V=()=>{R(null),F("")},ie=t=>{A&&A(t);const n=E.current.value;B(l.filterOptions(r,n)),$(0),ae(null),s!==n&&F(n),m||b(!0,!1)},ce=t=>{const{key:n}=t,f=v&&s?u.length:u.length-1,y=l.getActionFromKey(n,m);switch(p&&!s&&n===Se.KeyboardKeys.BACKSPACE&&V(),y){case l.MenuActions.Next:{if(i===f){C(0);break}C(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.Previous:{if(i===0){C(f);break}C(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.Last:case l.MenuActions.First:{if(i===f){C(0);break}C(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.CloseSelect:t.preventDefault(),O(i);break;case l.MenuActions.Close:t.preventDefault(),b(!1);break;case l.MenuActions.Open:b(!0);break}},ue=t=>{if(t.preventDefault(),p&&!I.current&&F(""),I.current){I.current=!1;return}b(!1,!1)},C=t=>{$(t)},de=t=>{C(t),O(t)},K=()=>{I.current=!0},O=t=>{const n=u[t];if(F(""),n){R(n.props.value),b(!1);return}v&&(Y(s),b(!1))},b=(t,n=!0)=>{re(t),n&&E.current.focus()},fe=a.Children.toArray(u).map((t,n)=>{const f=i===n;return a.cloneElement(t,{id:`${c}-${n}`,"aria-selected":ne===n,"aria-posinset":n+1,"aria-setsize":a.Children.toArray(u).length,ref(y){f&&(x.current=y)},onClick:()=>de(n),onMouseDown:K,isSelected:f})}),pe=()=>{E.current.focus(),w&&w(),V()},be=()=>{E.current.focus(),b(!0)},me=()=>{const t=u.findIndex(n=>n.props?.children===s);return s&&t===-1},Ce=t=>{t.preventDefault(),b(t,!0)};return o.default.createElement(ke.Field,{hint:S,error:j,id:c,required:T},o.default.createElement(Re.VisuallyHidden,{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text"},p),o.default.createElement(Le.Stack,{spacing:g||S||j?1:0},g&&o.default.createElement(je.FieldLabel,{action:J},g),o.default.createElement(q.MainRow,{ref:D,$disabled:d,hasError:j},o.default.createElement(q.InputContainer,{wrap:"wrap"},!s&&p&&o.default.createElement(q.ValueContainer,{id:`${c}-selected-value`},o.default.createElement(U.Typography,null,oe())),o.default.createElement(q.Input,{"aria-activedescendant":se,"aria-autocomplete":"list","aria-controls":`${c}-listbox`,"aria-disabled":d,"aria-expanded":m,"aria-haspopup":"listbox","aria-labelledby":g?_:void 0,autoComplete:"off",autoCorrect:"off",id:c,onBlur:d?void 0:ue,onClick:d?void 0:Ce,onInput:d?void 0:ie,onKeyDown:d?void 0:ce,placeholder:p?"":ee,readOnly:d,ref:E,required:T,role:"combobox",spellCheck:"off",type:"text",value:s})),o.default.createElement(H.Flex,null,(p||s)&&o.default.createElement(N.IconBox,{id:`${c}-clear`,"aria-label":z,disabled:d,paddingLeft:3,as:"button",onClick:pe,type:"button"},o.default.createElement(Ae.default,null)),o.default.createElement(N.CaretBox,{disabled:d,paddingLeft:3,"aria-hidden":!0,as:"button",onClick:be,tabIndex:-1,type:"button"},o.default.createElement(we.default,null)))),o.default.createElement(Me.FieldHint,null),o.default.createElement(Oe.FieldError,null)),m&&o.default.createElement(ve.Popover,{id:`${c}-popover`,source:D,spacing:4,fullWidth:!0,intersectionId:`${c}-listbox-popover-intersection`,onReachEnd:G&&!M?Z:void 0},o.default.createElement("div",{role:"listbox",ref:le,id:`${c}-listbox`,"aria-labelledby":g?_:void 0},(Boolean(u.length)||v)&&o.default.createElement(o.default.Fragment,null,o.default.createElement(qe.ComboboxList,{activeOptionRef:x,options:fe}),me()&&v&&o.default.createElement(Ie.ComboboxOption,{isSelected:i===u.length,ref:t=>{i===u.length&&(x.current=t)},onMouseDown:K,onClick:()=>O(),taindex:0},W(s))),!u.length&&!v&&!M&&o.default.createElement(Ee.Box,{paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2,ref:x},o.default.createElement(U.Typography,{textColor:"neutral800"},X(s))),M&&o.default.createElement(H.Flex,{justifyContent:"center",alignItems:"center",paddingTop:2,paddingBottom:2},o.default.createElement(Fe.Loader,{small:!0},Q)))))},L=r=>o.default.createElement(h,{...r,creatable:!0});h.defaultProps={"aria-label":void 0,clearLabel:"clear",creatable:!1,createMessage:r=>`Create "${r}"`,disabled:!1,error:void 0,hasMoreItems:!1,hint:void 0,label:void 0,loading:!1,loadingMessage:"Loading content...",noOptionsMessage:()=>"No results found",onClear:void 0,onCreateOption:void 0,onInputChange:void 0,onLoadMore:void 0,placeholder:"Select or enter a value",value:void 0};L.defaultProps=h.defaultProps;h.propTypes={"aria-label":e.default.string,children:e.default.oneOfType([e.default.arrayOf(e.default.node),e.default.node]),clearLabel:e.default.string,creatable:e.default.bool,createMessage:e.default.func,disabled:e.default.bool,error:e.default.string,hasMoreItems:e.default.bool,hint:e.default.oneOfType([e.default.string,e.default.node,e.default.arrayOf(e.default.node)]),label:e.default.string,labelAction:e.default.element,loading:e.default.bool,loadingMessage:e.default.string,noOptionsMessage:e.default.func,onChange:e.default.func.isRequired,onClear:e.default.func,onCreateOption:e.default.func,onInputChange:e.default.func,onLoadMore:e.default.func,placeholder:e.default.string,value:e.default.string};L.propTypes={...h.propTypes,onCreateOption:e.default.func.isRequired};exports.Combobox=h;exports.CreatableCombobox=L;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react"),xe=require("prop-types"),H=require("@strapi/icons"),ye=require("../helpers/useId.cjs"),l=require("./utils.cjs"),_=require("../Flex/Flex.cjs"),N=require("../Select/components.cjs"),he=require("../Popover/Popover.cjs"),ve=require("../Box/Box.cjs"),U=require("../Typography/Typography.cjs"),Ee=require("../Loader/Loader.cjs"),k=require("./components.cjs"),Fe=require("./ComboboxOption.cjs"),Ie=require("./ComboboxList.cjs"),ke=require("../Field/Field.cjs"),qe=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const je=require("../Field/FieldHint.cjs"),Me=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const Oe=require("../Stack/Stack.cjs"),Le=require("../helpers/keyboardKeys.cjs"),Se=require("../VisuallyHidden/VisuallyHidden.cjs"),z=r=>r&&typeof r=="object"&&"default"in r?r:{default:r},o=z(a),e=z(xe),h=({children:r,clearLabel:W,creatable:v,createMessage:G,disabled:d,error:q,hasMoreItems:J,hint:L,label:C,labelAction:Q,loading:j,loadingMessage:X,noOptionsMessage:Y,onChange:S,onClear:R,onCreateOption:Z,onInputChange:A,onLoadMore:ee,placeholder:te,required:T,value:p,...oe})=>{const ne=()=>r.find(t=>t.props?.value.toLowerCase()===p.toLowerCase()).props?.children,[i,w]=a.useState(0),[ae,re]=a.useState(null),[u,$]=a.useState(r),[m,le]=a.useState(!1),[s,F]=a.useState(""),x=a.useRef(),I=a.useRef(!1),E=a.useRef(),B=a.useRef(),se=a.useRef(),P=a.useRef(!0),c=ye.useId("combobox"),D=`${c}-label`;if(!C&&!oe["aria-label"])throw new Error('The Combobox component needs a "label" or an "aria-label" props');a.useEffect(()=>{$(l.filterOptions(r,s))},[s,r]),a.useEffect(()=>{m&&x.current&&l.maintainScrollVisibility(x.current)},[i,m]),a.useLayoutEffect(()=>{P.current&&(P.current=!1)},[p]);const ie=m?`${c}-${i}`:"",V=()=>{S(null),F("")},ce=t=>{A&&A(t);const n=E.current.value;$(l.filterOptions(r,n)),w(0),re(null),s!==n&&F(n),m||b(!0,!1)},ue=t=>{const{key:n}=t,f=v&&s?u.length:u.length-1,y=l.getActionFromKey(n,m);switch(p&&!s&&n===Le.KeyboardKeys.BACKSPACE&&V(),y){case l.MenuActions.Next:{if(i===f){g(0);break}g(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.Previous:{if(i===0){g(f);break}g(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.Last:case l.MenuActions.First:{if(i===f){g(0);break}g(l.getUpdatedIndex(i,f,y));break}case l.MenuActions.CloseSelect:t.preventDefault(),M(i);break;case l.MenuActions.Close:t.preventDefault(),b(!1);break;case l.MenuActions.Open:b(!0);break}},de=t=>{if(t.preventDefault(),p&&!I.current&&F(""),I.current){I.current=!1;return}b(!1,!1)},g=t=>{w(t)},fe=t=>{g(t),M(t)},K=()=>{I.current=!0},M=t=>{const n=u[t];if(F(""),n){S(n.props.value),b(!1);return}v&&(Z(s),b(!1))},b=(t,n=!0)=>{le(t),n&&E.current.focus()},pe=a.Children.toArray(u).map((t,n)=>{const f=i===n;return a.cloneElement(t,{id:`${c}-${n}`,"aria-selected":ae===n,"aria-posinset":n+1,"aria-setsize":a.Children.toArray(u).length,ref(y){f&&(x.current=y)},onClick:()=>fe(n),onMouseDown:K,isSelected:f})}),be=()=>{E.current.focus(),R&&R(),V()},me=()=>{E.current.focus(),b(!0)},ge=()=>{const t=u.findIndex(n=>n.props?.children===s);return s&&t===-1},Ce=t=>{t.preventDefault(),b(t,!0)};return o.default.createElement(ke.Field,{hint:L,error:q,id:c,required:T},o.default.createElement(Se.VisuallyHidden,{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text"},p),o.default.createElement(Oe.Stack,{spacing:C||L||q?1:0},C&&o.default.createElement(qe.FieldLabel,{action:Q},C),o.default.createElement(k.MainRow,{ref:B,$disabled:d,hasError:q},o.default.createElement(k.InputContainer,{wrap:"wrap"},!s&&p&&o.default.createElement(k.ValueContainer,{id:`${c}-selected-value`},o.default.createElement(U.Typography,null,ne())),o.default.createElement(k.Input,{"aria-activedescendant":ie,"aria-autocomplete":"list","aria-controls":`${c}-listbox`,"aria-disabled":d,"aria-expanded":m,"aria-haspopup":"listbox","aria-labelledby":C?D:void 0,autoComplete:"off",autoCorrect:"off",id:c,onBlur:d?void 0:de,onClick:d?void 0:Ce,onInput:d?void 0:ce,onKeyDown:d?void 0:ue,placeholder:p?"":te,readOnly:d,ref:E,required:T,role:"combobox",spellCheck:"off",type:"text",value:s})),o.default.createElement(_.Flex,null,(p||s)&&o.default.createElement(N.IconBox,{id:`${c}-clear`,"aria-label":W,disabled:d,paddingLeft:3,as:"button",onClick:be,type:"button"},o.default.createElement(H.Cross,null)),o.default.createElement(N.CaretBox,{disabled:d,paddingLeft:3,"aria-hidden":!0,as:"button",onClick:me,tabIndex:-1,type:"button"},o.default.createElement(H.CarretDown,null)))),o.default.createElement(je.FieldHint,null),o.default.createElement(Me.FieldError,null)),m&&o.default.createElement(he.Popover,{id:`${c}-popover`,source:B,spacing:4,fullWidth:!0,intersectionId:`${c}-listbox-popover-intersection`,onReachEnd:J&&!j?ee:void 0},o.default.createElement("div",{role:"listbox",ref:se,id:`${c}-listbox`,"aria-labelledby":C?D:void 0},(Boolean(u.length)||v)&&o.default.createElement(o.default.Fragment,null,o.default.createElement(Ie.ComboboxList,{activeOptionRef:x,options:pe}),ge()&&v&&o.default.createElement(Fe.ComboboxOption,{isSelected:i===u.length,ref:t=>{i===u.length&&(x.current=t)},onMouseDown:K,onClick:()=>M(),taindex:0},G(s))),!u.length&&!v&&!j&&o.default.createElement(ve.Box,{paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2,ref:x},o.default.createElement(U.Typography,{textColor:"neutral800"},Y(s))),j&&o.default.createElement(_.Flex,{justifyContent:"center",alignItems:"center",paddingTop:2,paddingBottom:2},o.default.createElement(Ee.Loader,{small:!0},X)))))},O=r=>o.default.createElement(h,{...r,creatable:!0});h.defaultProps={"aria-label":void 0,clearLabel:"clear",creatable:!1,createMessage:r=>`Create "${r}"`,disabled:!1,error:void 0,hasMoreItems:!1,hint:void 0,label:void 0,loading:!1,loadingMessage:"Loading content...",noOptionsMessage:()=>"No results found",onClear:void 0,onCreateOption:void 0,onInputChange:void 0,onLoadMore:void 0,placeholder:"Select or enter a value",value:void 0};O.defaultProps=h.defaultProps;h.propTypes={"aria-label":e.default.string,children:e.default.oneOfType([e.default.arrayOf(e.default.node),e.default.node]),clearLabel:e.default.string,creatable:e.default.bool,createMessage:e.default.func,disabled:e.default.bool,error:e.default.string,hasMoreItems:e.default.bool,hint:e.default.oneOfType([e.default.string,e.default.node,e.default.arrayOf(e.default.node)]),label:e.default.string,labelAction:e.default.element,loading:e.default.bool,loadingMessage:e.default.string,noOptionsMessage:e.default.func,onChange:e.default.func.isRequired,onClear:e.default.func,onCreateOption:e.default.func,onInputChange:e.default.func,onLoadMore:e.default.func,placeholder:e.default.string,value:e.default.string};O.propTypes={...h.propTypes,onCreateOption:e.default.func.isRequired};exports.Combobox=h;exports.CreatableCombobox=O;