typia 7.0.0-dev.20241003 → 7.0.0-dev.20241007

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 (955) hide show
  1. package/lib/IRandomGenerator.d.ts +17 -21
  2. package/lib/factories/ExpressionFactory.js +2 -2
  3. package/lib/factories/ExpressionFactory.js.map +1 -1
  4. package/lib/factories/IdentifierFactory.d.ts +1 -1
  5. package/lib/factories/LiteralFactory.d.ts +1 -1
  6. package/lib/factories/LiteralFactory.js +20 -17
  7. package/lib/factories/LiteralFactory.js.map +1 -1
  8. package/lib/factories/MetadataCommentTagFactory.js +28 -6
  9. package/lib/factories/MetadataCommentTagFactory.js.map +1 -1
  10. package/lib/functional.d.ts +18 -54
  11. package/lib/functional.js +18 -75
  12. package/lib/functional.js.map +1 -1
  13. package/lib/http.d.ts +39 -91
  14. package/lib/http.js +26 -121
  15. package/lib/http.js.map +1 -1
  16. package/lib/index.mjs +188 -2688
  17. package/lib/index.mjs.map +1 -1
  18. package/lib/internal/$ProtobufReader.js.map +1 -0
  19. package/lib/{functional → internal}/$ProtobufSizer.d.ts +2 -2
  20. package/lib/{functional → internal}/$ProtobufSizer.js +9 -2
  21. package/lib/internal/$ProtobufSizer.js.map +1 -0
  22. package/lib/{functional → internal}/$ProtobufWriter.d.ts +2 -2
  23. package/lib/internal/$ProtobufWriter.js.map +1 -0
  24. package/lib/internal/$accessExpressionAsString.d.ts +1 -0
  25. package/lib/{functional/$join.js → internal/$accessExpressionAsString.js} +4 -4
  26. package/lib/internal/$accessExpressionAsString.js.map +1 -0
  27. package/lib/internal/$assertGuard.d.ts +2 -0
  28. package/lib/internal/$assertGuard.js +15 -0
  29. package/lib/internal/$assertGuard.js.map +1 -0
  30. package/lib/internal/$functionalTypeGuardErrorFactory.d.ts +2 -0
  31. package/lib/internal/$functionalTypeGuardErrorFactory.js +9 -0
  32. package/lib/internal/$functionalTypeGuardErrorFactory.js.map +1 -0
  33. package/lib/internal/$httpFormDataReadArray.d.ts +1 -0
  34. package/lib/internal/$httpFormDataReadArray.js +6 -0
  35. package/lib/internal/$httpFormDataReadArray.js.map +1 -0
  36. package/lib/internal/$httpFormDataReadBigint.d.ts +1 -0
  37. package/lib/internal/$httpFormDataReadBigint.js +22 -0
  38. package/lib/internal/$httpFormDataReadBigint.js.map +1 -0
  39. package/lib/internal/$httpFormDataReadBlob.d.ts +1 -0
  40. package/lib/internal/$httpFormDataReadBlob.js +14 -0
  41. package/lib/internal/$httpFormDataReadBlob.js.map +1 -0
  42. package/lib/internal/$httpFormDataReadBoolean.d.ts +1 -0
  43. package/lib/internal/$httpFormDataReadBoolean.js +20 -0
  44. package/lib/internal/$httpFormDataReadBoolean.js.map +1 -0
  45. package/lib/internal/$httpFormDataReadFile.d.ts +1 -0
  46. package/lib/internal/$httpFormDataReadFile.js +14 -0
  47. package/lib/internal/$httpFormDataReadFile.js.map +1 -0
  48. package/lib/internal/$httpFormDataReadNumber.d.ts +1 -0
  49. package/lib/internal/$httpFormDataReadNumber.js +18 -0
  50. package/lib/internal/$httpFormDataReadNumber.js.map +1 -0
  51. package/lib/internal/$httpFormDataReadString.d.ts +1 -0
  52. package/lib/internal/$httpFormDataReadString.js +14 -0
  53. package/lib/internal/$httpFormDataReadString.js.map +1 -0
  54. package/lib/internal/$httpHeaderReadBigint.d.ts +1 -0
  55. package/lib/internal/$httpHeaderReadBigint.js +16 -0
  56. package/lib/internal/$httpHeaderReadBigint.js.map +1 -0
  57. package/lib/internal/$httpHeaderReadBoolean.d.ts +1 -0
  58. package/lib/internal/$httpHeaderReadBoolean.js +14 -0
  59. package/lib/internal/$httpHeaderReadBoolean.js.map +1 -0
  60. package/lib/internal/$httpHeaderReadNumber.d.ts +1 -0
  61. package/lib/internal/$httpHeaderReadNumber.js +12 -0
  62. package/lib/internal/$httpHeaderReadNumber.js.map +1 -0
  63. package/lib/internal/$httpParameterBigint.d.ts +1 -0
  64. package/lib/internal/$httpParameterBigint.js +16 -0
  65. package/lib/internal/$httpParameterBigint.js.map +1 -0
  66. package/lib/internal/$httpParameterBoolean.d.ts +1 -0
  67. package/lib/internal/$httpParameterBoolean.js +14 -0
  68. package/lib/internal/$httpParameterBoolean.js.map +1 -0
  69. package/lib/internal/$httpParameterNumber.d.ts +1 -0
  70. package/lib/internal/$httpParameterNumber.js +12 -0
  71. package/lib/internal/$httpParameterNumber.js.map +1 -0
  72. package/lib/internal/$httpParameterString.d.ts +1 -0
  73. package/lib/internal/$httpParameterString.js +8 -0
  74. package/lib/internal/$httpParameterString.js.map +1 -0
  75. package/lib/internal/$httpQueryParseURLSearchParams.d.ts +1 -0
  76. package/lib/internal/$httpQueryParseURLSearchParams.js +13 -0
  77. package/lib/internal/$httpQueryParseURLSearchParams.js.map +1 -0
  78. package/lib/internal/$httpQueryReadArray.d.ts +1 -0
  79. package/lib/internal/$httpQueryReadArray.js +6 -0
  80. package/lib/internal/$httpQueryReadArray.js.map +1 -0
  81. package/lib/internal/$httpQueryReadBigint.d.ts +1 -0
  82. package/lib/internal/$httpQueryReadBigint.js +16 -0
  83. package/lib/internal/$httpQueryReadBigint.js.map +1 -0
  84. package/lib/internal/$httpQueryReadBoolean.d.ts +1 -0
  85. package/lib/internal/$httpQueryReadBoolean.js +18 -0
  86. package/lib/internal/$httpQueryReadBoolean.js.map +1 -0
  87. package/lib/internal/$httpQueryReadNumber.d.ts +1 -0
  88. package/lib/internal/$httpQueryReadNumber.js +12 -0
  89. package/lib/internal/$httpQueryReadNumber.js.map +1 -0
  90. package/lib/internal/$httpQueryReadString.d.ts +1 -0
  91. package/lib/internal/$httpQueryReadString.js +8 -0
  92. package/lib/internal/$httpQueryReadString.js.map +1 -0
  93. package/lib/internal/$isBetween.d.ts +1 -0
  94. package/lib/internal/$isBetween.js +8 -0
  95. package/lib/internal/$isBetween.js.map +1 -0
  96. package/lib/internal/$isBigintString.d.ts +1 -0
  97. package/lib/{functional/$stoll.js → internal/$isBigintString.js} +4 -4
  98. package/lib/internal/$isBigintString.js.map +1 -0
  99. package/lib/internal/$jsonStringifyNumber.d.ts +1 -0
  100. package/lib/{functional/$number.js → internal/$jsonStringifyNumber.js} +4 -4
  101. package/lib/internal/$jsonStringifyNumber.js.map +1 -0
  102. package/lib/internal/$jsonStringifyRest.d.ts +1 -0
  103. package/lib/internal/$jsonStringifyRest.js +8 -0
  104. package/lib/internal/$jsonStringifyRest.js.map +1 -0
  105. package/lib/{functional/$string.js → internal/$jsonStringifyString.js} +4 -4
  106. package/lib/internal/$jsonStringifyString.js.map +1 -0
  107. package/lib/internal/$jsonStringifyTail.d.ts +1 -0
  108. package/lib/internal/$jsonStringifyTail.js +8 -0
  109. package/lib/internal/$jsonStringifyTail.js.map +1 -0
  110. package/lib/internal/$llmApplicationFinalize.d.ts +2 -0
  111. package/lib/internal/$llmApplicationFinalize.js +42 -0
  112. package/lib/internal/$llmApplicationFinalize.js.map +1 -0
  113. package/lib/internal/$miscCloneAny.d.ts +2 -0
  114. package/lib/{functional/$clone.js → internal/$miscCloneAny.js} +4 -4
  115. package/lib/internal/$miscCloneAny.js.map +1 -0
  116. package/lib/internal/$notationAny.d.ts +1 -0
  117. package/lib/{functional/$convention.js → internal/$notationAny.js} +4 -4
  118. package/lib/{functional/$convention.js.map → internal/$notationAny.js.map} +1 -1
  119. package/lib/internal/$notationCamel.d.ts +1 -0
  120. package/lib/internal/$notationCamel.js +18 -0
  121. package/lib/internal/$notationCamel.js.map +1 -0
  122. package/lib/internal/$notationPascal.d.ts +1 -0
  123. package/lib/internal/$notationPascal.js +12 -0
  124. package/lib/internal/$notationPascal.js.map +1 -0
  125. package/lib/internal/$notationSnake.d.ts +1 -0
  126. package/lib/internal/$notationSnake.js +51 -0
  127. package/lib/internal/$notationSnake.js.map +1 -0
  128. package/lib/internal/$randomArray.d.ts +4 -0
  129. package/lib/internal/$randomArray.js +20 -0
  130. package/lib/internal/$randomArray.js.map +1 -0
  131. package/lib/internal/$randomBigint.d.ts +2 -0
  132. package/lib/internal/$randomBigint.js +9 -0
  133. package/lib/internal/$randomBigint.js.map +1 -0
  134. package/lib/internal/$randomBoolean.d.ts +1 -0
  135. package/lib/internal/$randomBoolean.js +6 -0
  136. package/lib/internal/$randomBoolean.js.map +1 -0
  137. package/lib/internal/$randomFormatByte.d.ts +1 -0
  138. package/lib/internal/$randomFormatByte.js +7 -0
  139. package/lib/internal/$randomFormatByte.js.map +1 -0
  140. package/lib/internal/$randomFormatDate.d.ts +4 -0
  141. package/lib/internal/$randomFormatDate.js +18 -0
  142. package/lib/internal/$randomFormatDate.js.map +1 -0
  143. package/lib/internal/$randomFormatDatetime.d.ts +4 -0
  144. package/lib/internal/$randomFormatDatetime.js +16 -0
  145. package/lib/internal/$randomFormatDatetime.js.map +1 -0
  146. package/lib/internal/$randomFormatDuration.d.ts +1 -0
  147. package/lib/internal/$randomFormatDuration.js +56 -0
  148. package/lib/internal/$randomFormatDuration.js.map +1 -0
  149. package/lib/internal/$randomFormatEmail.d.ts +1 -0
  150. package/lib/internal/$randomFormatEmail.js +16 -0
  151. package/lib/internal/$randomFormatEmail.js.map +1 -0
  152. package/lib/internal/$randomFormatHostname.d.ts +1 -0
  153. package/lib/internal/$randomFormatHostname.js +10 -0
  154. package/lib/internal/$randomFormatHostname.js.map +1 -0
  155. package/lib/internal/$randomFormatIdnEmail.d.ts +1 -0
  156. package/lib/internal/$randomFormatIdnEmail.js +7 -0
  157. package/lib/internal/$randomFormatIdnEmail.js.map +1 -0
  158. package/lib/internal/$randomFormatIdnHostname.d.ts +1 -0
  159. package/lib/internal/$randomFormatIdnHostname.js +7 -0
  160. package/lib/internal/$randomFormatIdnHostname.js.map +1 -0
  161. package/lib/internal/$randomFormatIpv4.d.ts +1 -0
  162. package/lib/internal/$randomFormatIpv4.js +16 -0
  163. package/lib/internal/$randomFormatIpv4.js.map +1 -0
  164. package/lib/internal/$randomFormatIpv6.d.ts +1 -0
  165. package/lib/internal/$randomFormatIpv6.js +16 -0
  166. package/lib/internal/$randomFormatIpv6.js.map +1 -0
  167. package/lib/internal/$randomFormatIri.d.ts +1 -0
  168. package/lib/internal/$randomFormatIri.js +7 -0
  169. package/lib/internal/$randomFormatIri.js.map +1 -0
  170. package/lib/internal/$randomFormatIriReference.d.ts +1 -0
  171. package/lib/internal/$randomFormatIriReference.js +7 -0
  172. package/lib/internal/$randomFormatIriReference.js.map +1 -0
  173. package/lib/internal/$randomFormatJsonPointer.d.ts +1 -0
  174. package/lib/internal/$randomFormatJsonPointer.js +12 -0
  175. package/lib/internal/$randomFormatJsonPointer.js.map +1 -0
  176. package/lib/internal/$randomFormatPassword.d.ts +1 -0
  177. package/lib/internal/$randomFormatPassword.js +13 -0
  178. package/lib/internal/$randomFormatPassword.js.map +1 -0
  179. package/lib/internal/$randomFormatRegex.d.ts +1 -0
  180. package/lib/internal/$randomFormatRegex.js +7 -0
  181. package/lib/internal/$randomFormatRegex.js.map +1 -0
  182. package/lib/internal/$randomFormatRelativeJsonPointer.d.ts +1 -0
  183. package/lib/internal/$randomFormatRelativeJsonPointer.js +13 -0
  184. package/lib/internal/$randomFormatRelativeJsonPointer.js.map +1 -0
  185. package/lib/internal/$randomFormatTime.d.ts +1 -0
  186. package/lib/internal/$randomFormatTime.js +16 -0
  187. package/lib/internal/$randomFormatTime.js.map +1 -0
  188. package/lib/internal/$randomFormatUri.d.ts +1 -0
  189. package/lib/internal/$randomFormatUri.js +7 -0
  190. package/lib/internal/$randomFormatUri.js.map +1 -0
  191. package/lib/internal/$randomFormatUriReference.d.ts +1 -0
  192. package/lib/internal/$randomFormatUriReference.js +7 -0
  193. package/lib/internal/$randomFormatUriReference.js.map +1 -0
  194. package/lib/internal/$randomFormatUriTemplate.d.ts +1 -0
  195. package/lib/internal/$randomFormatUriTemplate.js +7 -0
  196. package/lib/internal/$randomFormatUriTemplate.js.map +1 -0
  197. package/lib/internal/$randomFormatUrl.d.ts +1 -0
  198. package/lib/internal/$randomFormatUrl.js +16 -0
  199. package/lib/internal/$randomFormatUrl.js.map +1 -0
  200. package/lib/internal/$randomFormatUuid.d.ts +1 -0
  201. package/lib/internal/$randomFormatUuid.js +12 -0
  202. package/lib/internal/$randomFormatUuid.js.map +1 -0
  203. package/lib/internal/$randomInteger.d.ts +2 -0
  204. package/lib/internal/$randomInteger.js +42 -0
  205. package/lib/internal/$randomInteger.js.map +1 -0
  206. package/lib/internal/$randomNumber.d.ts +2 -0
  207. package/lib/internal/$randomNumber.js +59 -0
  208. package/lib/internal/$randomNumber.js.map +1 -0
  209. package/lib/internal/$randomPattern.d.ts +1 -0
  210. package/lib/internal/$randomPattern.js +18 -0
  211. package/lib/internal/$randomPattern.js.map +1 -0
  212. package/lib/internal/$randomPick.d.ts +1 -0
  213. package/lib/internal/$randomPick.js +14 -0
  214. package/lib/internal/$randomPick.js.map +1 -0
  215. package/lib/internal/$randomString.d.ts +2 -0
  216. package/lib/internal/$randomString.js +26 -0
  217. package/lib/internal/$randomString.js.map +1 -0
  218. package/lib/internal/$throwTypeGuardError.d.ts +2 -0
  219. package/lib/internal/$throwTypeGuardError.js +9 -0
  220. package/lib/internal/$throwTypeGuardError.js.map +1 -0
  221. package/lib/internal/$validateReport.d.ts +2 -0
  222. package/lib/{functional/$report.js → internal/$validateReport.js} +4 -4
  223. package/lib/internal/$validateReport.js.map +1 -0
  224. package/lib/{functional/IProtobufWriter.d.ts → internal/private/$__IProtobufWriter.d.ts} +1 -1
  225. package/lib/{functional/IProtobufWriter.js → internal/private/$__IProtobufWriter.js} +1 -1
  226. package/lib/internal/private/$__IProtobufWriter.js.map +1 -0
  227. package/lib/internal/private/$__notationCapitalize.d.ts +1 -0
  228. package/lib/internal/private/$__notationCapitalize.js +8 -0
  229. package/lib/internal/private/$__notationCapitalize.js.map +1 -0
  230. package/lib/internal/private/$__notationUnsnake.d.ts +4 -0
  231. package/lib/internal/private/$__notationUnsnake.js +28 -0
  232. package/lib/internal/private/$__notationUnsnake.js.map +1 -0
  233. package/lib/json.d.ts +27 -55
  234. package/lib/json.js +14 -62
  235. package/lib/json.js.map +1 -1
  236. package/lib/llm.d.ts +2 -4
  237. package/lib/llm.js +1 -28
  238. package/lib/llm.js.map +1 -1
  239. package/lib/misc.d.ts +30 -62
  240. package/lib/misc.js +16 -80
  241. package/lib/misc.js.map +1 -1
  242. package/lib/module.d.ts +36 -72
  243. package/lib/module.js +19 -44
  244. package/lib/module.js.map +1 -1
  245. package/lib/notations.d.ts +45 -93
  246. package/lib/notations.js +24 -114
  247. package/lib/notations.js.map +1 -1
  248. package/lib/programmers/AssertProgrammer.d.ts +2 -2
  249. package/lib/programmers/AssertProgrammer.js +24 -17
  250. package/lib/programmers/AssertProgrammer.js.map +1 -1
  251. package/lib/programmers/CheckerProgrammer.d.ts +9 -9
  252. package/lib/programmers/CheckerProgrammer.js +46 -46
  253. package/lib/programmers/CheckerProgrammer.js.map +1 -1
  254. package/lib/programmers/FeatureProgrammer.d.ts +8 -8
  255. package/lib/programmers/FeatureProgrammer.js +10 -10
  256. package/lib/programmers/FeatureProgrammer.js.map +1 -1
  257. package/lib/programmers/ImportProgrammer.d.ts +10 -0
  258. package/lib/programmers/ImportProgrammer.js +119 -0
  259. package/lib/programmers/ImportProgrammer.js.map +1 -0
  260. package/lib/programmers/IsProgrammer.d.ts +6 -6
  261. package/lib/programmers/IsProgrammer.js +11 -13
  262. package/lib/programmers/IsProgrammer.js.map +1 -1
  263. package/lib/programmers/RandomProgrammer.d.ts +2 -2
  264. package/lib/programmers/RandomProgrammer.js +298 -293
  265. package/lib/programmers/RandomProgrammer.js.map +1 -1
  266. package/lib/programmers/ValidateProgrammer.d.ts +2 -2
  267. package/lib/programmers/ValidateProgrammer.js +9 -10
  268. package/lib/programmers/ValidateProgrammer.js.map +1 -1
  269. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.d.ts +1 -1
  270. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js +2 -3
  271. package/lib/programmers/functional/FunctionalAssertFunctionProgrammer.js.map +1 -1
  272. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js +1 -1
  273. package/lib/programmers/functional/FunctionalAssertParametersProgrammer.js.map +1 -1
  274. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js +1 -1
  275. package/lib/programmers/functional/FunctionalAssertReturnProgrammer.js.map +1 -1
  276. package/lib/programmers/helpers/{FunctionImporter.d.ts → FunctionProgrammer.d.ts} +2 -6
  277. package/lib/programmers/helpers/{FunctionImporter.js → FunctionProgrammer.js} +14 -33
  278. package/lib/programmers/helpers/FunctionProgrammer.js.map +1 -0
  279. package/lib/programmers/helpers/RandomJoiner.d.ts +6 -11
  280. package/lib/programmers/helpers/RandomJoiner.js +68 -41
  281. package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
  282. package/lib/programmers/helpers/StringifyJoinder.d.ts +2 -2
  283. package/lib/programmers/helpers/StringifyJoinder.js +1 -1
  284. package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
  285. package/lib/programmers/helpers/disable_function_programmer_declare.d.ts +2 -0
  286. package/lib/programmers/helpers/disable_function_programmer_declare.js +16 -0
  287. package/lib/programmers/helpers/disable_function_programmer_declare.js.map +1 -0
  288. package/lib/programmers/http/HttpAssertFormDataProgrammer.d.ts +2 -2
  289. package/lib/programmers/http/HttpAssertFormDataProgrammer.js +4 -4
  290. package/lib/programmers/http/HttpAssertFormDataProgrammer.js.map +1 -1
  291. package/lib/programmers/http/HttpAssertHeadersProgrammer.d.ts +2 -2
  292. package/lib/programmers/http/HttpAssertHeadersProgrammer.js +4 -4
  293. package/lib/programmers/http/HttpAssertHeadersProgrammer.js.map +1 -1
  294. package/lib/programmers/http/HttpAssertQueryProgrammer.d.ts +2 -2
  295. package/lib/programmers/http/HttpAssertQueryProgrammer.js +4 -4
  296. package/lib/programmers/http/HttpAssertQueryProgrammer.js.map +1 -1
  297. package/lib/programmers/http/HttpFormDataProgrammer.d.ts +2 -2
  298. package/lib/programmers/http/HttpFormDataProgrammer.js +13 -12
  299. package/lib/programmers/http/HttpFormDataProgrammer.js.map +1 -1
  300. package/lib/programmers/http/HttpHeadersProgrammer.d.ts +3 -3
  301. package/lib/programmers/http/HttpHeadersProgrammer.js +37 -31
  302. package/lib/programmers/http/HttpHeadersProgrammer.js.map +1 -1
  303. package/lib/programmers/http/HttpIsFormDataProgrammer.d.ts +2 -2
  304. package/lib/programmers/http/HttpIsFormDataProgrammer.js +4 -4
  305. package/lib/programmers/http/HttpIsFormDataProgrammer.js.map +1 -1
  306. package/lib/programmers/http/HttpIsHeadersProgrammer.d.ts +2 -2
  307. package/lib/programmers/http/HttpIsHeadersProgrammer.js +4 -4
  308. package/lib/programmers/http/HttpIsHeadersProgrammer.js.map +1 -1
  309. package/lib/programmers/http/HttpIsQueryProgrammer.d.ts +2 -2
  310. package/lib/programmers/http/HttpIsQueryProgrammer.js +4 -4
  311. package/lib/programmers/http/HttpIsQueryProgrammer.js.map +1 -1
  312. package/lib/programmers/http/HttpParameterProgrammer.js +3 -4
  313. package/lib/programmers/http/HttpParameterProgrammer.js.map +1 -1
  314. package/lib/programmers/http/HttpQueryProgrammer.d.ts +2 -2
  315. package/lib/programmers/http/HttpQueryProgrammer.js +14 -13
  316. package/lib/programmers/http/HttpQueryProgrammer.js.map +1 -1
  317. package/lib/programmers/http/HttpValidateFormDataProgrammer.d.ts +2 -2
  318. package/lib/programmers/http/HttpValidateFormDataProgrammer.js +4 -4
  319. package/lib/programmers/http/HttpValidateFormDataProgrammer.js.map +1 -1
  320. package/lib/programmers/http/HttpValidateHeadersProgrammer.d.ts +2 -2
  321. package/lib/programmers/http/HttpValidateHeadersProgrammer.js +4 -4
  322. package/lib/programmers/http/HttpValidateHeadersProgrammer.js.map +1 -1
  323. package/lib/programmers/http/HttpValidateQueryProgrammer.d.ts +2 -2
  324. package/lib/programmers/http/HttpValidateQueryProgrammer.js +4 -4
  325. package/lib/programmers/http/HttpValidateQueryProgrammer.js.map +1 -1
  326. package/lib/programmers/internal/check_dynamic_key.js +2 -2
  327. package/lib/programmers/internal/check_dynamic_key.js.map +1 -1
  328. package/lib/programmers/internal/check_dynamic_properties.js +1 -2
  329. package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
  330. package/lib/programmers/internal/check_object.js +0 -1
  331. package/lib/programmers/internal/check_object.js.map +1 -1
  332. package/lib/programmers/internal/feature_object_entries.js +3 -2
  333. package/lib/programmers/internal/feature_object_entries.js.map +1 -1
  334. package/lib/programmers/json/JsonAssertParseProgrammer.d.ts +2 -2
  335. package/lib/programmers/json/JsonAssertParseProgrammer.js +4 -4
  336. package/lib/programmers/json/JsonAssertParseProgrammer.js.map +1 -1
  337. package/lib/programmers/json/JsonAssertStringifyProgrammer.d.ts +2 -2
  338. package/lib/programmers/json/JsonAssertStringifyProgrammer.js +4 -4
  339. package/lib/programmers/json/JsonAssertStringifyProgrammer.js.map +1 -1
  340. package/lib/programmers/json/JsonIsParseProgrammer.d.ts +2 -2
  341. package/lib/programmers/json/JsonIsParseProgrammer.js +4 -4
  342. package/lib/programmers/json/JsonIsParseProgrammer.js.map +1 -1
  343. package/lib/programmers/json/JsonIsStringifyProgrammer.d.ts +2 -2
  344. package/lib/programmers/json/JsonIsStringifyProgrammer.js +4 -4
  345. package/lib/programmers/json/JsonIsStringifyProgrammer.js.map +1 -1
  346. package/lib/programmers/json/JsonStringifyProgrammer.d.ts +2 -2
  347. package/lib/programmers/json/JsonStringifyProgrammer.js +38 -33
  348. package/lib/programmers/json/JsonStringifyProgrammer.js.map +1 -1
  349. package/lib/programmers/json/JsonValidateParseProgrammer.d.ts +2 -2
  350. package/lib/programmers/json/JsonValidateParseProgrammer.js +4 -4
  351. package/lib/programmers/json/JsonValidateParseProgrammer.js.map +1 -1
  352. package/lib/programmers/json/JsonValidateStringifyProgrammer.d.ts +2 -2
  353. package/lib/programmers/json/JsonValidateStringifyProgrammer.js +4 -4
  354. package/lib/programmers/json/JsonValidateStringifyProgrammer.js.map +1 -1
  355. package/lib/programmers/llm/LlmApplicationProgrammer.d.ts +1 -1
  356. package/lib/programmers/llm/LlmApplicationProgrammer.js +11 -11
  357. package/lib/programmers/llm/LlmApplicationProgrammer.js.map +1 -1
  358. package/lib/programmers/llm/LlmSchemaProgrammer.d.ts +1 -1
  359. package/lib/programmers/llm/LlmSchemaProgrammer.js +12 -12
  360. package/lib/programmers/llm/LlmSchemaProgrammer.js.map +1 -1
  361. package/lib/programmers/misc/MiscAssertCloneProgrammer.d.ts +2 -2
  362. package/lib/programmers/misc/MiscAssertCloneProgrammer.js +4 -4
  363. package/lib/programmers/misc/MiscAssertCloneProgrammer.js.map +1 -1
  364. package/lib/programmers/misc/MiscAssertPruneProgrammer.d.ts +2 -2
  365. package/lib/programmers/misc/MiscAssertPruneProgrammer.js +4 -4
  366. package/lib/programmers/misc/MiscAssertPruneProgrammer.js.map +1 -1
  367. package/lib/programmers/misc/MiscCloneProgrammer.d.ts +2 -2
  368. package/lib/programmers/misc/MiscCloneProgrammer.js +43 -37
  369. package/lib/programmers/misc/MiscCloneProgrammer.js.map +1 -1
  370. package/lib/programmers/misc/MiscIsCloneProgrammer.d.ts +2 -2
  371. package/lib/programmers/misc/MiscIsCloneProgrammer.js +4 -4
  372. package/lib/programmers/misc/MiscIsCloneProgrammer.js.map +1 -1
  373. package/lib/programmers/misc/MiscIsPruneProgrammer.d.ts +2 -2
  374. package/lib/programmers/misc/MiscIsPruneProgrammer.js +4 -4
  375. package/lib/programmers/misc/MiscIsPruneProgrammer.js.map +1 -1
  376. package/lib/programmers/misc/MiscPruneProgrammer.d.ts +2 -2
  377. package/lib/programmers/misc/MiscPruneProgrammer.js +33 -29
  378. package/lib/programmers/misc/MiscPruneProgrammer.js.map +1 -1
  379. package/lib/programmers/misc/MiscValidateCloneProgrammer.d.ts +2 -2
  380. package/lib/programmers/misc/MiscValidateCloneProgrammer.js +4 -4
  381. package/lib/programmers/misc/MiscValidateCloneProgrammer.js.map +1 -1
  382. package/lib/programmers/misc/MiscValidatePruneProgrammer.d.ts +2 -2
  383. package/lib/programmers/misc/MiscValidatePruneProgrammer.js +4 -4
  384. package/lib/programmers/misc/MiscValidatePruneProgrammer.js.map +1 -1
  385. package/lib/programmers/notations/NotationAssertGeneralProgrammer.d.ts +2 -2
  386. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js +4 -4
  387. package/lib/programmers/notations/NotationAssertGeneralProgrammer.js.map +1 -1
  388. package/lib/programmers/notations/NotationGeneralProgrammer.d.ts +2 -2
  389. package/lib/programmers/notations/NotationGeneralProgrammer.js +49 -35
  390. package/lib/programmers/notations/NotationGeneralProgrammer.js.map +1 -1
  391. package/lib/programmers/notations/NotationIsGeneralProgrammer.d.ts +2 -2
  392. package/lib/programmers/notations/NotationIsGeneralProgrammer.js +4 -4
  393. package/lib/programmers/notations/NotationIsGeneralProgrammer.js.map +1 -1
  394. package/lib/programmers/notations/NotationValidateGeneralProgrammer.d.ts +2 -2
  395. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js +4 -4
  396. package/lib/programmers/notations/NotationValidateGeneralProgrammer.js.map +1 -1
  397. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.d.ts +2 -2
  398. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js +4 -4
  399. package/lib/programmers/protobuf/ProtobufAssertDecodeProgrammer.js.map +1 -1
  400. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.d.ts +2 -2
  401. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js +4 -4
  402. package/lib/programmers/protobuf/ProtobufAssertEncodeProgrammer.js.map +1 -1
  403. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.d.ts +2 -2
  404. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js +14 -14
  405. package/lib/programmers/protobuf/ProtobufDecodeProgrammer.js.map +1 -1
  406. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.d.ts +2 -2
  407. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js +26 -22
  408. package/lib/programmers/protobuf/ProtobufEncodeProgrammer.js.map +1 -1
  409. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.d.ts +2 -2
  410. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js +4 -4
  411. package/lib/programmers/protobuf/ProtobufIsDecodeProgrammer.js.map +1 -1
  412. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.d.ts +2 -2
  413. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js +4 -4
  414. package/lib/programmers/protobuf/ProtobufIsEncodeProgrammer.js.map +1 -1
  415. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.d.ts +2 -2
  416. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js +4 -4
  417. package/lib/programmers/protobuf/ProtobufValidateDecodeProgrammer.js.map +1 -1
  418. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.d.ts +2 -2
  419. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js +4 -4
  420. package/lib/programmers/protobuf/ProtobufValidateEncodeProgrammer.js.map +1 -1
  421. package/lib/protobuf.d.ts +31 -63
  422. package/lib/protobuf.js +16 -83
  423. package/lib/protobuf.js.map +1 -1
  424. package/lib/reflect.d.ts +2 -4
  425. package/lib/reflect.js +1 -3
  426. package/lib/reflect.js.map +1 -1
  427. package/lib/transformers/FileTransformer.d.ts +1 -1
  428. package/lib/transformers/FileTransformer.js +36 -2
  429. package/lib/transformers/FileTransformer.js.map +1 -1
  430. package/lib/transformers/ITypiaContext.d.ts +2 -0
  431. package/lib/transformers/features/json/JsonApplicationTransformer.js +1 -1
  432. package/lib/transformers/features/json/JsonApplicationTransformer.js.map +1 -1
  433. package/lib/transformers/features/llm/LlmApplicationTransformer.js +3 -5
  434. package/lib/transformers/features/llm/LlmApplicationTransformer.js.map +1 -1
  435. package/lib/transformers/features/llm/LlmSchemaTransformer.js +1 -1
  436. package/lib/transformers/features/llm/LlmSchemaTransformer.js.map +1 -1
  437. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js +1 -1
  438. package/lib/transformers/features/reflect/ReflectMetadataTransformer.js.map +1 -1
  439. package/lib/utils/NamingConvention.d.ts +5 -0
  440. package/lib/utils/NamingConvention.js +102 -0
  441. package/lib/utils/NamingConvention.js.map +1 -0
  442. package/lib/utils/StringUtil.d.ts +8 -0
  443. package/lib/utils/StringUtil.js +19 -0
  444. package/lib/utils/StringUtil.js.map +1 -0
  445. package/package.json +2 -2
  446. package/src/IRandomGenerator.ts +11 -28
  447. package/src/Resolved.ts +74 -74
  448. package/src/executable/TypiaGenerateWizard.ts +83 -83
  449. package/src/executable/TypiaPatchWizard.ts +42 -42
  450. package/src/executable/TypiaSetupWizard.ts +174 -174
  451. package/src/executable/setup/ArgumentParser.ts +42 -42
  452. package/src/executable/setup/CommandExecutor.ts +8 -8
  453. package/src/executable/setup/FileRetriever.ts +19 -19
  454. package/src/executable/setup/PackageManager.ts +87 -87
  455. package/src/executable/setup/PluginConfigurator.ts +69 -69
  456. package/src/executable/typia.ts +55 -55
  457. package/src/factories/CommentFactory.ts +79 -79
  458. package/src/factories/ExpressionFactory.ts +3 -3
  459. package/src/factories/JsonMetadataFactory.ts +63 -63
  460. package/src/factories/LiteralFactory.ts +18 -15
  461. package/src/factories/MetadataCollection.ts +278 -278
  462. package/src/factories/MetadataCommentTagFactory.ts +650 -622
  463. package/src/factories/MetadataFactory.ts +400 -400
  464. package/src/factories/MetadataTypeTagSchemaFactory.ts +82 -82
  465. package/src/factories/ProtobufFactory.ts +275 -275
  466. package/src/factories/StatementFactory.ts +90 -90
  467. package/src/factories/TypeFactory.ts +140 -140
  468. package/src/factories/internal/metadata/IMetadataIteratorProps.ts +16 -16
  469. package/src/factories/internal/metadata/emplace_metadata_alias.ts +32 -32
  470. package/src/factories/internal/metadata/emplace_metadata_array_type.ts +39 -39
  471. package/src/factories/internal/metadata/emplace_metadata_object.ts +206 -206
  472. package/src/factories/internal/metadata/emplace_metadata_tuple.ts +56 -56
  473. package/src/factories/internal/metadata/explore_metadata.ts +30 -30
  474. package/src/factories/internal/metadata/iterate_metadata.ts +54 -54
  475. package/src/factories/internal/metadata/iterate_metadata_alias.ts +28 -28
  476. package/src/factories/internal/metadata/iterate_metadata_array.ts +63 -63
  477. package/src/factories/internal/metadata/iterate_metadata_atomic.ts +62 -62
  478. package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +28 -28
  479. package/src/factories/internal/metadata/iterate_metadata_collection.ts +145 -145
  480. package/src/factories/internal/metadata/iterate_metadata_comment_tags.ts +32 -32
  481. package/src/factories/internal/metadata/iterate_metadata_constant.ts +76 -76
  482. package/src/factories/internal/metadata/iterate_metadata_escape.ts +49 -49
  483. package/src/factories/internal/metadata/iterate_metadata_function.ts +88 -88
  484. package/src/factories/internal/metadata/iterate_metadata_intersection.ts +216 -216
  485. package/src/factories/internal/metadata/iterate_metadata_map.ts +52 -52
  486. package/src/factories/internal/metadata/iterate_metadata_native.ts +236 -236
  487. package/src/factories/internal/metadata/iterate_metadata_object.ts +27 -27
  488. package/src/factories/internal/metadata/iterate_metadata_set.ts +39 -39
  489. package/src/factories/internal/metadata/iterate_metadata_sort.ts +83 -83
  490. package/src/factories/internal/metadata/iterate_metadata_template.ts +42 -42
  491. package/src/factories/internal/metadata/iterate_metadata_tuple.ts +26 -26
  492. package/src/factories/internal/metadata/iterate_metadata_union.ts +19 -19
  493. package/src/functional.ts +36 -158
  494. package/src/http.ts +79 -303
  495. package/src/{functional → internal}/$ProtobufSizer.ts +11 -4
  496. package/src/{functional → internal}/$ProtobufWriter.ts +2 -2
  497. package/src/{functional/$join.ts → internal/$accessExpressionAsString.ts} +1 -1
  498. package/src/internal/$assertGuard.ts +13 -0
  499. package/src/internal/$functionalTypeGuardErrorFactory.ts +4 -0
  500. package/src/internal/$httpFormDataReadArray.ts +4 -0
  501. package/src/internal/$httpFormDataReadBigint.ts +18 -0
  502. package/src/internal/$httpFormDataReadBlob.ts +10 -0
  503. package/src/internal/$httpFormDataReadBoolean.ts +16 -0
  504. package/src/internal/$httpFormDataReadFile.ts +10 -0
  505. package/src/internal/$httpFormDataReadNumber.ts +15 -0
  506. package/src/internal/$httpFormDataReadString.ts +10 -0
  507. package/src/internal/$httpHeaderReadBigint.ts +10 -0
  508. package/src/internal/$httpHeaderReadBoolean.ts +8 -0
  509. package/src/internal/$httpHeaderReadNumber.ts +7 -0
  510. package/src/internal/$httpParameterBigint.ts +10 -0
  511. package/src/internal/$httpParameterBoolean.ts +8 -0
  512. package/src/internal/$httpParameterNumber.ts +7 -0
  513. package/src/internal/$httpParameterString.ts +2 -0
  514. package/src/internal/$httpQueryParseURLSearchParams.ts +10 -0
  515. package/src/internal/$httpQueryReadArray.ts +4 -0
  516. package/src/internal/$httpQueryReadBigint.ts +12 -0
  517. package/src/internal/$httpQueryReadBoolean.ts +14 -0
  518. package/src/internal/$httpQueryReadNumber.ts +9 -0
  519. package/src/internal/$httpQueryReadString.ts +4 -0
  520. package/src/internal/$isBetween.ts +2 -0
  521. package/src/{functional/$stoll.ts → internal/$isBigintString.ts} +1 -1
  522. package/src/{functional/$number.ts → internal/$jsonStringifyNumber.ts} +1 -1
  523. package/src/{functional/$rest.ts → internal/$jsonStringifyRest.ts} +1 -1
  524. package/src/{functional/$string.ts → internal/$jsonStringifyString.ts} +1 -1
  525. package/src/{functional/$tail.ts → internal/$jsonStringifyTail.ts} +1 -4
  526. package/src/internal/$llmApplicationFinalize.ts +18 -0
  527. package/src/{functional/$clone.ts → internal/$miscCloneAny.ts} +1 -1
  528. package/src/{functional/$convention.ts → internal/$notationAny.ts} +1 -1
  529. package/src/internal/$notationCamel.ts +13 -0
  530. package/src/internal/$notationPascal.ts +8 -0
  531. package/src/{utils/NamingConvention/NamingConvention.ts → internal/$notationSnake.ts} +2 -46
  532. package/src/internal/$randomArray.ts +21 -0
  533. package/src/internal/$randomBigint.ts +6 -0
  534. package/src/internal/$randomBoolean.ts +1 -0
  535. package/src/internal/$randomFormatByte.ts +3 -0
  536. package/src/internal/$randomFormatDate.ts +18 -0
  537. package/src/internal/$randomFormatDatetime.ts +16 -0
  538. package/src/internal/$randomFormatDuration.ts +27 -0
  539. package/src/internal/$randomFormatEmail.ts +11 -0
  540. package/src/internal/$randomFormatHostname.ts +6 -0
  541. package/src/internal/$randomFormatIdnEmail.ts +3 -0
  542. package/src/internal/$randomFormatIdnHostname.ts +3 -0
  543. package/src/internal/$randomFormatIpv4.ts +11 -0
  544. package/src/internal/$randomFormatIpv6.ts +11 -0
  545. package/src/internal/$randomFormatIri.ts +3 -0
  546. package/src/internal/$randomFormatIriReference.ts +3 -0
  547. package/src/internal/$randomFormatJsonPointer.ts +7 -0
  548. package/src/internal/$randomFormatPassword.ts +8 -0
  549. package/src/internal/$randomFormatRegex.ts +4 -0
  550. package/src/internal/$randomFormatRelativeJsonPointer.ts +8 -0
  551. package/src/internal/$randomFormatTime.ts +14 -0
  552. package/src/internal/$randomFormatUri.ts +3 -0
  553. package/src/internal/$randomFormatUriReference.ts +3 -0
  554. package/src/internal/$randomFormatUriTemplate.ts +3 -0
  555. package/src/internal/$randomFormatUrl.ts +11 -0
  556. package/src/internal/$randomFormatUuid.ts +6 -0
  557. package/src/internal/$randomInteger.ts +47 -0
  558. package/src/internal/$randomNumber.ts +74 -0
  559. package/src/internal/$randomPattern.ts +10 -0
  560. package/src/internal/$randomPick.ts +9 -0
  561. package/src/internal/$randomString.ts +24 -0
  562. package/src/internal/$throwTypeGuardError.ts +5 -0
  563. package/src/{functional/$report.ts → internal/$validateReport.ts} +1 -1
  564. package/src/{functional/IProtobufWriter.ts → internal/private/$__IProtobufWriter.ts} +1 -1
  565. package/src/internal/private/$__notationCapitalize.ts +2 -0
  566. package/src/internal/private/$__notationUnsnake.ts +24 -0
  567. package/src/json.ts +651 -738
  568. package/src/llm.ts +178 -186
  569. package/src/misc.ts +52 -151
  570. package/src/module.ts +933 -1023
  571. package/src/notations.ts +76 -269
  572. package/src/programmers/AssertProgrammer.ts +456 -441
  573. package/src/programmers/CheckerProgrammer.ts +1610 -1610
  574. package/src/programmers/FeatureProgrammer.ts +616 -616
  575. package/src/programmers/ImportProgrammer.ts +109 -0
  576. package/src/programmers/IsProgrammer.ts +273 -275
  577. package/src/programmers/RandomProgrammer.ts +424 -412
  578. package/src/programmers/TypiaProgrammer.ts +171 -171
  579. package/src/programmers/ValidateProgrammer.ts +430 -436
  580. package/src/programmers/functional/FunctionalAssertFunctionProgrammer.ts +153 -158
  581. package/src/programmers/functional/FunctionalAssertParametersProgrammer.ts +125 -125
  582. package/src/programmers/functional/FunctionalAssertReturnProgrammer.ts +115 -115
  583. package/src/programmers/functional/FunctionalIsFunctionProgrammer.ts +72 -72
  584. package/src/programmers/functional/FunctionalIsParametersProgrammer.ts +113 -113
  585. package/src/programmers/functional/FunctionalIsReturnProgrammer.ts +116 -116
  586. package/src/programmers/functional/FunctionalValidateFunctionProgrammer.ts +123 -123
  587. package/src/programmers/functional/FunctionalValidateParametersProgrammer.ts +281 -281
  588. package/src/programmers/functional/FunctionalValidateReturnProgrammer.ts +134 -134
  589. package/src/programmers/functional/internal/FunctionalGeneralProgrammer.ts +34 -34
  590. package/src/programmers/helpers/{FunctionImporter.ts → FunctionProgrammer.ts} +67 -98
  591. package/src/programmers/helpers/RandomJoiner.ts +97 -91
  592. package/src/programmers/helpers/StringifyJoinder.ts +4 -3
  593. package/src/programmers/helpers/disable_function_programmer_declare.ts +32 -0
  594. package/src/programmers/http/HttpAssertFormDataProgrammer.ts +96 -96
  595. package/src/programmers/http/HttpAssertHeadersProgrammer.ts +96 -96
  596. package/src/programmers/http/HttpAssertQueryProgrammer.ts +102 -102
  597. package/src/programmers/http/HttpFormDataProgrammer.ts +308 -305
  598. package/src/programmers/http/HttpHeadersProgrammer.ts +404 -378
  599. package/src/programmers/http/HttpIsFormDataProgrammer.ts +108 -108
  600. package/src/programmers/http/HttpIsHeadersProgrammer.ts +108 -108
  601. package/src/programmers/http/HttpIsQueryProgrammer.ts +114 -114
  602. package/src/programmers/http/HttpParameterProgrammer.ts +115 -118
  603. package/src/programmers/http/HttpQueryProgrammer.ts +333 -330
  604. package/src/programmers/http/HttpValidateFormDataProgrammer.ts +90 -90
  605. package/src/programmers/http/HttpValidateHeadersProgrammer.ts +90 -90
  606. package/src/programmers/http/HttpValidateQueryProgrammer.ts +96 -96
  607. package/src/programmers/internal/application_bigint.ts +25 -25
  608. package/src/programmers/internal/application_escaped.ts +96 -96
  609. package/src/programmers/internal/application_v30_alias.ts +59 -59
  610. package/src/programmers/internal/application_v30_object.ts +165 -165
  611. package/src/programmers/internal/application_v30_schema.ts +220 -220
  612. package/src/programmers/internal/application_v30_tuple.ts +33 -33
  613. package/src/programmers/internal/application_v31_constant.ts +29 -29
  614. package/src/programmers/internal/application_v31_object.ts +147 -147
  615. package/src/programmers/internal/application_v31_schema.ts +215 -215
  616. package/src/programmers/internal/check_array_length.ts +46 -46
  617. package/src/programmers/internal/check_bigint.ts +49 -49
  618. package/src/programmers/internal/check_dynamic_key.ts +201 -203
  619. package/src/programmers/internal/check_dynamic_properties.ts +208 -212
  620. package/src/programmers/internal/check_number.ts +111 -111
  621. package/src/programmers/internal/check_object.ts +75 -78
  622. package/src/programmers/internal/check_string.ts +49 -49
  623. package/src/programmers/internal/feature_object_entries.ts +7 -4
  624. package/src/programmers/internal/llm_schema_array.ts +22 -22
  625. package/src/programmers/internal/llm_schema_escaped.ts +84 -84
  626. package/src/programmers/internal/llm_schema_native.ts +17 -17
  627. package/src/programmers/internal/llm_schema_object.ts +132 -132
  628. package/src/programmers/internal/llm_schema_station.ts +190 -190
  629. package/src/programmers/internal/llm_schema_tuple.ts +31 -31
  630. package/src/programmers/internal/stringify_dynamic_properties.ts +162 -162
  631. package/src/programmers/internal/stringify_regular_properties.ts +81 -81
  632. package/src/programmers/json/JsonApplicationProgrammer.ts +92 -92
  633. package/src/programmers/json/JsonAssertParseProgrammer.ts +104 -104
  634. package/src/programmers/json/JsonAssertStringifyProgrammer.ts +112 -112
  635. package/src/programmers/json/JsonIsParseProgrammer.ts +118 -118
  636. package/src/programmers/json/JsonIsStringifyProgrammer.ts +108 -108
  637. package/src/programmers/json/JsonStringifyProgrammer.ts +1124 -1115
  638. package/src/programmers/json/JsonValidateParseProgrammer.ts +95 -95
  639. package/src/programmers/json/JsonValidateStringifyProgrammer.ts +119 -119
  640. package/src/programmers/llm/LlmApplicationProgrammer.ts +235 -235
  641. package/src/programmers/llm/LlmSchemaProgrammer.ts +51 -49
  642. package/src/programmers/misc/MiscAssertCloneProgrammer.ts +92 -92
  643. package/src/programmers/misc/MiscAssertPruneProgrammer.ts +113 -113
  644. package/src/programmers/misc/MiscCloneProgrammer.ts +1029 -1019
  645. package/src/programmers/misc/MiscIsCloneProgrammer.ts +99 -99
  646. package/src/programmers/misc/MiscIsPruneProgrammer.ts +97 -97
  647. package/src/programmers/misc/MiscLiteralsProgrammer.ts +80 -80
  648. package/src/programmers/misc/MiscPruneProgrammer.ts +725 -717
  649. package/src/programmers/misc/MiscValidateCloneProgrammer.ts +109 -109
  650. package/src/programmers/misc/MiscValidatePruneProgrammer.ts +109 -109
  651. package/src/programmers/notations/NotationAssertGeneralProgrammer.ts +98 -98
  652. package/src/programmers/notations/NotationGeneralProgrammer.ts +973 -953
  653. package/src/programmers/notations/NotationIsGeneralProgrammer.ts +105 -105
  654. package/src/programmers/notations/NotationValidateGeneralProgrammer.ts +117 -117
  655. package/src/programmers/protobuf/ProtobufAssertDecodeProgrammer.ts +95 -95
  656. package/src/programmers/protobuf/ProtobufAssertEncodeProgrammer.ts +99 -99
  657. package/src/programmers/protobuf/ProtobufDecodeProgrammer.ts +711 -711
  658. package/src/programmers/protobuf/ProtobufEncodeProgrammer.ts +1019 -1010
  659. package/src/programmers/protobuf/ProtobufIsDecodeProgrammer.ts +109 -109
  660. package/src/programmers/protobuf/ProtobufIsEncodeProgrammer.ts +98 -98
  661. package/src/programmers/protobuf/ProtobufMessageProgrammer.ts +201 -201
  662. package/src/programmers/protobuf/ProtobufValidateDecodeProgrammer.ts +90 -90
  663. package/src/programmers/protobuf/ProtobufValidateEncodeProgrammer.ts +114 -114
  664. package/src/protobuf.ts +868 -999
  665. package/src/reflect.ts +3 -9
  666. package/src/schemas/json/IJsonApplication.ts +22 -22
  667. package/src/schemas/metadata/IMetadata.ts +36 -36
  668. package/src/schemas/metadata/IMetadataConstantValue.ts +11 -11
  669. package/src/schemas/metadata/IMetadataFunction.ts +8 -8
  670. package/src/schemas/metadata/IMetadataParameter.ts +9 -9
  671. package/src/schemas/metadata/IMetadataTemplate.ts +7 -7
  672. package/src/schemas/metadata/Metadata.ts +616 -616
  673. package/src/schemas/metadata/MetadataAtomic.ts +87 -87
  674. package/src/schemas/metadata/MetadataFunction.ts +49 -49
  675. package/src/schemas/metadata/MetadataParameter.ts +50 -50
  676. package/src/tags/Constant.ts +15 -15
  677. package/src/tags/Default.ts +22 -22
  678. package/src/tags/Example.ts +17 -17
  679. package/src/tags/Examples.ts +16 -16
  680. package/src/tags/ExclusiveMaximum.ts +25 -25
  681. package/src/tags/ExclusiveMinimum.ts +25 -25
  682. package/src/tags/JsonSchemaPlugin.ts +8 -8
  683. package/src/tags/Maximum.ts +19 -19
  684. package/src/tags/Minimum.ts +19 -19
  685. package/src/tags/MultipleOf.ts +21 -21
  686. package/src/tags/Pattern.ts +31 -31
  687. package/src/tags/Type.ts +32 -32
  688. package/src/tags/index.ts +20 -20
  689. package/src/transform.ts +35 -35
  690. package/src/transformers/CallExpressionTransformer.ts +540 -540
  691. package/src/transformers/FileTransformer.ts +120 -101
  692. package/src/transformers/IProgrammerProps.ts +11 -11
  693. package/src/transformers/ITransformProps.ts +9 -9
  694. package/src/transformers/ITypiaContext.ts +18 -15
  695. package/src/transformers/NodeTransformer.ts +17 -17
  696. package/src/transformers/TransformerError.ts +59 -59
  697. package/src/transformers/features/AssertTransformer.ts +24 -24
  698. package/src/transformers/features/CreateAssertTransformer.ts +24 -24
  699. package/src/transformers/features/CreateIsTransformer.ts +18 -18
  700. package/src/transformers/features/CreateRandomTransformer.ts +43 -43
  701. package/src/transformers/features/CreateValidateTransformer.ts +18 -18
  702. package/src/transformers/features/IsTransformer.ts +18 -18
  703. package/src/transformers/features/RandomTransformer.ts +41 -41
  704. package/src/transformers/features/ValidateTransformer.ts +18 -18
  705. package/src/transformers/features/functional/FunctionalGenericTransformer.ts +57 -57
  706. package/src/transformers/features/http/CreateHttpAssertFormDataTransformer.ts +13 -13
  707. package/src/transformers/features/http/CreateHttpAssertHeadersTransformer.ts +13 -13
  708. package/src/transformers/features/http/CreateHttpAssertQueryTransformer.ts +13 -13
  709. package/src/transformers/features/http/CreateHttpFormDataTransformer.ts +13 -13
  710. package/src/transformers/features/http/CreateHttpHeadersTransformer.ts +13 -13
  711. package/src/transformers/features/http/CreateHttpIsFormDataTransformer.ts +13 -13
  712. package/src/transformers/features/http/CreateHttpIsHeadersTransformer.ts +13 -13
  713. package/src/transformers/features/http/CreateHttpIsQueryTransformer.ts +13 -13
  714. package/src/transformers/features/http/CreateHttpParameterTransformer.ts +13 -13
  715. package/src/transformers/features/http/CreateHttpQueryTransformer.ts +13 -13
  716. package/src/transformers/features/http/CreateHttpValidateFormDataTransformer.ts +13 -13
  717. package/src/transformers/features/http/CreateHttpValidateHeadersTransformer.ts +13 -13
  718. package/src/transformers/features/http/CreateHttpValidateQueryTransformer.ts +13 -13
  719. package/src/transformers/features/http/HttpAssertFormDataTransformer.ts +13 -13
  720. package/src/transformers/features/http/HttpAssertHeadersTransformer.ts +13 -13
  721. package/src/transformers/features/http/HttpAssertQueryTransformer.ts +13 -13
  722. package/src/transformers/features/http/HttpFormDataTransformer.ts +13 -13
  723. package/src/transformers/features/http/HttpHeadersTransformer.ts +13 -13
  724. package/src/transformers/features/http/HttpIsFormDataTransformer.ts +13 -13
  725. package/src/transformers/features/http/HttpIsHeadersTransformer.ts +13 -13
  726. package/src/transformers/features/http/HttpIsQueryTransformer.ts +13 -13
  727. package/src/transformers/features/http/HttpParameterTransformer.ts +13 -13
  728. package/src/transformers/features/http/HttpQueryTransformer.ts +13 -13
  729. package/src/transformers/features/http/HttpValidateFormDataTransformer.ts +13 -13
  730. package/src/transformers/features/http/HttpValidateHeadersTransformer.ts +13 -13
  731. package/src/transformers/features/http/HttpValidateQueryTransformer.ts +13 -13
  732. package/src/transformers/features/json/JsonApplicationTransformer.ts +130 -130
  733. package/src/transformers/features/json/JsonAssertParseTransformer.ts +13 -13
  734. package/src/transformers/features/json/JsonAssertStringifyTransformer.ts +13 -13
  735. package/src/transformers/features/json/JsonCreateAssertParseTransformer.ts +13 -13
  736. package/src/transformers/features/json/JsonCreateAssertStringifyTransformer.ts +13 -13
  737. package/src/transformers/features/json/JsonCreateIsParseTransformer.ts +13 -13
  738. package/src/transformers/features/json/JsonCreateIsStringifyTransformer.ts +13 -13
  739. package/src/transformers/features/json/JsonCreateStringifyTransformer.ts +13 -13
  740. package/src/transformers/features/json/JsonCreateValidateParseTransformer.ts +13 -13
  741. package/src/transformers/features/json/JsonCreateValidateStringifyProgrammer.ts +13 -13
  742. package/src/transformers/features/json/JsonIsParseTransformer.ts +13 -13
  743. package/src/transformers/features/json/JsonIsStringifyTransformer.ts +13 -13
  744. package/src/transformers/features/json/JsonStringifyTransformer.ts +13 -13
  745. package/src/transformers/features/json/JsonValidateParseTransformer.ts +13 -13
  746. package/src/transformers/features/json/JsonValidateStringifyTransformer.ts +13 -13
  747. package/src/transformers/features/llm/LlmApplicationTransformer.ts +86 -91
  748. package/src/transformers/features/llm/LlmSchemaTransformer.ts +59 -59
  749. package/src/transformers/features/misc/MiscAssertCloneTransformer.ts +13 -13
  750. package/src/transformers/features/misc/MiscAssertPruneTransformer.ts +13 -13
  751. package/src/transformers/features/misc/MiscCloneTransformer.ts +13 -13
  752. package/src/transformers/features/misc/MiscCreateAssertCloneTransformer.ts +13 -13
  753. package/src/transformers/features/misc/MiscCreateAssertPruneTransformer.ts +13 -13
  754. package/src/transformers/features/misc/MiscCreateCloneTransformer.ts +13 -13
  755. package/src/transformers/features/misc/MiscCreateIsCloneTransformer.ts +13 -13
  756. package/src/transformers/features/misc/MiscCreateIsPruneTransformer.ts +13 -13
  757. package/src/transformers/features/misc/MiscCreatePruneTransformer.ts +13 -13
  758. package/src/transformers/features/misc/MiscCreateValidateCloneTransformer.ts +13 -13
  759. package/src/transformers/features/misc/MiscCreateValidatePruneTransformer.ts +13 -13
  760. package/src/transformers/features/misc/MiscIsCloneTransformer.ts +13 -13
  761. package/src/transformers/features/misc/MiscIsPruneTransformer.ts +13 -13
  762. package/src/transformers/features/misc/MiscLiteralsTransformer.ts +35 -35
  763. package/src/transformers/features/misc/MiscPruneTransformer.ts +13 -13
  764. package/src/transformers/features/misc/MiscValidateCloneTransformer.ts +13 -13
  765. package/src/transformers/features/misc/MiscValidatePruneTransformer.ts +13 -13
  766. package/src/transformers/features/notations/NotationAssertGeneralTransformer.ts +20 -20
  767. package/src/transformers/features/notations/NotationCreateAssertGeneralTransformer.ts +20 -20
  768. package/src/transformers/features/notations/NotationCreateGeneralTransformer.ts +20 -20
  769. package/src/transformers/features/notations/NotationCreateIsGeneralTransformer.ts +20 -20
  770. package/src/transformers/features/notations/NotationCreateValidateGeneralTransformer.ts +20 -20
  771. package/src/transformers/features/notations/NotationGeneralTransformer.ts +18 -18
  772. package/src/transformers/features/notations/NotationIsGeneralTransformer.ts +20 -20
  773. package/src/transformers/features/notations/NotationValidateGeneralTransformer.ts +20 -20
  774. package/src/transformers/features/protobuf/ProtobufAssertDecodeTransformer.ts +13 -13
  775. package/src/transformers/features/protobuf/ProtobufAssertEncodeTransformer.ts +13 -13
  776. package/src/transformers/features/protobuf/ProtobufCreateAssertDecodeTransformer.ts +13 -13
  777. package/src/transformers/features/protobuf/ProtobufCreateAssertEncodeTransformer.ts +13 -13
  778. package/src/transformers/features/protobuf/ProtobufCreateDecodeTransformer.ts +13 -13
  779. package/src/transformers/features/protobuf/ProtobufCreateEncodeTransformer.ts +13 -13
  780. package/src/transformers/features/protobuf/ProtobufCreateIsDecodeTransformer.ts +13 -13
  781. package/src/transformers/features/protobuf/ProtobufCreateIsEncodeTransformer.ts +13 -13
  782. package/src/transformers/features/protobuf/ProtobufCreateValidateDecodeTransformer.ts +13 -13
  783. package/src/transformers/features/protobuf/ProtobufCreateValidateEncodeTransformer.ts +13 -13
  784. package/src/transformers/features/protobuf/ProtobufDecodeTransformer.ts +13 -13
  785. package/src/transformers/features/protobuf/ProtobufEncodeTransformer.ts +13 -13
  786. package/src/transformers/features/protobuf/ProtobufIsDecodeTransformer.ts +13 -13
  787. package/src/transformers/features/protobuf/ProtobufIsEncodeTransformer.ts +13 -13
  788. package/src/transformers/features/protobuf/ProtobufMessageTransformer.ts +35 -35
  789. package/src/transformers/features/protobuf/ProtobufValidateDecodeTransformer.ts +13 -13
  790. package/src/transformers/features/protobuf/ProtobufValidateEncodeTransformer.ts +13 -13
  791. package/src/transformers/features/reflect/ReflectMetadataTransformer.ts +69 -69
  792. package/src/transformers/features/reflect/ReflectNameTransformer.ts +82 -82
  793. package/src/transformers/internal/GenericTransformer.ts +101 -101
  794. package/src/utils/Escaper.ts +50 -50
  795. package/src/utils/NamingConvention.ts +94 -0
  796. package/src/utils/StringUtil.ts +16 -0
  797. package/lib/functional/$FormDataReader/$FormDataReader.d.ts +0 -7
  798. package/lib/functional/$FormDataReader/$FormDataReader.js +0 -86
  799. package/lib/functional/$FormDataReader/$FormDataReader.js.map +0 -1
  800. package/lib/functional/$FormDataReader/index.d.ts +0 -1
  801. package/lib/functional/$FormDataReader/index.js +0 -28
  802. package/lib/functional/$FormDataReader/index.js.map +0 -1
  803. package/lib/functional/$HeadersReader/$HeadersReader.d.ts +0 -4
  804. package/lib/functional/$HeadersReader/$HeadersReader.js +0 -36
  805. package/lib/functional/$HeadersReader/$HeadersReader.js.map +0 -1
  806. package/lib/functional/$HeadersReader/index.d.ts +0 -1
  807. package/lib/functional/$HeadersReader/index.js +0 -28
  808. package/lib/functional/$HeadersReader/index.js.map +0 -1
  809. package/lib/functional/$ParameterReader/$ParameterReader.d.ts +0 -4
  810. package/lib/functional/$ParameterReader/$ParameterReader.js +0 -36
  811. package/lib/functional/$ParameterReader/$ParameterReader.js.map +0 -1
  812. package/lib/functional/$ParameterReader/index.d.ts +0 -1
  813. package/lib/functional/$ParameterReader/index.js +0 -28
  814. package/lib/functional/$ParameterReader/index.js.map +0 -1
  815. package/lib/functional/$ProtobufReader.js.map +0 -1
  816. package/lib/functional/$ProtobufSizer.js.map +0 -1
  817. package/lib/functional/$ProtobufWriter.js.map +0 -1
  818. package/lib/functional/$QueryReader/$QueryReader.d.ts +0 -6
  819. package/lib/functional/$QueryReader/$QueryReader.js +0 -55
  820. package/lib/functional/$QueryReader/$QueryReader.js.map +0 -1
  821. package/lib/functional/$QueryReader/index.d.ts +0 -1
  822. package/lib/functional/$QueryReader/index.js +0 -28
  823. package/lib/functional/$QueryReader/index.js.map +0 -1
  824. package/lib/functional/$any.d.ts +0 -1
  825. package/lib/functional/$any.js +0 -7
  826. package/lib/functional/$any.js.map +0 -1
  827. package/lib/functional/$clone.d.ts +0 -2
  828. package/lib/functional/$clone.js.map +0 -1
  829. package/lib/functional/$convention.d.ts +0 -1
  830. package/lib/functional/$dictionary.d.ts +0 -2
  831. package/lib/functional/$dictionary.js +0 -18
  832. package/lib/functional/$dictionary.js.map +0 -1
  833. package/lib/functional/$every.d.ts +0 -2
  834. package/lib/functional/$every.js +0 -12
  835. package/lib/functional/$every.js.map +0 -1
  836. package/lib/functional/$guard.js +0 -21
  837. package/lib/functional/$guard.js.map +0 -1
  838. package/lib/functional/$is_between.d.ts +0 -1
  839. package/lib/functional/$is_between.js +0 -8
  840. package/lib/functional/$is_between.js.map +0 -1
  841. package/lib/functional/$join.d.ts +0 -1
  842. package/lib/functional/$join.js.map +0 -1
  843. package/lib/functional/$number.d.ts +0 -1
  844. package/lib/functional/$number.js.map +0 -1
  845. package/lib/functional/$report.d.ts +0 -2
  846. package/lib/functional/$report.js.map +0 -1
  847. package/lib/functional/$rest.d.ts +0 -1
  848. package/lib/functional/$rest.js +0 -8
  849. package/lib/functional/$rest.js.map +0 -1
  850. package/lib/functional/$stoll.d.ts +0 -1
  851. package/lib/functional/$stoll.js.map +0 -1
  852. package/lib/functional/$string.d.ts +0 -1
  853. package/lib/functional/$string.js.map +0 -1
  854. package/lib/functional/$strlen.d.ts +0 -1
  855. package/lib/functional/$strlen.js +0 -13
  856. package/lib/functional/$strlen.js.map +0 -1
  857. package/lib/functional/$tail.d.ts +0 -1
  858. package/lib/functional/$tail.js +0 -11
  859. package/lib/functional/$tail.js.map +0 -1
  860. package/lib/functional/$throws.d.ts +0 -2
  861. package/lib/functional/$throws.js +0 -22
  862. package/lib/functional/$throws.js.map +0 -1
  863. package/lib/functional/IProtobufWriter.js.map +0 -1
  864. package/lib/functional/Namespace/functional.d.ts +0 -4
  865. package/lib/functional/Namespace/functional.js +0 -9
  866. package/lib/functional/Namespace/functional.js.map +0 -1
  867. package/lib/functional/Namespace/http.d.ts +0 -8
  868. package/lib/functional/Namespace/http.js +0 -16
  869. package/lib/functional/Namespace/http.js.map +0 -1
  870. package/lib/functional/Namespace/index.d.ts +0 -31
  871. package/lib/functional/Namespace/index.js +0 -86
  872. package/lib/functional/Namespace/index.js.map +0 -1
  873. package/lib/functional/Namespace/json.d.ts +0 -9
  874. package/lib/functional/Namespace/json.js +0 -23
  875. package/lib/functional/Namespace/json.js.map +0 -1
  876. package/lib/functional/Namespace/llm.d.ts +0 -4
  877. package/lib/functional/Namespace/llm.js +0 -44
  878. package/lib/functional/Namespace/llm.js.map +0 -1
  879. package/lib/functional/Namespace/misc.d.ts +0 -11
  880. package/lib/functional/Namespace/misc.js +0 -22
  881. package/lib/functional/Namespace/misc.js.map +0 -1
  882. package/lib/functional/Namespace/notations.d.ts +0 -18
  883. package/lib/functional/Namespace/notations.js +0 -26
  884. package/lib/functional/Namespace/notations.js.map +0 -1
  885. package/lib/functional/Namespace/protobuf.d.ts +0 -17
  886. package/lib/functional/Namespace/protobuf.js +0 -25
  887. package/lib/functional/Namespace/protobuf.js.map +0 -1
  888. package/lib/functional/is.d.ts +0 -1
  889. package/lib/functional/is.js +0 -14
  890. package/lib/functional/is.js.map +0 -1
  891. package/lib/programmers/helpers/FunctionImporter.js.map +0 -1
  892. package/lib/programmers/helpers/RandomRanger.d.ts +0 -33
  893. package/lib/programmers/helpers/RandomRanger.js +0 -158
  894. package/lib/programmers/helpers/RandomRanger.js.map +0 -1
  895. package/lib/programmers/helpers/disable_function_importer_declare.d.ts +0 -2
  896. package/lib/programmers/helpers/disable_function_importer_declare.js +0 -19
  897. package/lib/programmers/helpers/disable_function_importer_declare.js.map +0 -1
  898. package/lib/programmers/internal/random_custom.d.ts +0 -1
  899. package/lib/programmers/internal/random_custom.js +0 -23
  900. package/lib/programmers/internal/random_custom.js.map +0 -1
  901. package/lib/utils/NamingConvention/NamingConvention.d.ts +0 -3
  902. package/lib/utils/NamingConvention/NamingConvention.js +0 -93
  903. package/lib/utils/NamingConvention/NamingConvention.js.map +0 -1
  904. package/lib/utils/NamingConvention/index.d.ts +0 -1
  905. package/lib/utils/NamingConvention/index.js +0 -28
  906. package/lib/utils/NamingConvention/index.js.map +0 -1
  907. package/lib/utils/RandomGenerator/RandomGenerator.d.ts +0 -31
  908. package/lib/utils/RandomGenerator/RandomGenerator.js +0 -176
  909. package/lib/utils/RandomGenerator/RandomGenerator.js.map +0 -1
  910. package/lib/utils/RandomGenerator/index.d.ts +0 -1
  911. package/lib/utils/RandomGenerator/index.js +0 -28
  912. package/lib/utils/RandomGenerator/index.js.map +0 -1
  913. package/lib/utils/StringUtil/StringUtil.d.ts +0 -6
  914. package/lib/utils/StringUtil/StringUtil.js +0 -18
  915. package/lib/utils/StringUtil/StringUtil.js.map +0 -1
  916. package/lib/utils/StringUtil/index.d.ts +0 -1
  917. package/lib/utils/StringUtil/index.js +0 -28
  918. package/lib/utils/StringUtil/index.js.map +0 -1
  919. package/src/functional/$FormDataReader/$FormDataReader.ts +0 -83
  920. package/src/functional/$FormDataReader/index.ts +0 -1
  921. package/src/functional/$HeadersReader/$HeadersReader.ts +0 -26
  922. package/src/functional/$HeadersReader/index.ts +0 -1
  923. package/src/functional/$ParameterReader/$ParameterReader.ts +0 -29
  924. package/src/functional/$ParameterReader/index.ts +0 -1
  925. package/src/functional/$QueryReader/$QueryReader.ts +0 -46
  926. package/src/functional/$QueryReader/index.ts +0 -1
  927. package/src/functional/$any.ts +0 -3
  928. package/src/functional/$dictionary.ts +0 -22
  929. package/src/functional/$every.ts +0 -11
  930. package/src/functional/$guard.ts +0 -21
  931. package/src/functional/$is_between.ts +0 -2
  932. package/src/functional/$strlen.ts +0 -7
  933. package/src/functional/$throws.ts +0 -10
  934. package/src/functional/Namespace/functional.ts +0 -5
  935. package/src/functional/Namespace/http.ts +0 -9
  936. package/src/functional/Namespace/index.ts +0 -77
  937. package/src/functional/Namespace/json.ts +0 -15
  938. package/src/functional/Namespace/llm.ts +0 -20
  939. package/src/functional/Namespace/misc.ts +0 -14
  940. package/src/functional/Namespace/notations.ts +0 -23
  941. package/src/functional/Namespace/protobuf.ts +0 -20
  942. package/src/functional/is.ts +0 -10
  943. package/src/programmers/helpers/RandomRanger.ts +0 -225
  944. package/src/programmers/helpers/disable_function_importer_declare.ts +0 -33
  945. package/src/programmers/internal/random_custom.ts +0 -39
  946. package/src/utils/NamingConvention/index.ts +0 -1
  947. package/src/utils/RandomGenerator/RandomGenerator.ts +0 -119
  948. package/src/utils/RandomGenerator/index.ts +0 -1
  949. package/src/utils/StringUtil/StringUtil.ts +0 -14
  950. package/src/utils/StringUtil/index.ts +0 -1
  951. /package/lib/{functional → internal}/$ProtobufReader.d.ts +0 -0
  952. /package/lib/{functional → internal}/$ProtobufReader.js +0 -0
  953. /package/lib/{functional → internal}/$ProtobufWriter.js +0 -0
  954. /package/lib/{functional/$guard.d.ts → internal/$jsonStringifyString.d.ts} +0 -0
  955. /package/src/{functional → internal}/$ProtobufReader.ts +0 -0
