A persona's lists (PrivaPub's /api/v1/lists): made, renamed, given a replies policy and made exclusive on /lists, filled from the accounts it follows (accounts/search?following=true), and read as the feed's Lists tab. A followed account's profile has a Lists menu to put it in or take it out. ListService does the calls; the e2e tests check each step against PrivaPub's own answer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
44 lines
1.8 KiB
C#
44 lines
1.8 KiB
C#
using System.Text.Json.Serialization;
|
|
|
|
using decePubClient.Models.Mastodon;
|
|
|
|
namespace decePubClient;
|
|
|
|
/// <summary>
|
|
/// Source-generated JSON metadata for PrivaPub's Mastodon API and /oauth (snake_case), used by
|
|
/// SUtility.MastodonSerializer. ClientJsonContext stays camelCase for /clientapi and localStorage. Read-only properties
|
|
/// (Account.Host, Account.Name) are computed, never sent.
|
|
/// </summary>
|
|
[JsonSourceGenerationOptions(PropertyNamingPolicy = JsonKnownNamingPolicy.SnakeCaseLower, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull,
|
|
IgnoreReadOnlyProperties = true, PropertyNameCaseInsensitive = true)]
|
|
[JsonSerializable(typeof(Status))]
|
|
[JsonSerializable(typeof(List<Status>))]
|
|
[JsonSerializable(typeof(StatusContext))]
|
|
[JsonSerializable(typeof(Account))]
|
|
[JsonSerializable(typeof(List<Account>))]
|
|
[JsonSerializable(typeof(Relationship))]
|
|
[JsonSerializable(typeof(List<Relationship>))]
|
|
[JsonSerializable(typeof(SearchResults))]
|
|
[JsonSerializable(typeof(MediaAttachment))]
|
|
[JsonSerializable(typeof(Notification))]
|
|
[JsonSerializable(typeof(List<Notification>))]
|
|
[JsonSerializable(typeof(Conversation))]
|
|
[JsonSerializable(typeof(List<Conversation>))]
|
|
[JsonSerializable(typeof(InstanceDescription))]
|
|
[JsonSerializable(typeof(List<InstanceDescription>))]
|
|
[JsonSerializable(typeof(List<InstanceWeek>))]
|
|
[JsonSerializable(typeof(List<CdnSummary>))]
|
|
[JsonSerializable(typeof(CdnDetail))]
|
|
[JsonSerializable(typeof(Provenance))]
|
|
[JsonSerializable(typeof(TokenResponse))]
|
|
[JsonSerializable(typeof(MastodonError))]
|
|
[JsonSerializable(typeof(PostStatusForm))]
|
|
[JsonSerializable(typeof(Poll))]
|
|
[JsonSerializable(typeof(PollVoteForm))]
|
|
[JsonSerializable(typeof(MastodonList))]
|
|
[JsonSerializable(typeof(List<MastodonList>))]
|
|
[JsonSerializable(typeof(ListAccountsForm))]
|
|
public partial class MastodonJsonContext : JsonSerializerContext
|
|
{
|
|
}
|