@abyss-project/commons-front-core 13.2.0 → 14.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 (98) hide show
  1. package/catalog/captures-plan.ts +4 -1
  2. package/catalog/catalog-entries.ts +6 -1
  3. package/catalog/expected-error.ts +6 -0
  4. package/catalog/pages/CookieConsent.tsx +38 -0
  5. package/catalog/pages/ErrorBoundary.tsx +22 -0
  6. package/catalog/pages/PasswordField.tsx +62 -0
  7. package/catalog/pages/Toast.tsx +17 -6
  8. package/catalog/pages/index.ts +6 -0
  9. package/catalog/specs/captures.spec.ts +10 -0
  10. package/catalog/specs/catalog-page.ts +6 -1
  11. package/catalog/specs/write-capture-index.ts +1 -0
  12. package/dist/{AbyssCloud-D_AbU9k7.js → AbyssCloud-B3rMelRi.js} +636 -712
  13. package/dist/CookieConsentSettings-DyJGEnVA.js +505 -0
  14. package/dist/{use-rich-intl.hook-BETUyCkW.js → Surface-B_J_I_1i.js} +700 -147
  15. package/dist/Tabs-_TzugjHZ.js +1941 -0
  16. package/dist/auth/components/AuthHeroLayout/auth-hero-gradient.d.ts +18 -0
  17. package/dist/auth/components/shared/AuthLoadingScreen.component.d.ts +5 -0
  18. package/dist/auth/components/shared/use-async-resource.hook.d.ts +4 -1
  19. package/dist/auth/components/shared/use-async-resource.hook.spec.d.ts +1 -0
  20. package/dist/components/business/CookieConsent/AbyssCookieConsentProvider.spec.d.ts +1 -0
  21. package/dist/components/business/CookieConsent/CookieConsent.spec.d.ts +1 -0
  22. package/dist/{legacy/components/CookieConsent/CookieConsentBanner.component.d.ts → components/business/CookieConsent/CookieConsentBanner.d.ts} +1 -2
  23. package/dist/components/business/CookieConsent/CookieConsentSettings.d.ts +1 -0
  24. package/dist/{legacy/components → components/business}/CookieConsent/index.d.ts +2 -2
  25. package/dist/components/business/index.d.ts +3 -0
  26. package/dist/components/inputs/FormField/FormField.d.ts +5 -1
  27. package/dist/components/inputs/PasswordField/PasswordField.d.ts +40 -0
  28. package/dist/components/inputs/PasswordField/PasswordField.spec.d.ts +1 -0
  29. package/dist/components/inputs/index.d.ts +1 -0
  30. package/dist/components/layers/Toast/Toast.d.ts +3 -18
  31. package/dist/components/layers/Toast/toast-clearance.d.ts +6 -0
  32. package/dist/components/layers/Toast/toast-store.d.ts +76 -0
  33. package/dist/components/states/ErrorBoundary/ErrorBoundary.d.ts +17 -0
  34. package/dist/components/states/ErrorBoundary/ErrorBoundary.spec.d.ts +1 -0
  35. package/dist/components/states/PageState/PageState.d.ts +3 -1
  36. package/dist/components/states/index.d.ts +1 -0
  37. package/dist/cookie-consent.d.ts +1 -1
  38. package/dist/cookie-consent.js +14 -15
  39. package/dist/demo/DemoBanner/DemoBanner.d.ts +16 -0
  40. package/dist/demo/DemoBanner/DemoBanner.spec.d.ts +1 -0
  41. package/dist/demo/DemoBanner/index.d.ts +1 -0
  42. package/dist/demo/demo-blocked.interceptor.d.ts +7 -0
  43. package/dist/demo/demo.en.d.ts +17 -0
  44. package/dist/demo/demo.fr.d.ts +17 -0
  45. package/dist/demo/index.d.ts +3 -0
  46. package/dist/demo/tests/demo-blocked.interceptor.spec.d.ts +1 -0
  47. package/dist/demo/use-demo-account.hook.d.ts +19 -0
  48. package/dist/design-theme-D5L0JNbX.js +26599 -0
  49. package/dist/{editors-CUsZNFfw.js → editors-C6Rocm6M.js} +83 -83
  50. package/dist/editors.js +1 -1
  51. package/dist/hooks/use-rich-intl.hook.d.ts +78 -0
  52. package/dist/{index-BQ4GXlMJ.js → index-5AavH8Oo.js} +1 -1
  53. package/dist/{index-Bn4gTAno.js → index-B58_3EoW.js} +2 -2
  54. package/dist/{index-DuMzZrqc.js → index-BElPTqLa.js} +2 -2
  55. package/dist/{index-D1ro2oTw.js → index-BI4ooqu1.js} +2 -2
  56. package/dist/{index-TB7ekLl-.js → index-BYDMmzla.js} +2 -2
  57. package/dist/{index-CM0x-TnE.js → index-C1GCQ2Ke.js} +2 -2
  58. package/dist/{index-DEBTvCWD.js → index-C1I7MW-q.js} +3 -3
  59. package/dist/{index-pnfk6VZ7.js → index-CDI4_t7D.js} +4 -4
  60. package/dist/{index-Lyt4_W7a.js → index-CDWJlhuZ.js} +2 -2
  61. package/dist/{index-C7a2XXcz.js → index-CKJMsjnV.js} +4 -4
  62. package/dist/{index-CDpC4_po.js → index-Cskjr11h.js} +2 -2
  63. package/dist/{index-DErJ9c2q.js → index-CuYK_i3Q.js} +2 -2
  64. package/dist/{index-GTkZik4b.js → index-Cwgj3j50.js} +3 -3
  65. package/dist/{index-CjV5ui_B.js → index-Czhx2OUB.js} +2 -2
  66. package/dist/{index-CiDg4J7c.js → index-DGoR-pBV.js} +4 -4
  67. package/dist/{index-YzYX-H93.js → index-DjAZPCEQ.js} +3 -3
  68. package/dist/{index-Ba41aBBN.js → index-Dutd4cJm.js} +2 -2
  69. package/dist/{index-DobX4g2g.js → index-Dym_r-do.js} +2 -2
  70. package/dist/{index-BhFOCfCj.js → index-TshVV9T4.js} +2 -2
  71. package/dist/{index-BzoBMWdL.js → index-UjGNADrL.js} +3 -3
  72. package/dist/{index-CYUixRIB.js → index-u-EAOYOb.js} +2 -2
  73. package/dist/index.d.ts +1 -0
  74. package/dist/index.js +5493 -4746
  75. package/dist/legacy/components/Spotlight/ProjectLinkSelector/index.d.ts +1 -4
  76. package/dist/legacy/components/Support/AbyssServiceSelect.component.d.ts +1 -1
  77. package/dist/legacy/components/index.d.ts +1 -1
  78. package/dist/legacy.js +9626 -8128
  79. package/dist/translations/en.d.ts +38 -0
  80. package/dist/translations/fr.d.ts +38 -0
  81. package/dist/utils/billing-quota-error.utils.d.ts +11 -1
  82. package/dist/utils/index.d.ts +3 -0
  83. package/dist/utils/project-link-mode.d.ts +4 -0
  84. package/dist/utils/project-link-wording.utils.d.ts +1 -1
  85. package/dist/utils/quota-refusal-toast.utils.d.ts +12 -0
  86. package/dist/utils/quota-refusal-toast.utils.spec.d.ts +1 -0
  87. package/dist/utils/service-config.d.ts +8 -0
  88. package/dist/utils/service-config.spec.d.ts +1 -0
  89. package/package.json +6 -5
  90. package/scripts/check-external-react-toastify.cjs +104 -0
  91. package/vite.config.ts +2 -2
  92. package/dist/AbyssCookieConsentProvider-Ds99df0E.js +0 -4562
  93. package/dist/CookieConsentSettings.component-DoWLHqw5.js +0 -78
  94. package/dist/Tabs-C1qcQ2i5.js +0 -2335
  95. package/dist/design-theme-CG4Gc105.js +0 -24753
  96. package/dist/legacy/components/CookieConsent/CookieConsentSettings.component.d.ts +0 -2
  97. /package/dist/{legacy/components/CookieConsent/AbyssCookieConsentProvider.spec.d.ts → auth/components/SecuritySettings/sections/SessionsSection.component.spec.d.ts} +0 -0
  98. /package/dist/{legacy/components → components/business}/CookieConsent/AbyssCookieConsentProvider.d.ts +0 -0
