@stihl-design-system/components 1.0.0-RC.4 → 1.0.0-RC.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 (167) hide show
  1. package/Klarna.svg +1 -0
  2. package/Mastercard.svg +2 -0
  3. package/PayPal.svg +2 -0
  4. package/Placeholder.svg +1 -0
  5. package/Visa.svg +2 -0
  6. package/arialiveregions.BvZhV6hb.js +27 -0
  7. package/assets/CustomReactSelect.Bsphydqt.css +1 -0
  8. package/assets/Fieldset.D0jHAGRL.css +1 -0
  9. package/assets/Icon.Duy_0R8w.css +1 -0
  10. package/assets/InputPassword.VCNO8ANM.css +1 -0
  11. package/assets/InputSearch.BMRAb95l.css +1 -0
  12. package/assets/InputStepper.BKjqNi-i.css +1 -0
  13. package/assets/Notification.Bg63cvs4.css +1 -0
  14. package/assets/RadioGroup.Bz3_xkZU.css +1 -0
  15. package/assets/Select.Bz1TImkI.css +1 -0
  16. package/assets/Textarea.D2h5cW_t.css +1 -0
  17. package/assets/Toast.BzVaebc0.css +1 -0
  18. package/assets/{arialiveregions.VnhjP8Gr.css → arialiveregions.GsGx2USO.css} +1 -1
  19. package/assets/{asterisk.C-o6rbGQ.css → asterisk.JlyPArZu.css} +1 -1
  20. package/assets/button.BdxtFZKx.css +1 -0
  21. package/assets/buttonround.pR4StXA7.css +1 -0
  22. package/assets/checkbox.BjIn2stV.css +1 -0
  23. package/assets/dialog.CKwM2EBH.css +1 -0
  24. package/assets/floatingactionbutton.CUvMbEMf.css +1 -0
  25. package/assets/heading.CCbuI4X-.css +1 -0
  26. package/assets/input.71tOIrpp.css +1 -0
  27. package/assets/link.D61tKkSK.css +1 -0
  28. package/assets/linkstandalone.Bx8Uvo0G.css +1 -0
  29. package/assets/logo.C05WqGId.css +1 -0
  30. package/assets/optioncheckbox.BdRJHcSw.css +1 -0
  31. package/assets/radio.ewRpPo4W.css +1 -0
  32. package/assets/skiptocontent.DGVJ77cj.css +1 -0
  33. package/assets/spinner.D_Nnf1ZG.css +1 -0
  34. package/assets/switch.Ds-I_ybT.css +1 -0
  35. package/assets/{systemfeedback.WE3wClZ3.css → systemfeedback.BzJATHDd.css} +1 -1
  36. package/assets/text.B-CTuGgI.css +1 -0
  37. package/assets/{title.CE0Dm7PI.css → title.DlhX9K3W.css} +1 -1
  38. package/asterisk.Cjbk-xZi.js +8 -0
  39. package/button.L1lgCuM9.js +135 -0
  40. package/buttonround.ddSqXjYf.js +118 -0
  41. package/checkbox.DNHdo6_n.js +113 -0
  42. package/checkboxgroup.DqWlzAeR.js +9 -0
  43. package/chunks/{CheckboxGroup.CS6Q_TeZ.js → CheckboxGroup.DsQ6lI5a.js} +22 -22
  44. package/chunks/{CustomReactSelect.DtmbYZUf.js → CustomReactSelect.5dHi6PEO.js} +909 -959
  45. package/chunks/Fieldset.B1vsrHNv.js +99 -0
  46. package/chunks/{Icon.9gDIp6p4.js → Icon.n4XZrQ4N.js} +33 -27
  47. package/chunks/InputPassword.a7zHKrmM.js +140 -0
  48. package/chunks/InputSearch.DITRiB92.js +189 -0
  49. package/chunks/InputStepper.BkncCNwJ.js +291 -0
  50. package/chunks/Notification.DVVuSOqG.js +93 -0
  51. package/chunks/RadioGroup.BO4pbAJw.js +132 -0
  52. package/chunks/RadioGroup.module.BBZwHDjW.js +11 -0
  53. package/chunks/Select.COdS787F.js +191 -0
  54. package/chunks/Textarea.oqCrSopu.js +195 -0
  55. package/chunks/Toast.RON4bFPY.js +89 -0
  56. package/chunks/{jsx-runtime.C-kxDJ4g.js → jsx-runtime.C115EyI4.js} +3 -7
  57. package/{combobox.BaSkiD6f.js → combobox.CRlhqmuO.js} +2 -2
  58. package/components/Radio/Radio.d.ts +11 -3
  59. package/components/RadioGroup/RadioGroup.d.ts +6 -3
  60. package/components/RadioGroup/RadioGroup.utils.d.ts +5 -3
  61. package/components/RadioGroup/RadioGroup.utils.test.d.ts +1 -0
  62. package/components/SkipToContent/SkipToContent.d.ts +12 -0
  63. package/components/SkipToContent/SkipToContent.test.d.ts +1 -0
  64. package/customreactselect.CD58gwtp.js +13 -0
  65. package/dialog.0qPUVJha.js +45 -0
  66. package/fieldset.aY3V2jK2.js +11 -0
  67. package/floatingactionbutton.D_e4vz2G.js +87 -0
  68. package/heading.BTNroD1E.js +50 -0
  69. package/icon.D3RXjzh4.js +8 -0
  70. package/index.d.ts +1 -0
  71. package/index.es.js +66 -62
  72. package/input.ChVISFEX.js +236 -0
  73. package/inputpassword.Ba9SUUIK.js +12 -0
  74. package/inputsearch.BK-0OTwA.js +13 -0
  75. package/inputstepper.CTpTeXL9.js +13 -0
  76. package/link.SAcKvzJ3.js +115 -0
  77. package/linkstandalone.DNe0Nydm.js +79 -0
  78. package/{logo.C_oJ8isW.js → logo.BR_CUXFl.js} +16 -16
  79. package/notification.Csn5QCR2.js +9 -0
  80. package/{optioncheckbox.CUV1MQhh.js → optioncheckbox.C4l2UIak.js} +7 -7
  81. package/package.json +28 -24
  82. package/partials/index.js +51 -79
  83. package/radio.epf54-sG.js +115 -0
  84. package/radiogroup.CiENWRos.js +11 -0
  85. package/select.DLYav8gw.js +12 -0
  86. package/skiptocontent._YZRKxnc.js +44 -0
  87. package/skiptocontent.d.ts +1 -0
  88. package/spinner.DVa112nj.js +58 -0
  89. package/styles/scss/lib/_animation.scss +15 -14
  90. package/styles/scss/lib/_container-query.scss +3 -3
  91. package/styles/scss/lib/_grid-sidebar.scss +14 -7
  92. package/styles/scss/lib/_link.scss +48 -42
  93. package/styles/scss/lib/_media-query.scss +3 -3
  94. package/styles/scss/lib/_transition.scss +26 -7
  95. package/switch.rd7PdLc9.js +65 -0
  96. package/{systemfeedback.4Hkfigi-.js → systemfeedback.CUWch42u.js} +3 -3
  97. package/text.CrYUewrP.js +57 -0
  98. package/{textarea.DPy3TJJf.js → textarea.hLgeYdsI.js} +4 -4
  99. package/title.Dvp8LKJt.js +36 -0
  100. package/toast.r_yhGYEe.js +10 -0
  101. package/{toastmanager.DQ_-eTrx.js → toastmanager.D-uIi-TS.js} +2 -2
  102. package/utils/index.d.ts +1 -0
  103. package/utils/remove-spaces.d.ts +6 -0
  104. package/utils/remove-spaces.test.d.ts +1 -0
  105. package/arialiveregions.49Zyf6mj.js +0 -27
  106. package/assets/CustomReactSelect.B0rJLjN0.css +0 -1
  107. package/assets/Fieldset.xazpUXJX.css +0 -1
  108. package/assets/Icon.CB-KQmw4.css +0 -1
  109. package/assets/InputPassword.C3Uyj7oA.css +0 -1
  110. package/assets/InputSearch.tL3e9-Ob.css +0 -1
  111. package/assets/InputStepper.paPJix5A.css +0 -1
  112. package/assets/Notification.CCCbfXEz.css +0 -1
  113. package/assets/RadioGroup.Ur8Ro-XL.css +0 -1
  114. package/assets/Select.D2qBxaHP.css +0 -1
  115. package/assets/Textarea.BKbocznb.css +0 -1
  116. package/assets/Toast.CAP_EwDX.css +0 -1
  117. package/assets/button.BuIpnG-S.css +0 -1
  118. package/assets/buttonround.C3ph5Yyu.css +0 -1
  119. package/assets/checkbox.BsFEWfQe.css +0 -1
  120. package/assets/dialog.BGK3mgk7.css +0 -1
  121. package/assets/floatingactionbutton.D7ywURL3.css +0 -1
  122. package/assets/heading.CGFucb-C.css +0 -1
  123. package/assets/input.BcP5kkZ2.css +0 -1
  124. package/assets/link.DQy_OhwC.css +0 -1
  125. package/assets/linkstandalone.Dh6bE5Fb.css +0 -1
  126. package/assets/logo.BbHYgnWo.css +0 -1
  127. package/assets/optioncheckbox.C-K1FLhc.css +0 -1
  128. package/assets/radio.CSHQGdpr.css +0 -1
  129. package/assets/spinner.C5rBmKiF.css +0 -1
  130. package/assets/switch.sqve8ApJ.css +0 -1
  131. package/assets/text.DDAveG7E.css +0 -1
  132. package/asterisk.DU8THnoC.js +0 -8
  133. package/button.DX_nxoJC.js +0 -135
  134. package/buttonround.CXsBk9nL.js +0 -118
  135. package/checkbox.B43oeMeC.js +0 -112
  136. package/checkboxgroup.C7aCjYds.js +0 -9
  137. package/chunks/Fieldset.BokeZzG5.js +0 -99
  138. package/chunks/InputPassword.jpUCijp7.js +0 -140
  139. package/chunks/InputSearch.BmOtAZcR.js +0 -190
  140. package/chunks/InputStepper.DTKjUL4U.js +0 -291
  141. package/chunks/Notification.CUPOlHAX.js +0 -93
  142. package/chunks/RadioGroup.DpwnVv7u.js +0 -110
  143. package/chunks/RadioGroup.module.bi3leRes.js +0 -11
  144. package/chunks/Select.DkDZo0ky.js +0 -193
  145. package/chunks/Textarea.C938p79X.js +0 -195
  146. package/chunks/Toast.CLYrwQVO.js +0 -89
  147. package/customreactselect.LTbjaBN2.js +0 -13
  148. package/dialog.BkXwcbUh.js +0 -45
  149. package/fieldset.BXOWK-B-.js +0 -11
  150. package/floatingactionbutton.-nDRRiXY.js +0 -87
  151. package/heading.DqGbFfj2.js +0 -50
  152. package/icon.Cpp_9L1I.js +0 -8
  153. package/input.BM6tyRUm.js +0 -236
  154. package/inputpassword.DUxH1K_k.js +0 -12
  155. package/inputsearch.B-vePHle.js +0 -13
  156. package/inputstepper.C2ypADPI.js +0 -13
  157. package/link.B4XZoLDj.js +0 -115
  158. package/linkstandalone.BSfd95Pd.js +0 -79
  159. package/notification.CxxAOdNV.js +0 -9
  160. package/radio.Bhu9OUY-.js +0 -79
  161. package/radiogroup.CMJ1b38q.js +0 -11
  162. package/select.DFJK2mHF.js +0 -12
  163. package/spinner.BskX4ovu.js +0 -58
  164. package/switch.Bx2tDKx0.js +0 -65
  165. package/text.CPU8IUqY.js +0 -57
  166. package/title.icX0VDiO.js +0 -36
  167. package/toast.C-Yg5EoE.js +0 -10
