chrome-devtools-frontend 1.0.1550444 → 1.0.1555174
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/styleguide/ux/components.md +34 -8
- package/eslint.config.mjs +7 -0
- package/front_end/Images/generate-css-vars.js +8 -4
- package/front_end/Images/src/spark.svg +10 -0
- package/front_end/core/common/Settings.ts +20 -8
- package/front_end/core/host/UserMetrics.ts +3 -1
- package/front_end/core/i18n/collect-ui-strings.js +19 -10
- package/front_end/core/i18n/generate-locales-js.js +4 -4
- package/front_end/core/protocol_client/CDPConnection.ts +1 -0
- package/front_end/core/protocol_client/InspectorBackend.ts +5 -1
- package/front_end/core/root/Runtime.ts +0 -12
- package/front_end/core/sdk/DOMModel.ts +38 -3
- package/front_end/core/sdk/DebuggerModel.ts +9 -4
- package/front_end/core/sdk/IsolateManager.ts +7 -0
- package/front_end/core/sdk/PageResourceLoader.ts +3 -3
- package/front_end/core/sdk/RehydratingConnection.ts +5 -2
- package/front_end/core/sdk/ResourceTreeModel.ts +0 -1
- package/front_end/entrypoints/main/MainImpl.ts +28 -10
- package/front_end/generated/SupportedCSSProperties.js +32 -0
- package/front_end/models/ai_assistance/AiConversation.ts +94 -4
- package/front_end/models/ai_assistance/agents/AiAgent.ts +30 -15
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +179 -41
- package/front_end/models/ai_assistance/agents/StylingAgent.snapshot.txt +5 -0
- package/front_end/models/ai_assistance/agents/StylingAgent.ts +62 -0
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +2 -1
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +1 -7
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +124 -12
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +125 -30
- package/front_end/models/ai_assistance/performance/AICallTree.ts +42 -0
- package/front_end/models/ai_code_generation/AiCodeGeneration.ts +12 -0
- package/front_end/models/issues_manager/Issue.ts +1 -0
- 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/PermissionElementIssue.ts +262 -0
- package/front_end/models/issues_manager/descriptions/permissionElementActivationDisabled.md +7 -0
- package/front_end/models/issues_manager/descriptions/permissionElementActivationDisabledWithOccluder.md +9 -0
- package/front_end/models/issues_manager/descriptions/permissionElementActivationDisabledWithOccluderParent.md +9 -0
- package/front_end/models/issues_manager/descriptions/permissionElementCspFrameAncestorsMissing.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementFencedFrameDisallowed.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementFontSizeTooLarge.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementFontSizeTooSmall.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementGeolocationDeprecated.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementInsetBoxShadowUnsupported.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementInvalidDisplayStyle.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementInvalidSizeValue.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementInvalidType.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementInvalidTypeActivation.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementLowContrast.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementNonOpaqueColor.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementPaddingBottomUnsupported.md +6 -0
- package/front_end/models/issues_manager/descriptions/permissionElementPaddingRightUnsupported.md +6 -0
- package/front_end/models/issues_manager/descriptions/permissionElementPermissionsPolicyBlocked.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementRegistrationFailed.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementRequestInProgress.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementSecurityChecksFailed.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementTypeNotSupported.md +5 -0
- package/front_end/models/issues_manager/descriptions/permissionElementUntrustedEvent.md +7 -0
- package/front_end/models/issues_manager/issues_manager.ts +2 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +23 -23
- package/front_end/models/stack_trace/StackTraceModel.ts +37 -18
- package/front_end/models/trace/Processor.ts +14 -15
- package/front_end/models/trace/insights/Common.ts +2 -8
- package/front_end/models/trace/insights/types.ts +12 -2
- package/front_end/models/trace/types/TraceEvents.ts +4 -1
- package/front_end/panels/ai_assistance/AiAssistancePanel.ts +28 -6
- package/front_end/panels/ai_assistance/ai_assistance-meta.ts +9 -23
- package/front_end/panels/ai_assistance/ai_assistance.ts +1 -0
- package/front_end/panels/ai_assistance/components/ChatView.ts +78 -2
- package/front_end/panels/ai_assistance/components/CollapsibleAssistanceContentWidget.ts +71 -0
- package/front_end/panels/ai_assistance/components/PerformanceAgentFlameChart.ts +126 -0
- package/front_end/panels/ai_assistance/components/PerformanceAgentMarkdownRenderer.ts +131 -2
- package/front_end/panels/ai_assistance/components/chatView.css +28 -0
- package/front_end/panels/ai_assistance/components/collapsibleAssistanceContentWidget.css +33 -0
- package/front_end/panels/application/AppManifestView.ts +1007 -521
- package/front_end/panels/application/ApplicationPanelSidebar.ts +1 -17
- package/front_end/panels/application/BounceTrackingMitigationsTreeElement.ts +2 -6
- package/front_end/panels/application/ExtensionStorageItemsView.ts +3 -5
- package/front_end/panels/application/KeyValueStorageItemsView.ts +3 -2
- package/front_end/panels/application/components/BackForwardCacheView.ts +2 -2
- package/front_end/panels/application/components/BounceTrackingMitigationsView.ts +133 -118
- package/front_end/panels/application/preloading/PreloadingView.ts +46 -45
- package/front_end/panels/application/preloading/components/MismatchedPreloadingGrid.ts +80 -75
- package/front_end/panels/application/preloading/components/PreloadingDisabledInfobar.ts +169 -133
- package/front_end/panels/application/preloading/components/RuleSetDetailsView.ts +74 -93
- package/front_end/panels/application/preloading/components/RuleSetGrid.ts +142 -117
- package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +51 -11
- package/front_end/panels/application/preloading/components/components.ts +0 -2
- package/front_end/panels/common/Annotation.ts +184 -0
- package/front_end/panels/common/AnnotationManager.ts +148 -11
- package/front_end/panels/common/ExtensionView.ts +47 -0
- package/front_end/panels/common/PersistenceUtils.ts +22 -25
- package/front_end/panels/common/annotation.css +40 -0
- package/front_end/panels/common/common.ts +1 -0
- package/front_end/panels/console/ConsoleInsightTeaser.ts +187 -5
- package/front_end/panels/console/ConsolePinPane.ts +437 -217
- package/front_end/panels/console/ConsolePrompt.ts +32 -223
- package/front_end/panels/console/ConsoleView.ts +67 -66
- package/front_end/panels/console/ConsoleViewMessage.ts +8 -3
- package/front_end/panels/console/consoleInsightTeaser.css +23 -0
- package/front_end/panels/console/consoleView.css +1 -1
- package/front_end/panels/elements/AdoptedStyleSheetTreeElement.ts +89 -0
- package/front_end/panels/elements/ColorSwatchPopoverIcon.ts +2 -2
- package/front_end/panels/elements/ComputedStyleWidget.ts +16 -5
- package/front_end/panels/elements/ElementsPanel.ts +38 -12
- package/front_end/panels/elements/ElementsSidebarPane.ts +1 -3
- package/front_end/panels/elements/ElementsTreeElement.ts +313 -353
- package/front_end/panels/elements/ElementsTreeOutline.ts +39 -13
- package/front_end/panels/elements/StylePropertyTreeElement.ts +15 -14
- package/front_end/panels/elements/StylesSidebarPane.ts +1 -1
- package/front_end/panels/emulation/MediaQueryInspector.ts +171 -125
- package/front_end/panels/explain/components/ConsoleInsight.ts +175 -150
- package/front_end/panels/explain/components/consoleInsight.css +348 -347
- package/front_end/panels/issues/AffectedPermissionElementsView.ts +46 -0
- package/front_end/panels/issues/IssueView.ts +2 -0
- package/front_end/panels/issues/IssuesPane.ts +6 -0
- package/front_end/panels/layer_viewer/LayerDetailsView.ts +165 -149
- package/front_end/panels/layer_viewer/Layers3DView.ts +131 -78
- package/front_end/panels/lighthouse/LighthouseStatusView.ts +149 -100
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryHighlightChipList.ts +90 -64
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryInspector.ts +25 -34
- package/front_end/panels/linear_memory_inspector/components/LinearMemoryValueInterpreter.ts +60 -44
- package/front_end/panels/linear_memory_inspector/components/ValueInterpreterDisplay.ts +170 -151
- package/front_end/panels/linear_memory_inspector/components/ValueInterpreterSettings.ts +50 -51
- package/front_end/panels/linear_memory_inspector/components/valueInterpreterDisplay.css +0 -13
- package/front_end/panels/linear_memory_inspector/components/valueInterpreterSettings.css +20 -18
- package/front_end/panels/mobile_throttling/CalibrationController.ts +3 -1
- package/front_end/panels/network/NetworkDataGridNode.ts +14 -6
- package/front_end/panels/network/NetworkItemView.ts +42 -3
- package/front_end/panels/network/NetworkLogView.ts +10 -11
- package/front_end/panels/network/NetworkPanel.ts +63 -1
- package/front_end/panels/network/RequestInitiatorView.ts +146 -113
- package/front_end/panels/network/components/RequestHeaderSection.css +51 -50
- package/front_end/panels/network/components/RequestHeaderSection.ts +81 -71
- package/front_end/panels/network/components/RequestHeadersView.css +1 -1
- package/front_end/panels/network/components/RequestHeadersView.ts +26 -11
- package/front_end/panels/network/components/RequestTrustTokensView.css +24 -14
- package/front_end/panels/network/components/RequestTrustTokensView.ts +144 -140
- package/front_end/panels/profiler/IsolateSelector.ts +2 -1
- package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +49 -33
- package/front_end/panels/recorder/RecorderController.ts +2 -3
- package/front_end/panels/recorder/components/ControlButton.ts +68 -34
- package/front_end/panels/recorder/components/CreateRecordingView.ts +9 -6
- package/front_end/panels/recorder/components/RecordingView.ts +81 -88
- package/front_end/panels/recorder/components/ReplaySection.ts +226 -145
- package/front_end/panels/recorder/{controllers → components}/SelectorPicker.ts +129 -52
- package/front_end/panels/recorder/components/StepEditor.ts +21 -67
- package/front_end/panels/recorder/components/StepView.ts +222 -180
- package/front_end/panels/recorder/components/TimelineSection.ts +69 -48
- package/front_end/panels/recorder/components/components.ts +2 -2
- package/front_end/panels/recorder/components/selectorPicker.css +14 -0
- package/front_end/panels/recorder/components/stepEditor.css +0 -5
- package/front_end/panels/recorder/components/stepView.css +196 -198
- package/front_end/panels/recorder/extensions/ExtensionManager.ts +4 -48
- package/front_end/panels/recorder/models/ScreenshotUtils.ts +17 -11
- package/front_end/panels/security/CookieControlsView.ts +30 -26
- package/front_end/panels/settings/components/SyncSection.ts +0 -1
- package/front_end/panels/sources/CSSPlugin.ts +3 -3
- package/front_end/panels/sources/CallStackSidebarPane.ts +60 -75
- package/front_end/panels/sources/SourcesPanel.ts +1 -11
- package/front_end/panels/sources/TabbedEditorContainer.ts +11 -8
- package/front_end/panels/sources/ThreadsSidebarPane.ts +96 -101
- package/front_end/panels/sources/threadsSidebarPane.css +6 -5
- package/front_end/panels/timeline/CompatibilityTracksAppender.ts +0 -1
- package/front_end/panels/timeline/InteractionsTrackAppender.ts +2 -3
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +23 -33
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +4 -3
- package/front_end/panels/timeline/TimelineFlameChartView.ts +12 -0
- package/front_end/panels/timeline/TimelinePanel.ts +3 -5
- package/front_end/panels/timeline/components/IgnoreListSetting.ts +164 -142
- package/front_end/panels/timeline/components/InteractionBreakdown.ts +48 -28
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +18 -23
- package/front_end/panels/timeline/components/NetworkRequestTooltip.ts +98 -73
- package/front_end/panels/timeline/components/Sidebar.ts +16 -7
- package/front_end/panels/timeline/components/SidebarInsightsTab.ts +174 -137
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +262 -291
- package/front_end/panels/timeline/components/Utils.ts +25 -0
- package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +210 -146
- package/front_end/panels/timeline/components/insights/CLSCulprits.ts +8 -20
- package/front_end/panels/timeline/components/insights/Cache.ts +0 -9
- package/front_end/panels/timeline/components/insights/Checklist.ts +53 -43
- package/front_end/panels/timeline/components/insights/DOMSize.ts +11 -33
- package/front_end/panels/timeline/components/insights/DocumentLatency.ts +6 -12
- package/front_end/panels/timeline/components/insights/DuplicatedJavaScript.ts +0 -9
- package/front_end/panels/timeline/components/insights/EventRef.ts +47 -109
- package/front_end/panels/timeline/components/insights/FontDisplay.ts +0 -9
- package/front_end/panels/timeline/components/insights/ForcedReflow.ts +0 -9
- package/front_end/panels/timeline/components/insights/INPBreakdown.ts +0 -9
- package/front_end/panels/timeline/components/insights/ImageDelivery.ts +1 -10
- package/front_end/panels/timeline/components/insights/ImageRef.ts +112 -0
- package/front_end/panels/timeline/components/insights/InsightRenderer.ts +91 -0
- package/front_end/panels/timeline/components/insights/LCPBreakdown.ts +0 -9
- package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +11 -14
- package/front_end/panels/timeline/components/insights/LegacyJavaScript.ts +0 -9
- package/front_end/panels/timeline/components/insights/ModernHTTP.ts +0 -9
- package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +6 -21
- package/front_end/panels/timeline/components/insights/NodeLink.ts +68 -43
- package/front_end/panels/timeline/components/insights/README.md +2 -3
- package/front_end/panels/timeline/components/insights/RenderBlocking.ts +0 -9
- package/front_end/panels/timeline/components/insights/SlowCSSSelector.ts +0 -9
- package/front_end/panels/timeline/components/insights/ThirdParties.ts +0 -9
- package/front_end/panels/timeline/components/insights/Viewport.ts +7 -19
- package/front_end/panels/timeline/components/insights/baseInsightComponent.css +5 -0
- package/front_end/panels/timeline/components/insights/insights.ts +2 -0
- package/front_end/panels/timeline/components/interactionBreakdown.css +15 -13
- package/front_end/panels/timeline/components/sidebarInsightsTab.css +50 -48
- package/front_end/panels/timeline/enable-easter-egg.js +7 -3
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/puppeteer/README.chromium +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BluetoothEmulation.d.ts +96 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BluetoothEmulation.js +8 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +87 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/DeviceRequestPrompt.d.ts +2 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/DeviceRequestPrompt.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/DeviceRequestPrompt.js +5 -24
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/DeviceRequestPrompt.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/api.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BluetoothEmulation.d.ts +18 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BluetoothEmulation.js +42 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.js +10 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/DeviceRequestPrompt.d.ts +27 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/DeviceRequestPrompt.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/DeviceRequestPrompt.js +90 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/DeviceRequestPrompt.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.d.ts +4 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js +14 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.js +7 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/util.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Accessibility.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Accessibility.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BluetoothEmulation.d.ts +18 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BluetoothEmulation.js +30 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js +22 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpSession.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/CdpSession.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/DeviceRequestPrompt.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/DeviceRequestPrompt.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/DeviceRequestPrompt.js +4 -6
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/DeviceRequestPrompt.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js +8 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.js +8 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/WebWorker.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/cdp.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js +30 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/BrowserConnector.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts +15 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConnectOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js +2 -13
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/ChromeLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts +5 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.js +17 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/node/LaunchOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +221 -4
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +182 -95
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BluetoothEmulation.d.ts +96 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BluetoothEmulation.js +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +87 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/DeviceRequestPrompt.d.ts +2 -6
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/DeviceRequestPrompt.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/DeviceRequestPrompt.js +4 -22
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/DeviceRequestPrompt.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts +5 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/api.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BluetoothEmulation.d.ts +18 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BluetoothEmulation.js +38 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.js +10 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/DeviceRequestPrompt.d.ts +27 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/DeviceRequestPrompt.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/DeviceRequestPrompt.js +85 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/DeviceRequestPrompt.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts +3 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js +3 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts +4 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.d.ts +4 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js +14 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/core/BrowsingContext.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.js +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/util.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Accessibility.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Accessibility.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BluetoothEmulation.d.ts +18 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BluetoothEmulation.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BluetoothEmulation.js +26 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/BluetoothEmulation.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js +22 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpSession.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/CdpSession.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/DeviceRequestPrompt.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/DeviceRequestPrompt.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/DeviceRequestPrompt.js +2 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/DeviceRequestPrompt.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.js +2 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/FrameManager.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts +2 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js +8 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Page.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.js +8 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/WebWorker.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.d.ts +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.js +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/cdp.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js +31 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/BrowserConnector.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts +15 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConnectOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js +2 -13
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/ChromeLauncher.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts +5 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.js +16 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/node/LaunchOptions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +221 -4
- package/front_end/third_party/puppeteer/package/package.json +4 -4
- package/front_end/third_party/puppeteer/package/src/api/BluetoothEmulation.ts +103 -0
- package/front_end/third_party/puppeteer/package/src/api/Browser.ts +96 -1
- package/front_end/third_party/puppeteer/package/src/api/DeviceRequestPrompt.ts +2 -10
- package/front_end/third_party/puppeteer/package/src/api/Page.ts +6 -0
- package/front_end/third_party/puppeteer/package/src/api/api.ts +1 -0
- package/front_end/third_party/puppeteer/package/src/bidi/BluetoothEmulation.ts +52 -0
- package/front_end/third_party/puppeteer/package/src/bidi/Browser.ts +15 -0
- package/front_end/third_party/puppeteer/package/src/bidi/DeviceRequestPrompt.ts +138 -0
- package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +7 -3
- package/front_end/third_party/puppeteer/package/src/bidi/Page.ts +10 -2
- package/front_end/third_party/puppeteer/package/src/bidi/core/BrowsingContext.ts +30 -2
- package/front_end/third_party/puppeteer/package/src/bidi/util.ts +8 -0
- package/front_end/third_party/puppeteer/package/src/cdp/Accessibility.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/cdp/BluetoothEmulation.ts +47 -0
- package/front_end/third_party/puppeteer/package/src/cdp/Browser.ts +33 -3
- package/front_end/third_party/puppeteer/package/src/cdp/CdpSession.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/cdp/DeviceRequestPrompt.ts +3 -8
- package/front_end/third_party/puppeteer/package/src/cdp/Frame.ts +2 -2
- package/front_end/third_party/puppeteer/package/src/cdp/FrameManager.ts +9 -4
- package/front_end/third_party/puppeteer/package/src/cdp/Page.ts +13 -0
- package/front_end/third_party/puppeteer/package/src/cdp/WebWorker.ts +8 -3
- package/front_end/third_party/puppeteer/package/src/cdp/cdp.ts +1 -0
- package/front_end/third_party/puppeteer/package/src/common/BrowserConnector.ts +45 -1
- package/front_end/third_party/puppeteer/package/src/common/ConnectOptions.ts +20 -0
- package/front_end/third_party/puppeteer/package/src/node/ChromeLauncher.ts +5 -17
- package/front_end/third_party/puppeteer/package/src/node/LaunchOptions.ts +23 -7
- package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
- package/front_end/third_party/puppeteer/package/src/util/version.ts +1 -1
- package/front_end/third_party/puppeteer/puppeteer-tsconfig.json +4 -0
- package/front_end/ui/components/annotations/AnnotationRepository.ts +153 -13
- package/front_end/ui/components/settings/SettingCheckbox.ts +4 -6
- package/front_end/ui/components/snackbars/Snackbars.docs.ts +0 -1
- package/front_end/ui/components/text_editor/AiCodeCompletionTeaserPlaceholder.ts +12 -3
- package/front_end/ui/components/text_editor/AiCodeGenerationProvider.ts +182 -0
- package/front_end/ui/components/text_editor/text_editor.ts +1 -0
- package/front_end/ui/helpers/OpenInNewTab.ts +5 -1
- package/front_end/ui/i18n/i18n.ts +9 -9
- package/front_end/ui/kit/icons/Icon.docs.ts +22 -65
- package/front_end/ui/kit/kit.ts +1 -0
- package/front_end/ui/kit/link/Link.docs.ts +15 -0
- package/front_end/ui/kit/link/Link.ts +151 -0
- package/front_end/ui/kit/link/link.css +27 -0
- package/front_end/ui/legacy/EmptyWidget.ts +6 -0
- package/front_end/ui/legacy/Floaty.ts +442 -0
- package/front_end/ui/legacy/InspectorView.ts +12 -0
- package/front_end/ui/legacy/ReportView.ts +1 -1
- package/front_end/ui/legacy/SelectMenu.docs.ts +0 -1
- package/front_end/ui/legacy/TabbedPane.ts +150 -65
- package/front_end/ui/legacy/Widget.ts +1 -3
- package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +1 -1
- package/front_end/ui/legacy/components/inline_editor/ColorSwatch.ts +36 -36
- package/front_end/ui/legacy/components/object_ui/JavaScriptREPL.ts +22 -37
- package/front_end/ui/legacy/components/object_ui/RemoteObjectPreviewFormatter.ts +31 -1
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +2 -2
- package/front_end/ui/legacy/components/utils/Linkifier.ts +7 -11
- package/front_end/ui/legacy/floaty.css +77 -0
- package/front_end/ui/legacy/legacy.ts +2 -0
- package/front_end/ui/legacy/tabbedPane.css +4 -7
- package/front_end/ui/visual_logging/KnownContextValues.ts +7 -0
- package/inspector_overlay/loadCSS.rollup.js +5 -4
- package/package.json +2 -2
- package/front_end/panels/application/preloading/components/PreloadingMismatchedHeadersGrid.ts +0 -99
- package/front_end/panels/recorder/components/SelectButton.ts +0 -304
- package/front_end/panels/recorder/controllers/controllers.ts +0 -7
- package/front_end/ui/components/chrome_link/ChromeLink.ts +0 -76
- package/front_end/ui/components/chrome_link/chromeLink.css +0 -12
- package/front_end/ui/components/chrome_link/chrome_link.ts +0 -9
- /package/front_end/panels/recorder/components/{selectButton.css → replaySection.css} +0 -0
|
@@ -281,14 +281,39 @@ Find an exhaustive collection of icons currently used in DevTools [here](https:/
|
|
|
281
281
|
|
|
282
282
|
#### Developer guidelines
|
|
283
283
|
|
|
284
|
-
For some frequently used icons
|
|
284
|
+
For some frequently used icons, colors are auto-set in the component. The full list of icons with auto-set colors is:
|
|
285
|
+
|
|
286
|
+
- `warning-filled`
|
|
287
|
+
- `issue-exclamation-filled`
|
|
288
|
+
- `cross-circle`
|
|
289
|
+
- `cross-circle-filled`
|
|
290
|
+
- `issue-cross-filled`
|
|
291
|
+
- `small-status-dot`
|
|
292
|
+
- `issue-text-filled`
|
|
293
|
+
- `large-arrow-right-filled`
|
|
294
|
+
- `code-circle`
|
|
295
|
+
- `file-document`
|
|
296
|
+
- `file-font`
|
|
297
|
+
- `file-script`
|
|
298
|
+
- `file-stylesheet`
|
|
299
|
+
- `file-media`
|
|
300
|
+
|
|
301
|
+
For the definitions, refer to the [icon.css file](https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/front_end/ui/kit/icons/icon.css).
|
|
302
|
+
|
|
303
|
+
The default icon size is at 20x20 pixels. There are predefined classes for other sizes, don't deviate from them:
|
|
304
|
+
|
|
305
|
+
* `.extra-small`: 12x12 pixels
|
|
306
|
+
* `.small`: 14x14 pixels
|
|
307
|
+
* `.medium`: 16x16 pixels
|
|
308
|
+
* `.large`: 18x18 pixels
|
|
309
|
+
* `.extra-large`: 20x20 pixels
|
|
285
310
|
|
|
286
311
|
##### Dos and Don'ts
|
|
287
312
|
|
|
288
313
|
###### Do
|
|
289
314
|
|
|
290
315
|
* Set class and change color in .css files
|
|
291
|
-
* Set one of the predefined classes to change icon size
|
|
316
|
+
* Set one of the predefined classes to change icon size.
|
|
292
317
|
|
|
293
318
|
###### Don't
|
|
294
319
|
|
|
@@ -304,11 +329,12 @@ Usage with lit-html:
|
|
|
304
329
|
html`<devtools-icon name=${'some-icon-name'}></devtools-icon>`;
|
|
305
330
|
```
|
|
306
331
|
|
|
307
|
-
|
|
332
|
+
### Resources
|
|
308
333
|
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
334
|
+
* [`devtools-icon`](https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/front_end/ui/kit/icons/Icon.ts)
|
|
335
|
+
* [Component Documentation Example](https://chromedevtools.github.io/devtools-frontend/#Icon)
|
|
336
|
+
* [Icon Figma](https://www.figma.com/design/A5iQBBNAe5zPFpJvUzUgW8/Chrome-DevTools-Design-Kit?node-id=4323-3772)
|
|
337
|
+
* [Greenlines](http://go/chrome-devtools:icons-greenlines)
|
|
312
338
|
|
|
313
339
|
## Context menus
|
|
314
340
|
|
|
@@ -604,8 +630,8 @@ html`<devtools-card heading="Card with rich heading">
|
|
|
604
630
|
### Resources
|
|
605
631
|
|
|
606
632
|
* [`devtools-card`](https://source.chromium.org/chromium/chromium/src/+/main:third_party/devtools-frontend/src/front_end/ui/kit/cards/Card.ts)
|
|
607
|
-
* [Component Documentation Example](https://chromedevtools.github.io/devtools-frontend
|
|
633
|
+
* [Component Documentation Example](https://chromedevtools.github.io/devtools-frontend/#Card)
|
|
608
634
|
|
|
609
635
|
* [Cards Figma](https://www.figma.com/design/A5iQBBNAe5zPFpJvUzUgW8/Chrome-DevTools-Design-Kit?node-id=3456-939)
|
|
610
636
|
|
|
611
|
-
* [Greenlines](go/chrome-devtools:cards-greenlines)
|
|
637
|
+
* [Greenlines](http:/go/chrome-devtools:cards-greenlines)
|
package/eslint.config.mjs
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
// Copyright 2020 The Chromium Authors
|
|
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
|
+
import * as path from 'node:path';
|
|
5
|
+
|
|
6
|
+
import {writeIfChanged} from '../../scripts/build/ninja/write-if-changed.js';
|
|
5
7
|
|
|
6
|
-
const {writeIfChanged} = require('../../scripts/build/ninja/write-if-changed.js');
|
|
7
8
|
const [, , buildTimestamp, targetGenDir, targetName, ...imageSources] = process.argv;
|
|
8
9
|
|
|
9
10
|
/**
|
|
@@ -15,7 +16,7 @@ function generateCSSVariableDefinition(fileName) {
|
|
|
15
16
|
// We have to remove the `src/` part from any SVG file names for the CSS variables, while
|
|
16
17
|
// we still use the full URL for the meta.url import. That's because the rollup-plugin-import-meta-assets
|
|
17
18
|
// rewrites the image URLs to the new location, but doesn't modify the generated CSS variable name
|
|
18
|
-
fileName.replace('src
|
|
19
|
+
fileName.replace('src/', '').replace(path.extname(fileName), '')}', 'url(\\"' + new URL('./${
|
|
19
20
|
fileName}', import.meta.url).toString() + '\\")');`;
|
|
20
21
|
}
|
|
21
22
|
|
|
@@ -45,4 +46,7 @@ const tsconfigContent = `{
|
|
|
45
46
|
}
|
|
46
47
|
`;
|
|
47
48
|
|
|
48
|
-
writeIfChanged(
|
|
49
|
+
writeIfChanged(
|
|
50
|
+
path.join(targetGenDir, `${targetName}-tsconfig.json`),
|
|
51
|
+
tsconfigContent,
|
|
52
|
+
);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
<svg width="14" height="16" viewBox="0 0 14 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0_1320_25512)">
|
|
3
|
+
<path d="M7 12.6319C6.94299 12.6319 6.89549 12.6129 6.85749 12.5749C6.81948 12.5369 6.79098 12.4894 6.77198 12.4324C6.61997 11.8338 6.38245 11.259 6.05942 10.708C5.74589 10.1474 5.37536 9.64862 4.94782 9.21158C4.51078 8.77454 4.01199 8.39926 3.45144 8.08573C2.90039 7.7722 2.32559 7.53943 1.72704 7.38742C1.67003 7.36842 1.62253 7.33992 1.58452 7.30191C1.54652 7.26391 1.52752 7.2164 1.52752 7.1594C1.52752 7.10239 1.54652 7.05489 1.58452 7.01689C1.62253 6.97888 1.67003 6.95038 1.72704 6.93138C2.32559 6.77937 2.90039 6.5466 3.45144 6.23307C4.00249 5.91954 4.50128 5.54426 4.94782 5.10722C5.38486 4.67968 5.76014 4.18564 6.07367 3.62509C6.3872 3.06454 6.61997 2.48499 6.77198 1.88644C6.79098 1.82943 6.81948 1.78193 6.85749 1.74392C6.89549 1.70592 6.94299 1.68692 7 1.68692C7.057 1.68692 7.10451 1.70592 7.14251 1.74392C7.18052 1.78193 7.20902 1.82943 7.22802 1.88644C7.38003 2.48499 7.6128 3.06454 7.92633 3.62509C8.23986 4.17614 8.61514 4.67018 9.05218 5.10722C9.48922 5.54426 9.98326 5.91954 10.5343 6.23307C11.0949 6.5466 11.6744 6.77937 12.273 6.93138C12.33 6.95038 12.3775 6.97888 12.4155 7.01689C12.4535 7.05489 12.4725 7.10239 12.4725 7.1594C12.4725 7.2164 12.4535 7.26391 12.4155 7.30191C12.3775 7.33992 12.33 7.36842 12.273 7.38742C11.6744 7.53943 11.0949 7.7722 10.5343 8.08573C9.97376 8.39926 9.47972 8.77454 9.05218 9.21158C8.61514 9.65812 8.23986 10.1569 7.92633 10.708C7.6128 11.259 7.38003 11.8338 7.22802 12.4324C7.20902 12.4894 7.18052 12.5369 7.14251 12.5749C7.10451 12.6129 7.057 12.6319 7 12.6319Z" fill="#0B57D0"/>
|
|
4
|
+
</g>
|
|
5
|
+
<defs>
|
|
6
|
+
<clipPath id="clip0_1320_25512">
|
|
7
|
+
<rect width="14" height="15.1442" fill="white"/>
|
|
8
|
+
</clipPath>
|
|
9
|
+
</defs>
|
|
10
|
+
</svg>
|
|
@@ -246,17 +246,29 @@ export interface SettingsBackingStore {
|
|
|
246
246
|
clear(): void;
|
|
247
247
|
}
|
|
248
248
|
|
|
249
|
-
export
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
249
|
+
export class InMemoryStorage implements SettingsBackingStore {
|
|
250
|
+
#store = new Map();
|
|
251
|
+
|
|
252
|
+
register(_setting: string): void {
|
|
253
|
+
}
|
|
254
|
+
set(key: string, value: string): void {
|
|
255
|
+
this.#store.set(key, value);
|
|
256
|
+
}
|
|
257
|
+
get(key: string): Promise<string> {
|
|
258
|
+
return this.#store.get(key);
|
|
259
|
+
}
|
|
260
|
+
remove(key: string): void {
|
|
261
|
+
this.#store.delete(key);
|
|
262
|
+
}
|
|
263
|
+
clear(): void {
|
|
264
|
+
this.#store.clear();
|
|
265
|
+
}
|
|
266
|
+
}
|
|
256
267
|
|
|
257
268
|
export class SettingsStorage {
|
|
258
269
|
constructor(
|
|
259
|
-
private object: Record<string, string>,
|
|
270
|
+
private object: Record<string, string>,
|
|
271
|
+
private readonly backingStore: SettingsBackingStore = new InMemoryStorage(),
|
|
260
272
|
private readonly storagePrefix = '') {
|
|
261
273
|
}
|
|
262
274
|
|
|
@@ -529,7 +529,9 @@ export enum Action {
|
|
|
529
529
|
InsightTeaserGenerationErrored = 194,
|
|
530
530
|
AiCodeGenerationSuggestionDisplayed = 195,
|
|
531
531
|
AiCodeGenerationSuggestionAccepted = 196,
|
|
532
|
-
|
|
532
|
+
InsightTeaserModelDownloadStarted = 197,
|
|
533
|
+
InsightTeaserModelDownloadCompleted = 198,
|
|
534
|
+
MAX_VALUE = 199,
|
|
533
535
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
534
536
|
}
|
|
535
537
|
|
|
@@ -2,15 +2,18 @@
|
|
|
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
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
import glob from 'glob';
|
|
6
|
+
import * as path from 'node:path';
|
|
7
|
+
import yargs from 'yargs';
|
|
8
|
+
import {hideBin} from 'yargs/helpers';
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
import {writeIfChanged} from '../../../scripts/build/ninja/write-if-changed.js';
|
|
11
|
+
import {bakePlaceholders} from '../../../third_party/i18n/bake-ctc-to-lhl.js';
|
|
12
|
+
import {
|
|
13
|
+
collectAllStringsInDir,
|
|
14
|
+
createPsuedoLocaleStrings,
|
|
15
|
+
IGNORED_PATH_COMPONENTS,
|
|
16
|
+
} from '../../../third_party/i18n/collect-strings.js';
|
|
14
17
|
|
|
15
18
|
/** @typedef {import('../../../third_party/i18n/bake-ctc-to-lhl.js').CtcMessage} CtcMessage */
|
|
16
19
|
|
|
@@ -39,7 +42,9 @@ function convertCtcToLhLAndSave(outputDirectory, locale, strings) {
|
|
|
39
42
|
|
|
40
43
|
/** @type {Record<string, CtcMessage>} */
|
|
41
44
|
const sortedCtcStrings = {};
|
|
42
|
-
const sortedEntries = Object.entries(strings).sort(
|
|
45
|
+
const sortedEntries = Object.entries(strings).sort(
|
|
46
|
+
([keyA], [keyB]) => keyA.localeCompare(keyB),
|
|
47
|
+
);
|
|
43
48
|
for (const [key, defn] of sortedEntries) {
|
|
44
49
|
sortedCtcStrings[key] = defn;
|
|
45
50
|
}
|
|
@@ -73,7 +78,11 @@ for (const directory of inputDirectories) {
|
|
|
73
78
|
const outputDirectory = yargsObject['output-directory'];
|
|
74
79
|
convertCtcToLhLAndSave(outputDirectory, 'en-US', collectedStrings);
|
|
75
80
|
if (yargsObject['include-en-xl']) {
|
|
76
|
-
convertCtcToLhLAndSave(
|
|
81
|
+
convertCtcToLhLAndSave(
|
|
82
|
+
outputDirectory,
|
|
83
|
+
'en-XL',
|
|
84
|
+
createPsuedoLocaleStrings(collectedStrings),
|
|
85
|
+
);
|
|
77
86
|
}
|
|
78
87
|
|
|
79
88
|
// Write the depfile. This is necessary to properly rebuild en-US.json/en-XL.json
|
|
@@ -2,11 +2,11 @@
|
|
|
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
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
import * as path from 'node:path';
|
|
6
|
+
import yargs from 'yargs';
|
|
7
|
+
import {hideBin} from 'yargs/helpers';
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
import {writeIfChanged} from '../../../scripts/build/ninja/write-if-changed.js';
|
|
10
10
|
|
|
11
11
|
const yargsObject = yargs(hideBin(process.argv))
|
|
12
12
|
.option('target-gen-dir', {
|
|
@@ -638,6 +638,7 @@ export class TargetBase {
|
|
|
638
638
|
|
|
639
639
|
/** These are not logged as console.error */
|
|
640
640
|
const IGNORED_ERRORS = new Set<CDPErrorStatus>([
|
|
641
|
+
CDPErrorStatus.DEVTOOLS_REHYDRATION_ERROR,
|
|
641
642
|
CDPErrorStatus.DEVTOOLS_STUB_ERROR,
|
|
642
643
|
CDPErrorStatus.SERVER_ERROR,
|
|
643
644
|
CDPErrorStatus.SESSION_NOT_FOUND,
|
|
@@ -694,7 +695,10 @@ class AgentPrototype {
|
|
|
694
695
|
if ('result' in response) {
|
|
695
696
|
return {...response.result, getError: () => undefined};
|
|
696
697
|
}
|
|
697
|
-
return {
|
|
698
|
+
return {
|
|
699
|
+
getError: () => `Command ${method} returned neither result nor an error, params: ${
|
|
700
|
+
JSON.stringify(request, undefined, 2)}`,
|
|
701
|
+
};
|
|
698
702
|
});
|
|
699
703
|
}
|
|
700
704
|
}
|
|
@@ -478,16 +478,6 @@ interface AllowPopoverForcing {
|
|
|
478
478
|
enabled: boolean;
|
|
479
479
|
}
|
|
480
480
|
|
|
481
|
-
interface AiSubmenuPrompts {
|
|
482
|
-
enabled: boolean;
|
|
483
|
-
featureName?: string;
|
|
484
|
-
}
|
|
485
|
-
|
|
486
|
-
interface AiDebugWithAi {
|
|
487
|
-
enabled: boolean;
|
|
488
|
-
featureName?: string;
|
|
489
|
-
}
|
|
490
|
-
|
|
491
481
|
interface GlobalAiButton {
|
|
492
482
|
enabled: boolean;
|
|
493
483
|
promotionEnabled: boolean;
|
|
@@ -561,7 +551,6 @@ export type HostConfig = Platform.TypeScriptUtilities.RecursivePartial<{
|
|
|
561
551
|
devToolsFreestyler: HostConfigFreestyler,
|
|
562
552
|
devToolsGreenDevUi: HostConfigGreenDevUi,
|
|
563
553
|
devToolsAiAssistanceNetworkAgent: HostConfigAiAssistanceNetworkAgent,
|
|
564
|
-
devToolsAiDebugWithAi: AiDebugWithAi,
|
|
565
554
|
devToolsAiAssistanceFileAgent: HostConfigAiAssistanceFileAgent,
|
|
566
555
|
devToolsAiAssistancePerformanceAgent: HostConfigAiAssistancePerformanceAgent,
|
|
567
556
|
devToolsAiCodeCompletion: HostConfigAiCodeCompletion,
|
|
@@ -580,7 +569,6 @@ export type HostConfig = Platform.TypeScriptUtilities.RecursivePartial<{
|
|
|
580
569
|
thirdPartyCookieControls: HostConfigThirdPartyCookieControls,
|
|
581
570
|
devToolsAiGeneratedTimelineLabels: AiGeneratedTimelineLabels,
|
|
582
571
|
devToolsAllowPopoverForcing: AllowPopoverForcing,
|
|
583
|
-
devToolsAiSubmenuPrompts: AiSubmenuPrompts,
|
|
584
572
|
devToolsGlobalAiButton: GlobalAiButton,
|
|
585
573
|
devToolsGdpProfiles: GdpProfiles,
|
|
586
574
|
devToolsGdpProfilesAvailability: GdpProfilesAvailability,
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
33
33
|
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
34
34
|
*/
|
|
35
|
+
/* eslint-disable @devtools/no-adopted-style-sheets */
|
|
35
36
|
|
|
36
37
|
import type * as ProtocolProxyApi from '../../generated/protocol-proxy-api.js';
|
|
37
38
|
import * as Protocol from '../../generated/protocol.js';
|
|
@@ -160,6 +161,7 @@ export class DOMNode {
|
|
|
160
161
|
*/
|
|
161
162
|
detached = false;
|
|
162
163
|
#retainedNodes?: Set<Protocol.DOM.BackendNodeId>;
|
|
164
|
+
#adoptedStyleSheets: AdoptedStyleSheet[] = [];
|
|
163
165
|
|
|
164
166
|
constructor(domModel: DOMModel) {
|
|
165
167
|
this.#domModel = domModel;
|
|
@@ -206,6 +208,10 @@ export class DOMNode {
|
|
|
206
208
|
this.setAttributesPayload(payload.attributes);
|
|
207
209
|
}
|
|
208
210
|
|
|
211
|
+
if (payload.adoptedStyleSheets) {
|
|
212
|
+
this.#adoptedStyleSheets = this.toAdoptedStyleSheets(payload.adoptedStyleSheets);
|
|
213
|
+
}
|
|
214
|
+
|
|
209
215
|
this.childNodeCountInternal = payload.childNodeCount || 0;
|
|
210
216
|
if (payload.shadowRoots) {
|
|
211
217
|
for (let i = 0; i < payload.shadowRoots.length; ++i) {
|
|
@@ -827,6 +833,19 @@ export class DOMNode {
|
|
|
827
833
|
}
|
|
828
834
|
}
|
|
829
835
|
|
|
836
|
+
private toAdoptedStyleSheets(ids: Protocol.DOM.StyleSheetId[]): AdoptedStyleSheet[] {
|
|
837
|
+
return ids.map(id => (new AdoptedStyleSheet(id, this.#domModel.cssModel())));
|
|
838
|
+
}
|
|
839
|
+
|
|
840
|
+
setAdoptedStyleSheets(ids: Protocol.DOM.StyleSheetId[]): void {
|
|
841
|
+
this.#adoptedStyleSheets = this.toAdoptedStyleSheets(ids);
|
|
842
|
+
this.#domModel.dispatchEventToListeners(Events.AdoptedStyleSheetsModified, this);
|
|
843
|
+
}
|
|
844
|
+
|
|
845
|
+
get adoptedStyleSheetsForNode(): AdoptedStyleSheet[] {
|
|
846
|
+
return this.#adoptedStyleSheets;
|
|
847
|
+
}
|
|
848
|
+
|
|
830
849
|
setDistributedNodePayloads(payloads: Protocol.DOM.BackendNode[]): void {
|
|
831
850
|
this.#distributedNodes = [];
|
|
832
851
|
for (const payload of payloads) {
|
|
@@ -1206,6 +1225,11 @@ export class DOMDocument extends DOMNode {
|
|
|
1206
1225
|
}
|
|
1207
1226
|
}
|
|
1208
1227
|
|
|
1228
|
+
export class AdoptedStyleSheet {
|
|
1229
|
+
constructor(readonly id: Protocol.DOM.StyleSheetId, readonly cssModel: CSSModel) {
|
|
1230
|
+
}
|
|
1231
|
+
}
|
|
1232
|
+
|
|
1209
1233
|
export class DOMModel extends SDKModel<EventTypes> {
|
|
1210
1234
|
agent: ProtocolProxyApi.DOMApi;
|
|
1211
1235
|
idToDOMNode = new Map<Protocol.DOM.NodeId, DOMNode>();
|
|
@@ -1571,6 +1595,14 @@ export class DOMModel extends SDKModel<EventTypes> {
|
|
|
1571
1595
|
this.scheduleMutationEvent(node);
|
|
1572
1596
|
}
|
|
1573
1597
|
|
|
1598
|
+
adoptedStyleSheetsModified(parentId: Protocol.DOM.NodeId, styleSheets: Protocol.DOM.StyleSheetId[]): void {
|
|
1599
|
+
const parent = this.idToDOMNode.get(parentId);
|
|
1600
|
+
if (!parent) {
|
|
1601
|
+
return;
|
|
1602
|
+
}
|
|
1603
|
+
parent.setAdoptedStyleSheets(styleSheets);
|
|
1604
|
+
}
|
|
1605
|
+
|
|
1574
1606
|
scrollableFlagUpdated(nodeId: Protocol.DOM.NodeId, isScrollable: boolean): void {
|
|
1575
1607
|
const node = this.nodeForId(nodeId);
|
|
1576
1608
|
if (!node || node.isScrollable() === isScrollable) {
|
|
@@ -1776,6 +1808,7 @@ export enum Events {
|
|
|
1776
1808
|
TopLayerElementsChanged = 'TopLayerElementsChanged',
|
|
1777
1809
|
ScrollableFlagUpdated = 'ScrollableFlagUpdated',
|
|
1778
1810
|
AffectedByStartingStylesFlagUpdated = 'AffectedByStartingStylesFlagUpdated',
|
|
1811
|
+
AdoptedStyleSheetsModified = 'AdoptedStyleSheetsModified',
|
|
1779
1812
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
1780
1813
|
}
|
|
1781
1814
|
|
|
@@ -1793,6 +1826,7 @@ export interface EventTypes {
|
|
|
1793
1826
|
[Events.TopLayerElementsChanged]: void;
|
|
1794
1827
|
[Events.ScrollableFlagUpdated]: {node: DOMNode};
|
|
1795
1828
|
[Events.AffectedByStartingStylesFlagUpdated]: {node: DOMNode};
|
|
1829
|
+
[Events.AdoptedStyleSheetsModified]: DOMNode;
|
|
1796
1830
|
}
|
|
1797
1831
|
|
|
1798
1832
|
class DOMDispatcher implements ProtocolProxyApi.DOMDispatcher {
|
|
@@ -1800,9 +1834,6 @@ class DOMDispatcher implements ProtocolProxyApi.DOMDispatcher {
|
|
|
1800
1834
|
constructor(domModel: DOMModel) {
|
|
1801
1835
|
this.#domModel = domModel;
|
|
1802
1836
|
}
|
|
1803
|
-
adoptedStyleSheetsModified(_params: Protocol.DOM.AdoptedStyleSheetsModifiedEvent): void {
|
|
1804
|
-
// TODO: implementation
|
|
1805
|
-
}
|
|
1806
1837
|
|
|
1807
1838
|
documentUpdated(): void {
|
|
1808
1839
|
this.#domModel.documentUpdated();
|
|
@@ -1816,6 +1847,10 @@ class DOMDispatcher implements ProtocolProxyApi.DOMDispatcher {
|
|
|
1816
1847
|
this.#domModel.attributeRemoved(nodeId, name);
|
|
1817
1848
|
}
|
|
1818
1849
|
|
|
1850
|
+
adoptedStyleSheetsModified({nodeId, adoptedStyleSheets}: Protocol.DOM.AdoptedStyleSheetsModifiedEvent): void {
|
|
1851
|
+
this.#domModel.adoptedStyleSheetsModified(nodeId, adoptedStyleSheets);
|
|
1852
|
+
}
|
|
1853
|
+
|
|
1819
1854
|
inlineStyleInvalidated({nodeIds}: Protocol.DOM.InlineStyleInvalidatedEvent): void {
|
|
1820
1855
|
this.#domModel.inlineStyleInvalidated(nodeIds);
|
|
1821
1856
|
}
|
|
@@ -942,10 +942,15 @@ export class DebuggerModel extends SDKModel<EventTypes> {
|
|
|
942
942
|
* Important: This iterator will not yield the "synchronous" part of the stack trace, only the async parent chain.
|
|
943
943
|
*/
|
|
944
944
|
async *
|
|
945
|
-
iterateAsyncParents(
|
|
945
|
+
iterateAsyncParents(
|
|
946
|
+
stackTraceOrPausedDetails: Protocol.Runtime.StackTrace|
|
|
947
|
+
Pick<DebuggerPausedDetails, 'asyncStackTrace'|'asyncStackTraceId'>):
|
|
946
948
|
AsyncGenerator<{stackTrace: Protocol.Runtime.StackTrace, target: Target}> {
|
|
947
949
|
// We make `DebuggerPausedDetails` look like a stack trace. We are only interested in `parent` and `parentId` in any case.
|
|
948
|
-
|
|
950
|
+
const isPausedDetails = (details: typeof stackTraceOrPausedDetails):
|
|
951
|
+
details is Pick<DebuggerPausedDetails, 'asyncStackTrace'|'asyncStackTraceId'> =>
|
|
952
|
+
!('parent' in details) && !('parentId' in details);
|
|
953
|
+
let stackTrace: Protocol.Runtime.StackTrace = isPausedDetails(stackTraceOrPausedDetails) ?
|
|
949
954
|
{
|
|
950
955
|
callFrames: [],
|
|
951
956
|
parent: stackTraceOrPausedDetails.asyncStackTrace,
|
|
@@ -1507,8 +1512,8 @@ export class DebuggerPausedDetails {
|
|
|
1507
1512
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1508
1513
|
auxData: Record<string, any>|undefined;
|
|
1509
1514
|
breakpointIds: string[];
|
|
1510
|
-
asyncStackTrace
|
|
1511
|
-
asyncStackTraceId
|
|
1515
|
+
asyncStackTrace?: Protocol.Runtime.StackTrace;
|
|
1516
|
+
asyncStackTraceId?: Protocol.Runtime.StackTraceId;
|
|
1512
1517
|
constructor(
|
|
1513
1518
|
debuggerModel: DebuggerModel,
|
|
1514
1519
|
callFrames: Protocol.Debugger.CallFrame[],
|
|
@@ -49,6 +49,13 @@ export class IsolateManager extends Common.ObjectWrapper.ObjectWrapper<EventType
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
unobserveIsolates(observer: Observer): void {
|
|
53
|
+
this.#observers.delete(observer);
|
|
54
|
+
if (!this.#observers.size) {
|
|
55
|
+
this.#pollId++;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
52
59
|
modelAdded(model: RuntimeModel): void {
|
|
53
60
|
void this.#modelAdded(model);
|
|
54
61
|
}
|
|
@@ -98,14 +98,14 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
|
|
|
98
98
|
#queuedLoads: LoadQueueEntry[] = [];
|
|
99
99
|
readonly #loadOverride: ((arg0: string) => Promise<{
|
|
100
100
|
success: boolean,
|
|
101
|
-
content: string
|
|
101
|
+
content: string|Uint8Array<ArrayBuffer>,
|
|
102
102
|
errorDescription: Host.ResourceLoader.LoadErrorDescription,
|
|
103
103
|
}>)|null;
|
|
104
104
|
constructor(
|
|
105
105
|
targetManager: TargetManager, settings: Common.Settings.Settings, userAgentProvider: UserAgentProvider,
|
|
106
106
|
loadOverride: ((arg0: string) => Promise<{
|
|
107
107
|
success: boolean,
|
|
108
|
-
content: string
|
|
108
|
+
content: string|Uint8Array<ArrayBuffer>,
|
|
109
109
|
errorDescription: Host.ResourceLoader.LoadErrorDescription,
|
|
110
110
|
}>)|null,
|
|
111
111
|
maxConcurrentLoads = 500) {
|
|
@@ -123,7 +123,7 @@ export class PageResourceLoader extends Common.ObjectWrapper.ObjectWrapper<Event
|
|
|
123
123
|
forceNew: boolean,
|
|
124
124
|
loadOverride: (null|((arg0: string) => Promise<{
|
|
125
125
|
success: boolean,
|
|
126
|
-
content: string
|
|
126
|
+
content: string|Uint8Array<ArrayBuffer>,
|
|
127
127
|
errorDescription: Host.ResourceLoader.LoadErrorDescription,
|
|
128
128
|
}>)),
|
|
129
129
|
targetManager?: TargetManager,
|
|
@@ -27,7 +27,7 @@ import type * as Protocol from '../../generated/protocol.js';
|
|
|
27
27
|
import * as Common from '../common/common.js';
|
|
28
28
|
import * as i18n from '../i18n/i18n.js';
|
|
29
29
|
import type * as Platform from '../platform/platform.js';
|
|
30
|
-
import
|
|
30
|
+
import * as ProtocolClient from '../protocol_client/protocol_client.js';
|
|
31
31
|
import * as Root from '../root/root.js';
|
|
32
32
|
|
|
33
33
|
import * as EnhancedTraces from './EnhancedTracesParser.js';
|
|
@@ -325,7 +325,10 @@ export class RehydratingSession extends RehydratingSessionBase {
|
|
|
325
325
|
default:
|
|
326
326
|
this.sendMessageToFrontend({
|
|
327
327
|
id: data.id,
|
|
328
|
-
|
|
328
|
+
error: {
|
|
329
|
+
message: `Command ${data.method} not implemented in RehydratingSession.`,
|
|
330
|
+
code: ProtocolClient.CDPConnection.CDPErrorStatus.DEVTOOLS_STUB_ERROR,
|
|
331
|
+
}
|
|
329
332
|
});
|
|
330
333
|
break;
|
|
331
334
|
}
|
|
@@ -105,7 +105,6 @@ export class ResourceTreeModel extends SDKModel<EventTypes> {
|
|
|
105
105
|
return null;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
// TODO(crbug.com/445966299): Refactor to use `storageAgent().invoke_getStorageKey()` instead.
|
|
109
108
|
const response = await this.storageAgent.invoke_getStorageKey({frameId});
|
|
110
109
|
if (response.getError() === 'Frame tree node for given frame not found') {
|
|
111
110
|
return null;
|
|
@@ -124,11 +124,30 @@ const UIStrings = {
|
|
|
124
124
|
* @description Notification shown to the user whenever DevTools receives an external request.
|
|
125
125
|
*/
|
|
126
126
|
externalRequestReceived: '`DevTools` received an external request',
|
|
127
|
+
/**
|
|
128
|
+
* @description Notification shown to the user whenever DevTools has finished downloading a local AI model.
|
|
129
|
+
*/
|
|
130
|
+
aiModelDownloaded: 'AI model downloaded',
|
|
127
131
|
} as const;
|
|
128
132
|
const str_ = i18n.i18n.registerUIStrings('entrypoints/main/MainImpl.ts', UIStrings);
|
|
129
133
|
const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
130
134
|
|
|
131
135
|
let loadedPanelCommonModule: typeof PanelCommon|undefined;
|
|
136
|
+
|
|
137
|
+
const WINDOW_LOCAL_STORAGE: Common.Settings.SettingsBackingStore = {
|
|
138
|
+
register(_setting: string): void{},
|
|
139
|
+
async get(setting: string): Promise<string> {
|
|
140
|
+
return window.localStorage.getItem(setting) as unknown as string;
|
|
141
|
+
},
|
|
142
|
+
set(setting: string, value: string): void {
|
|
143
|
+
window.localStorage.setItem(setting, value);
|
|
144
|
+
},
|
|
145
|
+
remove(setting: string): void {
|
|
146
|
+
window.localStorage.removeItem(setting);
|
|
147
|
+
},
|
|
148
|
+
clear: () => window.localStorage.clear(),
|
|
149
|
+
};
|
|
150
|
+
|
|
132
151
|
export class MainImpl {
|
|
133
152
|
#readyForTestPromise = Promise.withResolvers<void>();
|
|
134
153
|
#veStartPromise!: Promise<void>;
|
|
@@ -271,15 +290,11 @@ export class MainImpl {
|
|
|
271
290
|
storagePrefix = '__bundled__';
|
|
272
291
|
}
|
|
273
292
|
|
|
274
|
-
let localStorage;
|
|
293
|
+
let localStorage: Common.Settings.SettingsStorage;
|
|
275
294
|
if (!Host.InspectorFrontendHost.isUnderTest() && window.localStorage) {
|
|
276
|
-
|
|
277
|
-
...Common.Settings.NOOP_STORAGE,
|
|
278
|
-
clear: () => window.localStorage.clear(),
|
|
279
|
-
};
|
|
280
|
-
localStorage = new Common.Settings.SettingsStorage(window.localStorage, localbackingStore, storagePrefix);
|
|
295
|
+
localStorage = new Common.Settings.SettingsStorage(window.localStorage, WINDOW_LOCAL_STORAGE, storagePrefix);
|
|
281
296
|
} else {
|
|
282
|
-
localStorage = new Common.Settings.SettingsStorage({},
|
|
297
|
+
localStorage = new Common.Settings.SettingsStorage({}, undefined, storagePrefix);
|
|
283
298
|
}
|
|
284
299
|
|
|
285
300
|
const hostUnsyncedStorage: Common.Settings.SettingsBackingStore = {
|
|
@@ -505,7 +520,10 @@ export class MainImpl {
|
|
|
505
520
|
LiveMetrics.LiveMetrics.instance();
|
|
506
521
|
CrUXManager.CrUXManager.instance();
|
|
507
522
|
|
|
508
|
-
AiAssistanceModel.BuiltInAi.BuiltInAi.instance();
|
|
523
|
+
const builtInAi = AiAssistanceModel.BuiltInAi.BuiltInAi.instance();
|
|
524
|
+
builtInAi.addEventListener(
|
|
525
|
+
AiAssistanceModel.BuiltInAi.Events.DOWNLOADED_AND_SESSION_CREATED,
|
|
526
|
+
() => Snackbar.Snackbar.Snackbar.show({message: i18nString(UIStrings.aiModelDownloaded)}));
|
|
509
527
|
|
|
510
528
|
new PauseListener();
|
|
511
529
|
|
|
@@ -809,8 +827,8 @@ export class MainMenuItem implements UI.Toolbar.Provider {
|
|
|
809
827
|
readonly #item: UI.Toolbar.ToolbarMenuButton;
|
|
810
828
|
constructor() {
|
|
811
829
|
this.#item = new UI.Toolbar.ToolbarMenuButton(
|
|
812
|
-
this.#handleContextMenu.bind(this), /* isIconDropdown */ true,
|
|
813
|
-
'dots-vertical');
|
|
830
|
+
this.#handleContextMenu.bind(this), /* isIconDropdown */ true,
|
|
831
|
+
/* useSoftMenu */ true, 'main-menu', 'dots-vertical');
|
|
814
832
|
this.#item.element.classList.add('main-menu');
|
|
815
833
|
this.#item.setTitle(i18nString(UIStrings.customizeAndControlDevtools));
|
|
816
834
|
}
|