@browserless.io/browserless 2.30.1 → 2.31.1-beta-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 (440) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/build/browserless.d.ts +1 -1
  3. package/build/browserless.js +17 -15
  4. package/build/browsers/index.js +3 -0
  5. package/build/routes/chrome/http/content.post.body.json +8 -8
  6. package/build/routes/chrome/http/pdf.post.body.json +8 -8
  7. package/build/routes/chrome/http/scrape.post.body.json +8 -8
  8. package/build/routes/chrome/http/screenshot.post.body.json +22 -9
  9. package/build/routes/chromium/http/content.post.body.json +8 -8
  10. package/build/routes/chromium/http/pdf.post.body.json +8 -8
  11. package/build/routes/chromium/http/scrape.post.body.json +8 -8
  12. package/build/routes/chromium/http/screenshot.post.body.json +22 -9
  13. package/build/routes/chromium/tests/websocket.spec.js +1 -1
  14. package/build/routes/edge/http/content.post.body.json +8 -8
  15. package/build/routes/edge/http/pdf.post.body.json +8 -8
  16. package/build/routes/edge/http/scrape.post.body.json +8 -8
  17. package/build/routes/edge/http/screenshot.post.body.json +22 -9
  18. package/extensions/ublocklite/README.md +5 -4
  19. package/extensions/ublocklite/_locales/ar/messages.json +36 -0
  20. package/extensions/ublocklite/_locales/az/messages.json +36 -0
  21. package/extensions/ublocklite/_locales/be/messages.json +36 -0
  22. package/extensions/ublocklite/_locales/bg/messages.json +36 -0
  23. package/extensions/ublocklite/_locales/bn/messages.json +38 -2
  24. package/extensions/ublocklite/_locales/br_FR/messages.json +39 -3
  25. package/extensions/ublocklite/_locales/bs/messages.json +36 -0
  26. package/extensions/ublocklite/_locales/ca/messages.json +36 -0
  27. package/extensions/ublocklite/_locales/cs/messages.json +36 -0
  28. package/extensions/ublocklite/_locales/cv/messages.json +36 -0
  29. package/extensions/ublocklite/_locales/cy/messages.json +36 -0
  30. package/extensions/ublocklite/_locales/da/messages.json +37 -1
  31. package/extensions/ublocklite/_locales/de/messages.json +36 -0
  32. package/extensions/ublocklite/_locales/el/messages.json +36 -0
  33. package/extensions/ublocklite/_locales/en/messages.json +36 -0
  34. package/extensions/ublocklite/_locales/en_GB/messages.json +36 -0
  35. package/extensions/ublocklite/_locales/eo/messages.json +36 -0
  36. package/extensions/ublocklite/_locales/es/messages.json +36 -0
  37. package/extensions/ublocklite/_locales/et/messages.json +36 -0
  38. package/extensions/ublocklite/_locales/eu/messages.json +36 -0
  39. package/extensions/ublocklite/_locales/fa/messages.json +36 -0
  40. package/extensions/ublocklite/_locales/fi/messages.json +41 -5
  41. package/extensions/ublocklite/_locales/fil/messages.json +36 -0
  42. package/extensions/ublocklite/_locales/fr/messages.json +36 -0
  43. package/extensions/ublocklite/_locales/fy/messages.json +36 -0
  44. package/extensions/ublocklite/_locales/gl/messages.json +38 -2
  45. package/extensions/ublocklite/_locales/gu/messages.json +36 -0
  46. package/extensions/ublocklite/_locales/he/messages.json +36 -0
  47. package/extensions/ublocklite/_locales/hi/messages.json +36 -0
  48. package/extensions/ublocklite/_locales/hr/messages.json +37 -1
  49. package/extensions/ublocklite/_locales/hu/messages.json +36 -0
  50. package/extensions/ublocklite/_locales/hy/messages.json +36 -0
  51. package/extensions/ublocklite/_locales/id/messages.json +36 -0
  52. package/extensions/ublocklite/_locales/it/messages.json +36 -0
  53. package/extensions/ublocklite/_locales/ja/messages.json +36 -0
  54. package/extensions/ublocklite/_locales/ka/messages.json +36 -0
  55. package/extensions/ublocklite/_locales/kk/messages.json +36 -0
  56. package/extensions/ublocklite/_locales/kn/messages.json +36 -0
  57. package/extensions/ublocklite/_locales/ko/messages.json +37 -1
  58. package/extensions/ublocklite/_locales/lt/messages.json +36 -0
  59. package/extensions/ublocklite/_locales/lv/messages.json +36 -0
  60. package/extensions/ublocklite/_locales/mk/messages.json +36 -0
  61. package/extensions/ublocklite/_locales/ml/messages.json +36 -0
  62. package/extensions/ublocklite/_locales/mr/messages.json +36 -0
  63. package/extensions/ublocklite/_locales/ms/messages.json +36 -0
  64. package/extensions/ublocklite/_locales/nb/messages.json +40 -4
  65. package/extensions/ublocklite/_locales/nl/messages.json +40 -4
  66. package/extensions/ublocklite/_locales/oc/messages.json +36 -0
  67. package/extensions/ublocklite/_locales/pa/messages.json +36 -0
  68. package/extensions/ublocklite/_locales/pl/messages.json +36 -0
  69. package/extensions/ublocklite/_locales/pt_BR/messages.json +36 -0
  70. package/extensions/ublocklite/_locales/pt_PT/messages.json +38 -2
  71. package/extensions/ublocklite/_locales/ro/messages.json +36 -0
  72. package/extensions/ublocklite/_locales/ru/messages.json +36 -0
  73. package/extensions/ublocklite/_locales/si/messages.json +63 -27
  74. package/extensions/ublocklite/_locales/sk/messages.json +36 -0
  75. package/extensions/ublocklite/_locales/sl/messages.json +36 -0
  76. package/extensions/ublocklite/_locales/so/messages.json +36 -0
  77. package/extensions/ublocklite/_locales/sq/messages.json +37 -1
  78. package/extensions/ublocklite/_locales/sr/messages.json +36 -0
  79. package/extensions/ublocklite/_locales/sv/messages.json +36 -0
  80. package/extensions/ublocklite/_locales/sw/messages.json +36 -0
  81. package/extensions/ublocklite/_locales/ta/messages.json +36 -0
  82. package/extensions/ublocklite/_locales/te/messages.json +36 -0
  83. package/extensions/ublocklite/_locales/th/messages.json +36 -0
  84. package/extensions/ublocklite/_locales/tr/messages.json +37 -1
  85. package/extensions/ublocklite/_locales/uk/messages.json +36 -0
  86. package/extensions/ublocklite/_locales/ur/messages.json +36 -0
  87. package/extensions/ublocklite/_locales/vi/messages.json +36 -0
  88. package/extensions/ublocklite/_locales/zh_CN/messages.json +36 -0
  89. package/extensions/ublocklite/_locales/zh_TW/messages.json +36 -0
  90. package/extensions/ublocklite/css/common.css +2 -1
  91. package/extensions/ublocklite/css/dashboard-common.css +6 -1
  92. package/extensions/ublocklite/css/dashboard.css +15 -8
  93. package/extensions/ublocklite/css/default.css +1 -1
  94. package/extensions/ublocklite/css/develop.css +112 -0
  95. package/extensions/ublocklite/css/filtering-mode.css +29 -20
  96. package/extensions/ublocklite/css/popup.css +14 -16
  97. package/extensions/ublocklite/css/report.css +11 -0
  98. package/extensions/ublocklite/css/settings.css +11 -6
  99. package/extensions/ublocklite/css/zapper-ui.css +15 -10
  100. package/extensions/ublocklite/dashboard.html +39 -6
  101. package/extensions/ublocklite/img/icon_512.png +0 -0
  102. package/extensions/ublocklite/js/background.js +35 -5
  103. package/extensions/ublocklite/js/dashboard.js +18 -1
  104. package/extensions/ublocklite/js/develop.js +889 -0
  105. package/extensions/ublocklite/js/dnr-parser.js +561 -0
  106. package/extensions/ublocklite/js/ext-compat.js +3 -3
  107. package/extensions/ublocklite/js/filter-lists.js +6 -1
  108. package/extensions/ublocklite/js/report.js +54 -4
  109. package/extensions/ublocklite/js/ruleset-manager.js +122 -22
  110. package/extensions/ublocklite/js/scripting-manager.js +45 -16
  111. package/extensions/ublocklite/js/settings.js +33 -19
  112. package/extensions/ublocklite/js/theme.js +3 -1
  113. package/extensions/ublocklite/js/zapper-ui.js +11 -0
  114. package/extensions/ublocklite/lib/codemirror/LICENSE +21 -0
  115. package/extensions/ublocklite/lib/codemirror/README.md +9 -0
  116. package/extensions/ublocklite/lib/codemirror/cm6.bundle.ubol.min.js +1 -0
  117. package/extensions/ublocklite/manifest.json +6 -6
  118. package/extensions/ublocklite/popup.html +7 -11
  119. package/extensions/ublocklite/report.html +4 -2
  120. package/extensions/ublocklite/rulesets/generic-details.json +16 -5
  121. package/extensions/ublocklite/rulesets/main/adguard-mobile.json +533 -0
  122. package/extensions/ublocklite/rulesets/main/alb-0.json +23 -23
  123. package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +32 -14
  124. package/extensions/ublocklite/rulesets/main/annoyances-others.json +3 -1
  125. package/extensions/ublocklite/rulesets/main/annoyances-overlays.json +10 -4
  126. package/extensions/ublocklite/rulesets/main/annoyances-social.json +1 -0
  127. package/extensions/ublocklite/rulesets/main/annoyances-widgets.json +5 -3
  128. package/extensions/ublocklite/rulesets/main/chn-0.json +59 -39
  129. package/extensions/ublocklite/rulesets/main/cze-0.json +1 -1
  130. package/extensions/ublocklite/rulesets/main/deu-0.json +12 -5
  131. package/extensions/ublocklite/rulesets/main/easylist.json +33 -36
  132. package/extensions/ublocklite/rulesets/main/easyprivacy.json +52 -12
  133. package/extensions/ublocklite/rulesets/main/fin-0.json +168 -168
  134. package/extensions/ublocklite/rulesets/main/fra-0.json +10 -11
  135. package/extensions/ublocklite/rulesets/main/hun-0.json +17 -6
  136. package/extensions/ublocklite/rulesets/main/idn-0.json +16 -4
  137. package/extensions/ublocklite/rulesets/main/ind-0.json +118 -78
  138. package/extensions/ublocklite/rulesets/main/isr-0.json +7 -19
  139. package/extensions/ublocklite/rulesets/main/ita-0.json +3 -2
  140. package/extensions/ublocklite/rulesets/main/jpn-1.json +34 -19
  141. package/extensions/ublocklite/rulesets/main/kor-1.json +8 -1
  142. package/extensions/ublocklite/rulesets/main/nor-0.json +36 -6
  143. package/extensions/ublocklite/rulesets/main/pgl.json +6 -18
  144. package/extensions/ublocklite/rulesets/main/pol-0.json +1 -1
  145. package/extensions/ublocklite/rulesets/main/rou-1.json +1 -1
  146. package/extensions/ublocklite/rulesets/main/rus-0.json +25 -17
  147. package/extensions/ublocklite/rulesets/main/rus-1.json +12 -14
  148. package/extensions/ublocklite/rulesets/main/spa-0.json +9 -2
  149. package/extensions/ublocklite/rulesets/main/spa-1.json +12 -7
  150. package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +15575 -4509
  151. package/extensions/ublocklite/rulesets/main/swe-1.json +39 -33
  152. package/extensions/ublocklite/rulesets/main/tur-0.json +31 -9
  153. package/extensions/ublocklite/rulesets/main/ublock-badware.json +48 -116
  154. package/extensions/ublocklite/rulesets/main/ublock-filters.json +73 -39
  155. package/extensions/ublocklite/rulesets/main/ukr-0.json +6 -2
  156. package/extensions/ublocklite/rulesets/main/urlhaus-full.json +484 -977
  157. package/extensions/ublocklite/rulesets/main/vie-1.json +81 -70
  158. package/extensions/ublocklite/rulesets/modify-headers/chn-0.json +50 -2
  159. package/extensions/ublocklite/rulesets/modify-headers/vie-1.json +1 -1
  160. package/extensions/ublocklite/rulesets/redirect/adguard-mobile.json +20 -0
  161. package/extensions/ublocklite/rulesets/redirect/annoyances-overlays.json +0 -1
  162. package/extensions/ublocklite/rulesets/redirect/easylist.json +19 -0
  163. package/extensions/ublocklite/rulesets/redirect/fin-0.json +25 -25
  164. package/extensions/ublocklite/rulesets/redirect/isr-0.json +2 -1
  165. package/extensions/ublocklite/rulesets/redirect/rou-1.json +1 -0
  166. package/extensions/ublocklite/rulesets/redirect/rus-1.json +33 -17
  167. package/extensions/ublocklite/rulesets/redirect/swe-1.json +11 -156
  168. package/extensions/ublocklite/rulesets/redirect/tur-0.json +0 -1
  169. package/extensions/ublocklite/rulesets/redirect/ublock-filters.json +14 -9
  170. package/extensions/ublocklite/rulesets/redirect/vie-1.json +20 -4
  171. package/extensions/ublocklite/rulesets/regex/adguard-mobile.json +101 -0
  172. package/extensions/ublocklite/rulesets/regex/chn-0.json +3 -3
  173. package/extensions/ublocklite/rulesets/regex/deu-0.json +0 -1
  174. package/extensions/ublocklite/rulesets/regex/easylist.json +1 -1
  175. package/extensions/ublocklite/rulesets/regex/jpn-1.json +3 -5
  176. package/extensions/ublocklite/rulesets/regex/kor-1.json +2 -1
  177. package/extensions/ublocklite/rulesets/regex/nor-0.json +1 -15
  178. package/extensions/ublocklite/rulesets/regex/swe-1.json +1 -0
  179. package/extensions/ublocklite/rulesets/regex/tur-0.json +1 -0
  180. package/extensions/ublocklite/rulesets/regex/ublock-badware.json +5 -4
  181. package/extensions/ublocklite/rulesets/regex/ublock-filters.json +17 -4
  182. package/extensions/ublocklite/rulesets/removeparam/adguard-spyware-url.json +13 -6
  183. package/extensions/ublocklite/rulesets/removeparam/fin-0.json +12 -12
  184. package/extensions/ublocklite/rulesets/removeparam/rus-1.json +2 -2
  185. package/extensions/ublocklite/rulesets/removeparam/swe-1.json +25 -0
  186. package/extensions/ublocklite/rulesets/removeparam/ublock-filters.json +2 -2
  187. package/extensions/ublocklite/rulesets/ruleset-details.json +265 -268
  188. package/extensions/ublocklite/rulesets/scripting/declarative/adguard-mobile.js +42 -0
  189. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-cookies.js +3 -3
  190. package/extensions/ublocklite/rulesets/scripting/declarative/annoyances-overlays.js +3 -3
  191. package/extensions/ublocklite/rulesets/scripting/declarative/chn-0.js +3 -3
  192. package/extensions/ublocklite/rulesets/scripting/declarative/cze-0.js +3 -3
  193. package/extensions/ublocklite/rulesets/scripting/declarative/isr-0.js +3 -3
  194. package/extensions/ublocklite/rulesets/scripting/declarative/jpn-1.js +3 -3
  195. package/extensions/ublocklite/rulesets/scripting/declarative/nor-0.js +3 -3
  196. package/extensions/ublocklite/rulesets/scripting/declarative/rou-1.js +3 -3
  197. package/extensions/ublocklite/rulesets/scripting/declarative/rus-0.js +3 -3
  198. package/extensions/ublocklite/rulesets/scripting/declarative/rus-1.js +3 -3
  199. package/extensions/ublocklite/rulesets/scripting/declarative/spa-1.js +3 -3
  200. package/extensions/ublocklite/rulesets/scripting/declarative/swe-1.js +3 -3
  201. package/extensions/ublocklite/rulesets/scripting/declarative/tur-0.js +3 -3
  202. package/extensions/ublocklite/rulesets/scripting/declarative/ublock-filters.js +3 -3
  203. package/extensions/ublocklite/rulesets/scripting/declarative/vie-1.js +1 -1
  204. package/extensions/ublocklite/rulesets/scripting/generic/adguard-mobile.js +87 -0
  205. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-cookies.js +3 -3
  206. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-others.js +3 -3
  207. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-social.js +3 -3
  208. package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +3 -3
  209. package/extensions/ublocklite/rulesets/scripting/generic/deu-0.js +2 -2
  210. package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +3 -3
  211. package/extensions/ublocklite/rulesets/scripting/generic/fin-0.js +1 -1
  212. package/extensions/ublocklite/rulesets/scripting/generic/fra-0.js +2 -2
  213. package/extensions/ublocklite/rulesets/scripting/generic/idn-0.js +3 -3
  214. package/extensions/ublocklite/rulesets/scripting/generic/isr-0.js +1 -1
  215. package/extensions/ublocklite/rulesets/scripting/generic/nor-0.js +3 -3
  216. package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +3 -3
  217. package/extensions/ublocklite/rulesets/scripting/generic/spa-0.js +2 -2
  218. package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +2 -2
  219. package/extensions/ublocklite/rulesets/scripting/generic/swe-1.js +1 -1
  220. package/extensions/ublocklite/rulesets/scripting/generic/tur-0.js +1 -1
  221. package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
  222. package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +3 -3
  223. package/extensions/ublocklite/rulesets/scripting/generichigh/adguard-mobile.css +39 -0
  224. package/extensions/ublocklite/rulesets/scripting/generichigh/annoyances-cookies.css +0 -2
  225. package/extensions/ublocklite/rulesets/scripting/generichigh/chn-0.css +4 -1
  226. package/extensions/ublocklite/rulesets/scripting/generichigh/easylist.css +3 -14
  227. package/extensions/ublocklite/rulesets/scripting/generichigh/fra-0.css +0 -2
  228. package/extensions/ublocklite/rulesets/scripting/generichigh/idn-0.css +129 -139
  229. package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +1 -0
  230. package/extensions/ublocklite/rulesets/scripting/generichigh/tur-0.css +1 -0
  231. package/extensions/ublocklite/rulesets/scripting/generichigh/ublock-filters.css +1 -0
  232. package/extensions/ublocklite/rulesets/scripting/procedural/adguard-mobile.js +42 -0
  233. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +3 -3
  234. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-others.js +3 -3
  235. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +3 -3
  236. package/extensions/ublocklite/rulesets/scripting/procedural/chn-0.js +1 -1
  237. package/extensions/ublocklite/rulesets/scripting/procedural/deu-0.js +3 -3
  238. package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
  239. package/extensions/ublocklite/rulesets/scripting/procedural/hun-0.js +3 -3
  240. package/extensions/ublocklite/rulesets/scripting/procedural/idn-0.js +2 -2
  241. package/extensions/ublocklite/rulesets/scripting/procedural/ind-0.js +3 -3
  242. package/extensions/ublocklite/rulesets/scripting/procedural/ita-0.js +3 -3
  243. package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
  244. package/extensions/ublocklite/rulesets/scripting/procedural/kor-1.js +1 -1
  245. package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
  246. package/extensions/ublocklite/rulesets/scripting/procedural/spa-0.js +3 -3
  247. package/extensions/ublocklite/rulesets/scripting/procedural/spa-1.js +3 -3
  248. package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +3 -3
  249. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
  250. package/extensions/ublocklite/rulesets/scripting/procedural/ukr-0.js +3 -3
  251. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-current-script.js +451 -0
  252. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-on-property-read.js +369 -0
  253. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-on-property-write.js +347 -0
  254. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.addEventListener-defuser.js +498 -0
  255. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.adjust-setInterval.js +332 -0
  256. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.prevent-setTimeout.js +443 -0
  257. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.remove-attr.js +405 -0
  258. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.remove-class.js +396 -0
  259. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.remove-node-text.js +449 -0
  260. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-constant.js +541 -0
  261. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie-reload.js +437 -0
  262. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-cookie.js +433 -0
  263. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-local-storage-item.js +399 -0
  264. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.set-session-storage-item.js +399 -0
  265. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.remove-class.js +2 -2
  266. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-constant.js +1 -1
  267. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
  268. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-local-storage-item.js +2 -2
  269. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +2 -2
  270. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie-reload.js +2 -2
  271. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
  272. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-local-storage-item.js +2 -2
  273. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-current-script.js +2 -2
  274. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.abort-on-property-read.js +1 -1
  275. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +1 -1
  276. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-cookie.js +2 -2
  277. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +2 -2
  278. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-constant.js +1 -1
  279. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.set-cookie.js +2 -2
  280. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.trusted-set-local-storage-item.js +1 -1
  281. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-current-script.js +2 -2
  282. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-setTimeout.js +1 -1
  283. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.remove-attr.js +1 -1
  284. package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.set-constant.js +2 -2
  285. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.set-constant.js +2 -2
  286. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.addEventListener-defuser.js +2 -2
  287. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.addEventListener-defuser.js +2 -2
  288. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +2 -2
  289. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-refresh.js +330 -0
  290. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.remove-attr.js +1 -1
  291. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.set-constant.js +2 -2
  292. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.abort-current-script.js +2 -2
  293. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-setTimeout.js +2 -2
  294. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.adjust-setTimeout.js +2 -2
  295. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +2 -2
  296. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
  297. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.json-prune-fetch-response.js +2 -2
  298. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +3 -3
  299. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-setTimeout.js +2 -2
  300. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-node-text.js +3 -3
  301. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +3 -3
  302. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-cookie.js +2 -2
  303. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.json-prune.js +1 -1
  304. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.set-constant.js +1 -1
  305. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.abort-on-property-read.js +2 -2
  306. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.adjust-setInterval.js +2 -2
  307. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.adjust-setTimeout.js +2 -2
  308. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.noeval-if.js +2 -2
  309. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +2 -2
  310. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-setTimeout.js +3 -3
  311. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-constant.js +2 -2
  312. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-cookie.js +3 -3
  313. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-local-storage-item.js +3 -3
  314. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.set-session-storage-item.js +399 -0
  315. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.abort-current-script.js +1 -1
  316. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.addEventListener-defuser.js +1 -1
  317. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.href-sanitizer.js +2 -2
  318. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.remove-cookie.js +2 -2
  319. package/extensions/ublocklite/rulesets/scripting/scriptlet/swe-1.remove-node-text.js +2 -2
  320. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-current-script.js +2 -2
  321. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-property-read.js +2 -2
  322. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.abort-on-stack-trace.js +421 -0
  323. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
  324. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-window-open.js +2 -2
  325. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-xhr.js +2 -2
  326. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.remove-node-text.js +3 -3
  327. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
  328. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-local-storage-item.js +2 -2
  329. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
  330. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +1 -1
  331. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-write.js +2 -2
  332. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +3 -3
  333. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +3 -3
  334. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.adjust-setInterval.js +1 -1
  335. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.disable-newtab-links.js +1 -1
  336. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.href-sanitizer.js +2 -2
  337. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit.js +788 -0
  338. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
  339. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-xhr-response.js +3 -3
  340. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune.js +3 -3
  341. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +809 -0
  342. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +1 -1
  343. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.nowebrtc.js +1 -1
  344. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +2 -2
  345. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-requestAnimationFrame.js +2 -2
  346. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +2 -2
  347. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +3 -3
  348. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +3 -3
  349. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +2 -2
  350. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-attr.js +2 -2
  351. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-cookie.js +2 -2
  352. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +4 -4
  353. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +3 -3
  354. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.js +2 -2
  355. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-local-storage-item.js +2 -2
  356. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-session-storage-item.js +2 -2
  357. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.spoof-css.js +2 -2
  358. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +3 -3
  359. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-xhr-response.js +2 -2
  360. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +2 -2
  361. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +2 -2
  362. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +5 -3
  363. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +5 -3
  364. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +2 -2
  365. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +2 -2
  366. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.m3u-prune.js +1 -1
  367. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +2 -2
  368. package/extensions/ublocklite/rulesets/scripting/specific/adguard-mobile.js +42 -0
  369. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
  370. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
  371. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
  372. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +3 -3
  373. package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
  374. package/extensions/ublocklite/rulesets/scripting/specific/cze-0.js +3 -3
  375. package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
  376. package/extensions/ublocklite/rulesets/scripting/specific/easylist.js +3 -3
  377. package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
  378. package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
  379. package/extensions/ublocklite/rulesets/scripting/specific/grc-0.js +3 -3
  380. package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +3 -3
  381. package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
  382. package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
  383. package/extensions/ublocklite/rulesets/scripting/specific/isr-0.js +3 -3
  384. package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
  385. package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
  386. package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
  387. package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
  388. package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +3 -3
  389. package/extensions/ublocklite/rulesets/scripting/specific/rou-1.js +3 -3
  390. package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
  391. package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +3 -3
  392. package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
  393. package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
  394. package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
  395. package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
  396. package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +3 -3
  397. package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
  398. package/extensions/ublocklite/rulesets/scriptlet-details.json +467 -310
  399. package/extensions/ublocklite/rulesets/strictblock/adguard-mobile.json +891 -0
  400. package/extensions/ublocklite/rulesets/strictblock/annoyances-cookies.json +8 -1
  401. package/extensions/ublocklite/rulesets/strictblock/annoyances-widgets.json +2 -0
  402. package/extensions/ublocklite/rulesets/strictblock/chn-0.json +281 -4
  403. package/extensions/ublocklite/rulesets/strictblock/deu-0.json +1 -0
  404. package/extensions/ublocklite/rulesets/strictblock/easylist.json +15 -13
  405. package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +143 -696
  406. package/extensions/ublocklite/rulesets/strictblock/fra-0.json +245 -78
  407. package/extensions/ublocklite/rulesets/strictblock/hun-0.json +1 -1
  408. package/extensions/ublocklite/rulesets/strictblock/isr-0.json +0 -12
  409. package/extensions/ublocklite/rulesets/strictblock/ita-0.json +1 -1
  410. package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +161 -156
  411. package/extensions/ublocklite/rulesets/strictblock/kor-1.json +2 -0
  412. package/extensions/ublocklite/rulesets/strictblock/pgl.json +6 -18
  413. package/extensions/ublocklite/rulesets/strictblock/pol-0.json +1 -0
  414. package/extensions/ublocklite/rulesets/strictblock/rou-1.json +1 -0
  415. package/extensions/ublocklite/rulesets/strictblock/rus-0.json +0 -1
  416. package/extensions/ublocklite/rulesets/strictblock/rus-1.json +1 -0
  417. package/extensions/ublocklite/rulesets/strictblock/spa-0.json +2 -0
  418. package/extensions/ublocklite/rulesets/strictblock/spa-1.json +1 -0
  419. package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +15575 -4509
  420. package/extensions/ublocklite/rulesets/strictblock/swe-1.json +1 -4
  421. package/extensions/ublocklite/rulesets/strictblock/tur-0.json +3 -0
  422. package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +583 -614
  423. package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +1 -1
  424. package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +6 -0
  425. package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +484 -977
  426. package/extensions/ublocklite/rulesets/strictblock/vie-1.json +4 -9
  427. package/extensions/ublocklite/rulesets/urlskip/ublock-filters.json +61 -1
  428. package/extensions/ublocklite/ublock.zip +0 -0
  429. package/extensions/ublocklite/zapper-ui.html +7 -1
  430. package/package.json +13 -13
  431. package/scripts/build-open-api.js +1 -1
  432. package/src/browserless.ts +33 -30
  433. package/src/browsers/index.ts +6 -0
  434. package/src/routes/chromium/tests/websocket.spec.ts +1 -1
  435. package/static/docs/swagger.json +24 -11
  436. package/static/docs/swagger.min.json +23 -10
  437. package/static/function/client.js +6 -3
  438. package/static/function/index.html +6 -3
  439. package/extensions/ublocklite/rulesets/main/pol-3.json +0 -56707
  440. package/extensions/ublocklite/rulesets/strictblock/pol-3.json +0 -56714
