Audit complet de mise en forme — Liste à puces/numérotée (4e élément)
Implémente toutes les options manquantes identifiées pour les listes :
typographie complète, style/position/couleur/taille de puce (validés
selon le kind), puce personnalisée en SVG pour les listes à puces,
padding uniforme par élément (nouveau, il n'y en avait aucun), espacement
entre éléments réglable, et tous les attributs de boîte partagés sur la
liste entière. Bordure/fond/padding par élément individuel et sous-listes
imbriquées volontairement différés (portée actée avec l'utilisateur
avant implémentation : transformeraient le stockage des éléments en
objets structurés, chantier bien plus lourd).
Trois ajouts transversaux bénéficiant à plusieurs éléments : sections
"Contenu"/"Conteneur" dans tous les panneaux de propriétés, alignement
vertical du contenu dans son bloc (Titre/Paragraphe/Liste/Image
légendée), et une option pour retirer un thème appliqué ("Aucun modèle"
dans la modale, avec une nouvelle fonction db.remove_document_theme).
Quatre bugs réels trouvés et corrigés en chaîne pendant la validation
avec le thème "Sécurité incendie" : un badge de thème s'affichait
au-dessus du texte au lieu d'à côté ; le correctif a d'abord fait
disparaître les puces/numéros natifs de TOUTES les listes (bug plus
grave que celui corrigé) ; puis un marqueur natif redondant apparaissait
à côté du badge du thème ; puis une règle CSS site-large de spécificité
supérieure empêchait silencieusement ce dernier correctif. Chaque étape
vérifiée par navigateur automatisé sur un support jetable.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
8f879f6321
commit
4db1269348
@@ -80,6 +80,7 @@ from .supports.create_support import create_support
|
||||
from .supports.delete_support import delete_support
|
||||
from .supports.get_document_theme import get_document_theme
|
||||
from .supports.list_supports import list_supports
|
||||
from .supports.remove_document_theme import remove_document_theme
|
||||
from .supports.set_document_theme import set_document_theme
|
||||
from .supports.support_dir import support_dir
|
||||
from .supports.support_meta import support_meta
|
||||
@@ -122,6 +123,7 @@ __all__ = [
|
||||
"support_meta",
|
||||
"delete_support",
|
||||
"get_document_theme",
|
||||
"remove_document_theme",
|
||||
"set_document_theme",
|
||||
"ONBOARDING_TYPES",
|
||||
"DEFAULT_ONBOARDING_TYPE",
|
||||
|
||||
@@ -9,6 +9,7 @@ from .delete_support import delete_support
|
||||
from .ensure_document_pages_schema import ensure_document_pages_schema
|
||||
from .get_document_theme import get_document_theme
|
||||
from .list_supports import list_supports
|
||||
from .remove_document_theme import remove_document_theme
|
||||
from .set_document_theme import set_document_theme
|
||||
from .support_connection import connect_support, install_support_teardown_safety_net
|
||||
from .support_dir import support_dir
|
||||
@@ -25,6 +26,7 @@ __all__ = [
|
||||
"get_document_theme",
|
||||
"install_support_teardown_safety_net",
|
||||
"list_supports",
|
||||
"remove_document_theme",
|
||||
"set_document_theme",
|
||||
"split_slug",
|
||||
"support_dir",
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
from .support_connection import connect_support
|
||||
|
||||
|
||||
def remove_document_theme(slug: str) -> None:
|
||||
"""Retire le thème appliqué (retour utilisateur du 26/09/2026 :
|
||||
"aucun modèle" dans la modale doit "revenir à un document de base")
|
||||
— supprime la LIGNE `_meta` plutôt que d'y stocker une valeur vide,
|
||||
pour que get_document_theme continue de renvoyer `None` (son
|
||||
contrat documenté : "aucun thème n'a jamais été appliqué"), jamais
|
||||
une chaîne vide qui violerait silencieusement ce contrat pour tout
|
||||
appelant qui compare à `None`."""
|
||||
conn = connect_support(slug)
|
||||
conn.execute("DELETE FROM _meta WHERE key = 'theme'")
|
||||
conn.commit()
|
||||
conn.close()
|
||||
Reference in New Issue
Block a user