UNPKG

@sap/cli-core

Version:

Command-Line Interface (CLI) Core Module

28 lines (27 loc) 923 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.validate = void 0; const ajv_1 = __importDefault(require("ajv")); const logger_1 = require("../logger"); const validate = async (schema, data) => { const logger = (0, logger_1.get)("jsonschema"); try { const ajv = new ajv_1.default({ logger }); // use await, see ajv.js.org/api.html#ajv-validate-schemaorref-object-string-data-any-boolean await ajv.validate(schema, data); return { result: "VALID", }; } catch (err) { logger.error("error while compiling schema or validating data", err.stack); return { result: "INVALID", errors: err.errors, }; } }; exports.validate = validate;