typia 3.5.0-dev.20230213 → 3.5.0-dev.20230214

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 (192) hide show
  1. package/README.md +15 -1
  2. package/lib/IRandomGenerator.d.ts +15 -0
  3. package/lib/IRandomGenerator.js +3 -0
  4. package/lib/IRandomGenerator.js.map +1 -0
  5. package/lib/factories/ExpressionFactory.d.ts +1 -0
  6. package/lib/factories/ExpressionFactory.js +4 -0
  7. package/lib/factories/ExpressionFactory.js.map +1 -1
  8. package/lib/factories/MetadataFactory.js +15 -5
  9. package/lib/factories/MetadataFactory.js.map +1 -1
  10. package/lib/factories/MetadataTagFactory.js +11 -101
  11. package/lib/factories/MetadataTagFactory.js.map +1 -1
  12. package/lib/functional/$any.d.ts +1 -0
  13. package/lib/functional/$any.js +8 -0
  14. package/lib/functional/$any.js.map +1 -0
  15. package/lib/{programmers/internal/check_length.d.ts → functional/Namespace.d.ts} +0 -0
  16. package/lib/functional/Namespace.js +80 -0
  17. package/lib/functional/Namespace.js.map +1 -0
  18. package/lib/metadata/IMetadataTag.d.ts +3 -10
  19. package/lib/module.d.ts +254 -18
  20. package/lib/module.js +68 -246
  21. package/lib/module.js.map +1 -1
  22. package/lib/programmers/AssertCloneProgrammer.d.ts +5 -0
  23. package/lib/programmers/AssertCloneProgrammer.js +37 -0
  24. package/lib/programmers/AssertCloneProgrammer.js.map +1 -0
  25. package/lib/programmers/CloneProgrammer.js +2 -4
  26. package/lib/programmers/CloneProgrammer.js.map +1 -1
  27. package/lib/programmers/IsCloneProgrammer.d.ts +5 -0
  28. package/lib/programmers/IsCloneProgrammer.js +37 -0
  29. package/lib/programmers/IsCloneProgrammer.js.map +1 -0
  30. package/lib/programmers/IsProgrammer.d.ts +1 -1
  31. package/lib/programmers/IsProgrammer.js +5 -2
  32. package/lib/programmers/IsProgrammer.js.map +1 -1
  33. package/lib/programmers/RandomProgrammer.d.ts +5 -0
  34. package/lib/programmers/RandomProgrammer.js +338 -0
  35. package/lib/programmers/RandomProgrammer.js.map +1 -0
  36. package/lib/programmers/StringifyProgrammer.js +1 -1
  37. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  38. package/lib/programmers/ValidateCloneProgrammer.d.ts +5 -0
  39. package/lib/programmers/ValidateCloneProgrammer.js +37 -0
  40. package/lib/programmers/ValidateCloneProgrammer.js.map +1 -0
  41. package/lib/programmers/ValidateStringifyProgrammer.js +1 -1
  42. package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
  43. package/lib/programmers/helpers/CloneJoiner.js +2 -2
  44. package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
  45. package/lib/programmers/helpers/RandomJoiner.d.ts +10 -0
  46. package/lib/programmers/helpers/RandomJoiner.js +93 -0
  47. package/lib/programmers/helpers/RandomJoiner.js.map +1 -0
  48. package/lib/programmers/helpers/RandomRanger.d.ts +25 -0
  49. package/lib/programmers/helpers/RandomRanger.js +138 -0
  50. package/lib/programmers/helpers/RandomRanger.js.map +1 -0
  51. package/lib/programmers/helpers/StringifyJoinder.js +2 -2
  52. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  53. package/lib/programmers/internal/application_array.js +0 -10
  54. package/lib/programmers/internal/application_array.js.map +1 -1
  55. package/lib/programmers/internal/application_number.js +4 -12
  56. package/lib/programmers/internal/application_number.js.map +1 -1
  57. package/lib/programmers/internal/application_string.js +0 -8
  58. package/lib/programmers/internal/application_string.js.map +1 -1
  59. package/lib/programmers/internal/check_array_length.js +3 -4
  60. package/lib/programmers/internal/check_array_length.js.map +1 -1
  61. package/lib/programmers/internal/check_bigint.js +0 -12
  62. package/lib/programmers/internal/check_bigint.js.map +1 -1
  63. package/lib/programmers/internal/check_number.js +7 -25
  64. package/lib/programmers/internal/check_number.js.map +1 -1
  65. package/lib/programmers/internal/check_string_tags.js +2 -3
  66. package/lib/programmers/internal/check_string_tags.js.map +1 -1
  67. package/lib/schemas/IJsonSchema.d.ts +36 -2
  68. package/lib/transformers/CallExpressionTransformer.js +16 -0
  69. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  70. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.d.ts +5 -0
  71. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js +23 -0
  72. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js.map +1 -0
  73. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +5 -0
  74. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js +18 -0
  75. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js.map +1 -0
  76. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js +2 -1
  77. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js.map +1 -1
  78. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js +2 -1
  79. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js.map +1 -1
  80. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +5 -0
  81. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js +18 -0
  82. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js.map +1 -0
  83. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js +2 -1
  84. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js.map +1 -1
  85. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js +2 -1
  86. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js.map +1 -1
  87. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.d.ts +5 -0
  88. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.js +29 -0
  89. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.js.map +1 -0
  90. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.d.ts +5 -0
  91. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js +18 -0
  92. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js.map +1 -0
  93. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js +2 -1
  94. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js.map +1 -1
  95. package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +5 -0
  96. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js +23 -0
  97. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js.map +1 -0
  98. package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +5 -0
  99. package/lib/transformers/features/miscellaneous/RandomTransformer.js +35 -0
  100. package/lib/transformers/features/miscellaneous/RandomTransformer.js.map +1 -0
  101. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.d.ts +5 -0
  102. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js +23 -0
  103. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js.map +1 -0
  104. package/lib/transformers/features/parsers/AssertParseTransformer.js +2 -1
  105. package/lib/transformers/features/parsers/AssertParseTransformer.js.map +1 -1
  106. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js +2 -1
  107. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js.map +1 -1
  108. package/lib/transformers/features/parsers/CreateIsParseTransformer.js +2 -1
  109. package/lib/transformers/features/parsers/CreateIsParseTransformer.js.map +1 -1
  110. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js +2 -1
  111. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js.map +1 -1
  112. package/lib/transformers/features/parsers/IsParseTransformer.js +2 -1
  113. package/lib/transformers/features/parsers/IsParseTransformer.js.map +1 -1
  114. package/lib/transformers/features/parsers/ValidateParseTransformer.js +2 -1
  115. package/lib/transformers/features/parsers/ValidateParseTransformer.js.map +1 -1
  116. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js +2 -1
  117. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js.map +1 -1
  118. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js +2 -1
  119. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js.map +1 -1
  120. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js +2 -1
  121. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js.map +1 -1
  122. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js +2 -1
  123. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js.map +1 -1
  124. package/lib/transformers/features/validators/CreateAssertTransformer.js +2 -1
  125. package/lib/transformers/features/validators/CreateAssertTransformer.js.map +1 -1
  126. package/lib/transformers/features/validators/CreateIsTransformer.js +2 -1
  127. package/lib/transformers/features/validators/CreateIsTransformer.js.map +1 -1
  128. package/lib/transformers/features/validators/CreateValidateTransformer.js +2 -1
  129. package/lib/transformers/features/validators/CreateValidateTransformer.js.map +1 -1
  130. package/lib/utils/RandomGenerator.d.ts +1 -0
  131. package/lib/utils/RandomGenerator.js +85 -0
  132. package/lib/utils/RandomGenerator.js.map +1 -0
  133. package/package.json +8 -3
  134. package/src/IRandomGenerator.ts +16 -0
  135. package/src/factories/ExpressionFactory.ts +11 -0
  136. package/src/factories/MetadataFactory.ts +18 -14
  137. package/src/factories/MetadataTagFactory.ts +11 -97
  138. package/src/functional/$any.ts +3 -0
  139. package/src/functional/Namespace.ts +121 -0
  140. package/src/metadata/IMetadataTag.ts +2 -11
  141. package/src/module.ts +375 -368
  142. package/src/programmers/AssertCloneProgrammer.ts +60 -0
  143. package/src/programmers/CloneProgrammer.ts +3 -9
  144. package/src/programmers/IsCloneProgrammer.ts +66 -0
  145. package/src/programmers/IsProgrammer.ts +8 -5
  146. package/src/programmers/RandomProgrammer.ts +367 -0
  147. package/src/programmers/StringifyProgrammer.ts +2 -4
  148. package/src/programmers/ValidateCloneProgrammer.ts +77 -0
  149. package/src/programmers/ValidateStringifyProgrammer.ts +1 -4
  150. package/src/programmers/helpers/CloneJoiner.ts +2 -4
  151. package/src/programmers/helpers/RandomJoiner.ts +140 -0
  152. package/src/programmers/helpers/RandomRanger.ts +215 -0
  153. package/src/programmers/helpers/StringifyJoinder.ts +4 -4
  154. package/src/programmers/internal/application_array.ts +0 -10
  155. package/src/programmers/internal/application_number.ts +7 -13
  156. package/src/programmers/internal/application_string.ts +0 -8
  157. package/src/programmers/internal/check_array_length.ts +8 -9
  158. package/src/programmers/internal/check_bigint.ts +0 -21
  159. package/src/programmers/internal/check_number.ts +0 -30
  160. package/src/programmers/internal/check_string_tags.ts +7 -7
  161. package/src/schemas/IJsonSchema.ts +36 -1
  162. package/src/transformers/CallExpressionTransformer.ts +19 -0
  163. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +38 -0
  164. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +32 -0
  165. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +1 -1
  166. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +1 -1
  167. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +32 -0
  168. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +1 -1
  169. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +1 -1
  170. package/src/transformers/features/miscellaneous/CreateRandomGenerator.ts +39 -0
  171. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +32 -0
  172. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +1 -1
  173. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +38 -0
  174. package/src/transformers/features/miscellaneous/RandomTransformer.ts +45 -0
  175. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +38 -0
  176. package/src/transformers/features/parsers/AssertParseTransformer.ts +1 -1
  177. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +1 -1
  178. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +1 -1
  179. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +1 -1
  180. package/src/transformers/features/parsers/IsParseTransformer.ts +1 -1
  181. package/src/transformers/features/parsers/ValidateParseTransformer.ts +1 -1
  182. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +1 -1
  183. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +1 -1
  184. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +1 -1
  185. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +1 -1
  186. package/src/transformers/features/validators/CreateAssertTransformer.ts +1 -1
  187. package/src/transformers/features/validators/CreateIsTransformer.ts +1 -1
  188. package/src/transformers/features/validators/CreateValidateTransformer.ts +1 -1
  189. package/src/utils/RandomGenerator.ts +90 -0
  190. package/lib/programmers/internal/check_length.js +0 -28
  191. package/lib/programmers/internal/check_length.js.map +0 -1
  192. package/src/programmers/internal/check_length.ts +0 -46
