Add SceneSearchAdminModels.cs

This commit is contained in:
Sleeps
2026-10-06 17:56:30 +01:00
parent 20b153df00
commit b673e72bde
@@ -0,0 +1,90 @@
using System.Text.Json.Serialization;
namespace Jellyfin.Plugin.SceneSearch;
public sealed class SceneSearchLibraryListResponse
{
[JsonPropertyName("libraries")]
public List<SceneSearchLibrary> Libraries { get; set; } = [];
}
public sealed class SceneSearchLibrary
{
[JsonPropertyName("id")]
public string Id { get; set; } = string.Empty;
[JsonPropertyName("name")]
public string Name { get; set; } = string.Empty;
[JsonPropertyName("indexed_items")]
public int IndexedItems { get; set; }
[JsonPropertyName("indexed_frames")]
public int IndexedFrames { get; set; }
}
public sealed class SceneSearchIndexRequest
{
[JsonPropertyName("library_ids")]
public List<string> LibraryIds { get; set; } = [];
[JsonPropertyName("force")]
public bool Force { get; set; }
}
public sealed class SceneSearchIndexStatus
{
[JsonPropertyName("running")]
public bool Running { get; set; }
[JsonPropertyName("stage")]
public string Stage { get; set; } = "idle";
[JsonPropertyName("started_at")]
public string? StartedAt { get; set; }
[JsonPropertyName("finished_at")]
public string? FinishedAt { get; set; }
[JsonPropertyName("error")]
public string? Error { get; set; }
[JsonPropertyName("library")]
public string? Library { get; set; }
[JsonPropertyName("item")]
public string? Item { get; set; }
[JsonPropertyName("library_number")]
public int? LibraryNumber { get; set; }
[JsonPropertyName("library_total")]
public int? LibraryTotal { get; set; }
[JsonPropertyName("item_number")]
public int? ItemNumber { get; set; }
[JsonPropertyName("item_total")]
public int? ItemTotal { get; set; }
[JsonPropertyName("frames_processed")]
public int? FramesProcessed { get; set; }
[JsonPropertyName("frames_total")]
public int? FramesTotal { get; set; }
[JsonPropertyName("documents_processed")]
public int? DocumentsProcessed { get; set; }
[JsonPropertyName("indexed")]
public int? Indexed { get; set; }
[JsonPropertyName("skipped")]
public int? Skipped { get; set; }
[JsonPropertyName("failed")]
public int? Failed { get; set; }
[JsonPropertyName("pruned")]
public int? Pruned { get; set; }
}