typia 5.3.7 → 5.3.8-dev.20240103

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 (47) hide show
  1. package/lib/json.d.ts +12 -8
  2. package/lib/json.js.map +1 -1
  3. package/lib/programmers/internal/application_array.js +42 -38
  4. package/lib/programmers/internal/application_array.js.map +1 -1
  5. package/lib/programmers/internal/application_boolean.js +19 -10
  6. package/lib/programmers/internal/application_boolean.js.map +1 -1
  7. package/lib/programmers/internal/application_constant.js +6 -13
  8. package/lib/programmers/internal/application_constant.js.map +1 -1
  9. package/lib/programmers/internal/application_escaped.d.ts +1 -1
  10. package/lib/programmers/internal/application_escaped.js +15 -17
  11. package/lib/programmers/internal/application_escaped.js.map +1 -1
  12. package/lib/programmers/internal/application_native.js +6 -15
  13. package/lib/programmers/internal/application_native.js.map +1 -1
  14. package/lib/programmers/internal/application_number.js +82 -75
  15. package/lib/programmers/internal/application_number.js.map +1 -1
  16. package/lib/programmers/internal/application_object.js +23 -20
  17. package/lib/programmers/internal/application_object.js.map +1 -1
  18. package/lib/programmers/internal/application_schema.js +14 -25
  19. package/lib/programmers/internal/application_schema.js.map +1 -1
  20. package/lib/programmers/internal/application_string.js +52 -45
  21. package/lib/programmers/internal/application_string.js.map +1 -1
  22. package/lib/programmers/internal/application_templates.js +3 -12
  23. package/lib/programmers/internal/application_templates.js.map +1 -1
  24. package/lib/programmers/internal/application_tuple.js +5 -1
  25. package/lib/programmers/internal/application_tuple.js.map +1 -1
  26. package/lib/programmers/json/JsonApplicationProgrammer.d.ts +1 -0
  27. package/lib/programmers/json/JsonApplicationProgrammer.js +5 -5
  28. package/lib/programmers/json/JsonApplicationProgrammer.js.map +1 -1
  29. package/lib/schemas/json/IJsonApplication.d.ts +1 -0
  30. package/lib/transformers/features/json/JsonApplicationTransformer.js +36 -17
  31. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  32. package/package.json +1 -1
  33. package/src/json.ts +12 -7
  34. package/src/programmers/internal/application_array.ts +13 -13
  35. package/src/programmers/internal/application_boolean.ts +7 -2
  36. package/src/programmers/internal/application_constant.ts +0 -1
  37. package/src/programmers/internal/application_escaped.ts +2 -3
  38. package/src/programmers/internal/application_native.ts +3 -7
  39. package/src/programmers/internal/application_number.ts +13 -10
  40. package/src/programmers/internal/application_object.ts +20 -10
  41. package/src/programmers/internal/application_schema.ts +19 -34
  42. package/src/programmers/internal/application_string.ts +13 -10
  43. package/src/programmers/internal/application_templates.ts +0 -1
  44. package/src/programmers/internal/application_tuple.ts +0 -1
  45. package/src/programmers/json/JsonApplicationProgrammer.ts +5 -6
  46. package/src/schemas/json/IJsonApplication.ts +1 -0
  47. package/src/transformers/features/json/JsonApplicationTransformer.ts +47 -34
