chrome-devtools-frontend 1.0.1614363 → 1.0.1616061

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 (364) hide show
  1. package/docs/contributing/infrastructure.md +0 -1
  2. package/front_end/core/common/MapWithDefault.ts +2 -2
  3. package/front_end/core/common/Object.ts +9 -6
  4. package/front_end/entrypoints/greendev_floaty/floaty.css +3 -0
  5. package/front_end/generated/InspectorBackendCommands.ts +6 -3
  6. package/front_end/generated/SupportedCSSProperties.js +4 -0
  7. package/front_end/generated/protocol-mapping.d.ts +21 -0
  8. package/front_end/generated/protocol-proxy-api.d.ts +15 -0
  9. package/front_end/generated/protocol.ts +39 -0
  10. package/front_end/models/ai_assistance/agents/AiAgent.ts +5 -4
  11. package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +7 -1
  12. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +87 -20
  13. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +32 -0
  14. package/front_end/models/bindings/SymbolizedError.ts +20 -0
  15. package/front_end/models/bindings/bindings.ts +2 -0
  16. package/front_end/models/issues_manager/IssuesManager.ts +4 -0
  17. package/front_end/models/stack_trace/DetailedErrorStackParser.ts +19 -0
  18. package/front_end/models/stack_trace/StackTraceModel.ts +39 -0
  19. package/front_end/panels/ai_assistance/components/AccessibilityAgentMarkdownRenderer.ts +55 -14
  20. package/front_end/panels/ai_assistance/components/ChatMessage.ts +28 -23
  21. package/front_end/panels/ai_assistance/components/chatMessage.css +1 -1
  22. package/front_end/panels/application/WebMCPView.ts +21 -1
  23. package/front_end/panels/application/webMCPView.css +4 -1
  24. package/front_end/panels/console/ConsoleViewMessage.ts +8 -2
  25. package/front_end/panels/console/consoleView.css +4 -0
  26. package/front_end/panels/elements/PropertiesWidget.ts +8 -8
  27. package/front_end/panels/protocol_monitor/JSONEditor.ts +1 -1
  28. package/front_end/panels/recorder/models/RecordingPlayer.ts +1 -1
  29. package/front_end/services/puppeteer/PuppeteerConnection.ts +1 -1
  30. package/front_end/third_party/chromium/README.chromium +1 -1
  31. package/front_end/third_party/puppeteer/README.chromium +2 -2
  32. package/front_end/third_party/puppeteer/package/README.md +2 -0
  33. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +12 -0
  34. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
  35. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
  36. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Extension.d.ts +74 -0
  37. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Extension.d.ts.map +1 -0
  38. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Extension.js +68 -0
  39. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Extension.js.map +1 -0
  40. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.d.ts +8 -0
  41. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.d.ts.map +1 -1
  42. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Issue.d.ts +22 -0
  43. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Issue.d.ts.map +1 -0
  44. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Issue.js +8 -0
  45. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Issue.js.map +1 -0
  46. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +35 -0
  47. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
  48. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
  49. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Realm.d.ts +106 -4
  50. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Realm.d.ts.map +1 -1
  51. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Realm.js +29 -1
  52. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Realm.js.map +1 -1
  53. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/WebWorker.d.ts +24 -2
  54. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/WebWorker.d.ts.map +1 -1
  55. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/WebWorker.js +15 -1
  56. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/WebWorker.js.map +1 -1
  57. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.d.ts +2 -0
  58. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.d.ts.map +1 -1
  59. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.js +1 -0
  60. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.js.map +1 -1
  61. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.d.ts +4 -0
  62. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.d.ts.map +1 -1
  63. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.js +8 -0
  64. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.js.map +1 -1
  65. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.d.ts.map +1 -1
  66. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.js +2 -1
  67. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserConnector.js.map +1 -1
  68. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.d.ts +5 -0
  69. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.d.ts.map +1 -1
  70. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.js +6 -0
  71. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BrowserContext.js.map +1 -1
  72. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts +2 -0
  73. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts.map +1 -1
  74. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js +9 -47
  75. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js.map +1 -1
  76. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts.map +1 -1
  77. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js +0 -1
  78. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js.map +1 -1
  79. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +8 -1
  80. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
  81. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +14 -1
  82. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
  83. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Realm.d.ts +4 -0
  84. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Realm.d.ts.map +1 -1
  85. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Realm.js +21 -0
  86. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Realm.js.map +1 -1
  87. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Target.d.ts.map +1 -1
  88. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Target.js +2 -2
  89. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Target.js.map +1 -1
  90. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.d.ts +2 -0
  91. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.d.ts.map +1 -1
  92. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.js +18 -0
  93. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.js.map +1 -1
  94. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.d.ts +28 -0
  95. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.d.ts.map +1 -1
  96. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.js +67 -0
  97. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.js.map +1 -1
  98. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +9 -2
  99. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
  100. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +56 -5
  101. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
  102. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  103. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js +2 -2
  104. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BrowserConnector.js.map +1 -1
  105. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpIssue.d.ts +17 -0
  106. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpIssue.d.ts.map +1 -0
  107. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpIssue.js +27 -0
  108. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpIssue.js.map +1 -0
  109. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Extension.d.ts +16 -0
  110. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Extension.d.ts.map +1 -0
  111. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Extension.js +79 -0
  112. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Extension.js.map +1 -0
  113. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Frame.d.ts +10 -0
  114. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Frame.d.ts.map +1 -1
  115. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Frame.js +26 -15
  116. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Frame.js.map +1 -1
  117. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.d.ts +1 -1
  118. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.d.ts.map +1 -1
  119. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.js +38 -0
  120. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.js.map +1 -1
  121. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/IsolatedWorld.d.ts +9 -3
  122. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/IsolatedWorld.d.ts.map +1 -1
  123. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/IsolatedWorld.js +31 -1
  124. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/IsolatedWorld.js.map +1 -1
  125. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +6 -0
  126. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
  127. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +49 -35
  128. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
  129. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Target.d.ts +3 -1
  130. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Target.d.ts.map +1 -1
  131. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Target.js +16 -7
  132. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Target.js.map +1 -1
  133. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts +2 -0
  134. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  135. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js +9 -1
  136. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js.map +1 -1
  137. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.d.ts +218 -0
  138. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.d.ts.map +1 -0
  139. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.js +288 -0
  140. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebMCP.js.map +1 -0
  141. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.d.ts +4 -7
  142. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.d.ts.map +1 -1
  143. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.js +28 -3
  144. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.js.map +1 -1
  145. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.d.ts +1 -0
  146. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.d.ts.map +1 -1
  147. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.js +1 -0
  148. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.js.map +1 -1
  149. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/utils.d.ts +9 -0
  150. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/utils.d.ts.map +1 -1
  151. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/utils.js +36 -0
  152. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/utils.js.map +1 -1
  153. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts +7 -0
  154. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  155. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/types.d.ts +0 -11
  156. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/types.d.ts.map +1 -1
  157. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +3 -3
  158. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts +2 -0
  159. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  160. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +5 -2
  161. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
  162. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  163. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js +0 -1
  164. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js.map +1 -1
  165. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
  166. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
  167. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js.map +1 -1
  168. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
  169. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.js +1 -1
  170. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.js.map +1 -1
  171. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.d.ts +1 -1
  172. package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.js +1 -1
  173. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +7851 -6616
  174. package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +1017 -305
  175. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +12 -0
  176. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
  177. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
  178. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Extension.d.ts +74 -0
  179. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Extension.d.ts.map +1 -0
  180. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Extension.js +64 -0
  181. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Extension.js.map +1 -0
  182. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.d.ts +8 -0
  183. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.d.ts.map +1 -1
  184. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts +1 -1
  185. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts.map +1 -1
  186. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Issue.d.ts +22 -0
  187. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Issue.d.ts.map +1 -0
  188. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Issue.js +7 -0
  189. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Issue.js.map +1 -0
  190. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +35 -0
  191. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
  192. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
  193. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Realm.d.ts +106 -4
  194. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Realm.d.ts.map +1 -1
  195. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Realm.js +29 -1
  196. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Realm.js.map +1 -1
  197. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/WebWorker.d.ts +24 -2
  198. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/WebWorker.d.ts.map +1 -1
  199. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/WebWorker.js +14 -0
  200. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/WebWorker.js.map +1 -1
  201. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.d.ts +2 -0
  202. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.d.ts.map +1 -1
  203. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.js +1 -0
  204. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.js.map +1 -1
  205. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.d.ts +4 -0
  206. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.d.ts.map +1 -1
  207. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.js +8 -0
  208. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.js.map +1 -1
  209. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.d.ts.map +1 -1
  210. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.js +2 -1
  211. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserConnector.js.map +1 -1
  212. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.d.ts +5 -0
  213. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.d.ts.map +1 -1
  214. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.js +6 -0
  215. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BrowserContext.js.map +1 -1
  216. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts +2 -0
  217. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts.map +1 -1
  218. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js +8 -46
  219. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js.map +1 -1
  220. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts.map +1 -1
  221. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js +0 -1
  222. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js.map +1 -1
  223. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +8 -1
  224. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
  225. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +14 -1
  226. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
  227. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Realm.d.ts +4 -0
  228. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Realm.d.ts.map +1 -1
  229. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Realm.js +22 -1
  230. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Realm.js.map +1 -1
  231. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Target.d.ts.map +1 -1
  232. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Target.js +2 -2
  233. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Target.js.map +1 -1
  234. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Realm.d.ts +3 -1
  235. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Realm.d.ts.map +1 -1
  236. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Realm.js +18 -0
  237. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Realm.js.map +1 -1
  238. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.d.ts +28 -0
  239. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.d.ts.map +1 -1
  240. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.js +62 -0
  241. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.js.map +1 -1
  242. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +9 -2
  243. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
  244. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +56 -5
  245. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
  246. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.d.ts.map +1 -1
  247. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js +2 -2
  248. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BrowserConnector.js.map +1 -1
  249. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpIssue.d.ts +17 -0
  250. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpIssue.d.ts.map +1 -0
  251. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpIssue.js +23 -0
  252. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpIssue.js.map +1 -0
  253. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Extension.d.ts +16 -0
  254. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Extension.d.ts.map +1 -0
  255. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Extension.js +75 -0
  256. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Extension.js.map +1 -0
  257. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Frame.d.ts +10 -0
  258. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Frame.d.ts.map +1 -1
  259. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Frame.js +26 -15
  260. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Frame.js.map +1 -1
  261. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.d.ts +1 -1
  262. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.d.ts.map +1 -1
  263. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.js +38 -0
  264. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.js.map +1 -1
  265. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/IsolatedWorld.d.ts +9 -3
  266. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/IsolatedWorld.d.ts.map +1 -1
  267. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/IsolatedWorld.js +31 -1
  268. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/IsolatedWorld.js.map +1 -1
  269. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +6 -0
  270. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
  271. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +49 -35
  272. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
  273. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Target.d.ts +3 -1
  274. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Target.d.ts.map +1 -1
  275. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Target.js +16 -7
  276. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Target.js.map +1 -1
  277. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts +2 -0
  278. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts.map +1 -1
  279. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js +9 -1
  280. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js.map +1 -1
  281. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.d.ts +218 -0
  282. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.d.ts.map +1 -0
  283. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.js +282 -0
  284. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebMCP.js.map +1 -0
  285. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.d.ts +4 -7
  286. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.d.ts.map +1 -1
  287. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.js +29 -4
  288. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.js.map +1 -1
  289. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.d.ts +1 -0
  290. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.d.ts.map +1 -1
  291. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.js +1 -0
  292. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.js.map +1 -1
  293. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/utils.d.ts +9 -0
  294. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/utils.d.ts.map +1 -1
  295. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/utils.js +34 -0
  296. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/utils.js.map +1 -1
  297. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts +7 -0
  298. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts.map +1 -1
  299. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/types.d.ts +0 -11
  300. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/types.d.ts.map +1 -1
  301. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/injected/injected.d.ts +2 -2
  302. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts +2 -0
  303. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
  304. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +5 -2
  305. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
  306. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
  307. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js +0 -1
  308. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js.map +1 -1
  309. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer-core-browser.d.ts +1 -1
  310. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/puppeteer-core-browser.d.ts.map +1 -1
  311. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
  312. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
  313. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js.map +1 -1
  314. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/Mutex.js +1 -1
  315. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/Mutex.js.map +1 -1
  316. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.d.ts +1 -1
  317. package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.js +1 -1
  318. package/front_end/third_party/puppeteer/package/lib/types.d.ts +7851 -6616
  319. package/front_end/third_party/puppeteer/package/package.json +5 -6
  320. package/front_end/third_party/puppeteer/package/src/api/Browser.ts +13 -0
  321. package/front_end/third_party/puppeteer/package/src/api/Extension.ts +98 -0
  322. package/front_end/third_party/puppeteer/package/src/api/Frame.ts +9 -0
  323. package/front_end/third_party/puppeteer/package/src/api/Issue.ts +24 -0
  324. package/front_end/third_party/puppeteer/package/src/api/Page.ts +38 -0
  325. package/front_end/third_party/puppeteer/package/src/api/Realm.ts +111 -12
  326. package/front_end/third_party/puppeteer/package/src/api/WebWorker.ts +26 -4
  327. package/front_end/third_party/puppeteer/package/src/api/api.ts +2 -0
  328. package/front_end/third_party/puppeteer/package/src/bidi/Browser.ts +12 -0
  329. package/front_end/third_party/puppeteer/package/src/bidi/BrowserConnector.ts +2 -0
  330. package/front_end/third_party/puppeteer/package/src/bidi/BrowserContext.ts +7 -0
  331. package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +13 -67
  332. package/front_end/third_party/puppeteer/package/src/bidi/Input.ts +0 -1
  333. package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +21 -2
  334. package/front_end/third_party/puppeteer/package/src/bidi/Realm.ts +39 -1
  335. package/front_end/third_party/puppeteer/package/src/bidi/Target.ts +2 -5
  336. package/front_end/third_party/puppeteer/package/src/bidi/core/Realm.ts +23 -0
  337. package/front_end/third_party/puppeteer/package/src/bidi/util.ts +94 -0
  338. package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +75 -2
  339. package/front_end/third_party/puppeteer/package/src/cdp/BrowserConnector.ts +2 -0
  340. package/front_end/third_party/puppeteer/package/src/cdp/CdpIssue.ts +30 -0
  341. package/front_end/third_party/puppeteer/package/src/cdp/Extension.ts +101 -0
  342. package/front_end/third_party/puppeteer/package/src/cdp/Frame.ts +32 -22
  343. package/front_end/third_party/puppeteer/package/src/cdp/FrameManager.ts +44 -3
  344. package/front_end/third_party/puppeteer/package/src/cdp/IsolatedWorld.ts +40 -2
  345. package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +61 -47
  346. package/front_end/third_party/puppeteer/package/src/cdp/Target.ts +17 -7
  347. package/front_end/third_party/puppeteer/package/src/cdp/TargetManager.ts +14 -1
  348. package/front_end/third_party/puppeteer/package/src/cdp/WebMCP.ts +441 -0
  349. package/front_end/third_party/puppeteer/package/src/cdp/WebWorker.ts +38 -12
  350. package/front_end/third_party/puppeteer/package/src/cdp/cdp.ts +1 -0
  351. package/front_end/third_party/puppeteer/package/src/cdp/utils.ts +52 -0
  352. package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +7 -0
  353. package/front_end/third_party/puppeteer/package/src/common/types.ts +0 -14
  354. package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +7 -0
  355. package/front_end/third_party/puppeteer/package/src/node/ChromeLauncher.ts +0 -1
  356. package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
  357. package/front_end/third_party/puppeteer/package/src/util/Mutex.ts +1 -1
  358. package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
  359. package/front_end/third_party/puppeteer/puppeteer-tsconfig.json +5 -0
  360. package/front_end/ui/kit/icons/Icon.ts +1 -0
  361. package/front_end/ui/legacy/Treeoutline.ts +16 -2
  362. package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +4 -3
  363. package/front_end/ui/visual_logging/KnownContextValues.ts +3 -0
  364. package/package.json +2 -2
