@browserless.io/browserless 2.34.0-beta-0 → 2.34.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.
Files changed (351) hide show
  1. package/CHANGELOG.md +18 -1
  2. package/build/routes/chrome/http/content.post.body.json +18 -109
  3. package/build/routes/chrome/http/pdf.post.body.json +18 -109
  4. package/build/routes/chrome/http/scrape.post.body.json +18 -109
  5. package/build/routes/chrome/http/screenshot.post.body.json +18 -109
  6. package/build/routes/chromium/http/content.post.body.json +18 -109
  7. package/build/routes/chromium/http/pdf.post.body.json +18 -109
  8. package/build/routes/chromium/http/scrape.post.body.json +18 -109
  9. package/build/routes/chromium/http/screenshot.post.body.json +18 -109
  10. package/build/routes/edge/http/content.post.body.json +18 -109
  11. package/build/routes/edge/http/pdf.post.body.json +18 -109
  12. package/build/routes/edge/http/scrape.post.body.json +18 -109
  13. package/build/routes/edge/http/screenshot.post.body.json +18 -109
  14. package/build/shared/content.http.js +9 -2
  15. package/build/shared/pdf.http.js +9 -2
  16. package/build/shared/scrape.http.js +9 -2
  17. package/build/shared/screenshot.http.js +9 -2
  18. package/build/types.d.ts +7 -1
  19. package/build/utils.d.ts +1 -0
  20. package/build/utils.js +3 -2
  21. package/extensions/ublocklite/README.md +1 -1
  22. package/extensions/ublocklite/_locales/bs/messages.json +58 -58
  23. package/extensions/ublocklite/_locales/ro/messages.json +1 -1
  24. package/extensions/ublocklite/_locales/ru/messages.json +1 -1
  25. package/extensions/ublocklite/_locales/sr/messages.json +28 -28
  26. package/extensions/ublocklite/css/dashboard.css +9 -4
  27. package/extensions/ublocklite/css/settings.css +17 -13
  28. package/extensions/ublocklite/css/unpicker-ui.css +1 -0
  29. package/extensions/ublocklite/dashboard.html +16 -12
  30. package/extensions/ublocklite/js/background.js +48 -14
  31. package/extensions/ublocklite/js/config.js +2 -1
  32. package/extensions/ublocklite/js/dashboard.js +9 -5
  33. package/extensions/ublocklite/js/debug.js +62 -3
  34. package/extensions/ublocklite/js/ext.js +6 -0
  35. package/extensions/ublocklite/js/fetch.js +3 -1
  36. package/extensions/ublocklite/js/filter-lists.js +16 -7
  37. package/extensions/ublocklite/js/filter-manager.js +63 -9
  38. package/extensions/ublocklite/js/jsonpath.js +65 -26
  39. package/extensions/ublocklite/js/mode-manager.js +5 -1
  40. package/extensions/ublocklite/js/popup.js +1 -1
  41. package/extensions/ublocklite/js/report.js +4 -2
  42. package/extensions/ublocklite/js/ruleset-manager.js +38 -13
  43. package/extensions/ublocklite/js/scripting/css-generic.js +0 -1
  44. package/extensions/ublocklite/js/scripting/css-procedural.js +2 -0
  45. package/extensions/ublocklite/js/scripting/css-specific.js +2 -0
  46. package/extensions/ublocklite/js/scripting-manager.js +4 -10
  47. package/extensions/ublocklite/js/settings.js +3 -5
  48. package/extensions/ublocklite/js/static-filtering-parser.js +18 -11
  49. package/extensions/ublocklite/js/tool-overlay-ui.js +19 -23
  50. package/extensions/ublocklite/js/troubleshooting.js +11 -19
  51. package/extensions/ublocklite/js/ubo-parser.js +1 -1
  52. package/extensions/ublocklite/manifest.json +7 -2
  53. package/extensions/ublocklite/rulesets/generic-details.json +19 -3
  54. package/extensions/ublocklite/rulesets/main/adguard-mobile.json +3 -1
  55. package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +15 -11
  56. package/extensions/ublocklite/rulesets/main/annoyances-notifications.json +276 -0
  57. package/extensions/ublocklite/rulesets/main/annoyances-others.json +2 -1
  58. package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +2 -1
  59. package/extensions/ublocklite/rulesets/main/bgr-0.json +54 -68
  60. package/extensions/ublocklite/rulesets/main/block-lan.json +1 -1
  61. package/extensions/ublocklite/rulesets/main/chn-0.json +22 -12
  62. package/extensions/ublocklite/rulesets/main/deu-0.json +5 -7
  63. package/extensions/ublocklite/rulesets/main/dpollock-0.json +5 -0
  64. package/extensions/ublocklite/rulesets/main/easylist.json +29 -85
  65. package/extensions/ublocklite/rulesets/main/easyprivacy.json +44 -8
  66. package/extensions/ublocklite/rulesets/main/fra-0.json +15 -11
  67. package/extensions/ublocklite/rulesets/main/hun-0.json +5 -3
  68. package/extensions/ublocklite/rulesets/main/idn-0.json +6 -1
  69. package/extensions/ublocklite/rulesets/main/ind-0.json +14 -9
  70. package/extensions/ublocklite/rulesets/main/irn-0.json +632 -3
  71. package/extensions/ublocklite/rulesets/main/jpn-1.json +26 -18
  72. package/extensions/ublocklite/rulesets/main/kor-1.json +4 -2
  73. package/extensions/ublocklite/rulesets/main/nld-0.json +1 -1
  74. package/extensions/ublocklite/rulesets/main/nor-0.json +24 -4
  75. package/extensions/ublocklite/rulesets/main/pgl.json +8 -6
  76. package/extensions/ublocklite/rulesets/main/pol-0.json +3 -3
  77. package/extensions/ublocklite/rulesets/main/rus-0.json +18 -11
  78. package/extensions/ublocklite/rulesets/main/rus-1.json +6 -2
  79. package/extensions/ublocklite/rulesets/main/spa-1.json +11 -2
  80. package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +5438 -4232
  81. package/extensions/ublocklite/rulesets/main/swe-1.json +29 -24
  82. package/extensions/ublocklite/rulesets/main/tur-0.json +30 -10
  83. package/extensions/ublocklite/rulesets/main/ublock-badware.json +29 -30
  84. package/extensions/ublocklite/rulesets/main/ublock-filters.json +73 -49
  85. package/extensions/ublocklite/rulesets/main/ubol-tests.json +17 -0
  86. package/extensions/ublocklite/rulesets/main/urlhaus-full.json +326 -356
  87. package/extensions/ublocklite/rulesets/main/vie-1.json +30 -26
  88. package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +1 -2
  89. package/extensions/ublocklite/rulesets/modify-headers/fra-0.json +1 -0
  90. package/extensions/ublocklite/rulesets/modify-headers/irn-0.json +45 -0
  91. package/extensions/ublocklite/rulesets/modify-headers/rus-0.json +0 -1
  92. package/extensions/ublocklite/rulesets/modify-headers/ublock-filters.json +4 -3
  93. package/extensions/ublocklite/rulesets/redirect/annoyances-overlays.json +1 -2
  94. package/extensions/ublocklite/rulesets/redirect/easyprivacy.json +19 -0
  95. package/extensions/ublocklite/rulesets/redirect/irn-0.json +73 -0
  96. package/extensions/ublocklite/rulesets/redirect/jpn-1.json +0 -1
  97. package/extensions/ublocklite/rulesets/redirect/kor-1.json +1 -1
  98. package/extensions/ublocklite/rulesets/redirect/tur-0.json +2 -1
  99. package/extensions/ublocklite/rulesets/redirect/ublock-badware.json +18 -0
  100. package/extensions/ublocklite/rulesets/redirect/ublock-filters.json +18 -28
  101. package/extensions/ublocklite/rulesets/redirect/vie-1.json +34 -2
  102. package/extensions/ublocklite/rulesets/regex/chn-0.json +3 -1
  103. package/extensions/ublocklite/rulesets/regex/easylist.json +0 -2
  104. package/extensions/ublocklite/rulesets/regex/irn-0.json +22 -0
  105. package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -1
  106. package/extensions/ublocklite/rulesets/regex/tur-0.json +2 -1
  107. package/extensions/ublocklite/rulesets/regex/ublock-badware.json +2 -4
  108. package/extensions/ublocklite/rulesets/regex/ublock-filters.json +10 -9
  109. package/extensions/ublocklite/rulesets/regex/ukr-0.json +1 -3
  110. package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +9 -5
  111. package/extensions/ublocklite/rulesets/removeparam/irn-0.json +16 -27
  112. package/extensions/ublocklite/rulesets/removeparam/rus-1.json +3 -1
  113. package/extensions/ublocklite/rulesets/removeparam/ublock-filters.json +6 -3
  114. package/extensions/ublocklite/rulesets/ruleset-details.json +264 -233
  115. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
  116. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-notifications.js +87 -0
  117. package/extensions/ublocklite/rulesets/scripting/generic/bgr-0.js +3 -3
  118. package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +1 -1
  119. package/extensions/ublocklite/rulesets/scripting/generic/deu-0.js +2 -2
  120. package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +3 -3
  121. package/extensions/ublocklite/rulesets/scripting/generic/est-0.js +1 -1
  122. package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +1 -1
  123. package/extensions/ublocklite/rulesets/scripting/generic/irn-0.js +3 -3
  124. package/extensions/ublocklite/rulesets/scripting/generic/jpn-1.js +3 -3
  125. package/extensions/ublocklite/rulesets/scripting/generic/nor-0.js +1 -1
  126. package/extensions/ublocklite/rulesets/scripting/generic/pol-0.js +1 -1
  127. package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +1 -1
  128. package/extensions/ublocklite/rulesets/scripting/generic/tur-0.js +1 -1
  129. package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
  130. package/extensions/ublocklite/rulesets/scripting/generic/ukr-0.js +1 -1
  131. package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +1 -1
  132. package/extensions/ublocklite/rulesets/scripting/generichigh/annoyances-notifications.css +36 -0
  133. package/extensions/ublocklite/rulesets/scripting/generichigh/chn-0.css +12 -0
  134. package/extensions/ublocklite/rulesets/scripting/generichigh/easylist.css +1 -12
  135. package/extensions/ublocklite/rulesets/scripting/generichigh/est-0.css +1 -0
  136. package/extensions/ublocklite/rulesets/scripting/generichigh/idn-0.css +11 -0
  137. package/extensions/ublocklite/rulesets/scripting/generichigh/irn-0.css +27 -0
  138. package/extensions/ublocklite/rulesets/scripting/generichigh/nor-0.css +17 -0
  139. package/extensions/ublocklite/rulesets/scripting/generichigh/pol-0.css +8 -0
  140. package/extensions/ublocklite/rulesets/scripting/generichigh/rou-1.css +1 -0
  141. package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +106 -0
  142. package/extensions/ublocklite/rulesets/scripting/generichigh/rus-1.css +3 -0
  143. package/extensions/ublocklite/rulesets/scripting/generichigh/swe-1.css +1 -0
  144. package/extensions/ublocklite/rulesets/scripting/generichigh/ublock-filters.css +8 -2
  145. package/extensions/ublocklite/rulesets/scripting/generichigh/vie-1.css +1 -0
  146. package/extensions/ublocklite/rulesets/scripting/procedural/adguard-mobile.js +3 -3
  147. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +3 -3
  148. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-notifications.js +42 -0
  149. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-others.js +3 -3
  150. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +3 -3
  151. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-social.js +3 -3
  152. package/extensions/ublocklite/rulesets/scripting/procedural/chn-0.js +3 -3
  153. package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
  154. package/extensions/ublocklite/rulesets/scripting/procedural/ind-0.js +1 -1
  155. package/extensions/ublocklite/rulesets/scripting/procedural/irn-0.js +3 -3
  156. package/extensions/ublocklite/rulesets/scripting/procedural/ita-0.js +3 -3
  157. package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
  158. package/extensions/ublocklite/rulesets/scripting/procedural/kor-1.js +1 -1
  159. package/extensions/ublocklite/rulesets/scripting/procedural/rou-1.js +3 -3
  160. package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
  161. package/extensions/ublocklite/rulesets/scripting/procedural/rus-1.js +1 -1
  162. package/extensions/ublocklite/rulesets/scripting/procedural/spa-1.js +3 -3
  163. package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +3 -3
  164. package/extensions/ublocklite/rulesets/scripting/procedural/tur-0.js +3 -3
  165. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
  166. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-current-script.js +2 -2
  167. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie-reload.js +1 -1
  168. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-constant.js +2 -2
  169. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
  170. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-local-storage-item.js +2 -2
  171. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-session-storage-item.js +2 -2
  172. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +2 -2
  173. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
  174. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.abort-current-script.js +452 -0
  175. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.abort-on-property-write.js +347 -0
  176. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.addEventListener-defuser.js +498 -0
  177. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.remove-attr.js +405 -0
  178. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.remove-class.js +396 -0
  179. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.set-constant.js +541 -0
  180. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.set-cookie.js +442 -0
  181. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.set-local-storage-item.js +399 -0
  182. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-notifications.set-session-storage-item.js +399 -0
  183. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +1 -1
  184. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-read.js +1 -1
  185. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +2 -2
  186. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setTimeout.js +2 -2
  187. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +2 -2
  188. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +1 -1
  189. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-cookie.js +2 -2
  190. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-click-element.js +1 -1
  191. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-replace-outbound-text.js +427 -0
  192. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-current-script.js +2 -2
  193. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +1 -1
  194. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.json-prune-fetch-response.js +588 -0
  195. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.json-prune.js +1 -1
  196. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setTimeout.js +2 -2
  197. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.set-constant.js +2 -2
  198. package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.set-constant.js +1 -1
  199. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.abort-on-property-read.js +2 -2
  200. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-current-script.js +452 -0
  201. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-on-property-read.js +369 -0
  202. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-on-property-write.js +347 -0
  203. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.abort-on-stack-trace.js +421 -0
  204. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.addEventListener-defuser.js +498 -0
  205. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.adjust-setInterval.js +332 -0
  206. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.adjust-setTimeout.js +332 -0
  207. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.href-sanitizer.js +541 -0
  208. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.json-prune.js +506 -0
  209. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-fetch.js +553 -0
  210. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-setTimeout.js +443 -0
  211. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-window-open.js +471 -0
  212. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-xhr.js +584 -0
  213. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-attr.js +405 -0
  214. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.remove-cookie.js +376 -0
  215. package/extensions/ublocklite/rulesets/scripting/scriptlet/{ublock-experimental.trusted-replace-node-text.js → irn-0.remove-node-text.js} +8 -9
  216. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-attr.js +425 -0
  217. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-constant.js +541 -0
  218. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-local-storage-item.js +2 -2
  219. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.set-session-storage-item.js +2 -2
  220. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.abort-current-script.js +2 -2
  221. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.abort-on-property-write.js +2 -2
  222. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.href-sanitizer.js +2 -2
  223. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.spoof-css.js +2 -2
  224. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +1 -1
  225. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-write.js +2 -2
  226. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
  227. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +2 -2
  228. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +3 -3
  229. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-cookie.js +2 -2
  230. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +3 -3
  231. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-on-property-read.js +2 -2
  232. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.addEventListener-defuser.js +3 -3
  233. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.noeval-if.js +3 -3
  234. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +2 -2
  235. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-window-open.js +1 -1
  236. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.remove-attr.js +1 -1
  237. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +2 -2
  238. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.prevent-xhr.js +1 -1
  239. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +1 -1
  240. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
  241. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.adjust-setTimeout.js +1 -1
  242. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +1 -1
  243. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
  244. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-local-storage-item.js +3 -3
  245. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
  246. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +2 -2
  247. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-write.js +2 -2
  248. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +2 -2
  249. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +3 -3
  250. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setInterval.js +3 -3
  251. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setTimeout.js +2 -2
  252. package/extensions/ublocklite/rulesets/scripting/scriptlet/{ublock-filters.trusted-json-edit-fetch-request.js → ublock-filters.json-edit-fetch-response.js} +109 -66
  253. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit.js +69 -29
  254. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
  255. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune.js +2 -2
  256. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +68 -28
  257. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +3 -3
  258. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +3 -3
  259. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +3 -3
  260. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +2 -2
  261. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +3 -3
  262. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +3 -3
  263. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-cookie.js +2 -2
  264. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +2 -2
  265. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +3 -3
  266. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.js +2 -2
  267. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-local-storage-item.js +2 -2
  268. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-create-html.js +2 -2
  269. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-response.js +68 -28
  270. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-argument.js +2 -2
  271. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +3 -3
  272. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +2 -2
  273. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +2 -2
  274. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-local-storage-item.js +1 -1
  275. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +68 -28
  276. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +68 -28
  277. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +2 -2
  278. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +2 -2
  279. package/extensions/ublocklite/rulesets/scripting/specific/adguard-mobile.js +3 -3
  280. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
  281. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-notifications.js +42 -0
  282. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
  283. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
  284. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +3 -3
  285. package/extensions/ublocklite/rulesets/scripting/specific/bgr-0.js +3 -3
  286. package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
  287. package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
  288. package/extensions/ublocklite/rulesets/scripting/specific/easylist.js +3 -3
  289. package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
  290. package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
  291. package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +3 -3
  292. package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
  293. package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
  294. package/extensions/ublocklite/rulesets/scripting/specific/irn-0.js +3 -3
  295. package/extensions/ublocklite/rulesets/scripting/specific/isr-0.js +3 -3
  296. package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
  297. package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
  298. package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
  299. package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
  300. package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +1 -1
  301. package/extensions/ublocklite/rulesets/scripting/specific/pol-0.js +3 -3
  302. package/extensions/ublocklite/rulesets/scripting/specific/rou-1.js +3 -3
  303. package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
  304. package/extensions/ublocklite/rulesets/scripting/specific/rus-1.js +3 -3
  305. package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
  306. package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
  307. package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
  308. package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
  309. package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +3 -3
  310. package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
  311. package/extensions/ublocklite/rulesets/scriptlet-details.json +521 -135
  312. package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +16 -0
  313. package/extensions/ublocklite/rulesets/strictblock/annoyances-notifications.json +41 -0
  314. package/extensions/ublocklite/rulesets/strictblock/bgr-0.json +1 -2
  315. package/extensions/ublocklite/rulesets/strictblock/chn-0.json +112 -0
  316. package/extensions/ublocklite/rulesets/strictblock/dpollock-0.json +5 -0
  317. package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
  318. package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +36 -71
  319. package/extensions/ublocklite/rulesets/strictblock/fra-0.json +270 -16
  320. package/extensions/ublocklite/rulesets/strictblock/hun-0.json +1 -0
  321. package/extensions/ublocklite/rulesets/strictblock/irn-0.json +249 -2
  322. package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +182 -177
  323. package/extensions/ublocklite/rulesets/strictblock/kor-1.json +1 -0
  324. package/extensions/ublocklite/rulesets/strictblock/nor-0.json +6 -4
  325. package/extensions/ublocklite/rulesets/strictblock/pgl.json +8 -6
  326. package/extensions/ublocklite/rulesets/strictblock/pol-0.json +1 -0
  327. package/extensions/ublocklite/rulesets/strictblock/rus-1.json +1 -0
  328. package/extensions/ublocklite/rulesets/strictblock/spa-1.json +2 -0
  329. package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +5438 -4232
  330. package/extensions/ublocklite/rulesets/strictblock/swe-1.json +3 -0
  331. package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +679 -675
  332. package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +1 -1
  333. package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +326 -356
  334. package/extensions/ublocklite/rulesets/strictblock/vie-1.json +1 -1
  335. package/extensions/ublocklite/rulesets/urlskip/ublock-filters.json +37 -12
  336. package/extensions/ublocklite/ublock.zip +0 -0
  337. package/package.json +8 -8
  338. package/scripts/build-open-api.js +15 -1
  339. package/src/shared/content.http.ts +9 -1
  340. package/src/shared/pdf.http.ts +9 -1
  341. package/src/shared/scrape.http.ts +9 -1
  342. package/src/shared/screenshot.http.ts +9 -1
  343. package/src/types.ts +7 -1
  344. package/src/utils.ts +4 -2
  345. package/static/docs/swagger.json +218 -122
  346. package/static/docs/swagger.min.json +217 -121
  347. package/static/function/client.js +71 -68
  348. package/static/function/index.html +71 -68
  349. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-xhr-request.js +0 -795
  350. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.overlay-buster.js +0 -165
  351. package/extensions/ublocklite/rulesets/scripting/specific/easyprivacy.js +0 -42