@@ -108,8 +108,11 @@ var IsProgrammer;
108
108
  IsProgrammer.decode_object = function (importer) {
109
109
  return CheckerProgrammer_1.CheckerProgrammer.decode_object(IsProgrammer.CONFIG()(importer));
110
110
  };
111
- function decode_to_json(input) {
112
- return typescript_1.default.factory.createLogicalAnd(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("object"), ValueFactory_1.ValueFactory.TYPEOF(input)), typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), ValueFactory_1.ValueFactory.TYPEOF(IdentifierFactory_1.IdentifierFactory.join(input, "toJSON"))));
111
+ function decode_to_json(input, checkNull) {
112
+ return typescript_1.default.factory.createLogicalAnd(ExpressionFactory_1.ExpressionFactory.isObject(input, {
113
+ checkArray: false,
114
+ checkNull: checkNull,
115
+ }), typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createStringLiteral("function"), ValueFactory_1.ValueFactory.TYPEOF(IdentifierFactory_1.IdentifierFactory.join(input, "toJSON"))));
113
116
  }
114
117
  IsProgrammer.decode_to_json = decode_to_json;
115
118
  function decode_functional(input) {
@@ -1 +1 @@
1
- {"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import ts from "typescript";
2
+ import { IProject } from "../transformers/IProject";
3
+ export declare namespace RandomProgrammer {
4
+ function generate(project: IProject, modulo: ts.LeftHandSideExpression): (type: ts.Type) => ts.ArrowFunction;
5
+ }
@@ -0,0 +1,338 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ var __values = (this && this.__values) || function(o) {
28
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
29
+ if (m) return m.call(o);
30
+ if (o && typeof o.length === "number") return {
31
+ next: function () {
32
+ if (o && i >= o.length) o = void 0;
33
+ return { value: o && o[i++], done: !o };
34
+ }
35
+ };
36
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.RandomProgrammer = void 0;
43
+ var typescript_1 = __importDefault(require("typescript"));
44
+ var ExpressionFactory_1 = require("../factories/ExpressionFactory");
45
+ var IdentifierFactory_1 = require("../factories/IdentifierFactory");
46
+ var MetadataCollection_1 = require("../factories/MetadataCollection");
47
+ var MetadataFactory_1 = require("../factories/MetadataFactory");
48
+ var StatementFactory_1 = require("../factories/StatementFactory");
49
+ var TemplateFactory_1 = require("../factories/TemplateFactory");
50
+ var FunctionImporeter_1 = require("./helpers/FunctionImporeter");
51
+ var RandomJoiner_1 = require("./helpers/RandomJoiner");
52
+ var RandomRanger_1 = require("./helpers/RandomRanger");
53
+ var RandomProgrammer;
54
+ (function (RandomProgrammer) {
55
+ function generate(project, modulo) {
56
+ var importer = new FunctionImporeter_1.FunctionImporter();
57
+ return function (type) {
58
+ var collection = new MetadataCollection_1.MetadataCollection();
59
+ var meta = MetadataFactory_1.MetadataFactory.generate(project.checker, collection, type, {
60
+ resolve: true,
61
+ constant: true,
62
+ });
63
+ var functors = generate_functors(importer)(collection);
64
+ var output = decode(importer)({
65
+ object: false,
66
+ recursive: false,
67
+ })(meta, []);
68
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [
69
+ IdentifierFactory_1.IdentifierFactory.parameter("generator", IdentifierFactory_1.IdentifierFactory.join(modulo, "generator")),
70
+ ], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray([], __read(importer.declare(modulo)), false), __read(functors), false), [
71
+ typescript_1.default.factory.createReturnStatement(output),
72
+ ], false), true));
73
+ };
74
+ }
75
+ RandomProgrammer.generate = generate;
76
+ var generate_functors = function (importer) { return function (collection) {
77
+ return collection.objects().map(function (obj, i) {
78
+ return StatementFactory_1.StatementFactory.constant(FUNCTOR(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, [
79
+ IdentifierFactory_1.IdentifierFactory.parameter("recursive", typescript_1.default.factory.createIdentifier(String(obj.recursive))),
80
+ IdentifierFactory_1.IdentifierFactory.parameter("depth", typescript_1.default.factory.createNumericLiteral(0)),
81
+ ], undefined, undefined, RandomJoiner_1.RandomJoiner.object(decode(importer)({
82
+ recursive: obj.recursive,
83
+ object: true,
84
+ }))(obj)));
85
+ });
86
+ }; };
87
+ var decode = function (importer) {
88
+ return function (explore) {
89
+ return function (meta, tags) {
90
+ var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g, e_8, _h;
91
+ var expressions = [];
92
+ if (meta.any)
93
+ expressions.push(typescript_1.default.factory.createStringLiteral("fucking any type exists..."));
94
+ if (meta.required === false)
95
+ expressions.push(typescript_1.default.factory.createIdentifier("undefined"));
96
+ if (meta.nullable === true)
97
+ expressions.push(typescript_1.default.factory.createNull());
98
+ try {
99
+ for (var _j = __values(meta.constants), _k = _j.next(); !_k.done; _k = _j.next()) {
100
+ var constant = _k.value;
101
+ try {
102
+ for (var _l = (e_2 = void 0, __values(constant.values)), _m = _l.next(); !_m.done; _m = _l.next()) {
103
+ var value = _m.value;
104
+ expressions.push(decode_atomic(value));
105
+ }
106
+ }
107
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
108
+ finally {
109
+ try {
110
+ if (_m && !_m.done && (_b = _l.return)) _b.call(_l);
111
+ }
112
+ finally { if (e_2) throw e_2.error; }
113
+ }
114
+ }
115
+ }
116
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
117
+ finally {
118
+ try {
119
+ if (_k && !_k.done && (_a = _j.return)) _a.call(_j);
120
+ }
121
+ finally { if (e_1) throw e_1.error; }
122
+ }
123
+ try {
124
+ for (var _o = __values(meta.templates), _p = _o.next(); !_p.done; _p = _o.next()) {
125
+ var template = _p.value;
126
+ expressions.push(decode_template(importer)(explore)(template));
127
+ }
128
+ }
129
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
130
+ finally {
131
+ try {
132
+ if (_p && !_p.done && (_c = _o.return)) _c.call(_o);
133
+ }
134
+ finally { if (e_3) throw e_3.error; }
135
+ }
136
+ try {
137
+ for (var _q = __values(meta.atomics), _r = _q.next(); !_r.done; _r = _q.next()) {
138
+ var atomic = _r.value;
139
+ if (atomic === "boolean")
140
+ expressions.push(decode_boolean());
141
+ else if (atomic === "number")
142
+ expressions.push(decode_number(tags));
143
+ else if (atomic === "string")
144
+ expressions.push(decode_string(importer)(tags));
145
+ else if (atomic === "bigint")
146
+ expressions.push(decode_bigint(tags));
147
+ }
148
+ }
149
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
150
+ finally {
151
+ try {
152
+ if (_r && !_r.done && (_d = _q.return)) _d.call(_q);
153
+ }
154
+ finally { if (e_4) throw e_4.error; }
155
+ }
156
+ if (meta.resolved)
157
+ expressions.push(decode(importer)(explore)(meta.resolved, tags));
158
+ try {
159
+ for (var _s = __values(meta.tuples), _t = _s.next(); !_t.done; _t = _s.next()) {
160
+ var t = _t.value;
161
+ expressions.push(RandomJoiner_1.RandomJoiner.tuple(decode(importer)(explore))(t, tags));
162
+ }
163
+ }
164
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
165
+ finally {
166
+ try {
167
+ if (_t && !_t.done && (_e = _s.return)) _e.call(_s);
168
+ }
169
+ finally { if (e_5) throw e_5.error; }
170
+ }
171
+ try {
172
+ for (var _u = __values(meta.arrays), _v = _u.next(); !_v.done; _v = _u.next()) {
173
+ var a = _v.value;
174
+ var array = RandomJoiner_1.RandomJoiner.array(decode(importer)(explore))(a, tags);
175
+ expressions.push(explore.recursive && a.objects.length
176
+ ? typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createLogicalAnd(typescript_1.default.factory.createIdentifier("recursive"), typescript_1.default.factory.createLessThan(typescript_1.default.factory.createNumericLiteral(5), typescript_1.default.factory.createIdentifier("depth"))), undefined, typescript_1.default.factory.createIdentifier("[]"), undefined, array)
177
+ : array);
178
+ }
179
+ }
180
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
181
+ finally {
182
+ try {
183
+ if (_v && !_v.done && (_f = _u.return)) _f.call(_u);
184
+ }
185
+ finally { if (e_6) throw e_6.error; }
186
+ }
187
+ try {
188
+ for (var _w = __values(meta.objects), _x = _w.next(); !_x.done; _x = _w.next()) {
189
+ var o = _x.value;
190
+ expressions.push(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(FUNCTOR(o.index)), undefined, explore.object
191
+ ? [
192
+ explore.recursive
193
+ ? typescript_1.default.factory.createTrue()
194
+ : typescript_1.default.factory.createIdentifier("recursive"),
195
+ typescript_1.default.factory.createConditionalExpression(typescript_1.default.factory.createIdentifier("recursive"), undefined, typescript_1.default.factory.createAdd(typescript_1.default.factory.createNumericLiteral(1), typescript_1.default.factory.createIdentifier("depth")), undefined, typescript_1.default.factory.createIdentifier("depth")),
196
+ ]
197
+ : undefined));
198
+ }
199
+ }
200
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
201
+ finally {
202
+ try {
203
+ if (_x && !_x.done && (_g = _w.return)) _g.call(_w);
204
+ }
205
+ finally { if (e_7) throw e_7.error; }
206
+ }
207
+ try {
208
+ for (var _y = __values(meta.natives), _z = _y.next(); !_z.done; _z = _y.next()) {
209
+ var native = _z.value;
210
+ if (native === "Boolean")
211
+ expressions.push(decode_boolean());
212
+ else if (native === "Number")
213
+ expressions.push(decode_number(tags));
214
+ else if (native === "String")
215
+ expressions.push(decode_string(importer)(tags));
216
+ else
217
+ expressions.push(typescript_1.default.factory.createIdentifier("{}"));
218
+ }
219
+ }
220
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
221
+ finally {
222
+ try {
223
+ if (_z && !_z.done && (_h = _y.return)) _h.call(_y);
224
+ }
225
+ finally { if (e_8) throw e_8.error; }
226
+ }
227
+ if (meta.sets.length || meta.maps.length)
228
+ expressions.push(typescript_1.default.factory.createIdentifier("{}"));
229
+ if (expressions.length === 1)
230
+ return expressions[0];
231
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createCallExpression(importer.use("pick"), undefined, [
232
+ typescript_1.default.factory.createArrayLiteralExpression(expressions.map(function (expr) {
233
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, expr);
234
+ }), true),
235
+ ]), undefined, undefined);
236
+ };
237
+ };
238
+ };
239
+ var decode_boolean = function () {
240
+ return typescript_1.default.factory.createLessThan(typescript_1.default.factory.createNumericLiteral(0.5), typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("Math.random"), undefined, undefined));
241
+ };
242
+ var decode_atomic = function (value) {
243
+ return typeof value === "boolean"
244
+ ? typescript_1.default.factory.createIdentifier(value.toString())
245
+ : typeof value === "number"
246
+ ? typescript_1.default.factory.createNumericLiteral(value)
247
+ : typeof value === "string"
248
+ ? typescript_1.default.factory.createStringLiteral(value)
249
+ : typescript_1.default.factory.createBigIntLiteral(value.toString());
250
+ };
251
+ var decode_template = function (importer) {
252
+ return function (explore) {
253
+ return function (template) {
254
+ return TemplateFactory_1.TemplateFactory.generate(template.map(function (meta) { return decode(importer)(explore)(meta, []); }));
255
+ };
256
+ };
257
+ };
258
+ var decode_number = function (tags) {
259
+ var type = tags.find(function (t) { return t.kind === "type" && t.value === "uint"; })
260
+ ? "int"
261
+ : tags.find(function (t) { return t.kind === "type" && t.value === "int"; })
262
+ ? "uint"
263
+ : "double";
264
+ return RandomRanger_1.RandomRanger.number({
265
+ type: type,
266
+ transform: function (value) { return typescript_1.default.factory.createNumericLiteral(value); },
267
+ setter: function (args) {
268
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(type === "double" &&
269
+ tags.every(function (t) {
270
+ return t.kind !== "multipleOf" &&
271
+ t.kind !== "step";
272
+ })
273
+ ? "generator.number"
274
+ : "generator.integer"), undefined, args.map(function (val) { return typescript_1.default.factory.createNumericLiteral(val); }));
275
+ },
276
+ })({
277
+ minimum: 0,
278
+ maximum: 100,
279
+ gap: 10,
280
+ })(tags);
281
+ };
282
+ var decode_bigint = function (tags) {
283
+ return RandomRanger_1.RandomRanger.number({
284
+ type: tags.find(function (t) { return t.kind === "type" && t.value === "uint"; })
285
+ ? "uint"
286
+ : "int",
287
+ transform: function (value) {
288
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("BigInt"), undefined, [typescript_1.default.factory.createStringLiteral(value.toString())]);
289
+ },
290
+ setter: function (args) {
291
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.bigint"), undefined, args.map(function (value) {
292
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("BigInt"), undefined, [typescript_1.default.factory.createStringLiteral(value.toString())]);
293
+ }));
294
+ },
295
+ })({
296
+ minimum: 0,
297
+ maximum: 100,
298
+ gap: 10,
299
+ })(tags);
300
+ };
301
+ var decode_string = function (importer) {
302
+ return function (tags) {
303
+ var e_9, _a;
304
+ try {
305
+ for (var tags_1 = __values(tags), tags_1_1 = tags_1.next(); !tags_1_1.done; tags_1_1 = tags_1.next()) {
306
+ var t = tags_1_1.value;
307
+ if (t.kind === "format" &&
308
+ ["uuid", "email", "url", "ipv4", "ipv6"].includes(t.value))
309
+ return typescript_1.default.factory.createCallExpression(COALESCE(importer)(t.value), undefined, undefined);
310
+ else if (t.kind === "pattern")
311
+ return typescript_1.default.factory.createCallExpression(COALESCE(importer)("pattern"), undefined, [typescript_1.default.factory.createIdentifier("/".concat(t.value, "/"))]);
312
+ }
313
+ }
314
+ catch (e_9_1) { e_9 = { error: e_9_1 }; }
315
+ finally {
316
+ try {
317
+ if (tags_1_1 && !tags_1_1.done && (_a = tags_1.return)) _a.call(tags_1);
318
+ }
319
+ finally { if (e_9) throw e_9.error; }
320
+ }
321
+ var tail = RandomRanger_1.RandomRanger.length({
322
+ minimum: 5,
323
+ maximum: 25,
324
+ gap: 5,
325
+ })({
326
+ fixed: "length",
327
+ minimum: "minLength",
328
+ maximum: "maxLength",
329
+ })(tags);
330
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.string"), undefined, tail ? [tail] : undefined);
331
+ };
332
+ };
333
+ })(RandomProgrammer = exports.RandomProgrammer || (exports.RandomProgrammer = {}));
334
+ var FUNCTOR = function (i) { return "$ro".concat(i); };
335
+ var COALESCE = function (importer) { return function (name) {
336
+ return ExpressionFactory_1.ExpressionFactory.coalesce(typescript_1.default.factory.createIdentifier("generator.".concat(name)), IdentifierFactory_1.IdentifierFactory.join(importer.use("generator"), name));
337
+ }; };
338
+ //# sourceMappingURL=RandomProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RandomProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RandomProgrammer.ts"],"names":[],"mappings":"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"}
@@ -107,7 +107,7 @@ var StringifyProgrammer;
107
107
  else
