filebrowser/frontend/public/index.html

169 lines
4.8 KiB
HTML
Raw Normal View History

2018-02-01 12:17:04 +00:00
<!DOCTYPE html>
<html lang="en">
2024-12-26 17:31:04 +00:00
2018-02-01 12:17:04 +00:00
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
2024-11-21 00:15:30 +00:00
{{ if .ReCaptcha }}
2024-12-26 17:31:04 +00:00
<script src="{{ .ReCaptchaHost }}/recaptcha/api.js?render=explicit" data-vite-ignore></script>
2024-11-21 00:15:30 +00:00
{{ end }}
2018-02-01 12:40:20 +00:00
2024-11-21 00:15:30 +00:00
<title>{{ if .Name }}{{ .Name }}{{ else }}FileBrowser Quantum{{ end }}</title>
2018-02-01 12:40:20 +00:00
2024-11-21 00:15:30 +00:00
<link rel="icon" type="image/png" sizes="256x256" href="{{ .StaticURL }}/img/icons/favicon-256x256.png">
2020-10-01 14:45:24 +00:00
2025-01-21 14:02:43 +00:00
<!--<link href="https://fonts.googleapis.com/css?family=Material+Icons|Material+Symbols+Outlined" rel="stylesheet">-->
2025-01-05 19:05:33 +00:00
2018-02-01 12:17:04 +00:00
<!-- Add to home screen for Android and modern mobile browsers -->
<link rel="manifest" id="manifestPlaceholder" crossorigin="use-credentials">
2024-11-21 00:15:30 +00:00
<meta name="theme-color" content="{{ if .Color }}{{ .Color }}{{ else }}#2979ff{{ end }}">
2018-02-01 12:17:04 +00:00
2020-09-05 13:23:42 +00:00
<!-- Add to home screen for Safari on iOS/iPadOS -->
2018-02-01 12:17:04 +00:00
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-title" content="assets">
2024-12-26 17:31:04 +00:00
<link rel="apple-touch-icon" sizes="180x180" href="{{ .StaticURL }}/img/icons/android-chrome-256x256.png">
2018-02-01 12:40:20 +00:00
2018-02-01 12:17:04 +00:00
<!-- Add to home screen for Windows -->
2024-11-21 00:15:30 +00:00
<meta name="msapplication-TileImage" content="{{ .StaticURL }}/img/icons/mstile-144x144.png">
<meta name="msapplication-TileColor" content="{{ if .Color }}{{ .Color }}{{ else }}#2979ff{{ end }}">
2018-02-01 12:17:04 +00:00
2025-01-31 20:26:21 +00:00
<meta name="description" content="FileBrowser Quantum is a file manager for the web which can be used to manage files on your server">
<link rel="canonical" href="https://github.com/gtsteffaniak/filebrowser">
<link rel="canonical" href="https://github.com/gtsteffaniak">
<link rel="canonical" href="https://github.com/quantumx-apps">
<!-- Inject Some Variables and generate the manifest json -->
<script>
2024-12-26 17:31:04 +00:00
window.FileBrowser = JSON.parse('{{ .globalVars }}');
var dynamicManifest = {
2025-01-13 00:50:22 +00:00
"name": window.FileBrowser.Name || 'FileBrowser Quantum',
"icons": [
{
2024-12-26 17:31:04 +00:00
"src": window.location.origin + "{{ .StaticURL }}/img/icons/android-chrome-256x256.png",
"sizes": "512x512",
"type": "image/png"
2024-12-26 17:31:04 +00:00
},
{
"src": window.location.origin + "{{ .StaticURL }}/img/icons/android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
],
2024-12-26 17:31:04 +00:00
"start_url": window.location.origin + "{{ .BaseURL }}",
"display": "standalone",
"background_color": "#ffffff",
"theme_color": window.FileBrowser.Color || "#455a64"
}
const stringManifest = JSON.stringify(dynamicManifest);
2024-12-26 17:31:04 +00:00
const blob = new Blob([stringManifest], { type: 'application/json' });
const manifestURL = URL.createObjectURL(blob);
document.querySelector('#manifestPlaceholder').setAttribute('href', manifestURL);
</script>
2018-02-01 12:17:04 +00:00
<style>
2024-12-26 17:31:04 +00:00
#loading {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: #fff;
z-index: 9999;
transition: .1s ease opacity;
-webkit-transition: .1s ease opacity;
}
#loading.done {
opacity: 0;
}
#loading .spinner {
width: 70px;
text-align: center;
position: fixed;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
#loading .spinner>div {
width: 18px;
height: 18px;
background-color: #333;
border-radius: 100%;
display: inline-block;
-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
#loading .spinner .bounce1 {
-webkit-animation-delay: -0.32s;
animation-delay: -0.32s;
}
#loading .spinner .bounce2 {
-webkit-animation-delay: -0.16s;
animation-delay: -0.16s;
}
@-webkit-keyframes sk-bouncedelay {
0%,
80%,
100% {
-webkit-transform: scale(0)
}
40% {
-webkit-transform: scale(1.0)
}
}
@keyframes sk-bouncedelay {
0%,
80%,
100% {
-webkit-transform: scale(0);
transform: scale(0);
}
40% {
-webkit-transform: scale(1.0);
transform: scale(1.0);
}
2018-02-01 12:17:04 +00:00
}
</style>
</head>
2024-12-26 17:31:04 +00:00
2018-02-01 12:17:04 +00:00
<body>
<div id="app"></div>
2024-11-21 00:15:30 +00:00
{{ if .darkMode -}}
2024-07-30 17:45:27 +00:00
<div id="loading" class="dark-mode">
2018-02-01 12:17:04 +00:00
<div class="spinner">
<div class="bounce1"></div>
<div class="bounce2"></div>
<div class="bounce3"></div>
</div>
</div>
2024-11-21 00:15:30 +00:00
{{ else }}
<div id="loading">
<div class="spinner">
<div class="bounce1"></div>
<div class="bounce2"></div>
<div class="bounce3"></div>
</div>
2024-11-21 00:15:30 +00:00
</div>
{{end}}
2024-07-30 17:45:27 +00:00
<script type="module" src="/src/main.ts"></script>
2024-11-21 00:15:30 +00:00
{{ if .CSS }}
2024-12-26 17:31:04 +00:00
<link rel="stylesheet" href="{{ .StaticURL }}/custom.css">
2024-11-21 00:15:30 +00:00
{{ end }}
2018-02-01 12:17:04 +00:00
</body>
2024-12-26 17:31:04 +00:00
</html>