+ @foreach (var group in this.groups)
+ {
+ @* A level-two heading was shown as h5 while this list was Markdown, because that is what
+ Markdown.DefaultConfig overrides it to. The heading keeps that size here. *@
+
+ @group.Heading
+
+
+ @foreach (var entry in group.Entries)
+ {
+ -
+ @($"[{entry.Number}] ")
+ @if (entry.Document is { } document)
+ {
+
+
+ @entry.Title
+
+
+
+
+
+ }
+ else
+ {
+
+ @entry.Title
+
+ }
+
+ }
+
+ }
+
\ No newline at end of file
diff --git a/app/MindWork AI Studio/Components/SourcesList.razor.cs b/app/MindWork AI Studio/Components/SourcesList.razor.cs
new file mode 100644
index 00000000..b7d24d5f
--- /dev/null
+++ b/app/MindWork AI Studio/Components/SourcesList.razor.cs
@@ -0,0 +1,164 @@
+using AIStudio.Tools.Rust;
+using AIStudio.Tools.Services;
+
+using Microsoft.AspNetCore.Components;
+
+namespace AIStudio.Components;
+
+///