import { renderDashboard } from './DashboardPage.js'; import { renderTestPage } from './test.js'; // Registry of all pages available in the application export const pagesRegistry = [ { route: 'dashboard', name: 'Dashboard', icon: '馃彔', requiresAuth: true, showInSidebar: true, render: renderDashboard }, { route: 'test', name: 'Test Page', icon: '馃И', requiresAuth: true, showInSidebar: true, render: renderTestPage }, { route: 'invoices', name: 'Facturas', icon: '馃搫', requiresAuth: true, showInSidebar: true, render: () => { const div = document.createElement('div'); div.innerHTML = '
P谩gina en construcci贸n...
'; return div; } }, { route: 'clients', name: 'Clientes', icon: '馃懃', requiresAuth: true, showInSidebar: true, render: () => { const div = document.createElement('div'); div.innerHTML = 'P谩gina en construcci贸n...
'; return div; } }, { route: 'settings', name: 'Configuraci贸n', icon: '鈿欙笍', requiresAuth: true, showInSidebar: true, render: () => { const div = document.createElement('div'); div.innerHTML = 'P谩gina en construcci贸n...
'; return div; } } ]; // Get pages that the user can access export function getAvailablePages(isAuthenticated) { if (!isAuthenticated) { return []; } // Filter pages based on authentication requirement and sidebar visibility return pagesRegistry.filter(page => { if (page.requiresAuth && !isAuthenticated) return false; return page.showInSidebar; }); } // Get page by route export function getPageByRoute(route) { return pagesRegistry.find(page => page.route === route); }