@ministryofjustice/hmpps-digital-prison-reporting-frontend
Version:
The Digital Prison Reporting Frontend contains templates and code to help display data effectively in UI applications.
30 lines (29 loc) • 1.09 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const nunjucks_date_1 = __importDefault(require("nunjucks-date"));
const setUpNunjucksFilters = (env) => {
env.addFilter('addRequiredAttributeToAll', addRequiredAttributeToAll);
env.addFilter('json', stringifyJson);
env.addFilter('capitaliseSentence', capitaliseSentence);
nunjucks_date_1.default.setDefaultFormat('DD/MM/YYYY');
nunjucks_date_1.default.install(env, 'dprDate');
};
// eslint-disable-next-line @typescript-eslint/no-explicit-any
const stringifyJson = (jsonObj) => {
return JSON.stringify(jsonObj, null, 2);
};
const capitaliseSentence = (text) => {
return text.charAt(0).toUpperCase() + text.substring(1).toLowerCase();
};
const addRequiredAttributeToAll = (items) => {
return items.map((i) => ({
...i,
attributes: {
required: true,
},
}));
};
exports.default = setUpNunjucksFilters;