Show design guidelines
The navigation components are lists of links that allow users to move throughout the application. Both the primary and secondary navigation display in the sidebar.
accordion
| |
|---|
| Attribute | accordion |
| Type | boolean |
| Default | true |
| Required | false |
| Description | Only one sidebar-group can be open at a time; set this to false to allow more than one |
ariaLabel
| |
|---|
| Attribute | aria-label |
| Type | string |
| Default | 'Main navigation' |
| Required | false |
| Description | Accessible label for navigation landmark |
collapsed
| |
|---|
| Attribute | collapsed |
| Type | boolean |
| Default | false |
| Required | false |
| Description | Collapse sidebar into compact form |
collapsible
| |
|---|
| Attribute | collapsible |
| Type | boolean |
| Default | true |
| Required | false |
| Description | Entire sidebar can collapse into a compact column |
toggleId
| |
|---|
| Attribute | toggle-id |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Optional id on the collapse <button> (labels, tests, or deep links). |
| Name | Description | Bubbles |
|---|
certaraCollapsedChange | Fires when sidebar collapse state changes | true |
| Name | Signature | Description |
|---|
setCollapsed | (next: boolean) => Promise<void> | Programmatically sets the collapsed state of the sidebar |
| Name | Description |
|---|
primary | Slot for main sidebar items. Should use <certara-sidebar-list section="primary">. |
secondary | Slot for secondary sidebar items. Should use <certara-sidebar-list section="secondary">. |
Primary or Secondary groups for sidebar navigation items
| |
|---|
| Attribute | menu-aria-label |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Accessible label for the menu |
section
| |
|---|
| Attribute | section |
| Type | "primary" | "secondary" |
| Default | 'primary' |
| Required | false |
| Description | Use secondary for footer-style blocks (divider + spacing). |
There are no events available for this component
There are no public methods available for this component
| Name | Description |
|---|
| Main content slot for sidebar items. Should use <certara-sidebar-item> or <certara-sidebar-group> children. |
Expandable section within a certara-sidebar-list which renders as a flyover popup when the sidebar is collapsed, and a disclosure section otherwise.
expanded
| |
|---|
| Attribute | expanded |
| Type | boolean |
| Default | false |
| Required | false |
| Description | Set sidebar group to open or closed |
label
| |
|---|
| Attribute | label |
| Type | string |
| Default | undefined |
| Required | true |
| Description | Visible label for the parent row (expand / collapse only). |
| |
|---|
| Attribute | submenu-list-id |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Stable id for aria-controls / id on the nested list. |
| Name | Description | Bubbles |
|---|
certaraSidebarGroupExpandedChange | Fired when the group’s expanded state changes after opening or closing the in-flow submenu. Not emitted when the collapsed-sidebar flyout opens or closes. | true |
certaraSidebarGroupRequestOpen | Fired when this group is about to open its in-flow submenu (before expanded becomes true). The source detail is this group’s host element; certara-sidebar listens when accordion is enabled to close sibling groups. Not emitted for collapsed-sidebar flyouts. | true |
| Name | Signature | Description |
|---|
closeCollapsedFlyout | () => Promise<void> | Programmatically closes the flyout panel when the sidebar is collapsed. |
closeSubmenu | () => Promise<void> | Programmatically closes the in-flow submenu when the sidebar is expanded. |
openSubmenu | () => Promise<void> | Programmatically opens the in-flow submenu when the sidebar is expanded. |
| Name | Description |
|---|
| submenu rows (typically certara-sidebar-item children without a slot attribute). |
start | optional content in the row button (e.g. icon). |
MDX may have transformed content. Use example prop instead on ComponentPreview.
Default type (button)Submit typeReset type
One row in a sidebar list or submenu: an inner <li> plus either a native <a>, a native <button>, or fully custom markup from the default slot.
Control (interaction, href, type)
auto (default): <a> when href is set, otherwise <button>.
anchor: always <a> (use with href).
button: always <button>. The separate type prop sets the element’s type (button | submit | reset).
custom: this component does not render <a> or <button>; put your own interactive element in the default slot.
Labeling
- Optional
label for plain text (wrapped in .menu-text); use the default slot for leading content (e.g. icon).
- Use
slot="label" for rich label markup instead of the label string.
active
| |
|---|
| Attribute | active |
| Type | boolean |
| Default | false |
| Required | false |
| Description | Whether this row is the active / current route (reflected for styling). |
| |
|---|
| Attribute | collapsed-tooltip |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Tooltip when the sidebar is collapsed. Omit when the row does not need a tooltip (e.g. icon-only items). |
disabled
| |
|---|
| Attribute | disabled |
| Type | boolean |
| Default | false |
| Required | false |
| Description | Disables the inner <a> or <button> (and omits href on anchors when true). |
hidden
| |
|---|
| Attribute | hidden |
| Type | boolean |
| Default | false |
| Required | false |
| Description | When true, sets the hidden attribute on the inner <li> and hides the row (see _wc-sidebar.scss). React usage: hidden={condition}. HTML may use hidden on the tag; it is not reflected onto the host to avoid display: contents + host hidden which is unreliable (visibility, a11y tree, focus, whether the subtree actually disappears from layout). |
href
| |
|---|
| Attribute | href |
| Type | string |
| Default | undefined |
| Required | false |
| Description | URL for <a href> when the row resolves to an anchor (interaction="anchor", or auto with href set). Not used for <button> or interaction="custom". |
interaction
| |
|---|
| Attribute | interaction |
| Type | "anchor" | "auto" | "button" | "custom" |
| Default | 'auto' |
| Required | false |
| Description | How the row’s interactive control is chosen. See component overview: auto uses href to pick <a> vs <button>; anchor / button force one or the other; custom leaves the control to the default slot. |
label
| |
|---|
| Attribute | label |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Plain-text row label. When set, use the default slot for leading content only (e.g. icon). Renders a .menu-text span unless you override with slot="label" for rich markup. When omitted, the default slot may contain the full row as before. |
target
| |
|---|
| Attribute | target |
| Type | string |
| Default | undefined |
| Required | false |
| Description | Passed to <a target> when the resolved control is anchor. Ignored for <button> and custom. |
type
| |
|---|
| Attribute | type |
| Type | "button" | "reset" | "submit" |
| Default | 'button' |
| Required | false |
| Description | Native <button type="..."> when the resolved control is button. Ignored for <a> and for interaction="custom". |
| Name | Description | Bubbles |
|---|
certaraSidebarItemClick | Fires when the inner native <button> is clicked (not emitted for <a> or interaction="custom"). | true |
There are no public methods available for this component
| Name | Description |
|---|
default | Leading content (e.g. icon). With label set, keep non-label content here only. |
label | Optional rich HTML label; when empty, falls back to a .menu-text span from the label prop. |