@strapi/design-system 1.4.0 → 1.4.2

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 (44) hide show
  1. package/LICENSE +4 -17
  2. package/dist/Alert/Alert.cjs +3 -3
  3. package/dist/Alert/Alert.js +16 -16
  4. package/dist/Alert/utils.cjs +1 -1
  5. package/dist/Alert/utils.js +3 -3
  6. package/dist/Avatar/Avatar.cjs +4 -4
  7. package/dist/Avatar/Avatar.js +41 -35
  8. package/dist/CarouselInput/CarouselInput.cjs +1 -1
  9. package/dist/CarouselInput/CarouselInput.js +2 -2
  10. package/dist/Combobox/Combobox.cjs +1 -1
  11. package/dist/Combobox/Combobox.js +80 -80
  12. package/dist/DatePicker/DatePicker.cjs +1 -1
  13. package/dist/DatePicker/DatePicker.js +83 -73
  14. package/dist/DateTimePicker/DateTimePicker.cjs +1 -1
  15. package/dist/DateTimePicker/DateTimePicker.js +58 -56
  16. package/dist/Field/Field.cjs +1 -1
  17. package/dist/Field/Field.js +22 -20
  18. package/dist/Field/FieldInput.cjs +4 -4
  19. package/dist/Field/FieldInput.js +31 -30
  20. package/dist/Field/FieldLabel.cjs +3 -3
  21. package/dist/Field/FieldLabel.js +43 -42
  22. package/dist/Link/Link.cjs +5 -5
  23. package/dist/Link/Link.js +19 -18
  24. package/dist/NumberInput/NumberInput.cjs +1 -1
  25. package/dist/NumberInput/NumberInput.js +2 -2
  26. package/dist/Select/Select.cjs +2 -2
  27. package/dist/Select/Select.js +32 -33
  28. package/dist/SimpleMenu/SimpleMenu.cjs +23 -7
  29. package/dist/SimpleMenu/SimpleMenu.js +121 -97
  30. package/dist/TextInput/TextInput.cjs +1 -1
  31. package/dist/TextInput/TextInput.js +2 -2
  32. package/dist/Textarea/Textarea.cjs +1 -1
  33. package/dist/Textarea/Textarea.js +2 -2
  34. package/dist/Textarea/TextareaInput.cjs +4 -4
  35. package/dist/Textarea/TextareaInput.js +23 -22
  36. package/dist/TimePicker/TimePicker.cjs +2 -2
  37. package/dist/TimePicker/TimePicker.js +44 -39
  38. package/dist/ToggleCheckbox/ToggleCheckbox.cjs +6 -6
  39. package/dist/ToggleCheckbox/ToggleCheckbox.js +44 -37
  40. package/dist/ToggleInput/ToggleInput.cjs +3 -3
  41. package/dist/ToggleInput/ToggleInput.js +25 -26
  42. package/dist/v2/SimpleMenu/SimpleMenu.cjs +21 -7
  43. package/dist/v2/SimpleMenu/SimpleMenu.js +126 -105
  44. package/package.json +4 -4
package/LICENSE CHANGED
@@ -1,20 +1,7 @@
1
- Copyright (c) 2012-2022 Scott Chacon and others
1
+ Copyright (c) 2015-present Strapi Solutions SAS
2
2
 
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10
4
 
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
5
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
13
6
 
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
7
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,4 +1,4 @@
1
- "use strict";var b=Object.defineProperty;var u=Object.getOwnPropertySymbols;var x=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var m=(e,r,t)=>r in e?b(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,d=(e,r)=>{for(var t in r||(r={}))x.call(r,t)&&m(e,t,r[t]);if(u)for(var t of u(r))y.call(r,t)&&m(e,t,r[t]);return e};var g=(e,r)=>{var t={};for(var l in e)x.call(e,l)&&r.indexOf(l)<0&&(t[l]=e[l]);if(e!=null&&u)for(var l of u(e))r.indexOf(l)<0&&y.call(e,l)&&(t[l]=e[l]);return t};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const R=require("react"),T=require("prop-types"),$=require("styled-components"),k=require("@strapi/icons/Information"),A=require("@strapi/icons/CheckCircle"),I=require("@strapi/icons/ExclamationMarkCircle"),j=require("@strapi/icons/Cross"),s=require("../Box/Box.cjs"),C=require("../Typography/Typography.cjs"),w=require("../Flex/Flex.cjs"),i=require("./utils.cjs"),v=require("../themes/utils.cjs"),n=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=n(R),o=n(T),c=n($),F=n(k),M=n(A),P=n(I),S=n(j),L=c.default(s.Box)`
1
+ "use strict";var b=Object.defineProperty;var u=Object.getOwnPropertySymbols;var x=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var m=(e,r,t)=>r in e?b(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,d=(e,r)=>{for(var t in r||(r={}))x.call(r,t)&&m(e,t,r[t]);if(u)for(var t of u(r))y.call(r,t)&&m(e,t,r[t]);return e};var g=(e,r)=>{var t={};for(var l in e)x.call(e,l)&&r.indexOf(l)<0&&(t[l]=e[l]);if(e!=null&&u)for(var l of u(e))r.indexOf(l)<0&&y.call(e,l)&&(t[l]=e[l]);return t};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const R=require("react"),T=require("prop-types"),$=require("styled-components"),k=require("@strapi/icons/Information"),w=require("@strapi/icons/CheckCircle"),A=require("@strapi/icons/ExclamationMarkCircle"),I=require("@strapi/icons/Cross"),s=require("../Box/Box.cjs"),C=require("../Typography/Typography.cjs"),j=require("../Flex/Flex.cjs"),i=require("./utils.cjs"),v=require("../themes/utils.cjs"),n=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=n(R),o=n(T),c=n($),F=n(k),M=n(w),P=n(A),S=n(I),L=c.default(s.Box)`
2
2
  flex: 1;
3
3
  flex-wrap: wrap;
4
4
  display: flex;
@@ -21,7 +21,7 @@
21
21
  svg path {
22
22
  fill: ${i.handleIconColor};
23
23
  }
24
- `,E=t=>{var l=t,{variant:e}=l,r=g(l,["variant"]);return e==="success"?a.default.createElement(M.default,d({},r)):e==="danger"?a.default.createElement(P.default,d({},r)):a.default.createElement(F.default,d({},r))},D=c.default(s.Box)`
24
+ `,E=t=>{var l=t,{variant:e}=l,r=g(l,["variant"]);return e==="success"?a.default.createElement(M.default,d({},r)):e==="danger"||e==="warning"?a.default.createElement(P.default,d({},r)):a.default.createElement(F.default,d({},r))},D=c.default(s.Box)`
25
25
  // Checked with the designers, validated
26
26
  padding-top: 1px;
27
27
 
@@ -32,4 +32,4 @@
32
32
  fill: ${i.handleIconColor};
33
33
  }
