UNPKG

no-hassle

Version:

Makes Node.js route handling easy with support for [Joi schema](https://github.com/hapijs/joi) validation and automatic Swagger generation based on these schema definitions. Uses Expressjs routing mechanism.

21 lines (20 loc) 777 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDefinition = void 0; const ramda_1 = require("ramda"); const j2s = require('joi-to-swagger'); const swagger_1 = require("../swagger"); const getDefinition = (swagger, values, type) => { const { _meta: meta } = values; const fallback = Math.random() .toString(36) .substr(2, 9); const definition = (0, ramda_1.propOr)(fallback, 'definition', meta[0]); const name = `${definition}${type}`; if (swagger.definitions.hasOwnProperty(name)) return name; const result = j2s(values, swagger.definitions); (0, swagger_1.updateSwagger)(swagger, 'definitions', { [name]: result.swagger }); return name; }; exports.getDefinition = getDefinition;