From 5e67e15842da731e91e759ae85aadb14a1911aab Mon Sep 17 00:00:00 2001 From: Gabe Date: Wed, 15 Oct 2025 14:40:58 +0800 Subject: [PATCH] feat: clear caches in popup --- src/background.js | 2 ++ src/config/msg.js | 3 ++- src/libs/cache.js | 7 ++++++- src/views/Popup/index.js | 8 +++----- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/background.js b/src/background.js index db945fb..0d4ee60 100644 --- a/src/background.js +++ b/src/background.js @@ -23,6 +23,7 @@ import { CMD_OPEN_TRANBOX, CLIENT_THUNDERBIRD, MSG_SET_LOGLEVEL, + MSG_CLEAR_CACHES, } from "./config"; import { getSettingWithDefault, tryInitDefaultData } from "./libs/storage"; import { trySyncSettingAndRules } from "./libs/sync"; @@ -275,6 +276,7 @@ const messageHandlers = { [MSG_BUILTINAI_DETECT]: (args) => chromeDetect(args), [MSG_BUILTINAI_TRANSLATE]: (args) => chromeTranslate(args), [MSG_SET_LOGLEVEL]: (args) => logger.setLevel(args), + [MSG_CLEAR_CACHES]: () => tryClearCaches(), }; /** diff --git a/src/config/msg.js b/src/config/msg.js index 942ae2e..f74f542 100644 --- a/src/config/msg.js +++ b/src/config/msg.js @@ -3,7 +3,7 @@ export const CMD_TOGGLE_STYLE = "toggleStyle"; export const CMD_OPEN_OPTIONS = "openOptions"; export const CMD_OPEN_TRANBOX = "openTranbox"; -export const MSG_FETCH = "fetch"; +export const MSG_FETCH = "kiss_fetch"; export const MSG_GET_HTTPCACHE = "get_httpcache"; export const MSG_PUT_HTTPCACHE = "put_httpcache"; export const MSG_OPEN_OPTIONS = "open_options"; @@ -25,6 +25,7 @@ export const MSG_UPDATE_CSP = "update_csp"; export const MSG_BUILTINAI_DETECT = "builtinai_detect"; export const MSG_BUILTINAI_TRANSLATE = "builtinai_translte"; export const MSG_SET_LOGLEVEL = "set_loglevel"; +export const MSG_CLEAR_CACHES = "clear_caches"; export const MSG_XHR_DATA_YOUTUBE = "KISS_XHR_DATA_YOUTUBE"; // export const MSG_GLOBAL_VAR_FETCH = "KISS_GLOBAL_VAR_FETCH"; diff --git a/src/libs/cache.js b/src/libs/cache.js index 538980d..9a9239a 100644 --- a/src/libs/cache.js +++ b/src/libs/cache.js @@ -1,6 +1,7 @@ import { CACHE_NAME, DEFAULT_CACHE_TIMEOUT, + MSG_CLEAR_CACHES, MSG_GET_HTTPCACHE, MSG_PUT_HTTPCACHE, } from "../config"; @@ -15,7 +16,11 @@ import { blobToBase64 } from "./utils"; */ export const tryClearCaches = async () => { try { - caches.delete(CACHE_NAME); + if (isExt && !isBg) { + await sendBgMsg(MSG_CLEAR_CACHES); + } else { + await caches.delete(CACHE_NAME); + } } catch (err) { kissLog("clean caches", err); } diff --git a/src/views/Popup/index.js b/src/views/Popup/index.js index 3c8153e..2c560a7 100644 --- a/src/views/Popup/index.js +++ b/src/views/Popup/index.js @@ -471,11 +471,9 @@ export default function Popup({ setShowPopup, translator }) { - {!isExt && ( - - )} +