xref: /openbmc/webui-vue/src/views/Overview/OverviewQuickLinks.vue (revision 883a0d597962dfd30d6c48319b8b33e2d0f98606)
1<template>
2  <b-card bg-variant="light" border-variant="light">
3    <b-row class="d-flex justify-content-between align-items-center">
4      <b-col sm="6" lg="9" class="mb-2 mt-2">
5        <dl>
6          <dt>{{ $t('pageOverview.bmcTime') }}</dt>
7          <dd v-if="bmcTime" data-test-id="overviewQuickLinks-text-bmcTime">
8            {{ bmcTime }} {{ bmcTime }}
9          </dd>
10          <dd v-else>--</dd>
11        </dl>
12      </b-col>
13      <b-col sm="6" lg="3" class="mb-2 mt-2">
14        <b-button
15          to="/operations/serial-over-lan"
16          variant="secondary"
17          data-test-id="overviewQuickLinks-button-solConsole"
18          class="d-flex justify-content-between align-items-center"
19        >
20          {{ $t('pageOverview.solConsole') }}
21          <icon-arrow-right />
22        </b-button>
23      </b-col>
24    </b-row>
25  </b-card>
26</template>
27
28<script>
29import ArrowRight16 from '@carbon/icons-vue/es/arrow--right/16';
30import BVToastMixin from '@/components/Mixins/BVToastMixin';
31import { useI18n } from 'vue-i18n';
32
33export default {
34  name: 'QuickLinks',
35  components: {
36    IconArrowRight: ArrowRight16,
37  },
38  mixins: [BVToastMixin],
39  data() {
40    return {
41      $t: useI18n().t,
42    };
43  },
44  computed: {
45    bmcTime() {
46      return this.$store.getters['global/bmcTime'];
47    },
48  },
49  created() {
50    Promise.all([this.$store.dispatch('global/getBmcTime')]).finally(() => {
51      this.$root.$emit('overview-quicklinks-complete');
52    });
53  },
54};
55</script>
56
57<style lang="scss" scoped>
58@import '@/assets/styles/bmc/helpers/_index.scss';
59@import '@/assets/styles/bootstrap/_helpers.scss';
60
61dd,
62dl {
63  margin: 0;
64}
65</style>
66