URL Menu Layout
A URL-driven menu layout that syncs active section with query parameters
Preview
Installation
Usage
API Reference
UrlMenuLayout
| Prop | Type | Default | Description |
|---|---|---|---|
param | string | "section" | URL query parameter name to sync with |
defaultValue | string | "" | Default section ID when no URL param is set |
children | React.ReactNode | - | MenuContent, MenuPage, and MenuFooter elements |
menuHeader | React.ReactNode | - | Optional header above the menu (from MenuLayout) |
menuFooter | React.ReactNode | - | Optional footer below the menu (from MenuLayout) |
MenuContent
Renders section content inside a ScrollPage with automatic scroll handling.
| Prop | Type | Default | Description |
|---|---|---|---|
id | string | - | Unique section identifier (synced with URL param) |
label | string | - | Label displayed in the menu sidebar |
icon | React.ElementType | - | Optional icon component displayed before the label |
children | React.ReactNode | - | Section content |
MenuPage
Like MenuContent but renders children directly without ScrollPage wrapping, for custom page layouts.
| Prop | Type | Default | Description |
|---|---|---|---|
id | string | - | Unique section identifier |
label | string | - | Label displayed in the menu sidebar |
icon | React.ElementType | - | Optional icon component |
children | React.ReactNode | - | Section content (rendered without scroll wrapper) |
MenuFooter
Renders footer content for a specific section (matched by ID).
| Prop | Type | Default | Description |
|---|---|---|---|
id | string | - | Section ID this footer belongs to |
children | React.ReactNode | - | Footer content |