diff --git a/services/directory/src/FilterLists.Directory.Application/Queries/GetLists.cs b/services/directory/src/FilterLists.Directory.Application/Queries/GetLists.cs index f0cb6d258..df57e43d6 100644 --- a/services/directory/src/FilterLists.Directory.Application/Queries/GetLists.cs +++ b/services/directory/src/FilterLists.Directory.Application/Queries/GetLists.cs @@ -54,6 +54,9 @@ public ListViewModelProfile() .ForMember(fl => fl.TagIds, o => o.MapFrom(fl => fl.FilterListTags.Select(flt => flt.TagId).OrderBy(tid => tid))) + .ForMember(fl => fl.ViewUrls, + o => o.MapFrom(fl => + fl.ViewUrls.OrderBy(u => u.SegmentNumber).ThenBy(u => u.Primariness))) .ForMember(fl => fl.MaintainerIds, o => o.MapFrom(fl => fl.FilterListMaintainers.Select(flm => flm.MaintainerId).OrderBy(mid => mid))) @@ -78,6 +81,14 @@ public ListViewModelProfile() } } + public class ViewUrlViewModelProfile : Profile + { + public ViewUrlViewModelProfile() + { + CreateMap(); + } + } + public class ListViewModel { public int Id { get; private set; } @@ -87,7 +98,7 @@ public class ListViewModel public IEnumerable? SyntaxIds { get; private set; } public IEnumerable? LanguageIso6391s { get; private set; } public IEnumerable? TagIds { get; private set; } - //public IEnumerable? SegmentViewUrls { get; private set; } + public IEnumerable? ViewUrls { get; private set; } public Uri? HomeUrl { get; private set; } public Uri? OnionUrl { get; private set; } public Uri? PolicyUrl { get; private set; } @@ -105,5 +116,12 @@ public class ListViewModel public IEnumerable? DependencyFilterListIds { get; private set; } public IEnumerable? DependentFilterListIds { get; private set; } } + + public class ViewUrlViewModel + { + public short SegmentNumber { get; private set; } + public short Primariness { get; private set; } + public Uri Url { get; private set; } = null!; + } } } \ No newline at end of file