chrome-devtools-frontend 1.0.1028626 → 1.0.1029795

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/config/gni/devtools_grd_files.gni +6 -5
  2. package/config/gni/devtools_image_files.gni +1 -0
  3. package/front_end/Images/src/clear-warning_icon.svg +99 -0
  4. package/front_end/core/common/WasmDisassembly.ts +6 -1
  5. package/front_end/core/host/ResourceLoader.ts +17 -3
  6. package/front_end/core/i18n/locales/en-US.json +9 -3
  7. package/front_end/core/i18n/locales/en-XL.json +9 -3
  8. package/front_end/core/sdk/NetworkManager.ts +3 -1
  9. package/front_end/core/sdk/Script.ts +39 -13
  10. package/front_end/generated/InspectorBackendCommands.js +6 -6
  11. package/front_end/generated/SupportedCSSProperties.js +2 -4
  12. package/front_end/generated/protocol.ts +29 -10
  13. package/front_end/models/bindings/ContentProviderBasedProject.ts +7 -1
  14. package/front_end/models/issues_manager/AttributionReportingIssue.ts +26 -40
  15. package/front_end/models/issues_manager/DeprecationIssue.ts +17 -2
  16. package/front_end/models/issues_manager/descriptions/arInsecureContext.md +7 -0
  17. package/front_end/models/issues_manager/descriptions/arInvalidEligibleHeader.md +19 -0
  18. package/front_end/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md +5 -0
  19. package/front_end/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md +5 -0
  20. package/front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md +7 -4
  21. package/front_end/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md +10 -0
  22. package/front_end/models/text_utils/ContentProvider.ts +9 -1
  23. package/front_end/panels/elements/StylePropertyTreeElement.ts +3 -23
  24. package/front_end/panels/elements/StylesSidebarPane.ts +31 -1
  25. package/front_end/panels/issues/AttributionReportingIssueDetailsView.ts +13 -42
  26. package/front_end/panels/network/components/RequestHeadersView.ts +58 -28
  27. package/front_end/panels/network/network-meta.ts +16 -0
  28. package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +80 -22
  29. package/front_end/panels/timeline/TimelineLoader.ts +2 -1
  30. package/front_end/ui/legacy/SplitWidget.ts +2 -0
  31. package/front_end/ui/legacy/TextPrompt.ts +1 -1
  32. package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +9 -51
  33. package/package.json +1 -1
  34. package/front_end/models/issues_manager/descriptions/arAttributionSourceUntrustworthyFrameOrigin.md +0 -4
  35. package/front_end/models/issues_manager/descriptions/arAttributionSourceUntrustworthyOrigin.md +0 -5
  36. package/front_end/models/issues_manager/descriptions/arAttributionUntrustworthyFrameOrigin.md +0 -4
  37. package/front_end/models/issues_manager/descriptions/arAttributionUntrustworthyOrigin.md +0 -4
  38. package/front_end/models/issues_manager/descriptions/arInvalidHeader.md +0 -3
