Carousel
Horizontal slide-based content viewer.
Generated from the package's public source.
API
CarouselContextValueinterface
Context shape shared among all carousel parts.
Props
canScrollNextAccessor<boolean>— Whether scrolling to next is possible.canScrollPrevAccessor<boolean>— Whether scrolling to previous is possible.geometryCarouselGeometry— The geometry configuration.goTo(index: number) => void— Navigate to a specific slide index.loopboolean— Whether loop mode is enabled.next() => void— Navigate to next slide.pausedAccessor<boolean>— Whether the carousel is paused (autoplay).physicsCarouselPhysicsPort— The physics port.prev() => void— Navigate to previous slide.selectedIndexAccessor<number>— Currently selected slide index.setPaused(paused: boolean) => void— Set paused state.
CarouselGeometryinterface
Geometry descriptor for the carousel layout.
Props
containerWidthnumbergapnumberslideCountnumberslideWidthnumber
CarouselNextButtonPropsinterface
Props for the Carousel NextButton.
children: Element
CarouselPhysicsPortinterface
Port interface for carousel physics/snap computation.
CarouselPhysicsResultinterface
Result from physics computation.
Props
canScrollNextbooleancanScrollPrevbooleanscrollPositionnumberselectedIndexnumbersnapPointsnumber[]
CarouselPrevButtonPropsinterface
Props for the Carousel PrevButton.
children: Element
CarouselRootPropsinterface
Props for the Carousel Root component.
Props
autoPlay?number— Auto-play interval in ms. 0 or undefined disables.class?string— CSS class.defaultIndex?number— Default index for uncontrolled mode.geometryCarouselGeometry— Geometry of the carousel layout.loop?boolean— Enable looping. Defaults to false.onIndexChange?(index: number) => void— Callback when selected index changes.physics?CarouselPhysicsPort— Physics port. Defaults to simpleSnapPhysics.selectedIndex?Accessor<number | undefined>— Controlled selected index.
children: Element
CarouselSlidePropsinterface
Props for the Carousel Slide component.
Props
indexnumber— Index of this slide.
children: Element
CarouselViewportPropsinterface
Props for the Carousel Viewport (scroll container).
children: Element
NextButtoncomponent
@solidiom/carousel — Headless carousel primitive. Parts: Root, Viewport, Slide, PrevButton, NextButton. Supports scroll-snap, pointer drag-to-swipe, keyboard nav, loop mode, auto-play.
NextButton(props: CarouselNextButtonProps): Element
children: Element
PrevButtoncomponent
@solidiom/carousel — Headless carousel primitive. Parts: Root, Viewport, Slide, PrevButton, NextButton. Supports scroll-snap, pointer drag-to-swipe, keyboard nav, loop mode, auto-play.
PrevButton(props: CarouselPrevButtonProps): Element
children: Element
Rootcomponent
@solidiom/carousel — Headless carousel primitive. Parts: Root, Viewport, Slide, PrevButton, NextButton. Supports scroll-snap, pointer drag-to-swipe, keyboard nav, loop mode, auto-play.
Root(props: CarouselRootProps): Element
Props
autoPlay?number— Auto-play interval in ms. 0 or undefined disables.class?string— CSS class.defaultIndex?number— Default index for uncontrolled mode.geometryCarouselGeometry— Geometry of the carousel layout.loop?boolean— Enable looping. Defaults to false.onIndexChange?(index: number) => void— Callback when selected index changes.physics?CarouselPhysicsPort— Physics port. Defaults to simpleSnapPhysics.selectedIndex?Accessor<number | undefined>— Controlled selected index.
children: Element
simpleSnapPhysicsvariable
Default snap physics — no spring/momentum, just index * (slideWidth + gap).
Slidecomponent
@solidiom/carousel — Headless carousel primitive. Parts: Root, Viewport, Slide, PrevButton, NextButton. Supports scroll-snap, pointer drag-to-swipe, keyboard nav, loop mode, auto-play.
Slide(props: CarouselSlideProps): Element
Props
indexnumber— Index of this slide.
children: Element
useCarouselContextcontext
useCarouselContext(): CarouselContextValue
Viewportcomponent
@solidiom/carousel — Headless carousel primitive. Parts: Root, Viewport, Slide, PrevButton, NextButton. Supports scroll-snap, pointer drag-to-swipe, keyboard nav, loop mode, auto-play.
Viewport(props: CarouselViewportProps): Element
children: Element