@@ -86,7 +86,24 @@
86
86
  "type": "string"
87
87
  },
88
88
  "response": {
89
- "$ref": "#/definitions/Partial<ResponseForRequest>"
89
+ "additionalProperties": false,
90
+ "type": "object",
91
+ "properties": {
92
+ "headers": {
93
+ "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
94
+ "$ref": "#/definitions/Record<string,unknown>"
95
+ },
96
+ "status": {
97
+ "type": "number"
98
+ },
99
+ "contentType": {
100
+ "type": "string"
101
+ },
102
+ "body": {
103
+ "description": "A string representation of the body to return. Can be a base64-encoded\nstring but please omit any leading content-type data (eg \"data:image/png;base64,\").",
104
+ "type": "string"
105
+ }
106
+ }
90
107
  }
91
108
  },
92
109
  "additionalProperties": false,
@@ -425,118 +442,10 @@
425
442
  "reason"
426
443
  ]
427
444
  },
428
- "Partial<ResponseForRequest>": {
429
- "type": "object",
430
- "properties": {
431
- "status": {
432
- "type": "number"
433
- },
434
- "headers": {
435
- "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
436
- "$ref": "#/definitions/Record<string,unknown>"
437
- },
438
- "contentType": {
439
- "type": "string"
440
- },
441
- "body": {
442
- "anyOf": [
443
- {
444
- "type": "object",
445
- "additionalProperties": false,
446
- "patternProperties": {
447
- "^[0-9]+$": {
448
- "type": "number"
449
- }
450
- },
451
- "properties": {
452
- "BYTES_PER_ELEMENT": {
453
- "type": "number"
454
- },
455
- "buffer": {
456
- "$ref": "#/definitions/ArrayBufferLike"
457
- },
458
- "byteLength": {
459
- "type": "number"
460
- },
461
- "byteOffset": {
462
- "type": "number"
463
- },
464
- "length": {
465
- "type": "number"
466
- },
467
- "__@toStringTag@324755": {
468
- "type": "string",
469
- "const": "Uint8Array"
470
- }
471
- },
472
- "required": [
473
- "BYTES_PER_ELEMENT",
474
- "__@toStringTag@324755",
475
- "buffer",
476
- "byteLength",
477
- "byteOffset",
478
- "length"
479
- ]
480
- },
481
- {
482
- "type": "string"
483
- }
484
- ]
485
- }
486
- },
487
- "additionalProperties": false
488
- },
489
445
  "Record<string,unknown>": {
490
446
  "type": "object",
491
447
  "additionalProperties": false
492
448
  },