34
34
  }
35
- `,f=G=>{var h=G,{title:e,children:r,variant:t,onClose:l,closeLabel:q,titleAs:B,action:p}=h,_=g(h,["title","children","variant","onClose","closeLabel","titleAs","action"]);return a.default.createElement(W,d({hasRadius:!0,paddingLeft:5,paddingRight:6,paddingTop:5,variant:t},_),a.default.createElement(w.Flex,{alignItems:"flex-start"},a.default.createElement(O,{paddingRight:3,variant:t},a.default.createElement(E,{variant:t,"aria-hidden":!0})),a.default.createElement(L,{role:t==="danger"?"alert":"status"},a.default.createElement(s.Box,{paddingBottom:2,paddingRight:1},a.default.createElement(C.Typography,{fontWeight:"bold",textColor:"neutral800",as:B},e)),a.default.createElement(s.Box,{paddingBottom:p?2:5,paddingRight:2},a.default.createElement(C.Typography,{as:"p",textColor:"neutral800"},r)),p&&a.default.createElement(D,{paddingBottom:5,variant:t},p)),a.default.createElement(z,{onClick:l,"aria-label":q},a.default.createElement(S.default,{"aria-hidden":!0}))))};f.defaultProps={action:void 0,variant:"default",titleAs:"p"};f.propTypes={action:o.default.element,children:o.default.node.isRequired,closeLabel:o.default.string.isRequired,onClose:o.default.func.isRequired,title:o.default.string.isRequired,titleAs:o.default.string,variant:o.default.oneOf(["danger","success","default"])};E.propTypes={variant:f.propTypes.variant.isRequired};exports.Alert=f;
35
+ `,f=G=>{var h=G,{title:e,children:r,variant:t,onClose:l,closeLabel:q,titleAs:B,action:p}=h,_=g(h,["title","children","variant","onClose","closeLabel","titleAs","action"]);return a.default.createElement(W,d({hasRadius:!0,paddingLeft:5,paddingRight:6,paddingTop:5,variant:t},_),a.default.createElement(j.Flex,{alignItems:"flex-start"},a.default.createElement(O,{paddingRight:3,variant:t},a.default.createElement(E,{variant:t,"aria-hidden":!0})),a.default.createElement(L,{role:t==="danger"?"alert":"status"},a.default.createElement(s.Box,{paddingBottom:2,paddingRight:1},a.default.createElement(C.Typography,{fontWeight:"bold",textColor:"neutral800",as:B},e)),a.default.createElement(s.Box,{paddingBottom:p?2:5,paddingRight:2},a.default.createElement(C.Typography,{as:"p",textColor:"neutral800"},r)),p&&a.default.createElement(D,{paddingBottom:5,variant:t},p)),a.default.createElement(z,{onClick:l,"aria-label":q},a.default.createElement(S.default,{"aria-hidden":!0}))))};f.defaultProps={action:void 0,variant:"default",titleAs:"p"};f.propTypes={action:o.default.element,children:o.default.node.isRequired,closeLabel:o.default.string.isRequired,onClose:o.default.func.isRequired,title:o.default.string.isRequired,titleAs:o.default.string,variant:o.default.oneOf(["danger","success","default","warning"])};E.propTypes={variant:f.propTypes.variant.isRequired};exports.Alert=f;
@@ -1,7 +1,7 @@
1
1
  var y = Object.defineProperty;
2
2
  var s = Object.getOwnPropertySymbols;
3
3
  var h = Object.prototype.hasOwnProperty, E = Object.prototype.propertyIsEnumerable;
