@abyss-project/commons-front-core 1.0.146 → 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 (59) hide show
  1. package/dist/{CookieConsentSettings.component-OElkXdNK.js → CookieConsentSettings.component-Dqbo9N8Y.js} +350 -180
  2. package/dist/components/Inputs/ColorPalette/ColorPalette.component.d.ts +1 -0
  3. package/dist/components/Layouts/AbyssBillingPlan/AbyssBillingPlan.component.d.ts +1 -1
  4. package/dist/components/Modals/UserSettingsModal/UserSettings.compat.d.ts +0 -2
  5. package/dist/components/Modals/UserSettingsModal/UserSettingsModal.component.d.ts +0 -2
  6. package/dist/components/PdfEditor/hooks/use-pdf-document.d.ts +6 -1
  7. package/dist/components/PdfEditor/operations/actions.d.ts +15 -0
  8. package/dist/components/PdfEditor/operations/compute-page-order.d.ts +4 -0
  9. package/dist/components/PdfEditor/operations/extract.d.ts +2 -0
  10. package/dist/components/PdfEditor/operations/extract.spec.d.ts +1 -0
  11. package/dist/components/PdfEditor/operations/rasterize.d.ts +3 -0
  12. package/dist/components/PdfEditor/operations/redact.d.ts +9 -0
  13. package/dist/components/PdfEditor/operations/redact.spec.d.ts +1 -0
  14. package/dist/components/PdfEditor/operations/rotate-coords.d.ts +19 -0
  15. package/dist/components/PdfEditor/operations/rotate-coords.spec.d.ts +1 -0
  16. package/dist/components/PdfEditor/signature/SignaturePicker.d.ts +3 -0
  17. package/dist/components/PdfEditor/signature/SignatureSavedList.d.ts +3 -0
  18. package/dist/components/PdfEditor/signature/resolve-asset.d.ts +3 -0
  19. package/dist/components/PdfEditor/signature/resolve-asset.spec.d.ts +1 -0
  20. package/dist/components/PdfEditor/tools/FillFieldsTool.d.ts +2 -1
  21. package/dist/components/PdfEditor/tools/RedactTool.d.ts +2 -0
  22. package/dist/components/PdfEditor/tools/ShapeTool.d.ts +17 -0
  23. package/dist/components/PdfEditor/tools/SignatureTool.d.ts +3 -0
  24. package/dist/components/PdfEditor/tools/TextTool.d.ts +11 -1
  25. package/dist/components/PdfEditor/tools/Toolbar.d.ts +17 -0
  26. package/dist/components/PdfEditor/tools/tool-options-ui.d.ts +4 -0
  27. package/dist/components/PdfEditor/types.d.ts +64 -4
  28. package/dist/components/PdfEditor/viewer/PageOverlay.d.ts +10 -3
  29. package/dist/components/PdfEditor/viewer/PdfCanvas.d.ts +10 -2
  30. package/dist/components/PdfEditor/viewer/ViewerControls.d.ts +17 -0
  31. package/dist/components/Support/types.d.ts +2 -0
  32. package/dist/cookie-consent.js +1 -1
  33. package/dist/hooks/use-rich-intl.hook.d.ts +200 -22
  34. package/dist/{index-DPJn-INz.js → index--KPqynn_.js} +2 -2
  35. package/dist/{index-pojd1-xt.js → index-AykyIzzG.js} +3 -3
  36. package/dist/{index-VzGJqZUr.js → index-B3gKqf-p.js} +3 -3
  37. package/dist/{index-JqXrUnnS.js → index-BCVRYGLI.js} +4 -4
  38. package/dist/{index-CTzGCHT1.js → index-BcInTypv.js} +4 -4
  39. package/dist/{index-HPIAkAU-.js → index-BdWnB1rS.js} +2 -2
  40. package/dist/{index-paxe4Y8a.js → index-BiREoCYc.js} +2 -2
  41. package/dist/{index-DedcVRIy.js → index-CL4h9Xoy.js} +4 -4
  42. package/dist/{index-C4iVvX_c.js → index-CSpwXL74.js} +1 -1
  43. package/dist/{index-DAG2YmhY.js → index-CTVUhat-.js} +2 -2
  44. package/dist/{index-0DKoS1Ho.js → index-Ca_vS7os.js} +2 -2
  45. package/dist/{index-CCaYRiXR.js → index-Cil-O_44.js} +2 -2
  46. package/dist/{index-CeZ2OKqT.js → index-CoY-Eqah.js} +2 -2
  47. package/dist/{index-DMJCOIN6.js → index-DON7Q_3s.js} +2 -2
  48. package/dist/{index-aJDianQ2.js → index-DZG8q-Mp.js} +3 -3
  49. package/dist/{index-C-0bb3BS.js → index-Db-3tPxk.js} +2 -2
  50. package/dist/{index-D-prSy8i.js → index-Df71mOHZ.js} +3 -3
  51. package/dist/{index-D-Z-Yepf.js → index-DpUTQu7B.js} +2 -2
  52. package/dist/{index-C_VHuOIZ.js → index-QwHRQNwT.js} +2 -2
  53. package/dist/{index-DP9EENt-.js → index-VEVfBSFw.js} +2 -2
  54. package/dist/{index-CWQyokns.js → index-a9_oOlg4.js} +34972 -32579
  55. package/dist/{index-BStJ2eR5.js → index-ldQTy6Xb.js} +2 -2
  56. package/dist/index.js +2 -2
  57. package/dist/translations/en.d.ts +96 -11
  58. package/dist/translations/fr.d.ts +96 -11
  59. package/package.json +143 -139
@@ -1,6 +1,6 @@
1
- import { jsx as i, jsxs as A, Fragment as $ } from "react/jsx-runtime";
2
- import { useCallback as f, useMemo as x, useState as R, useEffect as z, createContext as Q, useContext as ee } from "react";
3
- import { Paper as te, Stack as P, Box as N, Typography as m, Button as C, Dialog as oe, DialogTitle as ie, DialogContent as re, FormControlLabel as b, Checkbox as _, DialogActions as ne, Card as se, CardContent as ae } from "@mui/material";
1
+ import { jsx as i, jsxs as g, Fragment as $ } from "react/jsx-runtime";
2
+ import { useCallback as N, useMemo as x, useState as b, useEffect as z, createContext as Q, useContext as ee } from "react";
3
+ import { Paper as te, Stack as D, Box as I, Typography as m, Button as O, Dialog as oe, DialogTitle as ie, DialogContent as re, FormControlLabel as R, Checkbox as v, DialogActions as ae, Card as se, CardContent as ne } from "@mui/material";
4
4
  import { useIntl as le } from "react-intl";
5
5
  import { UserLanguage as y, enTranslation as ce, frTranslation as de, AbyssCore as k } from "@abyss-project/main";
6
6
  import { useQuery as ue, useMutation as pe } from "@tanstack/react-query";
