Urara-Blog/node_modules/.pnpm-store/v3/files/db/11f4e967508ecd1501864535cac7fe8b9ad11147f327d58b18f9c976dce11eca7e1d0a8fceaa837ee6278688dcd4a7027c483133749a574f08d3da82f82ad2
2022-08-14 01:14:53 +08:00

28 lines
899 B
Text

import type Ajv from "../../core"
import type {AnySchemaObject} from "../../types"
import * as metaSchema from "./schema.json"
import * as applicator from "./meta/applicator.json"
import * as content from "./meta/content.json"
import * as core from "./meta/core.json"
import * as format from "./meta/format.json"
import * as metadata from "./meta/meta-data.json"
import * as validation from "./meta/validation.json"
const META_SUPPORT_DATA = ["/properties"]
export default function addMetaSchema2019(this: Ajv, $data?: boolean): Ajv {
;[
metaSchema,
applicator,
content,
core,
with$data(this, format),
metadata,
with$data(this, validation),
].forEach((sch) => this.addMetaSchema(sch, undefined, false))
return this
function with$data(ajv: Ajv, sch: AnySchemaObject): AnySchemaObject {
return $data ? ajv.$dataMetaSchema(sch, META_SUPPORT_DATA) : sch
}
}