@strapi/design-system 1.6.0 → 1.6.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 (101) hide show
  1. package/dist/Accordion/Accordion.cjs +5 -5
  2. package/dist/Accordion/Accordion.js +24 -22
  3. package/dist/Avatar/Avatar.cjs +5 -16
  4. package/dist/Avatar/Avatar.js +44 -48
  5. package/dist/BaseRadio/BaseRadio.cjs +2 -2
  6. package/dist/BaseRadio/BaseRadio.js +25 -23
  7. package/dist/Button/utils.cjs +1 -1
  8. package/dist/Button/utils.js +1 -1
  9. package/dist/Card/Card.cjs +1 -1
  10. package/dist/Card/Card.js +1 -1
  11. package/dist/Card/CardHeader.cjs +1 -2
  12. package/dist/Card/CardHeader.js +1 -1
  13. package/dist/Card/CardTimer.cjs +1 -5
  14. package/dist/Card/CardTimer.js +14 -20
  15. package/dist/CarouselInput/CarouselInput.cjs +1 -1
  16. package/dist/CarouselInput/CarouselInput.js +9 -9
  17. package/dist/Checkbox/Checkbox.cjs +2 -2
  18. package/dist/Checkbox/Checkbox.js +16 -16
  19. package/dist/Combobox/Combobox.cjs +1 -1
  20. package/dist/Combobox/Combobox.js +139 -139
  21. package/dist/Combobox/ComboboxList.cjs +1 -1
  22. package/dist/Combobox/ComboboxList.js +5 -12
  23. package/dist/DateTimePicker/DateTimePicker.cjs +1 -1
  24. package/dist/DateTimePicker/DateTimePicker.js +71 -71
  25. package/dist/Dialog/Dialog.cjs +4 -7
  26. package/dist/Dialog/Dialog.js +30 -29
  27. package/dist/Field/Field.cjs +1 -1
  28. package/dist/Field/Field.js +6 -6
  29. package/dist/Field/FieldHint.cjs +1 -1
  30. package/dist/Field/FieldHint.js +4 -4
  31. package/dist/JSONInput/JSONInput.cjs +1 -1
  32. package/dist/JSONInput/JSONInput.js +45 -42
  33. package/dist/JSONInput/JSONInputContainer.cjs +5 -2
  34. package/dist/JSONInput/JSONInputContainer.js +6 -3
  35. package/dist/Layout/HeaderLayout.cjs +3 -8
  36. package/dist/Layout/HeaderLayout.js +38 -38
  37. package/dist/Main/SkipToContent.cjs +1 -2
  38. package/dist/Main/SkipToContent.js +1 -1
  39. package/dist/MainNav/MainNav.cjs +1 -6
  40. package/dist/MainNav/MainNav.js +15 -15
  41. package/dist/MainNav/NavFooter.cjs +1 -3
  42. package/dist/MainNav/NavFooter.js +3 -4
  43. package/dist/ModalLayout/ModalLayout.cjs +3 -9
  44. package/dist/ModalLayout/ModalLayout.js +24 -23
  45. package/dist/NumberInput/NumberInput.cjs +1 -1
  46. package/dist/NumberInput/NumberInput.js +18 -18
  47. package/dist/Select/Option.cjs +3 -7
  48. package/dist/Select/Option.js +6 -6
  49. package/dist/Select/Select.cjs +2 -2
  50. package/dist/Select/Select.js +57 -57
  51. package/dist/Select/SelectTags.cjs +1 -3
  52. package/dist/Select/SelectTags.js +4 -4
  53. package/dist/Select/SingleSelect.cjs +82 -0
  54. package/dist/Select/SingleSelect.js +285 -0
  55. package/dist/SimpleMenu/SimpleMenu.cjs +1 -1
  56. package/dist/SimpleMenu/SimpleMenu.js +10 -10
  57. package/dist/Stack/Stack.cjs +5 -5
  58. package/dist/Stack/Stack.js +7 -6
  59. package/dist/SubNav/SubNavHeader.cjs +1 -1
  60. package/dist/SubNav/SubNavHeader.js +15 -15
  61. package/dist/SubNav/SubNavLinkSection.cjs +2 -2
  62. package/dist/SubNav/SubNavLinkSection.js +6 -6
  63. package/dist/SubNav/SubNavSection.cjs +1 -1
  64. package/dist/SubNav/SubNavSection.js +12 -12
  65. package/dist/Table/Table.cjs +1 -3
  66. package/dist/Table/Table.js +2 -3
  67. package/dist/Tabs/TabGroup.cjs +1 -1
  68. package/dist/Tabs/TabGroup.js +11 -11
  69. package/dist/TextInput/TextInput.cjs +1 -1
  70. package/dist/TextInput/TextInput.js +18 -18
  71. package/dist/Textarea/Textarea.cjs +1 -1
  72. package/dist/Textarea/Textarea.js +1 -1
  73. package/dist/TimePicker/TimePicker.cjs +2 -2
  74. package/dist/TimePicker/TimePicker.js +1 -1
  75. package/dist/ToggleCheckbox/ToggleCheckbox.cjs +6 -6
  76. package/dist/ToggleCheckbox/ToggleCheckbox.js +45 -43
  77. package/dist/ToggleInput/ToggleInput.cjs +1 -1
  78. package/dist/ToggleInput/ToggleInput.js +10 -10
  79. package/dist/Tooltip/Tooltip.cjs +2 -3
  80. package/dist/Tooltip/Tooltip.js +18 -18
  81. package/dist/helpers/deprecations.cjs +1 -0
  82. package/dist/helpers/deprecations.js +13 -0
  83. package/dist/helpers/useId.cjs +1 -1
  84. package/dist/helpers/useId.js +11 -4
  85. package/dist/hooks/useIntersection.cjs +1 -0
  86. package/dist/hooks/useIntersection.js +23 -0
  87. package/dist/v2/MainNav/MainNav.cjs +1 -6
  88. package/dist/v2/MainNav/MainNav.js +15 -15
  89. package/dist/v2/MainNav/NavFooter.cjs +1 -3
  90. package/dist/v2/MainNav/NavFooter.js +3 -4
  91. package/dist/v2/SimpleMenu/SimpleMenu.cjs +1 -1
  92. package/dist/v2/SimpleMenu/SimpleMenu.js +12 -12
  93. package/dist/v2/SubNav/SubNavHeader.cjs +1 -1
  94. package/dist/v2/SubNav/SubNavHeader.js +15 -15
  95. package/dist/v2/SubNav/SubNavLinkSection.cjs +4 -4
  96. package/dist/v2/SubNav/SubNavLinkSection.js +8 -8
  97. package/dist/v2/SubNav/SubNavSection.cjs +1 -1
  98. package/dist/v2/SubNav/SubNavSection.js +4 -4
  99. package/package.json +3 -4
  100. package/dist/helpers/genId.cjs +0 -1
  101. package/dist/helpers/genId.js +0 -5
