declarapi
Version:
Declarative API generation
18 lines • 636 B
JavaScript
import Ajv from 'ajv';
import { loadJSON } from '../util.js';
export const jsonValidatorInit = () => {
return new Ajv({
loadSchema: async (uri) => loadJSON(uri)
});
};
export const isValidationError = (input) => input && input.type === 'error';
export const validate = async (json, data) => {
const validator = await jsonValidatorInit().compileAsync(json);
const result = validator(data);
const errors = validator.errors || [];
errors.push(JSON.stringify(json, null, 2));
if (!result)
return { type: 'error', errors };
return { type: 'success' };
};
//# sourceMappingURL=jsonSchema.js.map