493
- "ArrayBufferLike": {
494
- "anyOf": [
495
- {
496
- "$ref": "#/definitions/ArrayBuffer"
497
- },
498
- {
499
- "$ref": "#/definitions/SharedArrayBuffer"
500
- }
501
- ]
502
- },
503
- "ArrayBuffer": {
504
- "type": "object",
505
- "properties": {
506
- "byteLength": {
507
- "type": "number"
508
- },
509
- "__@toStringTag@324755": {
510
- "type": "string"
511
- }
512
- },
513
- "additionalProperties": false,
514
- "required": [
515
- "__@toStringTag@324755",
516
- "byteLength"
517
- ]
518
- },
519
- "SharedArrayBuffer": {
520
- "type": "object",
521
- "properties": {
522
- "byteLength": {
523
- "type": "number"
524
- },
525
- "__@species@334238": {
526
- "$ref": "#/definitions/SharedArrayBuffer"
527
- },
528
- "__@toStringTag@324755": {
529
- "type": "string",
530
- "const": "SharedArrayBuffer"
531
- }
532
- },
533
- "additionalProperties": false,
534
- "required": [
535
- "__@species@334238",
536
- "__@toStringTag@324755",
537
- "byteLength"
538
- ]
539
- },
540
449
  "Record<string,string>": {
541
450
  "type": "object",
542
451
  "additionalProperties": false
@@ -89,7 +89,24 @@
89
89
  "type": "string"
90
90
  },
