refactor(config): one Save/Discard bar instead of per-field Save

Per-field Save buttons were an unconventional, endpoint-driven choice. Replace
them with a single drafted Save/Discard bar (consistent with the Settings page):
edits are buffered and applied together on Save (each via the existing per-key
PATCH/DELETE), Discard reverts. Reset-to-default is a per-field affordance applied
on Save too — clearing a non-secret falls back to default; a secret (which can't
be cleared by emptying) gets a toggle that resets it on save. Backend unchanged.
This commit is contained in:
npeter83 2026-06-19 12:40:23 +02:00
parent 7d71c205b2
commit 8198c7712e
4 changed files with 171 additions and 81 deletions

View file

@ -12,8 +12,12 @@
"smtp_password": { "label": "SMTP-Passwort", "hint": "App-Passwort. Verschlüsselt gespeichert; nur schreibbar — wird nie wieder angezeigt." }
},
"save": "Speichern",
"saving": "Speichern…",
"saved": "Gespeichert",
"saveFailed": "Speichern fehlgeschlagen",
"unsaved": "Nicht gespeicherte Änderungen",
"discard": "Verwerfen",
"willReset": "wird beim Speichern auf den Standard zurückgesetzt",
"reset": "Zurücksetzen",
"resetHint": "Diese Überschreibung entfernen und auf den Datei-/Env-Standard zurückfallen.",
"resetDone": "Auf Standard zurückgesetzt",

View file

@ -12,8 +12,12 @@
"smtp_password": { "label": "SMTP password", "hint": "App password. Stored encrypted; write-only — it's never shown back." }
},
"save": "Save",
"saving": "Saving…",
"saved": "Saved",
"saveFailed": "Couldn't save",
"unsaved": "Unsaved changes",
"discard": "Discard",
"willReset": "will reset to default on save",
"reset": "Reset",
"resetHint": "Remove this override and fall back to the file/env default.",
"resetDone": "Reset to default",

View file

@ -12,8 +12,12 @@
"smtp_password": { "label": "SMTP-jelszó", "hint": "Alkalmazásjelszó. Titkosítva tárolva; csak írható — soha nem jelenik meg újra." }
},
"save": "Mentés",
"saving": "Mentés…",
"saved": "Elmentve",
"saveFailed": "Nem sikerült menteni",
"unsaved": "Nem mentett változások",
"discard": "Elvetés",
"willReset": "mentéskor visszaáll alapértékre",
"reset": "Visszaállítás",
"resetHint": "Eltávolítja ezt a felülírást, és visszatér a fájl/env alapértékhez.",
"resetDone": "Visszaállítva az alapértékre",