@@ -19,6 +19,10 @@
19
19
  "message": "Cài đặt",
20
20
  "description": "appears as tab name in dashboard"
21
21
  },
22
+ "developPageName": {
23
+ "message": "Develop",
24
+ "description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
25
+ },
22
26
  "aboutPageName": {
23
27
  "message": "Giới thiệu",
24
28
  "description": "appears as tab name in dashboard"
@@ -233,8 +237,16 @@
233
237
  },
234
238
  "enableStrictBlockLegend": {
235
239
  "message": "Việc điều hướng đến các trang web có khả năng không mong muốn sẽ bị chặn và bạn sẽ được cung cấp tùy chọn để tiếp tục.",
240
+ "description": "Short description for a checkbox in the options page"
241
+ },
242
+ "developerModeLabel": {
243
+ "message": "Developer mode",
236
244
  "description": "Label for a checkbox in the options page"
237
245
  },
246
+ "developerModeLegend": {
247
+ "message": "Enables access to features suitable for technical users.",
248
+ "description": "Short description for a checkbox in the options page"
249
+ },
238
250
  "findListsPlaceholder": {
239
251
  "message": "Tìm danh sách",
240
252
  "description": "Placeholder for the input field used to find lists"
@@ -282,5 +294,29 @@
282
294
  "zapperTipQuit": {
283
295
  "message": "Thoát khỏi chế độ chặn phần tử tạm thời",
284
296
  "description": "Tooltip for the button used to exit zapper mode"
297
+ },
298
+ "saveButton": {
299
+ "message": "Save",
300
+ "description": "Text for buttons used to save changes"
301
+ },
302
+ "revertButton": {
303
+ "message": "Revert",
304
+ "description": "Text for buttons used to revert changes"
305
+ },
306
+ "importAndAppendButton": {
307
+ "message": "Import and append…",
308
+ "description": "Text for buttons used to import and append content"
309
+ },
310
+ "exportButton": {
311
+ "message": "Export…",
312
+ "description": "Text for buttons used to export content"
313
+ },
314
+ "dnrRulesSummary": {
315
+ "message": "Enter your own DNR rules below. <b>Do not add content from untrusted sources.</b>",
316
+ "description": "Short description of the DNR rules editor pane"
317
+ },
318
+ "dnrRulesCountInfo": {
319
+ "message": "Number of registered rules: {count}",
320
+ "description": "Short sentence to report the number of currently registered DNR rules"
285
321
  }
286
322
  }
