typia 3.5.3 → 3.5.4

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 (49) hide show
  1. package/README.md +1 -1
  2. package/lib/IRandomGenerator.d.ts +8 -8
  3. package/lib/executable/TypiaSetupWizard.d.ts +8 -0
  4. package/lib/executable/TypiaSetupWizard.js +218 -0
  5. package/lib/executable/TypiaSetupWizard.js.map +1 -0
  6. package/lib/executable/setup/ArgumentParser.d.ts +7 -0
  7. package/lib/executable/setup/ArgumentParser.js +155 -0
  8. package/lib/executable/setup/ArgumentParser.js.map +1 -0
  9. package/lib/executable/{internal → setup}/CommandExecutor.d.ts +0 -0
  10. package/lib/executable/{internal → setup}/CommandExecutor.js +0 -0
  11. package/lib/executable/setup/CommandExecutor.js.map +1 -0
  12. package/lib/executable/{internal → setup}/PackageManager.d.ts +0 -0
  13. package/lib/executable/{internal → setup}/PackageManager.js +0 -0
  14. package/lib/executable/setup/PackageManager.js.map +1 -0
  15. package/lib/executable/setup/PluginConfigurator.d.ts +5 -0
  16. package/lib/executable/{internal → setup}/PluginConfigurator.js +0 -0
  17. package/lib/executable/setup/PluginConfigurator.js.map +1 -0
  18. package/lib/executable/typia.js +2 -53
  19. package/lib/executable/typia.js.map +1 -1
  20. package/lib/module.d.ts +14 -8
  21. package/lib/module.js +2 -1
  22. package/lib/module.js.map +1 -1
  23. package/lib/programmers/RandomProgrammer.js +57 -51
  24. package/lib/programmers/RandomProgrammer.js.map +1 -1
  25. package/lib/programmers/helpers/RandomJoiner.d.ts +2 -2
  26. package/lib/programmers/helpers/RandomJoiner.js +59 -49
  27. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  28. package/lib/programmers/helpers/RandomRanger.d.ts +1 -1
  29. package/lib/programmers/helpers/RandomRanger.js +22 -20
  30. package/lib/programmers/helpers/RandomRanger.js.map +1 -1
  31. package/package.json +1 -1
  32. package/src/IRandomGenerator.ts +8 -8
  33. package/src/executable/{internal/ArgumentParser.ts → TypiaSetupWizard.ts} +58 -60
  34. package/src/executable/setup/ArgumentParser.ts +89 -0
  35. package/src/executable/{internal → setup}/CommandExecutor.ts +0 -0
  36. package/src/executable/{internal → setup}/PackageManager.ts +0 -0
  37. package/src/executable/{internal → setup}/PluginConfigurator.ts +3 -3
  38. package/src/executable/typia.ts +2 -45
  39. package/src/module.ts +23 -11
  40. package/src/programmers/RandomProgrammer.ts +75 -69
  41. package/src/programmers/helpers/RandomJoiner.ts +14 -12
  42. package/src/programmers/helpers/RandomRanger.ts +2 -1
  43. package/lib/executable/internal/ArgumentParser.d.ts +0 -9
  44. package/lib/executable/internal/ArgumentParser.js +0 -266
  45. package/lib/executable/internal/ArgumentParser.js.map +0 -1
  46. package/lib/executable/internal/CommandExecutor.js.map +0 -1
  47. package/lib/executable/internal/PackageManager.js.map +0 -1
  48. package/lib/executable/internal/PluginConfigurator.d.ts +0 -5
  49. package/lib/executable/internal/PluginConfigurator.js.map +0 -1
package/lib/module.d.ts CHANGED
@@ -1,12 +1,14 @@
1
1
  import { IJsonApplication } from "./schemas/IJsonApplication";
2
+ import { IRandomGenerator } from "./IRandomGenerator";
2
3
  import { IValidation } from "./IValidation";
3
4
  import { Primitive } from "./Primitive";
4
5
  export * from "./schemas/IJsonApplication";
5
6
  export * from "./schemas/IJsonComponents";
6
7
  export * from "./schemas/IJsonSchema";
8
+ export * from "./IRandomGenerator";
9
+ export * from "./IValidation";
7
10
  export * from "./Primitive";
8
11
  export * from "./TypeGuardError";
