Skip to content

v0.3.0 Custom components

Choose a tag to compare

@VeiaG VeiaG released this 17 Mar 10:26
· 21 commits to main since this release

What's Changed

  • Feat custom components by @VeiaG in #9

Custom components

Full custom component support across the entire sidebar:

Slot Config key Description
Nav item customComponents.NavItem Replace individual collection/global links
Nav group customComponents.NavGroup Replace group headers with expand/collapse
Tab button customComponents.TabButton Replace tab/link buttons in the icon bar
Tab icon iconComponent on tab/link Override the icon only, keep default button
Nav content area customComponents.NavContent Replace the entire scrollable nav panel
Tabs bar slot type: 'custom' tab item Inject arbitrary elements between tabs

All components are server-rendered and receive serverProps (payload, i18n, user, etc.).

Access control

Added access functions to tabs, links, and custom nav items. Evaluated server-side with full PayloadRequest — fails closed (denies access) when req is unavailable.

{
  id: 'admin',
  type: 'tab',
  icon: 'Settings',
  label: 'Admin',
  access: ({ req }) => req.user?.role === 'admin',
}

Custom tabs bar slots (type: 'custom')

New tab bar item type for injecting arbitrary server-rendered components (separators, custom buttons, etc.) between tabs.

{ id: 'sep', type: 'custom', component: './components/TabSeparator' }

Tooltips on tab buttons

Default tab buttons and links now show a tooltip with the tab label on hover/focus, positioned to the right of the sidebar.

Full Changelog: v0.2.1...v0.3.0