typia 3.5.0-dev.20230212 → 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 (199) 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 +255 -0
  20. package/lib/module.js +77 -234
  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.d.ts +5 -0
  26. package/lib/programmers/CloneProgrammer.js +285 -0
  27. package/lib/programmers/CloneProgrammer.js.map +1 -0
  28. package/lib/programmers/IsCloneProgrammer.d.ts +5 -0
  29. package/lib/programmers/IsCloneProgrammer.js +37 -0
  30. package/lib/programmers/IsCloneProgrammer.js.map +1 -0
  31. package/lib/programmers/IsProgrammer.d.ts +1 -1
  32. package/lib/programmers/IsProgrammer.js +5 -2
  33. package/lib/programmers/IsProgrammer.js.map +1 -1
  34. package/lib/programmers/RandomProgrammer.d.ts +5 -0
  35. package/lib/programmers/RandomProgrammer.js +338 -0
  36. package/lib/programmers/RandomProgrammer.js.map +1 -0
  37. package/lib/programmers/StringifyProgrammer.js +1 -1
  38. package/lib/programmers/StringifyProgrammer.js.map +1 -1
  39. package/lib/programmers/ValidateCloneProgrammer.d.ts +5 -0
  40. package/lib/programmers/ValidateCloneProgrammer.js +37 -0
  41. package/lib/programmers/ValidateCloneProgrammer.js.map +1 -0
  42. package/lib/programmers/ValidateStringifyProgrammer.js +1 -1
  43. package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
  44. package/lib/programmers/helpers/CloneJoiner.d.ts +8 -0
  45. package/lib/programmers/helpers/CloneJoiner.js +80 -0
  46. package/lib/programmers/helpers/CloneJoiner.js.map +1 -0
  47. package/lib/programmers/helpers/RandomJoiner.d.ts +10 -0
  48. package/lib/programmers/helpers/RandomJoiner.js +93 -0
  49. package/lib/programmers/helpers/RandomJoiner.js.map +1 -0
  50. package/lib/programmers/helpers/RandomRanger.d.ts +25 -0
  51. package/lib/programmers/helpers/RandomRanger.js +138 -0
  52. package/lib/programmers/helpers/RandomRanger.js.map +1 -0
  53. package/lib/programmers/helpers/StringifyJoinder.js +2 -2
  54. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  55. package/lib/programmers/internal/application_array.js +0 -10
  56. package/lib/programmers/internal/application_array.js.map +1 -1
  57. package/lib/programmers/internal/application_number.js +4 -12
  58. package/lib/programmers/internal/application_number.js.map +1 -1
  59. package/lib/programmers/internal/application_string.js +0 -8
  60. package/lib/programmers/internal/application_string.js.map +1 -1
  61. package/lib/programmers/internal/check_array_length.js +3 -4
  62. package/lib/programmers/internal/check_array_length.js.map +1 -1
  63. package/lib/programmers/internal/check_bigint.js +0 -12
  64. package/lib/programmers/internal/check_bigint.js.map +1 -1
  65. package/lib/programmers/internal/check_number.js +7 -25
  66. package/lib/programmers/internal/check_number.js.map +1 -1
  67. package/lib/programmers/internal/check_string_tags.js +2 -3
  68. package/lib/programmers/internal/check_string_tags.js.map +1 -1
  69. package/lib/schemas/IJsonSchema.d.ts +36 -2
  70. package/lib/transformers/CallExpressionTransformer.js +21 -1
  71. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  72. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.d.ts +5 -0
  73. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js +23 -0
  74. package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js.map +1 -0
  75. package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +5 -0
  76. package/lib/transformers/features/miscellaneous/CloneTransformer.js +34 -0
  77. package/lib/transformers/features/miscellaneous/CloneTransformer.js.map +1 -0
  78. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +5 -0
  79. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js +18 -0
  80. package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js.map +1 -0
  81. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js +2 -1
  82. package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js.map +1 -1
  83. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +5 -0
  84. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js +18 -0
  85. package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js.map +1 -0
  86. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +5 -0
  87. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js +18 -0
  88. package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js.map +1 -0
  89. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js +2 -1
  90. package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js.map +1 -1
  91. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js +2 -1
  92. package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js.map +1 -1
  93. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.d.ts +5 -0
  94. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.js +29 -0
  95. package/lib/transformers/features/miscellaneous/CreateRandomGenerator.js.map +1 -0
  96. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.d.ts +5 -0
  97. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js +18 -0
  98. package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js.map +1 -0
  99. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js +2 -1
  100. package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js.map +1 -1
  101. package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +5 -0
  102. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js +23 -0
  103. package/lib/transformers/features/miscellaneous/IsCloneTransformer.js.map +1 -0
  104. package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +5 -0
  105. package/lib/transformers/features/miscellaneous/RandomTransformer.js +35 -0
  106. package/lib/transformers/features/miscellaneous/RandomTransformer.js.map +1 -0
  107. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.d.ts +5 -0
  108. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js +23 -0
  109. package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js.map +1 -0
  110. package/lib/transformers/features/parsers/AssertParseTransformer.js +2 -1
  111. package/lib/transformers/features/parsers/AssertParseTransformer.js.map +1 -1
  112. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js +2 -1
  113. package/lib/transformers/features/parsers/CreateAssertParseTransformer.js.map +1 -1
  114. package/lib/transformers/features/parsers/CreateIsParseTransformer.js +2 -1
  115. package/lib/transformers/features/parsers/CreateIsParseTransformer.js.map +1 -1
  116. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js +2 -1
  117. package/lib/transformers/features/parsers/CreateValidateParseTransformer.js.map +1 -1
  118. package/lib/transformers/features/parsers/IsParseTransformer.js +2 -1
  119. package/lib/transformers/features/parsers/IsParseTransformer.js.map +1 -1
  120. package/lib/transformers/features/parsers/ValidateParseTransformer.js +2 -1
  121. package/lib/transformers/features/parsers/ValidateParseTransformer.js.map +1 -1
  122. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js +2 -1
  123. package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js.map +1 -1
  124. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js +2 -1
  125. package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js.map +1 -1
  126. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js +2 -1
  127. package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js.map +1 -1
  128. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js +2 -1
  129. package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js.map +1 -1
  130. package/lib/transformers/features/validators/CreateAssertTransformer.js +2 -1
  131. package/lib/transformers/features/validators/CreateAssertTransformer.js.map +1 -1
  132. package/lib/transformers/features/validators/CreateIsTransformer.js +2 -1
  133. package/lib/transformers/features/validators/CreateIsTransformer.js.map +1 -1
  134. package/lib/transformers/features/validators/CreateValidateTransformer.js +2 -1
  135. package/lib/transformers/features/validators/CreateValidateTransformer.js.map +1 -1
  136. package/lib/utils/RandomGenerator.d.ts +1 -0
  137. package/lib/utils/RandomGenerator.js +85 -0
  138. package/lib/utils/RandomGenerator.js.map +1 -0
  139. package/package.json +8 -3
  140. package/src/IRandomGenerator.ts +16 -0
  141. package/src/factories/ExpressionFactory.ts +11 -0
  142. package/src/factories/MetadataFactory.ts +18 -14
  143. package/src/factories/MetadataTagFactory.ts +11 -97
  144. package/src/functional/$any.ts +3 -0
  145. package/src/functional/Namespace.ts +121 -0
  146. package/src/metadata/IMetadataTag.ts +2 -11
  147. package/src/module.ts +390 -350
  148. package/src/programmers/AssertCloneProgrammer.ts +60 -0
  149. package/src/programmers/CloneProgrammer.ts +351 -0
  150. package/src/programmers/IsCloneProgrammer.ts +66 -0
  151. package/src/programmers/IsProgrammer.ts +8 -5
  152. package/src/programmers/RandomProgrammer.ts +367 -0
  153. package/src/programmers/StringifyProgrammer.ts +2 -4
  154. package/src/programmers/ValidateCloneProgrammer.ts +77 -0
  155. package/src/programmers/ValidateStringifyProgrammer.ts +1 -4
  156. package/src/programmers/helpers/CloneJoiner.ts +124 -0
  157. package/src/programmers/helpers/RandomJoiner.ts +140 -0
  158. package/src/programmers/helpers/RandomRanger.ts +215 -0
  159. package/src/programmers/helpers/StringifyJoinder.ts +4 -4
  160. package/src/programmers/internal/application_array.ts +0 -10
  161. package/src/programmers/internal/application_number.ts +7 -13
  162. package/src/programmers/internal/application_string.ts +0 -8
  163. package/src/programmers/internal/check_array_length.ts +8 -9
  164. package/src/programmers/internal/check_bigint.ts +0 -21
  165. package/src/programmers/internal/check_number.ts +0 -30
  166. package/src/programmers/internal/check_string_tags.ts +7 -7
  167. package/src/schemas/IJsonSchema.ts +36 -1
  168. package/src/transformers/CallExpressionTransformer.ts +24 -1
  169. package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +38 -0
  170. package/src/transformers/features/miscellaneous/CloneTransformer.ts +46 -0
  171. package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +32 -0
  172. package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +1 -1
  173. package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +31 -0
  174. package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +32 -0
  175. package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +1 -1
  176. package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +1 -1
  177. package/src/transformers/features/miscellaneous/CreateRandomGenerator.ts +39 -0
  178. package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +32 -0
  179. package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +1 -1
  180. package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +38 -0
  181. package/src/transformers/features/miscellaneous/RandomTransformer.ts +45 -0
  182. package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +38 -0
  183. package/src/transformers/features/parsers/AssertParseTransformer.ts +1 -1
  184. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +1 -1
  185. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +1 -1
  186. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +1 -1
  187. package/src/transformers/features/parsers/IsParseTransformer.ts +1 -1
  188. package/src/transformers/features/parsers/ValidateParseTransformer.ts +1 -1
  189. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +1 -1
  190. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +1 -1
  191. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +1 -1
  192. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +1 -1
  193. package/src/transformers/features/validators/CreateAssertTransformer.ts +1 -1
  194. package/src/transformers/features/validators/CreateIsTransformer.ts +1 -1
  195. package/src/transformers/features/validators/CreateValidateTransformer.ts +1 -1
  196. package/src/utils/RandomGenerator.ts +90 -0
  197. package/lib/programmers/internal/check_length.js +0 -28
  198. package/lib/programmers/internal/check_length.js.map +0 -1
  199. package/src/programmers/internal/check_length.ts +0 -46