9
- export * from "./IValidation";
10
12
  /**
11
13
  * Asserts a value type.
12
14
  *
@@ -653,11 +655,12 @@ export declare function validateStringify<T>(input: unknown): IValidation<string
653
655
  * would be generated instead.
654
656
  *
655
657
  * @template T Type of data to generate
658
+ * @param generator Random data generator
656
659
  * @return Randomly generated data
657
660
  *
658
661
  * @author Jeongho Nam - https://github.com/samchon
659
662
  */
660
- export declare function random(): never;
663
+ export declare function random(generator?: Partial<IRandomGenerator>): never;
661
664
  /**
662
665
  * Generate random data.
663
666
  *
@@ -669,11 +672,12 @@ export declare function random(): never;
669
672
  * would be generated instead.
670
673
  *
671
674
  * @template T Type of data to generate
675
+ * @param generator Random data generator
672
676
  * @return Randomly generated data
673
677
  *
674
678
  * @author Jeongho Nam - https://github.com/samchon
675
679
  */
676
- export declare function random<T>(): Primitive<T>;
680
+ export declare function random<T>(generator?: Partial<IRandomGenerator>): Primitive<T>;
677
681
  /**
678
682
  * Clone a data.
679
683
  *
@@ -1086,7 +1090,7 @@ export declare function createIsParse(): never;
1086
1090
  *
1087
1091
  * @author Jeongho Nam - https://github.com/samchon
1088
1092
  */
1089
- export declare function createIsParse<T>(): (input: string) => T | null;
1093
+ export declare function createIsParse<T>(): (input: string) => Primitive<T> | null;
1090
1094
  /**
1091
1095
  * Creates a reusable {@link assertParse} function.
1092
1096
  *
@@ -1105,7 +1109,7 @@ export declare function createAssertParse(): never;
1105
1109
  *
1106
1110
  * @author Jeongho Nam - https://github.com/samchon
1107
1111
  */
1108
- export declare function createAssertParse<T>(): (input: string) => T;
1112
+ export declare function createAssertParse<T>(): (input: string) => Primitive<T>;
1109
1113
  /**
1110
1114
  * Creates a reusable {@link validateParse} function.
1111
1115
  *
@@ -1124,7 +1128,7 @@ export declare function createValidateParse(): never;
1124
1128
  *
1125
1129
  * @author Jeongho Nam - https://github.com/samchon
1126
1130
  */
1127
- export declare function createValidateParse<T>(): (input: string) => IValidation<T>;
1131
+ export declare function createValidateParse<T>(): (input: string) => IValidation<Primitive<T>>;
1128
1132
  /**
1129
1133
  * Creates a reusable {@link stringify} function.
1130
1134
  *
@@ -1205,21 +1209,23 @@ export declare function createValidateStringify<T>(): (input: unknown) => IValid
1205
1209
  * Creates a reusable {@link random} function.
1206
1210
  *
1207
1211
  * @danger You have to specify the generic argument `T`
1212
+ * @param generator Random data generator
1208
1213
  * @return Nothing until specifying the generic argument `T`
1209
1214
  * @throws compile error
1210
1215
  *
1211
1216
  * @author Jeongho Nam - https://github.com/samchon
1212
1217
  */
1213
- export declare function createRandom(): never;
1218
+ export declare function createRandom(generator?: Partial<IRandomGenerator>): never;
1214
1219
  /**
1215
1220
  * Creates a resuable {@link random} function.
1216
1221
  *
1217
1222
  * @template T Type of the input value
1223
+ * @param generator Random data generator
1218
1224
  * @returns A reusable `random` function
1219
1225
  *
1220
1226
  * @author Jeongho Nam - https://github.com/samchon
1221
1227
  */
