@abyss-project/commons-front-core 9.5.1 → 10.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 (69) hide show
  1. package/README.md +20 -1
  2. package/dist/{AbyssCookieConsentProvider-jMv5bvVK.js → AbyssCookieConsentProvider-BypueFP-.js} +804 -684
  3. package/dist/{CookieConsentSettings.component-B6i65LtJ.js → CookieConsentSettings.component-CYmew9vg.js} +1 -1
  4. package/dist/auth/client/web-bridge.d.ts +6 -0
  5. package/dist/auth/components/AuthFlow/AuthFlow.component.d.ts +9 -2
  6. package/dist/auth/components/AuthFlow/auth-flow.types.d.ts +5 -0
  7. package/dist/auth/components/AuthFlow/steps/EmailStep.component.d.ts +4 -1
  8. package/dist/auth/components/index.d.ts +1 -0
  9. package/dist/auth/components/shared/auth-errors.d.ts +1 -0
  10. package/dist/auth/components/shared/auth-errors.spec.d.ts +1 -0
  11. package/dist/auth-client.js +1 -1
  12. package/dist/components/data/InvoiceDetailView/InvoiceDetailView.d.ts +37 -0
  13. package/dist/components/data/InvoiceDetailView/InvoiceDetailView.spec.d.ts +1 -0
  14. package/dist/components/data/InvoiceDetailView/InvoiceStatusBadge.d.ts +15 -0
  15. package/dist/components/data/InvoiceDetailView/invoice-display.d.ts +11 -0
  16. package/dist/components/data/InvoiceDetailView/invoice-line-label.d.ts +13 -0
  17. package/dist/components/data/InvoiceDetailView/invoice-line-label.spec.d.ts +1 -0
  18. package/dist/components/data/index.d.ts +3 -0
  19. package/dist/components/inputs/DropZone/DropZone.d.ts +6 -1
  20. package/dist/components/layers/ProductTour/product-tour-geometry.d.ts +2 -0
  21. package/dist/components/structure/AccountMenu/AccountMenu.d.ts +2 -1
  22. package/dist/components/structure/AppShell/app-shell.types.d.ts +5 -0
  23. package/dist/cookie-consent.js +2 -2
  24. package/dist/{design-theme-CykIb-Gz.js → design-theme-uRG0VfEo.js} +2020 -2018
  25. package/dist/hooks/theme-transition/bubble-field.d.ts +35 -0
  26. package/dist/hooks/theme-transition/bubble-field.spec.d.ts +1 -0
  27. package/dist/hooks/theme-transition/bubble-overlay.d.ts +19 -0
  28. package/dist/hooks/use-rich-intl.hook.d.ts +192 -0
  29. package/dist/hooks/use-theme-transition.hook.d.ts +7 -4
  30. package/dist/hooks/use-theme-transition.hook.spec.d.ts +1 -0
  31. package/dist/{index-B9kzX70T.js → index-1XaO6yqN.js} +2 -2
  32. package/dist/{index-Cy8fNdNL.js → index-B-gziyiQ.js} +2 -2
  33. package/dist/{index-BS7CgEyj.js → index-B-o5nMSp.js} +2 -2
  34. package/dist/{index-BEQgBOwt.js → index-B2hC6MII.js} +2 -2
  35. package/dist/{index-CLxMgDwa.js → index-BGFuwS_Q.js} +2 -2
  36. package/dist/{index-Cqn_LfL2.js → index-BWlJEtPU.js} +2 -2
  37. package/dist/{index-IhTCIvj6.js → index-BXr7rmpX.js} +3 -3
  38. package/dist/{index-BOm9JgH7.js → index-BlOn2KR_.js} +2 -2
  39. package/dist/{index-mNiLojvx.js → index-BqwZB633.js} +4 -4
  40. package/dist/{index-BveBtqZP.js → index-Bzvs4paS.js} +4 -4
  41. package/dist/{index-BPGHypMd.js → index-C7vs9FFj.js} +2 -2
  42. package/dist/{index-7S_OHK4f.js → index-Cn4VznqA.js} +3 -3
  43. package/dist/{index-Bgrp5kC3.js → index-CxRoV826.js} +2 -2
  44. package/dist/{index-rfJiqJxI.js → index-D6SwHpGJ.js} +3 -3
  45. package/dist/{index-f_oWcs8w.js → index-DMm4DUwE.js} +4 -4
  46. package/dist/{index-DXYvHlFM.js → index-DSxaBHTZ.js} +2 -2
  47. package/dist/{index-Lub7dhvT.js → index-DXsaB2jy.js} +6496 -6481
  48. package/dist/{index-Bd0oB0x3.js → index-D_FaSb6y.js} +2 -2
  49. package/dist/{index-DebUlRoE.js → index-QOUuevuY.js} +2 -2
  50. package/dist/{index-B4xjMC7O.js → index-cCCQwSgM.js} +2 -2
  51. package/dist/{index-_nt9c97v.js → index-eDLp-yzn.js} +3 -3
  52. package/dist/{index-CKD84DUx.js → index-oTUDJjQw.js} +1 -1
  53. package/dist/index.js +7184 -6590
  54. package/dist/legacy/components/Layouts/AbyssThemeToggle/AbyssThemeToggle.component.d.ts +2 -1
  55. package/dist/legacy/components/Layouts/AbyssThemeToggle/AbyssThemeToggle.component.spec.d.ts +1 -0
  56. package/dist/legacy.js +19 -19
  57. package/dist/rum/AbyssRumProvider.d.ts +5 -2
  58. package/dist/rum/abyss-rum-report.context.d.ts +14 -0
  59. package/dist/rum/index.d.ts +1 -0
  60. package/dist/rum/report-locale.d.ts +3 -0
  61. package/dist/rum/report-locale.spec.d.ts +1 -0
  62. package/dist/rum/track-key-action.d.ts +7 -0
  63. package/dist/rum/track-key-action.spec.d.ts +1 -0
  64. package/dist/theme/components/shared.d.ts +6 -0
  65. package/dist/translations/en.d.ts +60 -0
  66. package/dist/translations/fr.d.ts +60 -0
  67. package/dist/{use-auth.hook-oRxzI95f.js → use-auth.hook-D8vfSYRv.js} +101 -101
  68. package/package.json +10 -10
  69. package/test-results/catalog/.last-run.json +0 -4
