chrome-devtools-frontend 1.0.1512147 → 1.0.1513662

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 (337) hide show
  1. package/docs/cookbook/release_management.md +15 -13
  2. package/docs/get_the_code.md +114 -35
  3. package/front_end/Images/src/ai-explorer-badge.svg +114 -0
  4. package/front_end/Images/src/code-whisperer-badge.svg +166 -0
  5. package/front_end/Images/src/devtools-user-badge.svg +129 -0
  6. package/front_end/Images/src/dom-detective-badge.svg +136 -0
  7. package/front_end/Images/src/speedster-badge.svg +166 -0
  8. package/front_end/core/common/Color.ts +40 -44
  9. package/front_end/core/common/Console.ts +4 -4
  10. package/front_end/core/common/ParsedURL.ts +14 -14
  11. package/front_end/core/common/ResourceType.ts +20 -20
  12. package/front_end/core/common/SegmentedRange.ts +13 -14
  13. package/front_end/core/common/Settings.ts +4 -4
  14. package/front_end/core/common/StringOutputStream.ts +4 -4
  15. package/front_end/core/host/GdpClient.ts +76 -2
  16. package/front_end/core/host/InspectorFrontendHost.ts +4 -1
  17. package/front_end/core/host/InspectorFrontendHostAPI.ts +2 -0
  18. package/front_end/core/host/ResourceLoader.ts +2 -2
  19. package/front_end/core/host/UserMetrics.ts +0 -2
  20. package/front_end/core/i18n/NumberFormatter.ts +7 -0
  21. package/front_end/core/protocol_client/InspectorBackend.ts +9 -9
  22. package/front_end/core/root/Runtime.ts +5 -2
  23. package/front_end/core/sdk/AccessibilityModel.ts +48 -48
  24. package/front_end/core/sdk/AnimationModel.ts +78 -79
  25. package/front_end/core/sdk/CPUProfilerModel.ts +5 -5
  26. package/front_end/core/sdk/CPUThrottlingManager.ts +17 -17
  27. package/front_end/core/sdk/CSSMatchedStyles.ts +44 -44
  28. package/front_end/core/sdk/CSSMedia.ts +22 -22
  29. package/front_end/core/sdk/CSSModel.ts +4 -4
  30. package/front_end/core/sdk/CSSProperty.ts +9 -9
  31. package/front_end/core/sdk/CSSPropertyParser.ts +1 -2
  32. package/front_end/core/sdk/CSSRule.ts +3 -3
  33. package/front_end/core/sdk/CSSStyleDeclaration.ts +27 -28
  34. package/front_end/core/sdk/CSSStyleSheetHeader.ts +13 -13
  35. package/front_end/core/sdk/CategorizedBreakpoint.ts +4 -4
  36. package/front_end/core/sdk/ChildTargetManager.ts +6 -6
  37. package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +4 -4
  38. package/front_end/core/sdk/ConsoleModel.ts +24 -24
  39. package/front_end/core/sdk/Cookie.ts +16 -16
  40. package/front_end/core/sdk/CookieParser.ts +6 -6
  41. package/front_end/core/sdk/DOMDebuggerModel.ts +88 -89
  42. package/front_end/core/sdk/DOMModel.ts +113 -113
  43. package/front_end/core/sdk/DebuggerModel.ts +102 -103
  44. package/front_end/core/sdk/EmulationModel.ts +6 -6
  45. package/front_end/core/sdk/EventBreakpointsModel.ts +5 -5
  46. package/front_end/core/sdk/HeapProfilerModel.ts +5 -5
  47. package/front_end/core/sdk/IsolateManager.ts +26 -26
  48. package/front_end/core/sdk/LayerTreeBase.ts +29 -30
  49. package/front_end/core/sdk/OverlayModel.ts +6 -6
  50. package/front_end/core/sdk/Resource.ts +43 -43
  51. package/front_end/core/sdk/ResourceTreeModel.ts +58 -61
  52. package/front_end/core/sdk/RuntimeModel.ts +12 -13
  53. package/front_end/core/sdk/SDKModel.ts +3 -3
  54. package/front_end/core/sdk/Script.ts +17 -17
  55. package/front_end/core/sdk/SecurityOriginManager.ts +14 -14
  56. package/front_end/core/sdk/ServerTiming.ts +2 -2
  57. package/front_end/core/sdk/ServiceWorkerCacheModel.ts +15 -15
  58. package/front_end/core/sdk/ServiceWorkerManager.ts +19 -24
  59. package/front_end/core/sdk/SourceMap.ts +10 -10
  60. package/front_end/core/sdk/StorageKeyManager.ts +12 -12
  61. package/front_end/core/sdk/Target.ts +33 -34
  62. package/front_end/core/sdk/TargetManager.ts +20 -20
  63. package/front_end/entrypoints/formatter_worker/AcornTokenizer.ts +8 -8
  64. package/front_end/entrypoints/formatter_worker/HTMLFormatter.ts +7 -7
  65. package/front_end/entrypoints/heap_snapshot_worker/AllocationProfile.ts +7 -7
  66. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +24 -24
  67. package/front_end/entrypoints/main/GlobalAiButton.ts +3 -3
  68. package/front_end/entrypoints/main/MainImpl.ts +16 -14
  69. package/front_end/entrypoints/main/main-meta.ts +1 -2
  70. package/front_end/generated/InspectorBackendCommands.js +3 -2
  71. package/front_end/generated/SupportedCSSProperties.js +20 -0
  72. package/front_end/generated/protocol-mapping.d.ts +4 -0
  73. package/front_end/generated/protocol-proxy-api.d.ts +5 -0
  74. package/front_end/generated/protocol.ts +20 -0
  75. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +18 -35
  76. package/front_end/models/ai_assistance/ai_assistance.ts +1 -1
  77. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +7 -6
  78. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +246 -119
  79. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +187 -73
  80. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +106 -100
  81. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +20 -27
  82. package/front_end/models/ai_assistance/data_formatters/UnitFormatters.ts +151 -0
  83. package/front_end/models/badges/AiExplorerBadge.ts +21 -0
  84. package/front_end/models/badges/Badge.ts +10 -9
  85. package/front_end/models/badges/CodeWhispererBadge.ts +21 -0
  86. package/front_end/models/badges/DOMDetectiveBadge.ts +21 -0
  87. package/front_end/models/badges/SpeedsterBadge.ts +7 -2
  88. package/front_end/models/badges/StarterBadge.ts +6 -1
  89. package/front_end/models/badges/UserBadges.ts +61 -9
  90. package/front_end/models/bindings/CSSWorkspaceBinding.ts +6 -6
  91. package/front_end/models/bindings/DebuggerLanguagePlugins.ts +18 -18
  92. package/front_end/models/bindings/FileUtils.ts +15 -15
  93. package/front_end/models/bindings/ResourceScriptMapping.ts +14 -14
  94. package/front_end/models/elements/ElementUpdateRecord.ts +11 -11
  95. package/front_end/models/emulation/DeviceModeModel.ts +123 -131
  96. package/front_end/models/emulation/EmulatedDevices.ts +22 -22
  97. package/front_end/models/extensions/ExtensionPanel.ts +24 -24
  98. package/front_end/models/extensions/ExtensionServer.ts +4 -4
  99. package/front_end/models/javascript_metadata/NativeFunctions.js +14 -2
  100. package/front_end/models/persistence/IsolatedFileSystem.ts +18 -19
  101. package/front_end/models/persistence/IsolatedFileSystemManager.ts +13 -13
  102. package/front_end/models/trace/EventsSerializer.ts +5 -5
  103. package/front_end/models/trace/LanternComputationData.ts +10 -10
  104. package/front_end/models/trace/ModelImpl.ts +32 -54
  105. package/front_end/models/trace/Processor.ts +28 -30
  106. package/front_end/models/trace/extras/FilmStrip.ts +6 -6
  107. package/front_end/models/trace/extras/StackTraceForEvent.ts +22 -25
  108. package/front_end/models/trace/extras/ThirdParties.ts +16 -17
  109. package/front_end/models/trace/extras/TraceFilter.ts +1 -1
  110. package/front_end/models/trace/handlers/Threads.ts +10 -10
  111. package/front_end/models/trace/handlers/helpers.ts +9 -9
  112. package/front_end/models/trace/handlers/types.ts +3 -3
  113. package/front_end/models/trace/insights/CLSCulprits.ts +12 -14
  114. package/front_end/models/trace/insights/Cache.ts +8 -4
  115. package/front_end/models/trace/insights/DOMSize.ts +8 -5
  116. package/front_end/models/trace/insights/DocumentLatency.ts +2 -2
  117. package/front_end/models/trace/insights/DuplicatedJavaScript.ts +3 -3
  118. package/front_end/models/trace/insights/FontDisplay.ts +3 -4
  119. package/front_end/models/trace/insights/ForcedReflow.ts +3 -3
  120. package/front_end/models/trace/insights/INPBreakdown.ts +2 -2
  121. package/front_end/models/trace/insights/ImageDelivery.ts +11 -11
  122. package/front_end/models/trace/insights/LCPBreakdown.ts +4 -4
  123. package/front_end/models/trace/insights/LCPDiscovery.ts +4 -4
  124. package/front_end/models/trace/insights/LegacyJavaScript.ts +2 -2
  125. package/front_end/models/trace/insights/ModernHTTP.ts +4 -5
  126. package/front_end/models/trace/insights/NetworkDependencyTree.ts +12 -12
  127. package/front_end/models/trace/insights/RenderBlocking.ts +9 -10
  128. package/front_end/models/trace/insights/SlowCSSSelector.ts +2 -2
  129. package/front_end/models/trace/insights/ThirdParties.ts +4 -5
  130. package/front_end/models/trace/insights/Viewport.ts +8 -5
  131. package/front_end/models/trace/insights/types.ts +1 -0
  132. package/front_end/models/trace/lantern/testing/MetricTestUtils.ts +10 -10
  133. package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +52 -52
  134. package/front_end/panels/accessibility/AccessibilitySidebarView.ts +8 -8
  135. package/front_end/panels/animation/AnimationTimeline.ts +5 -5
  136. package/front_end/panels/animation/AnimationUI.ts +22 -23
  137. package/front_end/panels/application/ApplicationPanelSidebar.ts +12 -12
  138. package/front_end/panels/application/DOMStorageModel.ts +23 -23
  139. package/front_end/panels/application/ExtensionStorageModel.ts +31 -31
  140. package/front_end/panels/application/IndexedDBModel.ts +1 -0
  141. package/front_end/panels/application/PreloadingTreeElement.ts +8 -8
  142. package/front_end/panels/application/ServiceWorkersView.ts +0 -53
  143. package/front_end/panels/application/preloading/components/PreloadingDisabledInfobar.ts +2 -2
  144. package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +2 -2
  145. package/front_end/panels/common/BadgeNotification.ts +140 -10
  146. package/front_end/panels/common/GdpSignUpDialog.ts +5 -0
  147. package/front_end/panels/common/badgeNotification.css +30 -9
  148. package/front_end/panels/console/ConsoleContextSelector.ts +9 -9
  149. package/front_end/panels/console/ConsolePrompt.ts +8 -5
  150. package/front_end/panels/console/ConsoleView.ts +13 -13
  151. package/front_end/panels/console/ConsoleViewport.ts +29 -29
  152. package/front_end/panels/coverage/CoverageModel.ts +22 -22
  153. package/front_end/panels/elements/ClassesPaneWidget.ts +1 -1
  154. package/front_end/panels/elements/ComputedStyleModel.ts +17 -18
  155. package/front_end/panels/elements/DOMPath.ts +2 -2
  156. package/front_end/panels/elements/ElementsPanel.ts +13 -13
  157. package/front_end/panels/elements/ElementsTreeElement.ts +30 -18
  158. package/front_end/panels/elements/ElementsTreeOutline.ts +44 -48
  159. package/front_end/panels/elements/ShortcutTreeElement.ts +4 -4
  160. package/front_end/panels/elements/StylePropertiesSection.ts +7 -4
  161. package/front_end/panels/elements/StylePropertyTreeElement.ts +54 -50
  162. package/front_end/panels/elements/StylesSidebarPane.ts +19 -19
  163. package/front_end/panels/emulation/DeviceModeToolbar.ts +7 -7
  164. package/front_end/panels/emulation/DeviceModeView.ts +6 -6
  165. package/front_end/panels/emulation/MediaQueryInspector.ts +18 -18
  166. package/front_end/panels/event_listeners/EventListenersView.ts +13 -14
  167. package/front_end/panels/layer_viewer/LayerTreeOutline.ts +3 -3
  168. package/front_end/panels/layer_viewer/LayerViewHost.ts +13 -13
  169. package/front_end/panels/layer_viewer/PaintProfilerView.ts +9 -10
  170. package/front_end/panels/layer_viewer/TransformController.ts +34 -36
  171. package/front_end/panels/layers/LayerTreeModel.ts +41 -40
  172. package/front_end/panels/lighthouse/LighthouseReportSelector.ts +13 -13
  173. package/front_end/panels/lighthouse/LighthouseStartView.ts +7 -7
  174. package/front_end/panels/media/PlayerMessagesView.ts +5 -5
  175. package/front_end/panels/media/TickingFlameChart.ts +24 -24
  176. package/front_end/panels/media/TickingFlameChartHelpers.ts +32 -32
  177. package/front_end/panels/network/NetworkItemView.ts +4 -4
  178. package/front_end/panels/network/NetworkLogViewColumns.ts +29 -29
  179. package/front_end/panels/network/NetworkPanel.ts +8 -5
  180. package/front_end/panels/network/ResourceWebSocketFrameView.ts +10 -10
  181. package/front_end/panels/profiler/HeapDetachedElementsView.ts +3 -3
  182. package/front_end/panels/profiler/HeapProfileView.ts +1 -1
  183. package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +3 -4
  184. package/front_end/panels/profiler/ProfileHeader.ts +25 -25
  185. package/front_end/panels/profiler/ProfileLauncherView.ts +5 -6
  186. package/front_end/panels/recorder/components/ReplaySection.ts +3 -1
  187. package/front_end/panels/security/OriginTreeElement.ts +8 -8
  188. package/front_end/panels/security/SecurityPanel.ts +5 -5
  189. package/front_end/panels/settings/SettingsScreen.ts +18 -18
  190. package/front_end/panels/settings/components/SyncSection.ts +26 -8
  191. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +3 -0
  192. package/front_end/panels/sources/DebuggerPausedMessage.ts +8 -9
  193. package/front_end/panels/sources/NavigatorView.ts +43 -46
  194. package/front_end/panels/sources/SourcesPanel.ts +35 -35
  195. package/front_end/panels/sources/SourcesView.ts +13 -13
  196. package/front_end/panels/sources/TabbedEditorContainer.ts +19 -22
  197. package/front_end/panels/sources/UISourceCodeFrame.ts +4 -4
  198. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +34 -36
  199. package/front_end/panels/timeline/AnimationsTrackAppender.ts +3 -3
  200. package/front_end/panels/timeline/CompatibilityTracksAppender.ts +8 -8
  201. package/front_end/panels/timeline/CountersGraph.ts +16 -16
  202. package/front_end/panels/timeline/EntriesFilter.ts +4 -3
  203. package/front_end/panels/timeline/EventsTimelineTreeView.ts +3 -3
  204. package/front_end/panels/timeline/GPUTrackAppender.ts +3 -3
  205. package/front_end/panels/timeline/Initiators.ts +10 -10
  206. package/front_end/panels/timeline/InteractionsTrackAppender.ts +5 -5
  207. package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +7 -7
  208. package/front_end/panels/timeline/ModificationsManager.ts +8 -15
  209. package/front_end/panels/timeline/TargetForEvent.ts +2 -2
  210. package/front_end/panels/timeline/ThirdPartyTreeView.ts +1 -1
  211. package/front_end/panels/timeline/ThreadAppender.ts +13 -13
  212. package/front_end/panels/timeline/TimelineDetailsView.ts +6 -14
  213. package/front_end/panels/timeline/TimelineEventOverview.ts +27 -26
  214. package/front_end/panels/timeline/TimelineFilters.ts +5 -5
  215. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +54 -53
  216. package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +34 -34
  217. package/front_end/panels/timeline/TimelineFlameChartView.ts +18 -31
  218. package/front_end/panels/timeline/TimelineHistoryManager.ts +17 -18
  219. package/front_end/panels/timeline/TimelineMiniMap.ts +6 -6
  220. package/front_end/panels/timeline/TimelinePaintProfilerView.ts +6 -6
  221. package/front_end/panels/timeline/TimelinePanel.ts +73 -68
  222. package/front_end/panels/timeline/TimelineSelectorStatsView.ts +7 -5
  223. package/front_end/panels/timeline/TimelineTreeView.ts +10 -10
  224. package/front_end/panels/timeline/TimelineUIUtils.ts +47 -46
  225. package/front_end/panels/timeline/TimingsTrackAppender.ts +12 -12
  226. package/front_end/panels/timeline/TracingLayerTree.ts +43 -43
  227. package/front_end/panels/timeline/TrackConfigBanner.ts +6 -6
  228. package/front_end/panels/timeline/TrackConfiguration.ts +1 -1
  229. package/front_end/panels/timeline/components/DetailsView.ts +4 -4
  230. package/front_end/panels/timeline/components/LayoutShiftDetails.ts +12 -21
  231. package/front_end/panels/timeline/components/LiveMetricsView.ts +2 -1
  232. package/front_end/panels/timeline/components/NetworkRequestDetails.ts +5 -5
  233. package/front_end/panels/timeline/components/Sidebar.ts +4 -14
  234. package/front_end/panels/timeline/components/SidebarInsightsTab.ts +13 -36
  235. package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +21 -19
  236. package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +1 -1
  237. package/front_end/panels/timeline/components/insights/Cache.ts +4 -0
  238. package/front_end/panels/timeline/components/insights/DOMSize.ts +5 -1
  239. package/front_end/panels/timeline/components/insights/Helpers.ts +19 -0
  240. package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +1 -1
  241. package/front_end/panels/timeline/components/insights/Viewport.ts +4 -0
  242. package/front_end/panels/timeline/overlays/OverlaysImpl.ts +1 -1
  243. package/front_end/panels/timeline/utils/AICallTree.ts +11 -11
  244. package/front_end/panels/timeline/utils/AIContext.ts +17 -19
  245. package/front_end/panels/timeline/utils/EntityMapper.ts +6 -5
  246. package/front_end/panels/timeline/utils/EntryName.ts +2 -2
  247. package/front_end/panels/timeline/utils/EntryNodes.ts +5 -5
  248. package/front_end/panels/timeline/utils/EntryStyles.ts +4 -4
  249. package/front_end/panels/timeline/utils/FreshRecording.ts +3 -3
  250. package/front_end/panels/timeline/utils/Helpers.ts +0 -18
  251. package/front_end/panels/timeline/utils/InsightAIContext.ts +6 -6
  252. package/front_end/panels/timeline/utils/SourceMapsResolver.ts +7 -7
  253. package/front_end/panels/webauthn/WebauthnPane.ts +1 -0
  254. package/front_end/third_party/chromium/README.chromium +1 -1
  255. package/front_end/third_party/codemirror.next/chunk/angular.js +1 -1
  256. package/front_end/third_party/codemirror.next/chunk/angular.js.map +1 -1
  257. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  258. package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
  259. package/front_end/third_party/codemirror.next/chunk/cpp.js +1 -1
  260. package/front_end/third_party/codemirror.next/chunk/cpp.js.map +1 -1
  261. package/front_end/third_party/codemirror.next/chunk/java.js +1 -1
  262. package/front_end/third_party/codemirror.next/chunk/java.js.map +1 -1
  263. package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
  264. package/front_end/third_party/codemirror.next/chunk/legacy.js.map +1 -1
  265. package/front_end/third_party/codemirror.next/chunk/less.js +1 -1
  266. package/front_end/third_party/codemirror.next/chunk/less.js.map +1 -1
  267. package/front_end/third_party/codemirror.next/chunk/markdown.js +1 -1
  268. package/front_end/third_party/codemirror.next/chunk/markdown.js.map +1 -1
  269. package/front_end/third_party/codemirror.next/chunk/php.js +1 -1
  270. package/front_end/third_party/codemirror.next/chunk/php.js.map +1 -1
  271. package/front_end/third_party/codemirror.next/chunk/python.js +1 -1
  272. package/front_end/third_party/codemirror.next/chunk/python.js.map +1 -1
  273. package/front_end/third_party/codemirror.next/chunk/sass.js +1 -1
  274. package/front_end/third_party/codemirror.next/chunk/sass.js.map +1 -1
  275. package/front_end/third_party/codemirror.next/chunk/svelte.js +1 -1
  276. package/front_end/third_party/codemirror.next/chunk/svelte.js.map +1 -1
  277. package/front_end/third_party/codemirror.next/chunk/vue.js +1 -1
  278. package/front_end/third_party/codemirror.next/chunk/vue.js.map +1 -1
  279. package/front_end/third_party/codemirror.next/chunk/wast.js +1 -1
  280. package/front_end/third_party/codemirror.next/chunk/wast.js.map +1 -1
  281. package/front_end/third_party/codemirror.next/chunk/xml.js +1 -1
  282. package/front_end/third_party/codemirror.next/chunk/xml.js.map +1 -1
  283. package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
  284. package/front_end/third_party/codemirror.next/package.json +1 -1
  285. package/front_end/third_party/codemirror.next/rebuild.sh +1 -1
  286. package/front_end/third_party/json5/rebuild.sh +1 -1
  287. package/front_end/third_party/legacy-javascript/{update.sh → rebuild.sh} +1 -1
  288. package/front_end/third_party/lit/lib/decorators.d.ts +26 -9
  289. package/front_end/third_party/lit/lib/decorators.js +5 -5
  290. package/front_end/third_party/lit/lib/decorators.js.map +1 -1
  291. package/front_end/third_party/lit/lib/directive.js.map +1 -1
  292. package/front_end/third_party/lit/lib/directives.js +8 -13
  293. package/front_end/third_party/lit/lib/directives.js.map +1 -1
  294. package/front_end/third_party/lit/lib/lit.d.ts +26 -9
  295. package/front_end/third_party/lit/lib/lit.js +5 -5
  296. package/front_end/third_party/lit/lib/lit.js.map +1 -1
  297. package/front_end/third_party/lit/lib/static-html.js +2 -2
  298. package/front_end/third_party/lit/lib/static-html.js.map +1 -1
  299. package/front_end/third_party/lit/rebuild.sh +1 -1
  300. package/front_end/third_party/third-party-web/rebuild.sh +1 -1
  301. package/front_end/ui/components/dialogs/Dialog.ts +6 -7
  302. package/front_end/ui/legacy/ActionRegistration.ts +9 -9
  303. package/front_end/ui/legacy/DockController.ts +18 -18
  304. package/front_end/ui/legacy/FilterBar.ts +7 -7
  305. package/front_end/ui/legacy/Fragment.ts +4 -4
  306. package/front_end/ui/legacy/GlassPane.ts +12 -12
  307. package/front_end/ui/legacy/InspectorView.ts +5 -15
  308. package/front_end/ui/legacy/ListControl.ts +27 -27
  309. package/front_end/ui/legacy/ListWidget.ts +4 -4
  310. package/front_end/ui/legacy/PopoverHelper.ts +4 -4
  311. package/front_end/ui/legacy/ShortcutRegistry.ts +17 -17
  312. package/front_end/ui/legacy/TabbedPane.ts +74 -75
  313. package/front_end/ui/legacy/TextPrompt.ts +31 -31
  314. package/front_end/ui/legacy/Toolbar.ts +13 -14
  315. package/front_end/ui/legacy/ViewManager.ts +30 -31
  316. package/front_end/ui/legacy/Widget.ts +6 -6
  317. package/front_end/ui/legacy/XLink.ts +9 -9
  318. package/front_end/ui/legacy/ZoomManager.ts +9 -9
  319. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +27 -27
  320. package/front_end/ui/legacy/components/color_picker/ContrastInfo.ts +30 -32
  321. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +15 -15
  322. package/front_end/ui/legacy/components/data_grid/DataGrid.ts +64 -64
  323. package/front_end/ui/legacy/components/data_grid/ShowMoreDataGridNode.ts +2 -2
  324. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -11
  325. package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +12 -12
  326. package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -3
  327. package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +14 -14
  328. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +8 -8
  329. package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +5 -5
  330. package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +4 -4
  331. package/front_end/ui/legacy/filter.css +1 -1
  332. package/front_end/ui/legacy/inspectorCommon.css +1 -1
  333. package/front_end/ui/legacy/softDropDownButton.css +1 -1
  334. package/front_end/ui/legacy/theme_support/ThemeSupport.ts +4 -4
  335. package/front_end/ui/visual_logging/KnownContextValues.ts +2 -2
  336. package/package.json +1 -1
  337. package/front_end/models/ai_assistance/data_formatters/Types.ts +0 -9
