33 lines
1.4 KiB
C#
33 lines
1.4 KiB
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace View_by_Distance.Shared.Models;
|
|
|
|
public record ImmichAsset([property: JsonPropertyName("id")] string Id,
|
|
[property: JsonPropertyName("deviceAssetId")] string DeviceAssetId,
|
|
[property: JsonPropertyName("originalPath")] string OriginalPath,
|
|
[property: JsonPropertyName("previewPath")] string PreviewPath,
|
|
[property: JsonPropertyName("isFavorite")] bool IsFavorite,
|
|
[property: JsonPropertyName("thumbnailPath")] string ThumbnailPath,
|
|
[property: JsonPropertyName("thumbhash")] string Thumbhash)
|
|
{
|
|
|
|
public override string ToString()
|
|
{
|
|
string result = JsonSerializer.Serialize(this, ImmichAssetSourceGenerationContext.Default.ImmichAsset);
|
|
return result;
|
|
}
|
|
|
|
}
|
|
|
|
[JsonSourceGenerationOptions(WriteIndented = true, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull)]
|
|
[JsonSerializable(typeof(ImmichAsset))]
|
|
public partial class ImmichAssetSourceGenerationContext : JsonSerializerContext
|
|
{
|
|
}
|
|
|
|
[JsonSourceGenerationOptions(WriteIndented = true, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull)]
|
|
[JsonSerializable(typeof(ImmichAsset[]))]
|
|
public partial class ImmichAssetCollectionSourceGenerationContext : JsonSerializerContext
|
|
{
|
|
} |