6 implementations of
Aspire.Dashboard.Components.Tests (2)
Controls\ApplicationNameTests.cs (1)
82public LocalizedString this[string name] => new LocalizedString(name, $"Localized:{name}");
tests\Shared\TestStringLocalizer.cs (1)
10public LocalizedString this[string name] => new LocalizedString(name, $"Localized:{name}");
Aspire.Dashboard.Playwright.Tests (1)
tests\Shared\TestStringLocalizer.cs (1)
10public LocalizedString this[string name] => new LocalizedString(name, $"Localized:{name}");
Aspire.Dashboard.Tests (1)
tests\Shared\TestStringLocalizer.cs (1)
10public LocalizedString this[string name] => new LocalizedString(name, $"Localized:{name}");
Microsoft.Extensions.Localization (1)
ResourceManagerStringLocalizer.cs (1)
99public virtual LocalizedString this[string name]
Microsoft.Extensions.Localization.Abstractions (1)
StringLocalizerOfT.cs (1)
30public virtual LocalizedString this[string name]
500 references to
Aspire.Dashboard (442)
Components\Controls\ApplicationName.razor.cs (1)
83applicationName = string.Format(CultureInfo.InvariantCulture, Loc[ResourceName], DashboardClient.ApplicationName);
Components\Controls\ApplicationSummary.razor.cs (11)
123new(GroupOverview.Summary, new Icons.Regular.Size20.DataBarVertical(), DialogsLoc[nameof(Dashboard.Resources.Dialogs.SettingsDialogGroupOverviewSummary)]), 124new(GroupOverview.Graph, new Icons.Regular.Size20.ShareAndroid(), Loc[nameof(Dashboard.Resources.Resources.GraphPageTitle)]) 204LabelFormat: Loc[nameof(Dashboard.Resources.Resources.ResourcesGraphResourceActionsButton)].Value), 207Tooltip: ColumnsLoc[nameof(Dashboard.Resources.Columns.HiddenResourceIconTooltip)].Value), 645ValueDescription = Loc[nameof(Dashboard.Resources.Resources.ResourcesGraphExportMermaidButton)], 646MarkdownDescription = Loc[nameof(Dashboard.Resources.Resources.ResourcesGraphExportMermaidDescription)], 717return Loc[nameof(Dashboard.Resources.Resources.ResourcesNoResources)]; 723? Loc[nameof(Dashboard.Resources.Resources.HomeHeadlineSingleAttention)] 730? Loc[nameof(Dashboard.Resources.Resources.HomeHeadlineSinglePending)] 737? Loc[nameof(Dashboard.Resources.Resources.HomeHeadlineSingleRunning)] 741return Loc[nameof(Dashboard.Resources.Resources.HomeHeadlineHealthy)];
Components\Controls\Chart\ChartBase.cs (1)
206unit = string.Format(CultureInfo.CurrentCulture, Loc[nameof(ControlsStrings.ChartContainerUnitPerInterval)], unit);
Components\Controls\Chart\MetricTable.razor.cs (5)
109Title = DialogsLoc[nameof(Dashboard.Resources.Dialogs.ExemplarsDialogTitle)], 110PrimaryAction = DialogsLoc[nameof(Dashboard.Resources.Dialogs.DialogCloseButtonText)], 318ValueDirectionChange.Up => (new Icons.Filled.Size16.ArrowCircleUp().WithColor(Color.Success), Loc[nameof(ControlsStrings.MetricTableValueIncreased)]), 319ValueDirectionChange.Down => (new Icons.Filled.Size16.ArrowCircleDown().WithColor(Color.Warning), Loc[nameof(ControlsStrings.MetricTableValueDecreased)]), 320ValueDirectionChange.Constant => (new Icons.Filled.Size16.ArrowCircleRight().WithColor(Color.Info), Loc[nameof(ControlsStrings.MetricTableValueNoChange)]),
Components\Controls\Chart\PlotlyChart.razor.cs (5)
53{Loc[nameof(ControlsStrings.PlotlyChartValue)]}: {formattedValue}<br /> 54{Loc[nameof(ControlsStrings.PlotlyChartTime)]}: {FormatHelpers.FormatTime(TimeProvider, xValue)} 150Name = Loc[nameof(ControlsStrings.PlotlyChartExemplars)], 167title = $"{Loc[nameof(ControlsStrings.PlotlyChartTrace)]}: {OtlpHelpers.ToShortenedId(exemplar.TraceId)}"; 172title = Loc[nameof(ControlsStrings.PlotlyChartExemplar)];
Components\Controls\ClearSignalsButton.razor.cs (3)
46Text = ControlsStringsLoc[name: nameof(ControlsStrings.ClearAllResources)], 56? ControlsStringsLoc[nameof(ControlsStrings.ClearPendingSelectedResource)] 57: string.Format(CultureInfo.InvariantCulture, ControlsStringsLoc[name: nameof(ControlsStrings.ClearSelectedResource)], SelectedResource.Name),
Components\Controls\DashboardRunMenu.razor.cs (7)
28private string RunSelectTitle => Loc[nameof(LayoutResources.DashboardRunMenuTitle)]; 31? Loc[nameof(LayoutResources.DashboardRunMenuCurrent)] 75Tooltip = isCompatible ? null : Loc[nameof(LayoutResources.DashboardRunMenuIncompatibleTooltip)].Value, 77SecondaryActionAriaLabel = Loc[run.IsPinned 98Loc[nameof(LayoutResources.DashboardRunMenuHelp)], 101tooltip: Loc[nameof(LayoutResources.DashboardRunMenuHelpTooltip)])); 122return Loc[nameof(LayoutResources.DashboardRunMenuCurrent)];
Components\Controls\DashboardRunPill.razor.cs (1)
15private string Title => Loc[nameof(LayoutResources.DashboardRunSelectTitle)];
Components\Controls\DashboardRunSelect.razor.cs (5)
23? Loc[nameof(LayoutResources.DashboardRunSelectTitle)] 27? Loc[nameof(LayoutResources.DashboardRunSelectCurrent)] 95{ TotalMinutes: < 1 } => loc[nameof(LayoutResources.DashboardRunSelectMomentAgo)], 96{ TotalMinutes: < 2 } => loc[nameof(LayoutResources.DashboardRunSelectMinuteAgo)], 99{ TotalDays: < 2 } => loc[nameof(LayoutResources.DashboardRunSelectDayAgo)],
Components\Controls\Grid\AspireFluentDataGrid.cs (2)
51contentBuilder.AddComponentParameter(7, nameof(AspireProgressRing.AriaLabel), Loc[nameof(ControlsStrings.Loading)].Value); 54contentBuilder.AddContent(9, Loc[nameof(ControlsStrings.Loading)]);
Components\Controls\MissingParametersPanel.razor.cs (2)
223DialogsLoc[nameof(Resources.Dialogs.InteractionFileExceedsMaxSize)], 246ErrorMessage = DialogsLoc[nameof(Resources.Dialogs.InteractionFileUploadFailed)]
Components\Controls\ResourcePaneInsights.razor.cs (3)
52var context = string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Layout.ResourcePaneActivityContext)], 58var samples = string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Layout.ResourcePaneActivitySamples)], snapshot.Activity.DurationSampleCount); 60? $"{context} {samples} {Loc[nameof(Resources.Layout.ResourcePaneActivitySampled)]}"
Components\Controls\TelemetryEmptyContent.razor.cs (2)
29Title = Loc[nameof(Resources.Dialogs.TelemetryHelpDialogTitle)], 30PrimaryAction = Loc[nameof(Resources.Dialogs.DialogCloseButtonText)],
Components\Controls\TerminalDisconnectedBanner.razor.cs (3)
73? Loc[nameof(Resources.TerminalStrings.TerminalMountFailed)].Value 76: Loc[nameof(Resources.TerminalStrings.TerminalDisconnectedMessage)].Value; 80: Loc[nameof(Resources.TerminalStrings.TerminalShowDisconnectedBanner)].Value;
Components\Controls\TerminalTitle.razor.cs (4)
123ControlsLoc[nameof(Resources.ControlsStrings.GridValueCopyToClipboard)], 124ControlsLoc[nameof(Resources.ControlsStrings.GridValueCopied)], 125("data-copyfailed", Loc[nameof(Resources.TerminalStrings.TerminalCopyFailed)].Value), 136private string ProgressLabel => Loc[State?.ProgressState switch
Components\Controls\TerminalView.razor.cs (3)
249Label = Loc[nameof(Resources.TerminalStrings.TerminalInputLabel)], 392private string GetPaletteLabel(string palette) => Loc[palette switch 459private string GetErrorMessage(string? error) => Loc[error switch
Components\Controls\TerminalWindowButton.razor.cs (5)
155await ToastService.ShowErrorToastAsync(Loc[nameof(Resources.TerminalStrings.TerminalWindowTrackingFailed)]); 197await ToastService.ShowErrorToastAsync(Loc[nameof(Resources.TerminalStrings.TerminalWindowTrackingFailed)]); 201await ToastService.ShowErrorToastAsync(Loc[nameof(Resources.TerminalStrings.TerminalToolbarOpenInWindowFailed)]); 217await ToastService.ShowErrorToastAsync(Loc[nameof(Resources.TerminalStrings.TerminalToolbarOpenInWindowFailed)]); 221await ToastService.ShowErrorToastAsync(Loc[nameof(Resources.TerminalStrings.TerminalToolbarOpenInWindowBlocked)]);
Components\Controls\UserProfile.razor.cs (1)
58_name = Loc[nameof(Login.AuthorizedUser)];
Components\Dialogs\AIAgentsHelp.razor.cs (2)
39? string.Format(CultureInfo.CurrentCulture, Loc[nameof(DialogsLoc.AIAgentsDialogAppHostDescription)], AppHostLearnMoreUrl, InstallCliUrl) 40: string.Format(CultureInfo.CurrentCulture, Loc[nameof(DialogsLoc.AIAgentsDialogStandaloneDescription)], GetDashboardUrl(), StandaloneLearnMoreUrl, InstallCliUrl);
Components\Dialogs\DashboardFeedbackDialog.razor.cs (15)
66DashboardFeedbackReason.Navigation => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonNavigation)], 67DashboardFeedbackReason.FindingApplicationUrls => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonFindingApplicationUrls)], 68DashboardFeedbackReason.TelemetryWorkflow => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonTelemetryWorkflow)], 69DashboardFeedbackReason.Terminals => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonTerminals)], 70DashboardFeedbackReason.PerformanceOrAccessibility => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonPerformanceOrAccessibility)], 71DashboardFeedbackReason.MissingFeature => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonMissingFeature)], 72DashboardFeedbackReason.Other => Loc[nameof(Resources.Dialogs.DashboardFeedbackReasonOther)], 78DashboardFeedbackUsageDuration.NotSpecified => Loc[nameof(Resources.Dialogs.DashboardFeedbackDurationNotSpecified)], 79DashboardFeedbackUsageDuration.LessThanOneHour => Loc[nameof(Resources.Dialogs.DashboardFeedbackDurationLessThanOneHour)], 80DashboardFeedbackUsageDuration.OneDay => Loc[nameof(Resources.Dialogs.DashboardFeedbackDurationOneDay)], 81DashboardFeedbackUsageDuration.TwoToSevenDays => Loc[nameof(Resources.Dialogs.DashboardFeedbackDurationTwoToSevenDays)], 82DashboardFeedbackUsageDuration.MoreThanOneWeek => Loc[nameof(Resources.Dialogs.DashboardFeedbackDurationMoreThanOneWeek)], 105_status = Loc[nameof(Resources.Dialogs.DashboardFeedbackCopyFailed)]; 114_status = Loc[nameof(Resources.Dialogs.DashboardFeedbackCopyFailed)]; 120var title = $"[Dashboard feedback] {Loc[nameof(Resources.Dialogs.DashboardFeedbackMarkdownTitle)]}";
Components\Dialogs\DashboardRunsDialog.razor.cs (1)
88? Loc[nameof(LayoutResources.DashboardRunSelectCurrent)]
Components\Dialogs\HelpDialog.razor.cs (16)
112new("learn", Loc[nameof(Resources.Dialogs.HelpDialogLearnHeading)], 114new(LayoutLoc[nameof(Resources.Layout.MainLayoutAspireDashboardHelpLink)], 115Loc[nameof(Resources.Dialogs.HelpDialogDashboardDocumentationDescription)], 118new(Loc[nameof(Resources.Dialogs.HelpDialogAspireDocumentationTitle)], 119Loc[nameof(Resources.Dialogs.HelpDialogAspireDocumentationDescription)], 123new("community", Loc[nameof(Resources.Dialogs.HelpDialogCommunityHeading)], 125new(Loc[nameof(Resources.Dialogs.HelpDialogDiscordTitle)], 126Loc[nameof(Resources.Dialogs.HelpDialogDiscordDescription)], 129new(LayoutLoc[nameof(Resources.Layout.MainLayoutAspireRepoLink)], 130Loc[nameof(Resources.Dialogs.HelpDialogRepoDescription)], 133new(Loc[nameof(Resources.Dialogs.HelpDialogReportIssueTitle)], 134Loc[nameof(Resources.Dialogs.HelpDialogReportIssueDescription)], 137new(Loc[nameof(Resources.Dialogs.HelpDialogDashboardFeedbackTitle)], 138Loc[nameof(Resources.Dialogs.HelpDialogDashboardFeedbackDescription)], 144new(Loc[nameof(Resources.Dialogs.HelpDialogGameTitle)], 145Loc[nameof(Resources.Dialogs.HelpDialogGameDescription)],
Components\Dialogs\InteractionsInputDialog.razor.cs (4)
245? Loc[nameof(Resources.Dialogs.InteractionFilePlaceholderMultiple)] 246: Loc[nameof(Resources.Dialogs.InteractionFilePlaceholder)]; 258fileReferences.Add(new FileReferenceViewModel { Name = file.Name, ErrorMessage = string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Dialogs.InteractionFileExceedsMaxSize)], FormatHelpers.FormatFileSize(maxFileSize)) }); 270fileReferences.Add(new FileReferenceViewModel { Name = file.Name, ErrorMessage = Loc[nameof(Resources.Dialogs.InteractionFileUploadFailed)] });
Components\Dialogs\KeyboardShortcutsHelp.razor.cs (24)
25new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryPageNavigation)], 27new KeyboardShortcut(AspireKeyboardShortcut.GoToResources, ["r"], Loc[nameof(Resources.Dialogs.HelpDialogGoToResources)]), 28new KeyboardShortcut(AspireKeyboardShortcut.GoToParameters, ["p"], Loc[nameof(Resources.Dialogs.HelpDialogGoToParameters)]), 29new KeyboardShortcut(AspireKeyboardShortcut.GoToGraph, ["g"], Loc[nameof(Resources.Dialogs.HelpDialogGoToGraph)]), 30new KeyboardShortcut(AspireKeyboardShortcut.GoToTerminals, ["e"], Loc[nameof(Resources.Dialogs.HelpDialogGoToTerminals)]), 31new KeyboardShortcut(AspireKeyboardShortcut.GoToExtensions, ["x"], Loc[nameof(Resources.Dialogs.HelpDialogGoToExtensions)]), 33new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryTelemetry)], 35new KeyboardShortcut(AspireKeyboardShortcut.GoToTelemetrySources, ["o"], Loc[nameof(Resources.Dialogs.HelpDialogGoToTelemetrySources)]), 36new KeyboardShortcut(AspireKeyboardShortcut.GoToConsoleLogs, ["c"], Loc[nameof(Resources.Dialogs.HelpDialogGoToConsoleLogs)]), 37new KeyboardShortcut(AspireKeyboardShortcut.GoToStructuredLogs, ["s"], Loc[nameof(Resources.Dialogs.HelpDialogGoToStructuredLogs)]), 38new KeyboardShortcut(AspireKeyboardShortcut.GoToTraces, ["t"], Loc[nameof(Resources.Dialogs.HelpDialogGoToTraces)]), 39new KeyboardShortcut(AspireKeyboardShortcut.GoToMetrics, ["m"], Loc[nameof(Resources.Dialogs.HelpDialogGoToMetrics)]), 41new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryResourceGraph)], 45new KeyboardShortcut(AspireKeyboardShortcut.GoToGraph, ["o"], Loc[nameof(Resources.Dialogs.HelpDialogPlayGame)]), 47new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryPanels)], 49new KeyboardShortcut(AspireKeyboardShortcut.IncreasePanelSize, ["+"], Loc[nameof(Resources.Dialogs.HelpDialogIncreasePanelSize)]), 50new KeyboardShortcut(AspireKeyboardShortcut.DecreasePanelSize, ["-"], Loc[nameof(Resources.Dialogs.HelpDialogDecreasePanelSize)]), 51new KeyboardShortcut(AspireKeyboardShortcut.ResetPanelSize, ["Shift", "R"], Loc[nameof(Resources.Dialogs.HelpDialogResetPanelSize)]), 52new KeyboardShortcut(AspireKeyboardShortcut.ToggleOrientation, ["Shift", "T"], Loc[nameof(Resources.Dialogs.HelpDialogTogglePanelOrientation)]), 53new KeyboardShortcut(AspireKeyboardShortcut.ClosePanel, ["Shift", "X"], Loc[nameof(Resources.Dialogs.HelpDialogTogglePanelOpen)]), 55new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryNavigation)], 57new KeyboardShortcut(AspireKeyboardShortcut.Help, ["?"], Loc[nameof(Resources.Dialogs.HelpDialogGoToHelp)]), 58new KeyboardShortcut(AspireKeyboardShortcut.Settings, ["Shift", "S"], Loc[nameof(Resources.Dialogs.HelpDialogGoToSettings)]), 59new KeyboardShortcut(AspireKeyboardShortcut.ToggleTerminalDock, ["`"], Loc[nameof(Resources.Dialogs.HelpDialogToggleTerminalDock)]),
Components\Dialogs\ManageDataDialog.razor.cs (9)
345private string GetHeaderSelectionLabel() => Loc[nameof(Resources.Dialogs.ManageDataAllDataCheckboxLabel)]; 369AspireDataType.ResourceDetails => Loc[nameof(Resources.Dialogs.ManageDataResource)], 370AspireDataType.ConsoleLogs => Loc[nameof(Resources.Dialogs.ManageDataConsoleLogs)], 371AspireDataType.StructuredLogs => Loc[nameof(Resources.Dialogs.ManageDataStructuredLogs)], 372AspireDataType.Traces => Loc[nameof(Resources.Dialogs.ManageDataTraces)], 373AspireDataType.Metrics => Loc[nameof(Resources.Dialogs.ManageDataMetrics)], 583_errorMessage = $"{Loc[nameof(Resources.Dialogs.ManageDataRemoveErrorMessage)]}: {ex.Message}"; 619_errorMessage = $"{Loc[nameof(Resources.Dialogs.ManageDataImportErrorMessage)]}: {ex.Message}"; 648_errorMessage = $"{Loc[nameof(Resources.Dialogs.ManageDataExportErrorMessage)]}: {ex.Message}";
Components\Dialogs\SettingsDialog.razor.cs (1)
98new(GroupOverview.Graph, new Icons.Regular.Size20.ShareAndroid(), ResourcesLoc[nameof(Dashboard.Resources.Resources.GraphPageTitle)]),
Components\Dialogs\TelemetryHelpDialog.razor.cs (12)
57string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Dialogs.TelemetryHelpIntroduction)], 66$"| {Loc[nameof(Resources.Dialogs.TelemetryHelpProtocolHeader)]} | {Loc[nameof(Resources.Dialogs.TelemetryHelpEndpointHeader)]} |", 81sections.Add(Loc[nameof(Resources.Dialogs.TelemetryHelpApiKeyDescription)]); 85sections.Add(Loc[nameof(Resources.Dialogs.TelemetryHelpCertificateDescription)]); 90sections.Add(Loc[nameof(Resources.Dialogs.TelemetryHelpNoEndpointsDescription)]); 95sections.Add(Loc[nameof(Resources.Dialogs.TelemetryHelpContainerDescription)]); 98Loc[nameof(Resources.Dialogs.TelemetryHelpSendTelemetryLink)], SendTelemetryUrl)); 101sections.Add(string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Dialogs.TelemetryHelpImportDescription)], 102Loc[nameof(Resources.Dialogs.SettingsImportButtonText)], Loc[nameof(Resources.Dialogs.ManageDataDialogTitle)])); 104Loc[nameof(Resources.Dialogs.TelemetryHelpManageDataLink)], ManageDataUrl));
Components\Interactions\InteractionsProvider.cs (3)
771return Loc[nameof(Resources.Dialogs.InteractionButtonClose)]; 774return Loc[nameof(Resources.Dialogs.InteractionButtonOk)]; 786: Loc[nameof(Resources.Dialogs.InteractionButtonCancel)];
Components\Layout\MainLayout.razor.cs (12)
259unsecuredEndpointsMessage.AppendLine(Loc[nameof(Resources.Layout.MessageUnsecuredEndpointTelemetryBody)]); 263unsecuredEndpointsMessage.AppendLine(Loc[nameof(Resources.Layout.MessageUnsecuredEndpointApiBody)]); 277Title = Loc[nameof(Resources.Layout.MessageUnsecuredEndpointTitle)], 279LinkText = Loc[nameof(Resources.Layout.MessageUnsecuredEndpointLink)], 422Title = Loc[nameof(Resources.Layout.MainLayoutHelp)], 423PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)], 482Title = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogTitle)], 483PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)].Value, 507Title = Loc[nameof(Resources.Layout.MainLayoutNotificationCenterTitle)], 508PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)].Value, 545Title = Loc[nameof(Resources.Layout.DashboardRunSelectTitle)], 546PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)].Value,
Components\Layout\MobileNavMenu.razor.cs (7)
149Loc[nameof(Resources.Layout.NavMenuTerminalsTab)], 159Loc[nameof(Resources.Layout.MainLayoutAspireRepoLink)], 168Loc[nameof(Resources.Layout.MainLayoutKeyboardShortcuts)], 174Loc[nameof(Resources.Layout.MainLayoutAspireDashboardHelpLink)], 185Loc[nameof(Resources.Layout.MainLayoutLaunchAIAgents)], 192Loc[nameof(Resources.Layout.MainLayoutLaunchNotifications)], 198Loc[nameof(Resources.Layout.MainLayoutLaunchSettings)],
Components\Layout\ResourcesLayout.razor.cs (56)
599Loc[nameof(Dashboard.Resources.Layout.ResourceTabsLandmark)].Value); 1361ResourcePaneGrouping.Tags => value ?? Loc[nameof(Resources.Layout.ResourcePaneUntaggedGroup)], 1362ResourcePaneGrouping.State => string.IsNullOrEmpty(value) ? ColumnsLoc[nameof(Columns.UnknownStateLabel)] : value.Humanize(), 1397Text = Loc[nameof(Resources.Layout.ResourcePaneGrouping)], 1406Text = Loc[grouping switch 1526new("types", ResourcesLoc[nameof(Dashboard.Resources.Resources.ResourcesResourceTypesHeader)], _filter.ResourceTypesToVisibility, r => [r.ResourceType], 1531Loc[nameof(Resources.Layout.NavMenuTelemetrySourcesTab)], 1536new("states", ResourcesLoc[nameof(Dashboard.Resources.Resources.ResourcesResourceStatesHeader)], _filter.ResourceStatesToVisibility, r => [r.State ?? string.Empty]), 1537new("health", ResourcesLoc[nameof(Dashboard.Resources.Resources.ResourcesDetailsHealthStateProperty)], _filter.ResourceHealthStatusesToVisibility, r => [r.HealthStatus?.Humanize() ?? string.Empty]), 1539Loc[nameof(Resources.Layout.NavMenuTagsTab)], 1542key => string.IsNullOrEmpty(key) ? Loc[nameof(Resources.Layout.ResourcePaneUntaggedGroup)] : key) 1606await ToastService.ShowWarningToastAsync(Loc[nameof(Resources.Layout.ResourcePaneReorderUnavailable)]); 1612await ToastService.ShowWarningToastAsync(Loc[nameof(Resources.Layout.ResourcePaneReorderUnavailable)]); 1617Loc[after ? nameof(Resources.Layout.ResourcePaneMovedAfter) : nameof(Resources.Layout.ResourcePaneMovedBefore)], 1635await ToastService.ShowWarningToastAsync(Loc[nameof(Resources.Layout.ResourcePaneGroupReorderUnavailable)]); 1641await ToastService.ShowWarningToastAsync(Loc[nameof(Resources.Layout.ResourcePaneGroupReorderUnavailable)]); 1646Loc[after ? nameof(Resources.Layout.ResourcePaneMovedAfter) : nameof(Resources.Layout.ResourcePaneMovedBefore)], 1719Text = hasCollapsed ? ResourcesLoc[nameof(Resources.Resources.ResourceExpandAllChildren)] : ResourcesLoc[nameof(Resources.Resources.ResourceCollapseAllChildren)], 1767? (Loc[nameof(Resources.Layout.ResourceHeaderStopped)], stopTimeStamp) 1769? (Loc[nameof(Resources.Layout.ResourceHeaderStarted)], startTimeStamp) 1839return string.Format(CultureInfo.CurrentCulture, Loc[nameof(Dashboard.Resources.Layout.ResourcePaneChildOf)], parent); 1848return names.Length == 0 ? null : string.Format(CultureInfo.CurrentCulture, Loc[label], string.Join(", ", names)); 1894Text = TerminalLoc[nameof(TerminalStrings.TerminalTitle)], 1981descriptions.Add($"{ResourcesLoc[nameof(Resources.Resources.ResourcesDetailsHealthStateProperty)]}: {health.Humanize()}"); 1997descriptions.Add(ColumnsLoc[nameof(Columns.HiddenResourceIconTooltip)]); 2001descriptions.Add(string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Layout.ResourcePaneUnviewedErrors)], errorCount)); 2025ResourceTab.Console => Loc[nameof(Resources.Layout.ResourcePaneParameterNoConsoleLogs)].Value, 2026ResourceTab.StructuredLogs => Loc[nameof(Resources.Layout.ResourcePaneParameterNoStructuredLogs)].Value, 2027ResourceTab.Traces => Loc[nameof(Resources.Layout.ResourcePaneParameterNoTraces)].Value, 2028ResourceTab.Metrics => Loc[nameof(Resources.Layout.ResourcePaneParameterNoMetrics)].Value, 2029ResourceTab.Terminal => Loc[nameof(Resources.Layout.ResourcePaneParameterNoTerminal)].Value, 2036ResourceTab.Parameters => Loc[nameof(Resources.Layout.ResourceTabUnavailable)].Value, 2037ResourceTab.Terminal when !CanViewResourceTerminal(resource) => Loc[nameof(Resources.Layout.ResourceTabUnavailable)].Value, 2047? Loc[nameof(Resources.Layout.ResourceTabUnavailable)].Value 2056ResourceTab.StructuredLogs when !availability.HasLogs => Loc[nameof(Resources.Layout.ResourcePaneNoStructuredLogs)].Value, 2057ResourceTab.Traces when !availability.HasTraces => Loc[nameof(Resources.Layout.ResourcePaneNoTraces)].Value, 2058ResourceTab.Metrics when !availability.HasMetrics => Loc[nameof(Resources.Layout.ResourcePaneNoMetrics)].Value, 2065ResourceTab.StructuredLogs when !isParameter => Loc[nameof(Resources.Layout.ResourcePaneNoStructuredLogsLabel)].Value, 2066ResourceTab.Traces when !isParameter => Loc[nameof(Resources.Layout.ResourcePaneNoTracesLabel)].Value, 2067ResourceTab.Metrics when !isParameter => Loc[nameof(Resources.Layout.ResourcePaneNoMetricsLabel)].Value, 2068_ => Loc[nameof(Resources.Layout.ResourcePaneNotApplicableLabel)].Value 2188Loc[DashboardClient.IsEnabled ? nameof(Resources.Layout.ResourceHeaderAllResources) : nameof(Resources.Layout.TelemetryHeaderAllSources)]; 2211Loc[resourceCount == 1 ? nameof(Resources.Layout.ResourcePaneCountSingular) : nameof(Resources.Layout.ResourcePaneCountPlural)], 2216Loc[parameterCount == 1 ? nameof(Resources.Layout.ResourcePaneParameterCountSingular) : nameof(Resources.Layout.ResourcePaneParameterCountPlural)], 2221Loc[telemetrySourceCount == 1 ? nameof(Resources.Layout.TelemetryPaneCountSingular) : nameof(Resources.Layout.TelemetryPaneCountPlural)], 2230return string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Layout.ResourcePaneCountPlural)], 0); 2235(combined, count) => string.Format(CultureInfo.CurrentCulture, Loc[nameof(Resources.Layout.ResourcePaneMixedCount)], combined, count)); 2744yield return CreateTab(ResourceTab.Parameters, Loc[nameof(Resources.Layout.NavMenuParametersTab)], new Icons.Regular.Size24.Key(), isVisible: true); 2755yield return CreateTab(ResourceTab.Overview, Loc[nameof(Resources.Layout.ResourceTabOverview)], new Icons.Regular.Size24.Board(), 2757yield return CreateTab(ResourceTab.Console, Loc[nameof(Resources.Layout.NavMenuConsoleLogsTab)], new Icons.Regular.Size24.SlideText(), 2759yield return CreateTab(ResourceTab.Terminal, TerminalLoc[nameof(TerminalStrings.TerminalTitle)], new Icons.Regular.Size20.WindowConsole(), 2761yield return CreateTab(ResourceTab.StructuredLogs, StructuredLogsLoc[nameof(Resources.StructuredLogs.StructuredLogsHeader)], new Icons.Regular.Size24.SlideTextSparkle(), 2763yield return CreateTab(ResourceTab.Traces, Loc[nameof(Resources.Layout.NavMenuTracesTab)], new Icons.Regular.Size24.GanttChart(), 2765yield return CreateTab(ResourceTab.Metrics, Loc[nameof(Resources.Layout.NavMenuMetricsTab)], new Icons.Regular.Size24.ChartMultiple(), 2797Tooltip = tab.IsAvailable ? null : Loc[nameof(Resources.Layout.ResourceTabUnavailable)].Value,
Components\Layout\TerminalDock.razor.cs (1)
449var title = Loc[nameof(Resources.TerminalStrings.TerminalDockCloseTimedOutTitle)].Value;
Components\Legacy\Dialogs\LegacyAIAgentsDialog.razor.cs (2)
36? string.Format(CultureInfo.CurrentCulture, Loc[nameof(DialogsLoc.AIAgentsDialogAppHostDescription)], AppHostLearnMoreUrl, InstallCliUrl) 37: string.Format(CultureInfo.CurrentCulture, Loc[nameof(DialogsLoc.AIAgentsDialogStandaloneDescription)], GetDashboardUrl(), StandaloneLearnMoreUrl, InstallCliUrl);
Components\Legacy\Dialogs\LegacyHelpDialog.razor.cs (17)
23new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryPageNavigation)], 25new KeyboardShortcut(AspireKeyboardShortcut.GoToResources, ["r"], Loc[nameof(Resources.Dialogs.HelpDialogGoToResources)]), 26new KeyboardShortcut(AspireKeyboardShortcut.GoToConsoleLogs, ["c"], Loc[nameof(Resources.Dialogs.HelpDialogGoToConsoleLogs)]), 27new KeyboardShortcut(AspireKeyboardShortcut.GoToStructuredLogs, ["s"], Loc[nameof(Resources.Dialogs.HelpDialogGoToStructuredLogs)]), 28new KeyboardShortcut(AspireKeyboardShortcut.GoToTraces, ["t"], Loc[nameof(Resources.Dialogs.HelpDialogGoToTraces)]), 29new KeyboardShortcut(AspireKeyboardShortcut.GoToMetrics, ["m"], Loc[nameof(Resources.Dialogs.HelpDialogGoToMetrics)]), 30new KeyboardShortcut(AspireKeyboardShortcut.GoToTerminals, ["e"], Loc[nameof(Resources.Dialogs.HelpDialogGoToTerminals)]), 32new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryPanels)], 34new KeyboardShortcut(AspireKeyboardShortcut.IncreasePanelSize, ["+"], Loc[nameof(Resources.Dialogs.HelpDialogIncreasePanelSize)]), 35new KeyboardShortcut(AspireKeyboardShortcut.DecreasePanelSize, ["-"], Loc[nameof(Resources.Dialogs.HelpDialogDecreasePanelSize)]), 36new KeyboardShortcut(AspireKeyboardShortcut.ResetPanelSize, ["shift", "r"], Loc[nameof(Resources.Dialogs.HelpDialogResetPanelSize)]), 37new KeyboardShortcut(AspireKeyboardShortcut.ToggleOrientation, ["shift", "t"], Loc[nameof(Resources.Dialogs.HelpDialogTogglePanelOrientation)]), 38new KeyboardShortcut(AspireKeyboardShortcut.ClosePanel, ["shift", "x"], Loc[nameof(Resources.Dialogs.HelpDialogTogglePanelOpen)]), 40new(Loc[nameof(Resources.Dialogs.HelpDialogCategoryNavigation)], 42new KeyboardShortcut(AspireKeyboardShortcut.Help, ["?"], Loc[nameof(Resources.Dialogs.HelpDialogGoToHelp)]), 43new KeyboardShortcut(AspireKeyboardShortcut.Settings, ["shift", "s"], Loc[nameof(Resources.Dialogs.HelpDialogGoToSettings)]), 44new KeyboardShortcut(AspireKeyboardShortcut.ToggleTerminalDock, ["`"], Loc[nameof(Resources.Dialogs.HelpDialogToggleTerminalDock)]),
Components\Legacy\Layout\LegacyMainLayout.razor.cs (12)
210unsecuredEndpointsMessage.AppendLine(Loc[nameof(Resources.Layout.MessageUnsecuredEndpointTelemetryBody)]); 214unsecuredEndpointsMessage.AppendLine(Loc[nameof(Resources.Layout.MessageUnsecuredEndpointApiBody)]); 228Title = Loc[nameof(Resources.Layout.MessageUnsecuredEndpointTitle)], 230LinkText = Loc[nameof(Resources.Layout.MessageUnsecuredEndpointLink)], 370Title = Loc[nameof(Resources.Layout.MainLayoutAspireDashboardHelpLink)], 371PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)], 428Title = Loc[nameof(Resources.Layout.MainLayoutLaunchAIAgents)], 429PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)], 453Title = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogTitle)], 454PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)].Value, 478Title = Loc[nameof(Resources.Layout.MainLayoutNotificationCenterTitle)], 479PrimaryAction = Loc[nameof(Resources.Layout.MainLayoutSettingsDialogClose)].Value,
Components\Legacy\Layout\LegacyMobileNavMenu.razor.cs (11)
144Loc[nameof(Resources.Layout.NavMenuResourcesTab)], 152Loc[nameof(Resources.Layout.NavMenuConsoleLogsTab)], 162Loc[nameof(Resources.Layout.NavMenuStructuredLogsTab)], 170Loc[nameof(Resources.Layout.NavMenuTracesTab)], 178Loc[nameof(Resources.Layout.NavMenuMetricsTab)], 188Loc[nameof(Resources.Layout.NavMenuTerminalsTab)], 197Loc[nameof(Resources.Layout.MainLayoutAspireRepoLink)], 206Loc[nameof(Resources.Layout.MainLayoutAspireDashboardHelpLink)], 214Loc[nameof(Resources.Layout.MainLayoutLaunchAIAgents)], 221Loc[nameof(Resources.Layout.MainLayoutLaunchNotifications)], 227Loc[nameof(Resources.Layout.MainLayoutLaunchSettings)],
Components\Legacy\Pages\ConsoleLogs.razor.cs (14)
188_allResource = new() { Id = null, Name = ControlsStringsLoc[nameof(ControlsStrings.LabelAll)] }; 189PageViewModel = new ConsoleLogsViewModel { SelectedResource = _allResource, Status = Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsLoadingResources)] }; 397viewModel.Status = Loc[statusName]; 497? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNoLogsFound)] 498: Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNotCapturedForRun)]; 517Text = Loc[nameof(Dashboard.Resources.ConsoleLogs.DownloadLogs)], 551Text = _showTimestamp ? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampHide)] : Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampShow)], 558Text = Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampShowUtc)], 566Text = _noWrapLogs ? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsWrapLogs)] : Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNoWrapLogs)], 794_resources = GetConsoleLogResourceSelectViewModels(_resourceByName, _allResource, Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsUnknownState)], _showHiddenResources, out var optionToSelect); 992Loc[nameof(Dashboard.Resources.ConsoleLogs.PauseInProgressText)], 1071viewModel.Status ??= Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsLogsNotYetAvailable)];
Components\Legacy\Pages\Terminals.razor.cs (2)
188_resources = ResourceSelectHelpers.CreateOptions(terminals, ConsoleLoc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsUnknownState)], _showHiddenResources) 189.Insert(0, new() { Id = null, Name = ControlsLoc[nameof(ControlsStrings.LabelNone)] });
Components\Legacy\Pages\TraceDetail.razor.cs (7)
132Text = ControlStringsLoc[nameof(ControlsStrings.ExpandAllSpansText)], 140Text = ControlStringsLoc[nameof(ControlsStrings.CollapseAllSpansText)], 199Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailTraceStartHeader)], 203Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailDurationHeader)], 206Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailResourcesHeader)], 209Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailDepthHeader)], 212Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailTotalSpansHeader)],
Components\Pages\ConsoleLogs.razor.cs (14)
206_allResource = new() { Id = null, Name = ControlsStringsLoc[nameof(ControlsStrings.LabelAll)] }; 207PageViewModel = new ConsoleLogsViewModel { SelectedResource = _allResource, Status = Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsLoadingResources)] }; 437viewModel.Status = Loc[statusName]; 564? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNoLogsFound)] 565: Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNotCapturedForRun)]; 584Text = Loc[nameof(Dashboard.Resources.ConsoleLogs.DownloadLogs)], 618Text = _showTimestamp ? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampHide)] : Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampShow)], 625Text = Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsTimestampShowUtc)], 633Text = _noWrapLogs ? Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsWrapLogs)] : Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsNoWrapLogs)], 861_resources = GetConsoleLogResourceSelectViewModels(_resourceByName, _allResource, Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsUnknownState)], _showHiddenResources, out var optionToSelect); 1059Loc[nameof(Dashboard.Resources.ConsoleLogs.PauseInProgressText)], 1138viewModel.Status ??= Loc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsLogsNotYetAvailable)];
Components\Pages\ResourceOverview.Details.cs (1)
209await ToastService.ShowErrorToastAsync(string.Format(CultureInfo.CurrentCulture, ControlsStringsLoc[nameof(Dashboard.Resources.ControlsStrings.VolumeRevealFailed)], volume.Source));
Components\Pages\ResourceOverview.razor.cs (4)
134new(true, new AspireIcons.Size20.HideEmptyPanels(), Loc[nameof(Dashboard.Resources.Resources.ResourceOverviewHideEmptyPanels)]), 135new(false, new Icons.Regular.Size20.Grid(), Loc[nameof(Dashboard.Resources.Resources.ResourceOverviewShowAllPanels)]) 495ConsoleLogsLoc[nameof(Dashboard.Resources.ConsoleLogs.PauseInProgressText)], 731var telemetryOnlyTitle = LayoutLoc[nameof(Dashboard.Resources.Layout.ResourcePaneTelemetryOnly)].Value;
Components\Pages\Terminals.razor.cs (2)
208_resources = ResourceSelectHelpers.CreateOptions(terminals, ConsoleLoc[nameof(Dashboard.Resources.ConsoleLogs.ConsoleLogsUnknownState)], _showHiddenResources) 209.Insert(0, new() { Id = null, Name = ControlsLoc[nameof(ControlsStrings.LabelNone)] });
Components\Pages\TraceDetail.razor.cs (7)
139Text = ControlStringsLoc[nameof(ControlsStrings.ExpandAllSpansText)], 147Text = ControlStringsLoc[nameof(ControlsStrings.CollapseAllSpansText)], 208Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailTraceStartHeader)], 212Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailDurationHeader)], 215Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailResourcesHeader)], 218Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailDepthHeader)], 221Loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailTotalSpansHeader)],
Model\CommonMenuItems.cs (2)
29Text = loc[nameof(ControlsStrings.ShowHiddenResources)], 38Text = loc[nameof(ControlsStrings.HideHiddenResources)],
Model\DashboardCommandExecutor.cs (11)
143var messageBarStartingTitle = string.Format(CultureInfo.InvariantCulture, loc[nameof(Dashboard.Resources.Resources.ResourceCommandStarting)], command.GetDisplayName()); 147var cancelingTitle = string.Format(CultureInfo.InvariantCulture, loc[nameof(Dashboard.Resources.Resources.ResourceCommandCanceling)], command.GetDisplayName()); 173toastOptions.QuickAction1.Label = loc[nameof(Dashboard.Resources.Resources.ResourceCommandCancel)]; 203var successTitle = string.Format(CultureInfo.InvariantCulture, loc[nameof(Dashboard.Resources.Resources.ResourceCommandSuccess)], command.GetDisplayName()); 210toastOptions.QuickAction1.Label = loc[nameof(Dashboard.Resources.Resources.ResourceCommandViewResponse)]; 229var canceledTitle = string.Format(CultureInfo.InvariantCulture, loc[nameof(Dashboard.Resources.Resources.ResourceCommandCanceled)], command.GetDisplayName()); 246var failedTitle = string.Format(CultureInfo.InvariantCulture, loc[nameof(Dashboard.Resources.Resources.ResourceCommandFailed)], command.GetDisplayName()); 250toastOptions.QuickAction1.Label = loc[nameof(Dashboard.Resources.Resources.ResourceCommandToastViewLogs)]; 263toastOptions.QuickAction2.Label = loc[nameof(Dashboard.Resources.Resources.ResourceCommandViewResponse)]; 381Text = loc[nameof(Dashboard.Resources.Resources.ResourceCommandCancel)], 390Text = loc[nameof(Dashboard.Resources.Resources.ResourceCommandViewResponse)],
Model\DashboardDialogService.cs (2)
22private string CloseButtonText => dialogsLoc[nameof(Dialogs.DialogCloseButtonText)]; 37Title = dialogsLoc[nameof(Dialogs.ManageDataDialogTitle)],
Model\DashboardFeedback.cs (18)
42markdown.Append("### ").AppendLine(loc[nameof(Resources.Dialogs.DashboardFeedbackMarkdownTitle)]); 48loc[nameof(Resources.Dialogs.DashboardFeedbackDurationLabel)], 56.Append(loc[nameof(Resources.Dialogs.DashboardFeedbackReasonsLabel)]) 72loc[nameof(Resources.Dialogs.DashboardFeedbackMissingLabel)], 76loc[nameof(Resources.Dialogs.DashboardFeedbackDifficultiesLabel)], 80loc[nameof(Resources.Dialogs.DashboardFeedbackModeLabel)], 81loc[IsAppHost 107DashboardFeedbackUsageDuration.LessThanOneHour => loc[nameof(Resources.Dialogs.DashboardFeedbackDurationLessThanOneHour)], 108DashboardFeedbackUsageDuration.OneDay => loc[nameof(Resources.Dialogs.DashboardFeedbackDurationOneDay)], 109DashboardFeedbackUsageDuration.TwoToSevenDays => loc[nameof(Resources.Dialogs.DashboardFeedbackDurationTwoToSevenDays)], 110DashboardFeedbackUsageDuration.MoreThanOneWeek => loc[nameof(Resources.Dialogs.DashboardFeedbackDurationMoreThanOneWeek)], 118DashboardFeedbackReason.Navigation => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonNavigation)], 119DashboardFeedbackReason.FindingApplicationUrls => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonFindingApplicationUrls)], 120DashboardFeedbackReason.TelemetryWorkflow => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonTelemetryWorkflow)], 121DashboardFeedbackReason.Terminals => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonTerminals)], 122DashboardFeedbackReason.PerformanceOrAccessibility => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonPerformanceOrAccessibility)], 123DashboardFeedbackReason.MissingFeature => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonMissingFeature)], 124DashboardFeedbackReason.Other => loc[nameof(Resources.Dialogs.DashboardFeedbackReasonOther)],
Model\DefaultInstrumentUnitResolver.cs (3)
38return UntitleCase(loc[nameof(ControlsStrings.PlotlyChartCount)], titleCase); 42return UntitleCase(loc[nameof(ControlsStrings.PlotlyChartLength)], titleCase); 46return UntitleCase(loc[nameof(ControlsStrings.PlotlyChartValue)], titleCase);
Model\GenAI\GenAIItemViewModel.cs (11)
36return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryStatus)], "output", s_errorIcon); 42return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryToolCalls)], "output", s_toolCallsIcon); 46return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryOutput)], "output", s_messageIcon); 51return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryToolCalls)], "tool-calls", s_toolCallsIcon); 55return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryToolResponse)], "tool-response", s_messageIcon); 58return new BadgeDetail(loc[nameof(Dialogs.GenAIMessageCategoryMessage)], "message", s_messageIcon); 65GenAIItemType.SystemMessage => new BadgeDetail(loc[nameof(Dialogs.GenAIMessageTitleSystem)], "system", s_systemIcon), 66GenAIItemType.UserMessage => new BadgeDetail(loc[nameof(Dialogs.GenAIMessageTitleUser)], "user", s_personIcon), 67GenAIItemType.AssistantMessage or GenAIItemType.OutputMessage => new BadgeDetail(loc[nameof(Dialogs.GenAIMessageTitleAssistant)], "assistant", s_personIcon), 68GenAIItemType.ToolMessage => new BadgeDetail(loc[nameof(Dialogs.GenAIMessageTitleTool)], "tool", s_toolIcon), 69GenAIItemType.Error => new BadgeDetail(loc[nameof(Dialogs.GenAIMessageTitleError)], "error", s_cloudErrorIcon),
Model\HealthReportFormatter.cs (2)
19var statusText = report.HealthStatus?.Humanize() ?? loc[nameof(Resources.Resources.WaitingHealthDataStatusMessage)]; 48var statusText = report.HealthStatus?.Humanize() ?? loc[nameof(Resources.Resources.WaitingHealthDataStatusMessage)];
Model\KnownPropertyLookup.cs (9)
21new(new(KnownProperties.Resource.DisplayName, loc => loc[nameof(ResourcesDetailsDisplayNameProperty)]), KnownResourcePropertySortOrder.DisplayName), 22new(new(KnownProperties.Resource.Type, loc => loc[nameof(ResourcesTypeColumnHeader)]), KnownResourcePropertySortOrder.ResourceType), 23new(new(KnownProperties.Resource.ResourceTypeDisplayName, loc => loc[nameof(ResourcesDetailsResourceTypeDisplayNameProperty)]), KnownResourcePropertySortOrder.ResourceTypeDisplayName), 24new(new(KnownProperties.Resource.State, loc => loc[nameof(ResourcesDetailsStateProperty)]), KnownResourcePropertySortOrder.State), 25new(new(KnownProperties.Resource.HealthState, loc => loc[nameof(ResourcesDetailsHealthStateProperty)]), KnownResourcePropertySortOrder.HealthState), 26new(new(KnownProperties.Resource.StartTime, loc => loc[nameof(ResourcesDetailsStartTimeProperty)]), KnownResourcePropertySortOrder.StartTime), 27new(new(KnownProperties.Resource.StopTime, loc => loc[nameof(ResourcesDetailsStopTimeProperty)]), KnownResourcePropertySortOrder.StopTime), 28new(new(KnownProperties.Resource.ExitCode, loc => loc[nameof(ResourcesDetailsExitCodeProperty)]), KnownResourcePropertySortOrder.ExitCode), 29new(new(KnownProperties.Resource.ConnectionString, loc => loc[nameof(ResourcesDetailsConnectionStringProperty)]), KnownResourcePropertySortOrder.ConnectionString)
Model\LegacyResourcePropertyMetadata.cs (1)
44return (sortOrder, new(propertyName, loc => loc[displayNameResourceName]));
Model\Markdown\HighlightedCodeBlockRenderer.cs (2)
81var copyToClipboard = _loc[nameof(ControlsStrings.GridValueCopyToClipboard)]; 82var attributes = FluentUIExtensions.GetClipboardCopyAdditionalAttributes(rawCode, copyToClipboard, _loc[nameof(ControlsStrings.GridValueCopied)]);
Model\ResourceGraph\ResourceGraphMapper.cs (9)
17Instructions: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameInstructions)].Value, 18Exit: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameExit)].Value, 19ExitLabel: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameExitLabel)].Value, 20SoundOn: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameSoundOn)].Value, 21SoundOff: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameSoundOff)].Value, 22ModeNormal: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameModeNormal)].Value, 23ModeHardCore: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameModeHardCore)].Value, 24HardCoreWarning: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameHardCoreWarning)].Value, 25HardCoreStopped: loc[nameof(Aspire.Dashboard.Resources.Resources.ResourceGraphGameHardCoreStopped)].Value);
Model\ResourceMenuBuilder.cs (13)
82Text = _controlLoc[nameof(ControlsStrings.ActionViewDetailsText)], 104Text = _controlLoc[nameof(ControlsStrings.ExportEnv)], 136Text = _controlLoc[nameof(ControlsStrings.ViewJson)], 170Text = _terminalLoc[nameof(TerminalStrings.TerminalTitle)], 184Text = _loc[nameof(Resources.Resources.ResourceActionConsoleLogsText)], 218Text = _loc[nameof(Resources.Resources.ResourceActionUrlsText)], 250Text = _loc[nameof(Resources.Resources.ResourceActionStructuredLogsText)], 251Tooltip = _loc[nameof(Resources.Resources.ResourceActionStructuredLogsText)], 263Text = _loc[nameof(Resources.Resources.ResourceActionTracesText)], 264Tooltip = _loc[nameof(Resources.Resources.ResourceActionTracesText)], 277Text = _loc[nameof(Resources.Resources.ResourceActionMetricsText)], 278Tooltip = _loc[nameof(Resources.Resources.ResourceActionMetricsText)], 325Text = _loc[nameof(Resources.Resources.ResourceActionCommandsText)],
Model\ResourceStateViewModel.cs (5)
126return loc[nameof(Columns.RunningAndUnhealthyResourceStateToolTip)]; 131return loc[nameof(Columns.StateColumnResourceContainerRuntimeUnhealthy)]; 142return loc[nameof(Columns.StateColumnResourceWaiting)]; 146return loc[nameof(Columns.StateColumnResourceNotStarted)]; 157{ State: null or "" } => loc[Columns.UnknownStateLabel],
Model\ResourceViewModel.cs (3)
87? string.Format(CultureInfo.CurrentCulture, localizer[nameof(Resources.Resources.ResourcePersistentType)], ResourceTypeDisplayName) 414KnownProperties.Resource.TraitPrefix + KnownResourceTraits.Tag => _loc[nameof(Resources.Resources.ResourceTraitDashboardTags)], 415KnownProperties.Resource.TraitPrefix + KnownResourceTraits.DashboardPosition => _loc[nameof(Resources.Resources.ResourceTraitDashboardPosition)],
Model\SpanMenuBuilder.cs (4)
65Text = _controlsLoc[nameof(ControlsStrings.ActionViewDetailsText)], 73Text = _controlsLoc[nameof(ControlsStrings.ActionStructuredLogsText)], 86Text = _controlsLoc[nameof(ControlsStrings.GenAIDetailsTitle)], 94Text = _controlsLoc[nameof(ControlsStrings.ViewJson)],
Model\SpanType.cs (8)
67new() { Id = null, Name = loc[nameof(ControlsStrings.LabelAll)] }, 68new() { Id = Http, Name = loc[nameof(ControlsStrings.SpanTypeHttp)] }, 69new() { Id = Database, Name = loc[nameof(ControlsStrings.SpanTypeDatabase)] }, 70new() { Id = Messaging, Name = loc[nameof(ControlsStrings.SpanTypeMessaging)] }, 71new() { Id = Rpc, Name = loc[nameof(ControlsStrings.SpanTypeRpc)] }, 72new() { Id = GenAI, Name = loc[nameof(ControlsStrings.SpanTypeGenAI)] }, 73new() { Id = Cloud, Name = loc[nameof(ControlsStrings.SpanTypeCloud)] }, 74new() { Id = Other, Name = loc[nameof(ControlsStrings.LabelOther)] },
Model\StructuredLogMenuBuilder.cs (4)
89Text = _controlsLoc[nameof(ControlsStrings.ActionViewDetailsText)], 97Text = _loc[nameof(StructuredLogs.ActionLogMessageText)], 101var header = _loc[nameof(StructuredLogs.StructuredLogsMessageColumnHeader)]; 114Text = _controlsLoc[nameof(ControlsStrings.ViewJson)],
Model\StructureLogsDetailsViewModel.cs (1)
20return loc[nameof(Dashboard.Resources.StructuredLogs.StructuredLogsEntryDetails)];
Model\TraceLinkHelpers.cs (2)
28string.Format(CultureInfo.InvariantCulture, loc[nameof(Dialogs.OpenSpanDialogMessage)], OtlpHelpers.ToShortenedId(spanId)), 55PrimaryAction = loc[nameof(Dialogs.OpenSpanDialogCancelButtonText)],
Model\TraceMenuBuilder.cs (3)
86Text = _controlsLoc[nameof(ControlsStrings.ActionViewDetailsText)], 98Text = _controlsLoc[nameof(ControlsStrings.ActionStructuredLogsText)], 109Text = _controlsLoc[nameof(ControlsStrings.ViewJson)],
ServiceClient\DashboardClient.cs (2)
1136var errorMessage = _loc[nameof(DashboardResources.ResourceCommandAppHostDisconnected)]; 1152StatusCode.Unavailable => _loc[nameof(DashboardResources.ResourceCommandAppHostDisconnected)],
src\Shared\ConsoleLogs\LogPauseViewModel.cs (2)
34loc[nameof(Aspire.Dashboard.Resources.ConsoleLogs.ConsoleLogsPauseActive)], 39loc[nameof(Aspire.Dashboard.Resources.ConsoleLogs.ConsoleLogsPauseDetails)],
Utils\FilterHelpers.cs (5)
52Text = dialogsLoc[nameof(Dialogs.FilterDialogDisableAll)], 69Text = dialogsLoc[nameof(Dialogs.FilterDialogEnableAll)], 85Text = dialogsLoc[nameof(Dialogs.SettingsRemoveAllButtonText)], 106var title = entry is not null ? filterLoc[nameof(StructuredFiltering.DialogTitleEditFilter)] : filterLoc[nameof(StructuredFiltering.DialogTitleAddFilter)];
Aspire.Dashboard.Components.Tests (43)
Controls\LogViewerTests.cs (3)
113Assert.Equal(controlsLoc[nameof(Resources.ControlsStrings.ScrollToBottom)].Value, scrollButton.GetAttribute("data-scroll-to-bottom-label")); 118Assert.Equal(loc[nameof(Resources.ConsoleLogs.ConsoleLogsHeader)].Value, scrollContainer.GetAttribute("aria-label")); 190Assert.Contains(loc[nameof(Resources.ConsoleLogs.ConsoleLogsNoLogsMatchFilter)].Value, message.TextContent);
Controls\TerminalViewTests.cs (17)
46Assert.Equal(controlsLoc[nameof(Resources.ControlsStrings.GridValueCopyToClipboard)].Value, button.GetAttribute("aria-label")); 47Assert.Equal(controlsLoc[nameof(Resources.ControlsStrings.GridValueCopyToClipboard)].Value, button.GetAttribute("data-tooltip")); 53Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalInputLabel)].Value, options.Label); 81Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalDisconnectedMessage)].Value, 120Assert.Equal($"F6: {loc[nameof(Resources.TerminalStrings.TerminalFocusControlsDescription)].Value}", focusHint.TextContent); 122Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarDecreaseFontSize)].Value, cut.Find(".terminal-font-minus").GetAttribute("aria-label")); 123Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarIncreaseFontSize)].Value, cut.Find(".terminal-font-plus").GetAttribute("aria-label")); 182Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarDecreaseFontSize)].Value, button.GetAttribute("data-tooltip")); 183Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarDecreaseFontSize)].Value, button.GetAttribute("aria-label")); 187Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarIncreaseFontSize)].Value, button.GetAttribute("data-tooltip")); 188Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarIncreaseFontSize)].Value, button.GetAttribute("aria-label")); 192Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarGridSizeAuto)].Value, button.GetAttribute("data-tooltip")); 193Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarGridSizeAuto)].Value, button.GetAttribute("aria-label")); 197Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalToolbarGridSize)].Value, dimensionsSelect.Instance.AriaLabel); 200Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalPalette)].Value, paletteSelect.Instance.AriaLabel); 201Assert.Equal(loc[nameof(Resources.TerminalStrings.TerminalPalette)].Value, paletteSelect.Find("fluent-dropdown").GetAttribute("title")); 730Assert.Equal(loc[resourceKey].Value, cut.Find("[role=alert]").TextContent);
Pages\ConsoleLogsTests.cs (14)
130cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 136cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsFinishedWatchingLogs)]); 163cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 353cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 489Assert.Equal(loc[nameof(Resources.ControlsStrings.FilterPlaceholder)].Value, search.Instance.Label); 530cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 538cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsErrorWatchingLogs)]); 579cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 589cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 626cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 732cut.WaitForState(() => instance.PageViewModel.Status == loc[nameof(Resources.ConsoleLogs.ConsoleLogsWatchingLogs)]); 1009loc[nameof(Resources.ConsoleLogs.PauseInProgressText)], 1031loc[Resources.ConsoleLogs.ConsoleLogsPauseActive], 1060loc[Resources.ConsoleLogs.ConsoleLogsPauseDetails],
Pages\MetricsTests.cs (1)
1096loc[nameof(Resources.Metrics.PauseInProgressText)],
Pages\ResourcesTests.cs (2)
780Assert.Equal(loc[nameof(Dashboard.Resources.Resources.ResourcesHeader)].Value, scrollContainer.GetAttribute("aria-label")); 834Assert.Equal(loc[nameof(Dashboard.Resources.ControlsStrings.PageToolbarLandmark)].Value, header.GetAttribute("aria-label"));
Pages\StructuredLogsTests.cs (2)
254Assert.Equal(controlsLoc[nameof(Dashboard.Resources.ControlsStrings.ScrollToBottom)].Value, scrollButton.GetAttribute("data-scroll-to-bottom-label")); 260Assert.Equal(loc[nameof(Dashboard.Resources.StructuredLogs.StructuredLogsHeader)].Value, scrollContainer.GetAttribute("aria-label"));
Pages\TraceDetailsTests.cs (2)
321Assert.Equal(loc[nameof(Dashboard.Resources.TraceDetail.TraceDetailTraceStartHeader)].Value, scrollContainer.GetAttribute("aria-label")); 325Assert.Equal(controlsLoc[nameof(Dashboard.Resources.ControlsStrings.PageToolbarLandmark)].Value, filterGroup.GetAttribute("aria-label"));
Pages\TracesTests.cs (2)
77Assert.Equal(controlsLoc[nameof(Dashboard.Resources.ControlsStrings.ScrollToBottom)].Value, scrollButton.GetAttribute("data-scroll-to-bottom-label")); 83Assert.Equal(loc[nameof(Dashboard.Resources.Traces.TracesHeader)].Value, scrollContainer.GetAttribute("aria-label"));
Microsoft.AspNetCore.Components.Endpoints (5)
Forms\DataAnnotationsLocalizer.cs (5)
33var localizedTemplate = localizer[literal]; 90var explicitMatch = localizer[attribute.ErrorMessage]; 104var memberMatch = localizer[$"{typeName}_{memberName}_{attributeName}_Error"]; 111var typeMatch = localizer[$"{typeName}_{attributeName}_Error"]; 117var globalMatch = localizer[$"{attributeName}_Error"];
Microsoft.AspNetCore.Mvc.DataAnnotations (5)
DataAnnotationsMetadataProvider.cs (5)
110displayMetadata.Description = () => localizer[displayAttribute.Description]; 132displayMetadata.DisplayName = () => localizer[displayAttribute.Name]; 144displayMetadata.DisplayName = () => localizer[displayNameAttribute.DisplayName]; 260displayMetadata.Placeholder = () => localizer[displayAttribute.Prompt]; 400name = stringLocalizer[name];
Microsoft.AspNetCore.Mvc.Localization (3)
HtmlLocalizer.cs (3)
34return ToHtmlString(_localizer[name]); 45return ToHtmlString(_localizer[name], arguments); 54return _localizer[name];
Microsoft.Extensions.Localization.Abstractions (2)
StringLocalizerExtensions.cs (1)
28return stringLocalizer[name];
StringLocalizerOfT.cs (1)
36return _localizer[name];