| <template> | 
 |   <div class="quicklinks form-background"> | 
 |     <div> | 
 |       <dl> | 
 |         <dt>{{ $t('pageOverview.quicklinks.bmcTime') }}</dt> | 
 |         <dd v-if="bmcTime"> | 
 |           {{ bmcTime | formatDate }} {{ bmcTime | formatTime }} | 
 |         </dd> | 
 |         <dd v-else>--</dd> | 
 |       </dl> | 
 |     </div> | 
 |     <div> | 
 |       <dl> | 
 |         <dt>{{ $t('pageOverview.quicklinks.serverLed') }}</dt> | 
 |         <dd> | 
 |           <b-form-checkbox | 
 |             v-model="indicatorLedActiveState" | 
 |             data-test-id="overviewQuickLinks-checkbox-serverLed" | 
 |             name="check-button" | 
 |             switch | 
 |             @change="onChangeServerLed" | 
 |           > | 
 |             <span v-if="indicatorLedActiveState"> | 
 |               {{ $t('global.status.on') }} | 
 |             </span> | 
 |             <span v-else>{{ $t('global.status.off') }}</span> | 
 |           </b-form-checkbox> | 
 |         </dd> | 
 |       </dl> | 
 |     </div> | 
 |     <div> | 
 |       <b-button | 
 |         to="/configuration/network-settings" | 
 |         variant="secondary" | 
 |         data-test-id="overviewQuickLinks-button-networkSettings" | 
 |         class="d-flex justify-content-between align-items-center" | 
 |       > | 
 |         {{ $t('pageOverview.quicklinks.editNetworkSettings') }} | 
 |         <icon-arrow-right /> | 
 |       </b-button> | 
 |     </div> | 
 |     <div> | 
 |       <b-button | 
 |         to="/control/serial-over-lan" | 
 |         variant="secondary" | 
 |         data-test-id="overviewQuickLinks-button-solConsole" | 
 |         class="d-flex justify-content-between align-items-center" | 
 |       > | 
 |         {{ $t('pageOverview.quicklinks.solConsole') }} | 
 |         <icon-arrow-right /> | 
 |       </b-button> | 
 |     </div> | 
 |   </div> | 
 | </template> | 
 |  | 
 | <script> | 
 | import ArrowRight16 from '@carbon/icons-vue/es/arrow--right/16'; | 
 | import BVToastMixin from '@/components/Mixins/BVToastMixin'; | 
 |  | 
 | export default { | 
 |   name: 'QuickLinks', | 
 |   components: { | 
 |     IconArrowRight: ArrowRight16, | 
 |   }, | 
 |   mixins: [BVToastMixin], | 
 |   computed: { | 
 |     bmcTime() { | 
 |       return this.$store.getters['global/bmcTime']; | 
 |     }, | 
 |     indicatorLedActiveState: { | 
 |       get() { | 
 |         return this.$store.getters['serverLed/getIndicatorLedActiveState']; | 
 |       }, | 
 |       set(value) { | 
 |         return value; | 
 |       }, | 
 |     }, | 
 |   }, | 
 |   created() { | 
 |     Promise.all([ | 
 |       this.$store.dispatch('global/getBmcTime'), | 
 |       this.$store.dispatch('serverLed/getIndicatorLedActiveState'), | 
 |     ]).finally(() => { | 
 |       this.$root.$emit('overview-quicklinks-complete'); | 
 |     }); | 
 |   }, | 
 |   methods: { | 
 |     onChangeServerLed(indicatorLedActiveState) { | 
 |       this.$store | 
 |         .dispatch( | 
 |           'serverLed/saveIndicatorLedActiveState', | 
 |           indicatorLedActiveState | 
 |         ) | 
 |         .then((message) => this.successToast(message)) | 
 |         .catch(({ message }) => this.errorToast(message)); | 
 |     }, | 
 |   }, | 
 | }; | 
 | </script> | 
 |  | 
 | <style lang="scss" scoped> | 
 | dd, | 
 | dl { | 
 |   margin: 0; | 
 | } | 
 |  | 
 | .quicklinks { | 
 |   display: grid; | 
 |   grid-gap: 1rem; | 
 |   padding: 1rem; | 
 |   white-space: nowrap; | 
 |   align-items: center; | 
 | } | 
 |  | 
 | @include media-breakpoint-up(sm) { | 
 |   .quicklinks { | 
 |     grid-template-columns: repeat(2, 1fr); | 
 |   } | 
 | } | 
 |  | 
 | @include media-breakpoint-up(xl) { | 
 |   .quicklinks { | 
 |     grid-template-columns: repeat(4, 1fr); | 
 |   } | 
 | } | 
 | </style> |