@@ -31,7 +31,7 @@ const q = {
31
31
  850: "#1C1C1E",
32
32
  900: "#18181B",
33
33
  950: "#09090B"
34
- }, Ae = {
34
+ }, ge = {
35
35
  50: "#ECFEFF",
36
36
  100: "#CFFAFE",
37
37
  200: "#A5F3FC",
@@ -54,7 +54,7 @@ const q = {
54
54
  700: "#B45309",
55
55
  800: "#92400E",
56
56
  900: "#78350F"
57
- }, ge = {
57
+ }, Ae = {
58
58
  50: "#FEF2F2",
59
59
  100: "#FEE2E2",
60
60
  200: "#FECACA",
@@ -87,14 +87,14 @@ const q = {
87
87
  700: "#7C3AED",
88
88
  800: "#6B21A8",
89
89
  900: "#581C87"
90
- }, Te = {
90
+ }, he = {
91
91
  discord: "#5865F2",
92
92
  discordHover: "#4752C4",
93
93
  google: "#4285F4",
94
94
  googleHover: "#3367D6",
95
95
  slack: "#4A154B",
96
96
  slackHover: "#3B1139"
97
- }, he = {
97
+ }, Te = {
98
98
  yellow: "#E1A624",
99
99
  blue: "#317AC1",
100
100
  grey: "#384454",
@@ -125,7 +125,7 @@ const q = {
125
125
  // yellow
126
126
  "#C084FC"
127
127
  // purple
128
- ], G = [
128
+ ], F = [
129
129
  ...M,
130
130
  "#E879F9",
131
131
  // fuchsia
@@ -143,7 +143,7 @@ const q = {
143
143
  // cyan light
144
144
  "#F9A8D4"
145
145
  // pink light
146
- ], Ie = [
146
+ ], fe = [
147
147
  "#6366f1",
148
148
  // indigo
149
149
  "#8b5cf6",
@@ -176,23 +176,23 @@ const q = {
176
176
  // sky
177
177
  "#3b82f6"
178
178
  // blue
179
- ], Ne = (e) => M[e % M.length], Oe = (e) => G[e % G.length], qe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
179
+ ], Ie = (e) => M[e % M.length], Ce = (e) => F[e % F.length], qe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
180
180
  __proto__: null,
181
181
  amber: W,
182
- chipColors: he,
182
+ chipColors: Te,
183
183
  colorPool: M,
184
- colorPoolExtended: G,
185
- cyan: Ae,
186
- getPoolColor: Ne,
187
- getPoolColorExtended: Oe,
184
+ colorPoolExtended: F,
185
+ cyan: ge,
186
+ getPoolColor: Ie,
187
+ getPoolColorExtended: Ce,
188
188
  green: Ee,
189
189
  indigo: q,
190
190
  neutral: me,
191
191
  purple: Se,
192
- red: ge,
193
- social: Te,
194
- tagColorPool: Ie
195
- }, Symbol.toStringTag, { value: "Module" })), fe = {
192
+ red: Ae,
193
+ social: he,
194
+ tagColorPool: fe
195
+ }, Symbol.toStringTag, { value: "Module" })), Ne = {
196
196
  "space-display-name": {
197
197
  personal: "Mon Cloud",
198
198
  "perso-in-org": "Mon Cloud (dans org)",
@@ -212,24 +212,43 @@ const q = {
212
212
  select: "Sélection",
213
213
  text: "Ajouter du texte",
214
214
  draw: "Dessiner",
215
+ shape: "Formes",
216
+ highlight: "Surligner",
217
+ redact: "Caviarder",
215
218
  signature: "Signature",
216
219
  eraser: "Gomme",
217
220
  "fill-fields": "Remplir les champs",
221
+ insert: "Insérer",
218
222
  undo: "Annuler",
219
223
  redo: "Rétablir",
220
224
  download: "Télécharger",
221
225
  "save-to-cloud": "Enregistrer sur AbyssCloud",
222
- "quick-sigs": "Signatures enregistrées",
223
- "quick-texts": "Blocs de texte"
226
+ "toggle-pages": "Afficher/masquer les pages",
227
+ document: "Actions document",
228
+ aria: {
229
+ tools: "Outils d’édition",
230
+ history: "Annuler et rétablir"
231
+ }
224
232
  },
225
233
  sidebar: {
226
234
  pages: "Pages ({count})"
227
235
  },
236
+ viewer: {
237
+ "zoom-in": "Zoom avant",
238
+ "zoom-out": "Zoom arrière",
239
+ "fit-width": "Ajuster à la largeur",
240
+ "reset-zoom": "Réinitialiser le zoom",
241
+ "prev-page": "Page précédente",
242
+ "next-page": "Page suivante",
243
+ "page-indicator": "Page {current} sur {total}"
244
+ },
228
245
  insert: {
246
+ "image-device": "Image depuis l’appareil",
247
+ "image-cloud": "Image depuis AbyssCloud",
248
+ "saved-title": "Mes éléments enregistrés",
249
+ personal: "Personnel",
229
250
  button: "Insérer des pages",
230
251
  reading: "Lecture du PDF…",
231
- "from-file": "Depuis un fichier",
232
- "from-cloud": "Depuis AbyssCloud",
233
252
  "only-pdf": "Seuls les fichiers PDF peuvent être insérés."
234
253
  },
235
254
  "insert-dialog": {
@@ -241,28 +260,80 @@ const q = {
241
260
  confirm: "{count, plural, one {Insérer # page} other {Insérer # pages}}"
242
261
  },
243
262
  action: {
263
+ cancel: "Annuler",
264
+ delete: "Supprimer"
265
+ },
266
+ placement: {
267
+ hint: "Cliquez sur la page pour placer.",
244
268
  cancel: "Annuler"
245
269
  },
246
270
  error: {
247
271
  "load-failed": "Impossible de charger le PDF : {message}",
248
- "export-failed": "Échec de l'export : {message}"
249
- },
272
+ "export-failed": "Échec de l'export : {message}",
273
+ "try-another": "Essayer un autre fichier"
274
+ },
275
+ document: {
276
+ "blank-page": "Ajouter une page blanche",
277
+ "page-numbers": "Ajouter les numéros de page",
278
+ watermark: "Ajouter un filigrane",
279
+ extract: "Extraire / scinder des pages",
280
+ compress: "Compresser / optimiser",
281
+ protect: "Protéger par mot de passe"
282
+ },
283
+ password: {
284
+ title: "Protéger par un mot de passe",
285
+ help: "Le PDF téléchargé sera chiffré. Ce mot de passe sera requis pour l’ouvrir.",
286
+ label: "Mot de passe",
287
+ confirm: "Protéger et télécharger"
288
+ },
289
+ compress: {
290
+ saved: "Compressé : {pct}% plus léger.",
291
+ "already-optimal": "Déjà optimal, taille d’origine conservée."
292
+ },
293
+ unlock: {
294
+ title: "Ce PDF est protégé par un mot de passe",
295
+ help: "Saisissez le mot de passe pour l’ouvrir et le modifier. La copie téléchargée ne sera plus protégée, sauf si vous la protégez à nouveau.",
296
+ confirm: "Déverrouiller",
297
+ wrong: "Mot de passe incorrect. Réessayez."
298
+ },
299
+ watermark: {
300
+ title: "Ajouter un filigrane",
301
+ label: "Texte du filigrane",
302
+ apply: "Appliquer à toutes les pages"
303
+ },
304
+ extract: {
305
+ title: "Extraire des pages vers un nouveau PDF",
306
+ confirm: "{count, plural, one {Extraire # page} other {Extraire # pages}}"
307
+ },
308
+ loading: "Chargement de votre PDF…",
250
309
  text: {
251
- hint: "Cliquez n'importe où sur la page pour ajouter du texte. Entrée ou clic en dehors pour valider. Double-clic pour modifier, glisser pour déplacer."
310
+ "hint-short": "Cliquez sur la page pour ajouter du texte.",
311
+ placeholder: "Saisir…",
312
+ size: "Taille",
313
+ font: "Police"
252
314
  },
253
315
  draw: {
254
- hint: "Cliquez et glissez sur la page pour dessiner.",
255
- "stroke-width": "Épaisseur : {width}px",
256
316
  color: "Couleur",
257
317
  width: "Trait",
258
318
  "custom-color": "Couleur personnalisée"
259
319
  },
320
+ shape: {
321
+ kind: "Forme",
322
+ fill: "Remplissage",
323
+ "fill-none": "Aucun",
324
+ "fill-on": "Rempli"
325
+ },
326
+ redact: {
327
+ hint: "Glissez sur ce que vous voulez masquer définitivement.",
328
+ warning: "Rastérise la page, supprime sa couche de texte"
329
+ },
260
330
  signature: {
261
331
  "placement-hint": "Cliquez sur la page pour placer votre signature.",
262
332
  "add-hint": "Ajoutez une signature, puis cliquez sur la page pour la placer.",
263
333
  "add-button": "Ajouter une signature",
264
334
  "apply-all-pages": "Appliquer sur toutes les pages",
265
335
  "manage-assets": "Gérer mes assets",
336
+ "asset-load-failed": "Impossible de charger cet asset. Veuillez réessayer.",
266
337
  clear: "Effacer",
267
338
  "picker-title": "Ajouter votre signature",
268
339
  tabs: {
@@ -285,8 +356,7 @@ const q = {
285
356
  saved: {
286
357
  "scope-label": "Espace",
287
358
  scope: {
288
- personal: "Mon espace",
289
- organization: "Organisation"
359
+ personal: "Mon espace"
290
360
  },
291
361
  group: {
292
362
  personal: "Personnel",
@@ -303,13 +373,11 @@ const q = {
303
373
  empty: "Aucun asset enregistré pour ce scope."
304
374
  },
305
375
  upload: {
306
- hint: "Déposez une image PNG ou JPEG ici, ou cliquez pour parcourir.",
307
376
  title: "Déposez votre signature ici",
308
377
  browse: "ou cliquez pour parcourir",
309
378
  replace: "Remplacer l'image",
310
379
  reading: "Lecture de l'image…",
311
- cancel: "Annuler",
312
- "max-size": "Max 2 Mo",
380
+ "max-size": "Max 2 Mo · PNG, JPEG",
313
381
  error: {
314
382
  "invalid-type": "Seules les images PNG ou JPEG sont supportées.",
315
383
  "too-large": "L'image ne doit pas dépasser 2 Mo.",
@@ -326,7 +394,9 @@ const q = {
326
394
  },
327
395
  "fill-fields": {
328
396
  empty: "Aucun champ remplissable détecté dans ce PDF.",
329
- detected: "{count, plural, one {# champ remplissable détecté.} other {# champs remplissables détectés.}}"
397
+ detected: "{count, plural, one {# champ remplissable détecté.} other {# champs remplissables détectés.}}",
398
+ flatten: "Aplatir les champs à l’export",
399
+ "flatten-hint": "Fige les valeurs et rend le formulaire non modifiable."
330
400
  },
331
401
  page: {
332
402
  inserted: "Page insérée",
@@ -334,7 +404,7 @@ const q = {
334
404
  delete: "Supprimer la page",
335
405
  "confirm-delete": {
336
406
  title: "Supprimer cette page ?",
337
- description: "Cette action ne peut pas être annulée — mais vous pouvez la défaire depuis la barre d'outils.",
407
+ description: "Cette action est définitive, mais vous pouvez la défaire depuis la barre d'outils.",
338
408
  confirm: "Supprimer"
339
409
  }
340
410
  }
@@ -943,6 +1013,7 @@ const q = {
943
1013
  },
944
1014
  billing: {
945
1015
  "current-plan": "Plan actuel",
1016
+ "free-plan": "Gratuit",
946
1017
  tier: {
947
1018
  FREEMIUM: "Gratuit",
948
1019
  DEFAULT: "Standard",
@@ -1021,6 +1092,14 @@ const q = {
1021
1092
  internal: {
1022
1093
  name: "Internal",
1023
1094
  description: "Usage interne Abyss"
1095
+ },
1096
+ "family-free": {
1097
+ name: "Famille",
1098
+ description: "Jusqu'à 6 membres, espaces partagés"
1099
+ },
1100
+ "family-paid": {
1101
+ name: "Famille+",
1102
+ description: "Jusqu'à 12 membres + bonus sur vos quotas perso"
1024
1103
  }
1025
1104
  },
1026
1105
  "plan-feature": {
@@ -1043,14 +1122,15 @@ const q = {
1043
1122
  banner: {
1044
1123
  "no-family": "Pas encore de famille",
1045
1124
  "no-family-cta": "Créer une famille",
1125
+ "no-family-sub": "Souvenirs, fichiers & quotas partagés",
1046
1126
  pending: "Invitation en attente",
1047
- active: "Famille active",
1048
1127
  manage: "Gérer",
1049
1128
  "owner-badge": "Propriétaire",
1050
1129
  // reserved: Banking family — used by host banner
1051
1130
  "coming-soon": "Banking famille — bientôt disponible",
1052
1131
  settings: {
1053
- "no-family-description": "Rejoignez ou créez un espace famille pour partager vos finances avec vos proches.",
1132
+ "no-family-description": "Créez un espace partagé avec vos proches souvenirs, fichiers, tableaux et plus.",
1133
+ "join-hint": "Pour rejoindre une famille existante, vous devez être invité par un de ses membres : demandez-lui de vous envoyer une invitation.",
1054
1134
  "pending-description": "Vous avez reçu une invitation. Connectez-vous à Abyss pour l'accepter ou la refuser.",
1055
1135
  "active-description": "Vous êtes membre de cet espace famille.",
1056
1136
  "owner-description": "Vous gérez cet espace famille."
@@ -1246,9 +1326,14 @@ const q = {
1246
1326
  ABYSS_CONSOLE: "Abyss Console",
1247
1327
  ABYSS_GAME_ODYSSEY: "Abyss Game Odyssey",
1248
1328
  ABYSS_TOOLS: "Abyss Tools"
1329
+ },
1330
+ context: {
1331
+ extraction: {
1332
+ view: "Voir l'extraction"
1333
+ }
1249
1334
  }
1250
1335
  }
1251
- }, Ce = {
1336
+ }, Oe = {
1252
1337
  "space-display-name": {
1253
1338
  personal: "My Cloud",
1254
1339
  "perso-in-org": "My Cloud (in org)",
@@ -1268,24 +1353,43 @@ const q = {
1268
1353
  select: "Select",
1269
1354
  text: "Add text",
1270
1355
  draw: "Draw",
1356
+ shape: "Shapes",
1357
+ highlight: "Highlight",
1358
+ redact: "Redact",
1271
1359
  signature: "Signature",
1272
1360
  eraser: "Eraser",
1273
1361
  "fill-fields": "Fill fields",
1362
+ insert: "Insert",
1274
1363
  undo: "Undo",
1275
1364
  redo: "Redo",
1276
1365
  download: "Download",
1277
1366
  "save-to-cloud": "Save to AbyssCloud",
1278
- "quick-sigs": "Saved signatures",
1279
- "quick-texts": "Text blocks"
1367
+ "toggle-pages": "Toggle pages panel",
1368
+ document: "Document actions",
1369
+ aria: {
1370
+ tools: "Editing tools",
1371
+ history: "Undo and redo"
1372
+ }
1280
1373
  },
1281
1374
  sidebar: {
1282
1375
  pages: "Pages ({count})"
1283
1376
  },
1377
+ viewer: {
1378
+ "zoom-in": "Zoom in",
1379
+ "zoom-out": "Zoom out",
1380
+ "fit-width": "Fit width",
1381
+ "reset-zoom": "Reset zoom",
1382
+ "prev-page": "Previous page",
1383
+ "next-page": "Next page",
1384
+ "page-indicator": "Page {current} of {total}"
1385
+ },
1284
1386
  insert: {
1387
+ "image-device": "Image from device",
1388
+ "image-cloud": "Image from AbyssCloud",
1389
+ "saved-title": "Your saved items",
1390
+ personal: "Personal",
1285
1391
  button: "Insert pages",
1286
1392
  reading: "Reading PDF…",
1287
- "from-file": "From file",
1288
- "from-cloud": "From AbyssCloud",
1289
1393
  "only-pdf": "Only PDF files can be inserted."
1290
1394
  },
1291
1395
  "insert-dialog": {
@@ -1297,28 +1401,80 @@ const q = {
1297
1401
  confirm: "{count, plural, one {Insert # page} other {Insert # pages}}"
1298
1402
  },
1299
1403
  action: {
1404
+ cancel: "Cancel",
1405
+ delete: "Delete"
1406
+ },
1407
+ placement: {
1408
+ hint: "Click the page to place.",
1300
1409
  cancel: "Cancel"
1301
1410
  },
1302
1411
  error: {
1303
1412
  "load-failed": "Failed to load PDF: {message}",
1304
- "export-failed": "Export failed: {message}"
1305
- },
1413
+ "export-failed": "Export failed: {message}",
1414
+ "try-another": "Try another file"
1415
+ },
1416
+ document: {
1417
+ "blank-page": "Add blank page",
1418
+ "page-numbers": "Add page numbers",
1419
+ watermark: "Add watermark",
1420
+ extract: "Extract / split pages",
1421
+ compress: "Compress / optimize",
1422
+ protect: "Protect with password"
1423
+ },
1424
+ password: {
1425
+ title: "Protect with a password",
1426
+ help: "The downloaded PDF will be encrypted. Anyone opening it will need this password.",
1427
+ label: "Password",
1428
+ confirm: "Protect & download"
1429
+ },
1430
+ compress: {
1431
+ saved: "Compressed: {pct}% smaller.",
1432
+ "already-optimal": "Already optimal, kept the original size."
1433
+ },
1434
+ unlock: {
1435
+ title: "This PDF is password-protected",
1436
+ help: "Enter the password to open and edit it. The downloaded copy will no longer be protected unless you re-protect it.",
1437
+ confirm: "Unlock",
1438
+ wrong: "Wrong password. Please try again."
1439
+ },
1440
+ watermark: {
1441
+ title: "Add a watermark",
1442
+ label: "Watermark text",
1443
+ apply: "Apply to all pages"
1444
+ },
1445
+ extract: {
1446
+ title: "Extract pages to a new PDF",
1447
+ confirm: "{count, plural, one {Extract # page} other {Extract # pages}}"
1448
+ },
1449
+ loading: "Loading your PDF…",
1306
1450
  text: {
1307
- hint: "Click anywhere on the page to add text. Press Enter or click outside to confirm. Double-click to edit, drag to move."
1451
+ "hint-short": "Click the page to add text.",
1452
+ placeholder: "Type…",
1453
+ size: "Size",
1454
+ font: "Font"
1308
1455
  },
1309
1456
  draw: {
1310
- hint: "Click and drag on the page to draw.",
1311
- "stroke-width": "Stroke width: {width}px",
1312
1457
  color: "Color",
1313
1458
  width: "Width",
1314
1459
  "custom-color": "Custom color"
1315
1460
  },
1461
+ shape: {
1462
+ kind: "Shape",
1463
+ fill: "Fill",
1464
+ "fill-none": "None",
1465
+ "fill-on": "Filled"
1466
+ },
1467
+ redact: {
1468
+ hint: "Drag over anything you want to permanently black out.",
1469
+ warning: "Rasterizes the page, removes its text layer"
1470
+ },
1316
1471
  signature: {
1317
1472
  "placement-hint": "Click on the page to place your signature.",
1318
1473
  "add-hint": "Add a signature, then click on the page to place it.",
1319
1474
  "add-button": "Add a signature",
1320
1475
  "apply-all-pages": "Apply to every page",
1321
1476
  "manage-assets": "Manage my assets",
1477
+ "asset-load-failed": "Could not load this asset. Please try again.",
1322
1478
  clear: "Clear",
1323
1479
  "picker-title": "Add your signature",
1324
1480
  tabs: {
@@ -1341,8 +1497,7 @@ const q = {
1341
1497
  saved: {
1342
1498
  "scope-label": "Scope",
1343
1499
  scope: {
1344
- personal: "My space",
1345
- organization: "Organization"
1500
+ personal: "My space"
1346
1501
  },
1347
1502
  group: {
1348
1503
  personal: "Personal",
@@ -1359,13 +1514,11 @@ const q = {
1359
1514
  empty: "No saved assets for this scope yet."
1360
1515
  },
1361
1516
  upload: {
1362
- hint: "Drop a PNG or JPEG signature here, or click to browse.",
1363
1517
  title: "Drop your signature image here",
1364
1518
  browse: "or click to browse",
1365
1519
  replace: "Replace image",
1366
1520
  reading: "Reading image…",
1367
- cancel: "Cancel",
1368
- "max-size": "Max 2 MB",
1521
+ "max-size": "Max 2 MB · PNG, JPEG",
1369
1522
  error: {
1370
1523
  "invalid-type": "Only PNG or JPEG images are supported.",
1371
1524
  "too-large": "Image must be 2 MB or smaller.",
@@ -1382,7 +1535,9 @@ const q = {
1382
1535
  },
1383
1536
  "fill-fields": {
1384
1537
  empty: "No fillable fields detected in this PDF.",
1385
- detected: "{count, plural, one {# fillable field detected.} other {# fillable fields detected.}}"
1538
+ detected: "{count, plural, one {# fillable field detected.} other {# fillable fields detected.}}",
1539
+ flatten: "Flatten fields on export",
1540
+ "flatten-hint": "Bakes the values in and makes the form read-only."
1386
1541
  },
1387
1542
  page: {
1388
1543
  inserted: "Inserted page",
@@ -1390,7 +1545,7 @@ const q = {
1390
1545
  delete: "Delete page",
1391
1546
  "confirm-delete": {
1392
1547
  title: "Delete this page?",
1393
- description: "This action cannot be undone — but you can undo it from the toolbar.",
1548
+ description: "This action is permanent, but you can undo it from the toolbar.",
1394
1549
  confirm: "Delete"
1395
1550
  }
1396
1551
  }
@@ -1999,6 +2154,7 @@ const q = {
1999
2154
  },
2000
2155
  billing: {
2001
2156
  "current-plan": "Current plan",
2157
+ "free-plan": "Free",
2002
2158
  tier: {
2003
2159
  FREEMIUM: "Free",
2004
2160
  DEFAULT: "Standard",
@@ -2077,6 +2233,14 @@ const q = {
2077
2233
  internal: {
2078
2234
  name: "Internal",
2079
2235
  description: "Abyss internal use"
2236
+ },
2237
+ "family-free": {
2238
+ name: "Family",
2239
+ description: "Up to 6 members, shared spaces"
2240
+ },
2241
+ "family-paid": {
2242
+ name: "Family+",
2243
+ description: "Up to 12 members + a bonus on your personal quotas"
2080
2244
  }
2081
2245
  },
2082
2246
  "plan-feature": {
@@ -2284,20 +2448,26 @@ const q = {
2284
2448
  ABYSS_CONSOLE: "Abyss Console",
2285
2449
  ABYSS_GAME_ODYSSEY: "Abyss Game Odyssey",
2286
2450
  ABYSS_TOOLS: "Abyss Tools"
2451
+ },
2452
+ context: {
2453
+ extraction: {
2454
+ view: "View extraction"
2455
+ }
2287
2456
  }
2288
2457
  },
2289
2458
  family: {
2290
2459
  banner: {
2291
2460
  "no-family": "No family yet",
2292
2461
  "no-family-cta": "Create a family",
2462
+ "no-family-sub": "Shared memories, files & quotas",
2293
2463
  pending: "Invitation pending",
2294
- active: "Family active",
2295
2464
  manage: "Manage",
2296
2465
  "owner-badge": "Owner",
2297
2466
  // reserved: Banking family — used by host banner
2298
2467
  "coming-soon": "Family Banking — coming soon",
2299
2468
  settings: {
2300
- "no-family-description": "Join or create a family space to manage your finances together.",
2469
+ "no-family-description": "Create a shared space with your loved ones — memories, files, boards and more.",
2470
+ "join-hint": "To join an existing family, a member must invite you: ask them to send you an invitation.",
2301
2471
  "pending-description": "You have a pending invitation. Sign in to Abyss to accept or decline it.",
2302
2472
  "active-description": "You are a member of this family space.",
2303
2473
  "owner-description": "You are managing this family space."
@@ -2315,34 +2485,34 @@ function ye() {
2315
2485
  function t(r) {
2316
2486
  return r;
2317
2487
  }
2318
- function o(r, n) {
2319
- n = n || {};
2320
- const u = n.delimiter || ".", p = n.maxDepth, g = n.transformKey || t, I = {};
2321
- function a(T, O, h) {
2322
- h = h || 1, Object.keys(T).forEach(function(c) {
2323
- const l = T[c], d = n.safe && Array.isArray(l), E = Object.prototype.toString.call(l), S = e(l), D = E === "[object Object]" || E === "[object Array]", v = O ? O + u + g(c) : g(c);
2324
- if (!d && !S && D && Object.keys(l).length && (!n.maxDepth || h < p))
2325
- return a(l, v, h + 1);
2326
- I[v] = l;
2488
+ function o(r, a) {
2489
+ a = a || {};
2490
+ const u = a.delimiter || ".", p = a.maxDepth, A = a.transformKey || t, f = {};
2491
+ function n(h, C, T) {
2492
+ T = T || 1, Object.keys(h).forEach(function(c) {
2493
+ const l = h[c], d = a.safe && Array.isArray(l), E = Object.prototype.toString.call(l), S = e(l), P = E === "[object Object]" || E === "[object Array]", _ = C ? C + u + A(c) : A(c);
2494
+ if (!d && !S && P && Object.keys(l).length && (!a.maxDepth || T < p))
2495
+ return n(l, _, T + 1);
2496
+ f[_] = l;
2327
2497
  });
2328
2498
  }
2329
- return a(r), I;
2499
+ return n(r), f;
2330
2500
  }
2331
- function s(r, n) {
2332
- n = n || {};
2333
- const u = n.delimiter || ".", p = n.overwrite || !1, g = n.transformKey || t, I = {};
2501
+ function s(r, a) {
2502
+ a = a || {};
2503
+ const u = a.delimiter || ".", p = a.overwrite || !1, A = a.transformKey || t, f = {};
2334
2504
  if (e(r) || Object.prototype.toString.call(r) !== "[object Object]")
2335
2505
  return r;
2336
- function T(c) {
2506
+ function h(c) {
2337
2507
  const l = Number(c);
2338
- return isNaN(l) || c.indexOf(".") !== -1 || n.object ? c : l;
2508
+ return isNaN(l) || c.indexOf(".") !== -1 || a.object ? c : l;
2339
2509
  }
2340
- function O(c, l, d) {
2510
+ function C(c, l, d) {
2341
2511
  return Object.keys(d).reduce(function(E, S) {
2342
2512
  return E[c + u + S] = d[S], E;
2343
2513
  }, l);
2344
2514
  }
2345
- function h(c) {
2515
+ function T(c) {
2346
2516
  const l = Object.prototype.toString.call(c), d = l === "[object Array]", E = l === "[object Object]";
2347
2517
  if (c) {
2348
2518
  if (d)
@@ -2353,53 +2523,53 @@ function ye() {
2353
2523
  }
2354
2524
  return r = Object.keys(r).reduce(function(c, l) {
2355
2525
  const d = Object.prototype.toString.call(r[l]);
2356
- return !(d === "[object Object]" || d === "[object Array]") || h(r[l]) ? (c[l] = r[l], c) : O(
2526
+ return !(d === "[object Object]" || d === "[object Array]") || T(r[l]) ? (c[l] = r[l], c) : C(
2357
2527
  l,
2358
2528
  c,
2359
- o(r[l], n)
2529
+ o(r[l], a)
2360
2530
  );
2361
2531
  }, {}), Object.keys(r).forEach(function(c) {
2362
- const l = c.split(u).map(g);
2363
- let d = T(l.shift()), E = T(l[0]), S = I;
2532
+ const l = c.split(u).map(A);
2533
+ let d = h(l.shift()), E = h(l[0]), S = f;
2364
2534
  for (; E !== void 0; ) {
2365
2535
  if (d === "__proto__")
2366
2536
  return;
2367
- const D = Object.prototype.toString.call(S[d]), v = D === "[object Object]" || D === "[object Array]";
2368
- if (!p && !v && typeof S[d] < "u")
2537
+ const P = Object.prototype.toString.call(S[d]), _ = P === "[object Object]" || P === "[object Array]";
2538
+ if (!p && !_ && typeof S[d] < "u")
2369
2539
  return;
2370
- (p && !v || !p && S[d] == null) && (S[d] = typeof E == "number" && !n.object ? [] : {}), S = S[d], l.length > 0 && (d = T(l.shift()), E = T(l[0]));
2540
+ (p && !_ || !p && S[d] == null) && (S[d] = typeof E == "number" && !a.object ? [] : {}), S = S[d], l.length > 0 && (d = h(l.shift()), E = h(l[0]));
2371
2541
  }
2372
- S[d] = s(r[c], n);
2373
- }), I;
2542
+ S[d] = s(r[c], a);
2543
+ }), f;
2374
2544
  }
2375
2545
  return U;
2376
2546
  }
2377
2547
  var w = ye();
2378
2548
  const j = {
2379
- [y.FRENCH]: { ...fe, common: de },
2380
- [y.ENGLISH]: { ...Ce, common: ce }
2549
+ [y.FRENCH]: { ...Ne, common: de },
2550
+ [y.ENGLISH]: { ...Oe, common: ce }
2381
2551
  }, We = {
2382
2552
  [y.FRENCH]: w.flatten(j[y.FRENCH]),
2383
2553
  [y.ENGLISH]: w.flatten(j[y.ENGLISH])
2384
- }, Re = {
2554
+ }, be = {
2385
2555
  break: /* @__PURE__ */ i("br", {}),
2386
2556
  bold: (...e) => /* @__PURE__ */ i("strong", { children: e }),
2387
2557
  italic: (...e) => /* @__PURE__ */ i("i", { children: e }),
2388
2558
  primary: (...e) => /* @__PURE__ */ i("span", { style: { color: q[500] }, children: e }),
2389
2559
  focus: (...e) => /* @__PURE__ */ i("span", { style: { color: W[400] }, children: e })
2390
2560
  }, K = () => {
2391
- const e = le(), t = f(
2392
- (o, s) => e.formatMessage(o, { ...Re, ...s }),
2561
+ const e = le(), t = N(
2562
+ (o, s) => e.formatMessage(o, { ...be, ...s }),
2393
2563
  [e]
2394
2564
  );
2395
2565
  return x(() => {
2396
2566
  const { formatMessage: o, ...s } = e;
2397
2567
  return { ...s, formatRichMessage: t };
2398
2568
  }, [e, t]);
2399
- }, L = "abyssCookieConsent", J = 365, be = J * 24 * 60 * 60, _e = () => typeof window > "u" ? !1 : window.location.protocol === "https:", X = (e, t) => {
2569
+ }, L = "abyssCookieConsent", J = 365, Re = J * 24 * 60 * 60, ve = () => typeof window > "u" ? !1 : window.location.protocol === "https:", X = (e, t) => {
2400
2570
  const o = ["Path=/", `Max-Age=${t}`, "SameSite=Lax"];
2401
- return e.domain && o.push(`Domain=${e.domain}`), _e() && o.push("Secure"), o.join("; ");
2402
- }, ve = () => {
2571
+ return e.domain && o.push(`Domain=${e.domain}`), ve() && o.push("Secure"), o.join("; ");
2572
+ }, _e = () => {
2403
2573
  if (typeof document > "u")
2404
2574
  return null;
2405
2575
  const e = document.cookie.split(";").map((o) => o.trim()).find((o) => o.startsWith(`${L}=`));
@@ -2416,35 +2586,35 @@ const j = {
2416
2586
  if (typeof document > "u")
2417
2587
  return;
2418
2588
  const o = btoa(JSON.stringify(e));
2419
- document.cookie = `${L}=${o}; ${X(t, be)}`;
2420
- }, De = (e = {}) => {
2589
+ document.cookie = `${L}=${o}; ${X(t, Re)}`;
2590
+ }, Pe = (e = {}) => {
2421
2591
  typeof document > "u" || (document.cookie = `${L}=; ${X(e, 0)}`);
2422
2592
  };
2423
- var F = /* @__PURE__ */ ((e) => (e.NOOP = "noop", e.ADOPT_DB = "adopt-db", e.PUSH_COOKIE = "push-cookie", e))(F || {});
2424
- const Y = (e) => ({
2593
+ var G = /* @__PURE__ */ ((e) => (e.NOOP = "noop", e.ADOPT_DB = "adopt-db", e.PUSH_COOKIE = "push-cookie", e))(G || {});
2594
+ const V = (e) => ({
2425
2595
  essentials: !0,
2426
2596
  analytics: e.analytics,
2427
2597
  marketing: e.marketing,
2428
2598
  decidedAt: typeof e.decidedAt == "string" ? e.decidedAt : new Date(e.decidedAt).toISOString(),
2429
2599
  consentVersion: e.consentVersion
2430
- }), Pe = (e, t) => {
2600
+ }), De = (e, t) => {
2431
2601
  if (!e && !t)
2432
2602
  return { action: "noop", value: null };
2433
2603
  if (!e && t)
2434
- return { action: "adopt-db", value: Y(t) };
2604
+ return { action: "adopt-db", value: V(t) };
2435
2605
  if (e && !t)
2436
2606
  return { action: "push-cookie", value: e };
2437
2607
  const o = new Date(e.decidedAt).getTime(), s = new Date(
2438
2608
  typeof t.decidedAt == "string" ? t.decidedAt : t.decidedAt.toISOString()
2439
2609
  ).getTime();
2440
- return s > o ? { action: "adopt-db", value: Y(t) } : o > s ? { action: "push-cookie", value: e } : { action: "noop", value: e };
2610
+ return s > o ? { action: "adopt-db", value: V(t) } : o > s ? { action: "push-cookie", value: e } : { action: "noop", value: e };
2441
2611
  }, Me = J * 24 * 60 * 60 * 1e3, Le = (e) => ({
2442
2612
  essentials: !0,
2443
2613
  analytics: e.a,
2444
2614
  marketing: e.m,
2445
2615
  decidedAt: e.d,
2446
2616
  consentVersion: e.v
2447
- }), V = (e) => ({
2617
+ }), Y = (e) => ({
2448
2618
  a: e.analytics,
2449
2619
  m: e.marketing,
2450
2620
  d: e.decidedAt,
@@ -2454,71 +2624,71 @@ const Y = (e) => ({
2454
2624
  return !1;
2455
2625
  const s = new Date(e).getTime();
2456
2626
  return Number.isNaN(s) ? !1 : Date.now() - s < Me;
2457
- }, Ge = (e) => {
2458
- const t = ve();
2459
- return !t || !Ue(t.d, e, t) ? null : Le(t);
2460
2627
  }, Fe = (e) => {
2461
- const [t, o] = R(() => Ge(e.consentVersion)), s = ue({
2628
+ const t = _e();
2629
+ return !t || !Ue(t.d, e, t) ? null : Le(t);
2630
+ }, Ge = (e) => {
2631
+ const [t, o] = b(() => Fe(e.consentVersion)), s = ue({
2462
2632
  queryKey: ["cookie-consent", "me"],
2463
2633
  queryFn: async () => (await k.sdk.user.cookieConsent.get()).data.consent,
2464
2634
  enabled: e.isAuthenticated,
2465
2635
  retry: !1,
2466
2636
  refetchOnWindowFocus: !1
2467
2637
  }), r = pe({
2468
- mutationFn: async (a) => (await k.sdk.user.cookieConsent.upsert({
2469
- analytics: a.analytics,
2470
- marketing: a.marketing,
2471
- decidedAt: a.decidedAt,
2472
- consentVersion: a.consentVersion
2638
+ mutationFn: async (n) => (await k.sdk.user.cookieConsent.upsert({
2639
+ analytics: n.analytics,
2640
+ marketing: n.marketing,
2641
+ decidedAt: n.decidedAt,
2642
+ consentVersion: n.consentVersion
2473
2643
  })).data.consent
2474
- }), n = f(
2475
- (a) => {
2476
- H(V(a), { domain: e.domain }), o(a), e.isAuthenticated && r.mutate(a);
2644
+ }), a = N(
2645
+ (n) => {
2646
+ H(Y(n), { domain: e.domain }), o(n), e.isAuthenticated && r.mutate(n);
2477
2647
  },
2478
2648
  [e.domain, e.isAuthenticated, r]
2479
2649
  );
2480
2650
  z(() => {
2481
2651
  if (!e.isAuthenticated || s.isLoading || s.isError)
2482
2652
  return;
2483
- const a = Pe(t, s.data ?? null);
2484
- a.action === F.ADOPT_DB && a.value ? (H(V(a.value), { domain: e.domain }), o(a.value)) : a.action === F.PUSH_COOKIE && a.value && r.mutate(a.value);
2653
+ const n = De(t, s.data ?? null);
2654
+ n.action === G.ADOPT_DB && n.value ? (H(Y(n.value), { domain: e.domain }), o(n.value)) : n.action === G.PUSH_COOKIE && n.value && r.mutate(n.value);
2485
2655
  }, [e.isAuthenticated, s.isLoading, s.isError, s.data]);
2486
- const u = f(() => {
2487
- n({
2656
+ const u = N(() => {
2657
+ a({
2488
2658
  essentials: !0,
2489
2659
  analytics: !0,
2490
2660
  marketing: !0,
2491
2661
  decidedAt: (/* @__PURE__ */ new Date()).toISOString(),
2492
2662
  consentVersion: e.consentVersion
2493
2663
  });
2494
- }, [e.consentVersion, n]), p = f(() => {
2495
- n({
2664
+ }, [e.consentVersion, a]), p = N(() => {
2665
+ a({
2496
2666
  essentials: !0,
2497
2667
  analytics: !1,
2498
2668
  marketing: !1,
2499
2669
  decidedAt: (/* @__PURE__ */ new Date()).toISOString(),
2500
2670
  consentVersion: e.consentVersion
2501
2671
  });
2502
- }, [e.consentVersion, n]), g = f(
2503
- (a) => {
2504
- n({
2672
+ }, [e.consentVersion, a]), A = N(
2673
+ (n) => {
2674
+ a({
2505
2675
  essentials: !0,
2506
- analytics: a.analytics,
2507
- marketing: a.marketing,
2676
+ analytics: n.analytics,
2677
+ marketing: n.marketing,
2508
2678
  decidedAt: (/* @__PURE__ */ new Date()).toISOString(),
2509
2679
  consentVersion: e.consentVersion
2510
2680
  });
2511
2681
  },
2512
- [e.consentVersion, n]
2513
- ), I = f(() => {
2514
- De({ domain: e.domain }), o(null);
2682
+ [e.consentVersion, a]
2683
+ ), f = N(() => {
2684
+ Pe({ domain: e.domain }), o(null);
2515
2685
  }, [e.domain]);
2516
- return { consent: t, isResolved: t !== null, acceptAll: u, rejectAll: p, save: g, reset: I };
2686
+ return { consent: t, isResolved: t !== null, acceptAll: u, rejectAll: p, save: A, reset: f };
2517
2687
  }, ke = ({ api: e, privacyLinkHref: t }) => {
2518
- const o = K(), { acceptAll: s, rejectAll: r, save: n } = e, [u, p] = R(!1), [g, I] = R(!1), [a, T] = R(!1), O = () => {
2519
- n({ analytics: g, marketing: a }), p(!1);
2688
+ const o = K(), { acceptAll: s, rejectAll: r, save: a } = e, [u, p] = b(!1), [A, f] = b(!1), [n, h] = b(!1), C = () => {
2689
+ a({ analytics: A, marketing: n }), p(!1);
2520
2690
  };
2521
- return /* @__PURE__ */ A($, { children: [
2691
+ return /* @__PURE__ */ g($, { children: [
2522
2692
  /* @__PURE__ */ i(
2523
2693
  te,
2524
2694
  {
@@ -2528,7 +2698,7 @@ const Y = (e) => ({
2528
2698
  bottom: { xs: 8, md: 16 },
2529
2699
  left: { xs: 8, md: 16 },
2530
2700
  right: { xs: 8, md: 16 },
2531
- zIndex: (h) => h.zIndex.snackbar,
2701
+ zIndex: (T) => T.zIndex.snackbar,
2532
2702
  p: { xs: 2, md: 3 },
2533
2703
  borderRadius: 2,
2534
2704
  maxWidth: 900,
@@ -2538,57 +2708,57 @@ const Y = (e) => ({
2538
2708
  },
2539
2709
  role: "dialog",
2540
2710
  "aria-labelledby": "cookie-consent-title",
2541
- children: /* @__PURE__ */ A(P, { direction: { xs: "column", md: "row" }, spacing: 2, alignItems: { xs: "stretch", md: "center" }, children: [
2542
- /* @__PURE__ */ A(N, { sx: { flex: 1 }, children: [
2711
+ children: /* @__PURE__ */ g(D, { direction: { xs: "column", md: "row" }, spacing: 2, alignItems: { xs: "stretch", md: "center" }, children: [
2712
+ /* @__PURE__ */ g(I, { sx: { flex: 1 }, children: [
2543
2713
  /* @__PURE__ */ i(m, { id: "cookie-consent-title", variant: "subtitle1", fontWeight: 700, gutterBottom: !0, children: o.formatRichMessage({ id: "cookies.banner.title" }) }),
2544
2714
  /* @__PURE__ */ i(m, { variant: "body2", color: "text.secondary", children: o.formatRichMessage({ id: "cookies.banner.description" }) }),
2545
2715
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", sx: { mt: 1, display: "block" }, children: /* @__PURE__ */ i("a", { href: t, style: { color: "inherit" }, rel: "noreferrer", children: o.formatRichMessage({ id: "cookies.banner.privacy-link" }) }) })
2546
2716
  ] }),
2547
- /* @__PURE__ */ A(P, { direction: { xs: "column", sm: "row" }, spacing: 1, sx: { flexShrink: 0 }, children: [
2548
- /* @__PURE__ */ i(C, { variant: "text", onClick: r, children: o.formatRichMessage({ id: "cookies.action.reject-all" }) }),
2549
- /* @__PURE__ */ i(C, { variant: "outlined", onClick: () => p(!0), children: o.formatRichMessage({ id: "cookies.action.configure" }) }),
2550
- /* @__PURE__ */ i(C, { variant: "contained", onClick: s, children: o.formatRichMessage({ id: "cookies.action.accept-all" }) })
2717
+ /* @__PURE__ */ g(D, { direction: { xs: "column", sm: "row" }, spacing: 1, sx: { flexShrink: 0 }, children: [
2718
+ /* @__PURE__ */ i(O, { variant: "text", onClick: r, children: o.formatRichMessage({ id: "cookies.action.reject-all" }) }),
2719
+ /* @__PURE__ */ i(O, { variant: "outlined", onClick: () => p(!0), children: o.formatRichMessage({ id: "cookies.action.configure" }) }),
2720
+ /* @__PURE__ */ i(O, { variant: "contained", onClick: s, children: o.formatRichMessage({ id: "cookies.action.accept-all" }) })
2551
2721
  ] })
2552
2722
  ] })
2553
2723
  }
2554
2724
  ),
2555
- /* @__PURE__ */ A(oe, { open: u, onClose: () => p(!1), maxWidth: "sm", fullWidth: !0, children: [
2725
+ /* @__PURE__ */ g(oe, { open: u, onClose: () => p(!1), maxWidth: "sm", fullWidth: !0, children: [
2556
2726
  /* @__PURE__ */ i(ie, { children: o.formatRichMessage({ id: "cookies.configure.title" }) }),
2557
- /* @__PURE__ */ i(re, { children: /* @__PURE__ */ A(P, { spacing: 2, sx: { pt: 1 }, children: [
2727
+ /* @__PURE__ */ i(re, { children: /* @__PURE__ */ g(D, { spacing: 2, sx: { pt: 1 }, children: [
2558
2728
  /* @__PURE__ */ i(
2559
- b,
2729
+ R,
2560
2730
  {
2561
- control: /* @__PURE__ */ i(_, { checked: !0, disabled: !0 }),
2562
- label: /* @__PURE__ */ A(N, { children: [
2731
+ control: /* @__PURE__ */ i(v, { checked: !0, disabled: !0 }),
2732
+ label: /* @__PURE__ */ g(I, { children: [
2563
2733
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: o.formatRichMessage({ id: "cookies.category.essentials.title" }) }),
2564
2734
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: o.formatRichMessage({ id: "cookies.category.essentials.description" }) })
2565
2735
  ] })
2566
2736
  }
2567
2737
  ),
2568
2738
  /* @__PURE__ */ i(
2569
- b,
2739
+ R,
2570
2740
  {
2571
- control: /* @__PURE__ */ i(_, { checked: g, onChange: (h, c) => I(c) }),
2572
- label: /* @__PURE__ */ A(N, { children: [
2741
+ control: /* @__PURE__ */ i(v, { checked: A, onChange: (T, c) => f(c) }),
2742
+ label: /* @__PURE__ */ g(I, { children: [
2573
2743
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: o.formatRichMessage({ id: "cookies.category.analytics.title" }) }),
2574
2744
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: o.formatRichMessage({ id: "cookies.category.analytics.description" }) })
2575
2745
  ] })
2576
2746
  }
2577
2747
  ),
2578
2748
  /* @__PURE__ */ i(
2579
- b,
2749
+ R,
2580
2750
  {
2581
- control: /* @__PURE__ */ i(_, { checked: a, onChange: (h, c) => T(c) }),
2582
- label: /* @__PURE__ */ A(N, { children: [
2751
+ control: /* @__PURE__ */ i(v, { checked: n, onChange: (T, c) => h(c) }),
2752
+ label: /* @__PURE__ */ g(I, { children: [
2583
2753
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: o.formatRichMessage({ id: "cookies.category.marketing.title" }) }),
2584
2754
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: o.formatRichMessage({ id: "cookies.category.marketing.description" }) })
2585
2755
  ] })
2586
2756
  }
2587
2757
  )
2588
2758
  ] }) }),
2589
- /* @__PURE__ */ A(ne, { children: [
2590
- /* @__PURE__ */ i(C, { onClick: () => p(!1), children: o.formatRichMessage({ id: "cookies.action.cancel" }) }),
2591
- /* @__PURE__ */ i(C, { onClick: O, variant: "contained", children: o.formatRichMessage({ id: "cookies.action.save" }) })
2759
+ /* @__PURE__ */ g(ae, { children: [
2760
+ /* @__PURE__ */ i(O, { onClick: () => p(!1), children: o.formatRichMessage({ id: "cookies.action.cancel" }) }),
2761
+ /* @__PURE__ */ i(O, { onClick: C, variant: "contained", children: o.formatRichMessage({ id: "cookies.action.save" }) })
2592
2762
  ] })
2593
2763
  ] })
2594
2764
  ] });
@@ -2603,84 +2773,84 @@ const Y = (e) => ({
2603
2773
  isAuthenticated: o,
2604
2774
  domain: s,
2605
2775
  privacyLinkHref: r = we,
2606
- renderBanner: n
2776
+ renderBanner: a
2607
2777
  }) => {
2608
- const u = Fe({ isAuthenticated: o, consentVersion: t, domain: s }), p = x(() => u.isResolved ? null : n ? n(u) : /* @__PURE__ */ i(ke, { api: u, privacyLinkHref: r }), [u, r, n]);
2609
- return /* @__PURE__ */ A(Z.Provider, { value: u, children: [
2778
+ const u = Ge({ isAuthenticated: o, consentVersion: t, domain: s }), p = x(() => u.isResolved ? null : a ? a(u) : /* @__PURE__ */ i(ke, { api: u, privacyLinkHref: r }), [u, r, a]);
2779
+ return /* @__PURE__ */ g(Z.Provider, { value: u, children: [
2610
2780
  e,
2611
2781
  p
2612
2782
  ] });
2613
2783
  }, Je = () => {
2614
- const e = K(), { consent: t, save: o } = Be(), [s, r] = R((t == null ? void 0 : t.analytics) ?? !1), [n, u] = R((t == null ? void 0 : t.marketing) ?? !1);
2784
+ const e = K(), { consent: t, save: o } = Be(), [s, r] = b((t == null ? void 0 : t.analytics) ?? !1), [a, u] = b((t == null ? void 0 : t.marketing) ?? !1);
2615
2785
  return z(() => {
2616
2786
  t && (r(t.analytics), u(t.marketing));
2617
- }, [t == null ? void 0 : t.analytics, t == null ? void 0 : t.marketing]), /* @__PURE__ */ i(se, { sx: { borderRadius: 3 }, children: /* @__PURE__ */ i(ae, { children: /* @__PURE__ */ A(P, { spacing: 2, children: [
2787
+ }, [t == null ? void 0 : t.analytics, t == null ? void 0 : t.marketing]), /* @__PURE__ */ i(se, { sx: { borderRadius: 3 }, children: /* @__PURE__ */ i(ne, { children: /* @__PURE__ */ g(D, { spacing: 2, children: [
2618
2788
  /* @__PURE__ */ i(m, { variant: "h6", children: e.formatRichMessage({ id: "cookies.configure.title" }) }),
2619
2789
  /* @__PURE__ */ i(
2620
- b,
2790
+ R,
2621
2791
  {
2622
- control: /* @__PURE__ */ i(_, { checked: !0, disabled: !0 }),
2623
- label: /* @__PURE__ */ A(N, { children: [
2792
+ control: /* @__PURE__ */ i(v, { checked: !0, disabled: !0 }),
2793
+ label: /* @__PURE__ */ g(I, { children: [
2624
2794
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: e.formatRichMessage({ id: "cookies.category.essentials.title" }) }),
2625
2795
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: e.formatRichMessage({ id: "cookies.category.essentials.description" }) })
2626
2796
  ] })
2627
2797
  }
2628
2798
  ),
2629
2799
  /* @__PURE__ */ i(
2630
- b,
2800
+ R,
2631
2801
  {
2632
- control: /* @__PURE__ */ i(_, { checked: s, onChange: (p, g) => r(g) }),
2633
- label: /* @__PURE__ */ A(N, { children: [
2802
+ control: /* @__PURE__ */ i(v, { checked: s, onChange: (p, A) => r(A) }),
2803
+ label: /* @__PURE__ */ g(I, { children: [
2634
2804
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: e.formatRichMessage({ id: "cookies.category.analytics.title" }) }),
2635
2805
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: e.formatRichMessage({ id: "cookies.category.analytics.description" }) })
2636
2806
  ] })
2637
2807
  }
2638
2808
  ),
2639
2809
  /* @__PURE__ */ i(
2640
- b,
2810
+ R,
2641
2811
  {
2642
- control: /* @__PURE__ */ i(_, { checked: n, onChange: (p, g) => u(g) }),
2643
- label: /* @__PURE__ */ A(N, { children: [
2812
+ control: /* @__PURE__ */ i(v, { checked: a, onChange: (p, A) => u(A) }),
2813
+ label: /* @__PURE__ */ g(I, { children: [
2644
2814
  /* @__PURE__ */ i(m, { variant: "body2", fontWeight: 600, children: e.formatRichMessage({ id: "cookies.category.marketing.title" }) }),
2645
2815
  /* @__PURE__ */ i(m, { variant: "caption", color: "text.secondary", children: e.formatRichMessage({ id: "cookies.category.marketing.description" }) })
2646
2816
  ] })
2647
2817
  }
2648
2818
  ),
2649
- /* @__PURE__ */ i(N, { children: /* @__PURE__ */ i(C, { variant: "contained", onClick: () => o({ analytics: s, marketing: n }), children: e.formatRichMessage({ id: "cookies.action.save" }) }) })
2819
+ /* @__PURE__ */ i(I, { children: /* @__PURE__ */ i(O, { variant: "contained", onClick: () => o({ analytics: s, marketing: a }), children: e.formatRichMessage({ id: "cookies.action.save" }) }) })
2650
2820
  ] }) }) });
2651
2821
  };
2652
2822
  export {
2653
2823
  Ke as A,
2654
- Re as B,
2824
+ be as B,
2655
2825
  ke as C,
2656
- Ce as D,
2657
- fe as E,
2658
- F as R,
2826
+ Oe as D,
2827
+ Ne as E,
2828
+ G as R,
2659
2829
  J as V,
2660
2830
  Je as a,
2661
- Fe as b,
2831
+ Ge as b,
2662
2832
  L as c,
2663
- De as d,
2664
- Pe as e,
2833
+ Pe as d,
2834
+ De as e,
2665
2835
  We as f,
2666
- ge as g,
2836
+ Ae as g,
2667
2837
  W as h,
2668
2838
  Ee as i,
2669
2839
  q as j,
2670
2840
  K as k,
2671
- Ae as l,
2841
+ ge as l,
2672
2842
  qe as m,
2673
2843
  me as n,
2674
- he as o,
2844
+ Te as o,
2675
2845
  Se as p,
2676
2846
  M as q,
2677
- ve as r,
2678
- Te as s,
2679
- G as t,
2847
+ _e as r,
2848
+ he as s,
2849
+ F as t,
2680
2850
  Be as u,
2681
- Ie as v,
2851
+ fe as v,
2682
2852
  H as w,
2683
- Ne as x,
2684
- Oe as y,
2853
+ Ie as x,
2854
+ Ce as y,
2685
2855
  j as z
2686
2856
  };