flaschengeist-frontend/src/components/navigation/ShortcutLink.vue

24 lines
611 B
Vue
Raw Normal View History

<template>
<q-btn v-if="isGranted" flat dense :icon="shortcut.icon" :to="{ name: shortcut.link }" />
</template>
<script lang="ts">
import { computed, defineComponent, PropType } from 'vue';
import { hasPermissions } from 'src/utils/permission';
import { FG_Plugin } from 'src/plugins';
export default defineComponent({
name: 'ShortcutLink',
props: {
shortcut: {
required: true,
type: Object as PropType<FG_Plugin.Shortcut>,
},
},
setup(props) {
const isGranted = computed(() => hasPermissions(props.shortcut.permissions || []));
return { isGranted };
},
});
</script>