chrome-devtools-frontend 1.0.982087 → 1.0.995227

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 (489) 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 +39 -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 +4 -4
  10. package/front_end/core/host/InspectorFrontendHostAPI.ts +7 -6
  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 +193 -52
  31. package/front_end/core/i18n/locales/en-XL.json +193 -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/TracingModel.ts +0 -9
  130. package/front_end/devtools_compatibility.js +1 -0
  131. package/front_end/entrypoints/formatter_worker/CSSRuleParser.ts +1 -1
  132. package/front_end/entrypoints/lighthouse_worker/LighthouseWorkerService.ts +10 -3
  133. package/front_end/entrypoints/main/MainImpl.ts +22 -2
  134. package/front_end/generated/InspectorBackendCommands.js +79 -14
  135. package/front_end/generated/SupportedCSSProperties.js +21 -8
  136. package/front_end/generated/protocol-mapping.d.ts +4 -0
  137. package/front_end/generated/protocol-proxy-api.d.ts +5 -0
  138. package/front_end/generated/protocol.ts +158 -28
  139. package/front_end/legacy/legacy-defs.d.ts +0 -4
  140. package/front_end/legacy_test_runner/heap_profiler_test_runner/heap_profiler_test_runner.js +1 -1
  141. package/front_end/legacy_test_runner/test_runner/TestRunner.js +1 -0
  142. package/front_end/models/bindings/BreakpointManager.ts +68 -11
  143. package/front_end/models/bindings/CSSWorkspaceBinding.ts +9 -2
  144. package/front_end/models/bindings/CompilerScriptMapping.ts +3 -2
  145. package/front_end/models/bindings/ContentProviderBasedProject.ts +12 -9
  146. package/front_end/models/bindings/DebuggerLanguagePlugins.ts +10 -8
  147. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +8 -1
  148. package/front_end/models/bindings/DefaultScriptMapping.ts +8 -2
  149. package/front_end/models/bindings/IgnoreListManager.ts +5 -5
  150. package/front_end/models/bindings/ResourceUtils.ts +5 -4
  151. package/front_end/models/emulation/EmulatedDevices.ts +17 -0
  152. package/front_end/models/extensions/ExtensionAPI.ts +5 -2
  153. package/front_end/models/extensions/ExtensionPanel.ts +2 -1
  154. package/front_end/models/extensions/ExtensionServer.ts +13 -8
  155. package/front_end/models/issues_manager/AttributionReportingIssue.ts +0 -63
  156. package/front_end/models/issues_manager/CookieIssue.ts +7 -0
  157. package/front_end/models/issues_manager/DeprecationIssue.ts +326 -8
  158. package/front_end/models/issues_manager/IssuesManager.ts +4 -0
  159. package/front_end/models/issues_manager/descriptions/CookieAttributeValueExceedsMaxSize.md +5 -0
  160. package/front_end/models/issues_manager/descriptions/deprecation.md +1 -1
  161. package/front_end/models/logs/LogManager.ts +2 -1
  162. package/front_end/models/logs/NetworkLog.ts +14 -12
  163. package/front_end/models/persistence/Automapping.ts +17 -16
  164. package/front_end/models/persistence/EditFileSystemView.ts +5 -4
  165. package/front_end/models/persistence/FileSystemWorkspaceBinding.ts +24 -24
  166. package/front_end/models/persistence/IsolatedFileSystem.ts +2 -2
  167. package/front_end/models/persistence/IsolatedFileSystemManager.ts +7 -6
  168. package/front_end/models/persistence/NetworkPersistenceManager.ts +92 -54
  169. package/front_end/models/persistence/PersistenceImpl.ts +7 -7
  170. package/front_end/models/persistence/PlatformFileSystem.ts +7 -8
  171. package/front_end/models/persistence/WorkspaceSettingsTab.ts +3 -2
  172. package/front_end/models/text_utils/CodeMirrorUtils.ts +53 -0
  173. package/front_end/models/text_utils/text_utils.ts +2 -0
  174. package/front_end/models/timeline_model/TimelineModel.ts +31 -30
  175. package/front_end/models/timeline_model/TimelineProfileTree.ts +3 -2
  176. package/front_end/models/workspace/UISourceCode.ts +16 -14
  177. package/front_end/models/workspace/WorkspaceImpl.ts +40 -16
  178. package/front_end/panels/accessibility/AccessibilitySubPane.ts +2 -1
  179. package/front_end/panels/application/AppManifestView.ts +1 -1
  180. package/front_end/panels/application/ApplicationPanelCacheSection.ts +5 -4
  181. package/front_end/panels/application/ApplicationPanelSidebar.ts +34 -30
  182. package/front_end/panels/application/ApplicationPanelTreeElement.ts +5 -4
  183. package/front_end/panels/application/DatabaseQueryView.ts +2 -1
  184. package/front_end/panels/application/InterestGroupTreeElement.ts +3 -2
  185. package/front_end/panels/application/ReportingApiTreeElement.ts +3 -2
  186. package/front_end/panels/application/ResourcesPanel.ts +4 -3
  187. package/front_end/panels/application/ServiceWorkerCacheViews.ts +6 -1
  188. package/front_end/panels/application/TrustTokensTreeElement.ts +3 -2
  189. package/front_end/panels/application/components/BackForwardCacheStrings.ts +10 -1
  190. package/front_end/panels/application/components/BackForwardCacheView.ts +163 -13
  191. package/front_end/panels/application/components/backForwardCacheView.css +15 -4
  192. package/front_end/panels/browser_debugger/XHRBreakpointsSidebarPane.ts +19 -19
  193. package/front_end/panels/changes/ChangesView.ts +38 -0
  194. package/front_end/panels/console/ConsolePinPane.ts +7 -0
  195. package/front_end/panels/console/ConsolePrompt.ts +11 -1
  196. package/front_end/panels/console/ConsoleSidebar.ts +2 -1
  197. package/front_end/panels/console/ConsoleView.ts +57 -31
  198. package/front_end/panels/console/ConsoleViewMessage.ts +12 -9
  199. package/front_end/panels/console/ConsoleViewport.ts +2 -1
  200. package/front_end/panels/console/ErrorStackParser.ts +8 -4
  201. package/front_end/panels/console/consoleView.css +0 -1
  202. package/front_end/panels/coverage/CoverageListView.ts +1 -1
  203. package/front_end/panels/coverage/CoverageModel.ts +6 -6
  204. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +2 -1
  205. package/front_end/panels/css_overview/components/CSSOverviewStartView.ts +7 -6
  206. package/front_end/panels/css_overview/components/cssOverviewStartView.css +0 -48
  207. package/front_end/panels/css_overview/cssOverviewCompletedView.css +5 -0
  208. package/front_end/panels/css_overview/cssOverviewSidebarPanel.css +2 -0
  209. package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +2 -1
  210. package/front_end/panels/elements/ComputedStyleWidget.ts +2 -1
  211. package/front_end/panels/elements/ElementStatePaneWidget.ts +4 -6
  212. package/front_end/panels/elements/ElementsPanel.ts +16 -5
  213. package/front_end/panels/elements/ImagePreviewPopover.ts +6 -4
  214. package/front_end/panels/elements/PropertiesWidget.ts +4 -24
  215. package/front_end/panels/elements/StyleEditorWidget.ts +2 -1
  216. package/front_end/panels/elements/StylePropertiesSection.ts +1614 -0
  217. package/front_end/panels/elements/StylePropertyHighlighter.ts +2 -1
  218. package/front_end/panels/elements/StylePropertyTreeElement.ts +20 -1
  219. package/front_end/panels/elements/StylesSidebarPane.ts +97 -1675
  220. package/front_end/panels/elements/elements-legacy.ts +3 -3
  221. package/front_end/panels/elements/elements.ts +3 -0
  222. package/front_end/panels/elements/stylesSidebarPane.css +3 -1
  223. package/front_end/panels/input/InputTimeline.ts +1 -1
  224. package/front_end/panels/issues/AttributionReportingIssueDetailsView.ts +0 -50
  225. package/front_end/panels/issues/ComboBoxOfCheckBoxes.ts +14 -2
  226. package/front_end/panels/issues/IssueAggregator.ts +8 -0
  227. package/front_end/panels/issues/issues.ts +2 -0
  228. package/front_end/panels/lighthouse/LighthouseController.ts +5 -1
  229. package/front_end/panels/lighthouse/LighthousePanel.ts +3 -1
  230. package/front_end/panels/lighthouse/LighthouseTimespanView.ts +3 -3
  231. package/front_end/panels/network/BlockedURLsPane.ts +3 -2
  232. package/front_end/panels/network/NetworkConfigView.ts +6 -0
  233. package/front_end/panels/network/NetworkDataGridNode.ts +4 -0
  234. package/front_end/panels/network/NetworkLogView.ts +1 -1
  235. package/front_end/panels/network/RequestHTMLView.ts +1 -0
  236. package/front_end/panels/network/RequestHeadersView.ts +71 -10
  237. package/front_end/panels/network/networkLogView.css +9 -17
  238. package/front_end/panels/network/requestHeadersTree.css +16 -0
  239. package/front_end/panels/profiler/HeapSnapshotView.ts +2 -0
  240. package/front_end/panels/profiler/LiveHeapProfileView.ts +3 -1
  241. package/front_end/panels/profiler/ProfilesPanel.ts +2 -1
  242. package/front_end/panels/profiler/heapProfiler.css +15 -3
  243. package/front_end/panels/screencast/ScreencastView.ts +1 -1
  244. package/front_end/panels/search/SearchConfig.ts +2 -1
  245. package/front_end/panels/settings/KeybindsSettingsTab.ts +3 -2
  246. package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +1 -2
  247. package/front_end/panels/snippets/ScriptSnippetFileSystem.ts +4 -4
  248. package/front_end/panels/sources/BreakpointEditDialog.ts +0 -1
  249. package/front_end/panels/sources/CSSPlugin.ts +6 -6
  250. package/front_end/panels/sources/CoveragePlugin.ts +2 -1
  251. package/front_end/panels/sources/DebuggerPlugin.ts +4 -4
  252. package/front_end/panels/sources/EditingLocationHistoryManager.ts +4 -1
  253. package/front_end/panels/sources/NavigatorView.ts +28 -20
  254. package/front_end/panels/sources/SearchSourcesView.ts +2 -2
  255. package/front_end/panels/sources/SourcesNavigator.ts +4 -2
  256. package/front_end/panels/sources/SourcesPanel.ts +4 -4
  257. package/front_end/panels/sources/SourcesSearchScope.ts +12 -8
  258. package/front_end/panels/sources/SourcesView.ts +3 -1
  259. package/front_end/panels/sources/TabbedEditorContainer.ts +1 -1
  260. package/front_end/panels/sources/components/HeadersView.ts +1 -1
  261. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +9 -9
  262. package/front_end/panels/timeline/TimelinePanel.ts +1 -1
  263. package/front_end/panels/timeline/timelinePanel.css +1 -2
  264. package/front_end/panels/utils/utils.ts +97 -0
  265. package/front_end/third_party/codemirror.next/bundle.ts +27 -25
  266. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  267. package/front_end/third_party/codemirror.next/chunk/cpp.js +2 -2
  268. package/front_end/third_party/codemirror.next/chunk/java.js +2 -1
  269. package/front_end/third_party/codemirror.next/chunk/json.js +2 -2
  270. package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
  271. package/front_end/third_party/codemirror.next/chunk/markdown.js +2 -2
  272. package/front_end/third_party/codemirror.next/chunk/php.js +2 -1
  273. package/front_end/third_party/codemirror.next/chunk/python.js +2 -2
  274. package/front_end/third_party/codemirror.next/chunk/wast.js +2 -1
  275. package/front_end/third_party/codemirror.next/chunk/xml.js +2 -1
  276. package/front_end/third_party/codemirror.next/codemirror.next.d.ts +1884 -2281
  277. package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
  278. package/front_end/third_party/codemirror.next/package.json +21 -32
  279. package/front_end/third_party/lit-html/README.chromium +3 -3
  280. package/front_end/third_party/lit-html/package/README.md +1 -1
  281. package/front_end/third_party/lit-html/package/async-directive.d.ts +1 -1
  282. package/front_end/third_party/lit-html/package/async-directive.js.map +1 -1
  283. package/front_end/third_party/lit-html/package/development/async-directive.d.ts +1 -1
  284. package/front_end/third_party/lit-html/package/development/async-directive.js.map +1 -1
  285. package/front_end/third_party/lit-html/package/development/directives/choose.d.ts +32 -0
  286. package/front_end/third_party/lit-html/package/development/directives/choose.d.ts.map +1 -0
  287. package/front_end/third_party/lit-html/package/development/directives/choose.js +41 -0
  288. package/front_end/third_party/lit-html/package/development/directives/choose.js.map +1 -0
  289. package/front_end/third_party/lit-html/package/development/directives/join.d.ts +21 -0
  290. package/front_end/third_party/lit-html/package/development/directives/join.d.ts.map +1 -0
  291. package/front_end/third_party/lit-html/package/development/directives/join.js +19 -0
  292. package/front_end/third_party/lit-html/package/development/directives/join.js.map +1 -0
  293. package/front_end/third_party/lit-html/package/development/directives/keyed.d.ts +23 -0
  294. package/front_end/third_party/lit-html/package/development/directives/keyed.d.ts.map +1 -0
  295. package/front_end/third_party/lit-html/package/development/directives/keyed.js +39 -0
  296. package/front_end/third_party/lit-html/package/development/directives/keyed.js.map +1 -0
  297. package/front_end/third_party/lit-html/package/development/directives/map.d.ts +23 -0
  298. package/front_end/third_party/lit-html/package/development/directives/map.d.ts.map +1 -0
  299. package/front_end/third_party/lit-html/package/development/directives/map.js +30 -0
  300. package/front_end/third_party/lit-html/package/development/directives/map.js.map +1 -0
  301. package/front_end/third_party/lit-html/package/development/directives/range.d.ts +24 -0
  302. package/front_end/third_party/lit-html/package/development/directives/range.d.ts.map +1 -0
  303. package/front_end/third_party/lit-html/package/development/directives/range.js +13 -0
  304. package/front_end/third_party/lit-html/package/development/directives/range.js.map +1 -0
  305. package/front_end/third_party/lit-html/package/development/directives/template-content.d.ts +1 -1
  306. package/front_end/third_party/lit-html/package/development/directives/when.d.ts +26 -0
  307. package/front_end/third_party/lit-html/package/development/directives/when.d.ts.map +1 -0
  308. package/front_end/third_party/lit-html/package/development/directives/when.js +9 -0
  309. package/front_end/third_party/lit-html/package/development/directives/when.js.map +1 -0
  310. package/front_end/third_party/lit-html/package/development/lit-html.d.ts +182 -1
  311. package/front_end/third_party/lit-html/package/development/lit-html.d.ts.map +1 -1
  312. package/front_end/third_party/lit-html/package/development/lit-html.js +187 -4
  313. package/front_end/third_party/lit-html/package/development/lit-html.js.map +1 -1
  314. package/front_end/third_party/lit-html/package/development/static.d.ts.map +1 -1
  315. package/front_end/third_party/lit-html/package/development/static.js +7 -0
  316. package/front_end/third_party/lit-html/package/development/static.js.map +1 -1
  317. package/front_end/third_party/lit-html/package/directives/choose.d.ts +32 -0
  318. package/front_end/third_party/lit-html/package/directives/choose.d.ts.map +1 -0
  319. package/front_end/third_party/lit-html/package/directives/choose.js +7 -0
  320. package/front_end/third_party/lit-html/package/directives/choose.js.map +1 -0
  321. package/front_end/third_party/lit-html/package/directives/class-map.js +1 -1
  322. package/front_end/third_party/lit-html/package/directives/guard.js +1 -1
  323. package/front_end/third_party/lit-html/package/directives/join.d.ts +21 -0
  324. package/front_end/third_party/lit-html/package/directives/join.d.ts.map +1 -0
  325. package/front_end/third_party/lit-html/package/directives/join.js +7 -0
  326. package/front_end/third_party/lit-html/package/directives/join.js.map +1 -0
  327. package/front_end/third_party/lit-html/package/directives/keyed.d.ts +23 -0
  328. package/front_end/third_party/lit-html/package/directives/keyed.d.ts.map +1 -0
  329. package/front_end/third_party/lit-html/package/directives/keyed.js +7 -0
  330. package/front_end/third_party/lit-html/package/directives/keyed.js.map +1 -0
  331. package/front_end/third_party/lit-html/package/directives/map.d.ts +23 -0
  332. package/front_end/third_party/lit-html/package/directives/map.d.ts.map +1 -0
  333. package/front_end/third_party/lit-html/package/directives/map.js +7 -0
  334. package/front_end/third_party/lit-html/package/directives/map.js.map +1 -0
  335. package/front_end/third_party/lit-html/package/directives/range.d.ts +24 -0
  336. package/front_end/third_party/lit-html/package/directives/range.d.ts.map +1 -0
  337. package/front_end/third_party/lit-html/package/directives/range.js +7 -0
  338. package/front_end/third_party/lit-html/package/directives/range.js.map +1 -0
  339. package/front_end/third_party/lit-html/package/directives/ref.js +1 -1
  340. package/front_end/third_party/lit-html/package/directives/repeat.js +1 -1
  341. package/front_end/third_party/lit-html/package/directives/style-map.js +1 -1
  342. package/front_end/third_party/lit-html/package/directives/template-content.d.ts +1 -1
  343. package/front_end/third_party/lit-html/package/directives/template-content.js +1 -1
  344. package/front_end/third_party/lit-html/package/directives/unsafe-html.js +1 -1
  345. package/front_end/third_party/lit-html/package/directives/until.js +1 -1
  346. package/front_end/third_party/lit-html/package/directives/when.d.ts +26 -0
  347. package/front_end/third_party/lit-html/package/directives/when.d.ts.map +1 -0
  348. package/front_end/third_party/lit-html/package/directives/when.js +7 -0
  349. package/front_end/third_party/lit-html/package/directives/when.js.map +1 -0
  350. package/front_end/third_party/lit-html/package/lit-html.d.ts +182 -1
  351. package/front_end/third_party/lit-html/package/lit-html.d.ts.map +1 -1
  352. package/front_end/third_party/lit-html/package/lit-html.js +1 -1
  353. package/front_end/third_party/lit-html/package/lit-html.js.map +1 -1
  354. package/front_end/third_party/lit-html/package/package.json +25 -1
  355. package/front_end/third_party/lit-html/package/private-ssr-support.js +1 -1
  356. package/front_end/third_party/lit-html/package/static.d.ts.map +1 -1
  357. package/front_end/third_party/lit-html/package/static.js +1 -1
  358. package/front_end/third_party/lit-html/package/static.js.map +1 -1
  359. package/front_end/third_party/puppeteer/README.chromium +1 -1
  360. package/front_end/third_party/puppeteer/package/README.md +12 -13
  361. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.js +5 -1
  362. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api-docs-entry.js.map +1 -1
  363. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js +5 -1
  364. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
  365. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts +2 -2
  366. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js +2 -2
  367. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts +2 -2
  368. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  369. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js +13 -6
  370. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
  371. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js +5 -1
  372. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
  373. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts +1 -0
  374. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
  375. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js +4 -1
  376. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkEventManager.js.map +1 -1
  377. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +1 -0
  378. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
  379. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js +10 -0
  380. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
  381. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts +4 -2
  382. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
  383. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
  384. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
  385. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js +12 -1
  386. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js.map +1 -1
  387. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js +5 -1
  388. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/fetch.js.map +1 -1
  389. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts.map +1 -1
  390. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js +7 -6
  391. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js.map +1 -1
  392. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js +8 -1
  393. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
  394. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js +6 -2
  395. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
  396. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js +6 -2
  397. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
  398. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +1 -1
  399. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts +2 -2
  400. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +2 -2
  401. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +2 -2
  402. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
  403. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +13 -6
  404. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
  405. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts +1 -0
  406. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.d.ts.map +1 -1
  407. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js +4 -1
  408. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkEventManager.js.map +1 -1
  409. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +1 -0
  410. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
  411. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +10 -0
  412. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
  413. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +4 -2
  414. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
  415. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
  416. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
  417. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +12 -1
  418. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js.map +1 -1
  419. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +1 -1
  420. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js +2 -5
  421. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js.map +1 -1
  422. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +3 -0
  423. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
  424. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +1 -1
  425. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
  426. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js +1 -1
  427. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js.map +1 -1
  428. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +1 -1
  429. package/front_end/third_party/puppeteer/package/lib/types.d.ts +10 -6
  430. package/front_end/third_party/puppeteer/package/package.json +17 -17
  431. package/front_end/ui/components/code_highlighter/CodeHighlighter.ts +1 -1
  432. package/front_end/ui/components/data_grid/DataGrid.ts +8 -9
  433. package/front_end/ui/components/data_grid/DataGridController.ts +3 -1
  434. package/front_end/ui/components/docs/panel_introduction_steps/basic.html +25 -0
  435. package/front_end/ui/components/docs/panel_introduction_steps/basic.ts +25 -0
  436. package/front_end/ui/components/input/input.ts +2 -2
  437. package/front_end/ui/components/linkifier/LinkifierUtils.ts +3 -1
  438. package/front_end/ui/components/panel_introduction_steps/PanelIntroductionSteps.ts +44 -0
  439. package/front_end/ui/components/panel_introduction_steps/panelIntroductionSteps.css +56 -0
  440. package/front_end/ui/components/panel_introduction_steps/panel_introduction_steps.ts +5 -0
  441. package/front_end/ui/components/render_coordinator/RenderCoordinator.ts +3 -4
  442. package/front_end/ui/components/text_editor/TextEditor.ts +1 -1
  443. package/front_end/ui/components/text_editor/config.ts +1 -35
  444. package/front_end/ui/components/text_editor/javascript.ts +8 -8
  445. package/front_end/ui/components/tree_outline/TreeOutline.ts +10 -9
  446. package/front_end/ui/components/tree_outline/treeOutline.css +1 -1
  447. package/front_end/ui/legacy/ARIAUtils.ts +4 -2
  448. package/front_end/ui/legacy/ContextMenu.ts +14 -0
  449. package/front_end/ui/legacy/DockController.ts +2 -1
  450. package/front_end/ui/legacy/SettingsUI.ts +3 -3
  451. package/front_end/ui/legacy/SoftContextMenu.ts +43 -14
  452. package/front_end/ui/legacy/Toolbar.ts +16 -0
  453. package/front_end/ui/legacy/Treeoutline.ts +17 -7
  454. package/front_end/ui/legacy/UIUtils.ts +2 -2
  455. package/front_end/ui/legacy/View.ts +14 -8
  456. package/front_end/ui/legacy/ViewManager.ts +2 -1
  457. package/front_end/ui/legacy/ViewRegistration.ts +6 -0
  458. package/front_end/ui/legacy/Widget.ts +2 -1
  459. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +43 -11
  460. package/front_end/ui/legacy/components/data_grid/DataGrid.ts +98 -48
  461. package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +4 -3
  462. package/front_end/ui/legacy/components/data_grid/dataGrid.css +24 -28
  463. package/front_end/ui/legacy/components/inline_editor/CSSAngle.ts +5 -11
  464. package/front_end/ui/legacy/components/inline_editor/CSSLength.ts +8 -1
  465. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -7
  466. package/front_end/ui/legacy/components/perf_ui/LineLevelProfile.ts +11 -10
  467. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +7 -1
  468. package/front_end/ui/legacy/components/utils/ImagePreview.ts +12 -7
  469. package/front_end/ui/legacy/components/utils/Linkifier.ts +7 -5
  470. package/front_end/ui/legacy/reportView.css +1 -0
  471. package/front_end/ui/legacy/splitWidget.css +1 -1
  472. package/front_end/ui/legacy/tabbedPane.css +1 -0
  473. package/front_end/ui/legacy/themeColors.css +1 -1
  474. package/front_end/ui/legacy/toolbar.css +17 -1
  475. package/front_end/ui/legacy/utils/focus-changed.ts +3 -1
  476. package/inspector_overlay/.eslintrc.js +9 -0
  477. package/package.json +17 -17
  478. package/scripts/eslint_rules/lib/check_component_naming.js +4 -0
  479. package/scripts/eslint_rules/lib/es_modules_import.js +6 -0
  480. package/scripts/eslint_rules/lib/inject_checkbox_styles.js +121 -0
  481. package/scripts/eslint_rules/tests/es_modules_import_test.js +12 -0
  482. package/scripts/eslint_rules/tests/inject_checkbox_styles_test.js +127 -0
  483. package/front_end/models/issues_manager/descriptions/arAttributionEventSourceTriggerDataTooLarge.md +0 -4
  484. package/front_end/models/issues_manager/descriptions/arAttributionTriggerDataTooLarge.md +0 -4
  485. package/front_end/models/issues_manager/descriptions/arInvalidAttributionData.md +0 -8
  486. package/front_end/models/issues_manager/descriptions/arInvalidEventSourceTriggerData.md +0 -9
  487. package/front_end/models/issues_manager/descriptions/arInvalidTriggerDedupKey.md +0 -5
  488. package/front_end/models/issues_manager/descriptions/arInvalidTriggerPriority.md +0 -5
  489. package/front_end/models/issues_manager/descriptions/arMissingAttributionData.md +0 -7
