- Updated all arr route modules to use destructured dependencies - Added JSDoc comments for factory functions - Replaced ctx. references with direct parameter access - Updated arr/index.js to extract and pass explicit dependencies - Maintained backward compatibility with context pattern - All files pass syntax validation Files refactored: - routes/arr/detect.js - routes/arr/credentials.js - routes/arr/config.js (579 lines) - routes/arr/smart-connect.js - routes/arr/plex.js - routes/arr/helpers.js - routes/arr/index.js (orchestrator)
35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
const express = require('express');
|
|
|
|
/**
|
|
* Arr routes aggregator
|
|
* Assembles all arr 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,
|
|
credentialManager: ctx.credentialManager,
|
|
servicesStateManager: ctx.servicesStateManager,
|
|
fetchT: ctx.fetchT,
|
|
asyncHandler: ctx.asyncHandler,
|
|
errorResponse: ctx.errorResponse,
|
|
log: ctx.log
|
|
};
|
|
|
|
// Initialize helpers with dependencies
|
|
const helpers = require('./helpers')(deps);
|
|
|
|
// Mount sub-routes with explicit dependencies
|
|
router.use(require('./detect')({ ...deps, helpers }));
|
|
router.use(require('./credentials')({ ...deps, helpers }));
|
|
router.use(require('./config')({ ...deps, helpers }));
|
|
router.use(require('./smart-connect')({ ...deps, helpers }));
|
|
router.use(require('./plex')({ ...deps, helpers }));
|
|
|
|
return router;
|
|
};
|