@@ -1,14 +1,403 @@
1
- import { jsx as v } from "react/jsx-runtime";
2
- import { useIntl as k } from "react-intl";
3
- import { useCallback as M, useMemo as U } from "react";
4
- import { enTranslation as G, frTranslation as F } from "@abyss-project/main";
5
- import { l as P } from "./lazy-value-Co76vxsM.js";
6
- var Z = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
7
- function $(e) {
8
- return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
1
+ import { jsx as p, jsxs as O } from "react/jsx-runtime";
2
+ import { useId as F, useRef as z, useState as Y, useCallback as K, useMemo as ie, forwardRef as re } from "react";
3
+ import { useIntl as B } from "react-intl";
4
+ import ae from "@mui/material/Dialog";
5
+ import X from "@mui/material/IconButton";
6
+ import { alpha as ne, styled as f, useTheme as se } from "@mui/material/styles";
7
+ import J from "@mui/icons-material/Close";
8
+ import H from "@mui/material/useMediaQuery";
9
+ import le from "@mui/material/Modal";
10
+ import ce from "@mui/material/Slide";
11
+ import { enTranslation as de, frTranslation as ue } from "@abyss-project/main";
12
+ import { l as $ } from "./lazy-value-Co76vxsM.js";
13
+ var pe = /* @__PURE__ */ ((e) => (e.Dark = "dark", e.Light = "light", e))(pe || {});
14
+ const me = 266, c = (e, t) => ({ l: e, c: t, h: me }), ct = {
15
+ dark: {
16
+ 1: c(0.155, 0.034),
17
+ 2: c(0.17, 0.036),
18
+ 3: c(0.2, 0.04),
19
+ 4: c(0.24, 0.042),
20
+ 5: c(0.265, 0.042),
21
+ 6: c(0.295, 0.042),
22
+ 7: c(0.37, 0.045),
23
+ 8: c(0.54, 0.045),
24
+ 9: c(0.63, 0.035),
25
+ 10: c(0.72, 0.03),
26
+ 11: c(0.79, 0.03),
27
+ 12: c(0.96, 0.01)
28
+ },
29
+ light: {
30
+ 1: c(0.995, 3e-3),
31
+ 2: c(0.975, 8e-3),
32
+ 3: c(0.96, 0.012),
33
+ 4: c(0.935, 0.016),
34
+ 5: c(0.91, 0.018),
35
+ 6: c(0.885, 0.02),
36
+ 7: c(0.8, 0.03),
37
+ 8: c(0.6, 0.035),
38
+ 9: c(0.5, 0.04),
39
+ 10: c(0.46, 0.042),
40
+ 11: c(0.42, 0.045),
41
+ 12: c(0.22, 0.045)
42
+ }
43
+ }, dt = {
44
+ sans: '"Geist Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',
45
+ mono: '"Geist Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace'
46
+ }, ut = {
47
+ caption: 11,
48
+ small: 12,
49
+ body: 13,
50
+ bodyComfort: 14,
51
+ bodyMobile: 15,
52
+ sectionTitle: 16,
53
+ pageTitle: 22,
54
+ figure: 26,
55
+ mobileLargeTitle: 30
56
+ }, Q = {
57
+ regular: 400,
58
+ medium: 500,
59
+ semibold: 600,
60
+ bold: 700
61
+ }, pt = [0, 4, 8, 12, 16, 20, 24, 32, 40, 48, 64], mt = {
62
+ sm: 4,
63
+ md: 6,
64
+ lg: 12
65
+ }, gt = {
66
+ fast: 120,
67
+ base: 180,
68
+ slow: 260
69
+ }, ht = {
70
+ standard: "cubic-bezier(0.2, 0, 0, 1)",
71
+ sheet: "cubic-bezier(0.32, 0.72, 0, 1)"
72
+ }, V = {
73
+ xs: 0,
74
+ sm: 480,
75
+ md: 768,
76
+ lg: 1200,
77
+ xl: 1600
78
+ }, ft = {
79
+ comfortable: { row: 40, control: 32 },
80
+ compact: { row: 30, control: 28 },
81
+ touchTarget: 44
82
+ };
83
+ var T = /* @__PURE__ */ ((e) => (e.Mobile = "mobile", e.Tablet = "tablet", e.Desktop = "desktop", e))(T || {});
84
+ const Z = {
85
+ tablet: V.md,
86
+ desktop: V.lg
87
+ }, ge = 0.05, k = (e) => `(min-width:${Z[e]}px)`, M = (e) => `(max-width:${Z[e] - ge}px)`, D = {
88
+ /** From the start of `tier` up. */
89
+ up: (e) => `@media ${k(e)}`,
90
+ /** Below the start of `tier`. */
91
+ down: (e) => `@media ${M(e)}`,
92
+ /** The widths of `tier` only. */
93
+ only: (e) => {
94
+ switch (e) {
95
+ case "mobile":
96
+ return `@media ${M(
97
+ "tablet"
98
+ /* Tablet */
99
+ )}`;
100
+ case "tablet":
101
+ return `@media ${k(
102
+ "tablet"
103
+ /* Tablet */
104
+ )} and ${M(
105
+ "desktop"
106
+ /* Desktop */
107
+ )}`;
108
+ case "desktop":
109
+ return `@media ${k(
110
+ "desktop"
111
+ /* Desktop */
112
+ )}`;
113
+ }
114
+ }
115
+ }, he = 0.14, r = (e) => `${e}px`, L = (e) => `1px solid ${e}`, At = (e) => ne(e, he), fe = (e) => ({
116
+ outline: `2px solid ${e.design.tokens["focus.ring"]}`,
117
+ outlineOffset: "2px"
118
+ }), yt = (e, t) => t === "small" ? e.design.densityValues.compact.control : e.design.densityValues[e.design.density].control, Et = (e) => e.design.densityValues[e.design.density].row, bt = (e) => ({
119
+ [D.down(T.Tablet)]: {
120
+ minHeight: r(e.design.densityValues.touchTarget)
121
+ }
122
+ }), Ae = (e) => ({
123
+ [D.down(T.Tablet)]: {
124
+ minWidth: r(e.design.densityValues.touchTarget),
125
+ minHeight: r(e.design.densityValues.touchTarget)
126
+ }
127
+ }), ye = (e, t, o = "fast") => t.map(
128
+ (i) => `${i} ${e.design.durations[o]}ms ${e.design.easings.standard}`
129
+ ).join(", "), Ee = () => {
130
+ const e = H(D.up(T.Desktop), {
131
+ noSsr: !0
132
+ }), t = H(D.down(T.Tablet), {
133
+ noSsr: !0
134
+ });
135
+ return e ? T.Desktop : t ? T.Mobile : T.Tablet;
136
+ };
137
+ var _ = /* @__PURE__ */ ((e) => (e.Top = "top", e.Bottom = "bottom", e.Left = "left", e.Right = "right", e))(_ || {});
138
+ const w = (e, t) => `calc(${r(t)} + env(safe-area-inset-${e}))`, be = 0.3, Se = f("div")({
139
+ position: "absolute",
140
+ left: 0,
141
+ right: 0,
142
+ bottom: 0,
143
+ maxHeight: "100%",
144
+ display: "flex",
145
+ outline: "none"
146
+ }), ve = f("div")(({ theme: e }) => {
147
+ const { tokens: t, radii: o, space: i, elevations: a, fonts: n } = e.design;
148
+ return {
149
+ flex: "1 1 auto",
150
+ minWidth: 0,
151
+ maxHeight: `calc(100vh - ${w(_.Top, i[8])})`,
152
+ display: "flex",
153
+ flexDirection: "column",
154
+ gap: r(i[3]),
155
+ paddingTop: r(i[2]),
156
+ paddingBottom: w(_.Bottom, i[6]),
157
+ paddingLeft: w(_.Left, i[4]),
158
+ paddingRight: w(_.Right, i[4]),
159
+ backgroundColor: t["bg.surface"],
160
+ color: t["text.primary"],
161
+ fontFamily: n.sans,
162
+ borderTop: L(t["border.strong"]),
163
+ borderTopLeftRadius: r(o.lg),
164
+ borderTopRightRadius: r(o.lg),
165
+ boxShadow: a.modal,
166
+ outline: "none",
167
+ position: "relative"
168
+ };
169
+ }), Te = f(X)(({ theme: e }) => ({
170
+ position: "absolute",
171
+ top: r(e.design.space[1]),
172
+ right: w(_.Right, e.design.space[2]),
173
+ ...Ae(e)
174
+ })), Ne = f("div")(({ theme: e }) => {
175
+ const { space: t, densityValues: o } = e.design;
176
+ return {
177
+ flex: "none",
178
+ display: "flex",
179
+ flexDirection: "column",
180
+ alignItems: "center",
181
+ gap: r(t[2]),
182
+ minHeight: r(o.touchTarget / 2),
183
+ touchAction: "none",
184
+ cursor: "grab"
185
+ };
186
+ }), Ce = f("span")(({ theme: e }) => {
187
+ const { tokens: t, radii: o, space: i } = e.design;
188
+ return {
189
+ width: r(i[8]),
190
+ height: r(i[1]),
191
+ borderRadius: r(o.sm),
192
+ backgroundColor: t["border.strong"]
193
+ };
194
+ }), Ie = f("h2", {
195
+ shouldForwardProp: (e) => e !== "besideClose"
196
+ })(({ theme: e, besideClose: t }) => {
197
+ const { typeScale: o, densityValues: i, space: a } = e.design;
198
+ return {
199
+ alignSelf: "stretch",
200
+ margin: 0,
201
+ // Clear of the close button in the corner.
202
+ paddingRight: t ? r(i.touchTarget + a[2]) : void 0,
203
+ fontSize: r(o.sectionTitle),
204
+ fontWeight: Q.semibold,
205
+ overflowWrap: "anywhere"
206
+ };
207
+ }), Re = f("div")({
208
+ flex: "1 1 auto",
209
+ minHeight: 0,
210
+ overflowY: "auto",
211
+ overscrollBehavior: "contain"
212
+ });
213
+ function Oe({
214
+ open: e,
215
+ onClose: t,
216
+ title: o,
217
+ closeLabel: i,
218
+ children: a
219
+ }) {
220
+ const n = se(), y = B(), A = F(), E = z(null), l = z(null), [v, S] = Y(0), [C, u] = Y(!1), d = (g) => {
221
+ g.currentTarget.setPointerCapture(g.pointerId), l.current = g.clientY, u(!0);
222
+ }, s = (g) => {
223
+ l.current !== null && S(Math.max(0, g.clientY - l.current));
224
+ }, m = (g) => {
225
+ var x;
226
+ if (l.current === null)
227
+ return;
228
+ const R = Math.max(0, g.clientY - l.current), N = ((x = E.current) == null ? void 0 : x.getBoundingClientRect().height) ?? 0;
229
+ l.current = null, u(!1), S(0), N > 0 && R >= N * be && t();
230
+ }, b = () => {
231
+ l.current = null, u(!1), S(0);
232
+ };
233
+ return /* @__PURE__ */ p(le, { open: e, onClose: () => t(), children: /* @__PURE__ */ p(
234
+ ce,
235
+ {
236
+ in: e,
237
+ direction: "up",
238
+ timeout: n.design.durations.slow,
239
+ easing: n.design.easings.sheet,
240
+ children: /* @__PURE__ */ p(Se, { children: /* @__PURE__ */ O(
241
+ ve,
242
+ {
243
+ ref: E,
244
+ role: "dialog",
245
+ "aria-modal": "true",
246
+ "aria-labelledby": o ? A : void 0,
247
+ "aria-label": o ? void 0 : y.formatMessage({ id: "ds.mobile.bottom-sheet.label" }),
248
+ tabIndex: -1,
249
+ style: {
250
+ transform: `translateY(${r(v)})`,
251
+ transition: C ? "none" : `transform ${n.design.durations.base}ms ${n.design.easings.sheet}`
252
+ },
253
+ children: [
254
+ /* @__PURE__ */ O(
255
+ Ne,
256
+ {
257
+ "data-testid": "bottom-sheet-drag-zone",
258
+ onPointerDown: d,
259
+ onPointerMove: s,
260
+ onPointerUp: m,
261
+ onPointerCancel: b,
262
+ children: [
263
+ /* @__PURE__ */ p(Ce, { "aria-hidden": "true" }),
264
+ o ? /* @__PURE__ */ p(Ie, { id: A, besideClose: i !== void 0, children: o }) : null
265
+ ]
266
+ }
267
+ ),
268
+ i !== void 0 && /* @__PURE__ */ p(Te, { "aria-label": i, onClick: () => t(), children: /* @__PURE__ */ p(J, { "aria-hidden": !0 }) }),
269
+ /* @__PURE__ */ p(Re, { children: a })
270
+ ]
271
+ }
272
+ ) })
273
+ }
274
+ ) });
9
275
  }
10
- const R = (e) => e, D = {
11
- fr: R({
276
+ var _e = /* @__PURE__ */ ((e) => (e.Small = "sm", e.Medium = "md", e.Large = "lg", e))(_e || {});
277
+ const Pe = f(ae)(({ theme: e }) => {
278
+ const { tokens: t, fonts: o, space: i } = e.design;
279
+ return {
280
+ "& .MuiDialog-paper": {
281
+ margin: r(i[4]),
282
+ maxHeight: `calc(100% - ${r(i[7])})`,
283
+ backgroundColor: t["bg.surface"],
284
+ color: t["text.primary"],
285
+ fontFamily: o.sans,
286
+ overflow: "hidden"
287
+ },
288
+ "& .MuiDialog-paperFullWidth": {
289
+ width: `calc(100% - ${r(i[7])})`
290
+ }
291
+ };
292
+ }), we = f("div")(({ theme: e }) => {
293
+ const { tokens: t, space: o } = e.design;
294
+ return {
295
+ flex: "none",
296
+ display: "flex",
297
+ justifyContent: "space-between",
298
+ alignItems: "flex-start",
299
+ gap: r(o[4]),
300
+ padding: `${r(o[4])} ${r(o[5])}`,
301
+ borderBottom: L(t["border.subtle"])
302
+ };
303
+ }), De = f("div")({ minWidth: 0 }), Le = f("h2")(({ theme: e }) => ({
304
+ margin: 0,
305
+ fontSize: r(e.design.typeScale.sectionTitle),
306
+ fontWeight: Q.semibold,
307
+ overflowWrap: "anywhere"
308
+ })), ke = f("p")(({ theme: e }) => {
309
+ const { tokens: t, space: o, typeScale: i } = e.design;
310
+ return {
311
+ margin: `${r(o[1])} 0 0`,
312
+ color: t["text.muted"],
313
+ fontSize: r(i.body),
314
+ overflowWrap: "anywhere"
315
+ };
316
+ }), Me = f("div")(({ theme: e }) => ({
317
+ flex: "1 1 auto",
318
+ minHeight: 0,
319
+ overflowY: "auto",
320
+ padding: r(e.design.space[5]),
321
+ fontSize: r(e.design.typeScale.body)
322
+ })), Ue = f("div")(({ theme: e }) => {
323
+ const { tokens: t, space: o } = e.design;
324
+ return {
325
+ flex: "none",
326
+ display: "flex",
327
+ flexWrap: "wrap",
328
+ justifyContent: "flex-end",
329
+ alignItems: "center",
330
+ gap: r(o[3]),
331
+ padding: `${r(o[3])} ${r(o[5])}`,
332
+ borderTop: L(t["border.subtle"])
333
+ };
334
+ }), Ge = f("p")(({ theme: e }) => ({
335
+ margin: `0 0 ${r(e.design.space[3])}`,
336
+ color: e.design.tokens["text.muted"],
337
+ fontSize: r(e.design.typeScale.bodyMobile),
338
+ overflowWrap: "anywhere"
339
+ })), Fe = f("div")(({ theme: e }) => ({
340
+ display: "flex",
341
+ flexWrap: "wrap",
342
+ gap: r(e.design.space[2]),
343
+ marginTop: r(e.design.space[4]),
344
+ "& > *": { flex: "1 1 0" }
345
+ }));
346
+ function St({
347
+ open: e,
348
+ onClose: t,
349
+ title: o,
350
+ description: i,
351
+ size: a = "md",
352
+ actions: n,
353
+ children: y
354
+ }) {
355
+ const A = B(), E = Ee() === T.Mobile, l = F(), v = F();
356
+ return E ? /* @__PURE__ */ O(
357
+ Oe,
358
+ {
359
+ open: e,
360
+ onClose: t,
361
+ title: o,
362
+ closeLabel: A.formatMessage({ id: "ds.layers.modal.close" }),
363
+ children: [
364
+ i !== void 0 && /* @__PURE__ */ p(Ge, { children: i }),
365
+ y,
366
+ n !== void 0 && /* @__PURE__ */ p(Fe, { children: n })
367
+ ]
368
+ }
369
+ ) : /* @__PURE__ */ O(
370
+ Pe,
371
+ {
372
+ open: e,
373
+ onClose: () => t(),
374
+ maxWidth: a,
375
+ fullWidth: !0,
376
+ "aria-labelledby": l,
377
+ "aria-describedby": i !== void 0 ? v : void 0,
378
+ children: [
379
+ /* @__PURE__ */ O(we, { children: [
380
+ /* @__PURE__ */ O(De, { children: [
381
+ /* @__PURE__ */ p(Le, { id: l, children: o }),
382
+ i !== void 0 && /* @__PURE__ */ p(ke, { id: v, children: i })
383
+ ] }),
384
+ /* @__PURE__ */ p(
385
+ X,
386
+ {
387
+ "aria-label": A.formatMessage({ id: "ds.layers.modal.close" }),
388
+ onClick: t,
389
+ children: /* @__PURE__ */ p(J, { "aria-hidden": !0 })
390
+ }
391
+ )
392
+ ] }),
393
+ /* @__PURE__ */ p(Me, { children: y }),
394
+ n !== void 0 && /* @__PURE__ */ p(Ue, { children: n })
395
+ ]
396
+ }
397
+ );
398
+ }
399
+ const j = (e) => e, ee = {
400
+ fr: j({
12
401
  PROJECTS_COUNT: "Projets",
13
402
  MEMBERS_COUNT: "Membres",
14
403
  TEAM_COUNT: "Équipes",
@@ -68,7 +457,7 @@ const R = (e) => e, D = {
68
457
  BANKING_PSD2_REFRESHES_MONTH: "Rafraîchissements PSD2 / mois",
69
458
  BANKING_SYSTEM_RESNAPSHOTS_MONTH: "Recalculs système / mois"
70
459
  }),
71
- en: R({
460
+ en: j({
72
461
  PROJECTS_COUNT: "Projects",
73
462
  MEMBERS_COUNT: "Members",
74
463
  TEAM_COUNT: "Teams",
@@ -129,26 +518,26 @@ const R = (e) => e, D = {
129
518
  BANKING_SYSTEM_RESNAPSHOTS_MONTH: "System resnapshots / month"
130
519
  })
131
520
  };
132
- var y = /* @__PURE__ */ ((e) => (e.FREEMIUM = "FREEMIUM", e.DEFAULT = "DEFAULT", e.CUSTOM = "CUSTOM", e.SYSTEM = "SYSTEM", e))(y || {}), A = /* @__PURE__ */ ((e) => (e.FREEMIUM = "freemium", e.STARTER = "starter", e.PRO = "pro", e.ENTERPRISE = "enterprise", e.CUSTOM = "custom", e.INTERNAL = "internal", e.FAMILY_FREE = "family-free", e.FAMILY_PAID = "family-paid", e))(A || {});
133
- const B = {
134
- [y.FREEMIUM]: A.FREEMIUM,
135
- [y.DEFAULT]: "paid",
136
- [y.SYSTEM]: A.INTERNAL,
137
- [y.CUSTOM]: A.CUSTOM
138
- }, x = new Set(Object.values(A)), C = (e) => e ? e.tier === y.CUSTOM ? A.CUSTOM : e.catalogKey && x.has(e.catalogKey) ? e.catalogKey : B[e.tier] ?? "paid" : A.FREEMIUM, ee = (e, u) => {
139
- const s = (p) => {
140
- const h = e[`${p}Tier`];
141
- if (typeof h != "string")
521
+ var P = /* @__PURE__ */ ((e) => (e.FREEMIUM = "FREEMIUM", e.DEFAULT = "DEFAULT", e.CUSTOM = "CUSTOM", e.SYSTEM = "SYSTEM", e))(P || {}), I = /* @__PURE__ */ ((e) => (e.FREEMIUM = "freemium", e.STARTER = "starter", e.PRO = "pro", e.ENTERPRISE = "enterprise", e.CUSTOM = "custom", e.INTERNAL = "internal", e.FAMILY_FREE = "family-free", e.FAMILY_PAID = "family-paid", e.DEMO = "demo", e))(I || {});
522
+ const Be = {
523
+ [P.FREEMIUM]: I.FREEMIUM,
524
+ [P.DEFAULT]: "paid",
525
+ [P.SYSTEM]: I.INTERNAL,
526
+ [P.CUSTOM]: I.CUSTOM
527
+ }, xe = new Set(Object.values(I)), U = (e) => e ? e.tier === P.CUSTOM ? I.CUSTOM : e.catalogKey && xe.has(e.catalogKey) ? e.catalogKey : Be[e.tier] ?? "paid" : I.FREEMIUM, vt = (e, t) => {
528
+ const o = (A) => {
529
+ const E = e[`${A}Tier`];
530
+ if (typeof E != "string")
142
531
  return null;
143
- const m = e[`${p}CatalogKey`];
532
+ const l = e[`${A}CatalogKey`];
144
533
  return {
145
- tier: h,
146
- catalogKey: typeof m == "string" ? m : null
534
+ tier: E,
535
+ catalogKey: typeof l == "string" ? l : null
147
536
  };
148
- }, d = {}, o = s("plan"), r = s("oldPlan"), g = s("newPlan");
149
- return o && (d.planName = u(C(o))), r && (d.oldPlanName = u(C(r))), g && (d.newPlanName = u(C(g))), d;
150
- }, O = (e) => e, n = {
151
- fr: O({
537
+ }, i = {}, a = o("plan"), n = o("oldPlan"), y = o("newPlan");
538
+ return a && (i.planName = t(U(a))), n && (i.oldPlanName = t(U(n))), y && (i.newPlanName = t(U(y))), i;
539
+ }, q = (e) => e, h = {
540
+ fr: q({
152
541
  freemium: "Gratuit",
153
542
  starter: "Starter",
154
543
  pro: "Pro",
@@ -156,10 +545,11 @@ const B = {
156
545
  internal: "Interne",
157
546
  "family-free": "Famille gratuit",
158
547
  "family-paid": "Famille",
548
+ demo: "Démonstration",
159
549
  custom: "Plan personnalisé",
160
550
  paid: "Plan payant"
161
551
  }),
162
- en: O({
552
+ en: q({
163
553
  freemium: "Free",
164
554
  starter: "Starter",
165
555
  pro: "Pro",
@@ -167,10 +557,27 @@ const B = {
167
557
  internal: "Internal",
168
558
  "family-free": "Family free",
169
559
  "family-paid": "Family",
560
+ demo: "Demo",
170
561
  custom: "Custom plan",
171
562
  paid: "Paid plan"
172
563
  })
173
- }, z = {
564
+ }, ze = {
565
+ banner: {
566
+ title: "Compte de démonstration",
567
+ summary: "{label} · expire le {date}",
568
+ "expires-in": "(dans {days, plural, one {# jour} other {# jours}})",
569
+ "expires-today": "(aujourd’hui)",
570
+ reset: "Réinitialiser",
571
+ "learn-more": "En savoir plus",
572
+ "reset-dialog": {
573
+ title: "Réinitialiser la démonstration ?",
574
+ body: "Les données de tous les comptes du groupe reviennent à leur état de départ. Ce que vous avez créé ou modifié sera perdu.",
575
+ confirm: "Réinitialiser"
576
+ }
577
+ },
578
+ blocked: "Indisponible en démo"
579
+ }, Ye = {
580
+ demo: ze,
174
581
  "space-display-name": {
175
582
  personal: "Mon Cloud",
176
583
  "perso-in-org": "Mon Cloud (dans org)",
@@ -260,7 +667,7 @@ const B = {
260
667
  },
261
668
  // Metric names come from @abyss-project/main's `billing-metric-label` table, their single
262
669
  // source (the invoices, their PDF and the overage e-mail read it too).
263
- metric: D.fr
670
+ metric: ee.fr
264
671
  },
265
672
  "error-page": {
266
673
  title: "Une erreur est survenue",
@@ -272,13 +679,25 @@ const B = {
272
679
  "download-details": "Télécharger le rapport",
273
680
  "footer-hint": "Si le problème persiste, merci de nous envoyer le rapport téléchargé.",
274
681
  report: {
275
- "comment-placeholder": "Décris brièvement ce que tu faisais (optionnel)",
682
+ "comment-placeholder": "Décrivez brièvement ce que vous faisiez (optionnel)",
276
683
  send: "Envoyer le rapport",
277
684
  sending: "Envoi en cours…",
278
685
  sent: "Rapport envoyé ✓",
279
686
  "error-retry": "L'envoi a échoué — réessayer"
280
687
  }
281
688
  },
689
+ "error-boundary": {
690
+ title: "Cette page a rencontré une erreur",
691
+ "go-home": "Retour à l’accueil",
692
+ "show-details": "Afficher le détail technique",
693
+ "hide-details": "Masquer le détail technique",
694
+ "details-label": "Détail technique",
695
+ message: "Message",
696
+ "component-stack": "Pile de composants",
697
+ copy: "Copier le détail",
698
+ copied: "Détail copié",
699
+ "copy-failed": "La copie a échoué. Sélectionnez le texte pour le copier."
700
+ },
282
701
  cookies: {
283
702
  banner: {
284
703
  title: "Vos préférences de cookies",
@@ -899,36 +1318,40 @@ const B = {
899
1318
  // Plan names come from @abyss-project/main's `plan-name` table, their single source.
900
1319
  plan: {
901
1320
  freemium: {
902
- name: n.fr.freemium,
1321
+ name: h.fr.freemium,
903
1322
  description: "Pour démarrer sans engagement"
904
1323
  },
905
1324
  starter: {
906
- name: n.fr.starter,
1325
+ name: h.fr.starter,
907
1326
  description: "Pour les individus et petites équipes"
908
1327
  },
909
1328
  pro: {
910
- name: n.fr.pro,
1329
+ name: h.fr.pro,
911
1330
  description: "Pour les équipes professionnelles"
912
1331
  },
913
1332
  enterprise: {
914
- name: n.fr.enterprise,
1333
+ name: h.fr.enterprise,
915
1334
  description: "Pour les grandes organisations"
916
1335
  },
917
1336
  internal: {
918
- name: n.fr.internal,
1337
+ name: h.fr.internal,
919
1338
  description: "Usage interne Abyss"
920
1339
  },
921
1340
  "family-free": {
922
- name: n.fr["family-free"],
1341
+ name: h.fr["family-free"],
923
1342
  description: "Jusqu'à 6 membres, espaces partagés"
924
1343
  },
925
1344
  "family-paid": {
926
- name: n.fr["family-paid"],
1345
+ name: h.fr["family-paid"],
927
1346
  description: "Jusqu'à 12 membres + bonus sur vos quotas perso"
928
1347
  },
1348
+ demo: {
1349
+ name: h.fr.demo,
1350
+ description: "Compte de démonstration : tous les services inclus"
1351
+ },
929
1352
  // Names only: a bespoke plan and a paid plan outside the catalog have no catalog pitch.
930
- custom: { name: n.fr.custom },
931
- paid: { name: n.fr.paid }
1353
+ custom: { name: h.fr.custom },
1354
+ paid: { name: h.fr.paid }
932
1355
  },
933
1356
  "plan-feature": {
934
1357
  PROJECTS_COUNT: "{unlimited, select, true {Projets illimités} other {{limit} projets}}",
@@ -1448,7 +1871,8 @@ const B = {
1448
1871
  slack: "Slack",
1449
1872
  totp: "Application d’authentification",
1450
1873
  recovery: "Code de récupération",
1451
- impersonation: "Accès support"
1874
+ impersonation: "Accès support",
1875
+ demo_link: "Lien de connexion de démonstration"
1452
1876
  },
1453
1877
  passkeys: {
1454
1878
  title: "Passkeys",
@@ -1919,7 +2343,8 @@ const B = {
1919
2343
  },
1920
2344
  toast: {
1921
2345
  region: "Notifications",
1922
- dismiss: "Fermer la notification"
2346
+ dismiss: "Fermer la notification",
2347
+ progress: "Progression"
1923
2348
  },
1924
2349
  "command-palette": {
1925
2350
  label: "Palette de commandes",
@@ -2257,8 +2682,28 @@ const B = {
2257
2682
  }
2258
2683
  }
2259
2684
  }
2685
+ },
2686
+ "password-field": {
2687
+ show: "Afficher le mot de passe",
2688
+ hide: "Masquer le mot de passe"
2260
2689
  }
2261
- }, Y = {
2690
+ }, He = {
2691
+ banner: {
2692
+ title: "Demo account",
2693
+ summary: "{label} · expires on {date}",
2694
+ "expires-in": "(in {days, plural, one {# day} other {# days}})",
2695
+ "expires-today": "(today)",
2696
+ reset: "Reset",
2697
+ "learn-more": "Learn more",
2698
+ "reset-dialog": {
2699
+ title: "Reset the demo?",
2700
+ body: "The data of all the accounts of the group goes back to its starting state. Anything you created or changed will be lost.",
2701
+ confirm: "Reset"
2702
+ }
2703
+ },
2704
+ blocked: "Unavailable in demo"
2705
+ }, Ve = {
2706
+ demo: He,
2262
2707
  "space-display-name": {
2263
2708
  personal: "My Cloud",
2264
2709
  "perso-in-org": "My Cloud (in org)",
@@ -2348,7 +2793,7 @@ const B = {
2348
2793
  },
2349
2794
  // Metric names come from @abyss-project/main's `billing-metric-label` table, their single
2350
2795
  // source (the invoices, their PDF and the overage e-mail read it too).
2351
- metric: D.en
2796
+ metric: ee.en
2352
2797
  },
2353
2798
  "error-page": {
2354
2799
  title: "Something went wrong",
@@ -2367,6 +2812,18 @@ const B = {
2367
2812
  "error-retry": "Send failed — retry"
2368
2813
  }
2369
2814
  },
2815
+ "error-boundary": {
2816
+ title: "This page ran into an error",
2817
+ "go-home": "Go home",
2818
+ "show-details": "Show technical details",
2819
+ "hide-details": "Hide technical details",
2820
+ "details-label": "Technical details",
2821
+ message: "Message",
2822
+ "component-stack": "Component stack",
2823
+ copy: "Copy details",
2824
+ copied: "Details copied",
2825
+ "copy-failed": "Copying failed. Select the text to copy it."
2826
+ },
2370
2827
  cookies: {
2371
2828
  banner: {
2372
2829
  title: "Your cookie preferences",
@@ -2987,36 +3444,40 @@ const B = {
2987
3444
  // Plan names come from @abyss-project/main's `plan-name` table, their single source.
2988
3445
  plan: {
2989
3446
  freemium: {
2990
- name: n.en.freemium,
3447
+ name: h.en.freemium,
2991
3448
  description: "Get started with no commitment"
2992
3449
  },
2993
3450
  starter: {
2994
- name: n.en.starter,
3451
+ name: h.en.starter,
2995
3452
  description: "For individuals and small teams"
2996
3453
  },
2997
3454
  pro: {
2998
- name: n.en.pro,
3455
+ name: h.en.pro,
2999
3456
  description: "For professional teams"
3000
3457
  },
3001
3458
  enterprise: {
3002
- name: n.en.enterprise,
3459
+ name: h.en.enterprise,
3003
3460
  description: "For large organizations"
3004
3461
  },
3005
3462
  internal: {
3006
- name: n.en.internal,
3463
+ name: h.en.internal,
3007
3464
  description: "Abyss internal use"
3008
3465
  },
3009
3466
  "family-free": {
3010
- name: n.en["family-free"],
3467
+ name: h.en["family-free"],
3011
3468
  description: "Up to 6 members, shared spaces"
3012
3469
  },
3013
3470
  "family-paid": {
3014
- name: n.en["family-paid"],
3471
+ name: h.en["family-paid"],
3015
3472
  description: "Up to 12 members + a bonus on your personal quotas"
3016
3473
  },
3474
+ demo: {
3475
+ name: h.en.demo,
3476
+ description: "Demo account: every service included"
3477
+ },
3017
3478
  // Names only: a bespoke plan and a paid plan outside the catalog have no catalog pitch.
3018
- custom: { name: n.en.custom },
3019
- paid: { name: n.en.paid }
3479
+ custom: { name: h.en.custom },
3480
+ paid: { name: h.en.paid }
3020
3481
  },
3021
3482
  "plan-feature": {
3022
3483
  PROJECTS_COUNT: "{unlimited, select, true {Unlimited projects} other {{limit} projects}}",
@@ -3536,7 +3997,8 @@ const B = {
3536
3997
  slack: "Slack",
3537
3998
  totp: "Authenticator app",
3538
3999
  recovery: "Recovery code",
3539
- impersonation: "Support access"
4000
+ impersonation: "Support access",
4001
+ demo_link: "Demonstration login link"
3540
4002
  },
3541
4003
  passkeys: {
3542
4004
  title: "Passkeys",
@@ -4007,7 +4469,8 @@ const B = {
4007
4469
  },
4008
4470
  toast: {
4009
4471
  region: "Notifications",
4010
- dismiss: "Dismiss the notification"
4472
+ dismiss: "Dismiss the notification",
4473
+ progress: "Progress"
4011
4474
  },
4012
4475
  "command-palette": {
4013
4476
  label: "Command palette",
@@ -4345,120 +4808,210 @@ const B = {
4345
4808
  }
4346
4809
  }
4347
4810
  }
4811
+ },
4812
+ "password-field": {
4813
+ show: "Show password",
4814
+ hide: "Hide password"
4348
4815
  }
4349
4816
  };
4350
- var I, _;
4351
- function H() {
4352
- if (_) return I;
4353
- _ = 1, I = s, s.flatten = s, s.unflatten = d;
4354
- function e(o) {
4355
- return o && o.constructor && typeof o.constructor.isBuffer == "function" && o.constructor.isBuffer(o);
4817
+ var G, W;
4818
+ function je() {
4819
+ if (W) return G;
4820
+ W = 1, G = o, o.flatten = o, o.unflatten = i;
4821
+ function e(a) {
4822
+ return a && a.constructor && typeof a.constructor.isBuffer == "function" && a.constructor.isBuffer(a);
4356
4823
  }
4357
- function u(o) {
4358
- return o;
4824
+ function t(a) {
4825
+ return a;
4359
4826
  }
4360
- function s(o, r) {
4361
- r = r || {};
4362
- const g = r.delimiter || ".", p = r.maxDepth, h = r.transformKey || u, m = {};
4363
- function N(f, b, E) {
4364
- E = E || 1, Object.keys(f).forEach(function(i) {
4365
- const t = f[i], a = r.safe && Array.isArray(t), l = Object.prototype.toString.call(t), c = e(t), T = l === "[object Object]" || l === "[object Array]", S = b ? b + g + h(i) : h(i);
4366
- if (!a && !c && T && Object.keys(t).length && (!r.maxDepth || E < p))
4367
- return N(t, S, E + 1);
4368
- m[S] = t;
4827
+ function o(a, n) {
4828
+ n = n || {};
4829
+ const y = n.delimiter || ".", A = n.maxDepth, E = n.transformKey || t, l = {};
4830
+ function v(S, C, u) {
4831
+ u = u || 1, Object.keys(S).forEach(function(d) {
4832
+ const s = S[d], m = n.safe && Array.isArray(s), b = Object.prototype.toString.call(s), g = e(s), R = b === "[object Object]" || b === "[object Array]", N = C ? C + y + E(d) : E(d);
4833
+ if (!m && !g && R && Object.keys(s).length && (!n.maxDepth || u < A))
4834
+ return v(s, N, u + 1);
4835
+ l[N] = s;
4369
4836
  });
4370
4837
  }
4371
- return N(o), m;
4838
+ return v(a), l;
4372
4839
  }
4373
- function d(o, r) {
4374
- r = r || {};
4375
- const g = r.delimiter || ".", p = r.overwrite || !1, h = r.transformKey || u, m = {};
4376
- if (e(o) || Object.prototype.toString.call(o) !== "[object Object]")
4377
- return o;
4378
- function f(i) {
4379
- const t = Number(i);
4380
- return isNaN(t) || i.indexOf(".") !== -1 || r.object ? i : t;
4840
+ function i(a, n) {
4841
+ n = n || {};
4842
+ const y = n.delimiter || ".", A = n.overwrite || !1, E = n.transformKey || t, l = {};
4843
+ if (e(a) || Object.prototype.toString.call(a) !== "[object Object]")
4844
+ return a;
4845
+ function S(d) {
4846
+ const s = Number(d);
4847
+ return isNaN(s) || d.indexOf(".") !== -1 || n.object ? d : s;
4381
4848
  }
4382
- function b(i, t, a) {
4383
- return Object.keys(a).reduce(function(l, c) {
4384
- return l[i + g + c] = a[c], l;
4385
- }, t);
4849
+ function C(d, s, m) {
4850
+ return Object.keys(m).reduce(function(b, g) {
4851
+ return b[d + y + g] = m[g], b;
4852
+ }, s);
4386
4853
  }
4387
- function E(i) {
4388
- const t = Object.prototype.toString.call(i), a = t === "[object Array]", l = t === "[object Object]";
4389
- if (i) {
4390
- if (a)
4391
- return !i.length;
4392
- if (l)
4393
- return !Object.keys(i).length;
4854
+ function u(d) {
4855
+ const s = Object.prototype.toString.call(d), m = s === "[object Array]", b = s === "[object Object]";
4856
+ if (d) {
4857
+ if (m)
4858
+ return !d.length;
4859
+ if (b)
4860
+ return !Object.keys(d).length;
4394
4861
  } else return !0;
4395
4862
  }
4396
- return o = Object.keys(o).reduce(function(i, t) {
4397
- const a = Object.prototype.toString.call(o[t]);
4398
- return !(a === "[object Object]" || a === "[object Array]") || E(o[t]) ? (i[t] = o[t], i) : b(
4399
- t,
4400
- i,
4401
- s(o[t], r)
4863
+ return a = Object.keys(a).reduce(function(d, s) {
4864
+ const m = Object.prototype.toString.call(a[s]);
4865
+ return !(m === "[object Object]" || m === "[object Array]") || u(a[s]) ? (d[s] = a[s], d) : C(
4866
+ s,
4867
+ d,
4868
+ o(a[s], n)
4402
4869
  );
4403
- }, {}), Object.keys(o).forEach(function(i) {
4404
- const t = i.split(g).map(h);
4405
- let a = f(t.shift()), l = f(t[0]), c = m;
4406
- for (; l !== void 0; ) {
4407
- if (a === "__proto__")
4870
+ }, {}), Object.keys(a).forEach(function(d) {
4871
+ const s = d.split(y).map(E);
4872
+ let m = S(s.shift()), b = S(s[0]), g = l;
4873
+ for (; b !== void 0; ) {
4874
+ if (m === "__proto__")
4408
4875
  return;
4409
- const T = Object.prototype.toString.call(c[a]), S = T === "[object Object]" || T === "[object Array]";
4410
- if (!p && !S && typeof c[a] < "u")
4876
+ const R = Object.prototype.toString.call(g[m]), N = R === "[object Object]" || R === "[object Array]";
4877
+ if (!A && !N && typeof g[m] < "u")
4411
4878
  return;
4412
- (p && !S || !p && c[a] == null) && (c[a] = typeof l == "number" && !r.object ? [] : {}), c = c[a], t.length > 0 && (a = f(t.shift()), l = f(t[0]));
4879
+ (A && !N || !A && g[m] == null) && (g[m] = typeof b == "number" && !n.object ? [] : {}), g = g[m], s.length > 0 && (m = S(s.shift()), b = S(s[0]));
4413
4880
  }
4414
- c[a] = d(o[i], r);
4415
- }), m;
4881
+ g[m] = i(a[d], n);
4882
+ }), l;
4416
4883
  }
4417
- return I;
4884
+ return G;
4418
4885
  }
4419
- var w = H();
4420
- const L = {
4421
- fr: { ...z, common: F },
4422
- en: { ...Y, common: G }
4423
- }, V = P(
4424
- () => w.flatten(L.fr)
4425
- ), j = P(
4426
- () => w.flatten(L.en)
4427
- ), te = {
4886
+ var te = je();
4887
+ const oe = {
4888
+ fr: { ...Ye, common: ue },
4889
+ en: { ...Ve, common: de }
4890
+ }, qe = $(
4891
+ () => te.flatten(oe.fr)
4892
+ ), We = $(
4893
+ () => te.flatten(oe.en)
4894
+ ), Tt = {
4428
4895
  get fr() {
4429
- return V();
4896
+ return qe();
4430
4897
  },
4431
4898
  get en() {
4432
- return j();
4899
+ return We();
4433
4900
  }
4434
- }, q = {
4435
- break: /* @__PURE__ */ v("br", {}),
4436
- bold: (...e) => /* @__PURE__ */ v("strong", { children: e }),
4437
- italic: (...e) => /* @__PURE__ */ v("i", { children: e }),
4438
- primary: (...e) => /* @__PURE__ */ v("span", { style: { color: "var(--abyss-accent-text)" }, children: e }),
4439
- focus: (...e) => /* @__PURE__ */ v("span", { style: { color: "var(--abyss-status-warning)" }, children: e })
4440
- }, oe = () => {
4441
- const e = k(), u = M(
4442
- (s, d) => e.formatMessage(s, {
4443
- ...q,
4444
- ...d
4901
+ }, Ke = {
4902
+ break: /* @__PURE__ */ p("br", {}),
4903
+ bold: (...e) => /* @__PURE__ */ p("strong", { children: e }),
4904
+ italic: (...e) => /* @__PURE__ */ p("i", { children: e }),
4905
+ primary: (...e) => /* @__PURE__ */ p("span", { style: { color: "var(--abyss-accent-text)" }, children: e }),
4906
+ focus: (...e) => /* @__PURE__ */ p("span", { style: { color: "var(--abyss-status-warning)" }, children: e })
4907
+ }, Nt = () => {
4908
+ const e = B(), t = K(
4909
+ (o, i) => e.formatMessage(o, {
4910
+ ...Ke,
4911
+ ...i
4445
4912
  }),
4446
4913
  [e]
4447
4914
  );
4448
- return U(() => {
4449
- const { formatMessage: s, ...d } = e;
4450
- return { ...d, formatRichMessage: u };
4451
- }, [e, u]);
4452
- };
4915
+ return ie(() => {
4916
+ const { formatMessage: o, ...i } = e;
4917
+ return { ...i, formatRichMessage: t };
4918
+ }, [e, t]);
4919
+ }, Xe = /* @__PURE__ */ new Set(["a", "button"]), Je = f("div", {
4920
+ shouldForwardProp: (e) => e !== "ownerState" && e !== "theme" && e !== "sx" && e !== "as"
4921
+ })(({ theme: e, ownerState: t }) => {
4922
+ const { tokens: o, radii: i, space: a } = e.design;
4923
+ return {
4924
+ display: "flex",
4925
+ flexDirection: "column",
4926
+ minWidth: 0,
4927
+ boxSizing: "border-box",
4928
+ backgroundColor: o["bg.surface"],
4929
+ border: L(o["border.subtle"]),
4930
+ borderRadius: r(i.md),
4931
+ padding: r(a[t.padding]),
4932
+ color: o["text.primary"],
4933
+ ...t.interactive && {
4934
+ cursor: "pointer",
4935
+ font: "inherit",
4936
+ textAlign: "inherit",
4937
+ textDecoration: "none",
4938
+ transition: ye(e, ["border-color"]),
4939
+ "&:hover": { borderColor: o["border.strong"] },
4940
+ "&:focus-visible": fe(e)
4941
+ }
4942
+ };
4943
+ }), Ct = re(function({
4944
+ interactive: t = !1,
4945
+ padding: o = 4,
4946
+ component: i = "div",
4947
+ children: a,
4948
+ onKeyDown: n,
4949
+ role: y,
4950
+ tabIndex: A,
4951
+ ...E
4952
+ }, l) {
4953
+ const v = t && typeof i == "string" && !Xe.has(i), S = K(
4954
+ (u) => {
4955
+ typeof l == "function" ? l(u) : l !== null && (l.current = u);
4956
+ },
4957
+ [l]
4958
+ );
4959
+ return /* @__PURE__ */ p(
4960
+ Je,
4961
+ {
4962
+ ref: S,
4963
+ as: i,
4964
+ ownerState: { interactive: t, padding: o },
4965
+ role: y ?? (v ? "button" : void 0),
4966
+ tabIndex: A ?? (v ? 0 : void 0),
4967
+ onKeyDown: (u) => {
4968
+ n == null || n(u), v && !u.defaultPrevented && u.target === u.currentTarget && (u.key === "Enter" || u.key === " ") && (u.preventDefault(), u.currentTarget.click());
4969
+ },
4970
+ ...E,
4971
+ children: a
4972
+ }
4973
+ );
4974
+ });
4453
4975
  export {
4454
- q as R,
4455
- z as a,
4456
- ee as b,
4457
- Z as c,
4458
- Y as e,
4459
- te as f,
4460
- $ as g,
4461
- C as r,
4462
- L as t,
4463
- oe as u
4976
+ He as A,
4977
+ Oe as B,
4978
+ ze as C,
4979
+ T as D,
4980
+ oe as E,
4981
+ Ve as F,
4982
+ Ye as G,
4983
+ ct as H,
4984
+ ft as I,
4985
+ U as J,
4986
+ vt as K,
4987
+ St as M,
4988
+ Ke as R,
4989
+ Ct as S,
4990
+ pe as T,
4991
+ Q as a,
4992
+ _e as b,
4993
+ Ae as c,
4994
+ D as d,
4995
+ ye as e,
4996
+ Tt as f,
4997
+ fe as g,
4998
+ L as h,
4999
+ Ee as i,
5000
+ _ as j,
5001
+ be as k,
5002
+ ut as l,
5003
+ dt as m,
5004
+ pt as n,
5005
+ he as o,
5006
+ r as p,
5007
+ Et as q,
5008
+ mt as r,
5009
+ At as s,
5010
+ bt as t,
5011
+ Nt as u,
5012
+ yt as v,
5013
+ w,
5014
+ V as x,
5015
+ gt as y,
5016
+ ht as z
4464
5017
  };