@browserless.io/browserless 2.38.1 → 2.38.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 (213) hide show
  1. package/CHANGELOG.md +26 -1
  2. package/build/browsers/index.js +9 -8
  3. package/build/routes/management/http/kill.get.js +2 -2
  4. package/build/shared/utils/function/handler.js +2 -2
  5. package/build/utils.d.ts +1 -0
  6. package/build/utils.js +1 -0
  7. package/build/utils.spec.d.ts +1 -0
  8. package/build/utils.spec.js +27 -0
  9. package/extensions/ublocklite/_locales/be/messages.json +5 -5
  10. package/extensions/ublocklite/_locales/id/messages.json +9 -9
  11. package/extensions/ublocklite/_locales/ja/messages.json +4 -4
  12. package/extensions/ublocklite/_locales/pt_PT/messages.json +1 -1
  13. package/extensions/ublocklite/_locales/th/messages.json +2 -2
  14. package/extensions/ublocklite/_locales/uk/messages.json +9 -9
  15. package/extensions/ublocklite/_locales/vi/messages.json +5 -5
  16. package/extensions/ublocklite/_locales/zh_CN/messages.json +8 -8
  17. package/extensions/ublocklite/js/jsonpath.js +2 -2
  18. package/extensions/ublocklite/js/static-filtering-parser.js +3 -1
  19. package/extensions/ublocklite/js/utils.js +1 -3
  20. package/extensions/ublocklite/manifest.json +1 -1
  21. package/extensions/ublocklite/rulesets/generic-details.json +2 -0
  22. package/extensions/ublocklite/rulesets/main/adguard-mobile.json +1 -2
  23. package/extensions/ublocklite/rulesets/main/adguard-spyware-url.json +7 -4
  24. package/extensions/ublocklite/rulesets/main/annoyances-cookies.json +2 -1
  25. package/extensions/ublocklite/rulesets/main/chn-0.json +23 -13
  26. package/extensions/ublocklite/rulesets/main/deu-0.json +2 -1
  27. package/extensions/ublocklite/rulesets/main/dpollock-0.json +1 -0
  28. package/extensions/ublocklite/rulesets/main/easylist.json +12 -4
  29. package/extensions/ublocklite/rulesets/main/easyprivacy.json +19 -6
  30. package/extensions/ublocklite/rulesets/main/fra-0.json +2 -2
  31. package/extensions/ublocklite/rulesets/main/hrv-0.json +6 -15
  32. package/extensions/ublocklite/rulesets/main/idn-0.json +6 -2
  33. package/extensions/ublocklite/rulesets/main/ind-0.json +27 -11
  34. package/extensions/ublocklite/rulesets/main/isr-0.json +1 -0
  35. package/extensions/ublocklite/rulesets/main/jpn-1.json +9 -4
  36. package/extensions/ublocklite/rulesets/main/kor-1.json +3 -2
  37. package/extensions/ublocklite/rulesets/main/nld-0.json +9 -7
  38. package/extensions/ublocklite/rulesets/main/nor-0.json +6 -3
  39. package/extensions/ublocklite/rulesets/main/pgl.json +10 -3
  40. package/extensions/ublocklite/rulesets/main/pol-0.json +2 -0
  41. package/extensions/ublocklite/rulesets/main/rus-0.json +11 -9
  42. package/extensions/ublocklite/rulesets/main/rus-1.json +2 -1
  43. package/extensions/ublocklite/rulesets/main/spa-1.json +2 -1
  44. package/extensions/ublocklite/rulesets/main/stevenblack-hosts.json +15646 -4853
  45. package/extensions/ublocklite/rulesets/main/swe-1.json +7 -9
  46. package/extensions/ublocklite/rulesets/main/tur-0.json +3 -4
  47. package/extensions/ublocklite/rulesets/main/ublock-badware.json +4 -7
  48. package/extensions/ublocklite/rulesets/main/ublock-filters.json +46 -21
  49. package/extensions/ublocklite/rulesets/main/ukr-0.json +3 -5
  50. package/extensions/ublocklite/rulesets/main/urlhaus-full.json +1554 -196
  51. package/extensions/ublocklite/rulesets/main/vie-1.json +26 -26
  52. package/extensions/ublocklite/rulesets/regex/chn-0.json +2 -2
  53. package/extensions/ublocklite/rulesets/regex/hrv-0.json +20 -0
  54. package/extensions/ublocklite/rulesets/regex/jpn-1.json +1 -1
  55. package/extensions/ublocklite/rulesets/regex/ublock-filters.json +10 -9
  56. package/extensions/ublocklite/rulesets/ruleset-details.json +160 -160
  57. package/extensions/ublocklite/rulesets/scripting/generic/annoyances-notifications.js +1 -1
  58. package/extensions/ublocklite/rulesets/scripting/generic/chn-0.js +1 -1
  59. package/extensions/ublocklite/rulesets/scripting/generic/easylist.js +1 -1
  60. package/extensions/ublocklite/rulesets/scripting/generic/hrv-0.js +1 -1
  61. package/extensions/ublocklite/rulesets/scripting/generic/rus-0.js +1 -1
  62. package/extensions/ublocklite/rulesets/scripting/generic/spa-1.js +2 -2
  63. package/extensions/ublocklite/rulesets/scripting/generic/ublock-filters.js +3 -3
  64. package/extensions/ublocklite/rulesets/scripting/generic/vie-1.js +1 -1
  65. package/extensions/ublocklite/rulesets/scripting/generichigh/rus-0.css +1 -0
  66. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-cookies.js +1 -1
  67. package/extensions/ublocklite/rulesets/scripting/procedural/annoyances-overlays.js +2 -2
  68. package/extensions/ublocklite/rulesets/scripting/procedural/easylist.js +3 -3
  69. package/extensions/ublocklite/rulesets/scripting/procedural/hrv-0.js +3 -3
  70. package/extensions/ublocklite/rulesets/scripting/procedural/jpn-1.js +3 -3
  71. package/extensions/ublocklite/rulesets/scripting/procedural/rou-1.js +3 -3
  72. package/extensions/ublocklite/rulesets/scripting/procedural/rus-0.js +3 -3
  73. package/extensions/ublocklite/rulesets/scripting/procedural/swe-1.js +2 -2
  74. package/extensions/ublocklite/rulesets/scripting/procedural/tur-0.js +3 -3
  75. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-filters.js +3 -3
  76. package/extensions/ublocklite/rulesets/scripting/procedural/vie-1.js +3 -3
  77. package/extensions/ublocklite/rulesets/scripting/scriptlet/adguard-mobile.abort-on-property-read.js +2 -2
  78. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.remove-node-text.js +1 -1
  79. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.set-cookie.js +2 -2
  80. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-click-element.js +3 -3
  81. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-cookies.trusted-set-cookie.js +2 -2
  82. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.addEventListener-defuser.js +1 -1
  83. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.prevent-fetch.js +10 -5
  84. package/extensions/ublocklite/rulesets/scripting/scriptlet/annoyances-overlays.remove-node-text.js +2 -2
  85. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-on-property-read.js +2 -2
  86. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.abort-on-stack-trace.js +2 -2
  87. package/extensions/ublocklite/rulesets/scripting/scriptlet/chn-0.prevent-fetch.js +10 -5
  88. package/extensions/ublocklite/rulesets/scripting/scriptlet/easyprivacy.prevent-fetch.js +10 -5
  89. package/extensions/ublocklite/rulesets/scripting/scriptlet/fin-0.set-constant.js +541 -0
  90. package/extensions/ublocklite/rulesets/scripting/scriptlet/fra-0.prevent-fetch.js +10 -5
  91. package/extensions/ublocklite/rulesets/scripting/scriptlet/hrv-0.set-constant.js +541 -0
  92. package/extensions/ublocklite/rulesets/scripting/scriptlet/idn-0.prevent-fetch.js +10 -5
  93. package/extensions/ublocklite/rulesets/scripting/scriptlet/irn-0.prevent-fetch.js +10 -5
  94. package/extensions/ublocklite/rulesets/scripting/scriptlet/isr-0.prevent-fetch.js +10 -5
  95. package/extensions/ublocklite/rulesets/scripting/scriptlet/jpn-1.prevent-fetch.js +10 -5
  96. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.json-prune-xhr-response.js +1 -1
  97. package/extensions/ublocklite/rulesets/scripting/scriptlet/kor-1.prevent-fetch.js +10 -5
  98. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.abort-current-script.js +2 -2
  99. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.prevent-fetch.js +11 -6
  100. package/extensions/ublocklite/rulesets/scripting/scriptlet/nld-0.xml-prune.js +1 -1
  101. package/extensions/ublocklite/rulesets/scripting/scriptlet/nor-0.prevent-fetch.js +10 -5
  102. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-property-read.js +2 -2
  103. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.abort-on-stack-trace.js +1 -1
  104. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.addEventListener-defuser.js +3 -3
  105. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.href-sanitizer.js +2 -2
  106. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.prevent-fetch.js +10 -5
  107. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-attr.js +2 -2
  108. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.remove-cookie.js +1 -1
  109. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-attr.js +1 -1
  110. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-0.set-constant.js +2 -2
  111. package/extensions/ublocklite/rulesets/scripting/scriptlet/rus-1.prevent-fetch.js +10 -5
  112. package/extensions/ublocklite/rulesets/scripting/scriptlet/spa-1.prevent-fetch.js +10 -5
  113. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.addEventListener-defuser.js +2 -2
  114. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.prevent-fetch.js +10 -5
  115. package/extensions/ublocklite/rulesets/scripting/scriptlet/{fin-0.spoof-css.js → tur-0.remove-cookie.js} +69 -115
  116. package/extensions/ublocklite/rulesets/scripting/scriptlet/tur-0.set-constant.js +2 -2
  117. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-fetch-request.js +941 -0
  118. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-json-edit-xhr-request.js +3 -3
  119. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-experimental.trusted-replace-node-text.js +1 -1
  120. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-current-script.js +3 -3
  121. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-property-read.js +1 -1
  122. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.abort-on-stack-trace.js +1 -1
  123. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.addEventListener-defuser.js +2 -2
  124. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-fetch-response.js +2 -2
  125. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit-xhr-response.js +2 -2
  126. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-edit.js +2 -2
  127. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.json-prune-fetch-response.js +2 -2
  128. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.jsonl-edit-xhr-response.js +2 -2
  129. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.noeval-if.js +1 -1
  130. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-fetch.js +12 -7
  131. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setInterval.js +3 -3
  132. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-setTimeout.js +3 -3
  133. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-window-open.js +2 -2
  134. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.prevent-xhr.js +1 -1
  135. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.remove-node-text.js +3 -3
  136. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-constant.js +3 -3
  137. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-cookie.js +2 -2
  138. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.set-local-storage-item.js +2 -2
  139. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.spoof-css.js +3 -3
  140. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-request.js +941 -0
  141. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit-fetch-response.js +2 -2
  142. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-json-edit.js +2 -2
  143. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-prevent-fetch.js +10 -5
  144. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-argument.js +2 -2
  145. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-node-text.js +2 -2
  146. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-replace-outbound-text.js +2 -2
  147. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-attr.js +3 -3
  148. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-set-constant.js +2 -2
  149. package/extensions/ublocklite/rulesets/scripting/scriptlet/ublock-filters.trusted-suppress-native-method.js +2 -2
  150. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-fetch-response.js +2 -2
  151. package/extensions/ublocklite/rulesets/scripting/scriptlet/ubol-tests.jsonl-edit-xhr-response.js +2 -2
  152. package/extensions/ublocklite/rulesets/scripting/scriptlet/ukr-0.prevent-fetch.js +10 -5
  153. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-current-script.js +2 -2
  154. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.abort-on-property-read.js +1 -1
  155. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.prevent-fetch.js +10 -5
  156. package/extensions/ublocklite/rulesets/scripting/scriptlet/vie-1.set-constant.js +2 -2
  157. package/extensions/ublocklite/rulesets/scripting/specific/adguard-mobile.js +3 -3
  158. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-cookies.js +3 -3
  159. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-notifications.js +3 -3
  160. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-others.js +3 -3
  161. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-overlays.js +3 -3
  162. package/extensions/ublocklite/rulesets/scripting/specific/annoyances-social.js +2 -2
  163. package/extensions/ublocklite/rulesets/scripting/specific/chn-0.js +3 -3
  164. package/extensions/ublocklite/rulesets/scripting/specific/deu-0.js +3 -3
  165. package/extensions/ublocklite/rulesets/scripting/specific/easylist.js +3 -3
  166. package/extensions/ublocklite/rulesets/scripting/specific/est-0.js +3 -3
  167. package/extensions/ublocklite/rulesets/scripting/specific/fin-0.js +3 -3
  168. package/extensions/ublocklite/rulesets/scripting/specific/fra-0.js +3 -3
  169. package/extensions/ublocklite/rulesets/scripting/specific/hrv-0.js +4 -4
  170. package/extensions/ublocklite/rulesets/scripting/specific/hun-0.js +3 -3
  171. package/extensions/ublocklite/rulesets/scripting/specific/idn-0.js +3 -3
  172. package/extensions/ublocklite/rulesets/scripting/specific/ind-0.js +3 -3
  173. package/extensions/ublocklite/rulesets/scripting/specific/ita-0.js +3 -3
  174. package/extensions/ublocklite/rulesets/scripting/specific/jpn-1.js +3 -3
  175. package/extensions/ublocklite/rulesets/scripting/specific/kor-1.js +3 -3
  176. package/extensions/ublocklite/rulesets/scripting/specific/nld-0.js +3 -3
  177. package/extensions/ublocklite/rulesets/scripting/specific/nor-0.js +3 -3
  178. package/extensions/ublocklite/rulesets/scripting/specific/pol-0.js +3 -3
  179. package/extensions/ublocklite/rulesets/scripting/specific/rou-1.js +3 -3
  180. package/extensions/ublocklite/rulesets/scripting/specific/rus-0.js +3 -3
  181. package/extensions/ublocklite/rulesets/scripting/specific/spa-0.js +3 -3
  182. package/extensions/ublocklite/rulesets/scripting/specific/spa-1.js +3 -3
  183. package/extensions/ublocklite/rulesets/scripting/specific/swe-1.js +3 -3
  184. package/extensions/ublocklite/rulesets/scripting/specific/tur-0.js +3 -3
  185. package/extensions/ublocklite/rulesets/scripting/specific/ublock-badware.js +3 -3
  186. package/extensions/ublocklite/rulesets/scripting/specific/ublock-filters.js +3 -3
  187. package/extensions/ublocklite/rulesets/scripting/specific/ukr-0.js +1 -1
  188. package/extensions/ublocklite/rulesets/scripting/specific/vie-1.js +3 -3
  189. package/extensions/ublocklite/rulesets/scriptlet-details.json +113 -60
  190. package/extensions/ublocklite/rulesets/strictblock/chn-0.json +117 -2
  191. package/extensions/ublocklite/rulesets/strictblock/dpollock-0.json +1 -0
  192. package/extensions/ublocklite/rulesets/strictblock/easylist.json +1 -1
  193. package/extensions/ublocklite/rulesets/strictblock/easyprivacy.json +7 -1
  194. package/extensions/ublocklite/rulesets/strictblock/hrv-0.json +8 -1
  195. package/extensions/ublocklite/rulesets/strictblock/jpn-1.json +134 -133
  196. package/extensions/ublocklite/rulesets/strictblock/nor-0.json +1 -1
  197. package/extensions/ublocklite/rulesets/strictblock/pgl.json +10 -3
  198. package/extensions/ublocklite/rulesets/strictblock/stevenblack-hosts.json +15646 -4853
  199. package/extensions/ublocklite/rulesets/strictblock/tur-0.json +1 -0
  200. package/extensions/ublocklite/rulesets/strictblock/ublock-badware.json +10 -10
  201. package/extensions/ublocklite/rulesets/strictblock/ublock-filters.json +3 -3
  202. package/extensions/ublocklite/rulesets/strictblock/ukr-0.json +1 -0
  203. package/extensions/ublocklite/rulesets/strictblock/urlhaus-full.json +1554 -196
  204. package/extensions/ublocklite/ublock.zip +0 -0
  205. package/package.json +1 -1
  206. package/src/browsers/index.ts +12 -10
  207. package/src/routes/management/http/kill.get.ts +2 -1
  208. package/src/shared/utils/function/handler.ts +2 -1
  209. package/src/utils.spec.ts +62 -0
  210. package/src/utils.ts +3 -0
  211. package/static/docs/swagger.json +2 -2
  212. package/static/docs/swagger.min.json +1 -1
  213. package/extensions/ublocklite/rulesets/scripting/procedural/ublock-experimental.js +0 -42
