Removed Rectangle from LocationContainer

mapped-ids-then-whole-percentages-to-location-container

save-extracted-face

save-extracted-java-script-object-notation
This commit is contained in:
2025-07-06 10:39:21 -07:00
parent aa8de2b985
commit e49290fb44
9 changed files with 216 additions and 148 deletions

View File

@ -4,7 +4,6 @@ using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public record ExifDirectory(AviDirectory[] AviDirectories,
object? Encoding,
ExifDirectoryBase[] ExifBaseDirectories,
FileMetadataDirectory[] FileMetadataDirectories,
FilePath FilePath,
@ -28,25 +27,6 @@ public record ExifDirectory(AviDirectory[] AviDirectories,
return result;
}
public static ExifDirectory Get(object encoding, ExifDirectory e) =>
new(e.AviDirectories,
encoding,
e.ExifBaseDirectories,
e.FileMetadataDirectories,
e.FilePath,
e.GifHeaderDirectories,
e.GpsDirectories,
e.Height,
e.JpegDirectories,
e.MakernoteDirectories,
e.PersonKeyFormattedAndKeyTicksAndDisplayDirectoryName,
e.PhotoshopDirectories,
e.PngDirectories,
e.QuickTimeMovieHeaderDirectories,
e.QuickTimeTrackHeaderDirectories,
e.WebPDirectories,
e.Width);
}
[JsonSourceGenerationOptions(WriteIndented = true, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull)]

View File

@ -1,3 +1,6 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public record LocationContainer(DateOnly? CreationDateOnly,
@ -11,6 +14,21 @@ public record LocationContainer(DateOnly? CreationDateOnly,
int? WholePercentages)
{
public string GetWithoutEncoding()
{
string result;
WithoutEncoding withoutEncoding = new(CreationDateOnly: CreationDateOnly,
ExifDirectory: ExifDirectory,
FaceFile: FaceFile,
FilePath: FilePath,
LengthPermyriad: LengthPermyriad,
LengthSource: LengthSource,
PersonKeyFormattedAndKeyTicksAndDisplayDirectoryName: PersonKeyFormattedAndKeyTicksAndDisplayDirectoryName,
WholePercentages: WholePercentages);
result = JsonSerializer.Serialize(withoutEncoding, WithoutEncodingSourceGenerationContext.Default.WithoutEncoding);
return result;
}
public static LocationContainer Get(LocationContainer locationContainer, object? encoding)
{
LocationContainer result;
@ -41,4 +59,19 @@ public record LocationContainer(DateOnly? CreationDateOnly,
return result;
}
}
internal record WithoutEncoding(DateOnly? CreationDateOnly,
ExifDirectory? ExifDirectory,
FaceFile? FaceFile,
FilePath FilePath,
int? LengthPermyriad,
FilePath? LengthSource,
PersonKeyFormattedAndKeyTicksAndDisplayDirectoryName? PersonKeyFormattedAndKeyTicksAndDisplayDirectoryName,
int? WholePercentages);
[JsonSourceGenerationOptions(WriteIndented = true, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull)]
[JsonSerializable(typeof(WithoutEncoding))]
internal partial class WithoutEncodingSourceGenerationContext : JsonSerializerContext
{
}