chrome-devtools-frontend 1.0.1539728 → 1.0.1541169
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/eslint.config.mjs +167 -151
- package/front_end/core/common/Debouncer.ts +2 -2
- package/front_end/core/common/Gzip.ts +1 -1
- package/front_end/core/common/Revealer.ts +5 -0
- package/front_end/core/common/Throttler.ts +3 -3
- package/front_end/core/host/GdpClient.ts +4 -0
- package/front_end/core/host/InspectorFrontendHost.ts +10 -10
- package/front_end/core/protocol_client/DevToolsCDPConnection.ts +181 -0
- package/front_end/core/protocol_client/InspectorBackend.ts +36 -203
- package/front_end/core/protocol_client/protocol_client.ts +2 -2
- package/front_end/core/sdk/DebuggerModel.ts +3 -16
- package/front_end/core/sdk/NetworkManager.ts +16 -11
- package/front_end/core/sdk/RemoteObject.ts +4 -0
- package/front_end/core/sdk/Target.ts +3 -6
- package/front_end/core/sdk/TargetManager.ts +1 -2
- package/front_end/core/sdk/sdk-meta.ts +0 -35
- package/front_end/entrypoints/lighthouse_worker/LighthouseWorkerService.ts +1 -3
- package/front_end/entrypoints/node_app/app/NodeMain.ts +3 -2
- package/front_end/entrypoints/shell/shell.ts +1 -0
- package/front_end/entrypoints/trace_app/trace_app.ts +1 -0
- package/front_end/generated/Deprecation.ts +8 -0
- package/front_end/generated/InspectorBackendCommands.ts +8 -5
- package/front_end/generated/SupportedCSSProperties.js +58 -4
- package/front_end/generated/protocol.ts +60 -4
- package/front_end/models/ai_assistance/EvaluateAction.ts +88 -5
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +121 -56
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +104 -62
- package/front_end/models/ai_assistance/injected.ts +15 -2
- package/front_end/models/ai_assistance/performance/AIQueries.ts +56 -2
- package/front_end/{panels/issues → models/issues_manager}/IssueAggregator.ts +83 -65
- package/front_end/models/issues_manager/issues_manager.ts +2 -0
- package/front_end/models/live-metrics/web-vitals-injected/README.md +1 -1
- package/front_end/models/trace/Processor.ts +5 -4
- package/front_end/models/trace/Styles.ts +1 -1
- package/front_end/models/trace/insights/types.ts +1 -1
- package/front_end/models/trace/types/TraceEvents.ts +1 -1
- package/front_end/models/workspace/IgnoreListManager.ts +41 -47
- package/front_end/models/workspace/workspace-meta.ts +40 -0
- package/front_end/panels/ai_assistance/PatchWidget.ts +22 -12
- package/front_end/panels/ai_assistance/components/ChatView.ts +1 -1
- package/front_end/panels/animation/AnimationTimeline.ts +4 -4
- package/front_end/panels/animation/AnimationUI.ts +28 -34
- package/front_end/panels/common/AiCodeCompletionDisclaimer.ts +4 -4
- package/front_end/panels/common/AiCodeCompletionSummaryToolbar.ts +2 -2
- package/front_end/panels/elements/ElementsTreeElement.ts +37 -9
- package/front_end/panels/elements/LayoutPane.ts +2 -2
- package/front_end/panels/elements/PropertiesWidget.ts +3 -2
- package/front_end/panels/elements/components/AdornerManager.ts +9 -9
- package/front_end/panels/elements/layoutPane.css +5 -9
- package/front_end/panels/event_listeners/EventListenersView.ts +10 -6
- package/front_end/panels/explain/components/ConsoleInsight.ts +498 -449
- package/front_end/panels/issues/AffectedResourcesView.ts +3 -4
- package/front_end/panels/issues/CorsIssueDetailsView.ts +1 -2
- package/front_end/panels/issues/IssueView.ts +1 -1
- package/front_end/panels/issues/IssuesPane.ts +12 -15
- package/front_end/panels/issues/issues.ts +0 -2
- package/front_end/panels/lighthouse/LighthouseProtocolService.ts +3 -3
- package/front_end/panels/linear_memory_inspector/LinearMemoryInspectorController.ts +2 -2
- package/front_end/panels/network/NetworkDataGridNode.ts +2 -1
- package/front_end/panels/network/RequestConditionsDrawer.ts +149 -46
- package/front_end/panels/network/RequestPayloadView.ts +2 -1
- package/front_end/panels/network/RequestTimingView.ts +17 -10
- package/front_end/panels/network/components/RequestHeadersView.ts +24 -17
- package/front_end/panels/network/network-meta.ts +11 -0
- package/front_end/panels/protocol_monitor/JSONEditor.ts +2 -2
- package/front_end/panels/recorder/RecorderController.ts +6 -7
- package/front_end/panels/recorder/models/RecordingPlayer.ts +3 -3
- package/front_end/panels/settings/components/SyncSection.ts +1 -1
- package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +1 -1
- package/front_end/panels/sources/BreakpointsView.ts +3 -3
- package/front_end/panels/sources/DebuggerPlugin.ts +1 -1
- package/front_end/panels/sources/ScopeChainSidebarPane.ts +4 -3
- package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +4 -3
- package/front_end/panels/sources/breakpointsView.css +1 -1
- package/front_end/panels/sources/sourcesPanel.css +2 -2
- package/front_end/panels/timeline/TimelineFlameChartView.ts +3 -3
- package/front_end/panels/timeline/TimelinePanel.ts +3 -3
- package/front_end/panels/timeline/components/FieldSettingsDialog.ts +9 -5
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +16 -10
- package/front_end/panels/timeline/components/LiveMetricsView.ts +20 -9
- package/front_end/panels/timeline/components/MetricCard.ts +4 -2
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +2 -0
- package/front_end/services/puppeteer/PuppeteerConnection.ts +2 -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/cjs/puppeteer/api/Page.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +21 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.js +5 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ExtensionTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +6 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js +29 -27
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/TargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +61 -26
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +21 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.js +5 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ExtensionTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +6 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js +30 -28
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/TargetManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/package.json +1 -1
- package/front_end/third_party/puppeteer/package/src/api/Page.ts +6 -0
- package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +4 -0
- package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +32 -0
- package/front_end/third_party/puppeteer/package/src/cdp/ExtensionTransport.ts +5 -1
- package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +8 -0
- package/front_end/third_party/puppeteer/package/src/cdp/TargetManager.ts +36 -43
- package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
- package/front_end/ui/components/dialogs/ButtonDialog.ts +15 -5
- package/front_end/ui/components/expandable_list/ExpandableList.ts +1 -1
- package/front_end/ui/components/helpers/helpers.ts +0 -2
- package/front_end/ui/components/markdown_view/MarkdownView.ts +1 -0
- package/front_end/ui/components/menus/Menu.ts +5 -3
- package/front_end/ui/components/snackbars/Snackbars.docs.ts +46 -0
- package/front_end/ui/components/survey_link/SurveyLink.docs.ts +22 -0
- package/front_end/ui/components/tree_outline/TreeOutline.ts +1 -2
- package/front_end/ui/{components/docs/context_menu/basic.ts → legacy/ContextMenu.docs.ts} +58 -25
- package/front_end/ui/legacy/SelectMenu.docs.ts +14 -0
- package/front_end/ui/legacy/UIUtils.ts +2 -1
- package/front_end/ui/legacy/components/inline_editor/BezierEditor.ts +1 -1
- package/front_end/ui/legacy/components/object_ui/CustomPreviewComponent.ts +3 -1
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +558 -439
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +3 -3
- package/front_end/ui/legacy/components/perf_ui/pieChart.css +1 -1
- package/front_end/ui/legacy/components/utils/Linkifier.ts +1 -1
- package/front_end/ui/legacy/inspectorCommon.css +3 -2
- package/mcp/mcp.ts +15 -1
- package/package.json +2 -1
- package/front_end/core/protocol_client/NodeURL.ts +0 -40
- package/front_end/ui/components/docs/combo_box/basic.html +0 -20
- package/front_end/ui/components/docs/combo_box/basic.ts +0 -49
- package/front_end/ui/components/docs/context_menu/basic.html +0 -45
- package/front_end/ui/components/docs/legacy_color_invert/basic.html +0 -77
- package/front_end/ui/components/docs/legacy_color_invert/basic.ts +0 -98
- package/front_end/ui/components/docs/linkifier/simple-url.html +0 -25
- package/front_end/ui/components/docs/linkifier/simple-url.ts +0 -25
- package/front_end/ui/components/docs/panel_feedback/basic.html +0 -25
- package/front_end/ui/components/docs/panel_feedback/basic.ts +0 -21
- package/front_end/ui/components/docs/panel_feedback/button.html +0 -25
- package/front_end/ui/components/docs/panel_feedback/button.ts +0 -19
- package/front_end/ui/components/docs/panel_introduction_steps/basic.html +0 -25
- package/front_end/ui/components/docs/panel_introduction_steps/basic.ts +0 -28
- package/front_end/ui/components/docs/perf_piechart/basic-with-legend.html +0 -20
- package/front_end/ui/components/docs/perf_piechart/basic-with-legend.ts +0 -20
- package/front_end/ui/components/docs/perf_piechart/basic-without-legend.html +0 -20
- package/front_end/ui/components/docs/perf_piechart/basic-without-legend.ts +0 -18
- package/front_end/ui/components/docs/snackbars/basic.html +0 -17
- package/front_end/ui/components/docs/snackbars/basic.ts +0 -50
- package/front_end/ui/components/docs/survey_link/basic.html +0 -20
- package/front_end/ui/components/docs/survey_link/basic.ts +0 -28
- package/front_end/ui/components/docs/tree_outline/basic.html +0 -33
- package/front_end/ui/components/docs/tree_outline/basic.ts +0 -38
- package/front_end/ui/components/docs/tree_outline/custom-renderers.html +0 -32
- package/front_end/ui/components/docs/tree_outline/custom-renderers.ts +0 -61
- package/front_end/ui/components/docs/tree_outline/lazy-children.html +0 -32
- package/front_end/ui/components/docs/tree_outline/lazy-children.ts +0 -91
- package/front_end/ui/components/docs/tree_outline/sample-data.ts +0 -67
- package/front_end/ui/components/helpers/directives.ts +0 -38
|
@@ -9,7 +9,7 @@ import { debugError } from '../common/util.js';
|
|
|
9
9
|
import { assert } from '../util/assert.js';
|
|
10
10
|
import { Deferred } from '../util/Deferred.js';
|
|
11
11
|
import { CdpCDPSession } from './CdpSession.js';
|
|
12
|
-
import {
|
|
12
|
+
import { InitializationStatus } from './Target.js';
|
|
13
13
|
function isPageTargetBecomingPrimary(target, newTargetInfo) {
|
|
14
14
|
return Boolean(target._subtype()) && !newTargetInfo.subtype;
|
|
15
15
|
}
|
|
@@ -57,9 +57,19 @@ export class TargetManager extends EventEmitter {
|
|
|
57
57
|
#attachedToTargetListenersBySession = new WeakMap();
|
|
58
58
|
#detachedFromTargetListenersBySession = new WeakMap();
|
|
59
59
|
#initializeDeferred = Deferred.create();
|
|
60
|
-
#targetsIdsForInit = new Set();
|
|
61
60
|
#waitForInitiallyDiscoveredTargets = true;
|
|
62
61
|
#discoveryFilter = [{}];
|
|
62
|
+
// IDs of tab targets detected while running the initial Target.setAutoAttach
|
|
63
|
+
// request. These are the targets whose initialization we want to await for
|
|
64
|
+
// before resolving puppeteer.connect() or launch() to avoid flakiness.
|
|
65
|
+
// Whenever a sub-target whose parent is a tab target is attached, we remove
|
|
66
|
+
// the tab target from this list. Once the list is empty, we resolve the
|
|
67
|
+
// initializeDeferred.
|
|
68
|
+
#targetsIdsForInit = new Set();
|
|
69
|
+
// This is false until the connection-level Target.setAutoAttach request is
|
|
70
|
+
// done. It indicates whethere we are running the initial auto-attach step or
|
|
71
|
+
// if we are handling targets after that.
|
|
72
|
+
#initialAttachDone = false;
|
|
63
73
|
constructor(connection, targetFactory, targetFilterCallback, waitForInitiallyDiscoveredTargets = true) {
|
|
64
74
|
super();
|
|
65
75
|
this.#connection = connection;
|
|
@@ -72,30 +82,11 @@ export class TargetManager extends EventEmitter {
|
|
|
72
82
|
this.#connection.on(CDPSessionEvent.SessionDetached, this.#onSessionDetached);
|
|
73
83
|
this.#setupAttachmentListeners(this.#connection);
|
|
74
84
|
}
|
|
75
|
-
#storeExistingTargetsForInit = () => {
|
|
76
|
-
if (!this.#waitForInitiallyDiscoveredTargets) {
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
for (const [targetId, targetInfo,] of this.#discoveredTargetsByTargetId.entries()) {
|
|
80
|
-
const targetForFilter = new CdpTarget(targetInfo, undefined, undefined, this, undefined);
|
|
81
|
-
// Only wait for pages and frames (except those from extensions)
|
|
82
|
-
// to auto-attach.
|
|
83
|
-
const isPageOrFrame = targetInfo.type === 'page' || targetInfo.type === 'iframe';
|
|
84
|
-
const isExtension = targetInfo.url.startsWith('chrome-extension://');
|
|
85
|
-
if ((!this.#targetFilterCallback ||
|
|
86
|
-
this.#targetFilterCallback(targetForFilter)) &&
|
|
87
|
-
isPageOrFrame &&
|
|
88
|
-
!isExtension) {
|
|
89
|
-
this.#targetsIdsForInit.add(targetId);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
85
|
async initialize() {
|
|
94
86
|
await this.#connection.send('Target.setDiscoverTargets', {
|
|
95
87
|
discover: true,
|
|
96
88
|
filter: this.#discoveryFilter,
|
|
97
89
|
});
|
|
98
|
-
this.#storeExistingTargetsForInit();
|
|
99
90
|
await this.#connection.send('Target.setAutoAttach', {
|
|
100
91
|
waitForDebuggerOnStart: true,
|
|
101
92
|
flatten: true,
|
|
@@ -108,6 +99,7 @@ export class TargetManager extends EventEmitter {
|
|
|
108
99
|
...this.#discoveryFilter,
|
|
109
100
|
],
|
|
110
101
|
});
|
|
102
|
+
this.#initialAttachDone = true;
|
|
111
103
|
this.#finishInitializationIfReady();
|
|
112
104
|
await this.#initializeDeferred.valueOrThrow();
|
|
113
105
|
}
|
|
@@ -236,7 +228,6 @@ export class TargetManager extends EventEmitter {
|
|
|
236
228
|
// should determine if a target is auto-attached or not with the help of
|
|
237
229
|
// CDP.
|
|
238
230
|
if (targetInfo.type === 'service_worker') {
|
|
239
|
-
this.#finishInitializationIfReady(targetInfo.targetId);
|
|
240
231
|
await silentDetach();
|
|
241
232
|
if (this.#attachedTargetsByTargetId.has(targetInfo.targetId)) {
|
|
242
233
|
return;
|
|
@@ -251,12 +242,20 @@ export class TargetManager extends EventEmitter {
|
|
|
251
242
|
const target = isExistingTarget
|
|
252
243
|
? this.#attachedTargetsByTargetId.get(targetInfo.targetId)
|
|
253
244
|
: this.#targetFactory(targetInfo, session, parentSession instanceof CdpCDPSession ? parentSession : undefined);
|
|
245
|
+
const parentTarget = parentSession instanceof CdpCDPSession ? parentSession.target() : null;
|
|
254
246
|
if (this.#targetFilterCallback && !this.#targetFilterCallback(target)) {
|
|
255
247
|
this.#ignoredTargets.add(targetInfo.targetId);
|
|
256
|
-
|
|
248
|
+
if (parentTarget?.type() === 'tab') {
|
|
249
|
+
this.#finishInitializationIfReady(parentTarget._targetId);
|
|
250
|
+
}
|
|
257
251
|
await silentDetach();
|
|
258
252
|
return;
|
|
259
253
|
}
|
|
254
|
+
if (this.#waitForInitiallyDiscoveredTargets &&
|
|
255
|
+
event.targetInfo.type === 'tab' &&
|
|
256
|
+
!this.#initialAttachDone) {
|
|
257
|
+
this.#targetsIdsForInit.add(event.targetInfo.targetId);
|
|
258
|
+
}
|
|
260
259
|
this.#setupAttachmentListeners(session);
|
|
261
260
|
if (isExistingTarget) {
|
|
262
261
|
session.setTarget(target);
|
|
@@ -267,16 +266,14 @@ export class TargetManager extends EventEmitter {
|
|
|
267
266
|
this.#attachedTargetsByTargetId.set(targetInfo.targetId, target);
|
|
268
267
|
this.#attachedTargetsBySessionId.set(session.id(), target);
|
|
269
268
|
}
|
|
270
|
-
const parentTarget = parentSession instanceof CDPSession
|
|
271
|
-
? parentSession.target()
|
|
272
|
-
: null;
|
|
273
269
|
parentTarget?._addChildTarget(target);
|
|
274
270
|
parentSession.emit(CDPSessionEvent.Ready, session);
|
|
275
|
-
this.#targetsIdsForInit.delete(target._targetId);
|
|
276
271
|
if (!isExistingTarget) {
|
|
277
272
|
this.emit("targetAvailable" /* TargetManagerEvent.TargetAvailable */, target);
|
|
278
273
|
}
|
|
279
|
-
|
|
274
|
+
if (parentTarget?.type() === 'tab') {
|
|
275
|
+
this.#finishInitializationIfReady(parentTarget._targetId);
|
|
276
|
+
}
|
|
280
277
|
// TODO: the browser might be shutting down here. What do we do with the
|
|
281
278
|
// error?
|
|
282
279
|
await Promise.all([
|
|
@@ -293,6 +290,11 @@ export class TargetManager extends EventEmitter {
|
|
|
293
290
|
if (targetId !== undefined) {
|
|
294
291
|
this.#targetsIdsForInit.delete(targetId);
|
|
295
292
|
}
|
|
293
|
+
// If we are still initializing it might be that we have not learned about
|
|
294
|
+
// some targets yet.
|
|
295
|
+
if (!this.#initialAttachDone) {
|
|
296
|
+
return;
|
|
297
|
+
}
|
|
296
298
|
if (this.#targetsIdsForInit.size === 0) {
|
|
297
299
|
this.#initializeDeferred.resolve();
|
|
298
300
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TargetManager.js","sourceRoot":"","sources":["../../../../src/cdp/TargetManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TargetManager.js","sourceRoot":"","sources":["../../../../src/cdp/TargetManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -6384,6 +6384,11 @@ export declare abstract class Page extends EventEmitter<PageEvents> {
|
|
|
6384
6384
|
|
|
6385
6385
|
|
|
6386
6386
|
|
|
6387
|
+
/**
|
|
6388
|
+
* Opens DevTools for the current Page and returns the DevTools Page. This
|
|
6389
|
+
* method is only available in Chrome.
|
|
6390
|
+
*/
|
|
6391
|
+
abstract openDevTools(): Promise<Page>;
|
|
6387
6392
|
}
|
|
6388
6393
|
|
|
6389
6394
|
/**
|
|
@@ -3168,6 +3168,12 @@ export abstract class Page extends EventEmitter<PageEvents> {
|
|
|
3168
3168
|
[asyncDisposeSymbol](): Promise<void> {
|
|
3169
3169
|
return this.close();
|
|
3170
3170
|
}
|
|
3171
|
+
|
|
3172
|
+
/**
|
|
3173
|
+
* Opens DevTools for the current Page and returns the DevTools Page. This
|
|
3174
|
+
* method is only available in Chrome.
|
|
3175
|
+
*/
|
|
3176
|
+
abstract openDevTools(): Promise<Page>;
|
|
3171
3177
|
}
|
|
3172
3178
|
|
|
3173
3179
|
/**
|
|
@@ -286,6 +286,10 @@ export class BidiPage extends Page {
|
|
|
286
286
|
throw new Error('Method not implemented for WebDriver BiDi yet.');
|
|
287
287
|
}
|
|
288
288
|
|
|
289
|
+
override openDevTools(): Promise<Page> {
|
|
290
|
+
throw new Error('Method not implemented for WebDriver BiDi yet.');
|
|
291
|
+
}
|
|
292
|
+
|
|
289
293
|
async focusedFrame(): Promise<BidiFrame> {
|
|
290
294
|
using handle = (await this.mainFrame()
|
|
291
295
|
.isolatedRealm()
|
|
@@ -382,6 +382,38 @@ export class CdpBrowser extends BrowserBase {
|
|
|
382
382
|
return page;
|
|
383
383
|
}
|
|
384
384
|
|
|
385
|
+
async _createDevToolsPage(pageTargetId: string): Promise<Page> {
|
|
386
|
+
const openDevToolsResponse = await this.#connection.send(
|
|
387
|
+
'Target.openDevTools',
|
|
388
|
+
{
|
|
389
|
+
targetId: pageTargetId,
|
|
390
|
+
},
|
|
391
|
+
);
|
|
392
|
+
const target = (await this.waitForTarget(t => {
|
|
393
|
+
return (t as CdpTarget)._targetId === openDevToolsResponse.targetId;
|
|
394
|
+
})) as CdpTarget;
|
|
395
|
+
if (!target) {
|
|
396
|
+
throw new Error(
|
|
397
|
+
`Missing target for DevTools page (id = ${pageTargetId})`,
|
|
398
|
+
);
|
|
399
|
+
}
|
|
400
|
+
const initialized =
|
|
401
|
+
(await target._initializedDeferred.valueOrThrow()) ===
|
|
402
|
+
InitializationStatus.SUCCESS;
|
|
403
|
+
if (!initialized) {
|
|
404
|
+
throw new Error(
|
|
405
|
+
`Failed to create target for DevTools page (id = ${pageTargetId})`,
|
|
406
|
+
);
|
|
407
|
+
}
|
|
408
|
+
const page = await target.page();
|
|
409
|
+
if (!page) {
|
|
410
|
+
throw new Error(
|
|
411
|
+
`Failed to create a DevTools Page for target (id = ${pageTargetId})`,
|
|
412
|
+
);
|
|
413
|
+
}
|
|
414
|
+
return page;
|
|
415
|
+
}
|
|
416
|
+
|
|
385
417
|
override async installExtension(path: string): Promise<string> {
|
|
386
418
|
const {id} = await this.#connection.send('Extensions.loadUnpacked', {path});
|
|
387
419
|
return id;
|
|
@@ -68,7 +68,10 @@ export class ExtensionTransport implements ConnectionTransport {
|
|
|
68
68
|
};
|
|
69
69
|
|
|
70
70
|
#dispatchResponse(message: object): void {
|
|
71
|
-
|
|
71
|
+
// Dispatch in a new task like other transports.
|
|
72
|
+
setTimeout(() => {
|
|
73
|
+
this.onmessage?.(JSON.stringify(message));
|
|
74
|
+
}, 0);
|
|
72
75
|
}
|
|
73
76
|
|
|
74
77
|
send(message: string): void {
|
|
@@ -125,6 +128,7 @@ export class ExtensionTransport implements ConnectionTransport {
|
|
|
125
128
|
if (parsed.sessionId === 'tabTargetSessionId') {
|
|
126
129
|
this.#dispatchResponse({
|
|
127
130
|
method: 'Target.attachedToTarget',
|
|
131
|
+
sessionId: 'tabTargetSessionId',
|
|
128
132
|
params: {
|
|
129
133
|
targetInfo: pageTargetInfo,
|
|
130
134
|
sessionId: 'pageTargetSessionId',
|
|
@@ -58,6 +58,7 @@ import {AsyncDisposableStack} from '../util/disposable.js';
|
|
|
58
58
|
import {isErrorLike} from '../util/ErrorLike.js';
|
|
59
59
|
|
|
60
60
|
import {Binding} from './Binding.js';
|
|
61
|
+
import type {CdpBrowser} from './Browser.js';
|
|
61
62
|
import {CdpCDPSession} from './CdpSession.js';
|
|
62
63
|
import {isTargetClosedError} from './Connection.js';
|
|
63
64
|
import {Coverage} from './Coverage.js';
|
|
@@ -417,6 +418,13 @@ export class CdpPage extends Page {
|
|
|
417
418
|
return this.#emulationManager.javascriptEnabled;
|
|
418
419
|
}
|
|
419
420
|
|
|
421
|
+
override async openDevTools(): Promise<Page> {
|
|
422
|
+
const pageTargetId = this.target()._targetId;
|
|
423
|
+
const browser = this.browser() as CdpBrowser;
|
|
424
|
+
const devtoolsPage = await browser._createDevToolsPage(pageTargetId);
|
|
425
|
+
return devtoolsPage;
|
|
426
|
+
}
|
|
427
|
+
|
|
420
428
|
override async waitForFileChooser(
|
|
421
429
|
options: WaitTimeoutOptions = {},
|
|
422
430
|
): Promise<FileChooser> {
|
|
@@ -15,7 +15,8 @@ import {Deferred} from '../util/Deferred.js';
|
|
|
15
15
|
|
|
16
16
|
import {CdpCDPSession} from './CdpSession.js';
|
|
17
17
|
import type {Connection} from './Connection.js';
|
|
18
|
-
import {CdpTarget
|
|
18
|
+
import type {CdpTarget} from './Target.js';
|
|
19
|
+
import {InitializationStatus} from './Target.js';
|
|
19
20
|
import type {TargetManagerEvents} from './TargetManageEvents.js';
|
|
20
21
|
import {TargetManagerEvent} from './TargetManageEvents.js';
|
|
21
22
|
|
|
@@ -90,10 +91,20 @@ export class TargetManager
|
|
|
90
91
|
>();
|
|
91
92
|
|
|
92
93
|
#initializeDeferred = Deferred.create<void>();
|
|
93
|
-
#targetsIdsForInit = new Set<string>();
|
|
94
94
|
#waitForInitiallyDiscoveredTargets = true;
|
|
95
95
|
|
|
96
96
|
#discoveryFilter: Protocol.Target.FilterEntry[] = [{}];
|
|
97
|
+
// IDs of tab targets detected while running the initial Target.setAutoAttach
|
|
98
|
+
// request. These are the targets whose initialization we want to await for
|
|
99
|
+
// before resolving puppeteer.connect() or launch() to avoid flakiness.
|
|
100
|
+
// Whenever a sub-target whose parent is a tab target is attached, we remove
|
|
101
|
+
// the tab target from this list. Once the list is empty, we resolve the
|
|
102
|
+
// initializeDeferred.
|
|
103
|
+
#targetsIdsForInit = new Set<string>();
|
|
104
|
+
// This is false until the connection-level Target.setAutoAttach request is
|
|
105
|
+
// done. It indicates whethere we are running the initial auto-attach step or
|
|
106
|
+
// if we are handling targets after that.
|
|
107
|
+
#initialAttachDone = false;
|
|
97
108
|
|
|
98
109
|
constructor(
|
|
99
110
|
connection: Connection,
|
|
@@ -117,45 +128,12 @@ export class TargetManager
|
|
|
117
128
|
this.#setupAttachmentListeners(this.#connection);
|
|
118
129
|
}
|
|
119
130
|
|
|
120
|
-
#storeExistingTargetsForInit = () => {
|
|
121
|
-
if (!this.#waitForInitiallyDiscoveredTargets) {
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
for (const [
|
|
125
|
-
targetId,
|
|
126
|
-
targetInfo,
|
|
127
|
-
] of this.#discoveredTargetsByTargetId.entries()) {
|
|
128
|
-
const targetForFilter = new CdpTarget(
|
|
129
|
-
targetInfo,
|
|
130
|
-
undefined,
|
|
131
|
-
undefined,
|
|
132
|
-
this,
|
|
133
|
-
undefined,
|
|
134
|
-
);
|
|
135
|
-
// Only wait for pages and frames (except those from extensions)
|
|
136
|
-
// to auto-attach.
|
|
137
|
-
const isPageOrFrame =
|
|
138
|
-
targetInfo.type === 'page' || targetInfo.type === 'iframe';
|
|
139
|
-
const isExtension = targetInfo.url.startsWith('chrome-extension://');
|
|
140
|
-
if (
|
|
141
|
-
(!this.#targetFilterCallback ||
|
|
142
|
-
this.#targetFilterCallback(targetForFilter)) &&
|
|
143
|
-
isPageOrFrame &&
|
|
144
|
-
!isExtension
|
|
145
|
-
) {
|
|
146
|
-
this.#targetsIdsForInit.add(targetId);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
};
|
|
150
|
-
|
|
151
131
|
async initialize(): Promise<void> {
|
|
152
132
|
await this.#connection.send('Target.setDiscoverTargets', {
|
|
153
133
|
discover: true,
|
|
154
134
|
filter: this.#discoveryFilter,
|
|
155
135
|
});
|
|
156
136
|
|
|
157
|
-
this.#storeExistingTargetsForInit();
|
|
158
|
-
|
|
159
137
|
await this.#connection.send('Target.setAutoAttach', {
|
|
160
138
|
waitForDebuggerOnStart: true,
|
|
161
139
|
flatten: true,
|
|
@@ -168,6 +146,7 @@ export class TargetManager
|
|
|
168
146
|
...this.#discoveryFilter,
|
|
169
147
|
],
|
|
170
148
|
});
|
|
149
|
+
this.#initialAttachDone = true;
|
|
171
150
|
this.#finishInitializationIfReady();
|
|
172
151
|
await this.#initializeDeferred.valueOrThrow();
|
|
173
152
|
}
|
|
@@ -346,7 +325,6 @@ export class TargetManager
|
|
|
346
325
|
// should determine if a target is auto-attached or not with the help of
|
|
347
326
|
// CDP.
|
|
348
327
|
if (targetInfo.type === 'service_worker') {
|
|
349
|
-
this.#finishInitializationIfReady(targetInfo.targetId);
|
|
350
328
|
await silentDetach();
|
|
351
329
|
if (this.#attachedTargetsByTargetId.has(targetInfo.targetId)) {
|
|
352
330
|
return;
|
|
@@ -370,13 +348,26 @@ export class TargetManager
|
|
|
370
348
|
parentSession instanceof CdpCDPSession ? parentSession : undefined,
|
|
371
349
|
);
|
|
372
350
|
|
|
351
|
+
const parentTarget =
|
|
352
|
+
parentSession instanceof CdpCDPSession ? parentSession.target() : null;
|
|
353
|
+
|
|
373
354
|
if (this.#targetFilterCallback && !this.#targetFilterCallback(target)) {
|
|
374
355
|
this.#ignoredTargets.add(targetInfo.targetId);
|
|
375
|
-
|
|
356
|
+
if (parentTarget?.type() === 'tab') {
|
|
357
|
+
this.#finishInitializationIfReady(parentTarget._targetId);
|
|
358
|
+
}
|
|
376
359
|
await silentDetach();
|
|
377
360
|
return;
|
|
378
361
|
}
|
|
379
362
|
|
|
363
|
+
if (
|
|
364
|
+
this.#waitForInitiallyDiscoveredTargets &&
|
|
365
|
+
event.targetInfo.type === 'tab' &&
|
|
366
|
+
!this.#initialAttachDone
|
|
367
|
+
) {
|
|
368
|
+
this.#targetsIdsForInit.add(event.targetInfo.targetId);
|
|
369
|
+
}
|
|
370
|
+
|
|
380
371
|
this.#setupAttachmentListeners(session);
|
|
381
372
|
|
|
382
373
|
if (isExistingTarget) {
|
|
@@ -391,19 +382,16 @@ export class TargetManager
|
|
|
391
382
|
this.#attachedTargetsBySessionId.set(session.id(), target);
|
|
392
383
|
}
|
|
393
384
|
|
|
394
|
-
const parentTarget =
|
|
395
|
-
parentSession instanceof CDPSession
|
|
396
|
-
? (parentSession as CdpCDPSession).target()
|
|
397
|
-
: null;
|
|
398
385
|
parentTarget?._addChildTarget(target);
|
|
399
386
|
|
|
400
387
|
parentSession.emit(CDPSessionEvent.Ready, session);
|
|
401
388
|
|
|
402
|
-
this.#targetsIdsForInit.delete(target._targetId);
|
|
403
389
|
if (!isExistingTarget) {
|
|
404
390
|
this.emit(TargetManagerEvent.TargetAvailable, target);
|
|
405
391
|
}
|
|
406
|
-
|
|
392
|
+
if (parentTarget?.type() === 'tab') {
|
|
393
|
+
this.#finishInitializationIfReady(parentTarget._targetId);
|
|
394
|
+
}
|
|
407
395
|
|
|
408
396
|
// TODO: the browser might be shutting down here. What do we do with the
|
|
409
397
|
// error?
|
|
@@ -422,6 +410,11 @@ export class TargetManager
|
|
|
422
410
|
if (targetId !== undefined) {
|
|
423
411
|
this.#targetsIdsForInit.delete(targetId);
|
|
424
412
|
}
|
|
413
|
+
// If we are still initializing it might be that we have not learned about
|
|
414
|
+
// some targets yet.
|
|
415
|
+
if (!this.#initialAttachDone) {
|
|
416
|
+
return;
|
|
417
|
+
}
|
|
425
418
|
if (this.#targetsIdsForInit.size === 0) {
|
|
426
419
|
this.#initializeDeferred.resolve();
|
|
427
420
|
}
|
|
@@ -5,7 +5,11 @@
|
|
|
5
5
|
|
|
6
6
|
import type * as Buttons from '../../../ui/components/buttons/buttons.js';
|
|
7
7
|
import * as ComponentHelpers from '../../../ui/components/helpers/helpers.js';
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
Directives,
|
|
10
|
+
html,
|
|
11
|
+
render,
|
|
12
|
+
} from '../../../ui/lit/lit.js';
|
|
9
13
|
|
|
10
14
|
import buttonDialogStyles from './buttonDialog.css.js';
|
|
11
15
|
import {
|
|
@@ -16,6 +20,8 @@ import {
|
|
|
16
20
|
DialogVerticalPosition,
|
|
17
21
|
} from './Dialog.js';
|
|
18
22
|
|
|
23
|
+
const {ref} = Directives;
|
|
24
|
+
|
|
19
25
|
export type ButtonDialogState = DialogState;
|
|
20
26
|
|
|
21
27
|
export interface ButtonDialogData {
|
|
@@ -96,8 +102,10 @@ export class ButtonDialog extends HTMLElement {
|
|
|
96
102
|
<style>${buttonDialogStyles}</style>
|
|
97
103
|
<devtools-button
|
|
98
104
|
@click=${this.#showDialog}
|
|
99
|
-
|
|
100
|
-
|
|
105
|
+
${ref(el => {
|
|
106
|
+
if (el instanceof HTMLElement) {
|
|
107
|
+
this.#showButton = el as Buttons.Button.Button;
|
|
108
|
+
}
|
|
101
109
|
})}
|
|
102
110
|
.data=${{
|
|
103
111
|
variant: this.#data.variant,
|
|
@@ -123,8 +131,10 @@ export class ButtonDialog extends HTMLElement {
|
|
|
123
131
|
.dialogTitle=${this.#data.dialogTitle}
|
|
124
132
|
.jslogContext=${this.#data.jslogContext ?? ''}
|
|
125
133
|
.state=${this.#data.state ?? DialogState.EXPANDED}
|
|
126
|
-
|
|
127
|
-
|
|
134
|
+
${ref(el => {
|
|
135
|
+
if (el instanceof HTMLElement) {
|
|
136
|
+
this.#dialog = el as DialogElement;
|
|
137
|
+
}
|
|
128
138
|
})}
|
|
129
139
|
>
|
|
130
140
|
<slot></slot>
|
|
@@ -46,7 +46,7 @@ export class ExpandableList extends HTMLElement {
|
|
|
46
46
|
<div>
|
|
47
47
|
${this.#rows.length > 1 ?
|
|
48
48
|
html`
|
|
49
|
-
<button title
|
|
49
|
+
<button title=${ifDefined(this.#title)} aria-label=${ifDefined(this.#title)} aria-expanded=${this.#expanded ? 'true' : 'false'} @click=${() => this.#onArrowClick()} class="arrow-icon-button">
|
|
50
50
|
<span class="arrow-icon ${this.#expanded ? 'expanded' : ''}"
|
|
51
51
|
jslog=${VisualLogging.expand().track({click: true})}></span>
|
|
52
52
|
</button>
|
|
@@ -3,13 +3,11 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as ComponentServerSetup from './component-server-setup.js';
|
|
6
|
-
import * as Directives from './directives.js';
|
|
7
6
|
import * as GetRootNode from './get-root-node.js';
|
|
8
7
|
import * as ScheduledRender from './scheduled-render.js';
|
|
9
8
|
|
|
10
9
|
export {
|
|
11
10
|
ComponentServerSetup,
|
|
12
|
-
Directives,
|
|
13
11
|
GetRootNode,
|
|
14
12
|
ScheduledRender,
|
|
15
13
|
};
|
|
@@ -14,7 +14,7 @@ import menuStyles from './menu.css.js';
|
|
|
14
14
|
import menuGroupStyles from './menuGroup.css.js';
|
|
15
15
|
import menuItemStyles from './menuItem.css.js';
|
|
16
16
|
|
|
17
|
-
const {html} = Lit;
|
|
17
|
+
const {html, Directives: {ref}} = Lit;
|
|
18
18
|
|
|
19
19
|
export interface MenuData {
|
|
20
20
|
/**
|
|
@@ -380,8 +380,10 @@ export class Menu extends HTMLElement {
|
|
|
380
380
|
.dialogShownCallback=${this.#dialogDeployed.bind(this)}
|
|
381
381
|
.horizontalAlignment=${this.horizontalAlignment}
|
|
382
382
|
.getConnectorCustomXPosition=${this.getConnectorCustomXPosition}
|
|
383
|
-
|
|
384
|
-
|
|
383
|
+
${ref(el => {
|
|
384
|
+
if (el instanceof HTMLElement) {
|
|
385
|
+
this.#dialog = el as Dialogs.Dialog.Dialog;
|
|
386
|
+
}
|
|
385
387
|
})}
|
|
386
388
|
>
|
|
387
389
|
<span id="container" role="menu" tabIndex="0" @keydown=${this.#handleDialogKeyDown} jslog=${VisualLogging.menu().track({resize: true, keydown: 'Escape'})}>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// Copyright 2025 The Chromium Authors
|
|
2
|
+
// Use of this source code is governed by a BSD-style license that can be
|
|
3
|
+
// found in the LICENSE file.
|
|
4
|
+
|
|
5
|
+
import {Snackbar} from './snackbars.js';
|
|
6
|
+
|
|
7
|
+
export async function render(container: HTMLElement) {
|
|
8
|
+
const onActionClick = (): void => {
|
|
9
|
+
// eslint-disable-next-line no-console
|
|
10
|
+
console.log('Action button clicked!');
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const showButton1 = document.createElement('button');
|
|
14
|
+
showButton1.textContent = 'Show Long Action Snackbar';
|
|
15
|
+
showButton1.addEventListener('click', () => {
|
|
16
|
+
Snackbar.Snackbar.show(
|
|
17
|
+
{
|
|
18
|
+
message: 'This is a snackbar demonstrating a long action and closable state.',
|
|
19
|
+
closable: true,
|
|
20
|
+
actionProperties: {
|
|
21
|
+
label: 'This is a long action button',
|
|
22
|
+
title: 'Click here to perform the designated action',
|
|
23
|
+
onClick: onActionClick,
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
container);
|
|
27
|
+
});
|
|
28
|
+
container.appendChild(showButton1);
|
|
29
|
+
|
|
30
|
+
const showButton2 = document.createElement('button');
|
|
31
|
+
showButton2.textContent = 'Show Action Snackbar';
|
|
32
|
+
showButton2.addEventListener('click', () => {
|
|
33
|
+
Snackbar.Snackbar.show(
|
|
34
|
+
{
|
|
35
|
+
message: 'This is a snackbar demonstrating an action and closable state.',
|
|
36
|
+
closable: true,
|
|
37
|
+
actionProperties: {
|
|
38
|
+
label: 'Action',
|
|
39
|
+
title: 'Click here to perform the designated action',
|
|
40
|
+
onClick: onActionClick,
|
|
41
|
+
},
|
|
42
|
+
},
|
|
43
|
+
container);
|
|
44
|
+
});
|
|
45
|
+
container.appendChild(showButton2);
|
|
46
|
+
}
|