@browserless.io/browserless 2.5.0-beta-4 → 2.6.0
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 +14 -2
- package/README.md +65 -34
- package/build/config.d.ts +2 -2
- package/build/config.js +3 -3
- package/build/data/classes.json +1 -1
- package/build/data/selectors.json +1 -1
- package/build/http.d.ts +1 -0
- package/build/http.js +1 -0
- package/build/routes/chrome/http/content.post.body.json +8 -8
- package/build/routes/chrome/http/pdf.post.body.json +8 -8
- package/build/routes/chrome/http/scrape.post.body.json +8 -8
- package/build/routes/chrome/http/screenshot.post.body.json +9 -9
- package/build/routes/chromium/http/content.post.body.json +8 -8
- package/build/routes/chromium/http/pdf.post.body.json +8 -8
- package/build/routes/chromium/http/scrape.post.body.json +8 -8
- package/build/routes/chromium/http/screenshot.post.body.json +9 -9
- package/build/routes/management/http/active.get.d.ts +16 -0
- package/build/routes/management/http/active.get.js +17 -0
- package/build/routes/management/tests/management.spec.js +7 -0
- package/build/server.js +1 -1
- package/build/types.d.ts +6 -4
- package/build/types.js +1 -0
- package/build/utils.d.ts +1 -1
- package/docker/base/Dockerfile +1 -1
- package/extensions/ublock/1p-filters.html +4 -3
- package/extensions/ublock/3p-filters.html +3 -3
- package/extensions/ublock/_locales/ar/messages.json +16 -4
- package/extensions/ublock/_locales/az/messages.json +16 -4
- package/extensions/ublock/_locales/be/messages.json +19 -7
- package/extensions/ublock/_locales/bg/messages.json +16 -4
- package/extensions/ublock/_locales/bn/messages.json +33 -21
- package/extensions/ublock/_locales/br_FR/messages.json +33 -21
- package/extensions/ublock/_locales/bs/messages.json +16 -4
- package/extensions/ublock/_locales/ca/messages.json +16 -4
- package/extensions/ublock/_locales/cs/messages.json +16 -4
- package/extensions/ublock/_locales/cv/messages.json +16 -4
- package/extensions/ublock/_locales/cy/messages.json +16 -4
- package/extensions/ublock/_locales/da/messages.json +21 -9
- package/extensions/ublock/_locales/de/messages.json +17 -5
- package/extensions/ublock/_locales/el/messages.json +16 -4
- package/extensions/ublock/_locales/en/messages.json +16 -4
- package/extensions/ublock/_locales/en_GB/messages.json +16 -4
- package/extensions/ublock/_locales/eo/messages.json +17 -5
- package/extensions/ublock/_locales/es/messages.json +16 -4
- package/extensions/ublock/_locales/et/messages.json +16 -4
- package/extensions/ublock/_locales/eu/messages.json +16 -4
- package/extensions/ublock/_locales/fa/messages.json +24 -12
- package/extensions/ublock/_locales/fi/messages.json +16 -4
- package/extensions/ublock/_locales/fil/messages.json +16 -4
- package/extensions/ublock/_locales/fr/messages.json +16 -4
- package/extensions/ublock/_locales/fy/messages.json +16 -4
- package/extensions/ublock/_locales/gl/messages.json +16 -4
- package/extensions/ublock/_locales/gu/messages.json +16 -4
- package/extensions/ublock/_locales/he/messages.json +25 -13
- package/extensions/ublock/_locales/hi/messages.json +31 -19
- package/extensions/ublock/_locales/hr/messages.json +16 -4
- package/extensions/ublock/_locales/hu/messages.json +16 -4
- package/extensions/ublock/_locales/hy/messages.json +17 -5
- package/extensions/ublock/_locales/id/messages.json +16 -4
- package/extensions/ublock/_locales/it/messages.json +17 -5
- package/extensions/ublock/_locales/ja/messages.json +16 -4
- package/extensions/ublock/_locales/ka/messages.json +16 -4
- package/extensions/ublock/_locales/kk/messages.json +16 -4
- package/extensions/ublock/_locales/kn/messages.json +74 -62
- package/extensions/ublock/_locales/ko/messages.json +16 -4
- package/extensions/ublock/_locales/lt/messages.json +23 -11
- package/extensions/ublock/_locales/lv/messages.json +16 -4
- package/extensions/ublock/_locales/mk/messages.json +16 -4
- package/extensions/ublock/_locales/ml/messages.json +19 -7
- package/extensions/ublock/_locales/mr/messages.json +16 -4
- package/extensions/ublock/_locales/ms/messages.json +16 -4
- package/extensions/ublock/_locales/nb/messages.json +16 -4
- package/extensions/ublock/_locales/nl/messages.json +16 -4
- package/extensions/ublock/_locales/no/messages.json +16 -4
- package/extensions/ublock/_locales/oc/messages.json +16 -4
- package/extensions/ublock/_locales/pa/messages.json +16 -4
- package/extensions/ublock/_locales/pl/messages.json +17 -5
- package/extensions/ublock/_locales/pt_BR/messages.json +16 -4
- package/extensions/ublock/_locales/pt_PT/messages.json +16 -4
- package/extensions/ublock/_locales/ro/messages.json +17 -5
- package/extensions/ublock/_locales/ru/messages.json +16 -4
- package/extensions/ublock/_locales/si/messages.json +16 -4
- package/extensions/ublock/_locales/sk/messages.json +16 -4
- package/extensions/ublock/_locales/sl/messages.json +16 -4
- package/extensions/ublock/_locales/so/messages.json +16 -4
- package/extensions/ublock/_locales/sq/messages.json +16 -4
- package/extensions/ublock/_locales/sr/messages.json +16 -4
- package/extensions/ublock/_locales/sv/messages.json +20 -8
- package/extensions/ublock/_locales/sw/messages.json +16 -4
- package/extensions/ublock/_locales/ta/messages.json +16 -4
- package/extensions/ublock/_locales/te/messages.json +16 -4
- package/extensions/ublock/_locales/th/messages.json +42 -30
- package/extensions/ublock/_locales/tr/messages.json +19 -7
- package/extensions/ublock/_locales/uk/messages.json +16 -4
- package/extensions/ublock/_locales/ur/messages.json +16 -4
- package/extensions/ublock/_locales/vi/messages.json +16 -4
- package/extensions/ublock/_locales/zh_CN/messages.json +16 -4
- package/extensions/ublock/_locales/zh_TW/messages.json +42 -30
- package/extensions/ublock/assets/assets.json +95 -78
- package/extensions/ublock/assets/resources/scriptlets.js +70 -24
- package/extensions/ublock/assets/thirdparties/easylist/easylist.txt +6258 -3453
- package/extensions/ublock/assets/thirdparties/easylist/easyprivacy.txt +277 -40
- package/extensions/ublock/assets/thirdparties/pgl.yoyo.org/as/serverlist +8 -32
- package/extensions/ublock/assets/thirdparties/publicsuffix.org/list/effective_tld_names.dat +107 -12
- package/extensions/ublock/assets/thirdparties/urlhaus-filter/urlhaus-filter-online.txt +1160 -954
- package/extensions/ublock/assets/ublock/badlists.txt +1 -2
- package/extensions/ublock/assets/ublock/badware.min.txt +395 -270
- package/extensions/ublock/assets/ublock/filters.min.txt +1176 -1238
- package/extensions/ublock/assets/ublock/privacy.min.txt +32 -31
- package/extensions/ublock/assets/ublock/quick-fixes.min.txt +120 -110
- package/extensions/ublock/assets/ublock/unbreak.min.txt +75 -36
- package/extensions/ublock/css/1p-filters.css +2 -1
- package/extensions/ublock/css/3p-filters.css +1 -16
- package/extensions/ublock/css/advanced-settings.css +1 -0
- package/extensions/ublock/css/asset-viewer.css +1 -0
- package/extensions/ublock/css/code-viewer.css +1 -0
- package/extensions/ublock/css/codemirror.css +37 -10
- package/extensions/ublock/css/common.css +36 -2
- package/extensions/ublock/css/dashboard.css +9 -3
- package/extensions/ublock/css/devtools.css +1 -0
- package/extensions/ublock/css/document-blocked.css +3 -3
- package/extensions/ublock/css/dom-inspector.css +1 -0
- package/extensions/ublock/css/dyna-rules.css +1 -0
- package/extensions/ublock/css/epicker-ui.css +76 -66
- package/extensions/ublock/css/fa-icons.css +1 -0
- package/extensions/ublock/css/logger-ui.css +2 -0
- package/extensions/ublock/css/popup-fenix.css +1 -0
- package/extensions/ublock/css/whitelist.css +1 -0
- package/extensions/ublock/dashboard.html +20 -13
- package/extensions/ublock/devtools.html +2 -0
- package/extensions/ublock/dyna-rules.html +2 -2
- package/extensions/ublock/img/flags-of-the-world/np.png +0 -0
- package/extensions/ublock/img/fontawesome/fontawesome-defs.svg +1 -0
- package/extensions/ublock/js/1p-filters.js +72 -23
- package/extensions/ublock/js/3p-filters.js +71 -25
- package/extensions/ublock/js/asset-viewer.js +1 -0
- package/extensions/ublock/js/assets.js +83 -89
- package/extensions/ublock/js/background.js +20 -27
- package/extensions/ublock/js/base64-custom.js +1 -102
- package/extensions/ublock/js/benchmarks.js +36 -21
- package/extensions/ublock/js/biditrie.js +8 -23
- package/extensions/ublock/js/broadcast.js +2 -4
- package/extensions/ublock/js/cachestorage.js +594 -396
- package/extensions/ublock/js/codemirror/search.js +49 -37
- package/extensions/ublock/js/codemirror/ubo-static-filtering.js +233 -215
- package/extensions/ublock/js/contentscript-extra.js +31 -1
- package/extensions/ublock/js/cosmetic-filtering.js +35 -33
- package/extensions/ublock/js/dashboard.js +11 -7
- package/extensions/ublock/js/devtools.js +22 -0
- package/extensions/ublock/js/dom.js +2 -2
- package/extensions/ublock/js/dyna-rules.js +17 -16
- package/extensions/ublock/js/epicker-ui.js +41 -16
- package/extensions/ublock/js/fa-icons.js +1 -0
- package/extensions/ublock/js/hntrie.js +10 -25
- package/extensions/ublock/js/i18n.js +15 -15
- package/extensions/ublock/js/logger-ui.js +9 -6
- package/extensions/ublock/js/messaging.js +51 -26
- package/extensions/ublock/js/pagestore.js +21 -23
- package/extensions/ublock/js/popup-fenix.js +35 -22
- package/extensions/ublock/js/redirect-engine.js +15 -30
- package/extensions/ublock/js/reverselookup.js +1 -1
- package/extensions/ublock/js/s14e-serializer.js +1405 -0
- package/extensions/ublock/js/scriptlet-filtering-core.js +1 -1
- package/extensions/ublock/js/scriptlets/epicker.js +27 -18
- package/extensions/ublock/js/settings.js +32 -21
- package/extensions/ublock/js/start.js +121 -62
- package/extensions/ublock/js/static-ext-filtering-db.js +6 -6
- package/extensions/ublock/js/static-ext-filtering.js +17 -28
- package/extensions/ublock/js/static-filtering-parser.js +26 -4
- package/extensions/ublock/js/static-net-filtering.js +69 -168
- package/extensions/ublock/js/storage.js +178 -155
- package/extensions/ublock/js/traffic.js +11 -7
- package/extensions/ublock/js/vapi-background.js +49 -62
- package/extensions/ublock/js/vapi-client.js +13 -16
- package/extensions/ublock/js/webext.js +10 -2
- package/extensions/ublock/js/whitelist.js +27 -25
- package/extensions/ublock/lib/publicsuffixlist/publicsuffixlist.js +3 -7
- package/extensions/ublock/manifest.json +2 -1
- package/extensions/ublock/web_accessible_resources/epicker-ui.html +5 -8
- package/extensions/ublock/whitelist.html +3 -4
- package/package.json +13 -13
- package/src/config.ts +3 -4
- package/src/http.ts +1 -0
- package/src/routes/management/http/active.get.ts +30 -0
- package/src/routes/management/tests/management.spec.ts +13 -0
- package/src/server.ts +1 -1
- package/src/types.ts +2 -1
- package/static/docs/swagger.json +57 -11
- package/static/docs/swagger.min.json +56 -10
- package/static/function/client.js +4155 -3350
- package/extensions/ublock/_locales/ku/messages.json +0 -1294
|
@@ -155,6 +155,7 @@
|
|
|
155
155
|
"group": "ads",
|
|
156
156
|
"title": "EasyList",
|
|
157
157
|
"tags": "ads",
|
|
158
|
+
"preferred": true,
|
|
158
159
|
"contentURL": [
|
|
159
160
|
"https://ublockorigin.github.io/uAssets/thirdparties/easylist.txt",
|
|
160
161
|
"assets/thirdparties/easylist/easylist.txt"
|
|
@@ -205,6 +206,7 @@
|
|
|
205
206
|
"group": "privacy",
|
|
206
207
|
"title": "EasyPrivacy",
|
|
207
208
|
"tags": "privacy",
|
|
209
|
+
"preferred": true,
|
|
208
210
|
"contentURL": [
|
|
209
211
|
"https://ublockorigin.github.io/uAssets/thirdparties/easyprivacy.txt",
|
|
210
212
|
"assets/thirdparties/easylist/easyprivacy.txt"
|
|
@@ -244,21 +246,11 @@
|
|
|
244
246
|
],
|
|
245
247
|
"supportURL": "https://gitlab.com/malware-filter/phishing-filter#phishing-url-blocklist"
|
|
246
248
|
},
|
|
247
|
-
"adguard-social": {
|
|
248
|
-
"content": "filters",
|
|
249
|
-
"group": "annoyances",
|
|
250
|
-
"parent": "AdGuard – Annoyances",
|
|
251
|
-
"off": true,
|
|
252
|
-
"title": "AdGuard – Social Media",
|
|
253
|
-
"tags": "annoyances social",
|
|
254
|
-
"contentURL": "https://filters.adtidy.org/extension/ublock/filters/4.txt",
|
|
255
|
-
"supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
|
|
256
|
-
"instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
|
|
257
|
-
},
|
|
258
249
|
"adguard-cookies": {
|
|
259
250
|
"content": "filters",
|
|
260
251
|
"group": "annoyances",
|
|
261
|
-
"
|
|
252
|
+
"group2": "cookies",
|
|
253
|
+
"parent": "AdGuard/uBO – Cookie Notices",
|
|
262
254
|
"off": true,
|
|
263
255
|
"title": "AdGuard – Cookie Notices",
|
|
264
256
|
"tags": "annoyances cookies",
|
|
@@ -269,10 +261,51 @@
|
|
|
269
261
|
"ublock-cookies-adguard": {
|
|
270
262
|
"content": "filters",
|
|
271
263
|
"group": "annoyances",
|
|
272
|
-
"
|
|
264
|
+
"group2": "cookies",
|
|
265
|
+
"parent": "AdGuard/uBO – Cookie Notices",
|
|
266
|
+
"off": true,
|
|
267
|
+
"title": "uBlock filters – Cookie Notices",
|
|
268
|
+
"tags": "annoyances cookies",
|
|
269
|
+
"contentURL": "https://ublockorigin.github.io/uAssets/filters/annoyances-cookies.txt",
|
|
270
|
+
"cdnURLs": [
|
|
271
|
+
"https://ublockorigin.github.io/uAssetsCDN/filters/annoyances-cookies.txt",
|
|
272
|
+
"https://ublockorigin.pages.dev/filters/annoyances-cookies.txt",
|
|
273
|
+
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/annoyances-cookies.txt",
|
|
274
|
+
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/annoyances-cookies.txt"
|
|
275
|
+
],
|
|
276
|
+
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
|
277
|
+
},
|
|
278
|
+
"fanboy-cookiemonster": {
|
|
279
|
+
"content": "filters",
|
|
280
|
+
"group": "annoyances",
|
|
281
|
+
"group2": "cookies",
|
|
282
|
+
"parent": "EasyList/uBO – Cookie Notices",
|
|
283
|
+
"off": true,
|
|
284
|
+
"title": "EasyList – Cookie Notices",
|
|
285
|
+
"tags": "annoyances cookies",
|
|
286
|
+
"preferred": true,
|
|
287
|
+
"contentURL": [
|
|
288
|
+
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-cookies.txt",
|
|
289
|
+
"https://secure.fanboy.co.nz/fanboy-cookiemonster_ubo.txt"
|
|
290
|
+
],
|
|
291
|
+
"cdnURLs": [
|
|
292
|
+
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-cookies.txt",
|
|
293
|
+
"https://ublockorigin.pages.dev/thirdparties/easylist-cookies.txt",
|
|
294
|
+
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/thirdparties/easylist-cookies.txt",
|
|
295
|
+
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist-cookies.txt",
|
|
296
|
+
"https://secure.fanboy.co.nz/fanboy-cookiemonster_ubo.txt"
|
|
297
|
+
],
|
|
298
|
+
"supportURL": "https://github.com/easylist/easylist#fanboy-lists"
|
|
299
|
+
},
|
|
300
|
+
"ublock-cookies-easylist": {
|
|
301
|
+
"content": "filters",
|
|
302
|
+
"group": "annoyances",
|
|
303
|
+
"group2": "cookies",
|
|
304
|
+
"parent": "EasyList/uBO – Cookie Notices",
|
|
273
305
|
"off": true,
|
|
274
306
|
"title": "uBlock filters – Cookie Notices",
|
|
275
307
|
"tags": "annoyances cookies",
|
|
308
|
+
"preferred": true,
|
|
276
309
|
"contentURL": "https://ublockorigin.github.io/uAssets/filters/annoyances-cookies.txt",
|
|
277
310
|
"cdnURLs": [
|
|
278
311
|
"https://ublockorigin.github.io/uAssetsCDN/filters/annoyances-cookies.txt",
|
|
@@ -282,6 +315,50 @@
|
|
|
282
315
|
],
|
|
283
316
|
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
|
284
317
|
},
|
|
318
|
+
"adguard-social": {
|
|
319
|
+
"content": "filters",
|
|
320
|
+
"group": "annoyances",
|
|
321
|
+
"group2": "social",
|
|
322
|
+
"parent": null,
|
|
323
|
+
"off": true,
|
|
324
|
+
"title": "AdGuard – Social Widgets",
|
|
325
|
+
"tags": "annoyances social",
|
|
326
|
+
"contentURL": "https://filters.adtidy.org/extension/ublock/filters/4.txt",
|
|
327
|
+
"supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
|
|
328
|
+
"instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
|
|
329
|
+
},
|
|
330
|
+
"fanboy-social": {
|
|
331
|
+
"content": "filters",
|
|
332
|
+
"group": "annoyances",
|
|
333
|
+
"group2": "social",
|
|
334
|
+
"parent": null,
|
|
335
|
+
"off": true,
|
|
336
|
+
"title": "EasyList – Social Widgets",
|
|
337
|
+
"tags": "annoyances social",
|
|
338
|
+
"preferred": true,
|
|
339
|
+
"contentURL": [
|
|
340
|
+
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-social.txt",
|
|
341
|
+
"https://secure.fanboy.co.nz/fanboy-social_ubo.txt"
|
|
342
|
+
],
|
|
343
|
+
"cdnURLs": [
|
|
344
|
+
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-social.txt",
|
|
345
|
+
"https://ublockorigin.pages.dev/thirdparties/easylist-social.txt",
|
|
346
|
+
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/thirdparties/easylist-social.txt",
|
|
347
|
+
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist-social.txt",
|
|
348
|
+
"https://secure.fanboy.co.nz/fanboy-social_ubo.txt"
|
|
349
|
+
],
|
|
350
|
+
"supportURL": "https://easylist.to/"
|
|
351
|
+
},
|
|
352
|
+
"fanboy-thirdparty_social": {
|
|
353
|
+
"content": "filters",
|
|
354
|
+
"group": "annoyances",
|
|
355
|
+
"group2": "social",
|
|
356
|
+
"off": true,
|
|
357
|
+
"title": "Fanboy – Anti-Facebook",
|
|
358
|
+
"tags": "privacy",
|
|
359
|
+
"contentURL": "https://secure.fanboy.co.nz/fanboy-antifacebook.txt",
|
|
360
|
+
"supportURL": "https://github.com/ryanbr/fanboy-adblock/issues"
|
|
361
|
+
},
|
|
285
362
|
"adguard-popup-overlays": {
|
|
286
363
|
"content": "filters",
|
|
287
364
|
"group": "annoyances",
|
|
@@ -326,15 +403,6 @@
|
|
|
326
403
|
"supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
|
|
327
404
|
"instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
|
|
328
405
|
},
|
|
329
|
-
"fanboy-thirdparty_social": {
|
|
330
|
-
"content": "filters",
|
|
331
|
-
"group": "annoyances",
|
|
332
|
-
"off": true,
|
|
333
|
-
"title": "Fanboy – Anti-Facebook",
|
|
334
|
-
"tags": "privacy",
|
|
335
|
-
"contentURL": "https://secure.fanboy.co.nz/fanboy-antifacebook.txt",
|
|
336
|
-
"supportURL": "https://github.com/ryanbr/fanboy-adblock/issues"
|
|
337
|
-
},
|
|
338
406
|
"easylist-annoyances": {
|
|
339
407
|
"content": "filters",
|
|
340
408
|
"group": "annoyances",
|
|
@@ -342,6 +410,7 @@
|
|
|
342
410
|
"off": true,
|
|
343
411
|
"title": "EasyList – Other Annoyances",
|
|
344
412
|
"tags": "annoyances",
|
|
413
|
+
"preferred": true,
|
|
345
414
|
"contentURL": "https://ublockorigin.github.io/uAssets/thirdparties/easylist-annoyances.txt",
|
|
346
415
|
"cdnURLs": [
|
|
347
416
|
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-annoyances.txt",
|
|
@@ -358,6 +427,7 @@
|
|
|
358
427
|
"off": true,
|
|
359
428
|
"title": "EasyList – Chat Widgets",
|
|
360
429
|
"tags": "annoyances",
|
|
430
|
+
"preferred": true,
|
|
361
431
|
"contentURL": "https://ublockorigin.github.io/uAssets/thirdparties/easylist-chat.txt",
|
|
362
432
|
"cdnURLs": [
|
|
363
433
|
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-chat.txt",
|
|
@@ -367,42 +437,6 @@
|
|
|
367
437
|
],
|
|
368
438
|
"supportURL": "https://github.com/easylist/easylist#fanboy-lists"
|
|
369
439
|
},
|
|
370
|
-
"fanboy-cookiemonster": {
|
|
371
|
-
"content": "filters",
|
|
372
|
-
"group": "annoyances",
|
|
373
|
-
"parent": "EasyList – Annoyances|EasyList/uBO – Cookie Notices",
|
|
374
|
-
"off": true,
|
|
375
|
-
"title": "EasyList – Cookie Notices",
|
|
376
|
-
"tags": "annoyances cookies",
|
|
377
|
-
"contentURL": [
|
|
378
|
-
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-cookies.txt",
|
|
379
|
-
"https://secure.fanboy.co.nz/fanboy-cookiemonster_ubo.txt"
|
|
380
|
-
],
|
|
381
|
-
"cdnURLs": [
|
|
382
|
-
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-cookies.txt",
|
|
383
|
-
"https://ublockorigin.pages.dev/thirdparties/easylist-cookies.txt",
|
|
384
|
-
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/thirdparties/easylist-cookies.txt",
|
|
385
|
-
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist-cookies.txt",
|
|
386
|
-
"https://secure.fanboy.co.nz/fanboy-cookiemonster_ubo.txt"
|
|
387
|
-
],
|
|
388
|
-
"supportURL": "https://github.com/easylist/easylist#fanboy-lists"
|
|
389
|
-
},
|
|
390
|
-
"ublock-cookies-easylist": {
|
|
391
|
-
"content": "filters",
|
|
392
|
-
"group": "annoyances",
|
|
393
|
-
"parent": "EasyList – Annoyances|EasyList/uBO – Cookie Notices",
|
|
394
|
-
"off": true,
|
|
395
|
-
"title": "uBlock filters – Cookie Notices",
|
|
396
|
-
"tags": "annoyances cookies",
|
|
397
|
-
"contentURL": "https://ublockorigin.github.io/uAssets/filters/annoyances-cookies.txt",
|
|
398
|
-
"cdnURLs": [
|
|
399
|
-
"https://ublockorigin.github.io/uAssetsCDN/filters/annoyances-cookies.txt",
|
|
400
|
-
"https://ublockorigin.pages.dev/filters/annoyances-cookies.txt",
|
|
401
|
-
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/filters/annoyances-cookies.txt",
|
|
402
|
-
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/filters/annoyances-cookies.txt"
|
|
403
|
-
],
|
|
404
|
-
"supportURL": "https://github.com/uBlockOrigin/uAssets"
|
|
405
|
-
},
|
|
406
440
|
"easylist-newsletters": {
|
|
407
441
|
"content": "filters",
|
|
408
442
|
"group": "annoyances",
|
|
@@ -410,6 +444,7 @@
|
|
|
410
444
|
"off": true,
|
|
411
445
|
"title": "EasyList – Newsletter Notices",
|
|
412
446
|
"tags": "annoyances",
|
|
447
|
+
"preferred": true,
|
|
413
448
|
"contentURL": [
|
|
414
449
|
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-newsletters.txt"
|
|
415
450
|
],
|
|
@@ -428,6 +463,7 @@
|
|
|
428
463
|
"off": true,
|
|
429
464
|
"title": "EasyList – Notifications",
|
|
430
465
|
"tags": "annoyances",
|
|
466
|
+
"preferred": true,
|
|
431
467
|
"contentURL": [
|
|
432
468
|
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-notifications.txt"
|
|
433
469
|
],
|
|
@@ -439,26 +475,6 @@
|
|
|
439
475
|
],
|
|
440
476
|
"supportURL": "https://easylist.to/"
|
|
441
477
|
},
|
|
442
|
-
"fanboy-social": {
|
|
443
|
-
"content": "filters",
|
|
444
|
-
"group": "annoyances",
|
|
445
|
-
"parent": "EasyList – Annoyances",
|
|
446
|
-
"off": true,
|
|
447
|
-
"title": "EasyList – Social Widgets",
|
|
448
|
-
"tags": "annoyances social",
|
|
449
|
-
"contentURL": [
|
|
450
|
-
"https://ublockorigin.github.io/uAssets/thirdparties/easylist-social.txt",
|
|
451
|
-
"https://secure.fanboy.co.nz/fanboy-social_ubo.txt"
|
|
452
|
-
],
|
|
453
|
-
"cdnURLs": [
|
|
454
|
-
"https://ublockorigin.github.io/uAssetsCDN/thirdparties/easylist-social.txt",
|
|
455
|
-
"https://ublockorigin.pages.dev/thirdparties/easylist-social.txt",
|
|
456
|
-
"https://cdn.jsdelivr.net/gh/uBlockOrigin/uAssetsCDN@main/thirdparties/easylist-social.txt",
|
|
457
|
-
"https://cdn.statically.io/gh/uBlockOrigin/uAssetsCDN/main/thirdparties/easylist-social.txt",
|
|
458
|
-
"https://secure.fanboy.co.nz/fanboy-social_ubo.txt"
|
|
459
|
-
],
|
|
460
|
-
"supportURL": "https://easylist.to/"
|
|
461
|
-
},
|
|
462
478
|
"ublock-annoyances": {
|
|
463
479
|
"content": "filters",
|
|
464
480
|
"group": "annoyances",
|
|
@@ -490,6 +506,7 @@
|
|
|
490
506
|
"updateAfter": 13,
|
|
491
507
|
"title": "Peter Lowe’s Ad and tracking server list",
|
|
492
508
|
"tags": "ads privacy security",
|
|
509
|
+
"preferred": true,
|
|
493
510
|
"contentURL": [
|
|
494
511
|
"https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=1&mimetype=plaintext",
|
|
495
512
|
"assets/thirdparties/pgl.yoyo.org/as/serverlist.txt",
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
web page context.
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
+
/* eslint no-prototype-builtins: 0 */
|
|
26
|
+
|
|
25
27
|
// Externally added to the private namespace in which scriptlets execute.
|
|
26
28
|
/* global scriptletGlobals */
|
|
27
29
|
|
|
28
|
-
'use strict';
|
|
29
|
-
|
|
30
30
|
export const builtinScriptlets = [];
|
|
31
31
|
|
|
32
32
|
/*******************************************************************************
|
|
@@ -424,7 +424,8 @@ function abortCurrentScriptCore(
|
|
|
424
424
|
if ( e instanceof HTMLScriptElement === false ) { return; }
|
|
425
425
|
if ( e === thisScript ) { return; }
|
|
426
426
|
if ( context !== '' && reContext.test(e.src) === false ) {
|
|
427
|
-
|
|
427
|
+
// eslint-disable-next-line no-debugger
|
|
428
|
+
if ( debug === 'nomatch' || debug === 'all' ) { debugger; }
|
|
428
429
|
return;
|
|
429
430
|
}
|
|
430
431
|
if ( safe.logLevel > 1 && context !== '' ) {
|
|
@@ -432,17 +433,20 @@ function abortCurrentScriptCore(
|
|
|
432
433
|
}
|
|
433
434
|
const scriptText = getScriptText(e);
|
|
434
435
|
if ( reNeedle.test(scriptText) === false ) {
|
|
435
|
-
|
|
436
|
+
// eslint-disable-next-line no-debugger
|
|
437
|
+
if ( debug === 'nomatch' || debug === 'all' ) { debugger; }
|
|
436
438
|
return;
|
|
437
439
|
}
|
|
438
440
|
if ( safe.logLevel > 1 ) {
|
|
439
441
|
safe.uboLog(logPrefix, `Matched text\n${scriptText}`);
|
|
440
442
|
}
|
|
441
|
-
|
|
443
|
+
// eslint-disable-next-line no-debugger
|
|
444
|
+
if ( debug === 'match' || debug === 'all' ) { debugger; }
|
|
442
445
|
safe.uboLog(logPrefix, 'Aborted');
|
|
443
446
|
throw new ReferenceError(exceptionToken);
|
|
444
447
|
};
|
|
445
|
-
|
|
448
|
+
// eslint-disable-next-line no-debugger
|
|
449
|
+
if ( debug === 'install' ) { debugger; }
|
|
446
450
|
try {
|
|
447
451
|
Object.defineProperty(owner, prop, {
|
|
448
452
|
get: function() {
|
|
@@ -861,14 +865,33 @@ function objectFindOwnerFn(
|
|
|
861
865
|
return modified;
|
|
862
866
|
}
|
|
863
867
|
const prop = chain.slice(0, pos);
|
|
868
|
+
const next = chain.slice(pos + 1);
|
|
869
|
+
let found = false;
|
|
870
|
+
if ( prop === '[-]' && Array.isArray(owner) ) {
|
|
871
|
+
let i = owner.length;
|
|
872
|
+
while ( i-- ) {
|
|
873
|
+
if ( objectFindOwnerFn(owner[i], next) === false ) { continue; }
|
|
874
|
+
owner.splice(i, 1);
|
|
875
|
+
found = true;
|
|
876
|
+
}
|
|
877
|
+
return found;
|
|
878
|
+
}
|
|
879
|
+
if ( prop === '{-}' && owner instanceof Object ) {
|
|
880
|
+
for ( const key of Object.keys(owner) ) {
|
|
881
|
+
if ( objectFindOwnerFn(owner[key], next) === false ) { continue; }
|
|
882
|
+
delete owner[key];
|
|
883
|
+
found = true;
|
|
884
|
+
}
|
|
885
|
+
return found;
|
|
886
|
+
}
|
|
864
887
|
if (
|
|
865
888
|
prop === '[]' && Array.isArray(owner) ||
|
|
889
|
+
prop === '{}' && owner instanceof Object ||
|
|
866
890
|
prop === '*' && owner instanceof Object
|
|
867
891
|
) {
|
|
868
|
-
const next = chain.slice(pos + 1);
|
|
869
|
-
let found = false;
|
|
870
892
|
for ( const key of Object.keys(owner) ) {
|
|
871
|
-
|
|
893
|
+
if (objectFindOwnerFn(owner[key], next, prune) === false ) { continue; }
|
|
894
|
+
found = true;
|
|
872
895
|
}
|
|
873
896
|
return found;
|
|
874
897
|
}
|
|
@@ -876,7 +899,6 @@ function objectFindOwnerFn(
|
|
|
876
899
|
owner = owner[prop];
|
|
877
900
|
chain = chain.slice(pos + 1);
|
|
878
901
|
}
|
|
879
|
-
return true;
|
|
880
902
|
}
|
|
881
903
|
|
|
882
904
|
/******************************************************************************/
|
|
@@ -947,6 +969,16 @@ function setCookieFn(
|
|
|
947
969
|
path = '',
|
|
948
970
|
options = {},
|
|
949
971
|
) {
|
|
972
|
+
// https://datatracker.ietf.org/doc/html/rfc2616#section-2.2
|
|
973
|
+
// https://github.com/uBlockOrigin/uBlock-issues/issues/2777
|
|
974
|
+
if ( trusted === false && /[^!#$%&'*+\-.0-9A-Z[\]^_`a-z|~]/.test(name) ) {
|
|
975
|
+
name = encodeURIComponent(name);
|
|
976
|
+
}
|
|
977
|
+
// https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.1
|
|
978
|
+
if ( /[^!#-+\--:<-[\]-~]/.test(value) ) {
|
|
979
|
+
value = encodeURIComponent(value);
|
|
980
|
+
}
|
|
981
|
+
|
|
950
982
|
const cookieBefore = getCookieFn(name);
|
|
951
983
|
if ( cookieBefore !== undefined && options.dontOverwrite ) { return; }
|
|
952
984
|
if ( cookieBefore === value && options.reload ) { return; }
|
|
@@ -1198,10 +1230,10 @@ function jsonPruneFetchResponseFn(
|
|
|
1198
1230
|
const extraArgs = safe.getExtraArgs(Array.from(arguments), 2);
|
|
1199
1231
|
const propNeedles = parsePropertiesToMatch(extraArgs.propsToMatch, 'url');
|
|
1200
1232
|
const stackNeedle = safe.initPattern(extraArgs.stackToMatch || '', { canNegate: true });
|
|
1233
|
+
const logall = rawPrunePaths === '';
|
|
1201
1234
|
const applyHandler = function(target, thisArg, args) {
|
|
1202
1235
|
const fetchPromise = Reflect.apply(target, thisArg, args);
|
|
1203
|
-
|
|
1204
|
-
let outcome = 'match';
|
|
1236
|
+
let outcome = logall ? 'nomatch' : 'match';
|
|
1205
1237
|
if ( propNeedles.size !== 0 ) {
|
|
1206
1238
|
const objs = [ args[0] instanceof Object ? args[0] : { url: args[0] } ];
|
|
1207
1239
|
if ( objs[0] instanceof Request ) {
|
|
@@ -1218,14 +1250,18 @@ function jsonPruneFetchResponseFn(
|
|
|
1218
1250
|
outcome = 'nomatch';
|
|
1219
1251
|
}
|
|
1220
1252
|
}
|
|
1221
|
-
if ( outcome === 'nomatch' ) { return fetchPromise; }
|
|
1222
|
-
if ( safe.logLevel > 1 ) {
|
|
1253
|
+
if ( logall === false && outcome === 'nomatch' ) { return fetchPromise; }
|
|
1254
|
+
if ( safe.logLevel > 1 && outcome !== 'nomatch' && propNeedles.size !== 0 ) {
|
|
1223
1255
|
safe.uboLog(logPrefix, `Matched optional "propsToMatch"\n${extraArgs.propsToMatch}`);
|
|
1224
1256
|
}
|
|
1225
1257
|
return fetchPromise.then(responseBefore => {
|
|
1226
1258
|
const response = responseBefore.clone();
|
|
1227
1259
|
return response.json().then(objBefore => {
|
|
1228
1260
|
if ( typeof objBefore !== 'object' ) { return responseBefore; }
|
|
1261
|
+
if ( logall ) {
|
|
1262
|
+
safe.uboLog(logPrefix, safe.JSON_stringify(objBefore, null, 2));
|
|
1263
|
+
return responseBefore;
|
|
1264
|
+
}
|
|
1229
1265
|
const objAfter = objectPruneFn(
|
|
1230
1266
|
objBefore,
|
|
1231
1267
|
rawPrunePaths,
|
|
@@ -1621,7 +1657,7 @@ function addEventListenerDefuser(
|
|
|
1621
1657
|
const matchesEither = matchesType || matchesHandler;
|
|
1622
1658
|
const matchesBoth = matchesType && matchesHandler;
|
|
1623
1659
|
if ( debug === 1 && matchesBoth || debug === 2 && matchesEither ) {
|
|
1624
|
-
debugger; //
|
|
1660
|
+
debugger; // eslint-disable-line no-debugger
|
|
1625
1661
|
}
|
|
1626
1662
|
if ( matchesBoth && targetSelector !== undefined ) {
|
|
1627
1663
|
if ( elementMatches(thisArg) === false ) { return false; }
|
|
@@ -3415,7 +3451,7 @@ function hrefSanitizer(
|
|
|
3415
3451
|
return elem.textContent
|
|
3416
3452
|
.replace(/^[^\x21-\x7e]+/, '') // remove leading invalid characters
|
|
3417
3453
|
.replace(/[^\x21-\x7e]+$/, '') // remove trailing invalid characters
|
|
3418
|
-
|
|
3454
|
+
;
|
|
3419
3455
|
}
|
|
3420
3456
|
return '';
|
|
3421
3457
|
};
|
|
@@ -3455,7 +3491,7 @@ function hrefSanitizer(
|
|
|
3455
3491
|
if ( shouldSanitize ) { break; }
|
|
3456
3492
|
}
|
|
3457
3493
|
if ( shouldSanitize === false ) { return; }
|
|
3458
|
-
timer = self.
|
|
3494
|
+
timer = self.requestIdleCallback(( ) => {
|
|
3459
3495
|
timer = undefined;
|
|
3460
3496
|
sanitize();
|
|
3461
3497
|
});
|
|
@@ -3555,6 +3591,7 @@ function spoofCSS(
|
|
|
3555
3591
|
const logPrefix = safe.makeLogPrefix('spoof-css', selector, ...args);
|
|
3556
3592
|
const canDebug = scriptletGlobals.canDebug;
|
|
3557
3593
|
const shouldDebug = canDebug && propToValueMap.get('debug') || 0;
|
|
3594
|
+
const instanceProperties = [ 'cssText', 'length', 'parentRule' ];
|
|
3558
3595
|
const spoofStyle = (prop, real) => {
|
|
3559
3596
|
const normalProp = toCamelCase(prop);
|
|
3560
3597
|
const shouldSpoof = propToValueMap.has(normalProp);
|
|
@@ -3564,9 +3601,15 @@ function spoofCSS(
|
|
|
3564
3601
|
}
|
|
3565
3602
|
return value;
|
|
3566
3603
|
};
|
|
3604
|
+
const cloackFunc = (fn, thisArg, name) => {
|
|
3605
|
+
const trap = fn.bind(thisArg);
|
|
3606
|
+
Object.defineProperty(trap, 'name', { value: name });
|
|
3607
|
+
return trap;
|
|
3608
|
+
};
|
|
3567
3609
|
self.getComputedStyle = new Proxy(self.getComputedStyle, {
|
|
3568
3610
|
apply: function(target, thisArg, args) {
|
|
3569
|
-
|
|
3611
|
+
// eslint-disable-next-line no-debugger
|
|
3612
|
+
if ( shouldDebug !== 0 ) { debugger; }
|
|
3570
3613
|
const style = Reflect.apply(target, thisArg, args);
|
|
3571
3614
|
const targetElements = new WeakSet(document.querySelectorAll(selector));
|
|
3572
3615
|
if ( targetElements.has(args[0]) === false ) { return style; }
|
|
@@ -3574,11 +3617,14 @@ function spoofCSS(
|
|
|
3574
3617
|
get(target, prop, receiver) {
|
|
3575
3618
|
if ( typeof target[prop] === 'function' ) {
|
|
3576
3619
|
if ( prop === 'getPropertyValue' ) {
|
|
3577
|
-
return (function(prop) {
|
|
3620
|
+
return cloackFunc(function(prop) {
|
|
3578
3621
|
return spoofStyle(prop, target[prop]);
|
|
3579
|
-
}
|
|
3622
|
+
}, target, 'getPropertyValue');
|
|
3580
3623
|
}
|
|
3581
|
-
return target[prop]
|
|
3624
|
+
return cloackFunc(target[prop], target, prop);
|
|
3625
|
+
}
|
|
3626
|
+
if ( instanceProperties.includes(prop) ) {
|
|
3627
|
+
return Reflect.get(target, prop);
|
|
3582
3628
|
}
|
|
3583
3629
|
return spoofStyle(prop, Reflect.get(target, prop, receiver));
|
|
3584
3630
|
},
|
|
@@ -3605,7 +3651,8 @@ function spoofCSS(
|
|
|
3605
3651
|
});
|
|
3606
3652
|
Element.prototype.getBoundingClientRect = new Proxy(Element.prototype.getBoundingClientRect, {
|
|
3607
3653
|
apply: function(target, thisArg, args) {
|
|
3608
|
-
|
|
3654
|
+
// eslint-disable-next-line no-debugger
|
|
3655
|
+
if ( shouldDebug !== 0 ) { debugger; }
|
|
3609
3656
|
const rect = Reflect.apply(target, thisArg, args);
|
|
3610
3657
|
const targetElements = new WeakSet(document.querySelectorAll(selector));
|
|
3611
3658
|
if ( targetElements.has(thisArg) === false ) { return rect; }
|
|
@@ -3676,7 +3723,6 @@ function setCookie(
|
|
|
3676
3723
|
if ( name === '' ) { return; }
|
|
3677
3724
|
const safe = safeSelf();
|
|
3678
3725
|
const logPrefix = safe.makeLogPrefix('set-cookie', name, value, path);
|
|
3679
|
-
name = encodeURIComponent(name);
|
|
3680
3726
|
|
|
3681
3727
|
const validValues = [
|
|
3682
3728
|
'accept', 'reject',
|
|
@@ -3697,7 +3743,7 @@ function setCookie(
|
|
|
3697
3743
|
if ( validValues.includes(unquoted) === false ) {
|
|
3698
3744
|
if ( /^\d+$/.test(unquoted) === false ) { return; }
|
|
3699
3745
|
const n = parseInt(value, 10);
|
|
3700
|
-
if ( n >
|
|
3746
|
+
if ( n > 32767 ) { return; }
|
|
3701
3747
|
}
|
|
3702
3748
|
|
|
3703
3749
|
const done = setCookieFn(
|