Version 1.6.5
This commit is contained in:
parent
4d9e066781
commit
f9289d9216
16
CHANGELOG.md
16
CHANGELOG.md
|
@ -4,6 +4,22 @@ All notable changes to this project will be documented in this file.
|
||||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [1.6.5] - 2019-06-12
|
||||||
|
|
||||||
|
### Compatibility note
|
||||||
|
- Require Firefox >= 55
|
||||||
|
- Require Chrome >= 22
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Added support for fragment cleaning
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- [#171](https://gitlab.com/KevinRoebert/ClearUrls/issues/171)
|
||||||
|
- [#191](https://gitlab.com/KevinRoebert/ClearUrls/issues/191)
|
||||||
|
- [#192](https://gitlab.com/KevinRoebert/ClearUrls/issues/192)
|
||||||
|
- [#193](https://gitlab.com/KevinRoebert/ClearUrls/issues/193)
|
||||||
|
- [#194](https://gitlab.com/KevinRoebert/ClearUrls/issues/194)
|
||||||
|
|
||||||
## [1.6.4] - 2019-05-07
|
## [1.6.4] - 2019-05-07
|
||||||
|
|
||||||
### Compatibility note
|
### Compatibility note
|
||||||
|
|
60
clearurls.js
60
clearurls.js
|
@ -41,12 +41,20 @@ var lastVisited = "";
|
||||||
function removeFieldsFormURL(provider, pureUrl)
|
function removeFieldsFormURL(provider, pureUrl)
|
||||||
{
|
{
|
||||||
var url = pureUrl;
|
var url = pureUrl;
|
||||||
var domain = url.replace(new RegExp("\\?.*", "i"), "");
|
var domain = "";
|
||||||
|
var fragments = "";
|
||||||
var fields = "";
|
var fields = "";
|
||||||
var rules = provider.getRules();
|
var rules = provider.getRules();
|
||||||
var changes = false;
|
var changes = false;
|
||||||
var cancel = false;
|
var cancel = false;
|
||||||
|
|
||||||
|
if(existsFragments(url)) {
|
||||||
|
domain = url.replace(new RegExp("#.*", "i"), "");
|
||||||
|
}
|
||||||
|
if(existsFields(url)) {
|
||||||
|
domain = url.replace(new RegExp("\\?.*", "i"), "");
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Expand the url by provider redirections. So no tracking on
|
* Expand the url by provider redirections. So no tracking on
|
||||||
* url redirections form sites to sites.
|
* url redirections form sites to sites.
|
||||||
|
@ -65,28 +73,33 @@ function removeFieldsFormURL(provider, pureUrl)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Only test for matches, if there are fields that can be cleaned.
|
* Only test for matches, if there are fields or fragments that can be cleaned.
|
||||||
*/
|
*/
|
||||||
if(existsFields(url))
|
if(existsFields(url) || existsFragments(url))
|
||||||
{
|
{
|
||||||
/**
|
fields = extractFileds(url).rmEmpty().join("&");
|
||||||
* It must be non-greedy, because by default .* will match
|
fragments = extractFragments(url).rmEmpty().join("&");
|
||||||
* all ? chars. So the replace function delete everything
|
|
||||||
* before the last ?. With adding a ? on the quantifier *,
|
|
||||||
* we fixed this problem.
|
|
||||||
*/
|
|
||||||
fields = "?"+url.replace(new RegExp(".*?\\?", "i"), "");
|
|
||||||
|
|
||||||
rules.forEach(function(rule) {
|
rules.forEach(function(rule) {
|
||||||
var beforReplace = fields;
|
var beforReplace = fields;
|
||||||
|
var beforReplaceFragments = fragments;
|
||||||
fields = fields.replace(new RegExp(rule, "gi"), "");
|
fields = fields.replace(new RegExp(rule, "gi"), "");
|
||||||
|
fragments = fragments.replace(new RegExp(rule, "gi"), "");
|
||||||
|
|
||||||
if(beforReplace !== fields)
|
if(beforReplace !== fields || beforReplaceFragments !== fragments)
|
||||||
{
|
{
|
||||||
//Log the action
|
//Log the action
|
||||||
if(storage.loggingStatus)
|
if(storage.loggingStatus)
|
||||||
{
|
{
|
||||||
pushToLog(domain+beforReplace, domain+"?"+extractFileds(fields).rmEmpty().join("&"), rule);
|
var tempURL = domain;
|
||||||
|
var tempBeforeURL = domain;
|
||||||
|
|
||||||
|
if(fields !== "") tempURL += "?"+fields;
|
||||||
|
if(fragments !== "") tempURL += "#"+fragments;
|
||||||
|
if(beforReplace !== "") tempBeforeURL += "?"+beforReplace;
|
||||||
|
if(beforReplaceFragments !== "") tempBeforeURL += "#"+beforReplaceFragments;
|
||||||
|
|
||||||
|
pushToLog(tempBeforeURL, tempURL, rule);
|
||||||
}
|
}
|
||||||
|
|
||||||
if(badges[tabid] == null) badges[tabid] = 0;
|
if(badges[tabid] == null) badges[tabid] = 0;
|
||||||
|
@ -107,21 +120,12 @@ function removeFieldsFormURL(provider, pureUrl)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
var finalFields = extractFileds(fields).rmEmpty();
|
var finalURL = domain;
|
||||||
if(finalFields.length > 0)
|
|
||||||
{
|
if(fields !== "") finalURL += "?"+fields;
|
||||||
url = domain+"?"+finalFields.join("&");
|
if(fragments !== "") finalURL += "#"+fragments;
|
||||||
}
|
|
||||||
else{
|
url = finalURL;
|
||||||
url = domain;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if(domain != url)
|
|
||||||
{
|
|
||||||
url = domain;
|
|
||||||
changes = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(provider.isCaneling()){
|
if(provider.isCaneling()){
|
||||||
|
@ -359,7 +363,7 @@ function start()
|
||||||
* @param {boolean} isActive Is this rule active?
|
* @param {boolean} isActive Is this rule active?
|
||||||
*/
|
*/
|
||||||
this.addRule = function(rule, isActive = true) {
|
this.addRule = function(rule, isActive = true) {
|
||||||
rule = "([\\/|\\?]|(&|&))("+rule+"=[^\\/|\\?|&]*)";
|
rule = "([\\/]|(&|&))*("+rule+"=[^\\/|\\?|&]*)";
|
||||||
|
|
||||||
if(isActive)
|
if(isActive)
|
||||||
{
|
{
|
||||||
|
|
|
@ -46,7 +46,6 @@ function cleanURLs() {
|
||||||
}).then((data) => {
|
}).then((data) => {
|
||||||
cleanedURLs.push(data.response);
|
cleanedURLs.push(data.response);
|
||||||
if(i >= length-1) {
|
if(i >= length-1) {
|
||||||
console.log("End of loop.");
|
|
||||||
cleanTArea.val(cleanedURLs.join('\n'));
|
cleanTArea.val(cleanedURLs.join('\n'));
|
||||||
}
|
}
|
||||||
}, handleError);
|
}, handleError);
|
||||||
|
|
|
@ -22,15 +22,15 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* To support Waterfox.
|
* To support Waterfox.
|
||||||
*/
|
*/
|
||||||
Array.prototype.rmEmpty = function() {
|
Array.prototype.rmEmpty = function() {
|
||||||
return this.filter(v => v);
|
return this.filter(v => v);
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* To support Waterfox.
|
* To support Waterfox.
|
||||||
*/
|
*/
|
||||||
Array.prototype.flatten = function() {
|
Array.prototype.flatten = function() {
|
||||||
return this.reduce((a, b) => a.concat(b), []);
|
return this.reduce((a, b) => a.concat(b), []);
|
||||||
};
|
};
|
||||||
|
@ -92,16 +92,6 @@ function countFields(url)
|
||||||
return extractFileds(url).length;
|
return extractFileds(url).length;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Extract the fields from an url.
|
|
||||||
* @param {String} url URL as String
|
|
||||||
* @return {Array} Fields as array
|
|
||||||
*/
|
|
||||||
function extractFileds(url)
|
|
||||||
{
|
|
||||||
return (url.match(/[^\/|\?|&]+=*[^\/|\?|&]+/gi) || []);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns true if fields exists.
|
* Returns true if fields exists.
|
||||||
* @param {String} url URL as String
|
* @param {String} url URL as String
|
||||||
|
@ -115,6 +105,63 @@ function existsFields(url)
|
||||||
return (count > 0);
|
return (count > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Extract the fields from an url.
|
||||||
|
* @param {String} url URL as String
|
||||||
|
* @return {Array} Fields as array
|
||||||
|
*/
|
||||||
|
function extractFileds(url)
|
||||||
|
{
|
||||||
|
if(existsFields(url)) {
|
||||||
|
var fields = url.replace(new RegExp(".*?\\?", "i"), "");
|
||||||
|
if(existsFragments(url)) {
|
||||||
|
fields = fields.replace(new RegExp("#.*", "i"), "");
|
||||||
|
}
|
||||||
|
|
||||||
|
return (fields.match(/[^\/|\?|&]+=?[^\/|\?|&]?/gi) || []);
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the number of fragments query strings.
|
||||||
|
* @param {String} url URL as String
|
||||||
|
* @return {int} Number of fragments
|
||||||
|
*/
|
||||||
|
function countFragments(url)
|
||||||
|
{
|
||||||
|
return extractFragments(url).length;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Extract the fragments from an url.
|
||||||
|
* @param {String} url URL as String
|
||||||
|
* @return {Array} fragments as array
|
||||||
|
*/
|
||||||
|
function extractFragments(url)
|
||||||
|
{
|
||||||
|
if(existsFragments(url)) {
|
||||||
|
var fragments = url.replace(new RegExp(".*?#", "i"), "");
|
||||||
|
return (fragments.match(/[^&]+=?[^&]*/gi) || []);
|
||||||
|
}
|
||||||
|
|
||||||
|
return [];
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns true if fragments exists.
|
||||||
|
* @param {String} url URL as String
|
||||||
|
* @return {boolean}
|
||||||
|
*/
|
||||||
|
function existsFragments(url)
|
||||||
|
{
|
||||||
|
var matches = (url.match(/\#.+/i) || []);
|
||||||
|
var count = matches.length;
|
||||||
|
|
||||||
|
return (count > 0);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Load local saved data, if the browser is offline or
|
* Load local saved data, if the browser is offline or
|
||||||
* some other network trouble.
|
* some other network trouble.
|
||||||
|
@ -209,8 +256,8 @@ function getCurrentURL()
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check for browser.
|
* Check for browser.
|
||||||
*/
|
*/
|
||||||
function getBrowser() {
|
function getBrowser() {
|
||||||
if(typeof InstallTrigger !== 'undefined') {
|
if(typeof InstallTrigger !== 'undefined') {
|
||||||
return "Firefox";
|
return "Firefox";
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"providers": {
|
"providers": {
|
||||||
"amazon": {
|
"amazon": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(amazon)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(amazon)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"pf_rd_[a-zA-Z]",
|
"pf_rd_[a-zA-Z]",
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"google": {
|
"google": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(google)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(google)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ved",
|
"ved",
|
||||||
|
@ -117,36 +117,38 @@
|
||||||
"urlPattern": ".*",
|
"urlPattern": ".*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"utm_[a-zA-Z]*",
|
"(%3F)?utm_[a-zA-Z]*",
|
||||||
"ga_source",
|
"(%3F)?ga_source",
|
||||||
"ga_medium",
|
"(%3F)?ga_medium",
|
||||||
"ga_term",
|
"(%3F)?ga_term",
|
||||||
"ga_content",
|
"(%3F)?ga_content",
|
||||||
"ga_campaign",
|
"(%3F)?ga_campaign",
|
||||||
"ga_place",
|
"(%3F)?ga_place",
|
||||||
"yclid",
|
"(%3F)?yclid",
|
||||||
"_openstat",
|
"(%3F)?_openstat",
|
||||||
"fb_action_ids",
|
"(%3F)?fb_action_ids",
|
||||||
"fb_action_types",
|
"(%3F)?fb_action_types",
|
||||||
"fb_source",
|
"(%3F)?fb_source",
|
||||||
"fb_ref",
|
"(%3F)?fb_ref",
|
||||||
"fbclid",
|
"(%3F)?fbclid",
|
||||||
"action_object_map",
|
"(%3F)?action_object_map",
|
||||||
"action_type_map",
|
"(%3F)?action_type_map",
|
||||||
"action_ref_map",
|
"(%3F)?action_ref_map",
|
||||||
"gs_l",
|
"(%3F)?gs_l",
|
||||||
"mkt_tok",
|
"(%3F)?mkt_tok",
|
||||||
"hmb_campaign",
|
"(%3F)?hmb_campaign",
|
||||||
"hmb_medium",
|
"(%3F)?hmb_medium",
|
||||||
"hmb_source",
|
"(%3F)?hmb_source",
|
||||||
"[\\?|&]ref[\\_]?"
|
"(%3F)?[\\?|&]ref[\\_]?"
|
||||||
],
|
],
|
||||||
"exceptions": [
|
"exceptions": [
|
||||||
".*([\\.]?matrix\\.org)(\\/_matrix)\\/.*",
|
".*([\\.]?matrix\\.org)(\\/_matrix)\\/.*",
|
||||||
".*([\\.]?prismic\\.io).*",
|
".*([\\.]?prismic\\.io).*",
|
||||||
".*([\\.]?gitlab\\.com).*",
|
".*([\\.]?gitlab\\.com).*",
|
||||||
".*([\\.]?gcsip\\.com).*[\\?|&]ref[\\_]?=[^\\/|\\?|&]*.*",
|
".*([\\.]?gcsip\\.com).*[\\?|&]ref[\\_]?=[^\\/|\\?|&]*.*",
|
||||||
".*([\\.]?cloudflare\\.com).*"
|
".*([\\.]?cloudflare\\.com).*",
|
||||||
|
".*(myaccount.google\\.[a-zA-Z]{2,}).*",
|
||||||
|
".*([\\.]?tangerine\\.ca).*"
|
||||||
],
|
],
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
|
@ -186,7 +188,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"youtube": {
|
"youtube": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youtube)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youtube)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"feature",
|
"feature",
|
||||||
|
@ -199,7 +201,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"facebook": {
|
"facebook": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(facebook)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(facebook)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"hc_[a-zA-Z_%\\[\\]0-9]*",
|
"hc_[a-zA-Z_%\\[\\]0-9]*",
|
||||||
|
@ -227,16 +229,17 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"twitter": {
|
"twitter": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitter)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitter)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"(ref_)?src"
|
"(ref_)?src",
|
||||||
|
"s"
|
||||||
],
|
],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"reddit": {
|
"reddit": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(reddit)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(reddit)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -246,7 +249,7 @@
|
||||||
}
|
}
|
||||||
,
|
,
|
||||||
"netflix": {
|
"netflix": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(netflix)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(netflix)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"trackId",
|
"trackId",
|
||||||
|
@ -257,7 +260,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"techcrunch": {
|
"techcrunch": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?([\\.]?techcrunch\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?([\\.]?techcrunch\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ncid",
|
"ncid",
|
||||||
|
@ -268,7 +271,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"bing": {
|
"bing": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(bing)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(bing)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"cvid",
|
"cvid",
|
||||||
|
@ -283,7 +286,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"tweakers": {
|
"tweakers": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tweakers\\.net)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tweakers\\.net).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"nb",
|
"nb",
|
||||||
|
@ -293,7 +296,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"twitch": {
|
"twitch": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitch)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitch)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"tt_medium",
|
"tt_medium",
|
||||||
|
@ -303,7 +306,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"vivaldi": {
|
"vivaldi": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(vivaldi\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(vivaldi\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"pk_campaign",
|
"pk_campaign",
|
||||||
|
@ -313,7 +316,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"indeed": {
|
"indeed": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(indeed\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(indeed\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"from",
|
"from",
|
||||||
|
@ -324,7 +327,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"hhdotru": {
|
"hhdotru": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(hh\\.ru)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(hh\\.ru).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"vss",
|
"vss",
|
||||||
|
@ -340,7 +343,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"ebay": {
|
"ebay": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(ebay)(\\.[a-zA-Z]{2,})(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(ebay)(\\.[a-zA-Z]{2,}).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"_trkparms",
|
"_trkparms",
|
||||||
|
@ -351,7 +354,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"cnet": {
|
"cnet": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(cnet\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(cnet\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ftag"
|
"ftag"
|
||||||
|
@ -360,7 +363,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"imdb.com": {
|
"imdb.com": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(imdb\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(imdb\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ref_",
|
"ref_",
|
||||||
|
@ -370,7 +373,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"govdelivery.com": {
|
"govdelivery.com": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(govdelivery\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(govdelivery\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -380,7 +383,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"walmart.com": {
|
"walmart.com": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(walmart\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(walmart\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"u1",
|
"u1",
|
||||||
|
@ -390,7 +393,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"net-parade.it": {
|
"net-parade.it": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(net\\-parade\\.it)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(net\\-parade\\.it).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"pl"
|
"pl"
|
||||||
|
@ -399,7 +402,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"prvnizpravy.cz": {
|
"prvnizpravy.cz": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(prvnizpravy\\.cz)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(prvnizpravy\\.cz).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"xid"
|
"xid"
|
||||||
|
@ -408,7 +411,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"youku.com": {
|
"youku.com": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youku\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youku\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"spm",
|
"spm",
|
||||||
|
@ -418,7 +421,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"nytimes.com": {
|
"nytimes.com": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(nytimes\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(nytimes\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"smid"
|
"smid"
|
||||||
|
@ -427,7 +430,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"tchibo.de": {
|
"tchibo.de": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tchibo\\.de)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tchibo\\.de).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"wbdcd"
|
"wbdcd"
|
||||||
|
@ -436,7 +439,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"steampowered": {
|
"steampowered": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(steampowered\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(steampowered\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"snr=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
|
"snr=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
|
||||||
|
@ -445,7 +448,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"steamcommunity": {
|
"steamcommunity": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(steamcommunity\\.com)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(steamcommunity\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -454,7 +457,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"disq.us": {
|
"disq.us": {
|
||||||
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(disq\\.us)(.*\\?.*)",
|
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(disq\\.us).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -472,7 +475,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"shutterstock.com": {
|
"shutterstock.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(shutterstock\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(shutterstock\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"src"
|
"src"
|
||||||
|
@ -481,7 +484,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"mozilla.org": {
|
"mozilla.org": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(mozilla\\.org)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(mozilla\\.org).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"src",
|
"src",
|
||||||
|
@ -491,7 +494,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"readdc.com": {
|
"readdc.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(readdc\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(readdc\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ref"
|
"ref"
|
||||||
|
@ -500,7 +503,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"dailycodingproblem.com": {
|
"dailycodingproblem.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(dailycodingproblem\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(dailycodingproblem\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"email"
|
"email"
|
||||||
|
@ -509,7 +512,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"github.com": {
|
"github.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(github\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(github\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"email_token",
|
"email_token",
|
||||||
|
@ -519,7 +522,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"deviantart.com": {
|
"deviantart.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(deviantart\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(deviantart\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -528,7 +531,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"site2.com": {
|
"site2.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site2\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site2\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -537,7 +540,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"site.com": {
|
"site.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -546,7 +549,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"site3.com": {
|
"site3.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site3\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(site3\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [],
|
"rules": [],
|
||||||
"exceptions": [],
|
"exceptions": [],
|
||||||
|
@ -555,7 +558,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"aliexpress.com": {
|
"aliexpress.com": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(aliexpress\\.com)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(aliexpress\\.com).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"ws_ab_test",
|
"ws_ab_test",
|
||||||
|
@ -567,7 +570,7 @@
|
||||||
"redirections": []
|
"redirections": []
|
||||||
},
|
},
|
||||||
"mozillazine.org": {
|
"mozillazine.org": {
|
||||||
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(mozillazine\\.org)(.*\\?.*)",
|
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(mozillazine\\.org).*",
|
||||||
"completeProvider": false,
|
"completeProvider": false,
|
||||||
"rules": [
|
"rules": [
|
||||||
"sid"
|
"sid"
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"manifest_version": 2,
|
"manifest_version": 2,
|
||||||
"name": "ClearURLs",
|
"name": "ClearURLs",
|
||||||
"version": "1.6.4",
|
"version": "1.6.5",
|
||||||
"author": "Kevin R.",
|
"author": "Kevin R.",
|
||||||
"description": "Remove tracking elements form URLs.",
|
"description": "Remove tracking elements form URLs.",
|
||||||
"homepage_url": "https://gitlab.com/KevinRoebert/ClearUrls",
|
"homepage_url": "https://gitlab.com/KevinRoebert/ClearUrls",
|
||||||
|
|
Loading…
Reference in New Issue
Block a user