@browserless.io/browserless 2.32.1 → 2.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/build/browsers/browsers.playwright.d.ts +1 -1
  3. package/build/browsers/browsers.playwright.js +6 -3
  4. package/build/routes/chrome/http/content.post.body.json +9 -8
  5. package/build/routes/chrome/http/pdf.post.body.json +9 -8
  6. package/build/routes/chrome/http/scrape.post.body.json +9 -8
  7. package/build/routes/chrome/http/screenshot.post.body.json +9 -8
  8. package/build/routes/chrome/tests/websocket.spec.js +2 -0
  9. package/build/routes/chromium/http/content.post.body.json +9 -8
  10. package/build/routes/chromium/http/pdf.post.body.json +9 -8
  11. package/build/routes/chromium/http/scrape.post.body.json +9 -8
  12. package/build/routes/chromium/http/screenshot.post.body.json +9 -8
  13. package/build/routes/chromium/tests/websocket.spec.js +2 -0
  14. package/build/routes/edge/http/content.post.body.json +9 -8
  15. package/build/routes/edge/http/pdf.post.body.json +9 -8
  16. package/build/routes/edge/http/scrape.post.body.json +9 -8
  17. package/build/routes/edge/http/screenshot.post.body.json +9 -8
  18. package/build/routes/edge/tests/websocket.spec.js +2 -0
  19. package/build/routes/firefox/tests/websocket.spec.js +2 -0
  20. package/build/routes/webkit/tests/websocket.spec.js +2 -0
  21. package/extensions/ublocklite/_locales/ar/messages.json +34 -2
  22. package/extensions/ublocklite/_locales/az/messages.json +34 -2
  23. package/extensions/ublocklite/_locales/be/messages.json +33 -1
  24. package/extensions/ublocklite/_locales/bg/messages.json +32 -0
  25. package/extensions/ublocklite/_locales/bn/messages.json +32 -0
  26. package/extensions/ublocklite/_locales/br_FR/messages.json +32 -0
  27. package/extensions/ublocklite/_locales/bs/messages.json +34 -2
  28. package/extensions/ublocklite/_locales/ca/messages.json +32 -0
  29. package/extensions/ublocklite/_locales/cs/messages.json +34 -2
  30. package/extensions/ublocklite/_locales/cv/messages.json +34 -2
  31. package/extensions/ublocklite/_locales/cy/messages.json +32 -0
  32. package/extensions/ublocklite/_locales/da/messages.json +32 -0
  33. package/extensions/ublocklite/_locales/de/messages.json +34 -2
  34. package/extensions/ublocklite/_locales/el/messages.json +32 -0
  35. package/extensions/ublocklite/_locales/en/messages.json +34 -2
  36. package/extensions/ublocklite/_locales/en_GB/messages.json +32 -0
  37. package/extensions/ublocklite/_locales/eo/messages.json +34 -2
  38. package/extensions/ublocklite/_locales/es/messages.json +34 -2
  39. package/extensions/ublocklite/_locales/et/messages.json +41 -9
  40. package/extensions/ublocklite/_locales/eu/messages.json +32 -0
  41. package/extensions/ublocklite/_locales/fa/messages.json +34 -2
  42. package/extensions/ublocklite/_locales/fi/messages.json +32 -0
  43. package/extensions/ublocklite/_locales/fil/messages.json +32 -0
  44. package/extensions/ublocklite/_locales/fr/messages.json +34 -2
  45. package/extensions/ublocklite/_locales/fy/messages.json +34 -2
  46. package/extensions/ublocklite/_locales/gl/messages.json +32 -0
  47. package/extensions/ublocklite/_locales/gu/messages.json +34 -2
  48. package/extensions/ublocklite/_locales/he/messages.json +33 -1
  49. package/extensions/ublocklite/_locales/hi/messages.json +33 -1
  50. package/extensions/ublocklite/_locales/hr/messages.json +34 -2
  51. package/extensions/ublocklite/_locales/hu/messages.json +32 -0
  52. package/extensions/ublocklite/_locales/hy/messages.json +33 -1
  53. package/extensions/ublocklite/_locales/id/messages.json +32 -0
  54. package/extensions/ublocklite/_locales/it/messages.json +32 -0
  55. package/extensions/ublocklite/_locales/ja/messages.json +32 -0
  56. package/extensions/ublocklite/_locales/ka/messages.json +32 -0
  57. package/extensions/ublocklite/_locales/kk/messages.json +34 -2
  58. package/extensions/ublocklite/_locales/kn/messages.json +34 -2
  59. package/extensions/ublocklite/_locales/ko/messages.json +32 -0
  60. package/extensions/ublocklite/_locales/lt/messages.json +34 -2
  61. package/extensions/ublocklite/_locales/lv/messages.json +32 -0
  62. package/extensions/ublocklite/_locales/mk/messages.json +33 -1
  63. package/extensions/ublocklite/_locales/ml/messages.json +34 -2
  64. package/extensions/ublocklite/_locales/mr/messages.json +34 -2
  65. package/extensions/ublocklite/_locales/ms/messages.json +34 -2
  66. package/extensions/ublocklite/_locales/nb/messages.json +32 -0
  67. package/extensions/ublocklite/_locales/nl/messages.json +34 -2
  68. package/extensions/ublocklite/_locales/oc/messages.json +34 -2
  69. package/extensions/ublocklite/_locales/pa/messages.json +33 -1
  70. package/extensions/ublocklite/_locales/pl/messages.json +33 -1
  71. package/extensions/ublocklite/_locales/pt_BR/messages.json +56 -24
  72. package/extensions/ublocklite/_locales/pt_PT/messages.json +32 -0
  73. package/extensions/ublocklite/_locales/ro/messages.json +33 -1
  74. package/extensions/ublocklite/_locales/ru/messages.json +34 -2
  75. package/extensions/ublocklite/_locales/si/messages.json +32 -0
  76. package/extensions/ublocklite/_locales/sk/messages.json +32 -0
  77. package/extensions/ublocklite/_locales/sl/messages.json +34 -2
  78. package/extensions/ublocklite/_locales/so/messages.json +34 -2
  79. package/extensions/ublocklite/_locales/sq/messages.json +32 -0
  80. package/extensions/ublocklite/_locales/sr/messages.json +33 -1
  81. package/extensions/ublocklite/_locales/sv/messages.json +34 -2
  82. package/extensions/ublocklite/_locales/sw/messages.json +34 -2
  83. package/extensions/ublocklite/_locales/ta/messages.json +34 -2
  84. package/extensions/ublocklite/_locales/te/messages.json +34 -2
  85. package/extensions/ublocklite/_locales/th/messages.json +33 -1
  86. package/extensions/ublocklite/_locales/tr/messages.json +32 -0
  87. package/extensions/ublocklite/_locales/uk/messages.json +32 -0
  88. package/extensions/ublocklite/_locales/ur/messages.json +34 -2
  89. package/extensions/ublocklite/_locales/vi/messages.json +32 -0
  90. package/extensions/ublocklite/_locales/zh_CN/messages.json +39 -7
  91. package/extensions/ublocklite/_locales/zh_TW/messages.json +32 -0
  92. package/extensions/ublocklite/css/dashboard.css +0 -1
  93. package/extensions/ublocklite/css/default.css +1 -1
  94. package/extensions/ublocklite/css/develop.css +25 -2
  95. package/extensions/ublocklite/css/fonts/Inter/Inter-Regular.woff2 +0 -0
  96. package/extensions/ublocklite/css/fonts/Inter/Inter-SemiBold.woff2 +0 -0
  97. package/extensions/ublocklite/css/picker-ui.css +144 -0
  98. package/extensions/ublocklite/css/popup.css +91 -181
  99. package/extensions/ublocklite/css/tool-overlay-ui.css +99 -0
  100. package/extensions/ublocklite/css/unpicker-ui.css +62 -0
  101. package/extensions/ublocklite/css/zapper-ui.css +4 -42
  102. package/extensions/ublocklite/dashboard.html +4 -1
  103. package/extensions/ublocklite/js/background.js +67 -21
  104. package/extensions/ublocklite/js/dashboard.js +6 -1
  105. package/extensions/ublocklite/js/debug.js +9 -9
  106. package/extensions/ublocklite/js/develop.js +14 -12
  107. package/extensions/ublocklite/js/ext-compat.js +1 -1
  108. package/extensions/ublocklite/js/ext.js +11 -0
  109. package/extensions/ublocklite/js/filter-manager.js +157 -0
  110. package/extensions/ublocklite/js/mode-editor.js +10 -6
  111. package/extensions/ublocklite/js/picker-ui.js +431 -0
  112. package/extensions/ublocklite/js/popup.js +35 -106
  113. package/extensions/ublocklite/js/report.js +4 -105
  114. package/extensions/ublocklite/js/scripting/css-user.js +37 -0
  115. package/extensions/ublocklite/js/scripting/isolated-api.js +1 -1
  116. package/extensions/ublocklite/js/scripting/picker.js +270 -0
  117. package/extensions/ublocklite/js/scripting/tool-overlay.js +360 -0
  118. package/extensions/ublocklite/js/scripting/unpicker.js +61 -0
  119. package/extensions/ublocklite/js/scripting/zapper.js +25 -308
  120. package/extensions/ublocklite/js/scripting-manager.js +11 -7
  121. package/extensions/ublocklite/js/tool-overlay-ui.js +241 -0
  122. package/extensions/ublocklite/js/troubleshooting.js +123 -0
  123. package/extensions/ublocklite/js/ubo-parser.js +5 -1
  124. package/extensions/ublocklite/js/unpicker-ui.js +164 -0
  125. package/extensions/ublocklite/js/zapper-ui.js +44 -149
  126. package/extensions/ublocklite/lib/codemirror/cm6.bundle.ubol.min.js +1 -1
  127. package/extensions/ublocklite/manifest.json +22 -1
  128. package/extensions/ublocklite/picker-ui.html +56 -0
  129. package/extensions/ublocklite/popup.html +22 -21
  130. package/extensions/ublocklite/report.html +1 -1
  131. package/extensions/ublocklite/rulesets/generic-details.json +5 -61
  132. package/extensions/ublocklite/rulesets/main/adguard-mobile.json +5 -8
  133. package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +14 -13
  134. package/extensions/ublocklite/rulesets/main/annoyances-others.json +2 -1
  135. package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +5 -14
  136. package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +1 -1
  137. package/extensions/ublocklite/rulesets/main/block-lan.json +2 -1
  138. package/extensions/ublocklite/rulesets/main/chn-0.json +25 -16
  139. package/extensions/ublocklite/rulesets/main/deu-0.json +1 -1
  140. package/extensions/ublocklite/rulesets/main/dpollock-0.json +4 -0
  141. package/extensions/ublocklite/rulesets/main/easylist.json +21 -26
  142. package/extensions/ublocklite/rulesets/main/easyprivacy.json +43 -15
  143. package/extensions/ublocklite/rulesets/main/fin-0.json +8 -20
  144. package/extensions/ublocklite/rulesets/main/fra-0.json +7 -25
  145. package/extensions/ublocklite/rulesets/main/hun-0.json +5 -2
  146. package/extensions/ublocklite/rulesets/main/idn-0.json +9 -3
  147. package/extensions/ublocklite/rulesets/main/ind-0.json +51 -37
  148. package/extensions/ublocklite/rulesets/main/isr-0.json +1 -1
  149. package/extensions/ublocklite/rulesets/main/ita-0.json +1 -0
  150. package/extensions/ublocklite/rulesets/main/jpn-1.json +21 -33
  151. package/extensions/ublocklite/rulesets/main/kor-1.json +5 -1
  152. package/extensions/ublocklite/rulesets/main/nld-0.json +1 -1
  153. package/extensions/ublocklite/rulesets/main/nor-0.json +25 -3
  154. package/extensions/ublocklite/rulesets/main/pgl.json +4 -22
  155. package/extensions/ublocklite/rulesets/main/pol-0.json +2 -0
  156. package/extensions/ublocklite/rulesets/main/rus-0.json +28 -42
  157. package/extensions/ublocklite/rulesets/main/rus-1.json +3 -2
  158. package/extensions/ublocklite/rulesets/main/spa-1.json +12 -14
  159. package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +18360 -761
  160. package/extensions/ublocklite/rulesets/main/swe-1.json +37 -36
  161. package/extensions/ublocklite/rulesets/main/tur-0.json +27 -17
  162. package/extensions/ublocklite/rulesets/main/ublock-badware.json +10 -5
  163. package/extensions/ublocklite/rulesets/main/ublock-filters.json +75 -96
  164. package/extensions/ublocklite/rulesets/main/ukr-0.json +5 -11
  165. package/extensions/ublocklite/rulesets/main/urlhaus-full.json +333 -648
  166. package/extensions/ublocklite/rulesets/main/vie-1.json +28 -28
  167. package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +4 -0
  168. package/extensions/ublocklite/rulesets/modify-headers/easylist.json +1 -1
  169. package/extensions/ublocklite/rulesets/modify-headers/fra-0.json +1 -0
  170. package/extensions/ublocklite/rulesets/modify-headers/swe-1.json +1 -2
  171. package/extensions/ublocklite/rulesets/modify-headers/ublock-filters.json +3 -6
  172. package/extensions/ublocklite/rulesets/modify-headers/vie-1.json +2 -2
  173. package/extensions/ublocklite/rulesets/redirect/fin-0.json +19 -0
  174. package/extensions/ublocklite/rulesets/redirect/isr-0.json +1 -1
  175. package/extensions/ublocklite/rulesets/redirect/jpn-1.json +0 -1
  176. package/extensions/ublocklite/rulesets/redirect/spa-1.json +2 -2
  177. package/extensions/ublocklite/rulesets/redirect/swe-1.json +1 -1
  178. package/extensions/ublocklite/rulesets/redirect/ublock-filters.json +52 -47
  179. package/extensions/ublocklite/rulesets/redirect/vie-1.json +18 -2
  180. package/extensions/ublocklite/rulesets/regex/chn-0.json +2 -1
  181. package/extensions/ublocklite/rulesets/regex/easylist.json +1 -1
  182. package/extensions/ublocklite/rulesets/regex/jpn-1.json +3 -3
  183. package/extensions/ublocklite/rulesets/regex/kor-1.json +1 -1
  184. package/extensions/ublocklite/rulesets/regex/ublock-badware.json +5 -5
  185. package/extensions/ublocklite/rulesets/regex/ublock-filters.json +11 -7
  186. package/extensions/ublocklite/rulesets/regex/ukr-0.json +2 -2
  187. package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +14 -12
  188. package/extensions/ublocklite/rulesets/removeparam/rus-1.json +1 -1
  189. package/extensions/ublocklite/rulesets/removeparam/ublock-filters.json +2 -1
  190. package/extensions/ublocklite/rulesets/ruleset-details.json +227 -227
  191. package/extensions/ublocklite/rulesets/scripting/declarative/adguard-mobile.js +3 -3
  192. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-cookies.js +1 -1
  193. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-overlays.js +3 -3
  194. package/extensions/ublocklite/rulesets/scripting/declarative/chn-0.js +3 -3
  195. package/extensions/ublocklite/rulesets/scripting/declarative/fin-0.js +3 -3
  196. package/extensions/ublocklite/rulesets/scripting/declarative/fra-0.js +3 -3
  197. package/extensions/ublocklite/rulesets/scripting/declarative/idn-0.js +3 -3
  198. package/extensions/ublocklite/rulesets/scripting/declarative/jpn-1.js +3 -3
  199. package/extensions/ublocklite/rulesets/scripting/declarative/kor-1.js +3 -3
  200. package/extensions/ublocklite/rulesets/scripting/declarative/pol-0.js +3 -3
  201. package/extensions/ublocklite/rulesets/scripting/declarative/rus-0.js +3 -3
  202. package/extensions/ublocklite/rulesets/scripting/declarative/rus-1.js +1 -1
  203. package/extensions/ublocklite/rulesets/scripting/declarative/spa-1.js +3 -3
  204. package/extensions/ublocklite/rulesets/scripting/declarative/swe-1.js +3 -3
  205. package/extensions/ublocklite/rulesets/scripting/declarative/tur-0.js +3 -3
  206. package/extensions/ublocklite/rulesets/scripting/declarative/ublock-filters.js +3 -3
  207. package/extensions/ublocklite/rulesets/scripting/declarative/ukr-0.js +1 -1
  208. package/extensions/ublocklite/rulesets/scripting/declarative/vie-1.js +3 -3
  209. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
  210. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-overlays.js +2 -2
  211. package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +3 -3
  212. package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +3 -3
  213. package/extensions/ublocklite/rulesets/scripting/generic/fin-0.js +2 -2
  214. package/extensions/ublocklite/rulesets/scripting/generic/fra-0.js +2 -2
  215. package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +3 -3
  216. package/extensions/ublocklite/rulesets/scripting/generic/ind-0.js +2 -2
  217. package/extensions/ublocklite/rulesets/scripting/generic/jpn-1.js +2 -2
  218. package/extensions/ublocklite/rulesets/scripting/generic/nld-0.js +1 -1
  219. package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +1 -1
  220. package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +1 -1
  221. package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +2 -2
  222. package/extensions/ublocklite/rulesets/scripting/generic/ukr-0.js +2 -2
  223. package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +1 -1
  224. package/extensions/ublocklite/rulesets/scripting/generichigh/easylist.css +4 -0
  225. package/extensions/ublocklite/rulesets/scripting/generichigh/idn-0.css +6 -0
  226. package/extensions/ublocklite/rulesets/scripting/generichigh/nor-0.css +2 -1
  227. package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +1 -0
  228. package/extensions/ublocklite/rulesets/scripting/generichigh/ublock-filters.css +0 -1
  229. package/extensions/ublocklite/rulesets/scripting/procedural/adguard-mobile.js +3 -3
  230. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-others.js +3 -3
  231. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +3 -3
  232. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-social.js +3 -3
  233. package/extensions/ublocklite/rulesets/scripting/procedural/chn-0.js +3 -3
  234. package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
  235. package/extensions/ublocklite/rulesets/scripting/procedural/fin-0.js +3 -3
  236. package/extensions/ublocklite/rulesets/scripting/procedural/idn-0.js +3 -3
  237. package/extensions/ublocklite/rulesets/scripting/procedural/ind-0.js +3 -3
  238. package/extensions/ublocklite/rulesets/scripting/procedural/ita-0.js +1 -1
  239. package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
  240. package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
  241. package/extensions/ublocklite/rulesets/scripting/procedural/rus-1.js +1 -1
  242. package/extensions/ublocklite/rulesets/scripting/procedural/spa-1.js +3 -3
  243. package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +2 -2
  244. package/extensions/ublocklite/rulesets/scripting/procedural/tur-0.js +3 -3
  245. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-badware.js +1 -1
  246. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
  247. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.remove-class.js +2 -2
  248. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie-reload.js +1 -1
  249. package/extensions/ublocklite/rulesets/scripting/scriptlet/{annoyances-overlays.href-sanitizer.js → annoyances-cookies.remove-node-text.js} +104 -196
  250. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
  251. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-local-storage-item.js +2 -2
  252. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-session-storage-item.js +2 -2
  253. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +2 -2
  254. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
  255. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-local-storage-item.js +3 -3
  256. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-others.set-cookie.js +2 -2
  257. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +2 -2
  258. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-read.js +1 -1
  259. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-write.js +2 -2
  260. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-stack-trace.js +1 -1
  261. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +2 -2
  262. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.noeval-if.js +1 -1
  263. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +2 -2
  264. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setInterval.js +2 -2
  265. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-setTimeout.js +2 -2
  266. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-attr.js +2 -2
  267. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-class.js +1 -1
  268. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-cookie.js +2 -2
  269. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +1 -1
  270. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +2 -2
  271. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-cookie.js +2 -2
  272. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-session-storage-item.js +2 -2
  273. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-set-local-storage-item.js +2 -2
  274. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-current-script.js +2 -2
  275. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.addEventListener-defuser.js +2 -2
  276. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.evaldata-prune.js +1 -1
  277. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setTimeout.js +2 -2
  278. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-window-open.js +1 -1
  279. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-attr.js +2 -2
  280. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.set-constant.js +2 -2
  281. package/extensions/ublocklite/rulesets/scripting/scriptlet/cze-0.json-prune-xhr-response.js +2 -2
  282. package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.json-prune-fetch-response.js +2 -2
  283. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.json-prune.js +2 -2
  284. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-setInterval.js +2 -2
  285. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-setTimeout.js +2 -2
  286. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-window-open.js +1 -1
  287. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.remove-attr.js +1 -1
  288. package/extensions/ublocklite/rulesets/scripting/scriptlet/hun-0.prevent-fetch.js +2 -2
  289. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.adjust-setInterval.js +1 -1
  290. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-fetch.js +1 -1
  291. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.abort-current-script.js +2 -2
  292. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.set-constant.js +2 -2
  293. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +1 -1
  294. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.adjust-setInterval.js +1 -1
  295. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setInterval.js +2 -2
  296. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setTimeout.js +2 -2
  297. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-window-open.js +1 -1
  298. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +3 -3
  299. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-current-script.js +2 -2
  300. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-on-property-read.js +2 -2
  301. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.addEventListener-defuser.js +2 -2
  302. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.adjust-setInterval.js +2 -2
  303. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.adjust-setTimeout.js +2 -2
  304. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +2 -2
  305. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-window-open.js +2 -2
  306. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +2 -2
  307. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-cookie.js +2 -2
  308. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-local-storage-item.js +1 -1
  309. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +2 -2
  310. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
  311. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.adjust-setInterval.js +2 -2
  312. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-fetch.js +1 -1
  313. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-setTimeout.js +2 -2
  314. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +1 -1
  315. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-xhr.js +1 -1
  316. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-attr.js +1 -1
  317. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
  318. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
  319. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +2 -2
  320. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-write.js +2 -2
  321. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +2 -2
  322. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +3 -3
  323. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setInterval.js +3 -3
  324. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setTimeout.js +2 -2
  325. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.evaldata-prune.js +1 -1
  326. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.href-sanitizer.js +2 -2
  327. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
  328. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune.js +3 -3
  329. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.m3u-prune.js +1 -1
  330. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +2 -2
  331. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.nowebrtc.js +1 -1
  332. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +2 -2
  333. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-refresh.js +1 -1
  334. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-requestAnimationFrame.js +2 -2
  335. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +1 -1
  336. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +3 -3
  337. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +3 -3
  338. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +3 -3
  339. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-attr.js +2 -2
  340. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-cookie.js +2 -2
  341. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +2 -2
  342. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +3 -3
  343. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.js +2 -2
  344. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-local-storage-item.js +2 -2
  345. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-session-storage-item.js +2 -2
  346. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-create-html.js +360 -0
  347. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +2 -2
  348. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +2 -2
  349. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +1 -1
  350. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-cookie.js +3 -3
  351. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-local-storage-item.js +2 -2
  352. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +2 -2
  353. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.xml-prune.js +2 -2
  354. package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.abort-on-property-write.js +1 -1
  355. package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.remove-class.js +1 -1
  356. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +1 -1
  357. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +2 -2
  358. package/extensions/ublocklite/rulesets/scripting/scriptlet/{fra-0.abort-on-stack-trace.js → vie-1.json-prune.js} +189 -104
  359. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +2 -2
  360. package/extensions/ublocklite/rulesets/scripting/specific/adguard-mobile.js +3 -3
  361. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
  362. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
  363. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
  364. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +3 -3
  365. package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
  366. package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
  367. package/extensions/ublocklite/rulesets/scripting/specific/easylist.js +3 -3
  368. package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
  369. package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
  370. package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +3 -3
  371. package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
  372. package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
  373. package/extensions/ublocklite/rulesets/scripting/specific/isr-0.js +3 -3
  374. package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
  375. package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
  376. package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
  377. package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
  378. package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +3 -3
  379. package/extensions/ublocklite/rulesets/scripting/specific/pol-0.js +3 -3
  380. package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
  381. package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +3 -3
  382. package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
  383. package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
  384. package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
  385. package/extensions/ublocklite/rulesets/scripting/specific/ublock-badware.js +3 -3
  386. package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
  387. package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +3 -3
  388. package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
  389. package/extensions/ublocklite/rulesets/scriptlet-details.json +316 -576
  390. package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +0 -1
  391. package/extensions/ublocklite/rulesets/strictblock/annoyances-cookies.json +2 -1
  392. package/extensions/ublocklite/rulesets/strictblock/annoyances-overlays.json +0 -1
  393. package/extensions/ublocklite/rulesets/strictblock/chn-0.json +185 -6
  394. package/extensions/ublocklite/rulesets/strictblock/dpollock-0.json +4 -0
  395. package/extensions/ublocklite/rulesets/strictblock/easylist.json +7 -7
  396. package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +25 -2
  397. package/extensions/ublocklite/rulesets/strictblock/fra-0.json +1 -0
  398. package/extensions/ublocklite/rulesets/strictblock/hun-0.json +1 -0
  399. package/extensions/ublocklite/rulesets/strictblock/isr-0.json +3 -0
  400. package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +159 -161
  401. package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
  402. package/extensions/ublocklite/rulesets/strictblock/pgl.json +4 -22
  403. package/extensions/ublocklite/rulesets/strictblock/rus-0.json +0 -1
  404. package/extensions/ublocklite/rulesets/strictblock/spa-1.json +2 -17
  405. package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +18360 -761
  406. package/extensions/ublocklite/rulesets/strictblock/swe-1.json +4 -2
  407. package/extensions/ublocklite/rulesets/strictblock/tur-0.json +5 -1
  408. package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +459 -457
  409. package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +3 -2
  410. package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +1 -8
  411. package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +333 -648
  412. package/extensions/ublocklite/rulesets/strictblock/vie-1.json +2 -0
  413. package/extensions/ublocklite/rulesets/urlskip/annoyances-overlays.json +0 -6
  414. package/extensions/ublocklite/rulesets/urlskip/ublock-filters.json +14 -0
  415. package/extensions/ublocklite/ublock.zip +0 -0
  416. package/extensions/ublocklite/unpicker-ui.html +40 -0
  417. package/extensions/ublocklite/zapper-ui.html +2 -1
  418. package/package.json +18 -18
  419. package/src/browsers/browsers.playwright.ts +6 -4
  420. package/src/routes/chrome/tests/websocket.spec.ts +2 -0
  421. package/src/routes/chromium/tests/websocket.spec.ts +2 -0
  422. package/src/routes/edge/tests/websocket.spec.ts +2 -0
  423. package/src/routes/firefox/tests/websocket.spec.ts +2 -1
  424. package/src/routes/webkit/tests/websocket.spec.ts +2 -0
  425. package/static/docs/swagger.json +22 -10
  426. package/static/docs/swagger.min.json +21 -9
  427. package/static/function/client.js +47 -12
  428. package/static/function/index.html +47 -12
  429. package/extensions/ublocklite/css/fonts/Metropolis/Metropolis-Regular.woff2 +0 -0
  430. package/extensions/ublocklite/css/fonts/Metropolis/Metropolis-SemiBold.woff2 +0 -0
  431. package/extensions/ublocklite/css/fonts/Metropolis/README.md +0 -25
  432. package/extensions/ublocklite/css/fonts/Metropolis/UNLICENSE +0 -24
