Documente document_engine/themes/ et replace_document_content, corrige la liste des sous-dossiers dans document_engine.md
document_engine.md listait encore seulement 3 sous-dossiers alors que pages/ existait déjà avant cette session — corrigé au passage. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
864ae697fd
commit
64ee7292d4
@@ -43,6 +43,24 @@ décalage un par un).
|
||||
- **Retour** : aucun.
|
||||
- **Exceptions** : aucune.
|
||||
|
||||
## `replace_document_content(slug: str, seed_pages: list[list[dict[str, Any]]]) -> None`
|
||||
Remplace TOUT le contenu du support par `seed_pages` — utilisée
|
||||
UNIQUEMENT quand le créateur choisit "utiliser le contenu du modèle" en
|
||||
appliquant un thème (voir `routes/document/document_theme_apply.py` et
|
||||
`document_engine/themes/`), jamais appelée sans confirmation explicite
|
||||
côté client (action destructive, irréversible côté serveur). `seed_pages`
|
||||
est une liste de pages, chaque page une liste de blocs
|
||||
`{"kind", "attributes", "children"}` (`children` optionnel, uniquement
|
||||
pour un bloc `kind="row"` — un seul niveau de profondeur, comme le moteur
|
||||
de rangées lui-même). Les attributs fournis sont fusionnés sur
|
||||
`element_default_attributes(kind)`, jamais un remplacement brut. Les
|
||||
nouvelles pages sont créées AVANT que les anciennes soient supprimées
|
||||
(jamais l'inverse) : passer par zéro page, même brièvement, déclenche le
|
||||
filet de sécurité de `ensure_document_pages_schema` (un support a
|
||||
toujours au moins une page), qui recréerait une "Page 1" vide parasite.
|
||||
- **Retour** : aucun.
|
||||
- **Exceptions** : aucune levée explicitement.
|
||||
|
||||
## `delete_document_page(slug: str, page_id: int) -> None`
|
||||
Supprime une page ET ses éléments (`DELETE FROM _document_elements
|
||||
WHERE page_id = ?` explicite — la contrainte `FOREIGN KEY ... ON DELETE
|
||||
|
||||
Reference in New Issue
Block a user