mirror of
https://github.com/simon987/sist2.git
synced 2025-12-12 23:18:51 +00:00
79 lines
2.0 KiB
Vue
79 lines
2.0 KiB
Vue
<template>
|
|
<b-container>
|
|
|
|
<b-card v-if="loading">
|
|
<Preloader></Preloader>
|
|
</b-card>
|
|
|
|
<template v-else>
|
|
<b-card>
|
|
<b-card-body>
|
|
<b-select v-model="selectedIndex" :options="indexOptions">
|
|
<template #first>
|
|
<b-form-select-option :value="null" disabled>{{ $t("indexPickerPlaceholder") }}</b-form-select-option>
|
|
</template>
|
|
</b-select>
|
|
</b-card-body>
|
|
</b-card>
|
|
|
|
<b-card v-if="selectedIndex !== null" class="mt-3">
|
|
<b-card-body>
|
|
<D3Treemap :index-id="selectedIndex"></D3Treemap>
|
|
|
|
|
|
</b-card-body>
|
|
</b-card>
|
|
|
|
<b-card v-if="selectedIndex !== null" class="stats-card mt-3">
|
|
<D3MimeBarCount :index-id="selectedIndex"></D3MimeBarCount>
|
|
<D3MimeBarSize :index-id="selectedIndex"></D3MimeBarSize>
|
|
<D3DateHistogram :index-id="selectedIndex"></D3DateHistogram>
|
|
<D3SizeHistogram :index-id="selectedIndex"></D3SizeHistogram>
|
|
</b-card>
|
|
</template>
|
|
</b-container>
|
|
</template>
|
|
<script>
|
|
import D3Treemap from "@/components/D3Treemap";
|
|
import Sist2Api from "@/Sist2Api";
|
|
import Preloader from "@/components/Preloader.vue";
|
|
import D3MimeBarCount from "@/components/D3MimeBarCount";
|
|
import D3MimeBarSize from "@/components/D3MimeBarSize";
|
|
import D3DateHistogram from "@/components/D3DateHistogram";
|
|
import D3SizeHistogram from "@/components/D3SizeHistogram";
|
|
|
|
export default {
|
|
components: {D3SizeHistogram, D3DateHistogram, D3MimeBarSize, D3MimeBarCount, D3Treemap, Preloader},
|
|
data() {
|
|
return {
|
|
loading: true,
|
|
selectedIndex: null,
|
|
indices: []
|
|
}
|
|
},
|
|
computed: {
|
|
indexOptions() {
|
|
return this.indices.map(idx => {
|
|
return {
|
|
text: idx.name,
|
|
value: idx.id
|
|
};
|
|
})
|
|
}
|
|
},
|
|
mounted() {
|
|
Sist2Api.getSist2Info().then(data => {
|
|
this.indices = data.indices;
|
|
this.loading = false;
|
|
})
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
|
|
.stats-card {
|
|
text-align: center;
|
|
padding: 1em;
|
|
}
|
|
</style> |