@browserless.io/browserless 2.36.0 → 2.37.1
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 +16 -2
- package/build/browsers/index.d.ts +1 -0
- package/build/browsers/index.js +18 -2
- package/build/http.d.ts +3 -2
- package/build/http.js +3 -2
- package/build/routes/chrome/http/content.post.query.json +3 -0
- package/build/routes/chrome/http/download.post.query.json +3 -0
- package/build/routes/chrome/http/function.post.query.json +3 -0
- package/build/routes/chrome/http/pdf.post.query.json +3 -0
- package/build/routes/chrome/http/performance.post.query.json +3 -0
- package/build/routes/chrome/http/scrape.post.query.json +3 -0
- package/build/routes/chrome/http/screenshot.post.query.json +3 -0
- package/build/routes/chrome/tests/content.spec.js +21 -0
- package/build/routes/chrome/tests/json.spec.js +100 -0
- package/build/routes/chrome/tests/kill-sessions.spec.js +0 -11
- package/build/routes/chrome/ws/browser.query.json +3 -0
- package/build/routes/chrome/ws/cdp.query.json +3 -0
- package/build/routes/chrome/ws/function-connect.d.ts +7 -0
- package/build/routes/chrome/ws/function-connect.js +6 -0
- package/build/routes/chrome/ws/function-connect.query.json +123 -0
- package/build/routes/chrome/ws/page.query.json +3 -0
- package/build/routes/chromium/http/content.post.query.json +3 -0
- package/build/routes/chromium/http/download.post.query.json +3 -0
- package/build/routes/chromium/http/function.post.query.json +3 -0
- package/build/routes/chromium/http/pdf.post.query.json +3 -0
- package/build/routes/chromium/http/performance.post.query.json +3 -0
- package/build/routes/chromium/http/scrape.post.query.json +3 -0
- package/build/routes/chromium/http/screenshot.post.query.json +3 -0
- package/build/routes/chromium/tests/content.spec.js +21 -0
- package/build/routes/chromium/tests/function.spec.js +27 -0
- package/build/routes/chromium/tests/json.spec.js +100 -0
- package/build/routes/chromium/ws/browser.query.json +3 -0
- package/build/routes/chromium/ws/cdp.query.json +3 -0
- package/build/routes/chromium/ws/function-connect.d.ts +1 -0
- package/build/routes/chromium/ws/function-connect.js +1 -0
- package/build/routes/chromium/ws/function-connect.query.json +123 -0
- package/build/routes/chromium/ws/page.query.json +3 -0
- package/build/routes/edge/http/content.post.query.json +3 -0
- package/build/routes/edge/http/download.post.query.json +3 -0
- package/build/routes/edge/http/function.post.query.json +3 -0
- package/build/routes/edge/http/pdf.post.query.json +3 -0
- package/build/routes/edge/http/performance.post.query.json +3 -0
- package/build/routes/edge/http/scrape.post.query.json +3 -0
- package/build/routes/edge/http/screenshot.post.query.json +3 -0
- package/build/routes/edge/tests/content.spec.js +21 -0
- package/build/routes/edge/tests/json.spec.js +100 -0
- package/build/routes/edge/ws/browser.query.json +3 -0
- package/build/routes/edge/ws/cdp.query.json +3 -0
- package/build/routes/edge/ws/function-connect.d.ts +7 -0
- package/build/routes/edge/ws/function-connect.js +6 -0
- package/build/routes/edge/ws/function-connect.query.json +123 -0
- package/build/routes/edge/ws/page.query.json +3 -0
- package/build/routes/management/http/kill.get.query.json +3 -0
- package/build/routes/management/http/sessions.get.query.json +3 -0
- package/build/routes/management/tests/management.spec.js +44 -0
- package/build/sdk-utils.js +1 -1
- package/build/server.js +1 -1
- package/build/shared/function-connect.ws.d.ts +15 -0
- package/build/shared/function-connect.ws.js +13 -0
- package/build/shared/utils/function/handler.js +6 -4
- package/build/shim.js +11 -1
- package/build/shim.spec.js +14 -0
- package/build/types.d.ts +8 -0
- package/build/types.js +3 -0
- package/extensions/ublocklite/_locales/ar/messages.json +60 -24
- package/extensions/ublocklite/_locales/az/messages.json +36 -0
- package/extensions/ublocklite/_locales/be/messages.json +36 -0
- package/extensions/ublocklite/_locales/bg/messages.json +36 -0
- package/extensions/ublocklite/_locales/bn/messages.json +36 -0
- package/extensions/ublocklite/_locales/br_FR/messages.json +36 -0
- package/extensions/ublocklite/_locales/bs/messages.json +36 -0
- package/extensions/ublocklite/_locales/ca/messages.json +36 -0
- package/extensions/ublocklite/_locales/cs/messages.json +36 -0
- package/extensions/ublocklite/_locales/cv/messages.json +36 -0
- package/extensions/ublocklite/_locales/cy/messages.json +40 -4
- package/extensions/ublocklite/_locales/da/messages.json +39 -3
- package/extensions/ublocklite/_locales/de/messages.json +36 -0
- package/extensions/ublocklite/_locales/el/messages.json +36 -0
- package/extensions/ublocklite/_locales/en/messages.json +36 -0
- package/extensions/ublocklite/_locales/en_GB/messages.json +36 -0
- package/extensions/ublocklite/_locales/eo/messages.json +36 -0
- package/extensions/ublocklite/_locales/es/messages.json +36 -0
- package/extensions/ublocklite/_locales/et/messages.json +36 -0
- package/extensions/ublocklite/_locales/eu/messages.json +36 -0
- package/extensions/ublocklite/_locales/fa/messages.json +36 -0
- package/extensions/ublocklite/_locales/fi/messages.json +37 -1
- package/extensions/ublocklite/_locales/fil/messages.json +36 -0
- package/extensions/ublocklite/_locales/fr/messages.json +36 -0
- package/extensions/ublocklite/_locales/fy/messages.json +37 -1
- package/extensions/ublocklite/_locales/gl/messages.json +37 -1
- package/extensions/ublocklite/_locales/gu/messages.json +36 -0
- package/extensions/ublocklite/_locales/he/messages.json +36 -0
- package/extensions/ublocklite/_locales/hi/messages.json +36 -0
- package/extensions/ublocklite/_locales/hr/messages.json +36 -0
- package/extensions/ublocklite/_locales/hu/messages.json +36 -0
- package/extensions/ublocklite/_locales/hy/messages.json +36 -0
- package/extensions/ublocklite/_locales/id/messages.json +36 -0
- package/extensions/ublocklite/_locales/it/messages.json +36 -0
- package/extensions/ublocklite/_locales/ja/messages.json +36 -0
- package/extensions/ublocklite/_locales/ka/messages.json +36 -0
- package/extensions/ublocklite/_locales/kk/messages.json +36 -0
- package/extensions/ublocklite/_locales/kn/messages.json +36 -0
- package/extensions/ublocklite/_locales/ko/messages.json +36 -0
- package/extensions/ublocklite/_locales/lt/messages.json +36 -0
- package/extensions/ublocklite/_locales/lv/messages.json +36 -0
- package/extensions/ublocklite/_locales/mk/messages.json +36 -0
- package/extensions/ublocklite/_locales/ml/messages.json +36 -0
- package/extensions/ublocklite/_locales/mr/messages.json +36 -0
- package/extensions/ublocklite/_locales/ms/messages.json +36 -0
- package/extensions/ublocklite/_locales/nb/messages.json +53 -17
- package/extensions/ublocklite/_locales/nl/messages.json +36 -0
- package/extensions/ublocklite/_locales/oc/messages.json +36 -0
- package/extensions/ublocklite/_locales/pa/messages.json +36 -0
- package/extensions/ublocklite/_locales/pl/messages.json +36 -0
- package/extensions/ublocklite/_locales/pt_BR/messages.json +36 -0
- package/extensions/ublocklite/_locales/pt_PT/messages.json +36 -0
- package/extensions/ublocklite/_locales/ro/messages.json +36 -0
- package/extensions/ublocklite/_locales/ru/messages.json +36 -0
- package/extensions/ublocklite/_locales/si/messages.json +36 -0
- package/extensions/ublocklite/_locales/sk/messages.json +36 -0
- package/extensions/ublocklite/_locales/sl/messages.json +36 -0
- package/extensions/ublocklite/_locales/so/messages.json +36 -0
- package/extensions/ublocklite/_locales/sq/messages.json +36 -0
- package/extensions/ublocklite/_locales/sr/messages.json +36 -0
- package/extensions/ublocklite/_locales/sv/messages.json +36 -0
- package/extensions/ublocklite/_locales/sw/messages.json +36 -0
- package/extensions/ublocklite/_locales/ta/messages.json +36 -0
- package/extensions/ublocklite/_locales/te/messages.json +36 -0
- package/extensions/ublocklite/_locales/th/messages.json +36 -0
- package/extensions/ublocklite/_locales/tr/messages.json +36 -0
- package/extensions/ublocklite/_locales/uk/messages.json +36 -0
- package/extensions/ublocklite/_locales/ur/messages.json +36 -0
- package/extensions/ublocklite/_locales/vi/messages.json +36 -0
- package/extensions/ublocklite/_locales/zh_CN/messages.json +36 -0
- package/extensions/ublocklite/_locales/zh_TW/messages.json +36 -0
- package/extensions/ublocklite/css/dashboard-common.css +0 -1
- package/extensions/ublocklite/css/dashboard.css +8 -0
- package/extensions/ublocklite/css/settings.css +107 -1
- package/extensions/ublocklite/css/unpicker-ui.css +1 -0
- package/extensions/ublocklite/dashboard.html +48 -11
- package/extensions/ublocklite/js/background.js +57 -39
- package/extensions/ublocklite/js/backup-restore.js +153 -0
- package/extensions/ublocklite/js/config.js +2 -0
- package/extensions/ublocklite/js/dashboard.js +23 -5
- package/extensions/ublocklite/js/develop.js +2 -11
- package/extensions/ublocklite/js/dom.js +10 -0
- package/extensions/ublocklite/js/filter-lists.js +5 -5
- package/extensions/ublocklite/js/filter-manager-ui.js +486 -0
- package/extensions/ublocklite/js/filter-manager.js +85 -53
- package/extensions/ublocklite/js/jsonpath.js +25 -10
- package/extensions/ublocklite/js/mode-manager.js +8 -1
- package/extensions/ublocklite/js/picker-ui.js +2 -2
- package/extensions/ublocklite/js/popup.js +20 -20
- package/extensions/ublocklite/js/report.js +2 -4
- package/extensions/ublocklite/js/ro-dnr-editor.js +9 -5
- package/extensions/ublocklite/js/ruleset-manager.js +13 -8
- package/extensions/ublocklite/js/scripting/unpicker.js +3 -3
- package/extensions/ublocklite/js/settings.js +51 -0
- package/extensions/ublocklite/js/static-filtering-parser.js +4 -4
- package/extensions/ublocklite/js/troubleshooting.js +30 -18
- package/extensions/ublocklite/js/unpicker-ui.js +5 -5
- package/extensions/ublocklite/js/utils.js +14 -0
- package/extensions/ublocklite/manifest.json +3 -3
- package/extensions/ublocklite/rulesets/generic-details.json +2 -3
- package/extensions/ublocklite/rulesets/main/adguard-mobile.json +3 -2
- package/extensions/ublocklite/rulesets/main/adguard-spyware-url.json +6 -5
- package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +16 -6
- package/extensions/ublocklite/rulesets/main/annoyances-notifications.json +3 -1
- package/extensions/ublocklite/rulesets/main/annoyances-others.json +4 -3
- package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +4 -3
- package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +5 -2
- package/extensions/ublocklite/rulesets/main/block-lan.json +3 -1
- package/extensions/ublocklite/rulesets/main/chn-0.json +28 -17
- package/extensions/ublocklite/rulesets/main/deu-0.json +2 -9
- package/extensions/ublocklite/rulesets/main/easylist.json +31 -73
- package/extensions/ublocklite/rulesets/main/easyprivacy.json +99 -27
- package/extensions/ublocklite/rulesets/main/fin-0.json +5 -2
- package/extensions/ublocklite/rulesets/main/fra-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/hun-0.json +3 -2
- package/extensions/ublocklite/rulesets/main/idn-0.json +22 -8
- package/extensions/ublocklite/rulesets/main/ind-0.json +62 -43
- package/extensions/ublocklite/rulesets/main/irn-0.json +5 -4
- package/extensions/ublocklite/rulesets/main/isr-0.json +2 -3
- package/extensions/ublocklite/rulesets/main/ita-0.json +11 -2
- package/extensions/ublocklite/rulesets/main/jpn-1.json +54 -38
- package/extensions/ublocklite/rulesets/main/kor-1.json +6 -3
- package/extensions/ublocklite/rulesets/main/nld-0.json +4 -1
- package/extensions/ublocklite/rulesets/main/nor-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/pgl.json +30 -6
- package/extensions/ublocklite/rulesets/main/pol-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/rou-1.json +4 -2
- package/extensions/ublocklite/rulesets/main/rus-0.json +18 -11
- package/extensions/ublocklite/rulesets/main/rus-1.json +5 -4
- package/extensions/ublocklite/rulesets/main/spa-1.json +12 -6
- package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +10500 -90447
- package/extensions/ublocklite/rulesets/main/swe-1.json +39 -30
- package/extensions/ublocklite/rulesets/main/tur-0.json +12 -9
- package/extensions/ublocklite/rulesets/main/ublock-badware.json +39 -13
- package/extensions/ublocklite/rulesets/main/ublock-filters.json +77 -50
- package/extensions/ublocklite/rulesets/main/ubol-tests.json +28 -0
- package/extensions/ublocklite/rulesets/main/ukr-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/urlhaus-full.json +2103 -582
- package/extensions/ublocklite/rulesets/main/vie-1.json +54 -52
- package/extensions/ublocklite/rulesets/regex/chn-0.json +2 -2
- package/extensions/ublocklite/rulesets/regex/easylist.json +1 -6
- package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -2
- package/extensions/ublocklite/rulesets/regex/swe-1.json +0 -1
- package/extensions/ublocklite/rulesets/regex/ublock-badware.json +8 -3
- package/extensions/ublocklite/rulesets/regex/ublock-filters.json +24 -16
- package/extensions/ublocklite/rulesets/ruleset-details.json +220 -220
- 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-others.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-social.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generic/ita-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/jpn-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/rus-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/generichigh/easylist.css +2 -1
- package/extensions/ublocklite/rulesets/scripting/generichigh/idn-0.css +3 -0
- package/extensions/ublocklite/rulesets/scripting/generichigh/jpn-1.css +1 -0
- package/extensions/ublocklite/rulesets/scripting/generichigh/ublock-filters.css +9 -1
- 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-others.js +2 -2
- 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/fin-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/grc-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/ind-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/ltu-0.js +1 -1
- 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 +1 -1
- 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 +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.addEventListener-defuser.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.adjust-setTimeout.js +332 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.json-prune-fetch-response.js +588 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.json-prune-xhr-response.js +597 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.remove-cookie.js +376 -0
- 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.xml-prune.js +443 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.prevent-requestAnimationFrame.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie-reload.js +2 -2
- 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 +88 -77
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie-reload.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-notifications.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-local-storage-item.js +2 -2
- 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.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setTimeout.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-class.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-click-element.js +88 -77
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-argument.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-outbound-text.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-set-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-suppress-native-method.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.evaldata-prune.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-fetch.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/est-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.remove-node-text.js +449 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.spoof-css.js +422 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-requestAnimationFrame.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-window-open.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.href-sanitizer.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.abort-current-script.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.addEventListener-defuser.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.href-sanitizer.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.json-prune-xhr-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-fetch.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-window-open.js +475 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-xhr.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.remove-cookie.js +376 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ltu-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ltu-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/pol-0.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rou-1.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-write.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-stack-trace.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +8 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.close-window.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setTimeout.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-window-open.js +5 -1
- 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-1.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.json-prune-xhr-response.js +597 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-current-script.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.addEventListener-defuser.js +5 -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 +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-requestAnimationFrame.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-window-open.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.href-sanitizer.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.prevent-setTimeout.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-setTimeout.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-attr.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-local-storage-item.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-badware.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-badware.noeval-if.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-badware.trusted-replace-argument.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-xhr-request.js +848 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-replace-node-text.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +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 +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setInterval.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setTimeout.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 +29 -11
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-xhr-response.js +24 -10
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit.js +31 -13
- 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 +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +26 -12
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-requestAnimationFrame.js +8 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +8 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +8 -4
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +1 -1
- 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 +3 -3
- 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.set-session-storage-item.js +1 -1
- 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 +86 -75
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-create-html.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-request.js +941 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-response.js +31 -13
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit.js +869 -0
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-override-element-method.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-dom-bypass.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-fetch.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-argument.js +7 -3
- 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 +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +29 -11
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +24 -10
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.trusted-prevent-dom-bypass.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.prevent-window-open.js +5 -1
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.prevent-setTimeout.js +5 -1
- 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/grc-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/ltu-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/nld-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/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ublock-badware.js +1 -1
- 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 +302 -143
- package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +6 -0
- package/extensions/ublocklite/rulesets/strictblock/annoyances-others.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/chn-0.json +289 -2
- package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +79 -3
- package/extensions/ublocklite/rulesets/strictblock/idn-0.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/irn-0.json +4 -1
- package/extensions/ublocklite/rulesets/strictblock/isr-0.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/ita-0.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +205 -186
- package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/pgl.json +30 -6
- package/extensions/ublocklite/rulesets/strictblock/pol-0.json +4 -0
- package/extensions/ublocklite/rulesets/strictblock/rou-1.json +1 -0
- package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +10500 -90447
- package/extensions/ublocklite/rulesets/strictblock/swe-1.json +0 -3
- package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +657 -650
- package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +23 -19
- package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +3 -0
- package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +2103 -582
- package/extensions/ublocklite/rulesets/strictblock/vie-1.json +0 -3
- package/extensions/ublocklite/rulesets/urlskip/ublock-filters.json +31 -1
- package/extensions/ublocklite/ublock.zip +0 -0
- package/extensions/ublocklite/web_accessible_resources/google-ima.js +14 -7
- package/package.json +15 -14
- package/scripts/install-debugger.js +2 -2
- package/src/browsers/index.ts +25 -4
- package/src/http.ts +3 -2
- package/src/routes/chrome/tests/content.spec.ts +24 -0
- package/src/routes/chrome/tests/json.spec.ts +134 -0
- package/src/routes/chrome/tests/kill-sessions.spec.ts +0 -10
- package/src/routes/chrome/ws/function-connect.ts +12 -0
- package/src/routes/chromium/tests/content.spec.ts +24 -0
- package/src/routes/chromium/tests/function.spec.ts +33 -0
- package/src/routes/chromium/tests/json.spec.ts +134 -0
- package/src/routes/chromium/tests/scrape.spec.ts +3 -1
- package/src/routes/chromium/ws/function-connect.ts +1 -0
- package/src/routes/edge/tests/content.spec.ts +24 -0
- package/src/routes/edge/tests/json.spec.ts +134 -0
- package/src/routes/edge/ws/function-connect.ts +12 -0
- package/src/routes/management/tests/management.spec.ts +66 -0
- package/src/sdk-utils.ts +1 -1
- package/src/server.ts +1 -1
- package/src/shared/function-connect.ws.ts +38 -0
- package/src/shared/screenshot.http.ts +1 -1
- package/src/shared/utils/function/handler.ts +11 -6
- package/src/shim.spec.ts +18 -0
- package/src/shim.ts +15 -1
- package/src/types.ts +6 -0
- package/static/docs/swagger.json +107 -2
- package/static/docs/swagger.min.json +106 -1
- package/static/function/client.js +99 -111
- package/static/function/index.html +99 -111
- package/build/routes/chrome/tests/json-version.spec.js +0 -37
- package/build/routes/chromium/tests/json-version.spec.js +0 -37
- package/build/routes/edge/tests/json-version.spec.js +0 -37
- package/src/routes/chrome/tests/json-version.spec.ts +0 -52
- package/src/routes/chromium/tests/json-version.spec.ts +0 -52
- package/src/routes/edge/tests/json-version.spec.ts +0 -52
- /package/build/routes/chrome/tests/{json-version.spec.d.ts → json.spec.d.ts} +0 -0
- /package/build/routes/chromium/tests/{json-version.spec.d.ts → json.spec.d.ts} +0 -0
- /package/build/routes/edge/tests/{json-version.spec.d.ts → json.spec.d.ts} +0 -0
|
@@ -95,6 +95,50 @@ describe('Management APIs', function () {
|
|
|
95
95
|
expect(r.status).to.equal(404);
|
|
96
96
|
});
|
|
97
97
|
});
|
|
98
|
+
describe('Static Files Serving', () => {
|
|
99
|
+
it('serves docs pages', async () => {
|
|
100
|
+
await start();
|
|
101
|
+
await fetch('http://localhost:3000/docs/index.html?token=6R0W53R135510').then(async (res) => {
|
|
102
|
+
expect(res.status).to.equal(200);
|
|
103
|
+
expect(res.headers.get('content-type')).to.equal('text/html');
|
|
104
|
+
const content = await res.text();
|
|
105
|
+
expect(content).to.include('<title>Browserless Docs</title>');
|
|
106
|
+
});
|
|
107
|
+
await fetch('http://localhost:3000/docs/docs.js?token=6R0W53R135510').then(async (res) => {
|
|
108
|
+
expect(res.status).to.equal(200);
|
|
109
|
+
expect(res.headers.get('content-type')).to.equal('application/javascript');
|
|
110
|
+
const content = await res.text();
|
|
111
|
+
expect(content).to.be.an('string');
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
it('serves swagger.json', async () => {
|
|
115
|
+
await start();
|
|
116
|
+
await fetch('http://localhost:3000/docs/swagger.json?token=6R0W53R135510').then(async (res) => {
|
|
117
|
+
expect(res.status).to.equal(200);
|
|
118
|
+
expect(res.headers.get('content-type')).to.equal('application/json');
|
|
119
|
+
const content = await res.json();
|
|
120
|
+
expect(content).to.be.an('object');
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
it('returns 404 if debugger is disabled', async () => {
|
|
124
|
+
process.env.ENABLE_DEBUGGER = 'false';
|
|
125
|
+
const config = new Config();
|
|
126
|
+
config.setToken('6R0W53R135510');
|
|
127
|
+
// Ensure debugger is not available
|
|
128
|
+
await start({ config });
|
|
129
|
+
await fetch('http://localhost:3000/debugger/some-file.html?token=6R0W53R135510').then(async (res) => {
|
|
130
|
+
expect(res.status).to.equal(404);
|
|
131
|
+
expect(res.headers.get('content-type')).to.equal('text/plain; charset=UTF-8');
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
it('handles requests without authentication token for static files', async () => {
|
|
135
|
+
await start();
|
|
136
|
+
await fetch('http://localhost:3000/docs/index.html').then(async (res) => {
|
|
137
|
+
expect(res.status).to.equal(200);
|
|
138
|
+
expect(res.headers.get('content-type')).to.equal('text/html');
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
});
|
|
98
142
|
it('allows requests to /config', async () => {
|
|
99
143
|
await start();
|
|
100
144
|
await fetch('http://localhost:3000/config?token=6R0W53R135510').then(async (res) => {
|
package/build/sdk-utils.js
CHANGED
|
@@ -81,7 +81,7 @@ export const prompt = async (question) => {
|
|
|
81
81
|
};
|
|
82
82
|
// Exceptions are not caught, since any error would result in a crash regardless
|
|
83
83
|
export const installDependencies = async (workingDirectory) => {
|
|
84
|
-
await waitForCommand('npm
|
|
84
|
+
await waitForCommand('npm install', workingDirectory);
|
|
85
85
|
await installBrowsers(workingDirectory);
|
|
86
86
|
};
|
|
87
87
|
export const installBrowsers = async (workingDirectory) => {
|
package/build/server.js
CHANGED
|
@@ -242,7 +242,7 @@ export class HTTPServer extends EventEmitter {
|
|
|
242
242
|
}
|
|
243
243
|
async shutdown() {
|
|
244
244
|
this.logger.info(`HTTP Server is shutting down`);
|
|
245
|
-
await new Promise((r) => this.server
|
|
245
|
+
await new Promise((r) => this.server?.close(r));
|
|
246
246
|
if (this.server) {
|
|
247
247
|
this.server.removeAllListeners();
|
|
248
248
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { APITags, BrowserWebsocketRoute, CDPLaunchOptions, ChromiumCDP, Logger, Request, SystemQueryParameters, WebsocketRoutes } from '@browserless.io/browserless';
|
|
2
|
+
import { Duplex } from 'stream';
|
|
3
|
+
export interface QuerySchema extends SystemQueryParameters {
|
|
4
|
+
launch?: CDPLaunchOptions | string;
|
|
5
|
+
}
|
|
6
|
+
export default class ChromiumFunctionConnectWebSocketRoute extends BrowserWebsocketRoute {
|
|
7
|
+
name: string;
|
|
8
|
+
auth: boolean;
|
|
9
|
+
concurrency: boolean;
|
|
10
|
+
browser: typeof ChromiumCDP;
|
|
11
|
+
description: string;
|
|
12
|
+
path: WebsocketRoutes;
|
|
13
|
+
tags: APITags[];
|
|
14
|
+
handler(req: Request, socket: Duplex, head: Buffer, _logger: Logger, browser: ChromiumCDP): Promise<void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { APITags, BrowserWebsocketRoute, BrowserlessRoutes, ChromiumCDP, WebsocketRoutes, dedent, } from '@browserless.io/browserless';
|
|
2
|
+
export default class ChromiumFunctionConnectWebSocketRoute extends BrowserWebsocketRoute {
|
|
3
|
+
name = BrowserlessRoutes.ChromiumFunctionConnectWebSocketRoute;
|
|
4
|
+
auth = true;
|
|
5
|
+
concurrency = false;
|
|
6
|
+
browser = ChromiumCDP;
|
|
7
|
+
description = dedent(`Internally used by the POST /function API to connect the underlying client-side code to. Not intended for direct use but documented for completeness and to distinguish between other reconnect style calls.`);
|
|
8
|
+
path = WebsocketRoutes.functionClientConnect;
|
|
9
|
+
tags = [APITags.browserWS];
|
|
10
|
+
async handler(req, socket, head, _logger, browser) {
|
|
11
|
+
return browser.proxyWebSocket(req, socket, head);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BadRequest, HTTPRoutes, ServerError, contentTypes, convertIfBase64, exists, getTokenFromRequest,
|
|
1
|
+
import { BadRequest, HTTPRoutes, ServerError, contentTypes, convertIfBase64, exists, getTokenFromRequest, makeExternalURL, mimeTypes, } from '@browserless.io/browserless';
|
|
2
2
|
import fs from 'fs';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
export default (config, logger, options = {}) => async (req, browser) => {
|
|
@@ -15,11 +15,13 @@ export default (config, logger, options = {}) => async (req, browser) => {
|
|
|
15
15
|
};
|
|
16
16
|
const context = JSON.stringify(rawContext);
|
|
17
17
|
const code = convertIfBase64(rawCode);
|
|
18
|
-
const
|
|
19
|
-
if (!
|
|
18
|
+
const privateWSEndpoint = browser.wsEndpoint();
|
|
19
|
+
if (!privateWSEndpoint) {
|
|
20
20
|
throw new ServerError(`No browser endpoint was found, is the browser running?`);
|
|
21
21
|
}
|
|
22
|
-
const
|
|
22
|
+
const browserID = privateWSEndpoint.split('/').pop();
|
|
23
|
+
const browserWSEndpoint = makeExternalURL(config.getExternalWebSocketAddress(), 'function', 'connect', browserID, '?token=' + getTokenFromRequest(req));
|
|
24
|
+
const functionCodeJS = `browserless-function-${browserID}.js`;
|
|
23
25
|
const page = (await browser.newPage());
|
|
24
26
|
await page.setRequestInterception(true);
|
|
25
27
|
/**
|
package/build/shim.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { convertIfBase64, safeParse, } from '@browserless.io/browserless';
|
|
2
|
-
const shimParam = ['headless', 'stealth', 'ignoreDefaultArgs', 'slowMo'];
|
|
2
|
+
const shimParam = ['headless', 'stealth', 'ignoreDefaultArgs', 'slowMo', 'ignoreHTTPSErrors'];
|
|
3
3
|
/**
|
|
4
4
|
* Obfuscates the ?token parameter by shifting it to a header instead of a query-parameter.
|
|
5
5
|
*/
|
|
@@ -49,6 +49,16 @@ export function shimLegacyRequests(url) {
|
|
|
49
49
|
launchParams.ignoreHTTPSErrors === undefined) {
|
|
50
50
|
launchParams.ignoreHTTPSErrors = ignoreHTTPSErrors !== 'false';
|
|
51
51
|
}
|
|
52
|
+
// When acceptInsecureCerts is set, ignoreHTTPSErrors is ignored
|
|
53
|
+
if (launchParams.acceptInsecureCerts !== undefined) {
|
|
54
|
+
launchParams.ignoreHTTPSErrors = undefined;
|
|
55
|
+
}
|
|
56
|
+
// When ignoreHTTPSErrors sent, convert it to acceptInsecureCerts
|
|
57
|
+
if (typeof ignoreHTTPSErrors !== 'undefined' &&
|
|
58
|
+
launchParams.acceptInsecureCerts === undefined) {
|
|
59
|
+
launchParams.acceptInsecureCerts = ignoreHTTPSErrors !== 'false';
|
|
60
|
+
launchParams.ignoreHTTPSErrors = undefined;
|
|
61
|
+
}
|
|
52
62
|
if (typeof ignoreDefaultArgs !== 'undefined' &&
|
|
53
63
|
launchParams.ignoreDefaultArgs === undefined) {
|
|
54
64
|
const parsed = typeof ignoreDefaultArgs === 'string' && ignoreDefaultArgs.includes(',')
|
package/build/shim.spec.js
CHANGED
|
@@ -125,6 +125,20 @@ describe('Request Shimming', () => {
|
|
|
125
125
|
expect(decodeURIComponent(shimmed.href)).to.equal(final);
|
|
126
126
|
});
|
|
127
127
|
});
|
|
128
|
+
describe('insecure certs', () => {
|
|
129
|
+
it('converts ignoreHTTPSErrors to acceptInsecureCerts', () => {
|
|
130
|
+
const url = 'wss://localhost?ignoreHTTPSErrors';
|
|
131
|
+
const final = 'wss://localhost/?launch={"acceptInsecureCerts":true}';
|
|
132
|
+
const shimmed = shimLegacyRequests(new URL(url));
|
|
133
|
+
expect(decodeURIComponent(shimmed.href)).to.equal(final);
|
|
134
|
+
});
|
|
135
|
+
it('acceptInsecureCerts takes precedence over ignoreHTTPSErrors', () => {
|
|
136
|
+
const url = 'wss://localhost?ignoreHTTPSErrors&launch={"acceptInsecureCerts":false}';
|
|
137
|
+
const final = 'wss://localhost/?launch={"acceptInsecureCerts":false}';
|
|
138
|
+
const shimmed = shimLegacyRequests(new URL(url));
|
|
139
|
+
expect(decodeURIComponent(shimmed.href)).to.equal(final);
|
|
140
|
+
});
|
|
141
|
+
});
|
|
128
142
|
describe('token shimming', () => {
|
|
129
143
|
it('converts token query parameters to an authorization header', () => {
|
|
130
144
|
const url = 'wss://localhost?token=12345';
|
package/build/types.d.ts
CHANGED
|
@@ -262,7 +262,9 @@ export interface CDPLaunchOptions extends BrowserlessLaunch {
|
|
|
262
262
|
dumpio?: boolean;
|
|
263
263
|
headless?: boolean | 'shell';
|
|
264
264
|
ignoreDefaultArgs?: boolean | string[];
|
|
265
|
+
/** @deprecated use acceptInsecureCerts field instead */
|
|
265
266
|
ignoreHTTPSErrors?: boolean;
|
|
267
|
+
acceptInsecureCerts?: boolean;
|
|
266
268
|
slowMo?: number;
|
|
267
269
|
stealth?: boolean;
|
|
268
270
|
timeout?: number;
|
|
@@ -503,6 +505,7 @@ export declare const BrowserlessChromeRoutes: {
|
|
|
503
505
|
ChromeCDPWebSocketRoute: string;
|
|
504
506
|
ChromeContentPostRoute: string;
|
|
505
507
|
ChromeDownloadPostRoute: string;
|
|
508
|
+
ChromeFunctionConnectWebSocketRoute: string;
|
|
506
509
|
ChromeFunctionPostRoute: string;
|
|
507
510
|
ChromeJSONListGetRoute: string;
|
|
508
511
|
ChromeJSONNewPutRoute: string;
|
|
@@ -520,6 +523,7 @@ export declare const BrowserlessEdgeRoutes: {
|
|
|
520
523
|
EdgeCDPWebSocketRoute: string;
|
|
521
524
|
EdgeContentPostRoute: string;
|
|
522
525
|
EdgeDownloadPostRoute: string;
|
|
526
|
+
EdgeFunctionConnectWebSocketRoute: string;
|
|
523
527
|
EdgeFunctionPostRoute: string;
|
|
524
528
|
EdgeJSONListGetRoute: string;
|
|
525
529
|
EdgeJSONNewPutRoute: string;
|
|
@@ -537,6 +541,7 @@ export declare const BrowserlessChromiumRoutes: {
|
|
|
537
541
|
ChromiumCDPWebSocketRoute: string;
|
|
538
542
|
ChromiumContentPostRoute: string;
|
|
539
543
|
ChromiumDownloadPostRoute: string;
|
|
544
|
+
ChromiumFunctionConnectWebSocketRoute: string;
|
|
540
545
|
ChromiumFunctionPostRoute: string;
|
|
541
546
|
ChromiumJSONListGetRoute: string;
|
|
542
547
|
ChromiumJSONNewPutRoute: string;
|
|
@@ -582,6 +587,7 @@ export declare const BrowserlessRoutes: {
|
|
|
582
587
|
EdgeCDPWebSocketRoute: string;
|
|
583
588
|
EdgeContentPostRoute: string;
|
|
584
589
|
EdgeDownloadPostRoute: string;
|
|
590
|
+
EdgeFunctionConnectWebSocketRoute: string;
|
|
585
591
|
EdgeFunctionPostRoute: string;
|
|
586
592
|
EdgeJSONListGetRoute: string;
|
|
587
593
|
EdgeJSONNewPutRoute: string;
|
|
@@ -597,6 +603,7 @@ export declare const BrowserlessRoutes: {
|
|
|
597
603
|
ChromiumCDPWebSocketRoute: string;
|
|
598
604
|
ChromiumContentPostRoute: string;
|
|
599
605
|
ChromiumDownloadPostRoute: string;
|
|
606
|
+
ChromiumFunctionConnectWebSocketRoute: string;
|
|
600
607
|
ChromiumFunctionPostRoute: string;
|
|
601
608
|
ChromiumJSONListGetRoute: string;
|
|
602
609
|
ChromiumJSONNewPutRoute: string;
|
|
@@ -612,6 +619,7 @@ export declare const BrowserlessRoutes: {
|
|
|
612
619
|
ChromeCDPWebSocketRoute: string;
|
|
613
620
|
ChromeContentPostRoute: string;
|
|
614
621
|
ChromeDownloadPostRoute: string;
|
|
622
|
+
ChromeFunctionConnectWebSocketRoute: string;
|
|
615
623
|
ChromeFunctionPostRoute: string;
|
|
616
624
|
ChromeJSONListGetRoute: string;
|
|
617
625
|
ChromeJSONNewPutRoute: string;
|
package/build/types.js
CHANGED
|
@@ -166,6 +166,7 @@ export const BrowserlessChromeRoutes = {
|
|
|
166
166
|
ChromeCDPWebSocketRoute: 'ChromeCDPWebSocketRoute',
|
|
167
167
|
ChromeContentPostRoute: 'ChromeContentPostRoute',
|
|
168
168
|
ChromeDownloadPostRoute: 'ChromeDownloadPostRoute',
|
|
169
|
+
ChromeFunctionConnectWebSocketRoute: 'ChromeFunctionConnectWebSocketRoute',
|
|
169
170
|
ChromeFunctionPostRoute: 'ChromeFunctionPostRoute',
|
|
170
171
|
ChromeJSONListGetRoute: 'ChromeJSONListGetRoute',
|
|
171
172
|
ChromeJSONNewPutRoute: 'ChromeJSONNewPutRoute',
|
|
@@ -183,6 +184,7 @@ export const BrowserlessEdgeRoutes = {
|
|
|
183
184
|
EdgeCDPWebSocketRoute: 'EdgeCDPWebSocketRoute',
|
|
184
185
|
EdgeContentPostRoute: 'EdgeContentPostRoute',
|
|
185
186
|
EdgeDownloadPostRoute: 'EdgeDownloadPostRoute',
|
|
187
|
+
EdgeFunctionConnectWebSocketRoute: 'EdgeFunctionConnectWebSocketRoute',
|
|
186
188
|
EdgeFunctionPostRoute: 'EdgeFunctionPostRoute',
|
|
187
189
|
EdgeJSONListGetRoute: 'EdgeJSONListGetRoute',
|
|
188
190
|
EdgeJSONNewPutRoute: 'EdgeJSONNewPutRoute',
|
|
@@ -200,6 +202,7 @@ export const BrowserlessChromiumRoutes = {
|
|
|
200
202
|
ChromiumCDPWebSocketRoute: 'ChromiumCDPWebSocketRoute',
|
|
201
203
|
ChromiumContentPostRoute: 'ChromiumContentPostRoute',
|
|
202
204
|
ChromiumDownloadPostRoute: 'ChromiumDownloadPostRoute',
|
|
205
|
+
ChromiumFunctionConnectWebSocketRoute: 'ChromiumFunctionConnectWebSocketRoute',
|
|
203
206
|
ChromiumFunctionPostRoute: 'ChromiumFunctionPostRoute',
|
|
204
207
|
ChromiumJSONListGetRoute: 'ChromiumJSONListGetRoute',
|
|
205
208
|
ChromiumJSONNewPutRoute: 'ChromiumJSONNewPutRoute',
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
"description": "extension name."
|
|
5
5
|
},
|
|
6
6
|
"extShortDesc": {
|
|
7
|
-
"message": "أداة
|
|
7
|
+
"message": "أداة فعالة لحجب المحتوى. تحجب الإعلانات والمتتبعين والمعدنين وغير ذلك فور تثبيتها.",
|
|
8
8
|
"description": "this will be in the Chrome web store: must be 132 characters or less"
|
|
9
9
|
},
|
|
10
10
|
"perRulesetStats": {
|
|
11
|
-
"message": "{{ruleCount}} قواعد، محولة من {{filterCount}}
|
|
11
|
+
"message": "{{ruleCount}} قواعد، محولة من {{filterCount}} فلاتر الشبكة",
|
|
12
12
|
"description": "Appears aside each filter list in the _3rd-party filters_ pane"
|
|
13
13
|
},
|
|
14
14
|
"dashboardName": {
|
|
@@ -19,6 +19,10 @@
|
|
|
19
19
|
"message": "الإعدادات",
|
|
20
20
|
"description": "appears as tab name in dashboard"
|
|
21
21
|
},
|
|
22
|
+
"customFiltersPageName": {
|
|
23
|
+
"message": "فلاتر مخصصة",
|
|
24
|
+
"description": "appears as tab name in dashboard"
|
|
25
|
+
},
|
|
22
26
|
"developPageName": {
|
|
23
27
|
"message": "تطوير",
|
|
24
28
|
"description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
|
|
@@ -68,7 +72,7 @@
|
|
|
68
72
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
69
73
|
},
|
|
70
74
|
"3pGroupMalware": {
|
|
71
|
-
"message": "
|
|
75
|
+
"message": "الحماية من البرامج الضارة، الأمان",
|
|
72
76
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
73
77
|
},
|
|
74
78
|
"3pGroupAnnoyances": {
|
|
@@ -83,12 +87,20 @@
|
|
|
83
87
|
"message": "المناطق واللغات",
|
|
84
88
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
85
89
|
},
|
|
90
|
+
"customFiltersImportExportLabel": {
|
|
91
|
+
"message": "استيراد / تصدير",
|
|
92
|
+
"description": "Text label heading the import/export area of custom filters"
|
|
93
|
+
},
|
|
94
|
+
"customFiltersImportTextareaPlaceholder": {
|
|
95
|
+
"message": "الصق هنا فلاتر تجميلية محددة لإضافتها",
|
|
96
|
+
"description": "Placeholder text which describes the purpose of the textarea widget"
|
|
97
|
+
},
|
|
86
98
|
"aboutChangelog": {
|
|
87
99
|
"message": "سجل التغييرات",
|
|
88
100
|
"description": ""
|
|
89
101
|
},
|
|
90
102
|
"aboutCode": {
|
|
91
|
-
"message": "
|
|
103
|
+
"message": "كود المصدر (GPLv3)",
|
|
92
104
|
"description": "English: Source code (GPLv3)"
|
|
93
105
|
},
|
|
94
106
|
"aboutContributors": {
|
|
@@ -96,7 +108,7 @@
|
|
|
96
108
|
"description": "English: Contributors"
|
|
97
109
|
},
|
|
98
110
|
"aboutSourceCode": {
|
|
99
|
-
"message": "
|
|
111
|
+
"message": "كود المصدر",
|
|
100
112
|
"description": "Link text to source code repo"
|
|
101
113
|
},
|
|
102
114
|
"aboutTranslations": {
|
|
@@ -104,7 +116,7 @@
|
|
|
104
116
|
"description": "Link text to translations repo"
|
|
105
117
|
},
|
|
106
118
|
"aboutFilterLists": {
|
|
107
|
-
"message": "قوائم
|
|
119
|
+
"message": "قوائم الفلاتر",
|
|
108
120
|
"description": "Link text to uBO's own filter lists repo"
|
|
109
121
|
},
|
|
110
122
|
"aboutDependencies": {
|
|
@@ -112,11 +124,11 @@
|
|
|
112
124
|
"description": "Shown in the About pane"
|
|
113
125
|
},
|
|
114
126
|
"supportS6H": {
|
|
115
|
-
"message": "الإبلاغ عن مشكلة في
|
|
127
|
+
"message": "الإبلاغ عن مشكلة في الفلاتر",
|
|
116
128
|
"description": "Header of 'Report a filter issue' section in Support pane"
|
|
117
129
|
},
|
|
118
130
|
"supportS3P1": {
|
|
119
|
-
"message": "الإبلاغ عن مشكلات
|
|
131
|
+
"message": "الإبلاغ عن مشكلات التصفية الخاصة بمواقع الويب المحددة إلى<span data-url=\"https://github.com/uBlockOrigin/uAssets/issues?q=is%3Aissue\">uBlockOrigin/uAssets</code></span>متتبع المشكلة</span>يتطلب حساب GitHub</u>",
|
|
120
132
|
"description": "First paragraph of 'Filter issues' section in Support pane"
|
|
121
133
|
},
|
|
122
134
|
"supportS5H": {
|
|
@@ -132,11 +144,11 @@
|
|
|
132
144
|
"description": "A clickable link in the filter issue reporter section"
|
|
133
145
|
},
|
|
134
146
|
"supportS6URL": {
|
|
135
|
-
"message": "عنوان صفحة
|
|
147
|
+
"message": "عنوان صفحة الويب:",
|
|
136
148
|
"description": "Label for the URL of the page"
|
|
137
149
|
},
|
|
138
150
|
"supportS6Select1": {
|
|
139
|
-
"message": "صفحة
|
|
151
|
+
"message": "صفحة الويب…",
|
|
140
152
|
"description": "Label for widget to select type of issue"
|
|
141
153
|
},
|
|
142
154
|
"supportS6Select1Option0": {
|
|
@@ -148,7 +160,7 @@
|
|
|
148
160
|
"description": "An entry in the widget used to select the type of issue"
|
|
149
161
|
},
|
|
150
162
|
"supportS6Select1Option2": {
|
|
151
|
-
"message": "يحتوي على تراكبات أو إزعاجات
|
|
163
|
+
"message": "يحتوي على تراكبات أو إزعاجات أخرى",
|
|
152
164
|
"description": "An entry in the widget used to select the type of issue"
|
|
153
165
|
},
|
|
154
166
|
"supportS6Select1Option3": {
|
|
@@ -160,15 +172,15 @@
|
|
|
160
172
|
"description": "An entry in the widget used to select the type of issue"
|
|
161
173
|
},
|
|
162
174
|
"supportS6Select1Option5": {
|
|
163
|
-
"message": "تعطل عند تفعيل uBO Lite
|
|
175
|
+
"message": "تعطل عند تفعيل uBO Lite",
|
|
164
176
|
"description": "An entry in the widget used to select the type of issue"
|
|
165
177
|
},
|
|
166
178
|
"supportS6Select1Option6": {
|
|
167
|
-
"message": "يفتح علامات تبويب أو نوافذ غير مرغوب
|
|
179
|
+
"message": "يفتح علامات تبويب أو نوافذ غير مرغوب فيها",
|
|
168
180
|
"description": "An entry in the widget used to select the type of issue"
|
|
169
181
|
},
|
|
170
182
|
"supportS6Select1Option7": {
|
|
171
|
-
"message": "يؤدي إلى
|
|
183
|
+
"message": "يؤدي إلى برامج ضارة وتصيد احتيالي",
|
|
172
184
|
"description": "An entry in the widget used to select the type of issue"
|
|
173
185
|
},
|
|
174
186
|
"supportS6Checkbox1": {
|
|
@@ -176,7 +188,7 @@
|
|
|
176
188
|
"description": "A checkbox to use for NSFW sites"
|
|
177
189
|
},
|
|
178
190
|
"supportReportSpecificButton": {
|
|
179
|
-
"message": "إنشاء تقرير جديد",
|
|
191
|
+
"message": "إنشاء تقرير جديد علي GitHub",
|
|
180
192
|
"description": "Text for button which open an external webpage in Support pane"
|
|
181
193
|
},
|
|
182
194
|
"defaultFilteringModeSectionLabel": {
|
|
@@ -184,7 +196,7 @@
|
|
|
184
196
|
"description": "The header text for the default filtering mode section"
|
|
185
197
|
},
|
|
186
198
|
"defaultFilteringModeDescription": {
|
|
187
|
-
"message": "سيتم تجاوز وضع التصفية الافتراضي بواسطة أوضاع التصفية
|
|
199
|
+
"message": "سيتم تجاوز وضع التصفية الافتراضي بواسطة أوضاع التصفية الخاصة بكل موقع ويب. يمكنك ضبط وضع التصفية على أي موقع ويب وفقًا للوضع الذي يعمل بشكل أفضل على ذلك الموقع. لكل وضع مزاياه وعيوبه.",
|
|
188
200
|
"description": "This describes the default filtering mode setting"
|
|
189
201
|
},
|
|
190
202
|
"filteringMode0Name": {
|
|
@@ -216,11 +228,11 @@
|
|
|
216
228
|
"description": "This describes the 'complete' filtering mode"
|
|
217
229
|
},
|
|
218
230
|
"noFilteringModeDescription": {
|
|
219
|
-
"message": "قائمة
|
|
231
|
+
"message": "قائمة المواقع الإلكترونية التي لن يتم تصفية محتواها.",
|
|
220
232
|
"description": "A short description for the editable field which lists trusted sites"
|
|
221
233
|
},
|
|
222
234
|
"noFilteringModePlaceholder": {
|
|
223
|
-
"message": "[أسماء النطاقات الرئيسية فقط]\nexample.com\ngames.example",
|
|
235
|
+
"message": "[أسماء النطاقات الرئيسية فقط]\nexample.com\ngames.example\n...",
|
|
224
236
|
"description": "Default text for in edit field"
|
|
225
237
|
},
|
|
226
238
|
"behaviorSectionLabel": {
|
|
@@ -240,7 +252,7 @@
|
|
|
240
252
|
"description": "Label for a checkbox in the options page"
|
|
241
253
|
},
|
|
242
254
|
"enableStrictBlockLegend": {
|
|
243
|
-
"message": "سيتم حظر
|
|
255
|
+
"message": "سيتم حظر الانتقال إلى المواقع غير المرغوب فيها، وسيُعرض عليك خيار المتابعة.",
|
|
244
256
|
"description": "Short description for a checkbox in the options page"
|
|
245
257
|
},
|
|
246
258
|
"developerModeLabel": {
|
|
@@ -248,9 +260,21 @@
|
|
|
248
260
|
"description": "Label for a checkbox in the options page"
|
|
249
261
|
},
|
|
250
262
|
"developerModeLegend": {
|
|
251
|
-
"message": "
|
|
263
|
+
"message": "يتيح الوصول إلى الميزات المناسبة للمستخدمين التقنيين.",
|
|
252
264
|
"description": "Short description for a checkbox in the options page"
|
|
253
265
|
},
|
|
266
|
+
"settingsBackupRestoreLabel": {
|
|
267
|
+
"message": "Backup",
|
|
268
|
+
"description": "The header text for the back up/restore section"
|
|
269
|
+
},
|
|
270
|
+
"settingsBackupRestoreSummary": {
|
|
271
|
+
"message": "Back up your custom settings to a file, or restore your custom settings from a file.",
|
|
272
|
+
"description": "A summary description of the back up/restore section."
|
|
273
|
+
},
|
|
274
|
+
"settingsBackupRestoreLegend": {
|
|
275
|
+
"message": "Restoring will overwrite all your current custom settings.",
|
|
276
|
+
"description": "Important information about the back up/restore section."
|
|
277
|
+
},
|
|
254
278
|
"findListsPlaceholder": {
|
|
255
279
|
"message": "البحث عن القوائم",
|
|
256
280
|
"description": "Placeholder for the input field used to find lists"
|
|
@@ -292,11 +316,11 @@
|
|
|
292
316
|
"description": "A button to navigate to the blocked page"
|
|
293
317
|
},
|
|
294
318
|
"zapperTipEnter": {
|
|
295
|
-
"message": "
|
|
319
|
+
"message": "إزالة عنصر",
|
|
296
320
|
"description": "Tooltip for the button used to enter zapper mode"
|
|
297
321
|
},
|
|
298
322
|
"zapperTipQuit": {
|
|
299
|
-
"message": "
|
|
323
|
+
"message": "خروج من وضع مزيل العناصر",
|
|
300
324
|
"description": "Tooltip for the button used to exit zapper mode"
|
|
301
325
|
},
|
|
302
326
|
"pickerTipEnter": {
|
|
@@ -339,14 +363,26 @@
|
|
|
339
363
|
"message": "إرجاع",
|
|
340
364
|
"description": "Text for buttons used to revert changes"
|
|
341
365
|
},
|
|
366
|
+
"addButton": {
|
|
367
|
+
"message": "أضِف",
|
|
368
|
+
"description": "Text for buttons used to add content"
|
|
369
|
+
},
|
|
342
370
|
"importAndAppendButton": {
|
|
343
|
-
"message": "استيراد
|
|
371
|
+
"message": "استيراد وإلحاق…",
|
|
344
372
|
"description": "Text for buttons used to import and append content"
|
|
345
373
|
},
|
|
346
374
|
"exportButton": {
|
|
347
|
-
"message": "
|
|
375
|
+
"message": "تصدير…",
|
|
348
376
|
"description": "Text for buttons used to export content"
|
|
349
377
|
},
|
|
378
|
+
"backupButton": {
|
|
379
|
+
"message": "Back up…",
|
|
380
|
+
"description": "Text for buttons used to back up content"
|
|
381
|
+
},
|
|
382
|
+
"restoreButton": {
|
|
383
|
+
"message": "Restore…",
|
|
384
|
+
"description": "Text for buttons used to restore content"
|
|
385
|
+
},
|
|
350
386
|
"dnrRulesWarning": {
|
|
351
387
|
"message": "لا تضف محتوى من مصادر غير موثوقة",
|
|
352
388
|
"description": "Short description of the DNR rules editor pane"
|
|
@@ -19,6 +19,10 @@
|
|
|
19
19
|
"message": "Tənzimləmələr",
|
|
20
20
|
"description": "appears as tab name in dashboard"
|
|
21
21
|
},
|
|
22
|
+
"customFiltersPageName": {
|
|
23
|
+
"message": "Custom filters",
|
|
24
|
+
"description": "appears as tab name in dashboard"
|
|
25
|
+
},
|
|
22
26
|
"developPageName": {
|
|
23
27
|
"message": "Develop",
|
|
24
28
|
"description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
|
|
@@ -83,6 +87,14 @@
|
|
|
83
87
|
"message": "Bölgələr, dillər",
|
|
84
88
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
85
89
|
},
|
|
90
|
+
"customFiltersImportExportLabel": {
|
|
91
|
+
"message": "Import / Export",
|
|
92
|
+
"description": "Text label heading the import/export area of custom filters"
|
|
93
|
+
},
|
|
94
|
+
"customFiltersImportTextareaPlaceholder": {
|
|
95
|
+
"message": "Paste here specific cosmetic filters to add",
|
|
96
|
+
"description": "Placeholder text which describes the purpose of the textarea widget"
|
|
97
|
+
},
|
|
86
98
|
"aboutChangelog": {
|
|
87
99
|
"message": "Dəyişikliklər siyahısı",
|
|
88
100
|
"description": ""
|
|
@@ -251,6 +263,18 @@
|
|
|
251
263
|
"message": "Enables access to features suitable for technical users.",
|
|
252
264
|
"description": "Short description for a checkbox in the options page"
|
|
253
265
|
},
|
|
266
|
+
"settingsBackupRestoreLabel": {
|
|
267
|
+
"message": "Backup",
|
|
268
|
+
"description": "The header text for the back up/restore section"
|
|
269
|
+
},
|
|
270
|
+
"settingsBackupRestoreSummary": {
|
|
271
|
+
"message": "Back up your custom settings to a file, or restore your custom settings from a file.",
|
|
272
|
+
"description": "A summary description of the back up/restore section."
|
|
273
|
+
},
|
|
274
|
+
"settingsBackupRestoreLegend": {
|
|
275
|
+
"message": "Restoring will overwrite all your current custom settings.",
|
|
276
|
+
"description": "Important information about the back up/restore section."
|
|
277
|
+
},
|
|
254
278
|
"findListsPlaceholder": {
|
|
255
279
|
"message": "Find lists",
|
|
256
280
|
"description": "Placeholder for the input field used to find lists"
|
|
@@ -339,6 +363,10 @@
|
|
|
339
363
|
"message": "Revert",
|
|
340
364
|
"description": "Text for buttons used to revert changes"
|
|
341
365
|
},
|
|
366
|
+
"addButton": {
|
|
367
|
+
"message": "Add",
|
|
368
|
+
"description": "Text for buttons used to add content"
|
|
369
|
+
},
|
|
342
370
|
"importAndAppendButton": {
|
|
343
371
|
"message": "Import and append…",
|
|
344
372
|
"description": "Text for buttons used to import and append content"
|
|
@@ -347,6 +375,14 @@
|
|
|
347
375
|
"message": "Export…",
|
|
348
376
|
"description": "Text for buttons used to export content"
|
|
349
377
|
},
|
|
378
|
+
"backupButton": {
|
|
379
|
+
"message": "Back up…",
|
|
380
|
+
"description": "Text for buttons used to back up content"
|
|
381
|
+
},
|
|
382
|
+
"restoreButton": {
|
|
383
|
+
"message": "Restore…",
|
|
384
|
+
"description": "Text for buttons used to restore content"
|
|
385
|
+
},
|
|
350
386
|
"dnrRulesWarning": {
|
|
351
387
|
"message": "Do not add content from untrusted sources",
|
|
352
388
|
"description": "Short description of the DNR rules editor pane"
|
|
@@ -19,6 +19,10 @@
|
|
|
19
19
|
"message": "Налады",
|
|
20
20
|
"description": "appears as tab name in dashboard"
|
|
21
21
|
},
|
|
22
|
+
"customFiltersPageName": {
|
|
23
|
+
"message": "Уласныя фільтры",
|
|
24
|
+
"description": "appears as tab name in dashboard"
|
|
25
|
+
},
|
|
22
26
|
"developPageName": {
|
|
23
27
|
"message": "Распрацоўка",
|
|
24
28
|
"description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
|
|
@@ -83,6 +87,14 @@
|
|
|
83
87
|
"message": "Рэгіёны, мовы",
|
|
84
88
|
"description": "Header for a ruleset section in 'Filter lists pane'"
|
|
85
89
|
},
|
|
90
|
+
"customFiltersImportExportLabel": {
|
|
91
|
+
"message": "Імпартаваць/экспартаваць",
|
|
92
|
+
"description": "Text label heading the import/export area of custom filters"
|
|
93
|
+
},
|
|
94
|
+
"customFiltersImportTextareaPlaceholder": {
|
|
95
|
+
"message": "Paste here specific cosmetic filters to add",
|
|
96
|
+
"description": "Placeholder text which describes the purpose of the textarea widget"
|
|
97
|
+
},
|
|
86
98
|
"aboutChangelog": {
|
|
87
99
|
"message": "Журнал змяненняў",
|
|
88
100
|
"description": ""
|
|
@@ -251,6 +263,18 @@
|
|
|
251
263
|
"message": "Забяспечвае доступ да функцый, прыдатным для тэхнічных карыстальнікаў.",
|
|
252
264
|
"description": "Short description for a checkbox in the options page"
|
|
253
265
|
},
|
|
266
|
+
"settingsBackupRestoreLabel": {
|
|
267
|
+
"message": "Backup",
|
|
268
|
+
"description": "The header text for the back up/restore section"
|
|
269
|
+
},
|
|
270
|
+
"settingsBackupRestoreSummary": {
|
|
271
|
+
"message": "Back up your custom settings to a file, or restore your custom settings from a file.",
|
|
272
|
+
"description": "A summary description of the back up/restore section."
|
|
273
|
+
},
|
|
274
|
+
"settingsBackupRestoreLegend": {
|
|
275
|
+
"message": "Restoring will overwrite all your current custom settings.",
|
|
276
|
+
"description": "Important information about the back up/restore section."
|
|
277
|
+
},
|
|
254
278
|
"findListsPlaceholder": {
|
|
255
279
|
"message": "Знайсці спісы",
|
|
256
280
|
"description": "Placeholder for the input field used to find lists"
|
|
@@ -339,6 +363,10 @@
|
|
|
339
363
|
"message": "Вярнуць",
|
|
340
364
|
"description": "Text for buttons used to revert changes"
|
|
341
365
|
},
|
|
366
|
+
"addButton": {
|
|
367
|
+
"message": "Дадаць",
|
|
368
|
+
"description": "Text for buttons used to add content"
|
|
369
|
+
},
|
|
342
370
|
"importAndAppendButton": {
|
|
343
371
|
"message": "Імпартаваць ды дадаць…",
|
|
344
372
|
"description": "Text for buttons used to import and append content"
|
|
@@ -347,6 +375,14 @@
|
|
|
347
375
|
"message": "Экспартаваць…",
|
|
348
376
|
"description": "Text for buttons used to export content"
|
|
349
377
|
},
|
|
378
|
+
"backupButton": {
|
|
379
|
+
"message": "Back up…",
|
|
380
|
+
"description": "Text for buttons used to back up content"
|
|
381
|
+
},
|
|
382
|
+
"restoreButton": {
|
|
383
|
+
"message": "Restore…",
|
|
384
|
+
"description": "Text for buttons used to restore content"
|
|
385
|
+
},
|
|
350
386
|
"dnrRulesWarning": {
|
|
351
387
|
"message": "Не дадавайце кантэнт з ненадзейных крыніц",
|
|
352
388
|
"description": "Short description of the DNR rules editor pane"
|