chrome-devtools-frontend 1.0.1522585 → 1.0.1524741
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/AUTHORS +1 -0
- package/docs/README.md +1 -0
- package/docs/policy/README.md +1 -0
- package/docs/policy/console-policy.md +144 -0
- package/docs/policy/images/console-policy1.png +0 -0
- package/docs/policy/images/console-policy2.png +0 -0
- package/docs/policy/images/console-policy3.png +0 -0
- package/docs/ui_engineering.md +22 -0
- package/front_end/Tests.js +1 -1
- package/front_end/core/common/Color.ts +13 -9
- package/front_end/core/common/ColorConverter.ts +9 -7
- package/front_end/core/common/Gzip.ts +1 -1
- package/front_end/core/common/MapWithDefault.ts +5 -3
- package/front_end/core/common/ResourceType.ts +0 -12
- package/front_end/core/common/ReturnToPanel.ts +6 -4
- package/front_end/core/common/Trie.ts +4 -2
- package/front_end/core/host/AidaClient.ts +3 -3
- package/front_end/core/host/GdpClient.ts +7 -5
- package/front_end/core/host/InspectorFrontendHostAPI.ts +7 -5
- package/front_end/core/host/Platform.ts +5 -3
- package/front_end/core/host/UserMetrics.ts +6 -4
- package/front_end/core/platform/ArrayUtilities.ts +1 -1
- package/front_end/core/platform/StringUtilities.ts +34 -31
- package/front_end/core/root/Runtime.ts +1 -1
- package/front_end/core/sdk/CSSMetadata.ts +6 -4
- package/front_end/core/sdk/CSSPropertyParser.ts +17 -13
- package/front_end/core/sdk/CSSPropertyParserMatchers.ts +19 -13
- package/front_end/core/sdk/ChildTargetManager.ts +35 -0
- package/front_end/core/sdk/DOMModel.ts +1 -1
- package/front_end/core/sdk/EventBreakpointsModel.ts +4 -2
- package/front_end/core/sdk/HttpReasonPhraseStrings.ts +4 -2
- package/front_end/core/sdk/NetworkManager.ts +8 -48
- package/front_end/core/sdk/NetworkRequest.ts +0 -28
- package/front_end/core/sdk/PageResourceLoader.ts +1 -1
- package/front_end/core/sdk/PreloadingModel.ts +22 -18
- package/front_end/core/sdk/RehydratingConnection.ts +1 -1
- package/front_end/core/sdk/RehydratingObject.ts +1 -1
- package/front_end/core/sdk/RemoteObject.ts +1 -1
- package/front_end/core/sdk/ResourceTreeModel.ts +2 -0
- package/front_end/core/sdk/ScreenCaptureModel.ts +24 -20
- package/front_end/core/sdk/Target.ts +7 -1
- package/front_end/core/sdk/TraceObject.ts +2 -2
- package/front_end/entrypoints/formatter_worker/Substitute.ts +6 -4
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +24 -16
- package/front_end/entrypoints/inspector_main/OutermostTargetSelector.ts +2 -1
- package/front_end/entrypoints/main/MainImpl.ts +6 -4
- package/front_end/generated/InspectorBackendCommands.js +2 -2
- package/front_end/generated/protocol-mapping.d.ts +3 -2
- package/front_end/generated/protocol-proxy-api.d.ts +3 -1
- package/front_end/generated/protocol.ts +7 -1
- package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +55 -14
- package/front_end/models/ai_assistance/agents/StylingAgent.ts +83 -222
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +23 -0
- package/front_end/models/ai_assistance/performance/AIContext.ts +19 -4
- package/front_end/models/ai_code_completion/AiCodeCompletion.ts +4 -2
- package/front_end/models/autofill_manager/AutofillManager.ts +4 -2
- package/front_end/models/cpu_profile/CPUProfileDataModel.ts +1 -1
- package/front_end/models/crux-manager/CrUXManager.ts +1 -1
- package/front_end/models/extensions/HostUrlPattern.ts +13 -5
- package/front_end/models/issues_manager/CookieDeprecationMetadataIssue.ts +1 -1
- package/front_end/models/issues_manager/CookieIssue.ts +2 -2
- package/front_end/models/issues_manager/MarkdownIssueDescription.ts +1 -1
- package/front_end/models/issues_manager/SharedDictionaryIssue.ts +20 -0
- package/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorInvalidTTLField.md +1 -0
- package/front_end/models/issues_manager/descriptions/sharedDictionaryWriteErrorNonIntegerTTLField.md +1 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +8 -0
- package/front_end/models/network_time_calculator/Calculator.ts +4 -2
- package/front_end/models/network_time_calculator/RequestTimeRanges.ts +6 -4
- package/front_end/models/source_map_scopes/NamesResolver.ts +7 -5
- package/front_end/models/text_utils/ContentProvider.ts +6 -4
- package/front_end/models/trace/extras/TraceTree.ts +1 -1
- package/front_end/models/trace/handlers/FramesHandler.ts +7 -5
- package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +13 -7
- package/front_end/models/trace/handlers/MetaHandler.ts +16 -14
- package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +20 -8
- package/front_end/models/trace/handlers/helpers.ts +1 -1
- package/front_end/models/trace/handlers/types.ts +23 -19
- package/front_end/models/trace/helpers/Timing.ts +4 -2
- package/front_end/models/trace/helpers/Trace.ts +8 -4
- package/front_end/models/trace/insights/DocumentLatency.ts +1 -1
- package/front_end/models/trace/insights/INPBreakdown.ts +13 -2
- package/front_end/models/trace/insights/LCPBreakdown.ts +14 -2
- package/front_end/models/trace/insights/NetworkDependencyTree.ts +2 -2
- package/front_end/models/trace/types/File.ts +12 -8
- package/front_end/models/trace/types/Timing.ts +1 -1
- package/front_end/models/trace/types/TraceEvents.ts +37 -23
- package/front_end/models/trace_source_maps_resolver/SourceMapsResolver.ts +1 -1
- package/front_end/panels/ai_assistance/components/MarkdownRendererWithCodeBlock.ts +12 -10
- package/front_end/panels/application/KeyValueStorageItemsView.ts +31 -33
- package/front_end/panels/application/components/InterestGroupAccessGrid.ts +6 -11
- package/front_end/panels/application/components/OriginTrialTreeView.ts +7 -5
- package/front_end/panels/application/components/PermissionsPolicySection.ts +1 -0
- package/front_end/panels/application/components/ReportsGrid.ts +4 -10
- package/front_end/panels/application/components/SharedStorageAccessGrid.ts +5 -13
- package/front_end/panels/application/preloading/components/MismatchedPreloadingGrid.ts +1 -1
- package/front_end/panels/application/preloading/components/PreloadingGrid.ts +3 -7
- package/front_end/panels/application/preloading/components/PreloadingString.ts +2 -2
- package/front_end/panels/application/preloading/components/RuleSetGrid.ts +3 -10
- package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +4 -2
- package/front_end/panels/browser_debugger/browser_debugger-meta.ts +7 -5
- package/front_end/panels/changes/ChangesSidebar.ts +97 -95
- package/front_end/panels/changes/changesSidebar.css +3 -0
- package/front_end/panels/console/ConsoleView.ts +2 -2
- package/front_end/panels/developer_resources/DeveloperResourcesListView.ts +22 -35
- package/front_end/panels/elements/ComputedStyleWidget.ts +1 -1
- package/front_end/panels/elements/ElementStatePaneWidget.ts +12 -0
- package/front_end/panels/elements/ElementsTreeElement.ts +9 -5
- package/front_end/panels/elements/ElementsTreeOutline.ts +11 -8
- package/front_end/panels/elements/PropertyRenderer.ts +19 -15
- package/front_end/panels/elements/StylePropertyTreeElement.ts +6 -4
- package/front_end/panels/elements/StylesSidebarPane.ts +2 -2
- package/front_end/panels/elements/components/AccessibilityTreeNode.ts +4 -2
- package/front_end/panels/elements/components/AdornerManager.ts +5 -3
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +6 -4
- package/front_end/panels/media/PlayerPropertiesView.ts +1 -1
- package/front_end/panels/network/NetworkDataGridNode.ts +2 -44
- package/front_end/panels/network/NetworkLogView.ts +6 -4
- package/front_end/panels/network/RequestPreviewView.ts +0 -7
- package/front_end/panels/network/components/RequestHeadersView.ts +0 -6
- package/front_end/panels/network/components/components.ts +0 -2
- package/front_end/panels/profiler/HeapSnapshotDataGrids.ts +1 -1
- package/front_end/panels/profiler/HeapSnapshotGridNodes.ts +4 -2
- package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +12 -19
- package/front_end/panels/search/SearchResultsPane.ts +2 -3
- package/front_end/panels/security/IPProtectionView.ts +1 -1
- package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +4 -0
- package/front_end/panels/settings/emulation/utils/StructuredHeaders.ts +45 -37
- package/front_end/panels/sources/BreakpointsViewUtils.ts +11 -9
- package/front_end/panels/sources/DebuggerPlugin.ts +8 -4
- package/front_end/panels/sources/SourcesPanel.ts +1 -1
- package/front_end/panels/sources/UISourceCodeFrame.ts +1 -1
- package/front_end/panels/timeline/CompatibilityTracksAppender.ts +4 -2
- package/front_end/panels/timeline/CountersGraph.ts +12 -5
- package/front_end/panels/timeline/EasterEgg.d.ts +5 -3
- package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +8 -6
- package/front_end/panels/timeline/ModificationsManager.ts +5 -3
- package/front_end/panels/timeline/ThreadAppender.ts +7 -5
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +10 -8
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +1 -1
- package/front_end/panels/timeline/TimelinePanel.ts +10 -8
- package/front_end/panels/timeline/TimelineSelection.ts +4 -2
- package/front_end/panels/timeline/TimelineUIUtils.ts +5 -3
- package/front_end/panels/timeline/components/BreadcrumbsUI.ts +6 -4
- package/front_end/panels/timeline/components/Utils.ts +1 -1
- package/front_end/panels/timeline/overlays/OverlaysImpl.ts +5 -3
- package/front_end/panels/timeline/utils/Helpers.ts +1 -1
- package/front_end/panels/utils/utils.ts +1 -7
- package/front_end/services/trace_bounds/TraceBounds.ts +4 -2
- package/front_end/services/tracing/PerformanceTracing.ts +1 -1
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/php.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/php.js.map +1 -1
- package/front_end/third_party/codemirror.next/package.json +3 -2
- package/front_end/third_party/puppeteer/README.chromium +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Dialog.d.ts +8 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Dialog.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Dialog.js +8 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Dialog.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts +28 -30
- 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 +27 -29
- 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/Frame.d.ts +34 -38
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.js +34 -38
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.d.ts +8 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.js +12 -14
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +92 -108
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js +33 -39
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.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/HTTPRequest.d.ts +4 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/HTTPRequest.js +14 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +12 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Browser.js +24 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/Realm.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/PredefinedNetworkConditions.d.ts +13 -22
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/PredefinedNetworkConditions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/PredefinedNetworkConditions.js +13 -22
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/PredefinedNetworkConditions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Device.d.ts +6 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Device.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Device.js +6 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Device.js.map +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/node/BrowserLauncher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/BrowserLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.d.ts +5 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.js +5 -7
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/PuppeteerNode.js.map +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/es5-iife/puppeteer-core-browser.d.ts +188 -224
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +140 -166
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Dialog.d.ts +8 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Dialog.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Dialog.js +8 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Dialog.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts +28 -30
- 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 +27 -29
- 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/Frame.d.ts +34 -38
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.js +34 -38
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.d.ts +8 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.js +12 -14
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +92 -108
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js +33 -39
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.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/HTTPRequest.d.ts +4 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/HTTPRequest.js +15 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +12 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Browser.js +24 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.js +3 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/HTTPRequest.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/PredefinedNetworkConditions.d.ts +13 -22
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/PredefinedNetworkConditions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/PredefinedNetworkConditions.js +13 -22
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/PredefinedNetworkConditions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Device.d.ts +6 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Device.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Device.js +6 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Device.js.map +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/node/BrowserLauncher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js +6 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/BrowserLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.d.ts +5 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.js +5 -7
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/PuppeteerNode.js.map +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/types.d.ts +188 -224
- package/front_end/third_party/puppeteer/package/package.json +3 -3
- package/front_end/third_party/puppeteer/package/src/api/Dialog.ts +8 -10
- package/front_end/third_party/puppeteer/package/src/api/ElementHandle.ts +27 -29
- package/front_end/third_party/puppeteer/package/src/api/Frame.ts +34 -38
- package/front_end/third_party/puppeteer/package/src/api/HTTPRequest.ts +17 -14
- package/front_end/third_party/puppeteer/package/src/api/Page.ts +92 -108
- package/front_end/third_party/puppeteer/package/src/bidi/Browser.ts +5 -3
- package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +5 -1
- package/front_end/third_party/puppeteer/package/src/bidi/HTTPRequest.ts +28 -3
- package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +16 -7
- package/front_end/third_party/puppeteer/package/src/bidi/core/Browser.ts +28 -2
- package/front_end/third_party/puppeteer/package/src/cdp/HTTPRequest.ts +4 -0
- package/front_end/third_party/puppeteer/package/src/cdp/PredefinedNetworkConditions.ts +13 -22
- package/front_end/third_party/puppeteer/package/src/common/Device.ts +6 -8
- package/front_end/third_party/puppeteer/package/src/generated/version.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/node/BrowserLauncher.ts +6 -3
- package/front_end/third_party/puppeteer/package/src/node/PuppeteerNode.ts +5 -7
- package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
- package/front_end/ui/components/chrome_link/ChromeLink.ts +4 -2
- package/front_end/ui/components/dialogs/Dialog.ts +13 -9
- package/front_end/ui/components/highlighting/HighlightElement.ts +77 -0
- package/front_end/ui/components/highlighting/HighlightManager.ts +37 -0
- package/front_end/ui/components/highlighting/highlighting.ts +2 -0
- package/front_end/ui/components/markdown_view/MarkdownImagesMap.ts +5 -3
- package/front_end/ui/components/markdown_view/MarkdownLinksMap.ts +5 -3
- package/front_end/ui/components/menus/SelectMenu.ts +6 -4
- package/front_end/ui/components/survey_link/SurveyLink.ts +4 -2
- package/front_end/ui/components/text_editor/config.ts +10 -6
- package/front_end/ui/components/text_editor/javascript.ts +8 -4
- package/front_end/ui/legacy/ForwardedInputEventHandler.ts +4 -2
- package/front_end/ui/legacy/GlassPane.ts +1 -1
- package/front_end/ui/legacy/SettingsUI.ts +1 -5
- package/front_end/ui/legacy/Treeoutline.ts +12 -33
- package/front_end/ui/legacy/UIUtils.ts +19 -1
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +12 -10
- package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +30 -32
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +1 -1
- package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +25 -25
- package/front_end/ui/legacy/components/data_grid/dataGrid.css +5 -0
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingModel.ts +4 -2
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +4 -2
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +8 -6
- package/front_end/ui/legacy/components/perf_ui/PieChart.ts +6 -4
- package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +3 -3
- package/front_end/ui/legacy/components/source_frame/XMLView.ts +22 -16
- package/front_end/ui/legacy/components/source_frame/xmlView.css +0 -2
- package/front_end/ui/legacy/components/utils/Linkifier.ts +6 -4
- package/front_end/ui/visual_logging/Debugging.ts +10 -6
- package/front_end/ui/visual_logging/KnownContextValues.ts +1 -3
- package/inspector_overlay/common.ts +5 -3
- package/inspector_overlay/highlight_grid_common.ts +1 -1
- package/package.json +1 -1
- package/front_end/Images/src/bundle.svg +0 -3
- package/front_end/panels/network/components/WebBundleInfoView.css +0 -27
- package/front_end/panels/network/components/WebBundleInfoView.ts +0 -95
|
@@ -8,7 +8,7 @@ import type * as Protocol from '../../../generated/protocol.js';
|
|
|
8
8
|
|
|
9
9
|
import type {Micro, Milli, Seconds, TraceWindowMicro} from './Timing.js';
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/** Trace Events. **/
|
|
12
12
|
export const enum Phase {
|
|
13
13
|
// Standard
|
|
14
14
|
BEGIN = 'B',
|
|
@@ -282,8 +282,10 @@ export interface End extends Event {
|
|
|
282
282
|
*/
|
|
283
283
|
export type SyntheticComplete = Complete;
|
|
284
284
|
|
|
285
|
-
|
|
286
|
-
|
|
285
|
+
/**
|
|
286
|
+
* TODO(paulirish): Migrate to the new (Sept 2024) EventTiming trace events.
|
|
287
|
+
* See https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/timing/window_performance.cc;l=900-901;drc=b503c262e425eae59ced4a80d59d176ed07152c7
|
|
288
|
+
**/
|
|
287
289
|
export type EventTimingBeginOrEnd = EventTimingBegin|EventTimingEnd;
|
|
288
290
|
|
|
289
291
|
export interface EventTimingBegin extends Event {
|
|
@@ -336,9 +338,11 @@ export interface SyntheticNetworkRedirect {
|
|
|
336
338
|
dur: Micro;
|
|
337
339
|
}
|
|
338
340
|
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
341
|
+
/**
|
|
342
|
+
* ProcessedArgsData is used to store the processed data of a network
|
|
343
|
+
* request. Which is used to distinguish from the date we extract from the
|
|
344
|
+
* trace event directly.
|
|
345
|
+
**/
|
|
342
346
|
interface SyntheticArgsData {
|
|
343
347
|
dnsLookup: Micro;
|
|
344
348
|
download: Micro;
|
|
@@ -359,8 +363,10 @@ interface SyntheticArgsData {
|
|
|
359
363
|
ssl: Micro;
|
|
360
364
|
stalled: Micro;
|
|
361
365
|
totalTime: Micro;
|
|
362
|
-
/**
|
|
366
|
+
/** receiveHeadersEnd - sendEnd */
|
|
363
367
|
waiting: Micro;
|
|
368
|
+
/** receiveHeadersStart - sendEnd */
|
|
369
|
+
serverResponseTime: Micro;
|
|
364
370
|
}
|
|
365
371
|
|
|
366
372
|
export interface SyntheticNetworkRequest extends Complete, SyntheticBased<Phase.COMPLETE> {
|
|
@@ -1618,8 +1624,10 @@ const enum FrameType {
|
|
|
1618
1624
|
BACKFILL = 'BACKFILL',
|
|
1619
1625
|
}
|
|
1620
1626
|
|
|
1621
|
-
|
|
1622
|
-
|
|
1627
|
+
/**
|
|
1628
|
+
* TODO(crbug.com/409484302): Remove once Chrome migrates from
|
|
1629
|
+
* ChromeTrackEvent.chrome_frame_reporter to ChromeTrackEvent.frame_reporter.
|
|
1630
|
+
**/
|
|
1623
1631
|
export interface OldChromeFrameReporterArgs {
|
|
1624
1632
|
chrome_frame_reporter: ChromeFrameReporter;
|
|
1625
1633
|
}
|
|
@@ -1640,13 +1648,15 @@ export function isPipelineReporter(event: Event): event is PipelineReporter {
|
|
|
1640
1648
|
return event.name === Name.PIPELINE_REPORTER;
|
|
1641
1649
|
}
|
|
1642
1650
|
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1648
|
-
|
|
1649
|
-
|
|
1651
|
+
/**
|
|
1652
|
+
* A type used for synthetic events created based on a raw trace event.
|
|
1653
|
+
* A branded type is used to ensure not all events can be typed as
|
|
1654
|
+
* SyntheticBased and prevent places different to the
|
|
1655
|
+
* SyntheticEventsManager from creating synthetic events. This is
|
|
1656
|
+
* because synthetic events need to be registered in order to resolve
|
|
1657
|
+
* serialized event keys into event objects, so we ensure events are
|
|
1658
|
+
* registered at the time they are created by the SyntheticEventsManager.
|
|
1659
|
+
**/
|
|
1650
1660
|
export interface SyntheticBased<Ph extends Phase = Phase, T extends Event = Event> extends Event {
|
|
1651
1661
|
ph: Ph;
|
|
1652
1662
|
rawSourceEvent: T;
|
|
@@ -1657,9 +1667,11 @@ export function isSyntheticBased(event: Event): event is SyntheticBased {
|
|
|
1657
1667
|
return 'rawSourceEvent' in event;
|
|
1658
1668
|
}
|
|
1659
1669
|
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1670
|
+
/**
|
|
1671
|
+
* Nestable async events with a duration are made up of two distinct
|
|
1672
|
+
* events: the begin, and the end. We need both of them to be able to
|
|
1673
|
+
* display the right information, so we create these synthetic events.
|
|
1674
|
+
**/
|
|
1663
1675
|
export interface SyntheticEventPair<T extends PairableAsync = PairableAsync> extends SyntheticBased<Phase, T> {
|
|
1664
1676
|
rawSourceEvent: T;
|
|
1665
1677
|
name: T['name'];
|
|
@@ -1856,7 +1868,7 @@ export function isRasterTask(event: Event): event is RasterTask {
|
|
|
1856
1868
|
return event.name === Name.RASTER_TASK;
|
|
1857
1869
|
}
|
|
1858
1870
|
|
|
1859
|
-
|
|
1871
|
+
/** CompositeLayers has been replaced by "Commit", but we support both to not break old traces being imported. **/
|
|
1860
1872
|
export interface CompositeLayers extends Instant {
|
|
1861
1873
|
name: Name.COMPOSITE_LAYERS;
|
|
1862
1874
|
args: Args&{
|
|
@@ -2273,7 +2285,7 @@ export function isResourceReceivedData(
|
|
|
2273
2285
|
return event.name === 'ResourceReceivedData';
|
|
2274
2286
|
}
|
|
2275
2287
|
|
|
2276
|
-
|
|
2288
|
+
/** Any event where we receive data (and get an encodedDataLength) **/
|
|
2277
2289
|
export function isReceivedDataEvent(
|
|
2278
2290
|
event: Event,
|
|
2279
2291
|
): event is ResourceReceivedData|ResourceFinish|ResourceReceiveResponse {
|
|
@@ -3132,8 +3144,10 @@ export const enum Name {
|
|
|
3132
3144
|
LINK_PRECONNECT = 'LinkPreconnect',
|
|
3133
3145
|
}
|
|
3134
3146
|
|
|
3135
|
-
|
|
3136
|
-
|
|
3147
|
+
/**
|
|
3148
|
+
* NOT AN EXHAUSTIVE LIST: just some categories we use and refer
|
|
3149
|
+
* to in multiple places.
|
|
3150
|
+
**/
|
|
3137
3151
|
export const Categories = {
|
|
3138
3152
|
Console: 'blink.console',
|
|
3139
3153
|
UserTiming: 'blink.user_timing',
|
|
@@ -22,7 +22,7 @@ export class SourceMappingsUpdated extends Event {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
/** The code location key is created as a concatenation of its fields. **/
|
|
26
26
|
export const resolvedCodeLocationDataNames = new Map<string, ResolvedCodeLocationData|null>();
|
|
27
27
|
|
|
28
28
|
export class SourceMapsResolver extends EventTarget {
|
|
@@ -6,16 +6,18 @@ import type * as Marked from '../../../third_party/marked/marked.js';
|
|
|
6
6
|
import * as MarkdownView from '../../../ui/components/markdown_view/markdown_view.js';
|
|
7
7
|
import type * as Lit from '../../../ui/lit/lit.js';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
9
|
+
/**
|
|
10
|
+
* The model returns multiline code blocks in an erroneous way with the language being in new line.
|
|
11
|
+
* This renderer takes that into account and correctly updates the parsed multiline token with the language
|
|
12
|
+
* correctly identified and stripped from the content.
|
|
13
|
+
* Example:
|
|
14
|
+
* ```
|
|
15
|
+
* css <-- This should have been on the first line.
|
|
16
|
+
* * {
|
|
17
|
+
* color: red;
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
**/
|
|
19
21
|
export class MarkdownRendererWithCodeBlock extends MarkdownView.MarkdownView.MarkdownInsightRenderer {
|
|
20
22
|
override templateForToken(token: Marked.Marked.MarkedToken): Lit.TemplateResult|null {
|
|
21
23
|
if (token.type === 'code') {
|
|
@@ -77,13 +77,12 @@ export interface ViewInput {
|
|
|
77
77
|
selectedKey: string|null;
|
|
78
78
|
editable: boolean;
|
|
79
79
|
preview: Widget;
|
|
80
|
-
onSelect: (
|
|
81
|
-
onSort: (
|
|
82
|
-
onCreate: (
|
|
80
|
+
onSelect: (item: {key: string, value: string}|null) => void;
|
|
81
|
+
onSort: (ascending: boolean) => void;
|
|
82
|
+
onCreate: (key: string, value: string) => void;
|
|
83
83
|
onReferesh: () => void;
|
|
84
|
-
onEdit:
|
|
85
|
-
|
|
86
|
-
onDelete: (event: CustomEvent<HTMLElement>) => void;
|
|
84
|
+
onEdit: (key: string, value: string, columnId: string, valueBeforeEditing: string, newText: string) => void;
|
|
85
|
+
onDelete: (key: string) => void;
|
|
87
86
|
}
|
|
88
87
|
|
|
89
88
|
interface ViewOutput {
|
|
@@ -130,12 +129,10 @@ export abstract class KeyValueStorageItemsView extends UI.Widget.VBox {
|
|
|
130
129
|
.name=${`${id}-datagrid-with-preview`}
|
|
131
130
|
striped
|
|
132
131
|
style="flex: auto"
|
|
133
|
-
@
|
|
134
|
-
@sort=${input.onSort}
|
|
132
|
+
@sort=${(e: CustomEvent<{columnId: string, ascending: boolean}>) => input.onSort(e.detail.ascending)}
|
|
135
133
|
@refresh=${input.onReferesh}
|
|
136
|
-
@create=${input.onCreate}
|
|
137
|
-
@
|
|
138
|
-
@delete=${input.onDelete}
|
|
134
|
+
@create=${(e: CustomEvent<{key: string, value: string}>) => input.onCreate(e.detail.key, e.detail.value)}
|
|
135
|
+
@deselect=${() => input.onSelect(null)}
|
|
139
136
|
>
|
|
140
137
|
<table>
|
|
141
138
|
<tr>
|
|
@@ -148,6 +145,10 @@ export abstract class KeyValueStorageItemsView extends UI.Widget.VBox {
|
|
|
148
145
|
</tr>
|
|
149
146
|
${repeat(input.items, item => item.key, item => html`
|
|
150
147
|
<tr data-key=${item.key} data-value=${item.value}
|
|
148
|
+
@select=${() => input.onSelect(item)}
|
|
149
|
+
@edit=${(e: CustomEvent<{columnId: string, valueBeforeEditing: string, newText: string}>) =>
|
|
150
|
+
input.onEdit(item.key, item.value, e.detail.columnId, e.detail.valueBeforeEditing, e.detail.newText)}
|
|
151
|
+
@delete=${() => input.onDelete(item.key)}
|
|
151
152
|
selected=${(input.selectedKey === item.key) || nothing}>
|
|
152
153
|
<td>${item.key}</td>
|
|
153
154
|
<td>${item.value.substr(0, MAX_VALUE_LENGTH)}</td>
|
|
@@ -202,27 +203,25 @@ export abstract class KeyValueStorageItemsView extends UI.Widget.VBox {
|
|
|
202
203
|
selectedKey: this.#selectedKey,
|
|
203
204
|
editable: this.#editable,
|
|
204
205
|
preview: this.#preview,
|
|
205
|
-
onSelect: (
|
|
206
|
-
this.#toolbar?.setCanDeleteSelected(Boolean(
|
|
207
|
-
if (!
|
|
206
|
+
onSelect: (item: {key: string, value: string}|null) => {
|
|
207
|
+
this.#toolbar?.setCanDeleteSelected(Boolean(item));
|
|
208
|
+
if (!item) {
|
|
208
209
|
void this.#previewEntry(null);
|
|
209
210
|
} else {
|
|
210
|
-
void this.#previewEntry(
|
|
211
|
+
void this.#previewEntry(item);
|
|
211
212
|
}
|
|
212
213
|
},
|
|
213
|
-
onSort: (
|
|
214
|
-
this.#isSortOrderAscending =
|
|
214
|
+
onSort: (ascending: boolean) => {
|
|
215
|
+
this.#isSortOrderAscending = ascending;
|
|
215
216
|
},
|
|
216
|
-
onCreate: (
|
|
217
|
-
this.#createCallback(
|
|
217
|
+
onCreate: (key: string, value: string) => {
|
|
218
|
+
this.#createCallback(key, value);
|
|
218
219
|
},
|
|
219
|
-
onEdit:
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
onDelete: (event: CustomEvent<HTMLElement>) => {
|
|
225
|
-
this.#deleteCallback(event.detail.dataset.key || '');
|
|
220
|
+
onEdit: (key: string, value: string, columnId: string, valueBeforeEditing: string, newText: string) => {
|
|
221
|
+
this.#editingCallback(key, value, columnId, valueBeforeEditing, newText);
|
|
222
|
+
},
|
|
223
|
+
onDelete: (key: string) => {
|
|
224
|
+
this.#deleteCallback(key);
|
|
226
225
|
},
|
|
227
226
|
onReferesh: () => {
|
|
228
227
|
this.refreshItems();
|
|
@@ -316,7 +315,7 @@ export abstract class KeyValueStorageItemsView extends UI.Widget.VBox {
|
|
|
316
315
|
return true;
|
|
317
316
|
}
|
|
318
317
|
|
|
319
|
-
#editingCallback(
|
|
318
|
+
#editingCallback(key: string, value: string, columnIdentifier: string, oldText: string, newText: string): void {
|
|
320
319
|
if (!this.isEditAllowed(columnIdentifier, oldText, newText)) {
|
|
321
320
|
return;
|
|
322
321
|
}
|
|
@@ -324,13 +323,12 @@ export abstract class KeyValueStorageItemsView extends UI.Widget.VBox {
|
|
|
324
323
|
if (typeof oldText === 'string') {
|
|
325
324
|
this.removeItem(oldText);
|
|
326
325
|
}
|
|
327
|
-
this.setItem(newText,
|
|
328
|
-
this.#removeDupes(newText,
|
|
329
|
-
|
|
330
|
-
void this.#previewEntry({key: newText, value: editingNode.dataset.value || ''});
|
|
326
|
+
this.setItem(newText, value);
|
|
327
|
+
this.#removeDupes(newText, value);
|
|
328
|
+
void this.#previewEntry({key: newText, value});
|
|
331
329
|
} else {
|
|
332
|
-
this.setItem(
|
|
333
|
-
void this.#previewEntry({key
|
|
330
|
+
this.setItem(key, newText);
|
|
331
|
+
void this.#previewEntry({key, value: newText});
|
|
334
332
|
}
|
|
335
333
|
}
|
|
336
334
|
|
|
@@ -102,8 +102,9 @@ export class InterestGroupAccessGrid extends HTMLElement {
|
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
#renderGrid(): Lit.TemplateResult {
|
|
105
|
+
// clang-format off
|
|
105
106
|
return html`
|
|
106
|
-
<devtools-data-grid
|
|
107
|
+
<devtools-data-grid striped inline>
|
|
107
108
|
<table>
|
|
108
109
|
<tr>
|
|
109
110
|
<th id="event-time" sortable weight="10">${i18nString(UIStrings.eventTime)}</td>
|
|
@@ -111,8 +112,8 @@ export class InterestGroupAccessGrid extends HTMLElement {
|
|
|
111
112
|
<th id="event-group-owner" sortable weight="10">${i18nString(UIStrings.groupOwner)}</td>
|
|
112
113
|
<th id="event-group-name" sortable weight="10">${i18nString(UIStrings.groupName)}</td>
|
|
113
114
|
</tr>
|
|
114
|
-
${this.#datastores.map(
|
|
115
|
-
<tr
|
|
115
|
+
${this.#datastores.map(event => html`
|
|
116
|
+
<tr @select=${() => this.dispatchEvent(new CustomEvent('select', {detail: event}))}>
|
|
116
117
|
<td>${new Date(1e3 * event.accessTime).toLocaleString()}</td>
|
|
117
118
|
<td>${event.type}</td>
|
|
118
119
|
<td>${event.ownerOrigin}</td>
|
|
@@ -120,14 +121,8 @@ export class InterestGroupAccessGrid extends HTMLElement {
|
|
|
120
121
|
</tr>
|
|
121
122
|
`)}
|
|
122
123
|
</table>
|
|
123
|
-
</devtools-data-grid
|
|
124
|
-
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
#onSelect(event: CustomEvent<HTMLElement|null>): void {
|
|
128
|
-
if (event.detail) {
|
|
129
|
-
this.dispatchEvent(new CustomEvent('select', {detail: this.#datastores[Number(event.detail.dataset.index)]}));
|
|
130
|
-
}
|
|
124
|
+
</devtools-data-grid>`;
|
|
125
|
+
// clang-format on
|
|
131
126
|
}
|
|
132
127
|
}
|
|
133
128
|
|
|
@@ -109,11 +109,13 @@ customElements.define('devtools-resources-origin-trial-tree-view-badge', Badge);
|
|
|
109
109
|
|
|
110
110
|
type TreeNode<DataType> = TreeOutline.TreeOutlineUtils.TreeNode<DataType>;
|
|
111
111
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
112
|
+
/**
|
|
113
|
+
* The Origin Trial Tree has 4 levels of content:
|
|
114
|
+
* - Origin Trial (has multiple Origin Trial tokens)
|
|
115
|
+
* - Origin Trial Token (has only 1 raw token text)
|
|
116
|
+
* - Fields in Origin Trial Token
|
|
117
|
+
* - Raw Origin Trial Token text (folded because the content is long)
|
|
118
|
+
**/
|
|
117
119
|
export type OriginTrialTreeNodeData = Protocol.Page.OriginTrial|Protocol.Page.OriginTrialTokenWithStatus|string;
|
|
118
120
|
|
|
119
121
|
function constructOriginTrialTree(originTrial: Protocol.Page.OriginTrial): TreeNode<OriginTrialTreeNodeData> {
|
|
@@ -58,7 +58,7 @@ export interface ReportsGridData {
|
|
|
58
58
|
export interface ViewInput {
|
|
59
59
|
reports: Protocol.Network.ReportingApiReport[];
|
|
60
60
|
protocolMonitorExperimentEnabled: boolean;
|
|
61
|
-
onSelect: (
|
|
61
|
+
onSelect: (id: string) => void;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
export const DEFAULT_VIEW = (input: ViewInput, output: undefined, target: HTMLElement): void => {
|
|
@@ -69,7 +69,7 @@ export const DEFAULT_VIEW = (input: ViewInput, output: undefined, target: HTMLEl
|
|
|
69
69
|
<div class="reporting-container" jslog=${VisualLogging.section('reports')}>
|
|
70
70
|
<div class="reporting-header">${i18n.i18n.lockedString('Reports')}</div>
|
|
71
71
|
${input.reports.length > 0 ? html`
|
|
72
|
-
<devtools-data-grid striped
|
|
72
|
+
<devtools-data-grid striped>
|
|
73
73
|
<table>
|
|
74
74
|
<tr>
|
|
75
75
|
${input.protocolMonitorExperimentEnabled ? html`
|
|
@@ -91,7 +91,7 @@ export const DEFAULT_VIEW = (input: ViewInput, output: undefined, target: HTMLEl
|
|
|
91
91
|
<th id="body" weight="20">${i18n.i18n.lockedString('Body')}</th>
|
|
92
92
|
</tr>
|
|
93
93
|
${input.reports.map(report => html`
|
|
94
|
-
<tr
|
|
94
|
+
<tr @select=${() =>input.onSelect(report.id)}>
|
|
95
95
|
${input.protocolMonitorExperimentEnabled ? html`<td>${report.id}</td>` : ''}
|
|
96
96
|
<td>${report.initiatorUrl}</td>
|
|
97
97
|
<td>${report.type}</td>
|
|
@@ -133,17 +133,11 @@ export class ReportsGrid extends UI.Widget.Widget {
|
|
|
133
133
|
this.requestUpdate();
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
#onSelect = (e: CustomEvent<HTMLElement|null>): void => {
|
|
137
|
-
if (e.detail?.dataset.id) {
|
|
138
|
-
this.onReportSelected(e.detail.dataset.id);
|
|
139
|
-
}
|
|
140
|
-
};
|
|
141
|
-
|
|
142
136
|
override performUpdate(): void {
|
|
143
137
|
const viewInput = {
|
|
144
138
|
reports: this.reports,
|
|
145
139
|
protocolMonitorExperimentEnabled: this.#protocolMonitorExperimentEnabled,
|
|
146
|
-
onSelect: this
|
|
140
|
+
onSelect: this.onReportSelected,
|
|
147
141
|
};
|
|
148
142
|
this.#view(viewInput, undefined, this.contentElement);
|
|
149
143
|
}
|
|
@@ -84,7 +84,7 @@ export const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
|
84
84
|
|
|
85
85
|
export interface ViewInput {
|
|
86
86
|
events: Protocol.Storage.SharedStorageAccessedEvent[];
|
|
87
|
-
onSelect: (event:
|
|
87
|
+
onSelect: (event: Protocol.Storage.SharedStorageAccessedEvent) => void;
|
|
88
88
|
}
|
|
89
89
|
export type View = (input: ViewInput, output: object, target: HTMLElement) => void;
|
|
90
90
|
export const DEFAULT_VIEW: View = (input, _output, target) => {
|
|
@@ -108,7 +108,7 @@ export const DEFAULT_VIEW: View = (input, _output, target) => {
|
|
|
108
108
|
<devtools-icon class="info-icon medium" name="info"
|
|
109
109
|
title=${i18nString(UIStrings.allSharedStorageEvents)}>
|
|
110
110
|
</devtools-icon>
|
|
111
|
-
<devtools-data-grid striped inline
|
|
111
|
+
<devtools-data-grid striped inline>
|
|
112
112
|
<table>
|
|
113
113
|
<thead>
|
|
114
114
|
<tr>
|
|
@@ -133,8 +133,8 @@ export const DEFAULT_VIEW: View = (input, _output, target) => {
|
|
|
133
133
|
</tr>
|
|
134
134
|
</thead>
|
|
135
135
|
<tbody>
|
|
136
|
-
${input.events.map(
|
|
137
|
-
<tr
|
|
136
|
+
${input.events.map(event => html`
|
|
137
|
+
<tr @select=${() =>input.onSelect(event)}>
|
|
138
138
|
<td data-value=${event.accessTime}>
|
|
139
139
|
${new Date(1e3 * event.accessTime).toLocaleString()}
|
|
140
140
|
</td>
|
|
@@ -181,16 +181,8 @@ export class SharedStorageAccessGrid extends UI.Widget.Widget {
|
|
|
181
181
|
this.#view(
|
|
182
182
|
{
|
|
183
183
|
events: this.#events,
|
|
184
|
-
onSelect: this.#
|
|
184
|
+
onSelect: this.#onSelect.bind(this),
|
|
185
185
|
},
|
|
186
186
|
{}, this.contentElement);
|
|
187
187
|
}
|
|
188
|
-
|
|
189
|
-
#onSelectEvent(event: CustomEvent<HTMLElement>): void {
|
|
190
|
-
const index = parseInt(event.detail?.dataset.index || '', 10);
|
|
191
|
-
const datastore = isNaN(index) ? undefined : this.#events[index];
|
|
192
|
-
if (datastore) {
|
|
193
|
-
this.#onSelect(datastore);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
188
|
}
|
|
@@ -99,7 +99,7 @@ export interface MismatchedPreloadingGridData {
|
|
|
99
99
|
rows: MismatchedPreloadingGridRow[];
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
|
|
102
|
+
/** Grid component to show prerendering attempts. **/
|
|
103
103
|
export class MismatchedPreloadingGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<UI.Widget.VBox> {
|
|
104
104
|
readonly #shadow = this.attachShadow({mode: 'open'});
|
|
105
105
|
#data: MismatchedPreloadingGridData|null = null;
|
|
@@ -54,7 +54,7 @@ export interface PreloadingGridRow {
|
|
|
54
54
|
ruleSets: Protocol.Preload.RuleSet[];
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
|
|
57
|
+
/** Grid component to show prerendering attempts. **/
|
|
58
58
|
export class PreloadingGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<UI.Widget.VBox> {
|
|
59
59
|
|
|
60
60
|
readonly #shadow = this.attachShadow({mode: 'open'});
|
|
@@ -81,7 +81,7 @@ export class PreloadingGrid extends LegacyWrapper.LegacyWrapper.WrappableCompone
|
|
|
81
81
|
render(html`
|
|
82
82
|
<style>${preloadingGridStyles}</style>
|
|
83
83
|
<div class="preloading-container">
|
|
84
|
-
<devtools-data-grid striped
|
|
84
|
+
<devtools-data-grid striped>
|
|
85
85
|
<table>
|
|
86
86
|
<tr>
|
|
87
87
|
<th id="url" weight="40" sortable>${i18n.i18n.lockedString('URL')}</th>
|
|
@@ -97,7 +97,7 @@ export class PreloadingGrid extends LegacyWrapper.LegacyWrapper.WrappableCompone
|
|
|
97
97
|
(prerenderStatus === PreloadingStatus.FAILURE &&
|
|
98
98
|
(prefetchStatus === PreloadingStatus.READY || prefetchStatus === PreloadingStatus.SUCCESS));
|
|
99
99
|
const hasError = row.pipeline.getOriginallyTriggered().status === PreloadingStatus.FAILURE;
|
|
100
|
-
return html`<tr
|
|
100
|
+
return html`<tr @select=${() => this.dispatchEvent(new CustomEvent('select', {detail: row.id}))}>
|
|
101
101
|
<td title=${attempt.key.url}>${this.#urlShort(row, securityOrigin)}</td>
|
|
102
102
|
<td>${capitalizedAction(attempt.action)}</td>
|
|
103
103
|
<td>${row.ruleSets.length === 0 ? '' : ruleSetTagOrLocationShort(row.ruleSets[0], pageURL)}</td>
|
|
@@ -125,10 +125,6 @@ export class PreloadingGrid extends LegacyWrapper.LegacyWrapper.WrappableCompone
|
|
|
125
125
|
// clang-format on
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
#onPreloadingGridCellFocused(event: CustomEvent<HTMLElement>): void {
|
|
129
|
-
this.dispatchEvent(new CustomEvent('select', {detail: event.detail.dataset.id}));
|
|
130
|
-
}
|
|
131
|
-
|
|
132
128
|
// Shorten URL if a preloading attempt is same-origin.
|
|
133
129
|
#urlShort(row: PreloadingGridRow, securityOrigin: string|null): string {
|
|
134
130
|
const url = row.pipeline.getOriginallyTriggered().key.url;
|
|
@@ -445,7 +445,7 @@ export const PrefetchReasonDescription: Record<string, {name: () => Platform.UIS
|
|
|
445
445
|
PrefetchEvictedAfterBrowsingDataRemoved: {name: i18nLazyString(UIStrings.PrefetchEvictedAfterBrowsingDataRemoved)},
|
|
446
446
|
};
|
|
447
447
|
|
|
448
|
-
|
|
448
|
+
/** Decoding PrefetchFinalStatus prefetchAttempt to failure description. **/
|
|
449
449
|
export function prefetchFailureReason({prefetchStatus}: SDK.PreloadingModel.PrefetchAttempt): string|null {
|
|
450
450
|
// If you face an error on rolling CDP changes, see
|
|
451
451
|
// https://docs.google.com/document/d/1PnrfowsZMt62PX1EvvTp2Nqs3ji1zrklrAEe1JYbkTk
|
|
@@ -534,7 +534,7 @@ export function prefetchFailureReason({prefetchStatus}: SDK.PreloadingModel.Pref
|
|
|
534
534
|
}
|
|
535
535
|
}
|
|
536
536
|
|
|
537
|
-
|
|
537
|
+
/** Detailed failure reason for PrerenderFinalStatus. **/
|
|
538
538
|
export function prerenderFailureReason(attempt: SDK.PreloadingModel.PrerenderAttempt): string|null {
|
|
539
539
|
// If you face an error on rolling CDP changes, see
|
|
540
540
|
// https://docs.google.com/document/d/1PnrfowsZMt62PX1EvvTp2Nqs3ji1zrklrAEe1JYbkTk
|
|
@@ -63,7 +63,7 @@ export interface RuleSetGridRow {
|
|
|
63
63
|
preloadsStatusSummary: string;
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
/** Grid component to show SpeculationRules rule sets. **/
|
|
67
67
|
export class RuleSetGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<UI.Widget.VBox> {
|
|
68
68
|
readonly #shadow = this.attachShadow({mode: 'open'});
|
|
69
69
|
#data: RuleSetGridData|null = null;
|
|
@@ -128,7 +128,7 @@ export class RuleSetGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<
|
|
|
128
128
|
Lit.render(html`
|
|
129
129
|
<style>${ruleSetGridStyles}</style>
|
|
130
130
|
<div class="ruleset-container" jslog=${VisualLogging.pane('preloading-rules')}>
|
|
131
|
-
<devtools-data-grid striped
|
|
131
|
+
<devtools-data-grid striped>
|
|
132
132
|
<table>
|
|
133
133
|
<tr>
|
|
134
134
|
<th id="rule-set" weight="20" sortable>
|
|
@@ -143,7 +143,7 @@ export class RuleSetGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<
|
|
|
143
143
|
const revealInElements = ruleSet.backendNodeId !== undefined;
|
|
144
144
|
const revealInNetwork = ruleSet.url !== undefined && ruleSet.requestId;
|
|
145
145
|
return html`
|
|
146
|
-
<tr
|
|
146
|
+
<tr @select=${() => this.dispatchEvent(new CustomEvent('select', {detail: ruleSet.id}))}>
|
|
147
147
|
<td>
|
|
148
148
|
${revealInElements || revealInNetwork ? html`
|
|
149
149
|
<button class="link" role="link"
|
|
@@ -204,13 +204,6 @@ export class RuleSetGrid extends LegacyWrapper.LegacyWrapper.WrappableComponent<
|
|
|
204
204
|
`, this.#shadow, {host: this});
|
|
205
205
|
// clang-format on
|
|
206
206
|
}
|
|
207
|
-
|
|
208
|
-
#onRowSelected(event: CustomEvent<HTMLElement>): void {
|
|
209
|
-
const ruleSetId = event.detail.dataset.id;
|
|
210
|
-
if (ruleSetId !== undefined) {
|
|
211
|
-
this.dispatchEvent(new CustomEvent('select', {detail: ruleSetId}));
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
207
|
}
|
|
215
208
|
|
|
216
209
|
customElements.define('devtools-resources-ruleset-grid', RuleSetGrid);
|
|
@@ -138,8 +138,10 @@ export const enum UsedKind {
|
|
|
138
138
|
NO_PRELOADS = 'NoPreloads',
|
|
139
139
|
}
|
|
140
140
|
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
/**
|
|
142
|
+
* TODO(kenoss): Rename this class and file once https://crrev.com/c/4933567 landed.
|
|
143
|
+
* This also shows summary of speculations initiated by this page.
|
|
144
|
+
**/
|
|
143
145
|
export class UsedPreloadingView extends LegacyWrapper.LegacyWrapper.WrappableComponent<UI.Widget.VBox> {
|
|
144
146
|
readonly #shadow = this.attachShadow({mode: 'open'});
|
|
145
147
|
#data: UsedPreloadingViewData = {
|
|
@@ -101,11 +101,13 @@ function maybeRetrieveContextTypes<T = unknown>(
|
|
|
101
101
|
|
|
102
102
|
let loadedSourcesModule: (typeof Sources|undefined);
|
|
103
103
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
104
|
+
/**
|
|
105
|
+
* The sources module is imported here because the view with id `navigator-network`
|
|
106
|
+
* is implemented by `NetworkNavigatorView` in sources. It cannot be registered
|
|
107
|
+
* in the sources module as it belongs to the shell app and thus all apps
|
|
108
|
+
* that extend from shell will have such view registered. This would cause a
|
|
109
|
+
* collision with node_app as a separate view with the same id is registered in it.
|
|
110
|
+
**/
|
|
109
111
|
async function loadSourcesModule(): Promise<typeof Sources> {
|
|
110
112
|
if (!loadedSourcesModule) {
|
|
111
113
|
loadedSourcesModule = await import('../sources/sources.js');
|