119 lines
3.3 KiB
HTML
Executable File
119 lines
3.3 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="mobile-web-app-capable" content="yes" >
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
<meta name="theme-color" content="#222222" />
|
|
<meta name="viewport" content="width=device-width">
|
|
|
|
<link rel="shortcut icon" type="image/ico" href="/iris/assets/favicon.ico" />
|
|
<link rel="shortcut icon" type="image/x-icon" href="/iris/assets/favicon.ico" />
|
|
<link rel="shortcut-icon" href="/iris/assets/favicon.ico" />
|
|
|
|
<!-- Chrome app -->
|
|
<link rel="manifest" href="/iris/assets/manifest.json">
|
|
|
|
<!-- Apple app -->
|
|
<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">
|
|
<link rel="apple-touch-startup-image" href="/iris/assets/logo-full-512.png" />
|
|
<link rel="apple-touch-icon" sizes="192x192" href="/iris/assets/logo-app-192.png" />
|
|
<link rel="apple-touch-icon" sizes="512x512" href="/iris/assets/logo-app-512.png" />
|
|
<link rel="mask-icon" href="/iris/assets/icon_coloured.svg" color="#08d58f" />
|
|
|
|
<!-- Raven Sentry -->
|
|
<script src="https://cdn.ravenjs.com/3.17.0/raven.min.js" crossorigin="anonymous"></script>
|
|
|
|
<!-- Loading screen -->
|
|
<style>
|
|
@keyframes logo-pulse {
|
|
0% { opacity: 0.05; }
|
|
50% { opacity: 0.3; }
|
|
100% { opacity: 0.05; }
|
|
}
|
|
#app-loading {
|
|
position: fixed;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
color: #FFFFFF;
|
|
background-color: #121212;
|
|
}
|
|
#app-loading-logo {
|
|
width: 80%;
|
|
max-width: 160px;
|
|
margin: 0 auto;
|
|
height: 100%;
|
|
background-image: url('/iris/assets/icon.svg');
|
|
background-position: 50% 50%;
|
|
background-size: contain;
|
|
background-repeat: no-repeat;
|
|
animation-name: logo-pulse;
|
|
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">
|
|
<div id="app-loading-logo"></div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
|
|
<script type="text/javascript">
|
|
|
|
// Release details
|
|
// These are automatically injected to built HTML
|
|
var build = "BUILD_HERE";
|
|
var version = "VERSION_HERE";
|
|
|
|
// 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
|
|
try {
|
|
var ui = JSON.parse(localStorage.getItem('ui') );
|
|
var test_mode = (typeof(ui) !== 'undefined' && ui && typeof(ui.test_mode) !== 'undefined' && ui.test_mode);
|
|
} catch(error){
|
|
console.error(error);
|
|
var test_mode = false;
|
|
}
|
|
|
|
// Test mode, use un-minified code
|
|
if (test_mode){
|
|
js.src = '/iris/app.js?v='+build;
|
|
css.href = '/iris/app.css?v='+build;
|
|
|
|
// Production-grade, minified app
|
|
} else {
|
|
js.src = '/iris/app.min.js?v='+build;
|
|
css.href = '/iris/app.min.css?v='+build;
|
|
}
|
|
|
|
// And finally inject our CSS/JS tags
|
|
document.body.appendChild(js);
|
|
document.body.appendChild(css);
|
|
|
|
</script>
|
|
|
|
</html>
|
|
|