@browserless.io/browserless 2.2.0-beta-8 → 2.3.0-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 (1342) hide show
  1. package/CHANGELOG.md +21 -2
  2. package/bin/browserless.js +26 -15
  3. package/bin/scaffold/README.md +8 -7
  4. package/build/browserless.d.ts +6 -1
  5. package/build/browserless.js +45 -26
  6. package/build/browsers/chrome.cdp.d.ts +6 -0
  7. package/build/browsers/chrome.cdp.js +6 -0
  8. package/build/browsers/chrome.playwright.d.ts +6 -0
  9. package/build/browsers/chrome.playwright.js +6 -0
  10. package/build/browsers/{cdp-chromium.d.ts → chromium.cdp.d.ts} +3 -2
  11. package/build/browsers/{cdp-chromium.js → chromium.cdp.js} +16 -10
  12. package/build/browsers/{playwright-chromium.d.ts → chromium.playwright.d.ts} +3 -2
  13. package/build/browsers/{playwright-chromium.js → chromium.playwright.js} +6 -5
  14. package/build/browsers/{playwright-firefox.d.ts → firefox.playwright.d.ts} +2 -2
  15. package/build/browsers/{playwright-firefox.js → firefox.playwright.js} +4 -4
  16. package/build/browsers/index.d.ts +20 -10
  17. package/build/browsers/index.js +110 -11
  18. package/build/browsers/{playwright-webkit.d.ts → webkit.playwright.d.ts} +2 -2
  19. package/build/browsers/{playwright-webkit.js → webkit.playwright.js} +4 -4
  20. package/build/data/selectors.json +1 -1
  21. package/build/exports.core.d.ts +24 -0
  22. package/build/exports.core.js +26 -0
  23. package/build/exports.d.ts +38 -22
  24. package/build/exports.js +44 -24
  25. package/build/hooks.d.ts +4 -5
  26. package/build/hooks.js +4 -6
  27. package/build/http.d.ts +22 -1
  28. package/build/http.js +21 -0
  29. package/build/router.js +19 -3
  30. package/build/routes/{chromium/http/content-post.body.json → chrome/http/content.post.body.json} +8 -8
  31. package/build/routes/chrome/http/content.post.d.ts +7 -0
  32. package/build/routes/chrome/http/content.post.js +6 -0
  33. package/build/routes/{chromium/http/scrape-post.body.json → chrome/http/download.post.body.json} +9 -56
  34. package/build/routes/chrome/http/download.post.d.ts +7 -0
  35. package/build/routes/chrome/http/download.post.js +6 -0
  36. package/build/routes/{chromium/http/download-post.response.json → chrome/http/download.post.response.json} +1 -0
  37. package/build/routes/{chromium/http/screenshot-post.body.json → chrome/http/function.post.body.json} +9 -99
  38. package/build/routes/chrome/http/function.post.d.ts +7 -0
  39. package/build/routes/chrome/http/function.post.js +6 -0
  40. package/build/routes/{management/http/sessions-get.response.json → chrome/http/function.post.query.json} +26 -68
  41. package/build/routes/{chromium/http/function-post.response.json → chrome/http/function.post.response.json} +1 -0
  42. package/build/routes/chrome/http/json-list.get.d.ts +1 -0
  43. package/build/routes/chrome/http/json-list.get.js +1 -0
  44. package/build/routes/chrome/http/json-list.get.response.json +4 -0
  45. package/build/routes/chrome/http/json-new.put.d.ts +1 -0
  46. package/build/routes/chrome/http/json-new.put.js +1 -0
  47. package/build/routes/chrome/http/json-new.put.response.json +4 -0
  48. package/build/routes/chrome/http/json-protocol.get.d.ts +1 -0
  49. package/build/routes/chrome/http/json-protocol.get.js +1 -0
  50. package/build/routes/chrome/http/json-protocol.get.response.json +4 -0
  51. package/build/routes/chrome/http/json-version.get.d.ts +1 -0
  52. package/build/routes/chrome/http/json-version.get.js +1 -0
  53. package/build/routes/chrome/http/json-version.get.response.json +4 -0
  54. package/build/routes/{chromium/http/pdf-post.body.json → chrome/http/pdf.post.body.json} +9 -153
  55. package/build/routes/chrome/http/pdf.post.d.ts +7 -0
  56. package/build/routes/chrome/http/pdf.post.js +6 -0
  57. package/build/routes/{chromium/http/download-post.query.json → chrome/http/pdf.post.query.json} +69 -6
  58. package/build/routes/chrome/http/performance.post.body.json +510 -0
  59. package/build/routes/chrome/http/performance.post.d.ts +7 -0
  60. package/build/routes/chrome/http/performance.post.js +6 -0
  61. package/build/routes/chrome/http/performance.post.query.json +183 -0
  62. package/build/routes/{chromium/http/performance.response.json → chrome/http/performance.post.response.json} +1 -3
  63. package/build/routes/chrome/http/scrape.post.body.json +510 -0
  64. package/build/routes/chrome/http/scrape.post.d.ts +7 -0
  65. package/build/routes/chrome/http/scrape.post.js +6 -0
  66. package/build/routes/chrome/http/scrape.post.query.json +183 -0
  67. package/build/routes/chrome/http/scrape.post.response.json +5 -0
  68. package/build/routes/chrome/http/screenshot.post.body.json +510 -0
  69. package/build/routes/chrome/http/screenshot.post.d.ts +7 -0
  70. package/build/routes/chrome/http/screenshot.post.js +6 -0
  71. package/build/routes/chrome/http/screenshot.post.query.json +183 -0
  72. package/build/routes/chrome/tests/content.spec.js +311 -0
  73. package/build/routes/chrome/tests/download.spec.js +67 -0
  74. package/build/routes/chrome/tests/function.spec.d.ts +1 -0
  75. package/build/routes/chrome/tests/function.spec.js +245 -0
  76. package/build/routes/chrome/tests/json-version.spec.d.ts +1 -0
  77. package/build/routes/chrome/tests/json-version.spec.js +37 -0
  78. package/build/routes/chrome/tests/page-websocket.spec.d.ts +1 -0
  79. package/build/routes/chrome/tests/page-websocket.spec.js +97 -0
  80. package/build/routes/chrome/tests/pdf.spec.d.ts +1 -0
  81. package/build/routes/chrome/tests/pdf.spec.js +333 -0
  82. package/build/routes/chrome/tests/performance.spec.d.ts +1 -0
  83. package/build/routes/chrome/tests/performance.spec.js +124 -0
  84. package/build/routes/chrome/tests/scrape.spec.d.ts +1 -0
  85. package/build/routes/chrome/tests/scrape.spec.js +354 -0
  86. package/build/routes/chrome/tests/screenshot.spec.d.ts +1 -0
  87. package/build/routes/chrome/tests/screenshot.spec.js +339 -0
  88. package/build/routes/chrome/tests/websocket.spec.d.ts +1 -0
  89. package/build/routes/chrome/tests/websocket.spec.js +371 -0
  90. package/build/routes/chrome/ws/browser.d.ts +6 -0
  91. package/build/routes/chrome/ws/browser.js +5 -0
  92. package/build/routes/chrome/ws/browser.query.json +183 -0
  93. package/build/routes/chrome/ws/cdp.d.ts +7 -0
  94. package/build/routes/chrome/ws/cdp.js +6 -0
  95. package/build/routes/chrome/ws/cdp.query.json +183 -0
  96. package/build/routes/chrome/ws/page.d.ts +6 -0
  97. package/build/routes/chrome/ws/page.js +5 -0
  98. package/build/routes/chrome/ws/page.query.json +183 -0
  99. package/build/routes/chrome/ws/playwright.d.ts +7 -0
  100. package/build/routes/chrome/ws/playwright.js +6 -0
  101. package/build/routes/chrome/ws/playwright.query.json +183 -0
  102. package/build/routes/chromium/http/content.post.body.json +510 -0
  103. package/build/routes/chromium/http/content.post.d.ts +1 -0
  104. package/build/routes/chromium/http/content.post.js +1 -0
  105. package/build/routes/chromium/http/content.post.query.json +183 -0
  106. package/build/routes/chromium/http/content.post.response.json +5 -0
  107. package/build/routes/chromium/http/download.post.body.json +510 -0
  108. package/build/routes/chromium/http/download.post.d.ts +1 -0
  109. package/build/routes/chromium/http/download.post.js +1 -0
  110. package/build/routes/chromium/http/download.post.query.json +183 -0
  111. package/build/routes/chromium/http/download.post.response.json +5 -0
  112. package/build/routes/chromium/http/function.post.body.json +510 -0
  113. package/build/routes/chromium/http/function.post.d.ts +1 -0
  114. package/build/routes/chromium/http/function.post.js +1 -0
  115. package/build/routes/chromium/http/function.post.query.json +183 -0
  116. package/build/routes/chromium/http/function.post.response.json +5 -0
  117. package/build/routes/chromium/http/json-list.get.d.ts +1 -0
  118. package/build/routes/chromium/http/json-list.get.js +1 -0
  119. package/build/routes/chromium/http/json-list.get.response.json +4 -0
  120. package/build/routes/chromium/http/json-new.put.d.ts +1 -0
  121. package/build/routes/chromium/http/json-new.put.js +1 -0
  122. package/build/routes/chromium/http/json-new.put.response.json +4 -0
  123. package/build/routes/chromium/http/json-protocol.get.d.ts +1 -0
  124. package/build/routes/chromium/http/json-protocol.get.js +1 -0
  125. package/build/routes/chromium/http/json-protocol.get.response.json +4 -0
  126. package/build/routes/chromium/http/json-version.get.d.ts +1 -0
  127. package/build/routes/chromium/http/json-version.get.js +1 -0
  128. package/build/routes/chromium/http/json-version.get.response.json +4 -0
  129. package/build/routes/chromium/http/pdf.post.body.json +510 -0
  130. package/build/routes/chromium/http/pdf.post.d.ts +1 -0
  131. package/build/routes/chromium/http/pdf.post.js +1 -0
  132. package/build/routes/chromium/http/pdf.post.query.json +183 -0
  133. package/build/routes/chromium/http/pdf.post.response.json +5 -0
  134. package/build/routes/chromium/http/performance.post.body.json +510 -0
  135. package/build/routes/chromium/http/performance.post.d.ts +1 -0
  136. package/build/routes/chromium/http/performance.post.js +1 -0
  137. package/build/routes/chromium/http/performance.post.query.json +183 -0
  138. package/build/routes/chromium/http/performance.post.response.json +5 -0
  139. package/build/routes/chromium/http/scrape.post.body.json +510 -0
  140. package/build/routes/chromium/http/scrape.post.d.ts +1 -0
  141. package/build/routes/chromium/http/scrape.post.js +1 -0
  142. package/build/routes/chromium/http/scrape.post.query.json +183 -0
  143. package/build/routes/chromium/http/scrape.post.response.json +5 -0
  144. package/build/routes/chromium/http/screenshot.post.body.json +510 -0
  145. package/build/routes/chromium/http/screenshot.post.d.ts +1 -0
  146. package/build/routes/chromium/http/screenshot.post.js +1 -0
  147. package/build/routes/chromium/http/screenshot.post.query.json +183 -0
  148. package/build/routes/chromium/http/screenshot.post.response.json +5 -0
  149. package/build/routes/chromium/tests/content.spec.js +16 -16
  150. package/build/routes/chromium/tests/download.spec.js +3 -3
  151. package/build/routes/chromium/tests/function.spec.js +10 -10
  152. package/build/routes/chromium/tests/page-websocket.spec.d.ts +1 -0
  153. package/build/routes/chromium/tests/page-websocket.spec.js +97 -0
  154. package/build/routes/chromium/tests/pdf.spec.js +16 -16
  155. package/build/routes/chromium/tests/performance.spec.js +7 -7
  156. package/build/routes/chromium/tests/scrape.spec.js +15 -15
  157. package/build/routes/chromium/tests/screenshot.spec.js +17 -17
  158. package/build/routes/chromium/tests/websocket.spec.js +31 -37
  159. package/build/routes/chromium/ws/browser.d.ts +1 -16
  160. package/build/routes/chromium/ws/browser.js +1 -10
  161. package/build/routes/chromium/ws/browser.query.json +69 -6
  162. package/build/routes/chromium/ws/cdp.d.ts +1 -0
  163. package/build/routes/chromium/ws/cdp.js +1 -0
  164. package/build/routes/chromium/ws/cdp.query.json +183 -0
  165. package/build/routes/chromium/ws/page.d.ts +1 -16
  166. package/build/routes/chromium/ws/page.js +1 -10
  167. package/build/routes/chromium/ws/page.query.json +69 -6
  168. package/build/routes/chromium/ws/playwright.d.ts +1 -0
  169. package/build/routes/chromium/ws/playwright.js +1 -0
  170. package/build/routes/chromium/ws/playwright.query.json +183 -0
  171. package/build/routes/firefox/ws/playwright.d.ts +20 -0
  172. package/build/routes/firefox/ws/{playwright-firefox.js → playwright.js} +4 -4
  173. package/build/routes/firefox/ws/playwright.query.json +183 -0
  174. package/build/routes/management/http/config.get.response.json +4 -0
  175. package/build/routes/management/http/metrics-total.get.response.json +4 -0
  176. package/build/routes/management/http/metrics.get.response.json +4 -0
  177. package/build/routes/management/http/sessions.get.response.json +4 -0
  178. package/build/routes/management/http/{static-get.js → static.get.js} +9 -9
  179. package/build/routes/webkit/ws/{playwright-webkit.d.ts → playwright.d.ts} +5 -5
  180. package/build/routes/webkit/ws/{playwright-webkit.js → playwright.js} +4 -4
  181. package/build/routes/webkit/ws/playwright.query.json +183 -0
  182. package/build/{routes/chromium/ws/cdp-chromium.d.ts → shared/browser.ws.d.ts} +4 -4
  183. package/build/shared/browser.ws.js +12 -0
  184. package/build/{routes/chromium/ws/playwright-chromium.d.ts → shared/chromium.playwright.ws.d.ts} +4 -4
  185. package/build/{routes/chromium/ws/playwright-chromium.js → shared/chromium.playwright.ws.js} +6 -3
  186. package/build/shared/chromium.ws.d.ts +16 -0
  187. package/build/shared/chromium.ws.js +10 -0
  188. package/build/{routes/chromium/http/content-post.d.ts → shared/content.http.d.ts} +3 -3
  189. package/build/{routes/chromium/http/content-post.js → shared/content.http.js} +3 -3
  190. package/build/{routes/chromium/http/download-post.d.ts → shared/download.http.d.ts} +3 -3
  191. package/build/{routes/chromium/http/download-post.js → shared/download.http.js} +4 -4
  192. package/build/{routes/chromium/http/function-post.d.ts → shared/function.http.d.ts} +3 -3
  193. package/build/{routes/chromium/http/function-post.js → shared/function.http.js} +4 -4
  194. package/build/{routes/chromium/http/json-new.d.ts → shared/json-list.http.d.ts} +2 -3
  195. package/build/{routes/chromium/http/json-list.js → shared/json-list.http.js} +5 -8
  196. package/build/{routes/chromium/http/json-list.d.ts → shared/json-new.http.d.ts} +2 -3
  197. package/build/shared/json-new.http.js +34 -0
  198. package/build/{routes/chromium/http/json-protocol-get.js → shared/json-protocol.http.js} +2 -2
  199. package/build/{routes/chromium/http/json-version-get.js → shared/json-version.http.js} +3 -3
  200. package/build/shared/page.ws.d.ts +16 -0
  201. package/build/shared/page.ws.js +13 -0
  202. package/build/{routes/chromium/http/pdf-post.d.ts → shared/pdf.http.d.ts} +3 -3
  203. package/build/{routes/chromium/http/pdf-post.js → shared/pdf.http.js} +3 -3
  204. package/build/{routes/chromium/http/performance.d.ts → shared/performance.http.d.ts} +3 -3
  205. package/build/{routes/chromium/http/performance.js → shared/performance.http.js} +4 -4
  206. package/build/{routes/chromium/http/scrape-post.d.ts → shared/scrape.http.d.ts} +3 -3
  207. package/build/{routes/chromium/http/scrape-post.js → shared/scrape.http.js} +3 -3
  208. package/build/{routes/chromium/http/screenshot-post.d.ts → shared/screenshot.http.d.ts} +3 -3
  209. package/build/{routes/chromium/http/screenshot-post.js → shared/screenshot.http.js} +3 -3
  210. package/build/shared/utils/performance/child.d.ts +1 -0
  211. package/build/{routes/chromium → shared}/utils/performance/main.js +2 -2
  212. package/build/shared/utils/performance/types.js +1 -0
  213. package/build/shim.js +2 -1
  214. package/build/types.d.ts +10 -8
  215. package/build/utils.d.ts +8 -3
  216. package/build/utils.js +24 -11
  217. package/docker/base/Dockerfile +1 -1
  218. package/docker/chrome/Dockerfile +6 -4
  219. package/docker/chromium/.dockerignore +16 -0
  220. package/docker/chromium/Dockerfile +42 -0
  221. package/docker/firefox/Dockerfile +3 -1
  222. package/docker/multi/Dockerfile +15 -1
  223. package/docker/webkit/Dockerfile +3 -1
  224. package/extensions/ublock/3p-filters.html +1 -1
  225. package/extensions/ublock/_locales/ar/messages.json +4 -0
  226. package/extensions/ublock/_locales/az/messages.json +4 -0
  227. package/extensions/ublock/_locales/be/messages.json +4 -0
  228. package/extensions/ublock/_locales/bg/messages.json +5 -1
  229. package/extensions/ublock/_locales/bn/messages.json +4 -0
  230. package/extensions/ublock/_locales/br_FR/messages.json +6 -2
  231. package/extensions/ublock/_locales/bs/messages.json +4 -0
  232. package/extensions/ublock/_locales/ca/messages.json +4 -0
  233. package/extensions/ublock/_locales/cs/messages.json +4 -0
  234. package/extensions/ublock/_locales/cv/messages.json +4 -0
  235. package/extensions/ublock/_locales/cy/messages.json +1294 -0
  236. package/extensions/ublock/_locales/da/messages.json +4 -0
  237. package/extensions/ublock/_locales/de/messages.json +5 -1
  238. package/extensions/ublock/_locales/el/messages.json +4 -0
  239. package/extensions/ublock/_locales/en/messages.json +4 -0
  240. package/extensions/ublock/_locales/en_GB/messages.json +4 -0
  241. package/extensions/ublock/_locales/eo/messages.json +9 -5
  242. package/extensions/ublock/_locales/es/messages.json +4 -0
  243. package/extensions/ublock/_locales/et/messages.json +4 -0
  244. package/extensions/ublock/_locales/eu/messages.json +8 -4
  245. package/extensions/ublock/_locales/fa/messages.json +4 -0
  246. package/extensions/ublock/_locales/fi/messages.json +4 -0
  247. package/extensions/ublock/_locales/fil/messages.json +4 -0
  248. package/extensions/ublock/_locales/fr/messages.json +4 -0
  249. package/extensions/ublock/_locales/fy/messages.json +4 -0
  250. package/extensions/ublock/_locales/gl/messages.json +4 -0
  251. package/extensions/ublock/_locales/gu/messages.json +4 -0
  252. package/extensions/ublock/_locales/he/messages.json +4 -0
  253. package/extensions/ublock/_locales/hi/messages.json +4 -0
  254. package/extensions/ublock/_locales/hr/messages.json +4 -0
  255. package/extensions/ublock/_locales/hu/messages.json +4 -0
  256. package/extensions/ublock/_locales/hy/messages.json +4 -0
  257. package/extensions/ublock/_locales/id/messages.json +5 -1
  258. package/extensions/ublock/_locales/it/messages.json +4 -0
  259. package/extensions/ublock/_locales/ja/messages.json +4 -0
  260. package/extensions/ublock/_locales/ka/messages.json +34 -30
  261. package/extensions/ublock/_locales/kk/messages.json +4 -0
  262. package/extensions/ublock/_locales/kn/messages.json +4 -0
  263. package/extensions/ublock/_locales/ko/messages.json +4 -0
  264. package/extensions/ublock/_locales/ku/messages.json +4 -0
  265. package/extensions/ublock/_locales/lt/messages.json +4 -0
  266. package/extensions/ublock/_locales/lv/messages.json +4 -0
  267. package/extensions/ublock/_locales/mk/messages.json +4 -0
  268. package/extensions/ublock/_locales/ml/messages.json +4 -0
  269. package/extensions/ublock/_locales/mr/messages.json +4 -0
  270. package/extensions/ublock/_locales/ms/messages.json +13 -9
  271. package/extensions/ublock/_locales/nb/messages.json +4 -0
  272. package/extensions/ublock/_locales/nl/messages.json +4 -0
  273. package/extensions/ublock/_locales/no/messages.json +4 -0
  274. package/extensions/ublock/_locales/oc/messages.json +4 -0
  275. package/extensions/ublock/_locales/pa/messages.json +4 -0
  276. package/extensions/ublock/_locales/pl/messages.json +5 -1
  277. package/extensions/ublock/_locales/pt_BR/messages.json +4 -0
  278. package/extensions/ublock/_locales/pt_PT/messages.json +4 -0
  279. package/extensions/ublock/_locales/ro/messages.json +5 -1
  280. package/extensions/ublock/_locales/ru/messages.json +4 -0
  281. package/extensions/ublock/_locales/si/messages.json +4 -0
  282. package/extensions/ublock/_locales/sk/messages.json +4 -0
  283. package/extensions/ublock/_locales/sl/messages.json +4 -0
  284. package/extensions/ublock/_locales/so/messages.json +4 -0
  285. package/extensions/ublock/_locales/sq/messages.json +4 -0
  286. package/extensions/ublock/_locales/sr/messages.json +4 -0
  287. package/extensions/ublock/_locales/sv/messages.json +4 -0
  288. package/extensions/ublock/_locales/sw/messages.json +4 -0
  289. package/extensions/ublock/_locales/ta/messages.json +4 -0
  290. package/extensions/ublock/_locales/te/messages.json +4 -0
  291. package/extensions/ublock/_locales/th/messages.json +12 -8
  292. package/extensions/ublock/_locales/tr/messages.json +4 -0
  293. package/extensions/ublock/_locales/uk/messages.json +4 -0
  294. package/extensions/ublock/_locales/ur/messages.json +4 -0
  295. package/extensions/ublock/_locales/vi/messages.json +4 -0
  296. package/extensions/ublock/_locales/zh_CN/messages.json +6 -2
  297. package/extensions/ublock/_locales/zh_TW/messages.json +6 -2
  298. package/extensions/ublock/assets/assets.json +11 -11
  299. package/extensions/ublock/assets/resources/scriptlets.js +660 -378
  300. package/extensions/ublock/assets/thirdparties/easylist/easylist.txt +7173 -3455
  301. package/extensions/ublock/assets/thirdparties/easylist/easyprivacy.txt +18829 -1918
  302. package/extensions/ublock/assets/thirdparties/pgl.yoyo.org/as/serverlist +21 -26
  303. package/extensions/ublock/assets/thirdparties/publicsuffix.org/list/effective_tld_names.dat +118 -46
  304. package/extensions/ublock/assets/thirdparties/urlhaus-filter/urlhaus-filter-online.txt +710 -1117
  305. package/extensions/ublock/assets/ublock/badlists.txt +0 -4
  306. package/extensions/ublock/assets/ublock/badware.min.txt +116 -105
  307. package/extensions/ublock/assets/ublock/filters.min.txt +1443 -1097
  308. package/extensions/ublock/assets/ublock/privacy.min.txt +50 -31
  309. package/extensions/ublock/assets/ublock/quick-fixes.min.txt +97 -108
  310. package/extensions/ublock/assets/ublock/unbreak.min.txt +64 -21
  311. package/extensions/ublock/css/1p-filters.css +4 -0
  312. package/extensions/ublock/css/3p-filters.css +6 -4
  313. package/extensions/ublock/css/common.css +1 -1
  314. package/extensions/ublock/css/fa-icons.css +1 -0
  315. package/extensions/ublock/css/logger-ui.css +72 -52
  316. package/extensions/ublock/css/popup-fenix.css +1 -1
  317. package/extensions/ublock/img/fontawesome/fontawesome-defs.svg +1 -0
  318. package/extensions/ublock/js/3p-filters.js +3 -3
  319. package/extensions/ublock/js/assets.js +7 -4
  320. package/extensions/ublock/js/background.js +1 -3
  321. package/extensions/ublock/js/benchmarks.js +1 -0
  322. package/extensions/ublock/js/broadcast.js +12 -0
  323. package/extensions/ublock/js/click2load.js +2 -3
  324. package/extensions/ublock/js/codemirror/ubo-static-filtering.js +1 -0
  325. package/extensions/ublock/js/commands.js +10 -0
  326. package/extensions/ublock/js/contentscript-extra.js +13 -11
  327. package/extensions/ublock/js/contentscript.js +0 -31
  328. package/extensions/ublock/js/contextmenu.js +5 -1
  329. package/extensions/ublock/js/dyna-rules.js +83 -52
  330. package/extensions/ublock/js/fa-icons.js +1 -0
  331. package/extensions/ublock/js/filtering-context.js +0 -2
  332. package/extensions/ublock/js/i18n.js +1 -5
  333. package/extensions/ublock/js/logger-ui.js +71 -38
  334. package/extensions/ublock/js/logger.js +18 -14
  335. package/extensions/ublock/js/messaging.js +17 -5
  336. package/extensions/ublock/js/popup-fenix.js +6 -6
  337. package/extensions/ublock/js/scriptlet-filtering-core.js +14 -12
  338. package/extensions/ublock/js/scriptlet-filtering.js +149 -53
  339. package/extensions/ublock/js/scriptlets/scriptlet-loglevel-1.js +49 -0
  340. package/extensions/ublock/js/scriptlets/scriptlet-loglevel-2.js +49 -0
  341. package/extensions/ublock/js/scriptlets/should-inject-contentscript.js +1 -1
  342. package/extensions/ublock/js/static-dnr-filtering.js +4 -2
  343. package/extensions/ublock/js/static-filtering-parser.js +14 -8
  344. package/extensions/ublock/js/static-net-filtering.js +32 -30
  345. package/extensions/ublock/js/storage.js +18 -4
  346. package/extensions/ublock/js/traffic.js +3 -3
  347. package/extensions/ublock/js/ublock.js +1 -1
  348. package/extensions/ublock/js/vapi-background.js +15 -7
  349. package/extensions/ublock/logger-ui.html +18 -10
  350. package/extensions/ublock/manifest.json +4 -1
  351. package/extensions/ublock/web_accessible_resources/chartbeat.js +3 -0
  352. package/package.json +12 -12
  353. package/scripts/build-function.js +1 -1
  354. package/scripts/build-open-api.js +21 -11
  355. package/scripts/build-schemas.js +2 -3
  356. package/scripts/clean.js +6 -1
  357. package/scripts/install-debugger.js +20 -0
  358. package/scripts/install-devtools.js +40 -0
  359. package/src/browserless.ts +72 -45
  360. package/src/browsers/chrome.cdp.ts +10 -0
  361. package/src/browsers/chrome.playwright.ts +10 -0
  362. package/src/browsers/{cdp-chromium.ts → chromium.cdp.ts} +20 -13
  363. package/src/browsers/{playwright-chromium.ts → chromium.playwright.ts} +7 -6
  364. package/src/browsers/{playwright-firefox.ts → firefox.playwright.ts} +5 -5
  365. package/src/browsers/index.ts +160 -23
  366. package/src/browsers/{playwright-webkit.ts → webkit.playwright.ts} +5 -5
  367. package/src/exports.core.ts +26 -0
  368. package/src/exports.ts +48 -24
  369. package/src/hooks.ts +4 -12
  370. package/src/http.ts +21 -0
  371. package/src/router.ts +25 -5
  372. package/src/routes/chrome/http/content.post.ts +14 -0
  373. package/src/routes/chrome/http/download.post.ts +14 -0
  374. package/src/routes/chrome/http/function.post.ts +14 -0
  375. package/src/routes/chrome/http/json-list.get.ts +1 -0
  376. package/src/routes/chrome/http/json-new.put.ts +1 -0
  377. package/src/routes/chrome/http/json-protocol.get.ts +1 -0
  378. package/src/routes/chrome/http/json-version.get.ts +1 -0
  379. package/src/routes/chrome/http/pdf.post.ts +14 -0
  380. package/src/routes/chrome/http/performance.post.ts +14 -0
  381. package/src/routes/chrome/http/scrape.post.ts +14 -0
  382. package/src/routes/chrome/http/screenshot.post.ts +14 -0
  383. package/src/routes/chrome/tests/content.spec.ts +375 -0
  384. package/src/routes/chrome/tests/download.spec.ts +77 -0
  385. package/src/routes/chrome/tests/function.spec.ts +282 -0
  386. package/src/routes/chrome/tests/json-version.spec.ts +52 -0
  387. package/src/routes/chrome/tests/page-websocket.spec.ts +129 -0
  388. package/src/routes/chrome/tests/pdf.spec.ts +380 -0
  389. package/src/routes/chrome/tests/performance.spec.ts +155 -0
  390. package/src/routes/chrome/tests/scrape.spec.ts +417 -0
  391. package/src/routes/chrome/tests/screenshot.spec.ts +387 -0
  392. package/src/routes/chrome/tests/websocket.spec.ts +491 -0
  393. package/src/routes/chrome/ws/browser.ts +8 -0
  394. package/src/routes/chrome/ws/cdp.ts +12 -0
  395. package/src/routes/chrome/ws/page.ts +8 -0
  396. package/src/routes/chrome/ws/playwright.ts +12 -0
  397. package/src/routes/chromium/http/content.post.ts +6 -0
  398. package/src/routes/chromium/http/download.post.ts +6 -0
  399. package/src/routes/chromium/http/function.post.ts +6 -0
  400. package/src/routes/chromium/http/json-list.get.ts +1 -0
  401. package/src/routes/chromium/http/json-new.put.ts +1 -0
  402. package/src/routes/chromium/http/json-protocol.get.ts +1 -0
  403. package/src/routes/chromium/http/json-version.get.ts +1 -0
  404. package/src/routes/chromium/http/pdf.post.ts +6 -0
  405. package/src/routes/chromium/http/performance.post.ts +6 -0
  406. package/src/routes/chromium/http/scrape.post.ts +6 -0
  407. package/src/routes/chromium/http/screenshot.post.ts +6 -0
  408. package/src/routes/chromium/tests/content.spec.ts +36 -28
  409. package/src/routes/chromium/tests/download.spec.ts +3 -3
  410. package/src/routes/chromium/tests/function.spec.ts +18 -15
  411. package/src/routes/chromium/tests/page-websocket.spec.ts +129 -0
  412. package/src/routes/chromium/tests/pdf.spec.ts +31 -26
  413. package/src/routes/chromium/tests/performance.spec.ts +46 -34
  414. package/src/routes/chromium/tests/scrape.spec.ts +23 -20
  415. package/src/routes/chromium/tests/screenshot.spec.ts +24 -24
  416. package/src/routes/chromium/tests/websocket.spec.ts +31 -40
  417. package/src/routes/chromium/ws/browser.ts +1 -29
  418. package/src/routes/chromium/ws/cdp.ts +1 -0
  419. package/src/routes/chromium/ws/page.ts +1 -29
  420. package/src/routes/chromium/ws/playwright.ts +4 -0
  421. package/src/routes/firefox/ws/{playwright-firefox.ts → playwright.ts} +8 -6
  422. package/src/routes/management/http/{static-get.ts → static.get.ts} +15 -10
  423. package/src/routes/webkit/ws/{playwright-webkit.ts → playwright.ts} +5 -5
  424. package/src/shared/browser.ws.ts +34 -0
  425. package/src/{routes/chromium/ws/playwright-chromium.ts → shared/chromium.playwright.ws.ts} +7 -4
  426. package/src/{routes/chromium/ws/cdp-chromium.ts → shared/chromium.ws.ts} +6 -6
  427. package/src/{routes/chromium/http/content-post.ts → shared/content.http.ts} +4 -4
  428. package/src/{routes/chromium/http/download-post.ts → shared/download.http.ts} +4 -4
  429. package/src/{routes/chromium/http/function-post.ts → shared/function.http.ts} +4 -4
  430. package/src/shared/json-list.http.ts +35 -0
  431. package/src/{routes/chromium/http/json-new.ts → shared/json-new.http.ts} +23 -7
  432. package/src/{routes/chromium/http/json-protocol-get.ts → shared/json-protocol.http.ts} +3 -5
  433. package/src/{routes/chromium/http/json-version-get.ts → shared/json-version.http.ts} +4 -5
  434. package/src/shared/page.ws.ts +35 -0
  435. package/src/{routes/chromium/http/pdf-post.ts → shared/pdf.http.ts} +4 -4
  436. package/src/{routes/chromium/http/performance.ts → shared/performance.http.ts} +4 -4
  437. package/src/{routes/chromium/http/scrape-post.ts → shared/scrape.http.ts} +4 -4
  438. package/src/{routes/chromium/http/screenshot-post.ts → shared/screenshot.http.ts} +4 -4
  439. package/src/{routes/chromium → shared}/utils/function/handler.ts +2 -2
  440. package/src/{routes/chromium → shared}/utils/performance/main.ts +2 -4
  441. package/src/shim.ts +2 -1
  442. package/src/types.ts +27 -20
  443. package/src/utils.ts +32 -14
  444. package/static/devtools/Images/accelerometer-back.svg +1 -0
  445. package/static/devtools/Images/accelerometer-bottom.png +0 -0
  446. package/static/devtools/Images/accelerometer-front.svg +1 -0
  447. package/static/devtools/Images/accelerometer-left.png +0 -0
  448. package/static/devtools/Images/accelerometer-right.png +0 -0
  449. package/static/devtools/Images/accelerometer-top.png +0 -0
  450. package/static/devtools/Images/baseline-icon.svg +1 -0
  451. package/static/devtools/Images/breaking_change_icon.svg +1 -0
  452. package/static/devtools/Images/checkboxCheckmark.svg +1 -0
  453. package/static/devtools/Images/checker.png +0 -0
  454. package/static/devtools/Images/chevrons.svg +1 -0
  455. package/static/devtools/Images/chromeDisabledSelect.png +0 -0
  456. package/static/devtools/Images/chromeDisabledSelect_2x.png +0 -0
  457. package/static/devtools/Images/chromeLeft.avif +0 -0
  458. package/static/devtools/Images/chromeMiddle.avif +0 -0
  459. package/static/devtools/Images/chromeRight.avif +0 -0
  460. package/static/devtools/Images/chromeSelect.svg +1 -0
  461. package/static/devtools/Images/chromeSelectDark.svg +1 -0
  462. package/static/devtools/Images/cssoverview_icons_2x.avif +0 -0
  463. package/static/devtools/Images/dropdown_7x6_icon.svg +1 -0
  464. package/static/devtools/Images/elements_panel_icon.svg +1 -0
  465. package/static/devtools/Images/errorWave.svg +1 -0
  466. package/static/devtools/Images/error_icon.svg +1 -0
  467. package/static/devtools/Images/feedback_thin_16x16_icon.svg +1 -0
  468. package/static/devtools/Images/flex-align-content-center-icon.svg +1 -0
  469. package/static/devtools/Images/flex-align-content-end-icon.svg +1 -0
  470. package/static/devtools/Images/flex-align-content-space-around-icon.svg +1 -0
  471. package/static/devtools/Images/flex-align-content-space-between-icon.svg +1 -0
  472. package/static/devtools/Images/flex-align-content-space-evenly-icon.svg +1 -0
  473. package/static/devtools/Images/flex-align-content-start-icon.svg +1 -0
  474. package/static/devtools/Images/flex-align-content-stretch-icon.svg +1 -0
  475. package/static/devtools/Images/flex-align-items-center-icon.svg +1 -0
  476. package/static/devtools/Images/flex-align-items-flex-end-icon.svg +1 -0
  477. package/static/devtools/Images/flex-align-items-flex-start-icon.svg +1 -0
  478. package/static/devtools/Images/flex-align-items-stretch-icon.svg +1 -0
  479. package/static/devtools/Images/flex-align-self-center-icon.svg +1 -0
  480. package/static/devtools/Images/flex-align-self-flex-end-icon.svg +1 -0
  481. package/static/devtools/Images/flex-align-self-flex-start-icon.svg +1 -0
  482. package/static/devtools/Images/flex-align-self-stretch-icon.svg +1 -0
  483. package/static/devtools/Images/flex-direction-icon.svg +1 -0
  484. package/static/devtools/Images/flex-justify-content-center-icon.svg +1 -0
  485. package/static/devtools/Images/flex-justify-content-flex-end-icon.svg +1 -0
  486. package/static/devtools/Images/flex-justify-content-flex-start-icon.svg +1 -0
  487. package/static/devtools/Images/flex-justify-content-space-around-icon.svg +1 -0
  488. package/static/devtools/Images/flex-justify-content-space-between-icon.svg +1 -0
  489. package/static/devtools/Images/flex-justify-content-space-evenly-icon.svg +1 -0
  490. package/static/devtools/Images/ic_checkmark_16x16.svg +3 -0
  491. package/static/devtools/Images/ic_delete_filter.svg +1 -0
  492. package/static/devtools/Images/ic_delete_list.svg +1 -0
  493. package/static/devtools/Images/ic_info_black_18dp.svg +1 -0
  494. package/static/devtools/Images/ic_page_next_16x16_icon.svg +1 -0
  495. package/static/devtools/Images/ic_page_prev_16x16_icon.svg +1 -0
  496. package/static/devtools/Images/ic_redo_16x16_icon.svg +1 -0
  497. package/static/devtools/Images/ic_show_node_16x16.svg +4 -0
  498. package/static/devtools/Images/ic_suggest_color.svg +6 -0
  499. package/static/devtools/Images/ic_undo_16x16_icon.svg +1 -0
  500. package/static/devtools/Images/ic_warning_black_18dp.svg +1 -0
  501. package/static/devtools/Images/issue-text-icon.svg +1 -0
  502. package/static/devtools/Images/largeIcons.svg +1 -0
  503. package/static/devtools/Images/lighthouse_logo.svg +1 -0
  504. package/static/devtools/Images/link_icon.svg +1 -0
  505. package/static/devtools/Images/mediumIcons.svg +1 -0
  506. package/static/devtools/Images/navigationControls.png +0 -0
  507. package/static/devtools/Images/navigationControls_2x.png +0 -0
  508. package/static/devtools/Images/network_panel_icon.svg +1 -0
  509. package/static/devtools/Images/nodeIcon.avif +0 -0
  510. package/static/devtools/Images/node_search_icon.svg +1 -0
  511. package/static/devtools/Images/popoverArrows.png +0 -0
  512. package/static/devtools/Images/profileGroupIcon.png +0 -0
  513. package/static/devtools/Images/profileIcon.png +0 -0
  514. package/static/devtools/Images/profileSmallIcon.png +0 -0
  515. package/static/devtools/Images/radioDot-dark-theme.png +0 -0
  516. package/static/devtools/Images/radioDot.png +0 -0
  517. package/static/devtools/Images/refresh_12x12_icon.svg +1 -0
  518. package/static/devtools/Images/resizeDiagonal.svg +1 -0
  519. package/static/devtools/Images/resizeHorizontal.svg +1 -0
  520. package/static/devtools/Images/resizeVertical.svg +1 -0
  521. package/static/devtools/Images/resourceCSSIcon.png +0 -0
  522. package/static/devtools/Images/resourceDocumentIcon.png +0 -0
  523. package/static/devtools/Images/resourceDocumentIconSmall.png +0 -0
  524. package/static/devtools/Images/resourceJSIcon.png +0 -0
  525. package/static/devtools/Images/resourcePlainIcon.png +0 -0
  526. package/static/devtools/Images/resourcePlainIconSmall.png +0 -0
  527. package/static/devtools/Images/resourcesTimeGraphIcon.avif +0 -0
  528. package/static/devtools/Images/searchNext.png +0 -0
  529. package/static/devtools/Images/searchPrev.png +0 -0
  530. package/static/devtools/Images/securityIcons.svg +1 -0
  531. package/static/devtools/Images/settings_14x14_icon.svg +1 -0
  532. package/static/devtools/Images/smallIcons.svg +1 -0
  533. package/static/devtools/Images/sources_panel_icon.svg +1 -0
  534. package/static/devtools/Images/speech.png +0 -0
  535. package/static/devtools/Images/toolbarResizerVertical.png +0 -0
  536. package/static/devtools/Images/touchCursor.png +0 -0
  537. package/static/devtools/Images/touchCursor_2x.png +0 -0
  538. package/static/devtools/Images/treeoutlineTriangles.svg +1 -0
  539. package/static/devtools/Images/warning_icon.svg +1 -0
  540. package/static/devtools/Images/whatsnew.avif +0 -0
  541. package/static/devtools/Tests.js +1654 -0
  542. package/static/devtools/accessibility/accessibility-legacy.js +1 -0
  543. package/static/devtools/accessibility/accessibility-meta.js +1 -0
  544. package/static/devtools/accessibility/accessibility.js +1 -0
  545. package/static/devtools/accessibility/accessibility_module.js +1 -0
  546. package/static/devtools/accessibility_test_runner/accessibility_test_runner.js +77 -0
  547. package/static/devtools/accessibility_test_runner/accessibility_test_runner_module.js +0 -0
  548. package/static/devtools/animation/animation-legacy.js +1 -0
  549. package/static/devtools/animation/animation-meta.js +1 -0
  550. package/static/devtools/animation/animation.js +1 -0
  551. package/static/devtools/animation/animation_module.js +1 -0
  552. package/static/devtools/application_test_runner/AppcacheTestRunner.js +220 -0
  553. package/static/devtools/application_test_runner/CacheStorageTestRunner.js +286 -0
  554. package/static/devtools/application_test_runner/IndexedDBTestRunner.js +476 -0
  555. package/static/devtools/application_test_runner/ResourceTreeTestRunner.js +99 -0
  556. package/static/devtools/application_test_runner/ResourcesTestRunner.js +167 -0
  557. package/static/devtools/application_test_runner/ServiceWorkersTestRunner.js +131 -0
  558. package/static/devtools/application_test_runner/application_test_runner.js +10 -0
  559. package/static/devtools/application_test_runner/application_test_runner_module.js +0 -0
  560. package/static/devtools/axe_core_test_runner/axe_core_test_runner.js +174 -0
  561. package/static/devtools/axe_core_test_runner/axe_core_test_runner_module.js +0 -0
  562. package/static/devtools/bindings/bindings-legacy.js +1 -0
  563. package/static/devtools/bindings/bindings.js +1 -0
  564. package/static/devtools/bindings_test_runner/AutomappingTestRunner.js +130 -0
  565. package/static/devtools/bindings_test_runner/BindingsTestRunner.js +238 -0
  566. package/static/devtools/bindings_test_runner/IsolatedFilesystemTestRunner.js +287 -0
  567. package/static/devtools/bindings_test_runner/OverridesTestRunner.js +26 -0
  568. package/static/devtools/bindings_test_runner/PersistenceTestRunner.js +109 -0
  569. package/static/devtools/bindings_test_runner/bindings_test_runner.js +9 -0
  570. package/static/devtools/bindings_test_runner/bindings_test_runner_module.js +0 -0
  571. package/static/devtools/browser_debugger/browser_debugger-legacy.js +1 -0
  572. package/static/devtools/browser_debugger/browser_debugger-meta.js +1 -0
  573. package/static/devtools/browser_debugger/browser_debugger.js +1 -0
  574. package/static/devtools/browser_debugger/browser_debugger_module.js +1 -0
  575. package/static/devtools/browser_sdk/browser_sdk-meta.js +1 -0
  576. package/static/devtools/browser_sdk/browser_sdk.js +1 -0
  577. package/static/devtools/changes/changes-legacy.js +1 -0
  578. package/static/devtools/changes/changes-meta.js +1 -0
  579. package/static/devtools/changes/changes.js +1 -0
  580. package/static/devtools/changes/changes_module.js +1 -0
  581. package/static/devtools/client_variations/client_variations.js +1 -0
  582. package/static/devtools/client_variations/client_variations_module.js +0 -0
  583. package/static/devtools/cm/cm.js +1 -0
  584. package/static/devtools/cm/cm_module.js +1 -0
  585. package/static/devtools/cm_headless/cm_headless.js +1 -0
  586. package/static/devtools/color_picker/color_picker-legacy.js +1 -0
  587. package/static/devtools/color_picker/color_picker.js +1 -0
  588. package/static/devtools/color_picker/color_picker_module.js +1 -0
  589. package/static/devtools/common/common-legacy.js +1 -0
  590. package/static/devtools/common/common.js +1 -0
  591. package/static/devtools/component_helpers/component_helpers.js +1 -0
  592. package/static/devtools/components/components-legacy.js +1 -0
  593. package/static/devtools/components/components.js +1 -0
  594. package/static/devtools/console/console-legacy.js +1 -0
  595. package/static/devtools/console/console-meta.js +1 -0
  596. package/static/devtools/console/console.js +6 -0
  597. package/static/devtools/console/console_module.js +1 -0
  598. package/static/devtools/console_counters/console_counters-legacy.js +1 -0
  599. package/static/devtools/console_counters/console_counters.js +1 -0
  600. package/static/devtools/console_test_runner/console_test_runner.js +696 -0
  601. package/static/devtools/console_test_runner/console_test_runner_module.js +0 -0
  602. package/static/devtools/cookie_table/cookie_table-legacy.js +1 -0
  603. package/static/devtools/cookie_table/cookie_table.js +1 -0
  604. package/static/devtools/cookie_table/cookie_table_module.js +1 -0
  605. package/static/devtools/coverage/coverage-legacy.js +1 -0
  606. package/static/devtools/coverage/coverage-meta.js +1 -0
  607. package/static/devtools/coverage/coverage.js +1 -0
  608. package/static/devtools/coverage/coverage_module.js +1 -0
  609. package/static/devtools/coverage_test_runner/coverage_test_runner.js +151 -0
  610. package/static/devtools/coverage_test_runner/coverage_test_runner_module.js +0 -0
  611. package/static/devtools/cpu_profiler_test_runner/cpu_profiler_test_runner.js +72 -0
  612. package/static/devtools/cpu_profiler_test_runner/cpu_profiler_test_runner_module.js +0 -0
  613. package/static/devtools/css_overview/css_overview-meta.js +1 -0
  614. package/static/devtools/css_overview/css_overview.js +146 -0
  615. package/static/devtools/css_overview/css_overview_module.js +1 -0
  616. package/static/devtools/data_grid/data_grid-legacy.js +1 -0
  617. package/static/devtools/data_grid/data_grid.js +1 -0
  618. package/static/devtools/data_grid/data_grid_module.js +1 -0
  619. package/static/devtools/data_grid_test_runner/data_grid_test_runner.js +78 -0
  620. package/static/devtools/data_grid_test_runner/data_grid_test_runner_module.js +0 -0
  621. package/static/devtools/developer_resources/developer_resources-legacy.js +1 -0
  622. package/static/devtools/developer_resources/developer_resources-meta.js +1 -0
  623. package/static/devtools/developer_resources/developer_resources.js +1 -0
  624. package/static/devtools/developer_resources/developer_resources_module.js +1 -0
  625. package/static/devtools/device_mode_test_runner/device_mode_test_runner.js +45 -0
  626. package/static/devtools/device_mode_test_runner/device_mode_test_runner_module.js +0 -0
  627. package/static/devtools/devtools_app.html +20 -0
  628. package/static/devtools/devtools_app.js +1 -0
  629. package/static/devtools/devtools_compatibility.js +1546 -0
  630. package/static/devtools/diff/diff-legacy.js +1 -0
  631. package/static/devtools/diff/diff.js +1 -0
  632. package/static/devtools/diff/diff_module.js +0 -0
  633. package/static/devtools/dom_extension/dom_extension.js +1 -0
  634. package/static/devtools/elements/elements-legacy.js +1 -0
  635. package/static/devtools/elements/elements-meta.js +1 -0
  636. package/static/devtools/elements/elements.js +469 -0
  637. package/static/devtools/elements/elements_module.js +1 -0
  638. package/static/devtools/elements_test_runner/EditDOMTestRunner.js +78 -0
  639. package/static/devtools/elements_test_runner/ElementsPanelShadowSelectionOnRefreshTestRunner.js +39 -0
  640. package/static/devtools/elements_test_runner/ElementsTestRunner.js +1280 -0
  641. package/static/devtools/elements_test_runner/SetOuterHTMLTestRunner.js +115 -0
  642. package/static/devtools/elements_test_runner/StylesUpdateLinksTestRunner.js +134 -0
  643. package/static/devtools/elements_test_runner/elements_test_runner.js +9 -0
  644. package/static/devtools/elements_test_runner/elements_test_runner_module.js +0 -0
  645. package/static/devtools/emulated_devices/emulated_devices_module.js +0 -0
  646. package/static/devtools/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
  647. package/static/devtools/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
  648. package/static/devtools/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
  649. package/static/devtools/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
  650. package/static/devtools/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
  651. package/static/devtools/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
  652. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
  653. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
  654. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
  655. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
  656. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
  657. package/static/devtools/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
  658. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
  659. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
  660. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
  661. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
  662. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
  663. package/static/devtools/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
  664. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
  665. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
  666. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
  667. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
  668. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
  669. package/static/devtools/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
  670. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
  671. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
  672. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
  673. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
  674. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
  675. package/static/devtools/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
  676. package/static/devtools/emulated_devices/optimized/iPad-landscape.avif +0 -0
  677. package/static/devtools/emulated_devices/optimized/iPad-portrait.avif +0 -0
  678. package/static/devtools/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
  679. package/static/devtools/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
  680. package/static/devtools/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
  681. package/static/devtools/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
  682. package/static/devtools/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
  683. package/static/devtools/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
  684. package/static/devtools/emulation/emulation-legacy.js +1 -0
  685. package/static/devtools/emulation/emulation-meta.js +1 -0
  686. package/static/devtools/emulation/emulation.js +1 -0
  687. package/static/devtools/event_listeners/event_listeners-legacy.js +1 -0
  688. package/static/devtools/event_listeners/event_listeners.js +1 -0
  689. package/static/devtools/event_listeners/event_listeners_module.js +1 -0
  690. package/static/devtools/extensions/extensions-legacy.js +1 -0
  691. package/static/devtools/extensions/extensions.js +1 -0
  692. package/static/devtools/extensions_test_runner/ExtensionsNetworkTestRunner.js +27 -0
  693. package/static/devtools/extensions_test_runner/ExtensionsTestRunner.js +68 -0
  694. package/static/devtools/extensions_test_runner/extensions_test_runner.js +6 -0
  695. package/static/devtools/extensions_test_runner/extensions_test_runner_module.js +0 -0
  696. package/static/devtools/formatter/formatter-legacy.js +1 -0
  697. package/static/devtools/formatter/formatter.js +1 -0
  698. package/static/devtools/formatter/formatter_module.js +0 -0
  699. package/static/devtools/formatter_worker/FormatterActions.js +1 -0
  700. package/static/devtools/formatter_worker/formatter_worker-entrypoint.js +1 -0
  701. package/static/devtools/formatter_worker/formatter_worker.js +1 -0
  702. package/static/devtools/har_importer/har_importer-legacy.js +1 -0
  703. package/static/devtools/har_importer/har_importer.js +1 -0
  704. package/static/devtools/har_importer/har_importer_module.js +0 -0
  705. package/static/devtools/heap_profiler_test_runner/heap_profiler_test_runner.js +740 -0
  706. package/static/devtools/heap_profiler_test_runner/heap_profiler_test_runner_module.js +0 -0
  707. package/static/devtools/heap_snapshot_model/heap_snapshot_model-legacy.js +1 -0
  708. package/static/devtools/heap_snapshot_model/heap_snapshot_model.js +1 -0
  709. package/static/devtools/heap_snapshot_model/heap_snapshot_model_module.js +0 -0
  710. package/static/devtools/heap_snapshot_worker/heap_snapshot_worker-entrypoint.js +1 -0
  711. package/static/devtools/heap_snapshot_worker/heap_snapshot_worker-legacy.js +1 -0
  712. package/static/devtools/heap_snapshot_worker/heap_snapshot_worker.js +1 -0
  713. package/static/devtools/heap_snapshot_worker/heap_snapshot_worker_module.js +0 -0
  714. package/static/devtools/help/help-legacy.js +1 -0
  715. package/static/devtools/help/help-meta.js +1 -0
  716. package/static/devtools/help/help.js +1 -0
  717. package/static/devtools/help/help_module.js +1 -0
  718. package/static/devtools/host/host-legacy.js +1 -0
  719. package/static/devtools/host/host.js +1 -0
  720. package/static/devtools/i18n/i18n.js +1 -0
  721. package/static/devtools/i18n/i18n_locales-tsconfig.json +8 -0
  722. package/static/devtools/i18n/locales/en-US.json +3566 -0
  723. package/static/devtools/inline_editor/inline_editor-legacy.js +1 -0
  724. package/static/devtools/inline_editor/inline_editor.js +203 -0
  725. package/static/devtools/inline_editor/inline_editor_module.js +1 -0
  726. package/static/devtools/input/input-legacy.js +1 -0
  727. package/static/devtools/input/input-meta.js +1 -0
  728. package/static/devtools/input/input.js +1 -0
  729. package/static/devtools/input/input_module.js +1 -0
  730. package/static/devtools/inspector.html +20 -0
  731. package/static/devtools/inspector.js +1 -0
  732. package/static/devtools/inspector_main/inspector_main-legacy.js +1 -0
  733. package/static/devtools/inspector_main/inspector_main-meta.js +1 -0
  734. package/static/devtools/inspector_main/inspector_main.js +1 -0
  735. package/static/devtools/integration_test_runner.html +14 -0
  736. package/static/devtools/integration_test_runner.js +2 -0
  737. package/static/devtools/issues/issues-legacy.js +1 -0
  738. package/static/devtools/issues/issues-meta.js +1 -0
  739. package/static/devtools/issues/issues.js +67 -0
  740. package/static/devtools/issues/issues_module.js +1 -0
  741. package/static/devtools/javascript_metadata/javascript_metadata-legacy.js +1 -0
  742. package/static/devtools/javascript_metadata/javascript_metadata.js +1 -0
  743. package/static/devtools/javascript_metadata/javascript_metadata_module.js +0 -0
  744. package/static/devtools/js_app.html +20 -0
  745. package/static/devtools/js_app.js +1 -0
  746. package/static/devtools/js_main/js_main-legacy.js +1 -0
  747. package/static/devtools/js_main/js_main.js +1 -0
  748. package/static/devtools/js_profiler/js_profiler-meta.js +1 -0
  749. package/static/devtools/js_profiler/js_profiler.js +1 -0
  750. package/static/devtools/js_profiler/js_profiler_module.js +0 -0
  751. package/static/devtools/layer_viewer/layer_viewer-legacy.js +1 -0
  752. package/static/devtools/layer_viewer/layer_viewer.js +1 -0
  753. package/static/devtools/layer_viewer/layer_viewer_module.js +1 -0
  754. package/static/devtools/layers/layers-legacy.js +1 -0
  755. package/static/devtools/layers/layers-meta.js +1 -0
  756. package/static/devtools/layers/layers.js +1 -0
  757. package/static/devtools/layers/layers_module.js +0 -0
  758. package/static/devtools/layers_test_runner/layers_test_runner.js +156 -0
  759. package/static/devtools/layers_test_runner/layers_test_runner_module.js +0 -0
  760. package/static/devtools/lighthouse/lighthouse-legacy.js +1 -0
  761. package/static/devtools/lighthouse/lighthouse-meta.js +1 -0
  762. package/static/devtools/lighthouse/lighthouse.js +70 -0
  763. package/static/devtools/lighthouse/lighthouse_module.js +1 -0
  764. package/static/devtools/lighthouse_test_runner/lighthouse_test_runner.js +136 -0
  765. package/static/devtools/lighthouse_test_runner/lighthouse_test_runner_module.js +0 -0
  766. package/static/devtools/lighthouse_worker/LighthouseService.js +195 -0
  767. package/static/devtools/lighthouse_worker/lighthouse_worker.js +6 -0
  768. package/static/devtools/lighthouse_worker.js +1 -0
  769. package/static/devtools/linear_memory_inspector/linear_memory_inspector-legacy.js +1 -0
  770. package/static/devtools/linear_memory_inspector/linear_memory_inspector-meta.js +1 -0
  771. package/static/devtools/linear_memory_inspector/linear_memory_inspector.js +399 -0
  772. package/static/devtools/linear_memory_inspector/linear_memory_inspector_module.js +0 -0
  773. package/static/devtools/main/main-legacy.js +1 -0
  774. package/static/devtools/main/main.js +1 -0
  775. package/static/devtools/media/media-legacy.js +1 -0
  776. package/static/devtools/media/media-meta.js +1 -0
  777. package/static/devtools/media/media.js +1 -0
  778. package/static/devtools/media/media_module.js +1 -0
  779. package/static/devtools/mobile_throttling/mobile_throttling-legacy.js +1 -0
  780. package/static/devtools/mobile_throttling/mobile_throttling-meta.js +1 -0
  781. package/static/devtools/mobile_throttling/mobile_throttling.js +1 -0
  782. package/static/devtools/ndb_app.html +20 -0
  783. package/static/devtools/ndb_app.js +1 -0
  784. package/static/devtools/network/network-legacy.js +1 -0
  785. package/static/devtools/network/network-meta.js +1 -0
  786. package/static/devtools/network/network.js +72 -0
  787. package/static/devtools/network/network_module.js +1 -0
  788. package/static/devtools/network_test_runner/network_test_runner.js +280 -0
  789. package/static/devtools/network_test_runner/network_test_runner_module.js +0 -0
  790. package/static/devtools/node_app.html +20 -0
  791. package/static/devtools/node_app.js +1 -0
  792. package/static/devtools/node_debugger/node_debugger-meta.js +1 -0
  793. package/static/devtools/node_debugger/node_debugger.js +1 -0
  794. package/static/devtools/node_debugger/node_debugger_module.js +0 -0
  795. package/static/devtools/node_main/node_main-legacy.js +1 -0
  796. package/static/devtools/node_main/node_main-meta.js +1 -0
  797. package/static/devtools/node_main/node_main.js +1 -0
  798. package/static/devtools/object_ui/object_ui-legacy.js +1 -0
  799. package/static/devtools/object_ui/object_ui.js +3 -0
  800. package/static/devtools/object_ui/object_ui_module.js +1 -0
  801. package/static/devtools/perf_ui/perf_ui-legacy.js +1 -0
  802. package/static/devtools/perf_ui/perf_ui.js +152 -0
  803. package/static/devtools/perf_ui/perf_ui_module.js +1 -0
  804. package/static/devtools/performance_monitor/performance_monitor-legacy.js +1 -0
  805. package/static/devtools/performance_monitor/performance_monitor-meta.js +1 -0
  806. package/static/devtools/performance_monitor/performance_monitor.js +1 -0
  807. package/static/devtools/performance_monitor/performance_monitor_module.js +1 -0
  808. package/static/devtools/performance_test_runner/TimelineDataTestRunner.js +5375 -0
  809. package/static/devtools/performance_test_runner/TimelineTestRunner.js +446 -0
  810. package/static/devtools/performance_test_runner/performance_test_runner.js +6 -0
  811. package/static/devtools/performance_test_runner/performance_test_runner_module.js +0 -0
  812. package/static/devtools/persistence/persistence-legacy.js +1 -0
  813. package/static/devtools/persistence/persistence-meta.js +1 -0
  814. package/static/devtools/persistence/persistence.js +1 -0
  815. package/static/devtools/platform/platform.js +1 -0
  816. package/static/devtools/profiler/profiler-legacy.js +1 -0
  817. package/static/devtools/profiler/profiler-meta.js +1 -0
  818. package/static/devtools/profiler/profiler.js +8 -0
  819. package/static/devtools/profiler/profiler_module.js +1 -0
  820. package/static/devtools/protocol_client/protocol_client-legacy.js +1 -0
  821. package/static/devtools/protocol_client/protocol_client.js +1 -0
  822. package/static/devtools/protocol_monitor/protocol_monitor-legacy.js +1 -0
  823. package/static/devtools/protocol_monitor/protocol_monitor-meta.js +1 -0
  824. package/static/devtools/protocol_monitor/protocol_monitor.js +1 -0
  825. package/static/devtools/protocol_monitor/protocol_monitor_module.js +1 -0
  826. package/static/devtools/quick_open/quick_open-legacy.js +1 -0
  827. package/static/devtools/quick_open/quick_open.js +1 -0
  828. package/static/devtools/quick_open/quick_open_module.js +1 -0
  829. package/static/devtools/recorder/recorder.js +1 -0
  830. package/static/devtools/resources/resources-legacy.js +1 -0
  831. package/static/devtools/resources/resources-meta.js +1 -0
  832. package/static/devtools/resources/resources.js +28 -0
  833. package/static/devtools/resources/resources_module.js +1 -0
  834. package/static/devtools/root/root-legacy.js +1 -0
  835. package/static/devtools/root/root.js +1 -0
  836. package/static/devtools/screencast/screencast-legacy.js +1 -0
  837. package/static/devtools/screencast/screencast.js +1 -0
  838. package/static/devtools/sdk/sdk-legacy.js +1 -0
  839. package/static/devtools/sdk/sdk.js +2 -0
  840. package/static/devtools/sdk_test_runner/sdk_test_runner.js +297 -0
  841. package/static/devtools/sdk_test_runner/sdk_test_runner_module.js +0 -0
  842. package/static/devtools/search/search-legacy.js +1 -0
  843. package/static/devtools/search/search.js +1 -0
  844. package/static/devtools/search/search_module.js +1 -0
  845. package/static/devtools/security/security-legacy.js +1 -0
  846. package/static/devtools/security/security-meta.js +1 -0
  847. package/static/devtools/security/security.js +1 -0
  848. package/static/devtools/security/security_module.js +1 -0
  849. package/static/devtools/security_test_runner/security_test_runner.js +32 -0
  850. package/static/devtools/security_test_runner/security_test_runner_module.js +0 -0
  851. package/static/devtools/services/services-legacy.js +1 -0
  852. package/static/devtools/services/services.js +1 -0
  853. package/static/devtools/settings/settings-legacy.js +1 -0
  854. package/static/devtools/settings/settings-meta.js +1 -0
  855. package/static/devtools/settings/settings.js +1 -0
  856. package/static/devtools/settings/settings_module.js +1 -0
  857. package/static/devtools/shell.js +1 -0
  858. package/static/devtools/snippets/snippets-legacy.js +1 -0
  859. package/static/devtools/snippets/snippets.js +1 -0
  860. package/static/devtools/snippets/snippets_module.js +0 -0
  861. package/static/devtools/source_frame/source_frame-legacy.js +1 -0
  862. package/static/devtools/source_frame/source_frame.js +1 -0
  863. package/static/devtools/source_frame/source_frame_module.js +1 -0
  864. package/static/devtools/sources/sources-legacy.js +1 -0
  865. package/static/devtools/sources/sources-meta.js +1 -0
  866. package/static/devtools/sources/sources.js +13 -0
  867. package/static/devtools/sources/sources_module.js +1 -0
  868. package/static/devtools/sources_test_runner/AutocompleteTestRunner.js +46 -0
  869. package/static/devtools/sources_test_runner/DebuggerTestRunner.js +895 -0
  870. package/static/devtools/sources_test_runner/EditorTestRunner.js +237 -0
  871. package/static/devtools/sources_test_runner/LiveEditTestRunner.js +33 -0
  872. package/static/devtools/sources_test_runner/SearchTestRunner.js +158 -0
  873. package/static/devtools/sources_test_runner/SourcesTestRunner.js +173 -0
  874. package/static/devtools/sources_test_runner/sources_test_runner.js +10 -0
  875. package/static/devtools/sources_test_runner/sources_test_runner_module.js +0 -0
  876. package/static/devtools/startup/startup.js +1 -0
  877. package/static/devtools/test_runner/test_runner.js +1 -0
  878. package/static/devtools/text_editor/text_editor-legacy.js +1 -0
  879. package/static/devtools/text_editor/text_editor.js +1 -0
  880. package/static/devtools/text_editor/text_editor_module.js +1 -0
  881. package/static/devtools/text_utils/text_utils-legacy.js +1 -0
  882. package/static/devtools/text_utils/text_utils.js +1 -0
  883. package/static/devtools/theme_support/theme_support.js +1 -0
  884. package/static/devtools/third_party/acorn/acorn-tsconfig.json +8 -0
  885. package/static/devtools/third_party/acorn/acorn.js +1 -0
  886. package/static/devtools/third_party/acorn/package/dist/acorn.d.ts +209 -0
  887. package/static/devtools/third_party/acorn/package/dist/acorn.mjs +5261 -0
  888. package/static/devtools/third_party/acorn/package/dist/acorn.mjs.d.ts +2 -0
  889. package/static/devtools/third_party/acorn/package/dist/acorn.mjs.map +1 -0
  890. package/static/devtools/third_party/acorn-loose/acorn-loose-tsconfig.json +8 -0
  891. package/static/devtools/third_party/acorn-loose/package/dist/acorn-loose.d.ts +16 -0
  892. package/static/devtools/third_party/acorn-loose/package/dist/acorn-loose.mjs +1418 -0
  893. package/static/devtools/third_party/axe-core/axe.js +16423 -0
  894. package/static/devtools/third_party/chromium/chromium-tsconfig.json +8 -0
  895. package/static/devtools/third_party/chromium/client-variations/ClientVariations.d.ts +13 -0
  896. package/static/devtools/third_party/chromium/client-variations/ClientVariations.js +27 -0
  897. package/static/devtools/third_party/codemirror/codemirror-tsconfig.json +72 -0
  898. package/static/devtools/third_party/codemirror/package/addon/comment/comment.d.ts +4 -0
  899. package/static/devtools/third_party/codemirror/package/addon/comment/comment.js +211 -0
  900. package/static/devtools/third_party/codemirror/package/addon/edit/closebrackets.d.ts +1 -0
  901. package/static/devtools/third_party/codemirror/package/addon/edit/closebrackets.js +201 -0
  902. package/static/devtools/third_party/codemirror/package/addon/edit/matchbrackets.d.ts +1 -0
  903. package/static/devtools/third_party/codemirror/package/addon/edit/matchbrackets.js +158 -0
  904. package/static/devtools/third_party/codemirror/package/addon/fold/brace-fold.d.ts +1 -0
  905. package/static/devtools/third_party/codemirror/package/addon/fold/brace-fold.js +105 -0
  906. package/static/devtools/third_party/codemirror/package/addon/fold/foldcode.d.ts +1 -0
  907. package/static/devtools/third_party/codemirror/package/addon/fold/foldcode.js +157 -0
  908. package/static/devtools/third_party/codemirror/package/addon/fold/foldgutter.d.ts +1 -0
  909. package/static/devtools/third_party/codemirror/package/addon/fold/foldgutter.js +163 -0
  910. package/static/devtools/third_party/codemirror/package/addon/mode/multiplex.d.ts +1 -0
  911. package/static/devtools/third_party/codemirror/package/addon/mode/multiplex.js +131 -0
  912. package/static/devtools/third_party/codemirror/package/addon/mode/overlay.d.ts +1 -0
  913. package/static/devtools/third_party/codemirror/package/addon/mode/overlay.js +90 -0
  914. package/static/devtools/third_party/codemirror/package/addon/mode/simple.d.ts +1 -0
  915. package/static/devtools/third_party/codemirror/package/addon/mode/simple.js +216 -0
  916. package/static/devtools/third_party/codemirror/package/addon/runmode/runmode-standalone.d.ts +1 -0
  917. package/static/devtools/third_party/codemirror/package/addon/runmode/runmode-standalone.js +333 -0
  918. package/static/devtools/third_party/codemirror/package/addon/selection/active-line.d.ts +1 -0
  919. package/static/devtools/third_party/codemirror/package/addon/selection/active-line.js +72 -0
  920. package/static/devtools/third_party/codemirror/package/addon/selection/mark-selection.d.ts +1 -0
  921. package/static/devtools/third_party/codemirror/package/addon/selection/mark-selection.js +119 -0
  922. package/static/devtools/third_party/codemirror/package/lib/codemirror.d.ts +1 -0
  923. package/static/devtools/third_party/codemirror/package/lib/codemirror.js +9800 -0
  924. package/static/devtools/third_party/codemirror/package/mode/clike/clike.d.ts +4 -0
  925. package/static/devtools/third_party/codemirror/package/mode/clike/clike.js +935 -0
  926. package/static/devtools/third_party/codemirror/package/mode/clojure/clojure.d.ts +4 -0
  927. package/static/devtools/third_party/codemirror/package/mode/clojure/clojure.js +292 -0
  928. package/static/devtools/third_party/codemirror/package/mode/coffeescript/coffeescript.d.ts +4 -0
  929. package/static/devtools/third_party/codemirror/package/mode/coffeescript/coffeescript.js +359 -0
  930. package/static/devtools/third_party/codemirror/package/mode/css/css.d.ts +1 -0
  931. package/static/devtools/third_party/codemirror/package/mode/css/css.js +864 -0
  932. package/static/devtools/third_party/codemirror/package/mode/htmlembedded/htmlembedded.d.ts +1 -0
  933. package/static/devtools/third_party/codemirror/package/mode/htmlembedded/htmlembedded.js +37 -0
  934. package/static/devtools/third_party/codemirror/package/mode/htmlmixed/htmlmixed.d.ts +1 -0
  935. package/static/devtools/third_party/codemirror/package/mode/htmlmixed/htmlmixed.js +153 -0
  936. package/static/devtools/third_party/codemirror/package/mode/javascript/javascript.d.ts +1 -0
  937. package/static/devtools/third_party/codemirror/package/mode/javascript/javascript.js +942 -0
  938. package/static/devtools/third_party/codemirror/package/mode/jsx/jsx.d.ts +4 -0
  939. package/static/devtools/third_party/codemirror/package/mode/jsx/jsx.js +148 -0
  940. package/static/devtools/third_party/codemirror/package/mode/livescript/livescript.d.ts +4 -0
  941. package/static/devtools/third_party/codemirror/package/mode/livescript/livescript.js +280 -0
  942. package/static/devtools/third_party/codemirror/package/mode/markdown/markdown.d.ts +1 -0
  943. package/static/devtools/third_party/codemirror/package/mode/markdown/markdown.js +886 -0
  944. package/static/devtools/third_party/codemirror/package/mode/php/php.d.ts +1 -0
  945. package/static/devtools/third_party/codemirror/package/mode/php/php.js +234 -0
  946. package/static/devtools/third_party/codemirror/package/mode/python/python.d.ts +1 -0
  947. package/static/devtools/third_party/codemirror/package/mode/python/python.js +399 -0
  948. package/static/devtools/third_party/codemirror/package/mode/shell/shell.d.ts +1 -0
  949. package/static/devtools/third_party/codemirror/package/mode/shell/shell.js +168 -0
  950. package/static/devtools/third_party/codemirror/package/mode/wast/wast.d.ts +1 -0
  951. package/static/devtools/third_party/codemirror/package/mode/wast/wast.js +41 -0
  952. package/static/devtools/third_party/codemirror/package/mode/xml/xml.d.ts +1 -0
  953. package/static/devtools/third_party/codemirror/package/mode/xml/xml.js +413 -0
  954. package/static/devtools/third_party/i18n/bundle-tsconfig.json +8 -0
  955. package/static/devtools/third_party/i18n/i18n.d.ts +108 -0
  956. package/static/devtools/third_party/i18n/i18n.js +4336 -0
  957. package/static/devtools/third_party/lighthouse/lighthouse-dt-bundle.d.ts +1 -0
  958. package/static/devtools/third_party/lighthouse/lighthouse-dt-bundle.js +1140 -0
  959. package/static/devtools/third_party/lighthouse/lighthouse-tsconfig.json +10 -0
  960. package/static/devtools/third_party/lighthouse/locales/ar-XB.json +2066 -0
  961. package/static/devtools/third_party/lighthouse/locales/ar.json +2066 -0
  962. package/static/devtools/third_party/lighthouse/locales/bg.json +2066 -0
  963. package/static/devtools/third_party/lighthouse/locales/ca.json +2066 -0
  964. package/static/devtools/third_party/lighthouse/locales/cs.json +2066 -0
  965. package/static/devtools/third_party/lighthouse/locales/da.json +2066 -0
  966. package/static/devtools/third_party/lighthouse/locales/de.json +2066 -0
  967. package/static/devtools/third_party/lighthouse/locales/el.json +2066 -0
  968. package/static/devtools/third_party/lighthouse/locales/en-GB.json +2066 -0
  969. package/static/devtools/third_party/lighthouse/locales/en-US.json +2297 -0
  970. package/static/devtools/third_party/lighthouse/locales/en-XA.json +2066 -0
  971. package/static/devtools/third_party/lighthouse/locales/en-XL.json +2297 -0
  972. package/static/devtools/third_party/lighthouse/locales/es-419.json +2066 -0
  973. package/static/devtools/third_party/lighthouse/locales/es.json +2066 -0
  974. package/static/devtools/third_party/lighthouse/locales/fi.json +2066 -0
  975. package/static/devtools/third_party/lighthouse/locales/fil.json +2066 -0
  976. package/static/devtools/third_party/lighthouse/locales/fr.json +2066 -0
  977. package/static/devtools/third_party/lighthouse/locales/he.json +2066 -0
  978. package/static/devtools/third_party/lighthouse/locales/hi.json +2066 -0
  979. package/static/devtools/third_party/lighthouse/locales/hr.json +2066 -0
  980. package/static/devtools/third_party/lighthouse/locales/hu.json +2066 -0
  981. package/static/devtools/third_party/lighthouse/locales/id.json +2066 -0
  982. package/static/devtools/third_party/lighthouse/locales/it.json +2066 -0
  983. package/static/devtools/third_party/lighthouse/locales/ja.json +2066 -0
  984. package/static/devtools/third_party/lighthouse/locales/ko.json +2066 -0
  985. package/static/devtools/third_party/lighthouse/locales/lt.json +2066 -0
  986. package/static/devtools/third_party/lighthouse/locales/lv.json +2066 -0
  987. package/static/devtools/third_party/lighthouse/locales/nl.json +2066 -0
  988. package/static/devtools/third_party/lighthouse/locales/no.json +2066 -0
  989. package/static/devtools/third_party/lighthouse/locales/pl.json +2066 -0
  990. package/static/devtools/third_party/lighthouse/locales/pt-PT.json +2066 -0
  991. package/static/devtools/third_party/lighthouse/locales/pt.json +2066 -0
  992. package/static/devtools/third_party/lighthouse/locales/ro.json +2066 -0
  993. package/static/devtools/third_party/lighthouse/locales/ru.json +2066 -0
  994. package/static/devtools/third_party/lighthouse/locales/sk.json +2066 -0
  995. package/static/devtools/third_party/lighthouse/locales/sl.json +2066 -0
  996. package/static/devtools/third_party/lighthouse/locales/sr-Latn.json +2066 -0
  997. package/static/devtools/third_party/lighthouse/locales/sr.json +2066 -0
  998. package/static/devtools/third_party/lighthouse/locales/sv.json +2066 -0
  999. package/static/devtools/third_party/lighthouse/locales/ta.json +2066 -0
  1000. package/static/devtools/third_party/lighthouse/locales/te.json +2066 -0
  1001. package/static/devtools/third_party/lighthouse/locales/th.json +2066 -0
  1002. package/static/devtools/third_party/lighthouse/locales/tr.json +2066 -0
  1003. package/static/devtools/third_party/lighthouse/locales/uk.json +2066 -0
  1004. package/static/devtools/third_party/lighthouse/locales/vi.json +2066 -0
  1005. package/static/devtools/third_party/lighthouse/locales/zh-HK.json +2066 -0
  1006. package/static/devtools/third_party/lighthouse/locales/zh-TW.json +2066 -0
  1007. package/static/devtools/third_party/lighthouse/locales/zh.json +2066 -0
  1008. package/static/devtools/third_party/lighthouse/report-assets/report-generator.d.ts +1 -0
  1009. package/static/devtools/third_party/lighthouse/report-assets/report-generator.js +167 -0
  1010. package/static/devtools/third_party/lighthouse/report-assets/report.d.ts +1 -0
  1011. package/static/devtools/third_party/lighthouse/report-assets/report.js +5032 -0
  1012. package/static/devtools/third_party/lit-html/lit-html-tsconfig.json +22 -0
  1013. package/static/devtools/third_party/lit-html/lit-html.js +120 -0
  1014. package/static/devtools/third_party/lit-html/package/directives/class-map.d.ts +28 -0
  1015. package/static/devtools/third_party/lit-html/package/directives/class-map.js +101 -0
  1016. package/static/devtools/third_party/lit-html/package/directives/class-map.js.map +1 -0
  1017. package/static/devtools/third_party/lit-html/package/directives/if-defined.d.ts +22 -0
  1018. package/static/devtools/third_party/lit-html/package/directives/if-defined.js +37 -0
  1019. package/static/devtools/third_party/lit-html/package/directives/if-defined.js.map +1 -0
  1020. package/static/devtools/third_party/lit-html/package/directives/live.d.ts +38 -0
  1021. package/static/devtools/third_party/lit-html/package/directives/live.js +73 -0
  1022. package/static/devtools/third_party/lit-html/package/directives/live.js.map +1 -0
  1023. package/static/devtools/third_party/lit-html/package/directives/repeat.d.ts +37 -0
  1024. package/static/devtools/third_party/lit-html/package/directives/repeat.js +415 -0
  1025. package/static/devtools/third_party/lit-html/package/directives/repeat.js.map +1 -0
  1026. package/static/devtools/third_party/lit-html/package/directives/style-map.d.ts +36 -0
  1027. package/static/devtools/third_party/lit-html/package/directives/style-map.js +78 -0
  1028. package/static/devtools/third_party/lit-html/package/directives/style-map.js.map +1 -0
  1029. package/static/devtools/third_party/lit-html/package/lib/default-template-processor.d.ts +39 -0
  1030. package/static/devtools/third_party/lit-html/package/lib/default-template-processor.js +52 -0
  1031. package/static/devtools/third_party/lit-html/package/lib/default-template-processor.js.map +1 -0
  1032. package/static/devtools/third_party/lit-html/package/lib/directive.d.ts +59 -0
  1033. package/static/devtools/third_party/lit-html/package/lib/directive.js +63 -0
  1034. package/static/devtools/third_party/lit-html/package/lib/directive.js.map +1 -0
  1035. package/static/devtools/third_party/lit-html/package/lib/dom.d.ts +29 -0
  1036. package/static/devtools/third_party/lit-html/package/lib/dom.js +44 -0
  1037. package/static/devtools/third_party/lit-html/package/lib/dom.js.map +1 -0
  1038. package/static/devtools/third_party/lit-html/package/lib/part.d.ts +46 -0
  1039. package/static/devtools/third_party/lit-html/package/lib/part.js +23 -0
  1040. package/static/devtools/third_party/lit-html/package/lib/part.js.map +1 -0
  1041. package/static/devtools/third_party/lit-html/package/lib/parts.d.ts +148 -0
  1042. package/static/devtools/third_party/lit-html/package/lib/parts.js +476 -0
  1043. package/static/devtools/third_party/lit-html/package/lib/parts.js.map +1 -0
  1044. package/static/devtools/third_party/lit-html/package/lib/render.d.ts +33 -0
  1045. package/static/devtools/third_party/lit-html/package/lib/render.js +43 -0
  1046. package/static/devtools/third_party/lit-html/package/lib/render.js.map +1 -0
  1047. package/static/devtools/third_party/lit-html/package/lib/template-factory.d.ts +57 -0
  1048. package/static/devtools/third_party/lit-html/package/lib/template-factory.js +48 -0
  1049. package/static/devtools/third_party/lit-html/package/lib/template-factory.js.map +1 -0
  1050. package/static/devtools/third_party/lit-html/package/lib/template-instance.d.ts +30 -0
  1051. package/static/devtools/third_party/lit-html/package/lib/template-instance.js +134 -0
  1052. package/static/devtools/third_party/lit-html/package/lib/template-instance.js.map +1 -0
  1053. package/static/devtools/third_party/lit-html/package/lib/template-result.d.ts +42 -0
  1054. package/static/devtools/third_party/lit-html/package/lib/template-result.js +131 -0
  1055. package/static/devtools/third_party/lit-html/package/lib/template-result.js.map +1 -0
  1056. package/static/devtools/third_party/lit-html/package/lib/template.d.ts +92 -0
  1057. package/static/devtools/third_party/lit-html/package/lib/template.js +215 -0
  1058. package/static/devtools/third_party/lit-html/package/lib/template.js.map +1 -0
  1059. package/static/devtools/third_party/lit-html/package/lit-html.d.ts +42 -0
  1060. package/static/devtools/third_party/lit-html/package/lit-html.js +59 -0
  1061. package/static/devtools/third_party/lit-html/package/lit-html.js.map +1 -0
  1062. package/static/devtools/third_party/marked/marked-tsconfig.json +8 -0
  1063. package/static/devtools/third_party/marked/marked.js +1 -0
  1064. package/static/devtools/third_party/marked/package/lib/marked.esm.d.ts +1 -0
  1065. package/static/devtools/third_party/marked/package/lib/marked.esm.js +2584 -0
  1066. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.d.ts +53 -0
  1067. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.d.ts.map +1 -0
  1068. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/api-docs-entry.js +64 -0
  1069. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.d.ts +176 -0
  1070. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.d.ts.map +1 -0
  1071. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Accessibility.js +356 -0
  1072. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.d.ts +21 -0
  1073. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map +1 -0
  1074. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js +81 -0
  1075. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts +423 -0
  1076. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts.map +1 -0
  1077. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js +516 -0
  1078. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.d.ts +39 -0
  1079. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.d.ts.map +1 -0
  1080. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js +76 -0
  1081. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.d.ts +26 -0
  1082. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.d.ts.map +1 -0
  1083. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserWebSocketTransport.js +30 -0
  1084. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts +120 -0
  1085. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts.map +1 -0
  1086. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.js +266 -0
  1087. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectionTransport.d.ts +22 -0
  1088. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectionTransport.d.ts.map +1 -0
  1089. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectionTransport.js +15 -0
  1090. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts +72 -0
  1091. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts.map +1 -0
  1092. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js +60 -0
  1093. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts +181 -0
  1094. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts.map +1 -0
  1095. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js +316 -0
  1096. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts +174 -0
  1097. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -0
  1098. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js +647 -0
  1099. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.d.ts +53 -0
  1100. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.d.ts.map +1 -0
  1101. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Debug.js +77 -0
  1102. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.d.ts +33 -0
  1103. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map +1 -0
  1104. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js +873 -0
  1105. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.d.ts +76 -0
  1106. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.d.ts.map +1 -0
  1107. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Dialog.js +92 -0
  1108. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.d.ts +25 -0
  1109. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.d.ts.map +1 -0
  1110. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EmulationManager.js +33 -0
  1111. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +34 -0
  1112. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts.map +1 -0
  1113. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js +37 -0
  1114. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts +59 -0
  1115. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts.map +1 -0
  1116. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.js +15 -0
  1117. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.d.ts +89 -0
  1118. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.d.ts.map +1 -0
  1119. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/EventEmitter.js +109 -0
  1120. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.d.ts +82 -0
  1121. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.d.ts.map +1 -0
  1122. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Events.js +83 -0
  1123. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.d.ts +189 -0
  1124. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.d.ts.map +1 -0
  1125. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/ExecutionContext.js +313 -0
  1126. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.d.ts +60 -0
  1127. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.d.ts.map +1 -0
  1128. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FileChooser.js +66 -0
  1129. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts +735 -0
  1130. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -0
  1131. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +962 -0
  1132. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +276 -0
  1133. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -0
  1134. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +421 -0
  1135. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.d.ts +128 -0
  1136. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.d.ts.map +1 -0
  1137. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPResponse.js +150 -0
  1138. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts +322 -0
  1139. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts.map +1 -0
  1140. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js +463 -0
  1141. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts +439 -0
  1142. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -0
  1143. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js +724 -0
  1144. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.d.ts +62 -0
  1145. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.d.ts.map +1 -0
  1146. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/LifecycleWatcher.js +145 -0
  1147. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +80 -0
  1148. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -0
  1149. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +262 -0
  1150. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +152 -0
  1151. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -0
  1152. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js +31 -0
  1153. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts +910 -0
  1154. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -0
  1155. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +1343 -0
  1156. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Product.d.ts +21 -0
  1157. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Product.d.ts.map +1 -0
  1158. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Product.js +15 -0
  1159. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.d.ts +135 -0
  1160. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.d.ts.map +1 -0
  1161. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Puppeteer.js +133 -0
  1162. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PuppeteerViewport.d.ts +24 -0
  1163. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PuppeteerViewport.d.ts.map +1 -0
  1164. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/PuppeteerViewport.js +0 -0
  1165. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.d.ts +66 -0
  1166. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.d.ts.map +1 -0
  1167. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/QueryHandler.js +157 -0
  1168. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.d.ts +61 -0
  1169. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.d.ts.map +1 -0
  1170. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/SecurityDetails.js +72 -0
  1171. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.d.ts +98 -0
  1172. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.d.ts.map +1 -0
  1173. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Target.js +137 -0
  1174. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.d.ts +28 -0
  1175. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.d.ts.map +1 -0
  1176. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/TimeoutSettings.js +43 -0
  1177. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts +47 -0
  1178. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts.map +1 -0
  1179. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js +94 -0
  1180. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.d.ts +40 -0
  1181. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.d.ts.map +1 -0
  1182. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/USKeyboardLayout.js +403 -0
  1183. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.d.ts +102 -0
  1184. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.d.ts.map +1 -0
  1185. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/WebWorker.js +109 -0
  1186. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts +22 -0
  1187. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts.map +1 -0
  1188. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js +24 -0
  1189. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.d.ts +17 -0
  1190. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.d.ts.map +1 -0
  1191. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/fetch.js +20 -0
  1192. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts +66 -0
  1193. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +1 -0
  1194. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js +288 -0
  1195. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts +17 -0
  1196. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts.map +1 -0
  1197. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/environment.js +16 -0
  1198. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-node.d.ts +18 -0
  1199. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-node.d.ts.map +1 -0
  1200. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-node.js +39 -0
  1201. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.d.ts +18 -0
  1202. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.d.ts.map +1 -0
  1203. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/initialize-web.js +22 -0
  1204. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts +132 -0
  1205. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map +1 -0
  1206. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +468 -0
  1207. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.d.ts +40 -0
  1208. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -0
  1209. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +197 -0
  1210. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts +42 -0
  1211. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -0
  1212. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.js +0 -0
  1213. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts +16 -0
  1214. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -0
  1215. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js +469 -0
  1216. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts +29 -0
  1217. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -0
  1218. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js +34 -0
  1219. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.d.ts +31 -0
  1220. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.d.ts.map +1 -0
  1221. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/PipeTransport.js +61 -0
  1222. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts +156 -0
  1223. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts.map +1 -0
  1224. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js +183 -0
  1225. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/install.d.ts +18 -0
  1226. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/install.d.ts.map +1 -0
  1227. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js +151 -0
  1228. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.d.ts +18 -0
  1229. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.d.ts.map +1 -0
  1230. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node-puppeteer-core.js +23 -0
  1231. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node.d.ts +18 -0
  1232. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node.d.ts.map +1 -0
  1233. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/node.js +22 -0
  1234. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +22 -0
  1235. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts.map +1 -0
  1236. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +19 -0
  1237. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/web.d.ts +18 -0
  1238. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/web.d.ts.map +1 -0
  1239. package/static/devtools/third_party/puppeteer/package/lib/esm/puppeteer/web.js +22 -0
  1240. package/static/devtools/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.d.ts +22 -0
  1241. package/static/devtools/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.d.ts.map +1 -0
  1242. package/static/devtools/third_party/puppeteer/package/lib/esm/vendor/mitt/src/index.js +53 -0
  1243. package/static/devtools/third_party/puppeteer/puppeteer-tsconfig.json +58 -0
  1244. package/static/devtools/third_party/puppeteer/puppeteer.js +1 -0
  1245. package/static/devtools/third_party/wasmparser/package/dist/esm/WasmDis.js +1595 -0
  1246. package/static/devtools/third_party/wasmparser/package/dist/esm/WasmParser.js +3120 -0
  1247. package/static/devtools/third_party/wasmparser/wasmparser-tsconfig.json +9 -0
  1248. package/static/devtools/timeline/timeline-legacy.js +1 -0
  1249. package/static/devtools/timeline/timeline-meta.js +1 -0
  1250. package/static/devtools/timeline/timeline.js +1 -0
  1251. package/static/devtools/timeline/timeline_module.js +1 -0
  1252. package/static/devtools/timeline_model/timeline_model-legacy.js +1 -0
  1253. package/static/devtools/timeline_model/timeline_model.js +1 -0
  1254. package/static/devtools/timeline_model/timeline_model_module.js +0 -0
  1255. package/static/devtools/toolbox.html +20 -0
  1256. package/static/devtools/toolbox.js +1 -0
  1257. package/static/devtools/toolbox_bootstrap/toolbox_bootstrap.js +1 -0
  1258. package/static/devtools/ui/components/components.js +378 -0
  1259. package/static/devtools/ui/ui-legacy.js +1 -0
  1260. package/static/devtools/ui/ui.js +3 -0
  1261. package/static/devtools/ui/utils/utils.js +1 -0
  1262. package/static/devtools/wasmparser_worker/wasmparser_worker-entrypoint.js +1 -0
  1263. package/static/devtools/wasmparser_worker/wasmparser_worker.js +1 -0
  1264. package/static/devtools/web_audio/graph_visualizer/graph_visualizer.js +1 -0
  1265. package/static/devtools/web_audio/web_audio-legacy.js +1 -0
  1266. package/static/devtools/web_audio/web_audio-meta.js +1 -0
  1267. package/static/devtools/web_audio/web_audio.js +23 -0
  1268. package/static/devtools/web_audio/web_audio_module.js +1 -0
  1269. package/static/devtools/webauthn/webauthn-legacy.js +1 -0
  1270. package/static/devtools/webauthn/webauthn-meta.js +1 -0
  1271. package/static/devtools/webauthn/webauthn.js +6 -0
  1272. package/static/devtools/webauthn/webauthn_module.js +1 -0
  1273. package/static/devtools/worker_app.html +20 -0
  1274. package/static/devtools/worker_app.js +1 -0
  1275. package/static/devtools/worker_main/worker_main-legacy.js +1 -0
  1276. package/static/devtools/worker_main/worker_main.js +1 -0
  1277. package/static/devtools/worker_service/worker_service.js +1 -0
  1278. package/static/devtools/workspace/workspace-legacy.js +1 -0
  1279. package/static/devtools/workspace/workspace.js +1 -0
  1280. package/static/devtools/workspace_diff/workspace_diff-legacy.js +1 -0
  1281. package/static/devtools/workspace_diff/workspace_diff.js +1 -0
  1282. package/static/devtools/workspace_diff/workspace_diff_module.js +0 -0
  1283. package/static/docs/swagger.json +3294 -2185
  1284. package/static/function/client.js +1037 -992
  1285. package/build/routes/chromium/http/download-post.body.json +0 -32
  1286. package/build/routes/chromium/http/function-post.body.json +0 -32
  1287. package/build/routes/chromium/http/function-post.query.json +0 -120
  1288. package/build/routes/chromium/http/json-list.response.json +0 -52
  1289. package/build/routes/chromium/http/json-new.js +0 -23
  1290. package/build/routes/chromium/http/json-new.response.json +0 -44
  1291. package/build/routes/chromium/http/json-protocol-get.response.json +0 -6
  1292. package/build/routes/chromium/http/json-version-get.response.json +0 -37
  1293. package/build/routes/chromium/http/pdf-post.query.json +0 -120
  1294. package/build/routes/chromium/http/performance.body.json +0 -26
  1295. package/build/routes/chromium/http/performance.query.json +0 -120
  1296. package/build/routes/chromium/http/scrape-post.response.json +0 -309
  1297. package/build/routes/chromium/http/screenshot-post.query.json +0 -120
  1298. package/build/routes/chromium/utils/cdp.d.ts +0 -2
  1299. package/build/routes/chromium/utils/cdp.js +0 -14
  1300. package/build/routes/chromium/ws/cdp-chromium.js +0 -10
  1301. package/build/routes/chromium/ws/cdp-chromium.query.json +0 -120
  1302. package/build/routes/chromium/ws/playwright-chromium.query.json +0 -100
  1303. package/build/routes/firefox/ws/playwright-firefox.d.ts +0 -16
  1304. package/build/routes/firefox/ws/playwright-firefox.query.json +0 -100
  1305. package/build/routes/management/http/config-get.response.json +0 -107
  1306. package/build/routes/management/http/metrics-get.response.json +0 -94
  1307. package/build/routes/management/http/metrics-total-get.response.json +0 -72
  1308. package/build/routes/webkit/ws/playwright-webkit.query.json +0 -100
  1309. package/src/routes/chromium/http/json-list.ts +0 -50
  1310. package/src/routes/chromium/utils/cdp.ts +0 -19
  1311. package/build/routes/{chromium/http/content-post.query.json → chrome/http/content.post.query.json} +0 -0
  1312. package/build/routes/{chromium/http/content-post.response.json → chrome/http/content.post.response.json} +0 -0
  1313. package/build/routes/{chromium/http/scrape-post.query.json → chrome/http/download.post.query.json} +0 -0
  1314. package/build/routes/{chromium/http/pdf-post.response.json → chrome/http/pdf.post.response.json} +0 -0
  1315. package/build/routes/{chromium/http/screenshot-post.response.json → chrome/http/screenshot.post.response.json} +0 -0
  1316. package/build/routes/{chromium/utils/performance/child.d.ts → chrome/tests/content.spec.d.ts} +0 -0
  1317. package/build/routes/{chromium/utils/performance/types.js → chrome/tests/download.spec.d.ts} +0 -0
  1318. package/build/routes/management/http/{config-get.d.ts → config.get.d.ts} +0 -0
  1319. package/build/routes/management/http/{config-get.js → config.get.js} +0 -0
  1320. package/build/routes/management/http/{metrics-total-get.d.ts → metrics-total.get.d.ts} +0 -0
  1321. package/build/routes/management/http/{metrics-total-get.js → metrics-total.get.js} +0 -0
  1322. package/build/routes/management/http/{metrics-get.d.ts → metrics.get.d.ts} +0 -0
  1323. package/build/routes/management/http/{metrics-get.js → metrics.get.js} +0 -0
  1324. package/build/routes/management/http/{sessions-get.d.ts → sessions.get.d.ts} +0 -0
  1325. package/build/routes/management/http/{sessions-get.js → sessions.get.js} +0 -0
  1326. package/build/routes/management/http/{static-get.d.ts → static.get.d.ts} +0 -0
  1327. package/build/{routes/chromium/http/json-protocol-get.d.ts → shared/json-protocol.http.d.ts} +1 -1
  1328. package/build/{routes/chromium/http/json-version-get.d.ts → shared/json-version.http.d.ts} +1 -1
  1329. /package/build/{routes/chromium → shared}/utils/function/client.d.ts +0 -0
  1330. /package/build/{routes/chromium → shared}/utils/function/client.js +0 -0
  1331. /package/build/{routes/chromium → shared}/utils/function/handler.d.ts +0 -0
  1332. /package/build/{routes/chromium → shared}/utils/function/handler.js +0 -0
  1333. /package/build/{routes/chromium → shared}/utils/performance/child.js +0 -0
  1334. /package/build/{routes/chromium → shared}/utils/performance/main.d.ts +0 -0
  1335. /package/build/{routes/chromium → shared}/utils/performance/types.d.ts +0 -0
  1336. /package/src/routes/management/http/{config-get.ts → config.get.ts} +0 -0
  1337. /package/src/routes/management/http/{metrics-total-get.ts → metrics-total.get.ts} +0 -0
  1338. /package/src/routes/management/http/{metrics-get.ts → metrics.get.ts} +0 -0
  1339. /package/src/routes/management/http/{sessions-get.ts → sessions.get.ts} +0 -0
  1340. /package/src/{routes/chromium → shared}/utils/function/client.ts +0 -0
  1341. /package/src/{routes/chromium → shared}/utils/performance/child.ts +0 -0
  1342. /package/src/{routes/chromium → shared}/utils/performance/types.ts +0 -0