@@ -19,6 +19,10 @@
19
19
  "message": "设置",
20
20
  "description": "appears as tab name in dashboard"
21
21
  },
22
+ "developPageName": {
23
+ "message": "Develop",
24
+ "description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
25
+ },
22
26
  "aboutPageName": {
23
27
  "message": "关于",
24
28
  "description": "appears as tab name in dashboard"
@@ -233,8 +237,16 @@
233
237
  },
234
238
  "enableStrictBlockLegend": {
235
239
  "message": "导航至潜在不良网站的操作将被拦截,并且您将可以选择继续前往。",
240
+ "description": "Short description for a checkbox in the options page"
241
+ },
242
+ "developerModeLabel": {
243
+ "message": "Developer mode",
236
244
  "description": "Label for a checkbox in the options page"
237
245
  },
246
+ "developerModeLegend": {
247
+ "message": "Enables access to features suitable for technical users.",
248
+ "description": "Short description for a checkbox in the options page"
249
+ },
238
250
  "findListsPlaceholder": {
239
251
  "message": "查找列表",
240
252
  "description": "Placeholder for the input field used to find lists"
@@ -282,5 +294,29 @@
282
294
  "zapperTipQuit": {
283
295
  "message": "退出临时元素移除模式",
284
296
  "description": "Tooltip for the button used to exit zapper mode"
297
+ },
298
+ "saveButton": {
299
+ "message": "Save",
300
+ "description": "Text for buttons used to save changes"
301
+ },
302
+ "revertButton": {
303
+ "message": "Revert",
304
+ "description": "Text for buttons used to revert changes"
305
+ },
306
+ "importAndAppendButton": {
307
+ "message": "Import and append…",
308
+ "description": "Text for buttons used to import and append content"
309
+ },
310
+ "exportButton": {
311
+ "message": "Export…",
312
+ "description": "Text for buttons used to export content"
313
+ },
314
+ "dnrRulesSummary": {
315
+ "message": "在下面输入您自己的DNR规则<b> 不要添加来自不可信来源的内容。</b>",
316
+ "description": "Short description of the DNR rules editor pane"
317
+ },
318
+ "dnrRulesCountInfo": {
319
+ "message": "已注册规则的数量:",
320
+ "description": "Short sentence to report the number of currently registered DNR rules"
285
321
  }
286
322
  }
