commit
7ef71c0d5c
@ -20,6 +20,7 @@
|
|||||||
"database",
|
"database",
|
||||||
"docs",
|
"docs",
|
||||||
"packages",
|
"packages",
|
||||||
|
"rules",
|
||||||
"web"
|
"web"
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 3,
|
"manifest_version": 3,
|
||||||
"name": "Cookie Dialog Monster",
|
"name": "Cookie Dialog Monster",
|
||||||
"version": "7.1.0",
|
"version": "7.1.1",
|
||||||
"default_locale": "en",
|
"default_locale": "en",
|
||||||
"description": "__MSG_appDesc__",
|
"description": "__MSG_appDesc__",
|
||||||
"icons": {
|
"icons": {
|
||||||
|
@ -6,8 +6,130 @@
|
|||||||
"type": "block"
|
"type": "block"
|
||||||
},
|
},
|
||||||
"condition": {
|
"condition": {
|
||||||
"urlFilter": "||cmp.inmobi.com^",
|
"resourceTypes": [
|
||||||
"resourceTypes": ["script"]
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||app.usercentrics.eu^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 2,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||c.evidon.com^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 3,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||cdn.cookielaw.org^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 4,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||cmp.inmobi.com^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 5,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||consent.trustarc.com^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 6,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||optanon.blob.core.windows.net^"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 7,
|
||||||
|
"priority": 1,
|
||||||
|
"action": {
|
||||||
|
"type": "block"
|
||||||
|
},
|
||||||
|
"condition": {
|
||||||
|
"resourceTypes": [
|
||||||
|
"font",
|
||||||
|
"image",
|
||||||
|
"media",
|
||||||
|
"object",
|
||||||
|
"script",
|
||||||
|
"stylesheet",
|
||||||
|
"xmlhttprequest"
|
||||||
|
],
|
||||||
|
"urlFilter": "||wcpstatic.microsoft.com^"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -66,7 +66,10 @@ const options = { childList: true, subtree: true };
|
|||||||
/**
|
/**
|
||||||
* @description Is consent preview page?
|
* @description Is consent preview page?
|
||||||
*/
|
*/
|
||||||
const preview = hostname.startsWith('consent.') || hostname.startsWith('myprivacy.');
|
const preview =
|
||||||
|
(hostname.startsWith('consent.') &&
|
||||||
|
!(hostname.startsWith('consent.google') || hostname.startsWith('consent.youtube'))) ||
|
||||||
|
hostname.startsWith('myprivacy.');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description Elements that were already matched and are removable
|
* @description Elements that were already matched and are removable
|
||||||
@ -191,13 +194,16 @@ function getHostname() {
|
|||||||
* @returns {boolean}
|
* @returns {boolean}
|
||||||
*/
|
*/
|
||||||
function isInViewport(element) {
|
function isInViewport(element) {
|
||||||
|
const styles = window.getComputedStyle(element);
|
||||||
const height = window.innerHeight || document.documentElement.clientHeight;
|
const height = window.innerHeight || document.documentElement.clientHeight;
|
||||||
const position = element.getBoundingClientRect();
|
const position = element.getBoundingClientRect();
|
||||||
const scroll = window.scrollY;
|
const scroll = window.scrollY;
|
||||||
|
const transitioning = styles.transitionDuration !== '0s';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
position.bottom === position.top ||
|
position.bottom === position.top ||
|
||||||
(scroll + position.top <= scroll + height && scroll + position.bottom >= scroll)
|
(scroll + position.top <= scroll + height && scroll + position.bottom >= scroll) ||
|
||||||
|
transitioning
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -235,7 +241,9 @@ function match(element, skipMatch) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (element.hasAttributes()) {
|
const hasAttributes = !!element.getAttributeNames().filter((x) => x !== 'data-nosnippet').length;
|
||||||
|
|
||||||
|
if (hasAttributes) {
|
||||||
// 2023-06-10: fix #113 temporarily
|
// 2023-06-10: fix #113 temporarily
|
||||||
if (element.classList.contains('chat-line__message')) {
|
if (element.classList.contains('chat-line__message')) {
|
||||||
return false;
|
return false;
|
||||||
@ -268,7 +276,11 @@ function match(element, skipMatch) {
|
|||||||
* @returns {void}
|
* @returns {void}
|
||||||
*/
|
*/
|
||||||
function fix() {
|
function fix() {
|
||||||
const backdrops = document.getElementsByClassName('modal-backdrop');
|
const backdrops = document.querySelectorAll([
|
||||||
|
'.modal-backdrop',
|
||||||
|
'.offcanvas-backdrop',
|
||||||
|
'.overlay',
|
||||||
|
]);
|
||||||
const domains = (skips?.domains ?? []).map((x) => (x.split('.').length < 3 ? `*${x}` : x));
|
const domains = (skips?.domains ?? []).map((x) => (x.split('.').length < 3 ? `*${x}` : x));
|
||||||
|
|
||||||
for (const backdrop of backdrops) {
|
for (const backdrop of backdrops) {
|
||||||
@ -320,19 +332,6 @@ function fix() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* @description Calculate reading time for the current page to avoid lags in large pages
|
|
||||||
* @returns {number}
|
|
||||||
*/
|
|
||||||
function readingTime() {
|
|
||||||
const text = document.body.innerText;
|
|
||||||
const wpm = 225;
|
|
||||||
const words = text.trim().split(/\s+/).length;
|
|
||||||
const time = Math.ceil(words / wpm);
|
|
||||||
|
|
||||||
return time;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description Restore DOM to its previous state
|
* @description Restore DOM to its previous state
|
||||||
* @returns {void}
|
* @returns {void}
|
||||||
@ -468,12 +467,18 @@ window.addEventListener(triggerEventName, (event) => {
|
|||||||
if (event.detail?.elements) {
|
if (event.detail?.elements) {
|
||||||
clean(event.detail.elements, event.detail.skipMatch);
|
clean(event.detail.elements, event.detail.skipMatch);
|
||||||
} else {
|
} else {
|
||||||
if (readingTime() < 4) {
|
// 2024-08-03: look into the first level of important nodes, there are dialogs there very often
|
||||||
forceClean(document.body);
|
clean([
|
||||||
} else {
|
...document.body.children,
|
||||||
// 2023-06-13: look into the first level of the document body, there are dialogs there very often
|
...Array.from(document.getElementsByClassName('container')[0]?.children ?? []),
|
||||||
clean([...document.body.children]);
|
...Array.from(document.getElementsByClassName('layout')[0]?.children ?? []),
|
||||||
}
|
...Array.from(document.getElementsByClassName('page')[0]?.children ?? []),
|
||||||
|
...Array.from(document.getElementsByClassName('wrapper')[0]?.children ?? []),
|
||||||
|
...Array.from(document.getElementById('__next')?.children ?? []),
|
||||||
|
...Array.from(document.getElementById('app')?.children ?? []),
|
||||||
|
...Array.from(document.getElementById('main')?.children ?? []),
|
||||||
|
...Array.from(document.getElementById('root')?.children ?? []),
|
||||||
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -488,6 +493,5 @@ window.addEventListener('visibilitychange', async () => {
|
|||||||
if (document.visibilityState === 'visible' && !initiallyVisible) {
|
if (document.visibilityState === 'visible' && !initiallyVisible) {
|
||||||
initiallyVisible = true;
|
initiallyVisible = true;
|
||||||
await run();
|
await run();
|
||||||
window.dispatchEvent(new CustomEvent(triggerEventName));
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user