@leabankab/component-library 7.3.0 → 8.1.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 (193) hide show
  1. package/CHANGELOG.md +745 -0
  2. package/README.md +2 -5
  3. package/dist/component-library.es.js +2948 -5676
  4. package/dist/component-library.es.js.map +1 -1
  5. package/dist/component-library.umd.js +2 -28
  6. package/dist/component-library.umd.js.map +1 -1
  7. package/dist/components/animations/icons/status-icon.d.ts +4 -0
  8. package/dist/components/animations/illustrations/check-animation.d.ts +8 -0
  9. package/dist/components/animations/illustrations/pulse-animation.d.ts +5 -1
  10. package/dist/components/animations/illustrations/status-animation.d.ts +8 -1
  11. package/dist/components/animations/shared.d.ts +6 -32
  12. package/dist/components/animations/spinner.d.ts +18 -0
  13. package/dist/components/animations/use-animation-labels.d.ts +0 -5
  14. package/dist/components/buttons/action-button.d.ts +8 -10
  15. package/dist/components/buttons/button-base.d.ts +26 -12
  16. package/dist/components/buttons/button.d.ts +2 -2
  17. package/dist/components/buttons/close-button.d.ts +1 -1
  18. package/dist/components/buttons/icon-button.d.ts +1 -13
  19. package/dist/components/buttons/skip-link.d.ts +21 -4
  20. package/dist/components/color-roles.d.ts +8 -0
  21. package/dist/components/data-display/card.d.ts +54 -4
  22. package/dist/components/data-display/chip.d.ts +50 -8
  23. package/dist/components/data-display/data-field.d.ts +15 -4
  24. package/dist/components/data-display/tooltip.d.ts +74 -22
  25. package/dist/components/feedback/alert-parts.d.ts +10 -9
  26. package/dist/components/feedback/alert.d.ts +1 -1
  27. package/dist/components/feedback/simple-dialog.d.ts +1 -1
  28. package/dist/components/form/amount-slider.d.ts +68 -0
  29. package/dist/components/form/autocomplete.d.ts +56 -59
  30. package/dist/components/form/checkbox-box.d.ts +11 -0
  31. package/dist/components/form/checkbox.d.ts +67 -7
  32. package/dist/components/form/combo-field.d.ts +68 -0
  33. package/dist/components/form/email-input.d.ts +28 -26
  34. package/dist/components/form/field-parts.d.ts +50 -0
  35. package/dist/components/form/index.d.ts +3 -9
  36. package/dist/components/form/input.d.ts +57 -13
  37. package/dist/components/form/multi-select.d.ts +12 -14
  38. package/dist/components/form/number-input-unit.d.ts +28 -0
  39. package/dist/components/form/number-input.d.ts +46 -18
  40. package/dist/components/form/phone-number-input/phone-number-input.d.ts +44 -14
  41. package/dist/components/form/radio-card.d.ts +94 -43
  42. package/dist/components/form/radio-circle.d.ts +14 -13
  43. package/dist/components/form/radio-group-root.d.ts +88 -0
  44. package/dist/components/form/radio.d.ts +68 -24
  45. package/dist/components/form/select-field.d.ts +78 -0
  46. package/dist/components/form/select.d.ts +30 -42
  47. package/dist/components/form/slider-parts.d.ts +34 -0
  48. package/dist/components/form/slider.d.ts +40 -16
  49. package/dist/components/form/use-autocomplete-labels.d.ts +3 -16
  50. package/dist/components/form/use-blur-outside.d.ts +7 -0
  51. package/dist/components/form/use-focus-target-ref.d.ts +11 -0
  52. package/dist/components/form/use-tooltip-trigger-labels.d.ts +5 -0
  53. package/dist/components/index.d.ts +0 -1
  54. package/dist/components/navigation/form-stepper.d.ts +1 -1
  55. package/dist/components/navigation/index.d.ts +1 -1
  56. package/dist/components/navigation/linear-form-stepper.d.ts +1 -1
  57. package/dist/components/navigation/progress-circle.d.ts +14 -8
  58. package/dist/components/navigation/tabs.d.ts +37 -34
  59. package/dist/components/navigation/use-stepper-labels.d.ts +1 -1
  60. package/dist/components/typography/link.d.ts +25 -16
  61. package/dist/components/typography/lists.d.ts +20 -23
  62. package/dist/components/typography/text.d.ts +46 -10
  63. package/dist/components/ui/app-header.d.ts +9 -1
  64. package/dist/cookie-consent/react.d.ts +0 -1
  65. package/dist/cookie-consent-react.cjs +1 -1
  66. package/dist/cookie-consent-react.cjs.map +1 -1
  67. package/dist/cookie-consent-react.mjs +106 -96
  68. package/dist/cookie-consent-react.mjs.map +1 -1
  69. package/dist/cookie-consent.css +1 -1
  70. package/dist/date-picker/datepicker.d.ts +140 -0
  71. package/dist/date-picker/index.d.ts +18 -0
  72. package/dist/date-picker/theme/field-base.d.ts +23 -0
  73. package/dist/date-picker/theme/form-control.theme.d.ts +7 -0
  74. package/dist/date-picker/theme/index.d.ts +12 -0
  75. package/dist/date-picker/theme/input.theme.d.ts +6 -0
  76. package/dist/{components/form/datepicker → date-picker}/use-view-toggle-labels.d.ts +1 -1
  77. package/dist/date-picker.cjs +2 -0
  78. package/dist/date-picker.cjs.map +1 -0
  79. package/dist/date-picker.mjs +1012 -0
  80. package/dist/date-picker.mjs.map +1 -0
  81. package/dist/{components/dev-panel → dev-panel}/dev-panel-payload.d.ts +1 -1
  82. package/dist/{components/dev-panel → dev-panel}/dev-panel-status.d.ts +2 -2
  83. package/dist/{components/dev-panel → dev-panel}/dev-panel-steps.d.ts +2 -1
  84. package/dist/dev-panel/dev-panel.d.ts +118 -0
  85. package/dist/dev-panel/index.d.ts +10 -0
  86. package/dist/{components/dev-panel → dev-panel}/json-highlight.d.ts +2 -2
  87. package/dist/dev-panel/parts.d.ts +9 -0
  88. package/dist/{components/dev-panel → dev-panel}/segmented-control.d.ts +5 -4
  89. package/dist/{components/dev-panel → dev-panel}/use-dev-panel-labels.d.ts +1 -1
  90. package/dist/{components/dev-panel → dev-panel}/use-roving-radio.d.ts +2 -2
  91. package/dist/dev-panel.cjs +3 -0
  92. package/dist/dev-panel.cjs.map +1 -0
  93. package/dist/dev-panel.css +1 -0
  94. package/dist/dev-panel.mjs +919 -0
  95. package/dist/dev-panel.mjs.map +1 -0
  96. package/dist/fonts/ClashGrotesk-Variable.woff2 +0 -0
  97. package/dist/index.css +1 -1
  98. package/dist/index.d.ts +1 -3
  99. package/dist/provider/lea-provider.d.ts +4 -7
  100. package/dist/react-hook-form/form-field.d.ts +76 -0
  101. package/dist/react-hook-form/index.d.ts +1 -0
  102. package/dist/react-hook-form.cjs +2 -0
  103. package/dist/react-hook-form.cjs.map +1 -0
  104. package/dist/react-hook-form.mjs +33 -0
  105. package/dist/react-hook-form.mjs.map +1 -0
  106. package/dist/tailwind.css +103 -17
  107. package/dist/theme/index.d.ts +0 -4
  108. package/dist/theme/token-types.d.ts +15 -3
  109. package/dist/theme/tokens/colors.d.ts +13 -0
  110. package/dist/theme/tokens/font-family.d.ts +9 -0
  111. package/dist/theme/tokens/font-sizes.d.ts +8 -0
  112. package/dist/theme/tokens/index.d.ts +4 -1
  113. package/dist/theme/tokens/line-heights.d.ts +11 -0
  114. package/dist/theme/tokens/spacing.d.ts +6 -0
  115. package/dist/theme/tokens/text-styles.d.ts +61 -0
  116. package/dist/theme/tokens/type-scale.d.ts +21 -0
  117. package/dist/theme/types.d.ts +19 -30
  118. package/dist/validation/email.d.ts +18 -0
  119. package/dist/validation/mobile-patterns.d.ts +10 -0
  120. package/dist/validation/national-id.d.ts +26 -0
  121. package/dist/validation/phone.d.ts +30 -0
  122. package/package.json +45 -6
  123. package/dist/components/dev-panel/dev-panel.d.ts +0 -61
  124. package/dist/components/dev-panel/index.d.ts +0 -9
  125. package/dist/components/form/datepicker/datepicker.d.ts +0 -99
  126. package/dist/components/form/datepicker/index.d.ts +0 -1
  127. package/dist/components/form/fields/autocomplete-field.d.ts +0 -17
  128. package/dist/components/form/fields/boolean-radio-field.d.ts +0 -3
  129. package/dist/components/form/fields/checkbox-field.d.ts +0 -12
  130. package/dist/components/form/fields/datepicker-field.d.ts +0 -9
  131. package/dist/components/form/fields/email-field.d.ts +0 -10
  132. package/dist/components/form/fields/field-types.d.ts +0 -18
  133. package/dist/components/form/fields/index.d.ts +0 -14
  134. package/dist/components/form/fields/input-field.d.ts +0 -9
  135. package/dist/components/form/fields/multi-select-field.d.ts +0 -9
  136. package/dist/components/form/fields/number-field.d.ts +0 -10
  137. package/dist/components/form/fields/phone-number-field.d.ts +0 -11
  138. package/dist/components/form/fields/radio-card-field.d.ts +0 -22
  139. package/dist/components/form/fields/radio-field.d.ts +0 -16
  140. package/dist/components/form/fields/select-field.d.ts +0 -9
  141. package/dist/components/form/fields/use-field-control.d.ts +0 -6
  142. package/dist/components/form/fields/use-tooltip-trigger-labels.d.ts +0 -5
  143. package/dist/components/form/form-control/form-control-context.d.ts +0 -35
  144. package/dist/components/form/form-control/form-control-label.d.ts +0 -1
  145. package/dist/components/form/form-control/form-control.d.ts +0 -13
  146. package/dist/components/form/form-control/form-helper-text.d.ts +0 -9
  147. package/dist/components/form/form-control/form-label.d.ts +0 -9
  148. package/dist/components/form/form-control/index.d.ts +0 -5
  149. package/dist/components/form/input-label.d.ts +0 -9
  150. package/dist/theme/components/accordion.theme.d.ts +0 -7
  151. package/dist/theme/components/action-button.theme.d.ts +0 -45
  152. package/dist/theme/components/alert.theme.d.ts +0 -2
  153. package/dist/theme/components/autocomplete.theme.d.ts +0 -2
  154. package/dist/theme/components/baseline-css.d.ts +0 -2
  155. package/dist/theme/components/button.theme.d.ts +0 -2
  156. package/dist/theme/components/card.theme.d.ts +0 -2
  157. package/dist/theme/components/checkbox.theme.d.ts +0 -2
  158. package/dist/theme/components/chip.theme.d.ts +0 -2
  159. package/dist/theme/components/dev-panel.theme.d.ts +0 -95
  160. package/dist/theme/components/dialog.theme.d.ts +0 -2
  161. package/dist/theme/components/drawer.theme.d.ts +0 -4
  162. package/dist/theme/components/field-base.d.ts +0 -31
  163. package/dist/theme/components/form-control-label.theme.d.ts +0 -2
  164. package/dist/theme/components/form-control.theme.d.ts +0 -2
  165. package/dist/theme/components/index.d.ts +0 -2
  166. package/dist/theme/components/input.theme.d.ts +0 -3
  167. package/dist/theme/components/link.theme.d.ts +0 -2
  168. package/dist/theme/components/menu-item.theme.d.ts +0 -2
  169. package/dist/theme/components/number-input.theme.d.ts +0 -23
  170. package/dist/theme/components/phone-number-input.theme.d.ts +0 -43
  171. package/dist/theme/components/radio.theme.d.ts +0 -2
  172. package/dist/theme/components/select.theme.d.ts +0 -2
  173. package/dist/theme/components/slider.theme.d.ts +0 -2
  174. package/dist/theme/components/tabs.theme.d.ts +0 -34
  175. package/dist/theme/components/tooltip.theme.d.ts +0 -110
  176. package/dist/theme/components/typography.theme.d.ts +0 -2
  177. package/dist/theme/mui-augmentation.d.ts +0 -147
  178. package/dist/theme/sx-config.d.ts +0 -10
  179. /package/dist/{components/form/datepicker → date-picker}/calendar-header.d.ts +0 -0
  180. /package/dist/{components/form/datepicker → date-picker}/drawer-toolbar.d.ts +0 -0
  181. /package/dist/{theme/components → date-picker/theme}/date-picker.theme.d.ts +0 -0
  182. /package/dist/{theme/components → date-picker/theme}/icon-button.theme.d.ts +0 -0
  183. /package/dist/{theme/tokens → date-picker/theme}/typography.d.ts +0 -0
  184. /package/dist/{components/form/datepicker → date-picker}/use-calendar-header-labels.d.ts +0 -0
  185. /package/dist/{components/form/datepicker → date-picker}/use-datepicker-title-labels.d.ts +0 -0
  186. /package/dist/{components/form/datepicker → date-picker}/view-renderers.d.ts +0 -0
  187. /package/dist/{components/form/datepicker → date-picker}/view-toggle.d.ts +0 -0
  188. /package/dist/{components/dev-panel → dev-panel}/dev-panel-country.d.ts +0 -0
  189. /package/dist/{components/dev-panel → dev-panel}/dev-panel-flow.d.ts +0 -0
  190. /package/dist/{components/dev-panel → dev-panel}/dev-panel-footer.d.ts +0 -0
  191. /package/dist/{components/dev-panel → dev-panel}/dev-panel-step-state.d.ts +0 -0
  192. /package/dist/{components/dev-panel → dev-panel}/dev-panel-variant.d.ts +0 -0
  193. /package/dist/{components/dev-panel → dev-panel}/use-copy.d.ts +0 -0