@@ -5,7 +5,7 @@ import { MetadataArray } from "../schemas/metadata/MetadataArray";
5
5
  import { MetadataObject } from "../schemas/metadata/MetadataObject";
6
6
  import { ITypiaContext } from "../transformers/ITypiaContext";
7
7
  import { CheckerProgrammer } from "./CheckerProgrammer";
8
- import { FunctionImporter } from "./helpers/FunctionImporter";
8
+ import { FunctionProgrammer } from "./helpers/FunctionProgrammer";
9
9
  import { IExpressionEntry } from "./helpers/IExpressionEntry";
10
10
  export declare namespace FeatureProgrammer {
11
11
  interface IConfig<Output extends ts.ConciseBody = ts.ConciseBody> {
@@ -28,7 +28,7 @@ export declare namespace FeatureProgrammer {
28
28
  */
29
29
  initializer: (props: {
30
30
  context: ITypiaContext;
31
- importer: FunctionImporter;
31
+ functor: FunctionProgrammer;
32
32
  type: ts.Type;
33
33
  }) => [MetadataCollection, Metadata];
34
34
  /**
@@ -185,25 +185,25 @@ export declare namespace FeatureProgrammer {
185
185
  const compose: (props: {
186
186
  context: ITypiaContext;
187
187
  config: IConfig;
188
- importer: FunctionImporter;
188
+ functor: FunctionProgrammer;
189
189
  type: ts.Type;
190
190
  name: string | undefined;
191
191
  }) => IComposed;
192
192
  const writeDecomposed: (props: {
193
193
  modulo: ts.LeftHandSideExpression;
194
- importer: FunctionImporter;
194
+ functor: FunctionProgrammer;
195
195
  result: IDecomposed;
196
196
  }) => ts.CallExpression;
197
197
  const write: (props: {
198
198
  context: ITypiaContext;
199
199
  config: IConfig;
200
- importer: FunctionImporter;
200
+ functor: FunctionProgrammer;
201
201
  type: ts.Type;
202
202
  name?: string | undefined;
203
203
  }) => ts.ArrowFunction;
204
204
  const write_object_functions: (props: {
205
205
  config: IConfig;
206
- importer: FunctionImporter;
206
+ context: ITypiaContext;
207
207
  collection: MetadataCollection;
208
208
  }) => ts.VariableStatement[];
209
209
  const write_union_functions: (props: {
@@ -212,7 +212,7 @@ export declare namespace FeatureProgrammer {
212
212
  }) => ts.VariableStatement[];
213
213
  const decode_array: (props: {
214
214
  config: Pick<IConfig, "trace" | "path" | "decoder" | "prefix">;
215
- importer: FunctionImporter;
215
+ functor: FunctionProgrammer;
216
216
  combiner: (next: {
217
217
  input: ts.Expression;
218
218
  arrow: ts.ArrowFunction;
@@ -223,7 +223,7 @@ export declare namespace FeatureProgrammer {
223
223
  }) => ts.Expression;
224
224
  const decode_object: (props: {
225
225
  config: Pick<IConfig, "trace" | "path" | "prefix">;
226
- importer: FunctionImporter;
226
+ functor: FunctionProgrammer;
227
227
  object: MetadataObject;
228
228
  input: ts.Expression;
229
229
  explore: IExplore;
@@ -83,10 +83,10 @@ var FeatureProgrammer;
83
83
  };
84
84
  };
85
85
  FeatureProgrammer.writeDecomposed = function (props) {
86
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(props.importer.declare(props.modulo)), false), __read(Object.entries(props.result.functions)
86
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(props.functor.declare()), false), __read(Object.entries(props.result.functions)
87
87
  .filter(function (_a) {
88
88
  var _b = __read(_a, 1), k = _b[0];
89
- return props.importer.hasLocal(k);
89
+ return props.functor.hasLocal(k);
90
90
  })
91
91
  .map(function (_a) {
92
92
  var _b = __read(_a, 2), _k = _b[0], v = _b[1];
@@ -113,7 +113,7 @@ var FeatureProgrammer;
113
113
  var functions = {
114
114
  objects: (_c = (_b = (_a = props.config.generator).objects) === null || _b === void 0 ? void 0 : _b.call(_a, collection)) !== null && _c !== void 0 ? _c : FeatureProgrammer.write_object_functions({
115
115
  config: props.config,
116
- importer: props.importer,
116
+ context: props.context,
117
117
  collection: collection,
118
118
  }),
119
119
  unions: (_f = (_e = (_d = props.config.generator).unions) === null || _e === void 0 ? void 0 : _e.call(_d, collection)) !== null && _f !== void 0 ? _f : FeatureProgrammer.write_union_functions({
@@ -129,13 +129,13 @@ var FeatureProgrammer;
129
129
  type: props.config.types.input(props.type, props.name),
130
130
  input: ValueFactory_1.ValueFactory.INPUT(),
131
131
  }), props.config.types.output(props.type, props.name), undefined, typescript_1.default.factory.createBlock(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(added), false), __read(functions.objects.filter(function (_, i) {
132
- return props.importer.hasLocal("".concat(props.config.prefix, "o").concat(i));
132
+ return props.functor.hasLocal("".concat(props.config.prefix, "o").concat(i));
133
133
  })), false), __read(functions.unions.filter(function (_, i) {
134
- return props.importer.hasLocal("".concat(props.config.prefix, "u").concat(i));
134
+ return props.functor.hasLocal("".concat(props.config.prefix, "u").concat(i));
135
135
  })), false), __read(functions.arrays.filter(function (_, i) {
136
- return props.importer.hasLocal("".concat(props.config.prefix, "a").concat(i));
136
+ return props.functor.hasLocal("".concat(props.config.prefix, "a").concat(i));
137
137
  })), false), __read(functions.tuples.filter(function (_, i) {
138
- return props.importer.hasLocal("".concat(props.config.prefix, "t").concat(i));
138
+ return props.functor.hasLocal("".concat(props.config.prefix, "t").concat(i));
139
139
  })), false), __read((typescript_1.default.isBlock(output)
140
140
  ? output.statements
141
141
  : [typescript_1.default.factory.createReturnStatement(output)])), false), true));
@@ -153,7 +153,7 @@ var FeatureProgrammer;
153
153
  input: typescript_1.default.factory.createIdentifier("input"),
154
154
  entries: (0, feature_object_entries_1.feature_object_entries)({
155
155
  config: props.config,
156
- importer: props.importer,
156
+ context: props.context,
157
157
  input: typescript_1.default.factory.createIdentifier("input"),
158
158
  object: object,
159
159
  }),
@@ -195,7 +195,7 @@ var FeatureProgrammer;
195
195
  ----------------------------------------------------------- */
196
196
  FeatureProgrammer.decode_array = function (props) {
197
197
  var _a;
198
- var rand = props.importer.increment().toString();
198
+ var rand = props.functor.increment().toString();
199
199
  var tail = props.config.path || props.config.trace
200
200
  ? [
201
201
  IdentifierFactory_1.IdentifierFactory.parameter("_index" + rand, TypeFactory_1.TypeFactory.keyword("number")),
@@ -223,7 +223,7 @@ var FeatureProgrammer;
223
223
  });
224
224
  };
225
225
  FeatureProgrammer.decode_object = function (props) {
226
- return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.importer.useLocal("".concat(props.config.prefix, "o").concat(props.object.index))), undefined, FeatureProgrammer.argumentsArray(props));
226
+ return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(props.functor.useLocal("".concat(props.config.prefix, "o").concat(props.object.index))), undefined, FeatureProgrammer.argumentsArray(props));
227
227
  };
