chrome-devtools-frontend 1.0.1506453 → 1.0.1510180

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 (1613) hide show
  1. package/config/owner/COMMON_OWNERS +1 -0
  2. package/eslint.config.mjs +39 -5
  3. package/front_end/Images/src/gdp-logo-standalone.svg +9 -0
  4. package/front_end/core/host/AidaClient.ts +26 -0
  5. package/front_end/core/host/GdpClient.ts +151 -0
  6. package/front_end/core/host/InspectorFrontendHost.ts +7 -0
  7. package/front_end/core/host/InspectorFrontendHostAPI.ts +29 -1
  8. package/front_end/core/host/UserMetrics.ts +0 -25
  9. package/front_end/core/host/host.ts +2 -0
  10. package/front_end/core/root/Runtime.ts +15 -1
  11. package/front_end/core/sdk/CSSMatchedStyles.ts +183 -48
  12. package/front_end/core/sdk/CSSPropertyParser.ts +7 -7
  13. package/front_end/core/sdk/CSSPropertyParserMatchers.ts +175 -37
  14. package/front_end/core/sdk/CSSStyleSheetHeader.ts +5 -0
  15. package/front_end/core/sdk/DOMModel.ts +58 -0
  16. package/front_end/core/sdk/FrameAssociated.ts +4 -1
  17. package/front_end/core/sdk/Script.ts +5 -1
  18. package/front_end/core/sdk/SourceMap.ts +10 -2
  19. package/front_end/core/sdk/SourceMapCache.ts +54 -0
  20. package/front_end/core/sdk/SourceMapManager.ts +20 -7
  21. package/front_end/core/sdk/sdk.ts +2 -0
  22. package/front_end/devtools_compatibility.js +0 -1
  23. package/front_end/entrypoints/main/GlobalAiButton.ts +71 -1
  24. package/front_end/entrypoints/main/MainImpl.ts +6 -27
  25. package/front_end/entrypoints/main/globalAiButton.css +1 -1
  26. package/front_end/entrypoints/main/main-meta.ts +15 -0
  27. package/front_end/generated/InspectorBackendCommands.js +3 -2
  28. package/front_end/generated/SupportedCSSProperties.js +23 -7
  29. package/front_end/generated/protocol-mapping.d.ts +8 -1
  30. package/front_end/generated/protocol-proxy-api.d.ts +6 -1
  31. package/front_end/generated/protocol.ts +17 -4
  32. package/front_end/models/ai_assistance/ConversationHandler.ts +34 -54
  33. package/front_end/models/ai_assistance/ExtensionScope.ts +3 -12
  34. package/front_end/models/ai_assistance/README.md +1 -1
  35. package/front_end/models/ai_assistance/agents/AiAgent.ts +1 -3
  36. package/front_end/models/ai_assistance/agents/FileAgent.ts +0 -6
  37. package/front_end/models/ai_assistance/agents/NetworkAgent.ts +16 -15
  38. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +32 -16
  39. package/front_end/models/ai_assistance/agents/StylingAgent.ts +199 -23
  40. package/front_end/models/ai_assistance/ai_assistance.ts +2 -0
  41. package/front_end/models/ai_assistance/data_formatters/FileFormatter.ts +4 -1
  42. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +8 -5
  43. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +248 -83
  44. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +303 -94
  45. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +442 -93
  46. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +35 -17
  47. package/front_end/models/ai_assistance/data_formatters/Types.ts +9 -0
  48. package/front_end/models/ai_code_completion/AiCodeCompletion.ts +114 -2
  49. package/front_end/models/autofill_manager/AutofillManager.ts +0 -11
  50. package/front_end/models/bindings/DebuggerLanguagePlugins.ts +64 -6
  51. package/front_end/models/bindings/ResourceScriptMapping.ts +6 -0
  52. package/front_end/models/emulation/DeviceModeModel.ts +13 -14
  53. package/front_end/models/extensions/ExtensionPanel.ts +6 -6
  54. package/front_end/models/extensions/ExtensionServer.ts +2 -0
  55. package/front_end/models/extensions/ExtensionView.ts +4 -0
  56. package/front_end/{ui/legacy/Geometry.ts → models/geometry/GeometryImpl.ts} +4 -4
  57. package/front_end/models/geometry/geometry.ts +5 -0
  58. package/front_end/models/javascript_metadata/NativeFunctions.js +4 -4
  59. package/front_end/models/network_time_calculator/Calculator.ts +14 -0
  60. package/front_end/{panels/network → models/network_time_calculator}/NetworkTimeCalculator.ts +4 -4
  61. package/front_end/models/network_time_calculator/network_time_calculator.ts +6 -0
  62. package/front_end/models/persistence/EditFileSystemView.ts +4 -0
  63. package/front_end/models/persistence/NetworkPersistenceManager.ts +2 -0
  64. package/front_end/models/persistence/PersistenceActions.ts +2 -0
  65. package/front_end/models/persistence/PersistenceUtils.ts +2 -0
  66. package/front_end/models/persistence/WorkspaceSettingsTab.ts +6 -0
  67. package/front_end/models/persistence/persistence-meta.ts +2 -0
  68. package/front_end/models/stack_trace/StackTrace.ts +18 -0
  69. package/front_end/models/stack_trace/StackTraceImpl.ts +4 -1
  70. package/front_end/models/stack_trace/StackTraceModel.ts +4 -3
  71. package/front_end/models/trace/ModelImpl.ts +2 -1
  72. package/front_end/models/trace/Processor.ts +3 -30
  73. package/front_end/models/trace/handlers/AnimationFramesHandler.ts +10 -11
  74. package/front_end/models/trace/handlers/AnimationHandler.ts +4 -4
  75. package/front_end/models/trace/handlers/AsyncJSCallsHandler.ts +8 -9
  76. package/front_end/models/trace/handlers/AuctionWorkletsHandler.ts +10 -10
  77. package/front_end/models/trace/handlers/DOMStatsHandler.ts +2 -2
  78. package/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +59 -51
  79. package/front_end/models/trace/handlers/FlowsHandler.ts +10 -10
  80. package/front_end/models/trace/handlers/FramesHandler.ts +2 -2
  81. package/front_end/models/trace/handlers/GPUHandler.ts +2 -2
  82. package/front_end/models/trace/handlers/ImagePaintingHandler.ts +12 -12
  83. package/front_end/models/trace/handlers/InitiatorsHandler.ts +18 -20
  84. package/front_end/models/trace/handlers/InvalidationsHandler.ts +6 -6
  85. package/front_end/models/trace/handlers/LargestImagePaintHandler.ts +4 -3
  86. package/front_end/models/trace/handlers/LargestTextPaintHandler.ts +2 -2
  87. package/front_end/models/trace/handlers/LayerTreeHandler.ts +10 -10
  88. package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +28 -28
  89. package/front_end/models/trace/handlers/MemoryHandler.ts +2 -2
  90. package/front_end/models/trace/handlers/MetaHandler.ts +18 -18
  91. package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +25 -23
  92. package/front_end/models/trace/handlers/PageFramesHandler.ts +2 -2
  93. package/front_end/models/trace/handlers/PageLoadMetricsHandler.ts +5 -5
  94. package/front_end/models/trace/handlers/RendererHandler.ts +18 -18
  95. package/front_end/models/trace/handlers/SamplesHandler.ts +6 -9
  96. package/front_end/models/trace/handlers/ScreenshotsHandler.ts +8 -8
  97. package/front_end/models/trace/handlers/ScriptsHandler.ts +2 -2
  98. package/front_end/models/trace/handlers/SelectorStatsHandler.ts +4 -4
  99. package/front_end/models/trace/handlers/UserInteractionsHandler.ts +14 -14
  100. package/front_end/models/trace/handlers/UserTimingsHandler.ts +10 -10
  101. package/front_end/models/trace/handlers/WarningsHandler.ts +12 -12
  102. package/front_end/models/trace/handlers/WorkersHandler.ts +6 -6
  103. package/front_end/models/trace/helpers/Extensions.ts +10 -10
  104. package/front_end/models/trace/helpers/Trace.ts +3 -3
  105. package/front_end/models/trace/insights/ForcedReflow.ts +4 -0
  106. package/front_end/models/trace/insights/NetworkDependencyTree.ts +4 -0
  107. package/front_end/models/trace/insights/ThirdParties.ts +4 -0
  108. package/front_end/models/trace/types/Extensions.ts +27 -17
  109. package/front_end/models/trace/types/Overlays.ts +1 -3
  110. package/front_end/models/trace/types/TraceEvents.ts +2 -5
  111. package/front_end/models/workspace/FileManager.ts +1 -0
  112. package/front_end/panels/accessibility/ARIAAttributesView.ts +2 -60
  113. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +22 -4
  114. package/front_end/panels/ai_assistance/PatchWidget.ts +1 -1
  115. package/front_end/panels/ai_assistance/SelectWorkspaceDialog.ts +2 -1
  116. package/front_end/panels/ai_assistance/ai_assistance-meta.ts +9 -9
  117. package/front_end/panels/ai_assistance/components/ChatView.ts +44 -2
  118. package/front_end/panels/animation/AnimationUI.ts +2 -1
  119. package/front_end/panels/application/KeyValueStorageItemsView.ts +2 -1
  120. package/front_end/panels/application/components/BackForwardCacheStrings.ts +9 -9
  121. package/front_end/panels/autofill/AutofillView.ts +15 -10
  122. package/front_end/panels/browser_debugger/CSPViolationBreakpointsSidebarPane.ts +5 -6
  123. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +174 -272
  124. package/front_end/panels/browser_debugger/EventListenerBreakpointsSidebarPane.ts +9 -6
  125. package/front_end/panels/browser_debugger/categorizedBreakpointsSidebarPane.css +1 -1
  126. package/front_end/panels/common/BadgeNotification.ts +121 -0
  127. package/front_end/panels/common/FreDialog.ts +4 -3
  128. package/front_end/panels/common/badgeNotification.css +74 -0
  129. package/front_end/panels/common/common.ts +3 -1
  130. package/front_end/panels/console/ConsolePrompt.ts +2 -3
  131. package/front_end/panels/console/ConsoleView.ts +8 -8
  132. package/front_end/panels/console/ConsoleViewMessage.ts +14 -13
  133. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +2 -1
  134. package/front_end/panels/elements/CSSRuleValidator.ts +0 -57
  135. package/front_end/panels/elements/ElementsTreeElement.ts +12 -4
  136. package/front_end/panels/elements/ElementsTreeOutlineRenderer.ts +8 -5
  137. package/front_end/panels/elements/PropertyRenderer.ts +1 -1
  138. package/front_end/panels/elements/StylePropertyTreeElement.ts +110 -9
  139. package/front_end/panels/emulation/DeviceModeView.ts +6 -5
  140. package/front_end/panels/layer_viewer/Layers3DView.ts +9 -9
  141. package/front_end/panels/layers/LayerTreeModel.ts +5 -5
  142. package/front_end/panels/lighthouse/LighthouseStatusView.ts +2 -1
  143. package/front_end/panels/lighthouse/LighthouseTimespanView.ts +2 -1
  144. package/front_end/panels/media/MainView.ts +48 -18
  145. package/front_end/panels/media/MediaModel.ts +4 -4
  146. package/front_end/panels/media/PlayerListView.ts +7 -0
  147. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +2 -2
  148. package/front_end/panels/network/NetworkDataGridNode.ts +4 -5
  149. package/front_end/panels/network/NetworkItemView.ts +2 -2
  150. package/front_end/panels/network/NetworkLogView.ts +10 -15
  151. package/front_end/panels/network/NetworkLogViewColumns.ts +6 -8
  152. package/front_end/panels/network/NetworkOverview.ts +6 -4
  153. package/front_end/panels/network/NetworkPanel.ts +5 -5
  154. package/front_end/panels/network/NetworkWaterfallColumn.ts +5 -5
  155. package/front_end/panels/network/RequestTimingView.ts +7 -6
  156. package/front_end/panels/network/network.ts +1 -3
  157. package/front_end/panels/profiler/HeapTimelineOverview.ts +2 -1
  158. package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +2 -1
  159. package/front_end/panels/sensors/SensorsView.ts +10 -9
  160. package/front_end/panels/settings/AISettingsTab.ts +2 -2
  161. package/front_end/panels/settings/SettingsScreen.ts +19 -9
  162. package/front_end/panels/settings/components/SyncSection.ts +136 -3
  163. package/front_end/panels/settings/components/syncSection.css +54 -0
  164. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +26 -9
  165. package/front_end/panels/sources/CSSPlugin.ts +5 -4
  166. package/front_end/panels/timeline/CountersGraph.ts +1 -1
  167. package/front_end/panels/timeline/ExtensionTrackAppender.ts +2 -2
  168. package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +3 -3
  169. package/front_end/panels/timeline/TimelineDetailsView.ts +41 -26
  170. package/front_end/panels/timeline/TimelinePaintProfilerView.ts +2 -1
  171. package/front_end/panels/timeline/TimelinePanel.ts +58 -59
  172. package/front_end/panels/timeline/TimelineUIUtils.ts +89 -20
  173. package/front_end/panels/timeline/TimingsTrackAppender.ts +10 -7
  174. package/front_end/panels/timeline/components/insights/CLSCulprits.ts +1 -11
  175. package/front_end/panels/timeline/components/insights/ForcedReflow.ts +4 -0
  176. package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +2 -3
  177. package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +4 -0
  178. package/front_end/panels/timeline/components/insights/ThirdParties.ts +4 -0
  179. package/front_end/panels/timeline/extensions/ExtensionUI.ts +1 -1
  180. package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +1 -1
  181. package/front_end/panels/timeline/overlays/components/TimespanBreakdownOverlay.ts +3 -12
  182. package/front_end/panels/timeline/utils/AIContext.ts +14 -1
  183. package/front_end/panels/whats_new/ReleaseNoteText.ts +11 -11
  184. package/front_end/panels/whats_new/resources/WNDT.md +6 -6
  185. package/front_end/services/tracing/tracing.ts +0 -2
  186. package/front_end/tsconfig.json +1 -0
  187. package/front_end/ui/components/buttons/button.css +4 -0
  188. package/front_end/ui/components/highlighting/HighlightManager.ts +19 -9
  189. package/front_end/ui/legacy/ARIAUtils.ts +1 -1
  190. package/front_end/ui/legacy/DockController.ts +1 -1
  191. package/front_end/ui/legacy/GlassPane.ts +2 -1
  192. package/front_end/ui/legacy/InspectorView.ts +41 -14
  193. package/front_end/ui/legacy/ResizerWidget.ts +45 -50
  194. package/front_end/ui/legacy/SoftDropDown.ts +2 -2
  195. package/front_end/ui/legacy/SplitWidget.ts +341 -357
  196. package/front_end/ui/legacy/SuggestBox.ts +2 -2
  197. package/front_end/ui/legacy/TabbedPane.ts +5 -5
  198. package/front_end/ui/legacy/Treeoutline.ts +227 -32
  199. package/front_end/ui/legacy/UIUtils.ts +72 -17
  200. package/front_end/ui/legacy/Widget.ts +15 -14
  201. package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +6 -14
  202. package/front_end/ui/legacy/components/inline_editor/AnimationTimingModel.ts +3 -3
  203. package/front_end/ui/legacy/components/inline_editor/AnimationTimingUI.ts +15 -14
  204. package/front_end/ui/legacy/components/inline_editor/BezierUI.ts +6 -5
  205. package/front_end/ui/legacy/components/inline_editor/CSSAngleUtils.ts +7 -6
  206. package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.ts +13 -12
  207. package/front_end/ui/legacy/components/object_ui/ObjectPopoverHelper.ts +2 -1
  208. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -11
  209. package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -2
  210. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +7 -5
  211. package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +3 -13
  212. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.ts +2 -3
  213. package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +2 -1
  214. package/front_end/ui/legacy/components/source_frame/XMLView.ts +268 -295
  215. package/front_end/ui/legacy/components/source_frame/xmlTree.css +10 -8
  216. package/front_end/ui/legacy/components/source_frame/xmlView.css +3 -1
  217. package/front_end/ui/legacy/inspectorCommon.css +3 -2
  218. package/front_end/ui/legacy/legacy.ts +0 -2
  219. package/front_end/ui/visual_logging/KnownContextValues.ts +8 -4
  220. package/package.json +2 -2
  221. package/.gemini/commands/migrate-e2e-non-hosted.toml +0 -43
  222. package/.gemini/commands/review.toml +0 -85
  223. package/.github/workflows/auto-close-prs.yml +0 -30
  224. package/.vscode/devtools-workspace-launch.json +0 -43
  225. package/.vscode/devtools-workspace-settings.json +0 -12
  226. package/.vscode/devtools-workspace-tasks.json +0 -66
  227. package/.vscode/extensions.json +0 -3
  228. package/codereview.settings +0 -4
  229. package/config/gni/devtools_grd_files.gni +0 -2646
  230. package/config/gni/devtools_image_files.gni +0 -309
  231. package/config/gni/i18n.gni +0 -115
  232. package/extensions/cxx_debugging/CMakeLists.txt +0 -162
  233. package/extensions/cxx_debugging/README.md +0 -81
  234. package/extensions/cxx_debugging/e2e/MochaRootHooks.ts +0 -110
  235. package/extensions/cxx_debugging/e2e/OptionsPageTests.ts +0 -36
  236. package/extensions/cxx_debugging/e2e/StandaloneTestDriver.ts +0 -20
  237. package/extensions/cxx_debugging/e2e/TestDriver.ts +0 -311
  238. package/extensions/cxx_debugging/e2e/cxx-debugging-extension-helpers.ts +0 -62
  239. package/extensions/cxx_debugging/e2e/resources/huge-source-file.cc +0 -29
  240. package/extensions/cxx_debugging/e2e/resources/pointers.cc +0 -40
  241. package/extensions/cxx_debugging/e2e/resources/scope-view-non-primitives.c +0 -30
  242. package/extensions/cxx_debugging/e2e/resources/scope-view-non-primitives.cpp +0 -49
  243. package/extensions/cxx_debugging/e2e/resources/scope-view-primitives.c +0 -19
  244. package/extensions/cxx_debugging/e2e/resources/stepping-with-state.c +0 -31
  245. package/extensions/cxx_debugging/e2e/resources/test_wasm_simd.c +0 -13
  246. package/extensions/cxx_debugging/e2e/resources/vector.cc +0 -14
  247. package/extensions/cxx_debugging/e2e/resources/wchar.cc +0 -22
  248. package/extensions/cxx_debugging/e2e/runner.py +0 -542
  249. package/extensions/cxx_debugging/e2e/runner.py.vpython +0 -5
  250. package/extensions/cxx_debugging/e2e/runner.py.vpython3 +0 -5
  251. package/extensions/cxx_debugging/e2e/standalone/MemoryInspector_test.ts +0 -59
  252. package/extensions/cxx_debugging/e2e/tests/cpp_eval.yaml +0 -37
  253. package/extensions/cxx_debugging/e2e/tests/pointer.yaml +0 -42
  254. package/extensions/cxx_debugging/e2e/tests/scope_view_non_primitives.yaml +0 -35
  255. package/extensions/cxx_debugging/e2e/tests/scope_view_non_primitives_cpp.yaml +0 -44
  256. package/extensions/cxx_debugging/e2e/tests/scope_view_primitives.yaml +0 -31
  257. package/extensions/cxx_debugging/e2e/tests/stepping_with_state.yaml +0 -64
  258. package/extensions/cxx_debugging/e2e/tests/string_view.yaml +0 -32
  259. package/extensions/cxx_debugging/e2e/tests/test_big_dwo.yaml +0 -21
  260. package/extensions/cxx_debugging/e2e/tests/test_linear_memory_inspector.yaml +0 -11
  261. package/extensions/cxx_debugging/e2e/tests/test_loop.yaml +0 -34
  262. package/extensions/cxx_debugging/e2e/tests/test_wasm_simd.yaml +0 -42
  263. package/extensions/cxx_debugging/e2e/tests/vector.yaml +0 -26
  264. package/extensions/cxx_debugging/e2e/tests/wchar.yaml +0 -52
  265. package/extensions/cxx_debugging/e2e/tsconfig.json +0 -24
  266. package/extensions/cxx_debugging/lib/ApiContext.cc +0 -627
  267. package/extensions/cxx_debugging/lib/ApiContext.h +0 -119
  268. package/extensions/cxx_debugging/lib/CMakeLists.txt +0 -53
  269. package/extensions/cxx_debugging/lib/Expressions.cc +0 -303
  270. package/extensions/cxx_debugging/lib/Expressions.h +0 -53
  271. package/extensions/cxx_debugging/lib/Variables.cc +0 -101
  272. package/extensions/cxx_debugging/lib/Variables.h +0 -65
  273. package/extensions/cxx_debugging/lib/WasmModule.cc +0 -573
  274. package/extensions/cxx_debugging/lib/WasmModule.h +0 -126
  275. package/extensions/cxx_debugging/lib/WasmVendorPlugins.cc +0 -172
  276. package/extensions/cxx_debugging/lib/WasmVendorPlugins.h +0 -329
  277. package/extensions/cxx_debugging/lib/api.h +0 -593
  278. package/extensions/cxx_debugging/lib/api.h.in +0 -86
  279. package/extensions/cxx_debugging/src/CMakeLists.txt +0 -158
  280. package/extensions/cxx_debugging/src/CreditsItem.ts +0 -126
  281. package/extensions/cxx_debugging/src/CustomFormatters.ts +0 -689
  282. package/extensions/cxx_debugging/src/DWARFSymbols.ts +0 -613
  283. package/extensions/cxx_debugging/src/DevToolsPlugin.html +0 -7
  284. package/extensions/cxx_debugging/src/DevToolsPluginForTests.html +0 -6
  285. package/extensions/cxx_debugging/src/DevToolsPluginHost.ts +0 -145
  286. package/extensions/cxx_debugging/src/DevToolsPluginWorker.ts +0 -120
  287. package/extensions/cxx_debugging/src/DevToolsPluginWorkerMain.ts +0 -9
  288. package/extensions/cxx_debugging/src/ExtensionOptions.html +0 -24
  289. package/extensions/cxx_debugging/src/ExtensionOptions.ts +0 -705
  290. package/extensions/cxx_debugging/src/Formatters.ts +0 -282
  291. package/extensions/cxx_debugging/src/GlobMatch.ts +0 -51
  292. package/extensions/cxx_debugging/src/MEMFSResourceLoader.ts +0 -102
  293. package/extensions/cxx_debugging/src/ModuleConfiguration.ts +0 -117
  294. package/extensions/cxx_debugging/src/ModuleConfigurationList.ts +0 -239
  295. package/extensions/cxx_debugging/src/SymbolsBackend.cc +0 -262
  296. package/extensions/cxx_debugging/src/SymbolsBackend.cc.in +0 -139
  297. package/extensions/cxx_debugging/src/SymbolsBackend.d.ts +0 -179
  298. package/extensions/cxx_debugging/src/SymbolsBackend.d.ts.in +0 -108
  299. package/extensions/cxx_debugging/src/TestDriver.js +0 -21
  300. package/extensions/cxx_debugging/src/WasmTypes.ts +0 -119
  301. package/extensions/cxx_debugging/src/WorkerRPC.ts +0 -158
  302. package/extensions/cxx_debugging/src/index.html +0 -69
  303. package/extensions/cxx_debugging/src/manifest.json.in +0 -22
  304. package/extensions/cxx_debugging/src/rollup.config.in.js +0 -33
  305. package/extensions/cxx_debugging/tests/CMakeLists.txt +0 -146
  306. package/extensions/cxx_debugging/tests/CreditsItem_test.ts +0 -50
  307. package/extensions/cxx_debugging/tests/CustomFormatters_test.ts +0 -307
  308. package/extensions/cxx_debugging/tests/DevToolsPluginTestWorker.ts +0 -43
  309. package/extensions/cxx_debugging/tests/DevToolsPlugin_test.ts +0 -345
  310. package/extensions/cxx_debugging/tests/Externref_test.ts +0 -63
  311. package/extensions/cxx_debugging/tests/Formatters_test.ts +0 -284
  312. package/extensions/cxx_debugging/tests/GlobMatch_test.ts +0 -58
  313. package/extensions/cxx_debugging/tests/Interpreter_test.ts +0 -219
  314. package/extensions/cxx_debugging/tests/LLDBEvalExtensions.h +0 -154
  315. package/extensions/cxx_debugging/tests/LLDBEvalTests.d.ts +0 -24
  316. package/extensions/cxx_debugging/tests/ModuleConfiguration_test.ts +0 -136
  317. package/extensions/cxx_debugging/tests/RealBackend.ts +0 -482
  318. package/extensions/cxx_debugging/tests/SymbolsBackendTests.d.ts +0 -12
  319. package/extensions/cxx_debugging/tests/SymbolsBackend_test.ts +0 -39
  320. package/extensions/cxx_debugging/tests/TestUtils.ts +0 -250
  321. package/extensions/cxx_debugging/tests/WasmModule_test.cc +0 -332
  322. package/extensions/cxx_debugging/tests/build-artifacts.js.in +0 -10
  323. package/extensions/cxx_debugging/tests/inputs/CMakeLists.txt +0 -141
  324. package/extensions/cxx_debugging/tests/inputs/addr_index.s +0 -97
  325. package/extensions/cxx_debugging/tests/inputs/addresses.cc +0 -25
  326. package/extensions/cxx_debugging/tests/inputs/classstatic.s +0 -119
  327. package/extensions/cxx_debugging/tests/inputs/dw_opcodes.def +0 -66
  328. package/extensions/cxx_debugging/tests/inputs/embedded.s +0 -124
  329. package/extensions/cxx_debugging/tests/inputs/enums.s +0 -376
  330. package/extensions/cxx_debugging/tests/inputs/externref.js +0 -22
  331. package/extensions/cxx_debugging/tests/inputs/externref.s +0 -207
  332. package/extensions/cxx_debugging/tests/inputs/globals.s +0 -443
  333. package/extensions/cxx_debugging/tests/inputs/hello-split-missing-dwo.s +0 -92
  334. package/extensions/cxx_debugging/tests/inputs/hello-split.s +0 -134
  335. package/extensions/cxx_debugging/tests/inputs/hello.s +0 -70
  336. package/extensions/cxx_debugging/tests/inputs/helper.s +0 -130
  337. package/extensions/cxx_debugging/tests/inputs/inline.s +0 -196
  338. package/extensions/cxx_debugging/tests/inputs/namespaces.s +0 -207
  339. package/extensions/cxx_debugging/tests/inputs/page.html +0 -6
  340. package/extensions/cxx_debugging/tests/inputs/page.js +0 -35
  341. package/extensions/cxx_debugging/tests/inputs/shadowing.s +0 -121
  342. package/extensions/cxx_debugging/tests/inputs/split-dwarf.s +0 -126
  343. package/extensions/cxx_debugging/tests/inputs/string_view.cc +0 -40
  344. package/extensions/cxx_debugging/tests/inputs/windows_paths.s +0 -70
  345. package/extensions/cxx_debugging/tests/karma.conf.in.js +0 -133
  346. package/extensions/cxx_debugging/tests/karma_preload.html +0 -12
  347. package/extensions/cxx_debugging/third_party/.clang-format +0 -1
  348. package/extensions/cxx_debugging/third_party/lit-html/CHANGELOG.md +0 -247
  349. package/extensions/cxx_debugging/third_party/lit-html/LICENSE +0 -28
  350. package/extensions/cxx_debugging/third_party/lit-html/README.chromium +0 -13
  351. package/extensions/cxx_debugging/third_party/lit-html/README.md +0 -47
  352. package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.d.ts +0 -33
  353. package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.d.ts.map +0 -1
  354. package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.js +0 -108
  355. package/extensions/cxx_debugging/third_party/lit-html/directives/async-append.js.map +0 -1
  356. package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.d.ts +0 -34
  357. package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.d.ts.map +0 -1
  358. package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.js +0 -91
  359. package/extensions/cxx_debugging/third_party/lit-html/directives/async-replace.js.map +0 -1
  360. package/extensions/cxx_debugging/third_party/lit-html/directives/cache.d.ts +0 -30
  361. package/extensions/cxx_debugging/third_party/lit-html/directives/cache.d.ts.map +0 -1
  362. package/extensions/cxx_debugging/third_party/lit-html/directives/cache.js +0 -77
  363. package/extensions/cxx_debugging/third_party/lit-html/directives/cache.js.map +0 -1
  364. package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.d.ts +0 -28
  365. package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.d.ts.map +0 -1
  366. package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.js +0 -101
  367. package/extensions/cxx_debugging/third_party/lit-html/directives/class-map.js.map +0 -1
  368. package/extensions/cxx_debugging/third_party/lit-html/directives/guard.d.ts +0 -49
  369. package/extensions/cxx_debugging/third_party/lit-html/directives/guard.d.ts.map +0 -1
  370. package/extensions/cxx_debugging/third_party/lit-html/directives/guard.js +0 -69
  371. package/extensions/cxx_debugging/third_party/lit-html/directives/guard.js.map +0 -1
  372. package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.d.ts +0 -22
  373. package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.d.ts.map +0 -1
  374. package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.js +0 -37
  375. package/extensions/cxx_debugging/third_party/lit-html/directives/if-defined.js.map +0 -1
  376. package/extensions/cxx_debugging/third_party/lit-html/directives/live.d.ts +0 -38
  377. package/extensions/cxx_debugging/third_party/lit-html/directives/live.d.ts.map +0 -1
  378. package/extensions/cxx_debugging/third_party/lit-html/directives/live.js +0 -73
  379. package/extensions/cxx_debugging/third_party/lit-html/directives/live.js.map +0 -1
  380. package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.d.ts +0 -37
  381. package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.d.ts.map +0 -1
  382. package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.js +0 -415
  383. package/extensions/cxx_debugging/third_party/lit-html/directives/repeat.js.map +0 -1
  384. package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.d.ts +0 -36
  385. package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.d.ts.map +0 -1
  386. package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.js +0 -78
  387. package/extensions/cxx_debugging/third_party/lit-html/directives/style-map.js.map +0 -1
  388. package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.d.ts +0 -23
  389. package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.d.ts.map +0 -1
  390. package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.js +0 -41
  391. package/extensions/cxx_debugging/third_party/lit-html/directives/template-content.js.map +0 -1
  392. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.d.ts +0 -23
  393. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.d.ts.map +0 -1
  394. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.js +0 -44
  395. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-html.js.map +0 -1
  396. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.d.ts +0 -23
  397. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.d.ts.map +0 -1
  398. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.js +0 -61
  399. package/extensions/cxx_debugging/third_party/lit-html/directives/unsafe-svg.js.map +0 -1
  400. package/extensions/cxx_debugging/third_party/lit-html/directives/until.d.ts +0 -35
  401. package/extensions/cxx_debugging/third_party/lit-html/directives/until.d.ts.map +0 -1
  402. package/extensions/cxx_debugging/third_party/lit-html/directives/until.js +0 -86
  403. package/extensions/cxx_debugging/third_party/lit-html/directives/until.js.map +0 -1
  404. package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.d.ts +0 -39
  405. package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.d.ts.map +0 -1
  406. package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.js +0 -52
  407. package/extensions/cxx_debugging/third_party/lit-html/lib/default-template-processor.js.map +0 -1
  408. package/extensions/cxx_debugging/third_party/lit-html/lib/directive.d.ts +0 -59
  409. package/extensions/cxx_debugging/third_party/lit-html/lib/directive.d.ts.map +0 -1
  410. package/extensions/cxx_debugging/third_party/lit-html/lib/directive.js +0 -63
  411. package/extensions/cxx_debugging/third_party/lit-html/lib/directive.js.map +0 -1
  412. package/extensions/cxx_debugging/third_party/lit-html/lib/dom.d.ts +0 -29
  413. package/extensions/cxx_debugging/third_party/lit-html/lib/dom.d.ts.map +0 -1
  414. package/extensions/cxx_debugging/third_party/lit-html/lib/dom.js +0 -44
  415. package/extensions/cxx_debugging/third_party/lit-html/lib/dom.js.map +0 -1
  416. package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.d.ts +0 -38
  417. package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.d.ts.map +0 -1
  418. package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.js +0 -125
  419. package/extensions/cxx_debugging/third_party/lit-html/lib/modify-template.js.map +0 -1
  420. package/extensions/cxx_debugging/third_party/lit-html/lib/part.d.ts +0 -46
  421. package/extensions/cxx_debugging/third_party/lit-html/lib/part.d.ts.map +0 -1
  422. package/extensions/cxx_debugging/third_party/lit-html/lib/part.js +0 -23
  423. package/extensions/cxx_debugging/third_party/lit-html/lib/part.js.map +0 -1
  424. package/extensions/cxx_debugging/third_party/lit-html/lib/parts.d.ts +0 -148
  425. package/extensions/cxx_debugging/third_party/lit-html/lib/parts.d.ts.map +0 -1
  426. package/extensions/cxx_debugging/third_party/lit-html/lib/parts.js +0 -476
  427. package/extensions/cxx_debugging/third_party/lit-html/lib/parts.js.map +0 -1
  428. package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.d.ts +0 -19
  429. package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.d.ts.map +0 -1
  430. package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.js +0 -14
  431. package/extensions/cxx_debugging/third_party/lit-html/lib/render-options.js.map +0 -1
  432. package/extensions/cxx_debugging/third_party/lit-html/lib/render.d.ts +0 -33
  433. package/extensions/cxx_debugging/third_party/lit-html/lib/render.d.ts.map +0 -1
  434. package/extensions/cxx_debugging/third_party/lit-html/lib/render.js +0 -43
  435. package/extensions/cxx_debugging/third_party/lit-html/lib/render.js.map +0 -1
  436. package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.d.ts +0 -83
  437. package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.d.ts.map +0 -1
  438. package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.js +0 -286
  439. package/extensions/cxx_debugging/third_party/lit-html/lib/shady-render.js.map +0 -1
  440. package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.d.ts +0 -57
  441. package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.d.ts.map +0 -1
  442. package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.js +0 -48
  443. package/extensions/cxx_debugging/third_party/lit-html/lib/template-factory.js.map +0 -1
  444. package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.d.ts +0 -30
  445. package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.d.ts.map +0 -1
  446. package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.js +0 -134
  447. package/extensions/cxx_debugging/third_party/lit-html/lib/template-instance.js.map +0 -1
  448. package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.d.ts +0 -46
  449. package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.d.ts.map +0 -1
  450. package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.js +0 -14
  451. package/extensions/cxx_debugging/third_party/lit-html/lib/template-processor.js.map +0 -1
  452. package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.d.ts +0 -42
  453. package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.d.ts.map +0 -1
  454. package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.js +0 -131
  455. package/extensions/cxx_debugging/third_party/lit-html/lib/template-result.js.map +0 -1
  456. package/extensions/cxx_debugging/third_party/lit-html/lib/template.d.ts +0 -92
  457. package/extensions/cxx_debugging/third_party/lit-html/lib/template.d.ts.map +0 -1
  458. package/extensions/cxx_debugging/third_party/lit-html/lib/template.js +0 -215
  459. package/extensions/cxx_debugging/third_party/lit-html/lib/template.js.map +0 -1
  460. package/extensions/cxx_debugging/third_party/lit-html/lit-html.d.ts +0 -42
  461. package/extensions/cxx_debugging/third_party/lit-html/lit-html.d.ts.map +0 -1
  462. package/extensions/cxx_debugging/third_party/lit-html/lit-html.js +0 -59
  463. package/extensions/cxx_debugging/third_party/lit-html/lit-html.js.map +0 -1
  464. package/extensions/cxx_debugging/third_party/lit-html/package.json +0 -84
  465. package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.d.ts +0 -24
  466. package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.d.ts.map +0 -1
  467. package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.js +0 -60
  468. package/extensions/cxx_debugging/third_party/lit-html/polyfills/template_polyfill.js.map +0 -1
  469. package/extensions/cxx_debugging/third_party/lit-html/src/directives/async-append.ts +0 -100
  470. package/extensions/cxx_debugging/third_party/lit-html/src/directives/async-replace.ts +0 -82
  471. package/extensions/cxx_debugging/third_party/lit-html/src/directives/cache.ts +0 -90
  472. package/extensions/cxx_debugging/third_party/lit-html/src/directives/class-map.ts +0 -118
  473. package/extensions/cxx_debugging/third_party/lit-html/src/directives/guard.ts +0 -74
  474. package/extensions/cxx_debugging/third_party/lit-html/src/directives/if-defined.ts +0 -40
  475. package/extensions/cxx_debugging/third_party/lit-html/src/directives/live.ts +0 -76
  476. package/extensions/cxx_debugging/third_party/lit-html/src/directives/repeat.ts +0 -442
  477. package/extensions/cxx_debugging/third_party/lit-html/src/directives/style-map.ts +0 -88
  478. package/extensions/cxx_debugging/third_party/lit-html/src/directives/template-content.ts +0 -52
  479. package/extensions/cxx_debugging/third_party/lit-html/src/directives/unsafe-html.ts +0 -54
  480. package/extensions/cxx_debugging/third_party/lit-html/src/directives/unsafe-svg.ts +0 -71
  481. package/extensions/cxx_debugging/third_party/lit-html/src/directives/until.ts +0 -104
  482. package/extensions/cxx_debugging/third_party/lit-html/src/env.d.ts +0 -20
  483. package/extensions/cxx_debugging/third_party/lit-html/src/lib/default-template-processor.ts +0 -59
  484. package/extensions/cxx_debugging/third_party/lit-html/src/lib/directive.ts +0 -73
  485. package/extensions/cxx_debugging/third_party/lit-html/src/lib/dom.ts +0 -55
  486. package/extensions/cxx_debugging/third_party/lit-html/src/lib/modify-template.ts +0 -135
  487. package/extensions/cxx_debugging/third_party/lit-html/src/lib/part.ts +0 -50
  488. package/extensions/cxx_debugging/third_party/lit-html/src/lib/parts.ts +0 -545
  489. package/extensions/cxx_debugging/third_party/lit-html/src/lib/render-options.ts +0 -20
  490. package/extensions/cxx_debugging/third_party/lit-html/src/lib/render.ts +0 -52
  491. package/extensions/cxx_debugging/third_party/lit-html/src/lib/shady-render.ts +0 -316
  492. package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-factory.ts +0 -92
  493. package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-instance.ts +0 -155
  494. package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-processor.ts +0 -51
  495. package/extensions/cxx_debugging/third_party/lit-html/src/lib/template-result.ts +0 -148
  496. package/extensions/cxx_debugging/third_party/lit-html/src/lib/template.ts +0 -255
  497. package/extensions/cxx_debugging/third_party/lit-html/src/lit-html.ts +0 -74
  498. package/extensions/cxx_debugging/third_party/lit-html/src/polyfills/template_polyfill.ts +0 -70
  499. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/async-append.d.ts +0 -33
  500. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/async-replace.d.ts +0 -34
  501. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/cache.d.ts +0 -30
  502. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/class-map.d.ts +0 -28
  503. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/guard.d.ts +0 -49
  504. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/if-defined.d.ts +0 -22
  505. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/live.d.ts +0 -38
  506. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/repeat.d.ts +0 -37
  507. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/style-map.d.ts +0 -36
  508. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/template-content.d.ts +0 -23
  509. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/unsafe-html.d.ts +0 -23
  510. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/unsafe-svg.d.ts +0 -23
  511. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/directives/until.d.ts +0 -35
  512. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/default-template-processor.d.ts +0 -39
  513. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/directive.d.ts +0 -59
  514. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/dom.d.ts +0 -29
  515. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/modify-template.d.ts +0 -38
  516. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/part.d.ts +0 -46
  517. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/parts.d.ts +0 -148
  518. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/render-options.d.ts +0 -19
  519. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/render.d.ts +0 -33
  520. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/shady-render.d.ts +0 -83
  521. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-factory.d.ts +0 -57
  522. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-instance.d.ts +0 -30
  523. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-processor.d.ts +0 -46
  524. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template-result.d.ts +0 -42
  525. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lib/template.d.ts +0 -92
  526. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/lit-html.d.ts +0 -42
  527. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/polyfills/template_polyfill.d.ts +0 -24
  528. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/src/env.d.ts +0 -19
  529. package/extensions/cxx_debugging/third_party/lit-html/ts3.4/tsconfig.json +0 -24
  530. package/extensions/cxx_debugging/third_party/lldb-eval/README.chromium +0 -15
  531. package/extensions/cxx_debugging/third_party/llvm/README.chromium +0 -17
  532. package/extensions/cxx_debugging/tools/api.pdl +0 -224
  533. package/extensions/cxx_debugging/tools/bootstrap.py +0 -352
  534. package/extensions/cxx_debugging/tools/generate-api.py +0 -74
  535. package/extensions/cxx_debugging/tools/pdl_cxx.py +0 -171
  536. package/extensions/cxx_debugging/tools/whitespaces.txt +0 -1
  537. package/extensions/cxx_debugging/tsconfig.json +0 -16
  538. package/front_end/core/common/Base64.test.ts +0 -41
  539. package/front_end/core/common/CharacterIdMap.test.ts +0 -46
  540. package/front_end/core/common/Color.test.ts +0 -904
  541. package/front_end/core/common/ColorConverter.test.ts +0 -525
  542. package/front_end/core/common/ColorUtils.test.ts +0 -112
  543. package/front_end/core/common/Console.test.ts +0 -86
  544. package/front_end/core/common/Debouncer.test.ts +0 -26
  545. package/front_end/core/common/EventTarget.test.ts +0 -166
  546. package/front_end/core/common/Gzip.test.ts +0 -63
  547. package/front_end/core/common/Lazy.test.ts +0 -28
  548. package/front_end/core/common/MapWithDefault.test.ts +0 -61
  549. package/front_end/core/common/Mutex.test.ts +0 -98
  550. package/front_end/core/common/Object.test.ts +0 -87
  551. package/front_end/core/common/ParsedURL.test.ts +0 -751
  552. package/front_end/core/common/Progress.test.ts +0 -269
  553. package/front_end/core/common/ResolverBase.test.ts +0 -115
  554. package/front_end/core/common/ResourceType.test.ts +0 -557
  555. package/front_end/core/common/Revealer.test.ts +0 -122
  556. package/front_end/core/common/SegmentedRange.test.ts +0 -210
  557. package/front_end/core/common/SettingRegistration.test.ts +0 -138
  558. package/front_end/core/common/Settings.test.ts +0 -858
  559. package/front_end/core/common/SimpleHistoryManager.test.ts +0 -66
  560. package/front_end/core/common/StringOutputStream.test.ts +0 -29
  561. package/front_end/core/common/TextDictionary.test.ts +0 -85
  562. package/front_end/core/common/Throttler.test.ts +0 -227
  563. package/front_end/core/common/Trie.test.ts +0 -110
  564. package/front_end/core/dom_extension/DOMExtension.test.ts +0 -343
  565. package/front_end/core/host/AidaClient.test.ts +0 -731
  566. package/front_end/core/i18n/ByteUtilities.test.ts +0 -59
  567. package/front_end/core/i18n/DevToolsLocale.test.ts +0 -104
  568. package/front_end/core/i18n/NumberFormatter.test.ts +0 -92
  569. package/front_end/core/i18n/i18n.test.ts +0 -207
  570. package/front_end/core/i18n/time-utilities.test.ts +0 -164
  571. package/front_end/core/platform/ArrayUtilities.test.ts +0 -499
  572. package/front_end/core/platform/DOMUtilities.test.ts +0 -95
  573. package/front_end/core/platform/DateUtilities.test.ts +0 -31
  574. package/front_end/core/platform/DevToolsPath.test.ts +0 -84
  575. package/front_end/core/platform/KeyboardUtilities.test.ts +0 -57
  576. package/front_end/core/platform/MapUtilities.test.ts +0 -50
  577. package/front_end/core/platform/MimeType.test.ts +0 -192
  578. package/front_end/core/platform/NumberUtilities.test.ts +0 -127
  579. package/front_end/core/platform/StringUtilities.test.ts +0 -729
  580. package/front_end/core/platform/TypedArrayUtilities.test.ts +0 -61
  581. package/front_end/core/protocol_client/NodeURL.test.ts +0 -74
  582. package/front_end/core/root/Runtime.test.ts +0 -68
  583. package/front_end/core/sdk/AccessibilityModel.test.ts +0 -17
  584. package/front_end/core/sdk/AnimationModel.test.ts +0 -257
  585. package/front_end/core/sdk/AutofillModel.test.ts +0 -82
  586. package/front_end/core/sdk/CPUThrottlingManager.test.ts +0 -49
  587. package/front_end/core/sdk/CSSContainerQuery.test.ts +0 -67
  588. package/front_end/core/sdk/CSSMatchedStyles.test.ts +0 -772
  589. package/front_end/core/sdk/CSSModel.test.ts +0 -120
  590. package/front_end/core/sdk/CSSProperty.test.ts +0 -130
  591. package/front_end/core/sdk/CSSPropertyParser.test.ts +0 -525
  592. package/front_end/core/sdk/CSSPropertyParserMatchers.test.ts +0 -766
  593. package/front_end/core/sdk/CSSStyleDeclaration.test.ts +0 -261
  594. package/front_end/core/sdk/CSSStyleSheetHeader.test.ts +0 -137
  595. package/front_end/core/sdk/ChildTargetManager.test.ts +0 -259
  596. package/front_end/core/sdk/ConsoleModel.test.ts +0 -202
  597. package/front_end/core/sdk/Cookie.test.ts +0 -294
  598. package/front_end/core/sdk/CookieModel.test.ts +0 -258
  599. package/front_end/core/sdk/CookieParser.test.ts +0 -211
  600. package/front_end/core/sdk/DOMModel.test.ts +0 -171
  601. package/front_end/core/sdk/DebuggerModel.test.ts +0 -461
  602. package/front_end/core/sdk/EmulationModel.test.ts +0 -45
  603. package/front_end/core/sdk/EnhancedTracesParser.test.ts +0 -318
  604. package/front_end/core/sdk/FrameManager.test.ts +0 -305
  605. package/front_end/core/sdk/NetworkManager.test.ts +0 -2196
  606. package/front_end/core/sdk/NetworkRequest.test.ts +0 -550
  607. package/front_end/core/sdk/OverlayColorGenerator.test.ts +0 -21
  608. package/front_end/core/sdk/OverlayModel.test.ts +0 -179
  609. package/front_end/core/sdk/OverlayPersistentHighlighter.test.ts +0 -232
  610. package/front_end/core/sdk/PageResourceLoader.test.ts +0 -369
  611. package/front_end/core/sdk/PreloadingModel.test.ts +0 -877
  612. package/front_end/core/sdk/RehydratingConnection.test.ts +0 -190
  613. package/front_end/core/sdk/RemoteObject.test.ts +0 -493
  614. package/front_end/core/sdk/ResourceTreeModel.test.ts +0 -222
  615. package/front_end/core/sdk/RuntimeModel.test.ts +0 -84
  616. package/front_end/core/sdk/ScreenCaptureModel.test.ts +0 -216
  617. package/front_end/core/sdk/Script.test.ts +0 -155
  618. package/front_end/core/sdk/ServerSentEventsProtocol.test.ts +0 -220
  619. package/front_end/core/sdk/ServerTiming.test.ts +0 -377
  620. package/front_end/core/sdk/ServiceWorkerCacheModel.test.ts +0 -200
  621. package/front_end/core/sdk/ServiceWorkerManager.test.ts +0 -287
  622. package/front_end/core/sdk/SourceMap.test.ts +0 -1350
  623. package/front_end/core/sdk/SourceMapFunctionRanges.test.ts +0 -171
  624. package/front_end/core/sdk/SourceMapManager.test.ts +0 -334
  625. package/front_end/core/sdk/SourceMapScopeChainEntry.test.ts +0 -129
  626. package/front_end/core/sdk/SourceMapScopesInfo.test.ts +0 -747
  627. package/front_end/core/sdk/StorageBucketsModel.test.ts +0 -383
  628. package/front_end/core/sdk/StorageKeyManager.test.ts +0 -95
  629. package/front_end/core/sdk/Target.test.ts +0 -97
  630. package/front_end/core/sdk/TargetManager.test.ts +0 -279
  631. package/front_end/core/sdk/TraceObject.test.ts +0 -30
  632. package/front_end/entrypoints/formatter_worker/CSSFormatter.test.ts +0 -216
  633. package/front_end/entrypoints/formatter_worker/FormattedContentBuilder.test.ts +0 -177
  634. package/front_end/entrypoints/formatter_worker/FormatterWorker.test.ts +0 -19
  635. package/front_end/entrypoints/formatter_worker/HTMLFormatter.test.ts +0 -344
  636. package/front_end/entrypoints/formatter_worker/JSONFormatter.test.ts +0 -147
  637. package/front_end/entrypoints/formatter_worker/JavaScriptFormatter.test.ts +0 -789
  638. package/front_end/entrypoints/formatter_worker/ScopeParser.test.ts +0 -121
  639. package/front_end/entrypoints/formatter_worker/Substitute.test.ts +0 -179
  640. package/front_end/entrypoints/heap_snapshot_worker/heap_snapshot_worker.test.ts +0 -11
  641. package/front_end/entrypoints/inspector_main/InspectorMain.test.ts +0 -344
  642. package/front_end/entrypoints/inspector_main/OutermostTargetSelector.test.ts +0 -80
  643. package/front_end/entrypoints/main/ExecutionContextSelector.test.ts +0 -64
  644. package/front_end/entrypoints/main/GlobalAiButton.test.ts +0 -132
  645. package/front_end/entrypoints/main/MainImpl.test.ts +0 -87
  646. package/front_end/entrypoints/wasmparser_worker/wasmparser_worker.test.ts +0 -11
  647. package/front_end/integration_test_runner.html +0 -40
  648. package/front_end/legacy_test_runner/accessibility_test_runner/accessibility_test_runner.js +0 -83
  649. package/front_end/legacy_test_runner/application_test_runner/CacheStorageTestRunner.js +0 -297
  650. package/front_end/legacy_test_runner/application_test_runner/IndexedDBTestRunner.js +0 -478
  651. package/front_end/legacy_test_runner/application_test_runner/ResourceTreeTestRunner.js +0 -106
  652. package/front_end/legacy_test_runner/application_test_runner/ResourcesTestRunner.js +0 -173
  653. package/front_end/legacy_test_runner/application_test_runner/ServiceWorkersTestRunner.js +0 -133
  654. package/front_end/legacy_test_runner/application_test_runner/StorageTestRunner.js +0 -13
  655. package/front_end/legacy_test_runner/application_test_runner/application_test_runner.js +0 -19
  656. package/front_end/legacy_test_runner/axe_core_test_runner/axe_core_test_runner.js +0 -176
  657. package/front_end/legacy_test_runner/bindings_test_runner/AutomappingTestRunner.js +0 -137
  658. package/front_end/legacy_test_runner/bindings_test_runner/BindingsTestRunner.js +0 -251
  659. package/front_end/legacy_test_runner/bindings_test_runner/IsolatedFilesystemTestRunner.js +0 -289
  660. package/front_end/legacy_test_runner/bindings_test_runner/OverridesTestRunner.js +0 -30
  661. package/front_end/legacy_test_runner/bindings_test_runner/PersistenceTestRunner.js +0 -111
  662. package/front_end/legacy_test_runner/bindings_test_runner/bindings_test_runner.js +0 -17
  663. package/front_end/legacy_test_runner/console_test_runner/console_test_runner.js +0 -732
  664. package/front_end/legacy_test_runner/coverage_test_runner/coverage_test_runner.js +0 -156
  665. package/front_end/legacy_test_runner/data_grid_test_runner/data_grid_test_runner.js +0 -85
  666. package/front_end/legacy_test_runner/device_mode_test_runner/device_mode_test_runner.js +0 -47
  667. package/front_end/legacy_test_runner/elements_test_runner/EditDOMTestRunner.js +0 -79
  668. package/front_end/legacy_test_runner/elements_test_runner/ElementsPanelShadowSelectionOnRefreshTestRunner.js +0 -39
  669. package/front_end/legacy_test_runner/elements_test_runner/ElementsTestRunner.js +0 -1256
  670. package/front_end/legacy_test_runner/elements_test_runner/SetOuterHTMLTestRunner.js +0 -116
  671. package/front_end/legacy_test_runner/elements_test_runner/StylesUpdateLinksTestRunner.js +0 -136
  672. package/front_end/legacy_test_runner/elements_test_runner/elements_test_runner.js +0 -14
  673. package/front_end/legacy_test_runner/extensions_test_runner/ExtensionsNetworkTestRunner.js +0 -27
  674. package/front_end/legacy_test_runner/extensions_test_runner/ExtensionsTestRunner.js +0 -71
  675. package/front_end/legacy_test_runner/extensions_test_runner/extensions_test_runner.js +0 -11
  676. package/front_end/legacy_test_runner/heap_profiler_test_runner/heap_profiler_test_runner.js +0 -785
  677. package/front_end/legacy_test_runner/layers_test_runner/layers_test_runner.js +0 -161
  678. package/front_end/legacy_test_runner/legacy_test_runner.ts +0 -14
  679. package/front_end/legacy_test_runner/network_test_runner/network_test_runner.js +0 -295
  680. package/front_end/legacy_test_runner/performance_test_runner/TimelineDataTestRunner.js +0 -5263
  681. package/front_end/legacy_test_runner/performance_test_runner/TimelineTestRunner.js +0 -357
  682. package/front_end/legacy_test_runner/performance_test_runner/performance_test_runner.js +0 -11
  683. package/front_end/legacy_test_runner/sdk_test_runner/sdk_test_runner.js +0 -314
  684. package/front_end/legacy_test_runner/security_test_runner/security_test_runner.js +0 -36
  685. package/front_end/legacy_test_runner/sources_test_runner/AutocompleteTestRunner.js +0 -50
  686. package/front_end/legacy_test_runner/sources_test_runner/DebuggerTestRunner.js +0 -655
  687. package/front_end/legacy_test_runner/sources_test_runner/EditorTestRunner.js +0 -240
  688. package/front_end/legacy_test_runner/sources_test_runner/LiveEditTestRunner.js +0 -34
  689. package/front_end/legacy_test_runner/sources_test_runner/SearchTestRunner.js +0 -161
  690. package/front_end/legacy_test_runner/sources_test_runner/SourcesTestRunner.js +0 -111
  691. package/front_end/legacy_test_runner/sources_test_runner/sources_test_runner.js +0 -19
  692. package/front_end/legacy_test_runner/test_runner/TestRunner.js +0 -1480
  693. package/front_end/legacy_test_runner/test_runner/test_runner.js +0 -115
  694. package/front_end/models/ai_assistance/AgentProject.test.ts +0 -370
  695. package/front_end/models/ai_assistance/AiHistoryStorage.test.ts +0 -619
  696. package/front_end/models/ai_assistance/ChangeManager.test.ts +0 -330
  697. package/front_end/models/ai_assistance/ConversationHandler.test.ts +0 -355
  698. package/front_end/models/ai_assistance/EvaluateAction.test.ts +0 -173
  699. package/front_end/models/ai_assistance/ExtensionScope.test.ts +0 -447
  700. package/front_end/models/ai_assistance/agents/AiAgent.test.ts +0 -491
  701. package/front_end/models/ai_assistance/agents/FileAgent.test.ts +0 -217
  702. package/front_end/models/ai_assistance/agents/NetworkAgent.test.ts +0 -237
  703. package/front_end/models/ai_assistance/agents/PatchAgent.test.ts +0 -130
  704. package/front_end/models/ai_assistance/agents/PerformanceAgent.test.ts +0 -759
  705. package/front_end/models/ai_assistance/agents/PerformanceAnnotationsAgent.test.ts +0 -32
  706. package/front_end/models/ai_assistance/agents/StylingAgent.test.ts +0 -1065
  707. package/front_end/models/ai_assistance/data_formatters/FileFormatter.test.ts +0 -116
  708. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.test.ts +0 -87
  709. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.test.ts +0 -367
  710. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.test.ts +0 -92
  711. package/front_end/models/ai_code_completion/AiCodeCompletion.test.ts +0 -328
  712. package/front_end/models/autofill_manager/AutofillManager.test.ts +0 -266
  713. package/front_end/models/bindings/CompilerScriptMapping.test.ts +0 -550
  714. package/front_end/models/bindings/ContentProviderBasedProject.test.ts +0 -118
  715. package/front_end/models/bindings/DebuggerLanguagePlugins.test.ts +0 -144
  716. package/front_end/models/bindings/DebuggerWorkspaceBinding.test.ts +0 -179
  717. package/front_end/models/bindings/DefaultScriptMapping.test.ts +0 -193
  718. package/front_end/models/bindings/FileUtils.test.ts +0 -69
  719. package/front_end/models/bindings/LiveLocation.test.ts +0 -47
  720. package/front_end/models/bindings/PresentationConsoleMessageHelper.test.ts +0 -276
  721. package/front_end/models/bindings/ResourceMapping.test.ts +0 -253
  722. package/front_end/models/bindings/ResourceScriptMapping.test.ts +0 -118
  723. package/front_end/models/bindings/ResourceUtils.test.ts +0 -105
  724. package/front_end/models/breakpoints/BreakpointManager.test.ts +0 -1919
  725. package/front_end/models/cpu_profile/CPUProfileDataModel.test.ts +0 -376
  726. package/front_end/models/crux-manager/CrUXManager.test.ts +0 -613
  727. package/front_end/models/emulation/DeviceModeModel.test.ts +0 -104
  728. package/front_end/models/emulation/EmulatedDevices.test.ts +0 -61
  729. package/front_end/models/extensions/ExtensionServer.test.ts +0 -1170
  730. package/front_end/models/extensions/HostUrlPattern.test.ts +0 -312
  731. package/front_end/models/extensions/LanguageExtensionEndpoint.test.ts +0 -65
  732. package/front_end/models/extensions/RecorderPluginManager.test.ts +0 -34
  733. package/front_end/models/formatter/ScriptFormatter.test.ts +0 -93
  734. package/front_end/models/har/Importer.test.ts +0 -353
  735. package/front_end/models/har/Log.test.ts +0 -208
  736. package/front_end/models/har/Writer.test.ts +0 -49
  737. package/front_end/models/heap_snapshot_model/heap_snapshot_model.test.ts +0 -11
  738. package/front_end/models/issues_manager/CheckFormsIssuesTrigger.test.ts +0 -22
  739. package/front_end/models/issues_manager/DeprecationIssue.test.ts +0 -81
  740. package/front_end/models/issues_manager/ElementAccessibilityIssue.test.ts +0 -87
  741. package/front_end/models/issues_manager/FederatedAuthUserInfoRequestIssue.test.ts +0 -52
  742. package/front_end/models/issues_manager/GenericIssue.test.ts +0 -82
  743. package/front_end/models/issues_manager/Issue.test.ts +0 -56
  744. package/front_end/models/issues_manager/IssueResolver.test.ts +0 -91
  745. package/front_end/models/issues_manager/IssuesManager.test.ts +0 -360
  746. package/front_end/models/issues_manager/LowTextContrastIssue.test.ts +0 -58
  747. package/front_end/models/issues_manager/MarkdownIssueDescription.test.ts +0 -92
  748. package/front_end/models/issues_manager/PropertyRuleIssue.test.ts +0 -109
  749. package/front_end/models/issues_manager/RelatedIssue.test.ts +0 -64
  750. package/front_end/models/issues_manager/SRIMessageSignatureIssue.test.ts +0 -68
  751. package/front_end/models/issues_manager/SharedDictionaryIssue.test.ts +0 -68
  752. package/front_end/models/issues_manager/StylesheetLoadingIssue.test.ts +0 -138
  753. package/front_end/models/issues_manager/UnencodedDigestIssue.test.ts +0 -49
  754. package/front_end/models/javascript_metadata/JavaScriptMetadata.test.ts +0 -62
  755. package/front_end/models/logs/NetworkLog.test.ts +0 -376
  756. package/front_end/models/logs/RequestResolver.test.ts +0 -92
  757. package/front_end/models/persistence/AutomaticFileSystemManager.test.ts +0 -208
  758. package/front_end/models/persistence/AutomaticFileSystemWorkspaceBinding.test.ts +0 -227
  759. package/front_end/models/persistence/EditFileSystemView.test.ts +0 -181
  760. package/front_end/models/persistence/NetworkPersistenceManager.test.ts +0 -989
  761. package/front_end/models/persistence/PersistenceAction.test.ts +0 -93
  762. package/front_end/models/persistence/PersistenceImpl.test.ts +0 -229
  763. package/front_end/models/persistence/PlatformFileSystem.test.ts +0 -19
  764. package/front_end/models/persistence/WorkspaceSettingsTab.test.ts +0 -146
  765. package/front_end/models/project_settings/ProjectSettingsModel.test.ts +0 -260
  766. package/front_end/models/source_map_scopes/NamesResolver.test.ts +0 -624
  767. package/front_end/models/source_map_scopes/ScopeChainModel.test.ts +0 -87
  768. package/front_end/models/source_map_scopes/ScopeTreeCache.test.ts +0 -63
  769. package/front_end/models/stack_trace/StackTraceImpl.test.ts +0 -74
  770. package/front_end/models/stack_trace/StackTraceModel.test.ts +0 -296
  771. package/front_end/models/stack_trace/Trie.test.ts +0 -129
  772. package/front_end/models/text_utils/ContentData.test.ts +0 -162
  773. package/front_end/models/text_utils/StaticContentProvider.test.ts +0 -34
  774. package/front_end/models/text_utils/StreamingContentData.test.ts +0 -81
  775. package/front_end/models/text_utils/Text.test.ts +0 -103
  776. package/front_end/models/text_utils/TextCursor.test.ts +0 -48
  777. package/front_end/models/text_utils/TextRange.test.ts +0 -461
  778. package/front_end/models/text_utils/TextUtils.test.ts +0 -730
  779. package/front_end/models/text_utils/WasmDisassembly.test.ts +0 -56
  780. package/front_end/models/trace/ModelImpl.test.ts +0 -161
  781. package/front_end/models/trace/Processor.test.ts +0 -429
  782. package/front_end/models/trace/extras/FilmStrip.test.ts +0 -90
  783. package/front_end/models/trace/extras/MainThreadActivity.test.ts +0 -82
  784. package/front_end/models/trace/extras/ScriptDuplication.test.ts +0 -407
  785. package/front_end/models/trace/extras/StackTraceForEvent.test.ts +0 -330
  786. package/front_end/models/trace/extras/ThirdParties.test.ts +0 -114
  787. package/front_end/models/trace/extras/TraceFilter.test.ts +0 -103
  788. package/front_end/models/trace/extras/TraceTree.test.ts +0 -489
  789. package/front_end/models/trace/handlers/AnimationFramesHandler.test.ts +0 -40
  790. package/front_end/models/trace/handlers/AnimationHandler.test.ts +0 -54
  791. package/front_end/models/trace/handlers/AsyncJSCallsHandler.test.ts +0 -300
  792. package/front_end/models/trace/handlers/AuctionWorkletsHandler.test.ts +0 -167
  793. package/front_end/models/trace/handlers/DOMStatsHandler.test.ts +0 -30
  794. package/front_end/models/trace/handlers/ExtensionTraceDataHandler.test.ts +0 -987
  795. package/front_end/models/trace/handlers/FlowsHandler.test.ts +0 -185
  796. package/front_end/models/trace/handlers/FramesHandler.test.ts +0 -243
  797. package/front_end/models/trace/handlers/GPUHandler.test.ts +0 -26
  798. package/front_end/models/trace/handlers/ImagePaintingHandler.test.ts +0 -87
  799. package/front_end/models/trace/handlers/InitiatorsHandler.test.ts +0 -309
  800. package/front_end/models/trace/handlers/InvalidationsHandler.test.ts +0 -185
  801. package/front_end/models/trace/handlers/LargestImagePaintHandler.test.ts +0 -62
  802. package/front_end/models/trace/handlers/LargestTextPaintHandler.test.ts +0 -27
  803. package/front_end/models/trace/handlers/LayerTreeHandler.test.ts +0 -46
  804. package/front_end/models/trace/handlers/LayoutShiftsHandler.test.ts +0 -252
  805. package/front_end/models/trace/handlers/MemoryHandler.test.ts +0 -29
  806. package/front_end/models/trace/handlers/MetaHandler.test.ts +0 -650
  807. package/front_end/models/trace/handlers/NetworkRequestsHandler.test.ts +0 -514
  808. package/front_end/models/trace/handlers/PageFramesHandler.test.ts +0 -40
  809. package/front_end/models/trace/handlers/PageLoadMetricsHandler.test.ts +0 -274
  810. package/front_end/models/trace/handlers/RendererHandler.test.ts +0 -1007
  811. package/front_end/models/trace/handlers/SamplesHandler.test.ts +0 -355
  812. package/front_end/models/trace/handlers/ScreenshotsHandler.test.ts +0 -114
  813. package/front_end/models/trace/handlers/ScriptsHandler.test.ts +0 -103
  814. package/front_end/models/trace/handlers/SelectorStatsHandler.test.ts +0 -39
  815. package/front_end/models/trace/handlers/Threads.test.ts +0 -59
  816. package/front_end/models/trace/handlers/UserInteractionsHandler.test.ts +0 -439
  817. package/front_end/models/trace/handlers/UserTimingsHandler.test.ts +0 -525
  818. package/front_end/models/trace/handlers/WarningsHandler.test.ts +0 -86
  819. package/front_end/models/trace/handlers/WorkersHandler.test.ts +0 -80
  820. package/front_end/models/trace/handlers/helpers.test.ts +0 -102
  821. package/front_end/models/trace/helpers/SamplesIntegrator.test.ts +0 -372
  822. package/front_end/models/trace/helpers/SyntheticEvents.test.ts +0 -62
  823. package/front_end/models/trace/helpers/Timing.test.ts +0 -371
  824. package/front_end/models/trace/helpers/Trace.test.ts +0 -760
  825. package/front_end/models/trace/helpers/TreeHelpers.test.ts +0 -449
  826. package/front_end/models/trace/insights/CLSCulprits.test.ts +0 -254
  827. package/front_end/models/trace/insights/Cache.test.ts +0 -221
  828. package/front_end/models/trace/insights/Common.test.ts +0 -125
  829. package/front_end/models/trace/insights/DOMSize.test.ts +0 -66
  830. package/front_end/models/trace/insights/DocumentLatency.test.ts +0 -110
  831. package/front_end/models/trace/insights/DuplicatedJavaScript.test.ts +0 -128
  832. package/front_end/models/trace/insights/FontDisplay.test.ts +0 -64
  833. package/front_end/models/trace/insights/ForcedReflow.test.ts +0 -34
  834. package/front_end/models/trace/insights/INPBreakdown.test.ts +0 -32
  835. package/front_end/models/trace/insights/ImageDelivery.test.ts +0 -128
  836. package/front_end/models/trace/insights/LCPBreakdown.test.ts +0 -100
  837. package/front_end/models/trace/insights/LCPDiscovery.test.ts +0 -67
  838. package/front_end/models/trace/insights/LegacyJavaScript.test.ts +0 -81
  839. package/front_end/models/trace/insights/ModernHTTP.test.ts +0 -348
  840. package/front_end/models/trace/insights/NetworkDependencyTree.test.ts +0 -563
  841. package/front_end/models/trace/insights/RenderBlocking.test.ts +0 -133
  842. package/front_end/models/trace/insights/SlowCSSSelector.test.ts +0 -48
  843. package/front_end/models/trace/insights/Statistics.test.ts +0 -145
  844. package/front_end/models/trace/insights/ThirdParties.test.ts +0 -56
  845. package/front_end/models/trace/insights/Viewport.test.ts +0 -52
  846. package/front_end/models/trace/lantern/core/NetworkAnalyzer.test.ts +0 -530
  847. package/front_end/models/trace/lantern/graph/BaseNode.test.ts +0 -391
  848. package/front_end/models/trace/lantern/graph/PageDependencyGraph.test.ts +0 -670
  849. package/front_end/models/trace/lantern/metrics/FirstContentfulPaint.test.ts +0 -65
  850. package/front_end/models/trace/lantern/metrics/Interactive.test.ts +0 -70
  851. package/front_end/models/trace/lantern/metrics/LargestContentfulPaint.test.ts +0 -42
  852. package/front_end/models/trace/lantern/metrics/SpeedIndex.test.ts +0 -87
  853. package/front_end/models/trace/lantern/metrics/TBTUtils.test.ts +0 -138
  854. package/front_end/models/trace/lantern/simulation/ConnectionPool.test.ts +0 -199
  855. package/front_end/models/trace/lantern/simulation/DNSCache.test.ts +0 -76
  856. package/front_end/models/trace/lantern/simulation/Simulator.test.ts +0 -454
  857. package/front_end/models/trace/lantern/simulation/TCPConnection.test.ts +0 -368
  858. package/front_end/models/trace/types/File.test.ts +0 -42
  859. package/front_end/models/trace/types/TraceEvents.test.ts +0 -92
  860. package/front_end/models/workspace/IgnoreListManager.test.ts +0 -616
  861. package/front_end/models/workspace/SearchConfig.test.ts +0 -114
  862. package/front_end/models/workspace/UISourceCode.test.ts +0 -415
  863. package/front_end/models/workspace/WorkspaceImpl.test.ts +0 -187
  864. package/front_end/models/workspace_diff/WorkspaceDiff.test.ts +0 -84
  865. package/front_end/panels/accessibility/ARIAAttributesView.test.ts +0 -101
  866. package/front_end/panels/accessibility/AccessibilitySidebarView.test.ts +0 -67
  867. package/front_end/panels/ai_assistance/AiAssistancePanel.test.ts +0 -1891
  868. package/front_end/panels/ai_assistance/PatchWidget.test.ts +0 -445
  869. package/front_end/panels/ai_assistance/SelectWorkspaceDialog.test.ts +0 -201
  870. package/front_end/panels/ai_assistance/components/ChatView.test.ts +0 -103
  871. package/front_end/panels/ai_assistance/components/ExploreWidget.test.ts +0 -118
  872. package/front_end/panels/ai_assistance/components/MarkdownRendererWithCodeBlock.test.ts +0 -80
  873. package/front_end/panels/ai_assistance/components/UserActionRow.test.ts +0 -123
  874. package/front_end/panels/animation/AnimationTimeline.test.ts +0 -752
  875. package/front_end/panels/application/AppManifestView.test.ts +0 -342
  876. package/front_end/panels/application/ApplicationPanelSidebar.test.ts +0 -484
  877. package/front_end/panels/application/BackgroundServiceView.test.ts +0 -160
  878. package/front_end/panels/application/DOMStorageModel.test.ts +0 -45
  879. package/front_end/panels/application/ExtensionStorageItemsView.test.ts +0 -152
  880. package/front_end/panels/application/ExtensionStorageModel.test.ts +0 -249
  881. package/front_end/panels/application/IndexedDBModel.test.ts +0 -252
  882. package/front_end/panels/application/IndexedDBViews.test.ts +0 -182
  883. package/front_end/panels/application/InterestGroupStorageView.test.ts +0 -155
  884. package/front_end/panels/application/InterestGroupTreeElement.test.ts +0 -37
  885. package/front_end/panels/application/KeyValueStorageItemsView.test.ts +0 -120
  886. package/front_end/panels/application/PreloadingTreeElement.test.ts +0 -30
  887. package/front_end/panels/application/ReportingApiView.test.ts +0 -233
  888. package/front_end/panels/application/ServiceWorkerUpdateCycleView.test.ts +0 -130
  889. package/front_end/panels/application/ServiceWorkersView.test.ts +0 -179
  890. package/front_end/panels/application/SharedStorageEventsView.test.ts +0 -231
  891. package/front_end/panels/application/SharedStorageItemsView.test.ts +0 -913
  892. package/front_end/panels/application/SharedStorageListTreeElement.test.ts +0 -161
  893. package/front_end/panels/application/SharedStorageModel.test.ts +0 -434
  894. package/front_end/panels/application/SharedStorageTreeElement.test.ts +0 -140
  895. package/front_end/panels/application/StorageBucketsTreeElement.test.ts +0 -149
  896. package/front_end/panels/application/StorageView.test.ts +0 -156
  897. package/front_end/panels/application/components/BackForwardCacheView.test.ts +0 -303
  898. package/front_end/panels/application/components/BounceTrackingMitigationsView.test.ts +0 -138
  899. package/front_end/panels/application/components/EndpointsGrid.test.ts +0 -83
  900. package/front_end/panels/application/components/FrameDetailsView.test.ts +0 -263
  901. package/front_end/panels/application/components/InterestGroupAccessGrid.test.ts +0 -70
  902. package/front_end/panels/application/components/OriginTrialTreeView.test.ts +0 -442
  903. package/front_end/panels/application/components/ProtocolHandlersView.test.ts +0 -73
  904. package/front_end/panels/application/components/ReportsGrid.test.ts +0 -131
  905. package/front_end/panels/application/components/ServiceWorkerRouterView.test.ts +0 -57
  906. package/front_end/panels/application/components/SharedStorageAccessGrid.test.ts +0 -84
  907. package/front_end/panels/application/components/SharedStorageMetadataView.test.ts +0 -122
  908. package/front_end/panels/application/components/StackTrace.test.ts +0 -222
  909. package/front_end/panels/application/components/StorageMetadataView.test.ts +0 -208
  910. package/front_end/panels/application/components/TrustTokensView.test.ts +0 -127
  911. package/front_end/panels/application/preloading/PreloadingView.test.ts +0 -1180
  912. package/front_end/panels/application/preloading/components/MismatchedPreloadingGrid.test.ts +0 -194
  913. package/front_end/panels/application/preloading/components/PreloadingDetailsReportView.test.ts +0 -532
  914. package/front_end/panels/application/preloading/components/PreloadingGrid.test.ts +0 -503
  915. package/front_end/panels/application/preloading/components/PreloadingMismatchedHeadersGrid.test.ts +0 -150
  916. package/front_end/panels/application/preloading/components/RuleSetDetailsView.test.ts +0 -185
  917. package/front_end/panels/application/preloading/components/RuleSetGrid.test.ts +0 -190
  918. package/front_end/panels/application/preloading/components/UsedPreloadingView.test.ts +0 -751
  919. package/front_end/panels/autofill/AutofillView.test.ts +0 -224
  920. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.test.ts +0 -179
  921. package/front_end/panels/browser_debugger/DOMBreakpointsSidebarPane.test.ts +0 -52
  922. package/front_end/panels/browser_debugger/browser_debugger.test.ts +0 -11
  923. package/front_end/panels/changes/CombinedDiffView.test.ts +0 -154
  924. package/front_end/panels/changes/changes.test.ts +0 -11
  925. package/front_end/panels/common/AiCodeCompletionDisclaimer.test.ts +0 -57
  926. package/front_end/panels/common/AiCodeCompletionSummaryToolbar.test.ts +0 -85
  927. package/front_end/panels/common/AiCodeCompletionTeaser.test.ts +0 -98
  928. package/front_end/panels/console/ConsoleContextSelector.test.ts +0 -96
  929. package/front_end/panels/console/ConsoleFormat.test.ts +0 -462
  930. package/front_end/panels/console/ConsolePrompt.test.ts +0 -188
  931. package/front_end/panels/console/ConsoleSidebar.test.ts +0 -130
  932. package/front_end/panels/console/ConsoleView.test.ts +0 -276
  933. package/front_end/panels/console/ConsoleViewMessage.test.ts +0 -433
  934. package/front_end/panels/console/ConsoleViewport.test.ts +0 -399
  935. package/front_end/panels/console/ErrorStackParser.test.ts +0 -343
  936. package/front_end/panels/console_counters/console_counters.test.ts +0 -11
  937. package/front_end/panels/coverage/CoverageDecorationManager.test.ts +0 -211
  938. package/front_end/panels/coverage/CoverageModel.test.ts +0 -91
  939. package/front_end/panels/coverage/CoverageView.test.ts +0 -202
  940. package/front_end/panels/css_overview/CSSOverviewPanel.test.ts +0 -40
  941. package/front_end/panels/developer_resources/DeveloperResourcesView.test.ts +0 -43
  942. package/front_end/panels/developer_resources/developer_resources.test.ts +0 -11
  943. package/front_end/panels/elements/AccessibilityTreeView.test.ts +0 -50
  944. package/front_end/panels/elements/CSSRuleValidator.test.ts +0 -482
  945. package/front_end/panels/elements/CSSValueTraceView.test.ts +0 -215
  946. package/front_end/panels/elements/ClassesPaneWidget.test.ts +0 -48
  947. package/front_end/panels/elements/ColorSwatchPopoverIcon.test.ts +0 -63
  948. package/front_end/panels/elements/ComputedStyleModel.test.ts +0 -155
  949. package/front_end/panels/elements/ComputedStyleWidget.test.ts +0 -153
  950. package/front_end/panels/elements/DOMLinkifier.test.ts +0 -60
  951. package/front_end/panels/elements/DOMTreeWidget.test.ts +0 -58
  952. package/front_end/panels/elements/ElementStatePaneWidget.test.ts +0 -363
  953. package/front_end/panels/elements/ElementsPanel.test.ts +0 -211
  954. package/front_end/panels/elements/ElementsTreeElement.test.ts +0 -443
  955. package/front_end/panels/elements/ElementsTreeOutline.test.ts +0 -218
  956. package/front_end/panels/elements/EventListenersWidget.test.ts +0 -129
  957. package/front_end/panels/elements/InspectElementModeController.test.ts +0 -163
  958. package/front_end/panels/elements/LayoutPane.test.ts +0 -219
  959. package/front_end/panels/elements/PlatformFontsWidget.test.ts +0 -46
  960. package/front_end/panels/elements/PropertiesWidget.test.ts +0 -76
  961. package/front_end/panels/elements/PropertyRenderer.test.ts +0 -340
  962. package/front_end/panels/elements/StylePropertiesSection.test.ts +0 -324
  963. package/front_end/panels/elements/StylePropertyHighlighter.test.ts +0 -160
  964. package/front_end/panels/elements/StylePropertyTreeElement.test.ts +0 -2250
  965. package/front_end/panels/elements/StylePropertyUtils.test.ts +0 -41
  966. package/front_end/panels/elements/StylesSidebarPane.test.ts +0 -716
  967. package/front_end/panels/elements/TopLayerContainer.test.ts +0 -55
  968. package/front_end/panels/elements/WebCustomData.test.ts +0 -77
  969. package/front_end/panels/elements/components/AccessibilityTreeNode.test.ts +0 -44
  970. package/front_end/panels/elements/components/AdornerManager.test.ts +0 -82
  971. package/front_end/panels/elements/components/CSSHintDetailsView.test.ts +0 -40
  972. package/front_end/panels/elements/components/CSSPropertyDocsView.test.ts +0 -131
  973. package/front_end/panels/elements/components/CSSPropertyIconResolver.test.ts +0 -931
  974. package/front_end/panels/elements/components/CSSQuery.test.ts +0 -58
  975. package/front_end/panels/elements/components/CSSVariableValueView.test.ts +0 -20
  976. package/front_end/panels/elements/components/ComputedStyleProperty.test.ts +0 -38
  977. package/front_end/panels/elements/components/ComputedStyleTrace.test.ts +0 -58
  978. package/front_end/panels/elements/components/ElementsBreadcrumbs.test.ts +0 -435
  979. package/front_end/panels/elements/components/ElementsTreeExpandButton.test.ts +0 -50
  980. package/front_end/panels/elements/components/QueryContainer.test.ts +0 -151
  981. package/front_end/panels/elements/components/StylePropertyEditor.test.ts +0 -188
  982. package/front_end/panels/emulation/AdvancedApp.test.ts +0 -80
  983. package/front_end/panels/emulation/MediaQueryInspector.test.ts +0 -55
  984. package/front_end/panels/event_listeners/EventListenersView.test.ts +0 -50
  985. package/front_end/panels/explain/PromptBuilder.test.ts +0 -587
  986. package/front_end/panels/explain/components/ConsoleInsight.test.ts +0 -926
  987. package/front_end/panels/issues/IssueAggregator.test.ts +0 -427
  988. package/front_end/panels/issues/IssueView.test.ts +0 -75
  989. package/front_end/panels/issues/IssuesPane.test.ts +0 -32
  990. package/front_end/panels/layer_viewer/layer_viewer.test.ts +0 -11
  991. package/front_end/panels/layers/LayersPanel.test.ts +0 -55
  992. package/front_end/panels/lighthouse/LighthouseController.test.ts +0 -36
  993. package/front_end/panels/lighthouse/LighthousePanel.test.ts +0 -89
  994. package/front_end/panels/lighthouse/LighthouseProtocolService.test.ts +0 -70
  995. package/front_end/panels/lighthouse/LighthouseReportRenderer.test.ts +0 -123
  996. package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorController.test.ts +0 -201
  997. package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorPane.test.ts +0 -54
  998. package/front_end/panels/linear_memory_inspector/components/LinearMemoryHighlightChipList.test.ts +0 -124
  999. package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.test.ts +0 -421
  1000. package/front_end/panels/linear_memory_inspector/components/LinearMemoryNavigator.test.ts +0 -194
  1001. package/front_end/panels/linear_memory_inspector/components/LinearMemoryValueInterpreter.test.ts +0 -118
  1002. package/front_end/panels/linear_memory_inspector/components/LinearMemoryViewer.test.ts +0 -397
  1003. package/front_end/panels/linear_memory_inspector/components/ValueInterpreterDisplay.test.ts +0 -450
  1004. package/front_end/panels/linear_memory_inspector/components/ValueInterpreterSettings.test.ts +0 -91
  1005. package/front_end/panels/media/MainView.test.ts +0 -127
  1006. package/front_end/panels/media/TickingFlameChartHelpers.test.ts +0 -90
  1007. package/front_end/panels/mobile_throttling/ThrottlingManager.test.ts +0 -119
  1008. package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.test.ts +0 -115
  1009. package/front_end/panels/network/BlockedURLsPane.test.ts +0 -80
  1010. package/front_end/panels/network/NetworkConfigView.test.ts +0 -50
  1011. package/front_end/panels/network/NetworkDataGridNode.test.ts +0 -474
  1012. package/front_end/panels/network/NetworkItemView.test.ts +0 -169
  1013. package/front_end/panels/network/NetworkLogView.test.ts +0 -1101
  1014. package/front_end/panels/network/NetworkOverview.test.ts +0 -60
  1015. package/front_end/panels/network/NetworkPanel.test.ts +0 -103
  1016. package/front_end/panels/network/NetworkSearchScope.test.ts +0 -182
  1017. package/front_end/panels/network/RequestCookiesView.test.ts +0 -49
  1018. package/front_end/panels/network/RequestHTMLView.test.ts +0 -28
  1019. package/front_end/panels/network/RequestPayloadView.test.ts +0 -13
  1020. package/front_end/panels/network/RequestPreviewView.test.ts +0 -105
  1021. package/front_end/panels/network/RequestResponseView.test.ts +0 -130
  1022. package/front_end/panels/network/RequestTimingView.test.ts +0 -172
  1023. package/front_end/panels/network/ResourceDirectSocketChunkView.test.ts +0 -335
  1024. package/front_end/panels/network/components/DirectSocketConnectionView.test.ts +0 -253
  1025. package/front_end/panels/network/components/HeaderSectionRow.test.ts +0 -659
  1026. package/front_end/panels/network/components/RequestHeaderSection.test.ts +0 -101
  1027. package/front_end/panels/network/components/RequestHeadersView.test.ts +0 -537
  1028. package/front_end/panels/network/components/RequestTrustTokensView.test.ts +0 -80
  1029. package/front_end/panels/network/components/ResponseHeaderSection.test.ts +0 -1359
  1030. package/front_end/panels/performance_monitor/PerformanceMonitor.test.ts +0 -152
  1031. package/front_end/panels/profiler/HeapDetachedElementsView.test.ts +0 -34
  1032. package/front_end/panels/profiler/HeapProfileView.test.ts +0 -34
  1033. package/front_end/panels/profiler/HeapSnapshotView.test.ts +0 -35
  1034. package/front_end/panels/protocol_monitor/JSONEditor.test.ts +0 -1321
  1035. package/front_end/panels/protocol_monitor/ProtocolMonitor.test.ts +0 -548
  1036. package/front_end/panels/recorder/RecorderController.test.ts +0 -483
  1037. package/front_end/panels/recorder/components/CreateRecordingView.test.ts +0 -141
  1038. package/front_end/panels/recorder/components/RecordingListView.test.ts +0 -64
  1039. package/front_end/panels/recorder/components/RecordingView.test.ts +0 -186
  1040. package/front_end/panels/recorder/components/ReplaySection.test.ts +0 -113
  1041. package/front_end/panels/recorder/components/SelectButton.test.ts +0 -56
  1042. package/front_end/panels/recorder/components/StepEditor.test.ts +0 -711
  1043. package/front_end/panels/recorder/components/StepView.test.ts +0 -208
  1044. package/front_end/panels/recorder/converters/LighthouseConverter.test.ts +0 -79
  1045. package/front_end/panels/recorder/converters/PuppeteerConverter.test.ts +0 -88
  1046. package/front_end/panels/recorder/converters/PuppeteerReplayConverter.test.ts +0 -59
  1047. package/front_end/panels/recorder/injected/selectors/CSSSelector.test.ts +0 -39
  1048. package/front_end/panels/recorder/injected.test.ts +0 -364
  1049. package/front_end/panels/recorder/models/RecorderSettings.test.ts +0 -65
  1050. package/front_end/panels/recorder/models/RecorderShortcutHelper.test.ts +0 -59
  1051. package/front_end/panels/recorder/models/RecordingPlayer.test.ts +0 -235
  1052. package/front_end/panels/recorder/models/SchemaUtils.test.ts +0 -35
  1053. package/front_end/panels/recorder/models/ScreenshotUtils.test.ts +0 -74
  1054. package/front_end/panels/recorder/models/Section.test.ts +0 -98
  1055. package/front_end/panels/recorder/models/recording-storage.test.ts +0 -66
  1056. package/front_end/panels/recorder/models/screenshot-storage.test.ts +0 -159
  1057. package/front_end/panels/recorder/util/SharedObject.test.ts +0 -88
  1058. package/front_end/panels/screencast/ScreencastApp.test.ts +0 -24
  1059. package/front_end/panels/search/SearchResultsPane.test.ts +0 -228
  1060. package/front_end/panels/search/SearchView.test.ts +0 -197
  1061. package/front_end/panels/security/CookieControlsView.test.ts +0 -65
  1062. package/front_end/panels/security/CookieReportView.test.ts +0 -161
  1063. package/front_end/panels/security/SecurityModel.test.ts +0 -45
  1064. package/front_end/panels/security/SecurityPanel.test.ts +0 -264
  1065. package/front_end/panels/settings/AISettingsTab.test.ts +0 -293
  1066. package/front_end/panels/settings/components/SyncSection.test.ts +0 -110
  1067. package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.test.ts +0 -146
  1068. package/front_end/panels/settings/emulation/utils/StructuredHeaders.test.ts +0 -462
  1069. package/front_end/panels/settings/emulation/utils/UserAgentMetadata.test.ts +0 -94
  1070. package/front_end/panels/snippets/ScriptSnippetFileSystem.test.ts +0 -29
  1071. package/front_end/panels/sources/AiCodeCompletionPlugin.test.ts +0 -119
  1072. package/front_end/panels/sources/BreakpointEditDialog.test.ts +0 -127
  1073. package/front_end/panels/sources/BreakpointsView.test.ts +0 -1878
  1074. package/front_end/panels/sources/BreakpointsViewUtils.test.ts +0 -209
  1075. package/front_end/panels/sources/CSSPlugin.test.ts +0 -90
  1076. package/front_end/panels/sources/CoveragePlugin.test.ts +0 -82
  1077. package/front_end/panels/sources/DebuggerPausedMessage.test.ts +0 -138
  1078. package/front_end/panels/sources/DebuggerPlugin.test.ts +0 -725
  1079. package/front_end/panels/sources/FilePathScoreFunction.test.ts +0 -171
  1080. package/front_end/panels/sources/FilteredUISourceCodeListProvider.test.ts +0 -150
  1081. package/front_end/panels/sources/NavigatorView.test.ts +0 -277
  1082. package/front_end/panels/sources/OutlineQuickOpen.test.ts +0 -1064
  1083. package/front_end/panels/sources/ResourceOriginPlugin.test.ts +0 -38
  1084. package/front_end/panels/sources/SourcesNavigator.test.ts +0 -615
  1085. package/front_end/panels/sources/SourcesPanel.test.ts +0 -90
  1086. package/front_end/panels/sources/SourcesView.test.ts +0 -242
  1087. package/front_end/panels/sources/TabbedEditorContainer.test.ts +0 -122
  1088. package/front_end/panels/sources/UISourceCodeFrame.test.ts +0 -104
  1089. package/front_end/panels/sources/components/HeadersView.test.ts +0 -573
  1090. package/front_end/panels/timeline/AnnotationHelpers.test.ts +0 -190
  1091. package/front_end/panels/timeline/Breadcrumbs.test.ts +0 -281
  1092. package/front_end/panels/timeline/CountersGraph.test.ts +0 -80
  1093. package/front_end/panels/timeline/EntriesFilter.test.ts +0 -710
  1094. package/front_end/panels/timeline/Initiators.test.ts +0 -176
  1095. package/front_end/panels/timeline/ModificationsManager.test.ts +0 -254
  1096. package/front_end/panels/timeline/RecordingMetadata.test.ts +0 -147
  1097. package/front_end/panels/timeline/SaveFileFormatter.test.ts +0 -77
  1098. package/front_end/panels/timeline/ThirdPartyTreeView.test.ts +0 -84
  1099. package/front_end/panels/timeline/TimelineController.test.ts +0 -98
  1100. package/front_end/panels/timeline/TimelineDetailsView.test.ts +0 -188
  1101. package/front_end/panels/timeline/TimelineFilters.test.ts +0 -72
  1102. package/front_end/panels/timeline/TimelineFlameChartDataProvider.test.ts +0 -377
  1103. package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.test.ts +0 -266
  1104. package/front_end/panels/timeline/TimelineFlameChartView.test.ts +0 -1209
  1105. package/front_end/panels/timeline/TimelineHistoryManager.test.ts +0 -160
  1106. package/front_end/panels/timeline/TimelineLoader.test.ts +0 -167
  1107. package/front_end/panels/timeline/TimelineMiniMap.test.ts +0 -135
  1108. package/front_end/panels/timeline/TimelinePanel.test.ts +0 -550
  1109. package/front_end/panels/timeline/TimelineSelection.test.ts +0 -112
  1110. package/front_end/panels/timeline/TimelineTreeView.test.ts +0 -339
  1111. package/front_end/panels/timeline/TimelineUIUtils.test.ts +0 -1793
  1112. package/front_end/panels/timeline/TrackConfigBanner.test.ts +0 -68
  1113. package/front_end/panels/timeline/TrackConfiguration.test.ts +0 -46
  1114. package/front_end/panels/timeline/components/BreadcrumbsUI.test.ts +0 -101
  1115. package/front_end/panels/timeline/components/CPUThrottlingSelector.test.ts +0 -100
  1116. package/front_end/panels/timeline/components/ExportTraceOptions.test.ts +0 -281
  1117. package/front_end/panels/timeline/components/FieldSettingsDialog.test.ts +0 -295
  1118. package/front_end/panels/timeline/components/IgnoreListSetting.test.ts +0 -325
  1119. package/front_end/panels/timeline/components/InteractionBreakdown.test.ts +0 -37
  1120. package/front_end/panels/timeline/components/Invalidations.test.ts +0 -38
  1121. package/front_end/panels/timeline/components/LayoutShiftDetails.test.ts +0 -72
  1122. package/front_end/panels/timeline/components/LiveMetricsView.test.ts +0 -1006
  1123. package/front_end/panels/timeline/components/MetricCard.test.ts +0 -637
  1124. package/front_end/panels/timeline/components/NetworkRequestDetails.test.ts +0 -178
  1125. package/front_end/panels/timeline/components/NetworkThrottlingSelector.test.ts +0 -188
  1126. package/front_end/panels/timeline/components/OriginMap.test.ts +0 -359
  1127. package/front_end/panels/timeline/components/RelatedInsightChips.test.ts +0 -91
  1128. package/front_end/panels/timeline/components/Sidebar.test.ts +0 -185
  1129. package/front_end/panels/timeline/components/SidebarAnnotationsTab.test.ts +0 -261
  1130. package/front_end/panels/timeline/components/SidebarInsightsTab.test.ts +0 -44
  1131. package/front_end/panels/timeline/components/SidebarSingleInsightSet.test.ts +0 -165
  1132. package/front_end/panels/timeline/components/TimelineSummary.test.ts +0 -77
  1133. package/front_end/panels/timeline/components/Utils.test.ts +0 -112
  1134. package/front_end/panels/timeline/components/insights/BaseInsightComponent.test.ts +0 -382
  1135. package/front_end/panels/timeline/components/insights/CLSCulprits.test.ts +0 -44
  1136. package/front_end/panels/timeline/components/insights/INPBreakdown.test.ts +0 -74
  1137. package/front_end/panels/timeline/components/insights/NetworkDependencyTree.test.ts +0 -76
  1138. package/front_end/panels/timeline/components/insights/NodeLink.test.ts +0 -113
  1139. package/front_end/panels/timeline/components/insights/Table.test.ts +0 -60
  1140. package/front_end/panels/timeline/overlays/OverlaysImpl.test.ts +0 -1424
  1141. package/front_end/panels/timeline/overlays/components/TimespanBreakdownOverlay.test.ts +0 -41
  1142. package/front_end/panels/timeline/track_appenders/AnimationsTrackAppender.test.ts +0 -101
  1143. package/front_end/panels/timeline/track_appenders/AppenderUtils.test.ts +0 -197
  1144. package/front_end/panels/timeline/track_appenders/CompatibilityTracksAppender.test.ts +0 -229
  1145. package/front_end/panels/timeline/track_appenders/ExtensionTrackAppender.test.ts +0 -249
  1146. package/front_end/panels/timeline/track_appenders/GPUTrackAppender.test.ts +0 -116
  1147. package/front_end/panels/timeline/track_appenders/InteractionsTrackAppender.test.ts +0 -124
  1148. package/front_end/panels/timeline/track_appenders/LayoutShiftsTrackAppender.test.ts +0 -104
  1149. package/front_end/panels/timeline/track_appenders/NetworkTrackAppender.test.ts +0 -65
  1150. package/front_end/panels/timeline/track_appenders/ThreadAppender.test.ts +0 -595
  1151. package/front_end/panels/timeline/track_appenders/TimingsTrackAppender.test.ts +0 -347
  1152. package/front_end/panels/timeline/utils/AICallTree.test.ts +0 -453
  1153. package/front_end/panels/timeline/utils/EntityMapper.test.ts +0 -123
  1154. package/front_end/panels/timeline/utils/EntryName.test.ts +0 -177
  1155. package/front_end/panels/timeline/utils/EntryNodes.test.ts +0 -137
  1156. package/front_end/panels/timeline/utils/EventsSerializer.test.ts +0 -71
  1157. package/front_end/panels/timeline/utils/FreshRecording.test.ts +0 -23
  1158. package/front_end/panels/timeline/utils/Helpers.test.ts +0 -85
  1159. package/front_end/panels/timeline/utils/IgnoreList.test.ts +0 -192
  1160. package/front_end/panels/timeline/utils/ImageCache.test.ts +0 -107
  1161. package/front_end/panels/timeline/utils/InsightAIContext.test.ts +0 -120
  1162. package/front_end/panels/timeline/utils/SourceMapsResolver.test.ts +0 -334
  1163. package/front_end/panels/timeline/utils/Treemap.test.ts +0 -321
  1164. package/front_end/panels/utils/utils.test.ts +0 -232
  1165. package/front_end/panels/web_audio/WebAudioView.test.ts +0 -247
  1166. package/front_end/panels/web_audio/web_audio.test.ts +0 -11
  1167. package/front_end/panels/webauthn/WebauthnPane.test.ts +0 -377
  1168. package/front_end/panels/whats_new/ReleaseNote.test.ts +0 -92
  1169. package/front_end/panels/whats_new/ReleaseNoteView.test.ts +0 -160
  1170. package/front_end/services/trace_bounds/TraceBounds.test.ts +0 -155
  1171. package/front_end/services/tracing/ExternalRequests.test.ts +0 -39
  1172. package/front_end/services/tracing/ExternalRequests.ts +0 -74
  1173. package/front_end/services/tracing/TracingManager.test.ts +0 -102
  1174. package/front_end/testing/AiAssistanceHelpers.ts +0 -349
  1175. package/front_end/testing/ConsoleHelpers.ts +0 -39
  1176. package/front_end/testing/ContextMenuHelpers.ts +0 -46
  1177. package/front_end/testing/Cookies.ts +0 -72
  1178. package/front_end/testing/DOMHelpers.ts +0 -359
  1179. package/front_end/testing/DataGridHelpers.ts +0 -83
  1180. package/front_end/testing/EnvironmentHelpers.ts +0 -565
  1181. package/front_end/testing/ExpectStubCall.ts +0 -46
  1182. package/front_end/testing/ExtensionHelpers.ts +0 -77
  1183. package/front_end/testing/FileManagerHelpers.ts +0 -22
  1184. package/front_end/testing/InsightHelpers.ts +0 -88
  1185. package/front_end/testing/LanguagePluginHelpers.ts +0 -91
  1186. package/front_end/testing/MockConnection.ts +0 -163
  1187. package/front_end/testing/MockExecutionContext.ts +0 -24
  1188. package/front_end/testing/MockIssuesManager.ts +0 -64
  1189. package/front_end/testing/MockIssuesModel.ts +0 -22
  1190. package/front_end/testing/MockNetworkLog.ts +0 -41
  1191. package/front_end/testing/MockScopeChain.test.ts +0 -25
  1192. package/front_end/testing/MockScopeChain.ts +0 -402
  1193. package/front_end/testing/MockSettingStorage.ts +0 -23
  1194. package/front_end/testing/MutationHelpers.test.ts +0 -271
  1195. package/front_end/testing/MutationHelpers.ts +0 -250
  1196. package/front_end/testing/NetworkHelpers.ts +0 -36
  1197. package/front_end/testing/OverridesHelpers.ts +0 -85
  1198. package/front_end/testing/PersistenceHelpers.ts +0 -64
  1199. package/front_end/testing/PropertyParser.ts +0 -34
  1200. package/front_end/testing/README.md +0 -123
  1201. package/front_end/testing/ResourceTreeHelpers.ts +0 -126
  1202. package/front_end/testing/SnapshotTester.snapshot.txt +0 -9
  1203. package/front_end/testing/SnapshotTester.test.ts +0 -32
  1204. package/front_end/testing/SnapshotTester.ts +0 -150
  1205. package/front_end/testing/SourceMapEncoder.test.ts +0 -169
  1206. package/front_end/testing/SourceMapEncoder.ts +0 -130
  1207. package/front_end/testing/SourceMapHelpers.ts +0 -113
  1208. package/front_end/testing/StackTraceHelpers.ts +0 -47
  1209. package/front_end/testing/StorageItemsViewHelpers.ts +0 -24
  1210. package/front_end/testing/StubIssue.ts +0 -123
  1211. package/front_end/testing/StyleHelpers.ts +0 -160
  1212. package/front_end/testing/TraceHelpers.ts +0 -1003
  1213. package/front_end/testing/TraceLoader.ts +0 -344
  1214. package/front_end/testing/TrackAsyncOperations.ts +0 -276
  1215. package/front_end/testing/UISourceCodeHelpers.ts +0 -157
  1216. package/front_end/testing/UserMetricsHelpers.ts +0 -17
  1217. package/front_end/testing/ViewFunctionHelpers.ts +0 -62
  1218. package/front_end/testing/VisualLoggingHelpers.ts +0 -11
  1219. package/front_end/testing/test_setup.ts +0 -117
  1220. package/front_end/ui/components/adorners/Adorner.test.ts +0 -134
  1221. package/front_end/ui/components/buttons/Button.test.ts +0 -268
  1222. package/front_end/ui/components/cards/Card.test.ts +0 -101
  1223. package/front_end/ui/components/chrome_link/ChromeLink.test.ts +0 -57
  1224. package/front_end/ui/components/code_highlighter/CodeHighlighter.test.ts +0 -318
  1225. package/front_end/ui/components/dialogs/ButtonDialog.test.ts +0 -170
  1226. package/front_end/ui/components/dialogs/Dialog.test.ts +0 -903
  1227. package/front_end/ui/components/dialogs/ShortcutDialog.test.ts +0 -79
  1228. package/front_end/ui/components/diff_view/DiffView.test.ts +0 -94
  1229. package/front_end/ui/components/expandable_list/ExpandableList.test.ts +0 -77
  1230. package/front_end/ui/components/helpers/helpers.test.ts +0 -118
  1231. package/front_end/ui/components/highlighting/HighlightManager.test.ts +0 -89
  1232. package/front_end/ui/components/highlighting/highlighting.css +0 -9
  1233. package/front_end/ui/components/icon_button/FileSourceIcon.test.ts +0 -32
  1234. package/front_end/ui/components/icon_button/Icon.test.ts +0 -126
  1235. package/front_end/ui/components/icon_button/IconButton.test.ts +0 -277
  1236. package/front_end/ui/components/issue_counter/IssueCounter.test.ts +0 -234
  1237. package/front_end/ui/components/issue_counter/IssueLinkIcon.test.ts +0 -187
  1238. package/front_end/ui/components/linkifier/LinkifierImpl.test.ts +0 -84
  1239. package/front_end/ui/components/markdown_view/CodeBlock.test.ts +0 -92
  1240. package/front_end/ui/components/markdown_view/MarkdownImage.test.ts +0 -56
  1241. package/front_end/ui/components/markdown_view/MarkdownLink.test.ts +0 -30
  1242. package/front_end/ui/components/markdown_view/MarkdownView.test.ts +0 -445
  1243. package/front_end/ui/components/menus/SelectMenu.test.ts +0 -106
  1244. package/front_end/ui/components/node_text/NodeText.test.ts +0 -80
  1245. package/front_end/ui/components/panel_feedback/FeedbackButton.test.ts +0 -36
  1246. package/front_end/ui/components/panel_feedback/PanelFeedback.test.ts +0 -47
  1247. package/front_end/ui/components/panel_feedback/PreviewToggle.test.ts +0 -75
  1248. package/front_end/ui/components/render_coordinator/render_coordinator.test.ts +0 -243
  1249. package/front_end/ui/components/report_view/ReportView.test.ts +0 -44
  1250. package/front_end/ui/components/request_link_icon/RequestLinkIcon.test.ts +0 -298
  1251. package/front_end/ui/components/settings/SettingCheckbox.test.ts +0 -205
  1252. package/front_end/ui/components/settings/SettingDeprecationWarning.test.ts +0 -68
  1253. package/front_end/ui/components/snackbars/Snackbar.test.ts +0 -141
  1254. package/front_end/ui/components/survey_link/SurveyLink.test.ts +0 -118
  1255. package/front_end/ui/components/switch/SwitchImpl.test.ts +0 -54
  1256. package/front_end/ui/components/text_editor/AiCodeCompletionTeaserPlaceholder.test.ts +0 -84
  1257. package/front_end/ui/components/text_editor/AutocompleteHistory.test.ts +0 -126
  1258. package/front_end/ui/components/text_editor/ExecutionPositionHighlighter.test.ts +0 -140
  1259. package/front_end/ui/components/text_editor/TextEditor.test.ts +0 -340
  1260. package/front_end/ui/components/text_editor/TextEditorHistory.test.ts +0 -170
  1261. package/front_end/ui/components/text_editor/javascript.test.ts +0 -121
  1262. package/front_end/ui/components/text_prompt/TextPrompt.test.ts +0 -81
  1263. package/front_end/ui/components/tooltips/Tooltip.test.ts +0 -307
  1264. package/front_end/ui/components/tree_outline/TreeOutline.test.ts +0 -1472
  1265. package/front_end/ui/legacy/ARIAUtils.test.ts +0 -140
  1266. package/front_end/ui/legacy/ActionRegistration.test.ts +0 -173
  1267. package/front_end/ui/legacy/Context.test.ts +0 -14
  1268. package/front_end/ui/legacy/ContextMenu.test.ts +0 -261
  1269. package/front_end/ui/legacy/DockController.test.ts +0 -88
  1270. package/front_end/ui/legacy/FilterBar.test.ts +0 -52
  1271. package/front_end/ui/legacy/Fragment.test.ts +0 -60
  1272. package/front_end/ui/legacy/Geometry.test.ts +0 -658
  1273. package/front_end/ui/legacy/Infobar.test.ts +0 -53
  1274. package/front_end/ui/legacy/InspectorView.test.ts +0 -99
  1275. package/front_end/ui/legacy/KeyboardShortcut.test.ts +0 -28
  1276. package/front_end/ui/legacy/ListModel.test.ts +0 -78
  1277. package/front_end/ui/legacy/ListWidget.test.ts +0 -78
  1278. package/front_end/ui/legacy/SettingsUI.test.ts +0 -157
  1279. package/front_end/ui/legacy/ShortcutRegistry.test.ts +0 -35
  1280. package/front_end/ui/legacy/SplitWidget.test.ts +0 -62
  1281. package/front_end/ui/legacy/SuggestBox.test.ts +0 -126
  1282. package/front_end/ui/legacy/Toolbar.test.ts +0 -244
  1283. package/front_end/ui/legacy/Treeoutline.test.ts +0 -252
  1284. package/front_end/ui/legacy/UIUtils.test.ts +0 -255
  1285. package/front_end/ui/legacy/View.test.ts +0 -76
  1286. package/front_end/ui/legacy/ViewManager.test.ts +0 -235
  1287. package/front_end/ui/legacy/ViewRegistration.test.ts +0 -76
  1288. package/front_end/ui/legacy/Widget.test.ts +0 -206
  1289. package/front_end/ui/legacy/XLink.test.ts +0 -68
  1290. package/front_end/ui/legacy/components/color_picker/ColorFormatSpec.test.ts +0 -217
  1291. package/front_end/ui/legacy/components/color_picker/Spectrum.test.ts +0 -101
  1292. package/front_end/ui/legacy/components/data_grid/DataGridElement.test.ts +0 -272
  1293. package/front_end/ui/legacy/components/inline_editor/AnimationTimingModel.test.ts +0 -23
  1294. package/front_end/ui/legacy/components/inline_editor/AnimationTimingUI.test.ts +0 -58
  1295. package/front_end/ui/legacy/components/inline_editor/BezierUI.test.ts +0 -124
  1296. package/front_end/ui/legacy/components/inline_editor/CSSAngle.test.ts +0 -399
  1297. package/front_end/ui/legacy/components/inline_editor/CSSLinearEasingModel.test.ts +0 -64
  1298. package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.test.ts +0 -36
  1299. package/front_end/ui/legacy/components/inline_editor/ColorMixSwatch.test.ts +0 -40
  1300. package/front_end/ui/legacy/components/inline_editor/ColorSwatch.test.ts +0 -259
  1301. package/front_end/ui/legacy/components/inline_editor/FontEditorUnitConverter.test.ts +0 -47
  1302. package/front_end/ui/legacy/components/inline_editor/FontEditorUtils.test.ts +0 -27
  1303. package/front_end/ui/legacy/components/inline_editor/LinkSwatch.test.ts +0 -86
  1304. package/front_end/ui/legacy/components/object_ui/JavaScriptREPL.test.ts +0 -45
  1305. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.test.ts +0 -72
  1306. package/front_end/ui/legacy/components/perf_ui/ChartViewport.test.ts +0 -63
  1307. package/front_end/ui/legacy/components/perf_ui/FilmStripView.test.ts +0 -218
  1308. package/front_end/ui/legacy/components/perf_ui/FlameChart.test.ts +0 -1630
  1309. package/front_end/ui/legacy/components/perf_ui/PieChart.test.ts +0 -220
  1310. package/front_end/ui/legacy/components/perf_ui/TimelineGrid.test.ts +0 -152
  1311. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.test.ts +0 -70
  1312. package/front_end/ui/legacy/components/quick_open/CommandMenu.test.ts +0 -74
  1313. package/front_end/ui/legacy/components/quick_open/FilteredListWidget.test.ts +0 -111
  1314. package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.test.ts +0 -81
  1315. package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.test.ts +0 -77
  1316. package/front_end/ui/legacy/components/source_frame/SourceFrame.test.ts +0 -146
  1317. package/front_end/ui/legacy/components/source_frame/StreamingContentHexView.test.ts +0 -67
  1318. package/front_end/ui/legacy/components/utils/JSPresentationUtils.test.ts +0 -52
  1319. package/front_end/ui/legacy/components/utils/Linkifier.test.ts +0 -547
  1320. package/front_end/ui/legacy/theme_support/ThemeSupport.test.ts +0 -129
  1321. package/front_end/ui/lit/i18n-template.test.ts +0 -51
  1322. package/front_end/ui/lit/strip-whitespace.test.ts +0 -110
  1323. package/front_end/ui/visual_logging/Debugging.test.ts +0 -21
  1324. package/front_end/ui/visual_logging/DomState.test.ts +0 -241
  1325. package/front_end/ui/visual_logging/LoggingConfig.test.ts +0 -118
  1326. package/front_end/ui/visual_logging/LoggingDriver.test.ts +0 -1069
  1327. package/front_end/ui/visual_logging/LoggingEvents.test.ts +0 -271
  1328. package/front_end/ui/visual_logging/LoggingState.test.ts +0 -122
  1329. package/front_end/ui/visual_logging/NonDomState.test.ts +0 -44
  1330. package/inspector_overlay/common.test.ts +0 -38
  1331. package/inspector_overlay/css_grid_label_helpers.test.ts +0 -962
  1332. package/inspector_overlay/highlight_common.test.ts +0 -42
  1333. package/inspector_overlay/highlight_flex_common.test.ts +0 -511
  1334. package/inspector_overlay/tool_highlight.test.ts +0 -105
  1335. package/inspector_overlay/tool_source_order.test.ts +0 -130
  1336. package/inspector_overlay/tool_window_controls.test.ts +0 -81
  1337. package/scripts/DIR_METADATA +0 -3
  1338. package/scripts/README.md +0 -26
  1339. package/scripts/__init__.py +0 -0
  1340. package/scripts/add_icon_paths.py +0 -71
  1341. package/scripts/ai_assistance/README.md +0 -60
  1342. package/scripts/ai_assistance/auto-run/auto-run.ts +0 -429
  1343. package/scripts/ai_assistance/auto-run/shared/comment-parsers.test.ts +0 -168
  1344. package/scripts/ai_assistance/auto-run/shared/comment-parsers.ts +0 -97
  1345. package/scripts/ai_assistance/auto-run/shared/puppeteer-helpers.ts +0 -307
  1346. package/scripts/ai_assistance/auto-run/targets/elements-executor.ts +0 -62
  1347. package/scripts/ai_assistance/auto-run/targets/elements-multimodal-executor.ts +0 -62
  1348. package/scripts/ai_assistance/auto-run/targets/factory.ts +0 -33
  1349. package/scripts/ai_assistance/auto-run/targets/interface.ts +0 -29
  1350. package/scripts/ai_assistance/auto-run/targets/patching-executor.ts +0 -69
  1351. package/scripts/ai_assistance/auto-run/targets/performance-insights-executor.ts +0 -99
  1352. package/scripts/ai_assistance/auto-run/targets/performance-main-thread-executor.ts +0 -99
  1353. package/scripts/ai_assistance/auto-run/trace-downloader.ts +0 -91
  1354. package/scripts/ai_assistance/eval/index.html +0 -32
  1355. package/scripts/ai_assistance/eval/index.js +0 -568
  1356. package/scripts/ai_assistance/package.json +0 -8
  1357. package/scripts/ai_assistance/suite/README.md +0 -57
  1358. package/scripts/ai_assistance/suite/helpers/evaluators.ts +0 -183
  1359. package/scripts/ai_assistance/suite/helpers/gemini.ts +0 -122
  1360. package/scripts/ai_assistance/suite/helpers/outputs.ts +0 -112
  1361. package/scripts/ai_assistance/suite/instructions/lcp-breakdown.md +0 -12
  1362. package/scripts/ai_assistance/suite/instructions/load.ts +0 -13
  1363. package/scripts/ai_assistance/suite/instructions/scoring.md +0 -27
  1364. package/scripts/ai_assistance/suite/performance.eval.ts +0 -18
  1365. package/scripts/ai_assistance/suite/to_eval_output.ts +0 -166
  1366. package/scripts/ai_assistance/suite/types.d.ts +0 -40
  1367. package/scripts/ai_assistance/suite/upload_to_gcp.ts +0 -104
  1368. package/scripts/ai_assistance/to_tsv.mjs +0 -39
  1369. package/scripts/ai_assistance/tsconfig.json +0 -14
  1370. package/scripts/ai_assistance/types.d.ts +0 -81
  1371. package/scripts/build/README.md +0 -2
  1372. package/scripts/build/__init__.py +0 -3
  1373. package/scripts/build/assert_grd.py +0 -57
  1374. package/scripts/build/assert_third_party_readmes.py +0 -70
  1375. package/scripts/build/build_inspector_overlay.py +0 -106
  1376. package/scripts/build/code_generator_frontend.py +0 -413
  1377. package/scripts/build/compress_files.js +0 -89
  1378. package/scripts/build/cross_reference_ninja_and_tsc.js +0 -180
  1379. package/scripts/build/devtools_plugin.js +0 -164
  1380. package/scripts/build/efficiently_recompile.py +0 -29
  1381. package/scripts/build/esbuild.js +0 -56
  1382. package/scripts/build/generate_aria.py +0 -36
  1383. package/scripts/build/generate_css_js_files.js +0 -83
  1384. package/scripts/build/generate_deprecations.py +0 -99
  1385. package/scripts/build/generate_devtools_grd.py +0 -123
  1386. package/scripts/build/generate_devtools_json.js +0 -27
  1387. package/scripts/build/generate_html_entrypoint.js +0 -49
  1388. package/scripts/build/generate_supported_css.py +0 -135
  1389. package/scripts/build/ninja/README.md +0 -190
  1390. package/scripts/build/ninja/bundle.gni +0 -85
  1391. package/scripts/build/ninja/copy-file.js +0 -38
  1392. package/scripts/build/ninja/copy-files.js +0 -39
  1393. package/scripts/build/ninja/copy.gni +0 -59
  1394. package/scripts/build/ninja/devtools_entrypoint.gni +0 -221
  1395. package/scripts/build/ninja/devtools_module.gni +0 -33
  1396. package/scripts/build/ninja/devtools_pre_built.gni +0 -55
  1397. package/scripts/build/ninja/generate-declaration.js +0 -18
  1398. package/scripts/build/ninja/generate-tsconfig.js +0 -46
  1399. package/scripts/build/ninja/generate_css.gni +0 -45
  1400. package/scripts/build/ninja/minify-json-files.js +0 -20
  1401. package/scripts/build/ninja/minify_json.gni +0 -32
  1402. package/scripts/build/ninja/node.gni +0 -36
  1403. package/scripts/build/ninja/vars.gni +0 -19
  1404. package/scripts/build/ninja/wasm.gni +0 -25
  1405. package/scripts/build/ninja/write-if-changed.js +0 -27
  1406. package/scripts/build/rollup.config.mjs +0 -31
  1407. package/scripts/build/tests/generate_css_js_files_test.js +0 -40
  1408. package/scripts/build/tests/plugins_test.js +0 -149
  1409. package/scripts/build/typescript/README.md +0 -94
  1410. package/scripts/build/typescript/tests/README.md +0 -10
  1411. package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/BUILDCONFIG.gn +0 -10
  1412. package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/build_output.txt.expected +0 -14
  1413. package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/front_end/module/exporting.ts +0 -1
  1414. package/scripts/build/typescript/tests/fixtures/compilation_failure_front_end/front_end/module/index.ts +0 -3
  1415. package/scripts/build/typescript/tests/fixtures/recompile/BUILDCONFIG.gn +0 -10
  1416. package/scripts/build/typescript/tests/fixtures/recompile/build_output.txt.expected +0 -8
  1417. package/scripts/build/typescript/tests/fixtures/recompile/build_output.txt.expected.regen +0 -4
  1418. package/scripts/build/typescript/tests/fixtures/recompile/front_end/module/exporting.ts +0 -1
  1419. package/scripts/build/typescript/tests/fixtures/recompile/front_end/module/module.ts +0 -5
  1420. package/scripts/build/typescript/tests/fixtures/recompile_dep/BUILDCONFIG.gn +0 -10
  1421. package/scripts/build/typescript/tests/fixtures/recompile_dep/build_output.txt.expected +0 -8
  1422. package/scripts/build/typescript/tests/fixtures/recompile_dep/build_output.txt.expected.regen +0 -6
  1423. package/scripts/build/typescript/tests/fixtures/recompile_dep/expected.tsbuildinfo +0 -2084
  1424. package/scripts/build/typescript/tests/fixtures/recompile_dep/front_end/module/exporting.ts +0 -1
  1425. package/scripts/build/typescript/tests/fixtures/recompile_dep/front_end/module/module.ts +0 -7
  1426. package/scripts/build/typescript/tests/fixtures/simple_dep/BUILDCONFIG.gn +0 -10
  1427. package/scripts/build/typescript/tests/fixtures/simple_dep/build_output.txt.expected +0 -6
  1428. package/scripts/build/typescript/tests/fixtures/simple_dep/build_output.txt.expected.regen +0 -2
  1429. package/scripts/build/typescript/tests/fixtures/simple_dep/front_end/module/exporting.ts +0 -1
  1430. package/scripts/build/typescript/tests/fixtures/simple_dep/front_end/module/index.ts +0 -3
  1431. package/scripts/build/typescript/tests/fixtures/test_dep/BUILDCONFIG.gn +0 -10
  1432. package/scripts/build/typescript/tests/fixtures/test_dep/build_output.txt.expected +0 -8
  1433. package/scripts/build/typescript/tests/fixtures/test_dep/front_end/module/exporting.ts +0 -1
  1434. package/scripts/build/typescript/tests/fixtures/test_dep/front_end/module/module.ts +0 -5
  1435. package/scripts/build/typescript/tests/verify_ts_libary.sh +0 -88
  1436. package/scripts/build/typescript/ts_library.py +0 -336
  1437. package/scripts/build/typescript/typescript.gni +0 -290
  1438. package/scripts/build/wasm-as.py +0 -87
  1439. package/scripts/build/wasm_sourcemap.mjs +0 -22
  1440. package/scripts/check_esbuild_versions.js +0 -51
  1441. package/scripts/check_experiments.js +0 -292
  1442. package/scripts/check_external_links.js +0 -150
  1443. package/scripts/component_server/README.md +0 -43
  1444. package/scripts/component_server/server.js +0 -597
  1445. package/scripts/devtools_build.mjs +0 -396
  1446. package/scripts/devtools_build.test.mjs +0 -243
  1447. package/scripts/devtools_paths.js +0 -193
  1448. package/scripts/devtools_paths.py +0 -127
  1449. package/scripts/eslint_rules/README.md +0 -29
  1450. package/scripts/eslint_rules/lib/canvas-context-tracking.ts +0 -154
  1451. package/scripts/eslint_rules/lib/check-css-import.ts +0 -52
  1452. package/scripts/eslint_rules/lib/check-enumerated-histograms.ts +0 -42
  1453. package/scripts/eslint_rules/lib/check-license-header.ts +0 -222
  1454. package/scripts/eslint_rules/lib/check-test-definitions.ts +0 -91
  1455. package/scripts/eslint_rules/lib/check-was-shown-methods.ts +0 -57
  1456. package/scripts/eslint_rules/lib/enforce-custom-element-definitions-location.ts +0 -95
  1457. package/scripts/eslint_rules/lib/enforce-custom-event-names.ts +0 -174
  1458. package/scripts/eslint_rules/lib/enforce-default-import-name.ts +0 -86
  1459. package/scripts/eslint_rules/lib/enforce-optional-properties-last.ts +0 -87
  1460. package/scripts/eslint_rules/lib/enforce-ui-strings-as-const.ts +0 -69
  1461. package/scripts/eslint_rules/lib/es-modules-import.ts +0 -405
  1462. package/scripts/eslint_rules/lib/html-tagged-template.ts +0 -85
  1463. package/scripts/eslint_rules/lib/inject-checkbox-styles.ts +0 -187
  1464. package/scripts/eslint_rules/lib/inline-type-imports.ts +0 -217
  1465. package/scripts/eslint_rules/lib/jslog-context-list.ts +0 -192
  1466. package/scripts/eslint_rules/lib/l10n-filename-matches.ts +0 -136
  1467. package/scripts/eslint_rules/lib/l10n-i18nString-call-only-with-uistrings.ts +0 -62
  1468. package/scripts/eslint_rules/lib/l10n-no-i18nString-calls-module-instantiation.ts +0 -61
  1469. package/scripts/eslint_rules/lib/l10n-no-locked-or-placeholder-only-phrase.ts +0 -72
  1470. package/scripts/eslint_rules/lib/l10n-no-uistrings-export.ts +0 -89
  1471. package/scripts/eslint_rules/lib/l10n-no-unused-message.ts +0 -159
  1472. package/scripts/eslint_rules/lib/lit-no-attribute-quotes.ts +0 -111
  1473. package/scripts/eslint_rules/lib/lit-template-result-or-nothing.ts +0 -158
  1474. package/scripts/eslint_rules/lib/no-a-tags-in-lit.ts +0 -43
  1475. package/scripts/eslint_rules/lib/no-adopted-style-sheets.ts +0 -37
  1476. package/scripts/eslint_rules/lib/no-assert-deep-strict-equal.ts +0 -61
  1477. package/scripts/eslint_rules/lib/no-assert-equal-boolean-null-undefined.ts +0 -178
  1478. package/scripts/eslint_rules/lib/no-assert-equal.ts +0 -88
  1479. package/scripts/eslint_rules/lib/no-assert-strict-equal-for-arrays-and-objects.ts +0 -86
  1480. package/scripts/eslint_rules/lib/no-bound-component-methods.ts +0 -161
  1481. package/scripts/eslint_rules/lib/no-commented-out-console.ts +0 -49
  1482. package/scripts/eslint_rules/lib/no-commented-out-import.ts +0 -46
  1483. package/scripts/eslint_rules/lib/no-customized-builtin-elements.ts +0 -140
  1484. package/scripts/eslint_rules/lib/no-deprecated-component-usages.ts +0 -46
  1485. package/scripts/eslint_rules/lib/no-document-body-mutation.ts +0 -102
  1486. package/scripts/eslint_rules/lib/no-imperative-dom-api/adorner.ts +0 -48
  1487. package/scripts/eslint_rules/lib/no-imperative-dom-api/aria-utils.ts +0 -109
  1488. package/scripts/eslint_rules/lib/no-imperative-dom-api/ast.ts +0 -86
  1489. package/scripts/eslint_rules/lib/no-imperative-dom-api/button.ts +0 -81
  1490. package/scripts/eslint_rules/lib/no-imperative-dom-api/class-member.ts +0 -54
  1491. package/scripts/eslint_rules/lib/no-imperative-dom-api/data-grid.ts +0 -151
  1492. package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-api-devtools-extensions.ts +0 -32
  1493. package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-api.ts +0 -141
  1494. package/scripts/eslint_rules/lib/no-imperative-dom-api/dom-fragment.ts +0 -307
  1495. package/scripts/eslint_rules/lib/no-imperative-dom-api/split-widget.ts +0 -125
  1496. package/scripts/eslint_rules/lib/no-imperative-dom-api/toolbar.ts +0 -193
  1497. package/scripts/eslint_rules/lib/no-imperative-dom-api/ui-fragment.ts +0 -55
  1498. package/scripts/eslint_rules/lib/no-imperative-dom-api/ui-utils.ts +0 -213
  1499. package/scripts/eslint_rules/lib/no-imperative-dom-api/widget.ts +0 -96
  1500. package/scripts/eslint_rules/lib/no-imperative-dom-api.ts +0 -270
  1501. package/scripts/eslint_rules/lib/no-importing-images-from-src.ts +0 -83
  1502. package/scripts/eslint_rules/lib/no-imports-in-directory.ts +0 -84
  1503. package/scripts/eslint_rules/lib/no-lit-render-outside-of-view.ts +0 -105
  1504. package/scripts/eslint_rules/lib/no-new-lit-element-components.ts +0 -48
  1505. package/scripts/eslint_rules/lib/no-self-closing-custom-element-tagnames.ts +0 -42
  1506. package/scripts/eslint_rules/lib/no-underscored-properties.ts +0 -78
  1507. package/scripts/eslint_rules/lib/prefer-assert-instance-of.ts +0 -80
  1508. package/scripts/eslint_rules/lib/prefer-assert-is-ok.ts +0 -103
  1509. package/scripts/eslint_rules/lib/prefer-assert-length-of.ts +0 -76
  1510. package/scripts/eslint_rules/lib/prefer-assert-strict-equal.ts +0 -92
  1511. package/scripts/eslint_rules/lib/prefer-private-class-members.ts +0 -45
  1512. package/scripts/eslint_rules/lib/prefer-sinon-assert.ts +0 -151
  1513. package/scripts/eslint_rules/lib/prefer-url-string.ts +0 -109
  1514. package/scripts/eslint_rules/lib/set-data-type-reference.ts +0 -69
  1515. package/scripts/eslint_rules/lib/static-custom-event-names.ts +0 -215
  1516. package/scripts/eslint_rules/lib/trace-engine-test-timeouts.ts +0 -125
  1517. package/scripts/eslint_rules/lib/utils/l10n-helper.ts +0 -48
  1518. package/scripts/eslint_rules/lib/utils/lit.ts +0 -73
  1519. package/scripts/eslint_rules/lib/utils/ruleCreator.ts +0 -16
  1520. package/scripts/eslint_rules/lib/utils/treeHelpers.ts +0 -13
  1521. package/scripts/eslint_rules/lib/validate-timing-types.ts +0 -330
  1522. package/scripts/eslint_rules/rules-dir.mjs +0 -78
  1523. package/scripts/eslint_rules/tests/canvas-context-tracking.test.ts +0 -124
  1524. package/scripts/eslint_rules/tests/check-css-import.test.ts +0 -43
  1525. package/scripts/eslint_rules/tests/check-enumerated-histograms.test.ts +0 -31
  1526. package/scripts/eslint_rules/tests/check-license-header.test.ts +0 -293
  1527. package/scripts/eslint_rules/tests/check-test-definitions.test.ts +0 -155
  1528. package/scripts/eslint_rules/tests/check-was-shown-methods.test.ts +0 -103
  1529. package/scripts/eslint_rules/tests/check_css_import_test_file.css +0 -5
  1530. package/scripts/eslint_rules/tests/enforce-custom-element-definitions-location.test.ts +0 -56
  1531. package/scripts/eslint_rules/tests/enforce-custom-event-names.test.ts +0 -124
  1532. package/scripts/eslint_rules/tests/enforce-default-import-name.test.ts +0 -53
  1533. package/scripts/eslint_rules/tests/enforce-optional-properties-last.test.ts +0 -137
  1534. package/scripts/eslint_rules/tests/enforce-ui-strings-as-const.test.ts +0 -35
  1535. package/scripts/eslint_rules/tests/es-modules-import.test.ts +0 -332
  1536. package/scripts/eslint_rules/tests/html-tagged-template.test.ts +0 -103
  1537. package/scripts/eslint_rules/tests/inject-checkbox-styles.test.ts +0 -219
  1538. package/scripts/eslint_rules/tests/inline-type-imports.test.ts +0 -82
  1539. package/scripts/eslint_rules/tests/jslog-context-list.test.ts +0 -218
  1540. package/scripts/eslint_rules/tests/l10n-filename-matches.test.ts +0 -90
  1541. package/scripts/eslint_rules/tests/l10n-i18nString-call-only-with-uistrings.test.ts +0 -44
  1542. package/scripts/eslint_rules/tests/l10n-no-i18nString-calls-module-instantiation.test.ts +0 -77
  1543. package/scripts/eslint_rules/tests/l10n-no-locked-or-placeholder-only-phrase.test.ts +0 -45
  1544. package/scripts/eslint_rules/tests/l10n-no-uistrings-export.test.ts +0 -50
  1545. package/scripts/eslint_rules/tests/l10n-no-unused-message.test.ts +0 -119
  1546. package/scripts/eslint_rules/tests/lit-no-attribute-quotes.test.ts +0 -43
  1547. package/scripts/eslint_rules/tests/lit-template-result-or-nothing.test.ts +0 -142
  1548. package/scripts/eslint_rules/tests/no-a-tags-in-lit.test.ts +0 -67
  1549. package/scripts/eslint_rules/tests/no-adopted-style-sheets.test.ts +0 -52
  1550. package/scripts/eslint_rules/tests/no-assert-deep-strict-equal.test.ts +0 -51
  1551. package/scripts/eslint_rules/tests/no-assert-equal-boolean-null-undefined.test.ts +0 -207
  1552. package/scripts/eslint_rules/tests/no-assert-equal.test.ts +0 -101
  1553. package/scripts/eslint_rules/tests/no-assert-strict-equal-for-arrays-and-objects.test.ts +0 -87
  1554. package/scripts/eslint_rules/tests/no-bound-component-methods.test.ts +0 -105
  1555. package/scripts/eslint_rules/tests/no-commented-out-console.test.ts +0 -35
  1556. package/scripts/eslint_rules/tests/no-commented-out-import.test.ts +0 -45
  1557. package/scripts/eslint_rules/tests/no-customized-builtin-elements.test.ts +0 -150
  1558. package/scripts/eslint_rules/tests/no-deprecated-component-usages.test.ts +0 -46
  1559. package/scripts/eslint_rules/tests/no-document-body-mutation.test.ts +0 -45
  1560. package/scripts/eslint_rules/tests/no-imperative-dom-api.test.ts +0 -1237
  1561. package/scripts/eslint_rules/tests/no-importing-images-from-src.test.ts +0 -40
  1562. package/scripts/eslint_rules/tests/no-imports-in-directory.test.ts +0 -104
  1563. package/scripts/eslint_rules/tests/no-lit-render-outside-of-view.test.ts +0 -130
  1564. package/scripts/eslint_rules/tests/no-new-lit-element-components.test.ts +0 -31
  1565. package/scripts/eslint_rules/tests/no-self-closing-custom-element-tagnames.test.ts +0 -59
  1566. package/scripts/eslint_rules/tests/no-underscored-properties.test.ts +0 -99
  1567. package/scripts/eslint_rules/tests/prefer-assert-instance-of.test.ts +0 -195
  1568. package/scripts/eslint_rules/tests/prefer-assert-is-ok.test.ts +0 -182
  1569. package/scripts/eslint_rules/tests/prefer-assert-length-of.test.ts +0 -143
  1570. package/scripts/eslint_rules/tests/prefer-assert-strict-equal.test.ts +0 -367
  1571. package/scripts/eslint_rules/tests/prefer-private-class-members.test.ts +0 -59
  1572. package/scripts/eslint_rules/tests/prefer-sinon-assert.test.ts +0 -333
  1573. package/scripts/eslint_rules/tests/prefer-url-string.test.ts +0 -87
  1574. package/scripts/eslint_rules/tests/set-data-type-reference.test.ts +0 -60
  1575. package/scripts/eslint_rules/tests/static-custom-event-names.test.ts +0 -179
  1576. package/scripts/eslint_rules/tests/trace-engine-test-timeouts.test.ts +0 -59
  1577. package/scripts/eslint_rules/tests/utils/RuleTester.ts +0 -28
  1578. package/scripts/eslint_rules/tests/utils.test.ts +0 -79
  1579. package/scripts/eslint_rules/tests/validate-timing-types.test.ts +0 -289
  1580. package/scripts/eslint_rules/tsconfig.json +0 -14
  1581. package/scripts/extract_bugs.ts +0 -126
  1582. package/scripts/generate_metric_compare_strings.js +0 -130
  1583. package/scripts/hosted_mode/cert.pem +0 -21
  1584. package/scripts/hosted_mode/key.pem +0 -28
  1585. package/scripts/hosted_mode/server.js +0 -258
  1586. package/scripts/javascript_natives/helpers.js +0 -232
  1587. package/scripts/javascript_natives/index.js +0 -105
  1588. package/scripts/javascript_natives/package.json +0 -9
  1589. package/scripts/javascript_natives/test.d.ts +0 -13
  1590. package/scripts/javascript_natives/tests.js +0 -195
  1591. package/scripts/migration/class-fields/migrate.js +0 -77
  1592. package/scripts/migration/class-fields/migrate.sh +0 -8
  1593. package/scripts/migration/class-fields/package.json +0 -5
  1594. package/scripts/migration/e2e_non_hosted_gemini.mjs +0 -102
  1595. package/scripts/migration/web-tests-esm/rename-legacy-global.mjs +0 -129
  1596. package/scripts/npm_test.js +0 -141
  1597. package/scripts/protocol_typescript/protocol_dts_generator.ts +0 -470
  1598. package/scripts/protocol_typescript/protocol_schema.d.ts +0 -97
  1599. package/scripts/reformat-clang-js-ts.js +0 -71
  1600. package/scripts/run_build.mjs +0 -128
  1601. package/scripts/run_on_target.mjs +0 -88
  1602. package/scripts/run_start.mjs +0 -236
  1603. package/scripts/scaffold/README.md +0 -4
  1604. package/scripts/scaffold/scaffold-widget.js +0 -167
  1605. package/scripts/scaffold/templates/WidgetTemplate.css.txt +0 -9
  1606. package/scripts/scaffold/templates/WidgetTemplate.ts.txt +0 -60
  1607. package/scripts/search-trace-files.js +0 -66
  1608. package/scripts/stylelint_rules/lib/use_theme_colors.mjs +0 -322
  1609. package/scripts/stylelint_rules/tests/use_theme_colors.test.js +0 -515
  1610. package/scripts/tools/update_goldens.py +0 -432
  1611. package/scripts/tsconfig.json +0 -11
  1612. package/scripts/utils.js +0 -160
  1613. package/scripts/whitespaces.txt +0 -12
