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.46 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const logger_1 = __importDefault(require("./logger")); exports.default = { getCurrentVariantDefinition: (definitions, reportId, variantId) => { if (!definitions) { logger_1.default.info('No definitions'); return undefined; } let variantDef; const reportDef = definitions.find((report) => report.id === reportId); if (reportDef) { variantDef = reportDef.variants.find((variant) => variantId === variant.id); } return variantDef || undefined; }, getFieldDisplayName: (fields, fieldId) => { const ids = fieldId.split('.'); const field = fields.find((f) => { return f.name === ids[0]; }); if (field) { return ids[1] ? `${field.display} ${ids[1]}` : field.display; } return fieldId; }, getField: (fields, fieldId) => { return fields.find((field) => { return field.name === fieldId; }); }, getReportSummary: async (reportId, reportingService, token, definitionPath) => { const definitions = await reportingService.getDefinitions(token, definitionPath); return definitions.find((def) => def.id === reportId); }, };