typia 3.5.0-dev.20221222 → 3.5.0-dev.20230124

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 (184) hide show
  1. package/README.md +5 -2
  2. package/lib/executable/internal/TypiaSetupWizard.d.ts +6 -2
  3. package/lib/executable/internal/TypiaSetupWizard.js +23 -22
  4. package/lib/executable/internal/TypiaSetupWizard.js.map +1 -1
  5. package/lib/executable/typia.js +11 -10
  6. package/lib/executable/typia.js.map +1 -1
  7. package/lib/factories/internal/protocols/ProtocolMetadataUtil.d.ts +1 -0
  8. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js +20 -0
  9. package/lib/factories/internal/protocols/ProtocolMetadataUtil.js.map +1 -1
  10. package/lib/factories/internal/protocols/iterate_protocol_map.d.ts +2 -1
  11. package/lib/factories/internal/protocols/iterate_protocol_map.js +7 -4
  12. package/lib/factories/internal/protocols/iterate_protocol_map.js.map +1 -1
  13. package/lib/factories/internal/protocols/iterate_protocol_metadata.js +3 -3
  14. package/lib/factories/internal/protocols/iterate_protocol_metadata.js.map +1 -1
  15. package/lib/factories/internal/protocols/iterate_protocol_repeated.d.ts +2 -1
  16. package/lib/factories/internal/protocols/iterate_protocol_repeated.js +5 -4
  17. package/lib/factories/internal/protocols/iterate_protocol_repeated.js.map +1 -1
  18. package/lib/messages/IProtocolMap.d.ts +5 -0
  19. package/lib/messages/IProtocolMap.js +3 -0
  20. package/lib/messages/IProtocolMap.js.map +1 -0
  21. package/lib/messages/IProtocolProperty.d.ts +2 -1
  22. package/lib/metadata/Metadata.d.ts +1 -0
  23. package/lib/metadata/Metadata.js +145 -51
  24. package/lib/metadata/Metadata.js.map +1 -1
  25. package/lib/programmers/AssertProgrammer.js +1 -1
  26. package/lib/programmers/AssertProgrammer.js.map +1 -1
  27. package/lib/programmers/CheckerProgrammer.d.ts +1 -0
  28. package/lib/programmers/CheckerProgrammer.js +147 -138
  29. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  30. package/lib/programmers/MessageProgrammer.js +7 -2
  31. package/lib/programmers/MessageProgrammer.js.map +1 -1
  32. package/lib/programmers/ValidateProgrammer.js +1 -1
  33. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  34. package/lib/programmers/helpers/UnionExplorer.d.ts +23 -29
  35. package/lib/programmers/helpers/UnionExplorer.js +29 -41
  36. package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
  37. package/lib/programmers/internal/application_array.js +29 -27
  38. package/lib/programmers/internal/application_array.js.map +1 -1
  39. package/lib/programmers/internal/application_object.js +96 -31
  40. package/lib/programmers/internal/application_object.js.map +1 -1
  41. package/lib/programmers/internal/application_schema.js +28 -136
  42. package/lib/programmers/internal/application_schema.js.map +1 -1
  43. package/lib/programmers/internal/application_tuple.js +3 -2
  44. package/lib/programmers/internal/application_tuple.js.map +1 -1
  45. package/lib/programmers/internal/check_array.js +4 -32
  46. package/lib/programmers/internal/check_array.js.map +1 -1
  47. package/lib/programmers/internal/check_array_length.d.ts +1 -0
  48. package/lib/programmers/internal/check_array_length.js +47 -0
  49. package/lib/programmers/internal/check_array_length.js.map +1 -0
  50. package/lib/programmers/internal/check_union_array_like.d.ts +21 -0
  51. package/lib/programmers/internal/check_union_array_like.js +83 -0
  52. package/lib/programmers/internal/check_union_array_like.js.map +1 -0
  53. package/lib/programmers/internal/check_union_tuple.d.ts +1 -0
  54. package/lib/programmers/internal/check_union_tuple.js +11 -0
  55. package/lib/programmers/internal/check_union_tuple.js.map +1 -0
  56. package/lib/schemas/IJsonComponents.d.ts +4 -2
  57. package/lib/schemas/IJsonSchema.d.ts +2 -0
  58. package/package.json +4 -4
  59. package/src/IValidation.ts +21 -21
  60. package/src/Primitive.ts +82 -82
  61. package/src/TypeGuardError.ts +36 -36
  62. package/src/executable/internal/CommandParser.ts +15 -15
  63. package/src/executable/internal/TypiaSetupWizard.ts +30 -21
  64. package/src/executable/typia.ts +48 -46
  65. package/src/factories/CommentFactory.ts +10 -10
  66. package/src/factories/ExpressionFactory.ts +66 -66
  67. package/src/factories/IdentifierFactory.ts +72 -72
  68. package/src/factories/LiteralFactory.ts +44 -44
  69. package/src/factories/StatementFactory.ts +60 -60
  70. package/src/factories/TemplateFactory.ts +56 -56
  71. package/src/factories/TypeFactory.ts +101 -101
  72. package/src/factories/ValueFactory.ts +12 -12
  73. package/src/factories/internal/protocols/ProtocolMetadataUtil.ts +20 -0
  74. package/src/factories/internal/protocols/iterate_protocol_map.ts +9 -3
  75. package/src/factories/internal/protocols/iterate_protocol_metadata.ts +17 -4
  76. package/src/factories/internal/protocols/iterate_protocol_repeated.ts +14 -5
  77. package/src/functional/$every.ts +11 -11
  78. package/src/functional/$guard.ts +35 -35
  79. package/src/functional/$is_email.ts +5 -5
  80. package/src/functional/$is_ipv4.ts +5 -5
  81. package/src/functional/$is_ipv6.ts +5 -5
  82. package/src/functional/$is_url.ts +5 -5
  83. package/src/functional/$is_uuid.ts +5 -5
  84. package/src/functional/$join.ts +50 -50
  85. package/src/functional/$report.ts +15 -15
  86. package/src/functional/$rest.ts +3 -3
  87. package/src/functional/$string.ts +37 -37
  88. package/src/functional/$tail.ts +6 -6
  89. package/src/index.ts +4 -4
  90. package/src/messages/IProtocolMap.ts +5 -0
  91. package/src/messages/IProtocolProperty.ts +3 -1
  92. package/src/metadata/IJsDocTagInfo.ts +10 -10
  93. package/src/metadata/IMetadata.ts +25 -25
  94. package/src/metadata/IMetadataApplication.ts +7 -7
  95. package/src/metadata/IMetadataConstant.ts +16 -16
  96. package/src/metadata/IMetadataEntry.ts +6 -6
  97. package/src/metadata/IMetadataObject.ts +29 -29
  98. package/src/metadata/IMetadataProperty.ts +11 -11
  99. package/src/metadata/Metadata.ts +64 -7
  100. package/src/metadata/MetadataConstant.ts +3 -3
  101. package/src/metadata/MetadataObject.ts +131 -131
  102. package/src/metadata/MetadataProperty.ts +64 -64
  103. package/src/programmers/ApplicationProgrammer.ts +55 -55
  104. package/src/programmers/AssertProgrammer.ts +1 -1
  105. package/src/programmers/CheckerProgrammer.ts +252 -200
  106. package/src/programmers/FeatureProgrammer.ts +327 -327
  107. package/src/programmers/MessageProgrammer.ts +9 -2
  108. package/src/programmers/ValidateProgrammer.ts +1 -1
  109. package/src/programmers/helpers/AtomicPredicator.ts +15 -15
  110. package/src/programmers/helpers/FunctionImporeter.ts +31 -31
  111. package/src/programmers/helpers/IExpressionEntry.ts +10 -10
  112. package/src/programmers/helpers/StringifyJoinder.ts +111 -111
  113. package/src/programmers/helpers/StringifyPredicator.ts +18 -18
  114. package/src/programmers/helpers/UnionExplorer.ts +274 -437
  115. package/src/programmers/helpers/UnionPredicator.ts +81 -81
  116. package/src/programmers/internal/application_array.ts +47 -45
  117. package/src/programmers/internal/application_boolean.ts +17 -17
  118. package/src/programmers/internal/application_constant.ts +29 -29
  119. package/src/programmers/internal/application_default_string.ts +32 -32
  120. package/src/programmers/internal/application_native.ts +29 -29
  121. package/src/programmers/internal/application_number.ts +76 -76
  122. package/src/programmers/internal/application_object.ts +153 -103
  123. package/src/programmers/internal/application_schema.ts +15 -68
  124. package/src/programmers/internal/application_string.ts +49 -49
  125. package/src/programmers/internal/application_templates.ts +27 -27
  126. package/src/programmers/internal/application_tuple.ts +29 -25
  127. package/src/programmers/internal/check_array.ts +22 -44
  128. package/src/programmers/internal/check_array_length.ts +45 -0
  129. package/src/programmers/internal/check_dynamic_properties.ts +146 -146
  130. package/src/programmers/internal/check_everything.ts +25 -25
  131. package/src/programmers/internal/check_length.ts +46 -46
  132. package/src/programmers/internal/check_native.ts +9 -9
  133. package/src/programmers/internal/check_object.ts +42 -42
  134. package/src/programmers/internal/check_string.ts +24 -24
  135. package/src/programmers/internal/check_string_tags.ts +63 -63
  136. package/src/programmers/internal/check_template.ts +50 -50
  137. package/src/programmers/internal/check_union_array_like.ts +242 -0
  138. package/src/programmers/internal/check_union_tuple.ts +33 -0
  139. package/src/programmers/internal/decode_union_object.ts +73 -73
  140. package/src/programmers/internal/feature_object_entries.ts +49 -49
  141. package/src/programmers/internal/metadata_to_pattern.ts +31 -31
  142. package/src/programmers/internal/stringify_dynamic_properties.ts +164 -164
  143. package/src/programmers/internal/stringify_native.ts +8 -8
  144. package/src/programmers/internal/stringify_regular_properties.ts +81 -81
  145. package/src/programmers/internal/template_to_pattern.ts +15 -15
  146. package/src/schemas/IJsonApplication.ts +9 -9
  147. package/src/schemas/IJsonComponents.ts +26 -24
  148. package/src/schemas/IJsonSchema.ts +2 -0
  149. package/src/transform.ts +20 -20
  150. package/src/transformers/ExpressionWithArgumentTransformer.ts +66 -66
  151. package/src/transformers/FileTransformer.ts +49 -49
  152. package/src/transformers/IProject.ts +11 -11
  153. package/src/transformers/NodeTransformer.ts +19 -19
  154. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +1 -0
  155. package/src/transformers/features/miscellaneous/MetadataTransformer.ts +55 -55
  156. package/src/transformers/features/parsers/AssertParseTransformer.ts +36 -36
  157. package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +32 -32
  158. package/src/transformers/features/parsers/CreateIsParseTransformer.ts +32 -32
  159. package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +32 -32
  160. package/src/transformers/features/parsers/IsParseTransformer.ts +36 -36
  161. package/src/transformers/features/parsers/ValidateParseTransformer.ts +36 -36
  162. package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +38 -38
  163. package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +32 -32
  164. package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +32 -32
  165. package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +31 -31
  166. package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +32 -32
  167. package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +38 -38
  168. package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +38 -38
  169. package/src/transformers/features/validators/AssertTransformer.ts +43 -43
  170. package/src/transformers/features/validators/CreateAssertTransformer.ts +35 -35
  171. package/src/transformers/features/validators/CreateIsTransformer.ts +35 -35
  172. package/src/transformers/features/validators/CreateValidateTransformer.ts +35 -35
  173. package/src/transformers/features/validators/IsTransformer.ts +43 -43
  174. package/src/transformers/features/validators/ValidateTransformer.ts +43 -43
  175. package/src/typings/Atomic.ts +17 -17
  176. package/src/typings/ClassProperties.ts +5 -5
  177. package/src/typings/OmitNever.ts +3 -3
  178. package/src/typings/SpecialFields.ts +3 -3
  179. package/src/typings/Writable.ts +11 -11
  180. package/src/utils/ArrayUtil.ts +49 -49
  181. package/src/utils/Escaper.ts +50 -50
  182. package/src/utils/MapUtil.ts +14 -14
  183. package/src/utils/PatternUtil.ts +30 -30
  184. package/src/utils/Singleton.ts +17 -17
