Carousel

@/components/kamod-ui/carousel

1
2
3
4
5

Installation

Depends on `embla-carousel` and optional `embla-carousel-autoplay` (used when `autoplay` is set). Import primitives from `@/components/kamod-ui/carousel`.

pnpm add @kamod-ch/ui

Usage

Wrap slides in CarouselContent; each slide is a CarouselItem. Place CarouselPrevious and CarouselNext as siblings of CarouselContent inside Carousel. Use opts for Embla options (align, loop, direction). Use setApi to read scrollSnapList, selectedScrollSnap, and events.

import { Carousel } from "@/components/kamod-ui/carousel";
<Carousel />

API Reference

Props, slots and variants for this component.

Carousel

Carousel component props and accepted values.

PropTypeDefault
optsEmblaOptionsTypeundefined
orientation"horizontal" | "vertical""horizontal"
setApi(api: CarouselApi | null) => voidundefined
pluginsEmblaPluginType[]undefined
autoplayboolean | { delay?, stopOnInteraction? }false
dir"ltr" | "rtl"undefined
childrenCarouselContent, items, controlsrequired

Accessibility Notes

Region is marked as carousel; items use group/slide roles. Pass label or aria-label on Carousel for an accessible name. When autoplay is enabled, add CarouselAutoplayPause so users can stop motion. Match reading direction with dir and opts.direction.