@browserless.io/browserless 2.34.0 → 2.36.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 +28 -1
- package/build/limiter.js +1 -1
- package/build/routes/chrome/http/content.post.body.json +90 -1
- package/build/routes/chrome/http/pdf.post.body.json +90 -1
- package/build/routes/chrome/http/scrape.post.body.json +90 -1
- package/build/routes/chrome/http/scrape.post.response.json +21 -22
- package/build/routes/chrome/http/screenshot.post.body.json +90 -1
- package/build/routes/chromium/http/content.post.body.json +90 -1
- package/build/routes/chromium/http/pdf.post.body.json +90 -1
- package/build/routes/chromium/http/scrape.post.body.json +90 -1
- package/build/routes/chromium/http/scrape.post.response.json +21 -22
- package/build/routes/chromium/http/screenshot.post.body.json +90 -1
- package/build/routes/chromium/tests/scrape.spec.js +41 -0
- package/build/routes/edge/http/content.post.body.json +90 -1
- package/build/routes/edge/http/pdf.post.body.json +90 -1
- package/build/routes/edge/http/scrape.post.body.json +90 -1
- package/build/routes/edge/http/scrape.post.response.json +21 -22
- package/build/routes/edge/http/screenshot.post.body.json +90 -1
- package/build/sdk-utils.js +1 -1
- package/build/shared/scrape.http.js +13 -3
- package/docker/base/Dockerfile +8 -8
- package/docker/chrome/Dockerfile +2 -2
- package/docker/chromium/Dockerfile +2 -2
- package/docker/edge/Dockerfile +2 -2
- package/docker/firefox/Dockerfile +2 -2
- package/docker/multi/Dockerfile +2 -2
- package/docker/sdk/Dockerfile +1 -1
- package/docker/webkit/Dockerfile +2 -2
- package/extensions/ublocklite/README.md +1 -1
- package/extensions/ublocklite/_locales/br_FR/messages.json +1 -1
- package/extensions/ublocklite/_locales/bs/messages.json +58 -58
- package/extensions/ublocklite/_locales/he/messages.json +2 -2
- package/extensions/ublocklite/_locales/hu/messages.json +1 -1
- package/extensions/ublocklite/_locales/pt_BR/messages.json +1 -1
- package/extensions/ublocklite/_locales/pt_PT/messages.json +1 -1
- package/extensions/ublocklite/_locales/ro/messages.json +1 -1
- package/extensions/ublocklite/_locales/sk/messages.json +6 -6
- package/extensions/ublocklite/_locales/sq/messages.json +17 -17
- package/extensions/ublocklite/_locales/sr/messages.json +28 -28
- package/extensions/ublocklite/_locales/th/messages.json +1 -1
- package/extensions/ublocklite/_locales/tr/messages.json +1 -1
- package/extensions/ublocklite/_locales/vi/messages.json +1 -1
- package/extensions/ublocklite/css/common.css +5 -3
- package/extensions/ublocklite/css/default.css +10 -0
- package/extensions/ublocklite/css/unpicker-ui.css +1 -0
- package/extensions/ublocklite/js/background.js +5 -3
- package/extensions/ublocklite/js/dnr-parser.js +1 -1
- package/extensions/ublocklite/js/fetch.js +1 -1
- package/extensions/ublocklite/js/filter-lists.js +1 -4
- package/extensions/ublocklite/js/filter-manager.js +45 -9
- package/extensions/ublocklite/js/popup.js +2 -2
- package/extensions/ublocklite/js/ruleset-manager.js +10 -126
- package/extensions/ublocklite/js/rw-dnr-editor.js +8 -4
- package/extensions/ublocklite/js/scripting/css-procedural.js +2 -0
- package/extensions/ublocklite/js/scripting/css-specific.js +2 -0
- package/extensions/ublocklite/js/scripting/tool-overlay.js +1 -0
- package/extensions/ublocklite/js/scripting-manager.js +2 -2
- package/extensions/ublocklite/js/settings.js +2 -1
- package/extensions/ublocklite/js/static-filtering-parser.js +25 -18
- package/extensions/ublocklite/js/ubo-parser.js +181 -65
- package/extensions/ublocklite/manifest.json +4 -4
- package/extensions/ublocklite/rulesets/generic-details.json +7 -17
- package/extensions/ublocklite/rulesets/main/adguard-mobile.json +25 -4
- package/extensions/ublocklite/rulesets/main/adguard-spyware-url.json +615 -1
- package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +21 -8
- package/extensions/ublocklite/rulesets/main/annoyances-others.json +5 -2
- package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +22 -2
- package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +1 -1
- package/extensions/ublocklite/rulesets/main/chn-0.json +98 -29
- package/extensions/ublocklite/rulesets/main/cze-0.json +6 -1
- package/extensions/ublocklite/rulesets/main/deu-0.json +15 -11
- package/extensions/ublocklite/rulesets/main/dpollock-0.json +4 -0
- package/extensions/ublocklite/rulesets/main/easylist.json +146 -98
- package/extensions/ublocklite/rulesets/main/easyprivacy.json +149 -32
- package/extensions/ublocklite/rulesets/main/est-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/fin-0.json +9 -0
- package/extensions/ublocklite/rulesets/main/fra-0.json +49 -9
- package/extensions/ublocklite/rulesets/main/hun-0.json +4 -1
- package/extensions/ublocklite/rulesets/main/idn-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/ind-0.json +101 -155
- package/extensions/ublocklite/rulesets/main/irn-0.json +34 -11
- package/extensions/ublocklite/rulesets/main/isr-0.json +20 -2
- package/extensions/ublocklite/rulesets/main/ita-0.json +3 -1
- package/extensions/ublocklite/rulesets/main/jpn-1.json +69 -22
- package/extensions/ublocklite/rulesets/main/kor-1.json +39 -5
- package/extensions/ublocklite/rulesets/main/ltu-0.json +3 -1
- package/extensions/ublocklite/rulesets/main/lva-0.json +2 -1
- package/extensions/ublocklite/rulesets/main/nld-0.json +6 -1
- package/extensions/ublocklite/rulesets/main/nor-0.json +13 -4
- package/extensions/ublocklite/rulesets/main/pgl.json +8 -11
- package/extensions/ublocklite/rulesets/main/pol-0.json +13 -2
- package/extensions/ublocklite/rulesets/main/rou-1.json +17 -1
- package/extensions/ublocklite/rulesets/main/rus-0.json +104 -27
- package/extensions/ublocklite/rulesets/main/rus-1.json +114 -4
- package/extensions/ublocklite/rulesets/main/spa-1.json +43 -15
- package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +15832 -9032
- package/extensions/ublocklite/rulesets/main/swe-1.json +89 -52
- package/extensions/ublocklite/rulesets/main/tha-0.json +7 -1
- package/extensions/ublocklite/rulesets/main/tur-0.json +54 -6
- package/extensions/ublocklite/rulesets/main/ublock-badware.json +79 -106
- package/extensions/ublocklite/rulesets/main/ublock-filters.json +794 -111
- package/extensions/ublocklite/rulesets/main/ubol-tests.json +60 -0
- package/extensions/ublocklite/rulesets/main/ukr-0.json +20 -1
- package/extensions/ublocklite/rulesets/main/urlhaus-full.json +631 -676
- package/extensions/ublocklite/rulesets/main/vie-1.json +74 -59
- package/extensions/ublocklite/rulesets/regex/chn-0.json +8 -3
- package/extensions/ublocklite/rulesets/regex/deu-0.json +0 -1
- package/extensions/ublocklite/rulesets/regex/easylist.json +0 -2
- package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -1
- package/extensions/ublocklite/rulesets/regex/kor-1.json +1 -0
- package/extensions/ublocklite/rulesets/regex/pol-0.json +1 -0
- package/extensions/ublocklite/rulesets/regex/rus-0.json +1 -0
- package/extensions/ublocklite/rulesets/regex/rus-1.json +24 -0
- package/extensions/ublocklite/rulesets/regex/tur-0.json +2 -1
- package/extensions/ublocklite/rulesets/regex/ublock-badware.json +10 -8
- package/extensions/ublocklite/rulesets/regex/ublock-filters.json +28 -12
- package/extensions/ublocklite/rulesets/ruleset-details.json +252 -472
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-notifications.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-overlays.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-social.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/deu-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/fra-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/nld-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/nor-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/ukr-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generichigh/chn-0.css +2 -9
- package/extensions/ublocklite/rulesets/scripting/generichigh/easylist.css +2 -13
- package/extensions/ublocklite/rulesets/scripting/generichigh/idn-0.css +4 -0
- package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +1 -0
- package/extensions/ublocklite/rulesets/scripting/generichigh/ublock-filters.css +0 -2
- package/extensions/ublocklite/rulesets/scripting/procedural/adguard-mobile.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-notifications.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-others.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-social.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/chn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/deu-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/fra-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/idn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/irn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/kor-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/nld-0.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/rus-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +3 -3
- 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 +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie-reload.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.trusted-replace-node-text.js +450 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{jpn-1.abort-on-property-write.js → adguard-mobile.trusted-set-attr.js} +107 -41
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.prevent-requestAnimationFrame.js +407 -0
- 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.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-replace-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-stack-trace.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +9 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setInterval.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-xhr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-click-element.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-outbound-text.js +427 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.adjust-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.json-prune.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-fetch.js +9 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-window-open.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{vie-1.m3u-prune.js → chn-0.spoof-css.js} +109 -148
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.abort-current-script.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.adjust-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-window-open.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-session-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-cookie.js +442 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{ublock-filters.evaldata-prune.js → kor-1.json-prune-xhr-response.js} +227 -198
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.remove-node-text.js +1 -1
- 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-property-write.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +10 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-xhr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-cookie.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-attr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.abort-on-property-read.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.remove-cookie.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.adjust-setInterval.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.noeval-if.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +9 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-requestAnimationFrame.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-window-open.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.href-sanitizer.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-write.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.adjust-setInterval.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-attr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-badware.addEventListener-defuser.js +498 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-replace-node-text.js +450 -0
- 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 +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-write.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setInterval.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setTimeout.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.disable-newtab-links.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.href-sanitizer.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-fetch-response.js +927 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-xhr-response.js +851 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-xhr-response.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.m3u-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.nowebrtc.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +10 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-requestAnimationFrame.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +2 -2
- 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 +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-attr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-attr.js +2 -2
- 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 +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-click-element.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-create-html.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-override-element-method.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-fetch.js +7 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-xhr.js +1 -1
- 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 +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-xhr-response.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-cookie.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.xml-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.prevent-fetch.js +7 -0
- 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 +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.json-prune.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.prevent-fetch.js +7 -0
- 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 +3 -3
- 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/fin-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
- 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/irn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/isr-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/rus-1.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/tha-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
- package/extensions/ublocklite/rulesets/scriptlet-details.json +301 -173
- package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +11 -1
- package/extensions/ublocklite/rulesets/strictblock/annoyances-cookies.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/chn-0.json +398 -791
- package/extensions/ublocklite/rulesets/strictblock/dpollock-0.json +4 -0
- package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +76 -74
- package/extensions/ublocklite/rulesets/strictblock/fra-0.json +429 -49
- package/extensions/ublocklite/rulesets/strictblock/irn-0.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +185 -176
- package/extensions/ublocklite/rulesets/strictblock/kor-1.json +6 -1
- package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/pgl.json +8 -11
- package/extensions/ublocklite/rulesets/strictblock/pol-0.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/rus-1.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/spa-1.json +1 -2
- package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +15832 -9032
- package/extensions/ublocklite/rulesets/strictblock/swe-1.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/tur-0.json +4 -0
- package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +636 -631
- package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +3 -2
- package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +631 -676
- package/extensions/ublocklite/rulesets/strictblock/vie-1.json +7 -8
- package/extensions/ublocklite/rulesets/urlskip/ublock-filters.json +30 -0
- package/extensions/ublocklite/ublock.zip +0 -0
- package/package.json +23 -21
- package/scripts/build-open-api.js +15 -1
- package/scripts/install-adblock.js +25 -4
- package/scripts/start.sh +1 -1
- package/scripts/test.sh +2 -2
- package/src/limiter.ts +1 -1
- package/src/routes/chromium/tests/scrape.spec.ts +48 -0
- package/src/sdk-utils.ts +1 -1
- package/src/shared/scrape.http.ts +17 -5
- package/static/docs/swagger.json +330 -102
- package/static/docs/swagger.min.json +329 -101
- package/static/function/client.js +273 -171
- package/static/function/index.html +273 -171
- package/extensions/ublocklite/rulesets/modify-headers/annoyances-overlays.json +0 -108
- package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +0 -316
- package/extensions/ublocklite/rulesets/modify-headers/cze-0.json +0 -25
- package/extensions/ublocklite/rulesets/modify-headers/deu-0.json +0 -24
- package/extensions/ublocklite/rulesets/modify-headers/easylist.json +0 -14
- package/extensions/ublocklite/rulesets/modify-headers/easyprivacy.json +0 -48
- package/extensions/ublocklite/rulesets/modify-headers/fra-0.json +0 -215
- package/extensions/ublocklite/rulesets/modify-headers/irn-0.json +0 -45
- package/extensions/ublocklite/rulesets/modify-headers/isr-0.json +0 -50
- package/extensions/ublocklite/rulesets/modify-headers/rus-0.json +0 -41
- package/extensions/ublocklite/rulesets/modify-headers/rus-1.json +0 -22
- package/extensions/ublocklite/rulesets/modify-headers/swe-1.json +0 -46
- package/extensions/ublocklite/rulesets/modify-headers/ublock-filters.json +0 -53
- package/extensions/ublocklite/rulesets/modify-headers/ubol-tests.json +0 -25
- package/extensions/ublocklite/rulesets/modify-headers/vie-1.json +0 -162
- package/extensions/ublocklite/rulesets/redirect/adguard-mobile.json +0 -20
- package/extensions/ublocklite/rulesets/redirect/annoyances-overlays.json +0 -15
- package/extensions/ublocklite/rulesets/redirect/chn-0.json +0 -40
- package/extensions/ublocklite/rulesets/redirect/cze-0.json +0 -76
- package/extensions/ublocklite/rulesets/redirect/deu-0.json +0 -79
- package/extensions/ublocklite/rulesets/redirect/easylist.json +0 -103
- package/extensions/ublocklite/rulesets/redirect/easyprivacy.json +0 -137
- package/extensions/ublocklite/rulesets/redirect/fin-0.json +0 -121
- package/extensions/ublocklite/rulesets/redirect/fra-0.json +0 -35
- package/extensions/ublocklite/rulesets/redirect/hun-0.json +0 -38
- package/extensions/ublocklite/rulesets/redirect/irn-0.json +0 -73
- package/extensions/ublocklite/rulesets/redirect/isr-0.json +0 -17
- package/extensions/ublocklite/rulesets/redirect/jpn-1.json +0 -30
- package/extensions/ublocklite/rulesets/redirect/kor-1.json +0 -25
- package/extensions/ublocklite/rulesets/redirect/ltu-0.json +0 -33
- package/extensions/ublocklite/rulesets/redirect/nld-0.json +0 -79
- package/extensions/ublocklite/rulesets/redirect/nor-0.json +0 -132
- package/extensions/ublocklite/rulesets/redirect/pol-0.json +0 -15
- package/extensions/ublocklite/rulesets/redirect/rou-1.json +0 -53
- package/extensions/ublocklite/rulesets/redirect/rus-0.json +0 -21
- package/extensions/ublocklite/rulesets/redirect/rus-1.json +0 -118
- package/extensions/ublocklite/rulesets/redirect/spa-1.json +0 -27
- package/extensions/ublocklite/rulesets/redirect/swe-1.json +0 -14
- package/extensions/ublocklite/rulesets/redirect/tha-0.json +0 -78
- package/extensions/ublocklite/rulesets/redirect/tur-0.json +0 -24
- package/extensions/ublocklite/rulesets/redirect/ublock-badware.json +0 -18
- package/extensions/ublocklite/rulesets/redirect/ublock-filters.json +0 -556
- package/extensions/ublocklite/rulesets/redirect/ubol-tests.json +0 -22
- package/extensions/ublocklite/rulesets/redirect/ukr-0.json +0 -18
- package/extensions/ublocklite/rulesets/redirect/vie-1.json +0 -85
- package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +0 -612
- package/extensions/ublocklite/rulesets/removeparam/annoyances-overlays.json +0 -27
- package/extensions/ublocklite/rulesets/removeparam/chn-0.json +0 -48
- package/extensions/ublocklite/rulesets/removeparam/est-0.json +0 -26
- package/extensions/ublocklite/rulesets/removeparam/fin-0.json +0 -52
- package/extensions/ublocklite/rulesets/removeparam/irn-0.json +0 -18
- package/extensions/ublocklite/rulesets/removeparam/kor-1.json +0 -26
- package/extensions/ublocklite/rulesets/removeparam/rus-0.json +0 -19
- package/extensions/ublocklite/rulesets/removeparam/rus-1.json +0 -98
- package/extensions/ublocklite/rulesets/removeparam/swe-1.json +0 -125
- package/extensions/ublocklite/rulesets/removeparam/ublock-filters.json +0 -63
- package/extensions/ublocklite/rulesets/removeparam/ukr-0.json +0 -49
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"description": "appears as tab name in dashboard"
|
|
21
21
|
},
|
|
22
22
|
"developPageName": {
|
|
23
|
-
"message": "
|
|
23
|
+
"message": "Развити",
|
|
24
24
|
"description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
|
|
25
25
|
},
|
|
26
26
|
"aboutPageName": {
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"description": "Label in the popup panel for the current filtering mode"
|
|
37
37
|
},
|
|
38
38
|
"popupLocalToolsLabel": {
|
|
39
|
-
"message": "
|
|
39
|
+
"message": "На овој веб страници",
|
|
40
40
|
"description": "Label in the popup panel for the local tools section"
|
|
41
41
|
},
|
|
42
42
|
"popupTipReport": {
|
|
@@ -120,7 +120,7 @@
|
|
|
120
120
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
121
121
|
},
|
|
122
122
|
"supportS5H": {
|
|
123
|
-
"message": "
|
|
123
|
+
"message": "Информације о решавању проблема",
|
|
124
124
|
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
125
125
|
},
|
|
126
126
|
"supportS6P1S1": {
|
|
@@ -244,11 +244,11 @@
|
|
|
244
244
|
"description": "Short description for a checkbox in the options page"
|
|
245
245
|
},
|
|
246
246
|
"developerModeLabel": {
|
|
247
|
-
"message": "
|
|
247
|
+
"message": "Режим за програмере",
|
|
248
248
|
"description": "Label for a checkbox in the options page"
|
|
249
249
|
},
|
|
250
250
|
"developerModeLegend": {
|
|
251
|
-
"message": "
|
|
251
|
+
"message": "Омогућава приступ функцијама погодним за техничке кориснике.",
|
|
252
252
|
"description": "Short description for a checkbox in the options page"
|
|
253
253
|
},
|
|
254
254
|
"findListsPlaceholder": {
|
|
@@ -264,11 +264,11 @@
|
|
|
264
264
|
"description": "Sentence used in the strict-blocked page"
|
|
265
265
|
},
|
|
266
266
|
"strictblockReasonSentence1": {
|
|
267
|
-
"message": "
|
|
267
|
+
"message": "Страница је блокирана због одговарајућег филтера у {{listname}}.",
|
|
268
268
|
"description": "Text informing about what is causing the page to be blocked"
|
|
269
269
|
},
|
|
270
270
|
"strictblockRedirectSentence1": {
|
|
271
|
-
"message": "
|
|
271
|
+
"message": "Блокирана страница жели да преусмери на други сајт. Ако одлучите да наставите, бићете директно на: {{url}}",
|
|
272
272
|
"description": "Text warning about an incoming redirect"
|
|
273
273
|
},
|
|
274
274
|
"strictblockNoParamsPrompt": {
|
|
@@ -292,87 +292,87 @@
|
|
|
292
292
|
"description": "A button to navigate to the blocked page"
|
|
293
293
|
},
|
|
294
294
|
"zapperTipEnter": {
|
|
295
|
-
"message": "
|
|
295
|
+
"message": "Уклоните елемент",
|
|
296
296
|
"description": "Tooltip for the button used to enter zapper mode"
|
|
297
297
|
},
|
|
298
298
|
"zapperTipQuit": {
|
|
299
|
-
"message": "
|
|
299
|
+
"message": "Изађи из режима за затварање елемената",
|
|
300
300
|
"description": "Tooltip for the button used to exit zapper mode"
|
|
301
301
|
},
|
|
302
302
|
"pickerTipEnter": {
|
|
303
|
-
"message": "
|
|
303
|
+
"message": "Направите прилагођени филтер",
|
|
304
304
|
"description": "Label for the menu entry to create cosmetic filters"
|
|
305
305
|
},
|
|
306
306
|
"unpickerTipEnter": {
|
|
307
|
-
"message": "
|
|
307
|
+
"message": "Уклоните прилагођени филтер",
|
|
308
308
|
"description": "Label for the menu entry to delete cosmetic filters"
|
|
309
309
|
},
|
|
310
310
|
"developDropdownLabel": {
|
|
311
|
-
"message": "
|
|
311
|
+
"message": "Приказ:",
|
|
312
312
|
"description": "A label of a dropdown list"
|
|
313
313
|
},
|
|
314
314
|
"developOptionFilteringModeDetails": {
|
|
315
|
-
"message": "
|
|
315
|
+
"message": "Детаљи режима филтрирања",
|
|
316
316
|
"description": "An option in a dropdown list"
|
|
317
317
|
},
|
|
318
318
|
"developOptionCustomDnrRules": {
|
|
319
|
-
"message": "
|
|
319
|
+
"message": "Прилагођена правила за DNR",
|
|
320
320
|
"description": "An option in a dropdown list"
|
|
321
321
|
},
|
|
322
322
|
"developOptionDnrRulesOf": {
|
|
323
|
-
"message": "
|
|
323
|
+
"message": "ДНР правила …",
|
|
324
324
|
"description": "A section header in a dropdown list"
|
|
325
325
|
},
|
|
326
326
|
"developOptionDynamicRuleset": {
|
|
327
|
-
"message": "
|
|
327
|
+
"message": "Динамички скуп правила",
|
|
328
328
|
"description": "An option in a dropdown list"
|
|
329
329
|
},
|
|
330
330
|
"developOptionSessionRuleset": {
|
|
331
|
-
"message": "
|
|
331
|
+
"message": "Скуп правила сесије",
|
|
332
332
|
"description": "An option in a dropdown list"
|
|
333
333
|
},
|
|
334
334
|
"saveButton": {
|
|
335
|
-
"message": "
|
|
335
|
+
"message": "Сачувај",
|
|
336
336
|
"description": "Text for buttons used to save changes"
|
|
337
337
|
},
|
|
338
338
|
"revertButton": {
|
|
339
|
-
"message": "
|
|
339
|
+
"message": "Врати",
|
|
340
340
|
"description": "Text for buttons used to revert changes"
|
|
341
341
|
},
|
|
342
342
|
"importAndAppendButton": {
|
|
343
|
-
"message": "
|
|
343
|
+
"message": "Увези и додај…",
|
|
344
344
|
"description": "Text for buttons used to import and append content"
|
|
345
345
|
},
|
|
346
346
|
"exportButton": {
|
|
347
|
-
"message": "
|
|
347
|
+
"message": "Извоз…",
|
|
348
348
|
"description": "Text for buttons used to export content"
|
|
349
349
|
},
|
|
350
350
|
"dnrRulesWarning": {
|
|
351
|
-
"message": "
|
|
351
|
+
"message": "Не додајте садржај из непоузданих извора",
|
|
352
352
|
"description": "Short description of the DNR rules editor pane"
|
|
353
353
|
},
|
|
354
354
|
"dnrRulesCountInfo": {
|
|
355
|
-
"message": "
|
|
355
|
+
"message": "Број регистрованих правила: {count}",
|
|
356
356
|
"description": "Short sentence to report the number of currently registered DNR rules"
|
|
357
357
|
},
|
|
358
358
|
"pickerSliderLabel": {
|
|
359
|
-
"message": "
|
|
359
|
+
"message": "Померите клизач да бисте изабрали најбоље подударање",
|
|
360
360
|
"description": "Label to describe the purpose of the slider"
|
|
361
361
|
},
|
|
362
362
|
"pickerPick": {
|
|
363
|
-
"message": "
|
|
363
|
+
"message": "Изаберите",
|
|
364
364
|
"description": "Text for the button to re-enter element-picking mode"
|
|
365
365
|
},
|
|
366
366
|
"pickerPreview": {
|
|
367
|
-
"message": "
|
|
367
|
+
"message": "Прегледај",
|
|
368
368
|
"description": "Text for the button to activate preview mode"
|
|
369
369
|
},
|
|
370
370
|
"pickerCreate": {
|
|
371
|
-
"message": "
|
|
371
|
+
"message": "Креирај",
|
|
372
372
|
"description": "Text for the button to create the filter"
|
|
373
373
|
},
|
|
374
374
|
"unpickerUsage": {
|
|
375
|
-
"message": "
|
|
375
|
+
"message": "Изаберите филтер испод да бисте истакли одговарајуће елементе на веб страници. Кликните на канту за смеће да бисте уклонили филтер.",
|
|
376
376
|
"description": "Summary description on how to use the tool to remove custom filters"
|
|
377
377
|
}
|
|
378
378
|
}
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
69
69
|
},
|
|
70
70
|
"3pGroupMalware": {
|
|
71
|
-
"message": "
|
|
71
|
+
"message": "การป้องกันมัลแวร์ ความปลอดภัย",
|
|
72
72
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
73
73
|
},
|
|
74
74
|
"3pGroupAnnoyances": {
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
"description": "Label for a checkbox in the options page"
|
|
249
249
|
},
|
|
250
250
|
"developerModeLegend": {
|
|
251
|
-
"message": "Teknik kullanıcılara uygun özelliklere erişime izin ver",
|
|
251
|
+
"message": "Teknik kullanıcılara uygun özelliklere erişime izin ver.",
|
|
252
252
|
"description": "Short description for a checkbox in the options page"
|
|
253
253
|
},
|
|
254
254
|
"findListsPlaceholder": {
|
|
@@ -80,7 +80,7 @@ button {
|
|
|
80
80
|
appearance: none;
|
|
81
81
|
-moz-appearance: none;
|
|
82
82
|
-webkit-appearance: none;
|
|
83
|
-
border:
|
|
83
|
+
border: var(--button-border-size) solid var(--ink-1);
|
|
84
84
|
border-radius: var(--button-border-radius);
|
|
85
85
|
background-color: var(--button-surface);
|
|
86
86
|
color: var(--button-ink);
|
|
@@ -193,7 +193,7 @@ label:hover .checkbox:not([disabled]) {
|
|
|
193
193
|
height: 100%;
|
|
194
194
|
margin: 0;
|
|
195
195
|
min-width: var(--checkbox-size);
|
|
196
|
-
opacity:
|
|
196
|
+
opacity: var(--native-control-opacity);
|
|
197
197
|
position: absolute;
|
|
198
198
|
width: 100%;
|
|
199
199
|
}
|
|
@@ -204,6 +204,7 @@ label:hover .checkbox:not([disabled]) {
|
|
|
204
204
|
box-sizing: border-box;
|
|
205
205
|
fill: none;
|
|
206
206
|
height: 100%;
|
|
207
|
+
opacity: calc(1 - var(--native-control-opacity));
|
|
207
208
|
pointer-events: none;
|
|
208
209
|
position: absolute;
|
|
209
210
|
stroke: none;
|
|
@@ -242,7 +243,7 @@ label:hover .checkbox:not([disabled]) {
|
|
|
242
243
|
height: 100%;
|
|
243
244
|
margin: 0;
|
|
244
245
|
min-width: var(--checkbox-size);
|
|
245
|
-
opacity:
|
|
246
|
+
opacity: var(--native-control-opacity);
|
|
246
247
|
position: absolute;
|
|
247
248
|
width: 100%;
|
|
248
249
|
}
|
|
@@ -250,6 +251,7 @@ label:hover .checkbox:not([disabled]) {
|
|
|
250
251
|
background-color: transparent;
|
|
251
252
|
box-sizing: border-box;
|
|
252
253
|
height: 100%;
|
|
254
|
+
opacity: calc(1 - var(--native-control-opacity));
|
|
253
255
|
pointer-events: none;
|
|
254
256
|
position: absolute;
|
|
255
257
|
width: 100%;
|
|
@@ -408,8 +408,11 @@
|
|
|
408
408
|
--fieldset-header-surface: transparent;
|
|
409
409
|
--fieldset-header-ink: var(--ink-2);
|
|
410
410
|
|
|
411
|
+
--native-control-opacity: 0;
|
|
412
|
+
|
|
411
413
|
--button-ink: var(--ink-1);
|
|
412
414
|
--button-surface: rgb(var(--button-surface-rgb));
|
|
415
|
+
--button-border-size: 0;
|
|
413
416
|
--button-border-radius: 5px;
|
|
414
417
|
--button-preferred-ink: var(--accent-ink-1);
|
|
415
418
|
--button-preferred-surface: var(--accent-surface-1);
|
|
@@ -460,6 +463,13 @@
|
|
|
460
463
|
--popup-ruleset-tool-shadow: transparent;
|
|
461
464
|
}
|
|
462
465
|
|
|
466
|
+
@media (prefers-contrast: more) {
|
|
467
|
+
:root {
|
|
468
|
+
--native-control-opacity: 1;
|
|
469
|
+
--button-border-size: 1px;
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
|
|
463
473
|
/*
|
|
464
474
|
* Rule colors
|
|
465
475
|
* */
|
|
@@ -186,12 +186,14 @@ function onMessage(request, sender, callback) {
|
|
|
186
186
|
|
|
187
187
|
case 'insertCSS': {
|
|
188
188
|
if ( frameId === false ) { return false; }
|
|
189
|
+
// https://bugs.webkit.org/show_bug.cgi?id=262491
|
|
190
|
+
if ( frameId !== 0 && webextFlavor === 'safari' ) { return false; }
|
|
189
191
|
browser.scripting.insertCSS({
|
|
190
192
|
css: request.css,
|
|
191
193
|
origin: 'USER',
|
|
192
194
|
target: { tabId, frameIds: [ frameId ] },
|
|
193
195
|
}).catch(reason => {
|
|
194
|
-
ubolErr(reason);
|
|
196
|
+
ubolErr(`insertCSS/${reason}`);
|
|
195
197
|
});
|
|
196
198
|
return false;
|
|
197
199
|
}
|
|
@@ -203,7 +205,7 @@ function onMessage(request, sender, callback) {
|
|
|
203
205
|
origin: 'USER',
|
|
204
206
|
target: { tabId, frameIds: [ frameId ] },
|
|
205
207
|
}).catch(reason => {
|
|
206
|
-
ubolErr(reason);
|
|
208
|
+
ubolErr(`removeCSS/${reason}`);
|
|
207
209
|
});
|
|
208
210
|
return false;
|
|
209
211
|
}
|
|
@@ -242,7 +244,7 @@ function onMessage(request, sender, callback) {
|
|
|
242
244
|
target: { tabId, frameIds: [ frameId ] },
|
|
243
245
|
injectImmediately: true,
|
|
244
246
|
}).catch(reason => {
|
|
245
|
-
ubolErr(reason);
|
|
247
|
+
ubolErr(`executeScript/${reason}`);
|
|
246
248
|
}).then(( ) => {
|
|
247
249
|
callback();
|
|
248
250
|
});
|
|
@@ -515,7 +515,7 @@ export function rulesFromText(text) {
|
|
|
515
515
|
if ( indices.length === 0 ) { continue; }
|
|
516
516
|
const result = ruleFromLines(lines, indices);
|
|
517
517
|
if ( result.bad ) {
|
|
518
|
-
bad.push(...result.bad);
|
|
518
|
+
bad.push(...result.bad.slice(4));
|
|
519
519
|
} else if ( result.rule ) {
|
|
520
520
|
rules.push(result.rule);
|
|
521
521
|
}
|
|
@@ -94,10 +94,7 @@ function rulesetStats(rulesetId) {
|
|
|
94
94
|
const rulesetDetails = rulesetMap.get(rulesetId);
|
|
95
95
|
if ( rulesetDetails === undefined ) { return; }
|
|
96
96
|
const { rules, filters } = rulesetDetails;
|
|
97
|
-
|
|
98
|
-
if ( cachedRulesetData.hasOmnipotence ) {
|
|
99
|
-
ruleCount += rules.removeparam + rules.redirect + rules.modifyHeaders;
|
|
100
|
-
}
|
|
97
|
+
const ruleCount = rules.plain + rules.regex;
|
|
101
98
|
const filterCount = filters.accepted;
|
|
102
99
|
return { ruleCount, filterCount };
|
|
103
100
|
}
|
|
@@ -38,6 +38,10 @@ import { ubolErr } from './debug.js';
|
|
|
38
38
|
|
|
39
39
|
/******************************************************************************/
|
|
40
40
|
|
|
41
|
+
const perSitePendingIO = new Map();
|
|
42
|
+
|
|
43
|
+
/******************************************************************************/
|
|
44
|
+
|
|
41
45
|
export async function selectorsFromCustomFilters(hostname) {
|
|
42
46
|
const promises = [];
|
|
43
47
|
let hn = hostname;
|
|
@@ -81,7 +85,7 @@ export function startCustomFilters(tabId, frameId) {
|
|
|
81
85
|
target: { tabId, frameIds: [ frameId ] },
|
|
82
86
|
injectImmediately: true,
|
|
83
87
|
}).catch(reason => {
|
|
84
|
-
ubolErr(reason);
|
|
88
|
+
ubolErr(`startCustomFilters/${reason}`);
|
|
85
89
|
})
|
|
86
90
|
}
|
|
87
91
|
|
|
@@ -91,7 +95,7 @@ export function terminateCustomFilters(tabId, frameId) {
|
|
|
91
95
|
target: { tabId, frameIds: [ frameId ] },
|
|
92
96
|
injectImmediately: true,
|
|
93
97
|
}).catch(reason => {
|
|
94
|
-
ubolErr(reason);
|
|
98
|
+
ubolErr(`terminateCustomFilters/${reason}`);
|
|
95
99
|
})
|
|
96
100
|
}
|
|
97
101
|
|
|
@@ -109,7 +113,7 @@ export async function injectCustomFilters(tabId, frameId, hostname) {
|
|
|
109
113
|
origin: 'USER',
|
|
110
114
|
target: { tabId, frameIds: [ frameId ] },
|
|
111
115
|
}).catch(reason => {
|
|
112
|
-
ubolErr(reason);
|
|
116
|
+
ubolErr(`injectCustomFilters/insertCSS/${reason}`);
|
|
113
117
|
})
|
|
114
118
|
);
|
|
115
119
|
}
|
|
@@ -121,7 +125,7 @@ export async function injectCustomFilters(tabId, frameId, hostname) {
|
|
|
121
125
|
target: { tabId, frameIds: [ frameId ] },
|
|
122
126
|
injectImmediately: true,
|
|
123
127
|
}).catch(reason => {
|
|
124
|
-
ubolErr(reason);
|
|
128
|
+
ubolErr(`injectCustomFilters/executeScript/${reason}`);
|
|
125
129
|
})
|
|
126
130
|
);
|
|
127
131
|
}
|
|
@@ -132,6 +136,9 @@ export async function injectCustomFilters(tabId, frameId, hostname) {
|
|
|
132
136
|
/******************************************************************************/
|
|
133
137
|
|
|
134
138
|
export async function registerCustomFilters(context) {
|
|
139
|
+
if ( perSitePendingIO.size !== 0 ) {
|
|
140
|
+
await Promise.all(Array.from(perSitePendingIO.values()));
|
|
141
|
+
}
|
|
135
142
|
const siteKeys = await getAllCustomFilterKeys();
|
|
136
143
|
if ( siteKeys.length === 0 ) { return; }
|
|
137
144
|
|
|
@@ -168,6 +175,20 @@ export async function registerCustomFilters(context) {
|
|
|
168
175
|
/******************************************************************************/
|
|
169
176
|
|
|
170
177
|
export async function addCustomFilter(hostname, selector) {
|
|
178
|
+
const pending = perSitePendingIO.get(hostname);
|
|
179
|
+
const promise = pending
|
|
180
|
+
? pending.then(( ) => addCustomFilterByHostname(hostname, selector))
|
|
181
|
+
: addCustomFilterByHostname(hostname, selector);
|
|
182
|
+
perSitePendingIO.set(hostname, promise);
|
|
183
|
+
promise.then(( ) => {
|
|
184
|
+
if ( promise !== perSitePendingIO.get(hostname) ) { return; }
|
|
185
|
+
perSitePendingIO.delete(hostname);
|
|
186
|
+
});
|
|
187
|
+
return promise;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
async function addCustomFilterByHostname(hostname, selector) {
|
|
191
|
+
if ( hostname === '' ) { return false; }
|
|
171
192
|
const key = `site.${hostname}`;
|
|
172
193
|
const selectors = await localRead(key) || [];
|
|
173
194
|
if ( selectors.includes(selector) ) { return false; }
|
|
@@ -183,9 +204,7 @@ export async function removeCustomFilter(hostname, selector) {
|
|
|
183
204
|
const promises = [];
|
|
184
205
|
let hn = hostname;
|
|
185
206
|
while ( hn !== '' ) {
|
|
186
|
-
promises.push(
|
|
187
|
-
removeCustomFilterByKey(`site.${hn}`, selector).catch(( ) => false)
|
|
188
|
-
);
|
|
207
|
+
promises.push(removeCustomFilterByHostname(hn, selector));
|
|
189
208
|
const pos = hn.indexOf('.');
|
|
190
209
|
if ( pos === -1 ) { break; }
|
|
191
210
|
hn = hn.slice(pos + 1);
|
|
@@ -194,11 +213,28 @@ export async function removeCustomFilter(hostname, selector) {
|
|
|
194
213
|
return results.some(a => a);
|
|
195
214
|
}
|
|
196
215
|
|
|
216
|
+
async function removeCustomFilterByHostname(hostname, selector) {
|
|
217
|
+
const pending = perSitePendingIO.get(hostname);
|
|
218
|
+
const key = `site.${hostname}`;
|
|
219
|
+
const promise = pending
|
|
220
|
+
? pending.then(( ) => removeCustomFilterByKey(key, selector))
|
|
221
|
+
: removeCustomFilterByKey(key, selector);
|
|
222
|
+
perSitePendingIO.set(hostname, promise);
|
|
223
|
+
promise.then(( ) => {
|
|
224
|
+
if ( promise !== perSitePendingIO.get(hostname) ) { return; }
|
|
225
|
+
perSitePendingIO.delete(hostname);
|
|
226
|
+
});
|
|
227
|
+
return promise;
|
|
228
|
+
}
|
|
229
|
+
|
|
197
230
|
async function removeCustomFilterByKey(key, selector) {
|
|
198
231
|
const selectors = await localRead(key);
|
|
199
232
|
if ( selectors === undefined ) { return false; }
|
|
200
|
-
|
|
201
|
-
if ( i === -1 ) {
|
|
233
|
+
let i = selectors.indexOf(selector);
|
|
234
|
+
if ( i === -1 ) {
|
|
235
|
+
i = selectors.indexOf(`0${selector}`);
|
|
236
|
+
if ( i === -1 ) { return false; }
|
|
237
|
+
}
|
|
202
238
|
selectors.splice(i, 1);
|
|
203
239
|
if ( selectors.length !== 0 ) {
|
|
204
240
|
await localWrite(key, selectors);
|
|
@@ -340,8 +340,6 @@ async function init() {
|
|
|
340
340
|
|
|
341
341
|
dom.cl.toggle('#gotoUnpicker', 'enabled', popupPanelData.hasCustomFilters);
|
|
342
342
|
|
|
343
|
-
dom.cl.remove(dom.body, 'loading');
|
|
344
|
-
|
|
345
343
|
return true;
|
|
346
344
|
}
|
|
347
345
|
|
|
@@ -350,6 +348,8 @@ async function tryInit() {
|
|
|
350
348
|
await init();
|
|
351
349
|
} catch {
|
|
352
350
|
setTimeout(tryInit, 100);
|
|
351
|
+
} finally {
|
|
352
|
+
dom.cl.remove(dom.body, 'loading');
|
|
353
353
|
}
|
|
354
354
|
}
|
|
355
355
|
|