91
91
  "response": {
92
- "$ref": "#/definitions/Partial<ResponseForRequest>"
92
+ "additionalProperties": false,
93
+ "type": "object",
94
+ "properties": {
95
+ "headers": {
96
+ "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
97
+ "$ref": "#/definitions/Record<string,unknown>"
98
+ },
99
+ "status": {
100
+ "type": "number"
101
+ },
102
+ "contentType": {
103
+ "type": "string"
104
+ },
105
+ "body": {
106
+ "description": "A string representation of the body to return. Can be a base64-encoded\nstring but please omit any leading content-type data (eg \"data:image/png;base64,\").",
107
+ "type": "string"
108
+ }
109
+ }
93
110
  }
94
111
  },
95
112
  "additionalProperties": false,
@@ -570,118 +587,10 @@
570
587
  },
571
588
  "additionalProperties": false
572
589
  },
573
- "Partial<ResponseForRequest>": {
574
- "type": "object",
575
- "properties": {
576
- "status": {
577
- "type": "number"
578
- },
579
- "headers": {
580
- "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
581
- "$ref": "#/definitions/Record<string,unknown>"
582
- },
583
- "contentType": {
584
- "type": "string"
585
- },
586
- "body": {
587
- "anyOf": [
588
- {
589
- "type": "object",
590
- "additionalProperties": false,
591
- "patternProperties": {
592
- "^[0-9]+$": {
593
- "type": "number"
594
- }
595
- },
596
- "properties": {
597
- "BYTES_PER_ELEMENT": {
598
- "type": "number"
599
- },
600
- "buffer": {
601
- "$ref": "#/definitions/ArrayBufferLike"
602
- },
603
- "byteLength": {
604
- "type": "number"
605
- },
606
- "byteOffset": {
607
- "type": "number"
608
- },
609
- "length": {
610
- "type": "number"
611
- },
612
- "__@toStringTag@563136": {
613
- "type": "string",
614
- "const": "Uint8Array"
615
- }
616
- },
617
- "required": [
618
- "BYTES_PER_ELEMENT",
619
- "__@toStringTag@563136",
620
- "buffer",
621
- "byteLength",
622
- "byteOffset",
623
- "length"
624
- ]
625
- },
626
- {
627
- "type": "string"
628
- }
629
- ]
630
- }
631
- },
632
- "additionalProperties": false
633
- },
634
590
  "Record<string,unknown>": {
635
591
  "type": "object",
636
592
  "additionalProperties": false
637
593
  },
