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
@@ -29,6 +29,7 @@
29
29
 
30
30
  import * as Common from '../../core/common/common.js';
31
31
  import * as i18n from '../../core/i18n/i18n.js';
32
+ import * as Platform from '../../core/platform/platform.js';
32
33
  import * as SDK from '../../core/sdk/sdk.js';
33
34
  // eslint-disable-next-line rulesdir/es_modules_import
34
35
  import objectValueStyles from '../../ui/legacy/components/object_ui/objectValue.css.js';
@@ -235,7 +236,7 @@ export class ProfilesPanel extends UI.Panel.PanelWithSidebar implements DataDisp
235
236
  if (!this.toggleRecordAction.enabled()) {
236
237
  return true;
237
238
  }
238
- const toggleButton = this.element.ownerDocument.deepActiveElement();
239
+ const toggleButton = Platform.DOMUtilities.deepActiveElement(this.element.ownerDocument);
239
240
  const type = this.selectedProfileType;
240
241
  if (!type) {
241
242
  return true;
@@ -77,11 +77,9 @@
77
77
  }
78
78
 
79
79
  .heap-snapshot-view .heap-snapshot-view-resizer {
80
- background-image: var(--image-file-toolbarResizerVertical);
81
80
  background-color: var(--color-background-elevation-1);
82
81
  border-bottom: 1px solid var(--color-details-hairline);
83
- background-repeat: no-repeat;
84
- background-position: right center, center;
82
+ display: flex;
85
83
  flex: 0 0 21px;
86
84
  }
87
85
 
@@ -89,6 +87,20 @@
89
87
  margin-right: 6px;
90
88
  }
91
89
 
90
+ .heap-snapshot-view .heap-snapshot-view-resizer .title {
91
+ flex: 0 1 auto;
92
+ overflow: hidden;
93
+ white-space: nowrap;
94
+ }
95
+
96
+ .heap-snapshot-view .heap-snapshot-view-resizer .verticalResizerIcon {
97
+ background-image: var(--image-file-toolbarResizerVertical);
98
+ background-repeat: no-repeat;
99
+ background-position: center;
100
+ flex: 0 0 28px;
101
+ margin-left: auto;
102
+ }
103
+
92
104
  .heap-snapshot-view .heap-snapshot-view-resizer .title > span {
93
105
  display: inline-block;
94
106
  padding-top: 3px;
@@ -718,7 +718,7 @@ export class ScreencastView extends UI.Widget.VBox implements SDK.OverlayModel.H
718
718
  // encodeURI ensures an encoded URL is always passed to the backend
719
719
  // This allows the input field to support both encoded and decoded URLs
720
720
  if (this.resourceTreeModel) {
721
- void this.resourceTreeModel.navigate(encodeURI(decodeURI(url)));
721
+ void this.resourceTreeModel.navigate(encodeURI(decodeURI(url)) as Platform.DevToolsPath.UrlString);
722
722
  }
723
723
  this.canvasElement.focus();
724
724
  }
@@ -94,7 +94,8 @@ export class SearchConfig implements Workspace.Workspace.ProjectSearchConfig {
94
94
  }
95
95
  }
96
96
 
