Composants → bpm.pageLayout

bpm.pageLayout

Layout avec sidebar repliable, titre et zone de contenu.

StableMise en page⏱ 2 min

Contenu de la page : dashboard

Python
bpm.pageLayout(title="Mon app", items=[...], currentItem="dashboard", onNavigate=...)
PropTypeDéfautRequisDescription
titlestringOuiTitre affiché en haut de la sidebar.
itemsSidebarItem[]OuiEntrées du menu (key, label, icon).
currentItemstringOuiClé de l'entrée active.
onNavigate(key: string) => voidOuiCallback à la sélection d'une entrée.
childrenReactNodeOuiContenu principal.
defaultCollapsedbooleanfalseNonSidebar repliée par défaut.
theme"light" | "dark"NonThème courant (affiche bouton thème si onThemeChange fourni).
onThemeChange(theme: "light" | "dark") => voidNonCallback changement de thème.

Exemples

bpm.pageLayout(title="App", items=[{"key": "home", "label": "Accueil", "icon": "home"}], currentItem="home", onNavigate=handler)
bpm.pageLayout(title="Admin", items=sidebar_items, currentItem=current, onNavigate=set_current, defaultCollapsed=True)
bpm.pageLayout(..., theme="dark", onThemeChange=set_theme)