chrome-devtools-frontend 1.0.923319 → 1.0.925171

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 (313) hide show
  1. package/config/gni/all_devtools_files.gni +0 -1
  2. package/config/gni/devtools_grd_files.gni +1 -3
  3. package/config/gni/devtools_image_files.gni +1 -1
  4. package/front_end/Images/src/copy_icon.svg +79 -0
  5. package/front_end/core/common/EventTarget.ts +22 -27
  6. package/front_end/core/common/Object.ts +28 -26
  7. package/front_end/core/common/Settings.ts +9 -8
  8. package/front_end/core/i18n/locales/en-US.json +18 -39
  9. package/front_end/core/i18n/locales/en-XL.json +18 -39
  10. package/front_end/core/platform/string-utilities.ts +4 -3
  11. package/front_end/core/sdk/EmulationModel.ts +1 -1
  12. package/front_end/core/sdk/NetworkManager.ts +1 -2
  13. package/front_end/core/sdk/ResourceTreeModel.ts +2 -3
  14. package/front_end/core/sdk/RuntimeModel.ts +2 -3
  15. package/front_end/core/sdk/SourceMap.ts +74 -31
  16. package/front_end/core/sdk/TargetManager.ts +9 -8
  17. package/front_end/core/sdk/TracingManager.ts +1 -1
  18. package/front_end/entrypoints/main/MainImpl.ts +1 -1
  19. package/front_end/entrypoints/node_main/NodeMain.ts +1 -1
  20. package/front_end/generated/InspectorBackendCommands.js +9 -5
  21. package/front_end/generated/protocol-mapping.d.ts +1 -0
  22. package/front_end/generated/protocol-proxy-api.d.ts +1 -0
  23. package/front_end/generated/protocol.d.ts +13 -2
  24. package/front_end/legacy_test_runner/application_test_runner/application_test_runner.js +0 -1
  25. package/front_end/models/bindings/CompilerScriptMapping.ts +24 -6
  26. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +30 -30
  27. package/front_end/models/extensions/ExtensionServer.ts +10 -13
  28. package/front_end/models/workspace/WorkspaceImpl.ts +1 -1
  29. package/front_end/models/workspace_diff/WorkspaceDiff.ts +24 -20
  30. package/front_end/panels/animation/AnimationModel.ts +6 -1
  31. package/front_end/panels/animation/AnimationTimeline.ts +2 -2
  32. package/front_end/panels/application/AppManifestView.ts +58 -20
  33. package/front_end/panels/application/ApplicationPanelCacheSection.ts +1 -59
  34. package/front_end/panels/application/ApplicationPanelSidebar.ts +15 -163
  35. package/front_end/panels/application/BackgroundServiceModel.ts +6 -1
  36. package/front_end/panels/application/BackgroundServiceView.ts +4 -4
  37. package/front_end/panels/application/DatabaseModel.ts +6 -1
  38. package/front_end/panels/application/DatabaseTableView.ts +1 -1
  39. package/front_end/panels/application/IndexedDBModel.ts +9 -1
  40. package/front_end/panels/application/IndexedDBViews.ts +6 -7
  41. package/front_end/panels/application/ServiceWorkerCacheViews.ts +1 -1
  42. package/front_end/panels/application/ServiceWorkersView.ts +3 -3
  43. package/front_end/panels/application/StorageItemsView.ts +2 -3
  44. package/front_end/panels/application/StorageView.ts +0 -13
  45. package/front_end/panels/application/appManifestView.css +8 -0
  46. package/front_end/panels/application/application-legacy.ts +0 -3
  47. package/front_end/panels/application/application.ts +0 -4
  48. package/front_end/panels/browser_debugger/ObjectEventListenersSidebarPane.ts +1 -1
  49. package/front_end/panels/console/ConsolePinPane.ts +1 -2
  50. package/front_end/panels/console/ConsoleSidebar.ts +2 -2
  51. package/front_end/panels/console/ConsoleView.ts +7 -6
  52. package/front_end/panels/console/ConsoleViewMessage.ts +4 -3
  53. package/front_end/panels/coverage/CoverageModel.ts +9 -3
  54. package/front_end/panels/coverage/CoverageView.ts +3 -2
  55. package/front_end/panels/css_overview/CSSOverviewModel.ts +1 -1
  56. package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +1 -1
  57. package/front_end/panels/elements/ComputedStyleWidget.ts +2 -2
  58. package/front_end/panels/elements/ElementsPanel.ts +3 -3
  59. package/front_end/panels/elements/StylePropertyTreeElement.ts +14 -4
  60. package/front_end/panels/elements/StylesSidebarPane.ts +4 -2
  61. package/front_end/panels/input/InputModel.ts +1 -1
  62. package/front_end/panels/issues/ComboBoxOfCheckBoxes.ts +2 -4
  63. package/front_end/panels/issues/HiddenIssuesRow.ts +7 -12
  64. package/front_end/panels/layers/LayerTreeModel.ts +6 -1
  65. package/front_end/panels/layers/LayersPanel.ts +3 -4
  66. package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +1 -0
  67. package/front_end/panels/media/MainView.ts +22 -19
  68. package/front_end/panels/media/MediaModel.ts +15 -7
  69. package/front_end/panels/media/PlayerMessagesView.ts +2 -4
  70. package/front_end/panels/network/NetworkPanel.ts +6 -6
  71. package/front_end/panels/network/RequestHeadersView.ts +7 -0
  72. package/front_end/panels/network/networkLogView.css +5 -0
  73. package/front_end/panels/profiler/HeapProfileView.ts +14 -4
  74. package/front_end/panels/profiler/HeapSnapshotView.ts +54 -22
  75. package/front_end/panels/profiler/LiveHeapProfileView.ts +2 -2
  76. package/front_end/panels/profiler/ProfileHeader.ts +11 -2
  77. package/front_end/panels/profiler/ProfileView.ts +3 -3
  78. package/front_end/panels/profiler/ProfilesPanel.ts +7 -6
  79. package/front_end/panels/screencast/InputModel.ts +1 -1
  80. package/front_end/panels/screencast/ScreencastView.ts +1 -1
  81. package/front_end/panels/security/SecurityModel.ts +5 -1
  82. package/front_end/panels/security/SecurityPanel.ts +1 -2
  83. package/front_end/panels/sensors/SensorsView.ts +3 -2
  84. package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +6 -3
  85. package/front_end/panels/sources/CSSPlugin.ts +1 -1
  86. package/front_end/panels/sources/DebuggerPlugin.ts +6 -4
  87. package/front_end/panels/sources/InplaceFormatterEditorAction.ts +1 -1
  88. package/front_end/panels/sources/ScriptFormatterEditorAction.ts +1 -1
  89. package/front_end/panels/sources/SourcesPanel.ts +2 -2
  90. package/front_end/panels/timeline/TimelineFlameChartView.ts +5 -8
  91. package/front_end/panels/timeline/TimelineUIUtils.ts +1 -2
  92. package/front_end/panels/web_audio/AudioContextSelector.ts +4 -6
  93. package/front_end/panels/web_audio/WebAudioModel.ts +19 -1
  94. package/front_end/panels/web_audio/WebAudioView.ts +28 -22
  95. package/front_end/panels/web_audio/graph_visualizer/graph_visualizer.ts +0 -7
  96. package/front_end/panels/web_audio/web_audio.ts +1 -23
  97. package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +598 -595
  98. package/front_end/third_party/lighthouse/locales/en-US.json +6 -0
  99. package/front_end/third_party/lighthouse/locales/en-XL.json +6 -0
  100. package/front_end/third_party/lighthouse/report/bundle.d.ts +25 -4
  101. package/front_end/third_party/lighthouse/report/bundle.js +111 -22
  102. package/front_end/third_party/lighthouse/report-assets/report.css +120 -12
  103. package/front_end/third_party/lighthouse/report-assets/report.js +10 -10
  104. package/front_end/third_party/puppeteer/README.chromium +1 -1
  105. package/front_end/third_party/puppeteer/package/CHANGELOG.md +66 -0
  106. package/front_end/third_party/puppeteer/package/README.md +34 -13
  107. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
  108. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js +5 -5
  109. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
  110. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts +18 -2
  111. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts.map +1 -1
  112. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js +8 -3
  113. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js.map +1 -1
  114. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.d.ts +2 -2
  115. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.js +2 -2
  116. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts +22 -6
  117. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts.map +1 -1
  118. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js +14 -7
  119. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js.map +1 -1
  120. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts +1 -0
  121. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +1 -1
  122. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js +10 -6
  123. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js.map +1 -1
  124. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
  125. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js +120 -0
  126. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js.map +1 -1
  127. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts +1 -1
  128. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts.map +1 -1
  129. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts.map +1 -1
  130. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js +2 -2
  131. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
  132. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts +62 -3
  133. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  134. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js +131 -3
  135. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  136. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts +40 -0
  137. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts.map +1 -1
  138. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js +76 -0
  139. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js.map +1 -1
  140. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts +53 -2
  141. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts.map +1 -1
  142. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js +82 -13
  143. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
  144. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +2 -1
  145. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  146. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js +14 -2
  147. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  148. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts +5 -0
  149. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
  150. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
  151. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts +1053 -29
  152. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
  153. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js +1114 -22
  154. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js.map +1 -1
  155. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.d.ts.map +1 -1
  156. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js +17 -6
  157. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js.map +1 -1
  158. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts +1 -0
  159. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts.map +1 -1
  160. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js +6 -1
  161. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js.map +1 -1
  162. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts +21 -5
  163. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts.map +1 -1
  164. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js +47 -28
  165. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js.map +1 -1
  166. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.d.ts +17 -0
  167. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.d.ts.map +1 -0
  168. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.js +3 -0
  169. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.js.map +1 -0
  170. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
  171. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js +9 -10
  172. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
  173. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  174. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js +5 -2
  175. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  176. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts +10 -2
  177. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  178. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts +1 -1
  179. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts.map +1 -1
  180. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js +83 -6
  181. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  182. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
  183. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +7 -1
  184. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
  185. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts +1 -1
  186. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts.map +1 -1
  187. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js +2 -2
  188. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js.map +1 -1
  189. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.d.ts.map +1 -1
  190. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js +17 -3
  191. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js.map +1 -1
  192. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +1 -1
  193. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
  194. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js +5 -5
  195. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
  196. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts +18 -2
  197. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts.map +1 -1
  198. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js +8 -3
  199. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js.map +1 -1
  200. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts +2 -2
  201. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.js +2 -2
  202. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts +22 -6
  203. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts.map +1 -1
  204. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js +14 -7
  205. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js.map +1 -1
  206. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts +1 -0
  207. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -1
  208. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js +10 -6
  209. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js.map +1 -1
  210. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
  211. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js +120 -0
  212. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js.map +1 -1
  213. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts +1 -1
  214. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts.map +1 -1
  215. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -1
  216. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +2 -2
  217. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
  218. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +62 -3
  219. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  220. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +131 -3
  221. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  222. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts +40 -0
  223. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts.map +1 -1
  224. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js +76 -0
  225. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js.map +1 -1
  226. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts +53 -2
  227. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -1
  228. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js +82 -13
  229. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js.map +1 -1
  230. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +2 -1
  231. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  232. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +14 -2
  233. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  234. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +5 -0
  235. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
  236. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
  237. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts +1053 -29
  238. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
  239. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +1115 -23
  240. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js.map +1 -1
  241. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts.map +1 -1
  242. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js +17 -6
  243. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js.map +1 -1
  244. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts +1 -0
  245. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts.map +1 -1
  246. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js +4 -0
  247. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js.map +1 -1
  248. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts +21 -5
  249. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +1 -1
  250. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js +32 -13
  251. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js.map +1 -1
  252. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.d.ts +17 -0
  253. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.d.ts.map +1 -0
  254. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.js +2 -0
  255. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.js.map +1 -0
  256. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
  257. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +9 -10
  258. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
  259. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
  260. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +5 -2
  261. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  262. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts +10 -2
  263. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
  264. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts +1 -1
  265. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -1
  266. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js +83 -6
  267. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  268. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
  269. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js +7 -1
  270. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
  271. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts +1 -1
  272. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts.map +1 -1
  273. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js +2 -2
  274. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js.map +1 -1
  275. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.d.ts.map +1 -1
  276. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js +17 -3
  277. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js.map +1 -1
  278. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +1 -1
  279. package/front_end/third_party/puppeteer/package/lib/types.d.ts +1382 -19726
  280. package/front_end/third_party/puppeteer/package/package.json +9 -6
  281. package/front_end/third_party/wasmparser/README.chromium +2 -2
  282. package/front_end/third_party/wasmparser/package/CHANGELOG.md +13 -0
  283. package/front_end/third_party/wasmparser/package/dist/cjs/WasmDis.js +50 -10
  284. package/front_end/third_party/wasmparser/package/dist/cjs/WasmDis.js.map +1 -1
  285. package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.d.ts +21 -4
  286. package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js +76 -8
  287. package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js.map +1 -1
  288. package/front_end/third_party/wasmparser/package/dist/esm/WasmDis.js +50 -10
  289. package/front_end/third_party/wasmparser/package/dist/esm/WasmDis.js.map +1 -1
  290. package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.d.ts +21 -4
  291. package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js +76 -8
  292. package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js.map +1 -1
  293. package/front_end/third_party/wasmparser/package/package.json +1 -1
  294. package/front_end/third_party/wasmparser/package/src/WasmDis.ts +47 -10
  295. package/front_end/third_party/wasmparser/package/src/WasmParser.ts +75 -5
  296. package/front_end/ui/components/icon_button/iconButton.css +4 -0
  297. package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +2 -6
  298. package/front_end/ui/legacy/FilterBar.ts +1 -1
  299. package/front_end/ui/legacy/GlassPane.ts +1 -3
  300. package/front_end/ui/legacy/SplitWidget.ts +1 -1
  301. package/front_end/ui/legacy/UIUtils.ts +3 -4
  302. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +3 -3
  303. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +1 -1
  304. package/front_end/ui/legacy/components/inline_editor/SwatchPopoverHelper.ts +6 -2
  305. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +3 -3
  306. package/front_end/ui/legacy/components/utils/TargetDetachedDialog.ts +1 -1
  307. package/front_end/ui/legacy/reportView.css +1 -0
  308. package/package.json +1 -1
  309. package/scripts/build/rollup.config.js +0 -5
  310. package/front_end/Images/src/exclamation_mark_circle_icon.svg +0 -65
  311. package/front_end/legacy_test_runner/application_test_runner/AppcacheTestRunner.js +0 -220
  312. package/front_end/panels/application/ApplicationCacheItemsView.ts +0 -335
  313. package/front_end/panels/application/ApplicationCacheModel.ts +0 -206
