Move data files into this repo

This commit is contained in:
Michael Campagnaro 2021-03-24 13:03:59 -04:00 committed by Michael Campagnaro
parent db8b363b4a
commit f21c6b332b
12 changed files with 2669 additions and 84 deletions

10
.gitignore vendored
View File

@ -1,14 +1,14 @@
# See https://help.github.com/ignore-files/ for more about ignoring files. # See https://help.github.com/ignore-files/ for more about ignoring files.
# dependencies # dependencies
/node_modules node_modules
.web-extension-id
web-ext-artifacts/
sign-firefox-extension.sh
# testing # testing
/coverage /coverage
# production
/build
# misc # misc
.DS_Store .DS_Store
.env .env
@ -17,4 +17,4 @@ yarn-debug.log*
yarn-error.log* yarn-error.log*
# WebStorm # WebStorm
.idea/ .idea/

4
.gitmodules vendored
View File

@ -1,4 +0,0 @@
[submodule "rules"]
path = data
url = https://gitlab.com/anti-tracking/ClearURLs/rules.git
branch = master

View File

@ -1,21 +1,51 @@
<a href="https://www.paypal.me/KevinRoebert" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/Paypal.png" alt="Buy Me A Coffee" height="55"></a> This is a fork of [ClearURLs/Addon](https://github.com/ClearURLs/Addon) with some modifications. The
<a href="https://liberapay.com/kroeb" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/LiberaPay.png" alt="Buy Me A Coffee" height="55"></a> main change is moving the data/rule files to this repo instead of loading them from a gitlab page
<a href="https://www.buymeacoffee.com/KevinRoebert" target="_blank"><img src="https://raw.githubusercontent.com/KevinRoebert/DonateButtons/master/BuyMeACoffee.png" alt="Buy Me A Coffee" height="55"></a> that the original author hosts. This removes the risk of a bad actor gaining control over that URL
and making changes that lead to arbitrary code execution or redirecting your browser to arbitrary
URLs.
[<img src="https://blog.mozilla.org/addons/files/2020/04/get-the-addon-fx-apr-2020.svg" alt="for Firefox" height="60px">](https://addons.mozilla.org/firefox/addon/clearurls/) [<img src="https://gitlab.com/KevinRoebert/ClearUrls/-/raw/master/promotion/MEA-button.png" alt="for Edge" height="60px">](https://microsoftedge.microsoft.com/addons/detail/mdkdmaickkfdekbjdoojfalpbkgaddei) [<img src="https://storage.googleapis.com/chrome-gcs-uploader.appspot.com/image/WlD8wC6g8khYWPJUsQceQkhXSlv1/HRs9MPufa1J1h5glNhut.png" alt="for Chrome" height="60px">](https://chrome.google.com/webstore/detail/clearurls/lckanjgmijmafbedllaakclkaicjfmnk) ## Install
# <sub><img src="https://gitlab.com/KevinRoebert/ClearUrls/raw/master/img/clearurls.svg" width="64px" height="64px"></sub> ClearURLs [![Gitter](https://badges.gitter.im/ClearURLs/ClearURLs.svg)](https://gitter.im/ClearURLs/ClearURLs) **Firefox**
* I have a signed xpi that you can immediately install. Open `build/` and drag the xpi into Firefox.
It may take a few seconds for the browser to display the extension installation dialog box.
* You can also find the signed Firefox files in the project's [Releases page](https://github.com/sir-pinecone/clear-urls-browser-extension/releases).
**Chrome**
* Go to Chrome extensions page.
* Toggle the developer mode (top-right of page).
* Click `Load unpacked`.
* Select this project's root folder.
## Development
### Local Testing
* Firefox: open about:debugging and click `Load Temporary Add-on...` then select `manifest.json` file.
* Chrome: follow the install steps from above.
## Signing and Building
### Firefox
* Install web-ext with `$ npm install --global web-ext`
* Generate an unlisted xpi with:
`web-ext sign --api-key <your JWT issuer> --api-secret <your JWT secret>`
* You can obtain these keys from https://addons.mozilla.org/en-US/developers/addon/api/key/
* The signed xpi will be in `web-ext-artifacts/`. Drag this into Firefox to install it.
* Alternatively use the private sign-firefox-extension.sh script (not included in the repo) which places the xpi in `build/`.
---
**ClearURLs** is an add-on based on the new WebExtensions technology and is optimized for *Firefox* and *Chrome* based browsers. **ClearURLs** is an add-on based on the new WebExtensions technology and is optimized for *Firefox* and *Chrome* based browsers.
This extension will automatically remove tracking elements from URLs to help protect your privacy when browse through the Internet, This extension will automatically remove tracking elements from URLs to help protect your privacy when browse through the Internet,
which is regularly updated by us and can be found [here](https://gitlab.com/anti-tracking/ClearURLs/rules/-/raw/master/data.min.json). which is regularly updated by us and can be found [here](https://gitlab.com/anti-tracking/ClearURLs/rules/-/raw/master/data.min.json).
## Application ## Application
Many websites use tracking elements in the URL (e.g. `https://example.com?utm_source=newsletter1&utm_medium=email&utm_campaign=sale`) to mark your online activity. Many websites use tracking elements in the URL (e.g. `https://example.com?utm_source=newsletter1&utm_medium=email&utm_campaign=sale`) to mark your online activity.
All that tracking code is not necessary for a website to be displayed or work correctly and can therefore be removed—that is exactly what ClearURLs does. All that tracking code is not necessary for a website to be displayed or work correctly and can therefore be removed—that is exactly what ClearURLs does.
Another common example are Amazon URLs. If you search for a product on Amazon you will see a very long URL, such as: Another common example are Amazon URLs. If you search for a product on Amazon you will see a very long URL, such as:
``` ```
https://www.amazon.com/dp/exampleProduct/ref=sxin_0_pb?__mk_de_DE=ÅMÅŽÕÑ&keywords=tea&pd_rd_i=exampleProduct&pd_rd_r=8d39e4cd-1e4f-43db-b6e7-72e969a84aa5&pd_rd_w=1pcKM&pd_rd_wg=hYrNl&pf_rd_p=50bbfd25-5ef7-41a2-68d6-74d854b30e30&pf_rd_r=0GMWD0YYKA7XFGX55ADP&qid=1517757263&rnid=2914120011 https://www.amazon.com/dp/exampleProduct/ref=sxin_0_pb?__mk_de_DE=ÅMÅŽÕÑ&keywords=tea&pd_rd_i=exampleProduct&pd_rd_r=8d39e4cd-1e4f-43db-b6e7-72e969a84aa5&pd_rd_w=1pcKM&pd_rd_wg=hYrNl&pf_rd_p=50bbfd25-5ef7-41a2-68d6-74d854b30e30&pf_rd_r=0GMWD0YYKA7XFGX55ADP&qid=1517757263&rnid=2914120011
``` ```
@ -39,55 +69,6 @@ Indeed most of the above URL is tracking code. Once ClearURLs has cleaned the ad
## Permissons ## Permissons
Reasoning for needed permissions can be found under [here](https://gitlab.com/KevinRoebert/ClearUrls/issues/159). Reasoning for needed permissions can be found under [here](https://gitlab.com/KevinRoebert/ClearUrls/issues/159).
## Screenshot
![Interface (version 1.14.0)](https://gitlab.com/KevinRoebert/ClearUrls/raw/master/promotion/screens/Popup_v_1.14.0.png)
## CI/CD Artifacts Download (for Firefox- and Chrome-Dev only)
Here you can download the packed files for the Firefox- and Chrome-Dev:
[<img src="promotion/download-128.png"/>](https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/ClearUrls.zip?job=bundle%20addon)
## Test
If you want to test whether ClearURLs works correctly on your system, you can go to this test page: [https://test.clearurls.xyz/](https://test.clearurls.xyz/)
## Contribute
If you have any suggestions or complaints, please [create an issue.](https://gitlab.com/KevinRoebert/ClearUrls/issues/new)
**Note: If you have any suggestions or complaints regarding the rules, please [create an issue in this repo](https://gitlab.com/anti-tracking/ClearURLs/rules/-/issues/new) or email us rules.support (at) clearurls.xyz (this mail will automatically create a new issue in this repo).**
### Translate ClearURLs
You want to help translating ClearURLs into many languages? Nice
You can choose between two options to contribute. You can create a merge request, or you can use the POEditor to translate ClearURLs.
*Hint: The description field in the translation files are only an information for what the translation is used.
It is not necessary to translate the description field; in the most cases it is empty.*
#### Merge request
If you want to create a merge request, you must open the path [`_locales/en/messages.json`](https://github.com/KevinRoebert/ClearUrls/blob/master/_locales/en/messages.json) in the ClearURLs repo
and translate the english terms into terms of your language. Once you have translated all the terms, you make a pull request of your translation.
Please push your translation into the folder `_locales/{language code}/messages.json`.
#### POEditor
[<img src="https://poeditor.com/public/images/logo/logo.svg" alt="https://poeditor.com/join/project/vKTpQWWvk2" width="150">](https://poeditor.com/join/project/vKTpQWWvk2)
## Projects that use parts of ClearURLs
* [Uroute](https://github.com/walterl/uroute) used ClearURLs to filter/clean URL before launching browser
* [Scrub](https://gitlab.com/CrunchBangDev/cbd-cogs/-/tree/master/Scrub) used ClearURLs to filter/clean URLs as cog for the Red Discord bot
* [Unalix](https://github.com/AmanoTeam/Unalix) a simple Python module that removes tracking fields from URLs and unshort shortened URLs
* [Unalix-nim](https://github.com/AmanoTeam/Unalix-nim) a simple Nim library that removes tracking fields from URLs and unshort shortened URLs
## Recommended by...
* [ghacks-user.js](https://github.com/ghacksuserjs/ghacks-user.js/wiki/4.1-Extensions)
* [Awesome Humane Tech List](https://github.com/humanetech-community/awesome-humane-tech#tracking)
* [PrivacyTools](https://www.privacytools.io/browsers/#addons)
* [New York Times Wirecutter](https://www.nytimes.com/wirecutter/reviews/our-favorite-ad-blockers-and-browser-extensions-to-protect-privacy/#cleaner-links-clearurls)
* ClearURLs is part of Mozilla's recommended extensions program
## Permissions
Reasoning for needed permissions you can find under [this discussion](https://gitlab.com/KevinRoebert/ClearUrls/issues/159).
## Copyright ## Copyright
We use some third-party scripts in our add-on. The authors and licenses are listed below. We use some third-party scripts in our add-on. The authors and licenses are listed below.
- [WebExtension browser API Polyfill](https://github.com/mozilla/webextension-polyfill) | - [WebExtension browser API Polyfill](https://github.com/mozilla/webextension-polyfill) |

BIN
build/clearurls-1.21.0.xpi Normal file

Binary file not shown.

View File

@ -193,8 +193,8 @@ function initSettings() {
storage.log = {"log": []}; storage.log = {"log": []};
storage.statisticsStatus = true; storage.statisticsStatus = true;
storage.badged_color = "#ffa500"; storage.badged_color = "#ffa500";
storage.hashURL = "https://rules2.clearurls.xyz/rules.minify.hash"; storage.hashURL = "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
storage.ruleURL = "https://rules2.clearurls.xyz/data.minify.json"; storage.ruleURL = "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
storage.contextMenuEnabled = true; storage.contextMenuEnabled = true;
storage.historyListenerEnabled = true; storage.historyListenerEnabled = true;
storage.localHostsSkipping = true; storage.localHostsSkipping = true;
@ -221,27 +221,27 @@ function initSettings() {
function replaceOldURLs(url) { function replaceOldURLs(url) {
switch (url) { switch (url) {
case "https://raw.githubusercontent.com/KevinRoebert/ClearUrls/master/data/rules.hash?flush_cache=true": case "https://raw.githubusercontent.com/KevinRoebert/ClearUrls/master/data/rules.hash?flush_cache=true":
return "https://kevinroebert.gitlab.io/ClearUrls/data/rules.minify.hash"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
case "https://raw.githubusercontent.com/KevinRoebert/ClearUrls/master/data/data.json?flush_cache=true": case "https://raw.githubusercontent.com/KevinRoebert/ClearUrls/master/data/data.json?flush_cache=true":
return "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/rules.hash": case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/rules.hash":
return "https://kevinroebert.gitlab.io/ClearUrls/data/rules.minify.hash"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.json": case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.json":
return "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/rules.min.hash?job=hash%20rules": case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/rules.min.hash?job=hash%20rules":
return "https://kevinroebert.gitlab.io/ClearUrls/data/rules.minify.hash"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.min.json": case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.min.json":
return "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.minify.json": case "https://gitlab.com/KevinRoebert/ClearUrls/raw/master/data/data.minify.json":
return "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/data.minify.json?job=hash%20rules": case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/data.minify.json?job=hash%20rules":
return "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json";
case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/rules.minify.hash?job=hash%20rules": case "https://gitlab.com/KevinRoebert/ClearUrls/-/jobs/artifacts/master/raw/rules.minify.hash?job=hash%20rules":
return "https://kevinroebert.gitlab.io/ClearUrls/data/rules.minify.hash"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
case "https://kevinroebert.gitlab.io/ClearUrls/data/data.minify.json": case "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.json":
return "https://rules2.clearurls.xyz/data.minify.json"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/data.minify.hash";
case "https://kevinroebert.gitlab.io/ClearUrls/data/rules.minify.hash": case "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash":
return "https://rules2.clearurls.xyz/rules.minify.hash"; return "https://raw.githubusercontent.com/sir-pinecone/clear-urls-browser-extension/master/data/rules.minify.hash";
default: default:
return url; return url;
} }

1
data

@ -1 +0,0 @@
Subproject commit 7a180c3dbd2a48aeeb1271919f6a9218b4d45354

461
data/data.json Normal file
View File

@ -0,0 +1,461 @@
{
"providers": {
"amazon": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(amazon)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"pf_rd_[a-zA-Z]=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"qid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sr=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"srs=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(adsensecustomsearchads\\.com)\\/.*",
"pd_rd_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"__mk_[a-zA-Z]{1,3}_[a-zA-Z]{1,3}=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"spIA=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ms3_c=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"[a-zA-Z%0-9]*ie=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"refRID=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"colid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"coliid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"[^a-zA-Z%0-9]adId=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"qualifier=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"_encoding=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"smid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"field-lbr_brands_browse-bin=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [
".*(amazon\\.).*(\\/gp).*\\/redirector.html\\/.*"
],
"redirections": []
},
"fls-na.amazon": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(fls-na\\.amazon)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"google": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(google)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"ved=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"bi[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"gfe_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ei=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"source=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"gs_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"site=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"&\\.[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"oq=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"esrc=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"uact=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"cd=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"cad=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"gws_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"atyp=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"vet=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"zx=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"_u=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"je=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"dcr=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ie=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sei=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sa=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"dpr=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"hl=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"btn[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sa=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"usg=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"cd=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"cad=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"uact=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [
".*(mail\\.google\\.).*(\\/mail\\/u\\/0).*",
".*(google\\.).*(\\/upload)?(\\/drive)\\/.*",
".*(docs\\.google\\.).*\\/.*",
".*(accounts\\.google\\.).*",
".*(google\\.).*\\/searchbyimage\\?image_url=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(hangouts\\.google\\.).*\\/webchat.*zx=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(client-channel\\.google\\.).*\\/client-channel.*zx=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(google\\.).*\\/complete\\/search\\?.*gs_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(google\\.).*\\/s\\?tbm=map.*gs_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(news\\.google\\.).*\\?hl=.*",
".*(google\\.).*\\/setprefs\\?.*hl=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
".*(google\\.).*\\/appsactivity\\/.*",
".*(google\\.).*\\/recaptcha\\/.*"
],
"redirections": [
".*google\\..*\\/.*url\\?.*url=((https|http)[^&]*)",
".*google\\..*\\/.*url\\?.*q=((https|http)[^&]*)"
]
},
"googlesyndication": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(googlesyndication)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"doubleclick": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(doubleclick)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": [
".*doubleclick\\..*\\/.*tag_for_child_directed_treatment=;%3F(.*)"
]
},
"globalRules": {
"urlPattern": ".*",
"completeProvider": false,
"rules": [
"utm_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_source=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_medium=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_term=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_content=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_campaign=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ga_place=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"yclid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"_openstat=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"fb_action_ids=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"fb_action_types=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"fb_source=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"fb_ref=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"fbclid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"action_object_map=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"action_type_map=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"action_ref_map=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"gs_l=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"mkt_tok=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"hmb_campaign=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"hmb_medium=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"hmb_source=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"[\\?|&]ref[\\_]?=[^\\/|\\?|&]*",
"\\?$",
"\\&$"
],
"exceptions": [
".*([\\.]?matrix\\.org)(\\/_matrix)\\/.*",
".*([\\.]?prismic\\.io).*",
".*([\\.]?gitlab\\.com).*",
".*([\\.]?gcsip\\.com).*[\\?|&]ref[\\_]?=[^\\/|\\?|&]*.*",
".*([\\.]?cloudflare\\.com).*",
".*([\\.]?tv2\\.no)(\\/api)\\/.*"
],
"redirections": []
},
"adtech": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(adtech)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"contentpass.net": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(contentpass\\.net).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"bf-ad": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(bf-ad)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"amazon-adsystem": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(amazon-adsystem)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"adsensecustomsearchads": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(adsensecustomsearchads)(\\.[a-zA-Z]{2,}).*",
"completeProvider": true,
"rules": [],
"exceptions": [],
"redirections": []
},
"youtube": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youtube)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"feature=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"gclid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"kw=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"facebook": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(facebook)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"hc_[a-zA-Z_\\[\\]0-9]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"[a-zA-Z]*ref[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"__tn__=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"eid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"__xts__%5B[0-9]%5D=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [
".*(facebook\\.)\\w{2,}.*(\\/plugins\\/).*"
],
"redirections": [
".*l\\.facebook\\..*\\/.*l\\.php\\?.*u=((https%3A%2F%2F|http%3A%2F%2F)[^&]*)"
]
},
"twitter": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitter)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"(ref_)?src=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"reddit": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(reddit)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [],
"exceptions": [],
"redirections": [
"out\\.reddit\\.\\w{2,}\\/.*url=([^&]*)"
]
}
,
"netflix": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(netflix)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"trackId=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"tctx=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"jb[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"techcrunch": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?([\\.]?techcrunch\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"ncid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sr=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sr_share=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"guccounter=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"guce_referrer_[a-z]+=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"bing": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(bing)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"cvid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"form=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sk=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sp=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"sc=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"qs=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"qp=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"tweakers": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tweakers\\.net)(.*\\?.*)",
"completeProvider": false,
"rules": [
"nb=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"u=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"twitch": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(twitch)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"tt_medium=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"tt_content=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"vivaldi": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(vivaldi\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"pk_campaign=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"pk_kwd=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"indeed": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(indeed\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"from=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"alid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"[a-zA-Z]*tk=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"hhdotru": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(hh\\.ru)(.*\\?.*)",
"completeProvider": false,
"rules": [
"vss=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"t=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"swnt=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"grpos=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ptl=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"stl=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"exp=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"plim=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"ebay": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(ebay)(\\.[a-zA-Z]{2,})(.*\\?.*)",
"completeProvider": false,
"rules": [
"_trkparms=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"_trksid=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"_from=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"cnet": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(cnet\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"ftag=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"imdb.com": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(imdb\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"ref_=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"pf_rd_[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"govdelivery.com": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(govdelivery\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [],
"exceptions": [],
"redirections": [
".*links\\.govdelivery\\.com.*\\/track\\?.*(http:\\/\\/.*)",
".*links\\.govdelivery\\.com.*\\/track\\?.*(https:\\/\\/.*)"
]
},
"walmart.com": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(walmart\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"u1=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"ath[a-zA-Z]*=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"net-parade.it": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(net\\-parade\\.it)(.*\\?.*)",
"completeProvider": false,
"rules": [
"pl=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"prvnizpravy.cz": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(prvnizpravy\\.cz)(.*\\?.*)",
"completeProvider": false,
"rules": [
"xid=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"youku.com": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(youku\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"spm=[^\\/|\\?|&]*(\\/|&(amp;)?)?",
"tpa=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"nytimes.com": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(nytimes\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"smid=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"tchibo.de": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(tchibo\\.de)(.*\\?.*)",
"completeProvider": false,
"rules": [
"wbdcd=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"steam": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(steampowered\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"snr=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
},
"disq.us": {
"urlPattern": "(https:\\/\\/|http:\\/\\/)([a-zA-Z0-9-]*\\.)?(disq\\.us)(.*\\?.*)",
"completeProvider": false,
"rules": [],
"exceptions": [],
"redirections": [
".*disq\\.us.*\\/.*url\\?.*url=((https%3A%2F%2F|http%3A%2F%2F).*)%3A"
]
},
"mozaws.net": {
"urlPattern": "https?://outgoing\\.prod\\.mozaws\\.net/.*",
"completeProvider": false,
"rules": [],
"exceptions": [],
"redirections": [
"https?://[^/]+/v1/[0-9a-f]{64}/(.*)"
]
},
"shutterstock.com": {
"urlPattern": "https?://([a-zA-Z0-9-]*\\.)?(shutterstock\\.com)(.*\\?.*)",
"completeProvider": false,
"rules": [
"src=[^\\/|\\?|&]*(\\/|&(amp;)?)?"
],
"exceptions": [],
"redirections": []
}
}
}

2145
data/data.min.json Normal file

File diff suppressed because it is too large Load Diff

1
data/data.minify.json Normal file

File diff suppressed because one or more lines are too long

1
data/rules.hash Normal file
View File

@ -0,0 +1 @@
b0e1fc948f5e391a53a57092b1c29e8cff474402d5411f4045cfb4a7db37d2bc

1
data/rules.minify.hash Normal file
View File

@ -0,0 +1 @@
3853a43880e1f2b1a35083fe8a5f722b0c0d3b24dcd4957aabad1d2b7ec6e4b9

View File

@ -3,8 +3,8 @@
"name": "ClearURLs", "name": "ClearURLs",
"version": "1.21.0", "version": "1.21.0",
"author": "Kevin Röbert", "author": "Kevin Röbert",
"description": "__MSG_extension_description__", "description": "Removes tracking info from URLs. Forked from github.com/ClearURLs/Addon",
"homepage_url": "https://gitlab.com/KevinRoebert/ClearUrls", "homepage_url": "https://git.michael.is/michael/clear-urls-browser-extension",
"default_locale": "en", "default_locale": "en",
"icons": { "icons": {
"16": "img/clearurls_16x16.png", "16": "img/clearurls_16x16.png",