diff options
author | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 21:54:41 +0100 |
---|---|---|
committer | Danijel Andjelkovic <adanijel99@gmail.com> | 2022-03-01 21:54:41 +0100 |
commit | 6c8128f9fd5a5d0be115806c35a21b3d683df8d6 (patch) | |
tree | f46c2f6b3b9b294ff32bd75c08ccdc9e7a8cc4ef /sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts | |
parent | 2400b84e95913665da6279114168148444b8f9ab (diff) | |
parent | 7d3640f824f46490b47bd95f1c5a16644f712068 (diff) |
Merge branch 'dev' of http://gitlab.pmf.kg.ac.rs/igrannonica/neuronstellar into logo
Diffstat (limited to 'sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts')
-rw-r--r-- | sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts b/sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts new file mode 100644 index 00000000..c4b2c30b --- /dev/null +++ b/sandbox/testAppNevena/Front/node_modules/ajv/lib/standalone/instance.ts @@ -0,0 +1,36 @@ +import Ajv, {AnySchema, AnyValidateFunction, ErrorObject} from "../core" +import standaloneCode from "." +import * as requireFromString from "require-from-string" + +export default class AjvPack { + errors?: ErrorObject[] | null // errors from the last validation + constructor(readonly ajv: Ajv) {} + + validate(schemaKeyRef: AnySchema | string, data: unknown): boolean | Promise<unknown> { + return Ajv.prototype.validate.call(this, schemaKeyRef, data) + } + + compile<T = unknown>(schema: AnySchema, meta?: boolean): AnyValidateFunction<T> { + return this.getStandalone(this.ajv.compile<T>(schema, meta)) + } + + getSchema<T = unknown>(keyRef: string): AnyValidateFunction<T> | undefined { + const v = this.ajv.getSchema<T>(keyRef) + if (!v) return undefined + return this.getStandalone(v) + } + + private getStandalone<T = unknown>(v: AnyValidateFunction<T>): AnyValidateFunction<T> { + return requireFromString(standaloneCode(this.ajv, v)) as AnyValidateFunction<T> + } + + addSchema(...args: Parameters<typeof Ajv.prototype.addSchema>): AjvPack { + this.ajv.addSchema.call(this.ajv, ...args) + return this + } + + addKeyword(...args: Parameters<typeof Ajv.prototype.addKeyword>): AjvPack { + this.ajv.addKeyword.call(this.ajv, ...args) + return this + } +} |