228
228
  /* -----------------------------------------------------------
229
229
  UTILITIES FOR INTERNAL FUNCTIONS
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureProgrammer.js","sourceRoot":"","sources":["../../src/programmers/FeatureProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FeatureProgrammer.js","sourceRoot":"","sources":["../../src/programmers/FeatureProgrammer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import ts from "typescript";
2
+ export declare class ImportProgrammer {
3
+ private readonly assets_;
4
+ constructor();
5
+ namespace(props: {
6
+ file: string;
7
+ name: string;
8
+ }): ts.Identifier;
9
+ toStatements(): ts.ImportDeclaration[];
10
+ }
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
13
+ var __read = (this && this.__read) || function (o, n) {
14
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
15
+ if (!m) return o;
16
+ var i = m.call(o), r, ar = [], e;
17
+ try {
18
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
19
+ }
20
+ catch (error) { e = { error: error }; }
21
+ finally {
22
+ try {
23
+ if (r && !r.done && (m = i["return"])) m.call(i);
24
+ }
25
+ finally { if (e) throw e.error; }
26
+ }
27
+ return ar;
28
+ };
29
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
30
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
31
+ if (ar || !(i in from)) {
32
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
33
+ ar[i] = from[i];
34
+ }
35
+ }
36
+ return to.concat(ar || Array.prototype.slice.call(from));
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.ImportProgrammer = void 0;
43
+ var typescript_1 = __importDefault(require("typescript"));
44
+ var MapUtil_1 = require("../utils/MapUtil");
45
+ var ImportProgrammer = /** @class */ (function () {
46
+ function ImportProgrammer() {
47
+ this.assets_ = new Map();
48
+ }
49
+ ImportProgrammer.prototype.namespace = function (props) {
50
+ var _a;
51
+ var asset = this.take(props.file);
52
+ (_a = asset.namespace) !== null && _a !== void 0 ? _a : (asset.namespace = props.name);
53
+ return typescript_1.default.factory.createIdentifier(asset.namespace);
54
+ };
55
+ ImportProgrammer.prototype.toStatements = function () {
56
+ var e_1, _a;
57
+ var statements = [];
58
+ try {
59
+ for (var _b = __values(this.assets_.values()), _c = _b.next(); !_c.done; _c = _b.next()) {
60
+ var asset = _c.value;
61
+ if (asset.namespace !== null)
62
+ statements.push(typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, undefined, typescript_1.default.factory.createNamespaceImport(typescript_1.default.factory.createIdentifier(asset.namespace))), typescript_1.default.factory.createStringLiteral(asset.file)));
63
+ if (asset.default !== null || asset.instances.size > 0)
64
+ statements.push(typescript_1.default.factory.createImportDeclaration(undefined, typescript_1.default.factory.createImportClause(false, asset.default !== null
65
+ ? typescript_1.default.factory.createIdentifier(asset.default)
66
+ : undefined, asset.instances.size > 0
67
+ ? typescript_1.default.factory.createNamedImports(__spreadArray([], __read(asset.instances), false).map(function (name) {
68
+ return typescript_1.default.factory.createImportSpecifier(false, undefined, typescript_1.default.factory.createIdentifier(name));
69
+ }))
70
+ : undefined), typescript_1.default.factory.createStringLiteral(asset.file), undefined));
71
+ }
72
+ }
73
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
74
+ finally {
75
+ try {
76
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
77
+ }
78
+ finally { if (e_1) throw e_1.error; }
79
+ }
80
+ return statements;
81
+ };
82
+ /**
83
+ * @internal
84
+ */
85
+ ImportProgrammer.prototype.internal = function (name) {
86
+ if (name.startsWith("$") === false)
87
+ name = "$".concat(name);
88
+ return typescript_1.default.factory.createPropertyAccessExpression(this.namespace({
89
+ file: "typia/lib/internal/".concat(name, ".js"),
90
+ name: alias(name),
91
+ }), name);
92
+ };
93
+ /**
94
+ * @internal
95
+ */
96
+ ImportProgrammer.prototype.getInternalText = function (name) {
97
+ if (name.startsWith("$") === false)
98
+ name = "$".concat(name);
99
+ var asset = this.take("typia/lib/internal/".concat(name, ".js"));
100
+ if (asset === undefined)
101
+ throw new Error("Internal asset not found: ".concat(name));
102
+ return "".concat(asset.namespace, ".").concat(name);
103
+ };
104
+ /**
105
+ * @internal
106
+ */
107
+ ImportProgrammer.prototype.take = function (file) {
108
+ return MapUtil_1.MapUtil.take(this.assets_, file, function () { return ({
109
+ file: file,
110
+ default: null,
111
+ namespace: null,
112
+ instances: new Set(),
113
+ }); });
114
+ };
115
+ return ImportProgrammer;
116
+ }());
117
+ exports.ImportProgrammer = ImportProgrammer;
118
+ var alias = function (str) { return "__".concat(str); };
119
+ //# sourceMappingURL=ImportProgrammer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImportProgrammer.js","sourceRoot":"","sources":["../../src/programmers/ImportProgrammer.ts"],"names":[],"mappings":"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"}
@@ -6,13 +6,13 @@ import { IProgrammerProps } from "../transformers/IProgrammerProps";
6
6
  import { ITypiaContext } from "../transformers/ITypiaContext";
