Bloc PageBuilder : richText
Objet : Bloc PageBuilder
Type : Object
Slice : Slice 1 (Page dâaccueil)
Cycle : DOC â SPEC â CODE â TEST â INTĂG
Statut : DOC
1. Description et périmÚtre
Section titled â1. Description et pĂ©rimĂštreâ1.1. Objectif
Section titled â1.1. ObjectifâLe bloc richText est un bloc PageBuilder qui affiche du contenu riche (Portable Text) avec un support pour le formatage de texte, les listes, les liens, etc.
1.2. Utilisation principale
Section titled â1.2. Utilisation principaleâ- Section de contenu textuel de la page dâaccueil
- Présentation détaillée de fonctionnalités
- Contenu éditorial flexible
1.3. PérimÚtre concerné
Section titled â1.3. PĂ©rimĂštre concernĂ©â- Type : Object Sanity
- Champs : content (blockContent)
- Rendu : Composant Astro RichText
- Portable Text : Support des blocs et marks Sanity
2. Contrats dâentrĂ©e
Section titled â2. Contrats dâentrĂ©eâ2.1. Structure du bloc
Section titled â2.1. Structure du blocâEntrĂ©e : Configuration du bloc richText dans Sanity Studio
Structure :
{ _type: "richText", content: blockContent}RĂšgles :
content: obligatoire, tableau de blocs Portable Text- Utilisation du schéma
blockContentexistant
2.2. Validation
Section titled â2.2. ValidationâRĂšgles de validation :
content: minimum 1 bloc- Utilisation des rÚgles de validation du schéma
blockContent
3. Contrats de sortie
Section titled â3. Contrats de sortieâ3.1. DonnĂ©es Sanity
Section titled â3.1. DonnĂ©es SanityâSortie : Bloc richText dans le PageBuilder
Format : JSON avec la structure définie ci-dessus
Utilisation :
- Rendu dans le composant Astro RichText
- Utilisation dans le PageBuilder de la page
3.2. Rendu Astro
Section titled â3.2. Rendu AstroâSortie : Composant Astro RichText
Comportement :
- Rendu du Portable Text en HTML
- Support des blocs (paragraphes, listes, headings, etc.)
- Support des marks (bold, italic, links, etc.)
- Responsive design
4. Side effects
Section titled â4. Side effectsâ4.1. Impact sur le rendu
Section titled â4.1. Impact sur le renduâEffet : Le bloc richText nĂ©cessite un composant Astro spĂ©cifique
Impact :
- Création du composant
RichText.astro - Utilisation de
@portabletext/reactou dâun renderer personnalisĂ© - Gestion des styles du Portable Text
4.2. Impact sur les performances
Section titled â4.2. Impact sur les performancesâEffet : Le Portable Text peut ĂȘtre complexe Ă rendre
Impact :
- Optimisation du rendu du Portable Text
- Lazy loading si le contenu est long
5. Erreurs et gestion
Section titled â5. Erreurs et gestionâ5.1. Erreurs potentielles
Section titled â5.1. Erreurs potentiellesâ| Erreur | Cause probable | Solution |
|---|---|---|
| Contenu vide | content vide |
Afficher un message dâerreur ou masquer le bloc |
| Bloc non supporté | Type de bloc non géré par le renderer | Afficher le bloc en fallback ou ignorer |
| Mark non supporté | Type de mark non géré par le renderer | Afficher le texte sans le mark |
5.2. Codes HTTP
Section titled â5.2. Codes HTTPâNon applicable (bloc PageBuilder)
6. Checklist de validation
Section titled â6. Checklist de validationâAvant de passer Ă lâĂ©tape SPEC, vĂ©rifier :
- La structure du bloc est documentée
- Les contrats dâentrĂ©e/sortie sont documentĂ©s
- Les side effects sont identifiés
- Les erreurs potentielles sont documentées
7. Approbation
Section titled â7. ApprobationâValidation requise : Confirmer que la documentation du bloc richText peut passer Ă lâĂ©tape SPEC.
8. Historique des modifications
Section titled â8. Historique des modificationsâ| Date | Version | Description | Auteur |
|---|---|---|---|
| 2026-09-16 | 1.0 | Création initiale | Devin |