@@ -307,10 +307,10 @@ export class WatchExpressionsSidebarPane extends UI.ThrottledWidget.ThrottledWid
307
307
  }
308
308
 
309
309
  export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTypes> {
310
- private treeElementInternal!: UI.TreeOutline.TreeElement;
310
+ #treeElement!: UI.TreeOutline.TreeElement;
311
311
  private nameElement!: Element;
312
312
  private valueElement!: Element;
313
- private expressionInternal: string|null;
313
+ #expression: string|null;
314
314
  private readonly expandController: ObjectUI.ObjectPropertiesSection.ObjectPropertiesSectionsTreeExpandController;
315
315
  private element: HTMLDivElement;
316
316
  private editing: boolean;
@@ -324,7 +324,7 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
324
324
  linkifier: Components.Linkifier.Linkifier) {
325
325
  super();
326
326
 
327
- this.expressionInternal = expression;
327
+ this.#expression = expression;
328
328
  this.expandController = expandController;
329
329
  this.element = document.createElement('div');
330
330
  this.element.classList.add('watch-expression');
@@ -337,11 +337,11 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
337
337
  }
338
338
 
339
339
  treeElement(): UI.TreeOutline.TreeElement {
340
- return this.treeElementInternal;
340
+ return this.#treeElement;
341
341
  }
