{{/* We cache this partial for bigger sites and set the active class client side. */}} {{ $sidebarCacheLimit := cond (isset .Site.Params.ui "sidebar_cache_limit") .Site.Params.ui.sidebar_cache_limit 2000 }} {{ $shouldDelayActive := ge (len .Site.Pages) $sidebarCacheLimit }}
{{ if not .Site.Params.ui.sidebar_search_disable }} {{ else }}
{{ end }}
{{ define "section-tree-nav-section" }} {{ $s := .section }} {{ $p := .page }} {{ $shouldDelayActive := .shouldDelayActive }} {{ $sidebarMenuTruncate := .sidebarMenuTruncate }} {{ $treeRoot := cond (eq .ulNr 0) true false }} {{ $ulNr := .ulNr }} {{ $ulShow := .ulShow }} {{ $active := and (not $shouldDelayActive) (eq $s $p) }} {{ $activePath := and (not $shouldDelayActive) ($p.IsDescendant $s) }} {{ $show := cond (or (lt $ulNr $ulShow) $activePath (and (not $shouldDelayActive) (eq $s.Parent $p.Parent)) (and (not $shouldDelayActive) (eq $s.Parent $p)) (and (not $shouldDelayActive) ($p.IsDescendant $s.Parent))) true false }} {{ $mid := printf "m-%s" ($s.RelPermalink | anchorize) }} {{ $pages_tmp := where (union $s.Pages $s.Sections).ByWeight ".Params.toc_hide" "!=" true }} {{ $pages := $pages_tmp | first $sidebarMenuTruncate }} {{ $withChild := gt (len $pages) 0 }} {{ $manualLink := cond (isset $s.Params "manuallink") $s.Params.manualLink ( cond (isset $s.Params "manuallinkrelref") (relref $s $s.Params.manualLinkRelref) $s.RelPermalink) }} {{ $manualLinkTitle := cond (isset $s.Params "manuallinktitle") $s.Params.manualLinkTitle $s.Title }}
  • {{ if (and $p.Site.Params.ui.sidebar_menu_foldable (ge $ulNr 1)) }} {{ else }} {{ with $s.Params.Icon}}{{ end }}{{ $s.LinkTitle }} {{ end }} {{if $withChild }} {{ $ulNr := add $ulNr 1 }} {{ end }}
  • {{ end }}