Files
lynchmark.com/tests/8_json_validator/outputs_gemini/gemini-3-pro-preview TEMP_1.9.js
T

10 lines
380 B
JavaScript

const validateJSON = async (data, schema) => {
const { default: Ajv } = await import('https://esm.sh/ajv@8.17.1')
const validate = new Ajv({ allErrors: true }).compile(schema)
const valid = validate(data)
return {
valid,
errors: valid ? [] : validate.errors.map(({ instancePath, message }) => `${instancePath} ${message}`.trim())
}
}
export default validateJSON;