Skip to content

Commit cc953d4

Browse files
authored
fix: clean opfs backup when logout (#1748)
- Closes #1750 - Closes FE-1247
1 parent 9cb81db commit cc953d4

File tree

3 files changed

+25
-4
lines changed

3 files changed

+25
-4
lines changed

.changeset/friendly-cows-explode.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"fuels-wallet": patch
3+
---
4+
5+
fix: clean opfs when logging out
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,26 @@
1+
import { IS_LOGGED_KEY } from '~/config';
2+
import { clearParallelDb } from '~/systems/Core/utils/databaseNoDexie';
13
import { VaultService } from '~/systems/Vault';
24
import { db } from '../utils/database';
5+
import { cleanOPFS } from '../utils/opfs';
36
import { Storage } from '../utils/storage';
47
import { chromeStorage } from './chromeStorage';
5-
import { clearParallelDb } from '~/systems/Core/utils/databaseNoDexie';
6-
import { IS_LOGGED_KEY } from '~/config';
78

89
// biome-ignore lint/complexity/noStaticOnlyClass: <explanation>
910
export class CoreService {
1011
static async clear() {
11-
await chromeStorage.clear();
1212
await VaultService.clear();
1313
await db.clear();
14-
Storage.clear();
1514
await clearParallelDb();
15+
try {
16+
// this ones can fail depending on environment
17+
Storage.clear();
18+
await chromeStorage.clear();
19+
await cleanOPFS();
20+
} catch (e) {
21+
console.error(e);
22+
}
23+
1624
const reloadAfterCleanCompleted = () => {
1725
const isLogged = Storage.getItem(IS_LOGGED_KEY);
1826
if (!isLogged) {
@@ -21,6 +29,7 @@ export class CoreService {
2129
}
2230
setTimeout(() => reloadAfterCleanCompleted(), 50);
2331
};
32+
2433
reloadAfterCleanCompleted();
2534
}
2635
}

packages/app/src/systems/Core/utils/opfs.ts

+7
Original file line numberDiff line numberDiff line change
@@ -35,3 +35,10 @@ export async function readFromOPFS() {
3535
return {};
3636
}
3737
}
38+
39+
// create a function to clean opfs
40+
export async function cleanOPFS() {
41+
const root = await initOPFS();
42+
if (!root) return;
43+
await root.removeEntry('backup.json');
44+
}

0 commit comments

Comments
 (0)