342
342
 
343
343
  expression(): string|null {
344
- return this.expressionInternal;
344
+ return this.#expression;
345
345
  }
346
346
 
347
347
  async #evaluateExpression(executionContext: SDK.RuntimeModel.ExecutionContext, expression: string):
@@ -371,8 +371,8 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
371
371
 
372
372
  update(): void {
373
373
  const currentExecutionContext = UI.Context.Context.instance().flavor(SDK.RuntimeModel.ExecutionContext);
374
- if (currentExecutionContext && this.expressionInternal) {
375
- void this.#evaluateExpression(currentExecutionContext, this.expressionInternal).then(result => {
374
+ if (currentExecutionContext && this.#expression) {
375
+ void this.#evaluateExpression(currentExecutionContext, this.#expression).then(result => {
376
376
  if ('object' in result) {
377
377
  this.createWatchExpression(result.object, result.exceptionDetails);
378
378
  } else {
@@ -386,15 +386,15 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
386
386
 
387
387
  startEditing(): void {
388
388
  this.editing = true;
389
- this.treeElementInternal.setDisableSelectFocus(true);
389
+ this.#treeElement.setDisableSelectFocus(true);
390
390
  this.element.removeChildren();
391
391
  const newDiv = this.element.createChild('div');
392
392
  newDiv.textContent = this.nameElement.textContent;
393
393
  this.textPrompt = new ObjectUI.ObjectPropertiesSection.ObjectPropertyPrompt();
394
394
  this.textPrompt.renderAsBlock();
395
395
  const proxyElement = (this.textPrompt.attachAndStartEditing(newDiv, this.finishEditing.bind(this)) as HTMLElement);
396
- this.treeElementInternal.listItemElement.classList.add('watch-expression-editing');
397
- this.treeElementInternal.collapse();
396
+ this.#treeElement.listItemElement.classList.add('watch-expression-editing');
397
+ this.#treeElement.collapse();
398
398
  proxyElement.classList.add('watch-expression-text-prompt-proxy');
399
399
  proxyElement.addEventListener('keydown', this.promptKeyDown.bind(this), false);
400
400
  const selection = this.element.getComponentSelection();
@@ -413,11 +413,11 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
413
413
  }
414
414
 
415
415
  this.editing = false;
416
- this.treeElementInternal.setDisableSelectFocus(false);
417
- this.treeElementInternal.listItemElement.classList.remove('watch-expression-editing');
416
+ this.#treeElement.setDisableSelectFocus(false);
417
+ this.#treeElement.listItemElement.classList.remove('watch-expression-editing');
418
418
  if (this.textPrompt) {
419
419
  this.textPrompt.detach();
420
- const newExpression = canceled ? this.expressionInternal : this.textPrompt.text();
420
+ const newExpression = canceled ? this.#expression : this.textPrompt.text();
421
421
  this.textPrompt = undefined;
422
422
  this.element.removeChildren();
423
423
  this.updateExpression(newExpression);
@@ -432,10 +432,10 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
432
432
  }
433
433
 
434
434
  private updateExpression(newExpression: string|null): void {
435
- if (this.expressionInternal) {
436
- this.expandController.stopWatchSectionsWithId(this.expressionInternal);
435
+ if (this.#expression) {
436
+ this.expandController.stopWatchSectionsWithId(this.#expression);
437
437
  }
438
- this.expressionInternal = newExpression;
438
+ this.#expression = newExpression;
439
439
  this.update();
440
440
  this.dispatchEventToListeners(Events.EXPRESSION_UPDATED, this);
441
441
  }
@@ -451,15 +451,15 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
451
451
  this.result = result || null;
452
452
 
453
453
  this.element.removeChildren();
454
- const oldTreeElement = this.treeElementInternal;
454
+ const oldTreeElement = this.#treeElement;
455
455
  this.createWatchExpressionTreeElement(result, exceptionDetails);
456
456
  if (oldTreeElement?.parent) {
457
457
  const root = oldTreeElement.parent;
458
458
  const index = root.indexOfChild(oldTreeElement);
459
459
  root.removeChild(oldTreeElement);
460
- root.insertChild(this.treeElementInternal, index);
460
+ root.insertChild(this.#treeElement, index);
461
461
  }
462
- this.treeElementInternal.select();
462
+ this.#treeElement.select();
463
463
  }
464
464
 
465
465
  private createWatchExpressionHeader(
@@ -483,9 +483,8 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
483
483
 
484
484
  const titleElement = headerElement.createChild('div', 'watch-expression-title tree-element-title');
485
485
  titleElement.appendChild(deleteButton);
486
- this.nameElement =
487
- ObjectUI.ObjectPropertiesSection.ObjectPropertiesSection.createNameElement(this.expressionInternal);
488
- UI.Tooltip.Tooltip.install(this.nameElement as HTMLElement, this.expressionInternal);
486
+ this.nameElement = ObjectUI.ObjectPropertiesSection.ObjectPropertiesSection.createNameElement(this.#expression);
487
+ UI.Tooltip.Tooltip.install(this.nameElement as HTMLElement, this.#expression);
489
488
  if (Boolean(exceptionDetails) || !expressionValue) {
490
489
  this.valueElement = document.createElement('span');
491
490
  this.valueElement.classList.add('watch-expression-error');
@@ -515,20 +514,19 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
515
514
 
516
515
  if (!exceptionDetails && expressionValue && expressionValue.hasChildren && !expressionValue.customPreview()) {
517
516
  headerElement.classList.add('watch-expression-object-header');
518
- this.treeElementInternal = new ObjectUI.ObjectPropertiesSection.RootElement(expressionValue, this.linkifier);
517
+ this.#treeElement = new ObjectUI.ObjectPropertiesSection.RootElement(expressionValue, this.linkifier);
519
518
  this.expandController.watchSection(
520
- (this.expressionInternal as string),
521
- (this.treeElementInternal as ObjectUI.ObjectPropertiesSection.RootElement));
522
- this.treeElementInternal.toggleOnClick = false;
523
- this.treeElementInternal.listItemElement.addEventListener('click', this.onSectionClick.bind(this), false);
524
- this.treeElementInternal.listItemElement.addEventListener('dblclick', this.dblClickOnWatchExpression.bind(this));
519
+ (this.#expression as string), (this.#treeElement as ObjectUI.ObjectPropertiesSection.RootElement));
520
+ this.#treeElement.toggleOnClick = false;
521
+ this.#treeElement.listItemElement.addEventListener('click', this.onSectionClick.bind(this), false);
522
+ this.#treeElement.listItemElement.addEventListener('dblclick', this.dblClickOnWatchExpression.bind(this));
525
523
  } else {
526
524
  headerElement.addEventListener('dblclick', this.dblClickOnWatchExpression.bind(this));
527
- this.treeElementInternal = new UI.TreeOutline.TreeElement();
525
+ this.#treeElement = new UI.TreeOutline.TreeElement();
528
526
  }
529
- this.treeElementInternal.title = this.element;
530
- this.treeElementInternal.listItemElement.classList.add('watch-expression-tree-item');
531
- this.treeElementInternal.listItemElement.addEventListener('keydown', event => {
527
+ this.#treeElement.title = this.element;
528
+ this.#treeElement.listItemElement.classList.add('watch-expression-tree-item');
529
+ this.#treeElement.listItemElement.addEventListener('keydown', event => {
532
530
  if (event.key === 'Enter' && !this.isEditing()) {
533
531
  this.startEditing();
534
532
  event.consume(true);
@@ -549,14 +547,14 @@ export class WatchExpression extends Common.ObjectWrapper.ObjectWrapper<EventTyp
549
547
  }
550
548
 
551
549
  function handleClick(this: WatchExpression): void {
552
- if (!this.treeElementInternal) {
550
+ if (!this.#treeElement) {
553
551
  return;
554
552
  }
555
553
 
556
- if (this.treeElementInternal.expanded) {
557
- this.treeElementInternal.collapse();
554
+ if (this.#treeElement.expanded) {
555
+ this.#treeElement.collapse();
558
556
  } else if (!this.editing) {
559
- this.treeElementInternal.expand();
557
+ this.#treeElement.expand();
560
558
  }
561
559
  }
562
560
  }
@@ -29,16 +29,16 @@ export class AnimationsTrackAppender implements TrackAppender {
29
29
  readonly appenderName: TrackAppenderName = 'Animations';
30
30
 
31
31
  #compatibilityBuilder: CompatibilityTracksAppender;
32
- #parsedTrace: Readonly<Trace.Handlers.Types.ParsedTrace>;
32
+ #parsedTrace: Readonly<Trace.TraceModel.ParsedTrace>;
33
33
  #eventAppendedCallback = this.#eventAppendedCallbackFunction.bind(this);
34
34
 
35
- constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.Handlers.Types.ParsedTrace) {
35
+ constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.TraceModel.ParsedTrace) {
36
36
  this.#compatibilityBuilder = compatibilityBuilder;
37
37
  this.#parsedTrace = parsedTrace;
38
38
  }
39
39
 
40
40
  appendTrackAtLevel(trackStartLevel: number, expanded?: boolean|undefined): number {
41
- const animations = this.#parsedTrace.Animations.animations;
41
+ const animations = this.#parsedTrace.data.Animations.animations;
42
42
  if (animations.length === 0) {
43
43
  return trackStartLevel;
44
44
  }
@@ -46,8 +46,8 @@ function isShowPostMessageEventsEnabled(): boolean {
46
46
  }
47
47
 
48
48
  export function entryIsVisibleInTimeline(
49
- entry: Trace.Types.Events.Event, parsedTrace?: Trace.Handlers.Types.ParsedTrace): boolean {
50
- if (parsedTrace?.Meta.traceIsGeneric) {
49
+ entry: Trace.Types.Events.Event, parsedTrace?: Trace.TraceModel.ParsedTrace): boolean {
50
+ if (parsedTrace?.data.Meta.traceIsGeneric) {
51
51
  return true;
52
52
  }
53
53
 
@@ -188,7 +188,7 @@ export class CompatibilityTracksAppender {
188
188
  #eventsForTrack = new Map<TrackAppender, Trace.Types.Events.Event[]>();
189
189
  #trackEventsForTreeview = new Map<TrackAppender, Trace.Types.Events.Event[]>();
190
190
  #flameChartData: PerfUI.FlameChart.FlameChartTimelineData;
191
- #parsedTrace: Trace.Handlers.Types.ParsedTrace;
191
+ #parsedTrace: Trace.TraceModel.ParsedTrace;
192
192
  #entryData: Trace.Types.Events.Event[];
193
193
  #colorGenerator: Common.Color.Generator;
194
194
  #allTrackAppenders: TrackAppender[] = [];
@@ -218,7 +218,7 @@ export class CompatibilityTracksAppender {
218
218
  * @param entityMapper 3P entity data for the trace.
219
219
  */
220
220
  constructor(
221
- flameChartData: PerfUI.FlameChart.FlameChartTimelineData, parsedTrace: Trace.Handlers.Types.ParsedTrace,
221
+ flameChartData: PerfUI.FlameChart.FlameChartTimelineData, parsedTrace: Trace.TraceModel.ParsedTrace,
222
222
  entryData: Trace.Types.Events.Event[], legacyEntryTypeByLevel: EntryType[],
223
223
  entityMapper: TimelineUtils.EntityMapper.EntityMapper|null) {
224
224
  this.#flameChartData = flameChartData;
@@ -284,7 +284,7 @@ export class CompatibilityTracksAppender {
284
284
  if (!TimelinePanel.extensionDataVisibilitySetting().get()) {
285
285
  return;
286
286
  }
287
- const tracks = this.#parsedTrace.ExtensionTraceData.extensionTrackData;
287
+ const tracks = this.#parsedTrace.data.ExtensionTraceData.extensionTrackData;
288
288
  for (const trackData of tracks) {
289
289
  this.#allTrackAppenders.push(new ExtensionTrackAppender(this, trackData));
290
290
  }
@@ -318,11 +318,11 @@ export class CompatibilityTracksAppender {
318
318
  return 8;
319
319
  }
320
320
  };
321
- const threads = Trace.Handlers.Threads.threadsInTrace(this.#parsedTrace);
321
+ const threads = Trace.Handlers.Threads.threadsInTrace(this.#parsedTrace.data);
322
322
  const showAllEvents = Root.Runtime.experiments.isEnabled('timeline-show-all-events');
323
323
 
324
324
  for (const {pid, tid, name, type, entries, tree} of threads) {
325
- if (this.#parsedTrace.Meta.traceIsGeneric) {
325
+ if (this.#parsedTrace.data.Meta.traceIsGeneric) {
326
326
  // If the trace is generic, we just push all of the threads with no effort to differentiate them, hence
327
327
  // overriding the thread type to be OTHER for all threads.
328
328
  this.#threadAppenders.push(new ThreadAppender(
@@ -334,7 +334,7 @@ export class CompatibilityTracksAppender {
334
334
  continue;
335
335
  }
336
336
 
337
- const matchingWorklet = this.#parsedTrace.AuctionWorklets.worklets.get(pid);
337
+ const matchingWorklet = this.#parsedTrace.data.AuctionWorklets.worklets.get(pid);
338
338
  if (matchingWorklet) {
339
339
  // Each AuctionWorklet has two key threads:
340
340
  // 1. the Utility Thread
@@ -167,12 +167,12 @@ export class CountersGraph extends UI.Widget.VBox {
167
167
  }
168
168
  }
169
169
 
170
- setModel(parsedTrace: Trace.Handlers.Types.ParsedTrace|null, events: Trace.Types.Events.Event[]|null): void {
170
+ setModel(parsedTrace: Trace.TraceModel.ParsedTrace|null, events: Trace.Types.Events.Event[]|null): void {
171
171
  this.#events = events;
172
172
  if (!events || !parsedTrace) {
173
173
  return;
174
174
  }
175
- const minTime = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.Meta.traceBounds).min;
175
+ const minTime = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.data.Meta.traceBounds).min;
176
176
  this.calculator.setZeroTime(minTime);
177
177
 
178
178
  for (let i = 0; i < this.counters.length; ++i) {
@@ -589,28 +589,28 @@ export class CounterUI {
589
589
  }
590
590
 
591
591
  export class Calculator implements Calculator {
592
- private minimumBoundaryInternal: number;
593
- private maximumBoundaryInternal: number;
592
+ #minimumBoundary: number;
593
+ #maximumBoundary: number;
594
594
  private workingArea: number;
595
- private zeroTimeInternal: number;
595
+ #zeroTime: number;
596
596
 
597
597
  constructor() {
598
- this.minimumBoundaryInternal = 0;
599
- this.maximumBoundaryInternal = 0;
598
+ this.#minimumBoundary = 0;
599
+ this.#maximumBoundary = 0;
600
600
  this.workingArea = 0;
601
- this.zeroTimeInternal = 0;
601
+ this.#zeroTime = 0;
602
602
  }
603
603
  setZeroTime(time: number): void {
604
- this.zeroTimeInternal = time;
604
+ this.#zeroTime = time;
605
605
  }
606
606
 
607
607
  computePosition(time: number): number {
608
- return (time - this.minimumBoundaryInternal) / this.boundarySpan() * this.workingArea;
608
+ return (time - this.#minimumBoundary) / this.boundarySpan() * this.workingArea;
609
609
  }
610
610
 
611
611
  setWindow(minimumBoundary: number, maximumBoundary: number): void {
612
- this.minimumBoundaryInternal = minimumBoundary;
613
- this.maximumBoundaryInternal = maximumBoundary;
612
+ this.#minimumBoundary = minimumBoundary;
613
+ this.#maximumBoundary = maximumBoundary;
614
614
  }
615
615
 
616
616
  setDisplayWidth(clientWidth: number): void {
@@ -622,18 +622,18 @@ export class Calculator implements Calculator {
622
622
  }
623
623
 
624
624
  maximumBoundary(): number {
625
- return this.maximumBoundaryInternal;
625
+ return this.#maximumBoundary;
626
626
  }
627
627
 
628
628
  minimumBoundary(): number {
629
- return this.minimumBoundaryInternal;
629
+ return this.#minimumBoundary;
630
630
  }
631
631
 
632
632
  zeroTime(): number {
633
- return this.zeroTimeInternal;
633
+ return this.#zeroTime;
634
634
  }
635
635
 
636
636
  boundarySpan(): number {
637
- return this.maximumBoundaryInternal - this.minimumBoundaryInternal;
637
+ return this.#maximumBoundary - this.#minimumBoundary;
638
638
  }
639
639
  }
@@ -20,7 +20,7 @@ import {
20
20
  * removed before rendering the resulting thread on the timeline.
21
21
  */
22
22
  export class EntriesFilter {
23
- #parsedTrace: Trace.Handlers.Types.ParsedTrace;
23
+ #parsedTrace: Trace.TraceModel.ParsedTrace;
24
24
  // Track the set of invisible entries.
25
25
  #invisibleEntries: Trace.Types.Events.Event[] = [];
26
26
  // List of entries whose children are hidden. This list is used to
@@ -31,14 +31,15 @@ export class EntriesFilter {
31
31
  // will never change so we can avoid running the potentially expensive search again.
32
32
  #entryToDescendantsMap = new Map<Trace.Helpers.TreeHelpers.TraceEntryNode, Trace.Types.Events.Event[]>();
33
33
 
34
- constructor(parsedTrace: Trace.Handlers.Types.ParsedTrace) {
34
+ constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
35
35
  this.#parsedTrace = parsedTrace;
36
36
  }
37
37
 
38
38
  #getEntryNode(entry: Trace.Types.Events.Event): Trace.Helpers.TreeHelpers.TraceEntryNode|undefined {
39
39
  // The entry might be either from the Samples handler or Renderer handler. So we need to check both handlers to find
40
40
  // the EntryNode.
41
- return this.#parsedTrace.Samples.entryToNode.get(entry) ?? this.#parsedTrace.Renderer.entryToNode.get(entry);
41
+ return this.#parsedTrace.data.Samples.entryToNode.get(entry) ??
42
+ this.#parsedTrace.data.Renderer.entryToNode.get(entry);
42
43
  }
43
44
 
44
45
  /**
@@ -128,16 +128,16 @@ export class EventsTimelineTreeView extends TimelineTreeView {
128
128
  export class Filters extends Common.ObjectWrapper.ObjectWrapper<EventTypes> {
129
129
  private readonly categoryFilter: Category;
130
130
  private readonly durationFilter: IsLong;
131
- private readonly filtersInternal: Array<IsLong|Category>;
131
+ readonly #filters: Array<IsLong|Category>;
132
132
  constructor() {
133
133
  super();
134
134
  this.categoryFilter = new Category();
135
135
  this.durationFilter = new IsLong();
136
- this.filtersInternal = [this.categoryFilter, this.durationFilter];
136
+ this.#filters = [this.categoryFilter, this.durationFilter];
137
137
  }
138
138
 
139
139
  filters(): Trace.Extras.TraceFilter.TraceFilter[] {
140
- return this.filtersInternal;
140
+ return this.#filters;
141
141
  }
142
142
 
143
143
  populateToolbar(toolbar: UI.Toolbar.Toolbar): void {
@@ -27,9 +27,9 @@ export class GPUTrackAppender implements TrackAppender {
27
27
  readonly appenderName: TrackAppenderName = 'GPU';
28
28
 
29
29
  #compatibilityBuilder: CompatibilityTracksAppender;
30
- #parsedTrace: Readonly<Trace.Handlers.Types.ParsedTrace>;
30
+ #parsedTrace: Readonly<Trace.TraceModel.ParsedTrace>;
31
31
 
32
- constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.Handlers.Types.ParsedTrace) {
32
+ constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.TraceModel.ParsedTrace) {
33
33
  this.#compatibilityBuilder = compatibilityBuilder;
34
34
  this.#parsedTrace = parsedTrace;
35
35
  }
@@ -44,7 +44,7 @@ export class GPUTrackAppender implements TrackAppender {
44
44
  * appended the track's events.
45
45
  */
46
46
  appendTrackAtLevel(trackStartLevel: number, expanded?: boolean|undefined): number {
47
- const gpuEvents = this.#parsedTrace.GPU.mainGPUThreadTasks;
47
+ const gpuEvents = this.#parsedTrace.data.GPU.mainGPUThreadTasks;
48
48
  if (gpuEvents.length === 0) {
49
49
  return trackStartLevel;
50
50
  }
@@ -34,12 +34,12 @@ const MAX_PREDECESSOR_INITIATOR_LIMIT = 10;
34
34
  * work backwards to draw each one, as well as the events initiated directly by the entry.
35
35
  */
36
36
  export function initiatorsDataToDraw(
37
- parsedTrace: Trace.Handlers.Types.ParsedTrace, selectedEvent: Trace.Types.Events.Event,
37
+ parsedTrace: Trace.TraceModel.ParsedTrace, selectedEvent: Trace.Types.Events.Event,
38
38
  hiddenEntries: Trace.Types.Events.Event[],
39
39
  expandableEntries: Trace.Types.Events.Event[]): readonly InitiatorData[] {
40
40
  const initiatorsData = [
41
- ...findInitiatorDataPredecessors(parsedTrace, selectedEvent, parsedTrace.Initiators.eventToInitiator),
42
- ...findInitiatorDataDirectSuccessors(selectedEvent, parsedTrace.Initiators.initiatorToEvents),
41
+ ...findInitiatorDataPredecessors(parsedTrace, selectedEvent, parsedTrace.data.Initiators.eventToInitiator),
42
+ ...findInitiatorDataDirectSuccessors(selectedEvent, parsedTrace.data.Initiators.initiatorToEvents),
43
43
  ];
44
44
 
45
45
  // For each InitiatorData, call a function that makes sure that neither the initiator or initiated entry is hidden.
@@ -51,14 +51,14 @@ export function initiatorsDataToDraw(
51
51
  }
52
52
 
53
53
  export function initiatorsDataToDrawForNetwork(
54
- parsedTrace: Trace.Handlers.Types.ParsedTrace,
54
+ parsedTrace: Trace.TraceModel.ParsedTrace,
55
55
  selectedEvent: Trace.Types.Events.Event,
56
56
  ): readonly InitiatorData[] {
57
- return findInitiatorDataPredecessors(parsedTrace, selectedEvent, parsedTrace.NetworkRequests.eventToInitiator);
57
+ return findInitiatorDataPredecessors(parsedTrace, selectedEvent, parsedTrace.data.NetworkRequests.eventToInitiator);
58
58
  }
59
59
 
60
60
  function findInitiatorDataPredecessors(
61
- parsedTrace: Trace.Handlers.Types.ParsedTrace,
61
+ parsedTrace: Trace.TraceModel.ParsedTrace,
62
62
  selectedEvent: Trace.Types.Events.Event,
63
63
  eventToInitiator: Map<Trace.Types.Events.Event, Trace.Types.Events.Event>,
64
64
  ): readonly InitiatorData[] {
@@ -85,7 +85,7 @@ function findInitiatorDataPredecessors(
85
85
  continue;
86
86
  }
87
87
 
88
- const nodeForCurrentEvent = parsedTrace.Renderer.entryToNode.get(currentEvent);
88
+ const nodeForCurrentEvent = parsedTrace.data.Renderer.entryToNode.get(currentEvent);
89
89
  if (!nodeForCurrentEvent) {
90
90
  // Should not happen - if it does something odd is going
91
91
  // on so let's give up.
@@ -125,9 +125,9 @@ function findInitiatorDataDirectSuccessors(
125
125
  */
126
126
  function getClosestVisibleInitiatorEntriesAncestors(
127
127
  initiatorData: InitiatorData, expandableEntries: Trace.Types.Events.Event[],
128
- hiddenEntries: Trace.Types.Events.Event[], parsedTrace: Trace.Handlers.Types.ParsedTrace): InitiatorData {
128
+ hiddenEntries: Trace.Types.Events.Event[], parsedTrace: Trace.TraceModel.ParsedTrace): InitiatorData {
129
129
  if (hiddenEntries.includes(initiatorData.event)) {
130
- let nextParent = parsedTrace.Renderer.entryToNode.get(initiatorData.event)?.parent;
130
+ let nextParent = parsedTrace.data.Renderer.entryToNode.get(initiatorData.event)?.parent;
131
131
  while (nextParent?.entry && !expandableEntries.includes(nextParent?.entry)) {
132
132
  nextParent = nextParent.parent ?? undefined;
133
133
  }
@@ -136,7 +136,7 @@ function getClosestVisibleInitiatorEntriesAncestors(
136
136
  }
137
137
 
138
138
  if (hiddenEntries.includes(initiatorData.initiator)) {
139
- let nextParent = parsedTrace.Renderer.entryToNode.get(initiatorData.initiator)?.parent;
139
+ let nextParent = parsedTrace.data.Renderer.entryToNode.get(initiatorData.initiator)?.parent;
140
140
  while (nextParent?.entry && !expandableEntries.includes(nextParent?.entry)) {
141
141
  nextParent = nextParent.parent ?? undefined;
142
142
  }
@@ -32,10 +32,10 @@ export class InteractionsTrackAppender implements TrackAppender {
32
32
 
33
33
  #colorGenerator: Common.Color.Generator;
34
34
  #compatibilityBuilder: CompatibilityTracksAppender;
35
- #parsedTrace: Readonly<Trace.Handlers.Types.ParsedTrace>;
35
+ #parsedTrace: Readonly<Trace.TraceModel.ParsedTrace>;
36
36
 
37
37
  constructor(
38
- compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.Handlers.Types.ParsedTrace,
38
+ compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.TraceModel.ParsedTrace,
39
39
  colorGenerator: Common.Color.Generator) {
40
40
  this.#compatibilityBuilder = compatibilityBuilder;
41
41
  this.#colorGenerator = colorGenerator;
@@ -52,7 +52,7 @@ export class InteractionsTrackAppender implements TrackAppender {
52
52
  * appended the track's events.
53
53
  */
54
54
  appendTrackAtLevel(trackStartLevel: number, expanded?: boolean): number {
55
- if (this.#parsedTrace.UserInteractions.interactionEvents.length === 0) {
55
+ if (this.#parsedTrace.data.UserInteractions.interactionEvents.length === 0) {
56
56
  return trackStartLevel;
57
57
  }
58
58
  this.#appendTrackHeaderAtLevel(trackStartLevel, expanded);
@@ -69,7 +69,7 @@ export class InteractionsTrackAppender implements TrackAppender {
69
69
  * appended.
70
70
  */
71
71
  #appendTrackHeaderAtLevel(currentLevel: number, expanded?: boolean): void {
72
- const trackIsCollapsible = this.#parsedTrace.UserInteractions.interactionEvents.length > 0;
72
+ const trackIsCollapsible = this.#parsedTrace.data.UserInteractions.interactionEvents.length > 0;
73
73
  const style = buildGroupStyle({collapsible: trackIsCollapsible, useDecoratorsForOverview: true});
74
74
  const group = buildTrackHeader(
75
75
  VisualLoggingTrackName.INTERACTIONS, currentLevel, i18nString(UIStrings.interactions), style,
@@ -87,7 +87,7 @@ export class InteractionsTrackAppender implements TrackAppender {
87
87
  * interactions (the first available level to append more data).
88
88
  */
89
89
  #appendInteractionsAtLevel(trackStartLevel: number): number {
90
- const {interactionEventsWithNoNesting, interactionsOverThreshold} = this.#parsedTrace.UserInteractions;
90
+ const {interactionEventsWithNoNesting, interactionsOverThreshold} = this.#parsedTrace.data.UserInteractions;
91
91
 
92
92
  const addCandyStripeToLongInteraction =
93
93
  (event: Trace.Types.Events.SyntheticInteractionPair, index: number): void => {
@@ -51,9 +51,9 @@ export class LayoutShiftsTrackAppender implements TrackAppender {
51
51
  readonly appenderName: TrackAppenderName = 'LayoutShifts';
52
52
 
53
53
  #compatibilityBuilder: CompatibilityTracksAppender;
54
- #parsedTrace: Readonly<Trace.Handlers.Types.ParsedTrace>;
54
+ #parsedTrace: Readonly<Trace.TraceModel.ParsedTrace>;
55
55
 
56
- constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.Handlers.Types.ParsedTrace) {
56
+ constructor(compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.TraceModel.ParsedTrace) {
57
57
  this.#compatibilityBuilder = compatibilityBuilder;
58
58
  this.#parsedTrace = parsedTrace;
59
59
  }
@@ -68,7 +68,7 @@ export class LayoutShiftsTrackAppender implements TrackAppender {
68
68
  * appended the track's events.
69
69
  */
70
70
  appendTrackAtLevel(trackStartLevel: number, expanded?: boolean): number {
71
- if (this.#parsedTrace.LayoutShifts.clusters.length === 0) {
71
+ if (this.#parsedTrace.data.LayoutShifts.clusters.length === 0) {
72
72
  return trackStartLevel;
73
73
  }
74
74
  this.#appendTrackHeaderAtLevel(trackStartLevel, expanded);
@@ -101,10 +101,10 @@ export class LayoutShiftsTrackAppender implements TrackAppender {
101
101
  * layout shifts (the first available level to append more data).
102
102
  */
103
103
  #appendLayoutShiftsAtLevel(currentLevel: number): number {
104
- const allClusters = this.#parsedTrace.LayoutShifts.clusters;
104
+ const allClusters = this.#parsedTrace.data.LayoutShifts.clusters;
105
105
  this.#compatibilityBuilder.appendEventsAtLevel(allClusters, currentLevel, this);
106
106
 
107
- const allLayoutShifts = this.#parsedTrace.LayoutShifts.clusters.flatMap(cluster => cluster.events);
107
+ const allLayoutShifts = this.#parsedTrace.data.LayoutShifts.clusters.flatMap(cluster => cluster.events);
108
108
  void this.preloadScreenshots(allLayoutShifts);
109
109
  return this.#compatibilityBuilder.appendEventsAtLevel(allLayoutShifts, currentLevel, this);
110
110
  }
@@ -226,10 +226,10 @@ export class LayoutShiftsTrackAppender implements TrackAppender {
226
226
  }
227
227
 
228
228
  static createShiftViz(
229
- event: Trace.Types.Events.SyntheticLayoutShift, parsedTrace: Trace.Handlers.Types.ParsedTrace,
229
+ event: Trace.Types.Events.SyntheticLayoutShift, parsedTrace: Trace.TraceModel.ParsedTrace,
230
230
  maxSize: Geometry.Size): HTMLElement|undefined {
231
231
  const screenshots = event.parsedData.screenshots;
232
- const {viewportRect, devicePixelRatio: dpr} = parsedTrace.Meta;
232
+ const {viewportRect, devicePixelRatio: dpr} = parsedTrace.data.Meta;
233
233
  const vizContainer = document.createElement('div');
234
234
  vizContainer.classList.add('layout-shift-viz');
235
235
 
@@ -29,7 +29,7 @@ export class AnnotationModifiedEvent extends Event {
29
29
  }
30
30
 
31
31
  interface ModificationsManagerData {
32
- parsedTrace: Trace.Handlers.Types.ParsedTrace;
32
+ parsedTrace: Trace.TraceModel.ParsedTrace;
33
33
  traceBounds: Trace.Types.Timing.TraceWindowMicro;
34
34
  rawTraceEvents: readonly Trace.Types.Events.Event[];
35
35
  syntheticEvents: Trace.Types.Events.SyntheticBased[];
@@ -40,7 +40,7 @@ export class ModificationsManager extends EventTarget {
40
40
  #entriesFilter: EntriesFilter;
41
41
  #timelineBreadcrumbs: TimelineComponents.Breadcrumbs.Breadcrumbs;
42
42
  #modifications: Trace.Types.File.Modifications|null = null;
43
- #parsedTrace: Trace.Handlers.Types.ParsedTrace;
43
+ #parsedTrace: Trace.TraceModel.ParsedTrace;
44
44
  #eventsSerializer: Trace.EventsSerializer.EventsSerializer;
45
45
  #overlayForAnnotation: Map<Trace.Types.File.Annotation, Trace.Types.Overlays.Overlay>;
46
46
  readonly #annotationsHiddenSetting: Common.Settings.Setting<boolean>;
@@ -75,26 +75,19 @@ export class ModificationsManager extends EventTarget {
75
75
  activeManager = modificationsManagerByTraceIndex[traceIndex];
76
76
  ModificationsManager.activeManager()?.applyModificationsIfPresent();
77
77
  }
78
+
78
79
  const parsedTrace = traceModel.parsedTrace(traceIndex);
79
80
  if (!parsedTrace) {
80
81
  throw new Error('ModificationsManager was initialized without a corresponding trace data');
81
82
  }
82
- const traceBounds = parsedTrace.Meta.traceBounds;
83
- const traceEvents = traceModel.rawTraceEvents(traceIndex);
84
- if (!traceEvents) {
85
- throw new Error('ModificationsManager was initialized without a corresponding raw trace events array');
86
- }
87
- const syntheticEventsManager = traceModel.syntheticTraceEventsManager(traceIndex);
88
- if (!syntheticEventsManager) {
89
- throw new Error('ModificationsManager was initialized without a corresponding SyntheticEventsManager');
90
- }
91
- const metadata = traceModel.metadata(traceIndex);
83
+
84
+ const traceBounds = parsedTrace.data.Meta.traceBounds;
92
85
  const newModificationsManager = new ModificationsManager({
93
86
  parsedTrace,
94
87
  traceBounds,
95
- rawTraceEvents: traceEvents,
96
- modifications: metadata?.modifications,
97
- syntheticEvents: syntheticEventsManager.getSyntheticTraces(),
88
+ rawTraceEvents: parsedTrace.traceEvents,
89
+ modifications: parsedTrace.metadata.modifications,
90
+ syntheticEvents: parsedTrace.syntheticEventsManager.getSyntheticTraces(),
98
91
  });
99
92
  modificationsManagerByTraceIndex[traceIndex] = newModificationsManager;
100
93
  activeManager = newModificationsManager;
@@ -11,9 +11,9 @@ import type * as Trace from '../../models/trace/trace.js';
11
11
  * page's target.
12
12
  **/
13
13
  export function targetForEvent(
14
- parsedTrace: Trace.Handlers.Types.ParsedTrace, event: Trace.Types.Events.Event): SDK.Target.Target|null {
14
+ parsedTrace: Trace.TraceModel.ParsedTrace, event: Trace.Types.Events.Event): SDK.Target.Target|null {
15
15
  const targetManager = SDK.TargetManager.TargetManager.instance();
16
- const workerId = parsedTrace.Workers.workerIdByThread.get(event.tid);
16
+ const workerId = parsedTrace.data.Workers.workerIdByThread.get(event.tid);
17
17
  if (workerId) {
18
18
  return targetManager.targetById(workerId);
19
19
  }
@@ -59,7 +59,7 @@ export class ThirdPartyTreeViewWidget extends TimelineTreeView.TimelineTreeView
59
59
  }
60
60
 
61
61
  override setModelWithEvents(
62
- selectedEvents: Trace.Types.Events.Event[]|null, parsedTrace?: Trace.Handlers.Types.ParsedTrace|null,
62
+ selectedEvents: Trace.Types.Events.Event[]|null, parsedTrace?: Trace.TraceModel.ParsedTrace|null,
63
63
  entityMappings?: Utils.EntityMapper.EntityMapper|null): void {
64
64
  super.setModelWithEvents(selectedEvents, parsedTrace, entityMappings);
65
65