From c6e3b567b9bcdaa02bf1244f576b9cebb9d46c51 Mon Sep 17 00:00:00 2001 From: Gabe Yuan Date: Tue, 8 Aug 2023 18:16:00 +0800 Subject: [PATCH] fix global rule bug --- src/libs/index.js | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/libs/index.js b/src/libs/index.js index 3f259a9..de2adfe 100644 --- a/src/libs/index.js +++ b/src/libs/index.js @@ -41,25 +41,28 @@ export const getRules = async () => (await storage.getObj(STOKEY_RULES)) || []; */ export const matchRule = (rules, href) => { const rule = rules.find((rule) => - rule.pattern - .split(",") - .some((p) => p.trim() === "*" || href.includes(p.trim())) + rule.pattern.split(",").some((p) => href.includes(p.trim())) ); + const globalRule = + rules.find((rule) => + rule.pattern.split(",").some((p) => p.trim() === "*") + ) || GLOBLA_RULE; if (!rule) { - return GLOBLA_RULE; + return globalRule; } - if (!rule?.selector?.trim()) { - rule.selector = GLOBLA_RULE.selector; - } + rule.selector = + rule?.selector?.trim() || + globalRule?.selector?.trim() || + GLOBLA_RULE.selector; - rule.bgColor = rule?.bgColor?.trim() || GLOBLA_RULE?.bgColor?.trim(); + rule.bgColor = rule?.bgColor?.trim() || globalRule?.bgColor?.trim(); ["translator", "fromLang", "toLang", "textStyle", "transOpen"].forEach( (key) => { if (rule[key] === GLOBAL_KEY) { - rule[key] = GLOBLA_RULE[key]; + rule[key] = globalRule[key]; } } );