Make imports/exports not be a dropdown in sidebar (#19907)

* Don't make a section be a dropdown if it has no child links

* - Cleaned up code

- Updated tests

* Document what the 'if' is checking
This commit is contained in:
Jake Leahy 2022-07-17 07:41:18 +10:00 • committed by GitHub
commit c43a377057
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 23 additions and 9 deletions

View file

@ -1474,10 +1474,21 @@ proc genSection(d: PDoc, kind: TSymKind, groupedToc = false) =
for item in d.tocSimple[kind].sorted(cmp):
d.toc2[kind].add item.content
d.toc[kind] = getConfigVar(d.conf, "doc.section.toc") % [
"sectionid", $ord(kind), "sectionTitle", title,
"sectionTitleID", $(ord(kind) + 50), "content", d.toc2[kind]]
let sectionValues = @[
"sectionID", $ord(kind), "sectionTitleID", $(ord(kind) + 50),
"sectionTitle", title
]
# Check if the toc has any children
if d.toc2[kind] != "":
# Use the dropdown version instead and store the children in the dropdown
d.toc[kind] = getConfigVar(d.conf, "doc.section.toc") % (sectionValues & @[
"content", d.toc2[kind]
])
else:
# Just have the link
d.toc[kind] = getConfigVar(d.conf, "doc.section.toc_item") % sectionValues
proc relLink(outDir: AbsoluteDir, destFile: AbsoluteFile, linkto: RelativeFile): string =
$relativeTo(outDir / linkto, destFile.splitFile().dir, '/')