7
7
  import { CheckerProgrammer } from "./CheckerProgrammer";
8
8
  import { FeatureProgrammer } from "./FeatureProgrammer";
9
- import { FunctionImporter } from "./helpers/FunctionImporter";
9
+ import { FunctionProgrammer } from "./helpers/FunctionProgrammer";
10
10
  import { IExpressionEntry } from "./helpers/IExpressionEntry";
11
11
  export declare namespace IsProgrammer {
12
12
  const configure: (props: {
13
13
  options?: Partial<CONFIG.IOptions>;
14
14
  context: ITypiaContext;
15
- importer: FunctionImporter;
15
+ functor: FunctionProgrammer;
16
16
  }) => CheckerProgrammer.IConfig;
17
17
  namespace CONFIG {
18
18
  interface IOptions {
@@ -32,7 +32,7 @@ export declare namespace IsProgrammer {
32
32
  }
33
33
  const decompose: (props: {
34
34
  context: ITypiaContext;
35
- importer: FunctionImporter;
35
+ functor: FunctionProgrammer;
36
36
  config: IConfig;
37
37
  type: ts.Type;
38
38
  name: string | undefined;
@@ -40,19 +40,19 @@ export declare namespace IsProgrammer {
40
40
  const write: (props: IProps) => ts.CallExpression;
41
41
  const write_function_statements: (props: {
42
42
  context: ITypiaContext;
43
- importer: FunctionImporter;
43
+ functor: FunctionProgrammer;
44
44
  collection: MetadataCollection;
45
45
  }) => ts.VariableStatement[];
46
46
  const decode: (props: {
47
47
  context: ITypiaContext;
48
- importer: FunctionImporter;
48
+ functor: FunctionProgrammer;
49
49
  metadata: Metadata;
50
50
  input: ts.Expression;
51
51
  explore: CheckerProgrammer.IExplore;
52
52
  }) => ts.Expression;
53
53
  const decode_object: (props: {
54
54
  context: ITypiaContext;
55
- importer: FunctionImporter;
55
+ functor: FunctionProgrammer;
56
56
  object: MetadataObject;
57
57
  input: ts.Expression;
58
58
  explore: FeatureProgrammer.IExplore;
@@ -46,7 +46,7 @@ var IdentifierFactory_1 = require("../factories/IdentifierFactory");
46
46
  var ValueFactory_1 = require("../factories/ValueFactory");
47
47
  var CheckerProgrammer_1 = require("./CheckerProgrammer");
48
48
  var FeatureProgrammer_1 = require("./FeatureProgrammer");
49
- var FunctionImporter_1 = require("./helpers/FunctionImporter");
49
+ var FunctionProgrammer_1 = require("./helpers/FunctionProgrammer");
50
50
  var OptionPredicator_1 = require("./helpers/OptionPredicator");
51
51
  var check_object_1 = require("./internal/check_object");
52
52
  var IsProgrammer;
@@ -103,7 +103,6 @@ var IsProgrammer;
103
103
  superfluous: function () { return typescript_1.default.factory.createFalse(); },
104
104
  },
105
105
  context: props.context,
106
- importer: props.importer,
107
106
  entries: v.entries,
108
107
  input: v.input,
109
108
  });
@@ -131,7 +130,6 @@ var IsProgrammer;
131
130
  superfluous: function () { return typescript_1.default.factory.createFalse(); },
132
131
  },
133
132
  context: props.context,
134
- importer: props.importer,
135
133
  entries: v.entries,
136
134
  input: v.input,
137
135
  });
@@ -139,7 +137,7 @@ var IsProgrammer;
139
137
  numeric: OptionPredicator_1.OptionPredicator.numeric(props.context.options),
140
138
  },
141
139
  context: props.context,
142
- importer: props.importer,
140
+ functor: props.functor,
143
141
  })), { trace: props.config.equals });
