GitHub

Expandable Card

Card that expands to reveal additional content

Basic Usage

Loading...

Installation

pnpm add @corew500/ui

Usage

import { ExpandableCard } from "@corew500/ui/expandable-card"

<ExpandableCard>Content</ExpandableCard>

Variants

expandableCardVariants

AxisValuesDefault
variant
defaultoutline
default
size
smdefaultlg
default

API Reference

Props

PropTypeDefaultDescription
expandedenumControlled expanded state
onExpandedChange(expanded: boolean) => voidCallback when expanded state changes
defaultExpandedenumfalseDefault expanded state for uncontrolled usage
variantenumdefault
sizeenumdefault

Accessibility

Keyboard Navigation

  • Escape key closes the expanded view.
  • Trigger is keyboard accessible (Enter/Space).

Focus Management

  • Focus is trapped within expanded content.
  • Focus returns to trigger on close.

Screen Readers

  • - Expanded content has `role="dialog"` and `aria-modal="true"`.

Localization

Translatable Content

  • - All card content (title, description, body) should be translated.
  • Close button has `aria-label="Close"` which should be localized.