UNPKG

@ministryofjustice/hmpps-digital-prison-reporting-frontend

Version:

The Digital Prison Reporting Frontend contains templates and code to help display data effectively in UI applications.

33 lines (30 loc) 1.21 kB
import { Router } from 'express'; import logger from '../utils/logger.js'; import { Routes } from './journeys/routes.js'; import setupNestedRoute from '../middleware/setUpNestedRoute.js'; import { captureDprError } from '../utils/captureError.js'; const errorRequestHandler = (layoutPath) => (error, _req, res, next) => { if (error.status === 401 || error.status === 403) { return res.render('dpr/routes/authError.njk', { layoutPath, message: 'Sorry, there is a problem with authenticating your request', }); } captureDprError(error); if (error.status >= 400) { return res.render('dpr/routes/serviceProblem.njk', { layoutPath, }); } return next(error); }; function routes(routeImportParams) { logger.info('Initialiasing DPR routes...'); const router = Router({ mergeParams: true }); // ensures that this route matches `/` router.get('/', (_req, _res, next) => next()); router.use('/', setupNestedRoute(), Routes(routeImportParams), errorRequestHandler(routeImportParams.layoutPath)); return router; } export { routes as default, errorRequestHandler, routes }; //# sourceMappingURL=index.js.map