@browserless.io/browserless 2.23.0 → 2.24.0-beta-2

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 (119) hide show
  1. package/build/routes/chrome/http/pdf.post.body.json +8 -8
  2. package/build/routes/chromium/http/content.post.body.json +8 -8
  3. package/build/routes/chromium/http/pdf.post.body.json +8 -8
  4. package/build/routes/chromium/http/scrape.post.body.json +8 -8
  5. package/build/routes/chromium/http/screenshot.post.body.json +8 -8
  6. package/docker/base/Dockerfile +1 -1
  7. package/docker/multi/Dockerfile +2 -1
  8. package/docker/webkit/Dockerfile +2 -1
  9. package/extensions/ublock/_locales/ar/messages.json +5 -1
  10. package/extensions/ublock/_locales/az/messages.json +4 -0
  11. package/extensions/ublock/_locales/be/messages.json +5 -1
  12. package/extensions/ublock/_locales/bg/messages.json +4 -0
  13. package/extensions/ublock/_locales/bn/messages.json +4 -0
  14. package/extensions/ublock/_locales/br_FR/messages.json +4 -0
  15. package/extensions/ublock/_locales/bs/messages.json +4 -0
  16. package/extensions/ublock/_locales/ca/messages.json +4 -0
  17. package/extensions/ublock/_locales/cs/messages.json +6 -2
  18. package/extensions/ublock/_locales/cv/messages.json +4 -0
  19. package/extensions/ublock/_locales/cy/messages.json +15 -11
  20. package/extensions/ublock/_locales/da/messages.json +4 -0
  21. package/extensions/ublock/_locales/de/messages.json +8 -4
  22. package/extensions/ublock/_locales/el/messages.json +4 -0
  23. package/extensions/ublock/_locales/en/messages.json +4 -0
  24. package/extensions/ublock/_locales/en_GB/messages.json +4 -0
  25. package/extensions/ublock/_locales/eo/messages.json +4 -0
  26. package/extensions/ublock/_locales/es/messages.json +5 -1
  27. package/extensions/ublock/_locales/et/messages.json +4 -0
  28. package/extensions/ublock/_locales/eu/messages.json +4 -0
  29. package/extensions/ublock/_locales/fa/messages.json +14 -10
  30. package/extensions/ublock/_locales/fi/messages.json +7 -3
  31. package/extensions/ublock/_locales/fil/messages.json +4 -0
  32. package/extensions/ublock/_locales/fr/messages.json +5 -1
  33. package/extensions/ublock/_locales/fy/messages.json +4 -0
  34. package/extensions/ublock/_locales/gl/messages.json +4 -0
  35. package/extensions/ublock/_locales/gu/messages.json +4 -0
  36. package/extensions/ublock/_locales/he/messages.json +4 -0
  37. package/extensions/ublock/_locales/hi/messages.json +4 -0
  38. package/extensions/ublock/_locales/hr/messages.json +4 -0
  39. package/extensions/ublock/_locales/hu/messages.json +4 -0
  40. package/extensions/ublock/_locales/hy/messages.json +4 -0
  41. package/extensions/ublock/_locales/id/messages.json +4 -0
  42. package/extensions/ublock/_locales/it/messages.json +4 -0
  43. package/extensions/ublock/_locales/ja/messages.json +6 -2
  44. package/extensions/ublock/_locales/ka/messages.json +5 -1
  45. package/extensions/ublock/_locales/kk/messages.json +4 -0
  46. package/extensions/ublock/_locales/kn/messages.json +4 -0
  47. package/extensions/ublock/_locales/ko/messages.json +5 -1
  48. package/extensions/ublock/_locales/lt/messages.json +4 -0
  49. package/extensions/ublock/_locales/lv/messages.json +4 -0
  50. package/extensions/ublock/_locales/mk/messages.json +4 -0
  51. package/extensions/ublock/_locales/ml/messages.json +4 -0
  52. package/extensions/ublock/_locales/mr/messages.json +4 -0
  53. package/extensions/ublock/_locales/ms/messages.json +4 -0
  54. package/extensions/ublock/_locales/nb/messages.json +4 -0
  55. package/extensions/ublock/_locales/nl/messages.json +4 -0
  56. package/extensions/ublock/_locales/no/messages.json +4 -0
  57. package/extensions/ublock/_locales/oc/messages.json +4 -0
  58. package/extensions/ublock/_locales/pa/messages.json +5 -1
  59. package/extensions/ublock/_locales/pl/messages.json +4 -0
  60. package/extensions/ublock/_locales/pt_BR/messages.json +4 -0
  61. package/extensions/ublock/_locales/pt_PT/messages.json +4 -0
  62. package/extensions/ublock/_locales/ro/messages.json +4 -0
  63. package/extensions/ublock/_locales/ru/messages.json +5 -1
  64. package/extensions/ublock/_locales/si/messages.json +4 -0
  65. package/extensions/ublock/_locales/sk/messages.json +4 -0
  66. package/extensions/ublock/_locales/sl/messages.json +4 -0
  67. package/extensions/ublock/_locales/so/messages.json +4 -0
  68. package/extensions/ublock/_locales/sq/messages.json +4 -0
  69. package/extensions/ublock/_locales/sr/messages.json +4 -0
  70. package/extensions/ublock/_locales/sv/messages.json +5 -1
  71. package/extensions/ublock/_locales/sw/messages.json +4 -0
  72. package/extensions/ublock/_locales/ta/messages.json +4 -0
  73. package/extensions/ublock/_locales/te/messages.json +4 -0
  74. package/extensions/ublock/_locales/th/messages.json +4 -0
  75. package/extensions/ublock/_locales/tr/messages.json +4 -0
  76. package/extensions/ublock/_locales/uk/messages.json +7 -3
  77. package/extensions/ublock/_locales/ur/messages.json +4 -0
  78. package/extensions/ublock/_locales/vi/messages.json +4 -0
  79. package/extensions/ublock/_locales/zh_CN/messages.json +4 -0
  80. package/extensions/ublock/_locales/zh_TW/messages.json +4 -0
  81. package/extensions/ublock/assets/assets.json +14 -14
  82. package/extensions/ublock/assets/resources/run-at.js +80 -0
  83. package/extensions/ublock/assets/resources/safe-self.js +218 -0
  84. package/extensions/ublock/assets/resources/scriptlets.js +461 -538
  85. package/extensions/ublock/assets/resources/set-attr.js +201 -0
  86. package/extensions/ublock/assets/thirdparties/easylist/easylist.txt +4002 -11582
  87. package/extensions/ublock/assets/thirdparties/easylist/easyprivacy.txt +257 -83
  88. package/extensions/ublock/assets/thirdparties/pgl.yoyo.org/as/serverlist +22 -38
  89. package/extensions/ublock/assets/thirdparties/publicsuffix.org/list/effective_tld_names.dat +102 -110
  90. package/extensions/ublock/assets/thirdparties/urlhaus-filter/urlhaus-filter-online.txt +2776 -3613
  91. package/extensions/ublock/assets/ublock/badware.min.txt +581 -382
  92. package/extensions/ublock/assets/ublock/filters.min.txt +997 -990
  93. package/extensions/ublock/assets/ublock/privacy.min.txt +145 -26
  94. package/extensions/ublock/assets/ublock/quick-fixes.min.txt +134 -83
  95. package/extensions/ublock/assets/ublock/unbreak.min.txt +69 -46
  96. package/extensions/ublock/css/document-blocked.css +28 -1
  97. package/extensions/ublock/document-blocked.html +9 -7
  98. package/extensions/ublock/js/assets.js +15 -11
  99. package/extensions/ublock/js/benchmarks.js +13 -9
  100. package/extensions/ublock/js/biditrie.js +1 -1
  101. package/extensions/ublock/js/document-blocked.js +41 -5
  102. package/extensions/ublock/js/hntrie.js +1 -1
  103. package/extensions/ublock/js/i18n.js +2 -4
  104. package/extensions/ublock/js/pagestore.js +61 -43
  105. package/extensions/ublock/js/s14e-serializer.js +47 -22
  106. package/extensions/ublock/js/scriptlet-filtering.js +21 -18
  107. package/extensions/ublock/js/scriptlets/load-large-media-interactive.js +61 -48
  108. package/extensions/ublock/js/scriptlets/should-inject-contentscript.js +1 -3
  109. package/extensions/ublock/js/static-dnr-filtering.js +9 -7
  110. package/extensions/ublock/js/static-filtering-parser.js +87 -54
  111. package/extensions/ublock/js/static-net-filtering.js +118 -42
  112. package/extensions/ublock/js/traffic.js +37 -18
  113. package/extensions/ublock/js/vapi-background-ext.js +21 -49
  114. package/extensions/ublock/js/vapi-background.js +8 -0
  115. package/extensions/ublock/manifest.json +1 -1
  116. package/extensions/ublock/web_accessible_resources/googlesyndication_adsbygoogle.js +3 -1
  117. package/package.json +16 -16
  118. package/static/docs/swagger.json +1 -1
  119. package/static/docs/swagger.min.json +1 -1
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Continuă",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Exportă către stocarea în cloud",
1196
1200
  "description": "tooltip"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "extName": {
3
- "message": "uBlock",
3
+ "message": "uBlock Origin",
4
4
  "description": "extension name."
5
5
  },
