Reorganzing markdown files and UI fixes in card viewer
This commit is contained in:
+13
-6
@@ -17,7 +17,7 @@ if (!Directory.Exists(docsDir))
|
||||
return 1;
|
||||
}
|
||||
|
||||
var mdFiles = Directory.GetFiles(docsDir, "*.md");
|
||||
var mdFiles = Directory.GetFiles(docsDir, "*.md", SearchOption.AllDirectories);
|
||||
var cards = new List<CardData>();
|
||||
|
||||
foreach (var file in mdFiles)
|
||||
@@ -35,7 +35,7 @@ foreach (var file in mdFiles)
|
||||
|
||||
var name = Path.GetFileNameWithoutExtension(file);
|
||||
var category = yaml.GetValueOrDefault("category");
|
||||
if (category == null) continue;
|
||||
if (category == null || category == "Deck") continue;
|
||||
|
||||
var imageFile = StripWikiLink(yaml.GetValueOrDefault("imageLink"));
|
||||
if (imageFile != null && !imageFile.EndsWith(".png"))
|
||||
@@ -67,13 +67,20 @@ foreach (var file in mdFiles)
|
||||
// Copy PNGs to wwwroot/cards
|
||||
var cardsDir = Path.Combine(webWwwRoot, "cards");
|
||||
Directory.CreateDirectory(cardsDir);
|
||||
|
||||
var pngFiles = Directory.GetFiles(docsDir, "*.png", SearchOption.AllDirectories);
|
||||
var pngMap = pngFiles
|
||||
.GroupBy(Path.GetFileName)
|
||||
.ToDictionary(g => g.Key!, g => g.First(), StringComparer.OrdinalIgnoreCase);
|
||||
|
||||
foreach (var card in cards)
|
||||
{
|
||||
if (card.ImageFile == null) continue;
|
||||
var src = Path.Combine(docsDir, card.ImageFile);
|
||||
var dst = Path.Combine(cardsDir, card.ImageFile);
|
||||
if (File.Exists(src))
|
||||
if (pngMap.TryGetValue(card.ImageFile, out var src))
|
||||
{
|
||||
var dst = Path.Combine(cardsDir, card.ImageFile);
|
||||
File.Copy(src, dst, true);
|
||||
}
|
||||
}
|
||||
|
||||
// Generate C# source file
|
||||
@@ -120,7 +127,7 @@ Console.WriteLine($"Generated {cards.Count} cards in {generatedFile}");
|
||||
|
||||
// ── Decks ──
|
||||
var decksDir = Path.Combine(docsDir, "Decks");
|
||||
var deckFiles = Directory.Exists(decksDir) ? Directory.GetFiles(decksDir, "*.md") : [];
|
||||
var deckFiles = Directory.Exists(decksDir) ? Directory.GetFiles(decksDir, "*.md", SearchOption.AllDirectories) : [];
|
||||
var decks = new List<DeckData>();
|
||||
|
||||
foreach (var file in deckFiles)
|
||||
|
||||
Reference in New Issue
Block a user