@@ -15,21 +15,21 @@ import { KeyboardKeys as j } from "../../helpers/keyboardKeys.js";
15
15
  const d = x(k)`
16
16
  width: ${24 / 16}rem;
17
17
  background-color: ${({ theme: l }) => l.colors.neutral200};
18
- `, u = ({ as: l, label: f, searchLabel: s, searchable: g, onChange: h, value: b, onClear: E, onSubmit: S, id: y }) => {
19
- const [a, c] = L(!1), m = $(a), C = _("subnav-searchbar-clear", y), o = p(), i = p();
18
+ `, f = ({ as: l, label: u, searchLabel: s, searchable: g, onChange: h, value: b, onClear: E, onSubmit: S, id: y }) => {
19
+ const [o, i] = L(!1), m = $(o), C = _(y), a = p(), c = p();
20
20
  w(() => {
21
- a && o.current && o.current.focus(), m && !a && i.current && i.current.focus();
22
- }, [a, m]);
21
+ o && a.current && a.current.focus(), m && !o && c.current && c.current.focus();
22
+ }, [o, m]);
23
23
  const v = () => {
24
- c((t) => !t);
24
+ i((t) => !t);
25
25
  }, B = (t) => {
26
- E(t), o.current.focus();
26
+ E(t), a.current.focus();
27
27
  }, T = (t) => {
28
- t.relatedTarget?.id !== C && c(!1);
28
+ t.relatedTarget?.id !== C && i(!1);
29
29
  }, R = (t) => {
30
- t.key === j.ESCAPE && c(!1);
30
+ t.key === j.ESCAPE && i(!1);
31
31
  };
32
- return a ? /* @__PURE__ */ e.createElement(n, {
32
+ return o ? /* @__PURE__ */ e.createElement(n, {
33
33
  paddingLeft: 4,
34
34
  paddingTop: 5,
35
35
  paddingBottom: 2,
@@ -40,7 +40,7 @@ const d = x(k)`
40
40
  onChange: h,
41
41
  placeholder: "e.g: strapi-plugin-abcd",
42
42
  onKeyDown: R,
43
- ref: o,
43
+ ref: a,
44
44
  onBlur: T,
45
45
  onClear: B,
46
46
  onSubmit: S,
@@ -60,8 +60,8 @@ const d = x(k)`
60
60
  }, /* @__PURE__ */ e.createElement(K, {
61
61
  variant: "beta",
62
62
  as: l
63
- }, f), g && /* @__PURE__ */ e.createElement(P, {
64
- ref: i,
63
+ }, u), g && /* @__PURE__ */ e.createElement(P, {
64
+ ref: c,
65
65
  onClick: v,
66
66
  label: s,
67
67
  icon: /* @__PURE__ */ e.createElement(D, null)
@@ -69,7 +69,7 @@ const d = x(k)`
69
69
  paddingTop: 4
70
70
  }, /* @__PURE__ */ e.createElement(d, null)));
