Settings has a Notifications section, also at /notifications/filtered: what notifications from people the persona does not follow, people who do not follow it, new accounts, private mentions it did not ask for and limited accounts become (accept, filter, drop), and the filtered ones, one request per account, let in (with that account from then on) or dismissed. The Notifications tab says when requests wait. e2e: a stranger's like waits in a request reached from the tab and comes back once let in; the policy and the stranger's permission are put back afterwards (Pasture.Mongo). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LsXgEaXee4GCU1hwYgPJXw
64 lines
2.6 KiB
C#
64 lines
2.6 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(List<string>))]
|
|
[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(StatusEditForm))]
|
|
[JsonSerializable(typeof(StatusSource))]
|
|
[JsonSerializable(typeof(List<StatusEdit>))]
|
|
[JsonSerializable(typeof(ReportRequest))]
|
|
[JsonSerializable(typeof(NotificationPolicy))]
|
|
[JsonSerializable(typeof(List<NotificationRequest>))]
|
|
[JsonSerializable(typeof(Poll))]
|
|
[JsonSerializable(typeof(PollVoteForm))]
|
|
[JsonSerializable(typeof(MastodonList))]
|
|
[JsonSerializable(typeof(List<MastodonList>))]
|
|
[JsonSerializable(typeof(ListAccountsForm))]
|
|
[JsonSerializable(typeof(Filter))]
|
|
[JsonSerializable(typeof(List<Filter>))]
|
|
[JsonSerializable(typeof(FilterForm))]
|
|
[JsonSerializable(typeof(FilterStatus))]
|
|
[JsonSerializable(typeof(ScheduledStatus))]
|
|
[JsonSerializable(typeof(List<ScheduledStatus>))]
|
|
[JsonSerializable(typeof(ScheduleForm))]
|
|
[JsonSerializable(typeof(Tag))]
|
|
[JsonSerializable(typeof(List<Tag>))]
|
|
[JsonSerializable(typeof(List<TrendLink>))]
|
|
[JsonSerializable(typeof(GroupedNotifications))]
|
|
[JsonSerializable(typeof(MarkersForm))]
|
|
[JsonSerializable(typeof(UnreadCount))]
|
|
public partial class MastodonJsonContext : JsonSerializerContext
|
|
{
|
|
}
|