638
- "ArrayBufferLike": {
639
- "anyOf": [
640
- {
641
- "$ref": "#/definitions/ArrayBuffer"
642
- },
643
- {
644
- "$ref": "#/definitions/SharedArrayBuffer"
645
- }
646
- ]
647
- },
648
- "ArrayBuffer": {
649
- "type": "object",
650
- "properties": {
651
- "byteLength": {
652
- "type": "number"
653
- },
654
- "__@toStringTag@563136": {
655
- "type": "string"
656
- }
657
- },
658
- "additionalProperties": false,
659
- "required": [
660
- "__@toStringTag@563136",
661
- "byteLength"
662
- ]
663
- },
664
- "SharedArrayBuffer": {
665
- "type": "object",
666
- "properties": {
667
- "byteLength": {
668
- "type": "number"
669
- },
670
- "__@species@572642": {
671
- "$ref": "#/definitions/SharedArrayBuffer"
672
- },
673
- "__@toStringTag@563136": {
674
- "type": "string",
675
- "const": "SharedArrayBuffer"
676
- }
677
- },
678
- "additionalProperties": false,
679
- "required": [
680
- "__@species@572642",
681
- "__@toStringTag@563136",
682
- "byteLength"
683
- ]
684
- },
685
594
  "Record<string,string>": {
686
595
  "type": "object",
687
596
  "additionalProperties": false
@@ -95,7 +95,24 @@
95
95
  "type": "string"
96
96
  },