@@ -47,6 +47,7 @@ grd_files_release_sources = [
47
47
  "front_end/Images/chromeSelectDark.svg",
48
48
  "front_end/Images/circled_backslash_icon.svg",
49
49
  "front_end/Images/circled_exclamation_icon.svg",
50
+ "front_end/Images/clear-warning_icon.svg",
50
51
  "front_end/Images/close-icon.svg",
51
52
  "front_end/Images/copy_icon.svg",
52
53
  "front_end/Images/cssoverview_icons_2x.avif",
@@ -278,12 +279,12 @@ grd_files_release_sources = [
278
279
  "front_end/models/issues_manager/descriptions/TwaDigitalAssetLinksFailed.md",
279
280
  "front_end/models/issues_manager/descriptions/TwaHttpError.md",
280
281
  "front_end/models/issues_manager/descriptions/TwaPageUnavailableOffline.md",
281
- "front_end/models/issues_manager/descriptions/arAttributionSourceUntrustworthyFrameOrigin.md",
282
- "front_end/models/issues_manager/descriptions/arAttributionSourceUntrustworthyOrigin.md",
283
- "front_end/models/issues_manager/descriptions/arAttributionUntrustworthyFrameOrigin.md",
284
- "front_end/models/issues_manager/descriptions/arAttributionUntrustworthyOrigin.md",
285
- "front_end/models/issues_manager/descriptions/arInvalidHeader.md",
282
+ "front_end/models/issues_manager/descriptions/arInsecureContext.md",
283
+ "front_end/models/issues_manager/descriptions/arInvalidEligibleHeader.md",
284
+ "front_end/models/issues_manager/descriptions/arInvalidRegisterSourceHeader.md",
285
+ "front_end/models/issues_manager/descriptions/arInvalidRegisterTriggerHeader.md",
286
286
  "front_end/models/issues_manager/descriptions/arPermissionPolicyDisabled.md",
287
+ "front_end/models/issues_manager/descriptions/arUntrustworthyReportingOrigin.md",
287
288
  "front_end/models/issues_manager/descriptions/clientHintMetaTagAllowListInvalidOrigin.md",
288
289
  "front_end/models/issues_manager/descriptions/clientHintMetaTagModifiedHTML.md",
289
290
  "front_end/models/issues_manager/descriptions/corsAllowCredentialsRequired.md",
@@ -58,6 +58,7 @@ devtools_svg_sources = [
58
58
  "chromeSelectDark.svg",
59
59
  "circled_backslash_icon.svg",
60
60
  "circled_exclamation_icon.svg",
61
+ "clear-warning_icon.svg",
61
62
  "close-icon.svg",
62
63
  "copy_icon.svg",
63
64
  "dropdown_7x6_icon.svg",
@@ -0,0 +1,99 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ width="10"
6
+ height="10"
7
+ viewBox="0 0 2.6458333 2.6458334"
8
+ version="1.1"
9
+ id="svg278"
10
+ inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
11
+ sodipodi:docname="clear-warning_icon.svg"
12
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
14
+ xmlns="http://www.w3.org/2000/svg"
15
+ xmlns:svg="http://www.w3.org/2000/svg">
16
+ <sodipodi:namedview
17
+ id="namedview280"
18
+ pagecolor="#ffffff"
19
+ bordercolor="#666666"
20
+ borderopacity="1.0"
21
+ inkscape:pageshadow="2"
22
+ inkscape:pageopacity="0.0"
23
+ inkscape:pagecheckerboard="0"
24
+ inkscape:document-units="mm"
25
+ showgrid="false"
26
+ units="px"
27
+ inkscape:zoom="5.1337949"
28
+ inkscape:cx="-96.712084"
29
+ inkscape:cy="68.760051"
30
+ inkscape:window-width="2028"
31
+ inkscape:window-height="1445"
32
+ inkscape:window-x="0"
33
+ inkscape:window-y="0"
34
+ inkscape:window-maximized="1"
35
+ inkscape:current-layer="layer1" />
36
+ <defs
37
+ id="defs275">
38
+ <mask
39
+ id="path4453-6-mask">
40
+ <rect
41
+ id="rect8990"
42
+ style="fill:#ffffff"
43
+ height="10"
44
+ width="10"
45
+ x="0"
46
+ y="0" />
47
+ <path
48
+ style="fill:#000000"
49
+ inkscape:connector-curvature="0"
50
+ id="path4453-6"
51
+ d="m 64,3 h 2 V 5.25 L 65.5,7 h -1 L 64,5.25 V 3 m 0,5 h 2 v 1 h -2"
52
+ transform="translate(-60)" />
53
+ </mask>
54
+ </defs>
55
+ <g
56
+ inkscape:label="Layer 1"
57
+ inkscape:groupmode="layer"
58
+ id="layer1">
59
+ <g
60
+ mask="url(#path4453-6-mask)"
61
+ transform="matrix(0.26458333,0,0,0.26458333,1.6666664e-8,-1.6329569e-5)"
62
+ id="g4443-7">
63
+ <path
64
+ style="stroke:#c19600;stroke-width:2;stroke-linejoin:round"
65
+ inkscape:connector-curvature="0"
66
+ id="path4447-5"
67
+ d="m 61,9 4,-8 4,8 z"
68
+ transform="translate(-60)" />
69
+ <path
70
+ style="fill:#f4bd00;stroke:#f5bd00;stroke-width:1.5;stroke-linejoin:round"
71
+ inkscape:connector-curvature="0"
72
+ id="path4449-3"
73
+ d="m 61,9 4,-8 4,8 z"
74
+ transform="translate(-60)" />
75
+ <path
76
+ style="fill:#ad8601"
77
+ inkscape:connector-curvature="0"
78
+ id="path4451-5"
79
+ d="m 63.75,2.75 h 2.5 v 2.5 L 65.75,7 h -1.5 l -0.5,-1.75 v -2.5 m 0,5.25 h 2.5 v 1.25 h -2.5"
80
+ transform="translate(-60)" />
81
+ <mask
82
+ id="mask258">
83
+ <rect
84
+ id="rect254"
85
+ style="fill:#ffffff"
86
+ height="10"
87
+ width="10"
88
+ x="0"
89
+ y="0" />
90
+ <path
91
+ style="fill:#000000"
92
+ inkscape:connector-curvature="0"
93
+ id="path256"
94
+ d="m 64,3 h 2 V 5.25 L 65.5,7 h -1 L 64,5.25 V 3 m 0,5 h 2 v 1 h -2"
95
+ transform="translate(-60)" />
96
+ </mask>
97
+ </g>
98
+ </g>
99
+ </svg>
@@ -14,10 +14,15 @@ interface FunctionBodyOffset {
14
14
  end: number;
15
15
  }
16
16
  export class WasmDisassembly {
17
+ readonly lines: string[];
17
18
  readonly #offsets: number[];
18
19
  #functionBodyOffsets: FunctionBodyOffset[];
19
20
 
20
- constructor(offsets: number[], functionBodyOffsets: FunctionBodyOffset[]) {
21
+ constructor(lines: string[], offsets: number[], functionBodyOffsets: FunctionBodyOffset[]) {
22
+ if (lines.length !== offsets.length) {
23
+ throw new Error('Lines and offsets don\'t match');
24
+ }
25
+ this.lines = lines;
21
26
  this.#offsets = offsets;
22
27
  this.#functionBodyOffsets = functionBodyOffsets;
23
28
  }
@@ -105,9 +105,10 @@ export let load = function(
105
105
  arg0: boolean, arg1: {
106
106
  [x: string]: string,
107
107
  },
108
- arg2: string, arg3: LoadErrorDescription) => void): void {
108
+ arg2: string, arg3: LoadErrorDescription) => void,
109
+ allowFileUNCPaths: boolean): void {
109
110
  const stream = new Common.StringOutputStream.StringOutputStream();
110
- loadAsStream(url, headers, stream, mycallback);
111
+ loadAsStream(url, headers, stream, mycallback, allowFileUNCPaths);
111
112
 
112
113
  function mycallback(
113
114
  success: boolean, headers: {
@@ -242,7 +243,8 @@ export const loadAsStream = function(
242
243
  ((arg0: boolean, arg1: {
243
244
  [x: string]: string,
244
245
  },
245
- arg2: LoadErrorDescription) => void)): void {
246
+ arg2: LoadErrorDescription) => void),
247
+ allowFileUNCPaths?: boolean): void {
246
248
  const streamId = _bindOutputStream(stream);
247
249
  const parsedURL = new Common.ParsedURL.ParsedURL(url);
248
250
  if (parsedURL.isDataURL()) {
@@ -250,6 +252,18 @@ export const loadAsStream = function(
250
252
  return;
251
253
  }
252
254
 
255
+ if (!allowFileUNCPaths && url.startsWith('file:////')) {
256
+ if (callback) {
257
+ callback(/* success */ false, /* headers */ {}, {
258
+ statusCode: 400, // BAD_REQUEST
259
+ netError: -20, // BLOCKED_BY_CLIENT
260
+ netErrorName: 'net::BLOCKED_BY_CLIENT',
261
+ message: 'Loading from a Windows Share via UNC path is prohibited for security reasons.',
262
+ });
263
+ }
264
+ return;
265
+ }
266
+
253
267
  const rawHeaders = [];
254
268
  if (headers) {
255
269
  for (const key in headers) {
@@ -1451,6 +1451,9 @@
1451
1451
  "models/issues_manager/DeprecationIssue.ts | openWebDatabaseInsecureContext": {
1452
1452
  "message": "WebSQL in non-secure contexts is deprecated and will be removed in M107. Please use Web Storage or Indexed Database."
1453
1453
  },
1454
+ "models/issues_manager/DeprecationIssue.ts | persistentQuotaType": {
1455
+ "message": "StorageType.persistent is deprecated. Please use standardized navigator.storage instead."
1456
+ },
1454
1457
  "models/issues_manager/DeprecationIssue.ts | pictureSourceSrc": {
1455
1458
  "message": "<source src> with a <picture> parent is invalid and therefore ignored. Please use <source srcset> instead."
1456
1459
  },
@@ -5708,9 +5711,6 @@
5708
5711
  "panels/issues/AttributionReportingIssueDetailsView.ts | element": {
5709
5712
  "message": "Element"
5710
5713
  },
5711
- "panels/issues/AttributionReportingIssueDetailsView.ts | frame": {
5712
- "message": "Frame"
5713
- },
5714
5714
  "panels/issues/AttributionReportingIssueDetailsView.ts | invalidHeaderValue": {
5715
5715
  "message": "Invalid Header Value"
5716
5716
  },
@@ -7007,6 +7007,9 @@
7007
7007
  "panels/network/network-meta.ts | dontGroupNetworkLogItemsByFrame": {
7008
7008
  "message": "Don't group network log items by frame"
7009
7009
  },
7010
+ "panels/network/network-meta.ts | enableUNCLoading": {
7011
+ "message": "Allow DevTools to load resources, such as source maps, from Windows Shares via UNC paths. Disabled by default for security reasons."
7012
+ },
7010
7013
  "panels/network/network-meta.ts | frame": {
7011
7014
  "message": "frame"
7012
7015
  },
@@ -8792,6 +8795,9 @@
8792
8795
  "panels/protocol_monitor/ProtocolMonitor.ts | sendRawCDPCommand": {
8793
8796
  "message": "Send a raw CDP command"
8794
8797
  },
8798
+ "panels/protocol_monitor/ProtocolMonitor.ts | sendRawCDPCommandExplanation": {
8799
+ "message": "Format: 'Domain.commandName' for a command without parameters, or '{\"command\":\"Domain.commandName\", \"parameters\": {...}}' as a JSON object for a command with parameters. 'cmd'/'method' and 'args'/'params'/'arguments' are also supported as alternative keys for the JSON object."
8800
+ },
8795
8801
  "panels/protocol_monitor/ProtocolMonitor.ts | session": {
8796
8802
  "message": "Session"
8797
8803
  },
@@ -1451,6 +1451,9 @@
1451
1451
  "models/issues_manager/DeprecationIssue.ts | openWebDatabaseInsecureContext": {
1452
1452
  "message": "Ŵéb̂ŚQ̂Ĺ îń n̂ón̂-śêćûŕê ćôńt̂éx̂t́ŝ íŝ d́êṕr̂éĉát̂éd̂ án̂d́ ŵíl̂ĺ b̂é r̂ém̂óv̂éd̂ ín̂ Ḿ107. P̂ĺêáŝé ûśê Ẃêb́ Ŝt́ôŕâǵê ór̂ Ín̂d́êx́êd́ D̂át̂áb̂áŝé."
1453
1453
  },
1454
+ "models/issues_manager/DeprecationIssue.ts | persistentQuotaType": {
1455
+ "message": "StorageType.persistent îś d̂ép̂ŕêćât́êd́. P̂ĺêáŝé ûśê śt̂án̂d́âŕd̂íẑéd̂ navigator.storage ín̂śt̂éâd́."
1456
+ },
1454
1457
  "models/issues_manager/DeprecationIssue.ts | pictureSourceSrc": {
1455
1458
  "message": "<source src> ŵít̂h́ â <picture> ṕâŕêńt̂ íŝ ín̂v́âĺîd́ âńd̂ t́ĥér̂éf̂ór̂é îǵn̂ór̂éd̂. Ṕl̂éâśê úŝé <source srcset> îńŝt́êád̂."
1456
1459
  },
@@ -5708,9 +5711,6 @@
5708
5711
  "panels/issues/AttributionReportingIssueDetailsView.ts | element": {
5709
5712
  "message": "Êĺêḿêńt̂"
5710
5713
  },
5711
- "panels/issues/AttributionReportingIssueDetailsView.ts | frame": {
5712
- "message": "F̂ŕâḿê"
5713
- },
5714
5714
  "panels/issues/AttributionReportingIssueDetailsView.ts | invalidHeaderValue": {
5715
5715
  "message": "Îńv̂ál̂íd̂ H́êád̂ér̂ V́âĺûé"
5716
5716
  },
@@ -7007,6 +7007,9 @@
7007
7007
  "panels/network/network-meta.ts | dontGroupNetworkLogItemsByFrame": {
7008
7008
  "message": "D̂ón̂'t́ ĝŕôúp̂ ńêt́ŵór̂ḱ l̂óĝ ít̂ém̂ś b̂ý f̂ŕâḿê"
7009
7009
  },
7010
+ "panels/network/network-meta.ts | enableUNCLoading": {
7011
+ "message": "Âĺl̂óŵ DevTools t́ô ĺôád̂ ŕêśôúr̂ćêś, ŝúĉh́ âś ŝóûŕĉé m̂áp̂ś, f̂ŕôḿ Ŵín̂d́ôẃŝ Śĥár̂éŝ v́îá UNC p̂át̂h́ŝ. D́îśâb́l̂éd̂ b́ŷ d́êf́âúl̂t́ f̂ór̂ śêćûŕît́ŷ ŕêáŝón̂ś."
7012
+ },
7010
7013
  "panels/network/network-meta.ts | frame": {
7011
7014
  "message": "f̂ŕâḿê"
7012
7015
  },
@@ -8792,6 +8795,9 @@
8792
8795
  "panels/protocol_monitor/ProtocolMonitor.ts | sendRawCDPCommand": {
8793
8796
  "message": "Ŝén̂d́ â ŕâẃ CDP ĉóm̂ḿâńd̂"
8794
8797
  },
8798
+ "panels/protocol_monitor/ProtocolMonitor.ts | sendRawCDPCommandExplanation": {
8799
+ "message": "F̂ór̂ḿât́: 'Domain.commandName' f̂ór̂ á ĉóm̂ḿâńd̂ ẃît́ĥóût́ p̂ár̂ám̂ét̂ér̂ś, ôŕ '{\"command\":\"Domain.commandName\", \"parameters\": {...}}' âś â J́ŜÓN̂ ób̂j́êćt̂ f́ôŕ â ćôḿm̂án̂d́ ŵít̂h́ p̂ár̂ám̂ét̂ér̂ś. 'cmd'/'method' âńd̂ 'args'/'params'/'arguments' ár̂é âĺŝó ŝúp̂ṕôŕt̂éd̂ áŝ ál̂t́êŕn̂át̂ív̂é k̂éŷś f̂ór̂ t́ĥé JSON ôb́ĵéĉt́."
8800
+ },
8795
8801
  "panels/protocol_monitor/ProtocolMonitor.ts | session": {
8796
8802
  "message": "Ŝéŝśîón̂"
8797
8803
  },
@@ -1504,10 +1504,12 @@ export class MultitargetNetworkManager extends Common.ObjectWrapper.ObjectWrappe
1504
1504
  headers['Cache-Control'] = 'no-cache';
1505
1505
  }
1506
1506
 
1507
+ const allowFileUNCPaths = Common.Settings.Settings.instance().moduleSetting('network.enable-unc-loading').get();
1508
+
1507
1509
  return new Promise(
1508
1510
  resolve => Host.ResourceLoader.load(url, headers, (success, _responseHeaders, content, errorDescription) => {
1509
1511
  resolve({success, content, errorDescription});
1510
- }));
1512
+ }, allowFileUNCPaths));
1511
1513
  }
1512
1514
  }
1513
1515
 
@@ -194,28 +194,54 @@ export class Script implements TextUtils.ContentProvider.ContentProvider, FrameA
194
194
  this.#originalContentProviderInternal =
195
195
  new TextUtils.StaticContentProvider.StaticContentProvider(this.contentURL(), this.contentType(), () => {
196
196
  if (!lazyContentPromise) {
197
- lazyContentPromise = (async(): Promise<{
198
- content: null,
199
- error: Common.UIString.LocalizedString,
200
- isEncoded: boolean,
201
- }|{
202
- content: string,
203
- isEncoded: boolean,
204
- error?: undefined,
205
- }> => {
197
+ lazyContentPromise = (async(): Promise<TextUtils.ContentProvider.DeferredContent> => {
206
198
  if (!this.scriptId) {
207
199
  return {content: null, error: i18nString(UIStrings.scriptRemovedOrDeleted), isEncoded: false};
208
200
  }
201
+ if (this.isWasm()) {
202
+ const result = await this.debuggerModel.target().debuggerAgent().invoke_disassembleWasmModule(
203
+ {scriptId: this.scriptId});
204
+
205
+ if (result.getError()) {
206
+ throw new Error(result.getError());
207
+ }
208
+
209
+ const {streamId, functionBodyOffsets, chunk: {lines, bytecodeOffsets}} = result;
210
+ const lineChunks = [];
211
+ const bytecodeOffsetChunks = [];
212
+ if (streamId) {
213
+ while (true) {
214
+ const result =
215
+ await this.debuggerModel.target().debuggerAgent().invoke_nextWasmDisassemblyChunk({streamId});
216
+
217
+ if (result.getError()) {
218
+ throw new Error(result.getError());
219
+ }
220
+
221
+ const {chunk: {lines: linesChunk, bytecodeOffsets: bytecodeOffsetsChunk}} = result;
222
+ if (linesChunk.length === 0) {
223
+ break;
224
+ }
225
+ lineChunks.push(linesChunk);
226
+ bytecodeOffsetChunks.push(bytecodeOffsetsChunk);
227
+ }
228
+ }
229
+ const functionBodyRanges: Array<{start: number, end: number}> = [];
230
+ // functionBodyOffsets contains a sequence of pairs of start and end offsets
231
+ for (let i = 0; i < functionBodyOffsets.length; i += 2) {
232
+ functionBodyRanges.push({start: functionBodyOffsets[i], end: functionBodyOffsets[i + 1]});
233
+ }
234
+ const wasmDisassemblyInfo = new Common.WasmDisassembly.WasmDisassembly(
235
+ lines.concat(...lineChunks), bytecodeOffsets.concat(...bytecodeOffsetChunks), functionBodyRanges);
236
+ return {content: '', isEncoded: false, wasmDisassemblyInfo};
237
+ }
209
238
  try {
210
239
  const result = await this.debuggerModel.target().debuggerAgent().invoke_getScriptSource(
211
240
  {scriptId: this.scriptId});
212
241
  if (result.getError()) {
213
242
  throw new Error(result.getError());
214
243
  }
215
- const {scriptSource, bytecode} = result;
216
- if (bytecode) {
217
- return {content: bytecode, isEncoded: true};
218
- }
244
+ const {scriptSource} = result;
219
245
  let content: string = scriptSource || '';
220
246
  if (this.hasSourceURL && this.sourceURL.startsWith('snippet://')) {
221
247
  // TODO(crbug.com/1330846): Find a better way to establish the snippet automapping binding then adding
@@ -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", UntrustworthyReportingOrigin: "UntrustworthyReportingOrigin", InsecureContext: "InsecureContext", InvalidHeader: "InvalidHeader", InvalidRegisterTriggerHeader: "InvalidRegisterTriggerHeader"});
66
+ inspectorBackend.registerEnum("Audits.AttributionReportingIssueType", {PermissionPolicyDisabled: "PermissionPolicyDisabled", UntrustworthyReportingOrigin: "UntrustworthyReportingOrigin", InsecureContext: "InsecureContext", InvalidHeader: "InvalidHeader", InvalidRegisterTriggerHeader: "InvalidRegisterTriggerHeader", InvalidEligibleHeader: "InvalidEligibleHeader"});
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", 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"});
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", PersistentQuotaType: "PersistentQuotaType", 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"});
@@ -340,12 +340,12 @@ inspectorBackend.registerEnum("IndexedDB.KeyType", {Number: "number", String: "s
340
340
  inspectorBackend.registerEnum("IndexedDB.KeyPathType", {Null: "null", String: "string", Array: "array"});
341
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
342
  inspectorBackend.registerCommand("IndexedDB.deleteDatabase", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}], []);
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}], []);
343
+ inspectorBackend.registerCommand("IndexedDB.deleteObjectStoreEntries", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"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", [], []);
346
- inspectorBackend.registerCommand("IndexedDB.requestData", [{"name": "securityOrigin", "type": "string", "optional": false}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}, {"name": "indexName", "type": "string", "optional": false}, {"name": "skipCount", "type": "number", "optional": false}, {"name": "pageSize", "type": "number", "optional": false}, {"name": "keyRange", "type": "object", "optional": true}], ["objectStoreDataEntries", "hasMore"]);
347
- inspectorBackend.registerCommand("IndexedDB.getMetadata", [{"name": "securityOrigin", "type": "string", "optional": false}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}], ["entriesCount", "keyGeneratorValue"]);
348
- inspectorBackend.registerCommand("IndexedDB.requestDatabase", [{"name": "securityOrigin", "type": "string", "optional": false}, {"name": "databaseName", "type": "string", "optional": false}], ["databaseWithObjectStores"]);
346
+ inspectorBackend.registerCommand("IndexedDB.requestData", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}, {"name": "indexName", "type": "string", "optional": false}, {"name": "skipCount", "type": "number", "optional": false}, {"name": "pageSize", "type": "number", "optional": false}, {"name": "keyRange", "type": "object", "optional": true}], ["objectStoreDataEntries", "hasMore"]);
347
+ inspectorBackend.registerCommand("IndexedDB.getMetadata", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}, {"name": "objectStoreName", "type": "string", "optional": false}], ["entriesCount", "keyGeneratorValue"]);
348
+ inspectorBackend.registerCommand("IndexedDB.requestDatabase", [{"name": "securityOrigin", "type": "string", "optional": true}, {"name": "storageKey", "type": "string", "optional": true}, {"name": "databaseName", "type": "string", "optional": false}], ["databaseWithObjectStores"]);
349
349
  inspectorBackend.registerCommand("IndexedDB.requestDatabaseNames", [{"name": "securityOrigin", "type": "string", "optional": false}], ["databaseNames"]);
