const express = require('express'); /** * Config routes aggregator * @param {Object} ctx - Application context (for backward compatibility) * @returns {express.Router} */ module.exports = function(ctx) { const router = express.Router(); // Common deps for all config routes const baseDeps = { configStateManager: ctx.configStateManager, servicesStateManager: ctx.servicesStateManager, asyncHandler: ctx.asyncHandler, log: ctx.log, CONFIG_FILE: ctx.CONFIG_FILE, errorResponse: ctx.errorResponse, loadSiteConfig: ctx.loadSiteConfig }; // Additional deps for backup route const backupDeps = { ...baseDeps, SERVICES_FILE: ctx.SERVICES_FILE, CONFIG_FILE: ctx.CONFIG_FILE, TOTP_CONFIG_FILE: ctx.TOTP_CONFIG_FILE, TAILSCALE_CONFIG_FILE: ctx.TAILSCALE_CONFIG_FILE, NOTIFICATIONS_FILE: ctx.NOTIFICATIONS_FILE, caddy: ctx.caddy, dns: ctx.dns, fetchT: ctx.fetchT, totpConfig: ctx.totpConfig, credentialManager: ctx.credentialManager, loadSiteConfig: ctx.loadSiteConfig, loadNotificationConfig: ctx.loadNotificationConfig, session: ctx.session, saveTotpConfig: ctx.saveTotpConfig }; router.use(require('./settings')(baseDeps)); router.use(require('./assets')({ ...baseDeps, readConfig: ctx.readConfig, saveConfig: ctx.saveConfig })); router.use(require('./backup')(backupDeps)); return router; };