27 lines
655 B
Vue
27 lines
655 B
Vue
<script setup lang="ts">
|
|
import {Icon} from "@iconify/vue";
|
|
|
|
const props = withDefaults(defineProps<{
|
|
item: Record<string, any>;
|
|
}>(), {
|
|
item: () => ({}),
|
|
});
|
|
const emit = defineEmits(['detail']);
|
|
const state = ref(false)
|
|
</script>
|
|
<template>
|
|
<v-card elevation="10" style="overflow: hidden;min-width: 300px;" @click="state = true; emit('detail', props?.item)">
|
|
<template v-slot:prepend>
|
|
<v-avatar size="50">
|
|
<Icon icon="solar:user-circle-broken" height="32"/>
|
|
</v-avatar>
|
|
</template>
|
|
<template v-slot:title>
|
|
<h4>{{ item.display }}</h4>
|
|
</template>
|
|
|
|
<slot name="actions"></slot>
|
|
|
|
</v-card>
|
|
|
|
</template> |