350
350
 
351
351
  // Input.
@@ -1302,8 +1302,7 @@ export const generatedProperties = [
1302
1302
  "keywords": [
1303
1303
  "visible",
1304
1304
  "auto",
1305
- "hidden",
1306
- "hidden-matchable"
1305
+ "hidden"
1307
1306
  ],
1308
1307
  "name": "content-visibility"
1309
1308
  },
@@ -4082,8 +4081,7 @@ export const generatedPropertyValues = {
4082
4081
  "values": [
4083
4082
  "visible",
4084
4083
  "auto",
4085
- "hidden",
4086
- "hidden-matchable"
4084
+ "hidden"
4087
4085
  ]
4088
4086
  },
4089
4087
  "counter-increment": {
@@ -963,12 +963,11 @@ export namespace Audits {
963
963
 
964
964
  export const enum AttributionReportingIssueType {
965
965
  PermissionPolicyDisabled = 'PermissionPolicyDisabled',
966
- AttributionSourceUntrustworthyOrigin = 'AttributionSourceUntrustworthyOrigin',
967
- AttributionUntrustworthyOrigin = 'AttributionUntrustworthyOrigin',
968
966
  UntrustworthyReportingOrigin = 'UntrustworthyReportingOrigin',
969
967
  InsecureContext = 'InsecureContext',
970
968
  InvalidHeader = 'InvalidHeader',
971
969
  InvalidRegisterTriggerHeader = 'InvalidRegisterTriggerHeader',
970
+ InvalidEligibleHeader = 'InvalidEligibleHeader',
972
971
  }
973
972
 
974
973
  /**
@@ -977,10 +976,6 @@ export namespace Audits {
977
976
  */
978
977
  export interface AttributionReportingIssueDetails {
979
978
  violationType: AttributionReportingIssueType;
980
- /**
981
- * TODO(apaseltiner): Remove this once it is no longer referenced by the frontend.
982
- */
983
- frame?: AffectedFrame;
984
979
  request?: AffectedRequest;
985
980
  violatingNodeId?: DOM.BackendNodeId;
986
981
  invalidParameter?: string;
@@ -1055,6 +1050,7 @@ export namespace Audits {
1055
1050
  ObsoleteWebRtcCipherSuite = 'ObsoleteWebRtcCipherSuite',
1056
1051
  OpenWebDatabaseInsecureContext = 'OpenWebDatabaseInsecureContext',
1057
1052
  OverflowVisibleOnReplacedElement = 'OverflowVisibleOnReplacedElement',
1053
+ PersistentQuotaType = 'PersistentQuotaType',
1058
1054
  PictureSourceSrc = 'PictureSourceSrc',
1059
1055
  PrefixedCancelAnimationFrame = 'PrefixedCancelAnimationFrame',
1060
1056
  PrefixedRequestAnimationFrame = 'PrefixedRequestAnimationFrame',
@@ -5899,7 +5895,15 @@ export namespace IndexedDB {
5899
5895
  }
5900
5896
 
5901
5897
  export interface DeleteObjectStoreEntriesRequest {
5902
- securityOrigin: string;
5898
+ /**
5899
+ * At least and at most one of securityOrigin, storageKey must be specified.
5900
+ * Security origin.
5901
+ */
5902
+ securityOrigin?: string;
5903
+ /**
5904
+ * Storage key.
5905
+ */
5906
+ storageKey?: string;
5903
5907
  databaseName: string;
5904
5908
  objectStoreName: string;
5905
5909
  /**
@@ -5910,9 +5914,14 @@ export namespace IndexedDB {
5910
5914
 
5911
5915
  export interface RequestDataRequest {
5912
5916
  /**
5917
+ * At least and at most one of securityOrigin, storageKey must be specified.
5913
5918
  * Security origin.
5914
5919
  */
5915
- securityOrigin: string;
5920
+ securityOrigin?: string;
5921
+ /**
5922
+ * Storage key.
5923
+ */
5924
+ storageKey?: string;
5916
5925
  /**
5917
5926
  * Database name.
5918
5927
  */
@@ -5952,9 +5961,14 @@ export namespace IndexedDB {
5952
5961
 
5953
5962
  export interface GetMetadataRequest {
5954
5963
  /**
5964
+ * At least and at most one of securityOrigin, storageKey must be specified.
5955
5965
  * Security origin.
5956
5966
  */
5957
- securityOrigin: string;
5967
+ securityOrigin?: string;
5968
+ /**
5969
+ * Storage key.
5970
+ */
5971
+ storageKey?: string;
5958
5972
  /**
5959
5973
  * Database name.
5960
5974
  */
@@ -5980,9 +5994,14 @@ export namespace IndexedDB {
5980
5994
 
5981
5995
  export interface RequestDatabaseRequest {
5982
5996
  /**
5997
+ * At least and at most one of securityOrigin, storageKey must be specified.
5983
5998
  * Security origin.
5984
5999
  */
5985
- securityOrigin: string;
6000
+ securityOrigin?: string;
6001
+ /**
6002
+ * Storage key.
6003
+ */
6004
+ storageKey?: string;
5986
6005
  /**
5987
6006
  * Database name.
5988
6007
  */
@@ -68,7 +68,13 @@ export class ContentProviderBasedProject extends Workspace.Workspace.ProjectStor
68
68
  try {
69
69
  const [content, isEncoded] =
70
70
  await Promise.all([contentProvider.requestContent(), contentProvider.contentEncoded()]);
71
- return {content: content.content, isEncoded, error: 'error' in content && content.error || ''};
71
+ const wasmDisassemblyInfo = 'wasmDisassemblyInfo' in content ? content.wasmDisassemblyInfo : undefined;
72
+ return {
73
+ content: content.content,
74
+ wasmDisassemblyInfo,
75
+ isEncoded,
76
+ error: 'error' in content && content.error || '',
77
+ };
72
78
  } catch (err) {
73
79
  // TODO(rob.paveza): CRBug 1013683 - Consider propagating exceptions full-stack
74
80
  return {