Retour utilisateur du 23/09/2026 : "si il n'y a plus de place sur la page il faut automatiquement créer une autre page [et y] coller le contenu et amener l'utilisateur sur la page" — remplace le comportement précédent (overflow:hidden, contenu clipsé, à gérer manuellement). - Nouvelle capacité serveur : document_engine.move_document_element_to_page (+ route POST /document/<slug>/elements/<id>/move-to-page) déplace un élément (et ses enfants de rangée en cascade) vers une AUTRE page — jusqu'ici move_document_element ne gérait que le réordonnancement DANS la même page. - Client : forgeDocCheckPageOverflow, appelée à la fin de CHAQUE forgeDocRefreshCanvas (point d'entrée unique après toute mutation) : mesure le débordement réel (scrollHeight vs clientHeight), trouve le premier élément top-niveau qui dépasse le bas de la page (getBoundingClientRect, tient compte du zoom), déplace cet élément et tout ce qui le suit vers une page neuve, puis y bascule l'utilisateur. Jamais déclenché sur une page mini-jeu (toujours seule sur sa page, aucun débordement pertinent à corriger). Vérifié par un test jsdom dédié (géométrie simulée via getBoundingClientRect/scrollHeight/clientHeight, jsdom n'ayant pas de vrai moteur de mise en page) : ordre des déplacements, page inchangée si le contenu tient, page mini-jeu jamais scindée. 6 nouveaux tests Python (document_engine + route). 711/711 tests passent. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
21 lines
707 B
Python
21 lines
707 B
Python
"""Routes HTTP du support de formation (document unique, mise en page
|
|
automatique, mini-jeux — voir docs/plan/PLAN.md). Entité racine séparée du
|
|
jeu 2D : ne reprend rien de routes/game/ (pas de notion d'écran, pas de
|
|
Flow déclencheur événement->action, c'est exclusif à routes/game/)."""
|
|
|
|
from . import ( # noqa: F401 - enregistre les routes definies dans chaque module
|
|
document_delete,
|
|
document_edit,
|
|
document_element_add,
|
|
document_element_delete,
|
|
document_element_move,
|
|
document_element_move_to_page,
|
|
document_element_update,
|
|
document_new,
|
|
document_page_add,
|
|
document_page_delete,
|
|
document_page_move,
|
|
document_page_rename,
|
|
document_render,
|
|
)
|