diff options
author | Shin'ya Ueoka <ueokande@i-beam.org> | 2019-12-03 18:11:32 +0900 |
---|---|---|
committer | Shin'ya Ueoka <ueokande@i-beam.org> | 2019-12-03 18:34:48 +0900 |
commit | 776977e0dcaf47a81054dcc81d76722ada71f9eb (patch) | |
tree | 0fbcdeda0be45d4416884a1b527c0e2013945979 /src/shared/settings/Validator.ts | |
parent | 2318e3a55592cf7888006bd1afe43deec396d394 (diff) |
Validate on top-level settings and use pre-compiled ajv
Diffstat (limited to 'src/shared/settings/Validator.ts')
-rw-r--r-- | src/shared/settings/Validator.ts | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/src/shared/settings/Validator.ts b/src/shared/settings/Validator.ts deleted file mode 100644 index 6aac07f..0000000 --- a/src/shared/settings/Validator.ts +++ /dev/null @@ -1,20 +0,0 @@ -import Ajv from 'ajv'; - -export default class Validator<T> { - constructor( - private schema: object | boolean, - ) { - } - - validate(data: any): T { - let ajv = new Ajv(); - let valid = ajv.validate(this.schema, data); - if (!valid) { - let message = ajv.errors!! - .map(err => `'${err.dataPath}' of ${err.keyword} ${err.message}`) - .join('; '); - throw new TypeError(message); - } - return data as T; - } -} |