144
142
  // COMPOSITION
145
143
  var composed = CheckerProgrammer_1.CheckerProgrammer.compose(__assign(__assign({}, props), { config: config }));
@@ -150,17 +148,17 @@ var IsProgrammer;
150
148
  };
151
149
  };
152
150
  IsProgrammer.write = function (props) {
153
- var importer = new FunctionImporter_1.FunctionImporter(props.modulo.getText());
151
+ var functor = new FunctionProgrammer_1.FunctionProgrammer(props.modulo.getText());
154
152
  var result = IsProgrammer.decompose({
155
153
  config: props.config,
156
154
  context: props.context,
157
- importer: importer,
155
+ functor: functor,
158
156
  type: props.type,
159
157
  name: props.name,
160
158
  });
161
159
  return FeatureProgrammer_1.FeatureProgrammer.writeDecomposed({
162
160
  modulo: props.modulo,
163
- importer: importer,
161
+ functor: functor,
164
162
  result: result,
165
163
  });
166
164
  };
@@ -172,13 +170,13 @@ var IsProgrammer;
172
170
  var arrays = CheckerProgrammer_1.CheckerProgrammer.write_array_functions(next);
173
171
  var tuples = CheckerProgrammer_1.CheckerProgrammer.write_tuple_functions(next);
