typia 4.0.6 → 4.0.8

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 (24) hide show
  1. package/lib/Primitive.d.ts +2 -0
  2. package/lib/factories/internal/metadata/emend_metadata_atomics.d.ts +2 -0
  3. package/lib/factories/internal/metadata/emend_metadata_atomics.js +48 -0
  4. package/lib/factories/internal/metadata/emend_metadata_atomics.js.map +1 -0
  5. package/lib/factories/internal/metadata/explore_metadata.js +4 -41
  6. package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
  7. package/lib/factories/internal/metadata/iterate_metadata.d.ts +1 -1
  8. package/lib/factories/internal/metadata/iterate_metadata.js +5 -5
  9. package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
  10. package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +1 -1
  11. package/lib/factories/internal/metadata/iterate_metadata_resolve.js +12 -10
  12. package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
  13. package/lib/factories/internal/metadata/iterate_metadata_union.js +2 -64
  14. package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
  15. package/lib/programmers/StringifyProgrammer.js +7 -10
  16. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  17. package/package.json +1 -1
  18. package/src/Primitive.ts +2 -0
  19. package/src/factories/internal/metadata/emend_metadata_atomics.ts +33 -0
  20. package/src/factories/internal/metadata/explore_metadata.ts +3 -32
  21. package/src/factories/internal/metadata/iterate_metadata.ts +6 -5
  22. package/src/factories/internal/metadata/iterate_metadata_resolve.ts +23 -12
  23. package/src/factories/internal/metadata/iterate_metadata_union.ts +2 -46
  24. package/src/programmers/StringifyProgrammer.ts +10 -17
@@ -27,6 +27,8 @@
27
27
  *
28
28
  * @template Instance Target argument type.
29
29
  * @author Jenogho Nam - https://github.com/samchon
30
+ * @author Kyungsu Kang - https://github.com/kakasoo
31
+ * @author Michael - https://github.com/8471919
30
32
  */
31
33
  export type Primitive<T> = Equal<T, PrimitiveMain<T>> extends true ? T : PrimitiveMain<T>;
32
34
  type Equal<X, Y> = X extends Y ? (Y extends X ? true : false) : false;
@@ -0,0 +1,2 @@
1
+ import { Metadata } from "../../../metadata/Metadata";
2
+ export declare const emend_metadata_atomics: (meta: Metadata) => void;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.emend_metadata_atomics = void 0;
15
+ var ArrayUtil_1 = require("../../../utils/ArrayUtil");
16
+ var emend_metadata_atomics = function (meta) {
17
+ var e_1, _a;
18
+ var _loop_1 = function (type) {
19
+ var index = meta.constants.findIndex(function (c) { return c.type === type; });
20
+ if (index !== -1)
21
+ meta.constants.splice(index, 1);
22
+ };
23
+ try {
24
+ for (var _b = __values(meta.atomics), _c = _b.next(); !_c.done; _c = _b.next()) {
25
+ var type = _c.value;
26
+ _loop_1(type);
27
+ }
28
+ }
29
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
30
+ finally {
31
+ try {
32
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
33
+ }
34
+ finally { if (e_1) throw e_1.error; }
35
+ }
36
+ {
37
+ var index = meta.constants.findIndex(function (c) { return c.type === "boolean"; });
38
+ if (index !== -1 && meta.constants[index].values.length === 2) {
39
+ meta.constants.splice(index, 1);
40
+ ArrayUtil_1.ArrayUtil.take(meta.atomics, function (type) { return type === "boolean"; }, function () { return "boolean"; });
41
+ }
42
+ }
43
+ if (meta.templates.length &&
44
+ meta.atomics.find(function (type) { return type === "string"; }) !== undefined)
45
+ meta.templates.splice(0, meta.templates.length);
46
+ };
47
+ exports.emend_metadata_atomics = emend_metadata_atomics;
48
+ //# sourceMappingURL=emend_metadata_atomics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emend_metadata_atomics.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/emend_metadata_atomics.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,sDAAqD;AAE9C,IAAM,sBAAsB,GAAG,UAAC,IAAc;;4BAEtC,IAAI;QACX,IAAM,KAAK,GAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,IAAI,EAAf,CAAe,CAAC,CAAC;QACvE,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;;;QAFtD,KAAmB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;YAA1B,IAAM,IAAI,WAAA;oBAAJ,IAAI;SAGd;;;;;;;;;IAGD;QACI,IAAM,KAAK,GAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAC1C,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,SAAS,EAApB,CAAoB,CAC9B,CAAC;QACF,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAChC,qBAAS,CAAC,IAAI,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,SAAS,EAAlB,CAAkB,EAC5B,cAAM,OAAA,SAAS,EAAT,CAAS,CAClB,CAAC;SACL;KACJ;IAGD,IACI,IAAI,CAAC,SAAS,CAAC,MAAM;QACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,QAAQ,EAAjB,CAAiB,CAAC,KAAK,SAAS;QAE5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACxD,CAAC,CAAC;AA5BW,QAAA,sBAAsB,0BA4BjC"}
@@ -1,25 +1,13 @@
1
1
  "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.explore_metadata = void 0;