108
108
  unions.push({
109
109
  type: "resolved",
110
- is: function () { return IsProgrammer_1.IsProgrammer.decode_to_json(input); },
110
+ is: function () { return IsProgrammer_1.IsProgrammer.decode_to_json(input, false); },
111
111
  value: function () {
112
112
  return decode_to_json(project, importer)(input, meta.resolved, explore, tags);
113
113
  },
@@ -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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"}
@@ -0,0 +1,5 @@
1
+ import ts from "typescript";
2
+ import { IProject } from "../transformers/IProject";
3
+ export declare namespace ValidateCloneProgrammer {
4
+ const generate: (project: IProject, modulo: ts.LeftHandSideExpression) => (type: ts.Type) => ts.ArrowFunction;
5
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ValidateCloneProgrammer = void 0;
18
+ var typescript_1 = __importDefault(require("typescript"));
19
+ var IdentifierFactory_1 = require("../factories/IdentifierFactory");
20
+ var StatementFactory_1 = require("../factories/StatementFactory");
21
+ var CloneProgrammer_1 = require("./CloneProgrammer");
22
+ var ValidateProgrammer_1 = require("./ValidateProgrammer");
23
+ var ValidateCloneProgrammer;
24
+ (function (ValidateCloneProgrammer) {
25
+ ValidateCloneProgrammer.generate = function (project, modulo) {
26
+ return function (type) {
27
+ return typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("input")], undefined, undefined, typescript_1.default.factory.createBlock([
28
+ StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }), modulo)(type)),
29
+ StatementFactory_1.StatementFactory.constant("clone", CloneProgrammer_1.CloneProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
30
+ StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
31
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createIdentifier("output.success"), typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("output.data"), typescript_1.default.SyntaxKind.EqualsToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("clone"), undefined, [typescript_1.default.factory.createIdentifier("input")])))),
32
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
33
+ ]));
34
+ };
35
+ };
36
+ })(ValidateCloneProgrammer = exports.ValidateCloneProgrammer || (exports.ValidateCloneProgrammer = {}));
37
+ //# sourceMappingURL=ValidateCloneProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidateCloneProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateCloneProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AAIjE,qDAAoD;AACpD,2DAA0D;AAE1D,IAAiB,uBAAuB,CAkEvC;AAlED,WAAiB,uBAAuB;IACvB,gCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,OAAO,EACP,iCAAe,CAAC,QAAQ,uBAEb,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,EACpC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QA7DD,CA6DC;IA9DL,CA8DK,CAAC;AACd,CAAC,EAlEgB,uBAAuB,GAAvB,+BAAuB,KAAvB,+BAAuB,QAkEvC"}
@@ -28,7 +28,7 @@ var ValidateStringifyProgrammer;
28
28
  StatementFactory_1.StatementFactory.constant("validate", ValidateProgrammer_1.ValidateProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: true }) }), modulo)(type)),
