2026-06-24 10:42:30 +01:00

31 lines
1.3 KiB
C#

namespace PlotLine.Models;
public sealed class HelpArticle
{
public string Title { get; set; } = string.Empty;
public string Category { get; set; } = string.Empty;
public string CategorySlug { get; set; } = string.Empty;
public IReadOnlyList<string> Tags { get; set; } = [];
public string ContextKey { get; set; } = string.Empty;
public string Slug { get; set; } = string.Empty;
public string Micro { get; set; } = string.Empty;
public string QuickTitle { get; set; } = string.Empty;
public string QuickSummary { get; set; } = string.Empty;
public string Screenshot { get; set; } = string.Empty;
public string MarkdownContent { get; set; } = string.Empty;
public string RelativePath { get; set; } = string.Empty;
public DateTime LastModifiedUtc { get; set; }
public IReadOnlyList<string> ValidationIssues { get; set; } = [];
public string CategoryUrl => $"/help/{CategorySlug}";
public string Url => $"/help/{CategorySlug}/{Slug}";
public bool IsValid => ValidationIssues.Count == 0;
}
public sealed class HelpCoverageItem
{
public string ContextKey { get; set; } = string.Empty;
public string FilePath { get; set; } = string.Empty;
public bool IsValid { get; set; }
public IReadOnlyList<string> ValidationIssues { get; set; } = [];
}