Last change
on this file since 8d391a1 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago |
initial commit
|
-
Property mode
set to
100644
|
File size:
982 bytes
|
Line | |
---|
1 | import type Ajv from "../../core"
|
---|
2 | import type {AnySchemaObject} from "../../types"
|
---|
3 | import * as metaSchema from "./schema.json"
|
---|
4 | import * as applicator from "./meta/applicator.json"
|
---|
5 | import * as unevaluated from "./meta/unevaluated.json"
|
---|
6 | import * as content from "./meta/content.json"
|
---|
7 | import * as core from "./meta/core.json"
|
---|
8 | import * as format from "./meta/format-annotation.json"
|
---|
9 | import * as metadata from "./meta/meta-data.json"
|
---|
10 | import * as validation from "./meta/validation.json"
|
---|
11 |
|
---|
12 | const META_SUPPORT_DATA = ["/properties"]
|
---|
13 |
|
---|
14 | export default function addMetaSchema2020(this: Ajv, $data?: boolean): Ajv {
|
---|
15 | ;[
|
---|
16 | metaSchema,
|
---|
17 | applicator,
|
---|
18 | unevaluated,
|
---|
19 | content,
|
---|
20 | core,
|
---|
21 | with$data(this, format),
|
---|
22 | metadata,
|
---|
23 | with$data(this, validation),
|
---|
24 | ].forEach((sch) => this.addMetaSchema(sch, undefined, false))
|
---|
25 | return this
|
---|
26 |
|
---|
27 | function with$data(ajv: Ajv, sch: AnySchemaObject): AnySchemaObject {
|
---|
28 | return $data ? ajv.$dataMetaSchema(sch, META_SUPPORT_DATA) : sch
|
---|
29 | }
|
---|
30 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.