2023-01-05 13:15:05 +00:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
|
|
<head>
|
|
|
|
<!-- Required meta tags -->
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
|
|
|
|
|
|
|
<!-- Bootstrap CSS -->
|
2023-01-10 13:21:15 +00:00
|
|
|
<link rel="stylesheet" href="/node_modules/bootstrap/dist/css/bootstrap.min.css" crossorigin="anonymous">
|
2023-01-05 13:15:05 +00:00
|
|
|
|
|
|
|
<!-- Font awesome -->
|
2023-01-10 13:21:15 +00:00
|
|
|
<link rel="stylesheet" href="/node_modules/@fortawesome/fontawesome-free/css/all.css" crossorigin="anonymous">
|
2023-01-05 13:15:05 +00:00
|
|
|
|
|
|
|
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700' rel='stylesheet' type='text/css'>
|
2023-01-10 13:21:15 +00:00
|
|
|
<link href="/node_modules/xterm/css/xterm.css" rel="stylesheet" type="text/css">
|
|
|
|
<script src="/node_modules/xterm-theme/index.js"></script>
|
2023-01-05 13:15:05 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- Alpine.js -->
|
2023-01-10 13:21:15 +00:00
|
|
|
<script defer src="/node_modules/alpinejs/dist/cdn.min.js"></script>
|
2023-01-05 13:15:05 +00:00
|
|
|
<style>
|
|
|
|
.navbar {
|
|
|
|
background-color: #ee5007;
|
|
|
|
}
|
|
|
|
.navbar,.body,footer {
|
|
|
|
font-family: 'Open Sans', sans-serif;
|
|
|
|
}
|
|
|
|
.box {
|
|
|
|
background-color: #262626;
|
|
|
|
color: white;
|
|
|
|
width: 100%;
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
<title>Installation progress</title>
|
|
|
|
</head>
|
|
|
|
<body class="bg-gray-200 font-sans">
|
|
|
|
<!-- Top bar with logo -->
|
|
|
|
<nav class="navbar navbar-expand-lg navbar-light">
|
|
|
|
<a class="navbar-brand pl-4" href="#">
|
|
|
|
<svg height="35" viewBox="0 0 347 125" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="24.8171" height="24.8171" transform="matrix(-0.86601 0.500028 -3.18907e-05 1 64.6367 12.8008)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.86601 -0.500028 3.18907e-05 1 43.1436 25.2109)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866041 0.499972 0.866041 0.499972 43.1436 0.394531)" fill="#fff"></rect><rect width="24.8171" height="24.8171" transform="matrix(3.19859e-05 1 0.86601 0.500028 21.6487 37.6211)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866041 0.499973 0.866041 0.499972 21.6487 62.4336)" fill="#fff"></rect><rect width="24.8171" height="24.8171" transform="matrix(-3.17834e-05 1 0.866009 -0.500028 0.157593 50.0312)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.86601 0.500028 -3.19781e-05 1 64.6389 87.2539)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866009 -0.500028 3.18033e-05 1 43.1458 99.6641)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866041 0.499972 0.866041 0.499973 43.1458 74.8477)" fill="#fff"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.86601 -0.500028 3.18907e-05 -1 64.6334 112.082)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.86601 0.500028 -3.18907e-05 -1 86.1266 99.6719)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.866041 -0.499972 -0.866041 -0.499972 86.1266 124.488)" fill="#fff"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.86601 0.500028 -3.19781e-05 1 129.114 50.0273)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866009 -0.500028 3.18033e-05 1 107.62 62.4375)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(-0.866041 0.499972 0.866041 0.499973 107.62 37.6211)" fill="#fff"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.86601 -0.500028 3.18907e-05 -1 64.635 37.6289)" fill="#aeaeae"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.86601 0.500028 -3.18907e-05 -1 86.1282 25.2188)" fill="#d6d6d6"></rect><rect width="24.8171" height="24.8171" transform="matrix(0.866041 -0.499972 -0.866041 -0.499972 86.1282 50.0352)" fill="#fff"></rect><path d="M189.374 82.9414 174.851 65.159V82.9414h-8.005V43.031h8.005V60.9278L189.374 43.031H199.037L182.57 62.8147l16.925 20.1267H189.374zm13.328-15.9527C202.702 63.7867 203.331 60.9468 204.589 58.4691 205.885 55.9914 207.619 54.0855 209.792 52.7513 212.003 51.4171 214.461 50.7501 217.168 50.7501 219.531 50.7501 221.59 51.2265 223.343 52.1795 225.135 53.1325 226.564 54.3332 227.631 55.7817v-4.517H235.694V82.9414H227.631V78.31C226.602 79.7966 225.173 81.0355 223.343 82.0266c-1.792.9529-3.869 1.4294-6.232 1.4294C214.442 83.456 212.003 82.7699 209.792 81.3976 207.619 80.0253 205.885 78.1003 204.589 75.6226 203.331 73.1068 202.702 70.2288 202.702 66.9887zm24.929.1143C227.631 65.159 227.25 63.5008 226.488 62.1285 225.725 60.7181 224.696 59.6508 223.4 58.9265 222.104 58.1642 220.713 57.783 219.226 57.783 217.74 57.783 216.367 58.1451 215.109 58.8694 213.851 59.5936 212.822 60.661 212.022 62.0714 211.259 63.4436 210.878 65.0827 210.878 66.9887c0 1.9059.381 3.5831 1.14400000000001 5.0317C212.822 73.4308 213.851 74.5171 215.109 75.2795 216.405 76.0419 217.778 76.4231 219.226 76.4231 220.713 76.4231 222.104 76.061 223.4 75.3367 224.696 74.5743 225.725 73.507 226.488 72.1347 227.25 70.7243 227.631 69.0471 227.631 67.103zm19.94-19.6121C246.161 47.4909 244.979 47.0525 244.026 46.1758 243.112 45.261 242.654 44.1364 242.654 42.8023 242.654 41.4681 243.112 40.3627 244.026 39.4859 244.979 38.5711 246.161 38.1137 247.571 38.1137c1.411.0 2.57300000000001.4574 3.488 1.3722C252.012 40.3627 252.489 41.4681 252.489 42.8023 252.489 44.1364 252.012 45.261 251.059 46.1758 250.144 47.0525 248.982 47.4909 247.571 47.4909zM251.517 51.2647V82.9414h-8.
|
|
|
|
<span class="text-white pl-4 font-bold">Installation progress</span>
|
|
|
|
</a>
|
|
|
|
</nav>
|
|
|
|
|
|
|
|
<div class="container mt-3 body d-none">
|
|
|
|
<label class="custom-control custom-switch">
|
|
|
|
<input type="checkbox" class="custom-control-input" id="autoscroll-switch">
|
|
|
|
<span class="custom-control-label">Autoscroll</span>
|
|
|
|
</label>
|
|
|
|
</div>
|
|
|
|
<div class="container mt-5">
|
|
|
|
<div class="mx-auto box rounded-lg shadow">
|
|
|
|
<div class="mt-5 p-2" id="output"></div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2023-01-10 13:21:15 +00:00
|
|
|
<script src="/node_modules/xterm/lib/xterm.js"></script>
|
|
|
|
<script src="/node_modules/xterm-addon-fit/lib/xterm-addon-fit.js"></script>
|
2023-01-05 13:15:05 +00:00
|
|
|
<script>
|
|
|
|
const box = document.getElementById('output');
|
|
|
|
|
|
|
|
var term = new Terminal({theme: xtermTheme.MaterialDark});
|
|
|
|
|
|
|
|
fit = new FitAddon.FitAddon()
|
|
|
|
term.loadAddon(fit)
|
|
|
|
term.open(document.getElementById('output'));
|
|
|
|
fit.fit()
|
|
|
|
|
|
|
|
var loc = window.location;
|
|
|
|
var uri = 'ws:';
|
|
|
|
const autoscrollSwitch = document.getElementById('autoscroll-switch');
|
|
|
|
|
|
|
|
// toggle autoscroll when the switch is clicked
|
|
|
|
autoscrollSwitch.addEventListener('click', () => {
|
|
|
|
if (autoscrollSwitch.checked) {
|
|
|
|
box.addEventListener('scroll', () => {
|
|
|
|
autoscrollSwitch.checked = box.scrollTop + box.clientHeight === box.scrollHeight;
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
box.removeEventListener('scroll', () => {
|
|
|
|
autoscrollSwitch.checked = box.scrollTop + box.clientHeight === box.scrollHeight;
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
if (loc.protocol === 'https:') {
|
|
|
|
uri = 'wss:';
|
|
|
|
}
|
|
|
|
uri += '//' + loc.host;
|
|
|
|
uri += '/ws';
|
|
|
|
|
|
|
|
ws = new WebSocket(uri)
|
|
|
|
|
|
|
|
ws.onopen = function() {
|
|
|
|
console.log('Connected')
|
|
|
|
}
|
|
|
|
|
|
|
|
ws.onmessage = function(evt) {
|
|
|
|
var out = document.getElementById('output');
|
|
|
|
term.write(evt.data)
|
|
|
|
//out.innerHTML += evt.data;
|
|
|
|
// scroll the content to the bottom when new content is added
|
|
|
|
if (autoscrollSwitch.checked) {
|
|
|
|
term.scrollToBottom()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
<footer class="bg-light py-3 mt-5 d-flex justify-content-center">
|
|
|
|
<div class="container mx-auto">
|
|
|
|
<div class="row">
|
|
|
|
<div class="col-12 text-center">
|
|
|
|
<a href="https://github.com/kairos-io/kairos" target="_blank" class="text-secondary"><i class="fab fa-github fa-2x"></i></a>
|
|
|
|
<a href="https://kairos.io/docs" target="_blank" class="text-secondary"><i class="fas fa-book fa-2x"></i></a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<hr>
|
|
|
|
<p class="text-center text-secondary py-2">Copyright © Kairos authors 2022-2023</p>
|
|
|
|
</div>
|
|
|
|
</footer>
|
|
|
|
</body>
|
2023-01-10 13:21:15 +00:00
|
|
|
</html>
|