@@ -19,6 +19,10 @@
19
19
  "message": "設定",
20
20
  "description": "appears as tab name in dashboard"
21
21
  },
22
+ "developPageName": {
23
+ "message": "開發",
24
+ "description": "appears as tab name in dashboard. Inspired from 'Develop' menu in Safari, see https://developer.apple.com/documentation/safari-developer-tools/develop-menu"
25
+ },
22
26
  "aboutPageName": {
23
27
  "message": "關於",
24
28
  "description": "appears as tab name in dashboard"
@@ -233,8 +237,16 @@
233
237
  },
234
238
  "enableStrictBlockLegend": {
235
239
  "message": "前往潛在不良網站的導航將被阻止,您可以選擇是否繼續前往。",
240
+ "description": "Short description for a checkbox in the options page"
241
+ },
242
+ "developerModeLabel": {
243
+ "message": "開發人員模式",
236
244
  "description": "Label for a checkbox in the options page"
237
245
  },
246
+ "developerModeLegend": {
247
+ "message": "啟用適合技術使用者使用的功能。",
248
+ "description": "Short description for a checkbox in the options page"
249
+ },
238
250
  "findListsPlaceholder": {
239
251
  "message": "尋找清單",
240
252
  "description": "Placeholder for the input field used to find lists"
@@ -282,5 +294,29 @@
282
294
  "zapperTipQuit": {
283
295
  "message": "離開元素臨時移除模式",
284
296
  "description": "Tooltip for the button used to exit zapper mode"
297
+ },
298
+ "saveButton": {
299
+ "message": "儲存",
300
+ "description": "Text for buttons used to save changes"
301
+ },
302
+ "revertButton": {
303
+ "message": "還原",
304
+ "description": "Text for buttons used to revert changes"
305
+ },
306
+ "importAndAppendButton": {
307
+ "message": "匯入並加入…",
308
+ "description": "Text for buttons used to import and append content"
309
+ },
310
+ "exportButton": {
311
+ "message": "匯出…",
312
+ "description": "Text for buttons used to export content"
313
+ },
314
+ "dnrRulesSummary": {
315
+ "message": "請在下方輸入您的 DNR 規則。<b>請勿新增來自不受信任來源的內容。</b>",
316
+ "description": "Short description of the DNR rules editor pane"
317
+ },
318
+ "dnrRulesCountInfo": {
319
+ "message": "已登錄規則數:{count}",
320
+ "description": "Short sentence to report the number of currently registered DNR rules"
285
321
  }
286
322
  }
