Fix: Resilient boot with localStorage error handling

This commit is contained in:
2026-03-21 01:41:58 -07:00
parent ac7e209505
commit 870a1fb3a9

View File

@@ -166,7 +166,20 @@ function boot() {
el.setupSave?.addEventListener('click', () => { el.setupSave?.addEventListener('click', () => {
const key = (el.setupKey?.value || '').trim(); const key = (el.setupKey?.value || '').trim();
if (!key) return; if (!key) return;
try {
setApiKey(key); setApiKey(key);
} catch (e) {
console.warn('localStorage write failed, clearing and retrying:', e);
try {
localStorage.removeItem('vibegif_api_key');
localStorage.clear();
setApiKey(key);
} catch (e2) {
console.error('localStorage completely broken:', e2);
alert('Could not save API key — localStorage may be full or blocked. Try clearing site data.');
return;
}
}
if (el.setupKey) el.setupKey.value = ''; if (el.setupKey) el.setupKey.value = '';
showMain(); showMain();
}); });