wabbajack/Wabbajack.DTOs/ModList/ModListMetadata.cs

47 lines
1.6 KiB
C#
Raw Normal View History

2021-09-27 12:42:46 +00:00
using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
using Wabbajack.DTOs.JsonConverters;
2021-10-23 16:51:17 +00:00
namespace Wabbajack.DTOs;
[JsonName("ModListMetadata, Wabbajack.Lib")]
[JsonAlias("ModListMetadata")]
public class ModlistMetadata
2021-09-27 12:42:46 +00:00
{
2021-10-23 16:51:17 +00:00
[JsonPropertyName("title")] public string Title { get; set; } = string.Empty;
[JsonPropertyName("description")] public string Description { get; set; } = string.Empty;
[JsonPropertyName("author")] public string Author { get; set; } = string.Empty;
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("maintainers")] public string[] Maintainers { get; set; } = Array.Empty<string>();
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("game")] public Game Game { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("official")] public bool Official { get; set; }
2021-09-27 12:42:46 +00:00
2021-12-30 00:15:37 +00:00
[JsonPropertyName("tags")] public List<string> Tags { get; set; } = new();
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("nsfw")] public bool NSFW { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("utility_list")] public bool UtilityList { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("image_contains_title")]
public bool ImageContainsTitle { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("force_down")] public bool ForceDown { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("links")] public LinksObject Links { get; set; } = new();
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("download_metadata")]
public DownloadMetadata? DownloadMetadata { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("version")] public Version? Version { get; set; }
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonIgnore] public ModListSummary ValidationSummary { get; set; } = new();
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("dateCreated")] public DateTime DateCreated { get; set; } = DateTime.UnixEpoch;
2021-09-27 12:42:46 +00:00
2021-10-23 16:51:17 +00:00
[JsonPropertyName("dateUpdated")] public DateTime DateUpdated { get; set; }
2021-09-27 12:42:46 +00:00
}