@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 +1 @@
1
- {"version":3,"file":"JsonSchema.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonSchema.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { JSONSchema7 } from 'json-schema';
2
- import { IClassRef } from '../../api/IClassRef';
3
- import { IEntityRef } from '../../api/IEntityRef';
2
+ import { IClassRef } from '../../api/IClassRef.js';
3
+ import { IEntityRef } from '../../api/IEntityRef.js';
4
4
  export interface IJsonSchema7 extends JSONSchema7 {
5
5
  $target?: Function | IClassRef | IEntityRef;
6
6
  definitions?: {
@@ -1,9 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JSON_SCHEMA_7_TYPES = void 0;
4
- exports.hasClassInDefinition = hasClassInDefinition;
5
- exports.hasClassPropertiesInDefinition = hasClassPropertiesInDefinition;
6
- exports.JSON_SCHEMA_7_TYPES = [
1
+ export const JSON_SCHEMA_7_TYPES = [
7
2
  'string',
8
3
  'number',
9
4
  'integer',
@@ -12,10 +7,10 @@ exports.JSON_SCHEMA_7_TYPES = [
12
7
  'array',
13
8
  'null'
14
9
  ];
15
- function hasClassInDefinition(name, def) {
10
+ export function hasClassInDefinition(name, def) {
16
11
  return def && def.definitions && def.definitions[name];
17
12
  }
18
- function hasClassPropertiesInDefinition(name, def) {
13
+ export function hasClassPropertiesInDefinition(name, def) {
19
14
  return hasClassInDefinition(name, def) && def.definitions[name].properties;
20
15
  }
21
16
  //# sourceMappingURL=JsonSchema7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonSchema7.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7.ts"],"names":[],"mappings":";;;AAmCA,oDAEC;AAED,wEAEC;AAjBY,QAAA,mBAAmB,GAA2B;IACzD,QAAQ;IACN,QAAQ;IACR,SAAS;IACT,SAAS;IACT,QAAQ;IACR,OAAO;IACP,MAAM;CACT,CAAC;AAGF,SAAgB,oBAAoB,CAAC,IAAY,EAAE,GAAiB;IAClE,OAAO,GAAG,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACzD,CAAC;AAED,SAAgB,8BAA8B,CAAC,IAAY,EAAE,GAAiB;IAC5E,OAAO,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,IAAK,GAAG,CAAC,WAAW,CAAC,IAAI,CAAkB,CAAC,UAAU,CAAC;AAC/F,CAAC"}
1
+ {"version":3,"file":"JsonSchema7.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,QAAQ;IACN,QAAQ;IACR,SAAS;IACT,SAAS;IACT,QAAQ;IACR,OAAO;IACP,MAAM;CACT,CAAC;AAGF,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,GAAiB;IAClE,OAAO,GAAG,IAAI,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,IAAY,EAAE,GAAiB;IAC5E,OAAO,oBAAoB,CAAC,IAAI,EAAE,GAAG,CAAC,IAAK,GAAG,CAAC,WAAW,CAAC,IAAI,CAAkB,CAAC,UAAU,CAAC;AAC/F,CAAC"}
@@ -1,11 +1,11 @@
1
- import { IJsonSchema7, IJsonSchema7Definition } from './JsonSchema7';
2
- import { IClassRef } from '../../api/IClassRef';
3
- import { IPropertyRef } from '../../api/IPropertyRef';
4
- import { IJsonSchemaSerializer } from './IJsonSchemaSerializer';
5
- import { IEntityRef } from '../../api/IEntityRef';
6
- import { IJsonSchemaSerializeOptions } from './IJsonSchemaSerializeOptions';
7
- import { IEntityOptions } from '../options/IEntityOptions';
8
- import { IPropertyOptions } from '../options/IPropertyOptions';
1
+ import { IJsonSchema7, IJsonSchema7Definition } from './JsonSchema7.js';
2
+ import { IClassRef } from '../../api/IClassRef.js';
3
+ import { IPropertyRef } from '../../api/IPropertyRef.js';
4
+ import { IJsonSchemaSerializer } from './IJsonSchemaSerializer.js';
5
+ import { IEntityRef } from '../../api/IEntityRef.js';
6
+ import { IJsonSchemaSerializeOptions } from './IJsonSchemaSerializeOptions.js';
7
+ import { IEntityOptions } from '../options/IEntityOptions.js';
8
+ import { IPropertyOptions } from '../options/IPropertyOptions.js';
9
9
  export declare class JsonSchema7Serializer implements IJsonSchemaSerializer {
10
10
  options: IJsonSchemaSerializeOptions;
11
11
  data: IJsonSchema7;
@@ -32,7 +32,7 @@ export declare class JsonSchema7Serializer implements IJsonSchemaSerializer {
32
32
  describePropertiesForRef(klass: IClassRef): {
33
33
  [k: string]: IJsonSchema7Definition;
34
34
  };
35
- isAppendTargetSet(): boolean;
35
+ isAppendTargetSet(): any;
36
36
  describePropertyForFunction(klass: Function | IClassRef, propertyName: string, instance?: any): IJsonSchema7Definition;
37
37
  appendAdditionalOptions(propMeta: any, data: IEntityOptions | IPropertyOptions): void;
38
38
  /**
@@ -1,27 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.JsonSchema7Serializer = void 0;
4
- const lodash_1 = require("lodash");
5
- const base_1 = require("@allgemein/base");
6
- const JsonSchema7_1 = require("./JsonSchema7");
7
- const Constants_1 = require("../Constants");
8
- const IClassRef_1 = require("../../api/IClassRef");
9
- const SchemaUtils_1 = require("../SchemaUtils");
10
- const IEntityRef_1 = require("../../api/IEntityRef");
11
- const Constants_2 = require("./Constants");
12
- const MetadataRegistry_1 = require("../registry/MetadataRegistry");
13
- const functions_1 = require("./functions");
14
- const functions_2 = require("../functions");
15
- class JsonSchema7Serializer {
1
+ import { defaults, get, has, isEmpty, isFunction, isNull, isString, isUndefined, keys, set, snakeCase, uniqBy } from '@allgemein/base';
2
+ import { ClassUtils, NotSupportedError } from '@allgemein/base';
3
+ import { JSON_SCHEMA_7_TYPES } from './JsonSchema7.js';
4
+ import { DEFAULT_KEY_TO_SKIP, K_PATTERN_PROPERTY, METATYPE_NAMESPACE, METATYPE_PROPERTY, T_ARRAY, T_BOOLEAN, T_OBJECT, T_STRING } from '../Constants.js';
5
+ import { isClassRef } from '../../api/IClassRef.js';
6
+ import { SchemaUtils } from '../SchemaUtils.js';
7
+ import { isEntityRef } from '../../api/IEntityRef.js';
8
+ import { C_ONLY_DECORATED, DRAFT_07 } from './Constants.js';
9
+ import { MetadataRegistry } from '../registry/MetadataRegistry.js';
10
+ import { getReflectedType, setDefaultArray } from "./functions.js";
11
+ import { getClassName } from "../functions.js";
12
+ export class JsonSchema7Serializer {
16
13
  constructor(opts) {
17
14
  this.options = opts || {};
18
- (0, lodash_1.defaults)(this.options, {
19
- keysToSkip: Constants_1.DEFAULT_KEY_TO_SKIP,
15
+ defaults(this.options, {
16
+ keysToSkip: DEFAULT_KEY_TO_SKIP,
20
17
  ignoreUnknownType: false,
21
- defaultTypeHint: Constants_1.T_STRING,
22
- [Constants_2.C_ONLY_DECORATED]: false,
18
+ defaultTypeHint: T_STRING,
19
+ [C_ONLY_DECORATED]: false,
23
20
  postProcess: (src, dst, serializer) => {
24
- if (src && src.metaType === Constants_1.METATYPE_PROPERTY && (0, lodash_1.has)(dst, 'cardinality')) {
21
+ if (src && src.metaType === METATYPE_PROPERTY && has(dst, 'cardinality')) {
25
22
  const cardinality = dst['cardinality'];
26
23
  delete dst['cardinality'];
27
24
  // TODO handle value corretly minItem/maxItem when item!
@@ -36,26 +33,26 @@ class JsonSchema7Serializer {
36
33
  this.data = this.getOrCreateSchemaDefinitions();
37
34
  }
38
35
  uri() {
39
- return `http://json-schema.org/${Constants_2.DRAFT_07}/schema`;
36
+ return `http://json-schema.org/${DRAFT_07}/schema`;
40
37
  }
41
38
  isCurrentClass(x) {
42
- return (0, lodash_1.snakeCase)(this.current) === (0, lodash_1.snakeCase)(x);
39
+ return snakeCase(this.current) === snakeCase(x);
43
40
  }
44
41
  serialize(klass) {
45
- if ((0, lodash_1.isFunction)(klass)) {
46
- this.current = base_1.ClassUtils.getClassName(klass);
42
+ if (isFunction(klass)) {
43
+ this.current = ClassUtils.getClassName(klass);
47
44
  this.describeClass(klass);
48
45
  }
49
- else if ((0, IClassRef_1.isClassRef)(klass)) {
46
+ else if (isClassRef(klass)) {
50
47
  this.current = klass.name;
51
48
  this.describeClassRef(klass);
52
49
  }
53
- else if ((0, IEntityRef_1.isEntityRef)(klass)) {
50
+ else if (isEntityRef(klass)) {
54
51
  this.current = klass.name;
55
52
  this.describeEntityRef(klass);
56
53
  }
57
54
  else {
58
- throw new base_1.NotSupportedError('class or function can\'t be used');
55
+ throw new NotSupportedError('class or function can\'t be used');
59
56
  }
60
57
  return this.getJsonSchema();
61
58
  }
@@ -80,28 +77,28 @@ class JsonSchema7Serializer {
80
77
  this.applyRef(entityName);
81
78
  return null;
82
79
  }
83
- const className = (0, functions_2.getClassName)(klass);
80
+ const className = getClassName(klass);
84
81
  const appendTarget = this.isAppendTargetSet();
85
82
  const root = this.data.definitions[entityName] = {
86
83
  title: className ? className : entityName,
87
- type: Constants_1.T_OBJECT,
84
+ type: T_OBJECT,
88
85
  };
89
- if ((0, IEntityRef_1.isEntityRef)(klass)) {
86
+ if (isEntityRef(klass)) {
90
87
  // when an entity mark with $id!
91
88
  root.$id = '#' + klass.name;
92
89
  }
93
- else if ((0, IClassRef_1.isClassRef)(klass) && klass.hasEntityRef()) {
90
+ else if (isClassRef(klass) && klass.hasEntityRef()) {
94
91
  root.$id = '#' + klass.getEntityRef().name;
95
92
  }
96
- if (((0, IEntityRef_1.isEntityRef)(klass) || (0, IClassRef_1.isClassRef)(klass))) {
97
- if ((0, lodash_1.get)(this.options, 'appendNamespace', false)) {
98
- (0, lodash_1.set)(root, '$' + Constants_1.METATYPE_NAMESPACE, klass.getRegistry().getLookupRegistry().getNamespace());
93
+ if ((isEntityRef(klass) || isClassRef(klass))) {
94
+ if (get(this.options, 'appendNamespace', false)) {
95
+ set(root, '$' + METATYPE_NAMESPACE, klass.getRegistry().getLookupRegistry().getNamespace());
99
96
  }
100
97
  const data = klass.getOptions();
101
98
  this.appendAdditionalOptions(root, data);
102
99
  }
103
100
  if (appendTarget) {
104
- root.$target = SchemaUtils_1.SchemaUtils.getFunction(klass);
101
+ root.$target = SchemaUtils.getFunction(klass);
105
102
  }
106
103
  this.applyRef(entityName);
107
104
  if (this.options.postProcess) {
@@ -128,7 +125,7 @@ class JsonSchema7Serializer {
128
125
  }
129
126
  }
130
127
  if (this.data.anyOf) {
131
- this.data.anyOf = (0, lodash_1.uniqBy)(this.data.anyOf, x => JSON.stringify(x));
128
+ this.data.anyOf = uniqBy(this.data.anyOf, x => JSON.stringify(x));
132
129
  }
133
130
  }
134
131
  describeEntityRef(klass) {
@@ -138,8 +135,8 @@ class JsonSchema7Serializer {
138
135
  return this.describeRef(klass);
139
136
  }
140
137
  describeRef(klass) {
141
- const clsRef = (0, IEntityRef_1.isEntityRef)(klass) ? klass.getClassRef() : klass;
142
- const className = (0, IEntityRef_1.isEntityRef)(klass) ? klass.name : clsRef.name;
138
+ const clsRef = isEntityRef(klass) ? klass.getClassRef() : klass;
139
+ const className = isEntityRef(klass) ? klass.name : clsRef.name;
143
140
  const root = this.getOrCreateRoot(className, klass);
144
141
  if (!root) {
145
142
  return null;
@@ -162,16 +159,16 @@ class JsonSchema7Serializer {
162
159
  }
163
160
  }
164
161
  describeClass(klass) {
165
- const className = base_1.ClassUtils.getClassName(klass);
162
+ const className = ClassUtils.getClassName(klass);
166
163
  const root = this.getOrCreateRoot(className, klass);
167
164
  if (!root) {
168
165
  return null;
169
166
  }
170
167
  const rootProps = this.describePropertiesForFunction(klass);
171
168
  this.appendProperties(root, rootProps);
172
- const proto = SchemaUtils_1.SchemaUtils.getInherited(klass);
169
+ const proto = SchemaUtils.getInherited(klass);
173
170
  if (proto) {
174
- const inheritedClassName = base_1.ClassUtils.getClassName(proto);
171
+ const inheritedClassName = ClassUtils.getClassName(proto);
175
172
  root.allOf = [{ $ref: '#/definitions/' + inheritedClassName }];
176
173
  if (this.data && !this.data.definitions[inheritedClassName]) {
177
174
  const inheritedClass = this.getOrCreateRoot(inheritedClassName, proto);
@@ -183,9 +180,9 @@ class JsonSchema7Serializer {
183
180
  }
184
181
  appendProperties(data, properties) {
185
182
  data.properties = {};
186
- for (const k of (0, lodash_1.keys)(properties)) {
183
+ for (const k of keys(properties)) {
187
184
  const p = properties[k];
188
- if (p[Constants_1.K_PATTERN_PROPERTY]) {
185
+ if (p[K_PATTERN_PROPERTY]) {
189
186
  if (!data.patternProperties) {
190
187
  data.patternProperties = {};
191
188
  }
@@ -194,7 +191,7 @@ class JsonSchema7Serializer {
194
191
  else {
195
192
  data.properties[k] = p;
196
193
  }
197
- delete p[Constants_1.K_PATTERN_PROPERTY];
194
+ delete p[K_PATTERN_PROPERTY];
198
195
  }
199
196
  }
200
197
  describePropertiesForFunction(klass) {
@@ -208,8 +205,8 @@ class JsonSchema7Serializer {
208
205
  catch (e) {
209
206
  }
210
207
  for (const p of _properties) {
211
- if ((0, lodash_1.isString)(p)) {
212
- if (!(0, lodash_1.get)(this.options, Constants_2.C_ONLY_DECORATED, false) && this.allowed(p, klass)) {
208
+ if (isString(p)) {
209
+ if (!get(this.options, C_ONLY_DECORATED, false) && this.allowed(p, klass)) {
213
210
  const result = this.describePropertyForFunction(klass, p, instance);
214
211
  properties[p] = result;
215
212
  }
@@ -231,40 +228,40 @@ class JsonSchema7Serializer {
231
228
  // TODO own key
232
229
  const _properties = Reflect.ownKeys(instance);
233
230
  for (const p of _properties) {
234
- if ((0, lodash_1.isString)(p) && !(0, lodash_1.has)(properties, p)) {
235
- if (!(0, lodash_1.get)(this.options, Constants_2.C_ONLY_DECORATED, false)) {
231
+ if (isString(p) && !has(properties, p)) {
232
+ if (!get(this.options, C_ONLY_DECORATED, false)) {
236
233
  const result = this.describePropertyForFunction(klass, p, instance);
237
234
  if (result) {
238
235
  properties[p] = result;
239
236
  }
240
237
  }
241
238
  }
242
- else if ((0, lodash_1.isString)(p) && (0, lodash_1.has)(properties, p)) {
239
+ else if (isString(p) && has(properties, p)) {
243
240
  const value = instance[p];
244
- if (!((0, lodash_1.isNull)(value) || (0, lodash_1.isUndefined)(value))) {
241
+ if (!(isNull(value) || isUndefined(value))) {
245
242
  // add default value if exists
246
- properties[p].default = SchemaUtils_1.SchemaUtils.normValue(value);
243
+ properties[p].default = SchemaUtils.normValue(value);
247
244
  }
248
245
  }
249
246
  }
250
247
  return properties;
251
248
  }
252
249
  isAppendTargetSet() {
253
- return (0, lodash_1.get)(this.options, 'appendTarget', false);
250
+ return get(this.options, 'appendTarget', false);
254
251
  }
255
252
  describePropertyForFunction(klass, propertyName, instance) {
256
- const clazz = (0, IClassRef_1.isClassRef)(klass) ? klass.getClass() : klass;
253
+ const clazz = isClassRef(klass) ? klass.getClass() : klass;
257
254
  const propMeta = {};
258
255
  // check if property is object
259
256
  let value = instance ? instance[propertyName] : undefined;
260
257
  let typeHint = typeof value;
261
- const reflectMetadataType = (0, functions_1.getReflectedType)(clazz, propertyName);
262
- if (this.options.typeHint && (0, lodash_1.isFunction)(this.options.typeHint)) {
258
+ const reflectMetadataType = getReflectedType(clazz, propertyName);
259
+ if (this.options.typeHint && isFunction(this.options.typeHint)) {
263
260
  typeHint = this.options.typeHint(klass, propertyName, instance, value);
264
261
  }
265
262
  else {
266
- if (typeHint === Constants_1.T_OBJECT) {
267
- if (reflectMetadataType && reflectMetadataType !== Constants_1.T_OBJECT) {
263
+ if (typeHint === T_OBJECT) {
264
+ if (reflectMetadataType && reflectMetadataType !== T_OBJECT) {
268
265
  typeHint = reflectMetadataType;
269
266
  }
270
267
  else {
@@ -272,16 +269,16 @@ class JsonSchema7Serializer {
272
269
  typeHint = this.getDefaultTypeHint();
273
270
  }
274
271
  else if (value === false || value === true) {
275
- typeHint = Constants_1.T_BOOLEAN;
272
+ typeHint = T_BOOLEAN;
276
273
  }
277
274
  else {
278
275
  typeHint = Reflect.getPrototypeOf(value)?.constructor;
279
276
  if (typeHint && typeHint.name) {
280
277
  if (typeHint.name === Object.name) {
281
- typeHint = Constants_1.T_OBJECT;
278
+ typeHint = T_OBJECT;
282
279
  }
283
280
  else if (typeHint.name === Array.name) {
284
- typeHint = Constants_1.T_ARRAY;
281
+ typeHint = T_ARRAY;
285
282
  }
286
283
  }
287
284
  else {
@@ -293,20 +290,20 @@ class JsonSchema7Serializer {
293
290
  }
294
291
  let target = null;
295
292
  if (typeHint) {
296
- if ((0, lodash_1.isString)(typeHint)) {
293
+ if (isString(typeHint)) {
297
294
  propMeta.type = typeHint;
298
- if (propMeta.type === Constants_1.T_ARRAY) {
299
- (0, functions_1.setDefaultArray)(propMeta);
295
+ if (propMeta.type === T_ARRAY) {
296
+ setDefaultArray(propMeta);
300
297
  }
301
298
  }
302
- else if ((0, lodash_1.isFunction)(typeHint)) {
299
+ else if (isFunction(typeHint)) {
303
300
  if (typeHint === Date) {
304
301
  // propMeta.type = 'date' as any;
305
- propMeta.type = Constants_1.T_STRING;
302
+ propMeta.type = T_STRING;
306
303
  propMeta.format = 'date-time';
307
304
  }
308
305
  else {
309
- const name = base_1.ClassUtils.getClassName(typeHint);
306
+ const name = ClassUtils.getClassName(typeHint);
310
307
  if (name === '' || name === Function.name) {
311
308
  // Function passing the parameter type
312
309
  // propMeta.$target = typeHint();
@@ -318,25 +315,25 @@ class JsonSchema7Serializer {
318
315
  }
319
316
  // maybe follow the object here
320
317
  if (target.name === Array.name) {
321
- (0, functions_1.setDefaultArray)(propMeta);
318
+ setDefaultArray(propMeta);
322
319
  }
323
320
  else {
324
- propMeta.type = Constants_1.T_OBJECT;
321
+ propMeta.type = T_OBJECT;
325
322
  }
326
323
  }
327
324
  }
328
325
  }
329
- if (!propMeta.type || ((0, lodash_1.isString)(propMeta.type) && (0, lodash_1.isEmpty)(propMeta.type))) {
326
+ if (!propMeta.type || (isString(propMeta.type) && isEmpty(propMeta.type))) {
330
327
  if (reflectMetadataType) {
331
- const className = base_1.ClassUtils.getClassName(reflectMetadataType);
332
- if (JsonSchema7_1.JSON_SCHEMA_7_TYPES.includes(className.toLowerCase())) {
328
+ const className = ClassUtils.getClassName(reflectMetadataType);
329
+ if (JSON_SCHEMA_7_TYPES.includes(className.toLowerCase())) {
333
330
  propMeta.type = className.toLowerCase();
334
331
  }
335
332
  else if (className === Array.name) {
336
- (0, functions_1.setDefaultArray)(propMeta);
333
+ setDefaultArray(propMeta);
337
334
  }
338
335
  else {
339
- propMeta.type = Constants_1.T_OBJECT;
336
+ propMeta.type = T_OBJECT;
340
337
  target = reflectMetadataType;
341
338
  }
342
339
  }
@@ -349,9 +346,9 @@ class JsonSchema7Serializer {
349
346
  if (this.isAppendTargetSet()) {
350
347
  propMeta.$target = target;
351
348
  }
352
- const className = base_1.ClassUtils.getClassName(target);
349
+ const className = ClassUtils.getClassName(target);
353
350
  let ref = '#/definitions/' + className;
354
- if (propMeta.type === Constants_1.T_ARRAY) {
351
+ if (propMeta.type === T_ARRAY) {
355
352
  propMeta.items = {
356
353
  $ref: ref
357
354
  };
@@ -364,31 +361,31 @@ class JsonSchema7Serializer {
364
361
  this.describeClass(target);
365
362
  }
366
363
  }
367
- if (!((0, lodash_1.isUndefined)(value) || (0, lodash_1.isNull)(value))) {
368
- propMeta.default = SchemaUtils_1.SchemaUtils.normValue(value);
364
+ if (!(isUndefined(value) || isNull(value))) {
365
+ propMeta.default = SchemaUtils.normValue(value);
369
366
  }
370
367
  this.propertyPostproces(propMeta);
371
- const data = MetadataRegistry_1.MetadataRegistry.$().find(Constants_1.METATYPE_PROPERTY, (x) => x.target === clazz && x.propertyName === propertyName);
368
+ const data = MetadataRegistry.$().find(METATYPE_PROPERTY, (x) => x.target === clazz && x.propertyName === propertyName);
372
369
  this.appendAdditionalOptions(propMeta, data);
373
370
  return propMeta;
374
371
  }
375
372
  appendAdditionalOptions(propMeta, data) {
376
- if (data && (0, lodash_1.keys)(data).length > 0) {
373
+ if (data && keys(data).length > 0) {
377
374
  const metaType = data.metaType;
378
- if (metaType === Constants_1.METATYPE_PROPERTY) {
379
- if ((0, IClassRef_1.isClassRef)(data.type) || (0, IEntityRef_1.isEntityRef)(data.type)) {
375
+ if (metaType === METATYPE_PROPERTY) {
376
+ if (isClassRef(data.type) || isEntityRef(data.type)) {
380
377
  // if reference ignore adding
381
- if ((0, lodash_1.get)(this.options, 'deleteReferenceKeys', true)) {
378
+ if (get(this.options, 'deleteReferenceKeys', true)) {
382
379
  return;
383
380
  }
384
381
  }
385
382
  }
386
- const _keys = (0, lodash_1.keys)(data);
383
+ const _keys = keys(data);
387
384
  for (const k of _keys) {
388
385
  if (this.options.keysToSkip.includes(k)) {
389
386
  continue;
390
387
  }
391
- if (!propMeta[k] || (0, lodash_1.get)(this.options, 'allowKeyOverride', false)) {
388
+ if (!propMeta[k] || get(this.options, 'allowKeyOverride', false)) {
392
389
  propMeta[k] = data[k];
393
390
  }
394
391
  }
@@ -400,7 +397,7 @@ class JsonSchema7Serializer {
400
397
  * @param entry
401
398
  */
402
399
  allowed(entry, klass) {
403
- if (this.options && this.options.allowedProperty && (0, lodash_1.isFunction)(this.options.allowedProperty)) {
400
+ if (this.options && this.options.allowedProperty && isFunction(this.options.allowedProperty)) {
404
401
  return this.options.allowedProperty(entry, klass);
405
402
  }
406
403
  return true;
@@ -408,7 +405,7 @@ class JsonSchema7Serializer {
408
405
  describePropertyForRef(klass, property) {
409
406
  const propMeta = {};
410
407
  if (property.isCollection()) {
411
- (0, functions_1.setDefaultArray)(propMeta);
408
+ setDefaultArray(propMeta);
412
409
  if (property.isReference()) {
413
410
  this.describeTargetRef(property, propMeta, 'collection');
414
411
  }
@@ -421,7 +418,7 @@ class JsonSchema7Serializer {
421
418
  }
422
419
  }
423
420
  else {
424
- propMeta.type = Constants_1.T_OBJECT;
421
+ propMeta.type = T_OBJECT;
425
422
  if (property.isReference()) {
426
423
  this.describeTargetRef(property, propMeta, 'single');
427
424
  }
@@ -434,8 +431,8 @@ class JsonSchema7Serializer {
434
431
  const data = property.getOptions();
435
432
  this.appendAdditionalOptions(propMeta, data);
436
433
  // pass data pattern property for later correct selection
437
- if (data[Constants_1.K_PATTERN_PROPERTY]) {
438
- propMeta[Constants_1.K_PATTERN_PROPERTY] = true;
434
+ if (data[K_PATTERN_PROPERTY]) {
435
+ propMeta[K_PATTERN_PROPERTY] = true;
439
436
  }
440
437
  if (this.options.postProcess) {
441
438
  this.options.postProcess(property, propMeta, this);
@@ -444,8 +441,8 @@ class JsonSchema7Serializer {
444
441
  }
445
442
  describeTargetRef(property, propMeta, mode) {
446
443
  let targetRef = property.getTargetRef();
447
- if ((0, lodash_1.get)(this.options, 'deleteReferenceKeys', true)) {
448
- (0, lodash_1.keys)(propMeta).map(k => delete propMeta[k]);
444
+ if (get(this.options, 'deleteReferenceKeys', true)) {
445
+ keys(propMeta).map(k => delete propMeta[k]);
449
446
  }
450
447
  else {
451
448
  this.options.keysToSkip.map(x => delete propMeta[x]);
@@ -453,7 +450,7 @@ class JsonSchema7Serializer {
453
450
  if (targetRef.hasEntityRef()) {
454
451
  targetRef = targetRef.getEntityRef();
455
452
  if (mode === 'collection') {
456
- propMeta.type = Constants_1.T_ARRAY;
453
+ propMeta.type = T_ARRAY;
457
454
  propMeta.items = { $ref: '#/definitions/' + targetRef.name };
458
455
  }
459
456
  else {
@@ -465,7 +462,7 @@ class JsonSchema7Serializer {
465
462
  }
466
463
  else {
467
464
  if (mode === 'collection') {
468
- propMeta.type = Constants_1.T_ARRAY;
465
+ propMeta.type = T_ARRAY;
469
466
  propMeta.items = { $ref: '#/definitions/' + targetRef.name };
470
467
  }
471
468
  else {
@@ -478,7 +475,7 @@ class JsonSchema7Serializer {
478
475
  }
479
476
  propertyPostproces(opt) {
480
477
  if (opt.type === 'date') {
481
- opt.type = Constants_1.T_STRING;
478
+ opt.type = T_STRING;
482
479
  opt.format = 'date-time';
483
480
  }
484
481
  }
@@ -489,13 +486,12 @@ class JsonSchema7Serializer {
489
486
  retType = this.options.typeConversion(type, property);
490
487
  }
491
488
  if (!retType) {
492
- retType = (0, lodash_1.isFunction)(type) ? type.name.toLowerCase() : type;
489
+ retType = isFunction(type) ? type.name.toLowerCase() : type;
493
490
  }
494
491
  return retType;
495
492
  }
496
493
  getDefaultTypeHint() {
497
- return this.options && this.options.defaultTypeHint ? this.options.defaultTypeHint : Constants_1.T_STRING;
494
+ return this.options && this.options.defaultTypeHint ? this.options.defaultTypeHint : T_STRING;
498
495
  }
499
496
  }
500
- exports.JsonSchema7Serializer = JsonSchema7Serializer;
501
497
  //# sourceMappingURL=JsonSchema7Serializer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonSchema7Serializer.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7Serializer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonSchema7Serializer.js","sourceRoot":"","sources":["../../../../src/lib/json-schema/JsonSchema7Serializer.ts"],"names":[],"mappings":"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"}