devtools-tracing 1.1.1 → 1.2.0
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/.claude/settings.local.json +14 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +28854 -0
- package/package.json +11 -8
- package/generate.ts +0 -649
- package/index.ts +0 -17
- package/lib/extension-api/ExtensionAPI.d.ts +0 -357
- package/lib/front_end/core/common/App.ts +0 -7
- package/lib/front_end/core/common/AppProvider.ts +0 -32
- package/lib/front_end/core/common/Base64.ts +0 -47
- package/lib/front_end/core/common/CharacterIdMap.ts +0 -30
- package/lib/front_end/core/common/Color.ts +0 -2506
- package/lib/front_end/core/common/ColorConverter.ts +0 -402
- package/lib/front_end/core/common/ColorUtils.ts +0 -252
- package/lib/front_end/core/common/Console.ts +0 -114
- package/lib/front_end/core/common/Debouncer.ts +0 -15
- package/lib/front_end/core/common/EventTarget.ts +0 -52
- package/lib/front_end/core/common/Gzip.ts +0 -74
- package/lib/front_end/core/common/JavaScriptMetaData.ts +0 -29
- package/lib/front_end/core/common/Lazy.ts +0 -31
- package/lib/front_end/core/common/Linkifier.ts +0 -55
- package/lib/front_end/core/common/MapWithDefault.ts +0 -26
- package/lib/front_end/core/common/Mutex.ts +0 -55
- package/lib/front_end/core/common/Object.ts +0 -145
- package/lib/front_end/core/common/ParsedURL.ts +0 -554
- package/lib/front_end/core/common/Progress.ts +0 -180
- package/lib/front_end/core/common/QueryParamHandler.ts +0 -7
- package/lib/front_end/core/common/ResolverBase.ts +0 -85
- package/lib/front_end/core/common/ResourceType.ts +0 -588
- package/lib/front_end/core/common/ReturnToPanel.ts +0 -17
- package/lib/front_end/core/common/Revealer.ts +0 -192
- package/lib/front_end/core/common/Runnable.ts +0 -41
- package/lib/front_end/core/common/SegmentedRange.ts +0 -87
- package/lib/front_end/core/common/SettingRegistration.ts +0 -339
- package/lib/front_end/core/common/Settings.ts +0 -1497
- package/lib/front_end/core/common/SimpleHistoryManager.ts +0 -124
- package/lib/front_end/core/common/StringOutputStream.ts +0 -26
- package/lib/front_end/core/common/TextDictionary.ts +0 -48
- package/lib/front_end/core/common/Throttler.ts +0 -99
- package/lib/front_end/core/common/Trie.ts +0 -152
- package/lib/front_end/core/common/Worker.ts +0 -60
- package/lib/front_end/core/common/common.ts +0 -81
- package/lib/front_end/core/host/AidaClient.ts +0 -733
- package/lib/front_end/core/host/GdpClient.ts +0 -316
- package/lib/front_end/core/host/InspectorFrontendHost.ts +0 -648
- package/lib/front_end/core/host/InspectorFrontendHostAPI.ts +0 -551
- package/lib/front_end/core/host/Platform.ts +0 -76
- package/lib/front_end/core/host/ResourceLoader.ts +0 -282
- package/lib/front_end/core/host/UserMetrics.ts +0 -1230
- package/lib/front_end/core/host/host.ts +0 -23
- package/lib/front_end/core/i18n/ByteUtilities.ts +0 -82
- package/lib/front_end/core/i18n/DevToolsLocale.ts +0 -87
- package/lib/front_end/core/i18n/NumberFormatter.ts +0 -82
- package/lib/front_end/core/i18n/i18n.ts +0 -17
- package/lib/front_end/core/i18n/i18nImpl.ts +0 -204
- package/lib/front_end/core/i18n/i18nTypes.ts +0 -10
- package/lib/front_end/core/i18n/locales.js +0 -14
- package/lib/front_end/core/i18n/time-utilities.ts +0 -174
- package/lib/front_end/core/platform/ArrayUtilities.ts +0 -271
- package/lib/front_end/core/platform/Brand.ts +0 -23
- package/lib/front_end/core/platform/Constructor.ts +0 -10
- package/lib/front_end/core/platform/DOMUtilities.ts +0 -138
- package/lib/front_end/core/platform/DateUtilities.ts +0 -15
- package/lib/front_end/core/platform/DevToolsPath.ts +0 -53
- package/lib/front_end/core/platform/KeyboardUtilities.ts +0 -38
- package/lib/front_end/core/platform/MapUtilities.ts +0 -95
- package/lib/front_end/core/platform/MimeType.ts +0 -175
- package/lib/front_end/core/platform/NumberUtilities.ts +0 -80
- package/lib/front_end/core/platform/StringUtilities.ts +0 -588
- package/lib/front_end/core/platform/Timing.ts +0 -17
- package/lib/front_end/core/platform/TypedArrayUtilities.ts +0 -189
- package/lib/front_end/core/platform/TypescriptUtilities.ts +0 -86
- package/lib/front_end/core/platform/UIString.ts +0 -39
- package/lib/front_end/core/platform/UserVisibleError.ts +0 -28
- package/lib/front_end/core/platform/platform.ts +0 -45
- package/lib/front_end/core/protocol_client/ConnectionTransport.ts +0 -26
- package/lib/front_end/core/protocol_client/InspectorBackend.ts +0 -1050
- package/lib/front_end/core/protocol_client/NodeURL.ts +0 -42
- package/lib/front_end/core/protocol_client/protocol_client.ts +0 -13
- package/lib/front_end/core/root/Runtime.ts +0 -609
- package/lib/front_end/core/root/root.ts +0 -6
- package/lib/front_end/core/sdk/AccessibilityModel.ts +0 -353
- package/lib/front_end/core/sdk/AnimationModel.ts +0 -1041
- package/lib/front_end/core/sdk/AutofillModel.ts +0 -184
- package/lib/front_end/core/sdk/CPUProfilerModel.ts +0 -148
- package/lib/front_end/core/sdk/CPUThrottlingManager.ts +0 -282
- package/lib/front_end/core/sdk/CSSContainerQuery.ts +0 -139
- package/lib/front_end/core/sdk/CSSFontFace.ts +0 -40
- package/lib/front_end/core/sdk/CSSLayer.ts +0 -30
- package/lib/front_end/core/sdk/CSSMatchedStyles.ts +0 -1646
- package/lib/front_end/core/sdk/CSSMedia.ts +0 -121
- package/lib/front_end/core/sdk/CSSMetadata.ts +0 -1647
- package/lib/front_end/core/sdk/CSSModel.ts +0 -1128
- package/lib/front_end/core/sdk/CSSProperty.ts +0 -384
- package/lib/front_end/core/sdk/CSSPropertyParser.ts +0 -681
- package/lib/front_end/core/sdk/CSSPropertyParserMatchers.ts +0 -1395
- package/lib/front_end/core/sdk/CSSQuery.ts +0 -72
- package/lib/front_end/core/sdk/CSSRule.ts +0 -465
- package/lib/front_end/core/sdk/CSSScope.ts +0 -30
- package/lib/front_end/core/sdk/CSSStartingStyle.ts +0 -29
- package/lib/front_end/core/sdk/CSSStyleDeclaration.ts +0 -313
- package/lib/front_end/core/sdk/CSSStyleSheetHeader.ts +0 -196
- package/lib/front_end/core/sdk/CSSSupports.ts +0 -33
- package/lib/front_end/core/sdk/CategorizedBreakpoint.ts +0 -64
- package/lib/front_end/core/sdk/ChildTargetManager.ts +0 -314
- package/lib/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +0 -62
- package/lib/front_end/core/sdk/Connections.ts +0 -293
- package/lib/front_end/core/sdk/ConsoleModel.ts +0 -808
- package/lib/front_end/core/sdk/ConsoleModelTypes.ts +0 -15
- package/lib/front_end/core/sdk/Cookie.ts +0 -319
- package/lib/front_end/core/sdk/CookieModel.ts +0 -239
- package/lib/front_end/core/sdk/CookieParser.ts +0 -185
- package/lib/front_end/core/sdk/DOMDebuggerModel.ts +0 -787
- package/lib/front_end/core/sdk/DOMModel.ts +0 -1961
- package/lib/front_end/core/sdk/DebuggerModel.ts +0 -1605
- package/lib/front_end/core/sdk/EmulationModel.ts +0 -648
- package/lib/front_end/core/sdk/EnhancedTracesParser.ts +0 -515
- package/lib/front_end/core/sdk/EventBreakpointsModel.ts +0 -183
- package/lib/front_end/core/sdk/FrameAssociated.ts +0 -11
- package/lib/front_end/core/sdk/FrameManager.ts +0 -259
- package/lib/front_end/core/sdk/HeapProfilerModel.ts +0 -225
- package/lib/front_end/core/sdk/HttpReasonPhraseStrings.ts +0 -77
- package/lib/front_end/core/sdk/IOModel.ts +0 -91
- package/lib/front_end/core/sdk/IsolateManager.ts +0 -257
- package/lib/front_end/core/sdk/IssuesModel.ts +0 -70
- package/lib/front_end/core/sdk/LayerTreeBase.ts +0 -169
- package/lib/front_end/core/sdk/LogModel.ts +0 -56
- package/lib/front_end/core/sdk/NetworkManager.ts +0 -2823
- package/lib/front_end/core/sdk/NetworkRequest.ts +0 -2253
- package/lib/front_end/core/sdk/OverlayColorGenerator.ts +0 -52
- package/lib/front_end/core/sdk/OverlayModel.ts +0 -1011
- package/lib/front_end/core/sdk/OverlayPersistentHighlighter.ts +0 -522
- package/lib/front_end/core/sdk/PageLoad.ts +0 -35
- package/lib/front_end/core/sdk/PageResourceLoader.ts +0 -435
- package/lib/front_end/core/sdk/PaintProfiler.ts +0 -110
- package/lib/front_end/core/sdk/PerformanceMetricsModel.ts +0 -84
- package/lib/front_end/core/sdk/PreloadingModel.ts +0 -863
- package/lib/front_end/core/sdk/RehydratingConnection.ts +0 -386
- package/lib/front_end/core/sdk/RehydratingObject.ts +0 -66
- package/lib/front_end/core/sdk/RemoteObject.ts +0 -1160
- package/lib/front_end/core/sdk/Resource.ts +0 -232
- package/lib/front_end/core/sdk/ResourceTreeModel.ts +0 -1160
- package/lib/front_end/core/sdk/RuntimeModel.ts +0 -732
- package/lib/front_end/core/sdk/SDKModel.ts +0 -65
- package/lib/front_end/core/sdk/ScopeTreeCache.ts +0 -45
- package/lib/front_end/core/sdk/ScreenCaptureModel.ts +0 -255
- package/lib/front_end/core/sdk/Script.ts +0 -534
- package/lib/front_end/core/sdk/SecurityOriginManager.ts +0 -76
- package/lib/front_end/core/sdk/ServerSentEvents.ts +0 -80
- package/lib/front_end/core/sdk/ServerSentEventsProtocol.ts +0 -122
- package/lib/front_end/core/sdk/ServerTiming.ts +0 -260
- package/lib/front_end/core/sdk/ServiceWorkerCacheModel.ts +0 -377
- package/lib/front_end/core/sdk/ServiceWorkerManager.ts +0 -605
- package/lib/front_end/core/sdk/SourceMap.ts +0 -867
- package/lib/front_end/core/sdk/SourceMapCache.ts +0 -54
- package/lib/front_end/core/sdk/SourceMapFunctionRanges.ts +0 -156
- package/lib/front_end/core/sdk/SourceMapManager.ts +0 -239
- package/lib/front_end/core/sdk/SourceMapScopeChainEntry.ts +0 -189
- package/lib/front_end/core/sdk/SourceMapScopesInfo.ts +0 -508
- package/lib/front_end/core/sdk/StorageBucketsModel.ts +0 -204
- package/lib/front_end/core/sdk/StorageKeyManager.ts +0 -98
- package/lib/front_end/core/sdk/Target.ts +0 -332
- package/lib/front_end/core/sdk/TargetManager.ts +0 -453
- package/lib/front_end/core/sdk/TraceObject.ts +0 -61
- package/lib/front_end/core/sdk/WebAuthnModel.ts +0 -104
- package/lib/front_end/core/sdk/sdk.ts +0 -174
- package/lib/front_end/entrypoints/formatter_worker/FormatterActions.ts +0 -59
- package/lib/front_end/generated/InspectorBackendCommands.js +0 -1617
- package/lib/front_end/generated/SupportedCSSProperties.js +0 -7512
- package/lib/front_end/generated/protocol-proxy-api.d.ts +0 -5022
- package/lib/front_end/generated/protocol.ts +0 -22014
- package/lib/front_end/models/bindings/CSSWorkspaceBinding.ts +0 -318
- package/lib/front_end/models/bindings/CompilerScriptMapping.ts +0 -536
- package/lib/front_end/models/bindings/ContentProviderBasedProject.ts +0 -187
- package/lib/front_end/models/bindings/DebuggerLanguagePlugins.ts +0 -1197
- package/lib/front_end/models/bindings/DebuggerWorkspaceBinding.ts +0 -733
- package/lib/front_end/models/bindings/DefaultScriptMapping.ts +0 -141
- package/lib/front_end/models/bindings/FileUtils.ts +0 -228
- package/lib/front_end/models/bindings/LiveLocation.ts +0 -81
- package/lib/front_end/models/bindings/NetworkProject.ts +0 -157
- package/lib/front_end/models/bindings/PresentationConsoleMessageHelper.ts +0 -312
- package/lib/front_end/models/bindings/ResourceMapping.ts +0 -539
- package/lib/front_end/models/bindings/ResourceScriptMapping.ts +0 -491
- package/lib/front_end/models/bindings/ResourceUtils.ts +0 -103
- package/lib/front_end/models/bindings/SASSSourceMapping.ts +0 -222
- package/lib/front_end/models/bindings/StylesSourceMapping.ts +0 -316
- package/lib/front_end/models/bindings/TempFile.ts +0 -67
- package/lib/front_end/models/bindings/bindings.ts +0 -39
- package/lib/front_end/models/cpu_profile/CPUProfileDataModel.ts +0 -571
- package/lib/front_end/models/cpu_profile/ProfileTreeModel.ts +0 -103
- package/lib/front_end/models/cpu_profile/cpu_profile.ts +0 -11
- package/lib/front_end/models/formatter/FormatterWorkerPool.ts +0 -219
- package/lib/front_end/models/formatter/ScriptFormatter.ts +0 -112
- package/lib/front_end/models/formatter/formatter.ts +0 -8
- package/lib/front_end/models/source_map_scopes/NamesResolver.ts +0 -765
- package/lib/front_end/models/source_map_scopes/ScopeChainModel.ts +0 -84
- package/lib/front_end/models/source_map_scopes/source_map_scopes.ts +0 -11
- package/lib/front_end/models/stack_trace/StackTrace.ts +0 -53
- package/lib/front_end/models/stack_trace/StackTraceImpl.ts +0 -85
- package/lib/front_end/models/stack_trace/StackTraceModel.ts +0 -128
- package/lib/front_end/models/stack_trace/Trie.ts +0 -163
- package/lib/front_end/models/stack_trace/stack_trace.ts +0 -9
- package/lib/front_end/models/stack_trace/stack_trace_impl.ts +0 -13
- package/lib/front_end/models/text_utils/CodeMirrorUtils.ts +0 -37
- package/lib/front_end/models/text_utils/ContentData.ts +0 -199
- package/lib/front_end/models/text_utils/ContentProvider.ts +0 -68
- package/lib/front_end/models/text_utils/StaticContentProvider.ts +0 -49
- package/lib/front_end/models/text_utils/StreamingContentData.ts +0 -108
- package/lib/front_end/models/text_utils/Text.ts +0 -90
- package/lib/front_end/models/text_utils/TextCursor.ts +0 -44
- package/lib/front_end/models/text_utils/TextRange.ts +0 -266
- package/lib/front_end/models/text_utils/TextUtils.ts +0 -401
- package/lib/front_end/models/text_utils/WasmDisassembly.ts +0 -87
- package/lib/front_end/models/text_utils/text_utils.ts +0 -27
- package/lib/front_end/models/trace/EntityMapper.ts +0 -141
- package/lib/front_end/models/trace/EventsSerializer.ts +0 -101
- package/lib/front_end/models/trace/LanternComputationData.ts +0 -438
- package/lib/front_end/models/trace/ModelImpl.ts +0 -236
- package/lib/front_end/models/trace/Name.ts +0 -136
- package/lib/front_end/models/trace/Processor.ts +0 -652
- package/lib/front_end/models/trace/Styles.ts +0 -1138
- package/lib/front_end/models/trace/extras/FilmStrip.ts +0 -78
- package/lib/front_end/models/trace/extras/MainThreadActivity.ts +0 -86
- package/lib/front_end/models/trace/extras/ScriptDuplication.ts +0 -236
- package/lib/front_end/models/trace/extras/StackTraceForEvent.ts +0 -203
- package/lib/front_end/models/trace/extras/ThirdParties.ts +0 -164
- package/lib/front_end/models/trace/extras/TraceFilter.ts +0 -62
- package/lib/front_end/models/trace/extras/TraceTree.ts +0 -701
- package/lib/front_end/models/trace/extras/extras.ts +0 -11
- package/lib/front_end/models/trace/handlers/AnimationFramesHandler.ts +0 -128
- package/lib/front_end/models/trace/handlers/AnimationHandler.ts +0 -36
- package/lib/front_end/models/trace/handlers/AsyncJSCallsHandler.ts +0 -239
- package/lib/front_end/models/trace/handlers/AuctionWorkletsHandler.ts +0 -183
- package/lib/front_end/models/trace/handlers/DOMStatsHandler.ts +0 -31
- package/lib/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +0 -306
- package/lib/front_end/models/trace/handlers/FlowsHandler.ts +0 -175
- package/lib/front_end/models/trace/handlers/FramesHandler.ts +0 -571
- package/lib/front_end/models/trace/handlers/GPUHandler.ts +0 -50
- package/lib/front_end/models/trace/handlers/ImagePaintingHandler.ts +0 -183
- package/lib/front_end/models/trace/handlers/InitiatorsHandler.ts +0 -193
- package/lib/front_end/models/trace/handlers/InvalidationsHandler.ts +0 -168
- package/lib/front_end/models/trace/handlers/LargestImagePaintHandler.ts +0 -109
- package/lib/front_end/models/trace/handlers/LargestTextPaintHandler.ts +0 -35
- package/lib/front_end/models/trace/handlers/LayerTreeHandler.ts +0 -123
- package/lib/front_end/models/trace/handlers/LayoutShiftsHandler.ts +0 -573
- package/lib/front_end/models/trace/handlers/MemoryHandler.ts +0 -31
- package/lib/front_end/models/trace/handlers/MetaHandler.ts +0 -525
- package/lib/front_end/models/trace/handlers/ModelHandlers.ts +0 -34
- package/lib/front_end/models/trace/handlers/NetworkRequestsHandler.ts +0 -672
- package/lib/front_end/models/trace/handlers/PageFramesHandler.ts +0 -52
- package/lib/front_end/models/trace/handlers/PageLoadMetricsHandler.ts +0 -460
- package/lib/front_end/models/trace/handlers/RendererHandler.ts +0 -428
- package/lib/front_end/models/trace/handlers/SamplesHandler.ts +0 -271
- package/lib/front_end/models/trace/handlers/ScreenshotsHandler.ts +0 -122
- package/lib/front_end/models/trace/handlers/ScriptsHandler.ts +0 -336
- package/lib/front_end/models/trace/handlers/SelectorStatsHandler.ts +0 -110
- package/lib/front_end/models/trace/handlers/Threads.ts +0 -139
- package/lib/front_end/models/trace/handlers/UserInteractionsHandler.ts +0 -400
- package/lib/front_end/models/trace/handlers/UserTimingsHandler.ts +0 -233
- package/lib/front_end/models/trace/handlers/WarningsHandler.ts +0 -162
- package/lib/front_end/models/trace/handlers/WorkersHandler.ts +0 -45
- package/lib/front_end/models/trace/handlers/handlers.ts +0 -8
- package/lib/front_end/models/trace/handlers/helpers.ts +0 -196
- package/lib/front_end/models/trace/handlers/types.ts +0 -75
- package/lib/front_end/models/trace/helpers/Extensions.ts +0 -54
- package/lib/front_end/models/trace/helpers/Network.ts +0 -129
- package/lib/front_end/models/trace/helpers/SamplesIntegrator.ts +0 -544
- package/lib/front_end/models/trace/helpers/SyntheticEvents.ts +0 -87
- package/lib/front_end/models/trace/helpers/Timing.ts +0 -248
- package/lib/front_end/models/trace/helpers/Trace.ts +0 -928
- package/lib/front_end/models/trace/helpers/TreeHelpers.ts +0 -320
- package/lib/front_end/models/trace/helpers/helpers.ts +0 -11
- package/lib/front_end/models/trace/insights/CLSCulprits.ts +0 -668
- package/lib/front_end/models/trace/insights/Cache.ts +0 -269
- package/lib/front_end/models/trace/insights/Common.ts +0 -453
- package/lib/front_end/models/trace/insights/DOMSize.ts +0 -223
- package/lib/front_end/models/trace/insights/DocumentLatency.ts +0 -319
- package/lib/front_end/models/trace/insights/DuplicatedJavaScript.ts +0 -126
- package/lib/front_end/models/trace/insights/FontDisplay.ts +0 -119
- package/lib/front_end/models/trace/insights/ForcedReflow.ts +0 -220
- package/lib/front_end/models/trace/insights/INPBreakdown.ts +0 -171
- package/lib/front_end/models/trace/insights/ImageDelivery.ts +0 -348
- package/lib/front_end/models/trace/insights/LCPBreakdown.ts +0 -268
- package/lib/front_end/models/trace/insights/LCPDiscovery.ts +0 -237
- package/lib/front_end/models/trace/insights/LegacyJavaScript.ts +0 -138
- package/lib/front_end/models/trace/insights/Models.ts +0 -22
- package/lib/front_end/models/trace/insights/ModernHTTP.ts +0 -257
- package/lib/front_end/models/trace/insights/NetworkDependencyTree.ts +0 -726
- package/lib/front_end/models/trace/insights/RenderBlocking.ts +0 -257
- package/lib/front_end/models/trace/insights/SlowCSSSelector.ts +0 -175
- package/lib/front_end/models/trace/insights/Statistics.ts +0 -101
- package/lib/front_end/models/trace/insights/ThirdParties.ts +0 -130
- package/lib/front_end/models/trace/insights/Viewport.ts +0 -138
- package/lib/front_end/models/trace/insights/insights.ts +0 -10
- package/lib/front_end/models/trace/insights/types.ts +0 -157
- package/lib/front_end/models/trace/lantern/core/LanternError.ts +0 -7
- package/lib/front_end/models/trace/lantern/core/NetworkAnalyzer.ts +0 -619
- package/lib/front_end/models/trace/lantern/core/core.ts +0 -6
- package/lib/front_end/models/trace/lantern/graph/BaseNode.ts +0 -345
- package/lib/front_end/models/trace/lantern/graph/CPUNode.ts +0 -80
- package/lib/front_end/models/trace/lantern/graph/NetworkNode.ts +0 -101
- package/lib/front_end/models/trace/lantern/graph/PageDependencyGraph.ts +0 -636
- package/lib/front_end/models/trace/lantern/graph/graph.ts +0 -8
- package/lib/front_end/models/trace/lantern/lantern.ts +0 -17
- package/lib/front_end/models/trace/lantern/metrics/FirstContentfulPaint.ts +0 -187
- package/lib/front_end/models/trace/lantern/metrics/Interactive.ts +0 -88
- package/lib/front_end/models/trace/lantern/metrics/LargestContentfulPaint.ts +0 -92
- package/lib/front_end/models/trace/lantern/metrics/MaxPotentialFID.ts +0 -72
- package/lib/front_end/models/trace/lantern/metrics/Metric.ts +0 -126
- package/lib/front_end/models/trace/lantern/metrics/SpeedIndex.ts +0 -126
- package/lib/front_end/models/trace/lantern/metrics/TBTUtils.ts +0 -82
- package/lib/front_end/models/trace/lantern/metrics/TotalBlockingTime.ts +0 -112
- package/lib/front_end/models/trace/lantern/metrics/metrics.ts +0 -12
- package/lib/front_end/models/trace/lantern/simulation/ConnectionPool.ts +0 -150
- package/lib/front_end/models/trace/lantern/simulation/Constants.ts +0 -46
- package/lib/front_end/models/trace/lantern/simulation/DNSCache.ts +0 -61
- package/lib/front_end/models/trace/lantern/simulation/SimulationTimingMap.ts +0 -196
- package/lib/front_end/models/trace/lantern/simulation/Simulator.ts +0 -556
- package/lib/front_end/models/trace/lantern/simulation/TCPConnection.ts +0 -192
- package/lib/front_end/models/trace/lantern/simulation/simulation.ts +0 -10
- package/lib/front_end/models/trace/lantern/types/Lantern.ts +0 -220
- package/lib/front_end/models/trace/lantern/types/types.ts +0 -5
- package/lib/front_end/models/trace/trace.ts +0 -33
- package/lib/front_end/models/trace/types/Configuration.ts +0 -110
- package/lib/front_end/models/trace/types/Extensions.ts +0 -136
- package/lib/front_end/models/trace/types/File.ts +0 -281
- package/lib/front_end/models/trace/types/Overlays.ts +0 -138
- package/lib/front_end/models/trace/types/Timing.ts +0 -30
- package/lib/front_end/models/trace/types/TraceEvents.ts +0 -3277
- package/lib/front_end/models/trace/types/types.ts +0 -10
- package/lib/front_end/models/trace_source_maps_resolver/SourceMapsResolver.ts +0 -240
- package/lib/front_end/models/trace_source_maps_resolver/trace_source_maps_resolver.ts +0 -5
- package/lib/front_end/models/workspace/FileManager.ts +0 -97
- package/lib/front_end/models/workspace/IgnoreListManager.ts +0 -628
- package/lib/front_end/models/workspace/SearchConfig.ts +0 -149
- package/lib/front_end/models/workspace/UISourceCode.ts +0 -698
- package/lib/front_end/models/workspace/WorkspaceImpl.ts +0 -339
- package/lib/front_end/models/workspace/workspace.ts +0 -17
- package/lib/front_end/panels/timeline/TimelineUIUtils.ts +0 -1029
- package/lib/front_end/panels/timeline/extensions/ExtensionUI.ts +0 -49
- package/lib/front_end/panels/timeline/extensions/extensions.ts +0 -9
- package/lib/front_end/third_party/codemirror.next/LICENSE +0 -21
- package/lib/front_end/third_party/codemirror.next/README.chromium +0 -30
- package/lib/front_end/third_party/codemirror.next/bundle-tsconfig.json +0 -24
- package/lib/front_end/third_party/codemirror.next/bundle.ts +0 -135
- package/lib/front_end/third_party/codemirror.next/chunk/angular.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/angular.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/codemirror.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/codemirror.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/cpp.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/cpp.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/css.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/html.js +0 -4
- package/lib/front_end/third_party/codemirror.next/chunk/java.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/java.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/javascript.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/legacy.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/legacy.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/less.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/less.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/markdown.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/markdown.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/php.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/php.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/python.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/python.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/sass.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/sass.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/svelte.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/svelte.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/vue.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/vue.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/wast.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/wast.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/chunk/xml.js +0 -2
- package/lib/front_end/third_party/codemirror.next/chunk/xml.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/codemirror.next.d.ts +0 -8057
- package/lib/front_end/third_party/codemirror.next/codemirror.next.js +0 -2
- package/lib/front_end/third_party/codemirror.next/codemirror.next.js.map +0 -1
- package/lib/front_end/third_party/codemirror.next/package.json +0 -43
- package/lib/front_end/third_party/codemirror.next/rebuild.sh +0 -6
- package/lib/front_end/third_party/codemirror.next/rollup.config.mjs +0 -49
- package/lib/front_end/third_party/i18n/LICENSE +0 -202
- package/lib/front_end/third_party/i18n/README.chromium +0 -15
- package/lib/front_end/third_party/i18n/i18n-impl.ts +0 -61
- package/lib/front_end/third_party/i18n/i18n.ts +0 -11
- package/lib/front_end/third_party/i18n/localized-string-set.ts +0 -129
- package/lib/front_end/third_party/intl-messageformat/LICENSE +0 -33
- package/lib/front_end/third_party/intl-messageformat/README.chromium +0 -24
- package/lib/front_end/third_party/intl-messageformat/intl-messageformat-tsconfig.json +0 -16
- package/lib/front_end/third_party/intl-messageformat/intl-messageformat.ts +0 -6
- package/lib/front_end/third_party/intl-messageformat/package/LICENSE.md +0 -33
- package/lib/front_end/third_party/intl-messageformat/package/README.md +0 -3
- package/lib/front_end/third_party/intl-messageformat/package/index.d.ts +0 -6
- package/lib/front_end/third_party/intl-messageformat/package/index.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/index.js +0 -13
- package/lib/front_end/third_party/intl-messageformat/package/intl-messageformat.esm.d.ts +0 -5
- package/lib/front_end/third_party/intl-messageformat/package/intl-messageformat.esm.js +0 -1710
- package/lib/front_end/third_party/intl-messageformat/package/intl-messageformat.iife.js +0 -1815
- package/lib/front_end/third_party/intl-messageformat/package/lib/index.d.ts +0 -6
- package/lib/front_end/third_party/intl-messageformat/package/lib/index.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/lib/index.js +0 -10
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/core.d.ts +0 -34
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/core.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/core.js +0 -229
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/error.d.ts +0 -28
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/error.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/error.js +0 -48
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/formatters.d.ts +0 -34
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/formatters.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/lib/src/formatters.js +0 -179
- package/lib/front_end/third_party/intl-messageformat/package/package.json +0 -42
- package/lib/front_end/third_party/intl-messageformat/package/src/core.d.ts +0 -34
- package/lib/front_end/third_party/intl-messageformat/package/src/core.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/src/core.js +0 -230
- package/lib/front_end/third_party/intl-messageformat/package/src/error.d.ts +0 -28
- package/lib/front_end/third_party/intl-messageformat/package/src/error.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/src/error.js +0 -51
- package/lib/front_end/third_party/intl-messageformat/package/src/formatters.d.ts +0 -34
- package/lib/front_end/third_party/intl-messageformat/package/src/formatters.d.ts.map +0 -1
- package/lib/front_end/third_party/intl-messageformat/package/src/formatters.js +0 -182
- package/lib/front_end/third_party/intl-messageformat/package/src/icu-messageformat-parser/error.d.ts +0 -79
- package/lib/front_end/third_party/intl-messageformat/package/src/icu-messageformat-parser/index.d.ts +0 -15
- package/lib/front_end/third_party/intl-messageformat/package/src/icu-messageformat-parser/parser.d.ts +0 -153
- package/lib/front_end/third_party/intl-messageformat/package/src/icu-messageformat-parser/types.d.ts +0 -139
- package/lib/front_end/third_party/legacy-javascript/LICENSE +0 -202
- package/lib/front_end/third_party/legacy-javascript/README.chromium +0 -13
- package/lib/front_end/third_party/legacy-javascript/legacy-javascript-tsconfig.json +0 -8
- package/lib/front_end/third_party/legacy-javascript/legacy-javascript.ts +0 -3
- package/lib/front_end/third_party/legacy-javascript/lib/legacy-javascript.d.ts +0 -18
- package/lib/front_end/third_party/legacy-javascript/lib/legacy-javascript.js +0 -943
- package/lib/front_end/third_party/legacy-javascript/package.json +0 -8
- package/lib/front_end/third_party/legacy-javascript/rebuild.sh +0 -9
- package/lib/front_end/third_party/source-map-scopes-codec/LICENSE +0 -26
- package/lib/front_end/third_party/source-map-scopes-codec/README.chromium +0 -31
- package/lib/front_end/third_party/source-map-scopes-codec/package/CONTRIBUTING.md +0 -33
- package/lib/front_end/third_party/source-map-scopes-codec/package/LICENSE +0 -26
- package/lib/front_end/third_party/source-map-scopes-codec/package/README.md +0 -64
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/builder/builder.d.ts +0 -62
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/builder/builder.d.ts.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/builder/safe_builder.d.ts +0 -37
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/builder/safe_builder.d.ts.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/decode/decode.d.ts +0 -29
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/decode/decode.d.ts.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/encode/encode.d.ts +0 -8
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/encode/encode.d.ts.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/mod.d.ts +0 -6
- package/lib/front_end/third_party/source-map-scopes-codec/package/_dist/src/mod.d.ts.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/deno.json +0 -21
- package/lib/front_end/third_party/source-map-scopes-codec/package/package.json +0 -14
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.js +0 -196
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/builder.ts +0 -262
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.js +0 -235
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/builder/safe_builder.ts +0 -359
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/codec.js +0 -39
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/codec.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/codec.ts +0 -53
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.js +0 -438
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/decode/decode.ts +0 -539
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.js +0 -23
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encode.ts +0 -35
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.js +0 -257
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/encode/encoder.ts +0 -348
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/mod.js +0 -8
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/mod.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/mod.ts +0 -20
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/scopes-tsconfig.json +0 -8
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/scopes.d.ts +0 -184
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/util.js +0 -9
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/util.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/util.ts +0 -12
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/vlq.js +0 -82
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/vlq.js.map +0 -1
- package/lib/front_end/third_party/source-map-scopes-codec/package/src/vlq.ts +0 -99
- package/lib/front_end/third_party/source-map-scopes-codec/source-map-scopes-codec.ts +0 -5
- package/lib/front_end/third_party/third-party-web/LICENSE +0 -20
- package/lib/front_end/third_party/third-party-web/README.chromium +0 -13
- package/lib/front_end/third_party/third-party-web/lib/nostats-subset.d.ts +0 -2
- package/lib/front_end/third_party/third-party-web/lib/nostats-subset.js +0 -149
- package/lib/front_end/third_party/third-party-web/package/LICENSE +0 -20
- package/lib/front_end/third_party/third-party-web/package/README.md +0 -929
- package/lib/front_end/third_party/third-party-web/package/dist/entities-httparchive-nostats.json +0 -1
- package/lib/front_end/third_party/third-party-web/package/dist/entities-httparchive.json +0 -1
- package/lib/front_end/third_party/third-party-web/package/dist/entities-nostats.json +0 -1
- package/lib/front_end/third_party/third-party-web/package/dist/entities.json +0 -1
- package/lib/front_end/third_party/third-party-web/package/facades.md +0 -46
- package/lib/front_end/third_party/third-party-web/package/httparchive-nostats-subset.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/httparchive-nostats-subset.js +0 -1
- package/lib/front_end/third_party/third-party-web/package/httparchive-subset.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/httparchive-subset.js +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/__snapshots__/index.test.js.snap +0 -1006
- package/lib/front_end/third_party/third-party-web/package/lib/create-entity-finder-api.js +0 -139
- package/lib/front_end/third_party/third-party-web/package/lib/create-entity-finder-api.test.js +0 -44
- package/lib/front_end/third_party/third-party-web/package/lib/entities.test.js +0 -27
- package/lib/front_end/third_party/third-party-web/package/lib/index.d.ts +0 -34
- package/lib/front_end/third_party/third-party-web/package/lib/index.js +0 -3
- package/lib/front_end/third_party/third-party-web/package/lib/index.test.js +0 -246
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/faqs.partial.md +0 -36
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/goals.partial.md +0 -9
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/methodology.partial.md +0 -5
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/template.md +0 -151
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-02-01.md +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-03-01.md +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-05-06.md +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-05-13.md +0 -14
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2021-01-01.md +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2024-07-01.md +0 -3
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/httparchive-nostats.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/httparchive-nostats.js +0 -3
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/httparchive.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/httparchive.js +0 -3
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/nostats.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/lib/subsets/nostats.js +0 -3
- package/lib/front_end/third_party/third-party-web/package/nostats-subset.d.ts +0 -1
- package/lib/front_end/third_party/third-party-web/package/nostats-subset.js +0 -1
- package/lib/front_end/third_party/third-party-web/package/package.json +0 -46
- package/lib/front_end/third_party/third-party-web/package.json +0 -8
- package/lib/front_end/third_party/third-party-web/rebuild.sh +0 -13
- package/lib/front_end/third_party/third-party-web/third-party-web-tsconfig.json +0 -8
- package/lib/front_end/third_party/third-party-web/third-party-web.ts +0 -3
- package/lib/front_end/ui/legacy/theme_support/ThemeSupport.ts +0 -222
- package/lib/front_end/ui/legacy/theme_support/theme_support.ts +0 -5
- package/patches/chrome-devtools-frontend+1.0.1533544.patch +0 -1716
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
# [Third Party Web](https://www.thirdpartyweb.today/)
|
|
2
|
-
|
|
3
|
-
## Check out the shiny new web UI https://www.thirdpartyweb.today/
|
|
4
|
-
|
|
5
|
-
Data on third party entities and their impact on the web.
|
|
6
|
-
|
|
7
|
-
This document is a summary of which third party scripts are most responsible for excessive JavaScript execution on the web today.
|
|
8
|
-
|
|
9
|
-
## Table of Contents
|
|
10
|
-
|
|
11
|
-
1. [Goals](#goals)
|
|
12
|
-
1. [Methodology](#methodology)
|
|
13
|
-
1. [npm Module](#npm-module)
|
|
14
|
-
1. [Updates](#updates)
|
|
15
|
-
1. [Data](#data)
|
|
16
|
-
1. [Summary](#summary)
|
|
17
|
-
1. [How to Interpret](#how-to-interpret)
|
|
18
|
-
1. [Third Parties by Category](#by-category)
|
|
19
|
-
<%= category_table_of_contents %>
|
|
20
|
-
1. [Third Parties by Total Impact](#by-total-impact)
|
|
21
|
-
1. [Future Work](#future-work)
|
|
22
|
-
1. [FAQs](#faqs)
|
|
23
|
-
1. [Contributing](#contributing)
|
|
24
|
-
|
|
25
|
-
## Goals
|
|
26
|
-
|
|
27
|
-
<%= partials.goals %>
|
|
28
|
-
|
|
29
|
-
## Methodology
|
|
30
|
-
|
|
31
|
-
<%= partials.methodology %>
|
|
32
|
-
|
|
33
|
-
## npm Module
|
|
34
|
-
|
|
35
|
-
The entity classification data is available as an npm module.
|
|
36
|
-
|
|
37
|
-
```js
|
|
38
|
-
const {getEntity} = require('third-party-web')
|
|
39
|
-
const entity = getEntity('https://d36mpcpuzc4ztk.cloudfront.net/js/visitor.js')
|
|
40
|
-
console.log(entity)
|
|
41
|
-
// {
|
|
42
|
-
// "name": "Freshdesk",
|
|
43
|
-
// "homepage": "https://freshdesk.com/",
|
|
44
|
-
// "category": "customer-success",
|
|
45
|
-
// "domains": ["d36mpcpuzc4ztk.cloudfront.net"]
|
|
46
|
-
// }
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Updates
|
|
50
|
-
|
|
51
|
-
<%= updates_contents %>
|
|
52
|
-
|
|
53
|
-
## Data
|
|
54
|
-
|
|
55
|
-
### Summary
|
|
56
|
-
|
|
57
|
-
Across top ~4 million sites, ~2700 origins account for ~57% of all script execution time with the top 50 entities already accounting for ~47%. Third party script execution is the majority chunk of the web today, and it's important to make informed choices.
|
|
58
|
-
|
|
59
|
-
### How to Interpret
|
|
60
|
-
|
|
61
|
-
Each entity has a number of data points available.
|
|
62
|
-
|
|
63
|
-
1. **Usage (Total Number of Occurrences)** - how many scripts from their origins were included on pages
|
|
64
|
-
1. **Total Impact (Total Execution Time)** - how many seconds were spent executing their scripts across the web
|
|
65
|
-
1. **Average Impact (Average Execution Time)** - on average, how many milliseconds were spent executing each script
|
|
66
|
-
1. **Category** - what type of script is this
|
|
67
|
-
|
|
68
|
-
<a name="by-category"></a>
|
|
69
|
-
|
|
70
|
-
### Third Parties by Category
|
|
71
|
-
|
|
72
|
-
This section breaks down third parties by category. The third parties in each category are ranked from first to last based on the average impact of their scripts. Perhaps the most important comparisons lie here. You always need to pick an analytics provider, but at least you can pick the most well-behaved analytics provider.
|
|
73
|
-
|
|
74
|
-
#### Overall Breakdown
|
|
75
|
-
|
|
76
|
-
Unsurprisingly, ads account for the largest identifiable chunk of third party script execution.
|
|
77
|
-
|
|
78
|
-

|
|
79
|
-
|
|
80
|
-
<%= category_contents %>
|
|
81
|
-
|
|
82
|
-
<a name="by-total-impact"></a>
|
|
83
|
-
|
|
84
|
-
### Third Parties by Total Impact
|
|
85
|
-
|
|
86
|
-
This section highlights the entities responsible for the most script execution across the web. This helps inform which improvements would have the largest total impact.
|
|
87
|
-
|
|
88
|
-
<%= all_data %>
|
|
89
|
-
|
|
90
|
-
## Future Work
|
|
91
|
-
|
|
92
|
-
1. Introduce URL-level data for more fine-grained analysis, i.e. which libraries from Cloudflare/Google CDNs are most expensive.
|
|
93
|
-
1. Expand the scope, i.e. include more third parties and have greater entity/category coverage.
|
|
94
|
-
|
|
95
|
-
## FAQs
|
|
96
|
-
|
|
97
|
-
<%= partials.faqs %>
|
|
98
|
-
|
|
99
|
-
## Contributing
|
|
100
|
-
|
|
101
|
-
### Thanks
|
|
102
|
-
|
|
103
|
-
A **huge** thanks to [@simonhearne](https://twitter.com/simonhearne) and [@soulgalore](https://twitter.com/soulislove) for their assistance in classifying additional domains!
|
|
104
|
-
|
|
105
|
-
### Updating the Entities
|
|
106
|
-
|
|
107
|
-
The domain->entity mapping can be found in `data/entities.js`. Adding a new entity is as simple as adding a new array item with the following form.
|
|
108
|
-
|
|
109
|
-
```js
|
|
110
|
-
{
|
|
111
|
-
"name": "Facebook",
|
|
112
|
-
"homepage": "https://www.facebook.com",
|
|
113
|
-
"category": "social",
|
|
114
|
-
"domains": [
|
|
115
|
-
"*.facebook.com",
|
|
116
|
-
"*.fbcdn.net"
|
|
117
|
-
],
|
|
118
|
-
"examples": [
|
|
119
|
-
"www.facebook.com",
|
|
120
|
-
"connect.facebook.net",
|
|
121
|
-
"staticxx.facebook.com",
|
|
122
|
-
"static.xx.fbcdn.net",
|
|
123
|
-
"m.facebook.com"
|
|
124
|
-
]
|
|
125
|
-
}
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
### Updating Attribution Logic
|
|
129
|
-
|
|
130
|
-
The logic for attribution to individual script URLs can be found in the [Lighthouse repo](https://github.com/GoogleChrome/lighthouse). File an issue over there to discuss further.
|
|
131
|
-
|
|
132
|
-
### Updating the Data
|
|
133
|
-
|
|
134
|
-
This is now automated! Run `yarn start:update-ha-data` with a `gcp-credentials.json` file in the root directory of this project (look at `bin/automated-update.js` for the steps involved).
|
|
135
|
-
|
|
136
|
-
### Updating this README
|
|
137
|
-
|
|
138
|
-
This README is auto-generated from the templates `lib/` and the computed data. In order to update the charts, you'll need to make sure you have `cairo` installed locally in addition to `yarn install`.
|
|
139
|
-
|
|
140
|
-
```bash
|
|
141
|
-
# Install `cairo` and dependencies for node-canvas
|
|
142
|
-
brew install pkg-config cairo pango libpng jpeg giflib
|
|
143
|
-
# Build the requirements in this repo
|
|
144
|
-
yarn build
|
|
145
|
-
# Regenerate the README
|
|
146
|
-
yarn start
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
### Updating the website
|
|
150
|
-
|
|
151
|
-
The web code is located in `www/` directory of this repository. Open a PR to make changes.
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-02-01.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Huge props to [WordAds](https://wordads.co/) for reducing their impact from ~2.5s to ~200ms on average! A few entities are showing considerably less data this cycle (Media Math, Crazy Egg, DoubleVerify, Bootstrap CDN). Perhaps they've added new CDNs/hostnames that we haven't identified or the basket of sites in HTTPArchive has shifted away from their usage.
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-03-01.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Almost 2,000 entities tracked now across ~3,000+ domains! Huge props to [@simonhearne](https://twitter.com/simonhearne) for making this massive increase possible. Tag Managers have now been split out into their own category since they represented such a large percentage of the "Mixed / Other" category.
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-05-06.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Google Ads clarified that `www.googletagservices.com` serves more ad scripts than generic tag management, and it has been reclassified accordingly. This has dropped the overall Tag Management share considerably back down to its earlier position.
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2019-05-13.md
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
A shortcoming of the attribution approach has been fixed. Total usage is now reported based on the number of _pages_ in the dataset that use the third-party, not the number of _scripts_. Correspondingly, all average impact times are now reported _per page_ rather than _per script_. Previously, a third party could appear to have a lower impact or be more popular simply by splitting their work across multiple files.
|
|
2
|
-
|
|
3
|
-
Third-parties that performed most of their work from a single script should see little to no impact from this change, but some entities have seen significant ranking movement. Hosting providers that host entire pages are, understandably, the most affected.
|
|
4
|
-
|
|
5
|
-
Some notable changes below:
|
|
6
|
-
|
|
7
|
-
| Third-Party | Previously (per-script) | Now (per-page) |
|
|
8
|
-
| ----------- | ----------------------- | -------------- |
|
|
9
|
-
| Beeketing | 137 ms | 465 ms |
|
|
10
|
-
| Sumo | 263 ms | 798 ms |
|
|
11
|
-
| Tumblr | 324 ms | 1499 ms |
|
|
12
|
-
| Yandex APIs | 393 ms | 1231 ms |
|
|
13
|
-
| Google Ads | 402 ms | 1285 ms |
|
|
14
|
-
| Wix | 972 ms | 5393 ms |
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2021-01-01.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Due to a change in HTTPArchive measurement which temporarily disabled site-isolation (out-of-process iframes), all of the third-parties whose work previously took place off the main-thread are now counted _on_ the main thread (and thus appear in our stats). This is most evident in the change to Google-owned properties such as YouTube and Doubleclick whose _complete_ cost are now captured.
|
package/lib/front_end/third_party/third-party-web/package/lib/markdown/updates/2024-07-01.md
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
Some third parties use a dynamic subdomain to serve its main script on websites (e.g .domain.com). Some of these subdomain scripts are saved under observed-domains JSON file as results of the `sql/all-observed-domains-query.sql` query but analyzing http archive database we found a lot that are ignored because of number of occurrences (less than 50 ).
|
|
2
|
-
|
|
3
|
-
So, we've created a new query to keep observed domains with occurrence below 50 only if its mapped entity (based on entity.js) has a total occurrence (of all its declared domain) greater than 50.
|
package/lib/front_end/third_party/third-party-web/package/lib/subsets/httparchive-nostats.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '../index'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '../index'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from '../index'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './lib/subsets/nostats.js'
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("./lib/subsets/nostats.js")
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "third-party-web",
|
|
3
|
-
"version": "0.26.2",
|
|
4
|
-
"description": "Categorized data on third party entities on the web.",
|
|
5
|
-
"main": "./lib/index.js",
|
|
6
|
-
"scripts": {
|
|
7
|
-
"build:www": "cd www/ && npm install && npm run build",
|
|
8
|
-
"build": "node bin/convert-entities-db.js && node bin/generate-canonical-domain-csv.js && node bin/build-entity-json-files.js && node bin/generate-sql.js && generate-export-aliases",
|
|
9
|
-
"lint:fix": "prettier --print-width=100 --write '**/*.js'",
|
|
10
|
-
"start": "mkdir -p .tmp && node bin/merge-origins-with-entities.js && node bin/create-markdown.js",
|
|
11
|
-
"start:update-ha-data": "node ./bin/automated-update.js",
|
|
12
|
-
"test": "yarn build && yarn test:unit",
|
|
13
|
-
"test:unit": "jest 'lib/*'",
|
|
14
|
-
"semantic-release": "semantic-release"
|
|
15
|
-
},
|
|
16
|
-
"keywords": [
|
|
17
|
-
"third-party",
|
|
18
|
-
"third-parties"
|
|
19
|
-
],
|
|
20
|
-
"author": "Patrick Hulce <patrick.hulce@gmail.com>",
|
|
21
|
-
"repository": {
|
|
22
|
-
"type": "git",
|
|
23
|
-
"url": "https://github.com/patrickhulce/third-party-web.git"
|
|
24
|
-
},
|
|
25
|
-
"license": "MIT",
|
|
26
|
-
"devDependencies": {
|
|
27
|
-
"@google-cloud/bigquery": "^7.9.0",
|
|
28
|
-
"chart.js": "^2.9.4",
|
|
29
|
-
"chartjs-node-canvas": "^3.2.0",
|
|
30
|
-
"colors": "^1.4.0",
|
|
31
|
-
"generate-export-aliases": "^1.1.0",
|
|
32
|
-
"jest": "^24.9.0",
|
|
33
|
-
"lodash": "^4.17.15",
|
|
34
|
-
"prettier": "^1.18.2",
|
|
35
|
-
"prompts": "^2.4.2",
|
|
36
|
-
"semantic-release": "^24.2.0"
|
|
37
|
-
},
|
|
38
|
-
"config": {
|
|
39
|
-
"exportAliases": {
|
|
40
|
-
"nostats-subset": "./lib/subsets/nostats.js",
|
|
41
|
-
"httparchive-nostats-subset": "./lib/subsets/httparchive-nostats.js",
|
|
42
|
-
"httparchive-subset": "./lib/subsets/httparchive.js"
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
"packageManager": "yarn@4.1.1"
|
|
46
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
|
2
|
-
cd "$SCRIPT_DIR"
|
|
3
|
-
|
|
4
|
-
npm install
|
|
5
|
-
|
|
6
|
-
rm -rf package
|
|
7
|
-
cp -r node_modules/third-party-web package
|
|
8
|
-
rm -fr package/.* package/www-v2 package/dist/domain-map.csv
|
|
9
|
-
|
|
10
|
-
../../../third_party/esbuild/esbuild --bundle package/nostats-subset.js --format=esm --outdir=lib
|
|
11
|
-
rm -rf node_modules
|
|
12
|
-
# Because there's a bug in clang causing it to reformat import lists even where formatting is disabled, run it right away
|
|
13
|
-
git cl format --js
|
|
@@ -1,222 +0,0 @@
|
|
|
1
|
-
// Copyright 2021 The Chromium Authors
|
|
2
|
-
// Use of this source code is governed by a BSD-style license that can be
|
|
3
|
-
// found in the LICENSE file.
|
|
4
|
-
/* eslint-disable @devtools/no-imperative-dom-api */
|
|
5
|
-
|
|
6
|
-
/*
|
|
7
|
-
* Copyright (C) 2011 Google Inc. All rights reserved.
|
|
8
|
-
* Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
|
|
9
|
-
* Copyright (C) 2007 Matt Lilek (pewtermoose@gmail.com).
|
|
10
|
-
* Copyright (C) 2009 Joseph Pecoraro
|
|
11
|
-
*
|
|
12
|
-
* Redistribution and use in source and binary forms, with or without
|
|
13
|
-
* modification, are permitted provided that the following conditions
|
|
14
|
-
* are met:
|
|
15
|
-
*
|
|
16
|
-
* 1. Redistributions of source code must retain the above copyright
|
|
17
|
-
* notice, this list of conditions and the following disclaimer.
|
|
18
|
-
* 2. Redistributions in binary form must reproduce the above copyright
|
|
19
|
-
* notice, this list of conditions and the following disclaimer in the
|
|
20
|
-
* documentation and/or other materials provided with the distribution.
|
|
21
|
-
* 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
|
|
22
|
-
* its contributors may be used to endorse or promote products derived
|
|
23
|
-
* from this software without specific prior written permission.
|
|
24
|
-
*
|
|
25
|
-
* THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
|
|
26
|
-
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
27
|
-
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
28
|
-
* DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
|
|
29
|
-
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
30
|
-
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
31
|
-
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
32
|
-
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
33
|
-
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
34
|
-
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
35
|
-
*/
|
|
36
|
-
|
|
37
|
-
import * as Common from '../../../core/common/common.js';
|
|
38
|
-
import * as Host from '../../../core/host/host.js';
|
|
39
|
-
import * as Root from '../../../core/root/root.js';
|
|
40
|
-
|
|
41
|
-
let themeSupportInstance: ThemeSupport;
|
|
42
|
-
|
|
43
|
-
const themeValueByTargetByName = new Map<Element|null, Map<string, string>>();
|
|
44
|
-
|
|
45
|
-
export class ThemeSupport extends EventTarget {
|
|
46
|
-
#themeName = 'default';
|
|
47
|
-
private computedStyleOfHTML = Common.Lazy.lazy(() => window.getComputedStyle(document.documentElement));
|
|
48
|
-
|
|
49
|
-
readonly #documentsToTheme = new Set<Document>([document]);
|
|
50
|
-
|
|
51
|
-
readonly #darkThemeMediaQuery: MediaQueryList;
|
|
52
|
-
readonly #highContrastMediaQuery: MediaQueryList;
|
|
53
|
-
readonly #onThemeChangeListener = (): void => this.#applyTheme();
|
|
54
|
-
readonly #onHostThemeChangeListener = (): void => this.fetchColorsAndApplyHostTheme();
|
|
55
|
-
|
|
56
|
-
private constructor(private setting: Common.Settings.Setting<string>) {
|
|
57
|
-
super();
|
|
58
|
-
|
|
59
|
-
// When the theme changes we instantiate a new theme support and reapply.
|
|
60
|
-
// Equally if the user has set to match the system and the OS preference changes
|
|
61
|
-
// we perform the same change.
|
|
62
|
-
this.#darkThemeMediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
|
|
63
|
-
this.#highContrastMediaQuery = window.matchMedia('(forced-colors: active)');
|
|
64
|
-
this.#darkThemeMediaQuery.addEventListener('change', this.#onThemeChangeListener);
|
|
65
|
-
this.#highContrastMediaQuery.addEventListener('change', this.#onThemeChangeListener);
|
|
66
|
-
setting.addChangeListener(this.#onThemeChangeListener);
|
|
67
|
-
Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(
|
|
68
|
-
Host.InspectorFrontendHostAPI.Events.ColorThemeChanged, this.#onHostThemeChangeListener);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
#dispose(): void {
|
|
72
|
-
this.#darkThemeMediaQuery.removeEventListener('change', this.#onThemeChangeListener);
|
|
73
|
-
this.#highContrastMediaQuery.removeEventListener('change', this.#onThemeChangeListener);
|
|
74
|
-
this.setting.removeChangeListener(this.#onThemeChangeListener);
|
|
75
|
-
Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.removeEventListener(
|
|
76
|
-
Host.InspectorFrontendHostAPI.Events.ColorThemeChanged, this.#onHostThemeChangeListener);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
static hasInstance(): boolean {
|
|
80
|
-
return typeof themeSupportInstance !== 'undefined';
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
static instance(opts: {
|
|
84
|
-
forceNew: boolean|null,
|
|
85
|
-
setting: Common.Settings.Setting<string>|null,
|
|
86
|
-
} = {forceNew: null, setting: null}): ThemeSupport {
|
|
87
|
-
const {forceNew, setting} = opts;
|
|
88
|
-
if (!themeSupportInstance || forceNew) {
|
|
89
|
-
if (!setting) {
|
|
90
|
-
throw new Error(`Unable to create theme support: setting must be provided: ${new Error().stack}`);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
if (themeSupportInstance) {
|
|
94
|
-
themeSupportInstance.#dispose();
|
|
95
|
-
}
|
|
96
|
-
themeSupportInstance = new ThemeSupport(setting);
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
return themeSupportInstance;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Adds additional `Document` instances that should be themed besides the default
|
|
104
|
-
* `window.document` in which this ThemeSupport instance was created.
|
|
105
|
-
*/
|
|
106
|
-
addDocumentToTheme(document: Document): void {
|
|
107
|
-
this.#documentsToTheme.add(document);
|
|
108
|
-
this.#fetchColorsAndApplyHostTheme(document);
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
getComputedValue(propertyName: string, target: Element|null = null): string {
|
|
112
|
-
// Since we might query the same property name from various targets we need to support
|
|
113
|
-
// per-target caching of computed values. Here we attempt to locate the particular computed
|
|
114
|
-
// value cache for the target element. If no target was specified we use the default computed root,
|
|
115
|
-
// which belongs to the documentElement.
|
|
116
|
-
let themeValueByName = themeValueByTargetByName.get(target);
|
|
117
|
-
if (!themeValueByName) {
|
|
118
|
-
themeValueByName = new Map<string, string>();
|
|
119
|
-
themeValueByTargetByName.set(target, themeValueByName);
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
// Since theme changes trigger a reload, we can avoid repeatedly looking up color values
|
|
123
|
-
// dynamically. Instead we can look up the first time and cache them for future use,
|
|
124
|
-
// knowing that the cache will be invalidated by virtue of a reload when the theme changes.
|
|
125
|
-
let themeValue = themeValueByName.get(propertyName);
|
|
126
|
-
if (!themeValue) {
|
|
127
|
-
const styleDeclaration = target ? window.getComputedStyle(target) : this.computedStyleOfHTML();
|
|
128
|
-
if (typeof styleDeclaration === 'symbol') {
|
|
129
|
-
throw new Error(`Computed value for property (${propertyName}) could not be found on documentElement.`);
|
|
130
|
-
}
|
|
131
|
-
themeValue = styleDeclaration.getPropertyValue(propertyName).trim();
|
|
132
|
-
|
|
133
|
-
// If we receive back an empty value (nothing has been set) we don't store it for the future.
|
|
134
|
-
// This means that subsequent requests will continue to query the styles in case the value
|
|
135
|
-
// has been set.
|
|
136
|
-
if (themeValue) {
|
|
137
|
-
themeValueByName.set(propertyName, themeValue);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
return themeValue;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
themeName(): string {
|
|
145
|
-
return this.#themeName;
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
#applyTheme(): void {
|
|
149
|
-
for (const document of this.#documentsToTheme) {
|
|
150
|
-
this.#applyThemeToDocument(document);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
#applyThemeToDocument(document: Document): void {
|
|
155
|
-
const isForcedColorsMode = window.matchMedia('(forced-colors: active)').matches;
|
|
156
|
-
const systemPreferredTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'default';
|
|
157
|
-
|
|
158
|
-
const useSystemPreferred = this.setting.get() === 'systemPreferred' || isForcedColorsMode;
|
|
159
|
-
this.#themeName = useSystemPreferred ? systemPreferredTheme : this.setting.get();
|
|
160
|
-
document.documentElement.classList.toggle('theme-with-dark-background', this.#themeName === 'dark');
|
|
161
|
-
|
|
162
|
-
const useChromeTheme = Common.Settings.moduleSetting('chrome-theme-colors').get();
|
|
163
|
-
const isIncognito = Root.Runtime.hostConfig.isOffTheRecord === true;
|
|
164
|
-
// Baseline is the name of Chrome's default color theme and there are two of these: default and grayscale.
|
|
165
|
-
// The collective name for the rest of the color themes is dynamic.
|
|
166
|
-
// In the baseline themes Chrome uses custom values for surface colors, whereas for dynamic themes these are color-mixed.
|
|
167
|
-
// To match Chrome we need to know if any of the baseline themes is currently active and assign specific values to surface colors.
|
|
168
|
-
if (isIncognito) {
|
|
169
|
-
document.documentElement.classList.toggle('baseline-grayscale', true);
|
|
170
|
-
} else if (useChromeTheme) {
|
|
171
|
-
const selectedTheme = getComputedStyle(document.body).getPropertyValue('--user-color-source');
|
|
172
|
-
document.documentElement.classList.toggle('baseline-default', selectedTheme === 'baseline-default');
|
|
173
|
-
document.documentElement.classList.toggle('baseline-grayscale', selectedTheme === 'baseline-grayscale');
|
|
174
|
-
} else {
|
|
175
|
-
document.documentElement.classList.toggle('baseline-grayscale', true);
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
// In the event the theme changes we need to clear caches and notify subscribers.
|
|
179
|
-
themeValueByTargetByName.clear();
|
|
180
|
-
this.dispatchEvent(new ThemeChangeEvent());
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
static clearThemeCache(): void {
|
|
184
|
-
themeValueByTargetByName.clear();
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
fetchColorsAndApplyHostTheme(): void {
|
|
188
|
-
for (const document of this.#documentsToTheme) {
|
|
189
|
-
this.#fetchColorsAndApplyHostTheme(document);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
#fetchColorsAndApplyHostTheme(document: Document): void {
|
|
194
|
-
const useChromeTheme = Common.Settings.moduleSetting('chrome-theme-colors').get();
|
|
195
|
-
if (Host.InspectorFrontendHost.InspectorFrontendHostInstance.isHostedMode() || !useChromeTheme) {
|
|
196
|
-
this.#applyThemeToDocument(document);
|
|
197
|
-
return;
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
const oldColorsCssLink = document.querySelector('link[href*=\'//theme/colors.css\']');
|
|
201
|
-
const newColorsCssLink = document.createElement('link');
|
|
202
|
-
newColorsCssLink.setAttribute(
|
|
203
|
-
'href', `devtools://theme/colors.css?sets=ui,chrome&version=${(new Date()).getTime().toString()}`);
|
|
204
|
-
newColorsCssLink.setAttribute('rel', 'stylesheet');
|
|
205
|
-
newColorsCssLink.setAttribute('type', 'text/css');
|
|
206
|
-
newColorsCssLink.onload = () => {
|
|
207
|
-
if (oldColorsCssLink) {
|
|
208
|
-
oldColorsCssLink.remove();
|
|
209
|
-
}
|
|
210
|
-
this.#applyThemeToDocument(document);
|
|
211
|
-
};
|
|
212
|
-
document.body.appendChild(newColorsCssLink);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
export class ThemeChangeEvent extends Event {
|
|
217
|
-
static readonly eventName = 'themechange';
|
|
218
|
-
|
|
219
|
-
constructor() {
|
|
220
|
-
super(ThemeChangeEvent.eventName, {bubbles: true, composed: true});
|
|
221
|
-
}
|
|
222
|
-
}
|