Move some extension methods into their respective class files

This commit is contained in:
Ske
2020-08-05 20:24:51 +02:00
parent 7ab5e66d7b
commit a0fc9d3826
7 changed files with 80 additions and 88 deletions

View File

@@ -50,4 +50,28 @@ namespace PluralKit.Core {
[JsonIgnore] public bool HasProxyTags => ProxyTags.Count > 0;
}
public static class PKMemberExt
{
public static string NameFor(this PKMember member, LookupContext ctx) =>
member.NamePrivacy.Get(ctx, member.Name, member.DisplayName ?? member.Name);
public static string AvatarFor(this PKMember member, LookupContext ctx) =>
member.AvatarPrivacy.Get(ctx, member.AvatarUrl);
public static string DescriptionFor(this PKMember member, LookupContext ctx) =>
member.DescriptionPrivacy.Get(ctx, member.Description);
public static LocalDate? BirthdayFor(this PKMember member, LookupContext ctx) =>
member.BirthdayPrivacy.Get(ctx, member.Birthday);
public static string PronounsFor(this PKMember member, LookupContext ctx) =>
member.PronounPrivacy.Get(ctx, member.Pronouns);
public static Instant? CreatedFor(this PKMember member, LookupContext ctx) =>
member.MetadataPrivacy.Get(ctx, (Instant?) member.Created);
public static int MessageCountFor(this PKMember member, LookupContext ctx) =>
member.MetadataPrivacy.Get(ctx, member.MessageCount);
}
}