@@ -0,0 +1 @@
1
+ import{HeapSnapshotModel as e}from"./heap_snapshot_model.js";self.HeapSnapshotModel=self.HeapSnapshotModel||{},HeapSnapshotModel=HeapSnapshotModel||{},HeapSnapshotModel.HeapSnapshotProgressEvent=e.HeapSnapshotProgressEvent,HeapSnapshotModel.baseSystemDistance=e.baseSystemDistance,HeapSnapshotModel.AllocationNodeCallers=e.AllocationNodeCallers,HeapSnapshotModel.SerializedAllocationNode=e.SerializedAllocationNode,HeapSnapshotModel.AllocationStackFrame=e.AllocationStackFrame,HeapSnapshotModel.Node=e.Node,HeapSnapshotModel.Edge=e.Edge,HeapSnapshotModel.Aggregate=e.Aggregate,HeapSnapshotModel.AggregateForDiff=e.AggregateForDiff,HeapSnapshotModel.Diff=e.Diff,HeapSnapshotModel.DiffForClass=e.DiffForClass,HeapSnapshotModel.ComparatorConfig=e.ComparatorConfig,HeapSnapshotModel.WorkerCommand=e.WorkerCommand,HeapSnapshotModel.ItemsRange=e.ItemsRange,HeapSnapshotModel.StaticData=e.StaticData,HeapSnapshotModel.Statistics=e.Statistics,HeapSnapshotModel.NodeFilter=e.NodeFilter,HeapSnapshotModel.SearchConfig=e.SearchConfig,HeapSnapshotModel.Samples=e.Samples,HeapSnapshotModel.Location=e.Location;
@@ -0,0 +1 @@
1
+ var t=Object.freeze({__proto__:null,HeapSnapshotProgressEvent:{Update:"ProgressUpdate",BrokenSnapshot:"BrokenSnapshot"},baseSystemDistance:1e8,AllocationNodeCallers:class{constructor(t,s){this.nodesWithSingleCaller=t,this.branchingCallers=s}},SerializedAllocationNode:class{constructor(t,s,e,i,o,h,d,a,n,c,r){this.id=t,this.name=s,this.scriptName=e,this.scriptId=i,this.line=o,this.column=h,this.count=d,this.size=a,this.liveCount=n,this.liveSize=c,this.hasChildren=r}},AllocationStackFrame:class{constructor(t,s,e,i,o){this.functionName=t,this.scriptName=s,this.scriptId=e,this.line=i,this.column=o}},Node:class{constructor(t,s,e,i,o,h,d){this.id=t,this.name=s,this.distance=e,this.nodeIndex=i,this.retainedSize=o,this.selfSize=h,this.type=d,this.canBeQueried=!1,this.detachedDOMTreeNode=!1,this.isAddedNotRemoved=null}},Edge:class{constructor(t,s,e,i){this.name=t,this.node=s,this.type=e,this.edgeIndex=i,this.isAddedNotRemoved=null}},Aggregate:class{constructor(){this.count,this.distance,this.self,this.maxRet,this.type,this.name,this.idxs}},AggregateForDiff:class{constructor(){this.indexes=[],this.ids=[],this.selfSizes=[]}},Diff:class{constructor(){this.addedCount=0,this.removedCount=0,this.addedSize=0,this.removedSize=0,this.deletedIndexes=[],this.addedIndexes=[],this.countDelta,this.sizeDelta}},DiffForClass:class{constructor(){this.addedCount,this.removedCount,this.addedSize,this.removedSize,this.deletedIndexes,this.addedIndexes,this.countDelta,this.sizeDelta}},ComparatorConfig:class{constructor(t,s,e,i){this.fieldName1=t,this.ascending1=s,this.fieldName2=e,this.ascending2=i}},WorkerCommand:class{constructor(){this.callId,this.disposition,this.objectId,this.newObjectId,this.methodName,this.methodArguments,this.source}},ItemsRange:class{constructor(t,s,e,i){this.startPosition=t,this.endPosition=s,this.totalLength=e,this.items=i}},StaticData:class{constructor(t,s,e,i){this.nodeCount=t,this.rootNodeIndex=s,this.totalSize=e,this.maxJSObjectId=i}},Statistics:class{constructor(){this.total,this.v8heap,this.native,this.code,this.jsArrays,this.strings,this.system}},NodeFilter:class{constructor(t,s){this.minNodeId=t,this.maxNodeId=s,this.allocationNodeId}equals(t){return this.minNodeId===t.minNodeId&&this.maxNodeId===t.maxNodeId&&this.allocationNodeId===t.allocationNodeId}},SearchConfig:class{constructor(t,s,e,i,o){this.query=t,this.caseSensitive=s,this.isRegex=e,this.shouldJump=i,this.jumpBackward=o}toSearchRegex(t){throw new Error("Unsupported operation on search config")}},Samples:class{constructor(t,s,e){this.timestamps=t,this.lastAssignedIds=s,this.sizes=e}},Location:class{constructor(t,s,e){this.scriptId=t,this.lineNumber=s,this.columnNumber=e}}});export{t as HeapSnapshotModel};
@@ -0,0 +1 @@
1
+ import{HeapSnapshotWorkerDispatcher as e}from"./heap_snapshot_worker.js";const s=self,a=new e.HeapSnapshotWorkerDispatcher(s,(e=>self.postMessage(e)));var r;r=a.dispatchMessage.bind(a),s.addEventListener("message",r,!1),self.postMessage("workerReady");
@@ -0,0 +1 @@
1
+ import{HeapSnapshotModel as e}from"../heap_snapshot_model/heap_snapshot_model.js";import{HeapSnapshotWorkerDispatcher as a,AllocationProfile as o,HeapSnapshot as p,HeapSnapshotLoader as t}from"./heap_snapshot_worker.js";self.HeapSnapshotModel=self.HeapSnapshotModel||{},HeapSnapshotModel=HeapSnapshotModel||{},HeapSnapshotModel.HeapSnapshotProgressEvent=e.HeapSnapshotProgressEvent,HeapSnapshotModel.baseSystemDistance=e.baseSystemDistance,HeapSnapshotModel.AllocationNodeCallers=e.AllocationNodeCallers,HeapSnapshotModel.SerializedAllocationNode=e.SerializedAllocationNode,HeapSnapshotModel.AllocationStackFrame=e.AllocationStackFrame,HeapSnapshotModel.Node=e.Node,HeapSnapshotModel.Edge=e.Edge,HeapSnapshotModel.Aggregate=e.Aggregate,HeapSnapshotModel.AggregateForDiff=e.AggregateForDiff,HeapSnapshotModel.Diff=e.Diff,HeapSnapshotModel.DiffForClass=e.DiffForClass,HeapSnapshotModel.ComparatorConfig=e.ComparatorConfig,HeapSnapshotModel.WorkerCommand=e.WorkerCommand,HeapSnapshotModel.ItemsRange=e.ItemsRange,HeapSnapshotModel.StaticData=e.StaticData,HeapSnapshotModel.Statistics=e.Statistics,HeapSnapshotModel.NodeFilter=e.NodeFilter,HeapSnapshotModel.SearchConfig=e.SearchConfig,HeapSnapshotModel.Samples=e.Samples,HeapSnapshotModel.Location=e.Location;const r=self,n=new a.HeapSnapshotWorkerDispatcher(r,(e=>self.postMessage(e)));var s;s=n.dispatchMessage.bind(n),r.addEventListener("message",s,!1),self.postMessage("workerReady"),self.HeapSnapshotWorker=self.HeapSnapshotWorker||{},HeapSnapshotWorker=HeapSnapshotWorker||{},HeapSnapshotWorker.AllocationProfile=o.AllocationProfile,HeapSnapshotWorker.TopDownAllocationNode=o.TopDownAllocationNode,HeapSnapshotWorker.BottomUpAllocationNode=o.BottomUpAllocationNode,HeapSnapshotWorker.FunctionAllocationInfo=o.FunctionAllocationInfo,HeapSnapshotWorker.HeapSnapshotItem=p.HeapSnapshotItem,HeapSnapshotWorker.HeapSnapshotEdge=p.HeapSnapshotEdge,HeapSnapshotWorker.HeapSnapshotItemIterator=p.HeapSnapshotItemIterator,HeapSnapshotWorker.HeapSnapshotItemIndexProvider=p.HeapSnapshotItemIndexProvider,HeapSnapshotWorker.HeapSnapshotNodeIndexProvider=p.HeapSnapshotNodeIndexProvider,HeapSnapshotWorker.HeapSnapshotEdgeIndexProvider=p.HeapSnapshotEdgeIndexProvider,HeapSnapshotWorker.HeapSnapshotRetainerEdgeIndexProvider=p.HeapSnapshotRetainerEdgeIndexProvider,HeapSnapshotWorker.HeapSnapshotEdgeIterator=p.HeapSnapshotEdgeIterator,HeapSnapshotWorker.HeapSnapshotRetainerEdge=p.HeapSnapshotRetainerEdge,HeapSnapshotWorker.HeapSnapshotRetainerEdgeIterator=p.HeapSnapshotRetainerEdgeIterator,HeapSnapshotWorker.HeapSnapshotNode=p.HeapSnapshotNode,HeapSnapshotWorker.HeapSnapshotNodeIterator=p.HeapSnapshotNodeIterator,HeapSnapshotWorker.HeapSnapshotIndexRangeIterator=p.HeapSnapshotIndexRangeIterator,HeapSnapshotWorker.HeapSnapshotFilteredIterator=p.HeapSnapshotFilteredIterator,HeapSnapshotWorker.HeapSnapshotProgress=p.HeapSnapshotProgress,HeapSnapshotWorker.HeapSnapshotProblemReport=p.HeapSnapshotProblemReport,HeapSnapshotWorker.HeapSnapshot=p.HeapSnapshot,HeapSnapshotWorker.HeapSnapshotHeader=p.HeapSnapshotHeader,HeapSnapshotWorker.HeapSnapshotItemProvider=p.HeapSnapshotItemProvider,HeapSnapshotWorker.HeapSnapshotEdgesProvider=p.HeapSnapshotEdgesProvider,HeapSnapshotWorker.HeapSnapshotNodesProvider=p.HeapSnapshotNodesProvider,HeapSnapshotWorker.JSHeapSnapshot=p.JSHeapSnapshot,HeapSnapshotWorker.JSHeapSnapshotNode=p.JSHeapSnapshotNode,HeapSnapshotWorker.JSHeapSnapshotEdge=p.JSHeapSnapshotEdge,HeapSnapshotWorker.JSHeapSnapshotRetainerEdge=p.JSHeapSnapshotRetainerEdge,HeapSnapshotWorker.HeapSnapshotLoader=t.HeapSnapshotLoader,HeapSnapshotWorker.HeapSnapshotWorkerDispatcher=a.HeapSnapshotWorkerDispatcher;
@@ -0,0 +1 @@
1
+ import{HeapSnapshotModel as e}from"../heap_snapshot_model/heap_snapshot_model.js";import{i18n as t}from"../i18n/i18n.js";import{ArrayUtilities as s}from"../platform/platform.js";import{TextUtils as n}from"../text_utils/text_utils.js";class i{constructor(e,t){this._strings=e.strings,this._liveObjectStats=t,this._nextNodeId=1,this._functionInfos=[],this._idToNode={},this._idToTopDownNode={},this._collapsedTopNodeIdToFunctionInfo={},this._traceTops=[],this._buildFunctionAllocationInfos(e),this._traceTree=this._buildAllocationTree(e,t)}_buildFunctionAllocationInfos(e){const t=this._strings,s=e.snapshot.meta.trace_function_info_fields,n=s.indexOf("name"),i=s.indexOf("script_name"),o=s.indexOf("script_id"),r=s.indexOf("line"),a=s.indexOf("column"),h=s.length,l=e.trace_function_infos,_=l.length,c=this._functionInfos=new Array(_/h);let u=0;for(let e=0;e<_;e+=h)c[u++]=new d(t[l[e+n]],t[l[e+i]],l[e+o],l[e+r],l[e+a])}_buildAllocationTree(e,t){const s=e.trace_tree,n=this._functionInfos,i=this._idToTopDownNode,r=e.snapshot.meta.trace_node_fields,d=r.indexOf("id"),a=r.indexOf("function_info_index"),h=r.indexOf("count"),l=r.indexOf("size"),_=r.indexOf("children"),c=r.length;return function e(s,r,u){const f=n[s[r+a]],p=s[r+d],g=t[p],m=g?g.count:0,x=g?g.size:0,I=new o(p,f,s[r+h],s[r+l],m,x,u);i[p]=I,f.addTraceTopNode(I);const N=s[r+_];for(let t=0;t<N.length;t+=c)I.children.push(e(N,t,I));return I}(s,0,null)}serializeTraceTops(){if(this._traceTops)return this._traceTops;const e=this._traceTops=[],t=this._functionInfos;for(let s=0;s<t.length;s++){const n=t[s];if(0===n.totalCount)continue;const i=this._nextNodeId++,o=0===s;e.push(this._serializeNode(i,n,n.totalCount,n.totalSize,n.totalLiveCount,n.totalLiveSize,!o)),this._collapsedTopNodeIdToFunctionInfo[i]=n}return e.sort((function(e,t){return t.size-e.size})),e}serializeCallers(t){let s=this._ensureBottomUpNode(t);const n=[];for(;1===s.callers().length;)s=s.callers()[0],n.push(this._serializeCaller(s));const i=[],o=s.callers();for(let e=0;e<o.length;e++)i.push(this._serializeCaller(o[e]));return new e.AllocationNodeCallers(n,i)}serializeAllocationStack(t){let s=this._idToTopDownNode[t];const n=[];for(;s;){const t=s.functionInfo;n.push(new e.AllocationStackFrame(t.functionName,t.scriptName,t.scriptId,t.line,t.column)),s=s.parent}return n}traceIds(e){return this._ensureBottomUpNode(e).traceTopIds}_ensureBottomUpNode(e){let t=this._idToNode[e];if(!t){t=this._collapsedTopNodeIdToFunctionInfo[e].bottomUpRoot(),delete this._collapsedTopNodeIdToFunctionInfo[e],this._idToNode[e]=t}return t}_serializeCaller(e){const t=this._nextNodeId++;return this._idToNode[t]=e,this._serializeNode(t,e.functionInfo,e.allocationCount,e.allocationSize,e.liveCount,e.liveSize,e.hasCallers())}_serializeNode(t,s,n,i,o,r,d){return new e.SerializedAllocationNode(t,s.functionName,s.scriptName,s.scriptId,s.line,s.column,n,i,o,r,d)}}class o{constructor(e,t,s,n,i,o,r){this.id=e,this.functionInfo=t,this.allocationCount=s,this.allocationSize=n,this.liveCount=i,this.liveSize=o,this.parent=r,this.children=[]}}class r{constructor(e){this.functionInfo=e,this.allocationCount=0,this.allocationSize=0,this.liveCount=0,this.liveSize=0,this.traceTopIds=[],this._callers=[]}addCaller(e){const t=e.functionInfo;let s;for(let e=0;e<this._callers.length;e++){const n=this._callers[e];if(n.functionInfo===t){s=n;break}}return s||(s=new r(t),this._callers.push(s)),s}callers(){return this._callers}hasCallers(){return this._callers.length>0}}class d{constructor(e,t,s,n,i){this.functionName=e,this.scriptName=t,this.scriptId=s,this.line=n,this.column=i,this.totalCount=0,this.totalSize=0,this.totalLiveCount=0,this.totalLiveSize=0,this._traceTops=[]}addTraceTopNode(e){0!==e.allocationCount&&(this._traceTops.push(e),this.totalCount+=e.allocationCount,this.totalSize+=e.allocationSize,this.totalLiveCount+=e.liveCount,this.totalLiveSize+=e.liveSize)}bottomUpRoot(){return this._traceTops.length?(this._bottomUpTree||this._buildAllocationTraceTree(),this._bottomUpTree):null}_buildAllocationTraceTree(){this._bottomUpTree=new r(this);for(let e=0;e<this._traceTops.length;e++){let t=this._traceTops[e],s=this._bottomUpTree;const n=t.allocationCount,i=t.allocationSize,o=t.liveCount,r=t.liveSize,d=t.id;for(;s.allocationCount+=n,s.allocationSize+=i,s.liveCount+=o,s.liveSize+=r,s.traceTopIds.push(d),t=t.parent,null!==t;)s=s.addCaller(t)}}}var a=Object.freeze({__proto__:null,AllocationProfile:i,TopDownAllocationNode:o,BottomUpAllocationNode:r,FunctionAllocationInfo:d});class h{constructor(e,t){this._snapshot=e,this._edges=e.containmentEdges,this.edgeIndex=t||0}clone(){return new h(this._snapshot,this.edgeIndex)}hasStringName(){throw new Error("Not implemented")}name(){throw new Error("Not implemented")}node(){return this._snapshot.createNode(this.nodeIndex())}nodeIndex(){if(void 0===this._snapshot._edgeToNodeOffset)throw new Error("edgeToNodeOffset is undefined");return this._edges[this.edgeIndex+this._snapshot._edgeToNodeOffset]}toString(){return"HeapSnapshotEdge: "+this.name()}type(){return this._snapshot._edgeTypes[this.rawType()]}itemIndex(){return this.edgeIndex}serialize(){return new e.Edge(this.name(),this.node().serialize(),this.type(),this.edgeIndex)}rawType(){if(void 0===this._snapshot._edgeTypeOffset)throw new Error("edgeTypeOffset is undefined");return this._edges[this.edgeIndex+this._snapshot._edgeTypeOffset]}isInvisible(){throw new Error("Not implemented")}isWeak(){throw new Error("Not implemented")}}class l{constructor(e){this._node=e.createNode()}itemForIndex(e){return this._node.nodeIndex=e,this._node}}class _{constructor(e){this._edge=e.createEdge(0)}itemForIndex(e){return this._edge.edgeIndex=e,this._edge}}class c{constructor(e){this._retainerEdge=e.createRetainingEdge(0)}itemForIndex(e){return this._retainerEdge.setRetainerIndex(e),this._retainerEdge}}class u{constructor(e){this._sourceNode=e,this.edge=e._snapshot.createEdge(e.edgeIndexesStart())}hasNext(){return this.edge.edgeIndex<this._sourceNode.edgeIndexesEnd()}item(){return this.edge}next(){if(void 0===this.edge._snapshot._edgeFieldsCount)throw new Error("edgeFieldsCount is undefined");this.edge.edgeIndex+=this.edge._snapshot._edgeFieldsCount}}class f{constructor(e,t){this._snapshot=e,this._retainerIndex,this._globalEdgeIndex,this.setRetainerIndex(t)}clone(){return new f(this._snapshot,this.retainerIndex())}hasStringName(){return this._edge().hasStringName()}name(){return this._edge().name()}node(){return this._node()}nodeIndex(){if(void 0===this._retainingNodeIndex)throw new Error("retainingNodeIndex is undefined");return this._retainingNodeIndex}retainerIndex(){return this._retainerIndex}setRetainerIndex(e){if(e!==this._retainerIndex){if(!this._snapshot._retainingEdges||!this._snapshot._retainingNodes)throw new Error("Snapshot does not contain retaining edges or retaining nodes");this._retainerIndex=e,this._globalEdgeIndex=this._snapshot._retainingEdges[e],this._retainingNodeIndex=this._snapshot._retainingNodes[e],this._edgeInstance=null,this._nodeInstance=null}}set edgeIndex(e){this.setRetainerIndex(e)}_node(){return this._nodeInstance||(this._nodeInstance=this._snapshot.createNode(this._retainingNodeIndex)),this._nodeInstance}_edge(){return this._edgeInstance||(this._edgeInstance=this._snapshot.createEdge(this._globalEdgeIndex)),this._edgeInstance}toString(){return this._edge().toString()}itemIndex(){return this._retainerIndex}serialize(){return new e.Edge(this.name(),this.node().serialize(),this.type(),this._globalEdgeIndex)}type(){return this._edge().type()}}class p{constructor(e){const t=e._snapshot,s=e.ordinal();if(!t._firstRetainerIndex)throw new Error("Snapshot does not contain firstRetainerIndex");const n=t._firstRetainerIndex[s];this._retainersEnd=t._firstRetainerIndex[s+1],this.retainer=t.createRetainingEdge(n)}hasNext(){return this.retainer.retainerIndex()<this._retainersEnd}item(){return this.retainer}next(){this.retainer.setRetainerIndex(this.retainer.retainerIndex()+1)}}class g{constructor(e,t){this._snapshot=e,this.nodeIndex=t||0}distance(){return this._snapshot._nodeDistances[this.nodeIndex/this._snapshot._nodeFieldCount]}className(){throw new Error("Not implemented")}classIndex(){throw new Error("Not implemented")}dominatorIndex(){const e=this._snapshot._nodeFieldCount;return this._snapshot._dominatorsTree[this.nodeIndex/this._snapshot._nodeFieldCount]*e}edges(){return new u(this)}edgesCount(){return(this.edgeIndexesEnd()-this.edgeIndexesStart())/this._snapshot._edgeFieldsCount}id(){throw new Error("Not implemented")}rawName(){throw new Error("Not implemented")}isRoot(){return this.nodeIndex===this._snapshot._rootNodeIndex}isUserRoot(){throw new Error("Not implemented")}isHidden(){throw new Error("Not implemented")}isArray(){throw new Error("Not implemented")}isDocumentDOMTreesRoot(){throw new Error("Not implemented")}name(){return this._snapshot.strings[this._name()]}retainedSize(){return this._snapshot._retainedSizes[this.ordinal()]}retainers(){return new p(this)}retainersCount(){const e=this._snapshot,t=this.ordinal();return e._firstRetainerIndex[t+1]-e._firstRetainerIndex[t]}selfSize(){const e=this._snapshot;return e.nodes[this.nodeIndex+e._nodeSelfSizeOffset]}type(){return this._snapshot._nodeTypes[this.rawType()]}traceNodeId(){const e=this._snapshot;return e.nodes[this.nodeIndex+e._nodeTraceNodeIdOffset]}itemIndex(){return this.nodeIndex}serialize(){return new e.Node(this.id(),this.name(),this.distance(),this.nodeIndex,this.retainedSize(),this.selfSize(),this.type())}_name(){const e=this._snapshot;return e.nodes[this.nodeIndex+e._nodeNameOffset]}edgeIndexesStart(){return this._snapshot._firstEdgeIndexes[this.ordinal()]}edgeIndexesEnd(){return this._snapshot._firstEdgeIndexes[this.ordinal()+1]}ordinal(){return this.nodeIndex/this._snapshot._nodeFieldCount}_nextNodeIndex(){return this.nodeIndex+this._snapshot._nodeFieldCount}rawType(){const e=this._snapshot;return e.nodes[this.nodeIndex+e._nodeTypeOffset]}}class m{constructor(e){this.node=e,this._nodesLength=e._snapshot.nodes.length}hasNext(){return this.node.nodeIndex<this._nodesLength}item(){return this.node}next(){this.node.nodeIndex=this.node._nextNodeIndex()}}class x{constructor(e,t){this._itemProvider=e,this._indexes=t,this._position=0}hasNext(){return this._position<this._indexes.length}item(){const e=this._indexes[this._position];return this._itemProvider.itemForIndex(e)}next(){++this._position}}class I{constructor(e,t){this._iterator=e,this._filter=t,this._skipFilteredItems()}hasNext(){return this._iterator.hasNext()}item(){return this._iterator.item()}next(){this._iterator.next(),this._skipFilteredItems()}_skipFilteredItems(){for(;this._iterator.hasNext()&&this._filter&&!this._filter(this._iterator.item());)this._iterator.next()}}class N{constructor(e){this._dispatcher=e}updateStatus(e){this._sendUpdateEvent(t.serializeUIString(e))}updateProgress(e,s,n){const i=(100*(n?s/n:0)).toFixed(0);this._sendUpdateEvent(t.serializeUIString(e,{PH1:i}))}reportProblem(t){this._dispatcher&&this._dispatcher.sendEvent(e.HeapSnapshotProgressEvent.BrokenSnapshot,t)}_sendUpdateEvent(t){this._dispatcher&&this._dispatcher.sendEvent(e.HeapSnapshotProgressEvent.Update,t)}}class y{constructor(e){this._errors=[e]}addError(e){this._errors.length>100||this._errors.push(e)}toString(){return this._errors.join("\n ")}}const S={Unknown:0,Attached:1,Detached:2};Object.freeze(S);class w{constructor(e,t){this.nodes=e.nodes,this.containmentEdges=e.edges,this._metaNode=e.snapshot.meta,this._rawSamples=e.samples,this._samples=null,this.strings=e.strings,this._locations=e.locations,this._progress=t,this._noDistance=-5,this._rootNodeIndex=0,e.snapshot.root_index&&(this._rootNodeIndex=e.snapshot.root_index),this._snapshotDiffs={},this._aggregatesForDiff,this._aggregates={},this._aggregatesSortedFlags={},this._profile=e,this._nodeTypeOffset,this._nodeNameOffset,this._nodeIdOffset,this._nodeSelfSizeOffset,this._nodeEdgeCountOffset,this._nodeTraceNodeIdOffset,this._nodeFieldCount,this._nodeTypes,this._nodeArrayType,this._nodeHiddenType,this._nodeObjectType,this._nodeNativeType,this._nodeConsStringType,this._nodeSlicedStringType,this._nodeCodeType,this._nodeSyntheticType,this._edgeFieldsCount,this._edgeTypeOffset,this._edgeNameOffset,this._edgeToNodeOffset,this._edgeTypes,this._edgeElementType,this._edgeHiddenType,this._edgeInternalType,this._edgeShortcutType,this._edgeWeakType,this._edgeInvisibleType,this._locationIndexOffset,this._locationScriptIdOffset,this._locationLineOffset,this._locationColumnOffset,this._locationFieldCount,this.nodeCount,this._edgeCount,this._retainedSizes,this._firstEdgeIndexes,this._retainingNodes,this._retainingEdges,this._firstRetainerIndex,this._nodeDistances,this._firstDominatedNodeIndex,this._dominatedNodes,this._dominatorsTree,this._allocationProfile,this._nodeDetachednessOffset,this._locationMap,this._lazyStringCache}initialize(){const e=this._metaNode;this._nodeTypeOffset=e.node_fields.indexOf("type"),this._nodeNameOffset=e.node_fields.indexOf("name"),this._nodeIdOffset=e.node_fields.indexOf("id"),this._nodeSelfSizeOffset=e.node_fields.indexOf("self_size"),this._nodeEdgeCountOffset=e.node_fields.indexOf("edge_count"),this._nodeTraceNodeIdOffset=e.node_fields.indexOf("trace_node_id"),this._nodeDetachednessOffset=e.node_fields.indexOf("detachedness"),this._nodeFieldCount=e.node_fields.length,this._nodeTypes=e.node_types[this._nodeTypeOffset],this._nodeArrayType=this._nodeTypes.indexOf("array"),this._nodeHiddenType=this._nodeTypes.indexOf("hidden"),this._nodeObjectType=this._nodeTypes.indexOf("object"),this._nodeNativeType=this._nodeTypes.indexOf("native"),this._nodeConsStringType=this._nodeTypes.indexOf("concatenated string"),this._nodeSlicedStringType=this._nodeTypes.indexOf("sliced string"),this._nodeCodeType=this._nodeTypes.indexOf("code"),this._nodeSyntheticType=this._nodeTypes.indexOf("synthetic"),this._edgeFieldsCount=e.edge_fields.length,this._edgeTypeOffset=e.edge_fields.indexOf("type"),this._edgeNameOffset=e.edge_fields.indexOf("name_or_index"),this._edgeToNodeOffset=e.edge_fields.indexOf("to_node"),this._edgeTypes=e.edge_types[this._edgeTypeOffset],this._edgeTypes.push("invisible"),this._edgeElementType=this._edgeTypes.indexOf("element"),this._edgeHiddenType=this._edgeTypes.indexOf("hidden"),this._edgeInternalType=this._edgeTypes.indexOf("internal"),this._edgeShortcutType=this._edgeTypes.indexOf("shortcut"),this._edgeWeakType=this._edgeTypes.indexOf("weak"),this._edgeInvisibleType=this._edgeTypes.indexOf("invisible");const t=e.location_fields||[];this._locationIndexOffset=t.indexOf("object_index"),this._locationScriptIdOffset=t.indexOf("script_id"),this._locationLineOffset=t.indexOf("line"),this._locationColumnOffset=t.indexOf("column"),this._locationFieldCount=t.length,this.nodeCount=this.nodes.length/this._nodeFieldCount,this._edgeCount=this.containmentEdges.length/this._edgeFieldsCount,this._retainedSizes=new Float64Array(this.nodeCount),this._firstEdgeIndexes=new Uint32Array(this.nodeCount+1),this._retainingNodes=new Uint32Array(this._edgeCount),this._retainingEdges=new Uint32Array(this._edgeCount),this._firstRetainerIndex=new Uint32Array(this.nodeCount+1),this._nodeDistances=new Int32Array(this.nodeCount),this._firstDominatedNodeIndex=new Uint32Array(this.nodeCount+1),this._dominatedNodes=new Uint32Array(this.nodeCount-1),this._progress.updateStatus("Building edge indexes…"),this._buildEdgeIndexes(),this._progress.updateStatus("Building retainers…"),this._buildRetainers(),this._progress.updateStatus("Propagating DOM state…"),this._propagateDOMState(),this._progress.updateStatus("Calculating node flags…"),this.calculateFlags(),this._progress.updateStatus("Calculating distances…"),this.calculateDistances(),this._progress.updateStatus("Building postorder index…");const s=this._buildPostOrderIndex();if(this._progress.updateStatus("Building dominator tree…"),this._dominatorsTree=this._buildDominatorTree(s.postOrderIndex2NodeOrdinal,s.nodeOrdinal2PostOrderIndex),this._progress.updateStatus("Calculating retained sizes…"),this._calculateRetainedSizes(s.postOrderIndex2NodeOrdinal),this._progress.updateStatus("Building dominated nodes…"),this._buildDominatedNodes(),this._progress.updateStatus("Calculating statistics…"),this.calculateStatistics(),this._progress.updateStatus("Calculating samples…"),this._buildSamples(),this._progress.updateStatus("Building locations…"),this._buildLocationMap(),this._progress.updateStatus("Finished processing."),this._profile.snapshot.trace_function_count){this._progress.updateStatus("Building allocation statistics…");const e=this.nodes.length,t=this._nodeFieldCount,s=this.rootNode(),n={};for(let i=0;i<e;i+=t){s.nodeIndex=i;const e=s.traceNodeId();let t=n[e];t||(n[e]=t={count:0,size:0,ids:[]}),t.count++,t.size+=s.selfSize(),t.ids.push(s.id())}this._allocationProfile=new i(this._profile,n),this._progress.updateStatus("done")}}_buildEdgeIndexes(){const e=this.nodes,t=this.nodeCount,s=this._firstEdgeIndexes,n=this._nodeFieldCount,i=this._edgeFieldsCount,o=this._nodeEdgeCountOffset;s[t]=this.containmentEdges.length;for(let r=0,d=0;r<t;++r)s[r]=d,d+=e[r*n+o]*i}_buildRetainers(){const e=this._retainingNodes,t=this._retainingEdges,s=this._firstRetainerIndex,n=this.containmentEdges,i=this._edgeFieldsCount,o=this._nodeFieldCount,r=this._edgeToNodeOffset,d=this._firstEdgeIndexes,a=this.nodeCount;for(let e=r,t=n.length;e<t;e+=i){const t=n[e];if(t%o)throw new Error("Invalid toNodeIndex "+t);++s[t/o]}for(let t=0,n=0;t<a;t++){const i=s[t];s[t]=n,e[n]=i,n+=i}s[a]=e.length;let h=d[0];for(let l=0;l<a;++l){const a=h;h=d[l+1];const _=l*o;for(let d=a;d<h;d+=i){const i=n[d+r];if(i%o)throw new Error("Invalid toNodeIndex "+i);const a=s[i/o],h=a+--e[a];e[h]=_,t[h]=d}}}createNode(e){throw new Error("Not implemented")}createEdge(e){throw new Error("Not implemented")}createRetainingEdge(e){throw new Error("Not implemented")}_allNodes(){return new m(this.rootNode())}rootNode(){return this.createNode(this._rootNodeIndex)}get rootNodeIndex(){return this._rootNodeIndex}get totalSize(){return this.rootNode().retainedSize()}_getDominatedIndex(e){if(e%this._nodeFieldCount)throw new Error("Invalid nodeIndex: "+e);return this._firstDominatedNodeIndex[e/this._nodeFieldCount]}_createFilter(e){const t=e.minNodeId,s=e.maxNodeId,n=e.allocationNodeId;let i;if("number"==typeof n){if(i=this._createAllocationStackFilter(n),!i)throw new Error("Unable to create filter");i.key="AllocationNodeId: "+n}else"number"==typeof t&&"number"==typeof s&&(i=this._createNodeIdFilter(t,s),i.key="NodeIdRange: "+t+".."+s);return i}search(e,t){const s=e.query;const n=e.isRegex?new RegExp(s):createPlainTextSearchRegex(s,"i");const i=e.isRegex||!e.caseSensitive?function(e,t,s){return n.test(t)&&e.add(s),e}:function(e,t,n){return-1!==t.indexOf(s)&&e.add(n),e},o=this.strings.reduce(i,new Set);if(!o.size)return[];const r=this._createFilter(t),d=[],a=this.nodes.length,h=this.nodes,l=this._nodeNameOffset,_=this._nodeIdOffset,c=this._nodeFieldCount,u=this.rootNode();for(let e=0;e<a;e+=c)u.nodeIndex=e,r&&!r(u)||o.has(h[e+l])&&d.push(h[e+_]);return d}aggregatesWithFilter(e){const t=this._createFilter(e),s=t?t.key:"allObjects";return this.aggregates(!1,s,t)}_createNodeIdFilter(e,t){return function(s){const n=s.id();return n>e&&n<=t}}_createAllocationStackFilter(e){if(!this._allocationProfile)throw new Error("No Allocation Profile provided");const t=this._allocationProfile.traceIds(e);if(!t.length)return;const s={};for(let e=0;e<t.length;e++)s[t[e]]=!0;return function(e){return Boolean(s[e.traceNodeId()])}}aggregates(e,t,s){const n=this._buildAggregates(s);let i;return t&&this._aggregates[t]?i=this._aggregates[t]:(this._calculateClassesRetainedSize(n.aggregatesByClassIndex,s),i=n.aggregatesByClassName,t&&(this._aggregates[t]=i)),!e||t&&this._aggregatesSortedFlags[t]||(this._sortAggregateIndexes(n.aggregatesByClassName),t&&(this._aggregatesSortedFlags[t]=e)),i}allocationTracesTops(){return this._allocationProfile.serializeTraceTops()}allocationNodeCallers(e){return this._allocationProfile.serializeCallers(e)}allocationStack(e){const t=this.createNode(e).traceNodeId();return t?this._allocationProfile.serializeAllocationStack(t):null}aggregatesForDiff(){if(this._aggregatesForDiff)return this._aggregatesForDiff;const e=this.aggregates(!0,"allObjects");this._aggregatesForDiff={};const t=this.createNode();for(const s in e){const n=e[s].idxs,i=new Array(n.length),o=new Array(n.length);for(let e=0;e<n.length;e++)t.nodeIndex=n[e],i[e]=t.id(),o[e]=t.selfSize();this._aggregatesForDiff[s]={indexes:n,ids:i,selfSizes:o}}return this._aggregatesForDiff}isUserRoot(e){return!0}calculateDistances(t){const s=this.nodeCount,n=this._nodeDistances,i=this._noDistance;for(let e=0;e<s;++e)n[e]=i;const o=new Uint32Array(this.nodeCount);let r=0;for(let e=this.rootNode().edges();e.hasNext();e.next()){const t=e.edge.node();this.isUserRoot(t)&&(n[t.ordinal()]=1,o[r++]=t.nodeIndex)}this._bfs(o,r,n,t),n[this.rootNode().ordinal()]=r>0?e.baseSystemDistance:0,o[0]=this.rootNode().nodeIndex,r=1,this._bfs(o,r,n,t)}_bfs(e,t,s,n){const i=this._edgeFieldsCount,o=this._nodeFieldCount,r=this.containmentEdges,d=this._firstEdgeIndexes,a=this._edgeToNodeOffset,h=this._edgeTypeOffset,l=this.nodeCount,_=this._edgeWeakType,c=this._noDistance;let u=0;const f=this.createEdge(0),p=this.createNode(0);for(;u<t;){const l=e[u++],g=l/o,m=s[g]+1,x=d[g],I=d[g+1];p.nodeIndex=l;for(let d=x;d<I;d+=i){if(r[d+h]===_)continue;const i=r[d+a],l=i/o;s[l]===c&&(f.edgeIndex=d,n&&!n(p,f)||(s[l]=m,e[t++]=i))}}if(t>l)throw new Error("BFS failed. Nodes to visit ("+t+") is more than nodes count ("+l+")")}_buildAggregates(e){const t={},s={},n=[],i=this.nodes,o=i.length,r=this._nodeNativeType,d=this._nodeFieldCount,a=this._nodeSelfSizeOffset,h=this._nodeTypeOffset,l=this.rootNode(),_=this._nodeDistances;for(let c=0;c<o;c+=d){if(l.nodeIndex=c,e&&!e(l))continue;const o=i[c+a];if(!o&&i[c+h]!==r)continue;const u=l.classIndex(),f=_[c/d];if(u in t){const e=t[u];if(!e)continue;e.distance=Math.min(e.distance,f),++e.count,e.self+=o,e.idxs.push(c)}else{const e=l.type(),i={count:1,distance:f,self:o,maxRet:0,type:e,name:"object"===e||"native"===e?l.name():null,idxs:[c]};t[u]=i,n.push(u),s[l.className()]=i}}for(let e=0,s=n.length;e<s;++e){const s=t[n[e]];s&&(s.idxs=s.idxs.slice())}return{aggregatesByClassName:s,aggregatesByClassIndex:t}}_calculateClassesRetainedSize(e,t){const s=this._rootNodeIndex,n=this.createNode(s),i=[s],o=[-1],r=[],d=new Map,a=this._nodeFieldCount,h=this._nodeTypeOffset,l=this._nodeNativeType,_=this._dominatedNodes,c=this.nodes,u=this._firstDominatedNodeIndex;for(;i.length;){const s=i.pop();n.nodeIndex=s;let f=n.classIndex();const p=Boolean(d.get(f)),g=s/a,m=u[g],x=u[g+1];p||t&&!t(n)||!n.selfSize()&&c[s+h]!==l||(e[f].maxRet+=n.retainedSize(),m!==x&&(d.set(f,!0),o.push(i.length),r.push(f)));for(let e=m;e<x;e++)i.push(_[e]);const I=i.length;for(;o[o.length-1]===I;)o.pop(),f=r.pop(),d.set(f,!1)}}_sortAggregateIndexes(e){const t=this.createNode(),s=this.createNode();for(const n in e)e[n].idxs.sort(((e,n)=>(t.nodeIndex=e,s.nodeIndex=n,t.id()<s.id()?-1:1)))}_isEssentialEdge(e,t){return t!==this._edgeWeakType&&(t!==this._edgeShortcutType||e===this._rootNodeIndex)}_buildPostOrderIndex(){const e=this._nodeFieldCount,t=this.nodeCount,s=this._rootNodeIndex/e,n=this._edgeFieldsCount,i=this._edgeTypeOffset,o=this._edgeToNodeOffset,r=this._firstEdgeIndexes,d=this.containmentEdges,a=this.userObjectsMapAndFlag(),h=a?a.map:null,l=a?a.flag:0,_=new Uint32Array(t),c=new Uint32Array(t),u=new Uint32Array(t),f=new Uint32Array(t),p=new Uint8Array(t);let g=0,m=0;_[0]=s,c[0]=r[s],p[s]=1;let x=0;for(;;){for(++x;m>=0;){const t=_[m],a=c[m];if(a<r[t+1]){c[m]+=n;const u=d[a+i];if(!this._isEssentialEdge(t*e,u))continue;const f=d[a+o]/e;if(p[f])continue;const g=!h||h[t]&l,x=!h||h[f]&l;if(t!==s&&x&&!g)continue;++m,_[m]=f,c[m]=r[f],p[f]=1}else f[t]=g,u[g++]=t,--m}if(g===t||x>1)break;const a=new y(`Heap snapshot: ${t-g} nodes are unreachable from the root. Following nodes have only weak retainers:`),I=this.rootNode();--g,m=0,_[0]=s,c[0]=r[s+1];for(let s=0;s<t;++s){if(p[s]||!this._hasOnlyWeakRetainers(s))continue;_[++m]=s,c[m]=r[s],p[s]=1,I.nodeIndex=s*e;const t=[];for(let e=I.retainers();e.hasNext();e.next())t.push(`${e.item().node().name()}@${e.item().node().id()}.${e.item().name()}`);a.addError(`${I.name()} @${I.id()} weak retainers: ${t.join(", ")}`)}console.warn(a.toString())}if(g!==t){const n=new y("Still found "+(t-g)+" unreachable nodes in heap snapshot:"),i=this.rootNode();--g;for(let s=0;s<t;++s)p[s]||(i.nodeIndex=s*e,n.addError(i.name()+" @"+i.id()),f[s]=g,u[g++]=s);f[s]=g,u[g++]=s,console.warn(n.toString())}return{postOrderIndex2NodeOrdinal:u,nodeOrdinal2PostOrderIndex:f}}_hasOnlyWeakRetainers(e){const t=this._edgeTypeOffset,s=this._edgeWeakType,n=this._edgeShortcutType,i=this.containmentEdges,o=this._retainingEdges,r=this._firstRetainerIndex[e],d=this._firstRetainerIndex[e+1];for(let e=r;e<d;++e){const r=i[o[e]+t];if(r!==s&&r!==n)return!1}return!0}_buildDominatorTree(e,t){const s=this._nodeFieldCount,n=this._firstRetainerIndex,i=this._retainingNodes,o=this._retainingEdges,r=this._edgeFieldsCount,d=this._edgeTypeOffset,a=this._edgeToNodeOffset,h=this._firstEdgeIndexes,l=this.containmentEdges,_=this._rootNodeIndex,c=this.userObjectsMapAndFlag(),u=c?c.map:null,f=c?c.flag:0,p=e.length,g=p-1,m=p,x=new Uint32Array(p);for(let e=0;e<g;++e)x[e]=m;x[g]=g;const I=new Uint8Array(p);let N;{N=this._rootNodeIndex/s;const e=h[N+1];for(let n=h[N];n<e;n+=r){const e=l[n+d];if(!this._isEssentialEdge(this._rootNodeIndex,e))continue;I[t[l[n+a]/s]]=1}}let y=!0;for(;y;){y=!1;for(let c=g-1;c>=0;--c){if(0===I[c])continue;if(I[c]=0,x[c]===g)continue;N=e[c];const p=!u||u[N]&f;let S=m;const w=n[N],T=n[N+1];let O=!0;for(let e=w;e<T;++e){const n=l[o[e]+d],r=i[e];if(!this._isEssentialEdge(r,n))continue;O=!1;const a=r/s,h=!u||u[a]&f;if(r!==_&&p&&!h)continue;let c=t[a];if(x[c]!==m){if(S===m)S=c;else for(;c!==S;){for(;c<S;)c=x[c];for(;S<c;)S=x[S]}if(S===g)break}}if(O&&(S=g),S!==m&&x[c]!==S){x[c]=S,y=!0,N=e[c];const n=h[N]+a,i=h[N+1];for(let e=n;e<i;e+=r){I[t[l[e]/s]]=1}}}}const S=new Uint32Array(p);for(let t=0,s=x.length;t<s;++t)N=e[t],S[N]=e[x[t]];return S}_calculateRetainedSizes(e){const t=this.nodeCount,s=this.nodes,n=this._nodeSelfSizeOffset,i=this._nodeFieldCount,o=this._dominatorsTree,r=this._retainedSizes;for(let e=0;e<t;++e)r[e]=s[e*i+n];for(let s=0;s<t-1;++s){const t=e[s];r[o[t]]+=r[t]}}_buildDominatedNodes(){const e=this._firstDominatedNodeIndex,t=this._dominatedNodes,s=this._nodeFieldCount,n=this._dominatorsTree;let i=0,o=this.nodeCount;const r=this._rootNodeIndex/s;if(r===i)i=1;else{if(r!==o-1)throw new Error("Root node is expected to be either first or last");o-=1}for(let t=i;t<o;++t)++e[n[t]];let d=0;for(let s=0,n=this.nodeCount;s<n;++s){const n=t[d]=e[s];e[s]=d,d+=n}e[this.nodeCount]=t.length;for(let r=i;r<o;++r){let i=e[n[r]];i+=--t[i],t[i]=r*s}}_iterateFilteredChildren(e,t,s){const n=this._firstEdgeIndexes[e],i=this._firstEdgeIndexes[e+1];for(let e=n;e<i;e+=this._edgeFieldsCount){const n=this.containmentEdges[e+this._edgeToNodeOffset]/this._nodeFieldCount;t(this.containmentEdges[e+this._edgeTypeOffset])&&s(n)}}_addString(e){return this.strings.push(e),this.strings.length-1}_propagateDOMState(){if(-1===this._nodeDetachednessOffset)return;console.time("propagateDOMState");const e=new Uint8Array(this.nodeCount),t=[],s=[],n=new Map,i=function(i,o,r){if(e[o])return;const d=o*i._nodeFieldCount;i.nodes[d+i._nodeTypeOffset]===i._nodeNativeType?(i.nodes[d+i._nodeDetachednessOffset]=r,r===S.Attached?t.push(o):r===S.Detached&&(!function(e,t){const s=e.nodes[t+e._nodeNameOffset];let i=n.get(s);void 0===i&&(i=e._addString("Detached "+e.strings[s]),n.set(s,i)),e.nodes[t+e._nodeNameOffset]=i}(i,d),s.push(o)),e[o]=1):e[o]=1},o=function(e,t,s){e._iterateFilteredChildren(t,(t=>![e._edgeHiddenType,e._edgeInvisibleType,e._edgeWeakType].includes(t)),(t=>i(e,t,s)))};for(let e=0;e<this.nodeCount;++e){const t=this.nodes[e*this._nodeFieldCount+this._nodeDetachednessOffset];t!==S.Unknown&&i(this,e,t)}for(;0!==t.length;){o(this,t.pop(),S.Attached)}for(;0!==s.length;){const e=s.pop();this.nodes[e*this._nodeFieldCount+this._nodeDetachednessOffset]!==S.Attached&&o(this,e,S.Detached)}console.timeEnd("propagateDOMState")}_buildSamples(){const t=this._rawSamples;if(!t||!t.length)return;const n=t.length/2,i=new Array(n),o=new Array(n),r=new Array(n),d=this._metaNode.sample_fields.indexOf("timestamp_us"),a=this._metaNode.sample_fields.indexOf("last_assigned_id");for(let e=0;e<n;e++)i[e]=0,o[e]=t[2*e+d]/1e3,r[e]=t[2*e+a];const h=this.nodes.length,l=this._nodeFieldCount,_=this.rootNode();for(let e=0;e<h;e+=l){_.nodeIndex=e;const t=_.id();if(t%2==0)continue;const o=s.lowerBound(r,t,s.DEFAULT_COMPARATOR);o!==n&&(i[o]+=_.selfSize())}this._samples=new e.Samples(o,r,i)}_buildLocationMap(){const t=new Map,s=this._locations;for(let n=0;n<s.length;n+=this._locationFieldCount){const i=s[n+this._locationIndexOffset],o=s[n+this._locationScriptIdOffset],r=s[n+this._locationLineOffset],d=s[n+this._locationColumnOffset];t.set(i,new e.Location(o,r,d))}this._locationMap=t}getLocation(e){return this._locationMap.get(e)||null}getSamples(){return this._samples}calculateFlags(){throw new Error("Not implemented")}calculateStatistics(){throw new Error("Not implemented")}userObjectsMapAndFlag(){throw new Error("Not implemented")}calculateSnapshotDiff(t,s){let n=this._snapshotDiffs[t];if(n)return n;n={};const i=this.aggregates(!0,"allObjects");for(const e in s){const t=s[e],o=this._calculateDiffForClass(t,i[e]);o&&(n[e]=o)}const o=new e.AggregateForDiff;for(const e in i){if(e in s)continue;const t=this._calculateDiffForClass(o,i[e]);t&&(n[e]=t)}return this._snapshotDiffs[t]=n,n}_calculateDiffForClass(t,s){const n=t.ids,i=t.indexes,o=t.selfSizes,r=s?s.idxs:[];let d=0,a=0;const h=n.length,l=r.length,_=new e.Diff,c=this.createNode(r[a]);for(;d<h&&a<l;){const e=n[d];e<c.id()?(_.deletedIndexes.push(i[d]),_.removedCount++,_.removedSize+=o[d],++d):e>c.id()?(_.addedIndexes.push(r[a]),_.addedCount++,_.addedSize+=c.selfSize(),c.nodeIndex=r[++a]):(++d,c.nodeIndex=r[++a])}for(;d<h;)_.deletedIndexes.push(i[d]),_.removedCount++,_.removedSize+=o[d],++d;for(;a<l;)_.addedIndexes.push(r[a]),_.addedCount++,_.addedSize+=c.selfSize(),c.nodeIndex=r[++a];return _.countDelta=_.addedCount-_.removedCount,_.sizeDelta=_.addedSize-_.removedSize,_.addedCount||_.removedCount?_:null}_nodeForSnapshotObjectId(e){for(let t=this._allNodes();t.hasNext();t.next())if(t.node.id()===e)return t.node;return null}nodeClassName(e){const t=this._nodeForSnapshotObjectId(e);return t?t.className():null}idsOfObjectsWithName(e){const t=[];for(let s=this._allNodes();s.hasNext();s.next())s.item().name()===e&&t.push(s.item().id());return t}createEdgesProvider(e){const t=this.createNode(e),s=this.containmentEdgesFilter(),n=new _(this);return new O(this,s,t.edges(),n)}createEdgesProviderForTest(e,t){const s=this.createNode(e),n=new _(this);return new O(this,t,s.edges(),n)}retainingEdgesFilter(){return null}containmentEdgesFilter(){return null}createRetainingEdgesProvider(e){const t=this.createNode(e),s=this.retainingEdgesFilter(),n=new c(this);return new O(this,s,t.retainers(),n)}createAddedNodesProvider(e,t){const s=this._snapshotDiffs[e][t];return new C(this,s.addedIndexes)}createDeletedNodesProvider(e){return new C(this,e)}createNodesProviderForClass(e,t){return new C(this,this.aggregatesWithFilter(t)[e].idxs)}_maxJsNodeId(){const e=this._nodeFieldCount,t=this.nodes,s=t.length;let n=0;for(let i=this._nodeIdOffset;i<s;i+=e){const e=t[i];e%2!=0&&(n<e&&(n=e))}return n}updateStaticData(){return new e.StaticData(this.nodeCount,this._rootNodeIndex,this.totalSize,this._maxJsNodeId())}}class T{constructor(e,t){this._iterator=e,this._indexProvider=t,this._isEmpty=!e.hasNext(),this._iterationOrder=null,this._currentComparator=null,this._sortedPrefixLength=0,this._sortedSuffixLength=0}_createIterationOrder(){if(!this._iterationOrder){this._iterationOrder=[];for(let e=this._iterator;e.hasNext();e.next())this._iterationOrder.push(e.item().itemIndex())}}isEmpty(){return this._isEmpty}serializeItemsRange(t,s){if(this._createIterationOrder(),t>s)throw new Error("Start position > end position: "+t+" > "+s);if(!this._iterationOrder)throw new Error("Iteration order undefined");if(s>this._iterationOrder.length&&(s=this._iterationOrder.length),this._sortedPrefixLength<s&&t<this._iterationOrder.length-this._sortedSuffixLength&&this._currentComparator){const e=this._currentComparator;this.sort(e,this._sortedPrefixLength,this._iterationOrder.length-1-this._sortedSuffixLength,t,s-1),t<=this._sortedPrefixLength&&(this._sortedPrefixLength=s),s>=this._iterationOrder.length-this._sortedSuffixLength&&(this._sortedSuffixLength=this._iterationOrder.length-t)}let n=t;const i=s-t,o=new Array(i);for(let e=0;e<i;++e){const t=this._iterationOrder[n++],s=this._indexProvider.itemForIndex(t);o[e]=s.serialize()}return new e.ItemsRange(t,s,this._iterationOrder.length,o)}sortAndRewind(e){this._currentComparator=e,this._sortedPrefixLength=0,this._sortedSuffixLength=0}sort(e,t,s,n,i){throw new Error("Not implemented")}}class O extends T{constructor(e,t,s,n){super(t?new I(s,t):s,n),this.snapshot=e}sort(e,t,n,i,o){const r=e.fieldName1,d=e.fieldName2,a=e.ascending1,h=e.ascending2,l=this._iterator.item().clone(),_=l.clone(),c=this.snapshot.createNode(),u=this.snapshot.createNode();function f(e,t,s){if(l.edgeIndex=t,_.edgeIndex=s,"__proto__"===_.name())return-1;if("__proto__"===l.name())return 1;const n=l.hasStringName()===_.hasStringName()?l.name()<_.name()?-1:l.name()>_.name()?1:0:l.hasStringName()?-1:1;return e?n:-n}function p(e,t,s,n){l.edgeIndex=s,c.nodeIndex=l.nodeIndex();const i=c[e]();_.edgeIndex=n,u.nodeIndex=_.nodeIndex();const o=u[e](),r=i<o?-1:i>o?1:0;return t?r:-r}if(!this._iterationOrder)throw new Error("Iteration order not defined");"!edgeName"===r?s.sortRange(this._iterationOrder,(function(e,t){let s=f(a,e,t);return 0===s&&(s=p(d,h,e,t)),0===s?e-t:s}),t,n,i,o):"!edgeName"===d?s.sortRange(this._iterationOrder,(function(e,t){let s=p(r,a,e,t);return 0===s&&(s=f(h,e,t)),0===s?e-t:s}),t,n,i,o):s.sortRange(this._iterationOrder,(function(e,t){let s=p(r,a,e,t);return 0===s&&(s=p(d,h,e,t)),0===s?e-t:s}),t,n,i,o)}}class C extends T{constructor(e,t){const s=new l(e);super(new x(s,t),s),this.snapshot=e}nodePosition(e){this._createIterationOrder();const t=this.snapshot.createNode();let s=0;if(!this._iterationOrder)throw new Error("Iteration order not defined");for(;s<this._iterationOrder.length&&(t.nodeIndex=this._iterationOrder[s],t.id()!==e);s++);if(s===this._iterationOrder.length)return-1;const n=this._iterationOrder[s];let i=0;const o=this._currentComparator,r=this._buildCompareFunction(o);for(let e=0;e<this._iterationOrder.length;e++)r(this._iterationOrder[e],n)<0&&++i;return i}_buildCompareFunction(e){const t=this.snapshot.createNode(),s=this.snapshot.createNode(),n=t[e.fieldName1],i=t[e.fieldName2],o=e.ascending1?1:-1,r=e.ascending2?1:-1;function d(e,n){const i=e.call(t),o=e.call(s);return i<o?-n:i>o?n:0}return function(e,a){t.nodeIndex=e,s.nodeIndex=a;let h=d(n,o);return 0===h&&(h=d(i,r)),h||e-a}}sort(e,t,n,i,o){if(!this._iterationOrder)throw new Error("Iteration order not defined");s.sortRange(this._iterationOrder,this._buildCompareFunction(e),t,n,i,o)}}class E extends w{constructor(e,t){super(e,t),this._nodeFlags={canBeQueried:1,detachedDOMTreeNode:2,pageObject:4},this._lazyStringCache={},this.initialize(),this._flags}createNode(e){return new F(this,void 0===e?-1:e)}createEdge(e){return new b(this,e)}createRetainingEdge(e){return new z(this,e)}containmentEdgesFilter(){return e=>!e.isInvisible()}retainingEdgesFilter(){const e=this.containmentEdgesFilter();return function(t){return e(t)&&!t.node().isRoot()&&!t.isWeak()}}calculateFlags(){this._flags=new Uint32Array(this.nodeCount),this._markDetachedDOMTreeNodes(),this._markQueriableHeapObjects(),this._markPageOwnedNodes()}calculateDistances(){super.calculateDistances((function(e,t){if(e.isHidden())return"sloppy_function_map"!==t.name()||"system / NativeContext"!==e.rawName();if(e.isArray()){if("(map descriptors)"!==e.rawName())return!0;const s=parseInt(t.name(),10);return s<2||s%3!=1}return!0}))}isUserRoot(e){return e.isUserRoot()||e.isDocumentDOMTreesRoot()}userObjectsMapAndFlag(){return{map:this._flags,flag:this._nodeFlags.pageObject}}_flagsOfNode(e){return this._flags[e.nodeIndex/this._nodeFieldCount]}_markDetachedDOMTreeNodes(){const e=this.nodes,t=e.length,s=this._nodeFieldCount,n=this._nodeNativeType,i=this._nodeTypeOffset,o=this._nodeFlags.detachedDOMTreeNode,r=this.rootNode();for(let d=0,a=0;d<t;d+=s,a++){e[d+i]===n&&(r.nodeIndex=d,r.name().startsWith("Detached ")&&(this._flags[a]|=o))}}_markQueriableHeapObjects(){const e=this._nodeFlags.canBeQueried,t=this._edgeHiddenType,s=this._edgeInternalType,n=this._edgeInvisibleType,i=this._edgeWeakType,o=this._edgeToNodeOffset,r=this._edgeTypeOffset,d=this._edgeFieldsCount,a=this.containmentEdges,h=this._nodeFieldCount,l=this._firstEdgeIndexes,_=this._flags,c=[];for(let e=this.rootNode().edges();e.hasNext();e.next())e.edge.node().isUserRoot()&&c.push(e.edge.node().nodeIndex/h);for(;c.length;){const u=c.pop();if(_[u]&e)continue;_[u]|=e;const f=l[u],p=l[u+1];for(let l=f;l<p;l+=d){const d=a[l+o]/h;if(_[d]&e)continue;const u=a[l+r];u!==t&&u!==n&&u!==s&&u!==i&&c.push(d)}}}_markPageOwnedNodes(){const e=this._edgeShortcutType,t=this._edgeElementType,s=this._edgeToNodeOffset,n=this._edgeTypeOffset,i=this._edgeFieldsCount,o=this._edgeWeakType,r=this._firstEdgeIndexes,d=this.containmentEdges,a=this._nodeFieldCount,h=this.nodeCount,l=this._flags,_=this._nodeFlags.pageObject,c=new Uint32Array(h);let u=0;const f=this._rootNodeIndex/a,p=this.rootNode();for(let o=r[f],h=r[f+1];o<h;o+=i){const i=d[o+n],r=d[o+s];if(i===t){if(p.nodeIndex=r,!p.isDocumentDOMTreesRoot())continue}else if(i!==e)continue;const h=r/a;c[u++]=h,l[h]|=_}for(;u;){const e=c[--u],t=r[e],h=r[e+1];for(let e=t;e<h;e+=i){const t=d[e+s]/a;if(l[t]&_)continue;d[e+n]!==o&&(c[u++]=t,l[t]|=_)}}}calculateStatistics(){const t=this._nodeFieldCount,s=this.nodes,n=s.length,i=this._nodeTypeOffset,o=this._nodeSelfSizeOffset,r=this._nodeNativeType,d=this._nodeCodeType,a=this._nodeConsStringType,h=this._nodeSlicedStringType,l=this._nodeDistances;let _=0,c=0,u=0,f=0,p=0;const g=this.rootNode();for(let m=0;m<n;m+=t){const n=s[m+o];if(l[m/t]>=e.baseSystemDistance){p+=n;continue}const x=s[m+i];g.nodeIndex=m,x===r?_+=n:x===d?c+=n:x===a||x===h||"string"===g.type()?u+=n:"Array"===g.name()&&(f+=this._calculateArraySize(g))}this._statistics=new e.Statistics,this._statistics.total=this.totalSize,this._statistics.v8heap=this.totalSize-_,this._statistics.native=_,this._statistics.code=c,this._statistics.jsArrays=f,this._statistics.strings=u,this._statistics.system=p}_calculateArraySize(e){let t=e.selfSize();const s=e.edgeIndexesStart(),n=e.edgeIndexesEnd(),i=this.containmentEdges,o=this.strings,r=this._edgeToNodeOffset,d=this._edgeTypeOffset,a=this._edgeNameOffset,h=this._edgeFieldsCount,l=this._edgeInternalType;for(let _=s;_<n;_+=h){if(i[_+d]!==l)continue;if("elements"!==o[i[_+a]])continue;const s=i[_+r];e.nodeIndex=s,1===e.retainersCount()&&(t+=e.selfSize());break}return t}getStatistics(){return this._statistics}}class F extends g{constructor(e,t){super(e,t)}canBeQueried(){const e=this._snapshot,t=e._flagsOfNode(this);return Boolean(t&e._nodeFlags.canBeQueried)}rawName(){return super.name()}name(){const e=this._snapshot;if(this.rawType()===e._nodeConsStringType){let t=e._lazyStringCache[this.nodeIndex];return void 0===t&&(t=this._consStringName(),e._lazyStringCache[this.nodeIndex]=t),t}return this.rawName()}_consStringName(){const e=this._snapshot,t=e._nodeConsStringType,s=e._edgeInternalType,n=e._edgeFieldsCount,i=e._edgeToNodeOffset,o=e._edgeTypeOffset,r=e._edgeNameOffset,d=e.strings,a=e.containmentEdges,h=e._firstEdgeIndexes,l=e._nodeFieldCount,_=e._nodeTypeOffset,c=e._nodeNameOffset,u=e.nodes,f=[];f.push(this.nodeIndex);let p="";for(;f.length&&p.length<1024;){const e=f.pop();if(u[e+_]!==t){p+=d[u[e+c]];continue}const g=e/l,m=h[g],x=h[g+1];let I=0,N=0;for(let e=m;e<x&&(!I||!N);e+=n){if(a[e+o]===s){const t=d[a[e+r]];"first"===t?I=a[e+i]:"second"===t&&(N=a[e+i])}}f.push(N),f.push(I)}return p}className(){const e=this.type();switch(e){case"hidden":return"(system)";case"object":case"native":return this.name();case"code":return"(compiled code)";default:return"("+e+")"}}classIndex(){const e=this._snapshot,t=e.nodes,s=t[this.nodeIndex+e._nodeTypeOffset];return s===e._nodeObjectType||s===e._nodeNativeType?t[this.nodeIndex+e._nodeNameOffset]:-1-s}id(){const e=this._snapshot;return e.nodes[this.nodeIndex+e._nodeIdOffset]}isHidden(){return this.rawType()===this._snapshot._nodeHiddenType}isArray(){return this.rawType()===this._snapshot._nodeArrayType}isSynthetic(){return this.rawType()===this._snapshot._nodeSyntheticType}isUserRoot(){return!this.isSynthetic()}isDocumentDOMTreesRoot(){return this.isSynthetic()&&"(Document DOM trees)"===this.name()}serialize(){const e=super.serialize(),t=this._snapshot,s=t._flagsOfNode(this);return s&t._nodeFlags.canBeQueried&&(e.canBeQueried=!0),s&t._nodeFlags.detachedDOMTreeNode&&(e.detachedDOMTreeNode=!0),e}}class b extends h{constructor(e,t){super(e,t)}clone(){const e=this._snapshot;return new b(e,this.edgeIndex)}hasStringName(){return this.isShortcut()?isNaN(parseInt(this._name(),10)):this._hasStringName()}isElement(){return this.rawType()===this._snapshot._edgeElementType}isHidden(){return this.rawType()===this._snapshot._edgeHiddenType}isWeak(){return this.rawType()===this._snapshot._edgeWeakType}isInternal(){return this.rawType()===this._snapshot._edgeInternalType}isInvisible(){return this.rawType()===this._snapshot._edgeInvisibleType}isShortcut(){return this.rawType()===this._snapshot._edgeShortcutType}name(){const e=this._name();if(!this.isShortcut())return String(e);const t=parseInt(e,10);return String(isNaN(t)?e:t)}toString(){const e=this.name();switch(this.type()){case"context":return"->"+e;case"element":return"["+e+"]";case"weak":return"[["+e+"]]";case"property":return-1===e.indexOf(" ")?"."+e:'["'+e+'"]';case"shortcut":return"string"==typeof e?-1===e.indexOf(" ")?"."+e:'["'+e+'"]':"["+e+"]";case"internal":case"hidden":case"invisible":return"{"+e+"}"}return"?"+e+"?"}_hasStringName(){const e=this.rawType(),t=this._snapshot;return e!==t._edgeElementType&&e!==t._edgeHiddenType}_name(){return this._hasStringName()?this._snapshot.strings[this._nameOrIndex()]:this._nameOrIndex()}_nameOrIndex(){return this._edges[this.edgeIndex+this._snapshot._edgeNameOffset]}rawType(){return this._edges[this.edgeIndex+this._snapshot._edgeTypeOffset]}}class z extends f{constructor(e,t){super(e,t)}clone(){const e=this._snapshot;return new z(e,this.retainerIndex())}isHidden(){return this._edge().isHidden()}isInternal(){return this._edge().isInternal()}isInvisible(){return this._edge().isInvisible()}isShortcut(){return this._edge().isShortcut()}isWeak(){return this._edge().isWeak()}}var v=Object.freeze({__proto__:null,HeapSnapshotItem:class{itemIndex(){throw new Error("Not implemented")}serialize(){throw new Error("Not implemented")}},HeapSnapshotEdge:h,HeapSnapshotItemIterator:class{hasNext(){throw new Error("Not implemented")}item(){throw new Error("Not implemented")}next(){throw new Error("Not implemented")}},HeapSnapshotItemIndexProvider:class{itemForIndex(e){throw new Error("Not implemented")}},HeapSnapshotNodeIndexProvider:l,HeapSnapshotEdgeIndexProvider:_,HeapSnapshotRetainerEdgeIndexProvider:c,HeapSnapshotEdgeIterator:u,HeapSnapshotRetainerEdge:f,HeapSnapshotRetainerEdgeIterator:p,HeapSnapshotNode:g,HeapSnapshotNodeIterator:m,HeapSnapshotIndexRangeIterator:x,HeapSnapshotFilteredIterator:I,HeapSnapshotProgress:N,HeapSnapshotProblemReport:y,Profile:undefined,HeapSnapshot:w,HeapSnapshotHeader:class{constructor(){this.title="",this.meta=new class{constructor(){this.location_fields=[],this.node_fields=[],this.node_types=[],this.edge_fields=[],this.edge_types=[],this.trace_function_info_fields=[],this.trace_node_fields=[],this.sample_fields=[],this.type_strings={}}},this.node_count=0,this.edge_count=0,this.trace_function_count=0,this.root_index=0}},HeapSnapshotItemProvider:T,HeapSnapshotEdgesProvider:O,HeapSnapshotNodesProvider:C,JSHeapSnapshot:E,JSHeapSnapshotNode:F,JSHeapSnapshotEdge:b,JSHeapSnapshotRetainerEdge:z,AggregatedInfo:undefined});var A=Object.freeze({__proto__:null,HeapSnapshotLoader:class{constructor(e){this._reset(),this._progress=new N(e),this._buffer="",this._dataCallback=null,this._done=!1,this._parseInput(),this._snapshot,this._array,this._arrayIndex}dispose(){this._reset()}_reset(){this._json="",this._snapshot=void 0}close(){this._done=!0,this._dataCallback&&this._dataCallback("")}buildSnapshot(){this._snapshot=this._snapshot||{},this._progress.updateStatus("Processing snapshot…");const e=new E(this._snapshot,this._progress);return this._reset(),e}_parseUintArray(){let e=0;const t="0".charCodeAt(0),s="9".charCodeAt(0),n="]".charCodeAt(0),i=this._json.length;for(;;){for(;e<i;){const i=this._json.charCodeAt(e);if(t<=i&&i<=s)break;if(i===n)return this._json=this._json.slice(e+1),!1;++e}if(e===i)return this._json="",!0;let o=0;const r=e;for(;e<i;){const n=this._json.charCodeAt(e);if(t>n||n>s)break;o*=10,o+=n-t,++e}if(e===i)return this._json=this._json.slice(r),!0;if(!this._array)throw new Error("Array not instantiated");this._array[this._arrayIndex++]=o}}_parseStringsArray(){this._progress.updateStatus("Parsing strings…");const e=this._json.lastIndexOf("]");if(-1===e)throw new Error("Incomplete JSON");if(this._json=this._json.slice(0,e+1),!this._snapshot)throw new Error("No snapshot in parseStringsArray");this._snapshot.strings=JSON.parse(this._json)}write(e){this._buffer+=e,this._dataCallback&&(this._dataCallback(this._buffer),this._dataCallback=null,this._buffer="")}_fetchChunk(){return this._done?Promise.resolve(this._buffer):new Promise((e=>{this._dataCallback=e}))}async _findToken(e,t){for(;;){const s=this._json.indexOf(e,t||0);if(-1!==s)return s;t=this._json.length-e.length+1,this._json+=await this._fetchChunk()}}async _parseArray(e,t,s){const n=await this._findToken(e),i=await this._findToken("[",n);for(this._json=this._json.slice(i+1),this._array=s?new Uint32Array(s):[],this._arrayIndex=0;this._parseUintArray();)this._progress.updateProgress(t,this._arrayIndex,this._array.length),this._json+=await this._fetchChunk();const o=this._array;return this._array=null,o}async _parseInput(){const e='"snapshot"',t=await this._findToken(e);if(-1===t)throw new Error("Snapshot token not found");this._progress.updateStatus("Loading snapshot info…");const s=this._json.slice(t+e.length+1);for(this._jsonTokenizer=new n.BalancedJSONTokenizer((e=>{this._json=this._jsonTokenizer.remainder(),this._jsonTokenizer=null,this._snapshot=this._snapshot||{},this._snapshot.snapshot=JSON.parse(e)})),this._jsonTokenizer.write(s);this._jsonTokenizer;)this._jsonTokenizer.write(await this._fetchChunk());this._snapshot=this._snapshot||{};const i=await this._parseArray('"nodes"',"Loading nodes… {PH1}%",this._snapshot.snapshot.meta.node_fields.length*this._snapshot.snapshot.node_count);this._snapshot.nodes=i;const o=await this._parseArray('"edges"',"Loading edges… {PH1}%",this._snapshot.snapshot.meta.edge_fields.length*this._snapshot.snapshot.edge_count);if(this._snapshot.edges=o,this._snapshot.snapshot.trace_function_count){const e=await this._parseArray('"trace_function_infos"',"Loading allocation traces… {PH1}%",this._snapshot.snapshot.meta.trace_function_info_fields.length*this._snapshot.snapshot.trace_function_count);this._snapshot.trace_function_infos=e;const t=await this._findToken(":"),s=await this._findToken('"',t),n=this._json.indexOf("["),i=this._json.lastIndexOf("]",s);this._snapshot.trace_tree=JSON.parse(this._json.substring(n,i+1)),this._json=this._json.slice(i+1)}if(this._snapshot.snapshot.meta.sample_fields){const e=await this._parseArray('"samples"',"Loading samples…");this._snapshot.samples=e}if(this._snapshot.snapshot.meta.location_fields){const e=await this._parseArray('"locations"',"Loading locations…");this._snapshot.locations=e}else this._snapshot.locations=[];this._progress.updateStatus("Loading strings…");const r=await this._findToken('"strings"'),d=await this._findToken("[",r);for(this._json=this._json.slice(d);!this._done;)this._json+=await this._fetchChunk();this._parseStringsArray()}}});var D=Object.freeze({__proto__:null,HeapSnapshotWorkerDispatcher:class{constructor(e,t){this._objects=[],this._global=e,this._postMessage=t}_findFunction(e){const t=e.split(".");let s=this._global;for(let e=0;e<t.length;++e)s=s[t[e]];return s}sendEvent(e,t){this._postMessage({eventName:e,data:t})}dispatchMessage({data:e}){const t={callId:e.callId,result:null,error:void 0,errorCallStack:void 0,errorMethodName:void 0};try{switch(e.disposition){case"create":{const t=this._findFunction(e.methodName);this._objects[e.objectId]=new t(this);break}case"dispose":delete this._objects[e.objectId];break;case"getter":{const s=this._objects[e.objectId][e.methodName];t.result=s;break}case"factory":{const s=this._objects[e.objectId],n=s[e.methodName].apply(s,e.methodArguments);n&&(this._objects[e.newObjectId]=n),t.result=Boolean(n);break}case"method":{const s=this._objects[e.objectId];t.result=s[e.methodName].apply(s,e.methodArguments);break}case"evaluateForTest":try{t.result=self.eval(e.source)}catch(e){t.result=e.toString()}}}catch(s){t.error=s.toString(),t.errorCallStack=s.stack,e.methodName&&(t.errorMethodName=e.methodName)}this._postMessage(t)}}});export{a as AllocationProfile,v as HeapSnapshot,A as HeapSnapshotLoader,D as HeapSnapshotWorkerDispatcher};
@@ -0,0 +1 @@
1
+ import{Settings as e}from"../common/common.js";import{Help as t,ReleaseNoteText as l,ReleaseNoteView as o}from"./help.js";self.Help=self.Help||{},Help=Help||{},Help.latestReleaseNote=t.latestReleaseNote,Help._innerShowReleaseNoteIfNeeded=t.innerShowReleaseNoteIfNeeded,Help._showReleaseNoteIfNeeded=t.showReleaseNoteIfNeeded,Help._releaseNoteVersionSetting=e.Settings.instance().createSetting(t.releaseVersionSeen,0),Help.HelpLateInitialization=t.HelpLateInitialization,Help.ReleaseNotesActionDelegate=t.ReleaseNotesActionDelegate,Help.ReportIssueActionDelegate=t.ReportIssueActionDelegate,Help.releaseNoteText=l.releaseNoteText,Help.ReleaseNoteView=o.ReleaseNoteView;
@@ -0,0 +1 @@
1
+ import{i18n as e}from"../i18n/i18n.js";import{Runtime as t}from"../root/root.js";import{ViewManager as i}from"../ui/ui.js";const o={whatsNew:"What's New",showWhatsNew:"Show What's New"},s=e.registerUIStrings("help/help-meta.ts",o),a=e.getLazilyComputedLocalizedString.bind(void 0,s);let r;i.registerViewExtension({location:"drawer-view",id:"release-note",title:a(o.whatsNew),commandPrompt:a(o.showWhatsNew),persistence:"closeable",order:1,loadView:async()=>(await async function(){return r||(await t.Runtime.instance().loadModulePromise("help"),r=await import("./help.js")),r}()).ReleaseNoteView.ReleaseNoteView.instance()});export{o as UIStrings};
@@ -0,0 +1 @@
1
+ import{Settings as e}from"../common/common.js";import{Platform as t,InspectorFrontendHost as o}from"../host/host.js";import{ViewManager as s,Widget as l,ARIAUtils as i,XLink as n,UIUtils as a,InspectorView as r,Tooltip as d}from"../ui/ui.js";import{i18n as p}from"../i18n/i18n.js";const h=t.isMac()?"Command":"Control",g=t.isMac()?"Command+F":"Control+F",u=t.isMac()?"Command+Shift+P":"Control+Shift+P",c=[{version:31,header:"Highlights from the Chrome 89 update",highlights:[{title:"Debugging support for Trusted Type violations",subtitle:"Breakpoint on Trusted Type violations and link to more information in the Issues tab.",link:"https://developers.google.com/web/updates/2021/01/devtools#trusted-types"},{title:"Capture node screenshot beyond viewport",subtitle:"Capture node screenshot for a full node including content below the fold.",link:"https://developers.google.com/web/updates/2021/01/devtools#node-screenshot"},{title:"New Trust Token tab for network requests",subtitle:"Display Trusted Token parameters and results of network requests.",link:"https://developers.google.com/web/updates/2021/01/devtools#trust-token"},{title:"Lighthouse 7",subtitle:"New audits for PWA, accessibility, third-party embeds, and more.",link:"https://developers.google.com/web/updates/2021/01/devtools#lighthouse"},{title:"Elements panel updates",subtitle:"Support forcing CSS :target state, color pickers for custom CSS properties, a new context menu to duplicate elements, and more.",link:"https://developers.google.com/web/updates/2021/01/devtools#elements-panel"},{title:"Cookies updates",subtitle:"Option to show URL-decoded cookies, only clear visible cookies, and more.",link:"https://developers.google.com/web/updates/2021/01/devtools#cookies"},{title:"User-Agent Client Hints for custom devices",subtitle:"Edit User-Agent Client Hints for custom devices.",link:"https://developers.google.com/web/updates/2021/01/devtools#ua-ch"}],link:"https://developers.google.com/web/updates/2021/01/devtools"},{version:30,header:"Highlights from the Chrome 88 update",highlights:[{title:"New CSS angle visualization tools",subtitle:"Better visualize and edit CSS angle in the Styles pane.",link:"https://developers.google.com/web/updates/2020/11/devtools#css-angle"},{title:"Emulate unsupported image types",subtitle:"2 new emulations to disable AVIF and WebP image formats in the Rendering tab.",link:"https://developers.google.com/web/updates/2020/11/devtools#emulate-image"},{title:"Simulate storage quota size",subtitle:"Override storage quota size in the Storage pane.",link:"https://developers.google.com/web/updates/2020/11/devtools#simulate-storage"},{title:"New Web Vitals lane",subtitle:"New Web Vitals lane in the Performance panel recordings.",link:"https://developers.google.com/web/updates/2020/11/devtools#web-vitals"},{title:"Report CORS errors in the Network panel",subtitle:"Show CORS errors label and error code for failed CORS requests.",link:"https://developers.google.com/web/updates/2020/11/devtools#cors"},{title:"Frame details view updates",subtitle:"New cross-origin isolation status, API availability section, and more.",link:"https://developers.google.com/web/updates/2020/11/devtools#frame-details"}],link:"https://developers.google.com/web/updates/2020/11/devtools"},{version:29,header:"Highlights from the Chrome 87 update",highlights:[{title:"New CSS Grid debugging tools",subtitle:"Debug and inspect CSS Grid with the new CSS Grid debugging tools.",link:"https://developers.google.com/web/updates/2020/10/devtools#css-grid"},{title:"New WebAuthn tab",subtitle:"Emulate authenticators and debug the Web Authentication API with the new WebAuthn tab.",link:"https://developers.google.com/web/updates/2020/10/devtools#webauthn"},{title:"Move tools between top and bottom panel",subtitle:"Move tools in DevTools between the top and bottom panel.",link:"https://developers.google.com/web/updates/2020/10/devtools#moveable-tools"},{title:"Elements panel updates",subtitle:"View the Computed sidebar pane in the Styles pane, and more.",link:"https://developers.google.com/web/updates/2020/10/devtools#elements-panel"},{title:"Lighthouse 6.4",subtitle:"New audits to validate preload fonts, valid sourcemaps, and more.",link:"https://developers.google.com/web/updates/2020/10/devtools#lighthouse"},{title:"`performance.mark()` events in the Timings section",subtitle:"Performance recording now marks `performance.mark()` events.",link:"https://developers.google.com/web/updates/2020/10/devtools#perf-mark"},{title:"New filters in the Network panel",subtitle:"New `resource-type` and `url` keywords in the **Network panel** to filter network requests.",link:"https://developers.google.com/web/updates/2020/10/devtools#network-filters"}],link:"https://developers.google.com/web/updates/2020/10/devtools"},{version:28,header:"Highlights from the Chrome 86 update",highlights:[{title:"New Media panel",subtitle:"View and download media information on a browser tab.",link:"https://developers.google.com/web/updates/2020/08/devtools#media-panel"},{title:"Issues tab updates",subtitle:"The Issues warning bar is replaced with a regular message. Issues tab has a new checkbox to filter third-party cookie issues.",link:"https://developers.google.com/web/updates/2020/08/devtools#issues-tab"},{title:"Emulate missing local fonts",subtitle:"Emulate missing `local()` sources in @font-face rules.",link:"https://developers.google.com/web/updates/2020/08/devtools#emulate-local-fonts"},{title:"Emulate inactive users",subtitle:"Emulate idle state changes for both the user state and the screen state.",link:"https://developers.google.com/web/updates/2020/08/devtools#emulate-inactive-users"},{title:"Emulate prefers-reduced-data",subtitle:"Emulate the user preference on using less data for the page to be rendered.",link:"https://developers.google.com/web/updates/2020/08/devtools#emulate-prefers-reduced-data"},{title:"Support for new JavaScript features",subtitle:"Syntax support for logical assignment operators and numeric separators.",link:"https://developers.google.com/web/updates/2020/08/devtools#javascript"},{title:"Lighthouse 6.2",subtitle:"Enhance the unused-javascript audit if a page has publicly-accessible JavaScript source maps, and more.",link:"https://developers.google.com/web/updates/2020/08/devtools#lighthouse"},{title:"Deprecation of service workers “other origins” listing",subtitle:"View “other origins” listing in chrome://serviceworker-internals/?devtools instead.",link:"https://developers.google.com/web/updates/2020/08/devtools#deprecate-sw-other-origins"},{title:"New frame detailed view",subtitle:"A new detailed view for each frame and window with security information.",link:"https://developers.google.com/web/updates/2020/08/devtools#frame-detailed-view"},{title:"Network and Elements panel updates",subtitle:"Capture node screenshots shortcut, accessible color suggestion, human-readable `X-Client-Data`, and more",link:"https://developers.google.com/web/updates/2020/08/devtools#elements-network"}],link:"https://developers.google.com/web/updates/2020/08/devtools"},{version:27,header:"Highlights from the Chrome 85 update",highlights:[{title:"Style editing for CSS-in-JS",subtitle:"Styles created with CSS Object Model APIs and Constructible Stylesheets are now editable.",link:"https://developers.google.com/web/updates/2020/06/devtools#css-in-js"},{title:"Lighthouse 6",subtitle:"New metrics that align with Google’s Core Web Vitals, a new weighting of the Performance score, and more.",link:"https://developers.google.com/web/updates/2020/06/devtools#lighthouse"},{title:"First Meaningful Paint (FMP) deprecation",subtitle:"FMP has been removed from the Performance panel and deprecated in Lighthouse 6.",link:"https://developers.google.com/web/updates/2020/06/devtools#fmp-deprecation"},{title:"Support for new JavaScript features",subtitle:"Syntax and autocompletion support for optional chaining, private fields, and the nullish coalescing operator.",link:"https://developers.google.com/web/updates/2020/06/devtools#javascript"},{title:"New app shortcut warnings in the Manifest pane",subtitle:"Warnings for when an app icon image is too small or not the correct shape.",link:"https://developers.google.com/web/updates/2020/06/devtools#app-shortcut-warnings"},{title:"Service worker respondWith events in the Timing tab",subtitle:"More visibility into how long a service worker takes to respond to a fetch event.",link:"https://developers.google.com/web/updates/2020/06/devtools#timing-tab"},{title:"Consistent display of the Computed pane",subtitle:"The pane now always displays as a separate pane, rather than collapsing into the Styles pane.",link:"https://developers.google.com/web/updates/2020/06/devtools#computed-pane"},{title:"Bytecode offsets for WebAssembly files",subtitle:"Bytecode offsets are now displayed next to Wasm disassembly rather than line numbers.",link:"https://developers.google.com/web/updates/2020/06/devtools#wasm"},{title:"Line-wise copy and cut in the Sources Panel",subtitle:"Cut or copy an entire line of code.",link:"https://developers.google.com/web/updates/2020/06/devtools#sources-panel"},{title:"Console Settings updates",subtitle:"The “Group similar” option now applies to duplicate messages and the “Selected context only” option is now persisted.",link:"https://developers.google.com/web/updates/2020/06/devtools#console-settings"},{title:"Performance panel updates",subtitle:"Display JavaScript compilation cache information and align navigation timing in the Performance panel.",link:"https://developers.google.com/web/updates/2020/06/devtools#perf-panel"},{title:"New icons for breakpoints, conditional breakpoints, and logpoints",subtitle:"Breakpoints get a refreshed flag design with brighter and friendlier colors. Icons are added to differentiate conditional breakpoints and logpoints.",link:"https://developers.google.com/web/updates/2020/06/devtools#breakpoints"}],link:"https://developers.google.com/web/updates/2020/06/devtools"},{version:26,header:"Highlights from the Chrome 84 update",highlights:[{title:"The new Issues tab",subtitle:"The Issues tab presents warnings from the browser in a structured, aggregated, and actionable way, links to affected resources within DevTools, and provides guidance on how to fix the issues.",link:"https://developers.google.com/web/updates/2020/05/devtools#issues"},{title:"New accessibility information in the Inspect Mode tooltip",subtitle:"The tooltip now indicates whether an element has an accessible name and role and is keyboard-focusable.",link:"https://developers.google.com/web/updates/2020/05/devtools#a11y"},{title:"Performance panel updates",subtitle:"New features related to Total Blocking Time (TBT) and Cumulative Layout Shift (CLS).",link:"https://developers.google.com/web/updates/2020/05/devtools#performance"},{title:"More accurate Promise terminology",subtitle:"When logging Promises in the Console, the status now matches the Promise spec.",link:"https://developers.google.com/web/updates/2020/05/devtools#performance"},{title:"Styles pane updates",subtitle:"Support for the revert keyword, image previews, and more usage of space-separated functional color notation by default.",link:"https://developers.google.com/web/updates/2020/05/devtools#styles"},{title:"Deprecation of the Properties pane",subtitle:"Use console.dir($0) instead.",link:"https://developers.google.com/web/updates/2020/05/devtools#properties"},{title:"App shortcuts support in the Manifest pane",subtitle:"Verify your app shortcuts are set up correctly for your PWA.",link:"https://developers.google.com/web/updates/2020/05/devtools#app-shortcuts"}],link:"https://developers.google.com/web/updates/2020/05/devtools"},{version:25,header:"Highlights from the Chrome 83 update",highlights:[{title:"Emulate vision deficiencies from the Rendering tab",subtitle:"Get a visual approximation of how people with vision deficiencies might experience your site.",link:"https://developers.google.com/web/updates/2020/03/devtools#vision-deficiences"},{title:"Emulate locales from the Sensors tab or Console",subtitle:"Emulating locales enables you to change JavaScript APIs such as `Intl.*`, DOM APIs such as `navigator.locale`, and the `Accept-Language` HTTP header that’s sent with network requests.",link:"https://developers.google.com/web/updates/2020/03/devtools#locales"},{title:"Cross-Origin Embedder Policy (COEP) debugging",subtitle:"Use the Status column and Response Headers section in the Network panel to debug COEP issues.",link:"https://developers.google.com/web/updates/2020/03/devtools#COEP"},{title:"New icons for breakpoints, conditional breakpoints, and logpoints",subtitle:"The new icons are more consistent with other GUI debugging tools and make it easier to distinguish between the 3 features at a glance.",link:"https://developers.google.com/web/updates/2020/03/devtools#debugging-icons"},{title:"View network requests that set a specific cookie path",subtitle:"Use the new `cookie-path` filter keyword to focus on the network requests that set a specific cookie path.",link:"https://developers.google.com/web/updates/2020/03/devtools#cookie-path"},{title:"Dock to left from the Command Menu",subtitle:"Run the “Dock to left” command to quickly move DevTools to the left of your viewport.",link:"https://developers.google.com/web/updates/2020/03/devtools#dock-to-left"},{title:"The Settings option in the Main Menu has moved",subtitle:"The option for opening Settings can now be found under “More Tools”.",link:"https://developers.google.com/web/updates/2020/03/devtools#settings"},{title:"The Audits panel is now the Lighthouse panel",subtitle:"Same features. New name.",link:"https://developers.google.com/web/updates/2020/03/devtools#lighthouse"},{title:"Delete all Local Overrides in a folder",subtitle:"Right-click a folder from the Overrides tab and select “Delete all overrides”.",link:"https://developers.google.com/web/updates/2020/03/devtools#overrides"},{title:"Updated Long Tasks UI",subtitle:"In the Performance panel Long Tasks now have a striped red background.",link:"https://developers.google.com/web/updates/2020/03/devtools#long-tasks"},{title:"Maskable icon support in the Manifest pane",subtitle:"Enable the “Show only the minimum safe area for maskable icons” checkbox.",link:"https://developers.google.com/web/updates/2020/03/devtools#maskable-icons"}],link:"https://developers.google.com/web/updates/2020/03/devtools"},{version:24,header:"Highlights from the Chrome 82 update",highlights:[{title:"Emulate vision deficiencies from the Rendering tab",subtitle:"Get a visual approximation of how people with vision deficiencies might experience your site.",link:"https://developers.google.com/web/updates/2020/03/devtools#vision-deficiences"},{title:"Cross-Origin Opener Policy (COOP) and Cross-Origin Embedder Policy (COEP) debugging",subtitle:"Use the Status column and Response Headers section in the Network panel to debug COOP and COEP issues.",link:"https://developers.google.com/web/updates/2020/03/devtools#COOP-COEP"},{title:"Dock to left from the Command Menu",subtitle:"Run the “Dock to left” command to quickly move DevTools to the left of your viewport.",link:"https://developers.google.com/web/updates/2020/03/devtools#dock-to-left"},{title:"The Audits panel is now the Lighthouse panel",subtitle:"Same features. New name.",link:"https://developers.google.com/web/updates/2020/03/devtools#lighthouse"},{title:"Delete all Local Overrides in a folder",subtitle:"Right-click a folder from the Overrides tab and select “Delete all overrides”.",link:"https://developers.google.com/web/updates/2020/03/devtools#overrides"},{title:"Updated Long Tasks UI",subtitle:"In the Performance panel Long Tasks now have a striped red background.",link:"https://developers.google.com/web/updates/2020/03/devtools#long-tasks"},{title:"Maskable icon support in the Manifest pane",subtitle:"Enable the “Show only the minimum safe area for maskable icons” checkbox.",link:"https://developers.google.com/web/updates/2020/03/devtools#maskable-icons"}],link:"https://developers.google.com/web/updates/2020/03/devtools"},{version:23,header:"Highlights from the Chrome 81 update",highlights:[{title:"Moto G4 support in Device Mode",subtitle:"Simulate Moto G4 viewport dimensions and display its hardware around the viewport.",link:"https://developers.google.com/web/updates/2020/01/devtools#motog4"},{title:"Cookie-related updates",subtitle:"Blocked cookies and cookie priority in the Cookies pane, editing all cookie values, and more.",link:"https://developers.google.com/web/updates/2020/01/devtools#cookies"},{title:"More accurate web app manifest icons",subtitle:"DevTools now shows the exact icon that Chrome uses.",link:"https://developers.google.com/web/updates/2020/01/devtools#manifesticons"},{title:"Hover over CSS `content` properties to see unescaped values",subtitle:"Hover over a `content` value to see the rendered version of the value in a tooltip.",link:"https://developers.google.com/web/updates/2020/01/devtools#content"},{title:"Source map errors in the Console",subtitle:"The Console now tells you when a source map has failed to load or parse.",link:"https://developers.google.com/web/updates/2020/01/devtools#sourcemaperrors"},{title:"A setting for disabling scrolling past the end of a file",subtitle:"Go to Settings and disable the “Allow scrolling past end of file” checkbox.",link:"https://developers.google.com/web/updates/2020/01/devtools#scrolling"}],link:"https://developers.google.com/web/updates/2020/01/devtools"},{version:22,header:"Highlights from the Chrome 80 update",highlights:[{title:"Support for let and class redeclarations",subtitle:"When experimenting with new code in the Console, repeating `let` or `class` declarations no longer causes errors.",link:"https://developers.google.com/web/updates/2019/12/devtools#redeclarations"},{title:"Improved WebAssembly debugging",subtitle:"The Sources panel has increased support for stepping over code, setting breakpoints, and resolving stack traces in source languages.",link:"https://developers.google.com/web/updates/2019/12/devtools#webassembly"},{title:"Network panel updates",subtitle:"View request initiator chains, highlight requests in the Overview, and more.",link:"https://developers.google.com/web/updates/2019/12/devtools#network"},{title:"Audits panel updates",subtitle:"The redesigned configuration UI has simplified throttling options.",link:"https://developers.google.com/web/updates/2019/12/devtools#audits"},{title:"Coverage tab updates",subtitle:"Choose per-function or per-block coverage, and more.",link:"https://developers.google.com/web/updates/2019/12/devtools#coverage"}],link:"https://developers.google.com/web/updates/2019/12/devtools"},{version:21,header:"Highlights from the Chrome 79 update",highlights:[{title:"Debug why a cookie was blocked",subtitle:"Click a resource in the Network panel and go to the updated Cookies tab.",link:"https://developers.google.com/web/updates/2019/10/devtools#blockedcookies"},{title:"View cookie values",subtitle:"Click a row in the Cookies pane in the Application panel to see the cookie’s value.",link:"https://developers.google.com/web/updates/2019/10/devtools#cookiepreviews"},{title:"Simulate prefers-color-scheme and prefers-reduced-motion preferences",subtitle:"Open the Rendering tab to force your site into dark or light mode or set motion preferences.",link:"https://developers.google.com/web/updates/2019/10/devtools#userpreferences"},{title:"Code coverage updates",subtitle:"More accessible colors, a filter text box, and a new integration with the Sources panel.",link:"https://developers.google.com/web/updates/2019/10/devtools#coverage"},{title:"Debug why a network resource was requested",subtitle:"Click a resource in the Network panel and go to the new Initiator tab.",link:"https://developers.google.com/web/updates/2019/10/devtools#initiator"},{title:"Console and Sources panels respect indentation preferences again",subtitle:"Set your preference in Settings > Preferences > Sources > Default Indentation.",link:"https://developers.google.com/web/updates/2019/10/devtools#indentation"},{title:"New shortcuts for cursor navigation",subtitle:"Press Control+P or Control+N to move your cursor to the line above or below.",link:"https://developers.google.com/web/updates/2019/10/devtools#console"}],link:"https://developers.google.com/web/updates/2019/10/devtools"},{version:20,header:"Highlights from the Chrome 78 update",highlights:[{title:"Multi-client support in the Audits panel",subtitle:"Use the Audits panel in combination with other features, like Local Overrides or Request Blocking.",link:"https://developers.google.com/web/updates/2019/09/devtools#multiclient"},{title:"Payment Handler debugging",subtitle:"Record Payment Handler events for 3 days, even when DevTools is closed.",link:"https://developers.google.com/web/updates/2019/09/devtools#payments"},{title:"Lighthouse 5.2 in the Audits panel",subtitle:"Measure the impact of third-party code on your load performance with the new Third-Party Usage audit.",link:"https://developers.google.com/web/updates/2019/09/devtools#audits"},{title:"Largest Contentful Paint (LCP) in the Performance panel",subtitle:"Click the new LCP marker in the Timing section to see the DOM node associated with your LCP.",link:"https://developers.google.com/web/updates/2019/09/devtools#LCP"},{title:"File issues and feature requests from the Main Menu",subtitle:"Found a bug? Got an idea on how to improve DevTools? Go to Main Menu > Help > Report a DevTools issue.",link:"https://developers.google.com/web/updates/2019/09/devtools#issues"}],link:"https://developers.google.com/web/updates/2019/09/devtools"},{version:19,header:"Highlights from the Chrome 77 update",highlights:[{title:"Copy element styles",subtitle:"Right-click an element in the DOM Tree and select Copy > Copy Styles.",link:"https://developers.google.com/web/updates/2019/07/devtools#copystyles"},{title:"Visualize layout shifts",subtitle:`Press ${u}, run Show Rendering, and enable Layout Shift Regions to visualize content shifts.`,link:"https://developers.google.com/web/updates/2019/07/devtools#layoutshifts"},{title:"Lighthouse 5.1 in the Audits panel",subtitle:"New audits for checking for PWA installability on iOS, keeping resource counts low, and more.",link:"https://developers.google.com/web/updates/2019/07/devtools#audits"},{title:"OS theme syncing",subtitle:"DevTools now automatically switches to its own dark theme when it detects an OS in dark mode.",link:"https://developers.google.com/web/updates/2019/07/devtools#theming"},{title:"Keyboard shortcut for opening the Breakpoint Editor",subtitle:`Press ${t.isMac()?"Command+Option+B":"Control+Alt+B"} when focused in the Editor to create Logpoints and Conditional Breakpoints more quickly.`,link:"https://developers.google.com/web/updates/2019/07/devtools#breakpointeditor"},{title:"Prefetch cache in Network panel",subtitle:"The Size column now indicates whether a resource came from the prefetch cache.",link:"https://developers.google.com/web/updates/2019/07/devtools#prefetch"},{title:"Private properties when viewing objects",subtitle:"The Console now shows private class fields in its object previews.",link:"https://developers.google.com/web/updates/2019/07/devtools#privateclassfields"},{title:"Notification and push message logs",subtitle:"Go to Application > Background Services > Notifications or Messages and click Record to log events for 3 days.",link:"https://developers.google.com/web/updates/2019/07/devtools#backgroundservices"}],link:"https://developers.google.com/web/updates/2019/07/devtools"},{version:18,header:"Highlights from the Chrome 76 update",highlights:[{title:"Autocomplete with CSS keyword values",subtitle:"Typing a keyword value like `bold` in the Styles pane now autocompletes to `font-weight: bold`.",link:"https://developers.google.com/web/updates/2019/05/devtools#values"},{title:"A new UI for network settings",subtitle:"The “Use large request rows”, “Group by frame”, “Show overview”, and “Capture screenshots” options have moved to the new Network Settings pane.",link:"https://developers.google.com/web/updates/2019/05/devtools#settings"},{title:"WebSocket messages in HAR exports",subtitle:"Network logs downloaded from the Network panel now include WebSocket messages.",link:"https://developers.google.com/web/updates/2019/05/devtools#websocket"}],link:"https://developers.google.com/web/updates/2019/05/devtools"},{version:17,header:"Highlights from the Chrome 75 update",highlights:[{title:"Meaningful preset values when autocompleting CSS functions",subtitle:"Properties like `filter` that take functions for values now autocomplete to previewable values in the Styles pane.",link:"https://developers.google.com/web/updates/2019/04/devtools#presets"},{title:"Clear site data from the Command Menu",subtitle:`Press ${u} and run the “Clear Site Data” command to clear cookies, storage, and more.`,link:"https://developers.google.com/web/updates/2019/04/devtools#clear"},{title:"View all IndexedDB databases",subtitle:"The IndexedDB pane now shows databases for all origins rather than just the main origin.",link:"https://developers.google.com/web/updates/2019/04/devtools#indexeddb"},{title:"View a resource’s uncompressed size on hover",subtitle:"Hover over the Size column in the Network panel to view a resource’s full size.",link:"https://developers.google.com/web/updates/2019/04/devtools#uncompressed"},{title:"Inline breakpoints in the Breakpoints pane",subtitle:"When you’ve got multiple breakpoints on a single line of code, the Breakpoints pane now lets you manage each one independently.",link:"https://developers.google.com/web/updates/2019/04/devtools#inline"}],link:"https://developers.google.com/web/updates/2019/04/devtools"},{version:16,header:"Highlights from the Chrome 74 update",highlights:[{title:"Highlight all nodes affected by CSS property",subtitle:"Hover over a CSS property like padding or margin in the Styles pane to highlight all nodes affected by that declaration.",link:"https://developers.google.com/web/updates/2019/03/devtools#highlight"},{title:"Lighthouse v4 in the Audits panel",subtitle:"Featuring a new “tap targets” audit for checking that mobile links and buttons are properly sized, and a new UI for PWA reports.",link:"https://developers.google.com/web/updates/2019/03/devtools#lighthouse"},{title:"WebSocket binary message viewer",subtitle:"Click a WebSocket connection in the Network Log, go to the Messages tab, then click a binary message to view its contents.",link:"https://developers.google.com/web/updates/2019/03/devtools#binary"},{title:"Capture area screenshot in the Command Menu",subtitle:"Press "+u+", run the “Capture area screenshot” command, and then drag your mouse to take a screenshot of part of the viewport.",link:"https://developers.google.com/web/updates/2019/03/devtools#screenshot"},{title:"Service worker filters in the Network panel",subtitle:"Type `is:service-worker-initiated` or `is:service-worker-intercepted` to only show service worker activity.",link:"https://developers.google.com/web/updates/2019/03/devtools#swfilters"}],link:"https://developers.google.com/web/updates/2019/03/devtools"},{version:15,header:"Highlights from the Chrome 73 update",highlights:[{title:"Logpoints",subtitle:"Log messages to the Console without cluttering up your code with `console.log()` calls.",link:"https://developers.google.com/web/updates/2019/01/devtools#logpoints"},{title:"Detailed tooltips in Inspect Mode",subtitle:"When inspecting a node, DevTools now shows an expanded tooltip containing text, color contrast, and box model information.",link:"https://developers.google.com/web/updates/2019/01/devtools#inspect"},{title:"Export code coverage data",subtitle:"The Coverage tab now supports exporting coverage data as JSON.",link:"https://developers.google.com/web/updates/2019/01/devtools#coverage"},{title:"Navigate the Console with the keyboard",subtitle:"Press Shift+Tab to focus the last message and then use the arrow keys to navigate.",link:"https://developers.google.com/web/updates/2019/01/devtools#keyboard"},{title:"Save custom location overrides",subtitle:"Click Manage in the Sensors tab or open Settings > Locations.",link:"https://developers.google.com/web/updates/2019/01/devtools#geolocation"},{title:"Code folding",subtitle:"Go to Settings > Preferences > Sources and enable Code Folding to fold code in the Sources panel.",link:"https://developers.google.com/web/updates/2019/01/devtools#folding"}],link:"https://developers.google.com/web/updates/2019/01/devtools"},{version:14,header:"Highlights from the Chrome 72 update",highlights:[{title:"Visualize performance metrics",subtitle:"Performance metrics like DOMContentLoaded and First Meaningful Paint are now marked in the Timings section of the Performance panel.",link:"https://developers.google.com/web/updates/2018/11/devtools#metrics"},{title:"Highlight text nodes",subtitle:"Hover over a text node in the DOM Tree to highlight it in the viewport.",link:"https://developers.google.com/web/updates/2018/11/devtools#highlight"},{title:"Copy JS path",subtitle:"Right-click a DOM node and select “Copy” > “Copy JS path” to quickly get a JavaScript expression that points to that node.",link:"https://developers.google.com/web/updates/2018/11/devtools#copy"},{title:"Audits panel updates",subtitle:"A new audit that lists detected JS libraries and new keywords for accessing the Audits panel from the Command Menu.",link:"https://developers.google.com/web/updates/2018/11/devtools#audits"}],link:"https://developers.google.com/web/updates/2018/11/devtools"},{version:13,header:"Highlights from the Chrome 71 update",highlights:[{title:"Hover over a Live Expression to highlight a DOM node",subtitle:"Hover over a result that evaluates to a node to highlight that node in the viewport.",link:"https://developers.google.com/web/updates/2018/10/devtools#hover"},{title:"Store DOM nodes as global variables",subtitle:"Right-click a node in the Elements panel or Console and select “Store as global variable”.",link:"https://developers.google.com/web/updates/2018/10/devtools#store"},{title:"Initiator and priority information now in HAR imports and exports",subtitle:"Get more context around what caused a resource to be requested and what priority the browser assigned to each resource when sharing network logs.",link:"https://developers.google.com/web/updates/2018/10/devtools#HAR"},{title:"Access the Command Menu from the Main Menu",subtitle:"Open the Main Menu and select “Run command”.",link:"https://developers.google.com/web/updates/2018/10/devtools#command-menu"}],link:"https://developers.google.com/web/updates/2018/10/devtools"},{version:12,header:"Highlights from the Chrome 70 update",highlights:[{title:"Live Expressions in the Console",subtitle:"Pin expressions to the top of the Console to monitor their values in real-time.",link:"https://developers.google.com/web/updates/2018/08/devtools#watch"},{title:"Highlight DOM nodes during Eager Evaluation",subtitle:"Type an expression that evaluates to a node to highlight that node in the viewport.",link:"https://developers.google.com/web/updates/2018/08/devtools#nodes"},{title:"Autocomplete Conditional Breakpoints",subtitle:"Type expressions quickly and accurately.",link:"https://developers.google.com/web/updates/2018/08/devtools#autocomplete"},{title:"Performance panel optimizations",subtitle:"Faster loading and processing of Performance recordings.",link:"https://developers.google.com/web/updates/2018/08/devtools#performance"},{title:"More reliable debugging",subtitle:"Bug fixes for sourcemaps and blackboxing.",link:"https://developers.google.com/web/updates/2018/08/devtools#debugging"},{title:"Debug Node.js apps with ndb",subtitle:"Detect and attach to child processes, place breakpoints before modules are required, edit files within DevTools, and more.",link:"https://developers.google.com/web/updates/2018/08/devtools#ndb"}],link:"https://developers.google.com/web/updates/2018/08/devtools"},{version:11,header:"Highlights from the Chrome 68 update",highlights:[{title:"Eager evaluation",subtitle:"Preview return values in the Console without explicitly executing expressions.",link:"https://developers.google.com/web/updates/2018/05/devtools#eagerevaluation"},{title:"Argument hints",subtitle:"View a function’s expected arguments in the Console.",link:"https://developers.google.com/web/updates/2018/05/devtools#hints"},{title:"Function autocompletion",subtitle:"View available properties and methods after calling a function in the Console.",link:"https://developers.google.com/web/updates/2018/05/devtools#autocomplete"},{title:"Audits panel updates",subtitle:"Faster, more consisent audits, a new UI, and new audits, thanks to Lighthouse 3.0.",link:"https://developers.google.com/web/updates/2018/05/devtools#lh3"}],link:"https://developers.google.com/web/updates/2018/05/devtools"},{version:10,header:"Highlights from the Chrome 67 update",highlights:[{title:"Search across all network headers",subtitle:`Press ${g} in the Network panel to open the Network Search pane.`,link:"https://developers.google.com/web/updates/2018/04/devtools#network-search"},{title:"CSS variable value previews in the Styles pane",subtitle:"When a property value is a CSS variable, DevTools now shows a color preview next to the variable.",link:"https://developers.google.com/web/updates/2018/04/devtools#vars"},{title:"Stop infinite loops",subtitle:"Pause JavaScript execution then select the new Stop Current JavaScript Call button.",link:"https://developers.google.com/web/updates/2018/04/devtools#stop"},{title:"Copy as fetch",subtitle:"Right-click a network request then select Copy > Copy as fetch.",link:"https://developers.google.com/web/updates/2018/04/devtools#fetch"},{title:"More audits",subtitle:"Two new audits, desktop configuration options, and viewing traces.",link:"https://developers.google.com/web/updates/2018/04/devtools#audits"},{title:"User Timing in the Performance tabs",subtitle:"Click the User Timing section to view measures in the Summary, Bottom-Up, and Call Tree tabs.",link:"https://developers.google.com/web/updates/2018/04/devtools#tabs"}],link:"https://developers.google.com/web/updates/2018/04/devtools"},{version:9,header:"Highlights from the Chrome 66 update",highlights:[{title:"Pretty-printing in the Preview and Response tabs",subtitle:"The Preview tab now pretty-prints by default, and you can force pretty-printing in the Response tab via the new Format button.",link:"https://developers.google.com/web/updates/2018/02/devtools#pretty-printing"},{title:"Previewing HTML content in the Preview tab",subtitle:"The Preview tab now always does a basic rendering of HTML content.",link:"https://developers.google.com/web/updates/2018/02/devtools#previews"},{title:"Local Overrides with styles defined in HTML",subtitle:"Local Overrides now works with styles defined in HTML, with one exception.",link:"https://developers.google.com/web/updates/2018/02/devtools#overrides"},{title:"Blackboxing in the Initiator column",subtitle:"Hide framework scripts in order to see the app code that caused a request.",link:"https://developers.google.com/web/updates/2018/02/devtools#blackboxing"}],link:"https://developers.google.com/web/updates/2018/02/devtools"},{version:8,header:"Highlights from the Chrome 65 update",highlights:[{title:"Local overrides",subtitle:"Override network requests and serve local resources instead.",link:"https://developers.google.com/web/updates/2018/01/devtools#overrides"},{title:"Changes tab",subtitle:"Track changes that you make locally in DevTools via the Changes tab.",link:"https://developers.google.com/web/updates/2018/01/devtools#changes"},{title:"New accessibility tools",subtitle:"Inspect the accessibility properties and contrast ratio of elements.",link:"https://developers.google.com/web/updates/2018/01/devtools#a11y"},{title:"New audits",subtitle:"New performance audits, a whole new category of SEO audits, and more.",link:"https://developers.google.com/web/updates/2018/01/devtools#audits"},{title:"Code stepping updates",subtitle:"Reliably step into web worker and asynchronous code.",link:"https://developers.google.com/web/updates/2018/01/devtools#stepping"},{title:"Multiple recordings in the Performance panel",subtitle:"Temporarily save up to 5 recordings.",link:"https://developers.google.com/web/updates/2018/01/devtools#recordings"}],link:"https://developers.google.com/web/updates/2018/01/devtools"},{version:7,header:"Highlights from the Chrome 64 update",highlights:[{title:"Performance monitor",subtitle:"Get a real-time view of various performance metrics.",link:"https://developers.google.com/web/updates/2017/11/devtools-release-notes#perf-monitor"},{title:"Console sidebar",subtitle:"Reduce console noise and focus on the messages that are important to you.",link:"https://developers.google.com/web/updates/2017/11/devtools-release-notes#console-sidebar"},{title:"Group similar console messages",subtitle:"The Console now groups similar messages by default.",link:"https://developers.google.com/web/updates/2017/11/devtools-release-notes#group-similar"}],link:"https://developers.google.com/web/updates/2017/11/devtools-release-notes"},{version:6,header:"Highlights from the Chrome 63 update",highlights:[{title:"Multi-client remote debugging",subtitle:"Use DevTools while debugging your app from an IDE or testing framework.",link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes#multi-client"},{title:"Workspaces 2.0",subtitle:"Save changes made in DevTools to disk, now with more helpful UI and better auto-mapping.",link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes#workspaces"},{title:"Four new audits",subtitle:"Including “Appropriate aspect ratios for images”, “Avoid JS libraries with known vulnerabilities”, and more.",link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes#audits"},{title:"Custom push notifications",subtitle:"Simulate push notifications with custom data.",link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes#push"},{title:"Custom background sync events",subtitle:"Trigger background sync events with custom tags.",link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes#sync"}],link:"https://developers.google.com/web/updates/2017/10/devtools-release-notes"},{version:5,header:"Highlights from the Chrome 62 update",highlights:[{title:"Top-level await operators in the Console",subtitle:"Use await to conveniently experiment with asynchronous functions in the Console.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#await"},{title:"New screenshot workflows",subtitle:"Take screenshots of a portion of the viewport, or of specific HTML nodes.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#screenshots"},{title:"CSS Grid highlighting",subtitle:"Hover over an element to see the CSS Grid that’s affecting it.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#css-grid-highlighting"},{title:"A new Console API for querying objects",subtitle:"Call `queryObjects(Constructor)` to get an array of objects instantiated with that constructor.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#query-objects"},{title:"New Console filters",subtitle:"Filter out logging noise with the new negative and URL filters.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#console-filters"},{title:"HAR imports in the Network panel",subtitle:"Drag-and-drop a HAR file to analyze a previous network recording.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#har-imports"},{title:"Previewable cache resources in the Application panel",subtitle:"Click a row in a Cache Storage table to see a preview of that resource.",link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes#cache-preview"}],link:"https://developers.google.com/web/updates/2017/08/devtools-release-notes"},{version:4,header:"Highlights from the Chrome 61 update",highlights:[{title:"Mobile device throttling",subtitle:"Simulate a mobile device’s CPU and network throttling from Device Mode.",link:"https://developers.google.com/web/updates/2017/07/devtools-release-notes#throttling"},{title:"Storage usage",subtitle:"See how much storage (IndexedDB, local, session, cache, etc.) an origin is using.",link:"https://developers.google.com/web/updates/2017/07/devtools-release-notes#storage"},{title:"Cache timestamps",subtitle:"View when a service worker cached a response.",link:"https://developers.google.com/web/updates/2017/07/devtools-release-notes#time-cached"},{title:"ES6 Modules support",subtitle:"Debug ES6 Modules natively from the Sources panel.",link:"https://developers.google.com/web/updates/2017/07/devtools-release-notes#modules"}],link:"https://developers.google.com/web/updates/2017/07/devtools-release-notes"},{version:3,header:"Highlights from the Chrome 60 update",highlights:[{title:"New Audits panel, powered by Lighthouse",subtitle:"Find out whether your site qualifies as a Progressive Web App, measure the accessibility and performance of a page, and discover best practices.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#lighthouse"},{title:"Third-party badges",subtitle:"See what third-party entities are logging to the Console, making network requests, and causing work during performance recordings.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#badges"},{title:'New "Continue to Here" gesture',subtitle:"While paused on a line of code, hold "+h+" and then click to continue to another line of code.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#continue"},{title:"Step into async",subtitle:"Predictably step into a promise resolution or other asynchronous code with a single gesture.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#step-into-async"},{title:"More informative object previews",subtitle:"Get a better idea of the contents of objects when logging them to the Console.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#object-previews"},{title:"Real-time Coverage tab updates",subtitle:"See what code is being used in real-time.",link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes#coverage"}],link:"https://developers.google.com/web/updates/2017/05/devtools-release-notes"},{version:2,header:"Highlights from Chrome 59 update",highlights:[{title:"CSS and JS code coverage",subtitle:"Find unused CSS and JS with the new Coverage drawer.",link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes#coverage"},{title:"Full-page screenshots",subtitle:"Take a screenshot of the entire page, from the top of the viewport to the bottom.",link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes#screenshots"},{title:"Block requests",subtitle:"Manually disable individual requests in the Network panel.",link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes#block-requests"},{title:"Step over async await",subtitle:"Step through async functions predictably.",link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes#async"},{title:"Unified Command Menu",subtitle:"Execute commands and open files from the newly-unified Command Menu ("+u+").",link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes#command-menu"}],link:"https://developers.google.com/web/updates/2017/04/devtools-release-notes"},{version:1,header:"Highlights from Chrome 58 update",highlights:[{title:"New Performance and Memory panels",subtitle:"Head to Performance for JavaScript profiling",link:"https://developers.google.com/web/updates/2017/03/devtools-release-notes#performance-panel"},{title:"Editable cookies",subtitle:"You can edit any existing cookies and create new ones in the Application panel",link:"https://developers.google.com/web/updates/2017/03/devtools-release-notes#cookies"},{title:"Console filtering & settings",subtitle:"Use the text filter or click the Console settings icon to touch up your preferences",link:"https://developers.google.com/web/updates/2017/03/devtools-release-notes#console"},{title:"Debugger catches out-of-memory errors",subtitle:"See the stack or grab a heap snapshot to see why the app may crash",link:"https://developers.google.com/web/updates/2017/03/devtools-release-notes#out-of-memory-breakpoints"}],link:"https://developers.google.com/web/updates/2017/03/devtools-release-notes"}];var v=Object.freeze({__proto__:null,releaseNoteText:c});let m;function b(){const e=self.Help.releaseNoteText;return m||(m=(e||c).reduce(((e,t)=>t.version>e.version?t:e))),m}function w(){k(e.Settings.instance().createSetting("releaseNoteVersionSeen",0).get(),b().version,e.Settings.instance().moduleSetting("help.show-release-note").get())}function k(t,o,l){const i=e.Settings.instance().createSetting("releaseNoteVersionSeen",0);t?l&&(t>=o||(i.set(o),s.ViewManager.instance().showView("release-note",!0))):i.set(o)}var f=Object.freeze({__proto__:null,releaseVersionSeen:"releaseNoteVersionSeen",releaseNoteViewId:"release-note",latestReleaseNote:b,showReleaseNoteIfNeeded:w,innerShowReleaseNoteIfNeeded:k,HelpLateInitialization:class{async run(){o.isUnderTest()||w()}},ReleaseNotesActionDelegate:class{handleAction(e,t){return o.InspectorFrontendHostInstance.openInNewTab(b().link),!0}},ReportIssueActionDelegate:class{handleAction(e,t){return o.InspectorFrontendHostInstance.openInNewTab("https://bugs.chromium.org/p/chromium/issues/entry?template=DevTools+issue"),!0}}});const C={s:"{PH1}",learnMore:"Learn more",close:"Close"},y=p.registerUIStrings("help/ReleaseNoteView.ts",C),S=p.getLocalizedString.bind(void 0,y);let T;class P extends l.VBox{constructor(){super(!0),this.registerRequiredCSS("help/releaseNote.css",{enableLegacyPatching:!0}),this._releaseNoteElement=this._createReleaseNoteElement(b());this.contentElement.createChild("div","release-note-top-section").textContent=S(C.s,{PH1:b().header}),this.contentElement.appendChild(this._releaseNoteElement)}static instance(e={forceNew:null}){const{forceNew:t}=e;return T&&!t||(T=new P),T}elementsToRestoreScrollPositionsFor(){return[this._releaseNoteElement]}_createReleaseNoteElement(e){const t=document.createElement("div");t.classList.add("hbox");const s=t.createChild("div","release-note-container"),l=s.createChild("ul");i.setAccessibleName(l,S(C.s,{PH1:b().header}));let p=1;for(const t of e.highlights){const o=l.createChild("li"),s=n.XLink.create(t.link,"","release-note-link");s.textContent="",i.markAsLink(s),i.setAccessibleName(s,`${t.title}: ${t.subtitle} ${p} of ${e.highlights.length}`);s.createChild("div","release-note-title").textContent=t.title;s.createChild("div","release-note-subtitle").textContent=t.subtitle,o.appendChild(s),p++}const h=s.createChild("div","release-note-action-container"),g=a.createTextButton(S(C.learnMore),(t=>{t.consume(!0),o.InspectorFrontendHostInstance.openInNewTab(e.link)}));i.markAsLink(g),h.appendChild(g),h.appendChild(a.createTextButton(S(C.close),(e=>{e.consume(!0),r.InspectorView.instance().closeDrawerTab("release-note",!0)}),"close-release-note"));const u=n.XLink.create(e.link," ");u.classList.add("release-note-image"),d.Tooltip.install(u,S(C.s,{PH1:b().header})),t.appendChild(u);const c=u.createChild("img");return c.src="Images/whatsnew.avif",d.Tooltip.install(c,d.Tooltip.getContent(u)),c.alt=d.Tooltip.getContent(c),t}}var N=Object.freeze({__proto__:null,UIStrings:C,ReleaseNoteView:P});export{f as Help,v as ReleaseNoteText,N as ReleaseNoteView};
@@ -0,0 +1 @@
1
+ import*as RootModule from'../root/root.js';RootModule.Runtime.cachedResources.set("help/releaseNote.css","/*\n * Copyright 2017 The Chromium Authors. All rights reserved.\n * Use of this source code is governed by a BSD-style license that can be\n * found in the LICENSE file.\n */\n\n.hbox {\n overflow-y: auto;\n overflow-x: hidden;\n}\n\n.release-note-top-section {\n height: 27px;\n line-height: 27px;\n padding: 0 15px;\n flex: none;\n background-color: var(--toolbar-bg-color);\n border-bottom: var(--divider-border);\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n:host-context(.-theme-with-dark-background) .release-note-top-section {\n color: white;\n}\n\n.release-note-container {\n display: flex;\n flex-direction: column;\n}\n\n.release-note-container ul {\n display: flex;\n padding: 10px 16px;\n flex-direction: column;\n flex: none;\n margin: 4px 12px 0 2px;\n max-width: 600px;\n}\n\n.release-note-container li {\n display: flex;\n flex-direction: column;\n flex: none;\n line-height: 24px;\n font-size: 14px;\n}\n\n.release-note-container li:hover {\n color: #039be5;\n}\n\n.release-note-container .release-note-link {\n border: 1px solid rgb(0 0 0 / 20%);\n padding-left: 8px;\n padding-right: 8px;\n margin-bottom: 4px;\n text-decoration: none;\n}\n\n.release-note-container .release-note-link:hover {\n box-shadow: 0 0 0 1px rgb(0 0 0 / 50%) inset;\n}\n\n.release-note-title,\n.release-note-subtitle {\n color: inherit;\n text-decoration: none;\n}\n\n.release-note-subtitle {\n font-size: 13px;\n line-height: 13px;\n padding-bottom: 8px;\n}\n\n.release-note-container li:not(:hover) .release-note-subtitle {\n color: #999;\n}\n\n.release-note-action-container > button {\n margin: 10px 0 20px 20px;\n color: #757575;\n}\n\n.release-note-action-container {\n flex: none;\n}\n\n.release-note-image {\n flex-shrink: 2;\n}\n\nimg {\n margin: 20px;\n width: 260px;\n height: 200px;\n flex: none;\n box-shadow: 0 2px 4px rgb(0 0 0 / 30%);\n}\n\nimg:hover {\n box-shadow: 0 2px 4px rgb(0 0 0 / 50%);\n}\n\n@media (forced-colors: active) {\n .release-note-container .release-note-link {\n border-color: ButtonText;\n }\n\n .release-note-container .release-note-link:hover {\n forced-color-adjust: none;\n border-color: Highlight;\n }\n\n .release-note-container li .release-note-title,\n .release-note-container li:not(:hover) .release-note-subtitle {\n forced-color-adjust: none;\n color: linktext;\n }\n}\n\n/*# sourceURL=help/releaseNote.css */");
@@ -0,0 +1 @@
1
+ import{InspectorFrontendHost as s,InspectorFrontendHostAPI as o,Platform as t,ResourceLoader as e,UserMetrics as r,userMetrics as n}from"./host.js";self.Host=self.Host||{},Host=Host||{},Host.InspectorFrontendHost=s.InspectorFrontendHostInstance,Host.isUnderTest=s.isUnderTest,Host.InspectorFrontendHostAPI={},Host.InspectorFrontendHostAPI.Events=o.Events,Host.platform=t.platform,Host.isWin=t.isWin,Host.isMac=t.isMac,Host.isCustomDevtoolsFrontend=t.isCustomDevtoolsFrontend,Host.fontFamily=t.fontFamily,Host.ResourceLoader=e.ResourceLoader,Host.ResourceLoader.load=e.load,Host.ResourceLoader.loadAsStream=e.loadAsStream,Host.ResourceLoader.setLoadForTest=e.setLoadForTest,Host.UserMetrics=r.UserMetrics,Host.UserMetrics._PanelCodes=r.PanelCodes,Host.UserMetrics.Action=r.Action,Host.userMetrics=n;
@@ -0,0 +1 @@
1
+ import{StringOutputStream as e,ParsedURL as o,UIString as t,Console as n,ObjectWrapper as r,Settings as s,EventTarget as i}from"../common/common.js";import{ls as a,StringUtilities as d}from"../platform/platform.js";import{Runtime as c}from"../root/root.js";const l={AppendedToURL:Symbol("appendedToURL"),CanceledSaveURL:Symbol("canceledSaveURL"),ContextMenuCleared:Symbol("contextMenuCleared"),ContextMenuItemSelected:Symbol("contextMenuItemSelected"),DeviceCountUpdated:Symbol("deviceCountUpdated"),DevicesDiscoveryConfigChanged:Symbol("devicesDiscoveryConfigChanged"),DevicesPortForwardingStatusChanged:Symbol("devicesPortForwardingStatusChanged"),DevicesUpdated:Symbol("devicesUpdated"),DispatchMessage:Symbol("dispatchMessage"),DispatchMessageChunk:Symbol("dispatchMessageChunk"),EnterInspectElementMode:Symbol("enterInspectElementMode"),EyeDropperPickedColor:Symbol("eyeDropperPickedColor"),FileSystemsLoaded:Symbol("fileSystemsLoaded"),FileSystemRemoved:Symbol("fileSystemRemoved"),FileSystemAdded:Symbol("fileSystemAdded"),FileSystemFilesChangedAddedRemoved:Symbol("FileSystemFilesChangedAddedRemoved"),IndexingTotalWorkCalculated:Symbol("indexingTotalWorkCalculated"),IndexingWorked:Symbol("indexingWorked"),IndexingDone:Symbol("indexingDone"),KeyEventUnhandled:Symbol("keyEventUnhandled"),ReattachMainTarget:Symbol("reattachMainTarget"),ReloadInspectedPage:Symbol("reloadInspectedPage"),RevealSourceLine:Symbol("revealSourceLine"),SavedURL:Symbol("savedURL"),SearchCompleted:Symbol("searchCompleted"),SetInspectedTabId:Symbol("setInspectedTabId"),SetUseSoftMenu:Symbol("setUseSoftMenu"),ShowPanel:Symbol("showPanel")},u=[[l.AppendedToURL,"appendedToURL",["url"]],[l.CanceledSaveURL,"canceledSaveURL",["url"]],[l.ContextMenuCleared,"contextMenuCleared",[]],[l.ContextMenuItemSelected,"contextMenuItemSelected",["id"]],[l.DeviceCountUpdated,"deviceCountUpdated",["count"]],[l.DevicesDiscoveryConfigChanged,"devicesDiscoveryConfigChanged",["config"]],[l.DevicesPortForwardingStatusChanged,"devicesPortForwardingStatusChanged",["status"]],[l.DevicesUpdated,"devicesUpdated",["devices"]],[l.DispatchMessage,"dispatchMessage",["messageObject"]],[l.DispatchMessageChunk,"dispatchMessageChunk",["messageChunk","messageSize"]],[l.EnterInspectElementMode,"enterInspectElementMode",[]],[l.EyeDropperPickedColor,"eyeDropperPickedColor",["color"]],[l.FileSystemsLoaded,"fileSystemsLoaded",["fileSystems"]],[l.FileSystemRemoved,"fileSystemRemoved",["fileSystemPath"]],[l.FileSystemAdded,"fileSystemAdded",["errorMessage","fileSystem"]],[l.FileSystemFilesChangedAddedRemoved,"fileSystemFilesChangedAddedRemoved",["changed","added","removed"]],[l.IndexingTotalWorkCalculated,"indexingTotalWorkCalculated",["requestId","fileSystemPath","totalWork"]],[l.IndexingWorked,"indexingWorked",["requestId","fileSystemPath","worked"]],[l.IndexingDone,"indexingDone",["requestId","fileSystemPath"]],[l.KeyEventUnhandled,"keyEventUnhandled",["event"]],[l.ReattachMainTarget,"reattachMainTarget",[]],[l.ReloadInspectedPage,"reloadInspectedPage",["hard"]],[l.RevealSourceLine,"revealSourceLine",["url","lineNumber","columnNumber"]],[l.SavedURL,"savedURL",["url","fileSystemPath"]],[l.SearchCompleted,"searchCompleted",["requestId","fileSystemPath","files"]],[l.SetInspectedTabId,"setInspectedTabId",["tabId"]],[l.SetUseSoftMenu,"setUseSoftMenu",["useSoftMenu"]],[l.ShowPanel,"showPanel",["panelName"]]];const m={ActionTaken:"DevTools.ActionTaken",ColorPickerFixedColor:"DevTools.ColorPicker.FixedColor",PanelClosed:"DevTools.PanelClosed",PanelShown:"DevTools.PanelShown",SidebarPaneShown:"DevTools.SidebarPaneShown",KeyboardShortcutFired:"DevTools.KeyboardShortcutFired",IssueCreated:"DevTools.IssueCreated",IssuesPanelIssueExpanded:"DevTools.IssuesPanelIssueExpanded",IssuesPanelOpenedFrom:"DevTools.IssuesPanelOpenedFrom",IssuesPanelResourceOpened:"DevTools.IssuesPanelResourceOpened",KeybindSetSettingChanged:"DevTools.KeybindSetSettingChanged",DualScreenDeviceEmulated:"DevTools.DualScreenDeviceEmulated",ExperimentEnabledAtLaunch:"DevTools.ExperimentEnabledAtLaunch",ExperimentEnabled:"DevTools.ExperimentEnabled",ExperimentDisabled:"DevTools.ExperimentDisabled",CssEditorOpened:"DevTools.CssEditorOpened",DeveloperResourceLoaded:"DevTools.DeveloperResourceLoaded",DeveloperResourceScheme:"DevTools.DeveloperResourceScheme"};var S=Object.freeze({__proto__:null,Events:l,EventDescriptors:u,InspectorFrontendHostAPI:class{addFileSystem(e){}loadCompleted(){}indexPath(e,o,t){}setInspectedPageBounds(e){}showCertificateViewer(e){}setWhitelistedShortcuts(e){}setEyeDropperActive(e){}inspectElementCompleted(){}openInNewTab(e){}showItemInFolder(e){}removeFileSystem(e){}requestFileSystems(){}save(e,o,t){}append(e,o){}close(e){}searchInPath(e,o,t){}stopIndexing(e){}bringToFront(){}closeWindow(){}copyText(e){}inspectedURLChanged(e){}isolatedFileSystem(e,o){throw new Error("not implemented")}loadNetworkResource(e,o,t,n){}getPreferences(e){}setPreference(e,o){}removePreference(e){}clearPreferences(){}upgradeDraggedFileSystemPermissions(e){}platform(){throw new Error("Not implemented")}recordEnumeratedHistogram(e,o,t){}recordPerformanceHistogram(e,o){}recordUserMetricsAction(e){}sendMessageToBackend(e){}setDevicesDiscoveryConfig(e){}setDevicesUpdatesEnabled(e){}performActionOnRemotePage(e,o){}openRemotePage(e,o){}openNodeFrontend(){}setInjectedScriptForOrigin(e,o){}setIsDocked(e,o){}showSurvey(e,o){}canShowSurvey(e,o){}zoomFactor(){throw new Error("Not implemented")}zoomIn(){}zoomOut(){}resetZoom(){}showContextMenuAtPoint(e,o,t,n){}reattach(e){}readyForTest(){}connectionReady(){}setOpenNewWindowForPopups(e){}isHostedMode(){throw new Error("Not implemented")}setAddExtensionCallback(e){}},ContextMenuDescriptor:undefined,LoadNetworkResourceResult:undefined,ExtensionDescriptor:undefined,ShowSurveyResult:undefined,CanShowSurveyResult:undefined,EnumeratedHistogram:m});let g=0;const p={},h=function(e,o){p[e].write(o)};let v=function(o,t,n){const r=new e.StringOutputStream;y(o,t,r,(function(e,o,t){n(e,o,r.data(),t)}))};function C(e,o,t){if(void 0===e||void 0===t)return null;if(0!==e){if(function(e){return e<=-300&&e>-400}(e))return a`HTTP error: status code ${o}, ${t}`;return`${function(e){return e>-100?a`System error`:e>-200?a`Connection error`:e>-300?a`Certificate error`:e>-400?a`HTTP error`:e>-500?a`Cache error`:e>-600?a`Signed Exchange error`:e>-700?a`FTP error`:e>-800?a`Certificate manager error`:e>-900?a`DNS resolver error`:a`Unknown error`}(e)}: ${t}`}return null}const y=function(e,t,n,r){const s=function(e){return p[++g]=e,g}(n);if(new o.ParsedURL(e).isDataURL())return void(e=>new Promise(((o,t)=>{const n=new XMLHttpRequest;n.withCredentials=!1,n.open("GET",e,!0),n.onreadystatechange=function(){if(n.readyState===XMLHttpRequest.DONE){if(200!==n.status)return n.onreadystatechange=null,void t(new Error(String(n.status)));n.onreadystatechange=null,o(n.responseText)}},n.send(null)})))(e).then((function(e){h(s,e),d({statusCode:200})})).catch((function(e){d({statusCode:404,messageOverride:a`Decoding Data URL failed`})}));const i=[];if(t)for(const e in t)i.push(e+": "+t[e]);function d(e){if(r){const{success:o,description:t}=function(e){const{statusCode:o,netError:t,netErrorName:n,urlValid:r,messageOverride:s}=e;let i="";const d=o>=200&&o<300;if("string"==typeof s)i=s;else if(!d)if(void 0===t)i=!1===r?a`Invalid URL`:a`Unknown error`;else{const e=C(t,o,n);e&&(i=e)}return console.assert(d===(0===i.length)),{success:d,description:{statusCode:o,netError:t,netErrorName:n,urlValid:r,message:i}}}(e);r(o,e.headers||{},t)}var o;p[o=s].close(),delete p[o]}w.loadNetworkResource(e,i.join("\r\n"),s,d)};var f=Object.freeze({__proto__:null,ResourceLoader:{},streamWrite:h,LoadErrorDescription:undefined,get load(){return v},setLoadForTest:function(e){v=e},netErrorToMessage:C,loadAsStream:y});class b{constructor(){function e(e){!("mac"===this.platform()?e.metaKey:e.ctrlKey)||"+"!==e.key&&"-"!==e.key||e.stopPropagation()}document.addEventListener("keydown",(o=>{e.call(this,o)}),!0),this._urlsBeingSaved=new Map,this.events}platform(){const e=navigator.userAgent;return e.includes("Windows NT")?"windows":e.includes("Mac OS X")?"mac":"linux"}loadCompleted(){}bringToFront(){this._windowVisible=!0}closeWindow(){this._windowVisible=!1}setIsDocked(e,o){setTimeout(o,0)}showSurvey(e,o){setTimeout((()=>o({surveyShown:!1})),0)}canShowSurvey(e,o){setTimeout((()=>o({canShowSurvey:!1})),0)}setInspectedPageBounds(e){}inspectElementCompleted(){}setInjectedScriptForOrigin(e,o){}inspectedURLChanged(e){document.title=t.UIString("DevTools - %s",e.replace(/^https?:\/\//,""))}copyText(e){null!=e&&navigator.clipboard.writeText(e)}openInNewTab(e){window.open(e,"_blank")}showItemInFolder(e){n.Console.instance().error("Show item in folder is not enabled in hosted mode. Please inspect using chrome://inspect")}save(e,o,t){let n=this._urlsBeingSaved.get(e);n||(n=[],this._urlsBeingSaved.set(e,n)),n.push(o),this.events.dispatchEventToListeners(l.SavedURL,{url:e,fileSystemPath:e})}append(e,o){const t=this._urlsBeingSaved.get(e);t&&(t.push(o),this.events.dispatchEventToListeners(l.AppendedToURL,e))}close(e){const o=this._urlsBeingSaved.get(e)||[];this._urlsBeingSaved.delete(e);let t="";if(e)try{const o=d.trimURL(e);t=d.removeURLFragment(o)}catch(o){t=e}const n=document.createElement("a");n.download=t;const r=new Blob([o.join("")],{type:"text/plain"}),s=URL.createObjectURL(r);n.href=s,n.click(),URL.revokeObjectURL(s)}sendMessageToBackend(e){}recordEnumeratedHistogram(e,o,t){}recordPerformanceHistogram(e,o){}recordUserMetricsAction(e){}requestFileSystems(){this.events.dispatchEventToListeners(l.FileSystemsLoaded,[])}addFileSystem(e){}removeFileSystem(e){}isolatedFileSystem(e,o){return null}loadNetworkResource(e,o,t,n){c.loadResourcePromise(e).then((function(e){h(t,e),n({statusCode:200,headers:void 0,messageOverride:void 0,netError:void 0,netErrorName:void 0,urlValid:void 0})})).catch((function(){n({statusCode:404,headers:void 0,messageOverride:void 0,netError:void 0,netErrorName:void 0,urlValid:void 0})}))}getPreferences(e){const o={};for(const e in window.localStorage)o[e]=window.localStorage[e];e(o)}setPreference(e,o){window.localStorage[e]=o}removePreference(e){delete window.localStorage[e]}clearPreferences(){window.localStorage.clear()}upgradeDraggedFileSystemPermissions(e){}indexPath(e,o,t){}stopIndexing(e){}searchInPath(e,o,t){}zoomFactor(){return 1}zoomIn(){}zoomOut(){}resetZoom(){}setWhitelistedShortcuts(e){}setEyeDropperActive(e){}showCertificateViewer(e){}reattach(e){}readyForTest(){}connectionReady(){}setOpenNewWindowForPopups(e){}setDevicesDiscoveryConfig(e){}setDevicesUpdatesEnabled(e){}performActionOnRemotePage(e,o){}openRemotePage(e,o){}openNodeFrontend(){}showContextMenuAtPoint(e,o,t,n){throw"Soft context menu should be used"}isHostedMode(){return!0}setAddExtensionCallback(e){}}let w=window.InspectorFrontendHost;class k{constructor(){this._debugFrontend=Boolean(c.Runtime.queryParam("debugFrontend"))||window.InspectorTest&&window.InspectorTest.debugTest;for(const e of u)this[e[1]]=this._dispatch.bind(this,e[0],e[2],e[3])}_dispatch(e,o,t,...n){function r(){if(o.length<2){try{w.events.dispatchEventToListeners(e,n[0])}catch(e){console.error(e+" "+e.stack)}return}const t={};for(let e=0;e<o.length;++e)t[o[e]]=n[e];try{w.events.dispatchEventToListeners(e,t)}catch(e){console.error(e+" "+e.stack)}}this._debugFrontend?setTimeout((()=>r()),0):r()}streamWrite(e,o){h(e,o)}}!function(){let e;if(w){e=b.prototype;for(const o of Object.getOwnPropertyNames(e)){const t=e[o];"function"!=typeof t||w[o]||(console.error(`Incompatible embedder: method Host.InspectorFrontendHost.${o} is missing. Using stub instead.`),w[o]=t)}}else window.InspectorFrontendHost=w=new b;w.events=new r.ObjectWrapper}(),window.InspectorFrontendAPI=new k;var E=Object.freeze({__proto__:null,InspectorFrontendHostStub:b,get InspectorFrontendHostInstance(){return w},isUnderTest:function(e){return!!c.Runtime.queryParam("test")||(e?"true"===e.isUnderTest:s.Settings.hasInstance()&&s.Settings.instance().createSetting("isUnderTest",!1).get())}});let P,I,T,D,R;function x(){return P||(P=w.platform()),P}var F=Object.freeze({__proto__:null,platform:x,isMac:function(){return void 0===I&&(I="mac"===x()),I},isWin:function(){return void 0===T&&(T="windows"===x()),T},isCustomDevtoolsFrontend:function(){return void 0===D&&(D=window.location.toString().startsWith("devtools://devtools/custom/")),D},fontFamily:function(){if(R)return R;switch(x()){case"linux":R="Roboto, Ubuntu, Arial, sans-serif";break;case"mac":R="'Lucida Grande', sans-serif";break;case"windows":R="'Segoe UI', Tahoma, sans-serif"}return R}});class L{constructor(){this._panelChangedSinceLaunch=!1,this._firedLaunchHistogram=!1,this._launchPanelName=""}colorFixed(e){const o=M[e];if(void 0===o)return void console.warn("Unknown contrast threshold: "+e);const t=Object.keys(M).length+1;w.recordEnumeratedHistogram(m.ColorPickerFixedColor,o,t),i.fireEvent(m.ColorPickerFixedColor,{value:o})}panelShown(e){const o=U[e]||0,t=Object.keys(U).length+1;w.recordEnumeratedHistogram(m.PanelShown,o,t),i.fireEvent(m.PanelShown,{value:o}),this._panelChangedSinceLaunch=!0}panelClosed(e){const o=U[e]||0,t=Object.keys(U).length+1;w.recordEnumeratedHistogram(m.PanelClosed,o,t),i.fireEvent(m.PanelClosed,{value:o}),this._panelChangedSinceLaunch=!0}sidebarPaneShown(e){const o=A[e]||0,t=Object.keys(A).length+1;w.recordEnumeratedHistogram(m.SidebarPaneShown,o,t),i.fireEvent(m.SidebarPaneShown,{value:o})}settingsPanelShown(e){this.panelShown("settings-"+e)}actionTaken(e){const o=Object.keys(O).length+1;w.recordEnumeratedHistogram(m.ActionTaken,e,o),i.fireEvent(m.ActionTaken,{value:e})}panelLoaded(e,o){this._firedLaunchHistogram||e!==this._launchPanelName||(this._firedLaunchHistogram=!0,requestAnimationFrame((()=>{setTimeout((()=>{performance.mark(o),this._panelChangedSinceLaunch||(w.recordPerformanceHistogram(o,performance.now()),i.fireEvent("DevTools.PanelLoaded",{value:{panelName:e,histogramName:o}}))}),0)})))}setLaunchPanel(e){this._launchPanelName=e}keybindSetSettingChanged(e){const o=Object.keys(H).length+1,t=H[e]||0;w.recordEnumeratedHistogram(m.KeybindSetSettingChanged,t,o),i.fireEvent(m.KeybindSetSettingChanged,{value:t})}keyboardShortcutFired(e){const o=Object.keys(_).length+1,t=_[e]||_.OtherShortcut;w.recordEnumeratedHistogram(m.KeyboardShortcutFired,t,o),i.fireEvent(m.KeyboardShortcutFired,{value:t})}issuesPanelOpenedFrom(e){const o=Object.keys(N).length+1;w.recordEnumeratedHistogram(m.IssuesPanelOpenedFrom,e,o),i.fireEvent(m.IssuesPanelOpenedFrom,{value:e})}issuesPanelIssueExpanded(e){if(void 0===e)return;const o=Object.keys(B).length+1,t=B[e];void 0!==t&&(w.recordEnumeratedHistogram(m.IssuesPanelIssueExpanded,t,o),i.fireEvent(m.IssuesPanelIssueExpanded,{value:t}))}issuesPanelResourceOpened(e,o){const t=Object.keys(q).length+1,n=e.description+o,r=q[n];void 0!==r&&(w.recordEnumeratedHistogram(m.IssuesPanelResourceOpened,r,t),i.fireEvent(m.IssuesPanelResourceOpened,{value:r}))}issueCreated(e){const o=Object.keys(z).length+1,t=z[e];void 0!==t&&(w.recordEnumeratedHistogram(m.IssueCreated,t,o),i.fireEvent(m.IssueCreated,{value:t}))}dualScreenDeviceEmulated(e){const o=Object.keys(W).length+1;w.recordEnumeratedHistogram(m.DualScreenDeviceEmulated,e,o),i.fireEvent(m.DualScreenDeviceEmulated,{value:e})}cssEditorOpened(e){const o=Object.keys(j).length+1,t=j[e];void 0!==t&&(w.recordEnumeratedHistogram(m.CssEditorOpened,t,o),i.fireEvent(m.CssEditorOpened,{value:t}))}experimentEnabledAtLaunch(e){const o=V.__lastValidEnumPosition+1,t=V[e];void 0!==t&&(w.recordEnumeratedHistogram(m.ExperimentEnabledAtLaunch,t,o),i.fireEvent(m.ExperimentEnabledAtLaunch,{value:t}))}experimentChanged(e,o){const t=V.__lastValidEnumPosition+1,n=V[e];if(void 0===n)return;const r=o?m.ExperimentEnabled:m.ExperimentDisabled;w.recordEnumeratedHistogram(r,n,t),i.fireEvent(r,{value:n})}developerResourceLoaded(e){const o=Object.keys(K).length+1;e>=o||(w.recordEnumeratedHistogram(m.DeveloperResourceLoaded,e,o),i.fireEvent(m.DeveloperResourceLoaded,{value:e}))}developerResourceScheme(e){const o=Object.keys(G).length+1;e>=o||(w.recordEnumeratedHistogram(m.DeveloperResourceScheme,e,o),i.fireEvent(m.DeveloperResourceScheme,{value:e}))}}const O={WindowDocked:1,WindowUndocked:2,ScriptsBreakpointSet:3,TimelineStarted:4,ProfilesCPUProfileTaken:5,ProfilesHeapProfileTaken:6,"LegacyAuditsStarted-deprecated":7,ConsoleEvaluated:8,FileSavedInWorkspace:9,DeviceModeEnabled:10,AnimationsPlaybackRateChanged:11,RevisionApplied:12,FileSystemDirectoryContentReceived:13,StyleRuleEdited:14,CommandEvaluatedInConsolePanel:15,DOMPropertiesExpanded:16,ResizedViewInResponsiveMode:17,TimelinePageReloadStarted:18,ConnectToNodeJSFromFrontend:19,ConnectToNodeJSDirectly:20,CpuThrottlingEnabled:21,CpuProfileNodeFocused:22,CpuProfileNodeExcluded:23,SelectFileFromFilePicker:24,SelectCommandFromCommandMenu:25,ChangeInspectedNodeInElementsPanel:26,StyleRuleCopied:27,CoverageStarted:28,LighthouseStarted:29,LighthouseFinished:30,ShowedThirdPartyBadges:31,LighthouseViewTrace:32,FilmStripStartedRecording:33,CoverageReportFiltered:34,CoverageStartedPerBlock:35,"SettingsOpenedFromGear-deprecated":36,"SettingsOpenedFromMenu-deprecated":37,"SettingsOpenedFromCommandMenu-deprecated":38,TabMovedToDrawer:39,TabMovedToMainPanel:40,CaptureCssOverviewClicked:41,VirtualAuthenticatorEnvironmentEnabled:42,SourceOrderViewActivated:43,UserShortcutAdded:44,ShortcutRemoved:45,ShortcutModified:46,CustomPropertyLinkClicked:47,CustomPropertyEdited:48,ServiceWorkerNetworkRequestClicked:49,ServiceWorkerNetworkRequestClosedQuickly:50,NetworkPanelServiceWorkerRespondWith:51,NetworkPanelCopyValue:52},M={aa:0,aaa:1},U={elements:1,resources:2,network:3,sources:4,timeline:5,heap_profiler:6,"legacy-audits-deprecated":7,console:8,layers:9,"console-view":10,animations:11,"network.config":12,rendering:13,sensors:14,"sources.search":15,security:16,js_profiler:17,lighthouse:18,coverage:19,"protocol-monitor":20,"remote-devices":21,"web-audio":22,"changes.changes":23,"performance.monitor":24,"release-note":25,live_heap_profile:26,"sources.quick":27,"network.blocked-urls":28,"settings-preferences":29,"settings-workspace":30,"settings-experiments":31,"settings-blackbox":32,"settings-devices":33,"settings-throttling-conditions":34,"settings-emulation-locations":35,"settings-shortcuts":36,"issues-pane":37,"settings-keybinds":38,cssoverview:39},A={OtherSidebarPane:0,Styles:1,Computed:2,"elements.layout":3,"elements.eventListeners":4,"elements.domBreakpoints":5,"elements.domProperties":6,"accessibility.view":7},H={devToolsDefault:0,vsCode:1},_={OtherShortcut:0,"commandMenu.show":1,"console.clear":2,"console.show":3,"debugger.step":4,"debugger.step-into":5,"debugger.step-out":6,"debugger.step-over":7,"debugger.toggle-breakpoint":8,"debugger.toggle-breakpoint-enabled":9,"debugger.toggle-pause":10,"elements.edit-as-html":11,"elements.hide-element":12,"elements.redo":13,"elements.toggle-element-search":14,"elements.undo":15,"main.search-in-panel.find":16,"main.toggle-drawer":17,"network.hide-request-details":18,"network.search":19,"network.toggle-recording":20,"quickOpen.show":21,"settings.show":22,"sources.search":23,"background-service.toggle-recording":24,"components.collect-garbage":25,"console.clear.history":26,"console.create-pin":27,"coverage.start-with-reload":28,"coverage.toggle-recording":29,"debugger.breakpoint-input-window":30,"debugger.evaluate-selection":31,"debugger.next-call-frame":32,"debugger.previous-call-frame":33,"debugger.run-snippet":34,"debugger.toggle-breakpoints-active":35,"elements.capture-area-screenshot":36,"emulation.capture-full-height-screenshot":37,"emulation.capture-node-screenshot":38,"emulation.capture-screenshot":39,"emulation.show-sensors":40,"emulation.toggle-device-mode":41,"help.release-notes":42,"help.report-issue":43,"input.start-replaying":44,"input.toggle-pause":45,"input.toggle-recording":46,"inspector_main.focus-debuggee":47,"inspector_main.hard-reload":48,"inspector_main.reload":49,"live-heap-profile.start-with-reload":50,"live-heap-profile.toggle-recording":51,"main.debug-reload":52,"main.next-tab":53,"main.previous-tab":54,"main.search-in-panel.cancel":55,"main.search-in-panel.find-next":56,"main.search-in-panel.find-previous":57,"main.toggle-dock":58,"main.zoom-in":59,"main.zoom-out":60,"main.zoom-reset":61,"network-conditions.network-low-end-mobile":62,"network-conditions.network-mid-tier-mobile":63,"network-conditions.network-offline":64,"network-conditions.network-online":65,"profiler.heap-toggle-recording":66,"profiler.js-toggle-recording":67,"resources.clear":68,"settings.documentation":69,"settings.shortcuts":70,"sources.add-folder-to-workspace":71,"sources.add-to-watch":72,"sources.close-all":73,"sources.close-editor-tab":74,"sources.create-snippet":75,"sources.go-to-line":76,"sources.go-to-member":77,"sources.jump-to-next-location":78,"sources.jump-to-previous-location":79,"sources.rename":80,"sources.save":81,"sources.save-all":82,"sources.switch-file":83,"timeline.jump-to-next-frame":84,"timeline.jump-to-previous-frame":85,"timeline.load-from-file":86,"timeline.next-recording":87,"timeline.previous-recording":88,"timeline.record-reload":89,"timeline.save-to-file":90,"timeline.show-history":91,"timeline.toggle-recording":92,"sources.increment-css":93,"sources.increment-css-by-ten":94,"sources.decrement-css":95,"sources.decrement-css-by-ten":96,"layers.reset-view":97,"layers.pan-mode":98,"layers.rotate-mode":99,"layers.zoom-in":100,"layers.zoom-out":101,"layers.up":102,"layers.down":103,"layers.left":104,"layers.right":105},N={ConsoleInfoBar:0,LearnMoreLinkCOEP:1,StatusBarIssuesCounter:2,HamburgerMenu:3,Adorner:4,CommandMenu:5},W={DualScreenDeviceSelected:0,SpanButtonClicked:1,PlatformSupportUsed:2},j={colorPicker:0,shadowEditor:1,bezierEditor:2,fontEditor:3},V={applyCustomStylesheet:0,captureNodeCreationStacks:1,sourcesPrettyPrint:2,backgroundServices:3,backgroundServicesNotifications:4,backgroundServicesPaymentHandler:5,backgroundServicesPushMessaging:6,blackboxJSFramesOnTimeline:7,cssOverview:8,emptySourceMapAutoStepping:9,inputEventsOnTimelineOverview:10,liveHeapProfile:11,protocolMonitor:13,developerResourcesView:15,recordCoverageWithPerformanceTracing:16,samplingHeapProfilerTimeline:17,showOptionToNotTreatGlobalObjectsAsRoots:18,sourceDiff:19,sourceOrderViewer:20,spotlight:21,webauthnPane:22,timelineEventInitiators:24,timelineInvalidationTracking:26,timelineShowAllEvents:27,timelineV8RuntimeCallStats:28,timelineWebGL:29,timelineReplayEvent:30,wasmDWARFDebugging:31,dualScreenSupport:32,keyboardShortcutEditor:35,cssFlexboxFeatures:36,recorder:38,APCA:39,cspViolationsView:40,fontEditor:41,fullAccessibilityTree:42,ignoreListJSFramesOnTimeline:43,__lastValidEnumPosition:43},B={CrossOriginEmbedderPolicy:0,MixedContent:1,SameSiteCookie:2,HeavyAd:3,ContentSecurityPolicy:4,Other:5},q={CrossOriginEmbedderPolicyRequest:0,CrossOriginEmbedderPolicyElement:1,MixedContentRequest:2,SameSiteCookieCookie:3,SameSiteCookieRequest:4,HeavyAdElement:5,ContentSecurityPolicyDirective:6,ContentSecurityPolicyElement:7,CrossOriginEmbedderPolicyLearnMore:8,MixedContentLearnMore:9,SameSiteCookieLearnMore:10,HeavyAdLearnMore:11,ContentSecurityPolicyLearnMore:12},z={MixedContentIssue:0,"ContentSecurityPolicyIssue::kInlineViolation":1,"ContentSecurityPolicyIssue::kEvalViolation":2,"ContentSecurityPolicyIssue::kURLViolation":3,"ContentSecurityPolicyIssue::kTrustedTypesSinkViolation":4,"ContentSecurityPolicyIssue::kTrustedTypesPolicyViolation":5,"HeavyAdIssue::NetworkTotalLimit":6,"HeavyAdIssue::CpuTotalLimit":7,"HeavyAdIssue::CpuPeakLimit":8,"CrossOriginEmbedderPolicyIssue::CoepFrameResourceNeedsCoepHeader":9,"CrossOriginEmbedderPolicyIssue::CoopSandboxedIFrameCannotNavigateToCoopPage":10,"CrossOriginEmbedderPolicyIssue::CorpNotSameOrigin":11,"CrossOriginEmbedderPolicyIssue::CorpNotSameOriginAfterDefaultedToSameOriginByCoep":12,"CrossOriginEmbedderPolicyIssue::CorpNotSameSite":13,"SameSiteCookieIssue::ExcludeSameSiteNoneInsecure::ReadCookie":14,"SameSiteCookieIssue::ExcludeSameSiteNoneInsecure::SetCookie":15,"SameSiteCookieIssue::WarnSameSiteNoneInsecure::ReadCookie":16,"SameSiteCookieIssue::WarnSameSiteNoneInsecure::SetCookie":17,"SameSiteCookieIssue::WarnSameSiteStrictLaxDowngradeStrict::Secure":18,"SameSiteCookieIssue::WarnSameSiteStrictLaxDowngradeStrict::Insecure":19,"SameSiteCookieIssue::WarnCrossDowngrade::ReadCookie::Secure":20,"SameSiteCookieIssue::WarnCrossDowngrade::ReadCookie::Insecure":21,"SameSiteCookieIssue::WarnCrossDowngrade::SetCookie::Secure":22,"SameSiteCookieIssue::WarnCrossDowngrade::SetCookie::Insecure":23,"SameSiteCookieIssue::ExcludeNavigationContextDowngrade::Secure":24,"SameSiteCookieIssue::ExcludeNavigationContextDowngrade::Insecure":25,"SameSiteCookieIssue::ExcludeContextDowngrade::ReadCookie::Secure":26,"SameSiteCookieIssue::ExcludeContextDowngrade::ReadCookie::Insecure":27,"SameSiteCookieIssue::ExcludeContextDowngrade::SetCookie::Secure":28,"SameSiteCookieIssue::ExcludeContextDowngrade::SetCookie::Insecure":29,"SameSiteCookieIssue::ExcludeSameSiteUnspecifiedTreatedAsLax::ReadCookie":30,"SameSiteCookieIssue::ExcludeSameSiteUnspecifiedTreatedAsLax::SetCookie":31,"SameSiteCookieIssue::WarnSameSiteUnspecifiedLaxAllowUnsafe::ReadCookie":32,"SameSiteCookieIssue::WarnSameSiteUnspecifiedLaxAllowUnsafe::SetCookie":33,"SameSiteCookieIssue::WarnSameSiteUnspecifiedCrossSiteContext::ReadCookie":34,"SameSiteCookieIssue::WarnSameSiteUnspecifiedCrossSiteContext::SetCookie":35},K={LoadThroughPageViaTarget:0,LoadThroughPageViaFrame:1,LoadThroughPageFailure:2,LoadThroughPageFallback:3,FallbackAfterFailure:4,FallbackPerOverride:5,FallbackPerProtocol:6,FallbackFailure:7},G={SchemeOther:0,SchemeUnknown:1,SchemeHttp:2,SchemeHttps:3,SchemeHttpLocalhost:4,SchemeHttpsLocalhost:5,SchemeData:6,SchemeFile:7,SchemeBlob:8};var $=Object.freeze({__proto__:null,UserMetrics:L,Action:O,ContrastThresholds:M,PanelCodes:U,SidebarPaneCodes:A,KeybindSetSettings:H,KeyboardShortcutAction:_,IssueOpener:N,DualScreenDeviceEmulated:W,CssEditorOpened:j,DevtoolsExperiments:V,IssueExpanded:B,IssueResourceOpened:q,IssueCreated:z,DeveloperResourceLoaded:K,DeveloperResourceScheme:G});const J=new L;export{E as InspectorFrontendHost,S as InspectorFrontendHostAPI,F as Platform,f as ResourceLoader,$ as UserMetrics,J as userMetrics};
@@ -0,0 +1 @@
1
+ import{StringUtilities as t}from"../platform/platform.js";import e from"../third_party/i18n/i18n.js";const r=e.registerLocaleData;let n,o;function i(t,r,o={}){if(!n)throw new Error(`Unsupported locale '${n}'`);const i=t(r,o);return e.getFormatted(i,n)}function a(e,r){const n={s:t=>t};return t.format(e,r,n,document.createElement("span"),(function(t,e){return t.appendChild("string"==typeof e?document.createTextNode(e):e),t})).formattedResult}var c=Object.freeze({__proto__:null,registerLocaleData:r,get registeredLocale(){return n},registerLocale:function(t){n=e.lookupLocale(t)},getLazilyComputedLocalizedString:function(t,e,r={}){return()=>i(t,e,r)},getLocalizedString:i,registerUIStrings:function(t,r){return(i,a)=>{try{return e.createMessageInstanceIdFn(t,r)(i,a)}catch(t){if(t instanceof e.idNotInMainDictionaryException){const t=Object.getOwnPropertyNames(function(){if(!n)throw new Error(`Unsupported locale '${n}'`);return o=o||e.getRendererFormattedStrings(n),o}()),r=t.indexOf(i);if(r>=0)return t[r]}return i}}},getFormatLocalizedString:function(t,r,o){if(!n)throw new Error(`Unsupported locale '${n}'`);const i=t(r,o),c=e.getFormatter(i,n).getAst().elements,s=[];let u="";for(const t of c){if("argumentElement"===t.type){const e=o[t.id];e&&(s.push(e),t.value="%s")}u+=t.value}return a(u,s)},formatLocalized:a,serializeUIString:function(t,e=[]){const r={string:t,values:e};return JSON.stringify(r)},deserializeUIString:function(t){return t?JSON.parse(t):{}}});export{c as i18n};
@@ -0,0 +1,8 @@
1
+ {
2
+ "compilerOptions": {
3
+ "composite": true
4
+ },
5
+ "files": [
6
+ "locales/en-US.json"
7
+ ]
8
+ }