feat: confirmations destructives de /trash en fenêtre thématisée (v7.45.6)
FlowDeck CI / docker (push) Successful in 1m52s
FlowDeck CI / lint (push) Successful in 1m59s
FlowDeck CI / test (push) Successful in 15m20s

Les 3 confirmations destructives de la poubelle (suppression définitive
unitaire, suppression groupée, Empty Trash) remplacent le confirm() du
navigateur par une fenêtre FlowDeck :

- réutilise les classes flowdeck-modal-overlay / .flowdeck-modal déjà
  présentes dans base.html (variables --bg-secondary / --border / --accent,
  rayon 12 px, boutons Cancel + confirmation coloré) → aucun nouveau CSS ;
- overlay cliquable pour annuler, Échap pour annuler, × pour annuler ;
- bouton de confirmation porteur du libellé exact (Delete / Delete all /
  Empty Trash) et message reprenant le nom de la page ou le nombre de pages ;
- role="alertdialog" aria-modal + aria-labelledby ;
- composant dans trashData() : askConfirm / cancelConfirm / acceptConfirm,
  mutations de propriétés individuelles (pitfall réactivité Alpine) ;
- id #fd-trash-confirm (la classe flowdeck-modal-overlay sert déjà à
  #fd-global-folder-modal → locator unique côté test) ;
- aucun confirm() natif ne subsiste dans trash.html.

Gates : e2e/trash_ui.spec.js étendu — ouverture + titre + message de la
fenêtre, ANNULATION vérifiée (page toujours présente), confirmation
(suppression réelle : plus dans la poubelle + contenu effacé), fenêtre Empty
Trash ouverte/annulée quel que soit le contenu, purge réelle seulement si la
poubelle ne contient que des pages E2E (instance partagée) ; le handler
dialog du test échoue si un dialog natif revient (NATIVE_DIALOG). Suite e2e
11 passed · pytest 1099 passed · ruff OK · OpenAPI 510 chemins / 7.45.6.
This commit is contained in:
2026-10-03 10:16:45 -04:00
parent 6582df3bcb
commit 894004a1f5
8 changed files with 151 additions and 20 deletions
+25
View File
@@ -1,5 +1,30 @@
# Changelog - FlowDeck
## v7.45.6 (2026-10-03) — Fenêtre de confirmation thématisée pour les suppressions de la poubelle
### Changed
- **Les 3 confirmations destructives de /trash** (suppression définitive
unitaire, suppression groupée, **Empty Trash**) remplacent le `confirm()` du
navigateur par une **fenêtre thématisée FlowDeck** : classes
`flowdeck-modal-overlay` / `.flowdeck-modal` déjà présentes dans `base.html`
(variables `--bg-secondary`, `--border`, `--accent`, rayon 12 px), overlay
cliquable pour annuler, **Échap** pour annuler, bouton Cancel + bouton de
confirmation coloré porteur du libellé exact (`Delete` / `Delete all` /
`Empty Trash`), titre + message reprenant le nom de la page ou le nombre de
pages concernées, `role="alertdialog"` + `aria-modal`.
- Aucun `confirm()` natif ne subsiste dans `trash.html` — le composant est
monté dans `trashData()` (`askConfirm` / `cancelConfirm` / `acceptConfirm`,
mutations de propriétés individuelles pour la réactivité Alpine).
### Tests
- `e2e/trash_ui.spec.js` : la fenêtre est ouverte, son titre et son message
vérifiés, **l'annulation est vérifiée** (page toujours présente), puis la
confirmation (suppression réelle : plus dans la poubelle + contenu effacé) et
enfin la purge via Empty Trash. Le handler `dialog` du test échoue
maintenant si un `confirm()`/`alert()` natif revient (`NATIVE_DIALOG`).
## v7.45.5 (2026-10-03) — Poubelle : actions groupées, tri/filtres réels, purge, et 4 bugs
### Added