blob: ba7d7e2bcdc5e3416e3a687c1b32d45089eb4e93 [file] [log] [blame]
Dixsie Wolmers6a192d52021-09-02 15:26:58 -05001<template>
2 <overview-card
3 :data="dumps"
4 :disabled="dumps.length === 0"
5 :download-button="true"
6 :file-name="exportFileNameByDate()"
7 :title="$t('pageOverview.dumps')"
8 :to="`/logs/dumps`"
9 >
10 <b-row class="mt-3">
11 <b-col sm="6">
12 <dl>
13 <dt>{{ $t('pageOverview.total') }}</dt>
Dixsie Wolmers9726f9a2021-09-07 15:33:16 -050014 <dd class="h3">{{ dataFormatter(dumps.length) }}</dd>
Dixsie Wolmers6a192d52021-09-02 15:26:58 -050015 </dl>
16 </b-col>
17 </b-row>
18 </overview-card>
19</template>
20
21<script>
22import OverviewCard from './OverviewCard';
Dixsie Wolmers9726f9a2021-09-07 15:33:16 -050023import DataFormatterMixin from '@/components/Mixins/DataFormatterMixin';
Ed Tanous883a0d52024-03-23 14:56:34 -070024import { useI18n } from 'vue-i18n';
Dixsie Wolmers6a192d52021-09-02 15:26:58 -050025
26export default {
27 name: 'Dumps',
28 components: {
29 OverviewCard,
30 },
Dixsie Wolmers9726f9a2021-09-07 15:33:16 -050031 mixins: [DataFormatterMixin],
Ed Tanous883a0d52024-03-23 14:56:34 -070032 data() {
33 return {
34 $t: useI18n().t,
35 };
36 },
Dixsie Wolmers6a192d52021-09-02 15:26:58 -050037 computed: {
38 dumps() {
Kennethc2c53aa2021-11-30 17:04:58 -060039 return this.$store.getters['dumps/allDumps'];
Dixsie Wolmers6a192d52021-09-02 15:26:58 -050040 },
41 },
42 created() {
Nikhil Ashokaf4e79732024-09-17 12:46:47 +053043 this.$store.dispatch('dumps/getAllDumps').finally(() => {
Dixsie Wolmers6a192d52021-09-02 15:26:58 -050044 this.$root.$emit('overview-dumps-complete');
45 });
46 },
47 methods: {
48 exportFileNameByDate() {
49 // Create export file name based on date
50 let date = new Date();
51 date =
52 date.toISOString().slice(0, 10) +
53 '_' +
54 date.toString().split(':').join('-').split(' ')[4];
55 let fileName = 'all_dumps_';
56 return fileName + date;
57 },
58 },
59};
60</script>