cosetta.vue 859 B

123456789101112131415161718192021222324
  1. <script setup>
  2. const { cosetta } = defineProps({
  3. cosetta: {
  4. type: Object,
  5. required: true
  6. }
  7. })
  8. </script>
  9. <template>
  10. <div class="rounded overflow-hidden shadow-lg flex flex-col justify-between">
  11. <img class="object-cover w-full h-48" :src="`/imgs/${cosetta.images[0]}`" alt="Mountain">
  12. <div class="px-6 py-4 grow">
  13. <nuxt-link :to="`/c/${cosetta.uuid}`">
  14. <h2 class="text-pink-500 card-title hover:underline uppercase mb-2 line-clamp-2" v-text='cosetta.name' />
  15. </nuxt-link>
  16. <p class="text-gray-700 text-base line-clamp-3" v-text='cosetta.description' />
  17. </div>
  18. <div class="px-6 pt-4 pb-2">
  19. <span v-for='tag in cosetta.tags' :key='tag'
  20. class="inline-block bg-gray-200 rounded-full px-3 py-1 text-sm font-semibold text-gray-700 mr-2 mb-2"
  21. v-text='tag' />
  22. </div>
  23. </div>
  24. </template>