@@ -112,7 +112,6 @@ for the current logic.
112
112
  Some of the filters currently in use are:
113
113
 
114
114
  - `cpp_debug_extension` builders only trigger on changes related to the extension
115
- - `dtf_check_no_bundle` builder only trigger on GN changes
116
115
  - all other builders will not trigger if only documentation files are updated
117
116
 
118
117
  ## Branch cutting process
@@ -8,7 +8,7 @@
8
8
  * TODO: Once the proposal is merged, just replace `MapWithDefault` with `Map` and remove it.
9
9
  **/
10
10
  export class MapWithDefault<K, V> extends Map<K, V> {
11
- getOrInsert(key: K, defaultValue: V): V {
11
+ override getOrInsert(key: K, defaultValue: V): V {
12
12
  if (!this.has(key)) {
13
13
  this.set(key, defaultValue);
14
14
  }
@@ -16,7 +16,7 @@ export class MapWithDefault<K, V> extends Map<K, V> {
16
16
  return this.get(key) as V;
17
17
  }
18
18
 
19
- getOrInsertComputed(key: K, callbackFunction: (key: K) => V): V {
19
+ override getOrInsertComputed(key: K, callbackFunction: (key: K) => V): V {
20
20
  if (!this.has(key)) {
21
21
  this.set(key, callbackFunction(key));
22
22
  }
@@ -119,31 +119,34 @@ export class ObjectWrapper<Events> implements EventTarget<Events> {
119
119
  export function eventMixin<Events, Base extends Platform.Constructor.Constructor<object>>(base: Base) {
120
120
  console.assert(base !== HTMLElement);
121
121
  return class EventHandling extends base implements EventTarget<Events> {
122
- #events = new ObjectWrapper<Events>();
122
+ // Note that the weird name is due to TSC disallowing private/protected fields in
123
+ // anonmous exported classes. We use a `__` prefix to prevent clashes with `base`.
124
+ // eslint-disable-next-line @devtools/no-underscored-properties, @typescript-eslint/naming-convention
125
+ __events = new ObjectWrapper<Events>();
123
126
 
124
127
  addEventListener<T extends keyof Events>(
125
128
  eventType: T, listener: (arg0: EventTargetEvent<Events[T]>) => void,
126
129
  thisObject?: Object): EventDescriptor<Events, T> {
127
- return this.#events.addEventListener(eventType, listener, thisObject);
130
+ return this.__events.addEventListener(eventType, listener, thisObject);
128
131
  }
129
132
 
130
133
  once<T extends keyof Events>(eventType: T): Promise<Events[T]> {
131
- return this.#events.once(eventType);
134
+ return this.__events.once(eventType);
132
135
  }
133
136
 
134
137
  removeEventListener<T extends keyof Events>(
135
138
  eventType: T, listener: (arg0: EventTargetEvent<Events[T]>) => void, thisObject?: Object): void {
136
- this.#events.removeEventListener(eventType, listener, thisObject);
139
+ this.__events.removeEventListener(eventType, listener, thisObject);
137
140
  }
138
141
 
139
142
  hasEventListeners(eventType: keyof Events): boolean {
140
- return this.#events.hasEventListeners(eventType);
143
+ return this.__events.hasEventListeners(eventType);
141
144
  }
142
145
 
143
146
  dispatchEventToListeners<T extends keyof Events>(
144
147
  eventType: Platform.TypeScriptUtilities.NoUnion<T>,
145
148
  ...eventData: EventPayloadToRestParameters<Events, T>): void {
146
- this.#events.dispatchEventToListeners(eventType, ...eventData);
149
+ this.__events.dispatchEventToListeners(eventType, ...eventData);
147
150
  }
148
151
  };
149
152
  }
@@ -99,6 +99,8 @@ html, body {
99
99
  overflow-wrap: break-word;
100
100
  line-height: 1.4;
101
101
  white-space: pre-wrap; /* Preserve newlines */
102
+ flex-shrink: 0;
103
+ min-height: min-content;
102
104
  }
103
105
 
104
106
  .user-message {
@@ -182,6 +184,7 @@ html, body {
182
184
  flex-direction: column;
183
185
  gap: 8px;
184
186
  border: 1px solid #d3e3fd;
187
+ flex-shrink: 0;
185
188
  }
186
189
 
187
190
  .green-dev-floaty-dialog-node-description {
@@ -83,7 +83,7 @@ inspectorBackend.registerEnum("Audits.SharedDictionaryError", {UseErrorCrossOrig
83
83
  inspectorBackend.registerEnum("Audits.SRIMessageSignatureError", {MissingSignatureHeader: "MissingSignatureHeader", MissingSignatureInputHeader: "MissingSignatureInputHeader", InvalidSignatureHeader: "InvalidSignatureHeader", InvalidSignatureInputHeader: "InvalidSignatureInputHeader", SignatureHeaderValueIsNotByteSequence: "SignatureHeaderValueIsNotByteSequence", SignatureHeaderValueIsParameterized: "SignatureHeaderValueIsParameterized", SignatureHeaderValueIsIncorrectLength: "SignatureHeaderValueIsIncorrectLength", SignatureInputHeaderMissingLabel: "SignatureInputHeaderMissingLabel", SignatureInputHeaderValueNotInnerList: "SignatureInputHeaderValueNotInnerList", SignatureInputHeaderValueMissingComponents: "SignatureInputHeaderValueMissingComponents", SignatureInputHeaderInvalidComponentType: "SignatureInputHeaderInvalidComponentType", SignatureInputHeaderInvalidComponentName: "SignatureInputHeaderInvalidComponentName", SignatureInputHeaderInvalidHeaderComponentParameter: "SignatureInputHeaderInvalidHeaderComponentParameter", SignatureInputHeaderInvalidDerivedComponentParameter: "SignatureInputHeaderInvalidDerivedComponentParameter", SignatureInputHeaderKeyIdLength: "SignatureInputHeaderKeyIdLength", SignatureInputHeaderInvalidParameter: "SignatureInputHeaderInvalidParameter", SignatureInputHeaderMissingRequiredParameters: "SignatureInputHeaderMissingRequiredParameters", ValidationFailedSignatureExpired: "ValidationFailedSignatureExpired", ValidationFailedInvalidLength: "ValidationFailedInvalidLength", ValidationFailedSignatureMismatch: "ValidationFailedSignatureMismatch", ValidationFailedIntegrityMismatch: "ValidationFailedIntegrityMismatch"});
84
84
  inspectorBackend.registerEnum("Audits.UnencodedDigestError", {MalformedDictionary: "MalformedDictionary", UnknownAlgorithm: "UnknownAlgorithm", IncorrectDigestType: "IncorrectDigestType", IncorrectDigestLength: "IncorrectDigestLength"});
85
85
  inspectorBackend.registerEnum("Audits.ConnectionAllowlistError", {InvalidHeader: "InvalidHeader", MoreThanOneList: "MoreThanOneList", ItemNotInnerList: "ItemNotInnerList", InvalidAllowlistItemType: "InvalidAllowlistItemType", ReportingEndpointNotToken: "ReportingEndpointNotToken", InvalidUrlPattern: "InvalidUrlPattern"});
86
- inspectorBackend.registerEnum("Audits.GenericIssueErrorType", {FormLabelForNameError: "FormLabelForNameError", FormDuplicateIdForInputError: "FormDuplicateIdForInputError", FormInputWithNoLabelError: "FormInputWithNoLabelError", FormAutocompleteAttributeEmptyError: "FormAutocompleteAttributeEmptyError", FormEmptyIdAndNameAttributesForInputError: "FormEmptyIdAndNameAttributesForInputError", FormAriaLabelledByToNonExistingIdError: "FormAriaLabelledByToNonExistingIdError", FormInputAssignedAutocompleteValueToIdOrNameAttributeError: "FormInputAssignedAutocompleteValueToIdOrNameAttributeError", FormLabelHasNeitherForNorNestedInputError: "FormLabelHasNeitherForNorNestedInputError", FormLabelForMatchesNonExistingIdError: "FormLabelForMatchesNonExistingIdError", FormInputHasWrongButWellIntendedAutocompleteValueError: "FormInputHasWrongButWellIntendedAutocompleteValueError", ResponseWasBlockedByORB: "ResponseWasBlockedByORB", NavigationEntryMarkedSkippable: "NavigationEntryMarkedSkippable", AutofillAndManualTextPolicyControlledFeaturesInfo: "AutofillAndManualTextPolicyControlledFeaturesInfo", AutofillPolicyControlledFeatureInfo: "AutofillPolicyControlledFeatureInfo", ManualTextPolicyControlledFeatureInfo: "ManualTextPolicyControlledFeatureInfo", FormModelContextParameterMissingTitleAndDescription: "FormModelContextParameterMissingTitleAndDescription"});
86
+ inspectorBackend.registerEnum("Audits.GenericIssueErrorType", {FormLabelForNameError: "FormLabelForNameError", FormDuplicateIdForInputError: "FormDuplicateIdForInputError", FormInputWithNoLabelError: "FormInputWithNoLabelError", FormAutocompleteAttributeEmptyError: "FormAutocompleteAttributeEmptyError", FormEmptyIdAndNameAttributesForInputError: "FormEmptyIdAndNameAttributesForInputError", FormAriaLabelledByToNonExistingIdError: "FormAriaLabelledByToNonExistingIdError", FormInputAssignedAutocompleteValueToIdOrNameAttributeError: "FormInputAssignedAutocompleteValueToIdOrNameAttributeError", FormLabelHasNeitherForNorNestedInputError: "FormLabelHasNeitherForNorNestedInputError", FormLabelForMatchesNonExistingIdError: "FormLabelForMatchesNonExistingIdError", FormInputHasWrongButWellIntendedAutocompleteValueError: "FormInputHasWrongButWellIntendedAutocompleteValueError", ResponseWasBlockedByORB: "ResponseWasBlockedByORB", NavigationEntryMarkedSkippable: "NavigationEntryMarkedSkippable", AutofillAndManualTextPolicyControlledFeaturesInfo: "AutofillAndManualTextPolicyControlledFeaturesInfo", AutofillPolicyControlledFeatureInfo: "AutofillPolicyControlledFeatureInfo", ManualTextPolicyControlledFeatureInfo: "ManualTextPolicyControlledFeatureInfo", FormModelContextParameterMissingTitleAndDescription: "FormModelContextParameterMissingTitleAndDescription", FormModelContextMissingToolName: "FormModelContextMissingToolName", FormModelContextMissingToolDescription: "FormModelContextMissingToolDescription", FormModelContextRequiredParameterMissingName: "FormModelContextRequiredParameterMissingName", FormModelContextParameterMissingName: "FormModelContextParameterMissingName"});
87
87
  inspectorBackend.registerEnum("Audits.ClientHintIssueReason", {MetaTagAllowListInvalidOrigin: "MetaTagAllowListInvalidOrigin", MetaTagModifiedHTML: "MetaTagModifiedHTML"});
88
88
  inspectorBackend.registerEnum("Audits.FederatedAuthRequestIssueReason", {ShouldEmbargo: "ShouldEmbargo", TooManyRequests: "TooManyRequests", WellKnownHttpNotFound: "WellKnownHttpNotFound", WellKnownNoResponse: "WellKnownNoResponse", WellKnownInvalidResponse: "WellKnownInvalidResponse", WellKnownListEmpty: "WellKnownListEmpty", WellKnownInvalidContentType: "WellKnownInvalidContentType", ConfigNotInWellKnown: "ConfigNotInWellKnown", WellKnownTooBig: "WellKnownTooBig", ConfigHttpNotFound: "ConfigHttpNotFound", ConfigNoResponse: "ConfigNoResponse", ConfigInvalidResponse: "ConfigInvalidResponse", ConfigInvalidContentType: "ConfigInvalidContentType", IdpNotPotentiallyTrustworthy: "IdpNotPotentiallyTrustworthy", DisabledInSettings: "DisabledInSettings", DisabledInFlags: "DisabledInFlags", ErrorFetchingSignin: "ErrorFetchingSignin", InvalidSigninResponse: "InvalidSigninResponse", AccountsHttpNotFound: "AccountsHttpNotFound", AccountsNoResponse: "AccountsNoResponse", AccountsInvalidResponse: "AccountsInvalidResponse", AccountsListEmpty: "AccountsListEmpty", AccountsInvalidContentType: "AccountsInvalidContentType", IdTokenHttpNotFound: "IdTokenHttpNotFound", IdTokenNoResponse: "IdTokenNoResponse", IdTokenInvalidResponse: "IdTokenInvalidResponse", IdTokenIdpErrorResponse: "IdTokenIdpErrorResponse", IdTokenCrossSiteIdpErrorResponse: "IdTokenCrossSiteIdpErrorResponse", IdTokenInvalidRequest: "IdTokenInvalidRequest", IdTokenInvalidContentType: "IdTokenInvalidContentType", ErrorIdToken: "ErrorIdToken", Canceled: "Canceled", RpPageNotVisible: "RpPageNotVisible", SilentMediationFailure: "SilentMediationFailure", NotSignedInWithIdp: "NotSignedInWithIdp", MissingTransientUserActivation: "MissingTransientUserActivation", ReplacedByActiveMode: "ReplacedByActiveMode", RelyingPartyOriginIsOpaque: "RelyingPartyOriginIsOpaque", TypeNotMatching: "TypeNotMatching", UiDismissedNoEmbargo: "UiDismissedNoEmbargo", CorsError: "CorsError", SuppressedBySegmentationPlatform: "SuppressedBySegmentationPlatform"});
89
89
  inspectorBackend.registerEnum("Audits.FederatedAuthUserInfoRequestIssueReason", {NotSameOrigin: "NotSameOrigin", NotIframe: "NotIframe", NotPotentiallyTrustworthy: "NotPotentiallyTrustworthy", NoAPIPermission: "NoApiPermission", NotSignedInWithIdp: "NotSignedInWithIdp", NoAccountSharingPermission: "NoAccountSharingPermission", InvalidConfigOrWellKnown: "InvalidConfigOrWellKnown", InvalidAccountsResponse: "InvalidAccountsResponse", NoReturningUserFromFetchedAccounts: "NoReturningUserFromFetchedAccounts"});
@@ -808,8 +808,8 @@ inspectorBackend.registerEnum("Network.ReportStatus", {Queued: "Queued", Pending
808
808
  inspectorBackend.registerEnum("Network.DeviceBoundSessionWithUsageUsage", {NotInScope: "NotInScope", InScopeRefreshNotYetNeeded: "InScopeRefreshNotYetNeeded", InScopeRefreshNotAllowed: "InScopeRefreshNotAllowed", ProactiveRefreshNotPossible: "ProactiveRefreshNotPossible", ProactiveRefreshAttempted: "ProactiveRefreshAttempted", Deferred: "Deferred"});
809
809
  inspectorBackend.registerEnum("Network.DeviceBoundSessionUrlRuleRuleType", {Exclude: "Exclude", Include: "Include"});
810
810
  inspectorBackend.registerEnum("Network.DeviceBoundSessionFetchResult", {Success: "Success", KeyError: "KeyError", SigningError: "SigningError", ServerRequestedTermination: "ServerRequestedTermination", InvalidSessionId: "InvalidSessionId", InvalidChallenge: "InvalidChallenge", TooManyChallenges: "TooManyChallenges", InvalidFetcherUrl: "InvalidFetcherUrl", InvalidRefreshUrl: "InvalidRefreshUrl", TransientHttpError: "TransientHttpError", ScopeOriginSameSiteMismatch: "ScopeOriginSameSiteMismatch", RefreshUrlSameSiteMismatch: "RefreshUrlSameSiteMismatch", MismatchedSessionId: "MismatchedSessionId", MissingScope: "MissingScope", NoCredentials: "NoCredentials", SubdomainRegistrationWellKnownUnavailable: "SubdomainRegistrationWellKnownUnavailable", SubdomainRegistrationUnauthorized: "SubdomainRegistrationUnauthorized", SubdomainRegistrationWellKnownMalformed: "SubdomainRegistrationWellKnownMalformed", SessionProviderWellKnownUnavailable: "SessionProviderWellKnownUnavailable", RelyingPartyWellKnownUnavailable: "RelyingPartyWellKnownUnavailable", FederatedKeyThumbprintMismatch: "FederatedKeyThumbprintMismatch", InvalidFederatedSessionUrl: "InvalidFederatedSessionUrl", InvalidFederatedKey: "InvalidFederatedKey", TooManyRelyingOriginLabels: "TooManyRelyingOriginLabels", BoundCookieSetForbidden: "BoundCookieSetForbidden", NetError: "NetError", ProxyError: "ProxyError", EmptySessionConfig: "EmptySessionConfig", InvalidCredentialsConfig: "InvalidCredentialsConfig", InvalidCredentialsType: "InvalidCredentialsType", InvalidCredentialsEmptyName: "InvalidCredentialsEmptyName", InvalidCredentialsCookie: "InvalidCredentialsCookie", PersistentHttpError: "PersistentHttpError", RegistrationAttemptedChallenge: "RegistrationAttemptedChallenge", InvalidScopeOrigin: "InvalidScopeOrigin", ScopeOriginContainsPath: "ScopeOriginContainsPath", RefreshInitiatorNotString: "RefreshInitiatorNotString", RefreshInitiatorInvalidHostPattern: "RefreshInitiatorInvalidHostPattern", InvalidScopeSpecification: "InvalidScopeSpecification", MissingScopeSpecificationType: "MissingScopeSpecificationType", EmptyScopeSpecificationDomain: "EmptyScopeSpecificationDomain", EmptyScopeSpecificationPath: "EmptyScopeSpecificationPath", InvalidScopeSpecificationType: "InvalidScopeSpecificationType", InvalidScopeIncludeSite: "InvalidScopeIncludeSite", MissingScopeIncludeSite: "MissingScopeIncludeSite", FederatedNotAuthorizedByProvider: "FederatedNotAuthorizedByProvider", FederatedNotAuthorizedByRelyingParty: "FederatedNotAuthorizedByRelyingParty", SessionProviderWellKnownMalformed: "SessionProviderWellKnownMalformed", SessionProviderWellKnownHasProviderOrigin: "SessionProviderWellKnownHasProviderOrigin", RelyingPartyWellKnownMalformed: "RelyingPartyWellKnownMalformed", RelyingPartyWellKnownHasRelyingOrigins: "RelyingPartyWellKnownHasRelyingOrigins", InvalidFederatedSessionProviderSessionMissing: "InvalidFederatedSessionProviderSessionMissing", InvalidFederatedSessionWrongProviderOrigin: "InvalidFederatedSessionWrongProviderOrigin", InvalidCredentialsCookieCreationTime: "InvalidCredentialsCookieCreationTime", InvalidCredentialsCookieName: "InvalidCredentialsCookieName", InvalidCredentialsCookieParsing: "InvalidCredentialsCookieParsing", InvalidCredentialsCookieUnpermittedAttribute: "InvalidCredentialsCookieUnpermittedAttribute", InvalidCredentialsCookieInvalidDomain: "InvalidCredentialsCookieInvalidDomain", InvalidCredentialsCookiePrefix: "InvalidCredentialsCookiePrefix", InvalidScopeRulePath: "InvalidScopeRulePath", InvalidScopeRuleHostPattern: "InvalidScopeRuleHostPattern", ScopeRuleOriginScopedHostPatternMismatch: "ScopeRuleOriginScopedHostPatternMismatch", ScopeRuleSiteScopedHostPatternMismatch: "ScopeRuleSiteScopedHostPatternMismatch", SigningQuotaExceeded: "SigningQuotaExceeded", InvalidConfigJson: "InvalidConfigJson", InvalidFederatedSessionProviderFailedToRestoreKey: "InvalidFederatedSessionProviderFailedToRestoreKey", FailedToUnwrapKey: "FailedToUnwrapKey", SessionDeletedDuringRefresh: "SessionDeletedDuringRefresh"});
811
- inspectorBackend.registerEnum("Network.RefreshEventDetailsRefreshResult", {Refreshed: "Refreshed", InitializedService: "InitializedService", Unreachable: "Unreachable", ServerError: "ServerError", RefreshQuotaExceeded: "RefreshQuotaExceeded", FatalError: "FatalError", SigningQuotaExceeded: "SigningQuotaExceeded"});
812
- inspectorBackend.registerEnum("Network.TerminationEventDetailsDeletionReason", {Expired: "Expired", FailedToRestoreKey: "FailedToRestoreKey", FailedToUnwrapKey: "FailedToUnwrapKey", StoragePartitionCleared: "StoragePartitionCleared", ClearBrowsingData: "ClearBrowsingData", ServerRequested: "ServerRequested", InvalidSessionParams: "InvalidSessionParams", RefreshFatalError: "RefreshFatalError"});
811
+ inspectorBackend.registerEnum("Network.RefreshEventDetailsRefreshResult", {Refreshed: "Refreshed", RefreshedAsWaiter: "RefreshedAsWaiter", InitializedService: "InitializedService", Unreachable: "Unreachable", ServerError: "ServerError", RefreshQuotaExceeded: "RefreshQuotaExceeded", FatalError: "FatalError", SigningQuotaExceeded: "SigningQuotaExceeded"});
812
+ inspectorBackend.registerEnum("Network.TerminationEventDetailsDeletionReason", {Expired: "Expired", FailedToRestoreKey: "FailedToRestoreKey", FailedToUnwrapKey: "FailedToUnwrapKey", StoragePartitionCleared: "StoragePartitionCleared", ClearBrowsingData: "ClearBrowsingData", ServerRequested: "ServerRequested", InvalidSessionParams: "InvalidSessionParams", RefreshFatalError: "RefreshFatalError", DevTools: "DevTools"});
813
813
  inspectorBackend.registerEnum("Network.ChallengeEventDetailsChallengeResult", {Success: "Success", NoSessionId: "NoSessionId", NoSessionMatch: "NoSessionMatch", CantSetBoundCookie: "CantSetBoundCookie"});
814
814
  inspectorBackend.registerEvent("Network.dataReceived", ["requestId", "timestamp", "dataLength", "encodedDataLength", "data"]);
815
815
  inspectorBackend.registerEvent("Network.eventSourceMessageReceived", ["requestId", "timestamp", "eventName", "eventId", "data"]);
@@ -893,6 +893,7 @@ inspectorBackend.registerCommand("Network.streamResourceContent", [{"name": "req
893
893
  inspectorBackend.registerCommand("Network.getSecurityIsolationStatus", [{"name": "frameId", "type": "string", "optional": true, "description": "If no frameId is provided, the status of the target is provided.", "typeRef": "Page.FrameId"}], ["status"], "Returns information about the COEP/COOP isolation status.");
894
894
  inspectorBackend.registerCommand("Network.enableReportingApi", [{"name": "enable", "type": "boolean", "optional": false, "description": "Whether to enable or disable events for the Reporting API", "typeRef": null}], [], "Enables tracking for the Reporting API, events generated by the Reporting API will now be delivered to the client. Enabling triggers 'reportingApiReportAdded' for all existing reports.");
895
895
  inspectorBackend.registerCommand("Network.enableDeviceBoundSessions", [{"name": "enable", "type": "boolean", "optional": false, "description": "Whether to enable or disable events.", "typeRef": null}], [], "Sets up tracking device bound sessions and fetching of initial set of sessions.");
896
+ inspectorBackend.registerCommand("Network.deleteDeviceBoundSession", [{"name": "key", "type": "object", "optional": false, "description": "", "typeRef": "Network.DeviceBoundSessionKey"}], [], "Deletes a device bound session.");
896
897
  inspectorBackend.registerCommand("Network.fetchSchemefulSite", [{"name": "origin", "type": "string", "optional": false, "description": "The URL origin.", "typeRef": null}], ["schemefulSite"], "Fetches the schemeful site for a specific origin.");
897
898
  inspectorBackend.registerCommand("Network.loadNetworkResource", [{"name": "frameId", "type": "string", "optional": true, "description": "Frame id to get the resource for. Mandatory for frame targets, and should be omitted for worker targets.", "typeRef": "Page.FrameId"}, {"name": "url", "type": "string", "optional": false, "description": "URL of the resource to get content for.", "typeRef": null}, {"name": "options", "type": "object", "optional": false, "description": "Options for the request.", "typeRef": "Network.LoadNetworkResourceOptions"}], ["resource"], "Fetches the resource and returns the content.");
898
899
  inspectorBackend.registerCommand("Network.setCookieControls", [{"name": "enableThirdPartyCookieRestriction", "type": "boolean", "optional": false, "description": "Whether 3pc restriction is enabled.", "typeRef": null}], [], "Sets Controls for third-party cookie access Page reload is required before the new cookie behavior will be observed");
@@ -1496,6 +1497,8 @@ inspectorBackend.registerEvent("WebMCP.toolInvoked", ["toolName", "frameId", "in
1496
1497
  inspectorBackend.registerEvent("WebMCP.toolResponded", ["invocationId", "status", "output", "errorText", "exception"]);
1497
1498
  inspectorBackend.registerCommand("WebMCP.enable", [], [], "Enables the WebMCP domain, allowing events to be sent. Enabling the domain will trigger a toolsAdded event for all currently registered tools.");
1498
1499
  inspectorBackend.registerCommand("WebMCP.disable", [], [], "Disables the WebMCP domain.");
1500
+ inspectorBackend.registerCommand("WebMCP.invokeTool", [{"name": "frameId", "type": "string", "optional": false, "description": "Frame in which to invoke the tool.", "typeRef": "Page.FrameId"}, {"name": "toolName", "type": "string", "optional": false, "description": "Name of the tool to invoke.", "typeRef": null}, {"name": "input", "type": "object", "optional": false, "description": "Input parameters for the tool, matching the tool's inputSchema.", "typeRef": null}], ["invocationId"], "Invokes a registered tool.");
1501
+ inspectorBackend.registerCommand("WebMCP.cancelInvocation", [{"name": "invocationId", "type": "string", "optional": false, "description": "Invocation identifier to cancel.", "typeRef": null}], [], "Cancels a pending tool invocation.");
1499
1502
  inspectorBackend.registerType("WebMCP.Annotation", [{"name": "readOnly", "type": "boolean", "optional": true, "description": "A hint indicating that the tool does not modify any state.", "typeRef": null}, {"name": "autosubmit", "type": "boolean", "optional": true, "description": "If the declarative tool was declared with the autosubmit attribute.", "typeRef": null}]);
1500
1503
  inspectorBackend.registerType("WebMCP.Tool", [{"name": "name", "type": "string", "optional": false, "description": "Tool name.", "typeRef": null}, {"name": "description", "type": "string", "optional": false, "description": "Tool description.", "typeRef": null}, {"name": "inputSchema", "type": "object", "optional": true, "description": "Schema for the tool's input parameters.", "typeRef": null}, {"name": "annotations", "type": "object", "optional": true, "description": "Optional annotations for the tool.", "typeRef": "WebMCP.Annotation"}, {"name": "frameId", "type": "string", "optional": false, "description": "Frame identifier associated with the tool registration.", "typeRef": "Page.FrameId"}, {"name": "backendNodeId", "type": "number", "optional": true, "description": "Optional node ID for declarative tools.", "typeRef": "DOM.BackendNodeId"}, {"name": "stackTrace", "type": "object", "optional": true, "description": "The stack trace at the time of the registration.", "typeRef": "Runtime.StackTrace"}]);
1501
1504
 
@@ -469,6 +469,7 @@ export const generatedProperties = [
469
469
  "flex-basis",
470
470
  "flex-direction",
471
471
  "flex-grow",
472
+ "flex-line-count",
472
473
  "flex-shrink",
473
474
  "flex-wrap",
474
475
  "float",
@@ -2307,6 +2308,9 @@ export const generatedProperties = [
2307
2308
  {
2308
2309
  "name": "flex-grow"
2309
2310
  },
2311
+ {
2312
+ "name": "flex-line-count"
2313
+ },
2310
2314
  {
2311
2315
  "name": "flex-shrink"
2312
2316
  },
@@ -3719,6 +3719,13 @@ export namespace ProtocolMapping {
3719
3719
  paramsType: [Protocol.Network.EnableDeviceBoundSessionsRequest];
3720
3720
  returnType: void;
3721
3721
  };
3722
+ /**
3723
+ * Deletes a device bound session.
3724
+ */
3725
+ 'Network.deleteDeviceBoundSession': {
3726
+ paramsType: [Protocol.Network.DeleteDeviceBoundSessionRequest];
3727
+ returnType: void;
3728
+ };
3722
3729
  /**
3723
3730
  * Fetches the schemeful site for a specific origin.
3724
3731
  */
@@ -5375,6 +5382,20 @@ export namespace ProtocolMapping {
5375
5382
  paramsType: [];
5376
5383
  returnType: void;
5377
5384
  };
5385
+ /**
5386
+ * Invokes a registered tool.
5387
+ */
5388
+ 'WebMCP.invokeTool': {
5389
+ paramsType: [Protocol.WebMCP.InvokeToolRequest];
5390
+ returnType: Protocol.WebMCP.InvokeToolResponse;
5391
+ };
5392
+ /**
5393
+ * Cancels a pending tool invocation.
5394
+ */
5395
+ 'WebMCP.cancelInvocation': {
5396
+ paramsType: [Protocol.WebMCP.CancelInvocationRequest];
5397
+ returnType: void;
5398
+ };
5378
5399
  /**
5379
5400
  * Continues execution until specific location is reached.
5380
5401
  */
@@ -2731,6 +2731,11 @@ declare namespace ProtocolProxyApi {
2731
2731
  */
2732
2732
  invoke_enableDeviceBoundSessions(params: Protocol.Network.EnableDeviceBoundSessionsRequest): Promise<Protocol.ProtocolResponseWithError>;
2733
2733
 
2734
+ /**
2735
+ * Deletes a device bound session.
2736
+ */
2737
+ invoke_deleteDeviceBoundSession(params: Protocol.Network.DeleteDeviceBoundSessionRequest): Promise<Protocol.ProtocolResponseWithError>;
2738
+
2734
2739
  /**
2735
2740
  * Fetches the schemeful site for a specific origin.
2736
2741
  */
@@ -4848,6 +4853,16 @@ declare namespace ProtocolProxyApi {
4848
4853
  */
4849
4854
  invoke_disable(): Promise<Protocol.ProtocolResponseWithError>;
4850
4855
 
4856
+ /**
4857
+ * Invokes a registered tool.
4858
+ */
4859
+ invoke_invokeTool(params: Protocol.WebMCP.InvokeToolRequest): Promise<Protocol.WebMCP.InvokeToolResponse>;
4860
+
4861
+ /**
4862
+ * Cancels a pending tool invocation.
4863
+ */
4864
+ invoke_cancelInvocation(params: Protocol.WebMCP.CancelInvocationRequest): Promise<Protocol.ProtocolResponseWithError>;
4865
+
4851
4866
  }
4852
4867
  export interface WebMCPDispatcher {
4853
4868
  /**
@@ -1212,6 +1212,10 @@ export namespace Audits {
1212
1212
  AutofillPolicyControlledFeatureInfo = 'AutofillPolicyControlledFeatureInfo',
1213
1213
  ManualTextPolicyControlledFeatureInfo = 'ManualTextPolicyControlledFeatureInfo',
1214
1214
  FormModelContextParameterMissingTitleAndDescription = 'FormModelContextParameterMissingTitleAndDescription',
1215
+ FormModelContextMissingToolName = 'FormModelContextMissingToolName',
1216
+ FormModelContextMissingToolDescription = 'FormModelContextMissingToolDescription',
1217
+ FormModelContextRequiredParameterMissingName = 'FormModelContextRequiredParameterMissingName',
1218
+ FormModelContextParameterMissingName = 'FormModelContextParameterMissingName',
1215
1219
  }
1216
1220
 
1217
1221
  /**
@@ -11922,6 +11926,7 @@ export namespace Network {
11922
11926
 
11923
11927
  export const enum RefreshEventDetailsRefreshResult {
11924
11928
  Refreshed = 'Refreshed',
11929
+ RefreshedAsWaiter = 'RefreshedAsWaiter',
11925
11930
  InitializedService = 'InitializedService',
11926
11931
  Unreachable = 'Unreachable',
11927
11932
  ServerError = 'ServerError',
@@ -11967,6 +11972,7 @@ export namespace Network {
11967
11972
  ServerRequested = 'ServerRequested',
11968
11973
  InvalidSessionParams = 'InvalidSessionParams',
11969
11974
  RefreshFatalError = 'RefreshFatalError',
11975
+ DevTools = 'DevTools',
11970
11976
  }
11971
11977
 
11972
11978
  /**
@@ -12555,6 +12561,10 @@ export namespace Network {
12555
12561
  enable: boolean;
12556
12562
  }
12557
12563
 
12564
+ export interface DeleteDeviceBoundSessionRequest {
12565
+ key: DeviceBoundSessionKey;
12566
+ }
12567
+
12558
12568
  export interface FetchSchemefulSiteRequest {
12559
12569
  /**
12560
12570
  * The URL origin.
@@ -20356,6 +20366,35 @@ export namespace WebMCP {
20356
20366
  stackTrace?: Runtime.StackTrace;
20357
20367
  }
20358
20368
 
20369
+ export interface InvokeToolRequest {
20370
+ /**
20371
+ * Frame in which to invoke the tool.
20372
+ */
20373
+ frameId: Page.FrameId;
20374
+ /**
20375
+ * Name of the tool to invoke.
20376
+ */
20377
+ toolName: string;
20378
+ /**
20379
+ * Input parameters for the tool, matching the tool's inputSchema.
20380
+ */
20381
+ input: any;
20382
+ }
20383
+
20384
+ export interface InvokeToolResponse extends ProtocolResponseWithError {
20385
+ /**
20386
+ * Unique identifier for this invocation. Response is sent before tool events.
20387
+ */
20388
+ invocationId: string;
20389
+ }
20390
+
20391
+ export interface CancelInvocationRequest {
20392
+ /**
20393
+ * Invocation identifier to cancel.
20394
+ */
20395
+ invocationId: string;
20396
+ }
20397
+
20359
20398
  /**
20360
20399
  * Event fired when new tools are added.
20361
20400
  */
@@ -248,10 +248,11 @@ export interface PerformanceTraceAiWidget {
248
248
  };
249
249
  }
250
250
 
251
- export interface LcpBreakdownAiWidget {
252
- name: 'LCP_BREAKDOWN';
251
+ export interface PerfInsightAiWidget {
252
+ name: 'PERF_INSIGHT';
253
253
  data: {
254
- lcpData: Trace.Insights.Models.LCPBreakdown.LCPBreakdownInsightModel,
254
+ insight: 'lcp',
255
+ insightData: Trace.Insights.Types.InsightModel,
255
256
  };
256
257
  }
257
258
 
@@ -276,7 +277,7 @@ export interface BottomUpTreeAiWidget {
276
277
 
277
278
  // This type will grow as we add more widgets.
278
279
  export type AiWidget = ComputedStyleAiWidget|CoreVitalsAiWidget|StylePropertiesAiWidget|DomTreeAiWidget|
279
- PerformanceTraceAiWidget|LcpBreakdownAiWidget|TimelineRangeSummaryAiWidget|BottomUpTreeAiWidget;
280
+ PerformanceTraceAiWidget|PerfInsightAiWidget|TimelineRangeSummaryAiWidget|BottomUpTreeAiWidget;
280
281
 
281
282
  export type FunctionCallHandlerResult<Result> = {
282
283
  requiresApproval: true,
@@ -11,7 +11,10 @@ Content:
11
11
  ],
12
12
  "widgets": [
13
13
  {
14
- "name": "CORE_VITALS"
14
+ "name": "TIMELINE_RANGE_SUMMARY"
15
+ },
16
+ {
17
+ "name": "BOTTOM_UP_TREE"
15
18
  }
16
19
  ]
17
20
  },
@@ -39,6 +42,9 @@ Content:
39
42
  }
40
43
  ],
41
44
  "widgets": [
45
+ {
46
+ "name": "PERF_INSIGHT"
47
+ },
42
48
  {
43
49
  "name": "CORE_VITALS"
44
50
  }
@@ -432,6 +432,8 @@ export class PerformanceAgent extends AiAgent<AgentFocus> {
432
432
  * we only show it once.
433
433
  */
434
434
  #hasShownWidgetForInsightSet = new WeakSet<Trace.Insights.Types.InsightSet>();
435
+ #hasShownWidgetForCallTree = new WeakSet<AICallTree>();
436
+ #hasShownWidgetForInsight = new WeakSet<Trace.Insights.Types.InsightModel>();
435
437
 
436
438
  get preamble(): string {
437
439
  return buildPreamble();
@@ -471,18 +473,8 @@ export class PerformanceAgent extends AiAgent<AgentFocus> {
471
473
  }
472
474
  contextDisclosure.push(...this.#additionalSelectionsForQuery);
473
475
 
474
- const widgets: AiWidget[] = [];
475
- const primaryInsightSet = context.getItem().primaryInsightSet;
476
- if (primaryInsightSet && !this.#hasShownWidgetForInsightSet.has(primaryInsightSet)) {
477
- widgets.push({
478
- name: 'CORE_VITALS',
479
- data: {
480
- parsedTrace: context.getItem().parsedTrace,
481
- insightSetKey: primaryInsightSet.id,
482
- },
483
- });
484
- this.#hasShownWidgetForInsightSet.add(primaryInsightSet);
485
- }
476
+ const focus = context.getItem();
477
+ const widgets = this.#getWidgetsForFocus(focus);
486
478
 
487
479
  yield {
488
480
  type: ResponseType.CONTEXT,
@@ -496,6 +488,70 @@ export class PerformanceAgent extends AiAgent<AgentFocus> {
496
488
  };
497
489
  }
498
490
 
491
+ // Show different widgets with the first reply depending on the initial context:
492
+ // Specific task (call tree) -> timeline summary & bottom up tree widgets
493
+ // LCP Insight -> LCP breakdown & CWV widgets
494
+ // Whole Trace or insight other than LCP -> CWV widget
495
+ #getWidgetsForFocus(focus: AgentFocus): AiWidget[] {
496
+ const widgets: AiWidget[] = [];
497
+
498
+ // Case 1: Specific task (call tree) -> timeline summary & bottom up tree widgets
499
+ if (focus.callTree) {
500
+ if (!this.#hasShownWidgetForCallTree.has(focus.callTree)) {
501
+ const event = focus.callTree.selectedNode?.event;
502
+ if (event) {
503
+ const {startTime, endTime} = Trace.Helpers.Timing.eventTimingsMicroSeconds(event);
504
+ const bounds = Trace.Helpers.Timing.traceWindowFromMicroSeconds(startTime, endTime);
505
+ widgets.push({
506
+ name: 'TIMELINE_RANGE_SUMMARY',
507
+ data: {
508
+ bounds,
509
+ parsedTrace: focus.parsedTrace,
510
+ track: 'main',
511
+ },
512
+ });
513
+ widgets.push({
514
+ name: 'BOTTOM_UP_TREE',
515
+ data: {
516
+ bounds,
517
+ parsedTrace: focus.parsedTrace,
518
+ },
519
+ });
520
+ this.#hasShownWidgetForCallTree.add(focus.callTree);
521
+ }
522
+ }
523
+ return widgets;
524
+ }
525
+
526
+ // Case 2: LCP Insight -> LCP breakdown & CWV widgets
527
+ if (focus.insight && Trace.Insights.Models.LCPBreakdown.isLCPBreakdownInsight(focus.insight) &&
528
+ !this.#hasShownWidgetForInsight.has(focus.insight)) {
529
+ widgets.push({
530
+ name: 'PERF_INSIGHT',
531
+ data: {
532
+ insight: 'lcp',
533
+ insightData: focus.insight,
534
+ },
535
+ });
536
+ this.#hasShownWidgetForInsight.add(focus.insight);
537
+ }
538
+
539
+ // Case 3: Whole Trace or insight other than LCP -> CWV widget
540
+ const primaryInsightSet = focus.primaryInsightSet;
541
+ if (primaryInsightSet && !this.#hasShownWidgetForInsightSet.has(primaryInsightSet)) {
542
+ widgets.push({
543
+ name: 'CORE_VITALS',
544
+ data: {
545
+ parsedTrace: focus.parsedTrace,
546
+ insightSetKey: primaryInsightSet.id,
547
+ },
548
+ });
549
+ this.#hasShownWidgetForInsightSet.add(primaryInsightSet);
550
+ }
551
+
552
+ return widgets;
553
+ }
554
+
499
555
  #callTreeContextSet = new WeakSet();
500
556
 
501
557
  #isFunctionResponseTooLarge(response: string): boolean {
@@ -938,9 +994,10 @@ export class PerformanceAgent extends AiAgent<AgentFocus> {
938
994
  }
939
995
  if (params.insightName === 'LCPBreakdown') {
940
996
  widgets.push({
941
- name: 'LCP_BREAKDOWN',
997
+ name: 'PERF_INSIGHT',
942
998
  data: {
943
- lcpData: insight as Trace.Insights.Models.LCPBreakdown.LCPBreakdownInsightModel,
999
+ insight: 'lcp',
1000
+ insightData: insight as Trace.Insights.Types.InsightModel,
944
1001
  },
945
1002
  });
946
1003
  }
@@ -1191,13 +1248,23 @@ export class PerformanceAgent extends AiAgent<AgentFocus> {
1191
1248
  const {startTime, endTime} = Trace.Helpers.Timing.eventTimingsMicroSeconds(event);
1192
1249
  const bounds = Trace.Helpers.Timing.traceWindowFromMicroSeconds(startTime, endTime);
1193
1250
 
1194
- const widgets: AiWidget[] = [{
1195
- name: 'BOTTOM_UP_TREE',
1196
- data: {
1197
- bounds,
1198
- parsedTrace,
1251
+ const widgets: AiWidget[] = [
1252
+ {
1253
+ name: 'BOTTOM_UP_TREE',
1254
+ data: {
1255
+ bounds,
1256
+ parsedTrace,
1257
+ },
1258
+ },
1259
+ {
1260
+ name: 'TIMELINE_RANGE_SUMMARY',
1261
+ data: {
1262
+ bounds,
1263
+ parsedTrace,
1264
+ track: 'main',
1265
+ },
1199
1266
  },
1200
- }];
1267
+ ];
1201
1268
 
1202
1269
  return {result: {callTree}, widgets};
1203
1270
  },
@@ -20,6 +20,7 @@ import {type LiveLocation, type LiveLocationPool, LiveLocationWithPool} from './
20
20
  import {NetworkProject} from './NetworkProject.js';
21
21
  import type {ResourceMapping} from './ResourceMapping.js';
22
22
  import {type ResourceScriptFile, ResourceScriptMapping} from './ResourceScriptMapping.js';
23
+ import {SymbolizedError} from './SymbolizedError.js';
23
24
 
24
25
  export class DebuggerWorkspaceBinding implements SDK.TargetManager.SDKModelObserver<SDK.DebuggerModel.DebuggerModel> {
25
26
  readonly resourceMapping: ResourceMapping;
@@ -203,6 +204,37 @@ export class DebuggerWorkspaceBinding implements SDK.TargetManager.SDKModelObser
203
204
  return await stackTracePromise;
204
205
  }
205
206
 
207
+ async createStackTraceFromErrorStackLikeString(
208
+ target: SDK.Target.Target, stack: string,
209
+ exceptionDetails?: Protocol.Runtime.ExceptionDetails): Promise<StackTrace.StackTrace.ParsedErrorStackTrace> {
210
+ const model =
211
+ target.model(StackTraceImpl.StackTraceModel.StackTraceModel) as StackTraceImpl.StackTraceModel.StackTraceModel;
212
+ const stackTracePromise =
213
+ model.createFromErrorStackLikeString(stack, this.#translateRawFrames.bind(this), exceptionDetails);
214
+ this.recordLiveLocationChange(stackTracePromise);
215
+ return await stackTracePromise;
216
+ }
217
+
218
+ async createSymbolizedError(remoteObject: SDK.RemoteObject.RemoteObject): Promise<SymbolizedError|null> {
219
+ if (remoteObject.subtype !== 'error') {
220
+ return null;
221
+ }
222
+
223
+ const remoteError = SDK.RemoteObject.RemoteError.objectAsError(remoteObject);
224
+ const [exceptionDetails, causeRemoteObject] = await Promise.all([
225
+ remoteError.exceptionDetails(),
226
+ remoteError.cause(),
227
+ ]);
228
+
229
+ const [stackTrace, cause] = await Promise.all([
230
+ this.createStackTraceFromErrorStackLikeString(
231
+ remoteObject.runtimeModel().target(), remoteError.errorStack, exceptionDetails),
232
+ causeRemoteObject ? this.createSymbolizedError(causeRemoteObject) : Promise.resolve(null),
233
+ ]);
234
+
235
+ return new SymbolizedError(remoteError, stackTrace, cause);
236
+ }
237
+
206
238
  async createLiveLocation(
207
239
  rawLocation: SDK.DebuggerModel.Location, updateDelegate: (arg0: LiveLocation) => Promise<void>,
208
240
  locationPool: LiveLocationPool): Promise<Location|null> {
@@ -0,0 +1,20 @@
1
+ // Copyright 2026 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
+ import type * as SDK from '../../core/sdk/sdk.js';
6
+ import type * as StackTrace from '../stack_trace/stack_trace.js';
7
+
8
+ export class SymbolizedError {
9
+ readonly remoteError: SDK.RemoteObject.RemoteError;
10
+ readonly stackTrace: StackTrace.StackTrace.ParsedErrorStackTrace;
11
+ readonly cause: SymbolizedError|null;
12
+
13
+ constructor(
14
+ remoteError: SDK.RemoteObject.RemoteError, stackTrace: StackTrace.StackTrace.ParsedErrorStackTrace,
15
+ cause: SymbolizedError|null) {
16
+ this.remoteError = remoteError;
17
+ this.stackTrace = stackTrace;
18
+ this.cause = cause;
19
+ }
20
+ }
@@ -17,6 +17,7 @@ import * as ResourceScriptMapping from './ResourceScriptMapping.js';
17
17
  import * as ResourceUtils from './ResourceUtils.js';
18
18
  import * as SASSSourceMapping from './SASSSourceMapping.js';
19
19
  import * as StylesSourceMapping from './StylesSourceMapping.js';
20
+ import * as SymbolizedError from './SymbolizedError.js';
20
21
  import * as TempFile from './TempFile.js';
21
22
 
22
23
  export {
@@ -35,5 +36,6 @@ export {
35
36
  ResourceUtils,
36
37
  SASSSourceMapping,
37
38
  StylesSourceMapping,
39
+ SymbolizedError,
38
40
  TempFile,
39
41
  };
@@ -155,6 +155,10 @@ const issueCodeHandlers = new Map<
155
155
  ],
156
156
  ]);
157
157
 
158
+ export function isIssueCodeSupported(code: Protocol.Audits.InspectorIssueCode): boolean {
159
+ return issueCodeHandlers.has(code);
160
+ }
161
+
158
162
  /**
159
163
  * Each issue reported by the backend can result in multiple `Issue` instances.
160
164
  * Handlers are simple functions hard-coded into a map.
@@ -4,6 +4,7 @@
4
4
 
5
5
  import * as Common from '../../core/common/common.js';
6
6
  import type * as Platform from '../../core/platform/platform.js';
7
+ import type * as Protocol from '../../generated/protocol.js';
7
8
 
8
9
  import type {RawFrame} from './Trie.js';
9
10
 
@@ -140,3 +141,21 @@ export function parseRawFramesFromErrorStack(stack: string): RawFrame[] {
140
141
  }
141
142
  return rawFrames;
142
143
  }
144
+
145
+ /**
146
+ * Error#stack output only contains script URLs. In some cases we are able to
147
+ * retrieve additional exception details from V8 that we can use to augment
148
+ * the parsed Error#stack with script IDs.
149
+ */
150
+ export function augmentRawFramesWithScriptIds(
151
+ rawFrames: RawFrame[], protocolStackTrace: Protocol.Runtime.StackTrace): void {
152
+ for (const rawFrame of rawFrames) {
153
+ const protocolFrame = protocolStackTrace.callFrames.find(
154
+ frame => rawFrame.url === frame.url && rawFrame.lineNumber === frame.lineNumber &&
155
+ rawFrame.columnNumber === frame.columnNumber);
156
+ if (protocolFrame) {
157
+ // @ts-expect-error scriptId is a readonly property.
158
+ rawFrame.scriptId = protocolFrame.scriptId;
159
+ }
160
+ }
161
+ }