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.

34 lines (30 loc) 1.06 kB
'use strict'; var z = require('zod'); var Validate = require('../dashboard-visualisation/Validate.js'); const scorecardKey = z.z.object({ id: z.z.string(), type: z.z.string().optional(), optional: z.z.boolean().default(false), }); const scorecardMeasure = z.z.object({ id: z.z.string(), type: z.z.string().optional(), unit: z.z.enum(Validate.UnitType).optional(), }); const ScorecardMeasuresSchema = z.z.array(scorecardMeasure).length(1, 'Measure must contain a single item'); const ScorecardSchema = z.z.object({ ...Validate.DashboardVisualisationSchema.shape, type: z.z.literal('scorecard'), display: z.z.string(), description: z.z.string().optional(), options: z.z.object(Validate.BucketOptionsSchema.shape).optional(), columns: z.z.object({ ...Validate.DashboardColumns.shape, keys: z.z.array(scorecardKey).min(1), measures: ScorecardMeasuresSchema, }), }); var ScorecardSchemas = { ScorecardSchema}; module.exports = ScorecardSchemas; //# sourceMappingURL=validate.js.map