devtools-tracing 1.2.0 → 1.2.2
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/dist/lib/front_end/core/common/App.d.ts +3 -0
- package/dist/lib/front_end/core/common/AppProvider.d.ts +12 -0
- package/dist/lib/front_end/core/common/Base64.d.ts +11 -0
- package/dist/lib/front_end/core/common/CharacterIdMap.d.ts +5 -0
- package/dist/lib/front_end/core/common/Color.d.ts +383 -0
- package/dist/lib/front_end/core/common/ColorConverter.d.ts +24 -0
- package/dist/lib/front_end/core/common/ColorUtils.d.ts +45 -0
- package/dist/lib/front_end/core/common/Console.d.ts +54 -0
- package/dist/lib/front_end/core/common/Debouncer.d.ts +6 -0
- package/dist/lib/front_end/core/common/EventTarget.d.ts +23 -0
- package/dist/lib/front_end/core/common/Gzip.d.ts +21 -0
- package/dist/lib/front_end/core/common/JavaScriptMetaData.d.ts +20 -0
- package/dist/lib/front_end/core/common/Lazy.d.ts +4 -0
- package/dist/lib/front_end/core/common/MapWithDefault.d.ts +9 -0
- package/dist/lib/front_end/core/common/Mutex.d.ts +13 -0
- package/dist/lib/front_end/core/common/Object.d.ts +25 -0
- package/dist/lib/front_end/core/common/ParsedURL.d.ts +87 -0
- package/dist/lib/front_end/core/common/Progress.d.ts +47 -0
- package/dist/lib/front_end/core/common/ResolverBase.d.ts +29 -0
- package/dist/lib/front_end/core/common/ResourceType.d.ts +89 -0
- package/dist/lib/front_end/core/common/ReturnToPanel.d.ts +10 -0
- package/dist/lib/front_end/core/common/Revealer.d.ts +79 -0
- package/dist/lib/front_end/core/common/Runnable.d.ts +14 -0
- package/dist/lib/front_end/core/common/SegmentedRange.d.ts +14 -0
- package/dist/lib/front_end/core/common/SettingRegistration.d.ts +175 -0
- package/dist/lib/front_end/core/common/Settings.d.ts +168 -0
- package/dist/lib/front_end/core/common/SimpleHistoryManager.d.ts +20 -0
- package/dist/lib/front_end/core/common/Srcset.d.ts +16 -0
- package/dist/lib/front_end/core/common/StringOutputStream.d.ts +10 -0
- package/dist/lib/front_end/core/common/TextDictionary.d.ts +11 -0
- package/dist/lib/front_end/core/common/Throttler.d.ts +12 -0
- package/dist/lib/front_end/core/common/Trie.d.ts +24 -0
- package/dist/lib/front_end/core/common/VersionController.d.ts +80 -0
- package/dist/lib/front_end/core/common/common.d.ts +35 -0
- package/dist/lib/front_end/core/host/AidaClient.d.ts +369 -0
- package/dist/lib/front_end/core/host/AidaGcaTranslation.d.ts +9 -0
- package/dist/lib/front_end/core/host/DispatchHttpRequestClient.d.ts +14 -0
- package/dist/lib/front_end/core/host/GcaTypes.d.ts +405 -0
- package/dist/lib/front_end/core/host/GdpClient.d.ts +84 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHost.d.ts +29 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHostAPI.d.ts +414 -0
- package/dist/lib/front_end/core/host/InspectorFrontendHostStub.d.ts +151 -0
- package/dist/lib/front_end/core/host/Platform.d.ts +11 -0
- package/dist/lib/front_end/core/host/ResourceLoader.d.ts +15 -0
- package/dist/lib/front_end/core/host/UserMetrics.d.ts +935 -0
- package/dist/lib/front_end/core/host/host.d.ts +12 -0
- package/dist/lib/front_end/core/i18n/ByteUtilities.d.ts +11 -0
- package/dist/lib/front_end/core/i18n/DevToolsLocale.d.ts +41 -0
- package/dist/lib/front_end/core/i18n/NumberFormatter.d.ts +11 -0
- package/dist/lib/front_end/core/i18n/i18n.d.ts +6 -0
- package/dist/lib/front_end/core/i18n/i18nImpl.d.ts +64 -0
- package/dist/lib/front_end/core/i18n/i18nTypes.d.ts +5 -0
- package/dist/lib/front_end/core/i18n/time-utilities.d.ts +16 -0
- package/dist/lib/front_end/core/platform/ArrayUtilities.d.ts +69 -0
- package/dist/lib/front_end/core/platform/Brand.d.ts +21 -0
- package/dist/lib/front_end/core/platform/Constructor.d.ts +3 -0
- package/dist/lib/front_end/core/platform/DateUtilities.d.ts +2 -0
- package/dist/lib/front_end/core/platform/DevToolsPath.d.ts +44 -0
- package/dist/lib/front_end/core/platform/HostRuntime.d.ts +3 -0
- package/dist/lib/front_end/core/platform/KeyboardUtilities.d.ts +21 -0
- package/dist/lib/front_end/core/platform/MapUtilities.d.ts +19 -0
- package/dist/lib/front_end/core/platform/MimeType.d.ts +28 -0
- package/dist/lib/front_end/core/platform/NumberUtilities.d.ts +14 -0
- package/dist/lib/front_end/core/platform/StringUtilities.d.ts +77 -0
- package/dist/lib/front_end/core/platform/Timing.d.ts +6 -0
- package/dist/lib/front_end/core/platform/TypedArrayUtilities.d.ts +34 -0
- package/dist/lib/front_end/core/platform/TypescriptUtilities.d.ts +66 -0
- package/dist/lib/front_end/core/platform/UIString.d.ts +3 -0
- package/dist/lib/front_end/core/platform/UserVisibleError.d.ts +12 -0
- package/dist/lib/front_end/core/platform/api/HostRuntime.d.ts +33 -0
- package/dist/lib/front_end/core/platform/api/api.d.ts +2 -0
- package/dist/lib/front_end/core/platform/platform.d.ts +18 -0
- package/dist/lib/front_end/core/protocol_client/CDPConnection.d.ts +77 -0
- package/dist/lib/front_end/core/protocol_client/ConnectionTransport.d.ts +9 -0
- package/dist/lib/front_end/core/protocol_client/DevToolsCDPConnection.d.ts +19 -0
- package/dist/lib/front_end/core/protocol_client/InspectorBackend.d.ts +221 -0
- package/dist/lib/front_end/core/protocol_client/protocol_client.d.ts +5 -0
- package/dist/lib/front_end/core/root/DevToolsContext.d.ts +34 -0
- package/dist/lib/front_end/core/root/ExperimentNames.d.ts +19 -0
- package/dist/lib/front_end/core/root/Runtime.d.ts +339 -0
- package/dist/lib/front_end/core/root/root.d.ts +4 -0
- package/dist/lib/front_end/core/sdk/AccessibilityModel.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/AnimationModel.d.ts +161 -0
- package/dist/lib/front_end/core/sdk/AutofillModel.d.ts +23 -0
- package/dist/lib/front_end/core/sdk/CPUProfilerModel.d.ts +42 -0
- package/dist/lib/front_end/core/sdk/CPUThrottlingManager.d.ts +57 -0
- package/dist/lib/front_end/core/sdk/CSSContainerQuery.d.ts +41 -0
- package/dist/lib/front_end/core/sdk/CSSFontFace.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CSSLayer.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSMatchedStyles.d.ts +116 -0
- package/dist/lib/front_end/core/sdk/CSSMedia.d.ts +36 -0
- package/dist/lib/front_end/core/sdk/CSSMetadata.d.ts +85 -0
- package/dist/lib/front_end/core/sdk/CSSModel.d.ts +186 -0
- package/dist/lib/front_end/core/sdk/CSSNavigation.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CSSProperty.d.ts +53 -0
- package/dist/lib/front_end/core/sdk/CSSPropertyParser.d.ts +140 -0
- package/dist/lib/front_end/core/sdk/CSSPropertyParserMatchers.d.ts +599 -0
- package/dist/lib/front_end/core/sdk/CSSQuery.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/CSSRule.d.ts +128 -0
- package/dist/lib/front_end/core/sdk/CSSScope.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSStartingStyle.d.ts +9 -0
- package/dist/lib/front_end/core/sdk/CSSStyleDeclaration.d.ts +38 -0
- package/dist/lib/front_end/core/sdk/CSSStyleSheetHeader.d.ts +53 -0
- package/dist/lib/front_end/core/sdk/CSSSupports.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/CategorizedBreakpoint.d.ts +43 -0
- package/dist/lib/front_end/core/sdk/ChildTargetManager.d.ts +40 -0
- package/dist/lib/front_end/core/sdk/CompilerSourceMappingContentProvider.d.ts +12 -0
- package/dist/lib/front_end/core/sdk/Connections.d.ts +36 -0
- package/dist/lib/front_end/core/sdk/ConsoleModel.d.ts +124 -0
- package/dist/lib/front_end/core/sdk/ConsoleModelTypes.d.ts +6 -0
- package/dist/lib/front_end/core/sdk/Cookie.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/CookieModel.d.ts +31 -0
- package/dist/lib/front_end/core/sdk/CookieParser.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/DOMDebuggerModel.d.ts +123 -0
- package/dist/lib/front_end/core/sdk/DOMModel.d.ts +378 -0
- package/dist/lib/front_end/core/sdk/DebuggerModel.d.ts +269 -0
- package/dist/lib/front_end/core/sdk/EmulationModel.d.ts +92 -0
- package/dist/lib/front_end/core/sdk/EnhancedTracesParser.d.ts +105 -0
- package/dist/lib/front_end/core/sdk/EventBreakpointsModel.d.ts +63 -0
- package/dist/lib/front_end/core/sdk/FrameAssociated.d.ts +6 -0
- package/dist/lib/front_end/core/sdk/FrameManager.d.ts +68 -0
- package/dist/lib/front_end/core/sdk/HeapProfilerModel.d.ts +75 -0
- package/dist/lib/front_end/core/sdk/HttpReasonPhraseStrings.d.ts +5 -0
- package/dist/lib/front_end/core/sdk/IOModel.d.ts +10 -0
- package/dist/lib/front_end/core/sdk/IsolateManager.d.ts +52 -0
- package/dist/lib/front_end/core/sdk/IssuesModel.d.ts +28 -0
- package/dist/lib/front_end/core/sdk/LayerTreeBase.d.ts +70 -0
- package/dist/lib/front_end/core/sdk/LogModel.d.ts +20 -0
- package/dist/lib/front_end/core/sdk/NetworkManager.d.ts +414 -0
- package/dist/lib/front_end/core/sdk/NetworkRequest.d.ts +424 -0
- package/dist/lib/front_end/core/sdk/OverlayColorGenerator.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/OverlayModel.d.ts +161 -0
- package/dist/lib/front_end/core/sdk/OverlayPersistentHighlighter.d.ts +116 -0
- package/dist/lib/front_end/core/sdk/PageLoad.d.ts +14 -0
- package/dist/lib/front_end/core/sdk/PageResourceLoader.d.ts +111 -0
- package/dist/lib/front_end/core/sdk/PaintProfiler.d.ts +43 -0
- package/dist/lib/front_end/core/sdk/PerformanceMetricsModel.d.ts +12 -0
- package/dist/lib/front_end/core/sdk/PreloadingModel.d.ts +146 -0
- package/dist/lib/front_end/core/sdk/RehydratingConnection.d.ts +57 -0
- package/dist/lib/front_end/core/sdk/RehydratingObject.d.ts +59 -0
- package/dist/lib/front_end/core/sdk/RemoteObject.d.ts +199 -0
- package/dist/lib/front_end/core/sdk/Resource.d.ts +34 -0
- package/dist/lib/front_end/core/sdk/ResourceTreeModel.d.ts +249 -0
- package/dist/lib/front_end/core/sdk/RuntimeModel.d.ts +158 -0
- package/dist/lib/front_end/core/sdk/SDKModel.d.ts +30 -0
- package/dist/lib/front_end/core/sdk/ScopeTreeCache.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/ScreenCaptureModel.d.ts +69 -0
- package/dist/lib/front_end/core/sdk/Script.d.ts +125 -0
- package/dist/lib/front_end/core/sdk/SecurityOriginManager.d.ts +23 -0
- package/dist/lib/front_end/core/sdk/ServerSentEvents.d.ts +18 -0
- package/dist/lib/front_end/core/sdk/ServerSentEventsProtocol.d.ts +18 -0
- package/dist/lib/front_end/core/sdk/ServerTiming.d.ts +24 -0
- package/dist/lib/front_end/core/sdk/ServiceWorkerCacheModel.d.ts +79 -0
- package/dist/lib/front_end/core/sdk/ServiceWorkerManager.d.ts +130 -0
- package/dist/lib/front_end/core/sdk/SourceMap.d.ts +173 -0
- package/dist/lib/front_end/core/sdk/SourceMapCache.d.ts +11 -0
- package/dist/lib/front_end/core/sdk/SourceMapFunctionRanges.d.ts +26 -0
- package/dist/lib/front_end/core/sdk/SourceMapManager.d.ts +44 -0
- package/dist/lib/front_end/core/sdk/SourceMapScopeChainEntry.d.ts +20 -0
- package/dist/lib/front_end/core/sdk/SourceMapScopesInfo.d.ts +123 -0
- package/dist/lib/front_end/core/sdk/StorageBucketsModel.d.ts +56 -0
- package/dist/lib/front_end/core/sdk/StorageKeyManager.d.ts +38 -0
- package/dist/lib/front_end/core/sdk/Target.d.ts +71 -0
- package/dist/lib/front_end/core/sdk/TargetManager.d.ts +84 -0
- package/dist/lib/front_end/core/sdk/TraceObject.d.ts +37 -0
- package/dist/lib/front_end/core/sdk/WebAuthnModel.d.ts +29 -0
- package/dist/lib/front_end/core/sdk/WebMCPModel.d.ts +21 -0
- package/dist/lib/front_end/core/sdk/sdk.d.ts +90 -0
- package/dist/lib/front_end/entrypoints/formatter_worker/FormatterActions.d.ts +48 -0
- package/dist/lib/front_end/generated/InspectorBackendCommands.d.ts +14 -0
- package/dist/lib/front_end/generated/protocol.d.ts +21618 -0
- package/dist/lib/front_end/models/cpu_profile/CPUProfileDataModel.d.ts +104 -0
- package/dist/lib/front_end/models/cpu_profile/ProfileTreeModel.d.ts +29 -0
- package/dist/lib/front_end/models/cpu_profile/cpu_profile.d.ts +3 -0
- package/dist/lib/front_end/models/crux-manager/CrUXManager.d.ts +104 -0
- package/dist/lib/front_end/models/crux-manager/crux-manager.d.ts +1 -0
- package/dist/lib/front_end/models/emulation/DeviceModeModel.d.ts +135 -0
- package/dist/lib/front_end/models/emulation/EmulatedDevices.d.ts +680 -0
- package/dist/lib/front_end/models/emulation/emulation.d.ts +3 -0
- package/dist/lib/front_end/models/formatter/FormatterWorkerPool.d.ts +58 -0
- package/dist/lib/front_end/models/formatter/ScriptFormatter.d.ts +11 -0
- package/dist/lib/front_end/models/formatter/formatter.d.ts +3 -0
- package/dist/lib/front_end/models/geometry/GeometryImpl.d.ts +105 -0
- package/dist/lib/front_end/models/geometry/geometry.d.ts +1 -0
- package/dist/lib/front_end/models/text_utils/CodeMirrorUtils.d.ts +3 -0
- package/dist/lib/front_end/models/text_utils/ContentData.d.ts +74 -0
- package/dist/lib/front_end/models/text_utils/ContentProvider.d.ts +42 -0
- package/dist/lib/front_end/models/text_utils/StaticContentProvider.d.ts +13 -0
- package/dist/lib/front_end/models/text_utils/StreamingContentData.d.ts +49 -0
- package/dist/lib/front_end/models/text_utils/Text.d.ts +19 -0
- package/dist/lib/front_end/models/text_utils/TextCursor.d.ts +9 -0
- package/dist/lib/front_end/models/text_utils/TextRange.d.ts +80 -0
- package/dist/lib/front_end/models/text_utils/TextUtils.d.ts +97 -0
- package/dist/lib/front_end/models/text_utils/WasmDisassembly.d.ts +29 -0
- package/dist/lib/front_end/models/text_utils/text_utils.d.ts +11 -0
- package/dist/lib/front_end/models/trace/EntityMapper.d.ts +33 -0
- package/dist/lib/front_end/models/trace/EventsSerializer.d.ts +11 -0
- package/dist/lib/front_end/models/trace/LanternComputationData.d.ts +8 -0
- package/dist/lib/front_end/models/trace/ModelImpl.d.ts +103 -0
- package/dist/lib/front_end/models/trace/Name.d.ts +12 -0
- package/dist/lib/front_end/models/trace/Processor.d.ts +39 -0
- package/dist/lib/front_end/models/trace/Styles.d.ts +50 -0
- package/dist/lib/front_end/models/trace/extras/FilmStrip.d.ts +19 -0
- package/dist/lib/front_end/models/trace/extras/Initiators.d.ts +12 -0
- package/dist/lib/front_end/models/trace/extras/MainThreadActivity.d.ts +2 -0
- package/dist/lib/front_end/models/trace/extras/ScriptDuplication.d.ts +52 -0
- package/dist/lib/front_end/models/trace/extras/StackTraceForEvent.d.ts +12 -0
- package/dist/lib/front_end/models/trace/extras/ThirdParties.d.ts +22 -0
- package/dist/lib/front_end/models/trace/extras/TraceFilter.d.ts +21 -0
- package/dist/lib/front_end/models/trace/extras/TraceTree.d.ts +125 -0
- package/dist/lib/front_end/models/trace/extras/extras.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/AnimationFramesHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/AnimationHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/AsyncJSCallsHandler.d.ts +20 -0
- package/dist/lib/front_end/models/trace/handlers/AuctionWorkletsHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/DOMStatsHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/ExtensionTraceDataHandler.d.ts +106 -0
- package/dist/lib/front_end/models/trace/handlers/FlowsHandler.d.ts +7 -0
- package/dist/lib/front_end/models/trace/handlers/FramesHandler.d.ts +94 -0
- package/dist/lib/front_end/models/trace/handlers/GPUHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/ImagePaintingHandler.d.ts +17 -0
- package/dist/lib/front_end/models/trace/handlers/InitiatorsHandler.d.ts +20 -0
- package/dist/lib/front_end/models/trace/handlers/InvalidationsHandler.d.ts +11 -0
- package/dist/lib/front_end/models/trace/handlers/LargestImagePaintHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/LargestTextPaintHandler.d.ts +6 -0
- package/dist/lib/front_end/models/trace/handlers/LayerTreeHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/LayoutShiftsHandler.d.ts +58 -0
- package/dist/lib/front_end/models/trace/handlers/MemoryHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/MetaHandler.d.ts +82 -0
- package/dist/lib/front_end/models/trace/handlers/ModelHandlers.d.ts +30 -0
- package/dist/lib/front_end/models/trace/handlers/NetworkRequestsHandler.d.ts +56 -0
- package/dist/lib/front_end/models/trace/handlers/PageFramesHandler.d.ts +8 -0
- package/dist/lib/front_end/models/trace/handlers/PageLoadMetricsHandler.d.ts +86 -0
- package/dist/lib/front_end/models/trace/handlers/RendererHandler.d.ts +100 -0
- package/dist/lib/front_end/models/trace/handlers/SamplesHandler.d.ts +46 -0
- package/dist/lib/front_end/models/trace/handlers/ScreenshotsHandler.d.ts +12 -0
- package/dist/lib/front_end/models/trace/handlers/ScriptsHandler.d.ts +43 -0
- package/dist/lib/front_end/models/trace/handlers/SelectorStatsHandler.d.ts +27 -0
- package/dist/lib/front_end/models/trace/handlers/Threads.d.ts +34 -0
- package/dist/lib/front_end/models/trace/handlers/UserInteractionsHandler.d.ts +78 -0
- package/dist/lib/front_end/models/trace/handlers/UserTimingsHandler.d.ts +54 -0
- package/dist/lib/front_end/models/trace/handlers/WarningsHandler.d.ts +14 -0
- package/dist/lib/front_end/models/trace/handlers/WorkersHandler.d.ts +10 -0
- package/dist/lib/front_end/models/trace/handlers/handlers.d.ts +4 -0
- package/dist/lib/front_end/models/trace/handlers/helpers.d.ts +21 -0
- package/dist/lib/front_end/models/trace/handlers/types.d.ts +54 -0
- package/dist/lib/front_end/models/trace/helpers/Extensions.d.ts +6 -0
- package/dist/lib/front_end/models/trace/helpers/Network.d.ts +26 -0
- package/dist/lib/front_end/models/trace/helpers/SamplesIntegrator.d.ts +62 -0
- package/dist/lib/front_end/models/trace/helpers/SyntheticEvents.d.ts +13 -0
- package/dist/lib/front_end/models/trace/helpers/Timing.d.ts +59 -0
- package/dist/lib/front_end/models/trace/helpers/Trace.d.ts +148 -0
- package/dist/lib/front_end/models/trace/helpers/TreeHelpers.d.ts +109 -0
- package/dist/lib/front_end/models/trace/helpers/helpers.d.ts +7 -0
- package/dist/lib/front_end/models/trace/insights/CLSCulprits.d.ts +137 -0
- package/dist/lib/front_end/models/trace/insights/Cache.d.ts +71 -0
- package/dist/lib/front_end/models/trace/insights/CharacterSet.d.ts +49 -0
- package/dist/lib/front_end/models/trace/insights/Common.d.ts +77 -0
- package/dist/lib/front_end/models/trace/insights/DOMSize.d.ts +71 -0
- package/dist/lib/front_end/models/trace/insights/DocumentLatency.d.ts +66 -0
- package/dist/lib/front_end/models/trace/insights/DuplicatedJavaScript.d.ts +29 -0
- package/dist/lib/front_end/models/trace/insights/FontDisplay.d.ts +28 -0
- package/dist/lib/front_end/models/trace/insights/ForcedReflow.d.ts +56 -0
- package/dist/lib/front_end/models/trace/insights/INPBreakdown.d.ts +50 -0
- package/dist/lib/front_end/models/trace/insights/ImageDelivery.d.ts +95 -0
- package/dist/lib/front_end/models/trace/insights/LCPBreakdown.d.ts +85 -0
- package/dist/lib/front_end/models/trace/insights/LCPDiscovery.d.ts +64 -0
- package/dist/lib/front_end/models/trace/insights/LegacyJavaScript.d.ts +35 -0
- package/dist/lib/front_end/models/trace/insights/Models.d.ts +19 -0
- package/dist/lib/front_end/models/trace/insights/ModernHTTP.d.ts +53 -0
- package/dist/lib/front_end/models/trace/insights/NetworkDependencyTree.d.ts +135 -0
- package/dist/lib/front_end/models/trace/insights/RenderBlocking.d.ts +34 -0
- package/dist/lib/front_end/models/trace/insights/SlowCSSSelector.d.ts +56 -0
- package/dist/lib/front_end/models/trace/insights/Statistics.d.ts +18 -0
- package/dist/lib/front_end/models/trace/insights/ThirdParties.d.ts +33 -0
- package/dist/lib/front_end/models/trace/insights/Viewport.d.ts +24 -0
- package/dist/lib/front_end/models/trace/insights/insights.d.ts +6 -0
- package/dist/lib/front_end/models/trace/insights/types.d.ts +143 -0
- package/dist/lib/front_end/models/trace/lantern/core/LanternError.d.ts +3 -0
- package/dist/lib/front_end/models/trace/lantern/core/NetworkAnalyzer.d.ts +112 -0
- package/dist/lib/front_end/models/trace/lantern/core/core.d.ts +2 -0
- package/dist/lib/front_end/models/trace/lantern/graph/BaseNode.d.ts +98 -0
- package/dist/lib/front_end/models/trace/lantern/graph/CPUNode.d.ts +24 -0
- package/dist/lib/front_end/models/trace/lantern/graph/NetworkNode.d.ts +22 -0
- package/dist/lib/front_end/models/trace/lantern/graph/PageDependencyGraph.d.ts +43 -0
- package/dist/lib/front_end/models/trace/lantern/graph/graph.d.ts +4 -0
- package/dist/lib/front_end/models/trace/lantern/lantern.d.ts +6 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/FirstContentfulPaint.d.ts +40 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/Interactive.d.ts +12 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/LargestContentfulPaint.d.ts +17 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/MaxPotentialFID.d.ts +14 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/Metric.d.ts +44 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/SpeedIndex.d.ts +25 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/TBTUtils.d.ts +31 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/TotalBlockingTime.d.ts +16 -0
- package/dist/lib/front_end/models/trace/lantern/metrics/metrics.d.ts +8 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/ConnectionPool.d.ts +26 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/Constants.d.ts +31 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/DNSCache.d.ts +22 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/SimulationTimingMap.d.ts +62 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/Simulator.d.ts +84 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/TCPConnection.d.ts +47 -0
- package/dist/lib/front_end/models/trace/lantern/simulation/simulation.d.ts +6 -0
- package/dist/lib/front_end/models/trace/lantern/types/Lantern.d.ts +196 -0
- package/dist/lib/front_end/models/trace/lantern/types/types.d.ts +1 -0
- package/dist/lib/front_end/models/trace/trace.d.ts +14 -0
- package/dist/lib/front_end/models/trace/types/Configuration.d.ts +87 -0
- package/dist/lib/front_end/models/trace/types/Extensions.d.ts +77 -0
- package/dist/lib/front_end/models/trace/types/File.d.ts +197 -0
- package/dist/lib/front_end/models/trace/types/Overlays.d.ts +116 -0
- package/dist/lib/front_end/models/trace/types/Timing.d.ts +20 -0
- package/dist/lib/front_end/models/trace/types/TraceEvents.d.ts +2452 -0
- package/dist/lib/front_end/models/trace/types/types.d.ts +6 -0
- package/dist/lib/front_end/third_party/i18n/i18n-impl.d.ts +25 -0
- package/dist/lib/front_end/third_party/i18n/i18n.d.ts +3 -0
- package/dist/lib/front_end/third_party/i18n/localized-string-set.d.ts +49 -0
- package/dist/lib/front_end/third_party/intl-messageformat/intl-messageformat.d.ts +2 -0
- package/dist/lib/front_end/third_party/legacy-javascript/legacy-javascript.d.ts +2 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.d.ts +67 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.d.ts +38 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/codec.d.ts +48 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.d.ts +31 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.d.ts +8 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.d.ts +6 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/mod.d.ts +5 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/scopes.d.ts +168 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/util.d.ts +5 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/package/src/vlq.d.ts +14 -0
- package/dist/lib/front_end/third_party/source-map-scopes-codec/source-map-scopes-codec.d.ts +1 -0
- package/dist/lib/front_end/third_party/third-party-web/third-party-web.d.ts +2 -0
- package/dist/src/init.d.ts +1 -0
- package/dist/src/timeline.d.ts +5 -0
- package/examples/inp.ts +34 -0
- package/examples/stats.ts +66 -0
- package/package.json +1 -1
- package/.claude/settings.local.json +0 -14
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type * as Common from '../../../core/common/common.js';
|
|
2
|
+
import * as Handlers from '../handlers/handlers.js';
|
|
3
|
+
import * as Types from '../types/types.js';
|
|
4
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
5
|
+
export declare const UIStrings: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Title of an insight that recommends reducing the size of the DOM tree as a means to improve page responsiveness. "DOM" is an acronym and should not be translated.
|
|
8
|
+
*/
|
|
9
|
+
readonly title: "Optimize DOM size";
|
|
10
|
+
/**
|
|
11
|
+
* @description Description of an insight that recommends reducing the size of the DOM tree as a means to improve page responsiveness. "DOM" is an acronym and should not be translated. "layout reflows" are when the browser will recompute the layout of content on the page.
|
|
12
|
+
*/
|
|
13
|
+
readonly description: "A large DOM can increase the duration of style calculations and layout reflows, impacting page responsiveness. A large DOM will also increase memory usage. [Learn how to avoid an excessive DOM size](https://developer.chrome.com/docs/performance/insights/dom-size).";
|
|
14
|
+
/**
|
|
15
|
+
* @description Header for a column containing the names of statistics as opposed to the actual statistic values.
|
|
16
|
+
*/
|
|
17
|
+
readonly statistic: "Statistic";
|
|
18
|
+
/**
|
|
19
|
+
* @description Header for a column containing the value of a statistic.
|
|
20
|
+
*/
|
|
21
|
+
readonly value: "Value";
|
|
22
|
+
/**
|
|
23
|
+
* @description Header for a column containing the page element related to a statistic.
|
|
24
|
+
*/
|
|
25
|
+
readonly element: "Element";
|
|
26
|
+
/**
|
|
27
|
+
* @description Label for a value representing the total number of elements on the page.
|
|
28
|
+
*/
|
|
29
|
+
readonly totalElements: "Total elements";
|
|
30
|
+
/**
|
|
31
|
+
* @description Label for a value representing the maximum depth of the Document Object Model (DOM). "DOM" is a acronym and should not be translated.
|
|
32
|
+
*/
|
|
33
|
+
readonly maxDOMDepth: "DOM depth";
|
|
34
|
+
/**
|
|
35
|
+
* @description Label for a value representing the maximum number of child elements of any parent element on the page.
|
|
36
|
+
*/
|
|
37
|
+
readonly maxChildren: "Most children";
|
|
38
|
+
/**
|
|
39
|
+
* @description Text for a section.
|
|
40
|
+
*/
|
|
41
|
+
readonly topUpdatesDescription: "These are the largest layout and style recalculation events. Their performance impact may be reduced by making the DOM simpler.";
|
|
42
|
+
/**
|
|
43
|
+
* @description Label used for a time duration.
|
|
44
|
+
*/
|
|
45
|
+
readonly duration: "Duration";
|
|
46
|
+
/**
|
|
47
|
+
* @description Message displayed in a table detailing how big a layout (rendering) is.
|
|
48
|
+
* @example {134} PH1
|
|
49
|
+
*/
|
|
50
|
+
readonly largeLayout: "Layout ({PH1} objects)";
|
|
51
|
+
/**
|
|
52
|
+
* @description Message displayed in a table detailing how big a style recalculation (rendering) is.
|
|
53
|
+
* @example {134} PH1
|
|
54
|
+
*/
|
|
55
|
+
readonly largeStyleRecalc: "Style recalculation ({PH1} elements)";
|
|
56
|
+
};
|
|
57
|
+
export declare const i18nString: any;
|
|
58
|
+
export type DOMSizeInsightModel = InsightModel<typeof UIStrings, {
|
|
59
|
+
largeLayoutUpdates: Types.Events.Layout[];
|
|
60
|
+
largeStyleRecalcs: Types.Events.RecalcStyle[];
|
|
61
|
+
largeUpdates: Array<{
|
|
62
|
+
label: Common.UIString.LocalizedString;
|
|
63
|
+
duration: Types.Timing.Milli;
|
|
64
|
+
size: number;
|
|
65
|
+
event: Types.Events.Event;
|
|
66
|
+
}>;
|
|
67
|
+
maxDOMStats?: Types.Events.DOMStats;
|
|
68
|
+
}>;
|
|
69
|
+
export declare function isDomSizeInsight(model: InsightModel): model is DOMSizeInsightModel;
|
|
70
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): DOMSizeInsightModel;
|
|
71
|
+
export declare function createOverlays(model: DOMSizeInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import * as Types from '../types/types.js';
|
|
3
|
+
import { type Checklist, type InsightModel, type InsightSetContext } from './types.js';
|
|
4
|
+
export declare const UIStrings: {
|
|
5
|
+
/**
|
|
6
|
+
* @description Title of an insight that provides a breakdown for how long it took to download the main document.
|
|
7
|
+
*/
|
|
8
|
+
readonly title: "Document request latency";
|
|
9
|
+
/**
|
|
10
|
+
* @description Description of an insight that provides a breakdown for how long it took to download the main document.
|
|
11
|
+
*/
|
|
12
|
+
readonly description: "Your first network request is the most important. [Reduce its latency](https://developer.chrome.com/docs/performance/insights/document-latency) by avoiding redirects, ensuring a fast server response, and enabling text compression.";
|
|
13
|
+
/**
|
|
14
|
+
* @description Text to tell the user that the document request does not have redirects.
|
|
15
|
+
*/
|
|
16
|
+
readonly passingRedirects: "Avoids redirects";
|
|
17
|
+
/**
|
|
18
|
+
* @description Text to tell the user that the document request had redirects.
|
|
19
|
+
* @example {3} PH1
|
|
20
|
+
* @example {1000 ms} PH2
|
|
21
|
+
*/
|
|
22
|
+
readonly failedRedirects: "Had redirects ({PH1} redirects, +{PH2})";
|
|
23
|
+
/**
|
|
24
|
+
* @description Text to tell the user that the time starting the document request to when the server started responding is acceptable.
|
|
25
|
+
* @example {600 ms} PH1
|
|
26
|
+
*/
|
|
27
|
+
readonly passingServerResponseTime: "Server responds quickly (observed {PH1})";
|
|
28
|
+
/**
|
|
29
|
+
* @description Text to tell the user that the time starting the document request to when the server started responding is not acceptable.
|
|
30
|
+
* @example {601 ms} PH1
|
|
31
|
+
*/
|
|
32
|
+
readonly failedServerResponseTime: "Server responded slowly (observed {PH1})";
|
|
33
|
+
/**
|
|
34
|
+
* @description Text to tell the user that text compression (like gzip) was applied.
|
|
35
|
+
*/
|
|
36
|
+
readonly passingTextCompression: "Applies text compression";
|
|
37
|
+
/**
|
|
38
|
+
* @description Text to tell the user that text compression (like gzip) was not applied.
|
|
39
|
+
*/
|
|
40
|
+
readonly failedTextCompression: "No compression applied";
|
|
41
|
+
/**
|
|
42
|
+
* @description Text for a label describing a network request event as having redirects.
|
|
43
|
+
*/
|
|
44
|
+
readonly redirectsLabel: "Redirects";
|
|
45
|
+
/**
|
|
46
|
+
* @description Text for a label describing a network request event as taking too long to start delivery by the server.
|
|
47
|
+
*/
|
|
48
|
+
readonly serverResponseTimeLabel: "Server response time";
|
|
49
|
+
/**
|
|
50
|
+
* @description Text for a label describing a network request event as taking longer to download because it wasn't compressed.
|
|
51
|
+
*/
|
|
52
|
+
readonly uncompressedDownload: "Uncompressed download";
|
|
53
|
+
};
|
|
54
|
+
export declare const i18nString: any;
|
|
55
|
+
export declare function isDocumentLatencyInsight(x: InsightModel): x is DocumentLatencyInsightModel;
|
|
56
|
+
export type DocumentLatencyInsightModel = InsightModel<typeof UIStrings, {
|
|
57
|
+
data?: {
|
|
58
|
+
serverResponseTime: Types.Timing.Milli;
|
|
59
|
+
redirectDuration: Types.Timing.Milli;
|
|
60
|
+
uncompressedResponseBytes: number;
|
|
61
|
+
checklist: Checklist<'noRedirects' | 'serverResponseIsFast' | 'usesCompression'>;
|
|
62
|
+
documentRequest?: Types.Events.SyntheticNetworkRequest;
|
|
63
|
+
};
|
|
64
|
+
}>;
|
|
65
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): DocumentLatencyInsightModel;
|
|
66
|
+
export declare function createOverlays(model: DocumentLatencyInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as Extras from '../extras/extras.js';
|
|
2
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
3
|
+
import type * as Types from '../types/types.js';
|
|
4
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
5
|
+
export declare const UIStrings: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Title of an insight that identifies multiple copies of the same JavaScript sources, and recommends removing the duplication.
|
|
8
|
+
*/
|
|
9
|
+
readonly title: "Duplicated JavaScript";
|
|
10
|
+
/**
|
|
11
|
+
* @description Description of an insight that identifies multiple copies of the same JavaScript sources, and recommends removing the duplication.
|
|
12
|
+
*/
|
|
13
|
+
readonly description: "Remove large, [duplicate JavaScript modules](https://developer.chrome.com/docs/performance/insights/duplicated-javascript) from bundles to reduce unnecessary bytes consumed by network activity.";
|
|
14
|
+
/** Label for a column in a data table; entries will be the locations of JavaScript or CSS code, e.g. the name of a Javascript package or module. */
|
|
15
|
+
readonly columnSource: "Source";
|
|
16
|
+
/** Label for a column in a data table; entries will be the number of wasted bytes due to duplication of a web resource. */
|
|
17
|
+
readonly columnDuplicatedBytes: "Duplicated bytes";
|
|
18
|
+
};
|
|
19
|
+
export declare const i18nString: any;
|
|
20
|
+
export type DuplicatedJavaScriptInsightModel = InsightModel<typeof UIStrings, {
|
|
21
|
+
duplication: Extras.ScriptDuplication.ScriptDuplication;
|
|
22
|
+
duplicationGroupedByNodeModules: Extras.ScriptDuplication.ScriptDuplication;
|
|
23
|
+
scriptsWithDuplication: Handlers.ModelHandlers.Scripts.Script[];
|
|
24
|
+
scripts: Handlers.ModelHandlers.Scripts.Script[];
|
|
25
|
+
mainDocumentUrl: string;
|
|
26
|
+
}>;
|
|
27
|
+
export declare function isDuplicatedJavaScriptInsight(model: InsightModel): model is DuplicatedJavaScriptInsightModel;
|
|
28
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): DuplicatedJavaScriptInsightModel;
|
|
29
|
+
export declare function createOverlays(model: DuplicatedJavaScriptInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import * as Types from '../types/types.js';
|
|
3
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
4
|
+
export declare const UIStrings: {
|
|
5
|
+
/** Title of an insight that provides details about the fonts used on the page, and the value of their `font-display` properties. */
|
|
6
|
+
readonly title: "Font display";
|
|
7
|
+
/**
|
|
8
|
+
* @description Text to tell the user about the font-display CSS feature to help improve a the UX of a page.
|
|
9
|
+
*/
|
|
10
|
+
readonly description: "Consider setting [`font-display`](https://developer.chrome.com/docs/performance/insights/font-display) to `swap` or `optional` to ensure text is consistently visible. `swap` can be further optimized to mitigate layout shifts with [font metric overrides](https://developer.chrome.com/blog/font-fallbacks).";
|
|
11
|
+
/** Column for a font loaded by the page to render text. */
|
|
12
|
+
readonly fontColumn: "Font";
|
|
13
|
+
/** Column for the amount of time wasted. */
|
|
14
|
+
readonly wastedTimeColumn: "Wasted time";
|
|
15
|
+
};
|
|
16
|
+
export declare const i18nString: any;
|
|
17
|
+
export interface RemoteFont {
|
|
18
|
+
name?: string;
|
|
19
|
+
request: Types.Events.SyntheticNetworkRequest;
|
|
20
|
+
display: string;
|
|
21
|
+
wastedTime: Types.Timing.Milli;
|
|
22
|
+
}
|
|
23
|
+
export type FontDisplayInsightModel = InsightModel<typeof UIStrings, {
|
|
24
|
+
fonts: RemoteFont[];
|
|
25
|
+
}>;
|
|
26
|
+
export declare function isFontDisplayInsight(model: InsightModel): model is FontDisplayInsightModel;
|
|
27
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): FontDisplayInsightModel;
|
|
28
|
+
export declare function createOverlays(model: FontDisplayInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type * as Protocol from '../../../generated/protocol.js';
|
|
2
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
3
|
+
import * as Types from '../types/types.js';
|
|
4
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
5
|
+
export declare const UIStrings: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Title of an insight that provides details about Forced reflow.
|
|
8
|
+
*/
|
|
9
|
+
readonly title: "Forced reflow";
|
|
10
|
+
/**
|
|
11
|
+
* @description Text to describe the forced reflow.
|
|
12
|
+
*/
|
|
13
|
+
readonly description: "A forced reflow occurs when JavaScript queries geometric properties (such as `offsetWidth`) after styles have been invalidated by a change to the DOM state. This can result in poor performance. Learn more about [forced reflows](https://developer.chrome.com/docs/performance/insights/forced-reflow) and possible mitigations.";
|
|
14
|
+
/**
|
|
15
|
+
* @description Title of a list to provide related stack trace data
|
|
16
|
+
*/
|
|
17
|
+
readonly reflowCallFrames: "Call frames that trigger reflow";
|
|
18
|
+
/**
|
|
19
|
+
* @description Text to describe the top time-consuming function call
|
|
20
|
+
*/
|
|
21
|
+
readonly topTimeConsumingFunctionCall: "Top function call";
|
|
22
|
+
/**
|
|
23
|
+
* @description Text to describe the total reflow time
|
|
24
|
+
*/
|
|
25
|
+
readonly totalReflowTime: "Total reflow time";
|
|
26
|
+
/**
|
|
27
|
+
* @description Text to describe CPU processor tasks that could not be attributed to any specific source code.
|
|
28
|
+
*/
|
|
29
|
+
readonly unattributed: "[unattributed]";
|
|
30
|
+
/**
|
|
31
|
+
* @description Text for the name of anonymous functions
|
|
32
|
+
*/
|
|
33
|
+
readonly anonymous: "(anonymous)";
|
|
34
|
+
};
|
|
35
|
+
export declare const i18nString: any;
|
|
36
|
+
export type ForcedReflowInsightModel = InsightModel<typeof UIStrings, {
|
|
37
|
+
topLevelFunctionCallData: ForcedReflowAggregatedData | undefined;
|
|
38
|
+
aggregatedBottomUpData: BottomUpCallStack[];
|
|
39
|
+
}>;
|
|
40
|
+
export interface BottomUpCallStack {
|
|
41
|
+
/**
|
|
42
|
+
* `null` indicates that this data is for unattributed force reflows.
|
|
43
|
+
*/
|
|
44
|
+
bottomUpData: Types.Events.CallFrame | Protocol.Runtime.CallFrame | null;
|
|
45
|
+
totalTime: number;
|
|
46
|
+
relatedEvents: Types.Events.Event[];
|
|
47
|
+
}
|
|
48
|
+
export interface ForcedReflowAggregatedData {
|
|
49
|
+
topLevelFunctionCall: Types.Events.CallFrame | Protocol.Runtime.CallFrame;
|
|
50
|
+
totalReflowTime: number;
|
|
51
|
+
topLevelFunctionCallEvents: Types.Events.Event[];
|
|
52
|
+
}
|
|
53
|
+
export declare function isForcedReflowInsight(model: InsightModel): model is ForcedReflowInsightModel;
|
|
54
|
+
export declare function generateInsight(traceParsedData: Handlers.Types.HandlerData, context: InsightSetContext): ForcedReflowInsightModel;
|
|
55
|
+
export declare function createOverlays(model: ForcedReflowInsightModel): Types.Overlays.Overlay[];
|
|
56
|
+
export declare function createOverlayForEvents(events: Types.Events.Event[], outlineReason?: 'ERROR' | 'INFO'): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import type { SyntheticInteractionPair } from '../types/TraceEvents.js';
|
|
3
|
+
import type * as Types from '../types/types.js';
|
|
4
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
5
|
+
export declare const UIStrings: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Text to tell the user about the longest user interaction.
|
|
8
|
+
*/
|
|
9
|
+
readonly description: "Start investigating [how to improve INP](https://developer.chrome.com/docs/performance/insights/inp-breakdown) by looking at the longest subpart.";
|
|
10
|
+
/**
|
|
11
|
+
* @description Title for the performance insight "INP breakdown", which shows a breakdown of INP by subparts / sections.
|
|
12
|
+
*/
|
|
13
|
+
readonly title: "INP breakdown";
|
|
14
|
+
/**
|
|
15
|
+
* @description Label used for the subpart/component/stage/section of a larger duration.
|
|
16
|
+
*/
|
|
17
|
+
readonly subpart: "Subpart";
|
|
18
|
+
/**
|
|
19
|
+
* @description Label used for a time duration.
|
|
20
|
+
*/
|
|
21
|
+
readonly duration: "Duration";
|
|
22
|
+
/**
|
|
23
|
+
* @description Text shown next to the interaction event's input delay time in the detail view.
|
|
24
|
+
*/
|
|
25
|
+
readonly inputDelay: "Input delay";
|
|
26
|
+
/**
|
|
27
|
+
* @description Text shown next to the interaction event's thread processing duration in the detail view.
|
|
28
|
+
*/
|
|
29
|
+
readonly processingDuration: "Processing duration";
|
|
30
|
+
/**
|
|
31
|
+
* @description Text shown next to the interaction event's presentation delay time in the detail view.
|
|
32
|
+
*/
|
|
33
|
+
readonly presentationDelay: "Presentation delay";
|
|
34
|
+
/**
|
|
35
|
+
* @description Text status indicating that no user interactions were detected.
|
|
36
|
+
*/
|
|
37
|
+
readonly noInteractions: "No interactions detected";
|
|
38
|
+
};
|
|
39
|
+
export declare const i18nString: any;
|
|
40
|
+
export type INPBreakdownInsightModel = InsightModel<typeof UIStrings, {
|
|
41
|
+
longestInteractionEvent?: SyntheticInteractionPair;
|
|
42
|
+
highPercentileInteractionEvent?: SyntheticInteractionPair;
|
|
43
|
+
}>;
|
|
44
|
+
export declare function isINPBreakdownInsight(insight: InsightModel): insight is INPBreakdownInsightModel;
|
|
45
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): INPBreakdownInsightModel;
|
|
46
|
+
/**
|
|
47
|
+
* If `subpart` is -1, then all subparts are included. Otherwise it's just that index.
|
|
48
|
+
**/
|
|
49
|
+
export declare function createOverlaysForSubpart(event: Types.Events.SyntheticInteractionPair, subpartIndex?: number): Types.Overlays.Overlay[];
|
|
50
|
+
export declare function createOverlays(model: INPBreakdownInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import type * as Types from '../types/types.js';
|
|
3
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
4
|
+
export declare const UIStrings: {
|
|
5
|
+
/**
|
|
6
|
+
* @description Title of an insight that recommends ways to reduce the size of images downloaded and used on the page.
|
|
7
|
+
*/
|
|
8
|
+
readonly title: "Improve image delivery";
|
|
9
|
+
/**
|
|
10
|
+
* @description Description of an insight that recommends ways to reduce the size of images downloaded and used on the page.
|
|
11
|
+
*/
|
|
12
|
+
readonly description: "Reducing the download time of images can improve the perceived load time of the page and LCP. [Learn more about optimizing image size](https://developer.chrome.com/docs/performance/insights/image-delivery)";
|
|
13
|
+
/**
|
|
14
|
+
* @description Message displayed in a chip explaining that an image file size is large for the # of pixels it has and recommends possible adjustments to improve the image size.
|
|
15
|
+
*/
|
|
16
|
+
readonly useCompression: "Increasing the image compression factor could improve this image's download size.";
|
|
17
|
+
/**
|
|
18
|
+
* @description Message displayed in a chip explaining that an image file size is large for the # of pixels it has and recommends possible adjustments to improve the image size.
|
|
19
|
+
*/
|
|
20
|
+
readonly useModernFormat: "Using a modern image format (WebP, AVIF) or increasing the image compression could improve this image's download size.";
|
|
21
|
+
/**
|
|
22
|
+
* @description Message displayed in a chip advising the user to use video formats instead of GIFs because videos generally have smaller file sizes.
|
|
23
|
+
*/
|
|
24
|
+
readonly useVideoFormat: "Using video formats instead of GIFs can improve the download size of animated content.";
|
|
25
|
+
/**
|
|
26
|
+
* @description Message displayed in a chip explaining that an image was displayed on the page with dimensions much smaller than the image file dimensions.
|
|
27
|
+
* @example {1000x500} PH1
|
|
28
|
+
* @example {100x50} PH2
|
|
29
|
+
*/
|
|
30
|
+
readonly useResponsiveSize: "This image file is larger than it needs to be ({PH1}) for its displayed dimensions ({PH2}). Use responsive images to reduce the image download size.";
|
|
31
|
+
/**
|
|
32
|
+
* @description Column header for a table column containing network requests for images which can improve their file size (e.g. use a different format, increase compression, etc).
|
|
33
|
+
*/
|
|
34
|
+
readonly optimizeFile: "Optimize file size";
|
|
35
|
+
/**
|
|
36
|
+
* @description Table row value representing the remaining items not shown in the table due to size constraints. This row will always represent at least 2 items.
|
|
37
|
+
* @example {5} PH1
|
|
38
|
+
*/
|
|
39
|
+
readonly others: "{PH1} others";
|
|
40
|
+
/**
|
|
41
|
+
* @description Text status indicating that no potential optimizations were found for any image file
|
|
42
|
+
*/
|
|
43
|
+
readonly noOptimizableImages: "No optimizable images";
|
|
44
|
+
/**
|
|
45
|
+
* @description Text describing the estimated number of bytes that an image file optimization can save. This text is appended to another block of text describing the image optimization in more detail. "Est" means "Estimated".
|
|
46
|
+
* @example {Use the correct image dimensions to reduce the image file size.} PH1
|
|
47
|
+
* @example {50 MB} PH2
|
|
48
|
+
*/
|
|
49
|
+
readonly estimatedSavings: "{PH1} (Est {PH2})";
|
|
50
|
+
};
|
|
51
|
+
export declare const i18nString: any;
|
|
52
|
+
export declare enum ImageOptimizationType {
|
|
53
|
+
ADJUST_COMPRESSION = "ADJUST_COMPRESSION",
|
|
54
|
+
MODERN_FORMAT_OR_COMPRESSION = "MODERN_FORMAT_OR_COMPRESSION",
|
|
55
|
+
VIDEO_FORMAT = "VIDEO_FORMAT",
|
|
56
|
+
RESPONSIVE_SIZE = "RESPONSIVE_SIZE"
|
|
57
|
+
}
|
|
58
|
+
export type ImageOptimization = {
|
|
59
|
+
type: Exclude<ImageOptimizationType, ImageOptimizationType.RESPONSIVE_SIZE>;
|
|
60
|
+
byteSavings: number;
|
|
61
|
+
} | {
|
|
62
|
+
type: ImageOptimizationType.RESPONSIVE_SIZE;
|
|
63
|
+
byteSavings: number;
|
|
64
|
+
fileDimensions: {
|
|
65
|
+
width: number;
|
|
66
|
+
height: number;
|
|
67
|
+
};
|
|
68
|
+
displayDimensions: {
|
|
69
|
+
width: number;
|
|
70
|
+
height: number;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
export interface OptimizableImage {
|
|
74
|
+
request: Types.Events.SyntheticNetworkRequest;
|
|
75
|
+
optimizations: ImageOptimization[];
|
|
76
|
+
byteSavings: number;
|
|
77
|
+
/**
|
|
78
|
+
* If the an image resource has multiple `PaintImage`s, we compare its intrinsic size to the largest of the displayed sizes.
|
|
79
|
+
*
|
|
80
|
+
* It is theoretically possible for `PaintImage` events with the same URL to have different intrinsic sizes.
|
|
81
|
+
* However, this should be rare because it requires serving different images from the same URL.
|
|
82
|
+
*/
|
|
83
|
+
largestImagePaint: Types.Events.PaintImage;
|
|
84
|
+
}
|
|
85
|
+
export type ImageDeliveryInsightModel = InsightModel<typeof UIStrings, {
|
|
86
|
+
/** Sorted by potential byte savings, then by size of image. */
|
|
87
|
+
optimizableImages: OptimizableImage[];
|
|
88
|
+
wastedBytes: number;
|
|
89
|
+
}>;
|
|
90
|
+
export declare function isImageDeliveryInsight(model: InsightModel): model is ImageDeliveryInsightModel;
|
|
91
|
+
export declare function getOptimizationMessage(optimization: ImageOptimization): string;
|
|
92
|
+
export declare function getOptimizationMessageWithBytes(optimization: ImageOptimization): string;
|
|
93
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): ImageDeliveryInsightModel;
|
|
94
|
+
export declare function createOverlayForRequest(request: Types.Events.SyntheticNetworkRequest): Types.Overlays.EntryOutline;
|
|
95
|
+
export declare function createOverlays(model: ImageDeliveryInsightModel): Types.Overlays.Overlay[];
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type * as Common from '../../../core/common/common.js';
|
|
2
|
+
import * as Handlers from '../handlers/handlers.js';
|
|
3
|
+
import * as Types from '../types/types.js';
|
|
4
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
5
|
+
export declare const UIStrings: {
|
|
6
|
+
/**
|
|
7
|
+
* @description Title of an insight that provides details about the LCP metric, broken down by parts.
|
|
8
|
+
*/
|
|
9
|
+
readonly title: "LCP breakdown";
|
|
10
|
+
/**
|
|
11
|
+
* @description Description of a DevTools insight that presents a breakdown for the LCP metric by subparts.
|
|
12
|
+
* This is displayed after a user expands the section to see more. No character length limits.
|
|
13
|
+
*/
|
|
14
|
+
readonly description: "Each [subpart has specific improvement strategies](https://developer.chrome.com/docs/performance/insights/lcp-breakdown). Ideally, most of the LCP time should be spent on loading the resources, not within delays.";
|
|
15
|
+
/**
|
|
16
|
+
* @description Time to first byte title for the Largest Contentful Paint's subparts timespan breakdown.
|
|
17
|
+
*/
|
|
18
|
+
readonly timeToFirstByte: "Time to first byte";
|
|
19
|
+
/**
|
|
20
|
+
* @description Resource load delay title for the Largest Contentful Paint subparts timespan breakdown.
|
|
21
|
+
*/
|
|
22
|
+
readonly resourceLoadDelay: "Resource load delay";
|
|
23
|
+
/**
|
|
24
|
+
* @description Resource load duration title for the Largest Contentful Paint subparts timespan breakdown.
|
|
25
|
+
*/
|
|
26
|
+
readonly resourceLoadDuration: "Resource load duration";
|
|
27
|
+
/**
|
|
28
|
+
* @description Element render delay title for the Largest Contentful Paint subparts timespan breakdown.
|
|
29
|
+
*/
|
|
30
|
+
readonly elementRenderDelay: "Element render delay";
|
|
31
|
+
/**
|
|
32
|
+
* @description Label used for the subpart (section) of a larger duration.
|
|
33
|
+
*/
|
|
34
|
+
readonly subpart: "Subpart";
|
|
35
|
+
/**
|
|
36
|
+
* @description Label used for the duration a single subpart (section) takes up of a larger duration.
|
|
37
|
+
*/
|
|
38
|
+
readonly duration: "Duration";
|
|
39
|
+
/**
|
|
40
|
+
* @description Label used for the duration a single subpart (section) takes up of a larger duration. The value will be the 75th percentile of aggregate data. "Field" means that the data was collected from real users in the field as opposed to the developers local environment. "Field" is synonymous with "Real user data".
|
|
41
|
+
*/
|
|
42
|
+
readonly fieldDuration: "Field p75";
|
|
43
|
+
/**
|
|
44
|
+
* @description Text status indicating that the the Largest Contentful Paint (LCP) metric timing was not found. "LCP" is an acronym and should not be translated.
|
|
45
|
+
*/
|
|
46
|
+
readonly noLcp: "No LCP detected";
|
|
47
|
+
};
|
|
48
|
+
export declare const i18nString: any;
|
|
49
|
+
/** A TraceWindow plus its UIString. **/
|
|
50
|
+
export type Subpart = Types.Timing.TraceWindowMicro & {
|
|
51
|
+
label: Common.UIString.LocalizedString;
|
|
52
|
+
};
|
|
53
|
+
interface LCPSubparts {
|
|
54
|
+
/**
|
|
55
|
+
* The time between when the user initiates loading the page until when
|
|
56
|
+
* the browser receives the first byte of the html response.
|
|
57
|
+
*/
|
|
58
|
+
ttfb: Subpart;
|
|
59
|
+
/**
|
|
60
|
+
* The time between ttfb and the LCP request request being started.
|
|
61
|
+
* For a text LCP, this is undefined given no request is loaded.
|
|
62
|
+
*/
|
|
63
|
+
loadDelay?: Subpart;
|
|
64
|
+
/**
|
|
65
|
+
* The time it takes to load the LCP request.
|
|
66
|
+
*/
|
|
67
|
+
loadDuration?: Subpart;
|
|
68
|
+
/**
|
|
69
|
+
* The time between when the LCP request finishes loading and when
|
|
70
|
+
* the LCP element is rendered.
|
|
71
|
+
*/
|
|
72
|
+
renderDelay: Subpart;
|
|
73
|
+
}
|
|
74
|
+
export declare function isLCPBreakdownInsight(model: InsightModel): model is LCPBreakdownInsightModel;
|
|
75
|
+
export type LCPBreakdownInsightModel = InsightModel<typeof UIStrings, {
|
|
76
|
+
lcpMs?: Types.Timing.Milli;
|
|
77
|
+
lcpTs?: Types.Timing.Milli;
|
|
78
|
+
lcpEvent?: Types.Events.AnyLargestContentfulPaintCandidate;
|
|
79
|
+
/** The network request for the LCP image, if there was one. */
|
|
80
|
+
lcpRequest?: Types.Events.SyntheticNetworkRequest;
|
|
81
|
+
subparts?: LCPSubparts;
|
|
82
|
+
}>;
|
|
83
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): LCPBreakdownInsightModel;
|
|
84
|
+
export declare function createOverlays(model: LCPBreakdownInsightModel): Types.Overlays.Overlay[];
|
|
85
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import * as Types from '../types/types.js';
|
|
3
|
+
import { type Checklist, type InsightModel, type InsightSetContext } from './types.js';
|
|
4
|
+
export declare const UIStrings: {
|
|
5
|
+
/**
|
|
6
|
+
* @description Title of an insight that provides details about the LCP metric, and the network requests necessary to load it. Details how the LCP request was discoverable - in other words, the path necessary to load it (ex: network requests, JavaScript)
|
|
7
|
+
*/
|
|
8
|
+
readonly title: "LCP request discovery";
|
|
9
|
+
/**
|
|
10
|
+
* @description Description of an insight that provides details about the LCP metric, and the network requests necessary to load it.
|
|
11
|
+
*/
|
|
12
|
+
readonly description: "[Optimize LCP](https://developer.chrome.com/docs/performance/insights/lcp-discovery) by making the LCP image discoverable from the HTML immediately, and avoiding lazy-loading";
|
|
13
|
+
/**
|
|
14
|
+
* @description Text to tell the user how long after the earliest discovery time their LCP element loaded.
|
|
15
|
+
* @example {401ms} PH1
|
|
16
|
+
*/
|
|
17
|
+
readonly lcpLoadDelay: "LCP image loaded {PH1} after earliest start point.";
|
|
18
|
+
/**
|
|
19
|
+
* @description Text to tell the user that a fetchpriority property value of "high" is applied to the LCP request.
|
|
20
|
+
*/
|
|
21
|
+
readonly fetchPriorityApplied: "fetchpriority=high applied";
|
|
22
|
+
/**
|
|
23
|
+
* @description Text to tell the user that a fetchpriority property value of "high" should be applied to the LCP request.
|
|
24
|
+
*/
|
|
25
|
+
readonly fetchPriorityShouldBeApplied: "fetchpriority=high should be applied";
|
|
26
|
+
/**
|
|
27
|
+
* @description Text to tell the user that the LCP request is discoverable in the initial document.
|
|
28
|
+
*/
|
|
29
|
+
readonly requestDiscoverable: "Request is discoverable in initial document";
|
|
30
|
+
/**
|
|
31
|
+
* @description Text to tell the user that the LCP request does not have the lazy load property applied.
|
|
32
|
+
*/
|
|
33
|
+
readonly lazyLoadNotApplied: "lazy load not applied";
|
|
34
|
+
/**
|
|
35
|
+
* @description Text status indicating that the the Largest Contentful Paint (LCP) metric timing was not found. "LCP" is an acronym and should not be translated.
|
|
36
|
+
*/
|
|
37
|
+
readonly noLcp: "No LCP detected";
|
|
38
|
+
/**
|
|
39
|
+
* @description Text status indicating that the Largest Contentful Paint (LCP) metric was text rather than an image. "LCP" is an acronym and should not be translated.
|
|
40
|
+
*/
|
|
41
|
+
readonly noLcpResource: "No LCP resource detected because the LCP is not an image";
|
|
42
|
+
};
|
|
43
|
+
export declare const i18nString: any;
|
|
44
|
+
export declare function isLCPDiscoveryInsight(model: InsightModel): model is LCPDiscoveryInsightModel;
|
|
45
|
+
export type LCPDiscoveryInsightModel = InsightModel<typeof UIStrings, {
|
|
46
|
+
lcpEvent?: Types.Events.AnyLargestContentfulPaintCandidate;
|
|
47
|
+
/** The network request for the LCP image, if there was one. */
|
|
48
|
+
lcpRequest?: Types.Events.SyntheticNetworkRequest;
|
|
49
|
+
earliestDiscoveryTimeTs?: Types.Timing.Micro;
|
|
50
|
+
checklist?: Checklist<'priorityHinted' | 'requestDiscoverable' | 'eagerlyLoaded'>;
|
|
51
|
+
}>;
|
|
52
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): LCPDiscoveryInsightModel;
|
|
53
|
+
interface LCPImageDiscoveryData {
|
|
54
|
+
checklist: Exclude<LCPDiscoveryInsightModel['checklist'], undefined>;
|
|
55
|
+
request: Types.Events.SyntheticNetworkRequest;
|
|
56
|
+
discoveryDelay: Types.Timing.Micro | null;
|
|
57
|
+
estimatedSavings: Types.Timing.Milli | null;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* TODO: this extra transformation (getImageData) should not be necessary.
|
|
61
|
+
*/
|
|
62
|
+
export declare function getImageData(model: LCPDiscoveryInsightModel): LCPImageDiscoveryData | null;
|
|
63
|
+
export declare function createOverlays(model: LCPDiscoveryInsightModel): Types.Overlays.Overlay[];
|
|
64
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type * as Handlers from '../handlers/handlers.js';
|
|
2
|
+
import type * as Types from '../types/types.js';
|
|
3
|
+
import { type InsightModel, type InsightSetContext } from './types.js';
|
|
4
|
+
export declare const UIStrings: {
|
|
5
|
+
/**
|
|
6
|
+
* @description Title of an insight that identifies polyfills for modern JavaScript features, and recommends their removal.
|
|
7
|
+
*/
|
|
8
|
+
readonly title: "Legacy JavaScript";
|
|
9
|
+
/**
|
|
10
|
+
* @description Description of an insight that identifies polyfills for modern JavaScript features, and recommends their removal.
|
|
11
|
+
*/
|
|
12
|
+
readonly description: "Polyfills and transforms enable older browsers to use new JavaScript features. However, many aren't necessary for modern browsers. Consider modifying your JavaScript build process to not transpile [Baseline](https://web.dev/articles/baseline-and-polyfills) features, unless you know you must support older browsers. [Learn why most sites can deploy ES6+ code without transpiling](https://developer.chrome.com/docs/performance/insights/legacy-javascript)";
|
|
13
|
+
/** Label for a column in a data table; entries will be the individual JavaScript scripts. */
|
|
14
|
+
readonly columnScript: "Script";
|
|
15
|
+
/** Label for a column in a data table; entries will be the number of wasted bytes (aka the estimated savings in terms of bytes). */
|
|
16
|
+
readonly columnWastedBytes: "Wasted bytes";
|
|
17
|
+
};
|
|
18
|
+
export declare const i18nString: any;
|
|
19
|
+
export interface PatternMatchResult {
|
|
20
|
+
name: string;
|
|
21
|
+
line: number;
|
|
22
|
+
column: number;
|
|
23
|
+
}
|
|
24
|
+
interface LegacyJavaScriptResult {
|
|
25
|
+
matches: PatternMatchResult[];
|
|
26
|
+
estimatedByteSavings: number;
|
|
27
|
+
}
|
|
28
|
+
type LegacyJavaScriptResults = Map<Handlers.ModelHandlers.Scripts.Script, LegacyJavaScriptResult>;
|
|
29
|
+
export type LegacyJavaScriptInsightModel = InsightModel<typeof UIStrings, {
|
|
30
|
+
legacyJavaScriptResults: LegacyJavaScriptResults;
|
|
31
|
+
}>;
|
|
32
|
+
export declare function isLegacyJavaScript(model: InsightModel): model is LegacyJavaScriptInsightModel;
|
|
33
|
+
export declare function generateInsight(data: Handlers.Types.HandlerData, context: InsightSetContext): LegacyJavaScriptInsightModel;
|
|
34
|
+
export declare function createOverlays(model: LegacyJavaScriptInsightModel): Types.Overlays.Overlay[];
|
|
35
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export * as Cache from './Cache.js';
|
|
2
|
+
export * as CharacterSet from './CharacterSet.js';
|
|
3
|
+
export * as CLSCulprits from './CLSCulprits.js';
|
|
4
|
+
export * as DocumentLatency from './DocumentLatency.js';
|
|
5
|
+
export * as DOMSize from './DOMSize.js';
|
|
6
|
+
export * as DuplicatedJavaScript from './DuplicatedJavaScript.js';
|
|
7
|
+
export * as FontDisplay from './FontDisplay.js';
|
|
8
|
+
export * as ForcedReflow from './ForcedReflow.js';
|
|
9
|
+
export * as ImageDelivery from './ImageDelivery.js';
|
|
10
|
+
export * as INPBreakdown from './INPBreakdown.js';
|
|
11
|
+
export * as LCPBreakdown from './LCPBreakdown.js';
|
|
12
|
+
export * as LCPDiscovery from './LCPDiscovery.js';
|
|
13
|
+
export * as LegacyJavaScript from './LegacyJavaScript.js';
|
|
14
|
+
export * as ModernHTTP from './ModernHTTP.js';
|
|
15
|
+
export * as NetworkDependencyTree from './NetworkDependencyTree.js';
|
|
16
|
+
export * as RenderBlocking from './RenderBlocking.js';
|
|
17
|
+
export * as SlowCSSSelector from './SlowCSSSelector.js';
|
|
18
|
+
export * as ThirdParties from './ThirdParties.js';
|
|
19
|
+
export * as Viewport from './Viewport.js';
|