diff --git a/CLAUDE.md b/CLAUDE.md index 735aa35..2bd63a5 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -3353,16 +3353,24 @@ un cran trop haut qu'un catalogue qui ne s'affiche plus. Un test le verrouille. reste un vrai lien vers `/series/{id}`. ⚠️ **`aria-expanded="@Deplie"` ne fait pas ce qu'on croit** : Blazor traite un booléen comme un -attribut de *présence* et rend `aria-expanded=""`, que les lecteurs d'écran ne savent pas lire. -L'état doit être écrit en toutes lettres (`@(Deplie ? "true" : "false")`). Constaté ici, mesuré -dans le navigateur — **le même défaut subsiste ailleurs** (`ArbreSerie`, le bouton « Filtrer » du -catalogue), non corrigé faute d'être dans la demande. +attribut de *présence*, à la manière de `disabled` — vrai rend `aria-expanded=""`, faux **retire +l'attribut**. Or ARIA attend les chaînes « true » et « false », et un lecteur d'écran ne sait lire +aucune des deux formes produites : replié, le bouton ne s'annonce plus comme repliable du tout. + +Le défaut était passé inaperçu **six fois** — il ne se voit pas à l'écran, et aucun test ne rend +de balisage. `Services/Aria.cs` porte donc la mise en garde et la conversion +(`aria-expanded="@Aria.Etat(_ouvert)"`), appliquée partout : bascule du menu, bouton « Filtrer » +du catalogue et de la bibliographie, dépli d'une œuvre bibliographique, arbre des séries, blocs +du catalogue. ⚠️ **Une fonction plutôt qu'un ternaire recopié** : un booléen nu se lit comme +correct à la relecture, un appel nommé se remarque quand il manque. + +Vérifié en exécution sur les six : « false » à l'état replié, « true » une fois ouvert. **Vérifié en exécution** (375 px puis 320 px) : le cycle *La Légende de Drizzt* coiffe ses deux sous-séries, chaque niveau se replie et se déplie indépendamment, l'état d'un sous-niveau survit au repli de son cycle, le compteur reste « 6 livres » dans tous les cas, le repli survit à une recherche (« salvatore ») et à son effacement, le nom mène toujours à `/series/6`, aucun -débordement horizontal (`scrollWidth` = 320) et aucune erreur de console. 627 tests au vert. +débordement horizontal (`scrollWidth` = 320) et aucune erreur de console. 628 tests au vert. **Vérifié en exécution** (320 px puis 1280 px, base de développement garnie de trois tomes et d'un livre hors série) : blocs « L'Elfe noir » (2 tomes, dans l'ordre de **lecture** — l'inverse diff --git a/MaBibli.Client/Composants/ArbreSerie.razor b/MaBibli.Client/Composants/ArbreSerie.razor index 7ea119f..0292e7e 100644 --- a/MaBibli.Client/Composants/ArbreSerie.razor +++ b/MaBibli.Client/Composants/ArbreSerie.razor @@ -16,7 +16,7 @@