@@ -280,14 +280,14 @@
280
280
  "length": {
281
281
  "type": "number"
282
282
  },
283
- "__@toStringTag@113277": {
283
+ "__@toStringTag@6502": {
284
284
  "type": "string",
285
285
  "const": "Uint8Array"
286
286
  }
287
287
  },
288
288
  "required": [
289
289
  "BYTES_PER_ELEMENT",
290
- "__@toStringTag@113277",
290
+ "__@toStringTag@6502",
291
291
  "buffer",
292
292
  "byteLength",
293
293
  "byteOffset",
@@ -322,13 +322,13 @@
322
322
  "byteLength": {
323
323
  "type": "number"
324
324
  },
325
- "__@toStringTag@113277": {
325
+ "__@toStringTag@6502": {
326
326
  "type": "string"
327
327
  }
328
328
  },
329
329
  "additionalProperties": false,
330
330
  "required": [
331
- "__@toStringTag@113277",
331
+ "__@toStringTag@6502",
332
332
  "byteLength"
333
333
  ]
334
334
  },
@@ -338,18 +338,18 @@
338
338
  "byteLength": {
339
339
  "type": "number"
340
340
  },
341
- "__@species@122159": {
341
+ "__@species@15689": {
342
342
  "$ref": "#/definitions/SharedArrayBuffer"
343
343
  },
344
- "__@toStringTag@113277": {
344
+ "__@toStringTag@6502": {
345
345
  "type": "string",
346
346
  "const": "SharedArrayBuffer"
347
347
  }
348
348
  },
349
349
  "additionalProperties": false,
350
350
  "required": [
351
- "__@species@122159",
352
- "__@toStringTag@113277",
351
+ "__@species@15689",
352
+ "__@toStringTag@6502",
353
353
  "byteLength"
354
354
  ]
355
355
  },
