The Groups page (/groups, in the menu) is where a persona makes a community or a circle (with its invitation code and an optional password), joins one by invitation and leaves one. For the groups it runs it edits them, shows the invitation, lets in or declines the requests to join, and takes members out, through PrivaPub's new /clientapi/group/members, reject and remove. The e2e makes a circle, joins it as another persona with the code, and has the owner take that member out. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
61 lines
2.5 KiB
C#
61 lines
2.5 KiB
C#
using System.Text.Json.Serialization;
|
|
|
|
using decePubClient.Models;
|
|
|
|
using PrivaPub.ClientModels;
|
|
using PrivaPub.ClientModels.Admin;
|
|
using PrivaPub.ClientModels.Group;
|
|
using PrivaPub.ClientModels.Post;
|
|
using PrivaPub.ClientModels.User;
|
|
using PrivaPub.ClientModels.User.Avatar;
|
|
|
|
namespace decePubClient;
|
|
|
|
/// <summary>
|
|
/// Source-generated JSON metadata for the client's own types, used first by SUtility.DefaultSerializer (HTTP) and by
|
|
/// Blazored.LocalStorage (Program.cs). Register every type that crosses HTTP or is stored in localStorage here; types
|
|
/// missing from it still work through the reflection fallback. Names stay camelCase: wwwroot/js/theme.js reads
|
|
/// PublicCacheData.pageSettings straight from localStorage.
|
|
/// </summary>
|
|
[JsonSourceGenerationOptions(PropertyNamingPolicy = JsonKnownNamingPolicy.CamelCase, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
|
|
IgnoreReadOnlyProperties = true)]
|
|
[JsonSerializable(typeof(PublicCacheData))]
|
|
[JsonSerializable(typeof(PageSettings))]
|
|
[JsonSerializable(typeof(AuthData))]
|
|
[JsonSerializable(typeof(FeedFilter))]
|
|
[JsonSerializable(typeof(PublicActionNotices))]
|
|
[JsonSerializable(typeof(ServerInfo))]
|
|
[JsonSerializable(typeof(List<ServerInfo>))]
|
|
[JsonSerializable(typeof(UploadMedia))]
|
|
[JsonSerializable(typeof(ClientLogs))]
|
|
[JsonSerializable(typeof(ClientLogException))]
|
|
[JsonSerializable(typeof(ValidationErrors))]
|
|
[JsonSerializable(typeof(WebResult))]
|
|
[JsonSerializable(typeof(LoginForm))]
|
|
[JsonSerializable(typeof(JwtUser))]
|
|
[JsonSerializable(typeof(ViewAvatar))]
|
|
[JsonSerializable(typeof(List<ViewAvatar>))]
|
|
[JsonSerializable(typeof(InsertAvatarForm))]
|
|
[JsonSerializable(typeof(ViewGroup))]
|
|
[JsonSerializable(typeof(List<ViewGroup>))]
|
|
[JsonSerializable(typeof(ViewGroupMember))]
|
|
[JsonSerializable(typeof(List<ViewGroupMember>))]
|
|
[JsonSerializable(typeof(InsertGroupForm))]
|
|
[JsonSerializable(typeof(UpdateGroupForm))]
|
|
[JsonSerializable(typeof(JoinGroupForm))]
|
|
[JsonSerializable(typeof(GroupMembershipForm))]
|
|
[JsonSerializable(typeof(ViewPost))]
|
|
[JsonSerializable(typeof(List<ViewPost>))]
|
|
[JsonSerializable(typeof(InsertPostForm))]
|
|
[JsonSerializable(typeof(ViewReport))]
|
|
[JsonSerializable(typeof(List<ViewReport>))]
|
|
[JsonSerializable(typeof(DomainBlockForm))]
|
|
[JsonSerializable(typeof(ViewDomainBlock))]
|
|
[JsonSerializable(typeof(List<ViewDomainBlock>))]
|
|
[JsonSerializable(typeof(ViewStatisticsOverview))]
|
|
[JsonSerializable(typeof(ViewHostsPage))]
|
|
[JsonSerializable(typeof(ViewCrawler))]
|
|
public partial class ClientJsonContext : JsonSerializerContext
|
|
{
|
|
}
|