1222
- export declare function createRandom<T>(): () => Primitive<T>;
1228
+ export declare function createRandom<T>(generator?: Partial<IRandomGenerator>): () => Primitive<T>;
1223
1229
  /**
1224
1230
  * Creates a reusable {@link clone} function.
1225
1231
  *
package/lib/module.js CHANGED
@@ -19,9 +19,10 @@ var Namespace_1 = require("./functional/Namespace");
19
19
  __exportStar(require("./schemas/IJsonApplication"), exports);
20
20
  __exportStar(require("./schemas/IJsonComponents"), exports);
21
21
  __exportStar(require("./schemas/IJsonSchema"), exports);
22
+ __exportStar(require("./IRandomGenerator"), exports);
23
+ __exportStar(require("./IValidation"), exports);
22
24
  __exportStar(require("./Primitive"), exports);
23
25
  __exportStar(require("./TypeGuardError"), exports);
24
- __exportStar(require("./IValidation"), exports);
25
26
  function assert() {
26
27
  halt("assert");
27
28
  }
package/lib/module.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
@@ -78,7 +78,7 @@ var RandomProgrammer;
78
78
  return StatementFactory_1.StatementFactory.constant(FUNCTOR(i), typescript_1.default.factory.createArrowFunction(undefined, undefined, [
79
79
  IdentifierFactory_1.IdentifierFactory.parameter("recursive", typescript_1.default.factory.createIdentifier(String(obj.recursive))),
80
80
  IdentifierFactory_1.IdentifierFactory.parameter("depth", typescript_1.default.factory.createNumericLiteral(0)),
81
- ], undefined, undefined, RandomJoiner_1.RandomJoiner.object(decode(importer)({
81
+ ], undefined, undefined, RandomJoiner_1.RandomJoiner.object(COALESCE(importer))(decode(importer)({
82
82
  recursive: obj.recursive,
83
83
  object: true,
84
84
  }))(obj)));
@@ -137,13 +137,13 @@ var RandomProgrammer;
137
137
  for (var _q = __values(meta.atomics), _r = _q.next(); !_r.done; _r = _q.next()) {
138
138
  var atomic = _r.value;
139
139
  if (atomic === "boolean")
140
- expressions.push(decode_boolean());
140
+ expressions.push(decode_boolean(importer));
141
141
  else if (atomic === "number")
142
- expressions.push(decode_number(tags));
142
+ expressions.push(decode_number(importer)(tags));
143
143
  else if (atomic === "string")
144
144
  expressions.push(decode_string(importer)(tags));
145
145
  else if (atomic === "bigint")
146
- expressions.push(decode_bigint(tags));
146
+ expressions.push(decode_bigint(importer)(tags));
147
147
  }
148
148
  }
149
149
  catch (e_4_1) { e_4 = { error: e_4_1 }; }
@@ -171,7 +171,7 @@ var RandomProgrammer;
171
171
  try {
172
172
  for (var _u = __values(meta.arrays), _v = _u.next(); !_v.done; _v = _u.next()) {
173
173
  var a = _v.value;
174
- var array = RandomJoiner_1.RandomJoiner.array(decode(importer)(explore))(a, tags);
174
+ var array = RandomJoiner_1.RandomJoiner.array(COALESCE(importer))(decode(importer)(explore))(a, tags);
175
175
  expressions.push(explore.recursive && a.objects.length
176
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
177
  : array);
@@ -208,9 +208,9 @@ var RandomProgrammer;
208
208
  for (var _y = __values(meta.natives), _z = _y.next(); !_z.done; _z = _y.next()) {
209
209
  var native = _z.value;
210
210
  if (native === "Boolean")
211
- expressions.push(decode_boolean());
211
+ expressions.push(decode_boolean(importer));
212
212
  else if (native === "Number")
213
- expressions.push(decode_number(tags));
213
+ expressions.push(decode_number(importer)(tags));
214
214
  else if (native === "String")
215
215
  expressions.push(decode_string(importer)(tags));
216
216
  else
@@ -236,8 +236,8 @@ var RandomProgrammer;
236
236
  };
237
237
  };
238
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));
239
+ var decode_boolean = function (importer) {
240
+ return typescript_1.default.factory.createCallExpression(COALESCE(importer)("boolean"), undefined, undefined);
241
241
  };
242
242
  var decode_atomic = function (value) {
243
243
  return typeof value === "boolean"
@@ -255,48 +255,54 @@ var RandomProgrammer;
255
255
  };
256
256
  };
257
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);
258
+ var decode_number = function (importer) {
259
+ return function (tags) {
260
+ var type = tags.find(function (t) { return t.kind === "type" && t.value === "uint"; })
261
+ ? "int"
262
+ : tags.find(function (t) { return t.kind === "type" && t.value === "int"; })
263
+ ? "uint"
264
+ : "double";
265
+ return RandomRanger_1.RandomRanger.number({
266
+ type: type,
267
+ transform: function (value) { return typescript_1.default.factory.createNumericLiteral(value); },
268
+ setter: function (args) {
269
+ return typescript_1.default.factory.createCallExpression(type === "double" &&
270
+ tags.every(function (t) {
271
+ return t.kind !== "multipleOf" &&
272
+ t.kind !== "step";
273
+ })
274
+ ? COALESCE(importer)("number")
275
+ : COALESCE(importer)("integer"), undefined, args.map(function (val) { return typescript_1.default.factory.createNumericLiteral(val); }));
276
+ },
277
+ })({
278
+ minimum: 0,
279
+ maximum: 100,
280
+ gap: 10,
281
+ })(tags);
282
+ };
281
283
  };
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) {
284
+ var decode_bigint = function (importer) {
285
+ return function (tags) {
286
+ return RandomRanger_1.RandomRanger.number({
287
+ type: tags.find(function (t) { return t.kind === "type" && t.value === "uint"; })
288
+ ? "uint"
289
+ : "int",
290
+ transform: function (value) {
292
291
  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);
292
+ },
293
+ setter: function (args) {
294
+ return typescript_1.default.factory.createCallExpression(COALESCE(importer)("bigint"), undefined, args.map(function (value) {
295
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("BigInt"), undefined, [
296
+ typescript_1.default.factory.createStringLiteral(value.toString()),
297
+ ]);
298
+ }));
299
+ },
300
+ })({
301
+ minimum: 0,
302
+ maximum: 100,
303
+ gap: 10,
304
+ })(tags);
305
+ };
300
306
  };
301
307
  var decode_string = function (importer) {
302
308
  return function (tags) {
@@ -318,7 +324,7 @@ var RandomProgrammer;
318
324
  }
319
325
  finally { if (e_9) throw e_9.error; }
320
326
  }
321
- var tail = RandomRanger_1.RandomRanger.length({
327
+ var tail = RandomRanger_1.RandomRanger.length(COALESCE(importer))({
322
328
  minimum: 5,
323
329
  maximum: 25,
324
330
  gap: 5,
@@ -327,7 +333,7 @@ var RandomProgrammer;
327
333
  minimum: "minLength",
328
334
  maximum: "maxLength",
329
335
  })(tags);
330
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.string"), undefined, tail ? [tail] : undefined);
336
+ return typescript_1.default.factory.createCallExpression(COALESCE(importer)("string"), undefined, tail ? [tail] : undefined);
331
337
  };
332
338
  };
333
339
  })(RandomProgrammer = exports.RandomProgrammer || (exports.RandomProgrammer = {}));
@@ -1 +1 @@
1
- {"version":3,"file":"RandomProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RandomProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomProgrammer.js","sourceRoot":"","sources":["../../src/programmers/RandomProgrammer.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { Metadata } from "../../metadata/Metadata";
4
4
  import { MetadataObject } from "../../metadata/MetadataObject";
5
5
  export declare namespace RandomJoiner {
6
6
  type Decoder = (meta: Metadata, tags: IMetadataTag[]) => ts.Expression;
7
- const array: (decoder: Decoder) => (item: Metadata, tags: IMetadataTag[]) => ts.CallExpression;
7
+ const array: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (item: Metadata, tags: IMetadataTag[]) => ts.CallExpression;
8
8
  const tuple: (decoder: Decoder) => (items: Metadata[], tags: IMetadataTag[]) => ts.ArrayLiteralExpression;
9
- const object: (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
9
+ const object: (coalesce: (method: string) => ts.Expression) => (decoder: Decoder) => (obj: MetadataObject) => ts.ConciseBody;
10
10
  }
@@ -35,59 +35,69 @@ var Escaper_1 = require("../../utils/Escaper");
35
35
  var RandomRanger_1 = require("./RandomRanger");
36
36
  var RandomJoiner;
37
37
  (function (RandomJoiner) {
38
- RandomJoiner.array = function (decoder) { return function (item, tags) {
39
- var tail = RandomRanger_1.RandomRanger.length({
40
- minimum: 0,
41
- maximum: 3,
42
- gap: 3,
43
- })({
44
- fixed: "items",
45
- minimum: "minItems",
46
- maximum: "maxItems",
47
- })(tags);
48
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.array"), undefined, __spreadArray([
49
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags))
50
- ], __read((tail ? [tail] : [])), false));
51
- }; };
38
+ RandomJoiner.array = function (coalesce) {
39
+ return function (decoder) {
40
+ return function (item, tags) {
41
+ var tail = RandomRanger_1.RandomRanger.length(coalesce)({
42
+ minimum: 0,
43
+ maximum: 3,
44
+ gap: 3,
45
+ })({
46
+ fixed: "items",
47
+ minimum: "minItems",
48
+ maximum: "maxItems",
49
+ })(tags);
50
+ return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, __spreadArray([
51
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, decoder(item, tags))
52
+ ], __read((tail ? [tail] : [])), false));
53
+ };
54
+ };
55
+ };
52
56
  RandomJoiner.tuple = function (decoder) { return function (items, tags) {
53
57
  return typescript_1.default.factory.createArrayLiteralExpression(items.map(function (i) { var _a; return decoder((_a = i.rest) !== null && _a !== void 0 ? _a : i, tags); }), true);
54
58
  }; };
55
- RandomJoiner.object = function (decoder) {
56
- return function (obj) {
57
- if (obj.properties.length === 0)
58
- return typescript_1.default.factory.createIdentifier("{}");
59
- var regular = obj.properties.filter(function (p) { return p.key.isSoleLiteral(); });
60
- var dynamic = obj.properties.filter(function (p) { return !p.key.isSoleLiteral(); });
61
- var literal = typescript_1.default.factory.createObjectLiteralExpression(regular.map(function (p) {
62
- var str = p.key.getSoleLiteral();
63
- return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
64
- ? str
65
- : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags));
66
- }), true);
67
- if (dynamic.length === 0)
68
- return literal;
69
- var properties = dynamic.map(function (p) {
70
- return typescript_1.default.factory.createExpressionStatement(dynamicProperty(decoder)(p));
71
- });
72
- return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
73
- StatementFactory_1.StatementFactory.constant("output", literal)
74
- ], __read((obj.recursive
75
- ? [
76
- typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createGreaterThanEquals(typescript_1.default.factory.createNumericLiteral(5), typescript_1.default.factory.createIdentifier("depth")), typescript_1.default.factory.createBlock(properties, true)),
77
- ]
78
- : properties)), false), [
79
- typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
80
- ], false), true);
59
+ RandomJoiner.object = function (coalesce) {
60
+ return function (decoder) {
61
+ return function (obj) {
62
+ if (obj.properties.length === 0)
63
+ return typescript_1.default.factory.createIdentifier("{}");
64
+ var regular = obj.properties.filter(function (p) { return p.key.isSoleLiteral(); });
65
+ var dynamic = obj.properties.filter(function (p) { return !p.key.isSoleLiteral(); });
66
+ var literal = typescript_1.default.factory.createObjectLiteralExpression(regular.map(function (p) {
67
+ var str = p.key.getSoleLiteral();
68
+ return typescript_1.default.factory.createPropertyAssignment(Escaper_1.Escaper.variable(str)
69
+ ? str
70
+ : typescript_1.default.factory.createStringLiteral(str), decoder(p.value, p.tags));
71
+ }), true);
72
+ if (dynamic.length === 0)
73
+ return literal;
74
+ var properties = dynamic.map(function (p) {
75
+ return typescript_1.default.factory.createExpressionStatement(dynamicProperty(coalesce)(decoder)(p));
76
+ });
77
+ return typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([
78
+ StatementFactory_1.StatementFactory.constant("output", literal)
79
+ ], __read((obj.recursive
80
+ ? [
81
+ typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createGreaterThanEquals(typescript_1.default.factory.createNumericLiteral(5), typescript_1.default.factory.createIdentifier("depth")), typescript_1.default.factory.createBlock(properties, true)),
82
+ ]
83
+ : properties)), false), [
84
+ typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createIdentifier("output")),
85
+ ], false), true);
86
+ };
87
+ };
88
+ };
89
+ var dynamicProperty = function (coalesce) {
90
+ return function (decoder) {
91
+ return function (p) {
92
+ return typescript_1.default.factory.createCallExpression(coalesce("array"), undefined, [
93
+ typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags))),
94
+ typescript_1.default.factory.createCallExpression(coalesce("integer"), undefined, [
95
+ typescript_1.default.factory.createNumericLiteral(0),
96
+ typescript_1.default.factory.createNumericLiteral(3),
97
+ ]),
98
+ ]);
99
+ };
81
100
  };
82
101
  };
83
- var dynamicProperty = function (decoder) { return function (p) {
84
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.array"), undefined, [
85
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBinaryExpression(typescript_1.default.factory.createElementAccessExpression(typescript_1.default.factory.createIdentifier("output"), decoder(p.key, [])), typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EqualsToken), decoder(p.value, p.tags))),
86
- typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.integer"), undefined, [
87
- typescript_1.default.factory.createNumericLiteral(0),
88
- typescript_1.default.factory.createNumericLiteral(3),
89
- ]),
90
- ]);
91
- }; };
92
102
  })(RandomJoiner = exports.RandomJoiner || (exports.RandomJoiner = {}));
93
103
  //# sourceMappingURL=RandomJoiner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomJoiner.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomJoiner.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export declare namespace RandomRanger {
6
6
  maximum: number;
7
7
  gap: number;
8
8
  }
9
- const length: (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTag[]) => ts.NumericLiteral | ts.CallExpression | undefined;
9
+ const length: (coalesce: (method: string) => ts.Expression) => (defs: IDefaults) => (acc: length.IAccessors) => (tags: IMetadataTag[]) => ts.NumericLiteral | ts.CallExpression | undefined;
10
10
  namespace length {
11
11
  interface IAccessors {
12
12
  minimum: IMetadataTag["kind"];
@@ -7,27 +7,29 @@ exports.RandomRanger = void 0;
7
7
  var typescript_1 = __importDefault(require("typescript"));
8
8
  var RandomRanger;
9
9
  (function (RandomRanger) {
10
- RandomRanger.length = function (defs) {
11
- return function (acc) {
12
- return function (tags) {
13
- var _a, _b;
14
- var props = {
15
- fixed: getter(tags)(acc.fixed),
16
- minimum: getter(tags)(acc.minimum),
17
- maximum: getter(tags)(acc.maximum),
10
+ RandomRanger.length = function (coalesce) {
11
+ return function (defs) {
12
+ return function (acc) {
13
+ return function (tags) {
14
+ var _a, _b;
15
+ var props = {
16
+ fixed: getter(tags)(acc.fixed),
17
+ minimum: getter(tags)(acc.minimum),
18
+ maximum: getter(tags)(acc.maximum),
19
+ };
20
+ if (props.fixed !== undefined)
21
+ return typescript_1.default.factory.createNumericLiteral(props.fixed);
22
+ else if (props.minimum === undefined && props.maximum === undefined)
23
+ return undefined;
24
+ (_a = props.minimum) !== null && _a !== void 0 ? _a : (props.minimum = defs.minimum);
25
+ (_b = props.maximum) !== null && _b !== void 0 ? _b : (props.maximum = defs.maximum);
26
+ if (props.maximum <= props.minimum)
27
+ props.maximum += defs.gap;
28
+ return typescript_1.default.factory.createCallExpression(coalesce("integer"), undefined, [
29
+ typescript_1.default.factory.createNumericLiteral(props.minimum),
30
+ typescript_1.default.factory.createNumericLiteral(props.maximum),
31
+ ]);
18
32
  };
19
- if (props.fixed !== undefined)
20
- return typescript_1.default.factory.createNumericLiteral(props.fixed);
21
- else if (props.minimum === undefined && props.maximum === undefined)
22
- return undefined;
23
- (_a = props.minimum) !== null && _a !== void 0 ? _a : (props.minimum = defs.minimum);
24
- (_b = props.maximum) !== null && _b !== void 0 ? _b : (props.maximum = defs.maximum);
25
- if (props.maximum <= props.minimum)
26
- props.maximum += defs.gap;
27
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("generator.integer"), undefined, [
28
- typescript_1.default.factory.createNumericLiteral(props.minimum),
29
- typescript_1.default.factory.createNumericLiteral(props.maximum),
30
- ]);
31
33
  };
32
34
  };
33
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomRanger.js","sourceRoot":"","sources":["../../../src/programmers/helpers/RandomRanger.ts"],"names":[],"mappings":"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"}