0520c57b3767
guard ADD_ENTRY with vault.isUnlocked() and surface vault-locked errors with actionable message
- time
- 2026-04-29 16:23 UTC · 6 months ago
- machine
- koh2
- parent
- 7a4d05b32d68
↓ peach-browser-0520c57b.tar.gzatlas at this save
files changed2 files
src/background/messages.ts+1 −0src/popup/views/Add.tsx+9 −1src/background/messages.ts+1 −0
@@ -161,6 +161,7 @@161161 case "GET_ENTRIES":162162 return { ok: true, data: vault.getEntries() };163163 case "ADD_ENTRY": {164+ if (!vault.isUnlocked()) return { ok: false, error: "vault locked" };164165 const entry = await vault.addEntry(msg.payload as any);165166 return { ok: true, data: entry };166167 }src/popup/views/Add.tsx+9 −1
@@ -195,7 +195,15 @@195195 196196 const res = await sendMessage({ type: "ADD_ENTRY", payload });197197 const result = res as { ok: boolean; data?: VaultEntry; error?: string };198- if (!result.ok) { setError(result.error ?? "could not save entry"); setSaving(false); return; }198+ if (!result.ok) {199+ if (result.error === "vault locked") {200+ setError("vault is locked — tap the lock icon to re-enter your master password");201+ } else {202+ setError(result.error ?? "could not save entry");203+ }204+ setSaving(false);205+ return;206+ }199207 await props.onSave(result.data);200208 }201209