15
4
  var Metadata_1 = require("../../../metadata/Metadata");
16
- var ArrayUtil_1 = require("../../../utils/ArrayUtil");
5
+ var emend_metadata_atomics_1 = require("./emend_metadata_atomics");
17
6
  var iterate_metadata_1 = require("./iterate_metadata");
18
7
  var explore_metadata = function (checker) {
19
8
  return function (options) {
20
9
  return function (collection) {
21
10
  return function (type, parentResolved, aliased) {
22
- var e_1, _a;
23
11
  if (aliased === void 0) { aliased = false; }
24
12
  var meta = Metadata_1.Metadata.initialize(parentResolved);
25
13
  var out = function (meta) {
@@ -30,34 +18,9 @@ var explore_metadata = function (checker) {
30
18
  if (type === null)
31
19
  return out(meta);
32
20
  (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta, type, parentResolved, aliased);
33
- var _loop_1 = function (type_1) {
34
- var index = meta.constants.findIndex(function (c) { return c.type === type_1; });
35
- if (index !== -1)
36
- meta.constants.splice(index, 1);
37
- };
38
- try {
39
- for (var _b = __values(meta.atomics), _c = _b.next(); !_c.done; _c = _b.next()) {
40
- var type_1 = _c.value;
41
- _loop_1(type_1);
42
- }
43
- }
44
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
45
- finally {
46
- try {
47
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
48
- }
49
- finally { if (e_1) throw e_1.error; }
50
- }
51
- {
52
- var index = meta.constants.findIndex(function (c) { return c.type === "boolean"; });
53
- if (index !== -1 && meta.constants[index].values.length === 2) {
54
- meta.constants.splice(index, 1);
55
- ArrayUtil_1.ArrayUtil.take(meta.atomics, function (type) { return type === "boolean"; }, function () { return "boolean"; });
56
- }
57
- }
58
- if (meta.templates.length &&
59
- meta.atomics.find(function (type) { return type === "string"; }) !== undefined)
60
- meta.templates.splice(0, meta.templates.length);
21
+ (0, emend_metadata_atomics_1.emend_metadata_atomics)(meta);
22
+ if (meta.resolved)
23
+ (0, emend_metadata_atomics_1.emend_metadata_atomics)(meta.resolved);
61
24
  return out(meta);
62
25
  };
63
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"explore_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/explore_metadata.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,uDAAsD;AAEtD,sDAAqD;AAIrD,uDAAsD;AAE/C,IAAM,gBAAgB,GACzB,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UACI,IAAoB,EACpB,cAAuB,EACvB,OAAwB;;gBAAxB,wBAAA,EAAA,eAAwB;gBAGxB,IAAM,IAAI,GAAa,mBAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;gBAC3D,IAAM,GAAG,GAAG,UAAC,IAAc;oBACvB,IAAI,OAAO,CAAC,QAAQ;wBAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC7C,OAAO,IAAI,CAAC;gBAChB,CAAC,CAAC;gBACF,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;gBAGpC,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,OAAO,CACV,CAAC;wCAGS,MAAI;oBACX,IAAM,KAAK,GAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAC1C,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,MAAI,EAAf,CAAe,CACzB,CAAC;oBACF,IAAI,KAAK,KAAK,CAAC,CAAC;wBAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;;;oBAJtD,KAAmB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;wBAA1B,IAAM,MAAI,WAAA;gCAAJ,MAAI;qBAKd;;;;;;;;;gBAGD;oBACI,IAAM,KAAK,GAAW,IAAI,CAAC,SAAS,CAAC,SAAS,CAC1C,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,SAAS,EAApB,CAAoB,CAC9B,CAAC;oBACF,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;wBAChC,qBAAS,CAAC,IAAI,CACV,IAAI,CAAC,OAAO,EACZ,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,SAAS,EAAlB,CAAkB,EAC5B,cAAM,OAAA,SAAS,EAAT,CAAS,CAClB,CAAC;qBACL;iBACJ;gBAGD,IACI,IAAI,CAAC,SAAS,CAAC,MAAM;oBACrB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,KAAK,QAAQ,EAAjB,CAAiB,CAAC,KAAK,SAAS;oBAE5D,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACpD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QAnDD,CAmDC;IApDD,CAoDC;AArDD,CAqDC,CAAC;AAvDO,QAAA,gBAAgB,oBAuDvB"}
1
+ {"version":3,"file":"explore_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/explore_metadata.ts"],"names":[],"mappings":";;;AAEA,uDAAsD;AAItD,mEAAkE;AAClE,uDAAsD;AAE/C,IAAM,gBAAgB,GACzB,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UACI,IAAoB,EACpB,cAAuB,EACvB,OAAwB;gBAAxB,wBAAA,EAAA,eAAwB;gBAGxB,IAAM,IAAI,GAAa,mBAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;gBAC3D,IAAM,GAAG,GAAG,UAAC,IAAc;oBACvB,IAAI,OAAO,CAAC,QAAQ;wBAAE,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC7C,OAAO,IAAI,CAAC;gBAChB,CAAC,CAAC;gBACF,IAAI,IAAI,KAAK,IAAI;oBAAE,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;gBAGpC,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,OAAO,CACV,CAAC;gBACF,IAAA,+CAAsB,EAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,IAAI,CAAC,QAAQ;oBAAE,IAAA,+CAAsB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;QAvBD,CAuBC;IAxBD,CAwBC;AAzBD,CAyBC,CAAC;AA3BO,QAAA,gBAAgB,oBA2BvB"}
@@ -2,4 +2,4 @@ import ts from "typescript";
2
2
  import { Metadata } from "../../../metadata/Metadata";
3
3
  import { MetadataCollection } from "../../MetadataCollection";
4
4
  import { MetadataFactory } from "../../MetadataFactory";
5
- export declare const iterate_metadata: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (meta: Metadata, type: ts.Type, parentResolved: boolean, aliased: boolean) => void;
5
+ export declare const iterate_metadata: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (meta: Metadata, type: ts.Type, resolved: boolean, aliased: boolean) => void;
@@ -18,14 +18,14 @@ var iterate_metadata_union_1 = require("./iterate_metadata_union");
18
18
  var iterate_metadata = function (checker) {
19
19
  return function (options) {
20
20
  return function (collection) {
21
- return function (meta, type, parentResolved, aliased) {
21
+ return function (meta, type, resolved, aliased) {
22
22
  if (type.isTypeParameter() === true)
23
23
  throw new Error("Error on typia.MetadataFactory.generate(): non-specified generic argument on ".concat(meta.getName(), "."));
24
24
  if ((aliased !== true &&
25
25
  (0, iterate_metadata_definition_1.iterate_metadata_definition)(checker)(options)(collection)(meta, type)) ||
26
- (0, iterate_metadata_intersection_1.iterate_metadata_intersection)(checker)(options)(collection)(meta, type, parentResolved, aliased) ||
27
- (0, iterate_metadata_union_1.iterate_metadata_union)(checker)(options)(collection)(meta, type, parentResolved) ||
28
- (0, iterate_metadata_resolve_1.iterate_metadata_resolve)(checker)(options)(collection)(meta, type, parentResolved))
26
+ (0, iterate_metadata_intersection_1.iterate_metadata_intersection)(checker)(options)(collection)(meta, type, resolved, aliased) ||
27
+ (0, iterate_metadata_union_1.iterate_metadata_union)(checker)(options)(collection)(meta, type, resolved) ||
28
+ (0, iterate_metadata_resolve_1.iterate_metadata_resolve)(checker)(options)(collection)(meta, type, resolved, aliased))
29
29
  return;
30
30
  (0, iterate_metadata_coalesce_1.iterate_metadata_coalesce)(meta, type) ||
31
31
  (0, iterate_metadata_constant_1.iterate_metadata_constant)(checker)(options)(meta, type) ||
@@ -36,7 +36,7 @@ var iterate_metadata = function (checker) {
36
36
  (0, iterate_metadata_native_1.iterate_metadata_native)(checker)(meta, type) ||
37
37
  (0, iterate_metadata_map_1.iterate_metadata_map)(checker)(options)(collection)(meta, type) ||
38
38
  (0, iterate_metadata_set_1.iterate_metadata_set)(checker)(options)(collection)(meta, type) ||
39
- (0, iterate_metadata_object_1.iterate_metadata_object)(checker)(options)(collection)(meta, type, parentResolved);
39
+ (0, iterate_metadata_object_1.iterate_metadata_object)(checker)(options)(collection)(meta, type, resolved);
40
40
  };
41
41
  };
42
42
  };
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":";;;AAOA,mEAAkE;AAClE,qEAAoE;AACpE,yEAAwE;AACxE,yEAAwE;AACxE,6EAA4E;AAC5E,iFAAgF;AAChF,+DAA8D;AAC9D,qEAAoE;AACpE,qEAAoE;AACpE,uEAAsE;AACtE,+DAA8D;AAC9D,yEAAwE;AACxE,mEAAkE;AAClE,mEAAkE;AAE3D,IAAM,gBAAgB,GACzB,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UACI,IAAc,EACd,IAAa,EACb,cAAuB,EACvB,OAAgB;gBAEhB,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI;oBAC/B,MAAM,IAAI,KAAK,CACX,uFAAgF,IAAI,CAAC,OAAO,EAAE,MAAG,CACpG,CAAC;gBAEN,IACI,CAAC,OAAO,KAAK,IAAI;oBACb,IAAA,yDAA2B,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACrD,IAAI,EACJ,IAAI,CACP,CAAC;oBACN,IAAA,6DAA6B,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACvD,IAAI,EACJ,IAAI,EACJ,cAAc,EACd,OAAO,CACV;oBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAChD,IAAI,EACJ,IAAI,EACJ,cAAc,CACjB;oBACD,IAAA,mDAAwB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAClD,IAAI,EACJ,IAAI,EACJ,cAAc,CACjB;oBAED,OAAO;gBAGX,IAAA,qDAAyB,EAAC,IAAI,EAAE,IAAI,CAAC;oBACjC,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBACvD,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACnD,IAAI,EACJ,IAAI,CACP;oBACD,IAAA,iDAAuB,EAAC,IAAI,EAAE,IAAI,CAAC;oBACnC,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAChD,IAAI,EACJ,IAAoB,CACvB;oBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAChE,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC5C,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC9D,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC9D,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACjD,IAAI,EACJ,IAAI,EACJ,cAAc,CACjB,CAAC;YACV,CAAC;QAzDD,CAyDC;IA1DD,CA0DC;AA3DD,CA2DC,CAAC;AA7DO,QAAA,gBAAgB,oBA6DvB"}
1
+ {"version":3,"file":"iterate_metadata.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata.ts"],"names":[],"mappings":";;;AAOA,mEAAkE;AAClE,qEAAoE;AACpE,yEAAwE;AACxE,yEAAwE;AACxE,6EAA4E;AAC5E,iFAAgF;AAChF,+DAA8D;AAC9D,qEAAoE;AACpE,qEAAoE;AACpE,uEAAsE;AACtE,+DAA8D;AAC9D,yEAAwE;AACxE,mEAAkE;AAClE,mEAAkE;AAE3D,IAAM,gBAAgB,GACzB,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UACI,IAAc,EACd,IAAa,EACb,QAAiB,EACjB,OAAgB;gBAEhB,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI;oBAC/B,MAAM,IAAI,KAAK,CACX,uFAAgF,IAAI,CAAC,OAAO,EAAE,MAAG,CACpG,CAAC;gBAEN,IACI,CAAC,OAAO,KAAK,IAAI;oBACb,IAAA,yDAA2B,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACrD,IAAI,EACJ,IAAI,CACP,CAAC;oBACN,IAAA,6DAA6B,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACvD,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,OAAO,CACV;oBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAChD,IAAI,EACJ,IAAI,EACJ,QAAQ,CACX;oBACD,IAAA,mDAAwB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAClD,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,OAAO,CACV;oBAED,OAAO;gBAGX,IAAA,qDAAyB,EAAC,IAAI,EAAE,IAAI,CAAC;oBACjC,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBACvD,IAAA,qDAAyB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACnD,IAAI,EACJ,IAAI,CACP;oBACD,IAAA,iDAAuB,EAAC,IAAI,EAAE,IAAI,CAAC;oBACnC,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAChD,IAAI,EACJ,IAAoB,CACvB;oBACD,IAAA,+CAAsB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAChE,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC5C,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC9D,IAAA,2CAAoB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC;oBAC9D,IAAA,iDAAuB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACjD,IAAI,EACJ,IAAI,EACJ,QAAQ,CACX,CAAC;YACV,CAAC;QA1DD,CA0DC;IA3DD,CA2DC;AA5DD,CA4DC,CAAC;AA9DO,QAAA,gBAAgB,oBA8DvB"}
@@ -2,4 +2,4 @@ import ts from "typescript";
2
2
  import { Metadata } from "../../../metadata/Metadata";
3
3
  import { MetadataCollection } from "../../MetadataCollection";
4
4
  import { MetadataFactory } from "../../MetadataFactory";
5
- export declare const iterate_metadata_resolve: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (meta: Metadata, type: ts.Type, parentResolved: boolean) => boolean;
5
+ export declare const iterate_metadata_resolve: (checker: ts.TypeChecker) => (options: MetadataFactory.IOptions) => (collection: MetadataCollection) => (meta: Metadata, type: ts.Type, resolved: boolean, aliased: boolean) => boolean;
@@ -1,21 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.iterate_metadata_resolve = void 0;
4
+ var Metadata_1 = require("../../../metadata/Metadata");
4
5
  var Writable_1 = require("../../../typings/Writable");
5
6
  var TypeFactory_1 = require("../../TypeFactory");
6
- var explore_metadata_1 = require("./explore_metadata");
7
+ var iterate_metadata_1 = require("./iterate_metadata");
7
8
  var iterate_metadata_resolve = function (checker) {
8
9
  return function (options) {
9
10
  return function (collection) {
10
- return function (meta, type, parentResolved) {
11
- if (options.resolve === true && parentResolved === false) {
12
- var resolved = TypeFactory_1.TypeFactory.resolve(checker)(type);
13
- if (resolved !== null) {
14
- (0, Writable_1.Writable)(meta).resolved = (0, explore_metadata_1.explore_metadata)(checker)(options)(collection)(resolved, true);
15
- return true;
16
- }
17
- }
18
- return false;
11
+ return function (meta, type, resolved, aliased) {
12
+ if (options.resolve === false || resolved === true)
13
+ return false;
14
+ var escaped = TypeFactory_1.TypeFactory.resolve(checker)(type);
15
+ if (escaped === null)
16
+ return false;
17
+ if (meta.resolved === null)
18
+ (0, Writable_1.Writable)(meta).resolved = Metadata_1.Metadata.initialize();
19
+ (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta.resolved, escaped, true, aliased);
20
+ return true;
19
21
  };
20
22
  };
21
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_resolve.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_resolve.ts"],"names":[],"mappings":";;;AAIA,sDAAqD;AAIrD,iDAAgD;AAChD,uDAAsD;AAE/C,IAAM,wBAAwB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,IAAc,EAAE,IAAa,EAAE,cAAuB;gBACnD,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,cAAc,KAAK,KAAK,EAAE;oBACtD,IAAM,QAAQ,GAAmB,yBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;oBACpE,IAAI,QAAQ,KAAK,IAAI,EAAE;wBACnB,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACxD,UAAU,CACb,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;wBAClB,OAAO,IAAI,CAAC;qBACf;iBACJ;gBACD,OAAO,KAAK,CAAC;YACjB,CAAC;QAXD,CAWC;IAZD,CAYC;AAbD,CAaC,CAAC;AAfO,QAAA,wBAAwB,4BAe/B"}
1
+ {"version":3,"file":"iterate_metadata_resolve.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_resolve.ts"],"names":[],"mappings":";;;AAEA,uDAAsD;AAEtD,sDAAqD;AAIrD,iDAAgD;AAChD,uDAAsD;AAI/C,IAAM,wBAAwB,GACjC,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UACI,IAAc,EACd,IAAa,EACb,QAAiB,EACjB,OAAgB;gBAEhB,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,IAAI,QAAQ,KAAK,IAAI;oBAAE,OAAO,KAAK,CAAC;gBAEjE,IAAM,OAAO,GAAmB,yBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;gBACnE,IAAI,OAAO,KAAK,IAAI;oBAAE,OAAO,KAAK,CAAC;gBAEnC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI;oBACtB,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,mBAAQ,CAAC,UAAU,EAAE,CAAC;gBACpD,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,CAAC,QAAS,EACd,OAAO,EACP,IAAI,EACJ,OAAO,CACV,CAAC;gBACF,OAAO,IAAI,CAAC;YAChB,CAAC;QApBD,CAoBC;IArBD,CAqBC;AAtBD,CAsBC,CAAC;AAxBO,QAAA,wBAAwB,4BAwB/B"}
@@ -1,77 +1,15 @@
1
1
  "use strict";
2
- var __values = (this && this.__values) || function(o) {
3
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
- if (m) return m.call(o);
5
- if (o && typeof o.length === "number") return {
6
- next: function () {
7
- if (o && i >= o.length) o = void 0;
8
- return { value: o && o[i++], done: !o };
9
- }
10
- };
11
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
2
  Object.defineProperty(exports, "__esModule", { value: true });
17
3
  exports.iterate_metadata_union = void 0;
18
- var typescript_1 = __importDefault(require("typescript"));
19
- var Metadata_1 = require("../../../metadata/Metadata");
20
- var Writable_1 = require("../../../typings/Writable");
21
- var TypeFactory_1 = require("../../TypeFactory");
22
4
  var iterate_metadata_1 = require("./iterate_metadata");
23
5
  var iterate_metadata_union = function (checker) {
24
6
  return function (options) {
25
7
  return function (collection) {
26
8
  return function (meta, type, parentResolved) {
27
- var e_1, _a;
28
9
  if (!type.isUnion())
29
10
  return false;
30
- else if (options.resolve === false || parentResolved === true) {
31
- type.types.forEach(function (t) {
32
- return (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta, t, false, false);
33
- });
34
- return true;
35
- }
36
- var filter = function (flag, t) {
37
- return (t.getFlags() & flag) !== 0;
38
- };
39
- var normals = [];
40
- var toJsons = [];
41
- try {
42
- for (var _b = __values(type.types), _c = _b.next(); !_c.done; _c = _b.next()) {
43
- var individual = _c.value;
44
- if (filter(typescript_1.default.TypeFlags.Object, individual)) {
45
- var resolved = TypeFactory_1.TypeFactory.resolve(checker)(individual);
46
- if (resolved !== null)
47
- toJsons.push(resolved);
48
- else
49
- normals.push(individual);
50
- }
51
- else
52
- normals.push(individual);
53
- }
54
- }
55
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
56
- finally {
57
- try {
58
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
59
- }
60
- finally { if (e_1) throw e_1.error; }
61
- }
62
- if (toJsons.length !== 0) {
63
- (0, Writable_1.Writable)(meta).resolved = (function () {
64
- var union = Metadata_1.Metadata.initialize();
65
- toJsons.forEach(function (t) {
66
- return (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta, t, true, false);
67
- });
68
- if (union.objects.length > 1)
69
- union.union_index = collection.getUnionIndex(union);
70
- return union;
71
- })();
72
- }
73
- normals.forEach(function (t) {
74
- return (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta, t, false, false);
11
+ type.types.forEach(function (t) {
12
+ return (0, iterate_metadata_1.iterate_metadata)(checker)(options)(collection)(meta, t, parentResolved, false);
75
13
  });
76
14
  return true;
77
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"iterate_metadata_union.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_union.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,uDAAsD;AAEtD,sDAAqD;AAIrD,iDAAgD;AAChD,uDAAsD;AAE/C,IAAM,sBAAsB,GAC/B,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,IAAc,EAAE,IAAa,EAAE,cAAuB;;gBACnD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAAE,OAAO,KAAK,CAAC;qBAC7B,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,IAAI,cAAc,KAAK,IAAI,EAAE;oBAC3D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,CAAC;wBACjB,OAAA,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,CAAC,EACD,KAAK,EACL,KAAK,CACR;oBALD,CAKC,CACJ,CAAC;oBACF,OAAO,IAAI,CAAC;iBACf;gBAED,IAAM,MAAM,GAAG,UAAC,IAAkB,EAAE,CAAU;oBAC1C,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;gBAA3B,CAA2B,CAAC;gBAChC,IAAM,OAAO,GAAc,EAAE,CAAC;gBAC9B,IAAM,OAAO,GAAc,EAAE,CAAC;;oBAE9B,KAAyB,IAAA,KAAA,SAAA,IAAI,CAAC,KAAK,CAAA,gBAAA,4BAAE;wBAAhC,IAAM,UAAU,WAAA;wBACjB,IAAI,MAAM,CAAC,oBAAE,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE;4BACzC,IAAM,QAAQ,GACV,yBAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC;4BAC7C,IAAI,QAAQ,KAAK,IAAI;gCAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;;gCACzC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;yBACjC;;4BAAM,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;qBACnC;;;;;;;;;gBACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtB,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC;wBACvB,IAAM,KAAK,GAAa,mBAAQ,CAAC,UAAU,EAAE,CAAC;wBAC9C,OAAO,CAAC,OAAO,CAAC,UAAC,CAAC;4BACd,OAAA,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,CAAC,EACD,IAAI,EACJ,KAAK,CACR;wBALD,CAKC,CACJ,CAAC;wBACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;4BACxB,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;wBACxD,OAAO,KAAK,CAAC;oBACjB,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,OAAO,CAAC,OAAO,CAAC,UAAC,CAAC;oBACd,OAAA,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,CAAC,EACD,KAAK,EACL,KAAK,CACR;gBALD,CAKC,CACJ,CAAC;gBACF,OAAO,IAAI,CAAC;YAChB,CAAC;QApDD,CAoDC;IArDD,CAqDC;AAtDD,CAsDC,CAAC;AAxDO,QAAA,sBAAsB,0BAwD7B"}
1
+ {"version":3,"file":"iterate_metadata_union.js","sourceRoot":"","sources":["../../../../src/factories/internal/metadata/iterate_metadata_union.ts"],"names":[],"mappings":";;;AAMA,uDAAsD;AAE/C,IAAM,sBAAsB,GAC/B,UAAC,OAAuB;IACxB,OAAA,UAAC,OAAiC;QAClC,OAAA,UAAC,UAA8B;YAC/B,OAAA,UAAC,IAAc,EAAE,IAAa,EAAE,cAAuB;gBACnD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;oBAAE,OAAO,KAAK,CAAC;gBAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,CAAC;oBACjB,OAAA,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAC1C,IAAI,EACJ,CAAC,EACD,cAAc,EACd,KAAK,CACR;gBALD,CAKC,CACJ,CAAC;gBACF,OAAO,IAAI,CAAC;YAChB,CAAC;QAXD,CAWC;IAZD,CAYC;AAbD,CAaC,CAAC;AAfO,QAAA,sBAAsB,0BAe7B"}
@@ -144,16 +144,13 @@ var StringifyProgrammer;
144
144
  }
145
145
  var unions = [];
146
146
  if (meta.resolved !== null)
147
- if (size === 1)
148
- return decode_to_json(project)(config)(importer)(input, meta.resolved, explore);
149
- else
150
- unions.push({
151
- type: "resolved",
152
- is: function () { return IsProgrammer_1.IsProgrammer.decode_to_json(false)(input); },
153
- value: function () {
154
- return decode_to_json(project)(config)(importer)(input, meta.resolved, explore);
155
- },
156
- });
147
+ unions.push({
148
+ type: "resolved",
149
+ is: function () { return IsProgrammer_1.IsProgrammer.decode_to_json(false)(input); },
150
+ value: function () {
151
+ return decode_to_json(project)(config)(importer)(input, meta.resolved, explore);
152
+ },
153
+ });
157
154
  else if (meta.functional === true)
158
155
  unions.push({
159
156
  type: "functional",
@@ -1 +1 @@
1
- {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/StringifyProgrammer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "4.0.6",
3
+ "version": "4.0.8",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
package/src/Primitive.ts CHANGED
@@ -27,6 +27,8 @@
27
27
  *
28
28
  * @template Instance Target argument type.
29
29
  * @author Jenogho Nam - https://github.com/samchon
30
+ * @author Kyungsu Kang - https://github.com/kakasoo
31
+ * @author Michael - https://github.com/8471919
30
32
  */
31
33
  export type Primitive<T> = Equal<T, PrimitiveMain<T>> extends true
32
34
  ? T
@@ -0,0 +1,33 @@
1
+ import { Metadata } from "../../../metadata/Metadata";
2
+
3
+ import { ArrayUtil } from "../../../utils/ArrayUtil";
4
+
5
+ export const emend_metadata_atomics = (meta: Metadata) => {
6
+ // ATOMICS
7
+ for (const type of meta.atomics) {
8
+ const index: number = meta.constants.findIndex((c) => c.type === type);
9
+ if (index !== -1) meta.constants.splice(index, 1);
10
+ }
11
+
12
+ // BOOLEAN
13
+ {
14
+ const index: number = meta.constants.findIndex(
15
+ (c) => c.type === "boolean",
16
+ );
17
+ if (index !== -1 && meta.constants[index]!.values.length === 2) {
18
+ meta.constants.splice(index, 1);
19
+ ArrayUtil.take(
20
+ meta.atomics,
21
+ (type) => type === "boolean",
22
+ () => "boolean",
23
+ );
24
+ }
25
+ }
26
+
27
+ // TEMPLATE
28
+ if (
29
+ meta.templates.length &&
30
+ meta.atomics.find((type) => type === "string") !== undefined
31
+ )
32
+ meta.templates.splice(0, meta.templates.length);
33
+ };
@@ -2,10 +2,9 @@ import ts from "typescript";
2
2
 
3
3
  import { Metadata } from "../../../metadata/Metadata";
4
4
 
5
- import { ArrayUtil } from "../../../utils/ArrayUtil";
6
-
7
5
  import { MetadataCollection } from "../../MetadataCollection";
8
6
  import { MetadataFactory } from "../../MetadataFactory";
7
+ import { emend_metadata_atomics } from "./emend_metadata_atomics";
9
8
  import { iterate_metadata } from "./iterate_metadata";
10
9
 
11
10
  export const explore_metadata =
@@ -32,35 +31,7 @@ export const explore_metadata =
32
31
  parentResolved,
33
32
  aliased,
34
33
  );
35
-
36
- // EMEND ATOMICS
37
- for (const type of meta.atomics) {
38
- const index: number = meta.constants.findIndex(
39
- (c) => c.type === type,
40
- );
41
- if (index !== -1) meta.constants.splice(index, 1);
42
- }
43
-
44
- // EMEND BOOLEAN
45
- {
46
- const index: number = meta.constants.findIndex(
47
- (c) => c.type === "boolean",
48
- );
49
- if (index !== -1 && meta.constants[index]!.values.length === 2) {
50
- meta.constants.splice(index, 1);
51
- ArrayUtil.take(
52
- meta.atomics,
53
- (type) => type === "boolean",
54
- () => "boolean",
55
- );
56
- }
57
- }
58
-
59
- // EMEND TEMPLATE
60
- if (
61
- meta.templates.length &&
62
- meta.atomics.find((type) => type === "string") !== undefined
63
- )
64
- meta.templates.splice(0, meta.templates.length);
34
+ emend_metadata_atomics(meta);
35
+ if (meta.resolved) emend_metadata_atomics(meta.resolved);
65
36
  return out(meta);
66
37
  };
@@ -27,7 +27,7 @@ export const iterate_metadata =
27
27
  (
28
28
  meta: Metadata,
29
29
  type: ts.Type,
30
- parentResolved: boolean,
30
+ resolved: boolean,
31
31
  aliased: boolean,
32
32
  ): void => {
33
33
  if (type.isTypeParameter() === true)
@@ -44,18 +44,19 @@ export const iterate_metadata =
44
44
  iterate_metadata_intersection(checker)(options)(collection)(
45
45
  meta,
46
46
  type,
47
- parentResolved,
47
+ resolved,
48
48
  aliased,
49
49
  ) ||
50
50
  iterate_metadata_union(checker)(options)(collection)(
51
51
  meta,
52
52
  type,
53
- parentResolved,
53
+ resolved,
54
54
  ) ||
55
55
  iterate_metadata_resolve(checker)(options)(collection)(
56
56
  meta,
57
57
  type,
58
- parentResolved,
58
+ resolved,
59
+ aliased,
59
60
  )
60
61
  )
61
62
  return;
@@ -79,6 +80,6 @@ export const iterate_metadata =
79
80
  iterate_metadata_object(checker)(options)(collection)(
80
81
  meta,
81
82
  type,
82
- parentResolved,
83
+ resolved,
83
84
  );
84
85
  };
@@ -7,21 +7,32 @@ import { Writable } from "../../../typings/Writable";
7
7
  import { MetadataCollection } from "../../MetadataCollection";
8
8
  import { MetadataFactory } from "../../MetadataFactory";
9
9
  import { TypeFactory } from "../../TypeFactory";
10
- import { explore_metadata } from "./explore_metadata";
10
+ import { iterate_metadata } from "./iterate_metadata";
11
+
12
+ // import { iterate_metadata_coalesce } from "./iterate_metadata_coalesce";
11
13
 
12
14
  export const iterate_metadata_resolve =
13
15
  (checker: ts.TypeChecker) =>
14
16
  (options: MetadataFactory.IOptions) =>
15
17
  (collection: MetadataCollection) =>
16
- (meta: Metadata, type: ts.Type, parentResolved: boolean): boolean => {
17
- if (options.resolve === true && parentResolved === false) {
18
- const resolved: ts.Type | null = TypeFactory.resolve(checker)(type);
19
- if (resolved !== null) {
20
- Writable(meta).resolved = explore_metadata(checker)(options)(
21
- collection,
22
- )(resolved, true);
23
- return true;
24
- }
25
- }
26
- return false;
18
+ (
19
+ meta: Metadata,
20
+ type: ts.Type,
21
+ resolved: boolean,
22
+ aliased: boolean,
23
+ ): boolean => {
24
+ if (options.resolve === false || resolved === true) return false;
25
+
26
+ const escaped: ts.Type | null = TypeFactory.resolve(checker)(type);
27
+ if (escaped === null) return false;
28
+
29
+ if (meta.resolved === null)
30
+ Writable(meta).resolved = Metadata.initialize();
31
+ iterate_metadata(checker)(options)(collection)(
32
+ meta.resolved!,
33
+ escaped,
34
+ true,
35
+ aliased,
36
+ );
37
+ return true;
27
38
  };
@@ -2,11 +2,8 @@ import ts from "typescript";
2
2
 
3
3
  import { Metadata } from "../../../metadata/Metadata";
4
4
 
5
- import { Writable } from "../../../typings/Writable";
6
-
7
5
  import { MetadataCollection } from "../../MetadataCollection";
8
6
  import { MetadataFactory } from "../../MetadataFactory";
9
- import { TypeFactory } from "../../TypeFactory";
10
7
  import { iterate_metadata } from "./iterate_metadata";
11
8
 
12
9
  export const iterate_metadata_union =
@@ -15,52 +12,11 @@ export const iterate_metadata_union =
15
12
  (collection: MetadataCollection) =>
16
13
  (meta: Metadata, type: ts.Type, parentResolved: boolean): boolean => {
17
14
  if (!type.isUnion()) return false;
18
- else if (options.resolve === false || parentResolved === true) {
19
- type.types.forEach((t) =>
20
- iterate_metadata(checker)(options)(collection)(
21
- meta,
22
- t,
23
- false,
24
- false,
25
- ),
26
- );
27
- return true;
28
- }
29
-
30
- const filter = (flag: ts.TypeFlags, t: ts.Type) =>
31
- (t.getFlags() & flag) !== 0;
32
- const normals: ts.Type[] = [];
33
- const toJsons: ts.Type[] = [];
34
-
35
- for (const individual of type.types) {
36
- if (filter(ts.TypeFlags.Object, individual)) {
37
- const resolved: ts.Type | null =
38
- TypeFactory.resolve(checker)(individual);
39
- if (resolved !== null) toJsons.push(resolved);
40
- else normals.push(individual);
41
- } else normals.push(individual);
42
- }
43
- if (toJsons.length !== 0) {
44
- Writable(meta).resolved = (() => {
45
- const union: Metadata = Metadata.initialize();
46
- toJsons.forEach((t) =>
47
- iterate_metadata(checker)(options)(collection)(
48
- meta,
49
- t,
50
- true,
51
- false,
52
- ),
53
- );
54
- if (union.objects.length > 1)
55
- union.union_index = collection.getUnionIndex(union);
56
- return union;
57
- })();
58
- }
59
- normals.forEach((t) =>
15
+ type.types.forEach((t) =>
60
16
  iterate_metadata(checker)(options)(collection)(
61
17
  meta,
62
18
  t,
63
- false,
19
+ parentResolved,
64
20
  false,
65
21
  ),
66
22
  );
@@ -194,23 +194,16 @@ export namespace StringifyProgrammer {
194
194
 
195
195
  // toJSON() METHOD
196
196
  if (meta.resolved !== null)
197
- if (size === 1)
198
- return decode_to_json(project)(config)(importer)(
199
- input,
200
- meta.resolved,
201
- explore,
202
- );
203
- else
204
- unions.push({
205
- type: "resolved",
206
- is: () => IsProgrammer.decode_to_json(false)(input),
207
- value: () =>
208
- decode_to_json(project)(config)(importer)(
209
- input,
210
- meta.resolved!,
211
- explore,
212
- ),
213
- });
197
+ unions.push({
198
+ type: "resolved",
199
+ is: () => IsProgrammer.decode_to_json(false)(input),
200
+ value: () =>
201
+ decode_to_json(project)(config)(importer)(
202
+ input,
203
+ meta.resolved!,
204
+ explore,
205
+ ),
206
+ });
214
207
  else if (meta.functional === true)
215
208
  unions.push({
216
209
  type: "functional",