From 5d33d4408453373b8c973ee16bf15e277c1d199c Mon Sep 17 00:00:00 2001 From: wanhose Date: Sat, 24 Aug 2024 09:01:37 +0200 Subject: [PATCH] fix(browser-extension): issue #783 --- .../browser-extension/src/scripts/content.js | 38 +++++++++---------- 1 file changed, 18 insertions(+), 20 deletions(-) diff --git a/packages/browser-extension/src/scripts/content.js b/packages/browser-extension/src/scripts/content.js index fd48417..b277a5f 100644 --- a/packages/browser-extension/src/scripts/content.js +++ b/packages/browser-extension/src/scripts/content.js @@ -260,29 +260,27 @@ function match(element, skipMatch) { const hasAttributes = !!element.getAttributeNames().filter((x) => x !== 'data-nosnippet').length; - if (hasAttributes) { - // 2023-06-10: fix #113 temporarily - if (element.classList.contains('chat-line__message')) { - return false; - } - - // 2024-08-03: fix #701 temporarily - if (element.classList.contains('sellos')) { - return false; - } - - const isDialog = tagName === 'DIALOG' && element.getAttribute('open') === 'true'; - const isFakeDialog = tagName === 'DIV' && element.className.includes('cmp'); - - return ( - (isDialog || isFakeDialog || isInViewport(element)) && - (skipMatch || element.matches(tokens.selectors)) - ); - } else { + if (!hasAttributes && !tagName.includes('-')) { forceClean(element); } - return false; + // 2023-06-10: fix #113 temporarily + if (element.classList.contains('chat-line__message')) { + return false; + } + + // 2024-08-03: fix #701 temporarily + if (element.classList.contains('sellos')) { + return false; + } + + const isDialog = tagName === 'DIALOG' && element.getAttribute('open') === 'true'; + const isFakeDialog = tagName === 'DIV' && element.className.includes('cmp'); + + return ( + (isDialog || isFakeDialog || isInViewport(element)) && + (skipMatch || element.matches(tokens.selectors)) + ); } /**