{"version":3,"sources":["jsdelivr-header.js","/npm/express-joi-validator@1.0.2/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,IAAM,QAAQ,OACd,KAAO,QAAQ,QACf,OAAS,QAAQ,UAErB,OAAO,QAAU,SAAkB,EAAQ,GAGzC,OAFA,EAAU,GAAW,CAAC,EAEf,SAAyB,EAAK,EAAK,GACxC,IAAI,EAAa,CAAC,EAElB,OAAK,GAIL,CAAC,SAAU,OAAQ,SAAS,SAAQ,SAAU,GACxC,EAAO,KACT,EAAW,GAAO,EAAI,GAE1B,IAEO,IAAI,SAAS,EAAY,EAAQ,GAExC,SAA8B,EAAK,GACjC,GAAI,EACF,OAAO,EAAK,KAAK,WAAW,EAAI,QAAS,EAAI,UAM/C,OAFA,OAAO,EAAK,GAEL,GACT,KApBS,GAqBX,CACF","file":"/npm/express-joi-validator@1.0.2/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/express-joi-validator@1.0.2/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var Joi = require('joi');\nvar Boom = require('boom');\nvar Extend = require('extend');\n\nmodule.exports = function validate(schema, options) {\n  options = options || {};\n\n  return function validateRequest(req, res, next) {\n    var toValidate = {};\n    /* istanbul ignore if */\n    if (!schema) {\n      return next();\n    }\n\n    ['params', 'body', 'query'].forEach(function (key) {\n      if (schema[key]) {\n        toValidate[key] = req[key];\n      }\n    });\n    \n    return Joi.validate(toValidate, schema, options, onValidationComplete);\n\n    function onValidationComplete(err, validated) {\n      if (err) {\n        return next(Boom.badRequest(err.message, err.details));\n      }\n\n      // copy the validated data to the req object\n      Extend(req, validated);\n\n      return next();\n    }\n  }\n};"]}