@@ -1,1793 +0,0 @@
1
- // Copyright 2021 The Chromium Authors. All rights reserved.
2
- // Use of this source code is governed by a BSD-style license that can be
3
- // found in the LICENSE file.
4
-
5
- import * as Common from '../../core/common/common.js';
6
- import * as Platform from '../../core/platform/platform.js';
7
- import * as SDK from '../../core/sdk/sdk.js';
8
- import type * as Protocol from '../../generated/protocol.js';
9
- import * as Bindings from '../../models/bindings/bindings.js';
10
- import * as Trace from '../../models/trace/trace.js';
11
- import * as Workspace from '../../models/workspace/workspace.js';
12
- import {
13
- dispatchClickEvent,
14
- doubleRaf,
15
- raf,
16
- renderElementIntoDOM,
17
- } from '../../testing/DOMHelpers.js';
18
- import {
19
- createTarget,
20
- deinitializeGlobalVars,
21
- expectConsoleLogs,
22
- initializeGlobalVars
23
- } from '../../testing/EnvironmentHelpers.js';
24
- import {
25
- clearMockConnectionResponseHandler,
26
- describeWithMockConnection,
27
- setMockConnectionResponseHandler,
28
- } from '../../testing/MockConnection.js';
29
- import {
30
- loadBasicSourceMapExample,
31
- setupPageResourceLoaderForSourceMap,
32
- } from '../../testing/SourceMapHelpers.js';
33
- import {
34
- allThreadEntriesInTrace,
35
- getBaseTraceParseModelData,
36
- getEventOfType,
37
- getMainThread,
38
- makeCompleteEvent,
39
- makeInstantEvent,
40
- makeMockRendererHandlerData,
41
- makeMockSamplesHandlerData,
42
- makeProfileCall,
43
- } from '../../testing/TraceHelpers.js';
44
- import {TraceLoader} from '../../testing/TraceLoader.js';
45
- import * as Components from '../../ui/legacy/components/utils/utils.js';
46
- import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
47
-
48
- import * as Timeline from './timeline.js';
49
- import * as Utils from './utils/utils.js';
50
-
51
- const {urlString} = Platform.DevToolsPath;
52
-
53
- describeWithMockConnection('TimelineUIUtils', function() {
54
- before(async () => {
55
- await initializeGlobalVars();
56
- });
57
-
58
- after(async () => await deinitializeGlobalVars());
59
-
60
- let target: SDK.Target.Target;
61
- // Trace events contain script ids as strings. However, the linkifier
62
- // utilities assume it is a number because that's how it's defined at
63
- // the protocol level. For practicality, we declare these two
64
- // variables so that we can satisfy type checking throughout the tests.
65
- const SCRIPT_ID_NUMBER = 1;
66
- const SCRIPT_ID_STRING = String(SCRIPT_ID_NUMBER) as Protocol.Runtime.ScriptId;
67
-
68
- beforeEach(() => {
69
- target = createTarget();
70
-
71
- const workspace = Workspace.Workspace.WorkspaceImpl.instance();
72
- const targetManager = SDK.TargetManager.TargetManager.instance();
73
- const resourceMapping = new Bindings.ResourceMapping.ResourceMapping(targetManager, workspace);
74
- const ignoreListManager = Workspace.IgnoreListManager.IgnoreListManager.instance({forceNew: true});
75
- Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance({
76
- forceNew: true,
77
- resourceMapping,
78
- targetManager,
79
- ignoreListManager,
80
- });
81
- });
82
-
83
- afterEach(() => {
84
- clearMockConnectionResponseHandler('DOM.pushNodesByBackendIdsToFrontend');
85
- });
86
-
87
- describe('script location as an URL', function() {
88
- it('makes the script location of a call frame a full URL when the inspected target is not the same the call frame was taken from (e.g. a loaded file)',
89
- async function() {
90
- // The actual trace doesn't matter here, just need one so we can pass
91
- // it into buildDetailsNodeForTraceEvent
92
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-with-commit.json.gz');
93
-
94
- const fakeFunctionCall: Trace.Types.Events.FunctionCall = {
95
- name: Trace.Types.Events.Name.FUNCTION_CALL,
96
- ph: Trace.Types.Events.Phase.COMPLETE,
97
- cat: 'devtools-timeline',
98
- dur: Trace.Types.Timing.Micro(100),
99
- ts: Trace.Types.Timing.Micro(100),
100
- pid: Trace.Types.Events.ProcessID(1),
101
- tid: Trace.Types.Events.ThreadID(1),
102
- args: {
103
- data: {
104
- functionName: 'test',
105
- url: 'https://google.com/test.js',
106
- scriptId: Number(SCRIPT_ID_STRING),
107
- lineNumber: 1,
108
- columnNumber: 1,
109
- },
110
- },
111
- };
112
-
113
- target.setInspectedURL(urlString`https://not-google.com`);
114
- const node = await Timeline.TimelineUIUtils.TimelineUIUtils.buildDetailsNodeForTraceEvent(
115
- fakeFunctionCall, target, new Components.Linkifier.Linkifier(), false, parsedTrace);
116
- if (!node) {
117
- throw new Error('Node was unexpectedly null');
118
- }
119
- // URL path
120
- assert.strictEqual(node.textContent, 'test @ /test.js:1:1');
121
- });
122
-
123
- it('makes the script location of a call frame a script name when the inspected target is the one the call frame was taken from',
124
- async function() {
125
- // The actual trace doesn't matter here, just need one so we can pass
126
- // it into buildDetailsNodeForTraceEvent
127
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-with-commit.json.gz');
128
- const fakeFunctionCall: Trace.Types.Events.FunctionCall = {
129
- name: Trace.Types.Events.Name.FUNCTION_CALL,
130
- ph: Trace.Types.Events.Phase.COMPLETE,
131
- cat: 'devtools-timeline',
132
- dur: Trace.Types.Timing.Micro(100),
133
- ts: Trace.Types.Timing.Micro(100),
134
- pid: Trace.Types.Events.ProcessID(1),
135
- tid: Trace.Types.Events.ThreadID(1),
136
- args: {
137
- data: {
138
- functionName: 'test',
139
- url: 'https://google.com/test.js',
140
- scriptId: Number(SCRIPT_ID_STRING),
141
- lineNumber: 1,
142
- columnNumber: 1,
143
- },
144
- },
145
- };
146
- target.setInspectedURL(urlString`https://google.com`);
147
- const node = await Timeline.TimelineUIUtils.TimelineUIUtils.buildDetailsNodeForTraceEvent(
148
- fakeFunctionCall, target, new Components.Linkifier.Linkifier(), false, parsedTrace);
149
- if (!node) {
150
- throw new Error('Node was unexpectedly null');
151
- }
152
- assert.strictEqual(node.textContent, 'test @ /test.js:1:1');
153
- });
154
- });
155
-
156
- describe('mapping to authored script when recording is fresh', function() {
157
- beforeEach(async () => {
158
- // Register mock script and source map.
159
-
160
- const sourceMapContent = JSON.stringify({
161
- version: 3,
162
- names: ['unminified', 'par1', 'par2', 'console', 'log'],
163
- sources: [
164
- '/original-script.ts',
165
- ],
166
- file: '/test.js',
167
- sourcesContent: ['function unminified(par1, par2) {\n console.log(par1, par2);\n}\n'],
168
- mappings: 'AAAA,SAASA,EAAWC,EAAMC,GACxBC,QAAQC,IAAIH,EAAMC',
169
- });
170
- setupPageResourceLoaderForSourceMap(sourceMapContent);
171
- target.setInspectedURL(urlString`https://google.com`);
172
- const scriptUrl = urlString`https://google.com/script.js`;
173
- const sourceMapUrl = urlString`script.js.map`;
174
- const debuggerModel = target.model(SDK.DebuggerModel.DebuggerModel);
175
- assert.isNotNull(debuggerModel);
176
- if (debuggerModel === null) {
177
- return;
178
- }
179
- const sourceMapManager = debuggerModel.sourceMapManager();
180
- const script = debuggerModel.parsedScriptSource(
181
- SCRIPT_ID_STRING, scriptUrl, 0, 0, 0, 0, 0, '', undefined, false, sourceMapUrl, true, false, length, false,
182
- null, null, null, null, null, null);
183
- await sourceMapManager.sourceMapForClientPromise(script);
184
- });
185
- it('maps to the authored script when a call frame is provided', async function() {
186
- const linkifier = new Components.Linkifier.Linkifier();
187
- const node = Timeline.TimelineUIUtils.TimelineUIUtils.linkifyLocation({
188
- scriptId: SCRIPT_ID_STRING,
189
- url: 'https://google.com/test.js',
190
- lineNumber: 0,
191
- columnNumber: 0,
192
- isFreshRecording: true,
193
- target,
194
- linkifier,
195
- });
196
- if (!node) {
197
- throw new Error('Node was unexpectedly null');
198
- }
199
- // Wait for the location to be resolved using the registered source map.
200
- await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance().pendingLiveLocationChangesPromise();
201
-
202
- assert.strictEqual(node.textContent, 'original-script.ts:1:1');
203
- });
204
-
205
- it('maps to the authored script when a trace event from the new engine with a stack trace is provided',
206
- async function() {
207
- const functionCallEvent = makeCompleteEvent('FunctionCall', 10, 100);
208
- functionCallEvent.args = ({
209
- data: {
210
- stackTrace: [{
211
- functionName: 'test',
212
- url: 'https://google.com/test.js',
213
- scriptId: SCRIPT_ID_NUMBER,
214
- lineNumber: 0,
215
- columnNumber: 0,
216
- }],
217
- },
218
- });
219
- const linkifier = new Components.Linkifier.Linkifier();
220
- const node =
221
- Timeline.TimelineUIUtils.TimelineUIUtils.linkifyTopCallFrame(functionCallEvent, target, linkifier, true);
222
- if (!node) {
223
- throw new Error('Node was unexpectedly null');
224
- }
225
- // Wait for the location to be resolved using the registered source map.
226
- await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance()
227
- .pendingLiveLocationChangesPromise();
228
-
229
- assert.strictEqual(node.textContent, 'original-script.ts:1:1');
230
- });
231
- });
232
-
233
- describe('mapping to authored function name when recording is fresh', function() {
234
- expectConsoleLogs({
235
- error: ['Error: No LanguageSelector instance exists yet.'],
236
- });
237
- it('maps to the authored name and script of a profile call', async function() {
238
- const {script} = await loadBasicSourceMapExample(target);
239
- // Ideally we would get a column number we can use from the source
240
- // map however the current status of the source map helpers makes
241
- // it difficult to do so.
242
- const columnNumber = 51;
243
- const profileCall =
244
- makeProfileCall('function', 10, 100, Trace.Types.Events.ProcessID(1), Trace.Types.Events.ThreadID(1));
245
-
246
- profileCall.callFrame = {
247
- columnNumber,
248
- functionName: 'minified',
249
- lineNumber: 0,
250
- scriptId: script.scriptId,
251
- url: 'file://gen.js',
252
- };
253
- const workersData: Trace.Handlers.ModelHandlers.Workers.WorkersData = {
254
- workerSessionIdEvents: [],
255
- workerIdByThread: new Map(),
256
- workerURLById: new Map(),
257
- };
258
- // This only includes data used in the SourceMapsResolver and
259
- // TimelineUIUtils
260
- const parsedTrace = getBaseTraceParseModelData({
261
- Samples: makeMockSamplesHandlerData([profileCall]),
262
- Workers: workersData,
263
- Renderer: makeMockRendererHandlerData([profileCall]),
264
- });
265
-
266
- const resolver = new Timeline.Utils.SourceMapsResolver.SourceMapsResolver(parsedTrace);
267
- await resolver.install();
268
-
269
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
270
- parsedTrace, profileCall, new Components.Linkifier.Linkifier(), false, null);
271
- const stackTraceData = getStackTraceForDetailsElement(details);
272
- assert.exists(stackTraceData);
273
- assert.isTrue(stackTraceData[0].startsWith('someFunction @'));
274
- });
275
- it('maps to the authored name and script of a function call', async function() {
276
- const {script} = await loadBasicSourceMapExample(target);
277
- const [lineNumber, columnNumber, ts, dur, pid, tid] =
278
- [0, 51, 10, 100, Trace.Types.Events.ProcessID(1), Trace.Types.Events.ThreadID(1)];
279
- const profileCall = makeProfileCall('function', ts, dur, pid, tid);
280
-
281
- profileCall.callFrame = {
282
- columnNumber,
283
- functionName: 'minified',
284
- lineNumber: 0,
285
- scriptId: script.scriptId,
286
- url: 'file://gen.js',
287
- };
288
-
289
- const functionCall = makeCompleteEvent(Trace.Types.Events.Name.FUNCTION_CALL, ts, dur, '', pid, tid) as
290
- Trace.Types.Events.FunctionCall;
291
- functionCall.args = {
292
- data: {
293
- // line and column number of function calls have an offset
294
- // from CPU profile values.
295
- columnNumber: columnNumber + 1,
296
- lineNumber: lineNumber + 1,
297
- functionName: 'minified',
298
- scriptId: script.scriptId,
299
- url: 'file://gen.js',
300
- },
301
- };
302
- const workersData: Trace.Handlers.ModelHandlers.Workers.WorkersData = {
303
- workerSessionIdEvents: [],
304
- workerIdByThread: new Map(),
305
- workerURLById: new Map(),
306
- };
307
- // This only includes data used in the SourceMapsResolver and
308
- // TimelineUIUtils
309
- const parsedTrace = getBaseTraceParseModelData({
310
- Samples: makeMockSamplesHandlerData([profileCall]),
311
- Workers: workersData,
312
- Renderer: makeMockRendererHandlerData([functionCall]),
313
- });
314
-
315
- const resolver = new Timeline.Utils.SourceMapsResolver.SourceMapsResolver(parsedTrace);
316
- await resolver.install();
317
-
318
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
319
- parsedTrace,
320
- functionCall,
321
- new Components.Linkifier.Linkifier(),
322
- false,
323
- null,
324
- );
325
- const detailsData = getRowDataForDetailsElement(details).find(row => row.title?.startsWith('Function'));
326
- assert.exists(detailsData);
327
- assert.deepEqual(detailsData, {title: 'Function', value: 'someFunction @ gen.js:1:52'});
328
- });
329
- });
330
- describe('adjusting timestamps for events and navigations', function() {
331
- expectConsoleLogs({
332
- error: ['Error: No LanguageSelector instance exists yet.'],
333
- });
334
- it('adjusts the time for a DCL event after a navigation', async function() {
335
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
336
-
337
- const mainFrameID = parsedTrace.Meta.mainFrameId;
338
-
339
- const dclEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(event => {
340
- return Trace.Types.Events.isMarkDOMContent(event) && event.args.data?.frame === mainFrameID;
341
- });
342
- if (!dclEvent) {
343
- throw new Error('Could not find DCL event');
344
- }
345
-
346
- const traceMinBound = parsedTrace.Meta.traceBounds.min;
347
-
348
- // Round the time to 2DP to avoid needlessly long expectation numbers!
349
- const unadjustedStartTimeMilliseconds = Trace.Helpers.Timing
350
- .microToMilli(
351
- Trace.Types.Timing.Micro(dclEvent.ts - traceMinBound),
352
- )
353
- .toFixed(2);
354
- assert.strictEqual(unadjustedStartTimeMilliseconds, String(190.79));
355
-
356
- const adjustedTime =
357
- Timeline.TimelineUIUtils.timeStampForEventAdjustedForClosestNavigationIfPossible(dclEvent, parsedTrace);
358
- assert.strictEqual(adjustedTime.toFixed(2), String(178.92));
359
- });
360
-
361
- it('can adjust the times for events that are not PageLoad markers', async function() {
362
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'user-timings.json.gz');
363
- // Use a performance.mark event. Exact event is unimportant except that
364
- // it should not be a Page Load event as those are covered by the tests
365
- // above.
366
- const userMark = parsedTrace.UserTimings.performanceMarks.find(event => event.name === 'mark1');
367
- if (!userMark) {
368
- throw new Error('Could not find user mark');
369
- }
370
-
371
- const adjustedMarkTime =
372
- Timeline.TimelineUIUtils.timeStampForEventAdjustedForClosestNavigationIfPossible(userMark, parsedTrace);
373
- assert.strictEqual(adjustedMarkTime.toFixed(2), String(79.88));
374
- });
375
- });
376
-
377
- function getInnerTextAcrossShadowRoots(root: Node|null): string {
378
- // Don't recurse into elements that are not displayed
379
- if (!root || (root instanceof HTMLElement && !root.checkVisibility())) {
380
- return '';
381
- }
382
- if (root.nodeType === Node.TEXT_NODE) {
383
- return root.nodeValue || '';
384
- }
385
- if (root instanceof HTMLElement && root.shadowRoot) {
386
- return getInnerTextAcrossShadowRoots(root.shadowRoot);
387
- }
388
- return Array.from(root.childNodes).map(getInnerTextAcrossShadowRoots).join('');
389
- }
390
-
391
- function getRowDataForDetailsElement(details: DocumentFragment) {
392
- const container = document.createElement('div');
393
- renderElementIntoDOM(container);
394
- container.appendChild(details);
395
- return Array.from(container.querySelectorAll<HTMLDivElement>('.timeline-details-view-row')).map(row => {
396
- const title = row.querySelector<HTMLDivElement>('.timeline-details-view-row-title')?.innerText;
397
- const valueEl = row.querySelector<HTMLDivElement>('.timeline-details-view-row-value') ??
398
- row.querySelector<HTMLElement>('div,span');
399
- let value = valueEl?.innerText || '';
400
- if (!value && valueEl) {
401
- // Stack traces and renderEventJson have the contents within a shadowRoot.
402
- value = getInnerTextAcrossShadowRoots(valueEl).trim();
403
- }
404
- return {title, value};
405
- });
406
- }
407
-
408
- function getStackTraceForDetailsElement(details: DocumentFragment): string[]|null {
409
- const stackTraceContainer =
410
- details
411
- .querySelector<HTMLDivElement>(
412
- '.timeline-details-view-row.timeline-details-stack-values .stack-preview-container')
413
- ?.shadowRoot;
414
- if (!stackTraceContainer) {
415
- return null;
416
- }
417
- return Array.from(stackTraceContainer.querySelectorAll<HTMLTableRowElement>('tbody tr')).map(row => {
418
- const functionName = row.querySelector<HTMLElement>('.function-name')?.innerText;
419
- const url = row.querySelector<HTMLElement>('.link')?.innerText;
420
- return `${functionName || ''} @ ${url || ''}`;
421
- });
422
- }
423
-
424
- function getPieChartDataForDetailsElement(details: DocumentFragment) {
425
- const pieChartComp = details.querySelector<HTMLDivElement>('devtools-perf-piechart');
426
- if (!pieChartComp?.shadowRoot) {
427
- return [];
428
- }
429
- return Array.from(pieChartComp.shadowRoot.querySelectorAll<HTMLElement>('.pie-chart-legend-row')).map(row => {
430
- const title = row.querySelector<HTMLDivElement>('.pie-chart-name')?.innerText;
431
- const value = row.querySelector<HTMLDivElement>('.pie-chart-size')?.innerText;
432
- return {title, value};
433
- });
434
- }
435
-
436
- describe('colors', function() {
437
- before(() => {
438
- // Rather than use the real colours here and burden the test with having to
439
- // inject loads of CSS, we fake out the colours. this is fine for our tests as
440
- // the exact value of the colours is not important; we just make sure that it
441
- // parses them out correctly. Each variable is given a different rgb() value to
442
- // ensure we know the code is working and using the right one.
443
- const styleElement = document.createElement('style');
444
- styleElement.id = 'fake-perf-panel-colors';
445
- styleElement.textContent = `
446
- :root {
447
- --app-color-loading: rgb(0 0 0);
448
- --app-color-loading-children: rgb(1 1 1);
449
- --app-color-scripting: rgb(2 2 2);
450
- --app-color-scripting-children: rgb(3 3 3);
451
- --app-color-rendering: rgb(4 4 4);
452
- --app-color-rendering-children: rgb(5 5 5);
453
- --app-color-painting: rgb(6 6 6);
454
- --app-color-painting-children: rgb(7 7 7);
455
- --app-color-task: rgb(8 8 8);
456
- --app-color-task-children: rgb(9 9 9);
457
- --app-color-system: rgb(10 10 10);
458
- --app-color-system-children: rgb(11 11 11);
459
- --app-color-idle: rgb(12 12 12);
460
- --app-color-idle-children: rgb(13 13 13);
461
- --app-color-async: rgb(14 14 14);
462
- --app-color-async-children: rgb(15 15 15);
463
- --app-color-other: rgb(16 16 16);
464
- }
465
- `;
466
- document.documentElement.appendChild(styleElement);
467
- ThemeSupport.ThemeSupport.clearThemeCache();
468
- });
469
-
470
- after(() => {
471
- const styleElementToRemove = document.documentElement.querySelector('#fake-perf-panel-colors');
472
- if (styleElementToRemove) {
473
- document.documentElement.removeChild(styleElementToRemove);
474
- }
475
- ThemeSupport.ThemeSupport.clearThemeCache();
476
- });
477
-
478
- it('should return the correct rgb value for a corresponding CSS variable', function() {
479
- const parsedColor = Utils.EntryStyles.getCategoryStyles().scripting.getComputedColorValue();
480
- assert.strictEqual('rgb(2 2 2)', parsedColor);
481
- });
482
-
483
- it('should return the color as a CSS variable', function() {
484
- const cssVariable = Utils.EntryStyles.getCategoryStyles().scripting.getCSSValue();
485
- assert.strictEqual('var(--app-color-scripting)', cssVariable);
486
- });
487
-
488
- it('treats the v8.parseOnBackgroundWaiting as scripting even though it would usually be idle', function() {
489
- const event = makeCompleteEvent(
490
- Trace.Types.Events.Name.STREAMING_COMPILE_SCRIPT_WAITING,
491
- 1,
492
- 1,
493
- 'v8,devtools.timeline,disabled-by-default-v8.compile',
494
- );
495
- assert.strictEqual('rgb(2 2 2)', Timeline.TimelineUIUtils.TimelineUIUtils.eventColor(event));
496
- });
497
-
498
- it('assigns the correct color to the swatch of an event\'s title', async function() {
499
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'lcp-web-font.json.gz');
500
- const events = allThreadEntriesInTrace(parsedTrace);
501
- const task = events.find(event => {
502
- return event.name.includes('RunTask');
503
- });
504
- if (!task) {
505
- throw new Error('Could not find expected event.');
506
- }
507
-
508
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
509
- parsedTrace,
510
- task,
511
- new Components.Linkifier.Linkifier(),
512
- false,
513
- null,
514
- );
515
- const titleSwatch: HTMLElement|null = details.querySelector('.timeline-details-chip-title div');
516
- assert.strictEqual(titleSwatch?.style.backgroundColor, 'rgb(10, 10, 10)');
517
- });
518
- });
519
-
520
- describe('testContentMatching', () => {
521
- it('matches call frame events based on a regular expression and the contents of the event', async function() {
522
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'react-hello-world.json.gz');
523
- // Find an event from the trace that represents some work that React did. This
524
- // event is not chosen for any particular reason other than it was the example
525
- // used in the bug report: crbug.com/1484504
526
- const mainThread = getMainThread(parsedTrace.Renderer);
527
- const performConcurrentWorkEvent = mainThread.entries.find(entry => {
528
- if (Trace.Types.Events.isProfileCall(entry)) {
529
- return entry.callFrame.functionName === 'performConcurrentWorkOnRoot';
530
- }
531
- return false;
532
- });
533
- if (!performConcurrentWorkEvent) {
534
- throw new Error('Could not find expected event');
535
- }
536
- assert.isTrue(Timeline.TimelineUIUtils.TimelineUIUtils.testContentMatching(
537
- performConcurrentWorkEvent, /perfo/, parsedTrace));
538
- });
539
- });
540
-
541
- describe('traceEventDetails', function() {
542
- it('shows the interaction ID and INP breakdown metrics for a given interaction', async function() {
543
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'one-second-interaction.json.gz');
544
- const interactionEvent = parsedTrace.UserInteractions.interactionEventsWithNoNesting.find(entry => {
545
- return entry.dur === 979974 && entry.type === 'click';
546
- });
547
- if (!interactionEvent) {
548
- throw new Error('Could not find expected event');
549
- }
550
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
551
- parsedTrace,
552
- interactionEvent,
553
- new Components.Linkifier.Linkifier(),
554
- false,
555
- null,
556
- );
557
- const rowData = getRowDataForDetailsElement(details);
558
- assert.deepEqual(rowData, [
559
- {
560
- title: 'Warning',
561
- value: 'Long interaction is indicating poor page responsiveness.',
562
- },
563
- {title: 'Duration', value: '979.97\xA0ms'},
564
- {
565
- title: 'ID',
566
- value: '4122',
567
- },
568
- {
569
- title: 'Input delay',
570
- value: '1\xA0ms',
571
- },
572
- {
573
- title: 'Processing duration',
574
- value: '977\xA0ms',
575
- },
576
- {
577
- title: 'Presentation delay',
578
- value: '2\xA0ms',
579
- },
580
- ]);
581
- });
582
-
583
- it('renders all event data for a generic trace', async function() {
584
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'generic-about-tracing.json.gz');
585
- const event = allThreadEntriesInTrace(parsedTrace).find(entry => {
586
- return entry.name === 'ThreadControllerImpl::RunTask';
587
- });
588
- if (!event) {
589
- throw new Error('Could not find event.');
590
- }
591
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
592
- parsedTrace,
593
- event,
594
- new Components.Linkifier.Linkifier(),
595
- false,
596
- null,
597
- );
598
- const rowData = getRowDataForDetailsElement(details);
599
- assert.deepEqual(rowData, [
600
- {title: 'Duration', value: '0.22\xA0ms (self 0.20\xA0ms)'},
601
- {
602
- title: '',
603
- // Generic traces get their events rendered as JSON
604
- value:
605
- '{ "args": {\n "chrome_task_annotator": {\n "delay_policy": "PRECISE",\n "task_delay_us": 7159\n },\n "src_file": "cc/scheduler/scheduler.cc",\n "src_func": "ScheduleBeginImplFrameDeadline"\n },\n "cat": "toplevel",\n "dur": 222,\n "name": "ThreadControllerImpl::RunTask",\n "ph": "X",\n "pid": 1214129,\n "tdur": 163,\n "tid": 7,\n "ts": 1670373249790,\n "tts": 5752392\n}',
606
- },
607
- ]);
608
- });
609
-
610
- it('renders invalidations correctly', async function() {
611
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'style-invalidation-change-attribute.json.gz');
612
- TraceLoader.initTraceBoundsManager(parsedTrace);
613
-
614
- // Set up a fake DOM so that we can request nodes by backend Ids (even
615
- // though we return none, we need to mock these calls else the frontend
616
- // will not work.)
617
- const documentNode = {nodeId: 1 as Protocol.DOM.BackendNodeId};
618
- setMockConnectionResponseHandler('DOM.getDocument', () => ({root: documentNode}));
619
- setMockConnectionResponseHandler('DOM.pushNodesByBackendIdsToFrontend', () => {
620
- return {
621
- nodeIds: [],
622
- };
623
- });
624
-
625
- const updateLayoutTreeEvent = allThreadEntriesInTrace(parsedTrace).find(event => {
626
- return Trace.Types.Events.isUpdateLayoutTree(event) &&
627
- event.args.beginData?.stackTrace?.[0].functionName === 'testFuncs.changeAttributeAndDisplay';
628
- });
629
- if (!updateLayoutTreeEvent) {
630
- throw new Error('Could not find update layout tree event');
631
- }
632
-
633
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
634
- parsedTrace,
635
- updateLayoutTreeEvent,
636
- new Components.Linkifier.Linkifier(),
637
- false,
638
- null,
639
- );
640
- const rowData = getRowDataForDetailsElement(details);
641
- assert.deepEqual(rowData, [
642
- {title: 'Duration', value: '0.19\xA0ms'},
643
- {
644
- title: 'Elements affected',
645
- value: '3',
646
- },
647
- {
648
- title: 'Selector stats',
649
- value: 'Select "" to collect detailed CSS selector matching statistics.',
650
- },
651
- {
652
- // The "Recalculation forced" Stack trace
653
- title: undefined,
654
- value:
655
- 'testFuncs.changeAttributeAndDisplay @ chromedevtools.github.io/performance-stories/style-invalidations/app.js:47:40\n(anonymous) @ chromedevtools.github.io/performance-stories/style-invalidations/app.js:64:36',
656
- },
657
- {
658
- title: 'Initiated by',
659
- value: 'Schedule style recalculation',
660
- },
661
- {
662
- title: 'Pending for',
663
- value: '7.1 ms',
664
- },
665
- {
666
- title: 'PseudoClass:active',
667
- value: 'BUTTON id=\'changeAttributeAndDisplay\'',
668
- },
669
- {
670
- title: 'Attribute (dir)',
671
- value:
672
- 'DIV id=\'testElementFour\' at chromedevtools.github.io/performance-stories/style-invalidations/app.js:46',
673
- },
674
- {
675
- title: 'Attribute (dir)',
676
- value:
677
- 'DIV id=\'testElementFive\' at chromedevtools.github.io/performance-stories/style-invalidations/app.js:47',
678
- },
679
- {
680
- title: 'Element has pending invalidation list',
681
- value: 'DIV id=\'testElementFour\'',
682
- },
683
- {
684
- title: 'Element has pending invalidation list',
685
- value: 'DIV id=\'testElementFive\'',
686
- },
687
- ]);
688
- });
689
-
690
- it('renders details for performance.mark', async function() {
691
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'user-timings-details.json.gz');
692
- const mark = parsedTrace.UserTimings.performanceMarks[0];
693
- if (!mark) {
694
- throw new Error('Could not find expected event');
695
- }
696
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
697
- parsedTrace,
698
- mark,
699
- new Components.Linkifier.Linkifier(),
700
- false,
701
- null,
702
- );
703
- const rowData = getRowDataForDetailsElement(details);
704
- assert.deepEqual(rowData, [
705
- {
706
- title: 'Timestamp',
707
- value: '1,058.3\xA0ms',
708
- },
709
- {title: 'Details', value: '{ "hello": "world"\n}'},
710
- {title: undefined, value: '(anonymous) @ localhost:8787/perf-details/app.js:1:12'}
711
- ]);
712
- });
713
-
714
- it('renders details for performance.measure', async function() {
715
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'user-timings-details.json.gz');
716
- const measure = parsedTrace.UserTimings.performanceMeasures[0];
717
- if (!measure) {
718
- throw new Error('Could not find expected event');
719
- }
720
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
721
- parsedTrace,
722
- measure,
723
- new Components.Linkifier.Linkifier(),
724
- false,
725
- null,
726
- );
727
- const rowData = getRowDataForDetailsElement(details);
728
- assert.deepEqual(rowData, [
729
- {
730
- title: 'Timestamp',
731
- value: '1,005.5\xA0ms',
732
- },
733
- {title: 'Duration', value: '500.00\xA0ms'},
734
- {
735
- title: 'Details',
736
- value:
737
- '{ "devtools": {\n "metadata": {\n "extensionName": "hello",\n "dataType": "track-entry"\n },\n "color": "error",\n "track": "An extension track"\n }\n}',
738
- },
739
- ]);
740
- });
741
-
742
- it('renders details for a v8.compile ("Compile Script") event', async function() {
743
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'user-timings.json.gz');
744
-
745
- const compileEvent = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isV8Compile);
746
- if (!compileEvent) {
747
- throw new Error('Could not find expected event');
748
- }
749
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
750
- parsedTrace,
751
- compileEvent,
752
- new Components.Linkifier.Linkifier(),
753
- false,
754
- null,
755
- );
756
- const rowData = getRowDataForDetailsElement(details);
757
- assert.deepEqual(rowData, [
758
- {title: 'Duration', value: '0.98\xA0ms (self 34\xA0μs)'},
759
- {
760
- title: 'Script',
761
- // URL path plus line/col number
762
- value: '/lib/utils.js:1:1',
763
- },
764
- {
765
- title: 'Streamed',
766
- value: 'false: inline script',
767
- },
768
- {title: 'Compilation cache status', value: 'script not eligible'},
769
- ]);
770
- });
771
-
772
- it('renders the details for an extension entry properly', async function() {
773
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'extension-tracks-and-marks.json.gz');
774
- const extensionEntry =
775
- parsedTrace.ExtensionTraceData.extensionTrackData[1].entriesByTrack['An Extension Track'][0];
776
-
777
- if (!extensionEntry) {
778
- throw new Error('Could not find extension entry.');
779
- }
780
-
781
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
782
- parsedTrace,
783
- extensionEntry,
784
- new Components.Linkifier.Linkifier(),
785
- false,
786
- null,
787
- );
788
- const rowData = getRowDataForDetailsElement(details).slice(0, 4);
789
- assert.deepEqual(
790
- rowData,
791
- [
792
- {title: 'Timestamp', value: '1,614.0 ms'},
793
- {title: 'Duration', value: '1.00\xA0s (self 400.50\xA0ms)'},
794
- {
795
- title: 'Description',
796
- value: 'This is a child task',
797
- },
798
- {title: 'Tip', value: 'Do something about it'},
799
- ],
800
- );
801
- });
802
-
803
- it('can handle an extension entry having a `null` value', async function() {
804
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'extension-tracks-and-marks.json.gz');
805
- const extensionEntry =
806
- parsedTrace.ExtensionTraceData.extensionTrackData[1].entriesByTrack['An Extension Track'][0];
807
-
808
- if (!extensionEntry) {
809
- throw new Error('Could not find extension entry.');
810
- }
811
-
812
- const mutableEntry: Trace.Types.Extensions.SyntheticExtensionEntry = {
813
- ...extensionEntry,
814
- args: {
815
- ...extensionEntry.args,
816
- // Note: we do not support this, but bad values can come in via mistakes in user code.
817
- properties: [['key', null]]
818
- }
819
- };
820
-
821
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
822
- parsedTrace,
823
- mutableEntry,
824
- new Components.Linkifier.Linkifier(),
825
- false,
826
- null,
827
- );
828
- const rowData = getRowDataForDetailsElement(details).slice(0, 3);
829
- assert.deepEqual(
830
- rowData,
831
- [
832
- {title: 'Timestamp', value: '1,614.0 ms'},
833
- {title: 'Duration', value: '1.00\xA0s'},
834
- {title: 'key', value: 'null'},
835
- ],
836
- );
837
- });
838
-
839
- it('renders the details for an extension marker properly', async function() {
840
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'extension-tracks-and-marks.json.gz');
841
- const extensionMark = parsedTrace.ExtensionTraceData.extensionMarkers[0];
842
-
843
- if (!extensionMark) {
844
- throw new Error('Could not find extension mark.');
845
- }
846
-
847
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
848
- parsedTrace,
849
- extensionMark,
850
- new Components.Linkifier.Linkifier(),
851
- false,
852
- null,
853
- );
854
- const rowData = getRowDataForDetailsElement(details).slice(0, 2);
855
- assert.deepEqual(
856
- rowData,
857
- [
858
- {
859
- title: 'Timestamp',
860
- value: '1,614.0\xA0ms',
861
- },
862
- {
863
- title: 'Description',
864
- value: 'This marks the start of a task',
865
- }
866
- ],
867
- );
868
- });
869
-
870
- it('renders the details for a profile call properly', async function() {
871
- Common.Linkifier.registerLinkifier({
872
- contextTypes() {
873
- return [Timeline.CLSLinkifier.CLSRect];
874
- },
875
- async loadLinkifier() {
876
- return Timeline.CLSLinkifier.Linkifier.instance();
877
- },
878
- });
879
-
880
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'simple-js-program.json.gz');
881
- const [process] = parsedTrace.Renderer.processes.values();
882
- const [thread] = process.threads.values();
883
- const profileCalls = thread.entries.filter(entry => Trace.Types.Events.isProfileCall(entry));
884
-
885
- if (!profileCalls) {
886
- throw new Error('Could not find renderer events');
887
- }
888
-
889
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
890
- parsedTrace,
891
- profileCalls[0],
892
- new Components.Linkifier.Linkifier(),
893
- false,
894
- null,
895
- );
896
- const stackTraceData = getStackTraceForDetailsElement(details);
897
- assert.exists(stackTraceData);
898
- assert.strictEqual(stackTraceData[0], '(anonymous) @ www.google.com:21:17');
899
- });
900
- it('renders the stack trace of a ScheduleStyleRecalculation properly', async function() {
901
- Common.Linkifier.registerLinkifier({
902
- contextTypes() {
903
- return [Timeline.CLSLinkifier.CLSRect];
904
- },
905
- async loadLinkifier() {
906
- return Timeline.CLSLinkifier.Linkifier.instance();
907
- },
908
- });
909
-
910
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
911
- TraceLoader.initTraceBoundsManager(parsedTrace);
912
- const [process] = parsedTrace.Renderer.processes.values();
913
- const [thread] = process.threads.values();
914
- const scheduleStyleRecalcs =
915
- thread.entries.filter(entry => Trace.Types.Events.isScheduleStyleRecalculation(entry));
916
-
917
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
918
- parsedTrace,
919
- scheduleStyleRecalcs[1],
920
- new Components.Linkifier.Linkifier(),
921
- false,
922
- null,
923
- );
924
- const stackTraceData = getStackTraceForDetailsElement(details);
925
- assert.deepEqual(
926
- stackTraceData,
927
- ['(anonymous) @ web.dev/js/app.js?v=1423cda3:1:183'],
928
- );
929
- const rowData = getRowDataForDetailsElement(details)[0];
930
- assert.deepEqual(
931
- rowData,
932
- {
933
- title: 'Details',
934
- value: 'web.dev/js/app.js?v=1423cda3:1:183',
935
- },
936
- );
937
- });
938
-
939
- it('renders the stack trace of a RecalculateStyles properly', async function() {
940
- Common.Linkifier.registerLinkifier({
941
- contextTypes() {
942
- return [Timeline.CLSLinkifier.CLSRect];
943
- },
944
- async loadLinkifier() {
945
- return Timeline.CLSLinkifier.Linkifier.instance();
946
- },
947
- });
948
-
949
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
950
- TraceLoader.initTraceBoundsManager(parsedTrace);
951
- const [process] = parsedTrace.Renderer.processes.values();
952
- const [thread] = process.threads.values();
953
- const stylesRecalc = thread.entries.filter(entry => entry.name === Trace.Types.Events.Name.UPDATE_LAYOUT_TREE);
954
-
955
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
956
- parsedTrace,
957
- stylesRecalc[3],
958
- new Components.Linkifier.Linkifier(),
959
- false,
960
- null,
961
- );
962
- const stackTraceData = getStackTraceForDetailsElement(details);
963
- assert.deepEqual(
964
- stackTraceData,
965
- ['(anonymous) @ web.dev/js/app.js?v=1423cda3:1:183'],
966
- );
967
- });
968
- async function basicStackTraceParsedTrace():
969
- Promise<Readonly<Trace.Handlers.Types.EnabledHandlerDataWithMeta<typeof Trace.Handlers.ModelHandlers>>> {
970
- const pid = 0;
971
- const traceId = 0;
972
- const tid = 0;
973
- Common.Linkifier.registerLinkifier({
974
- contextTypes() {
975
- return [Timeline.CLSLinkifier.CLSRect];
976
- },
977
- async loadLinkifier() {
978
- return Timeline.CLSLinkifier.Linkifier.instance();
979
- },
980
- });
981
-
982
- // Build the following hierarchy
983
- // |-----------------v8.run--------------------|
984
- // |--V8.ParseFunction--||---------f1-------|
985
- // |---f2---||---f3---|
986
- // |measure| |mark|
987
- const evaluateScript = makeCompleteEvent(Trace.Types.Events.Name.EVALUATE_SCRIPT, 0, 500, '', pid, tid);
988
- const v8Run = makeCompleteEvent('v8.run', 10, 490, '', pid, tid);
989
- const parseFunction = makeCompleteEvent('V8.ParseFunction', 12, 1, '', pid, tid);
990
- const function1 = makeProfileCall('function 1', 300, 130, pid, tid);
991
- const function2 = makeProfileCall('function 2', 300, 50, pid, tid);
992
- const function3 = makeProfileCall('function 3', 351, 20, pid, tid);
993
- const measure = makeCompleteEvent(Trace.Types.Events.Name.USER_TIMING, 300, 50, 'blink.user_timing', pid, tid) as
994
- unknown as Trace.Types.Events.PerformanceMeasureBegin;
995
- const measureTrace = makeCompleteEvent(Trace.Types.Events.Name.USER_TIMING_MEASURE, 300, 50, 'cat', pid, tid) as
996
- Trace.Types.Events.UserTimingMeasure;
997
- const mark = makeInstantEvent('Mark', 352, 'blink.user_timing', pid, tid);
998
-
999
- const rendererHandlerData = makeMockRendererHandlerData(
1000
- [evaluateScript, v8Run, parseFunction, function1, function2, measure, measureTrace, function3, mark]);
1001
- measureTrace.args.traceId = traceId;
1002
- measure.args.traceId = traceId;
1003
- Trace.Handlers.ModelHandlers.UserTimings.handleEvent(measureTrace);
1004
- await Trace.Handlers.ModelHandlers.UserTimings.finalize();
1005
- const timingsData = Trace.Handlers.ModelHandlers.UserTimings.data();
1006
-
1007
- const traceData = getBaseTraceParseModelData({UserTimings: timingsData, Renderer: rendererHandlerData});
1008
- TraceLoader.initTraceBoundsManager(traceData);
1009
- return traceData;
1010
- }
1011
- it('renders the stack trace of extension entries properly', async function() {
1012
- const traceData = await basicStackTraceParsedTrace();
1013
- const [function1, function2, function3] =
1014
- allThreadEntriesInTrace(traceData).filter(Trace.Types.Events.isProfileCall);
1015
- const mark = allThreadEntriesInTrace(traceData).find(event => event.name === 'Mark');
1016
- const measure =
1017
- allThreadEntriesInTrace(traceData).find(event => event.name === Trace.Types.Events.Name.USER_TIMING) as
1018
- Trace.Types.Events.UserTimingMeasure;
1019
- assert.exists(mark);
1020
- assert.exists(measure);
1021
-
1022
- const markerExtensionEntry = {
1023
- cat: 'devtools.extension',
1024
- ts: function3.ts,
1025
- pid: function3.pid,
1026
- tid: function3.tid,
1027
- args: {},
1028
- rawSourceEvent: mark,
1029
- } as unknown as Trace.Types.Extensions.SyntheticExtensionEntry;
1030
-
1031
- const markerDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1032
- traceData,
1033
- markerExtensionEntry,
1034
- new Components.Linkifier.Linkifier(),
1035
- false,
1036
- null,
1037
- );
1038
- const markerStackTraceData = getStackTraceForDetailsElement(markerDetails);
1039
- assert.exists(markerStackTraceData);
1040
- assert.deepEqual(
1041
- markerStackTraceData,
1042
- [
1043
- `${function3.callFrame.functionName} @ `,
1044
- `${function1.callFrame.functionName} @ `,
1045
- ],
1046
- );
1047
-
1048
- const mockExtensionTrackEntry = {
1049
- cat: 'devtools.extension',
1050
- ts: function2.ts,
1051
- pid: function2.pid,
1052
- tid: function2.tid,
1053
- args: {},
1054
- rawSourceEvent: {
1055
- cat: 'blink.user_timing',
1056
- args: {traceId: measure.args.traceId},
1057
- ph: Trace.Types.Events.Phase.ASYNC_NESTABLE_START,
1058
- },
1059
- } as Trace.Types.Extensions.SyntheticExtensionEntry;
1060
-
1061
- const trackEntryDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1062
- traceData,
1063
- mockExtensionTrackEntry,
1064
- new Components.Linkifier.Linkifier(),
1065
- false,
1066
- null,
1067
- );
1068
- const trackEntryStackTraceData = getStackTraceForDetailsElement(trackEntryDetails);
1069
- assert.exists(trackEntryStackTraceData);
1070
- assert.deepEqual(trackEntryStackTraceData, [
1071
- `${function2.callFrame.functionName} @ `,
1072
- `${function1.callFrame.functionName} @ `,
1073
- ]);
1074
- });
1075
- it('renders the stack trace of user timings properly', async function() {
1076
- const traceData = await basicStackTraceParsedTrace();
1077
- const [function1, function2, function3] =
1078
- allThreadEntriesInTrace(traceData).filter(Trace.Types.Events.isProfileCall);
1079
- const mark = allThreadEntriesInTrace(traceData).find(event => event.name === 'Mark');
1080
- const measure =
1081
- allThreadEntriesInTrace(traceData).find(event => event.name === Trace.Types.Events.Name.USER_TIMING);
1082
- assert.exists(mark);
1083
- assert.exists(measure);
1084
-
1085
- const markerDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1086
- traceData,
1087
- mark,
1088
- new Components.Linkifier.Linkifier(),
1089
- false,
1090
- null,
1091
- );
1092
- const markerStackTraceData = getStackTraceForDetailsElement(markerDetails);
1093
- assert.exists(markerStackTraceData);
1094
- assert.deepEqual(
1095
- markerStackTraceData,
1096
- [
1097
- `${function3.callFrame.functionName} @ `,
1098
- `${function1.callFrame.functionName} @ `,
1099
- ],
1100
- );
1101
-
1102
- const trackEntryDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1103
- traceData,
1104
- measure,
1105
- new Components.Linkifier.Linkifier(),
1106
- false,
1107
- null,
1108
- );
1109
- const trackEntryStackTraceData = getStackTraceForDetailsElement(trackEntryDetails);
1110
- assert.exists(trackEntryStackTraceData);
1111
- assert.deepEqual(trackEntryStackTraceData, [
1112
- `${function2.callFrame.functionName} @ `,
1113
- `${function1.callFrame.functionName} @ `,
1114
- ]);
1115
- });
1116
- it('renders the warning for a trace event in its details', async function() {
1117
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'simple-js-program.json.gz');
1118
-
1119
- const events = allThreadEntriesInTrace(parsedTrace);
1120
- const longTask = events.find(e => (e.dur || 0) > 1_000_000);
1121
- if (!longTask) {
1122
- throw new Error('Could not find Long Task event.');
1123
- }
1124
-
1125
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1126
- parsedTrace,
1127
- longTask,
1128
- new Components.Linkifier.Linkifier(),
1129
- false,
1130
- null,
1131
- );
1132
- const rowData = getRowDataForDetailsElement(details);
1133
- assert.deepEqual(
1134
- rowData,
1135
- [
1136
- {
1137
- title: 'Warning',
1138
- value: 'Long task took 1.30\u00A0s.',
1139
- },
1140
- {title: 'Duration', value: '1.30\xA0s (self 47\xA0μs)'},
1141
- ],
1142
- );
1143
- });
1144
-
1145
- it('shows information for the WebSocketCreate initiator when viewing a WebSocketSendHandshakeRequest event',
1146
- async function() {
1147
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-sockets.json.gz');
1148
- TraceLoader.initTraceBoundsManager(parsedTrace);
1149
-
1150
- const sendHandshake =
1151
- allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isWebSocketSendHandshakeRequest);
1152
- if (!sendHandshake) {
1153
- throw new Error('Could not find handshake event.');
1154
- }
1155
-
1156
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1157
- parsedTrace,
1158
- sendHandshake,
1159
- new Components.Linkifier.Linkifier(),
1160
- false,
1161
- null,
1162
- );
1163
- const rowData = getRowDataForDetailsElement(details);
1164
- const expectedRowData = [
1165
- {title: 'URL', value: 'wss://socketsbay.com/wss/v2/1/demo/'},
1166
- // The 'First Invalidated' Stack trace
1167
- {title: undefined, value: 'connect @ socketsbay.com/test-websockets:314:25'},
1168
- {title: 'Initiated by', value: 'Create WebSocket'},
1169
- {title: 'Pending for', value: '72.0 ms'},
1170
- ];
1171
- assert.deepEqual(
1172
- rowData,
1173
- expectedRowData,
1174
- );
1175
- });
1176
-
1177
- it('shows information for the events initiated by WebSocketCreate when viewing a WebSocketCreate event',
1178
- async function() {
1179
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-sockets.json.gz');
1180
- TraceLoader.initTraceBoundsManager(parsedTrace);
1181
-
1182
- const sendHandshake = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isWebSocketCreate);
1183
- if (!sendHandshake) {
1184
- throw new Error('Could not find handshake event.');
1185
- }
1186
-
1187
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1188
- parsedTrace,
1189
- sendHandshake,
1190
- new Components.Linkifier.Linkifier(),
1191
- false,
1192
- null,
1193
- );
1194
- const rowData = getRowDataForDetailsElement(details);
1195
- const expectedRowData = [
1196
- {title: 'URL', value: 'wss://socketsbay.com/wss/v2/1/demo/'},
1197
- // The initiator stack trace
1198
- {
1199
- title: undefined,
1200
- value:
1201
- 'connect @ socketsbay.com/test-websockets:314:25\n(anonymous) @ socketsbay.com/test-websockets:130:129'
1202
- },
1203
- // The 2 entries under "Initiator for" are displayed as separate links and in the UI it is obvious they are separate
1204
- {title: 'Initiator for', value: 'Send WebSocket handshake Receive WebSocket handshake'},
1205
- ];
1206
- assert.deepEqual(
1207
- rowData,
1208
- expectedRowData,
1209
- );
1210
- });
1211
-
1212
- it('shows the aggregated time information for an event', async function() {
1213
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
1214
- const event = allThreadEntriesInTrace(parsedTrace).find(e => e.ts === 1020034919877 && e.name === 'RunTask');
1215
- if (!event) {
1216
- throw new Error('Could not find renderer events');
1217
- }
1218
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1219
- parsedTrace,
1220
- event,
1221
- new Components.Linkifier.Linkifier(),
1222
- true,
1223
- null,
1224
- );
1225
- const pieChartData = getPieChartDataForDetailsElement(details);
1226
-
1227
- const expectedPieChartData = [
1228
- {title: 'System (self)', value: '2\u00A0ms'},
1229
- {title: 'System (children)', value: '0\u00A0ms'},
1230
- {title: 'Rendering', value: '28\u00A0ms'},
1231
- {title: 'Painting', value: '2\u00A0ms'},
1232
- {title: 'Total', value: '32\u00A0ms'},
1233
- ];
1234
- assert.deepEqual(
1235
- pieChartData,
1236
- expectedPieChartData,
1237
- );
1238
- });
1239
-
1240
- it('renders details for SchedulePostTaskCallback events', async function() {
1241
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'scheduler-post-task.json.gz');
1242
-
1243
- const scheduleEvent = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isSchedulePostTaskCallback);
1244
- assert(scheduleEvent, 'Could not find SchedulePostTaskCallback event');
1245
- const scheduleDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1246
- parsedTrace,
1247
- scheduleEvent,
1248
- new Components.Linkifier.Linkifier(),
1249
- false,
1250
- null,
1251
- );
1252
- const rowData = getRowDataForDetailsElement(scheduleDetails);
1253
- assert.deepEqual(rowData, [
1254
- {title: 'Delay', value: '200\xA0ms'},
1255
- {title: 'Priority', value: 'user-visible'},
1256
- {
1257
- title: undefined,
1258
- value: '(anonymous) @ localhost:8787/scheduler/app.js:49:18',
1259
- },
1260
- {title: 'Initiator for', value: 'Fire postTask'},
1261
- ]);
1262
- });
1263
-
1264
- it('lets the initiator be clicked on to select it', async function() {
1265
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'scheduler-post-task.json.gz');
1266
-
1267
- // Make a stubbed TimelinePanel, and then ensure all instance() calls return it.
1268
- const timelinePanel = sinon.createStubInstance(Timeline.TimelinePanel.TimelinePanel);
1269
- sinon.stub(Timeline.TimelinePanel.TimelinePanel, 'instance').callsFake(() => timelinePanel);
1270
-
1271
- const scheduleEvent = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isSchedulePostTaskCallback);
1272
- assert(scheduleEvent, 'Could not find SchedulePostTaskCallback event');
1273
-
1274
- // This is the event initiated by the schedule event.
1275
- const postTaskEvent = parsedTrace.Initiators.initiatorToEvents.get(scheduleEvent)?.at(0);
1276
- assert.isOk(postTaskEvent);
1277
-
1278
- const scheduleDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1279
- parsedTrace,
1280
- scheduleEvent,
1281
- new Components.Linkifier.Linkifier(),
1282
- false,
1283
- null,
1284
- );
1285
- const container = document.createElement('div');
1286
- renderElementIntoDOM(container);
1287
- container.append(scheduleDetails);
1288
- await raf();
1289
- const link = container.querySelector<HTMLElement>('.timeline-link');
1290
- assert.isOk(link);
1291
- assert.strictEqual(link?.innerText, 'Fire postTask');
1292
- dispatchClickEvent(link);
1293
-
1294
- sinon.assert.calledOnceWithExactly(
1295
- timelinePanel.select, Timeline.TimelineSelection.selectionFromEvent(postTaskEvent));
1296
- });
1297
-
1298
- it('renders details for RunPostTaskCallback events', async function() {
1299
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'scheduler-post-task.json.gz');
1300
-
1301
- const runEvent = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isRunPostTaskCallback);
1302
- assert(runEvent, 'Could not find RunPostTaskCallback event');
1303
- const runDetails = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1304
- parsedTrace,
1305
- runEvent,
1306
- new Components.Linkifier.Linkifier(),
1307
- false,
1308
- null,
1309
- );
1310
- const rowData = getRowDataForDetailsElement(runDetails);
1311
- assert.deepEqual(rowData, [
1312
- {title: 'Duration', value: '161.18\xA0ms (self 63\xA0μs)'},
1313
- {title: 'Delay', value: '200\xA0ms'},
1314
- {title: 'Priority', value: 'user-visible'},
1315
- {
1316
- title: undefined,
1317
- value: '(anonymous) @ localhost:8787/scheduler/app.js:49:18',
1318
- },
1319
- {title: 'Initiated by', value: 'Schedule postTask'},
1320
- {title: 'Pending for', value: '200.1\xA0ms'},
1321
- ]);
1322
- });
1323
- it('renders the stack trace of a profile call event', async function() {
1324
- // uses source maps
1325
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'async-js-calls.json.gz');
1326
- const jsCall = allThreadEntriesInTrace(parsedTrace)
1327
- .find(e => Trace.Types.Events.isProfileCall(e) && e.callFrame.functionName === 'baz');
1328
- assert.exists(jsCall);
1329
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1330
- parsedTrace,
1331
- jsCall,
1332
- new Components.Linkifier.Linkifier(),
1333
- false,
1334
- null,
1335
- );
1336
- const container = document.createElement('div');
1337
- renderElementIntoDOM(container);
1338
- container.appendChild(details);
1339
- const stackTraceContainer = container.querySelector('.stack-preview-container');
1340
- const stackTracesElements =
1341
- stackTraceContainer?.shadowRoot?.querySelector('.stack-preview-container')?.querySelectorAll('tbody');
1342
- assert.exists(stackTracesElements);
1343
- const testData = [...stackTracesElements].map(stackTraceElement => {
1344
- const description = stackTraceElement.querySelector<HTMLTableRowElement>('.stack-preview-async-row');
1345
- const stackFrameElements =
1346
- stackTraceElement.querySelectorAll<HTMLTableRowElement>('tr:not(.stack-preview-async-row)');
1347
- const stackFrames = [...stackFrameElements].map(frame => frame.innerText);
1348
- return {description: description?.innerText || '', stackFrames};
1349
- });
1350
- assert.deepEqual(
1351
- testData,
1352
- [
1353
- {description: '', stackFrames: ['\tbaz\t@\tunknown']},
1354
- {description: '\trequestIdleCallback\t\t', stackFrames: ['\tbar\t@\tunknown']},
1355
- {description: '\tsetTimeout\t\t', stackFrames: ['\tfoo\t@\tunknown']},
1356
- {
1357
- description: '\trequestAnimationFrame\t\t',
1358
- stackFrames: ['\tstartExample\t@\tunknown', '\t(anonymous)\t@\tunknown'],
1359
- },
1360
- ],
1361
- );
1362
- });
1363
- });
1364
-
1365
- it('renders 3p details for profile call properly', async function() {
1366
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
1367
- const entityMapper = new Timeline.Utils.EntityMapper.EntityMapper(parsedTrace);
1368
- const jsCall = allThreadEntriesInTrace(parsedTrace)
1369
- .find(e => Trace.Types.Events.isProfileCall(e) && e.callFrame.functionName === 'z');
1370
- assert.exists(jsCall);
1371
-
1372
- const details = await Timeline.TimelineUIUtils.TimelineUIUtils.buildTraceEventDetails(
1373
- parsedTrace,
1374
- jsCall,
1375
- new Components.Linkifier.Linkifier(),
1376
- true,
1377
- entityMapper,
1378
- );
1379
-
1380
- const rowData = getRowDataForDetailsElement(details).find(row => row.title?.startsWith('Origin'));
1381
- assert.deepEqual(rowData, {
1382
- title: 'Origin',
1383
- value: 'www.google-analytics.com (Google Analytics)',
1384
- });
1385
- });
1386
-
1387
- it('can generate details for a frame with the old screenshots format', async function() {
1388
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-with-commit.json.gz');
1389
- const frame = parsedTrace.Frames.frames.at(0);
1390
- if (!frame) {
1391
- throw new Error('Could not find expected frame');
1392
- }
1393
- const filmStrip = Trace.Extras.FilmStrip.fromParsedTrace(parsedTrace);
1394
- const details =
1395
- Timeline.TimelineUIUtils.TimelineUIUtils.generateDetailsContentForFrame(frame, filmStrip, filmStrip.frames[0]);
1396
- const container = document.createElement('div');
1397
- renderElementIntoDOM(container);
1398
- container.appendChild(details);
1399
- // Give the image element time to render and load.
1400
- await doubleRaf();
1401
- const img = container.querySelector<HTMLImageElement>('.timeline-filmstrip-preview img');
1402
- assert.isOk(img);
1403
- const filmStripFrame = filmStrip.frames[0];
1404
- assert.isTrue(
1405
- Trace.Types.Events.isLegacySyntheticScreenshot(filmStripFrame.screenshotEvent) &&
1406
- img.currentSrc.includes(filmStripFrame.screenshotEvent.args.dataUri));
1407
-
1408
- const durationRow = container.querySelector<HTMLElement>('[data-row-title="Duration"]');
1409
- const durationValue = durationRow?.querySelector<HTMLSpanElement>('.timeline-details-view-row-value span');
1410
- if (!durationValue) {
1411
- throw new Error('Could not find duration');
1412
- }
1413
- // Strip the unicode spaces out and replace with simple spaces for easy
1414
- // assertions.
1415
- const value = (durationValue.innerText.replaceAll(/\s/g, ' '));
1416
- assert.strictEqual(value, '37.85 ms (at 109.82 ms)');
1417
- });
1418
-
1419
- it('can generate details for a frame with the new screenshots format', async function() {
1420
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-screenshot-source-ids.json.gz');
1421
- const frame = parsedTrace.Frames.frames.at(0);
1422
- if (!frame) {
1423
- throw new Error('Could not find expected frame');
1424
- }
1425
- const filmStrip = Trace.Extras.FilmStrip.fromParsedTrace(parsedTrace);
1426
- const details =
1427
- Timeline.TimelineUIUtils.TimelineUIUtils.generateDetailsContentForFrame(frame, filmStrip, filmStrip.frames[0]);
1428
- const container = document.createElement('div');
1429
- renderElementIntoDOM(container);
1430
- container.appendChild(details);
1431
- // Give the image element time to render and load.
1432
- await doubleRaf();
1433
- const img = container.querySelector<HTMLImageElement>('.timeline-filmstrip-preview img');
1434
- assert.isOk(img);
1435
- const filmStripFrame = filmStrip.frames[0];
1436
- assert.isTrue(
1437
- Trace.Types.Events.isScreenshot(filmStripFrame.screenshotEvent) &&
1438
- img.currentSrc.includes(
1439
- Trace.Handlers.ModelHandlers.Screenshots.screenshotImageDataUri(filmStripFrame.screenshotEvent)));
1440
-
1441
- const durationRow = container.querySelector<HTMLElement>('[data-row-title="Duration"]');
1442
- const durationValue = durationRow?.querySelector<HTMLSpanElement>('.timeline-details-view-row-value span');
1443
- if (!durationValue) {
1444
- throw new Error('Could not find duration');
1445
- }
1446
- // Strip the unicode spaces out and replace with simple spaces for easy
1447
- // assertions.
1448
- const value = (durationValue.innerText.replaceAll(/\s/g, ' '));
1449
- assert.strictEqual(value, '208.33 ms (at 1.53 s)');
1450
- });
1451
-
1452
- describe('eventTitle', function() {
1453
- it('renders the correct title for an EventTiming interaction event', async function() {
1454
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'slow-interaction-button-click.json.gz');
1455
- const interactionEvent = parsedTrace.UserInteractions.interactionEventsWithNoNesting[0];
1456
- const details = Timeline.TimelineUIUtils.TimelineUIUtils.eventTitle(interactionEvent);
1457
- assert.deepEqual(details, 'Pointer');
1458
- });
1459
-
1460
- it('will use the resolved function name for a profile node that has a sourcemap', async function() {
1461
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'slow-interaction-button-click.json.gz');
1462
-
1463
- const mainThread = getMainThread(parsedTrace.Renderer);
1464
- const profileEntry = mainThread.entries.find(entry => {
1465
- return Trace.Types.Events.isProfileCall(entry);
1466
- });
1467
- if (!profileEntry || !Trace.Types.Events.isProfileCall(profileEntry)) {
1468
- throw new Error('Could not find a profile entry');
1469
- }
1470
-
1471
- // Fake that we resolved the entry's name from a sourcemap.
1472
- Timeline.Utils.SourceMapsResolver.SourceMapsResolver.storeResolvedCodeDataForCallFrame(
1473
- profileEntry.callFrame, {name: 'resolved-function-test', devtoolsLocation: null, script: null});
1474
-
1475
- const title = Timeline.TimelineUIUtils.TimelineUIUtils.eventTitle(profileEntry);
1476
- assert.strictEqual(title, 'resolved-function-test');
1477
- });
1478
- });
1479
-
1480
- describe('eventStyle', function() {
1481
- it('returns the correct style for profile calls', async function() {
1482
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'simple-js-program.json.gz');
1483
- const rendererHandler = parsedTrace.Renderer;
1484
- if (!rendererHandler) {
1485
- throw new Error('RendererHandler is undefined');
1486
- }
1487
- const [process] = rendererHandler.processes.values();
1488
- const [thread] = process.threads.values();
1489
- const profileCalls = thread.entries.filter(entry => Trace.Types.Events.isProfileCall(entry));
1490
- const style = Timeline.TimelineUIUtils.TimelineUIUtils.eventStyle(profileCalls[0]);
1491
- assert.strictEqual(style.category.name, 'scripting');
1492
- assert.strictEqual(style.category.color, 'rgb(250 204 21 / 100%)');
1493
- });
1494
- });
1495
-
1496
- describe('statsForTimeRange', () => {
1497
- it('correctly aggregates up stats', async () => {
1498
- const mainThread = Trace.Types.Events.ThreadID(1);
1499
- const pid = Trace.Types.Events.ProcessID(100);
1500
- function microsec(x: number): Trace.Types.Timing.Micro {
1501
- return Trace.Types.Timing.Micro(x);
1502
- }
1503
-
1504
- const events: Trace.Types.Events.Event[] = [
1505
- {
1506
- cat: 'disabled-by-default-devtools.timeline',
1507
- name: 'TracingStartedInBrowser',
1508
- ph: Trace.Types.Events.Phase.INSTANT,
1509
- pid,
1510
- tid: mainThread,
1511
- ts: microsec(100),
1512
- args: {
1513
- data: {
1514
- frames: [
1515
- {frame: 'frame1', url: 'frameurl', name: 'frame-name'},
1516
- ],
1517
- },
1518
- },
1519
- } as Trace.Types.Events.TracingStartedInBrowser,
1520
- {
1521
- cat: 'disabled-by-default-devtools.timeline',
1522
- name: 'SetLayerTreeId',
1523
- ph: Trace.Types.Events.Phase.INSTANT,
1524
- pid,
1525
- tid: mainThread,
1526
- ts: microsec(101),
1527
- args: {data: {frame: 'frame1', layerTreeId: 17}},
1528
- } as Trace.Types.Events.SetLayerTreeId,
1529
- {
1530
- cat: 'toplevel',
1531
- name: 'Program',
1532
- ph: Trace.Types.Events.Phase.COMPLETE,
1533
- ts: microsec(100000),
1534
- dur: microsec(3000),
1535
- tid: mainThread,
1536
- pid,
1537
- args: {},
1538
- },
1539
- {
1540
- cat: 'disabled-by-default-devtools.timeline',
1541
- name: 'FunctionCall',
1542
- ph: Trace.Types.Events.Phase.COMPLETE,
1543
- ts: microsec(100500),
1544
- dur: microsec(1500),
1545
- tid: mainThread,
1546
- pid,
1547
- args: {},
1548
- },
1549
- {
1550
- cat: 'disabled-by-default-devtools.timeline',
1551
- name: 'Layout',
1552
- ph: Trace.Types.Events.Phase.COMPLETE,
1553
- ts: microsec(101000),
1554
- dur: microsec(1000),
1555
- tid: mainThread,
1556
- pid,
1557
- args: {
1558
- beginData: {
1559
- frame: 'FAKE_FRAME_ID',
1560
- dirtyObjects: 0,
1561
- partialLayout: false,
1562
- totalObjects: 1,
1563
- },
1564
- endData: {layoutRoots: []},
1565
- },
1566
- } as Trace.Types.Events.Layout,
1567
-
1568
- {
1569
- cat: 'toplevel',
1570
- name: 'Program',
1571
- ph: Trace.Types.Events.Phase.COMPLETE,
1572
- ts: microsec(104000),
1573
- dur: microsec(4000),
1574
- tid: mainThread,
1575
- pid,
1576
- args: {},
1577
- },
1578
- {
1579
- cat: 'disabled-by-default-devtools.timeline',
1580
- name: 'FunctionCall',
1581
- ph: Trace.Types.Events.Phase.COMPLETE,
1582
- ts: microsec(104000),
1583
- dur: microsec(1000),
1584
- tid: mainThread,
1585
- pid,
1586
- args: {},
1587
- },
1588
- {
1589
- cat: 'disabled-by-default-devtools.timeline',
1590
- name: 'CommitLoad',
1591
- ph: Trace.Types.Events.Phase.COMPLETE,
1592
- ts: microsec(105000),
1593
- dur: microsec(1000),
1594
- tid: mainThread,
1595
- pid,
1596
- args: {},
1597
- },
1598
- {
1599
- cat: 'disabled-by-default-devtools.timeline',
1600
- name: 'Layout',
1601
- ph: Trace.Types.Events.Phase.COMPLETE,
1602
- ts: microsec(107000),
1603
- dur: microsec(1000),
1604
- tid: mainThread,
1605
- pid,
1606
- args: {
1607
- beginData: {
1608
- frame: 'FAKE_FRAME_ID',
1609
- dirtyObjects: 0,
1610
- partialLayout: false,
1611
- totalObjects: 1,
1612
- },
1613
- endData: {layoutRoots: []},
1614
- },
1615
- } as Trace.Types.Events.Layout,
1616
- ];
1617
-
1618
- const rangeStats101To103 = Timeline.TimelineUIUtils.TimelineUIUtils.statsForTimeRange(
1619
- events,
1620
- Trace.Types.Timing.Milli(101),
1621
- Trace.Types.Timing.Milli(103),
1622
- );
1623
- assert.deepEqual(rangeStats101To103, {
1624
- other: 1,
1625
- rendering: 1,
1626
- scripting: 0,
1627
- idle: 0,
1628
- });
1629
- const rangeStats104To109 = Timeline.TimelineUIUtils.TimelineUIUtils.statsForTimeRange(
1630
- events,
1631
- Trace.Types.Timing.Milli(104),
1632
- Trace.Types.Timing.Milli(109),
1633
- );
1634
- assert.deepEqual(rangeStats104To109, {
1635
- other: 2,
1636
- rendering: 1,
1637
- scripting: 1,
1638
- idle: 1,
1639
- });
1640
- });
1641
- });
1642
-
1643
- describe('isMarkerEvent', () => {
1644
- it('is true for a timestamp event', async function() {
1645
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1646
- const timestamp = allThreadEntriesInTrace(parsedTrace).find(Trace.Types.Events.isConsoleTimeStamp);
1647
- assert.isOk(timestamp);
1648
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, timestamp));
1649
- });
1650
-
1651
- it('is true for a Mark First Paint event', async function() {
1652
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1653
- const markFirstPaint = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isFirstPaint);
1654
- assert.isOk(markFirstPaint);
1655
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, markFirstPaint));
1656
- });
1657
-
1658
- it('is true for a Mark FCP event', async function() {
1659
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1660
- const markFCPEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isFirstContentfulPaint);
1661
- assert.isOk(markFCPEvent);
1662
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, markFCPEvent));
1663
- });
1664
-
1665
- it('is false for a Mark FCP event not on the main frame', async function() {
1666
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1667
- const markFCPEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isFirstContentfulPaint);
1668
- assert.isOk(markFCPEvent);
1669
- assert.isOk(markFCPEvent.args);
1670
- // Now make a copy (so we do not mutate any data) and pretend it is not on the main frame.
1671
- const copyOfEvent = {...markFCPEvent, args: {...markFCPEvent.args}};
1672
- copyOfEvent.args.frame = 'not-the-main-frame';
1673
- assert.isFalse(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, copyOfEvent));
1674
- });
1675
-
1676
- it('is true for a MarkDOMContent event', async function() {
1677
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1678
- const markDOMContentEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isMarkDOMContent);
1679
- assert.isOk(markDOMContentEvent);
1680
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, markDOMContentEvent));
1681
- });
1682
-
1683
- it('is true for a MarkLoad event', async function() {
1684
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1685
- const markLoadEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isMarkLoad);
1686
- assert.isOk(markLoadEvent);
1687
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, markLoadEvent));
1688
- });
1689
-
1690
- it('is true for a LCP candiadate event', async function() {
1691
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1692
- const markLCPCandidate =
1693
- parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isLargestContentfulPaintCandidate);
1694
- assert.isOk(markLCPCandidate);
1695
- assert.isTrue(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, markLCPCandidate));
1696
- });
1697
-
1698
- it('is false for a MarkDOMContent event not on outermost main frame', async function() {
1699
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev-initial-url.json.gz');
1700
- const markDOMContentEvent = parsedTrace.PageLoadMetrics.allMarkerEvents.find(Trace.Types.Events.isMarkDOMContent);
1701
- assert.isOk(markDOMContentEvent);
1702
- assert.isOk(markDOMContentEvent.args);
1703
- assert.isOk(markDOMContentEvent.args.data);
1704
-
1705
- const copyOfEventNotOutermostFrame = {
1706
- ...markDOMContentEvent,
1707
- args: {
1708
- ...markDOMContentEvent.args,
1709
- data: {
1710
- ...markDOMContentEvent.args.data,
1711
- isOutermostMainFrame: false,
1712
- },
1713
- },
1714
-
1715
- };
1716
- assert.isFalse(Timeline.TimelineUIUtils.isMarkerEvent(parsedTrace, copyOfEventNotOutermostFrame));
1717
- });
1718
- });
1719
-
1720
- describe('displayNameForFrame', () => {
1721
- it('trims the URL at 80 chars by default', async () => {
1722
- const frame: Trace.Types.Events.TraceFrame = {
1723
- name: 'test-frame',
1724
- url: 'https://' +
1725
- 'a'.repeat(80),
1726
- frame: 'frame-id',
1727
- processId: Trace.Types.Events.ProcessID(1),
1728
- };
1729
- const name = Timeline.TimelineUIUtils.TimelineUIUtils.displayNameForFrame(frame);
1730
- assert.strictEqual(name, `https://${'a'.repeat(72) /* 80 minus the 8 chars for 'https://' */}`);
1731
- assert.lengthOf(name, 80);
1732
- });
1733
-
1734
- it('uses the frame name if the URL is about:', async () => {
1735
- const frame: Trace.Types.Events.TraceFrame = {
1736
- name: 'test-frame',
1737
- url: 'about:blank',
1738
- frame: 'frame-id',
1739
- processId: Trace.Types.Events.ProcessID(1),
1740
- };
1741
- const name = Timeline.TimelineUIUtils.TimelineUIUtils.displayNameForFrame(frame);
1742
- assert.strictEqual(name, '"test-frame"');
1743
- });
1744
-
1745
- it('trims the frame name from the middle if it is too long', async () => {
1746
- const frame: Trace.Types.Events.TraceFrame = {
1747
- name: 'test-frame-that-is-long',
1748
- url: 'about:blank',
1749
- frame: 'frame-id',
1750
- processId: Trace.Types.Events.ProcessID(1),
1751
- };
1752
- const name = Timeline.TimelineUIUtils.TimelineUIUtils.displayNameForFrame(frame, 10);
1753
- assert.strictEqual(name, '"test-…long"');
1754
- });
1755
- });
1756
-
1757
- describe('buildDetailsNodeForMarkerEvents', () => {
1758
- it('builds the right link for an LCP Event', async function() {
1759
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
1760
- const markLCPEvent = getEventOfType(
1761
- parsedTrace.PageLoadMetrics.allMarkerEvents, Trace.Types.Events.isLargestContentfulPaintCandidate);
1762
- const html = Timeline.TimelineUIUtils.TimelineUIUtils.buildDetailsNodeForMarkerEvents(
1763
- markLCPEvent,
1764
- );
1765
- const url = html.querySelector('x-link')?.getAttribute('href');
1766
- assert.strictEqual(url, 'https://web.dev/lcp/');
1767
- assert.strictEqual(html.innerText, 'Learn more about largest contentful paint.');
1768
- });
1769
-
1770
- it('builds the right link for an FCP Event', async function() {
1771
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
1772
- const markFCPEvent =
1773
- getEventOfType(parsedTrace.PageLoadMetrics.allMarkerEvents, Trace.Types.Events.isFirstContentfulPaint);
1774
- const html = Timeline.TimelineUIUtils.TimelineUIUtils.buildDetailsNodeForMarkerEvents(
1775
- markFCPEvent,
1776
- );
1777
- const url = html.querySelector('x-link')?.getAttribute('href');
1778
- assert.strictEqual(url, 'https://web.dev/first-contentful-paint/');
1779
- assert.strictEqual(html.innerText, 'Learn more about first contentful paint.');
1780
- });
1781
-
1782
- it('builds a generic event for other marker events', async function() {
1783
- const {parsedTrace} = await TraceLoader.traceEngine(this, 'web-dev.json.gz');
1784
- const markLoadEvent = getEventOfType(parsedTrace.PageLoadMetrics.allMarkerEvents, Trace.Types.Events.isMarkLoad);
1785
- const html = Timeline.TimelineUIUtils.TimelineUIUtils.buildDetailsNodeForMarkerEvents(
1786
- markLoadEvent,
1787
- );
1788
- const url = html.querySelector('x-link')?.getAttribute('href');
1789
- assert.strictEqual(url, 'https://web.dev/user-centric-performance-metrics/');
1790
- assert.strictEqual(html.innerText, 'Learn more about page performance metrics.');
1791
- });
1792
- });
1793
- });