2018-05-05 11:34:13 -04:00
|
|
|
<!doctype html>
|
2017-08-03 12:32:30 -04:00
|
|
|
<html lang="en">
|
|
|
|
<head>
|
2018-05-05 11:34:13 -04:00
|
|
|
<!-- Required meta tags -->
|
2017-08-03 12:32:30 -04:00
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
2018-05-05 11:34:13 -04:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
2017-08-03 12:32:30 -04:00
|
|
|
|
2021-09-26 08:49:18 -04:00
|
|
|
{{ range (list "webfonts/fa-solid-900.woff2" "webfonts/fa-brands-400.woff2" "lato-v20-latin-ext_latin-regular.woff2" "lato-v20-latin-ext_latin-700.woff2") }}
|
|
|
|
<link
|
|
|
|
as="font"
|
|
|
|
crossorigin="anonymous"
|
|
|
|
href="{{ . }}"
|
|
|
|
integrity="{{ assetSRI . }}"
|
|
|
|
rel="preload"
|
|
|
|
>
|
|
|
|
{{ end }}
|
|
|
|
|
|
|
|
<link
|
|
|
|
crossorigin="anonymous"
|
2023-06-10 08:50:21 -04:00
|
|
|
href="app.css"
|
|
|
|
integrity="{{ assetSRI `app.css` }}"
|
|
|
|
rel="stylesheet"
|
|
|
|
>
|
|
|
|
|
|
|
|
<link
|
|
|
|
crossorigin="anonymous"
|
2021-09-26 08:49:18 -04:00
|
|
|
href="css/all.min.css"
|
|
|
|
integrity="{{ assetSRI `css/all.min.css` }}"
|
|
|
|
rel="stylesheet"
|
|
|
|
>
|
2018-05-05 11:34:13 -04:00
|
|
|
|
|
|
|
<title>OTS - One Time Secrets</title>
|
2021-09-16 13:24:36 -04:00
|
|
|
|
2023-06-17 09:05:03 -04:00
|
|
|
<script nonce="{{ .InlineContentNonce }}">
|
2021-09-16 13:24:36 -04:00
|
|
|
window.getTheme = () => localStorage.getItem('set-color-scheme') || (window.matchMedia('(prefers-color-scheme: light)').matches ? 'light' : 'dark')
|
|
|
|
|
|
|
|
window.refreshTheme = () => {
|
|
|
|
document.querySelector('html').setAttribute('mode', window.getTheme())
|
|
|
|
}
|
|
|
|
|
|
|
|
window.setTheme = (theme) => {
|
|
|
|
localStorage.setItem('set-color-scheme', theme)
|
|
|
|
window.refreshTheme()
|
|
|
|
}
|
|
|
|
|
|
|
|
// Very early load of theme definition to avoid flickering
|
|
|
|
document.addEventListener('DOMContentLoaded', () => window.refreshTheme())
|
2021-09-26 08:49:18 -04:00
|
|
|
|
|
|
|
// Template variable from Golang process
|
2023-06-26 17:01:06 -04:00
|
|
|
const maxSecretExpire = {{ .MaxSecretExpiry }}
|
2021-09-26 10:47:25 -04:00
|
|
|
const version = "{{ .Version }}"
|
2023-06-10 12:21:38 -04:00
|
|
|
window.OTSCustomize = JSON.parse('{{ .Customize.ToJSON }}')
|
2023-07-05 16:52:09 -04:00
|
|
|
window.useFormalLanguage = {{ .Customize.UseFormalLanguage | mustToJson }}
|
2021-09-16 13:24:36 -04:00
|
|
|
</script>
|
2017-08-03 12:32:30 -04:00
|
|
|
</head>
|
|
|
|
<body>
|
2019-05-10 17:12:00 -04:00
|
|
|
<div id="app"></div>
|
2018-05-05 11:34:13 -04:00
|
|
|
|
2021-09-26 08:49:18 -04:00
|
|
|
<script
|
|
|
|
crossorigin="anonymous"
|
|
|
|
integrity="{{ assetSRI `app.js` }}"
|
|
|
|
src="app.js"
|
|
|
|
></script>
|
2017-08-03 12:32:30 -04:00
|
|
|
</body>
|
|
|
|
</html>
|
|
|
|
|