chrome-devtools-frontend 1.0.1376716 → 1.0.1380117
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/devtools_grd_files.gni +15 -7
- package/config/gni/devtools_image_files.gni +2 -0
- package/front_end/Images/src/animation.svg +3 -0
- package/front_end/Images/src/brush-2.svg +3 -0
- package/front_end/core/common/SettingRegistration.ts +1 -1
- package/front_end/core/host/AidaClient.ts +1 -0
- package/front_end/core/host/InspectorFrontendHost.ts +4 -0
- package/front_end/core/i18n/ByteUtilities.test.ts +34 -0
- package/front_end/core/i18n/ByteUtilities.ts +65 -0
- package/front_end/core/i18n/NumberFormatter.ts +75 -0
- package/front_end/core/i18n/i18n.ts +4 -0
- package/front_end/core/i18n/time-utilities.test.ts +20 -2
- package/front_end/core/i18n/time-utilities.ts +125 -86
- package/front_end/core/platform/NumberUtilities.test.ts +3 -26
- package/front_end/core/platform/NumberUtilities.ts +0 -20
- package/front_end/core/root/Runtime.ts +6 -3
- package/front_end/core/sdk/CPUThrottlingManager.ts +4 -0
- package/front_end/core/sdk/CSSContainerQuery.test.ts +10 -16
- package/front_end/core/sdk/CSSContainerQuery.ts +3 -15
- package/front_end/core/sdk/CSSMatchedStyles.test.ts +4 -0
- package/front_end/core/sdk/CSSMatchedStyles.ts +5 -5
- package/front_end/core/sdk/CSSModel.ts +18 -0
- package/front_end/core/sdk/CSSPropertyParser.test.ts +16 -1
- package/front_end/core/sdk/CSSPropertyParser.ts +2 -2
- package/front_end/core/sdk/sdk-meta.ts +8 -0
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +3 -3
- package/front_end/generated/ARIAProperties.js +4 -0
- package/front_end/generated/InspectorBackendCommands.js +8 -6
- package/front_end/generated/SupportedCSSProperties.js +17 -4
- package/front_end/generated/protocol-mapping.d.ts +15 -1
- package/front_end/generated/protocol-proxy-api.d.ts +14 -1
- package/front_end/generated/protocol.ts +26 -2
- package/front_end/models/extensions/ExtensionAPI.ts +9 -1
- package/front_end/models/heap_snapshot_model/HeapSnapshotModel.ts +2 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +8 -21
- package/front_end/models/live-metrics/web-vitals-injected/{rollup.config.js → rollup.config.mjs} +1 -1
- package/front_end/models/persistence/EditFileSystemView.ts +19 -9
- package/front_end/models/persistence/WorkspaceSettingsTab.ts +50 -54
- package/front_end/models/persistence/editFileSystemView.css +35 -15
- package/front_end/models/persistence/workspaceSettingsTab.css +21 -87
- package/front_end/models/timeline_model/timeline_model.ts +0 -6
- package/front_end/models/trace/Processor.test.ts +18 -17
- package/front_end/models/trace/Processor.ts +10 -14
- package/front_end/models/trace/README.md +0 -1
- package/front_end/models/{timeline_model → trace/extras}/TimelineJSProfile.ts +19 -29
- package/front_end/models/{timeline_model/TimelineModelFilter.test.ts → trace/extras/TraceFilter.test.ts} +15 -17
- package/front_end/models/trace/extras/TraceFilter.ts +62 -0
- package/front_end/models/{timeline_model/TimelineProfileTree.test.ts → trace/extras/TraceTree.test.ts} +44 -43
- package/front_end/models/{timeline_model/TimelineProfileTree.ts → trace/extras/TraceTree.ts} +65 -59
- package/front_end/models/trace/extras/extras.ts +3 -0
- package/front_end/models/trace/handlers/AnimationHandler.ts +0 -8
- package/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +1 -11
- package/front_end/models/trace/handlers/FramesHandler.test.ts +1 -6
- package/front_end/models/trace/handlers/FramesHandler.ts +1 -14
- package/front_end/models/trace/handlers/GPUHandler.test.ts +0 -2
- package/front_end/models/trace/handlers/GPUHandler.ts +1 -25
- package/front_end/models/trace/handlers/ImagePaintingHandler.ts +3 -0
- package/front_end/models/trace/handlers/InitiatorsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/InitiatorsHandler.ts +0 -20
- package/front_end/models/trace/handlers/InvalidationsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/InvalidationsHandler.ts +0 -18
- package/front_end/models/trace/handlers/LargestImagePaintHandler.test.ts +2 -2
- package/front_end/models/trace/handlers/LargestImagePaintHandler.ts +63 -3
- package/front_end/models/trace/handlers/LargestTextPaintHandler.ts +3 -0
- package/front_end/models/trace/handlers/LayerTreeHandler.test.ts +0 -2
- package/front_end/models/trace/handlers/LayerTreeHandler.ts +1 -18
- package/front_end/models/trace/handlers/LayoutShiftsHandler.test.ts +0 -3
- package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +1 -20
- package/front_end/models/trace/handlers/MemoryHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/MemoryHandler.ts +3 -0
- package/front_end/models/trace/handlers/MetaHandler.test.ts +1 -32
- package/front_end/models/trace/handlers/MetaHandler.ts +2 -30
- package/front_end/models/trace/handlers/NetworkRequestsHandler.test.ts +0 -26
- package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +4 -23
- package/front_end/models/trace/handlers/PageFramesHandler.ts +3 -0
- package/front_end/models/trace/handlers/RendererHandler.test.ts +0 -4
- package/front_end/models/trace/handlers/RendererHandler.ts +1 -24
- package/front_end/models/trace/handlers/SamplesHandler.test.ts +0 -5
- package/front_end/models/trace/handlers/SamplesHandler.ts +0 -26
- package/front_end/models/trace/handlers/ScreenshotsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/SelectorStatsHandler.ts +3 -0
- package/front_end/models/trace/handlers/ServerTimingsHandler.ts +1 -16
- package/front_end/models/trace/handlers/Threads.test.ts +1 -2
- package/front_end/models/trace/handlers/UserInteractionsHandler.test.ts +4 -27
- package/front_end/models/trace/handlers/UserInteractionsHandler.ts +16 -25
- package/front_end/models/trace/handlers/UserTimingsHandler.ts +0 -17
- package/front_end/models/trace/handlers/WorkersHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/WorkersHandler.ts +0 -23
- package/front_end/models/trace/handlers/types.ts +1 -8
- package/front_end/models/trace/insights/{CumulativeLayoutShift.test.ts → CLSCulprits.test.ts} +21 -21
- package/front_end/models/trace/insights/{CumulativeLayoutShift.ts → CLSCulprits.ts} +24 -5
- package/front_end/models/trace/insights/Common.ts +5 -55
- package/front_end/models/trace/insights/DocumentLatency.test.ts +2 -2
- package/front_end/models/trace/insights/DocumentLatency.ts +26 -6
- package/front_end/models/trace/insights/FontDisplay.ts +24 -5
- package/front_end/models/trace/insights/InteractionToNextPaint.test.ts +1 -1
- package/front_end/models/trace/insights/InteractionToNextPaint.ts +26 -6
- package/front_end/models/trace/insights/LCPDiscovery.test.ts +58 -0
- package/front_end/models/trace/insights/LCPDiscovery.ts +101 -0
- package/front_end/models/trace/insights/{LargestContentfulPaint.test.ts → LCPPhases.test.ts} +6 -28
- package/front_end/models/trace/insights/{LargestContentfulPaint.ts → LCPPhases.ts} +37 -38
- package/front_end/models/trace/insights/{InsightRunners.ts → Models.ts} +4 -3
- package/front_end/models/trace/insights/RenderBlocking.test.ts +1 -1
- package/front_end/models/trace/insights/RenderBlocking.ts +33 -28
- package/front_end/models/trace/insights/SlowCSSSelector.ts +26 -5
- package/front_end/models/trace/insights/{ThirdPartyWeb.test.ts → ThirdParties.test.ts} +3 -3
- package/front_end/models/trace/insights/{ThirdPartyWeb.ts → ThirdParties.ts} +24 -5
- package/front_end/models/trace/insights/Viewport.test.ts +1 -1
- package/front_end/models/trace/insights/Viewport.ts +27 -9
- package/front_end/models/trace/insights/insights.ts +1 -1
- package/front_end/models/trace/insights/types.ts +11 -9
- package/front_end/models/trace/types/TraceEvents.ts +51 -22
- package/front_end/panels/application/SharedStorageItemsView.test.ts +3 -3
- package/front_end/panels/application/SharedStorageItemsView.ts +5 -3
- package/front_end/panels/application/StorageView.ts +3 -3
- package/front_end/panels/application/components/StorageMetadataView.ts +1 -2
- package/front_end/panels/browser_debugger/XHRBreakpointsSidebarPane.ts +34 -31
- package/front_end/panels/coverage/CoverageView.ts +3 -3
- package/front_end/panels/elements/ComputedStyleModel.ts +9 -2
- package/front_end/panels/elements/ComputedStyleWidget.test.ts +72 -0
- package/front_end/panels/elements/ComputedStyleWidget.ts +12 -0
- package/front_end/panels/elements/ElementStatePaneWidget.test.ts +84 -30
- package/front_end/panels/elements/ElementStatePaneWidget.ts +42 -24
- package/front_end/panels/elements/ElementsTreeElement.ts +24 -11
- package/front_end/panels/elements/MetricsSidebarPane.ts +12 -7
- package/front_end/panels/elements/PropertyMatchers.ts +3 -0
- package/front_end/panels/elements/StylePropertiesSection.ts +15 -6
- package/front_end/panels/elements/StylePropertyTreeElement.test.ts +3 -1
- package/front_end/panels/elements/StylePropertyTreeElement.ts +8 -3
- package/front_end/panels/elements/stylePropertiesTreeOutline.css +2 -2
- package/front_end/panels/explain/components/ConsoleInsight.ts +8 -18
- package/front_end/panels/freestyler/AiAgent.test.ts +58 -1
- package/front_end/panels/freestyler/AiAgent.ts +58 -3
- package/front_end/panels/freestyler/DrJonesFileAgent.test.ts +99 -23
- package/front_end/panels/freestyler/DrJonesFileAgent.ts +53 -20
- package/front_end/panels/freestyler/DrJonesNetworkAgent.test.ts +15 -7
- package/front_end/panels/freestyler/DrJonesNetworkAgent.ts +36 -15
- package/front_end/panels/freestyler/DrJonesPerformanceAgent.test.ts +6 -6
- package/front_end/panels/freestyler/DrJonesPerformanceAgent.ts +48 -8
- package/front_end/panels/freestyler/FreestylerAgent.test.ts +15 -14
- package/front_end/panels/freestyler/FreestylerAgent.ts +52 -8
- package/front_end/panels/freestyler/FreestylerPanel.test.ts +539 -39
- package/front_end/panels/freestyler/FreestylerPanel.ts +349 -215
- package/front_end/panels/freestyler/components/FreestylerChatUi.test.ts +126 -34
- package/front_end/panels/freestyler/components/FreestylerChatUi.ts +320 -268
- package/front_end/panels/freestyler/components/UserActionRow.ts +156 -47
- package/front_end/panels/freestyler/components/freestylerChatUi.css +69 -34
- package/front_end/panels/freestyler/components/userActionRow.css +40 -67
- package/front_end/panels/freestyler/freestyler-meta.ts +3 -11
- package/front_end/panels/issues/components/HideIssuesMenu.ts +2 -11
- package/front_end/panels/layer_viewer/LayerDetailsView.ts +1 -2
- package/front_end/panels/layer_viewer/PaintProfilerView.ts +5 -5
- package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +46 -0
- package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +26 -17
- package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +25 -19
- package/front_end/panels/network/BinaryResourceView.ts +6 -7
- package/front_end/panels/network/EventSourceMessagesView.ts +1 -1
- package/front_end/panels/network/NetworkDataGridNode.ts +3 -3
- package/front_end/panels/network/NetworkLogView.ts +7 -8
- package/front_end/panels/network/RequestTimingView.test.ts +35 -1
- package/front_end/panels/network/RequestTimingView.ts +96 -0
- package/front_end/panels/network/ResourceWebSocketFrameView.ts +2 -2
- package/front_end/panels/network/networkTimingTable.css +2 -1
- package/front_end/panels/performance_monitor/PerformanceMonitor.ts +1 -1
- package/front_end/panels/profiler/HeapProfileView.ts +3 -3
- package/front_end/panels/profiler/HeapSnapshotView.ts +2 -2
- package/front_end/panels/profiler/HeapTimelineOverview.ts +12 -12
- package/front_end/panels/profiler/IsolateSelector.ts +3 -4
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +1 -1
- package/front_end/panels/profiler/ProfileSidebarTreeElement.ts +7 -6
- package/front_end/panels/profiler/ProfileView.ts +1 -1
- package/front_end/panels/recorder/components/RecordingView.ts +2 -2
- package/front_end/panels/recorder/injected/{rollup.config.js → rollup.config.mjs} +1 -1
- package/front_end/panels/recorder/recorderController.css +0 -4
- package/front_end/panels/security/CookieReportTreeElement.ts +1 -9
- package/front_end/panels/security/CookieReportView.ts +120 -0
- package/front_end/panels/security/SecurityPanel.ts +8 -2
- package/front_end/panels/security/cookieReportView.css +46 -0
- package/front_end/panels/security/sidebar.css +1 -2
- package/front_end/panels/sensors/LocationsSettingsTab.ts +26 -11
- package/front_end/panels/sensors/locationsSettingsTab.css +18 -18
- package/front_end/panels/settings/AISettingsTab.ts +6 -15
- package/front_end/panels/settings/KeybindsSettingsTab.ts +1 -1
- package/front_end/panels/settings/SettingsScreen.ts +61 -56
- package/front_end/panels/settings/aiSettingsTab.css +3 -14
- package/front_end/panels/settings/components/SyncSection.ts +1 -2
- package/front_end/panels/settings/components/syncSection.css +0 -10
- package/front_end/panels/settings/frameworkIgnoreListSettingsTab.css +3 -1
- package/front_end/panels/settings/keybindsSettingsTab.css +7 -10
- package/front_end/panels/settings/settingsScreen.css +27 -125
- package/front_end/panels/sources/DebuggerPlugin.ts +9 -4
- package/front_end/panels/sources/NavigatorView.ts +11 -13
- package/front_end/panels/timeline/ActiveFilters.ts +3 -4
- package/front_end/panels/timeline/AnimationsTrackAppender.ts +1 -2
- package/front_end/panels/timeline/CountersGraph.ts +2 -4
- package/front_end/panels/timeline/EventsTimelineTreeView.ts +7 -8
- package/front_end/panels/timeline/README.md +2 -1
- package/front_end/panels/timeline/TimelineController.ts +14 -4
- package/front_end/panels/timeline/TimelineEventOverview.ts +3 -4
- package/front_end/panels/timeline/TimelineFilters.ts +3 -4
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.test.ts +1 -1
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +3 -10
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +1 -2
- package/front_end/panels/timeline/TimelineFlameChartView.ts +21 -12
- package/front_end/panels/timeline/TimelineLoader.test.ts +1 -2
- package/front_end/panels/timeline/TimelineLoader.ts +3 -4
- package/front_end/panels/timeline/TimelineMiniMap.ts +10 -0
- package/front_end/panels/timeline/TimelinePanel.ts +20 -8
- package/front_end/panels/timeline/TimelineTreeView.test.ts +12 -13
- package/front_end/panels/timeline/TimelineTreeView.ts +35 -40
- package/front_end/panels/timeline/TimelineUIUtils.test.ts +2 -2
- package/front_end/panels/timeline/TimelineUIUtils.ts +12 -14
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +6 -7
- package/front_end/panels/timeline/components/LiveMetricsView.test.ts +3 -3
- package/front_end/panels/timeline/components/LiveMetricsView.ts +14 -26
- package/front_end/panels/timeline/components/MetricCard.test.ts +1 -1
- package/front_end/panels/timeline/components/MetricCard.ts +46 -0
- package/front_end/panels/timeline/components/NetworkRequestDetails.ts +3 -4
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.test.ts +2 -0
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +41 -36
- package/front_end/panels/timeline/components/insights/CLSCulprits.ts +19 -33
- package/front_end/panels/timeline/components/insights/DocumentLatency.ts +29 -40
- package/front_end/panels/timeline/components/insights/FontDisplay.ts +17 -23
- package/front_end/panels/timeline/components/insights/Helpers.ts +12 -16
- package/front_end/panels/timeline/components/insights/InteractionToNextPaint.ts +14 -26
- package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +25 -37
- package/front_end/panels/timeline/components/insights/LCPPhases.ts +20 -47
- package/front_end/panels/timeline/components/insights/RenderBlocking.ts +19 -28
- package/front_end/panels/timeline/components/insights/SidebarInsight.ts +1 -2
- package/front_end/panels/timeline/components/insights/SlowCSSSelector.ts +18 -31
- package/front_end/panels/timeline/components/insights/Table.ts +5 -3
- package/front_end/panels/timeline/components/insights/ThirdParties.ts +18 -25
- package/front_end/panels/timeline/components/insights/Viewport.ts +14 -25
- package/front_end/panels/timeline/components/liveMetricsView.css +5 -13
- package/front_end/panels/timeline/components/metricCard.css +11 -0
- package/front_end/panels/timeline/components/sidebarInsightsTab.css +1 -1
- package/front_end/panels/timeline/overlays/OverlaysImpl.test.ts +5 -5
- package/front_end/panels/timeline/overlays/OverlaysImpl.ts +13 -12
- package/front_end/panels/timeline/timelineFlameChartView.css +1 -1
- package/front_end/panels/timeline/utils/AICallTree.test.ts +105 -0
- package/front_end/panels/timeline/utils/AICallTree.ts +25 -24
- package/front_end/testing/EnvironmentHelpers.ts +5 -18
- package/front_end/testing/InsightHelpers.ts +4 -4
- package/front_end/testing/TraceHelpers.ts +1 -1
- package/front_end/third_party/puppeteer/README.chromium +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts +14 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js +16 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts +34 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js +51 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts +14 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js +57 -23
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js +13 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts +15 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js +55 -26
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts +0 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js +2 -11
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts +7 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js +9 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js +0 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts +14 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js +18 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +51 -10
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +215 -97
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts +14 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js +16 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts +34 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js +51 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts +14 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js +57 -23
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js +13 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts +15 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js +55 -26
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts +0 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js +1 -9
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js +0 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts +14 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js +15 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +51 -10
- package/front_end/third_party/puppeteer/package/package.json +4 -4
- package/front_end/third_party/puppeteer/package/src/api/Browser.ts +2 -3
- package/front_end/third_party/puppeteer/package/src/api/ElementHandle.ts +21 -3
- package/front_end/third_party/puppeteer/package/src/api/Input.ts +57 -8
- package/front_end/third_party/puppeteer/package/src/bidi/ElementHandle.ts +9 -7
- package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +1 -0
- package/front_end/third_party/puppeteer/package/src/bidi/Input.ts +72 -31
- package/front_end/third_party/puppeteer/package/src/cdp/ElementHandle.ts +14 -9
- package/front_end/third_party/puppeteer/package/src/cdp/Input.ts +71 -26
- package/front_end/third_party/puppeteer/package/src/common/CallbackRegistry.ts +1 -15
- package/front_end/third_party/puppeteer/package/src/common/ConsoleMessage.ts +8 -1
- package/front_end/third_party/puppeteer/package/src/common/Errors.ts +7 -0
- package/front_end/third_party/puppeteer/package/src/common/WaitTask.ts +9 -9
- package/front_end/third_party/puppeteer/package/src/environment.ts +1 -4
- package/front_end/third_party/puppeteer/package/src/generated/injected.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/generated/version.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
- package/front_end/third_party/puppeteer/package/src/util/incremental-id-generator.ts +20 -0
- package/front_end/third_party/puppeteer/puppeteer-tsconfig.json +1 -0
- package/front_end/ui/components/buttons/Button.test.ts +14 -0
- package/front_end/ui/components/buttons/Button.ts +27 -4
- package/front_end/ui/components/cards/card.css +7 -4
- package/front_end/ui/components/dialogs/Dialog.ts +2 -4
- package/front_end/ui/components/dialogs/ShortcutDialog.ts +15 -13
- package/front_end/ui/components/dialogs/dialog.css +2 -6
- package/front_end/ui/components/dialogs/shortcutDialog.css +33 -41
- package/front_end/ui/components/docs/freestyler/basic.ts +6 -8
- package/front_end/ui/components/docs/freestyler/empty_state.ts +6 -8
- package/front_end/ui/components/docs/performance_panel/track_example.html +1 -1
- package/front_end/ui/components/markdown_view/MarkdownView.test.ts +39 -17
- package/front_end/ui/components/markdown_view/MarkdownView.ts +77 -14
- package/front_end/ui/components/markdown_view/markdownView.css +15 -0
- package/front_end/ui/components/settings/SettingCheckbox.ts +3 -2
- package/front_end/ui/legacy/ContextMenu.ts +2 -2
- package/front_end/ui/legacy/InplaceEditor.ts +18 -14
- package/front_end/ui/legacy/TabbedPane.ts +0 -14
- package/front_end/ui/legacy/UIUtils.ts +0 -7
- package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +7 -2
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +8 -4
- package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +20 -11
- package/front_end/ui/legacy/components/inline_editor/LinkSwatch.test.ts +19 -0
- package/front_end/ui/legacy/components/inline_editor/LinkSwatch.ts +1 -1
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +1 -1
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +5 -22
- package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +129 -100
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +4 -2
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.test.ts +9 -4
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.ts +6 -6
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +22 -4
- package/front_end/ui/legacy/components/perf_ui/flameChart.css +0 -2
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.test.ts +49 -0
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.ts +23 -46
- package/front_end/ui/legacy/components/source_frame/ImageView.ts +1 -1
- package/front_end/ui/legacy/components/utils/ImagePreview.ts +1 -1
- package/front_end/ui/legacy/textPrompt.css +1 -1
- package/front_end/ui/legacy/toolbar.css +4 -5
- package/front_end/ui/visual_logging/KnownContextValues.ts +174 -0
- package/front_end/ui/visual_logging/LoggingConfig.ts +6 -2
- package/package.json +7 -6
- package/scripts/build/ninja/bundle.gni +3 -3
- package/scripts/build/{rollup.config.js → rollup.config.mjs} +4 -4
- package/scripts/devtools_paths.py +8 -4
- package/scripts/eslint_rules/tests/check_test_definitions_test.js +8 -3
- package/scripts/tools/update_goldens_v2.py +1 -1
- package/front_end/models/timeline_model/TimelineModelFilter.ts +0 -61
- /package/front_end/Images/{rollup.config.js → rollup.config.mjs} +0 -0
@@ -15,8 +15,8 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
15
15
|
overviewContainer: HTMLElement;
|
16
16
|
overviewGrid: PerfUI.OverviewGrid.OverviewGrid;
|
17
17
|
overviewCanvas: HTMLCanvasElement;
|
18
|
-
|
19
|
-
|
18
|
+
windowLeftRatio: number;
|
19
|
+
windowRightRatio: number;
|
20
20
|
readonly yScale: SmoothScale;
|
21
21
|
readonly xScale: SmoothScale;
|
22
22
|
profileSamples: Samples;
|
@@ -24,7 +24,7 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
24
24
|
updateOverviewCanvas?: boolean;
|
25
25
|
updateGridTimerId?: number;
|
26
26
|
updateTimerId?: number|null;
|
27
|
-
|
27
|
+
windowWidthRatio?: number;
|
28
28
|
constructor() {
|
29
29
|
super();
|
30
30
|
this.element.id = 'heap-recording-view';
|
@@ -40,9 +40,9 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
40
40
|
this.overviewContainer.appendChild(this.overviewGrid.element);
|
41
41
|
this.overviewGrid.addEventListener(PerfUI.OverviewGrid.Events.WINDOW_CHANGED, this.onWindowChanged, this);
|
42
42
|
|
43
|
-
this.
|
44
|
-
this.
|
45
|
-
this.overviewGrid.
|
43
|
+
this.windowLeftRatio = 0.0;
|
44
|
+
this.windowRightRatio = 1.0;
|
45
|
+
this.overviewGrid.setWindowRatio(this.windowLeftRatio, this.windowRightRatio);
|
46
46
|
this.yScale = new SmoothScale();
|
47
47
|
this.xScale = new SmoothScale();
|
48
48
|
|
@@ -174,7 +174,7 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
174
174
|
context.closePath();
|
175
175
|
|
176
176
|
if (gridValue) {
|
177
|
-
const label =
|
177
|
+
const label = i18n.ByteUtilities.bytesToString(gridValue);
|
178
178
|
const labelPadding = 4;
|
179
179
|
const labelX = 0;
|
180
180
|
const labelY = gridY - 0.5;
|
@@ -210,9 +210,9 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
210
210
|
}
|
211
211
|
|
212
212
|
updateBoundaries(): void {
|
213
|
-
this.
|
214
|
-
this.
|
215
|
-
this.
|
213
|
+
this.windowLeftRatio = this.overviewGrid.windowLeftRatio();
|
214
|
+
this.windowRightRatio = this.overviewGrid.windowRightRatio();
|
215
|
+
this.windowWidthRatio = this.windowRightRatio - this.windowLeftRatio;
|
216
216
|
}
|
217
217
|
|
218
218
|
update(): void {
|
@@ -237,8 +237,8 @@ export class HeapTimelineOverview extends Common.ObjectWrapper.eventMixin<EventT
|
|
237
237
|
const sizes = this.profileSamples.sizes;
|
238
238
|
const startTime = timestamps[0];
|
239
239
|
const totalTime = this.profileSamples.totalTime;
|
240
|
-
const timeLeft = startTime + totalTime * this.
|
241
|
-
const timeRight = startTime + totalTime * this.
|
240
|
+
const timeLeft = startTime + totalTime * this.windowLeftRatio;
|
241
|
+
const timeRight = startTime + totalTime * this.windowRightRatio;
|
242
242
|
const minIndex =
|
243
243
|
Platform.ArrayUtilities.lowerBound(timestamps, timeLeft, Platform.ArrayUtilities.DEFAULT_COMPARATOR);
|
244
244
|
const maxIndex =
|
@@ -4,7 +4,6 @@
|
|
4
4
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
6
6
|
import * as i18n from '../../core/i18n/i18n.js';
|
7
|
-
import * as Platform from '../../core/platform/platform.js';
|
8
7
|
import * as SDK from '../../core/sdk/sdk.js';
|
9
8
|
import * as UI from '../../ui/legacy/legacy.js';
|
10
9
|
|
@@ -172,7 +171,7 @@ export class IsolateSelector extends UI.Widget.VBox implements UI.ListControl.Li
|
|
172
171
|
total += isolate.usedHeapSize();
|
173
172
|
trend += isolate.usedHeapSizeGrowRate();
|
174
173
|
}
|
175
|
-
this.totalValueDiv.textContent =
|
174
|
+
this.totalValueDiv.textContent = i18n.ByteUtilities.bytesToString(total);
|
176
175
|
IsolateSelector.formatTrendElement(trend, this.totalTrendDiv);
|
177
176
|
}
|
178
177
|
|
@@ -182,7 +181,7 @@ export class IsolateSelector extends UI.Widget.VBox implements UI.ListControl.Li
|
|
182
181
|
if (Math.abs(changeRateBytesPerSecond) < changeRateThresholdBytesPerSecond) {
|
183
182
|
return;
|
184
183
|
}
|
185
|
-
const changeRateText =
|
184
|
+
const changeRateText = i18n.ByteUtilities.bytesToString(Math.abs(changeRateBytesPerSecond));
|
186
185
|
let changeText, changeLabel;
|
187
186
|
if (changeRateBytesPerSecond > 0) {
|
188
187
|
changeText = '\u2B06' + i18nString(UIStrings.changeRate, {PH1: changeRateText});
|
@@ -267,7 +266,7 @@ export class ListItem {
|
|
267
266
|
}
|
268
267
|
|
269
268
|
updateStats(): void {
|
270
|
-
this.heapDiv.textContent =
|
269
|
+
this.heapDiv.textContent = i18n.ByteUtilities.bytesToString(this.isolate.usedHeapSize());
|
271
270
|
IsolateSelector.formatTrendElement(this.isolate.usedHeapSizeGrowRate(), this.trendDiv);
|
272
271
|
}
|
273
272
|
|
@@ -346,7 +346,7 @@ export class OverviewPane extends Common.ObjectWrapper.eventMixin<OverviewPaneEv
|
|
346
346
|
selectRange(timeLeft: number, timeRight: number): void {
|
347
347
|
const startTime = this.dataProvider.minimumBoundary();
|
348
348
|
const totalTime = this.dataProvider.totalTime();
|
349
|
-
this.overviewGrid.
|
349
|
+
this.overviewGrid.setWindowRatio((timeLeft - startTime) / totalTime, (timeRight - startTime) / totalTime);
|
350
350
|
}
|
351
351
|
|
352
352
|
onWindowChanged(event: Common.EventTarget.EventTargetEvent<PerfUI.OverviewGrid.WindowChangedWithPositionEvent>):
|
@@ -35,8 +35,7 @@ export class ProfileSidebarTreeElement extends UI.TreeOutline.TreeElement {
|
|
35
35
|
small: boolean;
|
36
36
|
readonly dataDisplayDelegate: DataDisplayDelegate;
|
37
37
|
profile: ProfileHeader;
|
38
|
-
|
39
|
-
editing?: UI.InplaceEditor.Controller|null;
|
38
|
+
editing: UI.InplaceEditor.Controller|null;
|
40
39
|
constructor(dataDisplayDelegate: DataDisplayDelegate, profile: ProfileHeader, className: string) {
|
41
40
|
super('', false);
|
42
41
|
this.iconElement = document.createElement('div');
|
@@ -66,6 +65,7 @@ export class ProfileSidebarTreeElement extends UI.TreeOutline.TreeElement {
|
|
66
65
|
this.dataDisplayDelegate = dataDisplayDelegate;
|
67
66
|
this.profile = profile;
|
68
67
|
profile.addEventListener(ProfileHeaderEvents.UPDATE_STATUS, this.updateStatus, this);
|
68
|
+
this.editing = null;
|
69
69
|
}
|
70
70
|
|
71
71
|
updateStatus(event: Common.EventTarget.EventTargetEvent<StatusUpdate>): void {
|
@@ -93,17 +93,18 @@ export class ProfileSidebarTreeElement extends UI.TreeOutline.TreeElement {
|
|
93
93
|
if (!container) {
|
94
94
|
return;
|
95
95
|
}
|
96
|
-
const config =
|
96
|
+
const config =
|
97
|
+
new UI.InplaceEditor.Config(this.editingCommitted.bind(this), this.editingCancelled.bind(this), undefined);
|
97
98
|
this.editing = UI.InplaceEditor.InplaceEditor.startEditing(container, config);
|
98
99
|
}
|
99
100
|
|
100
|
-
editingCommitted(
|
101
|
-
|
101
|
+
editingCommitted(_container: Element, newTitle: string): void {
|
102
|
+
this.editing = null;
|
102
103
|
this.profile.setTitle(newTitle);
|
103
104
|
}
|
104
105
|
|
105
106
|
editingCancelled(): void {
|
106
|
-
|
107
|
+
this.editing = null;
|
107
108
|
}
|
108
109
|
|
109
110
|
dispose(): void {
|
@@ -566,7 +566,7 @@ export class WritableProfileHeader extends ProfileHeader implements Common.Strin
|
|
566
566
|
if (this.jsonifiedProfile) {
|
567
567
|
// TODO(l10n): Is the '%' at the end of this string correct? 4MB% looks wrong
|
568
568
|
this.updateStatus(
|
569
|
-
i18nString(UIStrings.loadingD, {PH1:
|
569
|
+
i18nString(UIStrings.loadingD, {PH1: i18n.ByteUtilities.bytesToString(this.jsonifiedProfile.length)}));
|
570
570
|
}
|
571
571
|
}
|
572
572
|
|
@@ -688,12 +688,12 @@ export class RecordingView extends HTMLElement {
|
|
688
688
|
// clang-format off
|
689
689
|
replaySettingsFragments.push(html`<div>
|
690
690
|
${i18nString(UIStrings.download, {
|
691
|
-
value:
|
691
|
+
value: i18n.ByteUtilities.bytesToString(
|
692
692
|
this.#settings.networkConditionsSettings.download,
|
693
693
|
),
|
694
694
|
})},
|
695
695
|
${i18nString(UIStrings.upload, {
|
696
|
-
value:
|
696
|
+
value: i18n.ByteUtilities.bytesToString(
|
697
697
|
this.#settings.networkConditionsSettings.upload,
|
698
698
|
),
|
699
699
|
})},
|
@@ -2,7 +2,7 @@
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
3
3
|
// found in the LICENSE file.
|
4
4
|
|
5
|
-
|
5
|
+
import terser from '@rollup/plugin-terser';
|
6
6
|
|
7
7
|
/**
|
8
8
|
* Checks if an env variable is true.
|
@@ -5,14 +5,6 @@ import * as IconButton from '../../ui/components/icon_button/icon_button.js';
|
|
5
5
|
|
6
6
|
import {SecurityPanelSidebarTreeElement} from './SecurityPanelSidebarTreeElement.js';
|
7
7
|
|
8
|
-
export class ShowCookieReportEvent extends Event {
|
9
|
-
static readonly eventName = 'showcookiereport';
|
10
|
-
|
11
|
-
constructor() {
|
12
|
-
super(ShowCookieReportEvent.eventName, {bubbles: true, composed: true});
|
13
|
-
}
|
14
|
-
}
|
15
|
-
|
16
8
|
export class CookieReportTreeElement extends SecurityPanelSidebarTreeElement {
|
17
9
|
constructor(title: string) {
|
18
10
|
super(title);
|
@@ -20,7 +12,7 @@ export class CookieReportTreeElement extends SecurityPanelSidebarTreeElement {
|
|
20
12
|
}
|
21
13
|
|
22
14
|
override onselect(): boolean {
|
23
|
-
this.listItemElement.dispatchEvent(new
|
15
|
+
this.listItemElement.dispatchEvent(new CustomEvent('showCookieReport', {bubbles: true, composed: true}));
|
24
16
|
return true;
|
25
17
|
}
|
26
18
|
}
|
@@ -0,0 +1,120 @@
|
|
1
|
+
// Copyright 2024 The Chromium Authors. All rights reserved.
|
2
|
+
// Use of this source code is governed by a BSD-style license that can be
|
3
|
+
// found in the LICENSE file.
|
4
|
+
|
5
|
+
import * as i18n from '../../core/i18n/i18n.js';
|
6
|
+
import * as UI from '../../ui/legacy/legacy.js';
|
7
|
+
import * as LitHtml from '../../ui/lit-html/lit-html.js';
|
8
|
+
import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
|
9
|
+
|
10
|
+
import cookieReportViewStyles from './cookieReportView.css.js';
|
11
|
+
|
12
|
+
const {render, html, Directives: {ref}} = LitHtml;
|
13
|
+
|
14
|
+
const UIStrings = {
|
15
|
+
/**
|
16
|
+
*@description Title in the header for the third-party cookie report in the Security & Privacy Panel
|
17
|
+
*/
|
18
|
+
title: 'Third-party cookies',
|
19
|
+
/**
|
20
|
+
*@description Explaination in the header about the cookies listed in the report
|
21
|
+
*/
|
22
|
+
body:
|
23
|
+
'Third-party cookies that might be restricted by users, depending on their settings. If a user chooses to restrict cookies, then this site might not work for them.',
|
24
|
+
/**
|
25
|
+
*@description A link the user can follow to learn more about third party cookie usage
|
26
|
+
*/
|
27
|
+
learnMoreLink: 'Learn more about how third-party cookies are used',
|
28
|
+
/**
|
29
|
+
*@description Status string in the cookie report for a third-party cookie that is allowed without any sort of exception. This is also used as filter chip text to allow the user to filter the table based on cookie status
|
30
|
+
*/
|
31
|
+
allowed: 'Allowed',
|
32
|
+
/**
|
33
|
+
*@description Status string in the cookie report for a third-party cookie that is allowed due to a grace period or heuristic exception. Otherwise, this would have been blocked. This is also used as filter chip text to allow the user to filter the table based on cookie status
|
34
|
+
*/
|
35
|
+
allowedByException: 'Allowed By Exception',
|
36
|
+
/**
|
37
|
+
*@description Status string in the cookie report for a third-party cookie that was blocked. This is also used as filter chip text to allow the user to filter the table based on cookie status
|
38
|
+
*/
|
39
|
+
blocked: 'Blocked',
|
40
|
+
};
|
41
|
+
const str_ = i18n.i18n.registerUIStrings('panels/security/CookieReportView.ts', UIStrings);
|
42
|
+
export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
43
|
+
|
44
|
+
export interface ViewInput {}
|
45
|
+
export interface ViewOutput {
|
46
|
+
namedBitSetFilterUI?: UI.FilterBar.NamedBitSetFilterUI;
|
47
|
+
}
|
48
|
+
|
49
|
+
export interface CookieReportNodeData {
|
50
|
+
name: string;
|
51
|
+
domain: string;
|
52
|
+
type: string;
|
53
|
+
platform: string;
|
54
|
+
status: string;
|
55
|
+
recommendation: string;
|
56
|
+
}
|
57
|
+
|
58
|
+
export type View = (input: ViewInput, output: ViewOutput, target: HTMLElement) => void;
|
59
|
+
|
60
|
+
const filterItems: UI.FilterBar.Item[] = [
|
61
|
+
{
|
62
|
+
name: UIStrings.blocked,
|
63
|
+
label: () => i18nString(UIStrings.blocked),
|
64
|
+
title: UIStrings.blocked,
|
65
|
+
jslogContext: UIStrings.blocked,
|
66
|
+
},
|
67
|
+
{
|
68
|
+
name: UIStrings.allowed,
|
69
|
+
label: () => i18nString(UIStrings.allowed),
|
70
|
+
title: UIStrings.allowed,
|
71
|
+
jslogContext: UIStrings.allowed,
|
72
|
+
},
|
73
|
+
{
|
74
|
+
name: UIStrings.allowedByException,
|
75
|
+
label: () => i18nString(UIStrings.allowedByException),
|
76
|
+
title: UIStrings.allowedByException,
|
77
|
+
jslogContext: UIStrings.allowedByException,
|
78
|
+
},
|
79
|
+
];
|
80
|
+
|
81
|
+
export class CookieReportView extends UI.Widget.VBox {
|
82
|
+
namedBitSetFilterUI?: UI.FilterBar.NamedBitSetFilterUI;
|
83
|
+
#view: View;
|
84
|
+
|
85
|
+
constructor(element?: HTMLElement, view: View = (input, output, target) => {
|
86
|
+
// clang-format off
|
87
|
+
render(html `
|
88
|
+
<div class="report overflow-auto">
|
89
|
+
<div class="header">
|
90
|
+
<div class="title">${i18nString(UIStrings.title)}</div>
|
91
|
+
<div class="body">${i18nString(UIStrings.body)} <x-link class="x-link" href="https://developers.google.com/privacy-sandbox/cookies/prepare/audit-cookies" jslog=${VisualLogging.link('learn-more').track({click: true})}>${i18nString(UIStrings.learnMoreLink)}</x-link></div>
|
92
|
+
</div>
|
93
|
+
<devtools-named-bit-set-filter
|
94
|
+
class="filter"
|
95
|
+
.options=${{items: filterItems}}
|
96
|
+
${ref((el?: Element) => {
|
97
|
+
if(el instanceof UI.FilterBar.NamedBitSetFilterUIElement){
|
98
|
+
output.namedBitSetFilterUI = el.getOrCreateNamedBitSetFilterUI();
|
99
|
+
}
|
100
|
+
})}
|
101
|
+
></devtools-named-bit-set-filter>
|
102
|
+
</div>
|
103
|
+
`, target, {host: this});
|
104
|
+
// clang-format on
|
105
|
+
}) {
|
106
|
+
super(true, undefined, element);
|
107
|
+
this.#view = view;
|
108
|
+
|
109
|
+
this.doUpdate();
|
110
|
+
}
|
111
|
+
|
112
|
+
doUpdate(): void {
|
113
|
+
this.#view(this, this, this.contentElement);
|
114
|
+
}
|
115
|
+
|
116
|
+
override wasShown(): void {
|
117
|
+
super.wasShown();
|
118
|
+
this.registerCSSFiles([cookieReportViewStyles]);
|
119
|
+
}
|
120
|
+
}
|
@@ -14,6 +14,7 @@ import * as UI from '../../ui/legacy/legacy.js';
|
|
14
14
|
import * as LitHtml from '../../ui/lit-html/lit-html.js';
|
15
15
|
import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
|
16
16
|
|
17
|
+
import {CookieReportView} from './CookieReportView.js';
|
17
18
|
import lockIconStyles from './lockIcon.css.js';
|
18
19
|
import mainViewStyles from './mainView.css.js';
|
19
20
|
import {ShowOriginEvent} from './OriginTreeElement.js';
|
@@ -534,6 +535,7 @@ export type ViewInput = {
|
|
534
535
|
panel: SecurityPanel,
|
535
536
|
};
|
536
537
|
export type ViewOutput = {
|
538
|
+
setVisibleView: (view: UI.Widget.VBox) => void,
|
537
539
|
splitWidget: UI.SplitWidget.SplitWidget,
|
538
540
|
mainView: SecurityMainView,
|
539
541
|
visibleView: UI.Widget.VBox|null,
|
@@ -560,7 +562,7 @@ export class SecurityPanel extends UI.Panel.Panel implements SDK.TargetManager.S
|
|
560
562
|
<devtools-split-widget
|
561
563
|
.options=${{vertical: true, settingName: 'security'}}
|
562
564
|
${UI.Widget.widgetRef(UI.SplitWidget.SplitWidget, e => {output.splitWidget = e;})}>
|
563
|
-
|
565
|
+
<devtools-widget
|
564
566
|
slot="main"
|
565
567
|
.widgetClass=${SecurityMainView}
|
566
568
|
.widgetParams=${[input.panel] as SecurityMainViewProps}
|
@@ -569,6 +571,7 @@ export class SecurityPanel extends UI.Panel.Panel implements SDK.TargetManager.S
|
|
569
571
|
<devtools-widget
|
570
572
|
slot="sidebar"
|
571
573
|
.widgetClass=${SecurityPanelSidebar}
|
574
|
+
@showCookieReport=${()=>output.setVisibleView(new CookieReportView())}
|
572
575
|
${UI.Widget.widgetRef(SecurityPanelSidebar, e => {output.sidebar = e;})}>
|
573
576
|
</devtools-widget>
|
574
577
|
</devtools-split-widget>`,
|
@@ -654,6 +657,7 @@ export class SecurityPanel extends UI.Panel.Panel implements SDK.TargetManager.S
|
|
654
657
|
// The sidebar element will trigger displaying the main view. Rather than making a redundant call to display the main view, we rely on this.
|
655
658
|
this.sidebar.securityOverviewElement.select(true);
|
656
659
|
}
|
660
|
+
|
657
661
|
showOrigin(origin: Platform.DevToolsPath.UrlString): void {
|
658
662
|
const originState = this.origins.get(origin);
|
659
663
|
if (!originState) {
|
@@ -821,7 +825,9 @@ export class SecurityPanel extends UI.Panel.Panel implements SDK.TargetManager.S
|
|
821
825
|
const {frame} = event.data;
|
822
826
|
const request = this.lastResponseReceivedForLoaderId.get(frame.loaderId);
|
823
827
|
|
824
|
-
this.
|
828
|
+
if (!(this.visibleView instanceof CookieReportView)) {
|
829
|
+
this.selectAndSwitchToMainView();
|
830
|
+
}
|
825
831
|
this.sidebar.clearOrigins();
|
826
832
|
this.origins.clear();
|
827
833
|
this.lastResponseReceivedForLoaderId.clear();
|
@@ -0,0 +1,46 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright 2024 The Chromium Authors. All rights reserved.
|
3
|
+
* Use of this source code is governed by a BSD-style license that can be
|
4
|
+
* found in the LICENSE file.
|
5
|
+
*/
|
6
|
+
|
7
|
+
.report {
|
8
|
+
display: flex;
|
9
|
+
flex-direction: column;
|
10
|
+
width: 100%;
|
11
|
+
height: 100%;
|
12
|
+
max-height: 100%;
|
13
|
+
gap: var(--sys-size-6);
|
14
|
+
padding-top: var(--sys-size-5);
|
15
|
+
padding-bottom: var(--sys-size-5);
|
16
|
+
}
|
17
|
+
|
18
|
+
.header {
|
19
|
+
display: flex;
|
20
|
+
flex-direction: column;
|
21
|
+
flex-shrink: 0;
|
22
|
+
gap: var(--sys-size-5);
|
23
|
+
padding-left: var(--sys-size-6);
|
24
|
+
padding-right: var(--sys-size-6);
|
25
|
+
min-width: var(--sys-size-31);
|
26
|
+
|
27
|
+
.title {
|
28
|
+
font: var(--sys-typescale-headline4);
|
29
|
+
}
|
30
|
+
|
31
|
+
.body {
|
32
|
+
font: var(--sys-typescale-body4-regular);
|
33
|
+
}
|
34
|
+
}
|
35
|
+
|
36
|
+
.x-link {
|
37
|
+
color: var(--sys-color-primary);
|
38
|
+
text-decoration-line: underline;
|
39
|
+
cursor: pointer;
|
40
|
+
}
|
41
|
+
|
42
|
+
.filter {
|
43
|
+
padding-left: var(--sys-size-5);
|
44
|
+
padding-right: var(--sys-size-6);
|
45
|
+
flex-shrink: 0;
|
46
|
+
}
|
@@ -43,8 +43,7 @@
|
|
43
43
|
.security-main-view-reload-message,
|
44
44
|
.tree-outline li.security-sidebar-origins,
|
45
45
|
.tree-outline li.security-group-list-item,
|
46
|
-
.tree-outline span
|
47
|
-
|
46
|
+
.tree-outline span {
|
48
47
|
font: var(--sys-typescale-body4-medium);
|
49
48
|
|
50
49
|
&:hover:not(:has(span[is="dt-checkbox"])) .selection {
|
@@ -4,6 +4,8 @@
|
|
4
4
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
6
6
|
import * as i18n from '../../core/i18n/i18n.js';
|
7
|
+
import * as Buttons from '../../ui/components/buttons/buttons.js';
|
8
|
+
import * as Cards from '../../ui/components/cards/cards.js';
|
7
9
|
import * as UI from '../../ui/legacy/legacy.js';
|
8
10
|
import * as VisualLogging from '../../ui/visual_logging/visual_logging.js';
|
9
11
|
|
@@ -14,7 +16,7 @@ const UIStrings = {
|
|
14
16
|
*@description Title in the Locations Settings Tab, where custom geographic locations that the user
|
15
17
|
*has entered are stored.
|
16
18
|
*/
|
17
|
-
|
19
|
+
locations: 'Locations',
|
18
20
|
/**
|
19
21
|
*@description Label for the name of a geographic location that the user has entered.
|
20
22
|
*/
|
@@ -91,7 +93,7 @@ const UIStrings = {
|
|
91
93
|
/**
|
92
94
|
*@description Text of add locations button in Locations Settings Tab of the Device Toolbar
|
93
95
|
*/
|
94
|
-
addLocation: 'Add location
|
96
|
+
addLocation: 'Add location',
|
95
97
|
};
|
96
98
|
const str_ = i18n.i18n.registerUIStrings('panels/sensors/LocationsSettingsTab.ts', UIStrings);
|
97
99
|
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
@@ -106,16 +108,31 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
106
108
|
|
107
109
|
this.element.setAttribute('jslog', `${VisualLogging.pane('emulation-locations')}`);
|
108
110
|
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
111
|
+
const settingsContent =
|
112
|
+
this.contentElement.createChild('div', 'settings-card-container-wrapper').createChild('div');
|
113
|
+
settingsContent.classList.add('settings-card-container');
|
114
|
+
|
115
|
+
const addButton = new Buttons.Button.Button();
|
116
|
+
addButton.classList.add('add-locations-button');
|
117
|
+
addButton.data = {
|
118
|
+
variant: Buttons.Button.Variant.OUTLINED,
|
119
|
+
iconName: 'plus',
|
120
|
+
jslogContext: 'emulation.add-location',
|
121
|
+
};
|
122
|
+
addButton.textContent = i18nString(UIStrings.addLocation);
|
123
|
+
addButton.addEventListener('click', () => this.addButtonClicked());
|
124
|
+
|
125
|
+
const listContainer = document.createElement('div');
|
126
|
+
const locationsCard = new Cards.Card.Card();
|
127
|
+
locationsCard.data = {
|
128
|
+
heading: i18nString(UIStrings.locations),
|
129
|
+
content: [listContainer, addButton],
|
130
|
+
};
|
131
|
+
settingsContent.appendChild(locationsCard);
|
115
132
|
|
116
133
|
this.list = new UI.ListWidget.ListWidget(this, undefined, true);
|
117
134
|
this.list.element.classList.add('locations-list');
|
118
|
-
this.list.show(
|
135
|
+
this.list.show(listContainer);
|
119
136
|
this.customSetting =
|
120
137
|
Common.Settings.Settings.instance().moduleSetting<LocationDescription[]>('emulation.locations');
|
121
138
|
const list =
|
@@ -144,8 +161,6 @@ export class LocationsSettingsTab extends UI.Widget.VBox implements UI.ListWidge
|
|
144
161
|
|
145
162
|
this.customSetting.set(list);
|
146
163
|
this.customSetting.addChangeListener(this.locationsUpdated, this);
|
147
|
-
|
148
|
-
this.setDefaultFocusedElement(addButton);
|
149
164
|
}
|
150
165
|
|
151
166
|
override wasShown(): void {
|
@@ -4,28 +4,13 @@
|
|
4
4
|
* found in the LICENSE file.
|
5
5
|
*/
|
6
6
|
|
7
|
-
:host {
|
8
|
-
overflow: hidden;
|
9
|
-
}
|
10
|
-
|
11
|
-
.header {
|
12
|
-
padding: 0 0 6px;
|
13
|
-
border-bottom: 1px solid var(--sys-color-divider);
|
14
|
-
font-size: 18px;
|
15
|
-
font-weight: normal;
|
16
|
-
flex: none;
|
17
|
-
}
|
18
|
-
|
19
7
|
.add-locations-button {
|
20
|
-
|
21
|
-
|
22
|
-
min-width: 140px;
|
23
|
-
align-self: flex-start;
|
8
|
+
margin-bottom: var(--sys-size-5);
|
9
|
+
border: none;
|
24
10
|
}
|
25
11
|
|
26
12
|
.locations-list {
|
27
|
-
|
28
|
-
min-width: 340px;
|
13
|
+
margin-top: var(--sys-size-3);
|
29
14
|
flex: auto;
|
30
15
|
}
|
31
16
|
|
@@ -85,3 +70,18 @@
|
|
85
70
|
.locations-input-container {
|
86
71
|
padding: 1px;
|
87
72
|
}
|
73
|
+
|
74
|
+
.settings-card-container-wrapper {
|
75
|
+
scrollbar-gutter: stable;
|
76
|
+
padding-bottom: var(--sys-size-8);
|
77
|
+
overflow: auto;
|
78
|
+
position: absolute;
|
79
|
+
inset: var(--sys-size-8) 0 0;
|
80
|
+
}
|
81
|
+
|
82
|
+
.settings-card-container {
|
83
|
+
display: flex;
|
84
|
+
flex-direction: column;
|
85
|
+
align-items: center;
|
86
|
+
gap: var(--sys-size-9);
|
87
|
+
}
|
@@ -138,10 +138,6 @@ const UIStrings = {
|
|
138
138
|
*@description Label for a link to the privacy notice
|
139
139
|
*/
|
140
140
|
privacyNotice: 'Google Privacy Policy',
|
141
|
-
/**
|
142
|
-
*@description Header for the AI innovations settings page
|
143
|
-
*/
|
144
|
-
aiInnovations: 'AI innovations',
|
145
141
|
/**
|
146
142
|
*@description Label for a toggle to enable the Console Insights feature
|
147
143
|
*/
|
@@ -215,14 +211,13 @@ export class AISettingsTab extends LegacyWrapper.LegacyWrapper.WrappableComponen
|
|
215
211
|
|
216
212
|
#getAiAssistanceSettingDescription(): Platform.UIString.LocalizedString {
|
217
213
|
const config = Common.Settings.Settings.instance().getHostConfig();
|
218
|
-
if (config.devToolsAiAssistancePerformanceAgent?.enabled
|
219
|
-
config.devToolsAiAssistancePerformanceAgentDogfood?.enabled) {
|
214
|
+
if (config.devToolsAiAssistancePerformanceAgent?.enabled) {
|
220
215
|
return i18nString(UIStrings.helpUnderstandStylingNetworkPerformanceAndFile);
|
221
216
|
}
|
222
|
-
if (config.devToolsAiAssistanceFileAgent?.enabled
|
217
|
+
if (config.devToolsAiAssistanceFileAgent?.enabled) {
|
223
218
|
return i18nString(UIStrings.helpUnderstandStylingNetworkAndFile);
|
224
219
|
}
|
225
|
-
if (config.devToolsAiAssistanceNetworkAgent?.enabled
|
220
|
+
if (config.devToolsAiAssistanceNetworkAgent?.enabled) {
|
226
221
|
return i18nString(UIStrings.helpUnderstandStylingAndNetworkRequest);
|
227
222
|
}
|
228
223
|
return i18nString(UIStrings.helpUnderstandStyling);
|
@@ -230,14 +225,13 @@ export class AISettingsTab extends LegacyWrapper.LegacyWrapper.WrappableComponen
|
|
230
225
|
|
231
226
|
#getAiAssistanceSettingInfo(): Platform.UIString.LocalizedString {
|
232
227
|
const config = Common.Settings.Settings.instance().getHostConfig();
|
233
|
-
if (config.devToolsAiAssistancePerformanceAgent?.enabled
|
234
|
-
config.devToolsAiAssistancePerformanceAgentDogfood?.enabled) {
|
228
|
+
if (config.devToolsAiAssistancePerformanceAgent?.enabled) {
|
235
229
|
return i18nString(UIStrings.explainStylingNetworkPerformanceAndFile);
|
236
230
|
}
|
237
|
-
if (config.devToolsAiAssistanceFileAgent?.enabled
|
231
|
+
if (config.devToolsAiAssistanceFileAgent?.enabled) {
|
238
232
|
return i18nString(UIStrings.explainStylingNetworkAndFile);
|
239
233
|
}
|
240
|
-
if (config.devToolsAiAssistanceNetworkAgent?.enabled
|
234
|
+
if (config.devToolsAiAssistanceNetworkAgent?.enabled) {
|
241
235
|
return i18nString(UIStrings.explainStylingAndNetworkRequest);
|
242
236
|
}
|
243
237
|
return i18nString(UIStrings.explainStyling);
|
@@ -538,9 +532,6 @@ export class AISettingsTab extends LegacyWrapper.LegacyWrapper.WrappableComponen
|
|
538
532
|
// Disabled until https://crbug.com/1079231 is fixed.
|
539
533
|
// clang-format off
|
540
534
|
LitHtml.render(html`
|
541
|
-
<header>
|
542
|
-
<h1>${i18nString(UIStrings.aiInnovations)}</h1>
|
543
|
-
</header>
|
544
535
|
<div class="settings-container-wrapper" jslog=${VisualLogging.pane('chrome-ai')}>
|
545
536
|
${this.#renderSharedDisclaimer()}
|
546
537
|
${this.#consoleInsightsSetting || this.#aiAssistanceSetting ? html`
|
@@ -23,7 +23,7 @@ const UIStrings = {
|
|
23
23
|
/**
|
24
24
|
*@description Text appearing before a select control offering users their choice of keyboard shortcut presets.
|
25
25
|
*/
|
26
|
-
matchShortcutsFromPreset: '
|
26
|
+
matchShortcutsFromPreset: 'Shortcut preset',
|
27
27
|
/**
|
28
28
|
*@description Screen reader label for list of keyboard shortcuts in settings
|
29
29
|
*/
|