@abyss-project/commons-front-core 7.1.0 → 8.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.
- package/README.md +24 -0
- package/dist/{AbyssModal.component-DVIzX2ko.js → AbyssCookieConsentProvider-BhSzVu8P.js} +2328 -2103
- package/dist/CookieConsentSettings.component-DMEAuCVS.js +77 -0
- package/dist/components/layers/Toast/Toast.d.ts +1 -1
- package/dist/components/structure/AppShell/AppShell.d.ts +1 -1
- package/dist/components/structure/test-support/structure-test-harness.d.ts +1 -1
- package/dist/cookie-consent.js +17 -16
- package/dist/{design-theme-DGpfyrRa.js → design-theme-CvLzOz3p.js} +1 -1
- package/dist/fonts.css +1 -1
- package/dist/hooks/use-rich-intl.hook.d.ts +10 -0
- package/dist/{index-2dP8eJDC.js → index-21vSFz6u.js} +2 -2
- package/dist/{index-CKRPvslz.js → index-6KdfKdSJ.js} +2 -2
- package/dist/{index-CRAwLl2U.js → index-7HAvRXgu.js} +2 -2
- package/dist/{index-ClyGJxMq.js → index-ASLTmD1Y.js} +2 -2
- package/dist/{index-EOvj8bHf.js → index-BTjzj7mm.js} +2 -2
- package/dist/{index-Bnd34zc3.js → index-BVS73U9E.js} +4 -4
- package/dist/{index-D3RFab1e.js → index-BkfBpYKR.js} +3 -3
- package/dist/{index-G39MXErO.js → index-BqIg55B3.js} +4 -4
- package/dist/{index-BCbBLGCq.js → index-Btnmn1iK.js} +4 -4
- package/dist/{index-uN5dp-oL.js → index-BtsnuEJC.js} +24753 -22818
- package/dist/{index-5lZWuL9E.js → index-C92C_oG5.js} +2 -2
- package/dist/{index-BNXtGwVO.js → index-CHGRiRCe.js} +3 -3
- package/dist/{index-BvnEqebm.js → index-ClLoBnCN.js} +2 -2
- package/dist/{index-C9rZao0s.js → index-D4Qh2Iww.js} +3 -3
- package/dist/{index-DY-1nAn8.js → index-D5e4uD4k.js} +2 -2
- package/dist/{index-BzqtPPN5.js → index-D_GWBYM2.js} +1 -1
- package/dist/{index-D-ULIp83.js → index-DixNft1u.js} +2 -2
- package/dist/{index-s1jdo-Md.js → index-GoHiFeaw.js} +2 -2
- package/dist/{index-CtgSTnzK.js → index-LdiTmDFg.js} +2 -2
- package/dist/{index-Dne75cXj.js → index-Ni4BmFs4.js} +2 -2
- package/dist/{index-CUmAInm9.js → index-bR-mnNUA.js} +2 -2
- package/dist/{index-CEkvsFyX.js → index-l7FAjaVB.js} +3 -3
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1581 -1514
- package/dist/legacy/components/CookieConsent/AbyssCookieConsentProvider.d.ts +5 -0
- package/dist/legacy/components/CookieConsent/AbyssCookieConsentProvider.spec.d.ts +1 -0
- package/dist/legacy/components/Utils/AbyssErrorPage/AbyssErrorBoundary.component.spec.d.ts +1 -0
- package/dist/legacy/fonts.css +1 -1
- package/dist/legacy.js +83 -82
- package/dist/rum/AbyssRumProvider.d.ts +29 -0
- package/dist/rum/AbyssRumProvider.spec.d.ts +1 -0
- package/dist/rum/feedback-ticket.d.ts +24 -0
- package/dist/rum/index.d.ts +2 -0
- package/dist/theme/augmentation.d.ts +1 -1
- package/dist/theme/components/shared.d.ts +1 -1
- package/dist/theme/create-abyss-theme.d.ts +1 -1
- package/dist/theme/design-theme.d.ts +1 -1
- package/dist/theme/tokens/oklch.d.ts +1 -1
- package/dist/theme/tokens/soft.d.ts +1 -1
- package/dist/translations/en.d.ts +1 -0
- package/dist/translations/fr.d.ts +1 -0
- package/package.json +7 -3
- package/vite.config.ts +1 -1
- package/dist/CookieConsentSettings.component-BdBT72qy.js +0 -299
- package/test-results/catalog/.last-run.json +0 -4
package/README.md
CHANGED
|
@@ -25,6 +25,30 @@ pnpm add @abyss-project/commons-front-core
|
|
|
25
25
|
|
|
26
26
|
Voir la [documentation produit](https://docs.abyss-project.fr/abyss-project) pour les guides d'utilisation, la configuration du Core, les exemples d'appel et la référence des permissions.
|
|
27
27
|
|
|
28
|
+
## RUM
|
|
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` :
|
|
31
|
+
|
|
32
|
+
```tsx
|
|
33
|
+
<AbyssErrorBoundary appName="abyss-cloud">
|
|
34
|
+
<AuthProvider client={authClient}>
|
|
35
|
+
<AbyssCookieConsentProvider consentVersion={COOKIE_CONSENT_VERSION} isAuthenticated={isAuthenticated}>
|
|
36
|
+
<AbyssRumProvider config={buildRumOptions()}>
|
|
37
|
+
<App />
|
|
38
|
+
</AbyssRumProvider>
|
|
39
|
+
</AbyssCookieConsentProvider>
|
|
40
|
+
</AuthProvider>
|
|
41
|
+
</AbyssErrorBoundary>
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
- **`config` est requise** (raison de la majeure 8.0.0 : aucun front ne peut oublier son RUM). `config={null}` désactive le RUM explicitement : rien n'est installé. Elle reçoit les options de `AbyssRum.init` (`apiUrl`, `proxyUrl`, `applicationId`, `token`, `release`, `instrumentedOrigins`, `routeResolver`…), sauf `consent`, que le provider fournit.
|
|
45
|
+
- **Une seule initialisation.** `AbyssRum.init` est appelé au premier commit avec une `config` non nulle, une fois, StrictMode compris. Une `config` qui change ensuite est **ignorée** : le SDK vit autant que la page.
|
|
46
|
+
- **Consentement.** Le replay exige la catégorie analytics de `AbyssCookieConsentProvider`, relue à chaque décision du SDK : un consentement donné ou retiré après le démarrage est suivi. Sans provider de consentement, analytics vaut refusé.
|
|
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
|
+
- **`feedbackTicket`** (`intakeSlug`, `internalTicketSectionId`, `appName`, `sessionUrl(sessionId, offsetMs)`) : 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é.
|
|
49
|
+
- **`onFeedbackSent`** : rappel du front, appelé pour chaque retour enregistré, après le ticket (créé, sauté ou en échec).
|
|
50
|
+
- **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
|
+
|
|
28
52
|
## Support
|
|
29
53
|
|
|
30
54
|
Pour toute demande, ouvrir un ticket depuis [l'application Abyss](https://app.abyss-project.fr/dashboard/account/tickets/create).
|