chrome-devtools-frontend 1.0.1022611 → 1.0.1024166

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 (358) hide show
  1. package/.eslintignore +4 -2
  2. package/.eslintrc.js +1 -0
  3. package/front_end/core/common/AppProvider.ts +1 -1
  4. package/front_end/core/common/Object.ts +7 -2
  5. package/front_end/core/common/SettingRegistration.ts +1 -1
  6. package/front_end/core/common/Settings.ts +2 -3
  7. package/front_end/core/host/InspectorFrontendHost.ts +13 -5
  8. package/front_end/core/host/ResourceLoader.ts +1 -1
  9. package/front_end/core/i18n/locales/en-US.json +24 -0
  10. package/front_end/core/i18n/locales/en-XL.json +24 -0
  11. package/front_end/core/platform/UserVisibleError.ts +1 -1
  12. package/front_end/core/sdk/AccessibilityModel.ts +3 -4
  13. package/front_end/core/sdk/CPUProfileDataModel.ts +1 -1
  14. package/front_end/core/sdk/CPUProfilerModel.ts +3 -3
  15. package/front_end/core/sdk/CPUThrottlingManager.ts +2 -2
  16. package/front_end/core/sdk/CSSContainerQuery.ts +2 -2
  17. package/front_end/core/sdk/CSSLayer.ts +1 -1
  18. package/front_end/core/sdk/CSSMatchedStyles.ts +3 -3
  19. package/front_end/core/sdk/CSSMedia.ts +1 -1
  20. package/front_end/core/sdk/CSSModel.ts +6 -6
  21. package/front_end/core/sdk/CSSProperty.ts +2 -2
  22. package/front_end/core/sdk/CSSQuery.ts +2 -3
  23. package/front_end/core/sdk/CSSRule.ts +2 -2
  24. package/front_end/core/sdk/CSSScope.ts +1 -1
  25. package/front_end/core/sdk/CSSStyleDeclaration.ts +3 -3
  26. package/front_end/core/sdk/CSSStyleSheetHeader.ts +3 -3
  27. package/front_end/core/sdk/CSSSupports.ts +1 -1
  28. package/front_end/core/sdk/ChildTargetManager.ts +2 -2
  29. package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +1 -2
  30. package/front_end/core/sdk/ConsoleModel.ts +15 -12
  31. package/front_end/core/sdk/CookieModel.ts +4 -5
  32. package/front_end/core/sdk/DOMDebuggerModel.ts +7 -7
  33. package/front_end/core/sdk/DOMModel.ts +3 -3
  34. package/front_end/core/sdk/DebuggerModel.ts +5 -6
  35. package/front_end/core/sdk/EmulationModel.ts +2 -2
  36. package/front_end/core/sdk/EventBreakpointsModel.ts +4 -4
  37. package/front_end/core/sdk/FilmStripModel.ts +1 -2
  38. package/front_end/core/sdk/FrameAssociated.ts +1 -1
  39. package/front_end/core/sdk/FrameManager.ts +6 -6
  40. package/front_end/core/sdk/HeapProfilerModel.ts +4 -4
  41. package/front_end/core/sdk/IOModel.ts +2 -2
  42. package/front_end/core/sdk/IsolateManager.ts +3 -3
  43. package/front_end/core/sdk/IssuesModel.ts +1 -2
  44. package/front_end/core/sdk/LayerTreeBase.ts +3 -4
  45. package/front_end/core/sdk/LogModel.ts +1 -2
  46. package/front_end/core/sdk/NetworkManager.ts +18 -9
  47. package/front_end/core/sdk/NetworkRequest.ts +1 -2
  48. package/front_end/core/sdk/OverlayModel.ts +5 -5
  49. package/front_end/core/sdk/PageLoad.ts +1 -1
  50. package/front_end/core/sdk/PageResourceLoader.ts +3 -3
  51. package/front_end/core/sdk/PaintProfiler.ts +1 -2
  52. package/front_end/core/sdk/PerformanceMetricsModel.ts +1 -2
  53. package/front_end/core/sdk/ProfileTreeModel.ts +1 -1
  54. package/front_end/core/sdk/RemoteObject.ts +3 -3
  55. package/front_end/core/sdk/Resource.ts +2 -3
  56. package/front_end/core/sdk/ResourceTreeModel.ts +6 -7
  57. package/front_end/core/sdk/RuntimeModel.ts +5 -5
  58. package/front_end/core/sdk/SDKModel.ts +1 -1
  59. package/front_end/core/sdk/ScreenCaptureModel.ts +2 -2
  60. package/front_end/core/sdk/Script.ts +5 -6
  61. package/front_end/core/sdk/SecurityOriginManager.ts +1 -2
  62. package/front_end/core/sdk/ServerTiming.ts +1 -1
  63. package/front_end/core/sdk/ServiceWorkerCacheModel.ts +3 -3
  64. package/front_end/core/sdk/ServiceWorkerManager.ts +3 -4
  65. package/front_end/core/sdk/SourceMap.ts +2 -2
  66. package/front_end/core/sdk/SourceMapManager.ts +5 -5
  67. package/front_end/core/sdk/StorageKeyManager.ts +1 -2
  68. package/front_end/core/sdk/Target.ts +1 -1
  69. package/front_end/core/sdk/TargetManager.ts +1 -1
  70. package/front_end/core/sdk/TracingManager.ts +2 -3
  71. package/front_end/core/sdk/TracingModel.ts +1 -1
  72. package/front_end/core/sdk/WebAuthnModel.ts +1 -2
  73. package/front_end/entrypoints/formatter_worker/CSSFormatter.ts +1 -1
  74. package/front_end/entrypoints/formatter_worker/CSSRuleParser.ts +1 -2
  75. package/front_end/entrypoints/formatter_worker/FormatterWorker.ts +1 -1
  76. package/front_end/entrypoints/formatter_worker/HTMLFormatter.ts +1 -1
  77. package/front_end/entrypoints/formatter_worker/IdentityFormatter.ts +1 -1
  78. package/front_end/entrypoints/formatter_worker/JSONFormatter.ts +1 -1
  79. package/front_end/entrypoints/formatter_worker/JavaScriptFormatter.ts +2 -3
  80. package/front_end/entrypoints/formatter_worker/JavaScriptOutline.ts +1 -1
  81. package/front_end/entrypoints/formatter_worker/ScopeParser.ts +2 -2
  82. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +1 -1
  83. package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshotLoader.ts +3 -3
  84. package/front_end/generated/.clang-format +1 -0
  85. package/front_end/generated/ARIAProperties.js +1515 -517
  86. package/front_end/generated/InspectorBackendCommands.js +960 -3655
  87. package/front_end/generated/SupportedCSSProperties.js +5719 -1314
  88. package/front_end/generated/protocol-mapping.d.ts +1865 -608
  89. package/front_end/generated/protocol-proxy-api.d.ts +384 -576
  90. package/front_end/generated/protocol.ts +9 -12
  91. package/front_end/models/bindings/BreakpointManager.ts +2 -2
  92. package/front_end/models/bindings/CSSWorkspaceBinding.ts +5 -2
  93. package/front_end/models/bindings/CompilerScriptMapping.ts +5 -1
  94. package/front_end/models/bindings/DebuggerLanguagePlugins.ts +2 -2
  95. package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +4 -4
  96. package/front_end/models/bindings/DefaultScriptMapping.ts +1 -1
  97. package/front_end/models/bindings/IgnoreListManager.ts +1 -1
  98. package/front_end/models/bindings/PresentationConsoleMessageHelper.ts +2 -2
  99. package/front_end/models/bindings/ResourceScriptMapping.ts +2 -4
  100. package/front_end/models/bindings/SASSSourceMapping.ts +2 -2
  101. package/front_end/models/bindings/StylesSourceMapping.ts +1 -1
  102. package/front_end/models/bindings/TempFile.ts +1 -2
  103. package/front_end/models/emulation/DeviceModeModel.ts +8 -2
  104. package/front_end/models/extensions/ExtensionPanel.ts +1 -1
  105. package/front_end/models/extensions/ExtensionServer.ts +3 -3
  106. package/front_end/models/extensions/ExtensionView.ts +1 -1
  107. package/front_end/models/extensions/LanguageExtensionEndpoint.ts +1 -1
  108. package/front_end/models/extensions/RecorderPluginManager.ts +1 -1
  109. package/front_end/models/formatter/SourceFormatter.ts +1 -2
  110. package/front_end/models/har/Importer.ts +1 -1
  111. package/front_end/models/har/Writer.ts +2 -2
  112. package/front_end/models/issues_manager/AttributionReportingIssue.ts +1 -1
  113. package/front_end/models/issues_manager/ClientHintIssue.ts +6 -2
  114. package/front_end/models/issues_manager/ContentSecurityPolicyIssue.ts +6 -2
  115. package/front_end/models/issues_manager/CookieIssue.ts +6 -2
  116. package/front_end/models/issues_manager/CorsIssue.ts +1 -1
  117. package/front_end/models/issues_manager/CrossOriginEmbedderPolicyIssue.ts +6 -2
  118. package/front_end/models/issues_manager/DeprecationIssue.ts +2 -2
  119. package/front_end/models/issues_manager/FederatedAuthRequestIssue.ts +6 -2
  120. package/front_end/models/issues_manager/GenericIssue.ts +6 -2
  121. package/front_end/models/issues_manager/HeavyAdIssue.ts +1 -1
  122. package/front_end/models/issues_manager/Issue.ts +1 -1
  123. package/front_end/models/issues_manager/IssueResolver.ts +2 -3
  124. package/front_end/models/issues_manager/IssuesManager.ts +1 -1
  125. package/front_end/models/issues_manager/LowTextContrastIssue.ts +1 -1
  126. package/front_end/models/issues_manager/MixedContentIssue.ts +1 -1
  127. package/front_end/models/issues_manager/NavigatorUserAgentIssue.ts +1 -1
  128. package/front_end/models/issues_manager/QuirksModeIssue.ts +1 -1
  129. package/front_end/models/issues_manager/RelatedIssue.ts +1 -1
  130. package/front_end/models/issues_manager/SharedArrayBufferIssue.ts +1 -1
  131. package/front_end/models/issues_manager/SourceFrameIssuesManager.ts +3 -3
  132. package/front_end/models/issues_manager/TrustedWebActivityIssue.ts +6 -2
  133. package/front_end/models/javascript_metadata/NativeFunctions.js +22 -32
  134. package/front_end/models/persistence/Automapping.ts +1 -2
  135. package/front_end/models/persistence/EditFileSystemView.ts +1 -1
  136. package/front_end/models/persistence/FileSystemWorkspaceBinding.ts +4 -4
  137. package/front_end/models/persistence/IsolatedFileSystem.ts +1 -2
  138. package/front_end/models/persistence/IsolatedFileSystemManager.ts +2 -2
  139. package/front_end/models/persistence/NetworkPersistenceManager.ts +1 -2
  140. package/front_end/models/persistence/PersistenceImpl.ts +1 -2
  141. package/front_end/models/persistence/PersistenceUtils.ts +1 -2
  142. package/front_end/models/persistence/WorkspaceSettingsTab.ts +2 -2
  143. package/front_end/models/text_utils/StaticContentProvider.ts +1 -1
  144. package/front_end/models/timeline_model/TimelineFrameModel.ts +2 -2
  145. package/front_end/models/timeline_model/TimelineProfileTree.ts +1 -1
  146. package/front_end/models/timeline_model/TracingLayerTree.ts +1 -1
  147. package/front_end/models/workspace/UISourceCode.ts +1 -2
  148. package/front_end/models/workspace/WorkspaceImpl.ts +1 -2
  149. package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +1 -1
  150. package/front_end/panels/animation/AnimationGroupPreviewUI.ts +1 -1
  151. package/front_end/panels/animation/AnimationTimeline.ts +7 -2
  152. package/front_end/panels/animation/AnimationUI.ts +3 -3
  153. package/front_end/panels/application/ApplicationPanelCacheSection.ts +1 -1
  154. package/front_end/panels/application/ApplicationPanelSidebar.ts +13 -7
  155. package/front_end/panels/application/ApplicationPanelTreeElement.ts +1 -1
  156. package/front_end/panels/application/BackgroundServiceView.ts +1 -2
  157. package/front_end/panels/application/DatabaseQueryView.ts +1 -1
  158. package/front_end/panels/application/DatabaseTableView.ts +1 -1
  159. package/front_end/panels/application/IndexedDBViews.ts +9 -2
  160. package/front_end/panels/application/InterestGroupTreeElement.ts +1 -1
  161. package/front_end/panels/application/ReportingApiTreeElement.ts +1 -1
  162. package/front_end/panels/application/ResourcesPanel.ts +1 -1
  163. package/front_end/panels/application/TrustTokensTreeElement.ts +1 -1
  164. package/front_end/panels/application/components/FrameDetailsView.ts +9 -6
  165. package/front_end/panels/console/ConsoleFilter.ts +1 -1
  166. package/front_end/panels/console/ConsoleSidebar.ts +2 -3
  167. package/front_end/panels/console/ConsoleView.ts +2 -4
  168. package/front_end/panels/console/ConsoleViewMessage.ts +2 -2
  169. package/front_end/panels/console/ConsoleViewport.ts +1 -1
  170. package/front_end/panels/coverage/CoverageDecorationManager.ts +1 -1
  171. package/front_end/panels/coverage/CoverageListView.ts +1 -2
  172. package/front_end/panels/coverage/CoverageView.ts +1 -2
  173. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +9 -5
  174. package/front_end/panels/css_overview/CSSOverviewController.ts +2 -2
  175. package/front_end/panels/css_overview/CSSOverviewModel.ts +3 -3
  176. package/front_end/panels/css_overview/CSSOverviewPanel.ts +4 -5
  177. package/front_end/panels/css_overview/CSSOverviewProcessingView.ts +1 -2
  178. package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +3 -3
  179. package/front_end/panels/elements/ComputedStyleWidget.ts +3 -4
  180. package/front_end/panels/elements/DOMLinkifier.ts +5 -1
  181. package/front_end/panels/elements/ElementsPanel.ts +7 -4
  182. package/front_end/panels/elements/ElementsSidebarPane.ts +1 -2
  183. package/front_end/panels/elements/ElementsTreeElement.ts +3 -4
  184. package/front_end/panels/elements/ElementsTreeOutline.ts +1 -1
  185. package/front_end/panels/elements/PlatformFontsWidget.ts +1 -2
  186. package/front_end/panels/elements/StyleEditorWidget.ts +2 -2
  187. package/front_end/panels/elements/StylePropertiesSection.ts +1 -2
  188. package/front_end/panels/elements/StylePropertyHighlighter.ts +2 -2
  189. package/front_end/panels/elements/StylePropertyTreeElement.ts +2 -3
  190. package/front_end/panels/elements/StylesSidebarPane.ts +39 -8
  191. package/front_end/panels/elements/TopLayerContainer.ts +1 -1
  192. package/front_end/panels/elements/components/AdornerSettingsPane.ts +1 -1
  193. package/front_end/panels/elements/components/ElementsBreadcrumbs.ts +2 -3
  194. package/front_end/panels/elements/components/ElementsBreadcrumbsUtils.ts +1 -1
  195. package/front_end/panels/elements/components/LayoutPane.ts +1 -2
  196. package/front_end/panels/elements/components/QueryContainer.ts +1 -1
  197. package/front_end/panels/elements/components/StylePropertyEditor.ts +1 -2
  198. package/front_end/panels/emulation/AdvancedApp.ts +2 -2
  199. package/front_end/panels/emulation/DeviceModeWrapper.ts +1 -1
  200. package/front_end/panels/event_listeners/EventListenersView.ts +1 -2
  201. package/front_end/panels/issues/AffectedResourcesView.ts +2 -2
  202. package/front_end/panels/issues/CorsIssueDetailsView.ts +2 -2
  203. package/front_end/panels/issues/IssueView.ts +2 -2
  204. package/front_end/panels/issues/IssuesPane.ts +6 -2
  205. package/front_end/panels/layer_viewer/LayerDetailsView.ts +8 -2
  206. package/front_end/panels/layer_viewer/LayerTreeOutline.ts +7 -2
  207. package/front_end/panels/layer_viewer/Layers3DView.ts +9 -2
  208. package/front_end/panels/lighthouse/LighthouseController.ts +1 -1
  209. package/front_end/panels/lighthouse/LighthousePanel.ts +10 -6
  210. package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +5 -1
  211. package/front_end/panels/lighthouse/LighthouseStartView.ts +1 -2
  212. package/front_end/panels/lighthouse/LighthouseStatusView.ts +1 -2
  213. package/front_end/panels/lighthouse/LighthouseTimespanView.ts +1 -2
  214. package/front_end/panels/media/EventDisplayTable.ts +1 -1
  215. package/front_end/panels/media/EventTimelineView.ts +9 -3
  216. package/front_end/panels/media/MainView.ts +1 -2
  217. package/front_end/panels/media/PlayerDetailView.ts +4 -3
  218. package/front_end/panels/media/PlayerListView.ts +2 -2
  219. package/front_end/panels/media/PlayerMessagesView.ts +76 -0
  220. package/front_end/panels/media/playerMessagesView.css +15 -0
  221. package/front_end/panels/mobile_throttling/MobileThrottlingSelector.ts +6 -2
  222. package/front_end/panels/mobile_throttling/NetworkThrottlingSelector.ts +1 -2
  223. package/front_end/panels/mobile_throttling/ThrottlingManager.ts +7 -4
  224. package/front_end/panels/network/NetworkDataGridNode.ts +1 -1
  225. package/front_end/panels/network/NetworkFrameGrouper.ts +1 -1
  226. package/front_end/panels/network/NetworkItemView.ts +1 -1
  227. package/front_end/panels/network/NetworkLogView.ts +10 -3
  228. package/front_end/panels/network/NetworkLogViewColumns.ts +7 -6
  229. package/front_end/panels/network/NetworkPanel.ts +3 -4
  230. package/front_end/panels/network/NetworkWaterfallColumn.ts +4 -4
  231. package/front_end/panels/network/RequestTimingView.ts +1 -2
  232. package/front_end/panels/network/components/RequestHeadersView.css +4 -0
  233. package/front_end/panels/network/components/RequestHeadersView.ts +57 -14
  234. package/front_end/panels/profiler/BottomUpProfileDataGrid.ts +2 -3
  235. package/front_end/panels/profiler/CPUProfileView.ts +3 -3
  236. package/front_end/panels/profiler/HeapProfileView.ts +4 -5
  237. package/front_end/panels/profiler/HeapProfilerPanel.ts +2 -2
  238. package/front_end/panels/profiler/HeapSnapshotDataGrids.ts +4 -4
  239. package/front_end/panels/profiler/HeapSnapshotGridNodes.ts +11 -7
  240. package/front_end/panels/profiler/HeapSnapshotProxy.ts +1 -1
  241. package/front_end/panels/profiler/HeapSnapshotView.ts +13 -8
  242. package/front_end/panels/profiler/ProfileLauncherView.ts +2 -2
  243. package/front_end/panels/profiler/ProfileSidebarTreeElement.ts +6 -2
  244. package/front_end/panels/profiler/ProfileView.ts +6 -6
  245. package/front_end/panels/profiler/ProfilesPanel.ts +6 -2
  246. package/front_end/panels/profiler/TopDownProfileDataGrid.ts +1 -2
  247. package/front_end/panels/search/SearchResultsPane.ts +1 -1
  248. package/front_end/panels/search/SearchView.ts +1 -2
  249. package/front_end/panels/security/SecurityPanel.ts +7 -2
  250. package/front_end/panels/settings/SettingsScreen.ts +1 -1
  251. package/front_end/panels/settings/emulation/utils/UserAgentMetadata.ts +11 -2
  252. package/front_end/panels/sources/EditingLocationHistoryManager.ts +2 -2
  253. package/front_end/panels/sources/GoToLineQuickOpen.ts +1 -1
  254. package/front_end/panels/sources/InplaceFormatterEditorAction.ts +7 -2
  255. package/front_end/panels/sources/ScriptFormatterEditorAction.ts +7 -2
  256. package/front_end/panels/sources/SourcesNavigator.ts +1 -2
  257. package/front_end/panels/sources/SourcesPanel.ts +1 -1
  258. package/front_end/panels/sources/SourcesSearchScope.ts +3 -0
  259. package/front_end/panels/sources/SourcesView.ts +6 -2
  260. package/front_end/panels/sources/UISourceCodeFrame.ts +1 -1
  261. package/front_end/panels/timeline/CountersGraph.ts +2 -3
  262. package/front_end/panels/timeline/EventsTimelineTreeView.ts +2 -2
  263. package/front_end/panels/timeline/ExtensionTracingSession.ts +3 -3
  264. package/front_end/panels/timeline/TimelineDetailsView.ts +6 -6
  265. package/front_end/panels/timeline/TimelineEventOverview.ts +3 -3
  266. package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +3 -3
  267. package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +1 -1
  268. package/front_end/panels/timeline/TimelineFlameChartView.ts +6 -6
  269. package/front_end/panels/timeline/TimelineHistoryManager.ts +1 -1
  270. package/front_end/panels/timeline/TimelinePanel.ts +5 -5
  271. package/front_end/panels/timeline/TimelineTreeView.ts +2 -2
  272. package/front_end/panels/timeline/UIDevtoolsController.ts +1 -2
  273. package/front_end/panels/timeline/components/WebVitalsLane.ts +9 -2
  274. package/front_end/panels/timeline/components/WebVitalsTimeline.ts +1 -1
  275. package/front_end/panels/web_audio/graph_visualizer/EdgeView.ts +1 -1
  276. package/front_end/panels/web_audio/graph_visualizer/GraphView.ts +9 -3
  277. package/front_end/panels/web_audio/graph_visualizer/NodeRendererUtility.ts +2 -1
  278. package/front_end/panels/web_audio/graph_visualizer/NodeView.ts +3 -1
  279. package/front_end/third_party/.clang-format +1 -1
  280. package/front_end/third_party/i18n/localized-string-set.ts +1 -1
  281. package/front_end/ui/components/buttons/Button.ts +32 -7
  282. package/front_end/ui/components/buttons/button.css +16 -0
  283. package/front_end/ui/components/data_grid/DataGrid.ts +5 -1
  284. package/front_end/ui/components/data_grid/DataGridContextMenuUtils.ts +2 -2
  285. package/front_end/ui/components/data_grid/DataGridController.ts +12 -5
  286. package/front_end/ui/components/data_grid/DataGridControllerIntegrator.ts +1 -2
  287. package/front_end/ui/components/data_grid/DataGridEvents.ts +1 -1
  288. package/front_end/ui/components/data_grid/DataGridRenderers.ts +1 -1
  289. package/front_end/ui/components/docs/building-ui-documentation/CreatingComponents.md +112 -0
  290. package/front_end/ui/components/docs/building-ui-documentation/README.md +19 -0
  291. package/front_end/ui/components/docs/button/basic.html +11 -0
  292. package/front_end/ui/components/docs/button/basic.ts +7 -0
  293. package/front_end/ui/components/icon_button/IconButton.ts +1 -3
  294. package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector.ts +27 -13
  295. package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorController.ts +9 -4
  296. package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +10 -5
  297. package/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter.ts +8 -7
  298. package/front_end/ui/components/linear_memory_inspector/LinearMemoryViewer.ts +1 -1
  299. package/front_end/ui/components/markdown_view/MarkdownImage.ts +1 -2
  300. package/front_end/ui/components/markdown_view/MarkdownView.ts +2 -4
  301. package/front_end/ui/components/tree_outline/TreeOutline.ts +3 -1
  302. package/front_end/ui/legacy/ActionRegistry.ts +1 -2
  303. package/front_end/ui/legacy/Context.ts +1 -1
  304. package/front_end/ui/legacy/ContextMenu.ts +2 -2
  305. package/front_end/ui/legacy/Dialog.ts +4 -4
  306. package/front_end/ui/legacy/DockController.ts +4 -4
  307. package/front_end/ui/legacy/FilterBar.ts +3 -3
  308. package/front_end/ui/legacy/FilterSuggestionBuilder.ts +1 -1
  309. package/front_end/ui/legacy/GlassPane.ts +3 -3
  310. package/front_end/ui/legacy/Infobar.ts +1 -1
  311. package/front_end/ui/legacy/InspectorView.ts +10 -10
  312. package/front_end/ui/legacy/ListControl.ts +2 -2
  313. package/front_end/ui/legacy/Panel.ts +1 -1
  314. package/front_end/ui/legacy/ShortcutRegistry.ts +2 -3
  315. package/front_end/ui/legacy/SoftDropDown.ts +4 -4
  316. package/front_end/ui/legacy/SplitWidget.ts +2 -2
  317. package/front_end/ui/legacy/SuggestBox.ts +2 -2
  318. package/front_end/ui/legacy/TabbedPane.ts +2 -2
  319. package/front_end/ui/legacy/TextPrompt.ts +1 -2
  320. package/front_end/ui/legacy/Toolbar.ts +2 -3
  321. package/front_end/ui/legacy/Treeoutline.ts +3 -3
  322. package/front_end/ui/legacy/UIUtils.ts +2 -3
  323. package/front_end/ui/legacy/View.ts +4 -4
  324. package/front_end/ui/legacy/ViewManager.ts +8 -8
  325. package/front_end/ui/legacy/ViewRegistration.ts +2 -2
  326. package/front_end/ui/legacy/XLink.ts +1 -1
  327. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +1 -2
  328. package/front_end/ui/legacy/components/color_picker/ContrastOverlay.ts +1 -2
  329. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +1 -1
  330. package/front_end/ui/legacy/components/data_grid/SortableDataGrid.ts +1 -2
  331. package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +1 -2
  332. package/front_end/ui/legacy/components/data_grid/dataGrid.css +2 -2
  333. package/front_end/ui/legacy/components/inline_editor/CSSAngle.ts +4 -5
  334. package/front_end/ui/legacy/components/inline_editor/CSSAngleEditor.ts +1 -1
  335. package/front_end/ui/legacy/components/inline_editor/CSSAngleSwatch.ts +1 -2
  336. package/front_end/ui/legacy/components/inline_editor/CSSLength.ts +1 -2
  337. package/front_end/ui/legacy/components/inline_editor/CSSShadowEditor.ts +1 -2
  338. package/front_end/ui/legacy/components/inline_editor/Swatches.ts +1 -1
  339. package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -4
  340. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +1 -2
  341. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +2 -3
  342. package/front_end/ui/legacy/components/quick_open/QuickOpen.ts +1 -2
  343. package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +1 -2
  344. package/inspector_overlay/css_grid_label_helpers.ts +1 -2
  345. package/inspector_overlay/highlight_common.ts +1 -1
  346. package/inspector_overlay/highlight_container_query.ts +3 -3
  347. package/inspector_overlay/highlight_flex_common.ts +12 -3
  348. package/inspector_overlay/highlight_grid_common.ts +3 -3
  349. package/inspector_overlay/highlight_isolated_element.ts +1 -1
  350. package/inspector_overlay/highlight_scroll_snap.ts +3 -3
  351. package/inspector_overlay/main.ts +6 -6
  352. package/inspector_overlay/tool_highlight.ts +26 -12
  353. package/inspector_overlay/tool_persistent.ts +13 -14
  354. package/inspector_overlay/tool_source_order.ts +3 -4
  355. package/package.json +1 -1
  356. package/scripts/build/generate_aria.py +2 -1
  357. package/scripts/build/generate_supported_css.py +6 -3
  358. package/scripts/protocol_typescript/protocol_dts_generator.ts +1 -1
