chrome-devtools-frontend 1.0.1675430 → 1.0.1678416

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 (308) hide show
  1. package/AUTHORS +1 -0
  2. package/WATCHLISTS +0 -4
  3. package/front_end/core/common/EventTarget.ts +0 -5
  4. package/front_end/core/common/Settings.ts +0 -66
  5. package/front_end/core/host/InspectorFrontendHostAPI.ts +1 -0
  6. package/front_end/core/host/UserMetrics.ts +5 -0
  7. package/front_end/core/root/Runtime.ts +5 -5
  8. package/front_end/core/sdk/CSSMetadata.ts +5 -9
  9. package/front_end/core/sdk/CSSPropertyParserMatchers.ts +16 -34
  10. package/front_end/core/sdk/DebuggerModel.ts +92 -57
  11. package/front_end/core/sdk/EmulationModel.ts +2 -1
  12. package/front_end/core/sdk/NetworkManager.ts +16 -2
  13. package/front_end/core/sdk/OverlayModel.ts +19 -9
  14. package/front_end/core/sdk/OverlayPersistentHighlighter.ts +10 -4
  15. package/front_end/core/sdk/ResourceTreeModel.ts +20 -1
  16. package/front_end/core/sdk/SDKSettings.ts +117 -0
  17. package/front_end/core/sdk/Script.ts +9 -53
  18. package/front_end/core/sdk/sdk-meta.ts +0 -431
  19. package/front_end/devtools_compatibility.js +1 -0
  20. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +213 -23
  21. package/front_end/entrypoints/inspector_main/InspectorMain.ts +6 -5
  22. package/front_end/entrypoints/inspector_main/RenderingOptions.ts +14 -15
  23. package/front_end/entrypoints/inspector_main/inspector_main-meta.ts +157 -0
  24. package/front_end/entrypoints/main/MainImpl.ts +32 -0
  25. package/front_end/entrypoints/shell/shell.ts +0 -1
  26. package/front_end/foundation/Universe.ts +8 -0
  27. package/front_end/generated/InspectorBackendCommands.ts +8 -8
  28. package/front_end/generated/SupportedCSSProperties.ts +53 -4
  29. package/front_end/generated/protocol-mapping.d.ts +27 -21
  30. package/front_end/generated/protocol-proxy-api.d.ts +22 -17
  31. package/front_end/generated/protocol.ts +43 -18
  32. package/front_end/models/ai_assistance/AiAgent2.ts +47 -2
  33. package/front_end/models/ai_assistance/AiConversation.ts +22 -5
  34. package/front_end/models/ai_assistance/README.md +52 -26
  35. package/front_end/models/ai_assistance/agents/AiAgent.ts +54 -8
  36. package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +1 -1
  37. package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +7 -194
  38. package/front_end/models/ai_assistance/agents/StorageAgent.ts +21 -87
  39. package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +2 -1
  40. package/front_end/models/ai_assistance/ai_assistance.ts +24 -0
  41. package/front_end/models/ai_assistance/contexts/PerformanceTraceContext.ts +124 -0
  42. package/front_end/models/ai_assistance/contexts/StorageContext.ts +100 -0
  43. package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +69 -1
  44. package/front_end/models/ai_assistance/skills/README.md +63 -1
  45. package/front_end/models/ai_assistance/skills/Skill.ts +1 -1
  46. package/front_end/models/ai_assistance/skills/SkillRegistry.ts +4 -0
  47. package/front_end/models/ai_assistance/skills/accessibility.md +7 -0
  48. package/front_end/models/ai_assistance/skills/performance.md +15 -1
  49. package/front_end/models/ai_assistance/skills/sources.md +16 -0
  50. package/front_end/models/ai_assistance/skills/storage.md +31 -0
  51. package/front_end/models/ai_assistance/tools/GetDetailedCallTree.ts +107 -0
  52. package/front_end/models/ai_assistance/tools/GetFunctionCode.ts +122 -0
  53. package/front_end/models/ai_assistance/tools/GetResourceContent.ts +127 -0
  54. package/front_end/models/ai_assistance/tools/GetSourceContent.ts +101 -0
  55. package/front_end/models/ai_assistance/tools/GetTraceEventByKey.ts +83 -0
  56. package/front_end/models/ai_assistance/tools/GetTraceMainThreadSummary.ts +106 -0
  57. package/front_end/models/ai_assistance/tools/GetTraceNetworkSummary.ts +104 -0
  58. package/front_end/models/ai_assistance/tools/ListPageOrigins.ts +95 -0
  59. package/front_end/models/ai_assistance/tools/ListSources.ts +116 -0
  60. package/front_end/models/ai_assistance/tools/RunLighthouse.ts +89 -0
  61. package/front_end/models/ai_assistance/tools/SelectTraceEventByKey.ts +90 -0
  62. package/front_end/models/ai_assistance/tools/Tool.ts +26 -1
  63. package/front_end/models/ai_assistance/tools/ToolRegistry.ts +22 -0
  64. package/front_end/models/bindings/CSSWorkspaceBinding.ts +4 -0
  65. package/front_end/models/bindings/CompilerScriptMapping.ts +4 -0
  66. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +8 -0
  67. package/front_end/models/bindings/ResourceScriptMapping.ts +3 -201
  68. package/front_end/models/bindings/SASSSourceMapping.ts +6 -0
  69. package/front_end/models/breakpoints/BreakpointManager.ts +2 -49
  70. package/front_end/models/comment_manager/CommentManager.ts +141 -0
  71. package/front_end/models/comment_manager/comment_manager.ts +9 -0
  72. package/front_end/models/heap_snapshot/HeapSnapshotModel.ts +27 -0
  73. package/front_end/models/heap_snapshot/HeapSnapshotProxy.ts +10 -2
  74. package/front_end/models/issues_manager/descriptions/connectionAllowlistEmbeddingRequirementNotSatisfied.md +26 -0
  75. package/front_end/models/issues_manager/descriptions/connectionAllowlistIFrameAttributeLoosensEmbeddingRequirement.md +19 -0
  76. package/front_end/models/issues_manager/descriptions/connectionAllowlistInvalidAllowConnectionAllowlistFrom.md +21 -0
  77. package/front_end/models/javascript_metadata/NativeFunctions.js +6 -6
  78. package/front_end/models/persistence/IsolatedFileSystem.ts +7 -8
  79. package/front_end/models/persistence/IsolatedFileSystemManager.ts +2 -2
  80. package/front_end/models/persistence/PlatformFileSystem.ts +1 -1
  81. package/front_end/models/persistence/persistence-meta.ts +9 -9
  82. package/front_end/models/trace/types/TraceEvents.ts +36 -0
  83. package/front_end/panels/accessibility/ARIAAttributesView.ts +3 -3
  84. package/front_end/panels/accessibility/AccessibilityAnnouncementRecordingView.ts +25 -0
  85. package/front_end/panels/accessibility/AccessibilityNodeView.ts +36 -36
  86. package/front_end/panels/accessibility/AccessibilitySidebarView.ts +9 -0
  87. package/front_end/panels/accessibility/AccessibilityStrings.ts +168 -168
  88. package/front_end/panels/accessibility/SourceOrderView.ts +7 -7
  89. package/front_end/panels/accessibility/accessibility-meta.ts +2 -2
  90. package/front_end/panels/accessibility/accessibility.ts +2 -0
  91. package/front_end/panels/ai_assistance/AiAssistancePanel.ts +5 -5
  92. package/front_end/panels/ai_assistance/components/AIv2MarkdownRenderer.ts +2 -3
  93. package/front_end/panels/ai_assistance/components/ChatInput.ts +2 -2
  94. package/front_end/panels/ai_assistance/components/ChatMessage.ts +92 -12
  95. package/front_end/panels/ai_assistance/components/chatMessage.css +6 -0
  96. package/front_end/panels/application/ApplicationPanelSidebar.ts +10 -4
  97. package/front_end/panels/application/IndexedDBViews.ts +65 -63
  98. package/front_end/panels/application/StorageView.ts +116 -45
  99. package/front_end/panels/application/WebMCPView.ts +16 -7
  100. package/front_end/panels/application/application-meta.ts +11 -0
  101. package/front_end/panels/application/components/AdsView.ts +1 -1
  102. package/front_end/panels/common/AiCodeCompletionSummaryToolbar.ts +5 -5
  103. package/front_end/panels/common/BadgeNotification.ts +8 -8
  104. package/front_end/panels/common/ExtensionPanel.ts +9 -8
  105. package/front_end/panels/common/ExtensionServer.ts +21 -1
  106. package/front_end/panels/common/GdpSignUpDialog.ts +16 -16
  107. package/front_end/panels/common/GeminiRebrandPromoDialog.ts +5 -6
  108. package/front_end/panels/common/PersistenceUtils.ts +2 -2
  109. package/front_end/panels/common/common.ts +0 -97
  110. package/front_end/panels/console/ConsoleInsightTeaser.ts +2 -2
  111. package/front_end/panels/console/ConsolePanel.ts +4 -0
  112. package/front_end/panels/console/ConsolePinPane.ts +2 -2
  113. package/front_end/panels/console/ConsolePrompt.ts +12 -0
  114. package/front_end/panels/console/ConsoleView.ts +31 -20
  115. package/front_end/panels/console/ConsoleViewMessage.ts +37 -13
  116. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +2 -2
  117. package/front_end/panels/css_overview/CSSOverviewModel.ts +1 -1
  118. package/front_end/panels/elements/ElementStatePaneWidget.ts +2 -1
  119. package/front_end/panels/elements/ElementsTreeElement.ts +455 -372
  120. package/front_end/panels/elements/LayoutPane.ts +2 -8
  121. package/front_end/panels/elements/StylePropertyTreeElement.ts +16 -15
  122. package/front_end/panels/elements/elements-meta.ts +152 -10
  123. package/front_end/panels/elements/elements.ts +0 -2
  124. package/front_end/panels/emulation/DeviceModeView.ts +9 -1
  125. package/front_end/panels/event_listeners/EventListenersView.ts +8 -4
  126. package/front_end/panels/issues/AffectedTrackingSitesView.ts +25 -14
  127. package/front_end/panels/lighthouse/LighthouseController.ts +3 -2
  128. package/front_end/panels/media/PlayerMessagesView.ts +149 -68
  129. package/front_end/panels/network/BinaryResourceView.ts +134 -81
  130. package/front_end/panels/network/EventSourceMessagesView.ts +10 -10
  131. package/front_end/panels/network/FetchHeaderCommenting.ts +291 -0
  132. package/front_end/panels/network/NetworkConfigView.ts +10 -10
  133. package/front_end/panels/network/NetworkDataGridNode.ts +14 -14
  134. package/front_end/panels/network/NetworkItemView.ts +27 -28
  135. package/front_end/panels/network/NetworkLogView.ts +137 -38
  136. package/front_end/panels/network/NetworkLogViewColumns.ts +35 -35
  137. package/front_end/panels/network/NetworkManageCustomHeadersView.ts +1 -1
  138. package/front_end/panels/network/NetworkPanel.ts +2 -2
  139. package/front_end/panels/network/RequestConditionsDrawer.ts +5 -5
  140. package/front_end/panels/network/RequestCookiesView.ts +4 -4
  141. package/front_end/panels/network/RequestHeadersView.ts +5 -5
  142. package/front_end/panels/network/RequestPayloadView.ts +4 -3
  143. package/front_end/panels/network/RequestTimingView.ts +8 -8
  144. package/front_end/panels/network/ResourceChunkView.ts +1 -1
  145. package/front_end/panels/network/ResourceDirectSocketChunkView.ts +1 -1
  146. package/front_end/panels/network/ResourceWebSocketFrameView.ts +16 -16
  147. package/front_end/panels/network/binaryResourceView.css +14 -12
  148. package/front_end/panels/network/components/DirectSocketConnectionView.ts +2 -2
  149. package/front_end/panels/network/components/HeaderSectionRow.ts +1 -1
  150. package/front_end/panels/network/components/RequestTrustTokensView.ts +2 -2
  151. package/front_end/panels/network/network-meta.ts +1 -1
  152. package/front_end/panels/network/network.ts +2 -0
  153. package/front_end/panels/profiler/HeapDetachedElementsDataGrid.ts +0 -1
  154. package/front_end/panels/profiler/HeapSnapshotView.ts +0 -2
  155. package/front_end/panels/profiler/heapProfiler.css +0 -9
  156. package/front_end/panels/recorder/RecorderPanel.ts +2 -3
  157. package/front_end/panels/screencast/ScreencastView.ts +148 -138
  158. package/front_end/panels/sources/AiCodeCompletionPlugin.ts +2 -2
  159. package/front_end/panels/sources/BreakpointsView.ts +2 -2
  160. package/front_end/panels/sources/DebuggerPlugin.ts +10 -59
  161. package/front_end/panels/sources/NavigatorView.ts +2 -1
  162. package/front_end/panels/sources/ScopeChainSidebarPane.ts +1 -1
  163. package/front_end/panels/sources/SourcesPanel.ts +23 -73
  164. package/front_end/panels/sources/SourcesView.ts +248 -157
  165. package/front_end/panels/sources/TabbedEditorContainer.ts +118 -23
  166. package/front_end/panels/sources/UISourceCodeFrame.ts +5 -9
  167. package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +4 -2
  168. package/front_end/panels/sources/sources-meta.ts +52 -0
  169. package/front_end/panels/timeline/TimelineController.ts +36 -64
  170. package/front_end/panels/timeline/TimelinePanel.ts +11 -8
  171. package/front_end/panels/timeline/TimelineUIUtils.ts +5 -2
  172. package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +2 -2
  173. package/front_end/panels/timeline/timelinePanel.css +0 -10
  174. package/front_end/panels/utils/utils.ts +7 -7
  175. package/front_end/services/tracing/PerformanceTracing.ts +5 -17
  176. package/front_end/third_party/chromium/README.chromium +1 -1
  177. package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
  178. package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
  179. package/front_end/third_party/codemirror.next/package.json +2 -2
  180. package/front_end/third_party/codemirror.next/rebuild.sh +4 -1
  181. package/front_end/ui/comments/CommentAnchorResolver.ts +430 -35
  182. package/front_end/ui/comments/CommentOverlayManager.ts +635 -0
  183. package/front_end/ui/comments/CommentsOverlayWidget.ts +134 -0
  184. package/front_end/ui/comments/comments.ts +4 -0
  185. package/front_end/ui/comments/commentsOverlay.css +49 -0
  186. package/front_end/{panels/common → ui/components/dialogs}/FreDialog.ts +6 -6
  187. package/front_end/ui/components/dialogs/TypeToAllowDialog.ts +96 -0
  188. package/front_end/ui/components/dialogs/dialogs.ts +4 -0
  189. package/front_end/ui/components/settings/SettingCheckbox.ts +3 -3
  190. package/front_end/{panels/common → ui/components/text_editor}/AiCodeCompletionDisclaimer.ts +13 -13
  191. package/front_end/ui/components/text_editor/AiCodeCompletionProvider.ts +7 -6
  192. package/front_end/{panels/common → ui/components/text_editor}/AiCodeCompletionTeaser.ts +43 -46
  193. package/front_end/ui/components/text_editor/AiCodeGenerationProvider.ts +22 -26
  194. package/front_end/{panels/common → ui/components/text_editor}/AiCodeGenerationTeaser.ts +10 -10
  195. package/front_end/{panels/common → ui/components/text_editor}/AiCodeGenerationUpgradeDialog.ts +5 -5
  196. package/front_end/ui/components/text_editor/text_editor.ts +4 -0
  197. package/front_end/ui/legacy/Toolbar.ts +1 -1
  198. package/front_end/ui/legacy/UIUtils.ts +0 -56
  199. package/front_end/ui/legacy/View.ts +10 -4
  200. package/front_end/ui/legacy/Widget.ts +10 -1
  201. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +2 -1
  202. package/front_end/ui/legacy/components/color_picker/ContrastOverlay.ts +5 -4
  203. package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +11 -3
  204. package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +507 -209
  205. package/front_end/ui/legacy/components/object_ui/objectPropertiesSection.css +5 -0
  206. package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +11 -16
  207. package/front_end/ui/legacy/components/settings_ui/SettingsUI.ts +5 -12
  208. package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.ts +38 -20
  209. package/front_end/ui/legacy/components/source_frame/JSONView.ts +12 -2
  210. package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +3 -3
  211. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +37 -6
  212. package/front_end/ui/legacy/components/source_frame/StreamingContentHexView.ts +22 -4
  213. package/front_end/ui/settings/SettingUIRegistration.ts +55 -6
  214. package/front_end/ui/visual_logging/KnownContextValues.ts +3 -0
  215. package/mcp/mcp.ts +6 -1
  216. package/package.json +6 -6
  217. package/front_end/Images/toolbarResizerVertical.png +0 -0
  218. package/front_end/emulated_devices/MotoG4-landscape.svg +0 -155
  219. package/front_end/emulated_devices/MotoG4-portrait.svg +0 -155
  220. package/front_end/emulated_devices/Nexus5X-landscape.svg +0 -19
  221. package/front_end/emulated_devices/Nexus5X-portrait.svg +0 -19
  222. package/front_end/emulated_devices/Nexus6P-landscape.svg +0 -50
  223. package/front_end/emulated_devices/Nexus6P-portrait.svg +0 -54
  224. package/front_end/emulated_devices/google-nest-hub-horizontal.png +0 -0
  225. package/front_end/emulated_devices/google-nest-hub-max-horizontal.png +0 -0
  226. package/front_end/emulated_devices/google-nexus-5-horizontal-default-1x.png +0 -0
  227. package/front_end/emulated_devices/google-nexus-5-horizontal-default-2x.png +0 -0
  228. package/front_end/emulated_devices/google-nexus-5-horizontal-keyboard-1x.png +0 -0
  229. package/front_end/emulated_devices/google-nexus-5-horizontal-keyboard-2x.png +0 -0
  230. package/front_end/emulated_devices/google-nexus-5-horizontal-navigation-1x.png +0 -0
  231. package/front_end/emulated_devices/google-nexus-5-horizontal-navigation-2x.png +0 -0
  232. package/front_end/emulated_devices/google-nexus-5-vertical-default-1x.png +0 -0
  233. package/front_end/emulated_devices/google-nexus-5-vertical-default-2x.png +0 -0
  234. package/front_end/emulated_devices/google-nexus-5-vertical-keyboard-1x.png +0 -0
  235. package/front_end/emulated_devices/google-nexus-5-vertical-keyboard-2x.png +0 -0
  236. package/front_end/emulated_devices/google-nexus-5-vertical-navigation-1x.png +0 -0
  237. package/front_end/emulated_devices/google-nexus-5-vertical-navigation-2x.png +0 -0
  238. package/front_end/emulated_devices/google-nexus-5x-horizontal-default-1x.png +0 -0
  239. package/front_end/emulated_devices/google-nexus-5x-horizontal-default-2x.png +0 -0
  240. package/front_end/emulated_devices/google-nexus-5x-horizontal-keyboard-1x.png +0 -0
  241. package/front_end/emulated_devices/google-nexus-5x-horizontal-keyboard-2x.png +0 -0
  242. package/front_end/emulated_devices/google-nexus-5x-horizontal-navigation-1x.png +0 -0
  243. package/front_end/emulated_devices/google-nexus-5x-horizontal-navigation-2x.png +0 -0
  244. package/front_end/emulated_devices/google-nexus-5x-vertical-default-1x.png +0 -0
  245. package/front_end/emulated_devices/google-nexus-5x-vertical-default-2x.png +0 -0
  246. package/front_end/emulated_devices/google-nexus-5x-vertical-keyboard-1x.png +0 -0
  247. package/front_end/emulated_devices/google-nexus-5x-vertical-keyboard-2x.png +0 -0
  248. package/front_end/emulated_devices/google-nexus-5x-vertical-navigation-1x.png +0 -0
  249. package/front_end/emulated_devices/google-nexus-5x-vertical-navigation-2x.png +0 -0
  250. package/front_end/emulated_devices/iPad-landscape.svg +0 -73
  251. package/front_end/emulated_devices/iPad-portrait.svg +0 -76
  252. package/front_end/emulated_devices/iPhone5-landscape.svg +0 -99
  253. package/front_end/emulated_devices/iPhone5-portrait.svg +0 -83
  254. package/front_end/emulated_devices/iPhone6-landscape.svg +0 -111
  255. package/front_end/emulated_devices/iPhone6-portrait.svg +0 -116
  256. package/front_end/emulated_devices/iPhone6Plus-landscape.svg +0 -118
  257. package/front_end/emulated_devices/iPhone6Plus-portrait.svg +0 -116
  258. package/front_end/emulated_devices/optimized/MotoG4-landscape.avif +0 -0
  259. package/front_end/emulated_devices/optimized/MotoG4-portrait.avif +0 -0
  260. package/front_end/emulated_devices/optimized/Nexus5X-landscape.avif +0 -0
  261. package/front_end/emulated_devices/optimized/Nexus5X-portrait.avif +0 -0
  262. package/front_end/emulated_devices/optimized/Nexus6P-landscape.avif +0 -0
  263. package/front_end/emulated_devices/optimized/Nexus6P-portrait.avif +0 -0
  264. package/front_end/emulated_devices/optimized/README.md +0 -9
  265. package/front_end/emulated_devices/optimized/google-nest-hub-horizontal.avif +0 -0
  266. package/front_end/emulated_devices/optimized/google-nest-hub-max-horizontal.avif +0 -0
  267. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-1x.avif +0 -0
  268. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-default-2x.avif +0 -0
  269. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-1x.avif +0 -0
  270. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-keyboard-2x.avif +0 -0
  271. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-1x.avif +0 -0
  272. package/front_end/emulated_devices/optimized/google-nexus-5-horizontal-navigation-2x.avif +0 -0
  273. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-1x.avif +0 -0
  274. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-default-2x.avif +0 -0
  275. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-1x.avif +0 -0
  276. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-keyboard-2x.avif +0 -0
  277. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-1x.avif +0 -0
  278. package/front_end/emulated_devices/optimized/google-nexus-5-vertical-navigation-2x.avif +0 -0
  279. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-1x.avif +0 -0
  280. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-default-2x.avif +0 -0
  281. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-1x.avif +0 -0
  282. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-keyboard-2x.avif +0 -0
  283. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-1x.avif +0 -0
  284. package/front_end/emulated_devices/optimized/google-nexus-5x-horizontal-navigation-2x.avif +0 -0
  285. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-1x.avif +0 -0
  286. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-default-2x.avif +0 -0
  287. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-1x.avif +0 -0
  288. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-keyboard-2x.avif +0 -0
  289. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-1x.avif +0 -0
  290. package/front_end/emulated_devices/optimized/google-nexus-5x-vertical-navigation-2x.avif +0 -0
  291. package/front_end/emulated_devices/optimized/iPad-landscape.avif +0 -0
  292. package/front_end/emulated_devices/optimized/iPad-portrait.avif +0 -0
  293. package/front_end/emulated_devices/optimized/iPhone5-landscape.avif +0 -0
  294. package/front_end/emulated_devices/optimized/iPhone5-portrait.avif +0 -0
  295. package/front_end/emulated_devices/optimized/iPhone6-landscape.avif +0 -0
  296. package/front_end/emulated_devices/optimized/iPhone6-portrait.avif +0 -0
  297. package/front_end/emulated_devices/optimized/iPhone6Plus-landscape.avif +0 -0
  298. package/front_end/emulated_devices/optimized/iPhone6Plus-portrait.avif +0 -0
  299. package/front_end/emulated_devices/optimized/optimized_images.gni +0 -53
  300. package/front_end/models/ai_assistance/agents/README.md +0 -136
  301. package/front_end/panels/elements/ElementsTreeOutlineRenderer.ts +0 -89
  302. package/front_end/ui/legacy/components/object_ui/object_ui-meta.ts +0 -27
  303. /package/front_end/{panels/common → ui/components/dialogs}/freDialog.css +0 -0
  304. /package/front_end/{panels/common/common.css → ui/components/dialogs/typeToAllowDialog.css} +0 -0
  305. /package/front_end/{panels/common → ui/components/text_editor}/aiCodeCompletionDisclaimer.css +0 -0
  306. /package/front_end/{panels/common → ui/components/text_editor}/aiCodeCompletionTeaser.css +0 -0
  307. /package/front_end/{panels/common → ui/components/text_editor}/aiCodeGenerationTeaser.css +0 -0
  308. /package/front_end/{panels/common → ui/components/text_editor}/aiCodeGenerationUpgradeDialog.css +0 -0
