Files
Iris/mopidy_iris/static/index.html
2020-10-27 20:58:57 +13:00

155 lines
4.1 KiB
HTML
Executable File

<html>
<head>
<title>Iris</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta content="width=device-width, initial-scale=1" name="viewport" />
<meta name="viewport" content="width=device-width" />
<link rel="manifest" href="/iris/manifest.json" crossorigin="use-credentials" />
<!-- App setup -->
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-title" content="Iris" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="#121212" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="theme-color" content="#222222" />
<!-- Icons -->
<link rel="apple-touch-startup-image" href="/iris/assets/app-icon_512.png" />
<link rel="apple-touch-icon" sizes="192x192" href="/iris/assets/app-icon_192.png" />
<link rel="apple-touch-icon" sizes="512x512" href="/iris/assets/app-icon_512.png" />
<link class="favicon" rel="shortcut icon" type="image/ico" href="/iris/assets/favicon.png" />
<link class="favicon" rel="shortcut icon" type="image/x-icon" href="/iris/assets/favicon.png" />
<link class="favicon" rel="shortcut-icon" href="/iris/assets/favicon.png" />
<link rel="mask-icon" href="/iris/assets/app-icon.svg" color="#08d58f" />
<!-- Loading screen styles -->
<style>
html {
background-color: #121212;
}
@keyframes loader {
0% { left: 0; right: 100%; }
50% { left: 0; right: 0; }
100% { left: 100%; right: 0; }
}
#app-loading {
position: fixed;
top: 50vh;
left: 0;
right: 0;
transform: translateY(-50%);
text-align: center;
padding: 30px 0;
}
#app-loading-logo {
filter: brightness(0) invert(1);
margin: 0 auto;
display: block;
width: 60vw;
max-width: 100px;
opacity: 0.25;
}
#app-loading-loader {
position: relative;
margin: 30px auto 0;
width: 80vw;
max-width: 200px;
height: 3px;
border-radius: 3px;
overflow: hidden;
background-color: #1A1A1A;
}
#app-loading-loader::before {
position: absolute;
display: block;
content: '';
height: 100%;
animation-name: loader;
background: #444444;
animation-duration: 1.8s;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
}
</style>
</head>
<body>
<div id="app">
<!-- ReactJS app gets injected here, replacing the loader -->
<div id="app-loading">
<img src="/iris/assets/app-icon.svg" id="app-loading-logo" />
<div id="app-loading-loader"></div>
</div>
</div>
</body>
<script type="text/javascript">
if ('serviceWorker' in navigator){
navigator.serviceWorker.register('/iris/service-worker.js')
.then(function(registration){
console.log('Service worker registered');
}).catch(function(error){
console.error('Service worker registration failed:', error);
});
}
</script>
<script type="text/javascript">
// Release details
// These are automatically injected to built HTML
var build = "1603785471";
var version = "3.53.0";
// Construct the script tag
var js = document.createElement("script");
js.type = "application/javascript";
// Construct our css tag
var css = document.createElement("link");
css.rel = "stylesheet";
// Check for test mode. This is toggled under Settings > Debug > Test mode or can
// be manually triggered with the URL var "?test_mode=1"
try {
var ui = JSON.parse(localStorage.getItem('ui') );
window.test_mode = (
typeof(ui) !== 'undefined'
&& ui
&& typeof(ui.test_mode) !== 'undefined'
&& ui.test_mode
) || window.location.href.indexOf('test_mode=1') > -1;
} catch(error){
console.error(error);
window.test_mode = false;
}
// Test mode, use un-minified code
if (window.test_mode){
console.debug("Test mode enabled, using un-minified code");
css.href = '/iris/app.css?v='+build;
js.src = '/iris/app.js?v='+build;
// Production-grade, minified app
} else {
css.href = '/iris/app.min.css?v='+build;
js.src = '/iris/app.min.js?v='+build;
}
// And finally inject our CSS/JS tags
document.body.appendChild(css);
document.body.appendChild(js);
</script>
</html>