@browserless.io/browserless 2.38.0 → 2.38.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +26 -1
- package/build/browsers/index.js +12 -6
- package/build/routes/management/http/kill.get.js +2 -2
- package/build/shared/utils/function/handler.js +2 -2
- package/build/utils.d.ts +1 -0
- package/build/utils.js +1 -0
- package/build/utils.spec.d.ts +1 -0
- package/build/utils.spec.js +27 -0
- package/extensions/ublocklite/_locales/be/messages.json +5 -5
- package/extensions/ublocklite/_locales/id/messages.json +9 -9
- package/extensions/ublocklite/_locales/ja/messages.json +4 -4
- package/extensions/ublocklite/_locales/pt_PT/messages.json +1 -1
- package/extensions/ublocklite/_locales/th/messages.json +2 -2
- package/extensions/ublocklite/_locales/uk/messages.json +9 -9
- package/extensions/ublocklite/_locales/vi/messages.json +5 -5
- package/extensions/ublocklite/_locales/zh_CN/messages.json +8 -8
- package/extensions/ublocklite/js/jsonpath.js +2 -2
- package/extensions/ublocklite/js/static-filtering-parser.js +3 -1
- package/extensions/ublocklite/js/utils.js +1 -3
- package/extensions/ublocklite/manifest.json +1 -1
- package/extensions/ublocklite/rulesets/generic-details.json +2 -0
- package/extensions/ublocklite/rulesets/main/adguard-mobile.json +1 -2
- package/extensions/ublocklite/rulesets/main/adguard-spyware-url.json +7 -4
- package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +2 -1
- package/extensions/ublocklite/rulesets/main/chn-0.json +23 -13
- package/extensions/ublocklite/rulesets/main/deu-0.json +2 -1
- package/extensions/ublocklite/rulesets/main/dpollock-0.json +1 -0
- package/extensions/ublocklite/rulesets/main/easylist.json +12 -4
- package/extensions/ublocklite/rulesets/main/easyprivacy.json +19 -6
- package/extensions/ublocklite/rulesets/main/fra-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/hrv-0.json +6 -15
- package/extensions/ublocklite/rulesets/main/idn-0.json +6 -2
- package/extensions/ublocklite/rulesets/main/ind-0.json +27 -11
- package/extensions/ublocklite/rulesets/main/isr-0.json +1 -0
- package/extensions/ublocklite/rulesets/main/jpn-1.json +9 -4
- package/extensions/ublocklite/rulesets/main/kor-1.json +3 -2
- package/extensions/ublocklite/rulesets/main/nld-0.json +9 -7
- package/extensions/ublocklite/rulesets/main/nor-0.json +6 -3
- package/extensions/ublocklite/rulesets/main/pgl.json +10 -3
- package/extensions/ublocklite/rulesets/main/pol-0.json +2 -0
- package/extensions/ublocklite/rulesets/main/rus-0.json +11 -9
- package/extensions/ublocklite/rulesets/main/rus-1.json +2 -1
- package/extensions/ublocklite/rulesets/main/spa-1.json +2 -1
- package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +15646 -4853
- package/extensions/ublocklite/rulesets/main/swe-1.json +7 -9
- package/extensions/ublocklite/rulesets/main/tur-0.json +3 -4
- package/extensions/ublocklite/rulesets/main/ublock-badware.json +4 -7
- package/extensions/ublocklite/rulesets/main/ublock-filters.json +46 -21
- package/extensions/ublocklite/rulesets/main/ukr-0.json +3 -5
- package/extensions/ublocklite/rulesets/main/urlhaus-full.json +1554 -196
- package/extensions/ublocklite/rulesets/main/vie-1.json +26 -26
- package/extensions/ublocklite/rulesets/regex/chn-0.json +2 -2
- package/extensions/ublocklite/rulesets/regex/hrv-0.json +20 -0
- package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -1
- package/extensions/ublocklite/rulesets/regex/ublock-filters.json +10 -9
- package/extensions/ublocklite/rulesets/ruleset-details.json +160 -160
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-notifications.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/hrv-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +1 -0
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/hrv-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/rou-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/procedural/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/vie-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-on-stack-trace.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.set-constant.js +541 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hrv-0.set-constant.js +541 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.json-prune-xhr-response.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.prevent-fetch.js +11 -6
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.xml-prune.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-stack-trace.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-attr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-cookie.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{fin-0.spoof-css.js → tur-0.remove-cookie.js} +69 -115
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-fetch-request.js +941 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-xhr-request.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-replace-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-xhr-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +12 -7
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.spoof-css.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-request.js +941 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-argument.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-attr.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.prevent-fetch.js +10 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/specific/adguard-mobile.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-notifications.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/easylist.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/est-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/hrv-0.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/pol-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/rou-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ublock-badware.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
- package/extensions/ublocklite/rulesets/scriptlet-details.json +113 -60
- package/extensions/ublocklite/rulesets/strictblock/chn-0.json +117 -2
- package/extensions/ublocklite/rulesets/strictblock/dpollock-0.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +7 -1
- package/extensions/ublocklite/rulesets/strictblock/hrv-0.json +8 -1
- package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +134 -133
- package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/pgl.json +10 -3
- package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +15646 -4853
- package/extensions/ublocklite/rulesets/strictblock/tur-0.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +10 -10
- package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +3 -3
- package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +1554 -196
- package/extensions/ublocklite/ublock.zip +0 -0
- package/package.json +1 -1
- package/src/browsers/index.ts +17 -8
- package/src/routes/management/http/kill.get.ts +2 -1
- package/src/shared/utils/function/handler.ts +2 -1
- package/src/utils.spec.ts +62 -0
- package/src/utils.ts +3 -0
- package/static/docs/swagger.json +2 -2
- package/static/docs/swagger.min.json +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/ublock-experimental.js +0 -42
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
|
@@ -371,8 +371,8 @@ function getRandomTokenFn() {
|
|
|
371
371
|
/******************************************************************************/
|
|
372
372
|
|
|
373
373
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
374
|
-
const argsList = [["document.createElement","adsbygoogle"],["Math","Flags.newInject"]];
|
|
375
|
-
const hostnamesMap = new Map([["webcams-
|
|
374
|
+
const argsList = [["document.createElement","adsbygoogle.js"],["document.createElement","adsbygoogle"],["Math","Flags.newInject"]];
|
|
375
|
+
const hostnamesMap = new Map([["webcams-vlissingen.nl",0],["webcams-texel.nl",1],["indeleiderstrui.nl",2]]);
|
|
376
376
|
const exceptionsMap = new Map([]);
|
|
377
377
|
const hasEntities = false;
|
|
378
378
|
const hasAncestors = false;
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
|
@@ -484,7 +489,7 @@ function safeSelf() {
|
|
|
484
489
|
|
|
485
490
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
486
491
|
const argsList = [["securepubads.g.doubleclick.net"],["v.fwmrm.net"],["/a[ab]\\.tweakers\\.nl/"],["pubads.g.doubleclick.net/gampad/ads"]];
|
|
487
|
-
const hostnamesMap = new Map([["filmvandaag.nl",0],["vtmgo.be",1],["tweakers.net",2],["goplay.be",3]]);
|
|
492
|
+
const hostnamesMap = new Map([["filmvandaag.nl",0],["vtmgo.be",1],["tweakers.net",2],["play.tv",3],["goplay.be",3]]);
|
|
488
493
|
const exceptionsMap = new Map([]);
|
|
489
494
|
const hasEntities = false;
|
|
490
495
|
const hasAncestors = false;
|
|
@@ -363,7 +363,7 @@ function safeSelf() {
|
|
|
363
363
|
|
|
364
364
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
365
365
|
const argsList = [["Period[id*=\"-ad-\"]","",".mpd"]];
|
|
366
|
-
const hostnamesMap = new Map([["goplay.be",0]]);
|
|
366
|
+
const hostnamesMap = new Map([["play.tv",0],["goplay.be",0]]);
|
|
367
367
|
const exceptionsMap = new Map([]);
|
|
368
368
|
const hasEntities = false;
|
|
369
369
|
const hasAncestors = false;
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
|
@@ -288,8 +288,8 @@ function getRandomTokenFn() {
|
|
|
288
288
|
/******************************************************************************/
|
|
289
289
|
|
|
290
290
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
291
|
-
const argsList = [["AdbBanner"],["CTRManager.host3"],["ClickUndercookie"],["Date.prototype.toUTCString"],["Groups.showDisclaimer"],["Light.Popup"],["Object.prototype.AdfoxXhrRequestPrepared"],["Object.prototype.Metrika"],["Object.prototype.YA_TURBO_PAGES"],["Object.prototype._getBanner"],["Object.prototype._isAutostartQueueSet"],["Object.prototype.bannerOptions"],["Object.prototype.direct"],["Object.prototype.fakeDetect"],["Object.prototype.getAdUsageStorage"],["Object.prototype.initOnPlay"],["Object.prototype.isApplySticky"],["Object.prototype.loadBanner"],["Object.prototype.render"],["Object.prototype.scriptsViaXhr"],["Object.prototype.yaContextCb"],["PUM.getPopup"],["Radish"],["RythmFeed"],["SIN.AdsLoader"],["TotemToolsObject"],["WebSocket"],["XMLHttpRequest"],["Ya"],["_0x1ece"],["__vasActiveTestIds"],["a_urls"],["aab"],["abl"],["adblock_availability_check"],["adcashMacros"],["addLink"],["adjustBackground"],["admiral"],["ads"],["ads_block_check"],["advFirstClickOpenNewTab"],["anOptions"],["antiadblockCallback"],["app_vars.force_disable_adblock"],["as_retry"],["atob"],["
|
|
292
|
-
const hostnamesMap = new Map([["htmlweb.ru",0],["fapreactor.com",1],["pornreactor.cc",1],["reactor.cc",1],["anifap.com",2],["anifap.xyz",2],["anipoisk.org",2],["anitokyo.tv",2],["hcdn.online",2],["kinofilm.co",2],["comedy-radio.ru",[3,30]],["radioromantika.ru",[3,30]],["relax-fm.ru",[3,30]],["rg.ru",[3,
|
|
291
|
+
const argsList = [["AdbBanner"],["CTRManager.host3"],["ClickUndercookie"],["Date.prototype.toUTCString"],["Groups.showDisclaimer"],["Light.Popup"],["Object.prototype.AdfoxXhrRequestPrepared"],["Object.prototype.Metrika"],["Object.prototype.YA_TURBO_PAGES"],["Object.prototype._getBanner"],["Object.prototype._isAutostartQueueSet"],["Object.prototype.bannerOptions"],["Object.prototype.direct"],["Object.prototype.fakeDetect"],["Object.prototype.getAdUsageStorage"],["Object.prototype.initOnPlay"],["Object.prototype.isApplySticky"],["Object.prototype.loadBanner"],["Object.prototype.render"],["Object.prototype.scriptsViaXhr"],["Object.prototype.yaContextCb"],["PUM.getPopup"],["Radish"],["RythmFeed"],["SIN.AdsLoader"],["TotemToolsObject"],["WebSocket"],["XMLHttpRequest"],["Ya"],["_0x1ece"],["__vasActiveTestIds"],["a_urls"],["aab"],["abl"],["adblock_availability_check"],["adcashMacros"],["addLink"],["adjustBackground"],["admiral"],["ads"],["ads_block_check"],["advFirstClickOpenNewTab"],["anOptions"],["antiadblockCallback"],["app_vars.force_disable_adblock"],["as_retry"],["atob"],["bdy"],["blocked_action"],["clickNS4"],["console.clear"],["disable_copy"],["disable_hot_keys"],["document.addEventListener"],["document.body.oncopy"],["document.getElementById","mdl_adb"],["document.oncontextmenu"],["document.oncopy"],["document.ondragend"],["document.ondragstart"],["document.ondrop"],["document.onkeydown"],["document.onpaste"],["document.onselectstart"],["eaglePlayerPlugins.autoplay_position"],["echelon"],["forTheFreeVideo.css"],["fpm_attr"],["getSelection"],["get_ya_browser"],["goTolink"],["helpUsImproveSite"],["initsnow"],["kav_cn"],["lftrght"],["localStorage"],["m205"],["mdpDeBlocker"],["move_string"],["myatu_bgm"],["nocontext"],["noselect"],["onload"],["open"],["preventSelection"],["scrollw"],["setsnow"],["sparkle"],["stopPrntScr"],["t364_initPopup"],["target_script"],["td_ad_background_click_target"],["tingle"],["tnAdditionalParams"],["unSelect"],["updateDownloadLinks"],["utarget_script"],["video.preroll"],["vpb"],["weekCallbacks"],["window.alert"],["window.block"],["wpsite_clickable_data"],["yaContextCb"],["zfgformats"],["ABNS"],["bc_blocks"],["globalAuthLoginPopupCounter"],["u_global_data"]];
|
|
292
|
+
const hostnamesMap = new Map([["htmlweb.ru",0],["fapreactor.com",1],["pornreactor.cc",1],["reactor.cc",1],["anifap.com",2],["anifap.xyz",2],["anipoisk.org",2],["anitokyo.tv",2],["hcdn.online",2],["kinofilm.co",2],["comedy-radio.ru",[3,30]],["radioromantika.ru",[3,30]],["relax-fm.ru",[3,30]],["rg.ru",[3,103]],["sm.news",[3,28,32,84]],["veseloeradio.ru",[3,30]],["www.e1.ru",3],["vk.com",4],["vk.ru",4],["rutor.org",5],["drive2.ru",[6,20]],["liveinternet.ru",[7,8]],["yap.ru",7],["yaplakal.com",7],["lena-miro.ru",9],["levik.blog",9],["livejournal.com",9],["olegmakarenko.ru",9],["periskop.su",9],["shakko.ru",9],["shiro-kino.ru",9],["vadimrazumov.ru",9],["rbc.ru",[10,16]],["www.kinopoisk.ru",11],["gorodrabot.by",12],["gorodrabot.ru",12],["fishki.net",13],["auto.ru",14],["reshu.by",14],["reshuent.kz",14],["sdamgia.ru",14],["gdespaces.com",15],["gdespaces.net",15],["google-cloud.services",15],["spac.me",15],["spac.run",15],["spac.wtf",15],["spac1.com",15],["spac1.net",15],["spac1.org",15],["spaces-blogs.com",15],["spaces.im",15],["spcs-files.xyz",15],["spcs.bio",15],["spcs.me",15],["spcs.network",15],["spcs.pro",15],["spcs.reviews",15],["spcs.social",15],["strip2.club",15],["strip2.in",15],["strip2.xxx",15],["usersporn.com",15],["e1.ru",17],["nova.rambler.ru",17],["pikabu.ru",[17,28]],["24smi.org",18],["gismeteo.by",19],["gismeteo.kz",19],["gismeteo.ru",19],["razlozhi.ru",20],["f1comp.ru",21],["tagaev.com",21],["times.zt.ua",21],["gencit.info",22],["ya.ru",23],["sinoptik.ua",[24,98]],["porngames.su",25],["rintor.info",25],["rintor.net",25],["castle-tv.com",26],["100popugaev.ru",27],["coderlessons.com",27],["fixx.one",27],["its-kids.ru",27],["molitvy.guru",27],["nizhny.ru",27],["pro100hobbi.ru",27],["publy.ru",27],["samelectric.ru",27],["svadba.expert",27],["tehnobzor.ru",[27,77]],["vibir.ru",27],["3dnews.ru",28],["avtovzglyad.ru",28],["baby.ru",28],["cont.ws",28],["dni.ru",28],["pogoda.onliner.by",28],["russian7.ru",28],["selflib.me",28],["sports.ru",[28,43]],["tech.onliner.by",28],["www.goha.ru",28],["nnm-club.me",29],["nnmclub.ro",29],["nnmclub.to",29],["forum.overclockers.ua",31],["kufar.by",32],["bstudy.net",33],["ozlib.com",33],["studbooks.net",33],["studme.org",33],["studref.com",33],["studwood.net",33],["vuzlit.com",33],["xstud.org",33],["vgtimes.ru",34],["upload.ee",35],["versia.ru",36],["bb.lv",37],["footboom.com",[38,65]],["footboom.kz",[38,65]],["electric-house.ru",39],["fearmp4.ru",40],["freehat.cc",[41,83]],["amazinghis.ru",42],["moj-pes.ru",42],["shrlink.top",44],["eurointegration.com.ua",45],["pravda.com.ua",45],["sportanalytic.com",45],["friends.in.ua",[46,53]],["gidonline.eu",[46,90]],["terrikon.com",47],["medicina.ua",48],["zaruba.fun",49],["fm-app.ru",50],["ritsatv.ru",50],["tvapp.su",50],["yootv.ru",50],["kolizhanka.com.ua",[51,52,80]],["gra-prestoliv.in.ua",53],["simpsonsua.tv",53],["pravvest.ru",54],["dclans.ru",55],["animevost.org",56],["animevost.top",56],["doefiratv.info",56],["payeer-gift.ru",56],["smotret-anime-365.ru",56],["turkish-tv-series.ru",[56,61,68]],["ufchgu.ru",56],["vost.pw",56],["xn--b1aew.xn--p1ai",[56,57,58,59,60,62,63]],["my-expert.ru",59],["gazeta.ru",[64,70]],["kinozapas.co",66],["livesx.online",66],["xn--80aikhbrhr.xn--j1amh",66],["7ogorod.ru",67],["autonevod.ru",67],["shtrafsud.ru",67],["tophallclub.ru",67],["zazloo.ru",67],["buhplatforma.com.ua",68],["championat.com",68],["doramy.club",68],["dzplatforma.com.ua",68],["medplatforma.com.ua",68],["oblikbudget.com.ua",68],["oplatforma.com.ua",68],["pro-op.com.ua",68],["prokadry.com.ua",68],["musify.club",69],["dota2.ru",71],["elitesnooker.com",72],["astrakhan.ru",73],["myjane.ru",73],["omskpress.ru",73],["tambovnet.org",73],["daz3d.ru",74],["dorama.land",75],["doramaland.plus",75],["players.com.ua",75],["studizba.com",76],["asteriatm.ru",77],["sudya-dredd.ru",[77,88]],["anime-chan.me",[78,87]],["city.ogo.ua",79],["stoigr.org",81],["it-actual.ru",82],["hlamer.ru",83],["lostpix.com",83],["potokcdn.com",83],["prostoporno.help",83],["saltday.ru",83],["uploadimagex.com",83],["wowskill.ru",83],["xittv.net",83],["zab.ru",85],["tapochek.net",[86,105]],["bryansknovosti.ru",88],["novozybkov.su",88],["moremania.info",89],["kinogo.eu",90],["1informer.com",91],["fainaidea.com",91],["itech.co.ua",91],["mediasat.info",91],["moika78.ru",91],["root-nation.com",91],["fssp.gov.ru",92],["liveforums.ru",93],["onlineclass.space",94],["nsportal.ru",95],["animekun.ru",96],["doramakun.ru",96],["vestivrn.ru",97],["www.ukr.net",98],["4studio.com.ua",99],["cikavosti.com",99],["dialogs.org.ua",99],["fakty.ua",99],["gorodkiev.com.ua",99],["informator.ua",99],["kriminal.tv",99],["pingvin.pro",99],["technoportal.com.ua",99],["u-news.com.ua",99],["uanews.org.ua",99],["volynpost.com",99],["bombardir.ru",100],["comp-service.kiev.ua",100],["inforesist.org",100],["www.xcom-shop.ru",100],["softportal.com",101],["growhow.in.ua",102],["80-e.ru",103],["doramatv.live",103],["examenpdd.com",103],["forum.ixbt.com",103],["shadowcore.ru",103],["animedia.tv",104],["animedub.ru",104],["vsetut.su",104],["liveball.*",105],["porno365.*",106],["ok.ru",107],["3dn.ru",108],["a-point.info",108],["addfiles.ru",108],["akkordam.ru",108],["all-for-kompa.ru",108],["asia-tv.su",108],["at.ua",108],["autosimgames.ru",108],["clan.su",108],["db-energo.ru",108],["devdrivers.ru",108],["do.am",108],["elegos.ru",108],["elektronika56.ru",108],["elektrosat.ru",108],["fon-ki.com",108],["for-gsm.ru",108],["free-dream.ru",108],["ftechedu.ru",108],["fukushima-news.ru",108],["gals.md",108],["gloria-cedric.ru",108],["goldformat.ru",108],["greenflash.su",108],["igrul-ka.ru",108],["krasnickij.ru",108],["krolmen.ru",108],["megaclips.net",108],["mow-portal.ru",108],["moy.su",108],["my1.ru",108],["narod.ru",108],["newgames.com.ua",108],["novospasskoe-city.ru",108],["omsimclub.ru",108],["online-supernatural.ru",108],["only-paper.ru",108],["others.name",108],["pidru4nik.com",108],["pkrc.ru",108],["play-force.ru",108],["pohoronnoe-byuro.com",108],["pokatushki-pmr.ru",108],["pro-zakupki.ru",108],["project-ss.ru",108],["psxworld.ru",108],["radiodom.org",108],["rocketdockfree.ru",108],["sdr-deluxe.com",108],["soft-game.net",108],["stalker-gsc.ru",108],["stalker-zone.info",108],["stalkermods.ru",108],["svadbatomsk.ru",108],["techmusic.ru",108],["tes-game.ru",108],["torfiles.ru",108],["ucoz.club",108],["ucoz.com",108],["ucoz.net",108],["ucoz.org",108],["ucoz.ru",108],["ucoz.ua",108],["usite.pro",108],["vodopads.ru",108],["vsthouse.ru",108],["xakevsoft.ru",108],["xn--80aeshkkbdj.xn--p1ai",108],["yaminecraft.ru",108],["zona-stalkera.ru",108]]);
|
|
293
293
|
const exceptionsMap = new Map([]);
|
|
294
294
|
const hasEntities = true;
|
|
295
295
|
const hasAncestors = false;
|
|
@@ -340,7 +340,7 @@ function getRandomTokenFn() {
|
|
|
340
340
|
/******************************************************************************/
|
|
341
341
|
|
|
342
342
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
343
|
-
const argsList = [["HTMLVideoElement.prototype.play","/index-"],["Object.prototype.autoplay","assets"],["Object.prototype.dispatcher","/chunks/9635"],["Object.prototype.loadAdvertScriptMode","/yastatic\\.net/"],["document.createElement","checkAboba"],["document.getElementById","/723-|ai-2-/"],["fetch","eval"],["window.setTimeout","
|
|
343
|
+
const argsList = [["HTMLVideoElement.prototype.play","/index-"],["Object.prototype.autoplay","assets"],["Object.prototype.dispatcher","/chunks/9635"],["Object.prototype.loadAdvertScriptMode","/yastatic\\.net/"],["document.createElement","checkAboba"],["document.getElementById","/723-|ai-2-/"],["fetch","eval"],["window.setTimeout","R "],["Object.prototype.parallax","window.onload"],["HTMLVideoElement.prototype.play","onCanPlay"],["Object.prototype.crossDomain","ecbrStart"]];
|
|
344
344
|
const hostnamesMap = new Map([["dtf.ru",[0,7]],["vc.ru",0],["tvzvezda.ru",1],["vk.com",2],["vk.ru",2],["ya.ru",3],["shadowcore.ru",4],["ai-next.ru",5],["forums.rusmedserv.com",6],["porno365.*",8],["tass.ru",9],["www.ukr.net",10]]);
|
|
345
345
|
const exceptionsMap = new Map([]);
|
|
346
346
|
const hasEntities = true;
|
package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js
CHANGED
|
@@ -421,9 +421,9 @@ function shouldDebug(details) {
|
|
|
421
421
|
/******************************************************************************/
|
|
422
422
|
|
|
423
423
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
424
|
-
const argsList = [["/^(?:contextmenu|keydown)$/"],["/beforeunload|pagehide/","0x"],["/click|load/","popMagic"],["/click|mousedown/","popunder"],["/click|mousedown/","setClickedUrl"],["/mouse/","cursorVisible"],["DOMContentLoaded","fullscreen-ad"],["DOMContentLoaded",".j-mini-player__video"],["DOMContentLoaded","/EventTracker|utm_campaign/"],["DOMContentLoaded","0x"],["DOMContentLoaded","StrategyHandler"],["DOMContentLoaded","_Modal"],["DOMContentLoaded","encodedUrl"],["DOMContentLoaded","exo_tracker"],["DOMContentLoaded","feedback"],["click","","elements","a[href*=\"?from=\"]"],["click","","elements","a[href*=\"utm_campaign\"]"],["click","","elements","a[href*=\"utm_campaign=\"]"],["click","","elements","[class^=\"plotsLine_\"] > div"],["click","[native code]"],["click","current","elements","[data-testid=\"embed-wrapper\"]"],["click","matches"],["click","pop"],["copy","extra"],["copy","getSelection"],["copy","pagelink"],["download","isMonetized"],["error","","elements","[data-status=\"loading\"]"],["getexoloader"],["load","AdBlock"],["load","detect-modal"],["load","mamydirect"],["loadstart","isImmediatePropagationStopped"],["message","__messagesAtom"],["mousedown","pop.doEvent"],["scroll","getBoundingClientRect"],["scroll","players"],["scroll","window.history.pushState"],["visibilitychange","document.hidden"],["/contextmenu|copy|keydown|selectstart/"],["DOMContentLoaded","click_time"],["/click|destroy|mousedown/","","elements",".html-fishing"],["pause","","elements","video[class*=\"HLSPlayback_player\"]"],["visibilitychange","captureContext"],["click","","elements","a[href^=\"/\"][data-router-link]"]];
|
|
425
|
-
const hostnamesMap = new Map([["7days.ru",[0,
|
|
426
|
-
const exceptionsMap = new Map([["new.fastpic.org",[2,
|
|
424
|
+
const argsList = [["/^(?:contextmenu|keydown)$/"],["/beforeunload|pagehide/","0x"],["/click|load/","popMagic"],["/click|mousedown/","popunder"],["/click|mousedown/","setClickedUrl"],["/mouse/","cursorVisible"],["DOMContentLoaded","fullscreen-ad"],["DOMContentLoaded",".j-mini-player__video"],["DOMContentLoaded","/EventTracker|utm_campaign/"],["DOMContentLoaded","0x"],["DOMContentLoaded","StrategyHandler"],["DOMContentLoaded","_Modal"],["DOMContentLoaded","encodedUrl"],["DOMContentLoaded","exo_tracker"],["DOMContentLoaded","feedback"],["click","","elements","a[href*=\"?from=\"]"],["click","","elements","a[href*=\"utm_campaign\"]"],["click","","elements","a[href*=\"utm_campaign=\"]"],["click","","elements","[class^=\"plotsLine_\"] > div"],["click","[native code]"],["click","current","elements","[data-testid=\"embed-wrapper\"]"],["click","matches"],["click","pop"],["copy","extra"],["copy","getSelection"],["copy","pagelink"],["download","isMonetized"],["error","","elements","[data-status=\"loading\"]"],["error","(e){t(e)}"],["getexoloader"],["load","AdBlock"],["load","detect-modal"],["load","mamydirect"],["loadstart","isImmediatePropagationStopped"],["message","__messagesAtom"],["mousedown","pop.doEvent"],["scroll","getBoundingClientRect"],["scroll","players"],["scroll","window.history.pushState"],["visibilitychange","document.hidden"],["/contextmenu|copy|keydown|selectstart/"],["DOMContentLoaded","click_time"],["/click|destroy|mousedown/","","elements",".html-fishing"],["pause","","elements","video[class*=\"HLSPlayback_player\"]"],["visibilitychange","captureContext"],["click","","elements","a[href^=\"/\"][data-router-link]"]];
|
|
425
|
+
const hostnamesMap = new Map([["7days.ru",[0,44]],["drive2.ru",1],["shedevrum.ai",1],["fastpic.org",[2,29]],["biqle.org",3],["biqle.ru",3],["lrepacks.net",[4,22]],["fm-app.ru",5],["tvapp.su",5],["yootv.ru",5],["cq.ru",6],["rambler.ru",[7,23]],["sibnet.ru",8],["sports.ru",9],["buhplatforma.com.ua",10],["dzplatforma.com.ua",10],["medplatforma.com.ua",10],["oblikbudget.com.ua",10],["oplatforma.com.ua",10],["pro-op.com.ua",10],["prokadry.com.ua",10],["doramaland.plus",11],["1progs.me",12],["xv-ru.com",13],["litnet.com",14],["vedomosti.ru",15],["regnum.news",16],["regnum.ru",16],["tproger.ru",16],["forbes.ru",17],["116.ru",18],["14.ru",18],["161.ru",18],["164.ru",18],["173.ru",18],["178.ru",18],["26.ru",18],["29.ru",18],["35.ru",18],["43.ru",18],["45.ru",18],["48.ru",18],["51.ru",18],["53.ru",18],["56.ru",18],["59.ru",18],["60.ru",18],["63.ru",18],["68.ru",18],["71.ru",18],["72.ru",18],["74.ru",18],["76.ru",18],["86.ru",18],["89.ru",18],["93.ru",18],["chita.ru",18],["e1.ru",18],["ircity.ru",18],["izh1.ru",18],["mgorsk.ru",18],["msk1.ru",18],["ngs.ru",18],["ngs22.ru",18],["ngs24.ru",18],["ngs42.ru",18],["ngs55.ru",18],["ngs70.ru",18],["nn.ru",18],["sochi1.ru",18],["sterlitamak1.ru",18],["tolyatty.ru",18],["ufa1.ru",18],["v1.ru",18],["vladivostok1.ru",18],["voronezh1.ru",18],["www.fontanka.ru",[18,44]],["ya62.ru",18],["softonic.ru",19],["rutube.ru",[20,34,39]],["smotrim.ru",21],["kp.kg",[24,44]],["kp.kz",[24,44]],["kp.md",[24,44]],["kp.ru",[24,44]],["rbc.ru",24],["sportrbc.ru",24],["carservic.ru",25],["iptv.org.ua",25],["newxboxone.ru",25],["tva.org.ua",25],["ufchgu.ru",25],["megaprogz.ru",26],["programhub.ru",26],["trychatgpt.ru",27],["rg.ru",28],["romakatya.ru",30],["blackwot.ru",31],["overclockers.ru",32],["bonus-tv.ru",33],["kinoblin.ru",35],["pornoakt.info",35],["serialai.ru",35],["m.lenta.ru",36],["www.vesti.ru",37],["lenta.ru",38],["autonews.co.ua",40],["in-poland.com",40],["liveball.*",40],["ukrainianwall.com",40],["fap-guru.*",41],["seks-studentki.*",41],["sex-studentki.*",41],["e.mail.ru",42],["octavius.mail.ru",42],["tass.ru",43],["cdn.viqeo.tv",44],["kinonews.ru",44],["mk.ru",44],["ohotniki.ru",44],["portalvirtualreality.ru",44],["radiokp.ru",44],["sportkp.ru",44],["the-day.ru",44],["woman.ru",44],["dtf.ru",45]]);
|
|
426
|
+
const exceptionsMap = new Map([["new.fastpic.org",[2,29]],["id.rambler.ru",[7,23]],["vp.rambler.ru",[7,23]],["player.smotrim.ru",[21]],["mail.rambler.ru",[23]]]);
|
|
427
427
|
const hasEntities = true;
|
|
428
428
|
const hasAncestors = false;
|
|
429
429
|
|
|
@@ -442,8 +442,8 @@ function urlSkip(url, blocked, steps, directive = {}) {
|
|
|
442
442
|
/******************************************************************************/
|
|
443
443
|
|
|
444
444
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
445
|
-
const argsList = [["[href*=\"?url=https\"]","?url"],["a[href*=\"&link=https://\"]","?link"],["a[href*=\".
|
|
446
|
-
const hostnamesMap = new Map([["mp3party.net",0],["portalvirtualreality.ru",1],["e.mail.ru",[2,
|
|
445
|
+
const argsList = [["[href*=\"?url=https\"]","?url"],["a[href*=\"&link=https://\"]","?link"],["a[href*=\".mck\"][href*=\".ru/c/\"]","?u"],["a[href*=\".php?go=\"]","?go"],["a[href*=\"/away.php?\"]","?to"],["a[href*=\"/away?\"]","?to"],["a[href*=\"/bitrix/rk.php?goto=https\"]","?goto"],["a[href*=\"/go.php\"]","?url"],["a[href*=\"/redir.php?r=\"]","?r"],["a[href*=\"/redir/\"]","?exturl"],["a[href*=\"/redir/\"]","?vzurl"],["a[href*=\"/redirect?to=\"]","?to"],["a[href*=\"://click.opennet.ru/cgi-bin/\"]","?to"],["a[href*=\"?goto=https\"]","?goto"],["a[href*=\"deeplink=\"]","?deeplink"],["a[href][rel*=\"sponsored\"][target=\"_blank\"]","?goto"],["a[href][target=\"_blank\"]","?ulp"],["a[href^=\"//www.ixbt.com/click/?c=\"]","[title]"],["a[href^=\"/engine/dwn\"]","?xf"],["a[href^=\"https://click.email4customers.com/Link?\"]","?args"],["a[href^=\"https://fixti.ru/download.php?files=\"]","?files"],["a[href^=\"https://go.2038.pro/\"][href*=\"?dl=\"]","?dl"],["a[href^=\"https://pikabu.ru/\"][href*=\"?u=http\"]","?u"],["a[href^=\"https://robot.mos.ru/\"]","?url"],["a[href^=\"https://www.google.com/url?q=\"]"],["a[href^=\"https://www.gosuslugi.ru/ref?t=\"]","?to"],["a[href^=\"https://www.youtube.com/redirect?event=\"][href*=\"&q=http\"]","?q"],["[href^=\"https://checklink.mail.ru/proxy?\"]","?url"],["[href^=\"https://click.mail.ru/redir?u=\"]","?u"],["[href^=\"https://clicker.mail.ru/redir?u=\"]","?u"],["[data-cke-saved-href^=\"https://checklink.mail.ru/proxy?\"]"]];
|
|
446
|
+
const hostnamesMap = new Map([["mp3party.net",0],["portalvirtualreality.ru",1],["e.mail.ru",[2,19,23,25,30]],["mail.rambler.ru",[2,19,23,25]],["mail.yandex.ru",[2,19,23,25]],["octavius.mail.ru",[2,19,23,25,30]],["softoroom.org",3],["vk.com",4],["vk.ru",4],["vkvideo.ru",4],["dzen.ru",5],["freehat.cc",6],["lalapaluza.ru",6],["game4you.top",7],["innal.top",7],["naylo.top",7],["rustorka.com",7],["rustorka.net",7],["rustorka.top",7],["rustorkacom.lib",7],["stalkermods.ru",8],["vz.ru",[9,10]],["dtf.ru",11],["vc.ru",[11,21]],["opennet.me",12],["opennet.ru",12],["appleinsider.ru",13],["kluchikipro.ru",14],["lifehacker.ru",[15,16]],["hot.game",16],["www.ixbt.com",17],["wotspeak.org",18],["rsload.net",20],["pikabu.ru",22],["nsportal.ru",24],["youtube.com",26],["light.mail.ru",[27,28]],["my.mail.ru",29]]);
|
|
447
447
|
const exceptionsMap = new Map([]);
|
|
448
448
|
const hasEntities = false;
|
|
449
449
|
const hasAncestors = false;
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
|
@@ -324,8 +324,8 @@ function safeSelf() {
|
|
|
324
324
|
/******************************************************************************/
|
|
325
325
|
|
|
326
326
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
327
|
-
const argsList = [["autoplay","[data-video-player=\"small\"]","stay"],["autoplay","video","stay"],["autoplay|loop",".watch-live__link > video","stay"],["autoplay|loop","video","stay"],["class",".js-video-box__container"],["data-autoplay","video"],["disabled",".uk-modal-footer > button"],["oncontextmenu","[class]","stay"],["oncontextmenu|oncopy|onselectstart"]];
|
|
328
|
-
const hostnamesMap = new Map([["i-ua.tv",0],["cnews.ru",1],["gfycat.com",1],["inter.ua",1],["obozrevatel.com",1],["platformcraft.ru",1],["protv.md",1],["rg.ru",1],["rusvesna.su",1],["tv8.md",1],["xsport.ua",1],["u24.ua",2],["afisha.ru",3],["film.ru",3],["filmpro.ru",3],["thelastupd.org",3],["lenta.ru",4],["svoboda.org",5],["myshared.ru",6],["lostfilm.download",7],["lostfilm.life",7],["lostfilm.one",7],["lostfilm.pro",7],["lostfilm.today",7],["lostfilm.tv",7],["lostfilm.tw",7],["lostfilm.uno",7],["lostfilm.win",7],["lostfilmtv.site",7],["lostfilmtv.uno",7],["lostfilmtv1.site",7],["lostfilmtv2.site",7],["lostfilmtv3.site",7],["lostfilmtv4.site",7],["lostfilmtv5.site",7],["stalker-mods.clan.su",8],["stalker-mods.su",8]]);
|
|
327
|
+
const argsList = [["autoplay","[data-video-player=\"small\"]","stay"],["autoplay","video","stay"],["autoplay|loop",".watch-live__link > video","stay"],["autoplay|loop","video","stay"],["class",".js-video-box__container"],["data-autoplay","video"],["disabled",".uk-modal-footer > button"],["oncontextmenu","[class]","stay"],["oncontextmenu|oncopy|onselectstart"],["onmousedown|unselectable|onselectstart|oncontextmenu",".noselect","stay"]];
|
|
328
|
+
const hostnamesMap = new Map([["i-ua.tv",0],["cnews.ru",1],["gfycat.com",1],["inter.ua",1],["obozrevatel.com",1],["platformcraft.ru",1],["protv.md",1],["rg.ru",1],["rusvesna.su",1],["tv8.md",1],["xsport.ua",1],["u24.ua",2],["afisha.ru",3],["film.ru",3],["filmpro.ru",3],["thelastupd.org",3],["lenta.ru",4],["svoboda.org",5],["myshared.ru",6],["lostfilm.download",7],["lostfilm.life",7],["lostfilm.one",7],["lostfilm.pro",7],["lostfilm.today",7],["lostfilm.tv",7],["lostfilm.tw",7],["lostfilm.uno",7],["lostfilm.win",7],["lostfilmtv.site",7],["lostfilmtv.uno",7],["lostfilmtv1.site",7],["lostfilmtv2.site",7],["lostfilmtv3.site",7],["lostfilmtv4.site",7],["lostfilmtv5.site",7],["stalker-mods.clan.su",8],["stalker-mods.su",8],["author.today",9]]);
|
|
329
329
|
const exceptionsMap = new Map([]);
|
|
330
330
|
const hasEntities = false;
|
|
331
331
|
const hasAncestors = false;
|
|
@@ -296,7 +296,7 @@ function safeSelf() {
|
|
|
296
296
|
|
|
297
297
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
298
298
|
const argsList = [["/^bda|^bltsr/"],["/adblock_/"],["hurricane"],["isab"],["shedevrum-aab"],["yadb"]];
|
|
299
|
-
const hostnamesMap = new Map([["comedy-radio.ru",0],["kufar.by",0],["radioromantika.ru",0],["relax-fm.ru",0],["rg.ru",0],["sm.news",0],["
|
|
299
|
+
const hostnamesMap = new Map([["comedy-radio.ru",0],["kufar.by",0],["radioromantika.ru",0],["relax-fm.ru",0],["rg.ru",0],["sm.news",0],["veseloeradio.ru",0],["yapx.ru",1],["drive2.ru",2],["24smi.org",3],["shedevrum.ai",4],["kakprosto.ru",5]]);
|
|
300
300
|
const exceptionsMap = new Map([]);
|
|
301
301
|
const hasEntities = false;
|
|
302
302
|
const hasAncestors = false;
|
|
@@ -345,7 +345,7 @@ function runAt(fn, when) {
|
|
|
345
345
|
|
|
346
346
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
347
347
|
const argsList = [["._1z_ ._21_","style",""],[".comment-media .andropov-video video","controls","true"],[".cycle-carousel-wrap > a.bottom_slide__item > img","src","[data-src]"],[".media .andropov-video video","controls","true"],[".owl-item > a > img","src","[data-src]"],["[class^=\"articleBlockVideo_\"] video","controls","true"],["img[src=\"https://overclockers.ru/assets/logo_gray_stub.gif\"]","src","[data-src]"],["video","controls","true"],["video[controls=\"controls\"]","controls","true"],["#progress-value","data-timer","25"],[".html-fishing a","target","true"],["video[class*=\"HLSPlayback_player\"]","controls","true"]];
|
|
348
|
-
const hostnamesMap = new Map([["playvillage.ru",0],["dtf.ru",[1,3]],["vc.ru",[1,3]],["fishki.net",2],["eneyida.tv",4],["fontanka.ru",5],["overclockers.ru",6],["joyreactor.cc",7],["reactor.cc",7],["3dnews.ru",8],["howdyho.*",9],["e.mail.ru",10],["octavius.mail.ru",10],["tass.ru",11]]);
|
|
348
|
+
const hostnamesMap = new Map([["playvillage.ru",0],["dtf.ru",[1,3]],["vc.ru",[1,3]],["fishki.net",2],["eneyida.tv",4],["fontanka.ru",5],["overclockers.ru",6],["joyreactor.cc",7],["reactor.cc",7],["embed.rg.ru",7],["3dnews.ru",8],["howdyho.*",9],["e.mail.ru",10],["octavius.mail.ru",10],["tass.ru",11]]);
|
|
349
349
|
const exceptionsMap = new Map([]);
|
|
350
350
|
const hasEntities = true;
|
|
351
351
|
const hasAncestors = false;
|
|
@@ -460,8 +460,8 @@ function validateConstantFn(trusted, raw, extraArgs = {}) {
|
|
|
460
460
|
/******************************************************************************/
|
|
461
461
|
|
|
462
462
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
463
|
-
const argsList = [["ADV_DISABLED","true"],["Clicks._test_meta_referer","null"],["Object.prototype.AdChoices","undefined"],["Object.prototype.AdvObject","noopFunc"],["Object.prototype.AdvertisementManager","undefined"],["Object.prototype.IS_CHECK_REGISTRATION","false"],["Object.prototype.MediaReady","noopFunc"],["Object.prototype.PLAYED","null"],["Object.prototype._currentAgeRestriction","null"],["Object.prototype.adblockSettings","undefined"],["Object.prototype.advert","null"],["Object.prototype.advert","undefined"],["Object.prototype.advertObject","null"],["Object.prototype.afg","true"],["Object.prototype.amp","noopFunc"],["Object.prototype.autoPlay","false"],["Object.prototype.autoPlay","null"],["Object.prototype.autoPopups","undefined"],["Object.prototype.autoplay","false"],["Object.prototype.autoplay","null"],["Object.prototype.autostart","noopFunc"],["Object.prototype.branding","undefined"],["Object.prototype.changeVisible","noopFunc"],["Object.prototype.createBannerItem","null"],["Object.prototype.detect","noopFunc"],["Object.prototype.detectAdblock","noopFunc"],["Object.prototype.detectAdblock","undefined"],["Object.prototype.detectBlockAds","noopFunc"],["Object.prototype.disableAutoplay","true"],["Object.prototype.disablePaste","false"],["Object.prototype.disableSeek","noopFunc"],["Object.prototype.disableSelection","noopFunc"],["Object.prototype.getAutoplay","noopFunc"],["Object.prototype.getPlacement","undefined"],["Object.prototype.getUaasConfig","undefined"],["Object.prototype.initYaVersion","undefined"],["Object.prototype.initialAutoplay","null"],["Object.prototype.isCustomBannerType","undefined"],["Object.prototype.livetv-state","true"],["Object.prototype.manualAutoplay_","null"],["Object.prototype.minPlayingVisibleHeight","noopFunc"],["Object.prototype.partnerId","{}"],["Object.prototype.playVideo","noopFunc"],["PageBottomBanners","undefined"],["String.fromCharCode","trueFunc"],["Unauthorized2","undefined"],["adBlock","false"],["adsenseIsLoaded","true"],["app.book.external","null"],["cadb","false"],["clicks","2"],["countdownNum","0"],["g_GazetaNoExchange","true"],["history.replaceState","noopFunc"],["isAdFree","noopFunc"],["localStorage.localstorageGameData",""],["main_air_closed","true"],["navigator.sendBeacon","noopFunc"],["noAdsAtAll","{}"],["pl.getParams.isPlay","null"],["player.options.scroll","false"],["playerOptions.behaviour.autoPlay","false"],["player_options.autoplay","false"],["portal.isRedirectToYandexSearchAfterDownloadEnabled","false"],["timeEnd","1"],["top100Counter","false"],["window.EUMP.plugins.antiblock","noopFunc"],["window.ab","false"],["window.c","4"],["Object.prototype.preroll","undefined"],["flashvars.protect_block",""],["NO_ADV","1"],["Object.prototype.autoPlayParams","false"],["Object.prototype.detectAdBlock","undefined"],["Object.prototype.enableMimic","noopFunc"],["Object.prototype.mimic","undefined"],["Object.prototype.obfuscateParams","undefined"],["Object.prototype.runMimic","noopFunc"],["Object.prototype.useMimic","noopFunc"],["__PHS._.props.html","{}"],["document.title","null"],["mr._mimic.locator.transform","undefined"],["Object.prototype.hasAdBlock","null"],["Object.prototype.autoPlay","{}"],["Object.prototype.AdvertisingManager","noopFunc"],["Object.prototype.autoplay","noopFunc"],["Object.prototype.hasAdBlock","false"]];
|
|
464
|
-
const hostnamesMap = new Map([["peers.tv",0],["www.ukr.net",1],["vk.com",[2,43,45,58]],["vk.ru",[2,43,45,58]],["ivi.ru",[3,12]],["ictv.ua",4],["inter.ua",4],["k1.ua",4],["novy.tv",4],["ntn.ua",4],["starlight.digital",4],["stb.ua",4],["teleportal.ua",4],["player.vgtrk.com",5],["tv-gubernia.ru",[6,56]],["xsport.ua",7],["1tv.ru",[8,30,66]],["api-video.khl.ru",9],["razlozhi.ru",[10,49]],["ren.tv",11],["rutube.ru",11],["igroutka.ru",13],["kinonews.ru",14],["cdnvideo.ru",15],["eda.ru",15],["mania.gcdn.co",15],["vp.rambler.ru",[15,40]],["www.rambler.ru",15],["afisha.ru",16],["partnerkin.com",17],["frontend.vh.yandex.ru",[18,32,36,41]],["eagleplatform.com",[19,60]],["embed.dugout.com",20],["sports.ru",21],["dni.expert",22],["dni.ru",22],["kp.kg",22],["kp.kz",22],["kp.md",22],["kp.ru",22],["ladys.media",22],["lifehacker.ru",22],["mk.ru",22],["ohotniki.ru",22],["portalvirtualreality.ru",22],["radiokp.ru",22],["russian.rt.com",22],["sportkp.ru",22],["stopgame.ru",22],["the-day.ru",22],["woman.ru",22],["womanhit.ru",22],["ati.su",23],["24smi.org",24],["examenpdd.com",25],["dtf.ru",26],["retail.ru",27],["embed.twitch.tv",28],["player.twitch.tv",28],["www.mos.ru",29],["kinokong.sk",31],["dzen.ru",[32,33,35,37,41]],["shedevrum.ai",34],["rbc.ru",38],["sportrbc.ru",38],["tenews.org.ua",39],["naydex.net",41],["widgets.kinopoisk.ru",41],["www.kinopoisk.ru",41],["yastatic.net",41],["3dnews.ru",42],["vm.ru",42],["free-tor.info",44],["korsars.info",44],["hentai-share.one",46],["in-poland.com",47],["gdz-putina.fun",48],["gdz.ninja",48],["gdz.ru",48],["gdzotputina.club",48],["gdzputina.net",48],["megaresheba.com",48],["megaresheba.ru",48],["resheba.me",48],["spishi.fun",48],["zoobrilka.net",48],["audioportal.su",50],["pb.wtf",51],["pirat.one",51],["piratbit.fun",51],["piratbit.org",51],["piratbit.top",51],["gazeta.ru",[52,53,54]],["playground.ru",55],["116.ru",[57,
|
|
463
|
+
const argsList = [["ADV_DISABLED","true"],["Clicks._test_meta_referer","null"],["Object.prototype.AdChoices","undefined"],["Object.prototype.AdvObject","noopFunc"],["Object.prototype.AdvertisementManager","undefined"],["Object.prototype.IS_CHECK_REGISTRATION","false"],["Object.prototype.MediaReady","noopFunc"],["Object.prototype.PLAYED","null"],["Object.prototype._currentAgeRestriction","null"],["Object.prototype.adblockSettings","undefined"],["Object.prototype.advert","null"],["Object.prototype.advert","undefined"],["Object.prototype.advertObject","null"],["Object.prototype.afg","true"],["Object.prototype.amp","noopFunc"],["Object.prototype.autoPlay","false"],["Object.prototype.autoPlay","null"],["Object.prototype.autoPopups","undefined"],["Object.prototype.autoplay","false"],["Object.prototype.autoplay","null"],["Object.prototype.autostart","noopFunc"],["Object.prototype.branding","undefined"],["Object.prototype.changeVisible","noopFunc"],["Object.prototype.createBannerItem","null"],["Object.prototype.detect","noopFunc"],["Object.prototype.detectAdblock","noopFunc"],["Object.prototype.detectAdblock","undefined"],["Object.prototype.detectBlockAds","noopFunc"],["Object.prototype.disableAutoplay","true"],["Object.prototype.disablePaste","false"],["Object.prototype.disableSeek","noopFunc"],["Object.prototype.disableSelection","noopFunc"],["Object.prototype.getAutoplay","noopFunc"],["Object.prototype.getPlacement","undefined"],["Object.prototype.getUaasConfig","undefined"],["Object.prototype.initYaVersion","undefined"],["Object.prototype.initialAutoplay","null"],["Object.prototype.isCustomBannerType","undefined"],["Object.prototype.livetv-state","true"],["Object.prototype.manualAutoplay_","null"],["Object.prototype.minPlayingVisibleHeight","noopFunc"],["Object.prototype.partnerId","{}"],["Object.prototype.playVideo","noopFunc"],["PageBottomBanners","undefined"],["String.fromCharCode","trueFunc"],["Unauthorized2","undefined"],["adBlock","false"],["adsenseIsLoaded","true"],["app.book.external","null"],["cadb","false"],["clicks","2"],["countdownNum","0"],["g_GazetaNoExchange","true"],["history.replaceState","noopFunc"],["isAdFree","noopFunc"],["localStorage.localstorageGameData",""],["main_air_closed","true"],["navigator.sendBeacon","noopFunc"],["noAdsAtAll","{}"],["pl.getParams.isPlay","null"],["player.options.scroll","false"],["playerOptions.behaviour.autoPlay","false"],["player_options.autoplay","false"],["portal.isRedirectToYandexSearchAfterDownloadEnabled","false"],["timeEnd","1"],["top100Counter","false"],["window.EUMP.plugins.antiblock","noopFunc"],["window.ab","false"],["window.c","4"],["Object.prototype.preroll","undefined"],["flashvars.protect_block",""],["NO_ADV","1"],["Object.prototype.autoPlayParams","false"],["Object.prototype.detectAdBlock","undefined"],["Object.prototype.enableMimic","noopFunc"],["Object.prototype.mimic","undefined"],["Object.prototype.obfuscateParams","undefined"],["Object.prototype.runMimic","noopFunc"],["Object.prototype.useMimic","noopFunc"],["__PHS._.props.html","{}"],["document.title","null"],["mr._mimic.locator.transform","undefined"],["Object.prototype.hasAdBlock","null"],["HTMLVideoElement.prototype.play","{}"],["Object.prototype.autoPlay","{}"],["Object.prototype.AdvertisingManager","noopFunc"],["Object.prototype.autoplay","noopFunc"],["Object.prototype.hasAdBlock","false"]];
|
|
464
|
+
const hostnamesMap = new Map([["peers.tv",0],["www.ukr.net",1],["vk.com",[2,43,45,58]],["vk.ru",[2,43,45,58]],["ivi.ru",[3,12]],["ictv.ua",4],["inter.ua",4],["k1.ua",4],["novy.tv",4],["ntn.ua",4],["starlight.digital",4],["stb.ua",4],["teleportal.ua",4],["player.vgtrk.com",5],["tv-gubernia.ru",[6,56]],["xsport.ua",7],["1tv.ru",[8,30,66]],["api-video.khl.ru",9],["razlozhi.ru",[10,49]],["ren.tv",11],["rutube.ru",11],["igroutka.ru",13],["kinonews.ru",14],["cdnvideo.ru",15],["eda.ru",15],["mania.gcdn.co",15],["vp.rambler.ru",[15,40]],["www.rambler.ru",15],["afisha.ru",16],["partnerkin.com",17],["frontend.vh.yandex.ru",[18,32,36,41]],["eagleplatform.com",[19,60]],["embed.dugout.com",20],["sports.ru",21],["dni.expert",22],["dni.ru",22],["kp.kg",22],["kp.kz",22],["kp.md",22],["kp.ru",22],["ladys.media",22],["lifehacker.ru",22],["mk.ru",22],["ohotniki.ru",22],["portalvirtualreality.ru",22],["radiokp.ru",22],["russian.rt.com",22],["sportkp.ru",22],["stopgame.ru",22],["the-day.ru",22],["woman.ru",22],["womanhit.ru",22],["ati.su",23],["24smi.org",24],["examenpdd.com",25],["dtf.ru",26],["retail.ru",27],["embed.twitch.tv",28],["player.twitch.tv",28],["www.mos.ru",29],["kinokong.sk",31],["dzen.ru",[32,33,35,37,41]],["shedevrum.ai",34],["rbc.ru",38],["sportrbc.ru",38],["tenews.org.ua",39],["naydex.net",41],["widgets.kinopoisk.ru",41],["www.kinopoisk.ru",41],["yastatic.net",41],["3dnews.ru",42],["vm.ru",42],["free-tor.info",44],["korsars.info",44],["hentai-share.one",46],["in-poland.com",47],["gdz-putina.fun",48],["gdz.ninja",48],["gdz.ru",48],["gdzotputina.club",48],["gdzputina.net",48],["megaresheba.com",48],["megaresheba.ru",48],["resheba.me",48],["spishi.fun",48],["zoobrilka.net",48],["audioportal.su",50],["pb.wtf",51],["pirat.one",51],["piratbit.fun",51],["piratbit.org",51],["piratbit.top",51],["gazeta.ru",[52,53,54]],["playground.ru",55],["116.ru",[57,86]],["14.ru",[57,86]],["161.ru",[57,86]],["164.ru",[57,86]],["173.ru",[57,86]],["178.ru",[57,86]],["26.ru",[57,86]],["29.ru",[57,86]],["35.ru",[57,86]],["43.ru",[57,86]],["45.ru",[57,86]],["48.ru",[57,86]],["51.ru",[57,86]],["53.ru",[57,86]],["56.ru",[57,86]],["59.ru",[57,86]],["60.ru",[57,86]],["63.ru",[57,86]],["68.ru",[57,86]],["71.ru",[57,86]],["72.ru",[57,86]],["74.ru",[57,86]],["76.ru",[57,86]],["86.ru",[57,86]],["89.ru",[57,86]],["93.ru",[57,86]],["chita.ru",[57,86]],["e1.ru",[57,86]],["ircity.ru",[57,86]],["izh1.ru",[57,86]],["mgorsk.ru",[57,86]],["msk1.ru",[57,86]],["ngs.ru",[57,86]],["ngs22.ru",[57,86]],["ngs24.ru",[57,86]],["ngs42.ru",[57,86]],["ngs55.ru",[57,86]],["ngs70.ru",[57,86]],["nn.ru",[57,86]],["sochi1.ru",[57,86]],["sterlitamak1.ru",[57,86]],["tolyatty.ru",[57,86]],["ufa1.ru",[57,86]],["v1.ru",[57,86]],["vladivostok1.ru",[57,86]],["voronezh1.ru",[57,86]],["www.fontanka.ru",[57,86]],["ya62.ru",[57,86]],["player.smotrim.ru",59],["kinescope.io",61],["m24.ru",62],["megaprogz.ru",63],["programhub.ru",63],["softportal.com",64],["rambler.ru",65],["remont-aud.net",67],["wdho.ru",68],["fanserial.*",69],["fanserialstv.net",69],["hdrezka.*",69],["rezka.*",69],["smaxim.*",70],["okminigames.mail.ru",71],["player-smotri.mail.ru",72],["ok.ru",[73,76]],["finance.mail.ru",74],["news.mail.ru",[74,79]],["sportmail.ru",74],["vfokuse.mail.ru",74],["mail.ru",[75,80,81]],["my.mail.ru",77],["pogoda.mail.ru",78],["e.mail.ru",[82,87]],["octavius.mail.ru",82],["embed.rg.ru",83],["tass.ru",84],["mail.ukr.net",85]]);
|
|
465
465
|
const exceptionsMap = new Map([["calls.mail.ru",[75,80,81]],["e.mail.ru",[75,80,81]],["finance.mail.ru",[75,80,81]],["my.mail.ru",[75,80,81]],["news.mail.ru",[75,80,81]],["o2.mail.ru",[75,80,81]],["octavius.mail.ru",[75,80,81]],["sportmail.ru",[75]],["touch.mail.ru",[75,80,81]],["vfokuse.mail.ru",[75,80,81]],["3igames.mail.ru",[80,81]],["account.mail.ru",[80,81]],["auto.mail.ru",[80,81]],["biz.mail.ru",[80,81]],["bonus.mail.ru",[80,81]],["calendar.mail.ru",[80,81]],["cloud.mail.ru",[80,81]],["connect.mail.ru",[80,81]],["deti.mail.ru",[80,81]],["dobro.mail.ru",[80,81]],["gibdd.mail.ru",[80,81]],["health.mail.ru",[80,81]],["help.mail.ru",[80,81]],["hi-tech.mail.ru",[80,81]],["horo.mail.ru",[80,81]],["kino.mail.ru",[80,81]],["lady.mail.ru",[80,81]],["love.mail.ru",[80,81]],["mcs.mail.ru",[80,81]],["minigames.mail.ru",[80,81]],["okminigames.mail.ru",[80,81]],["otvet.mail.ru",[80,81]],["pets.mail.ru",[80,81]],["player-smotri.mail.ru",[80,81]],["pogoda.mail.ru",[80,81]],["top.mail.ru",[80,81]],["tv.mail.ru",[80,81]],["widgets.mail.ru",[80,81]],["blog.mail.ru",[81]]]);
|
|
466
466
|
const hasEntities = true;
|
|
467
467
|
const hasAncestors = false;
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|
package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js
CHANGED
|
@@ -421,8 +421,8 @@ function shouldDebug(details) {
|
|
|
421
421
|
/******************************************************************************/
|
|
422
422
|
|
|
423
423
|
const scriptletGlobals = {}; // eslint-disable-line
|
|
424
|
-
const argsList = [["load","/adblock/i"],["click","checkTarget"],["click","popundr"],["click","showPop"],["click","lastOpened"],["click","/reklam/i"],["click","openPopup"],["","checkAndOpenPopup"],["DOMContentLoaded","var adx ="],["DOMContentLoaded","videotutucu"],["click","window.open"]];
|
|
425
|
-
const hostnamesMap = new Map([["merlinscans.com",0],["720pfilmizleme1.com",1],["720pfilmizletir.com",1],["1080pfilmizletir.com",1],["720pfilmizlesene.com",1],["filmmakinesi1.*",1],["filmizlemax.*",1],["videoseyred.in",1],["hdfilmcehennem.live",1],["eescobarvip.com",2],["dizirix.net",3],["dizipal.website",
|
|
424
|
+
const argsList = [["load","/adblock/i"],["click","checkTarget"],["click","popundr"],["click","showPop"],["message","localStorage"],["click","lastOpened"],["click","/reklam/i"],["click","openPopup"],["","checkAndOpenPopup"],["DOMContentLoaded","var adx ="],["DOMContentLoaded","videotutucu"],["click","window.open"]];
|
|
425
|
+
const hostnamesMap = new Map([["merlinscans.com",0],["720pfilmizleme1.com",1],["720pfilmizletir.com",1],["1080pfilmizletir.com",1],["720pfilmizlesene.com",1],["filmmakinesi1.*",1],["filmizlemax.*",1],["videoseyred.in",1],["hdfilmcehennem.live",1],["eescobarvip.com",2],["dizirix.net",3],["yabancidiziio.com",4],["dizipal.website",5],["fullfilmcibabaizlet.com",6],["fullfilmcibaba.nl",6],["uzaymanga.com",7],["epikplayer.xyz",8],["dizipal.org",9],["klasikfilmler1.cc",10],["klasikfilmler2.cc",10],["klasikfilmler3.cc",10],["klasikfilmler4.cc",10],["klasikfilmler5.cc",10],["klasikfilmler6.cc",10],["klasikfilmler7.cc",10],["klasikfilmler8.cc",10],["klasikfilmler9.cc",10],["klasikfilmler10.cc",10],["klasikfilmler11.cc",10],["klasikfilmler12.cc",10],["klasikfilmler13.cc",10],["klasikfilmler14.cc",10],["klasikfilmler15.cc",10],["klasikfilmler16.cc",10],["klasikfilmler17.cc",10],["klasikfilmler18.cc",10],["klasikfilmler19.cc",10],["klasikfilmler20.cc",10],["xyzsports173.xyz",11],["xyzsports174.xyz",11],["xyzsports175.xyz",11],["xyzsports176.xyz",11],["xyzsports177.xyz",11],["xyzsports178.xyz",11],["xyzsports179.xyz",11],["xyzsports180.xyz",11],["xyzsports181.xyz",11],["xyzsports182.xyz",11],["xyzsports183.xyz",11],["xyzsports184.xyz",11],["xyzsports185.xyz",11],["xyzsports186.xyz",11],["xyzsports187.xyz",11],["xyzsports188.xyz",11],["xyzsports189.xyz",11],["xyzsports190.xyz",11],["xyzsports191.xyz",11],["xyzsports192.xyz",11],["xyzsports193.xyz",11],["xyzsports194.xyz",11],["xyzsports195.xyz",11],["xyzsports197.xyz",11],["xyzsports198.xyz",11],["xyzsports199.xyz",11],["xyzsports200.xyz",11]]);
|
|
426
426
|
const exceptionsMap = new Map([]);
|
|
427
427
|
const hasEntities = true;
|
|
428
428
|
const hasAncestors = false;
|
|
@@ -72,9 +72,14 @@ function preventFetchFn(
|
|
|
72
72
|
const responseProps = {
|
|
73
73
|
statusText: { value: 'OK' },
|
|
74
74
|
};
|
|
75
|
+
const responseHeaders = {};
|
|
75
76
|
if ( /^\{.*\}$/.test(responseType) ) {
|
|
76
77
|
try {
|
|
77
78
|
Object.entries(JSON.parse(responseType)).forEach(([ p, v ]) => {
|
|
79
|
+
if ( p === 'headers' && trusted ) {
|
|
80
|
+
Object.assign(responseHeaders, v);
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
78
83
|
if ( validResponseProps[p] === undefined ) { return; }
|
|
79
84
|
if ( validResponseProps[p].includes(v) === false ) { return; }
|
|
80
85
|
responseProps[p] = { value: v };
|
|
@@ -127,11 +132,11 @@ function preventFetchFn(
|
|
|
127
132
|
}
|
|
128
133
|
return Promise.resolve(generateContentFn(trusted, responseBody)).then(text => {
|
|
129
134
|
safe.uboLog(logPrefix, `Prevented with response "${text}"`);
|
|
130
|
-
const
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
});
|
|
135
|
+
const headers = Object.assign({}, responseHeaders);
|
|
136
|
+
if ( headers['content-length'] === undefined ) {
|
|
137
|
+
headers['content-length'] = text.length;
|
|
138
|
+
}
|
|
139
|
+
const response = new Response(text, { headers });
|
|
135
140
|
const props = Object.assign(
|
|
136
141
|
{ url: { value: details.url } },
|
|
137
142
|
responseProps
|