29
29
  StatementFactory_1.StatementFactory.constant("stringify", StringifyProgrammer_1.StringifyProgrammer.generate(__assign(__assign({}, project), { options: __assign(__assign({}, project.options), { functional: false, numeric: false }) }), modulo)(type)),
30
30
  StatementFactory_1.StatementFactory.constant("output", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("validate"), undefined, [typescript_1.default.factory.createIdentifier("input")])),
31
- typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createTrue(), typescript_1.default.factory.createIdentifier("output.success")), typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("output.data"), typescript_1.default.SyntaxKind.EqualsToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("stringify"), undefined, [typescript_1.default.factory.createIdentifier("input")])))),
31
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createIdentifier("output.success"), typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createIdentifier("output.data"), typescript_1.default.SyntaxKind.EqualsToken, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("stringify"), undefined, [typescript_1.default.factory.createIdentifier("input")])))),
32
32
  typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
33
33
  ]));
34
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateStringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateStringifyProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AAIjE,6DAA4D;AAC5D,2DAA0D;AAE1D,IAAiB,2BAA2B,CAqE3C;AArED,WAAiB,2BAA2B;IAC3B,oCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,WAAW,EACX,yCAAmB,CAAC,QAAQ,uBAEjB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EACvB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAChD,EACD,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QAhED,CAgEC;IAjEL,CAiEK,CAAC;AACd,CAAC,EArEgB,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QAqE3C"}
1
+ {"version":3,"file":"ValidateStringifyProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ValidateStringifyProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,kEAAiE;AAIjE,6DAA4D;AAC5D,2DAA0D;AAE1D,IAAiB,2BAA2B,CAkE3C;AAlED,WAAiB,2BAA2B;IAC3B,oCAAQ,GACjB,UAAC,OAAiB,EAAE,MAAiC;QACrD,OAAA,UAAC,IAAa;YACV,OAAA,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,CAAC,qCAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EACtC,SAAS,EACT,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC;gBACnB,mCAAgB,CAAC,QAAQ,CACrB,UAAU,EACV,uCAAkB,CAAC,QAAQ,uBAEhB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,IAAI,QAGrB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,WAAW,EACX,yCAAmB,CAAC,QAAQ,uBAEjB,OAAO,KACV,OAAO,wBACA,OAAO,CAAC,OAAO,KAClB,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,QAGtB,MAAM,CACT,CAAC,IAAI,CAAC,CACV;gBACD,mCAAgB,CAAC,QAAQ,CACrB,QAAQ,EACR,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACvC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAC7C,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,sBAAsB,CAC7B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAC1C,oBAAE,CAAC,UAAU,CAAC,WAAW,EACzB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,EACxC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CACzC,CACJ,CACJ,CACJ;gBACD,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAC5B,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CACxC;aACJ,CAAC,CACL;QA7DD,CA6DC;IA9DL,CA8DK,CAAC;AACd,CAAC,EAlEgB,2BAA2B,GAA3B,mCAA2B,KAA3B,mCAA2B,QAkE3C"}
@@ -36,10 +36,10 @@ var metadata_to_pattern_1 = require("../internal/metadata_to_pattern");
36
36
  var CloneJoiner;
