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
@@ -134,6 +134,13 @@ const FULL_FIDELITY_RESEND_TYPES = new Set([
134
134
  Common.ResourceType.resourceTypes.SourceMapStyleSheet,
135
135
  ]);
136
136
 
137
+ /** Resource types eligible for resend but with reduced fidelity. */
138
+ const PARTIAL_FIDELITY_RESEND_TYPES = new Set([
139
+ Common.ResourceType.resourceTypes.Document,
140
+ Common.ResourceType.resourceTypes.Prefetch,
141
+ Common.ResourceType.resourceTypes.Ping,
142
+ ]);
143
+
137
144
  const CONNECTION_TYPES = new Map([
138
145
  ['2g', Protocol.Network.ConnectionType.Cellular2g],
139
146
  ['3g', Protocol.Network.ConnectionType.Cellular3g],
@@ -211,11 +218,18 @@ export class NetworkManager extends SDKModel<EventTypes> {
211
218
  return requestToManagerMap.get(request) || null;
212
219
  }
213
220
 
214
- static canResendRequest(request: NetworkRequest): boolean {
221
+ static canResendRequest(request: NetworkRequest, fullFidelity: boolean): boolean {
215
222
  if (!requestToManagerMap.get(request) || !request.backendRequestId() || request.isRedirect()) {
216
223
  return false;
217
224
  }
218
- return FULL_FIDELITY_RESEND_TYPES.has(request.resourceType());
225
+ const type = request.resourceType();
226
+ if (FULL_FIDELITY_RESEND_TYPES.has(type)) {
227
+ return true;
228
+ }
229
+ if (!fullFidelity && PARTIAL_FIDELITY_RESEND_TYPES.has(type)) {
230
+ return true;
231
+ }
232
+ return false;
219
233
  }
220
234
 
221
235
  static replayRequest(request: NetworkRequest): void {
@@ -14,6 +14,16 @@ import {DeferredDOMNode, DOMModel, type DOMNode, DOMNodeEvents, Events as DOMMod
14
14
  import {OverlayPersistentHighlighter} from './OverlayPersistentHighlighter.js';
15
15
  import type {RemoteObject} from './RemoteObject.js';
16
16
  import {SDKModel} from './SDKModel.js';
17
+ import {
18
+ apcaSettingDescriptor,
19
+ showAdHighlightsSettingDescriptor,
20
+ showDebugBordersSettingDescriptor,
21
+ showFPSCounterSettingDescriptor,
22
+ showLayoutShiftRegionsSettingDescriptor,
23
+ showMetricsRulersSettingDescriptor,
24
+ showPaintRectsSettingDescriptor,
25
+ showScrollBottleneckRectsSettingDescriptor,
26
+ } from './SDKSettings.js';
17
27
  import {Capability, type Target} from './Target.js';
18
28
  import type {TargetManager} from './TargetManager.js';
19
29
 
@@ -126,12 +136,12 @@ export class OverlayModel extends SDKModel<EventTypes> implements ProtocolProxyA
126
136
  this.#defaultHighlighter = new DefaultHighlighter(this);
127
137
  this.#highlighter = this.#defaultHighlighter;
128
138
 
129
- this.#showPaintRectsSetting = settings.moduleSetting<boolean>('show-paint-rects');
130
- this.#showLayoutShiftRegionsSetting = settings.moduleSetting<boolean>('show-layout-shift-regions');
131
- this.#showAdHighlightsSetting = settings.moduleSetting<boolean>('show-ad-highlights');
132
- this.#showDebugBordersSetting = settings.moduleSetting<boolean>('show-debug-borders');
133
- this.#showFPSCounterSetting = settings.moduleSetting<boolean>('show-fps-counter');
134
- this.#showScrollBottleneckRectsSetting = settings.moduleSetting<boolean>('show-scroll-bottleneck-rects');
139
+ this.#showPaintRectsSetting = settings.resolve(showPaintRectsSettingDescriptor);
140
+ this.#showLayoutShiftRegionsSetting = settings.resolve(showLayoutShiftRegionsSettingDescriptor);
141
+ this.#showAdHighlightsSetting = settings.resolve(showAdHighlightsSettingDescriptor);
142
+ this.#showDebugBordersSetting = settings.resolve(showDebugBordersSettingDescriptor);
143
+ this.#showFPSCounterSetting = settings.resolve(showFPSCounterSettingDescriptor);
144
+ this.#showScrollBottleneckRectsSetting = settings.resolve(showScrollBottleneckRectsSettingDescriptor);
135
145
 
136
146
  if (!target.suspended()) {
137
147
  void this.overlayAgent.invoke_enable();
@@ -563,7 +573,7 @@ export class OverlayModel extends SDKModel<EventTypes> implements ProtocolProxyA
563
573
  private buildHighlightConfig(mode: string|undefined = 'all', showDetailedToolip: boolean|undefined = false):
564
574
  Protocol.Overlay.HighlightConfig {
565
575
  const settings = this.target().targetManager().settings;
566
- const showRulers = settings.moduleSetting('show-metrics-rulers').get();
576
+ const showRulers = settings.resolve(showMetricsRulersSettingDescriptor).get();
567
577
  const highlightConfig: Protocol.Overlay.HighlightConfig = {
568
578
  showInfo: mode === 'all' || mode === 'container-outline',
569
579
  showRulers,
@@ -573,8 +583,8 @@ export class OverlayModel extends SDKModel<EventTypes> implements ProtocolProxyA
573
583
  gridHighlightConfig: {},
574
584
  flexContainerHighlightConfig: {},
575
585
  flexItemHighlightConfig: {},
576
- contrastAlgorithm: settings.moduleSetting('apca').get() ? Protocol.Overlay.ContrastAlgorithm.Apca :
577
- Protocol.Overlay.ContrastAlgorithm.Aa,
586
+ contrastAlgorithm: settings.resolve(apcaSettingDescriptor).get() ? Protocol.Overlay.ContrastAlgorithm.Apca :
587
+ Protocol.Overlay.ContrastAlgorithm.Aa,
578
588
  };
579
589
 
580
590
  if (mode === 'all' || mode === 'content') {
@@ -8,6 +8,12 @@ import * as Platform from '../platform/platform.js';
8
8
 
9
9
  import type {DOMModel} from './DOMModel.js';
10
10
  import {OverlayColorGenerator} from './OverlayColorGenerator.js';
11
+ import {
12
+ extendGridLinesSettingDescriptor,
13
+ showGridAreasSettingDescriptor,
14
+ showGridLineLabelsSettingDescriptor,
15
+ showGridTrackSizesSettingDescriptor,
16
+ } from './SDKSettings.js';
11
17
 
12
18
  export const enum HighlightType {
13
19
  FLEX = 'FLEX',
@@ -57,10 +63,10 @@ export class OverlayPersistentHighlighter {
57
63
 
58
64
  this.#persistentHighlightSetting =
59
65
  settings.createLocalSetting<PersistentHighlightSettingItem[]>('persistent-highlight-setting', []);
60
- this.#showGridLineLabelsSetting = settings.moduleSetting<string>('show-grid-line-labels');
61
- this.#extendGridLinesSetting = settings.moduleSetting<boolean>('extend-grid-lines');
62
- this.#showGridAreasSetting = settings.moduleSetting<boolean>('show-grid-areas');
63
- this.#showGridTrackSizesSetting = settings.moduleSetting<boolean>('show-grid-track-sizes');
66
+ this.#showGridLineLabelsSetting = settings.resolve(showGridLineLabelsSettingDescriptor);
67
+ this.#extendGridLinesSetting = settings.resolve(extendGridLinesSettingDescriptor);
68
+ this.#showGridAreasSetting = settings.resolve(showGridAreasSettingDescriptor);
69
+ this.#showGridTrackSizesSetting = settings.resolve(showGridTrackSizesSettingDescriptor);
64
70
 
65
71
  this.#showGridLineLabelsSetting.addChangeListener(this.onSettingChange, this);
66
72
  this.#extendGridLinesSetting.addChangeListener(this.onSettingChange, this);
@@ -247,6 +247,18 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
247
247
  }
248
248
  }
249
249
 
250
+ navigatedWithinDocument(frameId: Protocol.Page.FrameId, url: string): void {
251
+ const frame = this.framesInternal.get(frameId);
252
+ if (!frame) {
253
+ return;
254
+ }
255
+ frame.navigatedWithinDocument(url as Platform.DevToolsPath.UrlString);
256
+ if (frame.isMainFrame()) {
257
+ this.target().setInspectedURL(frame.url);
258
+ }
259
+ this.dispatchEventToListeners(Events.FrameNavigatedWithinDocument, frame);
260
+ }
261
+
250
262
  frameDetached(frameId: Protocol.Page.FrameId, isSwap: boolean): void {
251
263
  // Do nothing unless cached resource tree is processed - it will overwrite everything.
252
264
  if (!this.#cachedResourcesProcessed) {
@@ -584,6 +596,7 @@ export enum Events {
584
596
  /* eslint-disable @typescript-eslint/naming-convention -- Used by web_tests. */
585
597
  FrameAdded = 'FrameAdded',
586
598
  FrameNavigated = 'FrameNavigated',
599
+ FrameNavigatedWithinDocument = 'FrameNavigatedWithinDocument',
587
600
  FrameDetached = 'FrameDetached',
588
601
  FrameResized = 'FrameResized',
589
602
  FrameWillNavigate = 'FrameWillNavigate',
@@ -607,6 +620,7 @@ export enum Events {
607
620
  export interface EventTypes {
608
621
  [Events.FrameAdded]: ResourceTreeFrame;
609
622
  [Events.FrameNavigated]: ResourceTreeFrame;
623
+ [Events.FrameNavigatedWithinDocument]: ResourceTreeFrame;
610
624
  [Events.FrameDetached]: {frame: ResourceTreeFrame, isSwap: boolean};
611
625
  [Events.FrameResized]: void;
612
626
  [Events.FrameWillNavigate]: ResourceTreeFrame;
@@ -736,6 +750,10 @@ export class ResourceTreeFrame {
736
750
  }
737
751
  }
738
752
 
753
+ navigatedWithinDocument(url: Platform.DevToolsPath.UrlString): void {
754
+ this.#url = url;
755
+ }
756
+
739
757
  resourceTreeModel(): ResourceTreeModel {
740
758
  return this.#model;
741
759
  }
@@ -1096,7 +1114,8 @@ export class PageDispatcher implements ProtocolProxyApi.PageDispatcher {
1096
1114
  frameStartedNavigating({}: Protocol.Page.FrameStartedNavigatingEvent): void {
1097
1115
  }
1098
1116
 
1099
- navigatedWithinDocument({}: Protocol.Page.NavigatedWithinDocumentEvent): void {
1117
+ navigatedWithinDocument({frameId, url}: Protocol.Page.NavigatedWithinDocumentEvent): void {
1118
+ this.#resourceTreeModel.navigatedWithinDocument(frameId, url);
1100
1119
  }
1101
1120
 
1102
1121
  frameResized(): void {
@@ -36,3 +36,120 @@ export const pauseOnCaughtExceptionSettingDescriptor: Common.Settings.SettingDes
36
36
  type: Common.Settings.SettingType.BOOLEAN,
37
37
  defaultValue: false,
38
38
  };
39
+
40
+ export const pauseOnUncaughtExceptionSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
41
+ name: 'pause-on-uncaught-exception',
42
+ type: Common.Settings.SettingType.BOOLEAN,
43
+ defaultValue: false,
44
+ };
45
+
46
+ export const javaScriptDisabledSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
47
+ name: 'java-script-disabled',
48
+ type: Common.Settings.SettingType.BOOLEAN,
49
+ defaultValue: false,
50
+ storageType: Common.Settings.SettingStorageType.SESSION,
51
+ };
52
+
53
+ export const disableAsyncStackTracesSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
54
+ name: 'disable-async-stack-traces',
55
+ type: Common.Settings.SettingType.BOOLEAN,
56
+ defaultValue: false,
57
+ };
58
+
59
+ export const breakpointsActiveSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
60
+ name: 'breakpoints-active',
61
+ type: Common.Settings.SettingType.BOOLEAN,
62
+ defaultValue: true,
63
+ storageType: Common.Settings.SettingStorageType.SESSION,
64
+ };
65
+
66
+ export const showMetricsRulersSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
67
+ name: 'show-metrics-rulers',
68
+ type: Common.Settings.SettingType.BOOLEAN,
69
+ defaultValue: false,
70
+ storageType: Common.Settings.SettingStorageType.SYNCED,
71
+ };
72
+
73
+ export const apcaSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
74
+ name: 'apca',
75
+ type: Common.Settings.SettingType.BOOLEAN,
76
+ defaultValue: false,
77
+ storageType: Common.Settings.SettingStorageType.SYNCED,
78
+ };
79
+
80
+ export const showGridAreasSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
81
+ name: 'show-grid-areas',
82
+ type: Common.Settings.SettingType.BOOLEAN,
83
+ defaultValue: false,
84
+ storageType: Common.Settings.SettingStorageType.SYNCED,
85
+ };
86
+
87
+ export const showGridTrackSizesSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
88
+ name: 'show-grid-track-sizes',
89
+ type: Common.Settings.SettingType.BOOLEAN,
90
+ defaultValue: false,
91
+ storageType: Common.Settings.SettingStorageType.SYNCED,
92
+ };
93
+
94
+ export const extendGridLinesSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
95
+ name: 'extend-grid-lines',
96
+ type: Common.Settings.SettingType.BOOLEAN,
97
+ defaultValue: false,
98
+ storageType: Common.Settings.SettingStorageType.SYNCED,
99
+ };
100
+
101
+ export const showGridLineLabelsSettingDescriptor: Common.Settings.SettingDescriptor<string> = {
102
+ name: 'show-grid-line-labels',
103
+ type: Common.Settings.SettingType.ENUM,
104
+ defaultValue: 'lineNumbers',
105
+ storageType: Common.Settings.SettingStorageType.SYNCED,
106
+ };
107
+
108
+ export const showPaintRectsSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
109
+ name: 'show-paint-rects',
110
+ type: Common.Settings.SettingType.BOOLEAN,
111
+ defaultValue: false,
112
+ storageType: Common.Settings.SettingStorageType.SESSION,
113
+ };
114
+
115
+ export const showLayoutShiftRegionsSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
116
+ name: 'show-layout-shift-regions',
117
+ type: Common.Settings.SettingType.BOOLEAN,
118
+ defaultValue: false,
119
+ storageType: Common.Settings.SettingStorageType.SESSION,
120
+ };
121
+
122
+ export const showAdHighlightsSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
123
+ name: 'show-ad-highlights',
124
+ type: Common.Settings.SettingType.BOOLEAN,
125
+ defaultValue: false,
126
+ storageType: Common.Settings.SettingStorageType.SESSION,
127
+ };
128
+
129
+ export const showDebugBordersSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
130
+ name: 'show-debug-borders',
131
+ type: Common.Settings.SettingType.BOOLEAN,
132
+ defaultValue: false,
133
+ storageType: Common.Settings.SettingStorageType.SESSION,
134
+ };
135
+
136
+ export const showFPSCounterSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
137
+ name: 'show-fps-counter',
138
+ type: Common.Settings.SettingType.BOOLEAN,
139
+ defaultValue: false,
140
+ storageType: Common.Settings.SettingStorageType.SESSION,
141
+ };
142
+
143
+ export const showScrollBottleneckRectsSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
144
+ name: 'show-scroll-bottleneck-rects',
145
+ type: Common.Settings.SettingType.BOOLEAN,
146
+ defaultValue: false,
147
+ storageType: Common.Settings.SettingStorageType.SESSION,
148
+ };
149
+
150
+ export const emulatePageFocusSettingDescriptor: Common.Settings.SettingDescriptor<boolean> = {
151
+ name: 'emulate-page-focus',
152
+ type: Common.Settings.SettingType.BOOLEAN,
153
+ defaultValue: false,
154
+ storageType: Common.Settings.SettingStorageType.LOCAL,
155
+ };
@@ -36,7 +36,6 @@ import * as TextUtils from '../text_utils/text_utils.js';
36
36
  import {
37
37
  COND_BREAKPOINT_SOURCE_URL,
38
38
  type DebuggerModel,
39
- Events,
40
39
  Location,
41
40
  LOGPOINT_SOURCE_URL,
42
41
  } from './DebuggerModel.js';
