This commit is contained in:
jacek committed 2026-10-20 10:27:29 +02:00
1 parent de34906f62
commit c363a78ac7
1 file changed
+19 -14
+19 -14
View File
@@ -1,6 +1,5 @@
import * as React from "react" import * as React from "react"
import { Card, CardContent } from "@/components/ui/card"
import { import {
Carousel, Carousel,
CarouselContent, CarouselContent,
@@ -9,26 +8,32 @@ import {
CarouselPrevious, CarouselPrevious,
} from "@/components/ui/carousel" } from "@/components/ui/carousel"
export async function CarouselDemo() { export const instant = false
const res = await fetch("https://db.jacekr.tech/api/collections/klasy/records?perPage=50");
if (!res.ok) { export default async function CarouselDemo() {
throw new Error("Failed to fetch data"); const res = await fetch(
} "https://db.jacekr.tech/api/collections/klasy/records?perPage=50"
)
const data = await res.json(); if (!res.ok) {
throw new Error("Failed to fetch data")
}
const data = await res.json()
const classes = Array.isArray(data.items) ? data.items : []
return ( return (
<Carousel className="w-full max-w-[12rem] sm:max-w-xs"> <Carousel className="w-full max-w-[12rem] sm:max-w-xs">
<CarouselContent> <CarouselContent>
{data.map((_, index) => ( {classes.map((schoolClass) => (
<CarouselItem key={index}> <CarouselItem key={schoolClass.id}>
<div className="p-1"> <div className="p-1">
<Card> <div className="flex aspect-square flex-col items-center justify-center rounded-xl border bg-card p-6 text-card-foreground shadow-sm">
<CardContent className="flex aspect-square items-center justify-center p-6"> <span className="text-4xl font-semibold">{schoolClass.nazwa}</span>
<span className="text-4xl font-semibold">{index + 1}</span> <span className="mt-2 text-sm text-muted-foreground">
</CardContent> {schoolClass.ilosc_uczniow} uczniów
</Card> </span>
</div>
</div> </div>
</CarouselItem> </CarouselItem>
))} ))}