@vara/custom-logic-sdk
Version:
Server Side JavaScript SDK for Custom Business Logic
26 lines (18 loc) • 868 B
JavaScript
/**
* Created by stevenchin on 2/1/17.
*/
const Joi = require('joi');
const customError = require('./custom-error');
const ApplicationErrors = require('../constants/application-errors.json');
const reqPayloadSchema = require('../validation-schemas/protocol-request-payload');
const validationOpts = require('../constants/validation-opts');
const { ValidationError } = ApplicationErrors;
const requestValidator = {};
requestValidator.validateRequestPayload = function validateRequestPayload(reqPayload) {
const reqPayloadValidationRes = Joi.validate(reqPayload, reqPayloadSchema, validationOpts.ALLOW_ADDITIONAL_PROPERTIES);
if (reqPayloadValidationRes.error) {
return customError(ValidationError.name, reqPayloadValidationRes.error.message, { details: reqPayloadValidationRes.error.details });
}
return null;
};
module.exports = requestValidator;