Skip to content

Commit 8cc610b

Browse files
committed
Ensure links.json considers all navigation items
(cherry picked from commit 40f1332d45593f7c0bbbaf08ac540807ad5b5395)
1 parent e49742b commit 8cc610b

File tree

1 file changed

+28
-10
lines changed

1 file changed

+28
-10
lines changed

src/Elastic.Markdown/IO/DocumentationSet.cs

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -380,18 +380,36 @@ public RepositoryLinks CreateLinkReference()
380380
{
381381
var redirects = Configuration.Redirects;
382382
var crossLinks = Context.Collector.CrossLinks.ToHashSet().ToArray();
383-
var links = NavigationIndexedByOrder
384-
.Select(kv => kv.Value)
383+
// reference/aggregations/metrics.md
384+
var markdownInNavigation = NavigationIndexedByOrder.Values
385385
.OfType<FileNavigationItem>()
386-
.Select(m => (m.Model.LinkReferenceRelativePath, Navigation: m))
387-
.ToDictionary(k => RuntimeInformation.IsOSPlatform(OSPlatform.Windows)
388-
? k.LinkReferenceRelativePath.Replace('\\', '/')
389-
: k.LinkReferenceRelativePath, v =>
386+
.Select(m => (Markdown: m.Model, Navigation: (INavigationItem)m))
387+
.Concat(NavigationIndexedByOrder.Values
388+
.OfType<DocumentationGroup>()
389+
.Select(g => (Markdown: g.Index, Navigation: (INavigationItem)g))
390+
)
391+
.ToList();
392+
393+
var links = markdownInNavigation
394+
.Select(tuple =>
390395
{
391-
var md = v.Navigation.Model;
392-
var anchors = md.Anchors.Count == 0 ? null : md.Anchors.ToArray();
393-
return new LinkMetadata { Anchors = anchors, Hidden = v.Navigation.Hidden };
394-
});
396+
var path = RuntimeInformation.IsOSPlatform(OSPlatform.Windows)
397+
? tuple.Markdown.LinkReferenceRelativePath.Replace('\\', '/')
398+
: tuple.Markdown.LinkReferenceRelativePath;
399+
return (Path: path, tuple.Markdown, tuple.Navigation);
400+
})
401+
.DistinctBy(tuple => tuple.Path)
402+
.ToDictionary(
403+
tuple => tuple.Path,
404+
tuple =>
405+
{
406+
var anchors = tuple.Markdown.Anchors.Count == 0 ? null : tuple.Markdown.Anchors.ToArray();
407+
return new LinkMetadata
408+
{
409+
Anchors = anchors,
410+
Hidden = tuple.Navigation.Hidden
411+
};
412+
});
395413

396414
return new RepositoryLinks
397415
{

0 commit comments

Comments
 (0)