lighthouse 9.6.8 → 10.0.0-dev.20230210

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 (1437) hide show
  1. package/.gitattributes +4 -1
  2. package/CONTRIBUTING.md +15 -15
  3. package/build-tracker.config.js +0 -1
  4. package/changelog-pre10.md +6085 -0
  5. package/cli/bin.d.ts +5 -0
  6. package/cli/bin.js +140 -0
  7. package/cli/cli-flags.d.ts +258 -0
  8. package/cli/cli-flags.js +553 -0
  9. package/cli/commands/commands.d.ts +4 -0
  10. package/cli/commands/commands.js +9 -0
  11. package/cli/commands/list-audits.d.ts +2 -0
  12. package/cli/commands/list-audits.js +15 -0
  13. package/cli/commands/list-locales.d.ts +2 -0
  14. package/cli/commands/list-locales.js +15 -0
  15. package/cli/commands/list-trace-categories.d.ts +2 -0
  16. package/cli/commands/list-trace-categories.js +14 -0
  17. package/cli/index.d.ts +3 -0
  18. package/cli/index.js +10 -0
  19. package/cli/printer.d.ts +28 -0
  20. package/cli/printer.js +99 -0
  21. package/cli/run.d.ts +24 -0
  22. package/cli/run.js +284 -0
  23. package/cli/sentry-prompt.d.ts +5 -0
  24. package/cli/sentry-prompt.js +78 -0
  25. package/cli/test/smokehouse/__snapshots__/report-assert-test.js.snap +71 -0
  26. package/cli/test/smokehouse/config/exclusions.d.ts +12 -0
  27. package/cli/test/smokehouse/config/exclusions.js +36 -0
  28. package/cli/test/smokehouse/core-tests.d.ts +4 -0
  29. package/cli/test/smokehouse/core-tests.js +134 -0
  30. package/cli/test/smokehouse/frontends/back-compat-util.d.ts +16 -0
  31. package/cli/test/smokehouse/frontends/back-compat-util.js +41 -0
  32. package/cli/test/smokehouse/frontends/lib.d.ts +8 -0
  33. package/cli/test/smokehouse/frontends/lib.js +48 -0
  34. package/cli/test/smokehouse/frontends/node.d.ts +2 -0
  35. package/cli/test/smokehouse/frontends/node.js +12 -0
  36. package/cli/test/smokehouse/frontends/smokehouse-bin.d.ts +3 -0
  37. package/cli/test/smokehouse/frontends/smokehouse-bin.js +258 -0
  38. package/cli/test/smokehouse/lib/child-process-error.d.ts +21 -0
  39. package/cli/test/smokehouse/lib/child-process-error.js +25 -0
  40. package/cli/test/smokehouse/lib/concurrent-mapper.d.ts +78 -0
  41. package/cli/test/smokehouse/lib/concurrent-mapper.js +125 -0
  42. package/cli/test/smokehouse/lib/local-console.d.ts +33 -0
  43. package/cli/test/smokehouse/lib/local-console.js +50 -0
  44. package/cli/test/smokehouse/lighthouse-runners/bundle.d.ts +16 -0
  45. package/cli/test/smokehouse/lighthouse-runners/bundle.js +158 -0
  46. package/cli/test/smokehouse/lighthouse-runners/cli.d.ts +18 -0
  47. package/cli/test/smokehouse/lighthouse-runners/cli.js +134 -0
  48. package/cli/test/smokehouse/lighthouse-runners/devtools.d.ts +23 -0
  49. package/cli/test/smokehouse/lighthouse-runners/devtools.js +72 -0
  50. package/cli/test/smokehouse/readme.md +208 -0
  51. package/cli/test/smokehouse/report-assert-test.d.ts +2 -0
  52. package/cli/test/smokehouse/report-assert-test.js +298 -0
  53. package/cli/test/smokehouse/report-assert.d.ts +50 -0
  54. package/cli/test/smokehouse/report-assert.js +520 -0
  55. package/cli/test/smokehouse/smokehouse.d.ts +35 -0
  56. package/cli/test/smokehouse/smokehouse.js +336 -0
  57. package/cli/test/smokehouse/version-check-test.d.ts +2 -0
  58. package/cli/test/smokehouse/version-check-test.js +43 -0
  59. package/cli/test/smokehouse/version-check.d.ts +15 -0
  60. package/cli/test/smokehouse/version-check.js +48 -0
  61. package/commitlint.config.js +0 -1
  62. package/core/audits/accessibility/accesskeys.d.ts +10 -0
  63. package/core/audits/accessibility/accesskeys.js +44 -0
  64. package/core/audits/accessibility/aria-allowed-attr.d.ts +10 -0
  65. package/core/audits/accessibility/aria-allowed-attr.js +44 -0
  66. package/core/audits/accessibility/aria-command-name.d.ts +10 -0
  67. package/core/audits/accessibility/aria-command-name.js +42 -0
  68. package/core/audits/accessibility/aria-hidden-body.d.ts +10 -0
  69. package/core/audits/accessibility/aria-hidden-body.js +42 -0
  70. package/core/audits/accessibility/aria-hidden-focus.d.ts +10 -0
  71. package/core/audits/accessibility/aria-hidden-focus.js +42 -0
  72. package/core/audits/accessibility/aria-input-field-name.d.ts +10 -0
  73. package/core/audits/accessibility/aria-input-field-name.js +42 -0
  74. package/core/audits/accessibility/aria-meter-name.d.ts +10 -0
  75. package/core/audits/accessibility/aria-meter-name.js +42 -0
  76. package/core/audits/accessibility/aria-progressbar-name.d.ts +10 -0
  77. package/core/audits/accessibility/aria-progressbar-name.js +42 -0
  78. package/core/audits/accessibility/aria-required-attr.d.ts +10 -0
  79. package/core/audits/accessibility/aria-required-attr.js +43 -0
  80. package/core/audits/accessibility/aria-required-children.d.ts +10 -0
  81. package/core/audits/accessibility/aria-required-children.js +47 -0
  82. package/core/audits/accessibility/aria-required-parent.d.ts +10 -0
  83. package/core/audits/accessibility/aria-required-parent.js +45 -0
  84. package/core/audits/accessibility/aria-roles.d.ts +10 -0
  85. package/core/audits/accessibility/aria-roles.js +44 -0
  86. package/core/audits/accessibility/aria-toggle-field-name.d.ts +10 -0
  87. package/core/audits/accessibility/aria-toggle-field-name.js +42 -0
  88. package/core/audits/accessibility/aria-tooltip-name.d.ts +10 -0
  89. package/core/audits/accessibility/aria-tooltip-name.js +42 -0
  90. package/core/audits/accessibility/aria-treeitem-name.d.ts +10 -0
  91. package/core/audits/accessibility/aria-treeitem-name.js +42 -0
  92. package/core/audits/accessibility/aria-valid-attr-value.d.ts +10 -0
  93. package/core/audits/accessibility/aria-valid-attr-value.js +44 -0
  94. package/core/audits/accessibility/aria-valid-attr.d.ts +10 -0
  95. package/core/audits/accessibility/aria-valid-attr.js +44 -0
  96. package/core/audits/accessibility/axe-audit.d.ts +17 -0
  97. package/core/audits/accessibility/axe-audit.js +113 -0
  98. package/core/audits/accessibility/button-name.d.ts +10 -0
  99. package/core/audits/accessibility/button-name.js +44 -0
  100. package/core/audits/accessibility/bypass.d.ts +10 -0
  101. package/core/audits/accessibility/bypass.js +46 -0
  102. package/core/audits/accessibility/color-contrast.d.ts +10 -0
  103. package/core/audits/accessibility/color-contrast.js +45 -0
  104. package/core/audits/accessibility/definition-list.d.ts +10 -0
  105. package/core/audits/accessibility/definition-list.js +46 -0
  106. package/core/audits/accessibility/dlitem.d.ts +10 -0
  107. package/core/audits/accessibility/dlitem.js +44 -0
  108. package/core/audits/accessibility/document-title.d.ts +10 -0
  109. package/core/audits/accessibility/document-title.js +44 -0
  110. package/core/audits/accessibility/duplicate-id-active.d.ts +10 -0
  111. package/core/audits/accessibility/duplicate-id-active.js +42 -0
  112. package/core/audits/accessibility/duplicate-id-aria.d.ts +10 -0
  113. package/core/audits/accessibility/duplicate-id-aria.js +42 -0
  114. package/core/audits/accessibility/form-field-multiple-labels.d.ts +10 -0
  115. package/core/audits/accessibility/form-field-multiple-labels.js +43 -0
  116. package/core/audits/accessibility/frame-title.d.ts +10 -0
  117. package/core/audits/accessibility/frame-title.js +43 -0
  118. package/core/audits/accessibility/heading-order.d.ts +10 -0
  119. package/core/audits/accessibility/heading-order.js +42 -0
  120. package/core/audits/accessibility/html-has-lang.d.ts +10 -0
  121. package/core/audits/accessibility/html-has-lang.js +46 -0
  122. package/core/audits/accessibility/html-lang-valid.d.ts +10 -0
  123. package/core/audits/accessibility/html-lang-valid.js +45 -0
  124. package/core/audits/accessibility/image-alt.d.ts +10 -0
  125. package/core/audits/accessibility/image-alt.js +44 -0
  126. package/core/audits/accessibility/input-image-alt.d.ts +10 -0
  127. package/core/audits/accessibility/input-image-alt.js +44 -0
  128. package/core/audits/accessibility/label.d.ts +10 -0
  129. package/core/audits/accessibility/label.js +44 -0
  130. package/core/audits/accessibility/link-name.d.ts +10 -0
  131. package/core/audits/accessibility/link-name.js +45 -0
  132. package/core/audits/accessibility/list.d.ts +10 -0
  133. package/core/audits/accessibility/list.js +46 -0
  134. package/core/audits/accessibility/listitem.d.ts +10 -0
  135. package/core/audits/accessibility/listitem.js +45 -0
  136. package/core/audits/accessibility/manual/custom-controls-labels.d.ts +8 -0
  137. package/core/audits/accessibility/manual/custom-controls-labels.js +27 -0
  138. package/core/audits/accessibility/manual/custom-controls-roles.d.ts +8 -0
  139. package/core/audits/accessibility/manual/custom-controls-roles.js +27 -0
  140. package/core/audits/accessibility/manual/focus-traps.d.ts +8 -0
  141. package/core/audits/accessibility/manual/focus-traps.js +27 -0
  142. package/core/audits/accessibility/manual/focusable-controls.d.ts +8 -0
  143. package/core/audits/accessibility/manual/focusable-controls.js +27 -0
  144. package/core/audits/accessibility/manual/interactive-element-affordance.d.ts +8 -0
  145. package/core/audits/accessibility/manual/interactive-element-affordance.js +27 -0
  146. package/core/audits/accessibility/manual/logical-tab-order.d.ts +8 -0
  147. package/core/audits/accessibility/manual/logical-tab-order.js +27 -0
  148. package/core/audits/accessibility/manual/managed-focus.d.ts +8 -0
  149. package/core/audits/accessibility/manual/managed-focus.js +27 -0
  150. package/core/audits/accessibility/manual/offscreen-content-hidden.d.ts +9 -0
  151. package/core/audits/accessibility/manual/offscreen-content-hidden.js +28 -0
  152. package/core/audits/accessibility/manual/use-landmarks.d.ts +8 -0
  153. package/core/audits/accessibility/manual/use-landmarks.js +27 -0
  154. package/core/audits/accessibility/manual/visual-order-follows-dom.d.ts +8 -0
  155. package/core/audits/accessibility/manual/visual-order-follows-dom.js +27 -0
  156. package/core/audits/accessibility/meta-refresh.d.ts +10 -0
  157. package/core/audits/accessibility/meta-refresh.js +45 -0
  158. package/core/audits/accessibility/meta-viewport.d.ts +10 -0
  159. package/core/audits/accessibility/meta-viewport.js +46 -0
  160. package/core/audits/accessibility/object-alt.d.ts +10 -0
  161. package/core/audits/accessibility/object-alt.js +44 -0
  162. package/core/audits/accessibility/tabindex.d.ts +10 -0
  163. package/core/audits/accessibility/tabindex.js +44 -0
  164. package/core/audits/accessibility/td-headers-attr.d.ts +10 -0
  165. package/core/audits/accessibility/td-headers-attr.js +48 -0
  166. package/core/audits/accessibility/th-has-data-cells.d.ts +10 -0
  167. package/core/audits/accessibility/th-has-data-cells.js +48 -0
  168. package/core/audits/accessibility/valid-lang.d.ts +10 -0
  169. package/core/audits/accessibility/valid-lang.js +44 -0
  170. package/core/audits/accessibility/video-caption.d.ts +10 -0
  171. package/core/audits/accessibility/video-caption.js +46 -0
  172. package/core/audits/audit.d.ts +157 -0
  173. package/core/audits/audit.js +405 -0
  174. package/core/audits/autocomplete.d.ts +36 -0
  175. package/core/audits/autocomplete.js +290 -0
  176. package/core/audits/bf-cache.d.ts +21 -0
  177. package/core/audits/bf-cache.js +120 -0
  178. package/core/audits/bootup-time.d.ts +26 -0
  179. package/core/audits/bootup-time.js +151 -0
  180. package/core/audits/byte-efficiency/byte-efficiency-audit.d.ts +82 -0
  181. package/core/audits/byte-efficiency/byte-efficiency-audit.js +260 -0
  182. package/core/audits/byte-efficiency/duplicated-javascript.d.ts +52 -0
  183. package/core/audits/byte-efficiency/duplicated-javascript.js +247 -0
  184. package/core/audits/byte-efficiency/efficient-animated-content.d.ts +23 -0
  185. package/core/audits/byte-efficiency/efficient-animated-content.js +92 -0
  186. package/core/audits/byte-efficiency/legacy-javascript.d.ts +100 -0
  187. package/core/audits/byte-efficiency/legacy-javascript.js +479 -0
  188. package/core/audits/byte-efficiency/modern-image-formats.d.ts +38 -0
  189. package/core/audits/byte-efficiency/modern-image-formats.js +186 -0
  190. package/core/audits/byte-efficiency/offscreen-images.d.ts +75 -0
  191. package/core/audits/byte-efficiency/offscreen-images.js +253 -0
  192. package/{lighthouse-core → core}/audits/byte-efficiency/polyfill-graph-data.json +0 -0
  193. package/core/audits/byte-efficiency/render-blocking-resources.d.ts +55 -0
  194. package/core/audits/byte-efficiency/render-blocking-resources.js +307 -0
  195. package/core/audits/byte-efficiency/total-byte-weight.d.ts +21 -0
  196. package/core/audits/byte-efficiency/total-byte-weight.js +109 -0
  197. package/core/audits/byte-efficiency/unminified-css.d.ts +36 -0
  198. package/core/audits/byte-efficiency/unminified-css.js +114 -0
  199. package/core/audits/byte-efficiency/unminified-javascript.d.ts +37 -0
  200. package/core/audits/byte-efficiency/unminified-javascript.js +118 -0
  201. package/core/audits/byte-efficiency/unused-css-rules.d.ts +16 -0
  202. package/core/audits/byte-efficiency/unused-css-rules.js +69 -0
  203. package/core/audits/byte-efficiency/unused-javascript.d.ts +27 -0
  204. package/core/audits/byte-efficiency/unused-javascript.js +163 -0
  205. package/core/audits/byte-efficiency/uses-long-cache-ttl.d.ts +61 -0
  206. package/core/audits/byte-efficiency/uses-long-cache-ttl.js +297 -0
  207. package/core/audits/byte-efficiency/uses-optimized-images.d.ts +33 -0
  208. package/core/audits/byte-efficiency/uses-optimized-images.js +145 -0
  209. package/core/audits/byte-efficiency/uses-responsive-images-snapshot.d.ts +16 -0
  210. package/core/audits/byte-efficiency/uses-responsive-images-snapshot.js +100 -0
  211. package/core/audits/byte-efficiency/uses-responsive-images.d.ts +45 -0
  212. package/core/audits/byte-efficiency/uses-responsive-images.js +201 -0
  213. package/core/audits/byte-efficiency/uses-text-compression.d.ts +14 -0
  214. package/core/audits/byte-efficiency/uses-text-compression.js +100 -0
  215. package/core/audits/content-width.d.ts +17 -0
  216. package/core/audits/content-width.js +76 -0
  217. package/core/audits/critical-request-chains.d.ts +44 -0
  218. package/core/audits/critical-request-chains.js +218 -0
  219. package/core/audits/csp-xss.d.ts +51 -0
  220. package/core/audits/csp-xss.js +186 -0
  221. package/core/audits/deprecations.d.ts +19 -0
  222. package/core/audits/deprecations.js +114 -0
  223. package/core/audits/diagnostics.d.ts +11 -0
  224. package/core/audits/diagnostics.js +79 -0
  225. package/core/audits/dobetterweb/charset.d.ts +19 -0
  226. package/core/audits/dobetterweb/charset.js +93 -0
  227. package/core/audits/dobetterweb/doctype.d.ts +21 -0
  228. package/core/audits/dobetterweb/doctype.js +120 -0
  229. package/core/audits/dobetterweb/dom-size.d.ts +26 -0
  230. package/core/audits/dobetterweb/dom-size.js +134 -0
  231. package/core/audits/dobetterweb/geolocation-on-start.d.ts +16 -0
  232. package/core/audits/dobetterweb/geolocation-on-start.js +69 -0
  233. package/core/audits/dobetterweb/inspector-issues.d.ts +45 -0
  234. package/core/audits/dobetterweb/inspector-issues.js +191 -0
  235. package/core/audits/dobetterweb/js-libraries.d.ts +15 -0
  236. package/core/audits/dobetterweb/js-libraries.js +87 -0
  237. package/core/audits/dobetterweb/no-document-write.d.ts +16 -0
  238. package/core/audits/dobetterweb/no-document-write.js +84 -0
  239. package/core/audits/dobetterweb/notification-on-start.d.ts +16 -0
  240. package/core/audits/dobetterweb/notification-on-start.js +68 -0
  241. package/core/audits/dobetterweb/paste-preventing-inputs.d.ts +15 -0
  242. package/core/audits/dobetterweb/paste-preventing-inputs.js +67 -0
  243. package/core/audits/dobetterweb/uses-http2.d.ts +72 -0
  244. package/core/audits/dobetterweb/uses-http2.js +264 -0
  245. package/core/audits/dobetterweb/uses-passive-event-listeners.d.ts +16 -0
  246. package/core/audits/dobetterweb/uses-passive-event-listeners.js +67 -0
  247. package/core/audits/errors-in-console.d.ts +31 -0
  248. package/core/audits/errors-in-console.js +120 -0
  249. package/core/audits/final-screenshot.d.ts +11 -0
  250. package/core/audits/final-screenshot.js +58 -0
  251. package/core/audits/font-display.d.ts +32 -0
  252. package/core/audits/font-display.js +193 -0
  253. package/core/audits/image-aspect-ratio.d.ts +30 -0
  254. package/core/audits/image-aspect-ratio.js +122 -0
  255. package/core/audits/image-size-responsive.d.ts +28 -0
  256. package/core/audits/image-size-responsive.js +332 -0
  257. package/core/audits/installable-manifest.d.ts +118 -0
  258. package/core/audits/installable-manifest.js +265 -0
  259. package/core/audits/is-on-https.d.ts +23 -0
  260. package/core/audits/is-on-https.js +123 -0
  261. package/core/audits/largest-contentful-paint-element.d.ts +14 -0
  262. package/core/audits/largest-contentful-paint-element.js +69 -0
  263. package/core/audits/layout-shift-elements.d.ts +15 -0
  264. package/core/audits/layout-shift-elements.js +74 -0
  265. package/core/audits/lcp-lazy-loaded.d.ts +21 -0
  266. package/core/audits/lcp-lazy-loaded.js +84 -0
  267. package/core/audits/long-tasks.d.ts +16 -0
  268. package/core/audits/long-tasks.js +124 -0
  269. package/core/audits/main-thread-tasks.d.ts +11 -0
  270. package/core/audits/main-thread-tasks.js +58 -0
  271. package/core/audits/mainthread-work-breakdown.d.ts +28 -0
  272. package/core/audits/mainthread-work-breakdown.js +135 -0
  273. package/core/audits/manual/manual-audit.d.ts +13 -0
  274. package/core/audits/manual/manual-audit.js +36 -0
  275. package/core/audits/manual/pwa-cross-browser.d.ts +12 -0
  276. package/core/audits/manual/pwa-cross-browser.js +40 -0
  277. package/core/audits/manual/pwa-each-page-has-url.d.ts +12 -0
  278. package/core/audits/manual/pwa-each-page-has-url.js +38 -0
  279. package/core/audits/manual/pwa-page-transitions.d.ts +12 -0
  280. package/core/audits/manual/pwa-page-transitions.js +38 -0
  281. package/core/audits/maskable-icon.d.ts +25 -0
  282. package/core/audits/maskable-icon.js +70 -0
  283. package/core/audits/metrics/cumulative-layout-shift.d.ts +21 -0
  284. package/core/audits/metrics/cumulative-layout-shift.js +79 -0
  285. package/core/audits/metrics/experimental-interaction-to-next-paint.d.ts +21 -0
  286. package/core/audits/metrics/experimental-interaction-to-next-paint.js +88 -0
  287. package/core/audits/metrics/first-contentful-paint-3g.d.ts +15 -0
  288. package/core/audits/metrics/first-contentful-paint-3g.js +69 -0
  289. package/core/audits/metrics/first-contentful-paint.d.ts +25 -0
  290. package/core/audits/metrics/first-contentful-paint.js +85 -0
  291. package/core/audits/metrics/first-meaningful-paint.d.ts +28 -0
  292. package/core/audits/metrics/first-meaningful-paint.js +89 -0
  293. package/core/audits/metrics/interactive.d.ts +31 -0
  294. package/core/audits/metrics/interactive.js +93 -0
  295. package/core/audits/metrics/largest-contentful-paint.d.ts +25 -0
  296. package/core/audits/metrics/largest-contentful-paint.js +94 -0
  297. package/core/audits/metrics/max-potential-fid.d.ts +23 -0
  298. package/core/audits/metrics/max-potential-fid.js +77 -0
  299. package/core/audits/metrics/speed-index.d.ts +27 -0
  300. package/core/audits/metrics/speed-index.js +88 -0
  301. package/core/audits/metrics/total-blocking-time.d.ts +32 -0
  302. package/core/audits/metrics/total-blocking-time.js +118 -0
  303. package/core/audits/metrics.d.ts +11 -0
  304. package/core/audits/metrics.js +73 -0
  305. package/core/audits/multi-check-audit.d.ts +28 -0
  306. package/core/audits/multi-check-audit.js +82 -0
  307. package/core/audits/network-requests.d.ts +11 -0
  308. package/core/audits/network-requests.js +129 -0
  309. package/core/audits/network-rtt.d.ts +15 -0
  310. package/core/audits/network-rtt.js +89 -0
  311. package/core/audits/network-server-latency.d.ts +15 -0
  312. package/core/audits/network-server-latency.js +88 -0
  313. package/core/audits/no-unload-listeners.d.ts +16 -0
  314. package/core/audits/no-unload-listeners.js +86 -0
  315. package/core/audits/non-composited-animations.d.ts +21 -0
  316. package/core/audits/non-composited-animations.js +205 -0
  317. package/core/audits/oopif-iframe-test-audit.d.ts +14 -0
  318. package/core/audits/oopif-iframe-test-audit.js +29 -0
  319. package/core/audits/performance-budget.d.ts +39 -0
  320. package/core/audits/performance-budget.js +154 -0
  321. package/core/audits/predictive-perf.d.ts +11 -0
  322. package/core/audits/predictive-perf.js +100 -0
  323. package/core/audits/preload-fonts.d.ts +29 -0
  324. package/core/audits/preload-fonts.js +106 -0
  325. package/core/audits/prioritize-lcp-image.d.ts +76 -0
  326. package/core/audits/prioritize-lcp-image.js +290 -0
  327. package/core/audits/redirects.d.ts +33 -0
  328. package/core/audits/redirects.js +164 -0
  329. package/core/audits/resource-summary.d.ts +16 -0
  330. package/core/audits/resource-summary.js +104 -0
  331. package/core/audits/screenshot-thumbnails.d.ts +33 -0
  332. package/core/audits/screenshot-thumbnails.js +168 -0
  333. package/core/audits/script-elements-test-audit.d.ts +14 -0
  334. package/core/audits/script-elements-test-audit.js +29 -0
  335. package/core/audits/script-treemap-data.d.ts +42 -0
  336. package/core/audits/script-treemap-data.js +287 -0
  337. package/core/audits/seo/canonical.d.ts +51 -0
  338. package/core/audits/seo/canonical.js +217 -0
  339. package/core/audits/seo/crawlable-anchors.d.ts +16 -0
  340. package/core/audits/seo/crawlable-anchors.js +93 -0
  341. package/core/audits/seo/font-size.d.ts +24 -0
  342. package/core/audits/seo/font-size.js +344 -0
  343. package/core/audits/seo/hreflang.d.ts +28 -0
  344. package/core/audits/seo/hreflang.js +148 -0
  345. package/core/audits/seo/http-status-code.d.ts +16 -0
  346. package/core/audits/seo/http-status-code.js +68 -0
  347. package/core/audits/seo/is-crawlable.d.ts +38 -0
  348. package/core/audits/seo/is-crawlable.js +223 -0
  349. package/core/audits/seo/link-text.d.ts +16 -0
  350. package/core/audits/seo/link-text.js +160 -0
  351. package/core/audits/seo/manual/structured-data.d.ts +12 -0
  352. package/core/audits/seo/manual/structured-data.js +37 -0
  353. package/core/audits/seo/meta-description.d.ts +16 -0
  354. package/core/audits/seo/meta-description.js +66 -0
  355. package/core/audits/seo/plugins.d.ts +15 -0
  356. package/core/audits/seo/plugins.js +150 -0
  357. package/core/audits/seo/robots-txt.d.ts +18 -0
  358. package/core/audits/seo/robots-txt.js +255 -0
  359. package/core/audits/seo/tap-targets.d.ts +50 -0
  360. package/core/audits/seo/tap-targets.js +352 -0
  361. package/core/audits/server-response-time.d.ts +21 -0
  362. package/core/audits/server-response-time.js +90 -0
  363. package/core/audits/service-worker.d.ts +46 -0
  364. package/core/audits/service-worker.js +182 -0
  365. package/core/audits/splash-screen.d.ts +37 -0
  366. package/core/audits/splash-screen.js +98 -0
  367. package/core/audits/themed-omnibox.d.ts +42 -0
  368. package/core/audits/themed-omnibox.js +102 -0
  369. package/core/audits/third-party-facades.d.ts +42 -0
  370. package/core/audits/third-party-facades.js +224 -0
  371. package/core/audits/third-party-summary.d.ts +59 -0
  372. package/core/audits/third-party-summary.js +257 -0
  373. package/core/audits/timing-budget.d.ts +43 -0
  374. package/core/audits/timing-budget.js +174 -0
  375. package/core/audits/unsized-images.d.ts +39 -0
  376. package/core/audits/unsized-images.js +162 -0
  377. package/core/audits/user-timings.d.ts +43 -0
  378. package/core/audits/user-timings.js +118 -0
  379. package/core/audits/uses-rel-preconnect.d.ts +37 -0
  380. package/core/audits/uses-rel-preconnect.js +253 -0
  381. package/core/audits/uses-rel-preload.d.ts +61 -0
  382. package/core/audits/uses-rel-preload.js +269 -0
  383. package/core/audits/valid-source-maps.d.ts +29 -0
  384. package/core/audits/valid-source-maps.js +160 -0
  385. package/core/audits/viewport.d.ts +17 -0
  386. package/core/audits/viewport.js +64 -0
  387. package/core/audits/violation-audit.d.ts +14 -0
  388. package/core/audits/violation-audit.js +49 -0
  389. package/core/audits/work-during-interaction.d.ts +82 -0
  390. package/core/audits/work-during-interaction.js +279 -0
  391. package/core/computed/computed-artifact.d.ts +15 -0
  392. package/core/computed/computed-artifact.js +62 -0
  393. package/core/computed/critical-request-chains.d.ts +40 -0
  394. package/core/computed/critical-request-chains.js +143 -0
  395. package/core/computed/entity-classification.d.ts +29 -0
  396. package/core/computed/entity-classification.js +103 -0
  397. package/core/computed/image-records.d.ts +24 -0
  398. package/core/computed/image-records.js +64 -0
  399. package/core/computed/js-bundles.d.ts +13 -0
  400. package/core/computed/js-bundles.js +120 -0
  401. package/core/computed/load-simulator.d.ts +28 -0
  402. package/core/computed/load-simulator.js +92 -0
  403. package/core/computed/main-resource.d.ts +25 -0
  404. package/core/computed/main-resource.js +35 -0
  405. package/core/computed/main-thread-tasks.d.ts +15 -0
  406. package/core/computed/main-thread-tasks.js +25 -0
  407. package/core/computed/manifest-values.d.ts +24 -0
  408. package/core/computed/manifest-values.js +136 -0
  409. package/core/computed/metrics/cumulative-layout-shift.d.ts +53 -0
  410. package/core/computed/metrics/cumulative-layout-shift.js +125 -0
  411. package/core/computed/metrics/first-contentful-paint-all-frames.d.ts +19 -0
  412. package/core/computed/metrics/first-contentful-paint-all-frames.js +37 -0
  413. package/core/computed/metrics/first-contentful-paint.d.ts +15 -0
  414. package/core/computed/metrics/first-contentful-paint.js +40 -0
  415. package/core/computed/metrics/first-meaningful-paint.d.ts +15 -0
  416. package/core/computed/metrics/first-meaningful-paint.js +44 -0
  417. package/core/computed/metrics/interactive.d.ts +61 -0
  418. package/core/computed/metrics/interactive.js +192 -0
  419. package/core/computed/metrics/lantern-first-contentful-paint.d.ts +48 -0
  420. package/core/computed/metrics/lantern-first-contentful-paint.js +204 -0
  421. package/core/computed/metrics/lantern-first-meaningful-paint.d.ts +12 -0
  422. package/core/computed/metrics/lantern-first-meaningful-paint.js +83 -0
  423. package/core/computed/metrics/lantern-interactive.d.ts +31 -0
  424. package/core/computed/metrics/lantern-interactive.js +113 -0
  425. package/core/computed/metrics/lantern-largest-contentful-paint.d.ts +25 -0
  426. package/core/computed/metrics/lantern-largest-contentful-paint.js +111 -0
  427. package/core/computed/metrics/lantern-max-potential-fid.d.ts +30 -0
  428. package/core/computed/metrics/lantern-max-potential-fid.js +93 -0
  429. package/core/computed/metrics/lantern-metric.d.ts +78 -0
  430. package/core/computed/metrics/lantern-metric.js +162 -0
  431. package/core/computed/metrics/lantern-speed-index.d.ts +38 -0
  432. package/core/computed/metrics/lantern-speed-index.js +150 -0
  433. package/core/computed/metrics/lantern-total-blocking-time.d.ts +31 -0
  434. package/core/computed/metrics/lantern-total-blocking-time.js +126 -0
  435. package/core/computed/metrics/largest-contentful-paint-all-frames.d.ts +20 -0
  436. package/core/computed/metrics/largest-contentful-paint-all-frames.js +45 -0
  437. package/core/computed/metrics/largest-contentful-paint.d.ts +15 -0
  438. package/core/computed/metrics/largest-contentful-paint.js +52 -0
  439. package/core/computed/metrics/max-potential-fid.d.ts +15 -0
  440. package/core/computed/metrics/max-potential-fid.js +45 -0
  441. package/core/computed/metrics/metric.d.ts +38 -0
  442. package/core/computed/metrics/metric.js +100 -0
  443. package/core/computed/metrics/navigation-metric.d.ts +16 -0
  444. package/core/computed/metrics/navigation-metric.js +46 -0
  445. package/core/computed/metrics/responsiveness.d.ts +87 -0
  446. package/core/computed/metrics/responsiveness.js +160 -0
  447. package/core/computed/metrics/speed-index.d.ts +10 -0
  448. package/core/computed/metrics/speed-index.js +40 -0
  449. package/core/computed/metrics/tbt-utils.d.ts +18 -0
  450. package/core/computed/metrics/tbt-utils.js +56 -0
  451. package/core/computed/metrics/timing-summary.d.ts +46 -0
  452. package/core/computed/metrics/timing-summary.js +157 -0
  453. package/core/computed/metrics/total-blocking-time.d.ts +23 -0
  454. package/core/computed/metrics/total-blocking-time.js +74 -0
  455. package/core/computed/module-duplication.d.ts +37 -0
  456. package/core/computed/module-duplication.js +138 -0
  457. package/core/computed/network-analysis.d.ts +20 -0
  458. package/core/computed/network-analysis.js +64 -0
  459. package/core/computed/network-records.d.ts +15 -0
  460. package/core/computed/network-records.js +22 -0
  461. package/core/computed/page-dependency-graph.d.ts +88 -0
  462. package/core/computed/page-dependency-graph.js +516 -0
  463. package/core/computed/processed-navigation.d.ts +21 -0
  464. package/core/computed/processed-navigation.js +37 -0
  465. package/core/computed/processed-trace.d.ts +14 -0
  466. package/core/computed/processed-trace.js +21 -0
  467. package/core/computed/resource-summary.d.ts +46 -0
  468. package/core/computed/resource-summary.js +118 -0
  469. package/core/computed/screenshots.d.ts +20 -0
  470. package/core/computed/screenshots.js +29 -0
  471. package/core/computed/speedline.d.ts +15 -0
  472. package/core/computed/speedline.js +55 -0
  473. package/core/computed/unused-css.d.ts +62 -0
  474. package/core/computed/unused-css.js +153 -0
  475. package/core/computed/unused-javascript-summary.d.ts +71 -0
  476. package/core/computed/unused-javascript-summary.js +155 -0
  477. package/core/computed/user-timings.d.ts +31 -0
  478. package/core/computed/user-timings.js +83 -0
  479. package/core/computed/viewport-meta.d.ts +35 -0
  480. package/core/computed/viewport-meta.js +56 -0
  481. package/core/config/budget.d.ts +74 -0
  482. package/core/config/budget.js +340 -0
  483. package/core/config/config-helpers.d.ts +94 -0
  484. package/core/config/config-helpers.js +630 -0
  485. package/core/config/config-plugin.d.ts +46 -0
  486. package/core/config/config-plugin.js +250 -0
  487. package/core/config/config.d.ts +28 -0
  488. package/core/config/config.js +344 -0
  489. package/core/config/constants.d.ts +86 -0
  490. package/core/config/constants.js +175 -0
  491. package/core/config/default-config.d.ts +5 -0
  492. package/core/config/default-config.js +637 -0
  493. package/core/config/desktop-config.d.ts +5 -0
  494. package/core/config/desktop-config.js +21 -0
  495. package/core/config/experimental-config.d.ts +13 -0
  496. package/core/config/experimental-config.js +29 -0
  497. package/core/config/filters.d.ts +83 -0
  498. package/core/config/filters.js +344 -0
  499. package/core/config/full-config.d.ts +9 -0
  500. package/core/config/full-config.js +13 -0
  501. package/core/config/lr-desktop-config.d.ts +4 -0
  502. package/core/config/lr-desktop-config.js +28 -0
  503. package/core/config/lr-mobile-config.d.ts +9 -0
  504. package/core/config/lr-mobile-config.js +33 -0
  505. package/core/config/metrics-to-audits.d.ts +19 -0
  506. package/core/config/metrics-to-audits.js +61 -0
  507. package/core/config/perf-config.d.ts +9 -0
  508. package/core/config/perf-config.js +16 -0
  509. package/core/config/validation.d.ts +77 -0
  510. package/core/config/validation.js +312 -0
  511. package/core/gather/base-artifacts.d.ts +16 -0
  512. package/core/gather/base-artifacts.js +95 -0
  513. package/core/gather/base-gatherer.d.ts +72 -0
  514. package/core/gather/base-gatherer.js +108 -0
  515. package/core/gather/driver/dom.d.ts +20 -0
  516. package/core/gather/driver/dom.js +57 -0
  517. package/core/gather/driver/environment.d.ts +35 -0
  518. package/core/gather/driver/environment.js +105 -0
  519. package/core/gather/driver/execution-context.d.ts +101 -0
  520. package/core/gather/driver/execution-context.js +262 -0
  521. package/core/gather/driver/navigation.d.ts +33 -0
  522. package/core/gather/driver/navigation.js +182 -0
  523. package/core/gather/driver/network-monitor.d.ts +82 -0
  524. package/core/gather/driver/network-monitor.js +260 -0
  525. package/core/gather/driver/network.d.ts +10 -0
  526. package/core/gather/driver/network.js +27 -0
  527. package/core/gather/driver/prepare.d.ts +52 -0
  528. package/core/gather/driver/prepare.js +244 -0
  529. package/core/gather/driver/service-workers.d.ts +16 -0
  530. package/core/gather/driver/service-workers.js +52 -0
  531. package/core/gather/driver/storage.d.ts +24 -0
  532. package/core/gather/driver/storage.js +149 -0
  533. package/core/gather/driver/target-manager.d.ts +61 -0
  534. package/core/gather/driver/target-manager.js +209 -0
  535. package/core/gather/driver/wait-for-condition.d.ts +116 -0
  536. package/core/gather/driver/wait-for-condition.js +544 -0
  537. package/core/gather/driver.d.ts +30 -0
  538. package/core/gather/driver.js +92 -0
  539. package/core/gather/fetcher.d.ts +63 -0
  540. package/core/gather/fetcher.js +143 -0
  541. package/core/gather/gatherers/accessibility.d.ts +23 -0
  542. package/core/gather/gatherers/accessibility.js +199 -0
  543. package/core/gather/gatherers/anchor-elements.d.ts +10 -0
  544. package/core/gather/gatherers/anchor-elements.js +132 -0
  545. package/core/gather/gatherers/bf-cache-failures.d.ts +43 -0
  546. package/core/gather/gatherers/bf-cache-failures.js +179 -0
  547. package/core/gather/gatherers/cache-contents.d.ts +11 -0
  548. package/core/gather/gatherers/cache-contents.js +58 -0
  549. package/core/gather/gatherers/console-messages.d.ts +39 -0
  550. package/core/gather/gatherers/console-messages.js +174 -0
  551. package/core/gather/gatherers/css-usage.d.ts +39 -0
  552. package/core/gather/gatherers/css-usage.js +150 -0
  553. package/core/gather/gatherers/devtools-log-compat.d.ts +13 -0
  554. package/core/gather/gatherers/devtools-log-compat.js +35 -0
  555. package/core/gather/gatherers/devtools-log.d.ts +48 -0
  556. package/core/gather/gatherers/devtools-log.js +115 -0
  557. package/core/gather/gatherers/dobetterweb/doctype.d.ts +10 -0
  558. package/core/gather/gatherers/dobetterweb/doctype.js +47 -0
  559. package/core/gather/gatherers/dobetterweb/domstats.d.ts +10 -0
  560. package/core/gather/gatherers/dobetterweb/domstats.js +102 -0
  561. package/core/gather/gatherers/dobetterweb/optimized-images.d.ts +61 -0
  562. package/core/gather/gatherers/dobetterweb/optimized-images.js +193 -0
  563. package/core/gather/gatherers/dobetterweb/response-compression.d.ts +30 -0
  564. package/core/gather/gatherers/dobetterweb/response-compression.js +155 -0
  565. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.d.ts +53 -0
  566. package/core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +237 -0
  567. package/core/gather/gatherers/full-page-screenshot.d.ts +35 -0
  568. package/core/gather/gatherers/full-page-screenshot.js +258 -0
  569. package/core/gather/gatherers/gatherer.d.ts +46 -0
  570. package/core/gather/gatherers/gatherer.js +58 -0
  571. package/core/gather/gatherers/global-listeners.d.ts +27 -0
  572. package/core/gather/gatherers/global-listeners.js +91 -0
  573. package/core/gather/gatherers/iframe-elements.d.ts +11 -0
  574. package/core/gather/gatherers/iframe-elements.js +67 -0
  575. package/core/gather/gatherers/image-elements.d.ts +35 -0
  576. package/core/gather/gatherers/image-elements.js +378 -0
  577. package/core/gather/gatherers/inputs.d.ts +10 -0
  578. package/core/gather/gatherers/inputs.js +118 -0
  579. package/core/gather/gatherers/inspector-issues.d.ts +38 -0
  580. package/core/gather/gatherers/inspector-issues.js +126 -0
  581. package/core/gather/gatherers/installability-errors.d.ts +17 -0
  582. package/core/gather/gatherers/installability-errors.js +56 -0
  583. package/core/gather/gatherers/js-usage.d.ts +22 -0
  584. package/core/gather/gatherers/js-usage.js +74 -0
  585. package/core/gather/gatherers/link-elements.d.ts +39 -0
  586. package/core/gather/gatherers/link-elements.js +181 -0
  587. package/core/gather/gatherers/main-document-content.d.ts +27 -0
  588. package/core/gather/gatherers/main-document-content.js +53 -0
  589. package/core/gather/gatherers/meta-elements.d.ts +10 -0
  590. package/core/gather/gatherers/meta-elements.js +67 -0
  591. package/core/gather/gatherers/network-user-agent.d.ts +18 -0
  592. package/core/gather/gatherers/network-user-agent.js +41 -0
  593. package/core/gather/gatherers/script-elements.d.ts +26 -0
  594. package/core/gather/gatherers/script-elements.js +110 -0
  595. package/core/gather/gatherers/scripts.d.ts +27 -0
  596. package/core/gather/gatherers/scripts.js +139 -0
  597. package/core/gather/gatherers/seo/embedded-content.d.ts +10 -0
  598. package/core/gather/gatherers/seo/embedded-content.js +63 -0
  599. package/core/gather/gatherers/seo/font-size.d.ts +131 -0
  600. package/core/gather/gatherers/seo/font-size.js +339 -0
  601. package/core/gather/gatherers/seo/robots-txt.d.ts +10 -0
  602. package/core/gather/gatherers/seo/robots-txt.js +27 -0
  603. package/core/gather/gatherers/seo/tap-targets.d.ts +21 -0
  604. package/core/gather/gatherers/seo/tap-targets.js +389 -0
  605. package/core/gather/gatherers/service-worker.d.ts +16 -0
  606. package/core/gather/gatherers/service-worker.js +44 -0
  607. package/core/gather/gatherers/source-maps.d.ts +50 -0
  608. package/core/gather/gatherers/source-maps.js +155 -0
  609. package/core/gather/gatherers/stacks.d.ts +38 -0
  610. package/core/gather/gatherers/stacks.js +137 -0
  611. package/core/gather/gatherers/trace-compat.d.ts +13 -0
  612. package/core/gather/gatherers/trace-compat.js +35 -0
  613. package/core/gather/gatherers/trace-elements.d.ts +83 -0
  614. package/core/gather/gatherers/trace-elements.js +349 -0
  615. package/core/gather/gatherers/trace.d.ts +23 -0
  616. package/core/gather/gatherers/trace.js +130 -0
  617. package/core/gather/gatherers/viewport-dimensions.d.ts +10 -0
  618. package/core/gather/gatherers/viewport-dimensions.js +57 -0
  619. package/core/gather/gatherers/web-app-manifest.d.ts +32 -0
  620. package/core/gather/gatherers/web-app-manifest.js +106 -0
  621. package/core/gather/navigation-runner.d.ts +94 -0
  622. package/core/gather/navigation-runner.js +386 -0
  623. package/core/gather/runner-helpers.d.ts +39 -0
  624. package/core/gather/runner-helpers.js +159 -0
  625. package/core/gather/session.d.ts +50 -0
  626. package/core/gather/session.js +114 -0
  627. package/core/gather/snapshot-runner.d.ts +10 -0
  628. package/core/gather/snapshot-runner.js +67 -0
  629. package/core/gather/timespan-runner.d.ts +12 -0
  630. package/core/gather/timespan-runner.js +85 -0
  631. package/core/index.cjs +21 -0
  632. package/core/index.d.cts +4 -0
  633. package/core/index.d.ts +88 -0
  634. package/core/index.js +172 -0
  635. package/core/legacy/config/config.d.ts +107 -0
  636. package/core/legacy/config/config.js +566 -0
  637. package/core/legacy/config/legacy-default-config.d.ts +4 -0
  638. package/core/legacy/config/legacy-default-config.js +87 -0
  639. package/core/legacy/gather/connections/connection.d.ts +75 -0
  640. package/core/legacy/gather/connections/connection.js +181 -0
  641. package/core/legacy/gather/connections/cri.d.ts +27 -0
  642. package/core/legacy/gather/connections/cri.js +162 -0
  643. package/core/legacy/gather/connections/raw.d.ts +20 -0
  644. package/core/legacy/gather/connections/raw.js +57 -0
  645. package/core/legacy/gather/driver.d.ts +215 -0
  646. package/core/legacy/gather/driver.js +469 -0
  647. package/core/legacy/gather/gather-runner.d.ts +166 -0
  648. package/core/legacy/gather/gather-runner.js +590 -0
  649. package/core/lib/arbitrary-equality-map.d.ts +47 -0
  650. package/core/lib/arbitrary-equality-map.js +80 -0
  651. package/core/lib/asset-saver.d.ts +101 -0
  652. package/core/lib/asset-saver.js +451 -0
  653. package/core/lib/axe.d.ts +2 -0
  654. package/core/lib/axe.js +17 -0
  655. package/core/lib/bf-cache-strings.d.ts +121 -0
  656. package/core/lib/bf-cache-strings.js +661 -0
  657. package/core/lib/cdt/Common.d.ts +3 -0
  658. package/core/lib/cdt/Common.js +12 -0
  659. package/core/lib/cdt/Platform.d.ts +26 -0
  660. package/core/lib/cdt/Platform.js +57 -0
  661. package/core/lib/cdt/SDK.d.ts +2 -0
  662. package/core/lib/cdt/SDK.js +28 -0
  663. package/core/lib/cdt/generated/ParsedURL.d.ts +28 -0
  664. package/core/lib/cdt/generated/ParsedURL.js +178 -0
  665. package/core/lib/cdt/generated/SourceMap.d.ts +100 -0
  666. package/core/lib/cdt/generated/SourceMap.js +527 -0
  667. package/core/lib/cdt/package.json +4 -0
  668. package/core/lib/csp-evaluator.d.ts +41 -0
  669. package/core/lib/csp-evaluator.js +170 -0
  670. package/core/lib/dependency-graph/base-node.d.ts +161 -0
  671. package/core/lib/dependency-graph/base-node.js +364 -0
  672. package/core/lib/dependency-graph/cpu-node.d.ts +34 -0
  673. package/core/lib/dependency-graph/cpu-node.js +86 -0
  674. package/core/lib/dependency-graph/network-node.d.ts +43 -0
  675. package/core/lib/dependency-graph/network-node.js +99 -0
  676. package/core/lib/dependency-graph/simulator/connection-pool.d.ts +58 -0
  677. package/core/lib/dependency-graph/simulator/connection-pool.js +171 -0
  678. package/core/lib/dependency-graph/simulator/dns-cache.d.ts +42 -0
  679. package/core/lib/dependency-graph/simulator/dns-cache.js +74 -0
  680. package/core/lib/dependency-graph/simulator/network-analyzer.d.ts +166 -0
  681. package/core/lib/dependency-graph/simulator/network-analyzer.js +479 -0
  682. package/core/lib/dependency-graph/simulator/simulator-timing-map.d.ts +153 -0
  683. package/core/lib/dependency-graph/simulator/simulator-timing-map.js +220 -0
  684. package/core/lib/dependency-graph/simulator/simulator.d.ts +154 -0
  685. package/core/lib/dependency-graph/simulator/simulator.js +540 -0
  686. package/core/lib/dependency-graph/simulator/tcp-connection.d.ts +89 -0
  687. package/core/lib/dependency-graph/simulator/tcp-connection.js +230 -0
  688. package/core/lib/deprecations-strings.d.ts +66 -0
  689. package/core/lib/deprecations-strings.js +654 -0
  690. package/core/lib/emulation.d.ts +43 -0
  691. package/core/lib/emulation.js +163 -0
  692. package/core/lib/i18n/README.md +290 -0
  693. package/core/lib/i18n/i18n.d.ts +81 -0
  694. package/core/lib/i18n/i18n.js +229 -0
  695. package/core/lib/icons.d.ts +22 -0
  696. package/core/lib/icons.js +82 -0
  697. package/core/lib/lantern-trace-saver.d.ts +20 -0
  698. package/core/lib/lantern-trace-saver.js +260 -0
  699. package/core/lib/lh-env.d.ts +2 -0
  700. package/core/lib/lh-env.js +15 -0
  701. package/core/lib/lh-error.d.ts +328 -0
  702. package/core/lib/lh-error.js +425 -0
  703. package/core/lib/lh-trace-processor.d.ts +5 -0
  704. package/core/lib/lh-trace-processor.js +45 -0
  705. package/core/lib/lighthouse-compatibility.d.ts +8 -0
  706. package/core/lib/lighthouse-compatibility.js +139 -0
  707. package/core/lib/manifest-parser.d.ts +186 -0
  708. package/core/lib/manifest-parser.js +495 -0
  709. package/core/lib/median-run.d.ts +17 -0
  710. package/core/lib/median-run.js +92 -0
  711. package/core/lib/minification-estimator.d.ts +9 -0
  712. package/core/lib/minification-estimator.js +192 -0
  713. package/core/lib/minify-devtoolslog.d.ts +6 -0
  714. package/core/lib/minify-devtoolslog.js +86 -0
  715. package/core/lib/navigation-error.d.ts +39 -0
  716. package/core/lib/navigation-error.js +175 -0
  717. package/core/lib/network-recorder.d.ts +115 -0
  718. package/core/lib/network-recorder.js +341 -0
  719. package/core/lib/network-request.d.ts +247 -0
  720. package/core/lib/network-request.js +590 -0
  721. package/core/lib/page-functions.d.ts +149 -0
  722. package/core/lib/page-functions.js +544 -0
  723. package/core/lib/proto-preprocessor.d.ts +13 -0
  724. package/core/lib/proto-preprocessor.js +133 -0
  725. package/core/lib/rect-helpers.d.ts +100 -0
  726. package/core/lib/rect-helpers.js +251 -0
  727. package/core/lib/script-helpers.d.ts +17 -0
  728. package/core/lib/script-helpers.js +31 -0
  729. package/core/lib/sentry.d.ts +32 -0
  730. package/core/lib/sentry.js +143 -0
  731. package/core/lib/stack-packs.d.ts +16 -0
  732. package/core/lib/stack-packs.js +126 -0
  733. package/core/lib/statistics.d.ts +28 -0
  734. package/core/lib/statistics.js +103 -0
  735. package/core/lib/tappable-rects.d.ts +8 -0
  736. package/core/lib/tappable-rects.js +98 -0
  737. package/core/lib/third-party-web.d.ts +32 -0
  738. package/core/lib/third-party-web.js +52 -0
  739. package/core/lib/timing-trace-saver.d.ts +21 -0
  740. package/core/lib/timing-trace-saver.js +96 -0
  741. package/core/lib/tracehouse/cpu-profile-model.d.ts +228 -0
  742. package/core/lib/tracehouse/cpu-profile-model.js +591 -0
  743. package/core/lib/tracehouse/main-thread-tasks.d.ts +162 -0
  744. package/core/lib/tracehouse/main-thread-tasks.js +688 -0
  745. package/core/lib/tracehouse/task-groups.d.ts +66 -0
  746. package/core/lib/tracehouse/task-groups.js +111 -0
  747. package/core/lib/tracehouse/task-summary.d.ts +18 -0
  748. package/core/lib/tracehouse/task-summary.js +86 -0
  749. package/core/lib/tracehouse/trace-processor.d.ts +284 -0
  750. package/core/lib/tracehouse/trace-processor.js +1016 -0
  751. package/core/lib/traces/metric-trace-events.d.ts +65 -0
  752. package/core/lib/traces/metric-trace-events.js +200 -0
  753. package/core/lib/url-utils.d.ts +100 -0
  754. package/core/lib/url-utils.js +266 -0
  755. package/core/runner.d.ts +114 -0
  756. package/core/runner.js +563 -0
  757. package/core/scoring.d.ts +26 -0
  758. package/core/scoring.js +91 -0
  759. package/core/scripts/download-chrome.sh +36 -0
  760. package/core/scripts/manual-chrome-launcher.js +50 -0
  761. package/core/user-flow.d.ts +106 -0
  762. package/core/user-flow.js +354 -0
  763. package/dist/report/bundle.esm.js +1485 -1281
  764. package/dist/report/flow.js +37 -25
  765. package/dist/report/standalone.js +35 -19
  766. package/eslint-local-rules.cjs +106 -0
  767. package/eslint-local-rules.d.cts +6 -0
  768. package/esm-utils.d.ts +14 -0
  769. package/esm-utils.js +38 -0
  770. package/flow-report/api.d.ts +7 -0
  771. package/flow-report/assets/standalone-flow-template.html +1 -1
  772. package/flow-report/clients/standalone.d.ts +7 -0
  773. package/flow-report/src/app.d.ts +11 -0
  774. package/flow-report/src/app.tsx +1 -1
  775. package/flow-report/src/common.d.ts +20 -0
  776. package/flow-report/src/common.tsx +3 -3
  777. package/flow-report/src/header.d.ts +10 -0
  778. package/flow-report/src/header.tsx +1 -1
  779. package/flow-report/src/help-dialog.d.ts +10 -0
  780. package/flow-report/src/i18n/i18n.d.ts +212 -0
  781. package/flow-report/src/i18n/i18n.tsx +24 -19
  782. package/flow-report/src/i18n/localized-strings.d.ts +9 -0
  783. package/flow-report/src/i18n/ui-strings.d.ts +48 -0
  784. package/flow-report/src/icons.d.ts +18 -0
  785. package/flow-report/src/sidebar/flow.d.ts +8 -0
  786. package/flow-report/src/sidebar/sidebar.d.ts +17 -0
  787. package/flow-report/src/sidebar/sidebar.tsx +7 -4
  788. package/flow-report/src/summary/category.d.ts +19 -0
  789. package/flow-report/src/summary/category.tsx +10 -10
  790. package/flow-report/src/summary/summary.d.ts +18 -0
  791. package/flow-report/src/summary/summary.tsx +4 -4
  792. package/flow-report/src/topbar.d.ts +15 -0
  793. package/flow-report/src/topbar.tsx +14 -30
  794. package/flow-report/src/util.d.ts +30 -0
  795. package/flow-report/src/util.ts +2 -13
  796. package/flow-report/src/wrappers/category-score.d.ts +12 -0
  797. package/flow-report/src/wrappers/markdown.d.ts +10 -0
  798. package/flow-report/src/wrappers/report.d.ts +10 -0
  799. package/flow-report/src/wrappers/report.tsx +1 -1
  800. package/flow-report/src/wrappers/styles.d.ts +8 -0
  801. package/flow-report/test/app-test.d.ts +7 -0
  802. package/flow-report/test/common-test.d.ts +7 -0
  803. package/flow-report/test/common-test.tsx +11 -12
  804. package/flow-report/test/flow-report-pptr-test.d.ts +7 -0
  805. package/flow-report/test/flow-report-pptr-test.ts +21 -8
  806. package/flow-report/test/header-test.d.ts +7 -0
  807. package/flow-report/test/run-flow-report-tests.sh +20 -0
  808. package/flow-report/test/sample-flow.d.ts +7 -0
  809. package/flow-report/test/sample-flow.ts +1 -1
  810. package/flow-report/test/setup/env-setup.d.ts +11 -0
  811. package/flow-report/test/setup/env-setup.ts +47 -24
  812. package/flow-report/test/sidebar/flow-test.d.ts +7 -0
  813. package/flow-report/test/sidebar/sidebar-test.d.ts +7 -0
  814. package/flow-report/test/sidebar/sidebar-test.tsx +30 -3
  815. package/flow-report/test/summary/category-test.d.ts +7 -0
  816. package/flow-report/test/summary/summary-test.d.ts +7 -0
  817. package/flow-report/test/summary/summary-test.tsx +1 -1
  818. package/flow-report/test/topbar-test.d.ts +7 -0
  819. package/flow-report/test/topbar-test.tsx +11 -12
  820. package/flow-report/test/util-test.d.ts +7 -0
  821. package/flow-report/test/util-test.tsx +3 -3
  822. package/flow-report/test/wrappers/category-score-test.d.ts +7 -0
  823. package/flow-report/test/wrappers/markdown-test.d.ts +7 -0
  824. package/flow-report/tsconfig.json +5 -3
  825. package/flow-report/types/flow-report.d.ts +8 -1
  826. package/package.json +86 -80
  827. package/readme.md +27 -40
  828. package/report/README.md +8 -9
  829. package/report/assets/standalone-template.html +1 -1
  830. package/report/assets/styles.css +35 -17
  831. package/report/assets/templates.html +14 -37
  832. package/report/clients/bundle.d.ts +6 -0
  833. package/report/clients/bundle.js +1 -2
  834. package/report/clients/standalone.d.ts +2 -0
  835. package/report/clients/standalone.js +0 -1
  836. package/report/generator/file-namer.d.ts +35 -0
  837. package/report/generator/file-namer.js +7 -3
  838. package/report/generator/flow-report-assets.d.ts +9 -0
  839. package/report/generator/flow-report-assets.js +10 -6
  840. package/report/generator/report-assets.d.ts +8 -0
  841. package/report/generator/report-assets.js +8 -5
  842. package/report/generator/report-generator.d.ts +59 -0
  843. package/report/generator/report-generator.js +76 -34
  844. package/report/generator/tsconfig.json +1 -2
  845. package/report/renderer/api.d.ts +31 -0
  846. package/report/renderer/api.js +0 -2
  847. package/report/renderer/category-renderer.d.ts +176 -0
  848. package/report/renderer/category-renderer.js +39 -41
  849. package/report/renderer/components.d.ts +10 -0
  850. package/report/renderer/components.js +364 -448
  851. package/report/renderer/crc-details-renderer.d.ts +73 -0
  852. package/report/renderer/crc-details-renderer.js +28 -30
  853. package/report/renderer/details-renderer.d.ts +141 -0
  854. package/report/renderer/details-renderer.js +44 -92
  855. package/report/renderer/dom.d.ts +125 -0
  856. package/report/renderer/dom.js +13 -10
  857. package/report/renderer/drop-down-menu.d.ts +70 -0
  858. package/report/renderer/drop-down-menu.js +0 -1
  859. package/report/renderer/element-screenshot-renderer.d.ts +79 -0
  860. package/report/renderer/element-screenshot-renderer.js +11 -12
  861. package/report/renderer/features-util.d.ts +13 -0
  862. package/report/renderer/features-util.js +0 -1
  863. package/report/renderer/i18n-formatter.d.ts +100 -0
  864. package/report/renderer/i18n-formatter.js +263 -0
  865. package/report/renderer/logger.d.ts +47 -0
  866. package/report/renderer/logger.js +0 -1
  867. package/report/renderer/open-tab.d.ts +19 -0
  868. package/report/renderer/open-tab.js +4 -4
  869. package/report/renderer/performance-category-renderer.d.ts +56 -0
  870. package/report/renderer/performance-category-renderer.js +29 -26
  871. package/report/renderer/pwa-category-renderer.d.ts +55 -0
  872. package/report/renderer/pwa-category-renderer.js +8 -8
  873. package/report/renderer/report-globals.d.ts +21 -0
  874. package/report/renderer/report-globals.js +49 -0
  875. package/report/renderer/report-renderer.d.ts +57 -0
  876. package/report/renderer/report-renderer.js +54 -52
  877. package/report/renderer/report-ui-features.d.ts +71 -0
  878. package/report/renderer/report-ui-features.js +44 -39
  879. package/report/renderer/report-utils.d.ts +129 -0
  880. package/report/renderer/report-utils.js +448 -0
  881. package/report/renderer/snippet-renderer.d.ts +85 -0
  882. package/report/renderer/snippet-renderer.js +5 -5
  883. package/report/renderer/swap-locale-feature.d.ts +31 -0
  884. package/report/renderer/swap-locale-feature.js +2 -3
  885. package/report/renderer/text-encoding.d.ts +26 -0
  886. package/report/renderer/text-encoding.js +0 -1
  887. package/report/renderer/topbar-features.d.ts +82 -0
  888. package/report/renderer/topbar-features.js +2 -2
  889. package/report/test/clients/bundle-test.js +5 -10
  890. package/report/test/generator/file-namer-test.js +3 -4
  891. package/report/test/generator/report-generator-test.js +49 -24
  892. package/report/test/renderer/category-renderer-test.js +19 -15
  893. package/report/test/renderer/components-test.js +36 -37
  894. package/report/test/renderer/crc-details-renderer-test.js +11 -10
  895. package/report/test/renderer/details-renderer-test.js +91 -41
  896. package/report/test/renderer/dom-test.js +38 -14
  897. package/report/test/renderer/element-screenshot-renderer-test.js +14 -12
  898. package/report/test/renderer/i18n-formatter-test.js +179 -0
  899. package/report/test/renderer/performance-category-renderer-test.js +43 -31
  900. package/report/test/renderer/pwa-category-renderer-test.js +17 -13
  901. package/report/test/renderer/report-renderer-axe-test.js +12 -15
  902. package/report/test/renderer/report-renderer-test.js +17 -15
  903. package/report/test/renderer/report-ui-features-test.js +304 -89
  904. package/report/test/renderer/report-utils-test.js +219 -0
  905. package/report/test/renderer/snippet-renderer-test.js +11 -10
  906. package/report/test/renderer/text-encoding-test.js +2 -5
  907. package/report/test-assets/faux-psi-template.html +1 -1
  908. package/report/test-assets/faux-psi.d.ts +34 -0
  909. package/report/test-assets/faux-psi.js +83 -68
  910. package/report/test-assets/lhr-3.0.0.json +2332 -0
  911. package/report/test-assets/lhr-4.3.0.json +4754 -0
  912. package/report/test-assets/lhr-5.0.0.json +5994 -0
  913. package/report/test-assets/lhr-6.0.0.json +7222 -0
  914. package/report/test-assets/lhr-8.5.0.json +8679 -0
  915. package/report/tsconfig.json +1 -2
  916. package/report/types/augment-dom.d.ts +1 -1
  917. package/root.d.ts +3 -0
  918. package/root.js +9 -19
  919. package/shared/localization/format.d.ts +106 -0
  920. package/shared/localization/format.js +27 -21
  921. package/shared/localization/i18n-module.d.ts +4 -0
  922. package/shared/localization/i18n-module.js +7 -3
  923. package/shared/localization/locales/ar-XB.json +1658 -1007
  924. package/shared/localization/locales/ar.json +1659 -1008
  925. package/shared/localization/locales/bg.json +1657 -1006
  926. package/shared/localization/locales/ca.json +1664 -1013
  927. package/shared/localization/locales/cs.json +1659 -1008
  928. package/shared/localization/locales/da.json +1658 -1007
  929. package/shared/localization/locales/de.json +1794 -1143
  930. package/shared/localization/locales/el.json +1657 -1006
  931. package/shared/localization/locales/en-GB.json +1658 -1007
  932. package/shared/localization/locales/en-US.json +1471 -1066
  933. package/shared/localization/locales/en-XA.json +1658 -1007
  934. package/shared/localization/locales/en-XL.json +1471 -1066
  935. package/shared/localization/locales/es-419.json +1660 -1009
  936. package/shared/localization/locales/es.json +1665 -1014
  937. package/shared/localization/locales/fi.json +1658 -1007
  938. package/shared/localization/locales/fil.json +1659 -1008
  939. package/shared/localization/locales/fr.json +1660 -1009
  940. package/shared/localization/locales/he.json +1678 -1027
  941. package/shared/localization/locales/hi.json +1661 -1010
  942. package/shared/localization/locales/hr.json +1658 -1007
  943. package/shared/localization/locales/hu.json +1657 -1006
  944. package/shared/localization/locales/id.json +1658 -1007
  945. package/shared/localization/locales/it.json +1678 -1027
  946. package/shared/localization/locales/ja.json +1657 -1006
  947. package/shared/localization/locales/ko.json +1658 -1007
  948. package/shared/localization/locales/lt.json +1658 -1007
  949. package/shared/localization/locales/lv.json +1658 -1007
  950. package/shared/localization/locales/nl.json +1659 -1008
  951. package/shared/localization/locales/no.json +1662 -1011
  952. package/shared/localization/locales/pl.json +1657 -1006
  953. package/shared/localization/locales/pt-PT.json +1678 -1027
  954. package/shared/localization/locales/pt.json +1659 -1008
  955. package/shared/localization/locales/ro.json +1657 -1006
  956. package/shared/localization/locales/ru.json +1657 -1006
  957. package/shared/localization/locales/sk.json +1657 -1006
  958. package/shared/localization/locales/sl.json +1657 -1006
  959. package/shared/localization/locales/sr-Latn.json +1658 -1007
  960. package/shared/localization/locales/sr.json +1658 -1007
  961. package/shared/localization/locales/sv.json +1664 -1013
  962. package/shared/localization/locales/ta.json +1658 -1007
  963. package/shared/localization/locales/te.json +1688 -1037
  964. package/shared/localization/locales/th.json +1666 -1015
  965. package/shared/localization/locales/tr.json +1658 -1007
  966. package/shared/localization/locales/uk.json +1657 -1006
  967. package/shared/localization/locales/vi.json +1659 -1008
  968. package/shared/localization/locales/zh-HK.json +1658 -1007
  969. package/shared/localization/locales/zh-TW.json +1661 -1010
  970. package/shared/localization/locales/zh.json +1658 -1007
  971. package/shared/localization/locales.d.ts +7 -0
  972. package/shared/localization/locales.js +54 -51
  973. package/shared/localization/swap-flow-locale.d.ts +6 -0
  974. package/shared/localization/swap-flow-locale.js +6 -3
  975. package/shared/localization/swap-locale.d.ts +39 -0
  976. package/shared/localization/swap-locale.js +7 -8
  977. package/shared/test/localization/format-test.js +73 -56
  978. package/shared/test/localization/locales-test.js +2 -4
  979. package/shared/test/localization/swap-locale-test.js +10 -11
  980. package/shared/test/util-test.js +214 -0
  981. package/shared/tsconfig.json +1 -2
  982. package/shared/type-verifiers.d.ts +23 -0
  983. package/shared/type-verifiers.js +1 -2
  984. package/shared/types/shared.d.ts +2 -2
  985. package/shared/util.d.ts +122 -0
  986. package/shared/util.js +332 -0
  987. package/third-party/axe/valid-langs.d.ts +9 -0
  988. package/third-party/axe/valid-langs.js +1 -1
  989. package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +5 -7
  990. package/third-party/chromium-synchronization/installability-errors-test.js +4 -8
  991. package/third-party/download-content-shell/README.md +1 -0
  992. package/third-party/download-content-shell/download-content-shell.js +12 -6
  993. package/third-party/download-content-shell/utils.js +8 -8
  994. package/tsconfig-base.json +6 -1
  995. package/tsconfig.json +84 -90
  996. package/types/artifacts.d.ts +135 -78
  997. package/types/audit.d.ts +9 -8
  998. package/types/config.d.ts +26 -38
  999. package/types/externs.d.ts +9 -101
  1000. package/types/gatherer.d.ts +35 -27
  1001. package/types/internal/cssstyle.d.ts +23 -0
  1002. package/types/{enquirer.d.ts → internal/enquirer.d.ts} +0 -0
  1003. package/types/{es-main.d.ts → internal/es-main.d.ts} +0 -0
  1004. package/types/internal/global.d.ts +15 -0
  1005. package/types/{http-link-header/index.d.ts → internal/http-link-header.d.ts} +0 -0
  1006. package/types/{jsonlint-mod.d.ts → internal/jsonlint-mod.d.ts} +0 -0
  1007. package/types/internal/lighthouse-logger.d.ts +34 -0
  1008. package/types/internal/lookup-closest-locale.d.ts +13 -0
  1009. package/types/{metaviewport-parser/index.d.ts → internal/metaviewport-parser.d.ts} +0 -0
  1010. package/types/{node-fetch.d.ts → internal/node-fetch.d.ts} +0 -0
  1011. package/types/internal/node.d.ts +44 -0
  1012. package/types/{parse-cache-control/index.d.ts → internal/parse-cache-control.d.ts} +0 -0
  1013. package/types/{pretty-json-stringify/index.d.ts → internal/pretty-json-stringify.d.ts} +0 -0
  1014. package/types/internal/query-selector.d.ts +36 -0
  1015. package/types/{rollup-plugin-postprocess.d.ts → internal/rollup-plugin-postprocess.d.ts} +0 -0
  1016. package/types/internal/smokehouse.d.ts +83 -0
  1017. package/types/internal/test.d.ts +53 -0
  1018. package/types/lh.d.ts +81 -0
  1019. package/types/lh.js +13 -0
  1020. package/types/lhr/audit-details.d.ts +6 -53
  1021. package/types/lhr/audit-result.d.ts +2 -2
  1022. package/types/lhr/flow-result.d.ts +28 -0
  1023. package/types/lhr/lhr.d.ts +53 -6
  1024. package/types/lhr/settings.d.ts +18 -1
  1025. package/types/lhr/treemap.d.ts +5 -4
  1026. package/types/lhr/tsconfig.json +0 -2
  1027. package/types/protocol.d.ts +32 -18
  1028. package/types/puppeteer.d.ts +27 -0
  1029. package/types/user-flow.d.ts +27 -6
  1030. package/types/utility-types.d.ts +72 -0
  1031. package/vercel.json +6 -0
  1032. package/eslint-local-rules.js +0 -106
  1033. package/flow-report/.eslintrc.cjs +0 -51
  1034. package/flow-report/jest.config.js +0 -24
  1035. package/flow-report/package.json +0 -4
  1036. package/flow-report/test/setup/global-setup.ts +0 -11
  1037. package/jest.config.js +0 -30
  1038. package/lighthouse-cli/.eslintrc.cjs +0 -29
  1039. package/lighthouse-cli/bin.js +0 -152
  1040. package/lighthouse-cli/cli-flags.js +0 -530
  1041. package/lighthouse-cli/commands/commands.js +0 -10
  1042. package/lighthouse-cli/commands/list-audits.js +0 -16
  1043. package/lighthouse-cli/commands/list-locales.js +0 -16
  1044. package/lighthouse-cli/commands/list-trace-categories.js +0 -16
  1045. package/lighthouse-cli/index.js +0 -14
  1046. package/lighthouse-cli/package.json +0 -4
  1047. package/lighthouse-cli/printer.js +0 -100
  1048. package/lighthouse-cli/run.js +0 -286
  1049. package/lighthouse-cli/sentry-prompt.js +0 -79
  1050. package/lighthouse-cli/test/smokehouse/core-tests.js +0 -129
  1051. package/lighthouse-cli/test/smokehouse/frontends/back-compat-util.js +0 -42
  1052. package/lighthouse-cli/test/smokehouse/frontends/lib.js +0 -49
  1053. package/lighthouse-cli/test/smokehouse/frontends/node.js +0 -13
  1054. package/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js +0 -262
  1055. package/lighthouse-cli/test/smokehouse/lib/child-process-error.js +0 -26
  1056. package/lighthouse-cli/test/smokehouse/lib/concurrent-mapper.js +0 -126
  1057. package/lighthouse-cli/test/smokehouse/lib/local-console.js +0 -51
  1058. package/lighthouse-cli/test/smokehouse/lighthouse-runners/bundle.js +0 -68
  1059. package/lighthouse-cli/test/smokehouse/lighthouse-runners/cli.js +0 -151
  1060. package/lighthouse-cli/test/smokehouse/lighthouse-runners/devtools.js +0 -106
  1061. package/lighthouse-cli/test/smokehouse/readme.md +0 -204
  1062. package/lighthouse-cli/test/smokehouse/report-assert.js +0 -493
  1063. package/lighthouse-cli/test/smokehouse/smokehouse.js +0 -284
  1064. package/lighthouse-cli/test/smokehouse/version-check-test.js +0 -46
  1065. package/lighthouse-cli/test/smokehouse/version-check.js +0 -49
  1066. package/lighthouse-core/audits/accessibility/accesskeys.js +0 -45
  1067. package/lighthouse-core/audits/accessibility/aria-allowed-attr.js +0 -45
  1068. package/lighthouse-core/audits/accessibility/aria-command-name.js +0 -43
  1069. package/lighthouse-core/audits/accessibility/aria-hidden-body.js +0 -43
  1070. package/lighthouse-core/audits/accessibility/aria-hidden-focus.js +0 -43
  1071. package/lighthouse-core/audits/accessibility/aria-input-field-name.js +0 -43
  1072. package/lighthouse-core/audits/accessibility/aria-meter-name.js +0 -43
  1073. package/lighthouse-core/audits/accessibility/aria-progressbar-name.js +0 -43
  1074. package/lighthouse-core/audits/accessibility/aria-required-attr.js +0 -44
  1075. package/lighthouse-core/audits/accessibility/aria-required-children.js +0 -48
  1076. package/lighthouse-core/audits/accessibility/aria-required-parent.js +0 -46
  1077. package/lighthouse-core/audits/accessibility/aria-roles.js +0 -45
  1078. package/lighthouse-core/audits/accessibility/aria-toggle-field-name.js +0 -43
  1079. package/lighthouse-core/audits/accessibility/aria-tooltip-name.js +0 -43
  1080. package/lighthouse-core/audits/accessibility/aria-treeitem-name.js +0 -43
  1081. package/lighthouse-core/audits/accessibility/aria-valid-attr-value.js +0 -45
  1082. package/lighthouse-core/audits/accessibility/aria-valid-attr.js +0 -45
  1083. package/lighthouse-core/audits/accessibility/axe-audit.js +0 -114
  1084. package/lighthouse-core/audits/accessibility/button-name.js +0 -45
  1085. package/lighthouse-core/audits/accessibility/bypass.js +0 -46
  1086. package/lighthouse-core/audits/accessibility/color-contrast.js +0 -46
  1087. package/lighthouse-core/audits/accessibility/definition-list.js +0 -47
  1088. package/lighthouse-core/audits/accessibility/dlitem.js +0 -45
  1089. package/lighthouse-core/audits/accessibility/document-title.js +0 -45
  1090. package/lighthouse-core/audits/accessibility/duplicate-id-active.js +0 -43
  1091. package/lighthouse-core/audits/accessibility/duplicate-id-aria.js +0 -43
  1092. package/lighthouse-core/audits/accessibility/form-field-multiple-labels.js +0 -44
  1093. package/lighthouse-core/audits/accessibility/frame-title.js +0 -44
  1094. package/lighthouse-core/audits/accessibility/heading-order.js +0 -43
  1095. package/lighthouse-core/audits/accessibility/html-has-lang.js +0 -47
  1096. package/lighthouse-core/audits/accessibility/html-lang-valid.js +0 -46
  1097. package/lighthouse-core/audits/accessibility/image-alt.js +0 -45
  1098. package/lighthouse-core/audits/accessibility/input-image-alt.js +0 -45
  1099. package/lighthouse-core/audits/accessibility/label.js +0 -45
  1100. package/lighthouse-core/audits/accessibility/link-name.js +0 -46
  1101. package/lighthouse-core/audits/accessibility/list.js +0 -47
  1102. package/lighthouse-core/audits/accessibility/listitem.js +0 -46
  1103. package/lighthouse-core/audits/accessibility/manual/custom-controls-labels.js +0 -28
  1104. package/lighthouse-core/audits/accessibility/manual/custom-controls-roles.js +0 -28
  1105. package/lighthouse-core/audits/accessibility/manual/focus-traps.js +0 -28
  1106. package/lighthouse-core/audits/accessibility/manual/focusable-controls.js +0 -28
  1107. package/lighthouse-core/audits/accessibility/manual/interactive-element-affordance.js +0 -28
  1108. package/lighthouse-core/audits/accessibility/manual/logical-tab-order.js +0 -28
  1109. package/lighthouse-core/audits/accessibility/manual/managed-focus.js +0 -28
  1110. package/lighthouse-core/audits/accessibility/manual/offscreen-content-hidden.js +0 -29
  1111. package/lighthouse-core/audits/accessibility/manual/use-landmarks.js +0 -28
  1112. package/lighthouse-core/audits/accessibility/manual/visual-order-follows-dom.js +0 -28
  1113. package/lighthouse-core/audits/accessibility/meta-refresh.js +0 -46
  1114. package/lighthouse-core/audits/accessibility/meta-viewport.js +0 -47
  1115. package/lighthouse-core/audits/accessibility/object-alt.js +0 -45
  1116. package/lighthouse-core/audits/accessibility/tabindex.js +0 -45
  1117. package/lighthouse-core/audits/accessibility/td-headers-attr.js +0 -49
  1118. package/lighthouse-core/audits/accessibility/th-has-data-cells.js +0 -48
  1119. package/lighthouse-core/audits/accessibility/valid-lang.js +0 -45
  1120. package/lighthouse-core/audits/accessibility/video-caption.js +0 -46
  1121. package/lighthouse-core/audits/apple-touch-icon.js +0 -72
  1122. package/lighthouse-core/audits/audit.js +0 -391
  1123. package/lighthouse-core/audits/autocomplete.js +0 -290
  1124. package/lighthouse-core/audits/bootup-time.js +0 -152
  1125. package/lighthouse-core/audits/byte-efficiency/byte-efficiency-audit.js +0 -258
  1126. package/lighthouse-core/audits/byte-efficiency/duplicated-javascript.js +0 -249
  1127. package/lighthouse-core/audits/byte-efficiency/efficient-animated-content.js +0 -92
  1128. package/lighthouse-core/audits/byte-efficiency/legacy-javascript.js +0 -472
  1129. package/lighthouse-core/audits/byte-efficiency/modern-image-formats.js +0 -186
  1130. package/lighthouse-core/audits/byte-efficiency/offscreen-images.js +0 -252
  1131. package/lighthouse-core/audits/byte-efficiency/render-blocking-resources.js +0 -309
  1132. package/lighthouse-core/audits/byte-efficiency/total-byte-weight.js +0 -111
  1133. package/lighthouse-core/audits/byte-efficiency/unminified-css.js +0 -117
  1134. package/lighthouse-core/audits/byte-efficiency/unminified-javascript.js +0 -120
  1135. package/lighthouse-core/audits/byte-efficiency/unused-css-rules.js +0 -71
  1136. package/lighthouse-core/audits/byte-efficiency/unused-javascript.js +0 -161
  1137. package/lighthouse-core/audits/byte-efficiency/uses-long-cache-ttl.js +0 -298
  1138. package/lighthouse-core/audits/byte-efficiency/uses-optimized-images.js +0 -145
  1139. package/lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js +0 -100
  1140. package/lighthouse-core/audits/byte-efficiency/uses-responsive-images.js +0 -177
  1141. package/lighthouse-core/audits/byte-efficiency/uses-text-compression.js +0 -100
  1142. package/lighthouse-core/audits/content-width.js +0 -77
  1143. package/lighthouse-core/audits/critical-request-chains.js +0 -220
  1144. package/lighthouse-core/audits/csp-xss.js +0 -186
  1145. package/lighthouse-core/audits/deprecations.js +0 -115
  1146. package/lighthouse-core/audits/diagnostics.js +0 -79
  1147. package/lighthouse-core/audits/dobetterweb/charset.js +0 -96
  1148. package/lighthouse-core/audits/dobetterweb/doctype.js +0 -94
  1149. package/lighthouse-core/audits/dobetterweb/dom-size.js +0 -123
  1150. package/lighthouse-core/audits/dobetterweb/geolocation-on-start.js +0 -70
  1151. package/lighthouse-core/audits/dobetterweb/inspector-issues.js +0 -192
  1152. package/lighthouse-core/audits/dobetterweb/js-libraries.js +0 -88
  1153. package/lighthouse-core/audits/dobetterweb/no-document-write.js +0 -85
  1154. package/lighthouse-core/audits/dobetterweb/no-vulnerable-libraries.js +0 -225
  1155. package/lighthouse-core/audits/dobetterweb/notification-on-start.js +0 -69
  1156. package/lighthouse-core/audits/dobetterweb/password-inputs-can-be-pasted-into.js +0 -66
  1157. package/lighthouse-core/audits/dobetterweb/uses-http2.js +0 -258
  1158. package/lighthouse-core/audits/dobetterweb/uses-passive-event-listeners.js +0 -68
  1159. package/lighthouse-core/audits/errors-in-console.js +0 -118
  1160. package/lighthouse-core/audits/final-screenshot.js +0 -59
  1161. package/lighthouse-core/audits/font-display.js +0 -193
  1162. package/lighthouse-core/audits/full-page-screenshot.js +0 -43
  1163. package/lighthouse-core/audits/image-aspect-ratio.js +0 -122
  1164. package/lighthouse-core/audits/image-size-responsive.js +0 -331
  1165. package/lighthouse-core/audits/installable-manifest.js +0 -266
  1166. package/lighthouse-core/audits/is-on-https.js +0 -125
  1167. package/lighthouse-core/audits/largest-contentful-paint-element.js +0 -70
  1168. package/lighthouse-core/audits/layout-shift-elements.js +0 -75
  1169. package/lighthouse-core/audits/lcp-lazy-loaded.js +0 -85
  1170. package/lighthouse-core/audits/long-tasks.js +0 -124
  1171. package/lighthouse-core/audits/main-thread-tasks.js +0 -59
  1172. package/lighthouse-core/audits/mainthread-work-breakdown.js +0 -134
  1173. package/lighthouse-core/audits/manual/manual-audit.js +0 -37
  1174. package/lighthouse-core/audits/manual/pwa-cross-browser.js +0 -41
  1175. package/lighthouse-core/audits/manual/pwa-each-page-has-url.js +0 -39
  1176. package/lighthouse-core/audits/manual/pwa-page-transitions.js +0 -39
  1177. package/lighthouse-core/audits/maskable-icon.js +0 -71
  1178. package/lighthouse-core/audits/metrics/cumulative-layout-shift.js +0 -79
  1179. package/lighthouse-core/audits/metrics/experimental-interaction-to-next-paint.js +0 -88
  1180. package/lighthouse-core/audits/metrics/first-contentful-paint-3g.js +0 -67
  1181. package/lighthouse-core/audits/metrics/first-contentful-paint.js +0 -85
  1182. package/lighthouse-core/audits/metrics/first-meaningful-paint.js +0 -89
  1183. package/lighthouse-core/audits/metrics/interactive.js +0 -93
  1184. package/lighthouse-core/audits/metrics/largest-contentful-paint.js +0 -114
  1185. package/lighthouse-core/audits/metrics/max-potential-fid.js +0 -76
  1186. package/lighthouse-core/audits/metrics/speed-index.js +0 -88
  1187. package/lighthouse-core/audits/metrics/total-blocking-time.js +0 -117
  1188. package/lighthouse-core/audits/metrics.js +0 -73
  1189. package/lighthouse-core/audits/multi-check-audit.js +0 -83
  1190. package/lighthouse-core/audits/network-requests.js +0 -130
  1191. package/lighthouse-core/audits/network-rtt.js +0 -90
  1192. package/lighthouse-core/audits/network-server-latency.js +0 -89
  1193. package/lighthouse-core/audits/no-unload-listeners.js +0 -95
  1194. package/lighthouse-core/audits/non-composited-animations.js +0 -206
  1195. package/lighthouse-core/audits/oopif-iframe-test-audit.js +0 -30
  1196. package/lighthouse-core/audits/performance-budget.js +0 -154
  1197. package/lighthouse-core/audits/predictive-perf.js +0 -101
  1198. package/lighthouse-core/audits/preload-fonts.js +0 -107
  1199. package/lighthouse-core/audits/preload-lcp-image.js +0 -272
  1200. package/lighthouse-core/audits/redirects.js +0 -163
  1201. package/lighthouse-core/audits/resource-summary.js +0 -104
  1202. package/lighthouse-core/audits/screenshot-thumbnails.js +0 -163
  1203. package/lighthouse-core/audits/script-treemap-data.js +0 -288
  1204. package/lighthouse-core/audits/seo/canonical.js +0 -218
  1205. package/lighthouse-core/audits/seo/crawlable-anchors.js +0 -94
  1206. package/lighthouse-core/audits/seo/font-size.js +0 -344
  1207. package/lighthouse-core/audits/seo/hreflang.js +0 -149
  1208. package/lighthouse-core/audits/seo/http-status-code.js +0 -70
  1209. package/lighthouse-core/audits/seo/is-crawlable.js +0 -155
  1210. package/lighthouse-core/audits/seo/link-text.js +0 -158
  1211. package/lighthouse-core/audits/seo/manual/structured-data.js +0 -38
  1212. package/lighthouse-core/audits/seo/meta-description.js +0 -67
  1213. package/lighthouse-core/audits/seo/plugins.js +0 -152
  1214. package/lighthouse-core/audits/seo/robots-txt.js +0 -256
  1215. package/lighthouse-core/audits/seo/tap-targets.js +0 -352
  1216. package/lighthouse-core/audits/server-response-time.js +0 -106
  1217. package/lighthouse-core/audits/service-worker.js +0 -179
  1218. package/lighthouse-core/audits/splash-screen.js +0 -99
  1219. package/lighthouse-core/audits/themed-omnibox.js +0 -110
  1220. package/lighthouse-core/audits/third-party-facades.js +0 -221
  1221. package/lighthouse-core/audits/third-party-summary.js +0 -259
  1222. package/lighthouse-core/audits/timing-budget.js +0 -174
  1223. package/lighthouse-core/audits/unsized-images.js +0 -163
  1224. package/lighthouse-core/audits/user-timings.js +0 -120
  1225. package/lighthouse-core/audits/uses-rel-preconnect.js +0 -254
  1226. package/lighthouse-core/audits/uses-rel-preload.js +0 -267
  1227. package/lighthouse-core/audits/valid-source-maps.js +0 -157
  1228. package/lighthouse-core/audits/viewport.js +0 -65
  1229. package/lighthouse-core/audits/violation-audit.js +0 -50
  1230. package/lighthouse-core/audits/work-during-interaction.js +0 -280
  1231. package/lighthouse-core/computed/computed-artifact.js +0 -62
  1232. package/lighthouse-core/computed/critical-request-chains.js +0 -146
  1233. package/lighthouse-core/computed/image-records.js +0 -63
  1234. package/lighthouse-core/computed/js-bundles.js +0 -119
  1235. package/lighthouse-core/computed/load-simulator.js +0 -92
  1236. package/lighthouse-core/computed/main-resource.js +0 -34
  1237. package/lighthouse-core/computed/main-thread-tasks.js +0 -25
  1238. package/lighthouse-core/computed/manifest-values.js +0 -135
  1239. package/lighthouse-core/computed/metrics/cumulative-layout-shift.js +0 -129
  1240. package/lighthouse-core/computed/metrics/first-contentful-paint-all-frames.js +0 -37
  1241. package/lighthouse-core/computed/metrics/first-contentful-paint.js +0 -40
  1242. package/lighthouse-core/computed/metrics/first-meaningful-paint.js +0 -44
  1243. package/lighthouse-core/computed/metrics/interactive.js +0 -193
  1244. package/lighthouse-core/computed/metrics/lantern-first-contentful-paint.js +0 -204
  1245. package/lighthouse-core/computed/metrics/lantern-first-meaningful-paint.js +0 -83
  1246. package/lighthouse-core/computed/metrics/lantern-interactive.js +0 -113
  1247. package/lighthouse-core/computed/metrics/lantern-largest-contentful-paint.js +0 -111
  1248. package/lighthouse-core/computed/metrics/lantern-max-potential-fid.js +0 -93
  1249. package/lighthouse-core/computed/metrics/lantern-metric.js +0 -167
  1250. package/lighthouse-core/computed/metrics/lantern-speed-index.js +0 -150
  1251. package/lighthouse-core/computed/metrics/lantern-total-blocking-time.js +0 -126
  1252. package/lighthouse-core/computed/metrics/largest-contentful-paint-all-frames.js +0 -45
  1253. package/lighthouse-core/computed/metrics/largest-contentful-paint.js +0 -52
  1254. package/lighthouse-core/computed/metrics/max-potential-fid.js +0 -45
  1255. package/lighthouse-core/computed/metrics/metric.js +0 -100
  1256. package/lighthouse-core/computed/metrics/navigation-metric.js +0 -46
  1257. package/lighthouse-core/computed/metrics/responsiveness.js +0 -157
  1258. package/lighthouse-core/computed/metrics/speed-index.js +0 -40
  1259. package/lighthouse-core/computed/metrics/tbt-utils.js +0 -57
  1260. package/lighthouse-core/computed/metrics/timing-summary.js +0 -150
  1261. package/lighthouse-core/computed/metrics/total-blocking-time.js +0 -74
  1262. package/lighthouse-core/computed/module-duplication.js +0 -136
  1263. package/lighthouse-core/computed/network-analysis.js +0 -64
  1264. package/lighthouse-core/computed/network-records.js +0 -21
  1265. package/lighthouse-core/computed/page-dependency-graph.js +0 -488
  1266. package/lighthouse-core/computed/processed-navigation.js +0 -21
  1267. package/lighthouse-core/computed/processed-trace.js +0 -21
  1268. package/lighthouse-core/computed/resource-summary.js +0 -114
  1269. package/lighthouse-core/computed/screenshots.js +0 -29
  1270. package/lighthouse-core/computed/speedline.js +0 -54
  1271. package/lighthouse-core/computed/trace-of-tab.js +0 -30
  1272. package/lighthouse-core/computed/unused-css.js +0 -154
  1273. package/lighthouse-core/computed/unused-javascript-summary.js +0 -175
  1274. package/lighthouse-core/computed/user-timings.js +0 -83
  1275. package/lighthouse-core/computed/viewport-meta.js +0 -56
  1276. package/lighthouse-core/config/budget.js +0 -341
  1277. package/lighthouse-core/config/config-helpers.js +0 -590
  1278. package/lighthouse-core/config/config-plugin.js +0 -225
  1279. package/lighthouse-core/config/config.js +0 -544
  1280. package/lighthouse-core/config/constants.js +0 -169
  1281. package/lighthouse-core/config/default-config.js +0 -632
  1282. package/lighthouse-core/config/desktop-config.js +0 -21
  1283. package/lighthouse-core/config/experimental-config.js +0 -30
  1284. package/lighthouse-core/config/full-config.js +0 -14
  1285. package/lighthouse-core/config/lr-desktop-config.js +0 -25
  1286. package/lighthouse-core/config/lr-mobile-config.js +0 -31
  1287. package/lighthouse-core/config/metrics-to-audits.js +0 -61
  1288. package/lighthouse-core/config/perf-config.js +0 -17
  1289. package/lighthouse-core/fraggle-rock/api.js +0 -77
  1290. package/lighthouse-core/fraggle-rock/config/config.js +0 -281
  1291. package/lighthouse-core/fraggle-rock/config/default-config.js +0 -205
  1292. package/lighthouse-core/fraggle-rock/config/filters.js +0 -335
  1293. package/lighthouse-core/fraggle-rock/config/validation.js +0 -313
  1294. package/lighthouse-core/fraggle-rock/gather/base-artifacts.js +0 -99
  1295. package/lighthouse-core/fraggle-rock/gather/base-gatherer.js +0 -107
  1296. package/lighthouse-core/fraggle-rock/gather/driver.js +0 -88
  1297. package/lighthouse-core/fraggle-rock/gather/navigation-runner.js +0 -339
  1298. package/lighthouse-core/fraggle-rock/gather/runner-helpers.js +0 -160
  1299. package/lighthouse-core/fraggle-rock/gather/session.js +0 -182
  1300. package/lighthouse-core/fraggle-rock/gather/snapshot-runner.js +0 -68
  1301. package/lighthouse-core/fraggle-rock/gather/timespan-runner.js +0 -82
  1302. package/lighthouse-core/fraggle-rock/user-flow.js +0 -229
  1303. package/lighthouse-core/gather/connections/connection.js +0 -179
  1304. package/lighthouse-core/gather/connections/cri.js +0 -171
  1305. package/lighthouse-core/gather/connections/raw.js +0 -58
  1306. package/lighthouse-core/gather/devtools-log.js +0 -61
  1307. package/lighthouse-core/gather/driver/dom.js +0 -58
  1308. package/lighthouse-core/gather/driver/environment.js +0 -105
  1309. package/lighthouse-core/gather/driver/execution-context.js +0 -249
  1310. package/lighthouse-core/gather/driver/navigation.js +0 -179
  1311. package/lighthouse-core/gather/driver/network-monitor.js +0 -290
  1312. package/lighthouse-core/gather/driver/network.js +0 -28
  1313. package/lighthouse-core/gather/driver/prepare.js +0 -226
  1314. package/lighthouse-core/gather/driver/service-workers.js +0 -53
  1315. package/lighthouse-core/gather/driver/storage.js +0 -125
  1316. package/lighthouse-core/gather/driver/target-manager.js +0 -125
  1317. package/lighthouse-core/gather/driver/wait-for-condition.js +0 -535
  1318. package/lighthouse-core/gather/driver.js +0 -482
  1319. package/lighthouse-core/gather/fetcher.js +0 -318
  1320. package/lighthouse-core/gather/gather-runner.js +0 -622
  1321. package/lighthouse-core/gather/gatherers/accessibility.js +0 -172
  1322. package/lighthouse-core/gather/gatherers/anchor-elements.js +0 -133
  1323. package/lighthouse-core/gather/gatherers/cache-contents.js +0 -59
  1324. package/lighthouse-core/gather/gatherers/console-messages.js +0 -173
  1325. package/lighthouse-core/gather/gatherers/css-usage.js +0 -149
  1326. package/lighthouse-core/gather/gatherers/devtools-log-compat.js +0 -36
  1327. package/lighthouse-core/gather/gatherers/devtools-log.js +0 -66
  1328. package/lighthouse-core/gather/gatherers/dobetterweb/doctype.js +0 -46
  1329. package/lighthouse-core/gather/gatherers/dobetterweb/domstats.js +0 -103
  1330. package/lighthouse-core/gather/gatherers/dobetterweb/optimized-images.js +0 -192
  1331. package/lighthouse-core/gather/gatherers/dobetterweb/password-inputs-with-prevented-paste.js +0 -50
  1332. package/lighthouse-core/gather/gatherers/dobetterweb/response-compression.js +0 -154
  1333. package/lighthouse-core/gather/gatherers/dobetterweb/tags-blocking-first-paint.js +0 -238
  1334. package/lighthouse-core/gather/gatherers/full-page-screenshot.js +0 -235
  1335. package/lighthouse-core/gather/gatherers/gatherer.js +0 -59
  1336. package/lighthouse-core/gather/gatherers/global-listeners.js +0 -92
  1337. package/lighthouse-core/gather/gatherers/iframe-elements.js +0 -65
  1338. package/lighthouse-core/gather/gatherers/image-elements.js +0 -375
  1339. package/lighthouse-core/gather/gatherers/inputs.js +0 -113
  1340. package/lighthouse-core/gather/gatherers/inspector-issues.js +0 -127
  1341. package/lighthouse-core/gather/gatherers/installability-errors.js +0 -48
  1342. package/lighthouse-core/gather/gatherers/js-usage.js +0 -145
  1343. package/lighthouse-core/gather/gatherers/link-elements.js +0 -184
  1344. package/lighthouse-core/gather/gatherers/main-document-content.js +0 -56
  1345. package/lighthouse-core/gather/gatherers/meta-elements.js +0 -68
  1346. package/lighthouse-core/gather/gatherers/network-user-agent.js +0 -42
  1347. package/lighthouse-core/gather/gatherers/script-elements.js +0 -160
  1348. package/lighthouse-core/gather/gatherers/seo/embedded-content.js +0 -64
  1349. package/lighthouse-core/gather/gatherers/seo/font-size.js +0 -380
  1350. package/lighthouse-core/gather/gatherers/seo/robots-txt.js +0 -56
  1351. package/lighthouse-core/gather/gatherers/seo/tap-targets.js +0 -370
  1352. package/lighthouse-core/gather/gatherers/service-worker.js +0 -45
  1353. package/lighthouse-core/gather/gatherers/source-maps.js +0 -150
  1354. package/lighthouse-core/gather/gatherers/stacks.js +0 -125
  1355. package/lighthouse-core/gather/gatherers/trace-compat.js +0 -36
  1356. package/lighthouse-core/gather/gatherers/trace-elements.js +0 -349
  1357. package/lighthouse-core/gather/gatherers/trace.js +0 -131
  1358. package/lighthouse-core/gather/gatherers/viewport-dimensions.js +0 -58
  1359. package/lighthouse-core/gather/gatherers/web-app-manifest.js +0 -102
  1360. package/lighthouse-core/index.js +0 -80
  1361. package/lighthouse-core/lib/arbitrary-equality-map.js +0 -81
  1362. package/lighthouse-core/lib/asset-saver.js +0 -341
  1363. package/lighthouse-core/lib/axe.js +0 -13
  1364. package/lighthouse-core/lib/cdt/Platform.js +0 -55
  1365. package/lighthouse-core/lib/cdt/SDK.js +0 -28
  1366. package/lighthouse-core/lib/cdt/generated/SourceMap.js +0 -346
  1367. package/lighthouse-core/lib/csp-evaluator.js +0 -173
  1368. package/lighthouse-core/lib/dependency-graph/base-node.js +0 -363
  1369. package/lighthouse-core/lib/dependency-graph/cpu-node.js +0 -86
  1370. package/lighthouse-core/lib/dependency-graph/network-node.js +0 -99
  1371. package/lighthouse-core/lib/dependency-graph/simulator/connection-pool.js +0 -171
  1372. package/lighthouse-core/lib/dependency-graph/simulator/dns-cache.js +0 -73
  1373. package/lighthouse-core/lib/dependency-graph/simulator/network-analyzer.js +0 -498
  1374. package/lighthouse-core/lib/dependency-graph/simulator/simulator-timing-map.js +0 -212
  1375. package/lighthouse-core/lib/dependency-graph/simulator/simulator.js +0 -523
  1376. package/lighthouse-core/lib/dependency-graph/simulator/tcp-connection.js +0 -206
  1377. package/lighthouse-core/lib/deprecations-strings.js +0 -573
  1378. package/lighthouse-core/lib/emulation.js +0 -164
  1379. package/lighthouse-core/lib/i18n/README.md +0 -273
  1380. package/lighthouse-core/lib/i18n/i18n.js +0 -221
  1381. package/lighthouse-core/lib/icons.js +0 -85
  1382. package/lighthouse-core/lib/lantern-trace-saver.js +0 -198
  1383. package/lighthouse-core/lib/lh-env.js +0 -14
  1384. package/lighthouse-core/lib/lh-error.js +0 -421
  1385. package/lighthouse-core/lib/lh-trace-processor.js +0 -46
  1386. package/lighthouse-core/lib/manifest-parser.js +0 -513
  1387. package/lighthouse-core/lib/median-run.js +0 -92
  1388. package/lighthouse-core/lib/minification-estimator.js +0 -193
  1389. package/lighthouse-core/lib/minify-devtoolslog.js +0 -87
  1390. package/lighthouse-core/lib/minify-trace.js +0 -173
  1391. package/lighthouse-core/lib/navigation-error.js +0 -145
  1392. package/lighthouse-core/lib/network-recorder.js +0 -337
  1393. package/lighthouse-core/lib/network-request.js +0 -545
  1394. package/lighthouse-core/lib/page-functions.js +0 -559
  1395. package/lighthouse-core/lib/proto-preprocessor.js +0 -133
  1396. package/lighthouse-core/lib/rect-helpers.js +0 -252
  1397. package/lighthouse-core/lib/script-helpers.js +0 -24
  1398. package/lighthouse-core/lib/sentry.js +0 -144
  1399. package/lighthouse-core/lib/stack-packs.js +0 -120
  1400. package/lighthouse-core/lib/statistics.js +0 -104
  1401. package/lighthouse-core/lib/tappable-rects.js +0 -99
  1402. package/lighthouse-core/lib/third-party-web.js +0 -53
  1403. package/lighthouse-core/lib/timing-trace-saver.js +0 -97
  1404. package/lighthouse-core/lib/tracehouse/cpu-profile-model.js +0 -592
  1405. package/lighthouse-core/lib/tracehouse/main-thread-tasks.js +0 -688
  1406. package/lighthouse-core/lib/tracehouse/task-groups.js +0 -112
  1407. package/lighthouse-core/lib/tracehouse/task-summary.js +0 -87
  1408. package/lighthouse-core/lib/tracehouse/trace-processor.js +0 -962
  1409. package/lighthouse-core/lib/traces/pwmetrics-events.js +0 -200
  1410. package/lighthouse-core/lib/url-shim.js +0 -274
  1411. package/lighthouse-core/runner.js +0 -518
  1412. package/lighthouse-core/scoring.js +0 -93
  1413. package/lighthouse-core/scripts/download-chrome.sh +0 -36
  1414. package/lighthouse-core/scripts/manual-chrome-launcher.js +0 -51
  1415. package/lighthouse-core/scripts/package.json +0 -4
  1416. package/lighthouse-core/util-commonjs.js +0 -708
  1417. package/now.json +0 -14
  1418. package/report/.eslintrc.cjs +0 -35
  1419. package/report/generator/package.json +0 -4
  1420. package/report/package.json +0 -4
  1421. package/report/renderer/i18n.js +0 -198
  1422. package/report/renderer/util.js +0 -705
  1423. package/report/test/generator/package.json +0 -4
  1424. package/report/test/renderer/i18n-test.js +0 -140
  1425. package/report/test/renderer/util-test.js +0 -479
  1426. package/third-party/snyk/snapshot.json +0 -182
  1427. package/types/cssstyle/index.d.ts +0 -23
  1428. package/types/global-lh.d.ts +0 -81
  1429. package/types/jest.d.ts +0 -25
  1430. package/types/jsonld/index.d.ts +0 -19
  1431. package/types/lhr/flow.d.ts +0 -32
  1432. package/types/lighthouse-logger/index.d.ts +0 -33
  1433. package/types/lookup-closest-locale/index.d.ts +0 -11
  1434. package/types/node.d.ts +0 -12
  1435. package/types/query-selector.d.ts +0 -36
  1436. package/types/smokehouse.d.ts +0 -80
  1437. package/types/structured-data.d.ts +0 -36
