@strapi/design-system 1.6.4 → 1.6.6

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 (168) hide show
  1. package/dist/Accordion/Accordion.cjs +1 -1
  2. package/dist/Accordion/Accordion.js +1 -1
  3. package/dist/Accordion/AccordionToggle.cjs +6 -6
  4. package/dist/Accordion/AccordionToggle.js +48 -51
  5. package/dist/BaseButton/BaseButton.cjs +3 -3
  6. package/dist/BaseButton/BaseButton.js +17 -16
  7. package/dist/BaseRadio/BaseRadio.cjs +1 -1
  8. package/dist/BaseRadio/BaseRadio.js +1 -1
  9. package/dist/Box/Box.cjs +3 -3
  10. package/dist/Box/Box.js +26 -26
  11. package/dist/Card/Card.cjs +1 -1
  12. package/dist/Card/Card.js +1 -1
  13. package/dist/CarouselInput/CarouselActions.cjs +1 -1
  14. package/dist/CarouselInput/CarouselActions.js +16 -4
  15. package/dist/CarouselInput/CarouselInput.cjs +1 -1
  16. package/dist/CarouselInput/CarouselInput.js +13 -13
  17. package/dist/Checkbox/Checkbox.cjs +2 -2
  18. package/dist/Checkbox/Checkbox.js +13 -13
  19. package/dist/Combobox/Combobox.cjs +1 -1
  20. package/dist/Combobox/Combobox.js +62 -63
  21. package/dist/DatePicker/DatePicker.cjs +8 -1
  22. package/dist/DatePicker/DatePicker.js +71 -98
  23. package/dist/DatePicker/DatePickerCalendar.cjs +1 -1
  24. package/dist/DatePicker/DatePickerCalendar.js +125 -57
  25. package/dist/DatePicker/DatePickerTd.cjs +4 -4
  26. package/dist/DatePicker/DatePickerTd.js +43 -26
  27. package/dist/DatePicker/DatePickerTh.cjs +3 -3
  28. package/dist/DatePicker/DatePickerTh.js +31 -15
  29. package/dist/DatePicker/components.cjs +8 -6
  30. package/dist/DatePicker/components.js +15 -13
  31. package/dist/DatePicker/utils/getDayOfWeek.js +8 -8
  32. package/dist/DatePicker/utils/getMonths.cjs +1 -1
  33. package/dist/DatePicker/utils/getMonths.js +3 -3
  34. package/dist/DatePicker/utils/getYears.cjs +1 -1
  35. package/dist/DatePicker/utils/getYears.js +1 -1
  36. package/dist/DateTimePicker/DateTimePicker.cjs +1 -1
  37. package/dist/DateTimePicker/DateTimePicker.js +97 -104
  38. package/dist/Dialog/Dialog.cjs +4 -4
  39. package/dist/Dialog/Dialog.js +2 -2
  40. package/dist/Dialog/DialogFooter.cjs +3 -3
  41. package/dist/Dialog/DialogFooter.js +2 -2
  42. package/dist/Field/Field.cjs +1 -1
  43. package/dist/Field/Field.js +31 -27
  44. package/dist/Field/FieldAction.cjs +2 -8
  45. package/dist/Field/FieldAction.js +27 -16
  46. package/dist/Field/FieldContext.cjs +1 -1
  47. package/dist/Field/FieldContext.js +2 -2
  48. package/dist/Field/FieldError.cjs +1 -1
  49. package/dist/Field/FieldError.js +14 -4
  50. package/dist/Field/FieldHint.cjs +1 -1
  51. package/dist/Field/FieldHint.js +17 -7
  52. package/dist/Field/FieldInput.cjs +14 -16
  53. package/dist/Field/FieldInput.js +104 -72
  54. package/dist/Field/FieldLabel.cjs +6 -3
  55. package/dist/Field/FieldLabel.js +43 -25
  56. package/dist/FocusTrap/FocusTrap.cjs +1 -1
  57. package/dist/FocusTrap/FocusTrap.js +34 -38
  58. package/dist/IconButton/IconButton.cjs +4 -4
  59. package/dist/IconButton/IconButton.js +32 -30
  60. package/dist/JSONInput/JSONInput.cjs +1 -1
  61. package/dist/JSONInput/JSONInput.js +29 -27
  62. package/dist/Layout/HeaderLayout.cjs +2 -2
  63. package/dist/Layout/HeaderLayout.js +3 -3
  64. package/dist/MainNav/NavSection.cjs +1 -1
  65. package/dist/MainNav/NavSection.js +33 -13
  66. package/dist/MainNav/NavSections.cjs +2 -2
  67. package/dist/MainNav/NavSections.js +20 -10
  68. package/dist/ModalLayout/ModalLayout.cjs +1 -1
  69. package/dist/ModalLayout/ModalLayout.js +1 -1
  70. package/dist/NumberInput/NumberInput.cjs +2 -2
  71. package/dist/NumberInput/NumberInput.js +32 -32
  72. package/dist/Popover/Popover.cjs +3 -3
  73. package/dist/Popover/Popover.js +1 -1
  74. package/dist/RawTable/RawCell.cjs +1 -1
  75. package/dist/RawTable/RawCell.js +64 -67
  76. package/dist/RawTable/RawTable.cjs +1 -1
  77. package/dist/RawTable/RawTable.js +39 -37
  78. package/dist/RawTable/RawTbody.cjs +1 -1
  79. package/dist/RawTable/RawTbody.js +14 -11
  80. package/dist/RawTable/RawThead.cjs +1 -1
  81. package/dist/RawTable/RawThead.js +13 -8
  82. package/dist/RawTable/RawTr.cjs +1 -1
  83. package/dist/RawTable/RawTr.js +20 -13
  84. package/dist/Searchbar/Searchbar.cjs +2 -2
  85. package/dist/Searchbar/Searchbar.js +7 -6
  86. package/dist/Select/Select.cjs +2 -2
  87. package/dist/Select/Select.js +66 -65
  88. package/dist/Select/SelectButton.cjs +3 -3
  89. package/dist/Select/SelectButton.js +17 -15
  90. package/dist/Select/SelectList.cjs +1 -1
  91. package/dist/Select/SelectList.js +10 -8
  92. package/dist/SimpleMenu/SimpleMenu.cjs +1 -1
  93. package/dist/SimpleMenu/SimpleMenu.js +1 -1
  94. package/dist/SubNav/SubNavHeader.cjs +2 -2
  95. package/dist/SubNav/SubNavHeader.js +2 -2
  96. package/dist/SubNav/SubNavLinkSection.cjs +3 -3
  97. package/dist/SubNav/SubNavLinkSection.js +1 -1
  98. package/dist/SubNav/SubNavSection.cjs +2 -2
  99. package/dist/SubNav/SubNavSection.js +7 -7
  100. package/dist/SubNav/SubNavSections.cjs +1 -1
  101. package/dist/SubNav/SubNavSections.js +17 -7
  102. package/dist/Tabs/TabGroup.cjs +1 -1
  103. package/dist/Tabs/TabGroup.js +1 -1
  104. package/dist/Tag/Tag.cjs +8 -8
  105. package/dist/Tag/Tag.js +52 -49
  106. package/dist/TextButton/TextButton.cjs +6 -12
  107. package/dist/TextButton/TextButton.js +32 -46
  108. package/dist/TextInput/TextInput.cjs +1 -1
  109. package/dist/TextInput/TextInput.js +48 -47
  110. package/dist/Textarea/Textarea.cjs +2 -2
  111. package/dist/Textarea/Textarea.js +12 -13
  112. package/dist/Textarea/TextareaInput.cjs +4 -4
  113. package/dist/Textarea/TextareaInput.js +13 -12
  114. package/dist/TimePicker/TimePicker.cjs +5 -7
  115. package/dist/TimePicker/TimePicker.js +48 -100
  116. package/dist/ToggleCheckbox/ToggleCheckbox.cjs +2 -2
  117. package/dist/ToggleCheckbox/ToggleCheckbox.js +1 -0
  118. package/dist/ToggleInput/ToggleInput.cjs +3 -3
  119. package/dist/ToggleInput/ToggleInput.js +28 -29
  120. package/dist/Tooltip/Tooltip.cjs +1 -1
  121. package/dist/Tooltip/Tooltip.js +1 -1
  122. package/dist/helpers/deprecations.cjs +1 -1
  123. package/dist/helpers/deprecations.js +7 -7
  124. package/dist/helpers/useElementOnScreen.cjs +1 -1
  125. package/dist/helpers/useElementOnScreen.js +4 -13
  126. package/dist/helpers/useId.cjs +1 -1
  127. package/dist/helpers/useId.js +4 -11
  128. package/dist/helpers/useIntersection.cjs +1 -1
  129. package/dist/helpers/useIntersection.js +4 -21
  130. package/dist/helpers/useLockScroll.cjs +1 -1
  131. package/dist/helpers/useLockScroll.js +4 -7
  132. package/dist/helpers/usePrevious.cjs +1 -1
  133. package/dist/helpers/usePrevious.js +4 -8
  134. package/dist/helpers/useResizeObserver.cjs +1 -1
  135. package/dist/helpers/useResizeObserver.js +4 -14
  136. package/dist/hooks/useElementOnScreen.cjs +1 -0
  137. package/dist/hooks/useElementOnScreen.js +15 -0
  138. package/dist/hooks/useIntersection.cjs +1 -1
  139. package/dist/hooks/useIntersection.js +3 -3
  140. package/dist/hooks/useLockScroll.cjs +1 -0
  141. package/dist/hooks/useLockScroll.js +9 -0
  142. package/dist/hooks/usePrevious.cjs +1 -0
  143. package/dist/hooks/usePrevious.js +10 -0
  144. package/dist/hooks/useResizeObserver.cjs +1 -0
  145. package/dist/hooks/useResizeObserver.js +16 -0
  146. package/dist/v2/MainNav/NavSection.cjs +1 -1
  147. package/dist/v2/MainNav/NavSection.js +33 -13
  148. package/dist/v2/MainNav/NavSections.cjs +2 -2
  149. package/dist/v2/MainNav/NavSections.js +20 -10
  150. package/dist/v2/SimpleMenu/SimpleMenu.cjs +1 -1
  151. package/dist/v2/SimpleMenu/SimpleMenu.js +1 -1
  152. package/dist/v2/SubNav/SubNavHeader.cjs +2 -2
  153. package/dist/v2/SubNav/SubNavHeader.js +2 -2
  154. package/dist/v2/SubNav/SubNavLinkSection.cjs +3 -3
  155. package/dist/v2/SubNav/SubNavLinkSection.js +1 -1
  156. package/dist/v2/SubNav/SubNavSection.cjs +2 -2
  157. package/dist/v2/SubNav/SubNavSection.js +10 -10
  158. package/dist/v2/SubNav/SubNavSections.cjs +1 -1
  159. package/dist/v2/SubNav/SubNavSections.js +17 -7
  160. package/package.json +5 -3
  161. package/dist/DateTimePicker/DateTimePickerProps.cjs +0 -1
  162. package/dist/DateTimePicker/DateTimePickerProps.js +0 -40
  163. package/dist/DateTimePicker/__tests__/parseDate.test.cjs +0 -1
  164. package/dist/DateTimePicker/__tests__/parseDate.test.js +0 -8
  165. package/dist/DateTimePicker/parseDate.cjs +0 -1
  166. package/dist/DateTimePicker/parseDate.js +0 -7
  167. package/dist/Select/SingleSelect.cjs +0 -82
  168. package/dist/Select/SingleSelect.js +0 -285