37
37
  (function (CloneJoiner) {
38
38
  CloneJoiner.object = function (input, entries, _obj) {
39
+ if (entries.length === 0)
40
+ return typescript_1.default.factory.createIdentifier("{}");
39
41
  var regular = entries.filter(function (e) { return e.key.isSoleLiteral(); });
40
42
  var dynamic = entries.filter(function (e) { return !e.key.isSoleLiteral(); });
41
- if (regular.length === 0 && dynamic.length === 0)
42
- return typescript_1.default.factory.createIdentifier("{}");
43
43
  var literal = typescript_1.default.factory.createObjectLiteralExpression(regular.map(function (entry) {
44
44
  var str = entry.key.getSoleLiteral();
45
45
  return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
@@ -1 +1 @@
1
- {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloneJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/CloneJoiner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import ts from "typescript";
2
+ import { IMetadataTag } from "../../metadata/IMetadataTag";
3
+ import { Metadata } from "../../metadata/Metadata";
4
+ import { MetadataObject } from "../../metadata/MetadataObject";
5
+ export declare namespace RandomJoiner {
6
+ type Decoder = (meta: Metadata, tags: IMetadataTag[]) => ts.Expression;
7
+ const array: (decoder: Decoder) => (item: Metadata, tags: IMetadataTag[]) => ts.CallExpression;
8
+ const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataTag[]) => ts.ArrayLiteralExpression;
9
+ const object: (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
10
+ }