@@ -80,7 +79,6 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
80
79
  executionContextId: number;
81
80
  hash: string;
82
81
  readonly #isContentScript: boolean;
83
- readonly #isLiveEdit: boolean;
84
82
  sourceMapURL?: string;
85
83
  debugSymbols: Protocol.Debugger.DebugSymbols|null;
86
84
  hasSourceURL: boolean;
@@ -92,13 +90,13 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
92
90
  readonly #embedderName: Platform.DevToolsPath.UrlString|null;
93
91
  readonly isModule: boolean|null;
94
92
  readonly buildId: string|null;
95
- constructor(
96
- debuggerModel: DebuggerModel, scriptId: Protocol.Runtime.ScriptId, sourceURL: Platform.DevToolsPath.UrlString,
97
- startLine: number, startColumn: number, endLine: number, endColumn: number, executionContextId: number,
98
- hash: string, isContentScript: boolean, isLiveEdit: boolean, sourceMapURL: string|undefined,
99
- hasSourceURL: boolean, length: number, isModule: boolean|null, originStackTrace: Protocol.Runtime.StackTrace|null,
100
- codeOffset: number|null, scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null,
101
- embedderName: Platform.DevToolsPath.UrlString|null, buildId: string|null) {
93
+ constructor(debuggerModel: DebuggerModel, scriptId: Protocol.Runtime.ScriptId,
94
+ sourceURL: Platform.DevToolsPath.UrlString, startLine: number, startColumn: number, endLine: number,
95
+ endColumn: number, executionContextId: number, hash: string, isContentScript: boolean,
96
+ sourceMapURL: string|undefined, hasSourceURL: boolean, length: number, isModule: boolean|null,
97
+ originStackTrace: Protocol.Runtime.StackTrace|null, codeOffset: number|null, scriptLanguage: string|null,
98
+ debugSymbols: Protocol.Debugger.DebugSymbols|null, embedderName: Platform.DevToolsPath.UrlString|null,
99
+ buildId: string|null) {
102
100
  this.debuggerModel = debuggerModel;
103
101
  this.scriptId = scriptId;
104
102
  this.sourceURL = sourceURL;
@@ -112,7 +110,6 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
112
110
  this.executionContextId = executionContextId;
113
111
  this.hash = hash;
114
112
  this.#isContentScript = isContentScript;
115
- this.#isLiveEdit = isLiveEdit;
116
113
  this.sourceMapURL = sourceMapURL;
117
114
  this.debugSymbols = debugSymbols;
118
115
  this.hasSourceURL = hasSourceURL;
@@ -175,10 +172,6 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
175
172
  return this.debuggerModel.runtimeModel().executionContext(this.executionContextId);
176
173
  }
177
174
 
178
- isLiveEdit(): boolean {
179
- return this.#isLiveEdit;
180
- }
181
-
182
175
  contentURL(): Platform.DevToolsPath.UrlString {
183
176
  return this.sourceURL;
184
177
  }
@@ -261,8 +254,8 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
261
254
  requestContentData(): Promise<TextUtils.ContentData.ContentDataOrError> {
262
255
  if (!this.#contentPromise) {
263
256
  const fileSizeToCache = 65535; // We won't bother cacheing files under 64K
264
- if (this.hash && !this.#isLiveEdit && this.contentLength > fileSizeToCache) {
265
- // For large files that aren't live edits and have a hash, we keep a content-addressed cache
257
+ if (this.hash && this.contentLength > fileSizeToCache) {
258
+ // For large files that have a hash, we keep a content-addressed cache
266
259
  // so we don't need to load multiple copies or disassemble wasm modules multiple times.
267
260
  if (!scriptCacheInstance) {
268
261
  // Initialize script cache singleton. Add a finalizer for removing keys from the map.
@@ -331,43 +324,6 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
331
324
  return TextUtils.TextUtils.performSearchInSearchMatches(matches.result || [], query, caseSensitive, isRegex);
332
325
  }
333
326
 
334
- private appendSourceURLCommentIfNeeded(source: string): string {
335
- if (!this.hasSourceURL) {
336
- return source;
337
- }
338
- return source + '\n //# sourceURL=' + this.sourceURL;
339
- }
340
-
341
- async editSource(newSource: string): Promise<{
342
- changed: boolean,
343
- status: Protocol.Debugger.SetScriptSourceResponseStatus,
344
- exceptionDetails?: Protocol.Runtime.ExceptionDetails,
345
- }> {
346
- newSource = Script.trimSourceURLComment(newSource);
347
- // We append correct #sourceURL to script for consistency only. It's not actually needed for things to work correctly.
348
- newSource = this.appendSourceURLCommentIfNeeded(newSource);
349
-
350
- const oldSource = TextUtils.ContentData.ContentData.textOr(await this.requestContentData(), null);
351
- if (oldSource === newSource) {
352
- return {changed: false, status: Protocol.Debugger.SetScriptSourceResponseStatus.Ok};
353
- }
354
- const response = await this.debuggerModel.target().debuggerAgent().invoke_setScriptSource(
355
- {scriptId: this.scriptId, scriptSource: newSource, allowTopFrameEditing: true});
356
- if (response.getError()) {
357
- // Something went seriously wrong, like the V8 inspector no longer knowing about this script without
358
- // shutting down the Debugger agent etc.
359
- throw new Error(`Script#editSource failed for script with id ${this.scriptId}: ${response.getError()}`);
360
- }
361
-
362
- if (!response.getError() && response.status === Protocol.Debugger.SetScriptSourceResponseStatus.Ok) {
363
- this.#contentPromise =
364
- Promise.resolve(new TextUtils.ContentData.ContentData(newSource, /* isBase64 */ false, 'text/javascript'));
365
- }
366
-
367
- this.debuggerModel.dispatchEventToListeners(Events.ScriptSourceWasEdited, {script: this, status: response.status});
368
- return {changed: true, status: response.status, exceptionDetails: response.exceptionDetails};
369
- }
370
-
371
327
  rawLocation(lineNumber: number, columnNumber: number): Location|null {
372
328
  if (this.containsLocation(lineNumber, columnNumber)) {
373
329
  return new Location(this.debuggerModel, this.scriptId, lineNumber, columnNumber);