@teambit/semantics.entities.semantic-schema 0.0.53 → 0.0.56

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 (202) hide show
  1. package/api-schema.ts +23 -10
  2. package/class-transformers/comp-id-transformer.ts +21 -21
  3. package/class-transformers/index.ts +2 -2
  4. package/class-transformers/schema-obj-to-class.ts +51 -45
  5. package/dist/api-schema.d.ts +17 -3
  6. package/dist/api-schema.js +9 -22
  7. package/dist/api-schema.js.map +1 -1
  8. package/dist/class-transformers/comp-id-transformer.d.ts +0 -6
  9. package/dist/class-transformers/comp-id-transformer.js +21 -19
  10. package/dist/class-transformers/comp-id-transformer.js.map +1 -1
  11. package/dist/class-transformers/index.d.ts +0 -2
  12. package/dist/class-transformers/index.js +2 -8
  13. package/dist/class-transformers/index.js.map +1 -1
  14. package/dist/class-transformers/schema-obj-to-class.d.ts +0 -10
  15. package/dist/class-transformers/schema-obj-to-class.js +49 -66
  16. package/dist/class-transformers/schema-obj-to-class.js.map +1 -1
  17. package/dist/index.d.ts +8 -2
  18. package/dist/index.js +20 -2
  19. package/dist/index.js.map +1 -1
  20. package/dist/{preview-1678246516830.js → preview-1695124733440.js} +1 -1
  21. package/dist/schema-node-constructor.d.ts +7 -0
  22. package/dist/schema-node-constructor.js +3 -0
  23. package/dist/schema-node-constructor.js.map +1 -0
  24. package/dist/schema-node.d.ts +20 -4
  25. package/dist/schema-node.js +36 -2
  26. package/dist/schema-node.js.map +1 -1
  27. package/dist/schema-registry.d.ts +9 -0
  28. package/dist/schema-registry.js +31 -0
  29. package/dist/schema-registry.js.map +1 -0
  30. package/dist/schemas/class.d.ts +39 -3
  31. package/dist/schemas/class.js +22 -14
  32. package/dist/schemas/class.js.map +1 -1
  33. package/dist/schemas/conditional-type.d.ts +11 -3
  34. package/dist/schemas/conditional-type.js +15 -20
  35. package/dist/schemas/conditional-type.js.map +1 -1
  36. package/dist/schemas/constructor.d.ts +3 -2
  37. package/dist/schemas/constructor.js +14 -2
  38. package/dist/schemas/constructor.js.map +1 -1
  39. package/dist/schemas/docs/doc.d.ts +20 -3
  40. package/dist/schemas/docs/doc.js +17 -11
  41. package/dist/schemas/docs/doc.js.map +1 -1
  42. package/dist/schemas/docs/property-like-tag.d.ts +13 -3
  43. package/dist/schemas/docs/property-like-tag.js +12 -11
  44. package/dist/schemas/docs/property-like-tag.js.map +1 -1
  45. package/dist/schemas/docs/return-tag.d.ts +13 -3
  46. package/dist/schemas/docs/return-tag.js +11 -11
  47. package/dist/schemas/docs/return-tag.js.map +1 -1
  48. package/dist/schemas/docs/tag.d.ts +12 -3
  49. package/dist/schemas/docs/tag.js +16 -0
  50. package/dist/schemas/docs/tag.js.map +1 -1
  51. package/dist/schemas/enum-member.d.ts +25 -3
  52. package/dist/schemas/enum-member.js +13 -11
  53. package/dist/schemas/enum-member.js.map +1 -1
  54. package/dist/schemas/enum.d.ts +26 -3
  55. package/dist/schemas/enum.js +17 -14
  56. package/dist/schemas/enum.js.map +1 -1
  57. package/dist/schemas/expression-with-arguments.d.ts +10 -3
  58. package/dist/schemas/expression-with-arguments.js +11 -14
  59. package/dist/schemas/expression-with-arguments.js.map +1 -1
  60. package/dist/schemas/function-like.d.ts +40 -4
  61. package/dist/schemas/function-like.js +28 -18
  62. package/dist/schemas/function-like.js.map +1 -1
  63. package/dist/schemas/get-accessor.d.ts +10 -3
  64. package/dist/schemas/get-accessor.js +14 -11
  65. package/dist/schemas/get-accessor.js.map +1 -1
  66. package/dist/schemas/index-signature.d.ts +17 -3
  67. package/dist/schemas/index-signature.js +11 -14
  68. package/dist/schemas/index-signature.js.map +1 -1
  69. package/dist/schemas/index.d.ts +1 -1
  70. package/dist/schemas/index.js.map +1 -1
  71. package/dist/schemas/indexed-access-type.d.ts +9 -3
  72. package/dist/schemas/indexed-access-type.js +13 -14
  73. package/dist/schemas/indexed-access-type.js.map +1 -1
  74. package/dist/schemas/inference-type.d.ts +9 -3
  75. package/dist/schemas/inference-type.js +12 -1
  76. package/dist/schemas/inference-type.js.map +1 -1
  77. package/dist/schemas/interface.d.ts +33 -3
  78. package/dist/schemas/interface.js +21 -14
  79. package/dist/schemas/interface.js.map +1 -1
  80. package/dist/schemas/keyword-type.d.ts +7 -3
  81. package/dist/schemas/keyword-type.js +8 -0
  82. package/dist/schemas/keyword-type.js.map +1 -1
  83. package/dist/schemas/literal-type.d.ts +4 -4
  84. package/dist/schemas/literal-type.js +6 -4
  85. package/dist/schemas/literal-type.js.map +1 -1
  86. package/dist/schemas/module.d.ts +9 -7
  87. package/dist/schemas/module.js +15 -20
  88. package/dist/schemas/module.js.map +1 -1
  89. package/dist/schemas/named-tuple.d.ts +9 -3
  90. package/dist/schemas/named-tuple.js +13 -0
  91. package/dist/schemas/named-tuple.js.map +1 -1
  92. package/dist/schemas/parameter.d.ts +16 -5
  93. package/dist/schemas/parameter.js +20 -16
  94. package/dist/schemas/parameter.js.map +1 -1
  95. package/dist/schemas/parenthesized-type.d.ts +8 -3
  96. package/dist/schemas/parenthesized-type.js +12 -11
  97. package/dist/schemas/parenthesized-type.js.map +1 -1
  98. package/dist/schemas/set-accessor.d.ts +17 -3
  99. package/dist/schemas/set-accessor.js +11 -11
  100. package/dist/schemas/set-accessor.js.map +1 -1
  101. package/dist/schemas/template-literal-type-span.d.ts +9 -3
  102. package/dist/schemas/template-literal-type-span.js +13 -11
  103. package/dist/schemas/template-literal-type-span.js.map +1 -1
  104. package/dist/schemas/template-literal-type.d.ts +11 -3
  105. package/dist/schemas/template-literal-type.js +10 -11
  106. package/dist/schemas/template-literal-type.js.map +1 -1
  107. package/dist/schemas/this-type.d.ts +4 -3
  108. package/dist/schemas/this-type.js +4 -0
  109. package/dist/schemas/this-type.js.map +1 -1
  110. package/dist/schemas/tuple-type.d.ts +7 -3
  111. package/dist/schemas/tuple-type.js +9 -11
  112. package/dist/schemas/tuple-type.js.map +1 -1
  113. package/dist/schemas/type-array.d.ts +8 -3
  114. package/dist/schemas/type-array.js +12 -11
  115. package/dist/schemas/type-array.js.map +1 -1
  116. package/dist/schemas/type-intersection.d.ts +8 -3
  117. package/dist/schemas/type-intersection.js +12 -11
  118. package/dist/schemas/type-intersection.js.map +1 -1
  119. package/dist/schemas/type-literal.d.ts +8 -3
  120. package/dist/schemas/type-literal.js +12 -11
  121. package/dist/schemas/type-literal.js.map +1 -1
  122. package/dist/schemas/type-operator.d.ts +9 -3
  123. package/dist/schemas/type-operator.js +13 -11
  124. package/dist/schemas/type-operator.js.map +1 -1
  125. package/dist/schemas/type-predicate.d.ts +9 -3
  126. package/dist/schemas/type-predicate.js +12 -11
  127. package/dist/schemas/type-predicate.js.map +1 -1
  128. package/dist/schemas/type-query.d.ts +9 -3
  129. package/dist/schemas/type-query.js +13 -11
  130. package/dist/schemas/type-query.js.map +1 -1
  131. package/dist/schemas/type-ref.d.ts +28 -4
  132. package/dist/schemas/type-ref.js +43 -16
  133. package/dist/schemas/type-ref.js.map +1 -1
  134. package/dist/schemas/type-union.d.ts +8 -3
  135. package/dist/schemas/type-union.js +12 -11
  136. package/dist/schemas/type-union.js.map +1 -1
  137. package/dist/schemas/type.d.ts +10 -3
  138. package/dist/schemas/type.js +16 -14
  139. package/dist/schemas/type.js.map +1 -1
  140. package/dist/schemas/unimplemented-schema.d.ts +7 -3
  141. package/dist/schemas/unimplemented-schema.js +9 -0
  142. package/dist/schemas/unimplemented-schema.js.map +1 -1
  143. package/dist/schemas/unknown-schema.d.ts +7 -3
  144. package/dist/schemas/unknown-schema.js +9 -0
  145. package/dist/schemas/unknown-schema.js.map +1 -1
  146. package/dist/schemas/unresolved-schema.d.ts +5 -3
  147. package/dist/schemas/unresolved-schema.js +8 -0
  148. package/dist/schemas/unresolved-schema.js.map +1 -1
  149. package/dist/schemas/variable-like.d.ts +29 -3
  150. package/dist/schemas/variable-like.js +21 -15
  151. package/dist/schemas/variable-like.js.map +1 -1
  152. package/dist/unknown-schema-factory.d.ts +4 -0
  153. package/dist/unknown-schema-factory.js +13 -0
  154. package/dist/unknown-schema-factory.js.map +1 -0
  155. package/index.ts +10 -2
  156. package/package.json +3 -4
  157. package/schema-node-constructor.ts +8 -0
  158. package/schema-node.ts +62 -6
  159. package/schema-registry.ts +33 -0
  160. package/schemas/class.ts +32 -7
  161. package/schemas/conditional-type.ts +27 -11
  162. package/schemas/constructor.ts +14 -4
  163. package/schemas/docs/doc.ts +22 -5
  164. package/schemas/docs/property-like-tag.ts +19 -5
  165. package/schemas/docs/return-tag.ts +18 -5
  166. package/schemas/docs/tag.ts +20 -2
  167. package/schemas/enum-member.ts +21 -5
  168. package/schemas/enum.ts +26 -6
  169. package/schemas/expression-with-arguments.ts +26 -7
  170. package/schemas/function-like.ts +51 -10
  171. package/schemas/get-accessor.ts +24 -5
  172. package/schemas/index-signature.ts +19 -6
  173. package/schemas/index.ts +1 -1
  174. package/schemas/indexed-access-type.ts +24 -6
  175. package/schemas/inference-type.ts +23 -2
  176. package/schemas/interface.ts +30 -7
  177. package/schemas/keyword-type.ts +15 -2
  178. package/schemas/literal-type.ts +9 -3
  179. package/schemas/module.ts +24 -14
  180. package/schemas/named-tuple.ts +22 -2
  181. package/schemas/parameter.ts +43 -11
  182. package/schemas/parenthesized-type.ts +20 -5
  183. package/schemas/set-accessor.ts +26 -5
  184. package/schemas/template-literal-type-span.ts +23 -5
  185. package/schemas/template-literal-type.ts +22 -5
  186. package/schemas/this-type.ts +7 -2
  187. package/schemas/tuple-type.ts +17 -5
  188. package/schemas/type-array.ts +21 -5
  189. package/schemas/type-intersection.ts +21 -5
  190. package/schemas/type-literal.ts +21 -5
  191. package/schemas/type-operator.ts +22 -5
  192. package/schemas/type-predicate.ts +20 -5
  193. package/schemas/type-query.ts +24 -5
  194. package/schemas/type-ref.ts +51 -10
  195. package/schemas/type-union.ts +17 -5
  196. package/schemas/type.ts +25 -7
  197. package/schemas/unimplemented-schema.ts +16 -2
  198. package/schemas/unknown-schema.ts +16 -2
  199. package/schemas/unresolved-schema.ts +12 -2
  200. package/schemas/variable-like.ts +33 -8
  201. package/unknown-schema-factory.ts +10 -0
  202. package/package-tar/teambit-semantics.entities.semantic-schema-0.0.53.tgz +0 -0
