chrome-devtools-frontend 1.0.1538523 → 1.0.1539972

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 (347) hide show
  1. package/eslint.config.mjs +1 -1
  2. package/front_end/core/common/Debouncer.ts +2 -2
  3. package/front_end/core/common/Gzip.ts +1 -1
  4. package/front_end/core/common/Throttler.ts +3 -3
  5. package/front_end/core/host/GdpClient.ts +4 -0
  6. package/front_end/core/protocol_client/CDPConnection.ts +12 -10
  7. package/front_end/core/protocol_client/DevToolsCDPConnection.ts +181 -0
  8. package/front_end/core/protocol_client/InspectorBackend.ts +55 -249
  9. package/front_end/core/protocol_client/protocol_client.ts +2 -2
  10. package/front_end/core/sdk/ChildTargetManager.ts +5 -41
  11. package/front_end/core/sdk/Connections.ts +9 -58
  12. package/front_end/core/sdk/DOMModel.ts +1 -0
  13. package/front_end/core/sdk/DebuggerModel.ts +3 -16
  14. package/front_end/core/sdk/RehydratingConnection.ts +1 -1
  15. package/front_end/core/sdk/RemoteObject.ts +4 -0
  16. package/front_end/core/sdk/Target.ts +3 -6
  17. package/front_end/core/sdk/TargetManager.ts +1 -2
  18. package/front_end/entrypoints/lighthouse_worker/LighthouseWorkerService.ts +13 -26
  19. package/front_end/entrypoints/node_app/{NodeConnectionsPanel.ts → app/NodeConnectionsPanel.ts} +8 -8
  20. package/front_end/entrypoints/node_app/{NodeMain.ts → app/NodeMain.ts} +12 -11
  21. package/front_end/entrypoints/node_app/app/app.ts +6 -0
  22. package/front_end/entrypoints/node_app/node_app.ts +4 -2
  23. package/front_end/generated/Deprecation.ts +8 -0
  24. package/front_end/generated/{InspectorBackendCommands.js → InspectorBackendCommands.ts} +18 -36
  25. package/front_end/generated/SupportedCSSProperties.js +50 -9
  26. package/front_end/generated/protocol.ts +2 -2
  27. package/front_end/models/ai_assistance/EvaluateAction.ts +88 -5
  28. package/front_end/models/ai_assistance/injected.ts +15 -2
  29. package/front_end/models/live-metrics/web-vitals-injected/README.md +1 -1
  30. package/front_end/models/trace/Styles.ts +1 -1
  31. package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +18 -3
  32. package/front_end/models/trace/types/TraceEvents.ts +19 -0
  33. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +49 -26
  34. package/front_end/panels/ai_assistance/PatchWidget.ts +22 -12
  35. package/front_end/panels/ai_assistance/aiAssistancePanel.css +1 -1
  36. package/front_end/panels/ai_assistance/ai_assistance.ts +1 -0
  37. package/front_end/panels/ai_assistance/components/ChatView.ts +2 -135
  38. package/front_end/panels/ai_assistance/components/DisabledWidget.ts +170 -0
  39. package/front_end/panels/ai_assistance/components/ExploreWidget.ts +4 -4
  40. package/front_end/panels/ai_assistance/components/chatView.css +0 -31
  41. package/front_end/panels/ai_assistance/components/disabledWidget.css +45 -0
  42. package/front_end/panels/animation/AnimationTimeline.ts +1 -1
  43. package/front_end/panels/application/components/FrameDetailsView.ts +1 -1
  44. package/front_end/panels/common/AiCodeCompletionDisclaimer.ts +4 -4
  45. package/front_end/panels/common/AiCodeCompletionSummaryToolbar.ts +2 -2
  46. package/front_end/panels/console/ConsoleViewMessage.ts +1 -1
  47. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +3 -3
  48. package/front_end/panels/elements/ElementsTreeElement.ts +123 -95
  49. package/front_end/panels/elements/ElementsTreeOutline.ts +2 -2
  50. package/front_end/panels/elements/NodeStackTraceWidget.ts +8 -2
  51. package/front_end/panels/elements/PropertiesWidget.ts +3 -2
  52. package/front_end/panels/event_listeners/EventListenersView.ts +9 -5
  53. package/front_end/panels/explain/components/ConsoleInsight.ts +2 -3
  54. package/front_end/panels/lighthouse/LighthouseProtocolService.ts +57 -33
  55. package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorController.ts +2 -2
  56. package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +1 -1
  57. package/front_end/panels/linear_memory_inspector/components/LinearMemoryNavigator.ts +12 -5
  58. package/front_end/panels/network/RequestInitiatorView.ts +1 -1
  59. package/front_end/panels/network/RequestPayloadView.ts +2 -1
  60. package/front_end/panels/network/RequestTimingView.ts +4 -2
  61. package/front_end/panels/network/components/EditableSpan.ts +1 -1
  62. package/front_end/panels/network/components/RequestHeadersView.ts +24 -17
  63. package/front_end/panels/protocol_monitor/JSONEditor.ts +2 -2
  64. package/front_end/panels/recorder/RecorderController.ts +6 -7
  65. package/front_end/panels/recorder/components/StepView.ts +1 -1
  66. package/front_end/panels/recorder/models/RecordingPlayer.ts +7 -6
  67. package/front_end/panels/settings/components/SyncSection.ts +1 -1
  68. package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +4 -4
  69. package/front_end/panels/sources/BreakpointsView.ts +3 -3
  70. package/front_end/panels/sources/ScopeChainSidebarPane.ts +4 -3
  71. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +3 -2
  72. package/front_end/panels/timeline/TimelineFlameChartView.ts +10 -10
  73. package/front_end/panels/timeline/TimelinePanel.ts +3 -3
  74. package/front_end/panels/timeline/TimelineUIUtils.ts +21 -24
  75. package/front_end/panels/timeline/components/FieldSettingsDialog.ts +9 -5
  76. package/front_end/panels/timeline/components/LiveMetricsView.ts +20 -9
  77. package/front_end/panels/timeline/components/MetricCard.ts +4 -2
  78. package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +3 -2
  79. package/front_end/panels/utils/utils.ts +4 -2
  80. package/front_end/services/puppeteer/PuppeteerConnection.ts +57 -53
  81. package/front_end/third_party/chromium/README.chromium +1 -1
  82. package/front_end/third_party/puppeteer/README.chromium +2 -2
  83. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +3 -1
  84. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
  85. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js +4 -2
  86. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
  87. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BrowserContext.d.ts +3 -1
  88. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BrowserContext.d.ts.map +1 -1
  89. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BrowserContext.js.map +1 -1
  90. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +5 -0
  91. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
  92. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
  93. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BidiOverCdp.d.ts.map +1 -1
  94. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BidiOverCdp.js +1 -1
  95. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BidiOverCdp.js.map +1 -1
  96. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.d.ts.map +1 -1
  97. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.js +4 -3
  98. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.js.map +1 -1
  99. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.d.ts +1 -1
  100. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.d.ts.map +1 -1
  101. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.js +1 -1
  102. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.js.map +1 -1
  103. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Connection.d.ts +2 -1
  104. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Connection.d.ts.map +1 -1
  105. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Connection.js +3 -2
  106. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Connection.js.map +1 -1
  107. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +1 -0
  108. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
  109. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +29 -9
  110. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
  111. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.d.ts +1 -0
  112. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
  113. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js +11 -0
  114. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
  115. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Accessibility.d.ts.map +1 -1
  116. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Accessibility.js +9 -2
  117. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Accessibility.js.map +1 -1
  118. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +1 -0
  119. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
  120. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +21 -0
  121. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
  122. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  123. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js +4 -2
  124. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js.map +1 -1
  125. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.d.ts +1 -1
  126. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.d.ts.map +1 -1
  127. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.js +2 -2
  128. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserContext.js.map +1 -1
  129. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpSession.d.ts.map +1 -1
  130. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpSession.js +2 -1
  131. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpSession.js.map +1 -1
  132. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Connection.d.ts +6 -1
  133. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Connection.d.ts.map +1 -1
  134. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Connection.js +11 -2
  135. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Connection.js.map +1 -1
  136. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.d.ts.map +1 -1
  137. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.js +5 -1
  138. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.js.map +1 -1
  139. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +1 -0
  140. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
  141. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +6 -0
  142. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
  143. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts +1 -1
  144. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  145. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js +29 -27
  146. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js.map +1 -1
  147. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts +2 -0
  148. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
  149. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js +4 -3
  150. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js.map +1 -1
  151. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts +7 -0
  152. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  153. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
  154. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts +4 -0
  155. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  156. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +10 -4
  157. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
  158. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
  159. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.d.ts +1 -1
  160. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.js +1 -1
  161. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +14 -3
  162. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +97 -43
  163. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +3 -1
  164. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
  165. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js +4 -2
  166. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
  167. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BrowserContext.d.ts +3 -1
  168. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BrowserContext.d.ts.map +1 -1
  169. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BrowserContext.js.map +1 -1
  170. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +5 -0
  171. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
  172. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
  173. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BidiOverCdp.d.ts.map +1 -1
  174. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BidiOverCdp.js +1 -1
  175. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BidiOverCdp.js.map +1 -1
  176. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.d.ts.map +1 -1
  177. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.js +4 -3
  178. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.js.map +1 -1
  179. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.d.ts +1 -1
  180. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.d.ts.map +1 -1
  181. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.js +1 -1
  182. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.js.map +1 -1
  183. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Connection.d.ts +2 -1
  184. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Connection.d.ts.map +1 -1
  185. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Connection.js +3 -2
  186. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Connection.js.map +1 -1
  187. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +1 -0
  188. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
  189. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +29 -9
  190. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
  191. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.d.ts +1 -0
  192. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
  193. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js +11 -0
  194. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
  195. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Accessibility.d.ts.map +1 -1
  196. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Accessibility.js +9 -2
  197. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Accessibility.js.map +1 -1
  198. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +1 -0
  199. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
  200. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +21 -0
  201. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
  202. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  203. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js +4 -2
  204. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js.map +1 -1
  205. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.d.ts +1 -1
  206. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.d.ts.map +1 -1
  207. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.js +2 -2
  208. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserContext.js.map +1 -1
  209. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpSession.d.ts.map +1 -1
  210. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpSession.js +2 -1
  211. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpSession.js.map +1 -1
  212. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Connection.d.ts +6 -1
  213. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Connection.d.ts.map +1 -1
  214. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Connection.js +11 -2
  215. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Connection.js.map +1 -1
  216. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.d.ts.map +1 -1
  217. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.js +5 -1
  218. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.js.map +1 -1
  219. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +1 -0
  220. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
  221. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +6 -0
  222. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
  223. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts +1 -1
  224. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  225. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js +30 -28
  226. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js.map +1 -1
  227. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts +2 -0
  228. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
  229. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js +4 -3
  230. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js.map +1 -1
  231. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts +7 -0
  232. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  233. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts +4 -0
  234. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  235. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +10 -4
  236. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
  237. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.d.ts +1 -1
  238. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.js +1 -1
  239. package/front_end/third_party/puppeteer/package/lib/types.d.ts +14 -3
  240. package/front_end/third_party/puppeteer/package/package.json +3 -3
  241. package/front_end/third_party/puppeteer/package/src/api/Browser.ts +4 -2
  242. package/front_end/third_party/puppeteer/package/src/api/BrowserContext.ts +3 -1
  243. package/front_end/third_party/puppeteer/package/src/api/Page.ts +6 -0
  244. package/front_end/third_party/puppeteer/package/src/bidi/BidiOverCdp.ts +1 -0
  245. package/front_end/third_party/puppeteer/package/src/bidi/BrowserConnector.ts +8 -1
  246. package/front_end/third_party/puppeteer/package/src/bidi/BrowserContext.ts +1 -1
  247. package/front_end/third_party/puppeteer/package/src/bidi/Connection.ts +4 -1
  248. package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +38 -10
  249. package/front_end/third_party/puppeteer/package/src/bidi/core/BrowsingContext.ts +13 -0
  250. package/front_end/third_party/puppeteer/package/src/cdp/Accessibility.ts +8 -2
  251. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +32 -0
  252. package/front_end/third_party/puppeteer/package/src/cdp/BrowserConnector.ts +4 -0
  253. package/front_end/third_party/puppeteer/package/src/cdp/BrowserContext.ts +2 -2
  254. package/front_end/third_party/puppeteer/package/src/cdp/CdpSession.ts +2 -1
  255. package/front_end/third_party/puppeteer/package/src/cdp/Connection.ts +15 -1
  256. package/front_end/third_party/puppeteer/package/src/cdp/ExtensionTransport.ts +5 -1
  257. package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +8 -0
  258. package/front_end/third_party/puppeteer/package/src/cdp/TargetManager.ts +36 -43
  259. package/front_end/third_party/puppeteer/package/src/common/CallbackRegistry.ts +7 -5
  260. package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +8 -0
  261. package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +22 -1
  262. package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
  263. package/front_end/ui/components/dialogs/ButtonDialog.ts +15 -5
  264. package/front_end/ui/components/expandable_list/ExpandableList.ts +1 -1
  265. package/front_end/ui/components/helpers/helpers.ts +0 -2
  266. package/front_end/ui/components/menus/Menu.ts +5 -3
  267. package/front_end/ui/components/panel_feedback/PreviewToggle.ts +1 -1
  268. package/front_end/ui/components/survey_link/SurveyLink.docs.ts +22 -0
  269. package/front_end/ui/components/switch/Switch.docs.ts +38 -0
  270. package/front_end/ui/components/tooltips/Tooltip.ts +69 -45
  271. package/front_end/ui/components/tree_outline/TreeOutline.ts +1 -2
  272. package/front_end/ui/legacy/SelectMenu.docs.ts +14 -0
  273. package/front_end/ui/legacy/Slider.docs.ts +49 -0
  274. package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +3 -1
  275. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +453 -347
  276. package/front_end/ui/legacy/components/utils/JSPresentationUtils.ts +77 -5
  277. package/front_end/ui/legacy/components/utils/Linkifier.ts +62 -3
  278. package/front_end/ui/visual_logging/KnownContextValues.ts +8 -0
  279. package/package.json +1 -1
  280. package/front_end/core/protocol_client/NodeURL.ts +0 -42
  281. package/front_end/third_party/puppeteer/package/src/templates/version.ts.tmpl +0 -4
  282. package/front_end/ui/components/docs/color_swatch/basic.html +0 -32
  283. package/front_end/ui/components/docs/color_swatch/basic.ts +0 -38
  284. package/front_end/ui/components/docs/color_swatch/change-color.html +0 -24
  285. package/front_end/ui/components/docs/color_swatch/change-color.ts +0 -28
  286. package/front_end/ui/components/docs/combo_box/basic.html +0 -20
  287. package/front_end/ui/components/docs/combo_box/basic.ts +0 -49
  288. package/front_end/ui/components/docs/computed_style_property/basic.html +0 -25
  289. package/front_end/ui/components/docs/computed_style_property/basic.ts +0 -19
  290. package/front_end/ui/components/docs/computed_style_property/traceable.html +0 -25
  291. package/front_end/ui/components/docs/computed_style_property/traceable.ts +0 -16
  292. package/front_end/ui/components/docs/computed_style_trace/basic.html +0 -25
  293. package/front_end/ui/components/docs/computed_style_trace/basic.ts +0 -24
  294. package/front_end/ui/components/docs/console_insight/basic.html +0 -28
  295. package/front_end/ui/components/docs/console_insight/basic.ts +0 -103
  296. package/front_end/ui/components/docs/console_insight/error.html +0 -28
  297. package/front_end/ui/components/docs/console_insight/error.ts +0 -33
  298. package/front_end/ui/components/docs/console_insight/loading.html +0 -28
  299. package/front_end/ui/components/docs/console_insight/loading.ts +0 -47
  300. package/front_end/ui/components/docs/elements_breadcrumbs/basic.html +0 -43
  301. package/front_end/ui/components/docs/elements_breadcrumbs/basic.ts +0 -54
  302. package/front_end/ui/components/docs/elements_breadcrumbs/helpers.ts +0 -29
  303. package/front_end/ui/components/docs/elements_breadcrumbs/scroll-to-active-element.html +0 -38
  304. package/front_end/ui/components/docs/elements_breadcrumbs/scroll-to-active-element.ts +0 -90
  305. package/front_end/ui/components/docs/elements_breadcrumbs/scroll.html +0 -29
  306. package/front_end/ui/components/docs/elements_breadcrumbs/scroll.ts +0 -62
  307. package/front_end/ui/components/docs/icon_button/basic.html +0 -34
  308. package/front_end/ui/components/docs/icon_button/basic.ts +0 -67
  309. package/front_end/ui/components/docs/issue_counter/basic.html +0 -35
  310. package/front_end/ui/components/docs/issue_counter/basic.ts +0 -34
  311. package/front_end/ui/components/docs/issue_link_icon/basic.html +0 -31
  312. package/front_end/ui/components/docs/issue_link_icon/basic.ts +0 -26
  313. package/front_end/ui/components/docs/legacy_color_invert/basic.html +0 -77
  314. package/front_end/ui/components/docs/legacy_color_invert/basic.ts +0 -98
  315. package/front_end/ui/components/docs/linear_memory_inspector/basic.html +0 -26
  316. package/front_end/ui/components/docs/linear_memory_inspector/basic.ts +0 -44
  317. package/front_end/ui/components/docs/menu/basic.html +0 -28
  318. package/front_end/ui/components/docs/menu/basic.ts +0 -66
  319. package/front_end/ui/components/docs/recorder_control_button/basic.html +0 -20
  320. package/front_end/ui/components/docs/recorder_control_button/basic.ts +0 -15
  321. package/front_end/ui/components/docs/recorder_recording_list_view/basic.html +0 -20
  322. package/front_end/ui/components/docs/recorder_recording_list_view/basic.ts +0 -26
  323. package/front_end/ui/components/docs/recorder_select_button/basic.html +0 -20
  324. package/front_end/ui/components/docs/recorder_select_button/basic.ts +0 -81
  325. package/front_end/ui/components/docs/recorder_split_view/basic.html +0 -17
  326. package/front_end/ui/components/docs/recorder_split_view/basic.ts +0 -22
  327. package/front_end/ui/components/docs/request_link_icon/basic.html +0 -31
  328. package/front_end/ui/components/docs/request_link_icon/basic.ts +0 -21
  329. package/front_end/ui/components/docs/slider/basic.ts +0 -62
  330. package/front_end/ui/components/docs/style_property_editor/flex.html +0 -21
  331. package/front_end/ui/components/docs/style_property_editor/flex.ts +0 -52
  332. package/front_end/ui/components/docs/style_property_editor/grid.html +0 -22
  333. package/front_end/ui/components/docs/style_property_editor/grid.ts +0 -50
  334. package/front_end/ui/components/docs/style_property_editor/masonry.html +0 -21
  335. package/front_end/ui/components/docs/style_property_editor/masonry.ts +0 -50
  336. package/front_end/ui/components/docs/survey_link/basic.html +0 -20
  337. package/front_end/ui/components/docs/survey_link/basic.ts +0 -28
  338. package/front_end/ui/components/docs/switch/basic.ts +0 -51
  339. package/front_end/ui/components/docs/tree_outline/basic.html +0 -33
  340. package/front_end/ui/components/docs/tree_outline/basic.ts +0 -38
  341. package/front_end/ui/components/docs/tree_outline/custom-renderers.html +0 -32
  342. package/front_end/ui/components/docs/tree_outline/custom-renderers.ts +0 -61
  343. package/front_end/ui/components/docs/tree_outline/lazy-children.html +0 -32
  344. package/front_end/ui/components/docs/tree_outline/lazy-children.ts +0 -91
  345. package/front_end/ui/components/docs/tree_outline/sample-data.ts +0 -67
  346. package/front_end/ui/components/helpers/directives.ts +0 -38
  347. /package/front_end/entrypoints/node_app/{nodeConnectionsPanel.css → app/nodeConnectionsPanel.css} +0 -0
