feat(admin): add devkit developer tools section
- add `ZEN_DEVKIT` env variable to enable/disable devkit - add `isDevkitEnabled()` utility and export it from public api - register devkit nav section and items conditionally when devkit is enabled - add devkit route handling in admin page client and server - add DevkitPage, ComponentsPage, and IconsPage client components
This commit is contained in:
@@ -4,6 +4,7 @@ import {
|
||||
getNavSections,
|
||||
getNavItems,
|
||||
} from './registry.js';
|
||||
import { isDevkitEnabled } from '../../shared/lib/appConfig.js';
|
||||
|
||||
// Sections et items core — enregistrés à l'import de ce module.
|
||||
registerNavSection({ id: 'dashboard', title: 'Tableau de bord', icon: 'DashboardSquare03Icon', order: 10 });
|
||||
@@ -14,6 +15,12 @@ registerNavItem({ id: 'users', label: 'Utilisateurs', icon: 'UserMultiple0
|
||||
registerNavItem({ id: 'roles', label: 'Rôles', icon: 'Crown03Icon', href: '/admin/roles', sectionId: 'system', order: 20 });
|
||||
registerNavItem({ id: 'settings', label: 'Paramètres', icon: 'Settings02Icon', href: '/admin/settings', position: 'bottom', order: 10 });
|
||||
|
||||
if (isDevkitEnabled()) {
|
||||
registerNavSection({ id: 'devkit', title: 'DevKit', icon: 'Wrench01Icon', order: 90 });
|
||||
registerNavItem({ id: 'devkit-components', label: 'Composants', icon: 'Layers01Icon', href: '/admin/devkit/components', sectionId: 'devkit', order: 10 });
|
||||
registerNavItem({ id: 'devkit-icons', label: 'Icônes', icon: 'Image01Icon', href: '/admin/devkit/icons', sectionId: 'devkit', order: 20 });
|
||||
}
|
||||
|
||||
/**
|
||||
* Build sections for AdminSidebar. Items are sérialisables (pas de composants),
|
||||
* icônes en chaînes résolues côté client.
|
||||
|
||||
Reference in New Issue
Block a user