@@ -43,11 +43,11 @@ exports.UnionExplorer = void 0;
43
43
  var typescript_1 = __importDefault(require("typescript"));
44
44
  var ExpressionFactory_1 = require("../../factories/ExpressionFactory");
45
45
  var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
46
- var StatementFactory_1 = require("../../factories/StatementFactory");
46
+ var check_union_array_like_1 = require("../internal/check_union_array_like");
47
47
  var UnionPredicator_1 = require("./UnionPredicator");
48
48
  var UnionExplorer;
49
49
  (function (UnionExplorer) {
50
- function object(config, level) {
50
+ UnionExplorer.object = function (config, level) {
51
51
  if (level === void 0) { level = 0; }
52
52
  return function (input, targets, explore, tags) {
53
53
  if (targets.length === 1)
@@ -75,14 +75,21 @@ var UnionExplorer;
75
75
  });
76
76
  return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray([], __read(conditions), false), [
77
77
  remained.length
78
- ? typescript_1.default.factory.createReturnStatement(object(config, level + 1)(input, remained, explore, tags))
78
+ ? typescript_1.default.factory.createReturnStatement(UnionExplorer.object(config, level + 1)(input, remained, explore, tags))
79
79
  : config.objector.failure(input, expected, explore),
80
80
  ], false), true)), undefined, undefined);
