diff --git a/packages/browser-extension/package.json b/packages/browser-extension/package.json index 78a138c..5c47308 100644 --- a/packages/browser-extension/package.json +++ b/packages/browser-extension/package.json @@ -6,6 +6,7 @@ "lint": "eslint src/**/*.js --fix" }, "devDependencies": { + "@types/chrome": "^0.0.184", "eslint": "^8.8.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", diff --git a/packages/browser-extension/src/manifest.json b/packages/browser-extension/src/manifest.json index b9ae3e1..9854c31 100644 --- a/packages/browser-extension/src/manifest.json +++ b/packages/browser-extension/src/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 2, "name": "Cookie Dialog Monster", - "version": "5.5.0", + "version": "5.5.1", "default_locale": "en", "description": "__MSG_appDesc__", "icons": { diff --git a/packages/browser-extension/src/scripts/background.js b/packages/browser-extension/src/scripts/background.js index 11a67bd..b81fc8d 100644 --- a/packages/browser-extension/src/scripts/background.js +++ b/packages/browser-extension/src/scripts/background.js @@ -1,3 +1,10 @@ +/** + * @description API URL + * @type {string} + */ + +const apiUrl = 'https://api.cookie-dialog-monster-com/rest/v1'; + /** * @description Base data URL * @type {string} @@ -46,7 +53,7 @@ const enablePopup = (tabId) => chrome.browserAction.setPopup({ popup: 'popup.htm * @description Retrieves cache state * @param {string} hostname * @param {void} callback - * @returns {Promise<{ enabled: boolean }>} + * @returns {{ enabled: boolean }} */ const getCache = (hostname, callback) => { @@ -103,7 +110,7 @@ const report = () => { const version = chrome.runtime.getManifest().version; if (tab) { - fetch('https://cdm-report-service.herokuapp.com/rest/v1/report/', { + fetch(`${apiUrl}/report/`, { body: JSON.stringify({ text: `There's a problem with ${tab.url} using ${userAgent} in CDM ${version}`, to: 'wanhose.development@gmail.com', diff --git a/packages/browser-extension/src/scripts/content.js b/packages/browser-extension/src/scripts/content.js index 3f18d0a..a039754 100644 --- a/packages/browser-extension/src/scripts/content.js +++ b/packages/browser-extension/src/scripts/content.js @@ -30,7 +30,7 @@ const fixes = []; * @description Hostname */ -const hostname = document.location.hostname; +const hostname = document.location.hostname.split('.').slice(-2).join('.'); /** * @description Is consent preview page? @@ -76,7 +76,11 @@ const check = (node) => * @returns {void} */ -const clean = (nodes) => nodes.filter(check).forEach((node) => (node.outerHTML = '')); +const clean = (nodes) => { + if (selectors.length) { + nodes.filter(check).forEach((node) => (node.outerHTML = '')); + } +}; /** * @description Fixes scroll issues @@ -157,7 +161,7 @@ const promiseAll = () => document.addEventListener('readystatechange', () => { dispatch({ hostname, type: 'GET_CACHE' }, null, async ({ enabled }) => { - if (document.readyState === 'complete' && enabled && !preview) { + if (document.readyState === 'complete' && enabled && !preview && selectors.length) { const nodes = Array.from(document.querySelectorAll(selectors)); fix(); diff --git a/yarn.lock b/yarn.lock index 00aaf38..1d2f597 100644 --- a/yarn.lock +++ b/yarn.lock @@ -413,6 +413,39 @@ __metadata: languageName: node linkType: hard +"@types/chrome@npm:^0.0.184": + version: 0.0.184 + resolution: "@types/chrome@npm:0.0.184" + dependencies: + "@types/filesystem": "*" + "@types/har-format": "*" + checksum: fe4afa0b4dcedde029c75d2ba31f64e1a93b5ad499cdfb48cee4017c32277ac11a6b0bde121f63d9ff6b8a333dca4d6eb446504bc4a1cd84f23552c320f2d8b1 + languageName: node + linkType: hard + +"@types/filesystem@npm:*": + version: 0.0.32 + resolution: "@types/filesystem@npm:0.0.32" + dependencies: + "@types/filewriter": "*" + checksum: 4b9079d200a3b241722b90e1c5806c4b32c4dac87d42a1c7ef76a2c0dafdbe7d5f1a379b873ad5de73622b44de6599e1522908f67b938d54e785bd1c36e302a0 + languageName: node + linkType: hard + +"@types/filewriter@npm:*": + version: 0.0.29 + resolution: "@types/filewriter@npm:0.0.29" + checksum: 0c58aa875c2c245be7dbc42b20212f3203e13d11ec013a4a5cd0febf0e8b87214be5882c05ff9d7bdf0398f145a4fdbc24b7e6cf7b094e134a3b4c7a0598502f + languageName: node + linkType: hard + +"@types/har-format@npm:*": + version: 1.2.8 + resolution: "@types/har-format@npm:1.2.8" + checksum: a14c6f31fb7c39be383638e00b3beaf693acfa6a2d8a10d9333f3d5cb70d3f2fc4d369a781775451012adc52faef08ff476e40a34fc6a1d6a557dd02ad984c0c + languageName: node + linkType: hard + "@types/json-schema@npm:^7.0.9": version: 7.0.11 resolution: "@types/json-schema@npm:7.0.11" @@ -918,6 +951,7 @@ __metadata: version: 0.0.0-use.local resolution: "browser-extension@workspace:packages/browser-extension" dependencies: + "@types/chrome": ^0.0.184 eslint: ^8.8.0 eslint-config-prettier: ^8.3.0 eslint-plugin-prettier: ^4.0.0