97
97
  "response": {
98
- "$ref": "#/definitions/Partial<ResponseForRequest>"
98
+ "additionalProperties": false,
99
+ "type": "object",
100
+ "properties": {
101
+ "headers": {
102
+ "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
103
+ "$ref": "#/definitions/Record<string,unknown>"
104
+ },
105
+ "status": {
106
+ "type": "number"
107
+ },
108
+ "contentType": {
109
+ "type": "string"
110
+ },
111
+ "body": {
112
+ "description": "A string representation of the body to return. Can be a base64-encoded\nstring but please omit any leading content-type data (eg \"data:image/png;base64,\").",
113
+ "type": "string"
114
+ }
115
+ }
99
116
  }
100
117
  },
101
118
  "additionalProperties": false,
@@ -472,118 +489,10 @@
472
489
  "reason"
473
490
  ]
474
491
  },
475
- "Partial<ResponseForRequest>": {
476
- "type": "object",
477
- "properties": {
478
- "status": {
479
- "type": "number"
480
- },
481
- "headers": {
482
- "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
483
- "$ref": "#/definitions/Record<string,unknown>"
484
- },
485
- "contentType": {
486
- "type": "string"
487
- },
488
- "body": {
489
- "anyOf": [
490
- {
491
- "type": "object",
492
- "additionalProperties": false,
493
- "patternProperties": {
494
- "^[0-9]+$": {
495
- "type": "number"
496
- }
497
- },
498
- "properties": {
499
- "BYTES_PER_ELEMENT": {
500
- "type": "number"
501
- },
502
- "buffer": {
503
- "$ref": "#/definitions/ArrayBufferLike"
504
- },
505
- "byteLength": {
506
- "type": "number"
507
- },
508
- "byteOffset": {
509
- "type": "number"
510
- },
511
- "length": {
512
- "type": "number"
513
- },
514
- "__@toStringTag@451852": {
515
- "type": "string",
516
- "const": "Uint8Array"
517
- }
518
- },
519
- "required": [
520
- "BYTES_PER_ELEMENT",
521
- "__@toStringTag@451852",
522
- "buffer",
523
- "byteLength",
524
- "byteOffset",
525
- "length"
526
- ]
527
- },
528
- {
529
- "type": "string"
530
- }
531
- ]
532
- }
533
- },
534
- "additionalProperties": false
535
- },
536
492
  "Record<string,unknown>": {
537
493
  "type": "object",
538
494
  "additionalProperties": false
539
495
  },