@@ -91,23 +91,22 @@ var create_object_schema = function (options) {
91
91
  else if (property.jsDocTags.find(function (tag) { return tag.name === "hidden"; }))
92
92
  return "continue";
93
93
  var key = property.key.getSoleLiteral();
94
- var schema = (0, application_schema_1.application_schema)(options)(true)(components)(property.value)({
95
- deprecated: property.jsDocTags.some(function (tag) { return tag.name === "deprecated"; }) ||
96
- undefined,
97
- title: (function () {
94
+ var schema = (0, application_schema_1.application_schema)(options)(true)(components)(property.value)(__assign({ deprecated: property.jsDocTags.some(function (tag) { return tag.name === "deprecated"; }) ||
95
+ undefined, title: (function () {
98
96
  var _a;
99
97
  var info = property.jsDocTags.find(function (tag) { return tag.name === "title"; });
100
98
  return ((_a = info === null || info === void 0 ? void 0 : info.text) === null || _a === void 0 ? void 0 : _a.length)
101
99
  ? CommentFactory_1.CommentFactory.merge(info.text)
102
100
  : undefined;
103
- })(),
104
- description: (_b = property.description) !== null && _b !== void 0 ? _b : undefined,
105
- "x-typia-jsDocTags": property.jsDocTags.length
106
- ? property.jsDocTags
107
- : undefined,
108
- "x-typia-required": property.value.required,
109
- "x-typia-optional": property.value.optional,
110
- });
101
+ })(), description: (_b = property.description) !== null && _b !== void 0 ? _b : undefined }, (options.surplus
102
+ ? {
103
+ "x-typia-jsDocTags": property.jsDocTags.length
104
+ ? property.jsDocTags
105
+ : undefined,
106
+ "x-typia-required": property.value.required,
107
+ "x-typia-optional": property.value.optional,
108
+ }
109
+ : {})));
111
110
  if (schema === null)
112
111
  return "continue";
113
112
  else if (key !== null) {
@@ -161,11 +160,13 @@ var create_object_schema = function (options) {
161
160
  };
162
161
  return __assign({ type: "object", properties: properties, nullable: options.purpose === "swagger" ? nullable : undefined, required: required.length ? required : undefined, description: obj.description, "x-typia-jsDocTags": obj.jsDocTags }, (options.purpose === "ajv"
163
162
  ? extraProps
164
- : {
165
- "x-typia-additionalProperties": extraProps.additionalProperties,
166
- "x-typia-patternProperties": extraProps.patternProperties,
167
- additionalProperties: join(options)(components)(extraMeta),
168
- }));
163
+ : options.surplus
164
+ ? {
165
+ "x-typia-additionalProperties": extraProps.additionalProperties,
166
+ "x-typia-patternProperties": extraProps.patternProperties,
167
+ additionalProperties: join(options)(components)(extraMeta),
168
+ }
169
+ : {}));
169
170
  };
170
171
  };
171
172
  };
@@ -184,9 +185,11 @@ var join = function (options) {
184
185
  var meta = elements
185
186
  .map(function (tuple) { return tuple[0]; })
186
187
  .reduce(function (x, y) { return Metadata_1.Metadata.merge(x, y); });
187
- return ((_a = (0, application_schema_1.application_schema)(options)(true)(components)(meta)({
188
- "x-typia-required": false,
189
- })) !== null && _a !== void 0 ? _a : undefined);
188
+ return ((_a = (0, application_schema_1.application_schema)(options)(true)(components)(meta)(options.surplus
189
+ ? {
190
+ "x-typia-required": false,
191
+ }
192
+ : {})) !== null && _a !== void 0 ? _a : undefined);
190
193
  };
191
194
  };
192
195
  };