71
71
  };
72
- u.defaultProps = {
72
+ f.defaultProps = {
73
73
  as: "h2",
74
74
  searchable: !1,
75
75
  onChange() {
@@ -82,7 +82,7 @@ u.defaultProps = {
82
82
  searchLabel: "",
83
83
  id: void 0
84
84
  };
85
- u.propTypes = {
85
+ f.propTypes = {
86
86
  as: r.string,
87
87
  id: r.string,
88
88
  label: r.string.isRequired,
@@ -94,5 +94,5 @@ u.propTypes = {
94
94
  value: r.string
95
95
  };
96
96
  export {
97
- u as SubNavHeader
97
+ f as SubNavHeader
98
98
  };
@@ -1,19 +1,19 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),m=require("prop-types"),h=require("styled-components"),x=require("@strapi/icons"),l=require("../../Box/Box.cjs"),b=require("../../Flex/Flex.cjs"),S=require("../../Typography/Typography.cjs"),q=require("../../helpers/useId.cjs"),d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=d(o),r=d(m),i=d(h),v=i.default(l.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),m=require("prop-types"),h=require("styled-components"),x=require("@strapi/icons"),l=require("../../Box/Box.cjs"),b=require("../../Flex/Flex.cjs"),S=require("../../Typography/Typography.cjs"),q=require("../../helpers/useId.cjs"),d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=d(o),r=d(m),i=d(h),E=i.default(l.Box)`
2
2
  svg {
3
3
  height: ${4/16}rem;
4
4
  path {
5
5
  fill: ${({theme:e})=>e.colors.neutral700};
6
6
  }
7
7
  }
8
- `,E=i.default.button`
8
+ `,k=i.default.button`
9
9
  border: none;
10
10
  padding: 0;
11
11
  background: transparent;
12
12
  display: flex;
13
13
  align-items: center;
14
- `,k=i.default.div`
14
+ `,v=i.default.div`
15
15
  display: flex;
16
16
  align-items: center;
17
17
  width: ${12/16}rem;
18
18
  transform: rotateX(${({rotated:e})=>e?"0deg":"180deg"});
19
- `,s=({label:e,children:c,id:p})=>{const[n,f]=o.useState(!0),u=q.useId("subnav-list",p),g=()=>{f(a=>!a)};return t.default.createElement(l.Box,null,t.default.createElement(v,{paddingLeft:7,paddingTop:2,paddingBottom:2,paddingRight:4},t.default.createElement(b.Flex,{justifyContent:"space-between"},t.default.createElement(E,{onClick:g,"aria-expanded":n,"aria-controls":u},t.default.createElement(k,{rotated:n},t.default.createElement(x.CarretDown,{"aria-hidden":!0})),t.default.createElement(l.Box,{paddingLeft:2},t.default.createElement(S.Typography,{as:"span",fontWeight:"semiBold",textColor:"neutral800"},e))))),n&&t.default.createElement("ul",{id:u},o.Children.map(c,(a,y)=>t.default.createElement("li",{key:y},a))))};s.defaultProps={id:void 0};s.propTypes={children:r.default.node.isRequired,id:r.default.string,label:r.default.string.isRequired};exports.SubNavLinkSection=s;
19
+ `,s=({label:e,children:c,id:p})=>{const[n,f]=o.useState(!0),u=q.useId(p),g=()=>{f(a=>!a)};return t.default.createElement(l.Box,null,t.default.createElement(E,{paddingLeft:7,paddingTop:2,paddingBottom:2,paddingRight:4},t.default.createElement(b.Flex,{justifyContent:"space-between"},t.default.createElement(k,{onClick:g,"aria-expanded":n,"aria-controls":u},t.default.createElement(v,{rotated:n},t.default.createElement(x.CarretDown,{"aria-hidden":!0})),t.default.createElement(l.Box,{paddingLeft:2},t.default.createElement(S.Typography,{as:"span",fontWeight:"semiBold",textColor:"neutral800"},e))))),n&&t.default.createElement("ul",{id:u},o.Children.map(c,(a,y)=>t.default.createElement("li",{key:y},a))))};s.defaultProps={id:void 0};s.propTypes={children:r.default.node.isRequired,id:r.default.string,label:r.default.string.isRequired};exports.SubNavLinkSection=s;
@@ -4,8 +4,8 @@ import a from "styled-components";
4
4
  import { CarretDown as h } from "@strapi/icons";
5
5
  import { Box as i } from "../../Box/Box.js";
6
6
  import { Flex as E } from "../../Flex/Flex.js";
7
- import { Typography as b } from "../../Typography/Typography.js";
8
- import { useId as y } from "../../helpers/useId.js";
7
+ import { Typography as y } from "../../Typography/Typography.js";
8
+ import { useId as b } from "../../helpers/useId.js";
9
9
  const k = a(i)`
10
10
  svg {
11
11
  height: ${4 / 16}rem;
@@ -13,19 +13,19 @@ const k = a(i)`
13
13
  fill: ${({ theme: t }) => t.colors.neutral700};
14
14
  }
15
15
  }
16
- `, v = a.button`
16
+ `, x = a.button`
17
17
  border: none;
18
18
  padding: 0;
19
19
  background: transparent;
20
20
  display: flex;
21
21
  align-items: center;
22
- `, x = a.div`
22
+ `, S = a.div`
23
23
  display: flex;
24
24
  align-items: center;
25
25
  width: ${12 / 16}rem;
26
26
  transform: rotateX(${({ rotated: t }) => t ? "0deg" : "180deg"});
27
27
  `, l = ({ label: t, children: p, id: s }) => {
28
- const [r, m] = f(!0), d = y("subnav-list", s), c = () => {
28
+ const [r, m] = f(!0), d = b(s), c = () => {
29
29
  m((n) => !n);
30
30
  };
31
31
  return /* @__PURE__ */ e.createElement(i, null, /* @__PURE__ */ e.createElement(k, {
@@ -35,17 +35,17 @@ const k = a(i)`
35
35
  paddingRight: 4
36
36
  }, /* @__PURE__ */ e.createElement(E, {
37
37
  justifyContent: "space-between"
38
- }, /* @__PURE__ */ e.createElement(v, {
38
+ }, /* @__PURE__ */ e.createElement(x, {
39
39
  onClick: c,
40
40
  "aria-expanded": r,
41
41
  "aria-controls": d
42
- }, /* @__PURE__ */ e.createElement(x, {
42
+ }, /* @__PURE__ */ e.createElement(S, {
43
43
  rotated: r
44
44
  }, /* @__PURE__ */ e.createElement(h, {
45
45
  "aria-hidden": !0
46
46
  })), /* @__PURE__ */ e.createElement(i, {
47
47
  paddingLeft: 2
48
- }, /* @__PURE__ */ e.createElement(b, {
48
+ }, /* @__PURE__ */ e.createElement(y, {
49
49
  as: "span",
50
50
  fontWeight: "semiBold",
51
51
  textColor: "neutral800"
@@ -5,4 +5,4 @@
5
5
  fill: ${({theme:e})=>e.colors.neutral500};
6
6
  }
7
7
  }
8
- `,s=({collapsable:e,label:c,badgeLabel:l,children:p,id:f})=>{const[i,g]=n.useState(!0),d=B.useId("subnav-list",f),S=()=>{g(o=>!o)};return t.default.createElement(h.Stack,{spacing:1},t.default.createElement(_,{paddingLeft:6,paddingTop:2,paddingBottom:2,paddingRight:4},t.default.createElement(u.Box,{position:"relative",paddingRight:l?6:0},t.default.createElement(q.SubNavSectionLabel,{onClick:S,ariaExpanded:i,ariaControls:d,collapsable:e,label:c}),l&&t.default.createElement(y.Badge,{backgroundColor:"neutral150",textColor:"neutral600",position:"absolute",right:0,top:"50%",transform:"translateY(-50%)"},l))),(!e||i)&&t.default.createElement("ol",{id:d},n.Children.map(p,(o,b)=>t.default.createElement("li",{key:b},o))))};s.defaultProps={badgeLabel:null,collapsable:!1,id:void 0};s.propTypes={badgeLabel:a.default.string,children:a.default.node.isRequired,collapsable:a.default.bool,id:a.default.string,label:a.default.string.isRequired};exports.SubNavSection=s;
8
+ `,s=({collapsable:e,label:c,badgeLabel:o,children:p,id:f})=>{const[i,g]=n.useState(!0),d=B.useId(f),S=()=>{g(l=>!l)};return t.default.createElement(h.Stack,{spacing:1},t.default.createElement(_,{paddingLeft:6,paddingTop:2,paddingBottom:2,paddingRight:4},t.default.createElement(u.Box,{position:"relative",paddingRight:o?6:0},t.default.createElement(q.SubNavSectionLabel,{onClick:S,ariaExpanded:i,ariaControls:d,collapsable:e,label:c}),o&&t.default.createElement(y.Badge,{backgroundColor:"neutral150",textColor:"neutral600",position:"absolute",right:0,top:"50%",transform:"translateY(-50%)"},o))),(!e||i)&&t.default.createElement("ol",{id:d},n.Children.map(p,(l,b)=>t.default.createElement("li",{key:b},l))))};s.defaultProps={badgeLabel:null,collapsable:!1,id:void 0};s.propTypes={badgeLabel:a.default.string,children:a.default.node.isRequired,collapsable:a.default.bool,id:a.default.string,label:a.default.string.isRequired};exports.SubNavSection=s;
@@ -4,8 +4,8 @@ import h from "styled-components";
4
4
  import { Box as l } from "../../Box/Box.js";
5
5
  import { Badge as E } from "../../Badge/Badge.js";
6
6
  import { Stack as S } from "../../Stack/Stack.js";
7
- import { SubNavSectionLabel as v } from "./SubNavSectionLabel.js";
8
- import { useId as k } from "../../helpers/useId.js";
7
+ import { SubNavSectionLabel as k } from "./SubNavSectionLabel.js";
8
+ import { useId as v } from "../../helpers/useId.js";
9
9
  const C = h(l)`
10
10
  svg {
11
11
  height: ${4 / 16}rem;
@@ -14,7 +14,7 @@ const C = h(l)`
14
14
  }
15
15
  }
16
16
  `, p = ({ collapsable: r, label: s, badgeLabel: o, children: d, id: m }) => {
17
- const [a, c] = f(!0), n = k("subnav-list", m), u = () => {
17
+ const [a, c] = f(!0), n = v(m), u = () => {
18
18
  c((i) => !i);
19
19
  };
20
20
  return /* @__PURE__ */ e.createElement(S, {
@@ -27,7 +27,7 @@ const C = h(l)`
27
27
  }, /* @__PURE__ */ e.createElement(l, {
28
28
  position: "relative",
29
29
  paddingRight: o ? 6 : 0
30
- }, /* @__PURE__ */ e.createElement(v, {
30
+ }, /* @__PURE__ */ e.createElement(k, {
31
31
  onClick: u,
32
32
  ariaExpanded: a,
33
33
  ariaControls: n,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@strapi/design-system",
3
- "version": "1.6.0",
3
+ "version": "1.6.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -29,7 +29,7 @@
29
29
  "devDependencies": {
30
30
  "@juggle/resize-observer": "^3.4.0",
31
31
  "@playwright/test": "1.27.1",
32
- "@strapi/icons": "^1.6.0",
32
+ "@strapi/icons": "^1.6.2",
33
33
  "@swc/core": "^1.3.11",
34
34
  "@swc/jest": "^0.2.23",
35
35
  "@testing-library/jest-dom": "5.16.5",
@@ -58,7 +58,6 @@
58
58
  },
59
59
  "scripts": {
60
60
  "develop": "vite build --watch",
61
- "prebuild": "rimraf dist",
62
61
  "build": "yarn build:prod",
63
62
  "build:prod": "vite build",
64
63
  "generate:types": "tsc --noEmit false --emitDeclarationOnly --declarationDir dist",
@@ -74,5 +73,5 @@
74
73
  "@types/react": "17.0.2",
75
74
  "@types/react-dom": "17.0.2"
76
75
  },
77
- "gitHead": "766fe3d1c3c863d5e44e7b78a10847deb6ca412e"
76
+ "gitHead": "5a9b4b4b34eeadcb762aa331727a4f1b944fdb3d"
78
77
  }
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});let e=0;const t=()=>++e;exports.genId=t;
@@ -1,5 +0,0 @@
1
- let e = 0;
2
- const t = () => ++e;
3
- export {
4
- t as genId
5
- };