"use strict"; function applyNormalizations(payload, normalizations) { return normalizations.reduce((current, normalization) => { let changes = normalization(current); if (changes == null) { return current; } else { return Object.assign(current, changes); } }, Object.assign({}, payload)); } module.exports = function createNormalizationMiddleware(normalizations) { return function normalizePayload(req, _res, next) { req.body = applyNormalizations(req.body, normalizations); next(); } };