49 references to PageViewModel
Aspire.Dashboard (46)
Components\Pages\TraceDetail.razor.cs (46)
114PageViewModel.SelectedSpanType = _spanTypes[0]; 172if (PageViewModel.SpanWaterfallViewModels is null) 177return TraceDetailPageViewModel.ApplySpanFilters(PageViewModel.SpanWaterfallViewModels, PageViewModel.ContextFilterMatches, PageViewModel.DurationFilterMatches); 197PageViewModel.SelectedData = null; 207if (SpanId is not null && PageViewModel.SpanWaterfallViewModels is not null) 209var spanVm = PageViewModel.SpanWaterfallViewModels.SingleOrDefault(vm => vm.Span.SpanId == SpanId); 267PageViewModel.SpanWaterfallViewModels = null; 268PageViewModel.ContextFilterMatches = null; 269PageViewModel.DurationFilterMatches = null; 303PageViewModel.SpanWaterfallViewModels = SpanWaterfallViewModel.Create(trace, result, new SpanWaterfallViewModel.TraceDetailState(_collapsedSpanIds, resources)); 309_maxDepth = PageViewModel.SpanWaterfallViewModels.Max(s => s.Depth); 371if (PageViewModel.SelectedData?.SpanViewModel is { } selectedSpan && selectedSpan.Span.SpanId == viewModel.Span.SpanId) 375else if (PageViewModel.SelectedData?.LogEntryViewModel is { } selectedLog && viewModel.SpanLogs.Any(l => l.LogEntry.InternalId == selectedLog.LogEntry.InternalId)) 383public TraceDetailSelectedDataViewModel? SelectedData => PageViewModel.SelectedData; 423if (PageViewModel.SelectedData?.SpanViewModel?.Span.SpanId == viewModel.Span.SpanId) 431PageViewModel.SelectedData = new TraceDetailSelectedDataViewModel 440PageViewModel.SelectedData = null; 454if (PageViewModel.SpanWaterfallViewModels is null) 459return PageViewModel.SpanWaterfallViewModels.Any(vm => vm.IsCollapsed); 464if (PageViewModel.SpanWaterfallViewModels is null) 470return PageViewModel.SpanWaterfallViewModels.Any(vm => vm.Depth > RootSpanDepth && !vm.IsCollapsed && vm.Children.Count > 0); 475if (PageViewModel.SpanWaterfallViewModels is null) 480foreach (var viewModel in PageViewModel.SpanWaterfallViewModels) 494if (PageViewModel.SpanWaterfallViewModels is null) 499foreach (var viewModel in PageViewModel.SpanWaterfallViewModels) 514if (PageViewModel.SelectedData?.LogEntryViewModel?.LogEntry.InternalId == logEntry.InternalId) 522PageViewModel.SelectedData = new TraceDetailSelectedDataViewModel 580PageViewModel.Filters.Remove(filter); 584PageViewModel.Filters.Add(filter); 612PageViewModel.ContextFilterMatches = null; 613PageViewModel.DurationFilterMatches = null; 617var contextFilters = PageViewModel.Filters 621var durationFilters = PageViewModel.Filters 625if (PageViewModel.SelectedSpanType.Id?.Filter is { } typeFilter) 633var hasTextFilter = !string.IsNullOrWhiteSpace(PageViewModel.Filter); 635? await GetMatchingSpanIdsAsync(contextFilters, hasTextFilter ? [PageViewModel.Filter] : null) 641PageViewModel.ContextFilterMatches = contextMatches; 642PageViewModel.DurationFilterMatches = durationMatches; 670if (PageViewModel.SpanWaterfallViewModels is null) 675if (PageViewModel.SelectedData is null) 680if (PageViewModel.IsSelectedDataExcludedByFilters(GetVisibleSpanViewModels())) 682PageViewModel.SelectedData = null; 722PageViewModel.Filters, 723clearFilters: PageViewModel.Filters.Clear,
Aspire.Dashboard.Components.Tests (3)
Pages\TraceDetailsTests.cs (3)
495cut.WaitForAssertion(() => Assert.NotNull(cut.Instance.PageViewModel.SpanWaterfallViewModels)); 591cut.WaitForAssertion(() => Assert.NotNull(cut.Instance.PageViewModel.SpanWaterfallViewModels)); 718cut.WaitForAssertion(() => Assert.NotNull(cut.Instance.PageViewModel.SpanWaterfallViewModels));