feat: extract shop from mp/shop — initial libreshop/shop
Some checks failed
Build and publish / build (push) Failing after 19s

Source moved verbatim from mp/shop/ on 2026-04-29; mp was the first
concrete adapter consuming the libreshop toolkit. Builds and publishes
git.librete.ch/libreshop/shop on every main / v* push via the standard
.gitea/workflows/build.yml shared across libreshop components.
This commit is contained in:
Michael Czechowski
2026-04-29 17:48:56 +02:00
commit 44107c0734
134 changed files with 19521 additions and 0 deletions

View File

@@ -0,0 +1,29 @@
<template>
<Carousel
:gap="40"
:items-to-show="1"
:wrap-around="true"
:autoplay="4200"
:transition="600"
:mouse-drag="false"
:touch-drag="true"
>
<Slide v-for="slide in slides" :key="slide.id">
<img :src="slide.formats?.medium?.url || slide.url" alt="Product Image" class="rounded-xl shadow-xl" />
</Slide>
<template #addons>
<Pagination />
</template>
</Carousel>
</template>
<script setup lang="ts">
import "vue3-carousel/dist/carousel.css";
import { Carousel, Slide, Pagination } from "vue3-carousel";
import type { MediaData } from "~/types";
defineProps<{
slides: MediaData[];
}>();
</script>