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.

40 lines (39 loc) 1.89 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const UserReports_1 = require("../../../types/UserReports"); const localsHelper_1 = __importDefault(require("../../../utils/localsHelper")); exports.default = { renderPolling: async ({ req, res, services }) => { var _a; const { csrfToken, userId, definitionsPath: definitionPath } = localsHelper_1.default.getValues(res); const { reportId, variantId, executionId, id, type } = req.params; const requestReportData = await services.requestedReportService.getReportByExecutionId(executionId, userId); const { reportName, name, variantName, description, status, query, timestamp, url, errorMessage, metrics, tableId, } = requestReportData; const title = `${type.charAt(0).toUpperCase() + type.substring(1).toLowerCase()} request status`; return { title, pollingRenderData: { reportName, name: variantName || name, executionId, id: variantId || id, description, type: type || UserReports_1.ReportType.REPORT, reportId, tableId, status, definitionPath, ...(query && { querySummary: query.summary }), requestedAt: timestamp.requested, csrfToken, ...(metrics && { metrics }), ...(((_a = url.report) === null || _a === void 0 ? void 0 : _a.fullUrl) && { reportUrl: url.report.fullUrl }), ...(url.request.fullUrl && { requestUrl: url.request.fullUrl }), ...(errorMessage && { errorMessage }), }, }; }, };