chrome-devtools-frontend 1.0.935784 → 1.0.936819

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 (73) hide show
  1. package/config/gni/all_devtools_files.gni +0 -22
  2. package/config/gni/devtools_grd_files.gni +8 -10
  3. package/front_end/.eslintrc.js +1 -0
  4. package/front_end/core/host/UserMetrics.ts +2 -1
  5. package/front_end/core/i18n/locales/en-US.json +3 -3
  6. package/front_end/core/i18n/locales/en-XL.json +3 -3
  7. package/front_end/core/sdk/ConsoleModel.ts +0 -20
  8. package/front_end/entrypoints/devtools_app/devtools_app.json +0 -6
  9. package/front_end/entrypoints/inspector_main/module.json +1 -2
  10. package/front_end/entrypoints/main/MainImpl.ts +10 -3
  11. package/front_end/entrypoints/node_app/node_app.json +0 -1
  12. package/front_end/entrypoints/node_main/node_main-meta.ts +0 -3
  13. package/front_end/entrypoints/shell/shell.json +0 -6
  14. package/front_end/entrypoints/worker_app/worker_app.json +0 -4
  15. package/front_end/panels/application/BackForwardCacheView.ts +54 -6
  16. package/front_end/panels/application/module.json +0 -3
  17. package/front_end/panels/console/ConsoleFilter.ts +1 -1
  18. package/front_end/panels/console/ConsolePinPane.ts +1 -0
  19. package/front_end/panels/console/ConsoleViewMessage.ts +2 -19
  20. package/front_end/panels/console_counters/console_counters-meta.ts +0 -3
  21. package/front_end/panels/coverage/CoverageListView.ts +13 -4
  22. package/front_end/panels/css_overview/components/CSSOverviewStartView.ts +1 -0
  23. package/front_end/panels/elements/ElementsTreeElement.ts +1 -0
  24. package/front_end/panels/elements/StylesSidebarPane.ts +1 -1
  25. package/front_end/panels/elements/components/ElementsBreadcrumbs.ts +1 -0
  26. package/front_end/panels/elements/components/QueryContainer.ts +1 -0
  27. package/front_end/panels/elements/module.json +0 -3
  28. package/front_end/panels/emulation/components/DeviceSizeInputElement.ts +18 -2
  29. package/front_end/panels/emulation/module.json +1 -2
  30. package/front_end/panels/help/help-meta.ts +0 -3
  31. package/front_end/panels/input/input-meta.ts +0 -2
  32. package/front_end/panels/mobile_throttling/mobile_throttling-meta.ts +0 -3
  33. package/front_end/panels/network/module.json +0 -2
  34. package/front_end/panels/performance_monitor/performance_monitor-meta.ts +0 -3
  35. package/front_end/panels/settings/settings-meta.ts +0 -2
  36. package/front_end/panels/sources/BreakpointEditDialog.ts +1 -0
  37. package/front_end/panels/sources/module.json +0 -3
  38. package/front_end/panels/timeline/module.json +1 -2
  39. package/front_end/panels/web_audio/web_audio-meta.ts +0 -3
  40. package/front_end/panels/webauthn/webauthn-meta.ts +0 -2
  41. package/front_end/ui/components/buttons/button.css +1 -0
  42. package/front_end/ui/components/docs/create_breadcrumbs.ts +1 -0
  43. package/front_end/ui/components/helpers/get-stylesheet.ts +0 -1
  44. package/front_end/ui/components/linkifier/LinkifierImpl.ts +1 -0
  45. package/front_end/ui/components/text_editor/config.ts +3 -1
  46. package/front_end/ui/legacy/UIUtils.ts +1 -1
  47. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +2 -1
  48. package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +6 -1
  49. package/front_end/ui/legacy/components/inline_editor/BezierEditor.ts +2 -1
  50. package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.ts +2 -1
  51. package/front_end/ui/legacy/components/inline_editor/FontEditor.ts +5 -1
  52. package/front_end/ui/legacy/components/inline_editor/SwatchPopoverHelper.ts +2 -1
  53. package/front_end/ui/legacy/components/inline_editor/Swatches.ts +4 -2
  54. package/front_end/ui/legacy/inspectorCommon.css +2 -12
  55. package/front_end/ui/legacy/softDropDownButton.css +0 -11
  56. package/front_end/ui/legacy/themeColors.css +2 -2
  57. package/package.json +1 -1
  58. package/scripts/build/rollup.config.js +3 -0
  59. package/scripts/eslint_rules/lib/ban_a_tags_in_lit_html.js +47 -0
  60. package/scripts/eslint_rules/tests/ban_a_tags_in_lit_html_test.js +60 -0
  61. package/front_end/entrypoints/node_main/module.json +0 -8
  62. package/front_end/panels/console_counters/module.json +0 -5
  63. package/front_end/panels/event_listeners/module.json +0 -5
  64. package/front_end/panels/help/module.json +0 -5
  65. package/front_end/panels/input/module.json +0 -5
  66. package/front_end/panels/mobile_throttling/module.json +0 -5
  67. package/front_end/panels/performance_monitor/module.json +0 -5
  68. package/front_end/panels/settings/module.json +0 -5
  69. package/front_end/panels/web_audio/module.json +0 -5
  70. package/front_end/panels/webauthn/module.json +0 -5
  71. package/front_end/ui/legacy/components/color_picker/module.json +0 -8
  72. package/front_end/ui/legacy/components/cookie_table/module.json +0 -8
  73. package/front_end/ui/legacy/components/inline_editor/module.json +0 -14
