@obosbbl/grunnmuren-react 1.14.8 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/LICENSE +1 -1
  2. package/dist/Button/Button.d.mts +71 -0
  3. package/dist/Button/Button.d.ts +70 -15
  4. package/dist/Button/Button.mjs +86 -0
  5. package/package.json +20 -44
  6. package/README.md +0 -45
  7. package/dist/Accordion/Accordion.d.ts +0 -27
  8. package/dist/Accordion/index.d.ts +0 -1
  9. package/dist/Accordion/stories/Accordion.stories.d.ts +0 -9
  10. package/dist/Alert/Alert.d.ts +0 -9
  11. package/dist/Alert/index.d.ts +0 -1
  12. package/dist/Alert/stories/Alert.stories.d.ts +0 -5
  13. package/dist/Banner/Banner.d.ts +0 -11
  14. package/dist/Banner/BannerImage.d.ts +0 -6
  15. package/dist/Banner/index.d.ts +0 -2
  16. package/dist/Banner/stories/Banner.stories.d.ts +0 -5
  17. package/dist/Button/ButtonColorContext.d.ts +0 -3
  18. package/dist/Button/index.d.ts +0 -2
  19. package/dist/Button/stories/Button.stories.d.ts +0 -31
  20. package/dist/Campaign/Campaign.d.ts +0 -26
  21. package/dist/Campaign/index.d.ts +0 -1
  22. package/dist/Campaign/stories/Campaign.stories.d.ts +0 -9
  23. package/dist/Card/Card.d.ts +0 -8
  24. package/dist/Card/CardContent.d.ts +0 -5
  25. package/dist/Card/CardImage.d.ts +0 -7
  26. package/dist/Card/CardLinkOverlay.d.ts +0 -4
  27. package/dist/Card/CardList.d.ts +0 -7
  28. package/dist/Card/index.d.ts +0 -5
  29. package/dist/Card/stories/Card.stories.d.ts +0 -34
  30. package/dist/Checkbox/Checkbox.d.ts +0 -13
  31. package/dist/Checkbox/index.d.ts +0 -1
  32. package/dist/Checkbox/stories/Checkbox.stories.d.ts +0 -8
  33. package/dist/Chip/Chip.d.ts +0 -10
  34. package/dist/Chip/index.d.ts +0 -1
  35. package/dist/Chip/stories/Chip.stories.d.ts +0 -5
  36. package/dist/Footer/Footer.d.ts +0 -7
  37. package/dist/Footer/index.d.ts +0 -1
  38. package/dist/Footer/stories/Footer.stories.d.ts +0 -5
  39. package/dist/Form/Form.d.ts +0 -9
  40. package/dist/Form/FormError.d.ts +0 -4
  41. package/dist/Form/FormErrorMessage.d.ts +0 -5
  42. package/dist/Form/FormHelperText.d.ts +0 -5
  43. package/dist/Form/FormLabel.d.ts +0 -7
  44. package/dist/Form/FormSuccess.d.ts +0 -6
  45. package/dist/Form/MultiStep/FormStep.d.ts +0 -17
  46. package/dist/Form/MultiStep/FormStepContext.d.ts +0 -20
  47. package/dist/Form/MultiStep/FormStepHeader.d.ts +0 -18
  48. package/dist/Form/MultiStep/index.d.ts +0 -3
  49. package/dist/Form/index.d.ts +0 -7
  50. package/dist/Form/stories/Form.stories.d.ts +0 -14
  51. package/dist/Hero/Hero.d.ts +0 -21
  52. package/dist/Hero/HeroActions.d.ts +0 -7
  53. package/dist/Hero/HeroContent.d.ts +0 -9
  54. package/dist/Hero/HeroImage.d.ts +0 -9
  55. package/dist/Hero/index.d.ts +0 -4
  56. package/dist/Hero/stories/Hero.stories.d.ts +0 -33
  57. package/dist/Hero/utils.d.ts +0 -2
  58. package/dist/Input/Input.d.ts +0 -11
  59. package/dist/Input/index.d.ts +0 -1
  60. package/dist/Input/stories/Input.stories.d.ts +0 -8
  61. package/dist/Link/Link.d.ts +0 -8
  62. package/dist/Link/index.d.ts +0 -1
  63. package/dist/Navbar/Navbar.d.ts +0 -6
  64. package/dist/Navbar/NavbarCollapsible.d.ts +0 -6
  65. package/dist/Navbar/NavbarContent.d.ts +0 -7
  66. package/dist/Navbar/NavbarContext.d.ts +0 -6
  67. package/dist/Navbar/NavbarExpandedMobileContent.d.ts +0 -9
  68. package/dist/Navbar/NavbarItem.d.ts +0 -7
  69. package/dist/Navbar/NavbarItems.d.ts +0 -6
  70. package/dist/Navbar/NavbarMenuButton.d.ts +0 -4
  71. package/dist/Navbar/index.d.ts +0 -6
  72. package/dist/Navbar/stories/Navbar.stories.d.ts +0 -5
  73. package/dist/Pagination/Pagination.d.ts +0 -23
  74. package/dist/Pagination/index.d.ts +0 -1
  75. package/dist/Pagination/stories/Pagination.stories.d.ts +0 -24
  76. package/dist/Radio/Radio.d.ts +0 -5
  77. package/dist/Radio/RadioContext.d.ts +0 -10
  78. package/dist/Radio/RadioGroup.d.ts +0 -20
  79. package/dist/Radio/index.d.ts +0 -2
  80. package/dist/Radio/stories/Radio.stories.d.ts +0 -12
  81. package/dist/Select/Select.d.ts +0 -21
  82. package/dist/Select/SelectPlain.d.ts +0 -15
  83. package/dist/Select/index.d.ts +0 -1
  84. package/dist/Select/stories/Select.stories.d.ts +0 -26
  85. package/dist/Snackbar/Snackbar.d.ts +0 -8
  86. package/dist/Snackbar/SnackbarButton.d.ts +0 -6
  87. package/dist/Snackbar/SnackbarContent.d.ts +0 -5
  88. package/dist/Snackbar/index.d.ts +0 -3
  89. package/dist/Snackbar/stories/Snackbar.stories.d.ts +0 -9
  90. package/dist/StepList/StepList.d.ts +0 -25
  91. package/dist/StepList/index.d.ts +0 -1
  92. package/dist/StepList/stories/StepList.stories.d.ts +0 -19
  93. package/dist/TextArea/TextArea.d.ts +0 -15
  94. package/dist/TextArea/index.d.ts +0 -1
  95. package/dist/TextArea/stories/TextArea.stories.d.ts +0 -8
  96. package/dist/TextField/TextField.d.ts +0 -19
  97. package/dist/TextField/index.d.ts +0 -1
  98. package/dist/TextField/stories/TextField.stories.d.ts +0 -9
  99. package/dist/__stories__/Icon.stories.d.ts +0 -8
  100. package/dist/__stories__/PageLayout.stories.d.ts +0 -5
  101. package/dist/__stories__/Typography.stories.d.ts +0 -9
  102. package/dist/grunnmuren.js +0 -1552
  103. package/dist/hooks/index.d.ts +0 -5
  104. package/dist/hooks/useBlockBackgroundColor.d.ts +0 -2
  105. package/dist/hooks/useFallbackId.d.ts +0 -4
  106. package/dist/hooks/useFormControlValidity.d.ts +0 -15
  107. package/dist/hooks/usePrefersReducedMotion.d.ts +0 -1
  108. package/dist/hooks/useScreenMaxWidthMd.d.ts +0 -1
  109. package/dist/index.d.ts +0 -22
  110. package/dist/utils/index.d.ts +0 -2