@@ -0,0 +1,919 @@
1
+ "use client";
2
+ import { Braces as e, Check as t, ChevronRight as n, Copy as r, EyeOff as i, Minus as a, Plus as o, RotateCcw as s, Upload as c, X as l } from "lucide-react";
3
+ import { Fragment as u, createContext as d, useCallback as f, useContext as p, useEffect as m, useId as h, useLayoutEffect as g, useMemo as _, useRef as v, useState as y } from "react";
4
+ import { Button as b, IconButton as x, Text as S, createTranslation as C } from "./component-library.es.js";
5
+ import { Fragment as w, jsx as T, jsxs as E } from "react/jsx-runtime";
6
+ import { createPortal as D } from "react-dom";
7
+ import './dev-panel.css';//#region \0rolldown/runtime.js
8
+ var O = Object.defineProperty, k = (e, t) => {
9
+ let n = {};
10
+ for (var r in e) O(n, r, {
11
+ get: e[r],
12
+ enumerable: !0
13
+ });
14
+ return t || O(n, Symbol.toStringTag, { value: "Module" }), n;
15
+ }, A = {
16
+ Badge: "_Badge_1xkno_23",
17
+ SectionLabel: "_SectionLabel_1xkno_24",
18
+ SectionMeta: "_SectionMeta_1xkno_25",
19
+ FlowLabel: "_FlowLabel_1xkno_26",
20
+ CountryCode: "_CountryCode_1xkno_27",
21
+ StepLabel: "_StepLabel_1xkno_28",
22
+ PayloadCode: "_PayloadCode_1xkno_29",
23
+ DevPanel: "_DevPanel_1xkno_38",
24
+ Header: "_Header_1xkno_53",
25
+ HeaderTitle: "_HeaderTitle_1xkno_65",
26
+ HeaderActions: "_HeaderActions_1xkno_75",
27
+ HeaderDot: "_HeaderDot_1xkno_82",
28
+ Handle: "_Handle_1xkno_112",
29
+ HideButton: "_HideButton_1xkno_191",
30
+ Body: "_Body_1xkno_197",
31
+ Section: "_Section_1xkno_24",
32
+ SectionHeaderRow: "_SectionHeaderRow_1xkno_215",
33
+ Flow: "_Flow_1xkno_26",
34
+ FlowText: "_FlowText_1xkno_257",
35
+ FlowSeparator: "_FlowSeparator_1xkno_282",
36
+ SegmentedGroup: "_SegmentedGroup_1xkno_295",
37
+ SegmentedOption: "_SegmentedOption_1xkno_316",
38
+ ChipGroup: "_ChipGroup_1xkno_368",
39
+ Chip: "_Chip_1xkno_368",
40
+ ChipDot: "_ChipDot_1xkno_407",
41
+ StepGrid: "_StepGrid_1xkno_431",
42
+ StepButton: "_StepButton_1xkno_437",
43
+ StepCircle: "_StepCircle_1xkno_461",
44
+ StepFlagDot: "_StepFlagDot_1xkno_503",
45
+ StepStateName: "_StepStateName_1xkno_534",
46
+ StatusGrid: "_StatusGrid_1xkno_543",
47
+ StatusCard: "_StatusCard_1xkno_550",
48
+ StatusDot: "_StatusDot_1xkno_609",
49
+ PayloadToggle: "_PayloadToggle_1xkno_621",
50
+ PayloadToggleLabel: "_PayloadToggleLabel_1xkno_641",
51
+ PayloadChevron: "_PayloadChevron_1xkno_648",
52
+ PayloadPanel: "_PayloadPanel_1xkno_672",
53
+ PayloadHeader: "_PayloadHeader_1xkno_680",
54
+ Token: "_Token_1xkno_715",
55
+ Flyout: "_Flyout_1xkno_749",
56
+ FlyoutTitle: "_FlyoutTitle_1xkno_763",
57
+ FlyoutFooter: "_FlyoutFooter_1xkno_777",
58
+ FlyoutCopyButton: "_FlyoutCopyButton_1xkno_784",
59
+ Footer: "_Footer_1xkno_824",
60
+ OnDark: "_OnDark_1xkno_852",
61
+ VisuallyHidden: "_VisuallyHidden_1xkno_863"
62
+ }, j = C({
63
+ copy: {
64
+ no: "Kopier",
65
+ se: "Kopiera",
66
+ fi: "Kopioi",
67
+ es: "Copiar"
68
+ },
69
+ copied: {
70
+ no: "Kopiert",
71
+ se: "Kopierad",
72
+ fi: "Kopioitu",
73
+ es: "Copiado"
74
+ },
75
+ copyJson: {
76
+ no: "Kopier JSON",
77
+ se: "Kopiera JSON",
78
+ fi: "Kopioi JSON",
79
+ es: "Copiar JSON"
80
+ },
81
+ close: {
82
+ no: "Lukk",
83
+ se: "Stäng",
84
+ fi: "Sulje",
85
+ es: "Cerrar"
86
+ },
87
+ minimise: {
88
+ no: "Minimer",
89
+ se: "Minimera",
90
+ fi: "Pienennä",
91
+ es: "Minimizar"
92
+ },
93
+ expand: {
94
+ no: "Utvid",
95
+ se: "Expandera",
96
+ fi: "Laajenna",
97
+ es: "Expandir"
98
+ },
99
+ hide: {
100
+ no: "Skjul",
101
+ se: "Dölj",
102
+ fi: "Piilota",
103
+ es: "Ocultar"
104
+ },
105
+ show: {
106
+ no: "Vis",
107
+ se: "Visa",
108
+ fi: "Näytä",
109
+ es: "Mostrar"
110
+ },
111
+ step: {
112
+ no: "Steg",
113
+ se: "Steg",
114
+ fi: "Vaihe",
115
+ es: "Paso"
116
+ },
117
+ statusCompleted: {
118
+ no: "fullført",
119
+ se: "slutförd",
120
+ fi: "valmis",
121
+ es: "completado"
122
+ },
123
+ statusCurrent: {
124
+ no: "gjeldende",
125
+ se: "aktuell",
126
+ fi: "nykyinen",
127
+ es: "actual"
128
+ },
129
+ statusUpcoming: {
130
+ no: "ikke startet",
131
+ se: "inte påbörjad",
132
+ fi: "aloittamatta",
133
+ es: "no iniciado"
134
+ },
135
+ needsAttention: {
136
+ no: "krever oppmerksomhet",
137
+ se: "kräver uppmärksamhet",
138
+ fi: "vaatii huomiota",
139
+ es: "requiere atención"
140
+ }
141
+ }), M = (...e) => e.filter(Boolean).join(" "), N = d(void 0);
142
+ function P() {
143
+ return p(N);
144
+ }
145
+ var F = d(null), I = "(max-width: 599.95px)", L = () => typeof navigator < "u" && /mac|iphone|ipad/i.test(navigator.platform || navigator.userAgent);
146
+ function R(e, t) {
147
+ let n = t.split("+").map((e) => e.trim().toLowerCase()), r = n.pop();
148
+ if (!r) return !1;
149
+ let i = n.includes("mod"), a = {
150
+ ctrl: n.includes("ctrl") || i && !L(),
151
+ meta: n.includes("meta") || i && L(),
152
+ alt: n.includes("alt"),
153
+ shift: n.includes("shift")
154
+ };
155
+ return e.ctrlKey !== a.ctrl || e.metaKey !== a.meta || e.altKey !== a.alt || e.shiftKey !== a.shift ? !1 : e.key.toLowerCase() === r || e.code.toLowerCase() === `key${r}` || e.code.toLowerCase() === `digit${r}`;
156
+ }
157
+ function z({ title: e = "Dev controls", badge: t, showStatusDot: n = !0, minimisable: r = !0, minimised: s, defaultMinimised: c, onMinimisedChange: l, minimiseLabel: u, expandLabel: d, hidden: f, defaultHidden: p, onHiddenChange: g, hideable: _ = f !== void 0 || p !== void 0, shortcut: b = "Mod+Shift+D", handle: S, hideLabel: C, children: w, className: D, style: O }) {
158
+ let k = j(), N = s !== void 0, [P, L] = y(c ?? !1), z = N ? s : P, [B, H] = y(p ?? !1), U = _ && (f ?? B), W = v(null), G = v(null), K = v(null), q = v(null), J = () => {
159
+ let e = !z;
160
+ N || L(e), l?.(e);
161
+ }, Y = (e) => {
162
+ f === void 0 && H(e), g?.(e);
163
+ };
164
+ m(() => {
165
+ _ && !N && c === void 0 && typeof window < "u" && window.matchMedia?.(I).matches && L(!0);
166
+ }, []), m(() => {
167
+ let e = q.current;
168
+ q.current = null, e === "handle" && G.current?.focus(), e === "panel" && K.current?.focus();
169
+ });
170
+ let X = v({
171
+ isHidden: U,
172
+ setHiddenState: Y
173
+ });
174
+ X.current = {
175
+ isHidden: U,
176
+ setHiddenState: Y
177
+ }, m(() => {
178
+ if (!_ || b === !1) return;
179
+ let e = (e) => {
180
+ if (e.repeat || !R(e, b)) return;
181
+ e.preventDefault();
182
+ let { isHidden: t, setHiddenState: n } = X.current, r = document.activeElement;
183
+ !t && W.current?.contains(r) && (q.current = "handle"), t && r != null && r === G.current && (q.current = "panel"), n(!t);
184
+ };
185
+ return window.addEventListener("keydown", e), () => window.removeEventListener("keydown", e);
186
+ }, [_, b]);
187
+ let Z = h();
188
+ return U ? /* @__PURE__ */ T(F.Provider, {
189
+ value: {
190
+ show: () => {
191
+ q.current = "panel", Y(!1);
192
+ },
193
+ title: e,
194
+ handleRef: G
195
+ },
196
+ children: S ?? /* @__PURE__ */ T(V, {})
197
+ }) : /* @__PURE__ */ E("div", {
198
+ ref: W,
199
+ "data-dev-panel-root": "",
200
+ "data-hideable": _ ? "" : void 0,
201
+ "data-minimised": z ? "" : void 0,
202
+ className: M(A.DevPanel, D),
203
+ style: O,
204
+ children: [/* @__PURE__ */ E("header", {
205
+ className: A.Header,
206
+ children: [/* @__PURE__ */ E("span", {
207
+ className: A.HeaderTitle,
208
+ children: [
209
+ n && /* @__PURE__ */ T("span", {
210
+ className: A.HeaderDot,
211
+ "aria-hidden": !0
212
+ }),
213
+ /* @__PURE__ */ T("span", { children: e }),
214
+ t != null && /* @__PURE__ */ T("span", {
215
+ className: A.Badge,
216
+ children: t
217
+ })
218
+ ]
219
+ }), /* @__PURE__ */ E("span", {
220
+ className: A.HeaderActions,
221
+ children: [_ && /* @__PURE__ */ T(x, {
222
+ ref: K,
223
+ className: A.HideButton,
224
+ "aria-label": C ?? k.hide,
225
+ onClick: () => {
226
+ q.current = "handle", Y(!0);
227
+ },
228
+ variant: "outline",
229
+ color: "secondary",
230
+ size: "sm",
231
+ children: /* @__PURE__ */ T(i, {
232
+ size: 18,
233
+ "aria-hidden": !0
234
+ })
235
+ }), r && /* @__PURE__ */ T(x, {
236
+ "aria-label": z ? d ?? k.expand : u ?? k.minimise,
237
+ "aria-expanded": !z,
238
+ "aria-controls": Z,
239
+ onClick: J,
240
+ variant: "outline",
241
+ color: "secondary",
242
+ size: "sm",
243
+ children: T(z ? o : a, {
244
+ size: 18,
245
+ "aria-hidden": !0
246
+ })
247
+ })]
248
+ })]
249
+ }), !z && /* @__PURE__ */ T("div", {
250
+ id: Z,
251
+ className: A.Body,
252
+ children: w
253
+ })]
254
+ });
255
+ }
256
+ function B({ label: e, meta: t, children: n, className: r, style: i }) {
257
+ let a = h();
258
+ return /* @__PURE__ */ E("section", {
259
+ "aria-labelledby": a,
260
+ className: M(A.Section, r),
261
+ style: i,
262
+ children: [/* @__PURE__ */ E("div", {
263
+ className: A.SectionHeaderRow,
264
+ children: [/* @__PURE__ */ T("span", {
265
+ id: a,
266
+ className: A.SectionLabel,
267
+ children: e
268
+ }), t != null && /* @__PURE__ */ T("span", {
269
+ className: A.SectionMeta,
270
+ children: t
271
+ })]
272
+ }), /* @__PURE__ */ T(N.Provider, {
273
+ value: a,
274
+ children: n
275
+ })]
276
+ });
277
+ }
278
+ function V({ side: e = "right", label: t, className: n, style: r }) {
279
+ let i = j(), a = p(F);
280
+ if (!a) return null;
281
+ let o = t ?? a.title;
282
+ return /* @__PURE__ */ E("button", {
283
+ ref: a.handleRef,
284
+ type: "button",
285
+ className: M(A.Handle, n),
286
+ style: r,
287
+ "data-side": e,
288
+ "aria-label": typeof o == "string" ? `${i.show} ${o}` : void 0,
289
+ onClick: a.show,
290
+ children: [/* @__PURE__ */ T("span", {
291
+ className: A.HeaderDot,
292
+ "aria-hidden": !0
293
+ }), /* @__PURE__ */ T("span", { children: o })]
294
+ });
295
+ }
296
+ //#endregion
297
+ //#region src/dev-panel/use-roving-radio.ts
298
+ function H({ values: e, selected: t, onSelect: n, isDisabled: r }) {
299
+ let i = v([]), a = f((t) => r?.(e[t], t) ?? !1, [r, e]), o = e.findIndex((e) => e === t), s = e.findIndex((e, t) => !a(t)), c = o >= 0 && !a(o) ? o : s, l = f((t) => {
300
+ i.current[t]?.focus(), n(e[t]);
301
+ }, [n, e]), u = f((t, n) => {
302
+ let r = e.length;
303
+ for (let e = 1; e <= r; e += 1) {
304
+ let i = (t + n * e + r * e) % r;
305
+ if (!a(i)) return i;
306
+ }
307
+ return t;
308
+ }, [a, e.length]);
309
+ return { getItemProps: f((r) => {
310
+ let o = e[r], s = a(r);
311
+ return {
312
+ ref: (e) => {
313
+ i.current[r] = e;
314
+ },
315
+ role: "radio",
316
+ "aria-checked": o === t,
317
+ "aria-disabled": s || void 0,
318
+ tabIndex: r === c ? 0 : -1,
319
+ onClick: () => {
320
+ s || n(o);
321
+ },
322
+ onKeyDown: (e) => {
323
+ switch (e.key) {
324
+ case "ArrowRight":
325
+ case "ArrowDown":
326
+ e.preventDefault(), l(u(r, 1));
327
+ break;
328
+ case "ArrowLeft":
329
+ case "ArrowUp":
330
+ e.preventDefault(), l(u(r, -1));
331
+ break;
332
+ case "Home":
333
+ e.preventDefault(), l(u(-1, 1));
334
+ break;
335
+ case "End":
336
+ e.preventDefault(), l(u(0, -1));
337
+ break;
338
+ case " ":
339
+ case "Enter": e.preventDefault(), s || n(o);
340
+ }
341
+ }
342
+ };
343
+ }, [
344
+ a,
345
+ l,
346
+ u,
347
+ n,
348
+ t,
349
+ c,
350
+ e
351
+ ]) };
352
+ }
353
+ //#endregion
354
+ //#region src/dev-panel/segmented-control.tsx
355
+ function U({ value: e, onChange: t, options: n, variant: r = "pill", "aria-label": i, "aria-labelledby": a }) {
356
+ let o = P(), s = a ?? (i ? void 0 : o), { getItemProps: c } = H({
357
+ values: n.map((e) => e.value),
358
+ selected: e,
359
+ onSelect: t,
360
+ isDisabled: (e, t) => n[t]?.disabled ?? !1
361
+ }), l = r === "chip";
362
+ return /* @__PURE__ */ T("div", {
363
+ role: "radiogroup",
364
+ "aria-label": i,
365
+ "aria-labelledby": s,
366
+ className: l ? A.ChipGroup : A.SegmentedGroup,
367
+ children: n.map((e, t) => {
368
+ let { onKeyDown: n, ...r } = c(t);
369
+ return /* @__PURE__ */ E("button", {
370
+ type: "button",
371
+ "data-disabled": e.disabled ? "" : void 0,
372
+ onKeyDown: n,
373
+ ...r,
374
+ className: l ? A.Chip : A.SegmentedOption,
375
+ children: [l ? /* @__PURE__ */ T("span", {
376
+ className: A.ChipDot,
377
+ "aria-hidden": !0
378
+ }) : e.icon, /* @__PURE__ */ T("span", { children: e.label })]
379
+ }, e.value);
380
+ })
381
+ });
382
+ }
383
+ //#endregion
384
+ //#region src/dev-panel/dev-panel-country.tsx
385
+ function W({ value: e, onChange: t, options: n, label: r = "Country" }) {
386
+ let i = n.map((e) => ({
387
+ value: e.value,
388
+ disabled: e.disabled,
389
+ label: e.label,
390
+ icon: e.code == null ? void 0 : /* @__PURE__ */ T("span", {
391
+ className: A.CountryCode,
392
+ children: e.code
393
+ })
394
+ }));
395
+ return /* @__PURE__ */ T(B, {
396
+ label: r,
397
+ children: /* @__PURE__ */ T(U, {
398
+ value: e,
399
+ onChange: t,
400
+ options: i
401
+ })
402
+ });
403
+ }
404
+ //#endregion
405
+ //#region src/dev-panel/dev-panel-variant.tsx
406
+ function G({ value: e, onChange: t, options: n, label: r = "Variant" }) {
407
+ let i = n.map((e) => ({
408
+ value: e.value,
409
+ label: e.label,
410
+ disabled: e.disabled
411
+ }));
412
+ return /* @__PURE__ */ T(B, {
413
+ label: r,
414
+ children: /* @__PURE__ */ T(U, {
415
+ value: e,
416
+ onChange: t,
417
+ options: i
418
+ })
419
+ });
420
+ }
421
+ //#endregion
422
+ //#region src/dev-panel/dev-panel-step-state.tsx
423
+ function K({ value: e, onChange: t, options: n, label: r = "Step state", stepLabel: i, variationsLabel: a = "Variations for" }) {
424
+ let o = n.map((e) => ({
425
+ value: e.value,
426
+ label: e.label,
427
+ disabled: e.disabled
428
+ }));
429
+ return /* @__PURE__ */ E(B, {
430
+ label: r,
431
+ children: [i != null && /* @__PURE__ */ E(S, {
432
+ textStyle: "body-sm",
433
+ style: {
434
+ color: "var(--lea-color-neutral-600)",
435
+ marginBlockEnd: "var(--lea-spacing-0-5)"
436
+ },
437
+ children: [
438
+ a,
439
+ " ",
440
+ /* @__PURE__ */ T("span", {
441
+ className: A.StepStateName,
442
+ children: i
443
+ })
444
+ ]
445
+ }), /* @__PURE__ */ T(U, {
446
+ value: e,
447
+ onChange: t,
448
+ options: o,
449
+ variant: "chip"
450
+ })]
451
+ });
452
+ }
453
+ //#endregion
454
+ //#region src/dev-panel/dev-panel-steps.tsx
455
+ var q = (e, t) => {
456
+ switch (e) {
457
+ case "complete": return t.statusCompleted;
458
+ case "current": return t.statusCurrent;
459
+ default: return t.statusUpcoming;
460
+ }
461
+ };
462
+ function J({ steps: e, currentStep: t, onStepSelect: n, label: r = "Jump to step", showCount: i = !0, columns: a = 4 }) {
463
+ let o = j(), s = e.length, c = i && t != null ? `${t} / ${s}` : void 0;
464
+ return /* @__PURE__ */ T(B, {
465
+ label: r,
466
+ meta: c,
467
+ children: /* @__PURE__ */ T(Y, {
468
+ steps: e,
469
+ currentStep: t,
470
+ onStepSelect: n,
471
+ columns: a,
472
+ t: o
473
+ })
474
+ });
475
+ }
476
+ function Y({ steps: e, currentStep: n, onStepSelect: r, columns: i, t: a }) {
477
+ let o = P();
478
+ return /* @__PURE__ */ T("div", {
479
+ role: "group",
480
+ "aria-labelledby": o,
481
+ className: A.StepGrid,
482
+ style: { "--_columns": i },
483
+ children: e.map((e, i) => {
484
+ let o = i + 1, s = e.status ?? (n == null ? "upcoming" : o < n ? "complete" : o === n ? "current" : "upcoming"), c = s === "current", l = s === "complete";
485
+ return /* @__PURE__ */ E("button", {
486
+ type: "button",
487
+ "aria-current": c ? "step" : void 0,
488
+ "data-state": s,
489
+ "data-disabled": e.disabled ? "" : void 0,
490
+ disabled: e.disabled,
491
+ onClick: () => r?.(o, e),
492
+ className: A.StepButton,
493
+ children: [
494
+ /* @__PURE__ */ E("span", {
495
+ className: A.StepCircle,
496
+ children: [
497
+ /* @__PURE__ */ T("span", {
498
+ className: A.VisuallyHidden,
499
+ children: l ? `${a.step} ${o}` : `${a.step} `
500
+ }),
501
+ l ? /* @__PURE__ */ T(t, {
502
+ size: 18,
503
+ "aria-hidden": !0
504
+ }) : o,
505
+ e.flagged && /* @__PURE__ */ T("span", {
506
+ className: A.StepFlagDot,
507
+ "aria-hidden": !0
508
+ })
509
+ ]
510
+ }),
511
+ " ",
512
+ /* @__PURE__ */ T("span", {
513
+ className: A.StepLabel,
514
+ children: e.label
515
+ }),
516
+ /* @__PURE__ */ T("span", {
517
+ className: A.VisuallyHidden,
518
+ children: `(${q(s, a)}${e.flagged ? `, ${a.needsAttention}` : ""})`
519
+ })
520
+ ]
521
+ }, o);
522
+ })
523
+ });
524
+ }
525
+ //#endregion
526
+ //#region src/dev-panel/dev-panel-status.tsx
527
+ function X({ value: e, onChange: t, options: n, label: r = "Application status" }) {
528
+ return /* @__PURE__ */ T(B, {
529
+ label: r,
530
+ children: /* @__PURE__ */ T(Z, {
531
+ value: e,
532
+ onChange: t,
533
+ options: n
534
+ })
535
+ });
536
+ }
537
+ function Z({ value: e, onChange: t, options: n }) {
538
+ let r = P(), { getItemProps: i } = H({
539
+ values: n.map((e) => e.value),
540
+ selected: e,
541
+ onSelect: t,
542
+ isDisabled: (e, t) => n[t]?.disabled ?? !1
543
+ });
544
+ return /* @__PURE__ */ T("div", {
545
+ role: "radiogroup",
546
+ "aria-labelledby": r,
547
+ className: A.StatusGrid,
548
+ children: n.map((e, t) => {
549
+ let { onKeyDown: n, ...r } = i(t);
550
+ return /* @__PURE__ */ E("button", {
551
+ type: "button",
552
+ "data-color": e.color ?? "neutral",
553
+ "data-disabled": e.disabled ? "" : void 0,
554
+ onKeyDown: n,
555
+ ...r,
556
+ className: A.StatusCard,
557
+ children: [/* @__PURE__ */ T("span", {
558
+ className: A.StatusDot,
559
+ "aria-hidden": !0
560
+ }), /* @__PURE__ */ T("span", { children: e.label })]
561
+ }, e.value);
562
+ })
563
+ });
564
+ }
565
+ //#endregion
566
+ //#region src/dev-panel/use-copy.ts
567
+ function Q() {
568
+ let [e, t] = y(!1), n = v(void 0), r = f(async (e) => {
569
+ try {
570
+ await navigator.clipboard?.writeText(e);
571
+ } catch {}
572
+ t(!0), clearTimeout(n.current), n.current = setTimeout(() => t(!1), 2e3);
573
+ }, []);
574
+ return m(() => () => clearTimeout(n.current), []), {
575
+ copied: e,
576
+ copy: r
577
+ };
578
+ }
579
+ //#endregion
580
+ //#region src/dev-panel/dev-panel-flow.tsx
581
+ var ee = (e) => typeof e == "string" || typeof e == "number" ? String(e) : null;
582
+ function te({ flowId: e, process: n, variant: i, label: a = "Flow", showCopy: o = !0, copyValue: s, copyLabel: c, onCopy: l }) {
583
+ let d = j(), { copied: f, copy: p } = Q(), m = [
584
+ e,
585
+ n,
586
+ i
587
+ ].filter((e) => e != null), h = m.map(ee).filter((e) => e != null).join(" · "), g = s ?? h;
588
+ return /* @__PURE__ */ E("div", {
589
+ className: A.Flow,
590
+ children: [
591
+ /* @__PURE__ */ E("div", {
592
+ className: A.FlowText,
593
+ children: [/* @__PURE__ */ T("span", {
594
+ className: A.FlowLabel,
595
+ children: a
596
+ }), /* @__PURE__ */ T("span", { children: m.map((e, t) => /* @__PURE__ */ E(u, { children: [t > 0 && /* @__PURE__ */ T("span", {
597
+ "aria-hidden": !0,
598
+ className: A.FlowSeparator,
599
+ children: "·"
600
+ }), e] }, t)) })]
601
+ }),
602
+ o && /* @__PURE__ */ T(x, {
603
+ "aria-label": c ?? d.copy,
604
+ onClick: async () => {
605
+ await p(g), l?.();
606
+ },
607
+ variant: "outline",
608
+ color: "secondary",
609
+ size: "sm",
610
+ children: T(f ? t : r, {
611
+ size: 16,
612
+ "aria-hidden": !0
613
+ })
614
+ }),
615
+ /* @__PURE__ */ T("span", {
616
+ role: "status",
617
+ "aria-live": "polite",
618
+ className: A.VisuallyHidden,
619
+ children: f ? d.copied : ""
620
+ })
621
+ ]
622
+ });
623
+ }
624
+ //#endregion
625
+ //#region src/dev-panel/json-highlight.tsx
626
+ var ne = /"(?:\\.|[^"\\])*"|-?\d+(?:\.\d+)?(?:[eE][+-]?\d+)?|\b(?:true|false|null)\b/g, re = (e) => e === " " || e === " " || e === "\n" || e === "\r";
627
+ function ie(e, t, n) {
628
+ if (e[0] === "\"") {
629
+ let e = n;
630
+ for (; e < t.length && re(t[e]);) e += 1;
631
+ return t[e] === ":" ? "key" : "string";
632
+ }
633
+ return e === "true" || e === "false" ? "boolean" : e === "null" ? "null" : "number";
634
+ }
635
+ function ae(e) {
636
+ let t = [], n = 0;
637
+ for (let r of e.matchAll(ne)) {
638
+ let i = r.index ?? 0;
639
+ i > n && t.push({
640
+ type: "punctuation",
641
+ value: e.slice(n, i)
642
+ });
643
+ let a = r[0];
644
+ t.push({
645
+ type: ie(a, e, i + a.length),
646
+ value: a
647
+ }), n = i + a.length;
648
+ }
649
+ return n < e.length && t.push({
650
+ type: "punctuation",
651
+ value: e.slice(n)
652
+ }), t;
653
+ }
654
+ function oe(e) {
655
+ if (typeof e != "string") return e != null;
656
+ let t = e.trim();
657
+ if (!t) return !1;
658
+ try {
659
+ return JSON.parse(t), !0;
660
+ } catch {
661
+ return !1;
662
+ }
663
+ }
664
+ function se({ code: e }) {
665
+ let t = _(() => ae(e), [e]);
666
+ return /* @__PURE__ */ T(w, { children: t.map((e, t) => /* @__PURE__ */ T("span", {
667
+ className: A.Token,
668
+ "data-token": e.type,
669
+ children: e.value
670
+ }, t)) });
671
+ }
672
+ //#endregion
673
+ //#region src/dev-panel/dev-panel-payload.tsx
674
+ var ce = {
675
+ "--button-fg": "var(--lea-palette-text-contrast)",
676
+ "--button-border": "var(--lea-palette-border-contrast)",
677
+ "--button-tint": "var(--lea-color-neutral-800)"
678
+ }, le = (e) => {
679
+ if (typeof e == "string") return e;
680
+ try {
681
+ return JSON.stringify(e, null, 2);
682
+ } catch {
683
+ return String(e);
684
+ }
685
+ }, ue = typeof window < "u" ? g : m, $ = 12, de = 420, fe = 280;
686
+ function pe({ value: i, label: a = "Payload preview", title: o, placement: s = "inline", badge: c, open: u, defaultOpen: d = !1, onOpenChange: p, copyLabel: g, copyJsonLabel: _, closeLabel: b, highlight: S = !0 }) {
687
+ let C = j(), { copied: w, copy: O } = Q(), k = u !== void 0, [M, N] = y(d), P = k ? u : M, F = h(), I = h(), L = s === "side", R = v(null), z = v(null), [B, V] = y(null), [H, U] = y(null);
688
+ m(() => U(document.body), []);
689
+ let W = f((e) => {
690
+ k || N(e), p?.(e);
691
+ }, [k, p]), G = le(i), K = S && oe(i) ? /* @__PURE__ */ T(se, { code: G }) : G, q = f(() => {
692
+ let e = R.current?.closest("[data-dev-panel-root]") ?? R.current;
693
+ if (!e) return;
694
+ let t = e.getBoundingClientRect(), n = Math.min(de, Math.max(fe, t.width)), r = t.left - n - $;
695
+ r < $ && (r = Math.min(t.right + $, window.innerWidth - n - $));
696
+ let i = Math.min(t.height, window.innerHeight - 24), a = Math.min(Math.max($, t.top), window.innerHeight - $ - i);
697
+ V({
698
+ top: a,
699
+ left: r,
700
+ width: n,
701
+ height: i
702
+ });
703
+ }, []);
704
+ ue(() => {
705
+ if (!L || !P) return;
706
+ q();
707
+ let e = () => q();
708
+ return window.addEventListener("resize", e), window.addEventListener("scroll", e, !0), () => {
709
+ window.removeEventListener("resize", e), window.removeEventListener("scroll", e, !0);
710
+ };
711
+ }, [
712
+ L,
713
+ P,
714
+ q
715
+ ]);
716
+ let J = B !== null;
717
+ m(() => {
718
+ if (!L || !P || !H || !J) return;
719
+ let e = z.current, t = R.current, n = () => Array.from(e?.querySelectorAll("button, [href], input, textarea, select, [tabindex]:not([tabindex=\"-1\"])") ?? []).filter((e) => !e.hasAttribute("disabled"));
720
+ (n()[0] ?? e)?.focus();
721
+ let r = (t) => {
722
+ if (t.key === "Escape") {
723
+ t.stopPropagation(), W(!1);
724
+ return;
725
+ }
726
+ if (t.key !== "Tab") return;
727
+ let r = n();
728
+ if (r.length === 0) {
729
+ t.preventDefault(), e?.focus();
730
+ return;
731
+ }
732
+ let i = r[0], a = r[r.length - 1], o = document.activeElement;
733
+ t.shiftKey && (o === i || o === e) ? (t.preventDefault(), a.focus()) : !t.shiftKey && o === a && (t.preventDefault(), i.focus());
734
+ }, i = (n) => {
735
+ let r = n.target;
736
+ e?.contains(r) || t?.contains(r) || W(!1);
737
+ };
738
+ return document.addEventListener("keydown", r, !0), document.addEventListener("pointerdown", i, !0), () => {
739
+ document.removeEventListener("keydown", r, !0), document.removeEventListener("pointerdown", i, !0), t?.focus();
740
+ };
741
+ }, [
742
+ L,
743
+ P,
744
+ H,
745
+ J,
746
+ W
747
+ ]);
748
+ let Y = /* @__PURE__ */ T(x, {
749
+ "aria-label": g ?? C.copy,
750
+ onClick: () => O(G),
751
+ variant: "outline",
752
+ color: "secondary",
753
+ size: "sm",
754
+ className: A.OnDark,
755
+ style: ce,
756
+ children: T(w ? t : r, {
757
+ size: 16,
758
+ "aria-hidden": !0
759
+ })
760
+ });
761
+ return /* @__PURE__ */ E("div", { children: [
762
+ /* @__PURE__ */ E("button", {
763
+ ref: R,
764
+ type: "button",
765
+ "aria-expanded": P,
766
+ "aria-controls": F,
767
+ "data-placement": s,
768
+ onClick: () => W(!P),
769
+ className: A.PayloadToggle,
770
+ children: [/* @__PURE__ */ E("span", {
771
+ className: A.PayloadToggleLabel,
772
+ children: [/* @__PURE__ */ T(e, {
773
+ size: 16,
774
+ "aria-hidden": !0
775
+ }), a]
776
+ }), /* @__PURE__ */ T("span", {
777
+ className: A.PayloadChevron,
778
+ children: /* @__PURE__ */ T(n, {
779
+ size: 16,
780
+ "aria-hidden": !0
781
+ })
782
+ })]
783
+ }),
784
+ !L && P && /* @__PURE__ */ E("div", {
785
+ id: F,
786
+ className: A.PayloadPanel,
787
+ children: [/* @__PURE__ */ E("div", {
788
+ className: A.PayloadHeader,
789
+ children: [/* @__PURE__ */ T("span", { children: o ?? a }), Y]
790
+ }), /* @__PURE__ */ T("pre", {
791
+ tabIndex: 0,
792
+ className: A.PayloadCode,
793
+ children: K
794
+ })]
795
+ }),
796
+ L && P && H && D(/* @__PURE__ */ E("div", {
797
+ ref: z,
798
+ id: F,
799
+ role: "dialog",
800
+ "aria-labelledby": I,
801
+ tabIndex: -1,
802
+ className: A.Flyout,
803
+ style: B ? {
804
+ top: B.top,
805
+ left: B.left,
806
+ width: B.width,
807
+ height: B.height
808
+ } : { visibility: "hidden" },
809
+ children: [
810
+ /* @__PURE__ */ E("div", {
811
+ className: A.PayloadHeader,
812
+ children: [/* @__PURE__ */ E("span", {
813
+ className: A.FlyoutTitle,
814
+ children: [/* @__PURE__ */ T("span", {
815
+ id: I,
816
+ children: o ?? a
817
+ }), c != null && /* @__PURE__ */ T("span", {
818
+ className: A.Badge,
819
+ "data-on-dark": "",
820
+ children: c
821
+ })]
822
+ }), /* @__PURE__ */ T(x, {
823
+ "aria-label": b ?? C.close,
824
+ onClick: () => W(!1),
825
+ variant: "outline",
826
+ color: "secondary",
827
+ size: "sm",
828
+ className: A.OnDark,
829
+ style: ce,
830
+ children: /* @__PURE__ */ T(l, {
831
+ size: 16,
832
+ "aria-hidden": !0
833
+ })
834
+ })]
835
+ }),
836
+ /* @__PURE__ */ T("pre", {
837
+ tabIndex: 0,
838
+ className: A.PayloadCode,
839
+ children: K
840
+ }),
841
+ /* @__PURE__ */ T("div", {
842
+ className: A.FlyoutFooter,
843
+ children: /* @__PURE__ */ E("button", {
844
+ type: "button",
845
+ onClick: () => O(G),
846
+ className: A.FlyoutCopyButton,
847
+ children: [T(w ? t : r, {
848
+ size: 16,
849
+ "aria-hidden": !0
850
+ }), w ? C.copied : _ ?? C.copyJson]
851
+ })
852
+ })
853
+ ]
854
+ }), H),
855
+ /* @__PURE__ */ T("span", {
856
+ role: "status",
857
+ "aria-live": "polite",
858
+ className: A.VisuallyHidden,
859
+ children: w ? C.copied : ""
860
+ })
861
+ ] });
862
+ }
863
+ //#endregion
864
+ //#region src/dev-panel/dev-panel-footer.tsx
865
+ function me({ onReseed: e, reseedLabel: t = "Reseed", onCopyUrl: r, url: i, copyUrlLabel: a = "Copy URL", onConsole: o, consoleLabel: l = "Console", children: u }) {
866
+ let { copy: d } = Q();
867
+ return /* @__PURE__ */ E("div", {
868
+ className: A.Footer,
869
+ children: [
870
+ e && /* @__PURE__ */ T(b, {
871
+ variant: "outline",
872
+ color: "secondary",
873
+ size: "sm",
874
+ startIcon: /* @__PURE__ */ T(s, { "aria-hidden": !0 }),
875
+ onClick: e,
876
+ children: t
877
+ }),
878
+ r && /* @__PURE__ */ T(b, {
879
+ variant: "outline",
880
+ color: "secondary",
881
+ size: "sm",
882
+ startIcon: /* @__PURE__ */ T(c, { "aria-hidden": !0 }),
883
+ onClick: async () => {
884
+ i != null && await d(i), r?.();
885
+ },
886
+ children: a
887
+ }),
888
+ o && /* @__PURE__ */ T(b, {
889
+ variant: "solid",
890
+ size: "sm",
891
+ endIcon: /* @__PURE__ */ T(n, { "aria-hidden": !0 }),
892
+ onClick: o,
893
+ style: { marginInlineStart: "auto" },
894
+ children: l
895
+ }),
896
+ u
897
+ ]
898
+ });
899
+ }
900
+ //#endregion
901
+ //#region src/dev-panel/parts.ts
902
+ var he = /* @__PURE__ */ k({
903
+ Country: () => W,
904
+ Flow: () => te,
905
+ Footer: () => me,
906
+ Handle: () => V,
907
+ Payload: () => pe,
908
+ Root: () => z,
909
+ Section: () => B,
910
+ Status: () => X,
911
+ StepState: () => K,
912
+ Steps: () => J,
913
+ Variant: () => G,
914
+ useSectionLabelId: () => P
915
+ });
916
+ //#endregion
917
+ export { he as DevPanel };
918
+
919
+ //# sourceMappingURL=dev-panel.mjs.map