using System.Text.Json; using System.Text.Json.Serialization; namespace View_by_Distance.Shared.Models; public record DistanceSettings(bool DistanceMoveUnableToMatch, int FaceAreaPermyriad, int FaceConfidencePercent, int FaceDistancePermyriad, string FocusDirectory, string FocusModel, string LinkedAlpha, string LocationContainerDebugDirectory, string LocationContainerDirectoryPattern, int LocationDigits, int LocationFactor, string MappingDefaultName, int[] RangeDaysDeltaTolerance, float[] RangeDistanceTolerance, float[] RangeFaceAreaTolerance, float[] RangeFaceConfidence, bool ReMap, bool SaveIndividually, bool SaveSortingWithoutPerson, string[] SkipNotSkipDirectories, int SkipOlderThanDays, int SkipPersonWithMoreThen, int SortingMaximumPerFaceShouldBeHigh, bool UseExtraPersonKeyCheck) { public override string ToString() { string result = JsonSerializer.Serialize(this, DistanceSettingsSourceGenerationContext.Default.DistanceSettings); return result; } } [JsonSourceGenerationOptions(WriteIndented = true)] [JsonSerializable(typeof(DistanceSettings))] internal partial class DistanceSettingsSourceGenerationContext : JsonSerializerContext { }