New Models Only
This commit is contained in:
parent
61d1ae71f6
commit
3b63279545
5
Instance/.vscode/mklink.md
vendored
Normal file
5
Instance/.vscode/mklink.md
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
# mklink
|
||||||
|
|
||||||
|
```bash Sat Aug 17 2024 15:24:10 GMT-0700 (Mountain Standard Time)
|
||||||
|
mklink /J "L:\Git\View-by-Distance-MKLink-Console\Instance\.vscode\.UserSecrets" "C:\Users\mikep\AppData\Roaming\Microsoft\UserSecrets\2999dda1-5329-4d9f-9d68-cccfabe0e47f"
|
||||||
|
```
|
19
Shared/Models/Aggregations.cs
Normal file
19
Shared/Models/Aggregations.cs
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record Aggregations(
|
||||||
|
[property: JsonPropertyName("allPeople")] IReadOnlyList<AllPerson> AllPeople,
|
||||||
|
[property: JsonPropertyName("clusterId")] IReadOnlyList<ClusterId> ClusterId,
|
||||||
|
[property: JsonPropertyName("location")] IReadOnlyList<LocationAmazon> Location,
|
||||||
|
[property: JsonPropertyName("people")] IReadOnlyList<PersonAmazon> People,
|
||||||
|
[property: JsonPropertyName("things")] IReadOnlyList<Thing> Things,
|
||||||
|
[property: JsonPropertyName("time")] IReadOnlyList<Time> Time,
|
||||||
|
[property: JsonPropertyName("type")] IReadOnlyList<Type> Type
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Aggregations))]
|
||||||
|
public partial class AggregationsGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/AllPerson.cs
Normal file
15
Shared/Models/AllPerson.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record AllPerson(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(AllPerson))]
|
||||||
|
public partial class AllPersonGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/ClusterId.cs
Normal file
15
Shared/Models/ClusterId.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record ClusterId(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(ClusterId))]
|
||||||
|
public partial class ClusterIdGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
20
Shared/Models/ContentProperties.cs
Normal file
20
Shared/Models/ContentProperties.cs
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record ContentProperties(
|
||||||
|
[property: JsonPropertyName("contentDate")] DateTime ContentDate,
|
||||||
|
[property: JsonPropertyName("contentSignatures")] IReadOnlyList<ContentSignature> ContentSignatures,
|
||||||
|
[property: JsonPropertyName("contentType")] string ContentType,
|
||||||
|
[property: JsonPropertyName("extension")] string Extension,
|
||||||
|
[property: JsonPropertyName("image")] ImageAmazon Image,
|
||||||
|
[property: JsonPropertyName("md5")] string Md5,
|
||||||
|
[property: JsonPropertyName("size")] int Size,
|
||||||
|
[property: JsonPropertyName("version")] int Version
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(ContentProperties))]
|
||||||
|
public partial class ContentPropertiesGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
14
Shared/Models/ContentSignature.cs
Normal file
14
Shared/Models/ContentSignature.cs
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record ContentSignature(
|
||||||
|
[property: JsonPropertyName("contentSignature")] string Value,
|
||||||
|
[property: JsonPropertyName("contentSignatureType")] string ContentSignatureType
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(ContentSignature))]
|
||||||
|
public partial class ContentSignatureGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
45
Shared/Models/Datum.cs
Normal file
45
Shared/Models/Datum.cs
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record Datum(
|
||||||
|
[property: JsonPropertyName("accessRuleIds")] IReadOnlyList<object> AccessRuleIds,
|
||||||
|
[property: JsonPropertyName("childAssetTypeInfo")] IReadOnlyList<object> ChildAssetTypeInfo,
|
||||||
|
[property: JsonPropertyName("contentProperties")] ContentProperties ContentProperties,
|
||||||
|
[property: JsonPropertyName("createdBy")] string CreatedBy,
|
||||||
|
[property: JsonPropertyName("createdDate")] DateTime CreatedDate,
|
||||||
|
[property: JsonPropertyName("eTagResponse")] string ETagResponse,
|
||||||
|
[property: JsonPropertyName("groupPermissions")] IReadOnlyList<object> GroupPermissions,
|
||||||
|
[property: JsonPropertyName("id")] string Id,
|
||||||
|
[property: JsonPropertyName("isRoot")] bool IsRoot,
|
||||||
|
[property: JsonPropertyName("isShared")] bool IsShared,
|
||||||
|
[property: JsonPropertyName("keywords")] IReadOnlyList<object> Keywords,
|
||||||
|
[property: JsonPropertyName("kind")] string Kind,
|
||||||
|
[property: JsonPropertyName("labels")] IReadOnlyList<object> Labels,
|
||||||
|
[property: JsonPropertyName("modifiedDate")] DateTime ModifiedDate,
|
||||||
|
[property: JsonPropertyName("name")] string Name,
|
||||||
|
[property: JsonPropertyName("ownerId")] string OwnerId,
|
||||||
|
[property: JsonPropertyName("parentMap")] ParentMap ParentMap,
|
||||||
|
[property: JsonPropertyName("parents")] IReadOnlyList<string> Parents,
|
||||||
|
[property: JsonPropertyName("protectedFolder")] bool ProtectedFolder,
|
||||||
|
[property: JsonPropertyName("restricted")] bool Restricted,
|
||||||
|
[property: JsonPropertyName("status")] string Status,
|
||||||
|
[property: JsonPropertyName("subKinds")] IReadOnlyList<object> SubKinds,
|
||||||
|
[property: JsonPropertyName("transforms")] IReadOnlyList<string> Transforms,
|
||||||
|
[property: JsonPropertyName("version")] int Version,
|
||||||
|
[property: JsonPropertyName("xAccntParentMap")] XAccntParentMap XAccntParentMap,
|
||||||
|
[property: JsonPropertyName("xAccntParents")] IReadOnlyList<object> XAccntParents,
|
||||||
|
[property: JsonPropertyName("match")] bool? Match
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Datum))]
|
||||||
|
public partial class DatumGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Dictionary<string, Datum>))]
|
||||||
|
public partial class DictionaryDatumGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
19
Shared/Models/FaceFile.cs
Normal file
19
Shared/Models/FaceFile.cs
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record FaceFile(int? AreaPermyriad,
|
||||||
|
int? ConfidencePercent,
|
||||||
|
DateTime DateTime,
|
||||||
|
string? DMS,
|
||||||
|
Dictionary<Stateless.FacePart, FacePoint[]>? FaceParts,
|
||||||
|
Location? Location,
|
||||||
|
string? Maker,
|
||||||
|
string? Model,
|
||||||
|
OutputResolution? OutputResolution);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = false)]
|
||||||
|
[JsonSerializable(typeof(FaceFile))]
|
||||||
|
public partial class FaceFileGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
36
Shared/Models/ImageAmazon.cs
Normal file
36
Shared/Models/ImageAmazon.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record ImageAmazon(
|
||||||
|
[property: JsonPropertyName("colorSpace")] string ColorSpace,
|
||||||
|
[property: JsonPropertyName("dateTime")] DateTime DateTime,
|
||||||
|
[property: JsonPropertyName("dateTimeDigitized")] DateTime DateTimeDigitized,
|
||||||
|
[property: JsonPropertyName("dateTimeOriginal")] DateTime DateTimeOriginal,
|
||||||
|
[property: JsonPropertyName("exposureMode")] string ExposureMode,
|
||||||
|
[property: JsonPropertyName("exposureProgram")] string ExposureProgram,
|
||||||
|
[property: JsonPropertyName("exposureTime")] string ExposureTime,
|
||||||
|
[property: JsonPropertyName("flash")] string Flash,
|
||||||
|
[property: JsonPropertyName("focalLength")] string FocalLength,
|
||||||
|
[property: JsonPropertyName("height")] int Height,
|
||||||
|
[property: JsonPropertyName("make")] string Make,
|
||||||
|
[property: JsonPropertyName("meteringMode")] string MeteringMode,
|
||||||
|
[property: JsonPropertyName("model")] string Model,
|
||||||
|
[property: JsonPropertyName("orientation")] string Orientation,
|
||||||
|
[property: JsonPropertyName("resolutionUnit")] string ResolutionUnit,
|
||||||
|
[property: JsonPropertyName("sensingMethod")] string SensingMethod,
|
||||||
|
[property: JsonPropertyName("sharpness")] string Sharpness,
|
||||||
|
[property: JsonPropertyName("software")] string Software,
|
||||||
|
[property: JsonPropertyName("subSecTime")] string SubSecTime,
|
||||||
|
[property: JsonPropertyName("subSecTimeDigitized")] string SubSecTimeDigitized,
|
||||||
|
[property: JsonPropertyName("subSecTimeOriginal")] string SubSecTimeOriginal,
|
||||||
|
[property: JsonPropertyName("whiteBalance")] string WhiteBalance,
|
||||||
|
[property: JsonPropertyName("width")] int Width,
|
||||||
|
[property: JsonPropertyName("apertureValue")] string ApertureValue
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(ImageAmazon))]
|
||||||
|
public partial class ImageAmazonGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
33
Shared/Models/ImmichAsset.cs
Normal file
33
Shared/Models/ImmichAsset.cs
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
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
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/LocationAmazon.cs
Normal file
15
Shared/Models/LocationAmazon.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record LocationAmazon(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(LocationAmazon))]
|
||||||
|
public partial class LocationAmazonGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
17
Shared/Models/LocationInfo.cs
Normal file
17
Shared/Models/LocationInfo.cs
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record LocationInfo(
|
||||||
|
[property: JsonPropertyName("city")] string City,
|
||||||
|
[property: JsonPropertyName("country")] string Country,
|
||||||
|
[property: JsonPropertyName("countryIso3Code")] string CountryIso3Code,
|
||||||
|
[property: JsonPropertyName("state")] string State,
|
||||||
|
[property: JsonPropertyName("stateCode")] string StateCode
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(LocationInfo))]
|
||||||
|
public partial class LocationInfoGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
13
Shared/Models/ParentMap.cs
Normal file
13
Shared/Models/ParentMap.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record ParentMap(
|
||||||
|
[property: JsonPropertyName("FOLDER")] IReadOnlyList<string> FOLDER
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(ParentMap))]
|
||||||
|
public partial class ParentMapGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/PersonAmazon.cs
Normal file
15
Shared/Models/PersonAmazon.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record PersonAmazon(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(PersonAmazon))]
|
||||||
|
public partial class PersonAmazonGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/RootAmazon.cs
Normal file
15
Shared/Models/RootAmazon.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record RootAmazon(
|
||||||
|
[property: JsonPropertyName("aggregations")] Aggregations Aggregations,
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("data")] IReadOnlyList<Datum> Data
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(RootAmazon))]
|
||||||
|
public partial class RootAmazonGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
16
Shared/Models/SearchData.cs
Normal file
16
Shared/Models/SearchData.cs
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record SearchData(
|
||||||
|
[property: JsonPropertyName("clusterName")] string ClusterName,
|
||||||
|
[property: JsonPropertyName("locationId")] string LocationId,
|
||||||
|
[property: JsonPropertyName("locationInfo")] LocationInfo LocationInfo,
|
||||||
|
[property: JsonPropertyName("thingId")] string ThingId
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(SearchData))]
|
||||||
|
public partial class SearchDataGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/Thing.cs
Normal file
15
Shared/Models/Thing.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record Thing(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Thing))]
|
||||||
|
public partial class ThingGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/Time.cs
Normal file
15
Shared/Models/Time.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record Time(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Time))]
|
||||||
|
public partial class TimeGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
15
Shared/Models/Type.cs
Normal file
15
Shared/Models/Type.cs
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record Type(
|
||||||
|
[property: JsonPropertyName("count")] int Count,
|
||||||
|
[property: JsonPropertyName("match")] string Match,
|
||||||
|
[property: JsonPropertyName("searchData")] SearchData SearchData
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(Type))]
|
||||||
|
public partial class TypeGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
13
Shared/Models/XAccntParentMap.cs
Normal file
13
Shared/Models/XAccntParentMap.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
|
namespace View_by_Distance.Shared.Models;
|
||||||
|
|
||||||
|
public record XAccntParentMap(
|
||||||
|
|
||||||
|
);
|
||||||
|
|
||||||
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
||||||
|
[JsonSerializable(typeof(XAccntParentMap))]
|
||||||
|
public partial class XAccntParentMapGenerationContext : JsonSerializerContext
|
||||||
|
{
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user