typia 3.8.5-dev.20230510 → 3.8.6-dev.20230511

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 (54) hide show
  1. package/lib/module.d.ts +1 -3
  2. package/lib/module.js.map +1 -1
  3. package/lib/programmers/ApplicationProgrammer.d.ts +1 -4
  4. package/lib/programmers/ApplicationProgrammer.js +2 -6
  5. package/lib/programmers/ApplicationProgrammer.js.map +1 -1
  6. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.d.ts +1 -0
  7. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js +5 -0
  8. package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js.map +1 -0
  9. package/lib/programmers/internal/application_array.js +6 -5
  10. package/lib/programmers/internal/application_array.js.map +1 -1
  11. package/lib/programmers/internal/application_boolean.js +1 -1
  12. package/lib/programmers/internal/application_boolean.js.map +1 -1
  13. package/lib/programmers/internal/application_constant.js +1 -1
  14. package/lib/programmers/internal/application_constant.js.map +1 -1
  15. package/lib/programmers/internal/application_default.js +3 -3
  16. package/lib/programmers/internal/application_default.js.map +1 -1
  17. package/lib/programmers/internal/application_native.js +15 -11
  18. package/lib/programmers/internal/application_native.js.map +1 -1
  19. package/lib/programmers/internal/application_number.js +8 -7
  20. package/lib/programmers/internal/application_number.js.map +1 -1
  21. package/lib/programmers/internal/application_object.js +18 -13
  22. package/lib/programmers/internal/application_object.js.map +1 -1
  23. package/lib/programmers/internal/application_schema.js +43 -63
  24. package/lib/programmers/internal/application_schema.js.map +1 -1
  25. package/lib/programmers/internal/application_string.js +29 -27
  26. package/lib/programmers/internal/application_string.js.map +1 -1
  27. package/lib/programmers/internal/application_templates.js +1 -1
  28. package/lib/programmers/internal/application_templates.js.map +1 -1
  29. package/lib/programmers/internal/application_tuple.js +3 -3
  30. package/lib/programmers/internal/application_tuple.js.map +1 -1
  31. package/lib/schemas/IJsonApplication.d.ts +3 -0
  32. package/lib/schemas/IJsonComponents.d.ts +7 -1
  33. package/lib/schemas/IJsonSchema.d.ts +4 -1
  34. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js +0 -6
  35. package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/module.ts +1 -6
  38. package/src/programmers/ApplicationProgrammer.ts +2 -8
  39. package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +1 -0
  40. package/src/programmers/internal/application_array.ts +4 -8
  41. package/src/programmers/internal/application_boolean.ts +6 -8
  42. package/src/programmers/internal/application_constant.ts +3 -7
  43. package/src/programmers/internal/application_default.ts +1 -1
  44. package/src/programmers/internal/application_native.ts +16 -12
  45. package/src/programmers/internal/application_number.ts +7 -9
  46. package/src/programmers/internal/application_object.ts +13 -6
  47. package/src/programmers/internal/application_schema.ts +36 -51
  48. package/src/programmers/internal/application_string.ts +28 -29
  49. package/src/programmers/internal/application_templates.ts +0 -1
  50. package/src/programmers/internal/application_tuple.ts +3 -7
  51. package/src/schemas/IJsonApplication.ts +4 -0
  52. package/src/schemas/IJsonComponents.ts +8 -1
  53. package/src/schemas/IJsonSchema.ts +5 -1
  54. package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +0 -11
@@ -25,6 +25,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
25
25
  exports.application_schema = void 0;
26
26
  var Metadata_1 = require("../../metadata/Metadata");
27
27
  var AtomicPredicator_1 = require("../helpers/AtomicPredicator");
28
+ var JSON_SCHEMA_PREFIX_1 = require("./JSON_SCHEMA_PREFIX");
28
29
  var application_array_1 = require("./application_array");
29
30
  var application_boolean_1 = require("./application_boolean");
30
31
  var application_constant_1 = require("./application_constant");