@@ -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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"}
@@ -75,14 +75,14 @@ var application_schema = function (options) {
75
75
  if (meta.nullable && options.purpose !== "swagger")
76
76
  union.push(__assign(__assign({}, attribute), { type: "null" }));
77
77
  var insert = meta.nullable && options.purpose === "swagger"
78
- ? function (s) {
79
- return union.push(__assign(__assign({}, s), { nullable: s.type
78
+ ? function (schema) {
79
+ return union.push(__assign(__assign({}, schema), { nullable: schema.type
80
80
  ? true
81
81
  : undefined }));
82
82
  }
83
83
  : function (schema) { return union.push(schema); };
84
84
  if (meta.escaped !== null)
85
- union.push.apply(union, __spreadArray([], __read((0, application_escaped_1.application_escaped)(options)(blockNever)(components)(meta.escaped)(attribute)), false));
85
+ union.push.apply(union, __spreadArray([], __read((0, application_escaped_1.application_escaped)(options)(blockNever)(components)(meta.escaped)), false));
86
86
  if (meta.templates.length && AtomicPredicator_1.AtomicPredicator.template(meta))
87
87
  insert((0, application_templates_1.application_templates)(meta)(attribute));
88
88
  try {
@@ -110,11 +110,11 @@ var application_schema = function (options) {
110
110
  if (a.type === "bigint")
111
111
  throw new TypeError(NO_BIGINT);
112
112
  else if (a.type === "boolean")
113
- (0, application_boolean_1.application_boolean)(a)(attribute).forEach(insert);
113
+ (0, application_boolean_1.application_boolean)(options)(a)(attribute).forEach(insert);
114
114
  else if (a.type === "number")
115
- (0, application_number_1.application_number)(a)(attribute).forEach(insert);
115
+ (0, application_number_1.application_number)(options)(a)(attribute).forEach(insert);
116
116
  else if (a.type === "string")
117
- (0, application_string_1.application_string)(meta)(a)(attribute).forEach(insert);
117
+ (0, application_string_1.application_string)(options)(meta)(a)(attribute).forEach(insert);
118
118
  }
119
119
  }
120
120
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
@@ -127,9 +127,7 @@ var application_schema = function (options) {
127
127
  try {
128
128
  for (var _m = __values(meta.arrays), _o = _m.next(); !_o.done; _o = _m.next()) {
129
129
  var array = _o.value;
130
- (0, application_array_1.application_array)(options)(components)(array)(attribute).forEach(function (s) {
131
- return insert(s);
132
- });
130
+ (0, application_array_1.application_array)(options)(components)(array).forEach(insert);
133
131
  }
134
132
  }
135
133
  catch (e_3_1) { e_3 = { error: e_3_1 }; }
@@ -160,26 +158,23 @@ var application_schema = function (options) {
160
158
  else if (type_1 === "bigint")
161
159
  throw new TypeError(NO_BIGINT);
162
160
  else if (type_1 === "boolean")
163
- insert((0, application_boolean_1.application_boolean)(MetadataAtomic_1.MetadataAtomic.create({
161
+ insert((0, application_boolean_1.application_boolean)(options)(MetadataAtomic_1.MetadataAtomic.create({
164
162
  type: "boolean",
165
163
  tags: [],
166
164
  }))(attribute)[0]);
167
165
  else if (type_1 === "number")
168
- insert((0, application_number_1.application_number)(MetadataAtomic_1.MetadataAtomic.create({
166
+ insert((0, application_number_1.application_number)(options)(MetadataAtomic_1.MetadataAtomic.create({
169
167
  type: "number",
170
168
  tags: [],
171
169
  }))(attribute)[0]);
172
170
  else if (type_1 === "string")
173
- insert((0, application_string_1.application_string)(meta)(MetadataAtomic_1.MetadataAtomic.create({
171
+ insert((0, application_string_1.application_string)(options)(meta)(MetadataAtomic_1.MetadataAtomic.create({
174
172
  type: "string",
175
173
  tags: [],
176
174
  }))(attribute)[0]);
177
175
  }
178
176
  else
179
- insert((0, application_native_1.application_native)(options)(components)(native)({
180
- nullable: meta.nullable,
181
- attribute: attribute,
182
- }));
177
+ insert((0, application_native_1.application_native)(options)(components)(native)(meta.nullable));
183
178
  };
184
179
  try {
185
180
  for (var _r = __values(meta.natives), _s = _r.next(); !_s.done; _s = _r.next()) {
@@ -195,15 +190,9 @@ var application_schema = function (options) {
195
190
  finally { if (e_5) throw e_5.error; }
196
191
  }
197
192
  if (meta.sets.length)
198
- insert((0, application_native_1.application_native)(options)(components)("Set")({
199
- nullable: meta.nullable,
200
- attribute: attribute,
201
- }));
193
+ insert((0, application_native_1.application_native)(options)(components)("Set")(meta.nullable));
202
194
  if (meta.maps.length)
203
- insert((0, application_native_1.application_native)(options)(components)("Map")({
204
- nullable: meta.nullable,
205
- attribute: attribute,
206
- }));
195
+ insert((0, application_native_1.application_native)(options)(components)("Map")(meta.nullable));
207
196
  try {
208
197
  for (var _t = __values(meta.objects), _u = _t.next(); !_u.done; _u = _t.next()) {
209
198
  var obj = _u.value;
@@ -235,7 +224,7 @@ var application_schema = function (options) {
235
224
  ? null
236
225
  : __assign(__assign({}, attribute), { type: undefined });
237
226
  else if (union.length === 1)
238
- return union[0];
227
+ return __assign(__assign({}, union[0]), attribute);
239
228
  return __assign({ oneOf: union }, attribute);
240
229
  };
241
230
  };
@@ -1 +1 @@
1
- {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":"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"}
@@ -49,58 +49,65 @@ var __values = (this && this.__values) || function(o) {
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
50
  exports.application_string = void 0;
51
51
  var application_default_string_1 = require("./application_default_string");
52
- var application_string = function (meta) {
53
- return function (atomic) {
54
- return function (attribute) {
55
- var base = __assign(__assign({}, attribute), { type: "string" });
56
- var out = function (schema) {
57
- var _a;
58
- (_a = schema.default) !== null && _a !== void 0 ? _a : (schema.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(base));
59
- return schema;
52
+ var application_string = function (options) {
53
+ return function (meta) {
54
+ return function (atomic) {
55
+ return function (attribute) {
56
+ var base = {
57
+ type: "string",
58
+ };
59
+ var out = function (schema) {
60
+ var _a;
61
+ (_a = schema.default) !== null && _a !== void 0 ? _a : (schema.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(base));
62
+ return schema;
63
+ };
64
+ if (atomic.tags.length === 0)
65
+ return [out(base)];
66
+ var union = atomic.tags.map(function (row) { return application_string_tags(options)(__assign({}, base))(row); });
67
+ var map = new Map(union.map(function (u) { return [JSON.stringify(u), u]; }));
68
+ return __spreadArray([], __read(map.values()), false).map(function (s) { return out(s); });
60
69
  };
61
- if (atomic.tags.length === 0)
62
- return [out(base)];
63
- var union = atomic.tags.map(function (row) { return application_string_tags(__assign({}, base))(row); });
64
- var map = new Map(union.map(function (u) { return [JSON.stringify(u), u]; }));
65
- return __spreadArray([], __read(map.values()), false).map(function (s) { return out(s); });
66
70
  };
67
71
  };
68
72
  };
69
73
  exports.application_string = application_string;
70
- var application_string_tags = function (base) {
71
- return function (row) {
72
- var e_1, _a;
73
- try {
74
- for (var _b = __values(row.slice().sort(function (a, b) { return a.kind.localeCompare(b.kind); })), _c = _b.next(); !_c.done; _c = _b.next()) {
75
- var tag = _c.value;
76
- if (tag.kind === "minLength" && typeof tag.value === "number")
77
- base.minLength = tag.value;
78
- else if (tag.kind === "maxLength" && typeof tag.value === "number")
79
- base.maxLength = tag.value;
80
- else if (tag.kind === "format" && typeof tag.value === "string")
81
- base.format = tag.value;
82
- else if (tag.kind === "pattern")
83
- base.pattern = tag.value;
84
- else if (tag.kind === "default" && typeof tag.value === "string")
85
- base.default = tag.value;
86
- }
87
- }
88
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
89
- finally {
74
+ var application_string_tags = function (options) {
75
+ return function (base) {
76
+ return function (row) {
77
+ var e_1, _a;
90
78
  try {
91
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
79
+ for (var _b = __values(row.slice().sort(function (a, b) { return a.kind.localeCompare(b.kind); })), _c = _b.next(); !_c.done; _c = _b.next()) {
80
+ var tag = _c.value;
81
+ if (tag.kind === "minLength" && typeof tag.value === "number")
82
+ base.minLength = tag.value;
83
+ else if (tag.kind === "maxLength" && typeof tag.value === "number")
84
+ base.maxLength = tag.value;
85
+ else if (tag.kind === "format" && typeof tag.value === "string")
86
+ base.format = tag.value;
87
+ else if (tag.kind === "pattern")
88
+ base.pattern = tag.value;
89
+ else if (tag.kind === "default" && typeof tag.value === "string")
90
+ base.default = tag.value;
91
+ }
92
92
  }
93
- finally { if (e_1) throw e_1.error; }
94
- }
95
- base["x-typia-typeTags"] = row.map(function (tag) { return ({
96
- target: tag.target,
97
- name: tag.name,
98
- kind: tag.kind,
99
- value: tag.value,
100
- validate: tag.validate,
101
- exclusive: tag.exclusive,
102
- }); });
103
- return base;
93
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
94
+ finally {
95
+ try {
96
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
97
+ }
98
+ finally { if (e_1) throw e_1.error; }
99
+ }
100
+ if (options.surplus)
101
+ base["x-typia-typeTags"] = row.map(function (tag) { return ({
102
+ target: tag.target,
103
+ name: tag.name,
104
+ kind: tag.kind,
105
+ value: tag.value,
106
+ validate: tag.validate,
107
+ exclusive: tag.exclusive,
108
+ }); });
109
+ return base;
110
+ };
104
111
  };
105
112
  };
106
113
  //# sourceMappingURL=application_string.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_string.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_string.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,13 @@
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
- };
13
2
  Object.defineProperty(exports, "__esModule", { value: true });
14
3
  exports.application_templates = void 0;
15
4
  var application_default_string_1 = require("./application_default_string");
16
5
  var metadata_to_pattern_1 = require("./metadata_to_pattern");
17
6
  var application_templates = function (meta) {
18
7
  return function (attribute) {
19
- var output = __assign({ type: "string" }, attribute);
8
+ var output = {
9
+ type: "string",
10
+ };
20
11
  output.pattern = (0, metadata_to_pattern_1.metadata_to_pattern)(true)(meta);
21
12
  output.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(output);
22
13
  return output;
@@ -1 +1 @@
1
- {"version":3,"file":"application_templates.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_templates.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,2EAA0E;AAC1E,6DAA4D;AAKrD,IAAM,qBAAqB,GAChC,UAAC,IAAc;IACf,OAAA,UAAC,SAAiC;QAEhC,IAAM,MAAM,cACV,IAAI,EAAE,QAAQ,IACX,SAAS,CACb,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,IAAA,yCAAmB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAGjD,MAAM,CAAC,OAAO,GAAG,IAAA,uDAA0B,EAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QAGrE,OAAO,MAAM,CAAC;IAChB,CAAC;AAbD,CAaC,CAAC;AAfS,QAAA,qBAAqB,yBAe9B"}
1
+ {"version":3,"file":"application_templates.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_templates.ts"],"names":[],"mappings":";;;AAGA,2EAA0E;AAC1E,6DAA4D;AAKrD,IAAM,qBAAqB,GAChC,UAAC,IAAc;IACf,OAAA,UAAC,SAAiC;QAEhC,IAAM,MAAM,GAAwB;YAClC,IAAI,EAAE,QAAQ;SACf,CAAC;QACF,MAAM,CAAC,OAAO,GAAG,IAAA,yCAAmB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAGjD,MAAM,CAAC,OAAO,GAAG,IAAA,uDAA0B,EAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QAGrE,OAAO,MAAM,CAAC;IAChB,CAAC;AAZD,CAYC,CAAC;AAdS,QAAA,qBAAqB,yBAc9B"}
@@ -21,7 +21,11 @@ var application_tuple = function (options) {
21
21
  var _a, _b, _c;
22
22
  var schema = __assign(__assign({ type: "array", items: tuple.type.elements.map(function (meta, i) {
23
23
  var _a;
24
- return (0, application_schema_1.application_schema)(options)(false)(components)((_a = meta.rest) !== null && _a !== void 0 ? _a : meta)(__assign(__assign({}, attribute), { "x-typia-rest": i === tuple.type.elements.length - 1 && meta.rest !== null, "x-typia-required": meta.required, "x-typia-optional": meta.optional }));
24
+ return (0, application_schema_1.application_schema)(options)(false)(components)((_a = meta.rest) !== null && _a !== void 0 ? _a : meta)({
25
+ "x-typia-rest": i === tuple.type.elements.length - 1 && meta.rest !== null,
26
+ "x-typia-required": meta.required,
27
+ "x-typia-optional": meta.optional,
28
+ });
25
29
  }) }, attribute), { minItems: !!((_a = tuple.type.elements.at(-1)) === null || _a === void 0 ? void 0 : _a.rest)
26
30
  ? tuple.type.elements.length - 1
27
31
  : tuple.type.elements.filter(function (x) { return !x.optional; }).length, maxItems: !!((_b = tuple.type.elements.at(-1)) === null || _b === void 0 ? void 0 : _b.rest)
@@ -1 +1 @@
1
- {"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,4DAA2D;AAI3D,2DAA0D;AAKnD,IAAM,iBAAiB,GAC5B,UAAC,OAA2C;IAC5C,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAoB;YACrB,OAAA,UACE,SAAiC;;gBAEjC,IAAM,MAAM,uBACV,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;wBACrC,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,uBAC5D,SAAS,KACZ,cAAc,EACZ,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAC5D,kBAAkB,EAAE,IAAI,CAAC,QAAQ,EACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IACjC,CAAA;qBAAA,CACH,IACE,SAAS,KACZ,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAX,CAAW,CAAC,CAAC,MAAM,EACzD,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAC/B,CAAC;gBACF,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;oBAC3B,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,MAAM,CAAC;yBAC/C,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAAE,OAAO,MAAM,CAAC;gBAE5D,IAAM,OAAO,yBACR,MAAM,KACT,KAAK,EAAE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CACnD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxB,UAAC,CAAC,EAAE,CAAC,gBAAK,OAAA,mBAAQ,CAAC,KAAK,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,EAAE,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,CAAC,CAAA,EAAA,EAClD,mBAAQ,CAAC,UAAU,EAAE,CACtB,CACF,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EACxC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAC1B,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;QAvCD,CAuCC;IAxCD,CAwCC;AAzCD,CAyCC,CAAC;AA3CS,QAAA,iBAAiB,qBA2C1B"}
1
+ {"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,4DAA2D;AAI3D,2DAA0D;AAKnD,IAAM,iBAAiB,GAC5B,UAAC,OAA2C;IAC5C,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAoB;YACrB,OAAA,UACE,SAAiC;;gBAEjC,IAAM,MAAM,uBACV,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;wBACrC,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,CAAC;4BAChE,cAAc,EACZ,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;4BAC5D,kBAAkB,EAAE,IAAI,CAAC,QAAQ;4BACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ;yBAClC,CAAC,CAAA;qBAAA,CACH,IACE,SAAS,KACZ,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAChC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAX,CAAW,CAAC,CAAC,MAAM,EACzD,QAAQ,EAAE,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAC1C,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAC/B,CAAC;gBACF,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK;oBAC3B,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,MAAM,CAAC;yBAC/C,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAA;wBAAE,OAAO,MAAM,CAAC;gBAE5D,IAAM,OAAO,yBACR,MAAM,KACT,KAAK,EAAE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CACnD,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CACxB,UAAC,CAAC,EAAE,CAAC,gBAAK,OAAA,mBAAQ,CAAC,KAAK,CAAC,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,EAAE,MAAA,CAAC,CAAC,IAAI,mCAAI,CAAC,CAAC,CAAA,EAAA,EAClD,mBAAQ,CAAC,UAAU,EAAE,CACtB,CACF,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,EACxC,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ,EACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,GAC1B,CAAC;gBACF,OAAO,OAAO,CAAC;YACjB,CAAC;QAtCD,CAsCC;IAvCD,CAuCC;AAxCD,CAwCC,CAAC;AA1CS,QAAA,iBAAiB,qBA0C1B"}
@@ -3,6 +3,7 @@ import { Metadata } from "../../schemas/metadata/Metadata";
3
3
  export declare namespace JsonApplicationProgrammer {
4
4
  interface IOptions {
5
5
  purpose: "ajv" | "swagger";
6
+ surplus: boolean;
6
7
  }
7
8
  const write: (options?: Partial<IOptions>) => (metadatas: Array<Metadata>) => IJsonApplication;
8
9
  }
@@ -19,11 +19,11 @@ var JsonApplicationProgrammer;
19
19
  var IOptions;
20
20
  (function (IOptions) {
21
21
  IOptions.complement = function (options) {
22
- var _a;
23
- var purpose = (_a = options === null || options === void 0 ? void 0 : options.purpose) !== null && _a !== void 0 ? _a : "swagger";
24
- return {
25
- purpose: purpose,
26
- };
22
+ var _a, _b;
23
+ return ({
24
+ purpose: (_a = options === null || options === void 0 ? void 0 : options.purpose) !== null && _a !== void 0 ? _a : "swagger",
25
+ surplus: (_b = options === null || options === void 0 ? void 0 : options.surplus) !== null && _b !== void 0 ? _b : false,
26
+ });
27
27
  };
28
28
  })(IOptions = JsonApplicationProgrammer.IOptions || (JsonApplicationProgrammer.IOptions = {}));
29
29
  JsonApplicationProgrammer.write = function (options) {
@@ -1 +1 @@
1
- {"version":3,"file":"JsonApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/json/JsonApplicationProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,wEAAuE;AAEvE,qEAAoE;AAEpE,IAAiB,yBAAyB,CAwCzC;AAxCD,WAAiB,yBAAyB;IAQxC,IAAiB,QAAQ,CAOxB;IAPD,WAAiB,QAAQ;QACV,mBAAU,GAAG,UAAC,OAA2B;;YACpD,IAAM,OAAO,GAAsB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,SAAS,CAAC;YACjE,OAAO;gBACL,OAAO,SAAA;aACR,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,EAPgB,QAAQ,GAAR,kCAAQ,KAAR,kCAAQ,QAOxB;IAEY,+BAAK,GAChB,UAAC,OAA2B;QAC5B,OAAA,UAAC,SAA0B;YACzB,IAAM,WAAW,GAAa,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAM,UAAU,GAAoB;gBAClC,OAAO,EAAE,EAAE;aACZ,CAAC;YACF,IAAM,SAAS,GAAG,IAAA,uCAAkB,EAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;YAEpE,kBACE,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;oBAC7B,IAAM,MAAM,GAAuB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBACvD,IAAI,MAAM,KAAK,IAAI;wBACjB,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,wBAAwB;4BAC9B,OAAO,EAAE,sCAA+B,IAAI,CAAC,OAAO,EAAE,eAAK,CAAC,MAAG;yBAChE,CAAC,CAAC;oBACL,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,EACF,UAAU,YAAA,IACP,WAAW,EACd;QACJ,CAAC;IApBD,CAoBC,CAAC;AACN,CAAC,EAxCgB,yBAAyB,yCAAzB,yBAAyB,QAwCzC"}
1
+ {"version":3,"file":"JsonApplicationProgrammer.js","sourceRoot":"","sources":["../../../src/programmers/json/JsonApplicationProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,wEAAuE;AAEvE,qEAAoE;AAEpE,IAAiB,yBAAyB,CAuCzC;AAvCD,WAAiB,yBAAyB;IASxC,IAAiB,QAAQ,CAKxB;IALD,WAAiB,QAAQ;QACV,mBAAU,GAAG,UAAC,OAA2B;;YAAe,OAAA,CAAC;gBACpE,OAAO,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,SAAS;gBACtC,OAAO,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,KAAK;aACnC,CAAC,CAAA;SAAA,CAAC;IACL,CAAC,EALgB,QAAQ,GAAR,kCAAQ,KAAR,kCAAQ,QAKxB;IAEY,+BAAK,GAChB,UAAC,OAA2B;QAC5B,OAAA,UAAC,SAA0B;YACzB,IAAM,WAAW,GAAa,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC3D,IAAM,UAAU,GAAoB;gBAClC,OAAO,EAAE,EAAE;aACZ,CAAC;YACF,IAAM,SAAS,GAAG,IAAA,uCAAkB,EAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC;YAEpE,kBACE,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;oBAC7B,IAAM,MAAM,GAAuB,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBACvD,IAAI,MAAM,KAAK,IAAI;wBACjB,MAAM,IAAI,mCAAgB,CAAC;4BACzB,IAAI,EAAE,wBAAwB;4BAC9B,OAAO,EAAE,sCAA+B,IAAI,CAAC,OAAO,EAAE,eAAK,CAAC,MAAG;yBAChE,CAAC,CAAC;oBACL,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,EACF,UAAU,YAAA,IACP,WAAW,EACd;QACJ,CAAC;IApBD,CAoBC,CAAC;AACN,CAAC,EAvCgB,yBAAyB,yCAAzB,yBAAyB,QAuCzC"}
@@ -4,4 +4,5 @@ export interface IJsonApplication {
4
4
  schemas: IJsonSchema[];
5
5
  components: IJsonComponents;
6
6
  purpose: "swagger" | "ajv";
7
+ surplus: boolean;
7
8
  }
@@ -71,7 +71,20 @@ var JsonApplicationTransformer;
71
71
  code: "typia.json.application",
72
72
  message: "non-specified generic argument(s).",
73
73
  });
74
- var purpose = get_parameter(project.checker, "Purpose", expression.typeArguments[1], function (str) { return str === "swagger" || str === "ajv"; }, function () { return "swagger"; });
74
+ var purpose = get_parameter({
75
+ checker: project.checker,
76
+ name: "Purpose",
77
+ is: function (str) { return str === "swagger" || str === "ajv"; },
78
+ cast: function (str) { return str; },
79
+ default: function () { return "swagger"; },
80
+ })(expression.typeArguments[1]);
81
+ var surplus = get_parameter({
82
+ checker: project.checker,
83
+ name: "Surplus",
84
+ is: function (str) { return str === "true" || str === "false"; },
85
+ cast: function (str) { return str === "true"; },
86
+ default: function () { return false; },
87
+ })(expression.typeArguments[2]);
75
88
  var collection = new MetadataCollection_1.MetadataCollection({
76
89
  replace: MetadataCollection_1.MetadataCollection.replace,
77
90
  });
@@ -105,26 +118,32 @@ var JsonApplicationTransformer;
105
118
  throw TransformerError_1.TransformerError.from("typia.json.application")(errors);
106
119
  var app = JsonApplicationProgrammer_1.JsonApplicationProgrammer.write({
107
120
  purpose: purpose,
121
+ surplus: surplus,
108
122
  })(metadatas);
109
123
  return LiteralFactory_1.LiteralFactory.generate(app);
110
124
  };
111
125
  };
112
- var get_parameter = function (checker, name, node, predicator, defaulter) {
113
- if (!node)
114
- return defaulter();
115
- var type = checker.getTypeFromTypeNode(node);
116
- if (!type.isLiteral())
117
- throw new TransformerError_1.TransformerError({
118
- code: "typia.json.application",
119
- message: "generic argument \"".concat(name, "\" must be constant."),
120
- });
121
- var value = type.value;
122
- if (typeof value !== "string" || predicator(value) === false)
123
- throw new TransformerError_1.TransformerError({
124
- code: "typia.json.application",
125
- message: "invalid value on generic argument \"".concat(name, "\"."),
126
- });
127
- return value;
126
+ var get_parameter = function (props) {
127
+ return function (node) {
128
+ if (!node)
129
+ return props.default();
130
+ var type = props.checker.getTypeFromTypeNode(node);
131
+ if (!type.isLiteral() &&
132
+ (type.getFlags() & typescript_1.default.TypeFlags.BooleanLiteral) === 0)
133
+ throw new TransformerError_1.TransformerError({
134
+ code: "typia.json.application",
135
+ message: "generic argument \"".concat(props.name, "\" must be constant."),
136
+ });
137
+ var value = type.isLiteral()
138
+ ? type.value
139
+ : props.checker.typeToString(type);
140
+ if (typeof value !== "string" || props.is(value) === false)
141
+ throw new TransformerError_1.TransformerError({
142
+ code: "typia.json.application",
143
+ message: "invalid value on generic argument \"".concat(props.name, "\"."),
144
+ });
145
+ return props.cast(value);
146
+ };
128
147
  };
129
148
  })(JsonApplicationTransformer || (exports.JsonApplicationTransformer = JsonApplicationTransformer = {}));
130
149
  //# sourceMappingURL=JsonApplicationTransformer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/json/JsonApplicationTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/json/JsonApplicationTransformer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "5.3.7",
3
+ "version": "5.3.8-dev.20240103",
4
4
  "description": "Superfast runtime validators with only one line",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
package/src/json.ts CHANGED
@@ -43,19 +43,23 @@ export function application(): never;
43
43
  * JSON Schema Application.
44
44
  *
45
45
  * Creates a JSON schema application which contains both main JSON schemas and
46
- * components. Note that, all of the object types are stored in the
46
+ * components. Note that, all of the named types are stored in the
47
47
  * {@link IJsonApplication.components} property for the `$ref` referencing.
48
48
  *
49
- * Also, `typia.json.application()` has additional generic arguments, *Purpose*.
50
- * As JSON schema definitions used by `swagger` and `ajv` are different a little bit,
51
- * you should configure the *Purpose* appropriately.
49
+ * Also, `typia.json.application()` has two additional generic arguments.
52
50
  *
53
- * For an example, `ajv` has an extra property "$recursiveRef" that are not exists
54
- * in the standard JSON schema definition spec. Otherwise, `swagger` can't identify
55
- * the tuple definition.
51
+ * The 1st *Purpose* means the purpose determines the JSON schema definition spec.
52
+ * For an example, `ajv` has an extra property "$recursiveRef" that are not
53
+ * exists in the standard JSON schema definition spec. Otherwise, `swagger`
54
+ * can't identify the tuple definition.
55
+ *
56
+ * The next *Surplus* means whether to allow surplus properties starting with
57
+ * `x-typia-` or not. If `true`, the surplus properties like `x-typia-jsDocTags`
58
+ * would be registered into the JSON schema, otherwise, not.
56
59
  *
57
60
  * @template Types Tuple of target types
58
61
  * @template Purpose Purpose of the JSON schema
62
+ * @template Surplus Allow surplus properties starting with `x-typia-` or not
59
63
  * @return JSON schema application
60
64
  *
61
65
  * @author Jeongho Nam - https://github.com/samchon
@@ -63,6 +67,7 @@ export function application(): never;
63
67
  export function application<
64
68
  Types extends unknown[],
65
69
  Purpose extends "ajv" | "swagger" = "swagger",
70
+ Surplus extends boolean = false,
66
71
  >(): IJsonApplication;
67
72
 
68
73
  /**