81
81
  };
82
- }
83
- UnionExplorer.object = object;
82
+ };
83
+ UnionExplorer.tuple = function (props) {
84
+ return (0, check_union_array_like_1.check_union_array_like)({
85
+ size: null,
86
+ front: function (input) { return input; },
87
+ array: function (input) { return input; },
88
+ name: function (elems) { return "[".concat(elems.map(function (e) { return e.getName(); }).join(", "), "]"); },
89
+ })(props);
90
+ };
84
91
  UnionExplorer.array = function (props) {
85
- return iterate({
92
+ return (0, check_union_array_like_1.check_union_array_like)({
86
93
  size: function (input) { return IdentifierFactory_1.IdentifierFactory.join(input, "length"); },
87
94
  front: function (input) {
88
95
  return typescript_1.default.factory.createElementAccessExpression(input, 0);
@@ -91,8 +98,22 @@ var UnionExplorer;
91
98
  name: function (t) { return "Array<".concat(t.getName(), ">"); },
92
99
  })(props);
93
100
  };
101
+ UnionExplorer.array_or_tuple = function (props) {
102
+ return (0, check_union_array_like_1.check_union_array_like)({
103
+ size: function (input) { return IdentifierFactory_1.IdentifierFactory.join(input, "length"); },
104
+ front: function (input) {
105
+ return typescript_1.default.factory.createElementAccessExpression(input, 0);
106
+ },
107
+ array: function (input) { return input; },
108
+ name: function (t) {
109
+ return Array.isArray(t)
110
+ ? "[".concat(t.map(function (e) { return e.getName(); }).join(", "), "]")
111
+ : "Array<".concat(t.getName(), ">");
112
+ },
113
+ })(props);
114
+ };
94
115
  UnionExplorer.set = function (props) {
95
- return iterate({
116
+ return (0, check_union_array_like_1.check_union_array_like)({
96
117
  size: function (input) { return IdentifierFactory_1.IdentifierFactory.join(input, "size"); },
97
118
  front: function (input) {
98
119
  return IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "values"), undefined, undefined), "next"), undefined, undefined), "value");
@@ -104,7 +125,7 @@ var UnionExplorer;
104
125
  })(props);
105
126
  };
106
127
  UnionExplorer.map = function (props) {
107
- return iterate({
128
+ return (0, check_union_array_like_1.check_union_array_like)({
108
129
  size: function (input) { return IdentifierFactory_1.IdentifierFactory.join(input, "size"); },
109
130
  front: function (input) {
110
131
  return IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(input, "entries"), undefined, undefined), "next"), undefined, undefined), "value");
@@ -118,38 +139,5 @@ var UnionExplorer;
118
139
  },
119
140
  })(props);
