2022-08-11 20:56:30 +02:00
|
|
|
<template>
|
|
|
|
<span class="NavigationPins">
|
|
|
|
<router-link
|
2022-08-12 00:27:09 +02:00
|
|
|
v-for="item in pinnedList"
|
|
|
|
:key="item.name"
|
|
|
|
class="pinned-item"
|
2022-08-23 14:36:54 +02:00
|
|
|
:to="getRouteTo(item)"
|
2022-08-24 19:24:08 +02:00
|
|
|
:title="item.labelRaw || $t(item.label)"
|
2022-08-12 00:27:09 +02:00
|
|
|
>
|
2022-08-11 20:56:30 +02:00
|
|
|
<FAIcon
|
|
|
|
v-if="item.icon"
|
|
|
|
fixed-width
|
|
|
|
:icon="item.icon"
|
2022-08-12 00:27:09 +02:00
|
|
|
/>
|
2022-08-11 20:56:30 +02:00
|
|
|
<span
|
|
|
|
v-if="item.iconLetter"
|
|
|
|
class="iconLetter fa-scale-110 fa-old-padding"
|
2022-08-12 00:27:09 +02:00
|
|
|
>{{ item.iconLetter }}</span>
|
2022-08-11 20:56:30 +02:00
|
|
|
<div
|
|
|
|
v-if="item.badgeGetter && getters[item.badgeGetter]"
|
|
|
|
class="alert-dot"
|
2022-08-12 00:27:09 +02:00
|
|
|
/>
|
2022-08-11 20:56:30 +02:00
|
|
|
</router-link>
|
|
|
|
</span>
|
|
|
|
</template>
|
|
|
|
|
|
|
|
<script src="./navigation_pins.js"></script>
|
|
|
|
|
|
|
|
<style lang="scss">
|
2023-01-09 19:02:16 +01:00
|
|
|
@import "../../variables";
|
|
|
|
|
2022-08-11 20:56:30 +02:00
|
|
|
.NavigationPins {
|
|
|
|
display: flex;
|
2022-08-24 18:57:02 +02:00
|
|
|
flex-wrap: wrap;
|
2022-08-11 20:56:30 +02:00
|
|
|
overflow: hidden;
|
2022-08-22 23:50:38 +02:00
|
|
|
height: 100%;
|
2022-08-11 20:56:30 +02:00
|
|
|
|
|
|
|
.alert-dot {
|
|
|
|
border-radius: 100%;
|
|
|
|
height: 0.5em;
|
|
|
|
width: 0.5em;
|
|
|
|
position: absolute;
|
2022-10-09 18:00:25 +02:00
|
|
|
right: calc(50% - 0.75em);
|
|
|
|
top: calc(50% - 0.5em);
|
2022-08-11 20:56:30 +02:00
|
|
|
background-color: $fallback--cRed;
|
|
|
|
background-color: var(--badgeNotification, $fallback--cRed);
|
|
|
|
}
|
|
|
|
|
|
|
|
.pinned-item {
|
|
|
|
position: relative;
|
2022-08-24 18:57:02 +02:00
|
|
|
flex: 1 0 3em;
|
2022-08-11 20:56:30 +02:00
|
|
|
min-width: 2em;
|
2022-08-11 23:50:08 +02:00
|
|
|
text-align: center;
|
2022-08-22 23:50:38 +02:00
|
|
|
overflow: visible;
|
2022-08-24 18:57:02 +02:00
|
|
|
box-sizing: border-box;
|
|
|
|
height: 100%;
|
2022-08-11 20:56:30 +02:00
|
|
|
|
|
|
|
& .svg-inline--fa,
|
|
|
|
& .iconLetter {
|
|
|
|
margin: 0;
|
|
|
|
}
|
|
|
|
|
|
|
|
&.router-link-active {
|
2022-08-22 23:50:38 +02:00
|
|
|
color: $fallback--text;
|
2022-10-17 21:13:49 +02:00
|
|
|
color: var(--panelText, $fallback--text);
|
2022-08-22 23:50:38 +02:00
|
|
|
border-bottom: 4px solid;
|
|
|
|
|
2022-08-11 20:56:30 +02:00
|
|
|
& .svg-inline--fa,
|
|
|
|
& .iconLetter {
|
2022-08-22 23:50:38 +02:00
|
|
|
color: inherit;
|
2022-08-11 20:56:30 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</style>
|