Askr documentation
UI & Componentslimited

Toast and Toaster

Toast and Toaster: anatomy, keyboard behavior, state, and theming in Askr.

Example

import { Toast, ToastDescription, ToastHost, ToastTitle } from '@askrjs/themes/components';

<ToastHost>
  <Toast open={saved()} onOpenChange={setSaved}>
    <ToastTitle>Project saved</ToastTitle>
    <ToastDescription>Your changes are now visible.</ToastDescription>
  </Toast>
</ToastHost>
Try Toast

Dismiss transient feedback from the viewport.

Published props

Generated from the TypeScript declarations shipped by the installed package. Named types in the Type column define the accepted values.

ToastActionAsChildProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((event: PressEvent) => void) | undefined;——
refref?: Ref<Element>;——
typetype?: undefined;——

ToastActionProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((event: PressEvent) => void) | undefined;——
refref?: Ref<HTMLButtonElement>;——
typetype?: "button" | "submit" | "reset" | undefined;——

ToastCloseAsChildProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((event: PressEvent) => void) | undefined;——
refref?: Ref<Element>;——
typetype?: undefined;——

ToastCloseProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((event: PressEvent) => void) | undefined;——
refref?: Ref<HTMLButtonElement>;——
typetype?: "button" | "submit" | "reset" | undefined;——

ToastDescriptionAsChildProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<Element>;——

ToastDescriptionProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

ToastHostOwnProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
childrenchildren?: unknown;——
durationduration?: number | undefined;——
idid?: string | undefined;——

ToastHostProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
durationduration?: number | undefined;——
idid?: string | undefined;——
refref?: Ref<HTMLDivElement>;——

ToastOwnProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
childrenchildren?: unknown;——
defaultOpendefaultOpen?: boolean | undefined;——
durationduration?: number | undefined;——
idid?: string | undefined;——
onOpenChangeonOpenChange?: ((open: boolean) => void) | undefined;——
openopen?: boolean | undefined;——
variantvariant?: ToastVariant | undefined;——

ToastProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
defaultOpendefaultOpen?: boolean | undefined;——
durationduration?: number | undefined;——
idid?: string | undefined;——
onOpenChangeonOpenChange?: ((open: boolean) => void) | undefined;——
openopen?: boolean | undefined;——
refref?: Ref<HTMLDivElement>;——
variantvariant?: ToastVariant | undefined;——

ToastTitleAsChildProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<Element>;——

ToastTitleProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

ToastViewportAsChildProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<Element>;——

ToastViewportProps

Import from @askrjs/themes/toast.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

AlertProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
actionsactions?: unknown;——
childrenchildren?: unknown;——
descriptiondescription?: unknown;——
dismissLabeldismissLabel?: string | undefined;——
iconicon?: unknown;——
onDismissonDismiss?: (() => void) | undefined;——
refref?: Ref<HTMLDivElement>;——
titletitle?: unknown;——
titleAstitleAs?: AlertHeadingTag | undefined;——
variantvariant?: AlertVariant | undefined;——

AspectRatioAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
ratioratio?: string | number | undefined;——
refref?: Ref<unknown>;——
stylestyle?: unknown;——

AspectRatioProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
ratioratio?: string | number | undefined;——
refref?: Ref<HTMLDivElement>;——
stylestyle?: unknown;——

BadgeAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<unknown>;——
variantvariant?: BadgeVariant | undefined;——

BadgeOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
variantvariant?: BadgeVariant | undefined;——

BadgeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLSpanElement>;——
variantvariant?: BadgeVariant | undefined;——

BlockAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asChildasChild: true;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren: JSXElement;——
classNameclassName?: string | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockDivProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: "div" | undefined;——
asChildasChild?: false | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockElementProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: TElement | undefined;——
asChildasChild?: false | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockNativeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: "a" | "article" | "aside" | "div" | "form" | "footer" | "header" | "li" | "main" | "nav" | "ol" | "section" | "span" | "ul" | undefined;——
asChildasChild?: false | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | ((() => IntrinsicClassValue) & string) | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: BlockElement | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asChildasChild?: boolean | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | ((() => IntrinsicClassValue) & string) | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

BlockSpanProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: "span" | undefined;——
asChildasChild?: false | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

ButtonAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: ButtonAsChildElement;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((e: PressEvent) => void) | undefined;——
refref?: Ref<Element>;——
sizesize?: ButtonSize | undefined;——
typetype?: undefined;——
variantvariant?: ButtonVariant | undefined;——
widthwidth?: ButtonWidth | undefined;——

ButtonGroupProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
attachedattached?: boolean | undefined;——
childrenchildren?: unknown;——
data-responsivedata-responsive?: "true" | "false" | undefined;—Stack at phone width. Defaults to `"true"` for attached groups without an `orientation`.
orientationorientation?: ButtonGroupOrientation | undefined;——
refref?: Ref<HTMLDivElement>;——

ButtonNativeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((e: PressEvent) => void) | undefined;——
refref?: Ref<HTMLButtonElement>;——
sizesize?: ButtonSize | undefined;——
typetype?: "button" | "submit" | "reset" | undefined;——
variantvariant?: ButtonVariant | undefined;——
widthwidth?: ButtonWidth | undefined;——

ButtonProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: boolean | undefined;——
childrenchildren?: unknown;——
disableddisabled?: boolean | undefined;——
onPressonPress?: ((e: PressEvent) => void) | undefined;——
refref?: ((value: Element | null) => void) | { current: Element | null; } | ((value: HTMLButtonElement | null) => void) | { current: HTMLButtonElement | null; } | null | undefined;——
sizesize?: ButtonSize | undefined;——
typetype?: "button" | "submit" | "reset" | undefined;——
variantvariant?: ButtonVariant | undefined;——
widthwidth?: ButtonWidth | undefined;——

CardActionProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

CardContentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

CardDescriptionProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLParagraphElement>;——

CardFooterProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

CardHeaderProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

CardProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——
variantvariant?: CardVariant | undefined;——

CardTitleProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLHeadingElement>;——
titleAstitleAs?: CardTitleHeadingTag | undefined;—Choose the level that follows the surrounding document hierarchy.

CatalogComponentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asas?: keyof JSX.IntrinsicElements | undefined;——
asChildasChild?: boolean | undefined;——
childrenchildren?: unknown;——
classclass?: string | undefined;——
refref?: Ref<TElement>;——

CenterProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: undefined;——
asChildasChild?: unknown;——
backgroundbackground?: unknown;——
borderborder?: unknown;——
borderBottomborderBottom?: unknown;——
borderRightborderRight?: unknown;——
borderTopborderTop?: unknown;——
centercenter?: unknown;——
childrenchildren?: unknown;——
directiondirection?: unknown;——
gapgap?: unknown;——
growgrow?: unknown;——
heightheight?: unknown;——
hidehide?: unknown;——
justifyjustify?: undefined;——
marginmargin?: unknown;——
marginXmarginX?: unknown;——
marginYmarginY?: unknown;——
maxHeightmaxHeight?: unknown;——
maxWidthmaxWidth?: unknown;——
minHeightminHeight?: unknown;——
minWidthminWidth?: unknown;——
paddingpadding?: unknown;——
paddingXpaddingX?: unknown;——
paddingYpaddingY?: unknown;——
radiusradius?: unknown;——
refref?: unknown;——
rowFromrowFrom?: unknown;——
shadowshadow?: unknown;——
shrinkshrink?: unknown;——
stickysticky?: unknown;——
toptop?: unknown;——
widthwidth?: unknown;——
wrapwrap?: unknown;——
zIndexzIndex?: unknown;——

CloseNativeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: string | undefined;——

CloseOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: string | undefined;——

ClusterProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: unknown;——
asChildasChild?: unknown;——
backgroundbackground?: unknown;——
borderborder?: unknown;——
borderBottomborderBottom?: unknown;——
borderRightborderRight?: unknown;——
borderTopborderTop?: unknown;——
centercenter?: unknown;——
childrenchildren?: unknown;——
directiondirection?: undefined;——
gapgap?: unknown;——
growgrow?: unknown;——
heightheight?: unknown;——
hidehide?: unknown;——
justifyjustify?: unknown;——
marginmargin?: unknown;——
marginXmarginX?: unknown;——
marginYmarginY?: unknown;——
maxHeightmaxHeight?: unknown;——
maxWidthmaxWidth?: unknown;——
minHeightminHeight?: unknown;——
minWidthminWidth?: unknown;——
paddingpadding?: unknown;——
paddingXpaddingX?: unknown;——
paddingYpaddingY?: unknown;——
radiusradius?: unknown;——
refref?: unknown;——
rowFromrowFrom?: undefined;——
shadowshadow?: unknown;——
shrinkshrink?: unknown;——
stickysticky?: unknown;——
toptop?: unknown;——
widthwidth?: unknown;——
wrapwrap?: undefined;——
zIndexzIndex?: unknown;——

CommandPaletteContentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
closeOnBackdropcloseOnBackdrop?: boolean | undefined;——
closeOnEscapecloseOnEscape?: boolean | undefined;——
descriptiondescription?: string | undefined;——
initialFocusinitialFocus?: string | false | (() => HTMLElement | null) | undefined;——
onEscapeKeyDownonEscapeKeyDown?: ((event: KeyboardEvent) => void) | undefined;——
onInteractOutsideonInteractOutside?: ((event: Event) => void) | undefined;——
onPointerDownOutsideonPointerDownOutside?: ((event: PointerEvent) => void) | undefined;——
overlayPropsoverlayProps?: DialogOverlayProps | undefined;——
titletitle: string;——

CommandPaletteLinkProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
closeOnSelectcloseOnSelect?: boolean | undefined;——
onBeforeNavigateonBeforeNavigate?: ((event: Event) => void) | undefined;——

CommandPaletteListProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLUListElement>;——

ContainerProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: "div" | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | undefined;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
sizesize?: BlockSize | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

CopyButtonProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
failureMessagefailureMessage?: string | undefined;——
labellabel: string;——
resetAfterresetAfter?: number | undefined;——
successMessagesuccessMessage?: string | undefined;——
texttext: string;——

DialogProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
defaultOpendefaultOpen?: boolean | undefined;——
idid?: string | undefined;——
modalmodal?: boolean | undefined;——
onOpenChangeonOpenChange?: ((open: boolean) => void) | undefined;——
openopen?: boolean | undefined;——

EmptyStateProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
actionaction?: unknown;——
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asas?: "div" | undefined;——
asChildasChild?: false | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
classNameclassName?: string | undefined;——
descriptiondescription?: unknown;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
iconicon?: unknown;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
titletitle?: unknown;——
titleAstitleAs?: EmptyStateHeadingTag | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

FieldErrorProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLParagraphElement>;——

FieldHintProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLParagraphElement>;——

FieldProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
invalidinvalid?: boolean | undefined;——
refref?: Ref<HTMLDivElement>;——

FooterContentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

FooterDescriptionProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLParagraphElement>;——

FooterLinkProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLAnchorElement>;——

FooterLinksProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLElement>;——

FooterSectionProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLDivElement>;——

FooterTitleProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
refref?: Ref<HTMLHeadingElement>;——

GridProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<GridAlign> | undefined;——
asas?: TElement | undefined;——
childrenchildren?: unknown;——
columnscolumns?: ResponsiveValue<GridColumns> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
refref?: Ref<HTMLElement>;——

HeaderProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
positionposition?: "sticky" | "static" | undefined;——
stickysticky?: boolean | undefined;——

HeadingProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
fontfont?: TextFont | undefined;——
levellevel: HeadingLevel;——
numericnumeric?: TextNumeric | undefined;——
refref?: Ref<HTMLHeadingElement>;——
sizesize?: HeadingSize | undefined;——
tonetone?: TextTone | undefined;——
truncatetruncate?: boolean | undefined;——
weightweight?: TextWeight | undefined;——
wrapwrap?: TextWrap | undefined;——

InputGroupProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
attachedattached?: boolean | undefined;——
childrenchildren?: unknown;——
orientationorientation?: InputGroupOrientation | undefined;——
refref?: Ref<HTMLDivElement>;——

InputGroupTextAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<unknown>;——

InputGroupTextProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLSpanElement>;——

MetaStripProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
densitydensity?: MetaStripDensity | undefined;——
itemsitems: readonly MetaStripItem[];——
refref?: Ref<HTMLDListElement>;——

NavbarProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
breakpointbreakpoint?: false | NavbarCollapseBreakpoint | undefined;——
collapseAtcollapseAt?: false | NavbarCollapseBreakpoint | undefined;——
collapseIconcollapseIcon?: unknown;——
collapseLabelcollapseLabel?: string | undefined;——

NavBrandProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: ResponsiveValue<BlockAlign> | undefined;——
asChildasChild?: boolean | undefined;——
backgroundbackground?: ResponsiveValue<BlockBackground> | undefined;——
borderborder?: ResponsiveValue<boolean> | undefined;——
borderBottomborderBottom?: ResponsiveValue<boolean> | undefined;——
borderRightborderRight?: ResponsiveValue<boolean> | undefined;——
borderTopborderTop?: ResponsiveValue<boolean> | undefined;——
centercenter?: ResponsiveValue<boolean> | undefined;——
childrenchildren?: unknown;——
directiondirection?: ResponsiveValue<BlockDirection> | undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: ResponsiveValue<number | boolean> | undefined;——
heightheight?: ResponsiveValue<BlockSize> | undefined;——
hidehide?: ResponsiveValue<boolean> | undefined;——
justifyjustify?: ResponsiveValue<BlockJustify> | undefined;——
marginmargin?: ResponsiveValue<BlockMargin> | undefined;——
marginXmarginX?: ResponsiveValue<BlockMargin> | undefined;——
marginYmarginY?: ResponsiveValue<BlockMargin> | undefined;——
maxHeightmaxHeight?: ResponsiveValue<BlockSize> | undefined;——
maxWidthmaxWidth?: ResponsiveValue<BlockSize> | undefined;——
minHeightminHeight?: ResponsiveValue<BlockSize> | undefined;——
minWidthminWidth?: ResponsiveValue<BlockSize> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: ResponsiveValue<BlockSpace> | undefined;——
paddingYpaddingY?: ResponsiveValue<BlockSpace> | undefined;——
radiusradius?: ResponsiveValue<BlockRadius> | undefined;——
refref?: Ref<unknown>;——
rowFromrowFrom?: BlockRowFrom | undefined;——
shadowshadow?: ResponsiveValue<BlockShadow> | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
stickysticky?: boolean | undefined;——
toptop?: ResponsiveValue<BlockSpace> | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: ResponsiveValue<BlockZIndex> | undefined;——

NavDropdownProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
labellabel: unknown;——

NavGroupProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: unknown;——
titletitle?: unknown;——

NavItemAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<unknown>;——

NavItemProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLAnchorElement>;——

NavLinkProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
matchmatch?: NavLinkMatch | undefined;——

PageHeaderProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
actionsactions?: unknown;——
descriptiondescription?: unknown;——
directiondirection?: undefined;——
rowFromrowFrom?: undefined;——
titletitle: unknown;——

PillProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
matchmatch?: NavLinkMatch | undefined;——

PillsAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<unknown>;——

PillsProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLElement>;——

SeparatorAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
decorativedecorative?: boolean | undefined;——
orientationorientation?: "vertical" | "horizontal" | undefined;——
refref?: Ref<unknown>;——

SeparatorNativeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
decorativedecorative?: boolean | undefined;——
orientationorientation?: "vertical" | "horizontal" | undefined;——
refref?: Ref<HTMLDivElement>;——

SeparatorOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
decorativedecorative?: boolean | undefined;——
orientationorientation?: "vertical" | "horizontal" | undefined;——

SeparatorProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: boolean | undefined;——
childrenchildren?: unknown;——
decorativedecorative?: boolean | undefined;——
orientationorientation?: "vertical" | "horizontal" | undefined;——
refref?: ((value: unknown) => void) | { current: unknown; } | ((value: HTMLDivElement | null) => void) | { current: HTMLDivElement | null; } | null | undefined;——

SidebarButtonProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
asChildasChild?: boolean | undefined;——
sizesize?: "default" | "sm" | "lg" | undefined;——
tooltiptooltip?: string | undefined;——
tooltipSidetooltipSide?: SidebarTooltipSide | undefined;——
variantvariant?: "default" | "outline" | undefined;——

SidebarPartProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asas?: keyof JSX.IntrinsicElements | undefined;——
asChildasChild?: boolean | undefined;——

SidebarProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
collapsiblecollapsible?: SidebarCollapsible | undefined;——
shrinkshrink?: ResponsiveValue<number | boolean> | undefined;——
sideside?: SidebarSide | undefined;——
variantvariant?: SidebarVariant | undefined;——
widthwidth?: ResponsiveValue<BlockSize> | undefined;——

SidebarRailProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
asChildasChild?: boolean | undefined;——
sizesize?: "default" | "sm" | "lg" | undefined;——
tooltiptooltip?: string | undefined;——
tooltipSidetooltipSide?: SidebarTooltipSide | undefined;——
variantvariant?: "default" | "outline" | undefined;——

SkeletonAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
heightheight?: string | number | undefined;——
refref?: Ref<unknown>;——
widthwidth?: string | number | undefined;——

SkeletonOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
heightheight?: string | number | undefined;——
widthwidth?: string | number | undefined;——

SkeletonProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
heightheight?: string | number | undefined;——
refref?: Ref<HTMLDivElement>;——
widthwidth?: string | number | undefined;——

SpinnerOwnProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: string | undefined;——
sizesize?: SpinnerSize | undefined;——

SpinnerProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: string | undefined;——
sizesize?: SpinnerSize | undefined;——

StackProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
alignalign?: unknown;——
asChildasChild?: unknown;——
backgroundbackground?: unknown;——
borderborder?: unknown;——
borderBottomborderBottom?: unknown;——
borderRightborderRight?: unknown;——
borderTopborderTop?: unknown;——
centercenter?: unknown;——
childrenchildren?: unknown;——
directiondirection?: undefined;——
gapgap?: ResponsiveValue<BlockSpace> | undefined;——
growgrow?: unknown;——
heightheight?: unknown;——
hidehide?: unknown;——
justifyjustify?: unknown;——
marginmargin?: unknown;——
marginXmarginX?: unknown;——
marginYmarginY?: unknown;——
maxHeightmaxHeight?: unknown;——
maxWidthmaxWidth?: unknown;——
minHeightminHeight?: unknown;——
minWidthminWidth?: unknown;——
pp?: ResponsiveValue<BlockSpace> | undefined;——
paddingpadding?: ResponsiveValue<BlockSpace> | undefined;——
paddingXpaddingX?: unknown;——
paddingYpaddingY?: unknown;——
radiusradius?: unknown;——
refref?: unknown;——
rowFromrowFrom?: undefined;——
shadowshadow?: unknown;——
shrinkshrink?: unknown;——
stickysticky?: unknown;——
toptop?: unknown;——
widthwidth?: unknown;——
wrapwrap?: ResponsiveValue<boolean> | undefined;——
zIndexzIndex?: unknown;——

TabProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
activeactive?: boolean | undefined;——
matchmatch?: NavLinkMatch | undefined;——

TabsAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild: true;——
childrenchildren: JSXElement;——
refref?: Ref<unknown>;——

TabsProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asChildasChild?: false | undefined;——
childrenchildren?: unknown;——
refref?: Ref<HTMLElement>;——

TextProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
asas?: TextElement | undefined;——
childrenchildren?: unknown;——
fontfont?: TextFont | undefined;——
numericnumeric?: TextNumeric | undefined;——
refref?: Ref<HTMLElement>;——
sizesize?: TextSize | undefined;——
tonetone?: TextTone | undefined;——
truncatetruncate?: boolean | undefined;——
weightweight?: TextWeight | undefined;——
wrapwrap?: TextWrap | undefined;——

ThemePickerProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
labellabel?: string | undefined;——
themesthemes?: readonly ThemeOption[] | undefined;——

ThemeScopeProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
defaultThemedefaultTheme?: ThemeName | undefined;——
storageKeystorageKey?: string | undefined;——
themesthemes?: readonly ThemeOption[] | undefined;——

ThemeToggleProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
childrenchildren?: unknown;——
darkIcondarkIcon?: unknown;——
lightIconlightIcon?: unknown;——
onPressonPress?: ((event: PressEvent) => void) | undefined;——
systemIconsystemIcon?: unknown;——
themesthemes?: readonly ThemeName[] | undefined;——

ToolbarProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
actionsactions?: unknown;——
directiondirection?: undefined;——
rowFromrowFrom?: undefined;——
titletitle: unknown;——

VirtualListAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
apiRefapiRef?: Ref<VirtualListApi<Item> | null>;——
asChildasChild: true;——
childrenchildren: JSXElement;——
followBottomfollowBottom?: boolean | { threshold?: number; } | undefined;——
getKeygetKey: (item: Item, index: number) => string | number;——
getRowHeightgetRowHeight?: ((item: Item, index: number) => number) | undefined;—Optional keyed row sizing. When omitted, VirtualList retains its fixed-height arithmetic path.
itemsitems: readonly Item[];——
onScrollonScroll?: ((event: Event) => void) | undefined;——
overscanoverscan?: VirtualOverscan | undefined;——
refref?: Ref<HTMLElement>;——
rowComponentrowComponent: VirtualListRowComponent<Item>;——
rowHeightrowHeight: number;——
viewportviewport?: "lg" | undefined;——

VirtualListProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
apiRefapiRef?: Ref<VirtualListApi<Item> | null>;——
asChildasChild?: false | undefined;——
followBottomfollowBottom?: boolean | { threshold?: number; } | undefined;——
getKeygetKey: (item: Item, index: number) => string | number;——
getRowHeightgetRowHeight?: ((item: Item, index: number) => number) | undefined;—Optional keyed row sizing. When omitted, VirtualList retains its fixed-height arithmetic path.
itemsitems: readonly Item[];——
onScrollonScroll?: ((event: Event) => void) | undefined;——
overscanoverscan?: VirtualOverscan | undefined;——
refref?: Ref<HTMLElement>;——
rowComponentrowComponent: VirtualListRowComponent<Item>;——
rowHeightrowHeight: number;——
viewportviewport?: "lg" | undefined;——

VirtualListRowComponentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
indexindex: number;——
isVisibleisVisible: boolean;——
itemitem: Item;——
rowKeyrowKey: string;——

VirtualTableAsChildProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
apiRefapiRef?: Ref<VirtualTableApi<Row> | null>;——
asChildasChild: true;——
childrenchildren: JSXElement;——
columnscolumns: readonly VirtualTableColumn<Row>[];——
defaultSelectedRowKeydefaultSelectedRowKey?: string | null | undefined;——
getKeygetKey: (row: Row, index: number) => string | number;——
headerHeightheaderHeight: number;——
onRowClickonRowClick?: ((row: Row, rowIndex: number, rowKey: string, event: MouseEvent) => void) | undefined;——
onScrollonScroll?: ((event: Event) => void) | undefined;——
onSelectedRowKeyChangeonSelectedRowKeyChange?: ((next: string | null) => void) | undefined;——
overscanoverscan?: VirtualOverscan | undefined;——
refref?: Ref<HTMLElement>;——
rowHeightrowHeight: number;——
rowsrows: readonly Row[];——
selectedRowKeyselectedRowKey?: string | null | undefined;——
tableWidthtableWidth?: "compact" | undefined;——
viewportviewport?: "lg" | undefined;——

VirtualTableCellComponentProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
columncolumn: VirtualTableColumn<Row>;——
rowrow: Row;——
rowIndexrowIndex: number;——
rowKeyrowKey: string;——
selectedselected: boolean;——

VirtualTableProps

Import from @askrjs/themes/components.

PropTypeDefaultDescription
apiRefapiRef?: Ref<VirtualTableApi<Row> | null>;——
asChildasChild?: false | undefined;——
columnscolumns: readonly VirtualTableColumn<Row>[];——
defaultSelectedRowKeydefaultSelectedRowKey?: string | null | undefined;——
getKeygetKey: (row: Row, index: number) => string | number;——
headerHeightheaderHeight: number;——
onRowClickonRowClick?: ((row: Row, rowIndex: number, rowKey: string, event: MouseEvent) => void) | undefined;——
onScrollonScroll?: ((event: Event) => void) | undefined;——
onSelectedRowKeyChangeonSelectedRowKeyChange?: ((next: string | null) => void) | undefined;——
overscanoverscan?: VirtualOverscan | undefined;——
refref?: Ref<HTMLElement>;——
rowHeightrowHeight: number;——
rowsrows: readonly Row[];——
selectedRowKeyselectedRowKey?: string | null | undefined;——
tableWidthtableWidth?: "compact" | undefined;——
viewportviewport?: "lg" | undefined;——

Purpose

Toast and ToastHost provide the notification lifecycle. Toaster provides a styling-only host for application-owned presentation and does not implement an imperative toast API, timers, stacking or dismissal.

Install and import

Import the headless Toast family from @askrjs/ui/toast and the themed version from @askrjs/themes/toast. Toaster is available from the supported @askrjs/themes/components aggregate. Migrate the retired Sonner alias to Toaster; it remains a styling-only host.

Live examples

Trigger Toast and observe its registry-backed timing and dismissal. Inspect Toaster separately as a styled container; it has no live notification queue to exercise.

Anatomy

ToastHost owns the notification registry and default duration; ToastViewport presents the stack. Compose each Toast from title, description and optional action or close controls. Toaster is a separate styling-only host with no registry or notification lifecycle.

State model

An individual Toast takes open/defaultOpen/onOpenChange like the other disclosure primitives, plus its own duration (falling back to ToastHost's default when omitted) and a variant of 'default' | 'success' | 'warning' | 'danger' | 'info'. Setting duration on ToastHost changes that fallback for every toast underneath it that doesn't specify one itself.

Keyboard and accessibility

The Toast family exposes a polite status region and a Notifications viewport label. Test announcement content, focusable actions, dismissal and timer pausing in your composition. Toaster does not add those interaction or announcement behaviors by itself.

Styling and tokens

The Toast family exposes data-slot and data-state styling hooks. Toaster preserves its existing data-slot="sonner" hook; that DOM styling name does not restore the retired Sonner export or add notification behavior.

API

ToastHostProps adds duration on top of standard div props; ToastProps adds variant, open/defaultOpen/onOpenChange, and duration. ToastAction and ToastClose use the same button-like prop shape as other interactive primitives in the library, including asChild.

Edge cases

Render each Toast beneath ToastHost so it can register. Toaster does not supply a queue, timer, stacking or dismissal behavior; applications using it must provide any such behavior explicitly.

See Progress for status feedback with a determinate value instead of a transient message, and Alert, Badge, Empty, Skeleton, and Spinner for feedback that should stay on screen rather than time out.