chrome-devtools-frontend 1.0.1662289 → 1.0.1664496
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/.agents/skills/{creating-a-model → devtools-model-management}/SKILL.md +0 -1
- package/.agents/skills/devtools-unicode-escaping/SKILL.md +64 -0
- package/.agents/skills/devtools-ux-writing-refactor/SKILL.md +2 -1
- package/.agents/skills/fixing-skipped-tests/SKILL.md +3 -3
- package/.agents/skills/merging-devtools-module/SKILL.md +1 -1
- package/.agents/skills/migrate-chromium-test/SKILL.md +32 -6
- package/.agents/skills/repro-flaky-tests/SKILL.md +71 -31
- package/.agents/skills/ui-eng-vision-widget-promoter/SKILL.md +1 -0
- package/docs/ui_engineering.md +2 -0
- package/eslint.config.mjs +1 -0
- package/front_end/core/common/SettingRegistration.ts +0 -5
- package/front_end/core/common/Settings.ts +144 -3
- package/front_end/core/platform/StringUtilities.ts +38 -6
- package/front_end/core/protocol_client/PuppeteerDevToolsConnection.ts +112 -0
- package/front_end/core/sdk/CPUProfilerModel.ts +21 -13
- package/front_end/core/sdk/CSSContainerQuery.ts +1 -1
- package/front_end/core/sdk/CSSLayer.ts +1 -1
- package/front_end/core/sdk/CSSMedia.ts +1 -1
- package/front_end/core/sdk/CSSModel.ts +1 -1
- package/front_end/core/sdk/CSSNavigation.ts +1 -1
- package/front_end/core/sdk/CSSProperty.ts +1 -1
- package/front_end/core/sdk/CSSQuery.ts +1 -1
- package/front_end/core/sdk/CSSRule.ts +1 -1
- package/front_end/core/sdk/CSSScope.ts +1 -1
- package/front_end/core/sdk/CSSStartingStyle.ts +1 -1
- package/front_end/core/sdk/CSSStyleDeclaration.ts +1 -1
- package/front_end/core/sdk/CSSStyleSheetHeader.ts +1 -1
- package/front_end/core/sdk/CSSSupports.ts +1 -1
- package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +1 -1
- package/front_end/core/sdk/NetworkManager.ts +1 -1
- package/front_end/core/sdk/NetworkRequest.ts +7 -7
- package/front_end/core/sdk/Resource.ts +1 -1
- package/front_end/core/sdk/ScopeTreeCache.ts +1 -1
- package/front_end/core/sdk/Script.ts +1 -1
- package/front_end/core/sdk/ServerSentEvents.ts +1 -1
- package/front_end/core/sdk/ServiceWorkerCacheModel.ts +0 -10
- package/front_end/core/sdk/SourceMap.ts +1 -1
- package/front_end/core/sdk/SourceMapScopesInfo.ts +1 -1
- package/front_end/core/sdk/StorageBucketsModel.ts +0 -10
- package/front_end/core/sdk/sdk-meta.ts +3 -4
- package/front_end/{models → core}/text_utils/ContentProvider.ts +4 -6
- package/front_end/{models → core}/text_utils/StaticContentProvider.ts +4 -6
- package/front_end/{models → core}/text_utils/StreamingContentData.ts +1 -2
- package/front_end/{models → core}/text_utils/TextRange.ts +6 -3
- package/front_end/{models → core}/text_utils/TextUtils.ts +7 -7
- package/front_end/{models → core}/text_utils/WasmDisassembly.ts +2 -2
- package/front_end/core/text_utils/text_utils.ts +27 -0
- package/front_end/entrypoints/formatter_worker/AcornTokenizer.ts +1 -1
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshotLoader.ts +1 -1
- package/front_end/entrypoints/inspector_main/OutermostTargetSelector.ts +0 -13
- package/front_end/entrypoints/inspector_main/RenderingOptions.ts +8 -3
- package/front_end/entrypoints/inspector_main/inspector_main-meta.ts +3 -3
- package/front_end/entrypoints/main/MainImpl.ts +21 -3
- package/front_end/foundation/Universe.ts +16 -0
- package/front_end/generated/InspectorBackendCommands.ts +2 -14
- package/front_end/generated/protocol-mapping.d.ts +0 -53
- package/front_end/generated/protocol-proxy-api.d.ts +0 -46
- package/front_end/generated/protocol.ts +0 -148
- package/front_end/models/ai_assistance/AgentProject.ts +1 -1
- package/front_end/models/ai_assistance/AiAgent2.ts +3 -3
- package/front_end/models/ai_assistance/AiConversation.ts +21 -10
- package/front_end/models/ai_assistance/AiHistoryStorage.ts +21 -10
- package/front_end/models/ai_assistance/ChangeManager.ts +2 -2
- package/front_end/models/ai_assistance/ExtensionScope.ts +6 -2
- package/front_end/models/ai_assistance/agents/AccessibilityAgent.ts +4 -7
- package/front_end/models/ai_assistance/agents/AiAgent.ts +9 -2
- package/front_end/models/ai_assistance/agents/ContextSelectionAgent.ts +19 -11
- package/front_end/models/ai_assistance/agents/PerformanceAgent.snapshot.txt +2 -2
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +23 -10
- package/front_end/models/ai_assistance/agents/StorageAgent.ts +19 -18
- package/front_end/models/ai_assistance/agents/StylingAgent.ts +3 -4
- package/front_end/models/ai_assistance/contexts/FileContext.ts +7 -3
- package/front_end/models/ai_assistance/contexts/PerformanceTraceContext.ts +39 -11
- package/front_end/models/ai_assistance/data_formatters/FileFormatter.ts +6 -3
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +1 -1
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +4 -4
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +8 -8
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +76 -3
- package/front_end/models/ai_assistance/tools/ListNetworkRequests.ts +11 -1
- package/front_end/models/badges/AiExplorerBadge.ts +8 -3
- package/front_end/models/badges/Badge.ts +1 -0
- package/front_end/models/badges/UserBadges.ts +43 -23
- package/front_end/models/bindings/CompilerScriptMapping.ts +1 -1
- package/front_end/models/bindings/ContentProviderBasedProject.ts +1 -1
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +2 -2
- package/front_end/models/bindings/DebuggerWorkspaceBinding.ts +1 -1
- package/front_end/models/bindings/DefaultScriptMapping.ts +1 -1
- package/front_end/models/bindings/FileUtils.ts +1 -1
- package/front_end/models/bindings/NetworkProject.ts +16 -4
- package/front_end/models/bindings/PresentationConsoleMessageHelper.ts +7 -10
- package/front_end/models/bindings/ResourceMapping.ts +1 -1
- package/front_end/models/bindings/ResourceScriptMapping.ts +1 -1
- package/front_end/models/bindings/SASSSourceMapping.ts +1 -1
- package/front_end/models/bindings/StylesSourceMapping.ts +1 -1
- package/front_end/models/breakpoints/BreakpointManager.ts +1 -1
- package/front_end/models/crux-manager/CrUXManager.ts +1 -1
- package/front_end/models/emulation/DeviceModeModel.ts +67 -5
- package/front_end/models/emulation/EmulatedDevices.ts +3 -2
- package/front_end/models/extensions/RecorderPluginManager.ts +10 -6
- package/front_end/models/har/Importer.ts +1 -1
- package/front_end/models/har/Log.snapshot.txt +193 -0
- package/front_end/models/har/Log.ts +3 -2
- package/front_end/models/har/Writer.ts +1 -1
- package/front_end/models/issues_manager/IssueAggregator.ts +9 -0
- package/front_end/models/issues_manager/IssuesManager.ts +5 -0
- package/front_end/models/issues_manager/LazyLoadImageIssue.ts +76 -0
- package/front_end/models/issues_manager/descriptions/lazyLoadImageZeroSize.md +7 -0
- package/front_end/models/issues_manager/issues_manager.ts +2 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +9 -10
- package/front_end/models/live-metrics/LiveMetrics.ts +2 -3
- package/front_end/models/logs/NetworkLog.ts +4 -3
- package/front_end/models/logs/logs-meta.ts +3 -3
- package/front_end/models/network_time_calculator/NetworkTimeCalculator.ts +4 -4
- package/front_end/models/persistence/Automapping.ts +1 -1
- package/front_end/models/persistence/AutomaticFileSystemWorkspaceBinding.ts +2 -2
- package/front_end/models/persistence/FileSystemWorkspaceBinding.ts +1 -1
- package/front_end/models/persistence/IsolatedFileSystem.ts +2 -2
- package/front_end/models/persistence/NetworkPersistenceManager.ts +1 -1
- package/front_end/models/persistence/PersistenceImpl.ts +1 -1
- package/front_end/models/persistence/PlatformFileSystem.ts +1 -1
- package/front_end/models/source_map_scopes/FunctionCodeResolver.ts +8 -6
- package/front_end/models/source_map_scopes/NamesResolver.ts +37 -31
- package/front_end/models/stack_trace/StackTrace.ts +17 -0
- package/front_end/models/text_utils/text_utils.ts +2 -24
- package/front_end/models/trace/insights/ImageDelivery.ts +2 -2
- package/front_end/models/trace/insights/LegacyJavaScript.ts +1 -1
- package/front_end/models/trace/insights/RenderBlocking.ts +1 -1
- package/front_end/models/trace/insights/ThirdParties.ts +1 -1
- package/front_end/models/workspace/FileManager.ts +1 -1
- package/front_end/models/workspace/UISourceCode.ts +1 -1
- package/front_end/models/workspace/WorkspaceImpl.ts +1 -1
- package/front_end/models/workspace_diff/WorkspaceDiff.ts +1 -1
- package/front_end/panels/accessibility/AccessibilityNodeView.ts +1 -1
- package/front_end/panels/accessibility/AccessibilityStrings.ts +2 -2
- package/front_end/panels/ai_assistance/AiAssistancePanel.ts +1 -1
- package/front_end/panels/ai_assistance/ExportConversation.ts +1 -1
- package/front_end/panels/ai_assistance/ai_assistance-meta.ts +1 -1
- package/front_end/panels/ai_assistance/components/ChatMessage.ts +1 -1
- package/front_end/panels/application/AppManifestView.ts +4 -4
- package/front_end/panels/application/ApplicationPanelSidebar.ts +1 -2
- package/front_end/panels/application/CrashReportContextView.ts +1 -1
- package/front_end/panels/application/DOMStorageItemsView.ts +1 -1
- package/front_end/panels/application/DeviceBoundSessionsView.ts +4 -4
- package/front_end/panels/application/ExtensionStorageItemsView.ts +1 -1
- package/front_end/panels/application/FrameDetailsView.ts +1 -1
- package/front_end/panels/application/IndexedDBModel.ts +0 -10
- package/front_end/panels/application/IndexedDBViews.ts +240 -164
- package/front_end/panels/application/ServiceWorkerCacheTreeElement.ts +12 -2
- package/front_end/panels/application/ServiceWorkerCacheViews.ts +1 -1
- package/front_end/panels/application/SharedStorageModel.ts +0 -10
- package/front_end/panels/application/application.ts +2 -0
- package/front_end/panels/application/components/AdsView.ts +23 -0
- package/front_end/panels/application/components/BackForwardCacheView.ts +21 -5
- package/front_end/panels/application/components/CrashReportContextGrid.ts +1 -1
- package/front_end/panels/application/components/SharedStorageAccessGrid.ts +1 -1
- package/front_end/panels/application/components/TrustTokensView.ts +2 -2
- package/front_end/panels/application/components/adsView.css +21 -1
- package/front_end/panels/application/indexedDBViews.css +1 -1
- package/front_end/panels/application/preloading/PreloadingView.ts +1 -1
- package/front_end/panels/application/preloading/components/PreloadingDisabledInfobar.ts +2 -2
- package/front_end/panels/application/preloading/components/PreloadingString.ts +2 -2
- package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +4 -4
- package/front_end/panels/autofill/AutofillView.ts +1 -1
- package/front_end/panels/common/AiCodeCompletionTeaser.ts +1 -1
- package/front_end/panels/common/ExtensionServer.ts +1 -1
- package/front_end/panels/console/ConsoleFilter.ts +1 -1
- package/front_end/panels/console/ConsoleSidebar.ts +1 -1
- package/front_end/panels/console/ConsoleView.ts +1 -1
- package/front_end/panels/console/ConsoleViewMessage.ts +1 -1
- package/front_end/panels/console/PromptBuilder.ts +1 -1
- package/front_end/panels/coverage/CoverageDecorationManager.ts +9 -1
- package/front_end/panels/coverage/CoverageModel.ts +1 -1
- package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +1 -1
- package/front_end/panels/developer_resources/DeveloperResourcesListView.ts +1 -1
- package/front_end/panels/developer_resources/DeveloperResourcesView.ts +1 -1
- package/front_end/panels/elements/AccessibilityTreeView.ts +38 -3
- package/front_end/panels/elements/AdoptedStyleSheetTreeElement.ts +1 -1
- package/front_end/panels/elements/ElementIssueUtils.ts +2 -2
- package/front_end/panels/elements/ElementsTreeElement.ts +10 -3
- package/front_end/panels/elements/StandaloneStylesContainer.ts +1 -1
- package/front_end/panels/elements/StylePropertiesSection.ts +1 -1
- package/front_end/panels/elements/StylePropertyTreeElement.ts +1 -1
- package/front_end/panels/elements/StylesAiCodeCompletionProvider.ts +1 -1
- package/front_end/panels/elements/StylesContainer.ts +1 -1
- package/front_end/panels/elements/StylesSidebarPane.ts +1 -1
- package/front_end/panels/elements/components/CSSPropertyDocsView.ts +1 -1
- package/front_end/panels/explain/components/ConsoleInsight.ts +2 -2
- package/front_end/panels/issues/AffectedLazyLoadImagesView.ts +76 -0
- package/front_end/panels/issues/AffectedResourcesView.ts +1 -1
- package/front_end/panels/issues/CorsIssueDetailsView.ts +1 -1
- package/front_end/panels/issues/IssueView.ts +2 -0
- package/front_end/panels/issues/issues.ts +2 -0
- package/front_end/panels/layer_viewer/Layers3DView.ts +1 -1
- package/front_end/panels/lighthouse/LighthouseController.ts +5 -0
- package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +1 -1
- package/front_end/panels/network/BinaryResourceView.ts +1 -1
- package/front_end/panels/network/NetworkDataGridNode.ts +72 -8
- package/front_end/panels/network/NetworkLogView.ts +1 -1
- package/front_end/panels/network/NetworkLogViewColumns.ts +6 -6
- package/front_end/panels/network/NetworkPanel.ts +4 -4
- package/front_end/panels/network/NetworkSearchScope.ts +1 -1
- package/front_end/panels/network/RequestConditionsDrawer.ts +1 -1
- package/front_end/panels/network/RequestHTMLView.ts +1 -1
- package/front_end/panels/network/RequestInitiatorView.ts +24 -2
- package/front_end/panels/network/RequestPayloadView.ts +1 -1
- package/front_end/panels/network/RequestPreviewView.ts +1 -1
- package/front_end/panels/network/RequestResponseView.ts +1 -1
- package/front_end/panels/network/ResourceChunkView.ts +1 -1
- package/front_end/panels/network/ResourceDirectSocketChunkView.ts +1 -1
- package/front_end/panels/network/ResourceWebSocketFrameView.ts +1 -1
- package/front_end/panels/network/components/ResponseHeaderSection.ts +1 -1
- package/front_end/panels/network/forward/UIRequestLocation.ts +1 -1
- package/front_end/panels/network/network-meta.ts +3 -3
- package/front_end/panels/network/networkLogView.css +5 -0
- package/front_end/panels/network/requestInitiatorViewTree.css +5 -0
- package/front_end/panels/profiler/HeapProfileView.ts +200 -81
- package/front_end/panels/profiler/HeapSnapshotView.ts +1 -1
- package/front_end/panels/profiler/ProfileDataGrid.ts +12 -8
- package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +1 -1
- package/front_end/panels/recorder/README.md +1 -2
- package/front_end/panels/recorder/RecorderPanel.ts +1861 -17
- package/front_end/panels/recorder/RecordingListView.ts +8 -37
- package/front_end/panels/recorder/RecordingView.ts +54 -27
- package/front_end/panels/recorder/SelectorPicker.ts +0 -13
- package/front_end/panels/recorder/StepEditor.ts +6 -14
- package/front_end/panels/recorder/StepView.ts +36 -105
- package/front_end/panels/recorder/recorder.ts +0 -2
- package/front_end/panels/search/SearchResultsPane.ts +1 -1
- package/front_end/panels/security/SecurityPanel.ts +3 -3
- package/front_end/panels/settings/AISettingsTab.ts +17 -4
- package/front_end/panels/settings/components/SyncSection.ts +4 -4
- package/front_end/panels/settings/emulation/components/UserAgentClientHintsForm.ts +3 -3
- package/front_end/panels/snippets/ScriptSnippetFileSystem.ts +1 -1
- package/front_end/panels/sources/BreakpointsView.ts +1 -1
- package/front_end/panels/sources/CoveragePlugin.ts +1 -1
- package/front_end/panels/sources/DebuggerPlugin.ts +4 -4
- package/front_end/panels/sources/FilteredUISourceCodeListProvider.ts +27 -3
- package/front_end/panels/sources/NavigatorView.ts +1 -1
- package/front_end/panels/sources/PersistenceActions.ts +1 -1
- package/front_end/panels/sources/SourcesNavigator.ts +1 -1
- package/front_end/panels/sources/SourcesSearchScope.ts +1 -1
- package/front_end/panels/sources/TabbedEditorContainer.ts +3 -3
- package/front_end/panels/sources/UISourceCodeFrame.ts +1 -1
- package/front_end/panels/sources/components/HeadersView.ts +1 -1
- package/front_end/panels/sources/filteredUISourceCodeListProvider.css +12 -1
- package/front_end/panels/sources/sources-meta.ts +1 -1
- package/front_end/panels/timeline/StatusDialog.ts +1 -1
- package/front_end/panels/timeline/TimelineController.ts +24 -3
- package/front_end/panels/timeline/TimelinePanel.ts +116 -25
- package/front_end/panels/timeline/TimelineSelectorStatsView.ts +2 -2
- package/front_end/panels/timeline/TimelineUIUtils.ts +1 -1
- package/front_end/panels/timeline/components/CWVMetrics.ts +1 -1
- package/front_end/panels/timeline/components/IgnoreListSetting.ts +1 -1
- package/front_end/panels/timeline/overlays/components/EntryLabelOverlay.ts +2 -2
- package/front_end/panels/timeline/timeline-meta.ts +13 -0
- package/front_end/services/tracing/TracingManager.ts +27 -2
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/lighthouse/README.chromium +2 -2
- package/front_end/third_party/lighthouse/lighthouse-dt-bundle.js +1418 -1413
- package/front_end/third_party/lighthouse/locales/en-US.json +12 -6
- package/front_end/third_party/lighthouse/locales/en-XL.json +12 -6
- package/front_end/third_party/lighthouse/report-assets/report-generator.mjs +1 -1
- package/front_end/third_party/puppeteer/puppeteer.ts +20 -1
- package/front_end/ui/components/highlighting/HighlightElement.ts +4 -1
- package/front_end/ui/components/highlighting/HighlightManager.ts +1 -1
- package/front_end/ui/components/highlighting/MarkupHighlight.ts +1 -1
- package/front_end/ui/components/markdown_view/MarkdownView.ts +46 -2
- package/front_end/ui/components/markdown_view/markdownView.css +23 -0
- package/front_end/ui/components/spinners/Spinner.ts +29 -32
- package/front_end/ui/components/spinners/spinner.css +32 -84
- package/front_end/ui/components/text_editor/config.ts +1 -1
- package/front_end/ui/components/tree_outline/TreeOutline.ts +7 -1
- package/front_end/ui/legacy/Infobar.ts +1 -1
- package/front_end/ui/legacy/InspectorView.ts +12 -7
- package/front_end/ui/legacy/SuggestBox.ts +1 -1
- package/front_end/ui/legacy/TextPrompt.ts +1 -1
- package/front_end/ui/legacy/Toolbar.ts +5 -2
- package/front_end/ui/legacy/Treeoutline.ts +40 -13
- package/front_end/ui/legacy/UIUtils.ts +25 -10
- package/front_end/ui/legacy/Widget.ts +17 -10
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +1 -1
- package/front_end/ui/legacy/components/data_grid/DataGridElement.ts +37 -8
- package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +1 -1
- package/front_end/ui/legacy/components/data_grid/dataGrid.css +1 -1
- package/front_end/ui/legacy/components/inline_editor/AnimationTimingUI.ts +27 -13
- package/front_end/ui/legacy/components/inline_editor/BezierEditor.ts +5 -2
- package/front_end/ui/legacy/components/inline_editor/CSSLinearEasingModel.ts +23 -0
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +223 -121
- package/front_end/ui/legacy/components/object_ui/RemoteObjectPreviewFormatter.ts +1 -1
- package/front_end/ui/legacy/components/object_ui/objectValue.css +2 -1
- package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/FontView.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/ImageView.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/JSONView.ts +105 -115
- package/front_end/ui/legacy/components/source_frame/PreviewFactory.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/SourceFrame.ts +3 -3
- package/front_end/ui/legacy/components/source_frame/StreamingContentHexView.ts +1 -1
- package/front_end/ui/legacy/components/source_frame/XMLView.ts +5 -1
- package/front_end/ui/legacy/components/source_frame/jsonView.css +4 -0
- package/front_end/ui/legacy/components/utils/Linkifier.ts +1 -1
- package/front_end/ui/legacy/inspectorCommon.css +10 -6
- package/front_end/ui/lit/lit.ts +1 -0
- package/front_end/ui/lit/render.ts +44 -10
- package/front_end/ui/lit/strip-whitespace.ts +23 -2
- package/front_end/ui/settings/SettingUIRegistration.ts +105 -0
- package/front_end/ui/settings/settings.ts +9 -0
- package/front_end/ui/visual_logging/KnownContextValues.ts +13 -0
- package/mcp/mcp.ts +1 -0
- package/package.json +1 -1
- package/front_end/panels/recorder/RecorderController.ts +0 -1759
- /package/.agents/skills/{verification → devtools-verification}/SKILL.md +0 -0
- /package/front_end/{models → core}/text_utils/CodeMirrorUtils.ts +0 -0
- /package/front_end/{models → core}/text_utils/ContentData.ts +0 -0
- /package/front_end/{models → core}/text_utils/Text.ts +0 -0
- /package/front_end/{models → core}/text_utils/TextCursor.ts +0 -0
- /package/front_end/{models → core}/text_utils/TextUtils.snapshot.txt +0 -0
- /package/front_end/panels/recorder/{recorderController.css → recorderPanel.css} +0 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
// Copyright 2026 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
|
+
|
|
5
|
+
import type * as Puppeteer from '../../third_party/puppeteer/puppeteer.js';
|
|
6
|
+
|
|
7
|
+
import type * as CDPConnection from './CDPConnection.js';
|
|
8
|
+
|
|
9
|
+
// Hardcoded string literals corresponding to Puppeteer's CDPSessionEvent.SessionAttached ('sessionattached')
|
|
10
|
+
// and CDPSessionEvent.SessionDetached ('sessiondetached'). We redeclare these strings directly so we can use
|
|
11
|
+
// `import type * as Puppeteer` and avoid importing Puppeteer runtime JavaScript.
|
|
12
|
+
const SESSION_ATTACHED: Puppeteer.CDPSessionEventSessionAttached = 'sessionattached';
|
|
13
|
+
const SESSION_DETACHED: Puppeteer.CDPSessionEventSessionDetached = 'sessiondetached';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* This class makes a puppeteer connection look like DevTools CDPConnection.
|
|
17
|
+
*
|
|
18
|
+
* Since we connect "root" DevTools targets to specific pages, we scope everything to a puppeteer CDP session.
|
|
19
|
+
*
|
|
20
|
+
* We don't have to recursively listen for 'sessionattached' as the "root" CDP session sees all child session attached
|
|
21
|
+
* events, regardless how deeply nested they are.
|
|
22
|
+
*/
|
|
23
|
+
export class PuppeteerDevToolsConnection implements CDPConnection.CDPConnection {
|
|
24
|
+
readonly #connection: Puppeteer.Connection;
|
|
25
|
+
readonly #observers = new Set<CDPConnection.CDPConnectionObserver>();
|
|
26
|
+
readonly #sessionEventHandlers = new Map<string, Puppeteer.Handler<unknown>>();
|
|
27
|
+
|
|
28
|
+
constructor(session: Puppeteer.CDPSession) {
|
|
29
|
+
const connection = session.connection();
|
|
30
|
+
if (!connection) {
|
|
31
|
+
throw new Error('CDPSession has no connection');
|
|
32
|
+
}
|
|
33
|
+
this.#connection = connection;
|
|
34
|
+
|
|
35
|
+
session.on(
|
|
36
|
+
SESSION_ATTACHED,
|
|
37
|
+
this.#startForwardingCdpEvents.bind(this) as Puppeteer.Handler<unknown>,
|
|
38
|
+
);
|
|
39
|
+
session.on(
|
|
40
|
+
SESSION_DETACHED,
|
|
41
|
+
this.#stopForwardingCdpEvents.bind(this) as Puppeteer.Handler<unknown>,
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
this.#startForwardingCdpEvents(session);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
send<T extends CDPConnection.Command>(
|
|
48
|
+
method: T,
|
|
49
|
+
params: CDPConnection.CommandParams<T>,
|
|
50
|
+
sessionId: string|undefined,
|
|
51
|
+
): Promise<|{result: CDPConnection.CommandResult<T>}|{error: CDPConnection.CDPError}> {
|
|
52
|
+
if (sessionId === undefined) {
|
|
53
|
+
throw new Error(
|
|
54
|
+
'Attempting to send on the root session. This must not happen',
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
const session = this.#connection.session(sessionId);
|
|
58
|
+
if (!session) {
|
|
59
|
+
throw new Error('Unknown session ' + sessionId);
|
|
60
|
+
}
|
|
61
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
62
|
+
return session.send(method as any, params).then(result => ({result})).catch(error => ({
|
|
63
|
+
error: {
|
|
64
|
+
code: (error as any).code ?? -32000,
|
|
65
|
+
message: (error as any).message ||
|
|
66
|
+
String(error),
|
|
67
|
+
},
|
|
68
|
+
})) as any;
|
|
69
|
+
/* eslint-enable @typescript-eslint/no-explicit-any */
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
observe(observer: CDPConnection.CDPConnectionObserver): void {
|
|
73
|
+
this.#observers.add(observer);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
unobserve(observer: CDPConnection.CDPConnectionObserver): void {
|
|
77
|
+
this.#observers.delete(observer);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
#startForwardingCdpEvents(session: Puppeteer.CDPSession): void {
|
|
81
|
+
const handler = this.#handleEvent.bind(
|
|
82
|
+
this,
|
|
83
|
+
session.id(),
|
|
84
|
+
) as Puppeteer.Handler<unknown>;
|
|
85
|
+
this.#sessionEventHandlers.set(session.id(), handler);
|
|
86
|
+
session.on('*', handler);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
#stopForwardingCdpEvents(session: Puppeteer.CDPSession): void {
|
|
90
|
+
const handler = this.#sessionEventHandlers.get(session.id());
|
|
91
|
+
if (handler) {
|
|
92
|
+
session.off('*', handler);
|
|
93
|
+
this.#sessionEventHandlers.delete(session.id());
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
#handleEvent(
|
|
98
|
+
sessionId: string,
|
|
99
|
+
type: string|symbol|number,
|
|
100
|
+
event: unknown,
|
|
101
|
+
): void {
|
|
102
|
+
if (typeof type === 'string' && type !== SESSION_ATTACHED && type !== SESSION_DETACHED) {
|
|
103
|
+
this.#observers.forEach(
|
|
104
|
+
observer => observer.onEvent({
|
|
105
|
+
method: type as CDPConnection.Event,
|
|
106
|
+
sessionId,
|
|
107
|
+
params: event as CDPConnection.EventParams<CDPConnection.Event>,
|
|
108
|
+
}),
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
@@ -23,11 +23,10 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
|
23
23
|
|
|
24
24
|
export class CPUProfilerModel extends SDKModel<EventTypes> implements ProtocolProxyApi.ProfilerDispatcher {
|
|
25
25
|
#nextAnonymousConsoleProfileNumber: number;
|
|
26
|
-
#anonymousConsoleProfileIdToTitle: Map<string, string>;
|
|
26
|
+
readonly #anonymousConsoleProfileIdToTitle: Map<string, string>;
|
|
27
27
|
readonly #profilerAgent: ProtocolProxyApi.ProfilerApi;
|
|
28
28
|
#preciseCoverageDeltaUpdateCallback: ((arg0: number, arg2: Protocol.Profiler.ScriptCoverage[]) => Promise<void>)|null;
|
|
29
29
|
readonly #debuggerModel: DebuggerModel;
|
|
30
|
-
readonly registeredConsoleProfileMessages: ProfileFinishedData[] = [];
|
|
31
30
|
|
|
32
31
|
constructor(target: Target) {
|
|
33
32
|
super(target);
|
|
@@ -62,11 +61,7 @@ export class CPUProfilerModel extends SDKModel<EventTypes> implements ProtocolPr
|
|
|
62
61
|
title = this.#anonymousConsoleProfileIdToTitle.get(id);
|
|
63
62
|
this.#anonymousConsoleProfileIdToTitle.delete(id);
|
|
64
63
|
}
|
|
65
|
-
const eventData
|
|
66
|
-
...this.createEventDataFrom(id, location, title),
|
|
67
|
-
cpuProfile: profile,
|
|
68
|
-
};
|
|
69
|
-
this.registeredConsoleProfileMessages.push(eventData);
|
|
64
|
+
const eventData = new ProfileFinishedData(this.createEventDataFrom(id, location, title), profile);
|
|
70
65
|
this.dispatchEventToListeners(Events.CONSOLE_PROFILE_FINISHED, eventData);
|
|
71
66
|
}
|
|
72
67
|
|
|
@@ -91,10 +86,10 @@ export class CPUProfilerModel extends SDKModel<EventTypes> implements ProtocolPr
|
|
|
91
86
|
return this.#profilerAgent.invoke_stop().then(response => response.profile || null);
|
|
92
87
|
}
|
|
93
88
|
|
|
94
|
-
startPreciseCoverage(
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
89
|
+
startPreciseCoverage(jsCoveragePerBlock: boolean,
|
|
90
|
+
preciseCoverageDeltaUpdateCallback:
|
|
91
|
+
((arg0: number, arg2: Protocol.Profiler.ScriptCoverage[]) => Promise<void>)|
|
|
92
|
+
null): Promise<unknown> {
|
|
98
93
|
const callCount = false;
|
|
99
94
|
this.#preciseCoverageDeltaUpdateCallback = preciseCoverageDeltaUpdateCallback;
|
|
100
95
|
const allowUpdatesTriggeredByBackend = true;
|
|
@@ -143,6 +138,19 @@ export interface EventData {
|
|
|
143
138
|
cpuProfilerModel: CPUProfilerModel;
|
|
144
139
|
}
|
|
145
140
|
|
|
146
|
-
|
|
147
|
-
|
|
141
|
+
// This class is used used as a Revealer in timeline-meta.ts
|
|
142
|
+
export class ProfileFinishedData implements EventData {
|
|
143
|
+
readonly id: string;
|
|
144
|
+
readonly scriptLocation: Location;
|
|
145
|
+
readonly title: string;
|
|
146
|
+
readonly cpuProfilerModel: CPUProfilerModel;
|
|
147
|
+
readonly cpuProfile: Protocol.Profiler.Profile;
|
|
148
|
+
|
|
149
|
+
constructor(eventData: EventData, cpuProfile: Protocol.Profiler.Profile) {
|
|
150
|
+
this.id = eventData.id;
|
|
151
|
+
this.scriptLocation = eventData.scriptLocation;
|
|
152
|
+
this.title = eventData.title;
|
|
153
|
+
this.cpuProfilerModel = eventData.cpuProfilerModel;
|
|
154
|
+
this.cpuProfile = cpuProfile;
|
|
155
|
+
}
|
|
148
156
|
}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
|
|
5
5
|
import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
|
|
6
6
|
import type * as Protocol from '../../generated/protocol.js';
|
|
7
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
8
7
|
import * as Common from '../common/common.js';
|
|
9
8
|
import * as Host from '../host/host.js';
|
|
10
9
|
import * as Platform from '../platform/platform.js';
|
|
11
10
|
import * as Root from '../root/root.js';
|
|
11
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
12
12
|
|
|
13
13
|
import {CSSFontFace} from './CSSFontFace.js';
|
|
14
14
|
import {CSSMatchedStyles} from './CSSMatchedStyles.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
7
6
|
import * as Common from '../common/common.js';
|
|
8
7
|
import * as HostModule from '../host/host.js';
|
|
9
8
|
import * as Platform from '../platform/platform.js';
|
|
9
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
10
10
|
|
|
11
11
|
import type {CSSMatchedStyles} from './CSSMatchedStyles.js';
|
|
12
12
|
import {cssMetadata, GridAreaRowRegex} from './CSSMetadata.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import type * as TextUtils from '
|
|
6
|
+
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import {CSSLocation, type CSSModel, type Edit} from './CSSModel.js';
|
|
9
9
|
import type {CSSStyleSheetHeader} from './CSSStyleSheetHeader.js';
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
7
6
|
import * as Platform from '../platform/platform.js';
|
|
7
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
8
8
|
|
|
9
9
|
import {CSSContainerQuery} from './CSSContainerQuery.js';
|
|
10
10
|
import {CSSLayer} from './CSSLayer.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import {cssMetadata} from './CSSMetadata.js';
|
|
9
9
|
import type {CSSModel, Edit} from './CSSModel.js';
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
7
6
|
import * as Common from '../common/common.js';
|
|
8
7
|
import * as i18n from '../i18n/i18n.js';
|
|
9
8
|
import * as Platform from '../platform/platform.js';
|
|
9
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
10
10
|
|
|
11
11
|
import type {CSSModel} from './CSSModel.js';
|
|
12
12
|
import {DeferredDOMNode} from './DOMModel.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {CSSModel} from './CSSModel.js';
|
|
9
9
|
import {CSSQuery} from './CSSQuery.js';
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
6
5
|
import type * as Common from '../common/common.js';
|
|
7
6
|
import * as i18n from '../i18n/i18n.js';
|
|
8
7
|
import type * as Platform from '../platform/platform.js';
|
|
8
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
9
9
|
|
|
10
10
|
import type {PageResourceLoader, PageResourceLoadInitiator} from './PageResourceLoader.js';
|
|
11
11
|
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
|
|
5
5
|
import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
|
|
6
6
|
import * as Protocol from '../../generated/protocol.js';
|
|
7
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
8
7
|
import * as Common from '../common/common.js';
|
|
9
8
|
import * as i18n from '../i18n/i18n.js';
|
|
10
9
|
import * as Platform from '../platform/platform.js';
|
|
11
10
|
import * as Root from '../root/root.js';
|
|
11
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
12
12
|
|
|
13
13
|
import {Cookie} from './Cookie.js';
|
|
14
14
|
import {
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as Protocol from '../../generated/protocol.js';
|
|
6
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
7
6
|
import * as Common from '../common/common.js';
|
|
8
7
|
import * as i18n from '../i18n/i18n.js';
|
|
9
8
|
import * as Platform from '../platform/platform.js';
|
|
9
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
10
10
|
|
|
11
11
|
import {Attribute, type Cookie} from './Cookie.js';
|
|
12
12
|
import {CookieModel} from './CookieModel.js';
|
|
@@ -33,11 +33,11 @@ const UIStrings = {
|
|
|
33
33
|
/**
|
|
34
34
|
* @description Tooltip to explain why a cookie was blocked
|
|
35
35
|
*/
|
|
36
|
-
notOnPath: 'This cookie was blocked because its path was not an exact match for or a superdirectory of the request url
|
|
36
|
+
notOnPath: 'This cookie was blocked because its path was not an exact match for or a superdirectory of the request url’s path.',
|
|
37
37
|
/**
|
|
38
38
|
* @description Tooltip to explain why a cookie was blocked
|
|
39
39
|
*/
|
|
40
|
-
domainMismatch: 'This cookie was blocked because neither did the request URL
|
|
40
|
+
domainMismatch: 'This cookie was blocked because neither did the request URL’s domain exactly match the cookie’s domain, nor was the request URL’s domain a subdomain of the cookie’s Domain attribute value.',
|
|
41
41
|
/**
|
|
42
42
|
* @description Tooltip to explain why a cookie was blocked
|
|
43
43
|
*/
|
|
@@ -49,7 +49,7 @@ const UIStrings = {
|
|
|
49
49
|
/**
|
|
50
50
|
* @description Tooltip to explain why a cookie was blocked
|
|
51
51
|
*/
|
|
52
|
-
sameSiteUnspecifiedTreatedAsLax: 'This cookie didn
|
|
52
|
+
sameSiteUnspecifiedTreatedAsLax: 'This cookie didn’t specify a "`SameSite`" attribute when it was stored and was defaulted to "SameSite=Lax," and was blocked because the request was made from a different site and was not initiated by a top-level navigation. The cookie had to have been set with "`SameSite=None`" to enable cross-site usage.',
|
|
53
53
|
/**
|
|
54
54
|
* @description Tooltip to explain why a cookie was blocked
|
|
55
55
|
*/
|
|
@@ -77,7 +77,7 @@ const UIStrings = {
|
|
|
77
77
|
/**
|
|
78
78
|
* @description Tooltip to explain why a cookie was blocked due to Schemeful Same-Site
|
|
79
79
|
*/
|
|
80
|
-
schemefulSameSiteUnspecifiedTreatedAsLax: 'This cookie didn
|
|
80
|
+
schemefulSameSiteUnspecifiedTreatedAsLax: 'This cookie didn’t specify a "`SameSite`" attribute when it was stored, was defaulted to "`SameSite=Lax"`, and was blocked because the request was cross-site and was not initiated by a top-level navigation. This request is considered cross-site because the URL has a different scheme than the current site.',
|
|
81
81
|
/**
|
|
82
82
|
* @description Tooltip to explain why a cookie was blocked due to exceeding the maximum size
|
|
83
83
|
*/
|
|
@@ -114,7 +114,7 @@ const UIStrings = {
|
|
|
114
114
|
/**
|
|
115
115
|
* @description Tooltip to explain why a cookie was blocked due to Schemeful Same-Site
|
|
116
116
|
*/
|
|
117
|
-
thisSetcookieDidntSpecifyASamesite: 'This `Set-Cookie` header didn
|
|
117
|
+
thisSetcookieDidntSpecifyASamesite: 'This `Set-Cookie` header didn’t specify a "`SameSite`" attribute, was defaulted to "`SameSite=Lax"`, and was blocked because it came from a cross-site response which was not the response to a top-level navigation. This response is considered cross-site because the URL has a different scheme than the current site.',
|
|
118
118
|
/**
|
|
119
119
|
* @description Tooltip to explain why an attempt to set a cookie via a `Set-Cookie` HTTP header on a request's response was blocked.
|
|
120
120
|
*/
|
|
@@ -127,7 +127,7 @@ const UIStrings = {
|
|
|
127
127
|
/**
|
|
128
128
|
* @description Tooltip to explain why an attempt to set a cookie via a `Set-Cookie` HTTP header on a request's response was blocked.
|
|
129
129
|
*/
|
|
130
|
-
blockedReasonSameSiteUnspecifiedTreatedAsLax: 'This `Set-Cookie` header didn
|
|
130
|
+
blockedReasonSameSiteUnspecifiedTreatedAsLax: 'This `Set-Cookie` header didn’t specify a "`SameSite`" attribute and was defaulted to "`SameSite=Lax,`" and was blocked because it came from a cross-site response which was not the response to a top-level navigation. The `Set-Cookie` had to have been set with "`SameSite=None`" to enable cross-site usage.',
|
|
131
131
|
/**
|
|
132
132
|
* @description Tooltip to explain why an attempt to set a cookie via a `Set-Cookie` HTTP header on a request's response was blocked.
|
|
133
133
|
*/
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
*/
|
|
32
32
|
|
|
33
33
|
import type * as Protocol from '../../generated/protocol.js';
|
|
34
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
35
34
|
import * as Common from '../common/common.js';
|
|
36
35
|
import * as Platform from '../platform/platform.js';
|
|
36
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
37
37
|
|
|
38
38
|
import type {NetworkRequest} from './NetworkRequest.js';
|
|
39
39
|
import type {ResourceTreeFrame, ResourceTreeModel} from './ResourceTreeModel.js';
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
5
|
import * as Formatter from '../../models/formatter/formatter.js';
|
|
6
|
-
import * as TextUtils from '
|
|
6
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
7
7
|
|
|
8
8
|
import type {Script} from './Script.js';
|
|
9
9
|
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
|
|
30
30
|
import * as Platform from '../../core/platform/platform.js';
|
|
31
31
|
import * as Protocol from '../../generated/protocol.js';
|
|
32
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
33
32
|
import * as Common from '../common/common.js';
|
|
34
33
|
import * as i18n from '../i18n/i18n.js';
|
|
34
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
35
35
|
|
|
36
36
|
import {
|
|
37
37
|
COND_BREAKPOINT_SOURCE_URL,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
|
-
import * as TextUtils from '
|
|
5
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
6
6
|
|
|
7
7
|
import {Events, type EventSourceMessage, type NetworkRequest} from './NetworkRequest.js';
|
|
8
8
|
import {ServerSentEventsParser} from './ServerSentEventsProtocol.js';
|
|
@@ -273,16 +273,6 @@ export class ServiceWorkerCacheModel extends SDKModel<EventTypes> implements Pro
|
|
|
273
273
|
indexedDBContentUpdated(_event: Protocol.Storage.IndexedDBContentUpdatedEvent): void {
|
|
274
274
|
}
|
|
275
275
|
|
|
276
|
-
interestGroupAuctionEventOccurred(_event: Protocol.Storage.InterestGroupAuctionEventOccurredEvent): void {
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
interestGroupAccessed(_event: Protocol.Storage.InterestGroupAccessedEvent): void {
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
interestGroupAuctionNetworkRequestCreated(_event: Protocol.Storage.InterestGroupAuctionNetworkRequestCreatedEvent):
|
|
283
|
-
void {
|
|
284
|
-
}
|
|
285
|
-
|
|
286
276
|
sharedStorageAccessed(_event: Protocol.Storage.SharedStorageAccessedEvent): void {
|
|
287
277
|
}
|
|
288
278
|
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
|
3
3
|
// found in the LICENSE file.
|
|
4
4
|
|
|
5
|
-
import * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
6
5
|
import * as ScopesCodec from '../../third_party/source-map-scopes-codec/source-map-scopes-codec.js';
|
|
7
6
|
import * as Common from '../common/common.js';
|
|
8
7
|
import * as Platform from '../platform/platform.js';
|
|
8
|
+
import * as TextUtils from '../text_utils/text_utils.js';
|
|
9
9
|
|
|
10
10
|
import type {CallFrame, ScopeChainEntry} from './DebuggerModel.js';
|
|
11
11
|
import {scopeTreeForScript} from './ScopeTreeCache.js';
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
import * as Protocol from '../../generated/protocol.js';
|
|
6
6
|
import * as Formatter from '../../models/formatter/formatter.js';
|
|
7
|
-
import type * as TextUtils from '../../models/text_utils/text_utils.js';
|
|
8
7
|
import type * as ScopesCodec from '../../third_party/source-map-scopes-codec/source-map-scopes-codec.js';
|
|
9
8
|
import type * as Platform from '../platform/platform.js';
|
|
9
|
+
import type * as TextUtils from '../text_utils/text_utils.js';
|
|
10
10
|
|
|
11
11
|
import type {CallFrame, ScopeChainEntry} from './DebuggerModel.js';
|
|
12
12
|
import type {SourceMap} from './SourceMap.js';
|
|
@@ -142,16 +142,6 @@ export class StorageBucketsModel extends SDKModel<EventTypes> implements Protoco
|
|
|
142
142
|
}
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
-
interestGroupAccessed(_event: Protocol.Storage.InterestGroupAccessedEvent): void {
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
interestGroupAuctionEventOccurred(_event: Protocol.Storage.InterestGroupAuctionEventOccurredEvent): void {
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
interestGroupAuctionNetworkRequestCreated(_event: Protocol.Storage.InterestGroupAuctionNetworkRequestCreatedEvent):
|
|
152
|
-
void {
|
|
153
|
-
}
|
|
154
|
-
|
|
155
145
|
indexedDBListUpdated(_event: Protocol.Storage.IndexedDBListUpdatedEvent): void {
|
|
156
146
|
}
|
|
157
147
|
|
|
@@ -9,11 +9,11 @@ const UIStrings = {
|
|
|
9
9
|
/**
|
|
10
10
|
* @description Title of a setting under the Console category that can be invoked through the Command Menu
|
|
11
11
|
*/
|
|
12
|
-
preserveLogUponNavigation: '
|
|
12
|
+
preserveLogUponNavigation: 'Keep log on navigation',
|
|
13
13
|
/**
|
|
14
14
|
* @description Title of a setting under the Console category that can be invoked through the Command Menu
|
|
15
15
|
*/
|
|
16
|
-
doNotPreserveLogUponNavigation: '
|
|
16
|
+
doNotPreserveLogUponNavigation: 'Don’t keep log on navigation',
|
|
17
17
|
/**
|
|
18
18
|
* @description Text for pausing the debugger on exceptions
|
|
19
19
|
*/
|
|
@@ -53,7 +53,7 @@ const UIStrings = {
|
|
|
53
53
|
/**
|
|
54
54
|
* @description Text of a setting that do turn off the measuring rulers when hover over a target
|
|
55
55
|
*/
|
|
56
|
-
doNotShowRulersOnHover: 'Don
|
|
56
|
+
doNotShowRulersOnHover: 'Don’t show rulers on hover',
|
|
57
57
|
/**
|
|
58
58
|
* @description Title of a setting that turns on grid area name labels
|
|
59
59
|
*/
|
|
@@ -1355,7 +1355,6 @@ Common.Settings.registerSettingExtension({
|
|
|
1355
1355
|
settingType: Common.Settings.SettingType.BOOLEAN,
|
|
1356
1356
|
order: 0,
|
|
1357
1357
|
defaultValue: false,
|
|
1358
|
-
userActionCondition: 'hasOtherClients',
|
|
1359
1358
|
options: [
|
|
1360
1359
|
{
|
|
1361
1360
|
value: true,
|
|
@@ -17,9 +17,8 @@ export interface ContentProvider {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export class SearchMatch {
|
|
20
|
-
constructor(
|
|
21
|
-
|
|
22
|
-
readonly matchLength: number) {
|
|
20
|
+
constructor(readonly lineNumber: number, readonly lineContent: string, readonly columnNumber: number,
|
|
21
|
+
readonly matchLength: number) {
|
|
23
22
|
}
|
|
24
23
|
|
|
25
24
|
static comparator(a: SearchMatch, b: SearchMatch): number {
|
|
@@ -27,9 +26,8 @@ export class SearchMatch {
|
|
|
27
26
|
}
|
|
28
27
|
}
|
|
29
28
|
|
|
30
|
-
export const contentAsDataURL = function(
|
|
31
|
-
|
|
32
|
-
limitSize = true): string|null {
|
|
29
|
+
export const contentAsDataURL = function(content: string|null, mimeType: string, contentEncoded: boolean,
|
|
30
|
+
charset?: string|null, limitSize = true): string|null {
|
|
33
31
|
const maxDataUrlSize = 1024 * 1024;
|
|
34
32
|
if (content === undefined || content === null || (limitSize && content.length > maxDataUrlSize)) {
|
|
35
33
|
return null;
|
|
@@ -14,17 +14,15 @@ export class StaticContentProvider implements ContentProvider {
|
|
|
14
14
|
readonly #contentType: Common.ResourceType.ResourceType;
|
|
15
15
|
readonly #lazyContent: () => Promise<ContentDataOrError>;
|
|
16
16
|
|
|
17
|
-
constructor(
|
|
18
|
-
|
|
19
|
-
lazyContent: () => Promise<ContentDataOrError>) {
|
|
17
|
+
constructor(contentURL: Platform.DevToolsPath.UrlString, contentType: Common.ResourceType.ResourceType,
|
|
18
|
+
lazyContent: () => Promise<ContentDataOrError>) {
|
|
20
19
|
this.#contentURL = contentURL;
|
|
21
20
|
this.#contentType = contentType;
|
|
22
21
|
this.#lazyContent = lazyContent;
|
|
23
22
|
}
|
|
24
23
|
|
|
25
|
-
static fromString(
|
|
26
|
-
|
|
27
|
-
content: string): StaticContentProvider {
|
|
24
|
+
static fromString(contentURL: Platform.DevToolsPath.UrlString, contentType: Common.ResourceType.ResourceType,
|
|
25
|
+
content: string): StaticContentProvider {
|
|
28
26
|
const lazyContent = (): Promise<ContentData> =>
|
|
29
27
|
Promise.resolve(new ContentData(content, /* isBase64 */ false, contentType.canonicalMimeType()));
|
|
30
28
|
return new StaticContentProvider(contentURL, contentType, lazyContent);
|
|
@@ -86,8 +86,7 @@ export class StreamingContentData extends Common.ObjectWrapper.ObjectWrapper<Eve
|
|
|
86
86
|
export type StreamingContentDataOrError = StreamingContentData|{error: string};
|
|
87
87
|
|
|
88
88
|
export const isError = function(contentDataOrError: StreamingContentDataOrError): contentDataOrError is {
|
|
89
|
-
error:
|
|
90
|
-
string,
|
|
89
|
+
error: string,
|
|
91
90
|
} {
|
|
92
91
|
return 'error' in contentDataOrError;
|
|
93
92
|
};
|
|
@@ -26,9 +26,8 @@ export class TextRange {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
static fromObject(serializedTextRange: SerializedTextRange): TextRange {
|
|
29
|
-
return new TextRange(
|
|
30
|
-
|
|
31
|
-
serializedTextRange.endColumn);
|
|
29
|
+
return new TextRange(serializedTextRange.startLine, serializedTextRange.startColumn, serializedTextRange.endLine,
|
|
30
|
+
serializedTextRange.endColumn);
|
|
32
31
|
}
|
|
33
32
|
|
|
34
33
|
static comparator(range1: TextRange, range2: TextRange): number {
|
|
@@ -263,4 +262,8 @@ export class TextRange {
|
|
|
263
262
|
export class SourceRange {
|
|
264
263
|
constructor(public offset: number, public length: number) {
|
|
265
264
|
}
|
|
265
|
+
|
|
266
|
+
cssValue(): string {
|
|
267
|
+
return `${this.offset},${this.length}`;
|
|
268
|
+
}
|
|
266
269
|
}
|