4
- var u = (e, r, t) => r in e ? y(e, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[r] = t, i = (e, r) => {
4
+ var u = (e, r, t) => r in e ? y(e, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[r] = t, l = (e, r) => {
5
5
  for (var t in r || (r = {}))
6
6
  h.call(r, t) && u(e, t, r[t]);
7
7
  if (s)
@@ -21,21 +21,21 @@ var m = (e, r) => {
21
21
  import o from "react";
22
22
  import a from "prop-types";
23
23
  import d from "styled-components";
24
- import B from "@strapi/icons/Information";
25
- import A from "@strapi/icons/CheckCircle";
26
- import k from "@strapi/icons/ExclamationMarkCircle";
27
- import w from "@strapi/icons/Cross";
28
- import { Box as l } from "../Box/Box.js";
24
+ import w from "@strapi/icons/Information";
25
+ import B from "@strapi/icons/CheckCircle";
26
+ import A from "@strapi/icons/ExclamationMarkCircle";
27
+ import k from "@strapi/icons/Cross";
28
+ import { Box as i } from "../Box/Box.js";
29
29
  import { Typography as x } from "../Typography/Typography.js";
30
30
  import { Flex as T } from "../Flex/Flex.js";
31
31
  import { handleBorderColor as q, handleBackgroundColor as I, handleIconColor as c } from "./utils.js";
32
32
  import { buttonFocusStyle as v } from "../themes/utils.js";
33
- const W = d(l)`
33
+ const W = d(i)`
34
34
  flex: 1;
35
35
  flex-wrap: wrap;
36
36
  display: flex;
37
37
  flex-direction: row;
38
- `, z = d(l)`
38
+ `, z = d(i)`
39
39
  border: 1px solid ${q};
40
40
  background: ${I};
41
41
  box-shadow: ${({ theme: e }) => e.shadows.filterShadow};
@@ -48,15 +48,15 @@ const W = d(l)`
48
48
  }
49
49
  margin-top: ${({ theme: e }) => e.spaces[1]};
50
50
  ${v};
51
- `, L = d(l)`
51
+ `, L = d(i)`
52
52
  font-size: ${20 / 16}rem;
53
53
  svg path {
54
54
  fill: ${c};
55
55
  }
56
56
  `, C = (t) => {
57
57
  var n = t, { variant: e } = n, r = m(n, ["variant"]);
58
- return e === "success" ? /* @__PURE__ */ o.createElement(A, i({}, r)) : e === "danger" ? /* @__PURE__ */ o.createElement(k, i({}, r)) : /* @__PURE__ */ o.createElement(B, i({}, r));
59
- }, P = d(l)`
58
+ return e === "success" ? /* @__PURE__ */ o.createElement(B, l({}, r)) : e === "danger" || e === "warning" ? /* @__PURE__ */ o.createElement(A, l({}, r)) : /* @__PURE__ */ o.createElement(w, l({}, r));
59
+ }, P = d(i)`
60
60
  // Checked with the designers, validated
61
61
  padding-top: 1px;
62
62
 
@@ -69,7 +69,7 @@ const W = d(l)`
69
69
  }
70
70
  `, f = (S) => {
71
71
  var g = S, { title: e, children: r, variant: t, onClose: n, closeLabel: R, titleAs: $, action: p } = g, b = m(g, ["title", "children", "variant", "onClose", "closeLabel", "titleAs", "action"]);
72
- return /* @__PURE__ */ o.createElement(z, i({
72
+ return /* @__PURE__ */ o.createElement(z, l({
73
73
  hasRadius: !0,
74
74
  paddingLeft: 5,
75
75
  paddingRight: 6,
@@ -85,14 +85,14 @@ const W = d(l)`
85
85
  "aria-hidden": !0
86
86
  })), /* @__PURE__ */ o.createElement(W, {
87
87
  role: t === "danger" ? "alert" : "status"
88
- }, /* @__PURE__ */ o.createElement(l, {
88
+ }, /* @__PURE__ */ o.createElement(i, {
89
89
  paddingBottom: 2,
90
90
  paddingRight: 1
91
91
  }, /* @__PURE__ */ o.createElement(x, {
92
92
  fontWeight: "bold",
93
93
  textColor: "neutral800",
94
94
  as: $
95
- }, e)), /* @__PURE__ */ o.createElement(l, {
95
+ }, e)), /* @__PURE__ */ o.createElement(i, {
96
96
  paddingBottom: p ? 2 : 5,
97
97
  paddingRight: 2
98
98
  }, /* @__PURE__ */ o.createElement(x, {
@@ -104,7 +104,7 @@ const W = d(l)`
104
104
  }, p)), /* @__PURE__ */ o.createElement(F, {
105
105
  onClick: n,
106
106
  "aria-label": R
107
- }, /* @__PURE__ */ o.createElement(w, {
107
+ }, /* @__PURE__ */ o.createElement(k, {
108
108
  "aria-hidden": !0
109
109
  }))));
110
110
  };
@@ -120,7 +120,7 @@ f.propTypes = {
120
120
  onClose: a.func.isRequired,
121
121
  title: a.string.isRequired,
122
122
  titleAs: a.string,
123
- variant: a.oneOf(["danger", "success", "default"])
123
+ variant: a.oneOf(["danger", "success", "default", "warning"])
124
124
  };
125
125
  C.propTypes = {
126
126
  variant: f.propTypes.variant.isRequired
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=({theme:r,variant:o})=>o==="danger"?r.colors.danger100:o==="success"?r.colors.success100:r.colors.primary100,c=({theme:r,variant:o})=>o==="danger"?r.colors.danger200:o==="success"?r.colors.success200:r.colors.primary200,e=({theme:r,variant:o})=>o==="danger"?r.colors.danger700:o==="success"?r.colors.success700:r.colors.primary700;exports.handleBackgroundColor=s;exports.handleBorderColor=c;exports.handleIconColor=e;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=({theme:r,variant:o})=>o==="danger"?r.colors.danger100:o==="success"?r.colors.success100:o==="warning"?r.colors.warning100:r.colors.primary100,s=({theme:r,variant:o})=>o==="danger"?r.colors.danger200:o==="success"?r.colors.success200:o==="warning"?r.colors.warning200:r.colors.primary200,c=({theme:r,variant:o})=>o==="danger"?r.colors.danger700:o==="success"?r.colors.success700:o==="warning"?r.colors.warning700:r.colors.primary700;exports.handleBackgroundColor=n;exports.handleBorderColor=s;exports.handleIconColor=c;
@@ -1,6 +1,6 @@
1
- const s = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger100 : o === "success" ? r.colors.success100 : r.colors.primary100, c = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger200 : o === "success" ? r.colors.success200 : r.colors.primary200, n = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger700 : o === "success" ? r.colors.success700 : r.colors.primary700;
1
+ const s = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger100 : o === "success" ? r.colors.success100 : o === "warning" ? r.colors.warning100 : r.colors.primary100, n = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger200 : o === "success" ? r.colors.success200 : o === "warning" ? r.colors.warning200 : r.colors.primary200, c = ({ theme: r, variant: o }) => o === "danger" ? r.colors.danger700 : o === "success" ? r.colors.success700 : o === "warning" ? r.colors.warning700 : r.colors.primary700;
2
2
  export {
3
3
  s as handleBackgroundColor,
4
- c as handleBorderColor,
5
- n as handleIconColor
4
+ n as handleBorderColor,
5
+ c as handleIconColor
6
6
  };
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const d=require("react"),f=require("styled-components"),v=require("prop-types"),t=require("./constants.cjs"),g=require("../Typography/Typography.cjs"),h=require("../Flex/Flex.cjs"),l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},a=l(d),o=l(f),r=l(v),y=o.default.img`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react"),f=require("styled-components"),v=require("prop-types"),t=require("./constants.cjs"),g=require("../Typography/Typography.cjs"),h=require("../Flex/Flex.cjs"),s=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},i=s(c),o=s(f),a=s(v),y=o.default.img`
2
2
  border-radius: 50%;
3
3
  object-fit: cover;
4
4
  display: block;
@@ -14,7 +14,7 @@
14
14
  position: absolute;
15
15
  transform: translate(-${(t.previewSize-t.avatarSize)/2}px, -100%);
16
16
  margin-top: -${({theme:e})=>e.spaces[1]};
17
- `,S=o.default.div`
17
+ `,x=o.default.div`
18
18
  z-index: 1;
19
19
  border-radius: 30%;
20
20
  position: absolute;
@@ -22,8 +22,8 @@
22
22
  height: ${t.avatarSize/16}rem;
23
23
  background: ${({theme:e})=>e.colors.neutral0};
24
24
  opacity: 0.4;
25
- `,s=({src:e,alt:c,preview:i})=>{const[n,u]=d.useState(!1);return a.default.createElement("span",null,i&&n?a.default.createElement(b,{"aria-hidden":!0,alt:"",width:`${t.previewSize}px`,height:`${t.previewSize}px`,src:i===!0?e:i}):null,a.default.createElement(m,{hovering:i&&n,onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1)},i&&n?a.default.createElement(S,null):null,a.default.createElement(y,{src:e,alt:c,width:`${t.avatarSize}px`,height:`${t.avatarSize}px`})))},x=o.default(h.Flex)`
25
+ `,u=({src:e,alt:l,preview:r})=>{const[n,p]=c.useState(!1);return i.default.createElement("span",null,r&&n?i.default.createElement(b,{"aria-hidden":!0,alt:"",width:`${t.previewSize}px`,height:`${t.previewSize}px`,src:r===!0?e:r}):null,i.default.createElement(m,{hovering:r&&n,onMouseEnter:()=>p(!0),onMouseLeave:()=>p(!1)},r&&n?i.default.createElement(x,null):null,i.default.createElement(y,{src:e,alt:l,width:`${t.avatarSize}px`,height:`${t.avatarSize}px`})))},S=o.default(h.Flex)`
26
26
  span {
27
27
  line-height: 0;
28
28
  }
29
- `,p=({children:e})=>a.default.createElement(x,{borderRadius:"50%",width:`${t.avatarSize}px`,height:`${t.avatarSize}px`,background:"primary600",justifyContent:"center"},a.default.createElement(g.Typography,{fontWeight:"bold",textColor:"buttonNeutral0",fontSize:0,textTransform:"uppercase"},e));p.propTypes={children:r.default.node.isRequired};s.defaultProps={alt:void 0,preview:void 0};s.propTypes={alt:r.default.string,preview:r.default.oneOfType([r.default.string,r.default.bool]),src:r.default.string.isRequired};exports.Avatar=s;exports.Initials=p;
29
+ `,d=({children:e,background:l,textColor:r})=>i.default.createElement(S,{background:l,borderRadius:"50%",width:`${t.avatarSize}px`,height:`${t.avatarSize}px`,justifyContent:"center"},i.default.createElement(g.Typography,{fontSize:0,fontWeight:"bold",textColor:r,textTransform:"uppercase"},e));d.defaultProps={background:"primary600",textColor:"buttonNeutral0"};d.propTypes={background:a.default.string,children:a.default.node.isRequired,textColor:a.default.string};u.defaultProps={alt:void 0,preview:void 0};u.propTypes={alt:a.default.string,preview:a.default.oneOfType([a.default.string,a.default.bool]),src:a.default.string.isRequired};exports.Avatar=u;exports.Initials=d;
@@ -1,26 +1,26 @@
1
- import r, { useState as m } from "react";
1
+ import i, { useState as m } from "react";
2
2
  import a from "styled-components";
3
- import i from "prop-types";
4
- import { avatarSize as t, previewSize as s } from "./constants.js";
5
- import { Typography as c } from "../Typography/Typography.js";
6
- import { Flex as u } from "../Flex/Flex.js";
3
+ import r from "prop-types";
4
+ import { avatarSize as t, previewSize as l } from "./constants.js";
5
+ import { Typography as u } from "../Typography/Typography.js";
6
+ import { Flex as g } from "../Flex/Flex.js";
7
7
  const h = a.img`
8
8
  border-radius: 50%;
9
9
  object-fit: cover;
10
10
  display: block;
11
11
  position: relative;
12
- `, g = a.div`
12
+ `, f = a.div`
13
13
  position: relative;
14
14
  width: ${t / 16}rem;
15
15
  height: ${t / 16}rem;
16
16
  z-index: ${({ hovering: e }) => e ? 1 : void 0};
17
- `, f = a.img`
17
+ `, v = a.img`
18
18
  border-radius: 50%;
19
19
  object-fit: cover;
20
20
  position: absolute;
21
- transform: translate(-${(s - t) / 2}px, -100%);
21
+ transform: translate(-${(l - t) / 2}px, -100%);
22
22
  margin-top: -${({ theme: e }) => e.spaces[1]};
23
- `, v = a.div`
23
+ `, b = a.div`
24
24
  z-index: 1;
25
25
  border-radius: 30%;
26
26
  position: absolute;
@@ -28,53 +28,59 @@ const h = a.img`
28
28
  height: ${t / 16}rem;
29
29
  background: ${({ theme: e }) => e.colors.neutral0};
30
30
  opacity: 0.4;
31
- `, p = ({ src: e, alt: d, preview: o }) => {
32
- const [n, l] = m(!1);
33
- return /* @__PURE__ */ r.createElement("span", null, o && n ? /* @__PURE__ */ r.createElement(f, {
31
+ `, d = ({ src: e, alt: n, preview: o }) => {
32
+ const [s, p] = m(!1);
33
+ return /* @__PURE__ */ i.createElement("span", null, o && s ? /* @__PURE__ */ i.createElement(v, {
34
34
  "aria-hidden": !0,
35
35
  alt: "",
36
- width: `${s}px`,
37
- height: `${s}px`,
36
+ width: `${l}px`,
37
+ height: `${l}px`,
38
38
  src: o === !0 ? e : o
39
- }) : null, /* @__PURE__ */ r.createElement(g, {
40
- hovering: o && n,
41
- onMouseEnter: () => l(!0),
42
- onMouseLeave: () => l(!1)
43
- }, o && n ? /* @__PURE__ */ r.createElement(v, null) : null, /* @__PURE__ */ r.createElement(h, {
39
+ }) : null, /* @__PURE__ */ i.createElement(f, {
40
+ hovering: o && s,
41
+ onMouseEnter: () => p(!0),
42
+ onMouseLeave: () => p(!1)
43
+ }, o && s ? /* @__PURE__ */ i.createElement(b, null) : null, /* @__PURE__ */ i.createElement(h, {
44
44
  src: e,
45
- alt: d,
45
+ alt: n,
46
46
  width: `${t}px`,
47
47
  height: `${t}px`
48
48
  })));
49
- }, b = a(u)`
49
+ }, x = a(g)`
50
50
  span {
51
51
  line-height: 0;
52
52
  }
53
- `, $ = ({ children: e }) => /* @__PURE__ */ r.createElement(b, {
53
+ `, c = ({ children: e, background: n, textColor: o }) => /* @__PURE__ */ i.createElement(x, {
54
+ background: n,
54
55
  borderRadius: "50%",
55
56
  width: `${t}px`,
56
57
  height: `${t}px`,
57
- background: "primary600",
58
58
  justifyContent: "center"
59
- }, /* @__PURE__ */ r.createElement(c, {
60
- fontWeight: "bold",
61
- textColor: "buttonNeutral0",
59
+ }, /* @__PURE__ */ i.createElement(u, {
62
60
  fontSize: 0,
61
+ fontWeight: "bold",
62
+ textColor: o,
63
63
  textTransform: "uppercase"
64
64
  }, e));
65
- $.propTypes = {
66
- children: i.node.isRequired
65
+ c.defaultProps = {
66
+ background: "primary600",
67
+ textColor: "buttonNeutral0"
68
+ };
69
+ c.propTypes = {
70
+ background: r.string,
71
+ children: r.node.isRequired,
72
+ textColor: r.string
67
73
  };
68
- p.defaultProps = {
74
+ d.defaultProps = {
69
75
  alt: void 0,
70
76
  preview: void 0
71
77
  };
72
- p.propTypes = {
73
- alt: i.string,
74
- preview: i.oneOfType([i.string, i.bool]),
75
- src: i.string.isRequired
78
+ d.propTypes = {
79
+ alt: r.string,
80
+ preview: r.oneOfType([r.string, r.bool]),
81
+ src: r.string.isRequired
76
82
  };
77
83
  export {
78
- p as Avatar,
79
- $ as Initials
84
+ d as Avatar,
85
+ c as Initials
80
86
  };
@@ -1 +1 @@
1
- "use strict";var _=Object.defineProperty;var u=Object.getOwnPropertySymbols;var f=Object.prototype.hasOwnProperty,p=Object.prototype.propertyIsEnumerable;var c=(e,i,r)=>i in e?_(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r,F=(e,i)=>{for(var r in i||(i={}))f.call(i,r)&&c(e,r,i[r]);if(u)for(var r of u(i))p.call(i,r)&&c(e,r,i[r]);return e};var q=(e,i)=>{var r={};for(var l in e)f.call(e,l)&&i.indexOf(l)<0&&(r[l]=e[l]);if(e!=null&&u)for(var l of u(e))i.indexOf(l)<0&&p.call(e,l)&&(r[l]=e[l]);return r};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("react"),P=require("prop-types"),T=require("./Carousel.cjs"),h=require("../Field/Field.cjs"),k=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const x=require("../Field/FieldHint.cjs"),A=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const H=require("../Stack/Stack.cjs"),O=require("../helpers/useId.cjs"),b=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},d=b(C),t=b(P),n=M=>{var s=M,{actions:e,children:i,error:r,hint:l,label:a,labelAction:g,nextLabel:j,onNext:y,onPrevious:v,previousLabel:m,required:E,secondaryLabel:R,selectedSlide:L,id:I}=s,S=q(s,["actions","children","error","hint","label","labelAction","nextLabel","onNext","onPrevious","previousLabel","required","secondaryLabel","selectedSlide","id"]);const o=O.useId("carouselinput",I);return d.default.createElement(h.Field,{hint:l,error:r,id:o},d.default.createElement(H.Stack,{spacing:1},a&&d.default.createElement(k.FieldLabel,{required:E,action:g},a),d.default.createElement(T.Carousel,F({actions:e,label:a,nextLabel:j,onNext:y,onPrevious:v,previousLabel:m,secondaryLabel:R,selectedSlide:L,id:o},S),i),d.default.createElement(x.FieldHint,null),d.default.createElement(A.FieldError,null)))};n.defaultProps={actions:void 0,error:void 0,hint:void 0,id:void 0,labelAction:void 0,required:!1,secondaryLabel:void 0};n.propTypes={actions:t.default.node,children:t.default.node.isRequired,error:t.default.string,hint:t.default.oneOfType([t.default.string,t.default.node,t.default.arrayOf(t.default.node)]),id:t.default.string,label:t.default.string.isRequired,labelAction:t.default.element,nextLabel:t.default.string.isRequired,onNext:t.default.func.isRequired,onPrevious:t.default.func.isRequired,previousLabel:t.default.string.isRequired,required:t.default.bool,secondaryLabel:t.default.string,selectedSlide:t.default.number.isRequired};exports.CarouselInput=n;
1
+ "use strict";var _=Object.defineProperty;var u=Object.getOwnPropertySymbols;var f=Object.prototype.hasOwnProperty,p=Object.prototype.propertyIsEnumerable;var c=(e,i,r)=>i in e?_(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r,F=(e,i)=>{for(var r in i||(i={}))f.call(i,r)&&c(e,r,i[r]);if(u)for(var r of u(i))p.call(i,r)&&c(e,r,i[r]);return e};var q=(e,i)=>{var r={};for(var l in e)f.call(e,l)&&i.indexOf(l)<0&&(r[l]=e[l]);if(e!=null&&u)for(var l of u(e))i.indexOf(l)<0&&p.call(e,l)&&(r[l]=e[l]);return r};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("react"),P=require("prop-types"),T=require("./Carousel.cjs"),h=require("../Field/Field.cjs"),k=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const x=require("../Field/FieldHint.cjs"),A=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const H=require("../Stack/Stack.cjs"),O=require("../helpers/useId.cjs"),b=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},d=b(C),t=b(P),n=M=>{var s=M,{actions:e,children:i,error:r,hint:l,label:a,labelAction:g,nextLabel:j,onNext:y,onPrevious:v,previousLabel:m,required:E,secondaryLabel:R,selectedSlide:L,id:I}=s,S=q(s,["actions","children","error","hint","label","labelAction","nextLabel","onNext","onPrevious","previousLabel","required","secondaryLabel","selectedSlide","id"]);const o=O.useId("carouselinput",I);return d.default.createElement(h.Field,{hint:l,error:r,id:o,required:E},d.default.createElement(H.Stack,{spacing:1},a&&d.default.createElement(k.FieldLabel,{action:g},a),d.default.createElement(T.Carousel,F({actions:e,label:a,nextLabel:j,onNext:y,onPrevious:v,previousLabel:m,secondaryLabel:R,selectedSlide:L,id:o},S),i),d.default.createElement(x.FieldHint,null),d.default.createElement(A.FieldError,null)))};n.defaultProps={actions:void 0,error:void 0,hint:void 0,id:void 0,labelAction:void 0,required:!1,secondaryLabel:void 0};n.propTypes={actions:t.default.node,children:t.default.node.isRequired,error:t.default.string,hint:t.default.oneOfType([t.default.string,t.default.node,t.default.arrayOf(t.default.node)]),id:t.default.string,label:t.default.string.isRequired,labelAction:t.default.element,nextLabel:t.default.string.isRequired,onNext:t.default.func.isRequired,onPrevious:t.default.func.isRequired,previousLabel:t.default.string.isRequired,required:t.default.bool,secondaryLabel:t.default.string,selectedSlide:t.default.number.isRequired};exports.CarouselInput=n;
@@ -66,11 +66,11 @@ const g = (k) => {
66
66
  return /* @__PURE__ */ n.createElement(T, {
67
67
  hint: t,
68
68
  error: i,
69
- id: a
69
+ id: a,
70
+ required: y
70
71
  }, /* @__PURE__ */ n.createElement(S, {
71
72
  spacing: 1
72
73
  }, l && /* @__PURE__ */ n.createElement(A, {
73
- required: y,
74
74
  action: q
75
75
  }, l), /* @__PURE__ */ n.createElement(P, c({
76
76
  actions: r,
@@ -1 +1 @@
1
- "use strict";var qe=Object.defineProperty,ke=Object.defineProperties;var je=Object.getOwnPropertyDescriptors;var j=Object.getOwnPropertySymbols;var J=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable;var G=(e,s,r)=>s in e?qe(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r,A=(e,s)=>{for(var r in s||(s={}))J.call(s,r)&&G(e,r,s[r]);if(j)for(var r of j(s))Q.call(s,r)&&G(e,r,s[r]);return e},T=(e,s)=>ke(e,je(s));var X=(e,s)=>{var r={};for(var f in e)J.call(e,f)&&s.indexOf(f)<0&&(r[f]=e[f]);if(e!=null&&j)for(var f of j(e))s.indexOf(f)<0&&Q.call(e,f)&&(r[f]=e[f]);return r};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react"),Me=require("prop-types"),Oe=require("@strapi/icons/CarretDown"),Le=require("@strapi/icons/Cross"),Se=require("../helpers/useId.cjs"),c=require("./utils.cjs"),Y=require("../Flex/Flex.cjs"),Z=require("../Select/components.cjs"),Re=require("../Popover/Popover.cjs"),we=require("../Box/Box.cjs"),ee=require("../Typography/Typography.cjs"),Ae=require("../Loader/Loader.cjs"),M=require("./components.cjs"),Te=require("./ComboboxOption.cjs"),$e=require("./ComboboxList.cjs"),Be=require("../Field/Field.cjs"),De=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const Pe=require("../Field/FieldHint.cjs"),_e=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const Ve=require("../Stack/Stack.cjs"),Ke=require("../helpers/keyboardKeys.cjs"),He=require("../VisuallyHidden/VisuallyHidden.cjs"),O=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=O(l),t=O(Me),Ne=O(Oe),Ue=O(Le),F=ze=>{var V=ze,{children:e,clearLabel:s,creatable:r,createMessage:f,disabled:m,error:L,hasMoreItems:te,hint:B,label:h,labelAction:oe,loading:S,loadingMessage:ne,noOptionsMessage:ae,onChange:D,onClear:P,onCreateOption:re,onInputChange:_,onLoadMore:le,placeholder:se,required:ie,value:C}=V,ce=X(V,["children","clearLabel","creatable","createMessage","disabled","error","hasMoreItems","hint","label","labelAction","loading","loadingMessage","noOptionsMessage","onChange","onClear","onCreateOption","onInputChange","onLoadMore","placeholder","required","value"]);const ue=()=>{var o;return(o=e.find(a=>{var i;return((i=a.props)==null?void 0:i.value.toLowerCase())===C.toLowerCase()}).props)==null?void 0:o.children},[d,K]=l.useState(0),[de,fe]=l.useState(null),[b,H]=l.useState(e),[x,pe]=l.useState(!1),[u,q]=l.useState(""),v=l.useRef(),k=l.useRef(!1),I=l.useRef(),N=l.useRef(),be=l.useRef(),U=l.useRef(!0),p=Se.useId("combobox"),R=`${p}-label`;if(!h&&!ce["aria-label"])throw new Error('The Combobox component needs a "label" or an "aria-label" props');l.useEffect(()=>{H(c.filterOptions(e,u))},[u,e]),l.useEffect(()=>{x&&v.current&&c.maintainScrollVisibility(v.current)},[d,x]),l.useLayoutEffect(()=>{U.current&&(U.current=!1)},[C]);const me=x?`${p}-${d}`:"",z=()=>{D(null),q("")},Ce=o=>{_&&_(o);const a=I.current.value;H(c.filterOptions(e,a)),K(0),fe(null),u!==a&&q(a),x||g(!0,!1)},ge=o=>{const{key:a}=o,i=r&&u?b.length:b.length-1,E=c.getActionFromKey(a,x);switch(C&&!u&&a===Ke.KeyboardKeys.BACKSPACE&&z(),E){case c.MenuActions.Next:{if(d===i){y(0);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.Previous:{if(d===0){y(i);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.Last:case c.MenuActions.First:{if(d===i){y(0);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.CloseSelect:o.preventDefault(),w(d);break;case c.MenuActions.Close:o.preventDefault(),g(!1);break;case c.MenuActions.Open:g(!0);break}},xe=o=>{if(o.preventDefault(),C&&!k.current&&q(""),k.current){k.current=!1;return}g(!1,!1)},y=o=>{K(o)},ye=o=>{y(o),w(o)},W=()=>{k.current=!0},w=o=>{const a=b[o];if(q(""),a){D(a.props.value),g(!1);return}r&&(re(u),g(!1))},g=(o,a=!0)=>{pe(o),a&&I.current.focus()},he=l.Children.toArray(b).map((o,a)=>{const i=d===a;return l.cloneElement(o,{id:`${p}-${a}`,"aria-selected":de===a,"aria-posinset":a+1,"aria-setsize":l.Children.toArray(b).length,ref(E){i&&(v.current=E)},onClick:()=>ye(a),onMouseDown:W,isSelected:i})}),ve=()=>{I.current.focus(),P&&P(),z()},Ee=()=>{I.current.focus(),g(!0)},Fe=()=>{const o=b.findIndex(a=>{var i;return((i=a.props)==null?void 0:i.children)===u});return u&&o===-1},Ie=o=>{o.preventDefault(),g(o,!0)};return n.default.createElement(Be.Field,{hint:B,error:L,id:p},n.default.createElement(He.VisuallyHidden,{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text"},C),n.default.createElement(Ve.Stack,{spacing:h||B||L?1:0},h&&n.default.createElement(De.FieldLabel,{action:oe,required:ie,id:R},h),n.default.createElement(M.MainRow,{ref:N,$disabled:m,hasError:L},n.default.createElement(M.InputContainer,{wrap:"wrap"},!u&&C&&n.default.createElement(M.ValueContainer,{id:`${p}-selected-value`},n.default.createElement(ee.Typography,null,ue())),n.default.createElement(M.Input,{"aria-activedescendant":me,"aria-autocomplete":"list","aria-controls":`${p}-listbox`,"aria-disabled":m,"aria-expanded":x,"aria-haspopup":"listbox","aria-labelledby":h?R:void 0,id:p,onBlur:m?void 0:xe,onClick:m?void 0:Ie,onInput:m?void 0:Ce,onKeyDown:m?void 0:ge,placeholder:C?"":se,readOnly:m,ref:I,role:"combobox",autoComplete:"off",autoCorrect:"off",spellCheck:"off",type:"text",value:u})),n.default.createElement(Y.Flex,null,(C||u)&&n.default.createElement(Z.IconBox,{id:`${p}-clear`,"aria-label":s,disabled:m,paddingLeft:3,as:"button",onClick:ve,type:"button"},n.default.createElement(Ue.default,null)),n.default.createElement(Z.CaretBox,{disabled:m,paddingLeft:3,"aria-hidden":!0,as:"button",onClick:Ee,tabIndex:-1,type:"button"},n.default.createElement(Ne.default,null)))),n.default.createElement(Pe.FieldHint,null),n.default.createElement(_e.FieldError,null)),x&&n.default.createElement(Re.Popover,{id:`${p}-popover`,source:N,spacing:4,fullWidth:!0,intersectionId:`${p}-listbox-popover-intersection`,onReachEnd:te&&!S?le:void 0},n.default.createElement("div",{role:"listbox",ref:be,id:`${p}-listbox`,"aria-labelledby":h?R:void 0},(Boolean(b.length)||r)&&n.default.createElement(n.default.Fragment,null,n.default.createElement($e.ComboboxList,{activeOptionRef:v,options:he}),Fe()&&r&&n.default.createElement(Te.ComboboxOption,{isSelected:d===b.length,ref:o=>{d===b.length&&(v.current=o)},onMouseDown:W,onClick:()=>w(),taindex:0},f(u))),!b.length&&!r&&!S&&n.default.createElement(we.Box,{paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2,ref:v},n.default.createElement(ee.Typography,{textColor:"neutral800"},ae(u))),S&&n.default.createElement(Y.Flex,{justifyContent:"center",alignItems:"center",paddingTop:2,paddingBottom:2},n.default.createElement(Ae.Loader,{small:!0},ne)))))},$=e=>n.default.createElement(F,T(A({},e),{creatable:!0}));F.defaultProps={"aria-label":void 0,clearLabel:"clear",creatable:!1,createMessage:e=>`Create "${e}"`,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};$.defaultProps=F.defaultProps;F.propTypes={"aria-label":t.default.string,children:t.default.oneOfType([t.default.arrayOf(t.default.node),t.default.node]),clearLabel:t.default.string,creatable:t.default.bool,createMessage:t.default.func,disabled:t.default.bool,error:t.default.string,hasMoreItems:t.default.bool,hint:t.default.oneOfType([t.default.string,t.default.node,t.default.arrayOf(t.default.node)]),label:t.default.string,labelAction:t.default.element,loading:t.default.bool,loadingMessage:t.default.string,noOptionsMessage:t.default.func,onChange:t.default.func.isRequired,onClear:t.default.func,onCreateOption:t.default.func,onInputChange:t.default.func,onLoadMore:t.default.func,placeholder:t.default.string,value:t.default.string};$.propTypes=T(A({},F.propTypes),{onCreateOption:t.default.func.isRequired});exports.Combobox=F;exports.CreatableCombobox=$;
1
+ "use strict";var qe=Object.defineProperty,ke=Object.defineProperties;var je=Object.getOwnPropertyDescriptors;var j=Object.getOwnPropertySymbols;var Q=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable;var J=(e,s,r)=>s in e?qe(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r,w=(e,s)=>{for(var r in s||(s={}))Q.call(s,r)&&J(e,r,s[r]);if(j)for(var r of j(s))X.call(s,r)&&J(e,r,s[r]);return e},A=(e,s)=>ke(e,je(s));var Y=(e,s)=>{var r={};for(var f in e)Q.call(e,f)&&s.indexOf(f)<0&&(r[f]=e[f]);if(e!=null&&j)for(var f of j(e))s.indexOf(f)<0&&X.call(e,f)&&(r[f]=e[f]);return r};Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react"),Me=require("prop-types"),Oe=require("@strapi/icons/CarretDown"),Le=require("@strapi/icons/Cross"),Se=require("../helpers/useId.cjs"),c=require("./utils.cjs"),Z=require("../Flex/Flex.cjs"),ee=require("../Select/components.cjs"),Re=require("../Popover/Popover.cjs"),we=require("../Box/Box.cjs"),te=require("../Typography/Typography.cjs"),Ae=require("../Loader/Loader.cjs"),M=require("./components.cjs"),Te=require("./ComboboxOption.cjs"),$e=require("./ComboboxList.cjs"),Be=require("../Field/Field.cjs"),De=require("../Field/FieldLabel.cjs");require("../Field/FieldInput.cjs");const Pe=require("../Field/FieldHint.cjs"),_e=require("../Field/FieldError.cjs");require("../Field/FieldContext.cjs");require("../Field/FieldAction.cjs");const Ve=require("../Stack/Stack.cjs"),Ke=require("../helpers/keyboardKeys.cjs"),He=require("../VisuallyHidden/VisuallyHidden.cjs"),O=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},n=O(l),t=O(Me),Ne=O(Oe),Ue=O(Le),F=ze=>{var V=ze,{children:e,clearLabel:s,creatable:r,createMessage:f,disabled:m,error:L,hasMoreItems:oe,hint:$,label:h,labelAction:ne,loading:S,loadingMessage:ae,noOptionsMessage:re,onChange:B,onClear:D,onCreateOption:le,onInputChange:P,onLoadMore:se,placeholder:ie,required:_,value:C}=V,ce=Y(V,["children","clearLabel","creatable","createMessage","disabled","error","hasMoreItems","hint","label","labelAction","loading","loadingMessage","noOptionsMessage","onChange","onClear","onCreateOption","onInputChange","onLoadMore","placeholder","required","value"]);const ue=()=>{var o;return(o=e.find(a=>{var i;return((i=a.props)==null?void 0:i.value.toLowerCase())===C.toLowerCase()}).props)==null?void 0:o.children},[d,K]=l.useState(0),[de,fe]=l.useState(null),[b,H]=l.useState(e),[x,pe]=l.useState(!1),[u,q]=l.useState(""),v=l.useRef(),k=l.useRef(!1),I=l.useRef(),N=l.useRef(),be=l.useRef(),U=l.useRef(!0),p=Se.useId("combobox"),z=`${p}-label`;if(!h&&!ce["aria-label"])throw new Error('The Combobox component needs a "label" or an "aria-label" props');l.useEffect(()=>{H(c.filterOptions(e,u))},[u,e]),l.useEffect(()=>{x&&v.current&&c.maintainScrollVisibility(v.current)},[d,x]),l.useLayoutEffect(()=>{U.current&&(U.current=!1)},[C]);const me=x?`${p}-${d}`:"",W=()=>{B(null),q("")},Ce=o=>{P&&P(o);const a=I.current.value;H(c.filterOptions(e,a)),K(0),fe(null),u!==a&&q(a),x||g(!0,!1)},ge=o=>{const{key:a}=o,i=r&&u?b.length:b.length-1,E=c.getActionFromKey(a,x);switch(C&&!u&&a===Ke.KeyboardKeys.BACKSPACE&&W(),E){case c.MenuActions.Next:{if(d===i){y(0);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.Previous:{if(d===0){y(i);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.Last:case c.MenuActions.First:{if(d===i){y(0);break}y(c.getUpdatedIndex(d,i,E));break}case c.MenuActions.CloseSelect:o.preventDefault(),R(d);break;case c.MenuActions.Close:o.preventDefault(),g(!1);break;case c.MenuActions.Open:g(!0);break}},xe=o=>{if(o.preventDefault(),C&&!k.current&&q(""),k.current){k.current=!1;return}g(!1,!1)},y=o=>{K(o)},ye=o=>{y(o),R(o)},G=()=>{k.current=!0},R=o=>{const a=b[o];if(q(""),a){B(a.props.value),g(!1);return}r&&(le(u),g(!1))},g=(o,a=!0)=>{pe(o),a&&I.current.focus()},he=l.Children.toArray(b).map((o,a)=>{const i=d===a;return l.cloneElement(o,{id:`${p}-${a}`,"aria-selected":de===a,"aria-posinset":a+1,"aria-setsize":l.Children.toArray(b).length,ref(E){i&&(v.current=E)},onClick:()=>ye(a),onMouseDown:G,isSelected:i})}),ve=()=>{I.current.focus(),D&&D(),W()},Ee=()=>{I.current.focus(),g(!0)},Fe=()=>{const o=b.findIndex(a=>{var i;return((i=a.props)==null?void 0:i.children)===u});return u&&o===-1},Ie=o=>{o.preventDefault(),g(o,!0)};return n.default.createElement(Be.Field,{hint:$,error:L,id:p,required:_},n.default.createElement(He.VisuallyHidden,{"aria-live":"polite","aria-atomic":"false","aria-relevant":"additions text"},C),n.default.createElement(Ve.Stack,{spacing:h||$||L?1:0},h&&n.default.createElement(De.FieldLabel,{action:ne},h),n.default.createElement(M.MainRow,{ref:N,$disabled:m,hasError:L},n.default.createElement(M.InputContainer,{wrap:"wrap"},!u&&C&&n.default.createElement(M.ValueContainer,{id:`${p}-selected-value`},n.default.createElement(te.Typography,null,ue())),n.default.createElement(M.Input,{"aria-activedescendant":me,"aria-autocomplete":"list","aria-controls":`${p}-listbox`,"aria-disabled":m,"aria-expanded":x,"aria-haspopup":"listbox","aria-labelledby":h?z:void 0,autoComplete:"off",autoCorrect:"off",id:p,onBlur:m?void 0:xe,onClick:m?void 0:Ie,onInput:m?void 0:Ce,onKeyDown:m?void 0:ge,placeholder:C?"":ie,readOnly:m,ref:I,required:_,role:"combobox",spellCheck:"off",type:"text",value:u})),n.default.createElement(Z.Flex,null,(C||u)&&n.default.createElement(ee.IconBox,{id:`${p}-clear`,"aria-label":s,disabled:m,paddingLeft:3,as:"button",onClick:ve,type:"button"},n.default.createElement(Ue.default,null)),n.default.createElement(ee.CaretBox,{disabled:m,paddingLeft:3,"aria-hidden":!0,as:"button",onClick:Ee,tabIndex:-1,type:"button"},n.default.createElement(Ne.default,null)))),n.default.createElement(Pe.FieldHint,null),n.default.createElement(_e.FieldError,null)),x&&n.default.createElement(Re.Popover,{id:`${p}-popover`,source:N,spacing:4,fullWidth:!0,intersectionId:`${p}-listbox-popover-intersection`,onReachEnd:oe&&!S?se:void 0},n.default.createElement("div",{role:"listbox",ref:be,id:`${p}-listbox`,"aria-labelledby":h?z:void 0},(Boolean(b.length)||r)&&n.default.createElement(n.default.Fragment,null,n.default.createElement($e.ComboboxList,{activeOptionRef:v,options:he}),Fe()&&r&&n.default.createElement(Te.ComboboxOption,{isSelected:d===b.length,ref:o=>{d===b.length&&(v.current=o)},onMouseDown:G,onClick:()=>R(),taindex:0},f(u))),!b.length&&!r&&!S&&n.default.createElement(we.Box,{paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2,ref:v},n.default.createElement(te.Typography,{textColor:"neutral800"},re(u))),S&&n.default.createElement(Z.Flex,{justifyContent:"center",alignItems:"center",paddingTop:2,paddingBottom:2},n.default.createElement(Ae.Loader,{small:!0},ae)))))},T=e=>n.default.createElement(F,A(w({},e),{creatable:!0}));F.defaultProps={"aria-label":void 0,clearLabel:"clear",creatable:!1,createMessage:e=>`Create "${e}"`,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};T.defaultProps=F.defaultProps;F.propTypes={"aria-label":t.default.string,children:t.default.oneOfType([t.default.arrayOf(t.default.node),t.default.node]),clearLabel:t.default.string,creatable:t.default.bool,createMessage:t.default.func,disabled:t.default.bool,error:t.default.string,hasMoreItems:t.default.bool,hint:t.default.oneOfType([t.default.string,t.default.node,t.default.arrayOf(t.default.node)]),label:t.default.string,labelAction:t.default.element,loading:t.default.bool,loadingMessage:t.default.string,noOptionsMessage:t.default.func,onChange:t.default.func.isRequired,onClear:t.default.func,onCreateOption:t.default.func,onInputChange:t.default.func,onLoadMore:t.default.func,placeholder:t.default.string,value:t.default.string};T.propTypes=A(w({},F.propTypes),{onCreateOption:t.default.func.isRequired});exports.Combobox=F;exports.CreatableCombobox=T;