@@ -39,10 +39,8 @@ export class Target extends ProtocolClient.InspectorBackend.TargetBase {
39
39
  constructor(
40
40
  targetManager: TargetManager, id: Protocol.Target.TargetID|'main', name: string, type: Type,
41
41
  parentTarget: Target|null, sessionId: string, suspended: boolean,
42
- connection: ProtocolClient.ConnectionTransport.ConnectionTransport|null,
43
- targetInfo?: Protocol.Target.TargetInfo) {
44
- const needsNodeJSPatching = type === Type.NODE;
45
- super(needsNodeJSPatching, parentTarget, sessionId, connection);
42
+ connection: ProtocolClient.CDPConnection.CDPConnection|null, targetInfo?: Protocol.Target.TargetInfo) {
43
+ super(parentTarget, sessionId, connection);
46
44
  this.#targetManager = targetManager;
47
45
  this.#name = name;
48
46
  this.#capabilitiesMask = 0;
@@ -151,8 +149,7 @@ export class Target extends ProtocolClient.InspectorBackend.TargetBase {
151
149
  return this.#type;
152
150
  }
153
151
 
154
- override markAsNodeJSForTest(): void {
155
- super.markAsNodeJSForTest();
152
+ markAsNodeJSForTest(): void {
156
153
  this.#type = Type.NODE;
157
154
  }
158
155
 
@@ -209,8 +209,7 @@ export class TargetManager extends Common.ObjectWrapper.ObjectWrapper<EventTypes
209
209
 
210
210
  createTarget(
211
211
  id: Protocol.Target.TargetID|'main', name: string, type: TargetType, parentTarget: Target|null,
212
- sessionId?: string, waitForDebuggerInPage?: boolean,
213
- connection?: ProtocolClient.ConnectionTransport.ConnectionTransport,
212
+ sessionId?: string, waitForDebuggerInPage?: boolean, connection?: ProtocolClient.CDPConnection.CDPConnection,
214
213
  targetInfo?: Protocol.Target.TargetInfo): Target {
215
214
  const target = new Target(
216
215
  this, id, name, type, parentTarget, sessionId || '', this.#isSuspended, connection || null, targetInfo);
@@ -2,8 +2,8 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
+ import * as ProtocolClient from '../../core/protocol_client/protocol_client.js';
5
6
  import * as Root from '../../core/root/root.js';
6
- import type * as SDK from '../../core/sdk/sdk.js';
7
7
  import * as PuppeteerService from '../../services/puppeteer/puppeteer.js';
8
8
  import * as ThirdPartyWeb from '../../third_party/third-party-web/third-party-web.js';
9
9
 
@@ -12,19 +12,12 @@ function disableLoggingForTest(): void {
12
12
  }
13
13
 
14
14
  /**
15
- * ConnectionProxy is a SDK interface, but the implementation has no knowledge it's a parallelConnection.
16
- * The CDP traffic is smuggled back and forth by the system described in LighthouseProtocolService
15
+ * WorkerConnectionTransport is a DevTools `ConnectionTransport` implementation that talks
16
+ * CDP via web worker postMessage. The system is described in LighthouseProtocolService.
17
17
  */
18
- class ConnectionProxy implements SDK.Connections.ParallelConnectionInterface {
19
- sessionId: string;
20
- onMessage: ((arg0: Object) => void)|null;
21
- onDisconnect: ((arg0: string) => void)|null;
22
-
23
- constructor(sessionId: string) {
24
- this.sessionId = sessionId;
25
- this.onMessage = null;
26
- this.onDisconnect = null;
27
- }
18
+ class WorkerConnectionTransport implements ProtocolClient.ConnectionTransport.ConnectionTransport {
19
+ onMessage: ((arg0: Object) => void)|null = null;
20
+ onDisconnect: ((arg0: string) => void)|null = null;
28
21
 
29
22
  setOnMessage(onMessage: (arg0: Object|string) => void): void {
30
23
  this.onMessage = onMessage;
@@ -34,14 +27,6 @@ class ConnectionProxy implements SDK.Connections.ParallelConnectionInterface {
34
27
  this.onDisconnect = onDisconnect;
35
28
  }
36
29
 
37
- getOnDisconnect(): (((arg0: string) => void)|null) {
38
- return this.onDisconnect;
39
- }
40
-
41
- getSessionId(): string {
42
- return this.sessionId;
43
- }
44
-
45
30
  sendRawMessage(message: string): void {
46
31
  notifyFrontendViaWorkerMessage('sendProtocolMessage', {message});
47
32
  }
@@ -53,7 +38,7 @@ class ConnectionProxy implements SDK.Connections.ParallelConnectionInterface {
53
38
  }
54
39
  }
55
40
 
56
- let cdpConnection: ConnectionProxy|undefined;
41
+ let cdpTransport: WorkerConnectionTransport|undefined;
57
42
  let endTimespan: (() => unknown)|undefined;
58
43
 
59
44
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -98,11 +83,13 @@ async function invokeLH(action: string, args: any): Promise<unknown> {
98
83
  self.thirdPartyWeb.provideThirdPartyWeb(ThirdPartyWeb.ThirdPartyWeb);
99
84
 
100
85
  const {rootTargetId, mainSessionId} = args;
101
- cdpConnection = new ConnectionProxy(mainSessionId);
86
+ cdpTransport = new WorkerConnectionTransport();
87
+ const connection = new ProtocolClient.DevToolsCDPConnection.DevToolsCDPConnection(cdpTransport);
102
88
  puppeteerHandle =
103
89
  await PuppeteerService.PuppeteerConnection.PuppeteerConnectionHelper.connectPuppeteerToConnectionViaTab({
104
- connection: cdpConnection,
105
- rootTargetId,
90
+ connection,
91
+ targetId: rootTargetId,
92
+ sessionId: mainSessionId,
106
93
  // Lighthouse can only audit normal pages.
107
94
  isPageTargetCallback: targetInfo => targetInfo.type === 'page',
108
95
  });
@@ -212,7 +199,7 @@ async function onFrontendMessage(event: MessageEvent): Promise<void> {
212
199
  break;
213
200
  }
214
201
  case 'dispatchProtocolMessage': {
215
- cdpConnection?.onMessage?.(messageFromFrontend.args.message);
202
+ cdpTransport?.onMessage?.(messageFromFrontend.args.message);
216
203
  break;
217
204
  }
218
205
  default: {
@@ -3,12 +3,12 @@
3
3
  // found in the LICENSE file.
4
4
  /* eslint-disable @devtools/no-imperative-dom-api */
5
5
 
6
- import type * as Common from '../../core/common/common.js';
7
- import * as Host from '../../core/host/host.js';
8
- import * as i18n from '../../core/i18n/i18n.js';
9
- import * as Buttons from '../../ui/components/buttons/buttons.js';
10
- import * as uiI18n from '../../ui/i18n/i18n.js';
11
- import * as UI from '../../ui/legacy/legacy.js';
6
+ import type * as Common from '../../../core/common/common.js';
7
+ import * as Host from '../../../core/host/host.js';
8
+ import * as i18n from '../../../core/i18n/i18n.js';
9
+ import * as Buttons from '../../../ui/components/buttons/buttons.js';
10
+ import * as uiI18n from '../../../ui/i18n/i18n.js';
11
+ import * as UI from '../../../ui/legacy/legacy.js';
12
12
 
13
13
  import nodeConnectionsPanelStyles from './nodeConnectionsPanel.css.js';
14
14
 
@@ -36,10 +36,10 @@ const UIStrings = {
36
36
  */
37
37
  networkAddressEgLocalhost: 'Network address (e.g. localhost:9229)',
38
38
  } as const;
39
- const str_ = i18n.i18n.registerUIStrings('entrypoints/node_app/NodeConnectionsPanel.ts', UIStrings);
39
+ const str_ = i18n.i18n.registerUIStrings('entrypoints/node_app/app/NodeConnectionsPanel.ts', UIStrings);
40
40
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
41
41
 
42
- const nodejsIconUrl = new URL('../../Images/node-stack-icon.svg', import.meta.url).toString();
42
+ const nodejsIconUrl = new URL('../../../Images/node-stack-icon.svg', import.meta.url).toString();
43
43
 
44
44
  export class NodeConnectionsPanel extends UI.Panel.Panel {
45
45
  #config!: Adb.Config;
@@ -2,15 +2,15 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import type * as Common from '../../core/common/common.js';
6
- import * as Host from '../../core/host/host.js';
7
- import * as i18n from '../../core/i18n/i18n.js';
8
- import type * as Platform from '../../core/platform/platform.js';
9
- import type * as ProtocolClient from '../../core/protocol_client/protocol_client.js';
10
- import * as SDK from '../../core/sdk/sdk.js';
11
- import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
12
- import type * as Protocol from '../../generated/protocol.js';
13
- import * as Components from '../../ui/legacy/components/utils/utils.js';
5
+ import type * as Common from '../../../core/common/common.js';
6
+ import * as Host from '../../../core/host/host.js';
7
+ import * as i18n from '../../../core/i18n/i18n.js';
8
+ import type * as Platform from '../../../core/platform/platform.js';
9
+ import * as ProtocolClient from '../../../core/protocol_client/protocol_client.js';
10
+ import * as SDK from '../../../core/sdk/sdk.js';
11
+ import type * as ProtocolProxyApi from '../../../generated/protocol-proxy-api.js';
12
+ import type * as Protocol from '../../../generated/protocol.js';
13
+ import * as Components from '../../../ui/legacy/components/utils/utils.js';
14
14
 
15
15
  const UIStrings = {
16
16
  /**
@@ -28,7 +28,7 @@ const UIStrings = {
28
28
  */
29
29
  NodejsTitleS: 'DevTools - Node.js: {PH1}',
30
30
  } as const;
31
- const str_ = i18n.i18n.registerUIStrings('entrypoints/node_app/NodeMain.ts', UIStrings);
31
+ const str_ = i18n.i18n.registerUIStrings('entrypoints/node_app/app/NodeMain.ts', UIStrings);
32
32
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
33
33
  let nodeMainImplInstance: NodeMainImpl;
34
34
 
@@ -119,7 +119,8 @@ export class NodeChildTargetManager extends SDK.SDKModel.SDKModel<void> implemen
119
119
  const connection = new NodeConnection(this.#targetAgent, sessionId);
120
120
  this.#childConnections.set(sessionId, connection);
121
121
  target = this.#targetManager.createTarget(
122
- targetInfo.targetId, name, SDK.Target.Type.NODE, this.#parentTarget, undefined, undefined, connection);
122
+ targetInfo.targetId, name, SDK.Target.Type.NODE, null, undefined, undefined,
123
+ new ProtocolClient.DevToolsCDPConnection.DevToolsCDPConnection(connection));
123
124
  }
124
125
  this.#childTargets.set(sessionId, target);
125
126
  void target.runtimeAgent().invoke_runIfWaitingForDebugger();
@@ -0,0 +1,6 @@
1
+ // Copyright 2025 The Chromium Authors
2
+ // Use of this source code is governed by a BSD-style license that can be
3
+ // found in the LICENSE file.
4
+
5
+ export * as NodeConnectionsPanel from './NodeConnectionsPanel.js';
6
+ export * as NodeMain from './NodeMain.js';
@@ -13,8 +13,10 @@ import type * as Sources from '../../panels/sources/sources.js';
13
13
  import * as UI from '../../ui/legacy/legacy.js';
14
14
  import * as Main from '../main/main.js';
15
15
 
16
- import {NodeConnectionsPanel} from './NodeConnectionsPanel.js'; // eslint-disable-line @devtools/es-modules-import
17
- import {NodeMainImpl} from './NodeMain.js'; // eslint-disable-line @devtools/es-modules-import
16
+ import * as App from './app/app.js';
17
+
18
+ const {NodeConnectionsPanel} = App.NodeConnectionsPanel;
19
+ const {NodeMainImpl} = App.NodeMain;
18
20
 
19
21
  const UIStrings = {
20
22
  /**
@@ -230,6 +230,10 @@ export const UIStrings = {
230
230
  * @description Warning displayed to developers. It is shown when the `XMLHttpRequest` API is used in a way that it slows down the page load of the next page. The `main thread` refers to an operating systems thread used to run most of the processing of HTML documents, so please use a consistent wording.
231
231
  */
232
232
  XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload: "Synchronous `XMLHttpRequest` on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.",
233
+ /**
234
+ * @description Warning displayed to developers that they are using either the XSLTProcessor API, or XSLT processing instructions, both of which have been deprecated and are scheduled to be removed.
235
+ */
236
+ XSLT: "XSLTProcessor and XSLT Processing Instructions have been deprecated by all browsers. These features will be removed from this browser soon.",
233
237
  } as const;
234
238
 
235
239
  export interface DeprecationDescriptor {
@@ -350,5 +354,9 @@ export const DEPRECATIONS_METADATA: Partial<Record<string, DeprecationDescriptor
350
354
  },
351
355
  "XHRJSONEncodingDetection": {
352
356
  "milestone": 93
357
+ },
358
+ "XSLT": {
359
+ "chromeStatusFeature": 4709671889534976,
360
+ "milestone": 143
353
361
  }
354
362
  };
@@ -3,41 +3,23 @@
3
3
  // found in the LICENSE file.
4
4
  // File is generated by scripts/build/code_generator_frontend.py
5
5
 
6
- /**
7
- * @typedef {{
8
- * registerCommand: function(
9
- * string&any,
10
- * !Array.<!{
11
- * name: string,
12
- * type: string,
13
- * optional: boolean,
14
- * description: string,
15
- * typeRef: string | null
16
- * }>,
17
- * !Array.<string>,
18
- * string
19
- * ): void,
20
- * registerEnum: function(string&any, !Object<string, string>): void,
21
- * registerEvent: function(string&any, !Array<string>): void,
22
- * registerType: function(
23
- * string&any,
24
- * !Array.<!{
25
- * name: string,
26
- * type: string,
27
- * optional: boolean,
28
- * description: string,
29
- * typeRef: string | null
30
- * }>
31
- * ): void,
32
- * }}
33
- */
34
- // @ts-expect-error typedef
35
- export let InspectorBackendAPI;
36
6
 
37
- /**
38
- * @param {!InspectorBackendAPI} inspectorBackend
39
- */
40
- export function registerCommands(inspectorBackend) {
7
+ export interface CommandParameter {
8
+ name: string;
9
+ type: string;
10
+ optional: boolean;
11
+ description: string;
12
+ typeRef: string|null;
13
+ }
14
+
15
+ export interface InspectorBackendAPI {
16
+ registerCommand(command: string, parameters: CommandParameter[], replayArgs: string[], description: string): void;
17
+ registerEnum(type: string, values: Record<string, string>): void;
18
+ registerEvent(event: string, params: string[]): void;
19
+ registerType(type: string, parameters: CommandParameter[]): void;
20
+ }
21
+
22
+ export function registerCommands(inspectorBackend: InspectorBackendAPI): void {
41
23
 
42
24
 
43
25
  // Accessibility.
@@ -354,7 +336,7 @@ inspectorBackend.registerCommand("Cast.stopCasting", [{"name": "sinkName", "type
354
336
  inspectorBackend.registerType("Cast.Sink", [{"name": "name", "type": "string", "optional": false, "description": "", "typeRef": null}, {"name": "id", "type": "string", "optional": false, "description": "", "typeRef": null}, {"name": "session", "type": "string", "optional": true, "description": "Text describing the current session. Present only if there is an active session on the sink.", "typeRef": null}]);
355
337
 
356
338
  // DOM.
357
- inspectorBackend.registerEnum("DOM.PseudoType", {FirstLine: "first-line", FirstLetter: "first-letter", Checkmark: "checkmark", Before: "before", After: "after", PickerIcon: "picker-icon", InterestHint: "interest-hint", Marker: "marker", Backdrop: "backdrop", Column: "column", Selection: "selection", SearchText: "search-text", TargetText: "target-text", SpellingError: "spelling-error", GrammarError: "grammar-error", Highlight: "highlight", FirstLineInherited: "first-line-inherited", ScrollMarker: "scroll-marker", ScrollMarkerGroup: "scroll-marker-group", ScrollButton: "scroll-button", Scrollbar: "scrollbar", ScrollbarThumb: "scrollbar-thumb", ScrollbarButton: "scrollbar-button", ScrollbarTrack: "scrollbar-track", ScrollbarTrackPiece: "scrollbar-track-piece", ScrollbarCorner: "scrollbar-corner", Resizer: "resizer", InputListButton: "input-list-button", ViewTransition: "view-transition", ViewTransitionGroup: "view-transition-group", ViewTransitionImagePair: "view-transition-image-pair", ViewTransitionGroupChildren: "view-transition-group-children", ViewTransitionOld: "view-transition-old", ViewTransitionNew: "view-transition-new", Placeholder: "placeholder", FileSelectorButton: "file-selector-button", DetailsContent: "details-content", Picker: "picker", PermissionIcon: "permission-icon"});
339
+ inspectorBackend.registerEnum("DOM.PseudoType", {FirstLine: "first-line", FirstLetter: "first-letter", Checkmark: "checkmark", Before: "before", After: "after", PickerIcon: "picker-icon", InterestHint: "interest-hint", Marker: "marker", Backdrop: "backdrop", Column: "column", Selection: "selection", SearchText: "search-text", TargetText: "target-text", SpellingError: "spelling-error", GrammarError: "grammar-error", Highlight: "highlight", FirstLineInherited: "first-line-inherited", ScrollMarker: "scroll-marker", ScrollMarkerGroup: "scroll-marker-group", ScrollButton: "scroll-button", Scrollbar: "scrollbar", ScrollbarThumb: "scrollbar-thumb", ScrollbarButton: "scrollbar-button", ScrollbarTrack: "scrollbar-track", ScrollbarTrackPiece: "scrollbar-track-piece", ScrollbarCorner: "scrollbar-corner", Resizer: "resizer", InputListButton: "input-list-button", ViewTransition: "view-transition", ViewTransitionGroup: "view-transition-group", ViewTransitionImagePair: "view-transition-image-pair", ViewTransitionGroupChildren: "view-transition-group-children", ViewTransitionOld: "view-transition-old", ViewTransitionNew: "view-transition-new", Placeholder: "placeholder", FileSelectorButton: "file-selector-button", DetailsContent: "details-content", Picker: "picker", PermissionIcon: "permission-icon", OverscrollAreaParent: "overscroll-area-parent", OverscrollClientArea: "overscroll-client-area"});
358
340
  inspectorBackend.registerEnum("DOM.ShadowRootType", {UserAgent: "user-agent", Open: "open", Closed: "closed"});
359
341
  inspectorBackend.registerEnum("DOM.CompatibilityMode", {QuirksMode: "QuirksMode", LimitedQuirksMode: "LimitedQuirksMode", NoQuirksMode: "NoQuirksMode"});
360
342
  inspectorBackend.registerEnum("DOM.PhysicalAxes", {Horizontal: "Horizontal", Vertical: "Vertical", Both: "Both"});
@@ -795,7 +777,7 @@ inspectorBackend.registerEnum("Network.InterceptionStage", {Request: "Request",
795
777
  inspectorBackend.registerEnum("Network.SignedExchangeErrorField", {SignatureSig: "signatureSig", SignatureIntegrity: "signatureIntegrity", SignatureCertUrl: "signatureCertUrl", SignatureCertSha256: "signatureCertSha256", SignatureValidityUrl: "signatureValidityUrl", SignatureTimestamps: "signatureTimestamps"});
796
778
  inspectorBackend.registerEnum("Network.ContentEncoding", {Deflate: "deflate", Gzip: "gzip", Br: "br", Zstd: "zstd"});
797
779
  inspectorBackend.registerEnum("Network.DirectSocketDnsQueryType", {Ipv4: "ipv4", Ipv6: "ipv6"});
798
- inspectorBackend.registerEnum("Network.PrivateNetworkRequestPolicy", {Allow: "Allow", BlockFromInsecureToMorePrivate: "BlockFromInsecureToMorePrivate", WarnFromInsecureToMorePrivate: "WarnFromInsecureToMorePrivate", PreflightBlock: "PreflightBlock", PreflightWarn: "PreflightWarn", PermissionBlock: "PermissionBlock", PermissionWarn: "PermissionWarn"});
780
+ inspectorBackend.registerEnum("Network.PrivateNetworkRequestPolicy", {Allow: "Allow", BlockFromInsecureToMorePrivate: "BlockFromInsecureToMorePrivate", WarnFromInsecureToMorePrivate: "WarnFromInsecureToMorePrivate", PermissionBlock: "PermissionBlock", PermissionWarn: "PermissionWarn"});
799
781
  inspectorBackend.registerEnum("Network.IPAddressSpace", {Loopback: "Loopback", Local: "Local", Public: "Public", Unknown: "Unknown"});
800
782
  inspectorBackend.registerEnum("Network.CrossOriginOpenerPolicyValue", {SameOrigin: "SameOrigin", SameOriginAllowPopups: "SameOriginAllowPopups", RestrictProperties: "RestrictProperties", UnsafeNone: "UnsafeNone", SameOriginPlusCoep: "SameOriginPlusCoep", RestrictPropertiesPlusCoep: "RestrictPropertiesPlusCoep", NoopenerAllowPopups: "NoopenerAllowPopups"});
801
783
  inspectorBackend.registerEnum("Network.CrossOriginEmbedderPolicyValue", {None: "None", Credentialless: "Credentialless", RequireCorp: "RequireCorp"});
@@ -419,7 +419,10 @@ export const generatedProperties = [
419
419
  "column-height",
420
420
  "column-rule-break",
421
421
  "column-rule-color",
422
- "column-rule-outset",
422
+ "column-rule-edge-end-outset",
423
+ "column-rule-edge-start-outset",
424
+ "column-rule-interior-end-outset",
425
+ "column-rule-interior-start-outset",
423
426
  "column-rule-style",
424
427
  "column-rule-visibility-items",
425
428
  "column-rule-width",
@@ -639,7 +642,10 @@ export const generatedProperties = [
639
642
  "row-gap",
640
643
  "row-rule-break",
641
644
  "row-rule-color",
642
- "row-rule-outset",
645
+ "row-rule-edge-end-outset",
646
+ "row-rule-edge-start-outset",
647
+ "row-rule-interior-end-outset",
648
+ "row-rule-interior-start-outset",
643
649
  "row-rule-style",
644
650
  "row-rule-visibility-items",
645
651
  "row-rule-width",
@@ -1723,6 +1729,27 @@ export const generatedProperties = [
1723
1729
  },
1724
1730
  {
1725
1731
  "inherited": false,
1732
+ "name": "column-rule-edge-end-outset"
1733
+ },
1734
+ {
1735
+ "inherited": false,
1736
+ "name": "column-rule-edge-start-outset"
1737
+ },
1738
+ {
1739
+ "inherited": false,
1740
+ "name": "column-rule-interior-end-outset"
1741
+ },
1742
+ {
1743
+ "inherited": false,
1744
+ "name": "column-rule-interior-start-outset"
1745
+ },
1746
+ {
1747
+ "longhands": [
1748
+ "column-rule-edge-start-outset",
1749
+ "column-rule-edge-end-outset",
1750
+ "column-rule-interior-start-outset",
1751
+ "column-rule-interior-end-outset"
1752
+ ],
1726
1753
  "name": "column-rule-outset"
1727
1754
  },
1728
1755
  {
@@ -3711,6 +3738,27 @@ export const generatedProperties = [
3711
3738
  },
3712
3739
  {
3713
3740
  "inherited": false,
3741
+ "name": "row-rule-edge-end-outset"
3742
+ },
3743
+ {
3744
+ "inherited": false,
3745
+ "name": "row-rule-edge-start-outset"
3746
+ },
3747
+ {
3748
+ "inherited": false,
3749
+ "name": "row-rule-interior-end-outset"
3750
+ },
3751
+ {
3752
+ "inherited": false,
3753
+ "name": "row-rule-interior-start-outset"
3754
+ },
3755
+ {
3756
+ "longhands": [
3757
+ "row-rule-edge-start-outset",
3758
+ "row-rule-edge-end-outset",
3759
+ "row-rule-interior-start-outset",
3760
+ "row-rule-interior-end-outset"
3761
+ ],
3714
3762
  "name": "row-rule-outset"
3715
3763
  },
3716
3764
  {
@@ -3797,13 +3845,6 @@ export const generatedProperties = [
3797
3845
  ],
3798
3846
  "name": "rule-color"
3799
3847
  },
3800
- {
3801
- "longhands": [
3802
- "row-rule-outset",
3803
- "column-rule-outset"
3804
- ],
3805
- "name": "rule-outset"
3806
- },
3807
3848
  {
3808
3849
  "longhands": [
3809
3850
  "column-rule-style",
@@ -4440,6 +4440,8 @@ export namespace DOM {
4440
4440
  DetailsContent = 'details-content',
4441
4441
  Picker = 'picker',
4442
4442
  PermissionIcon = 'permission-icon',
4443
+ OverscrollAreaParent = 'overscroll-area-parent',
4444
+ OverscrollClientArea = 'overscroll-client-area',
4443
4445
  }
4444
4446
 
4445
4447
  /**
@@ -11124,8 +11126,6 @@ export namespace Network {
11124
11126
  Allow = 'Allow',
11125
11127
  BlockFromInsecureToMorePrivate = 'BlockFromInsecureToMorePrivate',
11126
11128
  WarnFromInsecureToMorePrivate = 'WarnFromInsecureToMorePrivate',
11127
- PreflightBlock = 'PreflightBlock',
11128
- PreflightWarn = 'PreflightWarn',
11129
11129
  PermissionBlock = 'PermissionBlock',
11130
11130
  PermissionWarn = 'PermissionWarn',
11131
11131
  }
@@ -5,16 +5,25 @@
5
5
  import * as SDK from '../../core/sdk/sdk.js';
6
6
  import * as Protocol from '../../generated/protocol.js';
7
7
 
8
+ import {PAGE_EXPOSED_FUNCTIONS} from './injected.js';
9
+
8
10
  export function formatError(message: string): string {
9
11
  return `Error: ${message}`;
10
12
  }
11
13
  export class SideEffectError extends Error {}
12
14
 
15
+ export interface GetErrorStackOutput {
16
+ message: string;
17
+ stack?: string;
18
+ }
19
+
20
+ /* istanbul ignore next */
21
+ export function getErrorStackOnThePage(this: Error): GetErrorStackOutput {
22
+ return {stack: this.stack, message: this.message};
23
+ }
24
+
13
25
  /* istanbul ignore next */
14
26
  export function stringifyObjectOnThePage(this: unknown): string {
15
- if (this instanceof Error) {
16
- return `Error: ${this.message}`;
17
- }
18
27
  const seenBefore = new WeakMap();
19
28
  return JSON.stringify(this, function replacer(this: unknown, key: string, value: unknown) {
20
29
  if (typeof value === 'object' && value !== null) {
@@ -44,7 +53,8 @@ export function stringifyObjectOnThePage(this: unknown): string {
44
53
  });
45
54
  }
46
55
 
47
- export async function stringifyRemoteObject(object: SDK.RemoteObject.RemoteObject): Promise<string> {
56
+ export async function stringifyRemoteObject(
57
+ object: SDK.RemoteObject.RemoteObject, functionDeclaration: string): Promise<string> {
48
58
  switch (object.type) {
49
59
  case Protocol.Runtime.RemoteObjectType.String:
50
60
  return `'${object.value}'`;
@@ -59,7 +69,17 @@ export async function stringifyRemoteObject(object: SDK.RemoteObject.RemoteObjec
59
69
  case Protocol.Runtime.RemoteObjectType.Function:
60
70
  return `${object.description}`;
61
71
  case Protocol.Runtime.RemoteObjectType.Object: {
72
+ if (object.subtype === 'error') {
73
+ const res = await object.callFunctionJSON(getErrorStackOnThePage, []);
74
+
75
+ if (!res) {
76
+ throw new Error('Could not stringify the object' + object);
77
+ }
78
+
79
+ return EvaluateAction.stringifyError(res, functionDeclaration);
80
+ }
62
81
  const res = await object.callFunction(stringifyObjectOnThePage);
82
+
63
83
  if (!res.object || res.object.type !== Protocol.Runtime.RemoteObjectType.String) {
64
84
  throw new Error('Could not stringify the object' + object);
65
85
  }
@@ -110,9 +130,72 @@ export class EvaluateAction {
110
130
  return formatError(exceptionDescription ?? 'JS exception');
111
131
  }
112
132
 
113
- return await stringifyRemoteObject(response.object);
133
+ return await stringifyRemoteObject(response.object, functionDeclaration);
114
134
  } finally {
115
135
  executionContext.runtimeModel.releaseEvaluationResult(response);
116
136
  }
117
137
  }
138
+
139
+ static getExecutedLineFromStack(stack: string, pageExposedFunctions: string[]): number|null {
140
+ const lines = stack.split('\n');
141
+
142
+ const stackLines = lines.map(curr => curr.trim()).filter(trimmedLine => {
143
+ return trimmedLine.startsWith('at');
144
+ });
145
+
146
+ const selectedStack = stackLines.find(stackLine => {
147
+ const splittedStackLine = stackLine.split(' ');
148
+
149
+ if (splittedStackLine.length < 2) {
150
+ return false;
151
+ }
152
+
153
+ const signature = splittedStackLine[1] === 'async' ?
154
+ splittedStackLine[2] : // if the stack line contains async the function name is the next element
155
+ splittedStackLine[1];
156
+
157
+ const lastDotIndex = signature.lastIndexOf('.');
158
+ const functionName = lastDotIndex !== -1 ? signature.substring(lastDotIndex + 1) : signature;
159
+
160
+ return !pageExposedFunctions.includes(functionName);
161
+ });
162
+
163
+ if (!selectedStack) {
164
+ return null;
165
+ }
166
+
167
+ const frameLocationRegex = /:(\d+)(?::\d+)?\)?$/;
168
+ const match = selectedStack.match(frameLocationRegex);
169
+
170
+ if (!match?.[1]) {
171
+ return null;
172
+ }
173
+
174
+ const lineNum = parseInt(match[1], 10);
175
+ if (isNaN(lineNum)) {
176
+ return null;
177
+ }
178
+
179
+ return lineNum - 1;
180
+ }
181
+
182
+ static stringifyError(result: GetErrorStackOutput, functionDeclaration: string): string {
183
+ if (!result.stack) {
184
+ return `Error: ${result.message}`;
185
+ }
186
+
187
+ const lineNum = EvaluateAction.getExecutedLineFromStack(result.stack, PAGE_EXPOSED_FUNCTIONS);
188
+ if (!lineNum) {
189
+ return `Error: ${result.message}`;
190
+ }
191
+
192
+ const functionLines = functionDeclaration.split('\n');
193
+
194
+ const errorLine = functionLines[lineNum];
195
+ if (!errorLine) {
196
+ return `Error: ${result.message}`;
197
+ }
198
+
199
+ return `Error: executing the line "${errorLine.trim()}" failed with the following error:\n${result.message}`;
200
+ }
118
201
  }
@@ -24,6 +24,7 @@ export interface FreestyleCallbackArgs {
24
24
  className: `${typeof AI_ASSISTANCE_CSS_CLASS_NAME}-${number}`;
25
25
  styles: Record<string, string>;
26
26
  element: Node;
27
+ error: Error;
27
28
  }
28
29
 
29
30
  interface FreestyleCallbackData {
@@ -31,6 +32,7 @@ interface FreestyleCallbackData {
31
32
  element: Node;
32
33
  resolve(value: string): void;
33
34
  reject(err?: Error): void;
35
+ error: Error;
34
36
  }
35
37
  interface FreestylerBinding {
36
38
  (args: FreestyleCallbackArgs): Promise<string>;
@@ -58,6 +60,7 @@ function freestylerBindingFunc(bindingName: string): void {
58
60
  element: args.element,
59
61
  resolve,
60
62
  reject,
63
+ error: args.error,
61
64
  });
62
65
  // @ts-expect-error this is binding added though CDP
63
66
  globalThis[bindingName](String(freestyler.id));
@@ -72,11 +75,16 @@ function freestylerBindingFunc(bindingName: string): void {
72
75
  freestyler.getArgs = (callbackId: number) => {
73
76
  return freestyler.callbacks.get(callbackId)?.args;
74
77
  };
75
- freestyler.respond = (callbackId: number, styleChangesOrError: string) => {
78
+ freestyler.respond = (callbackId: number, styleChangesOrError: string|Error) => {
76
79
  if (typeof styleChangesOrError === 'string') {
77
80
  freestyler.callbacks.get(callbackId)?.resolve(styleChangesOrError);
78
81
  } else {
79
- freestyler.callbacks.get(callbackId)?.reject(styleChangesOrError);
82
+ const callback = freestyler.callbacks.get(callbackId);
83
+
84
+ if (callback) {
85
+ callback.error.message = styleChangesOrError.message;
86
+ callback.reject(callback?.error);
87
+ }
80
88
  }
81
89
 
82
90
  freestyler.callbacks.delete(callbackId);
@@ -87,6 +95,8 @@ function freestylerBindingFunc(bindingName: string): void {
87
95
 
88
96
  export const freestylerBinding = `(${String(freestylerBindingFunc)})('${FREESTYLER_BINDING_NAME}')`;
89
97
 
98
+ export const PAGE_EXPOSED_FUNCTIONS = ['setElementStyles'];
99
+
90
100
  /**
91
101
  * Please see fileoverview
92
102
  */
@@ -134,12 +144,15 @@ function setupSetElementStyles(prefix: typeof AI_ASSISTANCE_CSS_CLASS_NAME): voi
134
144
  el.style[key] = '';
135
145
  }
136
146
 
147
+ const bindingError = new Error();
148
+
137
149
  const result = await global.freestyler({
138
150
  method: 'setElementStyles',
139
151
  selector,
140
152
  className,
141
153
  styles,
142
154
  element: el,
155
+ error: bindingError,
143
156
  });
144
157
 
145
158
  const rootNode = el.getRootNode();
@@ -2,4 +2,4 @@
2
2
 
3
3
  [`web-vitals`](https://github.com/GoogleChrome/web-vitals-extension) is a Google-maintained library that measures CWV metrics using their canonical definition. We use it to ensure we are using consistent implementations for measuring CWV across Google. It can also measure performance metrics of the current page *after* the they happen (See [`PerformanceObserver` buffered setting](https://developer.mozilla.org/en-US/docs/Web/API/PerformanceObserver/observe#buffered)). See [go/cpq:rpp-metric-observations](http://go/cpq:rpp-metric-observations) for more information.
4
4
 
5
- The web-vitals library needs to be run in the target page (although it can be used in an isolated execution context). We therefore need to create a JS binary that can be injected via `Page.evaluate`/`Page.addScriptToEvaluateOnNewDocument`. See `BUILD.gn` and `rollup.config.js` for how we bundle the JS binary.
5
+ The web-vitals library needs to be run in the target page (although it can be used in an isolated execution context). We therefore need to create a JS binary that can be injected via `Page.evaluate`/`Page.addScriptToEvaluateOnNewDocument`. See `BUILD.gn` and `rollup.config.mjs` for how we bundle the JS binary.
@@ -432,7 +432,7 @@ const UIStrings = {
432
432
  /**
433
433
  * @description Event category in the Performance panel for time spent to perform Garbage Collection for C++: https://chromium.googlesource.com/v8/v8/+/main/include/cppgc/README.md
434
434
  */
435
- cppGc: 'CPP GC',
435
+ cppGc: 'C++ GC',
436
436
  /**
437
437
  * @description Event category in the Performance panel for time spent to perform encryption
438
438
  */