@@ -1,11 +1,16 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  /**
3
3
  * type inside parentheses
4
4
  * e.g. (T1 | T2)
5
5
  */
6
6
  export declare class ParenthesizedTypeSchema extends SchemaNode {
7
- readonly location: Location;
7
+ readonly location: SchemaLocation;
8
8
  readonly type: SchemaNode;
9
- constructor(location: Location, type: SchemaNode);
9
+ constructor(location: SchemaLocation, type: SchemaNode);
10
+ getNodes(): SchemaNode[];
10
11
  toString(): string;
12
+ toObject(): {
13
+ type: Record<string, any>;
14
+ };
15
+ static fromObject(obj: Record<string, any>): ParenthesizedTypeSchema;
11
16
  }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.ParenthesizedTypeSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  /**
14
7
  * type inside parentheses
15
8
  * e.g. (T1 | T2)
@@ -20,12 +13,20 @@ class ParenthesizedTypeSchema extends schema_node_1.SchemaNode {
20
13
  this.location = location;
21
14
  this.type = type;
22
15
  }
16
+ getNodes() {
17
+ return [this.type];
18
+ }
23
19
  toString() {
24
20
  return `(${this.type.toString()})`;
25
21
  }
22
+ toObject() {
23
+ return Object.assign(Object.assign({}, super.toObject()), { type: this.type.toObject() });
24
+ }
25
+ static fromObject(obj) {
26
+ const location = obj.location;
27
+ const type = schema_registry_1.SchemaRegistry.fromObject(obj.type);
28
+ return new ParenthesizedTypeSchema(location, type);
29
+ }
26
30
  }
27
- __decorate([
28
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjToInstance)
29
- ], ParenthesizedTypeSchema.prototype, "type", void 0);
30
31
  exports.ParenthesizedTypeSchema = ParenthesizedTypeSchema;
31
32
  //# sourceMappingURL=parenthesized-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parenthesized-type.js","sourceRoot":"","sources":["../../schemas/parenthesized-type.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAA4D;AAE5D;;;GAGG;AACH,MAAa,uBAAwB,SAAQ,wBAAU;IAGrD,YAAqB,QAAkB,EAAE,IAAgB;QACvD,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAErC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;IACrC,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,wCAAmB,CAAC;qDACL;AAF5B,0DAWC"}
1
+ {"version":3,"file":"parenthesized-type.js","sourceRoot":"","sources":["../../schemas/parenthesized-type.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD;;;GAGG;AACH,MAAa,uBAAwB,SAAQ,wBAAU;IAErD,YAAqB,QAAwB,EAAE,IAAgB;QAC7D,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAE3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAC1B;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,gCAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,uBAAuB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;CACF;AA3BD,0DA2BC"}
@@ -1,11 +1,25 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  import { ParameterSchema } from './parameter';
3
3
  export declare class SetAccessorSchema extends SchemaNode {
4
- readonly location: Location;
4
+ readonly location: SchemaLocation;
5
5
  readonly name: string;
6
6
  readonly signature: string;
7
7
  readonly param: ParameterSchema;
8
- constructor(location: Location, name: string, param: ParameterSchema, signature: string);
8
+ constructor(location: SchemaLocation, name: string, param: ParameterSchema, signature: string);
9
9
  getSignature(): string;
10
10
  toString(): string;
11
+ toObject(): {
12
+ name: string;
13
+ param: {
14
+ name: string;
15
+ type: Record<string, any>;
16
+ isOptional: boolean;
17
+ defaultValue: any;
18
+ description: string;
19
+ objectBindingNodes: Record<string, any>[];
20
+ isSpread: boolean;
21
+ };
22
+ signature: string;
23
+ };
24
+ static fromObject(obj: Record<string, any>): SetAccessorSchema;
11
25
  }
@@ -1,19 +1,12 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
9
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
10
4
  };
11
5
  Object.defineProperty(exports, "__esModule", { value: true });
12
6
  exports.SetAccessorSchema = void 0;
13
- const class_transformer_1 = require("class-transformer");
14
7
  const chalk_1 = __importDefault(require("chalk"));
15
8
  const schema_node_1 = require("../schema-node");
16
- const class_transformers_1 = require("../class-transformers");
9
+ const parameter_1 = require("./parameter");
17
10
  class SetAccessorSchema extends schema_node_1.SchemaNode {
18
11
  constructor(location, name, param, signature) {
19
12
  super();
@@ -28,9 +21,16 @@ class SetAccessorSchema extends schema_node_1.SchemaNode {
28
21
  toString() {
29
22
  return `set ${chalk_1.default.bold(this.name)}(${this.param.toString()})`;
30
23
  }
24
+ toObject() {
25
+ return Object.assign(Object.assign({}, super.toObject()), { name: this.name, param: this.param.toObject(), signature: this.signature });
26
+ }
27
+ static fromObject(obj) {
28
+ const location = obj.location;
29
+ const name = obj.name;
30
+ const param = parameter_1.ParameterSchema.fromObject(obj.param);
31
+ const signature = obj.signature;
32
+ return new SetAccessorSchema(location, name, param, signature);
33
+ }
31
34
  }
32
- __decorate([
33
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjToInstance)
34
- ], SetAccessorSchema.prototype, "param", void 0);
35
35
  exports.SetAccessorSchema = SetAccessorSchema;
36
36
  //# sourceMappingURL=set-accessor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"set-accessor.js","sourceRoot":"","sources":["../../schemas/set-accessor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAA8C;AAC9C,kDAA0B;AAC1B,gDAAsD;AAEtD,8DAA4D;AAE5D,MAAa,iBAAkB,SAAQ,wBAAU;IAG/C,YAAqB,QAAkB,EAAW,IAAY,EAAE,KAAsB,EAAW,SAAiB;QAChH,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAAW,SAAI,GAAJ,IAAI,CAAQ;QAAmC,cAAS,GAAT,SAAS,CAAQ;QAEhH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,QAAQ;QACN,OAAO,OAAO,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;IAClE,CAAC;CACF;AAZC;IADC,IAAA,6BAAS,EAAC,wCAAmB,CAAC;gDACC;AAFlC,8CAcC"}
1
+ {"version":3,"file":"set-accessor.js","sourceRoot":"","sources":["../../schemas/set-accessor.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,gDAA4D;AAC5D,2CAA8C;AAE9C,MAAa,iBAAkB,SAAQ,wBAAU;IAG/C,YACW,QAAwB,EACxB,IAAY,EACrB,KAAsB,EACb,SAAiB;QAE1B,KAAK,EAAE,CAAC;QALC,aAAQ,GAAR,QAAQ,CAAgB;QACxB,SAAI,GAAJ,IAAI,CAAQ;QAEZ,cAAS,GAAT,SAAS,CAAQ;QAG1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,QAAQ;QACN,OAAO,OAAO,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;IAClE,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAC5B,SAAS,EAAE,IAAI,CAAC,SAAS,IACzB;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,KAAK,GAAG,2BAAe,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;QAChC,OAAO,IAAI,iBAAiB,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACjE,CAAC;CACF;AArCD,8CAqCC"}
@@ -1,8 +1,14 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  export declare class TemplateLiteralTypeSpanSchema extends SchemaNode {
3
- readonly location: Location;
3
+ readonly location: SchemaLocation;
4
4
  readonly literal: string;
5
5
  type: SchemaNode;
6
- constructor(location: Location, literal: string, type: SchemaNode);
6
+ constructor(location: SchemaLocation, literal: string, type: SchemaNode);
7
+ getNodes(): SchemaNode[];
7
8
  toString(): string;
9
+ toObject(): {
10
+ literal: string;
11
+ type: Record<string, any>;
12
+ };
13
+ static fromObject(obj: Record<string, any>): TemplateLiteralTypeSpanSchema;
8
14
  }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TemplateLiteralTypeSpanSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  class TemplateLiteralTypeSpanSchema extends schema_node_1.SchemaNode {
14
7
  constructor(location, literal, type) {
15
8
  super();
@@ -17,12 +10,21 @@ class TemplateLiteralTypeSpanSchema extends schema_node_1.SchemaNode {
17
10
  this.literal = literal;
18
11
  this.type = type;
19
12
  }
13
+ getNodes() {
14
+ return [this.type];
15
+ }
20
16
  toString() {
21
17
  return `${this.type.toString()} ${this.literal}`;
22
18
  }
19
+ toObject() {
20
+ return Object.assign(Object.assign({}, super.toObject()), { literal: this.literal, type: this.type.toObject() });
21
+ }
22
+ static fromObject(obj) {
23
+ const location = obj.location;
24
+ const literal = obj.literal;
25
+ const type = schema_registry_1.SchemaRegistry.fromObject(obj.type);
26
+ return new TemplateLiteralTypeSpanSchema(location, literal, type);
27
+ }
23
28
  }
24
- __decorate([
25
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjToInstance)
26
- ], TemplateLiteralTypeSpanSchema.prototype, "type", void 0);
27
29
  exports.TemplateLiteralTypeSpanSchema = TemplateLiteralTypeSpanSchema;
28
30
  //# sourceMappingURL=template-literal-type-span.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-literal-type-span.js","sourceRoot":"","sources":["../../schemas/template-literal-type-span.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAA4D;AAE5D,MAAa,6BAA8B,SAAQ,wBAAU;IAG3D,YAAqB,QAAkB,EAAW,OAAe,EAAE,IAAgB;QACjF,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAAW,YAAO,GAAP,OAAO,CAAQ;QAE/D,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;IACnD,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,wCAAmB,CAAC;2DACd;AAFnB,sEAWC"}
1
+ {"version":3,"file":"template-literal-type-span.js","sourceRoot":"","sources":["../../schemas/template-literal-type-span.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD,MAAa,6BAA8B,SAAQ,wBAAU;IAG3D,YAAqB,QAAwB,EAAW,OAAe,EAAE,IAAgB;QACvF,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAAW,YAAO,GAAP,OAAO,CAAQ;QAErE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;IACnD,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,OAAO,EAAE,IAAI,CAAC,OAAO,EACrB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAC1B;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,MAAM,IAAI,GAAG,gCAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,6BAA6B,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;CACF;AA9BD,sEA8BC"}
@@ -1,9 +1,17 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  import { TemplateLiteralTypeSpanSchema } from './template-literal-type-span';
3
3
  export declare class TemplateLiteralTypeSchema extends SchemaNode {
4
- readonly location: Location;
4
+ readonly location: SchemaLocation;
5
5
  readonly head: string;
6
6
  readonly templateSpans: TemplateLiteralTypeSpanSchema[];
7
- constructor(location: Location, head: string, templateSpans: TemplateLiteralTypeSpanSchema[]);
7
+ constructor(location: SchemaLocation, head: string, templateSpans: TemplateLiteralTypeSpanSchema[]);
8
8
  toString(): string;
9
+ toObject(): {
10
+ head: string;
11
+ templateSpans: {
12
+ literal: string;
13
+ type: Record<string, any>;
14
+ }[];
15
+ };
16
+ static fromObject(obj: Record<string, any>): TemplateLiteralTypeSchema;
9
17
  }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TemplateLiteralTypeSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const template_literal_type_span_1 = require("./template-literal-type-span");
13
6
  class TemplateLiteralTypeSchema extends schema_node_1.SchemaNode {
14
7
  constructor(location, head, templateSpans) {
15
8
  super();
@@ -21,9 +14,15 @@ class TemplateLiteralTypeSchema extends schema_node_1.SchemaNode {
21
14
  const spans = this.templateSpans.map((span) => span.toString()).join('');
22
15
  return `${this.head}${spans}`;
23
16
  }
17
+ toObject() {
18
+ return Object.assign(Object.assign({}, super.toObject()), { head: this.head, templateSpans: this.templateSpans.map((span) => span.toObject()) });
19
+ }
20
+ static fromObject(obj) {
21
+ const location = obj.location;
22
+ const head = obj.head;
23
+ const templateSpans = obj.templateSpans.map((span) => template_literal_type_span_1.TemplateLiteralTypeSpanSchema.fromObject(span));
24
+ return new TemplateLiteralTypeSchema(location, head, templateSpans);
25
+ }
24
26
  }
25
- __decorate([
26
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjArrayToInstances)
27
- ], TemplateLiteralTypeSchema.prototype, "templateSpans", void 0);
28
27
  exports.TemplateLiteralTypeSchema = TemplateLiteralTypeSchema;
29
28
  //# sourceMappingURL=template-literal-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template-literal-type.js","sourceRoot":"","sources":["../../schemas/template-literal-type.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAAkE;AAGlE,MAAa,yBAA0B,SAAQ,wBAAU;IAGvD,YAAqB,QAAkB,EAAW,IAAY,EAAE,aAA8C;QAC5G,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAAW,SAAI,GAAJ,IAAI,CAAQ;QAE5D,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;IAChC,CAAC;CACF;AAVC;IADC,IAAA,6BAAS,EAAC,8CAAyB,CAAC;gEACmB;AAF1D,8DAYC"}
1
+ {"version":3,"file":"template-literal-type.js","sourceRoot":"","sources":["../../schemas/template-literal-type.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,6EAA6E;AAE7E,MAAa,yBAA0B,SAAQ,wBAAU;IAGvD,YACW,QAAwB,EACxB,IAAY,EACrB,aAA8C;QAE9C,KAAK,EAAE,CAAC;QAJC,aAAQ,GAAR,QAAQ,CAAgB;QACxB,SAAI,GAAJ,IAAI,CAAQ;QAIrB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,EAAE,CAAC;IAChC,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAChE;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;QACtB,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,0DAA6B,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3G,OAAO,IAAI,yBAAyB,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;CACF;AA/BD,8DA+BC"}
@@ -1,9 +1,10 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  /**
3
3
  * e.g. `class A { createA(): this {} }`
4
4
  */