@@ -169,11 +169,10 @@ export class LayersPanel extends UI.Panel.PanelWithSidebar implements SDK.Target
169
169
  return Promise.resolve();
170
170
  }
171
171
 
172
- private onLayerPainted(event: Common.EventTarget.EventTargetEvent): void {
172
+ private onLayerPainted({data: layer}: Common.EventTarget.EventTargetEvent<SDK.LayerTreeBase.Layer>): void {
173
173
  if (!this.model) {
174
174
  return;
175
175
  }
176
- const layer = event.data as SDK.LayerTreeBase.Layer;
177
176
  const selection = this.layerViewHost.selection();
178
177
  if (selection && selection.layer() === layer) {
179
178
  this.layerDetailsView.update();
@@ -212,8 +211,8 @@ export class LayersPanel extends UI.Panel.PanelWithSidebar implements SDK.Target
212
211
  }
213
212
  }
214
213
 
215
- private onScaleChanged(event: Common.EventTarget.EventTargetEvent): void {
216
- this.paintProfilerView.setScale(event.data as number);
214
+ private onScaleChanged(event: Common.EventTarget.EventTargetEvent<number>): void {
215
+ this.paintProfilerView.setScale(event.data);
217
216
  }
218
217
  }
219
218
 
@@ -160,6 +160,7 @@ export class LighthouseReportUIFeatures extends LighthouseReport.ReportUIFeature
160
160
  super(dom);
161
161
  this.beforePrint = null;
162
162
  this.afterPrint = null;
163
+ this._topbar._print = this._print.bind(this);
163
164
  }
