chrome-devtools-frontend 1.0.1652307 → 1.0.1656291
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.
- package/.agents/skills/fixing-skipped-tests/SKILL.md +32 -0
- package/.agents/skills/migrate-chromium-test/SKILL.md +144 -0
- package/.agents/skills/ui-eng-vision-local-lit-renderer/SKILL.md +116 -0
- package/.agents/skills/ui-eng-vision-logic-consolidator/SKILL.md +82 -0
- package/.agents/skills/ui-eng-vision-orchestrator/SKILL.md +123 -0
- package/.agents/skills/ui-eng-vision-test-scaffolder/SKILL.md +125 -0
- package/.agents/skills/ui-eng-vision-widget-promoter/SKILL.md +75 -0
- package/AUTHORS +1 -0
- package/config/owner/COMMON_OWNERS +0 -4
- package/docs/get_the_code.md +1 -2
- package/docs/playbook.md +1 -1
- package/docs/ui_engineering.md +3 -1
- package/eslint.config.mjs +0 -5
- package/front_end/Tests.js +1 -0
- package/front_end/core/common/Settings.ts +47 -30
- package/front_end/core/sdk/CPUThrottlingManager.ts +23 -167
- package/front_end/core/sdk/CSSMetadata.ts +23 -0
- package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +8 -4
- package/front_end/core/sdk/ConsoleModel.ts +13 -11
- package/front_end/core/sdk/DOMDebuggerModel.ts +11 -5
- package/front_end/core/sdk/DOMModel.ts +4 -0
- package/front_end/core/sdk/EmulationModel.ts +4 -0
- package/front_end/core/sdk/EventBreakpointsModel.ts +9 -5
- package/front_end/core/sdk/IsolateManager.ts +6 -6
- package/front_end/core/sdk/ResourceTreeModel.ts +8 -5
- package/front_end/core/sdk/TargetManager.ts +17 -0
- package/front_end/entrypoints/devtools_app/devtools_app.ts +0 -1
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +459 -74
- package/front_end/entrypoints/main/MainImpl.ts +12 -42
- package/front_end/foundation/Universe.ts +116 -3
- package/front_end/generated/InspectorBackendCommands.ts +11 -6
- package/front_end/generated/SupportedCSSProperties.js +124 -34
- package/front_end/generated/protocol-mapping.d.ts +8 -0
- package/front_end/generated/protocol-proxy-api.d.ts +15 -0
- package/front_end/generated/protocol.ts +94 -1
- package/front_end/models/ai_assistance/AiConversation.ts +2 -7
- package/front_end/models/ai_assistance/README.md +4 -3
- package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +1 -1
- package/front_end/models/ai_assistance/agents/NetworkAgent.snapshot.txt +1 -1
- package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +2 -2
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +13 -320
- package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +0 -24
- package/front_end/models/ai_assistance/agents/StylingAgent.ts +2 -358
- package/front_end/models/ai_assistance/ai_assistance.ts +6 -8
- package/front_end/models/ai_assistance/contexts/PerformanceTraceContext.ts +295 -0
- package/front_end/models/ai_assistance/contexts/RequestContext.snapshot.txt +0 -1
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +0 -2
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +10 -10
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +12 -11
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +6 -6
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +1 -14
- package/front_end/models/ai_assistance/skills/accessibility.md +4 -2
- package/front_end/models/ai_assistance/tools/GetElementAccessibilityDetails.ts +142 -0
- package/front_end/models/ai_assistance/tools/GetStyles.ts +1 -1
- package/front_end/models/ai_assistance/tools/README.md +21 -1
- package/front_end/models/ai_assistance/tools/{ResolveLighthousePath.ts → ResolveDevtoolsNodePath.ts} +18 -17
- package/front_end/models/ai_assistance/tools/Tool.ts +6 -1
- package/front_end/models/ai_assistance/tools/ToolRegistry.ts +4 -2
- package/front_end/models/autofill_manager/AutofillManager.ts +6 -15
- package/front_end/models/bindings/NetworkProject.ts +4 -8
- package/front_end/models/breakpoints/BreakpointManager.ts +9 -9
- package/front_end/models/emulation/DeviceModeModel.ts +24 -0
- package/front_end/models/emulation/EmulatedDevices.ts +108 -0
- package/front_end/models/heap_snapshot/HeapSnapshotModel.ts +36 -0
- package/front_end/models/heap_snapshot/HeapSnapshotProxy.ts +8 -0
- package/front_end/models/issues_manager/IssuesManager.ts +10 -6
- package/front_end/models/javascript_metadata/JavaScriptMetadata.ts +4 -5
- package/front_end/models/javascript_metadata/NativeFunctions.js +1 -1
- package/front_end/models/live-metrics/LiveMetrics.ts +6 -6
- package/front_end/models/live-metrics/web-vitals-injected/spec/spec.ts +5 -5
- package/front_end/models/live-metrics/web-vitals-injected/web-vitals-injected.ts +3 -3
- package/front_end/models/logs/LogManager.ts +25 -10
- package/front_end/models/logs/NetworkLog.ts +24 -19
- package/front_end/models/persistence/AutomaticFileSystemManager.ts +14 -13
- package/front_end/models/persistence/AutomaticFileSystemWorkspaceBinding.ts +26 -14
- package/front_end/models/persistence/IsolatedFileSystem.ts +9 -11
- package/front_end/models/persistence/IsolatedFileSystemManager.ts +22 -11
- package/front_end/models/persistence/NetworkPersistenceManager.ts +73 -44
- package/front_end/models/persistence/PersistenceImpl.ts +4 -5
- package/front_end/models/project_settings/ProjectSettingsModel.ts +12 -11
- package/front_end/models/trace/EntityMapper.ts +1 -1
- package/front_end/models/trace/handlers/ScreenshotsHandler.ts +14 -59
- package/front_end/panels/ai_assistance/AiAssistancePanel.ts +12 -38
- package/front_end/panels/ai_assistance/ExportConversation.ts +4 -1
- package/front_end/panels/ai_assistance/components/ChatInput.ts +2 -2
- package/front_end/panels/application/DeviceBoundSessionsView.ts +15 -3
- package/front_end/panels/application/FrameDetailsView.ts +2 -1
- package/front_end/panels/application/IndexedDBViews.ts +38 -36
- package/front_end/panels/application/ServiceWorkersView.ts +23 -16
- package/front_end/panels/application/components/AdsView.ts +4 -0
- package/front_end/panels/autofill/AutofillView.ts +1 -1
- package/front_end/panels/autofill/autofill-meta.ts +3 -2
- package/front_end/panels/common/CPUThrottlingOption.ts +142 -0
- package/front_end/panels/common/ThrottlingUtils.ts +9 -4
- package/front_end/panels/common/common.ts +1 -1
- package/front_end/panels/console/ConsoleViewMessage.ts +45 -0
- package/front_end/panels/elements/AccessibilityTreeUtils.ts +26 -15
- package/front_end/panels/elements/AccessibilityTreeView.ts +12 -9
- package/front_end/panels/elements/ElementsPanel.ts +0 -74
- package/front_end/panels/elements/ElementsTreeOutline.ts +5 -4
- package/front_end/panels/emulation/DeviceModeToolbar.ts +46 -45
- package/front_end/panels/layer_viewer/LayerTreeOutline.ts +118 -68
- package/front_end/panels/layer_viewer/Layers3DView.ts +1 -1
- package/front_end/panels/layer_viewer/layerTreeOutline.css +20 -13
- package/front_end/panels/layers/LayersPanel.ts +1 -1
- package/front_end/panels/mobile_throttling/CalibrationController.ts +6 -5
- package/front_end/panels/mobile_throttling/MobileThrottlingSelector.ts +1 -1
- package/front_end/panels/mobile_throttling/ThrottlingManager.ts +40 -13
- package/front_end/panels/mobile_throttling/ThrottlingPresets.ts +13 -17
- package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +79 -30
- package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +5 -0
- package/front_end/panels/network/LinkPreloadGenerator.ts +101 -0
- package/front_end/panels/network/NetworkLogView.ts +28 -9
- package/front_end/panels/network/NetworkPanel.ts +1 -63
- package/front_end/panels/network/RequestInitiatorView.ts +29 -4
- package/front_end/panels/network/components/HeaderSectionRow.css +9 -7
- package/front_end/panels/network/components/HeaderSectionRow.ts +20 -1
- package/front_end/panels/network/components/RequestHeaderSection.css +5 -3
- package/front_end/panels/network/components/RequestHeaderSection.ts +1 -2
- package/front_end/panels/network/components/RequestHeadersView.css +1 -1
- package/front_end/panels/network/network.ts +2 -0
- package/front_end/panels/profiler/HeapSnapshotView.ts +121 -33
- package/front_end/panels/profiler/ModuleUIStrings.ts +4 -0
- package/front_end/panels/security/SecurityPanel.ts +36 -23
- package/front_end/panels/settings/SettingsScreen.ts +18 -103
- package/front_end/panels/settings/settings-meta.ts +0 -24
- package/front_end/panels/timeline/TimelineController.ts +3 -2
- package/front_end/panels/timeline/TimelineHistoryManager.ts +38 -37
- package/front_end/panels/timeline/TimelinePanel.ts +52 -11
- package/front_end/panels/timeline/components/CPUThrottlingSelector.ts +20 -18
- package/front_end/panels/timeline/components/LiveMetricsView.ts +38 -38
- package/front_end/panels/timeline/components/MetricCard.ts +18 -18
- package/front_end/panels/timeline/components/liveMetricsView.css +6 -6
- package/front_end/panels/timeline/components/metricCard.css +4 -4
- package/front_end/panels/timeline/timelineFlamechartPopover.css +2 -0
- package/front_end/panels/utils/utils.ts +25 -24
- package/front_end/panels/whats_new/ReleaseNoteText.ts +3 -3
- package/front_end/panels/whats_new/resources/WNDT.md +1 -1
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/puppeteer/README.chromium +2 -2
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +34 -55
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +96 -83
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Browser.d.ts +10 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/BrowserContext.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/BrowserContext.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/BrowserContext.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/CDPSession.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/CDPSession.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/HTTPResponse.d.ts +3 -2
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/HTTPResponse.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/HTTPResponse.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Realm.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Realm.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Target.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/Target.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/locators/locators.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/api/locators/locators.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/HTTPResponse.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/HTTPResponse.js +2 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/HTTPResponse.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/core/Realm.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/bidi/core/Realm.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Frame.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/FrameManager.js +23 -13
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/HTTPResponse.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/HTTPResponse.js +4 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/HTTPResponse.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Input.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/LifecycleWatcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/LifecycleWatcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Target.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/Target.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/WebMCP.d.ts +3 -41
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/WebMCP.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/cdp/WebMCP.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/common/ConnectOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/node/BrowserLauncher.js +4 -2
- package/front_end/third_party/puppeteer/package/lib/puppeteer/node/BrowserLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/node/LaunchOptions.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/revisions.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/httpUtils.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/httpUtils.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/httpUtils.js +5 -5
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/httpUtils.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/puppeteer/util/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +34 -55
- package/front_end/third_party/puppeteer/package/package.json +4 -4
- package/front_end/third_party/puppeteer/package/src/api/Browser.ts +13 -1
- package/front_end/third_party/puppeteer/package/src/api/BrowserContext.ts +2 -3
- package/front_end/third_party/puppeteer/package/src/api/CDPSession.ts +3 -1
- package/front_end/third_party/puppeteer/package/src/api/HTTPResponse.ts +3 -2
- package/front_end/third_party/puppeteer/package/src/api/Realm.ts +1 -2
- package/front_end/third_party/puppeteer/package/src/api/Target.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/api/locators/locators.ts +1 -2
- package/front_end/third_party/puppeteer/package/src/bidi/HTTPResponse.ts +3 -1
- package/front_end/third_party/puppeteer/package/src/bidi/core/Realm.ts +1 -3
- package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +13 -3
- package/front_end/third_party/puppeteer/package/src/cdp/Frame.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/cdp/FrameManager.ts +24 -13
- package/front_end/third_party/puppeteer/package/src/cdp/HTTPResponse.ts +4 -1
- package/front_end/third_party/puppeteer/package/src/cdp/Input.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/cdp/LifecycleWatcher.ts +1 -4
- package/front_end/third_party/puppeteer/package/src/cdp/Target.ts +2 -4
- package/front_end/third_party/puppeteer/package/src/cdp/WebMCP.ts +7 -76
- package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +1 -4
- package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +4 -1
- package/front_end/third_party/puppeteer/package/src/node/LaunchOptions.ts +5 -0
- package/front_end/third_party/puppeteer/package/src/revisions.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/util/httpUtils.ts +5 -5
- package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
- package/front_end/third_party/puppeteer/third_party/parsel/README.chromium +1 -1
- package/front_end/ui/components/dialogs/Dialog.ts +3 -0
- package/front_end/ui/components/markdown_view/MarkdownLinksMap.ts +0 -7
- package/front_end/ui/helpers/OpenInNewTab.ts +15 -7
- package/front_end/ui/legacy/InspectorDrawerView.ts +7 -5
- package/front_end/ui/legacy/ListWidget.ts +12 -0
- package/front_end/ui/legacy/SplitWidget.ts +12 -11
- package/front_end/ui/legacy/TabbedPane.ts +1 -108
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +9 -0
- package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +192 -139
- package/front_end/ui/legacy/components/data_grid/DataGridExporter.ts +89 -0
- package/front_end/ui/legacy/components/data_grid/dataGrid.css +10 -0
- package/front_end/ui/legacy/components/data_grid/data_grid.ts +3 -1
- package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +8 -1
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +110 -17
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +89 -40
- package/front_end/ui/legacy/treeoutline.css +1 -1
- package/front_end/ui/visual_logging/KnownContextValues.ts +3 -0
- package/package.json +4 -3
- package/front_end/Images/navigationControls.png +0 -0
- package/front_end/Images/navigationControls_2x.png +0 -0
- package/front_end/Images/popoverArrows.png +0 -0
- package/front_end/entrypoints/greendev_floaty/FloatyEntrypoint.ts +0 -746
- package/front_end/entrypoints/greendev_floaty/floaty.css +0 -301
- package/front_end/entrypoints/greendev_floaty/floaty.html +0 -38
- package/front_end/entrypoints/greendev_floaty/greendev_floaty.ts +0 -415
- package/front_end/models/ai_assistance/agents/GreenDevAgent.ts +0 -834
- package/front_end/models/ai_assistance/agents/GreenDevAgentAntigravityCliSocketClient.ts +0 -53
- package/front_end/models/ai_assistance/agents/GreenDevAgentGeminiCliSocketClient.ts +0 -117
- package/front_end/models/annotations/AnnotationRepository.ts +0 -238
- package/front_end/models/annotations/AnnotationType.ts +0 -10
- package/front_end/models/annotations/README.md +0 -7
- package/front_end/models/annotations/annotations.ts +0 -6
- package/front_end/models/greendev/Prototypes.ts +0 -68
- package/front_end/models/greendev/README.md +0 -5
- package/front_end/models/greendev/greendev.ts +0 -5
- package/front_end/panels/common/Annotation.ts +0 -184
- package/front_end/panels/common/AnnotationManager.ts +0 -208
- package/front_end/panels/common/annotation.css +0 -40
- package/front_end/panels/greendev/GreenDevPanel.css +0 -282
- package/front_end/panels/greendev/GreenDevPanel.ts +0 -364
- package/front_end/panels/greendev/GreenDevShared.ts +0 -13
- package/front_end/panels/greendev/greendev-meta.ts +0 -52
- package/front_end/panels/greendev/greendev.ts +0 -9
|
@@ -71,6 +71,7 @@ const str_ = i18n.i18n.registerUIStrings('core/sdk/ConsoleModel.ts', UIStrings);
|
|
|
71
71
|
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
72
72
|
|
|
73
73
|
export class ConsoleModel extends SDKModel<EventTypes> {
|
|
74
|
+
readonly #console: Common.Console.Console;
|
|
74
75
|
#messages: ConsoleMessage[] = [];
|
|
75
76
|
readonly #messagesByTimestamp = new Platform.MapUtilities.Multimap<number, ConsoleMessage>();
|
|
76
77
|
readonly #messageByExceptionId = new Map<RuntimeModel, Map<number, ConsoleMessage>>();
|
|
@@ -82,6 +83,7 @@ export class ConsoleModel extends SDKModel<EventTypes> {
|
|
|
82
83
|
|
|
83
84
|
constructor(target: Target) {
|
|
84
85
|
super(target);
|
|
86
|
+
this.#console = target.targetManager().getConsole();
|
|
85
87
|
|
|
86
88
|
const resourceTreeModel = target.model(ResourceTreeModel);
|
|
87
89
|
if (!resourceTreeModel || resourceTreeModel.cachedResourcesLoaded()) {
|
|
@@ -159,7 +161,7 @@ export class ConsoleModel extends SDKModel<EventTypes> {
|
|
|
159
161
|
if ('error' in result) {
|
|
160
162
|
return;
|
|
161
163
|
}
|
|
162
|
-
await
|
|
164
|
+
await this.#console.showPromise();
|
|
163
165
|
this.dispatchEventToListeners(
|
|
164
166
|
Events.CommandEvaluated,
|
|
165
167
|
{result: result.object, commandMessage: originatingMessage, exceptionDetails: result.exceptionDetails});
|
|
@@ -297,9 +299,9 @@ export class ConsoleModel extends SDKModel<EventTypes> {
|
|
|
297
299
|
if (settings.moduleSetting('preserve-console-log').get()) {
|
|
298
300
|
const {frame} = event.data;
|
|
299
301
|
if (frame.backForwardCacheDetails.restoredFromCache) {
|
|
300
|
-
|
|
302
|
+
this.#console.log(i18nString(UIStrings.bfcacheNavigation, {PH1: frame.url}));
|
|
301
303
|
} else {
|
|
302
|
-
|
|
304
|
+
this.#console.log(i18nString(UIStrings.navigatedToS, {PH1: frame.url}));
|
|
303
305
|
}
|
|
304
306
|
}
|
|
305
307
|
}
|
|
@@ -418,6 +420,14 @@ export class ConsoleModel extends SDKModel<EventTypes> {
|
|
|
418
420
|
|
|
419
421
|
async saveToTempVariable(currentExecutionContext: ExecutionContext|null, remoteObject: RemoteObject|null):
|
|
420
422
|
Promise<void> {
|
|
423
|
+
const failedToSave = (result: RemoteObject|null): void => {
|
|
424
|
+
let message = i18nString(UIStrings.failedToSaveToTempVariable);
|
|
425
|
+
if (result) {
|
|
426
|
+
message = (message + ' ' + result.description as Common.UIString.LocalizedString);
|
|
427
|
+
}
|
|
428
|
+
this.#console.error(message);
|
|
429
|
+
};
|
|
430
|
+
|
|
421
431
|
if (!remoteObject || !currentExecutionContext) {
|
|
422
432
|
failedToSave(null);
|
|
423
433
|
return;
|
|
@@ -456,14 +466,6 @@ export class ConsoleModel extends SDKModel<EventTypes> {
|
|
|
456
466
|
this[name] = value;
|
|
457
467
|
return name;
|
|
458
468
|
}
|
|
459
|
-
|
|
460
|
-
function failedToSave(result: RemoteObject|null): void {
|
|
461
|
-
let message = i18nString(UIStrings.failedToSaveToTempVariable);
|
|
462
|
-
if (result) {
|
|
463
|
-
message = (message + ' ' + result.description as Common.UIString.LocalizedString);
|
|
464
|
-
}
|
|
465
|
-
Common.Console.Console.instance().error(message);
|
|
466
|
-
}
|
|
467
469
|
}
|
|
468
470
|
}
|
|
469
471
|
|
|
@@ -6,6 +6,7 @@ import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
|
|
|
6
6
|
import * as Protocol from '../../generated/protocol.js';
|
|
7
7
|
import type * as Common from '../common/common.js';
|
|
8
8
|
import * as Platform from '../platform/platform.js';
|
|
9
|
+
import * as Root from '../root/root.js';
|
|
9
10
|
|
|
10
11
|
import {CategorizedBreakpoint, Category} from './CategorizedBreakpoint.js';
|
|
11
12
|
import type {EventListenerPausedDetailsAuxData, Location} from './DebuggerModel.js';
|
|
@@ -528,8 +529,6 @@ export class DOMEventListenerBreakpoint extends CategorizedBreakpoint {
|
|
|
528
529
|
static readonly listener = 'listener:';
|
|
529
530
|
}
|
|
530
531
|
|
|
531
|
-
let domDebuggerManagerInstance: DOMDebuggerManager;
|
|
532
|
-
|
|
533
532
|
export class DOMDebuggerManager implements SDKModelObserver<DOMDebuggerModel> {
|
|
534
533
|
readonly #xhrBreakpointsSetting: Common.Settings.Setting<Array<{url: string, enabled: boolean}>>;
|
|
535
534
|
readonly #xhrBreakpoints = new Map<string, boolean>();
|
|
@@ -671,11 +670,18 @@ export class DOMDebuggerManager implements SDKModelObserver<DOMDebuggerModel> {
|
|
|
671
670
|
targetManager?: TargetManager,
|
|
672
671
|
} = {forceNew: null}): DOMDebuggerManager {
|
|
673
672
|
const {forceNew, targetManager} = opts;
|
|
674
|
-
if (!
|
|
675
|
-
|
|
673
|
+
if (!Root.DevToolsContext.globalInstance().has(DOMDebuggerManager) || forceNew) {
|
|
674
|
+
Root.DevToolsContext.globalInstance().set(
|
|
675
|
+
DOMDebuggerManager,
|
|
676
|
+
new DOMDebuggerManager(targetManager ?? TargetManager.instance()),
|
|
677
|
+
);
|
|
676
678
|
}
|
|
677
679
|
|
|
678
|
-
return
|
|
680
|
+
return Root.DevToolsContext.globalInstance().get(DOMDebuggerManager);
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
static removeInstance(): void {
|
|
684
|
+
Root.DevToolsContext.globalInstance().delete(DOMDebuggerManager);
|
|
679
685
|
}
|
|
680
686
|
|
|
681
687
|
cspViolationBreakpoints(): CSPViolationBreakpoint[] {
|
|
@@ -512,6 +512,10 @@ export class DOMNode extends Common.ObjectWrapper.ObjectWrapper<DOMNodeEventType
|
|
|
512
512
|
return this.#pseudoElements.get(Protocol.DOM.PseudoType.PickerIcon)?.at(-1);
|
|
513
513
|
}
|
|
514
514
|
|
|
515
|
+
interestButtonPseudoElement(): DOMNode|undefined {
|
|
516
|
+
return this.#pseudoElements.get(Protocol.DOM.PseudoType.InterestButton)?.at(-1);
|
|
517
|
+
}
|
|
518
|
+
|
|
515
519
|
markerPseudoElement(): DOMNode|undefined {
|
|
516
520
|
return this.#pseudoElements.get(Protocol.DOM.PseudoType.Marker)?.at(-1);
|
|
517
521
|
}
|
|
@@ -250,6 +250,10 @@ export class EmulationModel extends SDKModel<EmulationModelEventTypes> implement
|
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
252
|
|
|
253
|
+
async setSafeAreaInsets(insets: Protocol.Emulation.SafeAreaInsets): Promise<void> {
|
|
254
|
+
await this.#emulationAgent.invoke_setSafeAreaInsetsOverride({insets});
|
|
255
|
+
}
|
|
256
|
+
|
|
253
257
|
overlayModel(): OverlayModel|null {
|
|
254
258
|
return this.#overlayModel;
|
|
255
259
|
}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
|
+
import * as Root from '../../core/root/root.js';
|
|
5
6
|
import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
|
|
6
7
|
|
|
7
8
|
import {CategorizedBreakpoint, Category} from './CategorizedBreakpoint.js';
|
|
@@ -83,8 +84,6 @@ class EventListenerBreakpoint extends CategorizedBreakpoint {
|
|
|
83
84
|
static readonly instrumentationPrefix = 'instrumentation:';
|
|
84
85
|
}
|
|
85
86
|
|
|
86
|
-
let eventBreakpointManagerInstance: EventBreakpointsManager;
|
|
87
|
-
|
|
88
87
|
export class EventBreakpointsManager implements SDKModelObserver<EventBreakpointsModel> {
|
|
89
88
|
readonly #eventListenerBreakpoints: EventListenerBreakpoint[] = [];
|
|
90
89
|
readonly #targetManager: TargetManager;
|
|
@@ -151,11 +150,16 @@ export class EventBreakpointsManager implements SDKModelObserver<EventBreakpoint
|
|
|
151
150
|
targetManager?: TargetManager,
|
|
152
151
|
} = {forceNew: null}): EventBreakpointsManager {
|
|
153
152
|
const {forceNew, targetManager} = opts;
|
|
154
|
-
if (!
|
|
155
|
-
|
|
153
|
+
if (!Root.DevToolsContext.globalInstance().has(EventBreakpointsManager) || forceNew) {
|
|
154
|
+
Root.DevToolsContext.globalInstance().set(EventBreakpointsManager,
|
|
155
|
+
new EventBreakpointsManager(targetManager ?? TargetManager.instance()));
|
|
156
156
|
}
|
|
157
157
|
|
|
158
|
-
return
|
|
158
|
+
return Root.DevToolsContext.globalInstance().get(EventBreakpointsManager);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
static removeInstance(): void {
|
|
162
|
+
Root.DevToolsContext.globalInstance().delete(EventBreakpointsManager);
|
|
159
163
|
}
|
|
160
164
|
|
|
161
165
|
private createInstrumentationBreakpoints(category: Category, instrumentationNames: InstrumentationNames[]): void {
|
|
@@ -3,13 +3,12 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as Common from '../common/common.js';
|
|
6
|
+
import * as Root from '../root/root.js';
|
|
6
7
|
|
|
7
8
|
import type {HeapProfilerModel} from './HeapProfilerModel.js';
|
|
8
9
|
import {RuntimeModel} from './RuntimeModel.js';
|
|
9
10
|
import {type SDKModelObserver, TargetManager} from './TargetManager.js';
|
|
10
11
|
|
|
11
|
-
let isolateManagerInstance: IsolateManager;
|
|
12
|
-
|
|
13
12
|
export class IsolateManager extends Common.ObjectWrapper.ObjectWrapper<EventTypes> implements
|
|
14
13
|
SDKModelObserver<RuntimeModel> {
|
|
15
14
|
readonly #isolates = new Map<string, Isolate>();
|
|
@@ -28,15 +27,16 @@ export class IsolateManager extends Common.ObjectWrapper.ObjectWrapper<EventType
|
|
|
28
27
|
this.#targetManager.observeModels(RuntimeModel, this);
|
|
29
28
|
}
|
|
30
29
|
|
|
31
|
-
static instance(
|
|
30
|
+
static instance(opts: {
|
|
32
31
|
forceNew: boolean,
|
|
33
32
|
targetManager?: TargetManager,
|
|
34
33
|
} = {forceNew: false}): IsolateManager {
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
const {forceNew, targetManager} = opts;
|
|
35
|
+
if (!Root.DevToolsContext.globalInstance().has(IsolateManager) || forceNew) {
|
|
36
|
+
Root.DevToolsContext.globalInstance().set(IsolateManager, new IsolateManager(targetManager));
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
return
|
|
39
|
+
return Root.DevToolsContext.globalInstance().get(IsolateManager);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
observeIsolates(observer: Observer): void {
|
|
@@ -9,7 +9,7 @@ import * as i18n from '../i18n/i18n.js';
|
|
|
9
9
|
import * as Platform from '../platform/platform.js';
|
|
10
10
|
|
|
11
11
|
import {type DeferredDOMNode, DOMModel, type DOMNode} from './DOMModel.js';
|
|
12
|
-
import {FrameManager} from './FrameManager.js';
|
|
12
|
+
import type {FrameManager} from './FrameManager.js';
|
|
13
13
|
import {Events as NetworkManagerEvents, NetworkManager, type RequestUpdateDroppedEventData} from './NetworkManager.js';
|
|
14
14
|
import type {NetworkRequest} from './NetworkRequest.js';
|
|
15
15
|
import {Resource} from './Resource.js';
|
|
@@ -25,6 +25,7 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
|
|
|
25
25
|
readonly storageAgent: ProtocolProxyApi.StorageApi;
|
|
26
26
|
readonly #securityOriginManager: SecurityOriginManager;
|
|
27
27
|
readonly #storageKeyManager: StorageKeyManager;
|
|
28
|
+
readonly #frameManager: FrameManager;
|
|
28
29
|
readonly framesInternal = new Map<string, ResourceTreeFrame>();
|
|
29
30
|
#cachedResourcesProcessed = false;
|
|
30
31
|
#pendingReloadOptions: {
|
|
@@ -38,6 +39,7 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
|
|
|
38
39
|
|
|
39
40
|
constructor(target: Target) {
|
|
40
41
|
super(target);
|
|
42
|
+
this.#frameManager = target.targetManager().getFrameManager();
|
|
41
43
|
|
|
42
44
|
const networkManager = target.model(NetworkManager);
|
|
43
45
|
if (networkManager) {
|
|
@@ -92,8 +94,9 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
|
|
|
92
94
|
return null;
|
|
93
95
|
}
|
|
94
96
|
|
|
95
|
-
static reloadAllPages(bypassCache?: boolean, scriptToEvaluateOnLoad?: string
|
|
96
|
-
|
|
97
|
+
static reloadAllPages(bypassCache?: boolean, scriptToEvaluateOnLoad?: string,
|
|
98
|
+
targetManager: TargetManager = TargetManager.instance()): void {
|
|
99
|
+
for (const resourceTreeModel of targetManager.models(ResourceTreeModel)) {
|
|
97
100
|
if (resourceTreeModel.target().parentTarget()?.type() !== Type.FRAME) {
|
|
98
101
|
resourceTreeModel.reloadPage(bypassCache, scriptToEvaluateOnLoad);
|
|
99
102
|
}
|
|
@@ -215,8 +218,8 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
|
|
|
215
218
|
void this.updateStorageKeys();
|
|
216
219
|
|
|
217
220
|
if (frame.backForwardCacheDetails.restoredFromCache) {
|
|
218
|
-
|
|
219
|
-
|
|
221
|
+
this.#frameManager.modelRemoved(this);
|
|
222
|
+
this.#frameManager.modelAdded(this);
|
|
220
223
|
void this.#buildResourceTree();
|
|
221
224
|
}
|
|
222
225
|
}
|
|
@@ -10,6 +10,7 @@ import {assertNotNullOrUndefined} from '../platform/platform.js';
|
|
|
10
10
|
import type * as ProtocolClient from '../protocol_client/protocol_client.js';
|
|
11
11
|
import * as Root from '../root/root.js';
|
|
12
12
|
|
|
13
|
+
import {FrameManager} from './FrameManager.js';
|
|
13
14
|
import {type RegistrationInfo, SDKModel, type SDKModelConstructor} from './SDKModel.js';
|
|
14
15
|
import {Target, Type as TargetType} from './Target.js';
|
|
15
16
|
|
|
@@ -31,6 +32,22 @@ export class TargetManager extends Common.ObjectWrapper.ObjectWrapper<EventTypes
|
|
|
31
32
|
return this.context.get(Common.Settings.Settings);
|
|
32
33
|
}
|
|
33
34
|
|
|
35
|
+
// TODO(crbug.com/493763857): Remove fallback once all unit tests use TestUniverse.
|
|
36
|
+
getConsole(): Common.Console.Console {
|
|
37
|
+
if ('has' in this.context && typeof this.context.has === 'function' && !this.context.has(Common.Console.Console)) {
|
|
38
|
+
return Common.Console.Console.instance();
|
|
39
|
+
}
|
|
40
|
+
return this.context.get(Common.Console.Console);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
// TODO(crbug.com/493763857): Remove fallback once all unit tests use TestUniverse.
|
|
44
|
+
getFrameManager(): FrameManager {
|
|
45
|
+
if ('has' in this.context && typeof this.context.has === 'function' && !this.context.has(FrameManager)) {
|
|
46
|
+
return FrameManager.instance();
|
|
47
|
+
}
|
|
48
|
+
return this.context.get(FrameManager);
|
|
49
|
+
}
|
|
50
|
+
|
|
34
51
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
35
52
|
#modelListeners: Platform.MapUtilities.Multimap<string|symbol|number, {
|
|
36
53
|
modelClass: SDKModelConstructor,
|
|
@@ -5,7 +5,6 @@ import '../shell/shell.js';
|
|
|
5
5
|
import '../../panels/css_overview/css_overview-meta.js';
|
|
6
6
|
import '../../panels/elements/elements-meta.js';
|
|
7
7
|
import '../../panels/browser_debugger/browser_debugger-meta.js';
|
|
8
|
-
import '../../panels/greendev/greendev-meta.js';
|
|
9
8
|
import '../../panels/network/network-meta.js';
|
|
10
9
|
import '../../panels/security/security-meta.js';
|
|
11
10
|
import '../../panels/emulation/emulation-meta.js';
|