97
- filePathMatchesFileQuery(filePath: string): boolean {
97
+ filePathMatchesFileQuery(filePath: Platform.DevToolsPath.RawPathString|
98
+ Platform.DevToolsPath.EncodedPathString|Platform.DevToolsPath.UrlString): boolean {
98
99
  if (!this.fileRegexQueries) {
99
100
  return true;
100
101
  }
@@ -5,6 +5,7 @@
5
5
  import * as Common from '../../core/common/common.js';
6
6
  import * as Host from '../../core/host/host.js';
7
7
  import * as i18n from '../../core/i18n/i18n.js';
8
+ import * as Platform from '../../core/platform/platform.js';
8
9
  import * as Root from '../../core/root/root.js';
9
10
  import * as UI from '../../ui/legacy/legacy.js';
10
11
 
@@ -263,7 +264,7 @@ export class KeybindsSettingsTab extends UI.Widget.VBox implements UI.ListContro
263
264
  }
264
265
 
265
266
  onEscapeKeyPressed(event: Event): void {
266
- const deepActiveElement = document.deepActiveElement();
267
+ const deepActiveElement = Platform.DOMUtilities.deepActiveElement(document);
267
268
  if (this.editingRow && deepActiveElement && deepActiveElement.nodeName === 'INPUT') {
268
269
  this.editingRow.onEscapeKeyPressed(event);
269
270
  }
@@ -545,7 +546,7 @@ export class ShortcutListItem {
545
546
  }
546
547
 
547
548
  onEscapeKeyPressed(event: Event): void {
548
- const activeElement = document.deepActiveElement();
549
+ const activeElement = Platform.DOMUtilities.deepActiveElement(document);
549
550
  for (const [shortcut, shortcutInput] of this.shortcutInputs.entries()) {
550
551
  if (activeElement === shortcutInput) {
551
552
  this.onShortcutInputKeyDown(
@@ -87,8 +87,7 @@
87
87
  }
88
88
 
89
89
  .info-link {
90
- display: flex;
91
- align-items: center;
90
+ height: 14px;
92
91
  margin-left: 5px;
93
92
  }
94
93
 
@@ -32,7 +32,7 @@ function escapeSnippetName(name: Platform.DevToolsPath.RawPathString): Platform.
32
32
  return Common.ParsedURL.ParsedURL.rawPathToEncodedPathString(name);
33
33
  }
34
34
 
35
- function unescapeSnippetName(name: Platform.DevToolsPath.EncodedPathString): string {
35
+ function unescapeSnippetName(name: Platform.DevToolsPath.EncodedPathString): Platform.DevToolsPath.RawPathString {
36
36
  return Common.ParsedURL.ParsedURL.encodedPathToRawPathString(name);
37
37
  }
38
38
 
@@ -40,7 +40,7 @@ export class SnippetFileSystem extends Persistence.PlatformFileSystem.PlatformFi
40
40
  private readonly lastSnippetIdentifierSetting: Common.Settings.Setting<number>;
41
41
  private readonly snippetsSetting: Common.Settings.Setting<Snippet[]>;
42
42
  constructor() {
43
- super('snippet://', 'snippets');
43
+ super('snippet://' as Platform.DevToolsPath.UrlString, 'snippets');
44
44
  this.lastSnippetIdentifierSetting =
45
45
  Common.Settings.Settings.instance().createSetting('scriptSnippets_lastIdentifier', 0);
46
46
  this.snippetsSetting = Common.Settings.Settings.instance().createSetting('scriptSnippets', []);
@@ -123,7 +123,7 @@ export class SnippetFileSystem extends Persistence.PlatformFileSystem.PlatformFi
123
123
  return matchedSnippets.map(snippet => `snippet:///${escapeSnippetName(snippet.name)}`);
124
124
  }
125
125
 
126
- mimeFromPath(_path: string): string {
126
+ mimeFromPath(_path: Platform.DevToolsPath.UrlString): string {
127
127
  return 'text/javascript';
128
128
  }
129
129
 
@@ -170,7 +170,7 @@ export async function evaluateScriptSnippet(uiSourceCode: Workspace.UISourceCode
170
170
  generatePreview: true,
171
171
  replMode: true,
172
172
  } as SDK.RuntimeModel.EvaluationOptions,
173
- false, true);
173
+ true, true);
174
174
 
175
175
  if ('exceptionDetails' in result && result.exceptionDetails) {
176
176
  SDK.ConsoleModel.ConsoleModel.instance().addMessage(SDK.ConsoleModel.ConsoleMessage.fromException(
@@ -75,7 +75,6 @@ export class BreakpointEditDialog extends UI.Widget.Widget {
75
75
  TextEditor.Config.autocompletion,
76
76
  CodeMirror.EditorView.lineWrapping,
77
77
  TextEditor.Config.showCompletionHint,
78
- TextEditor.JavaScript.completion(),
79
78
  TextEditor.JavaScript.argumentHints(),
80
79
  ];
81
80
 
@@ -83,7 +83,7 @@ async function specificCssCompletion(
83
83
  return {
84
84
  from: node.name === 'ValueName' ? node.from : cx.pos,
85
85
  options: propertyValues.map(value => ({type: 'constant', label: value})),
86
- span: /^[\w\P{ASCII}\-]+$/u,
86
+ validFor: /^[\w\P{ASCII}\-]+$/u,
87
87
  };
88
88
  }
89
89
  return null;
@@ -111,12 +111,12 @@ function findColorsAndCurves(
111
111
  tree.iterate({
112
112
  from,
113
113
  to,
114
- enter: (type, from, to, node) => {
114
+ enter: node => {
115
115
  let content;
116
- if (type.name === 'ValueName' || type.name === 'ColorLiteral') {
117
- content = getToken(from, to);
118
- } else if (type.name === 'Callee' && /^(?:(?:rgb|hsl)a?|cubic-bezier)$/.test(getToken(from, to))) {
119
- content = state.sliceDoc(from, (node().parent as CodeMirror.SyntaxNode).to);
116
+ if (node.name === 'ValueName' || node.name === 'ColorLiteral') {
117
+ content = getToken(node.from, node.to);
118
+ } else if (node.name === 'Callee' && /^(?:(?:rgb|hsl)a?|cubic-bezier)$/.test(getToken(node.from, node.to))) {
119
+ content = state.sliceDoc(node.from, (node.node.parent as CodeMirror.SyntaxNode).to);
120
120
  }
121
121
  if (content) {
122
122
  const parsedColor = Common.Color.Color.parse(content);
@@ -3,6 +3,7 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import * as i18n from '../../core/i18n/i18n.js';
6
+ import type * as Platform from '../../core/platform/platform.js';
6
7
  import * as SDK from '../../core/sdk/sdk.js';
7
8
  import * as Formatter from '../../models/formatter/formatter.js';
8
9
  import type * as Workspace from '../../models/workspace/workspace.js';
@@ -190,7 +191,7 @@ const coverageState = CodeMirror.StateField.define<CodeMirror.RangeSet<CodeMirro
190
191
  },
191
192
  });
192
193
 
193
- function coverageGutter(url: string): CodeMirror.Extension {
194
+ function coverageGutter(url: Platform.DevToolsPath.UrlString): CodeMirror.Extension {
194
195
  return CodeMirror.gutter({
195
196
  markers: (view): CodeMirror.RangeSet<CodeMirror.GutterMarker> => view.state.field(coverageState),
196
197
 
@@ -962,11 +962,11 @@ export class DebuggerPlugin extends Plugin {
962
962
  tree.iterate({
963
963
  from: fromPos,
964
964
  to: toPos,
965
- enter(type, from, to): void {
966
- const varName = type.name === 'VariableName' && editorState.sliceDoc(from, to);
965
+ enter(node): void {
966
+ const varName = node.name === 'VariableName' && editorState.sliceDoc(node.from, node.to);
967
967
  if (varName && variableMap.has(varName)) {
968
- if (from > curLine.to) {
969
- curLine = editorState.doc.lineAt(from);
968
+ if (node.from > curLine.to) {
969
+ curLine = editorState.doc.lineAt(node.from);
970
970
  }
971
971
  let names = namesPerLine.get(curLine.number - 1);
972
972
  if (!names) {
@@ -28,6 +28,7 @@
28
28
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
29
  */
30
30
 
31
+ import type * as Platform from '../../core/platform/platform.js';
31
32
  import * as Workspace from '../../models/workspace/workspace.js';
32
33
  import type * as CodeMirror from '../../third_party/codemirror.next/codemirror.next.js';
33
34
  import * as SourceFrame from '../../ui/legacy/components/source_frame/source_frame.js';
@@ -92,7 +93,9 @@ export class EditingLocationHistoryManager {
92
93
  }
93
94
 
94
95
  private reveal(entry: EditingLocationHistoryEntry): void {
95
- const uiSourceCode = Workspace.Workspace.WorkspaceImpl.instance().uiSourceCode(entry.projectId, entry.url);
96
+ // TODO(crbug.com/1253323): Cast to UrlString will be removed when migration to branded types is complete.
97
+ const uiSourceCode = Workspace.Workspace.WorkspaceImpl.instance().uiSourceCode(
98
+ entry.projectId, entry.url as Platform.DevToolsPath.UrlString);
96
99
  if (uiSourceCode) {
97
100
  this.revealing = true;
98
101
  this.sourcesView.showSourceLocation(uiSourceCode, entry.position, false, true);
@@ -226,10 +226,11 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
226
226
  return order;
227
227
  }
228
228
 
229
- static appendSearchItem(contextMenu: UI.ContextMenu.ContextMenu, path?: string): void {
229
+ static appendSearchItem(contextMenu: UI.ContextMenu.ContextMenu, path?: Platform.DevToolsPath.EncodedPathString):
230
+ void {
230
231
  let searchLabel = i18nString(UIStrings.searchInFolder);
231
232
  if (!path || !path.trim()) {
232
- path = '*';
233
+ path = '*' as Platform.DevToolsPath.EncodedPathString;
233
234
  searchLabel = i18nString(UIStrings.searchInAllFiles);
234
235
  }
235
236
  contextMenu.viewSection().appendItem(searchLabel, () => {
@@ -289,16 +290,16 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
289
290
  // Update folder titles.
290
291
  const pathTokens =
291
292
  Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.relativePath(binding.fileSystem);
292
- let folderPath = '';
293
+ let folderPath = '' as Platform.DevToolsPath.EncodedPathString;
293
294
  for (let i = 0; i < pathTokens.length - 1; ++i) {
294
- folderPath += pathTokens[i];
295
+ folderPath = Common.ParsedURL.ParsedURL.concatenate(folderPath, pathTokens[i]);
295
296
  const folderId =
296
297
  this.folderNodeId(binding.fileSystem.project(), null, null, binding.fileSystem.origin(), folderPath);
297
298
  const folderNode = this.subfolderNodes.get(folderId);
298
299
  if (folderNode) {
299
300
  folderNode.updateTitle();
300
301
  }
301
- folderPath += '/';
302
+ folderPath = Common.ParsedURL.ParsedURL.concatenate(folderPath, '/');
302
303
  }
303
304
 
304
305
  // Update fileSystem root title.
@@ -537,7 +538,8 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
537
538
 
538
539
  private folderNodeId(
539
540
  project: Workspace.Workspace.Project, target: SDK.Target.Target|null,
540
- frame: SDK.ResourceTreeModel.ResourceTreeFrame|null, projectOrigin: string, path: string): string {
541
+ frame: SDK.ResourceTreeModel.ResourceTreeFrame|null, projectOrigin: string,
542
+ path: Platform.DevToolsPath.EncodedPathString): string {
541
543
  const targetId = target ? target.id() : '';
542
544
  const projectId = project.type() === Workspace.Workspace.projectTypes.FileSystem ? project.id() : '';
543
545
  const frameId = this.groupByFrame && frame ? frame.id : '';
@@ -556,7 +558,7 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
556
558
  return this.domainNode(uiSourceCode, project, target, frame, projectOrigin);
557
559
  }
558
560
 
559
- const folderPath = path.join('/');
561
+ const folderPath = Common.ParsedURL.ParsedURL.join(path, '/');
560
562
  const folderId = this.folderNodeId(project, target, frame, projectOrigin, folderPath);
561
563
  let folderNode = this.subfolderNodes.get(folderId);
562
564
  if (folderNode) {
@@ -741,7 +743,8 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
741
743
 
742
744
  const folderId = this.folderNodeId(
743
745
  project, target, frame, uiSourceCode.origin(),
744
- currentNode instanceof NavigatorFolderTreeNode && currentNode.folderPath || '');
746
+ currentNode instanceof NavigatorFolderTreeNode && currentNode.folderPath ||
747
+ '' as Platform.DevToolsPath.EncodedPathString);
745
748
  this.subfolderNodes.delete(folderId);
746
749
  parentNode.removeChild(currentNode);
747
750
  currentNode = (parentNode as NavigatorUISourceCodeTreeNode | null);
@@ -777,11 +780,12 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
777
780
  }
778
781
 
779
782
  private handleContextMenuCreate(
780
- project: Workspace.Workspace.Project, path: string, uiSourceCode?: Workspace.UISourceCode.UISourceCode): void {
783
+ project: Workspace.Workspace.Project, path: Platform.DevToolsPath.EncodedPathString,
784
+ uiSourceCode?: Workspace.UISourceCode.UISourceCode): void {
781
785
  if (uiSourceCode) {
782
786
  const relativePath = Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.relativePath(uiSourceCode);
783
787
  relativePath.pop();
784
- path = relativePath.join('/');
788
+ path = Common.ParsedURL.ParsedURL.join(relativePath, '/');
785
789
  }
786
790
  void this.create(project, path, uiSourceCode);
787
791
  }
@@ -790,7 +794,8 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
790
794
  this.rename(node, false);
791
795
  }
792
796
 
793
- private async handleContextMenuExclude(project: Workspace.Workspace.Project, path: string): Promise<void> {
797
+ private async handleContextMenuExclude(
798
+ project: Workspace.Workspace.Project, path: Platform.DevToolsPath.EncodedPathString): Promise<void> {
794
799
  const shouldExclude = await UI.UIUtils.ConfirmDialog.show(i18nString(UIStrings.areYouSureYouWantToExcludeThis));
795
800
  if (shouldExclude) {
796
801
  UI.UIUtils.startBatchUpdate();
@@ -816,7 +821,9 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
816
821
  if (project.type() === Workspace.Workspace.projectTypes.FileSystem) {
817
822
  contextMenu.editSection().appendItem(i18nString(UIStrings.rename), this.handleContextMenuRename.bind(this, node));
818
823
  contextMenu.editSection().appendItem(
819
- i18nString(UIStrings.makeACopy), this.handleContextMenuCreate.bind(this, project, '', uiSourceCode));
824
+ i18nString(UIStrings.makeACopy),
825
+ this.handleContextMenuCreate.bind(
826
+ this, project, '' as Platform.DevToolsPath.EncodedPathString, uiSourceCode));
820
827
  contextMenu.editSection().appendItem(
821
828
  i18nString(UIStrings.delete), this.handleContextMenuDelete.bind(this, uiSourceCode));
822
829
  }
@@ -910,13 +917,13 @@ export class NavigatorView extends UI.Widget.VBox implements SDK.TargetManager.O
910
917
  }
911
918
 
912
919
  async create(
913
- project: Workspace.Workspace.Project, path: string,
920
+ project: Workspace.Workspace.Project, path: Platform.DevToolsPath.EncodedPathString,
914
921
  uiSourceCodeToCopy?: Workspace.UISourceCode.UISourceCode): Promise<void> {
915
922
  let content = '';
916
923
  if (uiSourceCodeToCopy) {
917
924
  content = (await uiSourceCodeToCopy.requestContent()).content || '';
918
925
  }
919
- const uiSourceCode = await project.createFile(path as Platform.DevToolsPath.EncodedPathString, null, content);
926
+ const uiSourceCode = await project.createFile(path, null, content);
920
927
  if (!uiSourceCode) {
921
928
  return;
922
929
  }
@@ -1462,7 +1469,7 @@ export class NavigatorFolderTreeNode extends NavigatorTreeNode {
1462
1469
  treeElement!: NavigatorFolderTreeElement|null;
1463
1470
  constructor(
1464
1471
  navigatorView: NavigatorView, project: Workspace.Workspace.Project|null, id: string, type: string,
1465
- folderPath: string, title: string) {
1472
+ folderPath: Platform.DevToolsPath.EncodedPathString, title: string) {
1466
1473
  super(navigatorView, id, type);
1467
1474
  this.project = project;
1468
1475
  this.folderPath = folderPath as Platform.DevToolsPath.EncodedPathString;
@@ -1482,9 +1489,10 @@ export class NavigatorFolderTreeNode extends NavigatorTreeNode {
1482
1489
  if (!this.treeElement || !this.project || this.project.type() !== Workspace.Workspace.projectTypes.FileSystem) {
1483
1490
  return;
1484
1491
  }
1485
- const absoluteFileSystemPath =
1486
- Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.fileSystemPath(this.project.id()) + '/' +
1487
- this.folderPath;
1492
+ const absoluteFileSystemPath = Common.ParsedURL.ParsedURL.concatenate(
1493
+ Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.fileSystemPath(
1494
+ this.project.id() as Platform.DevToolsPath.UrlString),
1495
+ '/', this.folderPath);
1488
1496
  const hasMappedFiles =
1489
1497
  Persistence.Persistence.PersistenceImpl.instance().filePathHasBindings(absoluteFileSystemPath);
1490
1498
  this.treeElement.listItemElement.classList.toggle('has-mapped-files', hasMappedFiles);
@@ -1642,8 +1650,8 @@ export class NavigatorGroupTreeNode extends NavigatorTreeNode {
1642
1650
  if (!this.treeElement || this.project.type() !== Workspace.Workspace.projectTypes.FileSystem) {
1643
1651
  return;
1644
1652
  }
1645
- const fileSystemPath =
1646
- Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.fileSystemPath(this.project.id());
1653
+ const fileSystemPath = Persistence.FileSystemWorkspaceBinding.FileSystemWorkspaceBinding.fileSystemPath(
1654
+ this.project.id() as Platform.DevToolsPath.UrlString);
1647
1655
  const wasActive = this.treeElement.listItemElement.classList.contains('has-mapped-files');
1648
1656
  const isActive = Persistence.Persistence.PersistenceImpl.instance().filePathHasBindings(fileSystemPath);
1649
1657
  if (wasActive === isActive) {
@@ -22,14 +22,14 @@ export class SearchSourcesView extends Search.SearchView.SearchView {
22
22
  }
23
23
 
24
24
  static async openSearch(query: string, searchImmediately?: boolean): Promise<UI.Widget.Widget> {
25
- const view = (UI.ViewManager.ViewManager.instance().view('sources.search-sources-tab') as UI.View.View);
25
+ const view = UI.ViewManager.ViewManager.instance().view('sources.search-sources-tab');
26
26
  // Deliberately use target location name so that it could be changed
27
27
  // based on the setting later.
28
28
  // TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration)
29
29
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
30
  const location = (await UI.ViewManager.ViewManager.instance().resolveLocation('drawer-view') as any);
31
31
  location.appendView(view);
32
- await UI.ViewManager.ViewManager.instance().revealView((view as UI.View.View));
32
+ await UI.ViewManager.ViewManager.instance().revealView(view);
33
33
  const widget = (await view.widget() as Search.SearchView.SearchView);
34
34
  void widget.toggle(query, Boolean(searchImmediately));
35
35
  return widget;
@@ -339,7 +339,8 @@ export class SnippetsNavigatorView extends NavigatorView {
339
339
  const newButton = new UI.Toolbar.ToolbarButton(
340
340
  i18nString(UIStrings.newSnippet), 'largeicon-add', i18nString(UIStrings.newSnippet));
341
341
  newButton.addEventListener(UI.Toolbar.ToolbarButton.Events.Click, _event => {
342
- void this.create(Snippets.ScriptSnippetFileSystem.findSnippetsProject(), '');
342
+ void this.create(
343
+ Snippets.ScriptSnippetFileSystem.findSnippetsProject(), '' as Platform.DevToolsPath.EncodedPathString);
343
344
  });
344
345
  toolbar.appendToolbarItem(newButton);
345
346
  this.contentElement.insertBefore(toolbar.element, this.contentElement.firstChild);
@@ -360,7 +361,8 @@ export class SnippetsNavigatorView extends NavigatorView {
360
361
  const contextMenu = new UI.ContextMenu.ContextMenu(event);
361
362
  contextMenu.headerSection().appendItem(
362
363
  i18nString(UIStrings.createNewSnippet),
363
- () => this.create(Snippets.ScriptSnippetFileSystem.findSnippetsProject(), ''));
364
+ () => this.create(
365
+ Snippets.ScriptSnippetFileSystem.findSnippetsProject(), '' as Platform.DevToolsPath.EncodedPathString));
364
366
  void contextMenu.show();
365
367
  }
366
368
 
@@ -276,7 +276,7 @@ export class SourcesPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
276
276
  this.editorView.setMainWidget(this.sourcesViewInternal);
277
277
 
278
278
  this.threadsSidebarPane = null;
279
- this.watchSidebarPane = (UI.ViewManager.ViewManager.instance().view('sources.watch') as UI.View.View);
279
+ this.watchSidebarPane = UI.ViewManager.ViewManager.instance().view('sources.watch');
280
280
  this.callstackPane = CallStackSidebarPane.instance();
281
281
 
282
282
  Common.Settings.Settings.instance()
@@ -354,7 +354,7 @@ export class SourcesPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
354
354
 
355
355
  private showThreadsIfNeeded(): void {
356
356
  if (ThreadsSidebarPane.shouldBeShown() && !this.threadsSidebarPane) {
357
- this.threadsSidebarPane = (UI.ViewManager.ViewManager.instance().view('sources.threads') as UI.View.View);
357
+ this.threadsSidebarPane = UI.ViewManager.ViewManager.instance().view('sources.threads');
358
358
  if (this.sidebarPaneStack && this.threadsSidebarPane) {
359
359
  void this.sidebarPaneStack.showView(
360
360
  this.threadsSidebarPane, this.splitWidget.isVertical() ? this.watchSidebarPane : this.callstackPane);
@@ -1058,8 +1058,8 @@ export class SourcesPanel extends UI.Panel.Panel implements UI.ContextMenu.Provi
1058
1058
  void this.sidebarPaneStack.showView(this.threadsSidebarPane);
1059
1059
  }
1060
1060
 
1061
- const jsBreakpoints = (UI.ViewManager.ViewManager.instance().view('sources.jsBreakpoints') as UI.View.View);
1062
- const scopeChainView = (UI.ViewManager.ViewManager.instance().view('sources.scopeChain') as UI.View.View);
1061
+ const jsBreakpoints = UI.ViewManager.ViewManager.instance().view('sources.jsBreakpoints');
1062
+ const scopeChainView = UI.ViewManager.ViewManager.instance().view('sources.scopeChain');
1063
1063
 
1064
1064
  if (this.tabbedLocationHeader) {
1065
1065
  this.splitWidget.uninstallResizer(this.tabbedLocationHeader);
@@ -28,6 +28,8 @@
28
28
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
29
  */
30
30
 
31
+ // TODO(crbug.com/1253323): Casts to Branded Types will be removed from this file when migration to branded types is complete.
32
+
31
33
  import * as Common from '../../core/common/common.js';
32
34
  import * as Platform from '../../core/platform/platform.js';
33
35
  import * as Bindings from '../../models/bindings/bindings.js';
@@ -126,12 +128,12 @@ export class SourcesSearchScope implements Search.SearchConfig.SearchScope {
126
128
  for (const project of this.projects()) {
127
129
  const weight = project.uiSourceCodes().length;
128
130
  const findMatchingFilesInProjectProgress = findMatchingFilesProgress.createSubProgress(weight);
129
- const filesMathingFileQuery = this.projectFilesMatchingFileQuery(project, searchConfig);
131
+ const filesMatchingFileQuery = this.projectFilesMatchingFileQuery(project, searchConfig);
130
132
  const promise =
131
133
  project
132
- .findFilesMatchingSearchRequest(searchConfig, filesMathingFileQuery, findMatchingFilesInProjectProgress)
134
+ .findFilesMatchingSearchRequest(searchConfig, filesMatchingFileQuery, findMatchingFilesInProjectProgress)
133
135
  .then(this.processMatchingFilesForProject.bind(
134
- this, this.searchId, project, searchConfig, filesMathingFileQuery));
136
+ this, this.searchId, project, searchConfig, filesMatchingFileQuery));
135
137
  promises.push(promise);
136
138
  }
137
139
 
@@ -141,7 +143,7 @@ export class SourcesSearchScope implements Search.SearchConfig.SearchScope {
141
143
 
142
144
  private projectFilesMatchingFileQuery(
143
145
  project: Workspace.Workspace.Project, searchConfig: Workspace.Workspace.ProjectSearchConfig,
144
- dirtyOnly?: boolean): string[] {
146
+ dirtyOnly?: boolean): Platform.DevToolsPath.UrlString[] {
145
147
  const result = [];
146
148
  const uiSourceCodes = project.uiSourceCodes();
147
149
  for (let i = 0; i < uiSourceCodes.length; ++i) {
@@ -156,7 +158,9 @@ export class SourcesSearchScope implements Search.SearchConfig.SearchScope {
156
158
  if (dirtyOnly && !uiSourceCode.isDirty()) {
157
159
  continue;
158
160
  }
159
- if (searchConfig.filePathMatchesFileQuery(uiSourceCode.fullDisplayName())) {
161
+ if (searchConfig.filePathMatchesFileQuery(
162
+ uiSourceCode.fullDisplayName() as Platform.DevToolsPath.UrlString |
163
+ Platform.DevToolsPath.EncodedPathString)) {
160
164
  result.push(uiSourceCode.url());
161
165
  }
162
166
  }
@@ -166,7 +170,7 @@ export class SourcesSearchScope implements Search.SearchConfig.SearchScope {
166
170
 
167
171
  private processMatchingFilesForProject(
168
172
  searchId: number, project: Workspace.Workspace.Project, searchConfig: Workspace.Workspace.ProjectSearchConfig,
169
- filesMathingFileQuery: string[], files: string[]): void {
173
+ filesMatchingFileQuery: string[], files: string[]): void {
170
174
  if (searchId !== this.searchId && this.searchFinishedCallback) {
171
175
  this.searchFinishedCallback(false);
172
176
  return;
@@ -174,13 +178,13 @@ export class SourcesSearchScope implements Search.SearchConfig.SearchScope {
174
178
 
175
179
  files.sort(Platform.StringUtilities.naturalOrderComparator);
176
180
  files = Platform.ArrayUtilities.intersectOrdered(
177
- files, filesMathingFileQuery, Platform.StringUtilities.naturalOrderComparator);
181
+ files, filesMatchingFileQuery, Platform.StringUtilities.naturalOrderComparator);
178
182
  const dirtyFiles = this.projectFilesMatchingFileQuery(project, searchConfig, true);
179
183
  files = Platform.ArrayUtilities.mergeOrdered(files, dirtyFiles, Platform.StringUtilities.naturalOrderComparator);
180
184
 
181
185
  const uiSourceCodes = [];
182
186
  for (const file of files) {
183
- const uiSourceCode = project.uiSourceCodeForURL(file);
187
+ const uiSourceCode = project.uiSourceCodeForURL(file as Platform.DevToolsPath.UrlString);
184
188
  if (!uiSourceCode) {
185
189
  continue;
186
190
  }
@@ -702,7 +702,9 @@ export class SwitchFileActionDelegate implements UI.ActionRegistration.ActionDel
702
702
  }
703
703
  candidates.sort(Platform.StringUtilities.naturalOrderComparator);
704
704
  const index = Platform.NumberUtilities.mod(candidates.indexOf(name) + 1, candidates.length);
705
- const fullURL = (url ? url + '/' : '') + candidates[index];
705
+ const fullURL = Common.ParsedURL.ParsedURL.concatenate(
706
+ (url ? Common.ParsedURL.ParsedURL.concatenate(url, '/') : '' as Platform.DevToolsPath.UrlString),
707
+ candidates[index]);
706
708
  const nextUISourceCode = currentUISourceCode.project().uiSourceCodeForURL(fullURL);
707
709
  return nextUISourceCode !== currentUISourceCode ? nextUISourceCode : null;
708
710
  }
@@ -238,7 +238,7 @@ export class TabbedEditorContainer extends Common.ObjectWrapper.ObjectWrapper<Ev
238
238
  this.scrollTimer = window.setTimeout(() => this.history.save(this.previouslyViewedFilesSetting), 100);
239
239
  if (this.currentFileInternal) {
240
240
  const {editor} = this.currentView.textEditor;
241
- const topBlock = editor.blockAtHeight(editor.scrollDOM.getBoundingClientRect().top);
241
+ const topBlock = editor.lineBlockAtHeight(editor.scrollDOM.getBoundingClientRect().top - editor.documentTop);
242
242
  const topLine = editor.state.doc.lineAt(topBlock.from).number - 1;
243
243
  this.history.updateScrollLineNumber(this.currentFileInternal.url(), topLine);
244
244
  }
@@ -52,7 +52,7 @@ export class HeadersView extends UI.View.SimpleView {
52
52
  #uiSourceCode: Workspace.UISourceCode.UISourceCode;
53
53
 
54
54
  constructor(uiSourceCode: Workspace.UISourceCode.UISourceCode) {
55
- super('HeadersView');
55
+ super(i18n.i18n.lockedString('HeadersView'));
56
56
  this.#uiSourceCode = uiSourceCode;
57
57
  this.#uiSourceCode.addEventListener(
58
58
  Workspace.UISourceCode.Events.WorkingCopyChanged, this.#onWorkingCopyChanged, this);
@@ -165,6 +165,8 @@ const UIStrings = {
165
165
  };
166
166
  const str_ = i18n.i18n.registerUIStrings('panels/timeline/TimelineFlameChartDataProvider.ts', UIStrings);
167
167
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
168
+ type TimelineFlameChartEntry = (SDK.FilmStripModel.Frame|SDK.TracingModel.Event|
169
+ TimelineModel.TimelineFrameModel.TimelineFrame|TimelineModel.TimelineIRModel.Phases);
168
170
  export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectWrapper<EventTypes> implements
169
171
  PerfUI.FlameChart.FlameChartDataProvider {
170
172
  private readonly font: string;
@@ -190,8 +192,7 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
190
192
  private readonly interactionsHeaderLevel2: PerfUI.FlameChart.GroupStyle;
191
193
  private readonly experienceHeader: PerfUI.FlameChart.GroupStyle;
192
194
  private readonly flowEventIndexById: Map<string, number>;
193
- private entryData!: (SDK.FilmStripModel.Frame|SDK.TracingModel.Event|
194
- TimelineModel.TimelineFrameModel.TimelineFrame|TimelineModel.TimelineIRModel.Phases)[];
195
+ private entryData!: TimelineFlameChartEntry[];
195
196
  private entryTypeByLevel!: EntryType[];
196
197
  private markers!: TimelineFlameChartMarker[];
197
198
  private asyncColorByInteractionPhase!: Map<TimelineModel.TimelineIRModel.Phases, string>;
@@ -721,11 +722,11 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
721
722
  if (event.name !== TimelineModel.TimelineModel.RecordType.JSFrame) {
722
723
  return false;
723
724
  }
724
- const url = event.args['data']['url'];
725
+ const url = event.args['data']['url'] as Platform.DevToolsPath.UrlString;
725
726
  return url && this.isIgnoreListedURL(url);
726
727
  }
727
728
 
728
- private isIgnoreListedURL(url: string): boolean {
729
+ private isIgnoreListedURL(url: Platform.DevToolsPath.UrlString): boolean {
729
730
  return Bindings.IgnoreListManager.IgnoreListManager.instance().isIgnoreListedURL(url);
730
731
  }
731
732
 
@@ -1345,11 +1346,6 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
1345
1346
  }
1346
1347
 
1347
1348
  private appendAsyncEvent(asyncEvent: SDK.TracingModel.AsyncEvent, level: number): void {
1348
- if (SDK.TracingModel.TracingModel.isNestableAsyncPhase(asyncEvent.phase)) {
1349
- // FIXME: also add steps once we support event nesting in the FlameChart.
1350
- this.appendEvent(asyncEvent, level);
1351
- return;
1352
- }
1353
1349
  const steps = asyncEvent.steps;
1354
1350
  // If we have past steps, put the end event for each range rather than start one.
1355
1351
  const eventOffset = steps.length > 1 && steps[1].phase === SDK.TracingModel.Phase.AsyncStepPast ? 1 : 0;
@@ -1467,6 +1463,10 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
1467
1463
  null;
1468
1464
  }
1469
1465
 
1466
+ entryDataByIndex(entryIndex: number): TimelineFlameChartEntry {
1467
+ return this.entryData[entryIndex];
1468
+ }
1469
+
1470
1470
  setEventColorMapping(colorForEvent: (arg0: SDK.TracingModel.Event) => string): void {
1471
1471
  this.colorForEvent = colorForEvent;
1472
1472
  }
@@ -772,7 +772,7 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
772
772
  }
773
773
 
774
774
  private async getCoverageViewWidget(): Promise<Coverage.CoverageView.CoverageView> {
775
- const view = (UI.ViewManager.ViewManager.instance().view('coverage') as UI.View.View);
775
+ const view = UI.ViewManager.ViewManager.instance().view('coverage');
776
776
  return await view.widget() as Coverage.CoverageView.CoverageView;
777
777
  }
778
778
 
@@ -406,7 +406,6 @@
406
406
 
407
407
  .timeline-tree-view .data-grid .data-container {
408
408
  overflow-y: scroll;
409
- top: 21px;
410
409
  }
411
410
 
412
411
  .timeline-tree-view .data-grid.data-grid-fits-viewport .corner {
@@ -519,7 +518,7 @@
519
518
  width: 120px;
520
519
  }
521
520
 
522
- .timeline-tree-view .data-grid .header-container {
521
+ .timeline-tree-view .data-grid thead {
523
522
  height: 21px;
524
523
  }
525
524