120
141
  };
121
- var iterate = function (accessor) {
122
- return function (props) {
123
- return function (input, targets, explore, tags) {
124
- if (targets.length === 1)
125
- return props.decoder(accessor.array(input), targets[0], explore, tags);
126
- var tupleListVariable = StatementFactory_1.StatementFactory.constant("tupleList", typescript_1.default.factory.createArrayLiteralExpression(targets.map(function (meta) {
127
- return typescript_1.default.factory.createArrayLiteralExpression([
128
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("branch")], undefined, undefined, props.checker(typescript_1.default.factory.createIdentifier("branch"), meta, __assign(__assign({}, explore), { tracable: false, postfix: "\"[0]\"" }), tags)),
129
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("branch")], undefined, undefined, props.decoder(typescript_1.default.factory.createIdentifier("branch"), meta, __assign(__assign({}, explore), { tracable: true }), tags)),
130
- ]);
131
- })));
132
- var filteredVariable = StatementFactory_1.StatementFactory.constant("filtered", typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("tupleList.filter"), undefined, [
133
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("tuple")], undefined, undefined, typescript_1.default.factory.createStrictEquality(props.success, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("tuple[0]"), undefined, [typescript_1.default.factory.createIdentifier("front")]))),
134
- ]));
135
- var uniqueStatement = typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(1), typescript_1.default.factory.createIdentifier("filtered.length")), typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("filtered[0][1]"), undefined, [accessor.array(input)])));
136
- var forOfStatement = typescript_1.default.factory.createForOfStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([typescript_1.default.factory.createVariableDeclaration("tuple")], typescript_1.default.NodeFlags.Const), typescript_1.default.factory.createIdentifier("filtered"), typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createIdentifier("array"), "every"), undefined, [
137
- typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("value")], undefined, undefined, typescript_1.default.factory.createStrictEquality(props.success, typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("tuple[0]"), undefined, [typescript_1.default.factory.createIdentifier("value")]))),
138
- ]), typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("tuple[1]"), undefined, [typescript_1.default.factory.createIdentifier("array")]))));
139
- var unionStatement = typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createLessThan(typescript_1.default.factory.createNumericLiteral(1), typescript_1.default.factory.createIdentifier("filtered.length")), forOfStatement);
140
- var block = [
141
- typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createNumericLiteral(0), accessor.size(input)), typescript_1.default.factory.createReturnStatement(props.empty)),
142
- tupleListVariable,
143
- StatementFactory_1.StatementFactory.constant("front", accessor.front(input)),
144
- filteredVariable,
145
- uniqueStatement,
146
- StatementFactory_1.StatementFactory.constant("array", accessor.array(input)),
147
- unionStatement,
148
- props.failure(input, "(".concat(targets.map(function (t) { return accessor.name(t); }).join(" | "), ")"), explore),
149
- ];
150
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBlock(block, true)), undefined, undefined);
151
- };
152
- };
153
- };
154
142
  })(UnionExplorer = exports.UnionExplorer || (exports.UnionExplorer = {}));