6
6
  "extShortDesc": {
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Продолжить",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Заблокированная страница собирается перенаправить вас на другой сайт. Если вы решите продолжить, вы перейдете непосредственно на: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Экспорт в облачное хранилище",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "මේඝ ආචයනයට නිර්යාත කරන්න",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Pokračovať",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Zablokovaná stránka chce presmerovať na inú stránku. Ak sa rozhodnete pokračovať, prejdete priamo na: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Exportovať do cloudového úložiska",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Izvozi v shrambe oblaka",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "{{value}} saac kahor",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Vazhdoj",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Faqja e bllokuar do t'ju drejtojë në një uebsajt tjetër. Në rast se vijoni do të shkoni te: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Eksportoni në renë informatike",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Настави",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Извези у складиште у облаку",
1196
1200
  "description": "tooltip"
@@ -4,7 +4,7 @@
4
4
  "description": "extension name."
5
5
  },
6
6
  "extShortDesc": {
7
- "message": "Äntligen en effektiv blockerare. Snäll mot både processor och minne.",
7
+ "message": "Äntligen en effektiv blockerare. Skonsam mot både processor och minne.",
8
8
  "description": "this will be in the Chrome web store: must be 132 characters or less"
9
9
  },
10
10
  "dashboardName": {
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Fortsätt",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Den blockerade sidan vill omdirigera dig till en annan webbplats. Om du väljer att fortsätta skickas du direkt till: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Exportera till molnlagring",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Hamisha hadi hifadhi ya wingu",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "மேகக்கணினி சேமிப்பகத்திற்கு ஏற்று",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "క్లౌడ్ లో పొందుపరచు",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "ดำเนินการ",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Export to cloud storage",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Devam et",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Engellenen sayfa sizi başka bir siteye yönlendirmek istiyor. Devam etmek isterseniz doğrudan şuraya yönlendirileceksiniz: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Bulut depolamaya aktar",
1196
1200
  "description": "tooltip"
@@ -108,7 +108,7 @@
108
108
  "description": "For the new mobile-friendly popup design"
109
109
  },
