chrome-devtools-frontend 1.0.981537 → 1.0.995491

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 (503) hide show
  1. package/AUTHORS +2 -0
  2. package/config/gni/devtools_grd_files.gni +8 -7
  3. package/config/gni/devtools_image_files.gni +1 -0
  4. package/front_end/.eslintrc.js +10 -0
  5. package/front_end/Images/src/ic_rendering.svg +3 -0
  6. package/front_end/core/common/ParsedURL.ts +44 -28
  7. package/front_end/core/common/ResourceType.ts +1 -1
  8. package/front_end/core/common/SettingRegistration.ts +1 -0
  9. package/front_end/core/host/InspectorFrontendHost.ts +11 -10
  10. package/front_end/core/host/InspectorFrontendHostAPI.ts +15 -14
  11. package/front_end/core/host/Platform.ts +11 -2
  12. package/front_end/core/host/UserMetrics.ts +27 -2
  13. package/front_end/core/i18n/DevToolsLocale.ts +4 -0
  14. package/front_end/core/i18n/locales/af.json +76 -16
  15. package/front_end/core/i18n/locales/am.json +76 -16
  16. package/front_end/core/i18n/locales/ar.json +77 -17
  17. package/front_end/core/i18n/locales/as.json +76 -16
  18. package/front_end/core/i18n/locales/az.json +76 -16
  19. package/front_end/core/i18n/locales/be.json +75 -15
  20. package/front_end/core/i18n/locales/bg.json +76 -16
  21. package/front_end/core/i18n/locales/bn.json +76 -16
  22. package/front_end/core/i18n/locales/bs.json +88 -28
  23. package/front_end/core/i18n/locales/ca.json +76 -16
  24. package/front_end/core/i18n/locales/cs.json +76 -16
  25. package/front_end/core/i18n/locales/cy.json +76 -16
  26. package/front_end/core/i18n/locales/da.json +77 -17
  27. package/front_end/core/i18n/locales/de.json +178 -118
  28. package/front_end/core/i18n/locales/el.json +76 -16
  29. package/front_end/core/i18n/locales/en-GB.json +76 -16
  30. package/front_end/core/i18n/locales/en-US.json +205 -52
  31. package/front_end/core/i18n/locales/en-XL.json +205 -52
  32. package/front_end/core/i18n/locales/es-419.json +76 -16
  33. package/front_end/core/i18n/locales/es.json +76 -16
  34. package/front_end/core/i18n/locales/et.json +76 -16
  35. package/front_end/core/i18n/locales/eu.json +76 -16
  36. package/front_end/core/i18n/locales/fa.json +83 -23
  37. package/front_end/core/i18n/locales/fi.json +76 -16
  38. package/front_end/core/i18n/locales/fil.json +76 -16
  39. package/front_end/core/i18n/locales/fr-CA.json +76 -16
  40. package/front_end/core/i18n/locales/fr.json +76 -16
  41. package/front_end/core/i18n/locales/gl.json +76 -16
  42. package/front_end/core/i18n/locales/gu.json +76 -16
  43. package/front_end/core/i18n/locales/he.json +76 -16
  44. package/front_end/core/i18n/locales/hi.json +76 -16
  45. package/front_end/core/i18n/locales/hr.json +76 -16
  46. package/front_end/core/i18n/locales/hu.json +76 -16
  47. package/front_end/core/i18n/locales/hy.json +76 -16
  48. package/front_end/core/i18n/locales/id.json +79 -19
  49. package/front_end/core/i18n/locales/is.json +75 -15
  50. package/front_end/core/i18n/locales/it.json +124 -64
  51. package/front_end/core/i18n/locales/ja.json +76 -16
  52. package/front_end/core/i18n/locales/ka.json +76 -16
  53. package/front_end/core/i18n/locales/kk.json +76 -16
  54. package/front_end/core/i18n/locales/km.json +76 -16
  55. package/front_end/core/i18n/locales/kn.json +76 -16
  56. package/front_end/core/i18n/locales/ko.json +76 -16
  57. package/front_end/core/i18n/locales/ky.json +76 -16
  58. package/front_end/core/i18n/locales/lo.json +76 -16
  59. package/front_end/core/i18n/locales/lt.json +76 -16
  60. package/front_end/core/i18n/locales/lv.json +76 -16
  61. package/front_end/core/i18n/locales/mk.json +76 -16
  62. package/front_end/core/i18n/locales/ml.json +76 -16
  63. package/front_end/core/i18n/locales/mn.json +76 -16
  64. package/front_end/core/i18n/locales/mr.json +76 -16
  65. package/front_end/core/i18n/locales/ms.json +76 -16
  66. package/front_end/core/i18n/locales/my.json +78 -18
  67. package/front_end/core/i18n/locales/ne.json +76 -16
  68. package/front_end/core/i18n/locales/nl.json +77 -17
  69. package/front_end/core/i18n/locales/no.json +76 -16
  70. package/front_end/core/i18n/locales/or.json +76 -16
  71. package/front_end/core/i18n/locales/pa.json +76 -16
  72. package/front_end/core/i18n/locales/pl.json +78 -18
  73. package/front_end/core/i18n/locales/pt-PT.json +123 -63
  74. package/front_end/core/i18n/locales/pt.json +78 -18
  75. package/front_end/core/i18n/locales/ro.json +76 -16
  76. package/front_end/core/i18n/locales/ru.json +77 -17
  77. package/front_end/core/i18n/locales/si.json +76 -16
  78. package/front_end/core/i18n/locales/sk.json +76 -16
  79. package/front_end/core/i18n/locales/sl.json +76 -16
  80. package/front_end/core/i18n/locales/sq.json +76 -16
  81. package/front_end/core/i18n/locales/sr-Latn.json +76 -16
  82. package/front_end/core/i18n/locales/sr.json +76 -16
  83. package/front_end/core/i18n/locales/sv.json +76 -16
  84. package/front_end/core/i18n/locales/sw.json +76 -16
  85. package/front_end/core/i18n/locales/ta.json +77 -17
  86. package/front_end/core/i18n/locales/te.json +76 -16
  87. package/front_end/core/i18n/locales/th.json +76 -16
  88. package/front_end/core/i18n/locales/tr.json +76 -16
  89. package/front_end/core/i18n/locales/uk.json +76 -16
  90. package/front_end/core/i18n/locales/ur.json +76 -16
  91. package/front_end/core/i18n/locales/uz.json +77 -17
  92. package/front_end/core/i18n/locales/vi.json +76 -16
  93. package/front_end/core/i18n/locales/zh-HK.json +76 -16
  94. package/front_end/core/i18n/locales/zh-TW.json +76 -16
  95. package/front_end/core/i18n/locales/zh.json +76 -16
  96. package/front_end/core/i18n/locales/zu.json +76 -16
  97. package/front_end/core/platform/dom-utilities.ts +16 -0
  98. package/front_end/core/platform/platform.ts +2 -0
  99. package/front_end/core/protocol_client/InspectorBackend.ts +2 -1
  100. package/front_end/core/protocol_client/NodeURL.ts +1 -1
  101. package/front_end/core/root/Runtime.ts +6 -0
  102. package/front_end/core/sdk/AccessibilityModel.ts +7 -6
  103. package/front_end/core/sdk/CSSMatchedStyles.ts +71 -17
  104. package/front_end/core/sdk/CSSMetadata.ts +15 -0
  105. package/front_end/core/sdk/CSSModel.ts +9 -7
  106. package/front_end/core/sdk/CSSProperty.ts +97 -11
  107. package/front_end/core/sdk/CSSStyleSheetHeader.ts +9 -5
  108. package/front_end/core/sdk/CSSSupports.ts +4 -1
  109. package/front_end/core/sdk/ChildTargetManager.ts +3 -1
  110. package/front_end/core/sdk/Connections.ts +3 -2
  111. package/front_end/core/sdk/ConsoleModel.ts +6 -5
  112. package/front_end/core/sdk/Cookie.ts +4 -2
  113. package/front_end/core/sdk/DOMDebuggerModel.ts +10 -6
  114. package/front_end/core/sdk/DOMModel.ts +2 -2
  115. package/front_end/core/sdk/DebuggerModel.ts +27 -5
  116. package/front_end/core/sdk/HeapProfilerModel.ts +2 -1
  117. package/front_end/core/sdk/NetworkManager.ts +13 -12
  118. package/front_end/core/sdk/NetworkRequest.ts +1 -1
  119. package/front_end/core/sdk/PageLoad.ts +3 -1
  120. package/front_end/core/sdk/PageResourceLoader.ts +9 -7
  121. package/front_end/core/sdk/ProfileTreeModel.ts +3 -2
  122. package/front_end/core/sdk/RemoteObject.ts +18 -6
  123. package/front_end/core/sdk/ResourceTreeModel.ts +17 -11
  124. package/front_end/core/sdk/ScreenCaptureModel.ts +3 -0
  125. package/front_end/core/sdk/Script.ts +4 -3
  126. package/front_end/core/sdk/ServiceWorkerCacheModel.ts +2 -1
  127. package/front_end/core/sdk/SourceMap.ts +10 -6
  128. package/front_end/core/sdk/SourceMapManager.ts +47 -5
  129. package/front_end/core/sdk/Target.ts +2 -1
  130. package/front_end/core/sdk/TracingModel.ts +0 -9
  131. package/front_end/devtools_compatibility.js +1 -0
  132. package/front_end/entrypoints/formatter_worker/CSSRuleParser.ts +1 -1
  133. package/front_end/entrypoints/lighthouse_worker/LighthouseWorkerService.ts +10 -3
  134. package/front_end/entrypoints/main/MainImpl.ts +22 -2
  135. package/front_end/generated/InspectorBackendCommands.js +79 -14
  136. package/front_end/generated/SupportedCSSProperties.js +21 -8
  137. package/front_end/generated/protocol-mapping.d.ts +4 -0
  138. package/front_end/generated/protocol-proxy-api.d.ts +5 -0
  139. package/front_end/generated/protocol.ts +158 -28
  140. package/front_end/legacy/legacy-defs.d.ts +0 -4
  141. package/front_end/legacy_test_runner/heap_profiler_test_runner/heap_profiler_test_runner.js +1 -1
  142. package/front_end/legacy_test_runner/test_runner/TestRunner.js +1 -0
  143. package/front_end/models/bindings/BreakpointManager.ts +68 -11
  144. package/front_end/models/bindings/CSSWorkspaceBinding.ts +9 -2
  145. package/front_end/models/bindings/CompilerScriptMapping.ts +3 -2
  146. package/front_end/models/bindings/ContentProviderBasedProject.ts +12 -9
  147. package/front_end/models/bindings/DebuggerLanguagePlugins.ts +10 -8
  148. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +8 -1
  149. package/front_end/models/bindings/DefaultScriptMapping.ts +8 -2
  150. package/front_end/models/bindings/FileUtils.ts +3 -2
  151. package/front_end/models/bindings/IgnoreListManager.ts +5 -5
  152. package/front_end/models/bindings/ResourceUtils.ts +5 -4
  153. package/front_end/models/emulation/EmulatedDevices.ts +17 -0
  154. package/front_end/models/extensions/ExtensionAPI.ts +5 -2
  155. package/front_end/models/extensions/ExtensionPanel.ts +2 -1
  156. package/front_end/models/extensions/ExtensionServer.ts +13 -8
  157. package/front_end/models/issues_manager/AttributionReportingIssue.ts +0 -63
  158. package/front_end/models/issues_manager/CookieIssue.ts +7 -0
  159. package/front_end/models/issues_manager/DeprecationIssue.ts +326 -8
  160. package/front_end/models/issues_manager/IssuesManager.ts +4 -0
  161. package/front_end/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
  162. package/front_end/models/issues_manager/descriptions/deprecation.md +1 -1
  163. package/front_end/models/logs/LogManager.ts +2 -1
  164. package/front_end/models/logs/NetworkLog.ts +14 -12
  165. package/front_end/models/persistence/Automapping.ts +17 -16
  166. package/front_end/models/persistence/EditFileSystemView.ts +5 -4
  167. package/front_end/models/persistence/FileSystemWorkspaceBinding.ts +24 -24
  168. package/front_end/models/persistence/IsolatedFileSystem.ts +2 -2
  169. package/front_end/models/persistence/IsolatedFileSystemManager.ts +7 -6
  170. package/front_end/models/persistence/NetworkPersistenceManager.ts +92 -54
  171. package/front_end/models/persistence/PersistenceImpl.ts +7 -7
  172. package/front_end/models/persistence/PlatformFileSystem.ts +7 -8
  173. package/front_end/models/persistence/WorkspaceSettingsTab.ts +3 -2
  174. package/front_end/models/text_utils/CodeMirrorUtils.ts +53 -0
  175. package/front_end/models/text_utils/text_utils.ts +2 -0
  176. package/front_end/models/timeline_model/TimelineModel.ts +31 -30
  177. package/front_end/models/timeline_model/TimelineProfileTree.ts +3 -2
  178. package/front_end/models/workspace/FileManager.ts +9 -6
  179. package/front_end/models/workspace/UISourceCode.ts +16 -14
  180. package/front_end/models/workspace/WorkspaceImpl.ts +40 -16
  181. package/front_end/panels/accessibility/AccessibilitySubPane.ts +2 -1
  182. package/front_end/panels/application/AppManifestView.ts +1 -1
  183. package/front_end/panels/application/ApplicationPanelCacheSection.ts +5 -4
  184. package/front_end/panels/application/ApplicationPanelSidebar.ts +34 -30
  185. package/front_end/panels/application/ApplicationPanelTreeElement.ts +5 -4
  186. package/front_end/panels/application/BackgroundServiceView.ts +2 -1
  187. package/front_end/panels/application/DatabaseQueryView.ts +2 -1
  188. package/front_end/panels/application/InterestGroupTreeElement.ts +3 -2
  189. package/front_end/panels/application/ReportingApiTreeElement.ts +3 -2
  190. package/front_end/panels/application/ResourcesPanel.ts +4 -3
  191. package/front_end/panels/application/ServiceWorkerCacheViews.ts +6 -1
  192. package/front_end/panels/application/TrustTokensTreeElement.ts +3 -2
  193. package/front_end/panels/application/components/BackForwardCacheStrings.ts +10 -1
  194. package/front_end/panels/application/components/BackForwardCacheView.ts +163 -13
  195. package/front_end/panels/application/components/backForwardCacheView.css +15 -4
  196. package/front_end/panels/browser_debugger/XHRBreakpointsSidebarPane.ts +19 -19
  197. package/front_end/panels/changes/ChangesView.ts +38 -0
  198. package/front_end/panels/console/ConsolePinPane.ts +7 -0
  199. package/front_end/panels/console/ConsolePrompt.ts +11 -1
  200. package/front_end/panels/console/ConsoleSidebar.ts +2 -1
  201. package/front_end/panels/console/ConsoleView.ts +60 -32
  202. package/front_end/panels/console/ConsoleViewMessage.ts +12 -9
  203. package/front_end/panels/console/ConsoleViewport.ts +2 -1
  204. package/front_end/panels/console/ErrorStackParser.ts +8 -4
  205. package/front_end/panels/console/consoleView.css +0 -1
  206. package/front_end/panels/coverage/CoverageListView.ts +1 -1
  207. package/front_end/panels/coverage/CoverageModel.ts +6 -6
  208. package/front_end/panels/coverage/CoverageView.ts +2 -1
  209. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +2 -1
  210. package/front_end/panels/css_overview/components/CSSOverviewStartView.ts +7 -6
  211. package/front_end/panels/css_overview/components/cssOverviewStartView.css +0 -48
  212. package/front_end/panels/css_overview/cssOverviewCompletedView.css +5 -0
  213. package/front_end/panels/css_overview/cssOverviewSidebarPanel.css +2 -0
  214. package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +2 -1
  215. package/front_end/panels/elements/ComputedStyleWidget.ts +2 -1
  216. package/front_end/panels/elements/ElementStatePaneWidget.ts +4 -6
  217. package/front_end/panels/elements/ElementsPanel.ts +16 -5
  218. package/front_end/panels/elements/ImagePreviewPopover.ts +6 -4
  219. package/front_end/panels/elements/PropertiesWidget.ts +4 -24
  220. package/front_end/panels/elements/StyleEditorWidget.ts +2 -1
  221. package/front_end/panels/elements/StylePropertiesSection.ts +1614 -0
  222. package/front_end/panels/elements/StylePropertyHighlighter.ts +2 -1
  223. package/front_end/panels/elements/StylePropertyTreeElement.ts +20 -1
  224. package/front_end/panels/elements/StylesSidebarPane.ts +97 -1675
  225. package/front_end/panels/elements/elements-legacy.ts +3 -3
  226. package/front_end/panels/elements/elements.ts +3 -0
  227. package/front_end/panels/elements/stylesSidebarPane.css +3 -1
  228. package/front_end/panels/emulation/DeviceModeToolbar.ts +2 -1
  229. package/front_end/panels/input/InputTimeline.ts +3 -2
  230. package/front_end/panels/issues/AttributionReportingIssueDetailsView.ts +0 -50
  231. package/front_end/panels/issues/ComboBoxOfCheckBoxes.ts +14 -2
  232. package/front_end/panels/issues/IssueAggregator.ts +8 -0
  233. package/front_end/panels/issues/issues.ts +2 -0
  234. package/front_end/panels/lighthouse/LighthouseController.ts +5 -1
  235. package/front_end/panels/lighthouse/LighthousePanel.ts +3 -1
  236. package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +1 -1
  237. package/front_end/panels/lighthouse/LighthouseTimespanView.ts +3 -3
  238. package/front_end/panels/network/BlockedURLsPane.ts +3 -2
  239. package/front_end/panels/network/NetworkConfigView.ts +6 -0
  240. package/front_end/panels/network/NetworkDataGridNode.ts +4 -0
  241. package/front_end/panels/network/NetworkLogView.ts +3 -3
  242. package/front_end/panels/network/RequestHTMLView.ts +1 -0
  243. package/front_end/panels/network/RequestHeadersView.ts +71 -10
  244. package/front_end/panels/network/networkLogView.css +9 -17
  245. package/front_end/panels/network/requestHeadersTree.css +16 -0
  246. package/front_end/panels/profiler/HeapSnapshotView.ts +5 -2
  247. package/front_end/panels/profiler/LiveHeapProfileView.ts +3 -1
  248. package/front_end/panels/profiler/ProfileView.ts +2 -2
  249. package/front_end/panels/profiler/ProfilesPanel.ts +2 -1
  250. package/front_end/panels/profiler/heapProfiler.css +15 -3
  251. package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +4 -2
  252. package/front_end/panels/screencast/ScreencastView.ts +5 -2
  253. package/front_end/panels/search/SearchConfig.ts +2 -1
  254. package/front_end/panels/settings/KeybindsSettingsTab.ts +3 -2
  255. package/front_end/panels/settings/SettingsScreen.ts +4 -1
  256. package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +1 -2
  257. package/front_end/panels/snippets/ScriptSnippetFileSystem.ts +4 -4
  258. package/front_end/panels/sources/BreakpointEditDialog.ts +0 -1
  259. package/front_end/panels/sources/CSSPlugin.ts +6 -6
  260. package/front_end/panels/sources/CoveragePlugin.ts +2 -1
  261. package/front_end/panels/sources/DebuggerPlugin.ts +4 -4
  262. package/front_end/panels/sources/EditingLocationHistoryManager.ts +4 -1
  263. package/front_end/panels/sources/NavigatorView.ts +28 -20
  264. package/front_end/panels/sources/SearchSourcesView.ts +2 -2
  265. package/front_end/panels/sources/SourcesNavigator.ts +4 -2
  266. package/front_end/panels/sources/SourcesPanel.ts +4 -4
  267. package/front_end/panels/sources/SourcesSearchScope.ts +12 -8
  268. package/front_end/panels/sources/SourcesView.ts +3 -1
  269. package/front_end/panels/sources/TabbedEditorContainer.ts +1 -1
  270. package/front_end/panels/sources/components/HeadersView.css +17 -2
  271. package/front_end/panels/sources/components/HeadersView.ts +103 -1
  272. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +9 -9
  273. package/front_end/panels/timeline/TimelinePanel.ts +3 -2
  274. package/front_end/panels/timeline/timelinePanel.css +1 -2
  275. package/front_end/panels/utils/utils.ts +97 -0
  276. package/front_end/third_party/codemirror.next/bundle.ts +27 -25
  277. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  278. package/front_end/third_party/codemirror.next/chunk/cpp.js +2 -2
  279. package/front_end/third_party/codemirror.next/chunk/java.js +2 -1
  280. package/front_end/third_party/codemirror.next/chunk/json.js +2 -2
  281. package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
  282. package/front_end/third_party/codemirror.next/chunk/markdown.js +2 -2
  283. package/front_end/third_party/codemirror.next/chunk/php.js +2 -1
  284. package/front_end/third_party/codemirror.next/chunk/python.js +2 -2
  285. package/front_end/third_party/codemirror.next/chunk/wast.js +2 -1
  286. package/front_end/third_party/codemirror.next/chunk/xml.js +2 -1
  287. package/front_end/third_party/codemirror.next/codemirror.next.d.ts +1884 -2281
  288. package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
  289. package/front_end/third_party/codemirror.next/package.json +21 -32
  290. package/front_end/third_party/lit-html/README.chromium +3 -3
  291. package/front_end/third_party/lit-html/package/README.md +1 -1
  292. package/front_end/third_party/lit-html/package/async-directive.d.ts +1 -1
  293. package/front_end/third_party/lit-html/package/async-directive.js.map +1 -1
  294. package/front_end/third_party/lit-html/package/development/async-directive.d.ts +1 -1
  295. package/front_end/third_party/lit-html/package/development/async-directive.js.map +1 -1
  296. package/front_end/third_party/lit-html/package/development/directives/choose.d.ts +32 -0
  297. package/front_end/third_party/lit-html/package/development/directives/choose.d.ts.map +1 -0
  298. package/front_end/third_party/lit-html/package/development/directives/choose.js +41 -0
  299. package/front_end/third_party/lit-html/package/development/directives/choose.js.map +1 -0
  300. package/front_end/third_party/lit-html/package/development/directives/join.d.ts +21 -0
  301. package/front_end/third_party/lit-html/package/development/directives/join.d.ts.map +1 -0
  302. package/front_end/third_party/lit-html/package/development/directives/join.js +19 -0
  303. package/front_end/third_party/lit-html/package/development/directives/join.js.map +1 -0
  304. package/front_end/third_party/lit-html/package/development/directives/keyed.d.ts +23 -0
  305. package/front_end/third_party/lit-html/package/development/directives/keyed.d.ts.map +1 -0
  306. package/front_end/third_party/lit-html/package/development/directives/keyed.js +39 -0
  307. package/front_end/third_party/lit-html/package/development/directives/keyed.js.map +1 -0
  308. package/front_end/third_party/lit-html/package/development/directives/map.d.ts +23 -0
  309. package/front_end/third_party/lit-html/package/development/directives/map.d.ts.map +1 -0
  310. package/front_end/third_party/lit-html/package/development/directives/map.js +30 -0
  311. package/front_end/third_party/lit-html/package/development/directives/map.js.map +1 -0
  312. package/front_end/third_party/lit-html/package/development/directives/range.d.ts +24 -0
  313. package/front_end/third_party/lit-html/package/development/directives/range.d.ts.map +1 -0
  314. package/front_end/third_party/lit-html/package/development/directives/range.js +13 -0
  315. package/front_end/third_party/lit-html/package/development/directives/range.js.map +1 -0
  316. package/front_end/third_party/lit-html/package/development/directives/template-content.d.ts +1 -1
  317. package/front_end/third_party/lit-html/package/development/directives/when.d.ts +26 -0
  318. package/front_end/third_party/lit-html/package/development/directives/when.d.ts.map +1 -0
  319. package/front_end/third_party/lit-html/package/development/directives/when.js +9 -0
  320. package/front_end/third_party/lit-html/package/development/directives/when.js.map +1 -0
  321. package/front_end/third_party/lit-html/package/development/lit-html.d.ts +182 -1
  322. package/front_end/third_party/lit-html/package/development/lit-html.d.ts.map +1 -1
  323. package/front_end/third_party/lit-html/package/development/lit-html.js +187 -4
  324. package/front_end/third_party/lit-html/package/development/lit-html.js.map +1 -1
  325. package/front_end/third_party/lit-html/package/development/static.d.ts.map +1 -1
  326. package/front_end/third_party/lit-html/package/development/static.js +7 -0
  327. package/front_end/third_party/lit-html/package/development/static.js.map +1 -1
  328. package/front_end/third_party/lit-html/package/directives/choose.d.ts +32 -0
  329. package/front_end/third_party/lit-html/package/directives/choose.d.ts.map +1 -0
  330. package/front_end/third_party/lit-html/package/directives/choose.js +7 -0
  331. package/front_end/third_party/lit-html/package/directives/choose.js.map +1 -0
  332. package/front_end/third_party/lit-html/package/directives/class-map.js +1 -1
  333. package/front_end/third_party/lit-html/package/directives/guard.js +1 -1
  334. package/front_end/third_party/lit-html/package/directives/join.d.ts +21 -0
  335. package/front_end/third_party/lit-html/package/directives/join.d.ts.map +1 -0
  336. package/front_end/third_party/lit-html/package/directives/join.js +7 -0
  337. package/front_end/third_party/lit-html/package/directives/join.js.map +1 -0
  338. package/front_end/third_party/lit-html/package/directives/keyed.d.ts +23 -0
  339. package/front_end/third_party/lit-html/package/directives/keyed.d.ts.map +1 -0
  340. package/front_end/third_party/lit-html/package/directives/keyed.js +7 -0
  341. package/front_end/third_party/lit-html/package/directives/keyed.js.map +1 -0
  342. package/front_end/third_party/lit-html/package/directives/map.d.ts +23 -0
  343. package/front_end/third_party/lit-html/package/directives/map.d.ts.map +1 -0
  344. package/front_end/third_party/lit-html/package/directives/map.js +7 -0
  345. package/front_end/third_party/lit-html/package/directives/map.js.map +1 -0
  346. package/front_end/third_party/lit-html/package/directives/range.d.ts +24 -0
  347. package/front_end/third_party/lit-html/package/directives/range.d.ts.map +1 -0
  348. package/front_end/third_party/lit-html/package/directives/range.js +7 -0
  349. package/front_end/third_party/lit-html/package/directives/range.js.map +1 -0
  350. package/front_end/third_party/lit-html/package/directives/ref.js +1 -1
  351. package/front_end/third_party/lit-html/package/directives/repeat.js +1 -1
  352. package/front_end/third_party/lit-html/package/directives/style-map.js +1 -1
  353. package/front_end/third_party/lit-html/package/directives/template-content.d.ts +1 -1
  354. package/front_end/third_party/lit-html/package/directives/template-content.js +1 -1
  355. package/front_end/third_party/lit-html/package/directives/unsafe-html.js +1 -1
  356. package/front_end/third_party/lit-html/package/directives/until.js +1 -1
  357. package/front_end/third_party/lit-html/package/directives/when.d.ts +26 -0
  358. package/front_end/third_party/lit-html/package/directives/when.d.ts.map +1 -0
  359. package/front_end/third_party/lit-html/package/directives/when.js +7 -0
  360. package/front_end/third_party/lit-html/package/directives/when.js.map +1 -0
  361. package/front_end/third_party/lit-html/package/lit-html.d.ts +182 -1
  362. package/front_end/third_party/lit-html/package/lit-html.d.ts.map +1 -1
  363. package/front_end/third_party/lit-html/package/lit-html.js +1 -1
  364. package/front_end/third_party/lit-html/package/lit-html.js.map +1 -1
  365. package/front_end/third_party/lit-html/package/package.json +25 -1
  366. package/front_end/third_party/lit-html/package/private-ssr-support.js +1 -1
  367. package/front_end/third_party/lit-html/package/static.d.ts.map +1 -1
  368. package/front_end/third_party/lit-html/package/static.js +1 -1
  369. package/front_end/third_party/lit-html/package/static.js.map +1 -1
  370. package/front_end/third_party/puppeteer/README.chromium +1 -1
  371. package/front_end/third_party/puppeteer/package/README.md +12 -13
  372. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.js +5 -1
  373. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.js.map +1 -1
  374. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js +5 -1
  375. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
  376. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts +2 -2
  377. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js +2 -2
  378. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts +2 -2
  379. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  380. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js +13 -6
  381. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  382. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js +5 -1
  383. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
  384. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts +1 -0
  385. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
  386. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js +4 -1
  387. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js.map +1 -1
  388. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +1 -0
  389. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  390. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js +10 -0
  391. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  392. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts +4 -2
  393. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
  394. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
  395. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
  396. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js +12 -1
  397. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js.map +1 -1
  398. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js +5 -1
  399. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js.map +1 -1
  400. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts.map +1 -1
  401. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js +7 -6
  402. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js.map +1 -1
  403. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js +8 -1
  404. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
  405. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js +6 -2
  406. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  407. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js +6 -2
  408. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  409. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +1 -1
  410. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts +2 -2
  411. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +2 -2
  412. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +2 -2
  413. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  414. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +13 -6
  415. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  416. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts +1 -0
  417. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
  418. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js +4 -1
  419. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js.map +1 -1
  420. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +1 -0
  421. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  422. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +10 -0
  423. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  424. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +4 -2
  425. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
  426. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
  427. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
  428. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +12 -1
  429. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js.map +1 -1
  430. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +1 -1
  431. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js +2 -5
  432. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js.map +1 -1
  433. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +3 -0
  434. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
  435. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +1 -1
  436. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  437. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js +1 -1
  438. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  439. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +1 -1
  440. package/front_end/third_party/puppeteer/package/lib/types.d.ts +10 -6
  441. package/front_end/third_party/puppeteer/package/package.json +17 -17
  442. package/front_end/ui/components/code_highlighter/CodeHighlighter.ts +1 -1
  443. package/front_end/ui/components/data_grid/DataGrid.ts +8 -9
  444. package/front_end/ui/components/data_grid/DataGridController.ts +3 -1
  445. package/front_end/ui/components/docs/panel_introduction_steps/basic.html +25 -0
  446. package/front_end/ui/components/docs/panel_introduction_steps/basic.ts +25 -0
  447. package/front_end/ui/components/input/input.ts +2 -2
  448. package/front_end/ui/components/linkifier/LinkifierUtils.ts +3 -1
  449. package/front_end/ui/components/panel_feedback/FeedbackButton.ts +4 -1
  450. package/front_end/ui/components/panel_introduction_steps/PanelIntroductionSteps.ts +44 -0
  451. package/front_end/ui/components/panel_introduction_steps/panelIntroductionSteps.css +56 -0
  452. package/front_end/ui/components/panel_introduction_steps/panel_introduction_steps.ts +5 -0
  453. package/front_end/ui/components/render_coordinator/RenderCoordinator.ts +3 -4
  454. package/front_end/ui/components/text_editor/TextEditor.ts +1 -1
  455. package/front_end/ui/components/text_editor/config.ts +1 -35
  456. package/front_end/ui/components/text_editor/javascript.ts +8 -8
  457. package/front_end/ui/components/tree_outline/TreeOutline.ts +10 -9
  458. package/front_end/ui/components/tree_outline/treeOutline.css +1 -1
  459. package/front_end/ui/legacy/ARIAUtils.ts +4 -2
  460. package/front_end/ui/legacy/ContextMenu.ts +14 -0
  461. package/front_end/ui/legacy/DockController.ts +2 -1
  462. package/front_end/ui/legacy/SettingsUI.ts +3 -3
  463. package/front_end/ui/legacy/SoftContextMenu.ts +43 -14
  464. package/front_end/ui/legacy/Toolbar.ts +16 -0
  465. package/front_end/ui/legacy/Treeoutline.ts +17 -7
  466. package/front_end/ui/legacy/UIUtils.ts +2 -2
  467. package/front_end/ui/legacy/View.ts +14 -8
  468. package/front_end/ui/legacy/ViewManager.ts +2 -1
  469. package/front_end/ui/legacy/ViewRegistration.ts +6 -0
  470. package/front_end/ui/legacy/Widget.ts +2 -1
  471. package/front_end/ui/legacy/XLink.ts +8 -3
  472. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +3 -1
  473. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +43 -11
  474. package/front_end/ui/legacy/components/data_grid/DataGrid.ts +98 -48
  475. package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +4 -3
  476. package/front_end/ui/legacy/components/data_grid/dataGrid.css +24 -28
  477. package/front_end/ui/legacy/components/inline_editor/CSSAngle.ts +5 -11
  478. package/front_end/ui/legacy/components/inline_editor/CSSLength.ts +8 -1
  479. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -7
  480. package/front_end/ui/legacy/components/perf_ui/LineLevelProfile.ts +11 -10
  481. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +7 -1
  482. package/front_end/ui/legacy/components/utils/ImagePreview.ts +18 -9
  483. package/front_end/ui/legacy/components/utils/Linkifier.ts +13 -6
  484. package/front_end/ui/legacy/reportView.css +1 -0
  485. package/front_end/ui/legacy/splitWidget.css +1 -1
  486. package/front_end/ui/legacy/tabbedPane.css +2 -0
  487. package/front_end/ui/legacy/themeColors.css +1 -1
  488. package/front_end/ui/legacy/toolbar.css +17 -1
  489. package/front_end/ui/legacy/utils/focus-changed.ts +3 -1
  490. package/inspector_overlay/.eslintrc.js +9 -0
  491. package/package.json +17 -17
  492. package/scripts/eslint_rules/lib/check_component_naming.js +4 -0
  493. package/scripts/eslint_rules/lib/es_modules_import.js +6 -0
  494. package/scripts/eslint_rules/lib/inject_checkbox_styles.js +121 -0
  495. package/scripts/eslint_rules/tests/es_modules_import_test.js +12 -0
  496. package/scripts/eslint_rules/tests/inject_checkbox_styles_test.js +127 -0
  497. package/front_end/models/issues_manager/descriptions/arAttributionEventSourceTriggerDataTooLarge.md +0 -4
  498. package/front_end/models/issues_manager/descriptions/arAttributionTriggerDataTooLarge.md +0 -4
  499. package/front_end/models/issues_manager/descriptions/arInvalidAttributionData.md +0 -8
  500. package/front_end/models/issues_manager/descriptions/arInvalidEventSourceTriggerData.md +0 -9
  501. package/front_end/models/issues_manager/descriptions/arInvalidTriggerDedupKey.md +0 -5
  502. package/front_end/models/issues_manager/descriptions/arInvalidTriggerPriority.md +0 -5
  503. package/front_end/models/issues_manager/descriptions/arMissingAttributionData.md +0 -7
