javiercejudo/modelico

View on GitHub
src/metadata/ajvMetadata.js

Summary

Maintainability
A
0 mins
Test Coverage
import {formatAjvError, mem, partial} from '../U'
import jsonSchemaMetadata from './jsonSchemaMetadata'

const ajvMetadata = mem(ajv => {
  const validate = (schema, value, path) => [
    ajv.validate(schema, value),
    partial(formatAjvError, ajv, schema, value, path)
  ]

  return jsonSchemaMetadata(ajv === undefined ? undefined : validate)
})

export default ajvMetadata