@@ -1,114 +1,107 @@
1
- import r, { useState as S, useEffect as x } from "react";
2
- import { dateTimePickerDefaultProps as C, dateTimePickerPropTypes as L } from "./DateTimePickerProps.js";
3
- import { parseDate as y } from "./parseDate.js";
4
- import { DatePicker as R } from "../DatePicker/DatePicker.js";
5
- import { Field as b } from "../Field/Field.js";
1
+ import { jsx as r, jsxs as D } from "react/jsx-runtime";
2
+ import { DatePicker as P } from "../DatePicker/DatePicker.js";
3
+ import { Field as V } from "../Field/Field.js";
6
4
  import { FieldLabel as j } from "../Field/FieldLabel.js";
7
5
  import "../Field/FieldInput.js";
8
- import { FieldHint as z } from "../Field/FieldHint.js";
9
- import { FieldError as A } from "../Field/FieldError.js";
6
+ import { FieldHint as q } from "../Field/FieldHint.js";
7
+ import { FieldError as v } from "../Field/FieldError.js";
10
8
  import "../Field/FieldContext.js";
11
9
  import "../Field/FieldAction.js";
12
- import { useId as B } from "../helpers/useId.js";
13
- import { Stack as H } from "../Stack/Stack.js";
14
- import { TimePicker as G } from "../TimePicker/TimePicker.js";
15
- const M = ({
16
- ariaLabel: g,
17
- clearLabel: T,
18
- disabled: E,
10
+ import { Flex as C } from "../Flex/Flex.js";
11
+ import { useControllableState as z } from "../hooks/useControllableState.js";
12
+ import { useId as B } from "../hooks/useId.js";
13
+ import { TimePicker as E } from "../TimePicker/TimePicker.js";
14
+ const te = ({
15
+ ariaLabel: s,
16
+ clearLabel: n = "clear",
17
+ disabled: f = !1,
19
18
  error: d,
20
- hint: p,
21
- label: l,
22
- labelAction: w,
23
- onChange: o,
24
- onClear: f,
19
+ hint: m,
20
+ id: b,
21
+ label: c,
22
+ labelAction: I,
23
+ onChange: T,
24
+ onClear: g,
25
25
  name: $,
26
- required: u,
27
- selectButtonTitle: h,
28
- size: k,
29
- step: F,
30
- value: a,
31
- ...P
26
+ required: p = !1,
27
+ selectButtonTitle: w = "select",
28
+ size: h = "M",
29
+ step: y = 1,
30
+ value: F,
31
+ ...H
32
32
  }) => {
33
- const n = y(a), [i, m] = S(n), [c, s] = S(
34
- n ? `${n.getHours()}:${n.getMinutes()}:${n.getSeconds()}` : null
35
- ), V = (e) => {
36
- m(e);
37
- let t;
38
- c ? (t = new Date(e), t.setHours(c.split(":")[0]), t.setMinutes(c.split(":")[1])) : (t = new Date(e), s(`${t.getHours()}:${t.getMinutes()}:${t.getSeconds()}`)), o && o(t);
39
- }, I = (e) => {
40
- s(e);
41
- const t = i ? new Date(i) : new Date();
42
- t.setHours(e.split(":")[0]), t.setMinutes(e.split(":")[1]), i || m(t), o && o(t);
43
- }, _ = () => {
44
- m(void 0), s(void 0), f();
45
- }, v = () => {
46
- s(void 0);
47
- let e;
48
- i && (e = new Date(i), e.setHours("00"), e.setMinutes("00")), o && o(e);
49
- };
50
- x(() => {
51
- if (a && +a != +i) {
52
- const e = y(a);
53
- m(e), s(
54
- e ? `${e.getHours()}:${e.getMinutes()}:${e.getSeconds()}` : null
55
- );
56
- } else
57
- a || (m(void 0), s(void 0));
58
- }, [a, i]);
59
- const D = B(P?.id);
60
- return /* @__PURE__ */ r.createElement(
61
- b,
62
- {
63
- name: $,
64
- role: "group",
65
- id: D,
66
- "aria-labelledby": D,
67
- hint: p,
68
- error: d,
69
- required: u
70
- },
71
- /* @__PURE__ */ r.createElement(H, { spacing: 1 }, l && /* @__PURE__ */ r.createElement(j, { action: w }, l), /* @__PURE__ */ r.createElement(H, { horizontal: !0, spacing: 2 }, /* @__PURE__ */ r.createElement(
72
- R,
73
- {
74
- "data-testid": "datetimepicker-date",
75
- id: D,
76
- name: $,
77
- ariaLabel: l || g,
78
- error: typeof d == "string",
79
- hint: typeof p == "string",
80
- selectedDate: i,
81
- selectedDateLabel: (e) => `Date picker, current is ${e}`,
82
- onChange: V,
83
- required: u,
84
- size: k,
85
- onClear: f && _,
86
- clearLabel: T,
87
- disabled: E,
88
- ...P
89
- }
90
- ), /* @__PURE__ */ r.createElement(
91
- G,
92
- {
93
- "data-testid": "datetimepicker-time",
94
- size: k,
95
- "aria-label": l || g,
96
- error: typeof d == "string",
97
- hint: typeof p == "string",
98
- value: c,
99
- onChange: I,
100
- onClear: f && v,
101
- clearLabel: T,
102
- required: u,
103
- selectButtonTitle: h,
104
- disabled: E,
105
- step: F
106
- }
107
- )), /* @__PURE__ */ r.createElement(z, null), /* @__PURE__ */ r.createElement(A, null))
108
- );
33
+ const M = A(F), [t, a] = z({
34
+ prop: M,
35
+ onChange: T
36
+ }), i = t ? `${t.getHours()}:${t.getMinutes()}:${t.getSeconds()}` : void 0, k = (e) => {
37
+ if (i) {
38
+ const [o, u] = i.split(":");
39
+ e.setHours(parseInt(o, 10)), e.setMinutes(parseInt(u, 10));
40
+ }
41
+ a(e);
42
+ }, x = (e) => {
43
+ const o = t ? new Date(t) : new Date(), [u, N] = e.split(":");
44
+ o.setHours(parseInt(u, 10)), o.setMinutes(parseInt(N, 10)), a(o);
45
+ }, S = () => {
46
+ a(void 0), g && g();
47
+ }, L = () => {
48
+ let e = t ? new Date(t) : new Date();
49
+ e.setHours(0), e.setMinutes(0), a(e);
50
+ }, l = B(b);
51
+ return r(V, {
52
+ name: $,
53
+ role: "group",
54
+ id: l,
55
+ "aria-labelledby": l,
56
+ hint: m,
57
+ error: d,
58
+ required: p,
59
+ children: D(C, {
60
+ direction: "column",
61
+ alignItems: "stretch",
62
+ gap: 1,
63
+ children: [r(j, {
64
+ action: I,
65
+ children: c
66
+ }), D(C, {
67
+ gap: 2,
68
+ children: [r(P, {
69
+ ariaLabel: c || s,
70
+ selectedDate: t,
71
+ selectedDateLabel: (e) => `Date picker, current is ${e}`,
72
+ onChange: k,
73
+ error: typeof d == "string",
74
+ hint: typeof m == "string",
75
+ required: p,
76
+ size: h,
77
+ onClear: S,
78
+ clearLabel: `${n} date`,
79
+ disabled: f,
80
+ id: l,
81
+ ...H
82
+ }), r(E, {
83
+ size: h,
84
+ "aria-label": c || s,
85
+ error: typeof d == "string",
86
+ hint: typeof m == "string",
87
+ value: i,
88
+ onChange: x,
89
+ onClear: i !== void 0 && i !== "0:0:0" ? L : void 0,
90
+ clearLabel: `${n} time`,
91
+ required: p,
92
+ selectButtonTitle: w,
93
+ disabled: f,
94
+ step: y,
95
+ id: l
96
+ })]
97
+ }), r(q, {}), r(v, {})]
98
+ })
99
+ });
100
+ }, A = (s) => {
101
+ const n = Date.parse(s);
102
+ if (!Number.isNaN(n))
103
+ return new Date(n);
109
104
  };
110
- M.defaultProps = C;
111
- M.propTypes = L;
112
105
  export {
113
- M as DateTimePicker
106
+ te as DateTimePicker
114
107
  };
@@ -1,11 +1,11 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("react"),g=require("prop-types"),m=require("styled-components"),o=require("../Box/Box.cjs"),b=require("../DismissibleLayer/DismissibleLayer.cjs"),q=require("../Flex/Flex.cjs"),h=require("../FocusTrap/FocusTrap.cjs"),x=require("../helpers/setOpacity.cjs"),D=require("../helpers/useId.cjs"),T=require("../helpers/useLockScroll.cjs"),j=require("../Portal/Portal.cjs"),E=require("../Typography/Typography.cjs"),l=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=l(y),a=l(g),s=l(m),P=s.default(o.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("react"),g=require("prop-types"),m=require("styled-components"),r=require("../Box/Box.cjs"),b=require("../DismissibleLayer/DismissibleLayer.cjs"),q=require("../Flex/Flex.cjs"),h=require("../FocusTrap/FocusTrap.cjs"),x=require("../helpers/setOpacity.cjs"),D=require("../hooks/useId.cjs"),T=require("../hooks/useLockScroll.cjs"),j=require("../Portal/Portal.cjs"),E=require("../Typography/Typography.cjs"),s=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},t=s(y),a=s(g),l=s(m),P=l.default(r.Box)`
2
2
  inset: 0;
3
3
  background: ${({theme:e})=>x.setOpacity(e.colors.neutral800,.2)};
4
- `,_=s.default(o.Box)`
4
+ `,_=l.default(r.Box)`
5
5
  max-width: ${412/16}rem;
6
6
  margin: 0 auto;
7
7
  overflow: hidden;
8
8
  margin-top: 10%;
9
- `,F=s.default(q.Flex)`
9
+ `,F=l.default(q.Flex)`
10
10
  border-bottom: 1px solid ${({theme:e})=>e.colors.neutral150};
11
- `,r=({onClose:e,title:n,as:c,isOpen:i,id:d,...p})=>{const f=D.useId(d);if(T(i),!i)return null;const u=`${f}-label`;return t.default.createElement(j.Portal,null,t.default.createElement(P,{padding:8,position:"fixed",zIndex:4},t.default.createElement(h.FocusTrap,null,t.default.createElement(b.DismissibleLayer,{onEscapeKeyDown:e,onPointerDownOutside:e},t.default.createElement(_,{"aria-labelledby":u,"aria-modal":!0,background:"neutral0",hasRadius:!0,shadow:"popupShadow",role:"dialog"},t.default.createElement(F,{padding:6,justifyContent:"center"},t.default.createElement(E.Typography,{variant:"beta",as:c||"h2",id:u},n)),t.default.createElement(o.Box,{...p}))))))};r.displayName="Dialog";r.defaultProps={as:"h2",id:void 0};r.propTypes={as:a.default.string,id:a.default.oneOfType([a.default.string,a.default.number]),isOpen:a.default.bool.isRequired,onClose:a.default.func.isRequired,title:a.default.string.isRequired};exports.Dialog=r;
11
+ `,o=({onClose:e,title:n,as:c,isOpen:i,id:d,...p})=>{const f=D.useId(d);if(T(i),!i)return null;const u=`${f}-label`;return t.default.createElement(j.Portal,null,t.default.createElement(P,{padding:8,position:"fixed",zIndex:4},t.default.createElement(h.FocusTrap,null,t.default.createElement(b.DismissibleLayer,{onEscapeKeyDown:e,onPointerDownOutside:e},t.default.createElement(_,{"aria-labelledby":u,"aria-modal":!0,background:"neutral0",hasRadius:!0,shadow:"popupShadow",role:"dialog"},t.default.createElement(F,{padding:6,justifyContent:"center"},t.default.createElement(E.Typography,{variant:"beta",as:c||"h2",id:u},n)),t.default.createElement(r.Box,{...p}))))))};o.displayName="Dialog";o.defaultProps={as:"h2",id:void 0};o.propTypes={as:a.default.string,id:a.default.oneOfType([a.default.string,a.default.number]),isOpen:a.default.bool.isRequired,onClose:a.default.func.isRequired,title:a.default.string.isRequired};exports.Dialog=o;
@@ -6,8 +6,8 @@ import { DismissibleLayer as c } from "../DismissibleLayer/DismissibleLayer.js";
6
6
  import { Flex as f } from "../Flex/Flex.js";
7
7
  import { FocusTrap as g } from "../FocusTrap/FocusTrap.js";
8
8
  import { setOpacity as y } from "../helpers/setOpacity.js";
9
- import { useId as b } from "../helpers/useId.js";
10
- import E from "../helpers/useLockScroll.js";
9
+ import { useId as b } from "../hooks/useId.js";
10
+ import E from "../hooks/useLockScroll.js";
11
11
  import { Portal as h } from "../Portal/Portal.js";
12
12
  import { Typography as D } from "../Typography/Typography.js";
13
13
  const x = t(a)`
@@ -1,9 +1,9 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react"),s=require("prop-types"),l=require("styled-components"),d=require("../Box/Box.cjs"),i=require("../Stack/Stack.cjs"),o=t=>t&&typeof t=="object"&&"default"in t?t:{default:t},r=o(c),a=o(s),u=o(l),p=u.default(d.Box)`
2
- border-top: 1px solid ${({theme:t})=>t.colors.neutral150};
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react"),s=require("prop-types"),c=require("styled-components"),d=require("../Box/Box.cjs"),i=require("../Flex/Flex.cjs"),o=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},r=o(a),l=o(s),u=o(c),p=u.default(d.Box)`
2
+ border-top: 1px solid ${({theme:e})=>e.colors.neutral150};
3
3
 
4
4
  button {
5
5
  width: 100%;
6
6
  display: inline-flex;
7
7
  justify-content: center;
8
8
  }
9
- `,e=({startAction:t,endAction:n})=>r.default.createElement(p,{padding:4},r.default.createElement(i.Stack,{horizontal:!0,spacing:2},t,n));e.displayName="DialogFooter";e.defaultProps={endAction:void 0,startAction:void 0};e.propTypes={endAction:a.default.node,startAction:a.default.node};exports.DialogFooter=e;
9
+ `,t=({startAction:e,endAction:n})=>r.default.createElement(p,{padding:4},r.default.createElement(i.Flex,{gap:2},e,n));t.displayName="DialogFooter";t.defaultProps={endAction:void 0,startAction:void 0};t.propTypes={endAction:l.default.node,startAction:l.default.node};exports.DialogFooter=t;
@@ -2,7 +2,7 @@ import e from "react";
2
2
  import r from "prop-types";
3
3
  import n from "styled-components";
4
4
  import { Box as p } from "../Box/Box.js";
5
- import { Stack as a } from "../Stack/Stack.js";
5
+ import { Flex as a } from "../Flex/Flex.js";
6
6
  const d = n(p)`
7
7
  border-top: 1px solid ${({ theme: o }) => o.colors.neutral150};
8
8
 
@@ -11,7 +11,7 @@ const d = n(p)`
11
11
  display: inline-flex;
12
12
  justify-content: center;
13
13
  }
14
- `, t = ({ startAction: o, endAction: i }) => /* @__PURE__ */ e.createElement(d, { padding: 4 }, /* @__PURE__ */ e.createElement(a, { horizontal: !0, spacing: 2 }, o, i));
14
+ `, t = ({ startAction: o, endAction: i }) => /* @__PURE__ */ e.createElement(d, { padding: 4 }, /* @__PURE__ */ e.createElement(a, { gap: 2 }, o, i));
15
15
  t.displayName = "DialogFooter";
16
16
  t.defaultProps = {
17
17
  endAction: void 0,
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react"),p=require("prop-types"),y=require("./FieldContext.cjs"),b=require("../helpers/useId.cjs"),g=e=>e&&typeof e=="object"&&"default"in e?e:{default:e};function m(e){if(e&&e.__esModule)return e;const r=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const d=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(r,o,d.get?d:{enumerable:!0,get:()=>e[o]})}}return r.default=e,Object.freeze(r)}const n=m(c),t=g(p),u=({children:e,name:r,error:o,hint:d,id:i,required:l,...s})=>{const a=b.useId(i),f=n.useMemo(()=>({name:r,id:a,error:o,hint:d,required:l}),[o,a,d,r,l]);return n.createElement("div",{...s},n.createElement(y.FieldContext.Provider,{value:f},e))};u.defaultProps={error:void 0,hint:void 0,id:void 0,name:void 0,required:!1};u.propTypes={children:t.default.node.isRequired,error:t.default.oneOfType([t.default.string,t.default.bool]),hint:t.default.oneOfType([t.default.string,t.default.bool,t.default.node,t.default.arrayOf(t.default.node)]),id:t.default.oneOfType([t.default.string,t.default.number]),name:t.default.string,required:t.default.bool};exports.Field=u;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const c=require("react/jsx-runtime"),i=require("react"),a=require("./FieldContext.cjs"),j=require("../Box/Box.cjs"),f=require("../hooks/useId.cjs"),F=i.forwardRef(({children:n,name:e,error:t,hint:o,id:u,required:s=!1,...d},l)=>{const r=f.useId(u),x=i.useMemo(()=>({name:e,id:r,error:t,hint:o,required:s}),[t,r,o,e,s]);return c.jsx(j.Box,{ref:l,...d,children:c.jsx(a.FieldContext.Provider,{value:x,children:n})})});exports.Field=F;
@@ -1,29 +1,33 @@
1
- import * as o from "react";
2
- import e from "prop-types";
3
- import { FieldContext as f } from "./FieldContext.js";
4
- import { useId as c } from "../helpers/useId.js";
5
- const s = ({ children: p, name: r, error: t, hint: i, id: m, required: n, ...a }) => {
6
- const d = c(m), l = o.useMemo(
7
- () => ({ name: r, id: d, error: t, hint: i, required: n }),
8
- [t, d, i, r, n]
9
- );
10
- return /* @__PURE__ */ o.createElement("div", { ...a }, /* @__PURE__ */ o.createElement(f.Provider, { value: l }, p));
11
- };
12
- s.defaultProps = {
13
- error: void 0,
14
- hint: void 0,
15
- id: void 0,
16
- name: void 0,
17
- required: !1
18
- };
19
- s.propTypes = {
20
- children: e.node.isRequired,
21
- error: e.oneOfType([e.string, e.bool]),
22
- hint: e.oneOfType([e.string, e.bool, e.node, e.arrayOf(e.node)]),
23
- id: e.oneOfType([e.string, e.number]),
24
- name: e.string,
25
- required: e.bool
26
- };
1
+ import { jsx as d } from "react/jsx-runtime";
2
+ import { forwardRef as l, useMemo as p } from "react";
3
+ import { FieldContext as x } from "./FieldContext.js";
4
+ import { Box as a } from "../Box/Box.js";
5
+ import { useId as u } from "../hooks/useId.js";
6
+ const j = l(({
7
+ children: f,
8
+ name: o,
9
+ error: r,
10
+ hint: e,
11
+ id: i,
12
+ required: t = !1,
13
+ ...n
14
+ }, s) => {
15
+ const m = u(i), c = p(() => ({
16
+ name: o,
17
+ id: m,
18
+ error: r,
19
+ hint: e,
20
+ required: t
21
+ }), [r, m, e, o, t]);
22
+ return d(a, {
23
+ ref: s,
24
+ ...n,
25
+ children: d(x.Provider, {
26
+ value: c,
27
+ children: f
28
+ })
29
+ });
30
+ });
27
31
  export {
28
- s as Field
32
+ j as Field
29
33
  };
@@ -1,10 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react"),l=require("prop-types"),d=require("styled-components"),t=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},i=t(s),o=t(l),u=t(d),c=u.default.button`
2
- border: none;
3
- background: transparent;
4
- // TODO: Make sure to use the theme when it's ready
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),n=require("react"),r=require("styled-components"),o=require("../Flex/Flex.cjs"),d=require("../VisuallyHidden/VisuallyHidden.cjs"),a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},u=a(r),c=u.default(o.Flex)`
5
2
  font-size: 1.6rem;
6
- width: auto;
7
3
  padding: 0;
8
- display: flex;
9
- align-items: center;
10
- `,n=({label:e,children:r,...a})=>i.default.createElement(c,{"aria-label":e,type:"button",...a},r);n.propTypes={children:o.default.node.isRequired,label:o.default.string.isRequired};exports.FieldAction=n;
4
+ `,f=n.forwardRef(({label:e,children:s,...l},i)=>t.jsxs(c,{justifyContent:"unset",background:"transparent",borderStyle:"none",type:"button",...l,as:"button",ref:i,children:[t.jsx(d.VisuallyHidden,{as:"span",children:e}),n.cloneElement(s,{"aria-hidden":!0,focusable:!1})]}));exports.FieldAction=f;
@@ -1,20 +1,31 @@
1
- import i from "react";
2
- import e from "prop-types";
3
- import n from "styled-components";
4
- const a = n.button`
5
- border: none;
6
- background: transparent;
7
- // TODO: Make sure to use the theme when it's ready
1
+ import { jsxs as n, jsx as i } from "react/jsx-runtime";
2
+ import { forwardRef as s, cloneElement as a } from "react";
3
+ import d from "styled-components";
4
+ import { Flex as l } from "../Flex/Flex.js";
5
+ import { VisuallyHidden as f } from "../VisuallyHidden/VisuallyHidden.js";
6
+ const m = d(l)`
8
7
  font-size: 1.6rem;
9
- width: auto;
10
8
  padding: 0;
11
- display: flex;
12
- align-items: center;
13
- `, d = ({ label: t, children: r, ...o }) => /* @__PURE__ */ i.createElement(a, { "aria-label": t, type: "button", ...o }, r);
14
- d.propTypes = {
15
- children: e.node.isRequired,
16
- label: e.string.isRequired
17
- };
9
+ `, x = s(({
10
+ label: e,
11
+ children: r,
12
+ ...t
13
+ }, o) => n(m, {
14
+ justifyContent: "unset",
15
+ background: "transparent",
16
+ borderStyle: "none",
17
+ type: "button",
18
+ ...t,
19
+ as: "button",
20
+ ref: o,
21
+ children: [i(f, {
22
+ as: "span",
23
+ children: e
24
+ }), a(r, {
25
+ "aria-hidden": !0,
26
+ focusable: !1
27
+ })]
28
+ }));
18
29
  export {
19
- d as FieldAction
30
+ x as FieldAction
20
31
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),t=e.createContext({error:void 0,hint:void 0,name:"",id:""}),o=()=>e.useContext(t);exports.FieldContext=t;exports.useField=o;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("react"),t=e.createContext({id:"",required:!1}),o=()=>e.useContext(t);exports.FieldContext=t;exports.useField=o;
@@ -1,6 +1,6 @@
1
1
  import { createContext as e, useContext as t } from "react";
2
- const o = e({ error: void 0, hint: void 0, name: "", id: "" }), n = () => t(o);
2
+ const o = e({ id: "", required: !1 }), i = () => t(o);
3
3
  export {
4
4
  o as FieldContext,
5
- n as useField
5
+ i as useField
6
6
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react"),o=require("./FieldContext.cjs"),a=require("../Typography/Typography.cjs"),i=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=i(t),n=()=>{const{id:e,error:r}=o.useField();return!r||typeof r!="string"?null:l.default.createElement(a.Typography,{variant:"pi",as:"p",id:`${e}-error`,textColor:"danger600","data-strapi-field-error":!0},r)};exports.FieldError=n;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),o=require("./FieldContext.cjs"),i=require("../Typography/Typography.cjs"),n=()=>{const{id:e,error:r}=o.useField();return!r||typeof r!="string"?null:t.jsx(i.Typography,{variant:"pi",as:"p",id:`${e}-error`,textColor:"danger600","data-strapi-field-error":!0,children:r})};exports.FieldError=n;
@@ -1,9 +1,19 @@
1
- import t from "react";
2
- import { useField as o } from "./FieldContext.js";
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import { useField as e } from "./FieldContext.js";
3
3
  import { Typography as i } from "../Typography/Typography.js";
4
4
  const d = () => {
5
- const { id: e, error: r } = o();
6
- return !r || typeof r != "string" ? null : /* @__PURE__ */ t.createElement(i, { variant: "pi", as: "p", id: `${e}-error`, textColor: "danger600", "data-strapi-field-error": !0 }, r);
5
+ const {
6
+ id: o,
7
+ error: r
8
+ } = e();
9
+ return !r || typeof r != "string" ? null : t(i, {
10
+ variant: "pi",
11
+ as: "p",
12
+ id: `${o}-error`,
13
+ textColor: "danger600",
14
+ "data-strapi-field-error": !0,
15
+ children: r
16
+ });
7
17
  };
8
18
  export {
9
19
  d as FieldError
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react"),i=require("./FieldContext.cjs"),n=require("../Typography/Typography.cjs"),a=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},l=a(o),u=()=>{const{id:e,hint:t,error:r}=i.useField();return!t||typeof t!="string"||r?null:l.default.createElement(n.Typography,{variant:"pi",as:"p",id:`${e}-hint`,textColor:"neutral600"},t)};exports.FieldHint=u;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("react/jsx-runtime"),n=require("./FieldContext.cjs"),o=require("../Typography/Typography.cjs"),s=()=>{const{id:t,hint:e,error:r}=n.useField();return!e||r?null:i.jsx(o.Typography,{variant:"pi",as:"p",id:`${t}-hint`,textColor:"neutral600",children:e})};exports.FieldHint=s;
@@ -1,10 +1,20 @@
1
- import i from "react";
2
- import { useField as o } from "./FieldContext.js";
3
- import { Typography as n } from "../Typography/Typography.js";
4
- const m = () => {
5
- const { id: r, hint: t, error: e } = o();
6
- return !t || typeof t != "string" || e ? null : /* @__PURE__ */ i.createElement(n, { variant: "pi", as: "p", id: `${r}-hint`, textColor: "neutral600" }, t);
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import { useField as n } from "./FieldContext.js";
3
+ import { Typography as e } from "../Typography/Typography.js";
4
+ const a = () => {
5
+ const {
6
+ id: t,
7
+ hint: r,
8
+ error: i
9
+ } = n();
10
+ return !r || i ? null : o(e, {
11
+ variant: "pi",
12
+ as: "p",
13
+ id: `${t}-hint`,
14
+ textColor: "neutral600",
15
+ children: r
16
+ });
7
17
  };
8
18
  export {
9
- m as FieldHint
19
+ a as FieldHint
10
20
  };
@@ -1,16 +1,15 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const g=require("react"),B=require("prop-types"),I=require("styled-components"),R=require("./FieldContext.cjs"),p=require("../Box/Box.cjs"),v=require("../Flex/Flex.cjs"),w=require("../themes/sizes.cjs"),C=require("../themes/utils.cjs"),d=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},r=d(g),o=d(B),b=d(I),f={S:6.5,M:10.5},k=b.default.input`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),F=require("react"),c=require("styled-components"),q=require("./FieldContext.cjs"),l=require("../Box/Box.cjs"),B=require("../Flex/Flex.cjs"),R=require("../themes/utils.cjs"),I=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},p=I(c),u={S:6.5,M:10.5},w=F.forwardRef(({endAction:e,startAction:r,disabled:o=!1,onChange:a,size:g="M",...b},h)=>{const{id:t,error:s,hint:$,name:x,required:j}=q.useField();let i;s?i=`${t}-error`:$&&(i=`${t}-hint`);const d=Boolean(s),y=m=>{!o&&a&&a(m)};return n.jsxs(f,{justifyContent:"space-between",hasError:d,disabled:o,children:[r?n.jsx(l.Box,{paddingLeft:3,paddingRight:2,children:r}):null,n.jsx(_,{id:t,name:x,ref:h,"aria-describedby":i,"aria-invalid":d,"aria-disabled":o,disabled:o,"data-disabled":o?"":void 0,hasLeftAction:Boolean(r),hasRightAction:Boolean(e),onChange:y,"aria-required":j,$size:g,...b}),e?n.jsx(l.Box,{paddingLeft:2,paddingRight:3,children:e}):null]})}),_=p.default.input`
2
2
  border: none;
3
3
  border-radius: ${({theme:e})=>e.borderRadius};
4
- padding-bottom: ${({size:e})=>`${f[e]/16}rem`};
5
- padding-left: ${({theme:e,hasLeftAction:t})=>t?0:e.spaces[4]};
6
- padding-right: ${({theme:e,hasRightAction:t})=>t?0:e.spaces[4]};
7
- padding-top: ${({size:e})=>`${f[e]/16}rem`};
4
+ padding-bottom: ${({$size:e})=>`${u[e]/16}rem`};
5
+ padding-left: ${({theme:e,hasLeftAction:r})=>r?0:e.spaces[4]};
6
+ padding-right: ${({theme:e,hasRightAction:r})=>r?0:e.spaces[4]};
7
+ padding-top: ${({$size:e})=>`${u[e]/16}rem`};
8
8
  cursor: ${e=>e["aria-disabled"]?"not-allowed":void 0};
9
9
 
10
10
  color: ${({theme:e})=>e.colors.neutral800};
11
11
  font-weight: 400;
12
- // TODO: Make sure to use the theme when it's ready
13
- font-size: ${14/16}rem;
12
+ font-size: ${e=>e.theme.fontSizes[2]};
14
13
  display: block;
15
14
  width: 100%;
16
15
  background: inherit;
@@ -29,15 +28,14 @@
29
28
  outline: none;
30
29
  box-shadow: none;
31
30
  }
32
- `,h=b.default(v.Flex)`
33
- border: 1px solid ${({theme:e,hasError:t})=>t?e.colors.danger600:e.colors.neutral200};
31
+ `,f=p.default(B.Flex)`
32
+ border: 1px solid ${({theme:e,hasError:r})=>r?e.colors.danger600:e.colors.neutral200};
34
33
  border-radius: ${({theme:e})=>e.borderRadius};
35
34
  background: ${({theme:e})=>e.colors.neutral0};
36
- ${C.inputFocusStyle()}
35
+ ${R.inputFocusStyle()}
37
36
 
38
- ${({theme:e,disabled:t})=>t?`
39
- color: ${e.colors.neutral600};
40
- background: ${e.colors.neutral150};
41
-
42
- `:void 0}
43
- `,a=g.forwardRef(({endAction:e,startAction:t,disabled:n,onChange:$,size:l,...y},m)=>{const{id:s,error:u,hint:x,name:F,required:q}=R.useField();let i;u?i=`${s}-error`:x&&(i=`${s}-hint`);const c=Boolean(u),_=j=>{n||$(j)};return r.default.createElement(h,{size:l,justifyContent:"space-between",hasError:c,disabled:n},t&&r.default.createElement(p.Box,{paddingLeft:3,paddingRight:2},t),r.default.createElement(k,{id:s,name:F,ref:m,"aria-describedby":i,"aria-invalid":c,"aria-disabled":n,hasLeftAction:Boolean(t),hasRightAction:Boolean(e),onChange:_,"aria-required":q,size:l,...y}),e&&r.default.createElement(p.Box,{paddingLeft:2,paddingRight:3},e))});a.displayName="FieldInput";a.defaultProps={disabled:!1,endAction:void 0,size:"M",startAction:void 0,onChange(){}};a.propTypes={disabled:o.default.bool,endAction:o.default.element,onChange:o.default.func,size:o.default.oneOf(Object.keys(w.sizes.input)),startAction:o.default.element};exports.FieldInput=a;exports.InputWrapper=h;
37
+ ${({theme:e,disabled:r})=>r?c.css`
38
+ color: ${e.colors.neutral600};
39
+ background: ${e.colors.neutral150};
40
+ `:void 0}
41
+ `;exports.FieldInput=w;exports.InputWrapper=f;