@@ -0,0 +1,291 @@
1
+ "use client";
2
+ import { j as e } from "./jsx-runtime.C115EyI4.js";
3
+ import { c } from "./index.CvOaL64Y.js";
4
+ import { useState as _, useRef as N, useEffect as w, useLayoutEffect as M } from "react";
5
+ import { u as _t } from "./useBreakpoint.5xBNDiCf.js";
6
+ import { Asterisk as ft } from "../asterisk.Cjbk-xZi.js";
7
+ import { DSButton as X } from "../button.L1lgCuM9.js";
8
+ import { M as E, a as H } from "./Input.utils.AKWCNkpA.js";
9
+ import { DSSystemFeedback as ht } from "../systemfeedback.CUWch42u.js";
10
+ import { g as y } from "./helpers.B1JT5ShS.js";
11
+ import '../assets/InputStepper.BKjqNi-i.css';const mt = "_input_xdphx_226", bt = "_input--invalid_xdphx_336", St = "_input--small_xdphx_343", yt = "_input--has-leading-icon_xdphx_395", vt = "_input--has-action-button_xdphx_398", It = "_input--has-second-action-button_xdphx_401", gt = "_input--has-affix_xdphx_413", At = "_input--is-ready_xdphx_427", Bt = "_root_xdphx_437", Dt = "_hint_xdphx_445", Nt = "_label_xdphx_445", wt = "_wrapper_xdphx_449", Et = "_affix_xdphx_455", Ht = "_affix--small_xdphx_475", Lt = "_affix--disabled_xdphx_487", jt = "_prefix_xdphx_490", Rt = "_affix--readonly_xdphx_493", kt = "_suffix_xdphx_503", Ct = "_action-button_xdphx_510", $t = "_label--hidden_xdphx_527", Ft = "_feedback_xdphx_554", Vt = "_second-action-button_xdphx_568", Pt = "_value-announcer_xdphx_572", n = {
12
+ input: mt,
13
+ "input--invalid": "_input--invalid_xdphx_336",
14
+ inputInvalid: bt,
15
+ "input--small": "_input--small_xdphx_343",
16
+ inputSmall: St,
17
+ "input--has-leading-icon": "_input--has-leading-icon_xdphx_395",
18
+ inputHasLeadingIcon: yt,
19
+ "input--has-action-button": "_input--has-action-button_xdphx_398",
20
+ inputHasActionButton: vt,
21
+ "input--has-second-action-button": "_input--has-second-action-button_xdphx_401",
22
+ inputHasSecondActionButton: It,
23
+ "input--has-affix": "_input--has-affix_xdphx_413",
24
+ inputHasAffix: gt,
25
+ "input--is-ready": "_input--is-ready_xdphx_427",
26
+ inputIsReady: At,
27
+ root: Bt,
28
+ hint: Dt,
29
+ label: Nt,
30
+ wrapper: wt,
31
+ affix: Et,
32
+ "affix--small": "_affix--small_xdphx_475",
33
+ affixSmall: Ht,
34
+ "affix--disabled": "_affix--disabled_xdphx_487",
35
+ affixDisabled: Lt,
36
+ prefix: jt,
37
+ "affix--readonly": "_affix--readonly_xdphx_493",
38
+ affixReadonly: Rt,
39
+ suffix: kt,
40
+ "action-button": "_action-button_xdphx_510",
41
+ actionButton: Ct,
42
+ "label--hidden": "_label--hidden_xdphx_527",
43
+ labelHidden: $t,
44
+ feedback: Ft,
45
+ "second-action-button": "_second-action-button_xdphx_568",
46
+ secondActionButton: Vt,
47
+ "value-announcer": "_value-announcer_xdphx_572",
48
+ valueAnnouncer: Pt
49
+ }, Tt = ({
50
+ id: a,
51
+ label: f,
52
+ prefix: h,
53
+ suffix: m
54
+ }) => {
55
+ if (!a)
56
+ throw new Error(
57
+ y(
58
+ "DSInputStepper",
59
+ 'A unique "id" prop is required. Please add an unique "id" prop to the DSInputStepper component.'
60
+ )
61
+ );
62
+ if (!f)
63
+ throw new Error(
64
+ y(
65
+ "DSInputStepper",
66
+ `A label is always required for a11y reasons. Please add a descriptive "label" prop to the DSInputStepper component. If you don't want to display a label, set hideLabel={true}.`
67
+ )
68
+ );
69
+ h && h.length > E && console.warn(
70
+ y(
71
+ "DSInputStepper",
72
+ `Prefix length must not exceed ${E} characters.`
73
+ )
74
+ ), m && m.length > H && console.warn(
75
+ y(
76
+ "DSInputStepper",
77
+ `Suffix length must not exceed ${H} characters.`
78
+ )
79
+ );
80
+ }, Qt = ({
81
+ id: a,
82
+ label: f,
83
+ announcementText: h = "Value changed to",
84
+ className: m,
85
+ disabled: r = !1,
86
+ decreaseAmountButtonLabel: q = "Decrease",
87
+ hint: v,
88
+ hideLabel: G = !1,
89
+ invalid: b = !1,
90
+ increaseAmountButtonLabel: O = "Increase",
91
+ prefix: u,
92
+ max: L = 100,
93
+ min: j = 0,
94
+ readonly: p = !1,
95
+ required: R = !1,
96
+ size: i = "medium",
97
+ step: U = 1,
98
+ suffix: d,
99
+ systemFeedback: I,
100
+ value: S,
101
+ onChange: k,
102
+ ...J
103
+ }) => {
104
+ process.env.NODE_ENV !== "production" && Tt({
105
+ id: a,
106
+ label: f,
107
+ prefix: u,
108
+ suffix: d
109
+ });
110
+ const [K, Q] = _(!1), [x, g] = _(S), [A, C] = _(""), [Y, Z] = _(!1), [z, tt] = _({}), s = N(null), nt = u == null ? void 0 : u.substring(0, E), B = N(null), et = d == null ? void 0 : d.substring(0, H), D = N(null), at = _t(G);
111
+ w(() => {
112
+ S && g(S);
113
+ }, [S]), w(() => {
114
+ if (A) {
115
+ const t = setTimeout(() => {
116
+ C("");
117
+ }, 3e3);
118
+ return () => clearTimeout(t);
119
+ }
120
+ }, [A]), w(() => {
121
+ var o;
122
+ const t = (l) => {
123
+ l.preventDefault();
124
+ };
125
+ return (o = s.current) == null || o.addEventListener("wheel", t, {
126
+ // The { passive: false } option is used to indicate that the event listener wants to cancel the event, allowing preventDefault to work as expected.
127
+ passive: !1
128
+ }), () => {
129
+ var l;
130
+ (l = s.current) == null || l.removeEventListener("wheel", t);
131
+ };
132
+ }, []), M(() => {
133
+ const t = i === "medium" ? 16 : 8, o = {};
134
+ if (B.current) {
135
+ const l = B.current.offsetWidth;
136
+ o.paddingInlineStart = t + l + "px";
137
+ }
138
+ if (D.current) {
139
+ const l = D.current.offsetWidth;
140
+ o.paddingInlineEnd = t + l + "px";
141
+ }
142
+ tt(o), Q(!0);
143
+ }, [u, d, i, Y]), M(() => {
144
+ (async () => {
145
+ "fonts" in document && (await document.fonts.load(
146
+ '1em "STIHL Contraface Digital Text Regular"'
147
+ ), Z(!0));
148
+ })();
149
+ }, []);
150
+ const $ = c(n.affix, {
151
+ [n.affixSmall]: i === "small",
152
+ [n.affixDisabled]: r,
153
+ [n.affixReadonly]: p
154
+ }), F = `${a}-label`, V = `${a}-feedback`, P = `${a}-hint`, T = `${a}-value-announcer`, st = v ? ` ${P}` : "", it = c(n.root, m), ot = c(n.input, {
155
+ // small input
156
+ [n.inputSmall]: i === "small",
157
+ // invalid state
158
+ [n.inputInvalid]: b,
159
+ // prefix/suffix
160
+ [n.inputHasAffix]: u || d,
161
+ [n.inputIsReady]: K
162
+ }), lt = c(n.label, {
163
+ // hide label only visually to keep them available for assistive technologies
164
+ [n.labelHidden]: at
165
+ }), ct = c(n.secondActionButton, {
166
+ [n.secondActionButtonSmall]: i === "small"
167
+ }), ut = c(n.actionButton, {
168
+ [n.actionButtonSmall]: i === "small"
169
+ }), dt = () => {
170
+ const t = [T];
171
+ return b && I && t.push(V), t.join(" ");
172
+ }, W = () => {
173
+ var t;
174
+ if (s.current) {
175
+ g(s.current.value);
176
+ const o = new Event("change", { bubbles: !0 });
177
+ (t = s.current) == null || t.dispatchEvent(o), C(`${h} ${s.current.value}`);
178
+ }
179
+ }, rt = () => {
180
+ var t;
181
+ (t = s.current) == null || t.stepDown(), W();
182
+ }, pt = () => {
183
+ var t;
184
+ (t = s.current) == null || t.stepUp(), W();
185
+ }, xt = (t) => {
186
+ g(t.target.value), k && k(t);
187
+ };
188
+ return /* @__PURE__ */ e.jsxs("div", { className: it, children: [
189
+ /* @__PURE__ */ e.jsxs("label", { className: lt, id: F, htmlFor: a, children: [
190
+ f,
191
+ R && /* @__PURE__ */ e.jsx(ft, {})
192
+ ] }),
193
+ v && /* @__PURE__ */ e.jsx("div", { className: n.hint, id: P, children: v }),
194
+ /* @__PURE__ */ e.jsx(
195
+ "div",
196
+ {
197
+ "aria-live": "polite",
198
+ "aria-atomic": "true",
199
+ className: n.valueAnnouncer,
200
+ id: T,
201
+ children: A
202
+ }
203
+ ),
204
+ b && I && /* @__PURE__ */ e.jsx(
205
+ ht,
206
+ {
207
+ className: n.feedback,
208
+ message: I,
209
+ type: "invalid",
210
+ id: V
211
+ }
212
+ ),
213
+ /* @__PURE__ */ e.jsxs("div", { className: n.wrapper, children: [
214
+ u && /* @__PURE__ */ e.jsx(
215
+ "span",
216
+ {
217
+ className: c($, n.prefix),
218
+ ref: B,
219
+ "aria-disabled": r,
220
+ children: nt
221
+ }
222
+ ),
223
+ /* @__PURE__ */ e.jsx(
224
+ "input",
225
+ {
226
+ className: ot,
227
+ id: a,
228
+ ref: s,
229
+ ...J,
230
+ style: z,
231
+ "aria-labelledby": `${F}${st}`,
232
+ "aria-describedby": dt(),
233
+ "aria-invalid": b,
234
+ "aria-disabled": p,
235
+ disabled: r,
236
+ min: j,
237
+ max: L,
238
+ readOnly: p,
239
+ required: R,
240
+ step: U,
241
+ type: "number",
242
+ value: x,
243
+ onChange: xt
244
+ }
245
+ ),
246
+ d && /* @__PURE__ */ e.jsx(
247
+ "span",
248
+ {
249
+ className: c($, n.suffix),
250
+ ref: D,
251
+ "aria-disabled": r,
252
+ children: et
253
+ }
254
+ ),
255
+ /* @__PURE__ */ e.jsx(
256
+ X,
257
+ {
258
+ hideLabel: !0,
259
+ theme: "light",
260
+ iconName: "minus",
261
+ variant: "filled",
262
+ className: ct,
263
+ size: i,
264
+ onClick: rt,
265
+ disabled: r || p || !!x && Number(x) <= j,
266
+ type: "button",
267
+ children: q
268
+ }
269
+ ),
270
+ /* @__PURE__ */ e.jsx(
271
+ X,
272
+ {
273
+ hideLabel: !0,
274
+ theme: "light",
275
+ iconName: "plus",
276
+ variant: "filled",
277
+ className: ut,
278
+ size: i,
279
+ onClick: pt,
280
+ disabled: r || p || !!x && Number(x) >= L,
281
+ type: "button",
282
+ children: O
283
+ }
284
+ )
285
+ ] })
286
+ ] });
287
+ };
288
+ export {
289
+ Qt as D,
290
+ Tt as v
291
+ };
@@ -0,0 +1,93 @@
1
+ "use client";
2
+ import { j as e } from "./jsx-runtime.C115EyI4.js";
3
+ import { c as s } from "./index.CvOaL64Y.js";
4
+ import { D as p } from "./Icon.n4XZrQ4N.js";
5
+ import { DSButton as g } from "../button.L1lgCuM9.js";
6
+ import '../assets/Notification.Bg63cvs4.css';const N = "_root_l12pe_76", f = "_root--success_l12pe_100", h = "_root--error_l12pe_104", I = "_root--warning_l12pe_108", x = "_root--hide-icon_l12pe_112", A = "_content_l12pe_126", C = "_content--hide-close-button_l12pe_133", H = "_content--hide-icon_l12pe_136", j = "_icon_l12pe_140", S = "_message_l12pe_144", w = "_custom-action-area_l12pe_157", o = {
7
+ root: N,
8
+ "root--success": "_root--success_l12pe_100",
9
+ rootSuccess: f,
10
+ "root--error": "_root--error_l12pe_104",
11
+ rootError: h,
12
+ "root--warning": "_root--warning_l12pe_108",
13
+ rootWarning: I,
14
+ "root--hide-icon": "_root--hide-icon_l12pe_112",
15
+ rootHideIcon: x,
16
+ content: A,
17
+ "content--hide-close-button": "_content--hide-close-button_l12pe_133",
18
+ contentHideCloseButton: C,
19
+ "content--hide-icon": "_content--hide-icon_l12pe_136",
20
+ contentHideIcon: H,
21
+ icon: j,
22
+ message: S,
23
+ "custom-action-area": "_custom-action-area_l12pe_157",
24
+ customActionArea: w
25
+ }, R = [
26
+ "success",
27
+ "error",
28
+ "warning",
29
+ "info"
30
+ ], O = {
31
+ success: "circle-check-colored",
32
+ error: "diamond-exclamationmark-colored",
33
+ warning: "triangle-exclamationmark-colored",
34
+ info: "circle-info-colored"
35
+ }, T = {
36
+ error: "alert",
37
+ warning: "alert",
38
+ info: "status",
39
+ success: "status"
40
+ }, B = ({
41
+ children: i,
42
+ variant: t = "info",
43
+ customActionArea: c,
44
+ className: a,
45
+ closeButtonLabel: _ = "Close notification",
46
+ hideCloseButton: r = !1,
47
+ hideIcon: n = !1,
48
+ onClose: l,
49
+ ...m
50
+ }) => {
51
+ const d = s(o.root, a, {
52
+ [o.rootSuccess]: t === "success",
53
+ [o.rootError]: t === "error",
54
+ [o.rootWarning]: t === "warning",
55
+ [o.rootInfo]: t === "info",
56
+ [o.rootHideIcon]: n
57
+ }), u = s(o.content, {
58
+ [o.contentHideCloseButton]: r,
59
+ [o.contentHideIcon]: n
60
+ });
61
+ return /* @__PURE__ */ e.jsxs("div", { className: d, ...m, role: T[t], children: [
62
+ /* @__PURE__ */ e.jsxs("div", { className: u, children: [
63
+ !n && /* @__PURE__ */ e.jsx(
64
+ p,
65
+ {
66
+ name: O[t],
67
+ className: o.icon,
68
+ "aria-hidden": "true"
69
+ }
70
+ ),
71
+ /* @__PURE__ */ e.jsx("div", { className: o.message, children: i }),
72
+ !r && /* @__PURE__ */ e.jsx(
73
+ g,
74
+ {
75
+ hideLabel: !0,
76
+ iconName: "cross",
77
+ isFlush: !0,
78
+ variant: "ghost",
79
+ size: "small",
80
+ onClick: l,
81
+ type: "button",
82
+ children: _
83
+ }
84
+ )
85
+ ] }),
86
+ c && /* @__PURE__ */ e.jsx("div", { className: s({ [o.customActionArea]: !n }), children: c })
87
+ ] });
88
+ };
89
+ export {
90
+ B as D,
91
+ R as N,
92
+ O as a
93
+ };
@@ -0,0 +1,132 @@
1
+ "use client";
2
+ import { j as h } from "./jsx-runtime.C115EyI4.js";
3
+ import { c as C } from "./index.CvOaL64Y.js";
4
+ import { forwardRef as N, useState as A } from "react";
5
+ import { D as B } from "./Fieldset.B1vsrHNv.js";
6
+ import { DSRadio as M } from "../radio.epf54-sG.js";
7
+ import { s as m } from "./RadioGroup.module.BBZwHDjW.js";
8
+ import { g as t } from "./helpers.B1JT5ShS.js";
9
+ const f = (o) => `The "${o}" prop is required. Please add the "${o}" prop to the DSRadioGroup component.`, D = (o) => o.some(({ hint: a }) => !!a), E = (o) => o.some(({ customArea: a }) => !!a), O = ({
10
+ legend: o,
11
+ name: a,
12
+ options: e,
13
+ alignment: s,
14
+ description: i,
15
+ id: l,
16
+ systemFeedback: n
17
+ }) => {
18
+ if (!l && (i || n))
19
+ throw new Error(
20
+ t(
21
+ "DSRadioGroup",
22
+ 'A unique "id" prop is required when providing the description or systemFeedback property. Please add an unique "id" prop to the DSRadioGroup component.'
23
+ )
24
+ );
25
+ if (!o)
26
+ throw new Error(
27
+ t("DSRadioGroup", f("legend"))
28
+ );
29
+ if (!a)
30
+ throw new Error(
31
+ t("DSRadioGroup", f("name"))
32
+ );
33
+ if (!e)
34
+ throw new Error(
35
+ t("DSRadioGroup", f("options"))
36
+ );
37
+ if (s === "horizontal" && D(e))
38
+ throw new Error(
39
+ t(
40
+ "DSRadioGroup",
41
+ "Horizontal alignment is not possible when options contain a hint. Please remove hints or change alignment property to 'vertical'."
42
+ )
43
+ );
44
+ if (s === "horizontal" && E(e))
45
+ throw new Error(
46
+ t(
47
+ "DSRadioGroup",
48
+ "Horizontal alignment is not possible when options contain a custom area. Please remove custom areas or change alignment property to 'vertical'."
49
+ )
50
+ );
51
+ }, V = N(
52
+ ({
53
+ legend: o,
54
+ name: a,
55
+ options: e,
56
+ alignment: s = "vertical",
57
+ className: i,
58
+ defaultValue: l,
59
+ description: n,
60
+ disabled: p = !1,
61
+ hideUncheckedHints: g = !1,
62
+ id: u,
63
+ invalid: c = !1,
64
+ required: w = !1,
65
+ systemFeedback: d,
66
+ value: S,
67
+ onChange: v,
68
+ ...x
69
+ }, z) => {
70
+ process.env.NODE_ENV !== "production" && O({
71
+ legend: o,
72
+ name: a,
73
+ options: e,
74
+ alignment: s,
75
+ description: n,
76
+ id: u,
77
+ systemFeedback: d
78
+ });
79
+ const [H, P] = A(l), R = S !== void 0, G = R ? S : H, j = C(m.group, {
80
+ // In case of longer copy, use vertical alignment
81
+ [m.groupHorizontal]: s === "horizontal" && !D(e) && !E(e),
82
+ [m.groupInvalid]: c && !!d
83
+ }), q = (r) => {
84
+ if (p) {
85
+ r.preventDefault();
86
+ return;
87
+ }
88
+ R || P(
89
+ r.target.value
90
+ ), v && v(r);
91
+ }, y = D(e) && !g;
92
+ return /* @__PURE__ */ h.jsx(
93
+ B,
94
+ {
95
+ id: u,
96
+ legend: o,
97
+ className: i,
98
+ description: n,
99
+ disabled: p,
100
+ required: w,
101
+ invalid: c,
102
+ systemFeedback: d,
103
+ ...x,
104
+ role: "radiogroup",
105
+ onChange: q,
106
+ children: /* @__PURE__ */ h.jsx("div", { className: j, children: e.map((r) => /* @__PURE__ */ h.jsx(
107
+ M,
108
+ {
109
+ name: a,
110
+ checked: r.value === G,
111
+ disabled: p,
112
+ hideUncheckedHint: g,
113
+ hint: r.hint,
114
+ invalid: c,
115
+ isBold: y,
116
+ required: w,
117
+ ref: r.value === G ? z : null,
118
+ ...r
119
+ },
120
+ u + r.label + r.value + r.hint
121
+ )) })
122
+ }
123
+ );
124
+ }
125
+ );
126
+ V.displayName = "DSRadioGroup";
127
+ export {
128
+ V as D,
129
+ E as a,
130
+ D as o,
131
+ O as v
132
+ };
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ import '../assets/RadioGroup.Bz3_xkZU.css';const o = "_group_2f5rk_76", r = "_group--horizontal_2f5rk_84", n = "_group--invalid_2f5rk_87", _ = {
3
+ group: o,
4
+ "group--horizontal": "_group--horizontal_2f5rk_84",
5
+ groupHorizontal: r,
6
+ "group--invalid": "_group--invalid_2f5rk_87",
7
+ groupInvalid: n
8
+ };
9
+ export {
10
+ _ as s
11
+ };