@@ -1,1552 +0,0 @@
1
- 'use client';
2
- import { jsx as o, jsxs as f, Fragment as O } from "react/jsx-runtime";
3
- import { createContext as y, useContext as A, useState as q, useCallback as N, useEffect as fe, useId as ee, forwardRef as h, Children as Z, isValidElement as W, cloneElement as K, useRef as E, useMemo as C, useReducer as ge } from "react";
4
- import { ChevronDown as te, Warning as re, InfoCircle as ne, LoadingSpinner as he, CheckCircle as pe, MenuAlt as Ae, Close as xe, ChevronRight as ve, ChevronLeft as Ne } from "@obosbbl/grunnmuren-icons";
5
- import { useCollapse as ye } from "react-collapsed";
6
- import c from "clsx";
7
- import { useMediaQuery as ae, useUpdateEffect as we } from "@react-hookz/web";
8
- import { mergeRefs as X } from "react-merge-refs";
9
- const I = () => {
10
- }, Ie = 300, Ce = "duration-300", Y = (e) => {
11
- const { className: r, ...t } = e;
12
- return /* @__PURE__ */ o("div", { className: c(r, "flex flex-col gap-2"), ...t });
13
- }, Q = y({
14
- isExpanded: !1,
15
- setExpanded: I,
16
- // @ts-expect-error noop
17
- getCollapseProps: I,
18
- // @ts-expect-error noop
19
- getToggleProps: I,
20
- onChange: I
21
- }), Ee = (e) => {
22
- const { className: r, defaultOpen: t, onChange: n = I, open: a, ...s } = e, i = ye({
23
- defaultExpanded: t,
24
- isExpanded: a,
25
- duration: Ie,
26
- easing: "cubic-bezier(0.25, 0.1, 0.25, 1)"
27
- });
28
- return /* @__PURE__ */ o(Q.Provider, { value: { onChange: n, ...i }, children: /* @__PURE__ */ o(
29
- "div",
30
- {
31
- className: c(
32
- r,
33
- "rounded-sm border-b-2 border-l-4 border-solid",
34
- i.isExpanded ? "border-l-green-dark" : "border-l-green"
35
- ),
36
- ...s
37
- }
38
- ) });
39
- }, Se = (e) => {
40
- const { children: r, className: t, as: n = "h3", ...a } = e, { getToggleProps: s, onChange: i, isExpanded: d } = A(Q), u = s({ onClick: () => i(!d) });
41
- return /* @__PURE__ */ o(n, { children: /* @__PURE__ */ f(
42
- "button",
43
- {
44
- className: c(
45
- t,
46
- "focus-visible:outline-blue-dark aria-expanded:bg-green-dark group flex min-h-[4rem] w-full items-center justify-between px-5 py-4 text-left text-lg font-semibold focus:outline-none focus-visible:outline-4 focus-visible:outline-offset-0 aria-expanded:text-white"
47
- ),
48
- ...a,
49
- ...u,
50
- id: oe(u["aria-controls"]),
51
- children: [
52
- r,
53
- /* @__PURE__ */ o(
54
- te,
55
- {
56
- className: `shrink-0 text-sm ${Ce} group-aria-expanded:rotate-180`
57
- }
58
- )
59
- ]
60
- }
61
- ) });
62
- }, Re = (e) => {
63
- const { getCollapseProps: r } = A(Q), { className: t, ...n } = e, a = r();
64
- return /* @__PURE__ */ o("div", { ...a, "aria-labelledby": oe(a.id), children: /* @__PURE__ */ o("div", { className: c(t, "p-5 pb-10"), ...n }) });
65
- }, oe = (e) => e + "toggle";
66
- Y.Item = Ee;
67
- Y.Header = Se;
68
- Y.Content = Re;
69
- const ct = (e) => {
70
- const { className: r, children: t, heading: n, severity: a = "alert", ...s } = e;
71
- return /* @__PURE__ */ o(
72
- "section",
73
- {
74
- className: c(r, "p-4 md:py-8", {
75
- "bg-orange-light": a === "info",
76
- "bg-red-light": a === "alert"
77
- }),
78
- role: "alert",
79
- ...s,
80
- children: /* @__PURE__ */ f("div", { className: "flex justify-center", children: [
81
- /* @__PURE__ */ o(
82
- ke,
83
- {
84
- className: "mr-4 flex-none md:mr-8 md:text-2xl",
85
- severity: a
86
- }
87
- ),
88
- /* @__PURE__ */ f("div", { className: "w-prose flex-initial", children: [
89
- /* @__PURE__ */ o("h2", { className: "h4 mb-2", children: n }),
90
- t
91
- ] })
92
- ] })
93
- }
94
- );
95
- }, ke = ({ severity: e, className: r }) => e === "alert" ? /* @__PURE__ */ o(re, { className: c(r, "text-red") }) : /* @__PURE__ */ o(ne, { className: c(r, "text-orange") }), qe = "(prefers-reduced-motion: reduce)", dt = (e = !1) => ae(qe, { initializeWithValue: e });
96
- function se(e) {
97
- switch (e) {
98
- case "gray":
99
- return "bg-gray-lightest";
100
- case "green":
101
- case "mint":
102
- return "bg-mint-light";
103
- case "yellow":
104
- return "bg-yellow";
105
- case "blue":
106
- case "sky":
107
- return "bg-sky-light";
108
- }
109
- }
110
- const Pe = (e) => ae("(max-width: 767.9px)", { initializeWithValue: e });
111
- function P(e, r = !0) {
112
- const [t, n] = q("indeterminate"), [a, s] = q(), i = N((l) => {
113
- l.target.checkValidity() && (n("valid"), s(void 0));
114
- }, []), d = N(
115
- (l) => {
116
- t !== "indeterminate" && l.target.checkValidity() && (n("valid"), s(void 0));
117
- },
118
- [t]
119
- ), u = N((l) => {
120
- l.preventDefault();
121
- const m = l.target.validationMessage;
122
- s(m), n("invalid");
123
- }, []);
124
- return fe(() => {
125
- var m;
126
- const { current: l } = e;
127
- return r && // @ts-expect-error respect the <form noValidate> attribute if we are rendered inside a form
128
- ((m = l == null ? void 0 : l.form) == null ? void 0 : m.noValidate) !== !0 && (l == null || l.addEventListener("blur", i), l == null || l.addEventListener("input", d), l == null || l.addEventListener("invalid", u)), () => {
129
- l == null || l.removeEventListener("blur", i), l == null || l.removeEventListener("input", d), l == null || l.removeEventListener("invalid", u);
130
- };
131
- }, [r, d]), { validity: t, validationMessage: a };
132
- }
133
- function S(e) {
134
- const r = ee();
135
- return e ?? r;
136
- }
137
- const mt = (e) => {
138
- const {
139
- bgColor: r,
140
- className: t,
141
- children: n,
142
- heading: a,
143
- image: s,
144
- ...i
145
- } = e, d = se(r);
146
- return /* @__PURE__ */ o("article", { className: c(t, d, "px-4 py-8 md:py-14"), ...i, children: /* @__PURE__ */ f("div", { className: "container flex flex-col justify-center gap-4 md:flex-row md:gap-12", children: [
147
- s,
148
- /* @__PURE__ */ f("div", { className: "max-w-prose", children: [
149
- a && /* @__PURE__ */ o("h2", { className: "h3 mb-4", children: a }),
150
- n
151
- ] })
152
- ] }) });
153
- }, ut = (e) => /* @__PURE__ */ o(
154
- "img",
155
- {
156
- loading: "lazy",
157
- decoding: "async",
158
- className: "w-20 flex-none self-center md:w-32 md:self-start",
159
- ...e
160
- }
161
- ), Le = {
162
- "standard-primary": "bg-green border-green text-white",
163
- "standard-secondary": "bg-white border-green text-black",
164
- "mint-primary": "bg-mint border-mint text-black",
165
- "mint-secondary": "bg-transparent border-mint text-mint",
166
- "white-primary": "bg-white border-white text-black",
167
- "white-secondary": "bg-transparent border-white text-white",
168
- "light-green-primary": "bg-green-light border-green-light text-black",
169
- "light-green-secondary": "bg-transparent border-green-light text-green-light"
170
- }, bt = h((e, r) => {
171
- const {
172
- children: t,
173
- className: n,
174
- color: a,
175
- href: s,
176
- loading: i,
177
- type: d = "button",
178
- variant: u = "primary",
179
- ...l
180
- } = e, m = A(L), b = Le[`${a ?? m}-${u}`], p = c(n, b, "button"), x = i ? /* @__PURE__ */ o(Me, { children: t }) : t;
181
- return /* @__PURE__ */ o(O, { children: s ? /* @__PURE__ */ o(
182
- "a",
183
- {
184
- "aria-busy": i ? !0 : void 0,
185
- ...l,
186
- href: s,
187
- ref: r,
188
- className: p,
189
- children: x
190
- }
191
- ) : /* @__PURE__ */ o(
192
- "button",
193
- {
194
- "aria-busy": i ? !0 : void 0,
195
- ...l,
196
- type: d,
197
- ref: r,
198
- className: p,
199
- children: x
200
- }
201
- ) });
202
- }), Me = (e) => /* @__PURE__ */ f(O, { children: [
203
- ie(e.children),
204
- /* @__PURE__ */ o(
205
- "span",
206
- {
207
- className: "!visible absolute bottom-1 left-1 right-1 top-1 grid place-items-center overflow-hidden bg-inherit",
208
- "aria-hidden": !0,
209
- children: /* @__PURE__ */ o(he, { className: "animate-spin" })
210
- }
211
- )
212
- ] });
213
- function ie(e) {
214
- return Z.map(e, (r) => {
215
- if (!W(r))
216
- return typeof r == "string" ? /* @__PURE__ */ o("span", { children: r }) : r;
217
- if (r.props.children) {
218
- const t = {
219
- children: ie(r.props.children)
220
- };
221
- r = K(r, t);
222
- }
223
- return r;
224
- });
225
- }
226
- const L = y("standard"), le = y(!0), ze = (e, r) => {
227
- const {
228
- as: t = "div",
229
- body: n,
230
- className: a,
231
- image: s,
232
- rightAlignBody: i = !0,
233
- ...d
234
- } = e;
235
- return /* @__PURE__ */ f(
236
- t,
237
- {
238
- className: c(
239
- a,
240
- "grid gap-8 md:grid-flow-col md:grid-cols-[50%,50%] md:gap-0"
241
- ),
242
- ...d,
243
- ref: r,
244
- children: [
245
- /* @__PURE__ */ o(le.Provider, { value: i, children: s }),
246
- n
247
- ]
248
- }
249
- );
250
- }, Ve = h(ze), Te = h(
251
- (e, r) => {
252
- const { className: t, ...n } = e;
253
- return /* @__PURE__ */ o(
254
- "div",
255
- {
256
- className: c(t, "md:mx-18 self-center"),
257
- ref: r,
258
- ...n
259
- }
260
- );
261
- }
262
- ), Fe = h(
263
- (e, r) => {
264
- const { className: t, children: n, ...a } = e, s = A(le), i = c(
265
- t,
266
- "max-md:rounded-b-3xl w-full",
267
- s ? "md:rounded-r-3xl" : "md:rounded-l-3xl md:order-1"
268
- );
269
- if (W(n)) {
270
- const d = Z.only(n);
271
- return K(d, {
272
- // @ts-expect-error assume className prop is allowed
273
- className: i,
274
- ref: r,
275
- ...a
276
- });
277
- }
278
- return /* @__PURE__ */ o("img", { className: i, ref: r, ...a });
279
- }
280
- ), ft = Object.assign({}, Ve, {
281
- Body: Te,
282
- Image: Fe
283
- }), Je = (e, r) => {
284
- const {
285
- as: t = "div",
286
- className: n,
287
- bgColor: a = "white",
288
- ...s
289
- } = e;
290
- return /* @__PURE__ */ o(
291
- t,
292
- {
293
- className: c(n, "relative overflow-hidden rounded-3xl", {
294
- "border-2 border-solid bg-white": a === "white",
295
- "bg-gray-light": a === "gray"
296
- }),
297
- ...s,
298
- ref: r
299
- }
300
- );
301
- }, gt = h(Je), ht = h(
302
- (e, r) => {
303
- const { className: t, ...n } = e;
304
- return /* @__PURE__ */ o(
305
- "img",
306
- {
307
- className: c(t, "w-full object-cover"),
308
- loading: "lazy",
309
- ...n,
310
- ref: r
311
- }
312
- );
313
- }
314
- ), pt = h(
315
- (e, r) => {
316
- const { bgColor: t, className: n, ...a } = e, s = se(t);
317
- return /* @__PURE__ */ o("div", { className: c(s, n), children: /* @__PURE__ */ o(
318
- "div",
319
- {
320
- className: "container grid grid-cols-1 gap-12 py-16 md:grid-cols-2 md:py-20 lg:py-24",
321
- ...a,
322
- ref: r
323
- }
324
- ) });
325
- }
326
- ), At = h(
327
- (e, r) => {
328
- const { className: t, ...n } = e;
329
- return /* @__PURE__ */ o("div", { className: c(t, "p-8 md:px-10"), ...n, ref: r });
330
- }
331
- ), xt = h((e, r) => {
332
- const { className: t, ...n } = e;
333
- return /* @__PURE__ */ o(
334
- "a",
335
- {
336
- className: c(
337
- t,
338
- "no-underline before:absolute before:left-0 before:top-0 before:block before:h-full before:w-full hover:underline"
339
- ),
340
- ref: r,
341
- ...n
342
- }
343
- );
344
- }), vt = h(
345
- (e, r) => {
346
- const {
347
- children: t,
348
- className: n,
349
- error: a,
350
- id: s,
351
- disableValidation: i = !1,
352
- ...d
353
- } = e, u = E(null), { validity: l, validationMessage: m } = P(
354
- u,
355
- !i
356
- ), g = S(s), b = g + "err", p = a || m;
357
- return /* @__PURE__ */ f("div", { className: "grid gap-2", children: [
358
- /* @__PURE__ */ f("label", { className: c(n, "flex cursor-pointer gap-2.5"), children: [
359
- /* @__PURE__ */ o(
360
- "input",
361
- {
362
- id: g,
363
- className: c(
364
- "checkbox checked:bg-green checked:border-green grid h-[1.25em] w-[1.25em] flex-none translate-y-[0.1em] cursor-pointer appearance-none place-content-center rounded border-2 border-solid bg-white text-white focus:outline-none focus:ring-2",
365
- {
366
- "border-gray-dark focus:ring-black": !a,
367
- "border-red focus:ring-red": !!a
368
- }
369
- ),
370
- ref: r,
371
- type: "checkbox",
372
- ...d,
373
- "aria-describedby": p ? b : void 0,
374
- "aria-invalid": !!a || l === "invalid"
375
- }
376
- ),
377
- t
378
- ] }),
379
- p && /* @__PURE__ */ o(R, { id: b, children: p })
380
- ] });
381
- }
382
- ), je = {
383
- sky: "bg-sky border-sky",
384
- "red-light": "bg-red-light border-red-light",
385
- mint: "bg-mint border-mint",
386
- "orange-light": "bg-orange-light border-orange-light",
387
- "green-light": "bg-green-light border-green-light",
388
- "blue-light": "bg-blue-light border-blue-light"
389
- }, Oe = {
390
- sky: "text-blue-dark",
391
- "red-light": "text-red",
392
- mint: "text-green",
393
- "orange-light": "text-black",
394
- "green-light": "text-green",
395
- "blue-light": "text-blue-dark"
396
- }, Nt = (e) => {
397
- const { className: r, color: t, icon: n, children: a, variant: s = "filled" } = e, i = t && je[t], d = t && Oe[t];
398
- return /* @__PURE__ */ f(
399
- "div",
400
- {
401
- className: c(
402
- "inline-flex items-center gap-0.5 overflow-hidden rounded-lg border-2 text-sm font-semibold",
403
- i,
404
- r
405
- ),
406
- children: [
407
- n && /* @__PURE__ */ o("div", { className: c("px-3 py-2", d), children: n }),
408
- /* @__PURE__ */ o(
409
- "div",
410
- {
411
- className: c("flex-1 px-4 py-2", {
412
- "bg-white": s === "outline"
413
- }),
414
- children: a
415
- }
416
- )
417
- ]
418
- }
419
- );
420
- }, yt = (e) => {
421
- const { className: r, children: t, ...n } = e;
422
- return /* @__PURE__ */ o(L.Provider, { value: "white", children: /* @__PURE__ */ o(
423
- "footer",
424
- {
425
- className: c(
426
- r,
427
- // calculated height for psuedo element fixes rendering artifict that sometimes occurs on specific screen sizes and zoom levels
428
- "bg-blue pt-18 relative pb-12 text-white before:absolute before:-top-px before:left-0 before:right-0 before:h-[calc(1.5rem_+_1px)] before:rounded-b-3xl before:bg-white "
429
- ),
430
- ...n,
431
- children: /* @__PURE__ */ o("div", { className: "container", children: t })
432
- }
433
- ) });
434
- }, wt = (e) => {
435
- const { heading: r, children: t, className: n, ...a } = e;
436
- return /* @__PURE__ */ f(
437
- "form",
438
- {
439
- className: c(
440
- n,
441
- "border-blue-dark block overflow-hidden rounded-b-lg rounded-t-3xl border-2"
442
- ),
443
- ...a,
444
- children: [
445
- r && /* @__PURE__ */ o(Ze, { children: r }),
446
- /* @__PURE__ */ o("div", { className: "p-6 md:p-10", children: t })
447
- ]
448
- }
449
- );
450
- }, Ze = (e) => {
451
- const { className: r, ...t } = e;
452
- return /* @__PURE__ */ o(
453
- "h2",
454
- {
455
- className: c(
456
- r,
457
- "bg-blue-dark p-6 text-xl font-bold text-white md:px-10 md:py-8 md:text-2xl"
458
- ),
459
- ...t
460
- }
461
- );
462
- }, It = (e) => {
463
- const { className: r, ...t } = e;
464
- return /* @__PURE__ */ o(
465
- "div",
466
- {
467
- "aria-live": "polite",
468
- className: c(
469
- r,
470
- "border-red bg-red-light rounded-lg border-2 p-6 text-sm"
471
- ),
472
- ...t,
473
- children: "Beklager! Noe gikk dessverre galt under innesendingen av skjemaet. Prøv gjerne igjen om en stund."
474
- }
475
- );
476
- }, R = (e) => {
477
- const { children: r, className: t, ...n } = e;
478
- return /* @__PURE__ */ f(
479
- "div",
480
- {
481
- className: c(
482
- t,
483
- "bg-red-light text-red flex items-center gap-2 rounded px-2 py-1 text-sm"
484
- ),
485
- "aria-live": "polite",
486
- ...n,
487
- children: [
488
- /* @__PURE__ */ o(re, { className: "text-red flex-shrink-0" }),
489
- r
490
- ]
491
- }
492
- );
493
- }, M = (e) => {
494
- const { className: r, children: t, ...n } = e;
495
- return /* @__PURE__ */ o("div", { className: c(r, "text-gray-dark text-sm"), ...n, children: t });
496
- }, z = (e) => {
497
- const { className: r, children: t, isRequired: n, isInvalid: a, ...s } = e;
498
- return /* @__PURE__ */ f(
499
- "label",
500
- {
501
- className: c(r, "block cursor-pointer font-semibold"),
502
- ...s,
503
- children: [
504
- n && /* @__PURE__ */ o(
505
- "span",
506
- {
507
- className: c(
508
- "mr-1 select-none",
509
- a ? "text-red" : "text-blue"
510
- ),
511
- children: "*"
512
- }
513
- ),
514
- t
515
- ]
516
- }
517
- );
518
- }, Ct = (e) => {
519
- const { className: r, heading: t, text: n, ...a } = e;
520
- return /* @__PURE__ */ f(
521
- "div",
522
- {
523
- className: c(
524
- r,
525
- "bg-gray-lightest flex flex-col gap-8 p-8 text-center"
526
- ),
527
- ...a,
528
- children: [
529
- /* @__PURE__ */ o(
530
- "img",
531
- {
532
- className: "mx-auto",
533
- alt: "Innsending fullført",
534
- height: "220",
535
- width: "247",
536
- src: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAmUAAAIgCAMAAADzxO7KAAABzlBMVEVHcEwfq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Aep84eqc8fq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9AeqM4fq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9Afq9AZT5oZQpMaU50cfrYZQZIZT5oYMYgdjL4aWqEen8kaWaAbc68bWJ8fqM4ZPY8chLkcerMYLocZQZIZP5AceLIenccemcUdkcEfq9AYKYQfqc4ensgeoMoYK4UepcwYLIYep80eosschboemMUcgLcYOI0aX6QZRpUdjr8ZQpMbcq4bcK0enMcYMYgdlMMZP5EbbKsaWaAcerMYNYsdiLsYO44ZSZcaXaIemsYbaaodjL4ZS5gdlsQdksEcfLQYLoccgrgcdLAdir0aW6EZPY8cdrEaUZsaU5wbYaUbZ6gYM4ocfrUaT5oZTZkceLIbY6YbZacaV58dkMAaVZ4bbqwZSJYeocobbawbZqccdbAZS5cYMIjVwWULAAAAVnRSTlMA1yjL8xjn+wQMg7NI738kY0y/MLcco9+fCDTH63sQICybQNPjRKw4zxRgXPe724prVHOTPJdYd6fDUG9nj3mcPFRIaPUb16u4sivTvfOVydqq5+Oo36+JttwAABVySURBVHja7d1nd1RXlsZxgkAE5wAYHDA2xhhsd7cxOHaY7unJeebZlbNUkko555wDItjumW87LySkEi0JqVQb6lb9f6+EpLVUnHtW1d73nnOeY8cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM/Rh68zBnD2nvQKowBXL9VLOn+WgYCfV1+WJH30KkMBL2c/0oaXX2Iw4OS8nqh/j9GAi1dU5BOKMzh4XTt8+gFDgnI7Ubdzlund6wwKylz5H9fT6n/DsKCczpzXLi5QnKGMzmlXJ99maFAuv9YeTl9jcFAeV+v2mmWq/xXDg3J4/wvt49I7jBCOXvm/pX2dPMUY4ai+1DOcvsEg4Whu6ZnqX2OYcBRv1ukAPjzDSKFkNy/qQK5QnKHkyv9zHdDHlxktlOYrHdjtzxgulOIzHcZXFGc4vMu3DzXL9AbFGQ7r1Mc6pItvMmo4XOX/hg6t7hbjhsP4WqX4kuIMB/eaSvP5TcYOB3SjvsRZpi+uMno4WOV/WiWr+zXjh4NU/ld0FOcozvBsH+po3nqfMcQz/EpHdfwEo4h9Xas/8ixTHcfpYT9vn1Y5cJwe9vbOSZUHx+lhT5dULhRn2MNvVD4cp4ddXa8v4yzjOD3s5oN3VV4cp4ennf1U5cZZx3jKBZUfx+lhh3vywMNzFHmp3mOSnWNgsW0zNKLM3mJ9Booq/488JtkXrM5AkU88JlndVQYW295zqfxZmYEir7tMMtZloMiJOo9Jdp6BRVHlf9xjkh3n6RKKnHep/Fn4gyKveEyyepb9oMivXSp/Fv2gyFWXyv8TBhbb9g+NKHnBD5U/tj0rNKLEtdisKkORc1T+8HbXpfInoBVF3nSp/C8wsNh20NCIw/mUyh9Flf/nHpPs3Q8YWWz70qXyZzcJitxyqfxJ/0WRw4ZGHMwlBhbbDh8acRAnCZhGUeX/hsckO/02I4ttX7lU/tcYWGz7zKXyJ1oaRW64bCP/kIFFUeV/2mOSXWEbOYoq/ysulT/xmCjyoUvlf4OBxbbXqPzh7Y5L5f8VA4ttb7tU/m9Q+WNb2UIjdviYyh9FLnlMstuXGVhs+5VL5f8ZA4tt11wq/y8ZWGwre2iEJOlzKn9scwiNkHTxJiOLbR6hEap7k4HFtt+4VP63GFhsu05oBLwRGgH/yp/QCLgjNALufEIjiItDEeLi4O6ES+VPaASKK39CI+CO0Ai4cwmNIC4OxYiLg3/lT2gEvBEaAXeERsAfoRFwR1wc3F0lNALeCI2Af+VPaATcERoBdz6hEcTFoQhxcXB3yqXyJzQCxZU/oRFwR2gE3PmERhAXhyLExcG/8neJiyM0AsWVP6ERcEdoBNwRGgF3xMXBv/InNALeCI2AP0Ij4I7QCLi7RlwcvBEXB3dnXSp/QiNQjNAIuCM0Au6uExcHb8TFwb/yd4mLIzQCxQiNgDtCI+CO0Ai4Iy4O/pW/S1wcoREoRmgE3BEaAXeERsCdT2gEcXEorvyJi4O3My6VP6ERKEZoBNwRGgF3V4mLgzfi4uBf+bvExREagWKERsAdoRFwR2gE3BEXB//K3yUujtAIFCM0Au4IjYA7QiPgzic0grg4FFf+xMXB3deERsAboRFwR2gE/Ct/l6NjiYsr/7vB8eBuaCUuLiDu3tbxwB7I6xIXR2hE2b0S5MPFCY0IhLPfBLnaJTQiGLXz1on43wfw1RMaEQiXTwd5zyFxccGo++sCfXKSS1wcoREedX/R+c8BazQJjQjC5803wS5ICI0IQt1/JdgLqgiNCIA3d12SdS84d2BcQiOIiyur73bfVlYfmGMtiYurfO8FPZzjHqERFV/37/NGcDEQd4sIjQhk3b/t2wDUv4RGVLyrF4O+c8cnNIK4uDJ6/ZnHSVR8o0lcXMWXzc+uaOq/C2jrQmhEZThzKfgNPaERlV73fxv8ZQmERgS87i/aXFGx26oJjQh83R+Aw+GIi6ts3x/qTmaFHnHvEhdHaETZ6v7DbvapyEaT0IiKdvPQB5ZUYqNJaERFO1FC3ELl7XwlNKKivVTSe8DJCht+n9AI4uJeSN2/7ZvK+m8QF1fJdX/px3tV1A3xuy6VP6ER5SlmjnJE+d3K+X8QGlHJdf+R7pXXVcyxJIRGVLDrR1zvVymNpk9oBHFxZfHDkVcuV0ijSVxcNdb9FXbP0icujtCIF133V9SeC0IjKtar5Voj88JPjiA0omJdK9sO/9sv+OR7QiMq1mv1VXNBiIur1Lr/x+q5reQTF0doxJGdLfdz5RfYaBIaUe11fwU0moRGVKg7Hid7vaDDyQmNqFDfuXzE1N95If8Zl9AI4uKO7oTLUSU6/SKe+REXV7F8Dlx9ESuX7xAaUbl+cJllOv+8S2ZCIyra1z7T7DmfH01oRIXflH3LZ5o930bTJTSCuLgy3pZ1OU3i+TaaxMVV/o3Zd30azee3rewaoRGVz+ciPb/DcQiNCASfW03P64hfQiMC4kefafbjc3nxFzxeOqERwWk0n8edc+Liar7R9F//d53QiOD4wOXeud71bjQJjQiUO4FsNAmNCBif1czONwQIjQiaL32m2deOL9knNIK4OM9G87zPNPvB7RUTFxfERvMjn0bT64gJnzWYhEYEs9F82eeIfEIjaDR3XDmXno3QiKC6FZxG0yU0gri45+JcUBpN4uKC7BOfaVbu879OEBoR6EbzU59Gs7ynmBMaEXA+u4HKW1YTGhF4N1xOM9QXZVwWSGgEjab75kbi4mg091SuI5quEhpRFb7xmWbfl+XFERpRLY3mycptNAmNqBqnnBrNq0d/aYRGVI/LLrWPLh755Amf1oS4uBfjrk9p9u0RG03i4qqLz9PoI6aAnHKp/AmNqLpG895RKn9CI2g0D1ZoH2FxDaERVdhoumQa9f9LyY2mzzYr4uJeLI9Su6mrcPFvS+x7iYurSt+V61KuRX/a/CrdVdCfz1bOWyuhES9euTY8To5IkpJJKRzW7D+XUvkTGlG1LpTzkqbH1iRJjSMlrH8gNKJ6vVPKO0gktvv3Q4OhJ1/94bAvhNAIGs0dHkQHnvUr42O/P9zLIC6ORnOnWOM+P8svNkpqtD8dqtE8RWhElXu9rG8j8/ElSZrtuHKIxzqERlS/e+W8tC3LbWlJ6b7WQzyiJjSiBpTxIke6rCsh6dHjtl8OvMWW0IhacObb0q/lTLZzx61/swFJ+mnIenT3YH/+GnFxtdFolr7gpseKZtlkeM0Wk5GEkvMTHSnVHegzi7i4WlH6tqGm7uIpF28opFLR1cPcefdZGkJoRHU0mg923pDNNKel0bZBKTIpKbQ+J0knn/1E84LHJCM0okoazdzWV1PNUmy8JVT800RuYxb+3bP+LqERNeWwzxHXt74amNrzl0JDv9v/r14nLq62Gs1SVkPHIptfZH5OSFJLYutHmbGe9kjOon/c748SF1drbh76NKeF3tzg5ntWj3X1S/OWbdn8xHzUY2bRsYFw3T7LInyOuSI0opId4GS6wfbi2itqs5tfpswapIzZ0JOPypH0/d6VR8n9N3cQGlGDnn2+/tCOEmzCtm6WjSxPKtET79hcEzQSLvq1PY+oIDSiJn1/yAs6ml3e7dvhvD3c+kdrYfHvS53UpSA0ouoazU3dM0++Gs52S3NWSG5+kvaN95nZro0mcXE0mvs/vJxO7nwAMLa5uSTRZs1Km22szI60psz+0mBmv92l8ndJUiE0IgjeP1BgyERmjx8kChYfGTVLKZlWsiveZb1KjhVG43/zV3+J0IhabjQP+DnWks3t9u3G9d6ZAbMRDUQ7WprM7IGUG9Tan/7xqb9DaERNO+Dd+MhobK/3uCWzluao2Ygatm51JP9p50cZoRE17odSrm84ISkct3xIiowVNN4Xf6ifwsvbz9TPnzncrbkSEBcXIF/veykzzbsuM+uVNG9mEUnja5LCLfej4ab7ii2nJKWmYv9aVPkTF0ejud/JrrGeRzvKs/Tm1rhRqT9uUZsselAwoo54JPSwWWqMtjVGtxpNnzxYQiOqodEcTu/yzY5oLikNDtmClPzfJY1mQpLUmm7So/yEmm0ymZCUs/lesyeNJqER2KPRbI3+vMvMi9pYWOFsqkWKddlDTf1f/4Ohkan44qrmzJqUWevLpqUOWzSz/9w4qJrQCBw7dmz3DR8tu3Wa8/EBqWWjxl9re5QcG1KHTaWXmqQ2sw6txn+xdWnAzOJm/37zmFdoBHFxAXTAYyvGIy07nwK0hNRr7ZIUiprNKze/ankp3GXT08MDhX97h7g4bPvxINe2PV+8DDvWNKlkTGtNG6WZmY2rcXnMspLC7fPDyozZf/jExREaEdBG8wCz4afZtGY2Ti6LxKTutu7B+MYCtHQo12FmScUKZl1SLhKTJqK2WHA5pYzQiKD6q3tak8M7C/+NxdeDubAkdY9uTLZuSWqci0/lV8wWJTXGzVKa6onm28wK4SaXyp/QiMB6deea/KJtlpKkbLazU9KkxfsyUvi+JGl1UJLCBWuP9Vg23zs7qtRKz9ijx7ahPeExyQiNqJ5GM7Lz0q7FR9OSWqLxvuatn640rC7NLat1VUpNhKbNrCGTTLRHzcz6ervWuz0mGXFxVdlopoZapYbpjX8sLa08WQcUGtZwT4PZk+fomaiZmT2eaDZraEtpKuQxyQiNCLg98t06F0JSZHPKjBfa05KUkO5HW6UHA+tm2bmRUExaNTPr6R0fNzOLTrW7VP6ERgS90XzqgWNre0iJfMPOFWV90SVpsiMv9dpys6QGMytMNaWkyGKqv1+K5c3MzKfyJzQi+I3mzmXTK7MhhUbDT13n5MyCMmZSaiGclNTc0b65TbO5WVJkpM3MzBbDHpOM0Igq8MFTxz61dj1dwHfGJzvz0sxfvVNlImoalPJdYxv95ZLHJCMurirc2dloDtjTRxc3btT+oa0WdPOeWGysr38p2hHLrJhZ4WF2gcofe9oZwZXuKFr/U/QRGMs+VvNKv6TInLVIk2uJSLJzxmxFsS6bTqvfpfInNKLKG02peft9LZLIJCNm3VImbjYvdWdbJYXNTPo571KRidCIKm40pXDPQzX/Ra1bk2w1npJCcympP2pmtjS/NLQgqdOsQWodSjW6TDJCI6qp0Xz6ZJ5EZyST3ajDfpKkfosnlOnePJbFzLJm1tWRUrpjbrpfSxad9JhkxMVVlV3OF071S9J43vokrVqDYs0225mUOqNmlmozs8Vwd07rtqR5nztlxMVVmRu3FW7YeD/q7C16nrm0kO+R9Mj6NNvVHrWxfEN3u5mlw3mzdi3nNPEopLUOj0lGaETVuZVo23w8NDOx82FkTFKyrWsyGUo0rpgVwrNmNqles80TWmKREZfHl4RGVJ9zm8etJJO77vltstVQw9hAy0Q4sdCRbk7roVm+IxnLDTVPF2Iek4zQiGq0cWxiemz7dIx0z2aAYahbak2MmNm8pJxlNjcAP9JDs/UJl/6S0IiqbTTXLL2Rs9rSIqmlKSZJ4Ya+jDIDCs2ZRZOJll5bkDScN7MmM+t0uYdBXFz1NpqDjZtL/Kdnt673g/V4WMq3S6FZs8Yl67KGobXe9lBmJeq2EIPQiKp1eXMf5XRhbfMon8ZBrVnmYTLTLEXC6rRoJJS1Qq7BzB7HctHUxNS6S+VPaET1urtxidvs4YOYpIHHNjBo08PR3oZ2tcbvR7K2IA1Fx6X0sllDZsTpuRKhEVVt42S7zrFWSVIulRxZtuyK9UqR/kZpuF9SuF+SYmaW/WXI5RE5oRFV7psnO0s2jsCes7XRRw9tVmtm2dygRhq2jivLWlfcLO0xyYiLq/ZGczNlMLVx7P/P1iGFl7s3Hl5a119yhexsxy/jCSm7GGqLr1H5owSndj7RTG18doaWei26uJ6U+uNmZtlxtRf0yGfLEqERtdNoSmoZSUlaja82tnVrcm2i0BSSes3Glm0xkZjL+SwqIzSiJhrN0SerZVOZlKTu5sRgU7+UNbOhCVu0QqbbmsJtNubSYhIaURt+Z6NbT8pzG48oH2eliV9mOmeHorm5ZGgunpi17d8qJ+LiasU/SFIoty6pMB1R39p4quXJ3vK5tlUlcgtaMJfNJMTF1Yx3rqgx0mgWCbWbbR6Y/SR9NW5Dam2Ots/43PMnNKKGGs3/ig+t9OQ1Z/Zkf8nopKTwqIabO9OpxoGBhqTHJCM0opb8fix/P7m8YLYVUNiZ7ZYasgkpParhfNuwxyQjNKK2/EHqtPb5eE6xhnx6vDXUY/FWRQak1FS8IW7jHpOM0Iha88paW9eImjJqeWxD89N9vWZTai6Mz5mZ2ZRL5U9cXM35b0mJrhkpNJiQpA5r08zmgYu9LtvICY2oPWe+VVNffPMORiKiWDar0GOztbxNu6zzJzSiJhvN/7HB1YJlVx4omR2ShttCCi33ducaXCp/QiNq0+U5dZqZNUh9CWlppWdEww8t+oDQCJSx0azXUt/sSrO0IDWa2YpmzCY8JhlxcbXrniRFIlJOajdbaF/tsAEqf5TXJUnL0Xxfp/RgvV+FvrU2lwdLhEbUeKOZNDOzRoVHJWnEZQk2oRE13mhe1LKZPfmcDLcSGoHyO1Gn7j6zuPqldFuzxyQjLg4vzUxopquQt57h+XWXyp+4OBz77bQUemxm0wmXyp/QCBw7duxDKTRtZl0uD5YIjcCxY8eOnXmjW4nOvo5BQiPg5+afJU24LI4lNAJP/D4zE/MJjSAuDlv+OO2zw5fQCBQ3mi7tJaER2OFrQiPg32h+TmgE3L1/nLg4uDvxMpU/3F2vJzQC7n4gNAJBajQJjcCejeZbxMXB3dkyNZrExWEfr75LaATcXStDo0loBJ7hNUIj4O9HQiNQ8Y0mcXFwbzQJjcCBfHCa0Ai4u1Nyo0loBA7sM0Ij4O9L4uLg32iep/KHf6P5EaERqMBGk9AIuDeahEagBLeIi4O/c8TFwd8nhEbAv9H8lNAIuHv7gI0moRE4ghu3CY1AZTSaxMXBvdEkNAJH9Q2hEfBvNE8SGgF3p04TGgF3l+uIi4O7u1T+8PcKoRF4YY0moRFwbzQJjUB5G82PiYuDuzfriIuDu+8IjYC/9wiNgL8LhEbA3TtXCI3A82w0iYuDe6NJaAT8vF5PaATc3SM0Av4uERoBd2e+JS4O/o3mJSp/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQzf4fvVAR8mmt7fEAAAAASUVORK5CYII="
537
- }
538
- ),
539
- t && /* @__PURE__ */ o("h2", { className: "text-blue text-2xl", children: t }),
540
- n && /* @__PURE__ */ o("p", { className: "text-lg", children: n })
541
- ]
542
- }
543
- );
544
- }, We = (e) => {
545
- const { className: r, collapsed: t, step: n, onClick: a, children: s, formStatus: i } = e;
546
- return /* @__PURE__ */ o(
547
- "button",
548
- {
549
- type: "button",
550
- "aria-disabled": t,
551
- onClick: a,
552
- className: c(
553
- r,
554
- "border-blue-dark w-full rounded-t-lg border-2 py-4 pl-4 md:py-8 ",
555
- {
556
- "bg-blue-dark": !t,
557
- "border-black bg-white": t && i !== "completed",
558
- "border-green bg-green text-white": t && i === "completed",
559
- "rounded-t-2xl md:rounded-t-3xl": n === 1,
560
- "rounded-lg": t
561
- }
562
- ),
563
- children: /* @__PURE__ */ o(
564
- Ke,
565
- {
566
- collapsed: t,
567
- step: n,
568
- formStatus: i,
569
- children: s
570
- }
571
- )
572
- }
573
- );
574
- }, Ke = (e) => {
575
- const { collapsed: r, step: t, children: n, formStatus: a } = e, s = C(() => {
576
- switch (a) {
577
- case "blank":
578
- return "Ikke utfylt";
579
- case "completed":
580
- return "Fullført";
581
- }
582
- }, [a]), i = C(() => {
583
- if (!r)
584
- return /* @__PURE__ */ o("div", { children: t });
585
- switch (a) {
586
- case "blank":
587
- return /* @__PURE__ */ o("div", { children: t });
588
- case "completed":
589
- return /* @__PURE__ */ o(pe, { className: "h-10 w-10 md:h-12 md:w-12" });
590
- }
591
- }, [a, t, r]);
592
- return /* @__PURE__ */ f(
593
- "h2",
594
- {
595
- className: c(
596
- "grid grid-cols-[auto_1fr] grid-rows-[1fr_auto] items-center text-left text-xl font-bold md:text-2xl",
597
- {
598
- "text-white": !r
599
- }
600
- ),
601
- children: [
602
- /* @__PURE__ */ o(
603
- "div",
604
- {
605
- className: c(
606
- "row-span-2 mr-4 flex h-10 w-10 items-center justify-center self-center rounded-full border-2 font-bold md:h-12 md:w-12",
607
- {
608
- "border-white text-white": !r,
609
- "border-black": r && a !== "completed",
610
- "border-none": a === "completed" && r
611
- }
612
- ),
613
- role: "text",
614
- children: i
615
- }
616
- ),
617
- n,
618
- r && /* @__PURE__ */ o(
619
- "div",
620
- {
621
- className: c(
622
- "text-base font-normal",
623
- a === "completed" ? "text-white" : "text-black"
624
- ),
625
- children: s
626
- }
627
- )
628
- ]
629
- }
630
- );
631
- }, U = y([
632
- {
633
- activeStep: 1,
634
- formData: {}
635
- },
636
- () => {
637
- }
638
- ]);
639
- function Et() {
640
- const [e, r] = A(U);
641
- return {
642
- activeStep: e.activeStep,
643
- formData: e.formData,
644
- setActiveStep: (t) => r({ type: "SET_STEP", step: t })
645
- };
646
- }
647
- function Xe(e) {
648
- const [r, t] = A(U), n = N(async () => {
649
- t({ type: "PREV_STEP" });
650
- }, [t]), a = N(
651
- (d) => {
652
- t({
653
- type: "SET_FORM_STEP_DATA",
654
- formId: `form${e}`,
655
- formValues: d
656
- });
657
- },
658
- [t, e]
659
- ), s = N(() => {
660
- t({ type: "NEXT_STEP" });
661
- }, [t]), i = N(
662
- (d) => {
663
- a(d), s();
664
- },
665
- [s, a]
666
- );
667
- return {
668
- isActive: r.activeStep === e,
669
- activeStep: r.activeStep,
670
- setActiveStep: (d) => t({ type: "SET_STEP", step: d }),
671
- previousFormStep: n,
672
- nextFormStep: s,
673
- submitAndNextFormStep: i,
674
- setFormData: a,
675
- formData: r.formData
676
- };
677
- }
678
- function Ye(e, r) {
679
- switch (r.type) {
680
- case "NEXT_STEP":
681
- return {
682
- ...e,
683
- activeStep: e.activeStep + 1
684
- };
685
- case "PREV_STEP":
686
- return {
687
- ...e,
688
- activeStep: Math.max(e.activeStep - 1, 1)
689
- };
690
- case "SET_STEP":
691
- return {
692
- ...e,
693
- activeStep: r.step
694
- };
695
- case "SET_FORM_STEP_DATA":
696
- return {
697
- ...e,
698
- formData: {
699
- ...e.formData,
700
- [r.formId]: r.formValues
701
- }
702
- };
703
- }
704
- }
705
- function St({ children: e }) {
706
- const [r, t] = ge(Ye, {
707
- activeStep: 1,
708
- formData: {}
709
- }), n = C(() => [r, t], [r, t]);
710
- return /* @__PURE__ */ o(U.Provider, { value: n, children: e });
711
- }
712
- const Rt = (e) => {
713
- const {
714
- children: r,
715
- heading: t,
716
- step: n,
717
- formStatus: a = "blank",
718
- onSubmit: s,
719
- className: i,
720
- onHeaderClick: d,
721
- ...u
722
- } = e, { isActive: l, setActiveStep: m, activeStep: g } = Xe(n), b = E(null), p = N(() => {
723
- n < g && (d == null || d(n), m(n));
724
- }, [g, n, m, d]);
725
- return we(() => {
726
- var x;
727
- l && ((x = b.current) == null || x.scrollIntoView({ behavior: "smooth" }));
728
- }, [l]), /* @__PURE__ */ f(
729
- "form",
730
- {
731
- className: c("block", i, {
732
- "border-none": a === "completed" && !l
733
- }),
734
- onSubmit: s,
735
- ref: b,
736
- ...u,
737
- children: [
738
- /* @__PURE__ */ o(
739
- We,
740
- {
741
- step: n,
742
- formStatus: a,
743
- collapsed: !l,
744
- onClick: p,
745
- children: t
746
- }
747
- ),
748
- l && /* @__PURE__ */ o("div", { className: "border-blue-dark relative rounded-b-lg border-2 p-6 md:p-10", children: r })
749
- ]
750
- }
751
- );
752
- };
753
- function ce(e) {
754
- return e !== "vertical-split" && e !== "below-center" && e !== "below-left";
755
- }
756
- const V = y({ bgColor: "white", contentPosition: "below-center", hasImage: !1 }), kt = h((e, r) => {
757
- const {
758
- bgColor: t = "white",
759
- children: n,
760
- className: a,
761
- contentPosition: s = "below-center",
762
- image: i,
763
- ...d
764
- } = e, u = i != null, l = u ? s : "below-center", m = C(
765
- () => ({
766
- bgColor: t,
767
- contentPosition: l,
768
- hasImage: u
769
- }),
770
- [t, l, u]
771
- );
772
- return /* @__PURE__ */ o(
773
- L.Provider,
774
- {
775
- value: t === "white" ? "standard" : "mint",
776
- children: /* @__PURE__ */ o(V.Provider, { value: m, children: /* @__PURE__ */ f(
777
- "div",
778
- {
779
- className: c(
780
- a,
781
- // disable padding on small screens so the hero image is flush with the screen edges
782
- "container px-0 md:grid lg:px-4",
783
- {
784
- "md:grid-cols-[50%,50%]": l === "vertical-split"
785
- }
786
- ),
787
- style: ce(l) ? { gridTemplateAreas: '"hero"' } : void 0,
788
- ...d,
789
- ref: r,
790
- children: [
791
- i,
792
- n
793
- ]
794
- }
795
- ) })
796
- }
797
- );
798
- }), qt = h(
799
- (e, r) => {
800
- const { contentPosition: t } = A(V);
801
- return /* @__PURE__ */ f(
802
- "picture",
803
- {
804
- className: c(e.className, "aspect-w-6 aspect-h-7 block", {
805
- "sm:aspect-w-8 sm:aspect-h-4": t !== "vertical-split",
806
- // calculate a square aspect ratio
807
- "sm:aspect-w-8 sm:aspect-h-8": t === "vertical-split"
808
- }),
809
- style: t !== "vertical-split" && t !== "below-center" && t !== "below-left" ? { gridArea: "hero" } : void 0,
810
- ref: r,
811
- children: [
812
- /* @__PURE__ */ o("source", { media: "(min-width: 640px)", srcSet: e.mdSrc }),
813
- /* @__PURE__ */ o(
814
- "img",
815
- {
816
- className: "object-cover",
817
- decoding: "async",
818
- src: e.src,
819
- alt: e.alt
820
- }
821
- )
822
- ]
823
- }
824
- );
825
- }
826
- ), Pt = h(
827
- (e, r) => {
828
- const { bgColor: t, contentPosition: n, hasImage: a } = A(V), { children: s, className: i, heading: d, description: u, ...l } = e, m = ce(n);
829
- return /* @__PURE__ */ f(
830
- "div",
831
- {
832
- className: c(
833
- i,
834
- "relative grid grid-flow-row grid-cols-[minmax(auto,_37rem)] content-center gap-6 rounded-3xl px-6 py-10 text-center max-md:mx-4 md:p-12",
835
- {
836
- // On mobile we use negative margin on the content to pull the content up into the image
837
- "max-md:-mt-18": a,
838
- "text-white": t !== "white",
839
- "bg-green-dark": t === "green",
840
- "bg-blue-dark": t === "blue",
841
- "bg-white": t === "white",
842
- // vertical split
843
- // vertically center the content, remove the border radius on the edge, add some negative margin to pull the image beneath the hero content, left align the content
844
- "md:z-10 md:-order-1 md:-mr-5 md:mt-0 md:justify-center md:rounded-l-none md:text-left": n === "vertical-split",
845
- // below center/content header
846
- "justify-center md:mx-auto md:w-4/5": n === "below-center",
847
- "md:-mt-18": a && n === "below-center",
848
- // Below left style
849
- "md:-mt-32 md:ml-[8%] md:max-w-[58%] md:text-left": n === "below-left",
850
- // styles for when the contain is fully contained within the image
851
- "md:mx-32 md:my-9 md:w-2/5": m,
852
- "self-end justify-self-start": n === "bottom-left",
853
- "self-start justify-self-start": n === "top-left",
854
- "self-start justify-self-end": n === "top-right",
855
- "self-end justify-self-end": n === "bottom-right",
856
- "self-center justify-self-center": n === "center"
857
- }
858
- ),
859
- ...l,
860
- style: m ? { gridArea: "hero" } : void 0,
861
- ref: r,
862
- children: [
863
- /* @__PURE__ */ o("h1", { children: d }),
864
- u && /* @__PURE__ */ o("p", { className: "text-lg font-semibold md:text-xl", children: u }),
865
- s
866
- ]
867
- }
868
- );
869
- }
870
- ), Lt = h(
871
- (e, r) => {
872
- const { className: t, ...n } = e, { contentPosition: a } = A(V);
873
- return /* @__PURE__ */ o(
874
- "div",
875
- {
876
- className: c(
877
- t,
878
- "grid items-center justify-center justify-items-center gap-4 md:grid-flow-col",
879
- // Left align actions/buttons
880
- {
881
- "md:justify-start": a === "vertical-split" || a === "below-left"
882
- }
883
- ),
884
- ...n,
885
- ref: r
886
- }
887
- );
888
- }
889
- ), de = h((e, r) => {
890
- const {
891
- className: t,
892
- isInvalid: n,
893
- size: a,
894
- as: s,
895
- type: i,
896
- rightAddon: d,
897
- leftAddon: u,
898
- ...l
899
- } = e, m = s ?? "input", g = Qe(m, i);
900
- return /* @__PURE__ */ f(
901
- "div",
902
- {
903
- className: c(
904
- t,
905
- "relative flex items-center rounded-lg border border-b-[3px] focus-within:-ml-[2px] focus-within:-mt-[2px] focus-within:border-[3px] focus-within:shadow",
906
- {
907
- "focus-within:border-blue-dark border-black": !n,
908
- "border-red focus-within:border-red": n,
909
- "w-fit": a != null,
910
- "w-full": a == null,
911
- "pl-4": u,
912
- "pr-4": d
913
- }
914
- ),
915
- children: [
916
- u,
917
- /* @__PURE__ */ o(
918
- m,
919
- {
920
- "aria-invalid": n,
921
- ref: r,
922
- className: "focus:none placeholder-gray w-full rounded-lg border-none px-4 py-3.5 focus:outline-none",
923
- size: a,
924
- type: g,
925
- ...l
926
- }
927
- ),
928
- d
929
- ]
930
- }
931
- );
932
- });
933
- function Qe(e, r) {
934
- if (r != null)
935
- return r;
936
- if (e === "input")
937
- return "text";
938
- }
939
- const Mt = (e) => {
940
- let r = "";
941
- return e.icon && (r = "inline-flex items-center gap-2"), /* @__PURE__ */ f("a", { className: r, href: e.href, children: [
942
- e.icon,
943
- e.children
944
- ] });
945
- }, k = y({
946
- setIsExpanded: I,
947
- isExpanded: !1,
948
- collapsibleId: ""
949
- }), zt = (e) => {
950
- const { className: r, children: t, ...n } = e, a = ee(), [s, i] = q(!1), d = C(
951
- () => ({ isExpanded: s, setIsExpanded: i, collapsibleId: a }),
952
- [s, a]
953
- );
954
- return /* @__PURE__ */ o(L.Provider, { value: "white", children: /* @__PURE__ */ o(k.Provider, { value: d, children: /* @__PURE__ */ o(
955
- "div",
956
- {
957
- className: c(
958
- r,
959
- "bg-blue relative pb-12 pt-6 text-white before:absolute before:bottom-0 before:left-0 before:right-0 before:h-6 before:rounded-t-3xl before:bg-white md:pb-14 md:pt-8"
960
- ),
961
- ...n,
962
- children: /* @__PURE__ */ o("div", { className: "container", children: t })
963
- }
964
- ) }) });
965
- }, Vt = (e) => {
966
- const { className: r, children: t, ...n } = e, { isExpanded: a } = A(k);
967
- return /* @__PURE__ */ o(
968
- "nav",
969
- {
970
- className: c(
971
- r,
972
- "my-8 flex flex-col md:mb-0 md:flex md:flex-row md:flex-wrap md:gap-x-8",
973
- {
974
- hidden: !a
975
- }
976
- ),
977
- ...n,
978
- children: t
979
- }
980
- );
981
- }, Tt = h(
982
- (e, r) => {
983
- const { active: t, className: n, children: a, ...s } = e;
984
- return /* @__PURE__ */ o(
985
- "a",
986
- {
987
- "aria-current": t ? "page" : void 0,
988
- className: c(
989
- n,
990
- "border-b border-[#0156E0] py-3 no-underline md:border-b-2 md:border-transparent md:py-2 md:hover:border-white",
991
- {
992
- "md:bg-blue-dark font-bold md:-mx-3 md:rounded-t-lg md:px-3": t
993
- }
994
- ),
995
- ref: r,
996
- ...s,
997
- children: a
998
- }
999
- );
1000
- }
1001
- ), Ue = () => {
1002
- const { isExpanded: e, setIsExpanded: r, collapsibleId: t } = A(k);
1003
- let n = Ae, a = "Meny";
1004
- return e && (n = xe, a = "Lukk"), /* @__PURE__ */ f(
1005
- "button",
1006
- {
1007
- "aria-controls": t,
1008
- "aria-expanded": e,
1009
- className: "inline-flex items-center gap-2 md:hidden",
1010
- onClick: () => r((s) => !s),
1011
- children: [
1012
- a,
1013
- " ",
1014
- /* @__PURE__ */ o(n, {})
1015
- ]
1016
- }
1017
- );
1018
- }, Ft = (e) => {
1019
- const { className: r, children: t, logo: n, ...a } = e;
1020
- return /* @__PURE__ */ f(
1021
- "div",
1022
- {
1023
- className: c(r, "flex items-center justify-between gap-8"),
1024
- ...a,
1025
- children: [
1026
- n,
1027
- /* @__PURE__ */ o("div", { className: "hidden md:block", children: t }),
1028
- /* @__PURE__ */ o(Ue, {})
1029
- ]
1030
- }
1031
- );
1032
- }, Jt = (e) => {
1033
- const { className: r, children: t, ...n } = e, { collapsibleId: a, isExpanded: s } = A(k);
1034
- return /* @__PURE__ */ o(
1035
- "div",
1036
- {
1037
- ...n,
1038
- "aria-hidden": !s,
1039
- className: c(r, "md:-mb-8 md:block", {
1040
- hidden: !s
1041
- }),
1042
- id: a,
1043
- children: t
1044
- }
1045
- );
1046
- }, jt = (e) => {
1047
- const { isExpanded: r } = A(k), t = Pe(!1);
1048
- return !r || !t ? null : /* @__PURE__ */ o(O, { children: e.children });
1049
- }, w = 2, T = y({ currentPage: 0, pageCount: 0 }), Ot = (e) => {
1050
- const {
1051
- className: r,
1052
- page: t,
1053
- count: n,
1054
- onChange: a,
1055
- getItemHref: s,
1056
- getItemAriaLabel: i,
1057
- nextPageAriaLabel: d,
1058
- prevPageAriaLabel: u,
1059
- ...l
1060
- } = e, m = C(
1061
- () => ({
1062
- currentPage: Math.max(1, Math.min(t, n)),
1063
- pageCount: Math.max(1, n)
1064
- }),
1065
- [t, n]
1066
- ), g = (b) => (p) => {
1067
- a && (p.preventDefault(), a(b));
1068
- };
1069
- return /* @__PURE__ */ o(T.Provider, { value: m, children: /* @__PURE__ */ f(
1070
- "nav",
1071
- {
1072
- className: c("flex justify-center gap-2 sm:gap-4", r),
1073
- ...l,
1074
- children: [
1075
- /* @__PURE__ */ o(
1076
- De,
1077
- {
1078
- "aria-label": u,
1079
- href: s(t - 1),
1080
- onClick: g(t - 1)
1081
- }
1082
- ),
1083
- /* @__PURE__ */ o(
1084
- _,
1085
- {
1086
- page: 1,
1087
- href: s(1),
1088
- onClick: g(1),
1089
- "aria-label": i(1),
1090
- selected: t === 1
1091
- }
1092
- ),
1093
- n > 2 + w * 2 && t > w + 2 && /* @__PURE__ */ o(He, {}),
1094
- /* @__PURE__ */ o(Ge, { children: (b) => /* @__PURE__ */ o(
1095
- _,
1096
- {
1097
- href: s(b),
1098
- onClick: g(b),
1099
- "aria-label": i(b),
1100
- page: b,
1101
- selected: b === t
1102
- },
1103
- b
1104
- ) }),
1105
- /* @__PURE__ */ o(
1106
- Be,
1107
- {
1108
- "aria-label": d,
1109
- href: s(t + 1),
1110
- onClick: g(t + 1)
1111
- }
1112
- )
1113
- ]
1114
- }
1115
- ) });
1116
- }, Be = h((e, r) => {
1117
- const { currentPage: t, pageCount: n } = A(T), a = t >= n;
1118
- return /* @__PURE__ */ o(
1119
- B,
1120
- {
1121
- "aria-hidden": a,
1122
- className: a ? "invisible" : void 0,
1123
- ref: r,
1124
- rel: "next",
1125
- ...e,
1126
- children: /* @__PURE__ */ o(ve, {})
1127
- }
1128
- );
1129
- }), De = h((e, r) => {
1130
- const { currentPage: t } = A(T), n = t <= 1;
1131
- return /* @__PURE__ */ o(
1132
- B,
1133
- {
1134
- "aria-hidden": n,
1135
- className: n ? "invisible" : void 0,
1136
- ref: r,
1137
- rel: "prev",
1138
- ...e,
1139
- children: /* @__PURE__ */ o(Ne, {})
1140
- }
1141
- );
1142
- }), B = h((e, r) => {
1143
- const { className: t, ...n } = e;
1144
- return /* @__PURE__ */ o(
1145
- "a",
1146
- {
1147
- className: c(
1148
- t,
1149
- "aria-[current]:border-green hover:bg-gray-lightest flex h-9 w-9 items-center justify-center rounded-lg border-2 border-transparent no-underline sm:h-10 sm:w-10"
1150
- ),
1151
- ref: r,
1152
- ...n
1153
- }
1154
- );
1155
- }), He = () => /* @__PURE__ */ o("span", { className: "flex h-9 w-9 cursor-default items-center justify-center border-2 border-transparent sm:h-10 sm:w-10", children: "..." }), Ge = ({ children: e }) => {
1156
- const { currentPage: r, pageCount: t } = A(T), n = Math.min(
1157
- Math.max(2 + w * 2, r + w),
1158
- t
1159
- );
1160
- let a = Math.max(
1161
- Math.min(r - w, n - w * 2),
1162
- 1
1163
- );
1164
- return a - w === 0 && (a = a - 1), Array.from({ length: n - a }, (i, d) => a + d + 1).map((i) => e(i));
1165
- }, _ = h((e, r) => {
1166
- const { page: t, selected: n, ...a } = e;
1167
- return /* @__PURE__ */ o(B, { "aria-current": n ? "page" : void 0, ref: r, ...a, children: t });
1168
- }), me = y({
1169
- defaultValue: void 0,
1170
- isControlled: !1,
1171
- name: void 0,
1172
- onChange: I,
1173
- required: !1,
1174
- value: void 0,
1175
- error: !1
1176
- }), Zt = h((e, r) => {
1177
- const { children: t, className: n, ...a } = e, { defaultValue: s, isControlled: i, name: d, onChange: u, required: l, value: m, error: g } = A(me);
1178
- return /* @__PURE__ */ f("label", { className: c(n, "flex cursor-pointer gap-2.5"), children: [
1179
- /* @__PURE__ */ o(
1180
- "input",
1181
- {
1182
- className: c("radio", g && "border-red"),
1183
- defaultChecked: i ? void 0 : a.value === s,
1184
- checked: i ? a.value === m : void 0,
1185
- name: d,
1186
- onChange: i ? u : void 0,
1187
- required: l,
1188
- type: "radio",
1189
- ref: r,
1190
- ...a
1191
- }
1192
- ),
1193
- t
1194
- ] });
1195
- }), Wt = h(
1196
- (e, r) => {
1197
- const t = "value" in e, {
1198
- className: n,
1199
- defaultValue: a,
1200
- description: s,
1201
- error: i,
1202
- id: d,
1203
- children: u,
1204
- label: l,
1205
- name: m,
1206
- onChange: g,
1207
- required: b,
1208
- value: p,
1209
- ...x
1210
- } = e, v = N(
1211
- (ue) => {
1212
- const be = ue.target.value;
1213
- g == null || g(be);
1214
- },
1215
- [g]
1216
- ), F = C(
1217
- () => ({
1218
- defaultValue: a,
1219
- isControlled: t,
1220
- name: m,
1221
- onChange: v,
1222
- required: b,
1223
- value: p,
1224
- error: !!i
1225
- }),
1226
- [a, t, m, v, b, p, i]
1227
- ), J = S(d), D = `${J}:label`, H = `${J}:help`, G = J + "err", j = i;
1228
- return /* @__PURE__ */ o(me.Provider, { value: F, children: /* @__PURE__ */ f(
1229
- "div",
1230
- {
1231
- "aria-describedby": c({
1232
- [G]: j,
1233
- [H]: s
1234
- }) || void 0,
1235
- "aria-invalid": !!i,
1236
- "aria-labelledby": l ? D : void 0,
1237
- className: c(n, "flex flex-col gap-4"),
1238
- role: "radiogroup",
1239
- ref: r,
1240
- ...x,
1241
- children: [
1242
- l && /* @__PURE__ */ o(z, { id: D, isRequired: b, isInvalid: !!i, children: l }),
1243
- s && /* @__PURE__ */ o(M, { id: H, children: s }),
1244
- u,
1245
- j && /* @__PURE__ */ o(R, { id: G, children: j })
1246
- ]
1247
- }
1248
- ) });
1249
- }
1250
- ), _e = h(
1251
- (e, r) => {
1252
- const { children: t, className: n, isInvalid: a, size: s, ...i } = e, d = s === "small";
1253
- return /* @__PURE__ */ f("div", { className: c(n, "relative", d && "text-sm"), children: [
1254
- /* @__PURE__ */ o(
1255
- "select",
1256
- {
1257
- "aria-invalid": a,
1258
- ...i,
1259
- className: c(
1260
- "w-full cursor-pointer appearance-none border border-b-[3px] bg-white focus:-ml-0.5 focus:-mt-0.5 focus:border-[3px] focus:shadow focus:outline-none",
1261
- d ? "rounded px-3.5 py-2" : "rounded-lg px-4 py-3.5",
1262
- a ? "border-red focus:border-red" : "focus:border-blue-dark border-black"
1263
- ),
1264
- ref: r,
1265
- children: t
1266
- }
1267
- ),
1268
- /* @__PURE__ */ o(
1269
- te,
1270
- {
1271
- className: c(
1272
- "pointer-events-none absolute bottom-0 top-0 my-auto",
1273
- d ? "right-3.5" : "right-4"
1274
- )
1275
- }
1276
- )
1277
- ] });
1278
- }
1279
- ), Kt = h(
1280
- (e, r) => {
1281
- const {
1282
- description: t,
1283
- error: n,
1284
- id: a,
1285
- label: s,
1286
- disableValidation: i = !1,
1287
- ...d
1288
- } = e, u = E(null), l = X([u, r]), { validity: m, validationMessage: g } = P(
1289
- u,
1290
- !i
1291
- ), b = S(a), p = b + "help", x = b + "err", v = n || g;
1292
- return /* @__PURE__ */ f("div", { className: "grid gap-2", children: [
1293
- /* @__PURE__ */ o(
1294
- z,
1295
- {
1296
- htmlFor: b,
1297
- isRequired: e.required,
1298
- isInvalid: !!n || m === "invalid",
1299
- children: s
1300
- }
1301
- ),
1302
- t && /* @__PURE__ */ o(M, { id: p, children: t }),
1303
- /* @__PURE__ */ o(
1304
- _e,
1305
- {
1306
- id: b,
1307
- ref: l,
1308
- ...d,
1309
- isInvalid: !!n || m === "invalid",
1310
- "aria-describedby": c({
1311
- [x]: v,
1312
- [p]: t
1313
- }) || void 0
1314
- }
1315
- ),
1316
- v && /* @__PURE__ */ o(R, { id: x, children: v })
1317
- ] });
1318
- }
1319
- ), Xt = (e) => {
1320
- const { heading: r, children: t, closeSnackbar: n } = e, [a, s] = q(!1);
1321
- return /* @__PURE__ */ o("div", { className: "container max-w-[59rem]", children: /* @__PURE__ */ o("div", { className: "bg-orange-light px-8 py-4 max-md:p-4", children: /* @__PURE__ */ f("div", { className: "snackbar grid items-center", children: [
1322
- /* @__PURE__ */ o(ne, { className: "text-orange snackbar-icon mr-4 self-start md:mr-8 md:text-2xl" }),
1323
- /* @__PURE__ */ o(
1324
- "h3",
1325
- {
1326
- className: c(
1327
- "snackbar-header min-w-0 max-w-prose text-base font-medium",
1328
- {
1329
- "overflow-hidden overflow-ellipsis whitespace-nowrap": !a
1330
- }
1331
- ),
1332
- children: r
1333
- }
1334
- ),
1335
- /* @__PURE__ */ f("div", { className: "snackbar-actions flex justify-end gap-4 max-md:mt-3 md:ml-4", children: [
1336
- /* @__PURE__ */ o(
1337
- $,
1338
- {
1339
- "aria-expanded": a,
1340
- onClick: () => s(!a),
1341
- children: a ? "Les mindre" : "Les mer"
1342
- }
1343
- ),
1344
- /* @__PURE__ */ o($, { onClick: n, children: "Ok" })
1345
- ] }),
1346
- a && t
1347
- ] }) }) });
1348
- }, $ = (e) => /* @__PURE__ */ o(
1349
- "button",
1350
- {
1351
- className: c(
1352
- e.className,
1353
- "focus-visible:ring-offset flex-shrink-0 underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-black"
1354
- ),
1355
- ...e,
1356
- children: e.children
1357
- }
1358
- ), Yt = (e) => /* @__PURE__ */ o(
1359
- "div",
1360
- {
1361
- className: "snackbar-content my-4 max-h-[50vh] max-w-prose overflow-y-auto",
1362
- ...e,
1363
- children: e.children
1364
- }
1365
- ), $e = (e) => {
1366
- const { align: r = "center", children: t, className: n, ...a } = e;
1367
- return /* @__PURE__ */ o("ol", { className: c(n, "flex flex-col gap-8 md:gap-12"), ...a, children: Z.map(t, (s) => {
1368
- if (W(s))
1369
- return K(s, {
1370
- align: r
1371
- });
1372
- }) });
1373
- }, et = (e) => {
1374
- const { className: r, children: t, bullet: n, align: a = "center", ...s } = e;
1375
- return /* @__PURE__ */ f(
1376
- "li",
1377
- {
1378
- className: c(
1379
- r,
1380
- "group relative flex gap-4 text-sm md:gap-8 md:text-base",
1381
- { "items-center": a === "center" }
1382
- ),
1383
- ...s,
1384
- children: [
1385
- /* @__PURE__ */ o(tt, { align: a, children: n }),
1386
- t
1387
- ]
1388
- }
1389
- );
1390
- }, tt = ({ align: e, ...r }) => /* @__PURE__ */ o(
1391
- "span",
1392
- {
1393
- "aria-hidden": !0,
1394
- className: c(
1395
- "text-green after:bg-gray-light before:bg-gray-light grid h-10 w-10 flex-none place-content-center justify-items-center rounded-full border-2 text-sm font-bold after:absolute after:bottom-0 after:w-0.5 after:translate-x-1/2 group-last:after:hidden md:h-20 md:w-20 md:text-xl",
1396
- {
1397
- "before:absolute before:bottom-1/2 before:top-0 before:w-0.5 before:-translate-y-5 before:translate-x-1/2 after:top-1/2 after:translate-y-5 group-first:before:hidden before:md:-translate-y-10 after:md:translate-y-10": e === "center",
1398
- "after:-bottom-8 after:top-10 after:md:-bottom-12 after:md:top-20": e === "top"
1399
- }
1400
- ),
1401
- ...r
1402
- }
1403
- );
1404
- $e.Item = et;
1405
- const Qt = h(
1406
- (e, r) => {
1407
- const {
1408
- description: t,
1409
- error: n,
1410
- id: a,
1411
- label: s,
1412
- disableValidation: i = !1,
1413
- ...d
1414
- } = e, u = E(null), l = X([u, r]), { validity: m, validationMessage: g } = P(
1415
- u,
1416
- !i
1417
- ), b = S(a), p = b + "help", x = b + "err", v = n || g;
1418
- return /* @__PURE__ */ f("div", { className: "grid gap-2", children: [
1419
- /* @__PURE__ */ o(
1420
- z,
1421
- {
1422
- htmlFor: b,
1423
- isRequired: e.required,
1424
- isInvalid: !!n || m === "invalid",
1425
- children: s
1426
- }
1427
- ),
1428
- t && /* @__PURE__ */ o(M, { id: p, children: t }),
1429
- /* @__PURE__ */ o(
1430
- de,
1431
- {
1432
- as: "textarea",
1433
- ref: l,
1434
- id: b,
1435
- ...d,
1436
- isInvalid: !!n || m === "invalid",
1437
- "aria-describedby": c({
1438
- [x]: v,
1439
- [p]: t
1440
- }) || void 0
1441
- }
1442
- ),
1443
- v && /* @__PURE__ */ o(R, { id: x, children: v })
1444
- ] });
1445
- }
1446
- ), Ut = h(
1447
- (e, r) => {
1448
- const {
1449
- description: t,
1450
- error: n,
1451
- id: a,
1452
- label: s,
1453
- type: i = "text",
1454
- disableValidation: d = !1,
1455
- ...u
1456
- } = e, l = E(null), { validity: m, validationMessage: g } = P(
1457
- l,
1458
- !d
1459
- ), b = S(a), p = b + "help", x = b + "err", v = n || g, F = X([l, r]);
1460
- return /* @__PURE__ */ f("div", { className: "grid gap-2", children: [
1461
- /* @__PURE__ */ o(
1462
- z,
1463
- {
1464
- htmlFor: b,
1465
- isRequired: e.required,
1466
- isInvalid: !!n || m === "invalid",
1467
- children: s
1468
- }
1469
- ),
1470
- t && /* @__PURE__ */ o(M, { id: p, children: t }),
1471
- /* @__PURE__ */ o(
1472
- de,
1473
- {
1474
- id: b,
1475
- ref: F,
1476
- type: i,
1477
- ...u,
1478
- isInvalid: !!n || m === "invalid",
1479
- "aria-describedby": c({
1480
- [x]: v,
1481
- [p]: t
1482
- }) || void 0
1483
- }
1484
- ),
1485
- v && /* @__PURE__ */ o(R, { id: x, children: v })
1486
- ] });
1487
- }
1488
- );
1489
- export {
1490
- Y as Accordion,
1491
- Re as AccordionContent,
1492
- Se as AccordionHeader,
1493
- Ee as AccordionItem,
1494
- ct as Alert,
1495
- mt as Banner,
1496
- ut as BannerImage,
1497
- bt as Button,
1498
- L as ButtonColorContext,
1499
- ft as Campaign,
1500
- Te as CampaignBody,
1501
- Fe as CampaignImage,
1502
- gt as Card,
1503
- At as CardContent,
1504
- ht as CardImage,
1505
- xt as CardLinkOverlay,
1506
- pt as CardList,
1507
- vt as Checkbox,
1508
- Nt as Chip,
1509
- yt as Footer,
1510
- wt as Form,
1511
- It as FormError,
1512
- R as FormErrorMessage,
1513
- Ze as FormHeading,
1514
- M as FormHelperText,
1515
- z as FormLabel,
1516
- Rt as FormStep,
1517
- We as FormStepHeader,
1518
- Ke as FormStepHeaderContent,
1519
- St as FormStepProvider,
1520
- Ct as FormSuccess,
1521
- kt as Hero,
1522
- Lt as HeroActions,
1523
- Pt as HeroContent,
1524
- V as HeroContext,
1525
- qt as HeroImage,
1526
- de as Input,
1527
- Mt as Link,
1528
- zt as Navbar,
1529
- Jt as NavbarCollapsible,
1530
- Ft as NavbarContent,
1531
- jt as NavbarExpandedMobileContent,
1532
- Tt as NavbarItem,
1533
- Vt as NavbarItems,
1534
- Ot as Pagination,
1535
- Zt as Radio,
1536
- Wt as RadioGroup,
1537
- Kt as Select,
1538
- Xt as Snackbar,
1539
- $ as SnackbarButton,
1540
- Yt as SnackbarContent,
1541
- $e as StepList,
1542
- et as StepListItem,
1543
- Qt as TextArea,
1544
- Ut as TextField,
1545
- se as useBlockBackgroundColor,
1546
- S as useFallbackId,
1547
- Et as useFormContext,
1548
- P as useFormControlValidity,
1549
- Xe as useFormStepContext,
1550
- dt as usePrefersReducedMotion,
1551
- Pe as useScreenMaxWidthMd
1552
- };