@@ -1014,7 +1014,7 @@
1014
1014
  },
1015
1015
  "info": {
1016
1016
  "title": "Browserless",
1017
- "version": "2.32.1",
1017
+ "version": "2.33.0",
1018
1018
  "x-logo": {
1019
1019
  "altText": "browserless logo",
1020
1020
  "url": "./docs/browserless-logo-inline.svg"
@@ -1133,6 +1133,7 @@
1133
1133
  "cspviolationreport",
1134
1134
  "document",
1135
1135
  "eventsource",
1136
+ "fedcm",
1136
1137
  "fetch",
1137
1138
  "font",
1138
1139
  "image",
@@ -2016,6 +2017,7 @@
2016
2017
  "cspviolationreport",
2017
2018
  "document",
2018
2019
  "eventsource",
2020
+ "fedcm",
2019
2021
  "fetch",
2020
2022
  "font",
2021
2023
  "image",
@@ -2449,6 +2451,7 @@
2449
2451
  "cspviolationreport",
2450
2452
  "document",
2451
2453
  "eventsource",
2454
+ "fedcm",
2452
2455
  "fetch",
2453
2456
  "font",
2454
2457
  "image",
@@ -3074,6 +3077,7 @@
3074
3077
  "cspviolationreport",
3075
3078
  "document",
3076
3079
  "eventsource",
3080
+ "fedcm",
3077
3081
  "fetch",
3078
3082
  "font",
3079
3083
  "image",
@@ -3380,6 +3384,7 @@
3380
3384
  "cspviolationreport",
3381
3385
  "document",
3382
3386
  "eventsource",
3387
+ "fedcm",
3383
3388
  "fetch",
3384
3389
  "font",
3385
3390
  "image",
@@ -3909,6 +3914,7 @@
3909
3914
  "cspviolationreport",
3910
3915
  "document",
3911
3916
  "eventsource",
3917
+ "fedcm",
3912
3918
  "fetch",
3913
3919
  "font",
3914
3920
  "image",
@@ -4342,6 +4348,7 @@
4342
4348
  "cspviolationreport",
4343
4349
  "document",
4344
4350
  "eventsource",
4351
+ "fedcm",
4345
4352
  "fetch",
4346
4353
  "font",
4347
4354
  "image",
@@ -4967,6 +4974,7 @@
4967
4974
  "cspviolationreport",
4968
4975
  "document",
4969
4976
  "eventsource",
4977
+ "fedcm",
4970
4978
  "fetch",
4971
4979
  "font",
4972
4980
  "image",
@@ -5273,6 +5281,7 @@
5273
5281
  "cspviolationreport",
5274
5282
  "document",
5275
5283
  "eventsource",
5284
+ "fedcm",
5276
5285
  "fetch",
5277
5286
  "font",
5278
5287
  "image",
@@ -5802,6 +5811,7 @@
5802
5811
  "cspviolationreport",
5803
5812
  "document",
5804
5813
  "eventsource",
5814
+ "fedcm",
5805
5815
  "fetch",
5806
5816
  "font",
5807
5817
  "image",
@@ -6235,6 +6245,7 @@
6235
6245
  "cspviolationreport",
6236
6246
  "document",
6237
6247
  "eventsource",
6248
+ "fedcm",
6238
6249
  "fetch",
6239
6250
  "font",
6240
6251
  "image",
@@ -6860,6 +6871,7 @@
6860
6871
  "cspviolationreport",
6861
6872
  "document",
6862
6873
  "eventsource",
6874
+ "fedcm",
6863
6875
  "fetch",
6864
6876
  "font",
6865
6877
  "image",
@@ -4201,6 +4201,27 @@
4201
4201
  source2.subscribe(createOperatorSubscriber(subscriber, noop));
4202
4202
  });