@@ -0,0 +1,90 @@
1
+ import RandExp from "randexp";
2
+
3
+ /**
4
+ * @internal
5
+ */
6
+ export namespace RandomGenerator {
7
+ const ALPHABETS = "abcdefghijklmnopqrstuvwxyz";
8
+
9
+ /* -----------------------------------------------------------
10
+ REGULAR
11
+ ----------------------------------------------------------- */
12
+ export function boolean(): boolean {
13
+ return Math.random() < 0.5;
14
+ }
15
+
16
+ export function integer(min?: number, max?: number): number {
17
+ min ??= 0;
18
+ max ??= 100;
19
+ return Math.floor(Math.random() * (max - min + 1)) + min;
20
+ }
21
+
22
+ export function bigint(min?: bigint, max?: bigint): bigint {
23
+ min ??= BigInt(0);
24
+ max ??= BigInt(100);
25
+ return BigInt(integer(Number(min), Number(max)));
26
+ }
27
+
28
+ export function number(min?: number, max?: number): number {
29
+ min ??= 0;
30
+ max ??= 100;
31
+ return Math.random() * (max - min) + min;
32
+ }
33
+
34
+ export function string(length?: number): string {
35
+ return new Array(length ?? integer(5, 10))
36
+ .fill(0)
37
+ .map(() => ALPHABETS[integer(0, ALPHABETS.length - 1)])
38
+ .join("");
39
+ }
40
+
41
+ export function array<T>(
42
+ closure: (index: number) => T,
43
+ count?: number,
44
+ ): T[] {
45
+ return new Array(count ?? integer(0, 3))
46
+ .fill(0)
47
+ .map((_e, index) => closure(index));
48
+ }
49
+
50
+ export function pick<T>(array: T[]): T {
51
+ return array[integer(0, array.length - 1)]!;
52
+ }
53
+
54
+ /* -----------------------------------------------------------
55
+ SECIAL FORMATS
56
+ ----------------------------------------------------------- */
57
+ export function uuid(): string {
58
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
59
+ const r = (Math.random() * 16) | 0;
60
+ const v = c === "x" ? r : (r & 0x3) | 0x8;
61
+ return v.toString(16);
62
+ });
63
+ }
64
+
65
+ export function email(): string {
66
+ return `${string(10)}@${string(10)}.${string(3)}`;
67
+ }
68
+
69
+ export function url(): string {
70
+ return `https://${string(10)}.${string(3)}`;
71
+ }
72
+
73
+ export function ipv4(): string {
74
+ return array(() => integer(0, 255), 4).join(".");
75
+ }
76
+
77
+ export function ipv6(): string {
78
+ return array(() => integer(0, 65535).toString(16), 8).join(":");
79
+ }
80
+
81
+ export function pattern(regex: RegExp): string {
82
+ return new RandExp(regex).gen();
83
+ }
84
+
85
+ export function date(min?: number, max?: number): string {
86
+ min ??= 0;
87
+ max ??= Date.now();
88
+ return new Date(number(min, max)).toString();
89
+ }
90
+ }
@@ -1,28 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.check_length = void 0;
7
- var typescript_1 = __importDefault(require("typescript"));
8
- function check_length(conditions, length, tag) {
9
- if (tag.minimum !== undefined &&
10
- tag.maximum !== undefined &&
11
- tag.minimum.value === tag.maximum.value &&
12
- tag.minimum.include === true &&
13
- tag.maximum.include === true) {
14
- conditions.push(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(tag.minimum.value), length));
15
- }
16
- else {
17
- if (tag.minimum !== undefined)
18
- conditions.push((tag.minimum.include
19
- ? typescript_1.default.factory.createLessThanEquals
20
- : typescript_1.default.factory.createLessThan)(typescript_1.default.factory.createNumericLiteral(tag.minimum.value), length));
21
- if (tag.maximum !== undefined)
22
- conditions.push((tag.maximum.include
23
- ? typescript_1.default.factory.createGreaterThanEquals
24
- : typescript_1.default.factory.createGreaterThan)(typescript_1.default.factory.createNumericLiteral(tag.maximum.value), length));
25
- }
26
- }
27
- exports.check_length = check_length;
28
- //# sourceMappingURL=check_length.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"check_length.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_length.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAO5B,SAAgB,YAAY,CACxB,UAA2B,EAC3B,MAAqB,EACrB,GAAuC;IAEvC,IACI,GAAG,CAAC,OAAO,KAAK,SAAS;QACzB,GAAG,CAAC,OAAO,KAAK,SAAS;QACzB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,GAAG,CAAC,OAAO,CAAC,KAAK;QACvC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI;QAC5B,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,EAC9B;QACE,UAAU,CAAC,IAAI,CACX,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAClD,MAAM,CACT,CACJ,CAAC;KACL;SAAM;QACH,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;YACzB,UAAU,CAAC,IAAI,CACX,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO;gBAChB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB;gBACjC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,CAC5B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAClD,MAAM,CACT,CACJ,CAAC;QACN,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;YACzB,UAAU,CAAC,IAAI,CACX,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO;gBAChB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,uBAAuB;gBACpC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAC/B,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,EAClD,MAAM,CACT,CACJ,CAAC;KACT;AACL,CAAC;AAtCD,oCAsCC"}
@@ -1,46 +0,0 @@
1
- import ts from "typescript";
2
-
3
- import { IMetadataTag } from "../../metadata/IMetadataTag";
4
-
5
- /**
6
- * @internal
7
- */
8
- export function check_length(
9
- conditions: ts.Expression[],
10
- length: ts.Expression,
11
- tag: Omit<IMetadataTag.ILength, "kind">,
12
- ) {
13
- if (
14
- tag.minimum !== undefined &&
15
- tag.maximum !== undefined &&
16
- tag.minimum.value === tag.maximum.value &&
17
- tag.minimum.include === true &&
18
- tag.maximum.include === true
19
- ) {
20
- conditions.push(
21
- ts.factory.createStrictEquality(
22
- ts.factory.createNumericLiteral(tag.minimum.value),
23
- length,
24
- ),
25
- );
26
- } else {
27
- if (tag.minimum !== undefined)
28
- conditions.push(
29
- (tag.minimum.include
30
- ? ts.factory.createLessThanEquals
31
- : ts.factory.createLessThan)(
32
- ts.factory.createNumericLiteral(tag.minimum.value),
33
- length,
34
- ),
35
- );
36
- if (tag.maximum !== undefined)
37
- conditions.push(
38
- (tag.maximum.include
39
- ? ts.factory.createGreaterThanEquals
40
- : ts.factory.createGreaterThan)(
41
- ts.factory.createNumericLiteral(tag.maximum.value),
42
- length,
43
- ),
44
- );
45
- }
46
- }