UNPKG

@nahkies/typescript-koa-runtime

Version:

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

38 lines (37 loc) 1.14 kB
import { t as KoaRuntimeError } from "./errors-CrlMSPkU.mjs"; import { t as findMatchingSchema } from "./validation-Bk2toxs9.mjs"; //#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 KoaRuntimeError.RequestError(err, type); } } function responseValidationFactory(possibleResponses, defaultResponse) { possibleResponses.sort((x, y) => x[0] < y[0] ? -1 : 1); return (status, value) => { try { const schema = 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 KoaRuntimeError.ResponseError(err); } }; } //#endregion export { parseRequestInput, responseValidationFactory }; //# sourceMappingURL=joi.mjs.map