@@ -37,6 +37,7 @@
37
37
  --default-gap-small: 12px;
38
38
  --default-gap-xsmall: 8px;
39
39
  --default-gap-xxsmall: 4px;
40
+ --button-font-size: max(calc(var(--font-size) * 0.875), 14px);
40
41
  }
41
42
 
42
43
  /* Common uBO styles */
@@ -85,7 +86,7 @@ button {
85
86
  color: var(--button-ink);
86
87
  display: inline-flex;
87
88
  fill: var(--button-ink);
88
- font-size: max(calc(var(--font-size) * 0.875), 14px);
89
+ font-size: var(--button-font-size);
89
90
  justify-content: center;
90
91
  min-height: 36px;
91
92
  padding: 0 var(--font-size);
@@ -3,7 +3,6 @@ body {
3
3
  box-sizing: border-box;
4
4
  display: flex;
5
5
  flex-direction: column;
6
- max-height: 100vh;
7
6
  padding: 0 var(--default-gap-xxsmall);
8
7
  }
9
8
  body > * {
@@ -40,9 +39,15 @@ a {
40
39
  color: var(--info3-ink);
41
40
  fill: var(--info3-ink);
42
41
  }
42
+
43
43
  input[type="number"] {
44
44
  width: 5em;
45
45
  }
46
+
47
+ input[type="file"] {
48
+ display: none;
49
+ }
50
+
46
51
  @media (max-height: 640px), (max-height: 800px) and (max-width: 480px) {
47
52
  .body > p,
48
53
  .body > ul {
@@ -1,4 +1,4 @@
1
- #dashboard-nav {
1
+ nav {
2
2
  background-color: var(--surface-1);
3
3
  border: 0;
4
4
  border-bottom: 1px solid var(--border-1);
@@ -7,8 +7,11 @@
7
7
  flex-wrap: wrap;
8
8
  overflow-x: hidden;
9
9
  padding: 0;
10
+ position: sticky;
11
+ top: 0;
12
+ z-index: 100;
10
13
  }
11
- .tabButton {
14
+ nav > .tabButton {
12
15
  background-color: transparent;
13
16
  border: 0;
14
17
  border-bottom: 3px solid transparent;
@@ -21,30 +24,34 @@
21
24
  text-decoration: none;
22
25
  white-space: nowrap;
23
26
  }
24
- .tabButton:focus {
27
+ nav > .tabButton:focus {
25
28
  outline: 0;
26
29
  }
27
- .tabButton:hover {
30
+ nav > .tabButton:hover {
28
31
  background-color: var(--dashboard-tab-hover-surface);
29
32
  border-bottom-color: var(--dashboard-tab-hover-border);
30
33
  }
31
34
 
32
35
  body[data-pane="settings"] #dashboard-nav .tabButton[data-pane="settings"],
33
36
  body[data-pane="rulesets"] #dashboard-nav .tabButton[data-pane="rulesets"],
37
+ body[data-pane="develop"] #dashboard-nav .tabButton[data-pane="develop"],
34
38
  body[data-pane="about"] #dashboard-nav .tabButton[data-pane="about"] {
35
39
  background-color: var(--dashboard-tab-active-surface);
36
40
  border-bottom: 3px solid var(--dashboard-tab-active-ink);
37
41
  color: var(--dashboard-tab-active-ink);
38
42
  fill: var(--dashboard-tab-active-ink);
39
43
  }
44
+ body:not([data-develop="true"]) #dashboard-nav .tabButton[data-pane="develop"] {
45
+ display: none;
46
+ }
40
47
 
41
48
  body > section {
42
49
  display: none;
43
- overflow: auto;
44
- padding-bottom: 8rem;
50
+ padding-bottom: 2rem;
45
51
  }
46
52
  body[data-pane="settings"] > section[data-pane="settings"],
47
53
  body[data-pane="rulesets"] > section[data-pane="rulesets"],
54
+ body[data-pane="develop"] > section[data-pane="develop"],
48
55
  body[data-pane="about"] > section[data-pane="about"] {
49
56
  display: block;
50
57
  }
@@ -57,10 +64,10 @@ body[data-pane="about"] > section[data-pane="about"] {
57
64
  }
58
65
 
59
66
  /* touch-screen devices */
60
- :root.mobile #dashboard-nav {
67
+ :root.mobile nav {
61
68
  flex-wrap: nowrap;
62
69
  overflow-x: auto;
63
70
  }
64
- :root.mobile #dashboard-nav .logo {
71
+ :root.mobile nav .logo {
65
72
  display: none;
66
73
  }
@@ -382,7 +382,7 @@
382
382
  }
383
383
 
384
384
  :root.dark {
385
- color-scheme: dark;
385
+ color-scheme: dark light;
386
386
  }
387
387
 
388
388
  /*
@@ -0,0 +1,112 @@
1
+ body[data-pane="develop"] {
2
+ height: 100vh;
3
+ }
4
+
5
+ section[data-pane="develop"] {
6
+ display: none;
7
+ flex-grow: 1;
8
+ overflow: hidden;
9
+ }
10
+
11
+ section[data-pane="develop"] > div {
12
+ display: flex;
13
+ flex-direction: column;
14
+ height: 100%;
15
+ }
16
+
17
+ section[data-pane="develop"] > div > * {
18
+ margin-bottom: 0;
19
+ margin-top: 1em;
20
+ }
21
+
22
+ #cm-dnrRules {
23
+ flex-grow: 1;
24
+ font-size: var(--monospace-size);
25
+ overflow: hidden;
26
+ }
27
+
28
+ /* https://discuss.codemirror.net/t/how-to-set-max-height-of-the-editor/2882/2 */
29
+ #cm-dnrRules .cm-editor {
30
+ background-color: var(--surface-0);
31
+ height: 100%;
32
+ }
33
+
34
+ #cm-dnrRules .cm-editor .cm-line {
35
+ border-bottom: 1px dotted transparent;
36
+ border-top: 1px dotted transparent;
37
+ }
38
+
39
+ #cm-dnrRules .cm-editor .cm-line:has(.ͼc) {
40
+ border-bottom: 1px dotted var(--border-1);
41
+ border-top: 1px dotted var(--border-1);
42
+ }
43
+
44
+ #cm-dnrRules .cm-editor .cm-line.badline:not(.cm-activeLine) {
45
+ background-color: color-mix(in srgb, var(--info3-ink) 15%, transparent 85%);
46
+ }
47
+
48
+ #cm-dnrRules .cm-editor .cm-line .badmark {
49
+ text-decoration: underline var(--cm-negative) wavy;
50
+ text-decoration-skip-ink: none;
51
+ }
52
+
53
+ #cm-dnrRules .cm-editor .cm-panel.cm-search {
54
+ display: flex;
55
+ flex-wrap: wrap;
56
+ font-family: sans-serif;
57
+ font-size: var(--font-size);
58
+ gap: 0.5em 1em;
59
+ padding: 0.5em 1.5em 0.5em 0.5em;
60
+ }
61
+
62
+ #cm-dnrRules .cm-editor .cm-panel.cm-search > * {
63
+ margin: 0;
64
+ }
65
+
66
+ #cm-dnrRules .cm-editor .cm-panel.cm-search .cm-textfield,
67
+ #cm-dnrRules .cm-editor .cm-panel.cm-search .cm-button,
68
+ #cm-dnrRules .cm-editor .cm-panel.cm-search label {
69
+ background-image: inherit;
70
+ border: inherit;
71
+ flex-grow: 0;
72
+ font-size: var(--button-font-size);
73
+ min-height: calc(var(--button-font-size) * 1.8);
74
+ }
75
+
76
+ #cm-dnrRules .cm-editor .cm-panel.info-panel {
77
+ display: flex;
78
+ flex-wrap: nowrap;
79
+ font-size: var(--font-size);
80
+ padding: var(--default-gap-xxsmall) var(--default-gap-xsmall);
81
+ }
82
+ #cm-dnrRules .cm-editor .cm-panel.info-panel .info {
83
+ flex-grow: 1;
84
+ overflow: auto;
85
+ }
86
+ #cm-dnrRules .cm-editor .cm-panel.info-panel .close {
87
+ cursor: default;
88
+ flex-shrink: 0;
89
+ padding-inline-start: 1em;
90
+ }
91
+ #cm-dnrRules .cm-editor .cm-panel.info-panel .close::after {
92
+ content: '\2715';
93
+ }
94
+ #cm-dnrRules .cm-editor .cm-panel.summary-panel {
95
+ background-color: color-mix(in srgb, var(--info1-ink) 15%, transparent 85%);
96
+ }
97
+
98
+ #cm-dnrRules .cm-editor .cm-panel.feedback-panel {
99
+ background-color: color-mix(in srgb, var(--info3-ink) 15%, transparent 85%);
100
+ white-space: pre;
101
+ max-height: 10cqh;
102
+ }
103
+
104
+ #cm-dnrRules .cm-editor .cm-gutterElement {
105
+ cursor: default;
106
+ user-select: none;
107
+ }
108
+
109
+ #cm-dnrRules .cm-editor .cm-tooltip .badmark-tooltip {
110
+ background-color: color-mix(in srgb, var(--info3-ink) 15%, transparent 85%);
111
+ padding: var(--default-gap-xxsmall) var(--default-gap-xsmall);
112
+ }
@@ -1,20 +1,24 @@
1
+ :root {
2
+ --filtering-mode-button-size: 60px; /* should be multiple of 4 */
3
+ --filtering-mode-slider-width: calc(4 * var(--filtering-mode-button-size) + 3px);
4
+ }
5
+
1
6
  .filteringModeSlider {
2
7
  align-items: center;
3
8
  container-type: size;
4
9
  display: flex;
5
- height: 60px;
10
+ height: var(--filtering-mode-button-size);
6
11
  justify-content: center;
7
12
  position: relative;
8
- width: 240px;
13
+ width: var(--filtering-mode-slider-width);
9
14
  }
