chrome-devtools-frontend 1.0.1512147 → 1.0.1513662
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/docs/cookbook/release_management.md +15 -13
- package/docs/get_the_code.md +114 -35
- package/front_end/Images/src/ai-explorer-badge.svg +114 -0
- package/front_end/Images/src/code-whisperer-badge.svg +166 -0
- package/front_end/Images/src/devtools-user-badge.svg +129 -0
- package/front_end/Images/src/dom-detective-badge.svg +136 -0
- package/front_end/Images/src/speedster-badge.svg +166 -0
- package/front_end/core/common/Color.ts +40 -44
- package/front_end/core/common/Console.ts +4 -4
- package/front_end/core/common/ParsedURL.ts +14 -14
- package/front_end/core/common/ResourceType.ts +20 -20
- package/front_end/core/common/SegmentedRange.ts +13 -14
- package/front_end/core/common/Settings.ts +4 -4
- package/front_end/core/common/StringOutputStream.ts +4 -4
- package/front_end/core/host/GdpClient.ts +76 -2
- package/front_end/core/host/InspectorFrontendHost.ts +4 -1
- package/front_end/core/host/InspectorFrontendHostAPI.ts +2 -0
- package/front_end/core/host/ResourceLoader.ts +2 -2
- package/front_end/core/host/UserMetrics.ts +0 -2
- package/front_end/core/i18n/NumberFormatter.ts +7 -0
- package/front_end/core/protocol_client/InspectorBackend.ts +9 -9
- package/front_end/core/root/Runtime.ts +5 -2
- package/front_end/core/sdk/AccessibilityModel.ts +48 -48
- package/front_end/core/sdk/AnimationModel.ts +78 -79
- package/front_end/core/sdk/CPUProfilerModel.ts +5 -5
- package/front_end/core/sdk/CPUThrottlingManager.ts +17 -17
- package/front_end/core/sdk/CSSMatchedStyles.ts +44 -44
- package/front_end/core/sdk/CSSMedia.ts +22 -22
- package/front_end/core/sdk/CSSModel.ts +4 -4
- package/front_end/core/sdk/CSSProperty.ts +9 -9
- package/front_end/core/sdk/CSSPropertyParser.ts +1 -2
- package/front_end/core/sdk/CSSRule.ts +3 -3
- package/front_end/core/sdk/CSSStyleDeclaration.ts +27 -28
- package/front_end/core/sdk/CSSStyleSheetHeader.ts +13 -13
- package/front_end/core/sdk/CategorizedBreakpoint.ts +4 -4
- package/front_end/core/sdk/ChildTargetManager.ts +6 -6
- package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +4 -4
- package/front_end/core/sdk/ConsoleModel.ts +24 -24
- package/front_end/core/sdk/Cookie.ts +16 -16
- package/front_end/core/sdk/CookieParser.ts +6 -6
- package/front_end/core/sdk/DOMDebuggerModel.ts +88 -89
- package/front_end/core/sdk/DOMModel.ts +113 -113
- package/front_end/core/sdk/DebuggerModel.ts +102 -103
- package/front_end/core/sdk/EmulationModel.ts +6 -6
- package/front_end/core/sdk/EventBreakpointsModel.ts +5 -5
- package/front_end/core/sdk/HeapProfilerModel.ts +5 -5
- package/front_end/core/sdk/IsolateManager.ts +26 -26
- package/front_end/core/sdk/LayerTreeBase.ts +29 -30
- package/front_end/core/sdk/OverlayModel.ts +6 -6
- package/front_end/core/sdk/Resource.ts +43 -43
- package/front_end/core/sdk/ResourceTreeModel.ts +58 -61
- package/front_end/core/sdk/RuntimeModel.ts +12 -13
- package/front_end/core/sdk/SDKModel.ts +3 -3
- package/front_end/core/sdk/Script.ts +17 -17
- package/front_end/core/sdk/SecurityOriginManager.ts +14 -14
- package/front_end/core/sdk/ServerTiming.ts +2 -2
- package/front_end/core/sdk/ServiceWorkerCacheModel.ts +15 -15
- package/front_end/core/sdk/ServiceWorkerManager.ts +19 -24
- package/front_end/core/sdk/SourceMap.ts +10 -10
- package/front_end/core/sdk/StorageKeyManager.ts +12 -12
- package/front_end/core/sdk/Target.ts +33 -34
- package/front_end/core/sdk/TargetManager.ts +20 -20
- package/front_end/entrypoints/formatter_worker/AcornTokenizer.ts +8 -8
- package/front_end/entrypoints/formatter_worker/HTMLFormatter.ts +7 -7
- package/front_end/entrypoints/heap_snapshot_worker/AllocationProfile.ts +7 -7
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +24 -24
- package/front_end/entrypoints/main/GlobalAiButton.ts +3 -3
- package/front_end/entrypoints/main/MainImpl.ts +16 -14
- package/front_end/entrypoints/main/main-meta.ts +1 -2
- package/front_end/generated/InspectorBackendCommands.js +3 -2
- package/front_end/generated/SupportedCSSProperties.js +20 -0
- package/front_end/generated/protocol-mapping.d.ts +4 -0
- package/front_end/generated/protocol-proxy-api.d.ts +5 -0
- package/front_end/generated/protocol.ts +20 -0
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +18 -35
- package/front_end/models/ai_assistance/ai_assistance.ts +1 -1
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +7 -6
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +246 -119
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +187 -73
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +106 -100
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +20 -27
- package/front_end/models/ai_assistance/data_formatters/UnitFormatters.ts +151 -0
- package/front_end/models/badges/AiExplorerBadge.ts +21 -0
- package/front_end/models/badges/Badge.ts +10 -9
- package/front_end/models/badges/CodeWhispererBadge.ts +21 -0
- package/front_end/models/badges/DOMDetectiveBadge.ts +21 -0
- package/front_end/models/badges/SpeedsterBadge.ts +7 -2
- package/front_end/models/badges/StarterBadge.ts +6 -1
- package/front_end/models/badges/UserBadges.ts +61 -9
- package/front_end/models/bindings/CSSWorkspaceBinding.ts +6 -6
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +18 -18
- package/front_end/models/bindings/FileUtils.ts +15 -15
- package/front_end/models/bindings/ResourceScriptMapping.ts +14 -14
- package/front_end/models/elements/ElementUpdateRecord.ts +11 -11
- package/front_end/models/emulation/DeviceModeModel.ts +123 -131
- package/front_end/models/emulation/EmulatedDevices.ts +22 -22
- package/front_end/models/extensions/ExtensionPanel.ts +24 -24
- package/front_end/models/extensions/ExtensionServer.ts +4 -4
- package/front_end/models/javascript_metadata/NativeFunctions.js +14 -2
- package/front_end/models/persistence/IsolatedFileSystem.ts +18 -19
- package/front_end/models/persistence/IsolatedFileSystemManager.ts +13 -13
- package/front_end/models/trace/EventsSerializer.ts +5 -5
- package/front_end/models/trace/LanternComputationData.ts +10 -10
- package/front_end/models/trace/ModelImpl.ts +32 -54
- package/front_end/models/trace/Processor.ts +28 -30
- package/front_end/models/trace/extras/FilmStrip.ts +6 -6
- package/front_end/models/trace/extras/StackTraceForEvent.ts +22 -25
- package/front_end/models/trace/extras/ThirdParties.ts +16 -17
- package/front_end/models/trace/extras/TraceFilter.ts +1 -1
- package/front_end/models/trace/handlers/Threads.ts +10 -10
- package/front_end/models/trace/handlers/helpers.ts +9 -9
- package/front_end/models/trace/handlers/types.ts +3 -3
- package/front_end/models/trace/insights/CLSCulprits.ts +12 -14
- package/front_end/models/trace/insights/Cache.ts +8 -4
- package/front_end/models/trace/insights/DOMSize.ts +8 -5
- package/front_end/models/trace/insights/DocumentLatency.ts +2 -2
- package/front_end/models/trace/insights/DuplicatedJavaScript.ts +3 -3
- package/front_end/models/trace/insights/FontDisplay.ts +3 -4
- package/front_end/models/trace/insights/ForcedReflow.ts +3 -3
- package/front_end/models/trace/insights/INPBreakdown.ts +2 -2
- package/front_end/models/trace/insights/ImageDelivery.ts +11 -11
- package/front_end/models/trace/insights/LCPBreakdown.ts +4 -4
- package/front_end/models/trace/insights/LCPDiscovery.ts +4 -4
- package/front_end/models/trace/insights/LegacyJavaScript.ts +2 -2
- package/front_end/models/trace/insights/ModernHTTP.ts +4 -5
- package/front_end/models/trace/insights/NetworkDependencyTree.ts +12 -12
- package/front_end/models/trace/insights/RenderBlocking.ts +9 -10
- package/front_end/models/trace/insights/SlowCSSSelector.ts +2 -2
- package/front_end/models/trace/insights/ThirdParties.ts +4 -5
- package/front_end/models/trace/insights/Viewport.ts +8 -5
- package/front_end/models/trace/insights/types.ts +1 -0
- package/front_end/models/trace/lantern/testing/MetricTestUtils.ts +10 -10
- package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +52 -52
- package/front_end/panels/accessibility/AccessibilitySidebarView.ts +8 -8
- package/front_end/panels/animation/AnimationTimeline.ts +5 -5
- package/front_end/panels/animation/AnimationUI.ts +22 -23
- package/front_end/panels/application/ApplicationPanelSidebar.ts +12 -12
- package/front_end/panels/application/DOMStorageModel.ts +23 -23
- package/front_end/panels/application/ExtensionStorageModel.ts +31 -31
- package/front_end/panels/application/IndexedDBModel.ts +1 -0
- package/front_end/panels/application/PreloadingTreeElement.ts +8 -8
- package/front_end/panels/application/ServiceWorkersView.ts +0 -53
- package/front_end/panels/application/preloading/components/PreloadingDisabledInfobar.ts +2 -2
- package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +2 -2
- package/front_end/panels/common/BadgeNotification.ts +140 -10
- package/front_end/panels/common/GdpSignUpDialog.ts +5 -0
- package/front_end/panels/common/badgeNotification.css +30 -9
- package/front_end/panels/console/ConsoleContextSelector.ts +9 -9
- package/front_end/panels/console/ConsolePrompt.ts +8 -5
- package/front_end/panels/console/ConsoleView.ts +13 -13
- package/front_end/panels/console/ConsoleViewport.ts +29 -29
- package/front_end/panels/coverage/CoverageModel.ts +22 -22
- package/front_end/panels/elements/ClassesPaneWidget.ts +1 -1
- package/front_end/panels/elements/ComputedStyleModel.ts +17 -18
- package/front_end/panels/elements/DOMPath.ts +2 -2
- package/front_end/panels/elements/ElementsPanel.ts +13 -13
- package/front_end/panels/elements/ElementsTreeElement.ts +30 -18
- package/front_end/panels/elements/ElementsTreeOutline.ts +44 -48
- package/front_end/panels/elements/ShortcutTreeElement.ts +4 -4
- package/front_end/panels/elements/StylePropertiesSection.ts +7 -4
- package/front_end/panels/elements/StylePropertyTreeElement.ts +54 -50
- package/front_end/panels/elements/StylesSidebarPane.ts +19 -19
- package/front_end/panels/emulation/DeviceModeToolbar.ts +7 -7
- package/front_end/panels/emulation/DeviceModeView.ts +6 -6
- package/front_end/panels/emulation/MediaQueryInspector.ts +18 -18
- package/front_end/panels/event_listeners/EventListenersView.ts +13 -14
- package/front_end/panels/layer_viewer/LayerTreeOutline.ts +3 -3
- package/front_end/panels/layer_viewer/LayerViewHost.ts +13 -13
- package/front_end/panels/layer_viewer/PaintProfilerView.ts +9 -10
- package/front_end/panels/layer_viewer/TransformController.ts +34 -36
- package/front_end/panels/layers/LayerTreeModel.ts +41 -40
- package/front_end/panels/lighthouse/LighthouseReportSelector.ts +13 -13
- package/front_end/panels/lighthouse/LighthouseStartView.ts +7 -7
- package/front_end/panels/media/PlayerMessagesView.ts +5 -5
- package/front_end/panels/media/TickingFlameChart.ts +24 -24
- package/front_end/panels/media/TickingFlameChartHelpers.ts +32 -32
- package/front_end/panels/network/NetworkItemView.ts +4 -4
- package/front_end/panels/network/NetworkLogViewColumns.ts +29 -29
- package/front_end/panels/network/NetworkPanel.ts +8 -5
- package/front_end/panels/network/ResourceWebSocketFrameView.ts +10 -10
- package/front_end/panels/profiler/HeapDetachedElementsView.ts +3 -3
- package/front_end/panels/profiler/HeapProfileView.ts +1 -1
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +3 -4
- package/front_end/panels/profiler/ProfileHeader.ts +25 -25
- package/front_end/panels/profiler/ProfileLauncherView.ts +5 -6
- package/front_end/panels/recorder/components/ReplaySection.ts +3 -1
- package/front_end/panels/security/OriginTreeElement.ts +8 -8
- package/front_end/panels/security/SecurityPanel.ts +5 -5
- package/front_end/panels/settings/SettingsScreen.ts +18 -18
- package/front_end/panels/settings/components/SyncSection.ts +26 -8
- package/front_end/panels/sources/AiCodeCompletionPlugin.ts +3 -0
- package/front_end/panels/sources/DebuggerPausedMessage.ts +8 -9
- package/front_end/panels/sources/NavigatorView.ts +43 -46
- package/front_end/panels/sources/SourcesPanel.ts +35 -35
- package/front_end/panels/sources/SourcesView.ts +13 -13
- package/front_end/panels/sources/TabbedEditorContainer.ts +19 -22
- package/front_end/panels/sources/UISourceCodeFrame.ts +4 -4
- package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +34 -36
- package/front_end/panels/timeline/AnimationsTrackAppender.ts +3 -3
- package/front_end/panels/timeline/CompatibilityTracksAppender.ts +8 -8
- package/front_end/panels/timeline/CountersGraph.ts +16 -16
- package/front_end/panels/timeline/EntriesFilter.ts +4 -3
- package/front_end/panels/timeline/EventsTimelineTreeView.ts +3 -3
- package/front_end/panels/timeline/GPUTrackAppender.ts +3 -3
- package/front_end/panels/timeline/Initiators.ts +10 -10
- package/front_end/panels/timeline/InteractionsTrackAppender.ts +5 -5
- package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +7 -7
- package/front_end/panels/timeline/ModificationsManager.ts +8 -15
- package/front_end/panels/timeline/TargetForEvent.ts +2 -2
- package/front_end/panels/timeline/ThirdPartyTreeView.ts +1 -1
- package/front_end/panels/timeline/ThreadAppender.ts +13 -13
- package/front_end/panels/timeline/TimelineDetailsView.ts +6 -14
- package/front_end/panels/timeline/TimelineEventOverview.ts +27 -26
- package/front_end/panels/timeline/TimelineFilters.ts +5 -5
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +54 -53
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +34 -34
- package/front_end/panels/timeline/TimelineFlameChartView.ts +18 -31
- package/front_end/panels/timeline/TimelineHistoryManager.ts +17 -18
- package/front_end/panels/timeline/TimelineMiniMap.ts +6 -6
- package/front_end/panels/timeline/TimelinePaintProfilerView.ts +6 -6
- package/front_end/panels/timeline/TimelinePanel.ts +73 -68
- package/front_end/panels/timeline/TimelineSelectorStatsView.ts +7 -5
- package/front_end/panels/timeline/TimelineTreeView.ts +10 -10
- package/front_end/panels/timeline/TimelineUIUtils.ts +47 -46
- package/front_end/panels/timeline/TimingsTrackAppender.ts +12 -12
- package/front_end/panels/timeline/TracingLayerTree.ts +43 -43
- package/front_end/panels/timeline/TrackConfigBanner.ts +6 -6
- package/front_end/panels/timeline/TrackConfiguration.ts +1 -1
- package/front_end/panels/timeline/components/DetailsView.ts +4 -4
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +12 -21
- package/front_end/panels/timeline/components/LiveMetricsView.ts +2 -1
- package/front_end/panels/timeline/components/NetworkRequestDetails.ts +5 -5
- package/front_end/panels/timeline/components/Sidebar.ts +4 -14
- package/front_end/panels/timeline/components/SidebarInsightsTab.ts +13 -36
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +21 -19
- package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +1 -1
- package/front_end/panels/timeline/components/insights/Cache.ts +4 -0
- package/front_end/panels/timeline/components/insights/DOMSize.ts +5 -1
- package/front_end/panels/timeline/components/insights/Helpers.ts +19 -0
- package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +1 -1
- package/front_end/panels/timeline/components/insights/Viewport.ts +4 -0
- package/front_end/panels/timeline/overlays/OverlaysImpl.ts +1 -1
- package/front_end/panels/timeline/utils/AICallTree.ts +11 -11
- package/front_end/panels/timeline/utils/AIContext.ts +17 -19
- package/front_end/panels/timeline/utils/EntityMapper.ts +6 -5
- package/front_end/panels/timeline/utils/EntryName.ts +2 -2
- package/front_end/panels/timeline/utils/EntryNodes.ts +5 -5
- package/front_end/panels/timeline/utils/EntryStyles.ts +4 -4
- package/front_end/panels/timeline/utils/FreshRecording.ts +3 -3
- package/front_end/panels/timeline/utils/Helpers.ts +0 -18
- package/front_end/panels/timeline/utils/InsightAIContext.ts +6 -6
- package/front_end/panels/timeline/utils/SourceMapsResolver.ts +7 -7
- package/front_end/panels/webauthn/WebauthnPane.ts +1 -0
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/codemirror.next/chunk/angular.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/angular.js.map +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/cpp.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/cpp.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/java.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/java.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/legacy.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/less.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/less.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/markdown.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/markdown.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/chunk/python.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/python.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/sass.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/sass.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/svelte.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/svelte.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/vue.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/vue.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/wast.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/wast.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/xml.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/xml.js.map +1 -1
- package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
- package/front_end/third_party/codemirror.next/package.json +1 -1
- package/front_end/third_party/codemirror.next/rebuild.sh +1 -1
- package/front_end/third_party/json5/rebuild.sh +1 -1
- package/front_end/third_party/legacy-javascript/{update.sh → rebuild.sh} +1 -1
- package/front_end/third_party/lit/lib/decorators.d.ts +26 -9
- package/front_end/third_party/lit/lib/decorators.js +5 -5
- package/front_end/third_party/lit/lib/decorators.js.map +1 -1
- package/front_end/third_party/lit/lib/directive.js.map +1 -1
- package/front_end/third_party/lit/lib/directives.js +8 -13
- package/front_end/third_party/lit/lib/directives.js.map +1 -1
- package/front_end/third_party/lit/lib/lit.d.ts +26 -9
- package/front_end/third_party/lit/lib/lit.js +5 -5
- package/front_end/third_party/lit/lib/lit.js.map +1 -1
- package/front_end/third_party/lit/lib/static-html.js +2 -2
- package/front_end/third_party/lit/lib/static-html.js.map +1 -1
- package/front_end/third_party/lit/rebuild.sh +1 -1
- package/front_end/third_party/third-party-web/rebuild.sh +1 -1
- package/front_end/ui/components/dialogs/Dialog.ts +6 -7
- package/front_end/ui/legacy/ActionRegistration.ts +9 -9
- package/front_end/ui/legacy/DockController.ts +18 -18
- package/front_end/ui/legacy/FilterBar.ts +7 -7
- package/front_end/ui/legacy/Fragment.ts +4 -4
- package/front_end/ui/legacy/GlassPane.ts +12 -12
- package/front_end/ui/legacy/InspectorView.ts +5 -15
- package/front_end/ui/legacy/ListControl.ts +27 -27
- package/front_end/ui/legacy/ListWidget.ts +4 -4
- package/front_end/ui/legacy/PopoverHelper.ts +4 -4
- package/front_end/ui/legacy/ShortcutRegistry.ts +17 -17
- package/front_end/ui/legacy/TabbedPane.ts +74 -75
- package/front_end/ui/legacy/TextPrompt.ts +31 -31
- package/front_end/ui/legacy/Toolbar.ts +13 -14
- package/front_end/ui/legacy/ViewManager.ts +30 -31
- package/front_end/ui/legacy/Widget.ts +6 -6
- package/front_end/ui/legacy/XLink.ts +9 -9
- package/front_end/ui/legacy/ZoomManager.ts +9 -9
- package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +27 -27
- package/front_end/ui/legacy/components/color_picker/ContrastInfo.ts +30 -32
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +15 -15
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +64 -64
- package/front_end/ui/legacy/components/data_grid/ShowMoreDataGridNode.ts +2 -2
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -11
- package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +12 -12
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -3
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +14 -14
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +8 -8
- package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +5 -5
- package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +4 -4
- package/front_end/ui/legacy/filter.css +1 -1
- package/front_end/ui/legacy/inspectorCommon.css +1 -1
- package/front_end/ui/legacy/softDropDownButton.css +1 -1
- package/front_end/ui/legacy/theme_support/ThemeSupport.ts +4 -4
- package/front_end/ui/visual_logging/KnownContextValues.ts +2 -2
- package/package.json +1 -1
- package/front_end/models/ai_assistance/data_formatters/Types.ts +0 -9
@@ -144,7 +144,7 @@ export class ThreadAppender implements TrackAppender {
|
|
144
144
|
|
145
145
|
#colorGenerator: Common.Color.Generator;
|
146
146
|
#compatibilityBuilder: CompatibilityTracksAppender;
|
147
|
-
#parsedTrace: Trace.
|
147
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
148
148
|
|
149
149
|
#entries: readonly Trace.Types.Events.Event[] = [];
|
150
150
|
#tree: Trace.Helpers.TreeHelpers.TraceEntryTree;
|
@@ -159,7 +159,7 @@ export class ThreadAppender implements TrackAppender {
|
|
159
159
|
#url = '';
|
160
160
|
#headerNestingLevel: number|null = null;
|
161
161
|
constructor(
|
162
|
-
compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.
|
162
|
+
compatibilityBuilder: CompatibilityTracksAppender, parsedTrace: Trace.TraceModel.ParsedTrace,
|
163
163
|
processId: Trace.Types.Events.ProcessID, threadId: Trace.Types.Events.ThreadID, threadName: string|null,
|
164
164
|
type: Trace.Handlers.Threads.ThreadType, entries: readonly Trace.Types.Events.Event[],
|
165
165
|
tree: Trace.Helpers.TreeHelpers.TraceEntryTree) {
|
@@ -184,15 +184,15 @@ export class ThreadAppender implements TrackAppender {
|
|
184
184
|
this.#entries = entries;
|
185
185
|
this.#tree = tree;
|
186
186
|
this.#threadDefaultName = threadName || i18nString(UIStrings.threadS, {PH1: threadId});
|
187
|
-
this.isOnMainFrame = Boolean(this.#parsedTrace.Renderer?.processes.get(processId)?.isOnMainFrame);
|
187
|
+
this.isOnMainFrame = Boolean(this.#parsedTrace.data.Renderer?.processes.get(processId)?.isOnMainFrame);
|
188
188
|
this.threadType = type;
|
189
189
|
// AuctionWorklets are threads, so we re-use this appender rather than
|
190
190
|
// duplicate it, but we change the name because we want to render these
|
191
191
|
// lower down than other threads.
|
192
|
-
if (this.#parsedTrace.AuctionWorklets.worklets.has(processId)) {
|
192
|
+
if (this.#parsedTrace.data.AuctionWorklets.worklets.has(processId)) {
|
193
193
|
this.appenderName = 'Thread_AuctionWorklet';
|
194
194
|
}
|
195
|
-
this.#url = this.#parsedTrace.Renderer?.processes.get(this.#processId)?.url || '';
|
195
|
+
this.#url = this.#parsedTrace.data.Renderer?.processes.get(this.#processId)?.url || '';
|
196
196
|
}
|
197
197
|
|
198
198
|
processId(): Trace.Types.Events.ProcessID {
|
@@ -353,7 +353,7 @@ export class ThreadAppender implements TrackAppender {
|
|
353
353
|
return Platform.assertNever(this.threadType, `Unknown thread type: ${this.threadType}`);
|
354
354
|
}
|
355
355
|
let suffix = '';
|
356
|
-
if (this.#parsedTrace.Meta.traceIsGeneric) {
|
356
|
+
if (this.#parsedTrace.data.Meta.traceIsGeneric) {
|
357
357
|
suffix = suffix + ` (${this.threadId()})`;
|
358
358
|
}
|
359
359
|
return (threadTypeLabel || this.#threadDefaultName) + suffix;
|
@@ -368,7 +368,7 @@ export class ThreadAppender implements TrackAppender {
|
|
368
368
|
}
|
369
369
|
|
370
370
|
#buildNameForAuctionWorklet(): string {
|
371
|
-
const workletMetadataEvent = this.#parsedTrace.AuctionWorklets.worklets.get(this.#processId);
|
371
|
+
const workletMetadataEvent = this.#parsedTrace.data.AuctionWorklets.worklets.get(this.#processId);
|
372
372
|
// We should always have this event - if we do not, we were instantiated with invalid data.
|
373
373
|
if (!workletMetadataEvent) {
|
374
374
|
return i18nString(UIStrings.unknownWorklet);
|
@@ -422,9 +422,9 @@ export class ThreadAppender implements TrackAppender {
|
|
422
422
|
}
|
423
423
|
|
424
424
|
#buildNameForWorker(): string {
|
425
|
-
const url = this.#parsedTrace.Renderer?.processes.get(this.#processId)?.url || '';
|
426
|
-
const workerId = this.#parsedTrace.Workers.workerIdByThread.get(this.#threadId);
|
427
|
-
const workerURL = workerId ? this.#parsedTrace.Workers.workerURLById.get(workerId) : url;
|
425
|
+
const url = this.#parsedTrace.data.Renderer?.processes.get(this.#processId)?.url || '';
|
426
|
+
const workerId = this.#parsedTrace.data.Workers.workerIdByThread.get(this.#threadId);
|
427
|
+
const workerURL = workerId ? this.#parsedTrace.data.Workers.workerURLById.get(workerId) : url;
|
428
428
|
// Try to create a name using the worker url if present. If not, use a generic label.
|
429
429
|
let workerName =
|
430
430
|
workerURL ? i18nString(UIStrings.workerS, {PH1: workerURL}) : i18nString(UIStrings.dedicatedWorker);
|
@@ -514,7 +514,7 @@ export class ThreadAppender implements TrackAppender {
|
|
514
514
|
addDecorationToEvent(
|
515
515
|
flameChartData, index, {type: PerfUI.FlameChart.FlameChartDecorationType.HIDDEN_DESCENDANTS_ARROW});
|
516
516
|
}
|
517
|
-
const warnings = this.#parsedTrace.Warnings.perEvent.get(entry);
|
517
|
+
const warnings = this.#parsedTrace.data.Warnings.perEvent.get(entry);
|
518
518
|
if (!warnings) {
|
519
519
|
return;
|
520
520
|
}
|
@@ -539,7 +539,7 @@ export class ThreadAppender implements TrackAppender {
|
|
539
539
|
* Gets the color an event added by this appender should be rendered with.
|
540
540
|
*/
|
541
541
|
colorForEvent(event: Trace.Types.Events.Event): string {
|
542
|
-
if (this.#parsedTrace.Meta.traceIsGeneric) {
|
542
|
+
if (this.#parsedTrace.data.Meta.traceIsGeneric) {
|
543
543
|
return event.name ? `hsl(${Platform.StringUtilities.hashCode(event.name) % 300 + 30}, 40%, 70%)` : '#ccc';
|
544
544
|
}
|
545
545
|
|
@@ -583,7 +583,7 @@ export class ThreadAppender implements TrackAppender {
|
|
583
583
|
const range = (endLine !== -1 || endLine === startLine) ? `${startLine}...${endLine}` : startLine;
|
584
584
|
info.title += ` - ${url} [${range}]`;
|
585
585
|
}
|
586
|
-
const selfTime = this.#parsedTrace.Renderer.entryToNode.get(event)?.selfTime;
|
586
|
+
const selfTime = this.#parsedTrace.data.Renderer.entryToNode.get(event)?.selfTime;
|
587
587
|
info.formattedTime = getDurationString(event.dur, selfTime);
|
588
588
|
}
|
589
589
|
}
|
@@ -86,8 +86,7 @@ export class TimelineDetailsPane extends
|
|
86
86
|
private selection?: TimelineSelection|null;
|
87
87
|
private updateContentsScheduled: boolean;
|
88
88
|
private lazySelectorStatsView: TimelineSelectorStatsView|null;
|
89
|
-
#parsedTrace: Trace.
|
90
|
-
#traceInsightsSets: Trace.Insights.Types.TraceInsightSets|null = null;
|
89
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace|null = null;
|
91
90
|
#eventToRelatedInsightsMap: TimelineComponents.RelatedInsightChips.EventToRelatedInsightsMap|null = null;
|
92
91
|
#onTraceBoundsChangeBound = this.#onTraceBoundsChange.bind(this);
|
93
92
|
#thirdPartyTree = new ThirdPartyTreeViewWidget();
|
@@ -270,9 +269,8 @@ export class TimelineDetailsPane extends
|
|
270
269
|
}
|
271
270
|
|
272
271
|
async setModel(data: {
|
273
|
-
parsedTrace: Trace.
|
272
|
+
parsedTrace: Trace.TraceModel.ParsedTrace|null,
|
274
273
|
selectedEvents: Trace.Types.Events.Event[]|null,
|
275
|
-
traceInsightsSets: Trace.Insights.Types.TraceInsightSets|null,
|
276
274
|
eventToRelatedInsightsMap: TimelineComponents.RelatedInsightChips.EventToRelatedInsightsMap|null,
|
277
275
|
entityMapper: Utils.EntityMapper.EntityMapper|null,
|
278
276
|
}): Promise<void> {
|
@@ -284,14 +282,12 @@ export class TimelineDetailsPane extends
|
|
284
282
|
this.#parsedTrace = data.parsedTrace;
|
285
283
|
}
|
286
284
|
if (data.parsedTrace) {
|
287
|
-
this.#summaryContent.filmStrip = Trace.Extras.FilmStrip.
|
285
|
+
this.#summaryContent.filmStrip = Trace.Extras.FilmStrip.fromHandlerData(data.parsedTrace.data);
|
288
286
|
this.#entityMapper = new Utils.EntityMapper.EntityMapper(data.parsedTrace);
|
289
287
|
}
|
290
288
|
this.#selectedEvents = data.selectedEvents;
|
291
|
-
this.#traceInsightsSets = data.traceInsightsSets;
|
292
289
|
this.#eventToRelatedInsightsMap = data.eventToRelatedInsightsMap;
|
293
290
|
this.#summaryContent.eventToRelatedInsightsMap = this.#eventToRelatedInsightsMap;
|
294
|
-
this.#summaryContent.traceInsightsSets = this.#traceInsightsSets;
|
295
291
|
this.#summaryContent.parsedTrace = this.#parsedTrace;
|
296
292
|
this.#summaryContent.entityMapper = this.#entityMapper;
|
297
293
|
this.tabbedPane.closeTabs([Tab.PaintProfiler, Tab.LayerViewer], false);
|
@@ -600,8 +596,7 @@ interface SelectedRange {
|
|
600
596
|
interface SummaryViewInput {
|
601
597
|
selectedEvent: Trace.Types.Events.Event|null;
|
602
598
|
eventToRelatedInsightsMap: TimelineComponents.RelatedInsightChips.EventToRelatedInsightsMap|null;
|
603
|
-
parsedTrace: Trace.
|
604
|
-
traceInsightsSets: Trace.Insights.Types.TraceInsightSets|null;
|
599
|
+
parsedTrace: Trace.TraceModel.ParsedTrace|null;
|
605
600
|
entityMapper: Utils.EntityMapper.EntityMapper|null;
|
606
601
|
target: SDK.Target.Target|null;
|
607
602
|
linkifier: Components.Linkifier.Linkifier|null;
|
@@ -631,8 +626,7 @@ class SummaryView extends UI.Widget.Widget {
|
|
631
626
|
#view: View;
|
632
627
|
selectedEvent: Trace.Types.Events.Event|null = null;
|
633
628
|
eventToRelatedInsightsMap: TimelineComponents.RelatedInsightChips.EventToRelatedInsightsMap|null = null;
|
634
|
-
parsedTrace: Trace.
|
635
|
-
traceInsightsSets: Trace.Insights.Types.TraceInsightSets|null = null;
|
629
|
+
parsedTrace: Trace.TraceModel.ParsedTrace|null = null;
|
636
630
|
entityMapper: Utils.EntityMapper.EntityMapper|null = null;
|
637
631
|
target: SDK.Target.Target|null = null;
|
638
632
|
linkifier: Components.Linkifier.Linkifier|null = null;
|
@@ -650,7 +644,6 @@ class SummaryView extends UI.Widget.Widget {
|
|
650
644
|
selectedEvent: this.selectedEvent,
|
651
645
|
eventToRelatedInsightsMap: this.eventToRelatedInsightsMap,
|
652
646
|
parsedTrace: this.parsedTrace,
|
653
|
-
traceInsightsSets: this.traceInsightsSets,
|
654
647
|
entityMapper: this.entityMapper,
|
655
648
|
target: this.target,
|
656
649
|
linkifier: this.linkifier,
|
@@ -668,7 +661,7 @@ function generateRangeSummaryDetails(input: SummaryViewInput): LitTemplate {
|
|
668
661
|
return nothing;
|
669
662
|
}
|
670
663
|
|
671
|
-
const minBoundsMilli = Trace.Helpers.Timing.microToMilli(parsedTrace.Meta.traceBounds.min);
|
664
|
+
const minBoundsMilli = Trace.Helpers.Timing.microToMilli(parsedTrace.data.Meta.traceBounds.min);
|
672
665
|
const {events, startTime, endTime, thirdPartyTree} = selectedRange;
|
673
666
|
const aggregatedStats = TimelineUIUtils.statsForTimeRange(events, startTime, endTime);
|
674
667
|
const startOffset = startTime - minBoundsMilli;
|
@@ -695,7 +688,6 @@ async function renderSelectedEventDetails(
|
|
695
688
|
<devtools-widget data-layout-shift-details .widgetConfig=${
|
696
689
|
UI.Widget.widgetConfig(TimelineComponents.LayoutShiftDetails.LayoutShiftDetails, {
|
697
690
|
event: selectedEvent,
|
698
|
-
traceInsightsSets: input.traceInsightsSets,
|
699
691
|
parsedTrace: input.parsedTrace,
|
700
692
|
isFreshRecording: traceRecordingIsFresh,
|
701
693
|
})}
|
@@ -81,8 +81,8 @@ export abstract class TimelineEventOverview extends PerfUI.TimelineOverviewPane.
|
|
81
81
|
}
|
82
82
|
|
83
83
|
export class TimelineEventOverviewNetwork extends TimelineEventOverview {
|
84
|
-
#parsedTrace: Trace.
|
85
|
-
constructor(parsedTrace: Trace.
|
84
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
85
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
|
86
86
|
super('network', i18nString(UIStrings.net));
|
87
87
|
this.#parsedTrace = parsedTrace;
|
88
88
|
}
|
@@ -105,7 +105,7 @@ export class TimelineEventOverviewNetwork extends TimelineEventOverview {
|
|
105
105
|
max: end,
|
106
106
|
range: end - start,
|
107
107
|
} :
|
108
|
-
Trace.Helpers.Timing.traceWindowMilliSeconds(this.#parsedTrace.Meta.traceBounds);
|
108
|
+
Trace.Helpers.Timing.traceWindowMilliSeconds(this.#parsedTrace.data.Meta.traceBounds);
|
109
109
|
|
110
110
|
// We draw two paths, so each can take up half the height
|
111
111
|
const pathHeight = this.height() / 2;
|
@@ -119,7 +119,7 @@ export class TimelineEventOverviewNetwork extends TimelineEventOverview {
|
|
119
119
|
const highPath = new Path2D();
|
120
120
|
const lowPath = new Path2D();
|
121
121
|
|
122
|
-
for (const request of this.#parsedTrace.NetworkRequests.byTime) {
|
122
|
+
for (const request of this.#parsedTrace.data.NetworkRequests.byTime) {
|
123
123
|
const path = Trace.Helpers.Network.isSyntheticNetworkRequestHighPriority(request) ? highPath : lowPath;
|
124
124
|
const {startTime, endTime} = Trace.Helpers.Timing.eventTimingsMilliSeconds(request);
|
125
125
|
const rectStart = Math.max(Math.floor((startTime - traceBoundsMilli.min) * scale), 0);
|
@@ -145,12 +145,12 @@ const categoryToIndex = new WeakMap<Utils.EntryStyles.TimelineCategory, number>(
|
|
145
145
|
|
146
146
|
export class TimelineEventOverviewCPUActivity extends TimelineEventOverview {
|
147
147
|
private backgroundCanvas: HTMLCanvasElement;
|
148
|
-
#parsedTrace: Trace.
|
148
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
149
149
|
#drawn = false;
|
150
150
|
#start: Trace.Types.Timing.Milli;
|
151
151
|
#end: Trace.Types.Timing.Milli;
|
152
152
|
|
153
|
-
constructor(parsedTrace: Trace.
|
153
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
|
154
154
|
// During the sync tracks migration this component can use either legacy
|
155
155
|
// Performance Model data or the new engine's data. Once the migration is
|
156
156
|
// complete this will be updated to only use the new engine and mentions of
|
@@ -158,8 +158,8 @@ export class TimelineEventOverviewCPUActivity extends TimelineEventOverview {
|
|
158
158
|
super('cpu-activity', i18nString(UIStrings.cpu));
|
159
159
|
this.#parsedTrace = parsedTrace;
|
160
160
|
this.backgroundCanvas = this.element.createChild('canvas', 'fill background');
|
161
|
-
this.#start = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.Meta.traceBounds).min;
|
162
|
-
this.#end = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.Meta.traceBounds).max;
|
161
|
+
this.#start = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.data.Meta.traceBounds).min;
|
162
|
+
this.#end = Trace.Helpers.Timing.traceWindowMilliSeconds(parsedTrace.data.Meta.traceBounds).max;
|
163
163
|
}
|
164
164
|
|
165
165
|
#entryCategory(entry: Trace.Types.Events.Event): Utils.EntryStyles.EventCategory|undefined {
|
@@ -186,7 +186,7 @@ export class TimelineEventOverviewCPUActivity extends TimelineEventOverview {
|
|
186
186
|
this.backgroundCanvas.height = this.element.clientHeight * window.devicePixelRatio;
|
187
187
|
}
|
188
188
|
|
189
|
-
#draw(parsedTrace: Trace.
|
189
|
+
#draw(parsedTrace: Trace.TraceModel.ParsedTrace): void {
|
190
190
|
const quantSizePx = 4 * window.devicePixelRatio;
|
191
191
|
const width = this.width();
|
192
192
|
const height = this.height();
|
@@ -281,7 +281,7 @@ export class TimelineEventOverviewCPUActivity extends TimelineEventOverview {
|
|
281
281
|
throw new Error('Could not find 2d canvas');
|
282
282
|
}
|
283
283
|
|
284
|
-
const threads = Trace.Handlers.Threads.threadsInTrace(parsedTrace);
|
284
|
+
const threads = Trace.Handlers.Threads.threadsInTrace(parsedTrace.data);
|
285
285
|
const mainThreadContext = this.context();
|
286
286
|
for (const thread of threads) {
|
287
287
|
// We treat CPU_PROFILE as main thread because in a CPU Profile trace there is only ever one thread.
|
@@ -329,14 +329,14 @@ export class TimelineEventOverviewCPUActivity extends TimelineEventOverview {
|
|
329
329
|
}
|
330
330
|
|
331
331
|
export class TimelineEventOverviewResponsiveness extends TimelineEventOverview {
|
332
|
-
#parsedTrace: Trace.
|
333
|
-
constructor(parsedTrace: Trace.
|
332
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
333
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
|
334
334
|
super('responsiveness', null);
|
335
335
|
this.#parsedTrace = parsedTrace;
|
336
336
|
}
|
337
337
|
|
338
338
|
#gatherEventsWithRelevantWarnings(): Set<Trace.Types.Events.Event> {
|
339
|
-
const {topLevelRendererIds} = this.#parsedTrace.Meta;
|
339
|
+
const {topLevelRendererIds} = this.#parsedTrace.data.Meta;
|
340
340
|
|
341
341
|
// All the warnings that we care about regarding responsiveness and want to represent on the overview.
|
342
342
|
const warningsForResponsiveness = new Set<Trace.Handlers.ModelHandlers.Warnings.Warning>([
|
@@ -347,7 +347,7 @@ export class TimelineEventOverviewResponsiveness extends TimelineEventOverview {
|
|
347
347
|
|
348
348
|
const allWarningEvents = new Set<Trace.Types.Events.Event>();
|
349
349
|
for (const warning of warningsForResponsiveness) {
|
350
|
-
const eventsForWarning = this.#parsedTrace.Warnings.perWarning.get(warning);
|
350
|
+
const eventsForWarning = this.#parsedTrace.data.Warnings.perWarning.get(warning);
|
351
351
|
if (!eventsForWarning) {
|
352
352
|
continue;
|
353
353
|
}
|
@@ -368,7 +368,7 @@ export class TimelineEventOverviewResponsiveness extends TimelineEventOverview {
|
|
368
368
|
this.resetCanvas();
|
369
369
|
|
370
370
|
const height = this.height();
|
371
|
-
const visibleTimeWindow = !(start && end) ? this.#parsedTrace.Meta.traceBounds : {
|
371
|
+
const visibleTimeWindow = !(start && end) ? this.#parsedTrace.data.Meta.traceBounds : {
|
372
372
|
min: Trace.Helpers.Timing.milliToMicro(start),
|
373
373
|
max: Trace.Helpers.Timing.milliToMicro(end),
|
374
374
|
range: Trace.Helpers.Timing.milliToMicro(Trace.Types.Timing.Milli(end - start)),
|
@@ -544,9 +544,9 @@ export class TimelineFilmStripOverview extends TimelineEventOverview {
|
|
544
544
|
|
545
545
|
export class TimelineEventOverviewMemory extends TimelineEventOverview {
|
546
546
|
private heapSizeLabel: HTMLElement;
|
547
|
-
#parsedTrace: Trace.
|
547
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
548
548
|
|
549
|
-
constructor(parsedTrace: Trace.
|
549
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
|
550
550
|
super('memory', i18nString(UIStrings.heap));
|
551
551
|
this.heapSizeLabel = this.element.createChild('div', 'memory-graph-label');
|
552
552
|
this.#parsedTrace = parsedTrace;
|
@@ -560,26 +560,27 @@ export class TimelineEventOverviewMemory extends TimelineEventOverview {
|
|
560
560
|
this.resetCanvas();
|
561
561
|
const ratio = window.devicePixelRatio;
|
562
562
|
|
563
|
-
if (this.#parsedTrace.Memory.updateCountersByProcess.size === 0) {
|
563
|
+
if (this.#parsedTrace.data.Memory.updateCountersByProcess.size === 0) {
|
564
564
|
this.resetHeapSizeLabels();
|
565
565
|
return;
|
566
566
|
}
|
567
567
|
|
568
|
-
const mainRendererIds = Array.from(this.#parsedTrace.Meta.topLevelRendererIds);
|
568
|
+
const mainRendererIds = Array.from(this.#parsedTrace.data.Meta.topLevelRendererIds);
|
569
569
|
const counterEventsPerTrack =
|
570
|
-
mainRendererIds.map(pid => this.#parsedTrace.Memory.updateCountersByProcess.get(pid) || [])
|
570
|
+
mainRendererIds.map(pid => this.#parsedTrace.data.Memory.updateCountersByProcess.get(pid) || [])
|
571
571
|
.filter(eventsPerRenderer => eventsPerRenderer.length > 0);
|
572
572
|
|
573
573
|
const lowerOffset = 3 * ratio;
|
574
574
|
let maxUsedHeapSize = 0;
|
575
575
|
let minUsedHeapSize = 100000000000;
|
576
576
|
|
577
|
-
const boundsMs = (start && end) ?
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
577
|
+
const boundsMs = (start && end) ?
|
578
|
+
{
|
579
|
+
min: start,
|
580
|
+
max: end,
|
581
|
+
range: end - start,
|
582
|
+
} :
|
583
|
+
Trace.Helpers.Timing.traceWindowMilliSeconds(this.#parsedTrace.data.Meta.traceBounds);
|
583
584
|
const minTime = boundsMs.min;
|
584
585
|
const maxTime = boundsMs.max;
|
585
586
|
|
@@ -26,21 +26,21 @@ export class Category extends Trace.Extras.TraceFilter.TraceFilter {
|
|
26
26
|
}
|
27
27
|
|
28
28
|
export class TimelineRegExp extends Trace.Extras.TraceFilter.TraceFilter {
|
29
|
-
|
29
|
+
#regExp!: RegExp|null;
|
30
30
|
constructor(regExp?: RegExp) {
|
31
31
|
super();
|
32
32
|
this.setRegExp(regExp || null);
|
33
33
|
}
|
34
34
|
|
35
35
|
setRegExp(regExp: RegExp|null): void {
|
36
|
-
this
|
36
|
+
this.#regExp = regExp;
|
37
37
|
}
|
38
38
|
|
39
39
|
regExp(): RegExp|null {
|
40
|
-
return this
|
40
|
+
return this.#regExp;
|
41
41
|
}
|
42
42
|
|
43
|
-
accept(event: Trace.Types.Events.Event,
|
44
|
-
return !this
|
43
|
+
accept(event: Trace.Types.Events.Event, handlerData?: Trace.Handlers.Types.HandlerData): boolean {
|
44
|
+
return !this.#regExp || TimelineUIUtils.testContentMatching(event, this.#regExp, handlerData);
|
45
45
|
}
|
46
46
|
}
|