@@ -40,130 +41,113 @@ var application_schema = function (options) {
40
41
  return function (meta) {
41
42
  return function (attribute) {
42
43
  var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f;
43
- var _g, _h;
44
+ var _g;
44
45
  if (meta.any === true)
45
46
  return __assign(__assign({}, attribute), { type: undefined });
46
47
  else if (meta.nullable && meta.empty())
47
48
  return __assign({ type: "null" }, attribute);
48
49
  var union = [];
50
+ if (meta.nullable && options.purpose !== "swagger")
51
+ union.push(__assign(__assign({}, attribute), { type: "null" }));
52
+ var insert = meta.nullable && options.purpose === "swagger"
53
+ ? function (significant) {
54
+ return union.push(__assign(__assign({}, significant), { nullable: true }));
55
+ }
56
+ : function (schema) { return union.push(schema); };
49
57
  if (meta.resolved !== null) {
50
58
  var resolved = (0, exports.application_schema)(options)(blockNever)(components)(meta.resolved)(attribute);
51
59
  if (resolved !== null)
52
60
  union.push(resolved);
53
61
  }
54
62
  if (meta.templates.length && AtomicPredicator_1.AtomicPredicator.template(meta))
55
- union.push((0, application_templates_1.application_templates)(meta)(attribute));
63
+ insert((0, application_templates_1.application_templates)(meta)(attribute));
56
64
  try {
57
- for (var _j = __values(meta.constants), _k = _j.next(); !_k.done; _k = _j.next()) {
58
- var constant = _k.value;
65
+ for (var _h = __values(meta.constants), _j = _h.next(); !_j.done; _j = _h.next()) {
66
+ var constant = _j.value;
59
67
  if (constant.type === "bigint")
60
68
  throw new Error(NO_BIGINT);
61
69
  else if ((constant.type === "string" && meta.templates.length) ||
62
70
  AtomicPredicator_1.AtomicPredicator.constant(meta)(constant.type) === false)
63
71
  continue;
64
72
  else
65
- union.push((0, application_constant_1.application_constant)(constant)({
66
- nullable: meta.nullable,
67
- attribute: attribute,
68
- }));
73
+ insert((0, application_constant_1.application_constant)(constant)(attribute));
69
74
  }
70
75
  }
71
76
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
72
77
  finally {
73
78
  try {
74
- if (_k && !_k.done && (_a = _j.return)) _a.call(_j);
79
+ if (_j && !_j.done && (_a = _h.return)) _a.call(_h);
75
80
  }
76
81
  finally { if (e_1) throw e_1.error; }
77
82
  }
78
83
  try {
79
- for (var _l = __values(meta.atomics), _m = _l.next(); !_m.done; _m = _l.next()) {
80
- var type = _m.value;
84
+ for (var _k = __values(meta.atomics), _l = _k.next(); !_l.done; _l = _k.next()) {
85
+ var type = _l.value;
81
86
  if (type === "bigint")
82
87
  throw new Error(NO_BIGINT);
83
88
  else if (AtomicPredicator_1.AtomicPredicator.atomic(meta)(type) === false)
84
89
  continue;
85
90
  else
86
- union.push(type === "string"
87
- ? (0, application_string_1.application_string)(meta, attribute)
91
+ insert(type === "string"
92
+ ? (0, application_string_1.application_string)(meta)(attribute)
88
93
  : type === "boolean"
89
- ? (0, application_boolean_1.application_boolean)({
90
- nullable: meta.nullable,
91
- attribute: attribute,
92
- })
93
- : (0, application_number_1.application_number)({
94
- nullable: meta.nullable,
95
- attribute: attribute,
96
- }));
94
+ ? (0, application_boolean_1.application_boolean)(attribute)
95
+ : (0, application_number_1.application_number)(attribute));
97
96
  }
98
97
  }
99
98
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
100
99
  finally {
101
100
  try {
102
- if (_m && !_m.done && (_b = _l.return)) _b.call(_l);
101
+ if (_l && !_l.done && (_b = _k.return)) _b.call(_k);
103
102
  }
104
103
  finally { if (e_2) throw e_2.error; }
105
104
  }
106
105
  try {
107
- for (var _o = __values(meta.arrays.values()), _p = _o.next(); !_p.done; _p = _o.next()) {
108
- var schema = _p.value;
109
- union.push((0, application_array_1.application_array)(options)(components)()(schema)({
110
- nullable: meta.nullable,
111
- attribute: attribute,
112
- }));
106
+ for (var _m = __values(meta.arrays.values()), _o = _m.next(); !_o.done; _o = _m.next()) {
107
+ var schema = _o.value;
108
+ insert((0, application_array_1.application_array)(options)(components)()(schema)(attribute));
113
109
  }
114
110
  }
115
111
  catch (e_3_1) { e_3 = { error: e_3_1 }; }
116
112
  finally {
117
113
  try {
118
- if (_p && !_p.done && (_c = _o.return)) _c.call(_o);
114
+ if (_o && !_o.done && (_c = _m.return)) _c.call(_m);
119
115
  }
120
116
  finally { if (e_3) throw e_3.error; }
121
117
  }
122
118
  try {
123
- for (var _q = __values(meta.tuples), _r = _q.next(); !_r.done; _r = _q.next()) {
124
- var items = _r.value;
125
- var tuple = (0, application_tuple_1.application_tuple)(options)(components)(items)({
126
- nullable: meta.nullable,
127
- attribute: attribute,
128
- });
119
+ for (var _p = __values(meta.tuples), _q = _p.next(); !_q.done; _q = _p.next()) {
120
+ var items = _q.value;
121
+ var tuple = (0, application_tuple_1.application_tuple)(options)(components)(items)(attribute);
129
122
  if (options.purpose === "swagger" && items.length === 0)
130
123
  throw new Error("Error on typia.application(): swagger does not support zero length tuple type.");
131
124
  else if (options.purpose === "ajv" &&
132
125
  !((_g = items[items.length - 1]) === null || _g === void 0 ? void 0 : _g.rest))
133
- union.push(tuple);
126
+ insert(tuple);
134
127
  else {
135
128
  var merged = items.reduce(function (x, y) {
136
129
  return Metadata_1.Metadata.merge(x, y);
137
130
  });
138
- union.push((0, application_array_1.application_array)(options)(components)(tuple)(merged)({
139
- nullable: (_h = merged === null || merged === void 0 ? void 0 : merged.nullable) !== null && _h !== void 0 ? _h : false,
140
- attribute: attribute,
141
- }));
131
+ insert((0, application_array_1.application_array)(options)(components)(tuple)(merged)(attribute));
142
132
  }
143
133
  }
144
134
  }
145
135
  catch (e_4_1) { e_4 = { error: e_4_1 }; }
146
136
  finally {
147
137
  try {
148
- if (_r && !_r.done && (_d = _q.return)) _d.call(_q);
138
+ if (_q && !_q.done && (_d = _p.return)) _d.call(_p);
149
139
  }
150
140
  finally { if (e_4) throw e_4.error; }
151
141
  }
152
142
  try {
153
- for (var _s = __values(meta.natives), _t = _s.next(); !_t.done; _t = _s.next()) {
154
- var native = _t.value;
143
+ for (var _r = __values(meta.natives), _s = _r.next(); !_s.done; _s = _r.next()) {
144
+ var native = _s.value;
155
145
  if (AtomicPredicator_1.AtomicPredicator.native(native))
156
- union.push(native === "String"
157
- ? (0, application_string_1.application_string)(meta, attribute)
146
+ insert(native === "String"
147
+ ? (0, application_string_1.application_string)(meta)(attribute)
158
148
  : native === "Boolean"
159
- ? (0, application_boolean_1.application_boolean)({
160
- nullable: meta.nullable,
161
- attribute: attribute,
162
- })
163
- : (0, application_number_1.application_number)({
164
- nullable: meta.nullable,
165
- attribute: attribute,
166
- }));
149
+ ? (0, application_boolean_1.application_boolean)(attribute)
150
+ : (0, application_number_1.application_number)(attribute));
167
151
  else
168
152
  union.push((0, application_native_1.application_native)(options)(components)(native)({
169
153
  nullable: meta.nullable,
@@ -174,7 +158,7 @@ var application_schema = function (options) {
174
158
  catch (e_5_1) { e_5 = { error: e_5_1 }; }
175
159
  finally {
176
160
  try {
177
- if (_t && !_t.done && (_e = _s.return)) _e.call(_s);
161
+ if (_s && !_s.done && (_e = _r.return)) _e.call(_r);
178
162
  }
179
163
  finally { if (e_5) throw e_5.error; }
180
164
  }
@@ -189,22 +173,18 @@ var application_schema = function (options) {
189
173
  attribute: attribute,
190
174
  }));
191
175
  try {
192
- for (var _u = __values(meta.objects), _v = _u.next(); !_v.done; _v = _u.next()) {
193
- var obj = _v.value;
194
- var key = obj.name + (meta.nullable ? ".Nullable" : "");
195
- (0, application_object_1.application_object)(options)(components)(obj)({
196
- key: key,
197
- nullable: meta.nullable,
198
- });
176
+ for (var _t = __values(meta.objects), _u = _t.next(); !_u.done; _u = _t.next()) {
177
+ var obj = _u.value;
178
+ var key = (0, application_object_1.application_object)(options)(components)(obj)(meta.nullable);
199
179
  union.push((options.purpose === "ajv" && obj.recursive
200
180
  ? recursive
201
- : reference)("".concat(options.prefix, "/").concat(key), attribute));
181
+ : reference)("".concat(JSON_SCHEMA_PREFIX_1.JSON_SCHEMA_PREFIX, "/").concat(key), attribute));
202
182
  }
203
183
  }
204
184
  catch (e_6_1) { e_6 = { error: e_6_1 }; }
205
185
  finally {
206
186
  try {
207
- if (_v && !_v.done && (_f = _u.return)) _f.call(_u);
187
+ if (_u && !_u.done && (_f = _t.return)) _f.call(_t);
208
188
  }
209
189
  finally { if (e_6) throw e_6.error; }
210
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAmD;AAKnD,gEAA+D;AAC/D,yDAAwD;AACxD,6DAA4D;AAC5D,+DAA8D;AAC9D,2DAA0D;AAC1D,2DAA0D;AAC1D,2DAA0D;AAC1D,2DAA0D;AAC1D,iEAAgE;AAChE,yDAAwD;AAKjD,IAAM,kBAAkB,GAC3B,UAAC,OAAuC;IACxC,OAAA,UAA6B,UAAsB;QACnD,OAAA,UAAC,UAA2B;YAC5B,OAAA,UAAC,IAAc;gBACf,OAAA,UACI,SAAiC;;;oBAGjC,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI;wBACjB,6BACO,SAAS,KACZ,IAAI,EAAE,SAAS,IACjB;yBACD,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;wBAClC,kBAAS,IAAI,EAAE,MAAM,IAAK,SAAS,EAAG;oBAK1C,IAAM,KAAK,GAAkB,EAAE,CAAC;oBAGhC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;wBACxB,IAAM,QAAQ,GAAG,IAAA,0BAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CACpD,UAAU,CACb,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC;wBAC5B,IAAI,QAAQ,KAAK,IAAI;4BAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC/C;oBAGD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,mCAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACxD,KAAK,CAAC,IAAI,CAAC,IAAA,6CAAqB,EAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;;wBACvD,KAAuB,IAAA,KAAA,SAAA,IAAI,CAAC,SAAS,CAAA,gBAAA;4BAAhC,IAAM,QAAQ,WAAA;4BACf,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ;gCAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;iCACtD,IACD,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gCACrD,mCAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK;gCAExD,SAAS;;gCAET,KAAK,CAAC,IAAI,CACN,IAAA,2CAAoB,EAAC,QAAQ,CAAC,CAAC;oCAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,SAAS,WAAA;iCACZ,CAAC,CACL,CAAC;yBAAA;;;;;;;;;;wBACV,KAAmB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;4BAA1B,IAAM,IAAI,WAAA;4BACX,IAAI,IAAI,KAAK,QAAQ;gCAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;iCAC7C,IAAI,mCAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK;gCAAE,SAAS;;gCAE7D,KAAK,CAAC,IAAI,CACN,IAAI,KAAK,QAAQ;oCACb,CAAC,CAAC,IAAA,uCAAkB,EAAC,IAAI,EAAE,SAAS,CAAC;oCACrC,CAAC,CAAC,IAAI,KAAK,SAAS;wCACpB,CAAC,CAAC,IAAA,yCAAmB,EAAC;4CAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;4CACvB,SAAS,WAAA;yCACZ,CAAC;wCACJ,CAAC,CAAC,IAAA,uCAAkB,EAAC;4CACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;4CACvB,SAAS,WAAA;yCACZ,CAAC,CACX,CAAC;yBAAA;;;;;;;;;;wBAGV,KAAqB,IAAA,KAAA,SAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAA,gBAAA;4BAApC,IAAM,MAAM,WAAA;4BACb,KAAK,CAAC,IAAI,CACN,IAAA,qCAAiB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;gCAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ;gCACvB,SAAS,WAAA;6BACZ,CAAC,CACL,CAAC;yBAAA;;;;;;;;;;wBAGN,KAAoB,IAAA,KAAA,SAAA,IAAI,CAAC,MAAM,CAAA,gBAAA,4BAAE;4BAA5B,IAAM,KAAK,WAAA;4BACZ,IAAM,KAAK,GAAuB,IAAA,qCAAiB,EAAC,OAAO,CAAC,CACxD,UAAU,CACb,CAAC,KAAK,CAAC,CAAC;gCACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;gCACvB,SAAS,WAAA;6BACZ,CAAC,CAAC;4BACH,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gCACnD,MAAM,IAAI,KAAK,CACX,gFAAgF,CACnF,CAAC;iCACD,IACD,OAAO,CAAC,OAAO,KAAK,KAAK;gCACzB,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,0CAAE,IAAI,CAAA;gCAE9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iCACjB;gCAED,IAAM,MAAM,GAAa,KAAK,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC;oCACvC,OAAA,mBAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gCAApB,CAAoB,CACvB,CAAC;gCACF,KAAK,CAAC,IAAI,CACN,IAAA,qCAAiB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;oCAClD,QAAQ,EAAE,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,mCAAI,KAAK;oCACnC,SAAS,WAAA;iCACZ,CAAC,CACL,CAAC;6BACL;yBACJ;;;;;;;;;;wBAGD,KAAqB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA;4BAA5B,IAAM,MAAM,WAAA;4BACb,IAAI,mCAAgB,CAAC,MAAM,CAAC,MAAM,CAAC;gCAC/B,KAAK,CAAC,IAAI,CACN,MAAM,KAAK,QAAQ;oCACf,CAAC,CAAC,IAAA,uCAAkB,EAAC,IAAI,EAAE,SAAS,CAAC;oCACrC,CAAC,CAAC,MAAM,KAAK,SAAS;wCACtB,CAAC,CAAC,IAAA,yCAAmB,EAAC;4CAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;4CACvB,SAAS,WAAA;yCACZ,CAAC;wCACJ,CAAC,CAAC,IAAA,uCAAkB,EAAC;4CACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;4CACvB,SAAS,WAAA;yCACZ,CAAC,CACX,CAAC;;gCAEF,KAAK,CAAC,IAAI,CACN,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;oCAC5C,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,SAAS,WAAA;iCACZ,CAAC,CACL,CAAC;yBAAA;;;;;;;;;oBACV,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;wBAChB,KAAK,CAAC,IAAI,CACN,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC;4BAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,SAAS,WAAA;yBACZ,CAAC,CACL,CAAC;oBACN,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;wBAChB,KAAK,CAAC,IAAI,CACN,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC;4BAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ;4BACvB,SAAS,WAAA;yBACZ,CAAC,CACL,CAAC;;wBAGN,KAAkB,IAAA,KAAA,SAAA,IAAI,CAAC,OAAO,CAAA,gBAAA,4BAAE;4BAA3B,IAAM,GAAG,WAAA;4BACV,IAAM,GAAG,GAAW,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;4BAClE,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC;gCACzC,GAAG,KAAA;gCACH,QAAQ,EAAE,IAAI,CAAC,QAAQ;6BAC1B,CAAC,CAAC;4BACH,KAAK,CAAC,IAAI,CACN,CAAC,OAAO,CAAC,OAAO,KAAK,KAAK,IAAI,GAAG,CAAC,SAAS;gCACvC,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,SAAS,CAAC,CAAC,UAAG,OAAO,CAAC,MAAM,cAAI,GAAG,CAAE,EAAE,SAAS,CAAC,CAC1D,CAAC;yBACL;;;;;;;;;oBAKD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAClB,OAAO,UAAU,KAAK,IAAI;4BACtB,CAAC,CAAC,IAAK;4BACP,CAAC,uBACQ,SAAS,KACZ,IAAI,EAAE,SAAS,GAClB,CAAC;yBACP,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;wBAAE,OAAO,KAAK,CAAC,CAAC,CAAE,CAAC;oBAC9C,kBAAS,KAAK,EAAE,KAAK,IAAK,SAAS,EAAG;gBAC1C,CAAC;YApKD,CAoKC;QArKD,CAqKC;IAtKD,CAsKC;AAvKD,CAuKC,CAAC;AAzKO,QAAA,kBAAkB,sBAyKzB;AAKN,IAAM,SAAS,GAAG,UACd,IAAY,EACZ,SAAiC,IACR,OAAA,YACzB,IAAI,MAAA,IACD,SAAS,EACd,EAH2B,CAG3B,CAAC;AAKH,IAAM,SAAS,GAAG,UACd,aAAqB,EACrB,SAAiC,IACC,OAAA,YAClC,aAAa,eAAA,IACV,SAAS,EACd,EAHoC,CAGpC,CAAC;AAEH,IAAM,SAAS,GAAG,2DAA2D,CAAC"}
1
+ {"version":3,"file":"application_schema.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_schema.ts"],"names":[],"mappings":"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"}
@@ -24,35 +24,37 @@ var __values = (this && this.__values) || function(o) {
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
25
  exports.application_string = void 0;
26
26
  var application_default_string_1 = require("./application_default_string");
27
- var application_string = function (meta, attribute) {
28
- var e_1, _a;
29
- var _b, _c, _d;
30
- var output = __assign({ type: "string", nullable: meta.nullable }, attribute);
31
- var formatJsdocTag = (_b = attribute["x-typia-jsDocTags"]) === null || _b === void 0 ? void 0 : _b.find(function (tag) { return tag.name === "format"; });
32
- if ((_c = formatJsdocTag === null || formatJsdocTag === void 0 ? void 0 : formatJsdocTag.text) === null || _c === void 0 ? void 0 : _c.length)
33
- output.format = formatJsdocTag === null || formatJsdocTag === void 0 ? void 0 : formatJsdocTag.text.map(function (t) { return t.text; }).join(" ");
34
- try {
35
- for (var _e = __values((_d = attribute["x-typia-metaTags"]) !== null && _d !== void 0 ? _d : []), _f = _e.next(); !_f.done; _f = _e.next()) {
36
- var tag = _f.value;
37
- if (tag.kind === "minLength")
38
- output.minLength = tag.value;
39
- else if (tag.kind === "maxLength")
40
- output.maxLength = tag.value;
41
- else if (tag.kind === "format")
42
- output.format = emendFormat(tag.value);
43
- else if (tag.kind === "pattern")
44
- output.pattern = tag.value;
45
- }
46
- }
47
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
48
- finally {
27
+ var application_string = function (meta) {
28
+ return function (attribute) {
29
+ var e_1, _a;
30
+ var _b, _c, _d;
31
+ var output = __assign(__assign({}, attribute), { type: "string" });
32
+ var formatJsdocTag = (_b = attribute["x-typia-jsDocTags"]) === null || _b === void 0 ? void 0 : _b.find(function (tag) { return tag.name === "format"; });
33
+ if ((_c = formatJsdocTag === null || formatJsdocTag === void 0 ? void 0 : formatJsdocTag.text) === null || _c === void 0 ? void 0 : _c.length)
34
+ output.format = formatJsdocTag === null || formatJsdocTag === void 0 ? void 0 : formatJsdocTag.text.map(function (t) { return t.text; }).join(" ");
49
35
  try {
50
- if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
36
+ for (var _e = __values((_d = attribute["x-typia-metaTags"]) !== null && _d !== void 0 ? _d : []), _f = _e.next(); !_f.done; _f = _e.next()) {
37
+ var tag = _f.value;
38
+ if (tag.kind === "minLength")
39
+ output.minLength = tag.value;
40
+ else if (tag.kind === "maxLength")
41
+ output.maxLength = tag.value;
42
+ else if (tag.kind === "format")
43
+ output.format = emendFormat(tag.value);
44
+ else if (tag.kind === "pattern")
45
+ output.pattern = tag.value;
46
+ }
47
+ }
48
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
49
+ finally {
50
+ try {
51
+ if (_f && !_f.done && (_a = _e.return)) _a.call(_e);
52
+ }
53
+ finally { if (e_1) throw e_1.error; }
51
54
  }
52
- finally { if (e_1) throw e_1.error; }
53
- }
54
- output.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(output);
55
- return output;
55
+ output.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(output);
56
+ return output;
57
+ };
56
58
  };
57
59
  exports.application_string = application_string;
58
60
  var emendFormat = function (tag) {
@@ -1 +1 @@
1
- {"version":3,"file":"application_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_string.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2EAA0E;AAKnE,IAAM,kBAAkB,GAAG,UAC9B,IAAc,EACd,SAAiC;;;IAEjC,IAAM,MAAM,cACR,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,IACpB,SAAS,CACf,CAAC;IAGF,IAAM,cAAc,GAAG,MAAA,SAAS,CAAC,mBAAmB,CAAC,0CAAE,IAAI,CACvD,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,QAAQ,EAArB,CAAqB,CACjC,CAAC;IACF,IAAI,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,0CAAE,MAAM;QAC5B,MAAM,CAAC,MAAM,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;;QAGtE,KAAkB,IAAA,KAAA,SAAA,MAAA,SAAS,CAAC,kBAAkB,CAAC,mCAAI,EAAE,CAAA,gBAAA,4BAAE;YAAlD,IAAM,GAAG,WAAA;YAEV,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;gBAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;iBACtD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;gBAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;iBAE3D,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;iBAClE,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;SAC/D;;;;;;;;;IAGD,MAAM,CAAC,OAAO,GAAG,IAAA,uDAA0B,EAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;IAGrE,OAAO,MAAM,CAAC;AAClB,CAAC,CAAC;AAhCW,QAAA,kBAAkB,sBAgC7B;AAEF,IAAM,WAAW,GAAG,UAAC,GAAkC;IACnD,OAAA,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG;AAAtC,CAAsC,CAAC"}
1
+ {"version":3,"file":"application_string.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_string.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIA,2EAA0E;AAKnE,IAAM,kBAAkB,GAC3B,UAAC,IAAc;IACf,OAAA,UAAC,SAAiC;;;QAC9B,IAAM,MAAM,yBACL,SAAS,KACZ,IAAI,EAAE,QAAQ,GACjB,CAAC;QAGF,IAAM,cAAc,GAAG,MAAA,SAAS,CAAC,mBAAmB,CAAC,0CAAE,IAAI,CACvD,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,QAAQ,EAArB,CAAqB,CACjC,CAAC;QACF,IAAI,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,0CAAE,MAAM;YAC5B,MAAM,CAAC,MAAM,GAAG,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;;YAGtE,KAAkB,IAAA,KAAA,SAAA,MAAA,SAAS,CAAC,kBAAkB,CAAC,mCAAI,EAAE,CAAA,gBAAA,4BAAE;gBAAlD,IAAM,GAAG,WAAA;gBAEV,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;oBAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;qBACtD,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;oBAAE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC;qBAE3D,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;oBAC1B,MAAM,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;qBACtC,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;oBAAE,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;aAC/D;;;;;;;;;QAGD,MAAM,CAAC,OAAO,GAAG,IAAA,uDAA0B,EAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QAGrE,OAAO,MAAM,CAAC;IAClB,CAAC;AA7BD,CA6BC,CAAC;AA/BO,QAAA,kBAAkB,sBA+BzB;AAEN,IAAM,WAAW,GAAG,UAAC,GAAkC;IACnD,OAAA,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG;AAAtC,CAAsC,CAAC"}
@@ -16,7 +16,7 @@ var application_default_string_1 = require("./application_default_string");
16
16
  var metadata_to_pattern_1 = require("./metadata_to_pattern");
17
17
  var application_templates = function (meta) {
18
18
  return function (attribute) {
19
- var output = __assign({ type: "string", nullable: meta.nullable }, attribute);
19
+ var output = __assign({ type: "string" }, attribute);
20
20
  output.pattern = (0, metadata_to_pattern_1.metadata_to_pattern)(true)(meta);
21
21
  output.default = (0, application_default_string_1.application_default_string)(meta)(attribute)(output);
22
22
  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,GAC9B,UAAC,IAAc;IACf,OAAA,UAAC,SAAiC;QAE9B,IAAM,MAAM,cACR,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,IACpB,SAAS,CACf,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;IAClB,CAAC;AAdD,CAcC,CAAC;AAhBO,QAAA,qBAAqB,yBAgB5B"}
1
+ {"version":3,"file":"application_templates.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_templates.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,2EAA0E;AAC1E,6DAA4D;AAKrD,IAAM,qBAAqB,GAC9B,UAAC,IAAc;IACf,OAAA,UAAC,SAAiC;QAE9B,IAAM,MAAM,cACR,IAAI,EAAE,QAAQ,IACX,SAAS,CACf,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;IAClB,CAAC;AAbD,CAaC,CAAC;AAfO,QAAA,qBAAqB,yBAe5B"}
@@ -16,10 +16,10 @@ var application_schema_1 = require("./application_schema");
16
16
  var application_tuple = function (options) {
17
17
  return function (components) {
18
18
  return function (items) {
19
- return function (props) { return (__assign({ type: "array", items: items.map(function (meta, i) {
19
+ return function (attribute) { return (__assign({ type: "array", items: items.map(function (meta, i) {
20
20
  var _a;
21
- return (0, application_schema_1.application_schema)(options)(false)(components)((_a = meta.rest) !== null && _a !== void 0 ? _a : meta)(__assign(__assign({}, props.attribute), { "x-typia-rest": i === items.length - 1 ? meta.rest !== null : undefined, "x-typia-required": meta.required, "x-typia-optional": meta.optional }));
22
- }), nullable: props.nullable }, props.attribute)); };
21
+ 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 === items.length - 1 ? meta.rest !== null : undefined, "x-typia-required": meta.required, "x-typia-optional": meta.optional }));
22
+ }) }, attribute)); };
23
23
  };
24
24
  };
25
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,2DAA0D;AAKnD,IAAM,iBAAiB,GAC1B,UAAC,OAAuC;IACxC,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAsB;YACvB,OAAA,UAAC,KAGA,IAAyB,OAAA,YACtB,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;oBACrB,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,uBAC1D,KAAK,CAAC,SAAS,KAClB,cAAc,EACV,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,EAC3D,kBAAkB,EAAE,IAAI,CAAC,QAAQ,EACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IACnC,CAAA;iBAAA,CACL,EACD,QAAQ,EAAE,KAAK,CAAC,QAAQ,IACrB,KAAK,CAAC,SAAS,EACpB,EAbwB,CAaxB;QAhBF,CAgBE;IAjBF,CAiBE;AAlBF,CAkBE,CAAC;AApBM,QAAA,iBAAiB,qBAoBvB"}
1
+ {"version":3,"file":"application_tuple.js","sourceRoot":"","sources":["../../../src/programmers/internal/application_tuple.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,2DAA0D;AAKnD,IAAM,iBAAiB,GAC1B,UAAC,OAAuC;IACxC,OAAA,UAAC,UAA2B;QAC5B,OAAA,UAAC,KAAsB;YACvB,OAAA,UAAC,SAAiC,IAAyB,OAAA,YACvD,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI,EAAE,CAAC;;oBACrB,OAAA,IAAA,uCAAkB,EAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,CAAC,uBAC1D,SAAS,KACZ,cAAc,EACV,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,EAC3D,kBAAkB,EAAE,IAAI,CAAC,QAAQ,EACjC,kBAAkB,EAAE,IAAI,CAAC,QAAQ,IACnC,CAAA;iBAAA,CACL,IACE,SAAS,EACd,EAZyD,CAYzD;QAZF,CAYE;IAbF,CAaE;AAdF,CAcE,CAAC;AAhBM,QAAA,iBAAiB,qBAgBvB"}
@@ -4,5 +4,8 @@ export interface IJsonApplication {
4
4
  schemas: IJsonSchema[];
5
5
  components: IJsonComponents;
6
6
  purpose: "swagger" | "ajv";
7
+ /**
8
+ * @deprecated Always "#/components/schemas"
9
+ */
7
10
  prefix: string;
8
11
  }
@@ -5,10 +5,16 @@ export interface IJsonComponents {
5
5
  }
6
6
  export declare namespace IJsonComponents {
7
7
  interface IObject {
8
+ /**
9
+ * Used only when ajv mode.
10
+ */
8
11
  $id?: string;
9
12
  $recursiveAnchor?: boolean;
10
13
  type: "object";
11
- nullable: boolean;
14
+ /**
15
+ * Only when swagger mode.
16
+ */
17
+ nullable?: boolean;
12
18
  properties: Record<string, IJsonSchema>;
13
19
  patternProperties?: Record<string, IJsonSchema>;
14
20
  additionalProperties?: IJsonSchema;
@@ -83,7 +83,10 @@ export declare namespace IJsonSchema {
83
83
  }
84
84
  interface ISignificant<Literal extends string> extends IAttribute {
85
85
  type: Literal;
86
- nullable: boolean;
86
+ /**
87
+ * Only when swagger mode.
88
+ */
89
+ nullable?: boolean;
87
90
  }
88
91
  interface IAttribute {
89
92
  deprecated?: boolean;
@@ -28,11 +28,6 @@ var ApplicationTransformer;
28
28
  if (types.some(function (t) { return t.isTypeParameter(); }))
29
29
  throw new Error(GENERIC_ARGUMENT);
30
30
  var purpose = get_parameter(checker, "Purpose", expression.typeArguments[1], function (str) { return str === "swagger" || str === "ajv"; }, function () { return "swagger"; });
31
- var prefix = get_parameter(checker, "Prefix", expression.typeArguments[2], function () { return true; }, function () {
32
- return purpose === "swagger"
33
- ? "#/components/schemas"
34
- : "components#/schemas";
35
- });
36
31
  var collection = new MetadataCollection_1.MetadataCollection({
37
32
  replace: MetadataCollection_1.MetadataCollection.replace,
38
33
  });
@@ -48,7 +43,6 @@ var ApplicationTransformer;
48
43
  });
49
44
  var app = ApplicationProgrammer_1.ApplicationProgrammer.write({
50
45
  purpose: purpose,
51
- prefix: prefix,
52
46
  })(metadatas);
53
47
  return LiteralFactory_1.LiteralFactory.generate(app);
54
48
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/ApplicationTransformer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/ApplicationTransformer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "typia",
3
- "version": "3.8.5-dev.20230510",
3
+ "version": "3.8.6-dev.20230511",
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/module.ts CHANGED
@@ -488,7 +488,6 @@ export const customValidators: CustomValidatorMap = {
488
488
  *
489
489
  * @template Types Tuple of target types
490
490
  * @template Purpose Purpose of the JSON schema`
491
- * @template Prefix Prefix of the JSON components referenced by `$ref` tag
492
491
  * @return JSON schema application
493
492
  *
494
493
  * @author Jeongho Nam - https://github.com/samchon
@@ -512,17 +511,13 @@ export function application(): never;
512
511
  *
513
512
  * @template Types Tuple of target types
514
513
  * @template Purpose Purpose of the JSON schema
515
- * @template Prefix Prefix of the JSON components referenced by `$ref` tag
516
514
  * @return JSON schema application
517
515
  *
518
516
  * @author Jeongho Nam - https://github.com/samchon
519
517
  */
520
518
  export function application<
521
519
  Types extends unknown[],
522
- Purpose extends "swagger" | "ajv" = "swagger",
523
- Prefix extends string = Purpose extends "swagger"
524
- ? "#/components/schemas"
525
- : "components#/schemas",
520
+ Purpose extends "ajv" | "swagger" = "swagger",
526
521
  >(): IJsonApplication;
527
522
 
528
523
  /**
@@ -6,12 +6,8 @@ import { IJsonSchema } from "../schemas/IJsonSchema";
6
6
  import { application_schema } from "./internal/application_schema";
7
7
 
8
8
  export namespace ApplicationProgrammer {
9
- export const AJV_PREFIX = "components#/schemas";
10
- export const SWAGGER_PREFIX = "#/components/schemas";
11
-
12
9
  export interface IOptions {
13
- purpose: "swagger" | "ajv";
14
- prefix: string;
10
+ purpose: "ajv" | "swagger";
15
11
  }
16
12
 
17
13
  /**
@@ -22,9 +18,6 @@ export namespace ApplicationProgrammer {
22
18
  const purpose: "swagger" | "ajv" = options?.purpose ?? "swagger";
23
19
  return {
24
20
  purpose,
25
- prefix:
26
- options?.prefix ||
27
- (purpose === "swagger" ? SWAGGER_PREFIX : AJV_PREFIX),
28
21
  };
29
22
  };
30
23
  }
@@ -57,6 +50,7 @@ export namespace ApplicationProgrammer {
57
50
  }),
58
51
  components,
59
52
  ...fullOptions,
53
+ prefix: "#/components/schemas",
60
54
  };
61
55
  };
62
56
  }
@@ -0,0 +1 @@
1
+ export const JSON_SCHEMA_PREFIX = "#/components/schemas";
@@ -13,23 +13,19 @@ export const application_array =
13
13
  (components: IJsonComponents) =>
14
14
  (tuple?: IJsonSchema.ITuple) =>
15
15
  (metadata: Metadata) =>
16
- (props: {
17
- nullable: boolean;
18
- attribute: IJsonSchema.IAttribute;
19
- }): IJsonSchema.IArray => {
16
+ (attribute: IJsonSchema.IAttribute): IJsonSchema.IArray => {
20
17
  // SCHEMA
21
18
  const output: IJsonSchema.IArray = {
19
+ ...attribute,
22
20
  type: "array",
23
21
  items: application_schema(options)(false)(components)(metadata)(
24
- props.attribute,
22
+ attribute,
25
23
  ),
26
- nullable: props.nullable,
27
24
  "x-typia-tuple": tuple,
28
- ...props.attribute,
29
25
  };
30
26
 
31
27
  // RANGE
32
- for (const tag of props.attribute["x-typia-metaTags"] || [])
28
+ for (const tag of attribute["x-typia-metaTags"] ?? [])
33
29
  if (tag.kind === "minItems") output.minItems = tag.value;
34
30
  else if (tag.kind === "maxItems") output.maxItems = tag.value;
35
31
  return output;
@@ -4,14 +4,12 @@ import { application_default } from "./application_default";
4
4
  /**
5
5
  * @internal
6
6
  */
7
- export const application_boolean = (props: {
8
- nullable: boolean;
9
- attribute: IJsonSchema.IAttribute;
10
- }): IJsonSchema.IBoolean => ({
11
- type: "boolean",
12
- nullable: props.nullable,
13
- ...props.attribute,
14
- default: application_default(props.attribute)(
7
+ export const application_boolean = (
8
+ attribute: IJsonSchema.IAttribute,
9
+ ): IJsonSchema.IBoolean => ({
10
+ ...attribute,
11
+ default: application_default(attribute)(
15
12
  (def) => def === "true" || def === "false",
16
13
  )((str) => Boolean(str)),
14
+ type: "boolean",
17
15
  });
@@ -8,15 +8,11 @@ import { application_default } from "./application_default";
8
8
  */
9
9
  export const application_constant =
10
10
  (constant: MetadataConstant) =>
11
- (props: {
12
- nullable: boolean;
13
- attribute: IJsonSchema.IAttribute;
14
- }): IJsonSchema.IEnumeration<any> => ({
11
+ (attribute: IJsonSchema.IAttribute): IJsonSchema.IEnumeration<any> => ({
12
+ ...attribute,
15
13
  type: constant.type,
16
14
  enum: constant.values as any,
17
- nullable: props.nullable,
18
- ...props.attribute,
19
- default: application_default(props.attribute)((def) =>
15
+ default: application_default(attribute)((def) =>
20
16
  constant.values.some((v) => v.toString() === def),
21
17
  )(
22
18
  constant.type === "string"
@@ -7,7 +7,7 @@ export const application_default =
7
7
  (attribute: IJsonSchema.IAttribute) =>
8
8
  (pred: (value: string) => boolean) =>
9
9
  <T>(caster: (str: string) => T): T | undefined => {
10
- const defaults = (attribute["x-typia-jsDocTags"] || []).filter(
10
+ const defaults = (attribute["x-typia-jsDocTags"] ?? []).filter(
11
11
  (tag) => tag.name === "default",
12
12
  );
13
13
  for (const def of defaults)