From 9d90e21684eeaab3ac9f89a1d8013168a1d577d7 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Thu, 30 Apr 2026 00:37:15 +1000 Subject: v0.13a --- Feed.cs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Feed.cs (limited to 'Feed.cs') diff --git a/Feed.cs b/Feed.cs new file mode 100644 index 0000000..11d877a --- /dev/null +++ b/Feed.cs @@ -0,0 +1,28 @@ +using System.Text.Json.Serialization; + +namespace HyperBooru.ApiModels; + +public enum SortOrder { + ObjectId, + LastWriteTime, + Random, +} + +[JsonPolymorphic] +[JsonDerivedType(typeof(FeedSearchRequest), "FeedSearchRequest")] +[JsonDerivedType(typeof(FeedTagRequest), "FeedTagRequest")] +public record FeedRequest { + public bool SelectIngest { get; init; } + public bool IncludeNsfw { get; init; } + public Media? Key { get; init; } = null; + public int Count { get; init; } = 50; + public SortOrder SortOrder { get; init; } = SortOrder.ObjectId; +} + +public record FeedSearchRequest : FeedRequest { + public string Query { get; init; } +} + +public record FeedTagRequest : FeedRequest { + public Guid TagId { get; init; } +} -- cgit v1.3