155
143
  //# sourceMappingURL=UnionExplorer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UnionExplorer.js","sourceRoot":"","sources":["../../../src/programmers/helpers/UnionExplorer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UnionExplorer.js","sourceRoot":"","sources":["../../../src/programmers/helpers/UnionExplorer.ts"],"names":[],"mappings":"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"}
@@ -26,36 +26,38 @@ exports.application_array = void 0;
26
26
  var application_schema_1 = require("./application_schema");
27
27
  var application_array = function (options) {
28
28
  return function (components) {
29
- return function (metadata, nullable, attribute) {
30
- var e_1, _a;
31
- var output = __assign({ type: "array", items: (0, application_schema_1.application_schema)(options)(components)(false)(metadata, attribute), nullable: nullable }, attribute);
32
- try {
33
- for (var _b = __values(attribute["x-typia-metaTags"] || []), _c = _b.next(); !_c.done; _c = _b.next()) {
34
- var tag = _c.value;
35
- if (tag.kind === "minItems")
36
- output.minItems = tag.value;
37
- else if (tag.kind === "maxItems")
38
- output.maxItems = tag.value;
39
- else if (tag.kind === "items") {
40
- if (tag.minimum !== undefined)
41
- output.minItems =
42
- tag.minimum.value +
43
- (tag.minimum.include === true ? 0 : 1);
44
- if (tag.maximum !== undefined)
45
- output.maxItems =
46
- tag.maximum.value -
47
- (tag.maximum.include === true ? 0 : 1);
29
+ return function (tuple) {
30
+ return function (metadata, nullable, attribute) {
31
+ var e_1, _a;
32
+ var output = __assign({ type: "array", items: (0, application_schema_1.application_schema)(options)(components)(false)(metadata, attribute), nullable: nullable, "x-typia-tuple": tuple }, attribute);
33
+ try {
34
+ for (var _b = __values(attribute["x-typia-metaTags"] || []), _c = _b.next(); !_c.done; _c = _b.next()) {
35
+ var tag = _c.value;
36
+ if (tag.kind === "minItems")
37
+ output.minItems = tag.value;
38
+ else if (tag.kind === "maxItems")
39
+ output.maxItems = tag.value;
40
+ else if (tag.kind === "items") {
41
+ if (tag.minimum !== undefined)
42
+ output.minItems =
43
+ tag.minimum.value +
44
+ (tag.minimum.include === true ? 0 : 1);
45
+ if (tag.maximum !== undefined)
46
+ output.maxItems =
47
+ tag.maximum.value -
48
+ (tag.maximum.include === true ? 0 : 1);
49
+ }
48
50
  }
49
51
  }
50
- }
51
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
52
- finally {
53
- try {
54
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
52
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
53
+ finally {
54
+ try {
55
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
56
+ }
57
+ finally { if (e_1) throw e_1.error; }
55
58
  }
56
- finally { if (e_1) throw e_1.error; }
57
- }
58
- return output;
59
+ return output;
60
+ };
59
61
  };
60
62
  };
61
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"application_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_array.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKA,2DAA0D;AAKnD,IAAM,iBAAiB,GAC1B,UAAC,OAAuC;IACxC,OAAA,UAAC,UAA2B;QAC5B,OAAA,UACI,QAAkB,EAClB,QAAiB,EACjB,SAAiC;;YAGjC,IAAM,MAAM,cACR,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CACjD,QAAQ,EACR,SAAS,CACZ,EACD,QAAQ,UAAA,IACL,SAAS,CACf,CAAC;;gBAGF,KAAkB,IAAA,KAAA,SAAA,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA,gBAAA;oBAAhD,IAAM,GAAG,WAAA;oBACV,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;wBAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;yBACpD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;wBAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;yBACzD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;wBAC3B,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;4BACzB,MAAM,CAAC,QAAQ;gCACX,GAAG,CAAC,OAAO,CAAC,KAAK;oCACjB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC/C,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;4BACzB,MAAM,CAAC,QAAQ;gCACX,GAAG,CAAC,OAAO,CAAC,KAAK;oCACjB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;qBAClD;iBAAA;;;;;;;;;YACL,OAAO,MAAM,CAAC;QAClB,CAAC;IA/BD,CA+BC;AAhCD,CAgCC,CAAC;AAlCO,QAAA,iBAAiB,qBAkCxB"}
1
+ {"version":3,"file":"application_array.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_array.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKA,2DAA0D;AAKnD,IAAM,iBAAiB,GAC1B,UAAC,OAAuC;IACxC,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAA0B;YAC3B,OAAA,UACI,QAAkB,EAClB,QAAiB,EACjB,SAAiC;;gBAGjC,IAAM,MAAM,cACR,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CACjD,QAAQ,EACR,SAAS,CACZ,EACD,QAAQ,UAAA,EACR,eAAe,EAAE,KAAK,IACnB,SAAS,CACf,CAAC;;oBAGF,KAAkB,IAAA,KAAA,SAAA,SAAS,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAA,gBAAA;wBAAhD,IAAM,GAAG,WAAA;wBACV,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;4BAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;6BACpD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;4BAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;6BACzD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;4BAC3B,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;gCACzB,MAAM,CAAC,QAAQ;oCACX,GAAG,CAAC,OAAO,CAAC,KAAK;wCACjB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC/C,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS;gCACzB,MAAM,CAAC,QAAQ;oCACX,GAAG,CAAC,OAAO,CAAC,KAAK;wCACjB,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBAClD;qBAAA;;;;;;;;;gBACL,OAAO,MAAM,CAAC;YAClB,CAAC;QAhCD,CAgCC;IAjCD,CAiCC;AAlCD,CAkCC,CAAC;AApCO,QAAA,iBAAiB,qBAoCxB"}
@@ -1,4 +1,15 @@
1
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
+ };
2
13
  var __values = (this && this.__values) || function(o) {
3
14
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
15
  if (m) return m.call(o);
@@ -10,9 +21,26 @@ var __values = (this && this.__values) || function(o) {
10
21
  };
11
22
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
23
  };
24
+ var __read = (this && this.__read) || function (o, n) {
25
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
26
+ if (!m) return o;
27
+ var i = m.call(o), r, ar = [], e;
28
+ try {
29
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
30
+ }
31
+ catch (error) { e = { error: error }; }
32
+ finally {
33
+ try {
34
+ if (r && !r.done && (m = i["return"])) m.call(i);
35
+ }
36
+ finally { if (e) throw e.error; }
37
+ }
38
+ return ar;
39
+ };
13
40
  Object.defineProperty(exports, "__esModule", { value: true });
14
41
  exports.application_object = void 0;
15
42
  var CommentFactory_1 = require("../../factories/CommentFactory");
43
+ var Metadata_1 = require("../../metadata/Metadata");
16
44
  var PatternUtil_1 = require("../../utils/PatternUtil");
17
45
  var application_schema_1 = require("./application_schema");
18
46
  var metadata_to_pattern_1 = require("./metadata_to_pattern");
@@ -20,12 +48,15 @@ var application_object = function (options) {
20
48
  return function (components) {
21
49
  return function (id, obj, nullable) {
22
50
  var e_1, _a;
51
+ var _b;
23
52
  if (components.schemas[id] !== undefined)
24
53
  return;
25
54
  components.schemas[id] = {};
26
55
  var properties = {};
27
- var patternProperties = {};
28
- var additionalProperties = [];
56
+ var extraMeta = {
57
+ patternProperties: {},
58
+ additionalProperties: undefined,
59
+ };
29
60
  var required = [];
30
61
  var _loop_1 = function (property) {
31
62
  if (property.value.functional === true &&
@@ -34,7 +65,7 @@ var application_object = function (options) {
34
65
  property.value.size() === 0)
35
66
  return "continue";
36
67
  var key = property.key.getSoleLiteral();
37
- var value = (0, application_schema_1.application_schema)(options)(components)(true)(property.value, {
68
+ var schema_1 = (0, application_schema_1.application_schema)(options)(components)(true)(property.value, {
38
69
  deprecated: !!property.jsDocTags.find(function (tag) { return tag.name === "deprecated"; }) || undefined,
39
70
  title: (function () {
40
71
  var _a;
@@ -52,58 +83,92 @@ var application_object = function (options) {
52
83
  : undefined,
53
84
  "x-typia-required": property.value.required,
54
85
  });
55
- if (value === null)
86
+ if (schema_1 === null)
56
87
  return "continue";
57
88
  else if (key !== null) {
58
- properties[key] = value;
89
+ properties[key] = schema_1;
59
90
  if (property.value.required === true)
60
91
  required.push(key);
61
92
  }
62
93
  else {
63
94
  var pattern = (0, metadata_to_pattern_1.metadata_to_pattern)(true)(property.key);
64
- if (options.purpose === "swagger" ||
65
- pattern === PatternUtil_1.PatternUtil.STRING)
66
- additionalProperties.push(value);
95
+ if (pattern === PatternUtil_1.PatternUtil.STRING)
96
+ extraMeta.additionalProperties = [property.value, schema_1];
67
97
  else
68
- patternProperties[pattern] = value;
98
+ extraMeta.patternProperties[pattern] = [
99
+ property.value,
100
+ schema_1,
101
+ ];
69
102
  }
70
103
  };
71
104
  try {
72
- for (var _b = __values(obj.properties), _c = _b.next(); !_c.done; _c = _b.next()) {
73
- var property = _c.value;
105
+ for (var _c = __values(obj.properties), _d = _c.next(); !_d.done; _d = _c.next()) {
106
+ var property = _d.value;
74
107
  _loop_1(property);
75
108
  }
76
109
  }
77
110
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
78
111
  finally {
79
112
  try {
80
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
113
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
81
114
  }
82
115
  finally { if (e_1) throw e_1.error; }
83
116
  }
84
- var schema = {
85
- $id: options.purpose === "ajv"
86
- ? options.prefix + "/" + id
87
- : undefined,
88
- $recursiveAnchor: (options.purpose === "ajv" && obj.recursive) || undefined,
89
- type: "object",
90
- properties: properties,
91
- patternProperties: Object.keys(patternProperties).length
92
- ? patternProperties
93
- : undefined,
94
- additionalProperties: additionalProperties.length
95
- ? additionalProperties.length === 1
96
- ? additionalProperties[0]
97
- : { oneOf: additionalProperties }
98
- : undefined,
99
- nullable: nullable,
100
- required: required.length ? required : undefined,
101
- description: obj.description,
102
- "x-typia_jsDocTags": obj.jsDocTags,
117
+ var extraProps = {
118
+ additionalProperties: (_b = extraMeta.additionalProperties) === null || _b === void 0 ? void 0 : _b[1],
119
+ patternProperties: (function () {
120
+ var e_2, _a;
121
+ if (Object.keys(extraMeta.patternProperties).length === 0)
122
+ return undefined;
123
+ var output = {};
124
+ try {
125
+ for (var _b = __values(Object.entries(extraMeta.patternProperties)), _c = _b.next(); !_c.done; _c = _b.next()) {
126
+ var _d = __read(_c.value, 2), key = _d[0], value = _d[1];
127
+ output[key] = value[1];
128
+ }
129
+ }
130
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
131
+ finally {
132
+ try {
133
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
134
+ }
135
+ finally { if (e_2) throw e_2.error; }
136
+ }
137
+ return output;
138
+ })(),
103
139
  };
140
+ var schema = __assign({ $id: options.purpose === "ajv"
141
+ ? options.prefix + "/" + id
142
+ : undefined, $recursiveAnchor: (options.purpose === "ajv" && obj.recursive) || undefined, type: "object", properties: properties, nullable: nullable, required: required.length ? required : undefined, description: obj.description, "x-typia-jsDocTags": obj.jsDocTags }, (options.purpose === "ajv"
143
+ ? extraProps
144
+ : {
145
+ "x-typia-additionalProperties": extraProps.additionalProperties,
146
+ "x-typia-patternProperties": extraProps.patternProperties,
147
+ additionalProperties: join(options)(components)(extraMeta),
148
+ }));
104
149
  components.schemas[id] = schema;
105
150
  };
106
151
  };
107
152
  };
108
153
  exports.application_object = application_object;
154
+ var join = function (options) {
155
+ return function (components) {
156
+ return function (extra) {
157
+ var _a;
158
+ var elements = Object.values(extra.patternProperties || {});
159
+ if (extra.additionalProperties)
160
+ elements.push(extra.additionalProperties);
161
+ if (elements.length === 0)
162
+ return undefined;
163
+ else if (elements.length === 1)
164
+ return elements[0][1];
165
+ var meta = elements
166
+ .map(function (tuple) { return tuple[0]; })
167
+ .reduce(function (x, y) { return Metadata_1.Metadata.merge(x, y); });
168
+ return ((_a = (0, application_schema_1.application_schema)(options)(components)(true)(meta, {
169
+ "x-typia-required": false,
170
+ })) !== null && _a !== void 0 ? _a : undefined);
171
+ };
172
+ };
173
+ };
109
174
  //# sourceMappingURL=application_object.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_object.ts"],"names":[],"mappings":"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"}