110
110
  "popupDomainsConnected_v2": {
111
- "message": "Доменів під'єднано",
111
+ "message": "Підключені домени",
112
112
  "description": "For the new mobile-friendly popup design"
113
113
  },
114
114
  "popupTipDashboard": {
@@ -336,7 +336,7 @@
336
336
  "description": "English: Color-blind friendly"
337
337
  },
338
338
  "settingsAppearance": {
339
- "message": "Вигляд",
339
+ "message": "Зовнішній вигляд",
340
340
  "description": "Section for controlling user interface appearance"
341
341
  },
342
342
  "settingsThemeLabel": {
@@ -344,7 +344,7 @@
344
344
  "description": "Label for checkbox to enable a custom dark theme"
345
345
  },
346
346
  "settingsThemeAccent0Label": {
347
- "message": "Акцент кольору користувача",
347
+ "message": "Індивідуальний колір акценту",
348
348
  "description": "Label for checkbox to pick an accent color"
349
349
  },
350
350
  "settingsCloudStorageEnabledPrompt": {
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Продовжити",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "Заблокована сторінка хоче переадресувати на інший сайт. Якщо ви вирішите продовжити, ви перейдете безпосередньо на: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Експортувати до хмарного сховища",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Proceed",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "کلاؤڈ سٹوریج میں برآمد کریں",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "Tiếp tục",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "The blocked page wants to redirect to another site. If you choose to proceed, you will navigate directly to: {{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "Xuất ra lưu trữ trực tuyến",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "继续加载",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "被屏蔽的网页想重定向到另一个网站。如果您选择继续,将直接导航到:{{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "导出到云端储存",
1196
1200
  "description": "tooltip"
@@ -1191,6 +1191,10 @@
1191
1191
  "message": "繼續載入",
1192
1192
  "description": "Button text to navigate to the blocked page"
1193
1193
  },
1194
+ "docblockedRedirectPrompt": {
1195
+ "message": "被封鎖的頁面想要重新導向至另一個網站。如果您選擇繼續,則會直接前往:{{url}}",
1196
+ "description": "Text warning about an incoming redirect"
1197
+ },
1194
1198
  "cloudPush": {
1195
1199
  "message": "匯出至雲端儲存空間",
1196
1200
  "description": "tooltip"
@@ -137,7 +137,7 @@
137
137
  "tags": "ads",
138
138
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/2_without_easylist.txt",
139
139
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
140
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
140
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
141
141
  },
142
142
  "adguard-mobile": {
143
143
  "content": "filters",
@@ -148,7 +148,7 @@
148
148
  "ua": "mobile",
149
149
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/11.txt",
150
150
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
151
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
151
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
152
152
  },
153
153
  "easylist": {
154
154
  "content": "filters",
@@ -175,7 +175,7 @@
175
175
  "tags": "privacy",
176
176
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/17.txt",
177
177
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
178
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
178
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
179
179
  },
180
180
  "adguard-spyware": {
181
181
  "content": "filters",
@@ -184,7 +184,7 @@
184
184
  "title": "AdGuard Tracking Protection",
185
185
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/3.txt",
186
186
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
187
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
187
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
188
188
  },
189
189
  "block-lan": {
190
190
  "content": "filters",
@@ -256,7 +256,7 @@
256
256
  "tags": "annoyances cookies",
257
257
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/18.txt",
258
258
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
259
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
259
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
260
260
  },
261
261
  "ublock-cookies-adguard": {
262
262
  "content": "filters",
@@ -325,7 +325,7 @@
325
325
  "tags": "annoyances social",
326
326
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/4.txt",
327
327
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
328
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
328
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
329
329
  },
330
330
  "fanboy-social": {
331
331
  "content": "filters",
@@ -368,7 +368,7 @@
368
368
  "tags": "annoyances",
369
369
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/19.txt",
370
370
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
371
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
371
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
372
372
  },
373
373
  "adguard-mobile-app-banners": {
374
374
  "content": "filters",
@@ -379,7 +379,7 @@
379
379
  "tags": "annoyances mobile",
380
380
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/20.txt",
381
381
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
382
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
382
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
383
383
  },
384
384
  "adguard-other-annoyances": {
385
385
  "content": "filters",
@@ -390,7 +390,7 @@
390
390
  "tags": "annoyances",
391
391
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/21.txt",
392
392
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
393
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
393
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
394
394
  },
395
395
  "adguard-widgets": {
396
396
  "content": "filters",
@@ -401,7 +401,7 @@
401
401
  "tags": "annoyances",
402
402
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/22.txt",
403
403
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
404
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
404
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
405
405
  },
406
406
  "easylist-annoyances": {
407
407
  "content": "filters",
@@ -717,7 +717,7 @@
717
717
  "lang": "ja",
718
718
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/7.txt",
719
719
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
720
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
720
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
721
721
  },
722
722
  "KOR-1": {
723
723
  "content": "filters",
@@ -772,7 +772,7 @@
772
772
  "lang": "af fy nl",
773
773
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/8.txt",
774
774
  "cdnURLs": null,
775
- "supportURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
775
+ "supportURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
776
776
  },
777
777
  "NOR-0": {
778
778
  "content": "filters",
@@ -858,7 +858,7 @@
858
858
  "lang": "an ast ca cak es eu gl gn trs pt quz",
859
859
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/9.txt",
860
860
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
861
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
861
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
862
862
  },
863
863
  "SVN-0": {
864
864
  "content": "filters",
@@ -903,7 +903,7 @@
903
903
  "lang": "tr",
904
904
  "contentURL": "https://filters.adtidy.org/extension/ublock/filters/13.txt",
905
905
  "supportURL": "https://github.com/AdguardTeam/AdguardFilters#adguard-filters",
906
- "instructionURL": "https://kb.adguard.com/en/general/adguard-ad-filters"
906
+ "instructionURL": "https://adguard.com/kb/general/ad-filtering/adguard-filters/"
907
907
  },
908
908
  "VIE-1": {
909
909
  "content": "filters",
@@ -0,0 +1,80 @@
1
+ /*******************************************************************************
2
+
3
+ uBlock Origin - a comprehensive, efficient content blocker
4
+ Copyright (C) 2019-present Raymond Hill
5
+
6
+ This program is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ You should have received a copy of the GNU General Public License
17
+ along with this program. If not, see {http://www.gnu.org/licenses/}.
18
+
19
+ Home: https://github.com/gorhill/uBlock
20
+
21
+ The scriptlets below are meant to be injected only into a
22
+ web page context.
23
+ */
24
+
25
+ import { safeSelf } from './safe-self.js';
26
+
27
+ /* eslint no-prototype-builtins: 0 */
28
+
29
+ /**
30
+ * @helperScriptlet run-at.fn
31
+ *
32
+ * @description
33
+ * Execute a function at a specific page-load milestone.
34
+ *
35
+ * @param fn
36
+ * The function to call.
37
+ *
38
+ * @param when
39
+ * An identifier which tells when the function should be executed.
40
+ * See <https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState>.
41
+ *
42
+ * @example
43
+ * `runAt(( ) => { start(); }, 'interactive')`
44
+ *
45
+ * */
46
+
47
+ export function runAt(fn, when) {
48
+ const intFromReadyState = state => {
49
+ const targets = {
50
+ 'loading': 1, 'asap': 1,
51
+ 'interactive': 2, 'end': 2, '2': 2,
52
+ 'complete': 3, 'idle': 3, '3': 3,
53
+ };
54
+ const tokens = Array.isArray(state) ? state : [ state ];
55
+ for ( const token of tokens ) {
56
+ const prop = `${token}`;
57
+ if ( targets.hasOwnProperty(prop) === false ) { continue; }
58
+ return targets[prop];
59
+ }
60
+ return 0;
61
+ };
62
+ const runAt = intFromReadyState(when);
63
+ if ( intFromReadyState(document.readyState) >= runAt ) {
64
+ fn(); return;
65
+ }
66
+ const onStateChange = ( ) => {
67
+ if ( intFromReadyState(document.readyState) < runAt ) { return; }
68
+ fn();
69
+ safe.removeEventListener.apply(document, args);
70
+ };
71
+ const safe = safeSelf();
72
+ const args = [ 'readystatechange', onStateChange, { capture: true } ];
73
+ safe.addEventListener.apply(document, args);
74
+ }
75
+ runAt.details = {
76
+ name: 'run-at.fn',
77
+ dependencies: [
78
+ safeSelf,
79
+ ],
80
+ };