@@ -13,7 +13,11 @@ import * as Components from '../../ui/legacy/components/utils/utils.js';
13
13
  import * as UI from '../../ui/legacy/legacy.js';
14
14
  import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
15
15
  import * as Timeline from '../timeline/timeline.js';
16
- import type {RunnerResultArtifacts, NodeDetailsJSON, SourceLocationDetailsJSON} from './LighthouseReporterTypes.js';
16
+ import {
17
+ type RunnerResultArtifacts,
18
+ type NodeDetailsJSON,
19
+ type SourceLocationDetailsJSON,
20
+ } from './LighthouseReporterTypes.js';
17
21
 
18
22
  const UIStrings = {
19
23
  /**
@@ -7,8 +7,7 @@ import type * as Common from '../../core/common/common.js';
7
7
  import * as i18n from '../../core/i18n/i18n.js';
8
8
  import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
- import type {LighthouseController, Preset} from './LighthouseController.js';
11
- import {Events, Presets, RuntimeSettings} from './LighthouseController.js';
10
+ import {Events, Presets, RuntimeSettings, type LighthouseController, type Preset} from './LighthouseController.js';
12
11
  import {RadioSetting} from './RadioSetting.js';
13
12
 
14
13
  const UIStrings = {
@@ -8,8 +8,7 @@ import * as UI from '../../ui/legacy/legacy.js';
8
8
 
9
9
  import lighthouseDialogStyles from './lighthouseDialog.css.js';
10
10
 
11
- import type {LighthouseController} from './LighthouseController.js';
12
- import {Events, RuntimeSettings} from './LighthouseController.js';
11
+ import {Events, RuntimeSettings, type LighthouseController} from './LighthouseController.js';
13
12
 
14
13
  const UIStrings = {
15
14
  /**
@@ -5,8 +5,7 @@
5
5
  import * as i18n from '../../core/i18n/i18n.js';
6
6
  import * as UI from '../../ui/legacy/legacy.js';
7
7
 
8
- import type {LighthouseController} from './LighthouseController.js';
9
- import {Events} from './LighthouseController.js';
8
+ import {Events, type LighthouseController} from './LighthouseController.js';
10
9
  import lighthouseDialogStyles from './lighthouseDialog.css.js';
11
10
 
12
11
  const UIStrings = {
@@ -9,7 +9,7 @@ import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import eventDisplayTableStyles from './eventDisplayTable.css.js';
11
11
 
12
- import type {PlayerEvent} from './MediaModel.js';
12
+ import {type PlayerEvent} from './MediaModel.js';
13
13
 
14
14
  const UIStrings = {
15
15
  /**
@@ -4,9 +4,15 @@
4
4
 
5
5
  import * as i18n from '../../core/i18n/i18n.js';
6
6
 
7
- import type {PlayerEvent} from './MediaModel.js';
8
- import type {Event, EventProperties} from './TickingFlameChart.js';
9
- import {ColdColorScheme, HotColorScheme, TickingFlameChart} from './TickingFlameChart.js';
7
+ import {type PlayerEvent} from './MediaModel.js';
8
+
9
+ import {
10
+ ColdColorScheme,
11
+ HotColorScheme,
12
+ TickingFlameChart,
13
+ type Event,
14
+ type EventProperties,
15
+ } from './TickingFlameChart.js';
10
16
 
11
17
  // Has to be a double, see https://v8.dev/blog/react-cliff
12
18
  const NO_NORMALIZED_TIMESTAMP = -1.5;
@@ -7,8 +7,7 @@ import * as SDK from '../../core/sdk/sdk.js';
7
7
  import * as UI from '../../ui/legacy/legacy.js';
8
8
  import type * as Protocol from '../../generated/protocol.js';
9
9
 
10
- import type {PlayerEvent} from './MediaModel.js';
11
- import {MediaModel, Events} from './MediaModel.js';
10
+ import {MediaModel, Events, type PlayerEvent} from './MediaModel.js';
12
11
  import {PlayerDetailView} from './PlayerDetailView.js';
13
12
  import {PlayerListView} from './PlayerListView.js';
14
13
 
@@ -8,8 +8,8 @@ import type * as Protocol from '../../generated/protocol.js';
8
8
 
9
9
  import {PlayerEventsView} from './EventDisplayTable.js';
10
10
  import {PlayerEventsTimeline} from './EventTimelineView.js';
11
- import type {TriggerHandler} from './MainView.js';
12
- import type {PlayerEvent} from './MediaModel.js';
11
+ import {type TriggerHandler} from './MainView.js';
12
+ import {type PlayerEvent} from './MediaModel.js';
13
13
  import {PlayerMessagesView} from './PlayerMessagesView.js';
14
14
  import {PlayerPropertiesView} from './PlayerPropertiesView.js';
15
15
 
@@ -88,7 +88,8 @@ export class PlayerDetailView extends UI.TabbedPane.TabbedPane implements Trigge
88
88
  this.propertyView.onProperty(property);
89
89
  }
90
90
 
91
- onError(_error: Protocol.Media.PlayerError): void {
91
+ onError(error: Protocol.Media.PlayerError): void {
92
+ this.messageView.addError(error);
92
93
  }
93
94
 
94
95
  onMessage(message: Protocol.Media.PlayerMessage): void {
@@ -9,8 +9,8 @@ import playerListViewStyles from './playerListView.css.js';
9
9
 
10
10
  import type * as Protocol from '../../generated/protocol.js';
11
11
 
12
- import type {MainView, TriggerDispatcher} from './MainView.js';
13
- import type {PlayerEvent} from './MediaModel.js';
12
+ import {type MainView, type TriggerDispatcher} from './MainView.js';
13
+ import {type PlayerEvent} from './MediaModel.js';
14
14
  import {PlayerPropertyKeys} from './PlayerPropertiesView.js';
15
15
 
16
16
  const UIStrings = {
@@ -47,6 +47,26 @@ const UIStrings = {
47
47
  *@description Default text for user-text-entry for searching log messages.
48
48
  */
49
49
  filterLogMessages: 'Filter log messages',
50
+ /**
51
+ *@description The label for the group name that this error belongs to.
52
+ */
53
+ errorGroupLabel: 'Error Group:',
54
+ /**
55
+ *@description The label for the numeric code associated with this error.
56
+ */
57
+ errorCodeLabel: 'Error Code:',
58
+ /**
59
+ *@description The label for extra data associated with an error.
60
+ */
61
+ errorDataLabel: 'Data:',
62
+ /**
63
+ *@description The label for the stacktrace associated with the error.
64
+ */
65
+ errorStackLabel: 'Stacktrace:',
66
+ /**
67
+ *@description The label for a root cause error associated with this error.
68
+ */
69
+ errorCauseLabel: 'Caused by:',
50
70
  };
