|
|
|
@ -515,17 +515,18 @@ export const calcCacheSizes = async () => {
|
|
|
|
|
export const clearAllCaches = async (cb) => {
|
|
|
|
|
try {
|
|
|
|
|
// 1. Clear the service worker cache
|
|
|
|
|
if (navigator.serviceWorker) {
|
|
|
|
|
if ('caches' in window) {
|
|
|
|
|
// if (navigator.serviceWorker) {
|
|
|
|
|
const cacheNames = await caches.keys();
|
|
|
|
|
await Promise.all(cacheNames.map((name) => caches.delete(name)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 2. Clear the disk cache (HTTP cache)
|
|
|
|
|
const diskCacheName = 'disk-cache';
|
|
|
|
|
await window.caches.delete(diskCacheName);
|
|
|
|
|
const diskCache = await window.caches.open(diskCacheName);
|
|
|
|
|
const diskCacheKeys = await diskCache.keys();
|
|
|
|
|
await Promise.all(diskCacheKeys.map((request) => diskCache.delete(request)));
|
|
|
|
|
// const diskCacheName = 'disk-cache';
|
|
|
|
|
// await window.caches.delete(diskCacheName);
|
|
|
|
|
// const diskCache = await window.caches.open(diskCacheName);
|
|
|
|
|
// const diskCacheKeys = await diskCache.keys();
|
|
|
|
|
// await Promise.all(diskCacheKeys.map((request) => diskCache.delete(request)));
|
|
|
|
|
|
|
|
|
|
// 3. Clear the IndexedDB cache
|
|
|
|
|
const indexedDBNames = await window.indexedDB.databases();
|
|
|
|
|