node-api/ui/index.html

94 lines
2.6 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description" content="">
<meta name="author" content="">
<title>Bare - Start Bootstrap Template</title>
<!-- Bootstrap core CSS -->
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!-- Page Content -->
<div class="container" id="app">
<div class="row">
<div class="col-lg-12">
<h1 class="mt-5">Node</h1>
<p>
Load index: <em>12</em>
</p>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<h1 class="mt-5">Applications</h1>
<table class="table table-striped">
<thead>
<tr>
<th>Name</th>
<th>Status</th>
<th>Image</th>
<th>CPU</th>
<th>Memory</th>
<th>Disk space</th>
<th>Inodes</th>
<th>Tags</th>
<th></th>
</tr>
</thead>
<tbody>
<tr v-for="app in apps">
<td><strong>{( app.name )}</strong></td>
<td>{( app.state.state )}</td>
<td>{( app.image )}</td>
<td>- / {( app.cpu )} %</td>
<td>- / {( app.memory )} MB</td>
<td>- GB</td>
<td>-</td>
<td>-</td>
<td>
<button class="btn btn-warning btn-sm">Rebuild</button>
<button class="btn btn-success btn-sm">Start</button>
<button class="btn btn-warning btn-sm">Stop</button>
<button class="btn btn-warning btn-sm">Destroy</button>
<button class="btn btn-danger btn-sm">Delete</button>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<!-- Bootstrap core JavaScript -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var app = new Vue({
el: '#app',
delimiters: ['{(', ')}'],
data: {
apps: [],
},
created() {
fetch('/v1/apps').then(response => response.json())
.then(data => this.apps = data);
}
})
</script>
</body>
</html>