@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.
Files changed (200) hide show
  1. package/README.md +104 -1
  2. package/api/IBaseRef.d.ts +2 -2
  3. package/api/IBaseRef.js +1 -2
  4. package/api/IBuildOptions.d.ts +2 -2
  5. package/api/IBuildOptions.js +1 -2
  6. package/api/IClassRef.d.ts +5 -5
  7. package/api/IClassRef.js +3 -6
  8. package/api/IClassRef.js.map +1 -1
  9. package/api/IEntityRef.d.ts +5 -5
  10. package/api/IEntityRef.js +3 -6
  11. package/api/IEntityRef.js.map +1 -1
  12. package/api/IJsonSchema.d.ts +4 -4
  13. package/api/IJsonSchema.js +3 -8
  14. package/api/IJsonSchema.js.map +1 -1
  15. package/api/ILookupRegistry.d.ts +6 -6
  16. package/api/ILookupRegistry.js +6 -9
  17. package/api/ILookupRegistry.js.map +1 -1
  18. package/api/IPropertyExtentions.d.ts +1 -1
  19. package/api/IPropertyExtentions.js +1 -2
  20. package/api/IPropertyExtentions.js.map +1 -1
  21. package/api/IPropertyRef.d.ts +3 -3
  22. package/api/IPropertyRef.js +3 -6
  23. package/api/IPropertyRef.js.map +1 -1
  24. package/api/ISchemaRef.d.ts +2 -2
  25. package/api/ISchemaRef.js +1 -2
  26. package/api/ISerializeSupport.d.ts +4 -4
  27. package/api/ISerializeSupport.js +3 -8
  28. package/api/ISerializeSupport.js.map +1 -1
  29. package/browser.d.ts +65 -65
  30. package/browser.js +43 -112
  31. package/browser.js.map +1 -1
  32. package/decorators/Embeddable.d.ts +1 -1
  33. package/decorators/Embeddable.js +4 -7
  34. package/decorators/Embeddable.js.map +1 -1
  35. package/decorators/Entity.d.ts +1 -1
  36. package/decorators/Entity.js +4 -7
  37. package/decorators/Entity.js.map +1 -1
  38. package/decorators/Namespace.js +7 -10
  39. package/decorators/Namespace.js.map +1 -1
  40. package/decorators/Property.d.ts +1 -1
  41. package/decorators/Property.js +19 -22
  42. package/decorators/Property.js.map +1 -1
  43. package/decorators/PropertyOf.d.ts +1 -1
  44. package/decorators/PropertyOf.js +6 -9
  45. package/decorators/PropertyOf.js.map +1 -1
  46. package/decorators/Schema.d.ts +1 -1
  47. package/decorators/Schema.js +4 -7
  48. package/decorators/Schema.js.map +1 -1
  49. package/decorators/validate/Hostname.d.ts +1 -1
  50. package/decorators/validate/Hostname.js +12 -16
  51. package/decorators/validate/Hostname.js.map +1 -1
  52. package/decorators/validate/Ip4.d.ts +1 -1
  53. package/decorators/validate/Ip4.js +11 -15
  54. package/decorators/validate/Ip4.js.map +1 -1
  55. package/decorators/validate/Ip6.d.ts +1 -1
  56. package/decorators/validate/Ip6.js +11 -15
  57. package/decorators/validate/Ip6.js.map +1 -1
  58. package/decorators/validate/IsEmail.d.ts +1 -1
  59. package/decorators/validate/IsEmail.js +10 -14
  60. package/decorators/validate/IsEmail.js.map +1 -1
  61. package/decorators/validate/IsNotEmpty.d.ts +1 -1
  62. package/decorators/validate/IsNotEmpty.js +11 -14
  63. package/decorators/validate/IsNotEmpty.js.map +1 -1
  64. package/decorators/validate/MaxLength.d.ts +1 -1
  65. package/decorators/validate/MaxLength.js +9 -12
  66. package/decorators/validate/MaxLength.js.map +1 -1
  67. package/decorators/validate/MinLength.d.ts +1 -1
  68. package/decorators/validate/MinLength.js +9 -12
  69. package/decorators/validate/MinLength.js.map +1 -1
  70. package/decorators/validate/Regex.d.ts +1 -1
  71. package/decorators/validate/Regex.js +10 -13
  72. package/decorators/validate/Regex.js.map +1 -1
  73. package/decorators/validate/Required.d.ts +1 -1
  74. package/decorators/validate/Required.js +9 -12
  75. package/decorators/validate/Required.js.map +1 -1
  76. package/decorators/validate/index.d.ts +8 -8
  77. package/decorators/validate/index.js +9 -19
  78. package/decorators/validate/index.js.map +1 -1
  79. package/index.d.ts +1 -1
  80. package/index.js +1 -17
  81. package/index.js.map +1 -1
  82. package/lib/AbstractRef.d.ts +4 -4
  83. package/lib/AbstractRef.js +29 -33
  84. package/lib/AbstractRef.js.map +1 -1
  85. package/lib/AnnotationsHelper.d.ts +2 -2
  86. package/lib/AnnotationsHelper.js +30 -34
  87. package/lib/AnnotationsHelper.js.map +1 -1
  88. package/lib/ClassRef.d.ts +7 -7
  89. package/lib/ClassRef.js +62 -66
  90. package/lib/ClassRef.js.map +1 -1
  91. package/lib/Constants.js +42 -45
  92. package/lib/Constants.js.map +1 -1
  93. package/lib/DataContainer.d.ts +6 -6
  94. package/lib/DataContainer.js +17 -21
  95. package/lib/DataContainer.js.map +1 -1
  96. package/lib/LookupRegistry.js +13 -17
  97. package/lib/LookupRegistry.js.map +1 -1
  98. package/lib/SchemaRef.d.ts +7 -7
  99. package/lib/SchemaRef.js +11 -15
  100. package/lib/SchemaRef.js.map +1 -1
  101. package/lib/SchemaUtils.d.ts +3 -3
  102. package/lib/SchemaUtils.js +19 -23
  103. package/lib/SchemaUtils.js.map +1 -1
  104. package/lib/functions.d.ts +2 -2
  105. package/lib/functions.js +7 -10
  106. package/lib/functions.js.map +1 -1
  107. package/lib/json-schema/Constants.js +3 -6
  108. package/lib/json-schema/Constants.js.map +1 -1
  109. package/lib/json-schema/IJsonSchemaSerializeOptions.d.ts +4 -4
  110. package/lib/json-schema/IJsonSchemaSerializeOptions.js +1 -2
  111. package/lib/json-schema/IJsonSchemaSerializer.d.ts +3 -3
  112. package/lib/json-schema/IJsonSchemaSerializer.js +1 -2
  113. package/lib/json-schema/IJsonSchemaUnserializeOptions.d.ts +3 -3
  114. package/lib/json-schema/IJsonSchemaUnserializeOptions.js +1 -2
  115. package/lib/json-schema/IJsonSchemaUnserializer.d.ts +1 -1
  116. package/lib/json-schema/IJsonSchemaUnserializer.js +1 -2
  117. package/lib/json-schema/IParseOptions.d.ts +2 -2
  118. package/lib/json-schema/IParseOptions.js +1 -4
  119. package/lib/json-schema/IParseOptions.js.map +1 -1
  120. package/lib/json-schema/JsonSchema.d.ts +10 -10
  121. package/lib/json-schema/JsonSchema.js +26 -30
  122. package/lib/json-schema/JsonSchema.js.map +1 -1
  123. package/lib/json-schema/JsonSchema7.d.ts +2 -2
  124. package/lib/json-schema/JsonSchema7.js +3 -8
  125. package/lib/json-schema/JsonSchema7.js.map +1 -1
  126. package/lib/json-schema/JsonSchema7Serializer.d.ts +9 -9
  127. package/lib/json-schema/JsonSchema7Serializer.js +93 -97
  128. package/lib/json-schema/JsonSchema7Serializer.js.map +1 -1
  129. package/lib/json-schema/JsonSchema7Unserializer.d.ts +10 -10
  130. package/lib/json-schema/JsonSchema7Unserializer.js +99 -103
  131. package/lib/json-schema/JsonSchema7Unserializer.js.map +1 -1
  132. package/lib/json-schema/functions.d.ts +2 -2
  133. package/lib/json-schema/functions.js +8 -12
  134. package/lib/json-schema/functions.js.map +1 -1
  135. package/lib/options/IAbstractOptions.d.ts +1 -1
  136. package/lib/options/IAbstractOptions.js +1 -2
  137. package/lib/options/IAttributeOptions.d.ts +2 -2
  138. package/lib/options/IAttributeOptions.js +1 -2
  139. package/lib/options/IEntityOptions.d.ts +2 -2
  140. package/lib/options/IEntityOptions.js +1 -2
  141. package/lib/options/INamedOptions.js +1 -2
  142. package/lib/options/IObjectOptions.d.ts +2 -2
  143. package/lib/options/IObjectOptions.js +1 -2
  144. package/lib/options/IPropertyOptions.d.ts +2 -2
  145. package/lib/options/IPropertyOptions.js +1 -2
  146. package/lib/options/ISchemaOptions.d.ts +2 -2
  147. package/lib/options/ISchemaOptions.js +1 -2
  148. package/lib/registry/AbstractRegistry.d.ts +8 -8
  149. package/lib/registry/AbstractRegistry.js +19 -23
  150. package/lib/registry/AbstractRegistry.js.map +1 -1
  151. package/lib/registry/Binding.d.ts +1 -1
  152. package/lib/registry/Binding.js +1 -5
  153. package/lib/registry/Binding.js.map +1 -1
  154. package/lib/registry/DefaultEntityRef.d.ts +9 -9
  155. package/lib/registry/DefaultEntityRef.js +10 -14
  156. package/lib/registry/DefaultEntityRef.js.map +1 -1
  157. package/lib/registry/DefaultNamespacedRegistry.d.ts +14 -14
  158. package/lib/registry/DefaultNamespacedRegistry.js +122 -126
  159. package/lib/registry/DefaultNamespacedRegistry.js.map +1 -1
  160. package/lib/registry/DefaultPropertyRef.d.ts +7 -7
  161. package/lib/registry/DefaultPropertyRef.js +42 -46
  162. package/lib/registry/DefaultPropertyRef.js.map +1 -1
  163. package/lib/registry/IRegistryOptions.js +1 -2
  164. package/lib/registry/MetadataRegistry.d.ts +8 -8
  165. package/lib/registry/MetadataRegistry.js +29 -33
  166. package/lib/registry/MetadataRegistry.js.map +1 -1
  167. package/lib/registry/RegistryFactory.d.ts +3 -3
  168. package/lib/registry/RegistryFactory.js +19 -23
  169. package/lib/registry/RegistryFactory.js.map +1 -1
  170. package/lib/serializer/ISerializeOptions.js +1 -2
  171. package/lib/serializer/ISerializer.d.ts +2 -2
  172. package/lib/serializer/ISerializer.js +1 -2
  173. package/lib/serializer/ISerializerFactory.d.ts +6 -6
  174. package/lib/serializer/ISerializerFactory.js +1 -2
  175. package/lib/serializer/IUnserializeOptions.js +1 -2
  176. package/lib/serializer/IUnserializer.d.ts +2 -2
  177. package/lib/serializer/IUnserializer.js +1 -2
  178. package/lib/serializer/SerializerRegistry.d.ts +1 -1
  179. package/lib/serializer/SerializerRegistry.js +3 -7
  180. package/lib/serializer/SerializerRegistry.js.map +1 -1
  181. package/lib/validation/DefaultValidator.d.ts +5 -5
  182. package/lib/validation/DefaultValidator.js +32 -36
  183. package/lib/validation/DefaultValidator.js.map +1 -1
  184. package/lib/validation/IValidateOptions.js +1 -2
  185. package/lib/validation/IValidationError.js +1 -2
  186. package/lib/validation/IValidationMessage.js +1 -2
  187. package/lib/validation/IValidationOptions.d.ts +1 -0
  188. package/lib/validation/IValidationOptions.js +1 -0
  189. package/lib/validation/IValidationOptions.js.map +1 -1
  190. package/lib/validation/IValidationResult.d.ts +1 -1
  191. package/lib/validation/IValidationResult.js +1 -2
  192. package/lib/validation/IValidator.d.ts +1 -1
  193. package/lib/validation/IValidator.js +1 -2
  194. package/lib/validation/IValidatorEntry.d.ts +1 -1
  195. package/lib/validation/IValidatorEntry.js +1 -2
  196. package/lib/validation/IValidatorHandle.js +1 -2
  197. package/lib/validation/Validator.d.ts +4 -4
  198. package/lib/validation/Validator.js +7 -11
  199. package/lib/validation/Validator.js.map +1 -1
  200. 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(): string;
