typia 5.5.0-dev.20240304 → 5.5.0-dev.20240306

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 (129) hide show
  1. package/lib/functional.d.ts +329 -0
  2. package/lib/functional.js +99 -234
  3. package/lib/functional.js.map +1 -1
  4. package/lib/http.d.ts +15 -6
  5. package/lib/http.js.map +1 -1
  6. package/lib/json.d.ts +17 -8
  7. package/lib/json.js.map +1 -1
  8. package/lib/misc.d.ts +18 -8
  9. package/lib/misc.js.map +1 -1
  10. package/lib/module.d.ts +17 -0
  11. package/lib/module.js.map +1 -1
  12. package/lib/notations.d.ts +12 -0
  13. package/lib/notations.js.map +1 -1
  14. package/lib/programmers/AssertProgrammer.d.ts +1 -0
  15. package/lib/programmers/AssertProgrammer.js +5 -2
  16. package/lib/programmers/AssertProgrammer.js.map +1 -1
  17. package/lib/programmers/RandomProgrammer.js +3 -1
  18. package/lib/programmers/RandomProgrammer.js.map +1 -1
  19. package/lib/programmers/TypiaProgrammer.js +1 -8
  20. package/lib/programmers/TypiaProgrammer.js.map +1 -1
  21. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.d.ts +8 -2
  22. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +22 -16
  23. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  24. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.d.ts +1 -1
  25. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +8 -4
  26. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  27. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.d.ts +1 -1
  28. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +8 -7
  29. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  30. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.d.ts +6 -0
  31. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js +54 -0
  32. package/lib/programmers/functional/FunctionalIsFunctionProgrammer.js.map +1 -0
  33. package/lib/programmers/functional/FunctionalIsParametersProgrammer.d.ts +7 -0
  34. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js +79 -0
  35. package/lib/programmers/functional/FunctionalIsParametersProgrammer.js.map +1 -0
  36. package/lib/programmers/functional/FunctionalIsReturnProgrammer.d.ts +10 -0
  37. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js +71 -0
  38. package/lib/programmers/functional/FunctionalIsReturnProgrammer.js.map +1 -0
  39. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.d.ts +10 -0
  40. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js +61 -0
  41. package/lib/programmers/functional/FunctionalValidateFunctionProgrammer.js.map +1 -0
  42. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.d.ts +7 -0
  43. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js +104 -0
  44. package/lib/programmers/functional/FunctionalValidateParametersProgrammer.js.map +1 -0
  45. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.d.ts +10 -0
  46. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js +74 -0
  47. package/lib/programmers/functional/FunctionalValidateReturnProgrammer.js.map +1 -0
  48. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +3 -1
  49. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -1
  50. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +3 -1
  51. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  52. package/lib/programmers/http/HttpAssertQueryProgrammer.js +3 -1
  53. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  54. package/lib/programmers/http/HttpFormDataProgrammer.js +3 -1
  55. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
  56. package/lib/programmers/http/HttpHeadersProgrammer.js +3 -1
  57. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  58. package/lib/programmers/http/HttpIsFormDataProgrammer.js +3 -1
  59. package/lib/programmers/http/HttpIsFormDataProgrammer.js.map +1 -1
  60. package/lib/programmers/http/HttpIsHeadersProgrammer.js +3 -1
  61. package/lib/programmers/http/HttpIsHeadersProgrammer.js.map +1 -1
  62. package/lib/programmers/http/HttpIsQueryProgrammer.js +3 -1
  63. package/lib/programmers/http/HttpIsQueryProgrammer.js.map +1 -1
  64. package/lib/programmers/http/HttpQueryProgrammer.js +3 -1
  65. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  66. package/lib/programmers/json/JsonAssertParseProgrammer.js +3 -1
  67. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  68. package/lib/programmers/json/JsonIsParseProgrammer.js +3 -1
  69. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  70. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +3 -1
  71. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  72. package/lib/programmers/misc/MiscCloneProgrammer.js +3 -1
  73. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  74. package/lib/programmers/misc/MiscIsCloneProgrammer.js +3 -1
  75. package/lib/programmers/misc/MiscIsCloneProgrammer.js.map +1 -1
  76. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +3 -1
  77. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  78. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +3 -1
  79. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  80. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +3 -1
  81. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  82. package/lib/programmers/protobuf/ProtobufMessageProgrammer.js +1 -1
  83. package/lib/protobuf.d.ts +8 -0
  84. package/lib/protobuf.js.map +1 -1
  85. package/lib/transformers/CallExpressionTransformer.js +104 -12
  86. package/lib/transformers/CallExpressionTransformer.js.map +1 -1
  87. package/lib/utils/StringUtil/StringUtil.d.ts +1 -0
  88. package/lib/utils/StringUtil/StringUtil.js +7 -1
  89. package/lib/utils/StringUtil/StringUtil.js.map +1 -1
  90. package/package.json +2 -1
  91. package/src/functional.ts +542 -246
  92. package/src/http.ts +15 -6
  93. package/src/json.ts +17 -8
  94. package/src/misc.ts +18 -8
  95. package/src/module.ts +17 -0
  96. package/src/notations.ts +12 -0
  97. package/src/programmers/AssertProgrammer.ts +24 -22
  98. package/src/programmers/RandomProgrammer.ts +12 -4
  99. package/src/programmers/TypiaProgrammer.ts +1 -11
  100. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +64 -55
  101. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +13 -5
  102. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +10 -8
  103. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +45 -0
  104. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +78 -0
  105. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +91 -0
  106. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +91 -0
  107. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +212 -0
  108. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +115 -0
  109. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +12 -4
  110. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +12 -4
  111. package/src/programmers/http/HttpAssertQueryProgrammer.ts +12 -4
  112. package/src/programmers/http/HttpFormDataProgrammer.ts +12 -4
  113. package/src/programmers/http/HttpHeadersProgrammer.ts +12 -4
  114. package/src/programmers/http/HttpIsFormDataProgrammer.ts +12 -4
  115. package/src/programmers/http/HttpIsHeadersProgrammer.ts +12 -4
  116. package/src/programmers/http/HttpIsQueryProgrammer.ts +12 -4
  117. package/src/programmers/http/HttpQueryProgrammer.ts +12 -4
  118. package/src/programmers/json/JsonAssertParseProgrammer.ts +12 -4
  119. package/src/programmers/json/JsonIsParseProgrammer.ts +12 -4
  120. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +12 -4
  121. package/src/programmers/misc/MiscCloneProgrammer.ts +12 -4
  122. package/src/programmers/misc/MiscIsCloneProgrammer.ts +12 -4
  123. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +12 -4
  124. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +12 -4
  125. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +12 -4
  126. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +1 -1
  127. package/src/protobuf.ts +8 -0
  128. package/src/transformers/CallExpressionTransformer.ts +95 -12
  129. package/src/utils/StringUtil/StringUtil.ts +5 -0