4203
4203
  }
4204
+ function distinctUntilChanged(comparator, keySelector) {
4205
+ if (keySelector === void 0) {
4206
+ keySelector = identity;
4207
+ }
4208
+ comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare;
4209
+ return operate(function(source2, subscriber) {
4210
+ var previousKey;
4211
+ var first2 = true;
4212
+ source2.subscribe(createOperatorSubscriber(subscriber, function(value) {
4213
+ var currentKey = keySelector(value);
4214
+ if (first2 || !comparator(previousKey, currentKey)) {
4215
+ first2 = false;
4216
+ previousKey = currentKey;
4217
+ subscriber.next(value);
4218
+ }
4219
+ }));
4220
+ });
4221
+ }
4222
+ function defaultCompare(a, b) {
4223
+ return a === b;
4224
+ }
4204
4225
  function throwIfEmpty(errorFactory) {
4205
4226
  if (errorFactory === void 0) {
4206
4227
  errorFactory = defaultErrorFactory;
@@ -4401,7 +4422,7 @@
4401
4422
  // node_modules/puppeteer-core/lib/esm/puppeteer/generated/version.js
4402
4423
  init_dirname();
4403
4424
  init_buffer2();
4404
- var packageVersion = "24.10.2";
4425
+ var packageVersion = "24.12.1";
4405
4426
 
4406
4427
  // node_modules/puppeteer-core/lib/esm/puppeteer/util/assert.js
4407
4428
  init_dirname();
@@ -7219,6 +7240,9 @@
7219
7240
  /**
7220
7241
  * Waits for the network to be idle.
7221
7242
  *
7243
+ * @remarks The function will always wait at least the
7244
+ * set {@link WaitForNetworkIdleOptions.idleTime | IdleTime}.
7245
+ *
7222
7246
  * @param options - Options to configure waiting behavior.
7223
7247
  * @returns A promise which resolves once the network is idle.
7224
7248
  */
@@ -7230,8 +7254,10 @@
7230
7254
  */
7231
7255
  waitForNetworkIdle$(options = {}) {
7232
7256
  const { timeout: ms = this._timeoutSettings.timeout(), idleTime = NETWORK_IDLE_TIME, concurrency = 0, signal } = options;
7233
- return this.#inflight$.pipe(switchMap((inflight) => {
7234
- if (inflight > concurrency) {
7257
+ return this.#inflight$.pipe(map((inflight) => {
7258
+ return inflight > concurrency;
7259
+ }), distinctUntilChanged(), switchMap((isInflightOverConcurrency) => {
7260
+ if (isInflightOverConcurrency) {
7235
7261
  return EMPTY;
7236
7262
  }
7237
7263
  return timer(idleTime);
@@ -10520,7 +10546,7 @@
10520
10546
  }
10521
10547
  return tokens;
10522
10548
  }
10523
- var STRING_PATTERN = /(['"])([^\\\n]+?)\1/g;
10549
+ var STRING_PATTERN = /(['"])([^\\\n]*?)\1/g;
10524
10550
  var ESCAPE_PATTERN = /\\./g;
10525
10551
  function tokenize(selector, grammar = TOKENS) {
10526
10552
  selector = selector.trim();
@@ -13058,6 +13084,8 @@
13058
13084
  function intersectBoundingBox(box, width, height) {
13059
13085
  box.width = Math.max(box.x >= 0 ? Math.min(width - box.x, box.width) : Math.min(width, box.width + box.x), 0);
13060
13086
  box.height = Math.max(box.y >= 0 ? Math.min(height - box.y, box.height) : Math.min(height, box.height + box.y), 0);
13087
+ box.x = Math.max(box.x, 0);
13088
+ box.y = Math.max(box.y, 0);
13061
13089
  }
13062
13090
 
13063
13091
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/JSHandle.js
@@ -16218,12 +16246,14 @@ ${sourceUrlComment}
16218
16246
  [CDPSessionEvent.Disconnected, this.#removeClient]
16219
16247
  ];
16220
16248
  #clients = /* @__PURE__ */ new Map();
16221
- constructor(frameManager) {
16249
+ #networkEnabled = true;
16250
+ constructor(frameManager, networkEnabled) {
16222
16251
  super();
16223
16252
  this.#frameManager = frameManager;
16253
+ this.#networkEnabled = networkEnabled ?? true;
16224
16254
  }
16225
16255
  async addClient(client) {
16226
- if (this.#clients.has(client)) {
16256
+ if (!this.#networkEnabled || this.#clients.has(client)) {
16227
16257
  return;
16228
16258
  }
16229
16259
  const subscriptions = new DisposableStack();
@@ -16690,7 +16720,7 @@ ${sourceUrlComment}
16690
16720
  super();
16691
16721
  this.#client = client;
16692
16722
  this.#page = page;
16693
- this.#networkManager = new NetworkManager(this);
16723
+ this.#networkManager = new NetworkManager(this, page.browser().isNetworkEnabled());
16694
16724
  this.#timeoutSettings = timeoutSettings;
16695
16725
  this.setupEventListeners(this.#client);
16696
16726
  client.once(CDPSessionEvent.Disconnected, () => {
@@ -19767,8 +19797,8 @@ ${sourceUrlComment}
19767
19797
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Browser.js
19768
19798
  var CdpBrowser = class _CdpBrowser extends Browser {
19769
19799
  protocol = "cdp";
19770
- static async _create(connection, contextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true) {
19771
- const browser = new _CdpBrowser(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets);
19800
+ static async _create(connection, contextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true, networkEnabled = true) {
19801
+ const browser = new _CdpBrowser(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets, networkEnabled);
19772
19802
  if (acceptInsecureCerts) {
19773
19803
  await connection.send("Security.setIgnoreCertificateErrors", {
19774
19804
  ignore: true
@@ -19785,9 +19815,11 @@ ${sourceUrlComment}
19785
19815
  #isPageTargetCallback;
19786
19816
  #defaultContext;
19787
19817
  #contexts = /* @__PURE__ */ new Map();
19818
+ #networkEnabled = true;
19788
19819
  #targetManager;
19789
- constructor(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true) {
19820
+ constructor(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true, networkEnabled = true) {
19790
19821
  super();
19822
+ this.#networkEnabled = networkEnabled;
19791
19823
  this.#defaultViewport = defaultViewport;
19792
19824
  this.#process = process3;
19793
19825
  this.#connection = connection;
@@ -19985,16 +20017,19 @@ ${sourceUrlComment}
19985
20017
  pendingProtocolErrors: this.#connection.getPendingProtocolErrors()
19986
20018
  };
19987
20019
  }
20020
+ isNetworkEnabled() {
20021
+ return this.#networkEnabled;
20022
+ }
19988
20023
  };
19989
20024
 
19990
20025
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/BrowserConnector.js
19991
20026
  async function _connectToCdpBrowser(connectionTransport, url, options) {
19992
- const { acceptInsecureCerts = false, defaultViewport = DEFAULT_VIEWPORT, downloadBehavior, targetFilter, _isPageTarget: isPageTarget, slowMo = 0, protocolTimeout } = options;
20027
+ const { acceptInsecureCerts = false, networkEnabled = true, defaultViewport = DEFAULT_VIEWPORT, downloadBehavior, targetFilter, _isPageTarget: isPageTarget, slowMo = 0, protocolTimeout } = options;
19993
20028
  const connection = new Connection(url, connectionTransport, slowMo, protocolTimeout);
19994
20029
  const { browserContextIds } = await connection.send("Target.getBrowserContexts");
19995
20030
  const browser = await CdpBrowser._create(connection, browserContextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, void 0, () => {
19996
20031
  return connection.send("Browser.close").catch(debugError);
19997
- }, targetFilter, isPageTarget);
20032
+ }, targetFilter, isPageTarget, void 0, networkEnabled);
19998
20033
  return browser;
19999
20034
  }
20000
20035
 
@@ -4209,6 +4209,27 @@
4209
4209
  source2.subscribe(createOperatorSubscriber(subscriber, noop));
4210
4210
  });
4211
4211
  }
4212
+ function distinctUntilChanged(comparator, keySelector) {
4213
+ if (keySelector === void 0) {
4214
+ keySelector = identity;
4215
+ }
4216
+ comparator = comparator !== null && comparator !== void 0 ? comparator : defaultCompare;
4217
+ return operate(function(source2, subscriber) {
4218
+ var previousKey;
4219
+ var first2 = true;
4220
+ source2.subscribe(createOperatorSubscriber(subscriber, function(value) {
4221
+ var currentKey = keySelector(value);
4222
+ if (first2 || !comparator(previousKey, currentKey)) {
4223
+ first2 = false;
4224
+ previousKey = currentKey;
4225
+ subscriber.next(value);
4226
+ }
4227
+ }));
4228
+ });
4229
+ }
4230
+ function defaultCompare(a, b) {
4231
+ return a === b;
4232
+ }
4212
4233
  function throwIfEmpty(errorFactory) {
4213
4234
  if (errorFactory === void 0) {
4214
4235
  errorFactory = defaultErrorFactory;
@@ -4409,7 +4430,7 @@
4409
4430
  // node_modules/puppeteer-core/lib/esm/puppeteer/generated/version.js
4410
4431
  init_dirname();
4411
4432
  init_buffer2();
4412
- var packageVersion = "24.10.2";
4433
+ var packageVersion = "24.12.1";
4413
4434
 
4414
4435
  // node_modules/puppeteer-core/lib/esm/puppeteer/util/assert.js
4415
4436
  init_dirname();
@@ -7227,6 +7248,9 @@
7227
7248
  /**
7228
7249
  * Waits for the network to be idle.
7229
7250
  *
7251
+ * @remarks The function will always wait at least the
7252
+ * set {@link WaitForNetworkIdleOptions.idleTime | IdleTime}.
7253
+ *
7230
7254
  * @param options - Options to configure waiting behavior.
7231
7255
  * @returns A promise which resolves once the network is idle.
7232
7256
  */
@@ -7238,8 +7262,10 @@
7238
7262
  */
7239
7263
  waitForNetworkIdle$(options = {}) {
7240
7264
  const { timeout: ms = this._timeoutSettings.timeout(), idleTime = NETWORK_IDLE_TIME, concurrency = 0, signal } = options;
7241
- return this.#inflight$.pipe(switchMap((inflight) => {
7242
- if (inflight > concurrency) {
7265
+ return this.#inflight$.pipe(map((inflight) => {
7266
+ return inflight > concurrency;
7267
+ }), distinctUntilChanged(), switchMap((isInflightOverConcurrency) => {
7268
+ if (isInflightOverConcurrency) {
7243
7269
  return EMPTY;
7244
7270
  }
7245
7271
  return timer(idleTime);
@@ -10528,7 +10554,7 @@
10528
10554
  }
10529
10555
  return tokens;
10530
10556
  }
10531
- var STRING_PATTERN = /(['"])([^\\\n]+?)\1/g;
10557
+ var STRING_PATTERN = /(['"])([^\\\n]*?)\1/g;
10532
10558
  var ESCAPE_PATTERN = /\\./g;
10533
10559
  function tokenize(selector, grammar = TOKENS) {
10534
10560
  selector = selector.trim();
@@ -13066,6 +13092,8 @@
13066
13092
  function intersectBoundingBox(box, width, height) {
13067
13093
  box.width = Math.max(box.x >= 0 ? Math.min(width - box.x, box.width) : Math.min(width, box.width + box.x), 0);
13068
13094
  box.height = Math.max(box.y >= 0 ? Math.min(height - box.y, box.height) : Math.min(height, box.height + box.y), 0);
13095
+ box.x = Math.max(box.x, 0);
13096
+ box.y = Math.max(box.y, 0);
13069
13097
  }
13070
13098
 
13071
13099
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/JSHandle.js
@@ -16226,12 +16254,14 @@ ${sourceUrlComment}
16226
16254
  [CDPSessionEvent.Disconnected, this.#removeClient]
16227
16255
  ];
16228
16256
  #clients = /* @__PURE__ */ new Map();
16229
- constructor(frameManager) {
16257
+ #networkEnabled = true;
16258
+ constructor(frameManager, networkEnabled) {
16230
16259
  super();
16231
16260
  this.#frameManager = frameManager;
16261
+ this.#networkEnabled = networkEnabled ?? true;
16232
16262
  }
16233
16263
  async addClient(client) {
16234
- if (this.#clients.has(client)) {
16264
+ if (!this.#networkEnabled || this.#clients.has(client)) {
16235
16265
  return;
16236
16266
  }
16237
16267
  const subscriptions = new DisposableStack();
@@ -16698,7 +16728,7 @@ ${sourceUrlComment}
16698
16728
  super();
16699
16729
  this.#client = client;
16700
16730
  this.#page = page;
16701
- this.#networkManager = new NetworkManager(this);
16731
+ this.#networkManager = new NetworkManager(this, page.browser().isNetworkEnabled());
16702
16732
  this.#timeoutSettings = timeoutSettings;
16703
16733
  this.setupEventListeners(this.#client);
16704
16734
  client.once(CDPSessionEvent.Disconnected, () => {
@@ -19775,8 +19805,8 @@ ${sourceUrlComment}
19775
19805
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/Browser.js
19776
19806
  var CdpBrowser = class _CdpBrowser extends Browser {
19777
19807
  protocol = "cdp";
19778
- static async _create(connection, contextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true) {
19779
- const browser = new _CdpBrowser(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets);
19808
+ static async _create(connection, contextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true, networkEnabled = true) {
19809
+ const browser = new _CdpBrowser(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets, networkEnabled);
19780
19810
  if (acceptInsecureCerts) {
19781
19811
  await connection.send("Security.setIgnoreCertificateErrors", {
19782
19812
  ignore: true
@@ -19793,9 +19823,11 @@ ${sourceUrlComment}
19793
19823
  #isPageTargetCallback;
19794
19824
  #defaultContext;
19795
19825
  #contexts = /* @__PURE__ */ new Map();
19826
+ #networkEnabled = true;
19796
19827
  #targetManager;
19797
- constructor(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true) {
19828
+ constructor(connection, contextIds, defaultViewport, process3, closeCallback, targetFilterCallback, isPageTargetCallback, waitForInitiallyDiscoveredTargets = true, networkEnabled = true) {
19798
19829
  super();
19830
+ this.#networkEnabled = networkEnabled;
19799
19831
  this.#defaultViewport = defaultViewport;
19800
19832
  this.#process = process3;
19801
19833
  this.#connection = connection;
@@ -19993,16 +20025,19 @@ ${sourceUrlComment}
19993
20025
  pendingProtocolErrors: this.#connection.getPendingProtocolErrors()
19994
20026
  };
19995
20027
  }
20028
+ isNetworkEnabled() {
20029
+ return this.#networkEnabled;
20030
+ }
19996
20031
  };
19997
20032
 
19998
20033
  // node_modules/puppeteer-core/lib/esm/puppeteer/cdp/BrowserConnector.js
19999
20034
  async function _connectToCdpBrowser(connectionTransport, url, options) {
20000
- const { acceptInsecureCerts = false, defaultViewport = DEFAULT_VIEWPORT, downloadBehavior, targetFilter, _isPageTarget: isPageTarget, slowMo = 0, protocolTimeout } = options;
20035
+ const { acceptInsecureCerts = false, networkEnabled = true, defaultViewport = DEFAULT_VIEWPORT, downloadBehavior, targetFilter, _isPageTarget: isPageTarget, slowMo = 0, protocolTimeout } = options;
20001
20036
  const connection = new Connection(url, connectionTransport, slowMo, protocolTimeout);
20002
20037
  const { browserContextIds } = await connection.send("Target.getBrowserContexts");
20003
20038
  const browser = await CdpBrowser._create(connection, browserContextIds, acceptInsecureCerts, defaultViewport, downloadBehavior, void 0, () => {
20004
20039
  return connection.send("Browser.close").catch(debugError);
20005
- }, targetFilter, isPageTarget);
20040
+ }, targetFilter, isPageTarget, void 0, networkEnabled);
20006
20041
  return browser;
20007
20042
  }
20008
20043
 
@@ -1,25 +0,0 @@
1
- # Metropolis
2
-
3
- A modern, geometric typeface. Influenced by other popular geometric, minimalist sans-serif typefaces of the new millennium. Designed for optimal readability at small point sizes while beautiful at large point sizes.
4
-
5
- ![Metropolis](./Specimens/Metro-1.png)
6
-
7
- ---
8
-
9
- ![Metropolis](./Specimens/Metro-2.png)
10
-
11
- ### Where am I?
12
-
13
- See [Documentation](./Documentation/Documentation.md).
14
-
15
- ### The Unlicense
16
-
17
- Contributions welcome.
18
-
19
- ### Contact
20
-
21
- Reachable via chris.m.simpson [at] icloud.com or tweet @ChrisMSimpson.
22
-
23
- ### Support
24
-
25
- There is none. Oh, you meant support me? I dare you to click the sponsor button above.
@@ -1,24 +0,0 @@
1
- This is free and unencumbered software released into the public domain.
2
-
3
- Anyone is free to copy, modify, publish, use, compile, sell, or
4
- distribute this software, either in source code form or as a compiled
5
- binary, for any purpose, commercial or non-commercial, and by any
6
- means.
7
-
8
- In jurisdictions that recognize copyright laws, the author or authors
9
- of this software dedicate any and all copyright interest in the
10
- software to the public domain. We make this dedication for the benefit
11
- of the public at large and to the detriment of our heirs and
12
- successors. We intend this dedication to be an overt act of
13
- relinquishment in perpetuity of all present and future rights to this
14
- software under copyright law.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
- IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20
- OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21
- ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22
- OTHER DEALINGS IN THE SOFTWARE.
23
-
24
- For more information, please refer to <http://unlicense.org/>