UNPKG

@nahkies/typescript-koa-runtime

Version:

Runtime package for code generated by @nahkies/openapi-code-generator using the typescript-koa template

40 lines (39 loc) 1.3 kB
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const require_errors = require("./errors-wNPzSsqj.cjs"); const require_validation = require("./validation-MwT7R5YJ.cjs"); //#region src/joi.ts function parseRequestInput(schema, input, type) { try { if (!schema) return; const result = schema.validate(input, { stripUnknown: true }); if (result.error) throw result.error; return result.value; } catch (err) { throw require_errors.KoaRuntimeError.RequestError(err, type); } } function responseValidationFactory(possibleResponses, defaultResponse) { possibleResponses.sort((x, y) => x[0] < y[0] ? -1 : 1); return (status, value) => { try { const schema = require_validation.findMatchingSchema(status, possibleResponses); if (schema) { const result = schema.validate(value); if (result.error) throw result.error; return result.value; } if (defaultResponse) { const result = defaultResponse.validate(value); if (result.error) throw result.error; return result.value; } return value; } catch (err) { throw require_errors.KoaRuntimeError.ResponseError(err); } }; } //#endregion exports.parseRequestInput = parseRequestInput; exports.responseValidationFactory = responseValidationFactory; //# sourceMappingURL=joi.cjs.map