@@ -2,11 +2,13 @@
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 type * as Platform from '../platform/platform.js';
6
+
5
7
  import type {NetworkRequest} from './NetworkRequest.js';
6
8
 
7
9
  export class PageLoad {
8
10
  id: number;
9
- url: string;
11
+ url: Platform.DevToolsPath.UrlString;
10
12
  startTime: number;
11
13
  loadTime!: number;
12
14
  contentLoadTime!: number;
@@ -5,6 +5,7 @@
5
5
  import * as Common from '../common/common.js';
6
6
  import * as Host from '../host/host.js';
7
7
  import * as i18n from '../i18n/i18n.js';
8
+ import type * as Platform from '../platform/platform.js';
8
9
  import type * as Protocol from '../../generated/protocol.js';
9
10
 
10
11
  import {FrameManager} from './FrameManager.js';
@@ -32,18 +33,18 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
32
33
  export type PageResourceLoadInitiator = {
33
34
  target: null,
34
35
  frameId: Protocol.Page.FrameId,
35
- initiatorUrl: string|null,
36
+ initiatorUrl: Platform.DevToolsPath.UrlString|null,
36
37
  }|{
37
38
  target: Target,
38
39
  frameId: Protocol.Page.FrameId | null,
39
- initiatorUrl: string | null,
40
+ initiatorUrl: Platform.DevToolsPath.UrlString | null,
40
41
  };
41
42
 
42
43
  export interface PageResource {
43
44
  success: boolean|null;
44
45
  errorMessage?: string;
45
46
  initiator: PageResourceLoadInitiator;
46
- url: string;
47
+ url: Platform.DevToolsPath.UrlString;
47
48
  size: number|null;
48
49
  }
49
50
 
@@ -168,7 +169,7 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
168
169
  return Promise.race([promise, timeoutPromise]);
169
170
  }
