@browserless.io/browserless 2.26.1 → 2.27.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 +8 -1
- package/build/config.d.ts +3 -0
- package/build/config.js +8 -1
- 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 +8 -8
- 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 +8 -8
- package/build/routes/chromium/tests/pdf.spec.js +24 -0
- package/build/routes/edge/http/content.post.body.json +8 -8
- package/build/routes/edge/http/pdf.post.body.json +8 -8
- package/build/routes/edge/http/scrape.post.body.json +8 -8
- package/build/routes/edge/http/screenshot.post.body.json +8 -8
- package/build/server.d.ts +1 -0
- package/build/server.js +22 -35
- package/build/utils.d.ts +2 -2
- package/build/utils.js +22 -7
- package/extensions/ublocklite/_locales/ar/messages.json +4 -0
- package/extensions/ublocklite/_locales/az/messages.json +4 -0
- package/extensions/ublocklite/_locales/be/messages.json +6 -2
- package/extensions/ublocklite/_locales/bg/messages.json +4 -0
- package/extensions/ublocklite/_locales/bn/messages.json +4 -0
- package/extensions/ublocklite/_locales/br_FR/messages.json +6 -2
- package/extensions/ublocklite/_locales/bs/messages.json +4 -0
- package/extensions/ublocklite/_locales/ca/messages.json +4 -0
- package/extensions/ublocklite/_locales/cs/messages.json +4 -0
- package/extensions/ublocklite/_locales/cv/messages.json +4 -0
- package/extensions/ublocklite/_locales/cy/messages.json +4 -0
- package/extensions/ublocklite/_locales/da/messages.json +4 -0
- package/extensions/ublocklite/_locales/de/messages.json +4 -0
- package/extensions/ublocklite/_locales/el/messages.json +4 -0
- package/extensions/ublocklite/_locales/en/messages.json +4 -0
- package/extensions/ublocklite/_locales/en_GB/messages.json +4 -0
- package/extensions/ublocklite/_locales/eo/messages.json +4 -0
- package/extensions/ublocklite/_locales/es/messages.json +4 -0
- package/extensions/ublocklite/_locales/et/messages.json +6 -2
- package/extensions/ublocklite/_locales/eu/messages.json +12 -8
- package/extensions/ublocklite/_locales/fa/messages.json +4 -0
- package/extensions/ublocklite/_locales/fi/messages.json +4 -0
- package/extensions/ublocklite/_locales/fil/messages.json +4 -0
- package/extensions/ublocklite/_locales/fr/messages.json +4 -0
- package/extensions/ublocklite/_locales/fy/messages.json +6 -2
- package/extensions/ublocklite/_locales/gl/messages.json +4 -0
- package/extensions/ublocklite/_locales/gu/messages.json +4 -0
- package/extensions/ublocklite/_locales/he/messages.json +4 -0
- package/extensions/ublocklite/_locales/hi/messages.json +4 -0
- package/extensions/ublocklite/_locales/hr/messages.json +4 -0
- package/extensions/ublocklite/_locales/hu/messages.json +6 -2
- package/extensions/ublocklite/_locales/hy/messages.json +4 -0
- package/extensions/ublocklite/_locales/id/messages.json +4 -0
- package/extensions/ublocklite/_locales/it/messages.json +4 -0
- package/extensions/ublocklite/_locales/ja/messages.json +4 -0
- package/extensions/ublocklite/_locales/ka/messages.json +4 -0
- package/extensions/ublocklite/_locales/kk/messages.json +4 -0
- package/extensions/ublocklite/_locales/kn/messages.json +4 -0
- package/extensions/ublocklite/_locales/ko/messages.json +4 -0
- package/extensions/ublocklite/_locales/lt/messages.json +4 -0
- package/extensions/ublocklite/_locales/lv/messages.json +4 -0
- package/extensions/ublocklite/_locales/mk/messages.json +4 -0
- package/extensions/ublocklite/_locales/ml/messages.json +4 -0
- package/extensions/ublocklite/_locales/mr/messages.json +4 -0
- package/extensions/ublocklite/_locales/ms/messages.json +4 -0
- package/extensions/ublocklite/_locales/nb/messages.json +4 -0
- package/extensions/ublocklite/_locales/nl/messages.json +4 -0
- package/extensions/ublocklite/_locales/oc/messages.json +4 -0
- package/extensions/ublocklite/_locales/pa/messages.json +4 -0
- package/extensions/ublocklite/_locales/pl/messages.json +4 -0
- package/extensions/ublocklite/_locales/pt_BR/messages.json +4 -0
- package/extensions/ublocklite/_locales/pt_PT/messages.json +4 -0
- package/extensions/ublocklite/_locales/ro/messages.json +4 -0
- package/extensions/ublocklite/_locales/ru/messages.json +4 -0
- package/extensions/ublocklite/_locales/si/messages.json +4 -0
- package/extensions/ublocklite/_locales/sk/messages.json +4 -0
- package/extensions/ublocklite/_locales/sl/messages.json +4 -0
- package/extensions/ublocklite/_locales/so/messages.json +4 -0
- package/extensions/ublocklite/_locales/sq/messages.json +4 -0
- package/extensions/ublocklite/_locales/sr/messages.json +4 -0
- package/extensions/ublocklite/_locales/sv/messages.json +4 -0
- package/extensions/ublocklite/_locales/sw/messages.json +4 -0
- package/extensions/ublocklite/_locales/ta/messages.json +4 -0
- package/extensions/ublocklite/_locales/te/messages.json +4 -0
- package/extensions/ublocklite/_locales/th/messages.json +4 -0
- package/extensions/ublocklite/_locales/tr/messages.json +4 -0
- package/extensions/ublocklite/_locales/uk/messages.json +4 -0
- package/extensions/ublocklite/_locales/ur/messages.json +4 -0
- package/extensions/ublocklite/_locales/vi/messages.json +4 -0
- package/extensions/ublocklite/_locales/zh_CN/messages.json +4 -0
- package/extensions/ublocklite/_locales/zh_TW/messages.json +4 -0
- package/extensions/ublocklite/css/matched-rules.css +3 -0
- package/extensions/ublocklite/css/zapper-ui.css +14 -2
- package/extensions/ublocklite/js/background.js +18 -21
- package/extensions/ublocklite/js/i18n.js +1 -1
- package/extensions/ublocklite/js/report.js +29 -17
- package/extensions/ublocklite/js/ruleset-manager.js +4 -3
- package/extensions/ublocklite/js/scripting/zapper.js +5 -3
- package/extensions/ublocklite/manifest.json +5 -3
- package/extensions/ublocklite/report.html +7 -1
- package/extensions/ublocklite/rulesets/generic-details.json +6 -18
- package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +15 -13
- package/extensions/ublocklite/rulesets/main/annoyances-others.json +1 -0
- package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +9 -12
- package/extensions/ublocklite/rulesets/main/badware.json +28 -3
- package/extensions/ublocklite/rulesets/main/block-lan.json +1 -0
- package/extensions/ublocklite/rulesets/main/chn-0.json +8 -6
- package/extensions/ublocklite/rulesets/main/cze-0.json +1 -2
- package/extensions/ublocklite/rulesets/main/default.json +80 -82
- package/extensions/ublocklite/rulesets/main/fra-0.json +14 -13
- package/extensions/ublocklite/rulesets/main/idn-0.json +9 -41
- package/extensions/ublocklite/rulesets/main/ind-0.json +14 -15
- package/extensions/ublocklite/rulesets/main/irn-0.json +5 -3
- package/extensions/ublocklite/rulesets/main/jpn-1.json +16 -6
- package/extensions/ublocklite/rulesets/main/kor-1.json +2 -1
- package/extensions/ublocklite/rulesets/main/lva-0.json +3 -2
- package/extensions/ublocklite/rulesets/main/nld-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/nor-0.json +12 -0
- package/extensions/ublocklite/rulesets/main/openphish-domains.json +2527 -2127
- package/extensions/ublocklite/rulesets/main/rus-0.json +11 -5
- package/extensions/ublocklite/rulesets/main/rus-1.json +3 -2
- package/extensions/ublocklite/rulesets/main/spa-1.json +5 -3
- package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +2347 -4306
- package/extensions/ublocklite/rulesets/main/swe-1.json +23 -25
- package/extensions/ublocklite/rulesets/main/tur-0.json +5 -4
- package/extensions/ublocklite/rulesets/main/ukr-0.json +11 -3
- package/extensions/ublocklite/rulesets/main/urlhaus-full.json +466 -151
- package/extensions/ublocklite/rulesets/main/vie-1.json +43 -61
- package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +23 -0
- package/extensions/ublocklite/rulesets/modify-headers/default.json +3 -3
- package/extensions/ublocklite/rulesets/modify-headers/vie-1.json +1 -1
- package/extensions/ublocklite/rulesets/redirect/default.json +13 -9
- package/extensions/ublocklite/rulesets/redirect/swe-1.json +1 -3
- package/extensions/ublocklite/rulesets/redirect/vie-1.json +5 -21
- package/extensions/ublocklite/rulesets/regex/badware.json +1 -0
- package/extensions/ublocklite/rulesets/regex/default.json +4 -8
- package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +5 -4
- package/extensions/ublocklite/rulesets/removeparam/default.json +1 -1
- package/extensions/ublocklite/rulesets/ruleset-details.json +188 -188
- package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-cookies.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-others.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-overlays.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/default.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/fin-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/irn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/rus-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/swe-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/ukr-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/declarative/vie-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-overlays.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/default.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/deu-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/fra-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/kor-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/lva-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/nld-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/ukr-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generichigh/default.css +3 -2
- package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.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/cze-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/default.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/deu-0.js +4 -4
- 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/kor-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/lva-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/pol-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/ukr-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-constant.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 +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{badware.abort-on-property-read.js → annoyances-cookies.trusted-set-cookie-reload.js} +120 -62
- 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-others.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.remove-cookie.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-session-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-write.js +2 -2
- 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 +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.noeval-if.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +2 -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-attr.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-click-element.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-argument.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/badware.trusted-replace-argument.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-current-script.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-property-read.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-property-write.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.abort-on-stack-trace.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.addEventListener-defuser.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.adjust-setInterval.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.adjust-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.disable-newtab-links.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.href-sanitizer.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune-fetch-response.js +4 -8
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune-xhr-response.js +3 -7
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.noeval-if.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-fetch.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-refresh.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-setInterval.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-window-open.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.prevent-xhr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-attr.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-class.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.remove-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-constant.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-cookie.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-click-element.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-override-element-method.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-prevent-dom-bypass.js +10 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-argument.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-node-text.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-replace-xhr-response.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.trusted-suppress-native-method.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/default.xml-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/est-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.json-prune-fetch-response.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/grc-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.noeval-if.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-setTimeout.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-window-open.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{ubol-tests.jsonl-prune-xhr-response.js → idn-0.prevent-xhr.js} +216 -235
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.remove-node-text.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-on-property-read.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.href-sanitizer.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.noeval-if.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ltu-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{swe-1.abort-on-property-write.js → lva-0.adjust-setInterval.js} +27 -42
- package/extensions/ublocklite/rulesets/scripting/scriptlet/lva-0.set-constant.js +541 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.json-prune-fetch-response.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.prevent-window-open.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.set-constant.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-stack-trace.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.adjust-setInterval.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune-fetch-response.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-node-text.js +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +1 -1
- 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 +4 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.href-sanitizer.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-class.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-local-storage-item.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.href-sanitizer.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.json-prune-fetch-response.js +1 -5
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tha-0.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.adjust-setInterval.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-cookie.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +896 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +807 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/{annoyances-cookies.remove-node-text.js → ubol-tests.trusted-prevent-dom-bypass.js} +115 -138
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.remove-node-text.js +3 -3
- 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.addEventListener-defuser.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.m3u-prune.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.remove-attr.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.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/badware.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/cze-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/default.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/deu-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/hun-0.js +1 -1
- 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 +1 -1
- 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/lva-0.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/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +1 -1
- 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/ukr-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
- package/extensions/ublocklite/rulesets/scriptlet-details.json +334 -360
- package/extensions/ublocklite/rulesets/strictblock/badware.json +274 -265
- package/extensions/ublocklite/rulesets/strictblock/chn-0.json +58 -0
- package/extensions/ublocklite/rulesets/strictblock/default.json +10 -9
- package/extensions/ublocklite/rulesets/strictblock/fra-0.json +27 -4
- package/extensions/ublocklite/rulesets/strictblock/idn-0.json +1 -31
- package/extensions/ublocklite/rulesets/strictblock/irn-0.json +3 -0
- package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +154 -149
- package/extensions/ublocklite/rulesets/strictblock/spa-1.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +2347 -4306
- package/extensions/ublocklite/rulesets/strictblock/swe-1.json +1 -2
- package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +466 -151
- package/extensions/ublocklite/rulesets/urlskip/default.json +7 -0
- package/extensions/ublocklite/ublock.zip +0 -0
- package/extensions/ublocklite/web_accessible_resources/fingerprint3.js +45 -0
- package/extensions/ublocklite/zapper-ui.html +1 -1
- package/package.json +8 -8
- package/src/config.ts +9 -1
- package/src/routes/chromium/tests/pdf.spec.ts +27 -0
- package/src/server.ts +31 -47
- package/src/utils.ts +30 -6
- package/static/docs/swagger.json +10 -10
- package/static/docs/swagger.min.json +9 -9
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-prune-fetch-response.js +0 -613
- package/extensions/ublocklite/rulesets/strictblock/openphish-domains.json +0 -37227
|
@@ -510,14 +510,14 @@
|
|
|
510
510
|
"length": {
|
|
511
511
|
"type": "number"
|
|
512
512
|
},
|
|
513
|
-
"__@toStringTag@
|
|
513
|
+
"__@toStringTag@427162": {
|
|
514
514
|
"type": "string",
|
|
515
515
|
"const": "Uint8Array"
|
|
516
516
|
}
|
|
517
517
|
},
|
|
518
518
|
"required": [
|
|
519
519
|
"BYTES_PER_ELEMENT",
|
|
520
|
-
"__@toStringTag@
|
|
520
|
+
"__@toStringTag@427162",
|
|
521
521
|
"buffer",
|
|
522
522
|
"byteLength",
|
|
523
523
|
"byteOffset",
|
|
@@ -552,13 +552,13 @@
|
|
|
552
552
|
"byteLength": {
|
|
553
553
|
"type": "number"
|
|
554
554
|
},
|
|
555
|
-
"__@toStringTag@
|
|
555
|
+
"__@toStringTag@427162": {
|
|
556
556
|
"type": "string"
|
|
557
557
|
}
|
|
558
558
|
},
|
|
559
559
|
"additionalProperties": false,
|
|
560
560
|
"required": [
|
|
561
|
-
"__@toStringTag@
|
|
561
|
+
"__@toStringTag@427162",
|
|
562
562
|
"byteLength"
|
|
563
563
|
]
|
|
564
564
|
},
|
|
@@ -568,18 +568,18 @@
|
|
|
568
568
|
"byteLength": {
|
|
569
569
|
"type": "number"
|
|
570
570
|
},
|
|
571
|
-
"__@species@
|
|
571
|
+
"__@species@427200": {
|
|
572
572
|
"$ref": "#/definitions/SharedArrayBuffer"
|
|
573
573
|
},
|
|
574
|
-
"__@toStringTag@
|
|
574
|
+
"__@toStringTag@427162": {
|
|
575
575
|
"type": "string",
|
|
576
576
|
"const": "SharedArrayBuffer"
|
|
577
577
|
}
|
|
578
578
|
},
|
|
579
579
|
"additionalProperties": false,
|
|
580
580
|
"required": [
|
|
581
|
-
"__@species@
|
|
582
|
-
"__@toStringTag@
|
|
581
|
+
"__@species@427200",
|
|
582
|
+
"__@toStringTag@427162",
|
|
583
583
|
"byteLength"
|
|
584
584
|
]
|
|
585
585
|
},
|
|
@@ -553,14 +553,14 @@
|
|
|
553
553
|
"length": {
|
|
554
554
|
"type": "number"
|
|
555
555
|
},
|
|
556
|
-
"__@toStringTag@
|
|
556
|
+
"__@toStringTag@515599": {
|
|
557
557
|
"type": "string",
|
|
558
558
|
"const": "Uint8Array"
|
|
559
559
|
}
|
|
560
560
|
},
|
|
561
561
|
"required": [
|
|
562
562
|
"BYTES_PER_ELEMENT",
|
|
563
|
-
"__@toStringTag@
|
|
563
|
+
"__@toStringTag@515599",
|
|
564
564
|
"buffer",
|
|
565
565
|
"byteLength",
|
|
566
566
|
"byteOffset",
|
|
@@ -595,13 +595,13 @@
|
|
|
595
595
|
"byteLength": {
|
|
596
596
|
"type": "number"
|
|
597
597
|
},
|
|
598
|
-
"__@toStringTag@
|
|
598
|
+
"__@toStringTag@515599": {
|
|
599
599
|
"type": "string"
|
|
600
600
|
}
|
|
601
601
|
},
|
|
602
602
|
"additionalProperties": false,
|
|
603
603
|
"required": [
|
|
604
|
-
"__@toStringTag@
|
|
604
|
+
"__@toStringTag@515599",
|
|
605
605
|
"byteLength"
|
|
606
606
|
]
|
|
607
607
|
},
|
|
@@ -611,18 +611,18 @@
|
|
|
611
611
|
"byteLength": {
|
|
612
612
|
"type": "number"
|
|
613
613
|
},
|
|
614
|
-
"__@species@
|
|
614
|
+
"__@species@515637": {
|
|
615
615
|
"$ref": "#/definitions/SharedArrayBuffer"
|
|
616
616
|
},
|
|
617
|
-
"__@toStringTag@
|
|
617
|
+
"__@toStringTag@515599": {
|
|
618
618
|
"type": "string",
|
|
619
619
|
"const": "SharedArrayBuffer"
|
|
620
620
|
}
|
|
621
621
|
},
|
|
622
622
|
"additionalProperties": false,
|
|
623
623
|
"required": [
|
|
624
|
-
"__@species@
|
|
625
|
-
"__@toStringTag@
|
|
624
|
+
"__@species@515637",
|
|
625
|
+
"__@toStringTag@515599",
|
|
626
626
|
"byteLength"
|
|
627
627
|
]
|
|
628
628
|
},
|
package/build/server.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export declare class HTTPServer extends EventEmitter {
|
|
|
21
21
|
protected host?: string;
|
|
22
22
|
protected logger: BlessLogger;
|
|
23
23
|
constructor(config: Config, metrics: Metrics, token: Token, router: Router, hooks: Hooks, Logger: typeof BlessLogger);
|
|
24
|
+
protected handleErrorRequest(e: Error, res: Response | stream.Duplex): void;
|
|
24
25
|
protected onHTTPUnauthorized(_req: Request, res: Response): void;
|
|
25
26
|
protected onWebsocketUnauthorized(_req: Request, socket: stream.Duplex): void;
|
|
26
27
|
start(): Promise<void>;
|
package/build/server.js
CHANGED
|
@@ -26,6 +26,25 @@ export class HTTPServer extends EventEmitter {
|
|
|
26
26
|
this.port = config.getPort();
|
|
27
27
|
this.logger.info(`Server instantiated with host "${this.host}" on port "${this.port}`);
|
|
28
28
|
}
|
|
29
|
+
handleErrorRequest(e, res) {
|
|
30
|
+
if (e instanceof BadRequest) {
|
|
31
|
+
return writeResponse(res, 400, e.message);
|
|
32
|
+
}
|
|
33
|
+
if (e instanceof NotFound) {
|
|
34
|
+
return writeResponse(res, 404, e.message);
|
|
35
|
+
}
|
|
36
|
+
if (e instanceof Unauthorized) {
|
|
37
|
+
return writeResponse(res, 401, e.message);
|
|
38
|
+
}
|
|
39
|
+
if (e instanceof TooManyRequests) {
|
|
40
|
+
return writeResponse(res, 429, e.message);
|
|
41
|
+
}
|
|
42
|
+
if (e instanceof Timeout) {
|
|
43
|
+
return writeResponse(res, 408, e.message);
|
|
44
|
+
}
|
|
45
|
+
this.logger.error(`Error handling request: ${e}\n${e.stack}`);
|
|
46
|
+
return writeResponse(res, 500, e.toString());
|
|
47
|
+
}
|
|
29
48
|
onHTTPUnauthorized(_req, res) {
|
|
30
49
|
this.logger.error(`HTTP request is not properly authorized, responding with 401`);
|
|
31
50
|
this.metrics.addUnauthorized();
|
|
@@ -103,7 +122,7 @@ export class HTTPServer extends EventEmitter {
|
|
|
103
122
|
return this.onHTTPUnauthorized(req, res);
|
|
104
123
|
}
|
|
105
124
|
}
|
|
106
|
-
const body = await readBody(req);
|
|
125
|
+
const body = await readBody(req, this.config.getMaxPayloadSize()).catch((e) => this.handleErrorRequest(e, res));
|
|
107
126
|
req.body = body;
|
|
108
127
|
req.queryParams = queryParamsToObject(req.parsed.searchParams);
|
|
109
128
|
if (((req.headers['content-type']?.includes(contentTypes.json) ||
|
|
@@ -161,24 +180,7 @@ export class HTTPServer extends EventEmitter {
|
|
|
161
180
|
.then(() => {
|
|
162
181
|
this.logger.trace('HTTP connection complete');
|
|
163
182
|
})
|
|
164
|
-
.catch((e) =>
|
|
165
|
-
if (e instanceof BadRequest) {
|
|
166
|
-
return writeResponse(res, 400, e.message);
|
|
167
|
-
}
|
|
168
|
-
if (e instanceof NotFound) {
|
|
169
|
-
return writeResponse(res, 404, e.message);
|
|
170
|
-
}
|
|
171
|
-
if (e instanceof Unauthorized) {
|
|
172
|
-
return writeResponse(res, 401, e.message);
|
|
173
|
-
}
|
|
174
|
-
if (e instanceof TooManyRequests) {
|
|
175
|
-
return writeResponse(res, 429, e.message);
|
|
176
|
-
}
|
|
177
|
-
if (e instanceof Timeout) {
|
|
178
|
-
return writeResponse(res, 408, e.message);
|
|
179
|
-
}
|
|
180
|
-
return writeResponse(res, 500, e.toString());
|
|
181
|
-
});
|
|
183
|
+
.catch((e) => this.handleErrorRequest(e, res));
|
|
182
184
|
}
|
|
183
185
|
async handleWebSocket(request, socket, head) {
|
|
184
186
|
this.logger.trace(`Handling inbound WebSocket request on "${request.url}"`);
|
|
@@ -226,22 +228,7 @@ export class HTTPServer extends EventEmitter {
|
|
|
226
228
|
.then(() => {
|
|
227
229
|
this.logger.trace('Websocket connection complete');
|
|
228
230
|
})
|
|
229
|
-
.catch((e) =>
|
|
230
|
-
if (e instanceof BadRequest) {
|
|
231
|
-
return writeResponse(socket, 400, e.message);
|
|
232
|
-
}
|
|
233
|
-
if (e instanceof NotFound) {
|
|
234
|
-
return writeResponse(socket, 404, e.message);
|
|
235
|
-
}
|
|
236
|
-
if (e instanceof Unauthorized) {
|
|
237
|
-
return writeResponse(socket, 401, e.message);
|
|
238
|
-
}
|
|
239
|
-
if (e instanceof TooManyRequests) {
|
|
240
|
-
return writeResponse(socket, 429, e.message);
|
|
241
|
-
}
|
|
242
|
-
this.logger.error(`Error handling request at "${route.path}": ${e}\n${e.stack}`);
|
|
243
|
-
return writeResponse(socket, 500, e.message);
|
|
244
|
-
});
|
|
231
|
+
.catch((e) => this.handleErrorRequest(e, socket));
|
|
245
232
|
}
|
|
246
233
|
this.logger.error(`No matching WebSocket route handler for "${req.parsed.href}"`);
|
|
247
234
|
return writeResponse(socket, 404, 'Not Found');
|
package/build/utils.d.ts
CHANGED
|
@@ -42,12 +42,12 @@ export declare const writeResponse: (writeable: Duplex | ServerResponse, httpCod
|
|
|
42
42
|
export declare const jsonResponse: (response: ServerResponse, httpCode?: keyof typeof codes, json?: unknown, allowNull?: boolean) => void;
|
|
43
43
|
export declare const fetchJson: (url: string, init?: RequestInit | undefined) => Promise<unknown>;
|
|
44
44
|
export declare const getTokenFromRequest: (req: Request) => string | null;
|
|
45
|
-
export declare const readRequestBody: (req: Request) => Promise<string>;
|
|
45
|
+
export declare const readRequestBody: (req: Request, maxSize?: number) => Promise<string>;
|
|
46
46
|
export declare const safeParse: (maybeJson: string) => unknown | null;
|
|
47
47
|
export declare const removeNullStringify: (json: unknown, allowNull?: boolean) => string;
|
|
48
48
|
export declare const jsonOrString: (maybeJson: string) => unknown | string;
|
|
49
49
|
export declare const generateDataDir: (sessionId: string | undefined, config: Config) => Promise<string>;
|
|
50
|
-
export declare const readBody: (req: Request) => Promise<ReturnType<typeof safeParse>>;
|
|
50
|
+
export declare const readBody: (req: Request, maxSize?: number) => Promise<ReturnType<typeof safeParse>>;
|
|
51
51
|
/**
|
|
52
52
|
* Lists the path of Chromes (stable) install since
|
|
53
53
|
* no library or utility out there does it including playwright.
|
package/build/utils.js
CHANGED
|
@@ -161,10 +161,11 @@ export const getTokenFromRequest = (req) => {
|
|
|
161
161
|
return tokenParam ?? getAuthHeaderToken(authHeader || '');
|
|
162
162
|
};
|
|
163
163
|
// NOTE, if proxying request elsewhere, you must re-stream the body again
|
|
164
|
-
export const readRequestBody = async (req) => {
|
|
165
|
-
return new Promise((resolve) => {
|
|
164
|
+
export const readRequestBody = async (req, maxSize = 10485760) => {
|
|
165
|
+
return new Promise((resolve, reject) => {
|
|
166
166
|
const body = [];
|
|
167
167
|
let hasResolved = false;
|
|
168
|
+
let totalSize = 0;
|
|
168
169
|
const resolveOnce = (results) => {
|
|
169
170
|
if (hasResolved) {
|
|
170
171
|
return;
|
|
@@ -172,8 +173,22 @@ export const readRequestBody = async (req) => {
|
|
|
172
173
|
hasResolved = true;
|
|
173
174
|
resolve(results);
|
|
174
175
|
};
|
|
176
|
+
const rejectOnce = (error) => {
|
|
177
|
+
if (hasResolved) {
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
hasResolved = true;
|
|
181
|
+
reject(error);
|
|
182
|
+
};
|
|
175
183
|
req
|
|
176
|
-
.on('data', (chunk) =>
|
|
184
|
+
.on('data', (chunk) => {
|
|
185
|
+
totalSize += chunk.length;
|
|
186
|
+
if (totalSize > maxSize) {
|
|
187
|
+
rejectOnce(new BadRequest(`Request payload size (${totalSize} bytes) exceeds maximum allowed size of ${maxSize} bytes`));
|
|
188
|
+
return;
|
|
189
|
+
}
|
|
190
|
+
body.push(chunk);
|
|
191
|
+
})
|
|
177
192
|
.on('end', () => {
|
|
178
193
|
const final = Buffer.concat(body).toString();
|
|
179
194
|
resolveOnce(final);
|
|
@@ -181,8 +196,8 @@ export const readRequestBody = async (req) => {
|
|
|
181
196
|
.on('aborted', () => {
|
|
182
197
|
resolveOnce('');
|
|
183
198
|
})
|
|
184
|
-
.on('error', () => {
|
|
185
|
-
|
|
199
|
+
.on('error', (error) => {
|
|
200
|
+
rejectOnce(error);
|
|
186
201
|
});
|
|
187
202
|
});
|
|
188
203
|
};
|
|
@@ -216,12 +231,12 @@ export const generateDataDir = async (sessionId = id(), config) => {
|
|
|
216
231
|
});
|
|
217
232
|
return dataDirPath;
|
|
218
233
|
};
|
|
219
|
-
export const readBody = async (req) => {
|
|
234
|
+
export const readBody = async (req, maxSize = 10485760) => {
|
|
220
235
|
if (typeof req.body === 'string' &&
|
|
221
236
|
(isBase64.test(req.body) || req.body.startsWith('{'))) {
|
|
222
237
|
return safeParse(convertIfBase64(req.body));
|
|
223
238
|
}
|
|
224
|
-
const body = await readRequestBody(req);
|
|
239
|
+
const body = await readRequestBody(req, maxSize);
|
|
225
240
|
return req.headers['content-type']?.includes(contentTypes.json)
|
|
226
241
|
? safeParse(body)
|
|
227
242
|
: body;
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "الإبلاغ عن مشكلات الفلترة الخاصة بمواقع الويب المحددة إلى<span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">uBlockOrigin/uAssets</code></span>متتبع المشكلة</span>يتطلب حساب GitHub</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "معلومات استكشاف وإصلاح الأخطاء",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "لتجنب تحميل المتطوعين بتقارير مكررة، يرجى التأكد من أن المشكلة لم يتم الإبلاغ عنها بالفعل.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Паведамляйце пра праблемы з фільтрамі, датычныя канкрэтных вэб-сайтаў, праз <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">трэкер праблем<code>uBlockOrigin/uAssets</code> </span>. <u>Патрэбны ўліковы запіс GitHub.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Дыягнастычныя звесткі",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Каб не абцяжарваць добраахвотнікаў дубляванымі справаздачамі, калі ласка, пераканайцеся, што пра гэтую праблему не паведамлялі раней.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -280,11 +284,11 @@
|
|
|
280
284
|
"description": "A button to navigate to the blocked page"
|
|
281
285
|
},
|
|
282
286
|
"zapperTipEnter": {
|
|
283
|
-
"message": "
|
|
287
|
+
"message": "Перайсці ў рэжым імгненнага хавання элементаў",
|
|
284
288
|
"description": "Tooltip for the button used to enter zapper mode"
|
|
285
289
|
},
|
|
286
290
|
"zapperTipQuit": {
|
|
287
|
-
"message": "
|
|
291
|
+
"message": "Выйсці з рэжыму імгненнага хавання элементаў",
|
|
288
292
|
"description": "Tooltip for the button used to exit zapper mode"
|
|
289
293
|
}
|
|
290
294
|
}
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Докладвайте за проблеми с филтрирането на конкретни уебсайтове в <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> за проследяване на проблеми</span>. <u>Изисква се акаунт в GitHub.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Информация за отстраняване на неизправности",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "За да се избегне натоварването на доброволците с дублиращи се доклади, моля, проверете дали проблемът вече не е докладван.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "নির্দিষ্ট ছাঁকনি বিষয়ক সমস্যা এখানে জানাও <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> সমস্যা ট্র্যাকার</span>. <u>গিটহাব অ্যাকাউন্ট প্রয়োজন।</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "একই প্রতিবেদন দুইবার এড়াতে ও স্বেচ্ছাসেবকদের বোঝা কমাতে, অনুগ্রহ করে যাচাই করো যে সমস্যাটি ইতিমধ্যে জানানো হয়নি।",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Titouroù diagnostikañ kudennoù",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Evit nompas sammañ ar genlabourerien a-youl vat gant meur a zanevell heñvel, gwiriit ma n'eo ket bet danevellet ho kudenn en ar-raok mar plij. <b>Notenn:</b> ma klikit ar bouton e vo kaset anv herberc'hier ar bajenn da c'h-GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -280,11 +284,11 @@
|
|
|
280
284
|
"description": "A button to navigate to the blocked page"
|
|
281
285
|
},
|
|
282
286
|
"zapperTipEnter": {
|
|
283
|
-
"message": "
|
|
287
|
+
"message": "Mont er mod \"dilemel elfennoù\"",
|
|
284
288
|
"description": "Tooltip for the button used to enter zapper mode"
|
|
285
289
|
},
|
|
286
290
|
"zapperTipQuit": {
|
|
287
|
-
"message": "
|
|
291
|
+
"message": "Kuitaat ar mod \"dilemel elfennoù\"",
|
|
288
292
|
"description": "Tooltip for the button used to exit zapper mode"
|
|
289
293
|
}
|
|
290
294
|
}
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Informeu d'un problema en llocs web específics mitjançant el <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> seguiment d'errors</span>. <u>Cal un compte al GitHub.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Informació de resolució de problemes",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Per a evitar la sobrecàrrega del nostre voluntariat amb informes duplicats, verifiqueu abans que el problema encara no s'ha notificat. <b>Nota:</b> En fer clic, enviareu la pàgina causant al nostre GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Nahlaste problémy s filtrem u učitých webových stránek do <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">sledovače problémů <code>uBlockOrigin/uAssets</code></span>. <u>Vyžaduje účet GitHub.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Informace o řešení problémů",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Abyste dobrovolníky nezatěžovali duplicitními hlášeními, ověřte si, zda již problém nebyl nahlášen.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Anmeld filterproblemer med bestemte websteder til <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code>-problemsporingen</span>. <u>Kræver en GitHub-konto.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Fejlfindingsinformation",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "For at undgå at bebyrde frivillige med dubletanmeldelser, så tjek venligst, at problematikken ikke allerede er anmeldt. <b>Bemærk:</b> Ved at klikke på knappen, sendes sidens oprindelse til GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Bitte melden Sie Filterprobleme mit bestimmten Websites an den <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> Issue Tracker</span>. <u>Erfordert ein GitHub-Konto.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Informationen zur Fehlerbehebung",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Um die Freiwilligen nicht mit doppelten Meldungen zu überlasten, vergewissern Sie sich bitte, dass das Problem noch nicht gemeldet wurde. <b>Hinweis:</b> Das Anklicken der Schaltfläche übermittelt den Ursprung der Seite an GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Αναφέρετε προβλήμα φίλτρου για συγκεκριμένους ιστοτόπους στο <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">εργαλείο παρακολούθησης ζητημάτων του <code>uBlockOrigin/uAssets</code></span>. <u>Απαιτείται λογαριασμός GitHub.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Πληροφορίες για αντιμετώπιση προβλημάτων",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Για να μην επιβαρυνθούν οι εθελοντών με διπλές αναφορές, βεβαιωθείτε ότι το ζήτημα δεν έχει ήδη αναφερθεί.<b>Σημείωση:</b> Με το πάτημα του κουμπιού, θα σταλεί η σελίδα προέλευσης στο GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Reportar problemas de filtros con sitios web específicos en el registro de problemas <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code></span>. <u>Requiere una cuenta en GitHub</u>.",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Información para solucionar problemas",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Para evitar sobrecargar a voluntarios con reportes duplicados, verifica que el problema no haya sido reportado. <b>Nota:</b> al hacer clic en el botón, hará que el origen de la página se envíe a GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -111,12 +111,16 @@
|
|
|
111
111
|
"message": "Teavita vigasest filtrist kindlate veebilehtedega <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">uBlockOrigin/uAssets</code> vigade andmebaasi kaudu</span>. <u>Nõuab GitHubi kontot.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Tõrkeotsingu teave",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "Vabatahtlike koormamise vältimiseks samade teadetega veenduge, et keegi pole selle murega juba varem pöördunud. <b>Märge!</b> Nupule klõpsamisega saadetakse GitHubile lehekülje aadress.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
117
121
|
},
|
|
118
122
|
"supportFindSpecificButton": {
|
|
119
|
-
"message": "
|
|
123
|
+
"message": "Leia GitHubist sarnaseid aruandeid",
|
|
120
124
|
"description": "A clickable link in the filter issue reporter section"
|
|
121
125
|
},
|
|
122
126
|
"supportS6URL": {
|
|
@@ -164,7 +168,7 @@
|
|
|
164
168
|
"description": "A checkbox to use for NSFW sites"
|
|
165
169
|
},
|
|
166
170
|
"supportReportSpecificButton": {
|
|
167
|
-
"message": "Loo uus aruanne",
|
|
171
|
+
"message": "Loo GitHubis uus aruanne",
|
|
168
172
|
"description": "Text for button which open an external webpage in Support pane"
|
|
169
173
|
},
|
|
170
174
|
"firstRunSectionLabel": {
|
|
@@ -111,6 +111,10 @@
|
|
|
111
111
|
"message": "Report filter issues with specific websites to the <span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\"><code>uBlockOrigin/uAssets</code> issue tracker</span>. <u>Requires a GitHub account.</u>",
|
|
112
112
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
113
113
|
},
|
|
114
|
+
"supportS5H": {
|
|
115
|
+
"message": "Troubleshooting information",
|
|
116
|
+
"description": "Label of 'Troubleshooting information' section in 'Report a filter issue' page"
|
|
117
|
+
},
|
|
114
118
|
"supportS6P1S1": {
|
|
115
119
|
"message": "To avoid burdening volunteers with duplicate reports, please verify that the issue has not already been reported. <b>Note:</b> clicking the button will cause the page's origin to be sent to GitHub.",
|
|
116
120
|
"description": "A paragraph in the filter issue reporter section"
|
|
@@ -244,7 +248,7 @@
|
|
|
244
248
|
"description": "Placeholder for the input field used to find lists"
|
|
245
249
|
},
|
|
246
250
|
"strictblockTitle": {
|
|
247
|
-
"message": "
|
|
251
|
+
"message": "Blokeatutako orrialdea",
|
|
248
252
|
"description": "Webpage title for the strict-blocked page"
|
|
249
253
|
},
|
|
250
254
|
"strictblockSentence1": {
|
|
@@ -260,31 +264,31 @@
|
|
|
260
264
|
"description": "Text warning about an incoming redirect"
|
|
261
265
|
},
|
|
262
266
|
"strictblockNoParamsPrompt": {
|
|
263
|
-
"message": "
|
|
267
|
+
"message": "parametrorik gabe",
|
|
264
268
|
"description": "Label to be used for the parameter-less URL"
|
|
265
269
|
},
|
|
266
270
|
"strictblockBack": {
|
|
267
|
-
"message": "
|
|
271
|
+
"message": "Joan atzera",
|
|
268
272
|
"description": "A button to go back to the previous webpage"
|
|
269
273
|
},
|
|
270
274
|
"strictblockClose": {
|
|
271
|
-
"message": "
|
|
275
|
+
"message": "Itxi leiho hau",
|
|
272
276
|
"description": "A button to close the current tab"
|
|
273
277
|
},
|
|
274
278
|
"strictblockDontWarn": {
|
|
275
|
-
"message": "
|
|
279
|
+
"message": "Ez esan ezer berriz ere orrialde honi buruz",
|
|
276
280
|
"description": "Label for checkbox in document-blocked page"
|
|
277
281
|
},
|
|
278
282
|
"strictblockProceed": {
|
|
279
|
-
"message": "
|
|
283
|
+
"message": "Aurrera",
|
|
280
284
|
"description": "A button to navigate to the blocked page"
|
|
281
285
|
},
|
|
282
286
|
"zapperTipEnter": {
|
|
283
|
-
"message": "
|
|
287
|
+
"message": "Sartu elementua zapper moduan",
|
|
284
288
|
"description": "Tooltip for the button used to enter zapper mode"
|
|
285
289
|
},
|
|
286
290
|
"zapperTipQuit": {
|
|
287
|
-
"message": "
|
|
291
|
+
"message": "Irten elementua zapper moduan",
|
|
288
292
|
"description": "Tooltip for the button used to exit zapper mode"
|
|
289
293
|
}
|
|
290
294
|
}
|