summaryrefslogtreecommitdiff
path: root/src/SMAPI.Web/ViewModels
diff options
context:
space:
mode:
Diffstat (limited to 'src/SMAPI.Web/ViewModels')
-rw-r--r--src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs7
-rw-r--r--src/SMAPI.Web/ViewModels/ModListModel.cs2
-rw-r--r--src/SMAPI.Web/ViewModels/ModModel.cs6
3 files changed, 12 insertions, 3 deletions
diff --git a/src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs b/src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs
index c0dd7184..0ea69911 100644
--- a/src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs
+++ b/src/SMAPI.Web/ViewModels/JsonValidator/JsonValidatorModel.cs
@@ -10,6 +10,9 @@ namespace StardewModdingAPI.Web.ViewModels.JsonValidator
/*********
** Accessors
*********/
+ /// <summary>Whether to show the edit view.</summary>
+ public bool IsEditView { get; set; }
+
/// <summary>The paste ID.</summary>
public string PasteID { get; set; }
@@ -51,11 +54,13 @@ namespace StardewModdingAPI.Web.ViewModels.JsonValidator
/// <param name="pasteID">The stored file ID.</param>
/// <param name="schemaName">The schema name with which the JSON was validated.</param>
/// <param name="schemaFormats">The supported JSON schemas (names indexed by ID).</param>
- public JsonValidatorModel(string pasteID, string schemaName, IDictionary<string, string> schemaFormats)
+ /// <param name="isEditView">Whether to show the edit view.</param>
+ public JsonValidatorModel(string pasteID, string schemaName, IDictionary<string, string> schemaFormats, bool isEditView)
{
this.PasteID = pasteID;
this.SchemaName = schemaName;
this.SchemaFormats = schemaFormats;
+ this.IsEditView = isEditView;
}
/// <summary>Set the validated content.</summary>
diff --git a/src/SMAPI.Web/ViewModels/ModListModel.cs b/src/SMAPI.Web/ViewModels/ModListModel.cs
index ff7513bc..6b8279c1 100644
--- a/src/SMAPI.Web/ViewModels/ModListModel.cs
+++ b/src/SMAPI.Web/ViewModels/ModListModel.cs
@@ -26,7 +26,7 @@ namespace StardewModdingAPI.Web.ViewModels
public bool IsStale { get; set; }
/// <summary>Whether the mod metadata is available.</summary>
- public bool HasData => this.Mods != null;
+ public bool HasData => this.Mods?.Any() == true;
/*********
diff --git a/src/SMAPI.Web/ViewModels/ModModel.cs b/src/SMAPI.Web/ViewModels/ModModel.cs
index 56316ab7..575d596a 100644
--- a/src/SMAPI.Web/ViewModels/ModModel.cs
+++ b/src/SMAPI.Web/ViewModels/ModModel.cs
@@ -22,6 +22,9 @@ namespace StardewModdingAPI.Web.ViewModels
/// <summary>The mod author's alternative names, if any.</summary>
public string AlternateAuthors { get; set; }
+ /// <summary>The GitHub repo, if any.</summary>
+ public string GitHubRepo { get; set; }
+
/// <summary>The URL to the mod's source code, if any.</summary>
public string SourceUrl { get; set; }
@@ -62,6 +65,7 @@ namespace StardewModdingAPI.Web.ViewModels
this.AlternateNames = string.Join(", ", entry.Name.Skip(1).ToArray());
this.Author = entry.Author.FirstOrDefault();
this.AlternateAuthors = string.Join(", ", entry.Author.Skip(1).ToArray());
+ this.GitHubRepo = entry.GitHubRepo;
this.SourceUrl = this.GetSourceUrl(entry);
this.Compatibility = new ModCompatibilityModel(entry.Compatibility);
this.BetaCompatibility = entry.BetaCompatibility != null ? new ModCompatibilityModel(entry.BetaCompatibility) : null;
@@ -102,7 +106,7 @@ namespace StardewModdingAPI.Web.ViewModels
if (entry.ModDropID.HasValue)
{
anyFound = true;
- yield return new ModLinkModel($"https://www.moddrop.com/sdv/mod/{entry.ModDropID}", "ModDrop");
+ yield return new ModLinkModel($"https://www.moddrop.com/stardew-valley/mod/{entry.ModDropID}", "ModDrop");
}
if (!string.IsNullOrWhiteSpace(entry.CurseForgeKey))
{