fix(data): issue #269
This commit is contained in:
commit
968f2f406a
@ -15,6 +15,7 @@ gdprCookieBanner-acceptedAll
|
|||||||
hasCookieBanner
|
hasCookieBanner
|
||||||
ibeugdpr-disabled
|
ibeugdpr-disabled
|
||||||
modal--is-open
|
modal--is-open
|
||||||
|
modal-open
|
||||||
no-scroll
|
no-scroll
|
||||||
no_scroll
|
no_scroll
|
||||||
shopee-no-scroll
|
shopee-no-scroll
|
||||||
|
@ -12769,3 +12769,8 @@ tp-yt-iron-overlay-backdrop
|
|||||||
#wxp_gdpr_container
|
#wxp_gdpr_container
|
||||||
.privacy-consent--modal
|
.privacy-consent--modal
|
||||||
.privacy-consent--backdrop
|
.privacy-consent--backdrop
|
||||||
|
#cheerfy-cookies-modal--wrapper
|
||||||
|
script[src*="wirkaufendeinauto.de"] + div.modal-root > div
|
||||||
|
#bcc-outer
|
||||||
|
#StickieCookies
|
||||||
|
[class="block z-50 w-full max-w-full md:max-w-small fixed bottom-0 left-0 md:bottom-[20px] md:left-[20px]"]
|
||||||
|
@ -22,3 +22,5 @@ steamcommunity.com
|
|||||||
substack.com
|
substack.com
|
||||||
sucuri.net
|
sucuri.net
|
||||||
youtube.com
|
youtube.com
|
||||||
|
godotvr.github.io
|
||||||
|
tesla.com
|
@ -21,7 +21,7 @@ export default (server: FastifyInstance, options: RouteShorthandOptions, done: (
|
|||||||
|
|
||||||
reply.send({
|
reply.send({
|
||||||
data: {
|
data: {
|
||||||
classes: (await results[0].text()).split('\n'),
|
classes: (await results[0].text()).split('\n').filter((x) => !!x),
|
||||||
commonWords: [
|
commonWords: [
|
||||||
'banner',
|
'banner',
|
||||||
'cc',
|
'cc',
|
||||||
@ -37,10 +37,10 @@ export default (server: FastifyInstance, options: RouteShorthandOptions, done: (
|
|||||||
'popup',
|
'popup',
|
||||||
'privacy',
|
'privacy',
|
||||||
],
|
],
|
||||||
elements: (await results[1].text()).split('\n'),
|
elements: (await results[1].text()).split('\n').filter((x) => !!x),
|
||||||
fixes: (await results[2].text()).split('\n'),
|
fixes: (await results[2].text()).split('\n').filter((x) => !!x),
|
||||||
skips: (await results[3].text()).split('\n'),
|
skips: (await results[3].text()).split('\n').filter((x) => !!x),
|
||||||
tags: (await results[4].text()).split('\n'),
|
tags: (await results[4].text()).split('\n').filter((x) => !!x),
|
||||||
},
|
},
|
||||||
success: true,
|
success: true,
|
||||||
});
|
});
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Hat jemand Dialoge zur Cookie-Zustimmung gesagt? 😋"
|
"message": "Hat jemand Dialoge zur Cookie-Zustimmung gesagt? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Webseite melden..."
|
"message": "Diese Website melden"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Ausnahmeliste verwalten"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Liste leeren"
|
"message": "Liste leeren"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Did someone say cookie consent dialogs? 😋"
|
"message": "Did someone say cookie consent dialogs? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Report site..."
|
"message": "Report this website"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Manage exclusion list"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Clear list"
|
"message": "Clear list"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "¿Alguien dijo diálogos de consentimiento de cookies? 😋"
|
"message": "¿Alguien dijo diálogos de consentimiento de cookies? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Reportar sitio..."
|
"message": "Reportar este sitio web"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gestionar lista de exclusión"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Borrar lista"
|
"message": "Borrar lista"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Quelqu'un a-t-il dit boîtes de dialogue de consentement aux cookies? 😋"
|
"message": "Quelqu'un a-t-il dit boîtes de dialogue de consentement aux cookies? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Signaler le site..."
|
"message": "Signaler ce site web"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gérer la liste d'exclusion"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Effacer la liste"
|
"message": "Effacer la liste"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Qualcuno ha detto finestre di dialogo per il consenso ai cookie? 😋"
|
"message": "Qualcuno ha detto finestre di dialogo per il consenso ai cookie? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Segnala sito..."
|
"message": "Segnala questo sito web"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gestisci elenco di esclusione"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Cancella elenco"
|
"message": "Cancella elenco"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
|
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Reportar site..."
|
"message": "Denunciar este site"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gerenciar lista de exclusão"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Limpar lista"
|
"message": "Limpar lista"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
|
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Reportar site..."
|
"message": "Denunciar este site"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gerenciar lista de exclusão"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Limpar lista"
|
"message": "Limpar lista"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "A spus cineva dialoguri de consimțământ pentru cookie? 😋"
|
"message": "A spus cineva dialoguri de consimțământ pentru cookie? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Raportați site-ul..."
|
"message": "Raportați acest site web"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Gestionați lista de excludere"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Ștergeți lista"
|
"message": "Ștergeți lista"
|
||||||
|
@ -3,7 +3,10 @@
|
|||||||
"message": "Кто-то сказал диалоги согласия на использование файлов cookie? 😋"
|
"message": "Кто-то сказал диалоги согласия на использование файлов cookie? 😋"
|
||||||
},
|
},
|
||||||
"contextMenu_reportOption": {
|
"contextMenu_reportOption": {
|
||||||
"message": "Сообщить о сайте..."
|
"message": "Сообщить об этом веб-сайте"
|
||||||
|
},
|
||||||
|
"contextMenu_settingsOption": {
|
||||||
|
"message": "Управление списком исключений"
|
||||||
},
|
},
|
||||||
"options_clearButton": {
|
"options_clearButton": {
|
||||||
"message": "Очистить список"
|
"message": "Очистить список"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"manifest_version": 3,
|
"manifest_version": 3,
|
||||||
"name": "Cookie Dialog Monster",
|
"name": "Cookie Dialog Monster",
|
||||||
"version": "6.4.1",
|
"version": "6.4.3",
|
||||||
"default_locale": "en",
|
"default_locale": "en",
|
||||||
"description": "__MSG_appDesc__",
|
"description": "__MSG_appDesc__",
|
||||||
"icons": {
|
"icons": {
|
||||||
@ -23,21 +23,22 @@
|
|||||||
"all_frames": true,
|
"all_frames": true,
|
||||||
"exclude_matches": [
|
"exclude_matches": [
|
||||||
"*://*.googleapis.com/embed/*",
|
"*://*.googleapis.com/embed/*",
|
||||||
|
"*://*.codesandbox.io/*",
|
||||||
"*://*.sharepoint.com/*",
|
"*://*.sharepoint.com/*",
|
||||||
"*://*.youtube.com/embed/*",
|
"*://*.youtube.com/embed/*",
|
||||||
"*://*.youtube-nocookie.com/embed/*",
|
"*://*.youtube-nocookie.com/embed/*",
|
||||||
"https://translate.google.ca/*",
|
"*://translate.google.ca/*",
|
||||||
"https://translate.google.co.in/*",
|
"*://translate.google.co.in/*",
|
||||||
"https://translate.google.co.jp/*",
|
"*://translate.google.co.jp/*",
|
||||||
"https://translate.google.co.uk/*",
|
"*://translate.google.co.uk/*",
|
||||||
"https://translate.google.com.au/*",
|
"*://translate.google.com.au/*",
|
||||||
"https://translate.google.com.br/*",
|
"*://translate.google.com.br/*",
|
||||||
"https://translate.google.com/*",
|
"*://translate.google.com/*",
|
||||||
"https://translate.google.de/*",
|
"*://translate.google.de/*",
|
||||||
"https://translate.google.es/*",
|
"*://translate.google.es/*",
|
||||||
"https://translate.google.fr/*",
|
"*://translate.google.fr/*",
|
||||||
"https://translate.google.it/*",
|
"*://translate.google.it/*",
|
||||||
"https://www.cookie-dialog-monster.com/*"
|
"*://www.cookie-dialog-monster.com/*"
|
||||||
],
|
],
|
||||||
"js": ["scripts/content.js", "scripts/dialog.js"],
|
"js": ["scripts/content.js", "scripts/dialog.js"],
|
||||||
"matches": ["http://*/*", "https://*/*"],
|
"matches": ["http://*/*", "https://*/*"],
|
||||||
|
@ -10,7 +10,21 @@ const apiUrl = 'https://api.cookie-dialog-monster.com/rest/v2';
|
|||||||
* @type {string}
|
* @type {string}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const reportMenuItemId = 'REPORT';
|
const extensionMenuItemId = 'CDM-MENU';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description Context menu identifier
|
||||||
|
* @type {string}
|
||||||
|
*/
|
||||||
|
|
||||||
|
const reportMenuItemId = 'CDM-REPORT';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description Context menu identifier
|
||||||
|
* @type {string}
|
||||||
|
*/
|
||||||
|
|
||||||
|
const settingsMenuItemId = 'CDM-SETTINGS';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description A shortcut for chrome.scripting
|
* @description A shortcut for chrome.scripting
|
||||||
@ -67,6 +81,9 @@ chrome.contextMenus.onClicked.addListener((info, tab) => {
|
|||||||
case reportMenuItemId:
|
case reportMenuItemId:
|
||||||
if (tab) chrome.tabs.sendMessage(tab.id, { type: 'SHOW_REPORT_DIALOG' });
|
if (tab) chrome.tabs.sendMessage(tab.id, { type: 'SHOW_REPORT_DIALOG' });
|
||||||
break;
|
break;
|
||||||
|
case settingsMenuItemId:
|
||||||
|
chrome.runtime.openOptionsPage();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -153,10 +170,24 @@ chrome.runtime.onMessage.addListener((message, sender, callback) => {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
chrome.runtime.onInstalled.addListener(() => {
|
chrome.runtime.onInstalled.addListener(() => {
|
||||||
|
chrome.contextMenus.create({
|
||||||
|
contexts: ['all'],
|
||||||
|
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
|
||||||
|
id: extensionMenuItemId,
|
||||||
|
title: 'Cookie Dialog Monster',
|
||||||
|
});
|
||||||
|
chrome.contextMenus.create({
|
||||||
|
contexts: ['all'],
|
||||||
|
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
|
||||||
|
id: settingsMenuItemId,
|
||||||
|
parentId: extensionMenuItemId,
|
||||||
|
title: chrome.i18n.getMessage('contextMenu_settingsOption'),
|
||||||
|
});
|
||||||
chrome.contextMenus.create({
|
chrome.contextMenus.create({
|
||||||
contexts: ['all'],
|
contexts: ['all'],
|
||||||
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
|
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
|
||||||
id: reportMenuItemId,
|
id: reportMenuItemId,
|
||||||
|
parentId: extensionMenuItemId,
|
||||||
title: chrome.i18n.getMessage('contextMenu_reportOption'),
|
title: chrome.i18n.getMessage('contextMenu_reportOption'),
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -144,7 +144,7 @@ function fix() {
|
|||||||
const backdrop = document.getElementsByClassName('modal-backdrop')[0];
|
const backdrop = document.getElementsByClassName('modal-backdrop')[0];
|
||||||
const facebook = document.getElementsByClassName('_31e')[0];
|
const facebook = document.getElementsByClassName('_31e')[0];
|
||||||
const fixes = data?.fixes ?? [];
|
const fixes = data?.fixes ?? [];
|
||||||
const skips = data?.skips ?? [];
|
const skips = (data?.skips ?? []).map((x) => (x.split('.').length < 3 ? `*${x}` : x));
|
||||||
|
|
||||||
if (backdrop?.children.length === 0) {
|
if (backdrop?.children.length === 0) {
|
||||||
backdrop.remove();
|
backdrop.remove();
|
||||||
@ -177,7 +177,7 @@ function fix() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (skips.indexOf(hostname) === -1) {
|
if (skips.some((x) => !hostname.match(x.replace(/\*/g, '[^ ]*')))) {
|
||||||
for (const element of [document.body, document.documentElement]) {
|
for (const element of [document.body, document.documentElement]) {
|
||||||
element?.classList.remove(...(data?.classes ?? []));
|
element?.classList.remove(...(data?.classes ?? []));
|
||||||
element?.style.setProperty('position', 'initial', 'important');
|
element?.style.setProperty('position', 'initial', 'important');
|
||||||
@ -245,7 +245,7 @@ const observer = new MutationObserver((mutations) => {
|
|||||||
window.addEventListener('focus', async () => {
|
window.addEventListener('focus', async () => {
|
||||||
if (!data) {
|
if (!data) {
|
||||||
await runSetup(true);
|
await runSetup(true);
|
||||||
forceClean(document.body);
|
clean([...document.body.children]);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -119,15 +119,17 @@ async function handleDeleteClick(event) {
|
|||||||
function handleExportClick() {
|
function handleExportClick() {
|
||||||
const anchor = document.createElement('a');
|
const anchor = document.createElement('a');
|
||||||
const now = new Date();
|
const now = new Date();
|
||||||
const day = now.getUTCDay().toString().padStart(2, '0');
|
const day = now.getDate().toString().padStart(2, '0');
|
||||||
const month = now.getUTCMonth().toString().padStart(2, '0');
|
const month = now.getMonth().toString().padStart(2, '0');
|
||||||
const year = now.getUTCFullYear();
|
const year = now.getUTCFullYear();
|
||||||
const text = exclusionList.join('\n');
|
const text = exclusionList.join('\n');
|
||||||
|
const defaultTitle = `${year}${month}${day}`;
|
||||||
|
const customTitle = window.prompt('Enter a file name', defaultTitle);
|
||||||
const blob = new Blob([text], { type: 'octet/stream' });
|
const blob = new Blob([text], { type: 'octet/stream' });
|
||||||
const url = window.URL.createObjectURL(blob);
|
const url = window.URL.createObjectURL(blob);
|
||||||
|
|
||||||
anchor.href = url;
|
anchor.href = url;
|
||||||
anchor.download = `${year}${month}${day}.cdm`;
|
anchor.download = `${customTitle || defaultTitle}.cdm`;
|
||||||
anchor.click();
|
anchor.click();
|
||||||
window.URL.revokeObjectURL(url);
|
window.URL.revokeObjectURL(url);
|
||||||
}
|
}
|
||||||
|
BIN
packages/web/src/images/options.png
Normal file
BIN
packages/web/src/images/options.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 28 KiB |
Binary file not shown.
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 15 KiB |
Binary file not shown.
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 72 KiB |
@ -1,4 +1,4 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html class="scroll-smooth" lang="en">
|
<html class="scroll-smooth" lang="en">
|
||||||
<head>
|
<head>
|
||||||
<title>Cookie Dialog Monster | Did someone say cookie consent dialogs?</title>
|
<title>Cookie Dialog Monster | Did someone say cookie consent dialogs?</title>
|
||||||
@ -172,9 +172,9 @@
|
|||||||
<div class="md:mt-14">
|
<div class="md:mt-14">
|
||||||
<h2>A powerful popup to manage all from a single place</h2>
|
<h2>A powerful popup to manage all from a single place</h2>
|
||||||
<p class="mt-8 text-gray-500 text-xl">
|
<p class="mt-8 text-gray-500 text-xl">
|
||||||
Disable our extension if you would like to accept cookies in a specific page, rate us,
|
Disable the extension if you would like to accept cookies in a specific page, contribute
|
||||||
refresh the current page cleaning the cache or start a conversation because you need
|
to the project, open settings to manage the exclusion list, help us rating the extension
|
||||||
help.
|
or start a conversation because you need help.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<img alt="Extension Popup" class="image" src="/images/popup.png" />
|
<img alt="Extension Popup" class="image" src="/images/popup.png" />
|
||||||
@ -194,6 +194,20 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="flex flex-col gap-8 md:flex-row md:gap-20 md:py-20 py-10">
|
||||||
|
<div class="md:mt-14">
|
||||||
|
<h2>Manage your exclusions</h2>
|
||||||
|
<p class="mt-8 text-gray-500 text-xl">
|
||||||
|
Clear, import and export your preferences with one click. Users have full control over
|
||||||
|
which websites should be exempt from the cookie consent dialog removal functionality.
|
||||||
|
</p>
|
||||||
|
<p class="mt-4 text-gray-500 text-xl">
|
||||||
|
This feature is especially useful for websites that have unique cookie consent dialog
|
||||||
|
implementations or where the extension may cause unintended side effects.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<img alt="Extension Options" class="image" src="/images/options.png" />
|
||||||
|
</div>
|
||||||
<div class="md:py-20 py-10">
|
<div class="md:py-20 py-10">
|
||||||
<div class="md:text-center">
|
<div class="md:text-center">
|
||||||
<h2>A better way to surf the Internet</h2>
|
<h2>A better way to surf the Internet</h2>
|
||||||
|
Loading…
Reference in New Issue
Block a user