mirror of
https://github.com/mealie-recipes/mealie.git
synced 2024-12-26 05:51:21 -08:00
56 lines
1.3 KiB
Vue
56 lines
1.3 KiB
Vue
<template>
|
|
<v-card outlined nuxt :to="link.to" height="100%" class="d-flex flex-column">
|
|
<div v-if="$vuetify.breakpoint.smAndDown" class="pa-2 mx-auto">
|
|
<v-img max-width="150px" max-height="125" :src="image" />
|
|
</div>
|
|
<div class="d-flex justify-space-between">
|
|
<div>
|
|
<v-card-title class="headline pb-0">
|
|
<slot name="title"> </slot>
|
|
</v-card-title>
|
|
<div class="d-flex justify-center align-center">
|
|
<v-card-text class="d-flex flex-row mb-auto">
|
|
<slot name="default"></slot>
|
|
</v-card-text>
|
|
</div>
|
|
</div>
|
|
<div v-if="$vuetify.breakpoint.mdAndUp" class="py-2 px-10 my-auto">
|
|
<v-img max-width="150px" max-height="125" :src="image"></v-img>
|
|
</div>
|
|
</div>
|
|
<v-divider class="mt-auto"></v-divider>
|
|
<v-card-actions>
|
|
<v-btn text color="info" :to="link.to">
|
|
{{ link.text }}
|
|
</v-btn>
|
|
</v-card-actions>
|
|
</v-card>
|
|
</template>
|
|
|
|
<script lang="ts">
|
|
import { defineComponent } from "@nuxtjs/composition-api";
|
|
|
|
interface LinkProp {
|
|
text: string;
|
|
url?: string;
|
|
to: string;
|
|
}
|
|
|
|
export default defineComponent({
|
|
props: {
|
|
link: {
|
|
type: Object as () => LinkProp,
|
|
required: true,
|
|
},
|
|
image: {
|
|
type: String,
|
|
required: false,
|
|
default: "",
|
|
},
|
|
},
|
|
setup() {
|
|
return {};
|
|
},
|
|
});
|
|
</script>
|