Files
Oliver Hamlet ed24dd0bab Share js-yaml and Octokit between page scripts
js-yaml could probably be shared without the intermediate module, but is handled the same way as Octokit for consistency.
2026-01-11 17:52:18 +00:00

114 lines
4.8 KiB
HTML

<!DOCTYPE html>
<meta charset='utf-8' />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>LOOT: {{ .Title }}</title>
{{ $iconIco := resources.Get "images/icon.ico" }}
{{ $iconPng := resources.Get "images/icon.png" }}
<link rel="shortcut icon" type="image/ico" href="{{ $iconIco.RelPermalink }}">
{{ if .Params.redirect_to }}
<link rel="canonical" href="{{ .Params.redirect_to }}">
<meta http-equiv="refresh" content="0; url={{ .Params.redirect_to }}">
<script>location={{ .Params.redirect_to }}</script>
{{ end }}
{{ $materialJs := resources.Get "material-design-lite/material.min.js" }}
{{ $materialJsMap := resources.Get "material-design-lite/material.min.js.map" }}
{{ $materialCss := resources.Get "material-design-lite/dist/material.indigo-blue.min.css" }}
<script src="{{ $materialJs.RelPermalink }}"></script>
{{ $materialJsMap.Publish }}
<link rel="stylesheet" href="{{ $materialCss.RelPermalink }}">
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en">
{{ $style := resources.Get "css/style.css" }}
{{ $cssOverrides := resources.Get "css/overrides.css" }}
<link rel="stylesheet" href="{{ $style.RelPermalink }}">
<link rel="stylesheet" href="{{ $cssOverrides.RelPermalink }}">
{{ $externals := slice "/js/js-yaml.js" "/js/octokit.js" }}
{{
$jsBuildOpts := dict
"format" "esm"
"minify" (not hugo.IsDevelopment)
"sourceMap" (cond hugo.IsDevelopment "external" "")
"target" "es2023"
"externals" $externals
}}
{{ (resources.Get "js/octokit.js" | js.Build $jsBuildOpts).Publish }}
{{ (resources.Get "js/js-yaml.js" | js.Build $jsBuildOpts).Publish }}
{{ range .Resources.ByType "text" }}
{{ if eq .MediaType.Type "text/javascript" }}
{{ $scriptSrc := . | js.Build $jsBuildOpts }}
<script src="{{ $scriptSrc.RelPermalink }}" type="module"></script>
{{ end }}
{{ end }}
<body>
<div class="mdl-layout mdl-js-layout mdl-layout--fixed-drawer mdl-layout--fixed-header">
<div class="mdl-layout__drawer">
<span class="mdl-layout-title">
<img alt="LOOT" src="{{ $iconPng.RelPermalink }}">
<span>LOOT</span>
</span>
<nav class="mdl-navigation">
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/">
<i class="material-icons">file_download</i>
<span>Download</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/docs/">
<i class="material-icons">book</i>
<span>Documentation</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/search/">
<i class="material-icons">search</i>
<span>Masterlist Search</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/credits/">
<i class="material-icons">people</i>
<span>Credits</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="https://github.com/loot" target="_blank">
<i class="material-icons">code</i>
<span>Code</span>
</a>
<div class="subheader">Support &amp; Discussion</div>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/latest-thread/" target="_blank">
<i class="material-icons">forum</i>
<span>Forum Thread</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/discord/" target="_blank">
<i class="material-icons">comment</i>
<span>Discord Server</span>
</a>
<a class="mdl-navigation__link mdl-navigation__link--icon" href="/tutorials/">
<i class="material-icons">video_library</i>
<span>Unofficial Tutorials</span>
</a>
</nav>
</div>
<header class="mdl-layout__header">
<div class="mdl-layout__header-row">
<span class="mdl-layout-title">
{{ range after 1 .Ancestors.Reverse }}
{{ .LinkTitle }} /
{{ end }}
{{ .Title }}
</span>
</div>
</header>
<main class="mdl-layout__content">
{{ block "main" . }}
{{ end }}
</main>
</body>