51
71
  const str_ = i18n.i18n.registerUIStrings('panels/media/PlayerMessagesView.ts', UIStrings);
52
72
  const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
@@ -318,6 +338,62 @@ export class PlayerMessagesView extends UI.Widget.VBox {
318
338
  UI.UIUtils.createTextChild(container, message.message);
319
339
  }
320
340
 
341
+ private errorToDiv(error: Protocol.Media.PlayerError): Element {
342
+ const entry = UI.Fragment.Fragment.build`
343
+ <div class="status-error-box">
344
+ <div class="status-error-field-labeled">
345
+ <span class="status-error-field-label" $="status-error-group"></span>
346
+ <span>${error.errorType}</span>
347
+ </div>
348
+ <div class="status-error-field-labeled">
349
+ <span class="status-error-field-label" $="status-error-code"></span>
350
+ <span>${error.code}</span>
351
+ </div>
352
+ <div class="status-error-field-labeled" $="status-error-data">
353
+ </div>
354
+ <div class="status-error-field-labeled" $="status-error-stack">
355
+ </div>
356
+ <div class="status-error-field-labeled" $="status-error-cause">
357
+ </div>
358
+ `;
359
+
360
+ entry.$('status-error-group').textContent = i18nString(UIStrings.errorGroupLabel);
361
+ entry.$('status-error-code').textContent = i18nString(UIStrings.errorCodeLabel);
362
+
363
+ if (Object.keys(error.data).length !== 0) {
364
+ const label = entry.$('status-error-data').createChild('span', 'status-error-field-label');
365
+ UI.UIUtils.createTextChild(label, i18nString(UIStrings.errorDataLabel));
366
+ const dataContent = entry.$('status-error-data').createChild('div');
367
+ for (const [key, value] of Object.entries(error.data)) {
368
+ const datumContent = dataContent.createChild('div');
369
+ UI.UIUtils.createTextChild(datumContent, `${key}: ${value}`);
370
+ }
371
+ }
372
+
373
+ if (error.stack.length !== 0) {
374
+ const label = entry.$('status-error-stack').createChild('span', 'status-error-field-label');
375
+ UI.UIUtils.createTextChild(label, i18nString(UIStrings.errorStackLabel));
376
+ const stackContent = entry.$('status-error-stack').createChild('div');
377
+ for (const stackEntry of error.stack) {
378
+ const frameBox = stackContent.createChild('div');
379
+ UI.UIUtils.createTextChild(frameBox, `${stackEntry.file}:${stackEntry.line}`);
380
+ }
381
+ }
382
+
383
+ if (error.cause.length !== 0) {
384
+ const label = entry.$('status-error-cause').createChild('span', 'status-error-field-label');
385
+ UI.UIUtils.createTextChild(label, i18nString(UIStrings.errorCauseLabel));
386
+ entry.$('status-error-cause').appendChild(this.errorToDiv(error.cause[0]));
387
+ }
388
+
389
+ return entry.element();
390
+ }
391
+
392
+ addError(error: Protocol.Media.PlayerError): void {
393
+ const container = this.bodyPanel.createChild('div', 'media-messages-message-container media-message-error');
394
+ container.appendChild(this.errorToDiv(error));
395
+ }
396
+
321
397
  wasShown(): void {
322
398
  super.wasShown();
323
399
  this.registerCSSFiles([playerMessagesViewStyles]);
@@ -66,3 +66,18 @@
66
66
  .media-messages-message-unselected {
67
67
  display: none;
68
68
  }
69
+
70
+ .status-error-box {
71
+ font-family: monospace;
72
+ border: 1px solid var(--color-details-hairline);
73
+ padding: 4px;
74
+ }
75
+
76
+ .status-error-field-label {
77
+ padding-right: 10px;
78
+ color: var(--color-text-secondary);
79
+ }
80
+
81
+ .status-error-field-labeled {
82
+ display: flex;
83
+ }
@@ -7,8 +7,12 @@ import * as SDK from '../../core/sdk/sdk.js';
7
7
 
8
8
  import {throttlingManager} from './ThrottlingManager.js';
9
9
 
10
- import type {Conditions, ConditionsList, MobileThrottlingConditionsGroup} from './ThrottlingPresets.js';
11
- import {ThrottlingPresets} from './ThrottlingPresets.js';
10
+ import {
11
+ ThrottlingPresets,
12
+ type Conditions,
13
+ type ConditionsList,
14
+ type MobileThrottlingConditionsGroup,
15
+ } from './ThrottlingPresets.js';
12
16
 
13
17
  const UIStrings = {
14
18
  /**
@@ -6,8 +6,7 @@ import * as Common from '../../core/common/common.js';
6
6
  import * as i18n from '../../core/i18n/i18n.js';
7
7
  import * as SDK from '../../core/sdk/sdk.js';
8
8
 
9
- import type {NetworkThrottlingConditionsGroup} from './ThrottlingPresets.js';
10
- import {ThrottlingPresets} from './ThrottlingPresets.js';
9
+ import {ThrottlingPresets, type NetworkThrottlingConditionsGroup} from './ThrottlingPresets.js';
11
10
 
12
11
  const UIStrings = {
13
12
  /**
@@ -11,10 +11,13 @@ import * as UI from '../../ui/legacy/legacy.js';
11
11
  import {MobileThrottlingSelector} from './MobileThrottlingSelector.js';
12
12
  import {NetworkThrottlingSelector} from './NetworkThrottlingSelector.js';
13
13
 
14
- import type {
15
- Conditions, ConditionsList, MobileThrottlingConditionsGroup, NetworkThrottlingConditionsGroup} from
16
- './ThrottlingPresets.js';
17
- import {ThrottlingPresets} from './ThrottlingPresets.js';
14
+ import {
15
+ ThrottlingPresets,
16
+ type Conditions,
17
+ type ConditionsList,
18
+ type MobileThrottlingConditionsGroup,
19
+ type NetworkThrottlingConditionsGroup,
20
+ } from './ThrottlingPresets.js';
18
21
 
19
22
  const UIStrings = {
20
23
  /**
@@ -51,7 +51,7 @@ import * as PerfUI from '../../ui/legacy/components/perf_ui/perf_ui.js';
51
51
  import * as Components from '../../ui/legacy/components/utils/utils.js';
52
52
  import * as UI from '../../ui/legacy/legacy.js';
53
53
 
54
- import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
54
+ import {type NetworkTimeCalculator} from './NetworkTimeCalculator.js';
55
55
 
56
56
  import {imageNameForResourceType} from '../utils/utils.js';
57
57
 
@@ -8,7 +8,7 @@ import type * as DataGrid from '../../ui/legacy/components/data_grid/data_grid.j
8
8
  import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
10
  import {NetworkGroupNode} from './NetworkDataGridNode.js';
11
- import type {GroupLookupInterface, NetworkLogView} from './NetworkLogView.js';
11
+ import {type GroupLookupInterface, type NetworkLogView} from './NetworkLogView.js';
12
12
 
13
13
  export class NetworkFrameGrouper implements GroupLookupInterface {
14
14
  private parentView: NetworkLogView;
@@ -38,7 +38,7 @@ import * as UI from '../../ui/legacy/legacy.js';
38
38
  import * as NetworkComponents from './components/components.js';
39
39
  import {EventSourceMessagesView} from './EventSourceMessagesView.js';
40
40
 
41
- import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
41
+ import {type NetworkTimeCalculator} from './NetworkTimeCalculator.js';
42
42
  import {RequestCookiesView} from './RequestCookiesView.js';
43
43
  import {RequestHeadersView} from './RequestHeadersView.js';
44
44
  import {RequestPayloadView} from './RequestPayloadView.js';
@@ -55,15 +55,22 @@ import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
55
55
 
56
56
  import networkLogViewStyles from './networkLogView.css.js';
57
57
 
58
- import type {NetworkLogViewInterface, NetworkNode, EventTypes} from './NetworkDataGridNode.js';
59
- import {Events, NetworkGroupNode, NetworkRequestNode} from './NetworkDataGridNode.js';
58
+ import {
59
+ Events,
60
+ NetworkGroupNode,
61
+ NetworkRequestNode,
62
+ type NetworkLogViewInterface,
63
+ type NetworkNode,
64
+ type EventTypes,
65
+ } from './NetworkDataGridNode.js';
60
66
  import {NetworkFrameGrouper} from './NetworkFrameGrouper.js';
61
67
  import {NetworkLogViewColumns} from './NetworkLogViewColumns.js';
62
- import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
68
+
63
69
  import {
64
70
  NetworkTimeBoundary,
65
71
  NetworkTransferDurationCalculator,
66
72
  NetworkTransferTimeCalculator,
73
+ type NetworkTimeCalculator,
67
74
  } from './NetworkTimeCalculator.js';
68
75
 
69
76
  const UIStrings = {
@@ -10,13 +10,14 @@ import * as Components from '../../ui/legacy/components/utils/utils.js';
10
10
  import * as UI from '../../ui/legacy/legacy.js';
11
11
  import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
12
12
 
13
- import type {NetworkNode} from './NetworkDataGridNode.js';
14
- import {NetworkRequestNode} from './NetworkDataGridNode.js';
15
- import type {NetworkLogView} from './NetworkLogView.js';
13
+ import {NetworkRequestNode, type NetworkNode} from './NetworkDataGridNode.js';
14
+ import {type NetworkLogView} from './NetworkLogView.js';
16
15
  import {NetworkManageCustomHeadersView} from './NetworkManageCustomHeadersView.js';
17
- import type {
18
- NetworkTimeCalculator, NetworkTransferDurationCalculator, NetworkTransferTimeCalculator} from
19
- './NetworkTimeCalculator.js';
16
+ import {
17
+ type NetworkTimeCalculator,
18
+ type NetworkTransferDurationCalculator,
19
+ type NetworkTransferTimeCalculator,
20
+ } from './NetworkTimeCalculator.js';
20
21
  import {NetworkWaterfallColumn} from './NetworkWaterfallColumn.js';
21
22
  import {RequestInitiatorView} from './RequestInitiatorView.js';
22
23
 
@@ -48,16 +48,15 @@ import * as MobileThrottling from '../mobile_throttling/mobile_throttling.js';
48
48
  import * as Search from '../search/search.js';
49
49
 
50
50
  import {BlockedURLsPane} from './BlockedURLsPane.js';
51
- import type {RequestActivatedEvent} from './NetworkDataGridNode.js';
52
- import {Events} from './NetworkDataGridNode.js';
51
+
52
+ import {Events, type RequestActivatedEvent} from './NetworkDataGridNode.js';
53
53
  import {NetworkItemView} from './NetworkItemView.js';
54
54
  import {NetworkLogView} from './NetworkLogView.js';
55
55
  import {NetworkOverview} from './NetworkOverview.js';
56
56
  import networkPanelStyles from './networkPanel.css.js';
57
57
  import {NetworkSearchScope} from './NetworkSearchScope.js';
58
58
 
59
- import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
60
- import {NetworkTransferTimeCalculator} from './NetworkTimeCalculator.js';
59
+ import {NetworkTransferTimeCalculator, type NetworkTimeCalculator} from './NetworkTimeCalculator.js';
61
60
 
62
61
  const UIStrings = {
63
62
  /**
@@ -11,11 +11,11 @@ import * as PerfUI from '../../ui/legacy/components/perf_ui/perf_ui.js';
11
11
  import * as UI from '../../ui/legacy/legacy.js';
12
12
  import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
13
13
 
14
- import type {NetworkNode} from './NetworkDataGridNode.js';
14
+ import {type NetworkNode} from './NetworkDataGridNode.js';
15
15
  import {RequestTimeRangeNameToColor} from './NetworkOverview.js';
16
- import type {Label, NetworkTimeCalculator} from './NetworkTimeCalculator.js';
17
- import type {RequestTimeRange} from './RequestTimingView.js';
18
- import {RequestTimeRangeNames, RequestTimingView} from './RequestTimingView.js';
16
+ import {type Label, type NetworkTimeCalculator} from './NetworkTimeCalculator.js';
17
+
18
+ import {RequestTimeRangeNames, RequestTimingView, type RequestTimeRange} from './RequestTimingView.js';
19
19
  import networkingTimingTableStyles from './networkTimingTable.css.js';
20
20
 
21
21
  const BAR_SPACING = 1;
@@ -37,8 +37,7 @@ import * as Logs from '../../models/logs/logs.js';
37
37
  import * as ObjectUI from '../../ui/legacy/components/object_ui/object_ui.js';
38
38
  import * as UI from '../../ui/legacy/legacy.js';
39
39
 
40
- import type {NetworkTimeCalculator} from './NetworkTimeCalculator.js';
41
- import {Events} from './NetworkTimeCalculator.js';
40
+ import {Events, type NetworkTimeCalculator} from './NetworkTimeCalculator.js';
42
41
 
43
42
  import networkingTimingTableStyles from './networkTimingTable.css.js';
44
43
 
@@ -161,6 +161,10 @@ div.raw-headers-row {
161
161
  padding: 2px 0; /* adjust focus ring size */
162
162
  }
163
163
 
164
+ .explanation .link {
165
+ font-weight: normal;
166
+ }
167
+
164
168
  .inline-icon {
165
169
  vertical-align: middle;
166
170
  }
@@ -74,6 +74,19 @@ const UIStrings = {
74
74
  onlyChooseThisOptionIfAn:
75
75
  'Only choose this option if an arbitrary website including this resource does not impose a security risk.',
76
76
  /**
77
+ *@description Message to explain lack of raw headers for a particular network request
78
+ */
79
+ provisionalHeadersAreShownDisableCache: 'Provisional headers are shown. Disable cache to see full headers.',
80
+ /**
81
+ *@description Tooltip to explain lack of raw headers for a particular network request
82
+ */
83
+ onlyProvisionalHeadersAre:
84
+ 'Only provisional headers are available because this request was not sent over the network and instead was served from a local cache, which doesn’t store the original request headers. Disable cache to see full request headers.',
85
+ /**
86
+ *@description Message to explain lack of raw headers for a particular network request
87
+ */
88
+ provisionalHeadersAreShown: 'Provisional headers are shown.',
89
+ /**
77
90
  *@description Text in Request Headers View of the Network panel
78
91
  */
79
92
  referrerPolicy: 'Referrer Policy',
@@ -289,12 +302,44 @@ export class RequestHeadersComponent extends HTMLElement {
289
302
  >
290
303
  ${(this.#showRequestHeadersText && requestHeadersText) ?
291
304
  this.#renderRawHeaders(requestHeadersText, false) : html`
305
+ ${this.#maybeRenderProvisionalHeadersWarning()}
292
306
  ${headers.map(header => this.#renderHeader({...header, headerNotSet: false}))}
293
307
  `}
294
308
  </${Category.litTagName}>
295
309
  `;
296
310
  }
297
311
 
312
+ #maybeRenderProvisionalHeadersWarning(): LitHtml.LitTemplate {
313
+ assertNotNullOrUndefined(this.#request);
314
+ if (this.#request.requestHeadersText() !== undefined) {
315
+ return LitHtml.nothing;
316
+ }
317
+
318
+ let cautionText;
319
+ let cautionTitle = '';
320
+ if (this.#request.cachedInMemory() || this.#request.cached()) {
321
+ cautionText = i18nString(UIStrings.provisionalHeadersAreShownDisableCache);
322
+ cautionTitle = i18nString(UIStrings.onlyProvisionalHeadersAre);
323
+ } else {
324
+ cautionText = i18nString(UIStrings.provisionalHeadersAreShown);
325
+ }
326
+ return html`
327
+ <div class="call-to-action">
328
+ <div class="call-to-action-body">
329
+ <div class="explanation" title=${cautionTitle}>
330
+ <${IconButton.Icon.Icon.litTagName} class="inline-icon" .data=${{
331
+ iconName: 'warning_icon',
332
+ width: '12px',
333
+ height: '12px',
334
+ } as IconButton.Icon.IconData}>
335
+ </${IconButton.Icon.Icon.litTagName}>
336
+ ${cautionText} <x-link href="https://developer.chrome.com/docs/devtools/network/reference/#provisional-headers" class="link">${i18nString(UIStrings.learnMore)}</x-link>
337
+ </div>
338
+ </div>
339
+ </div>
340
+ `;
341
+ }
342
+
298
343
  #renderHeader(header: HeaderDescriptor): LitHtml.TemplateResult {
299
344
  return html`
300
345
  <div class="row">
@@ -310,20 +355,18 @@ export class RequestHeadersComponent extends HTMLElement {
310
355
  return LitHtml.nothing;
311
356
  }
312
357
  return html`
313
- <div class="header-details">
314
- <div class="call-to-action">
315
- <div class="call-to-action-body">
316
- <div class="explanation">${headerDetails.explanation()}</div>
317
- ${headerDetails.examples.map(example => html`
318
- <div class="example">
319
- <code>${example.codeSnippet}</code>
320
- ${example.comment ? html`
321
- <span class="comment">${example.comment()}</span>
322
- ` : ''}
323
- </div>
324
- `)}
325
- ${this.#maybeRenderHeaderDetailsLink(headerDetails)}
326
- </div>
358
+ <div class="call-to-action">
359
+ <div class="call-to-action-body">
360
+ <div class="explanation">${headerDetails.explanation()}</div>
361
+ ${headerDetails.examples.map(example => html`
362
+ <div class="example">
363
+ <code>${example.codeSnippet}</code>
364
+ ${example.comment ? html`
365
+ <span class="comment">${example.comment()}</span>
366
+ ` : ''}
367
+ </div>
368
+ `)}
369
+ ${this.#maybeRenderHeaderDetailsLink(headerDetails)}
327
370
  </div>
328
371
  </div>
329
372
  `;
@@ -36,9 +36,8 @@ import * as Platform from '../../core/platform/platform.js';
36
36
  import type * as SDK from '../../core/sdk/sdk.js';
37
37
  import type * as UI from '../../ui/legacy/legacy.js';
38
38
 
39
- import type {Formatter} from './ProfileDataGrid.js';
40
- import {ProfileDataGridNode, ProfileDataGridTree} from './ProfileDataGrid.js';
41
- import type {TopDownProfileDataGridTree} from './TopDownProfileDataGrid.js';
39
+ import {ProfileDataGridNode, ProfileDataGridTree, type Formatter} from './ProfileDataGrid.js';
40
+ import {type TopDownProfileDataGridTree} from './TopDownProfileDataGrid.js';
42
41
 
43
42
  export interface NodeInfo {
44
43
  ancestor: SDK.ProfileTreeModel.ProfileNode;
@@ -38,9 +38,9 @@ import type * as Protocol from '../../generated/protocol.js';
38
38
 
39
39
  import {ProfileFlameChartDataProvider} from './CPUProfileFlameChart.js';
40
40
 
41
- import type {Formatter, ProfileDataGridNode} from './ProfileDataGrid.js';
42
- import type {ProfileHeader} from './ProfileHeader.js';
43
- import {ProfileEvents, ProfileType} from './ProfileHeader.js';
41
+ import {type Formatter, type ProfileDataGridNode} from './ProfileDataGrid.js';
42
+
43
+ import {ProfileEvents, ProfileType, type ProfileHeader} from './ProfileHeader.js';
44
44
  import {ProfileView, WritableProfileHeader} from './ProfileView.js';
45
45
 
46
46
  const UIStrings = {
@@ -14,11 +14,10 @@ import type * as Protocol from '../../generated/protocol.js';
14
14
 
15
15
  import {ProfileFlameChartDataProvider} from './CPUProfileFlameChart.js';
16
16
 
17
- import type {Samples, IdsRangeChangedEvent} from './HeapTimelineOverview.js';
18
- import {Events, HeapTimelineOverview} from './HeapTimelineOverview.js';
19
- import type {Formatter, ProfileDataGridNode} from './ProfileDataGrid.js';
20
- import type {ProfileHeader} from './ProfileHeader.js';
21
- import {ProfileType, ProfileEvents} from './ProfileHeader.js';
17
+ import {Events, HeapTimelineOverview, type Samples, type IdsRangeChangedEvent} from './HeapTimelineOverview.js';
18
+ import {type Formatter, type ProfileDataGridNode} from './ProfileDataGrid.js';
19
+
20
+ import {ProfileType, ProfileEvents, type ProfileHeader} from './ProfileHeader.js';
22
21
  import {ProfileView, WritableProfileHeader} from './ProfileView.js';
23
22
 
24
23
  const UIStrings = {
@@ -7,8 +7,8 @@ import * as i18n from '../../core/i18n/i18n.js';
7
7
  import * as SDK from '../../core/sdk/sdk.js';
8
8
  import * as UI from '../../ui/legacy/legacy.js';
9
9
 
10
- import type {HeapSnapshotView} from './HeapSnapshotView.js';
11
- import type {ProfileType} from './ProfileHeader.js';
10
+ import {type HeapSnapshotView} from './HeapSnapshotView.js';
11
+ import {type ProfileType} from './ProfileHeader.js';
12
12
  import {ProfilesPanel} from './ProfilesPanel.js';
13
13
  import {instance} from './ProfileTypeRegistry.js';
14
14
 
@@ -37,7 +37,6 @@ import * as Components from '../../ui/legacy/components/utils/utils.js';
37
37
  import type * as SDK from '../../core/sdk/sdk.js';
38
38
  import * as UI from '../../ui/legacy/legacy.js';
39
39
 
40
- import type {HeapSnapshotGridNode} from './HeapSnapshotGridNodes.js';
41
40
  import {
42
41
  AllocationGridNode,
43
42
  HeapSnapshotConstructorNode,
@@ -45,10 +44,11 @@ import {
45
44
  HeapSnapshotRetainingObjectNode,
46
45
  HeapSnapshotObjectNode,
47
46
  HeapSnapshotDiffNode,
47
+ type HeapSnapshotGridNode,
48
48
  } from './HeapSnapshotGridNodes.js';
49
- import type {HeapSnapshotProxy} from './HeapSnapshotProxy.js';
50
- import type {HeapProfileHeader} from './HeapSnapshotView.js';
51
- import type {DataDisplayDelegate} from './ProfileHeader.js';
49
+ import {type HeapSnapshotProxy} from './HeapSnapshotProxy.js';
50
+ import {type HeapProfileHeader} from './HeapSnapshotView.js';
51
+ import {type DataDisplayDelegate} from './ProfileHeader.js';
52
52
 
53
53
  const UIStrings = {
54
54
  /**
@@ -37,13 +37,17 @@ import * as HeapSnapshotModel from '../../models/heap_snapshot_model/heap_snapsh
37
37
  import * as DataGrid from '../../ui/legacy/components/data_grid/data_grid.js';
38
38
  import * as UI from '../../ui/legacy/legacy.js';
39
39
 
40
- import type {ChildrenProvider} from './ChildrenProvider.js';
41
- import type {
42
- AllocationDataGrid, HeapSnapshotConstructorsDataGrid, HeapSnapshotDiffDataGrid, HeapSnapshotSortableDataGrid} from
43
- './HeapSnapshotDataGrids.js';
44
- import {HeapSnapshotSortableDataGridEvents} from './HeapSnapshotDataGrids.js';
45
- import type {HeapSnapshotProviderProxy, HeapSnapshotProxy} from './HeapSnapshotProxy.js';
46
- import type {DataDisplayDelegate} from './ProfileHeader.js';
40
+ import {type ChildrenProvider} from './ChildrenProvider.js';
41
+
42
+ import {
43
+ HeapSnapshotSortableDataGridEvents,
44
+ type AllocationDataGrid,
45
+ type HeapSnapshotConstructorsDataGrid,
46
+ type HeapSnapshotDiffDataGrid,
47
+ type HeapSnapshotSortableDataGrid,
48
+ } from './HeapSnapshotDataGrids.js';
49
+ import {type HeapSnapshotProviderProxy, type HeapSnapshotProxy} from './HeapSnapshotProxy.js';
50
+ import {type DataDisplayDelegate} from './ProfileHeader.js';
47
51
 
48
52
  const UIStrings = {
49
53
  /**
@@ -31,7 +31,7 @@
31
31
  import * as Common from '../../core/common/common.js';
32
32
  import type * as HeapSnapshotModel from '../../models/heap_snapshot_model/heap_snapshot_model.js';
33
33
  import * as i18n from '../../core/i18n/i18n.js';
34
- import type {ChildrenProvider} from './ChildrenProvider.js';
34
+ import {type ChildrenProvider} from './ChildrenProvider.js';
35
35
 
36
36
  const UIStrings = {
37
37
  /**