164
165
 
165
166
  setBeforePrint(beforePrint: (() => void)|null): void {
@@ -8,7 +8,7 @@ import * as UI from '../../ui/legacy/legacy.js';
8
8
  import type * as Protocol from '../../generated/protocol.js';
9
9
 
10
10
  import type {PlayerEvent} from './MediaModel.js';
11
- import {MediaModel, ProtocolTriggers} from './MediaModel.js';
11
+ import {MediaModel, Events} from './MediaModel.js';
12
12
  import {PlayerDetailView} from './PlayerDetailView.js';
13
13
  import {PlayerListView} from './PlayerListView.js';
14
14
 
@@ -196,19 +196,19 @@ export class MainView extends UI.Panel.PanelWithSidebar implements SDK.TargetMan
196
196
 
197
197
  private addEventListeners(mediaModel: MediaModel): void {
198
198
  mediaModel.ensureEnabled();
199
- mediaModel.addEventListener(ProtocolTriggers.PlayerPropertiesChanged, this.propertiesChanged, this);
200
- mediaModel.addEventListener(ProtocolTriggers.PlayerEventsAdded, this.eventsAdded, this);
201
- mediaModel.addEventListener(ProtocolTriggers.PlayerMessagesLogged, this.messagesLogged, this);
202
- mediaModel.addEventListener(ProtocolTriggers.PlayerErrorsRaised, this.errorsRaised, this);
203
- mediaModel.addEventListener(ProtocolTriggers.PlayersCreated, this.playersCreated, this);
199
+ mediaModel.addEventListener(Events.PlayerPropertiesChanged, this.propertiesChanged, this);
200
+ mediaModel.addEventListener(Events.PlayerEventsAdded, this.eventsAdded, this);
201
+ mediaModel.addEventListener(Events.PlayerMessagesLogged, this.messagesLogged, this);
202
+ mediaModel.addEventListener(Events.PlayerErrorsRaised, this.errorsRaised, this);
203
+ mediaModel.addEventListener(Events.PlayersCreated, this.playersCreated, this);
204
204
  }
205
205
 
206
206
  private removeEventListeners(mediaModel: MediaModel): void {
207
- mediaModel.removeEventListener(ProtocolTriggers.PlayerPropertiesChanged, this.propertiesChanged, this);
208
- mediaModel.removeEventListener(ProtocolTriggers.PlayerEventsAdded, this.eventsAdded, this);
209
- mediaModel.removeEventListener(ProtocolTriggers.PlayerMessagesLogged, this.messagesLogged, this);
210
- mediaModel.removeEventListener(ProtocolTriggers.PlayerErrorsRaised, this.errorsRaised, this);
211
- mediaModel.removeEventListener(ProtocolTriggers.PlayersCreated, this.playersCreated, this);
207
+ mediaModel.removeEventListener(Events.PlayerPropertiesChanged, this.propertiesChanged, this);
208
+ mediaModel.removeEventListener(Events.PlayerEventsAdded, this.eventsAdded, this);
209
+ mediaModel.removeEventListener(Events.PlayerMessagesLogged, this.messagesLogged, this);
210
+ mediaModel.removeEventListener(Events.PlayerErrorsRaised, this.errorsRaised, this);
211
+ mediaModel.removeEventListener(Events.PlayersCreated, this.playersCreated, this);
212
212
  }
213
213
 
214
214
  private onPlayerCreated(playerID: string): void {
@@ -217,25 +217,29 @@ export class MainView extends UI.Panel.PanelWithSidebar implements SDK.TargetMan
217
217
  this.downloadStore.addPlayer(playerID);
218
218
  }
219
219
 
220
- private propertiesChanged(event: Common.EventTarget.EventTargetEvent): void {
220
+ private propertiesChanged(event: Common.EventTarget.EventTargetEvent<Protocol.Media.PlayerPropertiesChangedEvent>):
221
+ void {
221
222
  for (const property of event.data.properties) {
222
223
  this.onProperty(event.data.playerId, property);
223
224
  }
224
225
  }
225
226
 
226
- private eventsAdded(event: Common.EventTarget.EventTargetEvent): void {
227
+ private eventsAdded(event: Common.EventTarget.EventTargetEvent<Protocol.Media.PlayerEventsAddedEvent>): void {
227
228
  for (const ev of event.data.events) {
228
- this.onEvent(event.data.playerId, ev);
229
+ // TODO(crbug.com/1228674): The conversion from Protocol.Media.PlayerEvent to PlayerEvent happens implicitly
230
+ // by augmenting the protocol type with some additional property in various places. This needs to be cleaned up
231
+ // in a conversion function that takes the protocol type and produces the PlayerEvent type.
232
+ this.onEvent(event.data.playerId, ev as PlayerEvent);
229
233
  }
230
234
  }
231
235
 
232
- private messagesLogged(event: Common.EventTarget.EventTargetEvent): void {
236
+ private messagesLogged(event: Common.EventTarget.EventTargetEvent<Protocol.Media.PlayerMessagesLoggedEvent>): void {
233
237
  for (const message of event.data.messages) {
234
238
  this.onMessage(event.data.playerId, message);
235
239
  }
236
240
  }
237
241
 
238
- private errorsRaised(event: Common.EventTarget.EventTargetEvent): void {
242
+ private errorsRaised(event: Common.EventTarget.EventTargetEvent<Protocol.Media.PlayerErrorsRaisedEvent>): void {
239
243
  for (const error of event.data.errors) {
240
244
  this.onError(event.data.playerId, error);
241
245
  }
@@ -281,9 +285,8 @@ export class MainView extends UI.Panel.PanelWithSidebar implements SDK.TargetMan
281
285
  this.detailPanels.get(playerID)?.onEvent(event);
282
286
  }
283
287
 
284
- private playersCreated(event: Common.EventTarget.EventTargetEvent): void {
285
- const playerlist = event.data as Iterable<string>;
286
- for (const playerID of playerlist) {
288
+ private playersCreated(event: Common.EventTarget.EventTargetEvent<Protocol.Media.PlayerId[]>): void {
289
+ for (const playerID of event.data) {
287
290
  this.onPlayerCreated(playerID);
288
291
  }
289
292
  }
@@ -12,7 +12,7 @@ export interface PlayerEvent extends Protocol.Media.PlayerEvent {
12
12
  event: string;
13
13
  }
14
14
 
15
- export const enum ProtocolTriggers {
15
+ export const enum Events {
16
16
  PlayerPropertiesChanged = 'PlayerPropertiesChanged',
17
17
  PlayerEventsAdded = 'PlayerEventsAdded',
18
18
  PlayerMessagesLogged = 'PlayerMessagesLogged',
@@ -20,7 +20,15 @@ export const enum ProtocolTriggers {
20
20
  PlayersCreated = 'PlayersCreated',
21
21
  }
22
22
 
23
- export class MediaModel extends SDK.SDKModel.SDKModel implements ProtocolProxyApi.MediaDispatcher {
23
+ export type EventTypes = {
24
+ [Events.PlayerPropertiesChanged]: Protocol.Media.PlayerPropertiesChangedEvent,
25
+ [Events.PlayerEventsAdded]: Protocol.Media.PlayerEventsAddedEvent,
26
+ [Events.PlayerMessagesLogged]: Protocol.Media.PlayerMessagesLoggedEvent,
27
+ [Events.PlayerErrorsRaised]: Protocol.Media.PlayerErrorsRaisedEvent,
28
+ [Events.PlayersCreated]: Protocol.Media.PlayerId[],
29
+ };
30
+
31
+ export class MediaModel extends SDK.SDKModel.SDKModel<EventTypes> implements ProtocolProxyApi.MediaDispatcher {
24
32
  private enabled: boolean;
25
33
  private readonly agent: ProtocolProxyApi.MediaApi;
26
34
 
@@ -46,23 +54,23 @@ export class MediaModel extends SDK.SDKModel.SDKModel implements ProtocolProxyAp
46
54
  }
47
55
 
48
56
  playerPropertiesChanged(event: Protocol.Media.PlayerPropertiesChangedEvent): void {
49
- this.dispatchEventToListeners(ProtocolTriggers.PlayerPropertiesChanged, event);
57
+ this.dispatchEventToListeners(Events.PlayerPropertiesChanged, event);
50
58
  }
51
59
 
52
60
  playerEventsAdded(event: Protocol.Media.PlayerEventsAddedEvent): void {
53
- this.dispatchEventToListeners(ProtocolTriggers.PlayerEventsAdded, event);
61
+ this.dispatchEventToListeners(Events.PlayerEventsAdded, event);
54
62
  }
55
63
 
56
64
  playerMessagesLogged(event: Protocol.Media.PlayerMessagesLoggedEvent): void {
57
- this.dispatchEventToListeners(ProtocolTriggers.PlayerMessagesLogged, event);
65
+ this.dispatchEventToListeners(Events.PlayerMessagesLogged, event);
58
66
  }
59
67
 
60
68
  playerErrorsRaised(event: Protocol.Media.PlayerErrorsRaisedEvent): void {
61
- this.dispatchEventToListeners(ProtocolTriggers.PlayerErrorsRaised, event);
69
+ this.dispatchEventToListeners(Events.PlayerErrorsRaised, event);
62
70
  }
63
71
 
64
72
  playersCreated({players}: Protocol.Media.PlayersCreatedEvent): void {
65
- this.dispatchEventToListeners(ProtocolTriggers.PlayersCreated, players);
73
+ this.dispatchEventToListeners(Events.PlayersCreated, players);
66
74
  }
67
75
  }
68
76
  SDK.SDKModel.SDKModel.register(MediaModel, {capabilities: SDK.Target.Capability.Media, autostart: false});
@@ -2,7 +2,7 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Common from '../../core/common/common.js';
5
+ import type * as Common from '../../core/common/common.js';
6
6
  import * as i18n from '../../core/i18n/i18n.js';
7
7
  import * as UI from '../../ui/legacy/legacy.js';
8
8
 
@@ -70,8 +70,7 @@ interface SelectableLevel {
70
70
  overwrite?: boolean;
71
71
  }
72
72
 
73
- class MessageLevelSelector extends Common.ObjectWrapper.ObjectWrapper implements
74
- UI.SoftDropDown.Delegate<SelectableLevel> {
73
+ class MessageLevelSelector implements UI.SoftDropDown.Delegate<SelectableLevel> {
75
74
  private readonly items: UI.ListModel.ListModel<SelectableLevel>;
76
75
  private readonly view: PlayerMessagesView;
77
76
  private readonly itemMap: Map<number, SelectableLevel>;
@@ -84,7 +83,6 @@ class MessageLevelSelector extends Common.ObjectWrapper.ObjectWrapper implements
84
83
  elementsForItems: WeakMap<SelectableLevel, HTMLElement>;
85
84
 
86
85
  constructor(items: UI.ListModel.ListModel<SelectableLevel>, view: PlayerMessagesView) {
87
- super();
88
86
  this.items = items;
89
87
  this.view = view;
90
88
  this.itemMap = new Map();
@@ -377,7 +377,7 @@ export class NetworkPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
377
377
  this.networkLogView.setWindow(startTime, endTime);
378
378
  }
379
379
 
380
- private async searchToggleClick(_event: Common.EventTarget.EventTargetEvent): Promise<void> {
380
+ private async searchToggleClick(): Promise<void> {
381
381
  const action = UI.ActionRegistry.ActionRegistry.instance().action('network.search');
382
382
  if (action) {
383
383
  await action.execute();
@@ -403,8 +403,8 @@ export class NetworkPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
403
403
  this.panelToolbar.appendToolbarItem(this.filterBar.filterButton());
404
404
  updateSidebarToggle();
405
405
  splitWidget.addEventListener(UI.SplitWidget.Events.ShowModeChanged, updateSidebarToggle);
406
- searchToggle.addEventListener(UI.Toolbar.ToolbarButton.Events.Click, event => {
407
- this.searchToggleClick(event);
406
+ searchToggle.addEventListener(UI.Toolbar.ToolbarButton.Events.Click, () => {
407
+ this.searchToggleClick();
408
408
  });
409
409
  this.panelToolbar.appendToolbarItem(searchToggle);
410
410
  this.panelToolbar.appendSeparator();
@@ -640,12 +640,12 @@ export class NetworkPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
640
640
  this.hideRequestPanel();
641
641
  }
642
642
 
643
- private onRowSizeChanged(_event: Common.EventTarget.EventTargetEvent): void {
643
+ private onRowSizeChanged(): void {
644
644
  this.updateUI();
645
645
  }
646
646
 
647
- private onRequestSelected(event: Common.EventTarget.EventTargetEvent): void {
648
- const request = (event.data as SDK.NetworkRequest.NetworkRequest | null);
647
+ private onRequestSelected(event: Common.EventTarget.EventTargetEvent<SDK.NetworkRequest.NetworkRequest|null>): void {
648
+ const request = event.data;
649
649
  this.currentRequest = request;
650
650
  this.networkOverview.setHighlightedRequest(request);
651
651
  this.updateNetworkItemView();
@@ -120,6 +120,10 @@ const UIStrings = {
120
120
  */
121
121
  fromDiskCache: '(from disk cache)',
122
122
  /**
123
+ *@description Text in Request Headers View of the Network panel
124
+ */
125
+ fromWebBundle: '(from Web Bundle)',
126
+ /**
123
127
  *@description Message to explain lack of raw headers for a particular network request
124
128
  */
125
129
  provisionalHeadersAreShownS: 'Provisional headers are shown. Disable cache to see full headers.',
@@ -513,6 +517,9 @@ export class RequestHeadersView extends UI.Widget.VBox {
513
517
  } else if (this.request.redirectSourceSignedExchangeInfoHasNoErrors()) {
514
518
  statusText += ' ' + i18nString(UIStrings.fromSignedexchange);
515
519
  statusTextElement.classList.add('status-from-cache');
520
+ } else if (this.request.webBundleInnerRequestInfo()) {
521
+ statusText += ' ' + i18nString(UIStrings.fromWebBundle);
522
+ statusTextElement.classList.add('status-from-cache');
516
523
  } else if (this.request.fromPrefetchCache()) {
517
524
  statusText += ' ' + i18nString(UIStrings.fromPrefetchCache);
518
525
  statusTextElement.classList.add('status-from-cache');
@@ -243,6 +243,11 @@
243
243
  filter: brightness(0) invert(1);
244
244
  }
245
245
 
246
+ .network-log-grid.data-grid:focus .data-grid-data-grid-node.selected [is=ui-icon].icon-mask {
247
+ --network-grid-selected-color: #dadce0;
248
+ --override-icon-mask-background-color: var(--network-grid-selected-color);
249
+ }
250
+
246
251
  .network-log-grid.data-grid .network-error-row.data-grid-data-grid-node img.icon,
247
252
  .network-log-grid.data-grid .network-error-row.data-grid-data-grid-node.selected img.icon {
248
253
  /* This is generated with https://codepen.io/sosuke/pen/Pjoqqp to target var(--color-red) */
@@ -123,7 +123,7 @@ function convertToSamplingHeapProfile(profileHeader: SamplingHeapProfileHeader):
123
123
 
124
124
  export class HeapProfileView extends ProfileView implements UI.SearchableView.Searchable {
125
125
  profileHeader: SamplingHeapProfileHeader;
126
- readonly profileType: ProfileType;
126
+ readonly profileType: SamplingHeapProfileTypeBase;
127
127
  adjustedTotal: number;
128
128
  readonly selectedSizeText: UI.Toolbar.ToolbarText;
129
129
  timestamps: number[];
@@ -186,7 +186,7 @@ export class HeapProfileView extends ProfileView implements UI.SearchableView.Se
186
186
  this.setProfile(profile);
187
187
  }
188
188
 
189
- onStatsUpdate(event: Common.EventTarget.EventTargetEvent): void {
189
+ onStatsUpdate(event: Common.EventTarget.EventTargetEvent<Protocol.HeapProfiler.SamplingHeapProfile|null>): void {
190
190
  const profile = event.data;
191
191
 
192
192
  if (!this.totalTime) {
@@ -202,7 +202,7 @@ export class HeapProfileView extends ProfileView implements UI.SearchableView.Se
202
202
  this.sizes.push(0);
203
203
  this.timestamps.push(Date.now());
204
204
  this.ordinals.push(this.lastOrdinal + 1);
205
- for (const sample of profile.samples) {
205
+ for (const sample of profile?.samples ?? []) {
206
206
  this.lastOrdinal = Math.max(this.lastOrdinal, sample.ordinal);
207
207
  const bucket = Platform.ArrayUtilities.upperBound(
208
208
  this.ordinals, sample.ordinal, Platform.ArrayUtilities.DEFAULT_COMPARATOR) -
@@ -243,7 +243,8 @@ export class HeapProfileView extends ProfileView implements UI.SearchableView.Se
243
243
  }
244
244
  }
245
245
 
246
- export class SamplingHeapProfileTypeBase extends ProfileType {
246
+ export class SamplingHeapProfileTypeBase extends
247
+ Common.ObjectWrapper.eventMixin<SamplingHeapProfileType.EventTypes, typeof ProfileType>(ProfileType) {
247
248
  recording: boolean;
248
249
  clearedDuringRecording: boolean;
249
250
 
@@ -445,6 +446,11 @@ export namespace SamplingHeapProfileType {
445
446
  RecordingStopped = 'RecordingStopped',
446
447
  StatsUpdate = 'StatsUpdate',
447
448
  }
449
+
450
+ export type EventTypes = {
451
+ [Events.RecordingStopped]: void,
452
+ [Events.StatsUpdate]: Protocol.HeapProfiler.SamplingHeapProfile|null,
453
+ };
448
454
  }
449
455
 
450
456
  export class SamplingHeapProfileHeader extends WritableProfileHeader {
@@ -505,6 +511,10 @@ export class SamplingHeapProfileHeader extends WritableProfileHeader {
505
511
  heapProfilerModel(): SDK.HeapProfilerModel.HeapProfilerModel|null {
506
512
  return this.heapProfilerModelInternal;
507
513
  }
514
+
515
+ override profileType(): SamplingHeapProfileTypeBase {
516
+ return super.profileType() as SamplingHeapProfileTypeBase;
517
+ }
508
518
  }
509
519
 
510
520
  export class SamplingHeapProfileNode extends SDK.ProfileTreeModel.ProfileNode {
@@ -306,7 +306,7 @@ export class HeapSnapshotView extends UI.View.SimpleView implements DataDisplayD
306
306
  this.linkifier = new Components.Linkifier.Linkifier();
307
307
  const profileType = profile.profileType();
308
308
 
309
- profileType.addEventListener(HeapSnapshotProfileType.SnapshotReceived, this.onReceiveSnapshot, this);
309
+ profileType.addEventListener(HeapSnapshotProfileTypeEvents.SnapshotReceived, this.onReceiveSnapshot, this);
310
310
  profileType.addEventListener(ProfileTypeEvents.RemoveProfileHeader, this.onProfileHeaderRemoved, this);
311
311
 
312
312
  const isHeapTimeline = profileType.id === TrackingHeapSnapshotProfileType.TypeId;
@@ -444,26 +444,27 @@ export class HeapSnapshotView extends UI.View.SimpleView implements DataDisplayD
444
444
  this.trackingOverviewGrid = new HeapTimelineOverview();
445
445
  this.trackingOverviewGrid.addEventListener(Events.IdsRangeChanged, this.onIdsRangeChanged.bind(this));
446
446
  if (!this.profile.fromFile() && profileType.profileBeingRecorded() === this.profile) {
447
- profileType.addEventListener(TrackingHeapSnapshotProfileType.HeapStatsUpdate, this.onHeapStatsUpdate, this);
448
- profileType.addEventListener(TrackingHeapSnapshotProfileType.TrackingStopped, this.onStopTracking, this);
447
+ (profileType as TrackingHeapSnapshotProfileType)
448
+ .addEventListener(TrackingHeapSnapshotProfileTypeEvents.HeapStatsUpdate, this.onHeapStatsUpdate, this);
449
+ (profileType as TrackingHeapSnapshotProfileType)
450
+ .addEventListener(TrackingHeapSnapshotProfileTypeEvents.TrackingStopped, this.onStopTracking, this);
449
451
  this.trackingOverviewGrid.start();
450
452
  }
451
453
  }
452
454
 
453
455
  onStopTracking(): void {
454
- this.profile.profileType().removeEventListener(
455
- TrackingHeapSnapshotProfileType.HeapStatsUpdate, this.onHeapStatsUpdate, this);
456
- this.profile.profileType().removeEventListener(
457
- TrackingHeapSnapshotProfileType.TrackingStopped, this.onStopTracking, this);
456
+ const profileType = this.profile.profileType() as TrackingHeapSnapshotProfileType;
457
+ profileType.removeEventListener(
458
+ TrackingHeapSnapshotProfileTypeEvents.HeapStatsUpdate, this.onHeapStatsUpdate, this);
459
+ profileType.removeEventListener(TrackingHeapSnapshotProfileTypeEvents.TrackingStopped, this.onStopTracking, this);
458
460
  if (this.trackingOverviewGrid) {
459
461
  this.trackingOverviewGrid.stop();
460
462
  }
461
463
  }
462
464
 
463
- onHeapStatsUpdate(event: Common.EventTarget.EventTargetEvent): void {
464
- const samples = event.data;
465
- if (samples && this.trackingOverviewGrid) {
466
- this.trackingOverviewGrid.setSamples(event.data);
465
+ onHeapStatsUpdate({data: samples}: Common.EventTarget.EventTargetEvent<Samples>): void {
466
+ if (this.trackingOverviewGrid) {
467
+ this.trackingOverviewGrid.setSamples(samples);
467
468
  }
468
469
  }
469
470
 
@@ -958,20 +959,20 @@ export class HeapSnapshotView extends UI.View.SimpleView implements DataDisplayD
958
959
  this.updateFilterOptions();
959
960
  }
960
961
 
961
- onReceiveSnapshot(event: Common.EventTarget.EventTargetEvent): void {
962
+ onReceiveSnapshot(event: Common.EventTarget.EventTargetEvent<ProfileHeader>): void {
962
963
  this.updateControls();
963
964
  const profile = event.data;
964
965
  profile.addEventListener(ProfileHeaderEvents.ProfileTitleChanged, this.updateControls, this);
965
966
  }
966
967
 
967
- onProfileHeaderRemoved(event: Common.EventTarget.EventTargetEvent): void {
968
+ onProfileHeaderRemoved(event: Common.EventTarget.EventTargetEvent<ProfileHeader>): void {
968
969
  const profile = event.data;
969
970
  profile.removeEventListener(ProfileHeaderEvents.ProfileTitleChanged, this.updateControls, this);
970
971
 
971
972
  if (this.profile === profile) {
972
973
  this.detach();
973
974
  this.profile.profileType().removeEventListener(
974
- HeapSnapshotProfileType.SnapshotReceived, this.onReceiveSnapshot, this);
975
+ HeapSnapshotProfileTypeEvents.SnapshotReceived, this.onReceiveSnapshot, this);
975
976
  this.profile.profileType().removeEventListener(
976
977
  ProfileTypeEvents.RemoveProfileHeader, this.onProfileHeaderRemoved, this);
977
978
  this.dispose();
@@ -1165,8 +1166,9 @@ export class StatisticsPerspective extends Perspective {
1165
1166
  }
1166
1167
  }
1167
1168
 
1168
- export class HeapSnapshotProfileType extends ProfileType implements
1169
- SDK.TargetManager.SDKModelObserver<SDK.HeapProfilerModel.HeapProfilerModel> {
1169
+ export class HeapSnapshotProfileType extends
1170
+ Common.ObjectWrapper.eventMixin<HeapSnapshotProfileTypeEventTypes, typeof ProfileType>(ProfileType)
1171
+ implements SDK.TargetManager.SDKModelObserver<SDK.HeapProfilerModel.HeapProfilerModel> {
1170
1172
  readonly treatGlobalObjectsAsRoots: Common.Settings.Setting<boolean>;
1171
1173
  readonly captureNumericValue: Common.Settings.Setting<boolean>;
1172
1174
  customContentInternal: HTMLElement|null;
@@ -1316,16 +1318,27 @@ export class HeapSnapshotProfileType extends ProfileType implements
1316
1318
  if (this.profileBeingRecorded() === profile) {
1317
1319
  this.setProfileBeingRecorded(null);
1318
1320
  }
1319
- this.dispatchEventToListeners(HeapSnapshotProfileType.SnapshotReceived, profile);
1321
+ this.dispatchEventToListeners(HeapSnapshotProfileTypeEvents.SnapshotReceived, profile);
1320
1322
  }
1321
1323
 
1322
1324
  // eslint-disable-next-line @typescript-eslint/naming-convention
1323
1325
  static readonly TypeId: string = 'HEAP';
1326
+ // TODO(crbug.com/1228674): Remove event string once its no longer used in web tests.
1324
1327
  // eslint-disable-next-line @typescript-eslint/naming-convention
1325
1328
  static readonly SnapshotReceived = 'SnapshotReceived';
1326
1329
  }
1327
1330
 
1328
- export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1331
+ export const enum HeapSnapshotProfileTypeEvents {
1332
+ SnapshotReceived = 'SnapshotReceived',
1333
+ }
1334
+
1335
+ export type HeapSnapshotProfileTypeEventTypes = {
1336
+ [HeapSnapshotProfileTypeEvents.SnapshotReceived]: ProfileHeader,
1337
+ };
1338
+
1339
+ export class TrackingHeapSnapshotProfileType extends
1340
+ Common.ObjectWrapper.eventMixin<TrackingHeapSnapshotProfileTypeEventTypes, typeof HeapSnapshotProfileType>(
1341
+ HeapSnapshotProfileType) {
1329
1342
  readonly recordAllocationStacksSettingInternal: Common.Settings.Setting<boolean>;
1330
1343
  customContentInternal: UI.UIUtils.CheckboxLabel|null;
1331
1344
  recording: boolean;
@@ -1383,7 +1396,9 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1383
1396
  if (profileSamples.totalTime < timestamp - profileSamples.timestamps[0]) {
1384
1397
  profileSamples.totalTime *= 2;
1385
1398
  }
1386
- this.dispatchEventToListeners(TrackingHeapSnapshotProfileType.HeapStatsUpdate, this.profileSamples);
1399
+ if (this.profileSamples) {
1400
+ this.dispatchEventToListeners(TrackingHeapSnapshotProfileTypeEvents.HeapStatsUpdate, this.profileSamples);
1401
+ }
1387
1402
  const profile = this.profileBeingRecorded();
1388
1403
  if (profile) {
1389
1404
  profile.updateStatus(null, true);
@@ -1448,7 +1463,7 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1448
1463
  this.recording = true;
1449
1464
  this.addProfile((this.profileBeingRecorded() as ProfileHeader));
1450
1465
  (this.profileBeingRecorded() as HeapProfileHeader).updateStatus(i18nString(UIStrings.recording));
1451
- this.dispatchEventToListeners(TrackingHeapSnapshotProfileType.TrackingStarted);
1466
+ this.dispatchEventToListeners(TrackingHeapSnapshotProfileTypeEvents.TrackingStarted);
1452
1467
  return heapProfilerModel;
1453
1468
  }
1454
1469
 
@@ -1458,7 +1473,7 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1458
1473
  const stopPromise =
1459
1474
  (profile.heapProfilerModel() as SDK.HeapProfilerModel.HeapProfilerModel).stopTrackingHeapObjects(true);
1460
1475
  this.recording = false;
1461
- this.dispatchEventToListeners(TrackingHeapSnapshotProfileType.TrackingStopped);
1476
+ this.dispatchEventToListeners(TrackingHeapSnapshotProfileTypeEvents.TrackingStopped);
1462
1477
  await stopPromise;
1463
1478
  profile = (this.profileBeingRecorded() as HeapProfileHeader);
1464
1479
  if (!profile) {
@@ -1491,7 +1506,7 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1491
1506
  return i18nString(UIStrings.AllocationTimelinesShowInstrumented);
1492
1507
  }
1493
1508
 
1494
- resetProfiles(event: Common.EventTarget.EventTargetEvent): void {
1509
+ resetProfiles(event: Common.EventTarget.EventTargetEvent<SDK.HeapProfilerModel.HeapProfilerModel>): void {
1495
1510
  const wasRecording = this.recording;
1496
1511
  // Clear current profile to avoid stopping backend.
1497
1512
  this.setProfileBeingRecorded(null);
@@ -1509,6 +1524,7 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1509
1524
 
1510
1525
  // eslint-disable-next-line @typescript-eslint/naming-convention
1511
1526
  static readonly TypeId = 'HEAP-RECORD';
1527
+ // TODO(crbug.com/1228674): Remove event strings once they are no longer used in web tests.
1512
1528
  // eslint-disable-next-line @typescript-eslint/naming-convention
1513
1529
  static readonly HeapStatsUpdate = 'HeapStatsUpdate';
1514
1530
  // eslint-disable-next-line @typescript-eslint/naming-convention
@@ -1517,6 +1533,18 @@ export class TrackingHeapSnapshotProfileType extends HeapSnapshotProfileType {
1517
1533
  static readonly TrackingStopped = 'TrackingStopped';
1518
1534
  }
1519
1535
 
1536
+ export const enum TrackingHeapSnapshotProfileTypeEvents {
1537
+ HeapStatsUpdate = 'HeapStatsUpdate',
1538
+ TrackingStarted = 'TrackingStarted',
1539
+ TrackingStopped = 'TrackingStopped',
1540
+ }
1541
+
1542
+ export type TrackingHeapSnapshotProfileTypeEventTypes = {
1543
+ [TrackingHeapSnapshotProfileTypeEvents.HeapStatsUpdate]: Samples,
1544
+ [TrackingHeapSnapshotProfileTypeEvents.TrackingStarted]: void,
1545
+ [TrackingHeapSnapshotProfileTypeEvents.TrackingStopped]: void,
1546
+ };
1547
+
1520
1548
  export class HeapProfileHeader extends ProfileHeader {
1521
1549
  readonly heapProfilerModelInternal: SDK.HeapProfilerModel.HeapProfilerModel|null;
1522
1550
  maxJSObjectId: number;
@@ -1739,6 +1767,10 @@ export class HeapProfileHeader extends ProfileHeader {
1739
1767
  }
1740
1768
  return success ? null : reader.error();
1741
1769
  }
1770
+
1771
+ override profileType(): HeapSnapshotProfileType {
1772
+ return super.profileType() as HeapSnapshotProfileType;
1773
+ }
1742
1774
  }
1743
1775
 
1744
1776
  export class HeapSnapshotStatisticsView extends UI.Widget.VBox {
@@ -183,8 +183,8 @@ export class LiveHeapProfileView extends UI.Widget.VBox {
183
183
  this.setting.removeChangeListener(this.settingChanged, this);
184
184
  }
185
185
 
186
- settingChanged(value: Common.EventTarget.EventTargetEvent): void {
187
- this.toggleRecordButton.setToggled((value.data as boolean));
186
+ settingChanged(value: Common.EventTarget.EventTargetEvent<boolean>): void {
187
+ this.toggleRecordButton.setToggled(value.data);
188
188
  }
189
189
 
190
190
  async poll(): Promise<void> {
@@ -104,7 +104,7 @@ export type EventTypes = {
104
104
  [Events.ProfileTitleChanged]: ProfileHeader,
105
105
  };
106
106
 
107
- export abstract class ProfileType extends Common.ObjectWrapper.ObjectWrapper {
107
+ export class ProfileType extends Common.ObjectWrapper.ObjectWrapper<ProfileEventTypes> {
108
108
  readonly idInternal: string;
109
109
  readonly nameInternal: string;
110
110
  profiles: ProfileHeader[];
@@ -212,7 +212,9 @@ export abstract class ProfileType extends Common.ObjectWrapper.ObjectWrapper {
212
212
  return profile.loadFromFile(file);
213
213
  }
214
214
 
215
- abstract createProfileLoadedFromFile(title: string): ProfileHeader;
215
+ createProfileLoadedFromFile(_title: string): ProfileHeader {
216
+ throw new Error('Not implemented');
217
+ }
216
218
 
217
219
  addProfile(profile: ProfileHeader): void {
218
220
  this.profiles.push(profile);
@@ -272,6 +274,13 @@ export enum ProfileEvents {
272
274
  ViewUpdated = 'view-updated',
273
275
  }
274
276
 
277
+ export type ProfileEventTypes = {
278
+ [ProfileEvents.AddProfileHeader]: ProfileHeader,
279
+ [ProfileEvents.ProfileComplete]: ProfileHeader,
280
+ [ProfileEvents.RemoveProfileHeader]: ProfileHeader,
281
+ [ProfileEvents.ViewUpdated]: void,
282
+ };
283
+
275
284
  export interface DataDisplayDelegate {
276
285
  showProfile(profile: ProfileHeader|null): UI.Widget.Widget|null;
277
286
  showObject(snapshotObjectId: string, perspectiveName: string): void;
@@ -480,7 +480,7 @@ export class ProfileView extends UI.View.SimpleView implements UI.SearchableView
480
480
  this.excludeButton.setEnabled(selected);
481
481
  }
482
482
 
483
- focusClicked(_event: Common.EventTarget.EventTargetEvent): void {
483
+ focusClicked(): void {
484
484
  if (!this.dataGrid.selectedNode) {
485
485
  return;
486
486
  }
@@ -495,7 +495,7 @@ export class ProfileView extends UI.View.SimpleView implements UI.SearchableView
495
495
  Host.userMetrics.actionTaken(Host.UserMetrics.Action.CpuProfileNodeFocused);
496
496
  }
497
497
 
498
- excludeClicked(_event: Common.EventTarget.EventTargetEvent): void {
498
+ excludeClicked(): void {
499
499
  const selectedNode = this.dataGrid.selectedNode;
500
500
 
501
501
  if (!selectedNode) {
@@ -515,7 +515,7 @@ export class ProfileView extends UI.View.SimpleView implements UI.SearchableView
515
515
  Host.userMetrics.actionTaken(Host.UserMetrics.Action.CpuProfileNodeExcluded);
516
516
  }
517
517
 
518
- resetClicked(_event: Common.EventTarget.EventTargetEvent): void {
518
+ resetClicked(): void {
519
519
  this.viewSelectComboBox.selectElement().focus();
520
520
  this.resetButton.setEnabled(false);
521
521
  if (this.profileDataGridTree) {
@@ -327,16 +327,17 @@ export class ProfilesPanel extends UI.Panel.PanelWithSidebar implements DataDisp
327
327
  profileTypeSection.childrenListElement.addEventListener(
328
328
  'contextmenu', this.handleContextMenuEvent.bind(this), false);
329
329
 
330
- function onAddProfileHeader(this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent): void {
331
- this.addProfileHeader((event.data as ProfileHeader));
330
+ function onAddProfileHeader(this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent<ProfileHeader>): void {
331
+ this.addProfileHeader(event.data);
332
332
  }
333
333
 
334
- function onRemoveProfileHeader(this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent): void {
335
- this.removeProfileHeader((event.data as ProfileHeader));
334
+ function onRemoveProfileHeader(
335
+ this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent<ProfileHeader>): void {
336
+ this.removeProfileHeader(event.data);
336
337
  }
337
338
 
338
- function profileComplete(this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent): void {
339
- this.showProfile((event.data as ProfileHeader));
339
+ function profileComplete(this: ProfilesPanel, event: Common.EventTarget.EventTargetEvent<ProfileHeader>): void {
340
+ this.showProfile(event.data);
340
341
  }
341
342
 
342
343
  profileType.addEventListener(ProfileTypeEvents.ViewUpdated, this.updateProfileTypeSpecificUI, this);
@@ -6,7 +6,7 @@ import * as SDK from '../../core/sdk/sdk.js';
6
6
  import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
7
7
  import * as Protocol from '../../generated/protocol.js';
8
8
 
9
- export class InputModel extends SDK.SDKModel.SDKModel {
9
+ export class InputModel extends SDK.SDKModel.SDKModel<void> {
10
10
  private readonly inputAgent: ProtocolProxyApi.InputApi;
11
11
  private activeTouchOffsetTop: number|null;
12
12
  private activeTouchParams: Protocol.Input.EmulateTouchFromMouseEventRequest|null;
@@ -277,7 +277,7 @@ export class ScreencastView extends UI.Widget.VBox implements SDK.OverlayModel.H
277
277
  this.updateGlasspane();
278
278
  }
279
279
 
280
- private onSuspendStateChange(_event: Common.EventTarget.EventTargetEvent): void {
280
+ private onSuspendStateChange(): void {
281
281
  if (SDK.TargetManager.TargetManager.instance().allTargetsSuspended()) {
282
282
  this.stopCasting();
283
283
  } else {