package/README.md CHANGED
@@ -27,7 +27,7 @@ Voir la [documentation produit](https://docs.abyss-project.fr/abyss-project) pou
27
27
 
28
28
  ## RUM
29
29
 
30
- Le RUM navigateur d'un front (SDK `@abyss-project/monitor-browser`, peer `^1.2.0`) se démarre par `AbyssRumProvider`, monté **sous** `AbyssCookieConsentProvider` et, quand le front en a un, sous `AuthProvider` :
30
+ Le RUM navigateur d'un front (SDK `@abyss-project/monitor-browser`, peer `^1.3.2` ; `setContact` et `setTheme` demandent la version publiée par #285 F) se démarre par `AbyssRumProvider`, monté **sous** `AbyssCookieConsentProvider`, sous le `ThemeProvider` MUI et, quand le front en a un, sous `AuthProvider` :
31
31
 
32
32
  ```tsx
33
33
  <AbyssErrorBoundary appName="abyss-cloud">
@@ -47,6 +47,10 @@ Le RUM navigateur d'un front (SDK `@abyss-project/monitor-browser`, peer `^1.2.0
47
47
  - **Acteur.** Sous `AuthProvider`, l'acteur de la session est l'id de l'utilisateur connecté, `null` à la déconnexion, inchangé pendant le chargement de la session. Sans `AuthProvider`, aucun acteur.
48
48
  - **`feedbackTicket`** (`intakeSlug`, `internalTicketSectionId`, `appName`, `sessionUrl(sessionId, offsetMs)`, `locale?()`) : chaque retour utilisateur enregistré par Monitor devient un ticket Internal Tickets, par l'intake public d'abyss-console (`fileInternalTicketIntake`, peer `@abyss-project/console` `^12.4.0`, configuré par `AbyssConsoleCore.setConfig` du front). Titre `[<appName>] Retour utilisateur` ; description : le message, l'e-mail, la route et le lien vers la session. Le déclarant est l'e-mail saisi, sinon celui de l'utilisateur connecté ; un retour anonyme sans e-mail ne crée aucun ticket et reste dans Monitor. Un échec de création est journalisé (`console.warn`) et avalé. `locale()` est relue à chaque retour : sa sous-étiquette primaire (`en-GB` → `en`) part comme `locale` de l'intake, la langue des courriels de suivi ; une langue que l'intake ne parle pas (hors `UserLanguage`) n'est pas envoyée.
49
49
  - **`onFeedbackSent`** : rappel du front, appelé pour chaque retour enregistré, après le ticket (créé, sauté ou en échec).
50
+ - **Contact (#285 F §7).** Sous `AuthProvider`, `AbyssRum.setContact({ email, name })` reçoit l'e-mail et l'alias de l'utilisateur connecté, `null` à la déconnexion, rien pendant le chargement de la session. Le SDK le garde en mémoire, jamais dans la télémétrie : il pré-remplit « Réponse à … » du signalement et ne part qu'avec un retour. Avec `config={null}`, aucun contact n'est donné.
51
+ - **Thème (#285 F §6.4).** Monté sous le `ThemeProvider` MUI du front, le provider passe à `AbyssRum.setTheme` l'accent (`palette.primary.main`), le rayon (`shape.borderRadius`, borné à 0–48 px) et le mode (`palette.mode`) ; un changement de mode est suivi. Les variables CSS `--abyss-monitor-accent` et `--abyss-monitor-radius` de la page, et l'apparence enregistrée sur une demande de retour, priment.
52
+ - **« Signaler un problème » (#285 F §7).** Avec une `config` non nulle, le provider offre le signalement du SDK aux menus de compte du core placés dessous : `AccountMenu` (après les entrées de l'hôte) et le `AbyssLayoutMenu` legacy (après Facturation) montrent l'entrée « Signaler un problème » / « Report a problem », qui ferme le menu et appelle `AbyssRum.showReportDialog({ locale })` dans la langue du front (`en*` → `RumReportLocale.EN`, sinon `RumReportLocale.FR`). Sans provider ou avec `config={null}`, l'entrée n'existe pas. Elle n'apparaît que tant que `AbyssRum.isReportAvailable()` est vrai — SDK démarré, configuration de l'environnement reçue avec les retours activés (réglage « Retours utilisateurs » dans Monitor) — et le provider la réévalue à chaque `AbyssRum.onConfigChange` : absente avant la réponse de configuration et quand les retours sont coupés.
53
+ - **Actions clés (#285 F).** `trackKeyAction(AbyssKeyActionEvent.X)` enregistre, au point de succès d'une action du front, une action RUM nommée d'après l'événement du catalogue (`board.card.completed`) : une demande de retour déclenchée par une action s'y règle. Sans RUM démarré, l'appel ne fait rien et ne lève jamais.
50
54
  - **Erreurs de rendu.** `AbyssErrorBoundary` envoie l'erreur qu'il attrape à `AbyssRum.captureError(error, { source: 'error-boundary' })` ; sans RUM démarré, l'appel ne fait rien.
51
55
 
52
56
  ### Construire les options : `buildAbyssRumProviderConfig`
@@ -90,6 +94,19 @@ export const buildRumOptions = () =>
90
94
 
91
95
  ## Changements visibles
92
96
 
97
+ ### 9.6.0
98
+
99
+ Correctifs de la zone 4b (carte #286), relevés par son e2e responsive.
100
+
101
+ - **`Drawer`, `BottomSheet`** : sous 768 px, le bouton de fermeture fait 44×44 px au moins (il en faisait 32 sous le
102
+ thème legacy, qui garde ses boutons icône à leur taille de bureau). `AnchoredPanel` en profite : sous 768 px sa
103
+ feuille est une `BottomSheet`, dont c'est le bouton « Fermer ». Au-dessus, le popover garde son bouton d'origine.
104
+ - **`InvoiceDetailView`** (venu de la carte #285, livraison E) : ne lit plus aucun membre de `@abyss-project/main` à
105
+ l'évaluation du paquet (libellés des lignes de déduction, badge de statut), ce que `load-safety.spec.ts` vérifie.
106
+ Rendu inchangé.
107
+ - **Épinglage de `@abyss-project/main`** : le `workspace:*` du dépôt devient, dans le paquet publié, la version
108
+ exacte de main, ici **19.0.0**. Un hôte qui installe ce core doit être sur `@abyss-project/main` 19.0.0.
109
+
93
110
  ### 9.5.1
94
111
 
95
112
  - **`testId` sur `TabItem` et `MenuItem`** : rendu en `data-testid` sur l'élément interactif (`role="tab"`,
@@ -236,6 +253,8 @@ documentée dans le `README.md` de son dossier et montrée dans le catalogue.
236
253
  haut.
237
254
  - **`UsageMeter`** (`data`) : consommation sur un plafond, seuils en parts du plafond, jauge `meter` ; sans plafond, la
238
255
  valeur seule.
256
+ - **`InvoiceDetailView`** (`data`) : corps de présentation du détail d'une facture (lignes, déductions, gestes, prise en
257
+ charge des programmes, totaux), partagé par le front client et le back-office ; données et actions en props.
239
258
  - **`CopyField`** (`inputs`) : valeur masquable et copiable, résultat de la copie annoncé dans une région vivante.
240
259
  - **`NumberField`** (`inputs`) : nombre saisi et affiché avec les séparateurs de la langue, « , » ou « . » lus comme
241
260
  marque décimale, borné (`min`) et arrondi (`decimals`) en sortie du champ ; remplace `AbyssNumberField` du legacy