174
172
  return __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(objects.filter(function (_, i) {
175
- return props.importer.hasLocal("".concat(config.prefix, "o").concat(i));
173
+ return props.functor.hasLocal("".concat(config.prefix, "o").concat(i));
176
174
  })), false), __read(unions.filter(function (_, i) {
177
- return props.importer.hasLocal("".concat(config.prefix, "u").concat(i));
175
+ return props.functor.hasLocal("".concat(config.prefix, "u").concat(i));
178
176
  })), false), __read(arrays.filter(function (_, i) {
179
- return props.importer.hasLocal("".concat(config.prefix, "a").concat(i));
177
+ return props.functor.hasLocal("".concat(config.prefix, "a").concat(i));
180
178
  })), false), __read(tuples.filter(function (_, i) {
181
- return props.importer.hasLocal("".concat(config.prefix, "t").concat(i));
179
+ return props.functor.hasLocal("".concat(config.prefix, "t").concat(i));
182
180
  })), false);
183
181
  };
184
182
  /* -----------------------------------------------------------
@@ -188,7 +186,7 @@ var IsProgrammer;
188
186
  return CheckerProgrammer_1.CheckerProgrammer.decode({
189
187
  context: props.context,
190
188
  config: IsProgrammer.configure(props),
191
- importer: props.importer,
189
+ functor: props.functor,
192
190
  metadata: props.metadata,
193
191
  input: props.input,
194
192
  explore: props.explore,
@@ -197,7 +195,7 @@ var IsProgrammer;
197
195
  IsProgrammer.decode_object = function (props) {
198
196
  return CheckerProgrammer_1.CheckerProgrammer.decode_object({
199
197
  config: IsProgrammer.configure(props),
200
- importer: props.importer,
198
+ functor: props.functor,
201
199
  object: props.object,
202
200
  input: props.input,
203
201
  explore: props.explore,
@@ -1 +1 @@
1
- {"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IsProgrammer.js","sourceRoot":"","sources":["../../src/programmers/IsProgrammer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import ts from "typescript";
2
2
  import { ITypiaContext } from "../transformers/ITypiaContext";
3
3
  import { FeatureProgrammer } from "./FeatureProgrammer";
4
- import { FunctionImporter } from "./helpers/FunctionImporter";
4
+ import { FunctionProgrammer } from "./helpers/FunctionProgrammer";
5
5
  export declare namespace RandomProgrammer {
6
6
  interface IProps {
7
7
  context: ITypiaContext;
@@ -12,7 +12,7 @@ export declare namespace RandomProgrammer {
12
12
  }
13
13
  interface IDecomposeProps {
14
14
  context: ITypiaContext;
15
- importer: FunctionImporter;
15
+ functor: FunctionProgrammer;
16
16
  type: ts.Type;
17
17
  name: string | undefined;
18
18
  init: ts.Expression | undefined;