28 lines
729 B
Vue
28 lines
729 B
Vue
<script setup>
|
|
const props = defineProps({
|
|
items: {
|
|
type: Array,
|
|
required: false
|
|
}
|
|
})
|
|
</script>
|
|
<template>
|
|
<q-list bordered separator>
|
|
<q-item clickable v-ripple v-for="poi of items" :key="poi" :to="{name: 'poiDetail', params: {id: poi.id}}">
|
|
<q-item-section avatar>
|
|
<q-avatar :icon="poi.type?.icon || 'place'" color="primary" text-color="white"/>
|
|
</q-item-section>
|
|
<q-item-section>
|
|
{{ poi.name }}
|
|
<div class="text-secondary" v-if="poi.type">
|
|
{{ poi.type.name }}
|
|
|
|
</div>
|
|
</q-item-section>
|
|
<q-item-section side top v-if="poi.isPublic">
|
|
<q-icon name="visibility"></q-icon>
|
|
</q-item-section>
|
|
</q-item>
|
|
</q-list>
|
|
</template>
|