package/lib/functional.js CHANGED
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.assertEqualsReturn = exports.assertEqualsParameters = exports.assertEqualsFunction = exports.assertReturn = exports.assertParameters = exports.assertFunction = void 0;
26
+ exports.validateEqualsReturn = exports.validateEqualsParameters = exports.validateEqualsFunction = exports.validateReturn = exports.validateParameters = exports.validateFunction = exports.equalsReturn = exports.equalsParameters = exports.equalsFunction = exports.isReturn = exports.isParameters = exports.isFunction = exports.assertEqualsReturn = exports.assertEqualsParameters = exports.assertEqualsFunction = exports.assertReturn = exports.assertParameters = exports.assertFunction = void 0;
27
27
  var Namespace = __importStar(require("./functional/Namespace"));
28
28
  /**
29
29
  * @internal
@@ -85,239 +85,104 @@ var assertEqualsReturnPure = /** @__PURE__ */ Object.assign(assertEqualsReturn,
85
85
  /** @__PURE__ */ Namespace.assert("functional.assertEqualsReturn"),
86
86
  /** @__PURE__ */ Namespace.functional.functionalAssert());
87
87
  exports.assertEqualsReturn = assertEqualsReturnPure;
88
- // /* -----------------------------------------------------------
89
- // VALIDATIONS
90
- // ----------------------------------------------------------- */
91
- // /**
92
- // * Validates a function.
93
- // *
94
- // * Validates a function, by wrapping the function and checking its parameters and
95
- // * return value through {@link validate} function. If some parameter or return value
96
- // * does not match the expected type, it returns {@link IValidation.IError} typed
97
- // * object. Otherwise there's no type error, it returns {@link IValidation.ISuccess}
98
- // * typed object instead.
99
- // *
100
- // * For reference, {@link IValidation.IError.path} would be a little bit different with
101
- // * individual {@link validate} function. If the {@link IValidation.IError} occurs from
102
- // * some parameter, the path would start from `$input.parameters[number]`. Otherwise
103
- // * the path would start from `$input.return`.
104
- // *
105
- // * - `$input.parameters[0].~`
106
- // * - `$input.return.~`
107
- // *
108
- // * By the way, if what you want is not finding every type errors, but just finding
109
- // * the 1st type error, then use {@link assertFunction} instead. Otherwise, what you
110
- // * want is just validating parameters or return value only, you can use
111
- // * {@link validateParameters} or {@link validateReturn} instead.
112
- // *
113
- // * On the other hand, if you don't want to allow any superfluous properties, utilize
114
- // * {@link validateEqualsFunction} or {@link assertEqualsFunction} instead.
115
- // *
116
- // * @template T Target function type
117
- // * @param func Target function to validate
118
- // * @returns The wrapper function with type validations
119
- // *
120
- // * @author Jeongho Nam - https://github.com/samchon
121
- // */
122
- // function validateFunction<T extends (...args: any[]) => any>(
123
- // func: T,
124
- // ): T extends (...args: infer Arguments) => infer Output
125
- // ? Output extends Promise<infer R>
126
- // ? (...args: Arguments) => Promise<IValidation<R>>
127
- // : (...args: Arguments) => IValidation<Output>
128
- // : never;
129
- // /**
130
- // * @internal
131
- // */
132
- // function validateFunction(): never {
133
- // halt("validateFunction");
134
- // }
135
- // const validateFunctionPure = /** @__PURE__ */ Object.assign<
136
- // typeof validateFunction,
137
- // {}
138
- // >(validateFunction, /** @__PURE__ */ Namespace.validate());
139
- // export { validateFunctionPure as validateFunction };
140
- // /**
141
- // * Validates parameters.
142
- // *
143
- // * Validates a function, by wrapping the function and checking its parameters through
144
- // * {@link validate} function. If some parameter does not match the expected type, it
145
- // * returns {@link IValidation.IError} typed object. Otherwise there's no type error,
146
- // * it returns {@link IValidation.ISuccess} typed object instead.
147
- // *
148
- // * For reference, {@link IValidation.IError.path} would be a little bit different with
149
- // * individual {@link validate} function. If the {@link IValidation.IError} occurs from
150
- // * some parameter, the path would start from `$input.parameters[number]`.
151
- // *
152
- // * By the way, if what you want is not finding every type errors, but just finding
153
- // * the 1st type error, then use {@link assertParameters} instead. Otherwise, what you
154
- // * want is not only validating parameters, but also validating return value, you can
155
- // * use {@link validateFunction} instead.
156
- // *
157
- // * On the other hand, if you don't want to allow any superfluous properties, utilize
158
- // * {@link validateEqualsParameters} or {@link assertEqualsParameters} instead.
159
- // *
160
- // * @template T Target function type
161
- // * @param func Target function to validate
162
- // * @returns The wrapper function with type validations
163
- // *
164
- // * @author Jeongho Nam - https://github.com/samchon
165
- // */
166
- // function validateReturn<T extends (...args: any[]) => any>(
167
- // func: T,
168
- // ): T extends (...args: infer Arguments) => infer Output
169
- // ? Output extends Promise<infer R>
170
- // ? (...args: Arguments) => Promise<IValidation<R>>
171
- // : (...args: Arguments) => IValidation<Output>
172
- // : never;
173
- // /**
174
- // * @internal
175
- // */
176
- // function validateReturn(): never {
177
- // halt("validateReturn");
178
- // }
179
- // const validateReturnPure = /** @__PURE__ */ Object.assign<
180
- // typeof validateReturn,
181
- // {}
182
- // >(validateReturn, /** @__PURE__ */ Namespace.validate());
183
- // export { validateReturnPure as validateReturn };
184
- // /**
185
- // * Validates a function with strict equality.
186
- // *
187
- // * Validates a function with strict equality, by wrapping the function and checking
188
- // * its parameters and return value through {@link validateEquals} function. If some
189
- // * parameter or return value does not match the expected type, it returns
190
- // * {@link IValidation.IError} typed object. Otherwise there's no type error, it
191
- // * returns {@link IValidation.ISuccess} typed object instead.
192
- // *
193
- // * For reference, {@link IValidation.IError.path} would be a little bit different with
194
- // * individual {@link validateEquals} function. If the {@link IValidation.IError} occurs
195
- // * from some parameter, the path would start from `$input.parameters[number]`. Otherwise
196
- // * the path would start from `$input.return`.
197
- // *
198
- // * - `$input.parameters[0].~`
199
- // * - `$input.return.~`
200
- // *
201
- // * By the way, if what you want is not finding every type errors, but just finding
202
- // * the 1st type error, then use {@link assertEqualsFunction} instead. Otherwise, what
203
- // * you want is just validating parameters or return value only, you can use
204
- // * {@link validateEqualsParameters} or {@link validateEqualsReturn} instead.
205
- // *
206
- // * On the other hand, if you want to allow any superfluous properties, utilize
207
- // * {@link validateFunction} or {@link assertFunction} instead.
208
- // *
209
- // * @template T Target function type
210
- // * @param func Target function to validate
211
- // * @returns The wrapper function with type validations
212
- // *
213
- // * @author Jeongho Nam - https://github.com/samchon
214
- // */
215
- // function validateEqualsFunction<T extends (...args: any[]) => any>(
216
- // func: T,
217
- // ): T extends (...args: infer Arguments) => infer Output
218
- // ? Output extends Promise<infer R>
219
- // ? (...args: Arguments) => Promise<IValidation<R>>
220
- // : (...args: Arguments) => IValidation<Output>
221
- // : never;
222
- // /**
223
- // * @internal
224
- // */
225
- // function validateEqualsFunction(): never {
226
- // halt("validateEqualsFunction");
227
- // }
228
- // const validateEqualsFunctionPure = /** @__PURE__ */ Object.assign<
229
- // typeof validateEqualsFunction,
230
- // {}
231
- // >(validateEqualsFunction, /** @__PURE__ */ Namespace.validate());
232
- // export { validateEqualsFunctionPure as validateEqualsFunction };
233
- // /**
234
- // * Validates parameters with strict equality.
235
- // *
236
- // * Validates a function, by wrapping the function and checking its parameters through
237
- // * {@link validateEquals} function. If some parameter does not match the expected type,
238
- // * it returns {@link IValidation.IError} typed object. Otherwise there's no type error,
239
- // * it returns {@link IValidation.ISuccess} typed object instead.
240
- // *
241
- // * For reference, {@link IValidation.IError.path} would be a little bit different with
242
- // * individual {@link validateEquals} function. If the {@link IValidation.IError} occurs
243
- // * from some parameter, the path would start from `$input.parameters[number]`.
244
- // *
245
- // * By the way, if what you want is not finding every type errors, but just finding
246
- // * the 1st type error, then use {@link assertEqualsParameters} instead. Otherwise,
247
- // * what you want is not only validating parameters, but also validating return value,
248
- // * you can use {@link validateEqualsFunction} instead.
249
- // *
250
- // * On the other hand, if you want to allow any superfluous properties, utilize
251
- // * {@link validateParameters} or {@link assertParameters} instead.
252
- // *
253
- // * @template T Target function type
254
- // * @param func Target function to validate
255
- // * @returns The wrapper function with type validations
256
- // *
257
- // * @author Jeongho Nam - https://github.com/samchon
258
- // */
259
- // function validateEqualsParameters<T extends (...args: any[]) => any>(
260
- // func: T,
261
- // ): T extends (...args: infer Arguments) => infer Output
262
- // ? Output extends Promise<infer R>
263
- // ? (...args: Arguments) => Promise<IValidation<R>>
264
- // : (...args: Arguments) => IValidation<Output>
265
- // : never;
266
- // /**
267
- // * @internal
268
- // */
269
- // function validateEqualsParameters(): never {
270
- // halt("validateEqualsParameters");
271
- // }
272
- // const validateEqualsParametersPure = /** @__PURE__ */ Object.assign<
273
- // typeof validateEqualsParameters,
274
- // {}
275
- // >(validateEqualsParameters, /** @__PURE__ */ Namespace.validate());
276
- // export { validateEqualsParametersPure as validateEqualsParameters };
277
- // /**
278
- // * Validates return value with strict equality.
279
- // *
280
- // * Validates a function, by wrapping the function and checking its return value through
281
- // * {@link validateEquals} function. If the return value does not match the expected type,
282
- // * it returns {@link IValidation.IError} typed object. Otherwise there's no type error,
283
- // * it returns {@link IValidation.ISuccess} typed object instead.
284
- // *
285
- // * For reference, {@link IValidation.IError.path} would be a little bit different with
286
- // * individual {@link validateEquals} function. If the {@link IValidation.IError} occurs
287
- // * from the return value, the path would start from `$input.return`.
288
- // *
289
- // * By the way, if what you want is not finding every type errors, but just finding
290
- // * the 1st type error, then use {@link assertEqualsReturn} instead. Otherwise, what you
291
- // * want is not only validating return value, but also validating parameters, you can use
292
- // * {@link validateEqualsFunction} instead.
293
- // *
294
- // * On the other hand, if you want to allow any superfluous properties, utilize
295
- // * {@link validateReturn} or {@link assertReturn} instead.
296
- // *
297
- // * @template T Target function type
298
- // * @param func Target function to validate
299
- // * @returns The wrapper function with type validations
300
- // *
301
- // * @author Jeongho Nam - https://github.com/samchon
302
- // */
303
- // function validateEqualsReturn<T extends (...args: any[]) => any>(
304
- // func: T,
305
- // ): T extends (...args: infer Arguments) => infer Output
306
- // ? Output extends Promise<infer R>
307
- // ? (...args: Arguments) => Promise<IValidation<R>>
308
- // : (...args: Arguments) => IValidation<Output>
309
- // : never;
310
- // /**
311
- // * @internal
312
- // */
313
- // function validateEqualsReturn(): never {
314
- // halt("validateEqualsReturn");
315
- // }
316
- // const validateEqualsReturnPure = /** @__PURE__ */ Object.assign<
317
- // typeof validateEqualsReturn,
318
- // {}
319
- // >(validateEqualsReturn, /** @__PURE__ */ Namespace.validate());
320
- // export { validateEqualsReturnPure as validateEqualsReturn };
88
+ /**
89
+ * @internal
90
+ */
91
+ function isFunction() {
92
+ halt("isFunction");
93
+ }
94
+ var isFunctionPure = /** @__PURE__ */ Object.assign(isFunction,
95
+ /** @__PURE__ */ Namespace.is());
96
+ exports.isFunction = isFunctionPure;
97
+ /**
98
+ * @internal
99
+ */
100
+ function isParameters() {
101
+ halt("isParameters");
102
+ }
103
+ var isParametersPure = /** @__PURE__ */ Object.assign(isParameters, /** @__PURE__ */ Namespace.is());
104
+ exports.isParameters = isParametersPure;
105
+ /**
106
+ * @internal
107
+ */
108
+ function isReturn() {
109
+ halt("isReturn");
110
+ }
111
+ var isReturnPure = /** @__PURE__ */ Object.assign(isReturn,
112
+ /** @__PURE__ */ Namespace.is());
113
+ exports.isReturn = isReturnPure;
114
+ /**
115
+ * @internal
116
+ */
117
+ function equalsFunction() {
118
+ halt("equalsFunction");
119
+ }
120
+ var equalsFunctionPure = /** @__PURE__ */ Object.assign(equalsFunction, /** @__PURE__ */ Namespace.is());
121
+ exports.equalsFunction = equalsFunctionPure;
122
+ /**
123
+ * @internal
124
+ */
125
+ function equalsParameters() {
126
+ halt("equalsParameters");
127
+ }
128
+ var equalsParametersPure = /** @__PURE__ */ Object.assign(equalsParameters, /** @__PURE__ */ Namespace.is());
129
+ exports.equalsParameters = equalsParametersPure;
130
+ /**
131
+ * @internal
132
+ */
133
+ function equalsReturn() {
134
+ halt("equalsReturn");
135
+ }
136
+ var equalsReturnPure = /** @__PURE__ */ Object.assign(equalsReturn, /** @__PURE__ */ Namespace.is());
137
+ exports.equalsReturn = equalsReturnPure;
138
+ /**
139
+ * @internal
140
+ */
141
+ function validateFunction() {
142
+ halt("validateFunction");
143
+ }
144
+ var validateFunctionPure = /** @__PURE__ */ Object.assign(validateFunction, /** @__PURE__ */ Namespace.validate());
145
+ exports.validateFunction = validateFunctionPure;
146
+ /**
147
+ * @internal
148
+ */
149
+ function validateParameters() {
150
+ halt("validateReturn");
151
+ }
152
+ var validateParametersPure = /** @__PURE__ */ Object.assign(validateParameters, /** @__PURE__ */ Namespace.validate());
153
+ exports.validateParameters = validateParametersPure;
154
+ /**
155
+ * @internal
156
+ */
157
+ function validateReturn() {
158
+ halt("validateReturn");
159
+ }
160
+ var validateReturnPure = /** @__PURE__ */ Object.assign(validateReturn, /** @__PURE__ */ Namespace.validate());
161
+ exports.validateReturn = validateReturnPure;
162
+ /**
163
+ * @internal
164
+ */
165
+ function validateEqualsFunction() {
166
+ halt("validateEqualsFunction");
167
+ }
168
+ var validateEqualsFunctionPure = /** @__PURE__ */ Object.assign(validateEqualsFunction, /** @__PURE__ */ Namespace.validate());
169
+ exports.validateEqualsFunction = validateEqualsFunctionPure;
170
+ /**
171
+ * @internal
172
+ */
173
+ function validateEqualsParameters() {
174
+ halt("validateEqualsParameters");
175
+ }
176
+ var validateEqualsParametersPure = /** @__PURE__ */ Object.assign(validateEqualsParameters, /** @__PURE__ */ Namespace.validate());
177
+ exports.validateEqualsParameters = validateEqualsParametersPure;
178
+ /**
179
+ * @internal
180
+ */
181
+ function validateEqualsReturn() {
182
+ halt("validateEqualsReturn");
183
+ }
184
+ var validateEqualsReturnPure = /** @__PURE__ */ Object.assign(validateEqualsReturn, /** @__PURE__ */ Namespace.validate());
185
+ exports.validateEqualsReturn = validateEqualsReturnPure;
321
186
  /* -----------------------------------------------------------
322
187
  HALTER
323
188
  ----------------------------------------------------------- */
