chrome-devtools-frontend 1.0.923319 → 1.0.925171
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/gni/all_devtools_files.gni +0 -1
- package/config/gni/devtools_grd_files.gni +1 -3
- package/config/gni/devtools_image_files.gni +1 -1
- package/front_end/Images/src/copy_icon.svg +79 -0
- package/front_end/core/common/EventTarget.ts +22 -27
- package/front_end/core/common/Object.ts +28 -26
- package/front_end/core/common/Settings.ts +9 -8
- package/front_end/core/i18n/locales/en-US.json +18 -39
- package/front_end/core/i18n/locales/en-XL.json +18 -39
- package/front_end/core/platform/string-utilities.ts +4 -3
- package/front_end/core/sdk/EmulationModel.ts +1 -1
- package/front_end/core/sdk/NetworkManager.ts +1 -2
- package/front_end/core/sdk/ResourceTreeModel.ts +2 -3
- package/front_end/core/sdk/RuntimeModel.ts +2 -3
- package/front_end/core/sdk/SourceMap.ts +74 -31
- package/front_end/core/sdk/TargetManager.ts +9 -8
- package/front_end/core/sdk/TracingManager.ts +1 -1
- package/front_end/entrypoints/main/MainImpl.ts +1 -1
- package/front_end/entrypoints/node_main/NodeMain.ts +1 -1
- package/front_end/generated/InspectorBackendCommands.js +9 -5
- package/front_end/generated/protocol-mapping.d.ts +1 -0
- package/front_end/generated/protocol-proxy-api.d.ts +1 -0
- package/front_end/generated/protocol.d.ts +13 -2
- package/front_end/legacy_test_runner/application_test_runner/application_test_runner.js +0 -1
- package/front_end/models/bindings/CompilerScriptMapping.ts +24 -6
- package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +30 -30
- package/front_end/models/extensions/ExtensionServer.ts +10 -13
- package/front_end/models/workspace/WorkspaceImpl.ts +1 -1
- package/front_end/models/workspace_diff/WorkspaceDiff.ts +24 -20
- package/front_end/panels/animation/AnimationModel.ts +6 -1
- package/front_end/panels/animation/AnimationTimeline.ts +2 -2
- package/front_end/panels/application/AppManifestView.ts +58 -20
- package/front_end/panels/application/ApplicationPanelCacheSection.ts +1 -59
- package/front_end/panels/application/ApplicationPanelSidebar.ts +15 -163
- package/front_end/panels/application/BackgroundServiceModel.ts +6 -1
- package/front_end/panels/application/BackgroundServiceView.ts +4 -4
- package/front_end/panels/application/DatabaseModel.ts +6 -1
- package/front_end/panels/application/DatabaseTableView.ts +1 -1
- package/front_end/panels/application/IndexedDBModel.ts +9 -1
- package/front_end/panels/application/IndexedDBViews.ts +6 -7
- package/front_end/panels/application/ServiceWorkerCacheViews.ts +1 -1
- package/front_end/panels/application/ServiceWorkersView.ts +3 -3
- package/front_end/panels/application/StorageItemsView.ts +2 -3
- package/front_end/panels/application/StorageView.ts +0 -13
- package/front_end/panels/application/appManifestView.css +8 -0
- package/front_end/panels/application/application-legacy.ts +0 -3
- package/front_end/panels/application/application.ts +0 -4
- package/front_end/panels/browser_debugger/ObjectEventListenersSidebarPane.ts +1 -1
- package/front_end/panels/console/ConsolePinPane.ts +1 -2
- package/front_end/panels/console/ConsoleSidebar.ts +2 -2
- package/front_end/panels/console/ConsoleView.ts +7 -6
- package/front_end/panels/console/ConsoleViewMessage.ts +4 -3
- package/front_end/panels/coverage/CoverageModel.ts +9 -3
- package/front_end/panels/coverage/CoverageView.ts +3 -2
- package/front_end/panels/css_overview/CSSOverviewModel.ts +1 -1
- package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +1 -1
- package/front_end/panels/elements/ComputedStyleWidget.ts +2 -2
- package/front_end/panels/elements/ElementsPanel.ts +3 -3
- package/front_end/panels/elements/StylePropertyTreeElement.ts +14 -4
- package/front_end/panels/elements/StylesSidebarPane.ts +4 -2
- package/front_end/panels/input/InputModel.ts +1 -1
- package/front_end/panels/issues/ComboBoxOfCheckBoxes.ts +2 -4
- package/front_end/panels/issues/HiddenIssuesRow.ts +7 -12
- package/front_end/panels/layers/LayerTreeModel.ts +6 -1
- package/front_end/panels/layers/LayersPanel.ts +3 -4
- package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +1 -0
- package/front_end/panels/media/MainView.ts +22 -19
- package/front_end/panels/media/MediaModel.ts +15 -7
- package/front_end/panels/media/PlayerMessagesView.ts +2 -4
- package/front_end/panels/network/NetworkPanel.ts +6 -6
- package/front_end/panels/network/RequestHeadersView.ts +7 -0
- package/front_end/panels/network/networkLogView.css +5 -0
- package/front_end/panels/profiler/HeapProfileView.ts +14 -4
- package/front_end/panels/profiler/HeapSnapshotView.ts +54 -22
- package/front_end/panels/profiler/LiveHeapProfileView.ts +2 -2
- package/front_end/panels/profiler/ProfileHeader.ts +11 -2
- package/front_end/panels/profiler/ProfileView.ts +3 -3
- package/front_end/panels/profiler/ProfilesPanel.ts +7 -6
- package/front_end/panels/screencast/InputModel.ts +1 -1
- package/front_end/panels/screencast/ScreencastView.ts +1 -1
- package/front_end/panels/security/SecurityModel.ts +5 -1
- package/front_end/panels/security/SecurityPanel.ts +1 -2
- package/front_end/panels/sensors/SensorsView.ts +3 -2
- package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +6 -3
- package/front_end/panels/sources/CSSPlugin.ts +1 -1
- package/front_end/panels/sources/DebuggerPlugin.ts +6 -4
- package/front_end/panels/sources/InplaceFormatterEditorAction.ts +1 -1
- package/front_end/panels/sources/ScriptFormatterEditorAction.ts +1 -1
- package/front_end/panels/sources/SourcesPanel.ts +2 -2
- package/front_end/panels/timeline/TimelineFlameChartView.ts +5 -8
- package/front_end/panels/timeline/TimelineUIUtils.ts +1 -2
- package/front_end/panels/web_audio/AudioContextSelector.ts +4 -6
- package/front_end/panels/web_audio/WebAudioModel.ts +19 -1
- package/front_end/panels/web_audio/WebAudioView.ts +28 -22
- package/front_end/panels/web_audio/graph_visualizer/graph_visualizer.ts +0 -7
- package/front_end/panels/web_audio/web_audio.ts +1 -23
- package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +598 -595
- package/front_end/third_party/lighthouse/locales/en-US.json +6 -0
- package/front_end/third_party/lighthouse/locales/en-XL.json +6 -0
- package/front_end/third_party/lighthouse/report/bundle.d.ts +25 -4
- package/front_end/third_party/lighthouse/report/bundle.js +111 -22
- package/front_end/third_party/lighthouse/report-assets/report.css +120 -12
- package/front_end/third_party/lighthouse/report-assets/report.js +10 -10
- package/front_end/third_party/puppeteer/README.chromium +1 -1
- package/front_end/third_party/puppeteer/package/CHANGELOG.md +66 -0
- package/front_end/third_party/puppeteer/package/README.md +34 -13
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js +5 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/AriaQueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts +18 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js +8 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Connection.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts +22 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js +14 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Coverage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js +10 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DOMWorld.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js +120 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/DeviceDescriptors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/EvalTypes.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts +62 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js +131 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts +40 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js +76 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts +53 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js +82 -13
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/JSHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js +14 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/NetworkManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/PDFOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts +1053 -29
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js +1114 -22
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js +17 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Tracing.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js +6 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/assert.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts +21 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js +47 -28
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/helper.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.d.ts +17 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/global.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js +9 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserFetcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserRunner.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts +10 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js +83 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Launcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js +7 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js +17 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/install.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js +5 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/AriaQueryHandler.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts +18 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js +8 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Connection.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts +22 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js +14 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Coverage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js +10 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DOMWorld.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js +120 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/DeviceDescriptors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/EvalTypes.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts +62 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js +131 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts +40 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js +76 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts +53 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js +82 -13
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/JSHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js +14 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/NetworkManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/PDFOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts +1053 -29
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js +1115 -23
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js +17 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Tracing.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js +4 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/assert.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts +21 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js +32 -13
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/helper.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.d.ts +17 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.js +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/global.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js +9 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserFetcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserRunner.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts +10 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js +83 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Launcher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js +7 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/NodeWebSocketTransport.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/Puppeteer.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js +17 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/install.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +1382 -19726
- package/front_end/third_party/puppeteer/package/package.json +9 -6
- package/front_end/third_party/wasmparser/README.chromium +2 -2
- package/front_end/third_party/wasmparser/package/CHANGELOG.md +13 -0
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmDis.js +50 -10
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmDis.js.map +1 -1
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.d.ts +21 -4
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js +76 -8
- package/front_end/third_party/wasmparser/package/dist/cjs/WasmParser.js.map +1 -1
- package/front_end/third_party/wasmparser/package/dist/esm/WasmDis.js +50 -10
- package/front_end/third_party/wasmparser/package/dist/esm/WasmDis.js.map +1 -1
- package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.d.ts +21 -4
- package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js +76 -8
- package/front_end/third_party/wasmparser/package/dist/esm/WasmParser.js.map +1 -1
- package/front_end/third_party/wasmparser/package/package.json +1 -1
- package/front_end/third_party/wasmparser/package/src/WasmDis.ts +47 -10
- package/front_end/third_party/wasmparser/package/src/WasmParser.ts +75 -5
- package/front_end/ui/components/icon_button/iconButton.css +4 -0
- package/front_end/ui/components/linear_memory_inspector/LinearMemoryInspectorPane.ts +2 -6
- package/front_end/ui/legacy/FilterBar.ts +1 -1
- package/front_end/ui/legacy/GlassPane.ts +1 -3
- package/front_end/ui/legacy/SplitWidget.ts +1 -1
- package/front_end/ui/legacy/UIUtils.ts +3 -4
- package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +3 -3
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +1 -1
- package/front_end/ui/legacy/components/inline_editor/SwatchPopoverHelper.ts +6 -2
- package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +3 -3
- package/front_end/ui/legacy/components/utils/TargetDetachedDialog.ts +1 -1
- package/front_end/ui/legacy/reportView.css +1 -0
- package/package.json +1 -1
- package/scripts/build/rollup.config.js +0 -5
- package/front_end/Images/src/exclamation_mark_circle_icon.svg +0 -65
- package/front_end/legacy_test_runner/application_test_runner/AppcacheTestRunner.js +0 -220
- package/front_end/panels/application/ApplicationCacheItemsView.ts +0 -335
- package/front_end/panels/application/ApplicationCacheModel.ts +0 -206
|
@@ -554,6 +554,12 @@
|
|
|
554
554
|
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
|
|
555
555
|
"message": "Displayed dimensions"
|
|
556
556
|
},
|
|
557
|
+
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
|
|
558
|
+
"message": "Images were larger than their displayed size"
|
|
559
|
+
},
|
|
560
|
+
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
|
|
561
|
+
"message": "Images were appropriate for their displayed size"
|
|
562
|
+
},
|
|
557
563
|
"lighthouse-core/audits/byte-efficiency/uses-responsive-images.js | description": {
|
|
558
564
|
"message": "Serve images that are appropriately-sized to save cellular data and improve load time. [Learn more](https://web.dev/uses-responsive-images/)."
|
|
559
565
|
},
|
|
@@ -554,6 +554,12 @@
|
|
|
554
554
|
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | columnDisplayedDimensions": {
|
|
555
555
|
"message": "D̂íŝṕl̂áŷéd̂ d́îḿêńŝíôńŝ"
|
|
556
556
|
},
|
|
557
|
+
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | failureTitle": {
|
|
558
|
+
"message": "Îḿâǵêś ŵér̂é l̂ár̂ǵêŕ t̂h́âń t̂h́êír̂ d́îśp̂ĺâýêd́ ŝíẑé"
|
|
559
|
+
},
|
|
560
|
+
"lighthouse-core/audits/byte-efficiency/uses-responsive-images-snapshot.js | title": {
|
|
561
|
+
"message": "Îḿâǵêś ŵér̂é âṕp̂ŕôṕr̂íât́ê f́ôŕ t̂h́êír̂ d́îśp̂ĺâýêd́ ŝíẑé"
|
|
562
|
+
},
|
|
557
563
|
"lighthouse-core/audits/byte-efficiency/uses-responsive-images.js | description": {
|
|
558
564
|
"message": "Ŝér̂v́ê ím̂áĝéŝ t́ĥát̂ ár̂é âṕp̂ŕôṕr̂íât́êĺŷ-śîźêd́ t̂ó ŝáv̂é ĉél̂ĺûĺâŕ d̂át̂á âńd̂ ím̂ṕr̂óv̂é l̂óâd́ t̂ím̂é. [L̂éâŕn̂ ḿôŕê](https://web.dev/uses-responsive-images/)."
|
|
559
565
|
},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
export type ComponentName = '3pFilter' | 'audit' | 'categoryHeader' | 'chevron' | 'clump' | 'crc' | 'crcChain' | 'elementScreenshot' | 'envItem' | 'footer' | 'gauge' | 'gaugePwa' | 'heading' | 'metric' | 'metricsToggle' | 'opportunity' | 'opportunityHeader' | 'scorescale' | 'scoresWrapper' | 'snippet' | 'snippetContent' | 'snippetHeader' | 'snippetLine' | 'topbar' | 'warningsToplevel';
|
|
2
|
+
export type ComponentName = '3pFilter' | 'audit' | 'categoryHeader' | 'chevron' | 'clump' | 'crc' | 'crcChain' | 'elementScreenshot' | 'envItem' | 'footer' | 'fraction' | 'gauge' | 'gaugePwa' | 'heading' | 'metric' | 'metricsToggle' | 'opportunity' | 'opportunityHeader' | 'scorescale' | 'scoresWrapper' | 'snippet' | 'snippetContent' | 'snippetHeader' | 'snippetLine' | 'topbar' | 'warningsToplevel';
|
|
3
3
|
export type I18n<T> = any;
|
|
4
4
|
export type CRCSegment = {
|
|
5
5
|
node: any[string];
|
|
@@ -343,9 +343,12 @@ declare class CategoryRenderer {
|
|
|
343
343
|
/**
|
|
344
344
|
* @param {LH.ReportResult.Category} category
|
|
345
345
|
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
346
|
+
* @param {{gatherMode: LH.Result.GatherMode}=} options
|
|
346
347
|
* @return {DocumentFragment}
|
|
347
348
|
*/
|
|
348
|
-
renderCategoryHeader(category: any, groupDefinitions: Record<string, any
|
|
349
|
+
renderCategoryHeader(category: any, groupDefinitions: Record<string, any>, options?: {
|
|
350
|
+
gatherMode: any;
|
|
351
|
+
} | undefined): DocumentFragment;
|
|
349
352
|
/**
|
|
350
353
|
* Renders the group container for a group of audits. Individual audit elements can be added
|
|
351
354
|
* directly to the returned element.
|
|
@@ -384,12 +387,26 @@ declare class CategoryRenderer {
|
|
|
384
387
|
auditRefs: Array<any>;
|
|
385
388
|
description?: string;
|
|
386
389
|
}): Element;
|
|
390
|
+
/**
|
|
391
|
+
* @param {LH.ReportResult.Category} category
|
|
392
|
+
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
393
|
+
* @param {{gatherMode: LH.Result.GatherMode}=} options
|
|
394
|
+
* @return {DocumentFragment}
|
|
395
|
+
*/
|
|
396
|
+
renderCategoryScore(category: any, groupDefinitions: Record<string, any>, options?: {
|
|
397
|
+
gatherMode: any;
|
|
398
|
+
} | undefined): DocumentFragment;
|
|
387
399
|
/**
|
|
388
400
|
* @param {LH.ReportResult.Category} category
|
|
389
401
|
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
390
402
|
* @return {DocumentFragment}
|
|
391
403
|
*/
|
|
392
404
|
renderScoreGauge(category: any, groupDefinitions: Record<string, any>): DocumentFragment;
|
|
405
|
+
/**
|
|
406
|
+
* @param {LH.ReportResult.Category} category
|
|
407
|
+
* @return {DocumentFragment}
|
|
408
|
+
*/
|
|
409
|
+
renderCategoryFraction(category: any): DocumentFragment;
|
|
393
410
|
/**
|
|
394
411
|
* Returns true if an LH category has any non-"notApplicable" audits.
|
|
395
412
|
* @param {LH.ReportResult.Category} category
|
|
@@ -433,12 +450,16 @@ declare class CategoryRenderer {
|
|
|
433
450
|
* ├── …
|
|
434
451
|
* ⋮
|
|
435
452
|
* @param {LH.ReportResult.Category} category
|
|
436
|
-
* @param {Object<string, LH.Result.ReportGroup
|
|
453
|
+
* @param {Object<string, LH.Result.ReportGroup>=} groupDefinitions
|
|
454
|
+
* @param {{environment?: 'PSI', gatherMode: LH.Result.GatherMode}=} options
|
|
437
455
|
* @return {Element}
|
|
438
456
|
*/
|
|
439
457
|
render(category: any, groupDefinitions?: {
|
|
440
458
|
[x: string]: any;
|
|
441
|
-
}
|
|
459
|
+
} | undefined, options?: {
|
|
460
|
+
environment?: 'PSI';
|
|
461
|
+
gatherMode: any;
|
|
462
|
+
} | undefined): Element;
|
|
442
463
|
/**
|
|
443
464
|
* Create a non-semantic span used for hash navigation of categories
|
|
444
465
|
* @param {Element} element
|
|
@@ -848,6 +848,24 @@ function createFooterComponent(dom) {
|
|
|
848
848
|
return el0;
|
|
849
849
|
}
|
|
850
850
|
|
|
851
|
+
/**
|
|
852
|
+
* @param {DOM} dom
|
|
853
|
+
*/
|
|
854
|
+
function createFractionComponent(dom) {
|
|
855
|
+
const el0 = dom.document().createDocumentFragment();
|
|
856
|
+
const el1 = dom.createElement('a', 'lh-fraction__wrapper');
|
|
857
|
+
el1.setAttribute('href', '#');
|
|
858
|
+
const el2 = dom.createElement('div', 'lh-fraction__content-wrapper');
|
|
859
|
+
const el3 = dom.createElement('div', 'lh-fraction__content');
|
|
860
|
+
const el4 = dom.createElement('div', 'lh-fraction__background');
|
|
861
|
+
el3.append(' ', el4, ' ');
|
|
862
|
+
el2.append(' ', el3, ' ');
|
|
863
|
+
const el5 = dom.createElement('div', 'lh-fraction__label');
|
|
864
|
+
el1.append(' ', el2, ' ', el5, ' ');
|
|
865
|
+
el0.append(el1);
|
|
866
|
+
return el0;
|
|
867
|
+
}
|
|
868
|
+
|
|
851
869
|
/**
|
|
852
870
|
* @param {DOM} dom
|
|
853
871
|
*/
|
|
@@ -1000,10 +1018,11 @@ function createMetricComponent(dom) {
|
|
|
1000
1018
|
const el0 = dom.document().createDocumentFragment();
|
|
1001
1019
|
const el1 = dom.createElement('div', 'lh-metric');
|
|
1002
1020
|
const el2 = dom.createElement('div', 'lh-metric__innerwrap');
|
|
1003
|
-
const el3 = dom.createElement('
|
|
1004
|
-
const el4 = dom.createElement('
|
|
1005
|
-
const el5 = dom.createElement('div', 'lh-
|
|
1006
|
-
|
|
1021
|
+
const el3 = dom.createElement('div', 'lh-metric__icon');
|
|
1022
|
+
const el4 = dom.createElement('span', 'lh-metric__title');
|
|
1023
|
+
const el5 = dom.createElement('div', 'lh-metric__value');
|
|
1024
|
+
const el6 = dom.createElement('div', 'lh-metric__description');
|
|
1025
|
+
el2.append(' ', el3, ' ', el4, ' ', el5, ' ', el6, ' ');
|
|
1007
1026
|
el1.append(' ', el2, ' ');
|
|
1008
1027
|
el0.append(el1);
|
|
1009
1028
|
return el0;
|
|
@@ -1391,7 +1410,7 @@ function createWarningsToplevelComponent(dom) {
|
|
|
1391
1410
|
}
|
|
1392
1411
|
|
|
1393
1412
|
|
|
1394
|
-
/** @typedef {'3pFilter'|'audit'|'categoryHeader'|'chevron'|'clump'|'crc'|'crcChain'|'elementScreenshot'|'envItem'|'footer'|'gauge'|'gaugePwa'|'heading'|'metric'|'metricsToggle'|'opportunity'|'opportunityHeader'|'scorescale'|'scoresWrapper'|'snippet'|'snippetContent'|'snippetHeader'|'snippetLine'|'topbar'|'warningsToplevel'} ComponentName */
|
|
1413
|
+
/** @typedef {'3pFilter'|'audit'|'categoryHeader'|'chevron'|'clump'|'crc'|'crcChain'|'elementScreenshot'|'envItem'|'footer'|'fraction'|'gauge'|'gaugePwa'|'heading'|'metric'|'metricsToggle'|'opportunity'|'opportunityHeader'|'scorescale'|'scoresWrapper'|'snippet'|'snippetContent'|'snippetHeader'|'snippetLine'|'topbar'|'warningsToplevel'} ComponentName */
|
|
1395
1414
|
/**
|
|
1396
1415
|
* @param {DOM} dom
|
|
1397
1416
|
* @param {ComponentName} componentName
|
|
@@ -1409,6 +1428,7 @@ function createComponent(dom, componentName) {
|
|
|
1409
1428
|
case 'elementScreenshot': return createElementScreenshotComponent(dom);
|
|
1410
1429
|
case 'envItem': return createEnvItemComponent(dom);
|
|
1411
1430
|
case 'footer': return createFooterComponent(dom);
|
|
1431
|
+
case 'fraction': return createFractionComponent(dom);
|
|
1412
1432
|
case 'gauge': return createGaugeComponent(dom);
|
|
1413
1433
|
case 'gaugePwa': return createGaugePwaComponent(dom);
|
|
1414
1434
|
case 'heading': return createHeadingComponent(dom);
|
|
@@ -1859,13 +1879,14 @@ class CategoryRenderer {
|
|
|
1859
1879
|
/**
|
|
1860
1880
|
* @param {LH.ReportResult.Category} category
|
|
1861
1881
|
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
1882
|
+
* @param {{gatherMode: LH.Result.GatherMode}=} options
|
|
1862
1883
|
* @return {DocumentFragment}
|
|
1863
1884
|
*/
|
|
1864
|
-
renderCategoryHeader(category, groupDefinitions) {
|
|
1885
|
+
renderCategoryHeader(category, groupDefinitions, options) {
|
|
1865
1886
|
const component = this.dom.createComponent('categoryHeader');
|
|
1866
1887
|
|
|
1867
1888
|
const gaugeContainerEl = this.dom.find('.lh-score__gauge', component);
|
|
1868
|
-
const gaugeEl = this.
|
|
1889
|
+
const gaugeEl = this.renderCategoryScore(category, groupDefinitions, options);
|
|
1869
1890
|
gaugeContainerEl.appendChild(gaugeEl);
|
|
1870
1891
|
|
|
1871
1892
|
if (category.description) {
|
|
@@ -1999,6 +2020,19 @@ class CategoryRenderer {
|
|
|
1999
2020
|
return clumpElement;
|
|
2000
2021
|
}
|
|
2001
2022
|
|
|
2023
|
+
/**
|
|
2024
|
+
* @param {LH.ReportResult.Category} category
|
|
2025
|
+
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
2026
|
+
* @param {{gatherMode: LH.Result.GatherMode}=} options
|
|
2027
|
+
* @return {DocumentFragment}
|
|
2028
|
+
*/
|
|
2029
|
+
renderCategoryScore(category, groupDefinitions, options) {
|
|
2030
|
+
if (options && (options.gatherMode === 'snapshot' || options.gatherMode === 'timespan')) {
|
|
2031
|
+
return this.renderCategoryFraction(category);
|
|
2032
|
+
}
|
|
2033
|
+
return this.renderScoreGauge(category, groupDefinitions);
|
|
2034
|
+
}
|
|
2035
|
+
|
|
2002
2036
|
/**
|
|
2003
2037
|
* @param {LH.ReportResult.Category} category
|
|
2004
2038
|
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
@@ -2041,6 +2075,44 @@ class CategoryRenderer {
|
|
|
2041
2075
|
return tmpl;
|
|
2042
2076
|
}
|
|
2043
2077
|
|
|
2078
|
+
/**
|
|
2079
|
+
* @param {LH.ReportResult.Category} category
|
|
2080
|
+
* @return {DocumentFragment}
|
|
2081
|
+
*/
|
|
2082
|
+
renderCategoryFraction(category) {
|
|
2083
|
+
const tmpl = this.dom.createComponent('fraction');
|
|
2084
|
+
const wrapper = this.dom.find('a.lh-fraction__wrapper', tmpl);
|
|
2085
|
+
this.dom.safelySetHref(wrapper, `#${category.id}`);
|
|
2086
|
+
|
|
2087
|
+
const numAudits = category.auditRefs.length;
|
|
2088
|
+
|
|
2089
|
+
let numPassed = 0;
|
|
2090
|
+
let totalWeight = 0;
|
|
2091
|
+
for (const auditRef of category.auditRefs) {
|
|
2092
|
+
totalWeight += auditRef.weight;
|
|
2093
|
+
if (Util.showAsPassed(auditRef.result)) numPassed++;
|
|
2094
|
+
}
|
|
2095
|
+
|
|
2096
|
+
const fraction = numPassed / numAudits;
|
|
2097
|
+
const content = this.dom.find('.lh-fraction__content', tmpl);
|
|
2098
|
+
const text = this.dom.createElement('span');
|
|
2099
|
+
text.textContent = `${numPassed}/${numAudits}`;
|
|
2100
|
+
content.appendChild(text);
|
|
2101
|
+
|
|
2102
|
+
let rating = Util.calculateRating(fraction);
|
|
2103
|
+
|
|
2104
|
+
// If none of the available audits can affect the score, a rating isn't useful.
|
|
2105
|
+
// The flow report should display the fraction with neutral icon and coloring in this case.
|
|
2106
|
+
if (totalWeight === 0) {
|
|
2107
|
+
rating = 'null';
|
|
2108
|
+
}
|
|
2109
|
+
|
|
2110
|
+
wrapper.classList.add(`lh-fraction__wrapper--${rating}`);
|
|
2111
|
+
|
|
2112
|
+
this.dom.find('.lh-fraction__label', tmpl).textContent = category.title;
|
|
2113
|
+
return tmpl;
|
|
2114
|
+
}
|
|
2115
|
+
|
|
2044
2116
|
/**
|
|
2045
2117
|
* Returns true if an LH category has any non-"notApplicable" audits.
|
|
2046
2118
|
* @param {LH.ReportResult.Category} category
|
|
@@ -2122,13 +2194,14 @@ class CategoryRenderer {
|
|
|
2122
2194
|
* ├── …
|
|
2123
2195
|
* ⋮
|
|
2124
2196
|
* @param {LH.ReportResult.Category} category
|
|
2125
|
-
* @param {Object<string, LH.Result.ReportGroup
|
|
2197
|
+
* @param {Object<string, LH.Result.ReportGroup>=} groupDefinitions
|
|
2198
|
+
* @param {{environment?: 'PSI', gatherMode: LH.Result.GatherMode}=} options
|
|
2126
2199
|
* @return {Element}
|
|
2127
2200
|
*/
|
|
2128
|
-
render(category, groupDefinitions = {}) {
|
|
2201
|
+
render(category, groupDefinitions = {}, options) {
|
|
2129
2202
|
const element = this.dom.createElement('div', 'lh-category');
|
|
2130
2203
|
this.createPermalinkSpan(element, category.id);
|
|
2131
|
-
element.appendChild(this.renderCategoryHeader(category, groupDefinitions));
|
|
2204
|
+
element.appendChild(this.renderCategoryHeader(category, groupDefinitions, options));
|
|
2132
2205
|
|
|
2133
2206
|
// Top level clumps for audits, in order they will appear in the report.
|
|
2134
2207
|
/** @type {Map<TopLevelClumpId, Array<LH.ReportResult.AuditRef>>} */
|
|
@@ -3924,20 +3997,20 @@ class PerformanceCategoryRenderer extends CategoryRenderer {
|
|
|
3924
3997
|
/**
|
|
3925
3998
|
* @param {LH.ReportResult.Category} category
|
|
3926
3999
|
* @param {Object<string, LH.Result.ReportGroup>} groups
|
|
3927
|
-
* @param {
|
|
4000
|
+
* @param {{gatherMode: LH.Result.GatherMode, environment?: 'PSI'}=} options
|
|
3928
4001
|
* @return {Element}
|
|
3929
4002
|
* @override
|
|
3930
4003
|
*/
|
|
3931
|
-
render(category, groups,
|
|
4004
|
+
render(category, groups, options) {
|
|
3932
4005
|
const strings = Util.i18n.strings;
|
|
3933
4006
|
const element = this.dom.createElement('div', 'lh-category');
|
|
3934
|
-
if (environment === 'PSI') {
|
|
4007
|
+
if (options && options.environment === 'PSI') {
|
|
3935
4008
|
const gaugeEl = this.dom.createElement('div', 'lh-score__gauge');
|
|
3936
|
-
gaugeEl.appendChild(this.
|
|
4009
|
+
gaugeEl.appendChild(this.renderCategoryScore(category, groups, options));
|
|
3937
4010
|
element.appendChild(gaugeEl);
|
|
3938
4011
|
} else {
|
|
3939
4012
|
this.createPermalinkSpan(element, category.id);
|
|
3940
|
-
element.appendChild(this.renderCategoryHeader(category, groups));
|
|
4013
|
+
element.appendChild(this.renderCategoryHeader(category, groups, options));
|
|
3941
4014
|
}
|
|
3942
4015
|
|
|
3943
4016
|
// Metrics.
|
|
@@ -4180,11 +4253,21 @@ class PwaCategoryRenderer extends CategoryRenderer {
|
|
|
4180
4253
|
}
|
|
4181
4254
|
|
|
4182
4255
|
/**
|
|
4256
|
+
* Alias for backcompat.
|
|
4183
4257
|
* @param {LH.ReportResult.Category} category
|
|
4184
4258
|
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
4185
4259
|
* @return {DocumentFragment}
|
|
4186
4260
|
*/
|
|
4187
4261
|
renderScoreGauge(category, groupDefinitions) {
|
|
4262
|
+
return this.renderCategoryScore(category, groupDefinitions);
|
|
4263
|
+
}
|
|
4264
|
+
|
|
4265
|
+
/**
|
|
4266
|
+
* @param {LH.ReportResult.Category} category
|
|
4267
|
+
* @param {Record<string, LH.Result.ReportGroup>} groupDefinitions
|
|
4268
|
+
* @return {DocumentFragment}
|
|
4269
|
+
*/
|
|
4270
|
+
renderCategoryScore(category, groupDefinitions) {
|
|
4188
4271
|
// Defer to parent-gauge style if category error.
|
|
4189
4272
|
if (category.score === null) {
|
|
4190
4273
|
return super.renderScoreGauge(category, groupDefinitions);
|
|
@@ -4469,11 +4552,15 @@ class ReportRenderer {
|
|
|
4469
4552
|
|
|
4470
4553
|
for (const category of Object.values(report.categories)) {
|
|
4471
4554
|
const renderer = specificCategoryRenderers[category.id] || categoryRenderer;
|
|
4472
|
-
const categoryGauge = renderer.
|
|
4555
|
+
const categoryGauge = renderer.renderCategoryScore(
|
|
4556
|
+
category,
|
|
4557
|
+
report.categoryGroups || {},
|
|
4558
|
+
{gatherMode: report.gatherMode}
|
|
4559
|
+
);
|
|
4473
4560
|
|
|
4474
4561
|
if (Util.isPluginCategory(category.id)) {
|
|
4475
4562
|
pluginGauges.push(categoryGauge);
|
|
4476
|
-
} else if (renderer.
|
|
4563
|
+
} else if (renderer.renderCategoryScore === categoryRenderer.renderCategoryScore) {
|
|
4477
4564
|
// The renderer for default categories is just the default CategoryRenderer.
|
|
4478
4565
|
// If the functions are equal, then renderer is an instance of CategoryRenderer.
|
|
4479
4566
|
// For example, the PWA category uses PwaCategoryRenderer, which overrides
|
|
@@ -4547,12 +4634,17 @@ class ReportRenderer {
|
|
|
4547
4634
|
}
|
|
4548
4635
|
|
|
4549
4636
|
const categories = reportSection.appendChild(this._dom.createElement('div', 'lh-categories'));
|
|
4637
|
+
const categoryOptions = {gatherMode: report.gatherMode};
|
|
4550
4638
|
for (const category of Object.values(report.categories)) {
|
|
4551
4639
|
const renderer = specificCategoryRenderers[category.id] || categoryRenderer;
|
|
4552
4640
|
// .lh-category-wrapper is full-width and provides horizontal rules between categories.
|
|
4553
4641
|
// .lh-category within has the max-width: var(--report-width);
|
|
4554
4642
|
const wrapper = renderer.dom.createChildOf(categories, 'div', 'lh-category-wrapper');
|
|
4555
|
-
wrapper.appendChild(renderer.render(
|
|
4643
|
+
wrapper.appendChild(renderer.render(
|
|
4644
|
+
category,
|
|
4645
|
+
report.categoryGroups,
|
|
4646
|
+
categoryOptions
|
|
4647
|
+
));
|
|
4556
4648
|
}
|
|
4557
4649
|
|
|
4558
4650
|
const reportFragment = this._dom.createFragment();
|
|
@@ -5565,16 +5657,14 @@ class ReportUIFeatures {
|
|
|
5565
5657
|
return !thirdPartyFilterAuditExclusions.includes(containingAudit.id);
|
|
5566
5658
|
});
|
|
5567
5659
|
|
|
5568
|
-
tablesWithUrls.forEach((tableEl
|
|
5660
|
+
tablesWithUrls.forEach((tableEl) => {
|
|
5569
5661
|
const rowEls = getTableRows(tableEl);
|
|
5570
5662
|
const thirdPartyRows = this._getThirdPartyRows(rowEls, this.json.finalUrl);
|
|
5571
5663
|
|
|
5572
5664
|
// create input box
|
|
5573
5665
|
const filterTemplate = this._dom.createComponent('3pFilter');
|
|
5574
5666
|
const filterInput = this._dom.find('input', filterTemplate);
|
|
5575
|
-
const id = `lh-3p-filter-label--${index}`;
|
|
5576
5667
|
|
|
5577
|
-
filterInput.id = id;
|
|
5578
5668
|
filterInput.addEventListener('change', e => {
|
|
5579
5669
|
const shouldHideThirdParty = e.target instanceof HTMLInputElement && !e.target.checked;
|
|
5580
5670
|
let even = true;
|
|
@@ -5596,7 +5686,6 @@ class ReportUIFeatures {
|
|
|
5596
5686
|
}
|
|
5597
5687
|
});
|
|
5598
5688
|
|
|
5599
|
-
this._dom.find('label', filterTemplate).setAttribute('for', id);
|
|
5600
5689
|
this._dom.find('.lh-3p-filter-count', filterTemplate).textContent =
|
|
5601
5690
|
`${thirdPartyRows.length}`;
|
|
5602
5691
|
this._dom.find('.lh-3p-ui-string', filterTemplate).textContent =
|
|
@@ -104,8 +104,8 @@
|
|
|
104
104
|
--icon-square-size: calc(var(--score-icon-size) * 0.88);
|
|
105
105
|
--image-preview-size: 48px;
|
|
106
106
|
--metric-toggle-lines-fill: #7F7F7F;
|
|
107
|
+
--metric-value-font-size: 28px;
|
|
107
108
|
--metrics-toggle-background-color: var(--color-gray-200);
|
|
108
|
-
--screenshot-overlay-background: rgba(0, 0, 0, 0.3);
|
|
109
109
|
--plugin-badge-background-color: var(--color-white);
|
|
110
110
|
--plugin-badge-size-big: calc(var(--gauge-circle-size-big) / 2.7);
|
|
111
111
|
--plugin-badge-size: calc(var(--gauge-circle-size) / 2.7);
|
|
@@ -130,9 +130,11 @@
|
|
|
130
130
|
--score-icon-margin-right: 12px;
|
|
131
131
|
--score-icon-margin: 0 var(--score-icon-margin-right) 0 var(--score-icon-margin-left);
|
|
132
132
|
--score-icon-size: 12px;
|
|
133
|
+
--score-icon-size-big: 16px;
|
|
133
134
|
--scores-container-padding: 20px 0 20px 0;
|
|
134
135
|
--scorescale-height: 6px;
|
|
135
136
|
--scorescale-width: 18px;
|
|
137
|
+
--screenshot-overlay-background: rgba(0, 0, 0, 0.3);
|
|
136
138
|
--section-padding-vertical: 12px;
|
|
137
139
|
--snippet-background-color: var(--color-gray-50);
|
|
138
140
|
--snippet-color: #0938C2;
|
|
@@ -677,7 +679,11 @@
|
|
|
677
679
|
|
|
678
680
|
.lh-metric__innerwrap {
|
|
679
681
|
display: grid;
|
|
680
|
-
|
|
682
|
+
/**
|
|
683
|
+
* Icon -- Metric Name
|
|
684
|
+
* -- Metric Value
|
|
685
|
+
*/
|
|
686
|
+
grid-template-columns: calc(var(--score-icon-size) + var(--score-icon-margin-left) + var(--score-icon-margin-right)) 1fr;
|
|
681
687
|
align-items: center;
|
|
682
688
|
padding: 10px 0;
|
|
683
689
|
}
|
|
@@ -703,14 +709,30 @@
|
|
|
703
709
|
.lh-metric__description {
|
|
704
710
|
display: none;
|
|
705
711
|
grid-column-start: 2;
|
|
706
|
-
grid-column-end:
|
|
712
|
+
grid-column-end: 4;
|
|
707
713
|
color: var(--report-text-color-secondary);
|
|
708
714
|
}
|
|
709
715
|
|
|
710
716
|
.lh-metric__value {
|
|
717
|
+
font-size: var(--metric-value-font-size);
|
|
718
|
+
margin: calc(var(--default-padding) / 2) 0;
|
|
711
719
|
white-space: nowrap; /* No wrapping between metric value and the icon */
|
|
712
720
|
font-weight: 500;
|
|
713
|
-
|
|
721
|
+
grid-column-start: 2;
|
|
722
|
+
}
|
|
723
|
+
|
|
724
|
+
/* Change the grid to 3 columns for narrow viewport. */
|
|
725
|
+
@media screen and (max-width: 535px) {
|
|
726
|
+
.lh-metric__innerwrap {
|
|
727
|
+
/**
|
|
728
|
+
* Icon -- Metric Name -- Metric Value
|
|
729
|
+
*/
|
|
730
|
+
grid-template-columns: calc(var(--score-icon-size) + var(--score-icon-margin-left) + var(--score-icon-margin-right)) 2fr 1fr;
|
|
731
|
+
}
|
|
732
|
+
.lh-metric__value {
|
|
733
|
+
justify-self: end;
|
|
734
|
+
grid-column-start: unset;
|
|
735
|
+
}
|
|
714
736
|
}
|
|
715
737
|
|
|
716
738
|
/* No-JS toggle switch */
|
|
@@ -777,7 +799,7 @@
|
|
|
777
799
|
flex: 1;
|
|
778
800
|
}
|
|
779
801
|
|
|
780
|
-
.lh-
|
|
802
|
+
.lh-metric__icon,
|
|
781
803
|
.lh-scorescale-range::before {
|
|
782
804
|
content: '';
|
|
783
805
|
width: var(--score-icon-size);
|
|
@@ -789,7 +811,7 @@
|
|
|
789
811
|
.lh-metric--pass .lh-metric__value {
|
|
790
812
|
color: var(--color-pass-secondary);
|
|
791
813
|
}
|
|
792
|
-
.lh-metric--pass .lh-
|
|
814
|
+
.lh-metric--pass .lh-metric__icon {
|
|
793
815
|
border-radius: 100%;
|
|
794
816
|
background: var(--color-pass);
|
|
795
817
|
}
|
|
@@ -797,7 +819,7 @@
|
|
|
797
819
|
.lh-metric--average .lh-metric__value {
|
|
798
820
|
color: var(--color-average-secondary);
|
|
799
821
|
}
|
|
800
|
-
.lh-metric--average .lh-
|
|
822
|
+
.lh-metric--average .lh-metric__icon {
|
|
801
823
|
background: var(--color-average);
|
|
802
824
|
width: var(--icon-square-size);
|
|
803
825
|
height: var(--icon-square-size);
|
|
@@ -806,8 +828,8 @@
|
|
|
806
828
|
.lh-metric--fail .lh-metric__value {
|
|
807
829
|
color: var(--color-fail-secondary);
|
|
808
830
|
}
|
|
809
|
-
.lh-metric--fail .lh-
|
|
810
|
-
.lh-metric--error .lh-
|
|
831
|
+
.lh-metric--fail .lh-metric__icon,
|
|
832
|
+
.lh-metric--error .lh-metric__icon {
|
|
811
833
|
border-left: calc(var(--score-icon-size) / 2) solid transparent;
|
|
812
834
|
border-right: calc(var(--score-icon-size) / 2) solid transparent;
|
|
813
835
|
border-bottom: var(--score-icon-size) solid var(--color-fail);
|
|
@@ -1153,6 +1175,80 @@
|
|
|
1153
1175
|
stroke: var(--color-not-applicable);
|
|
1154
1176
|
}
|
|
1155
1177
|
|
|
1178
|
+
.lh-fraction__wrapper .lh-fraction__content::before {
|
|
1179
|
+
content: '';
|
|
1180
|
+
height: var(--score-icon-size);
|
|
1181
|
+
width: var(--score-icon-size);
|
|
1182
|
+
margin: var(--score-icon-margin);
|
|
1183
|
+
display: inline-block;
|
|
1184
|
+
}
|
|
1185
|
+
.lh-fraction__wrapper--pass .lh-fraction__content {
|
|
1186
|
+
color: var(--color-pass);
|
|
1187
|
+
}
|
|
1188
|
+
.lh-fraction__wrapper--pass .lh-fraction__background {
|
|
1189
|
+
background-color: var(--color-pass);
|
|
1190
|
+
}
|
|
1191
|
+
.lh-fraction__wrapper--pass .lh-fraction__content::before {
|
|
1192
|
+
background-color: var(--color-pass);
|
|
1193
|
+
border-radius: 50%;
|
|
1194
|
+
}
|
|
1195
|
+
.lh-fraction__wrapper--average .lh-fraction__content {
|
|
1196
|
+
color: var(--color-average);
|
|
1197
|
+
}
|
|
1198
|
+
.lh-fraction__wrapper--average .lh-fraction__background {
|
|
1199
|
+
background-color: var(--color-average);
|
|
1200
|
+
}
|
|
1201
|
+
.lh-fraction__wrapper--average .lh-fraction__content::before {
|
|
1202
|
+
background-color: var(--color-average);
|
|
1203
|
+
}
|
|
1204
|
+
.lh-fraction__wrapper--fail .lh-fraction__content {
|
|
1205
|
+
color: var(--color-fail);
|
|
1206
|
+
}
|
|
1207
|
+
.lh-fraction__wrapper--fail .lh-fraction__background {
|
|
1208
|
+
background-color: var(--color-fail);
|
|
1209
|
+
}
|
|
1210
|
+
.lh-fraction__wrapper--fail .lh-fraction__content::before {
|
|
1211
|
+
border-left: calc(var(--score-icon-size) / 2) solid transparent;
|
|
1212
|
+
border-right: calc(var(--score-icon-size) / 2) solid transparent;
|
|
1213
|
+
border-bottom: var(--score-icon-size) solid var(--color-fail);
|
|
1214
|
+
}
|
|
1215
|
+
.lh-fraction__wrapper--null .lh-fraction__content {
|
|
1216
|
+
color: var(--color-gray-700);
|
|
1217
|
+
}
|
|
1218
|
+
.lh-fraction__wrapper--null .lh-fraction__background {
|
|
1219
|
+
background-color: var(--color-gray-700);
|
|
1220
|
+
}
|
|
1221
|
+
.lh-fraction__wrapper--null .lh-fraction__content::before {
|
|
1222
|
+
border-radius: 50%;
|
|
1223
|
+
border: 2px solid var(--color-gray-700);
|
|
1224
|
+
}
|
|
1225
|
+
|
|
1226
|
+
.lh-fraction__background {
|
|
1227
|
+
position: absolute;
|
|
1228
|
+
height: 100%;
|
|
1229
|
+
width: 100%;
|
|
1230
|
+
border-radius: calc(var(--gauge-circle-size) / 2);
|
|
1231
|
+
opacity: 0.1;
|
|
1232
|
+
z-index: -1;
|
|
1233
|
+
}
|
|
1234
|
+
|
|
1235
|
+
.lh-fraction__content-wrapper {
|
|
1236
|
+
height: var(--gauge-circle-size);
|
|
1237
|
+
display: flex;
|
|
1238
|
+
align-items: center;
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1241
|
+
.lh-fraction__content {
|
|
1242
|
+
display: flex;
|
|
1243
|
+
position: relative;
|
|
1244
|
+
align-items: center;
|
|
1245
|
+
justify-content: center;
|
|
1246
|
+
font-size: var(--gauge-label-font-size);
|
|
1247
|
+
width: max-content;
|
|
1248
|
+
padding: 1em;
|
|
1249
|
+
min-width: 6em;
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1156
1252
|
.lh-gauge {
|
|
1157
1253
|
stroke-linecap: round;
|
|
1158
1254
|
width: var(--gauge-circle-size);
|
|
@@ -1181,6 +1277,10 @@
|
|
|
1181
1277
|
.lh-category .lh-gauge__svg-wrapper {
|
|
1182
1278
|
--gauge-circle-size: var(--gauge-circle-size-big);
|
|
1183
1279
|
}
|
|
1280
|
+
.lh-category .lh-fraction__wrapper {
|
|
1281
|
+
--gauge-circle-size: var(--gauge-circle-size-big);
|
|
1282
|
+
--score-icon-size: var(--score-icon-size-big)
|
|
1283
|
+
}
|
|
1184
1284
|
|
|
1185
1285
|
/* The plugin badge overlay */
|
|
1186
1286
|
.lh-gauge__wrapper--plugin .lh-gauge__svg-wrapper::before {
|
|
@@ -1225,7 +1325,8 @@
|
|
|
1225
1325
|
--gauge-percentage-font-size: var(--gauge-percentage-font-size-big);
|
|
1226
1326
|
}
|
|
1227
1327
|
|
|
1228
|
-
.lh-gauge__wrapper
|
|
1328
|
+
.lh-gauge__wrapper,
|
|
1329
|
+
.lh-fraction__wrapper {
|
|
1229
1330
|
position: relative;
|
|
1230
1331
|
display: flex;
|
|
1231
1332
|
align-items: center;
|
|
@@ -1240,7 +1341,8 @@
|
|
|
1240
1341
|
will-change: opacity; /* Only using for layer promotion */
|
|
1241
1342
|
}
|
|
1242
1343
|
|
|
1243
|
-
.lh-gauge__label
|
|
1344
|
+
.lh-gauge__label,
|
|
1345
|
+
.lh-fraction__label {
|
|
1244
1346
|
font-size: var(--gauge-label-font-size);
|
|
1245
1347
|
line-height: var(--gauge-label-line-height);
|
|
1246
1348
|
margin-top: 10px;
|
|
@@ -1249,16 +1351,22 @@
|
|
|
1249
1351
|
}
|
|
1250
1352
|
|
|
1251
1353
|
/* TODO(#8185) use more BEM (.lh-gauge__label--big) instead of relying on descendant selector */
|
|
1252
|
-
.lh-category .lh-gauge__label
|
|
1354
|
+
.lh-category .lh-gauge__label,
|
|
1355
|
+
.lh-category .lh-fraction__label {
|
|
1253
1356
|
--gauge-label-font-size: var(--gauge-label-font-size-big);
|
|
1254
1357
|
--gauge-label-line-height: var(--gauge-label-line-height-big);
|
|
1255
1358
|
margin-top: 14px;
|
|
1256
1359
|
}
|
|
1360
|
+
.lh-category .lh-fraction__content {
|
|
1361
|
+
--gauge-label-font-size: var(--gauge-label-font-size-big);
|
|
1362
|
+
}
|
|
1257
1363
|
|
|
1258
1364
|
|
|
1259
1365
|
.lh-scores-header .lh-gauge__wrapper,
|
|
1366
|
+
.lh-scores-header .lh-fraction__wrapper,
|
|
1260
1367
|
.lh-scores-header .lh-gauge--pwa__wrapper,
|
|
1261
1368
|
.lh-sticky-header .lh-gauge__wrapper,
|
|
1369
|
+
.lh-sticky-header .lh-fraction__wrapper,
|
|
1262
1370
|
.lh-sticky-header .lh-gauge--pwa__wrapper {
|
|
1263
1371
|
width: var(--gauge-wrapper-width);
|
|
1264
1372
|
}
|