- Name
parts- Kind
- property
- Type
readonly ["root", "track", "slide", "prev", "next", "dots", "dot"]- Requirement
- required
DocsAPI referenceHeadlesscarousel
carousel headless API
The core connector and vanilla mount are always visible. Use the framework choice to inspect native composition, props, outputs, context and hooks for the selected adapter.
@grassroot/ui-headless-core/carousel
Core connector and vanilla API
carouselAnatomy
valueexport declare const carouselAnatomy: { readonly scope: "carousel"; readonly parts: readonly ["root", "track", "slide", "prev", "next", "dots", "dot"];};partsreadonly ["root", "track", "slide", "prev", "next", "dots", "dot"]scope"carousel"- Name
scope- Kind
- property
- Type
"carousel"- Requirement
- required
CarouselApi
interfaceinterface CarouselApi { rootProps(): PartProps; trackProps(): PartProps; slideProps(index: number): PartProps; prevProps(): PartProps; nextProps(): PartProps; dotsProps(): PartProps; dotProps(index: number): PartProps; readonly index: number; readonly slideCount: number; readonly loop: boolean; readonly atStart: boolean; readonly atEnd: boolean;}atEndbooleanatStartbooleandotProps(index: number) => PartPropsdotsProps() => PartPropsindexnumberloopbooleannextProps() => PartPropsprevProps() => PartPropsrootProps() => PartPropsslideCountnumberslideProps(index: number) => PartPropstrackProps() => PartProps- Name
atEnd- Kind
- property
- Type
boolean- Requirement
- required
- Name
atStart- Kind
- property
- Type
boolean- Requirement
- required
- Name
dotProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
- Name
dotsProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
loop- Kind
- property
- Type
boolean- Requirement
- required
- Name
nextProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
prevProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
rootProps- Kind
- method
- Type
() => PartProps- Requirement
- required
- Name
slideCount- Kind
- property
- Type
number- Requirement
- required
- Name
slideProps- Kind
- method
- Type
(index: number) => PartProps- Requirement
- required
- Name
trackProps- Kind
- method
- Type
() => PartProps- Requirement
- required
CarouselChangeReason
typetype CarouselChangeReason = "pointer" | "keyboard" | "programmatic";CarouselCommand
typetype CarouselCommand = CommandObject & { readonly type: "INDEX_CHANGE_REQUEST"; readonly index: number; readonly reason: CarouselChangeReason;};indexnumberreasonCarouselChangeReasontypestring- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
- Name
type- Kind
- property
- Type
string- Requirement
- required
CarouselContext
typetype CarouselContext = { readonly mode: "controlled" | "uncontrolled"; readonly index: number;};indexnumbermode"controlled" | "uncontrolled"- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
mode- Kind
- property
- Type
"controlled" | "uncontrolled"- Requirement
- required
CarouselEvent
typetype CarouselEvent = { readonly type: "NEXT"; readonly reason: CarouselChangeReason;} | { readonly type: "PREV"; readonly reason: CarouselChangeReason;} | { readonly type: "GO"; readonly index: number; readonly reason: CarouselChangeReason;} | { readonly type: "RESET";};CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselInput
typetype CarouselInput = { /** Controlled committed index. Defining it fixes controlled mode. */ readonly index?: number; /** Uncontrolled initial index. @default 0 */ readonly defaultIndex?: number; /** Slide count from the host. Empty count resolves to index 0. @default 0 */ readonly slideCount?: number; /** Wrap past the ends instead of clamping. @default false */ readonly loop?: boolean; /** Accessible name. Presentation-only; the machine ignores it. @default "Carousel" */ readonly label?: string;};defaultIndexnumberindexnumberlabelstringloopbooleanslideCountnumber- Name
defaultIndex- Kind
- property
- Type
number- Requirement
- optional
- Description
- Uncontrolled initial index.
- Name
index- Kind
- property
- Type
number- Requirement
- optional
- Description
- Controlled committed index. Defining it fixes controlled mode.
- Name
label- Kind
- property
- Type
string- Requirement
- optional
- Description
- Accessible name. Presentation-only; the machine ignores it.
- Name
loop- Kind
- property
- Type
boolean- Requirement
- optional
- Description
- Wrap past the ends instead of clamping.
- Name
slideCount- Kind
- property
- Type
number- Requirement
- optional
- Description
- Slide count from the host. Empty count resolves to index 0.
carouselMachine
valueexport declare const carouselMachine: CarouselMachine;CarouselMount
interfaceinterface CarouselMount { readonly service: CarouselService; readonly connector: CarouselApi; readonly root: HTMLElement; destroy(): void;}connectorCarouselApidestroy() => voidrootHTMLElementserviceCarouselService- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
destroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
root- Kind
- property
- Type
HTMLElement- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
CarouselPart
typetype CarouselPart = (typeof carouselAnatomy.parts)[number];carouselSelectors
valueexport declare const carouselSelectors: { index: (snapshot: CarouselSnapshot) => number; mode: (snapshot: CarouselSnapshot) => "controlled" | "uncontrolled";};index(snapshot: CarouselSnapshot) => numbermode(snapshot: CarouselSnapshot) => "controlled" | "uncontrolled"- Name
index- Kind
- property
- Type
(snapshot: CarouselSnapshot) => number- Requirement
- required
- Name
mode- Kind
- property
- Type
(snapshot: CarouselSnapshot) => "controlled" | "uncontrolled"- Requirement
- required
CarouselService
typetype CarouselService = Service<CarouselInput, CarouselStateValue, CarouselContext, CarouselEvent, CarouselCommand>;CarouselSnapshot
typetype CarouselSnapshot = Snapshot<CarouselStateValue, CarouselContext>;CarouselStateValue
typetype CarouselStateValue = "active";clampCarouselIndex
functionDuplicate of the frozen ui-core clamp. Do not import `@grassroot/ui-core` from this module; tests prove equivalence against `resolveCarouselIndex`.
declare function clampCarouselIndex(index: number, count: number, loop: boolean): number;indexnumbercountnumberloopbooleanreturnnumber- Name
index- Kind
- parameter
- Type
number- Requirement
- required
- Name
count- Kind
- parameter
- Type
number- Requirement
- required
- Name
loop- Kind
- parameter
- Type
boolean- Requirement
- required
- Name
return- Kind
- return value
- Type
number- Requirement
- n/a
connectCarousel
functiondeclare function connectCarousel(service: CarouselService, scope: PartScope): CarouselApi;serviceCarouselServicescopePartScopereturnCarouselApi- Name
service- Kind
- parameter
- Type
CarouselService- Requirement
- required
- Name
scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselApi- Requirement
- n/a
mountCarousel
functiondeclare function mountCarousel(container: HTMLElement, options: MountCarouselOptions): CarouselMount;containerHTMLElementoptionsMountCarouselOptionsreturnCarouselMount- Name
container- Kind
- parameter
- Type
HTMLElement- Requirement
- required
- Name
options- Kind
- parameter
- Type
MountCarouselOptions- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselMount- Requirement
- n/a
MountCarouselOptions
interfaceinterface MountCarouselOptions extends CarouselInput { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void; readonly renderSlide?: (slide: HTMLElement, index: number) => void;}onIndexChange(detail: CarouselIndexChangeDetail) => voidrenderSlide(slide: HTMLElement, index: number) => void- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
- Name
renderSlide- Kind
- property
- Type
(slide: HTMLElement, index: number) => void- Requirement
- optional
runCarouselCommand
functionResolves the one machine command to the adapter's public callback.
declare function runCarouselCommand(command: CarouselCommand, _scope: PartScope, options?: { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}): void;commandCarouselCommand_scopePartScopeoptions{
readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;
}returnvoid- Name
command- Kind
- parameter
- Type
CarouselCommand- Requirement
- required
- Name
_scope- Kind
- parameter
- Type
PartScope- Requirement
- required
- Name
options- Kind
- parameter
- Type
{ readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void; }- Requirement
- optional
- Name
return- Kind
- return value
- Type
void- Requirement
- n/a
Framework adapters
Each panel keeps its adapter's public vocabulary. React compound exports, Vue composables, standalone Angular declarations, Svelte components, and Solid hooks stay native to their framework.
React imports
import { Carousel, Dot, Dots, Next, Prev, Root, Slide, Track } from "@grassroot/ui-headless-react/carousel";Vue imports
<script setup lang="ts">import { CarouselDot, CarouselDots, CarouselNext, CarouselPrev, CarouselRoot, CarouselSlide, CarouselTrack } from "@grassroot/ui-headless-vue/carousel";</script>Angular imports
import { Component } from "@angular/core";import { GR_CAROUSEL_DECLARATIONS } from "@grassroot/ui-headless-angular/carousel"; @Component({ standalone: true, imports: [GR_CAROUSEL_DECLARATIONS], template: `<!-- compose the carousel parts here -->` })export class Example {}Svelte imports
<script lang="ts"> import { CarouselDot, CarouselDots, CarouselNext, CarouselPrev, CarouselRoot, CarouselSlide, CarouselTrack } from "@grassroot/ui-headless-svelte/carousel";</script>Solid imports
import { CarouselDot, CarouselDots, CarouselNext, CarouselPrev, CarouselRoot, CarouselSlide, CarouselTrack } from "@grassroot/ui-headless-solid/carousel";@grassroot/ui-headless-react/carousel
React adapter
Carousel
valueexport declare const Carousel: { Root: import("react").ForwardRefExoticComponent<CarouselRootProps & import("react").RefAttributes<HTMLDivElement>>; Track: import("react").ForwardRefExoticComponent<CarouselTrackProps & import("react").RefAttributes<HTMLDivElement>>; Slide: import("react").ForwardRefExoticComponent<CarouselSlideProps & import("react").RefAttributes<HTMLDivElement>>; Prev: import("react").ForwardRefExoticComponent<CarouselPrevProps & import("react").RefAttributes<HTMLButtonElement>>; Next: import("react").ForwardRefExoticComponent<CarouselNextProps & import("react").RefAttributes<HTMLButtonElement>>; Dots: import("react").ForwardRefExoticComponent<CarouselDotsProps & import("react").RefAttributes<HTMLDivElement>>; Dot: import("react").ForwardRefExoticComponent<CarouselDotProps & import("react").RefAttributes<HTMLButtonElement>>;};Dotimport("react").ForwardRefExoticComponent<CarouselDotProps & import("react").RefAttributes<HTMLButtonElement>>Dotsimport("react").ForwardRefExoticComponent<CarouselDotsProps & import("react").RefAttributes<HTMLDivElement>>Nextimport("react").ForwardRefExoticComponent<CarouselNextProps & import("react").RefAttributes<HTMLButtonElement>>Previmport("react").ForwardRefExoticComponent<CarouselPrevProps & import("react").RefAttributes<HTMLButtonElement>>Rootimport("react").ForwardRefExoticComponent<CarouselRootProps & import("react").RefAttributes<HTMLDivElement>>Slideimport("react").ForwardRefExoticComponent<CarouselSlideProps & import("react").RefAttributes<HTMLDivElement>>Trackimport("react").ForwardRefExoticComponent<CarouselTrackProps & import("react").RefAttributes<HTMLDivElement>>- Name
Dot- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselDotProps & import("react").RefAttributes<HTMLButtonElement>>- Requirement
- required
- Name
Dots- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselDotsProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Next- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselNextProps & import("react").RefAttributes<HTMLButtonElement>>- Requirement
- required
- Name
Prev- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselPrevProps & import("react").RefAttributes<HTMLButtonElement>>- Requirement
- required
- Name
Root- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselRootProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Slide- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselSlideProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
- Name
Track- Kind
- property
- Type
import("react").ForwardRefExoticComponent<CarouselTrackProps & import("react").RefAttributes<HTMLDivElement>>- Requirement
- required
CarouselContext
valueexport declare const CarouselContext: import("react").Context<CarouselContextValue | null>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
CarouselContextValue
interfaceinterface CarouselContextValue { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope;}connectorCarouselApiscopePartScopeserviceCarouselService- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
CarouselDotProps
interfaceinterface CarouselDotProps extends Omit<ComponentPropsWithoutRef<"button">, "type"> { readonly asChild?: boolean; readonly index: number;}asChildbooleanindexnumber- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
CarouselDotsProps
interfaceinterface CarouselDotsProps extends ComponentPropsWithoutRef<"div"> { readonly asChild?: boolean; readonly children?: ReactNode;}asChildbooleanchildrenReactNode- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselNextProps
interfaceinterface CarouselNextProps extends Omit<ComponentPropsWithoutRef<"button">, "type"> { readonly asChild?: boolean;}asChildboolean- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
CarouselPrevProps
interfaceinterface CarouselPrevProps extends Omit<ComponentPropsWithoutRef<"button">, "type"> { readonly asChild?: boolean;}asChildboolean- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
CarouselRootProps
interfaceinterface CarouselRootProps extends Omit<ComponentPropsWithoutRef<"div">, "onChange"> { readonly asChild?: boolean; readonly index?: CarouselInput["index"]; readonly defaultIndex?: CarouselInput["defaultIndex"]; readonly slideCount?: CarouselInput["slideCount"]; readonly loop?: CarouselInput["loop"]; readonly label?: CarouselInput["label"]; readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void; readonly children?: ReactNode;}asChildbooleanchildrenReactNodedefaultIndexCarouselInput["defaultIndex"]indexCarouselInput["index"]labelCarouselInput["label"]loopCarouselInput["loop"]onIndexChange(detail: CarouselIndexChangeDetail) => voidslideCountCarouselInput["slideCount"]- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
defaultIndex- Kind
- property
- Type
CarouselInput["defaultIndex"]- Requirement
- optional
- Name
index- Kind
- property
- Type
CarouselInput["index"]- Requirement
- optional
- Name
label- Kind
- property
- Type
CarouselInput["label"]- Requirement
- optional
- Name
loop- Kind
- property
- Type
CarouselInput["loop"]- Requirement
- optional
- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
- Name
slideCount- Kind
- property
- Type
CarouselInput["slideCount"]- Requirement
- optional
CarouselSlideProps
interfaceinterface CarouselSlideProps extends ComponentPropsWithoutRef<"div"> { readonly asChild?: boolean; readonly index: number; readonly children?: ReactNode;}asChildbooleanchildrenReactNodeindexnumber- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
CarouselTrackProps
interfaceinterface CarouselTrackProps extends ComponentPropsWithoutRef<"div"> { readonly asChild?: boolean; readonly children?: ReactNode;}asChildbooleanchildrenReactNode- Name
asChild- Kind
- property
- Type
boolean- Requirement
- optional
- Name
children- Kind
- property
- Type
ReactNode- Requirement
- optional
Dot
valueexport declare const Dot: import("react").ForwardRefExoticComponent<CarouselDotProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Dots
valueexport declare const Dots: import("react").ForwardRefExoticComponent<CarouselDotsProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Next
valueexport declare const Next: import("react").ForwardRefExoticComponent<CarouselNextProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Prev
valueexport declare const Prev: import("react").ForwardRefExoticComponent<CarouselPrevProps & import("react").RefAttributes<HTMLButtonElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Root
valueexport declare const Root: import("react").ForwardRefExoticComponent<CarouselRootProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Slide
valueexport declare const Slide: import("react").ForwardRefExoticComponent<CarouselSlideProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
Track
valueexport declare const Track: import("react").ForwardRefExoticComponent<CarouselTrackProps & import("react").RefAttributes<HTMLDivElement>>;propsPreturnReactNode- Name
props- Kind
- parameter
- Type
P- Requirement
- required
- Name
return- Kind
- return value
- Type
ReactNode- Requirement
- n/a
useCarousel
functiondeclare function useCarousel(input: CarouselInput, options?: UseCarouselOptions): UseCarouselResult;inputCarouselInputoptionsUseCarouselOptionsreturnUseCarouselResult- Name
input- Kind
- parameter
- Type
CarouselInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseCarouselOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseCarouselResult- Requirement
- n/a
useCarouselContext
functiondeclare function useCarouselContext(partName: string): CarouselContextValue;partNamestringreturnCarouselContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselContextValue- Requirement
- n/a
UseCarouselOptions
interfaceinterface UseCarouselOptions { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}onIndexChange(detail: CarouselIndexChangeDetail) => void- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
UseCarouselResult
interfaceinterface UseCarouselResult { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly snapshot: CarouselSnapshot;}connectorCarouselApiscopePartScopeserviceCarouselServicesnapshotCarouselSnapshot- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
CarouselSnapshot- Requirement
- required
@grassroot/ui-headless-vue/carousel
Vue adapter
CarouselContextKey
valueexport declare const CarouselContextKey: InjectionKey<CarouselContextValue>;CarouselContextValue
interfaceinterface CarouselContextValue { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly snapshot: ShallowRef<CarouselSnapshot>;}connectorCarouselApiscopePartScopeserviceCarouselServicesnapshotShallowRef<CarouselSnapshot>- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<CarouselSnapshot>- Requirement
- required
CarouselDot
valueexport declare const CarouselDot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselDots
valueexport declare const CarouselDots: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselNext
valueexport declare const CarouselNext: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselPrev
valueexport declare const CarouselPrev: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselRoot
valueexport declare const CarouselRoot: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: PropType<number | undefined>; default: undefined; }; defaultIndex: { type: PropType<number | undefined>; default: undefined; }; slideCount: { type: PropType<number | undefined>; default: undefined; }; loop: { type: PropType<boolean | undefined>; default: undefined; }; label: { type: PropType<string | undefined>; default: undefined; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { indexChange: (_detail: CarouselIndexChangeDetail) => true;}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: PropType<number | undefined>; default: undefined; }; defaultIndex: { type: PropType<number | undefined>; default: undefined; }; slideCount: { type: PropType<number | undefined>; default: undefined; }; loop: { type: PropType<boolean | undefined>; default: undefined; }; label: { type: PropType<string | undefined>; default: undefined; };}>> & Readonly<{ onIndexChange?: ((_detail: CarouselIndexChangeDetail) => any) | undefined;}>, { asChild: boolean; index: number | undefined; defaultIndex: number | undefined; slideCount: number | undefined; loop: boolean | undefined; label: string | undefined;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselSlide
valueexport declare const CarouselSlide: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; }; index: { type: NumberConstructor; required: true; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;CarouselTrack
valueexport declare const CarouselTrack: import("vue").DefineComponent<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, { [key: string]: any;}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{ asChild: { type: BooleanConstructor; default: boolean; };}>> & Readonly<{}>, { asChild: boolean;}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;useCarousel
functiondeclare function useCarousel(input: CarouselInput | (() => CarouselInput), options?: UseCarouselOptions): UseCarouselResult;inputCarouselInput | (() => CarouselInput)optionsUseCarouselOptionsreturnUseCarouselResult- Name
input- Kind
- parameter
- Type
CarouselInput | (() => CarouselInput)- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseCarouselOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseCarouselResult- Requirement
- n/a
useCarouselContext
functiondeclare function useCarouselContext(partName: string): CarouselContextValue;partNamestringreturnCarouselContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselContextValue- Requirement
- n/a
UseCarouselOptions
interfaceinterface UseCarouselOptions { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}onIndexChange(detail: CarouselIndexChangeDetail) => void- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
UseCarouselResult
interfaceinterface UseCarouselResult { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly snapshot: ShallowRef<CarouselSnapshot>;}connectorCarouselApiscopePartScopeserviceCarouselServicesnapshotShallowRef<CarouselSnapshot>- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
ShallowRef<CarouselSnapshot>- Requirement
- required
@grassroot/ui-headless-angular/carousel
Angular adapter
CAROUSEL_STORE
valueexport declare const CAROUSEL_STORE: InjectionToken<CarouselStore>;CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselStore
interfaceexport interface CarouselStore { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly version: WritableSignal<number>; start(): void; stop(): void; sync(input: CarouselInput): void; bindIndexChange(handler: (detail: import("./use-carousel.js").CarouselIndexChangeDetail) => void): void;}bindIndexChange(handler: (detail: import("./use-carousel.js").CarouselIndexChangeDetail) => void) => voidconnectorCarouselApiscopePartScopeserviceCarouselServicestart() => voidstop() => voidsync(input: CarouselInput) => voidversionWritableSignal<number>- Name
bindIndexChange- Kind
- method
- Type
(handler: (detail: import("./use-carousel.js").CarouselIndexChangeDetail) => void) => void- Requirement
- required
- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
start- Kind
- method
- Type
() => void- Requirement
- required
- Name
stop- Kind
- method
- Type
() => void- Requirement
- required
- Name
sync- Kind
- method
- Type
(input: CarouselInput) => void- Requirement
- required
- Name
version- Kind
- property
- Type
WritableSignal<number>- Requirement
- required
createCarouselStore
functionexport declare function createCarouselStore(initialInput: CarouselInput, options?: CreateCarouselStoreOptions): CarouselStore;initialInputCarouselInputoptionsCreateCarouselStoreOptionsreturnCarouselStore- Name
initialInput- Kind
- parameter
- Type
CarouselInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
CreateCarouselStoreOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
CarouselStore- Requirement
- n/a
CreateCarouselStoreOptions
interfaceexport interface CreateCarouselStoreOptions { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void; readonly onCommit?: () => void;}onCommit() => voidonIndexChange(detail: CarouselIndexChangeDetail) => void- Name
onCommit- Kind
- property
- Type
() => void- Requirement
- optional
- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
GR_CAROUSEL_DECLARATIONS
valueexport declare const GR_CAROUSEL_DECLARATIONS: readonly [typeof GrCarouselRoot, typeof GrCarouselTrack, typeof GrCarouselSlide, typeof GrCarouselPrev, typeof GrCarouselNext, typeof GrCarouselDots, typeof GrCarouselDot];GrCarouselDot
classexport declare class GrCarouselDot implements OnDestroy { readonly index: import("@angular/core").InputSignal<number>; private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; private registeredKey; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselDot, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselDot, "[grCarouselDot]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}consumerPropsanyelementRefanyindeximport("@angular/core").InputSignal<number>listenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselDot, "[grCarouselDot]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselDot, never>registeredKeyanystoreany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselDot, "[grCarouselDot]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselDot, never>- Requirement
- required
- Name
registeredKey- Kind
- property
- Type
any- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrCarouselDots
classexport declare class GrCarouselDots implements OnDestroy { private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselDots, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselDots, "[grCarouselDots]", never, {}, {}, never, never, true, never>;}consumerPropsanyelementRefanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselDots, "[grCarouselDots]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselDots, never>storeany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselDots, "[grCarouselDots]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselDots, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrCarouselNext
classexport declare class GrCarouselNext implements OnDestroy { private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselNext, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselNext, "[grCarouselNext]", never, {}, {}, never, never, true, never>;}consumerPropsanyelementRefanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselNext, "[grCarouselNext]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselNext, never>storeany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselNext, "[grCarouselNext]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselNext, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrCarouselPrev
classexport declare class GrCarouselPrev implements OnDestroy { private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselPrev, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselPrev, "[grCarouselPrev]", never, {}, {}, never, never, true, never>;}consumerPropsanyelementRefanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselPrev, "[grCarouselPrev]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselPrev, never>storeany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselPrev, "[grCarouselPrev]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselPrev, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrCarouselRoot
classexport declare class GrCarouselRoot implements OnDestroy { readonly index: import("@angular/core").InputSignal<number | undefined>; readonly defaultIndex: import("@angular/core").InputSignal<number | undefined>; readonly slideCount: import("@angular/core").InputSignal<number | undefined>; readonly loop: import("@angular/core").InputSignal<boolean | undefined>; readonly label: import("@angular/core").InputSignal<string | undefined>; readonly indexChange: import("@angular/core").OutputEmitterRef<CarouselIndexChangeDetail>; private readonly elementRef; private readonly injector; private readonly listeners; private lastSynced; readonly store: CarouselStore; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselRoot, never>; static ɵcmp: i0.ɵɵComponentDeclaration<GrCarouselRoot, "gr-carousel-root", never, { "index": { "alias": "index"; "required": false; "isSignal": true; }; "defaultIndex": { "alias": "defaultIndex"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "indexChange": "indexChange"; }, never, ["*"], true, never>;}defaultIndeximport("@angular/core").InputSignal<number | undefined>elementRefanyindeximport("@angular/core").InputSignal<number | undefined>indexChangeimport("@angular/core").OutputEmitterRef<CarouselIndexChangeDetail>injectoranylabelimport("@angular/core").InputSignal<string | undefined>lastSyncedanylistenersanyloopimport("@angular/core").InputSignal<boolean | undefined>ngOnDestroy() => voidɵcmpi0.ɵɵComponentDeclaration<GrCarouselRoot, "gr-carousel-root", never, { "index": { "alias": "index"; "required": false; "isSignal": true; }; "defaultIndex": { "alias": "defaultIndex"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "indexChange": "indexChange"; }, never, ["*"], true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselRoot, never>slideCountimport("@angular/core").InputSignal<number | undefined>storeCarouselStore- Name
defaultIndex- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
indexChange- Kind
- property
- Type
import("@angular/core").OutputEmitterRef<CarouselIndexChangeDetail>- Requirement
- required
- Name
injector- Kind
- property
- Type
any- Requirement
- required
- Name
label- Kind
- property
- Type
import("@angular/core").InputSignal<string | undefined>- Requirement
- required
- Name
lastSynced- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
loop- Kind
- property
- Type
import("@angular/core").InputSignal<boolean | undefined>- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵcmp- Kind
- property
- Type
i0.ɵɵComponentDeclaration<GrCarouselRoot, "gr-carousel-root", never, { "index": { "alias": "index"; "required": false; "isSignal": true; }; "defaultIndex": { "alias": "defaultIndex"; "required": false; "isSignal": true; }; "slideCount": { "alias": "slideCount"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "indexChange": "indexChange"; }, never, ["*"], true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselRoot, never>- Requirement
- required
- Name
slideCount- Kind
- property
- Type
import("@angular/core").InputSignal<number | undefined>- Requirement
- required
- Name
store- Kind
- property
- Type
CarouselStore- Requirement
- required
GrCarouselSlide
classexport declare class GrCarouselSlide implements OnDestroy { readonly index: import("@angular/core").InputSignal<number>; private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; private registeredKey; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselSlide, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselSlide, "[grCarouselSlide]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;}consumerPropsanyelementRefanyindeximport("@angular/core").InputSignal<number>listenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselSlide, "[grCarouselSlide]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselSlide, never>registeredKeyanystoreany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
index- Kind
- property
- Type
import("@angular/core").InputSignal<number>- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselSlide, "[grCarouselSlide]", never, { "index": { "alias": "index"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselSlide, never>- Requirement
- required
- Name
registeredKey- Kind
- property
- Type
any- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
GrCarouselTrack
classexport declare class GrCarouselTrack implements OnDestroy { private readonly store; private readonly elementRef; private readonly listeners; private readonly consumerProps; constructor(); ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<GrCarouselTrack, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<GrCarouselTrack, "[grCarouselTrack]", never, {}, {}, never, never, true, never>;}consumerPropsanyelementRefanylistenersanyngOnDestroy() => voidɵdiri0.ɵɵDirectiveDeclaration<GrCarouselTrack, "[grCarouselTrack]", never, {}, {}, never, never, true, never>ɵfaci0.ɵɵFactoryDeclaration<GrCarouselTrack, never>storeany- Name
consumerProps- Kind
- property
- Type
any- Requirement
- required
- Name
elementRef- Kind
- property
- Type
any- Requirement
- required
- Name
listeners- Kind
- property
- Type
any- Requirement
- required
- Name
ngOnDestroy- Kind
- method
- Type
() => void- Requirement
- required
- Name
ɵdir- Kind
- property
- Type
i0.ɵɵDirectiveDeclaration<GrCarouselTrack, "[grCarouselTrack]", never, {}, {}, never, never, true, never>- Requirement
- required
- Name
ɵfac- Kind
- property
- Type
i0.ɵɵFactoryDeclaration<GrCarouselTrack, never>- Requirement
- required
- Name
store- Kind
- property
- Type
any- Requirement
- required
provideCarouselStore
functionexport declare function provideCarouselStore(): Provider;returnProvider- Name
return- Kind
- return value
- Type
Provider- Requirement
- n/a
@grassroot/ui-headless-svelte/carousel
Svelte adapter
CarouselContextValue
interfaceexport interface CarouselContextValue { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly version: () => number;}connectorCarouselApiscopePartScopeserviceCarouselServiceversion() => number- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
CarouselDot
valueexport declare const CarouselDot: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselDots
valueexport declare const CarouselDots: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselNext
valueexport declare const CarouselNext: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselPrev
valueexport declare const CarouselPrev: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselRoot
valueexport declare const CarouselRoot: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselSlide
valueexport declare const CarouselSlide: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
CarouselTrack
valueexport declare const CarouselTrack: LegacyComponentType;argsParameters<Component<Record<string, any>>>returnReturnType<Component<Record<string, any>, Record<string, any>>>- Name
args- Kind
- parameter
- Type
Parameters<Component<Record<string, any>>>- Requirement
- optional
- Name
return- Kind
- return value
- Type
ReturnType<Component<Record<string, any>, Record<string, any>>>- Requirement
- n/a
createCarousel
functionexport declare function createCarousel(inputGetter: () => CarouselInput, options?: UseCarouselOptions): UseCarouselResult;inputGetter() => CarouselInputoptionsUseCarouselOptionsreturnUseCarouselResult- Name
inputGetter- Kind
- parameter
- Type
() => CarouselInput- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseCarouselOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseCarouselResult- Requirement
- n/a
useCarouselContext
functionexport declare function useCarouselContext(partName: string): CarouselContextValue;partNamestringreturnCarouselContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselContextValue- Requirement
- n/a
UseCarouselOptions
interfaceexport interface UseCarouselOptions { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}onIndexChange(detail: CarouselIndexChangeDetail) => void- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
UseCarouselResult
interfaceexport interface UseCarouselResult { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly version: () => number;}connectorCarouselApiscopePartScopeserviceCarouselServiceversion() => number- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
version- Kind
- property
- Type
() => number- Requirement
- required
@grassroot/ui-headless-solid/carousel
Solid adapter
CarouselContext
valueexport declare const CarouselContext: import("solid-js").Context<CarouselContextValue | undefined>;CarouselContextValue
interfaceexport interface CarouselContextValue { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly snapshot: Accessor<CarouselSnapshot>;}connectorCarouselApiscopePartScopeserviceCarouselServicesnapshotAccessor<CarouselSnapshot>- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<CarouselSnapshot>- Requirement
- required
CarouselDot
functionexport declare function CarouselDot(props: CarouselDotProps): JSX.Element;propsCarouselDotPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselDotProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselDotProps
interfaceexport interface CarouselDotProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> { readonly as?: AsProp; readonly index: number;}asAsPropindexnumber- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
CarouselDots
functionexport declare function CarouselDots(props: CarouselDotsProps): JSX.Element;propsCarouselDotsPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselDotsProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselDotsProps
interfaceexport interface CarouselDotsProps extends JSX.HTMLAttributes<HTMLDivElement> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
CarouselIndexChangeDetail
interfaceinterface CarouselIndexChangeDetail { readonly index: number; readonly reason: CarouselChangeReason;}indexnumberreasonCarouselChangeReason- Name
index- Kind
- property
- Type
number- Requirement
- required
- Name
reason- Kind
- property
- Type
CarouselChangeReason- Requirement
- required
CarouselNext
functionexport declare function CarouselNext(props: CarouselNextProps): JSX.Element;propsCarouselNextPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselNextProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselNextProps
interfaceexport interface CarouselNextProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
CarouselPrev
functionexport declare function CarouselPrev(props: CarouselPrevProps): JSX.Element;propsCarouselPrevPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselPrevProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselPrevProps
interfaceexport interface CarouselPrevProps extends JSX.ButtonHTMLAttributes<HTMLButtonElement> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
CarouselRoot
functionexport declare function CarouselRoot(props: CarouselRootProps): JSX.Element;propsCarouselRootPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselRootProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselRootProps
interfaceexport interface CarouselRootProps extends Omit<JSX.HTMLAttributes<HTMLDivElement>, "onChange"> { readonly as?: AsProp; readonly index?: CarouselInput["index"]; readonly defaultIndex?: CarouselInput["defaultIndex"]; readonly slideCount?: CarouselInput["slideCount"]; readonly loop?: CarouselInput["loop"]; readonly label?: CarouselInput["label"]; readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}asAsPropdefaultIndexCarouselInput["defaultIndex"]indexCarouselInput["index"]labelCarouselInput["label"]loopCarouselInput["loop"]onIndexChange(detail: CarouselIndexChangeDetail) => voidslideCountCarouselInput["slideCount"]- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
- Name
defaultIndex- Kind
- property
- Type
CarouselInput["defaultIndex"]- Requirement
- optional
- Name
index- Kind
- property
- Type
CarouselInput["index"]- Requirement
- optional
- Name
label- Kind
- property
- Type
CarouselInput["label"]- Requirement
- optional
- Name
loop- Kind
- property
- Type
CarouselInput["loop"]- Requirement
- optional
- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
- Name
slideCount- Kind
- property
- Type
CarouselInput["slideCount"]- Requirement
- optional
CarouselSlide
functionexport declare function CarouselSlide(props: CarouselSlideProps): JSX.Element;propsCarouselSlidePropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselSlideProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselSlideProps
interfaceexport interface CarouselSlideProps extends JSX.HTMLAttributes<HTMLDivElement> { readonly as?: AsProp; readonly index: number;}asAsPropindexnumber- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
- Name
index- Kind
- property
- Type
number- Requirement
- required
CarouselTrack
functionexport declare function CarouselTrack(props: CarouselTrackProps): JSX.Element;propsCarouselTrackPropsreturnJSX.Element- Name
props- Kind
- parameter
- Type
CarouselTrackProps- Requirement
- required
- Name
return- Kind
- return value
- Type
JSX.Element- Requirement
- n/a
CarouselTrackProps
interfaceexport interface CarouselTrackProps extends JSX.HTMLAttributes<HTMLDivElement> { readonly as?: AsProp;}asAsProp- Name
as- Kind
- property
- Type
AsProp- Requirement
- optional
useCarousel
functionexport declare function useCarousel(input: Accessor<CarouselInput>, options?: UseCarouselOptions): UseCarouselResult;inputAccessor<CarouselInput>optionsUseCarouselOptionsreturnUseCarouselResult- Name
input- Kind
- parameter
- Type
Accessor<CarouselInput>- Requirement
- required
- Name
options- Kind
- parameter
- Type
UseCarouselOptions- Requirement
- optional
- Name
return- Kind
- return value
- Type
UseCarouselResult- Requirement
- n/a
useCarouselContext
functionexport declare function useCarouselContext(partName: string): CarouselContextValue;partNamestringreturnCarouselContextValue- Name
partName- Kind
- parameter
- Type
string- Requirement
- required
- Name
return- Kind
- return value
- Type
CarouselContextValue- Requirement
- n/a
UseCarouselOptions
interfaceexport interface UseCarouselOptions { readonly onIndexChange?: (detail: CarouselIndexChangeDetail) => void;}onIndexChange(detail: CarouselIndexChangeDetail) => void- Name
onIndexChange- Kind
- property
- Type
(detail: CarouselIndexChangeDetail) => void- Requirement
- optional
UseCarouselResult
interfaceexport interface UseCarouselResult { readonly service: CarouselService; readonly connector: CarouselApi; readonly scope: PartScope; readonly snapshot: Accessor<CarouselSnapshot>;}connectorCarouselApiscopePartScopeserviceCarouselServicesnapshotAccessor<CarouselSnapshot>- Name
connector- Kind
- property
- Type
CarouselApi- Requirement
- required
- Name
scope- Kind
- property
- Type
PartScope- Requirement
- required
- Name
service- Kind
- property
- Type
CarouselService- Requirement
- required
- Name
snapshot- Kind
- property
- Type
Accessor<CarouselSnapshot>- Requirement
- required