github.com/square/finch@v0.0.0-20240412205204-6530c03e2b96/docs/themes/hugo-geekdoc/layouts/partials/menu-filetree.html (about) 1 {{ $current := . }} 2 {{ template "tree-nav" dict "sect" .Site.Home.Sections "current" $current }} 3 4 5 <!-- templates --> 6 {{ define "tree-nav" }} 7 {{ $current := .current }} 8 9 10 <ul class="gdoc-nav__list"> 11 {{ $sortBy := (default "title" .current.Site.Params.GeekdocFileTreeSortBy | lower) }} 12 {{ range .sect.GroupBy "Weight" }} 13 {{ $rangeBy := .ByTitle }} 14 15 {{ if eq $sortBy "title" }} 16 {{ $rangeBy = .ByTitle }} 17 {{ else if eq $sortBy "linktitle" }} 18 {{ $rangeBy = .ByLinkTitle }} 19 {{ else if eq $sortBy "date" }} 20 {{ $rangeBy = .ByDate }} 21 {{ else if eq $sortBy "publishdate" }} 22 {{ $rangeBy = .ByPublishDate }} 23 {{ else if eq $sortBy "expirydate" }} 24 {{ $rangeBy = .ByExpiryDate }} 25 {{ else if eq $sortBy "lastmod" }} 26 {{ $rangeBy = .ByLastmod }} 27 {{ else if eq $sortBy "title_reverse" }} 28 {{ $rangeBy = .ByTitle.Reverse }} 29 {{ else if eq $sortBy "linktitle_reverse" }} 30 {{ $rangeBy = .ByLinkTitle.Reverse }} 31 {{ else if eq $sortBy "date_reverse" }} 32 {{ $rangeBy = .ByDate.Reverse }} 33 {{ else if eq $sortBy "publishdate_reverse" }} 34 {{ $rangeBy = .ByPublishDate.Reverse }} 35 {{ else if eq $sortBy "expirydate_reverse" }} 36 {{ $rangeBy = .ByExpiryDate.Reverse }} 37 {{ else if eq $sortBy "lastmod_reverse" }} 38 {{ $rangeBy = .ByLastmod.Reverse }} 39 {{ end }} 40 41 {{ range $rangeBy }} 42 {{ if not .Params.GeekdocHidden }} 43 {{ $numberOfPages := (add (len .Pages) (len .Sections)) }} 44 {{ $isParent := and (ne $numberOfPages 0) (not .Params.GeekdocFlatSection) }} 45 {{ $isCurrent := eq $current . }} 46 {{ $isAncestor := .IsAncestor $current }} 47 {{ $id := substr (sha1 .Permalink) 0 8 }} 48 {{ $doCollapse := and $isParent (or .Params.GeekdocCollapseSection (default false .Site.Params.GeekdocCollapseAllSections)) }} 49 50 51 <li> 52 <input 53 type="checkbox" 54 {{ if $doCollapse }} 55 class="gdoc-nav__toggle" id="{{ printf "navtree-%s" $id }}" 56 {{ if or $isCurrent $isAncestor }}checked{{ end }} 57 {{ else }} 58 class="hidden" 59 {{ end }} 60 /> 61 <label 62 {{ if $doCollapse }} 63 for="{{ printf "navtree-%s" $id }}" class="flex justify-between align-center" 64 {{ end }} 65 > 66 {{ if or .Content .Params.GeekdocFlatSection }} 67 <span class="flex"> 68 <a 69 href="{{ .RelPermalink }}" 70 class="gdoc-nav__entry{{- if eq $current . }} 71 {{- printf " is-active" }} 72 {{- end }}" 73 > 74 {{ partial "utils/title" . }} 75 </a> 76 </span> 77 {{ else }} 78 <span class="flex">{{ partial "utils/title" . }}</span> 79 {{ end }} 80 {{ if $doCollapse }} 81 <svg class="gdoc-icon toggle gdoc_keyboard_arrow_left"> 82 <use xlink:href="#gdoc_keyboard_arrow_left"></use> 83 </svg> 84 <svg class="gdoc-icon toggle gdoc_keyboard_arrow_down"> 85 <use xlink:href="#gdoc_keyboard_arrow_down"></use> 86 </svg> 87 {{ end }} 88 </label> 89 90 {{ if $isParent }} 91 {{ template "tree-nav" dict "sect" .Pages "current" $current }} 92 {{ end }} 93 </li> 94 {{ end }} 95 {{ end }} 96 {{ end }} 97 </ul> 98 {{ end }}