540
- "ArrayBufferLike": {
541
- "anyOf": [
542
- {
543
- "$ref": "#/definitions/ArrayBuffer"
544
- },
545
- {
546
- "$ref": "#/definitions/SharedArrayBuffer"
547
- }
548
- ]
549
- },
550
- "ArrayBuffer": {
551
- "type": "object",
552
- "properties": {
553
- "byteLength": {
554
- "type": "number"
555
- },
556
- "__@toStringTag@451852": {
557
- "type": "string"
558
- }
559
- },
560
- "additionalProperties": false,
561
- "required": [
562
- "__@toStringTag@451852",
563
- "byteLength"
564
- ]
565
- },
566
- "SharedArrayBuffer": {
567
- "type": "object",
568
- "properties": {
569
- "byteLength": {
570
- "type": "number"
571
- },
572
- "__@species@461345": {
573
- "$ref": "#/definitions/SharedArrayBuffer"
574
- },
575
- "__@toStringTag@451852": {
576
- "type": "string",
577
- "const": "SharedArrayBuffer"
578
- }
579
- },
580
- "additionalProperties": false,
581
- "required": [
582
- "__@species@461345",
583
- "__@toStringTag@451852",
584
- "byteLength"
585
- ]
586
- },
587
496
  "Record<string,string>": {
588
497
  "type": "object",
589
498
  "additionalProperties": false
@@ -89,7 +89,24 @@
89
89
  "type": "string"
90
90
  },
91
91
  "response": {
92
- "$ref": "#/definitions/Partial<ResponseForRequest>"
92
+ "additionalProperties": false,
93
+ "type": "object",
94
+ "properties": {
95
+ "headers": {
96
+ "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
97
+ "$ref": "#/definitions/Record<string,unknown>"
98
+ },
99
+ "status": {
100
+ "type": "number"
101
+ },
102
+ "contentType": {
103
+ "type": "string"
104
+ },
105
+ "body": {
106
+ "description": "A string representation of the body to return. Can be a base64-encoded\nstring but please omit any leading content-type data (eg \"data:image/png;base64,\").",
107
+ "type": "string"
108
+ }
109
+ }
93
110
  }
94
111
  },
95
112
  "additionalProperties": false,
@@ -528,118 +545,10 @@
528
545
  "y"
529
546
  ]
530
547
  },
531
- "Partial<ResponseForRequest>": {
532
- "type": "object",
533
- "properties": {
534
- "status": {
535
- "type": "number"
536
- },
537
- "headers": {
538
- "description": "Optional response headers.\n\nThe record values will be converted to string following:\nArrays' values will be mapped to String\n(Used when you need multiple headers with the same name).\nNon-arrays will be converted to String.",
539
- "$ref": "#/definitions/Record<string,unknown>"
540
- },
541
- "contentType": {
542
- "type": "string"
543
- },
544
- "body": {
545
- "anyOf": [
546
- {
547
- "type": "object",
548
- "additionalProperties": false,
549
- "patternProperties": {
550
- "^[0-9]+$": {
551
- "type": "number"
552
- }
553
- },
554
- "properties": {
555
- "BYTES_PER_ELEMENT": {
556
- "type": "number"
557
- },
558
- "buffer": {
559
- "$ref": "#/definitions/ArrayBufferLike"
560
- },
561
- "byteLength": {
562
- "type": "number"
563
- },
564
- "byteOffset": {
565
- "type": "number"
566
- },
567
- "length": {
568
- "type": "number"
569
- },
570
- "__@toStringTag@467957": {
571
- "type": "string",
572
- "const": "Uint8Array"
573
- }
574
- },
575
- "required": [
576
- "BYTES_PER_ELEMENT",
577
- "__@toStringTag@467957",
578
- "buffer",
579
- "byteLength",
580
- "byteOffset",
581
- "length"
582
- ]
583
- },
584
- {
585
- "type": "string"
586
- }
587
- ]
588
- }
589
- },
590
- "additionalProperties": false
591
- },
592
548
  "Record<string,unknown>": {
593
549
  "type": "object",
594
550
  "additionalProperties": false
595
551
  },
596
- "ArrayBufferLike": {
597
- "anyOf": [
598
- {
599
- "$ref": "#/definitions/ArrayBuffer"
600
- },
601
- {
602
- "$ref": "#/definitions/SharedArrayBuffer"
603
- }
604
- ]
605
- },
606
- "ArrayBuffer": {
607
- "type": "object",
608
- "properties": {
609
- "byteLength": {
610
- "type": "number"
611
- },
612
- "__@toStringTag@467957": {
613
- "type": "string"
614
- }
615
- },
616
- "additionalProperties": false,
617
- "required": [
618
- "__@toStringTag@467957",
619
- "byteLength"
620
- ]
621
- },
622
- "SharedArrayBuffer": {
623
- "type": "object",
624
- "properties": {
625
- "byteLength": {
626
- "type": "number"
627
- },
628
- "__@species@477461": {
629
- "$ref": "#/definitions/SharedArrayBuffer"
630
- },
631
- "__@toStringTag@467957": {
632
- "type": "string",
633
- "const": "SharedArrayBuffer"
634
- }
635
- },
636
- "additionalProperties": false,
637
- "required": [
638
- "__@species@477461",
639
- "__@toStringTag@467957",
640
- "byteLength"
641
- ]
642
- },
643
552
  "Record<string,string>": {
644
553
  "type": "object",
645
554
  "additionalProperties": false
@@ -1,4 +1,4 @@
1
- import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, writeResponse, } from '@browserless.io/browserless';
1
+ import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, isBase64Encoded, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, writeResponse, } from '@browserless.io/browserless';
2
2
  export default class ChromiumContentPostRoute extends BrowserHTTPRoute {
3
3
  name = BrowserlessRoutes.ChromiumContentPostRoute;
4
4
  accepts = [contentTypes.json];
@@ -59,7 +59,14 @@ export default class ChromiumContentPostRoute extends BrowserHTTPRoute {
59
59
  }
60
60
  const interceptor = requestInterceptors.find((r) => req.url().match(r.pattern));
61
61
  if (interceptor) {
62
- return req.respond(interceptor.response);
62
+ return req.respond({
63
+ ...interceptor.response,
64
+ body: interceptor.response.body
65
+ ? isBase64Encoded(interceptor.response.body)
66
+ ? Buffer.from(interceptor.response.body, 'base64')
67
+ : interceptor.response.body
68
+ : undefined,
69
+ });
63
70
  }
64
71
  return req.continue();
65
72
  });
