chrome-devtools-frontend 1.0.1587905 → 1.0.1589336
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/docs/ui_engineering.md +2 -2
- package/front_end/core/common/AppProvider.ts +1 -2
- package/front_end/core/common/Color.ts +19 -20
- package/front_end/core/common/ParsedURL.ts +3 -3
- package/front_end/core/common/Progress.ts +5 -5
- package/front_end/core/common/Settings.ts +2 -2
- package/front_end/core/dom_extension/DOMExtension.ts +1 -1
- package/front_end/core/host/InspectorFrontendHostAPI.ts +1 -1
- package/front_end/core/host/InspectorFrontendHostStub.ts +1 -11
- package/front_end/core/host/UserMetrics.ts +1 -1
- package/front_end/core/protocol_client/DevToolsCDPConnection.ts +2 -2
- package/front_end/core/sdk/CSSMatchedStyles.ts +1 -1
- package/front_end/core/sdk/CSSProperty.ts +38 -0
- package/front_end/core/sdk/CSSRule.ts +4 -9
- package/front_end/core/sdk/ChildTargetManager.ts +1 -1
- package/front_end/core/sdk/CookieModel.ts +0 -1
- package/front_end/core/sdk/DOMModel.ts +42 -6
- package/front_end/core/sdk/EmulationModel.ts +3 -3
- package/front_end/core/sdk/NetworkRequest.ts +1 -1
- package/front_end/core/sdk/PageResourceLoader.ts +11 -6
- package/front_end/core/sdk/PerformanceMetricsModel.ts +2 -2
- package/front_end/core/sdk/PreloadingModel.ts +15 -6
- package/front_end/core/sdk/ResourceTreeModel.ts +2 -6
- package/front_end/core/sdk/SourceMap.ts +2 -3
- package/front_end/core/sdk/SourceMapManager.ts +1 -2
- package/front_end/entrypoint_template.html +1 -1
- package/front_end/entrypoints/formatter_worker/CSSFormatter.ts +6 -16
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshotWorkerDispatcher.ts +4 -2
- package/front_end/entrypoints/main/main-meta.ts +0 -3
- package/front_end/entrypoints/node_app/app/NodeConnectionsPanel.ts +0 -2
- package/front_end/generated/InspectorBackendCommands.ts +6 -4
- package/front_end/generated/SupportedCSSProperties.js +46 -0
- package/front_end/generated/protocol-mapping.d.ts +4 -0
- package/front_end/generated/protocol-proxy-api.d.ts +5 -0
- package/front_end/generated/protocol.ts +50 -0
- package/front_end/models/ai_assistance/AiConversation.ts +20 -0
- package/front_end/models/ai_assistance/agents/AiAgent.ts +7 -1
- package/front_end/models/ai_assistance/agents/ContextSelectionAgent.snapshot.txt +2 -2
- package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +28 -26
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +3 -5
- package/front_end/models/computed_style/ComputedStyleModel.ts +2 -1
- package/front_end/models/emulation/DeviceModeModel.ts +0 -3
- package/front_end/models/emulation/EmulatedDevices.ts +0 -2
- package/front_end/models/extensions/ExtensionAPI.ts +2 -2
- package/front_end/models/har/Importer.ts +0 -1
- package/front_end/models/har/Log.ts +2 -11
- package/front_end/models/javascript_metadata/NativeFunctions.js +5 -21
- package/front_end/models/logs/NetworkLog.ts +0 -2
- package/front_end/models/network_time_calculator/NetworkTimeCalculator.ts +4 -1
- package/front_end/models/text_utils/TextUtils.ts +0 -9
- package/front_end/models/trace/LanternComputationData.ts +1 -6
- package/front_end/models/trace/helpers/Trace.ts +1 -4
- package/front_end/models/trace/lantern/types/Lantern.ts +6 -6
- package/front_end/panels/accessibility/AccessibilityNodeView.ts +7 -6
- package/front_end/panels/ai_assistance/AiAssistancePanel.ts +15 -26
- package/front_end/panels/application/BackgroundServiceView.ts +0 -2
- package/front_end/panels/application/DeviceBoundSessionsModel.ts +0 -1
- package/front_end/panels/application/IndexedDBViews.ts +19 -23
- package/front_end/panels/application/OriginTrialTreeView.ts +3 -3
- package/front_end/panels/application/components/BackForwardCacheView.ts +1 -1
- package/front_end/panels/application/preloading/PreloadingView.ts +18 -0
- package/front_end/panels/application/preloading/components/RuleSetDetailsView.css +12 -0
- package/front_end/panels/application/preloading/components/RuleSetDetailsView.ts +3 -3
- package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +3 -4
- package/front_end/panels/common/AiCodeGenerationTeaser.ts +76 -19
- package/front_end/panels/common/aiCodeGenerationTeaser.css +11 -0
- package/front_end/panels/console/ConsoleSidebar.ts +1 -1
- package/front_end/panels/console/ConsoleView.ts +4 -0
- package/front_end/panels/console/ConsoleViewMessage.ts +3 -3
- package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +1 -1
- package/front_end/panels/elements/ComputedStyleWidget.ts +32 -32
- package/front_end/panels/elements/ElementsPanel.ts +12 -4
- package/front_end/panels/elements/ElementsTreeElement.ts +9 -1
- package/front_end/panels/elements/ImagePreviewPopover.ts +0 -2
- package/front_end/panels/elements/MarkerDecorator.ts +0 -2
- package/front_end/panels/elements/PropertiesWidget.ts +62 -61
- package/front_end/panels/elements/StylePropertiesSection.ts +32 -3
- package/front_end/panels/elements/StylePropertyTreeElement.ts +15 -20
- package/front_end/panels/elements/StylesSidebarPane.ts +25 -90
- package/front_end/panels/elements/elementsPanel.css +6 -2
- package/front_end/panels/emulation/emulation-meta.ts +0 -2
- package/front_end/panels/event_listeners/EventListenersUtils.ts +0 -1
- package/front_end/panels/lighthouse/LighthouseController.ts +0 -5
- package/front_end/panels/linear_memory_inspector/linear_memory_inspector-meta.ts +1 -3
- package/front_end/panels/media/EventDisplayTable.ts +0 -2
- package/front_end/panels/media/PlayerMessagesView.ts +4 -6
- package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +18 -6
- package/front_end/panels/network/EventSourceMessagesView.ts +0 -2
- package/front_end/panels/network/NetworkLogViewColumns.ts +0 -2
- package/front_end/panels/network/NetworkManageCustomHeadersView.ts +3 -1
- package/front_end/panels/network/NetworkWaterfallColumn.ts +1 -2
- package/front_end/panels/network/RequestConditionsDrawer.ts +2 -2
- package/front_end/panels/network/RequestHeadersView.ts +113 -128
- package/front_end/panels/network/RequestInitiatorView.ts +74 -69
- package/front_end/panels/network/RequestPayloadView.ts +6 -3
- package/front_end/panels/network/ResourceChunkView.ts +0 -2
- package/front_end/panels/network/components/ResponseHeaderSection.ts +3 -1
- package/front_end/panels/network/network-meta.ts +0 -2
- package/front_end/panels/performance_monitor/PerformanceMonitor.ts +1 -9
- package/front_end/panels/profiler/HeapDetachedElementsDataGrid.ts +0 -2
- package/front_end/panels/profiler/LiveHeapProfileView.ts +0 -12
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +14 -1
- package/front_end/panels/profiler/ProfileView.ts +0 -35
- package/front_end/panels/profiler/profiler-meta.ts +0 -1
- package/front_end/panels/recorder/components/StepView.ts +0 -1
- package/front_end/panels/screencast/ScreencastView.ts +2 -2
- package/front_end/panels/search/SearchResultsPane.ts +3 -2
- package/front_end/panels/security/SecurityPanel.ts +0 -1
- package/front_end/panels/sensors/LocationsSettingsTab.ts +27 -9
- package/front_end/panels/settings/FrameworkIgnoreListSettingsTab.ts +1 -1
- package/front_end/panels/settings/SettingsScreen.ts +1 -2
- package/front_end/panels/settings/emulation/DevicesSettingsTab.ts +2 -2
- package/front_end/panels/settings/emulation/utils/UserAgentMetadata.ts +1 -1
- package/front_end/panels/settings/settings-meta.ts +0 -3
- package/front_end/panels/sources/AiCodeCompletionPlugin.ts +6 -0
- package/front_end/panels/sources/CSSPlugin.ts +1 -1
- package/front_end/panels/sources/DebuggerPlugin.ts +1 -5
- package/front_end/panels/sources/sources-meta.ts +0 -9
- package/front_end/panels/timeline/CompatibilityTracksAppender.ts +1 -1
- package/front_end/panels/timeline/ThirdPartyTreeView.ts +5 -2
- package/front_end/panels/timeline/TimelinePanel.ts +0 -7
- package/front_end/panels/timeline/TimelineTreeView.ts +8 -10
- package/front_end/panels/timeline/TimelineUIUtils.ts +11 -3
- package/front_end/panels/timeline/components/IgnoreListSetting.ts +1 -1
- package/front_end/panels/timeline/components/NetworkRequestDetails.ts +0 -1
- package/front_end/panels/timeline/utils/Treemap.ts +0 -4
- package/front_end/panels/whats_new/whats_new-meta.ts +0 -2
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/ui/components/highlighting/HighlightManager.ts +1 -2
- package/front_end/ui/components/highlighting/MarkupHighlight.ts +1 -12
- package/front_end/ui/components/icon_button/IconButton.ts +2 -2
- package/front_end/ui/components/issue_counter/IssueCounter.ts +6 -6
- package/front_end/ui/components/text_editor/AiCodeCompletionProvider.ts +4 -0
- package/front_end/ui/components/text_editor/AiCodeGenerationProvider.ts +11 -6
- package/front_end/ui/legacy/ContextMenu.ts +1 -17
- package/front_end/ui/legacy/EmptyWidget.ts +4 -4
- package/front_end/ui/legacy/Fragment.ts +2 -4
- package/front_end/ui/legacy/SoftContextMenu.ts +1 -15
- package/front_end/ui/legacy/TabbedPane.ts +2 -2
- package/front_end/ui/legacy/Treeoutline.ts +16 -9
- package/front_end/ui/legacy/UIUtils.ts +1 -4
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +6 -3
- package/front_end/ui/legacy/components/inline_editor/ColorSwatch.ts +32 -28
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +31 -6
- package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +0 -2
- package/front_end/ui/legacy/components/quick_open/HelpQuickOpen.ts +0 -1
- package/front_end/ui/legacy/components/quick_open/quick_open-meta.ts +0 -2
- package/front_end/ui/legacy/components/source_frame/XMLView.ts +3 -2
- package/front_end/ui/legacy/components/utils/ImagePreview.ts +3 -3
- package/front_end/ui/visual_logging/KnownContextValues.ts +8 -0
- package/package.json +1 -1
|
@@ -10,13 +10,12 @@ import * as Logs from '../../models/logs/logs.js';
|
|
|
10
10
|
import type * as StackTrace from '../../models/stack_trace/stack_trace.js';
|
|
11
11
|
import * as Components from '../../ui/legacy/components/utils/utils.js';
|
|
12
12
|
import * as UI from '../../ui/legacy/legacy.js';
|
|
13
|
-
import
|
|
13
|
+
import {html, type LitTemplate, nothing, render, type TemplateResult} from '../../ui/lit/lit.js';
|
|
14
14
|
import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
|
|
15
15
|
|
|
16
16
|
import requestInitiatorViewStyles from './requestInitiatorView.css.js';
|
|
17
17
|
import requestInitiatorViewTreeStyles from './requestInitiatorViewTree.css.js';
|
|
18
18
|
|
|
19
|
-
const {html, render, nothing} = Lit;
|
|
20
19
|
const {widgetConfig} = UI.Widget;
|
|
21
20
|
|
|
22
21
|
const UIStrings = {
|
|
@@ -56,12 +55,12 @@ export const DEFAULT_VIEW = (input: ViewInput, _output: undefined, target: HTMLE
|
|
|
56
55
|
return;
|
|
57
56
|
}
|
|
58
57
|
|
|
59
|
-
const renderStackTraceSection = ():
|
|
58
|
+
const renderStackTraceSection = (): TemplateResult => {
|
|
60
59
|
if (!input.stackTrace) {
|
|
61
60
|
return html`${nothing}`;
|
|
62
61
|
}
|
|
63
62
|
return html`
|
|
64
|
-
<li role="treeitem" class="request-initiator-view-section-title" aria-expanded="true">
|
|
63
|
+
<li role="treeitem" class="request-initiator-view-section-title" aria-expanded="true" open>
|
|
65
64
|
${i18nString(UIStrings.requestCallStack)}
|
|
66
65
|
<ul role="group">
|
|
67
66
|
<li role="treeitem">
|
|
@@ -75,87 +74,93 @@ export const DEFAULT_VIEW = (input: ViewInput, _output: undefined, target: HTMLE
|
|
|
75
74
|
`;
|
|
76
75
|
};
|
|
77
76
|
|
|
78
|
-
const renderInitiatorNodes =
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
77
|
+
const renderInitiatorNodes =
|
|
78
|
+
(initiators: SDK.NetworkRequest.NetworkRequest[], index: number,
|
|
79
|
+
initiated: Map<SDK.NetworkRequest.NetworkRequest, SDK.NetworkRequest.NetworkRequest>,
|
|
80
|
+
visited: Set<SDK.NetworkRequest.NetworkRequest>): TemplateResult => {
|
|
81
|
+
if (index >= initiators.length) {
|
|
82
|
+
return html`${nothing}`;
|
|
83
|
+
}
|
|
84
|
+
const request = initiators[index];
|
|
85
|
+
const isCurrentRequest = (index === initiators.length - 1);
|
|
86
|
+
const hasFurtherInitiatedNodes = index + 1 < initiators.length;
|
|
87
|
+
|
|
88
|
+
// clang-format off
|
|
89
|
+
return html`
|
|
90
|
+
<li role="treeitem" ?selected=${isCurrentRequest} aria-expanded="true" open>
|
|
91
|
+
<span style=${isCurrentRequest ? 'font-weight: bold' : ''}>${request.url()}</span>
|
|
92
|
+
${hasFurtherInitiatedNodes || isCurrentRequest ? html`
|
|
93
|
+
<ul role="group">
|
|
94
|
+
${renderInitiatorNodes(initiators, index + 1, initiated, visited)}
|
|
95
|
+
${isCurrentRequest ? renderInitiatedNodes(initiated, request, visited) : nothing}
|
|
96
|
+
</ul>` : nothing}
|
|
97
|
+
</li>`;
|
|
98
|
+
// clang-format on
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
const renderInitiatedNodes =
|
|
102
|
+
(initiated: Map<SDK.NetworkRequest.NetworkRequest, SDK.NetworkRequest.NetworkRequest>,
|
|
103
|
+
parentRequest: SDK.NetworkRequest.NetworkRequest,
|
|
104
|
+
visited: Set<SDK.NetworkRequest.NetworkRequest>): LitTemplate => {
|
|
105
|
+
const children = [];
|
|
106
|
+
for (const [request, initiator] of initiated) {
|
|
107
|
+
if (initiator === parentRequest) {
|
|
108
|
+
children.push(request);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
if (children.length === 0) {
|
|
112
|
+
return nothing;
|
|
113
|
+
}
|
|
114
|
+
return html`
|
|
111
115
|
${children.map(child => {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
116
|
+
const shouldRecurse = !visited.has(child);
|
|
117
|
+
if (shouldRecurse) {
|
|
118
|
+
visited.add(child);
|
|
119
|
+
}
|
|
120
|
+
const renderedChildren = shouldRecurse ? renderInitiatedNodes(initiated, child, visited) : nothing;
|
|
121
|
+
return html`
|
|
122
|
+
<li role="treeitem" aria-expanded="true" open>
|
|
118
123
|
<span>${child.url()}</span>
|
|
119
|
-
${
|
|
124
|
+
${renderedChildren !== nothing ? html`<ul role="group">${renderedChildren}</ul>` : nothing}
|
|
120
125
|
</li>
|
|
121
126
|
`;
|
|
122
|
-
|
|
127
|
+
})}
|
|
123
128
|
`;
|
|
124
|
-
|
|
129
|
+
};
|
|
125
130
|
|
|
126
|
-
const renderInitiatorChain = (initiatorGraph: Logs.NetworkLog.InitiatorGraph):
|
|
131
|
+
const renderInitiatorChain = (initiatorGraph: Logs.NetworkLog.InitiatorGraph): TemplateResult => {
|
|
127
132
|
const initiators = Array.from(initiatorGraph.initiators).reverse();
|
|
128
133
|
const visited = new Set<SDK.NetworkRequest.NetworkRequest>();
|
|
129
134
|
visited.add(input.request);
|
|
135
|
+
const hasInitiatorChain = initiators.length > 0;
|
|
136
|
+
// clang-format off
|
|
130
137
|
return html`
|
|
131
|
-
<li role="treeitem" class="request-initiator-view-section-title" aria-expanded="true">
|
|
138
|
+
<li role="treeitem" class="request-initiator-view-section-title" aria-expanded="true" open>
|
|
132
139
|
${i18nString(UIStrings.requestInitiatorChain)}
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
140
|
+
${hasInitiatorChain ? html`
|
|
141
|
+
<ul role="group">
|
|
142
|
+
${renderInitiatorNodes(initiators, 0, initiatorGraph.initiated, visited)}
|
|
143
|
+
</ul>` : nothing}
|
|
144
|
+
</li>`;
|
|
145
|
+
// clang-format on
|
|
138
146
|
};
|
|
139
147
|
|
|
140
|
-
|
|
141
|
-
|
|
148
|
+
const hasInitiatorChain = input.initiatorGraph.initiators.size > 1 || input.initiatorGraph.initiated.size > 1;
|
|
149
|
+
|
|
150
|
+
// clang-format off
|
|
151
|
+
render(html`
|
|
142
152
|
<div class="request-initiator-view-tree" jslog=${VisualLogging.tree('initiator-tree')}>
|
|
143
|
-
<devtools-tree .template=${
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
${
|
|
151
|
-
(input.initiatorGraph.initiators.size > 1 || input.initiatorGraph.initiated.size > 1) ?
|
|
152
|
-
renderInitiatorChain(input.initiatorGraph) :
|
|
153
|
-
Lit.nothing}
|
|
154
|
-
</ul>
|
|
153
|
+
<devtools-tree .template=${html`
|
|
154
|
+
<style>${requestInitiatorViewTreeStyles}</style>
|
|
155
|
+
${input.stackTrace || hasInitiatorChain ? html`
|
|
156
|
+
<ul role="tree">
|
|
157
|
+
${renderStackTraceSection()}
|
|
158
|
+
${hasInitiatorChain ? renderInitiatorChain(input.initiatorGraph) : nothing}
|
|
159
|
+
</ul>` : nothing}
|
|
155
160
|
`}></devtools-tree>
|
|
156
161
|
</div>
|
|
157
|
-
`,
|
|
158
|
-
|
|
162
|
+
`, target);
|
|
163
|
+
// clang-format on
|
|
159
164
|
};
|
|
160
165
|
|
|
161
166
|
type View = typeof DEFAULT_VIEW;
|
|
@@ -225,6 +225,7 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
|
|
|
225
225
|
@contextmenu=${onContextMenu(input.viewQueryParamSource, input.setViewQueryParamSource)}
|
|
226
226
|
@expanded=${(e: UI.TreeOutline.TreeViewElement.ExpandEvent) =>
|
|
227
227
|
queryStringExpandedSetting.set(e.detail.expanded)}
|
|
228
|
+
?open=${queryStringExpandedSetting.get()}
|
|
228
229
|
>
|
|
229
230
|
<div class="selection fill"></div>${i18nString(UIStrings.queryStringParameters)}<span
|
|
230
231
|
class=payload-count>${`\xA0(${input.queryParameters?.length ?? 0})`}</span>${
|
|
@@ -237,7 +238,7 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
|
|
|
237
238
|
@click=${toggleURLDecoding}>
|
|
238
239
|
${input.decodeRequestParameters ? i18nString(UIStrings.viewUrlEncoded) : i18nString(UIStrings.viewDecoded)}
|
|
239
240
|
</devtools-button>
|
|
240
|
-
<ul role=group
|
|
241
|
+
<ul role=group>
|
|
241
242
|
${input.viewQueryParamSource ? createSourceText(input.queryString ?? '')
|
|
242
243
|
: createParsedParams(input.queryParameters ?? [])}
|
|
243
244
|
</ul>
|
|
@@ -248,6 +249,7 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
|
|
|
248
249
|
jslog=${VisualLogging.section().context('form-data')}
|
|
249
250
|
@contextmenu=${onContextMenu(input.viewFormParamSource, input.setViewFormParamSource)}
|
|
250
251
|
@expanded=${(e: UI.TreeOutline.TreeViewElement.ExpandEvent) => formDataExpandedSetting.set(e.detail.expanded)}
|
|
252
|
+
?open=${formDataExpandedSetting.get()}
|
|
251
253
|
>
|
|
252
254
|
<div class="selection fill"></div>${i18nString(UIStrings.formData)}<span
|
|
253
255
|
class=payload-count>${`\xA0(${input.formParameters?.length ?? 0})`}</span>${
|
|
@@ -260,7 +262,7 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
|
|
|
260
262
|
@click=${toggleURLDecoding}>
|
|
261
263
|
${input.decodeRequestParameters ? i18nString(UIStrings.viewUrlEncoded) : i18nString(UIStrings.viewDecoded)}
|
|
262
264
|
</devtools-button>
|
|
263
|
-
<ul role=group
|
|
265
|
+
<ul role=group>
|
|
264
266
|
${input.viewFormParamSource ? createSourceText(input.formData ?? '')
|
|
265
267
|
: createParsedParams(input.formParameters ?? [])}
|
|
266
268
|
</ul>
|
|
@@ -273,10 +275,11 @@ export const DEFAULT_VIEW: View = (input, output, target) => {
|
|
|
273
275
|
/* includeURLDecodingOption*/ false)}
|
|
274
276
|
@expanded=${(e: UI.TreeOutline.TreeViewElement.ExpandEvent) =>
|
|
275
277
|
requestPayloadExpandedSetting.set(e.detail.expanded)}
|
|
278
|
+
?open=${requestPayloadExpandedSetting.get()}
|
|
276
279
|
>
|
|
277
280
|
<div class="selection fill"></div>${i18nString(UIStrings.requestPayload)}${
|
|
278
281
|
createViewSourceToggle(input.viewJSONPayloadSource, input.setViewJSONPayloadSource)}
|
|
279
|
-
<ul role=group
|
|
282
|
+
<ul role=group>
|
|
280
283
|
${!parsedFormData || input.viewJSONPayloadSource ? createSourceText(input.formData ?? '')
|
|
281
284
|
: createPayload(parsedFormData)}
|
|
282
285
|
</ul>
|
|
@@ -113,8 +113,6 @@ export abstract class ResourceChunkView<Chunk> extends UI.Widget.VBox {
|
|
|
113
113
|
this.dataGrid = new DataGrid.SortableDataGrid.SortableDataGrid({
|
|
114
114
|
displayName: dataGridDisplayName,
|
|
115
115
|
columns,
|
|
116
|
-
deleteCallback: undefined,
|
|
117
|
-
refreshCallback: undefined,
|
|
118
116
|
});
|
|
119
117
|
this.dataGrid.setRowContextMenuCallback(onRowContextMenu.bind(this));
|
|
120
118
|
this.dataGrid.setEnableAutoScrollToBottom(true);
|
|
@@ -592,7 +592,9 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDetai
|
|
|
592
592
|
value: null,
|
|
593
593
|
blockedDetails: {
|
|
594
594
|
explanation: i18nLazyString(UIStrings.toEmbedThisFrameInYourDocument),
|
|
595
|
-
examples: [{
|
|
595
|
+
examples: [{
|
|
596
|
+
codeSnippet: 'Cross-Origin-Embedder-Policy: require-corp',
|
|
597
|
+
}],
|
|
596
598
|
link: {url: 'https://web.dev/coop-coep/'},
|
|
597
599
|
},
|
|
598
600
|
},
|
|
@@ -450,7 +450,6 @@ UI.ContextMenu.registerProvider({
|
|
|
450
450
|
const Network = await loadNetworkModule();
|
|
451
451
|
return Network.NetworkPanel.NetworkPanel.instance();
|
|
452
452
|
},
|
|
453
|
-
experiment: undefined,
|
|
454
453
|
});
|
|
455
454
|
|
|
456
455
|
Common.Revealer.registerRevealer({
|
|
@@ -470,7 +469,6 @@ Common.Revealer.registerRevealer({
|
|
|
470
469
|
contextTypes() {
|
|
471
470
|
return [NetworkForward.UIRequestLocation.UIRequestLocation];
|
|
472
471
|
},
|
|
473
|
-
destination: undefined,
|
|
474
472
|
async loadRevealer() {
|
|
475
473
|
const Network = await loadNetworkModule();
|
|
476
474
|
return new Network.NetworkPanel.RequestLocationRevealer();
|
|
@@ -506,14 +506,7 @@ export class PerformanceMonitorImpl extends UI.Widget.HBox implements
|
|
|
506
506
|
const themeSupport = ThemeSupport.ThemeSupport.instance();
|
|
507
507
|
const elementForStyles = this.contentElement;
|
|
508
508
|
|
|
509
|
-
const defaults = {
|
|
510
|
-
color: undefined,
|
|
511
|
-
format: undefined,
|
|
512
|
-
currentMax: undefined,
|
|
513
|
-
max: undefined,
|
|
514
|
-
smooth: undefined,
|
|
515
|
-
stacked: undefined,
|
|
516
|
-
};
|
|
509
|
+
const defaults: Partial<ChartInfo> = {};
|
|
517
510
|
|
|
518
511
|
return [
|
|
519
512
|
{
|
|
@@ -543,7 +536,6 @@ export class PerformanceMonitorImpl extends UI.Widget.HBox implements
|
|
|
543
536
|
stacked: true,
|
|
544
537
|
color: themeSupport.getComputedValue('--override-color-perf-monitor-cpu', elementForStyles),
|
|
545
538
|
max: 1,
|
|
546
|
-
currentMax: undefined,
|
|
547
539
|
},
|
|
548
540
|
{
|
|
549
541
|
...defaults,
|
|
@@ -45,8 +45,6 @@ export class HeapDetachedElementsDataGrid extends DataGrid.DataGrid.DataGridImpl
|
|
|
45
45
|
super({
|
|
46
46
|
displayName: i18nString(UIStrings.detachedElementsList),
|
|
47
47
|
columns,
|
|
48
|
-
deleteCallback: undefined,
|
|
49
|
-
refreshCallback: undefined,
|
|
50
48
|
});
|
|
51
49
|
|
|
52
50
|
this.setStriped(true);
|
|
@@ -106,20 +106,10 @@ export class LiveHeapProfileView extends UI.Widget.VBox {
|
|
|
106
106
|
const defaultColumnConfig: DataGrid.DataGrid.ColumnDescriptor = {
|
|
107
107
|
id: '',
|
|
108
108
|
title: Common.UIString.LocalizedEmptyString,
|
|
109
|
-
width: undefined,
|
|
110
109
|
fixedWidth: true,
|
|
111
110
|
sortable: true,
|
|
112
111
|
align: DataGrid.DataGrid.Align.RIGHT,
|
|
113
112
|
sort: DataGrid.DataGrid.Order.Descending,
|
|
114
|
-
titleDOMFragment: undefined,
|
|
115
|
-
editable: undefined,
|
|
116
|
-
nonSelectable: undefined,
|
|
117
|
-
longText: undefined,
|
|
118
|
-
disclosure: undefined,
|
|
119
|
-
weight: undefined,
|
|
120
|
-
allowInSortByEvenWhenHidden: undefined,
|
|
121
|
-
dataType: undefined,
|
|
122
|
-
defaultWeight: undefined,
|
|
123
113
|
};
|
|
124
114
|
const columns = [
|
|
125
115
|
{
|
|
@@ -154,8 +144,6 @@ export class LiveHeapProfileView extends UI.Widget.VBox {
|
|
|
154
144
|
const dataGrid = new DataGrid.SortableDataGrid.SortableDataGrid({
|
|
155
145
|
displayName: i18nString(UIStrings.heapProfile),
|
|
156
146
|
columns,
|
|
157
|
-
deleteCallback: undefined,
|
|
158
|
-
refreshCallback: undefined,
|
|
159
147
|
});
|
|
160
148
|
dataGrid.setResizeMethod(DataGrid.DataGrid.ResizeMethod.LAST);
|
|
161
149
|
dataGrid.element.classList.add('flex-auto');
|
|
@@ -32,7 +32,20 @@ export class ProfileFlameChartDataProvider implements PerfUI.FlameChart.FlameCha
|
|
|
32
32
|
static colorGenerator(): Common.Color.Generator {
|
|
33
33
|
if (!colorGeneratorInstance) {
|
|
34
34
|
colorGeneratorInstance = new Common.Color.Generator(
|
|
35
|
-
{
|
|
35
|
+
{
|
|
36
|
+
min: 30,
|
|
37
|
+
max: 330,
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
min: 50,
|
|
41
|
+
max: 80,
|
|
42
|
+
count: 5,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
min: 80,
|
|
46
|
+
max: 90,
|
|
47
|
+
count: 3,
|
|
48
|
+
});
|
|
36
49
|
|
|
37
50
|
colorGeneratorInstance.setColorForID('(idle)', 'hsl(0, 0%, 94%)');
|
|
38
51
|
colorGeneratorInstance.setColorForID('(program)', 'hsl(0, 0%, 80%)');
|
|
@@ -146,16 +146,6 @@ export class ProfileView extends UI.View.SimpleView implements UI.SearchableView
|
|
|
146
146
|
fixedWidth: true,
|
|
147
147
|
sortable: true,
|
|
148
148
|
sort: DataGrid.DataGrid.Order.Descending,
|
|
149
|
-
titleDOMFragment: undefined,
|
|
150
|
-
align: undefined,
|
|
151
|
-
editable: undefined,
|
|
152
|
-
nonSelectable: undefined,
|
|
153
|
-
longText: undefined,
|
|
154
|
-
disclosure: undefined,
|
|
155
|
-
weight: undefined,
|
|
156
|
-
allowInSortByEvenWhenHidden: undefined,
|
|
157
|
-
dataType: undefined,
|
|
158
|
-
defaultWeight: undefined,
|
|
159
149
|
});
|
|
160
150
|
columns.push({
|
|
161
151
|
id: 'total',
|
|
@@ -163,42 +153,17 @@ export class ProfileView extends UI.View.SimpleView implements UI.SearchableView
|
|
|
163
153
|
width: '120px',
|
|
164
154
|
fixedWidth: true,
|
|
165
155
|
sortable: true,
|
|
166
|
-
sort: undefined,
|
|
167
|
-
titleDOMFragment: undefined,
|
|
168
|
-
align: undefined,
|
|
169
|
-
editable: undefined,
|
|
170
|
-
nonSelectable: undefined,
|
|
171
|
-
longText: undefined,
|
|
172
|
-
disclosure: undefined,
|
|
173
|
-
weight: undefined,
|
|
174
|
-
allowInSortByEvenWhenHidden: undefined,
|
|
175
|
-
dataType: undefined,
|
|
176
|
-
defaultWeight: undefined,
|
|
177
156
|
});
|
|
178
157
|
columns.push({
|
|
179
158
|
id: 'function',
|
|
180
159
|
title: i18nString(UIStrings.function),
|
|
181
160
|
disclosure: true,
|
|
182
161
|
sortable: true,
|
|
183
|
-
sort: undefined,
|
|
184
|
-
titleDOMFragment: undefined,
|
|
185
|
-
align: undefined,
|
|
186
|
-
editable: undefined,
|
|
187
|
-
nonSelectable: undefined,
|
|
188
|
-
longText: undefined,
|
|
189
|
-
weight: undefined,
|
|
190
|
-
allowInSortByEvenWhenHidden: undefined,
|
|
191
|
-
dataType: undefined,
|
|
192
|
-
defaultWeight: undefined,
|
|
193
|
-
width: undefined,
|
|
194
|
-
fixedWidth: undefined,
|
|
195
162
|
});
|
|
196
163
|
|
|
197
164
|
this.dataGrid = new DataGrid.DataGrid.DataGridImpl({
|
|
198
165
|
displayName: i18nString(UIStrings.profiler),
|
|
199
166
|
columns,
|
|
200
|
-
deleteCallback: undefined,
|
|
201
|
-
refreshCallback: undefined,
|
|
202
167
|
});
|
|
203
168
|
this.dataGrid.addEventListener(DataGrid.DataGrid.Events.SORTING_CHANGED, this.sortProfile, this);
|
|
204
169
|
this.dataGrid.addEventListener(DataGrid.DataGrid.Events.SELECTED_NODE, this.nodeSelected.bind(this, true));
|
|
@@ -244,7 +244,7 @@ export class ScreencastView extends UI.Widget.VBox implements SDK.OverlayModel.H
|
|
|
244
244
|
this.viewportElement.style.width = metadata.deviceWidth * this.screenZoom + bordersSize + 'px';
|
|
245
245
|
this.viewportElement.style.height = metadata.deviceHeight * this.screenZoom + bordersSize + 'px';
|
|
246
246
|
|
|
247
|
-
const data = this.highlightNode ? {node: this.highlightNode
|
|
247
|
+
const data = this.highlightNode ? {node: this.highlightNode} : {clear: true};
|
|
248
248
|
void this.updateHighlightInOverlayAndRepaint(data, this.highlightConfig);
|
|
249
249
|
};
|
|
250
250
|
this.imageElement.src = 'data:image/jpg;base64,' + base64Data;
|
|
@@ -309,7 +309,7 @@ export class ScreencastView extends UI.Widget.VBox implements SDK.OverlayModel.H
|
|
|
309
309
|
}
|
|
310
310
|
|
|
311
311
|
if (event.type === 'mousemove') {
|
|
312
|
-
void this.updateHighlightInOverlayAndRepaint({node
|
|
312
|
+
void this.updateHighlightInOverlayAndRepaint({node}, this.inspectModeConfig);
|
|
313
313
|
this.domModel.overlayModel().nodeHighlightRequested({nodeId: node.id});
|
|
314
314
|
} else if (event.type === 'click') {
|
|
315
315
|
this.domModel.overlayModel().inspectNodeRequested({backendNodeId: node.backendNodeId()});
|
|
@@ -69,10 +69,11 @@ export const DEFAULT_VIEW: View = (input, _output, target) => {
|
|
|
69
69
|
${results.map(searchResult => html`
|
|
70
70
|
<li @expand=${(e: UI.TreeOutline.TreeViewElement.ExpandEvent) => onExpand(searchResult, e)}
|
|
71
71
|
role="treeitem"
|
|
72
|
-
class="search-result"
|
|
72
|
+
class="search-result"
|
|
73
|
+
?open=${expandedResults.has(searchResult)}>
|
|
73
74
|
<style>${searchResultsPaneStyles}</style>
|
|
74
75
|
${renderSearchResult(searchResult)}
|
|
75
|
-
<ul role="group"
|
|
76
|
+
<ul role="group">
|
|
76
77
|
${renderSearchMatches(searchResult, matches, onSelectMatch, onShowMoreMatches)}
|
|
77
78
|
</ul>
|
|
78
79
|
</li>`)}
|
|
@@ -733,7 +733,6 @@ export class SecurityPanel extends UI.Panel.Panel implements SDK.TargetManager.S
|
|
|
733
733
|
securityState,
|
|
734
734
|
securityDetails: request.securityDetails(),
|
|
735
735
|
loadedFromCache: request.cached(),
|
|
736
|
-
originView: undefined,
|
|
737
736
|
};
|
|
738
737
|
this.origins.set(origin, newOriginState);
|
|
739
738
|
|
|
@@ -339,7 +339,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
339
339
|
if (errorMessage) {
|
|
340
340
|
return {valid: false, errorMessage};
|
|
341
341
|
}
|
|
342
|
-
return {
|
|
342
|
+
return {
|
|
343
|
+
valid: true,
|
|
344
|
+
};
|
|
343
345
|
}
|
|
344
346
|
|
|
345
347
|
function latValidator(
|
|
@@ -350,7 +352,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
350
352
|
const parsedValue = Number(value);
|
|
351
353
|
|
|
352
354
|
if (!value) {
|
|
353
|
-
return {
|
|
355
|
+
return {
|
|
356
|
+
valid: true,
|
|
357
|
+
};
|
|
354
358
|
}
|
|
355
359
|
|
|
356
360
|
let errorMessage;
|
|
@@ -365,7 +369,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
365
369
|
if (errorMessage) {
|
|
366
370
|
return {valid: false, errorMessage};
|
|
367
371
|
}
|
|
368
|
-
return {
|
|
372
|
+
return {
|
|
373
|
+
valid: true,
|
|
374
|
+
};
|
|
369
375
|
}
|
|
370
376
|
|
|
371
377
|
function longValidator(
|
|
@@ -376,7 +382,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
376
382
|
const parsedValue = Number(value);
|
|
377
383
|
|
|
378
384
|
if (!value) {
|
|
379
|
-
return {
|
|
385
|
+
return {
|
|
386
|
+
valid: true,
|
|
387
|
+
};
|
|
380
388
|
}
|
|
381
389
|
|
|
382
390
|
let errorMessage;
|
|
@@ -391,7 +399,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
391
399
|
if (errorMessage) {
|
|
392
400
|
return {valid: false, errorMessage};
|
|
393
401
|
}
|
|
394
|
-
return {
|
|
402
|
+
return {
|
|
403
|
+
valid: true,
|
|
404
|
+
};
|
|
395
405
|
}
|
|
396
406
|
|
|
397
407
|
function timezoneIdValidator(
|
|
@@ -405,7 +415,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
405
415
|
// alphabetic character. The empty string resets the override,
|
|
406
416
|
// and is accepted as well.
|
|
407
417
|
if (value === '' || /[a-zA-Z]/.test(value)) {
|
|
408
|
-
return {
|
|
418
|
+
return {
|
|
419
|
+
valid: true,
|
|
420
|
+
};
|
|
409
421
|
}
|
|
410
422
|
const errorMessage = i18nString(UIStrings.timezoneIdMustContainAlphabetic);
|
|
411
423
|
return {valid: false, errorMessage};
|
|
@@ -421,7 +433,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
421
433
|
// The empty string resets the override, and is accepted as
|
|
422
434
|
// well.
|
|
423
435
|
if (value === '' || /[a-zA-Z]{2}/.test(value)) {
|
|
424
|
-
return {
|
|
436
|
+
return {
|
|
437
|
+
valid: true,
|
|
438
|
+
};
|
|
425
439
|
}
|
|
426
440
|
const errorMessage = i18nString(UIStrings.localeMustContainAlphabetic);
|
|
427
441
|
return {valid: false, errorMessage};
|
|
@@ -434,7 +448,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
434
448
|
const parsedValue = Number(value);
|
|
435
449
|
|
|
436
450
|
if (!value) {
|
|
437
|
-
return {
|
|
451
|
+
return {
|
|
452
|
+
valid: true,
|
|
453
|
+
};
|
|
438
454
|
}
|
|
439
455
|
|
|
440
456
|
let errorMessage;
|
|
@@ -447,7 +463,9 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
|
447
463
|
if (errorMessage) {
|
|
448
464
|
return {valid: false, errorMessage};
|
|
449
465
|
}
|
|
450
|
-
return {
|
|
466
|
+
return {
|
|
467
|
+
valid: true,
|
|
468
|
+
};
|
|
451
469
|
}
|
|
452
470
|
}
|
|
453
471
|
}
|
|
@@ -316,7 +316,7 @@ export class FrameworkIgnoreListSettingsTab extends UI.Widget.VBox implements
|
|
|
316
316
|
if (!regex) {
|
|
317
317
|
return {valid: false, errorMessage: i18nString(UIStrings.patternMustBeAValidRegular)};
|
|
318
318
|
}
|
|
319
|
-
return {valid: true
|
|
319
|
+
return {valid: true};
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
}
|
|
@@ -166,8 +166,7 @@ export class SettingsScreen extends UI.Widget.VBox implements UI.View.ViewLocati
|
|
|
166
166
|
return settingsScreen;
|
|
167
167
|
}
|
|
168
168
|
|
|
169
|
-
static async showSettingsScreen(
|
|
170
|
-
options: ShowSettingsScreenOptions|undefined = {name: undefined, focusTabHeader: undefined}): Promise<void> {
|
|
169
|
+
static async showSettingsScreen(options: ShowSettingsScreenOptions = {}): Promise<void> {
|
|
171
170
|
const {name, focusTabHeader} = options;
|
|
172
171
|
const settingsScreen = SettingsScreen.revealSettingsScreen();
|
|
173
172
|
|
|
@@ -311,7 +311,7 @@ export class DevicesSettingsTab extends UI.Widget.VBox implements
|
|
|
311
311
|
|
|
312
312
|
const ua = uaStringFields.createChild('div', 'hbox');
|
|
313
313
|
ua.appendChild(editor.createInput('user-agent', 'text', i18nString(UIStrings.userAgentString), () => {
|
|
314
|
-
return {valid: true
|
|
314
|
+
return {valid: true};
|
|
315
315
|
}));
|
|
316
316
|
const uaTypeOptions = [
|
|
317
317
|
EmulationModel.DeviceModeModel.UA.MOBILE,
|
|
@@ -320,7 +320,7 @@ export class DevicesSettingsTab extends UI.Widget.VBox implements
|
|
|
320
320
|
EmulationModel.DeviceModeModel.UA.DESKTOP_TOUCH,
|
|
321
321
|
];
|
|
322
322
|
const uaType = editor.createSelect('ua-type', uaTypeOptions, () => {
|
|
323
|
-
return {valid: true
|
|
323
|
+
return {valid: true};
|
|
324
324
|
}, i18nString(UIStrings.userAgentType));
|
|
325
325
|
uaType.classList.add('device-edit-fixed');
|
|
326
326
|
ua.appendChild(uaType);
|
|
@@ -90,5 +90,5 @@ export function validateAsStructuredHeadersString(value: string, errorString: st
|
|
|
90
90
|
if (parsedResult.kind === ResultKind.ERROR) {
|
|
91
91
|
return {valid: false, errorMessage: errorString};
|
|
92
92
|
}
|
|
93
|
-
return {valid: true
|
|
93
|
+
return {valid: true};
|
|
94
94
|
}
|
|
@@ -280,7 +280,6 @@ Common.Revealer.registerRevealer({
|
|
|
280
280
|
Root.Runtime.HostExperiment,
|
|
281
281
|
];
|
|
282
282
|
},
|
|
283
|
-
destination: undefined,
|
|
284
283
|
async loadRevealer() {
|
|
285
284
|
const Settings = await loadSettingsModule();
|
|
286
285
|
return new Settings.SettingsScreen.Revealer();
|
|
@@ -290,11 +289,9 @@ Common.Revealer.registerRevealer({
|
|
|
290
289
|
UI.ContextMenu.registerItem({
|
|
291
290
|
location: UI.ContextMenu.ItemLocation.MAIN_MENU_FOOTER,
|
|
292
291
|
actionId: 'settings.shortcuts',
|
|
293
|
-
order: undefined,
|
|
294
292
|
});
|
|
295
293
|
|
|
296
294
|
UI.ContextMenu.registerItem({
|
|
297
295
|
location: UI.ContextMenu.ItemLocation.MAIN_MENU_HELP_DEFAULT,
|
|
298
296
|
actionId: 'settings.documentation',
|
|
299
|
-
order: undefined,
|
|
300
297
|
});
|