@@ -8,8 +8,13 @@
8
8
  opacity: 60%;
9
9
  }
10
10
 
11
+ :host {
12
+ display: block;
13
+ }
14
+
11
15
  .object-properties-section {
12
16
  padding: 0;
17
+ margin: 0;
13
18
  color: var(--sys-color-on-surface);
14
19
  display: flex;
15
20
  flex-direction: column;
@@ -89,14 +89,14 @@ export class CommandMenu {
89
89
  }
90
90
 
91
91
  static createSettingCommand<V>(setting: Common.Settings.Setting<V>, title: Common.UIString.LocalizedString, value: V,
92
- settingUIDescriptor?: SettingsUI.SettingUIRegistration.SettingUIDescriptor): Command {
93
- const uiDescriptor = settingUIDescriptor ?? SettingsUI.SettingUIRegistration.maybeResolve(setting.descriptor());
94
- const category = uiDescriptor?.category ?? setting.category();
95
- if (!category) {
92
+ settingUI?: SettingsUI.SettingUIRegistration.SettingUI): Command {
93
+ const ui = settingUI ?? SettingsUI.SettingUIRegistration.maybeResolve(setting.descriptor());
94
+ const category = ui?.category;
95
+ if (!category || !ui) {
96
96
  throw new Error(`Creating '${title}' setting command failed. Setting has no category.`);
97
97
  }
98
- const tags = uiDescriptor?.tags?.map(tag => tag()).join('\0') ?? setting.tags() ?? '';
99
- const reloadRequired = Boolean(uiDescriptor?.reloadRequired ?? setting.reloadRequired());
98
+ const tags = ui.tags;
99
+ const reloadRequired = ui.reloadRequired;
100
100
 
101
101
  return CommandMenu.createCommand({
102
102
  category: Common.Settings.getLocalizedSettingsCategory(category),
@@ -116,12 +116,8 @@ export class CommandMenu {
116
116
  i18nString(UIStrings.settingsChangedReloadDevTools));
117
117
  }
118
118
  },
119
- availableHandler,
119
+ availableHandler: () => setting.get() !== value,
120
120
  });
121
-
122
- function availableHandler(): boolean {
123
- return setting.get() !== value;
124
- }
125
121
  }
