designtopack/src/components/project/cards/Images.vue

42 lines
1.3 KiB
Vue
Raw Normal View History

2024-12-20 07:19:46 +01:00
<template>
<article class="card">
<hgroup class="order-last">
<h3 class="card__title | font-serif | text-lg">
<router-link :to="uri" class="link-full">{{ step.label }}</router-link>
2024-12-20 07:19:46 +01:00
</h3>
</hgroup>
<DateTime :date="step.modified" />
<figure
class="card__images"
:data-count="images.length"
:data-plus="images.length > 3 ? images.length - 3 : undefined"
>
<template v-for="image in images.slice(0, 3)" :key="image.uuid">
<img v-if="image.url" :src="image.url" :alt="image.alt" />
<div v-else class="card__images" data-icon="document"></div>
2024-12-20 07:19:46 +01:00
</template>
</figure>
2025-01-27 10:40:30 +01:00
<footer
2024-12-20 07:19:46 +01:00
v-if="images[0]?.comments?.length > 0"
class="order-last | text-sm text-primary font-medium"
>
{{ images[0].comments.length }} commentaire{{
images[0].comments.length > 1 ? "s" : ""
}}
2025-01-27 10:40:30 +01:00
</footer>
<div class="btn btn--xs btn--dtl | mt-16" v-if="isDesignToLightStep(step)" data-icon="leaf" lang="en">Design to Light</div>
2024-12-20 07:19:46 +01:00
</article>
</template>
<script setup>
import DateTime from "./DateTime.vue";
2025-01-23 17:39:40 +01:00
import { useDesignToLightStore } from "../../../stores/designToLight";
2024-12-20 07:19:46 +01:00
const { images, step, uri } = defineProps({
images: Array,
step: Object,
uri: String,
});
2025-01-23 17:39:40 +01:00
const { isDesignToLightStep } = useDesignToLightStore();
2024-12-20 07:19:46 +01:00
</script>