<!--
  Copyright 2021 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 "pre-content"}}
  <link href="/static/frontend/vuln/vuln.min.css?version={{.AppVersionLabel}}" rel="stylesheet">
  {{block "main-styles" .}}{{end}}
{{end}}

{{define "main"}}
  <main class="go-Container">
    <div class="go-Content Vuln">
      {{block "main-content" .}}{{end}}
    </div>
  </main>
{{end}}

{{define "vuln-details"}}
  {{/* . is OSVEntry */}}
  <div class="Vuln-details">
    <ul class="Vuln-detailsMetadata">
      {{with $aliases := .Aliases}}
        <li class="go-textSubtle Vuln-alias">
          {{range $i, $v := $aliases}}
            {{- if lt $i 2}}{{- if ne $i 0}}, {{end -}}{{$v}}{{end -}}
            {{- if eq $i 2}}, and {{subtract (len $aliases) 2}} more{{end -}}
          {{end}}
        </li>
      {{end}}
      <li class="go-textSubtle">Affects:
       {{with $packages := .AffectedModulesAndPackages}}
          {{range $i, $name := $packages}}
            {{- if lt $i 2}}{{- if ne $i 0}}, {{end -}}{{$name}}{{end -}}
            {{- if eq $i 2}}, and {{subtract (len $packages) 2}} more{{end -}}
          {{end}}
        {{end}}
      </li>
      <li class="go-textSubtle">Published: {{.Published.Format "Jan 02, 2006"}}</li>
      {{if ne .Published .Modified}}
        <li class="go-textSubtle">Modified: {{.Modified.Format "Jan 02, 2006"}}</li>
      {{end}}
    </ul>
    <p>{{.Details}}</p>
  </div>
{{end}}

{{define "vuln-search"}}
  <p>
    Data about new vulnerabilities come directly from Go package maintainers or sources such as MITRE
    and GitHub. Reports are curated by the Go Security team. Learn more at <a href="https://go.dev/security/vuln">go.dev/security/vuln</a>.
  </p>
  <h2>Search</h2>
  <form
    class="go-InputGroup VulnMain-search"
    action="/search"
    data-gtmc="search vuln"
    aria-label="Search GO IDs"
    role="search"
  >
    <input name="q" class="go-Input" placeholder="Search GO IDs" />
    <button class="go-Button">Submit</button>
  </form>
{{end}}
