Pedro Amorim
7b99f2eeca
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
44 lines
1.2 KiB
Vue
44 lines
1.2 KiB
Vue
<template>
|
|
<nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
|
|
<ol>
|
|
<template v-for="(item, idx) in breadcrumbs" v-bind:key="idx">
|
|
<NavigationItem
|
|
v-if="idx < breadcrumbs.length - 1"
|
|
:item="item"
|
|
:params="params"
|
|
></NavigationItem>
|
|
<NavigationItem
|
|
v-else
|
|
:item="{
|
|
...item,
|
|
disabled: true,
|
|
path: undefined,
|
|
href: undefined,
|
|
}"
|
|
:params="params"
|
|
></NavigationItem>
|
|
</template>
|
|
</ol>
|
|
</nav>
|
|
</template>
|
|
|
|
<script>
|
|
import { inject } from "vue"
|
|
import { storeToRefs } from "pinia"
|
|
import NavigationItem from "./NavigationItem.vue"
|
|
export default {
|
|
name: "Breadcrumbs",
|
|
setup: () => {
|
|
const navigationStore = inject("navigationStore")
|
|
const { breadcrumbs } = storeToRefs(navigationStore)
|
|
const { params } = navigationStore
|
|
return {
|
|
breadcrumbs,
|
|
params,
|
|
}
|
|
},
|
|
components: {
|
|
NavigationItem,
|
|
},
|
|
}
|
|
</script>
|