UNPKG

@apideck/portman

Version:

Port OpenAPI Spec to Postman Collection, with contract & variation tests included

30 lines 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.validate = void 0; var tslib_1 = require("tslib"); var better_ajv_errors_1 = require("@apideck/better-ajv-errors"); var ajv_1 = tslib_1.__importDefault(require("ajv")); var json_schema_draft_06_json_1 = tslib_1.__importDefault(require("ajv/lib/refs/json-schema-draft-06.json")); var Either = tslib_1.__importStar(require("fp-ts/lib/Either")); var portman_config_schema_json_1 = tslib_1.__importDefault(require("./portman-config-schema.json")); var validate = function (data) { var ajv = new ajv_1.default({ allErrors: true, allowUnionTypes: true }); ajv.addMetaSchema(json_schema_draft_06_json_1.default); var valid = ajv.validate(portman_config_schema_json_1.default, data); if (!valid) { var betterErrors = (0, better_ajv_errors_1.betterAjvErrors)({ schema: portman_config_schema_json_1.default, data: data, errors: ajv.errors }); return Either.left(betterErrors); } else { return Either.right(data); } }; exports.validate = validate; //# sourceMappingURL=PortmanConfig.validator.js.map