fix(ux): replace native confirm() dialogs, add undo-toast, fix prefers-reduced-motion
- Replace all 13 native confirm() calls with confirmModal() across 7 page modules - Add confirmModal() to modal.js (Promise-based, danger variant, focus management) - Fix double-confirm bug in contacts.js and budget.js (modal + deleteContact/deleteEntry) - Extend showToast() with onUndo callback and max-3-toast limit - Implement optimistic undo-toast (4s window) for shopping item and bulk-checked delete - Add prefers-reduced-motion guard to btnSuccess() and btnError() in modal.js - Add btn--error-static CSS class as motion-reduced fallback for btnError() - Add toast__undo button styles to layout.css - Add common.confirm and common.undo i18n keys (de, en, it, sv) - Add shopping.itemDeletedToast i18n key (de, en, it, sv)
This commit is contained in:
@@ -26,7 +26,9 @@
|
||||
"nameRequired": "Name ist erforderlich",
|
||||
"contentRequired": "Inhalt ist erforderlich",
|
||||
"all": "Alle",
|
||||
"unknownError": "Unbekannter Fehler"
|
||||
"unknownError": "Unbekannter Fehler",
|
||||
"confirm": "Bestätigen",
|
||||
"undo": "Rückgängig"
|
||||
},
|
||||
|
||||
"nav": {
|
||||
@@ -155,6 +157,7 @@
|
||||
"renameListPrompt": "Neuer Listen-Name:",
|
||||
"deleteListConfirm": "Liste \"{{name}}\" und alle Artikel löschen?",
|
||||
"deletedListToast": "Liste gelöscht.",
|
||||
"itemDeletedToast": "\"{{name}}\" entfernt.",
|
||||
"itemsRemovedToast": "{{count}} Artikel entfernt.",
|
||||
"clearChecked": "Abgehakt löschen ({{count}})",
|
||||
"itemNamePlaceholder": "Artikel hinzufügen…",
|
||||
|
||||
Reference in New Issue
Block a user