chrome-devtools-frontend 1.0.1669021 → 1.0.1672557

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 (302) hide show
  1. package/.agents/skills/fixing-skipped-tests/SKILL.md +6 -6
  2. package/.agents/skills/gerrit-cli/SKILL.md +4 -10
  3. package/.agents/skills/gerrit-cli/references/commands.md +45 -2
  4. package/.agents/skills/gerrit-cli/references/workflows.md +7 -0
  5. package/.agents/skills/gerrit-cli/scripts/import_upstream.py +34 -152
  6. package/config/typescript/tsconfig.eslint.json +1 -1
  7. package/docs/contributing/settings-experiments-features.md +2 -8
  8. package/docs/ecosystem/automatic_workspace_folders.md +0 -19
  9. package/eslint.config.mjs +5 -5
  10. package/front_end/core/common/Lazy.ts +3 -3
  11. package/front_end/core/common/SettingRegistration.ts +0 -7
  12. package/front_end/core/common/Settings.ts +0 -38
  13. package/front_end/core/host/UserMetrics.ts +187 -953
  14. package/front_end/core/host/UserMetricsEnums.ts +949 -0
  15. package/front_end/core/root/Runtime.ts +21 -138
  16. package/front_end/core/sdk/CSSMetadata.ts +70 -65
  17. package/front_end/core/sdk/CategorizedBreakpoint.ts +0 -1
  18. package/front_end/core/sdk/ChildTargetManager.ts +0 -2
  19. package/front_end/core/sdk/EmulationModel.ts +0 -2
  20. package/front_end/core/sdk/EventBreakpointsModel.ts +0 -4
  21. package/front_end/core/sdk/NetworkManager.ts +0 -3
  22. package/front_end/core/sdk/PageResourceLoader.ts +9 -9
  23. package/front_end/core/sdk/RehydratingConnection.ts +52 -4
  24. package/front_end/core/sdk/Target.ts +0 -4
  25. package/front_end/devtools_compatibility.js +886 -0
  26. package/front_end/entrypoints/inspector_main/RenderingOptions.ts +7 -6
  27. package/front_end/entrypoints/main/ExecutionContextSelector.ts +0 -1
  28. package/front_end/entrypoints/main/MainImpl.ts +18 -22
  29. package/front_end/foundation/Universe.ts +7 -2
  30. package/front_end/generated/InspectorBackendCommands.ts +3 -10
  31. package/front_end/generated/{SupportedCSSProperties.js → SupportedCSSProperties.ts} +16 -0
  32. package/front_end/generated/protocol-mapping.d.ts +0 -42
  33. package/front_end/generated/protocol-proxy-api.d.ts +0 -38
  34. package/front_end/generated/protocol.ts +9 -169
  35. package/front_end/models/ai_assistance/AiAgent2.ts +11 -3
  36. package/front_end/models/ai_assistance/AiConversation.ts +1 -0
  37. package/front_end/models/ai_assistance/AiHistoryStorage.ts +8 -5
  38. package/front_end/models/ai_assistance/AiSetting.ts +108 -0
  39. package/front_end/models/ai_assistance/AiUtils.ts +47 -0
  40. package/front_end/models/ai_assistance/ChangeManager.ts +1 -0
  41. package/front_end/models/ai_assistance/ExtensionScope.ts +3 -12
  42. package/front_end/models/ai_assistance/agents/AiAgent.ts +11 -18
  43. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +3 -0
  44. package/front_end/models/ai_assistance/agents/ExecuteJavascript.ts +42 -17
  45. package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +1 -1
  46. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +3 -2
  47. package/front_end/models/ai_assistance/agents/StorageAgent.ts +253 -155
  48. package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +2 -2
  49. package/front_end/models/ai_assistance/ai_assistance.ts +4 -0
  50. package/front_end/models/ai_assistance/contexts/PerformanceTraceContext.ts +12 -6
  51. package/front_end/models/ai_assistance/data_formatters/FileFormatter.ts +3 -1
  52. package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +1 -0
  53. package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +4 -3
  54. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +1 -1
  55. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +1 -0
  56. package/front_end/models/ai_assistance/injected.ts +1 -0
  57. package/front_end/models/ai_assistance/performance/AICallTree.ts +1 -0
  58. package/front_end/models/ai_assistance/skills/Skill.ts +1 -1
  59. package/front_end/models/ai_assistance/skills/SkillRegistry.ts +2 -0
  60. package/front_end/models/ai_assistance/skills/performance.md +10 -0
  61. package/front_end/models/ai_assistance/tools/ExecuteJavaScript.ts +52 -5
  62. package/front_end/models/ai_assistance/tools/GetElementAccessibilityDetails.ts +4 -4
  63. package/front_end/models/ai_assistance/tools/GetLighthouseAudits.ts +4 -4
  64. package/front_end/models/ai_assistance/tools/GetNetworkRequestDetails.ts +5 -4
  65. package/front_end/models/ai_assistance/tools/GetStyles.ts +5 -4
  66. package/front_end/models/ai_assistance/tools/ListNetworkRequests.ts +5 -4
  67. package/front_end/models/ai_assistance/tools/README.md +1 -1
  68. package/front_end/models/ai_assistance/tools/RecordPerformanceTrace.ts +63 -0
  69. package/front_end/models/ai_assistance/tools/ResolveDevtoolsNodePath.ts +5 -5
  70. package/front_end/models/ai_assistance/tools/Tool.ts +118 -24
  71. package/front_end/models/ai_assistance/tools/ToolRegistry.ts +2 -0
  72. package/front_end/models/badges/UserBadges.ts +2 -0
  73. package/front_end/models/bindings/NetworkProject.ts +5 -0
  74. package/front_end/models/bindings/ResourceScriptMapping.ts +2 -0
  75. package/front_end/models/bindings/ResourceUtils.ts +3 -0
  76. package/front_end/models/crux-manager/CrUXManager.ts +1 -0
  77. package/front_end/models/emulation/DeviceModeModel.ts +140 -7
  78. package/front_end/models/emulation/EmulatedDevices.ts +246 -793
  79. package/front_end/models/issues_manager/IssuesManager.ts +10 -2
  80. package/front_end/models/live-metrics/LiveMetrics.ts +41 -9
  81. package/front_end/models/logs/LogManager.ts +8 -5
  82. package/front_end/models/logs/NetworkLog.ts +1 -0
  83. package/front_end/models/persistence/IsolatedFileSystemManager.ts +21 -3
  84. package/front_end/models/persistence/NetworkPersistenceManager.ts +6 -0
  85. package/front_end/models/project_settings/ProjectSettingsModel.ts +8 -12
  86. package/front_end/models/trace/Processor.ts +42 -10
  87. package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +12 -19
  88. package/front_end/models/trace/handlers/MetaHandler.ts +38 -5
  89. package/front_end/models/trace/insights/CLSCulprits.ts +1 -2
  90. package/front_end/models/trace/insights/CharacterSet.ts +1 -1
  91. package/front_end/models/trace/insights/Common.ts +21 -2
  92. package/front_end/models/trace/insights/DocumentLatency.ts +1 -1
  93. package/front_end/models/trace/insights/LCPBreakdown.ts +7 -6
  94. package/front_end/models/trace/insights/LCPDiscovery.ts +1 -1
  95. package/front_end/models/trace/insights/ModernHTTP.ts +7 -3
  96. package/front_end/models/trace/insights/NetworkDependencyTree.ts +1 -1
  97. package/front_end/models/trace/insights/RenderBlocking.ts +1 -1
  98. package/front_end/models/trace/insights/ThirdParties.ts +5 -2
  99. package/front_end/models/trace/insights/types.ts +11 -6
  100. package/front_end/models/trace/types/Configuration.ts +5 -0
  101. package/front_end/models/trace_source_maps_resolver/SourceMapsResolver.ts +3 -1
  102. package/front_end/models/workspace/IgnoreListManager.ts +2 -0
  103. package/front_end/models/workspace/UISourceCode.ts +2 -0
  104. package/front_end/models/workspace_diff/WorkspaceDiff.ts +4 -0
  105. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +22 -22
  106. package/front_end/panels/ai_assistance/ai_assistance-meta.ts +0 -7
  107. package/front_end/panels/ai_assistance/components/ChatInput.ts +4 -0
  108. package/front_end/panels/ai_assistance/components/ChatMessage.ts +79 -34
  109. package/front_end/panels/ai_assistance/components/WalkthroughView.ts +1 -2
  110. package/front_end/panels/ai_assistance/components/walkthroughView.css +1 -1
  111. package/front_end/panels/application/ApplicationPanelSidebar.ts +9 -106
  112. package/front_end/panels/application/ApplicationPanelTreeElement.ts +1 -1
  113. package/front_end/panels/application/application.ts +0 -10
  114. package/front_end/panels/application/components/components.ts +0 -4
  115. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +0 -5
  116. package/front_end/panels/browser_debugger/EventListenerBreakpointsSidebarPane.ts +6 -12
  117. package/front_end/panels/browser_debugger/browser_debugger-meta.ts +5 -3
  118. package/front_end/panels/console/ConsoleFormat.ts +2 -62
  119. package/front_end/panels/console/ConsoleViewMessage.ts +14 -7
  120. package/front_end/panels/elements/ElementsTreeElement.ts +1 -2
  121. package/front_end/panels/emulation/AdvancedApp.ts +1 -2
  122. package/front_end/panels/emulation/DeviceModeToolbar.ts +83 -69
  123. package/front_end/panels/emulation/DeviceModeView.ts +4 -134
  124. package/front_end/panels/emulation/DeviceModeWrapper.ts +52 -69
  125. package/front_end/panels/emulation/MediaQueryInspector.ts +2 -2
  126. package/front_end/panels/emulation/emulation-meta.ts +12 -12
  127. package/front_end/panels/issues/IssuesPane.ts +3 -1
  128. package/front_end/panels/lighthouse/LighthouseController.ts +6 -0
  129. package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +17 -21
  130. package/front_end/panels/linear_memory_inspector/components/LinearMemoryNavigator.ts +206 -126
  131. package/front_end/panels/linear_memory_inspector/components/linearMemoryInspector.css +1 -1
  132. package/front_end/panels/mobile_throttling/CalibrationController.ts +1 -1
  133. package/front_end/panels/mobile_throttling/MobileThrottlingSelector.ts +3 -3
  134. package/front_end/panels/mobile_throttling/NetworkPanelIndicator.ts +6 -6
  135. package/front_end/panels/mobile_throttling/NetworkThrottlingSelector.ts +14 -12
  136. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +13 -13
  137. package/front_end/panels/mobile_throttling/ThrottlingPresets.ts +10 -10
  138. package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +28 -28
  139. package/front_end/panels/mobile_throttling/mobile_throttling-meta.ts +6 -6
  140. package/front_end/panels/network/RequestHeadersView.ts +1 -1
  141. package/front_end/panels/network/ResourceChunkView.ts +243 -144
  142. package/front_end/panels/network/ResourceDirectSocketChunkView.ts +52 -29
  143. package/front_end/panels/network/ResourceWebSocketFrameView.ts +21 -35
  144. package/front_end/panels/network/resourceChunkView.css +41 -36
  145. package/front_end/panels/profiler/HeapDetachedElementsDataGrid.ts +21 -12
  146. package/front_end/panels/profiler/profiler.ts +4 -0
  147. package/front_end/panels/recorder/RecorderPanel.ts +6 -14
  148. package/front_end/panels/sensors/LocationsSettingsTab.ts +7 -7
  149. package/front_end/panels/settings/AISettingsTab.ts +75 -31
  150. package/front_end/panels/settings/SettingsScreen.ts +8 -13
  151. package/front_end/panels/settings/components/SyncSection.ts +3 -4
  152. package/front_end/panels/settings/emulation/DevicesSettingsTab.ts +650 -18
  153. package/front_end/panels/settings/emulation/devicesSettingsTab.css +18 -0
  154. package/front_end/panels/settings/settings-meta.ts +0 -1
  155. package/front_end/panels/sources/CategorizedBreakpointL10n.ts +0 -2
  156. package/front_end/panels/sources/DebuggerPausedMessage.ts +11 -5
  157. package/front_end/panels/sources/DebuggerPlugin.ts +1 -1
  158. package/front_end/panels/sources/EditingLocationHistoryManager.ts +12 -9
  159. package/front_end/panels/sources/SourcesPanel.ts +19 -17
  160. package/front_end/panels/sources/SourcesView.ts +191 -96
  161. package/front_end/panels/sources/TabbedEditorContainer.ts +3 -4
  162. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +2 -5
  163. package/front_end/panels/timeline/TimelinePanel.ts +2 -0
  164. package/front_end/panels/timeline/TimelineUIUtils.ts +15 -0
  165. package/front_end/panels/timeline/components/CWVMetrics.ts +16 -3
  166. package/front_end/panels/timeline/components/cwvMetrics.css +4 -0
  167. package/front_end/panels/timeline/components/liveMetricsView.css +0 -17
  168. package/front_end/panels/timeline/components/metricValueStyles.css +17 -0
  169. package/front_end/panels/timeline/timeline-meta.ts +3 -5
  170. package/front_end/third_party/chromium/README.chromium +1 -1
  171. package/front_end/third_party/codemirror.next/chunk/angular.js +1 -1
  172. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  173. package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
  174. package/front_end/third_party/codemirror.next/chunk/cpp.js +1 -1
  175. package/front_end/third_party/codemirror.next/chunk/cpp.js.map +1 -1
  176. package/front_end/third_party/codemirror.next/chunk/java.js +1 -1
  177. package/front_end/third_party/codemirror.next/chunk/java.js.map +1 -1
  178. package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
  179. package/front_end/third_party/codemirror.next/chunk/less.js +1 -1
  180. package/front_end/third_party/codemirror.next/chunk/less.js.map +1 -1
  181. package/front_end/third_party/codemirror.next/chunk/markdown.js +1 -1
  182. package/front_end/third_party/codemirror.next/chunk/markdown.js.map +1 -1
  183. package/front_end/third_party/codemirror.next/chunk/php.js +1 -1
  184. package/front_end/third_party/codemirror.next/chunk/php.js.map +1 -1
  185. package/front_end/third_party/codemirror.next/chunk/python.js +1 -1
  186. package/front_end/third_party/codemirror.next/chunk/python.js.map +1 -1
  187. package/front_end/third_party/codemirror.next/chunk/sass.js +1 -1
  188. package/front_end/third_party/codemirror.next/chunk/sass.js.map +1 -1
  189. package/front_end/third_party/codemirror.next/chunk/svelte.js +1 -1
  190. package/front_end/third_party/codemirror.next/chunk/svelte.js.map +1 -1
  191. package/front_end/third_party/codemirror.next/chunk/vue.js +1 -1
  192. package/front_end/third_party/codemirror.next/chunk/wast.js +1 -1
  193. package/front_end/third_party/codemirror.next/chunk/wast.js.map +1 -1
  194. package/front_end/third_party/codemirror.next/chunk/xml.js +1 -1
  195. package/front_end/third_party/codemirror.next/chunk/xml.js.map +1 -1
  196. package/front_end/third_party/codemirror.next/codemirror.next.d.ts +1332 -193
  197. package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
  198. package/front_end/third_party/codemirror.next/rebuild.sh +1 -1
  199. package/front_end/third_party/puppeteer/README.chromium +2 -2
  200. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +64 -15
  201. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +65 -16
  202. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.d.ts +50 -7
  203. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.d.ts.map +1 -1
  204. package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Page.js.map +1 -1
  205. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.d.ts +2 -1
  206. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.d.ts.map +1 -1
  207. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.js +5 -5
  208. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/BidiOverCdp.js.map +1 -1
  209. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.d.ts +2 -1
  210. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.d.ts.map +1 -1
  211. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.js +8 -6
  212. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Connection.js.map +1 -1
  213. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.d.ts.map +1 -1
  214. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.js +3 -0
  215. package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/Dialog.js.map +1 -1
  216. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.d.ts.map +1 -1
  217. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js +16 -1
  218. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js.map +1 -1
  219. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.d.ts +5 -1
  220. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.d.ts.map +1 -1
  221. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.js +11 -6
  222. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Connection.js.map +1 -1
  223. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.d.ts.map +1 -1
  224. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.js +5 -0
  225. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Dialog.js.map +1 -1
  226. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.d.ts.map +1 -1
  227. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.js +10 -0
  228. package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/NetworkManager.js.map +1 -1
  229. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/BrowserConnector.js +4 -3
  230. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/BrowserConnector.js.map +1 -1
  231. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.d.ts +27 -2
  232. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.d.ts.map +1 -1
  233. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.js +12 -1
  234. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/Debug.js.map +1 -1
  235. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.d.ts +2 -2
  236. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.d.ts.map +1 -1
  237. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.js +2 -2
  238. package/front_end/third_party/puppeteer/package/lib/puppeteer/common/util.js.map +1 -1
  239. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  240. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.js +2 -0
  241. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ChromeLauncher.js.map +1 -1
  242. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.d.ts +2 -1
  243. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.d.ts.map +1 -1
  244. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.js +5 -4
  245. package/front_end/third_party/puppeteer/package/lib/puppeteer/node/ScreenRecorder.js.map +1 -1
  246. package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.d.ts +3 -3
  247. package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.js +3 -3
  248. package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.d.ts +1 -1
  249. package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.js +1 -1
  250. package/front_end/third_party/puppeteer/package/lib/types.d.ts +64 -15
  251. package/front_end/third_party/puppeteer/package/package.json +2 -2
  252. package/front_end/third_party/puppeteer/package/src/api/Page.ts +50 -7
  253. package/front_end/third_party/puppeteer/package/src/bidi/BidiOverCdp.ts +9 -7
  254. package/front_end/third_party/puppeteer/package/src/bidi/Connection.ts +9 -6
  255. package/front_end/third_party/puppeteer/package/src/bidi/Dialog.ts +4 -0
  256. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +24 -1
  257. package/front_end/third_party/puppeteer/package/src/cdp/Connection.ts +11 -6
  258. package/front_end/third_party/puppeteer/package/src/cdp/Dialog.ts +7 -0
  259. package/front_end/third_party/puppeteer/package/src/cdp/NetworkManager.ts +11 -0
  260. package/front_end/third_party/puppeteer/package/src/common/BrowserConnector.ts +7 -3
  261. package/front_end/third_party/puppeteer/package/src/common/Debug.ts +30 -5
  262. package/front_end/third_party/puppeteer/package/src/common/util.ts +2 -2
  263. package/front_end/third_party/puppeteer/package/src/node/ChromeLauncher.ts +2 -0
  264. package/front_end/third_party/puppeteer/package/src/node/ScreenRecorder.ts +6 -4
  265. package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
  266. package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
  267. package/front_end/tsconfig.compatibility.json +2 -1
  268. package/front_end/tsconfig.json +1 -1
  269. package/front_end/ui/components/icon_button/IconButton.ts +1 -1
  270. package/front_end/ui/components/issue_counter/IssueCounter.ts +1 -1
  271. package/front_end/ui/components/settings/SettingCheckbox.ts +4 -7
  272. package/front_end/ui/components/settings/settings.ts +1 -2
  273. package/front_end/ui/legacy/Treeoutline.ts +52 -30
  274. package/front_end/ui/legacy/components/object_ui/CSSStyleSanitizer.ts +74 -0
  275. package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +6 -1
  276. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +47 -54
  277. package/front_end/ui/legacy/components/object_ui/object_ui.ts +2 -0
  278. package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +5 -27
  279. package/front_end/ui/legacy/components/settings_ui/SettingsUI.ts +10 -12
  280. package/front_end/ui/settings/SettingUIRegistration.ts +0 -8
  281. package/front_end/ui/visual_logging/KnownContextValues.ts +37 -0
  282. package/inspector_overlay/tsconfig.json +8 -2
  283. package/package.json +3 -2
  284. package/.agents/skills/gerrit-cli/scripts/gerrit_client_wrapper.py +0 -47
  285. package/front_end/core/sdk/CSSModel.test.api.ts +0 -102
  286. package/front_end/core/sdk/DOMModel.test.api.ts +0 -104
  287. package/front_end/foundation/Universe.test.api.ts +0 -73
  288. package/front_end/panels/application/SharedStorageEventsView.ts +0 -128
  289. package/front_end/panels/application/SharedStorageItemsView.ts +0 -179
  290. package/front_end/panels/application/SharedStorageListTreeElement.ts +0 -65
  291. package/front_end/panels/application/SharedStorageModel.ts +0 -249
  292. package/front_end/panels/application/SharedStorageTreeElement.ts +0 -40
  293. package/front_end/panels/application/components/SharedStorageAccessGrid.ts +0 -191
  294. package/front_end/panels/application/components/SharedStorageMetadataView.ts +0 -133
  295. package/front_end/panels/application/components/sharedStorageAccessGrid.css +0 -29
  296. package/front_end/panels/application/components/sharedStorageMetadataView.css +0 -29
  297. package/front_end/panels/application/sharedStorageEventsView.css +0 -9
  298. package/front_end/panels/network/OriginalResourceChunkView.ts +0 -340
  299. package/front_end/panels/network/originalResourceChunkView.css +0 -49
  300. package/front_end/ui/components/settings/SettingDeprecationWarning.ts +0 -47
  301. package/front_end/ui/components/settings/settingDeprecationWarning.css +0 -14
  302. /package/front_end/generated/{ARIAProperties.js → ARIAProperties.ts} +0 -0