31
+ getNamespace(): any;
32
32
  /**
33
33
  * Get registry containing elements
34
34
  */
35
- getRegistry(ns?: string): import("../..").ILookupRegistry;
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
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JsonSchema7Unserializer = void 0;
4
- const lodash_1 = require("lodash");
5
- const Constants_1 = require("./Constants");
6
- const JsonSchema_1 = require("./JsonSchema");
7
- const RegistryFactory_1 = require("../registry/RegistryFactory");
8
- const Constants_2 = require("../Constants");
9
- const IEntityRef_1 = require("../../api/IEntityRef");
10
- const ClassRef_1 = require("../ClassRef");
11
- const base_1 = require("@allgemein/base");
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 = Constants_1.DRAFT_07;
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/${Constants_1.DRAFT_07}/schema`;
23
+ return `http://json-schema.org/${DRAFT_07}/schema`;
27
24
  }
28
25
  async unserialize(data) {
29
26
  this.data = data;
30
- const isRoot = (0, lodash_1.get)(this.options, 'rootAsEntity', true);
27
+ const isRoot = get(this.options, 'rootAsEntity', true);
31
28
  const opts = { isRoot: isRoot };
32
- IParseOptions_1.PARSE_OPTIONS_KEYS.forEach(x => {
33
- if ((0, lodash_1.has)(this.options, x)) {
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 (0, lodash_1.get)(this.options, 'namespace', (0, lodash_1.get)(this.data, 'namespace', Constants_2.DEFAULT_NAMESPACE));
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 RegistryFactory_1.RegistryFactory.get(ns ? ns : this.getNamespace());
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 = (0, lodash_1.get)(options, 'metaType', Constants_2.METATYPE_ENTITY);
73
+ const type = get(options, 'metaType', METATYPE_ENTITY);
77
74
  let ret = null;
78
- if (!(0, lodash_1.isUndefined)(data[key]) || !(0, lodash_1.isNull)(data[key])) {
75
+ if (!isUndefined(data[key]) || !isNull(data[key])) {
79
76
  ret = {};
80
77
  ret[key] = data[key];
81
78
  }
82
- if ((0, lodash_1.has)(this.options, 'collector') && this.options.collector.length > 0) {
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 = (0, lodash_1.assign)(ret, ...methods.map(e => e.fn.apply(null, [key, data, options])));
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 ClassRef_1.ClassRef.get(className, namespace);
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 === Constants_2.T_OBJECT) {
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 && (0, lodash_1.keys)(data.definitions).length === 0) {
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 ((0, lodash_1.has)(this.reference, data.$ref)) {
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 = (0, lodash_1.clone)(options);
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 (0, lodash_1.keys)(data)) {
157
- if (k !== 'properties' && (0, lodash_1.isObjectLike)(data[k])) {
158
- const exists = (0, lodash_1.keys)(data[k]).find(x => (0, lodash_1.has)(data[k][x], 'type'));
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 ((0, lodash_1.isEmpty)(addr)) {
168
+ if (isEmpty(addr)) {
172
169
  // local
173
- if ((0, lodash_1.isEmpty)(anchor)) {
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 = (0, lodash_1.get)(data, dottedPath, null);
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 (0, lodash_1.keys)(data[defKey])) {
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 JsonSchema_1.JsonSchema.request(addr, { cwd: this.options.cwd });
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 = (0, IEntityRef_1.isEntityRef)(classRef) ? classRef.getClassRef() : classRef;
221
- const propertyNames = (0, lodash_1.keys)(properties);
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 = (0, IEntityRef_1.isEntityRef)(classRef) ? classRef.getClassRef() : classRef;
224
+ const _classRef = isEntityRef(classRef) ? classRef.getClassRef() : classRef;
228
225
  const propRefExits = _classRef.getRegistry()
229
- .find(Constants_2.METATYPE_PROPERTY, (x) => x.getClassRef() === _classRef && x.name === propertyName);
226
+ .find(METATYPE_PROPERTY, (x) => x.getClassRef() === _classRef && x.name === propertyName);
230
227
  const propOptions = {
231
- metaType: Constants_2.METATYPE_PROPERTY,
228
+ metaType: METATYPE_PROPERTY,
232
229
  propertyName: propertyName,
233
230
  target: _classRef.getClass(true),
234
231
  // default type is object
235
- type: Constants_2.T_OBJECT,
232
+ type: T_OBJECT,
236
233
  };
237
234
  if (options.isPattern) {
238
- propOptions[Constants_2.K_PATTERN_PROPERTY] = true;
235
+ propOptions[K_PATTERN_PROPERTY] = true;
239
236
  }
240
- if ((0, lodash_1.isObjectLike)(data)) {
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
- (0, lodash_1.assign)(propOptions, collectOptions);
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[Constants_2.K_PATTERN_PROPERTY] = true;
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 base_1.NotSupportedError('passed boolean value as definition not supported');
263
+ throw new NotSupportedError('passed boolean value as definition not supported');
267
264
  }
268
- if (!propRefExits || (0, lodash_1.get)(this.options, 'forcePropertyRefCreation', false)) {
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(Constants_2.METATYPE_PROPERTY, propOptions);
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 (0, lodash_1.has)(datapointer, 'properties');
280
+ return has(datapointer, 'properties');
284
281
  }
285
282
  hasPatternProperties(datapointer) {
286
- return (0, lodash_1.has)(datapointer, 'patternProperties');
283
+ return has(datapointer, 'patternProperties');
287
284
  }
288
285
  async onTypes(dataPointer, propOptions, options) {
289
286
  let type = dataPointer.type;
290
- if ((0, lodash_1.isString)(type)) {
287
+ if (isString(type)) {
291
288
  type = type.toLowerCase();
292
289
  }
293
290
  switch (type) {
294
- case Constants_2.T_STRING:
291
+ case T_STRING:
295
292
  const res = this.onTypeString(dataPointer);
296
- (0, lodash_1.assign)(propOptions, res);
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 Constants_2.T_OBJECT:
308
- propOptions.type = Constants_2.T_OBJECT;
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 Constants_2.T_ARRAY:
310
+ case T_ARRAY:
314
311
  // check items
315
312
  if (dataPointer.minItems || dataPointer.maxItems) {
316
313
  propOptions.cardinality = {
317
- min: (0, lodash_1.get)(dataPointer, 'minItems', 0),
318
- max: (0, lodash_1.get)(dataPointer, 'maxItems', 0),
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 ((0, lodash_1.isArray)(dataPointer.items)) {
326
- throw new base_1.NotSupportedError('tuple values for array is not supported');
322
+ if (isArray(dataPointer.items)) {
323
+ throw new NotSupportedError('tuple values for array is not supported');
327
324
  }
328
- else if ((0, lodash_1.isObjectLike)(dataPointer.items)) {
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 === Constants_2.T_OBJECT) {
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[Constants_2.K_PATTERN_PROPERTY] = true;
341
+ propOptions[K_PATTERN_PROPERTY] = true;
345
342
  }
346
343
  }
347
344
  }
348
345
  break;
349
346
  case 'null':
350
- throw new base_1.NotSupportedError('null value is not supported for property');
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 = Constants_2.T_STRING;
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 ((0, lodash_1.has)(data, key)) {
370
+ if (has(data, key)) {
374
371
  const values = data[key];
375
- if ((0, lodash_1.isArray)(values)) {
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 base_1.NotSupportedError('only array is allowed for ' + key);
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 = (0, lodash_1.get)(data, '$id', (0, lodash_1.get)(data, 'id', null));
389
- let metaType = options.isRoot || !(0, lodash_1.isEmpty)(id) ? Constants_2.METATYPE_ENTITY : Constants_2.METATYPE_CLASS_REF;
390
- const title = (0, lodash_1.get)(data, 'title', null);
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 = !(0, lodash_1.get)(this.options, 'skipNamespace', false) ?
393
- (0, lodash_1.get)(data, '$' + Constants_2.METATYPE_NAMESPACE, this.getNamespace()) : this.getNamespace();
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 || !(0, lodash_1.get)(this.options, 'ignoreDeclared', false)) {
409
- className = (0, lodash_1.upperFirst)((0, lodash_1.camelCase)(title));
405
+ if (!className || !get(this.options, 'ignoreDeclared', false)) {
406
+ className = upperFirst(camelCase(title));
410
407
  }
411
408
  }
412
- let entityName = metaType === Constants_2.METATYPE_ENTITY && id ? id.replace(/^#/, '') : className;
409
+ let entityName = metaType === METATYPE_ENTITY && id ? id.replace(/^#/, '') : className;
413
410
  if (!className && options?.isProperty && options.propertyName) {
414
- if ((0, lodash_1.get)(this.options, 'prependClass', false)) {
415
- className = [options.sourceRef.name, options.propertyName].map(x => (0, lodash_1.upperFirst)((0, lodash_1.camelCase)(x))).join('');
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 = (0, lodash_1.upperFirst)((0, lodash_1.camelCase)(options.propertyName));
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 = (0, lodash_1.get)(this.options, 'forceClassRefCreation', false) ? SchemaUtils_1.SchemaUtils.clazz(className) : className;
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 = Constants_2.METATYPE_CLASS_REF;
429
- classRef = this.getClassRef(SchemaUtils_1.SchemaUtils.clazzAnonymous(), namespace);
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 ((0, lodash_1.has)(data, inheritsKey)) {
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 = (0, lodash_1.clone)(options);
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 = MetadataRegistry_1.MetadataRegistry.$().find(metaType, (x) => x.target === clazz);
450
+ let entityOptions = MetadataRegistry.$().find(metaType, (x) => x.target === clazz);
454
451
  if (entityOptions) {
455
452
  // merge existing
456
- (0, lodash_1.assign)(entityOptions, refOptions);
453
+ assign(entityOptions, refOptions);
457
454
  }
458
455
  else {
459
456
  entityOptions = refOptions;
460
- refOptions.metaType = Constants_2.METATYPE_CLASS_REF;
457
+ refOptions.metaType = METATYPE_CLASS_REF;
461
458
  const existingOptions = classRef.getOptions();
462
- classRef.setOptions((0, lodash_1.defaults)(refOptions, existingOptions));
459
+ classRef.setOptions(defaults(refOptions, existingOptions));
463
460
  }
464
- if (metaType === Constants_2.METATYPE_ENTITY) {
461
+ if (metaType === METATYPE_ENTITY) {
465
462
  ret = this.getRegistry(namespace).find(metaType, (x) => x.getClassRef() === classRef);
466
- if (!ret || (0, lodash_1.get)(this.options, 'forceEntityRefCreation', false)) {
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 base_1.NotYetImplementedError();
477
+ throw new NotYetImplementedError();
481
478
  }
482
479
  return ret;
483
480
  }
484
481
  collectAndProcess(data, collectingObject, skipKeys, collectorOptions) {
485
- const type = (0, lodash_1.get)(collectorOptions, 'metaType', Constants_2.METATYPE_ENTITY);
486
- const _keys = (0, lodash_1.keys)(data);
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 && (0, lodash_1.isObjectLike)(entry)) {
493
- collectingObject = (0, lodash_1.assign)(collectingObject, entry);
489
+ if (entry && isObjectLike(entry)) {
490
+ collectingObject = assign(collectingObject, entry);
494
491
  }
495
492
  }
496
- if ((0, lodash_1.has)(this.options, 'collector') && this.options.collector.length > 0) {
497
- const methods = this.options.collector.filter(x => x.type === type && (0, lodash_1.isUndefined)(x.key));
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 = (0, lodash_1.assign)(collectingObject, ...methods.map(e => e.fn.apply(null, [null, data, collectorOptions])));
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;