@@ -0,0 +1,66 @@
1
+ export type TaskGroupIds = 'parseHTML' | 'styleLayout' | 'paintCompositeRender' | 'scriptParseCompile' | 'scriptEvaluation' | 'garbageCollection' | 'other';
2
+ export type TaskGroup = {
3
+ id: TaskGroupIds;
4
+ label: string;
5
+ traceEventNames: string[];
6
+ };
7
+ /**
8
+ * @license Copyright 2017 The Lighthouse Authors. All Rights Reserved.
9
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
10
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
11
+ */
12
+ /** @typedef {'parseHTML'|'styleLayout'|'paintCompositeRender'|'scriptParseCompile'|'scriptEvaluation'|'garbageCollection'|'other'} TaskGroupIds */
13
+ /**
14
+ * @typedef TaskGroup
15
+ * @property {TaskGroupIds} id
16
+ * @property {string} label
17
+ * @property {string[]} traceEventNames
18
+ */
19
+ /**
20
+ * Make sure the traceEventNames keep up with the ones in DevTools
21
+ * @see https://cs.chromium.org/chromium/src/third_party/blink/renderer/devtools/front_end/timeline_model/TimelineModel.js?type=cs&q=TimelineModel.TimelineModel.RecordType+%3D&g=0&l=1156
22
+ * @see https://cs.chromium.org/chromium/src/third_party/blink/renderer/devtools/front_end/timeline/TimelineUIUtils.js?type=cs&q=_initEventStyles+-f:out+f:devtools&sq=package:chromium&g=0&l=39
23
+ * @type {{[P in TaskGroupIds]: {id: P, label: string, traceEventNames: Array<string>}}}
24
+ */
25
+ export const taskGroups: {
26
+ other: {
27
+ id: "other";
28
+ label: string;
29
+ traceEventNames: Array<string>;
30
+ };
31
+ parseHTML: {
32
+ id: "parseHTML";
33
+ label: string;
34
+ traceEventNames: Array<string>;
35
+ };
36
+ styleLayout: {
37
+ id: "styleLayout";
38
+ label: string;
39
+ traceEventNames: Array<string>;
40
+ };
41
+ paintCompositeRender: {
42
+ id: "paintCompositeRender";
43
+ label: string;
44
+ traceEventNames: Array<string>;
45
+ };
46
+ scriptParseCompile: {
47
+ id: "scriptParseCompile";
48
+ label: string;
49
+ traceEventNames: Array<string>;
50
+ };
51
+ scriptEvaluation: {
52
+ id: "scriptEvaluation";
53
+ label: string;
54
+ traceEventNames: Array<string>;
55
+ };
56
+ garbageCollection: {
57
+ id: "garbageCollection";
58
+ label: string;
59
+ traceEventNames: Array<string>;
60
+ };
61
+ };
62
+ /** @type {Object<string, TaskGroup>} */
63
+ export const taskNameToGroup: {
64
+ [x: string]: TaskGroup;
65
+ };
66
+ //# sourceMappingURL=task-groups.d.ts.map
@@ -0,0 +1,111 @@
1
+ /**
2
+ * @license Copyright 2017 The Lighthouse Authors. All Rights Reserved.
3
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
4
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
5
+ */
6
+
7
+ /** @typedef {'parseHTML'|'styleLayout'|'paintCompositeRender'|'scriptParseCompile'|'scriptEvaluation'|'garbageCollection'|'other'} TaskGroupIds */
8
+
9
+ /**
10
+ * @typedef TaskGroup
11
+ * @property {TaskGroupIds} id
12
+ * @property {string} label
13
+ * @property {string[]} traceEventNames
14
+ */
15
+
16
+ /**
17
+ * Make sure the traceEventNames keep up with the ones in DevTools
18
+ * @see https://cs.chromium.org/chromium/src/third_party/blink/renderer/devtools/front_end/timeline_model/TimelineModel.js?type=cs&q=TimelineModel.TimelineModel.RecordType+%3D&g=0&l=1156
19
+ * @see https://cs.chromium.org/chromium/src/third_party/blink/renderer/devtools/front_end/timeline/TimelineUIUtils.js?type=cs&q=_initEventStyles+-f:out+f:devtools&sq=package:chromium&g=0&l=39
20
+ * @type {{[P in TaskGroupIds]: {id: P, label: string, traceEventNames: Array<string>}}}
21
+ */
22
+ const taskGroups = {
23
+ parseHTML: {
24
+ id: 'parseHTML',
25
+ label: 'Parse HTML & CSS',
26
+ traceEventNames: ['ParseHTML', 'ParseAuthorStyleSheet'],
27
+ },
28
+ styleLayout: {
29
+ id: 'styleLayout',
30
+ label: 'Style & Layout',
31
+ traceEventNames: [
32
+ 'ScheduleStyleRecalculation',
33
+ 'UpdateLayoutTree', // previously RecalculateStyles
34
+ 'InvalidateLayout',
35
+ 'Layout',
36
+ ],
37
+ },
38
+ paintCompositeRender: {
39
+ id: 'paintCompositeRender',
40
+ label: 'Rendering',
41
+ traceEventNames: [
42
+ 'Animation',
43
+ 'HitTest',
44
+ 'PaintSetup',
45
+ 'Paint',
46
+ 'PaintImage',
47
+ 'RasterTask', // Previously Rasterize
48
+ 'ScrollLayer',
49
+ 'UpdateLayer',
50
+ 'UpdateLayerTree',
51
+ 'CompositeLayers',
52
+ 'PrePaint', // New name for UpdateLayerTree: https://crrev.com/c/3519012
53
+ ],
54
+ },
55
+ scriptParseCompile: {
56
+ id: 'scriptParseCompile',
57
+ label: 'Script Parsing & Compilation',
58
+ traceEventNames: ['v8.compile', 'v8.compileModule', 'v8.parseOnBackground'],
59
+ },
60
+ scriptEvaluation: {
61
+ id: 'scriptEvaluation',
62
+ label: 'Script Evaluation',
63
+ traceEventNames: [
64
+ 'EventDispatch',
65
+ 'EvaluateScript',
66
+ 'v8.evaluateModule',
67
+ 'FunctionCall',
68
+ 'TimerFire',
69
+ 'FireIdleCallback',
70
+ 'FireAnimationFrame',
71
+ 'RunMicrotasks',
72
+ 'V8.Execute',
73
+ ],
74
+ },
75
+ garbageCollection: {
76
+ id: 'garbageCollection',
77
+ label: 'Garbage Collection',
78
+ traceEventNames: [
79
+ 'MinorGC', // Previously GCEvent
80
+ 'MajorGC',
81
+ 'BlinkGC.AtomicPhase', // Previously ThreadState::performIdleLazySweep, ThreadState::completeSweep, BlinkGCMarking
82
+
83
+ // Kept for compatibility on older traces
84
+ 'ThreadState::performIdleLazySweep',
85
+ 'ThreadState::completeSweep',
86
+ 'BlinkGCMarking',
87
+ ],
88
+ },
89
+ other: {
90
+ id: 'other',
91
+ label: 'Other',
92
+ traceEventNames: [
93
+ 'MessageLoop::RunTask',
94
+ 'TaskQueueManager::ProcessTaskFromWorkQueue',
95
+ 'ThreadControllerImpl::DoWork',
96
+ ],
97
+ },
98
+ };
99
+
100
+ /** @type {Object<string, TaskGroup>} */
101
+ const taskNameToGroup = {};
102
+ for (const group of Object.values(taskGroups)) {
103
+ for (const traceEventName of group.traceEventNames) {
104
+ taskNameToGroup[traceEventName] = group;
105
+ }
106
+ }
107
+
108
+ export {
109
+ taskGroups,
110
+ taskNameToGroup,
111
+ };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @param {LH.Artifacts.NetworkRequest[]} records
3
+ */
4
+ export function getJavaScriptURLs(records: LH.Artifacts.NetworkRequest[]): Set<string>;
5
+ /**
6
+ * @param {LH.Artifacts.TaskNode} task
7
+ * @param {Set<string>} jsURLs
8
+ * @return {string}
9
+ */
10
+ export function getAttributableURLForTask(task: LH.Artifacts.TaskNode, jsURLs: Set<string>): string;
11
+ /**
12
+ * @param {LH.Artifacts.TaskNode[]} tasks
13
+ * @param {Array<LH.Artifacts.NetworkRequest>} networkRecords
14
+ * @return {Map<string, Record<string, number>>}
15
+ */
16
+ export function getExecutionTimingsByURL(tasks: LH.Artifacts.TaskNode[], networkRecords: Array<LH.Artifacts.NetworkRequest>): Map<string, Record<string, number>>;
17
+ import { NetworkRequest } from "../network-request.js";
18
+ //# sourceMappingURL=task-summary.d.ts.map
@@ -0,0 +1,86 @@
1
+ /**
2
+ * @license Copyright 2022 The Lighthouse Authors. All Rights Reserved.
3
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
4
+ * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
5
+ */
6
+
7
+ /**
8
+ * @fileoverview Utility functions for grouping and summarizing tasks.
9
+ */
10
+
11
+ import {NetworkRequest} from '../network-request.js';
12
+
13
+ // These trace events, when not triggered by a script inside a particular task, are just general Chrome overhead.
14
+ const BROWSER_TASK_NAMES_SET = new Set([
15
+ 'CpuProfiler::StartProfiling',
16
+ ]);
17
+
18
+ // These trace events, when not triggered by a script inside a particular task, are GC Chrome overhead.
19
+ const BROWSER_GC_TASK_NAMES_SET = new Set([
20
+ 'V8.GCCompactor',
21
+ 'MajorGC',
22
+ 'MinorGC',
23
+ ]);
24
+
25
+ /**
26
+ * @param {LH.Artifacts.NetworkRequest[]} records
27
+ */
28
+ function getJavaScriptURLs(records) {
29
+ /** @type {Set<string>} */
30
+ const urls = new Set();
31
+ for (const record of records) {
32
+ if (record.resourceType === NetworkRequest.TYPES.Script) {
33
+ urls.add(record.url);
34
+ }
35
+ }
36
+
37
+ return urls;
38
+ }
39
+
40
+ /**
41
+ * @param {LH.Artifacts.TaskNode} task
42
+ * @param {Set<string>} jsURLs
43
+ * @return {string}
44
+ */
45
+ function getAttributableURLForTask(task, jsURLs) {
46
+ const jsURL = task.attributableURLs.find(url => jsURLs.has(url));
47
+ const fallbackURL = task.attributableURLs[0];
48
+ let attributableURL = jsURL || fallbackURL;
49
+ // If we can't find what URL was responsible for this execution, attribute it to the root page
50
+ // or Chrome depending on the type of work.
51
+ if (!attributableURL || attributableURL === 'about:blank') {
52
+ if (BROWSER_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser';
53
+ else if (BROWSER_GC_TASK_NAMES_SET.has(task.event.name)) attributableURL = 'Browser GC';
54
+ else attributableURL = 'Unattributable';
55
+ }
56
+
57
+ return attributableURL;
58
+ }
59
+
60
+ /**
61
+ * @param {LH.Artifacts.TaskNode[]} tasks
62
+ * @param {Array<LH.Artifacts.NetworkRequest>} networkRecords
63
+ * @return {Map<string, Record<string, number>>}
64
+ */
65
+ function getExecutionTimingsByURL(tasks, networkRecords) {
66
+ const jsURLs = getJavaScriptURLs(networkRecords);
67
+
68
+ /** @type {Map<string, Record<string, number>>} */
69
+ const result = new Map();
70
+
71
+ for (const task of tasks) {
72
+ const attributableURL = getAttributableURLForTask(task, jsURLs);
73
+ const timingByGroupId = result.get(attributableURL) || {};
74
+ const originalTime = timingByGroupId[task.group.id] || 0;
75
+ timingByGroupId[task.group.id] = originalTime + task.selfTime;
76
+ result.set(attributableURL, timingByGroupId);
77
+ }
78
+
79
+ return result;
80
+ }
81
+
82
+ export {
83
+ getJavaScriptURLs,
84
+ getAttributableURLForTask,
85
+ getExecutionTimingsByURL,
86
+ };
@@ -0,0 +1,284 @@
1
+ export type TraceNavigationTimesForFrame = Omit<LH.Artifacts.NavigationTraceTimes, 'firstContentfulPaintAllFrames' | 'traceEnd'>;
2
+ export type TimeOriginDeterminationMethod = 'lastNavigationStart' | 'firstResourceSendRequest' | 'lighthouseMarker' | 'auto';
3
+ export type FrameCommittedEvent = Omit<LH.TraceEvent, 'name' | 'args'> & {
4
+ name: 'FrameCommittedInBrowser';
5
+ args: {
6
+ data: {
7
+ frame: string;
8
+ url: string;
9
+ parent?: string;
10
+ };
11
+ };
12
+ };
13
+ export type LCPEvent = Omit<LH.TraceEvent, 'name' | 'args'> & {
14
+ name: 'largestContentfulPaint::Invalidate' | 'largestContentfulPaint::Candidate';
15
+ args: {
16
+ data?: {
17
+ size?: number;
18
+ };
19
+ frame: string;
20
+ };
21
+ };
22
+ export type LCPCandidateEvent = Omit<LH.TraceEvent, 'name' | 'args'> & {
23
+ name: 'largestContentfulPaint::Candidate';
24
+ args: {
25
+ data: {
26
+ size: number;
27
+ };
28
+ frame: string;
29
+ };
30
+ };
31
+ export type ToplevelEvent = {
32
+ start: number;
33
+ end: number;
34
+ duration: number;
35
+ };
36
+ export class TraceProcessor {
37
+ static get TIMESPAN_MARKER_ID(): string;
38
+ /**
39
+ * @return {Error}
40
+ */
41
+ static createNoNavstartError(): Error;
42
+ /**
43
+ * @return {Error}
44
+ */
45
+ static createNoResourceSendRequestError(): Error;
46
+ /**
47
+ * @return {Error}
48
+ */
49
+ static createNoTracingStartedError(): Error;
50
+ /**
51
+ * @return {Error}
52
+ */
53
+ static createNoFirstContentfulPaintError(): Error;
54
+ /**
55
+ * @return {Error}
56
+ */
57
+ static createNoLighthouseMarkerError(): Error;
58
+ /**
59
+ * Returns true if the event is a navigation start event of a document whose URL seems valid.
60
+ *
61
+ * @param {LH.TraceEvent} event
62
+ * @return {boolean}
63
+ */
64
+ static _isNavigationStartOfInterest(event: LH.TraceEvent): boolean;
65
+ /**
66
+ * This method sorts a group of trace events that have the same timestamp. We want to...
67
+ *
68
+ * 1. Put E events first, we finish off our existing events before we start new ones.
69
+ * 2. Order B/X events by their duration, we want parents to start before child events.
70
+ * 3. If we don't have any of this to go on, just use the position in the original array (stable sort).
71
+ *
72
+ * Note that the typical group size with the same timestamp will be quite small (<10 or so events),
73
+ * and the number of groups typically ~1% of total trace, so the same ultra-performance-sensitive consideration
74
+ * given to functions that run on entire traces does not necessarily apply here.
75
+ *
76
+ * @param {number[]} tsGroupIndices
77
+ * @param {number[]} timestampSortedIndices
78
+ * @param {number} indexOfTsGroupIndicesStart
79
+ * @param {LH.TraceEvent[]} traceEvents
80
+ * @return {number[]}
81
+ */
82
+ static _sortTimestampEventGroup(tsGroupIndices: number[], timestampSortedIndices: number[], indexOfTsGroupIndicesStart: number, traceEvents: LH.TraceEvent[]): number[];
83
+ /**
84
+ * Sorts and filters trace events by timestamp and respecting the nesting structure inherent to
85
+ * parent/child event relationships.
86
+ *
87
+ * @param {LH.TraceEvent[]} traceEvents
88
+ * @param {(e: LH.TraceEvent) => boolean} filter
89
+ */
90
+ static filteredTraceSort(traceEvents: LH.TraceEvent[], filter: (e: LH.TraceEvent) => boolean): import("../..").TraceEvent[];
91
+ /**
92
+ * There should *always* be at least one top level event, having 0 typically means something is
93
+ * drastically wrong with the trace and we should just give up early and loudly.
94
+ *
95
+ * @param {LH.TraceEvent[]} events
96
+ */
97
+ static assertHasToplevelEvents(events: LH.TraceEvent[]): void;
98
+ /**
99
+ * Calculate duration at specified percentiles for given population of
100
+ * durations.
101
+ * If one of the durations overlaps the end of the window, the full
102
+ * duration should be in the duration array, but the length not included
103
+ * within the window should be given as `clippedLength`. For instance, if a
104
+ * 50ms duration occurs 10ms before the end of the window, `50` should be in
105
+ * the `durations` array, and `clippedLength` should be set to 40.
106
+ * @see https://docs.google.com/document/d/1b9slyaB9yho91YTOkAQfpCdULFkZM9LqsipcX3t7He8/preview
107
+ * @param {!Array<number>} durations Array of durations, sorted in ascending order.
108
+ * @param {number} totalTime Total time (in ms) of interval containing durations.
109
+ * @param {!Array<number>} percentiles Array of percentiles of interest, in ascending order.
110
+ * @param {number=} clippedLength Optional length clipped from a duration overlapping end of window. Default of 0.
111
+ * @return {!Array<{percentile: number, time: number}>}
112
+ * @private
113
+ */
114
+ private static _riskPercentiles;
115
+ /**
116
+ * Calculates the maximum queueing time (in ms) of high priority tasks for
117
+ * selected percentiles within a window of the main thread.
118
+ * @see https://docs.google.com/document/d/1b9slyaB9yho91YTOkAQfpCdULFkZM9LqsipcX3t7He8/preview
119
+ * @param {Array<ToplevelEvent>} events
120
+ * @param {number} startTime Start time (in ms relative to timeOrigin) of range of interest.
121
+ * @param {number} endTime End time (in ms relative to timeOrigin) of range of interest.
122
+ * @param {!Array<number>=} percentiles Optional array of percentiles to compute. Defaults to [0.5, 0.75, 0.9, 0.99, 1].
123
+ * @return {!Array<{percentile: number, time: number}>}
124
+ */
125
+ static getRiskToResponsiveness(events: Array<ToplevelEvent>, startTime: number, endTime: number, percentiles?: Array<number> | undefined): Array<{
126
+ percentile: number;
127
+ time: number;
128
+ }>;
129
+ /**
130
+ * Provides durations in ms of all main thread top-level events
131
+ * @param {Array<ToplevelEvent>} topLevelEvents
132
+ * @param {number} startTime Optional start time (in ms relative to timeOrigin) of range of interest. Defaults to 0.
133
+ * @param {number} endTime Optional end time (in ms relative to timeOrigin) of range of interest. Defaults to trace end.
134
+ * @return {{durations: Array<number>, clippedLength: number}}
135
+ */
136
+ static getMainThreadTopLevelEventDurations(topLevelEvents: Array<ToplevelEvent>, startTime?: number, endTime?: number): {
137
+ durations: Array<number>;
138
+ clippedLength: number;
139
+ };
140
+ /**
141
+ * Provides the top level events on the main thread with timestamps in ms relative to timeOrigin.
142
+ * start.
143
+ * @param {LH.Artifacts.ProcessedTrace} trace
144
+ * @param {number=} startTime Optional start time (in ms relative to timeOrigin) of range of interest. Defaults to 0.
145
+ * @param {number=} endTime Optional end time (in ms relative to timeOrigin) of range of interest. Defaults to trace end.
146
+ * @return {Array<ToplevelEvent>}
147
+ */
148
+ static getMainThreadTopLevelEvents(trace: LH.Artifacts.ProcessedTrace, startTime?: number | undefined, endTime?: number | undefined): Array<ToplevelEvent>;
149
+ /**
150
+ * @param {LH.TraceEvent[]} events
151
+ * @return {{startingPid: number, frameId: string}}
152
+ */
153
+ static findMainFrameIds(events: LH.TraceEvent[]): {
154
+ startingPid: number;
155
+ frameId: string;
156
+ };
157
+ /**
158
+ * If there were any cross-origin navigations, there'll be more than one pid returned
159
+ * @param {{startingPid: number, frameId: string}} mainFrameInfo
160
+ * @param {LH.TraceEvent[]} keyEvents
161
+ * @return {Map<number, number>} Map where keys are process IDs and their values are thread IDs
162
+ */
163
+ static findMainFramePidTids(mainFrameInfo: {
164
+ startingPid: number;
165
+ frameId: string;
166
+ }, keyEvents: LH.TraceEvent[]): Map<number, number>;
167
+ /**
168
+ * @param {LH.TraceEvent} evt
169
+ * @return {boolean}
170
+ */
171
+ static isScheduleableTask(evt: LH.TraceEvent): boolean;
172
+ /**
173
+ * @param {LH.TraceEvent} evt
174
+ * @return {evt is LCPEvent}
175
+ */
176
+ static isLCPEvent(evt: LH.TraceEvent): evt is LCPEvent;
177
+ /**
178
+ * @param {LH.TraceEvent} evt
179
+ * @return {evt is LCPCandidateEvent}
180
+ */
181
+ static isLCPCandidateEvent(evt: LH.TraceEvent): evt is LCPCandidateEvent;
182
+ /**
183
+ * Returns the maximum LCP event across all frames in `events`.
184
+ * Sets `invalidated` flag if LCP of every frame is invalidated.
185
+ *
186
+ * LCP's trace event was first introduced in m78. We can't surface an LCP for older Chrome versions.
187
+ * LCP comes from a frame's latest `largestContentfulPaint::Candidate`, but it can be invalidated by a `largestContentfulPaint::Invalidate` event.
188
+ *
189
+ * @param {LH.TraceEvent[]} events
190
+ * @param {LH.TraceEvent} timeOriginEvent
191
+ * @return {{lcp: LCPEvent | undefined, invalidated: boolean}}
192
+ */
193
+ static computeValidLCPAllFrames(events: LH.TraceEvent[], timeOriginEvent: LH.TraceEvent): {
194
+ lcp: LCPEvent | undefined;
195
+ invalidated: boolean;
196
+ };
197
+ /**
198
+ * @param {Array<{id: string, url: string, parent?: string}>} frames
199
+ * @return {Map<string, string>}
200
+ */
201
+ static resolveRootFrames(frames: Array<{
202
+ id: string;
203
+ url: string;
204
+ parent?: string;
205
+ }>): Map<string, string>;
206
+ /**
207
+ * Finds key trace events, identifies main process/thread, and returns timings of trace events
208
+ * in milliseconds since the time origin in addition to the standard microsecond monotonic timestamps.
209
+ * @param {LH.Trace} trace
210
+ * @param {{timeOriginDeterminationMethod?: TimeOriginDeterminationMethod}} [options]
211
+ * @return {LH.Artifacts.ProcessedTrace}
212
+ */
213
+ static processTrace(trace: LH.Trace, options?: {
214
+ timeOriginDeterminationMethod?: TimeOriginDeterminationMethod | undefined;
215
+ } | undefined): LH.Artifacts.ProcessedTrace;
216
+ /**
217
+ * Finds key navigation trace events and computes timings of events in milliseconds since the time
218
+ * origin in addition to the standard microsecond monotonic timestamps.
219
+ * @param {LH.Artifacts.ProcessedTrace} processedTrace
220
+ * @return {LH.Artifacts.ProcessedNavigation}
221
+ */
222
+ static processNavigation(processedTrace: LH.Artifacts.ProcessedTrace): LH.Artifacts.ProcessedNavigation;
223
+ /**
224
+ * Computes the last observable timestamp in a set of trace events.
225
+ *
226
+ * @param {Array<LH.TraceEvent>} events
227
+ * @param {LH.TraceEvent} timeOriginEvt
228
+ * @return {{timing: number, timestamp: number}}
229
+ */
230
+ static computeTraceEnd(events: Array<LH.TraceEvent>, timeOriginEvt: LH.TraceEvent): {
231
+ timing: number;
232
+ timestamp: number;
233
+ };
234
+ /**
235
+ * Computes the time origin using the specified method.
236
+ *
237
+ * - firstResourceSendRequest
238
+ * Uses the time that the very first network request is sent in the main frame.
239
+ * Eventually should be used in place of lastNavigationStart as the default for navigations.
240
+ * This method includes the cost of all redirects when evaluating a navigation (which matches lantern behavior).
241
+ * The only difference between firstResourceSendRequest and the first `navigationStart` is
242
+ * the unload time of `about:blank` (which is a Lighthouse implementation detail and shouldn't be included).
243
+ *
244
+ * - lastNavigationStart
245
+ * Uses the time of the last `navigationStart` event in the main frame.
246
+ * The historical time origin of Lighthouse from 2016-Present.
247
+ * This method excludes the cost of client-side redirects when evaluating a navigation.
248
+ * Can also be skewed by several hundred milliseconds or even seconds when the browser takes a long
249
+ * time to unload `about:blank`.
250
+ *
251
+ * @param {{keyEvents: Array<LH.TraceEvent>, frameEvents: Array<LH.TraceEvent>, mainFrameInfo: {frameId: string}}} traceEventSubsets
252
+ * @param {TimeOriginDeterminationMethod} method
253
+ * @return {LH.TraceEvent}
254
+ */
255
+ static computeTimeOrigin(traceEventSubsets: {
256
+ keyEvents: Array<LH.TraceEvent>;
257
+ frameEvents: Array<LH.TraceEvent>;
258
+ mainFrameInfo: {
259
+ frameId: string;
260
+ };
261
+ }, method: TimeOriginDeterminationMethod): LH.TraceEvent;
262
+ /**
263
+ * Computes timings of trace events of key trace events in milliseconds since the time origin
264
+ * in addition to the standard microsecond monotonic timestamps.
265
+ * @param {Array<LH.TraceEvent>} frameEvents
266
+ * @param {{timeOriginEvt: LH.TraceEvent}} options
267
+ */
268
+ static computeNavigationTimingsForFrame(frameEvents: Array<LH.TraceEvent>, options: {
269
+ timeOriginEvt: LH.TraceEvent;
270
+ }): {
271
+ timings: TraceNavigationTimesForFrame;
272
+ timestamps: TraceNavigationTimesForFrame;
273
+ timeOriginEvt: import("../..").TraceEvent;
274
+ firstPaintEvt: import("../..").TraceEvent | undefined;
275
+ firstContentfulPaintEvt: import("../..").TraceEvent;
276
+ firstMeaningfulPaintEvt: import("../..").TraceEvent | undefined;
277
+ largestContentfulPaintEvt: LCPEvent | undefined;
278
+ loadEvt: import("../..").TraceEvent | undefined;
279
+ domContentLoadedEvt: import("../..").TraceEvent | undefined;
280
+ fmpFellBack: boolean;
281
+ lcpInvalidated: boolean;
282
+ };
283
+ }
284
+ //# sourceMappingURL=trace-processor.d.ts.map