170
171
 
171
- static makeKey(url: string, initiator: PageResourceLoadInitiator): string {
172
+ static makeKey(url: Platform.DevToolsPath.UrlString, initiator: PageResourceLoadInitiator): string {
172
173
  if (initiator.frameId) {
173
174
  return `${url}-${initiator.frameId}`;
174
175
  }
@@ -178,7 +179,7 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
178
179
  throw new Error('Invalid initiator');
179
180
  }
180
181
 
181
- async loadResource(url: string, initiator: PageResourceLoadInitiator): Promise<{
182
+ async loadResource(url: Platform.DevToolsPath.UrlString, initiator: PageResourceLoadInitiator): Promise<{
182
183
  content: string,
183
184
  }> {
184
185
  const key = PageResourceLoader.makeKey(url, initiator);
@@ -210,7 +211,7 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
210
211
  }
211
212
  }
212
213
 
213
- private async dispatchLoad(url: string, initiator: PageResourceLoadInitiator): Promise<{
214
+ private async dispatchLoad(url: Platform.DevToolsPath.UrlString, initiator: PageResourceLoadInitiator): Promise<{
214
215
  success: boolean,
215
216
  content: string,
216
217
  errorDescription: Host.ResourceLoader.LoadErrorDescription,
@@ -285,7 +286,8 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
285
286
  return Host.UserMetrics.DeveloperResourceScheme.SchemeOther;
286
287
  }
287
288
 
288
- private async loadFromTarget(target: Target, frameId: Protocol.Page.FrameId|null, url: string): Promise<{
289
+ private async loadFromTarget(
290
+ target: Target, frameId: Protocol.Page.FrameId|null, url: Platform.DevToolsPath.UrlString): Promise<{
289
291
  success: boolean,
290
292
  content: string,
291
293
  errorDescription: {
@@ -3,6 +3,7 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import type * as Protocol from '../../generated/protocol.js';
6
+ import type * as Platform from '../platform/platform.js';
6
7
 
7
8
  import type {Target} from './Target.js';
8
9
 
@@ -35,8 +36,8 @@ export class ProfileNode {
35
36
  return String(this.callFrame.scriptId) as Protocol.Runtime.ScriptId;
36
37
  }
37
38
 
38
- get url(): string {
39
- return this.callFrame.url;
39
+ get url(): Platform.DevToolsPath.UrlString {
40
+ return this.callFrame.url as Platform.DevToolsPath.UrlString;
40
41
  }
41
42
 
42
43
  get lineNumber(): number {
@@ -62,8 +62,8 @@ export class RemoteObject {
62
62
  return remoteObject.type;
63
63
  }
64
64
 
65
- static isNullOrUndefined(remoteObject: RemoteObject|null|undefined): boolean {
66
- if (remoteObject === null || remoteObject === undefined) {
65
+ static isNullOrUndefined(remoteObject?: RemoteObject): boolean {
66
+ if (remoteObject === undefined) {
67
67
  return true;
68
68
  }
69
69
  switch (remoteObject.type) {
@@ -715,7 +715,7 @@ export class ScopeRef {
715
715
 
716
716
  export class RemoteObjectProperty {
717
717
  name: string;
718
- value: RemoteObject|null|undefined;
718
+ value?: RemoteObject;
719
719
  enumerable: boolean;
720
720
  writable: boolean;
721
721
  isOwn: boolean;
@@ -733,9 +733,7 @@ export class RemoteObjectProperty {
733
733
  wasThrown?: boolean, symbol?: RemoteObject|null, synthetic?: boolean,
734
734
  syntheticSetter?: ((arg0: string) => Promise<RemoteObject|null>), isPrivate?: boolean) {
735
735
  this.name = name;
736
- if (value !== null) {
737
- this.value = value;
738
- }
736
+ this.value = value !== null ? value : undefined;
739
737
  this.enumerable = typeof enumerable !== 'undefined' ? enumerable : true;
740
738
  const isNonSyntheticOrSyntheticWritable = !synthetic || Boolean(syntheticSetter);
741
739
  this.writable = typeof writable !== 'undefined' ? writable : isNonSyntheticOrSyntheticWritable;
@@ -765,6 +763,20 @@ export class RemoteObjectProperty {
765
763
  isAccessorProperty(): boolean {
766
764
  return Boolean(this.getter || this.setter);
767
765
  }
766
+
767
+ match({includeNullOrUndefinedValues, regex}: {includeNullOrUndefinedValues: boolean, regex: RegExp|null}): boolean {
768
+ if (regex !== null) {
769
+ if (!regex.test(this.name) && !regex.test(this.value?.description ?? '')) {
770
+ return false;
771
+ }
772
+ }
773
+ if (!includeNullOrUndefinedValues) {
774
+ if (!this.isAccessorProperty() && RemoteObject.isNullOrUndefined(this.value)) {
775
+ return false;
776
+ }
777
+ }
778
+ return true;
779
+ }
768
780
  }
769
781
 
770
782
  // Below is a wrapper around a local object that implements the RemoteObject interface,
@@ -34,7 +34,7 @@
34
34
 
35
35
  import * as Common from '../common/common.js';
36
36
  import * as i18n from '../i18n/i18n.js';
37
- import type * as Platform from '../platform/platform.js';
37
+ import * as Platform from '../platform/platform.js';
38
38
  import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
39
39
  import * as Protocol from '../../generated/protocol.js';
40
40
 
@@ -108,7 +108,7 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
108
108
  return result;
109
109
  }
110
110
 
111
- static resourceForURL(url: string): Resource|null {
111
+ static resourceForURL(url: Platform.DevToolsPath.UrlString): Resource|null {
112
112
  for (const resourceTreeModel of TargetManager.instance().models(ResourceTreeModel)) {
113
113
  const mainFrame = resourceTreeModel.mainFrame;
114
114
  const result = mainFrame ? mainFrame.resourceForURL(url) : null;
@@ -322,7 +322,7 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
322
322
  return [...this.framesInternal.values()];
323
323
  }
324
324
 
325
- resourceForURL(url: string): Resource|null {
325
+ resourceForURL(url: Platform.DevToolsPath.UrlString): Resource|null {
326
326
  // Workers call into this with no #frames available.
327
327
  return this.mainFrame ? this.mainFrame.resourceForURL(url) : null;
328
328
  }
@@ -399,7 +399,7 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
399
399
 
400
400
  // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
401
401
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
402
- navigate(url: string): Promise<any> {
402
+ navigate(url: Platform.DevToolsPath.UrlString): Promise<any> {
403
403
  return this.agent.invoke_navigate({url});
404
404
  }
405
405
 
@@ -607,7 +607,7 @@ export class ResourceTreeFrame {
607
607
  #urlInternal: Platform.DevToolsPath.UrlString;
608
608
  #domainAndRegistryInternal: string;
609
609
  #securityOriginInternal: string|null;
610
- #unreachableUrlInternal: string;
610
+ #unreachableUrlInternal: Platform.DevToolsPath.UrlString;
611
611
  #adFrameStatusInternal?: Protocol.Page.AdFrameStatus;
612
612
  #secureContextType: Protocol.Page.SecureContextType|null;
613
613
  #crossOriginIsolatedContextType: Protocol.Page.CrossOriginIsolatedContextType|null;
@@ -615,7 +615,7 @@ export class ResourceTreeFrame {
615
615
  #creationStackTrace: Protocol.Runtime.StackTrace|null;
616
616
  #creationStackTraceTarget: Target|null;
617
617
  #childFramesInternal: Set<ResourceTreeFrame>;
618
- resourcesMap: Map<string, Resource>;
618
+ resourcesMap: Map<Platform.DevToolsPath.UrlString, Resource>;
619
619
  backForwardCacheDetails: {
620
620
  restoredFromCache: boolean|undefined,
621
621
  explanations: Protocol.Page.BackForwardCacheNotRestoredExplanation[],
@@ -636,10 +636,12 @@ export class ResourceTreeFrame {
636
636
 
637
637
  this.#loaderIdInternal = (payload && payload.loaderId) || '';
638
638
  this.#nameInternal = payload && payload.name;
639
- this.#urlInternal = ((payload && payload.url) || '') as Platform.DevToolsPath.UrlString;
639
+ this.#urlInternal =
640
+ payload && payload.url as Platform.DevToolsPath.UrlString || Platform.DevToolsPath.EmptyUrlString;
640
641
  this.#domainAndRegistryInternal = (payload && payload.domainAndRegistry) || '';
641
642
  this.#securityOriginInternal = payload && payload.securityOrigin;
642
- this.#unreachableUrlInternal = (payload && payload.unreachableUrl) || '';
643
+ this.#unreachableUrlInternal =
644
+ (payload && payload.unreachableUrl as Platform.DevToolsPath.UrlString) || Platform.DevToolsPath.EmptyUrlString;
643
645
  this.#adFrameStatusInternal = payload?.adFrameStatus;
644
646
  this.#secureContextType = payload && payload.secureContextType;
645
647
  this.#crossOriginIsolatedContextType = payload && payload.crossOriginIsolatedContextType;
@@ -691,7 +693,8 @@ export class ResourceTreeFrame {
691
693
  this.#urlInternal = framePayload.url as Platform.DevToolsPath.UrlString;
692
694
  this.#domainAndRegistryInternal = framePayload.domainAndRegistry;
693
695
  this.#securityOriginInternal = framePayload.securityOrigin;
694
- this.#unreachableUrlInternal = framePayload.unreachableUrl || '';
696
+ this.#unreachableUrlInternal =
697
+ framePayload.unreachableUrl as Platform.DevToolsPath.UrlString || Platform.DevToolsPath.EmptyUrlString;
695
698
  this.#adFrameStatusInternal = framePayload?.adFrameStatus;
696
699
  this.#secureContextType = framePayload.secureContextType;
697
700
  this.#crossOriginIsolatedContextType = framePayload.crossOriginIsolatedContextType;
@@ -734,7 +737,7 @@ export class ResourceTreeFrame {
734
737
  return this.#securityOriginInternal;
735
738
  }
736
739
 
737
- unreachableUrl(): string {
740
+ unreachableUrl(): Platform.DevToolsPath.UrlString {
738
741
  return this.#unreachableUrlInternal;
739
742
  }
740
743
 
@@ -855,7 +858,7 @@ export class ResourceTreeFrame {
855
858
  return Array.from(this.resourcesMap.values());
856
859
  }
857
860
 
858
- resourceForURL(url: string): Resource|null {
861
+ resourceForURL(url: Platform.DevToolsPath.UrlString): Resource|null {
859
862
  const resource = this.resourcesMap.get(url);
860
863
  if (resource) {
861
864
  return resource;
@@ -1082,6 +1085,9 @@ export class PageDispatcher implements ProtocolProxyApi.PageDispatcher {
1082
1085
 
1083
1086
  downloadProgress(): void {
1084
1087
  }
1088
+
1089
+ prerenderAttemptCompleted({}: Protocol.Page.PrerenderAttemptCompletedEvent): void {
1090
+ }
1085
1091
  }
1086
1092
 
1087
1093
  SDKModel.register(ResourceTreeModel, {capabilities: Capability.DOM, autostart: true, early: true});
@@ -152,6 +152,9 @@ export class ScreenCaptureModel extends SDKModel<void> implements ProtocolProxyA
152
152
 
153
153
  downloadProgress(): void {
154
154
  }
155
+
156
+ prerenderAttemptCompleted(_params: Protocol.Page.PrerenderAttemptCompletedEvent): void {
157
+ }
155
158
  }
156
159
 
157
160
  SDKModel.register(ScreenCaptureModel, {capabilities: Capability.ScreenCapture, autostart: false});
@@ -75,7 +75,7 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
75
75
  readonly #codeOffsetInternal: number|null;
76
76
  readonly #language: string|null;
77
77
  #contentPromise: Promise<TextUtils.ContentProvider.DeferredContent>|null;
78
- readonly #embedderNameInternal: string|null;
78
+ readonly #embedderNameInternal: Platform.DevToolsPath.UrlString|null;
79
79
  readonly isModule: boolean|null;
80
80
  constructor(
81
81
  debuggerModel: DebuggerModel, scriptId: Protocol.Runtime.ScriptId, sourceURL: Platform.DevToolsPath.UrlString,
@@ -83,7 +83,8 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
83
83
  hash: string, isContentScript: boolean, isLiveEdit: boolean,
84
84
  sourceMapURL: Platform.DevToolsPath.UrlString|undefined, hasSourceURL: boolean, length: number,
85
85
  isModule: boolean|null, originStackTrace: Protocol.Runtime.StackTrace|null, codeOffset: number|null,
86
- scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null, embedderName: string|null) {
86
+ scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null,
87
+ embedderName: Platform.DevToolsPath.UrlString|null) {
87
88
  this.debuggerModel = debuggerModel;
88
89
  this.scriptId = scriptId;
89
90
  this.sourceURL = sourceURL;
@@ -109,7 +110,7 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
109
110
  this.#embedderNameInternal = embedderName;
110
111
  }
111
112
 
112
- embedderName(): string|null {
113
+ embedderName(): Platform.DevToolsPath.UrlString|null {
113
114
  return this.#embedderNameInternal;
114
115
  }
115
116
 
@@ -4,6 +4,7 @@
4
4
 
5
5
  import * as Common from '../common/common.js';
6
6
  import * as i18n from '../i18n/i18n.js';
7
+ import type * as Platform from '../platform/platform.js';
7
8
  import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
8
9
  import type * as Protocol from '../../generated/protocol.js';
9
10
 
@@ -305,7 +306,7 @@ export class Cache {
305
306
  return this.securityOrigin + this.cacheName;
306
307
  }
307
308
 
308
- async requestCachedResponse(url: string, requestHeaders: NameValue[]):
309
+ async requestCachedResponse(url: Platform.DevToolsPath.UrlString, requestHeaders: NameValue[]):
309
310
  Promise<Protocol.CacheStorage.CachedResponse|null> {
310
311
  const response = await this.#model.cacheAgent.invoke_requestCachedResponse(
311
312
  {cacheId: this.cacheId, requestURL: url, requestHeaders});
@@ -90,7 +90,7 @@ export class SourceMapV3 {
90
90
  export class Section {
91
91
  map!: SourceMapV3;
92
92
  offset!: Offset;
93
- url!: string|undefined;
93
+ url!: Platform.DevToolsPath.UrlString|undefined;
94
94
  constructor() {
95
95
  }
96
96
  }
@@ -369,10 +369,7 @@ export class TextSourceMap implements SourceMap {
369
369
 
370
370
  private parseSources(sourceMap: SourceMapV3): void {
371
371
  const sourcesList = [];
372
- let sourceRoot = sourceMap.sourceRoot || Platform.DevToolsPath.EmptyUrlString;
373
- if (sourceRoot && !sourceRoot.endsWith('/')) {
374
- sourceRoot = Common.ParsedURL.ParsedURL.concatenate(sourceRoot, '/');
375
- }
372
+ const sourceRoot = sourceMap.sourceRoot || Platform.DevToolsPath.EmptyUrlString;
376
373
  for (let i = 0; i < sourceMap.sources.length; ++i) {
377
374
  let href = sourceMap.sources[i];
378
375
  // The source map v3 proposal says to prepend the sourceRoot to the source URL
@@ -381,13 +378,20 @@ export class TextSourceMap implements SourceMap {
381
378
  // be meaningful or useful if the source URL is already absolute though. In this
382
379
  // case, use the source URL as is without prepending the sourceRoot.
383
380
  if (Common.ParsedURL.ParsedURL.isRelativeURL(href)) {
384
- href = Common.ParsedURL.ParsedURL.concatenate(sourceRoot, href);
381
+ if (sourceRoot && !sourceRoot.endsWith('/') && href && !href.startsWith('/')) {
382
+ href = Common.ParsedURL.ParsedURL.concatenate(sourceRoot, '/', href);
383
+ } else {
384
+ href = Common.ParsedURL.ParsedURL.concatenate(sourceRoot, href);
385
+ }
385
386
  }
386
387
  let url = Common.ParsedURL.ParsedURL.completeURL(this.#baseURL, href) || href;
387
388
  const source = sourceMap.sourcesContent && sourceMap.sourcesContent[i];
388
389
  if (url === this.#compiledURLInternal && source) {
389
390
  url = Common.ParsedURL.ParsedURL.concatenate(url, '? [sm]');
390
391
  }
392
+ if (this.#sourceInfos.has(url)) {
393
+ continue;
394
+ }
391
395
  this.#sourceInfos.set(url, new TextSourceMap.SourceInfo(source || null, null));
392
396
  sourcesList.push(url);
393
397
  }
@@ -25,8 +25,8 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
25
25
  export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWrapper.ObjectWrapper<EventTypes<T>> {
26
26
  readonly #target: Target;
27
27
  #isEnabled: boolean;
28
- readonly #relativeSourceURL: Map<T, string>;
29
- readonly #relativeSourceMapURL: Map<T, string>;
28
+ readonly #relativeSourceURL: Map<T, Platform.DevToolsPath.UrlString>;
29
+ readonly #relativeSourceMapURL: Map<T, Platform.DevToolsPath.UrlString>;
30
30
  #resolvedSourceMapId: Map<T, string>;
31
31
  readonly #sourceMapById: Map<string, SourceMap>;
32
32
  #sourceMapIdToLoadingClients: Platform.MapUtilities.Multimap<string, T>;
@@ -97,6 +97,44 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
97
97
  return this.#sourceMapById.get(sourceMapId) || null;
98
98
  }
99
99
 
100
+ // This method actively awaits the source map, if still loading.
101
+ sourceMapForClientPromise(client: T): Promise<SourceMap|null> {
102
+ const sourceMapId = this.#resolvedSourceMapId.get(client);
103
+ if (!sourceMapId) {
104
+ // The source map has detached or none exists for this client.
105
+ return Promise.resolve(null);
106
+ }
107
+
108
+ const sourceMap = this.sourceMapForClient(client);
109
+ if (sourceMap) {
110
+ return Promise.resolve(sourceMap);
111
+ }
112
+
113
+ if (!this.#sourceMapIdToLoadingClients.has(sourceMapId)) {
114
+ // The source map failed to attach.
115
+ return Promise.resolve(null);
116
+ }
117
+
118
+ return new Promise(resolve => {
119
+ const sourceMapAddedDescriptor = this.addEventListener(Events.SourceMapAttached, event => {
120
+ if (event.data.client !== client) {
121
+ return;
122
+ }
123
+ this.removeEventListener(Events.SourceMapAttached, sourceMapAddedDescriptor.listener);
124
+ this.removeEventListener(Events.SourceMapFailedToAttach, sourceMapFailedDescriptor.listener);
125
+ resolve(event.data.sourceMap);
126
+ });
127
+ const sourceMapFailedDescriptor = this.addEventListener(Events.SourceMapFailedToAttach, event => {
128
+ if (event.data.client !== client) {
129
+ return;
130
+ }
131
+ this.removeEventListener(Events.SourceMapAttached, sourceMapAddedDescriptor.listener);
132
+ this.removeEventListener(Events.SourceMapFailedToAttach, sourceMapFailedDescriptor.listener);
133
+ resolve(null);
134
+ });
135
+ });
136
+ }
137
+
100
138
  clientsForSourceMap(sourceMap: SourceMap): T[] {
101
139
  const sourceMapId = this.getSourceMapId(sourceMap.compiledURL(), sourceMap.url());
102
140
  if (this.#sourceMapIdToClients.has(sourceMapId)) {
@@ -105,11 +143,13 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
105
143
  return [...this.#sourceMapIdToLoadingClients.get(sourceMapId)];
106
144
  }
107
145
 
108
- private getSourceMapId(sourceURL: string, sourceMapURL: string): string {
146
+ private getSourceMapId(sourceURL: Platform.DevToolsPath.UrlString, sourceMapURL: Platform.DevToolsPath.UrlString):
147
+ string {
109
148
  return `${sourceURL}:${sourceMapURL}`;
110
149
  }
111
150
 
112
- private resolveRelativeURLs(sourceURL: string, sourceMapURL: string): {
151
+ private resolveRelativeURLs(
152
+ sourceURL: Platform.DevToolsPath.UrlString, sourceMapURL: Platform.DevToolsPath.UrlString): {
113
153
  sourceURL: Platform.DevToolsPath.UrlString,
114
154
  sourceMapURL: Platform.DevToolsPath.UrlString,
115
155
  sourceMapId: string,
@@ -131,7 +171,9 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
131
171
  };
132
172
  }
133
173
 
134
- attachSourceMap(client: T, relativeSourceURL: string|undefined, relativeSourceMapURL: string|undefined): void {
174
+ attachSourceMap(
175
+ client: T, relativeSourceURL: Platform.DevToolsPath.UrlString|undefined,
176
+ relativeSourceMapURL: Platform.DevToolsPath.UrlString|undefined): void {
135
177
  // TODO(chromium:1011811): Strengthen the type to obsolte the undefined check once core/sdk/ is fully typescriptified.
136
178
  if (relativeSourceURL === undefined || !relativeSourceMapURL) {
137
179
  return;
@@ -175,7 +175,8 @@ export class Target extends ProtocolClient.InspectorBackend.TargetBase {
175
175
  const parsedURL = Common.ParsedURL.ParsedURL.fromString(inspectedURL);
176
176
  this.#inspectedURLName = parsedURL ? parsedURL.lastPathComponentWithFragment() : '#' + this.#idInternal;
177
177
  if (!this.parentTarget()) {
178
- Host.InspectorFrontendHost.InspectorFrontendHostInstance.inspectedURLChanged(inspectedURL || '');
178
+ Host.InspectorFrontendHost.InspectorFrontendHostInstance.inspectedURLChanged(
179
+ inspectedURL || Platform.DevToolsPath.EmptyUrlString);
179
180
  }
180
181
  this.#targetManagerInternal.onInspectedURLChange(this);
181
182
  if (!this.#nameInternal) {
@@ -311,15 +311,6 @@ export class TracingModel {
311
311
  return process && process.threadByName(threadName);
312
312
  }
313
313
 
314
- extractEventsFromThreadByName(processName: string, threadName: string, eventName: string): Event[] {
315
- const thread = this.getThreadByName(processName, threadName);
316
- if (!thread) {
317
- return [];
318
- }
319
-
320
- return thread.removeEventsByName(eventName);
321
- }
322
-
323
314
  private processPendingAsyncEvents(): void {
324
315
  this.#asyncEvents.sort(Event.compareStartTime);
325
316
  for (let i = 0; i < this.#asyncEvents.length; ++i) {
@@ -419,6 +419,7 @@
419
419
  RecordingReplayStarted: 'DevTools.RecordingReplayStarted',
420
420
  RecordingToggled: 'DevTools.RecordingToggled',
421
421
  SyncSetting: 'DevTools.SyncSetting',
422
+ StyleTextCopied: 'DevTools.StyleTextCopied',
422
423
  };
423
424
 
424
425
  /**
@@ -96,7 +96,7 @@ export function parseCSS(text: string, chunkCallback: ChunkCallback): void {
96
96
  }
97
97
  break;
98
98
  case CSSParserStates.Style:
99
- if (tokenType.has('meta') || tokenType.has('property')) {
99
+ if (tokenType.has('meta') || tokenType.has('property') || tokenType.has('variable-2')) {
100
100
  property = {
101
101
  name: tokenValue,
102
102
  value: '',
@@ -135,21 +135,28 @@ async function invokeLH(action: string, args: any): Promise<unknown> {
135
135
  puppeteerConnection =
136
136
  await Puppeteer.PuppeteerConnection.getPuppeteerConnection(cdpConnection, mainFrameId, mainTargetId);
137
137
  const {page} = puppeteerConnection;
138
+ const configContext = {
139
+ logLevel: flags.logLevel,
140
+ settingsOverrides: {
141
+ channel: flags.channel,
142
+ locale: flags.locale,
143
+ },
144
+ };
138
145
 
139
146
  if (action === 'snapshot') {
140
147
  // @ts-expect-error https://github.com/GoogleChrome/lighthouse/issues/11628
141
- return await self.runLighthouseSnapshot({config, page});
148
+ return await self.runLighthouseSnapshot({config, page, configContext});
142
149
  }
143
150
 
144
151
  if (action === 'startTimespan') {
145
152
  // @ts-expect-error https://github.com/GoogleChrome/lighthouse/issues/11628
146
- const timespan = await self.startLighthouseTimespan({config, page});
153
+ const timespan = await self.startLighthouseTimespan({config, page, configContext});
147
154
  endTimespan = timespan.endTimespan;
148
155
  return;
149
156
  }
150
157
 
151
158
  // @ts-expect-error https://github.com/GoogleChrome/lighthouse/issues/11628
152
- return await self.runLighthouseNavigation(url, {config, page});
159
+ return await self.runLighthouseNavigation(url, {config, page, configContext});
153
160
  } catch (err) {
154
161
  return ({
155
162
  fatal: true,
@@ -111,9 +111,14 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
111
111
 
112
112
  export class MainImpl {
113
113
  #lateInitDonePromise!: Promise<void>;
114
+ #readyForTestPromise: Promise<void>;
115
+ #resolveReadyForTestPromise!: () => void;
114
116
 
115
117
  constructor() {
116
118
  MainImpl.instanceForTest = this;
119
+ this.#readyForTestPromise = new Promise(resolve => {
120
+ this.#resolveReadyForTestPromise = resolve;
121
+ });
117
122
  void this.#loaded();
118
123
  }
119
124
 
@@ -317,6 +322,7 @@ export class MainImpl {
317
322
  Root.Runtime.experiments.register(
318
323
  'evaluateExpressionsWithSourceMaps', 'Console: Resolve variable names in expressions using source maps',
319
324
  undefined);
325
+ Root.Runtime.experiments.register('instrumentationBreakpoints', 'Enable instrumentation breakpoints', true);
320
326
 
321
327
  // Dual-screen
322
328
  Root.Runtime.experiments.register(
@@ -388,6 +394,10 @@ export class MainImpl {
388
394
  Root.Runtime.experiments.register(
389
395
  Root.Runtime.ExperimentName.CSS_LAYERS, 'Tooling for CSS layers in the Styles pane');
390
396
 
397
+ // Enable color picking outside the browser window (using Eyedropper API)
398
+ Root.Runtime.experiments.register(
399
+ Root.Runtime.ExperimentName.EYEDROPPER_COLOR_PICKER, 'Enable color picking outside the browser window');
400
+
391
401
  Root.Runtime.experiments.enableExperimentsByDefault([
392
402
  'sourceOrderViewer',
393
403
  'hideIssuesFeature',
@@ -396,6 +406,7 @@ export class MainImpl {
396
406
  'reportingApiDebugging',
397
407
  Root.Runtime.ExperimentName.SYNC_SETTINGS,
398
408
  Root.Runtime.ExperimentName.CSS_LAYERS,
409
+ Root.Runtime.ExperimentName.EYEDROPPER_COLOR_PICKER,
399
410
  ]);
400
411
 
401
412
  Root.Runtime.experiments.cleanUpStaleExperiments();
@@ -545,6 +556,8 @@ export class MainImpl {
545
556
  self.Persistence.networkPersistenceManager =
546
557
  Persistence.NetworkPersistenceManager.NetworkPersistenceManager.instance(
547
558
  {forceNew: true, workspace: Workspace.Workspace.WorkspaceImpl.instance()});
559
+ // @ts-ignore layout test global
560
+ self.Host.Platform = Host.Platform;
548
561
 
549
562
  new ExecutionContextSelector(SDK.TargetManager.TargetManager.instance(), UI.Context.Context.instance());
550
563
  // @ts-ignore layout test global
@@ -618,6 +631,7 @@ export class MainImpl {
618
631
  }
619
632
  // Used for browser tests.
620
633
  Host.InspectorFrontendHost.InspectorFrontendHostInstance.readyForTest();
634
+ this.#resolveReadyForTestPromise();
621
635
  // Asynchronously run the extensions.
622
636
  window.setTimeout(this.#lateInitialization.bind(this), 100);
623
637
  MainImpl.timeEnd('Main._initializeTarget');
@@ -654,6 +668,10 @@ export class MainImpl {
654
668
  return this.#lateInitDonePromise;
655
669
  }
656
670
 
671
+ readyForTest(): Promise<void> {
672
+ return this.#readyForTestPromise;
673
+ }
674
+
657
675
  #registerMessageSinkListener(): void {
658
676
  Common.Console.Console.instance().addEventListener(Common.Console.Events.MessageAdded, messageAdded);
659
677
 
@@ -697,7 +715,7 @@ export class MainImpl {
697
715
  // @ts-ignore Used in ElementsTreeOutline
698
716
  eventCopy['original'] = event;
699
717
  const document = event.target && (event.target as HTMLElement).ownerDocument;
700
- const target = document ? document.deepActiveElement() : null;
718
+ const target = document ? Platform.DOMUtilities.deepActiveElement(document) : null;
701
719
  if (target) {
702
720
  target.dispatchEvent(eventCopy);
703
721
  }
@@ -783,7 +801,9 @@ export class SearchActionDelegate implements UI.ActionRegistration.ActionDelegat
783
801
  }
784
802
 
785
803
  handleAction(context: UI.Context.Context, actionId: string): boolean {
786
- let searchableView = UI.SearchableView.SearchableView.fromElement(document.deepActiveElement());
804
+ let searchableView = UI.SearchableView.SearchableView.fromElement(
805
+ Platform.DOMUtilities.deepActiveElement(document),
806
+ );
787
807
  if (!searchableView) {
788
808
  const currentPanel = (UI.InspectorView.InspectorView.instance().currentPanelDeprecated() as UI.Panel.Panel);
789
809
  if (currentPanel && currentPanel.searchableView) {