@@ -426,9 +426,9 @@ class JSONPath {
426
426
  break;
427
427
  }
428
428
  if ( c === 0x5C /* \ */ && (end+1) < len ) {
429
- parts.push(query.slice(beg, end));
430
429
  const d = query.charCodeAt(end+1);
431
- if ( d === targetCharCode || d === 0x5C ) {
430
+ if ( d === targetCharCode ) {
431
+ parts.push(query.slice(beg, end));
432
432
  end += 1;
433
433
  beg = end;
434
434
  }
@@ -767,7 +767,7 @@ function safeSelf() {
767
767
  /******************************************************************************/
768
768
 
769
769
  const scriptletGlobals = {}; // eslint-disable-line
770
- const argsList = [["[?..originalUrl^=\"https://www.youtube.com/watch\"]..[?.playbackContext][?!.params]+={\"params\":\"yAEB\"}","propsToMatch","/player"]];
770
+ const argsList = [["..client[?.clientScreen==\"WATCH_FULL_SCREEN\"].clientScreen=\"CHANNEL\"","propsToMatch","/player"]];
771
771
  const hostnamesMap = new Map([["www.youtube.com",0]]);
772
772
  const exceptionsMap = new Map([]);
773
773
  const hasEntities = false;
@@ -369,7 +369,7 @@ function safeSelf() {
369
369
  /******************************************************************************/
370
370
 
371
371
  const scriptletGlobals = {}; // eslint-disable-line
372
- const argsList = [["script","(function serverContract()","(()=>{if(\"YOUTUBE_PREMIUM_LOGO\"===ytInitialData?.topbar?.desktopTopbarRenderer?.logo?.topbarLogoRenderer?.iconImage?.iconType||location.href.startsWith(\"https://www.youtube.com/tv#/\")||location.href.startsWith(\"https://www.youtube.com/embed/\"))return;document.addEventListener(\"DOMContentLoaded\",(function(){const e=()=>{const e=document.getElementById(\"movie_player\");if(!e)return;if(!e.getStatsForNerds?.()?.debug_info?.startsWith?.(\"SSAP, AD\"))return;const t=e.getProgressState?.();t&&t.duration>0&&(t.loaded<t.duration||t.duration-t.current>1)&&e.seekTo?.(t.duration)};e(),new MutationObserver((()=>{e()})).observe(document,{childList:!0,subtree:!0})}));const e={apply:(e,t,n)=>{const o=n[0];return\"function\"==typeof o&&o.toString().includes(\"onAbnormalityDetected\")&&(n[0]=function(){}),Reflect.apply(e,t,n)}};window.Promise.prototype.then=new Proxy(window.Promise.prototype.then,e);const t={apply:(e,t,n)=>{n[0]&&\"object\"==typeof n[0]&&(!n[0].attestationRequest&&n[0]?.playbackContext?.contentPlaybackContext?.currentUrl?.startsWith?.(\"/watch?\")?n[0].params&&!n[0].params.startsWith(\"yAEB\")?n[0].params=\"yAEB\"+n[0].params:n[0].params||=\"yAEB\":n[0].playerRequest?.playbackContext?.contentPlaybackContext?.currentUrl?.startsWith?.(\"/watch?\")&&(n[0].playerRequest.params&&!n[0].playerRequest.params.startsWith(\"yAEB\")?n[0].playerRequest.params=\"yAEB\"+n[0].playerRequest.params:n[0].playerRequest.params||=\"yAEB\"));const o=document.getElementById(\"player-error-message-container\");if(o){const e=window.location.search,t=new URLSearchParams(e).get(\"v\"),n=new URLSearchParams(e).get(\"t\")??0;t&&(o.remove(),document.getElementById(\"error-screen\").remove(),document.getElementById(\"movie_player\").loadVideoById(t,parseInt(n,10)))}return Reflect.apply(e,t,n)}};window.JSON.stringify=new Proxy(window.JSON.stringify,t),window.location.href.includes(\"/watch?\")&&\"BADGE_STYLE_TYPE_MEMBERS_ONLY\"!==ytInitialData?.contents?.twoColumnWatchNextResults?.results?.results?.contents?.[0]?.videoPrimaryInfoRenderer?.badges?.[0]?.metadataBadgeRenderer?.style&&window.addEventListener(\"load\",(()=>{const e=async function(e){let t=document.getElementById(e);for(;!t;)console.log(t),t=await new Promise((t=>setTimeout((()=>t(document.getElementById(e))),500)));return t}(\"movie_player\"),t=window.location.search,n=new URLSearchParams(t).get(\"v\"),o=new URLSearchParams(t).get(\"t\")??0;if(!e||!n)return;const r=parseInt(o,10);e.then((function(e){e.loadVideoById(n,r)}))}))})();(function serverContract()","sedCount","1"]];
372
+ const argsList = [["script","(function serverContract()","(()=>{if(\"YOUTUBE_PREMIUM_LOGO\"===ytInitialData?.topbar?.desktopTopbarRenderer?.logo?.topbarLogoRenderer?.iconImage?.iconType||location.href.startsWith(\"https://www.youtube.com/tv#/\")||location.href.startsWith(\"https://www.youtube.com/embed/\"))return;document.addEventListener(\"DOMContentLoaded\",(function(){const t=()=>{const t=document.getElementById(\"movie_player\");if(!t)return;if(!t.getStatsForNerds?.()?.debug_info?.startsWith?.(\"SSAP, AD\"))return;const e=t.getProgressState?.();e&&e.duration>0&&(e.loaded<e.duration||e.duration-e.current>1)&&t.seekTo?.(e.duration)};t(),new MutationObserver((()=>{t()})).observe(document,{childList:!0,subtree:!0})}));const t={apply:(t,e,n)=>{const o=n[0];return\"function\"==typeof o&&o.toString().includes(\"onAbnormalityDetected\")&&(n[0]=function(){}),Reflect.apply(t,e,n)}};window.Promise.prototype.then=new Proxy(window.Promise.prototype.then,t),window.location.href.includes(\"/watch?\")&&\"BADGE_STYLE_TYPE_MEMBERS_ONLY\"!==ytInitialData?.contents?.twoColumnWatchNextResults?.results?.results?.contents?.[0]?.videoPrimaryInfoRenderer?.badges?.[0]?.metadataBadgeRenderer?.style&&\"CONTENT_CHECK_REQUIRED\"!==ytInitialPlayerResponse?.playabilityStatus?.status&&window.addEventListener(\"load\",(()=>{const t=async function(t){let e=document.getElementById(t);for(;!e;)e=await new Promise((e=>setTimeout((()=>e(document.getElementById(t))),500)));return e}(\"movie_player\"),e=window.location.search,n=new URLSearchParams(e).get(\"v\"),o=new URLSearchParams(e).get(\"t\")??0;if(!t||!n)return;const r=parseInt(o,10);t.then((function(t){t.loadVideoById(n,r)}))}))})();(function serverContract()","sedCount","1"]];
373
373
  const hostnamesMap = new Map([["www.youtube.com",0]]);
374
374
  const exceptionsMap = new Map([]);
375
375
  const hasEntities = false;