@@ -36,9 +36,6 @@ all_devtools_files = [
36
36
  "front_end/legacy_test_runner/bindings_test_runner/PersistenceTestRunner.js",
37
37
  "front_end/panels/browser_debugger/module.json",
38
38
  "front_end/third_party/codemirror/codemirror.css",
39
- "front_end/ui/legacy/components/color_picker/module.json",
40
- "front_end/ui/legacy/components/color_picker/spectrum.css",
41
- "front_end/panels/console_counters/module.json",
42
39
  "front_end/legacy_test_runner/console_test_runner/console_test_runner.js",
43
40
  "front_end/panels/console/consoleContextSelector.css",
44
41
  "front_end/panels/console/consolePinPane.css",
@@ -46,8 +43,6 @@ all_devtools_files = [
46
43
  "front_end/panels/console/consoleSidebar.css",
47
44
  "front_end/panels/console/consoleView.css",
48
45
  "front_end/panels/console/module.json",
49
- "front_end/ui/legacy/components/cookie_table/cookiesTable.css",
50
- "front_end/ui/legacy/components/cookie_table/module.json",
51
46
  "front_end/legacy_test_runner/coverage_test_runner/coverage_test_runner.js",
52
47
  "front_end/panels/coverage/module.json",
53
48
  "front_end/legacy_test_runner/cpu_profiler_test_runner/cpu_profiler_test_runner.js",
@@ -67,21 +62,10 @@ all_devtools_files = [
67
62
  "front_end/panels/emulation/inspectedPagePlaceholder.css",
68
63
  "front_end/panels/emulation/mediaQueryInspector.css",
69
64
  "front_end/panels/emulation/module.json",
70
- "front_end/panels/event_listeners/module.json",
71
65
  "front_end/legacy_test_runner/extensions_test_runner/extensions_test_runner.js",
72
66
  "front_end/legacy_test_runner/extensions_test_runner/ExtensionsNetworkTestRunner.js",
73
67
  "front_end/legacy_test_runner/extensions_test_runner/ExtensionsTestRunner.js",
74
68
  "front_end/legacy_test_runner/heap_profiler_test_runner/heap_profiler_test_runner.js",
75
- "front_end/panels/help/module.json",
76
- "front_end/ui/legacy/components/inline_editor/bezierEditor.css",
77
- "front_end/ui/legacy/components/inline_editor/bezierSwatch.css",
78
- "front_end/ui/legacy/components/inline_editor/colorSwatch.css",
79
- "front_end/ui/legacy/components/inline_editor/cssShadowEditor.css",
80
- "front_end/ui/legacy/components/inline_editor/cssShadowSwatch.css",
81
- "front_end/ui/legacy/components/inline_editor/fontEditor.css",
82
- "front_end/ui/legacy/components/inline_editor/module.json",
83
- "front_end/ui/legacy/components/inline_editor/swatchPopover.css",
84
- "front_end/panels/input/module.json",
85
69
  "front_end/entrypoints/inspector_main/module.json",
86
70
  "front_end/entrypoints/inspector_main/nodeIcon.css",
87
71
  "front_end/entrypoints/inspector_main/renderingOptions.css",
@@ -93,11 +77,9 @@ all_devtools_files = [
93
77
  "front_end/panels/layers/module.json",
94
78
  "front_end/entrypoints/main/module.json",
95
79
  "front_end/panels/media/module.json",
96
- "front_end/panels/mobile_throttling/module.json",
97
80
  "front_end/entrypoints/ndb_app/ndb_app.json",
98
81
  "front_end/legacy_test_runner/network_test_runner/network_test_runner.js",
99
82
  "front_end/panels/network/module.json",
100
- "front_end/entrypoints/node_main/module.json",
101
83
  "front_end/entrypoints/node_main/nodeConnectionsPanel.css",
102
84
  "front_end/ui/legacy/components/perf_ui/chartViewport.css",
103
85
  "front_end/ui/legacy/components/perf_ui/filmStripView.css",
@@ -106,7 +88,6 @@ all_devtools_files = [
106
88
  "front_end/ui/legacy/components/perf_ui/overviewGrid.css",
107
89
  "front_end/ui/legacy/components/perf_ui/timelineGrid.css",
108
90
  "front_end/ui/legacy/components/perf_ui/timelineOverviewInfo.css",
109
- "front_end/panels/performance_monitor/module.json",
110
91
  "front_end/panels/protocol_monitor/module.json",
111
92
  "front_end/legacy_test_runner/performance_test_runner/performance_test_runner.js",
112
93
  "front_end/legacy_test_runner/performance_test_runner/TimelineDataTestRunner.js",
@@ -176,7 +157,6 @@ all_devtools_files = [
176
157
  "front_end/legacy_test_runner/sdk_test_runner/sdk_test_runner.js",
177
158
  "front_end/legacy_test_runner/security_test_runner/security_test_runner.js",
178
159
  "front_end/panels/security/module.json",
179
- "front_end/panels/settings/module.json",
180
160
  "front_end/entrypoints/shell/shell.json",
181
161
  "front_end/ui/legacy/components/source_frame/fontView.css",
182
162
  "front_end/ui/legacy/components/source_frame/imageView.css",
@@ -239,8 +219,6 @@ all_devtools_files = [
239
219
  "front_end/ui/legacy/toolbar.css",
240
220
  "front_end/ui/legacy/treeoutline.css",
241
221
  "front_end/ui/legacy/viewContainers.css",
242
- "front_end/panels/web_audio/module.json",
243
- "front_end/panels/webauthn/module.json",
244
222
  ]
245
223
 
246
224
  lighthouse_locale_files = [
@@ -370,13 +370,10 @@ grd_files_release_sources = [
370
370
  "front_end/panels/emulation/emulation-meta.js",
371
371
  "front_end/panels/emulation/emulation.js",
372
372
  "front_end/panels/event_listeners/event_listeners.js",
373
- "front_end/panels/event_listeners/event_listeners_module.js",
374
373
  "front_end/panels/help/help-meta.js",
375
374
  "front_end/panels/help/help.js",
376
- "front_end/panels/help/help_module.js",
377
375
  "front_end/panels/input/input-meta.js",
378
376
  "front_end/panels/input/input.js",
379
- "front_end/panels/input/input_module.js",
380
377
  "front_end/panels/issues/components/components.js",
381
378
  "front_end/panels/issues/issues-meta.js",
382
379
  "front_end/panels/issues/issues.js",
@@ -409,7 +406,6 @@ grd_files_release_sources = [
409
406
  "front_end/panels/network/network_module.js",
410
407
  "front_end/panels/performance_monitor/performance_monitor-meta.js",
411
408
  "front_end/panels/performance_monitor/performance_monitor.js",
412
- "front_end/panels/performance_monitor/performance_monitor_module.js",
413
409
  "front_end/panels/profiler/profiler-legacy.js",
414
410
  "front_end/panels/profiler/profiler-meta.js",
415
411
  "front_end/panels/profiler/profiler.js",
@@ -435,7 +431,6 @@ grd_files_release_sources = [
435
431
  "front_end/panels/settings/settings-legacy.js",
436
432
  "front_end/panels/settings/settings-meta.js",
437
433
  "front_end/panels/settings/settings.js",
438
- "front_end/panels/settings/settings_module.js",
439
434
  "front_end/panels/snippets/snippets-legacy.js",
440
435
  "front_end/panels/snippets/snippets.js",
441
436
  "front_end/panels/sources/sources-legacy.js",
@@ -452,10 +447,8 @@ grd_files_release_sources = [
452
447
  "front_end/panels/web_audio/web_audio-legacy.js",
453
448
  "front_end/panels/web_audio/web_audio-meta.js",
454
449
  "front_end/panels/web_audio/web_audio.js",
455
- "front_end/panels/web_audio/web_audio_module.js",
456
450
  "front_end/panels/webauthn/webauthn-meta.js",
457
451
  "front_end/panels/webauthn/webauthn.js",
458
- "front_end/panels/webauthn/webauthn_module.js",
459
452
  "front_end/third_party/acorn-loose/acorn-loose.js",
460
453
  "front_end/third_party/acorn/acorn.js",
461
454
  "front_end/third_party/chromium/client-variations/client-variations.js",
@@ -506,15 +499,12 @@ grd_files_release_sources = [
506
499
  "front_end/ui/components/tree_outline/tree_outline.js",
507
500
  "front_end/ui/legacy/components/color_picker/color_picker-legacy.js",
508
501
  "front_end/ui/legacy/components/color_picker/color_picker.js",
509
- "front_end/ui/legacy/components/color_picker/color_picker_module.js",
510
502
  "front_end/ui/legacy/components/cookie_table/cookie_table-legacy.js",
511
503
  "front_end/ui/legacy/components/cookie_table/cookie_table.js",
512
- "front_end/ui/legacy/components/cookie_table/cookie_table_module.js",
513
504
  "front_end/ui/legacy/components/data_grid/data_grid-legacy.js",
514
505
  "front_end/ui/legacy/components/data_grid/data_grid.js",
515
506
  "front_end/ui/legacy/components/inline_editor/inline_editor-legacy.js",
516
507
  "front_end/ui/legacy/components/inline_editor/inline_editor.js",
517
- "front_end/ui/legacy/components/inline_editor/inline_editor_module.js",
518
508
  "front_end/ui/legacy/components/object_ui/object_ui-legacy.js",
519
509
  "front_end/ui/legacy/components/object_ui/object_ui-meta.js",
520
510
  "front_end/ui/legacy/components/object_ui/object_ui.js",
@@ -1494,7 +1484,9 @@ grd_files_debug_sources = [
1494
1484
  "front_end/ui/legacy/components/color_picker/ContrastInfo.js",
1495
1485
  "front_end/ui/legacy/components/color_picker/ContrastOverlay.js",
1496
1486
  "front_end/ui/legacy/components/color_picker/Spectrum.js",
1487
+ "front_end/ui/legacy/components/color_picker/spectrum.css.js",
1497
1488
  "front_end/ui/legacy/components/cookie_table/CookiesTable.js",
1489
+ "front_end/ui/legacy/components/cookie_table/cookiesTable.css.js",
1498
1490
  "front_end/ui/legacy/components/data_grid/DataGrid.js",
1499
1491
  "front_end/ui/legacy/components/data_grid/ShowMoreDataGridNode.js",
1500
1492
  "front_end/ui/legacy/components/data_grid/SortableDataGrid.js",
@@ -1518,12 +1510,18 @@ grd_files_debug_sources = [
1518
1510
  "front_end/ui/legacy/components/inline_editor/InlineEditorUtils.js",
1519
1511
  "front_end/ui/legacy/components/inline_editor/SwatchPopoverHelper.js",
1520
1512
  "front_end/ui/legacy/components/inline_editor/Swatches.js",
1513
+ "front_end/ui/legacy/components/inline_editor/bezierEditor.css.js",
1514
+ "front_end/ui/legacy/components/inline_editor/bezierSwatch.css.js",
1521
1515
  "front_end/ui/legacy/components/inline_editor/colorSwatch.css.js",
1522
1516
  "front_end/ui/legacy/components/inline_editor/cssAngle.css.js",
1523
1517
  "front_end/ui/legacy/components/inline_editor/cssAngleEditor.css.js",
1524
1518
  "front_end/ui/legacy/components/inline_editor/cssAngleSwatch.css.js",
1525
1519
  "front_end/ui/legacy/components/inline_editor/cssLength.css.js",
1520
+ "front_end/ui/legacy/components/inline_editor/cssShadowEditor.css.js",
1521
+ "front_end/ui/legacy/components/inline_editor/cssShadowSwatch.css.js",
1526
1522
  "front_end/ui/legacy/components/inline_editor/cssVarSwatch.css.js",
1523
+ "front_end/ui/legacy/components/inline_editor/fontEditor.css.js",
1524
+ "front_end/ui/legacy/components/inline_editor/swatchPopover.css.js",
1527
1525
  "front_end/ui/legacy/components/object_ui/CustomPreviewComponent.js",
1528
1526
  "front_end/ui/legacy/components/object_ui/JavaScriptAutocomplete.js",
1529
1527
  "front_end/ui/legacy/components/object_ui/JavaScriptREPL.js",
@@ -30,6 +30,7 @@ module.exports = {
30
30
  'rulesdir/ban_literal_devtools_component_tag_names': 2,
31
31
  'rulesdir/ban_self_closing_custom_element_tagnames': 2,
32
32
  'rulesdir/ban_style_tags_in_lit_html': 2,
33
+ 'rulesdir/ban_a_tags_in_lit_html': 2,
33
34
  'rulesdir/check_component_naming': 2,
34
35
  'rulesdir/check_was_shown_methods': 2,
35
36
  'rulesdir/static_custom_event_names': 2,
@@ -574,7 +574,8 @@ export const DevtoolsExperiments: {
574
574
  'reportingApiDebugging': 49,
575
575
  'syncSettings': 50,
576
576
  'groupAndHideIssuesByKind': 51,
577
- '__lastValidEnumPosition': 51,
577
+ 'cssTypeComponentLength': 52,
578
+ '__lastValidEnumPosition': 52,
578
579
  };
579
580
 
580
581
  export const IssueExpanded: {
@@ -2681,9 +2681,6 @@
2681
2681
  "panels/application/BackForwardCacheView.ts | circumstantialExplanation": {
2682
2682
  "message": "These reasons are not actionable i.e. caching was prevented by something outside of the direct control of the page."
2683
2683
  },
2684
- "panels/application/BackForwardCacheView.ts | lastMainFrameNavigation": {
2685
- "message": "Last Main Frame Navigation"
2686
- },
2687
2684
  "panels/application/BackForwardCacheView.ts | mainFrame": {
2688
2685
  "message": "Main Frame"
2689
2686
  },
@@ -2699,6 +2696,9 @@
2699
2696
  "panels/application/BackForwardCacheView.ts | restoredFromBFCache": {
2700
2697
  "message": "Restored from back-forward cache"
2701
2698
  },
2699
+ "panels/application/BackForwardCacheView.ts | runTest": {
2700
+ "message": "Run Test"
2701
+ },
2702
2702
  "panels/application/BackForwardCacheView.ts | supportPending": {
2703
2703
  "message": "Pending Support"
2704
2704
  },
@@ -2681,9 +2681,6 @@
2681
2681
  "panels/application/BackForwardCacheView.ts | circumstantialExplanation": {
2682
2682
  "message": "T̂h́êśê ŕêáŝón̂ś âŕê ńôt́ âćt̂íôńâb́l̂é î.é. ĉáĉh́îńĝ ẃâś p̂ŕêv́êńt̂éd̂ b́ŷ śôḿêt́ĥín̂ǵ ôút̂śîd́ê óf̂ t́ĥé d̂ír̂éĉt́ ĉón̂t́r̂ól̂ óf̂ t́ĥé p̂áĝé."
2683
2683
  },
2684
- "panels/application/BackForwardCacheView.ts | lastMainFrameNavigation": {
2685
- "message": "L̂áŝt́ M̂áîń F̂ŕâḿê Ńâv́îǵât́îón̂"
2686
- },
2687
2684
  "panels/application/BackForwardCacheView.ts | mainFrame": {
2688
2685
  "message": "M̂áîń F̂ŕâḿê"
2689
2686
  },
@@ -2699,6 +2696,9 @@
2699
2696
  "panels/application/BackForwardCacheView.ts | restoredFromBFCache": {
2700
2697
  "message": "R̂éŝt́ôŕêd́ f̂ŕôḿ b̂áĉḱ-f̂ór̂ẃâŕd̂ ćâćĥé"
2701
2698
  },
2699
+ "panels/application/BackForwardCacheView.ts | runTest": {
2700
+ "message": "R̂ún̂ T́êśt̂"
2701
+ },
2702
2702
  "panels/application/BackForwardCacheView.ts | supportPending": {
2703
2703
  "message": "P̂én̂d́îńĝ Śûṕp̂ór̂t́"
2704
2704
  },
@@ -84,7 +84,6 @@ export class ConsoleModel extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
84
84
  #violationsInternal: number;
85
85
  #pageLoadSequenceNumber: number;
86
86
  readonly #targetListeners: WeakMap<Target, Common.EventTarget.EventDescriptor[]>;
87
- #consoleGroupMessageStack: ConsoleMessage[] = [];
88
87
 
89
88
  private constructor() {
90
89
  super();
@@ -276,7 +275,6 @@ export class ConsoleModel extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
276
275
  message = call.args[0].description;
277
276
  }
278
277
  const callFrame = call.stackTrace && call.stackTrace.callFrames.length ? call.stackTrace.callFrames[0] : null;
279
- const groupParent = this.#consoleGroupMessageStack[this.#consoleGroupMessageStack.length - 1];
280
278
  const details = {
281
279
  type: call.type,
282
280
  url: callFrame?.url,
@@ -287,20 +285,9 @@ export class ConsoleModel extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
287
285
  timestamp: call.timestamp,
288
286
  executionContextId: call.executionContextId,
289
287
  context: call.context,
290
- groupParent,
291
- groupChildren: [],
292
288
  };
293
289
  const consoleMessage =
294
290
  new ConsoleMessage(runtimeModel, FrontendMessageSource.ConsoleAPI, level, (message as string), details);
295
- if (call.type === Protocol.Runtime.ConsoleAPICalledEventType.StartGroup) {
296
- this.#consoleGroupMessageStack.push(consoleMessage);
297
- }
298
- if (call.type === Protocol.Runtime.ConsoleAPICalledEventType.EndGroup) {
299
- this.#consoleGroupMessageStack.pop();
300
- }
301
- if (groupParent && call.type !== Protocol.Runtime.ConsoleAPICalledEventType.EndGroup) {
302
- groupParent.groupChildren?.push(consoleMessage);
303
- }
304
291
  this.addMessage(consoleMessage);
305
292
  }
306
293
 
@@ -392,7 +379,6 @@ export class ConsoleModel extends Common.ObjectWrapper.ObjectWrapper<EventTypes>
392
379
 
393
380
  private clear(): void {
394
381
  this.#messagesInternal = [];
395
- this.#consoleGroupMessageStack = [];
396
382
  this.#messageByExceptionId.clear();
397
383
  this.#errorsInternal = 0;
398
384
  this.#warningsInternal = 0;
@@ -518,8 +504,6 @@ export interface ConsoleMessageDetails {
518
504
  workerId?: string;
519
505
  context?: string;
520
506
  affectedResources?: AffectedResources;
521
- groupParent?: ConsoleMessage;
522
- groupChildren?: ConsoleMessage[];
523
507
  category?: Protocol.Log.LogEntryCategory;
524
508
  }
525
509
 
@@ -543,8 +527,6 @@ export class ConsoleMessage {
543
527
  #pageLoadSequenceNumber?: number = undefined;
544
528
  #exceptionId?: number = undefined;
545
529
  #affectedResources?: AffectedResources;
546
- groupParent?: ConsoleMessage;
547
- groupChildren?: Array<ConsoleMessage>;
548
530
  category?: Protocol.Log.LogEntryCategory;
549
531
 
550
532
  constructor(
@@ -565,8 +547,6 @@ export class ConsoleMessage {
565
547
  this.scriptId = details?.scriptId;
566
548
  this.workerId = details?.workerId;
567
549
  this.#affectedResources = details?.affectedResources;
568
- this.groupParent = details?.groupParent;
569
- this.groupChildren = details?.groupChildren;
570
550
  this.category = details?.category;
571
551
 
572
552
  if (!this.#executionContextId && this.#runtimeModelInternal) {
@@ -2,26 +2,20 @@
2
2
  "modules" : [
3
3
  { "name": "panels/emulation", "type": "autostart" },
4
4
  { "name": "entrypoints/inspector_main", "type": "autostart" },
5
- { "name": "panels/mobile_throttling", "type": "autostart" },
6
5
 
7
6
  { "name": "panels/accessibility" },
8
7
  { "name": "panels/lighthouse" },
9
8
  { "name": "panels/browser_debugger" },
10
9
  { "name": "panels/css_overview" },
11
- { "name": "ui/legacy/components/cookie_table" },
12
10
  { "name": "panels/elements" },
13
11
  { "name": "emulated_devices" },
14
12
  { "name": "panels/issues" },
15
- { "name": "panels/help" },
16
13
  { "name": "panels/layers" },
17
14
  { "name": "panels/layer_viewer" },
18
15
  { "name": "panels/network" },
19
- { "name": "panels/performance_monitor" },
20
16
  { "name": "panels/application" },
21
17
  { "name": "panels/security" },
22
18
  { "name": "panels/timeline" },
23
- { "name": "panels/web_audio" },
24
- { "name": "panels/webauthn"},
25
19
  { "name": "panels/media" }
26
20
  ],
27
21
  "extends": "shell"
@@ -1,7 +1,6 @@
1
1
  {
2
2
  "dependencies": [
3
- "ui/legacy",
4
- "panels/mobile_throttling"
3
+ "ui/legacy"
5
4
  ],
6
5
  "resources": [
7
6
  "nodeIcon.css",
@@ -323,15 +323,22 @@ export class MainImpl {
323
323
  Root.Runtime.experiments.register(
324
324
  Root.Runtime.ExperimentName.SYNC_SETTINGS, 'Sync DevTools settings with Chrome Sync');
325
325
 
326
+ // Debugging of Reporting API
327
+ Root.Runtime.experiments.register('reportingApiDebugging', 'Enable Reporting API panel in the Application panel');
328
+
329
+ // CSS <length> authoring tool.
330
+ Root.Runtime.experiments.register(
331
+ 'cssTypeComponentLength',
332
+ 'Enable CSS <length> authoring tool in the Styles pane (https://goo.gle/length-feedback)', undefined,
333
+ 'https://developer.chrome.com/blog/new-in-devtools-96/#length');
334
+
326
335
  Root.Runtime.experiments.enableExperimentsByDefault([
327
336
  'sourceOrderViewer',
328
337
  'hideIssuesFeature',
329
338
  'bfcacheDebugging',
339
+ 'cssTypeComponentLength',
330
340
  ]);
331
341
 
332
- // Debugging of Reporting API
333
- Root.Runtime.experiments.register('reportingApiDebugging', 'Enable Reporting API panel in the Application panel');
334
-
335
342
  Root.Runtime.experiments.cleanUpStaleExperiments();
336
343
  const enabledExperiments = Root.Runtime.Runtime.queryParam('enabledExperiments');
337
344
  if (enabledExperiments) {
@@ -1,6 +1,5 @@
1
1
  {
2
2
  "modules" : [
3
- { "name": "entrypoints/node_main", "type": "autostart" },
4
3
  { "name": "panels/js_profiler" }
5
4
  ],
6
5
  "extends": "shell"
@@ -3,7 +3,6 @@
3
3
  // found in the LICENSE file.
4
4
 
5
5
  import * as i18n from '../../core/i18n/i18n.js';
6
- import * as Root from '../../core/root/root.js';
7
6
  import * as UI from '../../ui/legacy/legacy.js';
8
7
 
9
8
  // eslint-disable-next-line rulesdir/es_modules_import
@@ -31,8 +30,6 @@ let loadedNodeMainModule: (typeof NodeMain|undefined);
31
30
 
32
31
  async function loadNodeMainModule(): Promise<typeof NodeMain> {
33
32
  if (!loadedNodeMainModule) {
34
- // Side-effect import resources in module.json
35
- await Root.Runtime.Runtime.instance().loadModulePromise('entrypoints/node_main');
36
33
  loadedNodeMainModule = await import('./node_main.js');
37
34
  }
38
35
  return loadedNodeMainModule;
@@ -1,19 +1,13 @@
1
1
  {
2
2
  "modules": [
3
- { "name": "panels/console_counters", "type": "autostart" },
4
3
  { "name": "entrypoints/main", "type": "autostart" },
5
4
  { "name": "ui/legacy", "type": "autostart" },
6
5
 
7
- { "name": "ui/legacy/components/color_picker" },
8
6
  { "name": "panels/console" },
9
7
  { "name": "panels/coverage" },
10
- { "name": "panels/event_listeners" },
11
- { "name": "ui/legacy/components/inline_editor" },
12
- { "name": "panels/input"},
13
8
  { "name": "ui/legacy/components/perf_ui" },
14
9
  { "name": "panels/profiler" },
15
10
  { "name": "panels/protocol_monitor"},
16
- { "name": "panels/settings" },
17
11
  { "name": "ui/legacy/components/source_frame" },
18
12
  { "name": "panels/sources" },
19
13
  { "name": "ui/legacy/components/text_editor" }
@@ -1,11 +1,7 @@
1
1
  {
2
2
  "modules" : [
3
- { "name": "panels/mobile_throttling", "type": "autostart" },
4
-
5
3
  { "name": "panels/browser_debugger" },
6
- { "name": "ui/legacy/components/cookie_table" },
7
4
  { "name": "panels/elements" },
8
- { "name": "panels/help" },
9
5
  { "name": "panels/issues" },
10
6
  { "name": "panels/layer_viewer" },
11
7
  { "name": "panels/network" },
@@ -4,6 +4,7 @@
4
4
 
5
5
  import type * as Platform from '../../core/platform/platform.js';
6
6
  import * as i18n from '../../core/i18n/i18n.js';
7
+ import * as Buttons from '../../ui/components/buttons/buttons.js';
7
8
  import * as SDK from '../../core/sdk/sdk.js';
8
9
  import * as LitHtml from '../../ui/lit-html/lit-html.js';
9
10
  import * as ReportView from '../../ui/components/report_view/report_view.js';
@@ -19,10 +20,6 @@ const UIStrings = {
19
20
  * @description Title text in Back-forward Cache view of the Application panel
20
21
  */
21
22
  mainFrame: 'Main Frame',
22
- /**
23
- * @description Section header text in Back-forward Cache view of the Application panel
24
- */
25
- lastMainFrameNavigation: 'Last Main Frame Navigation',
26
23
  /**
27
24
  * @description Title text in Back-forward Cache view of the Application panel
28
25
  */
@@ -83,6 +80,10 @@ const UIStrings = {
83
80
  * of chrome they will not prevent back-forward cache usage anymore.
84
81
  */
85
82
  supportPending: 'Pending Support',
83
+ /**
84
+ * @description Button name for showing whether BFCache is available in the pages.
85
+ */
86
+ runTest: 'Run Test',
86
87
  /**
87
88
  * @description Explanation for 'pending support' items which prevent the page from being eligible
88
89
  * for back-forward cache.
@@ -131,6 +132,48 @@ export class BackForwardCacheView extends UI.ThrottledWidget.ThrottledWidget {
131
132
  return this.getMainResourceTreeModel()?.mainFrame || null;
132
133
  }
133
134
 
135
+ private async goBackOneHistoryEntry(): Promise<void> {
136
+ SDK.TargetManager.TargetManager.instance().removeModelListener(
137
+ SDK.ResourceTreeModel.ResourceTreeModel, SDK.ResourceTreeModel.Events.FrameNavigated,
138
+ this.goBackOneHistoryEntry, this);
139
+ const mainTarget = SDK.TargetManager.TargetManager.instance().mainTarget();
140
+ if (!mainTarget) {
141
+ return;
142
+ }
143
+ const resourceTreeModel = mainTarget.model(SDK.ResourceTreeModel.ResourceTreeModel);
144
+ if (!resourceTreeModel) {
145
+ return;
146
+ }
147
+ const historyResults = await resourceTreeModel.navigationHistory();
148
+ if (!historyResults) {
149
+ return;
150
+ }
151
+ resourceTreeModel.navigateToHistoryEntry(historyResults.entries[historyResults.currentIndex - 1]);
152
+ }
153
+
154
+ private async navigateAwayAndBack(): Promise<void> {
155
+ // Checking BFCache Compatibility
156
+
157
+ const mainTarget = SDK.TargetManager.TargetManager.instance().mainTarget();
158
+ if (!mainTarget) {
159
+ return;
160
+ }
161
+ const resourceTreeModel = mainTarget.model(SDK.ResourceTreeModel.ResourceTreeModel);
162
+
163
+ if (resourceTreeModel) {
164
+ // This event is removed by inside of goBackOneHistoryEntry().
165
+ SDK.TargetManager.TargetManager.instance().addModelListener(
166
+ SDK.ResourceTreeModel.ResourceTreeModel, SDK.ResourceTreeModel.Events.FrameNavigated,
167
+ this.goBackOneHistoryEntry, this);
168
+
169
+ // We can know whether the current page can use BFCache
170
+ // as the browser navigates to another unrelated page and goes back to the current page.
171
+ // We chose "chrome://version" because it must be cross-site.
172
+ // Ideally, We want to have our own testing page like "chrome: //bfcache-test".
173
+ resourceTreeModel.navigate('chrome://version/');
174
+ }
175
+ }
176
+
134
177
  private renderMainFrameInformation(mainFrame: SDK.ResourceTreeModel.ResourceTreeFrame|null): LitHtml.TemplateResult {
135
178
  if (!mainFrame) {
136
179
  return LitHtml.html`<${ReportView.ReportView.ReportKey.litTagName}>${i18nString(UIStrings.mainFrame)}</${
@@ -140,8 +183,13 @@ export class BackForwardCacheView extends UI.ThrottledWidget.ThrottledWidget {
140
183
  </${ReportView.ReportView.ReportValue.litTagName}>`;
141
184
  }
142
185
  return LitHtml.html`
143
- <${ReportView.ReportView.ReportSectionHeader.litTagName}>${i18nString(UIStrings.lastMainFrameNavigation)}</${
144
- ReportView.ReportView.ReportSectionHeader.litTagName}>
186
+ <${ReportView.ReportView.ReportSectionHeader.litTagName}>
187
+ <${Buttons.Button.Button.litTagName}
188
+ .variant=${Buttons.Button.Variant.PRIMARY}
189
+ @click=${this.navigateAwayAndBack}>
190
+ ${i18nString(UIStrings.runTest)}
191
+ </${Buttons.Button.Button.litTagName}>
192
+ </${ReportView.ReportView.ReportSectionHeader.litTagName}>
145
193
  <${ReportView.ReportView.ReportKey.litTagName}>${i18nString(UIStrings.url)}</${
146
194
  ReportView.ReportView.ReportKey.litTagName}>
147
195
  <${ReportView.ReportView.ReportValue.litTagName}>${mainFrame.url}</${
@@ -1,11 +1,8 @@
1
1
  {
2
2
  "dependencies": [
3
3
  "ui/legacy/components/source_frame",
4
- "ui/legacy/components/cookie_table",
5
- "ui/legacy/components/inline_editor",
6
4
  "ui/legacy",
7
5
  "ui/legacy/components/perf_ui",
8
- "panels/mobile_throttling",
9
6
  "panels/network",
10
7
  "panels/sources"
11
8
  ]
@@ -68,7 +68,7 @@ export class ConsoleFilter {
68
68
  }
69
69
 
70
70
  if (message.type === SDK.ConsoleModel.FrontendMessageType.Command ||
71
- message.type === SDK.ConsoleModel.FrontendMessageType.Result) {
71
+ message.type === SDK.ConsoleModel.FrontendMessageType.Result || message.isGroupMessage()) {
72
72
  return true;
73
73
  }
74
74
  if (message.level && !this.levelsMask[message.level as string]) {
@@ -263,6 +263,7 @@ export class ConsolePin {
263
263
  ]),
264
264
  CM.EditorView.domEventHandlers({blur: (_e, view) => this.onBlur(view)}),
265
265
  TE.Config.baseConfiguration(expression),
266
+ TE.Config.autocompletion,
266
267
  ],
267
268
  }));
268
269
  parent.appendChild(this.editor);
@@ -1057,25 +1057,8 @@ export class ConsoleViewMessage implements ConsoleViewportElement {
1057
1057
  }
1058
1058
 
1059
1059
  matchesFilterText(filter: string): boolean {
1060
- return ConsoleViewMessage.recursivelyTestParentConsoleMessage(this.message, filter) ||
1061
- ConsoleViewMessage.recursivelyTestChildrenConsoleMessage(this.message, filter);
1062
- }
1063
-
1064
- static recursivelyTestParentConsoleMessage(consoleMessage: SDK.ConsoleModel.ConsoleMessage, filterString: string):
1065
- boolean {
1066
- const doesFilterMatchText = consoleMessage.messageText.toLowerCase().includes(filterString.toLowerCase());
1067
- const doesParentMatchText = consoleMessage.groupParent &&
1068
- ConsoleViewMessage.recursivelyTestParentConsoleMessage(consoleMessage.groupParent, filterString);
1069
- return Boolean(doesFilterMatchText || doesParentMatchText);
1070
- }
1071
-
1072
- static recursivelyTestChildrenConsoleMessage(consoleMessage: SDK.ConsoleModel.ConsoleMessage, filterString: string):
1073
- boolean {
1074
- const doesFilterMatchChildren = consoleMessage.groupChildren?.some(childMessage => {
1075
- const filterMatch = childMessage.messageText.toLowerCase().includes(filterString.toLowerCase());
1076
- return filterMatch || ConsoleViewMessage.recursivelyTestChildrenConsoleMessage(childMessage, filterString);
1077
- });
1078
- return Boolean(doesFilterMatchChildren);
1060
+ const text = this.contentElement().deepTextContent();
1061
+ return text.toLowerCase().includes(filter.toLowerCase());
1079
1062
  }
1080
1063
 
1081
1064
  updateTimestamp(): void {
@@ -2,7 +2,6 @@
2
2
  // Use of this source code is governed by a BSD-style license that can be
3
3
  // found in the LICENSE file.
4
4
 
5
- import * as Root from '../../core/root/root.js';
6
5
  import * as UI from '../../ui/legacy/legacy.js';
7
6
 
8
7
  // eslint-disable-next-line rulesdir/es_modules_import
@@ -12,8 +11,6 @@ let loadedConsoleCountersModule: (typeof ConsoleCounters|undefined);
12
11
 
13
12
  async function loadConsoleCountersModule(): Promise<typeof ConsoleCounters> {
14
13
  if (!loadedConsoleCountersModule) {
15
- // Side-effect import reconsole_counters in module.json
16
- await Root.Runtime.Runtime.instance().loadModulePromise('panels/console_counters');
17
14
  loadedConsoleCountersModule = await import('./console_counters.js');
18
15
  }
19
16
  return loadedConsoleCountersModule;
@@ -138,8 +138,8 @@ export class CoverageListView extends UI.Widget.VBox {
138
138
  this.highlightRegExp = null;
139
139
 
140
140
  const columns: DataGrid.DataGrid.ColumnDescriptor[] = [
141
- {id: 'url', title: i18nString(UIStrings.url), width: '250px', fixedWidth: false, sortable: true},
142
- {id: 'type', title: i18nString(UIStrings.type), width: '45px', fixedWidth: true, sortable: true},
141
+ {id: 'url', title: i18nString(UIStrings.url), width: '250px', weight: 3, fixedWidth: false, sortable: true},
142
+ {id: 'type', title: i18nString(UIStrings.type), width: '45px', weight: 1, fixedWidth: true, sortable: true},
143
143
  {
144
144
  id: 'size',
145
145
  title: i18nString(UIStrings.totalBytes),
@@ -147,6 +147,7 @@ export class CoverageListView extends UI.Widget.VBox {
147
147
  fixedWidth: true,
148
148
  sortable: true,
149
149
  align: DataGrid.DataGrid.Align.Right,
150
+ weight: 1,
150
151
  },
151
152
  {
152
153
  id: 'unusedSize',
@@ -156,9 +157,17 @@ export class CoverageListView extends UI.Widget.VBox {
156
157
  sortable: true,
157
158
  align: DataGrid.DataGrid.Align.Right,
158
159
  sort: DataGrid.DataGrid.Order.Descending,
160
+ weight: 1,
159
161
  },
160
- {id: 'bars', title: i18nString(UIStrings.usageVisualization), width: '250px', fixedWidth: false, sortable: true},
161
- ] as DataGrid.DataGrid.ColumnDescriptor[];
162
+ {
163
+ id: 'bars',
164
+ title: i18nString(UIStrings.usageVisualization),
165
+ width: '250px',
166
+ fixedWidth: false,
167
+ sortable: true,
168
+ weight: 1,
169
+ },
170
+ ];
162
171
  this.dataGrid = new DataGrid.SortableDataGrid.SortableDataGrid<GridNode>({
163
172
  displayName: i18nString(UIStrings.codeCoverage),
164
173
  columns,
@@ -106,6 +106,7 @@ export class CSSOverviewStartView extends HTMLElement {
106
106
  private render(): void {
107
107
  // Disabled until https://crbug.com/1079231 is fixed.
108
108
  // clang-format off
109
+ // eslint-disable-next-line rulesdir/ban_a_tags_in_lit_html
109
110
  render(html`
110
111
  <div class="css-overview-start-view">
111
112
  <h1 class="summary-header">${i18nString(UIStrings.identifyCSSImprovements)}</h1>