A theme-aware, platform-adaptive skeleton loading component that provides multiple animation styles, content-type variants, and pre-configured layout presets for common UI patterns.
## Key Components
### `DynamicSkeleton`
Core skeleton element supporting configurable animation, variant, size, and dimensions with built-in accessibility (`role="status"`, `aria-label`) and multi-line text support.
**Props:**
| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `animation` | `pulse \| shimmer \| wave \| static` | `shimmer` | Skeleton animation style |
| `variant` | `text \| avatar \| card \| button \| image \| custom` | `text` | Content type shape |
| `size` | `sm \| md \| lg \| xl` | `md` | Dimension preset |
| `width` / `height` | `string \| number` | — | Custom dimensions |
| `lines` | `number` | `1` | Lines for text skeletons (last line renders at 75% width) |
| `platformAware` | `boolean` | `true` | Applies platform-specific color mixing via CSS vars |
| `includeAriaLabel` | `boolean` | `true` | Adds `aria-label="Loading content..."` |
### `SkeletonPresets`
Pre-built composite skeletons for common layouts:
| Preset | Props | Description |
|--------|-------|-------------|
| `Card` | `showActions`, `showImage` | Card with header, body, and optional actions |
| `Profile` | — | Avatar + name + bio lines |
| `Navigation` | `items` | Repeated icon + label rows |
| `Table` | `rows`, `columns` | Grid-based header and data rows |
| `VendorGrid` | `items` | Responsive 3-column vendor cards |
| `BlogPost` | — | Title, metadata, hero image, paragraphs |
### `PlatformSkeletonContainer`
Conditional wrapper that renders content when `isLoading` is `false`, or a named `SkeletonPresets` component when loading.
### `ProgressiveSkeleton`
Multi-stage skeleton that transitions through `pulse → shimmer → wave` animations and `text → card → custom` variants as `currentStage` increments.
## Usage Example
```typescript
// Basic skeleton
// Multi-line text skeleton
// Custom dimensions
// Preset: vendor grid
// Conditional loading wrapper
// Progressive loading stages
```