@@ -1 +1 @@
1
- {"version":3,"file":"functional.js","sourceRoot":"","sources":["../src/functional.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functional.js","sourceRoot":"","sources":["../src/functional.ts"],"names":[],"mappings":"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"}
package/lib/http.d.ts CHANGED
@@ -42,8 +42,8 @@ export { formDataPure as formData };
42
42
  *
43
43
  * Also, after decoding, `typia.http.assertFormData()` performs type assertion to
44
44
  * the decoded value by combining with {@link assert} function. Therefore, when
45
- * the decoded value is not following the `T` type, {@link TypeGuardError} would
46
- * be thrown.
45
+ * the decoded value is not following the `T` type, {@link TypeGuardError} or
46
+ * custom error generated by *errorFactory* would be thrown.
47
47
  *
48
48
  * By the way, as `FormData` is not enough to express complex data structures,
49
49
  * `typia.http.assertFormData()` function has some limitations. If target type `T`
@@ -56,6 +56,7 @@ export { formDataPure as formData };
56
56
  *
57
57
  * @template T Expected type of decoded value
58
58
  * @param input FormData instance
59
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
59
60
  * @returns Decoded form FormData
60
61
  *
61
62
  * @author Jeongho Nam - https://github.com/samchon
@@ -169,8 +170,8 @@ export { queryPure as query };
169
170
  *
170
171
  * Also, after decoding, `typia.http.assertQuery()` performs type assertion to the
171
172
  * decoded value by combining with {@link assert} function. Therefore, when the
172
- * decoded value is not following the `T` type, {@link TypeGuardError} would be
173
- * thrown.
173
+ * decoded value is not following the `T` type, {@link TypeGuardError} or custom
174
+ * error generated by *errorFactory* would be thrown.
174
175
  *
175
176
  * By the way, as URL query is not enough to express complex data structures,
176
177
  * `typia.http.assertQuery()` function has some limitations. If target type `T` is
@@ -183,6 +184,7 @@ export { queryPure as query };
183
184
  *
184
185
  * @template T Expected type of decoded value
185
186
  * @param input Query string or URLSearchParams instance
187
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
186
188
  * @returns Decoded query object
187
189
  *
188
190
  * @author Jeongho Nam - https://github.com/samchon
@@ -316,8 +318,8 @@ export { headersPure as headers };
316
318
  *
317
319
  * Also, after decoding, `typia.http.assertHeaders()` performs type assertion to the
318
320
  * decoded value by combining with {@link assert} function. Therefore, when the
319
- * decoded value is not following the `T` type, {@link TypeGuardError} would be
320
- * thrown.
321
+ * decoded value is not following the `T` type, {@link TypeGuardError} or custom
322
+ * error generated by *errorFactory* would be thrown.
321
323
  *
322
324
  * By the way, as HTTP headers are not enough to express complex data structures,
323
325
  * `typia.http.headers()` function has some limitations. If target type `T` is not
@@ -352,6 +354,7 @@ export { headersPure as headers };
352
354
  *
353
355
  * @template T Expected type of decoded value
354
356
  * @param input Query string or URLSearchParams instance
357
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
355
358
  * @returns Decoded headers object
356
359
  *
357
360
  * @author Jeongho Nam - https://github.com/samchon
@@ -510,6 +513,7 @@ export { createFormDataPure as createFormData };
510
513
  *
511
514
  * @danger You must configure the generic argument `T`
512
515
  * @template T The type of the formdata object
516
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
513
517
  * @throws compile error
514
518
  *
515
519
  * @author Jeongho Nam - https://github.com/samchon
@@ -519,6 +523,7 @@ declare function createAssertFormData(errorFactory?: undefined | ((props: TypeGu
519
523
  * Creates a reusable {@link assertFormData} function.
520
524
  *
521
525
  * @template T The type of the formdata object
526
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
522
527
  * @returns A reusable `assertFormData` function
523
528
  *
524
529
  * @author Jeongho Nam - https://github.com/samchon
@@ -594,6 +599,7 @@ export { createQueryPure as createQuery };
594
599
  *
595
600
  * @danger You must configure the generic argument `T`
596
601
  * @template T The type of the query object
602
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
597
603
  * @throws compile error
598
604
  *
599
605
  * @author Jeongho Nam - https://github.com/samchon
@@ -603,6 +609,7 @@ declare function createAssertQuery(errorFactory?: undefined | ((props: TypeGuard
603
609
  * Creates a reusable {@link assertQuery} function.
604
610
  *
605
611
  * @template T The type of the query object
612
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
606
613
  * @returns A reusable `assertQuery` function
607
614
  *
608
615
  * @author Jeongho Nam - https://github.com/samchon
@@ -678,6 +685,7 @@ export { createHeadersPure as createHeaders };
678
685
  *
679
686
  * @danger You must configure the generic argument `T`
680
687
  * @template T The type of the headers object
688
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
681
689
  * @throws compile error
682
690
  *
683
691
  * @author Jeongho Nam - https://github.com/samchon
@@ -687,6 +695,7 @@ declare function createAssertHeaders(errorFactory?: undefined | ((props: TypeGua
687
695
  * Creates a reusable {@link assertHeaders} function.
688
696
  *
689
697
  * @template T The type of the headers object
698
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
690
699
  * @returns A reusable `assertHeaders` function
691
700
  *
692
701
  * @author Jeongho Nam - https://github.com/samchon
package/lib/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
package/lib/json.d.ts CHANGED
@@ -66,11 +66,12 @@ export declare function application<Types extends unknown[], Purpose extends "aj
66
66
  * to a `T` typed instance with type assertion.
67
67
  *
68
68
  * In such reason, when parsed JSON string value is not matched with the type `T`, it
69
- * throws {@link TypeGuardError}. Otherwise, there's no problem on the parsed value,
70
- * the parsed value would be returned.
69
+ * throws {@link TypeGuardError} or custom error generated by *errorFactory*. Otherwise,
70
+ * there's no problem on the parsed value, the parsed value would be returned.
71
71
  *
72
72
  * @template T Expected type of parsed value
73
73
  * @param input JSON string
74
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
74
75
  * @returns Parsed value
75
76
  *
76
77
  * @author Jeongho Nam - https://github.com/samchon
@@ -84,11 +85,13 @@ declare function assertParse(input: string, errorFactory?: undefined | ((props:
84
85
  * to a `T` typed instance with type assertion.
85
86
  *
86
87
  * In such reason, when parsed JSON string value is not matched with the type `T`,
87
- * it throws {@link TypeGuardError}. Otherwise, there's no problem on the parsed
88
- * value, the parsed value would be returned.
88
+ * it throws {@link TypeGuardError} or custom error generated by *errorFactory*.
89
+ * Otherwise, there's no problem on the parsed value, the parsed value would be
90
+ * returned.
89
91
  *
90
92
  * @template T Expected type of parsed value
91
93
  * @param input JSON string
94
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
92
95
  * @returns Parsed value
93
96
  *
94
97
  * @author Jeongho Nam - https://github.com/samchon
@@ -211,8 +214,8 @@ export { stringifyPure as stringify };
211
214
  * JSON (JavaScript Object Notation) string, with type assertion.
212
215
  *
213
216
  * In such reason, when `input` value is not matched with the type `T`, it throws an
214
- * {@link TypeGuardError}. Otherwise, there's no problem on the `input` value, JSON
215
- * string would be returned.
217
+ * {@link TypeGuardError} or custom error generated by *errorFactory*. Otherwise,
218
+ * there's no problem on the `input` value, JSON string would be returned.
216
219
  *
217
220
  * For reference, with type assertion, it is even 5x times faster than the native
218
221
  * `JSON.stringify()` function. So, just enjoy the safe and fast JSON conversion
@@ -220,6 +223,7 @@ export { stringifyPure as stringify };
220
223
  *
221
224
  * @template T Type of the input value
222
225
  * @param input A value to be asserted and converted
226
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
223
227
  * @return JSON string value
224
228
  *
225
229
  * @author Jeongho Nam - https://github.com/samchon
@@ -233,8 +237,8 @@ declare function assertStringify<T>(input: T, errorFactory?: undefined | ((props
233
237
  * JSON (JavaScript Object Notation) string, with type assertion.
234
238
  *
235
239
  * In such reason, when `input` value is not matched with the type `T`, it throws an
236
- * {@link TypeGuardError}. Otherwise, there's no problem on the `input` value, JSON
237
- * string would be returned.
240
+ * {@link TypeGuardError} or custom error generated by *errorFactory*. Otherwise,
241
+ * there's no problem on the `input` value, JSON string would be returned.
238
242
  *
239
243
  * For reference, with type assertion, it is even 5x times faster than the native
240
244
  * `JSON.stringify()` function. So, just enjoy the safe and fast JSON conversion
@@ -242,6 +246,7 @@ declare function assertStringify<T>(input: T, errorFactory?: undefined | ((props
242
246
  *
243
247
  * @template T Type of the input value
244
248
  * @param input A value to be asserted and converted
249
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
245
250
  * @return JSON string value
246
251
  *
247
252
  * @author Jeongho Nam - https://github.com/samchon
@@ -369,6 +374,7 @@ export { createIsParsePure as createIsParse };
369
374
  *
370
375
  * @danger You must configure the generic argument `T`
371
376
  * @returns Nothing until you configure the generic argument `T`
377
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
372
378
  * @throws compile error
373
379
  *
374
380
  * @author Jeongho Nam - https://github.com/samchon
@@ -378,6 +384,7 @@ declare function createAssertParse(errorFactory?: undefined | ((props: TypeGuard
378
384
  * Creates a reusable {@link assertParse} function.
379
385
  *
380
386
  * @template T Expected type of parsed value
387
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
381
388
  * @returns A reusable `assertParse` function
382
389
  *
383
390
  * @author Jeongho Nam - https://github.com/samchon
@@ -431,6 +438,7 @@ export { createStringifyPure as createStringify };
431
438
  * Creates a reusable {@link assertStringify} function.
432
439
  *
433
440
  * @danger You must configure the generic argument `T`
441
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
434
442
  * @returns Nothing until you configure the generic argument `T`
435
443
  * @throws compile error
436
444
  *
@@ -441,6 +449,7 @@ declare function createAssertStringify(errorFactory?: undefined | ((props: TypeG
441
449
  * Creates a reusable {@link assertStringify} function.
442
450
  *
443
451
  * @template T Type of the input value
452
+ * @param errorFactory Custom error factory. Default is `TypeGuardError`
444
453
  * @returns A reusable `assertStringify` function
445
454
  *
446
455
  * @author Jeongho Nam - https://github.com/samchon
package/lib/json.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":"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"}