chore: baseline plantilla-proyectos como base del CRM

This commit is contained in:
Aduanasoft
2026-07-14 09:03:52 -06:00
commit c3d0eedc8d
469 changed files with 69739 additions and 0 deletions

View File

@@ -0,0 +1,75 @@
import {
LayoutDashboard,
Settings2,
Users,
Shield,
} from '@lucide/svelte';
export type SystemContext = 'fixed_asset' | 'inventory';
export interface NavItem {
title: string;
url: string;
permission?: string;
systemContext?: SystemContext;
}
export interface NavMainItem {
title: string;
url: string;
icon: any;
isActive?: boolean;
permission?: string;
items?: NavItem[];
}
/**
* Navegación principal del dashboard.
* Agrega aquí los módulos de tu proyecto.
*/
export function getNavMain(): NavMainItem[] {
return [
{
title: 'Dashboard',
url: '/dashboard',
icon: LayoutDashboard,
},
{
title: 'Usuarios',
url: '/dashboard/users',
icon: Users,
},
{
title: 'Roles y permisos',
url: '/dashboard/roles',
icon: Shield,
},
{
title: 'Configuración',
url: '/dashboard/settings/general',
icon: Settings2,
},
];
}
/**
* Datos completos del sidebar (navegación + usuario fallback + proyectos).
* El usuario real se inyecta desde page.data en app-sidebar.svelte.
*/
export function getSidebarData() {
return {
navMain: getNavMain(),
projects: [] as { name: string; url: string; icon: any }[],
user: {
name: '',
email: '',
username: '',
firstName: null,
lastName: null,
displayName: '',
avatarUrl: null,
workspaceAvatarUrl: null,
legacyAvatarUrl: null,
},
};
}