{{- $current := . -}} {{- $area := partial "docs/nav-area" . -}} {{- $home := .Site.Home -}} {{- $homeTitle := i18n "docsOverview" -}} {{- $groups := slice -}} {{- $pages := slice -}} {{- if eq $area "example" -}} {{- with .Site.GetPage "/docs/examples" -}} {{- $home = . -}} {{- $homeTitle = i18n "docsExampleOverview" -}} {{/* Each subsection, such as Quick Start or Advanced Usage, is one sidebar group. */}} {{- range .Sections.ByWeight -}} {{- $children := where .RegularPages.ByWeight "Params.bookHidden" "ne" true -}} {{- $groups = $groups | append (dict "Title" .Title "Page" . "Linked" false "Children" $children) -}} {{- end -}} {{- end -}} {{- else if eq $area "research" -}} {{- with .Site.GetPage "/docs/research" -}} {{- $home = . -}} {{- $homeTitle = i18n "docsResearchOverview" -}} {{- $children := where .RegularPages.ByWeight "Params.bookHidden" "ne" true -}} {{- if $children -}} {{- $groups = $groups | append (dict "Title" (i18n "docsPapers") "Page" . "Linked" false "Children" $children) -}} {{- end -}} {{- end -}} {{- else -}} {{- range slice "/docs/user-guide" "/docs/marl" "/docs/env" "/docs/dev" -}} {{- with $current.Site.GetPage . -}} {{- $children := where .RegularPages.ByWeight "Params.bookHidden" "ne" true -}} {{/* Environments keeps its linked overview page and curated group title. */}} {{- $env := eq .Path "/docs/env" -}} {{- $groups = $groups | append (dict "Title" (cond $env (i18n "docsEnvironments") .Title) "Page" . "Linked" $env "Children" $children) -}} {{- end -}} {{- end -}} {{- end -}} {{/* Sidebar and page-to-page links share one ordered list within each area. */}} {{- $pages = $pages | append $home -}} {{- range $groups -}} {{- if .Linked -}} {{- $pages = $pages | append .Page -}} {{- end -}} {{- range .Children -}} {{- if not .Params.BookHref -}} {{- $pages = $pages | append . -}} {{- end -}} {{- end -}} {{- end -}} {{- return (dict "Area" $area "Home" $home "HomeTitle" $homeTitle "Groups" $groups "Pages" $pages) -}}