@browserless.io/browserless 2.37.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/build/browsers/index.js +15 -0
- 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/ws/browser.query.json +3 -0
- package/build/routes/chrome/ws/cdp.query.json +3 -0
- package/build/routes/chrome/ws/function-connect.query.json +3 -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.query.json +3 -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.query.json +3 -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/server.js +1 -1
- package/build/shim.js +11 -1
- package/build/shim.spec.js +14 -0
- package/build/types.d.ts +2 -0
- package/extensions/ublocklite/_locales/br_FR/messages.json +2 -2
- package/extensions/ublocklite/_locales/cs/messages.json +8 -8
- package/extensions/ublocklite/_locales/da/messages.json +5 -5
- package/extensions/ublocklite/_locales/es/messages.json +4 -4
- package/extensions/ublocklite/_locales/gl/messages.json +5 -5
- package/extensions/ublocklite/_locales/ka/messages.json +5 -5
- package/extensions/ublocklite/_locales/ru/messages.json +3 -3
- package/extensions/ublocklite/_locales/sq/messages.json +5 -5
- package/extensions/ublocklite/_locales/sv/messages.json +5 -5
- package/extensions/ublocklite/_locales/zh_CN/messages.json +5 -5
- package/extensions/ublocklite/css/settings.css +6 -0
- package/extensions/ublocklite/dashboard.html +1 -1
- package/extensions/ublocklite/js/background.js +10 -6
- package/extensions/ublocklite/js/dashboard.js +4 -5
- package/extensions/ublocklite/js/jsonpath.js +25 -10
- package/extensions/ublocklite/js/report.js +2 -4
- package/extensions/ublocklite/js/troubleshooting.js +30 -18
- package/extensions/ublocklite/manifest.json +2 -2
- package/extensions/ublocklite/rulesets/main/adguard-mobile.json +1 -1
- package/extensions/ublocklite/rulesets/main/adguard-spyware-url.json +1 -1
- package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +6 -4
- package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +2 -1
- package/extensions/ublocklite/rulesets/main/chn-0.json +5 -3
- package/extensions/ublocklite/rulesets/main/easylist.json +10 -13
- package/extensions/ublocklite/rulesets/main/easyprivacy.json +8 -9
- package/extensions/ublocklite/rulesets/main/fin-0.json +3 -1
- package/extensions/ublocklite/rulesets/main/ita-0.json +2 -0
- package/extensions/ublocklite/rulesets/main/jpn-1.json +8 -10
- package/extensions/ublocklite/rulesets/main/nor-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/pol-0.json +1 -1
- package/extensions/ublocklite/rulesets/main/rus-1.json +2 -1
- package/extensions/ublocklite/rulesets/main/spa-1.json +6 -1
- package/extensions/ublocklite/rulesets/main/swe-1.json +5 -5
- package/extensions/ublocklite/rulesets/main/tur-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/ublock-badware.json +4 -2
- package/extensions/ublocklite/rulesets/main/ublock-filters.json +25 -25
- package/extensions/ublocklite/rulesets/main/ukr-0.json +2 -2
- package/extensions/ublocklite/rulesets/main/urlhaus-full.json +610 -80
- package/extensions/ublocklite/rulesets/main/vie-1.json +20 -14
- package/extensions/ublocklite/rulesets/regex/easylist.json +1 -6
- package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -1
- package/extensions/ublocklite/rulesets/regex/ublock-badware.json +3 -4
- package/extensions/ublocklite/rulesets/regex/ublock-filters.json +11 -9
- package/extensions/ublocklite/rulesets/ruleset-details.json +120 -120
- package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/generic/ita-0.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/procedural/adguard-mobile.js +2 -2
- 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/chn-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/fin-0.js +1 -1
- 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/jpn-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.addEventListener-defuser.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.prevent-setTimeout.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.prevent-requestAnimationFrame.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.prevent-setTimeout.js +5 -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-set-cookie.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-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 +5 -1
- 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.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-suppress-native-method.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +5 -1
- 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/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/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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.addEventListener-defuser.js +5 -1
- 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.addEventListener-defuser.js +5 -1
- 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 +5 -1
- 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.addEventListener-defuser.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-fetch.js +5 -1
- 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 +5 -1
- 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-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.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 +5 -1
- 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.prevent-fetch.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-setTimeout.js +5 -1
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +5 -1
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +5 -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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +5 -1
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +6 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +1 -1
- 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 +1 -1
- 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.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 +29 -11
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +24 -10
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +1 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.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 +29 -11
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit.js +29 -11
- 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 +5 -1
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +2 -2
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +7 -3
- package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +6 -2
- 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 +1 -1
- 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/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/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/rus-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
- package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
- package/extensions/ublocklite/rulesets/scriptlet-details.json +90 -32
- package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +5 -0
- package/extensions/ublocklite/rulesets/strictblock/chn-0.json +67 -1
- package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +17 -1
- package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +198 -196
- package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
- package/extensions/ublocklite/rulesets/strictblock/pol-0.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +532 -530
- package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +23 -19
- package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +2 -0
- package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +610 -80
- package/extensions/ublocklite/ublock.zip +0 -0
- package/package.json +13 -12
- package/scripts/install-debugger.js +2 -2
- package/src/browsers/index.ts +20 -0
- package/src/routes/chrome/tests/content.spec.ts +24 -0
- package/src/routes/chrome/tests/json.spec.ts +134 -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/edge/tests/content.spec.ts +24 -0
- package/src/routes/edge/tests/json.spec.ts +134 -0
- package/src/routes/management/tests/management.spec.ts +66 -0
- package/src/server.ts +1 -1
- package/src/shared/screenshot.http.ts +1 -1
- package/src/shim.spec.ts +18 -0
- package/src/shim.ts +15 -1
- package/src/types.ts +2 -0
- package/static/docs/swagger.json +4 -1
- package/static/docs/swagger.min.json +4 -1
- package/static/function/client.js +86 -92
- package/static/function/index.html +86 -92
- 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
|
@@ -4430,7 +4430,7 @@
|
|
|
4430
4430
|
// node_modules/puppeteer-core/lib/esm/puppeteer/generated/version.js
|
|
4431
4431
|
init_dirname();
|
|
4432
4432
|
init_buffer2();
|
|
4433
|
-
var packageVersion = "24.
|
|
4433
|
+
var packageVersion = "24.23.0";
|
|
4434
4434
|
|
|
4435
4435
|
// node_modules/puppeteer-core/lib/esm/puppeteer/util/assert.js
|
|
4436
4436
|
init_dirname();
|
|
@@ -7407,14 +7407,12 @@
|
|
|
7407
7407
|
* import {KnownDevices} from 'puppeteer';
|
|
7408
7408
|
* const iPhone = KnownDevices['iPhone 15 Pro'];
|
|
7409
7409
|
*
|
|
7410
|
-
*
|
|
7411
|
-
*
|
|
7412
|
-
*
|
|
7413
|
-
*
|
|
7414
|
-
*
|
|
7415
|
-
*
|
|
7416
|
-
* await browser.close();
|
|
7417
|
-
* })();
|
|
7410
|
+
* const browser = await puppeteer.launch();
|
|
7411
|
+
* const page = await browser.newPage();
|
|
7412
|
+
* await page.emulate(iPhone);
|
|
7413
|
+
* await page.goto('https://www.google.com');
|
|
7414
|
+
* // other actions...
|
|
7415
|
+
* await browser.close();
|
|
7418
7416
|
* ```
|
|
7419
7417
|
*/
|
|
7420
7418
|
async emulate(device) {
|
|
@@ -7955,22 +7953,21 @@
|
|
|
7955
7953
|
*
|
|
7956
7954
|
* ```ts
|
|
7957
7955
|
* import puppeteer from 'puppeteer';
|
|
7958
|
-
*
|
|
7959
|
-
*
|
|
7960
|
-
*
|
|
7961
|
-
*
|
|
7962
|
-
*
|
|
7963
|
-
*
|
|
7964
|
-
*
|
|
7965
|
-
*
|
|
7966
|
-
*
|
|
7967
|
-
*
|
|
7968
|
-
*
|
|
7969
|
-
*
|
|
7970
|
-
*
|
|
7971
|
-
*
|
|
7972
|
-
*
|
|
7973
|
-
* })();
|
|
7956
|
+
*
|
|
7957
|
+
* const browser = await puppeteer.launch();
|
|
7958
|
+
* const page = await browser.newPage();
|
|
7959
|
+
* let currentURL;
|
|
7960
|
+
* page
|
|
7961
|
+
* .waitForSelector('img')
|
|
7962
|
+
* .then(() => console.log('First URL with image: ' + currentURL));
|
|
7963
|
+
* for (currentURL of [
|
|
7964
|
+
* 'https://example.com',
|
|
7965
|
+
* 'https://google.com',
|
|
7966
|
+
* 'https://bbc.com',
|
|
7967
|
+
* ]) {
|
|
7968
|
+
* await page.goto(currentURL);
|
|
7969
|
+
* }
|
|
7970
|
+
* await browser.close();
|
|
7974
7971
|
* ```
|
|
7975
7972
|
*
|
|
7976
7973
|
* @param selector -
|
|
@@ -8020,14 +8017,13 @@
|
|
|
8020
8017
|
*
|
|
8021
8018
|
* ```ts
|
|
8022
8019
|
* import puppeteer from 'puppeteer';
|
|
8023
|
-
*
|
|
8024
|
-
*
|
|
8025
|
-
*
|
|
8026
|
-
*
|
|
8027
|
-
*
|
|
8028
|
-
*
|
|
8029
|
-
*
|
|
8030
|
-
* })();
|
|
8020
|
+
*
|
|
8021
|
+
* const browser = await puppeteer.launch();
|
|
8022
|
+
* const page = await browser.newPage();
|
|
8023
|
+
* const watchDog = page.waitForFunction('window.innerWidth < 100');
|
|
8024
|
+
* await page.setViewport({width: 50, height: 50});
|
|
8025
|
+
* await watchDog;
|
|
8026
|
+
* await browser.close();
|
|
8031
8027
|
* ```
|
|
8032
8028
|
*
|
|
8033
8029
|
* @example
|
|
@@ -11296,24 +11292,22 @@
|
|
|
11296
11292
|
* ```ts
|
|
11297
11293
|
* import puppeteer from 'puppeteer';
|
|
11298
11294
|
*
|
|
11299
|
-
*
|
|
11300
|
-
*
|
|
11301
|
-
*
|
|
11302
|
-
*
|
|
11303
|
-
*
|
|
11304
|
-
*
|
|
11305
|
-
*
|
|
11306
|
-
* .then(() => console.log('First URL with image: ' + currentURL));
|
|
11295
|
+
* const browser = await puppeteer.launch();
|
|
11296
|
+
* const page = await browser.newPage();
|
|
11297
|
+
* let currentURL;
|
|
11298
|
+
* page
|
|
11299
|
+
* .mainFrame()
|
|
11300
|
+
* .waitForSelector('img')
|
|
11301
|
+
* .then(() => console.log('First URL with image: ' + currentURL));
|
|
11307
11302
|
*
|
|
11308
|
-
*
|
|
11309
|
-
*
|
|
11310
|
-
*
|
|
11311
|
-
*
|
|
11312
|
-
*
|
|
11313
|
-
*
|
|
11314
|
-
*
|
|
11315
|
-
*
|
|
11316
|
-
* })();
|
|
11303
|
+
* for (currentURL of [
|
|
11304
|
+
* 'https://example.com',
|
|
11305
|
+
* 'https://google.com',
|
|
11306
|
+
* 'https://bbc.com',
|
|
11307
|
+
* ]) {
|
|
11308
|
+
* await page.goto(currentURL);
|
|
11309
|
+
* }
|
|
11310
|
+
* await browser.close();
|
|
11317
11311
|
* ```
|
|
11318
11312
|
*
|
|
11319
11313
|
* @param selector - The selector to query and wait for.
|
|
@@ -11335,14 +11329,14 @@
|
|
|
11335
11329
|
* ```ts
|
|
11336
11330
|
* import puppeteer from 'puppeteer';
|
|
11337
11331
|
*
|
|
11338
|
-
*
|
|
11339
|
-
*
|
|
11340
|
-
*
|
|
11341
|
-
*
|
|
11342
|
-
*
|
|
11343
|
-
* .
|
|
11344
|
-
*
|
|
11345
|
-
*
|
|
11332
|
+
* const browser = await puppeteer.launch();
|
|
11333
|
+
* const page = await browser.newPage();
|
|
11334
|
+
* const watchDog = page
|
|
11335
|
+
* .mainFrame()
|
|
11336
|
+
* .waitForFunction('window.innerWidth < 100');
|
|
11337
|
+
* page.setViewport({width: 50, height: 50});
|
|
11338
|
+
* await watchDog;
|
|
11339
|
+
* await browser.close();
|
|
11346
11340
|
* ```
|
|
11347
11341
|
*
|
|
11348
11342
|
* To pass arguments from Node.js to the predicate of `page.waitForFunction` function:
|
|
@@ -12372,9 +12366,10 @@
|
|
|
12372
12366
|
*
|
|
12373
12367
|
* ```ts
|
|
12374
12368
|
* const feedHandle = await page.$('.feed');
|
|
12375
|
-
*
|
|
12376
|
-
*
|
|
12377
|
-
*
|
|
12369
|
+
*
|
|
12370
|
+
* const listOfTweets = await feedHandle.$$eval('.tweet', nodes =>
|
|
12371
|
+
* nodes.map(n => n.innerText),
|
|
12372
|
+
* );
|
|
12378
12373
|
* ```
|
|
12379
12374
|
*
|
|
12380
12375
|
* @param selector -
|
|
@@ -12432,24 +12427,22 @@
|
|
|
12432
12427
|
* ```ts
|
|
12433
12428
|
* import puppeteer from 'puppeteer';
|
|
12434
12429
|
*
|
|
12435
|
-
*
|
|
12436
|
-
*
|
|
12437
|
-
*
|
|
12438
|
-
*
|
|
12439
|
-
*
|
|
12440
|
-
*
|
|
12441
|
-
*
|
|
12442
|
-
* .then(() => console.log('First URL with image: ' + currentURL));
|
|
12430
|
+
* const browser = await puppeteer.launch();
|
|
12431
|
+
* const page = await browser.newPage();
|
|
12432
|
+
* let currentURL;
|
|
12433
|
+
* page
|
|
12434
|
+
* .mainFrame()
|
|
12435
|
+
* .waitForSelector('img')
|
|
12436
|
+
* .then(() => console.log('First URL with image: ' + currentURL));
|
|
12443
12437
|
*
|
|
12444
|
-
*
|
|
12445
|
-
*
|
|
12446
|
-
*
|
|
12447
|
-
*
|
|
12448
|
-
*
|
|
12449
|
-
*
|
|
12450
|
-
*
|
|
12451
|
-
*
|
|
12452
|
-
* })();
|
|
12438
|
+
* for (currentURL of [
|
|
12439
|
+
* 'https://example.com',
|
|
12440
|
+
* 'https://google.com',
|
|
12441
|
+
* 'https://bbc.com',
|
|
12442
|
+
* ]) {
|
|
12443
|
+
* await page.goto(currentURL);
|
|
12444
|
+
* }
|
|
12445
|
+
* await browser.close();
|
|
12453
12446
|
* ```
|
|
12454
12447
|
*
|
|
12455
12448
|
* @param selector - The selector to query and wait for.
|
|
@@ -15474,7 +15467,6 @@ ${sourceUrlComment}
|
|
|
15474
15467
|
* `respond()` aren't called).
|
|
15475
15468
|
*/
|
|
15476
15469
|
continueRequestOverrides() {
|
|
15477
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15478
15470
|
return this.interception.requestOverrides;
|
|
15479
15471
|
}
|
|
15480
15472
|
/**
|
|
@@ -15482,14 +15474,12 @@ ${sourceUrlComment}
|
|
|
15482
15474
|
* interception is allowed to respond (ie, `abort()` is not called).
|
|
15483
15475
|
*/
|
|
15484
15476
|
responseForRequest() {
|
|
15485
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15486
15477
|
return this.interception.response;
|
|
15487
15478
|
}
|
|
15488
15479
|
/**
|
|
15489
15480
|
* The most recent reason for aborting the request
|
|
15490
15481
|
*/
|
|
15491
15482
|
abortErrorReason() {
|
|
15492
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15493
15483
|
return this.interception.abortReason;
|
|
15494
15484
|
}
|
|
15495
15485
|
/**
|
|
@@ -15550,8 +15540,12 @@ ${sourceUrlComment}
|
|
|
15550
15540
|
return await this._continue(this.interception.requestOverrides);
|
|
15551
15541
|
}
|
|
15552
15542
|
}
|
|
15553
|
-
|
|
15554
|
-
|
|
15543
|
+
/**
|
|
15544
|
+
* @internal
|
|
15545
|
+
*/
|
|
15546
|
+
verifyInterception() {
|
|
15547
|
+
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15548
|
+
assert(!this.interception.handled, "Request is already handled!");
|
|
15555
15549
|
}
|
|
15556
15550
|
/**
|
|
15557
15551
|
* Continues request with optional request overrides.
|
|
@@ -15582,11 +15576,10 @@ ${sourceUrlComment}
|
|
|
15582
15576
|
* Exception is immediately thrown if the request interception is not enabled.
|
|
15583
15577
|
*/
|
|
15584
15578
|
async continue(overrides = {}, priority) {
|
|
15585
|
-
|
|
15579
|
+
this.verifyInterception();
|
|
15580
|
+
if (!this.canBeIntercepted()) {
|
|
15586
15581
|
return;
|
|
15587
15582
|
}
|
|
15588
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15589
|
-
assert(!this.interception.handled, "Request is already handled!");
|
|
15590
15583
|
if (priority === void 0) {
|
|
15591
15584
|
return await this._continue(overrides);
|
|
15592
15585
|
}
|
|
@@ -15639,11 +15632,10 @@ ${sourceUrlComment}
|
|
|
15639
15632
|
* Exception is immediately thrown if the request interception is not enabled.
|
|
15640
15633
|
*/
|
|
15641
15634
|
async respond(response, priority) {
|
|
15642
|
-
|
|
15635
|
+
this.verifyInterception();
|
|
15636
|
+
if (!this.canBeIntercepted()) {
|
|
15643
15637
|
return;
|
|
15644
15638
|
}
|
|
15645
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15646
|
-
assert(!this.interception.handled, "Request is already handled!");
|
|
15647
15639
|
if (priority === void 0) {
|
|
15648
15640
|
return await this._respond(response);
|
|
15649
15641
|
}
|
|
@@ -15677,13 +15669,12 @@ ${sourceUrlComment}
|
|
|
15677
15669
|
* throw an exception immediately.
|
|
15678
15670
|
*/
|
|
15679
15671
|
async abort(errorCode = "failed", priority) {
|
|
15680
|
-
|
|
15672
|
+
this.verifyInterception();
|
|
15673
|
+
if (!this.canBeIntercepted()) {
|
|
15681
15674
|
return;
|
|
15682
15675
|
}
|
|
15683
15676
|
const errorReason = errorReasons[errorCode];
|
|
15684
15677
|
assert(errorReason, "Unknown error code: " + errorCode);
|
|
15685
|
-
assert(this.interception.enabled, "Request Interception is not enabled!");
|
|
15686
|
-
assert(!this.interception.handled, "Request is already handled!");
|
|
15687
15678
|
if (priority === void 0) {
|
|
15688
15679
|
return await this._abort(errorReason);
|
|
15689
15680
|
}
|
|
@@ -15908,6 +15899,9 @@ ${sourceUrlComment}
|
|
|
15908
15899
|
errorText: this._failureText
|
|
15909
15900
|
};
|
|
15910
15901
|
}
|
|
15902
|
+
canBeIntercepted() {
|
|
15903
|
+
return !this.url().startsWith("data:") && !this._fromMemoryCache;
|
|
15904
|
+
}
|
|
15911
15905
|
/**
|
|
15912
15906
|
* @internal
|
|
15913
15907
|
*/
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
describe('/json/version API', function () {
|
|
4
|
-
let browserless;
|
|
5
|
-
const start = ({ config = new Config(), metrics = new Metrics(), } = {}) => {
|
|
6
|
-
browserless = new Browserless({ config, metrics });
|
|
7
|
-
return browserless.start();
|
|
8
|
-
};
|
|
9
|
-
afterEach(async () => {
|
|
10
|
-
await browserless.stop();
|
|
11
|
-
});
|
|
12
|
-
it('allows requests to /json/version', async () => {
|
|
13
|
-
const config = new Config();
|
|
14
|
-
config.setToken('browserless');
|
|
15
|
-
const metrics = new Metrics();
|
|
16
|
-
await start({ config, metrics });
|
|
17
|
-
const res = await fetch('http://localhost:3000/json/version?token=browserless');
|
|
18
|
-
const resJSON = await res.json();
|
|
19
|
-
[
|
|
20
|
-
'Browser',
|
|
21
|
-
'Protocol-Version',
|
|
22
|
-
'User-Agent',
|
|
23
|
-
'V8-Version',
|
|
24
|
-
'WebKit-Version',
|
|
25
|
-
'webSocketDebuggerUrl',
|
|
26
|
-
'Debugger-Version',
|
|
27
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
28
|
-
});
|
|
29
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
30
|
-
const config = new Config();
|
|
31
|
-
config.setToken('browserless');
|
|
32
|
-
const metrics = new Metrics();
|
|
33
|
-
await start({ config, metrics });
|
|
34
|
-
const res = await fetch('http://localhost:3000/json/version?token=imabadboi');
|
|
35
|
-
expect(res.status).to.equal(401);
|
|
36
|
-
});
|
|
37
|
-
});
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
describe('/json/version API', function () {
|
|
4
|
-
let browserless;
|
|
5
|
-
const start = ({ config = new Config(), metrics = new Metrics(), } = {}) => {
|
|
6
|
-
browserless = new Browserless({ config, metrics });
|
|
7
|
-
return browserless.start();
|
|
8
|
-
};
|
|
9
|
-
afterEach(async () => {
|
|
10
|
-
await browserless.stop();
|
|
11
|
-
});
|
|
12
|
-
it('allows requests to /json/version', async () => {
|
|
13
|
-
const config = new Config();
|
|
14
|
-
config.setToken('browserless');
|
|
15
|
-
const metrics = new Metrics();
|
|
16
|
-
await start({ config, metrics });
|
|
17
|
-
const res = await fetch('http://localhost:3000/json/version?token=browserless');
|
|
18
|
-
const resJSON = await res.json();
|
|
19
|
-
[
|
|
20
|
-
'Browser',
|
|
21
|
-
'Protocol-Version',
|
|
22
|
-
'User-Agent',
|
|
23
|
-
'V8-Version',
|
|
24
|
-
'WebKit-Version',
|
|
25
|
-
'webSocketDebuggerUrl',
|
|
26
|
-
'Debugger-Version',
|
|
27
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
28
|
-
});
|
|
29
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
30
|
-
const config = new Config();
|
|
31
|
-
config.setToken('browserless');
|
|
32
|
-
const metrics = new Metrics();
|
|
33
|
-
await start({ config, metrics });
|
|
34
|
-
const res = await fetch('http://localhost:3000/json/version?token=imabadboi');
|
|
35
|
-
expect(res.status).to.equal(401);
|
|
36
|
-
});
|
|
37
|
-
});
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
describe('/json/version API', function () {
|
|
4
|
-
let browserless;
|
|
5
|
-
const start = ({ config = new Config(), metrics = new Metrics(), } = {}) => {
|
|
6
|
-
browserless = new Browserless({ config, metrics });
|
|
7
|
-
return browserless.start();
|
|
8
|
-
};
|
|
9
|
-
afterEach(async () => {
|
|
10
|
-
await browserless.stop();
|
|
11
|
-
});
|
|
12
|
-
it('allows requests to /json/version', async () => {
|
|
13
|
-
const config = new Config();
|
|
14
|
-
config.setToken('browserless');
|
|
15
|
-
const metrics = new Metrics();
|
|
16
|
-
await start({ config, metrics });
|
|
17
|
-
const res = await fetch('http://localhost:3000/json/version?token=browserless');
|
|
18
|
-
const resJSON = await res.json();
|
|
19
|
-
[
|
|
20
|
-
'Browser',
|
|
21
|
-
'Protocol-Version',
|
|
22
|
-
'User-Agent',
|
|
23
|
-
'V8-Version',
|
|
24
|
-
'WebKit-Version',
|
|
25
|
-
'webSocketDebuggerUrl',
|
|
26
|
-
'Debugger-Version',
|
|
27
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
28
|
-
});
|
|
29
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
30
|
-
const config = new Config();
|
|
31
|
-
config.setToken('browserless');
|
|
32
|
-
const metrics = new Metrics();
|
|
33
|
-
await start({ config, metrics });
|
|
34
|
-
const res = await fetch('http://localhost:3000/json/version?token=imabadboi');
|
|
35
|
-
expect(res.status).to.equal(401);
|
|
36
|
-
});
|
|
37
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
|
|
4
|
-
describe('/json/version API', function () {
|
|
5
|
-
let browserless: Browserless;
|
|
6
|
-
|
|
7
|
-
const start = ({
|
|
8
|
-
config = new Config(),
|
|
9
|
-
metrics = new Metrics(),
|
|
10
|
-
}: { config?: Config; metrics?: Metrics } = {}) => {
|
|
11
|
-
browserless = new Browserless({ config, metrics });
|
|
12
|
-
return browserless.start();
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
afterEach(async () => {
|
|
16
|
-
await browserless.stop();
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('allows requests to /json/version', async () => {
|
|
20
|
-
const config = new Config();
|
|
21
|
-
config.setToken('browserless');
|
|
22
|
-
const metrics = new Metrics();
|
|
23
|
-
await start({ config, metrics });
|
|
24
|
-
|
|
25
|
-
const res = await fetch(
|
|
26
|
-
'http://localhost:3000/json/version?token=browserless',
|
|
27
|
-
);
|
|
28
|
-
const resJSON = await res.json();
|
|
29
|
-
|
|
30
|
-
[
|
|
31
|
-
'Browser',
|
|
32
|
-
'Protocol-Version',
|
|
33
|
-
'User-Agent',
|
|
34
|
-
'V8-Version',
|
|
35
|
-
'WebKit-Version',
|
|
36
|
-
'webSocketDebuggerUrl',
|
|
37
|
-
'Debugger-Version',
|
|
38
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
42
|
-
const config = new Config();
|
|
43
|
-
config.setToken('browserless');
|
|
44
|
-
const metrics = new Metrics();
|
|
45
|
-
await start({ config, metrics });
|
|
46
|
-
|
|
47
|
-
const res = await fetch(
|
|
48
|
-
'http://localhost:3000/json/version?token=imabadboi',
|
|
49
|
-
);
|
|
50
|
-
expect(res.status).to.equal(401);
|
|
51
|
-
});
|
|
52
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
|
|
4
|
-
describe('/json/version API', function () {
|
|
5
|
-
let browserless: Browserless;
|
|
6
|
-
|
|
7
|
-
const start = ({
|
|
8
|
-
config = new Config(),
|
|
9
|
-
metrics = new Metrics(),
|
|
10
|
-
}: { config?: Config; metrics?: Metrics } = {}) => {
|
|
11
|
-
browserless = new Browserless({ config, metrics });
|
|
12
|
-
return browserless.start();
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
afterEach(async () => {
|
|
16
|
-
await browserless.stop();
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('allows requests to /json/version', async () => {
|
|
20
|
-
const config = new Config();
|
|
21
|
-
config.setToken('browserless');
|
|
22
|
-
const metrics = new Metrics();
|
|
23
|
-
await start({ config, metrics });
|
|
24
|
-
|
|
25
|
-
const res = await fetch(
|
|
26
|
-
'http://localhost:3000/json/version?token=browserless',
|
|
27
|
-
);
|
|
28
|
-
const resJSON = await res.json();
|
|
29
|
-
|
|
30
|
-
[
|
|
31
|
-
'Browser',
|
|
32
|
-
'Protocol-Version',
|
|
33
|
-
'User-Agent',
|
|
34
|
-
'V8-Version',
|
|
35
|
-
'WebKit-Version',
|
|
36
|
-
'webSocketDebuggerUrl',
|
|
37
|
-
'Debugger-Version',
|
|
38
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
42
|
-
const config = new Config();
|
|
43
|
-
config.setToken('browserless');
|
|
44
|
-
const metrics = new Metrics();
|
|
45
|
-
await start({ config, metrics });
|
|
46
|
-
|
|
47
|
-
const res = await fetch(
|
|
48
|
-
'http://localhost:3000/json/version?token=imabadboi',
|
|
49
|
-
);
|
|
50
|
-
expect(res.status).to.equal(401);
|
|
51
|
-
});
|
|
52
|
-
});
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Browserless, Config, Metrics } from '@browserless.io/browserless';
|
|
2
|
-
import { expect } from 'chai';
|
|
3
|
-
|
|
4
|
-
describe('/json/version API', function () {
|
|
5
|
-
let browserless: Browserless;
|
|
6
|
-
|
|
7
|
-
const start = ({
|
|
8
|
-
config = new Config(),
|
|
9
|
-
metrics = new Metrics(),
|
|
10
|
-
}: { config?: Config; metrics?: Metrics } = {}) => {
|
|
11
|
-
browserless = new Browserless({ config, metrics });
|
|
12
|
-
return browserless.start();
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
afterEach(async () => {
|
|
16
|
-
await browserless.stop();
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
it('allows requests to /json/version', async () => {
|
|
20
|
-
const config = new Config();
|
|
21
|
-
config.setToken('browserless');
|
|
22
|
-
const metrics = new Metrics();
|
|
23
|
-
await start({ config, metrics });
|
|
24
|
-
|
|
25
|
-
const res = await fetch(
|
|
26
|
-
'http://localhost:3000/json/version?token=browserless',
|
|
27
|
-
);
|
|
28
|
-
const resJSON = await res.json();
|
|
29
|
-
|
|
30
|
-
[
|
|
31
|
-
'Browser',
|
|
32
|
-
'Protocol-Version',
|
|
33
|
-
'User-Agent',
|
|
34
|
-
'V8-Version',
|
|
35
|
-
'WebKit-Version',
|
|
36
|
-
'webSocketDebuggerUrl',
|
|
37
|
-
'Debugger-Version',
|
|
38
|
-
].forEach((k) => expect(resJSON).to.haveOwnProperty(k));
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
it('rejects unauthorized requests to /json/version', async () => {
|
|
42
|
-
const config = new Config();
|
|
43
|
-
config.setToken('browserless');
|
|
44
|
-
const metrics = new Metrics();
|
|
45
|
-
await start({ config, metrics });
|
|
46
|
-
|
|
47
|
-
const res = await fetch(
|
|
48
|
-
'http://localhost:3000/json/version?token=imabadboi',
|
|
49
|
-
);
|
|
50
|
-
expect(res.status).to.equal(401);
|
|
51
|
-
});
|
|
52
|
-
});
|
|
File without changes
|
|
File without changes
|
|
File without changes
|