@@ -1,4 +1,4 @@
1
- import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, dedent, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
1
+ import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, dedent, isBase64Encoded, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
2
2
  export default class ChromiumPDFPostRoute extends BrowserHTTPRoute {
3
3
  name = BrowserlessRoutes.ChromiumPDFPostRoute;
4
4
  accepts = [contentTypes.json];
@@ -64,7 +64,14 @@ export default class ChromiumPDFPostRoute extends BrowserHTTPRoute {
64
64
  }
65
65
  const interceptor = requestInterceptors.find((r) => req.url().match(r.pattern));
66
66
  if (interceptor) {
67
- return req.respond(interceptor.response);
67
+ return req.respond({
68
+ ...interceptor.response,
69
+ body: interceptor.response.body
70
+ ? isBase64Encoded(interceptor.response.body)
71
+ ? Buffer.from(interceptor.response.body, 'base64')
72
+ : interceptor.response.body
73
+ : undefined,
74
+ });
68
75
  }
69
76
  return req.continue();
70
77
  });
@@ -1,4 +1,4 @@
1
- import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, Timeout, bestAttemptCatch, contentTypes, debugScreenshotOpts, dedent, jsonResponse, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
1
+ import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, Timeout, bestAttemptCatch, contentTypes, debugScreenshotOpts, dedent, isBase64Encoded, jsonResponse, noop, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
2
2
  const scrape = async (elements) => {
3
3
  const wait = (selector, timeout = 30000) => {
4
4
  return new Promise((resolve, reject) => {
@@ -127,7 +127,14 @@ export default class ChromiumScrapePostRoute extends BrowserHTTPRoute {
127
127
  }
128
128
  const interceptor = requestInterceptors.find((r) => req.url().match(r.pattern));
129
129
  if (interceptor) {
130
- return req.respond(interceptor.response);
130
+ return req.respond({
131
+ ...interceptor.response,
132
+ body: interceptor.response.body
133
+ ? isBase64Encoded(interceptor.response.body)
134
+ ? Buffer.from(interceptor.response.body, 'base64')
135
+ : interceptor.response.body
136
+ : undefined,
137
+ });
131
138
  }
132
139
  return req.continue();
133
140
  });
@@ -1,4 +1,4 @@
1
- import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, dedent, noop, scrollThroughPage, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
1
+ import { APITags, BadRequest, BrowserHTTPRoute, BrowserlessRoutes, ChromiumCDP, HTTPRoutes, Methods, bestAttemptCatch, contentTypes, dedent, isBase64Encoded, noop, scrollThroughPage, sleep, waitForEvent as waitForEvt, waitForFunction as waitForFn, } from '@browserless.io/browserless';
2
2
  import Stream from 'stream';
3
3
  export default class ScreenshotPost extends BrowserHTTPRoute {
4
4
  name = BrowserlessRoutes.ChromiumScreenshotPostRoute;
@@ -67,7 +67,14 @@ export default class ScreenshotPost extends BrowserHTTPRoute {
67
67
  }
68
68
  const interceptor = requestInterceptors.find((r) => req.url().match(r.pattern));
69
69
  if (interceptor) {
70
- return req.respond(interceptor.response);
70
+ return req.respond({
71
+ ...interceptor.response,
72
+ body: interceptor.response.body
73
+ ? isBase64Encoded(interceptor.response.body)
74
+ ? Buffer.from(interceptor.response.body, 'base64')
75
+ : interceptor.response.body
76
+ : undefined,
77
+ });
71
78
  }
72
79
  return req.continue();
73
80
  });
package/build/types.d.ts CHANGED
@@ -406,7 +406,13 @@ export type requestInterceptors = {
406
406
  * corresponding responses to use in order to fulfill those requests.
407
407
  */
408
408
  pattern: string;
409
- response: Partial<ResponseForRequest>;
409
+ response: Partial<Omit<ResponseForRequest, 'body'>> & {
410
+ /**
411
+ * A string representation of the body to return. Can be a base64-encoded
412
+ * string but please omit any leading content-type data (eg "data:image/png;base64,").
413
+ */
414
+ body?: string;
415
+ };
410
416
  };
411
417
  export interface IResourceLoad {
412
418
  cpu: number | null;