5
5
  export declare class ThisTypeSchema extends SchemaNode {
6
- readonly location: Location;
7
- constructor(location: Location);
6
+ readonly location: SchemaLocation;
7
+ constructor(location: SchemaLocation);
8
8
  toString(): string;
9
+ static fromObject(obj: Record<string, any>): ThisTypeSchema;
9
10
  }
@@ -13,6 +13,10 @@ class ThisTypeSchema extends schema_node_1.SchemaNode {
13
13
  toString() {
14
14
  return 'this';
15
15
  }
16
+ static fromObject(obj) {
17
+ const location = obj.location;
18
+ return new ThisTypeSchema(location);
19
+ }
16
20
  }
17
21
  exports.ThisTypeSchema = ThisTypeSchema;
18
22
  //# sourceMappingURL=this-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"this-type.js","sourceRoot":"","sources":["../../schemas/this-type.ts"],"names":[],"mappings":";;;AAAA,gDAAsD;AAEtD;;GAEG;AACH,MAAa,cAAe,SAAQ,wBAAU;IAC5C,YAAqB,QAAkB;QACrC,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;IAEvC,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AARD,wCAQC"}
1
+ {"version":3,"file":"this-type.js","sourceRoot":"","sources":["../../schemas/this-type.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAE5D;;GAEG;AACH,MAAa,cAAe,SAAQ,wBAAU;IAC5C,YAAqB,QAAwB;QAC3C,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;IAE7C,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,OAAO,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;CACF;AAbD,wCAaC"}
@@ -1,7 +1,11 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  export declare class TupleTypeSchema extends SchemaNode {
3
- readonly location: Location;
3
+ readonly location: SchemaLocation;
4
4
  readonly elements: SchemaNode[];
5
- constructor(location: Location, elements: SchemaNode[]);
5
+ constructor(location: SchemaLocation, elements: SchemaNode[]);
6
6
  toString(): string;
7
+ toObject(): {
8
+ elements: Record<string, any>[];
9
+ };
10
+ static fromObject(obj: Record<string, any>): TupleTypeSchema;
7
11
  }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TupleTypeSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  class TupleTypeSchema extends schema_node_1.SchemaNode {
14
7
  constructor(location, elements) {
15
8
  super();
@@ -19,9 +12,14 @@ class TupleTypeSchema extends schema_node_1.SchemaNode {
19
12
  toString() {
20
13
  return `[${this.elements.map((elem) => elem.toString()).join(', ')}]`;
21
14
  }
15
+ toObject() {
16
+ return Object.assign(Object.assign({}, super.toObject()), { elements: this.elements.map((elem) => elem.toObject()) });
17
+ }
18
+ static fromObject(obj) {
19
+ const location = obj.location;
20
+ const elements = obj.elements.map((elem) => schema_registry_1.SchemaRegistry.fromObject(elem));
21
+ return new TupleTypeSchema(location, elements);
22
+ }
22
23
  }
23
- __decorate([
24
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjArrayToInstances)
25
- ], TupleTypeSchema.prototype, "elements", void 0);
26
24
  exports.TupleTypeSchema = TupleTypeSchema;
27
25
  //# sourceMappingURL=tuple-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tuple-type.js","sourceRoot":"","sources":["../../schemas/tuple-type.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAAkE;AAElE,MAAa,eAAgB,SAAQ,wBAAU;IAG7C,YAAqB,QAAkB,EAAE,QAAsB;QAC7D,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAErC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACxE,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,8CAAyB,CAAC;iDACL;AAFlC,0CAWC"}
1
+ {"version":3,"file":"tuple-type.js","sourceRoot":"","sources":["../../schemas/tuple-type.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD,MAAa,eAAgB,SAAQ,wBAAU;IAG7C,YAAqB,QAAwB,EAAE,QAAsB;QACnE,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAE3C,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IACxE,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IACtD;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,gCAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAClF,OAAO,IAAI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACjD,CAAC;CACF;AAxBD,0CAwBC"}
@@ -1,7 +1,12 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  export declare class TypeArraySchema extends SchemaNode {
3
- readonly location: Location;
3
+ readonly location: SchemaLocation;
4
4
  readonly type: SchemaNode;
5
- constructor(location: Location, type: SchemaNode);
5
+ constructor(location: SchemaLocation, type: SchemaNode);
6
+ getNodes(): SchemaNode[];
6
7
  toString(): string;
8
+ toObject(): {
9
+ type: Record<string, any>;
10
+ };
11
+ static fromObject(obj: Record<string, any>): TypeArraySchema;
7
12
  }
@@ -1,27 +1,28 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TypeArraySchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  class TypeArraySchema extends schema_node_1.SchemaNode {
14
7
  constructor(location, type) {
15
8
  super();
16
9
  this.location = location;
17
10
  this.type = type;
18
11
  }
12
+ getNodes() {
13
+ return [this.type];
14
+ }
19
15
  toString() {
20
16
  return `${this.type.toString()}[]`;
21
17
  }
18
+ toObject() {
19
+ return Object.assign(Object.assign({}, super.toObject()), { type: this.type.toObject() });
20
+ }
21
+ static fromObject(obj) {
22
+ const location = obj.location;
23
+ const type = schema_registry_1.SchemaRegistry.fromObject(obj.type);
24
+ return new TypeArraySchema(location, type);
25
+ }
22
26
  }
23
- __decorate([
24
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjToInstance)
25
- ], TypeArraySchema.prototype, "type", void 0);
26
27
  exports.TypeArraySchema = TypeArraySchema;
27
28
  //# sourceMappingURL=type-array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-array.js","sourceRoot":"","sources":["../../schemas/type-array.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAA4D;AAE5D,MAAa,eAAgB,SAAQ,wBAAU;IAG7C,YAAqB,QAAkB,EAAE,IAAgB;QACvD,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAErC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;IACrC,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,wCAAmB,CAAC;6CACL;AAF5B,0CAWC"}
1
+ {"version":3,"file":"type-array.js","sourceRoot":"","sources":["../../schemas/type-array.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD,MAAa,eAAgB,SAAQ,wBAAU;IAG7C,YAAqB,QAAwB,EAAE,IAAgB;QAC7D,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAE3C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC;IACrC,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAC1B;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,gCAAc,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,IAAI,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AA5BD,0CA4BC"}
@@ -1,7 +1,12 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  export declare class TypeIntersectionSchema extends SchemaNode {
3
- readonly location: Location;
3
+ readonly location: SchemaLocation;
4
4
  readonly types: SchemaNode[];
5
- constructor(location: Location, types: SchemaNode[]);
5
+ constructor(location: SchemaLocation, types: SchemaNode[]);
6
+ getNodes(): SchemaNode[];
6
7
  toString(): string;
8
+ toObject(): {
9
+ types: Record<string, any>[];
10
+ };
11
+ static fromObject(obj: Record<string, any>): TypeIntersectionSchema;
7
12
  }
@@ -1,27 +1,28 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TypeIntersectionSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  class TypeIntersectionSchema extends schema_node_1.SchemaNode {
14
7
  constructor(location, types) {
15
8
  super();
16
9
  this.location = location;
17
10
  this.types = types;
18
11
  }
12
+ getNodes() {
13
+ return this.types;
14
+ }
19
15
  toString() {
20
16
  return `${this.types.map((type) => type.toString()).join(' & ')}`;
21
17
  }
18
+ toObject() {
19
+ return Object.assign(Object.assign({}, super.toObject()), { types: this.types.map((type) => type.toObject()) });
20
+ }
21
+ static fromObject(obj) {
22
+ const location = obj.location;
23
+ const types = obj.types.map((type) => schema_registry_1.SchemaRegistry.fromObject(type));
24
+ return new TypeIntersectionSchema(location, types);
25
+ }
22
26
  }
23
- __decorate([
24
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjArrayToInstances)
25
- ], TypeIntersectionSchema.prototype, "types", void 0);
26
27
  exports.TypeIntersectionSchema = TypeIntersectionSchema;
27
28
  //# sourceMappingURL=type-intersection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-intersection.js","sourceRoot":"","sources":["../../schemas/type-intersection.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAAkE;AAElE,MAAa,sBAAuB,SAAQ,wBAAU;IAGpD,YAAqB,QAAkB,EAAE,KAAmB;QAC1D,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAErC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IACpE,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,8CAAyB,CAAC;qDACR;AAF/B,wDAWC"}
1
+ {"version":3,"file":"type-intersection.js","sourceRoot":"","sources":["../../schemas/type-intersection.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD,MAAa,sBAAuB,SAAQ,wBAAU;IAGpD,YAAqB,QAAwB,EAAE,KAAmB;QAChE,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAE3C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IACpE,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAChD;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,gCAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,OAAO,IAAI,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;CACF;AA5BD,wDA4BC"}
@@ -1,10 +1,15 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  /**
3
3
  * e.g. `{ a: string; b: number }`
4
4
  */
5
5
  export declare class TypeLiteralSchema extends SchemaNode {
6
- readonly location: Location;
6
+ readonly location: SchemaLocation;
7
7
  readonly members: SchemaNode[];
8
- constructor(location: Location, members: SchemaNode[]);
8
+ constructor(location: SchemaLocation, members: SchemaNode[]);
9
+ getNodes(): SchemaNode[];
9
10
  toString(): string;
11
+ toObject(): {
12
+ members: Record<string, any>[];
13
+ };
14
+ static fromObject(obj: Record<string, any>): TypeLiteralSchema;
10
15
  }
@@ -1,15 +1,8 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
2
  Object.defineProperty(exports, "__esModule", { value: true });
9
3
  exports.TypeLiteralSchema = void 0;
10
- const class_transformer_1 = require("class-transformer");
11
4
  const schema_node_1 = require("../schema-node");
12
- const class_transformers_1 = require("../class-transformers");
5
+ const schema_registry_1 = require("../schema-registry");
13
6
  /**
14
7
  * e.g. `{ a: string; b: number }`
15
8
  */
@@ -19,12 +12,20 @@ class TypeLiteralSchema extends schema_node_1.SchemaNode {
19
12
  this.location = location;
20
13
  this.members = members;
21
14
  }
15
+ getNodes() {
16
+ return this.members;
17
+ }
22
18
  toString() {
23
19
  return `{ ${this.members.map((type) => type.toString()).join('; ')} }`;
24
20
  }
21
+ toObject() {
22
+ return Object.assign(Object.assign({}, super.toObject()), { members: this.members.map((type) => type.toObject()) });
23
+ }
24
+ static fromObject(obj) {
25
+ const location = obj.location;
26
+ const members = obj.members.map((type) => schema_registry_1.SchemaRegistry.fromObject(type));
27
+ return new TypeLiteralSchema(location, members);
28
+ }
25
29
  }
26
- __decorate([
27
- (0, class_transformer_1.Transform)(class_transformers_1.schemaObjArrayToInstances)
28
- ], TypeLiteralSchema.prototype, "members", void 0);
29
30
  exports.TypeLiteralSchema = TypeLiteralSchema;
30
31
  //# sourceMappingURL=type-literal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-literal.js","sourceRoot":"","sources":["../../schemas/type-literal.ts"],"names":[],"mappings":";;;;;;;;;AAAA,yDAA8C;AAC9C,gDAAsD;AACtD,8DAAkE;AAElE;;GAEG;AACH,MAAa,iBAAkB,SAAQ,wBAAU;IAG/C,YAAqB,QAAkB,EAAE,OAAqB;QAC5D,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAU;QAErC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACzE,CAAC;CACF;AATC;IADC,IAAA,6BAAS,EAAC,8CAAyB,CAAC;kDACN;AAFjC,8CAWC"}
1
+ {"version":3,"file":"type-literal.js","sourceRoot":"","sources":["../../schemas/type-literal.ts"],"names":[],"mappings":";;;AAAA,gDAA4D;AAC5D,wDAAoD;AAEpD;;GAEG;AACH,MAAa,iBAAkB,SAAQ,wBAAU;IAG/C,YAAqB,QAAwB,EAAE,OAAqB;QAClE,KAAK,EAAE,CAAC;QADW,aAAQ,GAAR,QAAQ,CAAgB;QAE3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;IACzE,CAAC;IAED,QAAQ;QACN,uCACK,KAAK,CAAC,QAAQ,EAAE,KACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IACpD;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,GAAwB;QACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,gCAAc,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;CACF;AA5BD,8CA4BC"}
@@ -1,8 +1,14 @@
1
- import { Location, SchemaNode } from '../schema-node';
1
+ import { SchemaLocation, SchemaNode } from '../schema-node';
2
2
  export declare class TypeOperatorSchema extends SchemaNode {
3
- readonly location: Location;
3
+ readonly location: SchemaLocation;
4
4
  readonly name: string;
5
5
  type: SchemaNode;
6
- constructor(location: Location, name: string, type: SchemaNode);
6
+ constructor(location: SchemaLocation, name: string, type: SchemaNode);
7
+ getNodes(): SchemaNode[];
7
8
  toString(): string;
9
+ toObject(): {
10
+ name: string;
11
+ type: Record<string, any>;
12
+ };
13
+ static fromObject(obj: Record<string, any>): TypeOperatorSchema;
8
14
  }