- Vendor web_template base.css/base.js (v1.2 bbec859) under public/web_template with sync script - Add views/layout.ejs (fixed upstream EJS comment delimiters, mobile drawer, cmd palette, keys help, WS status, theme toggle) and lib/render.js two-step renderer - Add page routes for /, /workers, /workflows, /executions, /quick, /scheduler (stub views) - helmet with strict nonce CSP (script-src-attr 'none'), /csp-report, report-only toggle - lib/pageauth.js: shared users upsert + HTML 401/403 for page routes - PULSE_DEV_READONLY guard disabling background writers for local testing - public/assets/app.js shared runtime (Pulse namespace, delegated actions, WS singleton, themed confirm modal) and app.css - eslint globals for browser files; ignore vendored assets Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HamVMDrA8RqhyxmUHgiqRp
24 lines
1.2 KiB
JavaScript
24 lines
1.2 KiB
JavaScript
// Navigation metadata shared by the layout and the page routes.
|
|
|
|
const navLinks = [
|
|
{ href: '/', key: 'dashboard', label: 'Dashboard' },
|
|
{ href: '/workers', key: 'workers', label: 'Workers' },
|
|
{ href: '/workflows', key: 'workflows', label: 'Workflows' },
|
|
{ href: '/executions', key: 'executions', label: 'Executions' },
|
|
{ href: '/quick', key: 'quick', label: 'Quick Command' },
|
|
{ href: '/scheduler', key: 'scheduler', label: 'Scheduler' }
|
|
];
|
|
|
|
// Page route table: { path, view, key, title }
|
|
// `view` is the basename of views/pages/<view>.ejs and of /assets/pages/<view>.js
|
|
const PAGES = [
|
|
{ path: '/', view: 'dashboard', key: 'dashboard', title: 'Dashboard' },
|
|
{ path: '/workers', view: 'workers', key: 'workers', title: 'Workers' },
|
|
{ path: '/workflows', view: 'workflows', key: 'workflows', title: 'Workflows' },
|
|
{ path: '/executions', view: 'executions', key: 'executions', title: 'Executions' },
|
|
{ path: '/quick', view: 'quick', key: 'quick', title: 'Quick Command' },
|
|
{ path: '/scheduler', view: 'scheduler', key: 'scheduler', title: 'Scheduler' }
|
|
];
|
|
|
|
module.exports = { navLinks, PAGES };
|