10
15
 
11
16
  .filteringModeButton {
12
17
  background-color: var(--surface-1);
13
- box-sizing: border-box;
14
- border-radius: 30% 15% / 15% 30%;
15
- height: calc(25cqw + 2px);
18
+ border-radius: 20%;
19
+ height: var(--filtering-mode-button-size);
16
20
  position: absolute;
17
- width: calc(25cqw + 2px);
21
+ width: var(--filtering-mode-button-size);
18
22
  z-index: 10;
19
23
  }
20
24
 
@@ -23,9 +27,8 @@
23
27
  border: 4px solid var(--accent-surface-1);
24
28
  border-radius: inherit;
25
29
  box-sizing: border-box;
26
- height: calc(100% - 2px);
27
- margin: 1px;
28
- width: calc(100% - 2px);
30
+ height: 100%;
31
+ width: 100%;
29
32
  }
30
33
 
31
34
  .filteringModeSlider.moving .filteringModeButton > div,
@@ -40,14 +43,12 @@
40
43
 
41
44
  .filteringModeSlider span[data-level] {
42
45
  background-color: var(--accent-surface-1);
43
- border: 1px solid var(--accent-surface-1);
44
- box-sizing: border-box;
45
46
  display: inline-flex;
47
+ flex-shrink: 0;
46
48
  height: 30%;
47
49
  margin-left: 1px;
48
- width: 25%;
50
+ width: var(--filtering-mode-button-size);
49
51
  }