@@ -10,7 +10,7 @@
10
10
 
11
11
  .gray-text {
12
12
  color: var(--color-text-secondary);
13
- margin: 0 0 15px 56px;
13
+ margin: 0 0 5px 56px;
14
14
  display: flex;
15
15
  flex-direction: row;
16
16
  align-items: center;
@@ -19,6 +19,11 @@
19
19
  overflow: hidden;
20
20
  }
21
21
 
22
+ .explanation-frames {
23
+ margin-left: 56px;
24
+ grid-column-start: span 2;
25
+ }
26
+
22
27
  .help-outline-icon {
23
28
  margin: 0 2px;
24
29
  }
@@ -33,7 +38,7 @@
33
38
  flex-shrink: 0;
34
39
  }
35
40
 
36
- .url {
41
+ .report-line {
37
42
  grid-column-start: span 2;
38
43
  display: flex;
39
44
  align-items: center;
@@ -41,15 +46,17 @@
41
46
  line-height: 28px;
42
47
  }
43
48
 
44
- .url-key {
49
+ .report-key {
45
50
  color: var(--color-text-secondary);
46
51
  min-width: auto;
47
52
  overflow-wrap: break-word;
53
+ align-self: start;
48
54
  }
49
55
 
50
- .url-value {
56
+ .report-value {
51
57
  padding: 0 6px;
52
58
  overflow-wrap: break-word;
59
+ line-height: 24px;
53
60
  }
54
61
 
55
62
  .link,
@@ -59,3 +66,7 @@
59
66
  cursor: pointer;
60
67
  padding: 2px 0; /* adjust focus ring size */
61
68
  }
69
+
70
+ .tree-outline li .selection {
71
+ margin-left: -5px;
72
+ }
@@ -152,11 +152,11 @@ export class XHRBreakpointsSidebarPane extends UI.Widget.VBox implements UI.Cont
152
152
  return true;
153
153
  }
154
154
 
155
- private setBreakpoint(url: string): void {
156
- if (this.#breakpoints.indexOf(url) !== -1) {
157
- this.#list.refreshItem(url);
155
+ private setBreakpoint(breakKeyword: string): void {
156
+ if (this.#breakpoints.indexOf(breakKeyword) !== -1) {
157
+ this.#list.refreshItem(breakKeyword);
158
158
  } else {
159
- this.#breakpoints.insertWithComparator(url, (a, b) => {
159
+ this.#breakpoints.insertWithComparator(breakKeyword, (a, b) => {
160
160
  if (a > b) {
161
161
  return 1;
162
162
  }
@@ -251,12 +251,12 @@ export class XHRBreakpointsSidebarPane extends UI.Widget.VBox implements UI.Cont
251
251
  return true;
252
252
  }
253
253
 
254
- private removeBreakpoint(url: string): void {
255
- const index = this.#breakpoints.indexOf(url);
254
+ private removeBreakpoint(breakKeyword: string): void {
255
+ const index = this.#breakpoints.indexOf(breakKeyword);
256
256
  if (index >= 0) {
257
257
  this.#breakpoints.remove(index);
258
258
  }
259
- this.#breakpointElements.delete(url);
259
+ this.#breakpointElements.delete(breakKeyword);
260
260
  this.update();
261
261
  }
262
262
 
@@ -274,12 +274,12 @@ export class XHRBreakpointsSidebarPane extends UI.Widget.VBox implements UI.Cont
274
274
  }
275
275
  }
276
276
 
277
- private contextMenu(url: string, event: Event): void {
277
+ private contextMenu(breakKeyword: string, event: Event): void {
278
278
  const contextMenu = new UI.ContextMenu.ContextMenu(event);
279
279
 
280
280
  function removeBreakpoint(this: XHRBreakpointsSidebarPane): void {
281
- SDK.DOMDebuggerModel.DOMDebuggerManager.instance().removeXHRBreakpoint(url);
282
- this.removeBreakpoint(url);
281
+ SDK.DOMDebuggerModel.DOMDebuggerManager.instance().removeXHRBreakpoint(breakKeyword);
282
+ this.removeBreakpoint(breakKeyword);
283
283
  }
284
284
 
285
285
  function removeAllBreakpoints(this: XHRBreakpointsSidebarPane): void {
@@ -297,21 +297,21 @@ export class XHRBreakpointsSidebarPane extends UI.Widget.VBox implements UI.Cont
297
297
  void contextMenu.show();
298
298
  }
299
299
 
300
- private checkboxClicked(url: string, checked: boolean): void {
300
+ private checkboxClicked(breakKeyword: string, checked: boolean): void {
301
301
  const hadFocus = this.hasFocus();
302
- SDK.DOMDebuggerModel.DOMDebuggerManager.instance().toggleXHRBreakpoint(url, !checked);
303
- this.#list.refreshItem(url);
304
- this.#list.selectItem(url);
302
+ SDK.DOMDebuggerModel.DOMDebuggerManager.instance().toggleXHRBreakpoint(breakKeyword, !checked);
303
+ this.#list.refreshItem(breakKeyword);
304
+ this.#list.selectItem(breakKeyword);
305
305
  if (hadFocus) {
306
306
  this.focus();
307
307
  }
308
308
  }
309
309
 
310
- private labelClicked(url: string): void {
311
- const element = this.#breakpointElements.get(url);
310
+ private labelClicked(breakKeyword: string): void {
311
+ const element = this.#breakpointElements.get(breakKeyword);
312
312
  const inputElement = document.createElement('span');
313
313
  inputElement.classList.add('breakpoint-condition');
314
- inputElement.textContent = url;
314
+ inputElement.textContent = breakKeyword;
315
315
  if (element) {
316
316
  this.#list.element.insertBefore(inputElement, element);
317
317
  element.classList.add('hidden');
@@ -320,8 +320,8 @@ export class XHRBreakpointsSidebarPane extends UI.Widget.VBox implements UI.Cont
320
320
  function finishEditing(this: XHRBreakpointsSidebarPane, accept: boolean, e: Element, text: string): void {
321
321
  this.removeListElement(inputElement);
322
322
  if (accept) {
323
- SDK.DOMDebuggerModel.DOMDebuggerManager.instance().removeXHRBreakpoint(url);
324
- this.removeBreakpoint(url);
323
+ SDK.DOMDebuggerModel.DOMDebuggerManager.instance().removeXHRBreakpoint(breakKeyword);
324
+ this.removeBreakpoint(breakKeyword);
325
325
  let enabled = true;
326
326
  if (element) {
327
327
  const breakpointEntryElement = containerToBreakpointEntry.get(element);
@@ -3,8 +3,10 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import * as Common from '../../core/common/common.js';
6
+ import * as Host from '../../core/host/host.js';
6
7
  import * as i18n from '../../core/i18n/i18n.js';
7
8
  import * as Root from '../../core/root/root.js';
9
+ import {formatCSSChangesFromDiff} from '../../panels/utils/utils.js';
8
10
  import * as Diff from '../../third_party/diff/diff.js';
9
11
  import * as DiffView from '../../ui/components/diff_view/diff_view.js';
10
12
  import * as UI from '../../ui/legacy/legacy.js';
@@ -22,6 +24,10 @@ const UIStrings = {
22
24
  */
23
25
  revertAllChangesToCurrentFile: 'Revert all changes to current file',
24
26
  /**
27
+ *@description Screen reader/tooltip label for a button in the Changes tool that copies all changes from the currently open file.
28
+ */
29
+ copyAllChangesFromCurrentFile: 'Copy all changes from current file',
30
+ /**
25
31
  *@description Text in Changes View of the Changes tab
26
32
  */
27
33
  noChanges: 'No changes',
@@ -41,6 +47,10 @@ const UIStrings = {
41
47
  * lines were removed (not translatable).
42
48
  */
43
49
  sDeletions: '{n, plural, =1 {# deletion (-)} other {# deletions (-)}}',
50
+ /**
51
+ *@description Text for a button in the Changes tool that copies all the changes from the currently open file.
52
+ */
53
+ copy: 'Copy',
44
54
  };
45
55
  const str_ = i18n.i18n.registerUIStrings('panels/changes/ChangesView.ts', UIStrings);
46
56
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
@@ -66,6 +76,8 @@ export class ChangesView extends UI.Widget.VBox {
66
76
  private readonly toolbar: UI.Toolbar.Toolbar;
67
77
  private readonly diffStats: UI.Toolbar.ToolbarText;
68
78
  private readonly diffView: DiffView.DiffView.DiffView;
79
+ private readonly copyButton: UI.Toolbar.ToolbarButton;
80
+ private readonly copyButtonSeparator: UI.Toolbar.ToolbarSeparator;
69
81
 
70
82
  private constructor() {
71
83
  super(true);
@@ -98,6 +110,11 @@ export class ChangesView extends UI.Widget.VBox {
98
110
  this.toolbar.appendToolbarItem(revertButton);
99
111
  this.diffStats = new UI.Toolbar.ToolbarText('');
100
112
  this.toolbar.appendToolbarItem(this.diffStats);
113
+
114
+ this.copyButton = new UI.Toolbar.ToolbarButton(
115
+ i18nString(UIStrings.copyAllChangesFromCurrentFile), 'largeicon-copy', UIStrings.copy);
116
+ this.copyButton.addEventListener(UI.Toolbar.ToolbarButton.Events.Click, this.copyChanges.bind(this));
117
+ this.copyButtonSeparator = new UI.Toolbar.ToolbarSeparator();
101
118
  this.toolbar.setEnabled(false);
102
119
 
103
120
  this.hideDiff(i18nString(UIStrings.noChanges));
@@ -115,6 +132,13 @@ export class ChangesView extends UI.Widget.VBox {
115
132
 
116
133
  private selectedUISourceCodeChanged(): void {
117
134
  this.revealUISourceCode(this.changesSidebar.selectedUISourceCode());
135
+ if (this.selectedUISourceCode?.contentType() === Common.ResourceType.resourceTypes.Stylesheet) {
136
+ this.toolbar.appendToolbarItem(this.copyButtonSeparator);
137
+ this.toolbar.appendToolbarItem(this.copyButton);
138
+ } else {
139
+ this.toolbar.removeToolbarItem(this.copyButtonSeparator);
140
+ this.toolbar.removeToolbarItem(this.copyButton);
141
+ }
118
142
  }
119
143
 
120
144
  private revert(): void {
@@ -125,6 +149,20 @@ export class ChangesView extends UI.Widget.VBox {
125
149
  void this.workspaceDiff.revertToOriginal(uiSourceCode);
126
150
  }
127
151
 
152
+ private async copyChanges(): Promise<void> {
153
+ const uiSourceCode = this.selectedUISourceCode;
154
+ if (!uiSourceCode) {
155
+ return;
156
+ }
157
+ const diffResponse = await this.workspaceDiff.requestDiff(uiSourceCode, {shouldFormatDiff: true});
158
+ // Diff array with real diff will contain at least 2 lines.
159
+ if (!diffResponse || diffResponse?.diff.length < 2) {
160
+ return;
161
+ }
162
+ const changes = await formatCSSChangesFromDiff(diffResponse.diff);
163
+ Host.InspectorFrontendHost.InspectorFrontendHostInstance.copyText(changes);
164
+ }
165
+
128
166
  private click(event: MouseEvent): void {
129
167
  if (!this.selectedUISourceCode) {
130
168
  return;
@@ -245,6 +245,13 @@ export class ConsolePin {
245
245
  return true;
246
246
  },
247
247
  },
248
+ {
249
+ key: 'Enter',
250
+ run: (): boolean => {
251
+ this.focusOut();
252
+ return true;
253
+ },
254
+ },
248
255
  {
249
256
  key: 'Mod-Enter',
250
257
  run: (): boolean => {
@@ -255,12 +255,22 @@ export class ConsolePrompt extends Common.ObjectWrapper.eventMixin<EventTypes, t
255
255
  return false;
256
256
  }
257
257
 
258
- const cursorPos = dir < 0 ? newText.search(/\n|$/) : newText.length;
258
+ // Change the prompt input to the history content, and scroll to the end to
259
+ // bring the full content (potentially multiple lines) into view.
260
+ const cursorPos = newText.length;
259
261
  this.editor.dispatch({
260
262
  changes: {from: 0, to: this.editor.state.doc.length, insert: newText},
261
263
  selection: CodeMirror.EditorSelection.cursor(cursorPos),
262
264
  scrollIntoView: true,
263
265
  });
266
+ if (dir < 0) {
267
+ // If we are going back in history, put the cursor to the end of the first line
268
+ // so that the user can quickly go further back in history.
269
+ const firstLineBreak = newText.search(/\n|$/);
270
+ this.editor.dispatch({
271
+ selection: CodeMirror.EditorSelection.cursor(firstLineBreak),
272
+ });
273
+ }
264
274
  return true;
265
275
  }
266
276
 
@@ -4,6 +4,7 @@
4
4
 
5
5
  import * as Common from '../../core/common/common.js';
6
6
  import * as i18n from '../../core/i18n/i18n.js';
7
+ import type * as Platform from '../../core/platform/platform.js';
7
8
  import * as SDK from '../../core/sdk/sdk.js';
8
9
  import * as Protocol from '../../generated/protocol.js';
9
10
  import type * as TextUtils from '../../models/text_utils/text_utils.js';
@@ -259,7 +260,7 @@ export class FilterTreeElement extends ConsoleSidebarTreeElement {
259
260
  this.updateCounter();
260
261
  }
261
262
 
262
- private childElement(url?: string): URLGroupTreeElement {
263
+ private childElement(url?: Platform.DevToolsPath.UrlString): URLGroupTreeElement {
263
264
  const urlValue = url || null;
264
265
  let child = this.urlTreeElements.get(urlValue);
265
266
  if (child) {
@@ -136,10 +136,22 @@ const UIStrings = {
136
136
  *@description Alternative title text of a setting in Console View of the Console panel
137
137
  */
138
138
  selectedContextOnly: 'Selected context only',
139
+ /**
140
+ *@description Description of a setting that controls whether XMLHttpRequests are logged in the console.
141
+ */
142
+ logXMLHttpRequests: 'Log XMLHttpRequests',
139
143
  /**
140
144
  *@description Tooltip text that appears on the setting when hovering over it in Console View of the Console panel
141
145
  */
142
146
  eagerlyEvaluateTextInThePrompt: 'Eagerly evaluate text in the prompt',
147
+ /**
148
+ *@description Description of a setting that controls whether text typed in the console should be autocompleted from commands executed in the local console history.
149
+ */
150
+ autocompleteFromHistory: 'Autocomplete from history',
151
+ /**
152
+ *@description Description of a setting that controls whether user activation is triggered by evaluation'.
153
+ */
154
+ treatEvaluationAsUserActivation: 'Treat evaluation as user activation',
143
155
  /**
144
156
  * @description Text in Console View of the Console panel, indicating that a number of console
145
157
  * messages have been hidden.
@@ -271,8 +283,6 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
271
283
  private readonly progressToolbarItem: UI.Toolbar.ToolbarItem;
272
284
  private readonly groupSimilarSetting: Common.Settings.Setting<boolean>;
273
285
  private readonly showCorsErrorsSetting: Common.Settings.Setting<boolean>;
274
- private readonly preserveLogCheckbox: UI.Toolbar.ToolbarSettingCheckbox;
275
- private readonly hideNetworkMessagesCheckbox: UI.Toolbar.ToolbarSettingCheckbox;
276
286
  private readonly timestampsSetting: Common.Settings.Setting<unknown>;
277
287
  private readonly consoleHistoryAutocompleteSetting: Common.Settings.Setting<boolean>;
278
288
  readonly pinPane: ConsolePinPane;
@@ -376,15 +386,12 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
376
386
  this.progressToolbarItem = new UI.Toolbar.ToolbarItem(document.createElement('div'));
377
387
  this.groupSimilarSetting = Common.Settings.Settings.instance().moduleSetting('consoleGroupSimilar');
378
388
  this.groupSimilarSetting.addChangeListener(() => this.updateMessageList());
379
- const groupSimilarToggle = new UI.Toolbar.ToolbarSettingCheckbox(
380
- this.groupSimilarSetting, i18nString(UIStrings.groupSimilarMessagesInConsole));
389
+
381
390
  this.showCorsErrorsSetting = Common.Settings.Settings.instance().moduleSetting('consoleShowsCorsErrors');
382
391
  this.showCorsErrorsSetting.addChangeListener(() => {
383
392
  Host.userMetrics.showCorsErrorsSettingChanged(this.showCorsErrorsSetting.get());
384
393
  this.updateMessageList();
385
394
  });
386
- const showCorsErrorsToggle = new UI.Toolbar.ToolbarSettingCheckbox(
387
- this.showCorsErrorsSetting, i18nString(UIStrings.showCorsErrorsInConsole));
388
395
 
389
396
  const toolbar = new UI.Toolbar.Toolbar('console-main-toolbar', this.consoleToolbarContainer);
390
397
  toolbar.makeWrappable(true);
@@ -422,15 +429,6 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
422
429
  rightToolbar.appendToolbarItem(this.filterStatusText);
423
430
  rightToolbar.appendToolbarItem(this.showSettingsPaneButton);
424
431
 
425
- this.preserveLogCheckbox = new UI.Toolbar.ToolbarSettingCheckbox(
426
- Common.Settings.Settings.instance().moduleSetting('preserveConsoleLog'),
427
- i18nString(UIStrings.doNotClearLogOnPageReload), i18nString(UIStrings.preserveLog));
428
- this.hideNetworkMessagesCheckbox = new UI.Toolbar.ToolbarSettingCheckbox(
429
- this.filter.hideNetworkMessagesSetting, this.filter.hideNetworkMessagesSetting.title(),
430
- i18nString(UIStrings.hideNetwork));
431
- const filterByExecutionContextCheckbox = new UI.Toolbar.ToolbarSettingCheckbox(
432
- this.filter.filterByExecutionContextSetting, i18nString(UIStrings.onlyShowMessagesFromTheCurrentContext),
433
- i18nString(UIStrings.selectedContextOnly));
434
432
  const monitoringXHREnabledSetting = Common.Settings.Settings.instance().moduleSetting('monitoringXHREnabled');
435
433
  this.timestampsSetting = Common.Settings.Settings.instance().moduleSetting('consoleTimestampsEnabled');
436
434
  this.consoleHistoryAutocompleteSetting =
@@ -442,26 +440,36 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
442
440
 
443
441
  UI.ARIAUtils.setAccessibleName(settingsPane.element, i18nString(UIStrings.consoleSettings));
444
442
  UI.ARIAUtils.markAsGroup(settingsPane.element);
443
+
445
444
  const settingsToolbarLeft = new UI.Toolbar.Toolbar('', settingsPane.element);
446
445
  settingsToolbarLeft.makeVertical();
447
- settingsToolbarLeft.appendToolbarItem(this.hideNetworkMessagesCheckbox);
448
- settingsToolbarLeft.appendToolbarItem(this.preserveLogCheckbox);
449
- settingsToolbarLeft.appendToolbarItem(filterByExecutionContextCheckbox);
450
- settingsToolbarLeft.appendToolbarItem(groupSimilarToggle);
451
- settingsToolbarLeft.appendToolbarItem(showCorsErrorsToggle);
446
+
447
+ ConsoleView.appendSettingsCheckboxToToolbar(
448
+ settingsToolbarLeft, this.filter.hideNetworkMessagesSetting, this.filter.hideNetworkMessagesSetting.title(),
449
+ i18nString(UIStrings.hideNetwork));
450
+ ConsoleView.appendSettingsCheckboxToToolbar(
451
+ settingsToolbarLeft, 'preserveConsoleLog', i18nString(UIStrings.doNotClearLogOnPageReload),
452
+ i18nString(UIStrings.preserveLog));
453
+ ConsoleView.appendSettingsCheckboxToToolbar(
454
+ settingsToolbarLeft, this.filter.filterByExecutionContextSetting,
455
+ i18nString(UIStrings.onlyShowMessagesFromTheCurrentContext), i18nString(UIStrings.selectedContextOnly));
456
+ ConsoleView.appendSettingsCheckboxToToolbar(
457
+ settingsToolbarLeft, this.groupSimilarSetting, i18nString(UIStrings.groupSimilarMessagesInConsole));
458
+ ConsoleView.appendSettingsCheckboxToToolbar(
459
+ settingsToolbarLeft, this.showCorsErrorsSetting, i18nString(UIStrings.showCorsErrorsInConsole));
452
460
 
453
461
  const settingsToolbarRight = new UI.Toolbar.Toolbar('', settingsPane.element);
454
462
  settingsToolbarRight.makeVertical();
455
- settingsToolbarRight.appendToolbarItem(new UI.Toolbar.ToolbarSettingCheckbox(monitoringXHREnabledSetting));
456
- const eagerEvalCheckbox = new UI.Toolbar.ToolbarSettingCheckbox(
457
- Common.Settings.Settings.instance().moduleSetting('consoleEagerEval'),
458
- i18nString(UIStrings.eagerlyEvaluateTextInThePrompt));
459
- settingsToolbarRight.appendToolbarItem(eagerEvalCheckbox);
460
- settingsToolbarRight.appendToolbarItem(
461
- new UI.Toolbar.ToolbarSettingCheckbox(this.consoleHistoryAutocompleteSetting));
462
- const userGestureCheckbox = new UI.Toolbar.ToolbarSettingCheckbox(
463
- Common.Settings.Settings.instance().moduleSetting('consoleUserActivationEval'));
464
- settingsToolbarRight.appendToolbarItem(userGestureCheckbox);
463
+
464
+ ConsoleView.appendSettingsCheckboxToToolbar(
465
+ settingsToolbarRight, monitoringXHREnabledSetting, i18nString(UIStrings.logXMLHttpRequests));
466
+ ConsoleView.appendSettingsCheckboxToToolbar(
467
+ settingsToolbarRight, 'consoleEagerEval', i18nString(UIStrings.eagerlyEvaluateTextInThePrompt));
468
+ ConsoleView.appendSettingsCheckboxToToolbar(
469
+ settingsToolbarRight, this.consoleHistoryAutocompleteSetting, i18nString(UIStrings.autocompleteFromHistory));
470
+ ConsoleView.appendSettingsCheckboxToToolbar(
471
+ settingsToolbarRight, 'consoleUserActivationEval', i18nString(UIStrings.treatEvaluationAsUserActivation));
472
+
465
473
  if (!this.showSettingsPaneSetting.get()) {
466
474
  settingsPane.element.classList.add('hidden');
467
475
  }
@@ -569,6 +577,20 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
569
577
  IssuesManager.IssuesManager.Events.IssuesCountUpdated,
570
578
  () => this.issueToolbarThrottle.schedule(async () => this.updateIssuesToolbarItem()), this);
571
579
  }
580
+ static appendSettingsCheckboxToToolbar(
581
+ toolbar: UI.Toolbar.Toolbar, settingOrSetingName: Common.Settings.Setting<boolean>|string, title: string,
582
+ alternateTitle?: string): UI.Toolbar.ToolbarSettingCheckbox {
583
+ let setting: Common.Settings.Setting<boolean>;
584
+ if (typeof settingOrSetingName === 'string') {
585
+ setting = Common.Settings.Settings.instance().moduleSetting(settingOrSetingName);
586
+ } else {
587
+ setting = settingOrSetingName;
588
+ }
589
+
590
+ const checkbox = new UI.Toolbar.ToolbarSettingCheckbox(setting, title, alternateTitle);
591
+ toolbar.appendToolbarItem(checkbox);
592
+ return checkbox;
593
+ }
572
594
 
573
595
  static instance(): ConsoleView {
574
596
  if (!consoleViewInstance) {
@@ -759,6 +781,10 @@ export class ConsoleView extends UI.Widget.VBox implements UI.SearchableView.Sea
759
781
  this.scheduledRefreshPromiseForTest = this.viewportThrottler.schedule(this.invalidateViewport.bind(this));
760
782
  }
761
783
 
784
+ getScheduledRefreshPromiseForTest(): Promise<void>|undefined {
785
+ return this.scheduledRefreshPromiseForTest;
786
+ }
787
+
762
788
  private scheduleViewportRefreshForTest(_muted: boolean): void {
763
789
  // This functions is sniffed in tests.
764
790
  }
@@ -1694,7 +1720,7 @@ export class ConsoleViewFilter {
1694
1720
  }
1695
1721
  }
1696
1722
 
1697
- addMessageURLFilter(url: string): void {
1723
+ addMessageURLFilter(url: Platform.DevToolsPath.UrlString): void {
1698
1724
  if (!url) {
1699
1725
  return;
1700
1726
  }
@@ -456,7 +456,8 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
456
456
  protected buildMessageAnchor(): HTMLElement|null {
457
457
  const linkify = (message: SDK.ConsoleModel.ConsoleMessage): HTMLElement|null => {
458
458
  if (message.scriptId) {
459
- return this.linkifyScriptId(message.scriptId, message.url || '', message.line, message.column);
459
+ return this.linkifyScriptId(
460
+ message.scriptId, message.url || Platform.DevToolsPath.EmptyUrlString, message.line, message.column);
460
461
  }
461
462
  if (message.stackTrace && message.stackTrace.callFrames.length) {
462
463
  return this.linkifyStackTraceTopFrame(message.stackTrace);
@@ -542,7 +543,8 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
542
543
  return toggleElement;
543
544
  }
544
545
 
545
- private linkifyLocation(url: string, lineNumber: number, columnNumber: number): HTMLElement|null {
546
+ private linkifyLocation(url: Platform.DevToolsPath.UrlString, lineNumber: number, columnNumber: number): HTMLElement
547
+ |null {
546
548
  const runtimeModel = this.message.runtimeModel();
547
549
  if (!runtimeModel) {
548
550
  return null;
@@ -559,8 +561,9 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
559
561
  return this.linkifier.linkifyStackTraceTopFrame(runtimeModel.target(), stackTrace);
560
562
  }
561
563
 
562
- private linkifyScriptId(scriptId: Protocol.Runtime.ScriptId, url: string, lineNumber: number, columnNumber: number):
563
- HTMLElement|null {
564
+ private linkifyScriptId(
565
+ scriptId: Protocol.Runtime.ScriptId, url: Platform.DevToolsPath.UrlString, lineNumber: number,
566
+ columnNumber: number): HTMLElement|null {
564
567
  const runtimeModel = this.message.runtimeModel();
565
568
  if (!runtimeModel) {
566
569
  return null;
@@ -1382,8 +1385,8 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
1382
1385
  }
1383
1386
 
1384
1387
  private async getInlineFrames(
1385
- debuggerModel: SDK.DebuggerModel.DebuggerModel, url: string, lineNumber: number|undefined,
1386
- columnNumber: number|undefined): Promise<{frames: Chrome.DevTools.FunctionInfo[]}> {
1388
+ debuggerModel: SDK.DebuggerModel.DebuggerModel, url: Platform.DevToolsPath.UrlString,
1389
+ lineNumber: number|undefined, columnNumber: number|undefined): Promise<{frames: Chrome.DevTools.FunctionInfo[]}> {
1387
1390
  const debuggerWorkspaceBinding = Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance();
1388
1391
  if (debuggerWorkspaceBinding.pluginManager) {
1389
1392
  const projects = Workspace.Workspace.WorkspaceImpl.instance().projects();
@@ -1404,9 +1407,9 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
1404
1407
  // Expand inline stack frames in the formatted error in the stackTrace element, inserting new elements before the
1405
1408
  // insertBefore anchor.
1406
1409
  private async expandInlineStackFrames(
1407
- debuggerModel: SDK.DebuggerModel.DebuggerModel, prefix: string, suffix: string, url: string,
1408
- lineNumber: number|undefined, columnNumber: number|undefined, stackTrace: HTMLElement,
1409
- insertBefore: HTMLElement): Promise<boolean> {
1410
+ debuggerModel: SDK.DebuggerModel.DebuggerModel, prefix: string, suffix: string,
1411
+ url: Platform.DevToolsPath.UrlString, lineNumber: number|undefined, columnNumber: number|undefined,
1412
+ stackTrace: HTMLElement, insertBefore: HTMLElement): Promise<boolean> {
1410
1413
  const {frames} = await this.getInlineFrames(debuggerModel, url, lineNumber, columnNumber);
1411
1414
  if (!frames.length) {
1412
1415
  return false;
@@ -240,7 +240,8 @@ export class ConsoleViewport {
240
240
  private updateFocusedItem(focusLastChild?: boolean): void {
241
241
  const selectedElement = this.renderedElementAt(this.virtualSelectedIndex);
242
242
  const changed = this.lastSelectedElement !== selectedElement;
243
- const containerHasFocus = this.contentElementInternal === this.element.ownerDocument.deepActiveElement();
243
+ const containerHasFocus =
244
+ this.contentElementInternal === Platform.DOMUtilities.deepActiveElement(this.element.ownerDocument);
244
245
  if (this.lastSelectedElement && changed) {
245
246
  this.lastSelectedElement.classList.remove('console-selected');
246
247
  }
@@ -3,13 +3,16 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import * as Common from '../../core/common/common.js';
6
+ import type * as Platform from '../../core/platform/platform.js';
6
7
  import type * as SDK from '../../core/sdk/sdk.js';
7
8
  import type * as Protocol from '../../generated/protocol.js';
8
9
 
10
+ // TODO(crbug.com/1253323): Casts to UrlString will be removed from this file when migration to branded types is complete.
11
+
9
12
  export interface ParsedErrorFrame {
10
13
  line: string;
11
14
  link?: {
12
- url: string,
15
+ url: Platform.DevToolsPath.UrlString,
13
16
  prefix: string,
14
17
  suffix: string,
15
18
  lineNumber?: number,
@@ -101,13 +104,14 @@ export function parseSourcePositionsFromErrorStack(
101
104
  return linkInfos;
102
105
  }
103
106
 
104
- function parseOrScriptMatch(debuggerModel: SDK.DebuggerModel.DebuggerModel, url: string|null): string|null {
107
+ function parseOrScriptMatch(debuggerModel: SDK.DebuggerModel.DebuggerModel, url: Platform.DevToolsPath.UrlString|null):
108
+ Platform.DevToolsPath.UrlString|null {
105
109
  if (!url) {
106
110
  return null;
107
111
  }
108
112
  const parsedURL = Common.ParsedURL.ParsedURL.fromString(url);
109
113
  if (parsedURL) {
110
- return parsedURL.url;
114
+ return parsedURL.url as Platform.DevToolsPath.UrlString;
111
115
  }
112
116
  if (debuggerModel.scriptsForSourceURL(url).length) {
113
117
  return url;
@@ -115,7 +119,7 @@ function parseOrScriptMatch(debuggerModel: SDK.DebuggerModel.DebuggerModel, url:
115
119
  // nodejs stack traces contain (absolute) file paths, but v8 reports them as file: urls.
116
120
  const fileUrl = new URL(url, 'file://');
117
121
  if (debuggerModel.scriptsForSourceURL(fileUrl.href).length) {
118
- return fileUrl.href;
122
+ return fileUrl.href as Platform.DevToolsPath.UrlString;
119
123
  }
120
124
  return null;
121
125
  }
@@ -86,7 +86,6 @@
86
86
  overflow-y: auto;
87
87
  word-wrap: break-word;
88
88
  user-select: text;
89
- transform: translateZ(0);
90
89
  overflow-anchor: none; /* Chrome-specific scroll-anchoring opt-out */
91
90
  background-color: var(--color-background);
92
91
  }
@@ -315,7 +315,7 @@ function getPercentageFormatter(): Intl.NumberFormat {
315
315
  export class GridNode extends DataGrid.SortableDataGrid.SortableDataGridNode<GridNode> {
316
316
  coverageInfo: URLCoverageInfo;
317
317
  private lastUsedSize!: number|undefined;
318
- private url: string;
318
+ private url: Platform.DevToolsPath.UrlString;
319
319
  private maxSize: number;
320
320
  private highlightRegExp: RegExp|null;
321
321
 
@@ -44,7 +44,7 @@ export class CoverageModel extends SDK.SDKModel.SDKModel<EventTypes> {
44
44
  private cpuProfilerModel: SDK.CPUProfilerModel.CPUProfilerModel|null;
45
45
  private cssModel: SDK.CSSModel.CSSModel|null;
46
46
  private debuggerModel: SDK.DebuggerModel.DebuggerModel|null;
47
- private coverageByURL: Map<string, URLCoverageInfo>;
47
+ private coverageByURL: Map<Platform.DevToolsPath.UrlString, URLCoverageInfo>;
48
48
  private coverageByContentProvider: Map<TextUtils.ContentProvider.ContentProvider, CoverageInfo>;
49
49
  private coverageUpdateTimes: Set<number>;
50
50
  private suspensionState: SuspensionState;
@@ -216,7 +216,7 @@ export class CoverageModel extends SDK.SDKModel.SDKModel<EventTypes> {
216
216
  return Array.from(this.coverageByURL.values());
217
217
  }
218
218
 
219
- getCoverageForUrl(url: string): URLCoverageInfo|null {
219
+ getCoverageForUrl(url: Platform.DevToolsPath.UrlString): URLCoverageInfo|null {
220
220
  return this.coverageByURL.get(url) || null;
221
221
  }
222
222
 
@@ -482,7 +482,7 @@ export class CoverageModel extends SDK.SDKModel.SDKModel<EventTypes> {
482
482
  SDK.SDKModel.SDKModel.register(CoverageModel, {capabilities: SDK.Target.Capability.None, autostart: false});
483
483
 
484
484
  export interface EntryForExport {
485
- url: string;
485
+ url: Platform.DevToolsPath.UrlString;
486
486
  ranges: {start: number, end: number}[];
487
487
  text: string|null;
488
488
  }
@@ -495,14 +495,14 @@ function locationCompare(a: string, b: string): number {
495
495
  }
496
496
 
497
497
  export class URLCoverageInfo extends Common.ObjectWrapper.ObjectWrapper<URLCoverageInfo.EventTypes> {
498
- private readonly urlInternal: string;
498
+ private readonly urlInternal: Platform.DevToolsPath.UrlString;
499
499
  private coverageInfoByLocation: Map<string, CoverageInfo>;
500
500
  private sizeInternal: number;
501
501
  private usedSizeInternal: number;
502
502
  private typeInternal!: CoverageType;
503
503
  private isContentScriptInternal: boolean;
504
504
 
505
- constructor(url: string) {
505
+ constructor(url: Platform.DevToolsPath.UrlString) {
506
506
  super();
507
507
 
508
508
  this.urlInternal = url;
@@ -512,7 +512,7 @@ export class URLCoverageInfo extends Common.ObjectWrapper.ObjectWrapper<URLCover
512
512
  this.isContentScriptInternal = false;
513
513
  }
514
514
 
515
- url(): string {
515
+ url(): Platform.DevToolsPath.UrlString {
516
516
  return this.urlInternal;
517
517
  }
518
518
 
@@ -257,6 +257,7 @@ export class CSSOverviewCompletedView extends UI.Panel.PanelWithSidebar {
257
257
  this.#mainContainer.setSidebarMinimized(true);
258
258
 
259
259
  this.#sideBar = new CSSOverviewSidebarPanel();
260
+ this.#sideBar.setMinimumSize(100, 25);
260
261
  this.splitWidget().setSidebarWidget(this.#sideBar);
261
262
  this.splitWidget().setMainWidget(this.#mainContainer);
262
263
 
@@ -788,7 +789,7 @@ export class CSSOverviewCompletedView extends UI.Panel.PanelWithSidebar {
788
789
  #colorsToFragment(section: string, color: string): UI.Fragment.Fragment|undefined {
789
790
  const blockFragment = UI.Fragment.Fragment.build`<li>
790
791
  <button data-type="color" data-color="${color}" data-section="${section}" class="block" $="color"></button>
791
- <div class="block-title">${color}</div>
792
+ <div class="block-title color-text">${color}</div>
792
793
  </li>`;
793
794
 
794
795
  const block = (blockFragment.$('color') as HTMLElement);