chrome-devtools-frontend 1.0.1512147 → 1.0.1513662
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/cookbook/release_management.md +15 -13
- package/docs/get_the_code.md +114 -35
- package/front_end/Images/src/ai-explorer-badge.svg +114 -0
- package/front_end/Images/src/code-whisperer-badge.svg +166 -0
- package/front_end/Images/src/devtools-user-badge.svg +129 -0
- package/front_end/Images/src/dom-detective-badge.svg +136 -0
- package/front_end/Images/src/speedster-badge.svg +166 -0
- package/front_end/core/common/Color.ts +40 -44
- package/front_end/core/common/Console.ts +4 -4
- package/front_end/core/common/ParsedURL.ts +14 -14
- package/front_end/core/common/ResourceType.ts +20 -20
- package/front_end/core/common/SegmentedRange.ts +13 -14
- package/front_end/core/common/Settings.ts +4 -4
- package/front_end/core/common/StringOutputStream.ts +4 -4
- package/front_end/core/host/GdpClient.ts +76 -2
- package/front_end/core/host/InspectorFrontendHost.ts +4 -1
- package/front_end/core/host/InspectorFrontendHostAPI.ts +2 -0
- package/front_end/core/host/ResourceLoader.ts +2 -2
- package/front_end/core/host/UserMetrics.ts +0 -2
- package/front_end/core/i18n/NumberFormatter.ts +7 -0
- package/front_end/core/protocol_client/InspectorBackend.ts +9 -9
- package/front_end/core/root/Runtime.ts +5 -2
- package/front_end/core/sdk/AccessibilityModel.ts +48 -48
- package/front_end/core/sdk/AnimationModel.ts +78 -79
- package/front_end/core/sdk/CPUProfilerModel.ts +5 -5
- package/front_end/core/sdk/CPUThrottlingManager.ts +17 -17
- package/front_end/core/sdk/CSSMatchedStyles.ts +44 -44
- package/front_end/core/sdk/CSSMedia.ts +22 -22
- package/front_end/core/sdk/CSSModel.ts +4 -4
- package/front_end/core/sdk/CSSProperty.ts +9 -9
- package/front_end/core/sdk/CSSPropertyParser.ts +1 -2
- package/front_end/core/sdk/CSSRule.ts +3 -3
- package/front_end/core/sdk/CSSStyleDeclaration.ts +27 -28
- package/front_end/core/sdk/CSSStyleSheetHeader.ts +13 -13
- package/front_end/core/sdk/CategorizedBreakpoint.ts +4 -4
- package/front_end/core/sdk/ChildTargetManager.ts +6 -6
- package/front_end/core/sdk/CompilerSourceMappingContentProvider.ts +4 -4
- package/front_end/core/sdk/ConsoleModel.ts +24 -24
- package/front_end/core/sdk/Cookie.ts +16 -16
- package/front_end/core/sdk/CookieParser.ts +6 -6
- package/front_end/core/sdk/DOMDebuggerModel.ts +88 -89
- package/front_end/core/sdk/DOMModel.ts +113 -113
- package/front_end/core/sdk/DebuggerModel.ts +102 -103
- package/front_end/core/sdk/EmulationModel.ts +6 -6
- package/front_end/core/sdk/EventBreakpointsModel.ts +5 -5
- package/front_end/core/sdk/HeapProfilerModel.ts +5 -5
- package/front_end/core/sdk/IsolateManager.ts +26 -26
- package/front_end/core/sdk/LayerTreeBase.ts +29 -30
- package/front_end/core/sdk/OverlayModel.ts +6 -6
- package/front_end/core/sdk/Resource.ts +43 -43
- package/front_end/core/sdk/ResourceTreeModel.ts +58 -61
- package/front_end/core/sdk/RuntimeModel.ts +12 -13
- package/front_end/core/sdk/SDKModel.ts +3 -3
- package/front_end/core/sdk/Script.ts +17 -17
- package/front_end/core/sdk/SecurityOriginManager.ts +14 -14
- package/front_end/core/sdk/ServerTiming.ts +2 -2
- package/front_end/core/sdk/ServiceWorkerCacheModel.ts +15 -15
- package/front_end/core/sdk/ServiceWorkerManager.ts +19 -24
- package/front_end/core/sdk/SourceMap.ts +10 -10
- package/front_end/core/sdk/StorageKeyManager.ts +12 -12
- package/front_end/core/sdk/Target.ts +33 -34
- package/front_end/core/sdk/TargetManager.ts +20 -20
- package/front_end/entrypoints/formatter_worker/AcornTokenizer.ts +8 -8
- package/front_end/entrypoints/formatter_worker/HTMLFormatter.ts +7 -7
- package/front_end/entrypoints/heap_snapshot_worker/AllocationProfile.ts +7 -7
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +24 -24
- package/front_end/entrypoints/main/GlobalAiButton.ts +3 -3
- package/front_end/entrypoints/main/MainImpl.ts +16 -14
- package/front_end/entrypoints/main/main-meta.ts +1 -2
- package/front_end/generated/InspectorBackendCommands.js +3 -2
- package/front_end/generated/SupportedCSSProperties.js +20 -0
- package/front_end/generated/protocol-mapping.d.ts +4 -0
- package/front_end/generated/protocol-proxy-api.d.ts +5 -0
- package/front_end/generated/protocol.ts +20 -0
- package/front_end/models/ai_assistance/agents/PerformanceAgent.ts +18 -35
- package/front_end/models/ai_assistance/ai_assistance.ts +1 -1
- package/front_end/models/ai_assistance/data_formatters/NetworkRequestFormatter.ts +7 -6
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.snapshot.txt +246 -119
- package/front_end/models/ai_assistance/data_formatters/PerformanceInsightFormatter.ts +187 -73
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.snapshot.txt +106 -100
- package/front_end/models/ai_assistance/data_formatters/PerformanceTraceFormatter.ts +20 -27
- package/front_end/models/ai_assistance/data_formatters/UnitFormatters.ts +151 -0
- package/front_end/models/badges/AiExplorerBadge.ts +21 -0
- package/front_end/models/badges/Badge.ts +10 -9
- package/front_end/models/badges/CodeWhispererBadge.ts +21 -0
- package/front_end/models/badges/DOMDetectiveBadge.ts +21 -0
- package/front_end/models/badges/SpeedsterBadge.ts +7 -2
- package/front_end/models/badges/StarterBadge.ts +6 -1
- package/front_end/models/badges/UserBadges.ts +61 -9
- package/front_end/models/bindings/CSSWorkspaceBinding.ts +6 -6
- package/front_end/models/bindings/DebuggerLanguagePlugins.ts +18 -18
- package/front_end/models/bindings/FileUtils.ts +15 -15
- package/front_end/models/bindings/ResourceScriptMapping.ts +14 -14
- package/front_end/models/elements/ElementUpdateRecord.ts +11 -11
- package/front_end/models/emulation/DeviceModeModel.ts +123 -131
- package/front_end/models/emulation/EmulatedDevices.ts +22 -22
- package/front_end/models/extensions/ExtensionPanel.ts +24 -24
- package/front_end/models/extensions/ExtensionServer.ts +4 -4
- package/front_end/models/javascript_metadata/NativeFunctions.js +14 -2
- package/front_end/models/persistence/IsolatedFileSystem.ts +18 -19
- package/front_end/models/persistence/IsolatedFileSystemManager.ts +13 -13
- package/front_end/models/trace/EventsSerializer.ts +5 -5
- package/front_end/models/trace/LanternComputationData.ts +10 -10
- package/front_end/models/trace/ModelImpl.ts +32 -54
- package/front_end/models/trace/Processor.ts +28 -30
- package/front_end/models/trace/extras/FilmStrip.ts +6 -6
- package/front_end/models/trace/extras/StackTraceForEvent.ts +22 -25
- package/front_end/models/trace/extras/ThirdParties.ts +16 -17
- package/front_end/models/trace/extras/TraceFilter.ts +1 -1
- package/front_end/models/trace/handlers/Threads.ts +10 -10
- package/front_end/models/trace/handlers/helpers.ts +9 -9
- package/front_end/models/trace/handlers/types.ts +3 -3
- package/front_end/models/trace/insights/CLSCulprits.ts +12 -14
- package/front_end/models/trace/insights/Cache.ts +8 -4
- package/front_end/models/trace/insights/DOMSize.ts +8 -5
- package/front_end/models/trace/insights/DocumentLatency.ts +2 -2
- package/front_end/models/trace/insights/DuplicatedJavaScript.ts +3 -3
- package/front_end/models/trace/insights/FontDisplay.ts +3 -4
- package/front_end/models/trace/insights/ForcedReflow.ts +3 -3
- package/front_end/models/trace/insights/INPBreakdown.ts +2 -2
- package/front_end/models/trace/insights/ImageDelivery.ts +11 -11
- package/front_end/models/trace/insights/LCPBreakdown.ts +4 -4
- package/front_end/models/trace/insights/LCPDiscovery.ts +4 -4
- package/front_end/models/trace/insights/LegacyJavaScript.ts +2 -2
- package/front_end/models/trace/insights/ModernHTTP.ts +4 -5
- package/front_end/models/trace/insights/NetworkDependencyTree.ts +12 -12
- package/front_end/models/trace/insights/RenderBlocking.ts +9 -10
- package/front_end/models/trace/insights/SlowCSSSelector.ts +2 -2
- package/front_end/models/trace/insights/ThirdParties.ts +4 -5
- package/front_end/models/trace/insights/Viewport.ts +8 -5
- package/front_end/models/trace/insights/types.ts +1 -0
- package/front_end/models/trace/lantern/testing/MetricTestUtils.ts +10 -10
- package/front_end/panels/accessibility/AXBreadcrumbsPane.ts +52 -52
- package/front_end/panels/accessibility/AccessibilitySidebarView.ts +8 -8
- package/front_end/panels/animation/AnimationTimeline.ts +5 -5
- package/front_end/panels/animation/AnimationUI.ts +22 -23
- package/front_end/panels/application/ApplicationPanelSidebar.ts +12 -12
- package/front_end/panels/application/DOMStorageModel.ts +23 -23
- package/front_end/panels/application/ExtensionStorageModel.ts +31 -31
- package/front_end/panels/application/IndexedDBModel.ts +1 -0
- package/front_end/panels/application/PreloadingTreeElement.ts +8 -8
- package/front_end/panels/application/ServiceWorkersView.ts +0 -53
- package/front_end/panels/application/preloading/components/PreloadingDisabledInfobar.ts +2 -2
- package/front_end/panels/application/preloading/components/UsedPreloadingView.ts +2 -2
- package/front_end/panels/common/BadgeNotification.ts +140 -10
- package/front_end/panels/common/GdpSignUpDialog.ts +5 -0
- package/front_end/panels/common/badgeNotification.css +30 -9
- package/front_end/panels/console/ConsoleContextSelector.ts +9 -9
- package/front_end/panels/console/ConsolePrompt.ts +8 -5
- package/front_end/panels/console/ConsoleView.ts +13 -13
- package/front_end/panels/console/ConsoleViewport.ts +29 -29
- package/front_end/panels/coverage/CoverageModel.ts +22 -22
- package/front_end/panels/elements/ClassesPaneWidget.ts +1 -1
- package/front_end/panels/elements/ComputedStyleModel.ts +17 -18
- package/front_end/panels/elements/DOMPath.ts +2 -2
- package/front_end/panels/elements/ElementsPanel.ts +13 -13
- package/front_end/panels/elements/ElementsTreeElement.ts +30 -18
- package/front_end/panels/elements/ElementsTreeOutline.ts +44 -48
- package/front_end/panels/elements/ShortcutTreeElement.ts +4 -4
- package/front_end/panels/elements/StylePropertiesSection.ts +7 -4
- package/front_end/panels/elements/StylePropertyTreeElement.ts +54 -50
- package/front_end/panels/elements/StylesSidebarPane.ts +19 -19
- package/front_end/panels/emulation/DeviceModeToolbar.ts +7 -7
- package/front_end/panels/emulation/DeviceModeView.ts +6 -6
- package/front_end/panels/emulation/MediaQueryInspector.ts +18 -18
- package/front_end/panels/event_listeners/EventListenersView.ts +13 -14
- package/front_end/panels/layer_viewer/LayerTreeOutline.ts +3 -3
- package/front_end/panels/layer_viewer/LayerViewHost.ts +13 -13
- package/front_end/panels/layer_viewer/PaintProfilerView.ts +9 -10
- package/front_end/panels/layer_viewer/TransformController.ts +34 -36
- package/front_end/panels/layers/LayerTreeModel.ts +41 -40
- package/front_end/panels/lighthouse/LighthouseReportSelector.ts +13 -13
- package/front_end/panels/lighthouse/LighthouseStartView.ts +7 -7
- package/front_end/panels/media/PlayerMessagesView.ts +5 -5
- package/front_end/panels/media/TickingFlameChart.ts +24 -24
- package/front_end/panels/media/TickingFlameChartHelpers.ts +32 -32
- package/front_end/panels/network/NetworkItemView.ts +4 -4
- package/front_end/panels/network/NetworkLogViewColumns.ts +29 -29
- package/front_end/panels/network/NetworkPanel.ts +8 -5
- package/front_end/panels/network/ResourceWebSocketFrameView.ts +10 -10
- package/front_end/panels/profiler/HeapDetachedElementsView.ts +3 -3
- package/front_end/panels/profiler/HeapProfileView.ts +1 -1
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +3 -4
- package/front_end/panels/profiler/ProfileHeader.ts +25 -25
- package/front_end/panels/profiler/ProfileLauncherView.ts +5 -6
- package/front_end/panels/recorder/components/ReplaySection.ts +3 -1
- package/front_end/panels/security/OriginTreeElement.ts +8 -8
- package/front_end/panels/security/SecurityPanel.ts +5 -5
- package/front_end/panels/settings/SettingsScreen.ts +18 -18
- package/front_end/panels/settings/components/SyncSection.ts +26 -8
- package/front_end/panels/sources/AiCodeCompletionPlugin.ts +3 -0
- package/front_end/panels/sources/DebuggerPausedMessage.ts +8 -9
- package/front_end/panels/sources/NavigatorView.ts +43 -46
- package/front_end/panels/sources/SourcesPanel.ts +35 -35
- package/front_end/panels/sources/SourcesView.ts +13 -13
- package/front_end/panels/sources/TabbedEditorContainer.ts +19 -22
- package/front_end/panels/sources/UISourceCodeFrame.ts +4 -4
- package/front_end/panels/sources/WatchExpressionsSidebarPane.ts +34 -36
- package/front_end/panels/timeline/AnimationsTrackAppender.ts +3 -3
- package/front_end/panels/timeline/CompatibilityTracksAppender.ts +8 -8
- package/front_end/panels/timeline/CountersGraph.ts +16 -16
- package/front_end/panels/timeline/EntriesFilter.ts +4 -3
- package/front_end/panels/timeline/EventsTimelineTreeView.ts +3 -3
- package/front_end/panels/timeline/GPUTrackAppender.ts +3 -3
- package/front_end/panels/timeline/Initiators.ts +10 -10
- package/front_end/panels/timeline/InteractionsTrackAppender.ts +5 -5
- package/front_end/panels/timeline/LayoutShiftsTrackAppender.ts +7 -7
- package/front_end/panels/timeline/ModificationsManager.ts +8 -15
- package/front_end/panels/timeline/TargetForEvent.ts +2 -2
- package/front_end/panels/timeline/ThirdPartyTreeView.ts +1 -1
- package/front_end/panels/timeline/ThreadAppender.ts +13 -13
- package/front_end/panels/timeline/TimelineDetailsView.ts +6 -14
- package/front_end/panels/timeline/TimelineEventOverview.ts +27 -26
- package/front_end/panels/timeline/TimelineFilters.ts +5 -5
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +54 -53
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +34 -34
- package/front_end/panels/timeline/TimelineFlameChartView.ts +18 -31
- package/front_end/panels/timeline/TimelineHistoryManager.ts +17 -18
- package/front_end/panels/timeline/TimelineMiniMap.ts +6 -6
- package/front_end/panels/timeline/TimelinePaintProfilerView.ts +6 -6
- package/front_end/panels/timeline/TimelinePanel.ts +73 -68
- package/front_end/panels/timeline/TimelineSelectorStatsView.ts +7 -5
- package/front_end/panels/timeline/TimelineTreeView.ts +10 -10
- package/front_end/panels/timeline/TimelineUIUtils.ts +47 -46
- package/front_end/panels/timeline/TimingsTrackAppender.ts +12 -12
- package/front_end/panels/timeline/TracingLayerTree.ts +43 -43
- package/front_end/panels/timeline/TrackConfigBanner.ts +6 -6
- package/front_end/panels/timeline/TrackConfiguration.ts +1 -1
- package/front_end/panels/timeline/components/DetailsView.ts +4 -4
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +12 -21
- package/front_end/panels/timeline/components/LiveMetricsView.ts +2 -1
- package/front_end/panels/timeline/components/NetworkRequestDetails.ts +5 -5
- package/front_end/panels/timeline/components/Sidebar.ts +4 -14
- package/front_end/panels/timeline/components/SidebarInsightsTab.ts +13 -36
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +21 -19
- package/front_end/panels/timeline/components/insights/BaseInsightComponent.ts +1 -1
- package/front_end/panels/timeline/components/insights/Cache.ts +4 -0
- package/front_end/panels/timeline/components/insights/DOMSize.ts +5 -1
- package/front_end/panels/timeline/components/insights/Helpers.ts +19 -0
- package/front_end/panels/timeline/components/insights/NetworkDependencyTree.ts +1 -1
- package/front_end/panels/timeline/components/insights/Viewport.ts +4 -0
- package/front_end/panels/timeline/overlays/OverlaysImpl.ts +1 -1
- package/front_end/panels/timeline/utils/AICallTree.ts +11 -11
- package/front_end/panels/timeline/utils/AIContext.ts +17 -19
- package/front_end/panels/timeline/utils/EntityMapper.ts +6 -5
- package/front_end/panels/timeline/utils/EntryName.ts +2 -2
- package/front_end/panels/timeline/utils/EntryNodes.ts +5 -5
- package/front_end/panels/timeline/utils/EntryStyles.ts +4 -4
- package/front_end/panels/timeline/utils/FreshRecording.ts +3 -3
- package/front_end/panels/timeline/utils/Helpers.ts +0 -18
- package/front_end/panels/timeline/utils/InsightAIContext.ts +6 -6
- package/front_end/panels/timeline/utils/SourceMapsResolver.ts +7 -7
- package/front_end/panels/webauthn/WebauthnPane.ts +1 -0
- package/front_end/third_party/chromium/README.chromium +1 -1
- package/front_end/third_party/codemirror.next/chunk/angular.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/angular.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/codemirror.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/codemirror.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/cpp.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/cpp.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/java.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/java.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/legacy.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/legacy.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/less.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/less.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/markdown.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/markdown.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/php.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/php.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/python.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/python.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/sass.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/sass.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/svelte.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/svelte.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/vue.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/vue.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/wast.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/wast.js.map +1 -1
- package/front_end/third_party/codemirror.next/chunk/xml.js +1 -1
- package/front_end/third_party/codemirror.next/chunk/xml.js.map +1 -1
- package/front_end/third_party/codemirror.next/codemirror.next.js +1 -1
- package/front_end/third_party/codemirror.next/package.json +1 -1
- package/front_end/third_party/codemirror.next/rebuild.sh +1 -1
- package/front_end/third_party/json5/rebuild.sh +1 -1
- package/front_end/third_party/legacy-javascript/{update.sh → rebuild.sh} +1 -1
- package/front_end/third_party/lit/lib/decorators.d.ts +26 -9
- package/front_end/third_party/lit/lib/decorators.js +5 -5
- package/front_end/third_party/lit/lib/decorators.js.map +1 -1
- package/front_end/third_party/lit/lib/directive.js.map +1 -1
- package/front_end/third_party/lit/lib/directives.js +8 -13
- package/front_end/third_party/lit/lib/directives.js.map +1 -1
- package/front_end/third_party/lit/lib/lit.d.ts +26 -9
- package/front_end/third_party/lit/lib/lit.js +5 -5
- package/front_end/third_party/lit/lib/lit.js.map +1 -1
- package/front_end/third_party/lit/lib/static-html.js +2 -2
- package/front_end/third_party/lit/lib/static-html.js.map +1 -1
- package/front_end/third_party/lit/rebuild.sh +1 -1
- package/front_end/third_party/third-party-web/rebuild.sh +1 -1
- package/front_end/ui/components/dialogs/Dialog.ts +6 -7
- package/front_end/ui/legacy/ActionRegistration.ts +9 -9
- package/front_end/ui/legacy/DockController.ts +18 -18
- package/front_end/ui/legacy/FilterBar.ts +7 -7
- package/front_end/ui/legacy/Fragment.ts +4 -4
- package/front_end/ui/legacy/GlassPane.ts +12 -12
- package/front_end/ui/legacy/InspectorView.ts +5 -15
- package/front_end/ui/legacy/ListControl.ts +27 -27
- package/front_end/ui/legacy/ListWidget.ts +4 -4
- package/front_end/ui/legacy/PopoverHelper.ts +4 -4
- package/front_end/ui/legacy/ShortcutRegistry.ts +17 -17
- package/front_end/ui/legacy/TabbedPane.ts +74 -75
- package/front_end/ui/legacy/TextPrompt.ts +31 -31
- package/front_end/ui/legacy/Toolbar.ts +13 -14
- package/front_end/ui/legacy/ViewManager.ts +30 -31
- package/front_end/ui/legacy/Widget.ts +6 -6
- package/front_end/ui/legacy/XLink.ts +9 -9
- package/front_end/ui/legacy/ZoomManager.ts +9 -9
- package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +27 -27
- package/front_end/ui/legacy/components/color_picker/ContrastInfo.ts +30 -32
- package/front_end/ui/legacy/components/color_picker/Spectrum.ts +15 -15
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +64 -64
- package/front_end/ui/legacy/components/data_grid/ShowMoreDataGridNode.ts +2 -2
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +10 -11
- package/front_end/ui/legacy/components/perf_ui/ChartViewport.ts +12 -12
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +3 -3
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +14 -14
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +8 -8
- package/front_end/ui/legacy/components/quick_open/CommandMenu.ts +5 -5
- package/front_end/ui/legacy/components/source_frame/ResourceSourceFrame.ts +4 -4
- package/front_end/ui/legacy/filter.css +1 -1
- package/front_end/ui/legacy/inspectorCommon.css +1 -1
- package/front_end/ui/legacy/softDropDownButton.css +1 -1
- package/front_end/ui/legacy/theme_support/ThemeSupport.ts +4 -4
- package/front_end/ui/visual_logging/KnownContextValues.ts +2 -2
- package/package.json +1 -1
- package/front_end/models/ai_assistance/data_formatters/Types.ts +0 -9
@@ -8,51 +8,51 @@ import type {AICallTree} from './AICallTree.js';
|
|
8
8
|
|
9
9
|
export interface AgentFocusDataFull {
|
10
10
|
type: 'full';
|
11
|
-
parsedTrace: Trace.
|
11
|
+
parsedTrace: Trace.TraceModel.ParsedTrace;
|
12
12
|
insightSet: Trace.Insights.Types.InsightSet|null;
|
13
|
-
traceMetadata: Trace.Types.File.MetaData;
|
14
13
|
}
|
15
14
|
|
16
15
|
interface AgentFocusDataCallTree {
|
17
16
|
type: 'call-tree';
|
18
|
-
parsedTrace: Trace.
|
17
|
+
parsedTrace: Trace.TraceModel.ParsedTrace;
|
19
18
|
callTree: AICallTree;
|
20
19
|
}
|
21
20
|
|
22
21
|
export interface AgentFocusDataInsight {
|
23
22
|
type: 'insight';
|
24
|
-
parsedTrace: Trace.
|
23
|
+
parsedTrace: Trace.TraceModel.ParsedTrace;
|
25
24
|
insightSet: Trace.Insights.Types.InsightSet|null;
|
26
|
-
traceMetadata: Trace.Types.File.MetaData;
|
27
25
|
insight: Trace.Insights.Types.InsightModel;
|
28
26
|
}
|
29
27
|
|
30
28
|
type AgentFocusData = AgentFocusDataCallTree|AgentFocusDataInsight|AgentFocusDataFull;
|
31
29
|
|
32
30
|
export class AgentFocus {
|
33
|
-
static full(
|
34
|
-
|
35
|
-
|
31
|
+
static full(parsedTrace: Trace.TraceModel.ParsedTrace): AgentFocus {
|
32
|
+
if (!parsedTrace.insights) {
|
33
|
+
throw new Error('missing insights');
|
34
|
+
}
|
35
|
+
|
36
36
|
// Currently only support a single insight set. Pick the first one with a navigation.
|
37
|
-
const insightSet = [...insights.values()].filter(insightSet => insightSet.navigation).at(0) ?? null;
|
37
|
+
const insightSet = [...parsedTrace.insights.values()].filter(insightSet => insightSet.navigation).at(0) ?? null;
|
38
38
|
return new AgentFocus({
|
39
39
|
type: 'full',
|
40
40
|
parsedTrace,
|
41
41
|
insightSet,
|
42
|
-
traceMetadata,
|
43
42
|
});
|
44
43
|
}
|
45
44
|
|
46
|
-
static fromInsight(
|
47
|
-
|
48
|
-
|
45
|
+
static fromInsight(parsedTrace: Trace.TraceModel.ParsedTrace, insight: Trace.Insights.Types.InsightModel):
|
46
|
+
AgentFocus {
|
47
|
+
if (!parsedTrace.insights) {
|
48
|
+
throw new Error('missing insights');
|
49
|
+
}
|
49
50
|
// Currently only support a single insight set. Pick the first one with a navigation.
|
50
|
-
const insightSet = [...insights.values()].filter(insightSet => insightSet.navigation).at(0) ?? null;
|
51
|
+
const insightSet = [...parsedTrace.insights.values()].filter(insightSet => insightSet.navigation).at(0) ?? null;
|
51
52
|
return new AgentFocus({
|
52
53
|
type: 'insight',
|
53
54
|
parsedTrace,
|
54
55
|
insightSet,
|
55
|
-
traceMetadata,
|
56
56
|
insight,
|
57
57
|
});
|
58
58
|
}
|
@@ -74,11 +74,9 @@ export class AgentFocus {
|
|
74
74
|
|
75
75
|
export function getPerformanceAgentFocusFromModel(model: Trace.TraceModel.Model): AgentFocus|null {
|
76
76
|
const parsedTrace = model.parsedTrace();
|
77
|
-
|
78
|
-
const traceMetadata = model.metadata();
|
79
|
-
if (!insights || !parsedTrace || !traceMetadata) {
|
77
|
+
if (!parsedTrace) {
|
80
78
|
return null;
|
81
79
|
}
|
82
80
|
|
83
|
-
return AgentFocus.full(parsedTrace
|
81
|
+
return AgentFocus.full(parsedTrace);
|
84
82
|
}
|
@@ -7,7 +7,7 @@ import type * as Protocol from '../../../generated/protocol.js';
|
|
7
7
|
import * as Trace from '../../../models/trace/trace.js';
|
8
8
|
|
9
9
|
export class EntityMapper {
|
10
|
-
#parsedTrace: Trace.
|
10
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
11
11
|
#entityMappings: Trace.Handlers.Helpers.EntityMappings;
|
12
12
|
#firstPartyEntity: Trace.Handlers.Helpers.Entity|null;
|
13
13
|
#thirdPartyEvents: Trace.Types.Events.Event[] = [];
|
@@ -19,17 +19,18 @@ export class EntityMapper {
|
|
19
19
|
*/
|
20
20
|
#resolvedCallFrames = new Set<Protocol.Runtime.CallFrame>();
|
21
21
|
|
22
|
-
constructor(parsedTrace: Trace.
|
22
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace) {
|
23
23
|
this.#parsedTrace = parsedTrace;
|
24
|
-
this.#entityMappings = this.#parsedTrace.Renderer.entityMappings;
|
24
|
+
this.#entityMappings = this.#parsedTrace.data.Renderer.entityMappings;
|
25
25
|
this.#firstPartyEntity = this.#findFirstPartyEntity();
|
26
26
|
this.#thirdPartyEvents = this.#getThirdPartyEvents();
|
27
27
|
}
|
28
28
|
|
29
29
|
#findFirstPartyEntity(): Trace.Handlers.Helpers.Entity|null {
|
30
30
|
// As a starting point, we consider the first navigation as the 1P.
|
31
|
-
const nav =
|
32
|
-
|
31
|
+
const nav =
|
32
|
+
Array.from(this.#parsedTrace.data.Meta.navigationsByNavigationId.values()).sort((a, b) => a.ts - b.ts)[0];
|
33
|
+
const firstPartyUrl = nav?.args.data?.documentLoaderURL ?? this.#parsedTrace.data.Meta.mainFrameURL;
|
33
34
|
if (!firstPartyUrl) {
|
34
35
|
return null;
|
35
36
|
}
|
@@ -55,12 +55,12 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
55
55
|
*/
|
56
56
|
export function nameForEntry(
|
57
57
|
entry: Trace.Types.Events.Event,
|
58
|
-
parsedTrace?: Trace.
|
58
|
+
parsedTrace?: Trace.TraceModel.ParsedTrace,
|
59
59
|
): string {
|
60
60
|
if (Trace.Types.Events.isProfileCall(entry)) {
|
61
61
|
if (parsedTrace) {
|
62
62
|
const potentialCallName =
|
63
|
-
Trace.Handlers.ModelHandlers.Samples.getProfileCallFunctionName(parsedTrace.Samples, entry);
|
63
|
+
Trace.Handlers.ModelHandlers.Samples.getProfileCallFunctionName(parsedTrace.data.Samples, entry);
|
64
64
|
// We need this extra check because the call name could be the empty
|
65
65
|
// string. If it is, we want to fallback.
|
66
66
|
if (potentialCallName) {
|
@@ -15,7 +15,7 @@ const domNodesForEventCache =
|
|
15
15
|
* The result is cached so you can safely call this multiple times.
|
16
16
|
**/
|
17
17
|
export function nodeIdsForEvent(
|
18
|
-
|
18
|
+
parsedTrace: Trace.TraceModel.ParsedTrace,
|
19
19
|
event: Trace.Types.Events.Event,
|
20
20
|
): Set<Protocol.DOM.BackendNodeId> {
|
21
21
|
const fromCache = nodeIdsForEventCache.get(event);
|
@@ -45,12 +45,12 @@ export function nodeIdsForEvent(
|
|
45
45
|
// For a DecodeImage event, we can use the ImagePaintingHandler, which has
|
46
46
|
// done the work to build the relationship between a DecodeImage event and
|
47
47
|
// the corresponding PaintImage event.
|
48
|
-
const paintImageEvent =
|
48
|
+
const paintImageEvent = parsedTrace.data.ImagePainting.paintImageForEvent.get(event);
|
49
49
|
if (typeof paintImageEvent?.args.data.nodeId !== 'undefined') {
|
50
50
|
foundIds.add(paintImageEvent.args.data.nodeId);
|
51
51
|
}
|
52
52
|
} else if (Trace.Types.Events.isDrawLazyPixelRef(event) && event.args?.LazyPixelRef) {
|
53
|
-
const paintImageEvent =
|
53
|
+
const paintImageEvent = parsedTrace.data.ImagePainting.paintImageByDrawLazyPixelRef.get(event.args.LazyPixelRef);
|
54
54
|
if (typeof paintImageEvent?.args.data.nodeId !== 'undefined') {
|
55
55
|
foundIds.add(paintImageEvent.args.data.nodeId);
|
56
56
|
}
|
@@ -67,14 +67,14 @@ export function nodeIdsForEvent(
|
|
67
67
|
* This method is cached for the given event.
|
68
68
|
*/
|
69
69
|
export async function relatedDOMNodesForEvent(
|
70
|
-
|
70
|
+
parsedTrace: Trace.TraceModel.ParsedTrace,
|
71
71
|
event: Trace.Types.Events.Event): Promise<Map<Protocol.DOM.BackendNodeId, SDK.DOMModel.DOMNode|null>|null> {
|
72
72
|
const fromCache = domNodesForEventCache.get(event);
|
73
73
|
if (fromCache) {
|
74
74
|
return fromCache;
|
75
75
|
}
|
76
76
|
|
77
|
-
const nodeIds = nodeIdsForEvent(
|
77
|
+
const nodeIds = nodeIdsForEvent(parsedTrace, event);
|
78
78
|
if (nodeIds.size) {
|
79
79
|
const frame = event.args?.data?.frame as Protocol.Page.FrameId;
|
80
80
|
const result = await domNodesForBackendIds(frame, nodeIds);
|
@@ -559,7 +559,7 @@ export class TimelineCategory {
|
|
559
559
|
title: Platform.UIString.LocalizedString;
|
560
560
|
visible: boolean;
|
561
561
|
childColor: string;
|
562
|
-
|
562
|
+
#color: string;
|
563
563
|
#hidden?: boolean;
|
564
564
|
|
565
565
|
constructor(
|
@@ -569,7 +569,7 @@ export class TimelineCategory {
|
|
569
569
|
this.title = title;
|
570
570
|
this.visible = visible;
|
571
571
|
this.childColor = childColor;
|
572
|
-
this
|
572
|
+
this.#color = color;
|
573
573
|
this.hidden = false;
|
574
574
|
}
|
575
575
|
|
@@ -581,11 +581,11 @@ export class TimelineCategory {
|
|
581
581
|
return this.getComputedColorValue();
|
582
582
|
}
|
583
583
|
getCSSValue(): string {
|
584
|
-
return `var(${this
|
584
|
+
return `var(${this.#color})`;
|
585
585
|
}
|
586
586
|
|
587
587
|
getComputedColorValue(): string {
|
588
|
-
return ThemeSupport.ThemeSupport.instance().getComputedValue(this
|
588
|
+
return ThemeSupport.ThemeSupport.instance().getComputedValue(this.#color);
|
589
589
|
}
|
590
590
|
|
591
591
|
set hidden(hidden: boolean) {
|
@@ -12,7 +12,7 @@ let instance: Tracker|null = null;
|
|
12
12
|
* is loaded, we set this flag accordingly.
|
13
13
|
**/
|
14
14
|
export class Tracker {
|
15
|
-
#freshRecordings = new WeakSet<Trace.
|
15
|
+
#freshRecordings = new WeakSet<Trace.TraceModel.ParsedTrace>();
|
16
16
|
|
17
17
|
static instance(opts: {forceNew: boolean} = {forceNew: false}): Tracker {
|
18
18
|
if (!instance || opts.forceNew) {
|
@@ -21,11 +21,11 @@ export class Tracker {
|
|
21
21
|
return instance;
|
22
22
|
}
|
23
23
|
|
24
|
-
registerFreshRecording(data: Trace.
|
24
|
+
registerFreshRecording(data: Trace.TraceModel.ParsedTrace): void {
|
25
25
|
this.#freshRecordings.add(data);
|
26
26
|
}
|
27
27
|
|
28
|
-
recordingIsFresh(data: Trace.
|
28
|
+
recordingIsFresh(data: Trace.TraceModel.ParsedTrace): boolean {
|
29
29
|
return this.#freshRecordings.has(data);
|
30
30
|
}
|
31
31
|
}
|
@@ -2,18 +2,12 @@
|
|
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 '../../../ui/components/markdown_view/markdown_view.js';
|
6
|
-
|
7
|
-
import type * as Common from '../../../core/common/common.js';
|
8
5
|
import * as Platform from '../../../core/platform/platform.js';
|
9
6
|
import * as SDK from '../../../core/sdk/sdk.js';
|
10
7
|
import * as CrUXManager from '../../../models/crux-manager/crux-manager.js';
|
11
8
|
import type * as Trace from '../../../models/trace/trace.js';
|
12
|
-
import * as Marked from '../../../third_party/marked/marked.js';
|
13
|
-
import * as Lit from '../../../ui/lit/lit.js';
|
14
9
|
import * as MobileThrottling from '../../mobile_throttling/mobile_throttling.js';
|
15
10
|
|
16
|
-
const {html} = Lit;
|
17
11
|
const MAX_ORIGIN_LENGTH = 60;
|
18
12
|
|
19
13
|
export function getThrottlingRecommendations(): {
|
@@ -127,18 +121,6 @@ export function shortenUrl(url: URL, maxChars = 20): string {
|
|
127
121
|
return shortenedUrl;
|
128
122
|
}
|
129
123
|
|
130
|
-
/**
|
131
|
-
* Returns a rendered MarkdownView component.
|
132
|
-
*
|
133
|
-
* This should only be used for markdown that is guaranteed to be valid,
|
134
|
-
* and not contain any user-generated content.
|
135
|
-
*/
|
136
|
-
export function md(markdown: Common.UIString.LocalizedString): Lit.TemplateResult {
|
137
|
-
const tokens = Marked.Marked.lexer(markdown);
|
138
|
-
const data = {tokens};
|
139
|
-
return html`<devtools-markdown-view .data=${data}></devtools-markdown-view>`;
|
140
|
-
}
|
141
|
-
|
142
124
|
/**
|
143
125
|
* Returns a string containing both the origin and its 3rd party entity.
|
144
126
|
*
|
@@ -7,7 +7,7 @@ import * as Trace from '../../../models/trace/trace.js';
|
|
7
7
|
import {AICallTree} from './AICallTree.js';
|
8
8
|
|
9
9
|
export class AIQueries {
|
10
|
-
static findMainThread(navigationId: string|undefined, parsedTrace: Trace.
|
10
|
+
static findMainThread(navigationId: string|undefined, parsedTrace: Trace.TraceModel.ParsedTrace):
|
11
11
|
Trace.Handlers.Threads.ThreadData|null {
|
12
12
|
/**
|
13
13
|
* We cannot assume that there is one main thread as there are scenarios
|
@@ -26,14 +26,14 @@ export class AIQueries {
|
|
26
26
|
let mainThreadTID: Trace.Types.Events.ThreadID|null = null;
|
27
27
|
|
28
28
|
if (navigationId) {
|
29
|
-
const navigation = parsedTrace.Meta.navigationsByNavigationId.get(navigationId);
|
29
|
+
const navigation = parsedTrace.data.Meta.navigationsByNavigationId.get(navigationId);
|
30
30
|
if (navigation?.args.data?.isOutermostMainFrame) {
|
31
31
|
mainThreadPID = navigation.pid;
|
32
32
|
mainThreadTID = navigation.tid;
|
33
33
|
}
|
34
34
|
}
|
35
35
|
|
36
|
-
const threads = Trace.Handlers.Threads.threadsInTrace(parsedTrace);
|
36
|
+
const threads = Trace.Handlers.Threads.threadsInTrace(parsedTrace.data);
|
37
37
|
const thread = threads.find(thread => {
|
38
38
|
if (mainThreadPID && mainThreadTID) {
|
39
39
|
return thread.pid === mainThreadPID && thread.tid === mainThreadTID;
|
@@ -49,7 +49,7 @@ export class AIQueries {
|
|
49
49
|
*/
|
50
50
|
static mainThreadActivityBottomUp(
|
51
51
|
navigationId: string|undefined, bounds: Trace.Types.Timing.TraceWindowMicro,
|
52
|
-
parsedTrace: Trace.
|
52
|
+
parsedTrace: Trace.TraceModel.ParsedTrace): Trace.Extras.TraceTree.BottomUpRootNode|null {
|
53
53
|
const thread = this.findMainThread(navigationId, parsedTrace);
|
54
54
|
if (!thread) {
|
55
55
|
return null;
|
@@ -82,7 +82,7 @@ export class AIQueries {
|
|
82
82
|
*/
|
83
83
|
static mainThreadActivityTopDown(
|
84
84
|
navigationId: string|undefined, bounds: Trace.Types.Timing.TraceWindowMicro,
|
85
|
-
parsedTrace: Trace.
|
85
|
+
parsedTrace: Trace.TraceModel.ParsedTrace): AICallTree|null {
|
86
86
|
const thread = this.findMainThread(navigationId, parsedTrace);
|
87
87
|
if (!thread) {
|
88
88
|
return null;
|
@@ -103,7 +103,7 @@ export class AIQueries {
|
|
103
103
|
*/
|
104
104
|
static longestTasks(
|
105
105
|
navigationId: string|undefined, bounds: Trace.Types.Timing.TraceWindowMicro,
|
106
|
-
parsedTrace: Trace.
|
106
|
+
parsedTrace: Trace.TraceModel.ParsedTrace, limit = 3): AICallTree[]|null {
|
107
107
|
const thread = this.findMainThread(navigationId, parsedTrace);
|
108
108
|
if (!thread) {
|
109
109
|
return null;
|
@@ -29,7 +29,7 @@ export const resolvedCodeLocationDataNames = new Map<string, ResolvedCodeLocatio
|
|
29
29
|
|
30
30
|
export class SourceMapsResolver extends EventTarget {
|
31
31
|
private executionContextNamesByOrigin = new Map<Platform.DevToolsPath.UrlString, string>();
|
32
|
-
#parsedTrace: Trace.
|
32
|
+
#parsedTrace: Trace.TraceModel.ParsedTrace;
|
33
33
|
#entityMapper: EntityMapper.EntityMapper|null = null;
|
34
34
|
|
35
35
|
#isResolving = false;
|
@@ -41,7 +41,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
41
41
|
// those workers too.
|
42
42
|
#debuggerModelsToListen = new Set<SDK.DebuggerModel.DebuggerModel>();
|
43
43
|
|
44
|
-
constructor(parsedTrace: Trace.
|
44
|
+
constructor(parsedTrace: Trace.TraceModel.ParsedTrace, entityMapper?: EntityMapper.EntityMapper) {
|
45
45
|
super();
|
46
46
|
this.#parsedTrace = parsedTrace;
|
47
47
|
this.#entityMapper = entityMapper ?? null;
|
@@ -87,7 +87,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
87
87
|
return SourceMapsResolver.resolvedCodeLocationForCallFrame(callFrame as Protocol.Runtime.CallFrame);
|
88
88
|
}
|
89
89
|
|
90
|
-
static resolvedURLForEntry(parsedTrace: Trace.
|
90
|
+
static resolvedURLForEntry(parsedTrace: Trace.TraceModel.ParsedTrace, entry: Trace.Types.Events.Event):
|
91
91
|
Platform.DevToolsPath.UrlString|null {
|
92
92
|
const resolvedCallFrameURL =
|
93
93
|
SourceMapsResolver.resolvedCodeLocationForEntry(entry)?.devtoolsLocation?.uiSourceCode.url();
|
@@ -96,7 +96,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
96
96
|
}
|
97
97
|
// If no source mapping was found for an entry's URL, then default
|
98
98
|
// to the URL value contained in the event itself, if any.
|
99
|
-
const url = Trace.Handlers.Helpers.getNonResolvedURL(entry, parsedTrace);
|
99
|
+
const url = Trace.Handlers.Helpers.getNonResolvedURL(entry, parsedTrace.data);
|
100
100
|
if (url) {
|
101
101
|
return Workspace.Workspace.WorkspaceImpl.instance().uiSourceCodeForURL(url)?.url() ?? url;
|
102
102
|
}
|
@@ -110,7 +110,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
110
110
|
}
|
111
111
|
|
112
112
|
async install(): Promise<void> {
|
113
|
-
for (const threadToProfileMap of this.#parsedTrace.Samples.profilesInProcess.values()) {
|
113
|
+
for (const threadToProfileMap of this.#parsedTrace.data.Samples.profilesInProcess.values()) {
|
114
114
|
for (const [tid, profile] of threadToProfileMap) {
|
115
115
|
const nodes = profile.parsedProfile.nodes();
|
116
116
|
if (!nodes || nodes.length === 0) {
|
@@ -164,7 +164,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
164
164
|
// is attach. If not, we do not notify the flamechart that mappings
|
165
165
|
// were updated, since that would trigger a rerender.
|
166
166
|
let updatedMappings = false;
|
167
|
-
for (const [, threadsInProcess] of this.#parsedTrace.Samples.profilesInProcess) {
|
167
|
+
for (const [, threadsInProcess] of this.#parsedTrace.data.Samples.profilesInProcess) {
|
168
168
|
for (const [tid, threadProfile] of threadsInProcess) {
|
169
169
|
const nodes = threadProfile.parsedProfile.nodes() ?? [];
|
170
170
|
const target = this.#targetForThread(tid);
|
@@ -224,7 +224,7 @@ export class SourceMapsResolver extends EventTarget {
|
|
224
224
|
// Figure out the target for the node. If it is in a worker thread,
|
225
225
|
// that is the target, otherwise we use the primary page target.
|
226
226
|
#targetForThread(tid: Trace.Types.Events.ThreadID): SDK.Target.Target|null {
|
227
|
-
const maybeWorkerId = this.#parsedTrace.Workers.workerIdByThread.get(tid);
|
227
|
+
const maybeWorkerId = this.#parsedTrace.data.Workers.workerIdByThread.get(tid);
|
228
228
|
if (maybeWorkerId) {
|
229
229
|
return SDK.TargetManager.TargetManager.instance().targetById(maybeWorkerId);
|
230
230
|
}
|
@@ -562,6 +562,7 @@ export class WebauthnPaneImpl extends UI.Panel.Panel implements
|
|
562
562
|
#model?: SDK.WebAuthnModel.WebAuthnModel;
|
563
563
|
#newAuthenticatorOptions: Protocol.WebAuthn.VirtualAuthenticatorOptions = {
|
564
564
|
protocol: Protocol.WebAuthn.AuthenticatorProtocol.Ctap2,
|
565
|
+
ctap2Version: Protocol.WebAuthn.Ctap2Version.Ctap2_1,
|
565
566
|
transport: Protocol.WebAuthn.AuthenticatorTransport.Usb,
|
566
567
|
hasResidentKey: false,
|
567
568
|
hasUserVerification: false,
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Name: Dependencies sourced from the upstream `chromium` repository
|
2
2
|
URL: https://source.chromium.org/chromium/chromium/src/+/main:components/variations/proto/devtools/
|
3
3
|
Version: N/A
|
4
|
-
Revision:
|
4
|
+
Revision: bcae66c20cc9643b28356f3508d3d2f2e10e67ed
|
5
5
|
Update Mechanism: Manual (https://crbug.com/428069060)
|
6
6
|
License: BSD-3-Clause
|
7
7
|
License File: LICENSE
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{
|
1
|
+
import{L as O,a as r,h as e,p as t,b as n,s as a,t as o,j as i,E as p}from"./codemirror.js";const l=new p(O=>{let r=O.pos;for(;;){if(10==O.next){O.advance();break}if(123==O.next&&123==O.peek(1)||O.next<0)break;O.advance()}O.pos>r&&O.acceptToken(1)});function Q(O,r,e){return new p(t=>{let n=t.pos;for(;t.next!=O&&t.next>=0&&(e||38!=t.next&&(123!=t.next||123!=t.peek(1)));)t.advance();t.pos>n&&t.acceptToken(r)})}const S=Q(39,33,!1),s=Q(34,34,!1),u=Q(39,35,!0),q=Q(34,36,!0),P=n.deserialize({version:14,states:"(jOVOqOOOeQpOOOvO!bO'#CaOOOP'#Cx'#CxQVOqOOO!OQpO'#CfO!WQpO'#ClO!]QpO'#CrO!bQpO'#CsOOQO'#Cv'#CvQ!gQpOOQ!lQpOOQ!qQpOOOOOV,58{,58{O!vOpO,58{OOOP-E6v-E6vO!{QpO,59QO#TQpO,59QOOQO,59W,59WO#YQpO,59^OOQO,59_,59_O#_QpOOO#_QpOOO#gQpOOOOOV1G.g1G.gO#oQpO'#CyO#tQpO1G.lOOQO1G.l1G.lO#|QpO1G.lOOQO1G.x1G.xO$UO`O'#DUO$ZOWO'#DUOOQO'#Co'#CoQOQpOOOOQO'#Cu'#CuO$`OtO'#CwO$qOrO'#CwOOQO,59e,59eOOQO-E6w-E6wOOQO7+$W7+$WO%SQpO7+$WO%[QpO7+$WOOOO'#Cp'#CpO%aOpO,59pOOOO'#Cq'#CqO%fOpO,59pOOOS'#Cz'#CzO%kOtO,59cOOQO,59c,59cOOOQ'#C{'#C{O%|OrO,59cO&_QpO<<GrOOQO<<Gr<<GrOOQO1G/[1G/[OOOS-E6x-E6xOOQO1G.}1G.}OOOQ-E6y-E6yOOQOAN=^AN=^",stateData:"&d~OvOS~OPROSQOVROWRO~OZTO[XO^VOaUOhWO~OR]OU^O~O[`O^aO~O[bO~O[cO~O[dO~ObeO~ObfO~ObgO~ORhO~O]kOwiO~O[lO~O_mO~OynOzoO~OysOztO~O[uO~O]wOwiO~O_yOwiO~OtzO~Os|O~OSQOV!OOW!OOr!OOy!QO~OSQOV!ROW!ROq!ROz!QO~O_!TOwiO~O]!UO~Oy!VO~Oz!VO~OSQOV!OOW!OOr!OOy!XO~OSQOV!ROW!ROq!ROz!XO~O]!ZO~O",goto:"#dyPPPPPzPPPP!WPPPPP!WPP!Z!^!a!d!dP!g!j!m!p!v#Q#WPPPPPPPP#^SROSS!Os!PT!Rt!SRYPRqeR{nR}oRZPRqfR[PRqgQSOR_SQj`SvjxRxlQ!PsR!W!PQ!StR!Y!SQpeRrf",nodeNames:"⚠ Text Content }} {{ Interpolation InterpolationContent Entity InvalidEntity Attribute BoundAttributeName [ Identifier ] ( ) ReferenceName # Is ExpressionAttributeValue AttributeInterpolation AttributeInterpolation EventName DirectiveName * StatementAttributeValue AttributeName AttributeValue",maxTerm:42,nodeProps:[["openedBy",3,"{{",15,"("],["closedBy",4,"}}",14,")"],["isolate",-4,5,19,25,27,""]],skippedNodes:[0],repeatNodeCount:4,tokenData:"0r~RyOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mqr#rrs%jst&Qtv#rvw&hwx)zxy*byz*xz{+`{}#r}!O+v!O!P-]!P!Q#r!Q![+v![!]+v!]!_#r!_!`-s!`!c#r!c!}+v!}#O.Z#O#P#r#P#Q.q#Q#R#r#R#S+v#S#T#r#T#o+v#o#p/X#p#q#r#q#r0Z#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vQ#wTUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rQ$ZSO#q#r#r;'S#r;'S;=`$g<%lO#rQ$jP;=`<%l#rR$t[UQvPOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mq#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR%qTyPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&XTaPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&oXUQWPOp'[pq#rq!]'[!]!^#r!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R'aXUQOp'[pq#rq!]'[!]!^'|!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R(TTVPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR(gXOp'[pq#rq!]'[!]!^'|!^#q'[#q#r)S#r;'S'[;'S;=`)t<%lO'[P)VUOp)Sq!])S!]!^)i!^;'S)S;'S;=`)n<%lO)SP)nOVPP)qP;=`<%l)SR)wP;=`<%l'[R*RTzPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR*iT^PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+PT_PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+gThPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+}b[PUQO}#r}!O+v!O!Q#r!Q![+v![!]+v!]!c#r!c!}+v!}#R#r#R#S+v#S#T#r#T#o+v#o#q#r#q#r$W#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vR-YP;=`<%l+vR-dTwPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR-zTUQbPO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.bTZPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.xT]PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/^VUQO#o#r#o#p/s#p#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/zTSPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#r~0^TO#q#r#q#r0m#r;'S#r;'S;=`$g<%lO#r~0rOR~",tokenizers:[l,S,s,u,q,0,1],topRules:{Content:[0,2],Attribute:[1,9]},tokenPrec:0}),R=i.parser.configure({top:"SingleExpression"}),$=P.configure({props:[a({Text:o.content,Is:o.definitionOperator,AttributeName:o.attributeName,"AttributeValue ExpressionAttributeValue StatementAttributeValue":o.attributeValue,Entity:o.character,InvalidEntity:o.invalid,"BoundAttributeName/Identifier":o.attributeName,"EventName/Identifier":o.special(o.attributeName),"ReferenceName/Identifier":o.variableName,"DirectiveName/Identifier":o.keyword,"{{ }}":o.brace,"( )":o.paren,"[ ]":o.bracket,"# '*'":o.punctuation})]}),g={parser:R},c={parser:i.parser},b={parser:$.configure({wrap:t((O,r)=>"InterpolationContent"==O.name?g:null)})},m={parser:$.configure({wrap:t((O,r)=>{var e;return"InterpolationContent"==O.name?g:"AttributeInterpolation"!=O.name?null:"StatementAttributeValue"==(null===(e=O.node.parent)||void 0===e?void 0:e.name)?c:g}),top:"Attribute"})},v=e();function W(O){return O.configure({wrap:t(f)},"angular")}const d=W(v.language);function f(O,r){switch(O.name){case"Attribute":return/^[*#(\[]|\{\{/.test(r.read(O.from,O.to))?m:null;case"Text":return b}return null}function C(e={}){let t=v;if(e.base){if("html"!=e.base.language.name||!(e.base.language instanceof O))throw new RangeError("The base option must be the result of calling html(...)");t=e.base}return new r(t.language==v.language?d:W(t.language),[t.support,t.language.data.of({closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/})])}export{C as angular,d as angularLanguage};
|
2
2
|
//# sourceMappingURL=angular.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"angular.js","sources":["../node_modules/@codemirror/lang-angular/dist/index.js"],"sourcesContent":["import { LRLanguage, LanguageSupport } from '@codemirror/language';\nimport { html } from '@codemirror/lang-html';\nimport { javascriptLanguage } from '@codemirror/lang-javascript';\nimport { styleTags, tags } from '@lezer/highlight';\nimport { parseMixed } from '@lezer/common';\nimport { ExternalTokenizer, LRParser } from '@lezer/lr';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst Text = 1,\n attributeContentSingle = 33,\n attributeContentDouble = 34,\n scriptAttributeContentSingle = 35,\n scriptAttributeContentDouble = 36;\n\nconst text = /*@__PURE__*/new ExternalTokenizer(input => {\n let start = input.pos;\n for (;;) {\n if (input.next == 10 /* Ch.Newline */) {\n input.advance();\n break;\n }\n else if (input.next == 123 /* Ch.BraceL */ && input.peek(1) == 123 /* Ch.BraceL */ || input.next < 0) {\n break;\n }\n input.advance();\n }\n if (input.pos > start)\n input.acceptToken(Text);\n});\nfunction attrContent(quote, token, script) {\n return new ExternalTokenizer(input => {\n let start = input.pos;\n while (input.next != quote && input.next >= 0 &&\n (script || input.next != 38 /* Ch.Ampersand */ && (input.next != 123 /* Ch.BraceL */ || input.peek(1) != 123 /* Ch.BraceL */)))\n input.advance();\n if (input.pos > start)\n input.acceptToken(token);\n });\n}\nconst attrSingle = /*@__PURE__*/attrContent(39 /* Ch.SingleQuote */, attributeContentSingle, false);\nconst attrDouble = /*@__PURE__*/attrContent(34 /* Ch.DoubleQuote */, attributeContentDouble, false);\nconst scriptAttrSingle = /*@__PURE__*/attrContent(39 /* Ch.SingleQuote */, scriptAttributeContentSingle, true);\nconst scriptAttrDouble = /*@__PURE__*/attrContent(34 /* Ch.DoubleQuote */, scriptAttributeContentDouble, true);\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = /*@__PURE__*/LRParser.deserialize({\n version: 14,\n states: \"(jOVOqOOOeQpOOOvO!bO'#CaOOOP'#Cx'#CxQVOqOOO!OQpO'#CfO!WQpO'#ClO!]QpO'#CrO!bQpO'#CsOOQO'#Cv'#CvQ!gQpOOQ!lQpOOQ!qQpOOOOOV,58{,58{O!vOpO,58{OOOP-E6v-E6vO!{QpO,59QO#TQpO,59QOOQO,59W,59WO#YQpO,59^OOQO,59_,59_O#_QpOOO#_QpOOO#gQpOOOOOV1G.g1G.gO#oQpO'#CyO#tQpO1G.lOOQO1G.l1G.lO#|QpO1G.lOOQO1G.x1G.xO$UO`O'#DUO$ZOWO'#DUOOQO'#Co'#CoQOQpOOOOQO'#Cu'#CuO$`OtO'#CwO$qOrO'#CwOOQO,59e,59eOOQO-E6w-E6wOOQO7+$W7+$WO%SQpO7+$WO%[QpO7+$WOOOO'#Cp'#CpO%aOpO,59pOOOO'#Cq'#CqO%fOpO,59pOOOS'#Cz'#CzO%kOtO,59cOOQO,59c,59cOOOQ'#C{'#C{O%|OrO,59cO&_QpO<<GrOOQO<<Gr<<GrOOQO1G/[1G/[OOOS-E6x-E6xOOQO1G.}1G.}OOOQ-E6y-E6yOOQOAN=^AN=^\",\n stateData: \"&d~OvOS~OPROSQOVROWRO~OZTO[XO^VOaUOhWO~OR]OU^O~O[`O^aO~O[bO~O[cO~O[dO~ObeO~ObfO~ObgO~ORhO~O]kOwiO~O[lO~O_mO~OynOzoO~OysOztO~O[uO~O]wOwiO~O_yOwiO~OtzO~Os|O~OSQOV!OOW!OOr!OOy!QO~OSQOV!ROW!ROq!ROz!QO~O_!TOwiO~O]!UO~Oy!VO~Oz!VO~OSQOV!OOW!OOr!OOy!XO~OSQOV!ROW!ROq!ROz!XO~O]!ZO~O\",\n goto: \"#dyPPPPPzPPPP!WPPPPP!WPP!Z!^!a!d!dP!g!j!m!p!v#Q#WPPPPPPPP#^SROSS!Os!PT!Rt!SRYPRqeR{nR}oRZPRqfR[PRqgQSOR_SQj`SvjxRxlQ!PsR!W!PQ!StR!Y!SQpeRrf\",\n nodeNames: \"⚠ Text Content }} {{ Interpolation InterpolationContent Entity InvalidEntity Attribute BoundAttributeName [ Identifier ] ( ) ReferenceName # Is ExpressionAttributeValue AttributeInterpolation AttributeInterpolation EventName DirectiveName * StatementAttributeValue AttributeName AttributeValue\",\n maxTerm: 42,\n nodeProps: [\n [\"openedBy\", 3,\"{{\",15,\"(\"],\n [\"closedBy\", 4,\"}}\",14,\")\"],\n [\"isolate\", -4,5,19,25,27,\"\"]\n ],\n skippedNodes: [0],\n repeatNodeCount: 4,\n tokenData: \"0r~RyOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mqr#rrs%jst&Qtv#rvw&hwx)zxy*byz*xz{+`{}#r}!O+v!O!P-]!P!Q#r!Q![+v![!]+v!]!_#r!_!`-s!`!c#r!c!}+v!}#O.Z#O#P#r#P#Q.q#Q#R#r#R#S+v#S#T#r#T#o+v#o#p/X#p#q#r#q#r0Z#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vQ#wTUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rQ$ZSO#q#r#r;'S#r;'S;=`$g<%lO#rQ$jP;=`<%l#rR$t[UQvPOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mq#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR%qTyPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&XTaPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&oXUQWPOp'[pq#rq!]'[!]!^#r!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R'aXUQOp'[pq#rq!]'[!]!^'|!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R(TTVPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR(gXOp'[pq#rq!]'[!]!^'|!^#q'[#q#r)S#r;'S'[;'S;=`)t<%lO'[P)VUOp)Sq!])S!]!^)i!^;'S)S;'S;=`)n<%lO)SP)nOVPP)qP;=`<%l)SR)wP;=`<%l'[R*RTzPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR*iT^PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+PT_PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+gThPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+}b[PUQO}#r}!O+v!O!Q#r!Q![+v![!]+v!]!c#r!c!}+v!}#R#r#R#S+v#S#T#r#T#o+v#o#q#r#q#r$W#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vR-YP;=`<%l+vR-dTwPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR-zTUQbPO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.bTZPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.xT]PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/^VUQO#o#r#o#p/s#p#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/zTSPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#r~0^TO#q#r#q#r0m#r;'S#r;'S;=`$g<%lO#r~0rOR~\",\n tokenizers: [text, attrSingle, attrDouble, scriptAttrSingle, scriptAttrDouble, 0, 1],\n topRules: {\"Content\":[0,2],\"Attribute\":[1,9]},\n tokenPrec: 0\n});\n\nconst exprParser = /*@__PURE__*/javascriptLanguage.parser.configure({\n top: \"SingleExpression\"\n});\nconst baseParser = /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/styleTags({\n Text: tags.content,\n Is: tags.definitionOperator,\n AttributeName: tags.attributeName,\n \"AttributeValue ExpressionAttributeValue StatementAttributeValue\": tags.attributeValue,\n Entity: tags.character,\n InvalidEntity: tags.invalid,\n \"BoundAttributeName/Identifier\": tags.attributeName,\n \"EventName/Identifier\": /*@__PURE__*/tags.special(tags.attributeName),\n \"ReferenceName/Identifier\": tags.variableName,\n \"DirectiveName/Identifier\": tags.keyword,\n \"{{ }}\": tags.brace,\n \"( )\": tags.paren,\n \"[ ]\": tags.bracket,\n \"# '*'\": tags.punctuation\n })\n ]\n});\nconst exprMixed = { parser: exprParser }, statementMixed = { parser: javascriptLanguage.parser };\nconst textParser = /*@__PURE__*/baseParser.configure({\n wrap: /*@__PURE__*/parseMixed((node, input) => node.name == \"InterpolationContent\" ? exprMixed : null),\n});\nconst attrParser = /*@__PURE__*/baseParser.configure({\n wrap: /*@__PURE__*/parseMixed((node, input) => {\n var _a;\n return node.name == \"InterpolationContent\" ? exprMixed\n : node.name != \"AttributeInterpolation\" ? null\n : ((_a = node.node.parent) === null || _a === void 0 ? void 0 : _a.name) == \"StatementAttributeValue\" ? statementMixed : exprMixed;\n }),\n top: \"Attribute\"\n});\nconst textMixed = { parser: textParser }, attrMixed = { parser: attrParser };\nconst baseHTML = /*@__PURE__*/html();\nfunction mkAngular(language) {\n return language.configure({ wrap: parseMixed(mixAngular) }, \"angular\");\n}\n/**\nA language provider for Angular Templates.\n*/\nconst angularLanguage = /*@__PURE__*/mkAngular(baseHTML.language);\nfunction mixAngular(node, input) {\n switch (node.name) {\n case \"Attribute\":\n return /^[*#(\\[]|\\{\\{/.test(input.read(node.from, node.to)) ? attrMixed : null;\n case \"Text\":\n return textMixed;\n }\n return null;\n}\n/**\nAngular Template language support.\n*/\nfunction angular(config = {}) {\n let base = baseHTML;\n if (config.base) {\n if (config.base.language.name != \"html\" || !(config.base.language instanceof LRLanguage))\n throw new RangeError(\"The base option must be the result of calling html(...)\");\n base = config.base;\n }\n return new LanguageSupport(base.language == baseHTML.language ? angularLanguage : mkAngular(base.language), [base.support, base.language.data.of({\n closeBrackets: { brackets: [\"[\", \"{\", '\"'] },\n indentOnInput: /^\\s*[\\}\\]]$/\n })]);\n}\n\nexport { angular, angularLanguage };\n"],"names":["text","ExternalTokenizer","input","start","pos","next","advance","peek","acceptToken","attrContent","quote","token","script","attrSingle","attrDouble","scriptAttrSingle","scriptAttrDouble","parser","LRParser","deserialize","version","states","stateData","goto","nodeNames","maxTerm","nodeProps","skippedNodes","repeatNodeCount","tokenData","tokenizers","topRules","Content","Attribute","tokenPrec","exprParser","javascriptLanguage","configure","top","baseParser","props","styleTags","Text","tags","content","Is","definitionOperator","AttributeName","attributeName","attributeValue","Entity","character","InvalidEntity","invalid","special","variableName","keyword","brace","paren","bracket","punctuation","exprMixed","statementMixed","textMixed","wrap","parseMixed","node","name","attrMixed","_a","parent","baseHTML","html","mkAngular","language","mixAngular","angularLanguage","test","read","from","to","angular","config","base","LRLanguage","RangeError","LanguageSupport","support","data","of","closeBrackets","brackets","indentOnInput"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"angular.js","sources":["../node_modules/@codemirror/lang-angular/dist/index.js"],"sourcesContent":["import { LRLanguage, LanguageSupport } from '@codemirror/language';\nimport { html } from '@codemirror/lang-html';\nimport { javascriptLanguage } from '@codemirror/lang-javascript';\nimport { styleTags, tags } from '@lezer/highlight';\nimport { parseMixed } from '@lezer/common';\nimport { ExternalTokenizer, LRParser } from '@lezer/lr';\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst Text = 1,\n attributeContentSingle = 33,\n attributeContentDouble = 34,\n scriptAttributeContentSingle = 35,\n scriptAttributeContentDouble = 36;\n\nconst text = /*@__PURE__*/new ExternalTokenizer(input => {\n let start = input.pos;\n for (;;) {\n if (input.next == 10 /* Ch.Newline */) {\n input.advance();\n break;\n }\n else if (input.next == 123 /* Ch.BraceL */ && input.peek(1) == 123 /* Ch.BraceL */ || input.next < 0) {\n break;\n }\n input.advance();\n }\n if (input.pos > start)\n input.acceptToken(Text);\n});\nfunction attrContent(quote, token, script) {\n return new ExternalTokenizer(input => {\n let start = input.pos;\n while (input.next != quote && input.next >= 0 &&\n (script || input.next != 38 /* Ch.Ampersand */ && (input.next != 123 /* Ch.BraceL */ || input.peek(1) != 123 /* Ch.BraceL */)))\n input.advance();\n if (input.pos > start)\n input.acceptToken(token);\n });\n}\nconst attrSingle = /*@__PURE__*/attrContent(39 /* Ch.SingleQuote */, attributeContentSingle, false);\nconst attrDouble = /*@__PURE__*/attrContent(34 /* Ch.DoubleQuote */, attributeContentDouble, false);\nconst scriptAttrSingle = /*@__PURE__*/attrContent(39 /* Ch.SingleQuote */, scriptAttributeContentSingle, true);\nconst scriptAttrDouble = /*@__PURE__*/attrContent(34 /* Ch.DoubleQuote */, scriptAttributeContentDouble, true);\n\n// This file was generated by lezer-generator. You probably shouldn't edit it.\nconst parser = /*@__PURE__*/LRParser.deserialize({\n version: 14,\n states: \"(jOVOqOOOeQpOOOvO!bO'#CaOOOP'#Cx'#CxQVOqOOO!OQpO'#CfO!WQpO'#ClO!]QpO'#CrO!bQpO'#CsOOQO'#Cv'#CvQ!gQpOOQ!lQpOOQ!qQpOOOOOV,58{,58{O!vOpO,58{OOOP-E6v-E6vO!{QpO,59QO#TQpO,59QOOQO,59W,59WO#YQpO,59^OOQO,59_,59_O#_QpOOO#_QpOOO#gQpOOOOOV1G.g1G.gO#oQpO'#CyO#tQpO1G.lOOQO1G.l1G.lO#|QpO1G.lOOQO1G.x1G.xO$UO`O'#DUO$ZOWO'#DUOOQO'#Co'#CoQOQpOOOOQO'#Cu'#CuO$`OtO'#CwO$qOrO'#CwOOQO,59e,59eOOQO-E6w-E6wOOQO7+$W7+$WO%SQpO7+$WO%[QpO7+$WOOOO'#Cp'#CpO%aOpO,59pOOOO'#Cq'#CqO%fOpO,59pOOOS'#Cz'#CzO%kOtO,59cOOQO,59c,59cOOOQ'#C{'#C{O%|OrO,59cO&_QpO<<GrOOQO<<Gr<<GrOOQO1G/[1G/[OOOS-E6x-E6xOOQO1G.}1G.}OOOQ-E6y-E6yOOQOAN=^AN=^\",\n stateData: \"&d~OvOS~OPROSQOVROWRO~OZTO[XO^VOaUOhWO~OR]OU^O~O[`O^aO~O[bO~O[cO~O[dO~ObeO~ObfO~ObgO~ORhO~O]kOwiO~O[lO~O_mO~OynOzoO~OysOztO~O[uO~O]wOwiO~O_yOwiO~OtzO~Os|O~OSQOV!OOW!OOr!OOy!QO~OSQOV!ROW!ROq!ROz!QO~O_!TOwiO~O]!UO~Oy!VO~Oz!VO~OSQOV!OOW!OOr!OOy!XO~OSQOV!ROW!ROq!ROz!XO~O]!ZO~O\",\n goto: \"#dyPPPPPzPPPP!WPPPPP!WPP!Z!^!a!d!dP!g!j!m!p!v#Q#WPPPPPPPP#^SROSS!Os!PT!Rt!SRYPRqeR{nR}oRZPRqfR[PRqgQSOR_SQj`SvjxRxlQ!PsR!W!PQ!StR!Y!SQpeRrf\",\n nodeNames: \"⚠ Text Content }} {{ Interpolation InterpolationContent Entity InvalidEntity Attribute BoundAttributeName [ Identifier ] ( ) ReferenceName # Is ExpressionAttributeValue AttributeInterpolation AttributeInterpolation EventName DirectiveName * StatementAttributeValue AttributeName AttributeValue\",\n maxTerm: 42,\n nodeProps: [\n [\"openedBy\", 3,\"{{\",15,\"(\"],\n [\"closedBy\", 4,\"}}\",14,\")\"],\n [\"isolate\", -4,5,19,25,27,\"\"]\n ],\n skippedNodes: [0],\n repeatNodeCount: 4,\n tokenData: \"0r~RyOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mqr#rrs%jst&Qtv#rvw&hwx)zxy*byz*xz{+`{}#r}!O+v!O!P-]!P!Q#r!Q![+v![!]+v!]!_#r!_!`-s!`!c#r!c!}+v!}#O.Z#O#P#r#P#Q.q#Q#R#r#R#S+v#S#T#r#T#o+v#o#p/X#p#q#r#q#r0Z#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vQ#wTUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rQ$ZSO#q#r#r;'S#r;'S;=`$g<%lO#rQ$jP;=`<%l#rR$t[UQvPOX#rXY$mYZ$mZ]#r]^$m^p#rpq$mq#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR%qTyPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&XTaPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR&oXUQWPOp'[pq#rq!]'[!]!^#r!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R'aXUQOp'[pq#rq!]'[!]!^'|!^#q'[#q#r(d#r;'S'[;'S;=`)t<%lO'[R(TTVPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR(gXOp'[pq#rq!]'[!]!^'|!^#q'[#q#r)S#r;'S'[;'S;=`)t<%lO'[P)VUOp)Sq!])S!]!^)i!^;'S)S;'S;=`)n<%lO)SP)nOVPP)qP;=`<%l)SR)wP;=`<%l'[R*RTzPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR*iT^PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+PT_PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+gThPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR+}b[PUQO}#r}!O+v!O!Q#r!Q![+v![!]+v!]!c#r!c!}+v!}#R#r#R#S+v#S#T#r#T#o+v#o#q#r#q#r$W#r%W#r%W;'S+v;'S;:j-V;:j;=`$g<%lO+vR-YP;=`<%l+vR-dTwPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR-zTUQbPO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.bTZPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR.xT]PUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/^VUQO#o#r#o#p/s#p#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#rR/zTSPUQO#q#r#q#r$W#r;'S#r;'S;=`$g<%lO#r~0^TO#q#r#q#r0m#r;'S#r;'S;=`$g<%lO#r~0rOR~\",\n tokenizers: [text, attrSingle, attrDouble, scriptAttrSingle, scriptAttrDouble, 0, 1],\n topRules: {\"Content\":[0,2],\"Attribute\":[1,9]},\n tokenPrec: 0\n});\n\nconst exprParser = /*@__PURE__*/javascriptLanguage.parser.configure({\n top: \"SingleExpression\"\n});\nconst baseParser = /*@__PURE__*/parser.configure({\n props: [\n /*@__PURE__*/styleTags({\n Text: tags.content,\n Is: tags.definitionOperator,\n AttributeName: tags.attributeName,\n \"AttributeValue ExpressionAttributeValue StatementAttributeValue\": tags.attributeValue,\n Entity: tags.character,\n InvalidEntity: tags.invalid,\n \"BoundAttributeName/Identifier\": tags.attributeName,\n \"EventName/Identifier\": /*@__PURE__*/tags.special(tags.attributeName),\n \"ReferenceName/Identifier\": tags.variableName,\n \"DirectiveName/Identifier\": tags.keyword,\n \"{{ }}\": tags.brace,\n \"( )\": tags.paren,\n \"[ ]\": tags.bracket,\n \"# '*'\": tags.punctuation\n })\n ]\n});\nconst exprMixed = { parser: exprParser }, statementMixed = { parser: javascriptLanguage.parser };\nconst textParser = /*@__PURE__*/baseParser.configure({\n wrap: /*@__PURE__*/parseMixed((node, input) => node.name == \"InterpolationContent\" ? exprMixed : null),\n});\nconst attrParser = /*@__PURE__*/baseParser.configure({\n wrap: /*@__PURE__*/parseMixed((node, input) => {\n var _a;\n return node.name == \"InterpolationContent\" ? exprMixed\n : node.name != \"AttributeInterpolation\" ? null\n : ((_a = node.node.parent) === null || _a === void 0 ? void 0 : _a.name) == \"StatementAttributeValue\" ? statementMixed : exprMixed;\n }),\n top: \"Attribute\"\n});\nconst textMixed = { parser: textParser }, attrMixed = { parser: attrParser };\nconst baseHTML = /*@__PURE__*/html();\nfunction mkAngular(language) {\n return language.configure({ wrap: parseMixed(mixAngular) }, \"angular\");\n}\n/**\nA language provider for Angular Templates.\n*/\nconst angularLanguage = /*@__PURE__*/mkAngular(baseHTML.language);\nfunction mixAngular(node, input) {\n switch (node.name) {\n case \"Attribute\":\n return /^[*#(\\[]|\\{\\{/.test(input.read(node.from, node.to)) ? attrMixed : null;\n case \"Text\":\n return textMixed;\n }\n return null;\n}\n/**\nAngular Template language support.\n*/\nfunction angular(config = {}) {\n let base = baseHTML;\n if (config.base) {\n if (config.base.language.name != \"html\" || !(config.base.language instanceof LRLanguage))\n throw new RangeError(\"The base option must be the result of calling html(...)\");\n base = config.base;\n }\n return new LanguageSupport(base.language == baseHTML.language ? angularLanguage : mkAngular(base.language), [base.support, base.language.data.of({\n closeBrackets: { brackets: [\"[\", \"{\", '\"'] },\n indentOnInput: /^\\s*[\\}\\]]$/\n })]);\n}\n\nexport { angular, angularLanguage };\n"],"names":["text","ExternalTokenizer","input","start","pos","next","advance","peek","acceptToken","attrContent","quote","token","script","attrSingle","attrDouble","scriptAttrSingle","scriptAttrDouble","parser","LRParser","deserialize","version","states","stateData","goto","nodeNames","maxTerm","nodeProps","skippedNodes","repeatNodeCount","tokenData","tokenizers","topRules","Content","Attribute","tokenPrec","exprParser","javascriptLanguage","configure","top","baseParser","props","styleTags","Text","tags","content","Is","definitionOperator","AttributeName","attributeName","attributeValue","Entity","character","InvalidEntity","invalid","special","variableName","keyword","brace","paren","bracket","punctuation","exprMixed","statementMixed","textMixed","wrap","parseMixed","node","name","attrMixed","_a","parent","baseHTML","html","mkAngular","language","mixAngular","angularLanguage","test","read","from","to","angular","config","base","LRLanguage","RangeError","LanguageSupport","support","data","of","closeBrackets","brackets","indentOnInput"],"mappings":"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","x_google_ignoreList":[0]}
|