50
-
51
52
  .filteringModeSlider span[data-level]:first-of-type {
52
53
  margin-left: 0;
53
54
  }
@@ -60,25 +61,33 @@
60
61
  left: 0;
61
62
  }
62
63
  .filteringModeSlider[data-level="1"] .filteringModeButton {
63
- left: calc(25% - 1px);
64
+ left: calc(var(--filtering-mode-button-size) + 1px);
64
65
  }
65
66
  .filteringModeSlider[data-level="2"] .filteringModeButton {
66
- left: calc(50% - 1px);
67
+ left: calc(var(--filtering-mode-button-size) * 2 + 2px);
67
68
  }
68
69
  .filteringModeSlider[data-level="3"] .filteringModeButton {
69
- left: calc(75% - 1px);
70
+ left: calc(var(--filtering-mode-button-size) * 3 + 3px);
71
+ }
72
+
73
+ [dir="rtl"] .filteringModeSlider span[data-level] {
74
+ margin-left: 0;
75
+ margin-right: 1px;
76
+ }
77
+ [dir="rtl"] .filteringModeSlider span[data-level]:first-of-type {
78
+ margin-right: 0;
70
79
  }
71
80
  [dir="rtl"] .filteringModeSlider[data-level="0"] .filteringModeButton {
72
- left: 75%;
81
+ right: 0;
73
82
  }
74
83
  [dir="rtl"] .filteringModeSlider[data-level="1"] .filteringModeButton {
75
- left: 50%;
84
+ right: calc(var(--filtering-mode-button-size) + 1px);
76
85
  }
77
86
  [dir="rtl"] .filteringModeSlider[data-level="2"] .filteringModeButton {
78
- left: 25%;
87
+ right: calc(var(--filtering-mode-button-size) * 2 + 2px);
79
88
  }
