@allgemein/schema-api 1.7.1 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +104 -1
- package/api/IBaseRef.d.ts +2 -2
- package/api/IBaseRef.js +1 -2
- package/api/IBuildOptions.d.ts +2 -2
- package/api/IBuildOptions.js +1 -2
- package/api/IClassRef.d.ts +5 -5
- package/api/IClassRef.js +3 -6
- package/api/IClassRef.js.map +1 -1
- package/api/IEntityRef.d.ts +5 -5
- package/api/IEntityRef.js +3 -6
- package/api/IEntityRef.js.map +1 -1
- package/api/IJsonSchema.d.ts +4 -4
- package/api/IJsonSchema.js +3 -8
- package/api/IJsonSchema.js.map +1 -1
- package/api/ILookupRegistry.d.ts +6 -6
- package/api/ILookupRegistry.js +6 -9
- package/api/ILookupRegistry.js.map +1 -1
- package/api/IPropertyExtentions.d.ts +1 -1
- package/api/IPropertyExtentions.js +1 -2
- package/api/IPropertyExtentions.js.map +1 -1
- package/api/IPropertyRef.d.ts +3 -3
- package/api/IPropertyRef.js +3 -6
- package/api/IPropertyRef.js.map +1 -1
- package/api/ISchemaRef.d.ts +2 -2
- package/api/ISchemaRef.js +1 -2
- package/api/ISerializeSupport.d.ts +4 -4
- package/api/ISerializeSupport.js +3 -8
- package/api/ISerializeSupport.js.map +1 -1
- package/browser.d.ts +65 -65
- package/browser.js +43 -112
- package/browser.js.map +1 -1
- package/decorators/Embeddable.d.ts +1 -1
- package/decorators/Embeddable.js +4 -7
- package/decorators/Embeddable.js.map +1 -1
- package/decorators/Entity.d.ts +1 -1
- package/decorators/Entity.js +4 -7
- package/decorators/Entity.js.map +1 -1
- package/decorators/Namespace.js +7 -10
- package/decorators/Namespace.js.map +1 -1
- package/decorators/Property.d.ts +1 -1
- package/decorators/Property.js +19 -22
- package/decorators/Property.js.map +1 -1
- package/decorators/PropertyOf.d.ts +1 -1
- package/decorators/PropertyOf.js +6 -9
- package/decorators/PropertyOf.js.map +1 -1
- package/decorators/Schema.d.ts +1 -1
- package/decorators/Schema.js +4 -7
- package/decorators/Schema.js.map +1 -1
- package/decorators/validate/Hostname.d.ts +1 -1
- package/decorators/validate/Hostname.js +12 -16
- package/decorators/validate/Hostname.js.map +1 -1
- package/decorators/validate/Ip4.d.ts +1 -1
- package/decorators/validate/Ip4.js +11 -15
- package/decorators/validate/Ip4.js.map +1 -1
- package/decorators/validate/Ip6.d.ts +1 -1
- package/decorators/validate/Ip6.js +11 -15
- package/decorators/validate/Ip6.js.map +1 -1
- package/decorators/validate/IsEmail.d.ts +1 -1
- package/decorators/validate/IsEmail.js +10 -14
- package/decorators/validate/IsEmail.js.map +1 -1
- package/decorators/validate/IsNotEmpty.d.ts +1 -1
- package/decorators/validate/IsNotEmpty.js +11 -14
- package/decorators/validate/IsNotEmpty.js.map +1 -1
- package/decorators/validate/MaxLength.d.ts +1 -1
- package/decorators/validate/MaxLength.js +9 -12
- package/decorators/validate/MaxLength.js.map +1 -1
- package/decorators/validate/MinLength.d.ts +1 -1
- package/decorators/validate/MinLength.js +9 -12
- package/decorators/validate/MinLength.js.map +1 -1
- package/decorators/validate/Regex.d.ts +1 -1
- package/decorators/validate/Regex.js +10 -13
- package/decorators/validate/Regex.js.map +1 -1
- package/decorators/validate/Required.d.ts +1 -1
- package/decorators/validate/Required.js +9 -12
- package/decorators/validate/Required.js.map +1 -1
- package/decorators/validate/index.d.ts +8 -8
- package/decorators/validate/index.js +9 -19
- package/decorators/validate/index.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.js +1 -17
- package/index.js.map +1 -1
- package/lib/AbstractRef.d.ts +4 -4
- package/lib/AbstractRef.js +29 -33
- package/lib/AbstractRef.js.map +1 -1
- package/lib/AnnotationsHelper.d.ts +2 -2
- package/lib/AnnotationsHelper.js +30 -34
- package/lib/AnnotationsHelper.js.map +1 -1
- package/lib/ClassRef.d.ts +7 -7
- package/lib/ClassRef.js +62 -66
- package/lib/ClassRef.js.map +1 -1
- package/lib/Constants.js +42 -45
- package/lib/Constants.js.map +1 -1
- package/lib/DataContainer.d.ts +6 -6
- package/lib/DataContainer.js +17 -21
- package/lib/DataContainer.js.map +1 -1
- package/lib/LookupRegistry.js +13 -17
- package/lib/LookupRegistry.js.map +1 -1
- package/lib/SchemaRef.d.ts +7 -7
- package/lib/SchemaRef.js +11 -15
- package/lib/SchemaRef.js.map +1 -1
- package/lib/SchemaUtils.d.ts +3 -3
- package/lib/SchemaUtils.js +19 -23
- package/lib/SchemaUtils.js.map +1 -1
- package/lib/functions.d.ts +2 -2
- package/lib/functions.js +7 -10
- package/lib/functions.js.map +1 -1
- package/lib/json-schema/Constants.js +3 -6
- package/lib/json-schema/Constants.js.map +1 -1
- package/lib/json-schema/IJsonSchemaSerializeOptions.d.ts +4 -4
- package/lib/json-schema/IJsonSchemaSerializeOptions.js +1 -2
- package/lib/json-schema/IJsonSchemaSerializer.d.ts +3 -3
- package/lib/json-schema/IJsonSchemaSerializer.js +1 -2
- package/lib/json-schema/IJsonSchemaUnserializeOptions.d.ts +3 -3
- package/lib/json-schema/IJsonSchemaUnserializeOptions.js +1 -2
- package/lib/json-schema/IJsonSchemaUnserializer.d.ts +1 -1
- package/lib/json-schema/IJsonSchemaUnserializer.js +1 -2
- package/lib/json-schema/IParseOptions.d.ts +2 -2
- package/lib/json-schema/IParseOptions.js +1 -4
- package/lib/json-schema/IParseOptions.js.map +1 -1
- package/lib/json-schema/JsonSchema.d.ts +10 -10
- package/lib/json-schema/JsonSchema.js +26 -30
- package/lib/json-schema/JsonSchema.js.map +1 -1
- package/lib/json-schema/JsonSchema7.d.ts +2 -2
- package/lib/json-schema/JsonSchema7.js +3 -8
- package/lib/json-schema/JsonSchema7.js.map +1 -1
- package/lib/json-schema/JsonSchema7Serializer.d.ts +9 -9
- package/lib/json-schema/JsonSchema7Serializer.js +93 -97
- package/lib/json-schema/JsonSchema7Serializer.js.map +1 -1
- package/lib/json-schema/JsonSchema7Unserializer.d.ts +10 -10
- package/lib/json-schema/JsonSchema7Unserializer.js +99 -103
- package/lib/json-schema/JsonSchema7Unserializer.js.map +1 -1
- package/lib/json-schema/functions.d.ts +2 -2
- package/lib/json-schema/functions.js +8 -12
- package/lib/json-schema/functions.js.map +1 -1
- package/lib/options/IAbstractOptions.d.ts +1 -1
- package/lib/options/IAbstractOptions.js +1 -2
- package/lib/options/IAttributeOptions.d.ts +2 -2
- package/lib/options/IAttributeOptions.js +1 -2
- package/lib/options/IEntityOptions.d.ts +2 -2
- package/lib/options/IEntityOptions.js +1 -2
- package/lib/options/INamedOptions.js +1 -2
- package/lib/options/IObjectOptions.d.ts +2 -2
- package/lib/options/IObjectOptions.js +1 -2
- package/lib/options/IPropertyOptions.d.ts +2 -2
- package/lib/options/IPropertyOptions.js +1 -2
- package/lib/options/ISchemaOptions.d.ts +2 -2
- package/lib/options/ISchemaOptions.js +1 -2
- package/lib/registry/AbstractRegistry.d.ts +8 -8
- package/lib/registry/AbstractRegistry.js +19 -23
- package/lib/registry/AbstractRegistry.js.map +1 -1
- package/lib/registry/Binding.d.ts +1 -1
- package/lib/registry/Binding.js +1 -5
- package/lib/registry/Binding.js.map +1 -1
- package/lib/registry/DefaultEntityRef.d.ts +9 -9
- package/lib/registry/DefaultEntityRef.js +10 -14
- package/lib/registry/DefaultEntityRef.js.map +1 -1
- package/lib/registry/DefaultNamespacedRegistry.d.ts +14 -14
- package/lib/registry/DefaultNamespacedRegistry.js +122 -126
- package/lib/registry/DefaultNamespacedRegistry.js.map +1 -1
- package/lib/registry/DefaultPropertyRef.d.ts +7 -7
- package/lib/registry/DefaultPropertyRef.js +42 -46
- package/lib/registry/DefaultPropertyRef.js.map +1 -1
- package/lib/registry/IRegistryOptions.js +1 -2
- package/lib/registry/MetadataRegistry.d.ts +8 -8
- package/lib/registry/MetadataRegistry.js +29 -33
- package/lib/registry/MetadataRegistry.js.map +1 -1
- package/lib/registry/RegistryFactory.d.ts +3 -3
- package/lib/registry/RegistryFactory.js +19 -23
- package/lib/registry/RegistryFactory.js.map +1 -1
- package/lib/serializer/ISerializeOptions.js +1 -2
- package/lib/serializer/ISerializer.d.ts +2 -2
- package/lib/serializer/ISerializer.js +1 -2
- package/lib/serializer/ISerializerFactory.d.ts +6 -6
- package/lib/serializer/ISerializerFactory.js +1 -2
- package/lib/serializer/IUnserializeOptions.js +1 -2
- package/lib/serializer/IUnserializer.d.ts +2 -2
- package/lib/serializer/IUnserializer.js +1 -2
- package/lib/serializer/SerializerRegistry.d.ts +1 -1
- package/lib/serializer/SerializerRegistry.js +3 -7
- package/lib/serializer/SerializerRegistry.js.map +1 -1
- package/lib/validation/DefaultValidator.d.ts +5 -5
- package/lib/validation/DefaultValidator.js +32 -36
- package/lib/validation/DefaultValidator.js.map +1 -1
- package/lib/validation/IValidateOptions.js +1 -2
- package/lib/validation/IValidationError.js +1 -2
- package/lib/validation/IValidationMessage.js +1 -2
- package/lib/validation/IValidationOptions.d.ts +1 -0
- package/lib/validation/IValidationOptions.js +1 -0
- package/lib/validation/IValidationOptions.js.map +1 -1
- package/lib/validation/IValidationResult.d.ts +1 -1
- package/lib/validation/IValidationResult.js +1 -2
- package/lib/validation/IValidator.d.ts +1 -1
- package/lib/validation/IValidator.js +1 -2
- package/lib/validation/IValidatorEntry.d.ts +1 -1
- package/lib/validation/IValidatorEntry.js +1 -2
- package/lib/validation/IValidatorHandle.js +1 -2
- package/lib/validation/Validator.d.ts +4 -4
- package/lib/validation/Validator.js +7 -11
- package/lib/validation/Validator.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { IJsonSchema7, IJsonSchema7Definition } from './JsonSchema7';
|
|
2
|
-
import { IClassRef } from '../../api/IClassRef';
|
|
3
|
-
import { IJsonSchemaUnserializeOptions } from './IJsonSchemaUnserializeOptions';
|
|
4
|
-
import { IJsonSchemaUnserializer } from './IJsonSchemaUnserializer';
|
|
5
|
-
import { IEntityRef } from '../../api/IEntityRef';
|
|
6
|
-
import { ClassRef } from '../ClassRef';
|
|
7
|
-
import { IParseOptions } from './IParseOptions';
|
|
8
|
-
import { IPropertyOptions } from '../options/IPropertyOptions';
|
|
1
|
+
import { IJsonSchema7, IJsonSchema7Definition } from './JsonSchema7.js';
|
|
2
|
+
import { IClassRef } from '../../api/IClassRef.js';
|
|
3
|
+
import { IJsonSchemaUnserializeOptions } from './IJsonSchemaUnserializeOptions.js';
|
|
4
|
+
import { IJsonSchemaUnserializer } from './IJsonSchemaUnserializer.js';
|
|
5
|
+
import { IEntityRef } from '../../api/IEntityRef.js';
|
|
6
|
+
import { ClassRef } from '../ClassRef.js';
|
|
7
|
+
import { IParseOptions } from './IParseOptions.js';
|
|
8
|
+
import { IPropertyOptions } from '../options/IPropertyOptions.js';
|
|
9
9
|
export declare class JsonSchema7Unserializer implements IJsonSchemaUnserializer {
|
|
10
10
|
version: string;
|
|
11
11
|
options: IJsonSchemaUnserializeOptions;
|
|
@@ -28,11 +28,11 @@ export declare class JsonSchema7Unserializer implements IJsonSchemaUnserializer
|
|
|
28
28
|
* Return namespace if set in passed options or if used in json-schema object.
|
|
29
29
|
* If no match return default namespace
|
|
30
30
|
*/
|
|
31
|
-
getNamespace():
|
|
31
|
+
getNamespace(): any;
|
|
32
32
|
/**
|
|
33
33
|
* Get registry containing elements
|
|
34
34
|
*/
|
|
35
|
-
getRegistry(ns?: string): import("
|
|
35
|
+
getRegistry(ns?: string): import("../../browser.js").ILookupRegistry;
|
|
36
36
|
getIssues(): {
|
|
37
37
|
msg: string;
|
|
38
38
|
level: "error" | "warning" | "info";
|
|
@@ -1,21 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const MetadataRegistry_1 = require("../registry/MetadataRegistry");
|
|
13
|
-
const IParseOptions_1 = require("./IParseOptions");
|
|
14
|
-
const SchemaUtils_1 = require("../SchemaUtils");
|
|
1
|
+
import { assign, camelCase, clone, defaults, get, has, isArray, isEmpty, isNull, isObjectLike, isString, isUndefined, keys, upperFirst } from '@allgemein/base';
|
|
2
|
+
import { DRAFT_07 } from './Constants.js';
|
|
3
|
+
import { JsonSchema } from './JsonSchema.js';
|
|
4
|
+
import { RegistryFactory } from '../registry/RegistryFactory.js';
|
|
5
|
+
import { DEFAULT_NAMESPACE, K_PATTERN_PROPERTY, METATYPE_CLASS_REF, METATYPE_ENTITY, METATYPE_NAMESPACE, METATYPE_PROPERTY, T_ARRAY, T_OBJECT, T_STRING } from '../Constants.js';
|
|
6
|
+
import { isEntityRef } from '../../api/IEntityRef.js';
|
|
7
|
+
import { ClassRef } from '../ClassRef.js';
|
|
8
|
+
import { NotSupportedError, NotYetImplementedError } from '@allgemein/base';
|
|
9
|
+
import { MetadataRegistry } from '../registry/MetadataRegistry.js';
|
|
10
|
+
import { PARSE_OPTIONS_KEYS } from './IParseOptions.js';
|
|
11
|
+
import { SchemaUtils } from '../SchemaUtils.js';
|
|
15
12
|
const skipKeys = ['$id', 'id', 'title', 'type', 'properties', 'allOf', 'anyOf', '$schema', 'patternProperties'];
|
|
16
|
-
class JsonSchema7Unserializer {
|
|
13
|
+
export class JsonSchema7Unserializer {
|
|
17
14
|
constructor(opts) {
|
|
18
|
-
this.version =
|
|
15
|
+
this.version = DRAFT_07;
|
|
19
16
|
this.classRefs = [];
|
|
20
17
|
this.fetched = {};
|
|
21
18
|
this.reference = {};
|
|
@@ -23,14 +20,14 @@ class JsonSchema7Unserializer {
|
|
|
23
20
|
this.options = opts;
|
|
24
21
|
}
|
|
25
22
|
uri() {
|
|
26
|
-
return `http://json-schema.org/${
|
|
23
|
+
return `http://json-schema.org/${DRAFT_07}/schema`;
|
|
27
24
|
}
|
|
28
25
|
async unserialize(data) {
|
|
29
26
|
this.data = data;
|
|
30
|
-
const isRoot =
|
|
27
|
+
const isRoot = get(this.options, 'rootAsEntity', true);
|
|
31
28
|
const opts = { isRoot: isRoot };
|
|
32
|
-
|
|
33
|
-
if (
|
|
29
|
+
PARSE_OPTIONS_KEYS.forEach(x => {
|
|
30
|
+
if (has(this.options, x)) {
|
|
34
31
|
opts[x] = this.options[x];
|
|
35
32
|
}
|
|
36
33
|
});
|
|
@@ -51,13 +48,13 @@ class JsonSchema7Unserializer {
|
|
|
51
48
|
* If no match return default namespace
|
|
52
49
|
*/
|
|
53
50
|
getNamespace() {
|
|
54
|
-
return
|
|
51
|
+
return get(this.options, 'namespace', get(this.data, 'namespace', DEFAULT_NAMESPACE));
|
|
55
52
|
}
|
|
56
53
|
/**
|
|
57
54
|
* Get registry containing elements
|
|
58
55
|
*/
|
|
59
56
|
getRegistry(ns = null) {
|
|
60
|
-
return
|
|
57
|
+
return RegistryFactory.get(ns ? ns : this.getNamespace());
|
|
61
58
|
}
|
|
62
59
|
getIssues() {
|
|
63
60
|
return this.issues;
|
|
@@ -73,16 +70,16 @@ class JsonSchema7Unserializer {
|
|
|
73
70
|
* @private
|
|
74
71
|
*/
|
|
75
72
|
collectOptions(key, data, options = {}) {
|
|
76
|
-
const type =
|
|
73
|
+
const type = get(options, 'metaType', METATYPE_ENTITY);
|
|
77
74
|
let ret = null;
|
|
78
|
-
if (!
|
|
75
|
+
if (!isUndefined(data[key]) || !isNull(data[key])) {
|
|
79
76
|
ret = {};
|
|
80
77
|
ret[key] = data[key];
|
|
81
78
|
}
|
|
82
|
-
if (
|
|
79
|
+
if (has(this.options, 'collector') && this.options.collector.length > 0) {
|
|
83
80
|
const methods = this.options.collector.filter(x => x.type === type && x.key === key);
|
|
84
81
|
if (methods) {
|
|
85
|
-
ret =
|
|
82
|
+
ret = assign(ret, ...methods.map(e => e.fn.apply(null, [key, data, options])));
|
|
86
83
|
}
|
|
87
84
|
}
|
|
88
85
|
return ret;
|
|
@@ -91,12 +88,12 @@ class JsonSchema7Unserializer {
|
|
|
91
88
|
if (!namespace) {
|
|
92
89
|
namespace = this.getNamespace();
|
|
93
90
|
}
|
|
94
|
-
return
|
|
91
|
+
return ClassRef.get(className, namespace);
|
|
95
92
|
}
|
|
96
93
|
async parse(data, options = null) {
|
|
97
94
|
let ret = null;
|
|
98
95
|
if (data.type) {
|
|
99
|
-
if (data.type ===
|
|
96
|
+
if (data.type === T_OBJECT) {
|
|
100
97
|
ret = await this.parseTypeObject(data, options);
|
|
101
98
|
if (ret) {
|
|
102
99
|
if (options.$ref) {
|
|
@@ -127,7 +124,7 @@ class JsonSchema7Unserializer {
|
|
|
127
124
|
ret.push(await this.parse(anyEntry, options));
|
|
128
125
|
}
|
|
129
126
|
}
|
|
130
|
-
else if (data.definitions &&
|
|
127
|
+
else if (data.definitions && keys(data.definitions).length === 0) {
|
|
131
128
|
// doing nothing no entries found
|
|
132
129
|
}
|
|
133
130
|
else {
|
|
@@ -138,12 +135,12 @@ class JsonSchema7Unserializer {
|
|
|
138
135
|
async parseRef(data, options) {
|
|
139
136
|
// refers
|
|
140
137
|
let ret = null;
|
|
141
|
-
if (
|
|
138
|
+
if (has(this.reference, data.$ref)) {
|
|
142
139
|
ret = this.reference[data.$ref];
|
|
143
140
|
}
|
|
144
141
|
else {
|
|
145
142
|
const res = await this.followRef(data.$ref, this.data);
|
|
146
|
-
const opts =
|
|
143
|
+
const opts = clone(options);
|
|
147
144
|
opts.$ref = data.$ref;
|
|
148
145
|
if (!opts.className) {
|
|
149
146
|
opts.className = this.getClassNameFromRef(data.$ref);
|
|
@@ -153,9 +150,9 @@ class JsonSchema7Unserializer {
|
|
|
153
150
|
return ret;
|
|
154
151
|
}
|
|
155
152
|
getDefinitionsKey(data) {
|
|
156
|
-
for (const k of
|
|
157
|
-
if (k !== 'properties' &&
|
|
158
|
-
const exists =
|
|
153
|
+
for (const k of keys(data)) {
|
|
154
|
+
if (k !== 'properties' && isObjectLike(data[k])) {
|
|
155
|
+
const exists = keys(data[k]).find(x => has(data[k][x], 'type'));
|
|
159
156
|
if (exists) {
|
|
160
157
|
return k;
|
|
161
158
|
}
|
|
@@ -168,9 +165,9 @@ class JsonSchema7Unserializer {
|
|
|
168
165
|
if (!anchor) {
|
|
169
166
|
anchor = '';
|
|
170
167
|
}
|
|
171
|
-
if (
|
|
168
|
+
if (isEmpty(addr)) {
|
|
172
169
|
// local
|
|
173
|
-
if (
|
|
170
|
+
if (isEmpty(anchor)) {
|
|
174
171
|
if (data.$ref) {
|
|
175
172
|
return this.followRef(data.$ref, data);
|
|
176
173
|
}
|
|
@@ -181,7 +178,7 @@ class JsonSchema7Unserializer {
|
|
|
181
178
|
else if (/^\//.test(anchor)) {
|
|
182
179
|
// starts with path
|
|
183
180
|
const dottedPath = anchor.substr(1).replace(/\//, '.');
|
|
184
|
-
const entry =
|
|
181
|
+
const entry = get(data, dottedPath, null);
|
|
185
182
|
if (entry) {
|
|
186
183
|
return entry;
|
|
187
184
|
}
|
|
@@ -195,7 +192,7 @@ class JsonSchema7Unserializer {
|
|
|
195
192
|
else {
|
|
196
193
|
const defKey = this.getDefinitionsKey(data);
|
|
197
194
|
if (data[defKey]) {
|
|
198
|
-
for (const k of
|
|
195
|
+
for (const k of keys(data[defKey])) {
|
|
199
196
|
// @ts-ignore
|
|
200
197
|
const x = data[defKey][k];
|
|
201
198
|
if (x && x.$id && x.$id === refHashed) {
|
|
@@ -209,7 +206,7 @@ class JsonSchema7Unserializer {
|
|
|
209
206
|
else {
|
|
210
207
|
// remote fetch url
|
|
211
208
|
if (!this.fetched[addr]) {
|
|
212
|
-
this.fetched[addr] = await
|
|
209
|
+
this.fetched[addr] = await JsonSchema.request(addr, { cwd: this.options.cwd });
|
|
213
210
|
}
|
|
214
211
|
return this.followRef('#' + anchor, this.fetched[addr]);
|
|
215
212
|
}
|
|
@@ -217,27 +214,27 @@ class JsonSchema7Unserializer {
|
|
|
217
214
|
throw new Error($ref + ' not found');
|
|
218
215
|
}
|
|
219
216
|
async parseProperties(classRef, properties, options = null) {
|
|
220
|
-
const _classRef =
|
|
221
|
-
const propertyNames =
|
|
217
|
+
const _classRef = isEntityRef(classRef) ? classRef.getClassRef() : classRef;
|
|
218
|
+
const propertyNames = keys(properties);
|
|
222
219
|
for (const propertyName of propertyNames) {
|
|
223
220
|
await this.parseProperty(_classRef, propertyName, properties[propertyName], options);
|
|
224
221
|
}
|
|
225
222
|
}
|
|
226
223
|
async parseProperty(classRef, propertyName, data, options = null) {
|
|
227
|
-
const _classRef =
|
|
224
|
+
const _classRef = isEntityRef(classRef) ? classRef.getClassRef() : classRef;
|
|
228
225
|
const propRefExits = _classRef.getRegistry()
|
|
229
|
-
.find(
|
|
226
|
+
.find(METATYPE_PROPERTY, (x) => x.getClassRef() === _classRef && x.name === propertyName);
|
|
230
227
|
const propOptions = {
|
|
231
|
-
metaType:
|
|
228
|
+
metaType: METATYPE_PROPERTY,
|
|
232
229
|
propertyName: propertyName,
|
|
233
230
|
target: _classRef.getClass(true),
|
|
234
231
|
// default type is object
|
|
235
|
-
type:
|
|
232
|
+
type: T_OBJECT,
|
|
236
233
|
};
|
|
237
234
|
if (options.isPattern) {
|
|
238
|
-
propOptions[
|
|
235
|
+
propOptions[K_PATTERN_PROPERTY] = true;
|
|
239
236
|
}
|
|
240
|
-
if (
|
|
237
|
+
if (isObjectLike(data)) {
|
|
241
238
|
const parseOptions = {
|
|
242
239
|
isProperty: true,
|
|
243
240
|
sourceRef: _classRef,
|
|
@@ -249,12 +246,12 @@ class JsonSchema7Unserializer {
|
|
|
249
246
|
const dataPointer = data;
|
|
250
247
|
let collectOptions = {};
|
|
251
248
|
collectOptions = this.collectAndProcess(dataPointer, collectOptions, ['type', '$ref', '$schema', '$id'], parseOptions);
|
|
252
|
-
|
|
249
|
+
assign(propOptions, collectOptions);
|
|
253
250
|
if (dataPointer.$ref) {
|
|
254
251
|
const ref = await this.parse(dataPointer, parseOptions);
|
|
255
252
|
propOptions.type = ref;
|
|
256
253
|
if (options.isPattern) {
|
|
257
|
-
propOptions[
|
|
254
|
+
propOptions[K_PATTERN_PROPERTY] = true;
|
|
258
255
|
}
|
|
259
256
|
}
|
|
260
257
|
else if (dataPointer.type) {
|
|
@@ -263,13 +260,13 @@ class JsonSchema7Unserializer {
|
|
|
263
260
|
}
|
|
264
261
|
else {
|
|
265
262
|
// boolean
|
|
266
|
-
throw new
|
|
263
|
+
throw new NotSupportedError('passed boolean value as definition not supported');
|
|
267
264
|
}
|
|
268
|
-
if (!propRefExits ||
|
|
265
|
+
if (!propRefExits || get(this.options, 'forcePropertyRefCreation', false)) {
|
|
269
266
|
// remove properties key if exists
|
|
270
267
|
delete propOptions.properties;
|
|
271
268
|
try {
|
|
272
|
-
_classRef.getRegistry().create(
|
|
269
|
+
_classRef.getRegistry().create(METATYPE_PROPERTY, propOptions);
|
|
273
270
|
}
|
|
274
271
|
catch (e) {
|
|
275
272
|
this.issues.push({ msg: e.message, level: 'error' });
|
|
@@ -280,20 +277,20 @@ class JsonSchema7Unserializer {
|
|
|
280
277
|
}
|
|
281
278
|
}
|
|
282
279
|
hasProperties(datapointer) {
|
|
283
|
-
return
|
|
280
|
+
return has(datapointer, 'properties');
|
|
284
281
|
}
|
|
285
282
|
hasPatternProperties(datapointer) {
|
|
286
|
-
return
|
|
283
|
+
return has(datapointer, 'patternProperties');
|
|
287
284
|
}
|
|
288
285
|
async onTypes(dataPointer, propOptions, options) {
|
|
289
286
|
let type = dataPointer.type;
|
|
290
|
-
if (
|
|
287
|
+
if (isString(type)) {
|
|
291
288
|
type = type.toLowerCase();
|
|
292
289
|
}
|
|
293
290
|
switch (type) {
|
|
294
|
-
case
|
|
291
|
+
case T_STRING:
|
|
295
292
|
const res = this.onTypeString(dataPointer);
|
|
296
|
-
|
|
293
|
+
assign(propOptions, res);
|
|
297
294
|
break;
|
|
298
295
|
case 'boolean':
|
|
299
296
|
propOptions.type = 'boolean';
|
|
@@ -304,34 +301,34 @@ class JsonSchema7Unserializer {
|
|
|
304
301
|
case 'number':
|
|
305
302
|
propOptions.type = 'number';
|
|
306
303
|
break;
|
|
307
|
-
case
|
|
308
|
-
propOptions.type =
|
|
304
|
+
case T_OBJECT:
|
|
305
|
+
propOptions.type = T_OBJECT;
|
|
309
306
|
if (this.hasProperties(dataPointer) || this.hasPatternProperties(dataPointer)) {
|
|
310
307
|
propOptions.type = await this.parse(dataPointer, options);
|
|
311
308
|
}
|
|
312
309
|
break;
|
|
313
|
-
case
|
|
310
|
+
case T_ARRAY:
|
|
314
311
|
// check items
|
|
315
312
|
if (dataPointer.minItems || dataPointer.maxItems) {
|
|
316
313
|
propOptions.cardinality = {
|
|
317
|
-
min:
|
|
318
|
-
max:
|
|
314
|
+
min: get(dataPointer, 'minItems', 0),
|
|
315
|
+
max: get(dataPointer, 'maxItems', 0),
|
|
319
316
|
};
|
|
320
317
|
}
|
|
321
318
|
else {
|
|
322
319
|
propOptions.cardinality = 0;
|
|
323
320
|
}
|
|
324
321
|
if (dataPointer.items) {
|
|
325
|
-
if (
|
|
326
|
-
throw new
|
|
322
|
+
if (isArray(dataPointer.items)) {
|
|
323
|
+
throw new NotSupportedError('tuple values for array is not supported');
|
|
327
324
|
}
|
|
328
|
-
else if (
|
|
325
|
+
else if (isObjectLike(dataPointer.items)) {
|
|
329
326
|
options.asArray = true;
|
|
330
327
|
const items = dataPointer.items;
|
|
331
328
|
if (items.$ref) {
|
|
332
329
|
propOptions.type = await this.parse(items, options);
|
|
333
330
|
}
|
|
334
|
-
else if (items.type ===
|
|
331
|
+
else if (items.type === T_OBJECT) {
|
|
335
332
|
propOptions.type = items.type;
|
|
336
333
|
if (this.hasProperties(items) || this.hasPatternProperties(items)) {
|
|
337
334
|
propOptions.type = await this.parse(items, options);
|
|
@@ -341,18 +338,18 @@ class JsonSchema7Unserializer {
|
|
|
341
338
|
propOptions.type = items.type;
|
|
342
339
|
}
|
|
343
340
|
if (options.isPattern) {
|
|
344
|
-
propOptions[
|
|
341
|
+
propOptions[K_PATTERN_PROPERTY] = true;
|
|
345
342
|
}
|
|
346
343
|
}
|
|
347
344
|
}
|
|
348
345
|
break;
|
|
349
346
|
case 'null':
|
|
350
|
-
throw new
|
|
347
|
+
throw new NotSupportedError('null value is not supported for property');
|
|
351
348
|
}
|
|
352
349
|
}
|
|
353
350
|
onTypeString(dataPointer) {
|
|
354
351
|
const propOptions = {};
|
|
355
|
-
propOptions.type =
|
|
352
|
+
propOptions.type = T_STRING;
|
|
356
353
|
// or date check format
|
|
357
354
|
if (dataPointer.format) {
|
|
358
355
|
propOptions.format = dataPointer.format;
|
|
@@ -370,27 +367,27 @@ class JsonSchema7Unserializer {
|
|
|
370
367
|
return propOptions;
|
|
371
368
|
}
|
|
372
369
|
async parseInherits(classRef, data, key) {
|
|
373
|
-
if (
|
|
370
|
+
if (has(data, key)) {
|
|
374
371
|
const values = data[key];
|
|
375
|
-
if (
|
|
372
|
+
if (isArray(values)) {
|
|
376
373
|
for (const inheritEntry of values) {
|
|
377
374
|
const extend = await this.parse(inheritEntry, { isRoot: false });
|
|
378
375
|
classRef.addExtend(extend);
|
|
379
376
|
}
|
|
380
377
|
}
|
|
381
378
|
else {
|
|
382
|
-
throw new
|
|
379
|
+
throw new NotSupportedError('only array is allowed for ' + key);
|
|
383
380
|
}
|
|
384
381
|
}
|
|
385
382
|
}
|
|
386
383
|
async parseTypeObject(data, options = null) {
|
|
387
384
|
let ret = null;
|
|
388
|
-
const id =
|
|
389
|
-
let metaType = options.isRoot || !
|
|
390
|
-
const title =
|
|
385
|
+
const id = get(data, '$id', get(data, 'id', null));
|
|
386
|
+
let metaType = options.isRoot || !isEmpty(id) ? METATYPE_ENTITY : METATYPE_CLASS_REF;
|
|
387
|
+
const title = get(data, 'title', null);
|
|
391
388
|
// get namespace or override
|
|
392
|
-
const namespace = !
|
|
393
|
-
|
|
389
|
+
const namespace = !get(this.options, 'skipNamespace', false) ?
|
|
390
|
+
get(data, '$' + METATYPE_NAMESPACE, this.getNamespace()) : this.getNamespace();
|
|
394
391
|
// check if class ref exists else create one or recreate if parse options are set
|
|
395
392
|
let classRef = null;
|
|
396
393
|
let className = null;
|
|
@@ -405,32 +402,32 @@ class JsonSchema7Unserializer {
|
|
|
405
402
|
}
|
|
406
403
|
// title data override passed className
|
|
407
404
|
if (title) {
|
|
408
|
-
if (!className || !
|
|
409
|
-
className =
|
|
405
|
+
if (!className || !get(this.options, 'ignoreDeclared', false)) {
|
|
406
|
+
className = upperFirst(camelCase(title));
|
|
410
407
|
}
|
|
411
408
|
}
|
|
412
|
-
let entityName = metaType ===
|
|
409
|
+
let entityName = metaType === METATYPE_ENTITY && id ? id.replace(/^#/, '') : className;
|
|
413
410
|
if (!className && options?.isProperty && options.propertyName) {
|
|
414
|
-
if (
|
|
415
|
-
className = [options.sourceRef.name, options.propertyName].map(x =>
|
|
411
|
+
if (get(this.options, 'prependClass', false)) {
|
|
412
|
+
className = [options.sourceRef.name, options.propertyName].map(x => upperFirst(camelCase(x))).join('');
|
|
416
413
|
}
|
|
417
414
|
else {
|
|
418
|
-
className =
|
|
415
|
+
className = upperFirst(camelCase(options.propertyName));
|
|
419
416
|
}
|
|
420
417
|
// pass property name as entity name if the object is declared as a property
|
|
421
418
|
entityName = className;
|
|
422
419
|
}
|
|
423
420
|
if (className && !classRef) {
|
|
424
|
-
const fn =
|
|
421
|
+
const fn = get(this.options, 'forceClassRefCreation', false) ? SchemaUtils.clazz(className) : className;
|
|
425
422
|
classRef = this.getClassRef(fn, namespace);
|
|
426
423
|
}
|
|
427
424
|
if (!classRef) {
|
|
428
|
-
metaType =
|
|
429
|
-
classRef = this.getClassRef(
|
|
425
|
+
metaType = METATYPE_CLASS_REF;
|
|
426
|
+
classRef = this.getClassRef(SchemaUtils.clazzAnonymous(), namespace);
|
|
430
427
|
}
|
|
431
428
|
// TODO check extentions!
|
|
432
429
|
for (const inheritsKey of ['allOf', 'anyOf']) {
|
|
433
|
-
if (
|
|
430
|
+
if (has(data, inheritsKey)) {
|
|
434
431
|
await this.parseInherits(classRef, data, inheritsKey);
|
|
435
432
|
}
|
|
436
433
|
}
|
|
@@ -445,25 +442,25 @@ class JsonSchema7Unserializer {
|
|
|
445
442
|
namespace: this.getNamespace(),
|
|
446
443
|
target: clazz
|
|
447
444
|
};
|
|
448
|
-
const collectorOptions =
|
|
445
|
+
const collectorOptions = clone(options);
|
|
449
446
|
collectorOptions.metaType = metaType;
|
|
450
447
|
collectorOptions.ref = classRef;
|
|
451
448
|
this.collectAndProcess(data, refOptions, skipKeys, collectorOptions);
|
|
452
449
|
metaType = collectorOptions.metaType;
|
|
453
|
-
let entityOptions =
|
|
450
|
+
let entityOptions = MetadataRegistry.$().find(metaType, (x) => x.target === clazz);
|
|
454
451
|
if (entityOptions) {
|
|
455
452
|
// merge existing
|
|
456
|
-
|
|
453
|
+
assign(entityOptions, refOptions);
|
|
457
454
|
}
|
|
458
455
|
else {
|
|
459
456
|
entityOptions = refOptions;
|
|
460
|
-
refOptions.metaType =
|
|
457
|
+
refOptions.metaType = METATYPE_CLASS_REF;
|
|
461
458
|
const existingOptions = classRef.getOptions();
|
|
462
|
-
classRef.setOptions(
|
|
459
|
+
classRef.setOptions(defaults(refOptions, existingOptions));
|
|
463
460
|
}
|
|
464
|
-
if (metaType ===
|
|
461
|
+
if (metaType === METATYPE_ENTITY) {
|
|
465
462
|
ret = this.getRegistry(namespace).find(metaType, (x) => x.getClassRef() === classRef);
|
|
466
|
-
if (!ret ||
|
|
463
|
+
if (!ret || get(this.options, 'forceEntityRefCreation', false)) {
|
|
467
464
|
try {
|
|
468
465
|
ret = this.getRegistry(namespace).create(metaType, entityOptions);
|
|
469
466
|
}
|
|
@@ -477,26 +474,26 @@ class JsonSchema7Unserializer {
|
|
|
477
474
|
}
|
|
478
475
|
}
|
|
479
476
|
else {
|
|
480
|
-
throw new
|
|
477
|
+
throw new NotYetImplementedError();
|
|
481
478
|
}
|
|
482
479
|
return ret;
|
|
483
480
|
}
|
|
484
481
|
collectAndProcess(data, collectingObject, skipKeys, collectorOptions) {
|
|
485
|
-
const type =
|
|
486
|
-
const _keys =
|
|
482
|
+
const type = get(collectorOptions, 'metaType', METATYPE_ENTITY);
|
|
483
|
+
const _keys = keys(data);
|
|
487
484
|
for (const key of _keys) {
|
|
488
485
|
const entry = this.collectOptions(key, data, collectorOptions);
|
|
489
486
|
if (skipKeys.includes(key)) {
|
|
490
487
|
continue;
|
|
491
488
|
}
|
|
492
|
-
if (entry &&
|
|
493
|
-
collectingObject =
|
|
489
|
+
if (entry && isObjectLike(entry)) {
|
|
490
|
+
collectingObject = assign(collectingObject, entry);
|
|
494
491
|
}
|
|
495
492
|
}
|
|
496
|
-
if (
|
|
497
|
-
const methods = this.options.collector.filter(x => x.type === type &&
|
|
493
|
+
if (has(this.options, 'collector') && this.options.collector.length > 0) {
|
|
494
|
+
const methods = this.options.collector.filter(x => x.type === type && isUndefined(x.key));
|
|
498
495
|
if (methods.length > 0) {
|
|
499
|
-
collectingObject =
|
|
496
|
+
collectingObject = assign(collectingObject, ...methods.map(e => e.fn.apply(null, [null, data, collectorOptions])));
|
|
500
497
|
}
|
|
501
498
|
}
|
|
502
499
|
return collectingObject;
|
|
@@ -505,5 +502,4 @@ class JsonSchema7Unserializer {
|
|
|
505
502
|
return data.split(/#|\//).pop();
|
|
506
503
|
}
|
|
507
504
|
}
|
|
508
|
-
exports.JsonSchema7Unserializer = JsonSchema7Unserializer;
|
|
509
505
|
//# sourceMappingURL=JsonSchema7Unserializer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JsonSchema7Unserializer.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7Unserializer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"JsonSchema7Unserializer.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7Unserializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IJsonSchema7 } from "./JsonSchema7";
|
|
2
|
-
import { REFLECT_DESIGN_TYPE } from "../Constants";
|
|
1
|
+
import { IJsonSchema7 } from "./JsonSchema7.js";
|
|
2
|
+
import { REFLECT_DESIGN_TYPE } from "../Constants.js";
|
|
3
3
|
export declare function setDefaultArray(schema: IJsonSchema7): void;
|
|
4
4
|
export declare function getReflectedType(clazz: Function & {
|
|
5
5
|
[REFLECT_DESIGN_TYPE]?: string;
|