UNPKG

@softvisio/core

Version:
20 lines (17 loc) 673 B
import Ajv from "#lib/ajv"; import { readConfig } from "#lib/config"; import aclResolver from "./keywords/acl-resolver.js"; import fileKeyword from "./keywords/file.js"; import readKeyword from "./keywords/read.js"; export const schemaValidator = new Ajv().addSchema( await readConfig( "#resources/schemas/api.schema.yaml", { "resolve": import.meta.url, } ) ); export function buildParamsValidator ( paramsSchema, strictTuples ) { return new Ajv( { "strictTuples": Boolean( strictTuples ), } ) .addKeyword( readKeyword.keyword ) .addKeyword( fileKeyword.keyword ) .addKeyword( aclResolver ) .compile( paramsSchema ); }