This commit is contained in:
2022-05-08 12:28:50 -07:00
commit 4a3e24236f
313 changed files with 22395 additions and 0 deletions

5
Shared/.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,5 @@
{
"cSpell.words": [
"Phares"
]
}

View File

27
Shared/Models/Console.cs Normal file
View File

@ -0,0 +1,27 @@
using System.Text.Json;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class Console : Properties.IConsole, IConsole
{
ConsoleKey IConsole.ReadKey()
{
ConsoleKey result = System.Console.ReadKey().Key;
return result;
}
string? IConsole.ReadLine()
{
string? result = System.Console.ReadLine();
return result;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,46 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class DirectoryFileSystem : Models.FileSystem, Properties.IDirectoryFileSystem, IDirectoryFileSystem
{
// protected new string _ClassName;
// protected new string _DataDisplayFileName;
// protected new string _DataFullFileName;
// protected new string _Display;
// protected new DateTime _LastModified;
// public new string ClassName => _ClassName;
// public new string DataDisplayFileName => _DataDisplayFileName;
// public new string DataFullFileName => _DataFullFileName;
// public new string Display => _Display;
// public new DateTime LastModified => _LastModified;
[JsonConstructor]
public DirectoryFileSystem(string className, string dataDisplayFileName, string dataFullFileName, string display, DateTime lastModified) : base(className, dataDisplayFileName, dataFullFileName, display, lastModified)
{
_ClassName = className;
_DataDisplayFileName = dataDisplayFileName;
_DataFullFileName = dataFullFileName;
_Display = display;
_LastModified = lastModified;
}
internal DirectoryFileSystem(DirectoryInfo directoryInfo) : base(string.Empty, string.Empty, string.Empty, string.Empty, DateTime.MinValue)
{
_ClassName = "directory";
_DataDisplayFileName = directoryInfo.Name;
_DataFullFileName = directoryInfo.FullName;
_Display = directoryInfo.Name;
_LastModified = directoryInfo.LastWriteTime;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

57
Shared/Models/Face.cs Normal file
View File

@ -0,0 +1,57 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class Face : Properties.IFace, IFace
{
protected double? _Α;
protected DateTime _DateTime;
protected Models.FaceEncoding _FaceEncoding;
protected Dictionary<string, Models.FacePoint[]> _FaceLandmarks;
protected Models.OutputResolution _OutputResolution;
protected Models.Location _Location;
protected int? _LocationIndex;
protected bool _Populated;
protected string _RelativePath;
public double? α => _Α;
public DateTime DateTime => _DateTime;
public Models.FaceEncoding FaceEncoding => _FaceEncoding;
public Dictionary<string, Models.FacePoint[]> FaceLandmarks => _FaceLandmarks;
public Models.OutputResolution OutputResolution => _OutputResolution;
public Models.Location Location => _Location;
public int? LocationIndex => _LocationIndex;
public bool Populated => _Populated;
public string RelativePath => _RelativePath;
[JsonConstructor]
public Face(double? α, DateTime dateTime, View_by_Distance.Shared.Models.FaceEncoding faceEncoding, Dictionary<string, View_by_Distance.Shared.Models.FacePoint[]> faceLandmarks, Models.OutputResolution outputResolution, View_by_Distance.Shared.Models.Location location, int? locationIndex, bool populated, string relativePath)
{
_Α = α;
_DateTime = dateTime;
_FaceEncoding = faceEncoding;
_FaceLandmarks = faceLandmarks;
_Location = location;
_LocationIndex = locationIndex;
_OutputResolution = outputResolution;
_Populated = populated;
_RelativePath = relativePath;
}
double Stateless.Methods.IFace.TestStatic_Getα(int x1, int x2, int y1, int y2) => throw new NotImplementedException();
string Stateless.Methods.IFace.TestStatic_GetJson(string jsonFileFullName) => throw new NotImplementedException();
Face Stateless.Methods.IFace.TestStatic_GetFace(string jsonFileFullName) => throw new NotImplementedException();
Face[] Stateless.Methods.IFace.TestStatic_GetFaces(string jsonFileFullName) => throw new NotImplementedException();
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,28 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class FaceEncoding : Properties.IFaceEncoding, IFaceEncoding
{
protected double[] _RawEncoding;
protected int _Size;
public double[] RawEncoding => _RawEncoding;
public int Size => _Size;
[JsonConstructor]
public FaceEncoding(double[] rawEncoding, int size)
{
_RawEncoding = rawEncoding;
_Size = size;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,226 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class FaceFileSystem : Models.FileSystem, Properties.IFaceFileSystem, IFaceFileSystem
{
// protected new string _ClassName;
protected string _Confidence;
// protected new string _DataDisplayFileName;
// protected new string _DataFullFileName;
// protected new string _Display;
protected int? _FaceBottom;
protected string _FaceFullFileName;
protected int? _FaceHeight;
protected int? _FaceLeft;
protected string _FaceRelativePath;
protected int? _FaceRight;
protected int? _FaceTop;
protected int? _FaceWidth;
protected int _ImageHeight;
protected int _ImageWidth;
// protected new DateTime _LastModified;
protected string _LocationDisplayIndex;
protected int? _LocationIndex;
protected bool? _Populated;
protected string _RelativePath;
protected string _SourceFullFileName;
protected string _SourceRelativePath;
protected long? _SourceSize;
// public new string ClassName => _ClassName;
public string Confidence => _Confidence;
// public new string DataDisplayFileName => _DataDisplayFileName;
// public new string DataFullFileName => _DataFullFileName;
// public new string Display => _Display;
public int? FaceBottom => _FaceBottom;
public string FaceFullFileName => _FaceFullFileName;
public int? FaceHeight => _FaceHeight;
public int? FaceLeft => _FaceLeft;
public string FaceRelativePath => _FaceRelativePath;
public int? FaceRight => _FaceRight;
public int? FaceTop => _FaceTop;
public int? FaceWidth => _FaceWidth;
public int ImageHeight => _ImageHeight;
public int ImageWidth => _ImageWidth;
// public new DateTime LastModified => _LastModified;
public string LocationDisplayIndex => _LocationDisplayIndex;
public int? LocationIndex => _LocationIndex;
public bool? Populated => _Populated;
public string RelativePath => _RelativePath;
public string SourceFullFileName => _SourceFullFileName;
public string SourceRelativePath => _SourceRelativePath;
public long? SourceSize => _SourceSize;
[JsonConstructor]
public FaceFileSystem(string className, string confidence, string dataDisplayFileName, string dataFullFileName, string display, int? faceBottom, string faceFullFileName, int? faceHeight, int? faceLeft, string faceRelativePath, int? faceRight, int? faceTop, int? faceWidth, int imageHeight, int imageWidth, DateTime lastModified, string locationDisplayIndex, int? locationIndex, bool? populated, string relativePath, string sourceFullFileName, string sourceRelativePath, long? sourceSize) : base(className, dataDisplayFileName, dataFullFileName, display, lastModified)
{
_Confidence = confidence;
_FaceBottom = faceBottom;
_FaceFullFileName = faceFullFileName;
_FaceHeight = faceHeight;
_FaceLeft = faceLeft;
_FaceRelativePath = faceRelativePath;
_FaceRight = faceRight;
_FaceTop = faceTop;
_FaceWidth = faceWidth;
_ImageHeight = imageHeight;
_ImageWidth = imageWidth;
_LocationDisplayIndex = locationDisplayIndex;
_LocationIndex = locationIndex;
_Populated = populated;
_RelativePath = relativePath;
_SourceFullFileName = sourceFullFileName;
_SourceRelativePath = sourceRelativePath;
_SourceSize = sourceSize;
}
internal FaceFileSystem(string requestPath, int rootResultsDirectoryAbsoluteUriLength, string cResizeContent, string dFacesContentDirectory, string dataFullFileName, Face face) : base(string.Empty, string.Empty, dataFullFileName, string.Empty, DateTime.MinValue)
{
string confidence;
int? faceBottom;
int? faceHeight;
int? faceLeft;
int? faceRight;
int? faceTop;
int? faceWidth;
int imageHeight;
int imageWidth;
string locationDisplayIndex;
int locationIndex;
long sourceSize;
if (face.LocationIndex is null)
{
locationIndex = 0;
locationDisplayIndex = "01";
}
else
{
locationIndex = face.LocationIndex.Value;
locationDisplayIndex = (face.LocationIndex.Value + 1).ToString("00");
}
if (face.Location is null)
{
faceTop = null;
faceLeft = null;
faceRight = null;
faceWidth = null;
faceBottom = null;
faceHeight = null;
confidence = "0";
}
else
{
faceTop = face.Location.Top;
faceLeft = face.Location.Left;
faceRight = face.Location.Right;
faceBottom = face.Location.Bottom;
faceWidth = face.Location.Right - face.Location.Left;
faceHeight = face.Location.Bottom - face.Location.Top;
confidence = face.Location.Confidence.ToString("00.000");
}
string? directoryName = Path.GetDirectoryName(face.RelativePath);
string fileNameWithoutExtension = Path.GetFileNameWithoutExtension(face.RelativePath);
string sourceFullFileName = string.Concat(cResizeContent, face.RelativePath);
if (directoryName is null)
throw new Exception();
string faceFullFileName = string.Concat(dFacesContentDirectory, Path.Combine(directoryName, fileNameWithoutExtension, $"{locationIndex} - {fileNameWithoutExtension}.png"));
string faceRelativePath = string.Concat(requestPath, new Uri(faceFullFileName).AbsoluteUri[rootResultsDirectoryAbsoluteUriLength..]);
string sourceRelativePath = string.Concat(requestPath, new Uri(sourceFullFileName).AbsoluteUri[rootResultsDirectoryAbsoluteUriLength..]);
FileInfo fileInfo = new(sourceFullFileName);
if (face.Populated && !File.Exists(faceFullFileName))
Stateless.Methods.IFaceFileSystem.SearchForMissingFile(faceFullFileName, fileInfo: new FileInfo(string.Empty), dataFullFileName);
if (!fileInfo.Exists)
{
sourceSize = 0;
if (face.OutputResolution is null)
{
imageWidth = 0;
imageHeight = 0;
}
else
{
imageWidth = face.OutputResolution.Width;
imageHeight = face.OutputResolution.Height;
}
Stateless.Methods.IFaceFileSystem.SearchForMissingFile(fileInfo.FullName, fileInfo, dataFullFileName);
}
else
{
sourceSize = fileInfo.Length;
if (face.OutputResolution is not null)
{
imageWidth = face.OutputResolution.Width;
imageHeight = face.OutputResolution.Height;
}
else
{
System.Drawing.Size size = Stateless.Methods.ImageHelper.GetDimensions(fileInfo.FullName, faceRight, faceBottom);
imageWidth = size.Width;
imageHeight = size.Height;
}
}
_ClassName = "file";
_FaceBottom = faceBottom;
_Confidence = confidence;
_DataDisplayFileName = Path.GetFileName(dataFullFileName);
_DataFullFileName = dataFullFileName;
_Display = string.Concat(locationDisplayIndex, " - ", Path.GetFileName(sourceFullFileName));
_FaceFullFileName = faceFullFileName;
_FaceRelativePath = faceRelativePath;
_FaceHeight = faceHeight;
_ImageHeight = imageHeight;
_LastModified = face.DateTime;
_FaceLeft = faceLeft;
_LocationDisplayIndex = locationDisplayIndex;
_LocationIndex = face.LocationIndex;
_Populated = face.Populated;
_RelativePath = string.Empty;
_FaceRight = faceRight;
_SourceFullFileName = sourceFullFileName;
_SourceRelativePath = sourceRelativePath;
_SourceSize = sourceSize;
_FaceTop = faceTop;
_FaceWidth = faceWidth;
_ImageWidth = imageWidth;
}
string IFileSystem.GetDate()
{
string result = _LastModified.ToString("MM/dd/yyyy hh:mm:ss tt");
return result;
}
string IFaceFileSystem.GetSize()
{
string result;
if (_SourceSize is null)
result = string.Empty;
else
{
int order = 0;
double len = _SourceSize.Value;
string[] sizes = { "B", "KB", "MB", "GB", "TB" };
while (len >= 1024 && order < sizes.Length - 1)
{
order++;
len /= 1024;
}
result = String.Format("{0:0.##} {1}", len, sizes[order]);
}
return result;
}
void Stateless.Methods.IFaceFileSystem.TestStatic_SearchForMissingFile(string fullFileName, FileInfo fileInfo, string dataFullFileName) => throw new NotImplementedException();
FaceFileSystem[][] Stateless.Methods.IFaceFileSystem.TestStatic_GetFaceFileSystemCollection(string requestPath, string rootResultsDirectory, (string RootResultsDirectoryAbsoluteUri, string C_ResizeContentDirectory, string D_FacesContentDirectory, string E_DistanceCollectionDirectory) tuple, string selectedFileFullName) => throw new NotImplementedException();
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,31 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class FacePoint : Properties.IFacePoint, IFacePoint
{
protected int _Index;
protected int _X;
protected int _Y;
public int Index => _Index;
public int X => _X;
public int Y => _Y;
[JsonConstructor]
public FacePoint(int index, int x, int y)
{
_Index = index;
_X = x;
_Y = y;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,54 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class FileSystem : Properties.IFileSystem, IFileSystem
{
protected string _ClassName;
protected string _DataDisplayFileName;
protected string _DataFullFileName;
protected string _Display;
protected DateTime _LastModified;
public string ClassName => _ClassName;
public string DataDisplayFileName => _DataDisplayFileName;
public string DataFullFileName => _DataFullFileName;
public string Display => _Display;
public DateTime LastModified => _LastModified;
[JsonConstructor]
public FileSystem(string className, string dataDisplayFileName, string dataFullFileName, string display, DateTime lastModified)
{
_ClassName = className;
_DataDisplayFileName = dataDisplayFileName;
_DataFullFileName = dataFullFileName;
_Display = display;
_LastModified = lastModified;
}
public FileSystem(string dataFullFileName, Exception ex)
{
_ClassName = string.Empty;
_DataDisplayFileName = string.Empty;
_DataFullFileName = dataFullFileName;
_Display = string.Concat(ex.Message, Environment.NewLine, ex.StackTrace, Environment.NewLine, dataFullFileName);
_LastModified = DateTime.Now;
}
string IFileSystem.GetDate()
{
string result = _LastModified.ToString("MM/dd/yyyy hh:mm:ss tt");
return result;
}
List<FileSystem> Stateless.Methods.IFileSystem.TestStatic_GetFileSystemCollection(string requestPath, string rootResultsDirectory, (string RootResultsDirectoryAbsoluteUri, string C_ResizeContentDirectory, string D_FacesContentDirectory, string E_DistanceCollectionDirectory) tuple, string[] directories, string[] files, bool all) => throw new NotImplementedException();
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

37
Shared/Models/Location.cs Normal file
View File

@ -0,0 +1,37 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class Location : Properties.ILocation, ILocation
{
protected double _Confidence;
protected int _Bottom;
protected int _Left;
protected int _Right;
protected int _Top;
public double Confidence => _Confidence;
public int Bottom => _Bottom;
public int Left => _Left;
public int Right => _Right;
public int Top => _Top;
[JsonConstructor]
public Location(double confidence, int bottom, int left, int right, int top)
{
_Confidence = confidence;
_Bottom = bottom;
_Left = left;
_Right = right;
_Top = top;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,32 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class MetadataFile : Properties.IMetadataFile
{
protected readonly MetadataFileId _Id; // {-_-}SingletonClass
protected readonly MetadataFileCollection _Collection; // {-_-}SingletonClass
public MetadataFileId Id => _Id; // {-_-}SingletonClass
public MetadataFileCollection Collection => _Collection; // {-_-}SingletonClass
[JsonConstructor]
public MetadataFile
(
MetadataFileId id,
MetadataFileCollection collection
)
{
_Id = id; // {-_-}SingletonClass
_Collection = collection; // {-_-}SingletonClass
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class MetadataFileCollection : Properties.IMetadataFileCollection
{
protected readonly Dictionary<string, List<KeyValuePair<string, string>>> _Values; // {{1}}SingletonValue
public Dictionary<string, List<KeyValuePair<string, string>>> Values => _Values; // {{1}}SingletonValue
[JsonConstructor]
public MetadataFileCollection
(
Dictionary<string, List<KeyValuePair<string, string>>> values
) => _Values = values; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class MetadataFileId : Properties.IMetadataFileId
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public MetadataFileId
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IBackground
{
void Update();
void Dispose();
List<string> DoBackup();
void Stop(bool immediate);
void Catch(Exception exception);
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IConfiguration
{
}

View File

@ -0,0 +1,9 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IConsole
{
string? ReadLine();
ConsoleKey ReadKey();
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IFace : Stateless.Methods.IFace
{ // ...
//
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IFaceEncoding
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IFaceFileSystem : Stateless.Methods.IFaceFileSystem, IFileSystem
{
string GetSize();
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IFacePoint
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IFileSystem : Stateless.Methods.IFileSystem
{
string GetDate();
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IIdentify
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IIndex : Stateless.Methods.IIndex
{ // ...
//
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface ILocation
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IMetadataFile : Stateless.Methods.IMetadataFile
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IMetadataFileCollection : Stateless.Methods.IMetadataFileCollection
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IMetadataFileId : Stateless.Methods.IMetadataFileId
{
// ...
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface INavigate
{
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IOutputResolution
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPerson : Stateless.Methods.IPerson
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonAddress : Stateless.Methods.IPersonAddress
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonAddressCity : Stateless.Methods.IPersonAddressCity
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonAddressState : Stateless.Methods.IPersonAddressState
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonAddressStreet : Stateless.Methods.IPersonAddressStreet
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonAddressZipCode : Stateless.Methods.IPersonAddressZipCode
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonBirthday : Stateless.Methods.IPersonBirthday
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonComment : Stateless.Methods.IPersonComment
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonEmail : Stateless.Methods.IPersonEmail
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonId : Stateless.Methods.IPersonId
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonName : Stateless.Methods.IPersonName
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonNameAlias : Stateless.Methods.IPersonNameAlias
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonNameFirst : Stateless.Methods.IPersonNameFirst
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonNameLast : Stateless.Methods.IPersonNameLast
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonNameMiddle : Stateless.Methods.IPersonNameMiddle
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonNumber : Stateless.Methods.IPersonNumber
{
// ...
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IPersonURL : Stateless.Methods.IPersonURL
{
// ...
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IProperty
{
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IRelativePaths
{
}

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Methods;
public interface IStorage : Stateless.Methods.IStorage
{
// ...
}

39
Shared/Models/Navigate.cs Normal file
View File

@ -0,0 +1,39 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class Navigate : Properties.INavigate
{
protected List<string[]> _Levels;
protected string _SourceDirectory;
protected string _DirectoryRelativePath;
protected string _EncodedSourceDirectory;
protected Models.FaceFileSystem[] _FaceFileSystemCollection;
protected Models.DirectoryFileSystem[] _DirectoryFileSystemCollection;
public List<string[]> Levels => _Levels;
public string SourceDirectory => _SourceDirectory;
public string DirectoryRelativePath => _DirectoryRelativePath;
public string EncodedSourceDirectory => _EncodedSourceDirectory;
public Models.FaceFileSystem[] FaceFileSystemCollection => _FaceFileSystemCollection;
public Models.DirectoryFileSystem[] DirectoryFileSystemCollection => _DirectoryFileSystemCollection;
[JsonConstructor]
public Navigate(List<string[]> levels, string sourceDirectory, string directoryRelativePath, string encodedSourceDirectory, Models.FaceFileSystem[] faceFileSystemCollection, Models.DirectoryFileSystem[] directoryFileSystemCollection)
{
_Levels = levels;
_SourceDirectory = sourceDirectory;
_DirectoryRelativePath = directoryRelativePath;
_EncodedSourceDirectory = encodedSourceDirectory;
_FaceFileSystemCollection = faceFileSystemCollection;
_DirectoryFileSystemCollection = directoryFileSystemCollection;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,31 @@
using System.Text.Json;
using System.Text.Json.Serialization;
using View_by_Distance.Shared.Models.Methods;
namespace View_by_Distance.Shared.Models;
public class OutputResolution : Properties.IOutputResolution, IOutputResolution
{
protected int _Height;
protected int _Orientation;
protected int _Width;
public int Height => _Height;
public int Orientation => _Orientation;
public int Width => _Width;
[JsonConstructor]
public OutputResolution(int height, int orientation, int width)
{
_Height = height;
_Orientation = orientation;
_Width = width;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

56
Shared/Models/Person.cs Normal file
View File

@ -0,0 +1,56 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class Person : Properties.IPerson
{
protected readonly PersonId _Id; // {-_-}SingletonClass
protected readonly PersonBirthday _Birthday; // {-_-}SingletonClass
protected readonly PersonName _Name; // {{_}}JsonValueKindObject
protected readonly List<PersonComment> _Comments; // <{_}>PluralClass
protected readonly List<PersonURL> _URLs; // <{_}>PluralClass
protected readonly List<PersonNumber> _Numbers; // <{_}>PluralClass
protected readonly List<PersonEmail> _Emails; // <{_}>PluralClass
protected readonly List<PersonAddress> _Addresses; // <<_>>JsonValueKindArray
public PersonId Id => _Id; // {-_-}SingletonClass
public PersonBirthday Birthday => _Birthday; // {-_-}SingletonClass
public PersonName Name => _Name; // {{_}}JsonValueKindObject
public List<PersonComment> Comments => _Comments; // <{_}>PluralClass
public List<PersonURL> URLs => _URLs; // <{_}>PluralClass
public List<PersonNumber> Numbers => _Numbers; // <{_}>PluralClass
public List<PersonEmail> Emails => _Emails; // <{_}>PluralClass
public List<PersonAddress> Addresses => _Addresses; // <<_>>JsonValueKindArray
[JsonConstructor]
public Person
(
PersonId id,
PersonBirthday birthday,
PersonName name,
List<PersonComment> comments,
List<PersonURL> uRLs,
List<PersonNumber> numbers,
List<PersonEmail> emails,
List<PersonAddress> addresses
)
{
_Id = id; // {-_-}SingletonClass
_Birthday = birthday; // {-_-}SingletonClass
_Name = name; // {{_}}JsonValueKindObject
_Comments = comments; // <{_}>PluralClass
_URLs = uRLs; // <{_}>PluralClass
_Numbers = numbers; // <{_}>PluralClass
_Emails = emails; // <{_}>PluralClass
_Addresses = addresses; // <<_>>JsonValueKindArray
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,40 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonAddress : Properties.IPersonAddress
{
protected readonly PersonAddressStreet _Street; // {-_-}SingletonClass
protected readonly PersonAddressCity _City; // {-_-}SingletonClass
protected readonly PersonAddressState _State; // {-_-}SingletonClass
protected readonly PersonAddressZipCode _ZipCode; // {-_-}SingletonClass
public PersonAddressStreet Street => _Street; // {-_-}SingletonClass
public PersonAddressCity City => _City; // {-_-}SingletonClass
public PersonAddressState State => _State; // {-_-}SingletonClass
public PersonAddressZipCode ZipCode => _ZipCode; // {-_-}SingletonClass
[JsonConstructor]
public PersonAddress
(
PersonAddressStreet street,
PersonAddressCity city,
PersonAddressState state,
PersonAddressZipCode zipCode
)
{
_Street = street; // {-_-}SingletonClass
_City = city; // {-_-}SingletonClass
_State = state; // {-_-}SingletonClass
_ZipCode = zipCode; // {-_-}SingletonClass
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonAddressCity : Properties.IPersonAddressCity
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonAddressCity
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonAddressState : Properties.IPersonAddressState
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonAddressState
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonAddressStreet : Properties.IPersonAddressStreet
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonAddressStreet
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonAddressZipCode : Properties.IPersonAddressZipCode
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonAddressZipCode
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonBirthday : Properties.IPersonBirthday
{
protected readonly DateTime _Value; // {{1}}SingletonValue
public DateTime Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonBirthday
(
DateTime value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonComment : Properties.IPersonComment
{
protected readonly string _Value; // <{1}>PluralValue
public string Value => _Value; // <{1}>PluralValue
[JsonConstructor]
public PersonComment
(
string value
) => _Value = value; // <{1}>PluralValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonEmail : Properties.IPersonEmail
{
protected readonly string _Value; // <{1}>PluralValue
public string Value => _Value; // <{1}>PluralValue
[JsonConstructor]
public PersonEmail
(
string value
) => _Value = value; // <{1}>PluralValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

25
Shared/Models/PersonId.cs Normal file
View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonId : Properties.IPersonId
{
protected readonly long _Value; // {{1}}SingletonValue
public long Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonId
(
long value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,37 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonImport
{
public DateTime _Key;
public string _Name;
public string _MergeName;
public string _OldName;
public string _Comment;
public DateTime Key => _Key;
public string Name => _Name;
public string MergeName => _MergeName;
public string OldName => _OldName;
public string Comment => _Comment;
[JsonConstructor]
public PersonImport(DateTime key, string name, string mergeName, string oldName, string comment)
{
_Key = key;
_Name = name;
_MergeName = mergeName;
_OldName = oldName;
_Comment = comment;
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
}
}

View File

@ -0,0 +1,40 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonName : Properties.IPersonName
{
protected readonly PersonNameFirst _First; // {-_-}SingletonClass
protected readonly PersonNameMiddle _Middle; // {-_-}SingletonClass
protected readonly PersonNameLast _Last; // {-_-}SingletonClass
protected readonly PersonNameAlias _Alias; // {-_-}SingletonClass
public PersonNameFirst First => _First; // {-_-}SingletonClass
public PersonNameMiddle Middle => _Middle; // {-_-}SingletonClass
public PersonNameLast Last => _Last; // {-_-}SingletonClass
public PersonNameAlias Alias => _Alias; // {-_-}SingletonClass
[JsonConstructor]
public PersonName
(
PersonNameFirst first,
PersonNameMiddle middle,
PersonNameLast last,
PersonNameAlias alias
)
{
_First = first; // {-_-}SingletonClass
_Middle = middle; // {-_-}SingletonClass
_Last = last; // {-_-}SingletonClass
_Alias = alias; // {-_-}SingletonClass
}
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonNameAlias : Properties.IPersonNameAlias
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonNameAlias
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonNameFirst : Properties.IPersonNameFirst
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonNameFirst
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonNameLast : Properties.IPersonNameLast
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonNameLast
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonNameMiddle : Properties.IPersonNameMiddle
{
protected readonly string _Value; // {{1}}SingletonValue
public string Value => _Value; // {{1}}SingletonValue
[JsonConstructor]
public PersonNameMiddle
(
string value
) => _Value = value; // {{1}}SingletonValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonNumber : Properties.IPersonNumber
{
protected readonly string _Value; // <{1}>PluralValue
public string Value => _Value; // <{1}>PluralValue
[JsonConstructor]
public PersonNumber
(
string value
) => _Value = value; // <{1}>PluralValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,25 @@
using System.Text.Json;
using System.Text.Json.Serialization;
namespace View_by_Distance.Shared.Models;
public class PersonURL : Properties.IPersonURL
{
protected readonly string _Value; // <{1}>PluralValue
public string Value => _Value; // <{1}>PluralValue
[JsonConstructor]
public PersonURL
(
string value
) => _Value = value; // <{1}>PluralValue
public override string ToString()
{
string result = JsonSerializer.Serialize(this, new JsonSerializerOptions() { WriteIndented = true });
return result;
} // ...
}

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IBackground
{
}

View File

@ -0,0 +1,10 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IBackgroundPage
{
public List<Exception> Exceptions { get; }
public string Message { get; }
public string WorkingDirectory { get; }
}

View File

@ -0,0 +1,45 @@
// using View_by_Distance.Shared.Models.Methods;
// namespace View_by_Distance.Shared.Models.Properties;
// public interface IConfiguration
// {
// public bool? checkJsonForDistanceResults;
// public bool? loadOrCreateThenSaveDistanceResults;
// public bool? loadOrCreateThenSaveImageFacesResults;
// public bool? loadOrCreateThenSaveIndex;
// public bool? overrideForFaceImages;
// public bool? overrideForFaceLandmarkImages;
// public bool? overrideForResizeImages;
// public bool? propertiesChangedForDistance;
// public bool? propertiesChangedForFaces;
// public bool? propertiesChangedForIndex;
// public bool? propertiesChangedForMetadata;
// public bool? propertiesChangedForProperty;
// public bool? propertiesChangedForResize;
// public bool? reverse;
// public bool? saveFullYearOfRandomFiles;
// public bool? testDistanceResults;
// public int? distanceFactor;
// public int? locationConfidenceFactor;
// public int? mappedMaxIndex;
// public int? maxImagesInDirectoryForTopLevelFirstPass;
// public int? maxItemsInDistanceCollection;
// public int? numJitters;
// public int? outputQuality;
// public int? paddingLoops;
// public string dateGroup;
// public string modelDirectory;
// public string modelName;
// public string outputExtension;
// public string predictorModelName;
// public string rootDirectory;
// public string[] ignoreExtensions;
// public string[] ignoreRelativePaths;
// public string[] mixedYearRelativePaths;
// public string[] outputResolutions;
// public string[] saveFaceLandmarkForOutputResolutions;
// public string[] validResolutions;
// }

View File

@ -0,0 +1,6 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IConsole
{
}

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IDirectoryFileSystem
{
// protected new string ClassName { get; }
// protected new string DataDisplayFileName { get; }
// protected new string DataFullFileName { get; }
// protected new string Display { get; }
// protected new DateTime LastModified { get; }
}

View File

@ -0,0 +1,18 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IFace
{
#pragma warning disable IDE1006
public double? α { get; }
#pragma warning restore IDE1006
public DateTime DateTime { get; }
public Models.FaceEncoding FaceEncoding { get; }
public Dictionary<string, Models.FacePoint[]> FaceLandmarks { get; }
public Models.Location Location { get; }
public int? LocationIndex { get; }
public Models.OutputResolution OutputResolution { get; }
public bool Populated { get; }
public string RelativePath { get; }
}

View File

@ -0,0 +1,9 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IFaceEncoding
{
public double[] RawEncoding { get; }
public int Size { get; }
}

View File

@ -0,0 +1,30 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IFaceFileSystem // : IFaceFileSystem
{
// protected new string ClassName { get; }
public string Confidence { get; }
// protected new string DataDisplayFileName { get; }
// protected new string DataFullFileName { get; }
// protected new string Display { get; }
public int? FaceBottom { get; }
public string FaceFullFileName { get; }
public int? FaceHeight { get; }
public int? FaceLeft { get; }
public string FaceRelativePath { get; }
public int? FaceRight { get; }
public int? FaceTop { get; }
public int? FaceWidth { get; }
public int ImageHeight { get; }
public int ImageWidth { get; }
// protected new DateTime LastModified { get; }
public string LocationDisplayIndex { get; }
public int? LocationIndex { get; }
public bool? Populated { get; }
public string RelativePath { get; }
public string SourceFullFileName { get; }
public string SourceRelativePath { get; }
public long? SourceSize { get; }
}

View File

@ -0,0 +1,10 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IFacePoint
{
public int Index { get; }
public int X { get; }
public int Y { get; }
}

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IFileSystem
{
public string ClassName { get; }
public string DataDisplayFileName { get; }
public string DataFullFileName { get; }
public string Display { get; }
public DateTime LastModified { get; }
}

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IIdentify
{
public int DirectoryCount { get; }
public string ParentDirectoryName { get; }
public string Person { get; }
public string PossibleYear { get; }
public string RelativePath { get; }
}

View File

@ -0,0 +1,10 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IIndex
{
public DateTime? DateTime { get; }
public int? Index { get; }
public List<string> RelativePaths { get; }
}

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface ILocation
{
public double Confidence { get; }
public int Bottom { get; }
public int Left { get; }
public int Right { get; }
public int Top { get; }
}

View File

@ -0,0 +1,9 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IMetadataFile
{
public MetadataFileId Id { get; } //string
public MetadataFileCollection Collection { get; } //string
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IMetadataFileCollection
{
public Dictionary<string, List<KeyValuePair<string, string>>> Values { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IMetadataFileId
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,12 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface INavigate
{
public List<string[]> Levels { get; }
public string SourceDirectory { get; }
public string DirectoryRelativePath { get; }
public Models.FaceFileSystem[] FaceFileSystemCollection { get; }
public Models.DirectoryFileSystem[] DirectoryFileSystemCollection { get; }
}

View File

@ -0,0 +1,10 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IOutputResolution
{
public int Height { get; }
public int Orientation { get; }
public int Width { get; }
}

View File

@ -0,0 +1,15 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPerson
{
public PersonId Id { get; } //long
public PersonBirthday Birthday { get; } //DateTime
public PersonName Name { get; } //JsonValueKind.Object
public List<PersonComment> Comments { get; } //string
public List<PersonURL> URLs { get; } //string
public List<PersonNumber> Numbers { get; } //string
public List<PersonEmail> Emails { get; } //string
public List<PersonAddress> Addresses { get; } //JsonValueKind.Array
} // ...

View File

@ -0,0 +1,11 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonAddress
{
public PersonAddressStreet Street { get; } //string
public PersonAddressCity City { get; } //string
public PersonAddressState State { get; } //string
public PersonAddressZipCode ZipCode { get; } //string
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonAddressCity
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonAddressState
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonAddressStreet
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonAddressZipCode
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonBirthday
{
public DateTime Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonComment
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonEmail
{
public string Value { get; }
} // ...

View File

@ -0,0 +1,8 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonId
{
public long Value { get; }
} // ...

View File

@ -0,0 +1,11 @@
namespace View_by_Distance.Shared.Models.Properties;
public interface IPersonName
{
public PersonNameFirst First { get; } //string
public PersonNameMiddle Middle { get; } //string
public PersonNameLast Last { get; } //string
public PersonNameAlias Alias { get; } //string
} // ...

Some files were not shown because too many files have changed in this diff Show More