mirror of
https://github.com/collinbarrett/FilterLists.git
synced 2026-03-11 09:04:27 +00:00
feat(dir): ✨ capture add'l FilterList props in change value object
This commit is contained in:
parent
eb6b3170e5
commit
8d5040400c
1 changed files with 72 additions and 3 deletions
|
|
@ -7,6 +7,9 @@ public class FilterListValueObject : ValueObject
|
|||
public string Name { get; private init; } = default!;
|
||||
public string? Description { get; private init; }
|
||||
public long LicenseId { get; private init; }
|
||||
public IEnumerable<long> SyntaxIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> LanguageIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> TagIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> ViewUrlIds { get; private init; } = new HashSet<long>();
|
||||
public Uri? HomeUrl { get; private init; }
|
||||
public Uri? OnionUrl { get; private init; }
|
||||
|
|
@ -17,6 +20,13 @@ public class FilterListValueObject : ValueObject
|
|||
public Uri? ChatUrl { get; private init; }
|
||||
public string? EmailAddress { get; private init; }
|
||||
public Uri? DonateUrl { get; private init; }
|
||||
public IEnumerable<long> MaintainerIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> UpstreamFilterListIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> ForkFilterListIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> IncludedInFilterListIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> IncludesFilterListIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> DependencyFilterListIds { get; private init; } = new HashSet<long>();
|
||||
public IEnumerable<long> DependentFilterListIds { get; private init; } = new HashSet<long>();
|
||||
|
||||
public static FilterListValueObject FromFilterList(FilterList filterList)
|
||||
{
|
||||
|
|
@ -25,6 +35,9 @@ public static FilterListValueObject FromFilterList(FilterList filterList)
|
|||
Name = filterList.Name,
|
||||
Description = filterList.Description,
|
||||
LicenseId = filterList.License.Id,
|
||||
SyntaxIds = filterList.Syntaxes.Select(s => s.Id),
|
||||
LanguageIds = filterList.Languages.Select(l => l.Id),
|
||||
TagIds = filterList.Tags.Select(t => t.Id),
|
||||
ViewUrlIds = filterList.ViewUrls.Select(u => u.Id),
|
||||
HomeUrl = filterList.HomeUrl,
|
||||
OnionUrl = filterList.OnionUrl,
|
||||
|
|
@ -34,7 +47,14 @@ public static FilterListValueObject FromFilterList(FilterList filterList)
|
|||
ForumUrl = filterList.ForumUrl,
|
||||
ChatUrl = filterList.ChatUrl,
|
||||
EmailAddress = filterList.EmailAddress,
|
||||
DonateUrl = filterList.DonateUrl
|
||||
DonateUrl = filterList.DonateUrl,
|
||||
MaintainerIds = filterList.Maintainers.Select(m => m.Id),
|
||||
UpstreamFilterListIds = filterList.UpstreamFilterLists.Select(f => f.Id),
|
||||
ForkFilterListIds = filterList.ForkFilterLists.Select(f => f.Id),
|
||||
IncludedInFilterListIds = filterList.IncludedInFilterLists.Select(f => f.Id),
|
||||
IncludesFilterListIds = filterList.IncludesFilterLists.Select(f => f.Id),
|
||||
DependencyFilterListIds = filterList.DependencyFilterLists.Select(f => f.Id),
|
||||
DependentFilterListIds = filterList.DependentFilterLists.Select(f => f.Id)
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -43,9 +63,24 @@ public static FilterListValueObject FromFilterList(FilterList filterList)
|
|||
yield return Name;
|
||||
yield return Description;
|
||||
yield return LicenseId;
|
||||
foreach (var viewUrlId in ViewUrlIds)
|
||||
foreach (var id in SyntaxIds)
|
||||
{
|
||||
yield return viewUrlId;
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in LanguageIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in TagIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in ViewUrlIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
yield return HomeUrl;
|
||||
|
|
@ -57,5 +92,39 @@ public static FilterListValueObject FromFilterList(FilterList filterList)
|
|||
yield return ChatUrl;
|
||||
yield return EmailAddress;
|
||||
yield return DonateUrl;
|
||||
foreach (var id in MaintainerIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in UpstreamFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in ForkFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in IncludedInFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in IncludesFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in DependencyFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
|
||||
foreach (var id in DependentFilterListIds)
|
||||
{
|
||||
yield return id;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue