- Updated all apps route modules to use destructured dependencies - Added JSDoc comments for factory functions - Replaced ctx. references with direct parameter access - Updated apps/index.js to extract and pass explicit dependencies - All files pass syntax validation Files refactored: - routes/apps/deploy.js (18k lines) - routes/apps/helpers.js (17k lines) - routes/apps/removal.js - routes/apps/restore.js - routes/apps/templates.js - routes/apps/index.js (orchestrator)
40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
const express = require('express');
|
|
const initHelpers = require('./helpers');
|
|
const initDeploy = require('./deploy');
|
|
const initRemoval = require('./removal');
|
|
const initTemplates = require('./templates');
|
|
const initRestore = require('./restore');
|
|
|
|
/**
|
|
* Apps routes aggregator
|
|
* Assembles all apps sub-routes with their dependencies
|
|
* @param {Object} ctx - Application context (for backward compatibility)
|
|
* @returns {express.Router}
|
|
*/
|
|
module.exports = function(ctx) {
|
|
const router = express.Router();
|
|
|
|
// Extract dependencies from context
|
|
const deps = {
|
|
docker: ctx.docker,
|
|
caddy: ctx.caddy,
|
|
credentialManager: ctx.credentialManager,
|
|
servicesStateManager: ctx.servicesStateManager,
|
|
portLockManager: ctx.portLockManager,
|
|
asyncHandler: ctx.asyncHandler,
|
|
errorResponse: ctx.errorResponse,
|
|
log: ctx.log
|
|
};
|
|
|
|
// Initialize helpers with dependencies
|
|
const helpers = initHelpers(deps);
|
|
|
|
// Mount sub-routes with explicit dependencies
|
|
router.use(initDeploy({ ...deps, helpers }));
|
|
router.use(initRemoval({ ...deps, helpers }));
|
|
router.use(initTemplates({ ...deps, helpers }));
|
|
router.use(initRestore({ ...deps, helpers }));
|
|
|
|
return router;
|
|
};
|