diff --git a/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Actor/ActorController.g.cs b/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Actor/ActorController.g.cs index 7e4cb7dd..b7529949 100644 --- a/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Actor/ActorController.g.cs +++ b/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Actor/ActorController.g.cs @@ -71,6 +71,7 @@ public abstract class ActorController : ControllerBase /// (app.bsky.actor.defs#labelersPref)
/// (app.bsky.actor.defs#postInteractionSettingsPref)
/// (app.bsky.actor.defs#verificationPrefs)
+ /// (app.bsky.actor.defs#liveEventPreferences)
/// /// /// Result of diff --git a/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Draft/DraftController.g.cs b/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Draft/DraftController.g.cs new file mode 100644 index 00000000..641808db --- /dev/null +++ b/src/FishyFlip.Xrpc/Lexicon/App/Bsky/Draft/DraftController.g.cs @@ -0,0 +1,58 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Xrpc.Lexicon.App.Bsky.Draft +{ + + /// + /// app.bsky.draft XRPC Group. + /// + [ApiController] + public abstract class DraftController : ControllerBase + { + + /// + /// Inserts a draft using private storage (stash). An upper limit of drafts might be enforced. Requires authentication. + ///
Possible Errors:
+ /// Trying to insert a new draft when the limit was already reached.
+ ///
+ /// A draft containing an array of draft posts. + /// + /// Result of + [HttpPost("/xrpc/app.bsky.draft.createDraft")] + public abstract Task, ATErrorResult>> CreateDraftAsync ([FromBody] FishyFlip.Lexicon.App.Bsky.Draft.CreateDraftInput input, CancellationToken cancellationToken); + + /// + /// Deletes a draft by ID. Requires authentication. + /// + /// + /// + /// Result of + [HttpPost("/xrpc/app.bsky.draft.deleteDraft")] + public abstract Task> DeleteDraftAsync ([FromBody] FishyFlip.Lexicon.App.Bsky.Draft.DeleteDraftInput input, CancellationToken cancellationToken); + + /// + /// Gets views of user drafts. Requires authentication. + /// + /// + /// + /// + /// Result of + [HttpGet("/xrpc/app.bsky.draft.getDrafts")] + public abstract Task, ATErrorResult>> GetDraftsAsync ([FromQuery] int? limit = 50, [FromQuery] string? cursor = default, CancellationToken cancellationToken = default); + + /// + /// Updates a draft using private storage (stash). If the draft ID points to a non-existing ID, the update will be silently ignored. This is done because updates don't enforce draft limit, so it accepts all writes, but will ignore invalid ones. Requires authentication. + /// + /// A draft with an identifier, used to store drafts in private storage (stash). + /// + /// Result of + [HttpPost("/xrpc/app.bsky.draft.updateDraft")] + public abstract Task> UpdateDraftAsync ([FromBody] FishyFlip.Lexicon.App.Bsky.Draft.UpdateDraftInput input, CancellationToken cancellationToken); + } +} + diff --git a/src/FishyFlip/Lexicon/ATErrorGenerator.g.cs b/src/FishyFlip/Lexicon/ATErrorGenerator.g.cs index 88ce113d..19418fb0 100644 --- a/src/FishyFlip/Lexicon/ATErrorGenerator.g.cs +++ b/src/FishyFlip/Lexicon/ATErrorGenerator.g.cs @@ -62,6 +62,8 @@ public static FishyFlip.Models.ATError Generate(int statusCode, ErrorDetail deta return new AccountTakedownError(statusCode, detail); case "UnsupportedCollection": return new UnsupportedCollectionError(statusCode, detail); + case "DraftLimitReached": + return new DraftLimitReachedError(statusCode, detail); case "AuthFactorTokenRequired": return new AuthFactorTokenRequiredError(statusCode, detail); case "DuplicateTemplateName": diff --git a/src/FishyFlip/Lexicon/ATObject.g.cs b/src/FishyFlip/Lexicon/ATObject.g.cs index f778e424..25133769 100644 --- a/src/FishyFlip/Lexicon/ATObject.g.cs +++ b/src/FishyFlip/Lexicon/ATObject.g.cs @@ -198,6 +198,10 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ComAtprotoServerCreateAppPasswordInput); case "app.bsky.bookmark.createBookmark#CreateBookmarkInput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyBookmarkCreateBookmarkInput); + case "app.bsky.draft.createDraft#CreateDraftInput": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput); + case "app.bsky.draft.createDraft#CreateDraftOutput": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput); case "com.atproto.server.createInviteCode#CreateInviteCodeInput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ComAtprotoServerCreateInviteCodeInput); case "com.atproto.server.createInviteCode#CreateInviteCodeOutput": @@ -228,6 +232,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyNotificationDeclaration); case "chat.bsky.actor.declaration": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyActorDeclaration); + case "com.germnetwork.declaration": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration); case "app.bsky.actor.defs#declaredAgePref": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorDeclaredAgePref); case "com.atproto.repo.applyWrites#delete": @@ -242,6 +248,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyBookmarkDeleteBookmarkInput); case "chat.bsky.convo.defs#deletedMessageView": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoDeletedMessageView); + case "app.bsky.draft.deleteDraft#DeleteDraftInput": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput); case "tools.ozone.team.deleteMember#DeleteMemberInput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ToolsOzoneTeamDeleteMemberInput); case "chat.bsky.convo.deleteMessageForSelf#DeleteMessageForSelfInput": @@ -278,6 +286,26 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyContactDismissMatchInput); case "app.bsky.contact.dismissMatch#DismissMatchOutput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyContactDismissMatchOutput); + case "app.bsky.draft.defs#draft": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft); + case "app.bsky.draft.defs#draftEmbedCaption": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption); + case "app.bsky.draft.defs#draftEmbedExternal": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal); + case "app.bsky.draft.defs#draftEmbedImage": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage); + case "app.bsky.draft.defs#draftEmbedLocalRef": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef); + case "app.bsky.draft.defs#draftEmbedRecord": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord); + case "app.bsky.draft.defs#draftEmbedVideo": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo); + case "app.bsky.draft.defs#draftPost": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost); + case "app.bsky.draft.defs#draftView": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView); + case "app.bsky.draft.defs#draftWithId": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId); case "tools.ozone.hosting.getAccountHistory#emailConfirmed": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ToolsOzoneHostingEmailConfirmed); case "tools.ozone.hosting.getAccountHistory#emailUpdated": @@ -366,6 +394,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoGetConvoForMembersOutput); case "chat.bsky.convo.getConvo#GetConvoOutput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoGetConvoOutput); + case "app.bsky.draft.getDrafts#GetDraftsOutput": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput); case "app.bsky.feed.getFeedGenerator#GetFeedGeneratorOutput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyFeedGetFeedGeneratorOutput); case "app.bsky.feed.getFeedGenerators#GetFeedGeneratorsOutput": @@ -634,6 +664,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyGraphListViewerState); case "app.bsky.graph.getListsWithMembership#listWithMembership": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyGraphListWithMembership); + case "app.bsky.actor.defs#liveEventPreferences": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences); case "app.bsky.unspecced.getConfig#liveNowConfig": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyUnspeccedLiveNowConfig); case "chat.bsky.convo.defs#logAcceptConvo": @@ -668,6 +700,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoMessageAndReactionView); case "chat.bsky.convo.defs#messageInput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoMessageInput); + case "com.germnetwork.declaration#messageMe": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe); case "chat.bsky.convo.defs#messageRef": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoMessageRef); case "chat.bsky.convo.defs#messageView": @@ -770,6 +804,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedActivitySubscription); case "app.bsky.actor.defs#profileAssociatedChat": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedChat); + case "app.bsky.actor.defs#profileAssociatedGerm": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm); case "app.bsky.actor.defs#profileView": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileView); case "app.bsky.actor.defs#profileViewBasic": @@ -1116,6 +1152,8 @@ public override string ToString() return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoUpdateAllReadInput); case "chat.bsky.convo.updateAllRead#UpdateAllReadOutput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ChatBskyConvoUpdateAllReadOutput); + case "app.bsky.draft.updateDraft#UpdateDraftInput": + return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput); case "com.atproto.server.updateEmail#UpdateEmailInput": return JsonSerializer.Deserialize(data, (JsonTypeInfo)SourceGenerationContext.Default.ComAtprotoServerUpdateEmailInput); case "com.atproto.identity.updateHandle#UpdateHandleInput": diff --git a/src/FishyFlip/Lexicon/ATProtocol.g.cs b/src/FishyFlip/Lexicon/ATProtocol.g.cs index d38a7225..cf523847 100644 --- a/src/FishyFlip/Lexicon/ATProtocol.g.cs +++ b/src/FishyFlip/Lexicon/ATProtocol.g.cs @@ -34,6 +34,11 @@ public sealed partial class ATProtocol /// public FishyFlip.Lexicon.App.Bsky.Contact.BlueskyContact Contact => new (this); + /// + /// app.bsky.draft Endpoint Group. + /// + public FishyFlip.Lexicon.App.Bsky.Draft.BlueskyDraft Draft => new (this); + /// /// app.bsky.feed Endpoint Group. /// diff --git a/src/FishyFlip/Lexicon/App/Bsky/Actor/ActorEndpoints.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Actor/ActorEndpoints.g.cs index 2f38912a..048ca759 100644 --- a/src/FishyFlip/Lexicon/App/Bsky/Actor/ActorEndpoints.g.cs +++ b/src/FishyFlip/Lexicon/App/Bsky/Actor/ActorEndpoints.g.cs @@ -139,6 +139,7 @@ public static class ActorEndpoints /// (app.bsky.actor.defs#labelersPref)
/// (app.bsky.actor.defs#postInteractionSettingsPref)
/// (app.bsky.actor.defs#verificationPrefs)
+ /// (app.bsky.actor.defs#liveEventPreferences)
/// /// /// Result of diff --git a/src/FishyFlip/Lexicon/App/Bsky/Actor/BlueskyActor.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Actor/BlueskyActor.g.cs index adfd70da..9c54411e 100644 --- a/src/FishyFlip/Lexicon/App/Bsky/Actor/BlueskyActor.g.cs +++ b/src/FishyFlip/Lexicon/App/Bsky/Actor/BlueskyActor.g.cs @@ -106,6 +106,7 @@ public GetSuggestionsOutputCollection GetSuggestionsCollectionAsync (int? limit /// (app.bsky.actor.defs#labelersPref)
/// (app.bsky.actor.defs#postInteractionSettingsPref)
/// (app.bsky.actor.defs#verificationPrefs)
+ /// (app.bsky.actor.defs#liveEventPreferences)
/// /// public Task> PutPreferencesAsync (List preferences, CancellationToken cancellationToken = default) diff --git a/src/FishyFlip/Lexicon/App/Bsky/Actor/LiveEventPreferences.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Actor/LiveEventPreferences.g.cs new file mode 100644 index 00000000..7d4e4f0a --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Actor/LiveEventPreferences.g.cs @@ -0,0 +1,108 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Actor +{ + /// + /// Preferences for live events. + /// + public partial class LiveEventPreferences : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// A list of feed IDs that the user has hidden from live events. + /// Whether to hide all feeds from live events. + public LiveEventPreferences(List? hiddenFeedIds = default, bool? hideAllFeeds = default) + { + this.HiddenFeedIds = hiddenFeedIds; + this.HideAllFeeds = hideAllFeeds; + this.Type = "app.bsky.actor.defs#liveEventPreferences"; + } + + + /// + /// Initializes a new instance of the class. + /// + public LiveEventPreferences() + { + this.Type = "app.bsky.actor.defs#liveEventPreferences"; + } + + + /// + /// Initializes a new instance of the class. + /// + public LiveEventPreferences(CBORObject obj) + { + if (obj["hiddenFeedIds"] is not null) this.HiddenFeedIds = obj["hiddenFeedIds"].Values.Select(n =>n.AsString()).ToList(); + if (obj["hideAllFeeds"] is not null) this.HideAllFeeds = obj["hideAllFeeds"].AsBoolean(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the hiddenFeedIds. + ///
A list of feed IDs that the user has hidden from live events. + ///
+ [JsonPropertyName("hiddenFeedIds")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? HiddenFeedIds { get; set; } + + /// + /// Gets or sets the hideAllFeeds. + ///
Whether to hide all feeds from live events. + ///
+ [JsonPropertyName("hideAllFeeds")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public bool? HideAllFeeds { get; set; } = false; + + public const string RecordType = "app.bsky.actor.defs#liveEventPreferences"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences); + } + + public static new LiveEventPreferences FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new LiveEventPreferences FromCBORObject(CBORObject obj) + { + return new LiveEventPreferences(obj); + } + + /// + public static LiveEventPreferences Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out LiveEventPreferences result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorLiveEventPreferences); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociated.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociated.g.cs index 0b34c8fa..a2560042 100644 --- a/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociated.g.cs +++ b/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociated.g.cs @@ -23,7 +23,10 @@ public partial class ProfileAssociated : ATObject, ICBOREncodable /// (app.bsky.actor.defs#profileAssociatedActivitySubscription) /// - public ProfileAssociated(long? lists = default, long? feedgens = default, long? starterPacks = default, bool? labeler = default, FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedChat? chat = default, FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedActivitySubscription? activitySubscription = default) + /// + /// (app.bsky.actor.defs#profileAssociatedGerm) + /// + public ProfileAssociated(long? lists = default, long? feedgens = default, long? starterPacks = default, bool? labeler = default, FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedChat? chat = default, FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedActivitySubscription? activitySubscription = default, FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedGerm? germ = default) { this.Lists = lists; this.Feedgens = feedgens; @@ -31,6 +34,7 @@ public ProfileAssociated(long? lists = default, long? feedgens = default, long? this.Labeler = labeler; this.Chat = chat; this.ActivitySubscription = activitySubscription; + this.Germ = germ; this.Type = "app.bsky.actor.defs#profileAssociated"; } @@ -55,6 +59,7 @@ public ProfileAssociated(CBORObject obj) if (obj["labeler"] is not null) this.Labeler = obj["labeler"].AsBoolean(); if (obj["chat"] is not null) this.Chat = new FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedChat(obj["chat"]); if (obj["activitySubscription"] is not null) this.ActivitySubscription = new FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedActivitySubscription(obj["activitySubscription"]); + if (obj["germ"] is not null) this.Germ = new FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedGerm(obj["germ"]); if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); } @@ -102,6 +107,14 @@ public ProfileAssociated(CBORObject obj) [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedActivitySubscription? ActivitySubscription { get; set; } + /// + /// Gets or sets the germ. + ///
(app.bsky.actor.defs#profileAssociatedGerm) + ///
+ [JsonPropertyName("germ")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedGerm? Germ { get; set; } + public const string RecordType = "app.bsky.actor.defs#profileAssociated"; public override string ToJson() diff --git a/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociatedGerm.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociatedGerm.g.cs new file mode 100644 index 00000000..fd66aaf0 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Actor/ProfileAssociatedGerm.g.cs @@ -0,0 +1,110 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Actor +{ + public partial class ProfileAssociatedGerm : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// + ///
Known Values:
+ /// usersIFollow
+ /// everyone
+ /// + public ProfileAssociatedGerm(string messageMeUrl = default, string showButtonTo = default) + { + this.MessageMeUrl = messageMeUrl; + this.ShowButtonTo = showButtonTo; + this.Type = "app.bsky.actor.defs#profileAssociatedGerm"; + } + + + /// + /// Initializes a new instance of the class. + /// + public ProfileAssociatedGerm() + { + this.Type = "app.bsky.actor.defs#profileAssociatedGerm"; + } + + + /// + /// Initializes a new instance of the class. + /// + public ProfileAssociatedGerm(CBORObject obj) + { + if (obj["messageMeUrl"] is not null) this.MessageMeUrl = obj["messageMeUrl"].AsString(); + if (obj["showButtonTo"] is not null) this.ShowButtonTo = obj["showButtonTo"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the messageMeUrl. + /// + [JsonPropertyName("messageMeUrl")] + [JsonRequired] + public string MessageMeUrl { get; set; } + + /// + /// Gets or sets the showButtonTo. + ///
Known Values:
+ /// usersIFollow
+ /// everyone
+ ///
+ [JsonPropertyName("showButtonTo")] + [JsonRequired] + public string ShowButtonTo { get; set; } + + public const string RecordType = "app.bsky.actor.defs#profileAssociatedGerm"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm); + } + + public static new ProfileAssociatedGerm FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new ProfileAssociatedGerm FromCBORObject(CBORObject obj) + { + return new ProfileAssociatedGerm(obj); + } + + /// + public static ProfileAssociatedGerm Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out ProfileAssociatedGerm result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyActorProfileAssociatedGerm); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/BlueskyDraft.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/BlueskyDraft.g.cs new file mode 100644 index 00000000..d2bce29a --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/BlueskyDraft.g.cs @@ -0,0 +1,93 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + + /// + /// app.bsky.draft Endpoint Class. + /// + public sealed class BlueskyDraft + { + + private ATProtocol atp; + + /// + /// Initializes a new instance of the class. + /// + /// . + internal BlueskyDraft(ATProtocol atp) + { + this.atp = atp; + } + + /// + /// Gets the ATProtocol. + /// + internal ATProtocol ATProtocol => this.atp; + + + /// + /// Inserts a draft using private storage (stash). An upper limit of drafts might be enforced. Requires authentication. + ///
Possible Errors:
+ /// Trying to insert a new draft when the limit was already reached.
+ ///
+ /// A draft containing an array of draft posts. + /// + public Task> CreateDraftAsync (FishyFlip.Lexicon.App.Bsky.Draft.Draft draft, CancellationToken cancellationToken = default) + { + return atp.CreateDraftAsync(draft, cancellationToken); + } + + + /// + /// Deletes a draft by ID. Requires authentication. + /// + /// + /// + public Task> DeleteDraftAsync (string id, CancellationToken cancellationToken = default) + { + return atp.DeleteDraftAsync(id, cancellationToken); + } + + + /// + /// Gets views of user drafts. Requires authentication. + /// + /// + /// + /// + public Task> GetDraftsAsync (int? limit = 50, string? cursor = default, CancellationToken cancellationToken = default) + { + return atp.GetDraftsAsync(limit, cursor, cancellationToken); + } + + /// + /// Gets views of user drafts. Requires authentication. + /// + /// + /// + /// + public GetDraftsOutputCollection GetDraftsCollectionAsync (int? limit = 50, string? cursor = default, CancellationToken cancellationToken = default) + { + return new GetDraftsOutputCollection(atp, limit, cursor, cancellationToken); + } + + + /// + /// Updates a draft using private storage (stash). If the draft ID points to a non-existing ID, the update will be silently ignored. This is done because updates don't enforce draft limit, so it accepts all writes, but will ignore invalid ones. Requires authentication. + /// + /// A draft with an identifier, used to store drafts in private storage (stash). + /// + public Task> UpdateDraftAsync (FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId draft, CancellationToken cancellationToken = default) + { + return atp.UpdateDraftAsync(draft, cancellationToken); + } + + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftInput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftInput.g.cs new file mode 100644 index 00000000..151cf09b --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftInput.g.cs @@ -0,0 +1,96 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class CreateDraftInput : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// (app.bsky.draft.defs#draft) + /// + public CreateDraftInput(FishyFlip.Lexicon.App.Bsky.Draft.Draft draft = default) + { + this.Draft = draft; + this.Type = "app.bsky.draft.createDraft#CreateDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public CreateDraftInput() + { + this.Type = "app.bsky.draft.createDraft#CreateDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public CreateDraftInput(CBORObject obj) + { + if (obj["draft"] is not null) this.Draft = new FishyFlip.Lexicon.App.Bsky.Draft.Draft(obj["draft"]); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the draft. + ///
(app.bsky.draft.defs#draft) + ///
+ [JsonPropertyName("draft")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.Draft Draft { get; set; } + + public const string RecordType = "app.bsky.draft.createDraft#CreateDraftInput"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput); + } + + public static new CreateDraftInput FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new CreateDraftInput FromCBORObject(CBORObject obj) + { + return new CreateDraftInput(obj); + } + + /// + public static CreateDraftInput Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out CreateDraftInput result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftInput); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftOutput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftOutput.g.cs new file mode 100644 index 00000000..0e05c1be --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/CreateDraftOutput.g.cs @@ -0,0 +1,94 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class CreateDraftOutput : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// The ID of the created draft. + public CreateDraftOutput(string id = default) + { + this.Id = id; + this.Type = "app.bsky.draft.createDraft#CreateDraftOutput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public CreateDraftOutput() + { + this.Type = "app.bsky.draft.createDraft#CreateDraftOutput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public CreateDraftOutput(CBORObject obj) + { + if (obj["id"] is not null) this.Id = obj["id"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the id. + ///
The ID of the created draft. + ///
+ [JsonPropertyName("id")] + [JsonRequired] + public string Id { get; set; } + + public const string RecordType = "app.bsky.draft.createDraft#CreateDraftOutput"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput); + } + + public static new CreateDraftOutput FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new CreateDraftOutput FromCBORObject(CBORObject obj) + { + return new CreateDraftOutput(obj); + } + + /// + public static CreateDraftOutput Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out CreateDraftOutput result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftCreateDraftOutput); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DeleteDraftInput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DeleteDraftInput.g.cs new file mode 100644 index 00000000..5f71ad65 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DeleteDraftInput.g.cs @@ -0,0 +1,93 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DeleteDraftInput : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + public DeleteDraftInput(string id = default) + { + this.Id = id; + this.Type = "app.bsky.draft.deleteDraft#DeleteDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DeleteDraftInput() + { + this.Type = "app.bsky.draft.deleteDraft#DeleteDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DeleteDraftInput(CBORObject obj) + { + if (obj["id"] is not null) this.Id = obj["id"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the id. + /// + [JsonPropertyName("id")] + [JsonRequired] + public string Id { get; set; } + + public const string RecordType = "app.bsky.draft.deleteDraft#DeleteDraftInput"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput); + } + + public static new DeleteDraftInput FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DeleteDraftInput FromCBORObject(CBORObject obj) + { + return new DeleteDraftInput(obj); + } + + /// + public static DeleteDraftInput Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DeleteDraftInput result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDeleteDraftInput); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/Draft.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/Draft.g.cs new file mode 100644 index 00000000..f7694efc --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/Draft.g.cs @@ -0,0 +1,146 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + /// + /// A draft containing an array of draft posts. + /// + public partial class Draft : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// Array of draft posts that compose this draft. + /// Indicates human language of posts primary text content. + /// Embedding rules for the postgates to be created when this draft is published. + ///
Union Types:
+ /// (app.bsky.feed.postgate#disableRule)
+ /// + /// Allow-rules for the threadgate to be created when this draft is published. + ///
Union Types:
+ /// (app.bsky.feed.threadgate#mentionRule)
+ /// (app.bsky.feed.threadgate#followerRule)
+ /// (app.bsky.feed.threadgate#followingRule)
+ /// (app.bsky.feed.threadgate#listRule)
+ /// + public Draft(List posts = default, List? langs = default, List? postgateEmbeddingRules = default, List? threadgateAllow = default) + { + this.Posts = posts; + this.Langs = langs; + this.PostgateEmbeddingRules = postgateEmbeddingRules; + this.ThreadgateAllow = threadgateAllow; + this.Type = "app.bsky.draft.defs#draft"; + } + + + /// + /// Initializes a new instance of the class. + /// + public Draft() + { + this.Type = "app.bsky.draft.defs#draft"; + } + + + /// + /// Initializes a new instance of the class. + /// + public Draft(CBORObject obj) + { + if (obj["posts"] is not null) this.Posts = obj["posts"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftPost(n)).ToList(); + if (obj["langs"] is not null) this.Langs = obj["langs"].Values.Select(n =>n.AsString()).ToList(); + if (obj["postgateEmbeddingRules"] is not null) this.PostgateEmbeddingRules = obj["postgateEmbeddingRules"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Feed.DisableRule(n)).ToList(); + if (obj["threadgateAllow"] is not null) this.ThreadgateAllow = obj["threadgateAllow"].Values.Select(n =>n.ToATObject()).ToList(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the posts. + ///
Array of draft posts that compose this draft. + ///
+ [JsonPropertyName("posts")] + [JsonRequired] + public List Posts { get; set; } + + /// + /// Gets or sets the langs. + ///
Indicates human language of posts primary text content. + ///
+ [JsonPropertyName("langs")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? Langs { get; set; } + + /// + /// Gets or sets the postgateEmbeddingRules. + ///
Embedding rules for the postgates to be created when this draft is published. + ///
Union Types:
+ /// (app.bsky.feed.postgate#disableRule)
+ ///
+ [JsonPropertyName("postgateEmbeddingRules")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? PostgateEmbeddingRules { get; set; } + + /// + /// Gets or sets the threadgateAllow. + ///
Allow-rules for the threadgate to be created when this draft is published. + ///
Union Types:
+ /// (app.bsky.feed.threadgate#mentionRule)
+ /// (app.bsky.feed.threadgate#followerRule)
+ /// (app.bsky.feed.threadgate#followingRule)
+ /// (app.bsky.feed.threadgate#listRule)
+ ///
+ [JsonPropertyName("threadgateAllow")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? ThreadgateAllow { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draft"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft); + } + + public static new Draft FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new Draft FromCBORObject(CBORObject obj) + { + return new Draft(obj); + } + + /// + public static Draft Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out Draft result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraft); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedCaption.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedCaption.g.cs new file mode 100644 index 00000000..1e8f75d7 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedCaption.g.cs @@ -0,0 +1,103 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedCaption : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// + public DraftEmbedCaption(string lang = default, string content = default) + { + this.Lang = lang; + this.Content = content; + this.Type = "app.bsky.draft.defs#draftEmbedCaption"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedCaption() + { + this.Type = "app.bsky.draft.defs#draftEmbedCaption"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedCaption(CBORObject obj) + { + if (obj["lang"] is not null) this.Lang = obj["lang"].AsString(); + if (obj["content"] is not null) this.Content = obj["content"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the lang. + /// + [JsonPropertyName("lang")] + [JsonRequired] + public string Lang { get; set; } + + /// + /// Gets or sets the content. + /// + [JsonPropertyName("content")] + [JsonRequired] + public string Content { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedCaption"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption); + } + + public static new DraftEmbedCaption FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedCaption FromCBORObject(CBORObject obj) + { + return new DraftEmbedCaption(obj); + } + + /// + public static DraftEmbedCaption Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedCaption result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedCaption); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedExternal.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedExternal.g.cs new file mode 100644 index 00000000..a3f99e86 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedExternal.g.cs @@ -0,0 +1,93 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedExternal : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + public DraftEmbedExternal(string uri = default) + { + this.Uri = uri; + this.Type = "app.bsky.draft.defs#draftEmbedExternal"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedExternal() + { + this.Type = "app.bsky.draft.defs#draftEmbedExternal"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedExternal(CBORObject obj) + { + if (obj["uri"] is not null) this.Uri = obj["uri"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the uri. + /// + [JsonPropertyName("uri")] + [JsonRequired] + public string Uri { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedExternal"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal); + } + + public static new DraftEmbedExternal FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedExternal FromCBORObject(CBORObject obj) + { + return new DraftEmbedExternal(obj); + } + + /// + public static DraftEmbedExternal Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedExternal result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedExternal); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedImage.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedImage.g.cs new file mode 100644 index 00000000..c741ebda --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedImage.g.cs @@ -0,0 +1,106 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedImage : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// (app.bsky.draft.defs#draftEmbedLocalRef) + /// + /// + public DraftEmbedImage(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef localRef = default, string? alt = default) + { + this.LocalRef = localRef; + this.Alt = alt; + this.Type = "app.bsky.draft.defs#draftEmbedImage"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedImage() + { + this.Type = "app.bsky.draft.defs#draftEmbedImage"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedImage(CBORObject obj) + { + if (obj["localRef"] is not null) this.LocalRef = new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef(obj["localRef"]); + if (obj["alt"] is not null) this.Alt = obj["alt"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the localRef. + ///
(app.bsky.draft.defs#draftEmbedLocalRef) + ///
+ [JsonPropertyName("localRef")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef LocalRef { get; set; } + + /// + /// Gets or sets the alt. + /// + [JsonPropertyName("alt")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? Alt { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedImage"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage); + } + + public static new DraftEmbedImage FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedImage FromCBORObject(CBORObject obj) + { + return new DraftEmbedImage(obj); + } + + /// + public static DraftEmbedImage Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedImage result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedImage); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedLocalRef.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedLocalRef.g.cs new file mode 100644 index 00000000..0ec7a05f --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedLocalRef.g.cs @@ -0,0 +1,94 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedLocalRef : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// Local, on-device ref to file to be embedded. Embeds are currently device-bound for drafts. + public DraftEmbedLocalRef(string path = default) + { + this.Path = path; + this.Type = "app.bsky.draft.defs#draftEmbedLocalRef"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedLocalRef() + { + this.Type = "app.bsky.draft.defs#draftEmbedLocalRef"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedLocalRef(CBORObject obj) + { + if (obj["path"] is not null) this.Path = obj["path"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the path. + ///
Local, on-device ref to file to be embedded. Embeds are currently device-bound for drafts. + ///
+ [JsonPropertyName("path")] + [JsonRequired] + public string Path { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedLocalRef"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef); + } + + public static new DraftEmbedLocalRef FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedLocalRef FromCBORObject(CBORObject obj) + { + return new DraftEmbedLocalRef(obj); + } + + /// + public static DraftEmbedLocalRef Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedLocalRef result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedLocalRef); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedRecord.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedRecord.g.cs new file mode 100644 index 00000000..71b2b254 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedRecord.g.cs @@ -0,0 +1,96 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedRecord : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// (com.atproto.repo.strongRef) + /// + public DraftEmbedRecord(Com.Atproto.Repo.StrongRef record = default) + { + this.Record = record; + this.Type = "app.bsky.draft.defs#draftEmbedRecord"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedRecord() + { + this.Type = "app.bsky.draft.defs#draftEmbedRecord"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedRecord(CBORObject obj) + { + if (obj["record"] is not null) this.Record = new FishyFlip.Lexicon.Com.Atproto.Repo.StrongRef(obj["record"]); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the record. + ///
(com.atproto.repo.strongRef) + ///
+ [JsonPropertyName("record")] + [JsonRequired] + public Com.Atproto.Repo.StrongRef Record { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedRecord"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord); + } + + public static new DraftEmbedRecord FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedRecord FromCBORObject(CBORObject obj) + { + return new DraftEmbedRecord(obj); + } + + /// + public static DraftEmbedRecord Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedRecord result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedRecord); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedVideo.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedVideo.g.cs new file mode 100644 index 00000000..5715b82b --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEmbedVideo.g.cs @@ -0,0 +1,116 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class DraftEmbedVideo : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// (app.bsky.draft.defs#draftEmbedLocalRef) + /// + /// + /// + public DraftEmbedVideo(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef localRef = default, string? alt = default, List? captions = default) + { + this.LocalRef = localRef; + this.Alt = alt; + this.Captions = captions; + this.Type = "app.bsky.draft.defs#draftEmbedVideo"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedVideo() + { + this.Type = "app.bsky.draft.defs#draftEmbedVideo"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftEmbedVideo(CBORObject obj) + { + if (obj["localRef"] is not null) this.LocalRef = new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef(obj["localRef"]); + if (obj["alt"] is not null) this.Alt = obj["alt"].AsString(); + if (obj["captions"] is not null) this.Captions = obj["captions"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedCaption(n)).ToList(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the localRef. + ///
(app.bsky.draft.defs#draftEmbedLocalRef) + ///
+ [JsonPropertyName("localRef")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef LocalRef { get; set; } + + /// + /// Gets or sets the alt. + /// + [JsonPropertyName("alt")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? Alt { get; set; } + + /// + /// Gets or sets the captions. + /// + [JsonPropertyName("captions")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? Captions { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftEmbedVideo"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo); + } + + public static new DraftEmbedVideo FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftEmbedVideo FromCBORObject(CBORObject obj) + { + return new DraftEmbedVideo(obj); + } + + /// + public static DraftEmbedVideo Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftEmbedVideo result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftEmbedVideo); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEndpoints.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEndpoints.g.cs new file mode 100644 index 00000000..9ac47191 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftEndpoints.g.cs @@ -0,0 +1,112 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + + /// + /// app.bsky.draft Endpoint Group. + /// + public static class DraftEndpoints + { + + public const string GroupNamespace = "app.bsky.draft"; + + public const string CreateDraft = "/xrpc/app.bsky.draft.createDraft"; + + public const string DeleteDraft = "/xrpc/app.bsky.draft.deleteDraft"; + + public const string GetDrafts = "/xrpc/app.bsky.draft.getDrafts"; + + public const string UpdateDraft = "/xrpc/app.bsky.draft.updateDraft"; + + + /// + /// Inserts a draft using private storage (stash). An upper limit of drafts might be enforced. Requires authentication. + ///
Possible Errors:
+ /// Trying to insert a new draft when the limit was already reached.
+ ///
+ /// + /// A draft containing an array of draft posts. + /// + /// Result of + public static Task> CreateDraftAsync (this FishyFlip.ATProtocol atp, FishyFlip.Lexicon.App.Bsky.Draft.Draft draft, CancellationToken cancellationToken = default) + { + var endpointUrl = CreateDraft.ToString(); + var headers = new Dictionary(); + var inputItem = new CreateDraftInput(); + inputItem.Draft = draft; + return atp.Post(endpointUrl, atp.Options.SourceGenerationContext.AppBskyDraftCreateDraftInput!, atp.Options.SourceGenerationContext.AppBskyDraftCreateDraftOutput!, inputItem, cancellationToken, headers); + } + + + /// + /// Deletes a draft by ID. Requires authentication. + /// + /// + /// + /// + /// Result of + public static Task> DeleteDraftAsync (this FishyFlip.ATProtocol atp, string id, CancellationToken cancellationToken = default) + { + var endpointUrl = DeleteDraft.ToString(); + var headers = new Dictionary(); + var inputItem = new DeleteDraftInput(); + inputItem.Id = id; + return atp.Post(endpointUrl, atp.Options.SourceGenerationContext.AppBskyDraftDeleteDraftInput!, atp.Options.SourceGenerationContext.Success!, inputItem, cancellationToken, headers); + } + + + /// + /// Gets views of user drafts. Requires authentication. + /// + /// + /// + /// + /// + /// Result of + public static Task> GetDraftsAsync (this FishyFlip.ATProtocol atp, int? limit = 50, string? cursor = default, CancellationToken cancellationToken = default) + { + var endpointUrl = GetDrafts.ToString(); + endpointUrl += "?"; + List queryStrings = new(); + if (limit != null) + { + queryStrings.Add("limit=" + limit); + } + + if (cursor != null) + { + queryStrings.Add("cursor=" + cursor); + } + + var headers = new Dictionary(); + headers.Add(Constants.AtProtoAcceptLabelers, atp.Options.LabelDefinitionsHeader); + endpointUrl += string.Join("&", queryStrings); + return atp.Get(endpointUrl, atp.Options.SourceGenerationContext.AppBskyDraftGetDraftsOutput!, cancellationToken, headers); + } + + + /// + /// Updates a draft using private storage (stash). If the draft ID points to a non-existing ID, the update will be silently ignored. This is done because updates don't enforce draft limit, so it accepts all writes, but will ignore invalid ones. Requires authentication. + /// + /// + /// A draft with an identifier, used to store drafts in private storage (stash). + /// + /// Result of + public static Task> UpdateDraftAsync (this FishyFlip.ATProtocol atp, FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId draft, CancellationToken cancellationToken = default) + { + var endpointUrl = UpdateDraft.ToString(); + var headers = new Dictionary(); + var inputItem = new UpdateDraftInput(); + inputItem.Draft = draft; + return atp.Post(endpointUrl, atp.Options.SourceGenerationContext.AppBskyDraftUpdateDraftInput!, atp.Options.SourceGenerationContext.Success!, inputItem, cancellationToken, headers); + } + + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftPost.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftPost.g.cs new file mode 100644 index 00000000..57a2e5e2 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftPost.g.cs @@ -0,0 +1,153 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + /// + /// One of the posts that compose a draft. + /// + public partial class DraftPost : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// The primary post content. + /// Self-label values for this post. Effectively content warnings. + ///
Union Types:
+ /// (com.atproto.label.defs#selfLabels)
+ /// + /// + /// + /// + /// + public DraftPost(string text = default, FishyFlip.Lexicon.Com.Atproto.Label.SelfLabels? labels = default, List? embedImages = default, List? embedVideos = default, List? embedExternals = default, List? embedRecords = default) + { + this.Text = text; + this.Labels = labels; + this.EmbedImages = embedImages; + this.EmbedVideos = embedVideos; + this.EmbedExternals = embedExternals; + this.EmbedRecords = embedRecords; + this.Type = "app.bsky.draft.defs#draftPost"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftPost() + { + this.Type = "app.bsky.draft.defs#draftPost"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftPost(CBORObject obj) + { + if (obj["text"] is not null) this.Text = obj["text"].AsString(); + if (obj["labels"] is not null) this.Labels = new FishyFlip.Lexicon.Com.Atproto.Label.SelfLabels(obj["labels"]); + if (obj["embedImages"] is not null) this.EmbedImages = obj["embedImages"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedImage(n)).ToList(); + if (obj["embedVideos"] is not null) this.EmbedVideos = obj["embedVideos"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedVideo(n)).ToList(); + if (obj["embedExternals"] is not null) this.EmbedExternals = obj["embedExternals"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedExternal(n)).ToList(); + if (obj["embedRecords"] is not null) this.EmbedRecords = obj["embedRecords"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedRecord(n)).ToList(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the text. + ///
The primary post content. + ///
+ [JsonPropertyName("text")] + [JsonRequired] + public string Text { get; set; } + + /// + /// Gets or sets the labels. + ///
Self-label values for this post. Effectively content warnings. + ///
Union Types:
+ /// (com.atproto.label.defs#selfLabels)
+ ///
+ [JsonPropertyName("labels")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public FishyFlip.Lexicon.Com.Atproto.Label.SelfLabels? Labels { get; set; } + + /// + /// Gets or sets the embedImages. + /// + [JsonPropertyName("embedImages")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? EmbedImages { get; set; } + + /// + /// Gets or sets the embedVideos. + /// + [JsonPropertyName("embedVideos")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? EmbedVideos { get; set; } + + /// + /// Gets or sets the embedExternals. + /// + [JsonPropertyName("embedExternals")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? EmbedExternals { get; set; } + + /// + /// Gets or sets the embedRecords. + /// + [JsonPropertyName("embedRecords")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? EmbedRecords { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftPost"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost); + } + + public static new DraftPost FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftPost FromCBORObject(CBORObject obj) + { + return new DraftPost(obj); + } + + /// + public static DraftPost Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftPost result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftPost); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftView.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftView.g.cs new file mode 100644 index 00000000..199351f9 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftView.g.cs @@ -0,0 +1,132 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + /// + /// View to present drafts data to users. + /// + public partial class DraftView : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// A TID to be used as a draft identifier. + /// + /// (app.bsky.draft.defs#draft) + /// + /// The time the draft was created. + /// The time the draft was last updated. + public DraftView(string id = default, FishyFlip.Lexicon.App.Bsky.Draft.Draft draft = default, DateTime? createdAt = default, DateTime? updatedAt = default) + { + this.Id = id; + this.Draft = draft; + this.CreatedAt = createdAt ?? DateTime.UtcNow; + this.UpdatedAt = updatedAt; + this.Type = "app.bsky.draft.defs#draftView"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftView() + { + this.Type = "app.bsky.draft.defs#draftView"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftView(CBORObject obj) + { + if (obj["id"] is not null) this.Id = obj["id"].AsString(); + if (obj["draft"] is not null) this.Draft = new FishyFlip.Lexicon.App.Bsky.Draft.Draft(obj["draft"]); + if (obj["createdAt"] is not null) this.CreatedAt = obj["createdAt"].ToDateTime(); + if (obj["updatedAt"] is not null) this.UpdatedAt = obj["updatedAt"].ToDateTime(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the id. + ///
A TID to be used as a draft identifier. + ///
+ [JsonPropertyName("id")] + [JsonRequired] + public string Id { get; set; } + + /// + /// Gets or sets the draft. + ///
(app.bsky.draft.defs#draft) + ///
+ [JsonPropertyName("draft")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.Draft Draft { get; set; } + + /// + /// Gets or sets the createdAt. + ///
The time the draft was created. + ///
+ [JsonPropertyName("createdAt")] + [JsonRequired] + public DateTime? CreatedAt { get; set; } = DateTime.UtcNow; + + /// + /// Gets or sets the updatedAt. + ///
The time the draft was last updated. + ///
+ [JsonPropertyName("updatedAt")] + [JsonRequired] + public DateTime? UpdatedAt { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftView"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView); + } + + public static new DraftView FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftView FromCBORObject(CBORObject obj) + { + return new DraftView(obj); + } + + /// + public static DraftView Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftView result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftView); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftWithId.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftWithId.g.cs new file mode 100644 index 00000000..6ff28b55 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/DraftWithId.g.cs @@ -0,0 +1,110 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + /// + /// A draft with an identifier, used to store drafts in private storage (stash). + /// + public partial class DraftWithId : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// A TID to be used as a draft identifier. + /// + /// (app.bsky.draft.defs#draft) + /// + public DraftWithId(string id = default, FishyFlip.Lexicon.App.Bsky.Draft.Draft draft = default) + { + this.Id = id; + this.Draft = draft; + this.Type = "app.bsky.draft.defs#draftWithId"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftWithId() + { + this.Type = "app.bsky.draft.defs#draftWithId"; + } + + + /// + /// Initializes a new instance of the class. + /// + public DraftWithId(CBORObject obj) + { + if (obj["id"] is not null) this.Id = obj["id"].AsString(); + if (obj["draft"] is not null) this.Draft = new FishyFlip.Lexicon.App.Bsky.Draft.Draft(obj["draft"]); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the id. + ///
A TID to be used as a draft identifier. + ///
+ [JsonPropertyName("id")] + [JsonRequired] + public string Id { get; set; } + + /// + /// Gets or sets the draft. + ///
(app.bsky.draft.defs#draft) + ///
+ [JsonPropertyName("draft")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.Draft Draft { get; set; } + + public const string RecordType = "app.bsky.draft.defs#draftWithId"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId); + } + + public static new DraftWithId FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new DraftWithId FromCBORObject(CBORObject obj) + { + return new DraftWithId(obj); + } + + /// + public static DraftWithId Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out DraftWithId result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftDraftWithId); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutput.g.cs new file mode 100644 index 00000000..1a705e85 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutput.g.cs @@ -0,0 +1,103 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class GetDraftsOutput : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// + public GetDraftsOutput(string? cursor = default, List drafts = default) + { + this.Cursor = cursor; + this.Drafts = drafts; + this.Type = "app.bsky.draft.getDrafts#GetDraftsOutput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public GetDraftsOutput() + { + this.Type = "app.bsky.draft.getDrafts#GetDraftsOutput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public GetDraftsOutput(CBORObject obj) + { + if (obj["cursor"] is not null) this.Cursor = obj["cursor"].AsString(); + if (obj["drafts"] is not null) this.Drafts = obj["drafts"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Draft.DraftView(n)).ToList(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the cursor. + /// + [JsonPropertyName("cursor")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? Cursor { get; set; } + + /// + /// Gets or sets the drafts. + /// + [JsonPropertyName("drafts")] + [JsonRequired] + public List Drafts { get; set; } + + public const string RecordType = "app.bsky.draft.getDrafts#GetDraftsOutput"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput); + } + + public static new GetDraftsOutput FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new GetDraftsOutput FromCBORObject(CBORObject obj) + { + return new GetDraftsOutput(obj); + } + + /// + public static GetDraftsOutput Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out GetDraftsOutput result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftGetDraftsOutput); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutputCollection.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutputCollection.g.cs new file mode 100644 index 00000000..4b20c662 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/GetDraftsOutputCollection.g.cs @@ -0,0 +1,46 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + /// + /// GetDraftsOutput Collection. + /// + public class GetDraftsOutputCollection : ATObjectCollectionBase, IAsyncEnumerable + { + + public GetDraftsOutputCollection(FishyFlip.ATProtocol atp, int? limit = 50, string? cursor = default, CancellationToken cancellationToken = default) + : base(atp) + { + this.Limit = limit; + this.Cursor = cursor; + this.CancellationToken = cancellationToken; + } + + /// + public override async Task<(IList Posts, string Cursor)> GetRecordsAsync(int? limit = null, CancellationToken? token = default) + { + token = token ?? this.CancellationToken ?? System.Threading.CancellationToken.None; + var (result, error) = await this.ATProtocol.GetDraftsAsync(limit: limit, cursor: this.Cursor, cancellationToken: token.Value!); + + this.HandleATError(error); + + if (result == null || result.Drafts == null) + { + throw new InvalidOperationException("The result or its properties cannot be null."); + } + + return (result.Drafts, result.Cursor ?? string.Empty); + } + + public static GetDraftsOutputCollection Create(FishyFlip.ATProtocol atp, int? limit = 50, string? cursor = default, CancellationToken cancellationToken = default) + { + return new(atp: atp, limit: limit, cursor: cursor, cancellationToken: cancellationToken); + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Draft/UpdateDraftInput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Draft/UpdateDraftInput.g.cs new file mode 100644 index 00000000..b02e2a48 --- /dev/null +++ b/src/FishyFlip/Lexicon/App/Bsky/Draft/UpdateDraftInput.g.cs @@ -0,0 +1,96 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.App.Bsky.Draft +{ + public partial class UpdateDraftInput : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// (app.bsky.draft.defs#draftWithId) + /// + public UpdateDraftInput(FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId draft = default) + { + this.Draft = draft; + this.Type = "app.bsky.draft.updateDraft#UpdateDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public UpdateDraftInput() + { + this.Type = "app.bsky.draft.updateDraft#UpdateDraftInput"; + } + + + /// + /// Initializes a new instance of the class. + /// + public UpdateDraftInput(CBORObject obj) + { + if (obj["draft"] is not null) this.Draft = new FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId(obj["draft"]); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the draft. + ///
(app.bsky.draft.defs#draftWithId) + ///
+ [JsonPropertyName("draft")] + [JsonRequired] + public FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId Draft { get; set; } + + public const string RecordType = "app.bsky.draft.updateDraft#UpdateDraftInput"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput); + } + + public static new UpdateDraftInput FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new UpdateDraftInput FromCBORObject(CBORObject obj) + { + return new UpdateDraftInput(obj); + } + + /// + public static UpdateDraftInput Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out UpdateDraftInput result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.AppBskyDraftUpdateDraftInput); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersOutput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersOutput.g.cs index b9c55079..4ff2627f 100644 --- a/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersOutput.g.cs +++ b/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersOutput.g.cs @@ -15,7 +15,7 @@ public partial class GetSuggestedUsersOutput : ATObject, ICBOREncodable /// /// Snowflake for this recommendation, use when submitting recommendation events. - public GetSuggestedUsersOutput(List actors = default, long? recId = default) + public GetSuggestedUsersOutput(List actors = default, string? recId = default) { this.Actors = actors; this.RecId = recId; @@ -38,7 +38,7 @@ public GetSuggestedUsersOutput() public GetSuggestedUsersOutput(CBORObject obj) { if (obj["actors"] is not null) this.Actors = obj["actors"].Values.Select(n =>new FishyFlip.Lexicon.App.Bsky.Actor.ProfileView(n)).ToList(); - if (obj["recId"] is not null) this.RecId = obj["recId"].AsInt64Value(); + if (obj["recId"] is not null) this.RecId = obj["recId"].AsString(); if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); } @@ -55,7 +55,7 @@ public GetSuggestedUsersOutput(CBORObject obj) /// [JsonPropertyName("recId")] [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] - public long? RecId { get; set; } + public string? RecId { get; set; } public const string RecordType = "app.bsky.unspecced.getSuggestedUsers#GetSuggestedUsersOutput"; diff --git a/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersSkeletonOutput.g.cs b/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersSkeletonOutput.g.cs index 17ceaecc..5a0760a3 100644 --- a/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersSkeletonOutput.g.cs +++ b/src/FishyFlip/Lexicon/App/Bsky/Unspecced/GetSuggestedUsersSkeletonOutput.g.cs @@ -15,7 +15,7 @@ public partial class GetSuggestedUsersSkeletonOutput : ATObject, ICBOREncodable< /// /// /// Snowflake for this recommendation, use when submitting recommendation events. - public GetSuggestedUsersSkeletonOutput(List dids = default, long? recId = default) + public GetSuggestedUsersSkeletonOutput(List dids = default, string? recId = default) { this.Dids = dids; this.RecId = recId; @@ -38,7 +38,7 @@ public GetSuggestedUsersSkeletonOutput() public GetSuggestedUsersSkeletonOutput(CBORObject obj) { if (obj["dids"] is not null) this.Dids = obj["dids"].Values.Select(n =>n.ToATDid()!).ToList(); - if (obj["recId"] is not null) this.RecId = obj["recId"].AsInt64Value(); + if (obj["recId"] is not null) this.RecId = obj["recId"].AsString(); if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); } @@ -55,7 +55,7 @@ public GetSuggestedUsersSkeletonOutput(CBORObject obj) /// [JsonPropertyName("recId")] [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] - public long? RecId { get; set; } + public string? RecId { get; set; } public const string RecordType = "app.bsky.unspecced.getSuggestedUsersSkeleton#GetSuggestedUsersSkeletonOutput"; diff --git a/src/FishyFlip/Lexicon/CborExtensions.g.cs b/src/FishyFlip/Lexicon/CborExtensions.g.cs index 9b2d85dc..9e492e65 100644 --- a/src/FishyFlip/Lexicon/CborExtensions.g.cs +++ b/src/FishyFlip/Lexicon/CborExtensions.g.cs @@ -162,6 +162,10 @@ public static ATObject ToATObject(this CBORObject obj, IReadOnlyList +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +using FishyFlip.Lexicon.Com.Atproto.Repo; + +namespace FishyFlip.Lexicon.Com.Germnetwork +{ + + /// + /// Extension methods for com.germnetwork. + /// + public static class ATProtoGermnetworkExtensions + { + + /// + /// Create a Declaration record. + /// + /// + /// + /// + /// + /// + /// + public static Task> CreateDeclarationAsync(this FishyFlip.ATProtocol atp, FishyFlip.Lexicon.Com.Germnetwork.Declaration record, string? rkey = default, bool? validate = default, string? swapCommit = default, CancellationToken cancellationToken = default) + { + return atp.CreateRecordAsync(atp.SessionManager.Session?.Did ?? throw new InvalidOperationException("Session did is required."), "com.germnetwork.declaration", record, rkey, validate, swapCommit, cancellationToken); + } + + /// + /// Create a Declaration record. + /// + /// + /// + /// + /// + /// + /// + /// + public static Task> CreateDeclarationAsync(this FishyFlip.ATProtocol atp, string? version, byte[]? currentKey, FishyFlip.Lexicon.Com.Germnetwork.MessageMe? messageMe = default, byte[]? keyPackage = default, List? continuityProofs = default, string? rkey = default, bool? validate = default, string? swapCommit = default, CancellationToken cancellationToken = default) + { + var record = new FishyFlip.Lexicon.Com.Germnetwork.Declaration(); + record.Version = version; + record.CurrentKey = currentKey; + record.MessageMe = messageMe; + record.KeyPackage = keyPackage; + record.ContinuityProofs = continuityProofs; + return atp.CreateRecordAsync(atp.SessionManager.Session?.Did ?? throw new InvalidOperationException("Session did is required."), "com.germnetwork.declaration", record, rkey, validate, swapCommit, cancellationToken); + } + + /// + /// Delete a Declaration record. + /// + /// + /// + /// + /// + /// + /// + public static Task> DeleteDeclarationAsync(this FishyFlip.ATProtocol atp, FishyFlip.Models.ATIdentifier repo, string rkey, string? swapRecord = default, string? swapCommit = default, CancellationToken cancellationToken = default) + { + return atp.DeleteRecordAsync(repo, "com.germnetwork.declaration", rkey, swapRecord, swapCommit, cancellationToken); + } + + /// + /// Put a Declaration record. + /// + /// + /// + /// + /// + /// + /// + /// + /// + public static Task> PutDeclarationAsync(this FishyFlip.ATProtocol atp, FishyFlip.Models.ATIdentifier repo, string rkey, FishyFlip.Lexicon.Com.Germnetwork.Declaration record, bool? validate = default, string? swapRecord = default, string? swapCommit = default, CancellationToken cancellationToken = default) + { + return atp.PutRecordAsync(repo, "com.germnetwork.declaration", rkey, record, validate, swapRecord, swapCommit, cancellationToken); + } + + /// + /// List Declaration records. + /// + /// + /// + /// + /// + /// + /// + public static Task> ListDeclarationAsync(this FishyFlip.ATProtocol atp, FishyFlip.Models.ATIdentifier repo, int? limit = 50, string? cursor = default, bool? reverse = default, CancellationToken cancellationToken = default) + { + return atp.ListRecordsAsync(repo, "com.germnetwork.declaration", limit, cursor, reverse, cancellationToken); + } + + /// + /// List Declaration records. + /// + /// + /// + /// + /// + /// + public static Task> ListDeclarationAsync(this FishyFlip.ATProtocol atp, int? limit = 50, string? cursor = default, bool? reverse = default, CancellationToken cancellationToken = default) + { + return atp.ListRecordsAsync(atp.SessionManager.Session?.Did ?? throw new InvalidOperationException("Session did is required."), "com.germnetwork.declaration", limit, cursor, reverse, cancellationToken); + } + + /// + /// Get Declaration records. + /// + /// + /// + /// + /// + /// + public static Task> GetDeclarationAsync(this FishyFlip.ATProtocol atp, FishyFlip.Models.ATIdentifier repo, string rkey, string? cid = default, CancellationToken cancellationToken = default) + { + return atp.GetRecordAsync(repo, "com.germnetwork.declaration", rkey, cid, cancellationToken); + } + + /// + /// Get Declaration records. + /// + /// + /// + /// + /// + public static Task> GetDeclarationAsync(this FishyFlip.ATProtocol atp, string rkey, string? cid = default, CancellationToken cancellationToken = default) + { + return atp.GetRecordAsync(atp.SessionManager.Session?.Did ?? throw new InvalidOperationException("Session did is required."), "com.germnetwork.declaration", rkey, cid, cancellationToken); + } + } +} + diff --git a/src/FishyFlip/Lexicon/Com/Germnetwork/Declaration.g.cs b/src/FishyFlip/Lexicon/Com/Germnetwork/Declaration.g.cs new file mode 100644 index 00000000..9fb6d386 --- /dev/null +++ b/src/FishyFlip/Lexicon/Com/Germnetwork/Declaration.g.cs @@ -0,0 +1,139 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.Com.Germnetwork +{ + /// + /// A delegate messaging id + /// + public partial class Declaration : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// + /// + /// com.germnetwork.defs#messageMe
+ /// + /// + /// + public Declaration(string? version, byte[]? currentKey, FishyFlip.Lexicon.Com.Germnetwork.MessageMe? messageMe = default, byte[]? keyPackage = default, List? continuityProofs = default) + { + this.Version = version; + this.CurrentKey = currentKey; + this.MessageMe = messageMe; + this.KeyPackage = keyPackage; + this.ContinuityProofs = continuityProofs; + this.Type = "com.germnetwork.declaration"; + } + + + /// + /// Initializes a new instance of the class. + /// + public Declaration() + { + this.Type = "com.germnetwork.declaration"; + } + + + /// + /// Initializes a new instance of the class. + /// + public Declaration(CBORObject obj) + { + if (obj["version"] is not null) this.Version = obj["version"].AsString(); + if (obj["currentKey"] is not null) this.CurrentKey = obj["currentKey"].EncodeToBytes(); + if (obj["messageMe"] is not null) this.MessageMe = new FishyFlip.Lexicon.Com.Germnetwork.MessageMe(obj["messageMe"]); + if (obj["keyPackage"] is not null) this.KeyPackage = obj["keyPackage"].EncodeToBytes(); + if (obj["continuityProofs"] is not null) this.ContinuityProofs = obj["continuityProofs"].Values.Select(n =>n.EncodeToBytes()).ToList(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the version. + /// + [JsonPropertyName("version")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? Version { get; set; } + + /// + /// Gets or sets the currentKey. + /// + [JsonPropertyName("currentKey")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public byte[]? CurrentKey { get; set; } + + /// + /// Gets or sets the messageMe. + /// com.germnetwork.defs#messageMe
+ ///
+ [JsonPropertyName("messageMe")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public FishyFlip.Lexicon.Com.Germnetwork.MessageMe? MessageMe { get; set; } + + /// + /// Gets or sets the keyPackage. + /// + [JsonPropertyName("keyPackage")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public byte[]? KeyPackage { get; set; } + + /// + /// Gets or sets the continuityProofs. + /// + [JsonPropertyName("continuityProofs")] + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public List? ContinuityProofs { get; set; } + + public const string RecordType = "com.germnetwork.declaration"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration); + } + + public static new Declaration FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new Declaration FromCBORObject(CBORObject obj) + { + return new Declaration(obj); + } + + /// + public static Declaration Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out Declaration result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkDeclaration); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/Com/Germnetwork/MessageMe.g.cs b/src/FishyFlip/Lexicon/Com/Germnetwork/MessageMe.g.cs new file mode 100644 index 00000000..a6eaffc9 --- /dev/null +++ b/src/FishyFlip/Lexicon/Com/Germnetwork/MessageMe.g.cs @@ -0,0 +1,110 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon.Com.Germnetwork +{ + public partial class MessageMe : ATObject, ICBOREncodable, IJsonEncodable, IParsable + { + + /// + /// Initializes a new instance of the class. + /// + /// + /// + ///
Known Values:
+ /// usersIFollow
+ /// everyone
+ /// + public MessageMe(string messageMeUrl = default, string showButtonTo = default) + { + this.MessageMeUrl = messageMeUrl; + this.ShowButtonTo = showButtonTo; + this.Type = "com.germnetwork.declaration#messageMe"; + } + + + /// + /// Initializes a new instance of the class. + /// + public MessageMe() + { + this.Type = "com.germnetwork.declaration#messageMe"; + } + + + /// + /// Initializes a new instance of the class. + /// + public MessageMe(CBORObject obj) + { + if (obj["messageMeUrl"] is not null) this.MessageMeUrl = obj["messageMeUrl"].AsString(); + if (obj["showButtonTo"] is not null) this.ShowButtonTo = obj["showButtonTo"].AsString(); + if (obj["$type"] is not null) this.Type = obj["$type"].AsString(); + } + + /// + /// Gets or sets the messageMeUrl. + /// + [JsonPropertyName("messageMeUrl")] + [JsonRequired] + public string MessageMeUrl { get; set; } + + /// + /// Gets or sets the showButtonTo. + ///
Known Values:
+ /// usersIFollow
+ /// everyone
+ ///
+ [JsonPropertyName("showButtonTo")] + [JsonRequired] + public string ShowButtonTo { get; set; } + + public const string RecordType = "com.germnetwork.declaration#messageMe"; + + public override string ToJson() + { + return JsonSerializer.Serialize(this, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe); + } + + public override byte[] ToUtf8Json() + { + return JsonSerializer.SerializeToUtf8Bytes(this, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe); + } + + public static new MessageMe FromJson(string json) + { + return JsonSerializer.Deserialize(json, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe)!; + } + + /// + public override CBORObject ToCBORObject() + { + using var jsonStream = new MemoryStream(Encoding.UTF8.GetBytes(this.ToJson())); + return CBORObject.ReadJSON(jsonStream); + } + + /// + public static new MessageMe FromCBORObject(CBORObject obj) + { + return new MessageMe(obj); + } + + /// + public static MessageMe Parse(string s, IFormatProvider? provider) + { + return JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe)!; + } + + /// + public static bool TryParse(string? s, IFormatProvider? provider, out MessageMe result) + { + result = JsonSerializer.Deserialize(s, (JsonTypeInfo)SourceGenerationContext.Default.ComGermnetworkMessageMe); + return result != null; + } + } +} + diff --git a/src/FishyFlip/Lexicon/Errors/DraftLimitReachedError.g.cs b/src/FishyFlip/Lexicon/Errors/DraftLimitReachedError.g.cs new file mode 100644 index 00000000..ff4a3b8e --- /dev/null +++ b/src/FishyFlip/Lexicon/Errors/DraftLimitReachedError.g.cs @@ -0,0 +1,20 @@ +// +// This file was generated by FFSourceGen. +// Do not modify this file. + +#nullable enable annotations +#nullable disable warnings + +namespace FishyFlip.Lexicon +{ + /// + /// FishyFlip ATError for DraftLimitReached. + /// + public class DraftLimitReachedError : FishyFlip.Models.ATError + { + public DraftLimitReachedError(int statusCode, ErrorDetail detail) : base(statusCode, detail) + { + } + } +} + diff --git a/src/FishyFlip/Lexicon/SourceGenerationContext.g.cs b/src/FishyFlip/Lexicon/SourceGenerationContext.g.cs index c794a06a..71d10d31 100644 --- a/src/FishyFlip/Lexicon/SourceGenerationContext.g.cs +++ b/src/FishyFlip/Lexicon/SourceGenerationContext.g.cs @@ -159,6 +159,10 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListComAtprotoServerCreateAppPasswordInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Bookmark.CreateBookmarkInput), TypeInfoPropertyName = "AppBskyBookmarkCreateBookmarkInput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyBookmarkCreateBookmarkInput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.CreateDraftInput), TypeInfoPropertyName = "AppBskyDraftCreateDraftInput")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftCreateDraftInput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.CreateDraftOutput), TypeInfoPropertyName = "AppBskyDraftCreateDraftOutput")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftCreateDraftOutput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Atproto.Server.CreateInviteCodeInput), TypeInfoPropertyName = "ComAtprotoServerCreateInviteCodeInput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListComAtprotoServerCreateInviteCodeInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Atproto.Server.CreateInviteCodeOutput), TypeInfoPropertyName = "ComAtprotoServerCreateInviteCodeOutput")] @@ -189,6 +193,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyNotificationDeclaration")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Actor.Declaration), TypeInfoPropertyName = "ChatBskyActorDeclaration")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyActorDeclaration")] + [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Germnetwork.Declaration), TypeInfoPropertyName = "ComGermnetworkDeclaration")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListComGermnetworkDeclaration")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.DeclaredAgePref), TypeInfoPropertyName = "AppBskyActorDeclaredAgePref")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorDeclaredAgePref")] [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Atproto.Repo.Delete), TypeInfoPropertyName = "ComAtprotoRepoDelete")] @@ -203,6 +209,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyBookmarkDeleteBookmarkInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.DeletedMessageView), TypeInfoPropertyName = "ChatBskyConvoDeletedMessageView")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoDeletedMessageView")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DeleteDraftInput), TypeInfoPropertyName = "AppBskyDraftDeleteDraftInput")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDeleteDraftInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Tools.Ozone.Team.DeleteMemberInput), TypeInfoPropertyName = "ToolsOzoneTeamDeleteMemberInput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListToolsOzoneTeamDeleteMemberInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.DeleteMessageForSelfInput), TypeInfoPropertyName = "ChatBskyConvoDeleteMessageForSelfInput")] @@ -239,6 +247,26 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyContactDismissMatchInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Contact.DismissMatchOutput), TypeInfoPropertyName = "AppBskyContactDismissMatchOutput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyContactDismissMatchOutput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.Draft), TypeInfoPropertyName = "AppBskyDraftDraft")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraft")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedCaption), TypeInfoPropertyName = "AppBskyDraftDraftEmbedCaption")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedCaption")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedExternal), TypeInfoPropertyName = "AppBskyDraftDraftEmbedExternal")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedExternal")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedImage), TypeInfoPropertyName = "AppBskyDraftDraftEmbedImage")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedImage")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedLocalRef), TypeInfoPropertyName = "AppBskyDraftDraftEmbedLocalRef")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedLocalRef")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedRecord), TypeInfoPropertyName = "AppBskyDraftDraftEmbedRecord")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedRecord")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftEmbedVideo), TypeInfoPropertyName = "AppBskyDraftDraftEmbedVideo")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftEmbedVideo")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftPost), TypeInfoPropertyName = "AppBskyDraftDraftPost")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftPost")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftView), TypeInfoPropertyName = "AppBskyDraftDraftView")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftView")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.DraftWithId), TypeInfoPropertyName = "AppBskyDraftDraftWithId")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftDraftWithId")] [JsonSerializable(typeof(FishyFlip.Lexicon.Tools.Ozone.Hosting.EmailConfirmed), TypeInfoPropertyName = "ToolsOzoneHostingEmailConfirmed")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListToolsOzoneHostingEmailConfirmed")] [JsonSerializable(typeof(FishyFlip.Lexicon.Tools.Ozone.Hosting.EmailUpdated), TypeInfoPropertyName = "ToolsOzoneHostingEmailUpdated")] @@ -327,6 +355,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoGetConvoForMembersOutput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.GetConvoOutput), TypeInfoPropertyName = "ChatBskyConvoGetConvoOutput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoGetConvoOutput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.GetDraftsOutput), TypeInfoPropertyName = "AppBskyDraftGetDraftsOutput")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftGetDraftsOutput")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Feed.GetFeedGeneratorOutput), TypeInfoPropertyName = "AppBskyFeedGetFeedGeneratorOutput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyFeedGetFeedGeneratorOutput")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Feed.GetFeedGeneratorsOutput), TypeInfoPropertyName = "AppBskyFeedGetFeedGeneratorsOutput")] @@ -595,6 +625,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyGraphListViewerState")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Graph.ListWithMembership), TypeInfoPropertyName = "AppBskyGraphListWithMembership")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyGraphListWithMembership")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.LiveEventPreferences), TypeInfoPropertyName = "AppBskyActorLiveEventPreferences")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorLiveEventPreferences")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Unspecced.LiveNowConfig), TypeInfoPropertyName = "AppBskyUnspeccedLiveNowConfig")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyUnspeccedLiveNowConfig")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.LogAcceptConvo), TypeInfoPropertyName = "ChatBskyConvoLogAcceptConvo")] @@ -629,6 +661,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoMessageAndReactionView")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.MessageInput), TypeInfoPropertyName = "ChatBskyConvoMessageInput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoMessageInput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Germnetwork.MessageMe), TypeInfoPropertyName = "ComGermnetworkMessageMe")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListComGermnetworkMessageMe")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.MessageRef), TypeInfoPropertyName = "ChatBskyConvoMessageRef")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoMessageRef")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.MessageView), TypeInfoPropertyName = "ChatBskyConvoMessageView")] @@ -731,6 +765,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorProfileAssociatedActivitySubscription")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedChat), TypeInfoPropertyName = "AppBskyActorProfileAssociatedChat")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorProfileAssociatedChat")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.ProfileAssociatedGerm), TypeInfoPropertyName = "AppBskyActorProfileAssociatedGerm")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorProfileAssociatedGerm")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.ProfileView), TypeInfoPropertyName = "AppBskyActorProfileView")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyActorProfileView")] [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Actor.ProfileViewBasic), TypeInfoPropertyName = "AppBskyActorProfileViewBasic")] @@ -1077,6 +1113,8 @@ namespace FishyFlip.Lexicon [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoUpdateAllReadInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Chat.Bsky.Convo.UpdateAllReadOutput), TypeInfoPropertyName = "ChatBskyConvoUpdateAllReadOutput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListChatBskyConvoUpdateAllReadOutput")] + [JsonSerializable(typeof(FishyFlip.Lexicon.App.Bsky.Draft.UpdateDraftInput), TypeInfoPropertyName = "AppBskyDraftUpdateDraftInput")] + [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListAppBskyDraftUpdateDraftInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Atproto.Server.UpdateEmailInput), TypeInfoPropertyName = "ComAtprotoServerUpdateEmailInput")] [JsonSerializable(typeof(List), TypeInfoPropertyName = "ListComAtprotoServerUpdateEmailInput")] [JsonSerializable(typeof(FishyFlip.Lexicon.Com.Atproto.Identity.UpdateHandleInput), TypeInfoPropertyName = "ComAtprotoIdentityUpdateHandleInput")]