chrome-devtools-frontend 1.0.1027585 → 1.0.1028626
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/front_end/core/i18n/locales/en-US.json +18 -0
- package/front_end/core/i18n/locales/en-XL.json +18 -0
- package/front_end/core/sdk/DebuggerModel.ts +9 -10
- package/front_end/core/sdk/Script.ts +4 -5
- package/front_end/core/sdk/SourceMapManager.ts +5 -4
- package/front_end/generated/InspectorBackendCommands.js +6 -5
- package/front_end/generated/SupportedCSSProperties.js +6 -0
- package/front_end/generated/protocol-mapping.d.ts +7 -0
- package/front_end/generated/protocol-proxy-api.d.ts +5 -0
- package/front_end/generated/protocol.ts +36 -4
- package/front_end/models/issues_manager/AttributionReportingIssue.ts +15 -0
- package/front_end/models/issues_manager/DeprecationIssue.ts +9 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +7 -2
- package/front_end/panels/application/StorageView.ts +2 -1
- package/front_end/panels/application/components/Prerender2.ts +12 -0
- package/front_end/panels/console/consoleView.css +0 -4
- package/front_end/panels/elements/StylePropertyTreeElement.ts +2 -1
- package/front_end/panels/network/components/RequestHeadersView.css +7 -0
- package/front_end/panels/network/components/RequestHeadersView.ts +97 -18
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts +25 -7
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +22 -30
- package/front_end/ui/legacy/SplitWidget.ts +1 -0
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +1 -1
- package/package.json +1 -1
@@ -1397,6 +1397,9 @@
|
|
1397
1397
|
"models/issues_manager/DeprecationIssue.ts | eventPath": {
|
1398
1398
|
"message": "Event.path is deprecated and will be removed. Please use Event.composedPath() instead."
|
1399
1399
|
},
|
1400
|
+
"models/issues_manager/DeprecationIssue.ts | expectCTHeader": {
|
1401
|
+
"message": "The Expect-CT header is deprecated and will be removed. Chrome requires Certificate Transparency for all publicly trusted certificates issued after April 30, 2018."
|
1402
|
+
},
|
1400
1403
|
"models/issues_manager/DeprecationIssue.ts | feature": {
|
1401
1404
|
"message": "Check the feature status page for more details."
|
1402
1405
|
},
|
@@ -3281,6 +3284,9 @@
|
|
3281
3284
|
"panels/application/components/Prerender2.ts | EmbedderTriggeredAndSameOriginRedirected": {
|
3282
3285
|
"message": "Prerendering triggered by Chrome internal (e.g., Omnibox prerendering) is canceled because the navigation is redirected to another same-origin page."
|
3283
3286
|
},
|
3287
|
+
"panels/application/components/Prerender2.ts | FailToGetMemoryUsage": {
|
3288
|
+
"message": "Fail to get memory usage"
|
3289
|
+
},
|
3284
3290
|
"panels/application/components/Prerender2.ts | InProgressNavigation": {
|
3285
3291
|
"message": "InProgressNavigation."
|
3286
3292
|
},
|
@@ -3302,6 +3308,9 @@
|
|
3302
3308
|
"panels/application/components/Prerender2.ts | MaxNumOfRunningPrerendersExceeded": {
|
3303
3309
|
"message": "Max number of prerendering exceeded."
|
3304
3310
|
},
|
3311
|
+
"panels/application/components/Prerender2.ts | MemoryLimitExceeded": {
|
3312
|
+
"message": "Memory limit exceeded"
|
3313
|
+
},
|
3305
3314
|
"panels/application/components/Prerender2.ts | MixedContent": {
|
3306
3315
|
"message": "Prerendering is canceled by a mixed content frame."
|
3307
3316
|
},
|
@@ -6818,9 +6827,18 @@
|
|
6818
6827
|
"panels/network/BlockedURLsPane.ts | textPatternToBlockMatching": {
|
6819
6828
|
"message": "Text pattern to block matching requests; use * for wildcard"
|
6820
6829
|
},
|
6830
|
+
"panels/network/components/RequestHeadersView.ts | activeClientExperimentVariation": {
|
6831
|
+
"message": "Active client experiment variation IDs."
|
6832
|
+
},
|
6833
|
+
"panels/network/components/RequestHeadersView.ts | activeClientExperimentVariationIds": {
|
6834
|
+
"message": "Active client experiment variation IDs that trigger server-side behavior."
|
6835
|
+
},
|
6821
6836
|
"panels/network/components/RequestHeadersView.ts | chooseThisOptionIfTheResourceAnd": {
|
6822
6837
|
"message": "Choose this option if the resource and the document are served from the same site."
|
6823
6838
|
},
|
6839
|
+
"panels/network/components/RequestHeadersView.ts | decoded": {
|
6840
|
+
"message": "Decoded:"
|
6841
|
+
},
|
6824
6842
|
"panels/network/components/RequestHeadersView.ts | fromDiskCache": {
|
6825
6843
|
"message": "(from disk cache)"
|
6826
6844
|
},
|
@@ -1397,6 +1397,9 @@
|
|
1397
1397
|
"models/issues_manager/DeprecationIssue.ts | eventPath": {
|
1398
1398
|
"message": "Event.path îś d̂ép̂ŕêćât́êd́ âńd̂ ẃîĺl̂ b́ê ŕêḿôv́êd́. P̂ĺêáŝé ûśê Event.composedPath() ín̂śt̂éâd́."
|
1399
1399
|
},
|
1400
|
+
"models/issues_manager/DeprecationIssue.ts | expectCTHeader": {
|
1401
|
+
"message": "T̂h́ê Expect-CT h́êád̂ér̂ íŝ d́êṕr̂éĉát̂éd̂ án̂d́ ŵíl̂ĺ b̂é r̂ém̂óv̂éd̂. Ćĥŕôḿê ŕêq́ûír̂éŝ Ćêŕt̂íf̂íĉát̂é T̂ŕâńŝṕâŕêńĉý f̂ór̂ ál̂ĺ p̂úb̂ĺîćl̂ý t̂ŕûśt̂éd̂ ćêŕt̂íf̂íĉát̂éŝ íŝśûéd̂ áf̂t́êŕ Âṕr̂íl̂ 30, 2018."
|
1402
|
+
},
|
1400
1403
|
"models/issues_manager/DeprecationIssue.ts | feature": {
|
1401
1404
|
"message": "Ĉh́êćk̂ t́ĥé f̂éât́ûŕê śt̂át̂úŝ ṕâǵê f́ôŕ m̂ór̂é d̂ét̂áîĺŝ."
|
1402
1405
|
},
|
@@ -3281,6 +3284,9 @@
|
|
3281
3284
|
"panels/application/components/Prerender2.ts | EmbedderTriggeredAndSameOriginRedirected": {
|
3282
3285
|
"message": "P̂ŕêŕêńd̂ér̂ín̂ǵ t̂ŕîǵĝér̂éd̂ b́ŷ Ćĥŕôḿê ín̂t́êŕn̂ál̂ (é.ĝ., Óm̂ńîb́ôx́ p̂ŕêŕêńd̂ér̂ín̂ǵ) îś ĉán̂ćêĺêd́ b̂éĉáûśê t́ĥé n̂áv̂íĝát̂íôń îś r̂éd̂ír̂éĉt́êd́ t̂ó âńôt́ĥér̂ śâḿê-ór̂íĝín̂ ṕâǵê."
|
3283
3286
|
},
|
3287
|
+
"panels/application/components/Prerender2.ts | FailToGetMemoryUsage": {
|
3288
|
+
"message": "F̂áîĺ t̂ó ĝét̂ ḿêḿôŕŷ úŝáĝé"
|
3289
|
+
},
|
3284
3290
|
"panels/application/components/Prerender2.ts | InProgressNavigation": {
|
3285
3291
|
"message": "ÎńP̂ŕôǵr̂éŝśN̂áv̂íĝát̂íôń."
|
3286
3292
|
},
|
@@ -3302,6 +3308,9 @@
|
|
3302
3308
|
"panels/application/components/Prerender2.ts | MaxNumOfRunningPrerendersExceeded": {
|
3303
3309
|
"message": "M̂áx̂ ńûḿb̂ér̂ óf̂ ṕr̂ér̂én̂d́êŕîńĝ éx̂ćêéd̂éd̂."
|
3304
3310
|
},
|
3311
|
+
"panels/application/components/Prerender2.ts | MemoryLimitExceeded": {
|
3312
|
+
"message": "M̂ém̂ór̂ý l̂ím̂ít̂ éx̂ćêéd̂éd̂"
|
3313
|
+
},
|
3305
3314
|
"panels/application/components/Prerender2.ts | MixedContent": {
|
3306
3315
|
"message": "P̂ŕêŕêńd̂ér̂ín̂ǵ îś ĉán̂ćêĺêd́ b̂ý â ḿîx́êd́ ĉón̂t́êńt̂ f́r̂ám̂é."
|
3307
3316
|
},
|
@@ -6818,9 +6827,18 @@
|
|
6818
6827
|
"panels/network/BlockedURLsPane.ts | textPatternToBlockMatching": {
|
6819
6828
|
"message": "T̂éx̂t́ p̂át̂t́êŕn̂ t́ô b́l̂óĉḱ m̂át̂ćĥín̂ǵ r̂éq̂úêśt̂ś; ûśê * f́ôŕ ŵíl̂d́ĉár̂d́"
|
6820
6829
|
},
|
6830
|
+
"panels/network/components/RequestHeadersView.ts | activeClientExperimentVariation": {
|
6831
|
+
"message": "Âćt̂ív̂é client experiment variation IDs."
|
6832
|
+
},
|
6833
|
+
"panels/network/components/RequestHeadersView.ts | activeClientExperimentVariationIds": {
|
6834
|
+
"message": "Âćt̂ív̂é client experiment variation IDs t̂h́ât́ t̂ŕîǵĝér̂ śêŕv̂ér̂-śîd́ê b́êh́âv́îór̂."
|
6835
|
+
},
|
6821
6836
|
"panels/network/components/RequestHeadersView.ts | chooseThisOptionIfTheResourceAnd": {
|
6822
6837
|
"message": "Ĉh́ôóŝé t̂h́îś ôṕt̂íôń îf́ t̂h́ê ŕêśôúr̂ćê án̂d́ t̂h́ê d́ôćûḿêńt̂ ár̂é ŝér̂v́êd́ f̂ŕôḿ t̂h́ê śâḿê śît́ê."
|
6823
6838
|
},
|
6839
|
+
"panels/network/components/RequestHeadersView.ts | decoded": {
|
6840
|
+
"message": "D̂éĉód̂éd̂:"
|
6841
|
+
},
|
6824
6842
|
"panels/network/components/RequestHeadersView.ts | fromDiskCache": {
|
6825
6843
|
"message": "(f̂ŕôḿ d̂íŝḱ ĉáĉh́ê)"
|
6826
6844
|
},
|
@@ -681,9 +681,9 @@ export class DebuggerModel extends SDKModel<EventTypes> {
|
|
681
681
|
// TODO(crbug.com/1172300) Ignored during the jsdoc to ts migration
|
682
682
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
683
683
|
executionContextId: number, hash: string, executionContextAuxData: any, isLiveEdit: boolean,
|
684
|
-
sourceMapURL:
|
685
|
-
|
686
|
-
|
684
|
+
sourceMapURL: string|undefined, hasSourceURLComment: boolean, hasSyntaxError: boolean, length: number,
|
685
|
+
isModule: boolean|null, originStackTrace: Protocol.Runtime.StackTrace|null, codeOffset: number|null,
|
686
|
+
scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null,
|
687
687
|
embedderName: Platform.DevToolsPath.UrlString|null): Script {
|
688
688
|
const knownScript = this.#scriptsInternal.get(scriptId);
|
689
689
|
if (knownScript) {
|
@@ -1045,10 +1045,9 @@ class DebuggerDispatcher implements ProtocolProxyApi.DebuggerDispatcher {
|
|
1045
1045
|
}
|
1046
1046
|
this.#debuggerModel.parsedScriptSource(
|
1047
1047
|
scriptId, url as Platform.DevToolsPath.UrlString, startLine, startColumn, endLine, endColumn,
|
1048
|
-
executionContextId, hash, executionContextAuxData, Boolean(isLiveEdit),
|
1049
|
-
|
1050
|
-
|
1051
|
-
embedderName as Platform.DevToolsPath.UrlString || null);
|
1048
|
+
executionContextId, hash, executionContextAuxData, Boolean(isLiveEdit), sourceMapURL, Boolean(hasSourceURL),
|
1049
|
+
false, length || 0, isModule || null, stackTrace || null, codeOffset || null, scriptLanguage || null,
|
1050
|
+
debugSymbols || null, embedderName as Platform.DevToolsPath.UrlString || null);
|
1052
1051
|
}
|
1053
1052
|
|
1054
1053
|
scriptFailedToParse({
|
@@ -1075,9 +1074,9 @@ class DebuggerDispatcher implements ProtocolProxyApi.DebuggerDispatcher {
|
|
1075
1074
|
}
|
1076
1075
|
this.#debuggerModel.parsedScriptSource(
|
1077
1076
|
scriptId, url as Platform.DevToolsPath.UrlString, startLine, startColumn, endLine, endColumn,
|
1078
|
-
executionContextId, hash, executionContextAuxData, false, sourceMapURL
|
1079
|
-
|
1080
|
-
|
1077
|
+
executionContextId, hash, executionContextAuxData, false, sourceMapURL, Boolean(hasSourceURL), true,
|
1078
|
+
length || 0, isModule || null, stackTrace || null, codeOffset || null, scriptLanguage || null, null,
|
1079
|
+
embedderName as Platform.DevToolsPath.UrlString || null);
|
1081
1080
|
}
|
1082
1081
|
|
1083
1082
|
breakpointResolved({breakpointId, location}: Protocol.Debugger.BreakpointResolvedEvent): void {
|
@@ -65,7 +65,7 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
|
|
65
65
|
hash: string;
|
66
66
|
readonly #isContentScriptInternal: boolean;
|
67
67
|
readonly #isLiveEditInternal: boolean;
|
68
|
-
sourceMapURL
|
68
|
+
sourceMapURL?: string;
|
69
69
|
debugSymbols: Protocol.Debugger.DebugSymbols|null;
|
70
70
|
hasSourceURL: boolean;
|
71
71
|
contentLength: number;
|
@@ -79,10 +79,9 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
|
|
79
79
|
constructor(
|
80
80
|
debuggerModel: DebuggerModel, scriptId: Protocol.Runtime.ScriptId, sourceURL: Platform.DevToolsPath.UrlString,
|
81
81
|
startLine: number, startColumn: number, endLine: number, endColumn: number, executionContextId: number,
|
82
|
-
hash: string, isContentScript: boolean, isLiveEdit: boolean,
|
83
|
-
|
84
|
-
|
85
|
-
scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null,
|
82
|
+
hash: string, isContentScript: boolean, isLiveEdit: boolean, sourceMapURL: string|undefined,
|
83
|
+
hasSourceURL: boolean, length: number, isModule: boolean|null, originStackTrace: Protocol.Runtime.StackTrace|null,
|
84
|
+
codeOffset: number|null, scriptLanguage: string|null, debugSymbols: Protocol.Debugger.DebugSymbols|null,
|
86
85
|
embedderName: Platform.DevToolsPath.UrlString|null) {
|
87
86
|
this.debuggerModel = debuggerModel;
|
88
87
|
this.scriptId = scriptId;
|
@@ -27,7 +27,9 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
|
|
27
27
|
readonly #target: Target;
|
28
28
|
#isEnabled: boolean;
|
29
29
|
readonly #relativeSourceURL: Map<T, Platform.DevToolsPath.UrlString>;
|
30
|
-
|
30
|
+
// Stores the raw sourceMappingURL as provided by V8. These are not guaranteed to
|
31
|
+
// be valid URLs and will be checked and resolved once `attachSourceMap` is called.
|
32
|
+
readonly #relativeSourceMapURL: Map<T, string>;
|
31
33
|
#resolvedSourceMapId: Map<T, string>;
|
32
34
|
readonly #sourceMapById: Map<string, SourceMap>;
|
33
35
|
#sourceMapIdToLoadingClients: Platform.MapUtilities.Multimap<string, T>;
|
@@ -157,8 +159,7 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
|
|
157
159
|
return `${sourceURL}:${sourceMapURL}`;
|
158
160
|
}
|
159
161
|
|
160
|
-
private resolveRelativeURLs(
|
161
|
-
sourceURL: Platform.DevToolsPath.UrlString, sourceMapURL: Platform.DevToolsPath.UrlString): {
|
162
|
+
private resolveRelativeURLs(sourceURL: Platform.DevToolsPath.UrlString, sourceMapURL: string): {
|
162
163
|
sourceURL: Platform.DevToolsPath.UrlString,
|
163
164
|
sourceMapURL: Platform.DevToolsPath.UrlString,
|
164
165
|
sourceMapId: string,
|
@@ -182,7 +183,7 @@ export class SourceMapManager<T extends FrameAssociated> extends Common.ObjectWr
|
|
182
183
|
|
183
184
|
attachSourceMap(
|
184
185
|
client: T, relativeSourceURL: Platform.DevToolsPath.UrlString|undefined,
|
185
|
-
relativeSourceMapURL:
|
186
|
+
relativeSourceMapURL: string|undefined): void {
|
186
187
|
// TODO(chromium:1011811): Strengthen the type to obsolte the undefined check once core/sdk/ is fully typescriptified.
|
187
188
|
if (relativeSourceURL === undefined || !relativeSourceMapURL) {
|
188
189
|
return;
|
@@ -63,9 +63,9 @@ inspectorBackend.registerEnum("Audits.HeavyAdReason", {NetworkTotalLimit: "Netwo
|
|
63
63
|
inspectorBackend.registerEnum("Audits.ContentSecurityPolicyViolationType", {KInlineViolation: "kInlineViolation", KEvalViolation: "kEvalViolation", KURLViolation: "kURLViolation", KTrustedTypesSinkViolation: "kTrustedTypesSinkViolation", KTrustedTypesPolicyViolation: "kTrustedTypesPolicyViolation", KWasmEvalViolation: "kWasmEvalViolation"});
|
64
64
|
inspectorBackend.registerEnum("Audits.SharedArrayBufferIssueType", {TransferIssue: "TransferIssue", CreationIssue: "CreationIssue"});
|
65
65
|
inspectorBackend.registerEnum("Audits.TwaQualityEnforcementViolationType", {KHttpError: "kHttpError", KUnavailableOffline: "kUnavailableOffline", KDigitalAssetLinks: "kDigitalAssetLinks"});
|
66
|
-
inspectorBackend.registerEnum("Audits.AttributionReportingIssueType", {PermissionPolicyDisabled: "PermissionPolicyDisabled", AttributionSourceUntrustworthyOrigin: "AttributionSourceUntrustworthyOrigin", AttributionUntrustworthyOrigin: "AttributionUntrustworthyOrigin", InvalidHeader: "InvalidHeader"});
|
66
|
+
inspectorBackend.registerEnum("Audits.AttributionReportingIssueType", {PermissionPolicyDisabled: "PermissionPolicyDisabled", AttributionSourceUntrustworthyOrigin: "AttributionSourceUntrustworthyOrigin", AttributionUntrustworthyOrigin: "AttributionUntrustworthyOrigin", UntrustworthyReportingOrigin: "UntrustworthyReportingOrigin", InsecureContext: "InsecureContext", InvalidHeader: "InvalidHeader", InvalidRegisterTriggerHeader: "InvalidRegisterTriggerHeader"});
|
67
67
|
inspectorBackend.registerEnum("Audits.GenericIssueErrorType", {CrossOriginPortalPostMessageError: "CrossOriginPortalPostMessageError"});
|
68
|
-
inspectorBackend.registerEnum("Audits.DeprecationIssueType", {AuthorizationCoveredByWildcard: "AuthorizationCoveredByWildcard", CanRequestURLHTTPContainingNewline: "CanRequestURLHTTPContainingNewline", ChromeLoadTimesConnectionInfo: "ChromeLoadTimesConnectionInfo", ChromeLoadTimesFirstPaintAfterLoadTime: "ChromeLoadTimesFirstPaintAfterLoadTime", ChromeLoadTimesWasAlternateProtocolAvailable: "ChromeLoadTimesWasAlternateProtocolAvailable", CookieWithTruncatingChar: "CookieWithTruncatingChar", CrossOriginAccessBasedOnDocumentDomain: "CrossOriginAccessBasedOnDocumentDomain", CrossOriginWindowAlert: "CrossOriginWindowAlert", CrossOriginWindowConfirm: "CrossOriginWindowConfirm", CSSSelectorInternalMediaControlsOverlayCastButton: "CSSSelectorInternalMediaControlsOverlayCastButton", DeprecationExample: "DeprecationExample", DocumentDomainSettingWithoutOriginAgentClusterHeader: "DocumentDomainSettingWithoutOriginAgentClusterHeader", EventPath: "EventPath", ExpectCTHeader: "ExpectCTHeader", GeolocationInsecureOrigin: "GeolocationInsecureOrigin", GeolocationInsecureOriginDeprecatedNotRemoved: "GeolocationInsecureOriginDeprecatedNotRemoved", GetUserMediaInsecureOrigin: "GetUserMediaInsecureOrigin", HostCandidateAttributeGetter: "HostCandidateAttributeGetter", IdentityInCanMakePaymentEvent: "IdentityInCanMakePaymentEvent", InsecurePrivateNetworkSubresourceRequest: "InsecurePrivateNetworkSubresourceRequest", LegacyConstraintGoogIPv6: "LegacyConstraintGoogIPv6", LocalCSSFileExtensionRejected: "LocalCSSFileExtensionRejected", MediaSourceAbortRemove: "MediaSourceAbortRemove", MediaSourceDurationTruncatingBuffered: "MediaSourceDurationTruncatingBuffered", NoSysexWebMIDIWithoutPermission: "NoSysexWebMIDIWithoutPermission", NotificationInsecureOrigin: "NotificationInsecureOrigin", NotificationPermissionRequestedIframe: "NotificationPermissionRequestedIframe", ObsoleteWebRtcCipherSuite: "ObsoleteWebRtcCipherSuite", OpenWebDatabaseInsecureContext: "OpenWebDatabaseInsecureContext", PictureSourceSrc: "PictureSourceSrc", PrefixedCancelAnimationFrame: "PrefixedCancelAnimationFrame", PrefixedRequestAnimationFrame: "PrefixedRequestAnimationFrame", PrefixedStorageInfo: "PrefixedStorageInfo", PrefixedVideoDisplayingFullscreen: "PrefixedVideoDisplayingFullscreen", PrefixedVideoEnterFullscreen: "PrefixedVideoEnterFullscreen", PrefixedVideoEnterFullScreen: "PrefixedVideoEnterFullScreen", PrefixedVideoExitFullscreen: "PrefixedVideoExitFullscreen", PrefixedVideoExitFullScreen: "PrefixedVideoExitFullScreen", PrefixedVideoSupportsFullscreen: "PrefixedVideoSupportsFullscreen", RangeExpand: "RangeExpand", RequestedSubresourceWithEmbeddedCredentials: "RequestedSubresourceWithEmbeddedCredentials", RTCConstraintEnableDtlsSrtpFalse: "RTCConstraintEnableDtlsSrtpFalse", RTCConstraintEnableDtlsSrtpTrue: "RTCConstraintEnableDtlsSrtpTrue", RTCPeerConnectionComplexPlanBSdpUsingDefaultSdpSemantics: "RTCPeerConnectionComplexPlanBSdpUsingDefaultSdpSemantics", RTCPeerConnectionSdpSemanticsPlanB: "RTCPeerConnectionSdpSemanticsPlanB", RtcpMuxPolicyNegotiate: "RtcpMuxPolicyNegotiate", SharedArrayBufferConstructedWithoutIsolation: "SharedArrayBufferConstructedWithoutIsolation", TextToSpeech_DisallowedByAutoplay: "TextToSpeech_DisallowedByAutoplay", V8SharedArrayBufferConstructedInExtensionWithoutIsolation: "V8SharedArrayBufferConstructedInExtensionWithoutIsolation", XHRJSONEncodingDetection: "XHRJSONEncodingDetection", XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload: "XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload", XRSupportsSession: "XRSupportsSession"});
|
68
|
+
inspectorBackend.registerEnum("Audits.DeprecationIssueType", {AuthorizationCoveredByWildcard: "AuthorizationCoveredByWildcard", CanRequestURLHTTPContainingNewline: "CanRequestURLHTTPContainingNewline", ChromeLoadTimesConnectionInfo: "ChromeLoadTimesConnectionInfo", ChromeLoadTimesFirstPaintAfterLoadTime: "ChromeLoadTimesFirstPaintAfterLoadTime", ChromeLoadTimesWasAlternateProtocolAvailable: "ChromeLoadTimesWasAlternateProtocolAvailable", CookieWithTruncatingChar: "CookieWithTruncatingChar", CrossOriginAccessBasedOnDocumentDomain: "CrossOriginAccessBasedOnDocumentDomain", CrossOriginWindowAlert: "CrossOriginWindowAlert", CrossOriginWindowConfirm: "CrossOriginWindowConfirm", CSSSelectorInternalMediaControlsOverlayCastButton: "CSSSelectorInternalMediaControlsOverlayCastButton", DeprecationExample: "DeprecationExample", DocumentDomainSettingWithoutOriginAgentClusterHeader: "DocumentDomainSettingWithoutOriginAgentClusterHeader", EventPath: "EventPath", ExpectCTHeader: "ExpectCTHeader", GeolocationInsecureOrigin: "GeolocationInsecureOrigin", GeolocationInsecureOriginDeprecatedNotRemoved: "GeolocationInsecureOriginDeprecatedNotRemoved", GetUserMediaInsecureOrigin: "GetUserMediaInsecureOrigin", HostCandidateAttributeGetter: "HostCandidateAttributeGetter", IdentityInCanMakePaymentEvent: "IdentityInCanMakePaymentEvent", InsecurePrivateNetworkSubresourceRequest: "InsecurePrivateNetworkSubresourceRequest", LegacyConstraintGoogIPv6: "LegacyConstraintGoogIPv6", LocalCSSFileExtensionRejected: "LocalCSSFileExtensionRejected", MediaSourceAbortRemove: "MediaSourceAbortRemove", MediaSourceDurationTruncatingBuffered: "MediaSourceDurationTruncatingBuffered", NavigateEventRestoreScroll: "NavigateEventRestoreScroll", NavigateEventTransitionWhile: "NavigateEventTransitionWhile", NoSysexWebMIDIWithoutPermission: "NoSysexWebMIDIWithoutPermission", NotificationInsecureOrigin: "NotificationInsecureOrigin", NotificationPermissionRequestedIframe: "NotificationPermissionRequestedIframe", ObsoleteWebRtcCipherSuite: "ObsoleteWebRtcCipherSuite", OpenWebDatabaseInsecureContext: "OpenWebDatabaseInsecureContext", OverflowVisibleOnReplacedElement: "OverflowVisibleOnReplacedElement", PictureSourceSrc: "PictureSourceSrc", PrefixedCancelAnimationFrame: "PrefixedCancelAnimationFrame", PrefixedRequestAnimationFrame: "PrefixedRequestAnimationFrame", PrefixedStorageInfo: "PrefixedStorageInfo", PrefixedVideoDisplayingFullscreen: "PrefixedVideoDisplayingFullscreen", PrefixedVideoEnterFullscreen: "PrefixedVideoEnterFullscreen", PrefixedVideoEnterFullScreen: "PrefixedVideoEnterFullScreen", PrefixedVideoExitFullscreen: "PrefixedVideoExitFullscreen", PrefixedVideoExitFullScreen: "PrefixedVideoExitFullScreen", PrefixedVideoSupportsFullscreen: "PrefixedVideoSupportsFullscreen", RangeExpand: "RangeExpand", RequestedSubresourceWithEmbeddedCredentials: "RequestedSubresourceWithEmbeddedCredentials", RTCConstraintEnableDtlsSrtpFalse: "RTCConstraintEnableDtlsSrtpFalse", RTCConstraintEnableDtlsSrtpTrue: "RTCConstraintEnableDtlsSrtpTrue", RTCPeerConnectionComplexPlanBSdpUsingDefaultSdpSemantics: "RTCPeerConnectionComplexPlanBSdpUsingDefaultSdpSemantics", RTCPeerConnectionSdpSemanticsPlanB: "RTCPeerConnectionSdpSemanticsPlanB", RtcpMuxPolicyNegotiate: "RtcpMuxPolicyNegotiate", SharedArrayBufferConstructedWithoutIsolation: "SharedArrayBufferConstructedWithoutIsolation", TextToSpeech_DisallowedByAutoplay: "TextToSpeech_DisallowedByAutoplay", V8SharedArrayBufferConstructedInExtensionWithoutIsolation: "V8SharedArrayBufferConstructedInExtensionWithoutIsolation", XHRJSONEncodingDetection: "XHRJSONEncodingDetection", XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload: "XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload", XRSupportsSession: "XRSupportsSession"});
|
69
69
|
inspectorBackend.registerEnum("Audits.ClientHintIssueReason", {MetaTagAllowListInvalidOrigin: "MetaTagAllowListInvalidOrigin", MetaTagModifiedHTML: "MetaTagModifiedHTML"});
|
70
70
|
inspectorBackend.registerEnum("Audits.FederatedAuthRequestIssueReason", {ApprovalDeclined: "ApprovalDeclined", TooManyRequests: "TooManyRequests", ManifestListHttpNotFound: "ManifestListHttpNotFound", ManifestListNoResponse: "ManifestListNoResponse", ManifestListInvalidResponse: "ManifestListInvalidResponse", ManifestNotInManifestList: "ManifestNotInManifestList", ManifestListTooBig: "ManifestListTooBig", ManifestHttpNotFound: "ManifestHttpNotFound", ManifestNoResponse: "ManifestNoResponse", ManifestInvalidResponse: "ManifestInvalidResponse", ClientMetadataHttpNotFound: "ClientMetadataHttpNotFound", ClientMetadataNoResponse: "ClientMetadataNoResponse", ClientMetadataInvalidResponse: "ClientMetadataInvalidResponse", ClientMetadataMissingPrivacyPolicyUrl: "ClientMetadataMissingPrivacyPolicyUrl", DisabledInSettings: "DisabledInSettings", ErrorFetchingSignin: "ErrorFetchingSignin", InvalidSigninResponse: "InvalidSigninResponse", AccountsHttpNotFound: "AccountsHttpNotFound", AccountsNoResponse: "AccountsNoResponse", AccountsInvalidResponse: "AccountsInvalidResponse", IdTokenHttpNotFound: "IdTokenHttpNotFound", IdTokenNoResponse: "IdTokenNoResponse", IdTokenInvalidResponse: "IdTokenInvalidResponse", IdTokenInvalidRequest: "IdTokenInvalidRequest", ErrorIdToken: "ErrorIdToken", Canceled: "Canceled"});
|
71
71
|
inspectorBackend.registerEnum("Audits.InspectorIssueCode", {CookieIssue: "CookieIssue", MixedContentIssue: "MixedContentIssue", BlockedByResponseIssue: "BlockedByResponseIssue", HeavyAdIssue: "HeavyAdIssue", ContentSecurityPolicyIssue: "ContentSecurityPolicyIssue", SharedArrayBufferIssue: "SharedArrayBufferIssue", TrustedWebActivityIssue: "TrustedWebActivityIssue", LowTextContrastIssue: "LowTextContrastIssue", CorsIssue: "CorsIssue", AttributionReportingIssue: "AttributionReportingIssue", QuirksModeIssue: "QuirksModeIssue", NavigatorUserAgentIssue: "NavigatorUserAgentIssue", GenericIssue: "GenericIssue", DeprecationIssue: "DeprecationIssue", ClientHintIssue: "ClientHintIssue", FederatedAuthRequestIssue: "FederatedAuthRequestIssue"});
|
@@ -338,8 +338,8 @@ inspectorBackend.registerCommand("IO.resolveBlob", [{"name": "objectId", "type":
|
|
338
338
|
// IndexedDB.
|
339
339
|
inspectorBackend.registerEnum("IndexedDB.KeyType", {Number: "number", String: "string", Date: "date", Array: "array"});
|
340
340
|
inspectorBackend.registerEnum("IndexedDB.KeyPathType", {Null: "null", String: "string", Array: "array"});
|
341
|
-
inspectorBackend.registerCommand("IndexedDB.clearObjectStore", [{"name": "securityOrigin", "type": "string", "optional":
|
342
|
-
inspectorBackend.registerCommand("IndexedDB.deleteDatabase", [{"name": "securityOrigin", "type": "string", "optional":
|
341
|
+
inspectorBackend.registerCommand("IndexedDB.clearObjectStore", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}], []);
|
342
|
+
inspectorBackend.registerCommand("IndexedDB.deleteDatabase", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}], []);
|
343
343
|
inspectorBackend.registerCommand("IndexedDB.deleteObjectStoreEntries", [{"name": "securityOrigin", "type": "string", "optional": false}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}, {"name": "keyRange", "type": "object", "optional": false}], []);
|
344
344
|
inspectorBackend.registerCommand("IndexedDB.disable", [], []);
|
345
345
|
inspectorBackend.registerCommand("IndexedDB.enable", [], []);
|
@@ -567,7 +567,7 @@ inspectorBackend.registerEnum("Page.ReferrerPolicy", {NoReferrer: "noReferrer",
|
|
567
567
|
inspectorBackend.registerEnum("Page.NavigationType", {Navigation: "Navigation", BackForwardCacheRestore: "BackForwardCacheRestore"});
|
568
568
|
inspectorBackend.registerEnum("Page.BackForwardCacheNotRestoredReason", {NotPrimaryMainFrame: "NotPrimaryMainFrame", BackForwardCacheDisabled: "BackForwardCacheDisabled", RelatedActiveContentsExist: "RelatedActiveContentsExist", HTTPStatusNotOK: "HTTPStatusNotOK", SchemeNotHTTPOrHTTPS: "SchemeNotHTTPOrHTTPS", Loading: "Loading", WasGrantedMediaAccess: "WasGrantedMediaAccess", DisableForRenderFrameHostCalled: "DisableForRenderFrameHostCalled", DomainNotAllowed: "DomainNotAllowed", HTTPMethodNotGET: "HTTPMethodNotGET", SubframeIsNavigating: "SubframeIsNavigating", Timeout: "Timeout", CacheLimit: "CacheLimit", JavaScriptExecution: "JavaScriptExecution", RendererProcessKilled: "RendererProcessKilled", RendererProcessCrashed: "RendererProcessCrashed", SchedulerTrackedFeatureUsed: "SchedulerTrackedFeatureUsed", ConflictingBrowsingInstance: "ConflictingBrowsingInstance", CacheFlushed: "CacheFlushed", ServiceWorkerVersionActivation: "ServiceWorkerVersionActivation", SessionRestored: "SessionRestored", ServiceWorkerPostMessage: "ServiceWorkerPostMessage", EnteredBackForwardCacheBeforeServiceWorkerHostAdded: "EnteredBackForwardCacheBeforeServiceWorkerHostAdded", RenderFrameHostReused_SameSite: "RenderFrameHostReused_SameSite", RenderFrameHostReused_CrossSite: "RenderFrameHostReused_CrossSite", ServiceWorkerClaim: "ServiceWorkerClaim", IgnoreEventAndEvict: "IgnoreEventAndEvict", HaveInnerContents: "HaveInnerContents", TimeoutPuttingInCache: "TimeoutPuttingInCache", BackForwardCacheDisabledByLowMemory: "BackForwardCacheDisabledByLowMemory", BackForwardCacheDisabledByCommandLine: "BackForwardCacheDisabledByCommandLine", NetworkRequestDatAPIpeDrainedAsBytesConsumer: "NetworkRequestDatapipeDrainedAsBytesConsumer", NetworkRequestRedirected: "NetworkRequestRedirected", NetworkRequestTimeout: "NetworkRequestTimeout", NetworkExceedsBufferLimit: "NetworkExceedsBufferLimit", NavigationCancelledWhileRestoring: "NavigationCancelledWhileRestoring", NotMostRecentNavigationEntry: "NotMostRecentNavigationEntry", BackForwardCacheDisabledForPrerender: "BackForwardCacheDisabledForPrerender", UserAgentOverrideDiffers: "UserAgentOverrideDiffers", ForegroundCacheLimit: "ForegroundCacheLimit", BrowsingInstanceNotSwapped: "BrowsingInstanceNotSwapped", BackForwardCacheDisabledForDelegate: "BackForwardCacheDisabledForDelegate", UnloadHandlerExistsInMainFrame: "UnloadHandlerExistsInMainFrame", UnloadHandlerExistsInSubFrame: "UnloadHandlerExistsInSubFrame", ServiceWorkerUnregistration: "ServiceWorkerUnregistration", CacheControlNoStore: "CacheControlNoStore", CacheControlNoStoreCookieModified: "CacheControlNoStoreCookieModified", CacheControlNoStoreHTTPOnlyCookieModified: "CacheControlNoStoreHTTPOnlyCookieModified", NoResponseHead: "NoResponseHead", Unknown: "Unknown", ActivationNavigationsDisallowedForBug1234857: "ActivationNavigationsDisallowedForBug1234857", ErrorDocument: "ErrorDocument", FencedFramesEmbedder: "FencedFramesEmbedder", WebSocket: "WebSocket", WebTransport: "WebTransport", WebRTC: "WebRTC", MainResourceHasCacheControlNoStore: "MainResourceHasCacheControlNoStore", MainResourceHasCacheControlNoCache: "MainResourceHasCacheControlNoCache", SubresourceHasCacheControlNoStore: "SubresourceHasCacheControlNoStore", SubresourceHasCacheControlNoCache: "SubresourceHasCacheControlNoCache", ContainsPlugins: "ContainsPlugins", DocumentLoaded: "DocumentLoaded", DedicatedWorkerOrWorklet: "DedicatedWorkerOrWorklet", OutstandingNetworkRequestOthers: "OutstandingNetworkRequestOthers", OutstandingIndexedDBTransaction: "OutstandingIndexedDBTransaction", RequestedNotificationsPermission: "RequestedNotificationsPermission", RequestedMIDIPermission: "RequestedMIDIPermission", RequestedAudioCapturePermission: "RequestedAudioCapturePermission", RequestedVideoCapturePermission: "RequestedVideoCapturePermission", RequestedBackForwardCacheBlockedSensors: "RequestedBackForwardCacheBlockedSensors", RequestedBackgroundWorkPermission: "RequestedBackgroundWorkPermission", BroadcastChannel: "BroadcastChannel", IndexedDBConnection: "IndexedDBConnection", WebXR: "WebXR", SharedWorker: "SharedWorker", WebLocks: "WebLocks", WebHID: "WebHID", WebShare: "WebShare", RequestedStorageAccessGrant: "RequestedStorageAccessGrant", WebNfc: "WebNfc", OutstandingNetworkRequestFetch: "OutstandingNetworkRequestFetch", OutstandingNetworkRequestXHR: "OutstandingNetworkRequestXHR", AppBanner: "AppBanner", Printing: "Printing", WebDatabase: "WebDatabase", PictureInPicture: "PictureInPicture", Portal: "Portal", SpeechRecognizer: "SpeechRecognizer", IdleManager: "IdleManager", PaymentManager: "PaymentManager", SpeechSynthesis: "SpeechSynthesis", KeyboardLock: "KeyboardLock", WebOTPService: "WebOTPService", OutstandingNetworkRequestDirectSocket: "OutstandingNetworkRequestDirectSocket", InjectedJavascript: "InjectedJavascript", InjectedStyleSheet: "InjectedStyleSheet", Dummy: "Dummy", ContentSecurityHandler: "ContentSecurityHandler", ContentWebAuthenticationAPI: "ContentWebAuthenticationAPI", ContentFileChooser: "ContentFileChooser", ContentSerial: "ContentSerial", ContentFileSystemAccess: "ContentFileSystemAccess", ContentMediaDevicesDispatcherHost: "ContentMediaDevicesDispatcherHost", ContentWebBluetooth: "ContentWebBluetooth", ContentWebUSB: "ContentWebUSB", ContentMediaSessionService: "ContentMediaSessionService", ContentScreenReader: "ContentScreenReader", EmbedderPopupBlockerTabHelper: "EmbedderPopupBlockerTabHelper", EmbedderSafeBrowsingTriggeredPopupBlocker: "EmbedderSafeBrowsingTriggeredPopupBlocker", EmbedderSafeBrowsingThreatDetails: "EmbedderSafeBrowsingThreatDetails", EmbedderAppBannerManager: "EmbedderAppBannerManager", EmbedderDomDistillerViewerSource: "EmbedderDomDistillerViewerSource", EmbedderDomDistillerSelfDeletingRequestDelegate: "EmbedderDomDistillerSelfDeletingRequestDelegate", EmbedderOomInterventionTabHelper: "EmbedderOomInterventionTabHelper", EmbedderOfflinePage: "EmbedderOfflinePage", EmbedderChromePasswordManagerClientBindCredentialManager: "EmbedderChromePasswordManagerClientBindCredentialManager", EmbedderPermissionRequestManager: "EmbedderPermissionRequestManager", EmbedderModalDialog: "EmbedderModalDialog", EmbedderExtensions: "EmbedderExtensions", EmbedderExtensionMessaging: "EmbedderExtensionMessaging", EmbedderExtensionMessagingForOpenPort: "EmbedderExtensionMessagingForOpenPort", EmbedderExtensionSentMessageToCachedFrame: "EmbedderExtensionSentMessageToCachedFrame"});
|
569
569
|
inspectorBackend.registerEnum("Page.BackForwardCacheNotRestoredReasonType", {SupportPending: "SupportPending", PageSupportNeeded: "PageSupportNeeded", Circumstantial: "Circumstantial"});
|
570
|
-
inspectorBackend.registerEnum("Page.PrerenderFinalStatus", {Activated: "Activated", Destroyed: "Destroyed", LowEndDevice: "LowEndDevice", CrossOriginRedirect: "CrossOriginRedirect", CrossOriginNavigation: "CrossOriginNavigation", InvalidSchemeRedirect: "InvalidSchemeRedirect", InvalidSchemeNavigation: "InvalidSchemeNavigation", InProgressNavigation: "InProgressNavigation", NavigationRequestBlockedByCsp: "NavigationRequestBlockedByCsp", MainFrameNavigation: "MainFrameNavigation", MojoBinderPolicy: "MojoBinderPolicy", RendererProcessCrashed: "RendererProcessCrashed", RendererProcessKilled: "RendererProcessKilled", Download: "Download", TriggerDestroyed: "TriggerDestroyed", NavigationNotCommitted: "NavigationNotCommitted", NavigationBadHttpStatus: "NavigationBadHttpStatus", ClientCertRequested: "ClientCertRequested", NavigationRequestNetworkError: "NavigationRequestNetworkError", MaxNumOfRunningPrerendersExceeded: "MaxNumOfRunningPrerendersExceeded", CancelAllHostsForTesting: "CancelAllHostsForTesting", DidFailLoad: "DidFailLoad", Stop: "Stop", SslCertificateError: "SslCertificateError", LoginAuthRequested: "LoginAuthRequested", UaChangeRequiresReload: "UaChangeRequiresReload", BlockedByClient: "BlockedByClient", AudioOutputDeviceRequested: "AudioOutputDeviceRequested", MixedContent: "MixedContent", TriggerBackgrounded: "TriggerBackgrounded", EmbedderTriggeredAndSameOriginRedirected: "EmbedderTriggeredAndSameOriginRedirected", EmbedderTriggeredAndCrossOriginRedirected: "EmbedderTriggeredAndCrossOriginRedirected", EmbedderTriggeredAndDestroyed: "EmbedderTriggeredAndDestroyed"});
|
570
|
+
inspectorBackend.registerEnum("Page.PrerenderFinalStatus", {Activated: "Activated", Destroyed: "Destroyed", LowEndDevice: "LowEndDevice", CrossOriginRedirect: "CrossOriginRedirect", CrossOriginNavigation: "CrossOriginNavigation", InvalidSchemeRedirect: "InvalidSchemeRedirect", InvalidSchemeNavigation: "InvalidSchemeNavigation", InProgressNavigation: "InProgressNavigation", NavigationRequestBlockedByCsp: "NavigationRequestBlockedByCsp", MainFrameNavigation: "MainFrameNavigation", MojoBinderPolicy: "MojoBinderPolicy", RendererProcessCrashed: "RendererProcessCrashed", RendererProcessKilled: "RendererProcessKilled", Download: "Download", TriggerDestroyed: "TriggerDestroyed", NavigationNotCommitted: "NavigationNotCommitted", NavigationBadHttpStatus: "NavigationBadHttpStatus", ClientCertRequested: "ClientCertRequested", NavigationRequestNetworkError: "NavigationRequestNetworkError", MaxNumOfRunningPrerendersExceeded: "MaxNumOfRunningPrerendersExceeded", CancelAllHostsForTesting: "CancelAllHostsForTesting", DidFailLoad: "DidFailLoad", Stop: "Stop", SslCertificateError: "SslCertificateError", LoginAuthRequested: "LoginAuthRequested", UaChangeRequiresReload: "UaChangeRequiresReload", BlockedByClient: "BlockedByClient", AudioOutputDeviceRequested: "AudioOutputDeviceRequested", MixedContent: "MixedContent", TriggerBackgrounded: "TriggerBackgrounded", EmbedderTriggeredAndSameOriginRedirected: "EmbedderTriggeredAndSameOriginRedirected", EmbedderTriggeredAndCrossOriginRedirected: "EmbedderTriggeredAndCrossOriginRedirected", EmbedderTriggeredAndDestroyed: "EmbedderTriggeredAndDestroyed", MemoryLimitExceeded: "MemoryLimitExceeded", FailToGetMemoryUsage: "FailToGetMemoryUsage"});
|
571
571
|
inspectorBackend.registerEvent("Page.domContentEventFired", ["timestamp"]);
|
572
572
|
inspectorBackend.registerEnum("Page.FileChooserOpenedEventMode", {SelectSingle: "selectSingle", SelectMultiple: "selectMultiple"});
|
573
573
|
inspectorBackend.registerEvent("Page.fileChooserOpened", ["frameId", "mode", "backendNodeId"]);
|
@@ -722,6 +722,7 @@ inspectorBackend.registerEvent("Storage.indexedDBListUpdated", ["origin"]);
|
|
722
722
|
inspectorBackend.registerEvent("Storage.interestGroupAccessed", ["accessTime", "type", "ownerOrigin", "name"]);
|
723
723
|
inspectorBackend.registerCommand("Storage.getStorageKeyForFrame", [{"name": "frameId", "type": "string", "optional": false}], ["storageKey"]);
|
724
724
|
inspectorBackend.registerCommand("Storage.clearDataForOrigin", [{"name": "origin", "type": "string", "optional": false}, {"name": "storageTypes", "type": "string", "optional": false}], []);
|
725
|
+
inspectorBackend.registerCommand("Storage.clearDataForStorageKey", [{"name": "storageKey", "type": "string", "optional": false}, {"name": "storageTypes", "type": "string", "optional": false}], []);
|
725
726
|
inspectorBackend.registerCommand("Storage.getCookies", [{"name": "browserContextId", "type": "string", "optional": true}], ["cookies"]);
|
726
727
|
inspectorBackend.registerCommand("Storage.setCookies", [{"name": "cookies", "type": "object", "optional": false}, {"name": "browserContextId", "type": "string", "optional": true}], []);
|
727
728
|
inspectorBackend.registerCommand("Storage.clearCookies", [{"name": "browserContextId", "type": "string", "optional": true}], []);
|
@@ -3416,6 +3416,13 @@ export namespace ProtocolMapping {
|
|
3416
3416
|
paramsType: [Protocol.Storage.ClearDataForOriginRequest];
|
3417
3417
|
returnType: void;
|
3418
3418
|
};
|
3419
|
+
/**
|
3420
|
+
* Clears storage for storage key.
|
3421
|
+
*/
|
3422
|
+
'Storage.clearDataForStorageKey': {
|
3423
|
+
paramsType: [Protocol.Storage.ClearDataForStorageKeyRequest];
|
3424
|
+
returnType: void;
|
3425
|
+
};
|
3419
3426
|
/**
|
3420
3427
|
* Returns all browser cookies.
|
3421
3428
|
*/
|
@@ -2877,6 +2877,11 @@ declare namespace ProtocolProxyApi {
|
|
2877
2877
|
*/
|
2878
2878
|
invoke_clearDataForOrigin(params: Protocol.Storage.ClearDataForOriginRequest): Promise<Protocol.ProtocolResponseWithError>;
|
2879
2879
|
|
2880
|
+
/**
|
2881
|
+
* Clears storage for storage key.
|
2882
|
+
*/
|
2883
|
+
invoke_clearDataForStorageKey(params: Protocol.Storage.ClearDataForStorageKeyRequest): Promise<Protocol.ProtocolResponseWithError>;
|
2884
|
+
|
2880
2885
|
/**
|
2881
2886
|
* Returns all browser cookies.
|
2882
2887
|
*/
|
@@ -965,7 +965,10 @@ export namespace Audits {
|
|
965
965
|
PermissionPolicyDisabled = 'PermissionPolicyDisabled',
|
966
966
|
AttributionSourceUntrustworthyOrigin = 'AttributionSourceUntrustworthyOrigin',
|
967
967
|
AttributionUntrustworthyOrigin = 'AttributionUntrustworthyOrigin',
|
968
|
+
UntrustworthyReportingOrigin = 'UntrustworthyReportingOrigin',
|
969
|
+
InsecureContext = 'InsecureContext',
|
968
970
|
InvalidHeader = 'InvalidHeader',
|
971
|
+
InvalidRegisterTriggerHeader = 'InvalidRegisterTriggerHeader',
|
969
972
|
}
|
970
973
|
|
971
974
|
/**
|
@@ -974,6 +977,9 @@ export namespace Audits {
|
|
974
977
|
*/
|
975
978
|
export interface AttributionReportingIssueDetails {
|
976
979
|
violationType: AttributionReportingIssueType;
|
980
|
+
/**
|
981
|
+
* TODO(apaseltiner): Remove this once it is no longer referenced by the frontend.
|
982
|
+
*/
|
977
983
|
frame?: AffectedFrame;
|
978
984
|
request?: AffectedRequest;
|
979
985
|
violatingNodeId?: DOM.BackendNodeId;
|
@@ -1041,11 +1047,14 @@ export namespace Audits {
|
|
1041
1047
|
LocalCSSFileExtensionRejected = 'LocalCSSFileExtensionRejected',
|
1042
1048
|
MediaSourceAbortRemove = 'MediaSourceAbortRemove',
|
1043
1049
|
MediaSourceDurationTruncatingBuffered = 'MediaSourceDurationTruncatingBuffered',
|
1050
|
+
NavigateEventRestoreScroll = 'NavigateEventRestoreScroll',
|
1051
|
+
NavigateEventTransitionWhile = 'NavigateEventTransitionWhile',
|
1044
1052
|
NoSysexWebMIDIWithoutPermission = 'NoSysexWebMIDIWithoutPermission',
|
1045
1053
|
NotificationInsecureOrigin = 'NotificationInsecureOrigin',
|
1046
1054
|
NotificationPermissionRequestedIframe = 'NotificationPermissionRequestedIframe',
|
1047
1055
|
ObsoleteWebRtcCipherSuite = 'ObsoleteWebRtcCipherSuite',
|
1048
1056
|
OpenWebDatabaseInsecureContext = 'OpenWebDatabaseInsecureContext',
|
1057
|
+
OverflowVisibleOnReplacedElement = 'OverflowVisibleOnReplacedElement',
|
1049
1058
|
PictureSourceSrc = 'PictureSourceSrc',
|
1050
1059
|
PrefixedCancelAnimationFrame = 'PrefixedCancelAnimationFrame',
|
1051
1060
|
PrefixedRequestAnimationFrame = 'PrefixedRequestAnimationFrame',
|
@@ -5855,9 +5864,14 @@ export namespace IndexedDB {
|
|
5855
5864
|
|
5856
5865
|
export interface ClearObjectStoreRequest {
|
5857
5866
|
/**
|
5867
|
+
* At least and at most one of securityOrigin, storageKey must be specified.
|
5858
5868
|
* Security origin.
|
5859
5869
|
*/
|
5860
|
-
securityOrigin
|
5870
|
+
securityOrigin?: string;
|
5871
|
+
/**
|
5872
|
+
* Storage key.
|
5873
|
+
*/
|
5874
|
+
storageKey?: string;
|
5861
5875
|
/**
|
5862
5876
|
* Database name.
|
5863
5877
|
*/
|
@@ -5870,9 +5884,14 @@ export namespace IndexedDB {
|
|
5870
5884
|
|
5871
5885
|
export interface DeleteDatabaseRequest {
|
5872
5886
|
/**
|
5887
|
+
* At least and at most one of securityOrigin, storageKey must be specified.
|
5873
5888
|
* Security origin.
|
5874
5889
|
*/
|
5875
|
-
securityOrigin
|
5890
|
+
securityOrigin?: string;
|
5891
|
+
/**
|
5892
|
+
* Storage key.
|
5893
|
+
*/
|
5894
|
+
storageKey?: string;
|
5876
5895
|
/**
|
5877
5896
|
* Database name.
|
5878
5897
|
*/
|
@@ -11107,6 +11126,8 @@ export namespace Page {
|
|
11107
11126
|
EmbedderTriggeredAndSameOriginRedirected = 'EmbedderTriggeredAndSameOriginRedirected',
|
11108
11127
|
EmbedderTriggeredAndCrossOriginRedirected = 'EmbedderTriggeredAndCrossOriginRedirected',
|
11109
11128
|
EmbedderTriggeredAndDestroyed = 'EmbedderTriggeredAndDestroyed',
|
11129
|
+
MemoryLimitExceeded = 'MemoryLimitExceeded',
|
11130
|
+
FailToGetMemoryUsage = 'FailToGetMemoryUsage',
|
11110
11131
|
}
|
11111
11132
|
|
11112
11133
|
export interface AddScriptToEvaluateOnLoadRequest {
|
@@ -12895,6 +12916,17 @@ export namespace Storage {
|
|
12895
12916
|
storageTypes: string;
|
12896
12917
|
}
|
12897
12918
|
|
12919
|
+
export interface ClearDataForStorageKeyRequest {
|
12920
|
+
/**
|
12921
|
+
* Storage key.
|
12922
|
+
*/
|
12923
|
+
storageKey: string;
|
12924
|
+
/**
|
12925
|
+
* Comma separated list of StorageType to clear.
|
12926
|
+
*/
|
12927
|
+
storageTypes: string;
|
12928
|
+
}
|
12929
|
+
|
12898
12930
|
export interface GetCookiesRequest {
|
12899
12931
|
/**
|
12900
12932
|
* Browser context to use when called on the browser endpoint.
|
@@ -15140,8 +15172,8 @@ export namespace Debugger {
|
|
15140
15172
|
*/
|
15141
15173
|
totalNumberOfLines: integer;
|
15142
15174
|
/**
|
15143
|
-
* The offsets of all function bodies
|
15144
|
-
*
|
15175
|
+
* The offsets of all function bodies, in the format [start1, end1,
|
15176
|
+
* start2, end2, ...] where all ends are exclusive.
|
15145
15177
|
*/
|
15146
15178
|
functionBodyOffsets: integer[];
|
15147
15179
|
/**
|
@@ -14,7 +14,10 @@ export const enum IssueCode {
|
|
14
14
|
AttributionSourceUntrustworthyOrigin = 'AttributionReportingIssue::AttributionSourceUntrustworthyOrigin',
|
15
15
|
AttributionUntrustworthyFrameOrigin = 'AttributionReportingIssue::AttributionUntrustworthyFrameOrigin',
|
16
16
|
AttributionUntrustworthyOrigin = 'AttributionReportingIssue::AttributionUntrustworthyOrigin',
|
17
|
+
UntrustworthyReportingOrigin = 'AttributionReportingIssue::UntrustworthyReportingOrigin',
|
18
|
+
InsecureContext = 'AttributionReportingIssue::InsecureContext',
|
17
19
|
InvalidHeader = 'AttributionReportingIssue::InvalidHeader',
|
20
|
+
InvalidRegisterTriggerHeader = 'AttributionReportingIssue::InvalidRegisterTriggerHeader',
|
18
21
|
}
|
19
22
|
|
20
23
|
function getIssueCode(details: Protocol.Audits.AttributionReportingIssueDetails): IssueCode {
|
@@ -27,8 +30,14 @@ function getIssueCode(details: Protocol.Audits.AttributionReportingIssueDetails)
|
|
27
30
|
case Protocol.Audits.AttributionReportingIssueType.AttributionUntrustworthyOrigin:
|
28
31
|
return details.frame !== undefined ? IssueCode.AttributionUntrustworthyFrameOrigin :
|
29
32
|
IssueCode.AttributionUntrustworthyOrigin;
|
33
|
+
case Protocol.Audits.AttributionReportingIssueType.UntrustworthyReportingOrigin:
|
34
|
+
return IssueCode.UntrustworthyReportingOrigin;
|
35
|
+
case Protocol.Audits.AttributionReportingIssueType.InsecureContext:
|
36
|
+
return IssueCode.InsecureContext;
|
30
37
|
case Protocol.Audits.AttributionReportingIssueType.InvalidHeader:
|
31
38
|
return IssueCode.InvalidHeader;
|
39
|
+
case Protocol.Audits.AttributionReportingIssueType.InvalidRegisterTriggerHeader:
|
40
|
+
return IssueCode.InvalidRegisterTriggerHeader;
|
32
41
|
}
|
33
42
|
}
|
34
43
|
|
@@ -83,11 +92,17 @@ export class AttributionReportingIssue extends Issue<IssueCode> {
|
|
83
92
|
file: 'arAttributionUntrustworthyOrigin.md',
|
84
93
|
links: [],
|
85
94
|
};
|
95
|
+
case IssueCode.UntrustworthyReportingOrigin:
|
96
|
+
return null;
|
97
|
+
case IssueCode.InsecureContext:
|
98
|
+
return null;
|
86
99
|
case IssueCode.InvalidHeader:
|
87
100
|
return {
|
88
101
|
file: 'arInvalidHeader.md',
|
89
102
|
links: [],
|
90
103
|
};
|
104
|
+
case IssueCode.InvalidRegisterTriggerHeader:
|
105
|
+
return null;
|
91
106
|
}
|
92
107
|
}
|
93
108
|
|
@@ -99,6 +99,10 @@ const UIStrings = {
|
|
99
99
|
* @description Warning displayed to developers when the non-standard `Event.path` API is used to notify them that this API is deprecated.
|
100
100
|
*/
|
101
101
|
eventPath: '`Event.path` is deprecated and will be removed. Please use `Event.composedPath()` instead.',
|
102
|
+
/**
|
103
|
+
* @description This message is shown when the deprecated Expect-CT header is present.
|
104
|
+
*/
|
105
|
+
expectCTHeader: 'The `Expect-CT` header is deprecated and will be removed. Chrome requires Certificate Transparency for all publicly trusted certificates issued after April 30, 2018.',
|
102
106
|
/**
|
103
107
|
* @description Warning displayed to developers when the Geolocation API is used from an insecure origin (one that isn't localhost or doesn't use HTTPS) to notify them that this use is no longer supported.
|
104
108
|
*/
|
@@ -374,6 +378,11 @@ export class DeprecationIssue extends Issue {
|
|
374
378
|
feature = 5726124632965120;
|
375
379
|
milestone = 109;
|
376
380
|
break;
|
381
|
+
case Protocol.Audits.DeprecationIssueType.ExpectCTHeader:
|
382
|
+
messageFunction = i18nLazyString(UIStrings.expectCTHeader);
|
383
|
+
feature = 6244547273687040;
|
384
|
+
milestone = 107;
|
385
|
+
break;
|
377
386
|
case Protocol.Audits.DeprecationIssueType.GeolocationInsecureOrigin:
|
378
387
|
messageFunction = i18nLazyString(UIStrings.geolocationInsecureOrigin);
|
379
388
|
break;
|
@@ -2239,7 +2239,8 @@ export const NativeFunctions = [
|
|
2239
2239
|
},
|
2240
2240
|
{
|
2241
2241
|
name: 'scroll',
|
2242
|
-
signatures: [['?options'],['x','y']]
|
2242
|
+
signatures: [['?options'],['x','y']],
|
2243
|
+
receivers: ['Element','Window']
|
2243
2244
|
},
|
2244
2245
|
{
|
2245
2246
|
name: 'scrollBy',
|
@@ -6395,6 +6396,10 @@ export const NativeFunctions = [
|
|
6395
6396
|
name: 'transitionWhile',
|
6396
6397
|
signatures: [['newNavigationAction','?options']]
|
6397
6398
|
},
|
6399
|
+
{
|
6400
|
+
name: 'intercept',
|
6401
|
+
signatures: [['?options']]
|
6402
|
+
},
|
6398
6403
|
{
|
6399
6404
|
name: 'NavigationCurrentEntryChangeEvent',
|
6400
6405
|
signatures: [['type','eventInit']]
|
@@ -6803,7 +6808,7 @@ export const NativeFunctions = [
|
|
6803
6808
|
signatures: [['data']]
|
6804
6809
|
},
|
6805
6810
|
{
|
6806
|
-
name: '
|
6811
|
+
name: 'logoutRPs',
|
6807
6812
|
signatures: [['?logout_requests']]
|
6808
6813
|
},
|
6809
6814
|
{
|
@@ -473,7 +473,8 @@ export class StorageView extends UI.ThrottledWidget.ThrottledWidget {
|
|
473
473
|
}
|
474
474
|
|
475
475
|
static clearByStorageKey(target: SDK.Target.Target, storageKey: string, selectedStorageTypes: string[]): void {
|
476
|
-
|
476
|
+
void target.storageAgent().invoke_clearDataForStorageKey(
|
477
|
+
{storageKey, storageTypes: selectedStorageTypes.join(',')});
|
477
478
|
|
478
479
|
const set = new Set(selectedStorageTypes);
|
479
480
|
const hasAll = set.has(Protocol.Storage.StorageType.All);
|
@@ -144,6 +144,16 @@ const UIStrings = {
|
|
144
144
|
*/
|
145
145
|
EmbedderTriggeredAndDestroyed:
|
146
146
|
'Prerendering triggered by Chrome internal (e.g., Omnibox prerendering) is is destroyed in the destructor.',
|
147
|
+
|
148
|
+
/**
|
149
|
+
*@description Description text for Prerender2 cancellation status MemoryLimitExceeded.
|
150
|
+
*/
|
151
|
+
MemoryLimitExceeded: 'Memory limit exceeded',
|
152
|
+
|
153
|
+
/**
|
154
|
+
*@description Description text for Prerender2 cancellation status FailToGetMemoryUsage.
|
155
|
+
*/
|
156
|
+
FailToGetMemoryUsage: 'Fail to get memory usage',
|
147
157
|
};
|
148
158
|
|
149
159
|
const str_ = i18n.i18n.registerUIStrings('panels/application/components/Prerender2.ts', UIStrings);
|
@@ -185,4 +195,6 @@ export const Prerender2ReasonDescription = {
|
|
185
195
|
'EmbedderTriggeredAndCrossOriginRedirected':
|
186
196
|
{name: i18nLazyString(UIStrings.EmbedderTriggeredAndCrossOriginRedirected)},
|
187
197
|
'EmbedderTriggeredAndDestroyed': {name: i18nLazyString(UIStrings.EmbedderTriggeredAndDestroyed)},
|
198
|
+
'MemoryLimitExceeded': {name: i18nLazyString(UIStrings.MemoryLimitExceeded)},
|
199
|
+
'FailToGetMemoryUsage': {name: i18nLazyString(UIStrings.FailToGetMemoryUsage)},
|
188
200
|
};
|
@@ -716,7 +716,8 @@ export class StylePropertyTreeElement extends UI.TreeOutline.TreeElement {
|
|
716
716
|
}
|
717
717
|
|
718
718
|
const authoringHint = this.getAuthoringHint(this.computedStyles, this.parentsComputedStyles);
|
719
|
-
|
719
|
+
const showAuthoringHint = authoringHint !== null && this.property.parsedOk;
|
720
|
+
if (showAuthoringHint) {
|
720
721
|
const hintIcon = UI.Icon.Icon.create('mediumicon-info', 'hint');
|
721
722
|
const hintPopover =
|
722
723
|
new UI.PopoverHelper.PopoverHelper(hintIcon, event => this.handleHintPopoverRequest(authoringHint, event));
|
@@ -10,6 +10,7 @@ import {assertNotNullOrUndefined} from '../../../core/platform/platform.js';
|
|
10
10
|
import * as SDK from '../../../core/sdk/sdk.js';
|
11
11
|
import * as Protocol from '../../../generated/protocol.js';
|
12
12
|
import * as IssuesManager from '../../../models/issues_manager/issues_manager.js';
|
13
|
+
import * as ClientVariations from '../../../third_party/chromium/client-variations/client-variations.js';
|
13
14
|
import * as Buttons from '../../../ui/components/buttons/buttons.js';
|
14
15
|
import * as ComponentHelpers from '../../../ui/components/helpers/helpers.js';
|
15
16
|
import * as IconButton from '../../../ui/components/icon_button/icon_button.js';
|
@@ -23,12 +24,24 @@ const RAW_HEADER_CUTOFF = 3000;
|
|
23
24
|
const {render, html} = LitHtml;
|
24
25
|
|
25
26
|
const UIStrings = {
|
27
|
+
/**
|
28
|
+
*@description Comment used in decoded X-Client-Data HTTP header output in Headers View of the Network panel
|
29
|
+
*/
|
30
|
+
activeClientExperimentVariation: 'Active `client experiment variation IDs`.',
|
31
|
+
/**
|
32
|
+
*@description Comment used in decoded X-Client-Data HTTP header output in Headers View of the Network panel
|
33
|
+
*/
|
34
|
+
activeClientExperimentVariationIds: 'Active `client experiment variation IDs` that trigger server-side behavior.',
|
26
35
|
/**
|
27
36
|
*@description Text in Headers View of the Network panel
|
28
37
|
*/
|
29
38
|
chooseThisOptionIfTheResourceAnd:
|
30
39
|
'Choose this option if the resource and the document are served from the same site.',
|
31
40
|
/**
|
41
|
+
*@description Text in Headers View of the Network panel for X-Client-Data HTTP headers
|
42
|
+
*/
|
43
|
+
decoded: 'Decoded:',
|
44
|
+
/**
|
32
45
|
*@description Text in Request Headers View of the Network panel
|
33
46
|
*/
|
34
47
|
fromDiskCache: '(from disk cache)',
|
@@ -247,6 +260,18 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
247
260
|
|
248
261
|
const mergedHeaders = mergeHeadersWithIssues(this.#request.sortedResponseHeaders.slice(), headersWithIssues);
|
249
262
|
|
263
|
+
const blockedResponseCookies = this.#request.blockedResponseCookies();
|
264
|
+
const blockedCookieLineToReasons = new Map<string, Protocol.Network.SetCookieBlockedReason[]>(
|
265
|
+
blockedResponseCookies?.map(c => [c.cookieLine, c.blockedReasons]));
|
266
|
+
for (const header of mergedHeaders) {
|
267
|
+
if (header.name.toLowerCase() === 'set-cookie' && header.value) {
|
268
|
+
const matchingBlockedReasons = blockedCookieLineToReasons.get(header.value.toString());
|
269
|
+
if (matchingBlockedReasons) {
|
270
|
+
header.setCookieBlockedReasons = matchingBlockedReasons;
|
271
|
+
}
|
272
|
+
}
|
273
|
+
}
|
274
|
+
|
250
275
|
const toggleShowRaw = (): void => {
|
251
276
|
this.#showResponseHeadersText = !this.#showResponseHeadersText;
|
252
277
|
this.#render();
|
@@ -271,6 +296,7 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
271
296
|
`}
|
272
297
|
</${Category.litTagName}>
|
273
298
|
`;
|
299
|
+
// clang-format on
|
274
300
|
}
|
275
301
|
|
276
302
|
#renderRequestHeaders(): LitHtml.TemplateResult {
|
@@ -307,6 +333,7 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
307
333
|
`}
|
308
334
|
</${Category.litTagName}>
|
309
335
|
`;
|
336
|
+
// clang-format on
|
310
337
|
}
|
311
338
|
|
312
339
|
#maybeRenderProvisionalHeadersWarning(): LitHtml.LitTemplate {
|
@@ -341,24 +368,71 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
341
368
|
}
|
342
369
|
|
343
370
|
#renderHeader(header: HeaderDescriptor): LitHtml.TemplateResult {
|
371
|
+
// Disabled until https://crbug.com/1079231 is fixed.
|
372
|
+
// clang-format off
|
344
373
|
return html`
|
345
374
|
<div class="row">
|
346
|
-
<div class="header-name"
|
347
|
-
|
375
|
+
<div class="header-name">
|
376
|
+
${header.headerNotSet ? html`
|
377
|
+
<div class="header-badge header-badge-text">
|
378
|
+
${i18n.i18n.lockedString('not-set')}
|
379
|
+
</div>
|
380
|
+
` : ''}${header.name}:
|
381
|
+
</div>
|
382
|
+
<div class="header-value ${header.headerValueIncorrect ? 'header-warning' : ''}">
|
383
|
+
${header.value?.toString() || ''}
|
384
|
+
${this.#maybeRenderHeaderValueSuffix(header)}
|
385
|
+
</div>
|
348
386
|
</div>
|
349
|
-
${this.#
|
387
|
+
${this.#maybeRenderBlockedDetails(header.blockedDetails)}
|
350
388
|
`;
|
389
|
+
// clang-format on
|
390
|
+
}
|
391
|
+
|
392
|
+
#maybeRenderHeaderValueSuffix(header: HeaderDescriptor): LitHtml.LitTemplate {
|
393
|
+
const headerId = header.name.toLowerCase();
|
394
|
+
|
395
|
+
if (headerId === 'set-cookie' && header.setCookieBlockedReasons) {
|
396
|
+
const titleText =
|
397
|
+
header.setCookieBlockedReasons.map(SDK.NetworkRequest.setCookieBlockedReasonToUiString).join('\n');
|
398
|
+
// Disabled until https://crbug.com/1079231 is fixed.
|
399
|
+
// clang-format off
|
400
|
+
return html`
|
401
|
+
<${IconButton.Icon.Icon.litTagName} class="inline-icon" title=${titleText} .data=${{
|
402
|
+
iconName: 'warning_icon',
|
403
|
+
width: '12px',
|
404
|
+
height: '12px',
|
405
|
+
} as IconButton.Icon.IconData}>
|
406
|
+
</${IconButton.Icon.Icon.litTagName}>
|
407
|
+
`;
|
408
|
+
// clang-format on
|
409
|
+
}
|
410
|
+
|
411
|
+
if (headerId === 'x-client-data') {
|
412
|
+
const data = ClientVariations.parseClientVariations(header.value?.toString() || '');
|
413
|
+
const output = ClientVariations.formatClientVariations(
|
414
|
+
data, i18nString(UIStrings.activeClientExperimentVariation),
|
415
|
+
i18nString(UIStrings.activeClientExperimentVariationIds));
|
416
|
+
return html`
|
417
|
+
<div>${i18nString(UIStrings.decoded)}</div>
|
418
|
+
<code>${output}</code>
|
419
|
+
`;
|
420
|
+
}
|
421
|
+
|
422
|
+
return LitHtml.nothing;
|
351
423
|
}
|
352
424
|
|
353
|
-
#
|
354
|
-
if (!
|
425
|
+
#maybeRenderBlockedDetails(blockedDetails?: BlockedDetailsDescriptor): LitHtml.LitTemplate {
|
426
|
+
if (!blockedDetails) {
|
355
427
|
return LitHtml.nothing;
|
356
428
|
}
|
429
|
+
// Disabled until https://crbug.com/1079231 is fixed.
|
430
|
+
// clang-format off
|
357
431
|
return html`
|
358
432
|
<div class="call-to-action">
|
359
433
|
<div class="call-to-action-body">
|
360
|
-
<div class="explanation">${
|
361
|
-
${
|
434
|
+
<div class="explanation">${blockedDetails.explanation()}</div>
|
435
|
+
${blockedDetails.examples.map(example => html`
|
362
436
|
<div class="example">
|
363
437
|
<code>${example.codeSnippet}</code>
|
364
438
|
${example.comment ? html`
|
@@ -366,13 +440,14 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
366
440
|
` : ''}
|
367
441
|
</div>
|
368
442
|
`)}
|
369
|
-
${this.#
|
443
|
+
${this.#maybeRenderBlockedDetailsLink(blockedDetails)}
|
370
444
|
</div>
|
371
445
|
</div>
|
372
446
|
`;
|
447
|
+
// clang-format on
|
373
448
|
}
|
374
449
|
|
375
|
-
#
|
450
|
+
#maybeRenderBlockedDetailsLink(blockedDetails?: BlockedDetailsDescriptor): LitHtml.LitTemplate {
|
376
451
|
if (this.#request && IssuesManager.RelatedIssue.hasIssueOfCategory(this.#request, IssuesManager.Issue.IssueCategory.CrossOriginEmbedderPolicy)) {
|
377
452
|
const followLink = (): void => {
|
378
453
|
Host.userMetrics.issuesPanelOpenedFrom(Host.UserMetrics.IssueOpener.LearnMoreLinkCOEP);
|
@@ -394,9 +469,11 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
394
469
|
</div>
|
395
470
|
`;
|
396
471
|
}
|
397
|
-
if (
|
472
|
+
if (blockedDetails?.link) {
|
473
|
+
// Disabled until https://crbug.com/1079231 is fixed.
|
474
|
+
// clang-format off
|
398
475
|
return html`
|
399
|
-
<x-link href=${
|
476
|
+
<x-link href=${blockedDetails.link.url} class="link">
|
400
477
|
<${IconButton.Icon.Icon.litTagName} class="inline-icon" .data=${{
|
401
478
|
iconName: 'link_icon',
|
402
479
|
color: 'var(--color-link)',
|
@@ -407,6 +484,7 @@ export class RequestHeadersComponent extends HTMLElement {
|
|
407
484
|
>${i18nString(UIStrings.learnMore)}
|
408
485
|
</x-link>
|
409
486
|
`;
|
487
|
+
// clang-format on
|
410
488
|
}
|
411
489
|
return LitHtml.nothing;
|
412
490
|
}
|
@@ -627,7 +705,7 @@ declare global {
|
|
627
705
|
}
|
628
706
|
}
|
629
707
|
|
630
|
-
interface
|
708
|
+
interface BlockedDetailsDescriptor {
|
631
709
|
explanation: () => string;
|
632
710
|
examples: Array<{
|
633
711
|
codeSnippet: string,
|
@@ -642,8 +720,9 @@ interface HeaderDescriptor {
|
|
642
720
|
name: string;
|
643
721
|
value: Object|null;
|
644
722
|
headerValueIncorrect?: boolean|null;
|
645
|
-
|
723
|
+
blockedDetails?: BlockedDetailsDescriptor;
|
646
724
|
headerNotSet: boolean|null;
|
725
|
+
setCookieBlockedReasons?: Protocol.Network.SetCookieBlockedReason[];
|
647
726
|
}
|
648
727
|
|
649
728
|
const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescriptor>([
|
@@ -653,7 +732,7 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescr
|
|
653
732
|
name: 'cross-origin-embedder-policy',
|
654
733
|
value: null,
|
655
734
|
headerValueIncorrect: null,
|
656
|
-
|
735
|
+
blockedDetails: {
|
657
736
|
explanation: i18nLazyString(UIStrings.toEmbedThisFrameInYourDocument),
|
658
737
|
examples: [{codeSnippet: 'Cross-Origin-Embedder-Policy: require-corp', comment: undefined}],
|
659
738
|
link: {url: 'https://web.dev/coop-coep/'},
|
@@ -667,7 +746,7 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescr
|
|
667
746
|
name: 'cross-origin-resource-policy',
|
668
747
|
value: null,
|
669
748
|
headerValueIncorrect: null,
|
670
|
-
|
749
|
+
blockedDetails: {
|
671
750
|
explanation: i18nLazyString(UIStrings.toUseThisResourceFromADifferent),
|
672
751
|
examples: [
|
673
752
|
{
|
@@ -690,7 +769,7 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescr
|
|
690
769
|
name: 'cross-origin-opener-policy',
|
691
770
|
value: null,
|
692
771
|
headerValueIncorrect: false,
|
693
|
-
|
772
|
+
blockedDetails: {
|
694
773
|
explanation: i18nLazyString(UIStrings.thisDocumentWasBlockedFrom),
|
695
774
|
examples: [],
|
696
775
|
link: {url: 'https://web.dev/coop-coep/'},
|
@@ -704,7 +783,7 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescr
|
|
704
783
|
name: 'cross-origin-resource-policy',
|
705
784
|
value: null,
|
706
785
|
headerValueIncorrect: true,
|
707
|
-
|
786
|
+
blockedDetails: {
|
708
787
|
explanation: i18nLazyString(UIStrings.toUseThisResourceFromADifferentSite),
|
709
788
|
examples: [
|
710
789
|
{
|
@@ -723,7 +802,7 @@ const BlockedReasonDetails = new Map<Protocol.Network.BlockedReason, HeaderDescr
|
|
723
802
|
name: 'cross-origin-resource-policy',
|
724
803
|
value: null,
|
725
804
|
headerValueIncorrect: true,
|
726
|
-
|
805
|
+
blockedDetails: {
|
727
806
|
explanation: i18nLazyString(UIStrings.toUseThisResourceFromADifferentOrigin),
|
728
807
|
examples: [
|
729
808
|
{
|
@@ -111,6 +111,7 @@ type SerializableSettings = {
|
|
111
111
|
export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelObserver<SDK.RuntimeModel.RuntimeModel> {
|
112
112
|
#paneInstance = LinearMemoryInspectorPaneImpl.instance();
|
113
113
|
#bufferIdToRemoteObject: Map<string, SDK.RemoteObject.RemoteObject> = new Map();
|
114
|
+
#bufferIdToHighlightInfo: Map<string, HighlightInfo> = new Map();
|
114
115
|
#settings: Common.Settings.Setting<SerializableSettings>;
|
115
116
|
|
116
117
|
private constructor() {
|
@@ -178,6 +179,18 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
178
179
|
};
|
179
180
|
}
|
180
181
|
|
182
|
+
getHighlightInfo(bufferId: string): HighlightInfo|undefined {
|
183
|
+
return this.#bufferIdToHighlightInfo.get(bufferId);
|
184
|
+
}
|
185
|
+
|
186
|
+
#setHighlightInfo(bufferId: string, highlightInfo: HighlightInfo): void {
|
187
|
+
this.#bufferIdToHighlightInfo.set(bufferId, highlightInfo);
|
188
|
+
}
|
189
|
+
|
190
|
+
#resetHighlightInfo(bufferId: string): void {
|
191
|
+
this.#bufferIdToHighlightInfo.delete(bufferId);
|
192
|
+
}
|
193
|
+
|
181
194
|
static async retrieveDWARFMemoryObjectAndAddress(obj: SDK.RemoteObject.RemoteObject):
|
182
195
|
Promise<{obj: SDK.RemoteObject.RemoteObject, address: number}|undefined> {
|
183
196
|
if (obj instanceof Bindings.DebuggerLanguagePlugins.ExtensionRemoteObject) {
|
@@ -253,8 +266,6 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
253
266
|
memoryObj = response.obj;
|
254
267
|
}
|
255
268
|
|
256
|
-
const highlightInfo = this.#extractHighlightInfo(obj, memoryAddress);
|
257
|
-
|
258
269
|
if (memoryAddress !== undefined) {
|
259
270
|
Host.userMetrics.linearMemoryInspectorTarget(
|
260
271
|
Host.UserMetrics.LinearMemoryInspectorTarget.DWARFInspectableAddress);
|
@@ -277,9 +288,14 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
277
288
|
}
|
278
289
|
const memoryProperty = internalProperties?.find(({name}) => name === '[[WebAssemblyMemory]]');
|
279
290
|
const memory = memoryProperty?.value;
|
280
|
-
|
291
|
+
const highlightInfo = LinearMemoryInspectorController.extractHighlightInfo(obj, memoryAddress);
|
292
|
+
if (highlightInfo !== undefined) {
|
293
|
+
this.#setHighlightInfo(id, highlightInfo);
|
294
|
+
} else {
|
295
|
+
this.#resetHighlightInfo(id);
|
296
|
+
}
|
281
297
|
if (this.#bufferIdToRemoteObject.has(id)) {
|
282
|
-
this.#paneInstance.reveal(id, memoryAddress
|
298
|
+
this.#paneInstance.reveal(id, memoryAddress);
|
283
299
|
void UI.ViewManager.ViewManager.instance().showView('linear-memory-inspector');
|
284
300
|
return;
|
285
301
|
}
|
@@ -288,11 +304,11 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
288
304
|
this.#bufferIdToRemoteObject.set(id, buffer.object());
|
289
305
|
const arrayBufferWrapper = new RemoteArrayBufferWrapper(buffer);
|
290
306
|
|
291
|
-
this.#paneInstance.create(id, title, arrayBufferWrapper, memoryAddress
|
307
|
+
this.#paneInstance.create(id, title, arrayBufferWrapper, memoryAddress);
|
292
308
|
void UI.ViewManager.ViewManager.instance().showView('linear-memory-inspector');
|
293
309
|
}
|
294
310
|
|
295
|
-
|
311
|
+
static extractHighlightInfo(obj: SDK.RemoteObject.RemoteObject, memoryAddress?: number): HighlightInfo|undefined {
|
296
312
|
let highlightInfo;
|
297
313
|
if (obj instanceof Bindings.DebuggerLanguagePlugins.ValueNode) {
|
298
314
|
try {
|
@@ -311,6 +327,7 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
311
327
|
for (const [bufferId, remoteObject] of this.#bufferIdToRemoteObject) {
|
312
328
|
if (model === remoteObject.runtimeModel()) {
|
313
329
|
this.#bufferIdToRemoteObject.delete(bufferId);
|
330
|
+
this.#resetHighlightInfo(bufferId);
|
314
331
|
this.#paneInstance.close(bufferId);
|
315
332
|
}
|
316
333
|
}
|
@@ -320,7 +337,7 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
320
337
|
const debuggerModel = event.data;
|
321
338
|
for (const [bufferId, remoteObject] of this.#bufferIdToRemoteObject) {
|
322
339
|
if (debuggerModel.runtimeModel() === remoteObject.runtimeModel()) {
|
323
|
-
this.#
|
340
|
+
this.#resetHighlightInfo(bufferId);
|
324
341
|
this.#paneInstance.refreshView(bufferId);
|
325
342
|
}
|
326
343
|
}
|
@@ -336,5 +353,6 @@ export class LinearMemoryInspectorController extends SDK.TargetManager.SDKModelO
|
|
336
353
|
remoteObj.release();
|
337
354
|
}
|
338
355
|
this.#bufferIdToRemoteObject.delete(bufferId);
|
356
|
+
this.#resetHighlightInfo(bufferId);
|
339
357
|
}
|
340
358
|
}
|
@@ -84,14 +84,13 @@ export class LinearMemoryInspectorPaneImpl extends Common.ObjectWrapper.eventMix
|
|
84
84
|
getViewForTabId(tabId: string): LinearMemoryInspectorView {
|
85
85
|
const view = this.#tabIdToInspectorView.get(tabId);
|
86
86
|
if (!view) {
|
87
|
-
throw new Error(`No linear memory inspector view for given tab id: ${tabId}`);
|
87
|
+
throw new Error(`No linear memory inspector view for the given tab id: ${tabId}`);
|
88
88
|
}
|
89
89
|
return view;
|
90
90
|
}
|
91
91
|
|
92
|
-
create(tabId: string, title: string, arrayWrapper: LazyUint8Array, address?: number
|
93
|
-
|
94
|
-
const inspectorView = new LinearMemoryInspectorView(arrayWrapper, address, highlightInfo);
|
92
|
+
create(tabId: string, title: string, arrayWrapper: LazyUint8Array, address?: number): void {
|
93
|
+
const inspectorView = new LinearMemoryInspectorView(arrayWrapper, address, tabId);
|
95
94
|
this.#tabIdToInspectorView.set(tabId, inspectorView);
|
96
95
|
this.#tabbedPane.appendTab(tabId, title, inspectorView, undefined, false, true);
|
97
96
|
this.#tabbedPane.selectTab(tabId);
|
@@ -101,15 +100,12 @@ export class LinearMemoryInspectorPaneImpl extends Common.ObjectWrapper.eventMix
|
|
101
100
|
this.#tabbedPane.closeTab(tabId, false);
|
102
101
|
}
|
103
102
|
|
104
|
-
reveal(tabId: string, address?: number
|
103
|
+
reveal(tabId: string, address?: number): void {
|
105
104
|
const view = this.getViewForTabId(tabId);
|
106
105
|
|
107
106
|
if (address !== undefined) {
|
108
107
|
view.updateAddress(address);
|
109
108
|
}
|
110
|
-
if (highlightInfo !== undefined) {
|
111
|
-
view.updateHighlightInfo(highlightInfo);
|
112
|
-
}
|
113
109
|
this.refreshView(tabId);
|
114
110
|
this.#tabbedPane.selectTab(tabId);
|
115
111
|
}
|
@@ -119,11 +115,6 @@ export class LinearMemoryInspectorPaneImpl extends Common.ObjectWrapper.eventMix
|
|
119
115
|
view.refreshData();
|
120
116
|
}
|
121
117
|
|
122
|
-
resetHighlightInfo(tabId: string): void {
|
123
|
-
const view = this.getViewForTabId(tabId);
|
124
|
-
view.updateHighlightInfo(undefined);
|
125
|
-
}
|
126
|
-
|
127
118
|
#tabClosed(event: Common.EventTarget.EventTargetEvent<UI.TabbedPane.EventData>): void {
|
128
119
|
const {tabId} = event.data;
|
129
120
|
this.#tabIdToInspectorView.delete(tabId);
|
@@ -142,10 +133,10 @@ export type EventTypes = {
|
|
142
133
|
class LinearMemoryInspectorView extends UI.Widget.VBox {
|
143
134
|
#memoryWrapper: LazyUint8Array;
|
144
135
|
#address: number;
|
145
|
-
#
|
136
|
+
#tabId: string;
|
146
137
|
#inspector: LinearMemoryInspector;
|
147
138
|
firstTimeOpen: boolean;
|
148
|
-
constructor(memoryWrapper: LazyUint8Array, address: number|undefined = 0,
|
139
|
+
constructor(memoryWrapper: LazyUint8Array, address: number|undefined = 0, tabId: string) {
|
149
140
|
super(false);
|
150
141
|
|
151
142
|
if (address < 0 || address >= memoryWrapper.length()) {
|
@@ -154,7 +145,7 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
|
|
154
145
|
|
155
146
|
this.#memoryWrapper = memoryWrapper;
|
156
147
|
this.#address = address;
|
157
|
-
this.#
|
148
|
+
this.#tabId = tabId;
|
158
149
|
this.#inspector = new LinearMemoryInspector();
|
159
150
|
this.#inspector.addEventListener('memoryrequest', (event: MemoryRequestEvent) => {
|
160
151
|
this.#memoryRequested(event);
|
@@ -186,18 +177,6 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
|
|
186
177
|
this.#address = address;
|
187
178
|
}
|
188
179
|
|
189
|
-
updateHighlightInfo(highlightInfo?: HighlightInfo): void {
|
190
|
-
if (highlightInfo !== undefined) {
|
191
|
-
if (highlightInfo.startAddress < 0 || highlightInfo.startAddress >= this.#memoryWrapper.length()) {
|
192
|
-
throw new Error('Highlight info start address is out of bounds.');
|
193
|
-
}
|
194
|
-
if (highlightInfo.size < 0) {
|
195
|
-
throw new Error('Highlight size cannot be negative.');
|
196
|
-
}
|
197
|
-
}
|
198
|
-
this.#highlightInfo = highlightInfo;
|
199
|
-
}
|
200
|
-
|
201
180
|
refreshData(): void {
|
202
181
|
void LinearMemoryInspectorController.getMemoryForAddress(this.#memoryWrapper, this.#address).then(({
|
203
182
|
memory,
|
@@ -221,7 +200,7 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
|
|
221
200
|
valueTypes,
|
222
201
|
valueTypeModes,
|
223
202
|
endianness,
|
224
|
-
highlightInfo: this.#
|
203
|
+
highlightInfo: this.#getHighlightInfo(),
|
225
204
|
};
|
226
205
|
});
|
227
206
|
}
|
@@ -238,8 +217,21 @@ class LinearMemoryInspectorView extends UI.Widget.VBox {
|
|
238
217
|
address: address,
|
239
218
|
memoryOffset: start,
|
240
219
|
outerMemoryLength: this.#memoryWrapper.length(),
|
241
|
-
highlightInfo: this.#
|
220
|
+
highlightInfo: this.#getHighlightInfo(),
|
242
221
|
};
|
243
222
|
});
|
244
223
|
}
|
224
|
+
|
225
|
+
#getHighlightInfo(): HighlightInfo|undefined {
|
226
|
+
const highlightInfo = LinearMemoryInspectorController.instance().getHighlightInfo(this.#tabId);
|
227
|
+
if (highlightInfo !== undefined) {
|
228
|
+
if (highlightInfo.startAddress < 0 || highlightInfo.startAddress >= this.#memoryWrapper.length()) {
|
229
|
+
throw new Error('Highlight info start address is out of bounds.');
|
230
|
+
}
|
231
|
+
if (highlightInfo.size <= 0) {
|
232
|
+
throw new Error('Highlight size must be a positive number.');
|
233
|
+
}
|
234
|
+
}
|
235
|
+
return highlightInfo;
|
236
|
+
}
|
245
237
|
}
|
@@ -719,6 +719,7 @@ export class SplitWidget extends Common.ObjectWrapper.eventMixin<EventTypes, typ
|
|
719
719
|
}
|
720
720
|
|
721
721
|
hideDefaultResizer(noSplitter?: boolean): void {
|
722
|
+
this.resizerElementInternal.classList.toggle('hidden', Boolean(noSplitter));
|
722
723
|
this.uninstallResizer(this.resizerElementInternal);
|
723
724
|
this.sidebarElementInternal.classList.toggle('no-default-splitter', Boolean(noSplitter));
|
724
725
|
}
|
@@ -224,7 +224,7 @@ export class ObjectPropertiesSection extends UI.TreeOutline.TreeOutlineInShadow
|
|
224
224
|
}
|
225
225
|
|
226
226
|
const includedWebIdlTypes = webIdlType.includes?.map(className => domPinnedProperties[className]) ?? [];
|
227
|
-
const includedWebIdlProps = includedWebIdlTypes.flatMap(webIdlType => Object.entries(webIdlType
|
227
|
+
const includedWebIdlProps = includedWebIdlTypes.flatMap(webIdlType => Object.entries(webIdlType?.props ?? {}));
|
228
228
|
const webIdlProps = {...webIdlType.props, ...Object.fromEntries(includedWebIdlProps)};
|
229
229
|
|
230
230
|
for (const property of properties) {
|
package/package.json
CHANGED