@@ -9,6 +9,19 @@
9
9
  padding-right: 0;
10
10
  }
11
11
 
12
+ .device-group-container {
13
+ margin-bottom: 8px;
14
+ }
15
+
16
+ .device-group-title {
17
+ font-weight: 600;
18
+ color: var(--sys-color-on-surface-subtle);
19
+ font-size: 11px;
20
+ text-transform: uppercase;
21
+ letter-spacing: 0.5px;
22
+ margin: 12px 0 4px;
23
+ }
24
+
12
25
  .list {
13
26
  &:has(div) {
14
27
  border: none;
@@ -69,6 +82,11 @@
69
82
  margin-bottom: 5px;
70
83
  }
71
84
 
85
+ .devices-edit-safe-area-group {
86
+ display: flex;
87
+ flex-direction: column;
88
+ }
89
+
72
90
  .devices-edit-fields b {
73
91
  margin-top: 8px;
74
92
  margin-bottom: 0;
@@ -253,7 +253,6 @@ Common.Revealer.registerRevealer({
253
253
  return [
254
254
  Common.Settings.Setting,
255
255
  Root.Runtime.Experiment,
256
- Root.Runtime.HostExperiment,
257
256
  ];
258
257
  },
259
258
  async loadRevealer() {
@@ -137,8 +137,6 @@ const LOCALIZED_INSTRUMENTATION_NAMES:
137
137
  i18nLazyString(UIStrings.scriptFirstStatement),
138
138
  [SDK.EventBreakpointsModel.InstrumentationNames.SCRIPT_BLOCKED_BY_CSP]:
139
139
  i18nLazyString(UIStrings.scriptBlockedByContentSecurity),
140
- [SDK.EventBreakpointsModel.InstrumentationNames.SHARED_STORAGE_WORKLET_SCRIPT_FIRST_STATEMENT]:
141
- i18nLazyString(UIStrings.scriptFirstStatement),
142
140
  [SDK.EventBreakpointsModel.InstrumentationNames.REQUEST_ANIMATION_FRAME]:
143
141
  i18nLazyString(UIStrings.requestAnimationFrame),
144
142
  [SDK.EventBreakpointsModel.InstrumentationNames.CANCEL_ANIMATION_FRAME]:
@@ -182,11 +182,17 @@ const DEFAULT_VIEW = (input: ViewInput|null, _output: undefined, target: Documen
182
182
  type View = typeof DEFAULT_VIEW;
183
183
 
184
184
  export class DebuggerPausedMessage extends UI.Widget.Widget<ShadowRoot> {
185
+ static override readonly INJECT = [SDK.EventBreakpointsModel.EventBreakpointsManager] as const;
186
+
185
187
  #viewInput: ViewInput|null = null;
186
- constructor(element?: HTMLElement, private readonly view: View = DEFAULT_VIEW) {
188
+ readonly #eventBreakpointsManager: SDK.EventBreakpointsModel.EventBreakpointsManager;
189
+ constructor(element: HTMLElement|undefined,
190
+ [eventBreakpointsManager]: UI.Widget.WidgetDependencies<typeof DebuggerPausedMessage>,
191
+ private readonly view: View = DEFAULT_VIEW) {
187
192
  super(element, {
188
193
  useShadowDom: 'pure',
189
194
  });
195
+ this.#eventBreakpointsManager = eventBreakpointsManager;
190
196
  }
191
197
 
192
198
  private static descriptionWithoutStack(description: string): string {
@@ -221,7 +227,7 @@ export class DebuggerPausedMessage extends UI.Widget.Widget<ShadowRoot> {
221
227
  };
222
228
  }
223
229
 
224
- static #findEventNameForUi(detailsAuxData?: SDK.DebuggerModel.EventListenerPausedDetailsAuxData): string {
230
+ #findEventNameForUi(detailsAuxData?: SDK.DebuggerModel.EventListenerPausedDetailsAuxData): string {
225
231
  if (!detailsAuxData) {
226
232
  return '';
227
233
  }
@@ -237,7 +243,7 @@ export class DebuggerPausedMessage extends UI.Widget.Widget<ShadowRoot> {
237
243
  }
238
244
 
239
245
  let breakpoint: SDK.CategorizedBreakpoint.CategorizedBreakpoint|null =
240
- SDK.EventBreakpointsModel.EventBreakpointsManager.instance().resolveEventListenerBreakpoint(detailsAuxData);
246
+ this.#eventBreakpointsManager.resolveEventListenerBreakpoint(detailsAuxData);
241
247
  if (breakpoint) {
242
248
  // EventBreakpointsManager breakpoints are the only ones with localized names.
243
249
  return getLocalizedBreakpointName(breakpoint.name);
@@ -269,8 +275,8 @@ export class DebuggerPausedMessage extends UI.Widget.Widget<ShadowRoot> {
269
275
  if (details.reason === Protocol.Debugger.PausedEventReason.DOM) {
270
276
  this.#viewInput = await DebuggerPausedMessage.createDOMBreakpointHitMessageDetails(details);
271
277
  } else if (details.reason === Protocol.Debugger.PausedEventReason.EventListener) {
272
- const eventNameForUI = DebuggerPausedMessage.#findEventNameForUi(
273
- details.auxData as SDK.DebuggerModel.EventListenerPausedDetailsAuxData);
278
+ const eventNameForUI =
279
+ this.#findEventNameForUi(details.auxData as SDK.DebuggerModel.EventListenerPausedDetailsAuxData);
274
280
  this.#viewInput = {mainText: i18nString(UIStrings.pausedOnEventListener), subText: eventNameForUI, errorLike};
275
281
  } else if (details.reason === Protocol.Debugger.PausedEventReason.XHR) {
276
282
  const auxData = (details.auxData as PausedDetailsAuxData);
@@ -1773,7 +1773,7 @@ export class BreakpointLocationRevealer implements
1773
1773
  async reveal(breakpointLocation: Breakpoints.BreakpointManager.BreakpointLocation, omitFocus?: boolean|undefined):
1774
1774
  Promise<void> {
1775
1775
  const {uiLocation} = breakpointLocation;
1776
- SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1776
+ await SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1777
1777
  const debuggerPlugin = debuggerPluginForUISourceCode.get(uiLocation.uiSourceCode);
1778
1778
  if (debuggerPlugin) {
1779
1779
  debuggerPlugin.editBreakpointLocation(breakpointLocation);
@@ -15,7 +15,7 @@ export const HistoryDepth = 20;
15
15
  export class EditingLocationHistoryManager {
16
16
  private readonly entries: EditingLocationHistoryEntry[] = [];
17
17
  private current = -1;
18
- private revealing = false;
18
+ private revealingCount = 0;
19
19
 
20
20
  constructor(private readonly sourcesView: SourcesView) {
21
21
  }
@@ -31,7 +31,7 @@ export class EditingLocationHistoryManager {
31
31
  }
32
32
  const prevPos = update.startState.selection.main;
33
33
  const newPos = update.state.selection.main;
34
- const isJump = !this.revealing && prevPos.anchor !== newPos.anchor && update.transactions.some(tr => {
34
+ const isJump = this.revealingCount === 0 && prevPos.anchor !== newPos.anchor && update.transactions.some(tr => {
35
35
  return Boolean(
36
36
  tr.isUserEvent('select.pointer') || tr.isUserEvent('select.reveal') || tr.isUserEvent('select.search'));
37
37
  });
@@ -50,7 +50,7 @@ export class EditingLocationHistoryManager {
50
50
  }
51
51
 
52
52
  updateCurrentState(uiSourceCode: Workspace.UISourceCode.UISourceCode, position: number): void {
53
- if (!this.revealing) {
53
+ if (this.revealingCount === 0) {
54
54
  const top = this.current >= 0 ? this.entries[this.current] : null;
55
55
  if (top?.matches(uiSourceCode)) {
56
56
  top.position = position;
@@ -66,26 +66,29 @@ export class EditingLocationHistoryManager {
66
66
  }
67
67
  }
68
68
 
69
- private reveal(entry: EditingLocationHistoryEntry): void {
69
+ private async reveal(entry: EditingLocationHistoryEntry): Promise<void> {
70
70
  const uiSourceCode = Workspace.Workspace.WorkspaceImpl.instance().uiSourceCode(entry.projectId, entry.url);
71
71
  if (uiSourceCode) {
72
- this.revealing = true;
73
- this.sourcesView.showSourceLocation(uiSourceCode, entry.position, false, true);
74
- this.revealing = false;
72
+ this.revealingCount++;
73
+ try {
74
+ await this.sourcesView.showSourceLocation(uiSourceCode, entry.position, false, true);
75
+ } finally {
76
+ this.revealingCount--;
77
+ }
75
78
  }
76
79
  }
77
80
 
78
81
  rollback(): void {
79
82
  if (this.current > 0) {
80
83
  this.current--;
81
- this.reveal(this.entries[this.current]);
84
+ void this.reveal(this.entries[this.current]);
82
85
  }
83
86
  }
84
87
 
85
88
  rollover(): void {
86
89
  if (this.current < this.entries.length - 1) {
87
90
  this.current++;
88
- this.reveal(this.entries[this.current]);
91
+ void this.reveal(this.entries[this.current]);
89
92
  }
90
93
  }
91
94
 
@@ -247,7 +247,8 @@ export class SourcesPanel extends UI.Panel.Panel implements
247
247
 
248
248
  this.debugToolbar = this.createDebugToolbar();
249
249
  this.debugToolbarDrawer = this.createDebugToolbarDrawer();
250
- this.debuggerPausedMessage = new DebuggerPausedMessage();
250
+ this.debuggerPausedMessage =
251
+ new DebuggerPausedMessage(undefined, [SDK.EventBreakpointsModel.EventBreakpointsManager.instance()]);
251
252
 
252
253
  const initialDebugSidebarWidth = 225;
253
254
  this.splitWidget =
@@ -355,8 +356,8 @@ export class SourcesPanel extends UI.Panel.Panel implements
355
356
  }
356
357
 
357
358
  static updateResizerAndSidebarButtons(panel: SourcesPanel): void {
358
- panel.#sourcesView.leftToolbar().removeToolbarItems();
359
- panel.#sourcesView.rightToolbar().removeToolbarItems();
359
+ const leftItems: UI.Toolbar.ToolbarItem[] = [];
360
+ const rightItems: UI.Toolbar.ToolbarItem[] = [];
360
361
  panel.#sourcesView.bottomToolbar().removeToolbarItems();
361
362
  const isInWrapper = UI.Context.Context.instance().flavor(QuickSourceView) &&
362
363
  !UI.InspectorView.InspectorView.instance().isDrawerMinimized();
@@ -366,15 +367,17 @@ export class SourcesPanel extends UI.Panel.Panel implements
366
367
  panel.splitWidget.installResizer(panel.#sourcesView.scriptViewToolbar());
367
368
  }
368
369
  if (!isInWrapper) {
369
- panel.#sourcesView.leftToolbar().appendToolbarItem(panel.toggleNavigatorSidebarButton);
370
+ leftItems.push(panel.toggleNavigatorSidebarButton);
370
371
  if (!Root.Runtime.Runtime.isTraceApp()) {
371
372
  if (panel.splitWidget.isVertical()) {
372
- panel.#sourcesView.rightToolbar().appendToolbarItem(panel.toggleDebuggerSidebarButton);
373
+ rightItems.push(panel.toggleDebuggerSidebarButton);
373
374
  } else {
374
375
  panel.#sourcesView.bottomToolbar().appendToolbarItem(panel.toggleDebuggerSidebarButton);
375
376
  }
376
377
  }
377
378
  }
379
+ panel.#sourcesView.leftToolbarItems = leftItems;
380
+ panel.#sourcesView.rightToolbarItems = rightItems;
378
381
  }
379
382
 
380
383
  targetAdded(_target: SDK.Target.Target): void {
@@ -597,9 +600,8 @@ export class SourcesPanel extends UI.Panel.Panel implements
597
600
  return this.#sourcesView.visibleView();
598
601
  }
599
602
 
600
- showUISourceCode(
601
- uiSourceCode: Workspace.UISourceCode.UISourceCode, location?: SourceFrame.SourceFrame.RevealPosition,
602
- omitFocus?: boolean): void {
603
+ async showUISourceCode(uiSourceCode: Workspace.UISourceCode.UISourceCode,
604
+ location?: SourceFrame.SourceFrame.RevealPosition, omitFocus?: boolean): Promise<void> {
603
605
  if (omitFocus) {
604
606
  if (!this.isShowing() && !UI.Context.Context.instance().flavor(QuickSourceView)) {
605
607
  return;
@@ -607,7 +609,7 @@ export class SourcesPanel extends UI.Panel.Panel implements
607
609
  } else {
608
610
  this.showEditor();
609
611
  }
610
- this.#sourcesView.showSourceLocation(uiSourceCode, location, omitFocus);
612
+ await this.#sourcesView.showSourceLocation(uiSourceCode, location, omitFocus);
611
613
  }
612
614
 
613
615
  private showEditor(): void {
@@ -617,9 +619,9 @@ export class SourcesPanel extends UI.Panel.Panel implements
617
619
  void this.setAsCurrentPanel();
618
620
  }
619
621
 
620
- showUILocation(uiLocation: Workspace.UISourceCode.UILocation, omitFocus?: boolean): void {
622
+ async showUILocation(uiLocation: Workspace.UISourceCode.UILocation, omitFocus?: boolean): Promise<void> {
621
623
  const {uiSourceCode, lineNumber, columnNumber} = uiLocation;
622
- this.showUISourceCode(uiSourceCode, {lineNumber, columnNumber}, omitFocus);
624
+ await this.showUISourceCode(uiSourceCode, {lineNumber, columnNumber}, omitFocus);
623
625
  }
624
626
 
625
627
  async revealInNavigator(uiSourceCode: Workspace.UISourceCode.UISourceCode, skipReveal?: boolean): Promise<void> {
@@ -670,7 +672,7 @@ export class SourcesPanel extends UI.Panel.Panel implements
670
672
  if (window.performance.now() - this.lastModificationTime < lastModificationTimeout) {
671
673
  return;
672
674
  }
673
- this.#sourcesView.showSourceLocation(uiLocation.uiSourceCode, uiLocation, undefined, true);
675
+ await this.#sourcesView.showSourceLocation(uiLocation.uiSourceCode, uiLocation, undefined, true);
674
676
  }
675
677
 
676
678
  private async updateDebuggerButtonsAndStatus(): Promise<void> {
@@ -1140,7 +1142,7 @@ export class SourcesPanel extends UI.Panel.Panel implements
1140
1142
  await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance().rawLocationToUILocation(
1141
1143
  response.location);
1142
1144
  if (uiLocation) {
1143
- this.showUILocation(uiLocation);
1145
+ await this.showUILocation(uiLocation);
1144
1146
  }
1145
1147
  }
1146
1148
 
@@ -1292,7 +1294,7 @@ export const minToolbarWidth = 215;
1292
1294
 
1293
1295
  export class UILocationRevealer implements Common.Revealer.Revealer<Workspace.UISourceCode.UILocation> {
1294
1296
  async reveal(uiLocation: Workspace.UISourceCode.UILocation, omitFocus?: boolean): Promise<void> {
1295
- SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1297
+ await SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1296
1298
  }
1297
1299
  }
1298
1300
 
@@ -1307,7 +1309,7 @@ export class UILocationRangeRevealer implements Common.Revealer.Revealer<Workspa
1307
1309
 
1308
1310
  async reveal(uiLocationRange: Workspace.UISourceCode.UILocationRange, omitFocus?: boolean): Promise<void> {
1309
1311
  const {uiSourceCode, range: {start: from, end: to}} = uiLocationRange;
1310
- SourcesPanel.instance().showUISourceCode(uiSourceCode, {from, to}, omitFocus);
1312
+ await SourcesPanel.instance().showUISourceCode(uiSourceCode, {from, to}, omitFocus);
1311
1313
  }
1312
1314
  }
1313
1315
 
@@ -1317,14 +1319,14 @@ export class DebuggerLocationRevealer implements Common.Revealer.Revealer<SDK.De
1317
1319
  await Bindings.DebuggerWorkspaceBinding.DebuggerWorkspaceBinding.instance().rawLocationToUILocation(
1318
1320
  rawLocation);
1319
1321
  if (uiLocation) {
1320
- SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1322
+ await SourcesPanel.instance().showUILocation(uiLocation, omitFocus);
1321
1323
  }
1322
1324
  }
1323
1325
  }
1324
1326
 
1325
1327
  export class UISourceCodeRevealer implements Common.Revealer.Revealer<Workspace.UISourceCode.UISourceCode> {
1326
1328
  async reveal(uiSourceCode: Workspace.UISourceCode.UISourceCode, omitFocus?: boolean): Promise<void> {
1327
- SourcesPanel.instance().showUISourceCode(uiSourceCode, undefined, omitFocus);
1329
+ await SourcesPanel.instance().showUISourceCode(uiSourceCode, undefined, omitFocus);
1328
1330
  }
1329
1331
  }
1330
1332