Papierkorb: Mehrfachauswahl mit Checkboxen, Sammel-Restore/-Löschen, Alle auswählen #128
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#128
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
UI-Erweiterung (Stefans Wunsch per Chat, 15.07.2026, für den nächsten Meilenstein)
Die Papierkorb-Ansicht (
apps/web/src/pages/TrashPage.tsx, #31) kann bisher nur Seite für Seite wiederherstellen oder endgültig löschen. Gewünscht:Hinweise für die Umsetzung:
POST /pages/:id/restore,DELETE /pages/:id/purge— entweder clientseitig sequenziell/parallel je Auswahl aufrufen oder (sauberer bei großen Mengen) Bulk-Endpoints ergänzen; Entscheidung bei der Planung.Umgesetzt in
48d4c60(clientseitig über die bestehenden Endpoints, wie bei der Planung angedacht — Bulk-Endpoints lohnen bei den realen Mengen nicht): Checkbox je Zeile, Toolbar mit „Alle auswählen“ (natives indeterminate bei Teilauswahl) und den Sammel-Aktionen; Sammel-Löschen bestätigt mit der Anzahl (pluralisiert). Die Abarbeitung ist BEWUSST sequenziell — Purge promotet Restkinder (#107), parallele Baum-Mutationen würden racen. Teil-Fehler stranden den Rest nicht: Schleife läuft weiter, fehlgeschlagene Seiten bleiben ausgewählt (Retry möglich), ein role="alert"-Banner nennt die Anzahl. Einzel-Restore/-Purge laufen durch denselben Pfad und verlieren damit nebenbei ihre bisher unbehandelte Promise-Rejection.trash.spec um den Bulk-Test erweitert (lokaler Pack, 4/4 grün); Restore-Semantik aus #107 unverändert (reihenfolge-unabhängig). Doku (user-guide en+de, features) angepasst.