80
89
  [dir="rtl"] .filteringModeSlider[data-level="3"] .filteringModeButton {
81
- left: 0;
90
+ right: calc(var(--filtering-mode-button-size) * 3 + 3px);
82
91
  }
83
92
 
84
93
 
@@ -4,18 +4,21 @@
4
4
  top: -20%;
5
5
  }
6
6
 
7
+ :root {
8
+ --popup-min-width: calc(
9
+ var(--filtering-mode-slider-width) +
10
+ var(--filtering-mode-button-size) / 2
11
+ );
12
+ }
13
+
7
14
  :root body,
8
15
  :root.mobile body {
9
- --font-size: 14px;
16
+ --font-size: 15px;
10
17
  --popup-gap: var(--font-size);
11
18
  --popup-gap-thin: calc(0.5 * var(--popup-gap));
12
19
  --popup-gap-extra-thin: calc(0.25 * var(--popup-gap));
13
- --popup-main-min-width: 18em;
14
- --popup-firewall-min-width: 30em;
15
- --popup-rule-cell-width: 5em;
16
20
  font-size: var(--font-size);
17
- line-height: 20px;
18
- min-width: 100%;
21
+ min-width: var(--popup-min-width);
19
22
  }
20
23
  :root body.loading {
21
24
  opacity: 0;
@@ -34,7 +37,6 @@ a {
34
37
  display: flex;
35
38
  flex-direction: column;
36
39
  max-width: 340px;
37
- min-width: 100%;
38
40
  }
39
41
  :root.portrait #main {
40
42
  align-self: inherit;
@@ -66,13 +68,9 @@ hr {
66
68
  body[data-forbid~="filteringMode"] .filteringModeSlider {
67
69
  pointer-events: none;
68
70
  }
69
- body[data-forbid~="dashboard"] #gotoDashboard {
70
- display: none;
71
- }
72
-
73
- .lrspacer {
74
- padding-left: var(--default-gap-small);
75
- padding-right: var(--default-gap-small);
71
+ body[data-forbid~="dashboard"] #gotoDashboard,
72
+ body[data-forbid~="zapper"] #gotoZapper {
73
+ visibility: hidden;
76
74
  }
77
75
 
78
76
  #filteringModeText {
@@ -102,7 +100,6 @@ body[data-forbid~="dashboard"] #gotoDashboard {
102
100
  align-self: center;
103
101
  margin-bottom: var(--popup-gap);
104
102
  margin-top: var(--popup-gap);
105
- width: calc(var(--popup-main-min-width) - 1em);
106
103
  }
107
104
 
108
105
  .rulesetTools {
@@ -177,7 +174,7 @@ body.needReload #refresh {
177
174
  font-size: 1.4em;
178
175
  min-width: 32px;
179
176
  padding: var(--popup-gap)
180
- var(--popup-gap-thin);
177
+ var(--popup-gap-extra-thin);
181
178
  unicode-bidi: embed;
182
179
  visibility: hidden;
183
180
  }
@@ -189,6 +186,7 @@ body.needReload #refresh {
189
186
  visibility: visible;
190
187
  }
191
188
  .toolRibbon .tool .caption {
189
+ color: var(--ink-2);
192
190
  font: 10px/12px sans-serif;
193
191
  margin-top: 6px;
194
192
  text-align: center;
@@ -0,0 +1,11 @@
1
+ :root .safari {
2
+ display: none;
3
+ }
4
+
5
+ :root.safari .safari {
6
+ display: initial;
7
+ }
8
+
9
+ .warning {
10
+ color: var(--info2-ink);
11
+ }
@@ -1,3 +1,7 @@
1
+ :root {
2
+ --filtering-mode-button-size: 32px;
3
+ }
4
+
1
5
  body.loading {
2
6
  visibility: hidden;
3
7
  }
@@ -21,6 +25,9 @@ body[data-forbid~="filteringMode"] section[data-pane="settings"] > div:has(> h3[
21
25
  body[data-forbid~="filteringMode"] section[data-pane="settings"] > div:has(> h3[data-i18n="filteringMode0Name"]) {
22
26
  display: none;
23
27
  }
28
+ body[data-forbid~="develop"] #developerMode {
29
+ display: none;
30
+ }
24
31
 
25
32
  label:has(input[type="checkbox"][disabled]),
26
33
  label:has(input[type="checkbox"][disabled]) + legend {
@@ -67,19 +74,17 @@ label:has(input[type="checkbox"][disabled]) + legend {
67
74
  white-space: pre-line;
68
75
  }
69
76
  .filteringModeSlider {
70
- height: calc(60px / 2);
71
77
  pointer-events: none;
72
- width: calc(240px / 2);
73
78
  }
74
79
 
75
80
  h3[data-i18n="filteringMode0Name"]::first-letter {
76
81
  text-transform: capitalize;
77
82
  }
78
83
  #trustedSites {
79
- box-sizing: border-box;
80
- height: 6rem;
81
- resize: vertical;
82
- width: 100%;
84
+ background-color: var(--surface-0);
85
+ border: 1px solid var(--surface-3);
86
+ font-size: var(--monospace-size);
87
+ min-height: 8rem;
83
88
  }
84
89
 
85
90
  section[data-pane="rulesets"] > div:first-of-type {
@@ -16,11 +16,11 @@ html#ubol-zapper,
16
16
  outline: none;
17
17
  }
18
18
  #ubol-zapper aside {
19
- background-color: var(--surface-1);
20
19
  box-sizing: border-box;
21
20
  cursor: default;
22
21
  display: flex;
23
22
  flex-direction: column;
23
+ gap: 2px;
24
24
  position: fixed;
25
25
  right: 2px;
26
26
  top: 50%;
@@ -31,14 +31,6 @@ html#ubol-zapper,
31
31
  left: 2px;
32
32
  right: unset;
33
33
  }
34
- #ubol-zapper aside > #quit {
35
- border: 1px solid rgba(0,0,0,0.5);
36
- fill: none;
37
- stroke: var(--ink-1);
38
- stroke-width: 3px;
39
- width: var(--quit-button-size);
40
- height: var(--quit-button-size);
41
- }
42
34
  #ubol-zapper svg#sea {
43
35
  cursor: crosshair;
44
36
  box-sizing: border-box;
@@ -57,6 +49,19 @@ html#ubol-zapper,
57
49
  stroke-width: 0.5px;
58
50
  fill: rgba(255,255,63,0.20);
59
51
  }
60
- #ubol-zapper #quit:hover {
52
+ #ubol-zapper aside > div {
53
+ background-color: var(--surface-1);
54
+ border: 1px solid rgba(0,0,0,0.5);
55
+ box-sizing: border-box;
56
+ fill: none;
57
+ stroke: var(--ink-1);
58
+ stroke-width: 2px;
59
+ width: var(--quit-button-size);
60
+ height: var(--quit-button-size);
61
+ }
62
+ #ubol-zapper aside > div:hover {
61
63
  background-color: var(--surface-2)
62
64
  }
65
+ :root:not(.mobile) #pick {
66
+ display: none;
67
+ }