126
122
 
127
123
  static createActionCommand(options: ActionCommandOptions): Command {
@@ -212,8 +208,8 @@ export class CommandMenu {
212
208
  // Populate allowlisted settings.
213
209
  const settingsRegistrations = SettingsUI.SettingUIRegistration.getRegisteredSettings();
214
210
  for (const registeredSettingUI of settingsRegistrations) {
215
- const options = registeredSettingUI.uiDescriptor.options;
216
- if (!options || !registeredSettingUI.uiDescriptor.category) {
211
+ const settingUI = SettingsUI.SettingUIRegistration.resolve(registeredSettingUI.descriptor);
212
+ if (!settingUI.options.length || !settingUI.category) {
217
213
  continue;
218
214
  }
219
215
  let setting: Common.Settings.Setting<unknown>;
@@ -227,9 +223,8 @@ export class CommandMenu {
227
223
  } else {
228
224
  setting = Common.Settings.Settings.instance().resolve(registeredSettingUI.descriptor);
229
225
  }
230
- for (const pair of options) {
231
- this.#commands.push(
232
- CommandMenu.createSettingCommand(setting, pair.title(), pair.value, registeredSettingUI.uiDescriptor));
226
+ for (const option of settingUI.options) {
227
+ this.#commands.push(CommandMenu.createSettingCommand(setting, option.title, option.value, settingUI));
233
228
  }
234
229
  }
235
230
  }
@@ -44,16 +44,10 @@ export function createSettingCheckbox(
44
44
 
45
45
  export function renderSettingSelect(setting: Common.Settings.Setting<unknown>, subtitle?: string,
46
46
  disabled?: boolean): TemplateResult {
47
- const uiDescriptor = SettingUIRegistration.SettingUIRegistration.maybeResolve(setting.descriptor());
48
- const name = uiDescriptor?.title?.() ?? setting.title();
49
- const options = uiDescriptor?.options?.map(opt => ({
50
- value: opt.value,
51
- title: opt.title(),
52
- text: typeof opt.text === 'function' ? opt.text() : opt.text,
53
- raw: opt.raw,
54
- })) ??
55
- setting.options();
56
- const requiresReload = Boolean(uiDescriptor?.reloadRequired ?? setting.reloadRequired());
47
+ const uiDescriptor = SettingUIRegistration.SettingUIRegistration.resolve(setting.descriptor());
48
+ const name = uiDescriptor.title;
49
+ const options = uiDescriptor.options;
50
+ const requiresReload = uiDescriptor.reloadRequired;
57
51
  const controlId = UI.ARIAUtils.nextId('labelledControl');
58
52
  const reloadWarningRef = createRef<HTMLParagraphElement>();
59
53
 
@@ -115,8 +109,7 @@ export const renderControlForSetting = function(setting: Common.Settings.Setting
115
109
  case Common.Settings.SettingType.BOOLEAN: {
116
110
  const onchange = (): void => {
117
111
  const uiDescriptor = SettingUIRegistration.SettingUIRegistration.maybeResolve(setting.descriptor());
118
- const requiresReload = Boolean(uiDescriptor?.reloadRequired ?? setting.reloadRequired());
119
- if (requiresReload) {
112
+ if (uiDescriptor?.reloadRequired) {
120
113
  UI.InspectorView.InspectorView.instance().displayReloadRequiredWarning(
121
114
  i18nString(UIStrings.settingsChangedReloadDevTools));
122
115
  }
@@ -36,30 +36,18 @@ export class BinaryResourceViewFactory {
36
36
  return new TextUtils.ContentData.ContentData(this.base64(), /* isBase64 */ true, 'text/plain', 'utf-8').text;
37
37
  }
38
38
 
39
- createBase64View(): ResourceSourceFrame {
40
- const resourceFrame = new ResourceSourceFrame(
41
- TextUtils.StaticContentProvider.StaticContentProvider.fromString(
42
- this.contentUrl, this.resourceType, this.streamingContent.content().base64),
43
- this.resourceType.canonicalMimeType(), {lineNumbers: false, lineWrapping: true});
44
- this.streamingContent.addEventListener(TextUtils.StreamingContentData.Events.CHUNK_ADDED, () => {
45
- void resourceFrame.setContent(this.base64());
46
- });
47
- return resourceFrame;
39
+ createBase64View(element?: HTMLElement): ResourceSourceFrame {
40
+ return new StreamingResourceSourceFrame(this.streamingContent, () => this.base64(), this.contentUrl,
41
+ this.resourceType, {lineNumbers: false, lineWrapping: true}, element);
48
42
  }
49
43
 
50
- createHexView(): StreamingContentHexView {
51
- return new StreamingContentHexView(this.streamingContent);
44
+ createHexView(element?: HTMLElement): StreamingContentHexView {
45
+ return new StreamingContentHexView(this.streamingContent, element);
52
46
  }
53
47
 
54
- createUtf8View(): ResourceSourceFrame {
55
- const resourceFrame = new ResourceSourceFrame(
56
- TextUtils.StaticContentProvider.StaticContentProvider.fromString(
57
- this.contentUrl, this.resourceType, this.utf8()),
58
- this.resourceType.canonicalMimeType(), {lineNumbers: true, lineWrapping: true});
59
- this.streamingContent.addEventListener(TextUtils.StreamingContentData.Events.CHUNK_ADDED, () => {
60
- void resourceFrame.setContent(this.utf8());
61
- });
62
- return resourceFrame;
48
+ createUtf8View(element?: HTMLElement): ResourceSourceFrame {
49
+ return new StreamingResourceSourceFrame(this.streamingContent, () => this.utf8(), this.contentUrl,
50
+ this.resourceType, {lineNumbers: true, lineWrapping: true}, element);
63
51
  }
64
52
 
65
53
  static #uint8ArrayToHexString(uint8Array: Uint8Array): string {
@@ -78,3 +66,33 @@ export class BinaryResourceViewFactory {
78
66
  return hex;
79
67
  }
80
68
  }
69
+
70
+ class StreamingResourceSourceFrame extends ResourceSourceFrame {
71
+ readonly #streamingContent: TextUtils.StreamingContentData.StreamingContentData;
72
+ readonly #getContent: () => string;
73
+
74
+ constructor(streamingContent: TextUtils.StreamingContentData.StreamingContentData, getContent: () => string,
75
+ contentUrl: Platform.DevToolsPath.UrlString, resourceType: Common.ResourceType.ResourceType,
76
+ options: {lineNumbers: boolean, lineWrapping: boolean}, element?: HTMLElement) {
77
+ super(TextUtils.StaticContentProvider.StaticContentProvider.fromString(contentUrl, resourceType, getContent()),
78
+ resourceType.canonicalMimeType(), options, element);
79
+ this.#streamingContent = streamingContent;
80
+ this.#getContent = getContent;
81
+ }
82
+
83
+ override wasShown(): void {
84
+ super.wasShown();
85
+ this.#streamingContent.addEventListener(TextUtils.StreamingContentData.Events.CHUNK_ADDED, this.#onChunkAdded,
86
+ this);
87
+ }
88
+
89
+ override willHide(): void {
90
+ super.willHide();
91
+ this.#streamingContent.removeEventListener(TextUtils.StreamingContentData.Events.CHUNK_ADDED, this.#onChunkAdded,
92
+ this);
93
+ }
94
+
95
+ #onChunkAdded(): void {
96
+ void this.setContent(this.#getContent());
97
+ }
98
+ }
@@ -34,7 +34,10 @@ const DEFAULT_VIEW = (input: ViewInput, _output: ViewOutput, target: HTMLElement
34
34
  const title = html`<span>${titleText}</span>`;
35
35
  render(html`
36
36
  <style>${jsonViewStyles}</style>
37
- ${ObjectUI.ObjectPropertiesSection.renderObjectPropertiesSection(input.objectTree, title)}
37
+ ${UI.Widget.widget(ObjectUI.ObjectPropertiesSection.ObjectPropertiesSectionWidget, {
38
+ objectTree: input.objectTree,
39
+ title,
40
+ })}
38
41
  `,
39
42
  target, {
40
43
 
@@ -94,6 +97,8 @@ export class JSONView extends UI.Widget.VBox implements UI.SearchableView.Search
94
97
  if (this.objectTree) {
95
98
  this.objectTree.removeEventListener(ObjectUI.ObjectPropertiesSection.ObjectTreeNodeBase.Events.CHILDREN_CHANGED,
96
99
  this.#onChildrenChanged, this);
100
+ this.objectTree.removeEventListener(ObjectUI.ObjectPropertiesSection.ObjectTreeNodeBase.Events.EXPANDED_CHANGED,
101
+ this.#onChildrenChanged, this);
97
102
  }
98
103
  this.#parsedJSON = parsedJSON;
99
104
  this.objectTree = null;
@@ -187,6 +192,8 @@ export class JSONView extends UI.Widget.VBox implements UI.SearchableView.Search
187
192
  }
188
193
  this.objectTree.addEventListener(ObjectUI.ObjectPropertiesSection.ObjectTreeNodeBase.Events.CHILDREN_CHANGED,
189
194
  this.#onChildrenChanged, this);
195
+ this.objectTree.addEventListener(ObjectUI.ObjectPropertiesSection.ObjectTreeNodeBase.Events.EXPANDED_CHANGED,
196
+ this.#onChildrenChanged, this);
190
197
  }
191
198
 
192
199
  #onChildrenChanged(): void {
@@ -222,7 +229,8 @@ export class JSONView extends UI.Widget.VBox implements UI.SearchableView.Search
222
229
  }
223
230
  }
224
231
 
225
- performSearch(searchConfig: UI.SearchableView.SearchConfig, shouldJump: boolean, jumpBackwards?: boolean): void {
232
+ async performSearch(searchConfig: UI.SearchableView.SearchConfig, shouldJump: boolean,
233
+ jumpBackwards?: boolean): Promise<void> {
226
234
  this.initialize();
227
235
  this.onSearchCanceled();
228
236
  const searchRegex = searchConfig.toSearchRegex(true).regex;
@@ -230,6 +238,8 @@ export class JSONView extends UI.Widget.VBox implements UI.SearchableView.Search
230
238
  return;
231
239
  }
232
240
 
241
+ await this.objectTree.populateChildrenIfNeeded();
242
+
233
243
  this.search.search(this.objectTree, jumpBackwards ?? false, (node, closeTag) => {
234
244
  if (closeTag || !searchRegex) {
235
245
  return [];
@@ -57,14 +57,14 @@ export class ResourceSourceFrame extends SourceFrameImpl {
57
57
  readonly #resource: TextUtils.ContentProvider.ContentProvider;
58
58
  readonly #givenContentType: string;
59
59
 
60
- constructor(
61
- resource: TextUtils.ContentProvider.ContentProvider, givenContentType: string, options?: SourceFrameOptions) {
60
+ constructor(resource: TextUtils.ContentProvider.ContentProvider, givenContentType: string,
61
+ options?: SourceFrameOptions, element?: HTMLElement) {
62
62
  const isStreamingProvider = TextUtils.ContentProvider.isStreamingContentProvider(resource);
63
63
 
64
64
  const lazyContent = isStreamingProvider ?
65
65
  () => resource.requestStreamingContent().then(TextUtils.StreamingContentData.asContentDataOrError) :
66
66
  () => resource.requestContentData();
67
- super(lazyContent, options);
67
+ super(lazyContent, options, element);
68
68
 
69
69
  this.#givenContentType = givenContentType;
70
70
  this.#resource = resource;
@@ -11,9 +11,9 @@ import * as Root from '../../../../core/root/root.js';
11
11
  import * as SDK from '../../../../core/sdk/sdk.js';
12
12
  import * as TextUtils from '../../../../core/text_utils/text_utils.js';
13
13
  import * as Formatter from '../../../../models/formatter/formatter.js';
14
- import * as PanelCommon from '../../../../panels/common/common.js';
15
14
  import * as CodeMirror from '../../../../third_party/codemirror.next/codemirror.next.js';
16
15
  import * as CodeHighlighter from '../../../components/code_highlighter/code_highlighter.js';
16
+ import * as Dialogs from '../../../components/dialogs/dialogs.js';
17
17
  import * as TextEditor from '../../../components/text_editor/text_editor.js';
18
18
  import * as VisualLogging from '../../../visual_logging/visual_logging.js';
19
19
  import * as UI from '../../legacy.js';
@@ -151,15 +151,16 @@ export class SourceFrameImpl extends Common.ObjectWrapper.eventMixin<EventTypes,
151
151
  private lineToScrollTo: number|null;
152
152
  private selectionToSet: TextUtils.TextRange.TextRange|null;
153
153
  private loadedInternal: boolean;
154
+ private positionPercentageToReveal: number|null = null;
154
155
  private contentRequested: boolean;
155
156
  private wasmDisassemblyInternal: TextUtils.WasmDisassembly.WasmDisassembly|null;
156
157
  contentSet: boolean;
157
158
  private selfXssWarningDisabledSetting: Common.Settings.Setting<boolean>;
158
159
 
159
- constructor(
160
- lazyContent: () => Promise<TextUtils.ContentData.ContentDataOrError>,
161
- private readonly options: SourceFrameOptions = {}) {
162
- super({
160
+ constructor(lazyContent: () => Promise<TextUtils.ContentData.ContentDataOrError>,
161
+ private readonly options: SourceFrameOptions = {}, element?: HTMLElement) {
162
+ // @ts-expect-error
163
+ super(...(element ? [element] : []), {
163
164
  title: i18nString(UIStrings.source),
164
165
  viewId: 'source',
165
166
  });
@@ -312,7 +313,7 @@ export class SourceFrameImpl extends Common.ObjectWrapper.eventMixin<EventTypes,
312
313
  }
313
314
 
314
315
  async showSelfXssWarning(): Promise<void> {
315
- const allowPasting = await PanelCommon.TypeToAllowDialog.show({
316
+ const allowPasting = await Dialogs.TypeToAllowDialog.TypeToAllowDialog.show({
316
317
  jslogContext: {
317
318
  dialog: 'self-xss-warning',
318
319
  input: 'allow-pasting',
@@ -583,6 +584,35 @@ export class SourceFrameImpl extends Common.ObjectWrapper.eventMixin<EventTypes,
583
584
  }
584
585
  }
585
586
 
587
+ getPositionPercentage(): number {
588
+ const {textEditor} = this;
589
+ if (!textEditor) {
590
+ return 0;
591
+ }
592
+ const docLength = textEditor.state.doc.length;
593
+ if (docLength === 0) {
594
+ return 0;
595
+ }
596
+ const pos = textEditor.state.selection.main.head;
597
+ return pos / docLength;
598
+ }
599
+
600
+ setPositionPercentage(percentage: number): void {
601
+ this.positionPercentageToReveal = percentage;
602
+ this.#setPercentagePositionIfNeeded();
603
+ }
604
+
605
+ #setPercentagePositionIfNeeded(): void {
606
+ if (this.positionPercentageToReveal !== null && this.loadedInternal) {
607
+ const docLength = this.textEditor.state.doc.length;
608
+ if (docLength > 0) {
609
+ const pos = Math.floor(docLength * this.positionPercentageToReveal);
610
+ this.revealPosition(pos);
611
+ }
612
+ this.positionPercentageToReveal = null;
613
+ }
614
+ }
615
+
586
616
  revealPosition(position: RevealPosition, shouldHighlight?: boolean): void {
587
617
  this.lineToScrollTo = null;
588
618
  this.selectionToSet = null;
@@ -664,6 +694,7 @@ export class SourceFrameImpl extends Common.ObjectWrapper.eventMixin<EventTypes,
664
694
  }
665
695
 
666
696
  private wasShownOrLoaded(): void {
697
+ this.#setPercentagePositionIfNeeded();
667
698
  this.#revealPositionIfNeeded();
668
699
  this.#setSelectionIfNeeded();
669
700
  this.#scrollToLineIfNeeded();
@@ -19,10 +19,11 @@ const MEMORY_TRANSFER_MIN_CHUNK_SIZE = 1000;
19
19
  class LinearMemoryInspectorView extends UI.Widget.VBox {
20
20
  #memory: Uint8Array = new Uint8Array([0]);
21
21
  #address = 0;
22
+ #positionPercentageToReveal: number|null = null;
22
23
  #inspector = new LinearMemoryInspectorComponents.LinearMemoryInspector.LinearMemoryInspector();
23
24
 
24
- constructor() {
25
- super();
25
+ constructor(element?: HTMLElement) {
26
+ super(element);
26
27
  this.#inspector.addEventListener(
27
28
  LinearMemoryInspectorComponents.LinearMemoryInspector.Events.MEMORY_REQUEST, this.#memoryRequested, this);
28
29
  this.#inspector.addEventListener(
@@ -40,9 +41,26 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
40
41
 
41
42
  setMemory(memory: Uint8Array<ArrayBuffer>): void {
42
43
  this.#memory = memory;
44
+ if (this.#positionPercentageToReveal !== null && this.#memory.length > 0) {
45
+ this.#address = Math.floor(this.#memory.length * this.#positionPercentageToReveal);
46
+ this.#positionPercentageToReveal = null;
47
+ }
43
48
  this.refreshData();
44
49
  }
45
50
 
51
+ getPositionPercentage(): number {
52
+ return this.#memory.length === 0 ? 0 : this.#address / this.#memory.length;
53
+ }
54
+
55
+ setPositionPercentage(percentage: number): void {
56
+ this.#positionPercentageToReveal = percentage;
57
+ if (this.#memory.length > 0 && this.#memory.length !== 1) { // 1 is default empty size
58
+ this.#address = Math.floor(this.#memory.length * percentage);
59
+ this.#positionPercentageToReveal = null;
60
+ this.refreshData();
61
+ }
62
+ }
63
+
46
64
  refreshData(): void {
47
65
  // TODO(szuend): The following lines are copied from `LinearMemoryInspectorController`. We can't reuse them
48
66
  // as depending on a module in `panels/` from a component is a layering violation.
@@ -94,8 +112,8 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
94
112
  export class StreamingContentHexView extends LinearMemoryInspectorView {
95
113
  readonly #streamingContentData: TextUtils.StreamingContentData.StreamingContentData;
96
114
 
97
- constructor(streamingContentData: TextUtils.StreamingContentData.StreamingContentData) {
98
- super();
115
+ constructor(streamingContentData: TextUtils.StreamingContentData.StreamingContentData, element?: HTMLElement) {
116
+ super(element);
99
117
  this.#streamingContentData = streamingContentData;
100
118
  }
101
119
 
@@ -84,18 +84,67 @@ export function getRegisteredSettings(): readonly RegisteredSettingUI[] {
84
84
  return Array.from(combined.values());
85
85
  }
86
86
 
87
- export function maybeResolve(settingDescriptor: Common.Settings.SettingDescriptor<unknown>): SettingUIDescriptor|null {
87
+ export interface SimpleSettingOption {
88
+ value: string|boolean;
89
+ title: Platform.UIString.LocalizedString;
90
+ text?: Platform.UIString.LocalizedString|string;
91
+ raw?: boolean;
92
+ }
93
+
94
+ export class SettingUI {
95
+ readonly #raw: SettingUIDescriptor;
96
+
97
+ constructor(raw: SettingUIDescriptor) {
98
+ this.#raw = raw;
99
+ }
100
+
101
+ get title(): Platform.UIString.LocalizedString {
102
+ return this.#raw.title?.() ?? ('' as Platform.UIString.LocalizedString);
103
+ }
104
+
105
+ get category(): Common.SettingRegistration.SettingCategory|null {
106
+ return this.#raw.category ?? null;
107
+ }
108
+
109
+ get order(): number|null {
110
+ return this.#raw.order ?? null;
111
+ }
112
+
113
+ get tags(): string {
114
+ return this.#raw.tags ? this.#raw.tags.map(tag => tag()).join('\0') : '';
115
+ }
116
+
117
+ get options(): SimpleSettingOption[] {
118
+ return this.#raw.options?.map(opt => ({
119
+ value: opt.value,
120
+ title: opt.title(),
121
+ text: typeof opt.text === 'function' ? opt.text() : opt.text,
122
+ raw: opt.raw,
123
+ })) ??
124
+ [];
125
+ }
126
+
127
+ get reloadRequired(): boolean {
128
+ return Boolean(this.#raw.reloadRequired);
129
+ }
130
+
131
+ get learnMore(): Common.SettingRegistration.LearnMore|null {
132
+ return this.#raw.learnMore ?? null;
133
+ }
134
+ }
135
+
136
+ export function maybeResolve(settingDescriptor: Common.Settings.SettingDescriptor<unknown>): SettingUI|null {
88
137
  const settingUI = registeredSettings.get(settingDescriptor.name) ??
89
138
  getRegisteredSettings().find(registered => registered.descriptor.name === settingDescriptor.name);
90
- return settingUI?.uiDescriptor ?? null;
139
+ return settingUI ? new SettingUI(settingUI.uiDescriptor) : null;
91
140
  }
92
141
 
93
- export function resolve(settingDescriptor: Common.Settings.SettingDescriptor<unknown>): SettingUIDescriptor {
94
- const uiDescriptor = maybeResolve(settingDescriptor);
95
- if (!uiDescriptor) {
142
+ export function resolve(settingDescriptor: Common.Settings.SettingDescriptor<unknown>): SettingUI {
143
+ const ui = maybeResolve(settingDescriptor);
144
+ if (!ui) {
96
145
  throw new Error(`No UI descriptor registered for setting '${settingDescriptor.name}'`);
97
146
  }
98
- return uiDescriptor;
147
+ return ui;
99
148
  }
100
149
 
101
150
  export function resetSettings(): void {
@@ -510,6 +510,7 @@ export const knownContextValues = new Set([
510
510
  'ar',
511
511
  'architecture',
512
512
  'aria-attributes',
513
+ 'aria-live-recording',
513
514
  'arial',
514
515
  'as',
515
516
  'ascent-override',
@@ -1484,6 +1485,7 @@ export const knownContextValues = new Set([
1484
1485
  'ease-out',
1485
1486
  'edit',
1486
1487
  'edit-and-resend',
1488
+ 'edit-and-resend-as-fetch',
1487
1489
  'edit-attribute',
1488
1490
  'edit-breakpoint',
1489
1491
  'edit-item',
@@ -3958,6 +3960,7 @@ export const knownContextValues = new Set([
3958
3960
  'stop-ignoring-this-retainer',
3959
3961
  'stop-opacity',
3960
3962
  'storage',
3963
+ 'storage-breakdown-widget',
3961
3964
  'storage-bucket',
3962
3965
  'storage-buckets',
3963
3966
  'storage-cookie',
package/mcp/mcp.ts CHANGED
@@ -19,11 +19,12 @@ import '../front_end/models/badges/badges-meta.js';
19
19
  export * as Common from '../front_end/core/common/common.js';
20
20
  export * as Host from '../front_end/core/host/host.js';
21
21
  export * as I18n from '../front_end/core/i18n/i18n.js';
22
+ export * as Platform from '../front_end/core/platform/platform.js';
22
23
  export type * as CDPConnection from '../front_end/core/protocol_client/CDPConnection.js';
23
24
  export {ConnectionTransport} from '../front_end/core/protocol_client/ConnectionTransport.js';
24
25
  export * as ProtocolClient from '../front_end/core/protocol_client/protocol_client.js';
25
26
  export {PuppeteerDevToolsConnection} from '../front_end/core/protocol_client/PuppeteerDevToolsConnection.js';
26
- export {DebuggerModel} from '../front_end/core/sdk/DebuggerModel.js';
27
+ export {DebuggerModel, skipAllPausesSettingDescriptor} from '../front_end/core/sdk/DebuggerModel.js';
27
28
  export * as NetworkManager from '../front_end/core/sdk/NetworkManager.js';
28
29
  export {RuntimeModel} from '../front_end/core/sdk/RuntimeModel.js';
29
30
  export * as SourceMapManager from '../front_end/core/sdk/SourceMapManager.js';
@@ -59,5 +60,9 @@ export {
59
60
  export * as MarkdownIssueDescription from '../front_end/models/issues_manager/MarkdownIssueDescription.js';
60
61
  export * as StackTrace from '../front_end/models/stack_trace/stack_trace.js';
61
62
  export * as TraceEngine from '../front_end/models/trace/trace.js';
63
+ export {
64
+ DefaultCategories as TracingDefaultCategories,
65
+ OptionalCategories as TracingOptionalCategories,
66
+ } from '../front_end/models/trace/types/TraceEvents.js';
62
67
  export {IgnoreListManager} from '../front_end/models/workspace/IgnoreListManager.js';
63
68
  export * as Marked from '../front_end/third_party/marked/marked.js';
package/package.json CHANGED
@@ -52,8 +52,8 @@
52
52
  "@typescript-eslint/utils": "8.64.0",
53
53
  "@web/rollup-plugin-import-meta-assets": "2.3.3",
54
54
  "chai": "6.2.2",
55
- "cssnano": "7.1.2",
56
- "cssnano-preset-lite": "4.0.4",
55
+ "cssnano": "8.0.2",
56
+ "cssnano-preset-lite": "5.0.1",
57
57
  "esbuild": "0.25.1",
58
58
  "eslint": "9.39.5",
59
59
  "eslint-plugin-eslint-plugin": "7.4.2",
@@ -63,7 +63,7 @@
63
63
  "eslint-plugin-mocha": "10.5.0",
64
64
  "globals": "17.7.0",
65
65
  "js-rouge": "3.2.0",
66
- "js-yaml": "4.1.1",
66
+ "js-yaml": "4.3.1",
67
67
  "karma": "6.4.4",
68
68
  "karma-chrome-launcher": "3.2.0",
69
69
  "karma-coverage": "2.2.1",
@@ -72,9 +72,9 @@
72
72
  "karma-spec-reporter": "0.0.36",
73
73
  "license-checker": "25.0.1",
74
74
  "lit-analyzer": "2.0.3",
75
- "mocha": "11.7.5",
75
+ "mocha": "11.8.0",
76
76
  "ora": "9.0.0",
77
- "postcss": "8.5.15",
77
+ "postcss": "8.5.25",
78
78
  "puppeteer-core": "25.3.0",
79
79
  "rollup": "4.60.4",
80
80
  "rollup-plugin-sourcemaps2": "0.5.4",
@@ -92,5 +92,5 @@
92
92
  "webidl2": "24.5.0",
93
93
  "yargs": "17.7.2"
94
94
  },
95
- "version": "1.0.1675430"
95
+ "version": "1.0.1678416"
96
96
  }