<!--
  Copyright 2020 The Go Authors. All rights reserved.
  Use of this source code is governed by a BSD-style
  license that can be found in the LICENSE file.
-->

{{define "unit_outline"}}
  <div class="UnitOutline">
    <div class="UnitOutline-jumpTo">
      <button class="UnitOutline-jumpToInput js-jumpToInput"{{if (not .DocOutline.String)}} disabled{{end}}>
        Jump to
      </button>
    </div>
    {{if .Readme.String}}
      <a class="UnitOutline-accordian js-accordian" href="?readme#readme-top">README</a>
    {{end}}
    {{if (or .DocOutline.String .Unit.IsPackage)}}
      <a class="UnitOutline-accordian js-accordian" href="#doc-top">Documentation</a>
      <div class="UnitOutline-panel">
        <div class="Documentation">
          {{.DocOutline}}
        </div>
      </div>
    {{end}}
    {{if .SourceFiles}}
      <a class="UnitOutline-accordian js-accordian" href="#files-top">Source Files</a>
    {{end}}
    {{if (or .Packages .NestedModules)}}
      <a class="UnitOutline-accordian js-accordian" href="#directories-top">Directories</a>
    {{end}}
  </div>
{{end}}
