|
15 | 15 | </div> |
16 | 16 | </div> |
17 | 17 | <transition-group class="w-full m-auto mt-4 animate fadein sm:flex flex-wrap content-start" v-else> |
18 | | - <div class="server-box animate fadein" :key="index" v-for="(server, index) in servers.models"> |
19 | | - <router-link :to="{ name: 'server', params: { id: server.identifier }}" class="content"> |
20 | | - <div class="float-right"> |
21 | | - <div class="indicator"></div> |
22 | | - </div> |
23 | | - <div class="mb-4"> |
24 | | - <div class="text-black font-bold text-xl"> |
25 | | - {{ server.name }} |
26 | | - </div> |
27 | | - </div> |
28 | | - <div class="mb-0 flex"> |
29 | | - <div class="usage"> |
30 | | - <div class="indicator-title">{{ $t('dashboard.index.cpu_title') }}</div> |
31 | | - </div> |
32 | | - <div class="usage"> |
33 | | - <div class="indicator-title">{{ $t('dashboard.index.memory_title') }}</div> |
34 | | - </div> |
35 | | - </div> |
36 | | - <div class="mb-4 flex text-center"> |
37 | | - <div class="inline-block border border-grey-lighter border-l-0 p-4 flex-1"> |
38 | | - <span class="font-bold text-xl">---</span> |
39 | | - <span class="font-light text-sm">%</span> |
40 | | - </div> |
41 | | - <div class="inline-block border border-grey-lighter border-l-0 border-r-0 p-4 flex-1"> |
42 | | - <span class="font-bold text-xl">---</span> |
43 | | - <span class="font-light text-sm">Mb</span> |
44 | | - </div> |
45 | | - </div> |
46 | | - <div class="flex items-center"> |
47 | | - <div class="text-sm"> |
48 | | - <p class="text-grey">{{ server.node }}</p> |
49 | | - <p class="text-grey-dark">{{ server.allocation.ip }}:{{ server.allocation.port }}</p> |
50 | | - </div> |
51 | | - </div> |
52 | | - </router-link> |
53 | | - </div> |
| 18 | + <server-box |
| 19 | + v-for="(server, index) in servers.models" |
| 20 | + v-bind:key="index" |
| 21 | + v-bind:server="server" |
| 22 | + v-bind:resources="resources[server.uuid]" |
| 23 | + /> |
54 | 24 | </transition-group> |
55 | 25 | </div> |
56 | 26 | </template> |
|
59 | 29 | import { ServerCollection } from '../../models/server'; |
60 | 30 | import _ from 'lodash'; |
61 | 31 | import Flash from '../Flash'; |
| 32 | + import ServerBox from './ServerBox'; |
62 | 33 |
|
63 | 34 | export default { |
64 | 35 | name: 'dashboard', |
65 | | - components: { Flash }, |
| 36 | + components: { ServerBox, Flash }, |
66 | 37 | data: function () { |
67 | 38 | return { |
68 | 39 | loading: true, |
69 | 40 | search: '', |
70 | 41 | servers: new ServerCollection, |
| 42 | + resources: {}, |
71 | 43 | } |
72 | 44 | }, |
73 | 45 |
|
|
92 | 64 | .then(response => { |
93 | 65 | this.servers = new ServerCollection; |
94 | 66 | response.data.data.forEach(obj => { |
| 67 | + this.resources[obj.attributes.uuid] = { cpu: 0, memory: 0 }; |
95 | 68 | this.servers.add(obj.attributes); |
96 | 69 | }); |
97 | 70 |
|
|
0 commit comments